diff --git a/.next/server/pages-manifest.json b/.next/server/pages-manifest.json index 45748d9..55d8ed9 100644 --- a/.next/server/pages-manifest.json +++ b/.next/server/pages-manifest.json @@ -2,7 +2,5 @@ "/_app": "pages/_app.js", "/_error": "pages/_error.js", "/_document": "pages/_document.js", - "/": "pages/index.js", - "/api/pens/[id]": "pages/api/pens/[id].js", - "/api/users/[id]": "pages/api/users/[id].js" + "/": "pages/index.js" } \ No newline at end of file diff --git a/.next/server/pages/_app.js b/.next/server/pages/_app.js index b14c3e5..0e8e0a3 100644 --- a/.next/server/pages/_app.js +++ b/.next/server/pages/_app.js @@ -157,6 +157,12 @@ function MyApp({ fileName: _jsxFileName, lineNumber: 9, columnNumber: 9 + }, this), /*#__PURE__*/Object(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__["jsxDEV"])("script", { + children: " if (!crossOriginIsolated) SharedArrayBuffer = ArrayBuffer " + }, void 0, false, { + fileName: _jsxFileName, + lineNumber: 11, + columnNumber: 9 }, this)] }, void 0, true, { fileName: _jsxFileName, @@ -164,7 +170,7 @@ function MyApp({ columnNumber: 7 }, this), /*#__PURE__*/Object(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__["jsxDEV"])(Component, _objectSpread({}, pageProps), void 0, false, { fileName: _jsxFileName, - lineNumber: 11, + lineNumber: 13, columnNumber: 7 }, this)] }, void 0, true); @@ -220,4 +226,4 @@ module.exports = require("react/jsx-dev-runtime"); /***/ }) /******/ }); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvX2FwcC5qcyIsIndlYnBhY2s6Ly8vZXh0ZXJuYWwgXCJuZXh0L2hlYWRcIiIsIndlYnBhY2s6Ly8vZXh0ZXJuYWwgXCJyZWFjdC9qc3gtZGV2LXJ1bnRpbWVcIiJdLCJuYW1lcyI6WyJNeUFwcCIsIkNvbXBvbmVudCIsInBhZ2VQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7UUFBQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOzs7UUFHQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7O1FBR0E7UUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3hGQTtBQUNBO0FBQ0E7O0FBQ0EsU0FBU0EsS0FBVCxDQUFlO0FBQUVDLFdBQUY7QUFBYUM7QUFBYixDQUFmLEVBQXlDO0FBQ3ZDLHNCQUNFO0FBQUEsNEJBQ0UscUVBQUMsZ0RBQUQ7QUFBQSw4QkFDRTtBQUFNLFlBQUksRUFBQyxVQUFYO0FBQXNCLGVBQU8sRUFBQztBQUE5QjtBQUFBO0FBQUE7QUFBQTtBQUFBLGNBREYsZUFFRTtBQUFNLFdBQUcsRUFBQyxNQUFWO0FBQWlCLFlBQUksRUFBQyxXQUF0QjtBQUFrQyxhQUFLLEVBQUMsT0FBeEM7QUFBZ0QsWUFBSSxFQUFDO0FBQXJEO0FBQUE7QUFBQTtBQUFBO0FBQUEsY0FGRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsWUFERixlQUtFLHFFQUFDLFNBQUQsb0JBQWVBLFNBQWY7QUFBQTtBQUFBO0FBQUE7QUFBQSxZQUxGO0FBQUEsa0JBREY7QUFTRDs7QUFFY0Ysb0VBQWYsRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2ZBLHNDOzs7Ozs7Ozs7OztBQ0FBLGtEIiwiZmlsZSI6InBhZ2VzL19hcHAuanMiLCJzb3VyY2VzQ29udGVudCI6WyIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHJlcXVpcmUoJy4uL3Nzci1tb2R1bGUtY2FjaGUuanMnKTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0dmFyIHRocmV3ID0gdHJ1ZTtcbiBcdFx0dHJ5IHtcbiBcdFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcbiBcdFx0XHR0aHJldyA9IGZhbHNlO1xuIFx0XHR9IGZpbmFsbHkge1xuIFx0XHRcdGlmKHRocmV3KSBkZWxldGUgaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF07XG4gXHRcdH1cblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBnZXR0ZXIgfSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uciA9IGZ1bmN0aW9uKGV4cG9ydHMpIHtcbiBcdFx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG4gXHRcdH1cbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiBcdH07XG5cbiBcdC8vIGNyZWF0ZSBhIGZha2UgbmFtZXNwYWNlIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDE6IHZhbHVlIGlzIGEgbW9kdWxlIGlkLCByZXF1aXJlIGl0XG4gXHQvLyBtb2RlICYgMjogbWVyZ2UgYWxsIHByb3BlcnRpZXMgb2YgdmFsdWUgaW50byB0aGUgbnNcbiBcdC8vIG1vZGUgJiA0OiByZXR1cm4gdmFsdWUgd2hlbiBhbHJlYWR5IG5zIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDh8MTogYmVoYXZlIGxpa2UgcmVxdWlyZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0aWYobW9kZSAmIDEpIHZhbHVlID0gX193ZWJwYWNrX3JlcXVpcmVfXyh2YWx1ZSk7XG4gXHRcdGlmKG1vZGUgJiA4KSByZXR1cm4gdmFsdWU7XG4gXHRcdGlmKChtb2RlICYgNCkgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAmJiB2YWx1ZS5fX2VzTW9kdWxlKSByZXR1cm4gdmFsdWU7XG4gXHRcdHZhciBucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18ucihucyk7XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShucywgJ2RlZmF1bHQnLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2YWx1ZSB9KTtcbiBcdFx0aWYobW9kZSAmIDIgJiYgdHlwZW9mIHZhbHVlICE9ICdzdHJpbmcnKSBmb3IodmFyIGtleSBpbiB2YWx1ZSkgX193ZWJwYWNrX3JlcXVpcmVfXy5kKG5zLCBrZXksIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gdmFsdWVba2V5XTsgfS5iaW5kKG51bGwsIGtleSkpO1xuIFx0XHRyZXR1cm4gbnM7XG4gXHR9O1xuXG4gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuIFx0XHRyZXR1cm4gZ2V0dGVyO1xuIFx0fTtcblxuIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG5cbiBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIlwiO1xuXG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gMCk7XG4iLCJpbXBvcnQgXCIuLi9zdHlsZXMvZ2xvYmFscy5jc3NcIjtcbmltcG9ydCBIZWFkIGZyb20gXCJuZXh0L2hlYWRcIjtcbmltcG9ydCAnYm9vdHN0cmFwL2Rpc3QvY3NzL2Jvb3RzdHJhcC5jc3MnXG5mdW5jdGlvbiBNeUFwcCh7IENvbXBvbmVudCwgcGFnZVByb3BzIH0pIHtcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEhlYWQ+XG4gICAgICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MVwiIC8+XG4gICAgICAgIDxsaW5rIHJlbD1cImljb25cIiB0eXBlPVwiaW1hZ2UvcG5nXCIgc2l6ZXM9XCIzMngzMlwiIGhyZWY9XCJmYXZpY29uLTMyeDMyX2ZpbmdlcnByaW50LnBuZ1wiLz5cbiAgICAgIDwvSGVhZD5cbiAgICAgIDxDb21wb25lbnQgey4uLnBhZ2VQcm9wc30gLz5cbiAgICA8Lz5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTXlBcHA7XG4iLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJuZXh0L2hlYWRcIik7IiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwicmVhY3QvanN4LWRldi1ydW50aW1lXCIpOyJdLCJzb3VyY2VSb290IjoiIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vLy4vcGFnZXMvX2FwcC5qcyIsIndlYnBhY2s6Ly8vZXh0ZXJuYWwgXCJuZXh0L2hlYWRcIiIsIndlYnBhY2s6Ly8vZXh0ZXJuYWwgXCJyZWFjdC9qc3gtZGV2LXJ1bnRpbWVcIiJdLCJuYW1lcyI6WyJNeUFwcCIsIkNvbXBvbmVudCIsInBhZ2VQcm9wcyJdLCJtYXBwaW5ncyI6Ijs7UUFBQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOzs7UUFHQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7O1FBR0E7UUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ3hGQTtBQUNBO0FBQ0E7O0FBQ0EsU0FBU0EsS0FBVCxDQUFlO0FBQUVDLFdBQUY7QUFBYUM7QUFBYixDQUFmLEVBQXlDO0FBQ3ZDLHNCQUNFO0FBQUEsNEJBQ0UscUVBQUMsZ0RBQUQ7QUFBQSw4QkFDRTtBQUFNLFlBQUksRUFBQyxVQUFYO0FBQXNCLGVBQU8sRUFBQztBQUE5QjtBQUFBO0FBQUE7QUFBQTtBQUFBLGNBREYsZUFFRTtBQUFNLFdBQUcsRUFBQyxNQUFWO0FBQWlCLFlBQUksRUFBQyxXQUF0QjtBQUFrQyxhQUFLLEVBQUMsT0FBeEM7QUFBZ0QsWUFBSSxFQUFDO0FBQXJEO0FBQUE7QUFBQTtBQUFBO0FBQUEsY0FGRixlQUlFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGNBSkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLFlBREYsZUFPRSxxRUFBQyxTQUFELG9CQUFlQSxTQUFmO0FBQUE7QUFBQTtBQUFBO0FBQUEsWUFQRjtBQUFBLGtCQURGO0FBV0Q7O0FBRWNGLG9FQUFmLEU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNqQkEsc0M7Ozs7Ozs7Ozs7O0FDQUEsa0QiLCJmaWxlIjoicGFnZXMvX2FwcC5qcyIsInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0gcmVxdWlyZSgnLi4vc3NyLW1vZHVsZS1jYWNoZS5qcycpO1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHR2YXIgdGhyZXcgPSB0cnVlO1xuIFx0XHR0cnkge1xuIFx0XHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuIFx0XHRcdHRocmV3ID0gZmFsc2U7XG4gXHRcdH0gZmluYWxseSB7XG4gXHRcdFx0aWYodGhyZXcpIGRlbGV0ZSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0fVxuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGdldHRlciB9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yID0gZnVuY3Rpb24oZXhwb3J0cykge1xuIFx0XHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcbiBcdFx0fVxuIFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuIFx0fTtcblxuIFx0Ly8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4gXHQvLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbiBcdC8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuIFx0Ly8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4gXHQvLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuIFx0XHRpZihtb2RlICYgMSkgdmFsdWUgPSBfX3dlYnBhY2tfcmVxdWlyZV9fKHZhbHVlKTtcbiBcdFx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcbiBcdFx0aWYoKG1vZGUgJiA0KSAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICYmIHZhbHVlLl9fZXNNb2R1bGUpIHJldHVybiB2YWx1ZTtcbiBcdFx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG5zLCAnZGVmYXVsdCcsIHsgZW51bWVyYWJsZTogdHJ1ZSwgdmFsdWU6IHZhbHVlIH0pO1xuIFx0XHRpZihtb2RlICYgMiAmJiB0eXBlb2YgdmFsdWUgIT0gJ3N0cmluZycpIGZvcih2YXIga2V5IGluIHZhbHVlKSBfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGtleSwgZnVuY3Rpb24oa2V5KSB7IHJldHVybiB2YWx1ZVtrZXldOyB9LmJpbmQobnVsbCwga2V5KSk7XG4gXHRcdHJldHVybiBucztcbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAwKTtcbiIsImltcG9ydCBcIi4uL3N0eWxlcy9nbG9iYWxzLmNzc1wiO1xuaW1wb3J0IEhlYWQgZnJvbSBcIm5leHQvaGVhZFwiO1xuaW1wb3J0ICdib290c3RyYXAvZGlzdC9jc3MvYm9vdHN0cmFwLmNzcydcbmZ1bmN0aW9uIE15QXBwKHsgQ29tcG9uZW50LCBwYWdlUHJvcHMgfSkge1xuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8SGVhZD5cbiAgICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgLz5cbiAgICAgICAgPGxpbmsgcmVsPVwiaWNvblwiIHR5cGU9XCJpbWFnZS9wbmdcIiBzaXplcz1cIjMyeDMyXCIgaHJlZj1cImZhdmljb24tMzJ4MzJfZmluZ2VycHJpbnQucG5nXCIvPlxuICAgIHsvKiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzIwODI5ICovfVxuICAgICAgICA8c2NyaXB0PiBpZiAoIWNyb3NzT3JpZ2luSXNvbGF0ZWQpIFNoYXJlZEFycmF5QnVmZmVyID0gQXJyYXlCdWZmZXIgPC9zY3JpcHQ+XG4gICAgICA8L0hlYWQ+XG4gICAgICA8Q29tcG9uZW50IHsuLi5wYWdlUHJvcHN9IC8+XG4gICAgPC8+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IE15QXBwO1xuIiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwibmV4dC9oZWFkXCIpOyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInJlYWN0L2pzeC1kZXYtcnVudGltZVwiKTsiXSwic291cmNlUm9vdCI6IiJ9 \ No newline at end of file diff --git a/.next/static/chunks/pages/_app.js b/.next/static/chunks/pages/_app.js index ed218e9..36643f3 100644 --- a/.next/static/chunks/pages/_app.js +++ b/.next/static/chunks/pages/_app.js @@ -10288,6 +10288,12 @@ function MyApp(_ref) { fileName: _jsxFileName, lineNumber: 9, columnNumber: 9 + }, this), /*#__PURE__*/Object(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__["jsxDEV"])("script", { + children: " if (!crossOriginIsolated) SharedArrayBuffer = ArrayBuffer " + }, void 0, false, { + fileName: _jsxFileName, + lineNumber: 11, + columnNumber: 9 }, this)] }, void 0, true, { fileName: _jsxFileName, @@ -10295,7 +10301,7 @@ function MyApp(_ref) { columnNumber: 7 }, this), /*#__PURE__*/Object(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__["jsxDEV"])(Component, _objectSpread({}, pageProps), void 0, false, { fileName: _jsxFileName, - lineNumber: 11, + lineNumber: 13, columnNumber: 7 }, this)] }, void 0, true); @@ -10451,4 +10457,4 @@ module.exports = __webpack_require__(/*! C:\Users\stefa\Documents\gitlab\WBS\Ser /***/ }) },[[0,"webpack"]]]); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvYXJyYXlMaWtlVG9BcnJheS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvYXJyYXlXaXRoSG9sZXMuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2FycmF5V2l0aG91dEhvbGVzLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2FzeW5jVG9HZW5lcmF0b3IuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2NsYXNzQ2FsbENoZWNrLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9jb25zdHJ1Y3QuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2NyZWF0ZUNsYXNzLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9kZWZpbmVQcm9wZXJ0eS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2RlZmluZVByb3BlcnR5LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9nZXRQcm90b3R5cGVPZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaW5oZXJpdHMuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2ludGVyb3BSZXF1aXJlRGVmYXVsdC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaW50ZXJvcFJlcXVpcmVXaWxkY2FyZC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pdGVyYWJsZVRvQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2l0ZXJhYmxlVG9BcnJheUxpbWl0LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9ub25JdGVyYWJsZVJlc3QuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL25vbkl0ZXJhYmxlU3ByZWFkLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9zZXRQcm90b3R5cGVPZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvc2xpY2VkVG9BcnJheS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvdG9Db25zdW1hYmxlQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL3R5cGVvZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9yZWdlbmVyYXRvci9pbmRleC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzP2M4OGMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvcG9seWZpbGxzL29iamVjdC1hc3NpZ24uanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtY2xpZW50LXBhZ2VzLWxvYWRlci5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9idWlsZC93ZWJwYWNrL2xvYWRlcnMvbmV4dC1zdHlsZS1sb2FkZXIvcnVudGltZS9pbmplY3RTdHlsZXNJbnRvU3R5bGVUYWcuanMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9jbGllbnQvbm9ybWFsaXplLXRyYWlsaW5nLXNsYXNoLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vY2xpZW50L3JlcXVlc3QtaWRsZS1jYWxsYmFjay50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uL2NsaWVudC9yb3V0ZS1sb2FkZXIudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9jbGllbnQvcm91dGVyLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vY2xpZW50L3dpdGgtcm91dGVyLnRzeCIsIndlYnBhY2s6Ly9fTl9FLyh3ZWJwYWNrKS9jc3MtbG9hZGVyL2FwaS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzIiwid2VicGFjazovL19OX0UvLi9zdHlsZXMvZ2xvYmFscy5jc3MiLCJ3ZWJwYWNrOi8vX05fRS8od2VicGFjaykvd2VicGFjay9oYXJtb255LW1vZHVsZS5qcyIsIndlYnBhY2s6Ly9fTl9FLyh3ZWJwYWNrKS93ZWJwYWNrL21vZHVsZS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9hbXAtY29udGV4dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9hbXAudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaGVhZC1tYW5hZ2VyLWNvbnRleHQudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaGVhZC50c3giLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaTE4bi9ub3JtYWxpemUtbG9jYWxlLXBhdGgudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvbWl0dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9yb3V0ZXItY29udGV4dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9yb3V0ZXIvcm91dGVyLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9mb3JtYXQtdXJsLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9nZXQtYXNzZXQtcGF0aC1mcm9tLXJvdXRlLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9pcy1keW5hbWljLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9wYXJzZS1yZWxhdGl2ZS11cmwudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3F1ZXJ5c3RyaW5nLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9yZXNvbHZlLXJld3JpdGVzLW5vb3AudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3JvdXRlLW1hdGNoZXIudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3JvdXRlLXJlZ2V4LnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3NpZGUtZWZmZWN0LnRzeCIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi91dGlscy50cyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9uZXh0LXNlcnZlci9zZXJ2ZXIvZGVub3JtYWxpemUtcGFnZS1wYXRoLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvbmV4dC9oZWFkLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QtaXMvY2pzL3JlYWN0LWlzLmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QtaXMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWFjdC9janMvcmVhY3QtanN4LWRldi1ydW50aW1lLmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QvY2pzL3JlYWN0LmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QvaW5kZXguanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWFjdC9qc3gtZGV2LXJ1bnRpbWUuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL3BhZ2VzL19hcHAuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL3N0eWxlcy9nbG9iYWxzLmNzcz84ZDc5Il0sIm5hbWVzIjpbInBhdGgiLCJub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaCIsInByb2Nlc3MiLCJyZXF1ZXN0SWRsZUNhbGxiYWNrIiwic2VsZiIsInN0YXJ0IiwiRGF0ZSIsInNldFRpbWVvdXQiLCJjYiIsImRpZFRpbWVvdXQiLCJ0aW1lUmVtYWluaW5nIiwiTWF0aCIsImNhbmNlbElkbGVDYWxsYmFjayIsImNsZWFyVGltZW91dCIsIk1TX01BWF9JRExFX0RFTEFZIiwiZW50cnkiLCJtYXAiLCJQcm9taXNlIiwicHJvbSIsInJlc29sdmUiLCJyZXNvbHZlciIsImZ1dHVyZSIsImdlbmVyYXRvciIsInZhbHVlIiwibGluayIsImRvY3VtZW50Iiwid2luZG93IiwiY2FuUHJlZmV0Y2giLCJoYXNQcmVmZXRjaCIsInJlcyIsIkFTU0VUX0xPQURfRVJST1IiLCJTeW1ib2wiLCJPYmplY3QiLCJlcnIiLCJzY3JpcHQiLCJyZWplY3QiLCJtYXJrQXNzZXRFcnJvciIsIm9uQnVpbGRNYW5pZmVzdCIsImlkbGVUaW1lb3V0Iiwic2NyaXB0cyIsImFzc2V0UHJlZml4IiwiZW5jb2RlVVJJIiwiY3NzIiwiZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCIsIm1hbmlmZXN0Iiwicm91dGUiLCJhbGxGaWxlcyIsInYiLCJlbnRyeXBvaW50cyIsImxvYWRlZFNjcmlwdHMiLCJzdHlsZVNoZWV0cyIsInJvdXRlcyIsImFwcGVuZFNjcmlwdCIsImZldGNoIiwidGV4dCIsImhyZWYiLCJjb250ZW50Iiwid2hlbkVudHJ5cG9pbnQiLCJ3aXRoRnV0dXJlIiwib25FbnRyeXBvaW50IiwiZm4iLCJleHBvcnRzIiwiY29tcG9uZW50IiwiZXJyb3IiLCJpbnB1dCIsIm9sZCIsImxvYWRSb3V0ZSIsImdldEZpbGVzRm9yUm91dGUiLCJlbnRyeXBvaW50Iiwic3R5bGVzIiwicHJlZmV0Y2giLCJjbiIsIm5hdmlnYXRvciIsIm91dHB1dCIsInByZWZldGNoVmlhRG9tIiwiY3JlYXRlUm91dGVMb2FkZXIiLCJzaW5nbGV0b25Sb3V0ZXIiLCJyb3V0ZXIiLCJyZWFkeUNhbGxiYWNrcyIsInJlYWR5IiwidXJsUHJvcGVydHlGaWVsZHMiLCJyb3V0ZXJFdmVudHMiLCJjb3JlTWV0aG9kRmllbGRzIiwiZ2V0IiwiUm91dGVyIiwiZmllbGQiLCJnZXRSb3V0ZXIiLCJldmVudCIsImV2ZW50RmllbGQiLCJfc2luZ2xldG9uUm91dGVyIiwiY29uc29sZSIsIm1lc3NhZ2UiLCJSZWFjdCIsIlJvdXRlckNvbnRleHQiLCJjcmVhdGVSb3V0ZXIiLCJfcm91dGVyIiwiaW5zdGFuY2UiLCJBcnJheSIsIkNvbXBvc2VkQ29tcG9uZW50IiwiZ2V0SW5pdGlhbFByb3BzIiwiV2l0aFJvdXRlcldyYXBwZXIiLCJuYW1lIiwiQW1wU3RhdGVDb250ZXh0IiwiYW1wRmlyc3QiLCJoeWJyaWQiLCJoYXNRdWVyeSIsImlzSW5BbXBNb2RlIiwiSGVhZE1hbmFnZXJDb250ZXh0IiwiaW5BbXBNb2RlIiwiaGVhZCIsImNoaWxkIiwibGlzdCIsImZyYWdtZW50TGlzdCIsIk1FVEFUWVBFUyIsImtleXMiLCJ0YWdzIiwibWV0YVR5cGVzIiwibWV0YUNhdGVnb3JpZXMiLCJoIiwiaXNVbmlxdWUiLCJoYXNLZXkiLCJrZXkiLCJpIiwibGVuIiwibWV0YXR5cGUiLCJjYXRlZ29yeSIsImNhdGVnb3JpZXMiLCJoZWFkRWxlbWVudHMiLCJoZWFkRWxlbWVudENoaWxkcmVuIiwiaGVhZEVsZW1lbnQiLCJkZWZhdWx0SGVhZCIsInByb3BzIiwidW5pcXVlIiwiYyIsImFtcFN0YXRlIiwiaGVhZE1hbmFnZXIiLCJIZWFkIiwicGF0aG5hbWVQYXJ0cyIsInBhdGhuYW1lIiwibG9jYWxlcyIsImxvY2FsZSIsImRldGVjdGVkTG9jYWxlIiwiYWxsIiwib24iLCJvZmYiLCJlbWl0IiwiaGFuZGxlciIsImJhc2VQYXRoIiwiY2FuY2VsbGVkIiwicHJlZml4IiwicGF0aE5vUXVlcnlIYXNoIiwicXVlcnlJbmRleCIsImhhc2hJbmRleCIsImFkZFBhdGhQcmVmaXgiLCJ1cmwiLCJsb2NhdGlvbk9yaWdpbiIsInJlc29sdmVkIiwiaGFzQmFzZVBhdGgiLCJpbnRlcnBvbGF0ZWRSb3V0ZSIsImR5bmFtaWNSZWdleCIsImR5bmFtaWNHcm91cHMiLCJkeW5hbWljTWF0Y2hlcyIsImFzUGF0aG5hbWUiLCJwYXJhbXMiLCJwYXJhbSIsInJlcGxhY2VkIiwicmVwZWF0Iiwib3B0aW9uYWwiLCJzZWdtZW50IiwiZW5jb2RlVVJJQ29tcG9uZW50IiwicmVzdWx0IiwiZmlsdGVyZWRRdWVyeSIsInF1ZXJ5IiwiYmFzZSIsInVybEFzU3RyaW5nIiwiaXNMb2NhbFVSTCIsInJlc29sdmVBcyIsImZpbmFsVXJsIiwiaW50ZXJwb2xhdGVkQXMiLCJpbnRlcnBvbGF0ZUFzIiwiaGFzaCIsIm9taXRQYXJtc0Zyb21RdWVyeSIsInJlc29sdmVkSHJlZiIsIm9yaWdpbiIsInJlc29sdmVIcmVmIiwiaHJlZkhhZE9yaWdpbiIsImFzSGFkT3JpZ2luIiwicmVzb2x2ZWRBcyIsInN0cmlwT3JpZ2luIiwicHJlcGFyZWRVcmwiLCJhZGRCYXNlUGF0aCIsInByZXBhcmVkQXMiLCJhcyIsImFwcGx5QmFzZVBhdGgiLCJjbGVhblBhdGhuYW1lIiwiZGVsQmFzZVBhdGgiLCJwYWdlcyIsInBhZ2UiLCJwYXJzZWRIcmVmIiwibWFudWFsU2Nyb2xsUmVzdG9yYXRpb24iLCJTU0dfREFUQV9OT1RfRk9VTkQiLCJjcmVkZW50aWFscyIsImF0dGVtcHRzIiwiZmV0Y2hSZXRyeSIsImRhdGEiLCJub3RGb3VuZCIsImlzU2VydmVyUmVuZGVyIiwiY29uc3RydWN0b3IiLCJhc1BhdGgiLCJjb21wb25lbnRzIiwic2RjIiwic3ViIiwiY2xjIiwicGFnZUxvYWRlciIsIl9icHMiLCJldmVudHMiLCJfd3JhcEFwcCIsImlzU3NyIiwiaXNGYWxsYmFjayIsIl9pbkZsaWdodFJvdXRlIiwiX3NoYWxsb3ciLCJkZWZhdWx0TG9jYWxlIiwiZG9tYWluTG9jYWxlcyIsImlzUmVhZHkiLCJpc1ByZXZpZXciLCJpc0xvY2FsZURvbWFpbiIsIl9pZHgiLCJlIiwic3RhdGUiLCJzaGFsbG93Iiwib3B0aW9ucyIsIkNvbXBvbmVudCIsImluaXRpYWwiLCJfX05fU1NHIiwiaW5pdGlhbFByb3BzIiwiX19OX1NTUCIsImF1dG9FeHBvcnREeW5hbWljIiwicmVsb2FkIiwicHJlcGFyZVVybEFzIiwibG9jYWxlQ2hhbmdlIiwicGFyc2VkQXMiLCJsb2NhbGVQYXRoUmVzdWx0IiwiZGlkTmF2aWdhdGUiLCJkZXRlY3RlZERvbWFpbiIsImRldGVjdERvbWFpbkxvY2FsZSIsIlNUIiwicGVyZm9ybWFuY2UiLCJyb3V0ZVByb3BzIiwiYWRkTG9jYWxlIiwiY2xlYW5lZEFzIiwiZGVsTG9jYWxlIiwicGFyc2VkIiwiX19yZXdyaXRlcyIsInJlc29sdmVEeW5hbWljUm91dGUiLCJtZXRob2QiLCJyb3V0ZVJlZ2V4Iiwicm91dGVNYXRjaCIsInNob3VsZEludGVycG9sYXRlIiwibWlzc2luZ1BhcmFtcyIsInJvdXRlSW5mbyIsImRlc3RpbmF0aW9uIiwibm90Rm91bmRSb3V0ZSIsImFwcENvbXAiLCJpc1ZhbGlkU2hhbGxvd1JvdXRlIiwiZm9yY2VkU2Nyb2xsIiwieCIsInkiLCJfX04iLCJpZHgiLCJidWlsZENhbmNlbGxhdGlvbkVycm9yIiwiZXhpc3RpbmdSb3V0ZUluZm8iLCJjYWNoZWRSb3V0ZUluZm8iLCJyZXF1aXJlIiwiaXNWYWxpZEVsZW1lbnRUeXBlIiwiZGF0YUhyZWYiLCJvbmx5QUhhc2hDaGFuZ2UiLCJuZXdIYXNoIiwib2xkVXJsTm9IYXNoIiwib2xkSGFzaCIsInNjcm9sbFRvSGFzaCIsImlkRWwiLCJuYW1lRWwiLCJ1cmxJc05ldyIsInJld3JpdGVzUmVzdWx0IiwicCIsImlzU3NnIiwiY2FuY2VsIiwiY29tcG9uZW50UmVzdWx0IiwiX2dldFN0YXRpY0RhdGEiLCJmZXRjaE5leHREYXRhIiwiX2dldFNlcnZlckRhdGEiLCJBcHBUcmVlIiwiY3R4IiwiYWJvcnRDb21wb25lbnRMb2FkIiwibm90aWZ5Iiwic2xhc2hlZFByb3RvY29scyIsInByb3RvY29sIiwidXJsT2JqIiwiaG9zdCIsImF1dGgiLCJob3N0bmFtZSIsIlN0cmluZyIsInF1ZXJ5c3RyaW5nIiwic2VhcmNoIiwiZXh0IiwiVEVTVF9ST1VURSIsImdsb2JhbEJhc2UiLCJyZXNvbHZlZEJhc2UiLCJzZWFyY2hQYXJhbXMiLCJpc05hTiIsIml0ZW0iLCJzdHJpbmdpZnlVcmxRdWVyeVBhcmFtIiwic2VhcmNoUGFyYW1zTGlzdCIsInRhcmdldCIsInJlIiwiZGVjb2RlIiwiZGVjb2RlVVJJQ29tcG9uZW50Iiwic2x1Z05hbWUiLCJnIiwiZ3JvdXBzIiwibSIsInN0ciIsInNlZ21lbnRzIiwibm9ybWFsaXplZFJvdXRlIiwiZ3JvdXBJbmRleCIsInBhcmFtZXRlcml6ZWRSb3V0ZSIsInBhcnNlUGFyYW1ldGVyIiwicG9zIiwiZXNjYXBlUmVnZXgiLCJpc1NlcnZlciIsIl9oYXNIZWFkTWFuYWdlciIsImVtaXRDaGFuZ2UiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsImNvbXBvbmVudFdpbGxVbm1vdW50IiwicmVuZGVyIiwidXNlZCIsInBvcnQiLCJnZXRMb2NhdGlvbk9yaWdpbiIsIkFwcCIsImdldERpc3BsYXlOYW1lIiwibG9hZEdldEluaXRpYWxQcm9wcyIsInBhZ2VQcm9wcyIsImlzUmVzU2VudCIsInVybE9iamVjdEtleXMiLCJTUCIsIk15QXBwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTs7QUFFQSx3Q0FBd0MsU0FBUztBQUNqRDtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsbUM7Ozs7Ozs7Ozs7O0FDVkE7QUFDQTtBQUNBOztB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WUFBWSxNQUFNLE1BQU0sTUFBTSxZQUFZLE1BQU0sTUFBTSxNQUFNLFlBQVksTUFBTSxNQUFNLEtBQUssWUFBWSxPQUFPLEtBQUssV0FBVyxPQUFPLE1BQU0sVUFBVSxhQUFhLFFBQVEsT0FBTyxXQUFXLFdBQVcsVUFBVSxXQUFXLE9BQU8sTUFBTSxXQUFXLFdBQVcsV0FBVyxPQUFPLE9BQU8sV0FBVyxPQUFPLFFBQVEsVUFBVSxXQUFXLE9BQU8sU0FBUyxXQUFXLE9BQU8sTUFBTSxhQUFhLFFBQVEsTUFBTSxXQUFXLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxPQUFPLGFBQWEsUUFBUSxNQUFNLFlBQVksT0FBTyxNQUFNLFlBQVksZUFBZSxRQUFRLE9BQU8sV0FBVyxXQUFXLFVBQVUsV0FBVyxPQUFPLE1BQU0sVUFBVSxPQUFPLE1BQU0sVUFBVSxPQUFPLE1BQU0sV0FBVyxjQUFjLE9BQU8sTUFBTSxZQUFZLFFBQVEsTUFBTSxVQUFVLFdBQVcsT0FBTyxTQUFTLGFBQWEsWUFBWSxZQUFZLFdBQVcsT0FBTyxNQUFNLFVBQVUsVUFBVSxXQUFXLFVBQVUsWUFBWSxLQUFLLE1BQU0sWUFBWSxXQUFXLFdBQVcsT0FBTyxNQUFNLFlBQVksWUFBWSxZQUFZLE1BQU0sTUFBTSxVQUFVLE9BQU8sTUFBTSxXQUFXLFlBQVksWUFBWSxhQUFhLFdBQVcsTUFBTSxNQUFNLFVBQVUsV0FBVyxjQUFjLFFBQVEsTUFBTSxXQUFXLE9BQU8sT0FBTyxXQUFXLE9BQU8sTUFBTSxXQUFXLFdBQVcsT0FBTyxNQUFNLGFBQWEsZUFBZSxhQUFhLFlBQVksT0FBTyxNQUFNLFdBQVcsV0FBVyxPQUFPLFdBQVcsV0FBVyxXQUFXLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxVQUFVLFVBQVUsV0FBVyxZQUFZLFlBQVksT0FBTyxPQUFPLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxTQUFTLFdBQVcsTUFBTSxTQUFTLFVBQVUsT0FBTyxNQUFNLFVBQVUsV0FBVyxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sVUFBVSxVQUFVLFVBQVUsVUFBVSxPQUFPLE1BQU0sVUFBVSxVQUFVLFVBQVUsYUFBYSxhQUFhLFlBQVksTUFBTSxNQUFNLE1BQU0sWUFBWSxNQUFNLEtBQUssTUFBTSxVQUFVLE9BQU8sWUFBWSxVQUFVLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxXQUFXLFdBQVcsT0FBTyxZQUFZLEtBQUssS0FBSyxXQUFXLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxVQUFVLFdBQVcsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxNQUFNLFdBQVcsVUFBVSxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sWUFBWSxjQUFjLE9BQU8sTUFBTSxZQUFZLGNBQWMsZUFBZSxNQUFNLE1BQU0sTUFBTSxXQUFXLE1BQU0sTUFBTSxNQUFNLFlBQVksY0FBYyxlQUFlLE9BQU8sTUFBTSxNQUFNLFlBQVksTUFBTSxNQUFNLE1BQU0sWUFBWSxjQUFjLGVBQWUsT0FBTyxNQUFNLE1BQU0sV0FBVyxNQUFNLE1BQU0sTUFBTSxZQUFZLGNBQWMsZUFBZSxPQUFPLE1BQU0sTUFBTSxZQUFZLE1BQU0sTUFBTSxNQUFNLFlBQVksY0FBYyxlQUFlLE9BQU8sTUFBTSxNQUFNLFdBQVcsTUFBTSxNQUFNLE1BQU0sWUFBWSxjQUFjLGVBQWUsT0FBTyxNQUFNLE1BQU0sWUFBWSxNQUFNLE1BQU0sTUFBTSxXQUFXLFdBQVcsUUFBUSxNQUFNLFdBQVcsV0FBVyxRQUFRLE1BQU0sV0FBVyxNQUFNLE1BQU0sYUFBYSxRQUFRLE1BQU0sWUFBWSxZQUFZLE9BQU8sTUFBTSxZQUFZLFdBQVcsTUFBTSxNQUFNLFdBQVcsT0FBTyxNQUFNLFdBQVcsWUFBWSxXQUFXLFlBQVksT0FBTyxNQUFNLFVBQVUsT0FBTyxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sY0FBYyxjQUFjLFdBQVcsV0FBVyxVQUFVLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sWUFBWSxZQUFZLFFBQVEsYUFBYSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxPQUFPLE1BQU0sWUFBWSxPQUFPLEtBQUssT0FBTyxNQUFNLFlBQVksT0FBTyxLQUFLLE9BQU8sTUFBTSxZQUFZLE9BQU8sS0FBSyxPQUFPLE1BQU0sWUFBWSxPQUFPLEtBQUssT0FBTyxNQUFNLFlBQVksT0FBTyxLQUFLLE9BQU8sV0FBVyxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsUUFBUSxPQUFPLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsT0FBTyxLQUFLLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLE9BQU8sS0FBSyxPQUFPLEtBQUssVUFBVSxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsT0FBTyxLQUFLLE9BQU8sS0FBSyxVQUFVLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFdBQVcsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxPQUFPLEtBQUssT0FBTyxLQUFLLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLE9BQU8sS0FBSyxPQUFPLEtBQUssVUFBVSxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsT0FBTyxLQUFLLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFlBQVksV0FBVyxhQUFhLGFBQWEsT0FBTyxRQUFRLFdBQVcsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxjQUFjLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLFdBQVcsWUFBWSxRQUFRLFFBQVEsY0FBYyxhQUFhLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxpQkFBaUIsY0FBYyxhQUFhLFlBQVksV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsUUFBUSxZQUFZLGVBQWUsaUJBQWlCLGNBQWMsZUFBZSxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsWUFBWSxZQUFZLFFBQVEsUUFBUSxZQUFZLFlBQVksUUFBUSxRQUFRLGFBQWEsWUFBWSxRQUFRLFFBQVEsV0FBVyxXQUFXLGNBQWMsZUFBZSxhQUFhLGFBQWEsV0FBVyxXQUFXLFVBQVUsY0FBYyxjQUFjLGFBQWEsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxlQUFlLFFBQVEsUUFBUSxXQUFXLFdBQVcsY0FBYyxlQUFlLGFBQWEsYUFBYSxXQUFXLFdBQVcsVUFBVSxjQUFjLGNBQWMsYUFBYSxhQUFhLFFBQVEsUUFBUSxNQUFNLFlBQVksV0FBVyxRQUFRLEtBQUssUUFBUSxlQUFlLFNBQVMsUUFBUSxVQUFVLFVBQVUsV0FBVyxXQUFXLGNBQWMsZUFBZSxhQUFhLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxVQUFVLFNBQVMsUUFBUSxlQUFlLGVBQWUsWUFBWSxZQUFZLE9BQU8sUUFBUSxXQUFXLFdBQVcsY0FBYyxRQUFRLFFBQVEsV0FBVyxXQUFXLGNBQWMsU0FBUyxRQUFRLGVBQWUsZUFBZSxZQUFZLFlBQVksT0FBTyxRQUFRLFdBQVcsV0FBVyxjQUFjLFFBQVEsUUFBUSxXQUFXLFdBQVcsY0FBYyxTQUFTLFFBQVEsY0FBYyxRQUFRLFFBQVEsY0FBYyxRQUFRLFFBQVEsY0FBYyxTQUFTLFFBQVEsVUFBVSxVQUFVLGNBQWMsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsWUFBWSxPQUFPLFFBQVEsVUFBVSxZQUFZLFFBQVEsUUFBUSxVQUFVLFVBQVUsV0FBVyxZQUFZLGdCQUFnQixpQkFBaUIsY0FBYyxhQUFhLFlBQVksV0FBVyxlQUFlLG1CQUFtQixlQUFlLFlBQVksWUFBWSxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsY0FBYyxlQUFlLFFBQVEsUUFBUSxlQUFlLGVBQWUsUUFBUSxRQUFRLFlBQVksZUFBZSxPQUFPLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxlQUFlLG1CQUFtQixtQkFBbUIsYUFBYSxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsbUJBQW1CLGFBQWEsUUFBUSxRQUFRLFVBQVUsZUFBZSxtQkFBbUIsbUJBQW1CLFFBQVEsUUFBUSxVQUFVLFdBQVcsU0FBUyxRQUFRLGNBQWMsa0JBQWtCLGVBQWUsV0FBVyxZQUFZLFlBQVksV0FBVyxXQUFXLGVBQWUsZUFBZSxXQUFXLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxZQUFZLE9BQU8sUUFBUSxlQUFlLFFBQVEsUUFBUSxlQUFlLFFBQVEsUUFBUSxlQUFlLGNBQWMsZUFBZSxRQUFRLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLGVBQWUsYUFBYSxRQUFRLFFBQVEsV0FBVyxVQUFVLGNBQWMsUUFBUSxRQUFRLGNBQWMsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLGNBQWMsZUFBZSxXQUFXLFdBQVcsYUFBYSxZQUFZLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsV0FBVyxRQUFRLFFBQVEsZUFBZSxlQUFlLFNBQVMsUUFBUSxXQUFXLGVBQWUsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsYUFBYSxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsY0FBYyxrQkFBa0IsZUFBZSxjQUFjLGVBQWUsY0FBYyxZQUFZLGFBQWEsV0FBVyxXQUFXLFFBQVEsUUFBUSxLQUFLLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGNBQWMsa0JBQWtCLGVBQWUsY0FBYyxpQkFBaUIsYUFBYSxhQUFhLE9BQU8sUUFBUSxjQUFjLGtCQUFrQixpQkFBaUIsZ0JBQWdCLGNBQWMsWUFBWSxhQUFhLFdBQVcsV0FBVyxRQUFRLFFBQVEsTUFBTSxZQUFZLFdBQVcsUUFBUSxLQUFLLFFBQVEsZ0JBQWdCLFFBQVEsUUFBUSxjQUFjLGtCQUFrQixlQUFlLGNBQWMsaUJBQWlCLGFBQWEsYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsYUFBYSxPQUFPLFFBQVEsYUFBYSxRQUFRLFFBQVEsV0FBVyxRQUFRLFNBQVMsZUFBZSxlQUFlLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxjQUFjLG1CQUFtQixRQUFRLFVBQVUsY0FBYyxtQkFBbUIsUUFBUSxRQUFRLGNBQWMsbUJBQW1CLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFVBQVUsUUFBUSxTQUFTLFdBQVcsVUFBVSxVQUFVLFVBQVUsUUFBUSxTQUFTLFVBQVUsUUFBUSxRQUFRLFdBQVcsVUFBVSxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsWUFBWSxnQkFBZ0IsaUJBQWlCLGVBQWUsYUFBYSxXQUFXLGFBQWEsYUFBYSxhQUFhLFFBQVEsV0FBVyxXQUFXLGFBQWEsWUFBWSxRQUFRLFdBQVcsV0FBVyxhQUFhLFlBQVksUUFBUSxTQUFTLFdBQVcsU0FBUyxTQUFTLGFBQWEsV0FBVyxPQUFPLFNBQVMsYUFBYSxXQUFXLE9BQU8sUUFBUSxXQUFXLGFBQWEsV0FBVyxRQUFRLFFBQVEsVUFBVSxVQUFVLGVBQWUsYUFBYSxnQkFBZ0IsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxXQUFXLFdBQVcsYUFBYSxhQUFhLGNBQWMsYUFBYSxRQUFRLFdBQVcsVUFBVSxTQUFTLFFBQVEsZ0JBQWdCLG1CQUFtQixlQUFlLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxlQUFlLGdCQUFnQixVQUFVLFFBQVEsZ0JBQWdCLGVBQWUsU0FBUyxRQUFRLGdCQUFnQixtQkFBbUIsZUFBZSxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsZ0JBQWdCLFVBQVUsUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFVBQVUsVUFBVSxlQUFlLGFBQWEsZ0JBQWdCLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLGFBQWEsYUFBYSxjQUFjLGFBQWEsUUFBUSxXQUFXLFVBQVUsU0FBUyxRQUFRLGdCQUFnQixtQkFBbUIsZUFBZSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsZUFBZSxnQkFBZ0IsVUFBVSxRQUFRLGdCQUFnQixlQUFlLFNBQVMsUUFBUSxnQkFBZ0IsbUJBQW1CLGdCQUFnQixXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsZ0JBQWdCLFVBQVUsUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsY0FBYyxZQUFZLFdBQVcsV0FBVyxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxZQUFZLFlBQVksWUFBWSxXQUFXLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsV0FBVyxPQUFPLFFBQVEsVUFBVSxlQUFlLFFBQVEsUUFBUSxXQUFXLGNBQWMsU0FBUyxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsV0FBVyxhQUFhLGVBQWUsT0FBTyxRQUFRLFVBQVUsWUFBWSxjQUFjLFNBQVMsUUFBUSxXQUFXLFlBQVksY0FBYyxZQUFZLFFBQVEsUUFBUSxXQUFXLGNBQWMsY0FBYyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsV0FBVyxhQUFhLGVBQWUsT0FBTyxRQUFRLFVBQVUsWUFBWSxjQUFjLFNBQVMsUUFBUSxXQUFXLFlBQVksY0FBYyxZQUFZLFFBQVEsUUFBUSxXQUFXLGNBQWMsY0FBYyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsY0FBYyxlQUFlLGdCQUFnQixRQUFRLFFBQVEsYUFBYSxRQUFRLFFBQVEsWUFBWSxRQUFRLFFBQVEsWUFBWSxhQUFhLFlBQVksUUFBUSxRQUFRLFlBQVksYUFBYSxZQUFZLFFBQVEsUUFBUSxZQUFZLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsUUFBUSxRQUFRLEtBQUssV0FBVyxRQUFRLE1BQU0sV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGNBQWMsaUJBQWlCLGFBQWEsWUFBWSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLGNBQWMsY0FBYyxlQUFlLGVBQWUsVUFBVSxZQUFZLGFBQWEsWUFBWSxXQUFXLGFBQWEsYUFBYSxXQUFXLFlBQVksT0FBTyxRQUFRLFVBQVUsZUFBZSxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxPQUFPLE1BQU0sV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsS0FBSyxPQUFPLE1BQU0sV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsZUFBZSxRQUFRLFFBQVEsV0FBVyxjQUFjLGlCQUFpQixhQUFhLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLFFBQVEsUUFBUSxVQUFVLGVBQWUsUUFBUSxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsYUFBYSxZQUFZLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsUUFBUSxXQUFXLFNBQVMsUUFBUSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxlQUFlLFFBQVEsUUFBUSxXQUFXLGNBQWMsaUJBQWlCLGFBQWEsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsYUFBYSxZQUFZLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxVQUFVLFdBQVcsVUFBVSxjQUFjLGVBQWUsYUFBYSxXQUFXLFdBQVcsV0FBVyxVQUFVLFFBQVEsUUFBUSxjQUFjLGdCQUFnQixPQUFPLFFBQVEsWUFBWSxhQUFhLGNBQWMsT0FBTyxRQUFRLFlBQVksYUFBYSxXQUFXLFNBQVMsUUFBUSxVQUFVLFNBQVMsUUFBUSxVQUFVLGVBQWUsZUFBZSxhQUFhLGNBQWMsYUFBYSxTQUFTLFFBQVEsVUFBVSxXQUFXLFlBQVksUUFBUSxRQUFRLFlBQVksZUFBZSxpQkFBaUIsUUFBUSxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksZ0JBQWdCLFFBQVEsUUFBUSxZQUFZLGNBQWMsT0FBTyxRQUFRLFlBQVksT0FBTyxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksUUFBUSxTQUFTLFdBQVcsV0FBVyxXQUFXLFFBQVEsU0FBUyxXQUFXLFVBQVUsUUFBUSxtQkFBbUIsVUFBVSxTQUFTLFFBQVEsVUFBVSxVQUFVLFdBQVcsUUFBUSxRQUFRLFVBQVUsU0FBUyxTQUFTLFdBQVcsUUFBUSxTQUFTLFlBQVksV0FBVyxPQUFPLFVBQVUsWUFBWSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxRQUFRLFNBQVMsVUFBVSxRQUFRLFNBQVMsV0FBVyxRQUFRLFNBQVMsYUFBYSxXQUFXLE9BQU8sU0FBUyxhQUFhLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFlBQVksYUFBYSxVQUFVLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsV0FBVyxhQUFhLFdBQVcsT0FBTyxRQUFRLGVBQWUsZUFBZSxRQUFRLFFBQVEsWUFBWSxhQUFhLFdBQVcsUUFBUSxTQUFTLFlBQVksZUFBZSxpQkFBaUIsUUFBUSxRQUFRLFdBQVcsYUFBYSxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsYUFBYSxPQUFPLFNBQVMsWUFBWSxjQUFjLFFBQVEsU0FBUyxVQUFVLFdBQVcsU0FBUyxTQUFTLFVBQVUsVUFBVSxXQUFXLFNBQVMsUUFBUSxVQUFVLFFBQVEsUUFBUSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxtQkFBbUIsUUFBUSxjQUFjLFVBQVUsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLG1CQUFtQixjQUFjLGFBQWEsV0FBVyxRQUFRLFFBQVEsVUFBVSxXQUFXLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLGVBQWUsbUJBQW1CLFNBQVMsUUFBUSxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxhQUFhLFlBQVksV0FBVyxXQUFXLGFBQWEsWUFBWSxRQUFRLFFBQVEsTUFBTSxZQUFZLFFBQVEsS0FBSyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFNBQVMsZUFBZSxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGVBQWUsUUFBUSxVQUFVLGVBQWUsU0FBUyxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksT0FBTyxRQUFRLGVBQWUsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLGVBQWUsUUFBUSxTQUFTLFlBQVksT0FBTyxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLFFBQVEsVUFBVSxZQUFZLFFBQVEsUUFBUSxXQUFXLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxZQUFZLFdBQVcsWUFBWSxPQUFPLFFBQVEsVUFBVSxVQUFVLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxRQUFRLFdBQVcsWUFBWSxXQUFXLE9BQU8sUUFBUSxXQUFXLFlBQVksV0FBVyxPQUFPLFNBQVMsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFNBQVMsUUFBUSxlQUFlLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxlQUFlLGVBQWUsUUFBUSxRQUFRLGFBQWEsUUFBUSxRQUFRLFdBQVcsZUFBZSxlQUFlLFFBQVEsUUFBUSxhQUFhLFFBQVEsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxZQUFZLFlBQVksUUFBUSxVQUFVLFVBQVUsU0FBUyxTQUFTLGFBQWEsV0FBVyxRQUFRLFNBQVMsYUFBYSxXQUFXLFFBQVEsUUFBUSxlQUFlLFFBQVEsT0FBTyxPQUFPLFVBQVUsV0FBVyxRQUFRLFFBQVEsVUFBVSxXQUFXLFFBQVEsUUFBUSxVQUFVLFVBQVUsUUFBUSxRQUFRLGFBQWEsV0FBVyxPQUFPLFNBQVMsV0FBVyxRQUFRLFNBQVMsV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sU0FBUyxXQUFXLFFBQVEsU0FBUyxXQUFXLFFBQVEsTUFBTSxRQUFRLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyxZQUFZLGFBQWEsWUFBWSxlQUFlLGVBQWUsWUFBWSxZQUFZLGFBQWEsUUFBUSxRQUFRLE9BQU8sYUFBYSxRQUFRLEtBQUssUUFBUSxXQUFXLFFBQVEsUUFBUSxjQUFjLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxlQUFlLFFBQVEsUUFBUSxVQUFVLGNBQWMsa0JBQWtCLGVBQWUsVUFBVSxXQUFXLFdBQVcsZUFBZSxpQkFBaUIsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxVQUFVLFFBQVEsUUFBUSxVQUFVLGVBQWUsY0FBYyxlQUFlLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLGNBQWMsYUFBYSxXQUFXLE9BQU8sUUFBUSxjQUFjLGFBQWEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxVQUFVLFVBQVUsYUFBYSxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsV0FBVyxhQUFhLFdBQVcsT0FBTyxRQUFRLFdBQVcsYUFBYSxXQUFXLFFBQVEsUUFBUSxVQUFVLFVBQVUsVUFBVSxlQUFlLGVBQWUsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLFVBQVUsZUFBZSxlQUFlLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsWUFBWSxhQUFhLFlBQVksWUFBWSxhQUFhLFFBQVEsUUFBUSxNQUFNLGFBQWEsUUFBUSxLQUFLLFFBQVEsVUFBVSxhQUFhLGVBQWUsYUFBYSxPQUFPLFFBQVEsVUFBVSxhQUFhLGVBQWUsZ0JBQWdCLG1CQUFtQixTQUFTLFFBQVEsZUFBZSxRQUFRLFFBQVEsVUFBVSxZQUFZLGNBQWMsYUFBYSxPQUFPLFFBQVEsWUFBWSxhQUFhLGFBQWEsZUFBZSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxhQUFhLGdCQUFnQixhQUFhLFdBQVcsWUFBWSxXQUFXLFdBQVcsWUFBWSxPQUFPLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLFNBQVMsUUFBUSxXQUFXLFdBQVcsZUFBZSxlQUFlLFlBQVksUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsV0FBVyxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsS0FBSyxlQUFlLFFBQVEsS0FBSyxRQUFRLFVBQVUsY0FBYyxlQUFlLGFBQWEsY0FBYyxXQUFXLFFBQVEsUUFBUSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsWUFBWSxXQUFXLFlBQVksY0FBYyxRQUFRLFFBQVEsTUFBTSxZQUFZLFFBQVEsTUFBTSxRQUFRLFlBQVksWUFBWSxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsS0FBSyxVQUFVLFFBQVEsTUFBTSxRQUFRLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxRQUFRLFFBQVEsVUFBVSxXQUFXLFlBQVksUUFBUSxRQUFRLFVBQVUsV0FBVyxZQUFZLGFBQWEsT0FBTyxRQUFRLFlBQVksZUFBZSxRQUFRLFFBQVEsV0FBVyxVQUFVLFdBQVcsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLGFBQWEsV0FBVyxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxZQUFZLGFBQWEsYUFBYSxPQUFPLFFBQVEsVUFBVSxZQUFZLGVBQWUsZUFBZSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLGFBQWEsV0FBVyxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsY0FBYyxjQUFjLFFBQVEsUUFBUSxXQUFXLGNBQWMsU0FBUyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxZQUFZLGVBQWUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsVUFBVSxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxZQUFZLGVBQWUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsVUFBVSxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxXQUFXLGNBQWMsa0JBQWtCLGVBQWUsV0FBVyxZQUFZLFVBQVUsWUFBWSxlQUFlLFFBQVEsUUFBUSxVQUFVLFdBQVcsY0FBYyxRQUFRLFFBQVEsVUFBVSxlQUFlLGtCQUFrQixRQUFRLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxjQUFjLFNBQVMsUUFBUSxlQUFlLFNBQVMsUUFBUSxjQUFjLGNBQWMsYUFBYSxhQUFhLGVBQWUsZUFBZSxXQUFXLGNBQWMsYUFBYSxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxXQUFXLFVBQVUsV0FBVyxRQUFRLFFBQVEsY0FBYyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsWUFBWSxpQkFBaUIsZUFBZSxXQUFXLFlBQVksV0FBVyxPQUFPLFFBQVEsV0FBVyxlQUFlLFNBQVMsUUFBUSxlQUFlLGVBQWUsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsY0FBYyxjQUFjLFVBQVUsVUFBVSxXQUFXLFVBQVUsU0FBUyxRQUFRLFdBQVcsVUFBVSxjQUFjLGVBQWUsUUFBUSxRQUFRLGVBQWUsZUFBZSxRQUFRLFFBQVEsT0FBTyxhQUFhLFFBQVEsS0FBSyxRQUFRLGNBQWMsUUFBUSxRQUFRLGVBQWUsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyxhQUFhLGFBQWEsV0FBVyxhQUFhLFlBQVksU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLGNBQWMsY0FBYyxVQUFVLGFBQWEsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsU0FBUyxRQUFRLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxlQUFlLGFBQWEsV0FBVyxPQUFPLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLGNBQWMsU0FBUyxRQUFRLFdBQVcsVUFBVSxZQUFZLFFBQVEsUUFBUSxVQUFVLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxXQUFXLGFBQWEsV0FBVyxPQUFPLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLFVBQVUsVUFBVSxXQUFXLFNBQVMsT0FBTyxPQUFPLGVBQWUsZUFBZSxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsZUFBZSxRQUFRLEtBQUssT0FBTyxRQUFRLGVBQWUsUUFBUSxLQUFLLE9BQU8sT0FBTyxlQUFlLFFBQVEsS0FBSyxRQUFRLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLFFBQVEsT0FBTyxPQUFPLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLE9BQU8sS0FBSyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxVQUFVLGFBQWEsT0FBTyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsT0FBTyxLQUFLLE9BQU8sT0FBTyxVQUFVLFVBQVUsVUFBVSxVQUFVLFFBQVEsUUFBUSxVQUFVLFVBQVUsYUFBYSxPQUFPLFFBQVEsYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsYUFBYSxPQUFPLEtBQUssT0FBTyxPQUFPLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLE9BQU8sS0FBSyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxVQUFVLGFBQWEsT0FBTyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsT0FBTyxLQUFLLFFBQVEsV0FBVyxjQUFjLGNBQWMsY0FBYyxrQkFBa0IsY0FBYyxjQUFjLGlCQUFpQixjQUFjLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsUUFBUSxjQUFjLFFBQVEsUUFBUSxXQUFXLFVBQVUsY0FBYyxrQkFBa0IsUUFBUSxRQUFRLFdBQVcsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsV0FBVyxhQUFhLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLGNBQWMsa0JBQWtCLFFBQVEsUUFBUSxVQUFVLFdBQVcsYUFBYSxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsVUFBVSxXQUFXLGFBQWEsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsY0FBYyxrQkFBa0IsUUFBUSxRQUFRLFVBQVUsV0FBVyxhQUFhLFFBQVEsUUFBUSxlQUFlLGVBQWUsWUFBWSxhQUFhLGFBQWEsV0FBVyxRQUFRLFFBQVEsV0FBVyxVQUFVLFdBQVcsY0FBYyxjQUFjLGVBQWUsa0JBQWtCLGNBQWMsY0FBYyxpQkFBaUIsY0FBYyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxhQUFhLGFBQWEsWUFBWSxZQUFZLFdBQVcsWUFBWSxPQUFPLFFBQVEsV0FBVyxVQUFVLGNBQWMsa0JBQWtCLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsV0FBVyxlQUFlLFFBQVEsUUFBUSxhQUFhLGNBQWMsYUFBYSxRQUFRLFFBQVEsV0FBVyxjQUFjLGtCQUFrQixRQUFRLFFBQVEsVUFBVSxXQUFXLGVBQWUsUUFBUSxRQUFRLGFBQWEsY0FBYyxhQUFhLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLFdBQVcsZUFBZSxRQUFRLFFBQVEsYUFBYSxjQUFjLGFBQWEsT0FBTyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsY0FBYyxlQUFlLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxjQUFjLGtCQUFrQixRQUFRLFFBQVEsVUFBVSxXQUFXLGVBQWUsUUFBUSxRQUFRLGFBQWEsY0FBYyxhQUFhLFFBQVEsUUFBUSxXQUFXLFdBQVcsWUFBWSxpQkFBaUIsZUFBZSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxVQUFVLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxXQUFXLGVBQWUsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLE1BQU0sVUFBVSxVQUFVLFNBQVMsY0FBYyxNQUFNLFdBQVcsU0FBUyxTQUFTLFdBQVcsU0FBUyxjQUFjLEtBQUssVUFBVSxXQUFXLFVBQVUsUUFBUSxVQUFVLFVBQVUsVUFBVSxRQUFRLFNBQVMsVUFBVSxVQUFVLGVBQWUsUUFBUSxRQUFRLFFBQVEsYUFBYSxRQUFRLE1BQU0sU0FBUyxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLGNBQWMsY0FBYyxZQUFZLGFBQWEsV0FBVyxVQUFVLGNBQWMsaUJBQWlCLFFBQVEsUUFBUSxRQUFRLGFBQWEsUUFBUSxLQUFLLFVBQVUsWUFBWSxhQUFhLFVBQVUsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxTQUFTLFNBQVMsV0FBVyxjQUFjLGtCQUFrQixlQUFlLFdBQVcsV0FBVyxTQUFTLGNBQWMsS0FBSyxLQUFLLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxVQUFVLFdBQVcsVUFBVSxlQUFlLGVBQWUsZUFBZSxlQUFlLFFBQVEsUUFBUSxXQUFXLFVBQVUsY0FBYyxrQkFBa0IsY0FBYyxlQUFlLG1CQUFtQixlQUFlLFVBQVUsYUFBYSxhQUFhLFVBQVUsV0FBVyxXQUFXLGNBQWMsaUJBQWlCLFFBQVEsUUFBUSxPQUFPLGFBQWEsUUFBUSxLQUFLLFFBQVEsY0FBYyxTQUFTLFFBQVEsV0FBVyxVQUFVLGNBQWMsY0FBYyxlQUFlLG1CQUFtQixnQkFBZ0IsYUFBYSxTQUFTLFNBQVMsZUFBZSxRQUFRLFFBQVEsYUFBYSxPQUFPLFFBQVEsWUFBWSxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFdBQVcsY0FBYyxrQkFBa0IsZUFBZSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxjQUFjLGtCQUFrQixtQkFBbUIsU0FBUyxRQUFRLEtBQUssV0FBVyxRQUFRLFFBQVEsVUFBVSxVQUFVLFFBQVEsS0FBSyxRQUFRLFdBQVcsY0FBYyxrQkFBa0IsZUFBZSxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxjQUFjLGtCQUFrQixTQUFTLFFBQVEsTUFBTSxXQUFXLFFBQVEsS0FBSyxRQUFRLFVBQVUsVUFBVSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsUUFBUSxRQUFRLFVBQVUsV0FBVyxVQUFVLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLFVBQVUsY0FBYyxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsVUFBVSxjQUFjLFNBQVMsUUFBUSxXQUFXLFVBQVUsY0FBYyxTQUFTLE9BQU8sT0FBTyxXQUFXLFVBQVUsY0FBYyxRQUFRLEtBQUssT0FBTyxPQUFPLFdBQVcsVUFBVSxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxVQUFVLGNBQWMsUUFBUSxLQUFLLE9BQU8sT0FBTyxXQUFXLFVBQVUsY0FBYyxRQUFRLEtBQUssT0FBTyxPQUFPLFdBQVcsVUFBVSxjQUFjLFFBQVEsS0FBSyxTQUFTLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsYUFBYSxhQUFhLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxjQUFjLEtBQUssV0FBVyxXQUFXLFNBQVMsY0FBYyxLQUFLLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLE9BQU8sTUFBTSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsS0FBSyxPQUFPLE1BQU0sV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNB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QTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLDhGQUE4RixlQUFlO0FBQzdHO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSyxFQUFFOztBQUVQLGlEQUFpRDtBQUNqRDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSwyQkFBMkI7O0FBRTNCO0FBQ0E7QUFDQTtBQUNBLEdBQUc7OztBQUdIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDOztBQUV0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTs7QUFFUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7O0FBRVI7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQSxTQUFTO0FBQ1Qsd0JBQXdCO0FBQ3hCO0FBQ0EsU0FBUztBQUNULHdCQUF3QjtBQUN4QjtBQUNBLFNBQVM7QUFDVCx5QkFBeUI7QUFDekI7QUFDQSxTQUFTO0FBQ1QseUJBQXlCO0FBQ3pCO0FBQ0EsU0FBUztBQUNULGtDQUFrQztBQUNsQztBQUNBLFNBQVM7QUFDVCw0QkFBNEI7QUFDNUI7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLEtBQUs7OztBQUdMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwwREFBMEQ7O0FBRTFEO0FBQ0E7O0FBRUE7QUFDQSx3REFBd0Q7QUFDeEQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7OztBQUdSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87O0FBRVA7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFlBQVksa0JBQWtCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCOzs7QUFHakI7QUFDQTtBQUNBLGFBQWE7QUFDYjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7OztBQUdIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwSEFBMEg7QUFDMUg7QUFDQTtBQUNBOztBQUVBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSxtRUFBbUU7O0FBRW5FO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2IsV0FBVyxjQUFjO0FBQ3pCLFdBQVcsRUFBRTtBQUNiLFdBQVcsRUFBRTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2I7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssRUFBRTs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFFO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsRUFBRTtBQUNiLFdBQVcsT0FBTztBQUNs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QTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEVBQUU7QUFDYixXQUFXLEVBQUU7QUFDYixXQUFXLEVBQUU7QUFDYixXQUFXLGNBQWM7QUFDekIsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEVBQUU7QUFDYjtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFF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QTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBOztBQUVBLDJCQUEyQjs7QUFFM0I7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7O0FBR0g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOzs7QUFHTDtBQUNBLHlDQUF5QztBQUN6Qzs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFF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QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLFdBQVc7QUFDWDs7QUFFQTtBQUNBO0FBQ0Esd0NBQXdDLFdBQVc7QUFDbkQ7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsU0FBUztBQUNUO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0MsY0FBYztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUMsa0JBQWtCO0FBQ25EO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxpQkFBaUI7O0FBRWpCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixpQkFBaUI7QUFDekM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtB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QURGO0FBU0Q7O0tBVlFJLEs7QUFZTUEsb0VBQWY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQ2ZBLFVBQVUsbUJBQU8sQ0FBQyxtTkFBd0c7QUFDMUgsMEJBQTBCLG1CQUFPLENBQUMsNFNBQW1LOztBQUVyTTs7QUFFQTtBQUNBLDBCQUEwQixRQUFTO0FBQ25DOztBQUVBOztBQUVBLG1DQUFtQztBQUNuQztBQUNBLHNFQUFzRSx3Q0FBd0M7QUFDOUc7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7O0FBR0EsSUFBSSxJQUFVO0FBQ2Q7QUFDQSxrRUFBa0UsaUJBQWlCLGNBQWMsTUFBTSxZQUFZLGlDQUFpQztBQUNwSixVQUFVLGdCQUFnQixlQUFlLFlBQVksaUNBQWlDO0FBQ3RGLFVBQVUsVUFBVSxlQUFlO0FBQ25DOztBQUVBO0FBQ0EsTUFBTSw0U0FBbUs7QUFDeks7QUFDQSxrQkFBa0IsbUJBQU8sQ0FBQyw0U0FBbUs7O0FBRTdMOztBQUVBO0FBQ0EsNEJBQTRCLFFBQVM7QUFDckM7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUEsc0MiLCJmaWxlIjoic3RhdGljL2NodW5rcy9wYWdlcy9fYXBwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gX2FycmF5TGlrZVRvQXJyYXkoYXJyLCBsZW4pIHtcbiAgaWYgKGxlbiA9PSBudWxsIHx8IGxlbiA+IGFyci5sZW5ndGgpIGxlbiA9IGFyci5sZW5ndGg7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGFycjIgPSBuZXcgQXJyYXkobGVuKTsgaSA8IGxlbjsgaSsrKSB7XG4gICAgYXJyMltpXSA9IGFycltpXTtcbiAgfVxuXG4gIHJldHVybiBhcnIyO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9hcnJheUxpa2VUb0FycmF5OyIsImZ1bmN0aW9uIF9hcnJheVdpdGhIb2xlcyhhcnIpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgcmV0dXJuIGFycjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfYXJyYXlXaXRoSG9sZXM7IiwidmFyIGFycmF5TGlrZVRvQXJyYXkgPSByZXF1aXJlKFwiLi9hcnJheUxpa2VUb0FycmF5XCIpO1xuXG5mdW5jdGlvbiBfYXJyYXlXaXRob3V0SG9sZXMoYXJyKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KGFycikpIHJldHVybiBhcnJheUxpa2VUb0FycmF5KGFycik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2FycmF5V2l0aG91dEhvbGVzOyIsImZ1bmN0aW9uIF9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQoc2VsZikge1xuICBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7XG4gICAgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpO1xuICB9XG5cbiAgcmV0dXJuIHNlbGY7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2Fzc2VydFRoaXNJbml0aWFsaXplZDsiLCJmdW5jdGlvbiBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csIGtleSwgYXJnKSB7XG4gIHRyeSB7XG4gICAgdmFyIGluZm8gPSBnZW5ba2V5XShhcmcpO1xuICAgIHZhciB2YWx1ZSA9IGluZm8udmFsdWU7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmVqZWN0KGVycm9yKTtcbiAgICByZXR1cm47XG4gIH1cblxuICBpZiAoaW5mby5kb25lKSB7XG4gICAgcmVzb2x2ZSh2YWx1ZSk7XG4gIH0gZWxzZSB7XG4gICAgUHJvbWlzZS5yZXNvbHZlKHZhbHVlKS50aGVuKF9uZXh0LCBfdGhyb3cpO1xuICB9XG59XG5cbmZ1bmN0aW9uIF9hc3luY1RvR2VuZXJhdG9yKGZuKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHNlbGYgPSB0aGlzLFxuICAgICAgICBhcmdzID0gYXJndW1lbnRzO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICB2YXIgZ2VuID0gZm4uYXBwbHkoc2VsZiwgYXJncyk7XG5cbiAgICAgIGZ1bmN0aW9uIF9uZXh0KHZhbHVlKSB7XG4gICAgICAgIGFzeW5jR2VuZXJhdG9yU3RlcChnZW4sIHJlc29sdmUsIHJlamVjdCwgX25leHQsIF90aHJvdywgXCJuZXh0XCIsIHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgZnVuY3Rpb24gX3Rocm93KGVycikge1xuICAgICAgICBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csIFwidGhyb3dcIiwgZXJyKTtcbiAgICAgIH1cblxuICAgICAgX25leHQodW5kZWZpbmVkKTtcbiAgICB9KTtcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfYXN5bmNUb0dlbmVyYXRvcjsiLCJmdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7XG4gIGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTtcbiAgfVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9jbGFzc0NhbGxDaGVjazsiLCJ2YXIgc2V0UHJvdG90eXBlT2YgPSByZXF1aXJlKFwiLi9zZXRQcm90b3R5cGVPZlwiKTtcblxudmFyIGlzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCA9IHJlcXVpcmUoXCIuL2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdFwiKTtcblxuZnVuY3Rpb24gX2NvbnN0cnVjdChQYXJlbnQsIGFyZ3MsIENsYXNzKSB7XG4gIGlmIChpc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QoKSkge1xuICAgIG1vZHVsZS5leHBvcnRzID0gX2NvbnN0cnVjdCA9IFJlZmxlY3QuY29uc3RydWN0O1xuICB9IGVsc2Uge1xuICAgIG1vZHVsZS5leHBvcnRzID0gX2NvbnN0cnVjdCA9IGZ1bmN0aW9uIF9jb25zdHJ1Y3QoUGFyZW50LCBhcmdzLCBDbGFzcykge1xuICAgICAgdmFyIGEgPSBbbnVsbF07XG4gICAgICBhLnB1c2guYXBwbHkoYSwgYXJncyk7XG4gICAgICB2YXIgQ29uc3RydWN0b3IgPSBGdW5jdGlvbi5iaW5kLmFwcGx5KFBhcmVudCwgYSk7XG4gICAgICB2YXIgaW5zdGFuY2UgPSBuZXcgQ29uc3RydWN0b3IoKTtcbiAgICAgIGlmIChDbGFzcykgc2V0UHJvdG90eXBlT2YoaW5zdGFuY2UsIENsYXNzLnByb3RvdHlwZSk7XG4gICAgICByZXR1cm4gaW5zdGFuY2U7XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBfY29uc3RydWN0LmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2NvbnN0cnVjdDsiLCJmdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldO1xuICAgIGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTtcbiAgICBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7XG4gICAgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7XG4gIH1cbn1cblxuZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykge1xuICBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTtcbiAgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpO1xuICByZXR1cm4gQ29uc3RydWN0b3I7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2NyZWF0ZUNsYXNzOyIsImZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHtcbiAgaWYgKGtleSBpbiBvYmopIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHtcbiAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICB3cml0YWJsZTogdHJ1ZVxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIG9ialtrZXldID0gdmFsdWU7XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9kZWZpbmVQcm9wZXJ0eTsiLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7XG4gIGlmIChrZXkgaW4gb2JqKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgd3JpdGFibGU6IHRydWVcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBvYmpba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgcmV0dXJuIG9iajtcbn0iLCJmdW5jdGlvbiBfZ2V0UHJvdG90eXBlT2Yobykge1xuICBtb2R1bGUuZXhwb3J0cyA9IF9nZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7XG4gICAgcmV0dXJuIG8uX19wcm90b19fIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZihvKTtcbiAgfTtcbiAgcmV0dXJuIF9nZXRQcm90b3R5cGVPZihvKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfZ2V0UHJvdG90eXBlT2Y7IiwidmFyIHNldFByb3RvdHlwZU9mID0gcmVxdWlyZShcIi4vc2V0UHJvdG90eXBlT2ZcIik7XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykge1xuICBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uXCIpO1xuICB9XG5cbiAgc3ViQ2xhc3MucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShzdXBlckNsYXNzICYmIHN1cGVyQ2xhc3MucHJvdG90eXBlLCB7XG4gICAgY29uc3RydWN0b3I6IHtcbiAgICAgIHZhbHVlOiBzdWJDbGFzcyxcbiAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfVxuICB9KTtcbiAgaWYgKHN1cGVyQ2xhc3MpIHNldFByb3RvdHlwZU9mKHN1YkNsYXNzLCBzdXBlckNsYXNzKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaW5oZXJpdHM7IiwiZnVuY3Rpb24gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChvYmopIHtcbiAgcmV0dXJuIG9iaiAmJiBvYmouX19lc01vZHVsZSA/IG9iaiA6IHtcbiAgICBcImRlZmF1bHRcIjogb2JqXG4gIH07XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdDsiLCJ2YXIgX3R5cGVvZiA9IHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL3R5cGVvZlwiKTtcblxuZnVuY3Rpb24gX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlKCkge1xuICBpZiAodHlwZW9mIFdlYWtNYXAgIT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIG51bGw7XG4gIHZhciBjYWNoZSA9IG5ldyBXZWFrTWFwKCk7XG5cbiAgX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlID0gZnVuY3Rpb24gX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlKCkge1xuICAgIHJldHVybiBjYWNoZTtcbiAgfTtcblxuICByZXR1cm4gY2FjaGU7XG59XG5cbmZ1bmN0aW9uIF9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkKG9iaikge1xuICBpZiAob2JqICYmIG9iai5fX2VzTW9kdWxlKSB7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIGlmIChvYmogPT09IG51bGwgfHwgX3R5cGVvZihvYmopICE9PSBcIm9iamVjdFwiICYmIHR5cGVvZiBvYmogIT09IFwiZnVuY3Rpb25cIikge1xuICAgIHJldHVybiB7XG4gICAgICBcImRlZmF1bHRcIjogb2JqXG4gICAgfTtcbiAgfVxuXG4gIHZhciBjYWNoZSA9IF9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSgpO1xuXG4gIGlmIChjYWNoZSAmJiBjYWNoZS5oYXMob2JqKSkge1xuICAgIHJldHVybiBjYWNoZS5nZXQob2JqKTtcbiAgfVxuXG4gIHZhciBuZXdPYmogPSB7fTtcbiAgdmFyIGhhc1Byb3BlcnR5RGVzY3JpcHRvciA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSAmJiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yO1xuXG4gIGZvciAodmFyIGtleSBpbiBvYmopIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkge1xuICAgICAgdmFyIGRlc2MgPSBoYXNQcm9wZXJ0eURlc2NyaXB0b3IgPyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iaiwga2V5KSA6IG51bGw7XG5cbiAgICAgIGlmIChkZXNjICYmIChkZXNjLmdldCB8fCBkZXNjLnNldCkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ld09iaiwga2V5LCBkZXNjKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5ld09ialtrZXldID0gb2JqW2tleV07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmV3T2JqW1wiZGVmYXVsdFwiXSA9IG9iajtcblxuICBpZiAoY2FjaGUpIHtcbiAgICBjYWNoZS5zZXQob2JqLCBuZXdPYmopO1xuICB9XG5cbiAgcmV0dXJuIG5ld09iajtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZDsiLCJmdW5jdGlvbiBfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0KCkge1xuICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwidW5kZWZpbmVkXCIgfHwgIVJlZmxlY3QuY29uc3RydWN0KSByZXR1cm4gZmFsc2U7XG4gIGlmIChSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKSByZXR1cm4gZmFsc2U7XG4gIGlmICh0eXBlb2YgUHJveHkgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIHRydWU7XG5cbiAgdHJ5IHtcbiAgICBEYXRlLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKFJlZmxlY3QuY29uc3RydWN0KERhdGUsIFtdLCBmdW5jdGlvbiAoKSB7fSkpO1xuICAgIHJldHVybiB0cnVlO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdDsiLCJmdW5jdGlvbiBfaXRlcmFibGVUb0FycmF5KGl0ZXIpIHtcbiAgaWYgKHR5cGVvZiBTeW1ib2wgIT09IFwidW5kZWZpbmVkXCIgJiYgU3ltYm9sLml0ZXJhdG9yIGluIE9iamVjdChpdGVyKSkgcmV0dXJuIEFycmF5LmZyb20oaXRlcik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2l0ZXJhYmxlVG9BcnJheTsiLCJmdW5jdGlvbiBfaXRlcmFibGVUb0FycmF5TGltaXQoYXJyLCBpKSB7XG4gIGlmICh0eXBlb2YgU3ltYm9sID09PSBcInVuZGVmaW5lZFwiIHx8ICEoU3ltYm9sLml0ZXJhdG9yIGluIE9iamVjdChhcnIpKSkgcmV0dXJuO1xuICB2YXIgX2FyciA9IFtdO1xuICB2YXIgX24gPSB0cnVlO1xuICB2YXIgX2QgPSBmYWxzZTtcbiAgdmFyIF9lID0gdW5kZWZpbmVkO1xuXG4gIHRyeSB7XG4gICAgZm9yICh2YXIgX2kgPSBhcnJbU3ltYm9sLml0ZXJhdG9yXSgpLCBfczsgIShfbiA9IChfcyA9IF9pLm5leHQoKSkuZG9uZSk7IF9uID0gdHJ1ZSkge1xuICAgICAgX2Fyci5wdXNoKF9zLnZhbHVlKTtcblxuICAgICAgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgX2QgPSB0cnVlO1xuICAgIF9lID0gZXJyO1xuICB9IGZpbmFsbHkge1xuICAgIHRyeSB7XG4gICAgICBpZiAoIV9uICYmIF9pW1wicmV0dXJuXCJdICE9IG51bGwpIF9pW1wicmV0dXJuXCJdKCk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGlmIChfZCkgdGhyb3cgX2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIF9hcnI7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2l0ZXJhYmxlVG9BcnJheUxpbWl0OyIsImZ1bmN0aW9uIF9ub25JdGVyYWJsZVJlc3QoKSB7XG4gIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxcbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC5cIik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX25vbkl0ZXJhYmxlUmVzdDsiLCJmdW5jdGlvbiBfbm9uSXRlcmFibGVTcHJlYWQoKSB7XG4gIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuXCIpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9ub25JdGVyYWJsZVNwcmVhZDsiLCJ2YXIgX3R5cGVvZiA9IHJlcXVpcmUoXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL3R5cGVvZlwiKTtcblxudmFyIGFzc2VydFRoaXNJbml0aWFsaXplZCA9IHJlcXVpcmUoXCIuL2Fzc2VydFRoaXNJbml0aWFsaXplZFwiKTtcblxuZnVuY3Rpb24gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4oc2VsZiwgY2FsbCkge1xuICBpZiAoY2FsbCAmJiAoX3R5cGVvZihjYWxsKSA9PT0gXCJvYmplY3RcIiB8fCB0eXBlb2YgY2FsbCA9PT0gXCJmdW5jdGlvblwiKSkge1xuICAgIHJldHVybiBjYWxsO1xuICB9XG5cbiAgcmV0dXJuIGFzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjsiLCJmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkge1xuICBtb2R1bGUuZXhwb3J0cyA9IF9zZXRQcm90b3R5cGVPZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBfc2V0UHJvdG90eXBlT2YobywgcCkge1xuICAgIG8uX19wcm90b19fID0gcDtcbiAgICByZXR1cm4gbztcbiAgfTtcblxuICByZXR1cm4gX3NldFByb3RvdHlwZU9mKG8sIHApO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9zZXRQcm90b3R5cGVPZjsiLCJ2YXIgYXJyYXlXaXRoSG9sZXMgPSByZXF1aXJlKFwiLi9hcnJheVdpdGhIb2xlc1wiKTtcblxudmFyIGl0ZXJhYmxlVG9BcnJheUxpbWl0ID0gcmVxdWlyZShcIi4vaXRlcmFibGVUb0FycmF5TGltaXRcIik7XG5cbnZhciB1bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSA9IHJlcXVpcmUoXCIuL3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5XCIpO1xuXG52YXIgbm9uSXRlcmFibGVSZXN0ID0gcmVxdWlyZShcIi4vbm9uSXRlcmFibGVSZXN0XCIpO1xuXG5mdW5jdGlvbiBfc2xpY2VkVG9BcnJheShhcnIsIGkpIHtcbiAgcmV0dXJuIGFycmF5V2l0aEhvbGVzKGFycikgfHwgaXRlcmFibGVUb0FycmF5TGltaXQoYXJyLCBpKSB8fCB1bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheShhcnIsIGkpIHx8IG5vbkl0ZXJhYmxlUmVzdCgpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9zbGljZWRUb0FycmF5OyIsInZhciBhcnJheVdpdGhvdXRIb2xlcyA9IHJlcXVpcmUoXCIuL2FycmF5V2l0aG91dEhvbGVzXCIpO1xuXG52YXIgaXRlcmFibGVUb0FycmF5ID0gcmVxdWlyZShcIi4vaXRlcmFibGVUb0FycmF5XCIpO1xuXG52YXIgdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkgPSByZXF1aXJlKFwiLi91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheVwiKTtcblxudmFyIG5vbkl0ZXJhYmxlU3ByZWFkID0gcmVxdWlyZShcIi4vbm9uSXRlcmFibGVTcHJlYWRcIik7XG5cbmZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHtcbiAgcmV0dXJuIGFycmF5V2l0aG91dEhvbGVzKGFycikgfHwgaXRlcmFibGVUb0FycmF5KGFycikgfHwgdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkoYXJyKSB8fCBub25JdGVyYWJsZVNwcmVhZCgpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF90b0NvbnN1bWFibGVBcnJheTsiLCJmdW5jdGlvbiBfdHlwZW9mKG9iaikge1xuICBcIkBiYWJlbC9oZWxwZXJzIC0gdHlwZW9mXCI7XG5cbiAgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgU3ltYm9sLml0ZXJhdG9yID09PSBcInN5bWJvbFwiKSB7XG4gICAgbW9kdWxlLmV4cG9ydHMgPSBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHtcbiAgICAgIHJldHVybiB0eXBlb2Ygb2JqO1xuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgbW9kdWxlLmV4cG9ydHMgPSBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHtcbiAgICAgIHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9iai5jb25zdHJ1Y3RvciA9PT0gU3ltYm9sICYmIG9iaiAhPT0gU3ltYm9sLnByb3RvdHlwZSA/IFwic3ltYm9sXCIgOiB0eXBlb2Ygb2JqO1xuICAgIH07XG4gIH1cblxuICByZXR1cm4gX3R5cGVvZihvYmopO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF90eXBlb2Y7IiwidmFyIGFycmF5TGlrZVRvQXJyYXkgPSByZXF1aXJlKFwiLi9hcnJheUxpa2VUb0FycmF5XCIpO1xuXG5mdW5jdGlvbiBfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkobywgbWluTGVuKSB7XG4gIGlmICghbykgcmV0dXJuO1xuICBpZiAodHlwZW9mIG8gPT09IFwic3RyaW5nXCIpIHJldHVybiBhcnJheUxpa2VUb0FycmF5KG8sIG1pbkxlbik7XG4gIHZhciBuID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG8pLnNsaWNlKDgsIC0xKTtcbiAgaWYgKG4gPT09IFwiT2JqZWN0XCIgJiYgby5jb25zdHJ1Y3RvcikgbiA9IG8uY29uc3RydWN0b3IubmFtZTtcbiAgaWYgKG4gPT09IFwiTWFwXCIgfHwgbiA9PT0gXCJTZXRcIikgcmV0dXJuIEFycmF5LmZyb20obyk7XG4gIGlmIChuID09PSBcIkFyZ3VtZW50c1wiIHx8IC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pKSByZXR1cm4gYXJyYXlMaWtlVG9BcnJheShvLCBtaW5MZW4pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJyZWdlbmVyYXRvci1ydW50aW1lXCIpO1xuIiwidmFyIGFwaSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LXN0eWxlLWxvYWRlci9ydW50aW1lL2luamVjdFN0eWxlc0ludG9TdHlsZVRhZy5qc1wiKTtcbiAgICAgICAgICAgIHZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNS0xIS4uLy4uLy4uL25leHQvZGlzdC9jb21waWxlZC9wb3N0Y3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi01LTIhLi9ib290c3RyYXAuY3NzXCIpO1xuXG4gICAgICAgICAgICBjb250ZW50ID0gY29udGVudC5fX2VzTW9kdWxlID8gY29udGVudC5kZWZhdWx0IDogY29udGVudDtcblxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG4gICAgICAgICAgICB9XG5cbnZhciBvcHRpb25zID0ge307XG5cbm9wdGlvbnMuaW5zZXJ0ID0gZnVuY3Rpb24oZWxlbWVudCl7Ly8gVGhlc2UgZWxlbWVudHMgc2hvdWxkIGFsd2F5cyBleGlzdC4gSWYgdGhleSBkbyBub3QsXG4vLyB0aGlzIGNvZGUgc2hvdWxkIGZhaWwuXG52YXIgYW5jaG9yRWxlbWVudD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjX19uZXh0X2Nzc19fRE9fTk9UX1VTRV9fJyk7dmFyIHBhcmVudE5vZGU9YW5jaG9yRWxlbWVudC5wYXJlbnROb2RlOy8vIE5vcm1hbGx5IDxoZWFkPlxuLy8gRWFjaCBzdHlsZSB0YWcgc2hvdWxkIGJlIHBsYWNlZCByaWdodCBiZWZvcmUgb3VyXG4vLyBhbmNob3IuIEJ5IGluc2VydGluZyBiZWZvcmUgYW5kIG5vdCBhZnRlciwgd2UgZG8gbm90XG4vLyBuZWVkIHRvIHRyYWNrIHRoZSBsYXN0IGluc2VydGVkIGVsZW1lbnQuXG5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50LGFuY2hvckVsZW1lbnQpO307XG5vcHRpb25zLnNpbmdsZXRvbiA9IGZhbHNlO1xuXG52YXIgdXBkYXRlID0gYXBpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5cbmlmIChtb2R1bGUuaG90KSB7XG4gIGlmICghY29udGVudC5sb2NhbHMgfHwgbW9kdWxlLmhvdC5pbnZhbGlkYXRlKSB7XG4gICAgdmFyIGlzRXF1YWxMb2NhbHMgPSBmdW5jdGlvbiBpc0VxdWFsTG9jYWxzKGEsYixpc05hbWVkRXhwb3J0KXtpZighYSYmYnx8YSYmIWIpe3JldHVybiBmYWxzZTt9bGV0IHA7Zm9yKHAgaW4gYSl7aWYoaXNOYW1lZEV4cG9ydCYmcD09PSdkZWZhdWx0Jyl7Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRpbnVlXG5jb250aW51ZTt9aWYoYVtwXSE9PWJbcF0pe3JldHVybiBmYWxzZTt9fWZvcihwIGluIGIpe2lmKGlzTmFtZWRFeHBvcnQmJnA9PT0nZGVmYXVsdCcpey8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250aW51ZVxuY29udGludWU7fWlmKCFhW3BdKXtyZXR1cm4gZmFsc2U7fX1yZXR1cm4gdHJ1ZTt9O1xuICAgIHZhciBvbGRMb2NhbHMgPSBjb250ZW50LmxvY2FscztcblxuICAgIG1vZHVsZS5ob3QuYWNjZXB0KFxuICAgICAgXCIhIS4uLy4uLy4uL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTUtMSEuLi8uLi8uLi9uZXh0L2Rpc3QvY29tcGlsZWQvcG9zdGNzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNS0yIS4vYm9vdHN0cmFwLmNzc1wiLFxuICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNS0xIS4uLy4uLy4uL25leHQvZGlzdC9jb21waWxlZC9wb3N0Y3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi01LTIhLi9ib290c3RyYXAuY3NzXCIpO1xuXG4gICAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50Ll9fZXNNb2R1bGUgPyBjb250ZW50LmRlZmF1bHQgOiBjb250ZW50O1xuXG4gICAgICAgICAgICAgIGlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAoIWlzRXF1YWxMb2NhbHMob2xkTG9jYWxzLCBjb250ZW50LmxvY2FscykpIHtcbiAgICAgICAgICAgICAgICBtb2R1bGUuaG90LmludmFsaWRhdGUoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIG9sZExvY2FscyA9IGNvbnRlbnQubG9jYWxzO1xuXG4gICAgICAgICAgICAgIHVwZGF0ZShjb250ZW50KTtcbiAgICAgIH1cbiAgICApXG4gIH1cblxuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzIHx8IHt9OyIsIlwidXNlIHN0cmljdFwiO3ZhciBhc3NpZ249T2JqZWN0LmFzc2lnbi5iaW5kKE9iamVjdCk7bW9kdWxlLmV4cG9ydHM9YXNzaWduO21vZHVsZS5leHBvcnRzLmRlZmF1bHQ9bW9kdWxlLmV4cG9ydHM7XG4vLyMgc291cmNlTWFwcGluZ1VSTD1vYmplY3QtYXNzaWduLmpzLm1hcCIsIlxuICAgICAgKHdpbmRvdy5fX05FWFRfUCA9IHdpbmRvdy5fX05FWFRfUCB8fCBbXSkucHVzaChbXG4gICAgICAgIFwiL19hcHBcIixcbiAgICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiByZXF1aXJlKFwicHJpdmF0ZS1uZXh0LXBhZ2VzL19hcHAuanNcIik7XG4gICAgICAgIH1cbiAgICAgIF0pO1xuICAgICIsIlwidXNlIHN0cmljdFwiO2NvbnN0IGlzT2xkSUU9ZnVuY3Rpb24gaXNPbGRJRSgpe2xldCBtZW1vO3JldHVybiBmdW5jdGlvbiBtZW1vcml6ZSgpe2lmKHR5cGVvZiBtZW1vPT09J3VuZGVmaW5lZCcpey8vIFRlc3QgZm9yIElFIDw9IDkgYXMgcHJvcG9zZWQgYnkgQnJvd3NlcmhhY2tzXG4vLyBAc2VlIGh0dHA6Ly9icm93c2VyaGFja3MuY29tLyNoYWNrLWU3MWQ4NjkyZjY1MzM0MTczZmVlNzE1YzIyMmNiODA1XG4vLyBUZXN0cyBmb3IgZXhpc3RlbmNlIG9mIHN0YW5kYXJkIGdsb2JhbHMgaXMgdG8gYWxsb3cgc3R5bGUtbG9hZGVyXG4vLyB0byBvcGVyYXRlIGNvcnJlY3RseSBpbnRvIG5vbi1zdGFuZGFyZCBlbnZpcm9ubWVudHNcbi8vIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3dlYnBhY2stY29udHJpYi9zdHlsZS1sb2FkZXIvaXNzdWVzLzE3N1xubWVtbz1Cb29sZWFuKHdpbmRvdyYmZG9jdW1lbnQmJmRvY3VtZW50LmFsbCYmIXdpbmRvdy5hdG9iKTt9cmV0dXJuIG1lbW87fTt9KCk7Y29uc3QgZ2V0VGFyZ2V0PWZ1bmN0aW9uIGdldFRhcmdldCgpe2NvbnN0IG1lbW89e307cmV0dXJuIGZ1bmN0aW9uIG1lbW9yaXplKHRhcmdldCl7aWYodHlwZW9mIG1lbW9bdGFyZ2V0XT09PSd1bmRlZmluZWQnKXtsZXQgc3R5bGVUYXJnZXQ9ZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0YXJnZXQpOy8vIFNwZWNpYWwgY2FzZSB0byByZXR1cm4gaGVhZCBvZiBpZnJhbWUgaW5zdGVhZCBvZiBpZnJhbWUgaXRzZWxmXG5pZih3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQmJnN0eWxlVGFyZ2V0IGluc3RhbmNlb2Ygd2luZG93LkhUTUxJRnJhbWVFbGVtZW50KXt0cnl7Ly8gVGhpcyB3aWxsIHRocm93IGFuIGV4Y2VwdGlvbiBpZiBhY2Nlc3MgdG8gaWZyYW1lIGlzIGJsb2NrZWRcbi8vIGR1ZSB0byBjcm9zcy1vcmlnaW4gcmVzdHJpY3Rpb25zXG5zdHlsZVRhcmdldD1zdHlsZVRhcmdldC5jb250ZW50RG9jdW1lbnQuaGVhZDt9Y2F0Y2goZSl7Ly8gaXN0YW5idWwgaWdub3JlIG5leHRcbnN0eWxlVGFyZ2V0PW51bGw7fX1tZW1vW3RhcmdldF09c3R5bGVUYXJnZXQ7fXJldHVybiBtZW1vW3RhcmdldF07fTt9KCk7Y29uc3Qgc3R5bGVzSW5Eb209W107ZnVuY3Rpb24gZ2V0SW5kZXhCeUlkZW50aWZpZXIoaWRlbnRpZmllcil7bGV0IHJlc3VsdD0tMTtmb3IobGV0IGk9MDtpPHN0eWxlc0luRG9tLmxlbmd0aDtpKyspe2lmKHN0eWxlc0luRG9tW2ldLmlkZW50aWZpZXI9PT1pZGVudGlmaWVyKXtyZXN1bHQ9aTticmVhazt9fXJldHVybiByZXN1bHQ7fWZ1bmN0aW9uIG1vZHVsZXNUb0RvbShsaXN0LG9wdGlvbnMpe2NvbnN0IGlkQ291bnRNYXA9e307Y29uc3QgaWRlbnRpZmllcnM9W107Zm9yKGxldCBpPTA7aTxsaXN0Lmxlbmd0aDtpKyspe2NvbnN0IGl0ZW09bGlzdFtpXTtjb25zdCBpZD1vcHRpb25zLmJhc2U/aXRlbVswXStvcHRpb25zLmJhc2U6aXRlbVswXTtjb25zdCBjb3VudD1pZENvdW50TWFwW2lkXXx8MDtjb25zdCBpZGVudGlmaWVyPWAke2lkfSAke2NvdW50fWA7aWRDb3VudE1hcFtpZF09Y291bnQrMTtjb25zdCBpbmRleD1nZXRJbmRleEJ5SWRlbnRpZmllcihpZGVudGlmaWVyKTtjb25zdCBvYmo9e2NzczppdGVtWzFdLG1lZGlhOml0ZW1bMl0sc291cmNlTWFwOml0ZW1bM119O2lmKGluZGV4IT09LTEpe3N0eWxlc0luRG9tW2luZGV4XS5yZWZlcmVuY2VzKys7c3R5bGVzSW5Eb21baW5kZXhdLnVwZGF0ZXIob2JqKTt9ZWxzZXtzdHlsZXNJbkRvbS5wdXNoKHtpZGVudGlmaWVyLHVwZGF0ZXI6YWRkU3R5bGUob2JqLG9wdGlvbnMpLHJlZmVyZW5jZXM6MX0pO31pZGVudGlmaWVycy5wdXNoKGlkZW50aWZpZXIpO31yZXR1cm4gaWRlbnRpZmllcnM7fWZ1bmN0aW9uIGluc2VydFN0eWxlRWxlbWVudChvcHRpb25zKXtjb25zdCBzdHlsZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO2NvbnN0IGF0dHJpYnV0ZXM9b3B0aW9ucy5hdHRyaWJ1dGVzfHx7fTtpZih0eXBlb2YgYXR0cmlidXRlcy5ub25jZT09PSd1bmRlZmluZWQnKXtjb25zdCBub25jZT0vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWZcbnR5cGVvZiBfX3dlYnBhY2tfbm9uY2VfXyE9PSd1bmRlZmluZWQnP19fd2VicGFja19ub25jZV9fOm51bGw7aWYobm9uY2Upe2F0dHJpYnV0ZXMubm9uY2U9bm9uY2U7fX1PYmplY3Qua2V5cyhhdHRyaWJ1dGVzKS5mb3JFYWNoKGtleT0+e3N0eWxlLnNldEF0dHJpYnV0ZShrZXksYXR0cmlidXRlc1trZXldKTt9KTtpZih0eXBlb2Ygb3B0aW9ucy5pbnNlcnQ9PT0nZnVuY3Rpb24nKXtvcHRpb25zLmluc2VydChzdHlsZSk7fWVsc2V7Y29uc3QgdGFyZ2V0PWdldFRhcmdldChvcHRpb25zLmluc2VydHx8J2hlYWQnKTtpZighdGFyZ2V0KXt0aHJvdyBuZXcgRXJyb3IoXCJDb3VsZG4ndCBmaW5kIGEgc3R5bGUgdGFyZ2V0LiBUaGlzIHByb2JhYmx5IG1lYW5zIHRoYXQgdGhlIHZhbHVlIGZvciB0aGUgJ2luc2VydCcgcGFyYW1ldGVyIGlzIGludmFsaWQuXCIpO310YXJnZXQuYXBwZW5kQ2hpbGQoc3R5bGUpO31yZXR1cm4gc3R5bGU7fWZ1bmN0aW9uIHJlbW92ZVN0eWxlRWxlbWVudChzdHlsZSl7Ly8gaXN0YW5idWwgaWdub3JlIGlmXG5pZihzdHlsZS5wYXJlbnROb2RlPT09bnVsbCl7cmV0dXJuIGZhbHNlO31zdHlsZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHN0eWxlKTt9LyogaXN0YW5idWwgaWdub3JlIG5leHQgICovY29uc3QgcmVwbGFjZVRleHQ9ZnVuY3Rpb24gcmVwbGFjZVRleHQoKXtjb25zdCB0ZXh0U3RvcmU9W107cmV0dXJuIGZ1bmN0aW9uIHJlcGxhY2UoaW5kZXgscmVwbGFjZW1lbnQpe3RleHRTdG9yZVtpbmRleF09cmVwbGFjZW1lbnQ7cmV0dXJuIHRleHRTdG9yZS5maWx0ZXIoQm9vbGVhbikuam9pbignXFxuJyk7fTt9KCk7ZnVuY3Rpb24gYXBwbHlUb1NpbmdsZXRvblRhZyhzdHlsZSxpbmRleCxyZW1vdmUsb2JqKXtjb25zdCBjc3M9cmVtb3ZlPycnOm9iai5tZWRpYT9gQG1lZGlhICR7b2JqLm1lZGlhfSB7JHtvYmouY3NzfX1gOm9iai5jc3M7Ly8gRm9yIG9sZCBJRVxuLyogaXN0YW5idWwgaWdub3JlIGlmICAqL2lmKHN0eWxlLnN0eWxlU2hlZXQpe3N0eWxlLnN0eWxlU2hlZXQuY3NzVGV4dD1yZXBsYWNlVGV4dChpbmRleCxjc3MpO31lbHNle2NvbnN0IGNzc05vZGU9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzKTtjb25zdCBjaGlsZE5vZGVzPXN0eWxlLmNoaWxkTm9kZXM7aWYoY2hpbGROb2Rlc1tpbmRleF0pe3N0eWxlLnJlbW92ZUNoaWxkKGNoaWxkTm9kZXNbaW5kZXhdKTt9aWYoY2hpbGROb2Rlcy5sZW5ndGgpe3N0eWxlLmluc2VydEJlZm9yZShjc3NOb2RlLGNoaWxkTm9kZXNbaW5kZXhdKTt9ZWxzZXtzdHlsZS5hcHBlbmRDaGlsZChjc3NOb2RlKTt9fX1mdW5jdGlvbiBhcHBseVRvVGFnKHN0eWxlLG9wdGlvbnMsb2JqKXtsZXQgY3NzPW9iai5jc3M7Y29uc3QgbWVkaWE9b2JqLm1lZGlhO2NvbnN0IHNvdXJjZU1hcD1vYmouc291cmNlTWFwO2lmKG1lZGlhKXtzdHlsZS5zZXRBdHRyaWJ1dGUoJ21lZGlhJyxtZWRpYSk7fWVsc2V7c3R5bGUucmVtb3ZlQXR0cmlidXRlKCdtZWRpYScpO31pZihzb3VyY2VNYXAmJnR5cGVvZiBidG9hIT09J3VuZGVmaW5lZCcpe2Nzcys9YFxcbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsJHtidG9hKHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShzb3VyY2VNYXApKSkpfSAqL2A7fS8vIEZvciBvbGQgSUVcbi8qIGlzdGFuYnVsIGlnbm9yZSBpZiAgKi9pZihzdHlsZS5zdHlsZVNoZWV0KXtzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQ9Y3NzO31lbHNle3doaWxlKHN0eWxlLmZpcnN0Q2hpbGQpe3N0eWxlLnJlbW92ZUNoaWxkKHN0eWxlLmZpcnN0Q2hpbGQpO31zdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpKTt9fWxldCBzaW5nbGV0b249bnVsbDtsZXQgc2luZ2xldG9uQ291bnRlcj0wO2Z1bmN0aW9uIGFkZFN0eWxlKG9iaixvcHRpb25zKXtsZXQgc3R5bGU7bGV0IHVwZGF0ZTtsZXQgcmVtb3ZlO2lmKG9wdGlvbnMuc2luZ2xldG9uKXtjb25zdCBzdHlsZUluZGV4PXNpbmdsZXRvbkNvdW50ZXIrKztzdHlsZT1zaW5nbGV0b258fChzaW5nbGV0b249aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMpKTt1cGRhdGU9YXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsc3R5bGUsc3R5bGVJbmRleCxmYWxzZSk7cmVtb3ZlPWFwcGx5VG9TaW5nbGV0b25UYWcuYmluZChudWxsLHN0eWxlLHN0eWxlSW5kZXgsdHJ1ZSk7fWVsc2V7c3R5bGU9aW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMpO3VwZGF0ZT1hcHBseVRvVGFnLmJpbmQobnVsbCxzdHlsZSxvcHRpb25zKTtyZW1vdmU9KCk9PntyZW1vdmVTdHlsZUVsZW1lbnQoc3R5bGUpO307fXVwZGF0ZShvYmopO3JldHVybiBmdW5jdGlvbiB1cGRhdGVTdHlsZShuZXdPYmope2lmKG5ld09iail7aWYobmV3T2JqLmNzcz09PW9iai5jc3MmJm5ld09iai5tZWRpYT09PW9iai5tZWRpYSYmbmV3T2JqLnNvdXJjZU1hcD09PW9iai5zb3VyY2VNYXApe3JldHVybjt9dXBkYXRlKG9iaj1uZXdPYmopO31lbHNle3JlbW92ZSgpO319O31tb2R1bGUuZXhwb3J0cz0obGlzdCxvcHRpb25zKT0+e29wdGlvbnM9b3B0aW9uc3x8e307Ly8gRm9yY2Ugc2luZ2xlLXRhZyBzb2x1dGlvbiBvbiBJRTYtOSwgd2hpY2ggaGFzIGEgaGFyZCBsaW1pdCBvbiB0aGUgIyBvZiA8c3R5bGU+XG4vLyB0YWdzIGl0IHdpbGwgYWxsb3cgb24gYSBwYWdlXG5pZighb3B0aW9ucy5zaW5nbGV0b24mJnR5cGVvZiBvcHRpb25zLnNpbmdsZXRvbiE9PSdib29sZWFuJyl7b3B0aW9ucy5zaW5nbGV0b249aXNPbGRJRSgpO31saXN0PWxpc3R8fFtdO2xldCBsYXN0SWRlbnRpZmllcnM9bW9kdWxlc1RvRG9tKGxpc3Qsb3B0aW9ucyk7cmV0dXJuIGZ1bmN0aW9uIHVwZGF0ZShuZXdMaXN0KXtuZXdMaXN0PW5ld0xpc3R8fFtdO2lmKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChuZXdMaXN0KSE9PSdbb2JqZWN0IEFycmF5XScpe3JldHVybjt9Zm9yKGxldCBpPTA7aTxsYXN0SWRlbnRpZmllcnMubGVuZ3RoO2krKyl7Y29uc3QgaWRlbnRpZmllcj1sYXN0SWRlbnRpZmllcnNbaV07Y29uc3QgaW5kZXg9Z2V0SW5kZXhCeUlkZW50aWZpZXIoaWRlbnRpZmllcik7c3R5bGVzSW5Eb21baW5kZXhdLnJlZmVyZW5jZXMtLTt9Y29uc3QgbmV3TGFzdElkZW50aWZpZXJzPW1vZHVsZXNUb0RvbShuZXdMaXN0LG9wdGlvbnMpO2ZvcihsZXQgaT0wO2k8bGFzdElkZW50aWZpZXJzLmxlbmd0aDtpKyspe2NvbnN0IGlkZW50aWZpZXI9bGFzdElkZW50aWZpZXJzW2ldO2NvbnN0IGluZGV4PWdldEluZGV4QnlJZGVudGlmaWVyKGlkZW50aWZpZXIpO2lmKHN0eWxlc0luRG9tW2luZGV4XS5yZWZlcmVuY2VzPT09MCl7c3R5bGVzSW5Eb21baW5kZXhdLnVwZGF0ZXIoKTtzdHlsZXNJbkRvbS5zcGxpY2UoaW5kZXgsMSk7fX1sYXN0SWRlbnRpZmllcnM9bmV3TGFzdElkZW50aWZpZXJzO307fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluamVjdFN0eWxlc0ludG9TdHlsZVRhZy5qcy5tYXAiLCIvKipcbiAqIFJlbW92ZXMgdGhlIHRyYWlsaW5nIHNsYXNoIG9mIGEgcGF0aCBpZiB0aGVyZSBpcyBvbmUuIFByZXNlcnZlcyB0aGUgcm9vdCBwYXRoIGAvYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBwYXRoLmVuZHNXaXRoKCcvJykgJiYgcGF0aCAhPT0gJy8nID8gcGF0aC5zbGljZSgwLCAtMSkgOiBwYXRoXG59XG5cbi8qKlxuICogTm9ybWFsaXplcyB0aGUgdHJhaWxpbmcgc2xhc2ggb2YgYSBwYXRoIGFjY29yZGluZyB0byB0aGUgYHRyYWlsaW5nU2xhc2hgIG9wdGlvblxuICogaW4gYG5leHQuY29uZmlnLmpzYC5cbiAqL1xuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZVBhdGhUcmFpbGluZ1NsYXNoID0gcHJvY2Vzcy5lbnYuX19ORVhUX1RSQUlMSU5HX1NMQVNIXG4gID8gKHBhdGg6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gICAgICBpZiAoL1xcLlteL10rXFwvPyQvLnRlc3QocGF0aCkpIHtcbiAgICAgICAgcmV0dXJuIHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhdGgpXG4gICAgICB9IGVsc2UgaWYgKHBhdGguZW5kc1dpdGgoJy8nKSkge1xuICAgICAgICByZXR1cm4gcGF0aFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHBhdGggKyAnLydcbiAgICAgIH1cbiAgICB9XG4gIDogcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2hcbiIsInR5cGUgUmVxdWVzdElkbGVDYWxsYmFja0hhbmRsZSA9IGFueVxudHlwZSBSZXF1ZXN0SWRsZUNhbGxiYWNrT3B0aW9ucyA9IHtcbiAgdGltZW91dDogbnVtYmVyXG59XG50eXBlIFJlcXVlc3RJZGxlQ2FsbGJhY2tEZWFkbGluZSA9IHtcbiAgcmVhZG9ubHkgZGlkVGltZW91dDogYm9vbGVhblxuICB0aW1lUmVtYWluaW5nOiAoKSA9PiBudW1iZXJcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICByZXF1ZXN0SWRsZUNhbGxiYWNrOiAoXG4gICAgICBjYWxsYmFjazogKGRlYWRsaW5lOiBSZXF1ZXN0SWRsZUNhbGxiYWNrRGVhZGxpbmUpID0+IHZvaWQsXG4gICAgICBvcHRzPzogUmVxdWVzdElkbGVDYWxsYmFja09wdGlvbnNcbiAgICApID0+IFJlcXVlc3RJZGxlQ2FsbGJhY2tIYW5kbGVcbiAgICBjYW5jZWxJZGxlQ2FsbGJhY2s6IChpZDogUmVxdWVzdElkbGVDYWxsYmFja0hhbmRsZSkgPT4gdm9pZFxuICB9XG59XG5cbmV4cG9ydCBjb25zdCByZXF1ZXN0SWRsZUNhbGxiYWNrID1cbiAgKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJyAmJiBzZWxmLnJlcXVlc3RJZGxlQ2FsbGJhY2spIHx8XG4gIGZ1bmN0aW9uIChcbiAgICBjYjogKGRlYWRsaW5lOiBSZXF1ZXN0SWRsZUNhbGxiYWNrRGVhZGxpbmUpID0+IHZvaWRcbiAgKTogTm9kZUpTLlRpbWVvdXQge1xuICAgIGxldCBzdGFydCA9IERhdGUubm93KClcbiAgICByZXR1cm4gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBjYih7XG4gICAgICAgIGRpZFRpbWVvdXQ6IGZhbHNlLFxuICAgICAgICB0aW1lUmVtYWluaW5nOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIE1hdGgubWF4KDAsIDUwIC0gKERhdGUubm93KCkgLSBzdGFydCkpXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIH0sIDEpXG4gIH1cblxuZXhwb3J0IGNvbnN0IGNhbmNlbElkbGVDYWxsYmFjayA9XG4gICh0eXBlb2Ygc2VsZiAhPT0gJ3VuZGVmaW5lZCcgJiYgc2VsZi5jYW5jZWxJZGxlQ2FsbGJhY2spIHx8XG4gIGZ1bmN0aW9uIChpZDogUmVxdWVzdElkbGVDYWxsYmFja0hhbmRsZSkge1xuICAgIHJldHVybiBjbGVhclRpbWVvdXQoaWQpXG4gIH1cbiIsImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IENsaWVudEJ1aWxkTWFuaWZlc3QgfSBmcm9tICcuLi9idWlsZC93ZWJwYWNrL3BsdWdpbnMvYnVpbGQtbWFuaWZlc3QtcGx1Z2luJ1xuaW1wb3J0IGdldEFzc2V0UGF0aEZyb21Sb3V0ZSBmcm9tICcuLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL2dldC1hc3NldC1wYXRoLWZyb20tcm91dGUnXG5pbXBvcnQgeyByZXF1ZXN0SWRsZUNhbGxiYWNrIH0gZnJvbSAnLi9yZXF1ZXN0LWlkbGUtY2FsbGJhY2snXG5cbi8vIDMuOHMgd2FzIGFyYml0cmFyaWx5IGNob3NlbiBhcyBpdCdzIHdoYXQgaHR0cHM6Ly93ZWIuZGV2L2ludGVyYWN0aXZlXG4vLyBjb25zaWRlcnMgYXMgXCJHb29kXCIgdGltZS10by1pbnRlcmFjdGl2ZS4gV2UgbXVzdCBhc3N1bWUgc29tZXRoaW5nIHdlbnRcbi8vIHdyb25nIGJleW9uZCB0aGlzIHBvaW50LCBhbmQgdGhlbiBmYWxsLWJhY2sgdG8gYSBmdWxsIHBhZ2UgdHJhbnNpdGlvbiB0b1xuLy8gc2hvdyB0aGUgdXNlciBzb21ldGhpbmcgb2YgdmFsdWUuXG5jb25zdCBNU19NQVhfSURMRV9ERUxBWSA9IDM4MDBcblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICBfX0JVSUxEX01BTklGRVNUPzogQ2xpZW50QnVpbGRNYW5pZmVzdFxuICAgIF9fQlVJTERfTUFOSUZFU1RfQ0I/OiBGdW5jdGlvblxuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGVkRW50cnlwb2ludFN1Y2Nlc3Mge1xuICBjb21wb25lbnQ6IENvbXBvbmVudFR5cGVcbiAgZXhwb3J0czogYW55XG59XG5leHBvcnQgaW50ZXJmYWNlIExvYWRlZEVudHJ5cG9pbnRGYWlsdXJlIHtcbiAgZXJyb3I6IHVua25vd25cbn1cbmV4cG9ydCB0eXBlIFJvdXRlRW50cnlwb2ludCA9IExvYWRlZEVudHJ5cG9pbnRTdWNjZXNzIHwgTG9hZGVkRW50cnlwb2ludEZhaWx1cmVcblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZVN0eWxlU2hlZXQge1xuICBocmVmOiBzdHJpbmdcbiAgY29udGVudDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGVkUm91dGVTdWNjZXNzIGV4dGVuZHMgTG9hZGVkRW50cnlwb2ludFN1Y2Nlc3Mge1xuICBzdHlsZXM6IFJvdXRlU3R5bGVTaGVldFtdXG59XG5leHBvcnQgaW50ZXJmYWNlIExvYWRlZFJvdXRlRmFpbHVyZSB7XG4gIGVycm9yOiB1bmtub3duXG59XG5leHBvcnQgdHlwZSBSb3V0ZUxvYWRlckVudHJ5ID0gTG9hZGVkUm91dGVTdWNjZXNzIHwgTG9hZGVkUm91dGVGYWlsdXJlXG5cbmV4cG9ydCB0eXBlIEZ1dHVyZTxWPiA9IHtcbiAgcmVzb2x2ZTogKGVudHJ5cG9pbnQ6IFYpID0+IHZvaWRcbiAgZnV0dXJlOiBQcm9taXNlPFY+XG59XG5mdW5jdGlvbiB3aXRoRnV0dXJlPFQ+KFxuICBrZXk6IHN0cmluZyxcbiAgbWFwOiBNYXA8c3RyaW5nLCBGdXR1cmU8VD4gfCBUPixcbiAgZ2VuZXJhdG9yPzogKCkgPT4gUHJvbWlzZTxUPlxuKTogUHJvbWlzZTxUPiB7XG4gIGxldCBlbnRyeTogRnV0dXJlPFQ+IHwgVCB8IHVuZGVmaW5lZCA9IG1hcC5nZXQoa2V5KVxuICBpZiAoZW50cnkpIHtcbiAgICBpZiAoJ2Z1dHVyZScgaW4gZW50cnkpIHtcbiAgICAgIHJldHVybiBlbnRyeS5mdXR1cmVcbiAgICB9XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShlbnRyeSlcbiAgfVxuICBsZXQgcmVzb2x2ZXI6IChlbnRyeXBvaW50OiBUKSA9PiB2b2lkXG4gIGNvbnN0IHByb206IFByb21pc2U8VD4gPSBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSkgPT4ge1xuICAgIHJlc29sdmVyID0gcmVzb2x2ZVxuICB9KVxuICBtYXAuc2V0KGtleSwgKGVudHJ5ID0geyByZXNvbHZlOiByZXNvbHZlciEsIGZ1dHVyZTogcHJvbSB9KSlcbiAgcmV0dXJuIGdlbmVyYXRvclxuICAgID8gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlcXVlbmNlc1xuICAgICAgZ2VuZXJhdG9yKCkudGhlbigodmFsdWUpID0+IChyZXNvbHZlcih2YWx1ZSksIHZhbHVlKSlcbiAgICA6IHByb21cbn1cblxuZXhwb3J0IGludGVyZmFjZSBSb3V0ZUxvYWRlciB7XG4gIHdoZW5FbnRyeXBvaW50KHJvdXRlOiBzdHJpbmcpOiBQcm9taXNlPFJvdXRlRW50cnlwb2ludD5cbiAgb25FbnRyeXBvaW50KHJvdXRlOiBzdHJpbmcsIGV4ZWN1dGU6ICgpID0+IHVua25vd24pOiB2b2lkXG4gIGxvYWRSb3V0ZShyb3V0ZTogc3RyaW5nKTogUHJvbWlzZTxSb3V0ZUxvYWRlckVudHJ5PlxuICBwcmVmZXRjaChyb3V0ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPlxufVxuXG5mdW5jdGlvbiBoYXNQcmVmZXRjaChsaW5rPzogSFRNTExpbmtFbGVtZW50KTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKVxuICAgIHJldHVybiAoXG4gICAgICAvLyBkZXRlY3QgSUUxMSBzaW5jZSBpdCBzdXBwb3J0cyBwcmVmZXRjaCBidXQgaXNuJ3QgZGV0ZWN0ZWRcbiAgICAgIC8vIHdpdGggcmVsTGlzdC5zdXBwb3J0XG4gICAgICAoISF3aW5kb3cuTVNJbnB1dE1ldGhvZENvbnRleHQgJiYgISEoZG9jdW1lbnQgYXMgYW55KS5kb2N1bWVudE1vZGUpIHx8XG4gICAgICBsaW5rLnJlbExpc3Quc3VwcG9ydHMoJ3ByZWZldGNoJylcbiAgICApXG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cbmNvbnN0IGNhblByZWZldGNoOiBib29sZWFuID0gaGFzUHJlZmV0Y2goKVxuXG5mdW5jdGlvbiBwcmVmZXRjaFZpYURvbShcbiAgaHJlZjogc3RyaW5nLFxuICBhczogc3RyaW5nLFxuICBsaW5rPzogSFRNTExpbmtFbGVtZW50XG4pOiBQcm9taXNlPGFueT4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlcywgcmVqKSA9PiB7XG4gICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGxpbmtbcmVsPVwicHJlZmV0Y2hcIl1baHJlZl49XCIke2hyZWZ9XCJdYCkpIHtcbiAgICAgIHJldHVybiByZXMoKVxuICAgIH1cblxuICAgIGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJylcblxuICAgIC8vIFRoZSBvcmRlciBvZiBwcm9wZXJ0eSBhc3NpZ25tZW50IGhlcmUgaXMgaW50ZW50aW9uYWw6XG4gICAgaWYgKGFzKSBsaW5rIS5hcyA9IGFzXG4gICAgbGluayEucmVsID0gYHByZWZldGNoYFxuICAgIGxpbmshLmNyb3NzT3JpZ2luID0gcHJvY2Vzcy5lbnYuX19ORVhUX0NST1NTX09SSUdJTiFcbiAgICBsaW5rIS5vbmxvYWQgPSByZXNcbiAgICBsaW5rIS5vbmVycm9yID0gcmVqXG5cbiAgICAvLyBgaHJlZmAgc2hvdWxkIGFsd2F5cyBiZSBsYXN0OlxuICAgIGxpbmshLmhyZWYgPSBocmVmXG5cbiAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGxpbmspXG4gIH0pXG59XG5cbmNvbnN0IEFTU0VUX0xPQURfRVJST1IgPSBTeW1ib2woJ0FTU0VUX0xPQURfRVJST1InKVxuLy8gVE9ETzogdW5leHBvcnRcbmV4cG9ydCBmdW5jdGlvbiBtYXJrQXNzZXRFcnJvcihlcnI6IEVycm9yKTogRXJyb3Ige1xuICByZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGVyciwgQVNTRVRfTE9BRF9FUlJPUiwge30pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Fzc2V0RXJyb3IoZXJyPzogRXJyb3IpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIGVyciAmJiBBU1NFVF9MT0FEX0VSUk9SIGluIGVyclxufVxuXG5mdW5jdGlvbiBhcHBlbmRTY3JpcHQoXG4gIHNyYzogc3RyaW5nLFxuICBzY3JpcHQ/OiBIVE1MU2NyaXB0RWxlbWVudFxuKTogUHJvbWlzZTx1bmtub3duPiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0JylcblxuICAgIC8vIFRoZSBvcmRlciBvZiBwcm9wZXJ0eSBhc3NpZ25tZW50IGhlcmUgaXMgaW50ZW50aW9uYWwuXG4gICAgLy8gMS4gU2V0dXAgc3VjY2Vzcy9mYWlsdXJlIGhvb2tzIGluIGNhc2UgdGhlIGJyb3dzZXIgc3luY2hyb25vdXNseVxuICAgIC8vICAgIGV4ZWN1dGVzIHdoZW4gYHNyY2AgaXMgc2V0LlxuICAgIHNjcmlwdC5vbmxvYWQgPSByZXNvbHZlXG4gICAgc2NyaXB0Lm9uZXJyb3IgPSAoKSA9PlxuICAgICAgcmVqZWN0KG1hcmtBc3NldEVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgc2NyaXB0OiAke3NyY31gKSkpXG5cbiAgICAvLyAyLiBDb25maWd1cmUgdGhlIGNyb3NzLW9yaWdpbiBhdHRyaWJ1dGUgYmVmb3JlIHNldHRpbmcgYHNyY2AgaW4gY2FzZSB0aGVcbiAgICAvLyAgICBicm93c2VyIGJlZ2lucyB0byBmZXRjaC5cbiAgICBzY3JpcHQuY3Jvc3NPcmlnaW4gPSBwcm9jZXNzLmVudi5fX05FWFRfQ1JPU1NfT1JJR0lOIVxuXG4gICAgLy8gMy4gRmluYWxseSwgc2V0IHRoZSBzb3VyY2UgYW5kIGluamVjdCBpbnRvIHRoZSBET00gaW4gY2FzZSB0aGUgY2hpbGRcbiAgICAvLyAgICBtdXN0IGJlIGFwcGVuZGVkIGZvciBmZXRjaGluZyB0byBzdGFydC5cbiAgICBzY3JpcHQuc3JjID0gc3JjXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHQpXG4gIH0pXG59XG5cbmZ1bmN0aW9uIGlkbGVUaW1lb3V0PFQ+KG1zOiBudW1iZXIsIGVycjogRXJyb3IpOiBQcm9taXNlPFQ+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChfcmVzb2x2ZSwgcmVqZWN0KSA9PlxuICAgIHJlcXVlc3RJZGxlQ2FsbGJhY2soKCkgPT4gc2V0VGltZW91dCgoKSA9PiByZWplY3QoZXJyKSwgbXMpKVxuICApXG59XG5cbi8vIFRPRE86IHN0b3AgZXhwb3J0aW5nIG9yIGNhY2hlIHRoZSBmYWlsdXJlXG4vLyBJdCdkIGJlIGJlc3QgdG8gc3RvcCBleHBvcnRpbmcgdGhpcy4gSXQncyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwuIFdlJ3JlXG4vLyBvbmx5IGV4cG9ydGluZyBpdCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWx0eSB3aXRoIHRoZSBgcGFnZS1sb2FkZXJgLlxuLy8gT25seSBjYWNoZSB0aGlzIHJlc3BvbnNlIGFzIGEgbGFzdCByZXNvcnQgaWYgd2UgY2Fubm90IGVsaW1pbmF0ZSBhbGwgb3RoZXJcbi8vIGNvZGUgYnJhbmNoZXMgdGhhdCB1c2UgdGhlIEJ1aWxkIE1hbmlmZXN0IENhbGxiYWNrIGFuZCBwdXNoIHRoZW0gdGhyb3VnaFxuLy8gdGhlIFJvdXRlIExvYWRlciBpbnRlcmZhY2UuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCgpOiBQcm9taXNlPENsaWVudEJ1aWxkTWFuaWZlc3Q+IHtcbiAgaWYgKHNlbGYuX19CVUlMRF9NQU5JRkVTVCkge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoc2VsZi5fX0JVSUxEX01BTklGRVNUKVxuICB9XG5cbiAgY29uc3Qgb25CdWlsZE1hbmlmZXN0OiBQcm9taXNlPENsaWVudEJ1aWxkTWFuaWZlc3Q+ID0gbmV3IFByb21pc2U8XG4gICAgQ2xpZW50QnVpbGRNYW5pZmVzdFxuICA+KChyZXNvbHZlKSA9PiB7XG4gICAgLy8gTWFuZGF0b3J5IGJlY2F1c2UgdGhpcyBpcyBub3QgY29uY3VycmVudCBzYWZlOlxuICAgIGNvbnN0IGNiID0gc2VsZi5fX0JVSUxEX01BTklGRVNUX0NCXG4gICAgc2VsZi5fX0JVSUxEX01BTklGRVNUX0NCID0gKCkgPT4ge1xuICAgICAgcmVzb2x2ZShzZWxmLl9fQlVJTERfTUFOSUZFU1QpXG4gICAgICBjYiAmJiBjYigpXG4gICAgfVxuICB9KVxuICByZXR1cm4gUHJvbWlzZS5yYWNlKFtcbiAgICBvbkJ1aWxkTWFuaWZlc3QsXG4gICAgaWRsZVRpbWVvdXQ8Q2xpZW50QnVpbGRNYW5pZmVzdD4oXG4gICAgICBNU19NQVhfSURMRV9ERUxBWSxcbiAgICAgIG1hcmtBc3NldEVycm9yKG5ldyBFcnJvcignRmFpbGVkIHRvIGxvYWQgY2xpZW50IGJ1aWxkIG1hbmlmZXN0JykpXG4gICAgKSxcbiAgXSlcbn1cblxuaW50ZXJmYWNlIFJvdXRlRmlsZXMge1xuICBzY3JpcHRzOiBzdHJpbmdbXVxuICBjc3M6IHN0cmluZ1tdXG59XG5mdW5jdGlvbiBnZXRGaWxlc0ZvclJvdXRlKFxuICBhc3NldFByZWZpeDogc3RyaW5nLFxuICByb3V0ZTogc3RyaW5nXG4pOiBQcm9taXNlPFJvdXRlRmlsZXM+IHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICBzY3JpcHRzOiBbXG4gICAgICAgIGFzc2V0UHJlZml4ICtcbiAgICAgICAgICAnL19uZXh0L3N0YXRpYy9jaHVua3MvcGFnZXMnICtcbiAgICAgICAgICBlbmNvZGVVUkkoZ2V0QXNzZXRQYXRoRnJvbVJvdXRlKHJvdXRlLCAnLmpzJykpLFxuICAgICAgXSxcbiAgICAgIC8vIFN0eWxlcyBhcmUgaGFuZGxlZCBieSBgc3R5bGUtbG9hZGVyYCBpbiBkZXZlbG9wbWVudDpcbiAgICAgIGNzczogW10sXG4gICAgfSlcbiAgfVxuICByZXR1cm4gZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCgpLnRoZW4oKG1hbmlmZXN0KSA9PiB7XG4gICAgaWYgKCEocm91dGUgaW4gbWFuaWZlc3QpKSB7XG4gICAgICB0aHJvdyBtYXJrQXNzZXRFcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBsb29rdXAgcm91dGU6ICR7cm91dGV9YCkpXG4gICAgfVxuICAgIGNvbnN0IGFsbEZpbGVzID0gbWFuaWZlc3Rbcm91dGVdLm1hcChcbiAgICAgIChlbnRyeSkgPT4gYXNzZXRQcmVmaXggKyAnL19uZXh0LycgKyBlbmNvZGVVUkkoZW50cnkpXG4gICAgKVxuICAgIHJldHVybiB7XG4gICAgICBzY3JpcHRzOiBhbGxGaWxlcy5maWx0ZXIoKHYpID0+IHYuZW5kc1dpdGgoJy5qcycpKSxcbiAgICAgIGNzczogYWxsRmlsZXMuZmlsdGVyKCh2KSA9PiB2LmVuZHNXaXRoKCcuY3NzJykpLFxuICAgIH1cbiAgfSlcbn1cblxuZnVuY3Rpb24gY3JlYXRlUm91dGVMb2FkZXIoYXNzZXRQcmVmaXg6IHN0cmluZyk6IFJvdXRlTG9hZGVyIHtcbiAgY29uc3QgZW50cnlwb2ludHM6IE1hcDxcbiAgICBzdHJpbmcsXG4gICAgRnV0dXJlPFJvdXRlRW50cnlwb2ludD4gfCBSb3V0ZUVudHJ5cG9pbnRcbiAgPiA9IG5ldyBNYXAoKVxuICBjb25zdCBsb2FkZWRTY3JpcHRzOiBNYXA8c3RyaW5nLCBQcm9taXNlPHVua25vd24+PiA9IG5ldyBNYXAoKVxuICBjb25zdCBzdHlsZVNoZWV0czogTWFwPHN0cmluZywgUHJvbWlzZTxSb3V0ZVN0eWxlU2hlZXQ+PiA9IG5ldyBNYXAoKVxuICBjb25zdCByb3V0ZXM6IE1hcDxcbiAgICBzdHJpbmcsXG4gICAgRnV0dXJlPFJvdXRlTG9hZGVyRW50cnk+IHwgUm91dGVMb2FkZXJFbnRyeVxuICA+ID0gbmV3IE1hcCgpXG5cbiAgZnVuY3Rpb24gbWF5YmVFeGVjdXRlU2NyaXB0KHNyYzogc3RyaW5nKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgbGV0IHByb206IFByb21pc2U8dW5rbm93bj4gfCB1bmRlZmluZWQgPSBsb2FkZWRTY3JpcHRzLmdldChzcmMpXG4gICAgaWYgKHByb20pIHtcbiAgICAgIHJldHVybiBwcm9tXG4gICAgfVxuXG4gICAgLy8gU2tpcCBleGVjdXRpbmcgc2NyaXB0IGlmIGl0J3MgYWxyZWFkeSBpbiB0aGUgRE9NOlxuICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBzY3JpcHRbc3JjXj1cIiR7c3JjfVwiXWApKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgICB9XG5cbiAgICBsb2FkZWRTY3JpcHRzLnNldChzcmMsIChwcm9tID0gYXBwZW5kU2NyaXB0KHNyYykpKVxuICAgIHJldHVybiBwcm9tXG4gIH1cblxuICBmdW5jdGlvbiBmZXRjaFN0eWxlU2hlZXQoaHJlZjogc3RyaW5nKTogUHJvbWlzZTxSb3V0ZVN0eWxlU2hlZXQ+IHtcbiAgICBsZXQgcHJvbTogUHJvbWlzZTxSb3V0ZVN0eWxlU2hlZXQ+IHwgdW5kZWZpbmVkID0gc3R5bGVTaGVldHMuZ2V0KGhyZWYpXG4gICAgaWYgKHByb20pIHtcbiAgICAgIHJldHVybiBwcm9tXG4gICAgfVxuXG4gICAgc3R5bGVTaGVldHMuc2V0KFxuICAgICAgaHJlZixcbiAgICAgIChwcm9tID0gZmV0Y2goaHJlZilcbiAgICAgICAgLnRoZW4oKHJlcykgPT4ge1xuICAgICAgICAgIGlmICghcmVzLm9rKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIHN0eWxlc2hlZXQ6ICR7aHJlZn1gKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzLnRleHQoKS50aGVuKCh0ZXh0KSA9PiAoeyBocmVmOiBocmVmLCBjb250ZW50OiB0ZXh0IH0pKVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycikgPT4ge1xuICAgICAgICAgIHRocm93IG1hcmtBc3NldEVycm9yKGVycilcbiAgICAgICAgfSkpXG4gICAgKVxuICAgIHJldHVybiBwcm9tXG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdoZW5FbnRyeXBvaW50KHJvdXRlOiBzdHJpbmcpIHtcbiAgICAgIHJldHVybiB3aXRoRnV0dXJlKHJvdXRlLCBlbnRyeXBvaW50cylcbiAgICB9LFxuICAgIG9uRW50cnlwb2ludChyb3V0ZTogc3RyaW5nLCBleGVjdXRlOiAoKSA9PiB1bmtub3duKSB7XG4gICAgICBQcm9taXNlLnJlc29sdmUoZXhlY3V0ZSlcbiAgICAgICAgLnRoZW4oKGZuKSA9PiBmbigpKVxuICAgICAgICAudGhlbihcbiAgICAgICAgICAoZXhwb3J0czogYW55KSA9PiAoe1xuICAgICAgICAgICAgY29tcG9uZW50OiAoZXhwb3J0cyAmJiBleHBvcnRzLmRlZmF1bHQpIHx8IGV4cG9ydHMsXG4gICAgICAgICAgICBleHBvcnRzOiBleHBvcnRzLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIChlcnIpID0+ICh7IGVycm9yOiBlcnIgfSlcbiAgICAgICAgKVxuICAgICAgICAudGhlbigoaW5wdXQ6IFJvdXRlRW50cnlwb2ludCkgPT4ge1xuICAgICAgICAgIGNvbnN0IG9sZCA9IGVudHJ5cG9pbnRzLmdldChyb3V0ZSlcbiAgICAgICAgICBlbnRyeXBvaW50cy5zZXQocm91dGUsIGlucHV0KVxuICAgICAgICAgIGlmIChvbGQgJiYgJ3Jlc29sdmUnIGluIG9sZCkgb2xkLnJlc29sdmUoaW5wdXQpXG4gICAgICAgIH0pXG4gICAgfSxcbiAgICBsb2FkUm91dGUocm91dGU6IHN0cmluZykge1xuICAgICAgcmV0dXJuIHdpdGhGdXR1cmU8Um91dGVMb2FkZXJFbnRyeT4ocm91dGUsIHJvdXRlcywgYXN5bmMgKCkgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IHsgc2NyaXB0cywgY3NzIH0gPSBhd2FpdCBnZXRGaWxlc0ZvclJvdXRlKGFzc2V0UHJlZml4LCByb3V0ZSlcbiAgICAgICAgICBjb25zdCBbLCBzdHlsZXNdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgZW50cnlwb2ludHMuaGFzKHJvdXRlKVxuICAgICAgICAgICAgICA/IFtdXG4gICAgICAgICAgICAgIDogUHJvbWlzZS5hbGwoc2NyaXB0cy5tYXAobWF5YmVFeGVjdXRlU2NyaXB0KSksXG4gICAgICAgICAgICBQcm9taXNlLmFsbChjc3MubWFwKGZldGNoU3R5bGVTaGVldCkpLFxuICAgICAgICAgIF0gYXMgY29uc3QpXG5cbiAgICAgICAgICBjb25zdCBlbnRyeXBvaW50OiBSb3V0ZUVudHJ5cG9pbnQgPSBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgICAgICAgICAgdGhpcy53aGVuRW50cnlwb2ludChyb3V0ZSksXG4gICAgICAgICAgICBpZGxlVGltZW91dDxSb3V0ZUxvYWRlckVudHJ5PihcbiAgICAgICAgICAgICAgTVNfTUFYX0lETEVfREVMQVksXG4gICAgICAgICAgICAgIG1hcmtBc3NldEVycm9yKFxuICAgICAgICAgICAgICAgIG5ldyBFcnJvcihgUm91dGUgZGlkIG5vdCBjb21wbGV0ZSBsb2FkaW5nOiAke3JvdXRlfWApXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICksXG4gICAgICAgICAgXSlcbiAgICAgICAgICBjb25zdCByZXM6IFJvdXRlTG9hZGVyRW50cnkgPSBPYmplY3QuYXNzaWduPFxuICAgICAgICAgICAgeyBzdHlsZXM6IFJvdXRlU3R5bGVTaGVldFtdIH0sXG4gICAgICAgICAgICBSb3V0ZUVudHJ5cG9pbnRcbiAgICAgICAgICA+KHsgc3R5bGVzIH0sIGVudHJ5cG9pbnQpXG4gICAgICAgICAgcmV0dXJuICdlcnJvcicgaW4gZW50cnlwb2ludCA/IGVudHJ5cG9pbnQgOiByZXNcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgcmV0dXJuIHsgZXJyb3I6IGVyciB9XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSxcbiAgICBwcmVmZXRjaChyb3V0ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vR29vZ2xlQ2hyb21lTGFicy9xdWlja2xpbmsvYmxvYi80NTNhNjYxZmExZmE5NDBlMmQyZTA0NDQ1MjM5OGUzOGM2N2E5OGZiL3NyYy9pbmRleC5tanMjTDExNS1MMTE4XG4gICAgICAvLyBMaWNlbnNlOiBBcGFjaGUgMi4wXG4gICAgICBsZXQgY25cbiAgICAgIGlmICgoY24gPSAobmF2aWdhdG9yIGFzIGFueSkuY29ubmVjdGlvbikpIHtcbiAgICAgICAgLy8gRG9uJ3QgcHJlZmV0Y2ggaWYgdXNpbmcgMkcgb3IgaWYgU2F2ZS1EYXRhIGlzIGVuYWJsZWQuXG4gICAgICAgIGlmIChjbi5zYXZlRGF0YSB8fCAvMmcvLnRlc3QoY24uZWZmZWN0aXZlVHlwZSkpIHJldHVybiBQcm9taXNlLnJlc29sdmUoKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGdldEZpbGVzRm9yUm91dGUoYXNzZXRQcmVmaXgsIHJvdXRlKVxuICAgICAgICAudGhlbigob3V0cHV0KSA9PlxuICAgICAgICAgIFByb21pc2UuYWxsKFxuICAgICAgICAgICAgY2FuUHJlZmV0Y2hcbiAgICAgICAgICAgICAgPyBvdXRwdXQuc2NyaXB0cy5tYXAoKHNjcmlwdCkgPT4gcHJlZmV0Y2hWaWFEb20oc2NyaXB0LCAnc2NyaXB0JykpXG4gICAgICAgICAgICAgIDogW11cbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHJlcXVlc3RJZGxlQ2FsbGJhY2soKCkgPT4gdGhpcy5sb2FkUm91dGUocm91dGUpKVxuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goXG4gICAgICAgICAgLy8gc3dhbGxvdyBwcmVmZXRjaCBlcnJvcnNcbiAgICAgICAgICAoKSA9PiB7fVxuICAgICAgICApXG4gICAgfSxcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBjcmVhdGVSb3V0ZUxvYWRlclxuIiwiLyogZ2xvYmFsIHdpbmRvdyAqL1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFJvdXRlciwgeyBOZXh0Um91dGVyIH0gZnJvbSAnLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci9yb3V0ZXInXG5pbXBvcnQgeyBSb3V0ZXJDb250ZXh0IH0gZnJvbSAnLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci1jb250ZXh0J1xuXG50eXBlIENsYXNzQXJndW1lbnRzPFQ+ID0gVCBleHRlbmRzIG5ldyAoLi4uYXJnczogaW5mZXIgVSkgPT4gYW55ID8gVSA6IGFueVxuXG50eXBlIFJvdXRlckFyZ3MgPSBDbGFzc0FyZ3VtZW50czx0eXBlb2YgUm91dGVyPlxuXG50eXBlIFNpbmdsZXRvblJvdXRlckJhc2UgPSB7XG4gIHJvdXRlcjogUm91dGVyIHwgbnVsbFxuICByZWFkeUNhbGxiYWNrczogQXJyYXk8KCkgPT4gYW55PlxuICByZWFkeShjYjogKCkgPT4gYW55KTogdm9pZFxufVxuXG5leHBvcnQgeyBSb3V0ZXIsIE5leHRSb3V0ZXIgfVxuXG5leHBvcnQgdHlwZSBTaW5nbGV0b25Sb3V0ZXIgPSBTaW5nbGV0b25Sb3V0ZXJCYXNlICYgTmV4dFJvdXRlclxuXG5jb25zdCBzaW5nbGV0b25Sb3V0ZXI6IFNpbmdsZXRvblJvdXRlckJhc2UgPSB7XG4gIHJvdXRlcjogbnVsbCwgLy8gaG9sZHMgdGhlIGFjdHVhbCByb3V0ZXIgaW5zdGFuY2VcbiAgcmVhZHlDYWxsYmFja3M6IFtdLFxuICByZWFkeShjYjogKCkgPT4gdm9pZCkge1xuICAgIGlmICh0aGlzLnJvdXRlcikgcmV0dXJuIGNiKClcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMucmVhZHlDYWxsYmFja3MucHVzaChjYilcbiAgICB9XG4gIH0sXG59XG5cbi8vIENyZWF0ZSBwdWJsaWMgcHJvcGVydGllcyBhbmQgbWV0aG9kcyBvZiB0aGUgcm91dGVyIGluIHRoZSBzaW5nbGV0b25Sb3V0ZXJcbmNvbnN0IHVybFByb3BlcnR5RmllbGRzID0gW1xuICAncGF0aG5hbWUnLFxuICAncm91dGUnLFxuICAncXVlcnknLFxuICAnYXNQYXRoJyxcbiAgJ2NvbXBvbmVudHMnLFxuICAnaXNGYWxsYmFjaycsXG4gICdiYXNlUGF0aCcsXG4gICdsb2NhbGUnLFxuICAnbG9jYWxlcycsXG4gICdkZWZhdWx0TG9jYWxlJyxcbiAgJ2lzUmVhZHknLFxuICAnaXNQcmV2aWV3JyxcbiAgJ2lzTG9jYWxlRG9tYWluJyxcbl1cbmNvbnN0IHJvdXRlckV2ZW50cyA9IFtcbiAgJ3JvdXRlQ2hhbmdlU3RhcnQnLFxuICAnYmVmb3JlSGlzdG9yeUNoYW5nZScsXG4gICdyb3V0ZUNoYW5nZUNvbXBsZXRlJyxcbiAgJ3JvdXRlQ2hhbmdlRXJyb3InLFxuICAnaGFzaENoYW5nZVN0YXJ0JyxcbiAgJ2hhc2hDaGFuZ2VDb21wbGV0ZScsXG5dXG5jb25zdCBjb3JlTWV0aG9kRmllbGRzID0gW1xuICAncHVzaCcsXG4gICdyZXBsYWNlJyxcbiAgJ3JlbG9hZCcsXG4gICdiYWNrJyxcbiAgJ3ByZWZldGNoJyxcbiAgJ2JlZm9yZVBvcFN0YXRlJyxcbl1cblxuLy8gRXZlbnRzIGlzIGEgc3RhdGljIHByb3BlcnR5IG9uIHRoZSByb3V0ZXIsIHRoZSByb3V0ZXIgZG9lc24ndCBoYXZlIHRvIGJlIGluaXRpYWxpemVkIHRvIHVzZSBpdFxuT2JqZWN0LmRlZmluZVByb3BlcnR5KHNpbmdsZXRvblJvdXRlciwgJ2V2ZW50cycsIHtcbiAgZ2V0KCkge1xuICAgIHJldHVybiBSb3V0ZXIuZXZlbnRzXG4gIH0sXG59KVxuXG51cmxQcm9wZXJ0eUZpZWxkcy5mb3JFYWNoKChmaWVsZDogc3RyaW5nKSA9PiB7XG4gIC8vIEhlcmUgd2UgbmVlZCB0byB1c2UgT2JqZWN0LmRlZmluZVByb3BlcnR5IGJlY2F1c2UsIHdlIG5lZWQgdG8gcmV0dXJuXG4gIC8vIHRoZSBwcm9wZXJ0eSBhc3NpZ25lZCB0byB0aGUgYWN0dWFsIHJvdXRlclxuICAvLyBUaGUgdmFsdWUgbWlnaHQgZ2V0IGNoYW5nZWQgYXMgd2UgY2hhbmdlIHJvdXRlcyBhbmQgdGhpcyBpcyB0aGVcbiAgLy8gcHJvcGVyIHdheSB0byBhY2Nlc3MgaXRcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNpbmdsZXRvblJvdXRlciwgZmllbGQsIHtcbiAgICBnZXQoKSB7XG4gICAgICBjb25zdCByb3V0ZXIgPSBnZXRSb3V0ZXIoKSBhcyBhbnlcbiAgICAgIHJldHVybiByb3V0ZXJbZmllbGRdIGFzIHN0cmluZ1xuICAgIH0sXG4gIH0pXG59KVxuXG5jb3JlTWV0aG9kRmllbGRzLmZvckVhY2goKGZpZWxkOiBzdHJpbmcpID0+IHtcbiAgLy8gV2UgZG9uJ3QgcmVhbGx5IGtub3cgdGhlIHR5cGVzIGhlcmUsIHNvIHdlIGFkZCB0aGVtIGxhdGVyIGluc3RlYWRcbiAgOyhzaW5nbGV0b25Sb3V0ZXIgYXMgYW55KVtmaWVsZF0gPSAoLi4uYXJnczogYW55W10pID0+IHtcbiAgICBjb25zdCByb3V0ZXIgPSBnZXRSb3V0ZXIoKSBhcyBhbnlcbiAgICByZXR1cm4gcm91dGVyW2ZpZWxkXSguLi5hcmdzKVxuICB9XG59KVxuXG5yb3V0ZXJFdmVudHMuZm9yRWFjaCgoZXZlbnQ6IHN0cmluZykgPT4ge1xuICBzaW5nbGV0b25Sb3V0ZXIucmVhZHkoKCkgPT4ge1xuICAgIFJvdXRlci5ldmVudHMub24oZXZlbnQsICguLi5hcmdzKSA9PiB7XG4gICAgICBjb25zdCBldmVudEZpZWxkID0gYG9uJHtldmVudC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKX0ke2V2ZW50LnN1YnN0cmluZyhcbiAgICAgICAgMVxuICAgICAgKX1gXG4gICAgICBjb25zdCBfc2luZ2xldG9uUm91dGVyID0gc2luZ2xldG9uUm91dGVyIGFzIGFueVxuICAgICAgaWYgKF9zaW5nbGV0b25Sb3V0ZXJbZXZlbnRGaWVsZF0pIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBfc2luZ2xldG9uUm91dGVyW2V2ZW50RmllbGRdKC4uLmFyZ3MpXG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIHdoZW4gcnVubmluZyB0aGUgUm91dGVyIGV2ZW50OiAke2V2ZW50RmllbGR9YClcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGAke2Vyci5tZXNzYWdlfVxcbiR7ZXJyLnN0YWNrfWApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuICB9KVxufSlcblxuZnVuY3Rpb24gZ2V0Um91dGVyKCk6IFJvdXRlciB7XG4gIGlmICghc2luZ2xldG9uUm91dGVyLnJvdXRlcikge1xuICAgIGNvbnN0IG1lc3NhZ2UgPVxuICAgICAgJ05vIHJvdXRlciBpbnN0YW5jZSBmb3VuZC5cXG4nICtcbiAgICAgICdZb3Ugc2hvdWxkIG9ubHkgdXNlIFwibmV4dC9yb3V0ZXJcIiBpbnNpZGUgdGhlIGNsaWVudCBzaWRlIG9mIHlvdXIgYXBwLlxcbidcbiAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSlcbiAgfVxuICByZXR1cm4gc2luZ2xldG9uUm91dGVyLnJvdXRlclxufVxuXG4vLyBFeHBvcnQgdGhlIHNpbmdsZXRvblJvdXRlciBhbmQgdGhpcyBpcyB0aGUgcHVibGljIEFQSS5cbmV4cG9ydCBkZWZhdWx0IHNpbmdsZXRvblJvdXRlciBhcyBTaW5nbGV0b25Sb3V0ZXJcblxuLy8gUmVleHBvcnQgdGhlIHdpdGhSb3V0ZSBIT0NcbmV4cG9ydCB7IGRlZmF1bHQgYXMgd2l0aFJvdXRlciB9IGZyb20gJy4vd2l0aC1yb3V0ZXInXG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VSb3V0ZXIoKTogTmV4dFJvdXRlciB7XG4gIHJldHVybiBSZWFjdC51c2VDb250ZXh0KFJvdXRlckNvbnRleHQpXG59XG5cbi8vIElOVEVSTkFMIEFQSVNcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIChkbyBub3QgdXNlIGZvbGxvd2luZyBleHBvcnRzIGluc2lkZSB0aGUgYXBwKVxuXG4vLyBDcmVhdGUgYSByb3V0ZXIgYW5kIGFzc2lnbiBpdCBhcyB0aGUgc2luZ2xldG9uIGluc3RhbmNlLlxuLy8gVGhpcyBpcyB1c2VkIGluIGNsaWVudCBzaWRlIHdoZW4gd2UgYXJlIGluaXRpbGl6aW5nIHRoZSBhcHAuXG4vLyBUaGlzIHNob3VsZCAqKm5vdCoqIHVzZSBpbnNpZGUgdGhlIHNlcnZlci5cbmV4cG9ydCBjb25zdCBjcmVhdGVSb3V0ZXIgPSAoLi4uYXJnczogUm91dGVyQXJncyk6IFJvdXRlciA9PiB7XG4gIHNpbmdsZXRvblJvdXRlci5yb3V0ZXIgPSBuZXcgUm91dGVyKC4uLmFyZ3MpXG4gIHNpbmdsZXRvblJvdXRlci5yZWFkeUNhbGxiYWNrcy5mb3JFYWNoKChjYikgPT4gY2IoKSlcbiAgc2luZ2xldG9uUm91dGVyLnJlYWR5Q2FsbGJhY2tzID0gW11cblxuICByZXR1cm4gc2luZ2xldG9uUm91dGVyLnJvdXRlclxufVxuXG4vLyBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY3JlYXRlIHRoZSBgd2l0aFJvdXRlcmAgcm91dGVyIGluc3RhbmNlXG5leHBvcnQgZnVuY3Rpb24gbWFrZVB1YmxpY1JvdXRlckluc3RhbmNlKHJvdXRlcjogUm91dGVyKTogTmV4dFJvdXRlciB7XG4gIGNvbnN0IF9yb3V0ZXIgPSByb3V0ZXIgYXMgYW55XG4gIGNvbnN0IGluc3RhbmNlID0ge30gYXMgYW55XG5cbiAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiB1cmxQcm9wZXJ0eUZpZWxkcykge1xuICAgIGlmICh0eXBlb2YgX3JvdXRlcltwcm9wZXJ0eV0gPT09ICdvYmplY3QnKSB7XG4gICAgICBpbnN0YW5jZVtwcm9wZXJ0eV0gPSBPYmplY3QuYXNzaWduKFxuICAgICAgICBBcnJheS5pc0FycmF5KF9yb3V0ZXJbcHJvcGVydHldKSA/IFtdIDoge30sXG4gICAgICAgIF9yb3V0ZXJbcHJvcGVydHldXG4gICAgICApIC8vIG1ha2VzIHN1cmUgcXVlcnkgaXMgbm90IHN0YXRlZnVsXG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGluc3RhbmNlW3Byb3BlcnR5XSA9IF9yb3V0ZXJbcHJvcGVydHldXG4gIH1cblxuICAvLyBFdmVudHMgaXMgYSBzdGF0aWMgcHJvcGVydHkgb24gdGhlIHJvdXRlciwgdGhlIHJvdXRlciBkb2Vzbid0IGhhdmUgdG8gYmUgaW5pdGlhbGl6ZWQgdG8gdXNlIGl0XG4gIGluc3RhbmNlLmV2ZW50cyA9IFJvdXRlci5ldmVudHNcblxuICBjb3JlTWV0aG9kRmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgaW5zdGFuY2VbZmllbGRdID0gKC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gICAgICByZXR1cm4gX3JvdXRlcltmaWVsZF0oLi4uYXJncylcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIGluc3RhbmNlXG59XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBOZXh0Q29tcG9uZW50VHlwZSwgTmV4dFBhZ2VDb250ZXh0IH0gZnJvbSAnLi4vbmV4dC1zZXJ2ZXIvbGliL3V0aWxzJ1xuaW1wb3J0IHsgTmV4dFJvdXRlciwgdXNlUm91dGVyIH0gZnJvbSAnLi9yb3V0ZXInXG5cbmV4cG9ydCB0eXBlIFdpdGhSb3V0ZXJQcm9wcyA9IHtcbiAgcm91dGVyOiBOZXh0Um91dGVyXG59XG5cbmV4cG9ydCB0eXBlIEV4Y2x1ZGVSb3V0ZXJQcm9wczxQPiA9IFBpY2s8XG4gIFAsXG4gIEV4Y2x1ZGU8a2V5b2YgUCwga2V5b2YgV2l0aFJvdXRlclByb3BzPlxuPlxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoUm91dGVyPFxuICBQIGV4dGVuZHMgV2l0aFJvdXRlclByb3BzLFxuICBDID0gTmV4dFBhZ2VDb250ZXh0XG4+KFxuICBDb21wb3NlZENvbXBvbmVudDogTmV4dENvbXBvbmVudFR5cGU8QywgYW55LCBQPlxuKTogUmVhY3QuQ29tcG9uZW50VHlwZTxFeGNsdWRlUm91dGVyUHJvcHM8UD4+IHtcbiAgZnVuY3Rpb24gV2l0aFJvdXRlcldyYXBwZXIocHJvcHM6IGFueSk6IEpTWC5FbGVtZW50IHtcbiAgICByZXR1cm4gPENvbXBvc2VkQ29tcG9uZW50IHJvdXRlcj17dXNlUm91dGVyKCl9IHsuLi5wcm9wc30gLz5cbiAgfVxuXG4gIFdpdGhSb3V0ZXJXcmFwcGVyLmdldEluaXRpYWxQcm9wcyA9IENvbXBvc2VkQ29tcG9uZW50LmdldEluaXRpYWxQcm9wc1xuICAvLyBUaGlzIGlzIG5lZWRlZCB0byBhbGxvdyBjaGVja2luZyBmb3IgY3VzdG9tIGdldEluaXRpYWxQcm9wcyBpbiBfYXBwXG4gIDsoV2l0aFJvdXRlcldyYXBwZXIgYXMgYW55KS5vcmlnR2V0SW5pdGlhbFByb3BzID0gKENvbXBvc2VkQ29tcG9uZW50IGFzIGFueSkub3JpZ0dldEluaXRpYWxQcm9wc1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGNvbnN0IG5hbWUgPVxuICAgICAgQ29tcG9zZWRDb21wb25lbnQuZGlzcGxheU5hbWUgfHwgQ29tcG9zZWRDb21wb25lbnQubmFtZSB8fCAnVW5rbm93bidcbiAgICBXaXRoUm91dGVyV3JhcHBlci5kaXNwbGF5TmFtZSA9IGB3aXRoUm91dGVyKCR7bmFtZX0pYFxuICB9XG5cbiAgcmV0dXJuIFdpdGhSb3V0ZXJXcmFwcGVyXG59XG4iLCJtb2R1bGUuZXhwb3J0cz1mdW5jdGlvbigpe1widXNlIHN0cmljdFwiO3ZhciBuPXs3NjI6ZnVuY3Rpb24obil7bi5leHBvcnRzPWZ1bmN0aW9uKG4pe3ZhciB0PVtdO3QudG9TdHJpbmc9ZnVuY3Rpb24gdG9TdHJpbmcoKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24odCl7dmFyIHI9Y3NzV2l0aE1hcHBpbmdUb1N0cmluZyh0LG4pO2lmKHRbMl0pe3JldHVyblwiQG1lZGlhIFwiLmNvbmNhdCh0WzJdLFwiIHtcIikuY29uY2F0KHIsXCJ9XCIpfXJldHVybiByfSkuam9pbihcIlwiKX07dC5pPWZ1bmN0aW9uKG4scixvKXtpZih0eXBlb2Ygbj09PVwic3RyaW5nXCIpe249W1tudWxsLG4sXCJcIl1dfXZhciBlPXt9O2lmKG8pe2Zvcih2YXIgYT0wO2E8dGhpcy5sZW5ndGg7YSsrKXt2YXIgYz10aGlzW2FdWzBdO2lmKGMhPW51bGwpe2VbY109dHJ1ZX19fWZvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKXt2YXIgdT1bXS5jb25jYXQobltpXSk7aWYobyYmZVt1WzBdXSl7Y29udGludWV9aWYocil7aWYoIXVbMl0pe3VbMl09cn1lbHNle3VbMl09XCJcIi5jb25jYXQocixcIiBhbmQgXCIpLmNvbmNhdCh1WzJdKX19dC5wdXNoKHUpfX07cmV0dXJuIHR9O2Z1bmN0aW9uIGNzc1dpdGhNYXBwaW5nVG9TdHJpbmcobix0KXt2YXIgcj1uWzFdfHxcIlwiO3ZhciBvPW5bM107aWYoIW8pe3JldHVybiByfWlmKHQmJnR5cGVvZiBidG9hPT09XCJmdW5jdGlvblwiKXt2YXIgZT10b0NvbW1lbnQobyk7dmFyIGE9by5zb3VyY2VzLm1hcChmdW5jdGlvbihuKXtyZXR1cm5cIi8qIyBzb3VyY2VVUkw9XCIuY29uY2F0KG8uc291cmNlUm9vdHx8XCJcIikuY29uY2F0KG4sXCIgKi9cIil9KTtyZXR1cm5bcl0uY29uY2F0KGEpLmNvbmNhdChbZV0pLmpvaW4oXCJcXG5cIil9cmV0dXJuW3JdLmpvaW4oXCJcXG5cIil9ZnVuY3Rpb24gdG9Db21tZW50KG4pe3ZhciB0PWJ0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KG4pKSkpO3ZhciByPVwic291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsXCIuY29uY2F0KHQpO3JldHVyblwiLyojIFwiLmNvbmNhdChyLFwiICovXCIpfX19O3ZhciB0PXt9O2Z1bmN0aW9uIF9fbmNjd3Bja19yZXF1aXJlX18ocil7aWYodFtyXSl7cmV0dXJuIHRbcl0uZXhwb3J0c312YXIgbz10W3JdPXtleHBvcnRzOnt9fTt2YXIgZT10cnVlO3RyeXtuW3JdKG8sby5leHBvcnRzLF9fbmNjd3Bja19yZXF1aXJlX18pO2U9ZmFsc2V9ZmluYWxseXtpZihlKWRlbGV0ZSB0W3JdfXJldHVybiBvLmV4cG9ydHN9X19uY2N3cGNrX3JlcXVpcmVfXy5hYj1fX2Rpcm5hbWUrXCIvXCI7cmV0dXJuIF9fbmNjd3Bja19yZXF1aXJlX18oNzYyKX0oKTsiLCIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi8uLi8uLi9uZXh0L2Rpc3QvY29tcGlsZWQvY3NzLWxvYWRlci9hcGkuanNcIjtcbnZhciBfX19DU1NfTE9BREVSX0VYUE9SVF9fXyA9IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyh0cnVlKTtcbi8vIE1vZHVsZVxuX19fQ1NTX0xPQURFUl9FWFBPUlRfX18ucHVzaChbbW9kdWxlLmlkLCBcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuLyohXFxuICogQm9vdHN0cmFwIHY1LjAuMC1iZXRhMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxcbiAqL1xcbjpyb290IHtcXG4gIC0tYnMtYmx1ZTogIzBkNmVmZDtcXG4gIC0tYnMtaW5kaWdvOiAjNjYxMGYyO1xcbiAgLS1icy1wdXJwbGU6ICM2ZjQyYzE7XFxuICAtLWJzLXBpbms6ICNkNjMzODQ7XFxuICAtLWJzLXJlZDogI2RjMzU0NTtcXG4gIC0tYnMtb3JhbmdlOiAjZmQ3ZTE0O1xcbiAgLS1icy15ZWxsb3c6ICNmZmMxMDc7XFxuICAtLWJzLWdyZWVuOiAjMTk4NzU0O1xcbiAgLS1icy10ZWFsOiAjMjBjOTk3O1xcbiAgLS1icy1jeWFuOiAjMGRjYWYwO1xcbiAgLS1icy13aGl0ZTogI2ZmZjtcXG4gIC0tYnMtZ3JheTogIzZjNzU3ZDtcXG4gIC0tYnMtZ3JheS1kYXJrOiAjMzQzYTQwO1xcbiAgLS1icy1wcmltYXJ5OiAjMGQ2ZWZkO1xcbiAgLS1icy1zZWNvbmRhcnk6ICM2Yzc1N2Q7XFxuICAtLWJzLXN1Y2Nlc3M6ICMxOTg3NTQ7XFxuICAtLWJzLWluZm86ICMwZGNhZjA7XFxuICAtLWJzLXdhcm5pbmc6ICNmZmMxMDc7XFxuICAtLWJzLWRhbmdlcjogI2RjMzU0NTtcXG4gIC0tYnMtbGlnaHQ6ICNmOGY5ZmE7XFxuICAtLWJzLWRhcms6ICMyMTI1Mjk7XFxuICAtLWJzLWZvbnQtc2Fucy1zZXJpZjogc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIEFyaWFsLCBcXFwiTm90byBTYW5zXFxcIiwgXFxcIkxpYmVyYXRpb24gU2Fuc1xcXCIsIHNhbnMtc2VyaWYsIFxcXCJBcHBsZSBDb2xvciBFbW9qaVxcXCIsIFxcXCJTZWdvZSBVSSBFbW9qaVxcXCIsIFxcXCJTZWdvZSBVSSBTeW1ib2xcXFwiLCBcXFwiTm90byBDb2xvciBFbW9qaVxcXCI7XFxuICAtLWJzLWZvbnQtbW9ub3NwYWNlOiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFxcXCJMaWJlcmF0aW9uIE1vbm9cXFwiLCBcXFwiQ291cmllciBOZXdcXFwiLCBtb25vc3BhY2U7XFxuICAtLWJzLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcXG59XFxuXFxuKixcXG4qOjpiZWZvcmUsXFxuKjo6YWZ0ZXIge1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG59XFxuXFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XFxuICA6cm9vdCB7XFxuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xcbiAgfVxcbn1cXG5cXG5ib2R5IHtcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XFxufVxcblxcblt0YWJpbmRleD1cXFwiLTFcXFwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcXG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuaHIge1xcbiAgbWFyZ2luOiAxcmVtIDA7XFxuICBjb2xvcjogaW5oZXJpdDtcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlcjogMDtcXG4gIG9wYWNpdHk6IDAuMjU7XFxufVxcblxcbmhyOm5vdChbc2l6ZV0pIHtcXG4gIGhlaWdodDogMXB4O1xcbn1cXG5cXG5oNiwgLmg2LCBoNSwgLmg1LCBoNCwgLmg0LCBoMywgLmgzLCBoMiwgLmgyLCBoMSwgLmgxIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBmb250LXdlaWdodDogNTAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuXFxuaDEsIC5oMSB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGgxLCAuaDEge1xcbiAgICBmb250LXNpemU6IDIuNXJlbTtcXG4gIH1cXG59XFxuXFxuaDIsIC5oMiB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zMjVyZW0gKyAwLjl2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGgyLCAuaDIge1xcbiAgICBmb250LXNpemU6IDJyZW07XFxuICB9XFxufVxcblxcbmgzLCAuaDMge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuM3JlbSArIDAuNnZ3KTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgaDMsIC5oMyB7XFxuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcXG4gIH1cXG59XFxuXFxuaDQsIC5oNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGg0LCAuaDQge1xcbiAgICBmb250LXNpemU6IDEuNXJlbTtcXG4gIH1cXG59XFxuXFxuaDUsIC5oNSB7XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcblxcbmg2LCAuaDYge1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbn1cXG5cXG5wIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbn1cXG5cXG5hYmJyW3RpdGxlXSxcXG5hYmJyW2RhdGEtYnMtb3JpZ2luYWwtdGl0bGVdIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xcbiAgY3Vyc29yOiBoZWxwO1xcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xcbn1cXG5cXG5hZGRyZXNzIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcXG59XFxuXFxub2wsXFxudWwge1xcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xcbn1cXG5cXG5vbCxcXG51bCxcXG5kbCB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG59XFxuXFxub2wgb2wsXFxudWwgdWwsXFxub2wgdWwsXFxudWwgb2wge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuZHQge1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuXFxuZGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcblxcbmJsb2NrcXVvdGUge1xcbiAgbWFyZ2luOiAwIDAgMXJlbTtcXG59XFxuXFxuYixcXG5zdHJvbmcge1xcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcXG59XFxuXFxuc21hbGwsIC5zbWFsbCB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxufVxcblxcbm1hcmssIC5tYXJrIHtcXG4gIHBhZGRpbmc6IDAuMmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcXG59XFxuXFxuc3ViLFxcbnN1cCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmb250LXNpemU6IDAuNzVlbTtcXG4gIGxpbmUtaGVpZ2h0OiAwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbn1cXG5cXG5zdWIge1xcbiAgYm90dG9tOiAtMC4yNWVtO1xcbn1cXG5cXG5zdXAge1xcbiAgdG9wOiAtMC41ZW07XFxufVxcblxcbmEge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG59XFxuYTpob3ZlciB7XFxuICBjb2xvcjogIzBhNThjYTtcXG59XFxuXFxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSksIGE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pOmhvdmVyIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbn1cXG5cXG5wcmUsXFxuY29kZSxcXG5rYmQsXFxuc2FtcCB7XFxuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpO1xcbiAgZm9udC1zaXplOiAxZW07XFxuICBkaXJlY3Rpb246IGx0ciAvKiBydGw6aWdub3JlICovO1xcbiAgdW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlO1xcbn1cXG5cXG5wcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIG92ZXJmbG93OiBhdXRvO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbn1cXG5wcmUgY29kZSB7XFxuICBmb250LXNpemU6IGluaGVyaXQ7XFxuICBjb2xvcjogaW5oZXJpdDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG59XFxuXFxuY29kZSB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogI2Q2MzM4NDtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG59XFxuYSA+IGNvZGUge1xcbiAgY29sb3I6IGluaGVyaXQ7XFxufVxcblxcbmtiZCB7XFxuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG5rYmQga2JkIHtcXG4gIHBhZGRpbmc6IDA7XFxuICBmb250LXNpemU6IDFlbTtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxufVxcblxcbmZpZ3VyZSB7XFxuICBtYXJnaW46IDAgMCAxcmVtO1xcbn1cXG5cXG5pbWcsXFxuc3ZnIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxufVxcblxcbnRhYmxlIHtcXG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcXG59XFxuXFxuY2FwdGlvbiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG59XFxuXFxudGgge1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xcbn1cXG5cXG50aGVhZCxcXG50Ym9keSxcXG50Zm9vdCxcXG50cixcXG50ZCxcXG50aCB7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbn1cXG5cXG5sYWJlbCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbmJ1dHRvbiB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG5cXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG5pbnB1dCxcXG5idXR0b24sXFxuc2VsZWN0LFxcbm9wdGdyb3VwLFxcbnRleHRhcmVhIHtcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xcbiAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcblxcbmJ1dHRvbixcXG5zZWxlY3Qge1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxufVxcblxcbltyb2xlPWJ1dHRvbl0ge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG5cXG5zZWxlY3Qge1xcbiAgd29yZC13cmFwOiBub3JtYWw7XFxufVxcblxcbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbmJ1dHRvbixcXG5bdHlwZT1idXR0b25dLFxcblt0eXBlPXJlc2V0XSxcXG5bdHlwZT1zdWJtaXRdIHtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xcbn1cXG5idXR0b246bm90KDpkaXNhYmxlZCksXFxuW3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxcXG5bdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksXFxuW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbjo6LW1vei1mb2N1cy1pbm5lciB7XFxuICBwYWRkaW5nOiAwO1xcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xcbn1cXG5cXG50ZXh0YXJlYSB7XFxuICByZXNpemU6IHZlcnRpY2FsO1xcbn1cXG5cXG5maWVsZHNldCB7XFxuICBtaW4td2lkdGg6IDA7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luOiAwO1xcbiAgYm9yZGVyOiAwO1xcbn1cXG5cXG5sZWdlbmQge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XFxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgbGVnZW5kIHtcXG4gICAgZm9udC1zaXplOiAxLjVyZW07XFxuICB9XFxufVxcbmxlZ2VuZCArICoge1xcbiAgY2xlYXI6IGxlZnQ7XFxufVxcblxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xcbiAgcGFkZGluZzogMDtcXG59XFxuXFxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuW3R5cGU9c2VhcmNoXSB7XFxuICBvdXRsaW5lLW9mZnNldDogLTJweDtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xcbn1cXG5cXG4vKiBydGw6cmF3Olxcblt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG5bdHlwZT1cXFwidXJsXFxcIl0sXFxuW3R5cGU9XFxcImVtYWlsXFxcIl0sXFxuW3R5cGU9XFxcIm51bWJlclxcXCJdIHtcXG4gIGRpcmVjdGlvbjogbHRyO1xcbn1cXG4qL1xcbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxufVxcblxcbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XFxuICBwYWRkaW5nOiAwO1xcbn1cXG5cXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIGZvbnQ6IGluaGVyaXQ7XFxufVxcblxcbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgZm9udDogaW5oZXJpdDtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xcbn1cXG5cXG5vdXRwdXQge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG5cXG5pZnJhbWUge1xcbiAgYm9yZGVyOiAwO1xcbn1cXG5cXG5zdW1tYXJ5IHtcXG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxucHJvZ3Jlc3Mge1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbn1cXG5cXG5baGlkZGVuXSB7XFxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5sZWFkIHtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxufVxcblxcbi5kaXNwbGF5LTEge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTEge1xcbiAgICBmb250LXNpemU6IDVyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTIge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNTc1cmVtICsgMy45dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTIge1xcbiAgICBmb250LXNpemU6IDQuNXJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktMyB7XFxuICBmb250LXNpemU6IGNhbGMoMS41MjVyZW0gKyAzLjN2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktMyB7XFxuICAgIGZvbnQtc2l6ZTogNHJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktNCB7XFxuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS01IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjQyNXJlbSArIDIuMXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS01IHtcXG4gICAgZm9udC1zaXplOiAzcmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS02IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS02IHtcXG4gICAgZm9udC1zaXplOiAyLjVyZW07XFxuICB9XFxufVxcblxcbi5saXN0LXVuc3R5bGVkIHtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5saXN0LWlubGluZSB7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ubGlzdC1pbmxpbmUtaXRlbSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XFxufVxcblxcbi5pbml0aWFsaXNtIHtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XFxufVxcblxcbi5ibG9ja3F1b3RlIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcbi5ibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcXG4gIG1hcmdpbi10b3A6IC0xcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XFxuICBjb250ZW50OiBcXFwi4oCUwqBcXFwiO1xcbn1cXG5cXG4uaW1nLWZsdWlkIHtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuLmltZy10aHVtYm5haWwge1xcbiAgcGFkZGluZzogMC4yNXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuLmZpZ3VyZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbi5maWd1cmUtaW1nIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbn1cXG5cXG4uZmlndXJlLWNhcHRpb24ge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5jb250YWluZXIsXFxuLmNvbnRhaW5lci1mbHVpZCxcXG4uY29udGFpbmVyLXh4bCxcXG4uY29udGFpbmVyLXhsLFxcbi5jb250YWluZXItbGcsXFxuLmNvbnRhaW5lci1tZCxcXG4uY29udGFpbmVyLXNtIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tYnMtZ3V0dGVyLXgsIDAuNzVyZW0pO1xcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1icy1ndXR0ZXIteCwgMC43NXJlbSk7XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA1NDBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA3MjBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA5NjBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogMTE0MHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuY29udGFpbmVyLXh4bCwgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogMTMyMHB4O1xcbiAgfVxcbn1cXG4ucm93IHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteSkgKiAtMSk7XFxuICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gLTIpO1xcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gLTIpO1xcbn1cXG4ucm93ID4gKiB7XFxuICBmbGV4LXNocmluazogMDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAyKTtcXG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAyKTtcXG4gIG1hcmdpbi10b3A6IHZhcigtLWJzLWd1dHRlci15KTtcXG59XFxuXFxuLmNvbCB7XFxuICBmbGV4OiAxIDA7XFxufVxcblxcbi5yb3ctY29scy1hdXRvID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG4ucm93LWNvbHMtMSA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLnJvdy1jb2xzLTIgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDUwJTtcXG59XFxuXFxuLnJvdy1jb2xzLTMgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ucm93LWNvbHMtNCA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjUlO1xcbn1cXG5cXG4ucm93LWNvbHMtNSA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjAlO1xcbn1cXG5cXG4ucm93LWNvbHMtNiA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtYXV0byB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG4uY29sLTEge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLmNvbC0yIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLTMge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjUlO1xcbn1cXG5cXG4uY29sLTQge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtNSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC02IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDUwJTtcXG59XFxuXFxuLmNvbC03IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4uY29sLTgge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtOSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA3NSU7XFxufVxcblxcbi5jb2wtMTAge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtMTEge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtMTIge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLm9mZnNldC0xIHtcXG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ub2Zmc2V0LTIge1xcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4ub2Zmc2V0LTMge1xcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcXG59XFxuXFxuLm9mZnNldC00IHtcXG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC01IHtcXG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLm9mZnNldC02IHtcXG4gIG1hcmdpbi1sZWZ0OiA1MCU7XFxufVxcblxcbi5vZmZzZXQtNyB7XFxuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxufVxcblxcbi5vZmZzZXQtOCB7XFxuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5vZmZzZXQtOSB7XFxuICBtYXJnaW4tbGVmdDogNzUlO1xcbn1cXG5cXG4ub2Zmc2V0LTEwIHtcXG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC0xMSB7XFxuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5nLTAsXFxuLmd4LTAge1xcbiAgLS1icy1ndXR0ZXIteDogMDtcXG59XFxuXFxuLmctMCxcXG4uZ3ktMCB7XFxuICAtLWJzLWd1dHRlci15OiAwO1xcbn1cXG5cXG4uZy0xLFxcbi5neC0xIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxufVxcblxcbi5nLTEsXFxuLmd5LTEge1xcbiAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG59XFxuXFxuLmctMixcXG4uZ3gtMiB7XFxuICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxufVxcblxcbi5nLTIsXFxuLmd5LTIge1xcbiAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbn1cXG5cXG4uZy0zLFxcbi5neC0zIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxufVxcblxcbi5nLTMsXFxuLmd5LTMge1xcbiAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG59XFxuXFxuLmctNCxcXG4uZ3gtNCB7XFxuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxufVxcblxcbi5nLTQsXFxuLmd5LTQge1xcbiAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbn1cXG5cXG4uZy01LFxcbi5neC01IHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxufVxcblxcbi5nLTUsXFxuLmd5LTUge1xcbiAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY29sLXNtIHtcXG4gICAgZmxleDogMSAwO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLXNtLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLXNtLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmctc20tMCxcXG4uZ3gtc20tMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy1zbS0wLFxcbi5neS1zbS0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLXNtLTEsXFxuLmd4LXNtLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMSxcXG4uZ3ktc20tMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS0yLFxcbi5neC1zbS0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMixcXG4uZ3ktc20tMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTMsXFxuLmd4LXNtLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctc20tMyxcXG4uZ3ktc20tMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy1zbS00LFxcbi5neC1zbS00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tNCxcXG4uZ3ktc20tNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTUsXFxuLmd4LXNtLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmctc20tNSxcXG4uZ3ktc20tNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmNvbC1tZCB7XFxuICAgIGZsZXg6IDEgMDtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLW1kLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLW1kLTAsXFxuLmd4LW1kLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmctbWQtMCxcXG4uZ3ktbWQtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy1tZC0xLFxcbi5neC1tZC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTEsXFxuLmd5LW1kLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMixcXG4uZ3gtbWQtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTIsXFxuLmd5LW1kLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC0zLFxcbi5neC1tZC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTMsXFxuLmd5LW1kLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctbWQtNCxcXG4uZ3gtbWQtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTQsXFxuLmd5LW1kLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC01LFxcbi5neC1tZC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTUsXFxuLmd5LW1kLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5jb2wtbGcge1xcbiAgICBmbGV4OiAxIDA7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wtbGctMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLWxnLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy1sZy0wLFxcbi5neC1sZy0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLWxnLTAsXFxuLmd5LWxnLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmctbGctMSxcXG4uZ3gtbGctMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0xLFxcbi5neS1sZy0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTIsXFxuLmd4LWxnLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0yLFxcbi5neS1sZy0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctMyxcXG4uZ3gtbGctMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy1sZy0zLFxcbi5neS1sZy0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTQsXFxuLmd4LWxnLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy00LFxcbi5neS1sZy00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctNSxcXG4uZ3gtbGctNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy1sZy01LFxcbi5neS1sZy01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmNvbC14bCB7XFxuICAgIGZsZXg6IDEgMDtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14bC0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC14bC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLXhsLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLXhsLTAsXFxuLmd4LXhsLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmcteGwtMCxcXG4uZ3kteGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy14bC0xLFxcbi5neC14bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTEsXFxuLmd5LXhsLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMixcXG4uZ3gteGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTIsXFxuLmd5LXhsLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC0zLFxcbi5neC14bC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTMsXFxuLmd5LXhsLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteGwtNCxcXG4uZ3gteGwtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTQsXFxuLmd5LXhsLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC01LFxcbi5neC14bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTUsXFxuLmd5LXhsLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuY29sLXh4bCB7XFxuICAgIGZsZXg6IDEgMDtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLXh4bC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLXh4bC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmcteHhsLTAsXFxuLmd4LXh4bC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLXh4bC0wLFxcbi5neS14eGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy14eGwtMSxcXG4uZ3gteHhsLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTEsXFxuLmd5LXh4bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0yLFxcbi5neC14eGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0yLFxcbi5neS14eGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0zLFxcbi5neC14eGwtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMyxcXG4uZ3kteHhsLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTQsXFxuLmd4LXh4bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTQsXFxuLmd5LXh4bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTUsXFxuLmd4LXh4bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC01LFxcbi5neS14eGwtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbi50YWJsZSB7XFxuICAtLWJzLXRhYmxlLWJnOiB0cmFuc3BhcmVudDtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzIxMjUyOTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6IHJnYmEoMCwgMCwgMCwgMC4xKTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMyMTI1Mjk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcXG59XFxuLnRhYmxlID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy10YWJsZS1iZyk7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XFxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tYnMtdGFibGUtYWNjZW50LWJnKTtcXG59XFxuLnRhYmxlID4gdGJvZHkge1xcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XFxufVxcbi50YWJsZSA+IHRoZWFkIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XFxufVxcbi50YWJsZSA+IDpub3QoOmxhc3QtY2hpbGQpID4gOmxhc3QtY2hpbGQgPiAqIHtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRDb2xvcjtcXG59XFxuXFxuLmNhcHRpb24tdG9wIHtcXG4gIGNhcHRpb24tc2lkZTogdG9wO1xcbn1cXG5cXG4udGFibGUtc20gPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjI1cmVtO1xcbn1cXG5cXG4udGFibGUtYm9yZGVyZWQgPiA6bm90KGNhcHRpb24pID4gKiB7XFxuICBib3JkZXItd2lkdGg6IDFweCAwO1xcbn1cXG4udGFibGUtYm9yZGVyZWQgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgYm9yZGVyLXdpZHRoOiAwIDFweDtcXG59XFxuXFxuLnRhYmxlLWJvcmRlcmxlc3MgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG59XFxuXFxuLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHZhcigtLWJzLXRhYmxlLXN0cmlwZWQtYmcpO1xcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3IpO1xcbn1cXG5cXG4udGFibGUtYWN0aXZlIHtcXG4gIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1hY3RpdmUtYmcpO1xcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcik7XFxufVxcblxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIge1xcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHZhcigtLWJzLXRhYmxlLWhvdmVyLWJnKTtcXG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1ob3Zlci1jb2xvcik7XFxufVxcblxcbi50YWJsZS1wcmltYXJ5IHtcXG4gIC0tYnMtdGFibGUtYmc6ICNjZmUyZmY7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNjNWQ3ZjI7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JhY2JlNjtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2JmZDFlYztcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2JhY2JlNjtcXG59XFxuXFxuLnRhYmxlLXNlY29uZGFyeSB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZTJlM2U1O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZDdkOGRhO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNjYmNjY2U7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNkMWQyZDQ7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNjYmNjY2U7XFxufVxcblxcbi50YWJsZS1zdWNjZXNzIHtcXG4gIC0tYnMtdGFibGUtYmc6ICNkMWU3ZGQ7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNjN2RiZDI7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JjZDBjNztcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2MxZDZjYztcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2JjZDBjNztcXG59XFxuXFxuLnRhYmxlLWluZm8ge1xcbiAgLS1icy10YWJsZS1iZzogI2NmZjRmYztcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M1ZThlZjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYmFkY2UzO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjYmZlMmU5O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmFkY2UzO1xcbn1cXG5cXG4udGFibGUtd2FybmluZyB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZmZmM2NkO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZjJlN2MzO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNlNmRiYjk7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNlY2UxYmU7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNlNmRiYjk7XFxufVxcblxcbi50YWJsZS1kYW5nZXIge1xcbiAgLS1icy10YWJsZS1iZzogI2Y4ZDdkYTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2VjY2NjZjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZjMmM0O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZTVjN2NhO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGZjMmM0O1xcbn1cXG5cXG4udGFibGUtbGlnaHQge1xcbiAgLS1icy10YWJsZS1iZzogI2Y4ZjlmYTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2VjZWRlZTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZlMGUxO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZTVlNmU3O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGZlMGUxO1xcbn1cXG5cXG4udGFibGUtZGFyayB7XFxuICAtLWJzLXRhYmxlLWJnOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjMmMzMDM0O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjZmZmO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICMzNzNiM2U7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogI2ZmZjtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICMzMjM1Mzk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjZmZmO1xcbiAgY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICMzNzNiM2U7XFxufVxcblxcbi50YWJsZS1yZXNwb25zaXZlIHtcXG4gIG92ZXJmbG93LXg6IGF1dG87XFxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxufVxcblxcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS14eGwge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbi5mb3JtLWxhYmVsIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsIHtcXG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBmb250LXNpemU6IGluaGVyaXQ7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbn1cXG5cXG4uY29sLWZvcm0tbGFiZWwtbGcge1xcbiAgcGFkZGluZy10b3A6IGNhbGMoMC41cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcblxcbi5jb2wtZm9ybS1sYWJlbC1zbSB7XFxuICBwYWRkaW5nLXRvcDogY2FsYygwLjI1cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG59XFxuXFxuLmZvcm0tdGV4dCB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5mb3JtLWNvbnRyb2wge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1jb250cm9sIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uZm9ybS1jb250cm9sOmZvY3VzIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcXG4gIGhlaWdodDogMS41ZW07XFxufVxcbi5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgb3BhY2l0eTogMTtcXG59XFxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uZm9ybS1jb250cm9sOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgb3BhY2l0eTogMTtcXG59XFxuLmZvcm0tY29udHJvbDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIG1hcmdpbjogLTAuMzc1cmVtIC0wLjc1cmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNzVyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICBib3JkZXItd2lkdGg6IDA7XFxuICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogMXB4O1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRlMGUzO1xcbn1cXG4uZm9ybS1jb250cm9sOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMC43NXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMDtcXG4gIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAxcHg7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1jb250cm9sOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZTBlMztcXG59XFxuXFxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcXG59XFxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xcbiAgcGFkZGluZy1yaWdodDogMDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1zbSB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBtYXJnaW46IC0wLjI1cmVtIC0wLjVyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLXNtOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuMjVyZW0gLTAuNXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjVyZW07XFxufVxcblxcbi5mb3JtLWNvbnRyb2wtbGcge1xcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtbGc6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0xcmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtbGc6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0xcmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XFxufVxcblxcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XFxufVxcbnRleHRhcmVhLmZvcm0tY29udHJvbC1zbSB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcXG59XFxudGV4dGFyZWEuZm9ybS1jb250cm9sLWxnIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1jb2xvciB7XFxuICBtYXgtd2lkdGg6IDNyZW07XFxuICBoZWlnaHQ6IGF1dG87XFxuICBwYWRkaW5nOiAwLjM3NXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1jb2xvcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1jb2xvcjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5mb3JtLXNlbGVjdCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMi4yNXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxufVxcbi5mb3JtLXNlbGVjdDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXNlbGVjdFttdWx0aXBsZV0sIC5mb3JtLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XFxcIjFcXFwiXSkge1xcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxufVxcbi5mb3JtLXNlbGVjdDpkaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxufVxcbi5mb3JtLXNlbGVjdDotbW96LWZvY3VzcmluZyB7XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzIxMjUyOTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0LXNtIHtcXG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxufVxcblxcbi5mb3JtLXNlbGVjdC1sZyB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuXFxuLmZvcm0tY2hlY2sge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtaW4taGVpZ2h0OiAxLjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XFxufVxcbi5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgbWFyZ2luLWxlZnQ6IC0xLjVlbTtcXG59XFxuXFxuLmZvcm0tY2hlY2staW5wdXQge1xcbiAgd2lkdGg6IDFlbTtcXG4gIGhlaWdodDogMWVtO1xcbiAgbWFyZ2luLXRvcDogMC4yNWVtO1xcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjI1KTtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxuICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XFxuICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSB7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6YWN0aXZlIHtcXG4gIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZFt0eXBlPWNoZWNrYm94XSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwbDMgM2w2LTYnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZFt0eXBlPXJhZGlvXSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzInIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBmaWx0ZXI6IG5vbmU7XFxuICBvcGFjaXR5OiAwLjU7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuXFxuLmZvcm0tc3dpdGNoIHtcXG4gIHBhZGRpbmctbGVmdDogMi41ZW07XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICB3aWR0aDogMmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0yLjVlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0ncmdiYSUyODAsIDAsIDAsIDAuMjUlMjknLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyMzg2YjdmZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbmxpbmUge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xcbn1cXG5cXG4uYnRuLWNoZWNrIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG59XFxuLmJ0bi1jaGVja1tkaXNhYmxlZF0gKyAuYnRuLCAuYnRuLWNoZWNrOmRpc2FibGVkICsgLmJ0biB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGZpbHRlcjogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNjU7XFxufVxcblxcbi5mb3JtLXJhbmdlIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxLjVyZW07XFxuICBwYWRkaW5nOiAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcXG4gIGJvcmRlcjogMDtcXG59XFxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcXG4gIHdpZHRoOiAxcmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZkNGZlO1xcbn1cXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDAuNXJlbTtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcXG4gICAgLW1vei10cmFuc2l0aW9uOiBub25lO1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I2ZDRmZTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDAuNXJlbTtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG59XFxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxufVxcbi5mb3JtLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xcbn1cXG4uZm9ybS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xcbn1cXG5cXG4uZm9ybS1mbG9hdGluZyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XFxuICBoZWlnaHQ6IGNhbGMoMy41cmVtICsgMnB4KTtcXG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1mbG9hdGluZyA+IGxhYmVsIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDotbW96LXBsYWNlaG9sZGVyLXNob3duKSB7XFxuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cywgLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcXG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XFxuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOi1tb3otcGxhY2Vob2xkZXItc2hvd24pIH4gbGFiZWwge1xcbiAgb3BhY2l0eTogMC42NTtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiBsYWJlbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB+IGxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNjU7XFxuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCB7XFxuICBvcGFjaXR5OiAwLjY1O1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XFxufVxcblxcbi5pbnB1dC1ncm91cCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Qge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZmxleDogMSAxIGF1dG87XFxuICB3aWR0aDogMSU7XFxuICBtaW4td2lkdGg6IDA7XFxufVxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0OmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxufVxcbi5pbnB1dC1ncm91cCAuYnRuIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHotaW5kZXg6IDI7XFxufVxcbi5pbnB1dC1ncm91cCAuYnRuOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxufVxcblxcbi5pbnB1dC1ncm91cC10ZXh0IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuXFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rMykge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gOm50aC1sYXN0LWNoaWxkKG4rMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuKzQpIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5pbnB1dC1ncm91cCA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCgudmFsaWQtdG9vbHRpcCk6bm90KC52YWxpZC1mZWVkYmFjayk6bm90KC5pbnZhbGlkLXRvb2x0aXApOm5vdCguaW52YWxpZC1mZWVkYmFjaykge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuXFxuLnZhbGlkLWZlZWRiYWNrIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLnZhbGlkLXRvb2x0aXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAxMDAlO1xcbiAgei1pbmRleDogNTtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUsIDEzNSwgODQsIDAuOSk7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXFxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsXFxuLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxcbi5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgcGFkZGluZy1yaWdodDogNC4xMjVyZW07XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpLCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMTk4NzU0JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjc1cmVtIGNlbnRlciwgY2VudGVyIHJpZ2h0IDIuMjVyZW07XFxuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweCwgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpmb2N1cywgLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkOmNoZWNrZWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB+IC52YWxpZC1mZWVkYmFjayB7XFxuICBtYXJnaW4tbGVmdDogMC41ZW07XFxufVxcblxcbi5pbnZhbGlkLWZlZWRiYWNrIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogI2RjMzU0NTtcXG59XFxuXFxuLmludmFsaWQtdG9vbHRpcCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDEwMCU7XFxuICB6LWluZGV4OiA1O1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsIDUzLCA2OSwgMC45KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLFxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZCwgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgcGFkZGluZy1yaWdodDogNC4xMjVyZW07XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpLCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4LCBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkOmNoZWNrZWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQgfiAuaW52YWxpZC1mZWVkYmFjayB7XFxuICBtYXJnaW4tbGVmdDogMC41ZW07XFxufVxcblxcbi5idG4ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5idG4ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uYnRuOmhvdmVyIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0biwgLmJ0bjpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5idG46ZGlzYWJsZWQsIC5idG4uZGlzYWJsZWQsIGZpZWxkc2V0OmRpc2FibGVkIC5idG4ge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBvcGFjaXR5OiAwLjY1O1xcbn1cXG5cXG4uYnRuLXByaW1hcnkge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLXByaW1hcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI1ZWQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMGE1OGNhO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1wcmltYXJ5LCAuYnRuLXByaW1hcnk6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI1ZWQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMGE1OGNhO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDQ5LCAxMzIsIDI1MywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1wcmltYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeSwgLmJ0bi1wcmltYXJ5OmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LmFjdGl2ZSwgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhNThjYTtcXG4gIGJvcmRlci1jb2xvcjogIzBhNTNiZTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg0OSwgMTMyLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tcHJpbWFyeTpkaXNhYmxlZCwgLmJ0bi1wcmltYXJ5LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuXFxuLmJ0bi1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM1YzYzNmE7XFxuICBib3JkZXItY29sb3I6ICM1NjVlNjQ7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXNlY29uZGFyeSwgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjNTY1ZTY0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzMCwgMTM4LCAxNDUsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc2Vjb25kYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc2Vjb25kYXJ5LCAuYnRuLXNlY29uZGFyeTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZSwgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY1ZTY0O1xcbiAgYm9yZGVyLWNvbG9yOiAjNTE1ODVlO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xcbn1cXG4uYnRuLXNlY29uZGFyeTpkaXNhYmxlZCwgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4uYnRuLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLXN1Y2Nlc3M6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU3MzQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTQ2YzQzO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1zdWNjZXNzLCAuYnRuLXN1Y2Nlc3M6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU3MzQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTQ2YzQzO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDYwLCAxNTMsIDExMCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zdWNjZXNzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc3VjY2VzcywgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0NmM0MztcXG4gIGJvcmRlci1jb2xvcjogIzEzNjUzZjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzOmFjdGl2ZTpmb2N1cywgLmJ0bi1zdWNjZXNzLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg2MCwgMTUzLCAxMTAsIDAuNSk7XFxufVxcbi5idG4tc3VjY2VzczpkaXNhYmxlZCwgLmJ0bi1zdWNjZXNzLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLmJ0bi1pbmZvIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuLmJ0bi1pbmZvOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxZDJmMjtcXG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4taW5mbywgLmJ0bi1pbmZvOmZvY3VzIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxZDJmMjtcXG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMSwgMTcyLCAyMDQsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4taW5mbywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWluZm8sIC5idG4taW5mbzphY3RpdmUsIC5idG4taW5mby5hY3RpdmUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzZGQ1ZjM7XFxuICBib3JkZXItY29sb3I6ICMyNWNmZjI7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4taW5mbzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWluZm86Zm9jdXMsIC5idG4taW5mbzphY3RpdmU6Zm9jdXMsIC5idG4taW5mby5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTEsIDE3MiwgMjA0LCAwLjUpO1xcbn1cXG4uYnRuLWluZm86ZGlzYWJsZWQsIC5idG4taW5mby5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcblxcbi5idG4td2FybmluZyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4td2FybmluZzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNhMmM7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzpmb2N1cyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNhMmM7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjE3LCAxNjQsIDYsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4td2FybmluZywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzphY3RpdmUsIC5idG4td2FybmluZy5hY3RpdmUsIC5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNkMzk7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4td2FybmluZzphY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZy5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjE3LCAxNjQsIDYsIDAuNSk7XFxufVxcbi5idG4td2FybmluZzpkaXNhYmxlZCwgLmJ0bi13YXJuaW5nLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuXFxuLmJ0bi1kYW5nZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLWRhbmdlcjpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7XFxuICBib3JkZXItY29sb3I6ICNiMDJhMzc7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLWRhbmdlciwgLmJ0bi1kYW5nZXI6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmIyZDNiO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjAyYTM3O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhbmdlciwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhbmdlciwgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuLWRhbmdlci5hY3RpdmUsIC5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMmEzNztcXG4gIGJvcmRlci1jb2xvcjogI2E1MjgzNDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tZGFuZ2VyOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjI1LCA4MywgOTcsIDAuNSk7XFxufVxcbi5idG4tZGFuZ2VyOmRpc2FibGVkLCAuYnRuLWRhbmdlci5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcblxcbi5idG4tbGlnaHQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4uYnRuLWxpZ2h0OmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tbGlnaHQsIC5idG4tbGlnaHQ6Zm9jdXMge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxMSwgMjEyLCAyMTMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tbGlnaHQsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1saWdodCwgLmJ0bi1saWdodDphY3RpdmUsIC5idG4tbGlnaHQuYWN0aXZlLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWxpZ2h0OmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodC5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxMSwgMjEyLCAyMTMsIDAuNSk7XFxufVxcbi5idG4tbGlnaHQ6ZGlzYWJsZWQsIC5idG4tbGlnaHQuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG5cXG4uYnRuLWRhcmsge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWRhcms6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMWExZTIxO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1kYXJrLCAuYnRuLWRhcms6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMWExZTIxO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDY2LCA3MCwgNzMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFyaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhcmssIC5idG4tZGFyazphY3RpdmUsIC5idG4tZGFyay5hY3RpdmUsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTFlMjE7XFxuICBib3JkZXItY29sb3I6ICMxOTFjMWY7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFyazpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyazphY3RpdmU6Zm9jdXMsIC5idG4tZGFyay5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjYsIDcwLCA3MywgMC41KTtcXG59XFxuLmJ0bi1kYXJrOmRpc2FibGVkLCAuYnRuLWRhcmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXByaW1hcnksIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLW91dGxpbmUtcHJpbWFyeTphY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1wcmltYXJ5OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLW91dGxpbmUtc3VjY2VzczphY3RpdmUsIC5idG4tb3V0bGluZS1zdWNjZXNzLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1pbmZvIHtcXG4gIGNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG4uYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAyMDIsIDI0MCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tb3V0bGluZS1pbmZvOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm8uYWN0aXZlLCAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mbzphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAyMDIsIDI0MCwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWluZm86ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMGRjYWYwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS13YXJuaW5nIHtcXG4gIGNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1NSwgMTkzLCA3LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZy5hY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS13YXJuaW5nOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmYzEwNztcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFuZ2VyLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tb3V0bGluZS1kYW5nZXI6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2RjMzU0NTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtbGlnaHQge1xcbiAgY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tb3V0bGluZS1saWdodDpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWxpZ2h0LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1saWdodDpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2Y4ZjlmYTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtZGFyayB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWRhcmssIC5idG4tb3V0bGluZS1kYXJrOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMywgMzcsIDQxLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1vdXRsaW5lLWRhcms6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyay5hY3RpdmUsIC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzMsIDM3LCA0MSwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tbGluayB7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG59XFxuLmJ0bi1saW5rOmhvdmVyIHtcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbn1cXG4uYnRuLWxpbms6ZGlzYWJsZWQsIC5idG4tbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcblxcbi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuXFxuLmZhZGUge1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZmFkZSB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mYWRlOm5vdCguc2hvdykge1xcbiAgb3BhY2l0eTogMDtcXG59XFxuXFxuLmNvbGxhcHNlOm5vdCguc2hvdykge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLmNvbGxhcHNpbmcge1xcbiAgaGVpZ2h0OiAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNvbGxhcHNpbmcge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4uZHJvcHVwLFxcbi5kcm9wZW5kLFxcbi5kcm9wZG93bixcXG4uZHJvcHN0YXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAwO1xcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAxMDAlO1xcbiAgei1pbmRleDogMTAwMDtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICBtaW4td2lkdGg6IDEwcmVtO1xcbiAgcGFkZGluZzogMC41cmVtIDA7XFxuICBtYXJnaW46IDA7XFxuICBmb250LXNpemU6IDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcXG4gIGxlZnQ6IDA7XFxuICBtYXJnaW4tdG9wOiAwLjEyNXJlbTtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUtc3RhcnQge1xcbiAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxufVxcbi5kcm9wZG93bi1tZW51LXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudS1lbmQge1xcbiAgLS1icy1wb3NpdGlvbjogZW5kO1xcbn1cXG4uZHJvcGRvd24tbWVudS1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtc20tc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXNtLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LXNtLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXNtLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtbWQtc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LW1kLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LW1kLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LWxnLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LXhsLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS14bC1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuZHJvcGRvd24tbWVudS14eGwtc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXh4bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS14eGwtZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xcbiAgdG9wOiBhdXRvO1xcbiAgYm90dG9tOiAxMDAlO1xcbn1cXG4uZHJvcHVwIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZDtcXG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuXFxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnUge1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IGF1dG87XFxuICBsZWZ0OiAxMDAlO1xcbn1cXG4uZHJvcGVuZCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1sZWZ0OiAwLjEyNXJlbTtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmlnaHQ6IDA7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZDtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIHZlcnRpY2FsLWFsaWduOiAwO1xcbn1cXG5cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi1tZW51IHtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAxMDAlO1xcbiAgbGVmdDogYXV0bztcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1yaWdodDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQ7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xcbiAgdmVydGljYWwtYWxpZ246IDA7XFxufVxcblxcbi5kcm9wZG93bi1kaXZpZGVyIHtcXG4gIGhlaWdodDogMDtcXG4gIG1hcmdpbjogMC41cmVtIDA7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxufVxcblxcbi5kcm9wZG93bi1pdGVtIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XFxuICBjbGVhcjogYm90aDtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDA7XFxufVxcbi5kcm9wZG93bi1pdGVtOmhvdmVyLCAuZHJvcGRvd24taXRlbTpmb2N1cyB7XFxuICBjb2xvcjogIzFlMjEyNTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxufVxcbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjYWRiNWJkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLmRyb3Bkb3duLWhlYWRlciB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcblxcbi5kcm9wZG93bi1pdGVtLXRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUtZGFyayB7XFxuICBjb2xvcjogI2RlZTJlNjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0ge1xcbiAgY29sb3I6ICNkZWUyZTY7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTphY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjYWRiNWJkO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1kaXZpZGVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS10ZXh0IHtcXG4gIGNvbG9yOiAjZGVlMmU2O1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1oZWFkZXIge1xcbiAgY29sb3I6ICNhZGI1YmQ7XFxufVxcblxcbi5idG4tZ3JvdXAsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbn1cXG4uYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcXG4uYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXFxuLmJ0bi1ncm91cCA+IC5idG46aG92ZXIsXFxuLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsXFxuLmJ0bi1ncm91cCA+IC5idG46YWN0aXZlLFxcbi5idG4tZ3JvdXAgPiAuYnRuLmFjdGl2ZSxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XFxuICB6LWluZGV4OiAxO1xcbn1cXG5cXG4uYnRuLXRvb2xiYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG59XFxuLmJ0bi10b29sYmFyIC5pbnB1dC1ncm91cCB7XFxuICB3aWR0aDogYXV0bztcXG59XFxuXFxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuOm50aC1jaGlsZChuKzMpLFxcbi5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcblxcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW07XFxufVxcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xcbiAgbWFyZ2luLXJpZ2h0OiAwO1xcbn1cXG5cXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcXG59XFxuXFxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtbGcgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xcbn1cXG5cXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgbWFyZ2luLXRvcDogLTFweDtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuXFxuLm5hdiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5uYXYtbGluayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5uYXYtbGluayB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5uYXYtbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgY3Vyc29yOiBkZWZhdWx0O1xcbn1cXG5cXG4ubmF2LXRhYnMge1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XFxufVxcbi5uYXYtdGFicyAubmF2LWxpbmsge1xcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2O1xcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcXG4ubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcXG4gIGNvbG9yOiAjNDk1MDU3O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNiAjZGVlMmU2ICNmZmY7XFxufVxcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XFxuICBtYXJnaW4tdG9wOiAtMXB4O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG5cXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XFxuICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxcbi5uYXYtcGlsbHMgLnNob3cgPiAubmF2LWxpbmsge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG5cXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXFxuLm5hdi1maWxsIC5uYXYtaXRlbSB7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXFxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHtcXG4gIGZsZXgtYmFzaXM6IDA7XFxuICBmbGV4LWdyb3c6IDE7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcbi50YWItY29udGVudCA+IC50YWItcGFuZSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ubmF2YmFyIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XFxufVxcbi5uYXZiYXIgPiAuY29udGFpbmVyLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXNtLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLW1kLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLWxnLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXhsLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXh4bCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiBpbmhlcml0O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG59XFxuLm5hdmJhci1icmFuZCB7XFxuICBwYWRkaW5nLXRvcDogMC4zMTI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcXG4gIG1hcmdpbi1yaWdodDogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcbi5uYXZiYXItbmF2IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbn1cXG4ubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICBwb3NpdGlvbjogc3RhdGljO1xcbn1cXG5cXG4ubmF2YmFyLXRleHQge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XFxufVxcblxcbi5uYXZiYXItY29sbGFwc2Uge1xcbiAgZmxleC1iYXNpczogMTAwJTtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxufVxcblxcbi5uYXZiYXItdG9nZ2xlciB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBsaW5lLWhlaWdodDogMTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5uYXZiYXItdG9nZ2xlcjpob3ZlciB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcbi5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbTtcXG59XFxuXFxuLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDEuNWVtO1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xcbn1cXG5cXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgbWF4LWhlaWdodDogdmFyKC0tYnMtc2Nyb2xsLWhlaWdodCwgNzV2aCk7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLm5hdmJhci1leHBhbmQtbWQge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC1sZyB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC14bCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC14eGwge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuLm5hdmJhci1leHBhbmQge1xcbiAgZmxleC13cmFwOiBub3dyYXA7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgb3ZlcmZsb3c6IHZpc2libGU7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgZmxleC1iYXNpczogYXV0bztcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVyIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpmb2N1cyB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU1KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEsXFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3ZlcixcXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcblxcbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MjU1LCAyNTUsIDI1NSwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhLFxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3ZlcixcXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcblxcbi5jYXJkIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgbWluLXdpZHRoOiAwO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmNhcmQgPiBociB7XFxuICBtYXJnaW4tcmlnaHQ6IDA7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmNhcmQgPiAubGlzdC1ncm91cCB7XFxuICBib3JkZXItdG9wOiBpbmhlcml0O1xcbiAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcXG59XFxuLmNhcmQgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG4uY2FyZCA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuLmNhcmQgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcXG4uY2FyZCA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcXG4gIGJvcmRlci10b3A6IDA7XFxufVxcblxcbi5jYXJkLWJvZHkge1xcbiAgZmxleDogMSAxIGF1dG87XFxuICBwYWRkaW5nOiAxcmVtIDFyZW07XFxufVxcblxcbi5jYXJkLXRpdGxlIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG59XFxuXFxuLmNhcmQtc3VidGl0bGUge1xcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtbGluazpob3ZlciB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcbi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtIC8qIHJ0bDppZ25vcmUgKi87XFxufVxcblxcbi5jYXJkLWhlYWRlciB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbn1cXG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpIDAgMDtcXG59XFxuXFxuLmNhcmQtZm9vdGVyIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG59XFxuLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtaGVhZGVyLXRhYnMge1xcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xcbiAgYm9yZGVyLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcXG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xcbn1cXG5cXG4uY2FyZC1pbWctb3ZlcmxheSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICBwYWRkaW5nOiAxcmVtO1xcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy10b3AsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy10b3Age1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcblxcbi5jYXJkLWdyb3VwID4gLmNhcmQge1xcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY2FyZC1ncm91cCB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcXG4gICAgZmxleDogMSAwO1xcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZCArIC5jYXJkIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIGJvcmRlci1sZWZ0OiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG59XFxuXFxuLmFjY29yZGlvbi1idXR0b24ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLXJhZGl1cyAwLjE1cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG59XFxuLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcXG4gIGNvbG9yOiAjMGM2M2U0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjFmZjtcXG59XFxuLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpOjphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzBjNjNlNCclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcXG59XFxuLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgd2lkdGg6IDEuMjVyZW07XFxuICBoZWlnaHQ6IDEuMjVyZW07XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMyMTI1MjknJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEuMjVyZW07XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOmhvdmVyIHtcXG4gIHotaW5kZXg6IDI7XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcblxcbi5hY2NvcmRpb24taGVhZGVyIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5hY2NvcmRpb24taXRlbTpmaXJzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlcjogc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxuICBib3JkZXItd2lkdGg6IDAgMXB4O1xcbn1cXG5cXG4uYWNjb3JkaW9uLWJvZHkge1xcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIGJvcmRlci1yaWdodDogMDtcXG4gIGJvcmRlci1sZWZ0OiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlci13aWR0aDogMDtcXG59XFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcblxcbi5icmVhZGNydW1iIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBwYWRkaW5nOiAwIDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxufVxcbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGNvbnRlbnQ6IHZhcigtLWJzLWJyZWFkY3J1bWItZGl2aWRlciwgXFxcIi9cXFwiKSAvKiBydGw6IHZhcigtLWJzLWJyZWFkY3J1bWItZGl2aWRlciwgXFxcIi9cXFwiKSAqLztcXG59XFxuLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5wYWdpbmF0aW9uIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ucGFnZS1saW5rIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAucGFnZS1saW5rIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLnBhZ2UtbGluazpob3ZlciB7XFxuICB6LWluZGV4OiAyO1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xcbn1cXG4ucGFnZS1saW5rOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxuICBjb2xvcjogIzBhNThjYTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcblxcbi5wYWdlLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG59XFxuLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XFxuICB6LWluZGV4OiAzO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4ucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XFxufVxcblxcbi5wYWdlLWxpbmsge1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG59XFxuXFxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHtcXG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zcmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zcmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuM3JlbTtcXG59XFxuXFxuLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxufVxcbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjJyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjJyZW07XFxufVxcbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjJyZW07XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xcbn1cXG5cXG4uYmFkZ2Uge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgcGFkZGluZzogMC4zNWVtIDAuNjVlbTtcXG4gIGZvbnQtc2l6ZTogMC43NWVtO1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmJhZGdlOmVtcHR5IHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5idG4gLmJhZGdlIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHRvcDogLTFweDtcXG59XFxuXFxuLmFsZXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5hbGVydC1oZWFkaW5nIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbn1cXG5cXG4uYWxlcnQtbGluayB7XFxuICBmb250LXdlaWdodDogNzAwO1xcbn1cXG5cXG4uYWxlcnQtZGlzbWlzc2libGUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcXG59XFxuLmFsZXJ0LWRpc21pc3NpYmxlIC5idG4tY2xvc2Uge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICB6LWluZGV4OiAyO1xcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xcbn1cXG5cXG4uYWxlcnQtcHJpbWFyeSB7XFxuICBjb2xvcjogIzA4NDI5ODtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmUyZmY7XFxuICBib3JkZXItY29sb3I6ICNiNmQ0ZmU7XFxufVxcbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMDYzNTdhO1xcbn1cXG5cXG4uYWxlcnQtc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNDE0NjRiO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcXG4gIGJvcmRlci1jb2xvcjogI2QzZDZkODtcXG59XFxuLmFsZXJ0LXNlY29uZGFyeSAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzM0MzgzYztcXG59XFxuXFxuLmFsZXJ0LXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMwZjUxMzI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmFkYmNjO1xcbn1cXG4uYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzBjNDEyODtcXG59XFxuXFxuLmFsZXJ0LWluZm8ge1xcbiAgY29sb3I6ICMwNTUxNjA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZmNGZjO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjZlZmZiO1xcbn1cXG4uYWxlcnQtaW5mbyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzA0NDE0ZDtcXG59XFxuXFxuLmFsZXJ0LXdhcm5pbmcge1xcbiAgY29sb3I6ICM2NjRkMDM7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZlY2I1O1xcbn1cXG4uYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzUyM2UwMjtcXG59XFxuXFxuLmFsZXJ0LWRhbmdlciB7XFxuICBjb2xvcjogIzg0MjAyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XFxuICBib3JkZXItY29sb3I6ICNmNWMyYzc7XFxufVxcbi5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICM2YTFhMjE7XFxufVxcblxcbi5hbGVydC1saWdodCB7XFxuICBjb2xvcjogIzYzNjQ2NDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XFxuICBib3JkZXItY29sb3I6ICNmZGZkZmU7XFxufVxcbi5hbGVydC1saWdodCAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzRmNTA1MDtcXG59XFxuXFxuLmFsZXJ0LWRhcmsge1xcbiAgY29sb3I6ICMxNDE2MTk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2Q0O1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNiZWJmO1xcbn1cXG4uYWxlcnQtZGFyayAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzEwMTIxNDtcXG59XFxuXFxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XFxuICAwJSB7XFxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogMXJlbTtcXG4gIH1cXG59XFxuLnByb2dyZXNzIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBoZWlnaHQ6IDFyZW07XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5wcm9ncmVzcy1iYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnByb2dyZXNzLWJhciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtO1xcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcXG4gIGFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XFxuICAgIGFuaW1hdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmxpc3QtZ3JvdXAge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBjb2xvcjogIzQ5NTA1NztcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICB6LWluZGV4OiAxO1xcbiAgY29sb3I6ICM0OTUwNTc7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAubGlzdC1ncm91cC1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICB6LWluZGV4OiAyO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgbWFyZ2luLXRvcDogLTFweDtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgbWFyZ2luLXRvcDogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkge1xcbiAgY29sb3I6ICMwODQyOTg7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZlMmZmO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICMwODQyOTg7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFjYmU2O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDg0Mjk4O1xcbiAgYm9yZGVyLWNvbG9yOiAjMDg0Mjk4O1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzQxNDY0YjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmUzZTU7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICM0MTQ2NGI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2JjY2NlO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM0MTQ2NGI7XFxuICBib3JkZXItY29sb3I6ICM0MTQ2NGI7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XFxuICBjb2xvcjogIzBmNTEzMjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkMWU3ZGQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzBmNTEzMjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2QwYzc7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZjUxMzI7XFxuICBib3JkZXItY29sb3I6ICMwZjUxMzI7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XFxuICBjb2xvcjogIzA1NTE2MDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzA1NTE2MDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWRjZTM7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTUxNjA7XFxuICBib3JkZXItY29sb3I6ICMwNTUxNjA7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7XFxuICBjb2xvcjogIzY2NGQwMztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzY2NGQwMztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmRiYjk7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjRkMDM7XFxuICBib3JkZXItY29sb3I6ICM2NjRkMDM7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcXG4gIGNvbG9yOiAjODQyMDI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzg0MjAyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmMyYzQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg0MjAyOTtcXG4gIGJvcmRlci1jb2xvcjogIzg0MjAyOTtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XFxuICBjb2xvcjogIzYzNjQ2NDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjNjM2NDY0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzY0NjQ7XFxuICBib3JkZXItY29sb3I6ICM2MzY0NjQ7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyayB7XFxuICBjb2xvcjogIzE0MTYxOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzE0MTYxOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmY7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDE2MTk7XFxuICBib3JkZXItY29sb3I6ICMxNDE2MTk7XFxufVxcblxcbi5idG4tY2xvc2Uge1xcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICB3aWR0aDogMWVtO1xcbiAgaGVpZ2h0OiAxZW07XFxuICBwYWRkaW5nOiAwLjI1ZW0gMC4yNWVtO1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzAwMCclM2UlM2NwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvJTNlJTNjL3N2ZyUzZVxcXCIpIGNlbnRlci8xZW0gYXV0byBuby1yZXBlYXQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG4uYnRuLWNsb3NlOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgb3BhY2l0eTogMC43NTtcXG59XFxuLmJ0bi1jbG9zZTpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uYnRuLWNsb3NlOmRpc2FibGVkLCAuYnRuLWNsb3NlLmRpc2FibGVkIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcXG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIG9wYWNpdHk6IDAuMjU7XFxufVxcblxcbi5idG4tY2xvc2Utd2hpdGUge1xcbiAgZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSk7XFxufVxcblxcbi50b2FzdCB7XFxuICB3aWR0aDogMzUwcHg7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcXG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi50b2FzdDpub3QoLnNob3dpbmcpOm5vdCguc2hvdykge1xcbiAgb3BhY2l0eTogMDtcXG59XFxuLnRvYXN0LmhpZGUge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLnRvYXN0LWNvbnRhaW5lciB7XFxuICB3aWR0aDogLW1vei1tYXgtY29udGVudDtcXG4gIHdpZHRoOiBtYXgtY29udGVudDtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4udG9hc3QtY29udGFpbmVyID4gOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcXG59XFxuXFxuLnRvYXN0LWhlYWRlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG4udG9hc3QtaGVhZGVyIC5idG4tY2xvc2Uge1xcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zNzVyZW07XFxuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcXG59XFxuXFxuLnRvYXN0LWJvZHkge1xcbiAgcGFkZGluZzogMC43NXJlbTtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG59XFxuXFxuLm1vZGFsLW9wZW4ge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcblxcbi5tb2RhbCB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTA1MDtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG4ubW9kYWwtZGlhbG9nIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHdpZHRoOiBhdXRvO1xcbiAgbWFyZ2luOiAwLjVyZW07XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG59XFxuLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4ubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zZm9ybTogbm9uZTtcXG59XFxuLm1vZGFsLm1vZGFsLXN0YXRpYyAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XFxufVxcblxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XFxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xcbn1cXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xcbiAgbWF4LWhlaWdodDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbn1cXG5cXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XFxufVxcblxcbi5tb2RhbC1jb250ZW50IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwb2ludGVyLWV2ZW50czogYXV0bztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xcbiAgb3V0bGluZTogMDtcXG59XFxuXFxuLm1vZGFsLWJhY2tkcm9wIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDQwO1xcbiAgd2lkdGg6IDEwMHZ3O1xcbiAgaGVpZ2h0OiAxMDB2aDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxufVxcbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcXG4gIG9wYWNpdHk6IDA7XFxufVxcbi5tb2RhbC1iYWNrZHJvcC5zaG93IHtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuXFxuLm1vZGFsLWhlYWRlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbn1cXG4ubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xcbiAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuNXJlbSAtMC41cmVtIC0wLjVyZW0gYXV0bztcXG59XFxuXFxuLm1vZGFsLXRpdGxlIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbn1cXG5cXG4ubW9kYWwtYm9keSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHBhZGRpbmc6IDFyZW07XFxufVxcblxcbi5tb2RhbC1mb290ZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICBwYWRkaW5nOiAwLjc1cmVtO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbn1cXG4ubW9kYWwtZm9vdGVyID4gKiB7XFxuICBtYXJnaW46IDAuMjVyZW07XFxufVxcblxcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC05OTk5cHg7XFxuICB3aWR0aDogNTBweDtcXG4gIGhlaWdodDogNTBweDtcXG4gIG92ZXJmbG93OiBzY3JvbGw7XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLm1vZGFsLWRpYWxvZyB7XFxuICAgIG1heC13aWR0aDogNTAwcHg7XFxuICAgIG1hcmdpbjogMS43NXJlbSBhdXRvO1xcbiAgfVxcblxcbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xcbiAgfVxcblxcbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XFxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSk7XFxuICB9XFxuXFxuICAubW9kYWwtc20ge1xcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5tb2RhbC1sZyxcXG4ubW9kYWwteGwge1xcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAubW9kYWwteGwge1xcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcXG4gIH1cXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4ge1xcbiAgd2lkdGg6IDEwMHZ3O1xcbiAgbWF4LXdpZHRoOiBub25lO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbWFyZ2luOiAwO1xcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtY29udGVudCB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtaGVhZGVyIHtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1ib2R5IHtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1mb290ZXIge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuXFxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biB7XFxuICAgIHdpZHRoOiAxMDB2dztcXG4gICAgbWF4LXdpZHRoOiBub25lO1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIG1hcmdpbjogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWNvbnRlbnQge1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWhlYWRlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1ib2R5IHtcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWZvb3RlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWNvbnRlbnQge1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWZvb3RlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxufVxcbi50b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6IDEwNzA7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB0ZXh0LXNoYWRvdzogbm9uZTtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcXG4gIGxpbmUtYnJlYWs6IGF1dG87XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgb3BhY2l0eTogMDtcXG59XFxuLnRvb2x0aXAuc2hvdyB7XFxuICBvcGFjaXR5OiAwLjk7XFxufVxcbi50b29sdGlwIC50b29sdGlwLWFycm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDAuOHJlbTtcXG4gIGhlaWdodDogMC40cmVtO1xcbn1cXG4udG9vbHRpcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XFxufVxcblxcbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0ge1xcbiAgcGFkZGluZzogMC40cmVtIDA7XFxufVxcbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgYm90dG9tOiAwO1xcbn1cXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICB0b3A6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLWVuZCwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSB7XFxuICBwYWRkaW5nOiAwIDAuNHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93IHtcXG4gIGxlZnQ6IDA7XFxuICB3aWR0aDogMC40cmVtO1xcbiAgaGVpZ2h0OiAwLjhyZW07XFxufVxcbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgcmlnaHQ6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLWJvdHRvbSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0ge1xcbiAgcGFkZGluZzogMC40cmVtIDA7XFxufVxcbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gLnRvb2x0aXAtYXJyb3cge1xcbiAgdG9wOiAwO1xcbn1cXG4uYnMtdG9vbHRpcC1ib3R0b20gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICBib3R0b206IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAgMC40cmVtIDAuNHJlbTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLXN0YXJ0LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0ge1xcbiAgcGFkZGluZzogMCAwLjRyZW07XFxufVxcbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgcmlnaHQ6IDA7XFxuICB3aWR0aDogMC40cmVtO1xcbiAgaGVpZ2h0OiAwLjhyZW07XFxufVxcbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIGxlZnQ6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwIDAuNHJlbSAwLjRyZW07XFxuICBib3JkZXItbGVmdC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLnRvb2x0aXAtaW5uZXIge1xcbiAgbWF4LXdpZHRoOiAyMDBweDtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLnBvcG92ZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgei1pbmRleDogMTA2MDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWF4LXdpZHRoOiAyNzZweDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB0ZXh0LXNoYWRvdzogbm9uZTtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcXG4gIGxpbmUtYnJlYWs6IGF1dG87XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcbi5wb3BvdmVyIC5wb3BvdmVyLWFycm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDAuNXJlbTtcXG59XFxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG59XFxuXFxuLmJzLXBvcG92ZXItdG9wID4gLnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3cge1xcbiAgYm90dG9tOiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xcbn1cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUge1xcbiAgYm90dG9tOiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIGJvdHRvbTogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxuICB3aWR0aDogMC41cmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbn1cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICBsZWZ0OiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgbGVmdDogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxufVxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICB0b3A6IDA7XFxuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHRvcDogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcXG59XFxuLmJzLXBvcG92ZXItYm90dG9tIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiA1MCU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxcmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICByaWdodDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG4gIHdpZHRoOiAwLjVyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICByaWdodDogMDtcXG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHJpZ2h0OiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcXG59XFxuXFxuLnBvcG92ZXItaGVhZGVyIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q4ZDhkODtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4ucG9wb3Zlci1ib2R5IHtcXG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG5cXG4uY2Fyb3VzZWwge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG5cXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XFxuICB0b3VjaC1hY3Rpb246IHBhbi15O1xcbn1cXG5cXG4uY2Fyb3VzZWwtaW5uZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4uY2Fyb3VzZWwtaW5uZXI6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY2xlYXI6IGJvdGg7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XFxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1pdGVtIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xcbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcXG59XFxuXFxuLyogcnRsOmVuZDppZ25vcmUgKi9cXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbSB7XFxuICBvcGFjaXR5OiAwO1xcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcXG4gIHRyYW5zZm9ybTogbm9uZTtcXG59XFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gIHotaW5kZXg6IDE7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICB6LWluZGV4OiAwO1xcbiAgb3BhY2l0eTogMDtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgMC42cztcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIHotaW5kZXg6IDE7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgd2lkdGg6IDE1JTtcXG4gIHBhZGRpbmc6IDA7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDA7XFxuICBvcGFjaXR5OiAwLjU7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVyLCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmZvY3VzLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIG91dGxpbmU6IDA7XFxuICBvcGFjaXR5OiAwLjk7XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xcbiAgbGVmdDogMDtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XFxuICByaWdodDogMDtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMnJlbTtcXG4gIGhlaWdodDogMnJlbTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcXG59XFxuXFxuLyogcnRsOm9wdGlvbnM6IHtcXG4gIFxcXCJhdXRvUmVuYW1lXFxcIjogdHJ1ZSxcXG4gIFxcXCJzdHJpbmdNYXBcXFwiOlsge1xcbiAgICBcXFwibmFtZVxcXCIgICAgOiBcXFwicHJldi1uZXh0XFxcIixcXG4gICAgXFxcInNlYXJjaFxcXCIgIDogXFxcInByZXZcXFwiLFxcbiAgICBcXFwicmVwbGFjZVxcXCIgOiBcXFwibmV4dFxcXCJcXG4gIH0gXVxcbn0gKi9cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjNmZmYnJTNlJTNjcGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmJyUzZSUzY3BhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAyO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1yaWdodDogMTUlO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAxNSU7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgZmxleDogMCAxIGF1dG87XFxuICB3aWR0aDogMzBweDtcXG4gIGhlaWdodDogM3B4O1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1yaWdodDogM3B4O1xcbiAgbWFyZ2luLWxlZnQ6IDNweDtcXG4gIHRleHQtaW5kZW50OiAtOTk5cHg7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgb3BhY2l0eTogMC41O1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG5cXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogMTUlO1xcbiAgYm90dG9tOiAxLjI1cmVtO1xcbiAgbGVmdDogMTUlO1xcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXFxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApO1xcbn1cXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxufVxcbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jYXB0aW9uIHtcXG4gIGNvbG9yOiAjMDAwO1xcbn1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcXG4gIHRvIHtcXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG4uc3Bpbm5lci1ib3JkZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDJyZW07XFxuICBoZWlnaHQ6IDJyZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XFxuICBib3JkZXI6IDAuMjVlbSBzb2xpZCBjdXJyZW50Q29sb3I7XFxuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XFxufVxcblxcbi5zcGlubmVyLWJvcmRlci1zbSB7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG4gIGJvcmRlci13aWR0aDogMC4yZW07XFxufVxcblxcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcXG4gIDAlIHtcXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcXG4gIH1cXG4gIDUwJSB7XFxuICAgIG9wYWNpdHk6IDE7XFxuICAgIHRyYW5zZm9ybTogbm9uZTtcXG4gIH1cXG59XFxuLnNwaW5uZXItZ3JvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMnJlbTtcXG4gIGhlaWdodDogMnJlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG4gIG9wYWNpdHk6IDA7XFxuICBhbmltYXRpb246IDAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XFxufVxcblxcbi5zcGlubmVyLWdyb3ctc20ge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcblxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuc3Bpbm5lci1ib3JkZXIsXFxuLnNwaW5uZXItZ3JvdyB7XFxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcXG4gIH1cXG59XFxuLmNsZWFyZml4OjphZnRlciB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGNsZWFyOiBib3RoO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcblxcbi5saW5rLXByaW1hcnkge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5saW5rLXByaW1hcnk6aG92ZXIsIC5saW5rLXByaW1hcnk6Zm9jdXMge1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxufVxcblxcbi5saW5rLXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuLmxpbmstc2Vjb25kYXJ5OmhvdmVyLCAubGluay1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgY29sb3I6ICM1NjVlNjQ7XFxufVxcblxcbi5saW5rLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5saW5rLXN1Y2Nlc3M6aG92ZXIsIC5saW5rLXN1Y2Nlc3M6Zm9jdXMge1xcbiAgY29sb3I6ICMxNDZjNDM7XFxufVxcblxcbi5saW5rLWluZm8ge1xcbiAgY29sb3I6ICMwZGNhZjA7XFxufVxcbi5saW5rLWluZm86aG92ZXIsIC5saW5rLWluZm86Zm9jdXMge1xcbiAgY29sb3I6ICMzZGQ1ZjM7XFxufVxcblxcbi5saW5rLXdhcm5pbmcge1xcbiAgY29sb3I6ICNmZmMxMDc7XFxufVxcbi5saW5rLXdhcm5pbmc6aG92ZXIsIC5saW5rLXdhcm5pbmc6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmNkMzk7XFxufVxcblxcbi5saW5rLWRhbmdlciB7XFxuICBjb2xvcjogI2RjMzU0NTtcXG59XFxuLmxpbmstZGFuZ2VyOmhvdmVyLCAubGluay1kYW5nZXI6Zm9jdXMge1xcbiAgY29sb3I6ICNiMDJhMzc7XFxufVxcblxcbi5saW5rLWxpZ2h0IHtcXG4gIGNvbG9yOiAjZjhmOWZhO1xcbn1cXG4ubGluay1saWdodDpob3ZlciwgLmxpbmstbGlnaHQ6Zm9jdXMge1xcbiAgY29sb3I6ICNmOWZhZmI7XFxufVxcblxcbi5saW5rLWRhcmsge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5saW5rLWRhcms6aG92ZXIsIC5saW5rLWRhcms6Zm9jdXMge1xcbiAgY29sb3I6ICMxYTFlMjE7XFxufVxcblxcbi5yYXRpbyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLnJhdGlvOjpiZWZvcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nLXRvcDogdmFyKC0tYnMtYXNwZWN0LXJhdGlvKTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG4ucmF0aW8gPiAqIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG59XFxuXFxuLnJhdGlvLTF4MSB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogMTAwJTtcXG59XFxuXFxuLnJhdGlvLTR4MyB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogY2FsYygzIC8gNCAqIDEwMCUpO1xcbn1cXG5cXG4ucmF0aW8tMTZ4OSB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogY2FsYyg5IC8gMTYgKiAxMDAlKTtcXG59XFxuXFxuLnJhdGlvLTIxeDkge1xcbiAgLS1icy1hc3BlY3QtcmF0aW86IGNhbGMoOSAvIDIxICogMTAwJSk7XFxufVxcblxcbi5maXhlZC10b3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTAzMDtcXG59XFxuXFxuLmZpeGVkLWJvdHRvbSB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDMwO1xcbn1cXG5cXG4uc3RpY2t5LXRvcCB7XFxuICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgdG9wOiAwO1xcbiAgei1pbmRleDogMTAyMDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuc3RpY2t5LXNtLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuc3RpY2t5LW1kLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuc3RpY2t5LWxnLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLnN0aWNreS14bC10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5zdGlja3kteHhsLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuLnZpc3VhbGx5LWhpZGRlbixcXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XFxuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XFxuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XFxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XFxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XFxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0cmV0Y2hlZC1saW5rOjphZnRlciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcblxcbi50ZXh0LXRydW5jYXRlIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcblxcbi5hbGlnbi1iYXNlbGluZSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXRvcCB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1taWRkbGUge1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tYm90dG9tIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXRleHQtYm90dG9tIHtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tdGV4dC10b3Age1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbG9hdC1zdGFydCB7XFxuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxvYXQtZW5kIHtcXG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxvYXQtbm9uZSB7XFxuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctYXV0byB7XFxuICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctaGlkZGVuIHtcXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LXZpc2libGUge1xcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LXNjcm9sbCB7XFxuICBvdmVyZmxvdzogc2Nyb2xsICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWlubGluZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtaW5saW5lLWJsb2NrIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1ibG9jayB7XFxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1ncmlkIHtcXG4gIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtdGFibGUge1xcbiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtdGFibGUtcm93IHtcXG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC10YWJsZS1jZWxsIHtcXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtZmxleCB7XFxuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWlubGluZS1mbGV4IHtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLW5vbmUge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93IHtcXG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93LXNtIHtcXG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93LWxnIHtcXG4gIGJveC1zaGFkb3c6IDAgMXJlbSAzcmVtIHJnYmEoMCwgMCwgMCwgMC4xNzUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zaGFkb3ctbm9uZSB7XFxuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1zdGF0aWMge1xcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tcmVsYXRpdmUge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLWZpeGVkIHtcXG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tc3RpY2t5IHtcXG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcXG59XFxuXFxuLnRvcC0wIHtcXG4gIHRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udG9wLTUwIHtcXG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50b3AtMTAwIHtcXG4gIHRvcDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm90dG9tLTAge1xcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3R0b20tNTAge1xcbiAgYm90dG9tOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvdHRvbS0xMDAge1xcbiAgYm90dG9tOiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zdGFydC0wIHtcXG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0YXJ0LTUwIHtcXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc3RhcnQtMTAwIHtcXG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmVuZC0wIHtcXG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5lbmQtNTAge1xcbiAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZW5kLTEwMCB7XFxuICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZSB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZS14IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZS15IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyIHtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0wIHtcXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXRvcCB7XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXRvcC0wIHtcXG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1lbmQge1xcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWVuZC0wIHtcXG4gIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWJvdHRvbS0wIHtcXG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zdGFydCB7XFxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zdGFydC0wIHtcXG4gIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItcHJpbWFyeSB7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zZWNvbmRhcnkge1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItc3VjY2VzcyB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1pbmZvIHtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXdhcm5pbmcge1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItZGFuZ2VyIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWxpZ2h0IHtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWRhcmsge1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItd2hpdGUge1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMCB7XFxuICBib3JkZXItd2lkdGg6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0xIHtcXG4gIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMiB7XFxuICBib3JkZXItd2lkdGg6IDJweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTMge1xcbiAgYm9yZGVyLXdpZHRoOiAzcHggIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci00IHtcXG4gIGJvcmRlci13aWR0aDogNHB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItNSB7XFxuICBib3JkZXItd2lkdGg6IDVweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy0yNSB7XFxuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LTUwIHtcXG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctNzUge1xcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy0xMDAge1xcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctYXV0byB7XFxuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXctMTAwIHtcXG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udnctMTAwIHtcXG4gIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWluLXZ3LTEwMCB7XFxuICBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTI1IHtcXG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTUwIHtcXG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTc1IHtcXG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTEwMCB7XFxuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtYXV0byB7XFxuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1oLTEwMCB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi52aC0xMDAge1xcbiAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWluLXZoLTEwMCB7XFxuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1maWxsIHtcXG4gIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXJvdyB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWNvbHVtbiB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXJvdy1yZXZlcnNlIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtZ3Jvdy0wIHtcXG4gIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1ncm93LTEge1xcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXNocmluay0wIHtcXG4gIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXNocmluay0xIHtcXG4gIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXdyYXAge1xcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LW5vd3JhcCB7XFxuICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC13cmFwLXJldmVyc2Uge1xcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0wIHtcXG4gIGdyaWQtZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICBnYXA6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0xIHtcXG4gIGdyaWQtZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0yIHtcXG4gIGdyaWQtZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtMyB7XFxuICBncmlkLWdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtNCB7XFxuICBncmlkLWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTUge1xcbiAgZ3JpZC1nYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LXN0YXJ0IHtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWVuZCB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1hcm91bmQge1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1ldmVubHkge1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1lbmQge1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1jZW50ZXIge1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1zdHJldGNoIHtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcXG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtZW5kIHtcXG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LWNlbnRlciB7XFxuICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7XFxuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LWFyb3VuZCB7XFxuICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7XFxuICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWF1dG8ge1xcbiAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tc2VsZi1zdGFydCB7XFxuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWVuZCB7XFxuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcXG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xcbiAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3JkZXItZmlyc3Qge1xcbiAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0wIHtcXG4gIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0xIHtcXG4gIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0yIHtcXG4gIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0zIHtcXG4gIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci00IHtcXG4gIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci01IHtcXG4gIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci1sYXN0IHtcXG4gIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTAge1xcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTEge1xcbiAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTIge1xcbiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMyB7XFxuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tNCB7XFxuICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS01IHtcXG4gIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS1hdXRvIHtcXG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMCB7XFxuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC0xIHtcXG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTIge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTMge1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtNCB7XFxuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtNSB7XFxuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC1hdXRvIHtcXG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTAge1xcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktMSB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0yIHtcXG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0zIHtcXG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTQge1xcbiAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTUge1xcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktYXV0byB7XFxuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC0wIHtcXG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTEge1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMiB7XFxuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTMge1xcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtNCB7XFxuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTUge1xcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtYXV0byB7XFxuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS0wIHtcXG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMSB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTIge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTMge1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS00IHtcXG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS01IHtcXG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtYXV0byB7XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTAge1xcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMSB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0yIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMyB7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi00IHtcXG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItNSB7XFxuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi1hdXRvIHtcXG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTAge1xcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTEge1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTIge1xcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMyB7XFxuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtNCB7XFxuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy01IHtcXG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy1hdXRvIHtcXG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTAge1xcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0xIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMiB7XFxuICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMyB7XFxuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTQge1xcbiAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTUge1xcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTEge1xcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTMge1xcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0wIHtcXG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMSB7XFxuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTIge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMyB7XFxuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTQge1xcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktNSB7XFxuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTAge1xcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTEge1xcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTIge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMyB7XFxuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtNCB7XFxuICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC01IHtcXG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS0wIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTEge1xcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTMge1xcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMCB7XFxuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMSB7XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMiB7XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0zIHtcXG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi00IHtcXG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTUge1xcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTAge1xcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0xIHtcXG4gIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTQge1xcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTUge1xcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy0xIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtMiB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zMjVyZW0gKyAwLjl2dykgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTMge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuM3JlbSArIDAuNnZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dykgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTUge1xcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy02IHtcXG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnN0LWl0YWxpYyB7XFxuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzdC1ub3JtYWwge1xcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1saWdodCB7XFxuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1saWdodGVyIHtcXG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ub3JtYWwge1xcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnctYm9sZCB7XFxuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ib2xkZXIge1xcbiAgZm9udC13ZWlnaHQ6IGJvbGRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1sb3dlcmNhc2Uge1xcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC11cHBlcmNhc2Uge1xcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1jYXBpdGFsaXplIHtcXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXN0YXJ0IHtcXG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZW5kIHtcXG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWNlbnRlciB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtcHJpbWFyeSB7XFxuICBjb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtc3VjY2VzcyB7XFxuICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1pbmZvIHtcXG4gIGNvbG9yOiAjMGRjYWYwICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXdhcm5pbmcge1xcbiAgY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWxpZ2h0IHtcXG4gIGNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWRhcmsge1xcbiAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2hpdGUge1xcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtYm9keSB7XFxuICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1tdXRlZCB7XFxuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1ibGFjay01MCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXdoaXRlLTUwIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtcmVzZXQge1xcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLTEge1xcbiAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLXNtIHtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5saC1iYXNlIHtcXG4gIGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLWxnIHtcXG4gIGxpbmUtaGVpZ2h0OiAyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1wcmltYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXNlY29uZGFyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1zdWNjZXNzIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWluZm8ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctd2FybmluZyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1kYW5nZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctbGlnaHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctZGFyayB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1ib2R5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXdoaXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXRyYW5zcGFyZW50IHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1ncmFkaWVudCB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1icy1ncmFkaWVudCkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd3JhcCB7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LW5vd3JhcCB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi1saW5lLXRocm91Z2gge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2ggIWltcG9ydGFudDtcXG59XFxuXFxuLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xcbi50ZXh0LWJyZWFrIHtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4vKiBydGw6ZW5kOnJlbW92ZSAqL1xcbi5mb250LW1vbm9zcGFjZSB7XFxuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpICFpbXBvcnRhbnQ7XFxufVxcblxcbi51c2VyLXNlbGVjdC1hbGwge1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYWxsICFpbXBvcnRhbnQ7XFxuICAtbXMtdXNlci1zZWxlY3Q6IGFsbCAhaW1wb3J0YW50O1xcbiAgICAgIHVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDtcXG59XFxuXFxuLnVzZXItc2VsZWN0LWF1dG8ge1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xcbiAgLW1zLXVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgICAgdXNlci1zZWxlY3Q6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLnVzZXItc2VsZWN0LW5vbmUge1xcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XFxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLW5vbmUge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLWF1dG8ge1xcbiAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQge1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0wIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtMSB7XFxuICBib3JkZXItcmFkaXVzOiAwLjJyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtMiB7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLTMge1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLWNpcmNsZSB7XFxuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtcGlsbCB7XFxuICBib3JkZXItcmFkaXVzOiA1MHJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC10b3Age1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtZW5kIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1ib3R0b20ge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtc3RhcnQge1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udmlzaWJsZSB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5pbnZpc2libGUge1xcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmZsb2F0LXNtLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1zbS1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1zbS1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20taW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0wIHtcXG4gICAgZ3JpZC1nYXA6IDAgIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTEge1xcbiAgICBncmlkLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMiB7XFxuICAgIGdyaWQtZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMyB7XFxuICAgIGdyaWQtZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS00IHtcXG4gICAgZ3JpZC1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS01IHtcXG4gICAgZ3JpZC1nYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1ldmVubHkge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1jZW50ZXIge1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLXN0YXJ0IHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbiB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWF1dG8ge1xcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1jZW50ZXIge1xcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tZmlyc3Qge1xcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0yIHtcXG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS01IHtcXG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTEge1xcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tNCB7XFxuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tMiB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTUge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS0wIHtcXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTMge1xcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTAge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tMyB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS0wIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1zbS1zdGFydCB7XFxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXNtLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1zbS1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuZmxvYXQtbWQtc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LW1kLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LW1kLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTAge1xcbiAgICBncmlkLWdhcDogMCAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtMSB7XFxuICAgIGdyaWQtZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC0yIHtcXG4gICAgZ3JpZC1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC0zIHtcXG4gICAgZ3JpZC1nYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTQge1xcbiAgICBncmlkLWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTUge1xcbiAgICBncmlkLWdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWVuZCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHtcXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtZW5kIHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtc3RyZXRjaCB7XFxuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1tZC1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTEge1xcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTQge1xcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMCB7XFxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0zIHtcXG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLWF1dG8ge1xcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC00IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMiB7XFxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTUge1xcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMiB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTUge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LW1kLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LW1kLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5mbG9hdC1sZy1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbGctZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbGctbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctd3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctMCB7XFxuICAgIGdyaWQtZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy0xIHtcXG4gICAgZ3JpZC1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTIge1xcbiAgICBncmlkLWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTMge1xcbiAgICBncmlkLWdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctNCB7XFxuICAgIGdyaWQtZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctNSB7XFxuICAgIGdyaWQtZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbGctc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1sZy1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbGctY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5mbG9hdC14bC1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQteGwtZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQteGwtbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtd3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMCB7XFxuICAgIGdyaWQtZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC0xIHtcXG4gICAgZ3JpZC1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTIge1xcbiAgICBncmlkLWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTMge1xcbiAgICBncmlkLWdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtNCB7XFxuICAgIGdyaWQtZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtNSB7XFxuICAgIGdyaWQtZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteGwtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14bC1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteGwtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5mbG9hdC14eGwtc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXh4bC1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14eGwtbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0wIHtcXG4gICAgZ3JpZC1nYXA6IDAgIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0xIHtcXG4gICAgZ3JpZC1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0yIHtcXG4gICAgZ3JpZC1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtMyB7XFxuICAgIGdyaWQtZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtNCB7XFxuICAgIGdyaWQtZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTUge1xcbiAgICBncmlkLWdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteHhsLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteHhsLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteHhsLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5mcy0xIHtcXG4gICAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mcy0yIHtcXG4gICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZnMtMyB7XFxuICAgIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZzLTQge1xcbiAgICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgcHJpbnQge1xcbiAgLmQtcHJpbnQtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuXFxuLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLmNzcy5tYXAgKi9cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yb290LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NvbnRhaW5lci5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2xhYmVscy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXRleHQuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jaGVjay5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXJhbmdlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2FyZC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hY2NvcmRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wYWdpbmF0aW9uLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FsZXJ0LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nsb3NlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RvYXN0cy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNldC10ZXh0LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fY29sb3JlZC1saW5rcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3JhdGlvLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcG9zaXRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL192aXN1YWxseS1oaWRkZW4uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3N0cmV0Y2hlZC1saW5rLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fdGV4dC10cnVuY2F0aW9uLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL191dGlsaXRpZXMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FwaS5zY3NzXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RUFBQTtBQ0FBO0VBR0ksa0JBQUE7RUFBQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsa0JBQUE7RUFBQSxpQkFBQTtFQUFBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxtQkFBQTtFQUFBLGtCQUFBO0VBQUEsa0JBQUE7RUFBQSxnQkFBQTtFQUFBLGtCQUFBO0VBQUEsdUJBQUE7RUFJQSxxQkFBQTtFQUFBLHVCQUFBO0VBQUEscUJBQUE7RUFBQSxrQkFBQTtFQUFBLHFCQUFBO0VBQUEsb0JBQUE7RUFBQSxtQkFBQTtFQUFBLGtCQUFBO0VBS0YscU5BQUE7RUFDQSx5R0FBQTtFQUNBLHlGQUFBO0FGa0JGOztBR2pCQTs7O0VBR0Usc0JBQUE7QUhvQkY7O0FHUEk7RUFKSjtJQUtNLHVCQUFBO0VIV0o7QUFDRjs7QUdDQTtFQUNFLFNBQUE7RUFDQSxzQ0N5VzRCO0VDN0p4QixlQUxJO0VGck1SLGdCQ21YNEI7RURsWDVCLGdCQ3dYNEI7RUR2WDVCLGNDbENTO0VEb0NULHNCQzdDUztFRDhDVCw4QkFBQTtFQUNBLDZDQUFBO0FIQ0Y7O0FHWUE7RUFDRSxxQkFBQTtBSFRGOztBR2tCQTtFQUNFLGNBQUE7RUFDQSxjQ3NaNEI7RURyWjVCLDhCQUFBO0VBQ0EsU0FBQTtFQUNBLGFDcVo0QjtBSnBhOUI7O0FHa0JBO0VBQ0UsV0M2UTRCO0FKNVI5Qjs7QUd5QkE7RUFDRSxhQUFBO0VBQ0EscUJDNlY0QjtFRDFWNUIsZ0JDNlY0QjtFRDVWNUIsZ0JDNlY0QjtBSnJYOUI7O0FHNEJBO0VFb0pRLGlDQUFBO0FMNUtSO0FLVUk7RUZjSjtJRTJKUSxpQkFBQTtFTC9LTjtBQUNGOztBR3dCQTtFRStJUSxpQ0FBQTtBTG5LUjtBS0NJO0VGbUJKO0lFc0pRLGVBQUE7RUx0S047QUFDRjs7QUdvQkE7RUUwSVEsK0JBQUE7QUwxSlI7QUtSSTtFRndCSjtJRWlKUSxrQkFBQTtFTDdKTjtBQUNGOztBR2dCQTtFRXFJUSxpQ0FBQTtBTGpKUjtBS2pCSTtFRjZCSjtJRTRJUSxpQkFBQTtFTHBKTjtBQUNGOztBR1lBO0VFNEhNLGtCQUxJO0FML0hWOztBR2FBO0VFdUhNLGVBTEk7QUwzSFY7O0FHb0JBO0VBQ0UsYUFBQTtFQUNBLG1CQ3dKMEI7QUp6SzVCOztBRzRCQTs7RUFFRSwwQkFBQTtFQUNBLGlDQUFBO0VBQ0EsWUFBQTtFQUNBLDhCQUFBO0FIekJGOztBRytCQTtFQUNFLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBSDVCRjs7QUdrQ0E7O0VBRUUsa0JBQUE7QUgvQkY7O0FHa0NBOzs7RUFHRSxhQUFBO0VBQ0EsbUJBQUE7QUgvQkY7O0FHa0NBOzs7O0VBSUUsZ0JBQUE7QUgvQkY7O0FHa0NBO0VBQ0UsZ0JDaU80QjtBSmhROUI7O0FHb0NBO0VBQ0UscUJBQUE7RUFDQSxjQUFBO0FIakNGOztBR3VDQTtFQUNFLGdCQUFBO0FIcENGOztBRzRDQTs7RUFFRSxtQkMwTTRCO0FKblA5Qjs7QUdpREE7RUV1Qk0sa0JBTEk7QUwvRFY7O0FHb0RBO0VBQ0UsY0NrUTRCO0VEalE1Qix5QkN5UTRCO0FKMVQ5Qjs7QUcwREE7O0VBRUUsa0JBQUE7RUVHSSxpQkFMSTtFRklSLGNBQUE7RUFDQSx3QkFBQTtBSHZERjs7QUcwREE7RUFBTSxlQUFBO0FIdEROOztBR3VEQTtFQUFNLFdBQUE7QUhuRE47O0FHd0RBO0VBQ0UsY0MvTlE7RURnT1IsMEJDdUJ3QztBSjVFMUM7QUd1REU7RUFDRSxjQ3NCc0M7QUozRTFDOztBR2dFRTtFQUVFLGNBQUE7RUFDQSxxQkFBQTtBSDlESjs7QUdxRUE7Ozs7RUFJRSxxQ0N1SDRCO0VDOUp4QixjQUxJO0VGOENSLCtCQUFBO0VBQ0EsMkJBQUE7QUhsRUY7O0FHeUVBO0VBQ0UsY0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7RUVyREksa0JBTEk7QUxYVjtBRzBFRTtFRTFESSxrQkFMSTtFRmlFTixjQUFBO0VBQ0Esa0JBQUE7QUh4RUo7O0FHNEVBO0VFakVNLGtCQUxJO0VGd0VSLGNDclJRO0VEc1JSLHFCQUFBO0FIekVGO0FHNEVFO0VBQ0UsY0FBQTtBSDFFSjs7QUc4RUE7RUFDRSxzQkFBQTtFRTdFSSxrQkFMSTtFRm9GUixXQ2xVUztFRG1VVCx5QkMxVFM7RUVDUCxxQkFBQTtBTitPSjtBRzZFRTtFQUNFLFVBQUE7RUVwRkUsY0FMSTtFRjJGTixnQkNvRjBCO0FKL0o5Qjs7QUdvRkE7RUFDRSxnQkFBQTtBSGpGRjs7QUd1RkE7O0VBRUUsc0JBQUE7QUhwRkY7O0FHNEZBO0VBQ0Usb0JBQUE7RUFDQSx5QkFBQTtBSHpGRjs7QUc0RkE7RUFDRSxtQkM2STRCO0VENUk1QixzQkM0STRCO0VEM0k1QixjQ3JXUztFRHNXVCxnQkFBQTtBSHpGRjs7QUdnR0E7RUFFRSxtQkFBQTtFQUNBLGdDQUFBO0FIOUZGOztBR2lHQTs7Ozs7O0VBTUUscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7QUg5RkY7O0FHc0dBO0VBQ0UscUJBQUE7QUhuR0Y7O0FHeUdBO0VBRUUsZ0JBQUE7QUh2R0Y7O0FHK0dBO0VBQ0UsVUFBQTtBSDVHRjs7QUdpSEE7Ozs7O0VBS0UsU0FBQTtFQUNBLG9CQUFBO0VFbkxJLGtCQUxJO0VGMExSLG9CQUFBO0FIOUdGOztBR21IQTs7RUFFRSxvQkFBQTtBSGhIRjs7QUdzSEE7RUFDRSxlQUFBO0FIbkhGOztBR3lIQTtFQUNFLGlCQUFBO0FIdEhGOztBRzRIQTtFQUNFLGFBQUE7QUh6SEY7O0FHaUlBOzs7O0VBSUUsMEJBQUE7QUg5SEY7QUdpSUk7Ozs7RUFDRSxlQUFBO0FINUhOOztBR21JQTtFQUNFLFVBQUE7RUFDQSxrQkFBQTtBSGhJRjs7QUdxSUE7RUFDRSxnQkFBQTtBSGxJRjs7QUc0SUE7RUFDRSxZQUFBO0VBQ0EsVUFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0FIeklGOztBR2lKQTtFQUNFLFdBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtFQUNBLHFCQzNCNEI7RUMzT3RCLGlDQUFBO0VGeVFOLG9CQUFBO0FIL0lGO0FLNVJJO0VGb2FKO0lFM1BRLGlCQUFBO0VMdUhOO0FBQ0Y7QUc0SUU7RUFDRSxXQUFBO0FIMUlKOztBR2lKQTs7Ozs7OztFQU9FLFVBQUE7QUg5SUY7O0FHaUpBO0VBQ0UsWUFBQTtBSDlJRjs7QUd1SkE7RUFDRSxvQkFBQTtFQUNBLDZCQUFBO0FIcEpGOztBRzRKQTs7Ozs7OztDQUFBO0FBV0E7RUFDRSx3QkFBQTtBSDVKRjs7QUdpS0E7RUFDRSxVQUFBO0FIOUpGOztBR3FLQTtFQUNFLGFBQUE7QUhsS0Y7O0FHd0tBO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0FIcktGOztBRzBLQTtFQUNFLHFCQUFBO0FIdktGOztBRzRLQTtFQUNFLFNBQUE7QUh6S0Y7O0FHZ0xBO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0FIN0tGOztBR3FMQTtFQUNFLHdCQUFBO0FIbExGOztBRzBMQTtFQUNFLHdCQUFBO0FIdkxGOztBT3RhQTtFRitOTSxrQkFMSTtFRXhOUixnQkh3YjRCO0FKZjlCOztBT3BhRTtFRjROTSxpQ0FBQTtFRTFOSixnQkg0YWtCO0VHM2FsQixnQkg4WjBCO0FKUzlCO0FLaFhJO0VFMURGO0lGbU9NLGVBQUE7RUwyTU47QUFDRjs7QU8vYUU7RUY0Tk0saUNBQUE7RUUxTkosZ0JINGFrQjtFRzNhbEIsZ0JIOFowQjtBSm9COUI7QUszWEk7RUUxREY7SUZtT00saUJBQUE7RUxzTk47QUFDRjs7QU8xYkU7RUY0Tk0saUNBQUE7RUUxTkosZ0JINGFrQjtFRzNhbEIsZ0JIOFowQjtBSitCOUI7QUt0WUk7RUUxREY7SUZtT00sZUFBQTtFTGlPTjtBQUNGOztBT3JjRTtFRjROTSxpQ0FBQTtFRTFOSixnQkg0YWtCO0VHM2FsQixnQkg4WjBCO0FKMEM5QjtBS2paSTtFRTFERjtJRm1PTSxpQkFBQTtFTDRPTjtBQUNGOztBT2hkRTtFRjROTSxpQ0FBQTtFRTFOSixnQkg0YWtCO0VHM2FsQixnQkg4WjBCO0FKcUQ5QjtBSzVaSTtFRTFERjtJRm1PTSxlQUFBO0VMdVBOO0FBQ0Y7O0FPM2RFO0VGNE5NLGlDQUFBO0VFMU5KLGdCSDRha0I7RUczYWxCLGdCSDhaMEI7QUpnRTlCO0FLdmFJO0VFMURGO0lGbU9NLGlCQUFBO0VMa1FOO0FBQ0Y7O0FPaGRBO0VDckRFLGVBQUE7RUFDQSxnQkFBQTtBUnlnQkY7O0FPaGRBO0VDMURFLGVBQUE7RUFDQSxnQkFBQTtBUjhnQkY7O0FPbGRBO0VBQ0UscUJBQUE7QVBxZEY7QU9uZEU7RUFDRSxvQkgrYTBCO0FKc0M5Qjs7QU8zY0E7RUY0S00sa0JBTEk7RUVyS1IseUJBQUE7QVA4Y0Y7O0FPMWNBO0VBQ0UsbUJIa0tPO0VDR0gsa0JBTEk7QUw4U1Y7QU8zY0U7RUFDRSxnQkFBQTtBUDZjSjs7QU96Y0E7RUFDRSxpQkFBQTtFQUNBLG1CSHdKTztFQ0dILGtCQUxJO0VFcEpSLGNIcEZTO0FKZ2lCWDtBTzFjRTtFQUNFLGFBQUE7QVA0Y0o7O0FTMWlCQTtFQ0lFLGVBQUE7RUFHQSxZQUFBO0FWd2lCRjs7QVN6aUJBO0VBQ0UsZ0JMd3RDa0M7RUt2dENsQyxzQkxQUztFS1FULHlCQUFBO0VIRUUsc0JBQUE7RUlQRixlQUFBO0VBR0EsWUFBQTtBVmlqQkY7O0FTbmlCQTtFQUVFLHFCQUFBO0FUcWlCRjs7QVNsaUJBO0VBQ0UscUJBQUE7RUFDQSxjQUFBO0FUcWlCRjs7QVNsaUJBO0VKcU5NLGtCQUxJO0VJOU1SLGNMMUJTO0FKK2pCWDs7QVd2a0JFOzs7Ozs7O0VDSEEsV0FBQTtFQUNBLDBDQUFBO0VBQ0EseUNBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0Fab2xCRjs7QWE1aEJJO0VGNUNFO0lBQ0UsZ0JQ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QjBaNEI7RWdCelo1QixnQmhCK1o0QjtFZ0I5WjVCLGNoQktTO0VnQkpULHNCaEJMUztFZ0JNVCw0QkFBQTtFQUNBLHlCQUFBO0VBQ0Esd0JBQUE7RUFBQSxxQkFBQTtFQUFBLGdCQUFBO0VkRUUsc0JBQUE7RWVGRSx3RURNSjtBcEIwbEVGO0FxQjVsRU07RURoQk47SUNpQlEsZ0JBQUE7RXJCK2xFTjtBQUNGO0FvQjdsRUU7RUFDRSxnQkFBQTtBcEIrbEVKO0FvQjdsRUk7RUFDRSxlQUFBO0FwQitsRU47QW9CMWxFRTtFQUNFLGNoQmpCTztFZ0JrQlAsc0JoQjNCTztFZ0I0QlAscUJoQmlvQm9DO0VnQmhvQnBDLFVBQUE7RUFLRSxrRGhCa2hCMEI7QUpza0RoQztBb0JqbEVFO0VBRUUsYUFBQTtBcEJrbEVKO0FvQjlrRUU7RUFDRSxjaEIxQ087RWdCNENQLFVBQUE7QXBCK2tFSjtBb0JsbEVFO0VBQ0UsY2hCMUNPO0VnQjRDUCxVQUFBO0FwQitrRUo7QW9CdmtFRTtFQUVFLHlCaEIxRE87RWdCNkRQLFVBQUE7QXBCc2tFSjtBb0Jqa0VFO0VBQ0UseUJBQUE7RUFDQSwwQkFBQTtFQUNBLDBCaEJxZTBCO0VnQnBlMUIsY2hCL0RPO0VrQmJULHlCbEJNUztFZ0J3RVAsb0JBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLDRCaEI4UTBCO0VnQjdRMUIsZ0JBQUE7RUN2RUUscUlEd0VGO0FwQm1rRUo7QXFCdm9FTTtFRHdESjtJQ3ZETSxnQkFBQTtFckIwb0VOO0FBQ0Y7QW9CcGtFRTtFQUNFLHlCaEIrc0I4QjtBSnUzQ2xDO0FvQm5rRUU7RUFDRSx5QkFBQTtFQUNBLDBCQUFBO0VBQ0EsMEJoQmlkMEI7RWdCaGQxQixjaEJuRk87RWtCYlQseUJsQk1TO0VnQjRGUCxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsNEJoQjBQMEI7RWdCelAxQixnQkFBQTtFQzNGRSw2SUQ0RkY7RUM1RkUscUlENEZGO0FwQnFrRUo7QXFCN3BFTTtFRDRFSjtJQzNFTSx3QkFBQTtJQUFBLGdCQUFBO0VyQmdxRU47QUFDRjtBb0J2a0VFO0VBQ0UseUJoQjRyQjhCO0FKNjRDbEM7O0FvQmhrRUE7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQmhCNFM0QjtFZ0IzUzVCLGNoQjlHUztFZ0IrR1QsNkJBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0FwQm1rRUY7QW9CamtFRTtFQUVFLGdCQUFBO0VBQ0EsZUFBQTtBcEJra0VKOztBb0J2akVBO0VBQ0Usc0NoQmlpQnNDO0VnQmhpQnRDLHVCQUFBO0VmdUdJLG1CQUxJO0VDcE9OLHFCQUFBO0FOOHJFSjtBb0J2akVFO0VBQ0UsdUJBQUE7RUFDQSx3QkFBQTtFQUNBLHlCaEJtYTBCO0FKc3BEOUI7QW9CdGpFRTtFQUNFLHVCQUFBO0VBQ0Esd0JBQUE7RUFDQSx5QmhCNlowQjtBSjJwRDlCOztBb0JwakVBO0VBQ0Usb0NoQjhnQnNDO0VnQjdnQnRDLG9CQUFBO0VmbUZJLGtCQUxJO0VDcE9OLHFCQUFBO0FOK3NFSjtBb0JwakVFO0VBQ0Usb0JBQUE7RUFDQSxxQkFBQTtFQUNBLHVCaEJtWjBCO0FKbXFEOUI7QW9CbmpFRTtFQUNFLG9CQUFBO0VBQ0EscUJBQUE7RUFDQSx1QmhCNlkwQjtBSndxRDlCOztBb0I3aUVFO0VBQ0UsdUNoQm9mb0M7QUo0akR4QztBb0I3aUVFO0VBQ0Usc0NoQmlmb0M7QUo4akR4QztBb0I1aUVFO0VBQ0Usb0NoQjhlb0M7QUpna0R4Qzs7QW9CemlFQTtFQUNFLGVBQUE7RUFDQSxZQUFBO0VBQ0EsaUJoQm9XNEI7QUp3c0Q5QjtBb0IxaUVFO0VBQ0UsZUFBQTtBcEI0aUVKO0FvQnppRUU7RUFDRSxhQUFBO0VkcE1BLHNCQUFBO0FOZ3ZFSjtBb0J4aUVFO0VBQ0UsYUFBQTtFZHpNQSxzQkFBQTtBTm92RUo7O0F1Qmp3RUE7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLDBDQUFBO0VsQm1QSSxlQUxJO0VrQjNPUixnQm5CeVo0QjtFbUJ4WjVCLGdCbkI4WjRCO0VtQjdaNUIsY25CSVM7RW1CSFQsc0JuQk5TO0VtQk9ULGlQQUFBO0VBQ0EsNEJBQUE7RUFDQSx5Q25CNHVCa0M7RW1CM3VCbEMsMEJuQjR1QmtDO0VtQjN1QmxDLHlCQUFBO0VqQkRFLHNCQUFBO0VpQklGLHdCQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTtBdkJrd0VGO0F1Qmh3RUU7RUFDRSxxQm5CNG9Cb0M7RW1CM29CcEMsVUFBQTtFQUtFLGtEbkI4dUI0QjtBSmdoRGxDO0F1QjF2RUU7RUFFRSxzQm5CK2dCMEI7RW1COWdCMUIsc0JBQUE7QXZCMnZFSjtBdUJ4dkVFO0VBQ0UsY25CNUJPO0VtQjZCUCx5Qm5CakNPO0FKMnhFWDtBdUJydkVFO0VBQ0Usa0JBQUE7RUFDQSwwQkFBQTtBdkJ1dkVKOztBdUJudkVBO0VBQ0Usb0JuQnVnQjRCO0VtQnRnQjVCLHVCbkJzZ0I0QjtFbUJyZ0I1QixvQm5Cc2dCNEI7RUNwVXhCLG1CQUxJO0FMMGpFVjs7QXVCbnZFQTtFQUNFLG1CbkJvZ0I0QjtFbUJuZ0I1QixzQm5CbWdCNEI7RW1CbGdCNUIsa0JuQm1nQjRCO0VDeFV4QixrQkFMSTtBTGlrRVY7O0F3Qm56RUE7RUFDRSxjQUFBO0VBQ0Esa0JwQnFyQndDO0VvQnByQnhDLG1CcEJxckJ3QztFb0JwckJ4Qyx1QnBCcXJCd0M7QUppb0QxQztBd0JwekVFO0VBQ0UsV0FBQTtFQUNBLG1CQUFBO0F4QnN6RUo7O0F3Qmx6RUE7RUFDRSxVcEJ5cUJ3QztFb0J4cUJ4QyxXcEJ3cUJ3QztFb0J2cUJ4QyxrQkFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JwQmJTO0VvQmNULDRCQUFBO0VBQ0EsMkJBQUE7RUFDQSx3QkFBQTtFQUNBLHFDcEI0cUJ3QztFb0IzcUJ4Qyx3QkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7RUFDQSxpQ0FBQTtFQUFBLG1CQUFBO0F4QnF6RUY7QXdCbHpFRTtFbEJaRSxxQkFBQTtBTmkwRUo7QXdCanpFRTtFQUVFLGtCcEJtcUJzQztBSitvRDFDO0F3Qi95RUU7RUFDRSx1QnBCMHBCc0M7QUp1cEQxQztBd0I5eUVFO0VBQ0UscUJwQnluQm9DO0VvQnhuQnBDLFVBQUE7RUFDQSxrRHBCOGdCNEI7QUpreURoQztBd0I3eUVFO0VBQ0UseUJwQlpNO0VvQmFOLHFCcEJiTTtBSjR6RVY7QXdCN3lFSTtFQUlJLCtPQUFBO0F4QjR5RVI7QXdCeHlFSTtFQUlJLHVKQUFBO0F4QnV5RVI7QXdCbHlFRTtFQUNFLHlCcEJqQ007RW9Ca0NOLHFCcEJsQ007RW9CdUNKLHlPQUFBO0F4Qmd5RU47QXdCNXhFRTtFQUNFLG9CQUFBO0VBQ0EsWUFBQTtFQUNBLFlwQmtvQnVDO0FKNHBEM0M7QXdCdnhFSTtFQUNFLFlwQjBuQnFDO0FKK3BEM0M7O0F3QjN3RUE7RUFDRSxtQnBCaW5CZ0M7QUo2cERsQztBd0I1d0VFO0VBQ0UsVXBCNm1COEI7RW9CNW1COUIsbUJBQUE7RUFDQSx3S0FBQTtFQUNBLGdDQUFBO0VsQi9GQSxrQkFBQTtFZUZFLGlER21HRjtBeEI4d0VKO0FxQjcyRU07RUd5Rko7SUh4Rk0sZ0JBQUE7RXJCZzNFTjtBQUNGO0F3Qmp4RUk7RUFDRSwwSkFBQTtBeEJteEVOO0F3Qmh4RUk7RUFDRSxpQ3BCNG1CNEI7RW9Cdm1CMUIsdUpBQUE7QXhCOHdFUjs7QXdCeHdFQTtFQUNFLHFCQUFBO0VBQ0Esa0JwQmltQmdDO0FKMHFEbEM7O0F3Qnh3RUE7RUFDRSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7QXhCMndFRjtBd0J2d0VJO0VBQ0Usb0JBQUE7RUFDQSxZQUFBO0VBQ0EsYXBCOGN3QjtBSjJ6RDlCOztBeUJ2NUVBO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EsNkJBQUE7RUFDQSx3QkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7QXpCMDVFRjtBeUJ4NUVFO0VBQ0UsVUFBQTtBekIwNUVKO0F5QnQ1RUk7RUFBMEIsa0VyQmt4QmE7QUp1b0QzQztBeUJ4NUVJO0VBQTBCLGtFckJpeEJhO0FKMG9EM0M7QXlCeDVFRTtFQUNFLFNBQUE7QXpCMDVFSjtBeUJ2NUVFO0VBQ0UsV3JCbXdCdUM7RXFCbHdCdkMsWXJCa3dCdUM7RXFCandCdkMsb0JBQUE7RUh6QkYseUJsQmtDUTtFcUJQTixTckJrd0J1QztFRS93QnZDLG1CQUFBO0VlRkUsb0hJa0JGO0VKbEJFLDRHSWtCRjtFQUNBLHdCQUFBO0VBQUEsZ0JBQUE7QXpCdzVFSjtBcUJ2NkVNO0VJTUo7SUpMTSx3QkFBQTtJQUFBLGdCQUFBO0VyQjA2RU47QUFDRjtBeUIzNUVJO0VIakNGLHlCbEJreUJ5QztBSjZwRDNDO0F5Qno1RUU7RUFDRSxXckI0dUI4QjtFcUIzdUI5QixjckI0dUI4QjtFcUIzdUI5QixrQkFBQTtFQUNBLGVyQjJ1QjhCO0VxQjF1QjlCLHlCckJwQ087RXFCcUNQLHlCQUFBO0VuQjlCQSxtQkFBQTtBTjA3RUo7QXlCdjVFRTtFQUNFLFdyQnd1QnVDO0VxQnZ1QnZDLFlyQnV1QnVDO0VrQjF4QnpDLHlCbEJrQ1E7RXFCbUJOLFNyQnd1QnVDO0VFL3dCdkMsbUJBQUE7RWVGRSxpSEk0Q0Y7RUo1Q0UsNEdJNENGO0VBQ0EscUJBQUE7RUFBQSxnQkFBQTtBekJ3NUVKO0FxQmo4RU07RUlpQ0o7SUpoQ00scUJBQUE7SUFBQSxnQkFBQTtFckJvOEVOO0FBQ0Y7QXlCMzVFSTtFSDNERix5QmxCa3lCeUM7QUp1ckQzQztBeUJ6NUVFO0VBQ0UsV3JCa3RCOEI7RXFCanRCOUIsY3JCa3RCOEI7RXFCanRCOUIsa0JBQUE7RUFDQSxlckJpdEI4QjtFcUJodEI5Qix5QnJCOURPO0VxQitEUCx5QkFBQTtFbkJ4REEsbUJBQUE7QU5vOUVKO0F5QnY1RUU7RUFDRSxvQkFBQTtBekJ5NUVKO0F5QnY1RUk7RUFDRSx5QnJCdEVLO0FKKzlFWDtBeUJ0NUVJO0VBQ0UseUJyQjFFSztBSmsrRVg7O0EwQi8rRUE7RUFDRSxrQkFBQTtBMUJrL0VGO0EwQmgvRUU7O0VBRUUsMEJ0Qnl5QjhCO0VzQnh5QjlCLHFCQUFBO0ExQmsvRUo7QTBCLytFRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtFQUNBLDZCQUFBO0VBQ0EscUJBQUE7RUxERSxnRUtFRjtBMUJpL0VKO0FxQi8rRU07RUtYSjtJTFlNLGdCQUFBO0VyQmsvRU47QUFDRjtBMEJqL0VJO0VBQ0Usa0JBQUE7QTFCbS9FTjtBMEJwL0VJO0VBQ0Usa0JBQUE7QTFCbS9FTjtBMEJoL0VJO0VBRUUscUJ0Qm94QjRCO0VzQm54QjVCLHdCdEJveEI0QjtBSjZ0RGxDO0EwQnAvRUk7RUFFRSxxQnRCb3hCNEI7RXNCbnhCNUIsd0J0Qm94QjRCO0FKNnREbEM7QTBCOStFSTtFQUNFLHFCdEIrd0I0QjtFc0I5d0I1Qix3QnRCK3dCNEI7QUppdURsQztBMEI1K0VFO0VBQ0UscUJ0Qnl3QjhCO0VzQnh3QjlCLHdCdEJ5d0I4QjtBSnF1RGxDO0EwQngrRUk7RUFDRSxhdEJtd0I0QjtFc0Jsd0I1Qiw4RHRCbXdCNEI7QUp5dURsQztBMEI5K0VJOzs7RUFDRSxhdEJtd0I0QjtFc0Jsd0I1Qiw4RHRCbXdCNEI7QUp5dURsQztBMEJ2K0VJO0VBQ0UsYXRCNHZCNEI7RXNCM3ZCNUIsOER0QjR2QjRCO0FKNnVEbEM7O0EyQjdoRkE7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0VBQ0Esb0JBQUE7RUFDQSxXQUFBO0EzQmdpRkY7QTJCOWhGRTs7RUFFRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtBM0JnaUZKO0EyQjVoRkU7O0VBRUUsVUFBQTtBM0I4aEZKO0EyQnhoRkU7RUFDRSxrQkFBQTtFQUNBLFVBQUE7QTNCMGhGSjtBMkJ4aEZJO0VBQ0UsVUFBQTtBM0IwaEZOOztBMkIvZ0ZBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RXRCNE1JLGVBTEk7RXNCck1SLGdCdkJtWDRCO0V1QmxYNUIsZ0J2QndYNEI7RXVCdlg1QixjdkJsQ1M7RXVCbUNULGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QnZCNUNTO0V1QjZDVCx5QkFBQTtFckJyQ0Usc0JBQUE7QU53akZKOztBMkJ6Z0ZBOzs7O0VBSUUsb0JBQUE7RXRCc0xJLGtC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eUZFO0VDdkNBLFdBWFE7RVJKUix5QmxCNEVhO0UwQjNEYixxQjFCMkRhO0FKNnhGZjtBOEJyMUZFO0VBQ0UsV0FkWTtFUlBkLHlCUUttQjtFQWtCakIscUJBakJhO0E5QncyRmpCO0E4QnAxRkU7RUFFRSxXQXJCWTtFUlBkLHlCUUttQjtFQXlCakIscUJBeEJhO0VBNkJYLGlEQUFBO0E5QmkxRk47QThCNzBGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJnM0ZsQjtBOEJ2MEZJO0VBS0ksaURBQUE7QTlCcTBGUjtBOEJoMEZFO0VBRUUsV0FqRGU7RUFrRGYseUIxQmFXO0UwQlZYLHFCMUJVVztBSnF6RmY7O0E2QjMwRkU7RUN2Q0EsV0FYUTtFUkpSLHlCbEI0RWE7RTBCM0RiLHFCMUIyRGE7QUoyekZmO0E4Qm4zRkU7RUFDRSxXQWRZO0VSUGQseUJRS21CO0VBa0JqQixxQkFqQmE7QTlCczRGakI7QThCbDNGRTtFQUVFLFdBckJZO0VSUGQseUJRS21CO0VBeUJqQixxQkF4QmE7RUE2QlgsaURBQUE7QTlCKzJGTjtBOEIzMkZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5Qjg0RmxCO0E4QnIyRkk7RUFLSSxpREFBQTtBOUJtMkZSO0E4QjkxRkU7RUFFRSxXQWpEZTtFQWtEZix5QjFCYVc7RTBCVlgscUIxQlVXO0FKbTFGZjs7QTZCejJGRTtFQ3ZDQSxXQVhRO0VSSlIseUJsQjRFYTtFMEIzRGIscUIxQjJEYTtBSnkxRmY7QThCajVGRTtFQUNFLFdBZFk7RVJQZCx5QlFLbUI7RUFrQmpCLHFCQWpCYTtBOUJvNkZqQjtBOEJoNUZFO0VBRUUsV0FyQlk7RVJQZCx5QlFLbUI7RUF5QmpCLHFCQXhCYTtFQTZCWCxnREFBQTtBOUI2NEZOO0E4Qno0RkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCNDZGbEI7QThCbjRGSTtFQUtJLGdEQUFBO0E5Qmk0RlI7QThCNTNGRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJhVztFMEJWWCxxQjFCVVc7QUppM0ZmOztBNkJ2NEZFO0VDdkNBLFdBWFE7RVJKUix5QmxCNEVhO0UwQjNEYixxQjFCMkRhO0FKdTNGZjtBOEIvNkZFO0VBQ0UsV0FkWTtFUlBkLHlCUUttQjtFQWtCakIscUJBakJhO0E5Qms4RmpCO0E4Qjk2RkU7RUFFRSxXQXJCWTtFUlBkLHlCUUttQjtFQXlCakIscUJBeEJhO0VBNkJYLGdEQUFBO0E5QjI2Rk47QThCdjZGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUIwOEZsQjtBOEJqNkZJO0VBS0ksZ0RBQUE7QTlCKzVGUjtBOEIxNUZFO0VBRUUsV0FqRGU7RUFrRGYseUIxQmFXO0UwQlZYLHFCMUJVVztBSis0RmY7O0E2QnI2RkU7RUN2Q0EsV0FYUTtFUkpSLHlCbEI0RWE7RTBCM0RiLHFCMUIyRGE7QUpxNUZmO0E4Qjc4RkU7RUFDRSxXQWRZO0VSUGQseUJRS21CO0VBa0JqQixxQkFqQmE7QTlCZytGakI7QThCNThGRTtFQUVFLFdBckJZO0VSUGQseUJRS21CO0VBeUJqQixxQkF4QmE7RUE2Qlgsa0RBQUE7QTlCeThGTjtBOEJyOEZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QncrRmxCO0E4Qi83Rkk7RUFLSSxrREFBQTtBOUI2N0ZSO0E4Qng3RkU7RUFFRSxXQWpEZTtFQWtEZix5QjFCYVc7RTBCVlgscUIxQlVXO0FKNjZGZjs7QTZCbjhGRTtFQ3ZDQSxXQVhRO0VSSlIseUJsQjRFYTtFMEIzRGIscUIxQjJEYTtBSm03RmY7QThCMytGRTtFQUNFLFdBZFk7RVJQZCx5QlFLbUI7RUFrQmpCLHFCQWpCYTtBOUI4L0ZqQjtBOEIxK0ZFO0VBRUUsV0FyQlk7RVJQZCx5QlFLbUI7RUF5QmpCLHFCQXhCYTtFQTZCWCwrQ0FBQTtBOUJ1K0ZOO0E4Qm4rRkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCc2dHbEI7QThCNzlGSTtFQUtJLCtDQUFBO0E5QjI5RlI7QThCdDlGRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJhVztFMEJWWCxxQjFCVVc7QUoyOEZmOztBNkIzOUZFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSmc5RmY7QThCNThGRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKcTlGZjtBOEIzOEZFO0VBRUUsaURBQUE7QTlCNDhGSjtBOEJ6OEZFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSjY5RmY7QThCcjhGSTtFQUtJLGlEQUFBO0E5Qm04RlI7QThCOTdGRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCKzdGSjs7QTZCcC9GRTtFQ2lCQSxjMUJEYTtFMEJFYixxQjFCRmE7QUp5K0ZmO0E4QnIrRkU7RUFDRSxXQVRZO0VBVVoseUIxQk5XO0UwQk9YLHFCMUJQVztBSjgrRmY7QThCcCtGRTtFQUVFLGtEQUFBO0E5QnErRko7QThCbCtGRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJyQlc7RTBCc0JYLHFCMUJ0Qlc7QUpzL0ZmO0E4Qjk5Rkk7RUFLSSxrREFBQTtBOUI0OUZSO0E4QnY5RkU7RUFFRSxjMUJwQ1c7RTBCcUNYLDZCQUFBO0E5Qnc5Rko7O0E2QjdnR0U7RUNpQkEsYzFCRGE7RTBCRWIscUIxQkZhO0FKa2dHZjtBOEI5L0ZFO0VBQ0UsV0FUWTtFQVVaLHlCMUJOVztFMEJPWCxxQjFCUFc7QUp1Z0dmO0E4QjcvRkU7RUFFRSxnREFBQTtBOUI4L0ZKO0E4QjMvRkU7RUFLRSxXQXJCYTtFQXNCYix5QjFCckJXO0UwQnNCWCxxQjFCdEJXO0FKK2dHZjtBOEJ2L0ZJO0VBS0ksZ0RBQUE7QTlCcS9GUjtBOEJoL0ZFO0VBRUUsYzFCcENXO0UwQnFDWCw2QkFBQTtBOUJpL0ZKOztBNkJ0aUdFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSjJoR2Y7QThCdmhHRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKZ2lHZjtBOEJ0aEdFO0VBRUUsaURBQUE7QTlCdWhHSjtBOEJwaEdFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSndpR2Y7QThCaGhHSTtFQUtJLGlEQUFBO0E5QjhnR1I7QThCemdHRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCMGdHSjs7QTZCL2pHRTtFQ2lCQSxjMUJEYTtFMEJFYixxQjFCRmE7QUpvakdmO0E4QmhqR0U7RUFDRSxXQVRZO0VBVVoseUIxQk5XO0UwQk9YLHFCMUJQVztBSnlqR2Y7QThCL2lHRTtFQUVFLGdEQUFBO0E5QmdqR0o7QThCN2lHRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJyQlc7RTBCc0JYLHFCMUJ0Qlc7QUppa0dmO0E4QnppR0k7RUFLSSxnREFBQTtBOUJ1aUdSO0E4QmxpR0U7RUFFRSxjMUJwQ1c7RTBCcUNYLDZCQUFBO0E5Qm1pR0o7O0E2QnhsR0U7RUNpQkEsYzFCRGE7RTBCRWIscUIxQkZhO0FKNmtHZjtBOEJ6a0dFO0VBQ0UsV0FUWTtFQVVaLHlCMUJOVztFMEJPWCxxQjFCUFc7QUprbEdmO0E4QnhrR0U7RUFFRSxnREFBQTtBOUJ5a0dKO0E4QnRrR0U7RUFLRSxXQXJCYTtFQXNCYix5QjFCckJXO0UwQnNCWCxxQjFCdEJXO0FKMGxHZjtBOEJsa0dJO0VBS0ksZ0RBQUE7QTlCZ2tHUjtBOEIzakdFO0VBRUUsYzFCcENXO0UwQnFDWCw2QkFBQTtBOUI0akdKOztBNkJqbkdFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSnNtR2Y7QThCbG1HRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKMm1HZjtBOEJqbUdFO0VBRUUsa0RBQUE7QTlCa21HSjtBOEIvbEdFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSm1uR2Y7QThCM2xHSTtFQUtJLGtEQUFBO0E5QnlsR1I7QThCcGxHRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCcWxHSjs7QTZCMW9HRTtFQ2lCQSxjMUJEYTtFMEJFYixxQjFCRmE7QUorbkdmO0E4QjNuR0U7RUFDRSxXQVRZO0VBVVoseUIxQk5XO0UwQk9YLHFCMUJQVztBSm9vR2Y7QThCMW5HRTtFQUVFLCtDQUFBO0E5QjJuR0o7QThCeG5HRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJyQlc7RTBCc0JYLHFCMUJ0Qlc7QUo0b0dmO0E4QnBuR0k7RUFLSSwrQ0FBQTtBOUJrbkdSO0E4QjdtR0U7RUFFRSxjMUJwQ1c7RTBCcUNYLDZCQUFBO0E5QjhtR0o7O0E2QnhwR0E7RUFDRSxnQnpCd1Y0QjtFeUJ2VjVCLGN6QnZDUTtFeUJ3Q1IsMEJ6QitNd0M7QUo0OEYxQztBNkJ6cEdFO0VBQ0UsY3pCOE1zQztBSjY4RjFDO0E2Qm5wR0U7RUFFRSxjekI3RU87QUppdUdYOztBNkJ6b0dBO0VDcUJFLG9CQUFBO0V6QmdJSSxrQkFMSTtFQ3BPTixxQkFBQTtBTm11R0o7O0E2QjNvR0E7RUNpQkUsdUJBQUE7RXpCZ0lJLG1CQUxJO0VDcE9OLHFCQUFBO0FOeXVHSjs7QStCM3ZHQTtFVmdCTSxnQ1VmSjtBL0I4dkdGO0FxQjN1R007RVVwQk47SVZxQlEsZ0JBQUE7RXJCOHVHTjtBQUNGO0ErQmp3R0U7RUFDRSxVQUFBO0EvQm13R0o7O0ErQjl2R0U7RUFDRSxhQUFBO0EvQml3R0o7O0ErQjd2R0E7RUFDRSxTQUFBO0VBQ0EsZ0JBQUE7RVZBSSw2QlVDSjtBL0Jnd0dGO0FxQjd2R007RVVOTjtJVk9RLGdCQUFBO0VyQmd3R047QUFDRjs7QWdDcnhHQTs7OztFQUlFLGtCQUFBO0FoQ3d4R0Y7O0FnQ3J4R0E7RUFDRSxtQkFBQTtBaEN3eEdGO0FpQ3B3R0k7RUFDRSxxQkFBQTtFQUNBLG9CN0JnV3dCO0U2Qi9WeEIsdUI3QjhWd0I7RTZCN1Z4QixXQUFBO0VBaENKLHVCQUFBO0VBQ0EscUNBQUE7RUFDQSxnQkFBQTtFQUNBLG9DQUFBO0FqQ3V5R0Y7QWlDbHZHSTtFQUNFLGNBQUE7QWpDb3ZHTjs7QWdDOXhHQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLGE1Qm8wQmtDO0U0Qm4wQmxDLGFBQUE7RUFDQSxnQjVCaTVCa0M7RTRCaDVCbEMsaUJBQUE7RUFDQSxTQUFB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OztBZ0MxM0dBO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5Q0FBQTtBaEM2M0dGOztBZ0N2M0dBO0VBQ0UsY0FBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxnQjVCb1I0QjtFNEJuUjVCLGM1QmhJUztFNEJpSVQsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsNkJBQUE7RUFDQSxTQUFBO0FoQzAzR0Y7QWdDNTJHRTtFQUVFLGM1Qmd4QmdDO0VrQmw3QmxDLHlCbEJNUztBSjBnSFg7QWdDejJHRTtFQUVFLFc1QnJLTztFNEJzS1AscUJBQUE7RVYxS0YseUJsQmtDUTtBSm0vR1Y7QWdDdjJHRTtFQUVFLGM1QnZLTztFNEJ3S1Asb0JBQUE7RUFDQSw2QkFBQTtBaEN3MkdKOztBZ0NsMkdBO0VBQ0UsY0FBQTtBaENxMkdGOztBZ0NqMkdBO0VBQ0UsY0FBQTtFQUNBLG9CNUIrdkJrQztFNEI5dkJsQyxnQkFBQTtFM0J1REksbUJBTEk7RTJCaERSLGM1QnhMUztFNEJ5TFQsbUJBQUE7QWhDbzJHRjs7QWdDaDJHQTtFQUNFLGNBQUE7RUFDQSxxQkFBQTtFQUNBLGM1QjdMUztBSmdpSFg7O0FnQy8xR0E7RUFDRSxjNUJ4TVM7RTRCeU1ULHlCNUJwTVM7RTRCcU1ULGlDNUJ3dEJrQztBSjBvRnBDO0FnQy8xR0U7RUFDRSxjNUI5TU87QUoraUhYO0FnQy8xR0k7RUFFRSxXNUJyTks7RWtCSlQsMkNsQnU4QmtDO0FKbW5GcEM7QWdDNzFHSTtFQUVFLFc1QjNOSztFa0JKVCx5QmxCa0NRO0FKNGhIVjtBZ0MzMUdJO0VBRUUsYzVCNU5LO0FKd2pIWDtBZ0N4MUdFO0VBQ0UsaUM1QityQmdDO0FKMnBGcEM7QWdDdjFHRTtFQUNFLGM1QnZPTztBSmdrSFg7QWdDdDFHRTtFQUNFLGM1QnpPTztBSmlrSFg7O0FrQzdrSEE7O0VBRUUsa0JBQUE7RUFDQSxvQkFBQTtFQUNBLHNCQUFBO0FsQ2dsSEY7QWtDOWtIRTs7RUFDRSxrQkFBQTtFQUNBLGNBQUE7QWxDaWxI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QTtJQUNBLDJCQUFBO0VwQ3F2SE47RW9DbnZITTtJQUNFLG1CQUFBO0VwQ3F2SFI7RW9DbnZIUTtJQUNFLGtCQUFBO0VwQ3F2SFY7RW9DbHZIUTtJQUNFLHFCaEM2c0J3QjtJZ0M1c0J4QixvQmhDNHNCd0I7RUp3aUdsQztFb0NodkhNO0lBQ0UsaUJBQUE7RXBDa3ZIUjtFb0MvdUhNO0lBQ0Usd0JBQUE7SUFDQSxnQkFBQTtFcENpdkhSO0VvQzl1SE07SUFDRSxhQUFBO0VwQ2d2SFI7QUFDRjtBYWwzSEk7RXVCcUdBO0lBRUksaUJBQUE7SUFDQSwyQkFBQTtFcEMrd0hOO0VvQzd3SE07SUFDRSxtQkFBQTtFcEMrd0hSO0VvQzd3SFE7SUFDRSxrQkFBQTtFcEMrd0hWO0VvQzV3SFE7SUFDRSxxQmhDNnNCd0I7SWdDNXNCeEIsb0JoQzRzQndCO0VKa2tHbEM7RW9DMXdITTtJQUNFLGlCQUFBO0VwQzR3SFI7RW9DendITTtJQUNFLHdCQUFBO0lBQ0EsZ0JBQUE7RXBDMndIUjtFb0N4d0hNO0lBQ0UsYUFBQTtFcEMwd0hSO0FBQ0Y7QWE1NEhJO0V1QnFHQTtJQUVJLGlCQUFBO0lBQ0EsMkJBQUE7RXBDeXlITjtFb0N2eUhNO0lBQ0UsbUJBQUE7RXBDeXlIUjtFb0N2eUhRO0lBQ0Usa0JBQUE7RXBDeXlIVjtFb0N0eUhRO0lBQ0UscUJoQzZzQndCO0lnQzVzQnhCLG9CaEM0c0J3QjtFSjRsR2xDO0VvQ3B5SE07SUFDRSxpQkFBQTtFcENzeUhSO0VvQ255SE07SUFDRSx3QkFBQTtJQUNBLGdCQUFBO0VwQ3F5SFI7RW9DbHlITTtJQUNFLGFBQUE7RXBDb3lIUjtBQUNGO0FvQ2owSEk7RUFFSSxpQkFBQTtFQUNBLDJCQUFBO0FwQ2swSFI7QW9DaDBIUTtFQUNFLG1CQUFBO0FwQ2swSFY7QW9DaDBIVTtFQUNFLGtCQUFBO0FwQ2swSFo7QW9DL3pIVTtFQUNFLHFCaEM2c0J3QjtFZ0M1c0J4QixvQmhDNHNCd0I7QUpxbkdwQztBb0M3ekhRO0VBQ0UsaUJBQUE7QXBDK3pIVjtBb0M1ekhRO0VBQ0Usd0JBQUE7RUFDQSxnQkFBQTtBcEM4ekhWO0FvQzN6SFE7RUFDRSxhQUFBO0FwQzZ6SFY7O0FvQy95SEU7RUFDRSx5QmhDd3NCZ0M7QUowbUdwQztBb0NoekhJO0VBRUUseUJoQ29zQjhCO0FKNm1HcEM7QW9DNXlISTtFQUNFLDBCaEM0ckI4QjtBSmtuR3BDO0FvQzV5SE07RUFFRSx5QmhDeXJCNEI7QUpvbkdwQztBb0MxeUhNO0VBQ0UseUJoQ3VyQjRCO0FKcW5HcEM7QW9DeHlISTs7RUFFRSx5QmhDZ3JCOEI7QUowbkdwQztBb0N0eUhFO0VBQ0UsMEJoQ3lxQmdDO0VnQ3hxQmhDLGdDaEM2cUJnQztBSjJuR3BDO0FvQ3J5SEU7RUFDRSw2UEFBQTtBcEN1eUhKO0FvQ3B5SEU7RUFDRSwwQmhDZ3FCZ0M7QUpzb0dwQztBb0NweUhJOzs7RUFHRSx5QmhDNnBCOEI7QUp5b0dwQzs7QW9DL3hIRTtFQUNFLFdoQzFQTztBSjRoSVg7QW9DaHlISTtFQUVFLFdoQzlQSztBSitoSVg7QW9DNXhISTtFQUNFLGdDaENrb0I4QjtBSjRwR3BDO0FvQzV4SE07RUFFRSxnQ2hDK25CNEI7QUo4cEdwQztBb0MxeEhNO0VBQ0UsZ0NoQzZuQjRCO0FKK3BHcEM7QW9DeHhISTs7RUFFRSxXaENsUks7QUo0aUlYO0FvQ3R4SEU7RUFDRSxnQ2hDK21CZ0M7RWdDOW1CaEMsc0NoQ21uQmdDO0FKcXFHcEM7QW9DcnhIRTtFQUNFLG1RQUFBO0FwQ3V4SEo7QW9DcHhIRTtFQUNFLGdDaENzbUJnQztBSmdyR3BDO0FvQ3J4SEk7OztFQUdFLFdoQ3BTSztBSjJqSVg7O0FxQy9qSUE7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7RUFFQSxxQkFBQTtFQUNBLHNCakNIUztFaUNJVCwyQkFBQTtFQUNBLHNDQUFBO0UvQktFLHNCQUFBO0FONmpJSjtBcUMvaklFO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QXJDaWtJSjtBcUM5aklFO0VBQ0UsbUJBQUE7RUFDQSxzQkFBQTtBckNna0lKO0FxQzlqSUk7RUFDRSxtQkFBQTtFL0JDRiwyQ0FBQTtFQUNBLDRDQUFBO0FOZ2tJSjtBcUM5aklJO0VBQ0Usc0JBQUE7RS9CVUYsK0NBQUE7RUFDQSw4Q0FBQTtBTnVqSUo7QXFDM2pJRTs7RUFFRSxhQUFBO0FyQzZqSUo7O0FxQ3pqSUE7RUFHRSxjQUFBO0VBQ0Esa0JBQUE7QXJDMGpJRjs7QXFDdGpJQTtFQUNFLHFCakN1OEJrQztBSmtuR3BDOztBcUN0aklBO0VBQ0Usb0JBQUE7RUFDQSxnQkFBQTtBckN5aklGOztBcUN0aklBO0VBQ0UsZ0JBQUE7QXJDeWpJRjs7QXFDcmpJRTtFQUNFLHFCQUFBO0FyQ3dqSUo7QXFDcmpJRTtFQUNFLGtDQUFBO0FyQ3VqSUo7O0FxQy9pSUE7RUFDRSxvQkFBQTtFQUNBLGdCQUFBO0VBRUEscUNqQ2c3QmtDO0VpQy82QmxDLDZDQUFBO0FyQ2lqSUY7QXFDL2lJRTtFL0JwRUUsMERBQUE7QU5zbklKOztBcUM3aUlBO0VBQ0Usb0JBQUE7RUFFQSxxQ2pDcTZCa0M7RWlDcDZCbEMsMENBQUE7QXJDK2lJRjtBcUM3aUlFO0UvQi9FRSwwREFBQTtBTituSUo7O0FxQ3RpSUE7RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtBckN5aUlGOztBcUMvaElBO0VBQ0UscUJBQUE7RUFDQSxvQkFBQTtBckNraUlGOztBcUM5aElBO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsYWpDbUhPO0VFdE9MLGtDQUFBO0FOcXBJSjs7QXFDOWhJQTs7O0VBR0UsV0FBQTtBckNpaUlGOztBcUM5aElBOztFL0JwSEksMkNBQUE7RUFDQSw0Q0FBQTtBTnVwSUo7O0FxQy9oSUE7O0UvQjNHSSwrQ0FBQTtFQUNBLDhDQUFBO0FOK29JSjs7QXFDeGhJRTtFQUNFLHNCakN5MkJnQztBSmtyR3BDO0FhOW5JSTtFd0IrRko7SUFRSSxhQUFBO0lBQ0EsbUJBQUE7RXJDMmhJRjtFcUN4aElFO0lBRUUsU0FBQTtJQUNBLGdCQUFBO0VyQ3loSUo7RXFDdmhJSTtJQUNFLGNBQUE7SUFDQSxjQUFBO0VyQ3loSU47RXFDcGhJTTtJL0JwSkosMEJBQUE7SUFDQSw2QkFBQTtFTjJxSUY7RXFDcmhJUTs7SUFHRSwwQkFBQTtFckNzaElWO0VxQ3BoSVE7O0lBR0UsNkJBQUE7RXJDcWhJVjtFcUNqaElNO0kvQnJKSix5QkFBQTtJQUNBLDRCQUFBO0VOeXFJRjtFcUNsaElROztJQUdFLHlCQUFBO0VyQ21oSVY7RXFDamhJUTs7SUFHRSw0QkFBQTtFckNraElWO0FBQ0Y7O0FzQy90SUE7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFakNrUEksZUFMSTtFaUMzT1IsY2xDTVM7RWtDTFQsZ0JBQUE7RUFDQSw2QmxDb2dDd0M7RWtDbmdDeEMsc0NBQUE7RWhDSUUsZ0JBQUE7RWdDRkYscUJBQUE7RWpCQUksK0ppQkNKO0F0Q2t1SUY7QXFCL3RJTTtFaUJoQk47SWpCaUJRLGdCQUFBO0VyQmt1SU47QUFDRjtBc0NydUlFO0VBQ0Usc0JBQUE7QXRDdXVJSjtBc0NwdUlFO0VBQ0UsY2xDdWdDc0M7RWtDdGdDdEMseUJsQ3FnQ3NDO0FKaXVHMUM7QXNDcHVJSTtFQUNFLGlTQUFBO0VBQ0EseUJsQzJnQ29DO0FKMnRHMUM7QXNDanVJRTtFQUNFLGNBQUE7RUFDQSxjbENnZ0NzQztFa0MvL0J0QyxlbEMrL0JzQztFa0M5L0J0QyxpQkFBQTtFQUNBLFdBQUE7RUFDQSxpU0FBQTtFQUNBLDRCQUFBO0VBQ0Esd0JsQzAvQnNDO0VpQnBoQ3BDLHNDaUIyQkY7QXRDbXVJSjtBcUIxdklNO0VpQmNKO0lqQmJNLGdCQUFBO0VyQjZ2SU47QUFDRjtBc0NydUlFO0VBQ0UsVUFBQTtBdEN1dUlKO0FzQ3B1SUU7RUFDRSxVQUFBO0VBQ0EscUJsQ2luQm9DO0VrQ2huQnBDLFVBQUE7RUFDQSxrRGxDc2dCNEI7QUpndUhoQzs7QXNDbHVJQTtFQUNFLGdCQUFBO0F0Q3F1SUY7O0FzQ2h1SUk7RWhDckNBLCtCQUFBO0VBQ0EsZ0NBQUE7QU55d0lKO0FzQzd0SU07RUFDRSx3QmxDMlJzQjtFRTNUMUIsbUNBQUE7RUFDQSxrQ0FBQTtBTmd3SUo7QXNDNXRJSTtFQUNFLHdCbENxUndCO0VFM1QxQixtQ0FBQTtFQUNBLGtDQUFBO0FOcXdJSjs7QXNDMXRJQTtFQUNFLGtDQUFBO0VBQ0EsbUJBQUE7QXRDNnRJRjs7QXNDMXRJQTtFQUNFLHFCQUFBO0F0QzZ0SUY7O0FzQ3B0SUU7RUFDRSxlQUFBO0VBQ0EsY0FBQTtFaENwRkEsZ0JBQUE7QU40eUlKO0FzQ3B0SUU7RUFDRSxlQUFBO0F0Q3N0SUo7QXNDanRJTTtFQUNFLG1CQUFBO0VoQ3RGSix5QkFBQTtFQUNBLDBCQUFBO0FOMHlJSjtBc0Mvc0lNO0VBQ0Usc0JBQUE7RWhDL0VKLDZCQUFBO0VBQ0EsNEJBQUE7QU5peUlKOztBdUMzMElBO0VBQ0UsYUFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsbUJuQ3N2Q2tDO0VtQ3B2Q2xDLGdCQUFBO0F2QzYwSUY7O0F1Q3QwSUU7RUFDRSxvQm5DMnVDZ0M7QUo4bEdwQztBdUN2MElJO0VBQ0UsV0FBQTtFQUNBLHFCbkN1dUM4QjtFbUN0dUM5QixjbkNMSztFbUNNTCx1RkFBQTtBdkN5MElOO0F1Q3IwSUU7RUFDRSxjbkNYTztBSmsxSVg7O0F3Q2gySUE7RUFDRSxhQUFBO0VoQ0dBLGVBQUE7RUFDQSxnQkFBQTtBUmkySUY7O0F3Q2oySUE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxjcEM4QlE7RW9DN0JSLHFCQUFBO0VBQ0Esc0JwQ0ZTO0VvQ0dULHlCQUFBO0VuQktJLHFJbUJKSjtBeENvMklGO0FxQjUxSU07RW1CZk47SW5CZ0JRLGdCQUFBO0VyQisxSU47QUFDRjtBd0N2MklFO0VBQ0UsVUFBQTtFQUNBLGNwQytRc0M7RW9DN1F0Qyx5QnBDUk87RW9DU1AscUJwQ1JPO0FKZzNJWDtBd0NyMklFO0VBQ0UsVUFBQTtFQUNBLGNwQ3VRc0M7RW9DdFF0Qyx5QnBDZk87RW9DZ0JQLFVwQzI4QmdDO0VvQzE4QmhDLGtEcENpaUI0QjtBSnMwSGhDOztBd0NsMklFO0VBQ0UsaUJwQzg3QmdDO0FKdTZHcEM7QXdDbDJJRTtFQUNFLFVBQUE7RUFDQSxXcEM5Qk87RWtCSlQseUJsQmtDUTtFb0NFTixxQnBDRk07QUpzMklWO0F3Q2oySUU7RUFDRSxjcEM5Qk87RW9DK0JQLG9CQUFBO0VBQ0Esc0JwQ3RDTztFb0N1Q1AscUJwQ3BDTztBSnU0SVg7O0F5Qy80SUU7RUFDRSx5QkFBQTtBekNrNUlKOztBeUMzNElRO0VuQ3FDSiwrQkFBQTtFQUNBLGtDQUFBO0FOMDJJSjtBeUMxNElRO0VuQ2lCSixnQ0FBQTtFQUNBLG1DQUFBO0FONDNJSjs7QXlDNTVJRTtFQUNFLHVCQUFBO0VwQ3VQRSxrQkFMSTtBTDhxSVY7QXlDejVJUTtFbkNxQ0osOEJBQUE7RUFDQSxpQ0FBQTtBTnUzSUo7QXlDdjVJUTtFbkNpQkosK0JBQUE7RUFDQSxrQ0FBQTtBTnk0SUo7O0F5Q3o2SUU7RUFDRSx1QkFBQTtFcEN1UEUsbUJBTEk7QUwycklWO0F5Q3Q2SVE7RW5DcUNKLDhCQUFBO0VBQ0EsaUNBQUE7QU5vNElKO0F5Q3A2SVE7RW5DaUJKLCtCQUFBO0VBQ0Esa0NBQUE7QU5zNUlKOztBMENwN0lBO0VBQ0UscUJBQUE7RUFDQSxzQkFBQTtFckNvUEksaUJBTEk7RXFDN09SLGdCdEM0WjRCO0VzQzNaNUIsY0FBQTtFQUNBLFd0Q0hTO0VzQ0lULGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx3QkFBQTtFcENJRSxzQkFBQTtBTm83SUo7QTBDbjdJRTtFQUNFLGFBQUE7QTFDcTdJSjs7QTBDaDdJQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtBMUNtN0lGOztBMkMxOElBO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtFQUNBLG1CdkN3cUNrQztFdUN2cUNsQyw2QkFBQTtFckNVRSxzQkFBQTtBTm84SUo7O0EyQ3o4SUE7RUFFRSxjQUFBO0EzQzI4SUY7O0EyQ3Y4SUE7RUFDRSxnQnZDaVo0QjtBSnlqSTlCOztBMkNsOElBO0VBQ0UsbUJ2QzJwQ2tDO0FKMHlHcEM7QTJDbDhJRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EscUJBQUE7QTNDbzhJSjs7QTJDcjdJRTtFQ25EQSxjRCtDYztFckI1Q2QseUJxQjBDbUI7RUMzQ25CLHFCRDRDZTtBM0NnOElqQjtBNEMxK0lFO0VBQ0UsY0FBQTtBNUM0K0lKOztBMkM5N0lFO0VDbkRBLGNEK0NjO0VyQjVDZCx5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQ3k4SWpCO0E0Q24vSUU7RUFDRSxjQUFBO0E1Q3EvSUo7O0EyQ3Y4SUU7RUNuREEsY0QrQ2M7RXJCNUNkLHlCcUIwQ21CO0VDM0NuQixxQkQ0Q2U7QTNDazlJakI7QTRDNS9JRTtFQUNFLGNBQUE7QTVDOC9JSjs7QTJDaDlJRTtFQ25EQSxjRGlEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQzI5SWpCO0E0Q3JnSkU7RUFDRSxjQUFBO0E1Q3VnSko7O0EyQ3o5SUU7RUNuREEsY0RpRGdCO0VyQjlDaEIseUJxQjBDbUI7RUMzQ25CLHFCRDRDZTtBM0NvK0lqQjtBNEM5Z0pFO0VBQ0UsY0FBQTtBNUNnaEpKOztBMkNsK0lFO0VDbkRBLGNEK0NjO0VyQjVDZCx5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQzYrSWpCO0E0Q3ZoSkU7RUFDRSxjQUFBO0E1Q3loSko7O0EyQzMrSUU7RUNuREEsY0RpRGdCO0VyQjlDaEIseUJxQjBDbUI7RUMzQ25CLHFCRDRDZTtBM0NzL0lqQjtBNENoaUpFO0VBQ0UsY0FBQTtBNUNraUpKOztBMkNwL0lFO0VDbkRBLGNEK0NjO0VyQjVDZCx5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQysvSWpCO0E0Q3ppSkU7RUFDRSxjQUFBO0E1QzJpSko7O0E2Qy9pSkU7RUFDRTtJQUFLLDJCekMwckMyQjtFSnkzR2xDO0FBQ0Y7QTZDaGpKQTtFQUNFLGFBQUE7RUFDQSxZekNvckNrQztFeUNuckNsQyxnQkFBQTtFeENpUEksa0JBTEk7RXdDMU9SLHlCekNGUztFRVFQLHNCQUFBO0FONmlKSjs7QTZDOWlKQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXekNkUztFeUNlVCxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJ6Q2FRO0VpQnRCSiwyQndCVUo7QTdDaWpKRjtBcUJ2akpNO0V3QkhOO0l4QklRLGdCQUFBO0VyQjBqSk47QUFDRjs7QTZDbmpKQTtFdkJlRSxxTUFBQTtFdUJiQSwwQkFBQTtBN0NzakpGOztBNkNsakpFO0VBQ0Usa0RBQUE7QTdDcWpKSjtBNkNsakpNO0VBSko7SUFLTSxlQUFBO0U3Q3FqSk47QUFDRjs7QThDMWxKQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUdBLGVBQUE7RUFDQSxnQkFBQTtFeENRRSxzQkFBQTtBTm9sSko7O0E4Q2xsSkE7RUFDRSxXQUFBO0VBQ0EsYzFDUFM7RTBDUVQsbUJBQUE7QTlDcWxKRjtBOENsbEpFO0VBRUUsVUFBQTtFQUNBLGMxQ2RPO0UwQ2VQLHFCQUFBO0VBQ0EseUIxQ3RCTztBSnltSlg7QThDaGxKRTtFQUNFLGMxQ2xCTztFMENtQlAseUIxQzFCTztBSjRtSlg7O0E4Q3prSkE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFQUVBLHFCQUFBO0VBQ0Esc0IxQzNDUztFMEM0Q1Qsc0NBQUE7QTlDMmtKRjtBOEN6a0pFO0V4QzNCRSwrQkFBQTtFQUNBLGdDQUFBO0FOdW1KSjtBOEN6a0pFO0V4Q2pCRSxtQ0FBQTtFQUNBLGtDQUFBO0FONmxKSjtBOEN6a0pFO0VBRUUsYzFDbERPO0UwQ21EUCxvQkFBQTtFQUNBLHNCMUMxRE87QUpvb0pYO0E4Q3RrSkU7RUFDRSxVQUFBO0VBQ0EsVzFDaEVPO0UwQ2lFUCx5QjFDbkNNO0UwQ29DTixxQjFDcENNO0FKNG1KVjtBOENya0pFO0VBQ0UsbUJBQUE7QTlDdWtKSjtBOENya0pJO0VBQ0UsZ0JBQUE7RUFDQSxxQjFDa1J3QjtBSnF6STlCOztBOEN6akpJO0VBQ0UsbUJBQUE7QTlDNGpKTjtBOEN6akpRO0V4QzNCSixrQ0FBQTtFQVpBLDBCQUFBO0FOb21KSjtBOEN4akpRO0V4QzVDSixnQ0FBQTtFQVlBLDRCQUFBO0FONGxKSjtBOEN2akpRO0VBQ0UsYUFBQTtBOUN5akpWO0E4Q3RqSlE7RUFDRSxxQjFDaVBvQjtFMENoUHBCLG9CQUFBO0E5Q3dqSlY7QThDdGpKVTtFQUNFLGlCQUFBO0VBQ0Esc0IxQzRPa0I7QUo0MEk5Qjs7QWFqbkpJO0VpQ2lDQTtJQUNFLG1CQUFBO0U5Q29sSko7RThDamxKTTtJeEMzQkosa0NBQUE7SUFaQSwwQkFBQTtFTjRuSkY7RThDaGxKTTtJeEM1Q0osZ0NBQUE7SUFZQSw0QkFBQTtFTm9uSkY7RThDL2tKTTtJQUNFLGFBQUE7RTlDaWxKUjtFOEM5a0pNO0lBQ0UscUIxQ2lQb0I7STBDaFBwQixvQkFBQTtFOUNnbEpSO0U4QzlrSlE7SUFDRSxpQkFBQTtJQUNBLHNCMUM0T2tCO0VKbzJJNUI7QUFDRjtBYTFvSkk7RWlDaUNBO0lBQ0UsbUJBQUE7RTlDNG1KSjtFOEN6bUpNO0l4QzNCSixrQ0FBQTtJQVpBLDBCQUFBO0VOb3BKRjtFOEN4bUpNO0l4QzVDSixnQ0FBQTtJQVlBLDRCQUFBO0VONG9KRjtFOEN2bUpNO0lBQ0UsYUFBQTtFOUN5bUpSO0U4Q3RtSk07SUFDRSxxQjFDaVBvQjtJMENoUHBCLG9CQUFBO0U5Q3dtSlI7RThDdG1KUTtJQUNFLGlCQUFBO0lBQ0Esc0IxQzRPa0I7RUo0M0k1QjtBQUNGO0FhbHFKSTtFaUNpQ0E7SUFDRSxtQkFBQTtFOUNvb0pKO0U4Q2pvSk07SXhDM0JKLGtDQUFBO0lBWkEsMEJBQUE7RU40cUpGO0U4Q2hvSk07SXhDNUNKLGdDQUFBO0lBWUEsNEJBQUE7RU5vcUpGO0U4Qy9uSk07SUFDRSxhQUFBO0U5Q2lvSlI7RThDOW5KTTtJQUNFLHFCMUNpUG9CO0kwQ2hQcEIsb0JBQUE7RTlDZ29KUjtFOEM5bkpRO0lBQ0UsaUJBQUE7SUFDQSxzQjFDNE9rQjtFSm81STVCO0FBQ0Y7QWExckpJO0VpQ2lDQTtJQUNFLG1CQUFBO0U5QzRwSko7RThDenBKTTtJeEMzQkosa0NBQUE7SUFaQSwwQkFBQTtFTm9zSkY7RThDeHBKTTtJeEM1Q0osZ0NBQUE7SUFZQSw0QkFBQTtFTjRySkY7RThDdnBKTTtJQUNFLGFBQUE7RTlDeXBKUjtFOEN0cEpNO0lBQ0UscUIxQ2lQb0I7STBDaFBwQixvQkFBQTtFOUN3cEpSO0U4Q3RwSlE7SUFDRSxpQkFBQTtJQUNBLHNCMUM0T2tCO0VKNDZJNUI7QUFDRjtBYWx0Skk7RWlDaUNBO0lBQ0UsbUJBQUE7RTlDb3JKSjtFOENqckpNO0l4QzNCSixrQ0FBQTtJQVpBLDBCQUFBO0VONHRKRjtFOENockpNO0l4QzVDSixnQ0FBQTtJQVlBLDRCQUFBO0VOb3RKRjtFOEMvcUpNO0lBQ0UsYUFBQTtFOUNpckpSO0U4QzlxSk07SUFDRSxxQjFDaVBvQjtJMENoUHBCLG9CQUFBO0U5Q2dySlI7RThDOXFKUTtJQUNFLGlCQUFBO0lBQ0Esc0IxQzRPa0I7RUpvOEk1QjtBQUNGO0E4Q25xSkE7RXhDcEhJLGdCQUFBO0FOMHhKSjtBOENucUpFO0VBQ0UscUJBQUE7QTlDcXFKSjtBOENucUpJO0VBQ0Usc0JBQUE7QTlDcXFKTjs7QStDL3lKRTtFQUNFLGNEdUppQjtFQ3RKakIseUJEcUpzQjtBOUM2cEoxQjtBK0MveUpNO0VBRUUsY0RpSmE7RUNoSmIseUJBQUE7QS9DZ3pKUjtBK0M3eUpNO0VBQ0UsVzNDUEc7RTJDUUgseUJEMklhO0VDMUliLHFCRDBJYTtBOUNxcUpyQjs7QStDN3pKRTtFQUNFLGNEdUppQjtFQ3RKakIseUJEcUpzQjtBOUMycUoxQjtBK0M3ekpNO0VBRUUsY0RpSmE7RUNoSmIseUJBQUE7QS9DOHpKUjtBK0MzekpNO0VBQ0UsVzNDUEc7RTJDUUgseUJEMklhO0VDMUliLHFCRDBJYTtBOUNtckpyQjs7QStDMzBKRTtFQUNFLGNEdUppQjtFQ3RKakIseUJEcUpzQjtBOUN5ckoxQjtBK0MzMEpNO0VBRUUsY0RpSmE7RUNoSmIseUJBQUE7QS9DNDBKUjtBK0N6MEpNO0VBQ0UsVzNDUEc7RTJDUUgseUJEMklhO0VDMUliLHFCRDBJYTtBOUNpc0pyQjs7QStDejFKRTtFQUNFLGNEeUptQjtFQ3hKbkIseUJEcUpzQjtBOUN1c0oxQjtBK0N6MUpNO0VBRUUsY0RtSmU7RUNsSmYseUJBQUE7QS9DMDFKUjtBK0N2MUpNO0VBQ0UsVzNDUEc7RTJDUUgseUJENkllO0VDNUlmLHFCRDRJZTtBOUM2c0p2Qjs7QStDdjJKRTtFQUNFLGNEeUptQjtFQ3hKbkIseUJEcUpzQjtBOUNxdEoxQjtBK0N2MkpNO0VBRUUsY0RtSmU7RUNsSmYseUJBQUE7QS9DdzJKUjtBK0NyMkpNO0VBQ0UsVzNDUEc7RTJDUUgseUJENkllO0VDNUlmLHFCRDRJZTtBOUMydEp2Qjs7QStDcjNKRTtFQUNFLGNEdUppQjtFQ3RKakIseUJEcUpzQjtBOUNtdUoxQjtBK0NyM0pNO0VBRUUsY0RpSmE7RUNoSmIseUJBQUE7QS9DczNKUjtBK0NuM0pNO0VBQ0UsVzNDUEc7RTJDUUgseUJEMklhO0VDMUliLHFCRDBJYTtBOUMydUpyQjs7QStDbjRKRTtFQUNFLGNEeUptQjtFQ3hKbkIseUJEcUpzQjtBOUNpdkoxQjtBK0NuNEpNO0VBRUUsY0RtSmU7RUNsSmYseUJBQUE7QS9DbzRKUjtBK0NqNEpNO0VBQ0UsVzNDUEc7RTJDUUgseUJENkllO0VDNUlmLHFCRDRJZTtBOUN1dkp2Qjs7QStDajVKRTtFQUNFLGNEdUppQjtFQ3RKakIseUJEcUpzQjtBOUMrdkoxQjtBK0NqNUpNO0VBRUUsY0RpSmE7RUNoSmIseUJBQUE7QS9DazVKUjtBK0MvNEpNO0VBQ0UsVzNDUEc7RTJDUUgseUJEMklhO0VDMUliLHFCRDBJYTtBOUN1d0pyQjs7QWdENzVKQTtFQUNFLHVCQUFBO0VBQ0EsVTVDNHlDMkI7RTRDM3lDM0IsVzVDMnlDMkI7RTRDMXlDM0Isc0JBQUE7RUFDQSxXNUNRUztFNENQVCwyV0FBQTtFQUNBLFNBQUE7RTFDTUUsc0JBQUE7RTBDSkYsWTVDNHlDMkI7QUpvbkg3QjtBZ0Q3NUpFO0VBQ0UsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsYTVDdXlDeUI7QUp3bkg3QjtBZ0Q1NUpFO0VBQ0UsVUFBQTtFQUNBLGtENUNtaUI0QjtFNENsaUI1QixVNUNreUN5QjtBSjRuSDdCO0FnRDM1SkU7RUFFRSxvQkFB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Q2lDO0FKdzZJckM7O0FzRDkrS0E7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxlbER5a0NtQztFa0R4a0NuQyxTQUFBO0VBQ0Esb0JsRHNrQ21DO0VrRHJrQ25DLHVCbERxa0NtQztFa0Rwa0NuQyxXbER6TVM7RWtEME1ULGtCQUFBO0F0RGkvS0Y7O0FzRDMrS0U7O0VBRUUsZ0NsRHdrQ2lDO0FKczZJckM7QXNEMytLRTtFQUNFLHNCbEQ1TU87QUp5ckxYO0FzRDErS0U7RUFDRSxXbERoTk87QUo0ckxYOztBd0Qxc0xBO0VBQ0U7SUFBSywwQ0FBQTtFeEQ4c0xMO0FBQ0Y7QXdENXNMQTtFQUNFLHFCQUFBO0VBQ0EsV3BENnhDd0I7RW9ENXhDeEIsWXBENHhDd0I7RW9EM3hDeEIsMkJBQUE7RUFDQSxpQ0FBQTtFQUNBLCtCQUFBO0VBRUEsa0JBQUE7RUFDQSwrQ0FBQTtBeEQ2c0xGOztBd0Qxc0xBO0VBQ0UsV3BEdXhDd0I7RW9EdHhDeEIsWXBEc3hDd0I7RW9EcnhDeEIsbUJwRHV4Q3dCO0FKczdJMUI7O0F3RHRzTEE7RUFDRTtJQUNFLG1CQUFBO0V4RHlzTEY7RXdEdnNMQTtJQUNFLFVBQUE7SUFDQSxlQUFBO0V4RHlzTEY7QUFDRjtBd0R0c0xBO0VBQ0UscUJBQUE7RUFDQSxXcEQ2dkN3QjtFb0Q1dkN4QixZcEQ0dkN3QjtFb0QzdkN4QiwyQkFBQTtFQUNBLDhCQUFBO0VBRUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsNkNBQUE7QXhEdXNMRjs7QXdEcHNMQTtFQUNFLFdwRHV2Q3dCO0VvRHR2Q3hCLFlwRHN2Q3dCO0FKaTlJMUI7O0F3RG5zTEU7RUFDRTs7SUFFRSx3QkFBQTtFeERzc0xKO0FBQ0Y7QXVEbHdMRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtBdkRvd0xKOztBeUR4d0xFO0VBQ0UsY3JEOEVXO0FKNnJMZjtBeUR4d0xNO0VBRUUsY0FBQTtBekR5d0xSOztBeUQvd0xFO0VBQ0UsY3JEOEVXO0FKb3NMZjtBeUQvd0xNO0VBRUUsY0FBQTtBekRneExSOztBeUR0eExFO0VBQ0Us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LHdCQUFBO0FqRXk4TFY7O0FpRTM4TE07RUFFSSx5QkFBQTtBakU2OExWOztBaUUvOExNO0VBRUksNkJBQUE7QWpFaTlMVjs7QWlFbjlMTTtFQUVJLDhCQUFBO0FqRXE5TFY7O0FpRXY5TE07RUFFSSx3QkFBQTtBakV5OUxWOztBaUUzOUxNO0VBRUksK0JBQUE7QWpFNjlMVjs7QWlFLzlMTTtFQUVJLHdCQUFBO0FqRWkrTFY7O0FpRW4rTE07RUFFSSx3REFBQTtBakVxK0xWOztBaUV2K0xNO0VBRUksOERBQUE7QWpFeStMVjs7QWlFMytMTTtFQUVJLHVEQUFBO0FqRTYrTFY7O0FpRS8rTE07RUFFSSwyQkFBQTtBakVpL0xWOztBaUVuL0xNO0VBRUksMkJBQUE7QWpFcS9MVjs7QWlFdi9MTTtFQUVJLDZCQUFBO0FqRXkvTFY7O0FpRTMvTE07RUFFSSw2QkFBQTtBakU2L0xWOztBaUUvL0xNO0VBRUksMEJBQUE7QWpFaWdNVjs7QWlFbmdNTTtFQUVJLDJCQUFBO0FqRXFnTVY7O0FpRXZnTU07RUFFSSxpQkFBQTtBakV5Z01WOztBaUUzZ01NO0VBRUksbUJBQUE7QWpFNmdNVjs7QWlFL2dNTTtFQUVJLG9CQUFBO0FqRWloTVY7O0FpRW5oTU07RUFFSSxvQkFBQTtBakVxaE1WOztBaUV2aE1NO0VBRUksc0JBQUE7QWpFeWhNVjs7QWlFM2hNTTtFQUVJLHVCQUFBO0FqRTZoTVY7O0FpRS9oTU07RUFFSSxrQkFBQTtBakVpaU1WOztBaUVuaU1NO0VBRUksb0JBQUE7QWpFcWlNVjs7QWlFdmlNTTtFQUVJLHFCQUFBO0FqRXlpTVY7O0FpRTNpTU07RUFFSSxtQkFBQTtBakU2aU1WOztBaUUvaU1NO0VBRUkscUJBQUE7QWpFaWpNVjs7QWlFbmpNTTtFQUVJLHNCQUFBO0FqRXFqTVY7O0FpRXZqTU07RUFFSSwyQ0FBQTtBakV5ak1WOztBaUUzak1NO0VBRUksc0NBQUE7QWpFNmpNVjs7QWlFL2pNTTtFQUVJLHNDQUFBO0FqRWlrTVY7O0FpRW5rTU07RUFFSSxvQ0FBQTtBakVxa01WOztBaUV2a01NO0VBRUksb0JBQUE7QWpFeWtNVjs7QWlFM2tNTTtFQUVJLHdDQUFBO0FqRTZrTVY7O0FpRS9rTU07RUFFSSx3QkFBQTtBakVpbE1WOztBaUVubE1NO0VBRUksMENBQUE7QWpFcWxNVjs7QWlFdmxNTTtFQUVJLDBCQUFBO0FqRXlsTVY7O0FpRTNsTU07RUFFSSwyQ0FBQTtBakU2bE1WOztBaUUvbE1NO0VBRUksMkJBQUE7QWpFaW1NVjs7QWlFbm1NTTtFQUVJLHlDQUFBO0FqRXFtTVY7O0FpRXZtTU07RUFFSSx5QkFBQTtBakV5bU1WOztBaUUzbU1NO0VBRUksZ0NBQUE7QWpFNm1NVjs7QWlFL21NTTtFQUVJLGdDQUFBO0FqRWluTVY7O0FpRW5uTU07RUFFSSxnQ0FBQTtBakVxbk1WOztBaUV2bk1NO0VBRUksZ0NBQUE7QWpFeW5NVjs7QWlFM25NTTtFQUVJLGdDQUFBO0FqRTZuTVY7O0FpRS9uTU07RUFFSSxnQ0FBQTtBakVpb01WOztBaUVub01NO0VBRUksZ0NBQUE7QWpFcW9NVjs7QWlFdm9NTTtFQUVJLGdDQUFBO0FqRXlvTVY7O0FpRTNvTU07RUFFSSw2QkFBQTtBakU2b01WOztBaUUvb01NO0VBRUksMEJBQUE7QWpFaXBNVjs7QWlFbnBNTTtFQUVJLDRCQUFBO0FqRXFwTVY7O0FpRXZwTU07RUFFSSw0QkFBQTtBakV5cE1WOztBaUUzcE1NO0VBRUksNEJBQUE7QWpFNnBNVjs7QWlFL3BNTTtFQUVJLDRCQUFBO0FqRWlxTVY7O0FpRW5xTU07RUFFSSw0QkFBQTtBakVxcU1WOztBaUV2cU1NO0VBRUkscUJBQUE7QWpFeXFNVjs7QWlFM3FNTTtFQUVJLHFCQUFBO0FqRTZxTVY7O0FpRS9xTU07RUFFSSxxQkFBQTtBakVpck1WOztBaUVuck1NO0VBRUksc0JBQUE7QWpFcXJNVjs7QWlFdnJNTTtFQUVJLHNCQUFBO0FqRXlyTVY7O0FpRTNyTU07RUFFSSwwQkFBQTtBakU2ck1WOztBaUUvck1NO0VBRUksdUJBQUE7QWpFaXNNVjs7QWlFbnNNTTtFQUVJLDJCQUFBO0FqRXFzTVY7O0FpRXZzTU07RUFFSSxzQkFBQTtB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TlY7O0FpRXJ6Tk07RUFFSSw0Q0FBQTtBakV1ek5WOztBaUV6ek5NO0VBRUksMENBQUE7QWpFMnpOVjs7QWlFN3pOTTtFQUVJLDRDQUFBO0FqRSt6TlY7O0FpRWowTk07RUFFSSw2QkFBQTtBakVtME5WOztBaUVyME5NO0VBRUksMEJBQUE7QWpFdTBOVjs7QWlFejBOTTtFQUVJLDZCQUFBO0FqRTIwTlY7O0FpRTcwTk07RUFFSSw2QkFBQTtBakUrME5WOztBaUVqMU5NO0VBRUksMkJBQUE7QWpFbTFOVjs7QWlFcjFOTTtFQUVJLCtCQUFBO0FqRXUxTlY7O0FpRXoxTk07RUFFSSwyQkFBQTtBakUyMU5WOztBaUU3MU5NO0VBRUksMkJBQUE7QWpFKzFOVjs7QWlFajJOTTtFQUVJLDhCQUFBO0FqRW0yTlY7O0FpRXIyTk07RUFFSSxvQ0FBQTtBakV1Mk5WOztBaUV6Mk5NO0VBRUksb0NBQUE7QWpFMjJOVjs7QWlFNzJOTTtFQUVJLHFDQUFBO0FqRSsyTlY7O0FpRWozTk07RUFFSSwyQkFBQTtBakVtM05WOztBaUVyM05NO0VBRUksNEJBQUE7QWpFdTNOVjs7QWlFejNOTTtFQUVJLDZCQUFBO0FqRTIzTlY7O0FpRTczTk07RUFFSSx5QkFBQTtBakUrM05WOztBaUVqNE5NO0VBRUkseUJBQUE7QWpFbTROVjs7QWlFcjROTTtFQUVJLHlCQUFBO0FqRXU0TlY7O0FpRXo0Tk07RUFFSSx5QkFBQTtBakUyNE5WOztBaUU3NE5NO0VBRUkseUJBQUE7QWpFKzROVjs7QWlFajVOTTtFQUVJLHlCQUFBO0FqRW01TlY7O0FpRXI1Tk07RUFFSSx5QkFBQTtBakV1NU5WOztBaUV6NU5NO0VBRUkseUJBQUE7QWpFMjVOVjs7QWlFNzVOTTtFQUVJLHNCQUFBO0FqRSs1TlY7O0FpRWo2Tk07RUFFSSx5QkFBQTtBakVtNk5WOztBaUVyNk5NO0VBRUkseUJBQUE7QWpFdTZOVjs7QWlFejZOTTtFQUVJLG9DQUFBO0FqRTI2TlY7O0FpRTc2Tk07RUFFSSwwQ0FBQTtBakUrNk5WOztBaUVqN05NO0VBRUkseUJBQUE7QWpFbTdOVjs7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RWlFbnBQSTtJQUVJLDRCQUFBO0VqRXFwUFI7O0VpRXZwUEk7SUFFSSwyQkFBQTtFakV5cFBSOztFaUUzcFBJO0lBRUksaUNBQUE7RWpFNnBQUjs7RWlFL3BQSTtJQUVJLGdDQUFBO0VqRWlxUFI7O0VpRW5xUEk7SUFFSSw4QkFBQTtFakVxcVBSOztFaUV2cVBJO0lBRUksZ0NBQUE7RWpFeXFQUjs7RWlFM3FQSTtJQUVJLDhCQUFBO0VqRTZxUFI7O0VpRS9xUEk7SUFFSSw0QkFBQTtFakVpclBSOztFaUVuclBJO0lBRUksa0NBQUE7RWpFcXJQUjs7RWlFdnJQSTtJQUVJLGlDQUFBO0VqRXlyUFI7O0VpRTNyUEk7SUFFSSwrQkFBQTtFakU2clBSOztFaUUvclBJO0lBRUksaUNBQUE7RWpFaXNQUjs7RWlFbnNQSTtJQUVJLCtCQUFBO0VqRXFzUFI7O0VpRXZzUEk7SUFFSSwwQkFBQTtFakV5c1BSOztFaUUzc1BJO0lBRUksZ0NBQUE7RWpFNnNQUjs7RWlFL3NQSTtJQUVJLCtCQUFBO0VqRWl0UFI7O0VpRW50UEk7SUFFSSw2QkFBQTtFakVxdFBSOztFaUV2dFBJO0lBRUksK0JBQUE7RWpFeXRQUjs7RWlFM3RQSTtJQUVJLDZCQUFBO0VqRTZ0UFI7O0VpRS90UEk7SUFFSSwyQkFBQTtFakVpdVBSOztFaUVudVBJO0lBRUksNEJBQUE7RWpFcXVQUjs7RWlFdnVQSTtJQUVJLDZCQUFBO0VqRXl1UFI7QUFDRjtBYTl0UEk7RW9EZEU7SUFFSSxzQkFBQTtFakU4dVBSOztFaUVodlBJO0lBRUksdUJBQUE7RWpFa3ZQUjs7RWlFcHZQSTtJQUVJLHNCQUFBO0VqRXN2UFI7O0VpRXh2UEk7SUFFSSwwQkFBQTtFakUwdlBSOztFaUU1dlBJO0lBRUksZ0NBQUE7RWpFOHZQUjs7RWlFaHdQSTtJQUVJLHlCQUFBO0VqRWt3UFI7O0VpRXB3UEk7SUFFSSx3QkFBQTtFakVzd1BSOztFaUV4d1BJO0lBRUkseUJBQUE7RWpFMHdQUjs7RWlFNXdQSTtJQUVJLDZCQUFBO0VqRTh3UFI7O0VpRWh4UEk7SUFFSSw4QkFBQTtFakVr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LHNDQUFBO0VqRXEvUVI7O0VpRXYvUUk7SUFFSSxvQ0FBQTtFakV5L1FSOztFaUUzL1FJO0lBRUksa0NBQUE7RWpFNi9RUjs7RWlFLy9RSTtJQUVJLHlDQUFBO0VqRWlnUlI7O0VpRW5nUkk7SUFFSSx3Q0FBQTtFakVxZ1JSOztFaUV2Z1JJO0lBRUksd0NBQUE7RWpFeWdSUjs7RWlFM2dSSTtJQUVJLGtDQUFBO0VqRTZnUlI7O0VpRS9nUkk7SUFFSSxnQ0FBQTtFakVpaFJSOztFaUVuaFJJO0lBRUksOEJBQUE7RWpFcWhSUjs7RWlFdmhSSTtJQUVJLGdDQUFBO0VqRXloUlI7O0VpRTNoUkk7SUFFSSwrQkFBQTtFakU2aFJSOztFaUUvaFJJO0lBRUksb0NBQUE7RWpFaWlSUjs7RWlFbmlSSTtJQUVJLGtDQUFBO0VqRXFpUlI7O0VpRXZpUkk7SUFFSSxnQ0FBQTtFakV5aVJSOztFaUUzaVJJO0lBRUksdUNBQUE7RWpFNmlSUjs7RWlFL2lSSTtJQUVJLHNDQUFBO0VqRWlqUlI7O0VpRW5qUkk7SUFFSSxpQ0FBQTtFakVxalJSOztFaUV2alJJO0lBRUksMkJBQUE7RWpFeWpSUjs7RWlFM2pSSTtJQUVJLGlDQUFBO0VqRTZqUlI7O0VpRS9qUkk7SUFFSSwrQkFBQTtFakVpa1JSOztFaUVua1JJO0lBRUksNkJBQUE7RWpFcWtSUjs7RWlFdmtSSTtJQUVJLCtCQUFBO0VqRXlrUlI7O0VpRTNrUkk7SUFFSSw4QkFBQTtFakU2a1JSOztFaUUva1JJO0lBRUksb0JBQUE7RWpFaWxSUjs7RWlFbmxSSTtJQUVJLG1CQUFBO0VqRXFsUlI7O0VpRXZsUkk7SUFFSSxtQkFBQTtFakV5bFJSOztFaUUzbFJJO0lBRUksbUJBQUE7RWpFNmxSUjs7RWlFL2xSSTtJQUVJLG1CQUFBO0VqRWltUlI7O0VpRW5tUkk7SUFFSSxtQkFBQTtFakVxbVJSOztFaUV2bVJJO0lBRUksbUJBQUE7RWpFeW1SUjs7RWlFM21SSTtJQUVJLG1CQUFBO0VqRTZtUlI7O0VpRS9tUkk7SUFFSSxvQkFBQTtFakVpblJSOztFaUVublJJO0lBRUksMEJB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dStSUjs7RWlFeitSSTtJQUVJLDZCQUFBO0VqRTIrUlI7O0VpRTcrUkk7SUFFSSwrQkFBQTtFakUrK1JSOztFaUVqL1JJO0lBRUksNkJBQUE7RWpFbS9SUjs7RWlFci9SSTtJQUVJLDJCQUFBO0VqRXUvUlI7O0VpRXovUkk7SUFFSSw0QkFBQTtFakUyL1JSOztFaUU3L1JJO0lBRUksNkJBQUE7RWpFKy9SUjtBQUNGO0FhcC9SSTtFb0RkRTtJQUVJLHNCQUFBO0VqRW9nU1I7O0VpRXRnU0k7SUFFSSx1QkFBQTtFakV3Z1NSOztFaUUxZ1NJO0lBRUksc0JBQUE7RWpFNGdTUjs7RWlFOWdTSTtJQUVJLDBCQUFBO0VqRWdoU1I7O0VpRWxoU0k7SUFFSSxnQ0FBQTtFakVvaFNSOztFaUV0aFNJO0lBRUkseUJBQUE7RWpFd2hTUjs7RWlFMWhTSTtJQUVJLHdCQUFBO0VqRTRoU1I7O0VpRTloU0k7SUFFSSx5QkFBQTtFakVnaVNSOztFaUVsaVNJO0lBRUksNkJBQUE7RWpFb2lTUjs7RWlFdGlTSTtJQUVJLDhCQUFBO0VqRXdpU1I7O0VpRTFpU0k7SUFFSSx3QkFBQTtFakU0aVNSOztFaUU5aVNJO0lBRUksK0JBQUE7RWpFZ2pTUjs7RWlFbGpTSTtJQUVJLHdCQUFBO0VqRW9qU1I7O0VpRXRqU0k7SUFFSSx5QkFBQTtFakV3alNSOztFaUUxalNJO0lBRUksOEJBQUE7RWpFNGpTUjs7RWlFOWpTSTtJQUVJLGlDQUFBO0VqRWdrU1I7O0VpRWxrU0k7SUFFSSxzQ0FBQTtFakVva1NSOztFaUV0a1NJO0lBRUkseUNBQUE7RWpFd2tTUjs7RWlFMWtTSTtJQUVJLHVCQUFBO0VqRTRrU1I7O0VpRTlrU0k7SUFFSSx1QkFBQTtFakVnbFNSOztFaUVsbFNJO0lBRUkseUJBQUE7RWpFb2xTUjs7RWlFdGxTSTtJQUVJLHlCQUFBO0VqRXdsU1I7O0VpRTFsU0k7SUFFSSwwQkFBQTtFakU0bFNSOztFaUU5bFNJO0lBRUksNEJBQUE7RWpFZ21TUjs7RWlFbG1TSTtJQUVJLGtDQUFBO0VqRW9tU1I7O0VpRXRtU0k7SUFFSSxzQkFBQTtJQUFBLGlCQUFBO0VqRXdtU1I7O0VpRTFtU0k7SUFFSSw0QkFBQTtJQUFBLHVCQUFBO0VqRTRtU1I7O0VpRTltU0k7SUFFSSwyQkFBQTtJQUFBLHNCQUFBO0VqRWduU1I7O0VpRWxuU0k7SUFFSSx5QkFBQTtJQUFBLG9CQUFBO0VqRW9uU1I7O0VpRXRuU0k7SUFFSSwyQkFBQTtJQUFBLHNCQUFBO0VqRXduU1I7O0VpRTFuU0k7SUFFSSx5QkFBQTtJQUFBLG9CQUFBO0VqRTRuU1I7O0VpRTluU0k7SUFFSSxzQ0FBQTtFakVnb1NSOztFaUVsb1NJO0lBRUksb0NBQUE7RWpFb29TUjs7RWlFdG9TSTtJQUVJLGtDQUFBO0VqRXdvU1I7O0VpRTFvU0k7SUFFSSx5Q0FBQTtFakU0b1NSOztFaUU5b1NJO0lBRUksd0NBQUE7RWpFZ3BTUjs7RWlFbHBTSTtJQUVJLHdDQUFBO0VqRW9wU1I7O0VpRXRwU0k7SUFFSSxrQ0FBQTtFakV3cFNSOztFaUUxcFNJO0lBRUksZ0NBQUE7RWpFNHBTUjs7RWlFOXBTSTtJQUVJLDhCQUFBO0VqRWdxU1I7O0VpRWxxU0k7SUFFSSxnQ0FBQTtFakVvcVNSOztFaUV0cVNJO0lBRUksK0JBQUE7RWpFd3FTUjs7RWlFMXFTSTtJQUVJLG9DQUFBO0VqRTRxU1I7O0VpRTlxU0k7SUFFSSxrQ0FBQTtFakVnclNSOztFaUVsclNJO0lBRUksZ0NBQUE7RWpFb3JTUjs7RWlFdHJTSTtJQUVJLHVDQUFBO0VqRXdyU1I7O0VpRTFyU0k7SUFFSSxzQ0FBQTtFakU0clNSOztFaUU5clNJO0lBRUksaUNBQUE7RWpFZ3NTUjs7RWlFbHNTSTtJQUVJLDJCQUFBO0VqRW9zU1I7O0VpRXRzU0k7SUFFSSxpQ0FBQTtFakV3c1NSOztFaUUxc1NJO0lBRUksK0JBQUE7RWpFNHNTUjs7RWlFOXNTSTtJQUVJLDZCQUFBO0VqRWd0U1I7O0VpRWx0U0k7SUFFSSwrQkFBQTtFakVvdFNSOztFaUV0dFNJO0lBRUksOEJBQUE7RWpFd3RTUjs7RWlFMXRTSTtJQUVJLG9CQUFBO0VqRTR0U1I7O0VpRTl0U0k7SUFFSSxtQkFBQTtFakVndVNSOztFaUVsdVNJO0lBRUksbUJBQUE7RWpFb3VTUjs7RWlFdHVTSTtJQUVJLG1CQUFBO0VqRXd1U1I7O0VpRTF1U0k7SUFFSSxtQkFBQTtFakU0dVNSOztFaUU5dVNJO0lBRUksbUJBQUE7RWpFZ3ZTUjs7RWlFbHZTSTtJQUVJLG1CQUFBO0VqRW92U1I7O0VpRXR2U0k7SUFFSSxtQkFBQTtFakV3dlNSOztFaUUxdlNJO0lBRUksb0JBQUE7RWpFNHZTUjs7RWlFOXZTSTtJQUVJLDBCQUFBO0VqRWd3U1I7O0VpRWx3U0k7SUFFSSx5QkFBQTtFakVvd1NSOztFaUV0d1NJO0lBRUksdUJBQUE7RWpFd3dTUjs7RWlFMXdTSTtJQUVJLHlCQUFBO0VqRTR3U1I7O0VpRTl3U0k7SUFFSSx1QkFBQTtFakVneFNSOztFaUVseFNJO0lBRUksdUJBQUE7RWpFb3hTUjs7RWlFdHhTSTtJQUVJLDBCQUFBO0lBQUEseUJBQUE7RWpFeXhTUjs7RWlFM3hTSTtJQUVJLGdDQUFBO0lBQUEsK0JBQUE7RWpFOHhTUjs7RWlFaHlTSTtJQUVJLCtCQUFBO0lBQUEsOEJBQUE7RWpFbXlTUjs7RWlFcnlTSTtJQUVJLDZCQUFBO0lBQUEsNEJBQUE7RWpFd3lTUjs7RWlFMXlTSTtJQUVJLCtCQUFBO0lBQUEsOEJBQUE7RWpFNnlTUjs7RWlFL3lTSTtJQUVJLDZCQUFBO0lBQUEsNEJBQUE7RWpFa3pTUjs7RWlFcHpTSTtJQUVJLDZCQUFBO0lBQUEsNEJBQUE7RWpFdXpTUjs7RWlFenpTSTtJQUVJLHdCQUFBO0lBQUEsMkJBQUE7RWpFNHpTUjs7RWlFOXpTSTtJQUVJLDhCQUFBO0lBQUEsaUNBQUE7RWpFaTBTUjs7RWlFbjBTSTtJQUVJLDZCQUFBO0lBQUEsZ0NBQUE7RWpFczBTUjs7RWlFeDBTSTtJQUVJLDJCQUFBO0lBQUEsOEJBQUE7RWpFMjBTUjs7RWlFNzBTSTtJQUVJLDZCQUFBO0lBQUEsZ0NBQUE7RWpFZzFTUjs7RWlFbDFTSTtJQUVJLDJCQUFBO0lBQUEsOEJBQUE7RWpFcTFTUjs7RWlFdjFTSTtJQUVJLDJCQUFBO0lBQUEsOEJBQUE7RWpFMDFTUjs7RWlFNTFTSTtJQUVJLHdCQUFBO0VqRTgxU1I7O0VpRWgyU0k7SUFFSSw4QkFBQTtFakVrMlNSOztFaUVwMlNJO0lBRUksNkJBQUE7RWpFczJTUjs7RWlFeDJTSTtJQUVJLDJCQUFBO0VqRTAyU1I7O0VpRTUyU0k7SUFFSSw2QkFBQTtFakU4MlNSOztFaUVoM1NJO0lBRUksMkJBQUE7RWpFazNTUjs7RWlFcDNTSTtJQUVJLDJCQUFBO0VqRXMzU1I7O0VpRXgzU0k7SUFFSSwwQkFBQTtFakUwM1NSOztFaUU1M1NJO0lBRUksZ0NBQUE7RWpFODNTUjs7RWlFaDRTSTtJQUVJLCtCQUFBO0VqRWs0U1I7O0VpRXA0U0k7SUFFSSw2QkFBQTtFakVzNFNSOztFaUV4NFNJO0lBRUksK0JBQUE7RWpFMDRTUjs7RWlFNTRTSTtJQUVJLDZCQUFBO0VqRTg0U1I7O0VpRWg1U0k7SUFFSSw2QkFBQTtFakVrNVNSOztFaUVwNVNJO0lBRUksMkJBQUE7RWpFczVTUjs7RWlFeDVTSTtJQUVJLGlDQUFBO0VqRTA1U1I7O0VpRTU1U0k7SUFFSSxnQ0FBQTtFakU4NVNSOztFaUVoNlNJO0lBRUksOEJBQUE7RWpFazZTUjs7RWlFcDZTSTtJQUVJLGdDQUFBO0VqRXM2U1I7O0VpRXg2U0k7SUFFSSw4QkFBQTtFakUwNlNSOztFaUU1NlNJO0lBRUksOEJBQUE7RWpFODZTUjs7RWlFaDdTSTtJQUVJLHlCQUFBO0VqRWs3U1I7O0VpRXA3U0k7SUFFSSwrQkFBQTtFakVzN1NSOztFaUV4N1NJO0lBRUksOEJBQUE7RWpFMDdTUjs7RWlFNTdTSTtJQUVJLDRCQUFBO0VqRTg3U1I7O0VpRWg4U0k7SUFFSSw4QkFBQTtFakVrOFNSOztFaUVwOFNJO0lBRUksNEJBQUE7RWpFczhTUjs7RWlFeDhTSTtJQUVJLDRCQUFBO0VqRTA4U1I7O0VpRTU4U0k7SUFFSSxxQkFBQTtFakU4OFNSOztFaUVoOVNJO0lBRUksMkJBQUE7RWpFazlTUjs7RWlFcDlTSTtJQUVJLDBCQUFBO0VqRXM5U1I7O0VpRXg5U0k7SUFFSSx3QkFBQTtFakUwOVNSOztFaUU1OVNJO0lBRUksMEJBQUE7RWpFODlTUjs7RWlFaCtTSTtJQUVJLHdCQUFBO0VqRWsrU1I7O0VpRXArU0k7SUFFSSwyQkFBQTtJQUFBLDBCQUFBO0VqRXUrU1I7O0VpRXorU0k7SUFFSSxpQ0FBQTtJQUFBLGdDQUFBO0VqRTQrU1I7O0VpRTkrU0k7SUFFSSxnQ0FBQTtJQUFBLCtCQUFBO0VqRWkvU1I7O0VpRW4vU0k7SUFFSSw4QkFBQTtJQUFBLDZCQUFBO0VqRXMvU1I7O0VpRXgvU0k7SUFFSSxnQ0FBQTtJQUFBLCtCQUFBO0VqRTIvU1I7O0VpRTcvU0k7SUFFSSw4QkFBQTtJQUFBLDZCQUFBO0VqRWdnVFI7O0VpRWxnVEk7SUFFSSx5QkFBQTtJQUFBLDRCQUFBO0VqRXFnVFI7O0VpRXZnVEk7SUFFSSwrQkFBQTtJQUFBLGtDQUFBO0VqRTBnVFI7O0VpRTVnVEk7SUFFSSw4QkFBQTtJQUFBLGlDQUFBO0VqRStnVFI7O0VpRWpoVEk7SUFFSSw0QkFBQTtJQUFBLCtCQUFBO0VqRW9oVFI7O0VpRXRoVEk7SUFFSSw4QkFBQTtJQUFBLGlDQUFBO0VqRXloVFI7O0VpRTNoVEk7SUFFSSw0QkFBQTtJQUFBLCtCQUFBO0VqRThoVFI7O0VpRWhpVEk7SUFFSSx5QkFBQTtFakVraVRSOztFaUVwaVRJO0lBRUksK0JBQUE7RWpFc2lUUjs7RWlFeGlUSTtJQUVJLDhCQUFBO0VqRTBpVFI7O0VpRTVpVEk7SUFFSSw0QkFBQTtFakU4aVRSOztFaUVoalRJO0lBRUksOEJBQUE7RWpFa2pUUjs7RWlFcGpUSTtJQUVJLDRCQUFBO0VqRXNqVFI7O0VpRXhqVEk7SUFFSSwyQkFBQTtFakUwalRSOztFaUU1alRJO0lBRUksaUNBQUE7RWpFOGpUUjs7RWlFaGtUSTtJQUVJLGdDQUFBO0VqRWtrVFI7O0VpRXBrVEk7SUFFSSw4QkFBQTtFakVza1RSOztFaUV4a1RJO0lBRUksZ0NBQUE7RWpFMGtUUjs7RWlFNWtUSTtJQUVJLDhCQUFBO0VqRThrVFI7O0VpRWhsVEk7SUFFSSw0QkFBQTtFakVrbFRSOztFaUVwbFRJO0lBRUksa0NBQUE7RWpFc2xUUjs7RWlFeGxUSTtJQUVJLGlDQUFBO0VqRTBsVFI7O0VpRTVsVEk7SUFFSSwrQkFBQTtFakU4bFRSOztFaUVobVRJO0lBRUksaUNBQUE7RWpFa21UUjs7RWlFcG1USTtJQUVJLCtCQUFBO0VqRXNtVFI7O0VpRXhtVEk7SUFFSSwwQkFBQTtFakUwbVRSOztFaUU1bVRJO0lBRUksZ0NBQUE7RWpFOG1UUjs7RWlFaG5USTtJQUVJLCtCQUFBO0VqRWtuVFI7O0VpRXBuVEk7SUFFSSw2QkFBQTtFakVzblRSOztFaUV4blRJO0lBRUksK0JBQUE7RWpFMG5UUjs7RWlFNW5USTtJQUVJLDZCQUFBO0VqRThuVFI7O0VpRWhvVEk7SUFFSSwyQkFBQTtFakVrb1RSOztFaUVwb1RJO0lBRUksNEJBQUE7RWpFc29UUjs7RWlFeG9USTtJQUVJLDZCQUFBO0VqRTBvVFI7QUFDRjtBYS9uVEk7RW9EZEU7SUFFSSxzQkFBQTtFakUrb1RSOztFaUVqcFRJO0lBRUksdUJBQUE7RWpFbXBUUjs7RWlFcnBUSTtJQUVJLHNCQUFBO0VqRXVwVFI7O0VpRXpwVEk7SUFFSSwwQkFBQTtFakUycFRSOztFaUU3cFRJO0lBRUksZ0NBQUE7RWpFK3BUUjs7RWlFanFUSTtJQUVJLHlCQUFBO0VqRW1xVFI7O0VpRXJxVEk7SUFFSSx3QkFBQTtFakV1cVRSOztFaUV6cVRJO0lBRUkseUJBQUE7RWpFMnFUUjs7RWlFN3FUSTtJQUVJLDZCQUFBO0VqRStxVFI7O0VpRWpyVEk7SUFFSSw4QkFBQTtFakVtclRSOztFaUVyclRJO0lBRUksd0JBQUE7RWpFdXJUUjs7RWlFenJUSTtJQUVJLCtCQUFBO0VqRTJyVFI7O0VpRTdyVEk7SUFFSSx3QkFBQTtFakUrclRSOztFaUVqc1RJO0lBRUkseUJBQUE7RWpFbXNUUjs7RWlFcnNUSTtJQUVJLDhCQUFBO0VqRXVzVFI7O0VpRXpzVEk7SUFFSSxpQ0FBQTtFakUyc1RSOztFaUU3c1RJO0lBRUksc0NBQUE7RWpFK3NUUjs7RWlFanRUSTtJQUVJ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LDhCQUFBO0VqRTZyVVI7O0VpRS9yVUk7SUFFSSw0QkFBQTtFakVpc1VSOztFaUVuc1VJO0lBRUksMkJBQUE7RWpFcXNVUjs7RWlFdnNVSTtJQUVJLGlDQUFBO0VqRXlzVVI7O0VpRTNzVUk7SUFFSSxnQ0FBQTtFakU2c1VSOztFaUUvc1VJO0lBRUksOEJBQUE7RWpFaXRVUjs7RWlFbnRVSTtJQUVJLGdDQUFBO0VqRXF0VVI7O0VpRXZ0VUk7SUFFSSw4QkFBQTtFakV5dFVSOztFaUUzdFVJO0lBRUksNEJBQUE7RWpFNnRVUjs7RWlFL3RVSTtJQUVJLGtDQUFBO0VqRWl1VVI7O0VpRW51VUk7SUFFSSxpQ0FBQTtFakVxdVVSOztFaUV2dVVJO0lBRUksK0JBQUE7RWpFeXVVUjs7RWlFM3VVSTtJQUVJLGlDQUFBO0VqRTZ1VVI7O0VpRS91VUk7SUFFSSwrQkFBQTtFakVpdlVSOztFaUVudlVJO0lBRUksMEJBQUE7RWpFcXZVUjs7RWlFdnZVSTtJQUVJLGdDQUFBO0VqRXl2VVI7O0VpRTN2VUk7SUFFSSwrQkFBQTtFakU2dlVSOztFaUUvdlVJO0lBRUksNkJBQUE7RWpFaXdVUjs7RWlFbndVSTtJQUVJLCtCQUFBO0VqRXF3VVI7O0VpRXZ3VUk7SUFFSSw2QkFBQTtFakV5d1VSOztFaUUzd1VJO0lBRUksMkJBQUE7RWpFNndVUjs7RWlFL3dVSTtJQUVJLDRCQUFBO0VqRWl4VVI7O0VpRW54VUk7SUFFSSw2QkFBQTtFakVxeFVSO0FBQ0Y7QWtFdHpVQTtFRDhCTTtJQUVJLDRCQUFBO0VqRTB4VVI7O0VpRTV4VUk7SUFFSSwwQkFBQTtFakU4eFVSOztFaUVoeVVJO0lBRUksNkJBQUE7RWpFa3lVUjs7RWlFcHlVSTtJQUVJLDRCQUFBO0VqRXN5VVI7QUFDRjtBa0VwelVBO0VEV007SUFFSSwwQkFBQTtFakUyeVVSOztFaUU3eVVJO0lBRUksZ0NBQUE7RWpFK3lVUjs7RWlFanpVSTtJQUVJLHlCQUFBO0VqRW16VVI7O0VpRXJ6VUk7SUFFSSx3QkFBQTtFakV1elVSOztFaUV6elVJO0lBRUkseUJBQUE7RWpFMnpVUjs7RWlFN3pVSTtJQUVJLDZCQUFBO0VqRSt6VVI7O0VpRWowVUk7SUFFSSw4QkFBQTtFakVtMFVSOztFaUVyMFVJO0lBRUksd0JBQUE7RWpFdTBVUjs7RWlFejBVSTtJQUVJLCtCQUFBO0VqRTIwVVI7O0VpRTcwVUk7SUFFSSx3QkFBQTtFakUrMFVSO0FBQ0Y7O0FBZ0dBLHdDQUF3Q1wiLFwic291cmNlc0NvbnRlbnRcIjpbXCJAY2hhcnNldCBcXFwiVVRGLThcXFwiO1xcbi8qIVxcbiAqIEJvb3RzdHJhcCB2NS4wLjAtYmV0YTIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXFxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcXG4gKi9cXG46cm9vdCB7XFxuICAtLWJzLWJsdWU6ICMwZDZlZmQ7XFxuICAtLWJzLWluZGlnbzogIzY2MTBmMjtcXG4gIC0tYnMtcHVycGxlOiAjNmY0MmMxO1xcbiAgLS1icy1waW5rOiAjZDYzMzg0O1xcbiAgLS1icy1yZWQ6ICNkYzM1NDU7XFxuICAtLWJzLW9yYW5nZTogI2ZkN2UxNDtcXG4gIC0tYnMteWVsbG93OiAjZmZjMTA3O1xcbiAgLS1icy1ncmVlbjogIzE5ODc1NDtcXG4gIC0tYnMtdGVhbDogIzIwYzk5NztcXG4gIC0tYnMtY3lhbjogIzBkY2FmMDtcXG4gIC0tYnMtd2hpdGU6ICNmZmY7XFxuICAtLWJzLWdyYXk6ICM2Yzc1N2Q7XFxuICAtLWJzLWdyYXktZGFyazogIzM0M2E0MDtcXG4gIC0tYnMtcHJpbWFyeTogIzBkNmVmZDtcXG4gIC0tYnMtc2Vjb25kYXJ5OiAjNmM3NTdkO1xcbiAgLS1icy1zdWNjZXNzOiAjMTk4NzU0O1xcbiAgLS1icy1pbmZvOiAjMGRjYWYwO1xcbiAgLS1icy13YXJuaW5nOiAjZmZjMTA3O1xcbiAgLS1icy1kYW5nZXI6ICNkYzM1NDU7XFxuICAtLWJzLWxpZ2h0OiAjZjhmOWZhO1xcbiAgLS1icy1kYXJrOiAjMjEyNTI5O1xcbiAgLS1icy1mb250LXNhbnMtc2VyaWY6IHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBBcmlhbCwgXFxcIk5vdG8gU2Fuc1xcXCIsIFxcXCJMaWJlcmF0aW9uIFNhbnNcXFwiLCBzYW5zLXNlcmlmLCBcXFwiQXBwbGUgQ29sb3IgRW1vamlcXFwiLCBcXFwiU2Vnb2UgVUkgRW1vamlcXFwiLCBcXFwiU2Vnb2UgVUkgU3ltYm9sXFxcIiwgXFxcIk5vdG8gQ29sb3IgRW1vamlcXFwiO1xcbiAgLS1icy1mb250LW1vbm9zcGFjZTogU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcXFwiTGliZXJhdGlvbiBNb25vXFxcIiwgXFxcIkNvdXJpZXIgTmV3XFxcIiwgbW9ub3NwYWNlO1xcbiAgLS1icy1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XFxufVxcblxcbiosXFxuKjo6YmVmb3JlLFxcbio6OmFmdGVyIHtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxufVxcblxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xcbiAgOnJvb3Qge1xcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcXG4gIH1cXG59XFxuXFxuYm9keSB7XFxuICBtYXJnaW46IDA7XFxuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1zYW5zLXNlcmlmKTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xcbn1cXG5cXG5bdGFiaW5kZXg9XFxcIi0xXFxcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XFxuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbmhyIHtcXG4gIG1hcmdpbjogMXJlbSAwO1xcbiAgY29sb3I6IGluaGVyaXQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XFxuICBib3JkZXI6IDA7XFxuICBvcGFjaXR5OiAwLjI1O1xcbn1cXG5cXG5ocjpub3QoW3NpemVdKSB7XFxuICBoZWlnaHQ6IDFweDtcXG59XFxuXFxuaDYsIC5oNiwgaDUsIC5oNSwgaDQsIC5oNCwgaDMsIC5oMywgaDIsIC5oMiwgaDEsIC5oMSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbiAgZm9udC13ZWlnaHQ6IDUwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcblxcbmgxLCAuaDEge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICBoMSwgLmgxIHtcXG4gICAgZm9udC1zaXplOiAyLjVyZW07XFxuICB9XFxufVxcblxcbmgyLCAuaDIge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMzI1cmVtICsgMC45dncpO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICBoMiwgLmgyIHtcXG4gICAgZm9udC1zaXplOiAycmVtO1xcbiAgfVxcbn1cXG5cXG5oMywgLmgzIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjNyZW0gKyAwLjZ2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGgzLCAuaDMge1xcbiAgICBmb250LXNpemU6IDEuNzVyZW07XFxuICB9XFxufVxcblxcbmg0LCAuaDQge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICBoNCwgLmg0IHtcXG4gICAgZm9udC1zaXplOiAxLjVyZW07XFxuICB9XFxufVxcblxcbmg1LCAuaDUge1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG5cXG5oNiwgLmg2IHtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG59XFxuXFxucCB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG59XFxuXFxuYWJiclt0aXRsZV0sXFxuYWJicltkYXRhLWJzLW9yaWdpbmFsLXRpdGxlXSB7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcXG4gIGN1cnNvcjogaGVscDtcXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTtcXG59XFxuXFxuYWRkcmVzcyB7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcblxcbm9sLFxcbnVsIHtcXG4gIHBhZGRpbmctbGVmdDogMnJlbTtcXG59XFxuXFxub2wsXFxudWwsXFxuZGwge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxufVxcblxcbm9sIG9sLFxcbnVsIHVsLFxcbm9sIHVsLFxcbnVsIG9sIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbmR0IHtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxufVxcblxcbmRkIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG5cXG5ibG9ja3F1b3RlIHtcXG4gIG1hcmdpbjogMCAwIDFyZW07XFxufVxcblxcbmIsXFxuc3Ryb25nIHtcXG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XFxufVxcblxcbnNtYWxsLCAuc21hbGwge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbn1cXG5cXG5tYXJrLCAubWFyayB7XFxuICBwYWRkaW5nOiAwLjJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XFxufVxcblxcbnN1YixcXG5zdXAge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZm9udC1zaXplOiAwLjc1ZW07XFxuICBsaW5lLWhlaWdodDogMDtcXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcXG59XFxuXFxuc3ViIHtcXG4gIGJvdHRvbTogLTAuMjVlbTtcXG59XFxuXFxuc3VwIHtcXG4gIHRvcDogLTAuNWVtO1xcbn1cXG5cXG5hIHtcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XFxufVxcbmE6aG92ZXIge1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxufVxcblxcbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pLCBhOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKTpob3ZlciB7XFxuICBjb2xvcjogaW5oZXJpdDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG59XFxuXFxucHJlLFxcbmNvZGUsXFxua2JkLFxcbnNhbXAge1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtbW9ub3NwYWNlKTtcXG4gIGZvbnQtc2l6ZTogMWVtO1xcbiAgZGlyZWN0aW9uOiBsdHIgLyogcnRsOmlnbm9yZSAqLztcXG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTtcXG59XFxuXFxucHJlIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBvdmVyZmxvdzogYXV0bztcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG59XFxucHJlIGNvZGUge1xcbiAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgY29sb3I6IGluaGVyaXQ7XFxuICB3b3JkLWJyZWFrOiBub3JtYWw7XFxufVxcblxcbmNvZGUge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICNkNjMzODQ7XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxufVxcbmEgPiBjb2RlIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbn1cXG5cXG5rYmQge1xcbiAgcGFkZGluZzogMC4ycmVtIDAuNHJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxua2JkIGtiZCB7XFxuICBwYWRkaW5nOiAwO1xcbiAgZm9udC1zaXplOiAxZW07XFxuICBmb250LXdlaWdodDogNzAwO1xcbn1cXG5cXG5maWd1cmUge1xcbiAgbWFyZ2luOiAwIDAgMXJlbTtcXG59XFxuXFxuaW1nLFxcbnN2ZyB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbn1cXG5cXG50YWJsZSB7XFxuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XFxufVxcblxcbmNhcHRpb24ge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxufVxcblxcbnRoIHtcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XFxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDtcXG59XFxuXFxudGhlYWQsXFxudGJvZHksXFxudGZvb3QsXFxudHIsXFxudGQsXFxudGgge1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMDtcXG59XFxuXFxubGFiZWwge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG5cXG5idXR0b24ge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuXFxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xcbiAgb3V0bGluZTogMDtcXG59XFxuXFxuaW5wdXQsXFxuYnV0dG9uLFxcbnNlbGVjdCxcXG5vcHRncm91cCxcXG50ZXh0YXJlYSB7XFxuICBtYXJnaW46IDA7XFxuICBmb250LWZhbWlseTogaW5oZXJpdDtcXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbn1cXG5cXG5idXR0b24sXFxuc2VsZWN0IHtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbn1cXG5cXG5bcm9sZT1idXR0b25dIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuc2VsZWN0IHtcXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xcbn1cXG5cXG5bbGlzdF06Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG5idXR0b24sXFxuW3R5cGU9YnV0dG9uXSxcXG5bdHlwZT1yZXNldF0sXFxuW3R5cGU9c3VibWl0XSB7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcXG59XFxuYnV0dG9uOm5vdCg6ZGlzYWJsZWQpLFxcblt0eXBlPWJ1dHRvbl06bm90KDpkaXNhYmxlZCksXFxuW3R5cGU9cmVzZXRdOm5vdCg6ZGlzYWJsZWQpLFxcblt0eXBlPXN1Ym1pdF06bm90KDpkaXNhYmxlZCkge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG5cXG46Oi1tb3otZm9jdXMtaW5uZXIge1xcbiAgcGFkZGluZzogMDtcXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcXG59XFxuXFxudGV4dGFyZWEge1xcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcXG59XFxuXFxuZmllbGRzZXQge1xcbiAgbWluLXdpZHRoOiAwO1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbjogMDtcXG4gIGJvcmRlcjogMDtcXG59XFxuXFxubGVnZW5kIHtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMjc1cmVtICsgMC4zdncpO1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGxlZ2VuZCB7XFxuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xcbiAgfVxcbn1cXG5sZWdlbmQgKyAqIHtcXG4gIGNsZWFyOiBsZWZ0O1xcbn1cXG5cXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcXG4gIHBhZGRpbmc6IDA7XFxufVxcblxcbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XFxuICBoZWlnaHQ6IGF1dG87XFxufVxcblxcblt0eXBlPXNlYXJjaF0ge1xcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcXG59XFxuXFxuLyogcnRsOnJhdzpcXG5bdHlwZT1cXFwidGVsXFxcIl0sXFxuW3R5cGU9XFxcInVybFxcXCJdLFxcblt0eXBlPVxcXCJlbWFpbFxcXCJdLFxcblt0eXBlPVxcXCJudW1iZXJcXFwiXSB7XFxuICBkaXJlY3Rpb246IGx0cjtcXG59XFxuKi9cXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbn1cXG5cXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xcbiAgcGFkZGluZzogMDtcXG59XFxuXFxuOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBmb250OiBpbmhlcml0O1xcbn1cXG5cXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIGZvbnQ6IGluaGVyaXQ7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcXG59XFxuXFxub3V0cHV0IHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuXFxuaWZyYW1lIHtcXG4gIGJvcmRlcjogMDtcXG59XFxuXFxuc3VtbWFyeSB7XFxuICBkaXNwbGF5OiBsaXN0LWl0ZW07XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbnByb2dyZXNzIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcXG59XFxuXFxuW2hpZGRlbl0ge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGVhZCB7XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBmb250LXdlaWdodDogMzAwO1xcbn1cXG5cXG4uZGlzcGxheS0xIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjYyNXJlbSArIDQuNXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS0xIHtcXG4gICAgZm9udC1zaXplOiA1cmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS0yIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjU3NXJlbSArIDMuOXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS0yIHtcXG4gICAgZm9udC1zaXplOiA0LjVyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTMge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNTI1cmVtICsgMy4zdncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTMge1xcbiAgICBmb250LXNpemU6IDRyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTQge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNDc1cmVtICsgMi43dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTQge1xcbiAgICBmb250LXNpemU6IDMuNXJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktNSB7XFxuICBmb250LXNpemU6IGNhbGMoMS40MjVyZW0gKyAyLjF2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktNSB7XFxuICAgIGZvbnQtc2l6ZTogM3JlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktNiB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktNiB7XFxuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xcbiAgfVxcbn1cXG5cXG4ubGlzdC11bnN0eWxlZCB7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ubGlzdC1pbmxpbmUge1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLmxpc3QtaW5saW5lLWl0ZW0ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG4ubGlzdC1pbmxpbmUtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcXG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xcbn1cXG5cXG4uaW5pdGlhbGlzbSB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xcbn1cXG5cXG4uYmxvY2txdW90ZSB7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG4uYmxvY2txdW90ZSA+IDpsYXN0LWNoaWxkIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5ibG9ja3F1b3RlLWZvb3RlciB7XFxuICBtYXJnaW4tdG9wOiAtMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJsb2NrcXVvdGUtZm9vdGVyOjpiZWZvcmUge1xcbiAgY29udGVudDogXFxcIuKAlMKgXFxcIjtcXG59XFxuXFxuLmltZy1mbHVpZCB7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IGF1dG87XFxufVxcblxcbi5pbWctdGh1bWJuYWlsIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IGF1dG87XFxufVxcblxcbi5maWd1cmUge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG5cXG4uZmlndXJlLWltZyB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBsaW5lLWhlaWdodDogMTtcXG59XFxuXFxuLmZpZ3VyZS1jYXB0aW9uIHtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4uY29udGFpbmVyLFxcbi5jb250YWluZXItZmx1aWQsXFxuLmNvbnRhaW5lci14eGwsXFxuLmNvbnRhaW5lci14bCxcXG4uY29udGFpbmVyLWxnLFxcbi5jb250YWluZXItbWQsXFxuLmNvbnRhaW5lci1zbSB7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWJzLWd1dHRlci14LCAwLjc1cmVtKTtcXG4gIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtZ3V0dGVyLXgsIDAuNzVyZW0pO1xcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogNTQwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogNzIwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogOTYwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLmNvbnRhaW5lci14eGwsIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xcbiAgICBtYXgtd2lkdGg6IDEzMjBweDtcXG4gIH1cXG59XFxuLnJvdyB7XFxuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICAtLWJzLWd1dHRlci15OiAwO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXkpICogLTEpO1xcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIC0yKTtcXG4gIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIC0yKTtcXG59XFxuLnJvdyA+ICoge1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gMik7XFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gMik7XFxuICBtYXJnaW4tdG9wOiB2YXIoLS1icy1ndXR0ZXIteSk7XFxufVxcblxcbi5jb2wge1xcbiAgZmxleDogMSAwIDAlO1xcbn1cXG5cXG4ucm93LWNvbHMtYXV0byA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogYXV0bztcXG59XFxuXFxuLnJvdy1jb2xzLTEgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcblxcbi5yb3ctY29scy0yID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA1MCU7XFxufVxcblxcbi5yb3ctY29scy0zID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLnJvdy1jb2xzLTQgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDI1JTtcXG59XFxuXFxuLnJvdy1jb2xzLTUgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDIwJTtcXG59XFxuXFxuLnJvdy1jb2xzLTYgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLWF1dG8ge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogYXV0bztcXG59XFxuXFxuLmNvbC0xIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtMiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC0zIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDI1JTtcXG59XFxuXFxuLmNvbC00IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4uY29sLTUge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtNiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA1MCU7XFxufVxcblxcbi5jb2wtNyB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLmNvbC04IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLTkge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNzUlO1xcbn1cXG5cXG4uY29sLTEwIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4uY29sLTExIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLTEyIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcblxcbi5vZmZzZXQtMSB7XFxuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC0yIHtcXG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG59XFxuXFxuLm9mZnNldC0zIHtcXG4gIG1hcmdpbi1sZWZ0OiAyNSU7XFxufVxcblxcbi5vZmZzZXQtNCB7XFxuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5vZmZzZXQtNSB7XFxuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5vZmZzZXQtNiB7XFxuICBtYXJnaW4tbGVmdDogNTAlO1xcbn1cXG5cXG4ub2Zmc2V0LTcge1xcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ub2Zmc2V0LTgge1xcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4ub2Zmc2V0LTkge1xcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcXG59XFxuXFxuLm9mZnNldC0xMCB7XFxuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5vZmZzZXQtMTEge1xcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uZy0wLFxcbi5neC0wIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDA7XFxufVxcblxcbi5nLTAsXFxuLmd5LTAge1xcbiAgLS1icy1ndXR0ZXIteTogMDtcXG59XFxuXFxuLmctMSxcXG4uZ3gtMSB7XFxuICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbn1cXG5cXG4uZy0xLFxcbi5neS0xIHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxufVxcblxcbi5nLTIsXFxuLmd4LTIge1xcbiAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbn1cXG5cXG4uZy0yLFxcbi5neS0yIHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG59XFxuXFxuLmctMyxcXG4uZ3gtMyB7XFxuICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbn1cXG5cXG4uZy0zLFxcbi5neS0zIHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxufVxcblxcbi5nLTQsXFxuLmd4LTQge1xcbiAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbn1cXG5cXG4uZy00LFxcbi5neS00IHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG59XFxuXFxuLmctNSxcXG4uZ3gtNSB7XFxuICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbn1cXG5cXG4uZy01LFxcbi5neS01IHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmNvbC1zbSB7XFxuICAgIGZsZXg6IDEgMCAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLXNtLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLXNtLTAsXFxuLmd4LXNtLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmctc20tMCxcXG4uZ3ktc20tMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy1zbS0xLFxcbi5neC1zbS0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTEsXFxuLmd5LXNtLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMixcXG4uZ3gtc20tMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTIsXFxuLmd5LXNtLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS0zLFxcbi5neC1zbS0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTMsXFxuLmd5LXNtLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctc20tNCxcXG4uZ3gtc20tNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTQsXFxuLmd5LXNtLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS01LFxcbi5neC1zbS01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTUsXFxuLmd5LXNtLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5jb2wtbWQge1xcbiAgICBmbGV4OiAxIDAgMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLW1kLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy1tZC0wLFxcbi5neC1tZC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLW1kLTAsXFxuLmd5LW1kLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmctbWQtMSxcXG4uZ3gtbWQtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC0xLFxcbi5neS1tZC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTIsXFxuLmd4LW1kLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC0yLFxcbi5neS1tZC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMyxcXG4uZ3gtbWQtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy1tZC0zLFxcbi5neS1tZC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTQsXFxuLmd4LW1kLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC00LFxcbi5neS1tZC00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtNSxcXG4uZ3gtbWQtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy1tZC01LFxcbi5neS1tZC01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuY29sLWxnIHtcXG4gICAgZmxleDogMSAwIDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLWxnLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLWxnLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmctbGctMCxcXG4uZ3gtbGctMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy1sZy0wLFxcbi5neS1sZy0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLWxnLTEsXFxuLmd4LWxnLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctbGctMSxcXG4uZ3ktbGctMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0yLFxcbi5neC1sZy0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctMixcXG4uZ3ktbGctMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTMsXFxuLmd4LWxnLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctbGctMyxcXG4uZ3ktbGctMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy1sZy00LFxcbi5neC1sZy00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctNCxcXG4uZ3ktbGctNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTUsXFxuLmd4LWxnLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmctbGctNSxcXG4uZ3ktbGctNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5jb2wteGwge1xcbiAgICBmbGV4OiAxIDAgMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wteGwtMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLXhsLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14bC04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy14bC0wLFxcbi5neC14bC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLXhsLTAsXFxuLmd5LXhsLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmcteGwtMSxcXG4uZ3gteGwtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy14bC0xLFxcbi5neS14bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTIsXFxuLmd4LXhsLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC0yLFxcbi5neS14bC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMyxcXG4uZ3gteGwtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy14bC0zLFxcbi5neS14bC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTQsXFxuLmd4LXhsLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC00LFxcbi5neS14bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtNSxcXG4uZ3gteGwtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy14bC01LFxcbi5neS14bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLmNvbC14eGwge1xcbiAgICBmbGV4OiAxIDAgMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0wLFxcbi5neC14eGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy14eGwtMCxcXG4uZ3kteHhsLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmcteHhsLTEsXFxuLmd4LXh4bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0xLFxcbi5neS14eGwtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMixcXG4uZ3gteHhsLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMixcXG4uZ3kteHhsLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMyxcXG4uZ3gteHhsLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTMsXFxuLmd5LXh4bC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC00LFxcbi5neC14eGwtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC00LFxcbi5neS14eGwtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC01LFxcbi5neC14eGwtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy14eGwtNSxcXG4uZ3kteHhsLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG4udGFibGUge1xcbiAgLS1icy10YWJsZS1iZzogdHJhbnNwYXJlbnQ7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMyMTI1Mjk7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzIxMjUyOTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiByZ2JhKDAsIDAsIDAsIDAuMSk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogcmdiYSgwLCAwLCAwLCAwLjA3NSk7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XFxuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XFxufVxcbi50YWJsZSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtdGFibGUtYmcpO1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgOTk5OXB4IHZhcigtLWJzLXRhYmxlLWFjY2VudC1iZyk7XFxufVxcbi50YWJsZSA+IHRib2R5IHtcXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xcbn1cXG4udGFibGUgPiB0aGVhZCB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xcbn1cXG4udGFibGUgPiA6bm90KDpsYXN0LWNoaWxkKSA+IDpsYXN0LWNoaWxkID4gKiB7XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Q29sb3I7XFxufVxcblxcbi5jYXB0aW9uLXRvcCB7XFxuICBjYXB0aW9uLXNpZGU6IHRvcDtcXG59XFxuXFxuLnRhYmxlLXNtID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC4yNXJlbTtcXG59XFxuXFxuLnRhYmxlLWJvcmRlcmVkID4gOm5vdChjYXB0aW9uKSA+ICoge1xcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcXG59XFxuLnRhYmxlLWJvcmRlcmVkID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gIGJvcmRlci13aWR0aDogMCAxcHg7XFxufVxcblxcbi50YWJsZS1ib3JkZXJsZXNzID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxufVxcblxcbi50YWJsZS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpIHtcXG4gIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWJnKTtcXG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yKTtcXG59XFxuXFxuLnRhYmxlLWFjdGl2ZSB7XFxuICAtLWJzLXRhYmxlLWFjY2VudC1iZzogdmFyKC0tYnMtdGFibGUtYWN0aXZlLWJnKTtcXG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1hY3RpdmUtY29sb3IpO1xcbn1cXG5cXG4udGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyIHtcXG4gIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1ob3Zlci1iZyk7XFxuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtaG92ZXItY29sb3IpO1xcbn1cXG5cXG4udGFibGUtcHJpbWFyeSB7XFxuICAtLWJzLXRhYmxlLWJnOiAjY2ZlMmZmO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjYzVkN2YyO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNiYWNiZTY7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNiZmQxZWM7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNiYWNiZTY7XFxufVxcblxcbi50YWJsZS1zZWNvbmRhcnkge1xcbiAgLS1icy10YWJsZS1iZzogI2UyZTNlNTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2Q3ZDhkYTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjY2JjY2NlO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZDFkMmQ0O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjY2JjY2NlO1xcbn1cXG5cXG4udGFibGUtc3VjY2VzcyB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZDFlN2RkO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjYzdkYmQyO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNiY2QwYzc7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNjMWQ2Y2M7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNiY2QwYzc7XFxufVxcblxcbi50YWJsZS1pbmZvIHtcXG4gIC0tYnMtdGFibGUtYmc6ICNjZmY0ZmM7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNjNWU4ZWY7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JhZGNlMztcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2JmZTJlOTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2JhZGNlMztcXG59XFxuXFxuLnRhYmxlLXdhcm5pbmcge1xcbiAgLS1icy10YWJsZS1iZzogI2ZmZjNjZDtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2YyZTdjMztcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZTZkYmI5O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZWNlMWJlO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjZTZkYmI5O1xcbn1cXG5cXG4udGFibGUtZGFuZ2VyIHtcXG4gIC0tYnMtdGFibGUtYmc6ICNmOGQ3ZGE7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNlY2NjY2Y7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2RmYzJjNDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2U1YzdjYTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2RmYzJjNDtcXG59XFxuXFxuLnRhYmxlLWxpZ2h0IHtcXG4gIC0tYnMtdGFibGUtYmc6ICNmOGY5ZmE7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNlY2VkZWU7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2RmZTBlMTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2U1ZTZlNztcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2RmZTBlMTtcXG59XFxuXFxuLnRhYmxlLWRhcmsge1xcbiAgLS1icy10YWJsZS1iZzogIzIxMjUyOTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogIzJjMzAzNDtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogI2ZmZjtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjMzczYjNlO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICNmZmY7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjMzIzNTM5O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogI2ZmZjtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyLWNvbG9yOiAjMzczYjNlO1xcbn1cXG5cXG4udGFibGUtcmVzcG9uc2l2ZSB7XFxuICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbn1cXG5cXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLXNtIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLW1kIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS14bCB7XFxuICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUteHhsIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG4uZm9ybS1sYWJlbCB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxufVxcblxcbi5jb2wtZm9ybS1sYWJlbCB7XFxuICBwYWRkaW5nLXRvcDogY2FsYygwLjM3NXJlbSArIDFweCk7XFxuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjM3NXJlbSArIDFweCk7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcXG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XFxuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjVyZW0gKyAxcHgpO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG5cXG4uY29sLWZvcm0tbGFiZWwtc20ge1xcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4yNXJlbSArIDFweCk7XFxuICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjI1cmVtICsgMXB4KTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxufVxcblxcbi5mb3JtLXRleHQge1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tY29udHJvbCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4uZm9ybS1jb250cm9sW3R5cGU9ZmlsZV06bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuLmZvcm0tY29udHJvbDpmb2N1cyB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XFxuICBoZWlnaHQ6IDEuNWVtO1xcbn1cXG4uZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMC43NXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMDtcXG4gIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAxcHg7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLWNvbnRyb2w6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGUwZTM7XFxufVxcbi5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBtYXJnaW46IC0wLjM3NXJlbSAtMC43NXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IDFweDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1jb250cm9sOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZTBlMztcXG59XFxuXFxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcXG59XFxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xcbiAgcGFkZGluZy1yaWdodDogMDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1zbSB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1zbTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBtYXJnaW46IC0wLjI1cmVtIC0wLjVyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMC41cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLXNtOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuMjVyZW0gLTAuNXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjVyZW07XFxufVxcblxcbi5mb3JtLWNvbnRyb2wtbGcge1xcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtbGc6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0xcmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtbGc6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0xcmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XFxufVxcblxcbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSArIDJweCk7XFxufVxcbnRleHRhcmVhLmZvcm0tY29udHJvbC1zbSB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcXG59XFxudGV4dGFyZWEuZm9ybS1jb250cm9sLWxnIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1jb2xvciB7XFxuICBtYXgtd2lkdGg6IDNyZW07XFxuICBoZWlnaHQ6IGF1dG87XFxuICBwYWRkaW5nOiAwLjM3NXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1jb2xvcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1jb2xvcjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5mb3JtLXNlbGVjdCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMi4yNXJlbSAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxufVxcbi5mb3JtLXNlbGVjdDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXNlbGVjdFttdWx0aXBsZV0sIC5mb3JtLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XFxcIjFcXFwiXSkge1xcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxufVxcbi5mb3JtLXNlbGVjdDpkaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxufVxcbi5mb3JtLXNlbGVjdDotbW96LWZvY3VzcmluZyB7XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzIxMjUyOTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0LXNtIHtcXG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxufVxcblxcbi5mb3JtLXNlbGVjdC1sZyB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuXFxuLmZvcm0tY2hlY2sge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtaW4taGVpZ2h0OiAxLjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDEuNWVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XFxufVxcbi5mb3JtLWNoZWNrIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgbWFyZ2luLWxlZnQ6IC0xLjVlbTtcXG59XFxuXFxuLmZvcm0tY2hlY2staW5wdXQge1xcbiAgd2lkdGg6IDFlbTtcXG4gIGhlaWdodDogMWVtO1xcbiAgbWFyZ2luLXRvcDogMC4yNWVtO1xcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjI1KTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxuICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XSB7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9cmFkaW9dIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6YWN0aXZlIHtcXG4gIGZpbHRlcjogYnJpZ2h0bmVzcyg5MCUpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0OmNoZWNrZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZFt0eXBlPWNoZWNrYm94XSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwbDMgM2w2LTYnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZFt0eXBlPXJhZGlvXSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzInIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBmaWx0ZXI6IG5vbmU7XFxuICBvcGFjaXR5OiAwLjU7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuXFxuLmZvcm0tc3dpdGNoIHtcXG4gIHBhZGRpbmctbGVmdDogMi41ZW07XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICB3aWR0aDogMmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0yLjVlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0ncmdiYSUyODAsIDAsIDAsIDAuMjUlMjknLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyMzg2YjdmZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1zd2l0Y2ggLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbmxpbmUge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xcbn1cXG5cXG4uYnRuLWNoZWNrIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG59XFxuLmJ0bi1jaGVja1tkaXNhYmxlZF0gKyAuYnRuLCAuYnRuLWNoZWNrOmRpc2FibGVkICsgLmJ0biB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGZpbHRlcjogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNjU7XFxufVxcblxcbi5mb3JtLXJhbmdlIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxLjVyZW07XFxuICBwYWRkaW5nOiAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1czo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG4uZm9ybS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXJhbmdlOjotbW96LWZvY3VzLW91dGVyIHtcXG4gIGJvcmRlcjogMDtcXG59XFxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcXG4gIHdpZHRoOiAxcmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiNmQ0ZmU7XFxufVxcbi5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMC41cmVtO1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbn1cXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWI6YWN0aXZlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiNmQ0ZmU7XFxufVxcbi5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAwLjVyZW07XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XFxufVxcbi5mb3JtLXJhbmdlOmRpc2FibGVkIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4uZm9ybS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcXG59XFxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjViZDtcXG59XFxuXFxuLmZvcm0tZmxvYXRpbmcge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2wsXFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3Qge1xcbiAgaGVpZ2h0OiBjYWxjKDMuNXJlbSArIDJweCk7XFxuICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gbGFiZWwge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIGhlaWdodDogMTAwJTtcXG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjFzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsIC5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XFxuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcXG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1zZWxlY3Qge1xcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMgfiBsYWJlbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB+IGxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNjU7XFxuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwgfiBsYWJlbCB7XFxuICBvcGFjaXR5OiAwLjY1O1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XFxufVxcblxcbi5pbnB1dC1ncm91cCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Qge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZmxleDogMSAxIGF1dG87XFxuICB3aWR0aDogMSU7XFxuICBtaW4td2lkdGg6IDA7XFxufVxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXFxuLmlucHV0LWdyb3VwID4gLmZvcm0tc2VsZWN0OmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxufVxcbi5pbnB1dC1ncm91cCAuYnRuIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHotaW5kZXg6IDI7XFxufVxcbi5pbnB1dC1ncm91cCAuYnRuOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxufVxcblxcbi5pbnB1dC1ncm91cC10ZXh0IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuXFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rMykge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gOm50aC1sYXN0LWNoaWxkKG4rMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuKzQpIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5pbnB1dC1ncm91cCA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCgudmFsaWQtdG9vbHRpcCk6bm90KC52YWxpZC1mZWVkYmFjayk6bm90KC5pbnZhbGlkLXRvb2x0aXApOm5vdCguaW52YWxpZC1mZWVkYmFjaykge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuXFxuLnZhbGlkLWZlZWRiYWNrIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLnZhbGlkLXRvb2x0aXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAxMDAlO1xcbiAgei1pbmRleDogNTtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjUsIDEzNSwgODQsIDAuOSk7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXFxuLndhcy12YWxpZGF0ZWQgOnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsXFxuLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxcbi5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgcmlnaHQgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgcGFkZGluZy1yaWdodDogNC4xMjVyZW07XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpLCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMTk4NzU0JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjc1cmVtIGNlbnRlciwgY2VudGVyIHJpZ2h0IDIuMjVyZW07XFxuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweCwgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDp2YWxpZDpmb2N1cywgLmZvcm0tc2VsZWN0LmlzLXZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkOmNoZWNrZWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Zm9jdXMsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC4yNSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB+IC52YWxpZC1mZWVkYmFjayB7XFxuICBtYXJnaW4tbGVmdDogMC41ZW07XFxufVxcblxcbi5pbnZhbGlkLWZlZWRiYWNrIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogI2RjMzU0NTtcXG59XFxuXFxuLmludmFsaWQtdG9vbHRpcCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDEwMCU7XFxuICB6LWluZGV4OiA1O1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsIDUzLCA2OSwgMC45KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLFxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC10b29sdGlwIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSkgY2FsYygwLjc1ZW0gKyAwLjM3NXJlbSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIHRleHRhcmVhLmZvcm0tY29udHJvbDppbnZhbGlkLCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZCwgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgcGFkZGluZy1yaWdodDogNC4xMjVyZW07XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNlJTNjcGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyUyMzM0M2E0MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpLCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNkYzM1NDUnJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8lM2UlM2NwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvJTNlJTNjY2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nJTIzZGMzNTQ1JyBzdHJva2U9J25vbmUnLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4LCBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OmludmFsaWQ6Zm9jdXMsIC5mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkOmNoZWNrZWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQgfiAuaW52YWxpZC1mZWVkYmFjayB7XFxuICBtYXJnaW4tbGVmdDogMC41ZW07XFxufVxcblxcbi5idG4ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuYnRuIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmJ0bjpob3ZlciB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sIC5idG46Zm9jdXMge1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG4uYnRuOmRpc2FibGVkLCAuYnRuLmRpc2FibGVkLCBmaWVsZHNldDpkaXNhYmxlZCAuYnRuIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgb3BhY2l0eTogMC42NTtcXG59XFxuXFxuLmJ0bi1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiNWVkNztcXG4gIGJvcmRlci1jb2xvcjogIzBhNThjYTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tcHJpbWFyeSwgLmJ0bi1wcmltYXJ5OmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiNWVkNztcXG4gIGJvcmRlci1jb2xvcjogIzBhNThjYTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg0OSwgMTMyLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tcHJpbWFyeSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXByaW1hcnksIC5idG4tcHJpbWFyeTphY3RpdmUsIC5idG4tcHJpbWFyeS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTU4Y2E7XFxuICBib3JkZXItY29sb3I6ICMwYTUzYmU7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXByaW1hcnk6Zm9jdXMsIC5idG4tcHJpbWFyeTphY3RpdmU6Zm9jdXMsIC5idG4tcHJpbWFyeS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNDksIDEzMiwgMjUzLCAwLjUpO1xcbn1cXG4uYnRuLXByaW1hcnk6ZGlzYWJsZWQsIC5idG4tcHJpbWFyeS5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcblxcbi5idG4tc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1zZWNvbmRhcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjNTY1ZTY0O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1zZWNvbmRhcnksIC5idG4tc2Vjb25kYXJ5OmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjNjM2YTtcXG4gIGJvcmRlci1jb2xvcjogIzU2NWU2NDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXNlY29uZGFyeSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXNlY29uZGFyeSwgLmJ0bi1zZWNvbmRhcnk6YWN0aXZlLCAuYnRuLXNlY29uZGFyeS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NWU2NDtcXG4gIGJvcmRlci1jb2xvcjogIzUxNTg1ZTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMwLCAxMzgsIDE0NSwgMC41KTtcXG59XFxuLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLmJ0bi1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLmJ0bi1zdWNjZXNzOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE1NzM0NztcXG4gIGJvcmRlci1jb2xvcjogIzE0NmM0MztcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tc3VjY2VzcywgLmJ0bi1zdWNjZXNzOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE1NzM0NztcXG4gIGJvcmRlci1jb2xvcjogIzE0NmM0MztcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg2MCwgMTUzLCAxMTAsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc3VjY2VzcywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXN1Y2Nlc3MsIC5idG4tc3VjY2VzczphY3RpdmUsIC5idG4tc3VjY2Vzcy5hY3RpdmUsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDZjNDM7XFxuICBib3JkZXItY29sb3I6ICMxMzY1M2Y7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tc3VjY2VzczphY3RpdmU6Zm9jdXMsIC5idG4tc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjAsIDE1MywgMTEwLCAwLjUpO1xcbn1cXG4uYnRuLXN1Y2Nlc3M6ZGlzYWJsZWQsIC5idG4tc3VjY2Vzcy5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcblxcbi5idG4taW5mbyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4taW5mbzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMWQyZjI7XFxuICBib3JkZXItY29sb3I6ICMyNWNmZjI7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLWluZm8sIC5idG4taW5mbzpmb2N1cyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzMWQyZjI7XFxuICBib3JkZXItY29sb3I6ICMyNWNmZjI7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTEsIDE3MiwgMjA0LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWluZm8sIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1pbmZvLCAuYnRuLWluZm86YWN0aXZlLCAuYnRuLWluZm8uYWN0aXZlLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2RkNWYzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMjVjZmYyO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWluZm86Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWluZm86YWN0aXZlOmZvY3VzLCAuYnRuLWluZm8uYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDExLCAxNzIsIDIwNCwgMC41KTtcXG59XFxuLmJ0bi1pbmZvOmRpc2FibGVkLCAuYnRuLWluZm8uZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG5cXG4uYnRuLXdhcm5pbmcge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG4uYnRuLXdhcm5pbmc6aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjYTJjO1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi13YXJuaW5nLCAuYnRuLXdhcm5pbmc6Zm9jdXMge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjYTJjO1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxNywgMTY0LCA2LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXdhcm5pbmcsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi13YXJuaW5nLCAuYnRuLXdhcm5pbmc6YWN0aXZlLCAuYnRuLXdhcm5pbmcuYWN0aXZlLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjZDM5O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjNzIwO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLXdhcm5pbmc6YWN0aXZlOmZvY3VzLCAuYnRuLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4td2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxNywgMTY0LCA2LCAwLjUpO1xcbn1cXG4uYnRuLXdhcm5pbmc6ZGlzYWJsZWQsIC5idG4td2FybmluZy5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcblxcbi5idG4tZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuLmJ0bi1kYW5nZXI6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmIyZDNiO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjAyYTM3O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1kYW5nZXIsIC5idG4tZGFuZ2VyOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JiMmQzYjtcXG4gIGJvcmRlci1jb2xvcjogI2IwMmEzNztcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjUsIDgzLCA5NywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYW5nZXIsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYW5nZXIsIC5idG4tZGFuZ2VyOmFjdGl2ZSwgLmJ0bi1kYW5nZXIuYWN0aXZlLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiMDJhMzc7XFxuICBib3JkZXItY29sb3I6ICNhNTI4MzQ7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFuZ2VyOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tZGFuZ2VyOmZvY3VzLCAuYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMsIC5idG4tZGFuZ2VyLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xcbn1cXG4uYnRuLWRhbmdlcjpkaXNhYmxlZCwgLmJ0bi1kYW5nZXIuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG5cXG4uYnRuLWxpZ2h0IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmJ0bi1saWdodDpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XFxuICBib3JkZXItY29sb3I6ICNmOWZhZmI7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLWxpZ2h0LCAuYnRuLWxpZ2h0OmZvY3VzIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMTEsIDIxMiwgMjEzLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWxpZ2h0LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tbGlnaHQsIC5idG4tbGlnaHQ6YWN0aXZlLCAuYnRuLWxpZ2h0LmFjdGl2ZSwgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XFxuICBib3JkZXItY29sb3I6ICNmOWZhZmI7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tbGlnaHQ6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodDphY3RpdmU6Zm9jdXMsIC5idG4tbGlnaHQuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMTEsIDIxMiwgMjEzLCAwLjUpO1xcbn1cXG4uYnRuLWxpZ2h0OmRpc2FibGVkLCAuYnRuLWxpZ2h0LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuXFxuLmJ0bi1kYXJrIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1kYXJrOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMztcXG4gIGJvcmRlci1jb2xvcjogIzFhMWUyMTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tZGFyaywgLmJ0bi1kYXJrOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFjMWYyMztcXG4gIGJvcmRlci1jb2xvcjogIzFhMWUyMTtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg2NiwgNzAsIDczLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhcmssIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYXJrLCAuYnRuLWRhcms6YWN0aXZlLCAuYnRuLWRhcmsuYWN0aXZlLCAuc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWExZTIxO1xcbiAgYm9yZGVyLWNvbG9yOiAjMTkxYzFmO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWRhcms6YWN0aXZlOmZvY3VzLCAuYnRuLWRhcmsuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDY2LCA3MCwgNzMsIDAuNSk7XFxufVxcbi5idG4tZGFyazpkaXNhYmxlZCwgLmJ0bi1kYXJrLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5hY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnkuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMDgsIDExNywgMTI1LCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLW91dGxpbmUtc3VjY2Vzczpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtc3VjY2VzcywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc3VjY2VzcywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc3VjY2VzcywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5hY3RpdmUsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzE5ODc1NDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtaW5mbyB7XFxuICBjb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuLmJ0bi1vdXRsaW5lLWluZm86aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMjAyLCAyNDAsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1pbmZvLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1pbmZvLCAuYnRuLW91dGxpbmUtaW5mbzphY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtaW5mbzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtaW5mbzpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm86YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMjAyLCAyNDAsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1pbmZvOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtaW5mby5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzBkY2FmMDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XFxuICBjb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsIC5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsIC5idG4tb3V0bGluZS13YXJuaW5nOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuYWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS13YXJuaW5nOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZzphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1NSwgMTkzLCA3LCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtd2FybmluZzpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmMxMDc7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLWRhbmdlciB7XFxuICBjb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtZGFuZ2VyLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhbmdlciwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFuZ2VyLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlci5hY3RpdmUsIC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXI6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYW5nZXIuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNkYzM1NDU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcXG4gIGNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4uYnRuLW91dGxpbmUtbGlnaHQ6aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWxpZ2h0LCAuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tb3V0bGluZS1saWdodDphY3RpdmUsIC5idG4tb3V0bGluZS1saWdodC5hY3RpdmUsIC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1saWdodDpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodDphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmOGY5ZmE7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLWRhcmsge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5idG4tb3V0bGluZS1kYXJrOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1kYXJrLCAuYnRuLW91dGxpbmUtZGFyazpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzMsIDM3LCA0MSwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhcmssIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhcmssIC5idG4tb3V0bGluZS1kYXJrOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhcmsuYWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYXJrOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYXJrOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyazphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMzLCAzNywgNDEsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFyay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLWxpbmsge1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XFxufVxcbi5idG4tbGluazpob3ZlciB7XFxuICBjb2xvcjogIzBhNThjYTtcXG59XFxuLmJ0bi1saW5rOmRpc2FibGVkLCAuYnRuLWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5idG4tbGcsIC5idG4tZ3JvdXAtbGcgPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xcbn1cXG5cXG4uYnRuLXNtLCAuYnRuLWdyb3VwLXNtID4gLmJ0biB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XFxufVxcblxcbi5mYWRlIHtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZhZGUge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZmFkZTpub3QoLnNob3cpIHtcXG4gIG9wYWNpdHk6IDA7XFxufVxcblxcbi5jb2xsYXBzZTpub3QoLnNob3cpIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5jb2xsYXBzaW5nIHtcXG4gIGhlaWdodDogMDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zNXMgZWFzZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jb2xsYXBzaW5nIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmRyb3B1cCxcXG4uZHJvcGVuZCxcXG4uZHJvcGRvd24sXFxuLmRyb3BzdGFydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5kcm9wZG93bi10b2dnbGUge1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG59XFxuLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQ7XFxuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWJvdHRvbTogMDtcXG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcblxcbi5kcm9wZG93bi1tZW51IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMTAwJTtcXG4gIHotaW5kZXg6IDEwMDA7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgbWluLXdpZHRoOiAxMHJlbTtcXG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xcbiAgbWFyZ2luOiAwO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XFxuICBsZWZ0OiAwO1xcbiAgbWFyZ2luLXRvcDogMC4xMjVyZW07XFxufVxcblxcbi5kcm9wZG93bi1tZW51LXN0YXJ0IHtcXG4gIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbn1cXG4uZHJvcGRvd24tbWVudS1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUtZW5kIHtcXG4gIC0tYnMtcG9zaXRpb246IGVuZDtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LXNtLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS1zbS1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1zbS1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1tZC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS1tZC1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1tZC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LWxnLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1sZy1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS1sZy1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS1sZy1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZHJvcGRvd24tbWVudS14bC1zdGFydCB7XFxuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUteGwtZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUteGwtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUteHhsLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14eGwtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXh4bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG4uZHJvcHVwIC5kcm9wZG93bi1tZW51IHtcXG4gIHRvcDogYXV0bztcXG4gIGJvdHRvbTogMTAwJTtcXG59XFxuLmRyb3B1cCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDAuMTI1cmVtO1xcbn1cXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci10b3A6IDA7XFxuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQ7XFxuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcblxcbi5kcm9wZW5kIC5kcm9wZG93bi1tZW51IHtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiBhdXRvO1xcbiAgbGVmdDogMTAwJTtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XFxufVxcbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJpZ2h0OiAwO1xcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XFxufVxcbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG4uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogMDtcXG59XFxuXFxuLmRyb3BzdGFydCAuZHJvcGRvd24tbWVudSB7XFxuICB0b3A6IDA7XFxuICByaWdodDogMTAwJTtcXG4gIGxlZnQ6IGF1dG87XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tcmlnaHQ6IDAuMTI1cmVtO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkO1xcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcXG4gIHZlcnRpY2FsLWFsaWduOiAwO1xcbn1cXG5cXG4uZHJvcGRvd24tZGl2aWRlciB7XFxuICBoZWlnaHQ6IDA7XFxuICBtYXJnaW46IDAuNXJlbSAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbn1cXG5cXG4uZHJvcGRvd24taXRlbSB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4yNXJlbSAxcmVtO1xcbiAgY2xlYXI6IGJvdGg7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAwO1xcbn1cXG4uZHJvcGRvd24taXRlbTpob3ZlciwgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xcbiAgY29sb3I6ICMxZTIxMjU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbn1cXG4uZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XFxuICBjb2xvcjogI2FkYjViZDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5kcm9wZG93bi1tZW51LnNob3cge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi5kcm9wZG93bi1oZWFkZXIge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG5cXG4uZHJvcGRvd24taXRlbS10ZXh0IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogMC4yNXJlbSAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcblxcbi5kcm9wZG93bi1tZW51LWRhcmsge1xcbiAgY29sb3I6ICNkZWUyZTY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzQzYTQwO1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtIHtcXG4gIGNvbG9yOiAjZGVlMmU2O1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmhvdmVyLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCB7XFxuICBjb2xvcjogI2FkYjViZDtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24tZGl2aWRlciB7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XFxuICBjb2xvcjogI2RlZTJlNjtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taGVhZGVyIHtcXG4gIGNvbG9yOiAjYWRiNWJkO1xcbn1cXG5cXG4uYnRuLWdyb3VwLFxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbn1cXG4uYnRuLWdyb3VwID4gLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbGV4OiAxIDEgYXV0bztcXG59XFxuLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXFxuLmJ0bi1ncm91cCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxcbi5idG4tZ3JvdXAgPiAuYnRuOmhvdmVyLFxcbi5idG4tZ3JvdXAgPiAuYnRuOmZvY3VzLFxcbi5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSxcXG4uYnRuLWdyb3VwID4gLmJ0bi5hY3RpdmUsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmhvdmVyLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmZvY3VzLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmFjdGl2ZSxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi5hY3RpdmUge1xcbiAgei1pbmRleDogMTtcXG59XFxuXFxuLmJ0bi10b29sYmFyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxufVxcbi5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXAge1xcbiAgd2lkdGg6IGF1dG87XFxufVxcblxcbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbn1cXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4uYnRuLWdyb3VwID4gLmJ0bjpudGgtY2hpbGQobiszKSxcXG4uYnRuLWdyb3VwID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG5cXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNTYyNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC41NjI1cmVtO1xcbn1cXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwgLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3JlIHtcXG4gIG1hcmdpbi1yaWdodDogMDtcXG59XFxuXFxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtc20gPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XFxufVxcblxcbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLWxnID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcXG59XFxuXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAge1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gIG1hcmdpbi10b3A6IC0xcHg7XFxufVxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4gfiAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxufVxcblxcbi5uYXYge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ubmF2LWxpbmsge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAubmF2LWxpbmsge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4ubmF2LWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGN1cnNvcjogZGVmYXVsdDtcXG59XFxuXFxuLm5hdi10YWJzIHtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rIHtcXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XFxuICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIsIC5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjZTllY2VmICNlOWVjZWYgI2RlZTJlNjtcXG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcXG59XFxuLm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XFxuICBjb2xvcjogIzQ5NTA1NztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICNkZWUyZTYgI2RlZTJlNiAjZmZmO1xcbn1cXG4ubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnUge1xcbiAgbWFyZ2luLXRvcDogLTFweDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuXFxuLm5hdi1waWxscyAubmF2LWxpbmsge1xcbiAgYmFja2dyb3VuZDogbm9uZTtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5uYXYtcGlsbHMgLm5hdi1saW5rLmFjdGl2ZSxcXG4ubmF2LXBpbGxzIC5zaG93ID4gLm5hdi1saW5rIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG59XFxuXFxuLm5hdi1maWxsID4gLm5hdi1saW5rLFxcbi5uYXYtZmlsbCAubmF2LWl0ZW0ge1xcbiAgZmxleDogMSAxIGF1dG87XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcbi5uYXYtanVzdGlmaWVkID4gLm5hdi1saW5rLFxcbi5uYXYtanVzdGlmaWVkIC5uYXYtaXRlbSB7XFxuICBmbGV4LWJhc2lzOiAwO1xcbiAgZmxleC1ncm93OiAxO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG4udGFiLWNvbnRlbnQgPiAudGFiLXBhbmUge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLnRhYi1jb250ZW50ID4gLmFjdGl2ZSB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLm5hdmJhciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xcbn1cXG4ubmF2YmFyID4gLmNvbnRhaW5lcixcXG4ubmF2YmFyID4gLmNvbnRhaW5lci1mbHVpZCxcXG4ubmF2YmFyID4gLmNvbnRhaW5lci1zbSxcXG4ubmF2YmFyID4gLmNvbnRhaW5lci1tZCxcXG4ubmF2YmFyID4gLmNvbnRhaW5lci1sZyxcXG4ubmF2YmFyID4gLmNvbnRhaW5lci14bCxcXG4ubmF2YmFyID4gLmNvbnRhaW5lci14eGwge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogaW5oZXJpdDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxufVxcbi5uYXZiYXItYnJhbmQge1xcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG4ubmF2YmFyLW5hdiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG4ubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgcGFkZGluZy1yaWdodDogMDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG59XFxuLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgcG9zaXRpb246IHN0YXRpYztcXG59XFxuXFxuLm5hdmJhci10ZXh0IHtcXG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xcbn1cXG5cXG4ubmF2YmFyLWNvbGxhcHNlIHtcXG4gIGZsZXgtYmFzaXM6IDEwMCU7XFxuICBmbGV4LWdyb3c6IDE7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbn1cXG5cXG4ubmF2YmFyLXRvZ2dsZXIge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4ubmF2YmFyLXRvZ2dsZXI6aG92ZXIge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbn1cXG4ubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW07XFxufVxcblxcbi5uYXZiYXItdG9nZ2xlci1pY29uIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAxLjVlbTtcXG4gIGhlaWdodDogMS41ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcXG59XFxuXFxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gIG1heC1oZWlnaHQ6IHZhcigtLWJzLXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC1zbSB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLW1kIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLm5hdmJhci1leHBhbmQtbGcge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLm5hdmJhci1leHBhbmQteGwge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLm5hdmJhci1leHBhbmQteHhsIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbi5uYXZiYXItZXhwYW5kIHtcXG4gIGZsZXgtd3JhcDogbm93cmFwO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLWNvbGxhcHNlIHtcXG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIGZsZXgtYmFzaXM6IGF1dG87XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItdG9nZ2xlciB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlciB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU1KTtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdG9nZ2xlci1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODAsIDAsIDAsIDAuNTUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhLFxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6aG92ZXIsXFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpmb2N1cyB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG5cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZCB7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXIge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSUyODI1NSwgMjU1LCAyNTUsIDAuNTUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYSxcXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6aG92ZXIsXFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG5cXG4uY2FyZCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIG1pbi13aWR0aDogMDtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5jYXJkID4gaHIge1xcbiAgbWFyZ2luLXJpZ2h0OiAwO1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5jYXJkID4gLmxpc3QtZ3JvdXAge1xcbiAgYm9yZGVyLXRvcDogaW5oZXJpdDtcXG4gIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XFxufVxcbi5jYXJkID4gLmxpc3QtZ3JvdXA6Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcbi5jYXJkID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXFxuLmNhcmQgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XFxuICBib3JkZXItdG9wOiAwO1xcbn1cXG5cXG4uY2FyZC1ib2R5IHtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbn1cXG5cXG4uY2FyZC10aXRsZSB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxufVxcblxcbi5jYXJkLXN1YnRpdGxlIHtcXG4gIG1hcmdpbi10b3A6IC0wLjI1cmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5jYXJkLWxpbms6aG92ZXIge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbn1cXG4uY2FyZC1saW5rICsgLmNhcmQtbGluayB7XFxuICBtYXJnaW4tbGVmdDogMXJlbSAvKiBydGw6aWdub3JlICovO1xcbn1cXG5cXG4uY2FyZC1oZWFkZXIge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG59XFxuLmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxkIHtcXG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KSAwIDA7XFxufVxcblxcbi5jYXJkLWZvb3RlciB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxufVxcbi5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcblxcbi5jYXJkLWhlYWRlci10YWJzIHtcXG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IC0wLjVyZW07XFxuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcXG4gIGJvcmRlci1ib3R0b206IDA7XFxufVxcblxcbi5jYXJkLWhlYWRlci1waWxscyB7XFxuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XFxuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcXG59XFxuXFxuLmNhcmQtaW1nLW92ZXJsYXkge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgcGFkZGluZzogMXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcblxcbi5jYXJkLWltZyxcXG4uY2FyZC1pbWctdG9wLFxcbi5jYXJkLWltZy1ib3R0b20ge1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcblxcbi5jYXJkLWltZyxcXG4uY2FyZC1pbWctdG9wIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy1ib3R0b20ge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG5cXG4uY2FyZC1ncm91cCA+IC5jYXJkIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmNhcmQtZ3JvdXAge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XFxuICAgIGZsZXg6IDEgMCAwJTtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQgKyAuY2FyZCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICBib3JkZXItbGVmdDogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctdG9wLFxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxufVxcblxcbi5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1yYWRpdXMgMC4xNXMgZWFzZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKSB7XFxuICBjb2xvcjogIzBjNjNlNDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlN2YxZmY7XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKTo6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMwYzYzZTQnJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XFxuICBmbGV4LXNocmluazogMDtcXG4gIHdpZHRoOiAxLjI1cmVtO1xcbiAgaGVpZ2h0OiAxLjI1cmVtO1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMjEyNTI5JyUzZSUzY3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1zaXplOiAxLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbjpob3ZlciB7XFxuICB6LWluZGV4OiAyO1xcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbjpmb2N1cyB7XFxuICB6LWluZGV4OiAzO1xcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWhlYWRlciB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICBib3JkZXI6IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbiAgYm9yZGVyLXdpZHRoOiAwIDFweDtcXG59XFxuXFxuLmFjY29yZGlvbi1ib2R5IHtcXG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcXG59XFxuXFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBib3JkZXItcmlnaHQ6IDA7XFxuICBib3JkZXItbGVmdDogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICBib3JkZXItd2lkdGg6IDA7XFxufVxcbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVtOmZpcnN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG5cXG4uYnJlYWRjcnVtYiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgcGFkZGluZzogMCAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtIHtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbn1cXG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBjb250ZW50OiB2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXIsIFxcXCIvXFxcIikgLyogcnRsOiB2YXIoLS1icy1icmVhZGNydW1iLWRpdmlkZXIsIFxcXCIvXFxcIikgKi87XFxufVxcbi5icmVhZGNydW1iLWl0ZW0uYWN0aXZlIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4ucGFnaW5hdGlvbiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLnBhZ2UtbGluayB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnBhZ2UtbGluayB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5wYWdlLWxpbms6aG92ZXIge1xcbiAgei1pbmRleDogMjtcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcXG59XFxuLnBhZ2UtbGluazpmb2N1cyB7XFxuICB6LWluZGV4OiAzO1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG5cXG4ucGFnZS1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxufVxcbi5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xcbiAgei1pbmRleDogMztcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xcbn1cXG5cXG4ucGFnZS1saW5rIHtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxufVxcblxcbi5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XFxuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuM3JlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuM3JlbTtcXG59XFxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuM3JlbTtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjNyZW07XFxufVxcblxcbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmsge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4ycmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4ycmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMnJlbTtcXG59XFxuXFxuLmJhZGdlIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjY1ZW07XFxuICBmb250LXNpemU6IDAuNzVlbTtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxuICBsaW5lLWhlaWdodDogMTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5iYWRnZTplbXB0eSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4uYnRuIC5iYWRnZSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB0b3A6IC0xcHg7XFxufVxcblxcbi5hbGVydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBwYWRkaW5nOiAxcmVtIDFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4uYWxlcnQtaGVhZGluZyB7XFxuICBjb2xvcjogaW5oZXJpdDtcXG59XFxuXFxuLmFsZXJ0LWxpbmsge1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuXFxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XFxufVxcbi5hbGVydC1kaXNtaXNzaWJsZSAuYnRuLWNsb3NlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgei1pbmRleDogMjtcXG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcXG59XFxuXFxuLmFsZXJ0LXByaW1hcnkge1xcbiAgY29sb3I6ICMwODQyOTg7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZlMmZmO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjZkNGZlO1xcbn1cXG4uYWxlcnQtcHJpbWFyeSAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzA2MzU3YTtcXG59XFxuXFxuLmFsZXJ0LXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzQxNDY0YjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmUzZTU7XFxuICBib3JkZXItY29sb3I6ICNkM2Q2ZDg7XFxufVxcbi5hbGVydC1zZWNvbmRhcnkgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICMzNDM4M2M7XFxufVxcblxcbi5hbGVydC1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMGY1MTMyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTdkZDtcXG4gIGJvcmRlci1jb2xvcjogI2JhZGJjYztcXG59XFxuLmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICMwYzQxMjg7XFxufVxcblxcbi5hbGVydC1pbmZvIHtcXG4gIGNvbG9yOiAjMDU1MTYwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZjRmYztcXG4gIGJvcmRlci1jb2xvcjogI2I2ZWZmYjtcXG59XFxuLmFsZXJ0LWluZm8gLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICMwNDQxNGQ7XFxufVxcblxcbi5hbGVydC13YXJuaW5nIHtcXG4gIGNvbG9yOiAjNjY0ZDAzO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZDtcXG4gIGJvcmRlci1jb2xvcjogI2ZmZWNiNTtcXG59XFxuLmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICM1MjNlMDI7XFxufVxcblxcbi5hbGVydC1kYW5nZXIge1xcbiAgY29sb3I6ICM4NDIwMjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjVjMmM3O1xcbn1cXG4uYWxlcnQtZGFuZ2VyIC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjNmExYTIxO1xcbn1cXG5cXG4uYWxlcnQtbGlnaHQge1xcbiAgY29sb3I6ICM2MzY0NjQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xcbiAgYm9yZGVyLWNvbG9yOiAjZmRmZGZlO1xcbn1cXG4uYWxlcnQtbGlnaHQgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICM0ZjUwNTA7XFxufVxcblxcbi5hbGVydC1kYXJrIHtcXG4gIGNvbG9yOiAjMTQxNjE5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkNDtcXG4gIGJvcmRlci1jb2xvcjogI2JjYmViZjtcXG59XFxuLmFsZXJ0LWRhcmsgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICMxMDEyMTQ7XFxufVxcblxcbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xcbiAgMCUge1xcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDFyZW07XFxuICB9XFxufVxcbi5wcm9ncmVzcyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgaGVpZ2h0OiAxcmVtO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5wcm9ncmVzcy1iYXIge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDFyZW0gMXJlbTtcXG59XFxuXFxuLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XFxuICBhbmltYXRpb246IDFzIGxpbmVhciBpbmZpbml0ZSBwcm9ncmVzcy1iYXItc3RyaXBlcztcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xcbiAgICBhbmltYXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5saXN0LWdyb3VwIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgY29sb3I6ICM0OTUwNTc7XFxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgei1pbmRleDogMTtcXG4gIGNvbG9yOiAjNDk1MDU3O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZlIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogaW5oZXJpdDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS5kaXNhYmxlZCwgLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgei1pbmRleDogMjtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gIG1hcmdpbi10b3A6IC0xcHg7XFxuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxufVxcblxcbi5saXN0LWdyb3VwLWhvcml6b250YWwge1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICBib3JkZXItbGVmdC13aWR0aDogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi10b3A6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuLmxpc3QtZ3JvdXAtZmx1c2gge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtIHtcXG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcXG59XFxuLmxpc3QtZ3JvdXAtZmx1c2ggPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMDg0Mjk4O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZTJmZjtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjMDg0Mjk4O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhY2JlNjtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA4NDI5ODtcXG4gIGJvcmRlci1jb2xvcjogIzA4NDI5ODtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM0MTQ2NGI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlM2U1O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjNDE0NjRiO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NiY2NjZTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE0NjRiO1xcbiAgYm9yZGVyLWNvbG9yOiAjNDE0NjRiO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMwZjUxMzI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICMwZjUxMzI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmNkMGM3O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGY1MTMyO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGY1MTMyO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ge1xcbiAgY29sb3I6ICMwNTUxNjA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZmNGZjO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICMwNTUxNjA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFkY2UzO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDU1MTYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMDU1MTYwO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcge1xcbiAgY29sb3I6ICM2NjRkMDM7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICM2NjRkMDM7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZkYmI5O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0ZDAzO1xcbiAgYm9yZGVyLWNvbG9yOiAjNjY0ZDAzO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XFxuICBjb2xvcjogIzg0MjAyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICM4NDIwMjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZjMmM0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM4NDIwMjk7XFxuICBib3JkZXItY29sb3I6ICM4NDIwMjk7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQge1xcbiAgY29sb3I6ICM2MzY0NjQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzYzNjQ2NDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2NDY0O1xcbiAgYm9yZGVyLWNvbG9yOiAjNjM2NDY0O1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsge1xcbiAgY29sb3I6ICMxNDE2MTk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2Q0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICMxNDE2MTk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJmO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQxNjE5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTQxNjE5O1xcbn1cXG5cXG4uYnRuLWNsb3NlIHtcXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgd2lkdGg6IDFlbTtcXG4gIGhlaWdodDogMWVtO1xcbiAgcGFkZGluZzogMC4yNWVtIDAuMjVlbTtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMwMDAnJTNlJTNjcGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMDExLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxMTEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAxMC0xLjQxNHonLyUzZSUzYy9zdmclM2VcXFwiKSBjZW50ZXIvMWVtIGF1dG8gbm8tcmVwZWF0O1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuLmJ0bi1jbG9zZTpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNzU7XFxufVxcbi5idG4tY2xvc2U6Zm9jdXMge1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbiAgb3BhY2l0eTogMTtcXG59XFxuLmJ0bi1jbG9zZTpkaXNhYmxlZCwgLmJ0bi1jbG9zZS5kaXNhYmxlZCB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIHVzZXItc2VsZWN0OiBub25lO1xcbiAgb3BhY2l0eTogMC4yNTtcXG59XFxuXFxuLmJ0bi1jbG9zZS13aGl0ZSB7XFxuICBmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKTtcXG59XFxuXFxuLnRvYXN0IHtcXG4gIHdpZHRoOiAzNTBweDtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBwb2ludGVyLWV2ZW50czogYXV0bztcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLnRvYXN0Om5vdCguc2hvd2luZyk6bm90KC5zaG93KSB7XFxuICBvcGFjaXR5OiAwO1xcbn1cXG4udG9hc3QuaGlkZSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4udG9hc3QtY29udGFpbmVyIHtcXG4gIHdpZHRoOiBtYXgtY29udGVudDtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4udG9hc3QtY29udGFpbmVyID4gOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcXG59XFxuXFxuLnRvYXN0LWhlYWRlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG4udG9hc3QtaGVhZGVyIC5idG4tY2xvc2Uge1xcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zNzVyZW07XFxuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcXG59XFxuXFxuLnRvYXN0LWJvZHkge1xcbiAgcGFkZGluZzogMC43NXJlbTtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG59XFxuXFxuLm1vZGFsLW9wZW4ge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcblxcbi5tb2RhbCB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTA1MDtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG4ubW9kYWwtZGlhbG9nIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHdpZHRoOiBhdXRvO1xcbiAgbWFyZ2luOiAwLjVyZW07XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG59XFxuLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MHB4KTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4ubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zZm9ybTogbm9uZTtcXG59XFxuLm1vZGFsLm1vZGFsLXN0YXRpYyAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XFxufVxcblxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XFxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xcbn1cXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnQge1xcbiAgbWF4LWhlaWdodDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtYm9keSB7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbn1cXG5cXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XFxufVxcblxcbi5tb2RhbC1jb250ZW50IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwb2ludGVyLWV2ZW50czogYXV0bztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xcbiAgb3V0bGluZTogMDtcXG59XFxuXFxuLm1vZGFsLWJhY2tkcm9wIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDQwO1xcbiAgd2lkdGg6IDEwMHZ3O1xcbiAgaGVpZ2h0OiAxMDB2aDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxufVxcbi5tb2RhbC1iYWNrZHJvcC5mYWRlIHtcXG4gIG9wYWNpdHk6IDA7XFxufVxcbi5tb2RhbC1iYWNrZHJvcC5zaG93IHtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuXFxuLm1vZGFsLWhlYWRlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbn1cXG4ubW9kYWwtaGVhZGVyIC5idG4tY2xvc2Uge1xcbiAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuNXJlbSAtMC41cmVtIC0wLjVyZW0gYXV0bztcXG59XFxuXFxuLm1vZGFsLXRpdGxlIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbn1cXG5cXG4ubW9kYWwtYm9keSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHBhZGRpbmc6IDFyZW07XFxufVxcblxcbi5tb2RhbC1mb290ZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XFxuICBwYWRkaW5nOiAwLjc1cmVtO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbn1cXG4ubW9kYWwtZm9vdGVyID4gKiB7XFxuICBtYXJnaW46IDAuMjVyZW07XFxufVxcblxcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC05OTk5cHg7XFxuICB3aWR0aDogNTBweDtcXG4gIGhlaWdodDogNTBweDtcXG4gIG92ZXJmbG93OiBzY3JvbGw7XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLm1vZGFsLWRpYWxvZyB7XFxuICAgIG1heC13aWR0aDogNTAwcHg7XFxuICAgIG1hcmdpbjogMS43NXJlbSBhdXRvO1xcbiAgfVxcblxcbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xcbiAgfVxcblxcbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XFxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSk7XFxuICB9XFxuXFxuICAubW9kYWwtc20ge1xcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5tb2RhbC1sZyxcXG4ubW9kYWwteGwge1xcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAubW9kYWwteGwge1xcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcXG4gIH1cXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4ge1xcbiAgd2lkdGg6IDEwMHZ3O1xcbiAgbWF4LXdpZHRoOiBub25lO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgbWFyZ2luOiAwO1xcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtY29udGVudCB7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiAubW9kYWwtaGVhZGVyIHtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1ib2R5IHtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1mb290ZXIge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuXFxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biB7XFxuICAgIHdpZHRoOiAxMDB2dztcXG4gICAgbWF4LXdpZHRoOiBub25lO1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIG1hcmdpbjogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWNvbnRlbnQge1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWhlYWRlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIC5tb2RhbC1ib2R5IHtcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWZvb3RlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWNvbnRlbnQge1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXh4bC1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWZvb3RlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxufVxcbi50b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6IDEwNzA7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB0ZXh0LXNoYWRvdzogbm9uZTtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcXG4gIGxpbmUtYnJlYWs6IGF1dG87XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgb3BhY2l0eTogMDtcXG59XFxuLnRvb2x0aXAuc2hvdyB7XFxuICBvcGFjaXR5OiAwLjk7XFxufVxcbi50b29sdGlwIC50b29sdGlwLWFycm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDAuOHJlbTtcXG4gIGhlaWdodDogMC40cmVtO1xcbn1cXG4udG9vbHRpcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XFxufVxcblxcbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0ge1xcbiAgcGFkZGluZzogMC40cmVtIDA7XFxufVxcbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgYm90dG9tOiAwO1xcbn1cXG4uYnMtdG9vbHRpcC10b3AgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICB0b3A6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLWVuZCwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSB7XFxuICBwYWRkaW5nOiAwIDAuNHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93IHtcXG4gIGxlZnQ6IDA7XFxuICB3aWR0aDogMC40cmVtO1xcbiAgaGVpZ2h0OiAwLjhyZW07XFxufVxcbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgcmlnaHQ6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwLjRyZW0gMC40cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLWJvdHRvbSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0ge1xcbiAgcGFkZGluZzogMC40cmVtIDA7XFxufVxcbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gLnRvb2x0aXAtYXJyb3cge1xcbiAgdG9wOiAwO1xcbn1cXG4uYnMtdG9vbHRpcC1ib3R0b20gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICBib3R0b206IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAgMC40cmVtIDAuNHJlbTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7XFxufVxcblxcbi5icy10b29sdGlwLXN0YXJ0LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0ge1xcbiAgcGFkZGluZzogMCAwLjRyZW07XFxufVxcbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgcmlnaHQ6IDA7XFxuICB3aWR0aDogMC40cmVtO1xcbiAgaGVpZ2h0OiAwLjhyZW07XFxufVxcbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIGxlZnQ6IC0xcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNHJlbSAwIDAuNHJlbSAwLjRyZW07XFxuICBib3JkZXItbGVmdC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLnRvb2x0aXAtaW5uZXIge1xcbiAgbWF4LXdpZHRoOiAyMDBweDtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLnBvcG92ZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgei1pbmRleDogMTA2MDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWF4LXdpZHRoOiAyNzZweDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB0ZXh0LXNoYWRvdzogbm9uZTtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcXG4gIGxpbmUtYnJlYWs6IGF1dG87XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcbi5wb3BvdmVyIC5wb3BvdmVyLWFycm93IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDAuNXJlbTtcXG59XFxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG59XFxuXFxuLmJzLXBvcG92ZXItdG9wID4gLnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3cge1xcbiAgYm90dG9tOiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xcbn1cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUge1xcbiAgYm90dG9tOiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIGJvdHRvbTogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItdG9wLWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIGxlZnQ6IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxuICB3aWR0aDogMC41cmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbn1cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICBsZWZ0OiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1lbmQgPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgbGVmdDogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICB0b3A6IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxufVxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICB0b3A6IDA7XFxuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHRvcDogMXB4O1xcbiAgYm9yZGVyLXdpZHRoOiAwIDAuNXJlbSAwLjVyZW0gMC41cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcXG59XFxuLmJzLXBvcG92ZXItYm90dG9tIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiA1MCU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxcmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICByaWdodDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG4gIHdpZHRoOiAwLjVyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICByaWdodDogMDtcXG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbn1cXG4uYnMtcG9wb3Zlci1zdGFydCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyIHtcXG4gIHJpZ2h0OiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcXG59XFxuXFxuLnBvcG92ZXItaGVhZGVyIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q4ZDhkODtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5wb3BvdmVyLWhlYWRlcjplbXB0eSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4ucG9wb3Zlci1ib2R5IHtcXG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG5cXG4uY2Fyb3VzZWwge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG5cXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XFxuICB0b3VjaC1hY3Rpb246IHBhbi15O1xcbn1cXG5cXG4uY2Fyb3VzZWwtaW5uZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4uY2Fyb3VzZWwtaW5uZXI6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY2xlYXI6IGJvdGg7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtaXRlbSB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XFxufVxcblxcbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XFxufVxcblxcbi8qIHJ0bDplbmQ6aWdub3JlICovXFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0ge1xcbiAgb3BhY2l0eTogMDtcXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XFxuICB0cmFuc2Zvcm06IG5vbmU7XFxufVxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQsXFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICB6LWluZGV4OiAxO1xcbiAgb3BhY2l0eTogMTtcXG59XFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgei1pbmRleDogMDtcXG4gIG9wYWNpdHk6IDA7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIDAuNnM7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBib3R0b206IDA7XFxuICB6LWluZGV4OiAxO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIHdpZHRoOiAxNSU7XFxuICBwYWRkaW5nOiAwO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgYm9yZGVyOiAwO1xcbiAgb3BhY2l0eTogMC41O1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldjpob3ZlciwgLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cyxcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmhvdmVyLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQ6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgb3BhY2l0eTogMC45O1xcbn1cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcXG4gIGxlZnQ6IDA7XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgcmlnaHQ6IDA7XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDJyZW07XFxuICBoZWlnaHQ6IDJyZW07XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XFxufVxcblxcbi8qIHJ0bDpvcHRpb25zOiB7XFxuICBcXFwiYXV0b1JlbmFtZVxcXCI6IHRydWUsXFxuICBcXFwic3RyaW5nTWFwXFxcIjpbIHtcXG4gICAgXFxcIm5hbWVcXFwiICAgIDogXFxcInByZXYtbmV4dFxcXCIsXFxuICAgIFxcXCJzZWFyY2hcXFwiICA6IFxcXCJwcmV2XFxcIixcXG4gICAgXFxcInJlcGxhY2VcXFwiIDogXFxcIm5leHRcXFwiXFxuICB9IF1cXG59ICovXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmJyUzZSUzY3BhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyM2ZmZiclM2UlM2NwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuXFxuLmNhcm91c2VsLWluZGljYXRvcnMge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMjtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIHBhZGRpbmc6IDA7XFxuICBtYXJnaW4tcmlnaHQ6IDE1JTtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBtYXJnaW4tbGVmdDogMTUlO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XFxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gIGZsZXg6IDAgMSBhdXRvO1xcbiAgd2lkdGg6IDMwcHg7XFxuICBoZWlnaHQ6IDNweDtcXG4gIHBhZGRpbmc6IDA7XFxuICBtYXJnaW4tcmlnaHQ6IDNweDtcXG4gIG1hcmdpbi1sZWZ0OiAzcHg7XFxuICB0ZXh0LWluZGVudDogLTk5OXB4O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIG9wYWNpdHk6IDAuNTtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5jYXJvdXNlbC1pbmRpY2F0b3JzIC5hY3RpdmUge1xcbiAgb3BhY2l0eTogMTtcXG59XFxuXFxuLmNhcm91c2VsLWNhcHRpb24ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6IDE1JTtcXG4gIGJvdHRvbTogMS4yNXJlbTtcXG4gIGxlZnQ6IDE1JTtcXG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXFxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxcbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICBmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMTAwKTtcXG59XFxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xcbn1cXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY2FwdGlvbiB7XFxuICBjb2xvcjogIzAwMDtcXG59XFxuXFxuQGtleWZyYW1lcyBzcGlubmVyLWJvcmRlciB7XFxuICB0byB7XFxuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuLnNwaW5uZXItYm9yZGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAycmVtO1xcbiAgaGVpZ2h0OiAycmVtO1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xcbiAgYm9yZGVyOiAwLjI1ZW0gc29saWQgY3VycmVudENvbG9yO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG4gIGFuaW1hdGlvbjogMC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xcbn1cXG5cXG4uc3Bpbm5lci1ib3JkZXItc20ge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxuICBib3JkZXItd2lkdGg6IDAuMmVtO1xcbn1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XFxuICAwJSB7XFxuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XFxuICB9XFxuICA1MCUge1xcbiAgICBvcGFjaXR5OiAxO1xcbiAgICB0cmFuc2Zvcm06IG5vbmU7XFxuICB9XFxufVxcbi5zcGlubmVyLWdyb3cge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDJyZW07XFxuICBoZWlnaHQ6IDJyZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XFxuICBib3JkZXItcmFkaXVzOiA1MCU7XFxuICBvcGFjaXR5OiAwO1xcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xcbn1cXG5cXG4uc3Bpbm5lci1ncm93LXNtIHtcXG4gIHdpZHRoOiAxcmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbn1cXG5cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnNwaW5uZXItYm9yZGVyLFxcbi5zcGlubmVyLWdyb3cge1xcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XFxuICB9XFxufVxcbi5jbGVhcmZpeDo6YWZ0ZXIge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjbGVhcjogYm90aDtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG5cXG4ubGluay1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4ubGluay1wcmltYXJ5OmhvdmVyLCAubGluay1wcmltYXJ5OmZvY3VzIHtcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbn1cXG5cXG4ubGluay1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5saW5rLXNlY29uZGFyeTpob3ZlciwgLmxpbmstc2Vjb25kYXJ5OmZvY3VzIHtcXG4gIGNvbG9yOiAjNTY1ZTY0O1xcbn1cXG5cXG4ubGluay1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbn1cXG4ubGluay1zdWNjZXNzOmhvdmVyLCAubGluay1zdWNjZXNzOmZvY3VzIHtcXG4gIGNvbG9yOiAjMTQ2YzQzO1xcbn1cXG5cXG4ubGluay1pbmZvIHtcXG4gIGNvbG9yOiAjMGRjYWYwO1xcbn1cXG4ubGluay1pbmZvOmhvdmVyLCAubGluay1pbmZvOmZvY3VzIHtcXG4gIGNvbG9yOiAjM2RkNWYzO1xcbn1cXG5cXG4ubGluay13YXJuaW5nIHtcXG4gIGNvbG9yOiAjZmZjMTA3O1xcbn1cXG4ubGluay13YXJuaW5nOmhvdmVyLCAubGluay13YXJuaW5nOmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZjZDM5O1xcbn1cXG5cXG4ubGluay1kYW5nZXIge1xcbiAgY29sb3I6ICNkYzM1NDU7XFxufVxcbi5saW5rLWRhbmdlcjpob3ZlciwgLmxpbmstZGFuZ2VyOmZvY3VzIHtcXG4gIGNvbG9yOiAjYjAyYTM3O1xcbn1cXG5cXG4ubGluay1saWdodCB7XFxuICBjb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmxpbmstbGlnaHQ6aG92ZXIsIC5saW5rLWxpZ2h0OmZvY3VzIHtcXG4gIGNvbG9yOiAjZjlmYWZiO1xcbn1cXG5cXG4ubGluay1kYXJrIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG4ubGluay1kYXJrOmhvdmVyLCAubGluay1kYXJrOmZvY3VzIHtcXG4gIGNvbG9yOiAjMWExZTIxO1xcbn1cXG5cXG4ucmF0aW8ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IDEwMCU7XFxufVxcbi5yYXRpbzo6YmVmb3JlIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZy10b3A6IHZhcigtLWJzLWFzcGVjdC1yYXRpbyk7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuLnJhdGlvID4gKiB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7XFxufVxcblxcbi5yYXRpby0xeDEge1xcbiAgLS1icy1hc3BlY3QtcmF0aW86IDEwMCU7XFxufVxcblxcbi5yYXRpby00eDMge1xcbiAgLS1icy1hc3BlY3QtcmF0aW86IGNhbGMoMyAvIDQgKiAxMDAlKTtcXG59XFxuXFxuLnJhdGlvLTE2eDkge1xcbiAgLS1icy1hc3BlY3QtcmF0aW86IGNhbGMoOSAvIDE2ICogMTAwJSk7XFxufVxcblxcbi5yYXRpby0yMXg5IHtcXG4gIC0tYnMtYXNwZWN0LXJhdGlvOiBjYWxjKDkgLyAyMSAqIDEwMCUpO1xcbn1cXG5cXG4uZml4ZWQtdG9wIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDEwMzA7XFxufVxcblxcbi5maXhlZC1ib3R0b20ge1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTAzMDtcXG59XFxuXFxuLnN0aWNreS10b3Age1xcbiAgcG9zaXRpb246IHN0aWNreTtcXG4gIHRvcDogMDtcXG4gIHotaW5kZXg6IDEwMjA7XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLnN0aWNreS1zbS10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLnN0aWNreS1tZC10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLnN0aWNreS1sZy10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5zdGlja3kteGwtdG9wIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgdG9wOiAwO1xcbiAgICB6LWluZGV4OiAxMDIwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuc3RpY2t5LXh4bC10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbi52aXN1YWxseS1oaWRkZW4sXFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcXG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zdHJldGNoZWQtbGluazo6YWZ0ZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG5cXG4udGV4dC10cnVuY2F0ZSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG5cXG4uYWxpZ24tYmFzZWxpbmUge1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi10b3Age1xcbiAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tbWlkZGxlIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWJvdHRvbSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi10ZXh0LWJvdHRvbSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXRleHQtdG9wIHtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxvYXQtc3RhcnQge1xcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsb2F0LWVuZCB7XFxuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsb2F0LW5vbmUge1xcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LWF1dG8ge1xcbiAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LWhpZGRlbiB7XFxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vdmVyZmxvdy12aXNpYmxlIHtcXG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vdmVyZmxvdy1zY3JvbGwge1xcbiAgb3ZlcmZsb3c6IHNjcm9sbCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1pbmxpbmUge1xcbiAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWlubGluZS1ibG9jayB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtYmxvY2sge1xcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtZ3JpZCB7XFxuICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLXRhYmxlIHtcXG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLXRhYmxlLXJvdyB7XFxuICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtdGFibGUtY2VsbCB7XFxuICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWZsZXgge1xcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1pbmxpbmUtZmxleCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1ub25lIHtcXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnNoYWRvdyB7XFxuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnNoYWRvdy1zbSB7XFxuICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnNoYWRvdy1sZyB7XFxuICBib3gtc2hhZG93OiAwIDFyZW0gM3JlbSByZ2JhKDAsIDAsIDAsIDAuMTc1KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93LW5vbmUge1xcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tc3RhdGljIHtcXG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLXJlbGF0aXZlIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tYWJzb2x1dGUge1xcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1maXhlZCB7XFxuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLXN0aWNreSB7XFxuICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50b3AtMCB7XFxuICB0b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnRvcC01MCB7XFxuICB0b3A6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udG9wLTEwMCB7XFxuICB0b3A6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvdHRvbS0wIHtcXG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm90dG9tLTUwIHtcXG4gIGJvdHRvbTogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3R0b20tMTAwIHtcXG4gIGJvdHRvbTogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc3RhcnQtMCB7XFxuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zdGFydC01MCB7XFxuICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0YXJ0LTEwMCB7XFxuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5lbmQtMCB7XFxuICByaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZW5kLTUwIHtcXG4gIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmVuZC0xMDAge1xcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRyYW5zbGF0ZS1taWRkbGUge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRyYW5zbGF0ZS1taWRkbGUteCB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRyYW5zbGF0ZS1taWRkbGUteSB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlciB7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMCB7XFxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci10b3Age1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci10b3AtMCB7XFxuICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItZW5kIHtcXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1lbmQtMCB7XFxuICBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1ib3R0b20ge1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1ib3R0b20tMCB7XFxuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItc3RhcnQge1xcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItc3RhcnQtMCB7XFxuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXByaW1hcnkge1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItc2Vjb25kYXJ5IHtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXN1Y2Nlc3Mge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItaW5mbyB7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci13YXJuaW5nIHtcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWRhbmdlciB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1saWdodCB7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1kYXJrIHtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXdoaXRlIHtcXG4gIGJvcmRlci1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTAge1xcbiAgYm9yZGVyLXdpZHRoOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMSB7XFxuICBib3JkZXItd2lkdGg6IDFweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTIge1xcbiAgYm9yZGVyLXdpZHRoOiAycHggIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0zIHtcXG4gIGJvcmRlci13aWR0aDogM3B4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItNCB7XFxuICBib3JkZXItd2lkdGg6IDRweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTUge1xcbiAgYm9yZGVyLXdpZHRoOiA1cHggIWltcG9ydGFudDtcXG59XFxuXFxuLnctMjUge1xcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy01MCB7XFxuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LTc1IHtcXG4gIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctMTAwIHtcXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LWF1dG8ge1xcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm13LTEwMCB7XFxuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnZ3LTEwMCB7XFxuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcXG59XFxuXFxuLm1pbi12dy0xMDAge1xcbiAgbWluLXdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaC0yNSB7XFxuICBoZWlnaHQ6IDI1JSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaC01MCB7XFxuICBoZWlnaHQ6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaC03NSB7XFxuICBoZWlnaHQ6IDc1JSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaC0xMDAge1xcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLWF1dG8ge1xcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5taC0xMDAge1xcbiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udmgtMTAwIHtcXG4gIGhlaWdodDogMTAwdmggIWltcG9ydGFudDtcXG59XFxuXFxuLm1pbi12aC0xMDAge1xcbiAgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtZmlsbCB7XFxuICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1yb3cge1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1jb2x1bW4ge1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1yb3ctcmV2ZXJzZSB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtY29sdW1uLXJldmVyc2Uge1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWdyb3ctMCB7XFxuICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtZ3Jvdy0xIHtcXG4gIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1zaHJpbmstMCB7XFxuICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1zaHJpbmstMSB7XFxuICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC13cmFwIHtcXG4gIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1ub3dyYXAge1xcbiAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtd3JhcC1yZXZlcnNlIHtcXG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtMCB7XFxuICBnYXA6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0xIHtcXG4gIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTIge1xcbiAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0zIHtcXG4gIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTQge1xcbiAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC01IHtcXG4gIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LXN0YXJ0IHtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWVuZCB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1hcm91bmQge1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1ldmVubHkge1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1lbmQge1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1jZW50ZXIge1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24taXRlbXMtYmFzZWxpbmUge1xcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1zdHJldGNoIHtcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcXG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtZW5kIHtcXG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LWNlbnRlciB7XFxuICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtYmV0d2VlbiB7XFxuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1jb250ZW50LWFyb3VuZCB7XFxuICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtc3RyZXRjaCB7XFxuICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWF1dG8ge1xcbiAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tc2VsZi1zdGFydCB7XFxuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWVuZCB7XFxuICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xcbiAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcXG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xcbiAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3JkZXItZmlyc3Qge1xcbiAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0wIHtcXG4gIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0xIHtcXG4gIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0yIHtcXG4gIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci0zIHtcXG4gIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci00IHtcXG4gIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci01IHtcXG4gIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci1sYXN0IHtcXG4gIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTAge1xcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTEge1xcbiAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTIge1xcbiAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMyB7XFxuICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tNCB7XFxuICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS01IHtcXG4gIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS1hdXRvIHtcXG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMCB7XFxuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC0xIHtcXG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTIge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTMge1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtNCB7XFxuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtNSB7XFxuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC1hdXRvIHtcXG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTAge1xcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktMSB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0yIHtcXG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0zIHtcXG4gIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTQge1xcbiAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTUge1xcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktYXV0byB7XFxuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC0wIHtcXG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTEge1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMiB7XFxuICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTMge1xcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtNCB7XFxuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTUge1xcbiAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtYXV0byB7XFxuICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS0wIHtcXG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMSB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTIge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTMge1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS00IHtcXG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS01IHtcXG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtYXV0byB7XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTAge1xcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMSB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0yIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMyB7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi00IHtcXG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItNSB7XFxuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi1hdXRvIHtcXG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTAge1xcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTEge1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTIge1xcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMyB7XFxuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtNCB7XFxuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy01IHtcXG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy1hdXRvIHtcXG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTAge1xcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0xIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMiB7XFxuICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMyB7XFxuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTQge1xcbiAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTUge1xcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTEge1xcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTMge1xcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0wIHtcXG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMSB7XFxuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTIge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMyB7XFxuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTQge1xcbiAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktNSB7XFxuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTAge1xcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTEge1xcbiAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTIge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMyB7XFxuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtNCB7XFxuICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC01IHtcXG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS0wIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTEge1xcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMiB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTMge1xcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtNCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMCB7XFxuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMSB7XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItMiB7XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0zIHtcXG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi00IHtcXG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTUge1xcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTAge1xcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0xIHtcXG4gIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMiB7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMyB7XFxuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTQge1xcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTUge1xcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy0xIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtMiB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zMjVyZW0gKyAwLjl2dykgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTMge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuM3JlbSArIDAuNnZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dykgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTUge1xcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy02IHtcXG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnN0LWl0YWxpYyB7XFxuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcXG59XFxuXFxuLmZzdC1ub3JtYWwge1xcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1saWdodCB7XFxuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1saWdodGVyIHtcXG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ub3JtYWwge1xcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnctYm9sZCB7XFxuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ib2xkZXIge1xcbiAgZm9udC13ZWlnaHQ6IGJvbGRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1sb3dlcmNhc2Uge1xcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC11cHBlcmNhc2Uge1xcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1jYXBpdGFsaXplIHtcXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXN0YXJ0IHtcXG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZW5kIHtcXG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWNlbnRlciB7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtcHJpbWFyeSB7XFxuICBjb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtc3VjY2VzcyB7XFxuICBjb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1pbmZvIHtcXG4gIGNvbG9yOiAjMGRjYWYwICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXdhcm5pbmcge1xcbiAgY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWxpZ2h0IHtcXG4gIGNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWRhcmsge1xcbiAgY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2hpdGUge1xcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtYm9keSB7XFxuICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1tdXRlZCB7XFxuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1ibGFjay01MCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXdoaXRlLTUwIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtcmVzZXQge1xcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLTEge1xcbiAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLXNtIHtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5saC1iYXNlIHtcXG4gIGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLWxnIHtcXG4gIGxpbmUtaGVpZ2h0OiAyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1wcmltYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXNlY29uZGFyeSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1zdWNjZXNzIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWluZm8ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctd2FybmluZyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1kYW5nZXIge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctbGlnaHQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctZGFyayB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1ib2R5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXdoaXRlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXRyYW5zcGFyZW50IHtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1ncmFkaWVudCB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1icy1ncmFkaWVudCkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd3JhcCB7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LW5vd3JhcCB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi11bmRlcmxpbmUge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi1saW5lLXRocm91Z2gge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2ggIWltcG9ydGFudDtcXG59XFxuXFxuLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xcbi50ZXh0LWJyZWFrIHtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4vKiBydGw6ZW5kOnJlbW92ZSAqL1xcbi5mb250LW1vbm9zcGFjZSB7XFxuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpICFpbXBvcnRhbnQ7XFxufVxcblxcbi51c2VyLXNlbGVjdC1hbGwge1xcbiAgdXNlci1zZWxlY3Q6IGFsbCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udXNlci1zZWxlY3QtYXV0byB7XFxuICB1c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4udXNlci1zZWxlY3Qtbm9uZSB7XFxuICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtbm9uZSB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtYXV0byB7XFxuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZCB7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLTAge1xcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0xIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0yIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtMyB7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtY2lyY2xlIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1waWxsIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLXRvcCB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1lbmQge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1zdGFydCB7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi52aXNpYmxlIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcXG59XFxuXFxuLmludmlzaWJsZSB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuZmxvYXQtc20tc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXNtLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXNtLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20taW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20taW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20td3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTAge1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMSB7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0yIHtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMyB7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS00IHtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tNSB7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtc20tc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1zbS1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtc20tY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmZsb2F0LW1kLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1tZC1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1tZC1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC0wIHtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTEge1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtMiB7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTMge1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtNCB7XFxuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTUge1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWVuZCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1tZC1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbWQtYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1zdHJldGNoIHtcXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLW1kLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtZW5kIHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLW1kLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtc3RyZXRjaCB7XFxuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1tZC1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTEge1xcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTQge1xcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMCB7XFxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0zIHtcXG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLWF1dG8ge1xcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC00IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMiB7XFxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTUge1xcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtMiB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTUge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LW1kLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LW1kLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5mbG9hdC1sZy1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbGctZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbGctbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctd3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctMCB7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy0xIHtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTIge1xcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy0zIHtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTQge1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy01IHtcXG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctY2VudGVyIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1ldmVubHkge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1jZW50ZXIge1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLXN0YXJ0IHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbiB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWF1dG8ge1xcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1jZW50ZXIge1xcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctZmlyc3Qge1xcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0yIHtcXG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy01IHtcXG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTEge1xcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctNCB7XFxuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctMiB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTUge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy0wIHtcXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTMge1xcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTAge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctMyB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy0wIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1sZy1zdGFydCB7XFxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LWxnLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1sZy1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmZsb2F0LXhsLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14bC1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14bC1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC0wIHtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTEge1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMiB7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTMge1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtNCB7XFxuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTUge1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtZW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWFyb3VuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLWVuZCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtY2VudGVyIHtcXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1zdHJldGNoIHtcXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtZW5kIHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTEge1xcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTQge1xcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtMCB7XFxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0zIHtcXG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLWF1dG8ge1xcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtMSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC00IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC1hdXRvIHtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtMiB7XFxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTUge1xcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtMiB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTUge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXhsLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteGwtZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXhsLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuZmxvYXQteHhsLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14eGwtZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQteHhsLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtMCB7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtMSB7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtMiB7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0zIHtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC00IHtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTUge1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteHhsLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteHhsLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteHhsLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5mcy0xIHtcXG4gICAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mcy0yIHtcXG4gICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZnMtMyB7XFxuICAgIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZzLTQge1xcbiAgICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgcHJpbnQge1xcbiAgLmQtcHJpbnQtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuXFxuLyojIHNvdXJjZU1hcHBpbmdVUkw9Ym9vdHN0cmFwLmNzcy5tYXAgKi9cXG5cIixcIi8qIVxcbiAqIEJvb3RzdHJhcCB2NS4wLjAtYmV0YTIgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXFxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFR3aXR0ZXIsIEluYy5cXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21haW4vTElDRU5TRSlcXG4gKi9cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW1wb3J0LXN0YWNrXFxuLy8gQ29uZmlndXJhdGlvblxcbkBpbXBvcnQgXFxcImZ1bmN0aW9uc1xcXCI7XFxuQGltcG9ydCBcXFwidmFyaWFibGVzXFxcIjtcXG5AaW1wb3J0IFxcXCJtaXhpbnNcXFwiO1xcbkBpbXBvcnQgXFxcInV0aWxpdGllc1xcXCI7XFxuXFxuLy8gTGF5b3V0ICYgY29tcG9uZW50c1xcbkBpbXBvcnQgXFxcInJvb3RcXFwiO1xcbkBpbXBvcnQgXFxcInJlYm9vdFxcXCI7XFxuQGltcG9ydCBcXFwidHlwZVxcXCI7XFxuQGltcG9ydCBcXFwiaW1hZ2VzXFxcIjtcXG5AaW1wb3J0IFxcXCJjb250YWluZXJzXFxcIjtcXG5AaW1wb3J0IFxcXCJncmlkXFxcIjtcXG5AaW1wb3J0IFxcXCJ0YWJsZXNcXFwiO1xcbkBpbXBvcnQgXFxcImZvcm1zXFxcIjtcXG5AaW1wb3J0IFxcXCJidXR0b25zXFxcIjtcXG5AaW1wb3J0IFxcXCJ0cmFuc2l0aW9uc1xcXCI7XFxuQGltcG9ydCBcXFwiZHJvcGRvd25cXFwiO1xcbkBpbXBvcnQgXFxcImJ1dHRvbi1ncm91cFxcXCI7XFxuQGltcG9ydCBcXFwibmF2XFxcIjtcXG5AaW1wb3J0IFxcXCJuYXZiYXJcXFwiO1xcbkBpbXBvcnQgXFxcImNhcmRcXFwiO1xcbkBpbXBvcnQgXFxcImFjY29yZGlvblxcXCI7XFxuQGltcG9ydCBcXFwiYnJlYWRjcnVtYlxcXCI7XFxuQGltcG9ydCBcXFwicGFnaW5hdGlvblxcXCI7XFxuQGltcG9ydCBcXFwiYmFkZ2VcXFwiO1xcbkBpbXBvcnQgXFxcImFsZXJ0XFxcIjtcXG5AaW1wb3J0IFxcXCJwcm9ncmVzc1xcXCI7XFxuQGltcG9ydCBcXFwibGlzdC1ncm91cFxcXCI7XFxuQGltcG9ydCBcXFwiY2xvc2VcXFwiO1xcbkBpbXBvcnQgXFxcInRvYXN0c1xcXCI7XFxuQGltcG9ydCBcXFwibW9kYWxcXFwiO1xcbkBpbXBvcnQgXFxcInRvb2x0aXBcXFwiO1xcbkBpbXBvcnQgXFxcInBvcG92ZXJcXFwiO1xcbkBpbXBvcnQgXFxcImNhcm91c2VsXFxcIjtcXG5AaW1wb3J0IFxcXCJzcGlubmVyc1xcXCI7XFxuXFxuLy8gSGVscGVyc1xcbkBpbXBvcnQgXFxcImhlbHBlcnNcXFwiO1xcblxcbi8vIFV0aWxpdGllc1xcbkBpbXBvcnQgXFxcInV0aWxpdGllcy9hcGlcXFwiO1xcbi8vIHNjc3MtZG9jcy1lbmQgaW1wb3J0LXN0YWNrXFxuXCIsXCI6cm9vdCB7XFxuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcXG4gIH1cXG5cXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH0jeyRjb2xvcn06ICN7JHZhbHVlfTtcXG4gIH1cXG5cXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtc2Fucy1zZXJpZjogI3tpbnNwZWN0KCRmb250LWZhbWlseS1zYW5zLXNlcmlmKX07XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XFxufVxcblwiLFwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcXG5cXG5cXG4vLyBSZWJvb3RcXG4vL1xcbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cXG4vL1xcbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcXG5cXG5cXG4vLyBEb2N1bWVudFxcbi8vXFxuLy8gQ2hhbmdlIGZyb20gYGJveC1zaXppbmc6IGNvbnRlbnQtYm94YCBzbyB0aGF0IGB3aWR0aGAgaXMgbm90IGFmZmVjdGVkIGJ5IGBwYWRkaW5nYCBvciBgYm9yZGVyYC5cXG5cXG4qLFxcbio6OmJlZm9yZSxcXG4qOjphZnRlciB7XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbn1cXG5cXG5cXG4vLyBSb290XFxuLy9cXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxcbi8vIG51bGwgYnkgZGVmYXVsdCwgdGh1cyBub3RoaW5nIGlzIGdlbmVyYXRlZC5cXG5cXG46cm9vdCB7XFxuICBmb250LXNpemU6ICRmb250LXNpemUtcm9vdDtcXG5cXG4gIEBpZiAkZW5hYmxlLXNtb290aC1zY3JvbGwge1xcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcXG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBCb2R5XFxuLy9cXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXFxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxcbi8vIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxcbi8vIDQuIENoYW5nZSB0aGUgZGVmYXVsdCB0YXAgaGlnaGxpZ2h0IHRvIGJlIGNvbXBsZXRlbHkgdHJhbnNwYXJlbnQgaW4gaU9TLlxcblxcbmJvZHkge1xcbiAgbWFyZ2luOiAwOyAvLyAxXFxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcXG4gIHRleHQtYWxpZ246ICRib2R5LXRleHQtYWxpZ247XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZzsgLy8gMlxcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAzXFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgLy8gNFxcbn1cXG5cXG5cXG4vLyBGdXR1cmUtcHJvb2YgcnVsZTogaW4gYnJvd3NlcnMgdGhhdCBzdXBwb3J0IDpmb2N1cy12aXNpYmxlLCBzdXBwcmVzcyB0aGUgZm9jdXMgb3V0bGluZVxcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxcbi8vIGZvY3VzIG91dGxpbmUuIEluIGdlbmVyYWwsIHRoaXMgd291bGQgbWVhbiB0aGF0IHRoZSBvdXRsaW5lIGlzIG9ubHkgYXBwbGllZCBpZiB0aGVcXG4vLyBpbnRlcmFjdGlvbiB0aGF0IGxlZCB0byB0aGUgZWxlbWVudCByZWNlaXZpbmcgcHJvZ3JhbW1hdGljIGZvY3VzIHdhcyBhIGtleWJvYXJkIGludGVyYWN0aW9uLFxcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxcbi8vIHdhbnRzIGZvY3VzIG91dGxpbmVzIHRvIGFsd2F5cyBiZSBwcmVzZW50ZWQuXFxuLy8gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86Zm9jdXMtdmlzaWJsZVxcbi8vIGFuZCBodHRwczovL2RldmVsb3Blci5wYWNpZWxsb2dyb3VwLmNvbS9ibG9nLzIwMTgvMDMvZm9jdXMtdmlzaWJsZS1hbmQtYmFja3dhcmRzLWNvbXBhdGliaWxpdHkvXFxuXFxuW3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG5cXG4vLyBDb250ZW50IGdyb3VwaW5nXFxuLy9cXG4vLyAxLiBSZXNldCBGaXJlZm94J3MgZ3JheSBjb2xvclxcbi8vIDIuIFNldCBjb3JyZWN0IGhlaWdodCBhbmQgcHJldmVudCB0aGUgYHNpemVgIGF0dHJpYnV0ZSB0byBtYWtlIHRoZSBgaHJgIGxvb2sgbGlrZSBhbiBpbnB1dCBmaWVsZFxcblxcbmhyIHtcXG4gIG1hcmdpbjogJGhyLW1hcmdpbi15IDA7XFxuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXFxuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XFxuICBib3JkZXI6IDA7XFxuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcXG59XFxuXFxuaHI6bm90KFtzaXplXSkge1xcbiAgaGVpZ2h0OiAkaHItaGVpZ2h0OyAvLyAyXFxufVxcblxcblxcbi8vIFR5cG9ncmFwaHlcXG4vL1xcbi8vIDEuIFJlbW92ZSB0b3AgbWFyZ2lucyBmcm9tIGhlYWRpbmdzXFxuLy8gICAgQnkgZGVmYXVsdCwgYDxoMT5gLWA8aDY+YCBhbGwgcmVjZWl2ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiBXZSBudWtlIHRoZSB0b3BcXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXFxuXFxuJWhlYWRpbmcge1xcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XFxuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XFxuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkaGVhZGluZ3MtY29sb3I7XFxufVxcblxcbmgxIHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XFxufVxcblxcbmgyIHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XFxufVxcblxcbmgzIHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XFxufVxcblxcbmg0IHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XFxufVxcblxcbmg1IHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XFxufVxcblxcbmg2IHtcXG4gIEBleHRlbmQgJWhlYWRpbmc7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XFxufVxcblxcblxcbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xcbi8vXFxuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cXG5cXG5wIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XFxufVxcblxcblxcbi8vIEFiYnJldmlhdGlvbnNcXG4vL1xcbi8vIDEuIER1cGxpY2F0ZSBiZWhhdmlvciB0byB0aGUgZGF0YS1icy0qIGF0dHJpYnV0ZSBmb3Igb3VyIHRvb2x0aXAgcGx1Z2luXFxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIE9wZXJhLCBhbmQgU2FmYXJpLlxcbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cXG4vLyA0LiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cXG5cXG5hYmJyW3RpdGxlXSxcXG5hYmJyW2RhdGEtYnMtb3JpZ2luYWwtdGl0bGVdIHsgLy8gMVxcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8vIDJcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxcbiAgY3Vyc29yOiBoZWxwOyAvLyAzXFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDRcXG59XFxuXFxuXFxuLy8gQWRkcmVzc1xcblxcbmFkZHJlc3Mge1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbn1cXG5cXG5cXG4vLyBMaXN0c1xcblxcbm9sLFxcbnVsIHtcXG4gIHBhZGRpbmctbGVmdDogMnJlbTtcXG59XFxuXFxub2wsXFxudWwsXFxuZGwge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxufVxcblxcbm9sIG9sLFxcbnVsIHVsLFxcbm9sIHVsLFxcbnVsIG9sIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbmR0IHtcXG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XFxufVxcblxcbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XFxuXFxuZGQge1xcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XFxuICBtYXJnaW4tbGVmdDogMDsgLy8gMVxcbn1cXG5cXG5cXG4vLyBCbG9ja3F1b3RlXFxuXFxuYmxvY2txdW90ZSB7XFxuICBtYXJnaW46IDAgMCAxcmVtO1xcbn1cXG5cXG5cXG4vLyBTdHJvbmdcXG4vL1xcbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcXG5cXG5iLFxcbnN0cm9uZyB7XFxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcXG59XFxuXFxuXFxuLy8gU21hbGxcXG4vL1xcbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXFxuXFxuc21hbGwge1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xcbn1cXG5cXG5cXG4vLyBNYXJrXFxuXFxubWFyayB7XFxuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XFxufVxcblxcblxcbi8vIFN1YiBhbmQgU3VwXFxuLy9cXG4vLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cXG4vLyBhbGwgYnJvd3NlcnMuXFxuXFxuc3ViLFxcbnN1cCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHN1Yi1zdXAtZm9udC1zaXplKTtcXG4gIGxpbmUtaGVpZ2h0OiAwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbn1cXG5cXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxcbnN1cCB7IHRvcDogLS41ZW07IH1cXG5cXG5cXG4vLyBMaW5rc1xcblxcbmEge1xcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xcbiAgfVxcbn1cXG5cXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXFxuLy8gSXQgd291bGQgYmUgbW9yZSBzdHJhaWdodGZvcndhcmQgdG8ganVzdCB1c2UgYVtocmVmXSBpbiBwcmV2aW91cyBibG9jaywgYnV0IHRoYXRcXG4vLyBjYXVzZXMgc3BlY2lmaWNpdHkgaXNzdWVzIGluIG1hbnkgb3RoZXIgc3R5bGVzIHRoYXQgYXJlIHRvbyBjb21wbGV4IHRvIGZpeC5cXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxcblxcbmE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pIHtcXG4gICYsXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6IGluaGVyaXQ7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuXFxuLy8gQ29kZVxcblxcbnByZSxcXG5jb2RlLFxcbmtiZCxcXG5zYW1wIHtcXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktY29kZTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXFxuICBkaXJlY3Rpb246IGx0ciAje1xcXCIvKiBydGw6aWdub3JlICovXFxcIn07XFxuICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XFxufVxcblxcbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxcbi8vIDIuIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXFxuLy8gMy4gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXFxuXFxucHJlIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgLy8gMlxcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIDNcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xcbiAgY29sb3I6ICRwcmUtY29sb3I7XFxuXFxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xcbiAgY29kZSB7XFxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcXG4gICAgY29sb3I6IGluaGVyaXQ7XFxuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG4gIH1cXG59XFxuXFxuY29kZSB7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcXG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG5cXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxcbiAgYSA+ICYge1xcbiAgICBjb2xvcjogaW5oZXJpdDtcXG4gIH1cXG59XFxuXFxua2JkIHtcXG4gIHBhZGRpbmc6ICRrYmQtcGFkZGluZy15ICRrYmQtcGFkZGluZy14O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRrYmQtZm9udC1zaXplKTtcXG4gIGNvbG9yOiAka2JkLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGtiZC1iZztcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xcblxcbiAga2JkIHtcXG4gICAgcGFkZGluZzogMDtcXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7XFxuICAgIGZvbnQtd2VpZ2h0OiAkbmVzdGVkLWtiZC1mb250LXdlaWdodDtcXG4gIH1cXG59XFxuXFxuXFxuLy8gRmlndXJlc1xcbi8vXFxuLy8gQXBwbHkgYSBjb25zaXN0ZW50IG1hcmdpbiBzdHJhdGVneSAobWF0Y2hlcyBvdXIgdHlwZSBzdHlsZXMpLlxcblxcbmZpZ3VyZSB7XFxuICBtYXJnaW46IDAgMCAxcmVtO1xcbn1cXG5cXG5cXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcXG5cXG5pbWcsXFxuc3ZnIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxufVxcblxcblxcbi8vIFRhYmxlc1xcbi8vXFxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xcblxcbnRhYmxlIHtcXG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcXG59XFxuXFxuY2FwdGlvbiB7XFxuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xcbiAgcGFkZGluZy1ib3R0b206ICR0YWJsZS1jZWxsLXBhZGRpbmcteTtcXG4gIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxufVxcblxcbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXFxuLy8gMi4gTWF0Y2hlcyBkZWZhdWx0IGA8dGQ+YCBhbGlnbm1lbnQgYnkgaW5oZXJpdGluZyBgdGV4dC1hbGlnbmAuXFxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXFxuXFxudGgge1xcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7IC8vIDNcXG59XFxuXFxudGhlYWQsXFxudGJvZHksXFxudGZvb3QsXFxudHIsXFxudGQsXFxudGgge1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMDtcXG59XFxuXFxuXFxuLy8gRm9ybXNcXG4vL1xcbi8vIDEuIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXFxuXFxubGFiZWwge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXFxufVxcblxcbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDA5M1xcblxcbmJ1dHRvbiB7XFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG5cXG4vLyBFeHBsaWNpdGx5IHJlbW92ZSBmb2N1cyBvdXRsaW5lIGluIENocm9taXVtIHdoZW4gaXQgc2hvdWxkbid0IGJlXFxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxcbi8vIHNob3VsZCBiZSBkb2luZyB0aGlzIGF1dG9tYXRpY2FsbHksIGJ1dCBzZWVtcyB0byBjdXJyZW50bHkgYmVcXG4vLyBjb25mdXNlZCBhbmQgYXBwbGllcyBpdHMgdmVyeSB2aXNpYmxlIHR3by10b25lIG91dGxpbmUgYW55d2F5LlxcblxcbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcXG4gIG91dGxpbmU6IDA7XFxufVxcblxcbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxcblxcbmlucHV0LFxcbmJ1dHRvbixcXG5zZWxlY3QsXFxub3B0Z3JvdXAsXFxudGV4dGFyZWEge1xcbiAgbWFyZ2luOiAwOyAvLyAxXFxuICBmb250LWZhbWlseTogaW5oZXJpdDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbn1cXG5cXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcXG5cXG5idXR0b24sXFxuc2VsZWN0IHtcXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xcbn1cXG5cXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xcbi8vXFxuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2Mlxcbltyb2xlPVxcXCJidXR0b25cXFwiXSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxcblxcbnNlbGVjdCB7XFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcXG59XFxuXFxuLy8gUmVtb3ZlIHRoZSBkcm9wZG93biBhcnJvdyBpbiBDaHJvbWUgZnJvbSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMuXFxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxcblxcbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxcbi8vIDMuIE9waW5pb25hdGVkOiBhZGQgXFxcImhhbmRcXFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxcblxcbmJ1dHRvbixcXG5bdHlwZT1cXFwiYnV0dG9uXFxcIl0sIC8vIDFcXG5bdHlwZT1cXFwicmVzZXRcXFwiXSxcXG5bdHlwZT1cXFwic3VibWl0XFxcIl0ge1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcXG5cXG4gIEBpZiAkZW5hYmxlLWJ1dHRvbi1wb2ludGVycyB7XFxuICAgICY6bm90KDpkaXNhYmxlZCkge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgLy8gM1xcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cXG5cXG46Oi1tb3otZm9jdXMtaW5uZXIge1xcbiAgcGFkZGluZzogMDtcXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcXG59XFxuXFxuLy8gMS4gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxcblxcbnRleHRhcmVhIHtcXG4gIHJlc2l6ZTogdmVydGljYWw7IC8vIDFcXG59XFxuXFxuLy8gMS4gQnJvd3NlcnMgc2V0IGEgZGVmYXVsdCBgbWluLXdpZHRoOiBtaW4tY29udGVudDtgIG9uIGZpZWxkc2V0cyxcXG4vLyAgICB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXFxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTlcXG4vLyAgICBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXFxuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXFxuXFxuZmllbGRzZXQge1xcbiAgbWluLXdpZHRoOiAwOyAvLyAxXFxuICBwYWRkaW5nOiAwOyAvLyAyXFxuICBtYXJnaW46IDA7IC8vIDJcXG4gIGJvcmRlcjogMDsgLy8gMlxcbn1cXG5cXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50Llxcbi8vICAgIFRoaXMgd2F5IHRoZSBib3JkZXIgb2YgYSBmaWVsZHNldCB3cmFwcyBhcm91bmQgdGhlIGxlZ2VuZCBpZiBwcmVzZW50Llxcbi8vIDIuIEZpeCB3cmFwcGluZyBidWcuXFxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcXG5cXG5sZWdlbmQge1xcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVnZW5kLWZvbnQtc2l6ZSk7XFxuICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcblxcbiAgKyAqIHtcXG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcXG4gIH1cXG59XFxuXFxuLy8gRml4IGhlaWdodCBvZiBpbnB1dHMgd2l0aCBhIHR5cGUgb2YgZGF0ZXRpbWUtbG9jYWwsIGRhdGUsIG1vbnRoLCB3ZWVrLCBvciB0aW1lXFxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTg4NDJcXG5cXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlcixcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC10ZXh0LFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkIHtcXG4gIHBhZGRpbmc6IDA7XFxufVxcblxcbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XFxuICBoZWlnaHQ6IGF1dG87XFxufVxcblxcbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxcbi8vIDIuIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcXG4vLyAgICBgLmZvcm0tY29udHJvbGAgY2xhc3MgY2FuIHByb3Blcmx5IHN0eWxlIHRoZW0uIE5vdGUgdGhhdCB0aGlzIGNhbm5vdCBzaW1wbHlcXG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXFxuLy8gICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cXG5cXG5bdHlwZT1cXFwic2VhcmNoXFxcIl0ge1xcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDFcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXFxufVxcblxcbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxcbi8vIFNlZSBodHRwczovL3J0bHN0eWxpbmcuY29tL3Bvc3RzL3J0bC1zdHlsaW5nI2Zvcm0taW5wdXRzXFxuLy8gMi4gUlRMIG9ubHkgb3V0cHV0XFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xcblxcbi8qIHJ0bDpyYXc6XFxuW3R5cGU9XFxcInRlbFxcXCJdLFxcblt0eXBlPVxcXCJ1cmxcXFwiXSxcXG5bdHlwZT1cXFwiZW1haWxcXFwiXSxcXG5bdHlwZT1cXFwibnVtYmVyXFxcIl0ge1xcbiAgZGlyZWN0aW9uOiBsdHI7XFxufVxcbiovXFxuXFxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxcblxcbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxufVxcblxcbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xcblxcbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XFxuICBwYWRkaW5nOiAwO1xcbn1cXG5cXG5cXG4vLyBJbmhlcml0IGZvbnQgZmFtaWx5IGFuZCBsaW5lIGhlaWdodCBmb3IgZmlsZSBpbnB1dCBidXR0b25zXFxuXFxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LW5vLXVua25vd25cXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIGZvbnQ6IGluaGVyaXQ7XFxufVxcblxcbi8vIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgXFxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cXG5cXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDFcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXFxufVxcblxcbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xcblxcbm91dHB1dCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbi8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcXG5cXG5pZnJhbWUge1xcbiAgYm9yZGVyOiAwO1xcbn1cXG5cXG4vLyBTdW1tYXJ5XFxuLy9cXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcXG5cXG5zdW1tYXJ5IHtcXG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgLy8gMVxcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG5cXG5cXG4vLyBQcm9ncmVzc1xcbi8vXFxuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cXG5cXG5wcm9ncmVzcyB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxufVxcblxcblxcbi8vIEhpZGRlbiBhdHRyaWJ1dGVcXG4vL1xcbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXFxuXFxuW2hpZGRlbl0ge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cIixcIi8vIFZhcmlhYmxlc1xcbi8vXFxuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXFxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXFxuXFxuLy8gQ29sb3Igc3lzdGVtXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXFxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcXG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XFxuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcXG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XFxuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcXG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XFxuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXFxuXFxuLy8gZnVzdi1kaXNhYmxlXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxcbiRncmF5czogKFxcbiAgXFxcIjEwMFxcXCI6ICRncmF5LTEwMCxcXG4gIFxcXCIyMDBcXFwiOiAkZ3JheS0yMDAsXFxuICBcXFwiMzAwXFxcIjogJGdyYXktMzAwLFxcbiAgXFxcIjQwMFxcXCI6ICRncmF5LTQwMCxcXG4gIFxcXCI1MDBcXFwiOiAkZ3JheS01MDAsXFxuICBcXFwiNjAwXFxcIjogJGdyYXktNjAwLFxcbiAgXFxcIjcwMFxcXCI6ICRncmF5LTcwMCxcXG4gIFxcXCI4MDBcXFwiOiAkZ3JheS04MDAsXFxuICBcXFwiOTAwXFxcIjogJGdyYXktOTAwXFxuKSAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxcbi8vIGZ1c3YtZW5hYmxlXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xcbiRpbmRpZ286ICAjNjYxMGYyICFkZWZhdWx0O1xcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xcbiRyZWQ6ICAgICAjZGMzNTQ1ICFkZWZhdWx0O1xcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xcbiRncmVlbjogICAjMTk4NzU0ICFkZWZhdWx0O1xcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItdmFyaWFibGVzXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcXG4kY29sb3JzOiAoXFxuICBcXFwiYmx1ZVxcXCI6ICAgICAgICRibHVlLFxcbiAgXFxcImluZGlnb1xcXCI6ICAgICAkaW5kaWdvLFxcbiAgXFxcInB1cnBsZVxcXCI6ICAgICAkcHVycGxlLFxcbiAgXFxcInBpbmtcXFwiOiAgICAgICAkcGluayxcXG4gIFxcXCJyZWRcXFwiOiAgICAgICAgJHJlZCxcXG4gIFxcXCJvcmFuZ2VcXFwiOiAgICAgJG9yYW5nZSxcXG4gIFxcXCJ5ZWxsb3dcXFwiOiAgICAgJHllbGxvdyxcXG4gIFxcXCJncmVlblxcXCI6ICAgICAgJGdyZWVuLFxcbiAgXFxcInRlYWxcXFwiOiAgICAgICAkdGVhbCxcXG4gIFxcXCJjeWFuXFxcIjogICAgICAgJGN5YW4sXFxuICBcXFwid2hpdGVcXFwiOiAgICAgICR3aGl0ZSxcXG4gIFxcXCJncmF5XFxcIjogICAgICAgJGdyYXktNjAwLFxcbiAgXFxcImdyYXktZGFya1xcXCI6ICAkZ3JheS04MDBcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XFxuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcXG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcXG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcXG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxcbiR0aGVtZS1jb2xvcnM6IChcXG4gIFxcXCJwcmltYXJ5XFxcIjogICAgJHByaW1hcnksXFxuICBcXFwic2Vjb25kYXJ5XFxcIjogICRzZWNvbmRhcnksXFxuICBcXFwic3VjY2Vzc1xcXCI6ICAgICRzdWNjZXNzLFxcbiAgXFxcImluZm9cXFwiOiAgICAgICAkaW5mbyxcXG4gIFxcXCJ3YXJuaW5nXFxcIjogICAgJHdhcm5pbmcsXFxuICBcXFwiZGFuZ2VyXFxcIjogICAgICRkYW5nZXIsXFxuICBcXFwibGlnaHRcXFwiOiAgICAgICRsaWdodCxcXG4gIFxcXCJkYXJrXFxcIjogICAgICAgJGRhcmtcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxcblxcbi8vIFRoZSBjb250cmFzdCByYXRpbyB0byByZWFjaCBhZ2FpbnN0IHdoaXRlLCB0byBkZXRlcm1pbmUgaWYgY29sb3IgY2hhbmdlcyBmcm9tIFxcXCJsaWdodFxcXCIgdG8gXFxcImRhcmtcXFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMC8jdmlzdWFsLWF1ZGlvLWNvbnRyYXN0LWNvbnRyYXN0XFxuJG1pbi1jb250cmFzdC1yYXRpbzogICA0LjUgIWRlZmF1bHQ7XFxuXFxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cXG4kY29sb3ItY29udHJhc3QtZGFyazogICAgICAkYmxhY2sgIWRlZmF1bHQ7XFxuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xcblxcbi8vIGZ1c3YtZGlzYWJsZVxcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcXG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XFxuJGJsdWUtMzAwOiB0aW50LWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcXG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xcbiRibHVlLTYwMDogc2hhZGUtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XFxuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcXG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xcbiRibHVlLTkwMDogc2hhZGUtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTIwMDogdGludC1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XFxuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTUwMDogJGluZGlnbyAhZGVmYXVsdDtcXG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTgwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcXG5cXG4kcHVycGxlLTEwMDogdGludC1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcXG4kcHVycGxlLTQwMDogdGludC1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtNzAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xcblxcbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcXG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XFxuJHBpbmstMzAwOiB0aW50LWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcXG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xcbiRwaW5rLTYwMDogc2hhZGUtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XFxuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcXG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xcbiRwaW5rLTkwMDogc2hhZGUtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcXG4kcmVkLTIwMDogdGludC1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XFxuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcXG4kcmVkLTUwMDogJHJlZCAhZGVmYXVsdDtcXG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcXG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcXG4kcmVkLTgwMDogc2hhZGUtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcXG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcXG5cXG4kb3JhbmdlLTEwMDogdGludC1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcXG4kb3JhbmdlLTQwMDogdGludC1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtNzAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xcblxcbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTMwMDogdGludC1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XFxuJHllbGxvdy02MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy05MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTIwMDogdGludC1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTUwMDogJGdyZWVuICFkZWZhdWx0O1xcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTgwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcXG5cXG4kdGVhbC0xMDA6IHRpbnQtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XFxuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcXG4kdGVhbC00MDA6IHRpbnQtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XFxuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcXG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xcbiR0ZWFsLTcwMDogc2hhZGUtY29sb3IoJHRlYWwsIDQwJSkgIWRlZmF1bHQ7XFxuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcXG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xcblxcbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcXG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XFxuJGN5YW4tMzAwOiB0aW50LWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcXG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xcbiRjeWFuLTYwMDogc2hhZGUtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XFxuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcXG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xcbiRjeWFuLTkwMDogc2hhZGUtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XFxuLy8gZnVzdi1lbmFibGVcXG5cXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXFxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxcbiAgKFxcXCI8XFxcIiwgXFxcIiUzY1xcXCIpLFxcbiAgKFxcXCI+XFxcIiwgXFxcIiUzZVxcXCIpLFxcbiAgKFxcXCIjXFxcIiwgXFxcIiUyM1xcXCIpLFxcbiAgKFxcXCIoXFxcIiwgXFxcIiUyOFxcXCIpLFxcbiAgKFxcXCIpXFxcIiwgXFxcIiUyOVxcXCIpLFxcbikgIWRlZmF1bHQ7XFxuXFxuLy8gT3B0aW9uc1xcbi8vXFxuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxcblxcbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcXG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiAgdHJ1ZSAhZGVmYXVsdDtcXG5cXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcXG5cXG4kdmFyaWFibGUtcHJlZml4OiAgICAgICAgICAgICBicy0gIWRlZmF1bHQ7XFxuXFxuLy8gR3JhZGllbnRcXG4vL1xcbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdmFyaWFibGUtZ3JhZGllbnRcXG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcXG5cXG4vLyBTcGFjaW5nXFxuLy9cXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXFxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxcbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXFxuXFxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcXG4kc3BhY2VyczogKFxcbiAgMDogMCxcXG4gIDE6ICRzcGFjZXIgLyA0LFxcbiAgMjogJHNwYWNlciAvIDIsXFxuICAzOiAkc3BhY2VyLFxcbiAgNDogJHNwYWNlciAqIDEuNSxcXG4gIDU6ICRzcGFjZXIgKiAzLFxcbikgIWRlZmF1bHQ7XFxuXFxuJG5lZ2F0aXZlLXNwYWNlcnM6IGlmKCRlbmFibGUtbmVnYXRpdmUtbWFyZ2lucywgbmVnYXRpdmlmeS1tYXAoJHNwYWNlcnMpLCBudWxsKSAhZGVmYXVsdDtcXG5cXG4vLyBQb3NpdGlvblxcbi8vXFxuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cXG5cXG4kcG9zaXRpb24tdmFsdWVzOiAoXFxuICAwOiAwLFxcbiAgNTA6IDUwJSxcXG4gIDEwMDogMTAwJVxcbikgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gQm9keVxcbi8vXFxuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxcblxcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcXG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG5cXG4vLyBMaW5rc1xcbi8vXFxuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxcblxcbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcXG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XFxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgc2hpZnQtY29sb3IoJGxpbmstY29sb3IsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpICFkZWZhdWx0O1xcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuJHN0cmV0Y2hlZC1saW5rLXBzZXVkby1lbGVtZW50OiAgICAgICAgICAgYWZ0ZXIgIWRlZmF1bHQ7XFxuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcXG5cXG4vLyBQYXJhZ3JhcGhzXFxuLy9cXG4vLyBTdHlsZSBwIGVsZW1lbnQuXFxuXFxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XFxuXFxuXFxuLy8gR3JpZCBicmVha3BvaW50c1xcbi8vXFxuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBncmlkLWJyZWFrcG9pbnRzXFxuJGdyaWQtYnJlYWtwb2ludHM6IChcXG4gIHhzOiAwLFxcbiAgc206IDU3NnB4LFxcbiAgbWQ6IDc2OHB4LFxcbiAgbGc6IDk5MnB4LFxcbiAgeGw6IDEyMDBweCxcXG4gIHh4bDogMTQwMHB4XFxuKSAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGdyaWQtYnJlYWtwb2ludHNcXG5cXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXFxcIiRncmlkLWJyZWFrcG9pbnRzXFxcIik7XFxuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXFxcIiRncmlkLWJyZWFrcG9pbnRzXFxcIik7XFxuXFxuXFxuLy8gR3JpZCBjb250YWluZXJzXFxuLy9cXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBjb250YWluZXItbWF4LXdpZHRoc1xcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxcbiAgc206IDU0MHB4LFxcbiAgbWQ6IDcyMHB4LFxcbiAgbGc6IDk2MHB4LFxcbiAgeGw6IDExNDBweCxcXG4gIHh4bDogMTMyMHB4XFxuKSAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXFxuXFxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcXFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXFxcIik7XFxuXFxuXFxuLy8gR3JpZCBjb2x1bW5zXFxuLy9cXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cXG5cXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcXG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XFxuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcXG5cXG4kZ3V0dGVyczogJHNwYWNlcnMgIWRlZmF1bHQ7XFxuXFxuLy8gQ29udGFpbmVyIHBhZGRpbmdcXG5cXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcXG5cXG5cXG4vLyBDb21wb25lbnRzXFxuLy9cXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXFxuXFxuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xcbiRib3JkZXItd2lkdGhzOiAoXFxuICAwOiAwLFxcbiAgMTogMXB4LFxcbiAgMjogMnB4LFxcbiAgMzogM3B4LFxcbiAgNDogNHB4LFxcbiAgNTogNXB4XFxuKSAhZGVmYXVsdDtcXG5cXG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuXFxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xcbiRib3JkZXItcmFkaXVzLXBpbGw6ICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xcblxcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcXG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XFxuJGJveC1zaGFkb3ctaW5zZXQ6ICAgICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcXG5cXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XFxuXFxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcXG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XFxuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xcblxcbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcXG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogICAgICAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xcblxcbi8vIHN0eWxlbGludC1kaXNhYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXFxuJGFzcGVjdC1yYXRpb3M6IChcXG4gIFxcXCIxeDFcXFwiOiAxMDAlLFxcbiAgXFxcIjR4M1xcXCI6IGNhbGMoMyAvIDQgKiAxMDAlKSxcXG4gIFxcXCIxNng5XFxcIjogY2FsYyg5IC8gMTYgKiAxMDAlKSxcXG4gIFxcXCIyMXg5XFxcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxcbikgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCBhc3BlY3QtcmF0aW9zXFxuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcXG5cXG4vLyBUeXBvZ3JhcGh5XFxuLy9cXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cXG5cXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgQXJpYWwsIFxcXCJOb3RvIFNhbnNcXFwiLCBcXFwiTGliZXJhdGlvbiBTYW5zXFxcIiwgc2Fucy1zZXJpZiwgXFxcIkFwcGxlIENvbG9yIEVtb2ppXFxcIiwgXFxcIlNlZ29lIFVJIEVtb2ppXFxcIiwgXFxcIlNlZ29lIFVJIFN5bWJvbFxcXCIsIFxcXCJOb3RvIENvbG9yIEVtb2ppXFxcIiAhZGVmYXVsdDtcXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFxcXCJMaWJlcmF0aW9uIE1vbm9cXFwiLCBcXFwiQ291cmllciBOZXdcXFwiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XFxuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcXG4kZm9udC1mYW1pbHktY29kZTogICAgICAgICAgICB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1tb25vc3BhY2UpICFkZWZhdWx0O1xcblxcbi8vICRmb250LXNpemUtcm9vdCBlZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncyBhbmQgbWFyZ2luc1xcbi8vICRmb250LXNpemUtYmFzZSBlZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxcbiRmb250LXNpemUtcm9vdDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xcblxcbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XFxuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcXG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XFxuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xcblxcbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XFxuXFxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XFxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMiAhZGVmYXVsdDtcXG5cXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XFxuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcXG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcXG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC1zaXplc1xcbiRmb250LXNpemVzOiAoXFxuICAxOiAkaDEtZm9udC1zaXplLFxcbiAgMjogJGgyLWZvbnQtc2l6ZSxcXG4gIDM6ICRoMy1mb250LXNpemUsXFxuICA0OiAkaDQtZm9udC1zaXplLFxcbiAgNTogJGg1LWZvbnQtc2l6ZSxcXG4gIDY6ICRoNi1mb250LXNpemVcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC1zaXplc1xcblxcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XFxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRpc3BsYXktaGVhZGluZ3NcXG4kZGlzcGxheS1mb250LXNpemVzOiAoXFxuICAxOiA1cmVtLFxcbiAgMjogNC41cmVtLFxcbiAgMzogNHJlbSxcXG4gIDQ6IDMuNXJlbSxcXG4gIDU6IDNyZW0sXFxuICA2OiAyLjVyZW1cXG4pICFkZWZhdWx0O1xcblxcbiRkaXNwbGF5LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XFxuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcXG5cXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcXG5cXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XFxuXFxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XFxuXFxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcblxcbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XFxuXFxuJGJsb2NrcXVvdGUtbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xcblxcbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuJGhyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcXG5cXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kbGVnZW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XFxuJGxlZ2VuZC1mb250LXdlaWdodDogICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG4kbWFyay1wYWRkaW5nOiAgICAgICAgICAgICAgICAuMmVtICFkZWZhdWx0O1xcblxcbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xcblxcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xcblxcbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcblxcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gVGFibGVzXFxuLy9cXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xcbiR0YWJsZS1jZWxsLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kdGFibGUtY2VsbC1wYWRkaW5nLXgtc206ICAgICAuMjVyZW0gIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xcblxcbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xcblxcbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xcbiR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcjogICAgIC4wNSAhZGVmYXVsdDtcXG4kdGFibGUtc3RyaXBlZC1iZzogICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcXG5cXG4kdGFibGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XFxuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XFxuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcXG5cXG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XFxuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcXG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XFxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcblxcbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcXG5cXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Q29sb3IgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLWJnLXNjYWxlOiAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDtcXG5cXG4kdGFibGUtdmFyaWFudHM6IChcXG4gIFxcXCJwcmltYXJ5XFxcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXFxuICBcXFwic2Vjb25kYXJ5XFxcIjogIHNoaWZ0LWNvbG9yKCRzZWNvbmRhcnksICR0YWJsZS1iZy1zY2FsZSksXFxuICBcXFwic3VjY2Vzc1xcXCI6ICAgIHNoaWZ0LWNvbG9yKCRzdWNjZXNzLCAkdGFibGUtYmctc2NhbGUpLFxcbiAgXFxcImluZm9cXFwiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcXG4gIFxcXCJ3YXJuaW5nXFxcIjogICAgc2hpZnQtY29sb3IoJHdhcm5pbmcsICR0YWJsZS1iZy1zY2FsZSksXFxuICBcXFwiZGFuZ2VyXFxcIjogICAgIHNoaWZ0LWNvbG9yKCRkYW5nZXIsICR0YWJsZS1iZy1zY2FsZSksXFxuICBcXFwibGlnaHRcXFwiOiAgICAgICRsaWdodCxcXG4gIFxcXCJkYXJrXFxcIjogICAgICAgJGRhcmssXFxuKSAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhYmxlc1xcblxcblxcbi8vIEJ1dHRvbnMgKyBGb3Jtc1xcbi8vXFxuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXFxuXFxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xcblxcbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xcblxcbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcblxcblxcbi8vIEJ1dHRvbnNcXG4vL1xcbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxcblxcbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XFxuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcXG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXFxuXFxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XFxuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XFxuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XFxuXFxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XFxuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XFxuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XFxuXFxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuXFxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XFxuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcXG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xcblxcbiRidG4tbGluay1jb2xvcjogICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xcbiRidG4tbGluay1ob3Zlci1jb2xvcjogICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xcbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG5cXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXFxuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XFxuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XFxuXFxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcblxcbiRidG4taG92ZXItYmctc2hhZGUtYW1vdW50OiAgICAgICAxNSUgIWRlZmF1bHQ7XFxuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcXG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xcbiRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50OiAgICAxMCUgIWRlZmF1bHQ7XFxuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcXG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xcbiRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAyNSUgIWRlZmF1bHQ7XFxuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBGb3Jtc1xcblxcbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGZvcm0tdGV4dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xcblxcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1sYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcXG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XFxuXFxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcXG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcXG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcXG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcXG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xcblxcbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XFxuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcXG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15IC8gMikgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XFxuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XFxuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuXFxuXFxuJGZvcm0tY2hlY2staW5wdXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjI1KSAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGwzIDNsNi02Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjI1KSAhZGVmYXVsdDtcXG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC1iZy1pbWFnZTogICAgICAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzOiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggIWRlZmF1bHQ7XFxuJGZvcm0tc3dpdGNoLXRyYW5zaXRpb246ICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24gLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3I6ICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2U6ICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcn0nLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFkZWZhdWx0O1xcblxcbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xcblxcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xcbiRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XFxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcblxcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgMTZweCAxMnB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXFxuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J00yIDVsNiA2IDYtNicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcblxcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICBjZW50ZXIgcmlnaHQgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xcblxcbiRmb3JtLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGZvcm0tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xcbiRmb3JtLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xcblxcbiRmb3JtLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xcbiRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbjogICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG5cXG4kZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICAkaW5wdXQtZ3JvdXAtYWRkb24tYmcgIWRlZmF1bHQ7XFxuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHNoYWRlLWNvbG9yKCRmb3JtLWZpbGUtYnV0dG9uLWJnLCA1JSkgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXg6ICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgMS42MjVyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iOiAgIC42MjVyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgIC42NSAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG5cXG4vLyBGb3JtIHZhbGlkYXRpb25cXG5cXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTogICAgICAgICAgJGZvcm0tdGV4dC1mb250LXN0eWxlICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXFxuICBcXFwidmFsaWRcXFwiOiAoXFxuICAgIFxcXCJjb2xvclxcXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxcbiAgICBcXFwiaWNvblxcXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcXG4gICksXFxuICBcXFwiaW52YWxpZFxcXCI6IChcXG4gICAgXFxcImNvbG9yXFxcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcXG4gICAgXFxcImljb25cXFwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcXG4gIClcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xcblxcbi8vIFotaW5kZXggbWFzdGVyIGxpc3RcXG4vL1xcbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXFxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcXG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XFxuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcXG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XFxuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xcblxcblxcbi8vIE5hdnNcXG5cXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRuYXYtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJG5hdi1saW5rLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuXFxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcXG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcXG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG5cXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG5cXG5cXG4vLyBOYXZiYXJcXG5cXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcXG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcblxcbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XFxuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXFxuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcXG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcXG4kbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcblxcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XFxuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoOiAgICAgICAgJGJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcXG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41NSkgIWRlZmF1bHQ7XFxuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcXG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XFxuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xcblxcblxcbi8vIERyb3Bkb3duc1xcbi8vXFxuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxcblxcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIHNoYWRlLWNvbG9yKCRncmF5LTkwMCwgMTAlKSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xcblxcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgLyA0ICFkZWZhdWx0O1xcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xcblxcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I6ICAgICAgICAgICRkcm9wZG93bi1kYXJrLWNvbG9yICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjogICAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I6ICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gUGFnaW5hdGlvblxcblxcbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydDogICAgICAgICAgIC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWZvY3VzLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcXG5cXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG5cXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcXG5cXG4kcGFnaW5hdGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xcblxcbi8vIENhcmRzXFxuXFxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XFxuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgLyAyICFkZWZhdWx0O1xcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG5cXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcblxcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XFxuXFxuLy8gQWNjb3JkaW9uXFxuJGFjY29yZGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcblxcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xcblxcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteTogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy15ICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1iZyAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDkwJSkgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDEwJSkgIWRlZmF1bHQ7XFxuXFxuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWljb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWNvbG9yICFkZWZhdWx0O1xcbiRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgxODBkZWcpICFkZWZhdWx0O1xcblxcbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcblxcbi8vIFRvb2x0aXBzXFxuXFxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICRzcGFjZXIgLyA0ICFkZWZhdWx0O1xcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XFxuXFxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XFxuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XFxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XFxuXFxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14OiAgICAgJHRvb2x0aXAtcGFkZGluZy14ICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcblxcblxcbi8vIFBvcG92ZXJzXFxuXFxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XFxuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XFxuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgc2hhZGUtY29sb3IoJHBvcG92ZXItYmcsIDYlKSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XFxuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG5cXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcXG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuXFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcXG5cXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBUb2FzdHNcXG5cXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcXG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XFxuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcXG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcXG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcXG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcXG4kdG9hc3Qtc3BhY2luZzogICAgICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcXG5cXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XFxuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xcblxcblxcbi8vIEJhZGdlc1xcblxcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcXG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcXG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG5cXG5cXG4vLyBNb2RhbHNcXG5cXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcXG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcblxcbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xcblxcbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XFxuXFxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XFxuXFxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcXG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XFxuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XFxuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuXFxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XFxuXFxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XFxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XFxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XFxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xcblxcbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XFxuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcXG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xcblxcblxcbi8vIEFsZXJ0c1xcbi8vXFxuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXFxuXFxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XFxuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG5cXG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7XFxuJGFsZXJ0LWNvbG9yLXNjYWxlOiAgICAgICAgICAgICAgICAgNDAlICFkZWZhdWx0O1xcblxcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgICAgICRhbGVydC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyAzeCBjb3ZlcnMgd2lkdGggb2YgeCBwbHVzIGRlZmF1bHQgcGFkZGluZyBvbiBlaXRoZXIgc2lkZVxcblxcblxcbi8vIFByb2dyZXNzIGJhcnNcXG5cXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcXG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcXG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBMaXN0IGdyb3VwXFxuXFxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuXFxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlOiAgICAgICAgICAtODAlICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDtcXG5cXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xcblxcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcXG5cXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xcblxcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcXG5cXG5cXG4vLyBJbWFnZSB0aHVtYm5haWxzXFxuXFxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xcblxcblxcbi8vIEZpZ3VyZXNcXG5cXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG5cXG5cXG4vLyBCcmVhZGNydW1ic1xcblxcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFxcXCIvXFxcIikgIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbi8vIENhcm91c2VsXFxuXFxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xcblxcbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcXG5cXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XFxuXFxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XFxuXFxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG5cXG4kY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbjogICAgICAgLjZzICFkZWZhdWx0O1xcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXFxuXFxuJGNhcm91c2VsLWRhcmstaW5kaWNhdG9yLWFjdGl2ZS1iZzogICRibGFjayAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCkgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gU3Bpbm5lcnNcXG5cXG4kc3Bpbm5lci13aWR0aDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XFxuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcXG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xcbiRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZDogLjc1cyAhZGVmYXVsdDtcXG5cXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAkc3Bpbm5lci13aWR0aC1zbSAhZGVmYXVsdDtcXG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XFxuXFxuXFxuLy8gQ2xvc2VcXG5cXG4kYnRuLWNsb3NlLXdpZHRoOiAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLWhlaWdodDogICAgICAgICAgICRidG4tY2xvc2Utd2lkdGggIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLXBhZGRpbmcteTogICAgICAgICRidG4tY2xvc2UtcGFkZGluZy14ICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtY29sb3I6ICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYnRuLWNsb3NlLWNvbG9yfSc+PHBhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk6ICAgIC43NSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI6ICAgICBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCUpIGJyaWdodG5lc3MoMjAwJSkgIWRlZmF1bHQ7XFxuXFxuLy8gQ29kZVxcblxcbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XFxuXFxuJGtiZC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XFxuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XFxuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XFxuXFxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cIixcIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxcblxcbi8vIFNDU1MgUkZTIG1peGluXFxuLy9cXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcXG4vL1xcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXFxuXFxuLy8gQ29uZmlndXJhdGlvblxcblxcbi8vIEJhc2UgdmFsdWVcXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XFxuJHJmcy11bml0OiByZW0gIWRlZmF1bHQ7XFxuXFxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XFxuICBAZXJyb3IgXFxcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXFxcIjtcXG59XFxuXFxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSB2YWx1ZXMgc3RhcnQgZGVjcmVhc2luZyBpZiBzY3JlZW4gd2lkdGggaXMgc21hbGxlclxcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcXG5cXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xcbiAgQGVycm9yIFxcXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cXFwiO1xcbn1cXG5cXG4vLyBSZXNpemUgdmFsdWVzIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xcblxcbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcXG5cXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gbnVtYmVyIG9yICRyZnMtZmFjdG9yIDw9IDEge1xcbiAgQGVycm9yIFxcXCJgI3skcmZzLWZhY3Rvcn1gIGlzIG5vdCBhIHZhbGlkICAkcmZzLWZhY3RvciwgaXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMS5cXFwiO1xcbn1cXG5cXG4vLyBNb2RlLiBQb3NzaWJpbGl0aWVzOiBcXFwibWluLW1lZGlhLXF1ZXJ5XFxcIiwgXFxcIm1heC1tZWRpYS1xdWVyeVxcXCJcXG4kcmZzLW1vZGU6IG1pbi1tZWRpYS1xdWVyeSAhZGVmYXVsdDtcXG5cXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXFxcImVuYWJsZVxcXCIgb3IgXFxcImRpc2FibGVcXFwiXFxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XFxuXFxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcXG5cXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcXG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xcblxcbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZnMgdG8gZmFsc2VcXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcXG5cXG4vLyBDYWNoZSAkcmZzLWJhc2UtdmFsdWUgdW5pdFxcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XFxuXFxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XFxuICAkcmZzLWJhc2UtdmFsdWU6ICRyZnMtYmFzZS12YWx1ZSAvICgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSk7XFxufVxcbkBlbHNlIGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHJlbSB7XFxuICAkcmZzLWJhc2UtdmFsdWU6ICRyZnMtYmFzZS12YWx1ZSAvICgkcmZzLWJhc2UtdmFsdWUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcXG59XFxuXFxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XFxuXFxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XFxuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XFxufVxcbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHJlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcXFwiZW1cXFwiIHtcXG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xcbn1cXG5cXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXFxuJHJmcy1tcS12YWx1ZTogaWYoJHJmcy1icmVha3BvaW50LXVuaXQgPT0gcHgsICN7JHJmcy1icmVha3BvaW50fXB4LCAjeyRyZnMtYnJlYWtwb2ludCAvICRyZnMtcmVtLXZhbHVlfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcXG4kcmZzLW1xLXByb3BlcnR5LXdpZHRoOiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtd2lkdGgsIG1pbi13aWR0aCk7XFxuJHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHQ6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC1oZWlnaHQsIG1pbi1oZWlnaHQpO1xcblxcbi8vIEludGVybmFsIG1peGluIHVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIG1lZGlhIHF1ZXJ5IG5lZWRzIHRvIGJlIHVzZWRcXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeSB7XFxuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xcbiAgICBAaWYgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XFxuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSwgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XFxuICAgICAgICBAY29udGVudDtcXG4gICAgICB9XFxuICAgIH1cXG4gICAgQGVsc2Uge1xcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkgYW5kICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xcbiAgICAgICAgQGNvbnRlbnQ7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuICBAZWxzZSB7XFxuICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSkge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBkaXNhYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cXG5AbWl4aW4gX3Jmcy1ydWxlIHtcXG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xcbiAgICAvLyBBZGRpbmcgYW4gZXh0cmEgY2xhc3MgaW5jcmVhc2VzIHNwZWNpZmljaXR5LCB3aGljaCBwcmV2ZW50cyB0aGUgbWVkaWEgcXVlcnkgdG8gb3ZlcnJpZGUgdGhlIHByb3BlcnR5XFxuICAgICYsXFxuICAgIC5kaXNhYmxlLXJmcyAmLFxcbiAgICAmLmRpc2FibGUtcmZzIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbiAgQGVsc2UgaWYgJHJmcy1jbGFzcyA9PSBlbmFibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xcbiAgICAuZW5hYmxlLXJmcyAmLFxcbiAgICAmLmVuYWJsZS1yZnMge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxuICBAZWxzZSB7XFxuICAgIEBjb250ZW50O1xcbiAgfVxcbn1cXG5cXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZW5hYmxlIGNsYXNzZXMgdG8gdGhlIHNlbGVjdG9yIGlmIG5lZWRlZC5cXG5AbWl4aW4gX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcXG5cXG4gIEBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSB7XFxuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcblxcbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcXG4gICAgICAuZW5hYmxlLXJmcyAmLFxcbiAgICAgICYuZW5hYmxlLXJmcyB7XFxuICAgICAgICBAY29udGVudDtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG4gIEBlbHNlIHtcXG4gICAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XFxuICAgICAgLmRpc2FibGUtcmZzICYsXFxuICAgICAgJi5kaXNhYmxlLXJmcyB7XFxuICAgICAgICBAY29udGVudDtcXG4gICAgICB9XFxuICAgIH1cXG4gICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgZm9ybWF0dGVkIG5vbi1yZXNwb25zaXZlIHZhbHVlXFxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XFxuICAvLyBDb252ZXJ0IHRvIGxpc3RcXG4gICR2YWx1ZXM6IGlmKHR5cGUtb2YoJHZhbHVlcykgIT0gbGlzdCwgKCR2YWx1ZXMsKSwgJHZhbHVlcyk7XFxuXFxuICAkdmFsOiAnJztcXG5cXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcXG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcXG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcXG4gICAgfVxcbiAgICBAZWxzZSB7XFxuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcXG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFxcXCJudW1iZXJcXFwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcXG5cXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xcbiAgICAgICAgLy8gQ29udmVydCB0byByZW0gaWYgbmVlZGVkXFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3skdmFsdWUgLyAoJHZhbHVlICogMCArICRyZnMtcmVtLXZhbHVlKX1yZW0sICR2YWx1ZSk7XFxuICAgICAgfVxcbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XFxuICAgICAgICAvLyBDb252ZXJ0IHRvIHB4IGlmIG5lZWRlZFxcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3skdmFsdWUgLyAoJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XFxuICAgICAgfVxcbiAgICAgIEBlbHNlIHtcXG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxcbiAgICAgICAgJHZhbDogJHZhbCArICcgJyArICR2YWx1ZTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XFxufVxcblxcbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIHJlc3BvbnNpdmUgdmFsdWUgY2FsY3VsYXRlZCBieSBSRlNcXG5AZnVuY3Rpb24gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpIHtcXG4gIC8vIENvbnZlcnQgdG8gbGlzdFxcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcXG5cXG4gICR2YWw6ICcnO1xcblxcbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xcbiAgICBAaWYgJHZhbHVlID09IDAge1xcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xcbiAgICB9XFxuXFxuICAgIEBlbHNlIHtcXG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXFxcIm51bWJlclxcXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xcblxcbiAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxcbiAgICAgIEBpZiBub3QgJHVuaXQgb3IgJHVuaXQgIT0gcHggYW5kICR1bml0ICE9IHJlbSB7XFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xcbiAgICAgIH1cXG5cXG4gICAgICBAZWxzZSB7XFxuICAgICAgICAvLyBSZW1vdmUgdW5pdCBmcm9tICR2YWx1ZSBmb3IgY2FsY3VsYXRpb25zXFxuICAgICAgICAkdmFsdWU6ICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIDEgLyAkcmZzLXJlbS12YWx1ZSkpO1xcblxcbiAgICAgICAgLy8gT25seSBhZGQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZSB2YWx1ZSBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbmltdW0gdmFsdWVcXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcXG4gICAgICAgICAgJHZhbDogJHZhbCArICcgJyArICBpZigkcmZzLXVuaXQgPT0gcmVtLCAjeyR2YWx1ZSAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skdmFsdWV9cHgpO1xcbiAgICAgICAgfVxcbiAgICAgICAgQGVsc2Uge1xcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG1pbmltdW0gdmFsdWVcXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlKSAvICRyZnMtZmFjdG9yO1xcblxcbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcXG4gICAgICAgICAgJHZhbHVlLWRpZmY6IGFicygkdmFsdWUpIC0gJHZhbHVlLW1pbjtcXG5cXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtdW5pdCA9PSByZW0sICN7JHZhbHVlLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcXG5cXG4gICAgICAgICAgLy8gVXNlIG5lZ2F0aXZlIHZhbHVlIGlmIG5lZWRlZFxcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XFxuXFxuICAgICAgICAgIC8vIFVzZSBgdm1pbmAgaWYgdHdvLWRpbWVuc2lvbmFsIGlzIGVuYWJsZWRcXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XFxuXFxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcXG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAjeyR2YWx1ZS1kaWZmICogMTAwIC8gJHJmcy1icmVha3BvaW50fSN7JHZhcmlhYmxlLXVuaXR9O1xcblxcbiAgICAgICAgICAvLyBSZXR1cm4gdGhlIGNhbGN1bGF0ZWQgdmFsdWVcXG4gICAgICAgICAgJHZhbDogJHZhbCArICcgY2FsYygnICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsICcgLSAnLCAnICsgJykgKyAkdmFyaWFibGUtd2lkdGggKyAnKSc7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xcbn1cXG5cXG4vLyBSRlMgbWl4aW5cXG5AbWl4aW4gcmZzKCR2YWx1ZXMsICRwcm9wZXJ0eTogZm9udC1zaXplKSB7XFxuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcXG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xcbiAgICAkZmx1aWRWYWw6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKTtcXG5cXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxcbiAgICBAaWYgJHZhbCA9PSAkZmx1aWRWYWwge1xcbiAgICAgICN7JHByb3BlcnR5fTogJHZhbDtcXG4gICAgfVxcbiAgICBAZWxzZSB7XFxuICAgICAgQGluY2x1ZGUgX3Jmcy1ydWxlIHtcXG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkVmFsKTtcXG5cXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XFxuICAgICAgfVxcblxcbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XFxuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICRmbHVpZFZhbCwgJHZhbCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIFNob3J0aGFuZCBoZWxwZXIgbWl4aW5zXFxuQG1peGluIGZvbnQtc2l6ZSgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xcbn1cXG5cXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmcpO1xcbn1cXG5cXG5AbWl4aW4gcGFkZGluZy10b3AoJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXRvcCk7XFxufVxcblxcbkBtaXhpbiBwYWRkaW5nLXJpZ2h0KCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XFxufVxcblxcbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctYm90dG9tKTtcXG59XFxuXFxuQG1peGluIHBhZGRpbmctbGVmdCgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctbGVmdCk7XFxufVxcblxcbkBtaXhpbiBtYXJnaW4oJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xcbn1cXG5cXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi10b3ApO1xcbn1cXG5cXG5AbWl4aW4gbWFyZ2luLXJpZ2h0KCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXJpZ2h0KTtcXG59XFxuXFxuQG1peGluIG1hcmdpbi1ib3R0b20oJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcXG59XFxuXFxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLWxlZnQpO1xcbn1cXG5cIixcIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcXG5cXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XFxuICAkcmV0dXJuOiAoKTtcXG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XFxuICAgIH0gQGVsc2Uge1xcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xcbiAgICB9XFxuICB9XFxuICBAcmV0dXJuICRyZXR1cm47XFxufVxcblxcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICB9XFxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XFxuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xcbiAgfVxcbn1cXG5cXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICB9XFxufVxcblxcbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICB9XFxufVxcblxcbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xcbiAgfVxcbn1cXG5cXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICB9XFxufVxcblxcbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIEhlYWRpbmdzXFxuLy9cXG4uaDEge1xcbiAgQGV4dGVuZCBoMTtcXG59XFxuXFxuLmgyIHtcXG4gIEBleHRlbmQgaDI7XFxufVxcblxcbi5oMyB7XFxuICBAZXh0ZW5kIGgzO1xcbn1cXG5cXG4uaDQge1xcbiAgQGV4dGVuZCBoNDtcXG59XFxuXFxuLmg1IHtcXG4gIEBleHRlbmQgaDU7XFxufVxcblxcbi5oNiB7XFxuICBAZXh0ZW5kIGg2O1xcbn1cXG5cXG5cXG4ubGVhZCB7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcXG59XFxuXFxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcXG5AZWFjaCAkZGlzcGxheSwgJGZvbnQtc2l6ZSBpbiAkZGlzcGxheS1mb250LXNpemVzIHtcXG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xcbiAgICBmb250LXdlaWdodDogJGRpc3BsYXktZm9udC13ZWlnaHQ7XFxuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcXG4gIH1cXG59XFxuXFxuLy9cXG4vLyBFbXBoYXNpc1xcbi8vXFxuLnNtYWxsIHtcXG4gIEBleHRlbmQgc21hbGw7XFxufVxcblxcbi5tYXJrIHtcXG4gIEBleHRlbmQgbWFyaztcXG59XFxuXFxuLy9cXG4vLyBMaXN0c1xcbi8vXFxuXFxuLmxpc3QtdW5zdHlsZWQge1xcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xcbn1cXG5cXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xcbi5saXN0LWlubGluZSB7XFxuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XFxufVxcbi5saXN0LWlubGluZS1pdGVtIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG5cXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgIG1hcmdpbi1yaWdodDogJGxpc3QtaW5saW5lLXBhZGRpbmc7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gTWlzY1xcbi8vXFxuXFxuLy8gQnVpbGRzIG9uIGBhYmJyYFxcbi5pbml0aWFsaXNtIHtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcXG59XFxuXFxuLy8gQmxvY2txdW90ZXNcXG4uYmxvY2txdW90ZSB7XFxuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xcblxcbiAgPiA6bGFzdC1jaGlsZCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICB9XFxufVxcblxcbi5ibG9ja3F1b3RlLWZvb3RlciB7XFxuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XFxuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb290ZXItZm9udC1zaXplKTtcXG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XFxuXFxuICAmOjpiZWZvcmUge1xcbiAgICBjb250ZW50OiBcXFwiXFxcXDIwMTRcXFxcMDBBMFxcXCI7IC8vIGVtIGRhc2gsIG5ic3BcXG4gIH1cXG59XFxuXCIsXCIvLyBMaXN0c1xcblxcbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblwiLFwiLy8gUmVzcG9uc2l2ZSBpbWFnZXMgKGVuc3VyZSBpbWFnZXMgZG9uJ3Qgc2NhbGUgYmV5b25kIHRoZWlyIHBhcmVudHMpXFxuLy9cXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXFxuLy8gV2UgcHJldmlvdXNseSB0cmllZCB0aGUgXFxcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XFxcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXFxuLy8gd2hpY2ggd2VyZW4ndCBleHBlY3RpbmcgdGhlIGltYWdlcyB3aXRoaW4gdGhlbXNlbHZlcyB0byBiZSBpbnZvbHVudGFyaWx5IHJlc2l6ZWQuXFxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxcbi5pbWctZmx1aWQge1xcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XFxufVxcblxcblxcbi8vIEltYWdlIHRodW1ibmFpbHNcXG4uaW1nLXRodW1ibmFpbCB7XFxuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzKTtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcXG5cXG4gIC8vIEtlZXAgdGhlbSBhdCBtb3N0IDEwMCUgd2lkZVxcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XFxufVxcblxcbi8vXFxuLy8gRmlndXJlc1xcbi8vXFxuXFxuLmZpZ3VyZSB7XFxuICAvLyBFbnN1cmVzIHRoZSBjYXB0aW9uJ3MgdGV4dCBhbGlnbnMgd2l0aCB0aGUgaW1hZ2UuXFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbi5maWd1cmUtaW1nIHtcXG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgLyAyO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxufVxcblxcbi5maWd1cmUtY2FwdGlvbiB7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XFxuICBjb2xvcjogJGZpZ3VyZS1jYXB0aW9uLWNvbG9yO1xcbn1cXG5cIixcIi8vIEltYWdlIE1peGluc1xcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxcbi8vIC0gUmV0aW5hIGltYWdlXFxuXFxuXFxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxcbi8vXFxuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cXG5cXG5AbWl4aW4gaW1nLWZsdWlkIHtcXG4gIC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxcbiAgLy8gd2hlbiBzZXR0aW5nIGEgd2lkdGggYW5kIGhlaWdodCBhdHRyaWJ1dGUgb24gdGhlIGltZyBlbGVtZW50LlxcbiAgaGVpZ2h0OiBhdXRvO1xcbn1cXG5cIixcIi8vIENvbnRhaW5lciB3aWR0aHNcXG4vL1xcbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cXG5cXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xcbiAgLmNvbnRhaW5lcixcXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXFxuICAuY29udGFpbmVyLWZsdWlkIHtcXG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcXG4gIH1cXG5cXG4gIC8vIFJlc3BvbnNpdmUgY29udGFpbmVycyB0aGF0IGFyZSAxMDAlIHdpZGUgdW50aWwgYSBicmVha3BvaW50XFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcXG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XFxuICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xcbiAgICB9XFxuXFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcXG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XFxuICAgICAgfVxcblxcbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XFxuICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xcblxcbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xcbiAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcXG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XFxuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XFxuICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXFxuICAgICAgICAgIEBpZiAoJGJyZWFrcG9pbnQgPT0gJG5hbWUpIHtcXG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gQ29udGFpbmVyIG1peGluc1xcblxcbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkY29udGFpbmVyLXBhZGRpbmcteCkge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgsICN7JGd1dHRlcn0pO1xcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgsICN7JGd1dHRlcn0pO1xcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxufVxcblwiLFwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cXG4vL1xcbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcXG4vL1xcbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcXG4vL1xcbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cXG5cXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXFxuLy9cXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXFxuLy8gICAgbWRcXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXFxuLy8gICAgbWRcXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxcbi8vICAgIG1kXFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcXG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xcbiAgQGlmIG5vdCAkbiB7XFxuICAgIEBlcnJvciBcXFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFxcXCI7XFxuICB9XFxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcXG59XFxuXFxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50Llxcbi8vXFxuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXFxuLy8gICAgNTc2cHhcXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XFxuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XFxufVxcblxcbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2ZcXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXFxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxcbi8vXFxuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXFxuLy8gICAgNzY3Ljk4cHhcXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XFxuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcXG59XFxuXFxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cXG4vL1xcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXFxuLy8gICAgXFxcIlxcXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXFxuLy8gICAgXFxcIi1zbVxcXCJcXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcXFwiXFxcIiwgXFxcIi0jeyRuYW1lfVxcXCIpO1xcbn1cXG5cXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXFxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XFxuICBAaWYgJG1pbiB7XFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH0gQGVsc2Uge1xcbiAgICBAY29udGVudDtcXG4gIH1cXG59XFxuXFxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xcbiAgQGlmICRtYXgge1xcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9IEBlbHNlIHtcXG4gICAgQGNvbnRlbnQ7XFxuICB9XFxufVxcblxcbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXFxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXFxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xcblxcbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXFxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcXG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCk7XFxuXFxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gUm93XFxuLy9cXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxcblxcbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XFxuICAucm93IHtcXG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcXG5cXG4gICAgPiAqIHtcXG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIENvbHVtbnNcXG4vL1xcbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcXG5cXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcXG59XFxuXCIsXCIvLy8gR3JpZCBzeXN0ZW1cXG4vL1xcbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cXG5cXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAwO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcXG4gIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpIC8gLTIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIC0yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcXG59XFxuXFxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXFxuICBmbGV4LXNocmluazogMDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIDIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgLyAyKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcXG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteSk7XFxufVxcblxcbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XFxufVxcblxcbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogYXV0bztcXG59XFxuXFxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcXG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XFxuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcXG59XFxuXFxuLy8gUm93IGNvbHVtbnNcXG4vL1xcbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxcbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxcbi8vIHN0eWxlIGdyaWQuXFxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xcbiAgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlIC8gJGNvdW50O1xcbiAgfVxcbn1cXG5cXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXFxuLy9cXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxcblxcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xcblxcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcXG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcXG4gICAgICB9XFxuXFxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcXG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcXG4gICAgICB9XFxuXFxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XFxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcXG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcXG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcXG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcXG4gICAgICB9XFxuXFxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XFxuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcXG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XFxuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcblxcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXFxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcXG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFxcXCJcXFwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XFxuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgLy8gR3V0dGVyc1xcbiAgICAgIC8vXFxuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXFxuICAgICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRndXR0ZXJzIHtcXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XFxuICAgICAgICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14OiAjeyR2YWx1ZX07XFxuICAgICAgICB9XFxuXFxuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxcbiAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gQmFzaWMgQm9vdHN0cmFwIHRhYmxlXFxuLy9cXG5cXG4udGFibGUge1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JHRhYmxlLWJnfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3I6ICN7JHRhYmxlLXN0cmlwZWQtY29sb3J9O1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skdGFibGUtc3RyaXBlZC1iZ307XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7JHRhYmxlLWFjdGl2ZS1jb2xvcn07XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JHRhYmxlLWFjdGl2ZS1iZ307XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1jb2xvcjogI3skdGFibGUtaG92ZXItY29sb3J9O1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JHRhYmxlLWhvdmVyLWJnfTtcXG5cXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcXG4gIGNvbG9yOiAkdGFibGUtY29sb3I7XFxuICB2ZXJ0aWNhbC1hbGlnbjogJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ247XFxuICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XFxuXFxuICAvLyBUYXJnZXQgdGggJiB0ZFxcbiAgLy8gV2UgbmVlZCB0aGUgY2hpbGQgY29tYmluYXRvciB0byBwcmV2ZW50IHN0eWxlcyBsZWFraW5nIHRvIG5lc3RlZCB0YWJsZXMgd2hpY2ggZG9lc24ndCBoYXZlIGEgYC50YWJsZWAgY2xhc3MuXFxuICAvLyBXZSB1c2UgdGhlIHVuaXZlcnNhbCBzZWxlY3RvcnMgaGVyZSB0byBzaW1wbGlmeSB0aGUgc2VsZWN0b3IgKGVsc2Ugd2Ugd291bGQgbmVlZCA2IGRpZmZlcmVudCBzZWxlY3RvcnMpLlxcbiAgLy8gQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGlzIGdlbmVyYXRlcyBsZXNzIGNvZGUgYW5kIG1ha2VzIHRoZSBzZWxlY3RvciBsZXNzIHNwZWNpZmljIG1ha2luZyBpdCBlYXNpZXIgdG8gb3ZlcnJpZGUuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXkgJHRhYmxlLWNlbGwtcGFkZGluZy14O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmcpO1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoO1xcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZyk7XFxuICB9XFxuXFxuICA+IHRib2R5IHtcXG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XFxuICB9XFxuXFxuICA+IHRoZWFkIHtcXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcXG4gIH1cXG5cXG4gIC8vIEhpZ2hsaWdodCBib3JkZXIgY29sb3IgYmV0d2VlbiB0aGVhZCwgdGJvZHkgYW5kIHRmb290LlxcbiAgPiA6bm90KDpsYXN0LWNoaWxkKSA+IDpsYXN0LWNoaWxkID4gKiB7XFxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gQ2hhbmdlIHBsYWNlbWVudCBvZiBjYXB0aW9ucyB3aXRoIGEgY2xhc3NcXG4vL1xcblxcbi5jYXB0aW9uLXRvcCB7XFxuICBjYXB0aW9uLXNpZGU6IHRvcDtcXG59XFxuXFxuXFxuLy9cXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXFxuLy9cXG5cXG4udGFibGUtc20ge1xcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtICR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTtcXG4gIH1cXG59XFxuXFxuXFxuLy8gQm9yZGVyIHZlcnNpb25zXFxuLy9cXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxcbi8vXFxuLy8gV2hlbiBib3JkZXJzIGFyZSBhZGRlZCBvbiBhbGwgc2lkZXMgb2YgdGhlIGNlbGxzLCB0aGUgY29ybmVycyBjYW4gcmVuZGVyIG9kZCB3aGVuXFxuLy8gdGhlc2UgYm9yZGVycyBkbyBub3QgaGF2ZSB0aGUgc2FtZSBjb2xvciBvciBpZiB0aGV5IGFyZSBzZW1pLXRyYW5zcGFyZW50Llxcbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xcbi8vIHRvIHRoZSBgdGRgcyBvciBgdGhgc1xcblxcbi50YWJsZS1ib3JkZXJlZCB7XFxuICA+IDpub3QoY2FwdGlvbikgPiAqIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAkdGFibGUtYm9yZGVyLXdpZHRoIDA7XFxuXFxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXFxuICAgID4gKiB7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLnRhYmxlLWJvcmRlcmxlc3Mge1xcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gIH1cXG59XFxuXFxuLy8gWmVicmEtc3RyaXBpbmdcXG4vL1xcbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXFxuXFxuLnRhYmxlLXN0cmlwZWQge1xcbiAgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKCN7JHRhYmxlLXN0cmlwZWQtb3JkZXJ9KSB7XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xcbiAgICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtY29sb3IpO1xcbiAgfVxcbn1cXG5cXG4vLyBBY3RpdmUgdGFibGVcXG4vL1xcbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXFxuXFxuLnRhYmxlLWFjdGl2ZSB7XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmcpO1xcbiAgY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtY29sb3IpO1xcbn1cXG5cXG4vLyBIb3ZlciBlZmZlY3RcXG4vL1xcbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcXG5cXG4udGFibGUtaG92ZXIge1xcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmcpO1xcbiAgICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcXG4gIH1cXG59XFxuXFxuXFxuLy8gVGFibGUgdmFyaWFudHNcXG4vL1xcbi8vIFRhYmxlIHZhcmlhbnRzIHNldCB0aGUgdGFibGUgY2VsbCBiYWNrZ3JvdW5kcywgYm9yZGVyIGNvbG9yc1xcbi8vIGFuZCB0aGUgY29sb3JzIG9mIHRoZSBzdHJpcGVkLCBob3ZlcmVkICYgYWN0aXZlIHRhYmxlc1xcblxcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0YWJsZS12YXJpYW50cyB7XFxuICBAaW5jbHVkZSB0YWJsZS12YXJpYW50KCRjb2xvciwgJHZhbHVlKTtcXG59XFxuXFxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcXG4vL1xcbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxcbi8vIHNpemUgb2Ygd2hlcmUgeW91ciB0YWJsZSB3aWxsIG92ZXJmbG93LlxcblxcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG5cXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xcbiAgICAudGFibGUtcmVzcG9uc2l2ZSN7JGluZml4fSB7XFxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFudFxcbkBtaXhpbiB0YWJsZS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xcbiAgICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KG9wYXF1ZSgkYm9keS1iZywgJGJhY2tncm91bmQpKTtcXG4gICAgJGhvdmVyLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtaG92ZXItYmctZmFjdG9yKSk7XFxuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcXG4gICAgJGFjdGl2ZS1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpKTtcXG5cXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYmc6ICN7JGJhY2tncm91bmR9O1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyRzdHJpcGVkLWJnfTtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY3RpdmUtYmc6ICN7JGFjdGl2ZS1iZ307XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkYWN0aXZlLWJnKX07XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRob3Zlci1iZyl9O1xcblxcbiAgICBjb2xvcjogJGNvbG9yO1xcbiAgICBib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XFxuICB9XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFudFxcblwiLFwiLy9cXG4vLyBMYWJlbHNcXG4vL1xcblxcbi5mb3JtLWxhYmVsIHtcXG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b207XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tbGFiZWwtZm9udC1zaXplKTtcXG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XFxuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XFxuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XFxufVxcblxcbi8vIEZvciB1c2Ugd2l0aCBob3Jpem9udGFsIGFuZCBpbmxpbmUgZm9ybXMsIHdoZW4geW91IG5lZWQgdGhlIGxhYmVsIChvciBsZWdlbmQpXFxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxcbi5jb2wtZm9ybS1sYWJlbCB7XFxuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XFxuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XFxufVxcblxcbi5jb2wtZm9ybS1sYWJlbC1sZyB7XFxuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LWxnLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcXG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XFxuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktc20sICRpbnB1dC1ib3JkZXItd2lkdGgpO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xcbn1cXG5cIixcIi8vXFxuLy8gRm9ybSB0ZXh0XFxuLy9cXG5cXG4uZm9ybS10ZXh0IHtcXG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS10ZXh0LWZvbnQtc2l6ZSk7XFxuICBmb250LXN0eWxlOiAkZm9ybS10ZXh0LWZvbnQtc3R5bGU7XFxuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcXG4gIGNvbG9yOiAkZm9ybS10ZXh0LWNvbG9yO1xcbn1cXG5cIixcIi8vXFxuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcXG4vL1xcblxcbi5mb3JtLWNvbnRyb2wge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XFxuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XFxuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXFxuXFxuICAvLyBOb3RlOiBUaGlzIGhhcyBubyBlZmZlY3Qgb24gPHNlbGVjdD5zIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcXG5cXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3cpO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XFxuXFxuICAmW3R5cGU9XFxcImZpbGVcXFwiXSB7XFxuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIHByZXZlbnQgcHNldWRvIGVsZW1lbnQgYnV0dG9uIG92ZXJsYXBcXG5cXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxcbiAgJjpmb2N1cyB7XFxuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XFxuICAgIH0gQGVsc2Uge1xcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcXG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcXG4gICAgfVxcbiAgfVxcblxcbiAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yMzMwN1xcbiAgLy8gVE9ETzogd2UgY2FuIHJlbW92ZSB0aGlzIHdvcmthcm91bmQgb25jZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTU5IGlzIHJlc29sdmVkXFxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcXG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXFxcIlxcXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcXG4gIH1cXG5cXG4gIC8vIFBsYWNlaG9sZGVyXFxuICAmOjpwbGFjZWhvbGRlciB7XFxuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XFxuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxcbiAgICBvcGFjaXR5OiAxO1xcbiAgfVxcblxcbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcXG4gIC8vXFxuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cXG4gICY6ZGlzYWJsZWQsXFxuICAmW3JlYWRvbmx5XSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xcbiAgICAvLyBpT1MgZml4IGZvciB1bnJlYWRhYmxlIGRpc2FibGVkIGNvbnRlbnQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjU1LlxcbiAgICBvcGFjaXR5OiAxO1xcbiAgfVxcblxcbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1wc2V1ZG8tZWxlbWVudC1uby11bmtub3duXFxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcXG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XFxuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xcbiAgfVxcblxcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LW5vLXVua25vd25cXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xcbiAgfVxcblxcbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XFxuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15KSAoLSRpbnB1dC1wYWRkaW5nLXgpO1xcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcXG4gICAgY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yO1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1maWxlLWJ1dHRvbi1iZyk7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIGJvcmRlci13aWR0aDogMDtcXG4gICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcXG4gIH1cXG5cXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnO1xcbiAgfVxcbn1cXG5cXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XFxuLy9cXG4vLyBBcHBseSBjbGFzcyB0byBhIHJlYWRvbmx5IGlucHV0IHRvIG1ha2UgaXQgYXBwZWFyIGxpa2UgcmVndWxhciBwbGFpblxcbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxcblxcbi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XFxuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xcblxcbiAgJi5mb3JtLWNvbnRyb2wtc20sXFxuICAmLmZvcm0tY29udHJvbC1sZyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XFxuICAgIHBhZGRpbmctbGVmdDogMDtcXG4gIH1cXG59XFxuXFxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xcbi8vXFxuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxcbi8vXFxuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXFxuXFxuLmZvcm0tY29udHJvbC1zbSB7XFxuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XFxuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItcHNldWRvLWVsZW1lbnQtbm8tdW5rbm93blxcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XFxuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcXG4gIH1cXG5cXG4gICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1zbSkgKC0kaW5wdXQtcGFkZGluZy14LXNtKTtcXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XFxuICB9XFxufVxcblxcbi5mb3JtLWNvbnRyb2wtbGcge1xcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xcblxcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LW5vLXVua25vd25cXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XFxuICB9XFxuXFxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcXG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktbGcpICgtJGlucHV0LXBhZGRpbmcteC1sZyk7XFxuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xcbiAgfVxcbn1cXG5cXG4vLyBNYWtlIHN1cmUgdGV4dGFyZWFzIGRvbid0IHNocmluayB0b28gbXVjaCB3aGVuIHJlc2l6ZWRcXG4vLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yOTEyNFxcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxcbnRleHRhcmVhIHtcXG4gICYuZm9ybS1jb250cm9sIHtcXG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcXG4gIH1cXG5cXG4gICYuZm9ybS1jb250cm9sLXNtIHtcXG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcXG4gIH1cXG5cXG4gICYuZm9ybS1jb250cm9sLWxnIHtcXG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1sZztcXG4gIH1cXG59XFxuLy8gc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcXG5cXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcXG4gIG1heC13aWR0aDogM3JlbTtcXG4gIGhlaWdodDogYXV0bzsgLy8gT3ZlcnJpZGUgZml4ZWQgYnJvd3NlciBoZWlnaHRcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXk7XFxuXFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gIH1cXG5cXG4gICY6Oi1tb3otY29sb3Itc3dhdGNoIHtcXG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXFxcIlxcXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XFxuICB9XFxuXFxuICAmOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XFxuICAgIGhlaWdodDogaWYodW5pdCgkaW5wdXQtbGluZS1oZWlnaHQpID09IFxcXCJcXFwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xcbiAgfVxcbn1cXG5cIixcIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XFxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcXG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XFxuICB9XFxuXFxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xcbiAgICAgIEBpZiAkdmFsdWUgPT0gbnVsbCBvciAkdmFsdWUgPT0gbm9uZSB7XFxuICAgICAgICBAd2FybiBcXFwiVGhlIGtleXdvcmQgJ25vbmUnIG9yICdudWxsJyBtdXN0IGJlIHVzZWQgYXMgYSBzaW5nbGUgYXJndW1lbnQuXFxcIjtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcXG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XFxuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XFxuICAgIH1cXG5cXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24gYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcXG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBHcmFkaWVudHNcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtYmctbWl4aW5cXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yOiBudWxsKSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XFxuXFxuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xcbiAgfVxcbn1cXG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYWRpZW50LW1peGluc1xcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxcbi8vXFxuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcXG59XFxuXFxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxcbi8vXFxuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogbnVsbCwgJGVuZC1wZXJjZW50OiBudWxsKSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcXG59XFxuXFxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcXG59XFxuXFxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcXG59XFxuXFxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xcbn1cXG5cXG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xcbn1cXG5cXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXFxuXCIsXCIvLyBTZWxlY3RcXG4vL1xcbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxcblxcbi5mb3JtLXNlbGVjdCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgJGZvcm0tc2VsZWN0LXBhZGRpbmcteSAkZm9ybS1zZWxlY3QtcGFkZGluZy14O1xcbiAgZm9udC1mYW1pbHk6ICRmb3JtLXNlbGVjdC1mb250LWZhbWlseTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1zZWxlY3QtZm9udC13ZWlnaHQ7XFxuICBsaW5lLWhlaWdodDogJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0O1xcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXNlbGVjdC1iZztcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvcik7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uO1xcbiAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZTtcXG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XFxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93KTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yO1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcXG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXNlbGVjdC1ib3gtc2hhZG93LCAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XFxuICAgIH0gQGVsc2Uge1xcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcXG4gICAgICBib3gtc2hhZG93OiAkZm9ybS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcXG4gICAgfVxcbiAgfVxcblxcbiAgJlttdWx0aXBsZV0sXFxuICAmW3NpemVdOm5vdChbc2l6ZT1cXFwiMVxcXCJdKSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XFxuICB9XFxuXFxuICAmOmRpc2FibGVkIHtcXG4gICAgY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XFxuICB9XFxuXFxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcXG4gICY6LW1vei1mb2N1c3Jpbmcge1xcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkZm9ybS1zZWxlY3QtY29sb3I7XFxuICB9XFxufVxcblxcbi5mb3JtLXNlbGVjdC1zbSB7XFxuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcXG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xcbn1cXG5cXG4uZm9ybS1zZWxlY3QtbGcge1xcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XFxuICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcXG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcXG59XFxuXCIsXCIvL1xcbi8vIENoZWNrL3JhZGlvXFxuLy9cXG5cXG4uZm9ybS1jaGVjayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1pbi1oZWlnaHQ6ICRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ7XFxuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ7XFxuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xcblxcbiAgLmZvcm0tY2hlY2staW5wdXQge1xcbiAgICBmbG9hdDogbGVmdDtcXG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQgKiAtMTtcXG4gIH1cXG59XFxuXFxuLmZvcm0tY2hlY2staW5wdXQge1xcbiAgd2lkdGg6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xcbiAgaGVpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC13aWR0aDtcXG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAvIDI7IC8vIGxpbmUtaGVpZ2h0IG1pbnVzIGNoZWNrIGhlaWdodFxcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWJnO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcXG4gIGJvcmRlcjogJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIGNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLWNoZWNrLXRyYW5zaXRpb24pO1xcblxcbiAgJlt0eXBlPVxcXCJjaGVja2JveFxcXCJdIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcXG4gIH1cXG5cXG4gICZbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcXG4gIH1cXG5cXG4gICY6YWN0aXZlIHtcXG4gICAgZmlsdGVyOiAkZm9ybS1jaGVjay1pbnB1dC1hY3RpdmUtZmlsdGVyO1xcbiAgfVxcblxcbiAgJjpmb2N1cyB7XFxuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyO1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBib3gtc2hhZG93OiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xcbiAgfVxcblxcbiAgJjpjaGVja2VkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjtcXG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcXG5cXG4gICAgJlt0eXBlPVxcXCJjaGVja2JveFxcXCJdIHtcXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcXG4gICAgICB9IEBlbHNlIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICZbdHlwZT1cXFwicmFkaW9cXFwiXSB7XFxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XFxuICAgICAgfSBAZWxzZSB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLXJhZGlvLWNoZWNrZWQtYmctaW1hZ2UpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgJlt0eXBlPVxcXCJjaGVja2JveFxcXCJdOmluZGV0ZXJtaW5hdGUge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yO1xcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xcblxcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XFxuICAgIH0gQGVsc2Uge1xcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSk7XFxuICAgIH1cXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQge1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgZmlsdGVyOiBub25lO1xcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xcbiAgfVxcblxcbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXFxuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcXG4gICZbZGlzYWJsZWRdLFxcbiAgJjpkaXNhYmxlZCB7XFxuICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWxhYmVsLWRpc2FibGVkLW9wYWNpdHk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgY29sb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yO1xcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XFxufVxcblxcbi8vXFxuLy8gU3dpdGNoXFxuLy9cXG5cXG4uZm9ybS1zd2l0Y2gge1xcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcXG5cXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gICAgd2lkdGg6ICRmb3JtLXN3aXRjaC13aWR0aDtcXG4gICAgbWFyZ2luLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKTtcXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXMpO1xcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXN3aXRjaC10cmFuc2l0aW9uKTtcXG5cXG4gICAgJjpmb2N1cyB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtZm9jdXMtYmctaW1hZ2UpO1xcbiAgICB9XFxuXFxuICAgICY6Y2hlY2tlZCB7XFxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb247XFxuXFxuICAgICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xcbn1cXG5cXG4uYnRuLWNoZWNrIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG5cXG4gICZbZGlzYWJsZWRdLFxcbiAgJjpkaXNhYmxlZCB7XFxuICAgICsgLmJ0biB7XFxuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgICAgZmlsdGVyOiBub25lO1xcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5O1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gUmFuZ2VcXG4vL1xcbi8vIFN0eWxlIHJhbmdlIGlucHV0cyB0aGUgc2FtZSBhY3Jvc3MgYnJvd3NlcnMuIFZlbmRvci1zcGVjaWZpYyBydWxlcyBmb3IgcHNldWRvXFxuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3JcXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cXG5cXG4uZm9ybS1yYW5nZSB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogYWRkKCRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCwgJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aCAqIDIpO1xcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgb3V0bGluZTogMDtcXG5cXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxcbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXFxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxcbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cXG4gIH1cXG5cXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xcbiAgICBib3JkZXI6IDA7XFxuICB9XFxuXFxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10aHVtYi13aWR0aDtcXG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XFxuICAgIG1hcmdpbi10b3A6ICgkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQgLSAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQpIC8gMjsgLy8gV2Via2l0IHNwZWNpZmljXFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWJnKTtcXG4gICAgYm9yZGVyOiAkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XFxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbik7XFxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuXFxuICAgICY6YWN0aXZlIHtcXG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xcbiAgICB9XFxuICB9XFxuXFxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XFxuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcXG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XFxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xcbiAgICBjdXJzb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XFxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XFxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XFxuICB9XFxuXFxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcXG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcXG5cXG4gICAgJjphY3RpdmUge1xcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XFxuICAgIH1cXG4gIH1cXG5cXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XFxuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdHJhY2staGVpZ2h0O1xcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQge1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG5cXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xcbiAgICB9XFxuXFxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLmZvcm0tZmxvYXRpbmcge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcblxcbiAgPiAuZm9ybS1jb250cm9sLFxcbiAgPiAuZm9ybS1zZWxlY3Qge1xcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcXG4gIH1cXG5cXG4gID4gbGFiZWwge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgbGVmdDogMDtcXG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcXG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDsgLy8gUmVxdWlyZWQgZm9yIGFsaWduaW5nIGxhYmVsJ3MgdGV4dCB3aXRoIHRoZSBpbnB1dCBhcyBpdCBhZmZlY3RzIGlubmVyIGJveCBtb2RlbFxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbik7XFxuICB9XFxuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXFxuICA+IC5mb3JtLWNvbnRyb2wge1xcbiAgICAmOjpwbGFjZWhvbGRlciB7XFxuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICB9XFxuXFxuICAgICY6Zm9jdXMsXFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xcbiAgICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XFxuICAgICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcXG4gICAgfVxcbiAgICAvLyBEdXBsaWNhdGVkIGJlY2F1c2UgYDotd2Via2l0LWF1dG9maWxsYCBpbnZhbGlkYXRlcyBvdGhlciBzZWxlY3RvcnMgd2hlbiBncm91cGVkXFxuICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XFxuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xcbiAgICB9XFxuICB9XFxuXFxuICA+IC5mb3JtLXNlbGVjdCB7XFxuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XFxuICB9XFxuXFxuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMsXFxuICA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93biksXFxuICA+IC5mb3JtLXNlbGVjdCB7XFxuICAgIH4gbGFiZWwge1xcbiAgICAgIG9wYWNpdHk6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk7XFxuICAgICAgdHJhbnNmb3JtOiAkZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm07XFxuICAgIH1cXG4gIH1cXG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcXG4gID4gLmZvcm0tY29udHJvbDotd2Via2l0LWF1dG9maWxsIHtcXG4gICAgfiBsYWJlbCB7XFxuICAgICAgb3BhY2l0eTogJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTtcXG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcXG4gICAgfVxcbiAgfVxcbiAgLy8gc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXFxufVxcblwiLFwiLy9cXG4vLyBCYXNlIHN0eWxlc1xcbi8vXFxuXFxuLmlucHV0LWdyb3VwIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xcbiAgd2lkdGg6IDEwMCU7XFxuXFxuICA+IC5mb3JtLWNvbnRyb2wsXFxuICA+IC5mb3JtLXNlbGVjdCB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxcbiAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgd2lkdGg6IDElO1xcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXFxuICB9XFxuXFxuICAvLyBCcmluZyB0aGUgXFxcImFjdGl2ZVxcXCIgZm9ybSBjb250cm9sIHRvIHRoZSB0b3Agb2Ygc3Vycm91bmRpbmcgZWxlbWVudHNcXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcXG4gID4gLmZvcm0tc2VsZWN0OmZvY3VzIHtcXG4gICAgei1pbmRleDogMztcXG4gIH1cXG5cXG4gIC8vIEVuc3VyZSBidXR0b25zIGFyZSBhbHdheXMgYWJvdmUgaW5wdXRzIGZvciBtb3JlIHZpc3VhbGx5IHBsZWFzaW5nIGJvcmRlcnMuXFxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXFxuICAvLyBhcyBvdXIgaW5wdXRzLlxcbiAgLmJ0biB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgei1pbmRleDogMjtcXG5cXG4gICAgJjpmb2N1cyB7XFxuICAgICAgei1pbmRleDogMztcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBUZXh0dWFsIGFkZG9uc1xcbi8vXFxuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXFxuXFxuLmlucHV0LWdyb3VwLXRleHQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBwYWRkaW5nOiAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1ncm91cC1hZGRvbi1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XFxuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XFxufVxcblxcblxcbi8vIFNpemluZ1xcbi8vXFxuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxcbi8vIG1hbmlwdWxhdGlvbi5cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtbGcgPiAuYnRuIHtcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtdGV4dCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuYnRuIHtcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcXG4gIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XFxufVxcblxcblxcbi8vIFJvdW5kZWQgY29ybmVyc1xcbi8vXFxuLy8gVGhlc2UgcnVsZXNldHMgbXVzdCBjb21lIGFmdGVyIHRoZSBzaXppbmcgb25lcyB0byBwcm9wZXJseSBvdmVycmlkZSBzbSBhbmQgbGdcXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXFxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXFxuXFxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcXG4uaW5wdXQtZ3JvdXAge1xcbiAgJjpub3QoLmhhcy12YWxpZGF0aW9uKSB7XFxuICAgID4gOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgMykge1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xcbiAgICB9XFxuICB9XFxuXFxuICAmLmhhcy12YWxpZGF0aW9uIHtcXG4gICAgPiA6bnRoLWxhc3QtY2hpbGQobiArIDMpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpLFxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpIHtcXG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJHZhbGlkYXRpb24tbWVzc2FnZXM6IFxcXCJcXFwiO1xcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XFxuICAgICR2YWxpZGF0aW9uLW1lc3NhZ2VzOiAkdmFsaWRhdGlvbi1tZXNzYWdlcyArIFxcXCI6bm90KC5cXFwiICsgdW5xdW90ZSgkc3RhdGUpICsgXFxcIi10b29sdGlwKVxcXCIgKyBcXFwiOm5vdCguXFxcIiArIHVucXVvdGUoJHN0YXRlKSArIFxcXCItZmVlZGJhY2spXFxcIjtcXG4gIH1cXG5cXG4gID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSkjeyR2YWxpZGF0aW9uLW1lc3NhZ2VzfSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcXG4gIH1cXG59XFxuXCIsXCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXFxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXFxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcXG4gIEBpZiAoJHN0YXRlID09IFxcXCJ2YWxpZFxcXCIgb3IgJHN0YXRlID09IFxcXCJpbnZhbGlkXFxcIikge1xcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFxcXCImXFxcIiwgXFxcIlxcXCIpfTojeyRzdGF0ZX0sXFxuICAgICN7aWYoJiwgXFxcIiZcXFwiLCBcXFwiXFxcIil9LmlzLSN7JHN0YXRlfSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH0gQGVsc2Uge1xcbiAgICAje2lmKCYsIFxcXCImXFxcIiwgXFxcIlxcXCIpfS5pcy0jeyRzdGF0ZX0ge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxufVxcblxcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoXFxuICAkc3RhdGUsXFxuICAkY29sb3IsXFxuICAkaWNvbixcXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxcbiAgJHRvb2x0aXAtYmctY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpLFxcbiAgJGZvY3VzLWJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KVxcbikge1xcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcXG4gICAgZm9udC1zdHlsZTogJGZvcm0tZmVlZGJhY2stZm9udC1zdHlsZTtcXG4gICAgY29sb3I6ICRjb2xvcjtcXG4gIH1cXG5cXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAxMDAlO1xcbiAgICB6LWluZGV4OiA1O1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XFxuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcXG4gICAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iZy1jb2xvcjtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xcbiAgfVxcblxcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcXG4gICAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgfVxcbiAgfVxcblxcbiAgLmZvcm0tY29udHJvbCB7XFxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcXG5cXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgY2VudGVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOmZvY3VzIHtcXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXFxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XFxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAuZm9ybS1zZWxlY3Qge1xcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuXFxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XFxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tc2VsZWN0LWluZGljYXRvciksIGVzY2FwZS1zdmcoJGljb24pO1xcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uLCAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjtcXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XFxuICAgICAgfVxcblxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xcblxcbiAgICAgICY6Y2hlY2tlZCB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XFxuICAgICAgfVxcblxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XFxuICAgICAgfVxcblxcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayB7XFxuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIEJhc2Ugc3R5bGVzXFxuLy9cXG5cXG4uYnRuIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XFxuICBsaW5lLWhlaWdodDogJGJ0bi1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcXG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteSwgJGJ0bi1wYWRkaW5nLXgsICRidG4tZm9udC1zaXplLCAkYnRuLWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XFxuICB9XFxuXFxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcXG4gICY6Zm9jdXMge1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XFxuICB9XFxuXFxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxcbiAgLmJ0bi1jaGVjazphY3RpdmUgKyAmLFxcbiAgJjphY3RpdmUsXFxuICAmLmFjdGl2ZSB7XFxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XFxuXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1mb2N1cy1ib3gtc2hhZG93LCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjpkaXNhYmxlZCxcXG4gICYuZGlzYWJsZWQsXFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIG9wYWNpdHk6ICRidG4tZGlzYWJsZWQtb3BhY2l0eTtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xcbi8vXFxuXFxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAuYnRuLSN7JGNvbG9yfSB7XFxuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcXG4gIH1cXG59XFxuXFxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAuYnRuLW91dGxpbmUtI3skY29sb3J9IHtcXG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xcbiAgfVxcbn1cXG5cXG5cXG4vL1xcbi8vIExpbmsgYnV0dG9uc1xcbi8vXFxuXFxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcXG4uYnRuLWxpbmsge1xcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XFxuICBjb2xvcjogJGJ0bi1saW5rLWNvbG9yO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIGNvbG9yOiAkYnRuLWxpbmstaG92ZXItY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcXG4gIH1cXG5cXG4gICY6Zm9jdXMge1xcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XFxuICB9XFxuXFxuICAmOmRpc2FibGVkLFxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XFxuICB9XFxuXFxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxcbn1cXG5cXG5cXG4vL1xcbi8vIEJ1dHRvbiBTaXplc1xcbi8vXFxuXFxuLmJ0bi1sZyB7XFxuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xcbn1cXG5cXG4uYnRuLXNtIHtcXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XFxufVxcblwiLFwiLy8gQnV0dG9uIHZhcmlhbnRzXFxuLy9cXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXFxuXFxuQG1peGluIGJ1dHRvbi12YXJpYW50KFxcbiAgJGJhY2tncm91bmQsXFxuICAkYm9yZGVyLFxcbiAgJGNvbG9yOiBjb2xvci1jb250cmFzdCgkYmFja2dyb3VuZCksXFxuICAkaG92ZXItYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCkpLFxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxcbiAgJGhvdmVyLWNvbG9yOiBjb2xvci1jb250cmFzdCgkaG92ZXItYmFja2dyb3VuZCksXFxuICAkYWN0aXZlLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSksXFxuICAkYWN0aXZlLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJvcmRlciwgJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50KSksXFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxcbiAgJGRpc2FibGVkLWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLFxcbiAgJGRpc2FibGVkLWJvcmRlcjogJGJvcmRlcixcXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXFxuKSB7XFxuICBjb2xvcjogJGNvbG9yO1xcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcXG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xcbiAgfVxcblxcbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXFxuICAmOmZvY3VzIHtcXG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XFxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXFxuICAuYnRuLWNoZWNrOmFjdGl2ZSArICYsXFxuICAmOmFjdGl2ZSxcXG4gICYuYWN0aXZlLFxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XFxuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XFxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XFxuXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSwgLjUpKTtcXG4gICAgICB9IEBlbHNlIHtcXG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAmOmRpc2FibGVkLFxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1iYWNrZ3JvdW5kO1xcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZC1ib3JkZXI7XFxuICB9XFxufVxcblxcbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KFxcbiAgJGNvbG9yLFxcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsXFxuICAkYWN0aXZlLWJvcmRlcjogJGNvbG9yLFxcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxcbikge1xcbiAgY29sb3I6ICRjb2xvcjtcXG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcXG4gIH1cXG5cXG4gIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxcbiAgJjpmb2N1cyB7XFxuICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcXG4gIH1cXG5cXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXFxuICAuYnRuLWNoZWNrOmFjdGl2ZSArICYsXFxuICAmOmFjdGl2ZSxcXG4gICYuYWN0aXZlLFxcbiAgJi5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XFxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XFxuXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSkpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgJjpkaXNhYmxlZCxcXG4gICYuZGlzYWJsZWQge1xcbiAgICBjb2xvcjogJGNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIH1cXG59XFxuXFxuLy8gQnV0dG9uIHNpemVzXFxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XFxuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XFxuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XFxufVxcblwiLFwiLmZhZGUge1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcXG5cXG4gICY6bm90KC5zaG93KSB7XFxuICAgIG9wYWNpdHk6IDA7XFxuICB9XFxufVxcblxcbi5jb2xsYXBzZSB7XFxuICAmOm5vdCguc2hvdykge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5cXG4uY29sbGFwc2luZyB7XFxuICBoZWlnaHQ6IDA7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XFxufVxcblwiLFwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXFxuLmRyb3B1cCxcXG4uZHJvcGVuZCxcXG4uZHJvcGRvd24sXFxuLmRyb3BzdGFydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5kcm9wZG93bi10b2dnbGUge1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG5cXG4gIC8vIEdlbmVyYXRlIHRoZSBjYXJldCBhdXRvbWF0aWNhbGx5XFxuICBAaW5jbHVkZSBjYXJldCgpO1xcbn1cXG5cXG4vLyBUaGUgZHJvcGRvd24gbWVudVxcbi5kcm9wZG93bi1tZW51IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMTAwJTtcXG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XFxuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcXFwib3BlblxcXCIgb2YgdGhlIG1lbnVcXG4gIG1pbi13aWR0aDogJGRyb3Bkb3duLW1pbi13aWR0aDtcXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcXG4gIG1hcmdpbjogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBtYXJnaW4gb2YgdWxcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZHJvcGRvd24tZm9udC1zaXplKTtcXG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XFxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXFxuICBsaXN0LXN0eWxlOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XFxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRkcm9wZG93bi1ib3gtc2hhZG93KTtcXG5cXG4gICZbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgbGVmdDogMDtcXG4gICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXNwYWNlcjtcXG4gIH1cXG59XFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXFxuLy8gdGhpcyBjdXN0b20gcHJvcGVydHkgaW4gSlMgdG8gZGV0ZXJtaW5lIFBvcHBlcidzIHBvc2l0aW9uaW5nXFxuXFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIC5kcm9wZG93bi1tZW51I3skaW5maXh9LXN0YXJ0IHtcXG4gICAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG5cXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgICAgICByaWdodDogYXV0byAje1xcXCIvKiBydGw6aWdub3JlICovXFxcIn07XFxuICAgICAgICBsZWZ0OiAwICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcXG4gICAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuXFxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICAgICAgcmlnaHQ6IDAgI3tcXFwiLyogcnRsOmlnbm9yZSAqL1xcXCJ9O1xcbiAgICAgICAgbGVmdDogYXV0byAje1xcXCIvKiBydGw6aWdub3JlICovXFxcIn07XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xcblxcbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cXG4uZHJvcHVwIHtcXG4gIC5kcm9wZG93bi1tZW51IHtcXG4gICAgdG9wOiBhdXRvO1xcbiAgICBib3R0b206IDEwMCU7XFxuXFxuICAgICZbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgICBtYXJnaW4tdG9wOiAwO1xcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkcm9wZG93bi1zcGFjZXI7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5kcm9wZG93bi10b2dnbGUge1xcbiAgICBAaW5jbHVkZSBjYXJldCh1cCk7XFxuICB9XFxufVxcblxcbi5kcm9wZW5kIHtcXG4gIC5kcm9wZG93bi1tZW51IHtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogYXV0bztcXG4gICAgbGVmdDogMTAwJTtcXG5cXG4gICAgJltkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICAgIG1hcmdpbi10b3A6IDA7XFxuICAgICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5kcm9wZG93bi10b2dnbGUge1xcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xcbiAgICAmOjphZnRlciB7XFxuICAgICAgdmVydGljYWwtYWxpZ246IDA7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmRyb3BzdGFydCB7XFxuICAuZHJvcGRvd24tbWVudSB7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDEwMCU7XFxuICAgIGxlZnQ6IGF1dG87XFxuXFxuICAgICZbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgICBtYXJnaW4tdG9wOiAwO1xcbiAgICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICAgIEBpbmNsdWRlIGNhcmV0KHN0YXJ0KTtcXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGA8aHI+YCkgd2l0aGluIHRoZSBkcm9wZG93blxcbi5kcm9wZG93bi1kaXZpZGVyIHtcXG4gIGhlaWdodDogMDtcXG4gIG1hcmdpbjogJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXkgMDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGRyb3Bkb3duLWRpdmlkZXItYmc7XFxufVxcblxcbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcXG4vL1xcbi8vIGA8YnV0dG9uPmAtc3BlY2lmaWMgc3R5bGVzIGFyZSBkZW5vdGVkIHdpdGggYC8vIEZvciA8YnV0dG9uPnNgXFxuLmRyb3Bkb3duLWl0ZW0ge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXFxuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xcbiAgY2xlYXI6IGJvdGg7XFxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcXG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7IC8vIEZvciBgPGJ1dHRvbj5gc1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRm9yIGA8YnV0dG9uPmBzXFxuICBib3JkZXI6IDA7IC8vIEZvciBgPGJ1dHRvbj5gc1xcblxcbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZSdzIG5vIHBhZGRpbmdcXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XFxuICAgICY6Zmlyc3QtY2hpbGQge1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG4gICAgfVxcblxcbiAgICAmOmxhc3QtY2hpbGQge1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjpob3ZlcixcXG4gICY6Zm9jdXMge1xcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XFxuICB9XFxuXFxuICAmLmFjdGl2ZSxcXG4gICY6YWN0aXZlIHtcXG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1hY3RpdmUtYmcpO1xcbiAgfVxcblxcbiAgJi5kaXNhYmxlZCxcXG4gICY6ZGlzYWJsZWQge1xcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcXG4gIH1cXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLy8gRHJvcGRvd24gc2VjdGlvbiBoZWFkZXJzXFxuLmRyb3Bkb3duLWhlYWRlciB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1oZWFkZXItcGFkZGluZztcXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIGZvciB1c2Ugd2l0aCBoZWFkaW5nIGVsZW1lbnRzXFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XFxuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcXG59XFxuXFxuLy8gRHJvcGRvd24gdGV4dFxcbi5kcm9wZG93bi1pdGVtLXRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xcbn1cXG5cXG4vLyBEYXJrIGRyb3Bkb3duc1xcbi5kcm9wZG93bi1tZW51LWRhcmsge1xcbiAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWRhcmstYmc7XFxuICBib3JkZXItY29sb3I6ICRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWRhcmstYm94LXNoYWRvdyk7XFxuXFxuICAuZHJvcGRvd24taXRlbSB7XFxuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xcblxcbiAgICAmOmhvdmVyLFxcbiAgICAmOmZvY3VzIHtcXG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjtcXG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnKTtcXG4gICAgfVxcblxcbiAgICAmLmFjdGl2ZSxcXG4gICAgJjphY3RpdmUge1xcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1jb2xvcjtcXG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZyk7XFxuICAgIH1cXG5cXG4gICAgJi5kaXNhYmxlZCxcXG4gICAgJjpkaXNhYmxlZCB7XFxuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1kaXZpZGVyIHtcXG4gICAgYm9yZGVyLWNvbG9yOiAkZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XFxuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWNvbG9yO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLWhlYWRlciB7XFxuICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1oZWFkZXItY29sb3I7XFxuICB9XFxufVxcblwiLFwiQG1peGluIGNhcmV0LWRvd24ge1xcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAwO1xcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuXFxuQG1peGluIGNhcmV0LXVwIHtcXG4gIGJvcmRlci10b3A6IDA7XFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcXG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxufVxcblxcbkBtaXhpbiBjYXJldC1lbmQge1xcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJpZ2h0OiAwO1xcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcXG59XFxuXFxuQG1peGluIGNhcmV0LXN0YXJ0IHtcXG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG5cXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xcbiAgQGlmICRlbmFibGUtY2FyZXQge1xcbiAgICAmOjphZnRlciB7XFxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xcbiAgICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XFxuICAgICAgICBAaW5jbHVkZSBjYXJldC11cCgpO1xcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBlbmQge1xcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIEBpZiAkZGlyZWN0aW9uID09IHN0YXJ0IHtcXG4gICAgICAmOjphZnRlciB7XFxuICAgICAgICBkaXNwbGF5OiBub25lO1xcbiAgICAgIH1cXG5cXG4gICAgICAmOjpiZWZvcmUge1xcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XFxuICAgICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICY6ZW1wdHk6OmFmdGVyIHtcXG4gICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIE1ha2UgdGhlIGRpdiBiZWhhdmUgbGlrZSBhIGJ1dHRvblxcbi5idG4tZ3JvdXAsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXFxuXFxuICA+IC5idG4ge1xcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgfVxcblxcbiAgLy8gQnJpbmcgdGhlIGhvdmVyLCBmb2N1c2VkLCBhbmQgXFxcImFjdGl2ZVxcXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxcbiAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcXG4gID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcXG4gID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXFxuICA+IC5idG46aG92ZXIsXFxuICA+IC5idG46Zm9jdXMsXFxuICA+IC5idG46YWN0aXZlLFxcbiAgPiAuYnRuLmFjdGl2ZSB7XFxuICAgIHotaW5kZXg6IDE7XFxuICB9XFxufVxcblxcbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcXG4uYnRuLXRvb2xiYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG5cXG4gIC5pbnB1dC1ncm91cCB7XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcbn1cXG5cXG4uYnRuLWdyb3VwIHtcXG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XFxuICB9XFxuXFxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xcbiAgfVxcblxcbiAgLy8gVGhlIGxlZnQgcmFkaXVzIHNob3VsZCBiZSAwIGlmIHRoZSBidXR0b24gaXM6XFxuICAvLyAtIHRoZSBcXFwidGhpcmQgb3IgbW9yZVxcXCIgY2hpbGRcXG4gIC8vIC0gdGhlIHNlY29uZCBjaGlsZCBhbmQgdGhlIHByZXZpb3VzIGVsZW1lbnQgaXNuJ3QgYC5idG4tY2hlY2tgIChtYWtpbmcgaXQgdGhlIGZpcnN0IGNoaWxkIHZpc3VhbGx5KVxcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxcbiAgPiAuYnRuOm50aC1jaGlsZChuICsgMyksXFxuICA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XFxuICB9XFxufVxcblxcbi8vIFNpemluZ1xcbi8vXFxuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXFxuXFxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cXG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxcblxcblxcbi8vXFxuLy8gU3BsaXQgYnV0dG9uIGRyb3Bkb3duc1xcbi8vXFxuXFxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcXG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XFxuXFxuICAmOjphZnRlcixcXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXFxuICAuZHJvcGVuZCAmOjphZnRlciB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLmRyb3BzdGFydCAmOjpiZWZvcmUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XFxuICB9XFxufVxcblxcbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcXG59XFxuXFxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XFxuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xcbn1cXG5cXG5cXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcXG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXFxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcXG5cXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cXG4gICYuYnRuLWxpbmsge1xcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xcbiAgfVxcbn1cXG5cXG5cXG4vL1xcbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcXG4vL1xcblxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuXFxuICA+IC5idG4sXFxuICA+IC5idG4tZ3JvdXAge1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgIG1hcmdpbi10b3A6IC0kYnRuLWJvcmRlci13aWR0aDtcXG4gIH1cXG5cXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XFxuICB9XFxuXFxuICA+IC5idG4gfiAuYnRuLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XFxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xcbiAgfVxcbn1cXG5cIixcIi8vIEJhc2UgY2xhc3NcXG4vL1xcbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcXG4vLyBgPG5hdj5gcywgYDx1bD5gcyBvciBgPG9sPmBzLlxcblxcbi5uYXYge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ubmF2LWxpbmsge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAkbmF2LWxpbmstcGFkZGluZy15ICRuYXYtbGluay1wYWRkaW5nLXg7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdi1saW5rLWZvbnQtc2l6ZSk7XFxuICBmb250LXdlaWdodDogJG5hdi1saW5rLWZvbnQtd2VpZ2h0O1xcbiAgY29sb3I6ICRuYXYtbGluay1jb2xvcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xcblxcbiAgJjpob3ZlcixcXG4gICY6Zm9jdXMge1xcbiAgICBjb2xvcjogJG5hdi1saW5rLWhvdmVyLWNvbG9yO1xcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcXG4gIH1cXG5cXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcXG4gICYuZGlzYWJsZWQge1xcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xcbiAgfVxcbn1cXG5cXG4vL1xcbi8vIFRhYnNcXG4vL1xcblxcbi5uYXYtdGFicyB7XFxuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtdGFicy1ib3JkZXItY29sb3I7XFxuXFxuICAubmF2LWxpbmsge1xcbiAgICBtYXJnaW4tYm90dG9tOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcXG4gICAgYmFja2dyb3VuZDogbm9uZTtcXG4gICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XFxuXFxuICAgICY6aG92ZXIsXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcXG4gICAgICBpc29sYXRpb246IGlzb2xhdGU7XFxuICAgIH1cXG5cXG4gICAgJi5kaXNhYmxlZCB7XFxuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICB9XFxuICB9XFxuXFxuICAubmF2LWxpbmsuYWN0aXZlLFxcbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcXG4gICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudSB7XFxuICAgIC8vIE1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcXG4gICAgLy8gUmVtb3ZlIHRoZSB0b3Agcm91bmRlZCBjb3JuZXJzIGhlcmUgc2luY2UgdGhlcmUgaXMgYSBoYXJkIGVkZ2UgYWJvdmUgdGhlIG1lbnVcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gUGlsbHNcXG4vL1xcblxcbi5uYXYtcGlsbHMge1xcbiAgLm5hdi1saW5rIHtcXG4gICAgYmFja2dyb3VuZDogbm9uZTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XFxuICB9XFxuXFxuICAubmF2LWxpbmsuYWN0aXZlLFxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xcbiAgICBjb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZyk7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gSnVzdGlmaWVkIHZhcmlhbnRzXFxuLy9cXG5cXG4ubmF2LWZpbGwge1xcbiAgPiAubmF2LWxpbmssXFxuICAubmF2LWl0ZW0ge1xcbiAgICBmbGV4OiAxIDEgYXV0bztcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgfVxcbn1cXG5cXG4ubmF2LWp1c3RpZmllZCB7XFxuICA+IC5uYXYtbGluayxcXG4gIC5uYXYtaXRlbSB7XFxuICAgIGZsZXgtYmFzaXM6IDA7XFxuICAgIGZsZXgtZ3JvdzogMTtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBUYWJiYWJsZSB0YWJzXFxuLy9cXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcXG5cXG4udGFiLWNvbnRlbnQge1xcbiAgPiAudGFiLXBhbmUge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbiAgPiAuYWN0aXZlIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICB9XFxufVxcblwiLFwiLy8gQ29udGVudHNcXG4vL1xcbi8vIE5hdmJhclxcbi8vIE5hdmJhciBicmFuZFxcbi8vIE5hdmJhciBuYXZcXG4vLyBOYXZiYXIgdGV4dFxcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXFxuLy8gTmF2YmFyIHBvc2l0aW9uXFxuLy8gTmF2YmFyIHRoZW1lc1xcblxcblxcbi8vIE5hdmJhclxcbi8vXFxuLy8gUHJvdmlkZSBhIHN0YXRpYyBuYXZiYXIgZnJvbSB3aGljaCB3ZSBleHBhbmQgdG8gY3JlYXRlIGZ1bGwtd2lkdGgsIGZpeGVkLCBhbmRcXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cXG5cXG4ubmF2YmFyIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLXBhZGRpbmcteTtcXG4gIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXFxuICBwYWRkaW5nLWJvdHRvbTogJG5hdmJhci1wYWRkaW5nLXk7XFxuICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14OyAvLyBkZWZhdWx0OiBudWxsXFxuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xcblxcbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcXG4gIC8vIGZldyBwcm9wZXJ0aWVzIHNvIHRoYXQgY29udGVudCBuZXN0ZWQgd2l0aGluIGJlaGF2ZSBwcm9wZXJseS5cXG4gIC8vIFRoZSBgZmxleC13cmFwYCBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgdG8gc2ltcGxpZnkgdGhlIGV4cGFuZGVkIG5hdmJhcnNcXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC13cmFwOiBpbmhlcml0O1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICB9XFxuXFxuICA+IC5jb250YWluZXIsXFxuICA+IC5jb250YWluZXItZmx1aWQge1xcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xcbiAgfVxcblxcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XFxuICAgID4gLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGhzKX0ge1xcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuXFxuLy8gTmF2YmFyIGJyYW5kXFxuLy9cXG4vLyBVc2VkIGZvciBicmFuZCwgcHJvamVjdCwgb3Igc2l0ZSBuYW1lcy5cXG5cXG4ubmF2YmFyLWJyYW5kIHtcXG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcXG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcXG4gIG1hcmdpbi1yaWdodDogJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuXFxuICAmOmhvdmVyLFxcbiAgJjpmb2N1cyB7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBOYXZiYXIgbmF2XFxuLy9cXG4vLyBDdXN0b20gbmF2YmFyIG5hdmlnYXRpb24gKGRvZXNuJ3QgcmVxdWlyZSBgLm5hdmAsIGJ1dCBkb2VzIG1ha2UgdXNlIG9mIGAubmF2LWxpbmtgKS5cXG5cXG4ubmF2YmFyLW5hdiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG5cXG4gIC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XFxuICAgIHBhZGRpbmctbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IHN0YXRpYztcXG4gIH1cXG59XFxuXFxuXFxuLy8gTmF2YmFyIHRleHRcXG4vL1xcbi8vXFxuXFxuLm5hdmJhci10ZXh0IHtcXG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XFxufVxcblxcblxcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXFxuLy9cXG4vLyBDdXN0b20gc3R5bGVzIGZvciByZXNwb25zaXZlIGNvbGxhcHNpbmcgYW5kIHRvZ2dsaW5nIG9mIG5hdmJhciBjb250ZW50cy5cXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXFxuXFxuLy8gV2hlbiBjb2xsYXBzZWQsIHByZXZlbnQgdGhlIHRvZ2dsZWFibGUgbmF2YmFyIGNvbnRlbnRzIGZyb20gYXBwZWFyaW5nIGluXFxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cXG4ubmF2YmFyLWNvbGxhcHNlIHtcXG4gIGZsZXgtYmFzaXM6IDEwMCU7XFxuICBmbGV4LWdyb3c6IDE7XFxuICAvLyBGb3IgYWx3YXlzIGV4cGFuZGVkIG9yIGV4dHJhIGZ1bGwgbmF2YmFycywgZW5zdXJlIGNvbnRlbnQgYWxpZ25zIGl0c2VsZlxcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbn1cXG5cXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXFxuLm5hdmJhci10b2dnbGVyIHtcXG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbik7XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgfVxcblxcbiAgJjpmb2N1cyB7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gICAgb3V0bGluZTogMDtcXG4gICAgYm94LXNoYWRvdzogMCAwIDAgJG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRoO1xcbiAgfVxcbn1cXG5cXG4vLyBLZWVwIGFzIGEgc2VwYXJhdGUgZWxlbWVudCBzbyBmb2xrcyBjYW4gZWFzaWx5IG92ZXJyaWRlIGl0IHdpdGggYW5vdGhlciBpY29uXFxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXFxuLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDEuNWVtO1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xcbn1cXG5cXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgbWF4LWhlaWdodDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuXFxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAubmF2YmFyLWV4cGFuZC0qYCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIGNvbmZpZ3VyaW5nXFxuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxcbi5uYXZiYXItZXhwYW5kIHtcXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXVuaW9uLWNsYXNzLW5hbWVcXG4gICAgJiN7JGluZml4fSB7XFxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuXFxuICAgICAgICAubmF2YmFyLW5hdiB7XFxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuXFxuICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgICAgICAgIH1cXG5cXG4gICAgICAgICAgLm5hdi1saW5rIHtcXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XFxuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICAgICAgICB9XFxuXFxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBOYXZiYXIgdGhlbWVzXFxuLy9cXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXFxuXFxuLy8gRGFyayBsaW5rcyBhZ2FpbnN0IGEgbGlnaHQgYmFja2dyb3VuZFxcbi5uYXZiYXItbGlnaHQge1xcbiAgLm5hdmJhci1icmFuZCB7XFxuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yO1xcblxcbiAgICAmOmhvdmVyLFxcbiAgICAmOmZvY3VzIHtcXG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm5hdmJhci1uYXYge1xcbiAgICAubmF2LWxpbmsge1xcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xcblxcbiAgICAgICY6aG92ZXIsXFxuICAgICAgJjpmb2N1cyB7XFxuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcXG4gICAgICB9XFxuXFxuICAgICAgJi5kaXNhYmxlZCB7XFxuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLnNob3cgPiAubmF2LWxpbmssXFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XFxuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcXG4gIH1cXG5cXG4gIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XFxuICB9XFxuXFxuICAubmF2YmFyLXRleHQge1xcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcXG5cXG4gICAgYSxcXG4gICAgYTpob3ZlcixcXG4gICAgYTpmb2N1cyAge1xcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXFxuLm5hdmJhci1kYXJrIHtcXG4gIC5uYXZiYXItYnJhbmQge1xcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xcblxcbiAgICAmOmhvdmVyLFxcbiAgICAmOmZvY3VzIHtcXG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xcbiAgICB9XFxuICB9XFxuXFxuICAubmF2YmFyLW5hdiB7XFxuICAgIC5uYXYtbGluayB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcXG5cXG4gICAgICAmOmhvdmVyLFxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcXG4gICAgICB9XFxuXFxuICAgICAgJi5kaXNhYmxlZCB7XFxuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAuc2hvdyA+IC5uYXYtbGluayxcXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XFxuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xcbiAgfVxcblxcbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xcbiAgfVxcblxcbiAgLm5hdmJhci10ZXh0IHtcXG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcXG4gICAgYSxcXG4gICAgYTpob3ZlcixcXG4gICAgYTpmb2N1cyB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIEJhc2Ugc3R5bGVzXFxuLy9cXG5cXG4uY2FyZCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcXG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XFxuICBib3JkZXI6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xcblxcbiAgPiBociB7XFxuICAgIG1hcmdpbi1yaWdodDogMDtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICA+IC5saXN0LWdyb3VwIHtcXG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcXG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcXG5cXG4gICAgJjpmaXJzdC1jaGlsZCB7XFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG4gICAgfVxcblxcbiAgICAmOmxhc3QtY2hpbGQgIHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgICB9XFxuICB9XFxuXFxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXFxuICA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XFxuICAgIGJvcmRlci10b3A6IDA7XFxuICB9XFxufVxcblxcbi5jYXJkLWJvZHkge1xcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxcbiAgZmxleDogMSAxIGF1dG87XFxuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcXG4gIGNvbG9yOiAkY2FyZC1jb2xvcjtcXG59XFxuXFxuLmNhcmQtdGl0bGUge1xcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtdGl0bGUtc3BhY2VyLXk7XFxufVxcblxcbi5jYXJkLXN1YnRpdGxlIHtcXG4gIG1hcmdpbi10b3A6IC0kY2FyZC10aXRsZS1zcGFjZXIteSAvIDI7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtbGluayB7XFxuICAmOmhvdmVyIHtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgfVxcblxcbiAgKyAuY2FyZC1saW5rIHtcXG4gICAgbWFyZ2luLWxlZnQ6ICRjYXJkLXNwYWNlci14ICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gIH1cXG59XFxuXFxuLy9cXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcXG4vL1xcblxcbi5jYXJkLWhlYWRlciB7XFxuICBwYWRkaW5nOiAkY2FyZC1jYXAtcGFkZGluZy15ICRjYXJkLWNhcC1wYWRkaW5nLXg7XFxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxcbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcXG4gIGJvcmRlci1ib3R0b206ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XFxuXFxuICAmOmZpcnN0LWNoaWxkIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcXG4gIH1cXG59XFxuXFxuLmNhcmQtZm9vdGVyIHtcXG4gIHBhZGRpbmc6ICRjYXJkLWNhcC1wYWRkaW5nLXkgJGNhcmQtY2FwLXBhZGRpbmcteDtcXG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jYXAtYmc7XFxuICBib3JkZXItdG9wOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xcblxcbiAgJjpsYXN0LWNoaWxkIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBIZWFkZXIgbmF2c1xcbi8vXFxuXFxuLmNhcmQtaGVhZGVyLXRhYnMge1xcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XFxuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtY2FwLXBhZGRpbmcteTtcXG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XFxuICBib3JkZXItYm90dG9tOiAwO1xcblxcbiAgQGlmICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhPSAkY2FyZC1iZyB7XFxuICAgIC5uYXYtbGluay5hY3RpdmUge1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjYXJkLWJnO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5jYXJkLWhlYWRlci1waWxscyB7XFxuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14IC8gMjtcXG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtY2FwLXBhZGRpbmcteCAvIDI7XFxufVxcblxcbi8vIENhcmQgaW1hZ2VcXG4uY2FyZC1pbWctb3ZlcmxheSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy10b3AsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICB3aWR0aDogMTAwJTsgLy8gUmVxdWlyZWQgYmVjYXVzZSB3ZSB1c2UgZmxleGJveCBhbmQgdGhpcyBpbmhlcmVudGx5IGFwcGxpZXMgYWxpZ24tc2VsZjogc3RyZXRjaFxcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLXRvcCB7XFxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy1ib3R0b20ge1xcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XFxufVxcblxcblxcbi8vXFxuLy8gQ2FyZCBncm91cHNcXG4vL1xcblxcbi5jYXJkLWdyb3VwIHtcXG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXFxuICA+IC5jYXJkIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZ3JvdXAtbWFyZ2luO1xcbiAgfVxcblxcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xcbiAgICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXFxuICAgID4gLmNhcmQge1xcbiAgICAgIC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxcbiAgICAgIGZsZXg6IDEgMCAwJTtcXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xcblxcbiAgICAgICsgLmNhcmQge1xcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgICAgICBib3JkZXItbGVmdDogMDtcXG4gICAgICB9XFxuXFxuICAgICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XFxuXFxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XFxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgICAgICAgICB9XFxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XFxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcXG5cXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gICAgICAgICAgfVxcbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy9cXG4vLyBCYXNlIHN0eWxlc1xcbi8vXFxuXFxuLmFjY29yZGlvbi1idXR0b24ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteSAkYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcXG4gIGNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1idXR0b24tYmc7XFxuICBib3JkZXI6ICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRhY2NvcmRpb24tYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcXG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi10cmFuc2l0aW9uKTtcXG5cXG4gICYuY29sbGFwc2VkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gIH1cXG5cXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcXG4gICAgY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnO1xcblxcbiAgICAmOjphZnRlciB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbik7XFxuICAgICAgdHJhbnNmb3JtOiAkYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtO1xcbiAgICB9XFxuICB9XFxuXFxuICAvLyBBY2NvcmRpb24gaWNvblxcbiAgJjo6YWZ0ZXIge1xcbiAgICBmbGV4LXNocmluazogMDtcXG4gICAgd2lkdGg6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcXG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9uLWljb24td2lkdGg7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkYWNjb3JkaW9uLWJ1dHRvbi1pY29uKTtcXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gICAgYmFja2dyb3VuZC1zaXplOiAkYWNjb3JkaW9uLWljb24td2lkdGg7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb24pO1xcbiAgfVxcblxcbiAgJjpob3ZlciB7XFxuICAgIHotaW5kZXg6IDI7XFxuICB9XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgei1pbmRleDogMztcXG4gICAgYm9yZGVyLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIGJveC1zaGFkb3c6ICRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XFxuICB9XFxufVxcblxcbi5hY2NvcmRpb24taGVhZGVyIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5hY2NvcmRpb24taXRlbSB7XFxuICAmOmZpcnN0LW9mLXR5cGUge1xcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjpsYXN0LW9mLXR5cGUge1xcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICAgICAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcXG4gICAgICAmLmNvbGxhcHNlZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkYWNjb3JkaW9uLWJvcmRlci13aWR0aDtcXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cyk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoO1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cyk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICBib3JkZXI6IHNvbGlkICRhY2NvcmRpb24tYm9yZGVyLWNvbG9yO1xcbiAgYm9yZGVyLXdpZHRoOiAwICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWJvZHkge1xcbiAgcGFkZGluZzogJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteSAkYWNjb3JkaW9uLWJvZHktcGFkZGluZy14O1xcbn1cXG5cXG5cXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcXG4vL1xcbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgYWNjb3JkaW9uIGl0ZW1zIGVkZ2UtdG8tZWRnZS5cXG5cXG4uYWNjb3JkaW9uLWZsdXNoIHtcXG4gIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xcbiAgICBib3JkZXItbGVmdDogMDtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcXG4gIH1cXG5cXG4gIC5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgICBib3JkZXItd2lkdGg6IDA7XFxuICB9XFxuXFxuICAuYWNjb3JkaW9uLWl0ZW0ge1xcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xcbiAgICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJjpsYXN0LW9mLXR5cGUge1xcbiAgICAgIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XFxuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLmJyZWFkY3J1bWIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIHBhZGRpbmc6ICRicmVhZGNydW1iLXBhZGRpbmcteSAkYnJlYWRjcnVtYi1wYWRkaW5nLXg7XFxuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cXG4uYnJlYWRjcnVtYi1pdGVtIHtcXG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcXFwiL1xcXCIpXFxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14O1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteDtcXG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjtcXG4gICAgICBjb250ZW50OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1xcXCIvKiBydGw6XFxcIn0gdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlciwgZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQpKSAje1xcXCIqL1xcXCJ9O1xcbiAgICB9XFxuICB9XFxuXFxuICAmLmFjdGl2ZSB7XFxuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XFxuICB9XFxufVxcblwiLFwiLnBhZ2luYXRpb24ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcXG59XFxuXFxuLnBhZ2UtbGluayB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1jb2xvcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWJnO1xcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcXG5cXG4gICY6aG92ZXIge1xcbiAgICB6LWluZGV4OiAyO1xcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XFxuICB9XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgei1pbmRleDogMztcXG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWZvY3VzLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1mb2N1cy1iZztcXG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcXG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcXG4gIH1cXG59XFxuXFxuLnBhZ2UtaXRlbSB7XFxuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xcbiAgICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0O1xcbiAgfVxcblxcbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XFxuICAgIHotaW5kZXg6IDM7XFxuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRwYWdpbmF0aW9uLWFjdGl2ZS1iZyk7XFxuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjtcXG4gIH1cXG5cXG4gICYuZGlzYWJsZWQgLnBhZ2UtbGluayB7XFxuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBTaXppbmdcXG4vL1xcbkBpbmNsdWRlIHBhZ2luYXRpb24tc2l6ZSgkcGFnaW5hdGlvbi1wYWRkaW5nLXksICRwYWdpbmF0aW9uLXBhZGRpbmcteCwgbnVsbCwgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cyk7XFxuXFxuLnBhZ2luYXRpb24tbGcge1xcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcXG59XFxuXFxuLnBhZ2luYXRpb24tc20ge1xcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtKTtcXG59XFxuXCIsXCIvLyBQYWdpbmF0aW9uXFxuXFxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xcbiAgLnBhZ2UtbGluayB7XFxuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xcbiAgfVxcblxcbiAgLnBhZ2UtaXRlbSB7XFxuICAgIEBpZiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQgPT0gKC0kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGgpIHtcXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgIC5wYWdlLWxpbmsge1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuXFxuICAgICAgJjpsYXN0LWNoaWxkIHtcXG4gICAgICAgIC5wYWdlLWxpbmsge1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9IEBlbHNlIHtcXG4gICAgICAvL0FkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cXG4gICAgICAucGFnZS1saW5rIHtcXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIEJhc2UgY2xhc3NcXG4vL1xcbi8vIFJlcXVpcmVzIG9uZSBvZiB0aGUgY29udGV4dHVhbCwgY29sb3IgbW9kaWZpZXIgY2xhc3NlcyBmb3IgYGNvbG9yYCBhbmRcXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXFxuXFxuLmJhZGdlIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nLXkgJGJhZGdlLXBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmFkZ2UtZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XFxuICBsaW5lLWhlaWdodDogMTtcXG4gIGNvbG9yOiAkYmFkZ2UtY29sb3I7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XFxuICBAaW5jbHVkZSBncmFkaWVudC1iZygpO1xcblxcbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHlcXG4gICY6ZW1wdHkge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5cXG4vLyBRdWljayBmaXggZm9yIGJhZGdlcyBpbiBidXR0b25zXFxuLmJ0biAuYmFkZ2Uge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgdG9wOiAtMXB4O1xcbn1cXG5cIixcIi8vXFxuLy8gQmFzZSBzdHlsZXNcXG4vL1xcblxcbi5hbGVydCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XFxuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcXG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsZXJ0LWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cXG4vLyBIZWFkaW5ncyBmb3IgbGFyZ2VyIGFsZXJ0c1xcbi5hbGVydC1oZWFkaW5nIHtcXG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcXG4gIGNvbG9yOiBpbmhlcml0O1xcbn1cXG5cXG4vLyBQcm92aWRlIGNsYXNzIGZvciBsaW5rcyB0aGF0IG1hdGNoIGFsZXJ0c1xcbi5hbGVydC1saW5rIHtcXG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcXG59XFxuXFxuXFxuLy8gRGlzbWlzc2libGUgYWxlcnRzXFxuLy9cXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cXG5cXG4uYWxlcnQtZGlzbWlzc2libGUge1xcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcXG5cXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXFxuICAuYnRuLWNsb3NlIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICB6LWluZGV4OiAkc3RyZXRjaGVkLWxpbmstei1pbmRleCArIDE7XFxuICAgIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgKiAxLjI1ICRhbGVydC1wYWRkaW5nLXg7XFxuICB9XFxufVxcblxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1tb2RpZmllcnNcXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxcblxcbkBlYWNoICRzdGF0ZSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xcbiAgJGFsZXJ0LWJhY2tncm91bmQ6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWJnLXNjYWxlKTtcXG4gICRhbGVydC1ib3JkZXI6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWJvcmRlci1zY2FsZSk7XFxuICAkYWxlcnQtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGFsZXJ0LWNvbG9yLXNjYWxlKTtcXG4gIEBpZiAoY29udHJhc3QtcmF0aW8oJGFsZXJ0LWJhY2tncm91bmQsICRhbGVydC1jb2xvcikgPCAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XFxuICAgICRhbGVydC1jb2xvcjogbWl4KCR2YWx1ZSwgY29sb3ItY29udHJhc3QoJGFsZXJ0LWJhY2tncm91bmQpLCBhYnMoJGFsZXJ0LWNvbG9yLXNjYWxlKSk7XFxuICB9XFxuICAuYWxlcnQtI3skc3RhdGV9IHtcXG4gICAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWJvcmRlciwgJGFsZXJ0LWNvbG9yKTtcXG4gIH1cXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcXG5cIixcIkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcXG4gIGNvbG9yOiAkY29sb3I7XFxuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XFxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XFxuXFxuICAuYWxlcnQtbGluayB7XFxuICAgIGNvbG9yOiBzaGFkZS1jb2xvcigkY29sb3IsIDIwJSk7XFxuICB9XFxufVxcblwiLFwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXFxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xcbiAgQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XFxuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XFxuICB9XFxufVxcblxcbi5wcm9ncmVzcyB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmc7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwcm9ncmVzcy1ib3JkZXItcmFkaXVzKTtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgY29sb3I6ICRwcm9ncmVzcy1iYXItY29sb3I7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1iZztcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcXG59XFxuXFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcXG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQoKTtcXG4gIGJhY2tncm91bmQtc2l6ZTogJHByb2dyZXNzLWhlaWdodCAkcHJvZ3Jlc3MtaGVpZ2h0O1xcbn1cXG5cXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XFxuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcXG4gICAgYW5pbWF0aW9uOiAkcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmcgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XFxuXFxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcXG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIEJhc2UgY2xhc3NcXG4vL1xcbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXFxuXFxuLmxpc3QtZ3JvdXAge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuXFxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cXG5cXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXFxuLy9cXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxcblxcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcXG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXFxuICBjb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXFxuXFxuICAvLyBIb3ZlciBzdGF0ZVxcbiAgJjpob3ZlcixcXG4gICY6Zm9jdXMge1xcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXFxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XFxuICB9XFxuXFxuICAmOmFjdGl2ZSB7XFxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcXG4vL1xcbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cXG5cXG4ubGlzdC1ncm91cC1pdGVtIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXkgJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg7XFxuICBjb2xvcjogJGxpc3QtZ3JvdXAtY29sb3I7XFxuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1iZztcXG4gIGJvcmRlcjogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjtcXG5cXG4gICY6Zmlyc3QtY2hpbGQge1xcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcXG4gIH1cXG5cXG4gICY6bGFzdC1jaGlsZCB7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xcbiAgfVxcblxcbiAgJi5kaXNhYmxlZCxcXG4gICY6ZGlzYWJsZWQge1xcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1iZztcXG4gIH1cXG5cXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXFxuICAmLmFjdGl2ZSB7XFxuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXFxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xcbiAgfVxcblxcbiAgJiArICYge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcblxcbiAgICAmLmFjdGl2ZSB7XFxuICAgICAgbWFyZ2luLXRvcDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuXFxuLy8gSG9yaXpvbnRhbFxcbi8vXFxuLy8gQ2hhbmdlIHRoZSBsYXlvdXQgb2YgbGlzdCBncm91cCBpdGVtcyBmcm9tIHZlcnRpY2FsIChkZWZhdWx0KSB0byBob3Jpem9udGFsLlxcblxcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XFxuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xcblxcbiAgICAubGlzdC1ncm91cC1ob3Jpem9udGFsI3skaW5maXh9IHtcXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcblxcbiAgICAgID4gLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XFxuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygwKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XFxuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XFxuICAgICAgICB9XFxuXFxuICAgICAgICAmLmFjdGl2ZSB7XFxuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XFxuICAgICAgICB9XFxuXFxuICAgICAgICArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XFxuICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcblxcbiAgICAgICAgICAmLmFjdGl2ZSB7XFxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XFxuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXFxuLy9cXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXFxuXFxuLmxpc3QtZ3JvdXAtZmx1c2gge1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcXG5cXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci13aWR0aDogMCAwICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG5cXG4gICAgJjpsYXN0LWNoaWxkIHtcXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xcbi8vXFxuLy8gQWRkIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxcblxcbkBlYWNoICRzdGF0ZSwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xcbiAgJGxpc3QtZ3JvdXAtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkbGlzdC1ncm91cC1pdGVtLWJnLXNjYWxlKTtcXG4gICRsaXN0LWdyb3VwLWNvbG9yOiBzaGlmdC1jb2xvcigkdmFsdWUsICRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGUpO1xcbiAgQGlmIChjb250cmFzdC1yYXRpbygkbGlzdC1ncm91cC1iYWNrZ3JvdW5kLCAkbGlzdC1ncm91cC1jb2xvcikgPCAkbWluLWNvbnRyYXN0LXJhdGlvKSB7XFxuICAgICRsaXN0LWdyb3VwLWNvbG9yOiBtaXgoJHZhbHVlLCBjb2xvci1jb250cmFzdCgkbGlzdC1ncm91cC1iYWNrZ3JvdW5kKSwgYWJzKCRhbGVydC1jb2xvci1zY2FsZSkpO1xcbiAgfVxcblxcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkbGlzdC1ncm91cC1iYWNrZ3JvdW5kLCAkbGlzdC1ncm91cC1jb2xvcik7XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1tb2RpZmllcnNcXG5cIixcIi8vIExpc3QgR3JvdXBzXFxuXFxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xcbiAgICBjb2xvcjogJGNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcXG5cXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcXG4gICAgICAmOmhvdmVyLFxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAxMCUpO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLmFjdGl2ZSB7XFxuICAgICAgICBjb2xvcjogJHdoaXRlO1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxcbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxcbi8vIElmIHlvdSB3YW50IHRoZSBhbmNob3IgdmVyc2lvbiwgaXQgcmVxdWlyZXMgYGhyZWY9XFxcIiNcXFwiYC5cXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcXG5cXG4uYnRuLWNsb3NlIHtcXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgd2lkdGg6ICRidG4tY2xvc2Utd2lkdGg7XFxuICBoZWlnaHQ6ICRidG4tY2xvc2UtaGVpZ2h0O1xcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XFxuICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IGVzY2FwZS1zdmcoJGJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXFxuICBib3JkZXI6IDA7IC8vIGZvciBidXR0b24gZWxlbWVudHNcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoKTtcXG4gIG9wYWNpdHk6ICRidG4tY2xvc2Utb3BhY2l0eTtcXG5cXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRidG4tY2xvc2UtY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5O1xcbiAgfVxcblxcbiAgJjpmb2N1cyB7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIGJveC1zaGFkb3c6ICRidG4tY2xvc2UtZm9jdXMtc2hhZG93O1xcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk7XFxuICB9XFxuXFxuICAmOmRpc2FibGVkLFxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gICAgb3BhY2l0eTogJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5O1xcbiAgfVxcbn1cXG5cXG4uYnRuLWNsb3NlLXdoaXRlIHtcXG4gIGZpbHRlcjogJGJ0bi1jbG9zZS13aGl0ZS1maWx0ZXI7XFxufVxcblwiLFwiLnRvYXN0IHtcXG4gIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b2FzdC1mb250LXNpemUpO1xcbiAgY29sb3I6ICR0b2FzdC1jb2xvcjtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWJhY2tncm91bmQtY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkICR0b2FzdC1ib3JkZXItY29sb3I7XFxuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHRvYXN0LWJvcmRlci1yYWRpdXMpO1xcblxcbiAgJjpub3QoLnNob3dpbmcpOm5vdCguc2hvdykge1xcbiAgICBvcGFjaXR5OiAwO1xcbiAgfVxcblxcbiAgJi5oaWRlIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuXFxuLnRvYXN0LWNvbnRhaW5lciB7XFxuICB3aWR0aDogbWF4LWNvbnRlbnQ7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG5cXG4gID4gOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3Qtc3BhY2luZztcXG4gIH1cXG59XFxuXFxuLnRvYXN0LWhlYWRlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcXG4gIGNvbG9yOiAkdG9hc3QtaGVhZGVyLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlci1ib3R0b206ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhzdWJ0cmFjdCgkdG9hc3QtYm9yZGVyLXJhZGl1cywgJHRvYXN0LWJvcmRlci13aWR0aCkpO1xcblxcbiAgLmJ0bi1jbG9zZSB7XFxuICAgIG1hcmdpbi1yaWdodDogJHRvYXN0LXBhZGRpbmcteCAvIC0yO1xcbiAgICBtYXJnaW4tbGVmdDogJHRvYXN0LXBhZGRpbmcteDtcXG4gIH1cXG59XFxuXFxuLnRvYXN0LWJvZHkge1xcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbn1cXG5cIixcIi8vIC5tb2RhbC1vcGVuICAgICAgLSBib2R5IGNsYXNzIGZvciBraWxsaW5nIHRoZSBzY3JvbGxcXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcXG4vLyAubW9kYWwtY29udGVudCAgIC0gYWN0dWFsIG1vZGFsIHcvIGJnIGFuZCBjb3JuZXJzIGFuZCBzdHVmZlxcblxcblxcbi5tb2RhbC1vcGVuIHtcXG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG5cXG4gIC5tb2RhbCB7XFxuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gIH1cXG59XFxuXFxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXFxuLm1vZGFsIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAkemluZGV4LW1vZGFsO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMDk1MS5cXG4gIG91dGxpbmU6IDA7XFxuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxcbiAgLy8gZ25hcmx5IGlPUyBTYWZhcmkgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MzQyXFxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XFxufVxcblxcbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xcbi5tb2RhbC1kaWFsb2cge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IGF1dG87XFxuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xcbiAgLy8gYWxsb3cgY2xpY2tzIHRvIHBhc3MgdGhyb3VnaCBmb3IgY3VzdG9tIGNsaWNrIGhhbmRsaW5nIHRvIGNsb3NlIG1vZGFsXFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG5cXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXFxuICAubW9kYWwuZmFkZSAmIHtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XFxuICAgIHRyYW5zZm9ybTogJG1vZGFsLWZhZGUtdHJhbnNmb3JtO1xcbiAgfVxcbiAgLm1vZGFsLnNob3cgJiB7XFxuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNob3ctdHJhbnNmb3JtO1xcbiAgfVxcblxcbiAgLy8gV2hlbiB0cnlpbmcgdG8gY2xvc2UsIGFuaW1hdGUgZm9jdXMgdG8gc2NhbGVcXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XFxuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcXG4gIH1cXG59XFxuXFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gIGhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcXG5cXG4gIC5tb2RhbC1jb250ZW50IHtcXG4gICAgbWF4LWhlaWdodDogMTAwJTtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIH1cXG5cXG4gIC5tb2RhbC1ib2R5IHtcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gIH1cXG59XFxuXFxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XFxufVxcblxcbi8vIEFjdHVhbCBtb2RhbFxcbi5tb2RhbC1jb250ZW50IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xcbiAgY29sb3I6ICRtb2RhbC1jb250ZW50LWNvbG9yO1xcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcXG4gIC8vIFJlbW92ZSBmb2N1cyBvdXRsaW5lIGZyb20gb3BlbmVkIG1vZGFsXFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXFxuLm1vZGFsLWJhY2tkcm9wIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xcbiAgd2lkdGg6IDEwMHZ3O1xcbiAgaGVpZ2h0OiAxMDB2aDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZHJvcC1iZztcXG5cXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXFxuICAmLmZhZGUgeyBvcGFjaXR5OiAwOyB9XFxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxcbn1cXG5cXG4vLyBNb2RhbCBoZWFkZXJcXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3NcXG4ubW9kYWwtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXNocmluazogMDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXFxuICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XFxuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xcblxcbiAgLmJ0bi1jbG9zZSB7XFxuICAgIHBhZGRpbmc6ICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAvIDIpICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAvIDIpO1xcbiAgICBtYXJnaW46ICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAvIC0yKSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggLyAtMikgKCRtb2RhbC1oZWFkZXItcGFkZGluZy15IC8gLTIpIGF1dG87XFxuICB9XFxufVxcblxcbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxcbi5tb2RhbC10aXRsZSB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcXG59XFxuXFxuLy8gTW9kYWwgYm9keVxcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3RlcilcXG4ubW9kYWwtYm9keSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcXG4gIC8vIHdoZW4gdGhlcmUgc2hvdWxkIGJlIGEgZml4ZWQgaGVpZ2h0IG9uIGAubW9kYWwtZGlhbG9nYC5cXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XFxufVxcblxcbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXFxuLm1vZGFsLWZvb3RlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXFxuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG5cXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXFxuICA+ICoge1xcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xcbiAgfVxcbn1cXG5cXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAtOTk5OXB4O1xcbiAgd2lkdGg6IDUwcHg7XFxuICBoZWlnaHQ6IDUwcHg7XFxuICBvdmVyZmxvdzogc2Nyb2xsO1xcbn1cXG5cXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XFxuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXFxuICAubW9kYWwtZGlhbG9nIHtcXG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbWQ7XFxuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xcbiAgfVxcblxcbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gICAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xcbiAgfVxcblxcbiAgLm1vZGFsLWNvbnRlbnQge1xcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xcbiAgfVxcblxcbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cXG59XFxuXFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xcbiAgLm1vZGFsLWxnLFxcbiAgLm1vZGFsLXhsIHtcXG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XFxuICB9XFxufVxcblxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcXG4gIC5tb2RhbC14bCB7IG1heC13aWR0aDogJG1vZGFsLXhsOyB9XFxufVxcblxcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXFxcIlxcXCIsICRpbmZpeCArIFxcXCItZG93blxcXCIsIFxcXCJcXFwiKTtcXG5cXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcXG4gICAgICB3aWR0aDogMTAwdnc7XFxuICAgICAgbWF4LXdpZHRoOiBub25lO1xcbiAgICAgIGhlaWdodDogMTAwJTtcXG4gICAgICBtYXJnaW46IDA7XFxuXFxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgICAgYm9yZGVyOiAwO1xcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcXG4gICAgICB9XFxuXFxuICAgICAgLm1vZGFsLWhlYWRlciB7XFxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xcbiAgICAgIH1cXG5cXG4gICAgICAubW9kYWwtYm9keSB7XFxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgICAgIH1cXG5cXG4gICAgICAubW9kYWwtZm9vdGVyIHtcXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gQmFzZSBjbGFzc1xcbi50b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWFyZ2luOiAkdG9vbHRpcC1tYXJnaW47XFxuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXFxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxcbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XFxuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgb3BhY2l0eTogMDtcXG5cXG4gICYuc2hvdyB7IG9wYWNpdHk6ICR0b29sdGlwLW9wYWNpdHk7IH1cXG5cXG4gIC50b29sdGlwLWFycm93IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LWhlaWdodDtcXG5cXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgICAgY29udGVudDogXFxcIlxcXCI7XFxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5icy10b29sdGlwLXRvcCB7XFxuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcXG5cXG4gIC50b29sdGlwLWFycm93IHtcXG4gICAgYm90dG9tOiAwO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHRvcDogLTFweDtcXG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5icy10b29sdGlwLWVuZCB7XFxuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcXG5cXG4gIC50b29sdGlwLWFycm93IHtcXG4gICAgbGVmdDogMDtcXG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcXG4gICAgaGVpZ2h0OiAkdG9vbHRpcC1hcnJvdy13aWR0aDtcXG5cXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICByaWdodDogLTFweDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXRvb2x0aXAtYm90dG9tIHtcXG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xcblxcbiAgLnRvb2x0aXAtYXJyb3cge1xcbiAgICB0b3A6IDA7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgYm90dG9tOiAtMXB4O1xcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXRvb2x0aXAtc3RhcnQge1xcbiAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XFxuXFxuICAudG9vbHRpcC1hcnJvdyB7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIGxlZnQ6IC0xcHg7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcXG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXRvb2x0aXAtYXV0byB7XFxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XFxcInRvcFxcXCJdIHtcXG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XFxuICB9XFxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XFxcInJpZ2h0XFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcXG4gIH1cXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwiYm90dG9tXFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcXG4gIH1cXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwibGVmdFxcXCJdIHtcXG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1zdGFydDtcXG4gIH1cXG59XFxuXFxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxcbi50b29sdGlwLWlubmVyIHtcXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcXG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcXG59XFxuXCIsXCJAbWl4aW4gcmVzZXQtdGV4dCB7XFxuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XFxuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciBvdmVyZmxvdy13cmFwIC8gd29yZC13cmFwLlxcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XFxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XFxuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXFxuICB0ZXh0LWFsaWduOiBzdGFydDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRleHQtc2hhZG93OiBub25lO1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbiAgbGluZS1icmVhazogYXV0bztcXG59XFxuXCIsXCIucG9wb3ZlciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XFxuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXFxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxcbiAgQGluY2x1ZGUgcmVzZXQtdGV4dCgpO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XFxuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcG9wb3Zlci1ib3JkZXItcmFkaXVzKTtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XFxuXFxuICAucG9wb3Zlci1hcnJvdyB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcXG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XFxuXFxuICAgICY6OmJlZm9yZSxcXG4gICAgJjo6YWZ0ZXIge1xcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXBvcG92ZXItdG9wIHtcXG4gID4gLnBvcG92ZXItYXJyb3cge1xcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgYm90dG9tOiAwO1xcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XFxuICAgIH1cXG5cXG4gICAgJjo6YWZ0ZXIge1xcbiAgICAgIGJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXBvcG92ZXItZW5kIHtcXG4gID4gLnBvcG92ZXItYXJyb3cge1xcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIGxlZnQ6IDA7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xcbiAgICB9XFxuXFxuICAgICY6OmFmdGVyIHtcXG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5icy1wb3BvdmVyLWJvdHRvbSB7XFxuICA+IC5wb3BvdmVyLWFycm93IHtcXG4gICAgdG9wOiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHRvcDogMDtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xcbiAgICB9XFxuXFxuICAgICY6OmFmdGVyIHtcXG4gICAgICB0b3A6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xcbiAgICB9XFxuICB9XFxuXFxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgbGVmdDogNTAlO1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoIC8gMjtcXG4gICAgY29udGVudDogXFxcIlxcXCI7XFxuICAgIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1oZWFkZXItYmc7XFxuICB9XFxufVxcblxcbi5icy1wb3BvdmVyLXN0YXJ0IHtcXG4gID4gLnBvcG92ZXItYXJyb3cge1xcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcXG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcXG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcXG5cXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICByaWdodDogMDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcXG4gICAgfVxcblxcbiAgICAmOjphZnRlciB7XFxuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtcG9wb3Zlci1hdXRvIHtcXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwidG9wXFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcXG4gIH1cXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwicmlnaHRcXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItZW5kO1xcbiAgfVxcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJib3R0b21cXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xcbiAgfVxcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJsZWZ0XFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXN0YXJ0O1xcbiAgfVxcbn1cXG5cXG4vLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcXG4ucG9wb3Zlci1oZWFkZXIge1xcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWhlYWRlci1iZztcXG4gIGJvcmRlci1ib3R0b206ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCBzaGFkZS1jb2xvcigkcG9wb3Zlci1oZWFkZXItYmcsIDEwJSk7XFxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkcG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG5cXG4gICY6ZW1wdHkge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5cXG4ucG9wb3Zlci1ib2R5IHtcXG4gIHBhZGRpbmc6ICRwb3BvdmVyLWJvZHktcGFkZGluZy15ICRwb3BvdmVyLWJvZHktcGFkZGluZy14O1xcbiAgY29sb3I6ICRwb3BvdmVyLWJvZHktY29sb3I7XFxufVxcblwiLFwiLy8gTm90ZXMgb24gdGhlIGNsYXNzZXM6XFxuLy9cXG4vLyAxLiAuY2Fyb3VzZWwucG9pbnRlci1ldmVudCBzaG91bGQgaWRlYWxseSBiZSBwYW4teSAodG8gYWxsb3cgZm9yIHVzZXJzIHRvIHNjcm9sbCB2ZXJ0aWNhbGx5KVxcbi8vICAgIGV2ZW4gd2hlbiB0aGVpciBzY3JvbGwgYWN0aW9uIHN0YXJ0ZWQgb24gYSBjYXJvdXNlbCwgYnV0IGZvciBjb21wYXRpYmlsaXR5ICh3aXRoIEZpcmVmb3gpXFxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXFxuLy8gMi4gVGhlIC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxcbi8vICAgIHRoZSBhY3RpdmUgc2xpZGUgaXMgaGVhZGluZy5cXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXFxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIGlzIHRoZSBjdXJyZW50XFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXFxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kXFxuLy8gICAgaXMgdGhlIHVwY29taW5nIHNsaWRlIGluIHRyYW5zaXRpb24uXFxuXFxuLmNhcm91c2VsIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmNhcm91c2VsLnBvaW50ZXItZXZlbnQge1xcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcXG59XFxuXFxuLmNhcm91c2VsLWlubmVyIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XFxufVxcblxcbi5jYXJvdXNlbC1pdGVtIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICBmbG9hdDogbGVmdDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLXRyYW5zaXRpb24pO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4vKiBydGw6YmVnaW46aWdub3JlICovXFxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xcbn1cXG5cXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xcblxcblxcbi8vXFxuLy8gQWx0ZXJuYXRlIHRyYW5zaXRpb25zXFxuLy9cXG5cXG4uY2Fyb3VzZWwtZmFkZSB7XFxuICAuY2Fyb3VzZWwtaXRlbSB7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XFxuICAgIHRyYW5zZm9ybTogbm9uZTtcXG4gIH1cXG5cXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgICB6LWluZGV4OiAxO1xcbiAgICBvcGFjaXR5OiAxO1xcbiAgfVxcblxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICAgIHotaW5kZXg6IDA7XFxuICAgIG9wYWNpdHk6IDA7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XFxuLy9cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgei1pbmRleDogMTtcXG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcXG4gIGRpc3BsYXk6IGZsZXg7IC8vIDEuIGFsbG93IGZsZXggc3R5bGVzXFxuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcXG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcXG4gIHBhZGRpbmc6IDA7XFxuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgYm9yZGVyOiAwO1xcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XFxuXFxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxcbiAgJjpob3ZlcixcXG4gICY6Zm9jdXMge1xcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gICAgb3V0bGluZTogMDtcXG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcXG4gIH1cXG59XFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XFxuICBsZWZ0OiAwO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xcbn1cXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcXG4gIHJpZ2h0OiAwO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpLCBudWxsKTtcXG59XFxuXFxuLy8gSWNvbnMgZm9yIHdpdGhpblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XFxuICBoZWlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XFxufVxcblxcbi8qIHJ0bDpvcHRpb25zOiB7XFxuICBcXFwiYXV0b1JlbmFtZVxcXCI6IHRydWUsXFxuICBcXFwic3RyaW5nTWFwXFxcIjpbIHtcXG4gICAgXFxcIm5hbWVcXFwiICAgIDogXFxcInByZXYtbmV4dFxcXCIsXFxuICAgIFxcXCJzZWFyY2hcXFwiICA6IFxcXCJwcmV2XFxcIixcXG4gICAgXFxcInJlcGxhY2VcXFwiIDogXFxcIm5leHRcXFwiXFxuICB9IF1cXG59ICovXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcXG59XFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcXG59XFxuXFxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcXG4vL1xcbi8vIEFkZCBhIGNvbnRhaW5lciAoc3VjaCBhcyBhIGxpc3QpIHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBhbmQgYWRkIGFuIGl0ZW0gKGlkZWFsbHkgYSBmb2N1c2FibGUgY29udHJvbCxcXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXFxuXFxuLmNhcm91c2VsLWluZGljYXRvcnMge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMjtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIHBhZGRpbmc6IDA7XFxuICAvLyBVc2UgdGhlIC5jYXJvdXNlbC1jb250cm9sJ3Mgd2lkdGggYXMgbWFyZ2luIHNvIHdlIGRvbid0IG92ZXJsYXkgdGhvc2VcXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgbWFyZ2luLWxlZnQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG5cXG4gIFtkYXRhLWJzLXRhcmdldF0ge1xcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gICAgZmxleDogMCAxIGF1dG87XFxuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyO1xcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XFxuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XFxuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXFxuICAgIGJvcmRlci10b3A6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5O1xcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XFxuICB9XFxuXFxuICAuYWN0aXZlIHtcXG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTtcXG4gIH1cXG59XFxuXFxuXFxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcXG4vL1xcbi8vXFxuXFxuLmNhcm91c2VsLWNhcHRpb24ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcXG4gIGJvdHRvbTogJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyO1xcbiAgbGVmdDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xcbiAgcGFkZGluZy10b3A6ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcXG4gIHBhZGRpbmctYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XFxuICBjb2xvcjogJGNhcm91c2VsLWNhcHRpb24tY29sb3I7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcbi8vIERhcmsgbW9kZSBjYXJvdXNlbFxcblxcbi5jYXJvdXNlbC1kYXJrIHtcXG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICAgIGZpbHRlcjogJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjtcXG4gIH1cXG5cXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnO1xcbiAgfVxcblxcbiAgLmNhcm91c2VsLWNhcHRpb24ge1xcbiAgICBjb2xvcjogJGNhcm91c2VsLWRhcmstY2FwdGlvbi1jb2xvcjtcXG4gIH1cXG59XFxuXCIsXCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2xlYXJmaXhcXG5AbWl4aW4gY2xlYXJmaXgoKSB7XFxuICAmOjphZnRlciB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICBjbGVhcjogYm90aDtcXG4gICAgY29udGVudDogXFxcIlxcXCI7XFxuICB9XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgY2xlYXJmaXhcXG5cIixcIi8vXFxuLy8gUm90YXRpbmcgYm9yZGVyXFxuLy9cXG5cXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcXG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAje1xcXCIvKiBydGw6aWdub3JlICovXFxcIn07IH1cXG59XFxuXFxuLnNwaW5uZXItYm9yZGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcXG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xcbiAgYm9yZGVyOiAkc3Bpbm5lci1ib3JkZXItd2lkdGggc29saWQgY3VycmVudENvbG9yO1xcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG4gIGFuaW1hdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcXG59XFxuXFxuLnNwaW5uZXItYm9yZGVyLXNtIHtcXG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcXG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xcbiAgYm9yZGVyLXdpZHRoOiAkc3Bpbm5lci1ib3JkZXItd2lkdGgtc207XFxufVxcblxcbi8vXFxuLy8gR3Jvd2luZyBjaXJjbGVcXG4vL1xcblxcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcXG4gIDAlIHtcXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcXG4gIH1cXG4gIDUwJSB7XFxuICAgIG9wYWNpdHk6IDE7XFxuICAgIHRyYW5zZm9ybTogbm9uZTtcXG4gIH1cXG59XFxuXFxuLnNwaW5uZXItZ3JvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogJHNwaW5uZXItd2lkdGg7XFxuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG4gIG9wYWNpdHk6IDA7XFxuICBhbmltYXRpb246ICRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZCBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ncm93O1xcbn1cXG5cXG4uc3Bpbm5lci1ncm93LXNtIHtcXG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcXG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xcbn1cXG5cXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XFxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgICAuc3Bpbm5lci1ib3JkZXIsXFxuICAgIC5zcGlubmVyLWdyb3cge1xcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xcbiAgLmxpbmstI3skY29sb3J9IHtcXG4gICAgY29sb3I6ICR2YWx1ZTtcXG5cXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XFxuICAgICAgJjpob3ZlcixcXG4gICAgICAmOmZvY3VzIHtcXG4gICAgICAgIGNvbG9yOiBpZihjb2xvci1jb250cmFzdCgkdmFsdWUpID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSwgdGludC1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cXG5cXG4ucmF0aW8ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IDEwMCU7XFxuXFxuICAmOjpiZWZvcmUge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1hc3BlY3QtcmF0aW8pO1xcbiAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIH1cXG5cXG4gID4gKiB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAwO1xcbiAgICBsZWZ0OiAwO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgfVxcbn1cXG5cXG5AZWFjaCAka2V5LCAkcmF0aW8gaW4gJGFzcGVjdC1yYXRpb3Mge1xcbiAgLnJhdGlvLSN7JGtleX0ge1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1hc3BlY3QtcmF0aW86ICN7JHJhdGlvfTtcXG4gIH1cXG59XFxuXCIsXCIvLyBTaG9ydGhhbmRcXG5cXG4uZml4ZWQtdG9wIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XFxufVxcblxcbi5maXhlZC1ib3R0b20ge1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgcmlnaHQ6IDA7XFxuICBib3R0b206IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcXG59XFxuXFxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wXFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcXG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICAgIHRvcDogMDtcXG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gVmlzdWFsbHkgaGlkZGVuXFxuLy9cXG5cXG4udmlzdWFsbHktaGlkZGVuLFxcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XFxuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcXG59XFxuXCIsXCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcXG5cXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcXG4vL1xcbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xcblxcbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4oKSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcXG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcXG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XFxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XFxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XFxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLy8gVXNlIHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLCBvciBvbmUgb2YgaXRzIGNoaWxkIGVsZW1lbnRzIGlzIGZvY3VzZWRcXG4vLyAoaS5lLiB3aGVuIGZvY3VzIGlzIHdpdGhpbiB0aGUgZWxlbWVudC9jb250YWluZXIgdGhhdCB0aGUgY2xhc3Mgd2FzIGFwcGxpZWQgdG8pXFxuLy9cXG4vLyBVc2VmdWwgZm9yIFxcXCJTa2lwIHRvIG1haW4gY29udGVudFxcXCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxcblxcbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xcbiAgJjpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIFN0cmV0Y2hlZCBsaW5rXFxuLy9cXG5cXG4uc3RyZXRjaGVkLWxpbmsge1xcbiAgJjo6I3skc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnR9IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiAwO1xcbiAgICBib3R0b206IDA7XFxuICAgIGxlZnQ6IDA7XFxuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4O1xcbiAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIFRleHQgdHJ1bmNhdGlvblxcbi8vXFxuXFxuLnRleHQtdHJ1bmNhdGUge1xcbiAgQGluY2x1ZGUgdGV4dC10cnVuY2F0ZSgpO1xcbn1cXG5cIixcIi8vIFRleHQgdHJ1bmNhdGVcXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXFxuXFxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG5cIixcIi8vIFV0aWxpdHkgZ2VuZXJhdG9yXFxuLy8gVXNlZCB0byBnZW5lcmF0ZSB1dGlsaXRpZXMgJiBwcmludCB1dGlsaXRpZXNcXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xcbiAgJHZhbHVlczogbWFwLWdldCgkdXRpbGl0eSwgdmFsdWVzKTtcXG5cXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gXFxcInN0cmluZ1xcXCIgb3IgdHlwZS1vZihudGgoJHZhbHVlcywgMSkpICE9IFxcXCJsaXN0XFxcIiB7XFxuICAgICR2YWx1ZXM6IHppcCgkdmFsdWVzLCAkdmFsdWVzKTtcXG4gIH1cXG5cXG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkdmFsdWVzIHtcXG4gICAgJHByb3BlcnRpZXM6IG1hcC1nZXQoJHV0aWxpdHksIHByb3BlcnR5KTtcXG5cXG4gICAgLy8gTXVsdGlwbGUgcHJvcGVydGllcyBhcmUgcG9zc2libGUsIGZvciBleGFtcGxlIHdpdGggdmVydGljYWwgb3IgaG9yaXpvbnRhbCBtYXJnaW5zIG9yIHBhZGRpbmdzXFxuICAgIEBpZiB0eXBlLW9mKCRwcm9wZXJ0aWVzKSA9PSBcXFwic3RyaW5nXFxcIiB7XFxuICAgICAgJHByb3BlcnRpZXM6IGFwcGVuZCgoKSwgJHByb3BlcnRpZXMpO1xcbiAgICB9XFxuXFxuICAgIC8vIFVzZSBjdXN0b20gY2xhc3MgaWYgcHJlc2VudFxcbiAgICAkcHJvcGVydHktY2xhc3M6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjbGFzcyksIG1hcC1nZXQoJHV0aWxpdHksIGNsYXNzKSwgbnRoKCRwcm9wZXJ0aWVzLCAxKSk7XFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFxcXCJcXFwiLCAkcHJvcGVydHktY2xhc3MpO1xcblxcbiAgICAvLyBTdGF0ZSBwYXJhbXMgdG8gZ2VuZXJhdGUgcHNldWRvLWNsYXNzZXNcXG4gICAgJHN0YXRlOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgc3RhdGUpLCBtYXAtZ2V0KCR1dGlsaXR5LCBzdGF0ZSksICgpKTtcXG5cXG4gICAgJGluZml4OiBpZigkcHJvcGVydHktY2xhc3MgPT0gXFxcIlxcXCIgYW5kIHN0ci1zbGljZSgkaW5maXgsIDEsIDEpID09IFxcXCItXFxcIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XFxuXFxuICAgIC8vIERvbid0IHByZWZpeCBpZiB2YWx1ZSBrZXkgaXMgbnVsbCAoZWcuIHdpdGggc2hhZG93IGNsYXNzKVxcbiAgICAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXI6IGlmKCRrZXksIGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcXFwiXFxcIiBhbmQgJGluZml4ID09IFxcXCJcXFwiLCBcXFwiXFxcIiwgXFxcIi1cXFwiKSArICRrZXksIFxcXCJcXFwiKTtcXG5cXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xcbiAgICAgIC8vIEluc2lkZSB0aGUgbWVkaWEgcXVlcnlcXG4gICAgICBAaWYgJGlzLXJmcy1tZWRpYS1xdWVyeSB7XFxuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcXG5cXG4gICAgICAgIC8vIERvIG5vdCByZW5kZXIgYW55dGhpbmcgaWYgZmx1aWQgYW5kIG5vbiBmbHVpZCB2YWx1ZXMgYXJlIHRoZSBzYW1lXFxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xcbiAgICAgIH1cXG4gICAgICBAZWxzZSB7XFxuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAkaXMtcnRsOiBtYXAtZ2V0KCR1dGlsaXR5LCBydGwpO1xcblxcbiAgICBAaWYgJHZhbHVlICE9IG51bGwge1xcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcXG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cXG4gICAgICB9XFxuICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XFxuICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xcbiAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XFxuICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XFxuICAgICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XFxuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XFxuICAgICAgICAvKiBydGw6ZW5kOnJlbW92ZSAqL1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xcblxcbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XFxuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xcblxcbiAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XFxuICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcXG4gICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcXG4gICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXFxcIm1hcFxcXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXFxcIlxcXCIpIHtcXG4gICAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksICRpbmZpeCk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIFJGUyByZXNjYWxpbmdcXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIEBpZiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQpIDwgJHJmcy1icmVha3BvaW50KSB7XFxuICAgICAgLy8gTG9vcCBvdmVyIGVhY2ggdXRpbGl0eSBwcm9wZXJ0eVxcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xcbiAgICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxcbiAgICAgICAgLy8gT25seSBwcm9jZWVkIGlmIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBhcmUgZW5hYmxlZCBvciBpZiBpdCdzIHRoZSBiYXNlIG1lZGlhIHF1ZXJ5XFxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXFxcIm1hcFxcXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHJmcykgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXFxcIlxcXCIpIHtcXG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuXFxuLy8gUHJpbnQgdXRpbGl0aWVzXFxuQG1lZGlhIHByaW50IHtcXG4gIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xcbiAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXFxuICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcXFwibWFwXFxcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcHJpbnQpID09IHRydWUge1xcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFxcXCItcHJpbnRcXFwiKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIiwiLy8gSW1wb3J0c1xuaW1wb3J0IF9fX0NTU19MT0FERVJfQVBJX0lNUE9SVF9fXyBmcm9tIFwiLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKHRydWUpO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiXFxuLyogU1RBUlQgVE9HR0xFIE5FVyBQUk9KRUNUIExBWU9VVCAgPT0+IFRPR0dMRSBWSVNJQklMSVRZICovXFxuIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLmJ1dHRvbi1ncm91cCAsXFxuIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLlBhbmUuaG9yaXpvbnRhbC5QYW5lMlxcbiAgIHtcXG4gICAgb3BhY2l0eTogLjI7XFxuICB9XFxuICAudG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5TcGxpdFBhbmUuaG9yaXpvbnRhbCB7XFxuICAgIG1hcmdpbi10b3A6IDE1MHB4ICFpbXBvcnRhbnQ7XFxuICB9XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubG9uZ1VSTElucHV0IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbjogMzBweCAwO1xcbiAgICBtYXgtd2lkdGg6IDU2dnc7XFxuICB9XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubG9uZ1VSTEJ1dHRvbnMge1xcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XFxufVxcbi50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLnNsb2dhbiAge1xcbiAgY29sb3I6IHdoaXRlO1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICByaWdodDogMXZ3O1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiA4dmg7XFxufVxcbi50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLmN1c3RvbVVSTCAsXFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuY3VzdG9tLXNlbGVjdCAge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubmV3UHJvamVjdEJ1dHRvbnMge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxufVxcbi8qIEVORCBUT0dHTEUgTkVXIFBST0pFQ1QgTEFZT1VUICovXFxuXFxuXFxuXFxuXFxuXFxuLnByb2plY3ROYW1lLUlucHV0RmllbGQucHJvdmlkZVByb2pOYW1lLFxcbi5TYXZlQnV0dG9uLWZvci1Qcm9qTmFtZS5wcm92aWRlUHJvak5hbWUge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmNyZWF0ZU5ld1Byb2plY3Qge1xcbiAgICAgbWFyZ2luOiAwIDFlbTtcXG4gIH1cXG5cXG5cXG4uU2F2ZUJ1dHRvbi1mb3ItUHJvak5hbWUge1xcbiAgICB3aWR0aDogNXZ3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib290c3RyYXBCdXR0b24ge1xcbiAgICBmb250LXNpemU6IDQ2cHg7XFxufVxcblxcblxcbmRpdi5jdXN0b20tc2VsZWN0ID4gc3ZnICB7XFxuICAgIG1hcmdpbjogMCAuMmVtO1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcblxcbi5sb25nVVJMSW5wdXQuZm9ybS1jb250cm9sLmZvcm0taW5wdXQge1xcbiAgICBjb2xvcjogZGFya3NsYXRlZ3JleTtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG5cXG4gc3Bhbi5uZXdQcm9qZWN0QnV0dG9ucyA+IHN2ZyB7XFxuICAgIG1hcmdpbjogMCAuMmVtO1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbiBzcGFuLm5ld1Byb2plY3RCdXR0b25zID4gc3ZnOm50aC1jaGlsZCgxKSB7XFxuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcXG59XFxuXFxuXFxuXFxuXFxuXFxuXFxuYm9keSB7XFxuICAgIG1hcmdpbjogMHB4O1xcbiAgICBmb250LWZhbWlseTogR2FyYW1vbmQsc2VyaWY7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG59XFxuLlJlc2l6ZXIge1xcbiAgICB6LWluZGV4OiAxMDAwMDtcXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG59XFxuXFxuLlJlc2l6ZXI6aG92ZXIge1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMnMgZWFzZTtcXG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLmhvcml6b250YWwge1xcbiAgICBoZWlnaHQ6IDExcHg7XFxuICAgIG1hcmdpbjogLTVweCAwO1xcbiAgICBjdXJzb3I6IHJvdy1yZXNpemU7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBib3JkZXI6IDhweCBzb2xpZCAjMzMzNjQyO1xcbn1cXG5cXG4uUmVzaXplci52ZXJ0aWNhbCB7XFxuICAgIG1hcmdpbjogMCAtNXB4O1xcblxcbiAgICBjdXJzb3I6IGNvbC1yZXNpemU7XFxuICAgIGJvcmRlcjogOHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLmRpc2FibGVkIHtcXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcXG59XFxuLlJlc2l6ZXIuZGlzYWJsZWQ6aG92ZXIge1xcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0ICB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuO1xcbn1cXG5cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0LmFjZV9vcGVuIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xcbn1cXG5cXG5cXG5cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0ICB7XFxuICBkaXNwbGF5OiBpbmxpbmU7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXIge1xcbiAgY29sb3I6ICNjMDA7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXI6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZDogIzExMTtcXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjgpO1xcbiAgYm9yZGVyLXJhZGl1czogLjVlbTtcXG4gIGJvdHRvbTogMS4zNWVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb250ZW50OiBhdHRyKHRpdGxlKTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbGVmdDogMWVtO1xcbiAgcGFkZGluZzogLjNlbSAxZW07XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjMDAwO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHotaW5kZXg6IDk4O1xcbn1cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0OmhvdmVyOmJlZm9yZSB7XFxuICBib3JkZXI6IHNvbGlkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMTExIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KSB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci13aWR0aDogLjRlbSAuNGVtIDAgLjRlbTtcXG4gIGJvdHRvbTogMWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGxlZnQ6IDJlbTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6IDk5O1xcbn1cXG5cXG4uY3VzdG9tLXNlbGVjdHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XFxufVxcbi5mb3JtLWlucHV0e1xcbiAgICBoZWlnaHQ6IDM2cHg7XFxuICAgIG1hcmdpbjogMCAxMHB4O1xcbiAgICBmb250LWZhbWlseTogR2FyYW1vbmQsXFxuICAgIHNlcmlmO1xcbn1cIiwgXCJcIix7XCJ2ZXJzaW9uXCI6MyxcInNvdXJjZXNcIjpbXCJ3ZWJwYWNrOi8vc3R5bGVzL2dsb2JhbHMuY3NzXCJdLFwibmFtZXNcIjpbXSxcIm1hcHBpbmdzXCI6XCI7QUFDQSwyREFBMkQ7Q0FDMUQ7OztJQUdHLFdBQVc7RUFDYjtFQUNBO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7SUFDSSxnQ0FBZ0M7SUFDaEMsY0FBYztJQUNkLGVBQWU7RUFDakI7QUFDRjtFQUNFLHVCQUF1QjtBQUN6QjtBQUNBO0VBQ0UsWUFBWTtFQUNaLGdDQUFnQztFQUNoQyxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFFBQVE7QUFDVjtBQUNBOztFQUVFLGFBQWE7QUFDZjtBQUNBO0VBQ0UsZ0NBQWdDO0FBQ2xDO0FBQ0Esa0NBQWtDOzs7Ozs7QUFNbEM7O0VBRUUsOEJBQThCO0VBQzlCOztFQUVBO0tBQ0csYUFBYTtFQUNoQjs7O0FBR0Y7SUFDSSxxQkFBcUI7QUFDekI7O0FBRUE7SUFDSSxlQUFlO0FBQ25COzs7QUFHQTtJQUNJLGNBQWM7SUFDZCxlQUFlO0FBQ25COzs7QUFHQTtJQUNJLG9CQUFvQjtJQUNwQixrQkFBa0I7QUFDdEI7OztDQUdDO0lBQ0csY0FBYztJQUNkLGVBQWU7QUFDbkI7O0NBRUM7SUFDRyxxQkFBcUI7QUFDekI7Ozs7Ozs7QUFPQTtJQUNJLFdBQVc7SUFDWCwyQkFBMkI7SUFDM0IsZUFBZTtBQUNuQjtBQUNBO0lBQ0ksY0FBYztJQUNkLHNCQUFzQjtJQUN0Qiw0QkFBNEI7QUFDaEM7O0FBRUE7SUFDSSx1QkFBdUI7SUFDdkIsMEJBQTBCO0FBQzlCOztBQUVBO0lBQ0ksWUFBWTtJQUNaLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLHlCQUF5QjtBQUM3Qjs7QUFFQTtJQUNJLGNBQWM7O0lBRWQsa0JBQWtCO0lBQ2xCLHlCQUF5QjtBQUM3Qjs7QUFFQTtJQUNJLG1CQUFtQjtBQUN2QjtBQUNBO0lBQ0kseUJBQXlCO0FBQzdCOztBQUVBO0lBQ0ksdUJBQXVCO0FBQzNCOzs7QUFHQTtJQUNJLHFCQUFxQjtBQUN6Qjs7Ozs7QUFLQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLDZCQUE2QjtFQUM3QixtQkFBbUI7RUFDbkIsY0FBYztFQUNkLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsY0FBYztFQUNkLFNBQVM7RUFDVCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsV0FBVztBQUNiOztBQUVBO0VBQ0UsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QiwyQ0FBMkM7RUFDM0MsOEJBQThCO0VBQzlCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsY0FBYztFQUNkLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsV0FBVztBQUNiOztBQUVBO0lBQ0ksYUFBYTtJQUNiLHVCQUF1QjtBQUMzQjtBQUNBO0lBQ0ksWUFBWTtJQUNaLGNBQWM7SUFDZDtTQUNLO0FBQ1RcIixcInNvdXJjZXNDb250ZW50XCI6W1wiXFxuLyogU1RBUlQgVE9HR0xFIE5FVyBQUk9KRUNUIExBWU9VVCAgPT0+IFRPR0dMRSBWSVNJQklMSVRZICovXFxuIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLmJ1dHRvbi1ncm91cCAsXFxuIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLlBhbmUuaG9yaXpvbnRhbC5QYW5lMlxcbiAgIHtcXG4gICAgb3BhY2l0eTogLjI7XFxuICB9XFxuICAudG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5TcGxpdFBhbmUuaG9yaXpvbnRhbCB7XFxuICAgIG1hcmdpbi10b3A6IDE1MHB4ICFpbXBvcnRhbnQ7XFxuICB9XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubG9uZ1VSTElucHV0IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbjogMzBweCAwO1xcbiAgICBtYXgtd2lkdGg6IDU2dnc7XFxuICB9XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubG9uZ1VSTEJ1dHRvbnMge1xcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XFxufVxcbi50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLnNsb2dhbiAge1xcbiAgY29sb3I6IHdoaXRlO1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICByaWdodDogMXZ3O1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiA4dmg7XFxufVxcbi50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLmN1c3RvbVVSTCAsXFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuY3VzdG9tLXNlbGVjdCAge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAubmV3UHJvamVjdEJ1dHRvbnMge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxufVxcbi8qIEVORCBUT0dHTEUgTkVXIFBST0pFQ1QgTEFZT1VUICovXFxuXFxuXFxuXFxuXFxuXFxuLnByb2plY3ROYW1lLUlucHV0RmllbGQucHJvdmlkZVByb2pOYW1lLFxcbi5TYXZlQnV0dG9uLWZvci1Qcm9qTmFtZS5wcm92aWRlUHJvak5hbWUge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmNyZWF0ZU5ld1Byb2plY3Qge1xcbiAgICAgbWFyZ2luOiAwIDFlbTtcXG4gIH1cXG5cXG5cXG4uU2F2ZUJ1dHRvbi1mb3ItUHJvak5hbWUge1xcbiAgICB3aWR0aDogNXZ3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib290c3RyYXBCdXR0b24ge1xcbiAgICBmb250LXNpemU6IDQ2cHg7XFxufVxcblxcblxcbmRpdi5jdXN0b20tc2VsZWN0ID4gc3ZnICB7XFxuICAgIG1hcmdpbjogMCAuMmVtO1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcblxcbi5sb25nVVJMSW5wdXQuZm9ybS1jb250cm9sLmZvcm0taW5wdXQge1xcbiAgICBjb2xvcjogZGFya3NsYXRlZ3JleTtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG5cXG4gc3Bhbi5uZXdQcm9qZWN0QnV0dG9ucyA+IHN2ZyB7XFxuICAgIG1hcmdpbjogMCAuMmVtO1xcbiAgICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbiBzcGFuLm5ld1Byb2plY3RCdXR0b25zID4gc3ZnOm50aC1jaGlsZCgxKSB7XFxuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcXG59XFxuXFxuXFxuXFxuXFxuXFxuXFxuYm9keSB7XFxuICAgIG1hcmdpbjogMHB4O1xcbiAgICBmb250LWZhbWlseTogR2FyYW1vbmQsc2VyaWY7XFxuICAgIGZvbnQtc2l6ZTogMTJweDtcXG59XFxuLlJlc2l6ZXIge1xcbiAgICB6LWluZGV4OiAxMDAwMDtcXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG59XFxuXFxuLlJlc2l6ZXI6aG92ZXIge1xcbiAgICB0cmFuc2l0aW9uOiBhbGwgMnMgZWFzZTtcXG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLmhvcml6b250YWwge1xcbiAgICBoZWlnaHQ6IDExcHg7XFxuICAgIG1hcmdpbjogLTVweCAwO1xcbiAgICBjdXJzb3I6IHJvdy1yZXNpemU7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBib3JkZXI6IDhweCBzb2xpZCAjMzMzNjQyO1xcbn1cXG5cXG4uUmVzaXplci52ZXJ0aWNhbCB7XFxuICAgIG1hcmdpbjogMCAtNXB4O1xcblxcbiAgICBjdXJzb3I6IGNvbC1yZXNpemU7XFxuICAgIGJvcmRlcjogOHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLmRpc2FibGVkIHtcXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcXG59XFxuLlJlc2l6ZXIuZGlzYWJsZWQ6aG92ZXIge1xcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0ICB7XFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuO1xcbn1cXG5cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0LmFjZV9vcGVuIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xcbn1cXG5cXG5cXG5cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0ICB7XFxuICBkaXNwbGF5OiBpbmxpbmU7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXIge1xcbiAgY29sb3I6ICNjMDA7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXI6YWZ0ZXIge1xcbiAgYmFja2dyb3VuZDogIzExMTtcXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjgpO1xcbiAgYm9yZGVyLXJhZGl1czogLjVlbTtcXG4gIGJvdHRvbTogMS4zNWVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBjb250ZW50OiBhdHRyKHRpdGxlKTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbGVmdDogMWVtO1xcbiAgcGFkZGluZzogLjNlbSAxZW07XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjMDAwO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIHotaW5kZXg6IDk4O1xcbn1cXG5cXG4uYWNlX2ZvbGQtd2lkZ2V0OmhvdmVyOmJlZm9yZSB7XFxuICBib3JkZXI6IHNvbGlkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMTExIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KSB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci13aWR0aDogLjRlbSAuNGVtIDAgLjRlbTtcXG4gIGJvdHRvbTogMWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGxlZnQ6IDJlbTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6IDk5O1xcbn1cXG5cXG4uY3VzdG9tLXNlbGVjdHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XFxufVxcbi5mb3JtLWlucHV0e1xcbiAgICBoZWlnaHQ6IDM2cHg7XFxuICAgIG1hcmdpbjogMCAxMHB4O1xcbiAgICBmb250LWZhbWlseTogR2FyYW1vbmQsXFxuICAgIHNlcmlmO1xcbn1cIl0sXCJzb3VyY2VSb290XCI6XCJcIn1dKTtcbi8vIEV4cG9ydHNcbmV4cG9ydCBkZWZhdWx0IF9fX0NTU19MT0FERVJfRVhQT1JUX19fO1xuIiwibW9kdWxlLmV4cG9ydHMgPVxuLyoqKioqKi8gKGZ1bmN0aW9uKCkgeyAvLyB3ZWJwYWNrQm9vdHN0cmFwXG4vKioqKioqLyBcdHZhciBfX3dlYnBhY2tfbW9kdWxlc19fID0gKHtcblxuLyoqKi8gOTMxOlxuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSkge1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uKG9yaWdpbmFsTW9kdWxlKSB7XG5cdGlmICghb3JpZ2luYWxNb2R1bGUud2VicGFja1BvbHlmaWxsKSB7XG5cdFx0dmFyIG1vZHVsZSA9IE9iamVjdC5jcmVhdGUob3JpZ2luYWxNb2R1bGUpO1xuXHRcdC8vIG1vZHVsZS5wYXJlbnQgPSB1bmRlZmluZWQgYnkgZGVmYXVsdFxuXHRcdGlmICghbW9kdWxlLmNoaWxkcmVuKSBtb2R1bGUuY2hpbGRyZW4gPSBbXTtcblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobW9kdWxlLCBcImxvYWRlZFwiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0cmV0dXJuIG1vZHVsZS5sO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwiaWRcIiwge1xuXHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7XG5cdFx0XHRcdHJldHVybiBtb2R1bGUuaTtcblx0XHRcdH1cblx0XHR9KTtcblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobW9kdWxlLCBcImV4cG9ydHNcIiwge1xuXHRcdFx0ZW51bWVyYWJsZTogdHJ1ZVxuXHRcdH0pO1xuXHRcdG1vZHVsZS53ZWJwYWNrUG9seWZpbGwgPSAxO1xuXHR9XG5cdHJldHVybiBtb2R1bGU7XG59O1xuXG5cbi8qKiovIH0pXG5cbi8qKioqKiovIFx0fSk7XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdHZhciBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18gPSB7fTtcbi8qKioqKiovIFx0XG4vKioqKioqLyBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4vKioqKioqLyBcdGZ1bmN0aW9uIF9fbmNjd3Bja19yZXF1aXJlX18obW9kdWxlSWQpIHtcbi8qKioqKiovIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbi8qKioqKiovIFx0XHRpZihfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdKSB7XG4vKioqKioqLyBcdFx0XHRyZXR1cm4gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXS5leHBvcnRzO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuLyoqKioqKi8gXHRcdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuLyoqKioqKi8gXHRcdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuLyoqKioqKi8gXHRcdFx0Ly8gbm8gbW9kdWxlLmxvYWRlZCBuZWVkZWRcbi8qKioqKiovIFx0XHRcdGV4cG9ydHM6IHt9XG4vKioqKioqLyBcdFx0fTtcbi8qKioqKiovIFx0XG4vKioqKioqLyBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4vKioqKioqLyBcdFx0dmFyIHRocmV3ID0gdHJ1ZTtcbi8qKioqKiovIFx0XHR0cnkge1xuLyoqKioqKi8gXHRcdFx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0obW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX19uY2N3cGNrX3JlcXVpcmVfXyk7XG4vKioqKioqLyBcdFx0XHR0aHJldyA9IGZhbHNlO1xuLyoqKioqKi8gXHRcdH0gZmluYWxseSB7XG4vKioqKioqLyBcdFx0XHRpZih0aHJldykgZGVsZXRlIF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF07XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuLyoqKioqKi8gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbi8qKioqKiovIFx0fVxuLyoqKioqKi8gXHRcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8qIHdlYnBhY2svcnVudGltZS9jb21wYXQgKi9cbi8qKioqKiovIFx0XG4vKioqKioqLyBcdF9fbmNjd3Bja19yZXF1aXJlX18uYWIgPSBfX2Rpcm5hbWUgKyBcIi9cIjsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gXHQvLyBtb2R1bGUgZXhwb3J0cyBtdXN0IGJlIHJldHVybmVkIGZyb20gcnVudGltZSBzbyBlbnRyeSBpbmxpbmluZyBpcyBkaXNhYmxlZFxuLyoqKioqKi8gXHQvLyBzdGFydHVwXG4vKioqKioqLyBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuLyoqKioqKi8gXHRyZXR1cm4gX19uY2N3cGNrX3JlcXVpcmVfXyg5MzEpO1xuLyoqKioqKi8gfSkoKVxuOyIsIm1vZHVsZS5leHBvcnRzID1cbi8qKioqKiovIChmdW5jdGlvbigpIHsgLy8gd2VicGFja0Jvb3RzdHJhcFxuLyoqKioqKi8gXHR2YXIgX193ZWJwYWNrX21vZHVsZXNfXyA9ICh7XG5cbi8qKiovIDg4MDpcbi8qKiovIChmdW5jdGlvbihtb2R1bGUpIHtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbihtb2R1bGUpIHtcblx0aWYgKCFtb2R1bGUud2VicGFja1BvbHlmaWxsKSB7XG5cdFx0bW9kdWxlLmRlcHJlY2F0ZSA9IGZ1bmN0aW9uKCkge307XG5cdFx0bW9kdWxlLnBhdGhzID0gW107XG5cdFx0Ly8gbW9kdWxlLnBhcmVudCA9IHVuZGVmaW5lZCBieSBkZWZhdWx0XG5cdFx0aWYgKCFtb2R1bGUuY2hpbGRyZW4pIG1vZHVsZS5jaGlsZHJlbiA9IFtdO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwibG9hZGVkXCIsIHtcblx0XHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRyZXR1cm4gbW9kdWxlLmw7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG1vZHVsZSwgXCJpZFwiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0cmV0dXJuIG1vZHVsZS5pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdG1vZHVsZS53ZWJwYWNrUG9seWZpbGwgPSAxO1xuXHR9XG5cdHJldHVybiBtb2R1bGU7XG59O1xuXG5cbi8qKiovIH0pXG5cbi8qKioqKiovIFx0fSk7XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4vKioqKioqLyBcdHZhciBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18gPSB7fTtcbi8qKioqKiovIFx0XG4vKioqKioqLyBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4vKioqKioqLyBcdGZ1bmN0aW9uIF9fbmNjd3Bja19yZXF1aXJlX18obW9kdWxlSWQpIHtcbi8qKioqKiovIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbi8qKioqKiovIFx0XHRpZihfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdKSB7XG4vKioqKioqLyBcdFx0XHRyZXR1cm4gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXS5leHBvcnRzO1xuLyoqKioqKi8gXHRcdH1cbi8qKioqKiovIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuLyoqKioqKi8gXHRcdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuLyoqKioqKi8gXHRcdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuLyoqKioqKi8gXHRcdFx0Ly8gbm8gbW9kdWxlLmxvYWRlZCBuZWVkZWRcbi8qKioqKiovIFx0XHRcdGV4cG9ydHM6IHt9XG4vKioqKioqLyBcdFx0fTtcbi8qKioqKiovIFx0XG4vKioqKioqLyBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4vKioqKioqLyBcdFx0dmFyIHRocmV3ID0gdHJ1ZTtcbi8qKioqKiovIFx0XHR0cnkge1xuLyoqKioqKi8gXHRcdFx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0obW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX19uY2N3cGNrX3JlcXVpcmVfXyk7XG4vKioqKioqLyBcdFx0XHR0aHJldyA9IGZhbHNlO1xuLyoqKioqKi8gXHRcdH0gZmluYWxseSB7XG4vKioqKioqLyBcdFx0XHRpZih0aHJldykgZGVsZXRlIF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF07XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuLyoqKioqKi8gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbi8qKioqKiovIFx0fVxuLyoqKioqKi8gXHRcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8qIHdlYnBhY2svcnVudGltZS9jb21wYXQgKi9cbi8qKioqKiovIFx0XG4vKioqKioqLyBcdF9fbmNjd3Bja19yZXF1aXJlX18uYWIgPSBfX2Rpcm5hbWUgKyBcIi9cIjsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKi8gXHQvLyBtb2R1bGUgZXhwb3J0cyBtdXN0IGJlIHJldHVybmVkIGZyb20gcnVudGltZSBzbyBlbnRyeSBpbmxpbmluZyBpcyBkaXNhYmxlZFxuLyoqKioqKi8gXHQvLyBzdGFydHVwXG4vKioqKioqLyBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuLyoqKioqKi8gXHRyZXR1cm4gX19uY2N3cGNrX3JlcXVpcmVfXyg4ODApO1xuLyoqKioqKi8gfSkoKVxuOyIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcblxuZXhwb3J0IGNvbnN0IEFtcFN0YXRlQ29udGV4dDogUmVhY3QuQ29udGV4dDxhbnk+ID0gUmVhY3QuY3JlYXRlQ29udGV4dCh7fSlcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgQW1wU3RhdGVDb250ZXh0LmRpc3BsYXlOYW1lID0gJ0FtcFN0YXRlQ29udGV4dCdcbn1cbiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEFtcFN0YXRlQ29udGV4dCB9IGZyb20gJy4vYW1wLWNvbnRleHQnXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0luQW1wTW9kZSh7XG4gIGFtcEZpcnN0ID0gZmFsc2UsXG4gIGh5YnJpZCA9IGZhbHNlLFxuICBoYXNRdWVyeSA9IGZhbHNlLFxufSA9IHt9KTogYm9vbGVhbiB7XG4gIHJldHVybiBhbXBGaXJzdCB8fCAoaHlicmlkICYmIGhhc1F1ZXJ5KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlQW1wKCk6IGJvb2xlYW4ge1xuICAvLyBEb24ndCBhc3NpZ24gdGhlIGNvbnRleHQgdmFsdWUgdG8gYSB2YXJpYWJsZSB0byBzYXZlIGJ5dGVzXG4gIHJldHVybiBpc0luQW1wTW9kZShSZWFjdC51c2VDb250ZXh0KEFtcFN0YXRlQ29udGV4dCkpXG59XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5cbmV4cG9ydCBjb25zdCBIZWFkTWFuYWdlckNvbnRleHQ6IFJlYWN0LkNvbnRleHQ8e1xuICB1cGRhdGVIZWFkPzogKHN0YXRlOiBhbnkpID0+IHZvaWRcbiAgbW91bnRlZEluc3RhbmNlcz86IGFueVxuICB1cGRhdGVTY3JpcHRzPzogKHN0YXRlOiBhbnkpID0+IHZvaWRcbiAgc2NyaXB0cz86IGFueVxufT4gPSBSZWFjdC5jcmVhdGVDb250ZXh0KHt9KVxuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICBIZWFkTWFuYWdlckNvbnRleHQuZGlzcGxheU5hbWUgPSAnSGVhZE1hbmFnZXJDb250ZXh0J1xufVxuIiwiaW1wb3J0IFJlYWN0LCB7IHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCdcbmltcG9ydCBFZmZlY3QgZnJvbSAnLi9zaWRlLWVmZmVjdCdcbmltcG9ydCB7IEFtcFN0YXRlQ29udGV4dCB9IGZyb20gJy4vYW1wLWNvbnRleHQnXG5pbXBvcnQgeyBIZWFkTWFuYWdlckNvbnRleHQgfSBmcm9tICcuL2hlYWQtbWFuYWdlci1jb250ZXh0J1xuaW1wb3J0IHsgaXNJbkFtcE1vZGUgfSBmcm9tICcuL2FtcCdcblxudHlwZSBXaXRoSW5BbXBNb2RlID0ge1xuICBpbkFtcE1vZGU/OiBib29sZWFuXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0SGVhZChpbkFtcE1vZGUgPSBmYWxzZSk6IEpTWC5FbGVtZW50W10ge1xuICBjb25zdCBoZWFkID0gWzxtZXRhIGNoYXJTZXQ9XCJ1dGYtOFwiIC8+XVxuICBpZiAoIWluQW1wTW9kZSkge1xuICAgIGhlYWQucHVzaCg8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoXCIgLz4pXG4gIH1cbiAgcmV0dXJuIGhlYWRcbn1cblxuZnVuY3Rpb24gb25seVJlYWN0RWxlbWVudChcbiAgbGlzdDogQXJyYXk8UmVhY3QuUmVhY3RFbGVtZW50PGFueT4+LFxuICBjaGlsZDogUmVhY3QuUmVhY3RDaGlsZFxuKTogQXJyYXk8UmVhY3QuUmVhY3RFbGVtZW50PGFueT4+IHtcbiAgLy8gUmVhY3QgY2hpbGRyZW4gY2FuIGJlIFwic3RyaW5nXCIgb3IgXCJudW1iZXJcIiBpbiB0aGlzIGNhc2Ugd2UgaWdub3JlIHRoZW0gZm9yIGJhY2t3YXJkcyBjb21wYXRcbiAgaWYgKHR5cGVvZiBjaGlsZCA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIGNoaWxkID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiBsaXN0XG4gIH1cbiAgLy8gQWRkcyBzdXBwb3J0IGZvciBSZWFjdC5GcmFnbWVudFxuICBpZiAoY2hpbGQudHlwZSA9PT0gUmVhY3QuRnJhZ21lbnQpIHtcbiAgICByZXR1cm4gbGlzdC5jb25jYXQoXG4gICAgICBSZWFjdC5DaGlsZHJlbi50b0FycmF5KGNoaWxkLnByb3BzLmNoaWxkcmVuKS5yZWR1Y2UoXG4gICAgICAgIChcbiAgICAgICAgICBmcmFnbWVudExpc3Q6IEFycmF5PFJlYWN0LlJlYWN0RWxlbWVudDxhbnk+PixcbiAgICAgICAgICBmcmFnbWVudENoaWxkOiBSZWFjdC5SZWFjdENoaWxkXG4gICAgICAgICk6IEFycmF5PFJlYWN0LlJlYWN0RWxlbWVudDxhbnk+PiA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdHlwZW9mIGZyYWdtZW50Q2hpbGQgPT09ICdzdHJpbmcnIHx8XG4gICAgICAgICAgICB0eXBlb2YgZnJhZ21lbnRDaGlsZCA9PT0gJ251bWJlcidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBmcmFnbWVudExpc3RcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIGZyYWdtZW50TGlzdC5jb25jYXQoZnJhZ21lbnRDaGlsZClcbiAgICAgICAgfSxcbiAgICAgICAgW11cbiAgICAgIClcbiAgICApXG4gIH1cbiAgcmV0dXJuIGxpc3QuY29uY2F0KGNoaWxkKVxufVxuXG5jb25zdCBNRVRBVFlQRVMgPSBbJ25hbWUnLCAnaHR0cEVxdWl2JywgJ2NoYXJTZXQnLCAnaXRlbVByb3AnXVxuXG4vKlxuIHJldHVybnMgYSBmdW5jdGlvbiBmb3IgZmlsdGVyaW5nIGhlYWQgY2hpbGQgZWxlbWVudHNcbiB3aGljaCBzaG91bGRuJ3QgYmUgZHVwbGljYXRlZCwgbGlrZSA8dGl0bGUvPlxuIEFsc28gYWRkcyBzdXBwb3J0IGZvciBkZWR1cGxpY2F0ZWQgYGtleWAgcHJvcGVydGllc1xuKi9cbmZ1bmN0aW9uIHVuaXF1ZSgpIHtcbiAgY29uc3Qga2V5cyA9IG5ldyBTZXQoKVxuICBjb25zdCB0YWdzID0gbmV3IFNldCgpXG4gIGNvbnN0IG1ldGFUeXBlcyA9IG5ldyBTZXQoKVxuICBjb25zdCBtZXRhQ2F0ZWdvcmllczogeyBbbWV0YXR5cGU6IHN0cmluZ106IFNldDxzdHJpbmc+IH0gPSB7fVxuXG4gIHJldHVybiAoaDogUmVhY3QuUmVhY3RFbGVtZW50PGFueT4pID0+IHtcbiAgICBsZXQgaXNVbmlxdWUgPSB0cnVlXG4gICAgbGV0IGhhc0tleSA9IGZhbHNlXG5cbiAgICBpZiAoaC5rZXkgJiYgdHlwZW9mIGgua2V5ICE9PSAnbnVtYmVyJyAmJiBoLmtleS5pbmRleE9mKCckJykgPiAwKSB7XG4gICAgICBoYXNLZXkgPSB0cnVlXG4gICAgICBjb25zdCBrZXkgPSBoLmtleS5zbGljZShoLmtleS5pbmRleE9mKCckJykgKyAxKVxuICAgICAgaWYgKGtleXMuaGFzKGtleSkpIHtcbiAgICAgICAgaXNVbmlxdWUgPSBmYWxzZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAga2V5cy5hZGQoa2V5KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWZhdWx0LWNhc2VcbiAgICBzd2l0Y2ggKGgudHlwZSkge1xuICAgICAgY2FzZSAndGl0bGUnOlxuICAgICAgY2FzZSAnYmFzZSc6XG4gICAgICAgIGlmICh0YWdzLmhhcyhoLnR5cGUpKSB7XG4gICAgICAgICAgaXNVbmlxdWUgPSBmYWxzZVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRhZ3MuYWRkKGgudHlwZSlcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbWV0YSc6XG4gICAgICAgIGZvciAobGV0IGkgPSAwLCBsZW4gPSBNRVRBVFlQRVMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgICAgICBjb25zdCBtZXRhdHlwZSA9IE1FVEFUWVBFU1tpXVxuICAgICAgICAgIGlmICghaC5wcm9wcy5oYXNPd25Qcm9wZXJ0eShtZXRhdHlwZSkpIGNvbnRpbnVlXG5cbiAgICAgICAgICBpZiAobWV0YXR5cGUgPT09ICdjaGFyU2V0Jykge1xuICAgICAgICAgICAgaWYgKG1ldGFUeXBlcy5oYXMobWV0YXR5cGUpKSB7XG4gICAgICAgICAgICAgIGlzVW5pcXVlID0gZmFsc2VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG1ldGFUeXBlcy5hZGQobWV0YXR5cGUpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGNhdGVnb3J5ID0gaC5wcm9wc1ttZXRhdHlwZV1cbiAgICAgICAgICAgIGNvbnN0IGNhdGVnb3JpZXMgPSBtZXRhQ2F0ZWdvcmllc1ttZXRhdHlwZV0gfHwgbmV3IFNldCgpXG4gICAgICAgICAgICBpZiAoKG1ldGF0eXBlICE9PSAnbmFtZScgfHwgIWhhc0tleSkgJiYgY2F0ZWdvcmllcy5oYXMoY2F0ZWdvcnkpKSB7XG4gICAgICAgICAgICAgIGlzVW5pcXVlID0gZmFsc2VcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNhdGVnb3JpZXMuYWRkKGNhdGVnb3J5KVxuICAgICAgICAgICAgICBtZXRhQ2F0ZWdvcmllc1ttZXRhdHlwZV0gPSBjYXRlZ29yaWVzXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgcmV0dXJuIGlzVW5pcXVlXG4gIH1cbn1cblxuLyoqXG4gKlxuICogQHBhcmFtIGhlYWRFbGVtZW50cyBMaXN0IG9mIG11bHRpcGxlIDxIZWFkPiBpbnN0YW5jZXNcbiAqL1xuZnVuY3Rpb24gcmVkdWNlQ29tcG9uZW50cyhcbiAgaGVhZEVsZW1lbnRzOiBBcnJheTxSZWFjdC5SZWFjdEVsZW1lbnQ8YW55Pj4sXG4gIHByb3BzOiBXaXRoSW5BbXBNb2RlXG4pIHtcbiAgcmV0dXJuIGhlYWRFbGVtZW50c1xuICAgIC5yZWR1Y2UoXG4gICAgICAobGlzdDogUmVhY3QuUmVhY3RDaGlsZFtdLCBoZWFkRWxlbWVudDogUmVhY3QuUmVhY3RFbGVtZW50PGFueT4pID0+IHtcbiAgICAgICAgY29uc3QgaGVhZEVsZW1lbnRDaGlsZHJlbiA9IFJlYWN0LkNoaWxkcmVuLnRvQXJyYXkoXG4gICAgICAgICAgaGVhZEVsZW1lbnQucHJvcHMuY2hpbGRyZW5cbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gbGlzdC5jb25jYXQoaGVhZEVsZW1lbnRDaGlsZHJlbilcbiAgICAgIH0sXG4gICAgICBbXVxuICAgIClcbiAgICAucmVkdWNlKG9ubHlSZWFjdEVsZW1lbnQsIFtdKVxuICAgIC5yZXZlcnNlKClcbiAgICAuY29uY2F0KGRlZmF1bHRIZWFkKHByb3BzLmluQW1wTW9kZSkpXG4gICAgLmZpbHRlcih1bmlxdWUoKSlcbiAgICAucmV2ZXJzZSgpXG4gICAgLm1hcCgoYzogUmVhY3QuUmVhY3RFbGVtZW50PGFueT4sIGk6IG51bWJlcikgPT4ge1xuICAgICAgY29uc3Qga2V5ID0gYy5rZXkgfHwgaVxuICAgICAgaWYgKFxuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ2RldmVsb3BtZW50JyAmJlxuICAgICAgICBwcm9jZXNzLmVudi5fX05FWFRfT1BUSU1JWkVfRk9OVFMgJiZcbiAgICAgICAgIXByb3BzLmluQW1wTW9kZVxuICAgICAgKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBjLnR5cGUgPT09ICdsaW5rJyAmJlxuICAgICAgICAgIGMucHJvcHNbJ2hyZWYnXSAmJlxuICAgICAgICAgIC8vIFRPRE8ocHJhdGVla2JoQCk6IFJlcGxhY2UgdGhpcyB3aXRoIGNvbnN0IGZyb20gYGNvbnN0YW50c2Agd2hlbiB0aGUgdHJlZSBzaGFraW5nIHdvcmtzLlxuICAgICAgICAgIFsnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MnXS5zb21lKCh1cmwpID0+XG4gICAgICAgICAgICBjLnByb3BzWydocmVmJ10uc3RhcnRzV2l0aCh1cmwpXG4gICAgICAgICAgKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBuZXdQcm9wcyA9IHsgLi4uKGMucHJvcHMgfHwge30pIH1cbiAgICAgICAgICBuZXdQcm9wc1snZGF0YS1ocmVmJ10gPSBuZXdQcm9wc1snaHJlZiddXG4gICAgICAgICAgbmV3UHJvcHNbJ2hyZWYnXSA9IHVuZGVmaW5lZFxuICAgICAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoYywgbmV3UHJvcHMpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWFjdC5jbG9uZUVsZW1lbnQoYywgeyBrZXkgfSlcbiAgICB9KVxufVxuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGluamVjdHMgZWxlbWVudHMgdG8gYDxoZWFkPmAgb2YgeW91ciBwYWdlLlxuICogVG8gYXZvaWQgZHVwbGljYXRlZCBgdGFnc2AgaW4gYDxoZWFkPmAgeW91IGNhbiB1c2UgdGhlIGBrZXlgIHByb3BlcnR5LCB3aGljaCB3aWxsIG1ha2Ugc3VyZSBldmVyeSB0YWcgaXMgb25seSByZW5kZXJlZCBvbmNlLlxuICovXG5mdW5jdGlvbiBIZWFkKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pIHtcbiAgY29uc3QgYW1wU3RhdGUgPSB1c2VDb250ZXh0KEFtcFN0YXRlQ29udGV4dClcbiAgY29uc3QgaGVhZE1hbmFnZXIgPSB1c2VDb250ZXh0KEhlYWRNYW5hZ2VyQ29udGV4dClcbiAgcmV0dXJuIChcbiAgICA8RWZmZWN0XG4gICAgICByZWR1Y2VDb21wb25lbnRzVG9TdGF0ZT17cmVkdWNlQ29tcG9uZW50c31cbiAgICAgIGhlYWRNYW5hZ2VyPXtoZWFkTWFuYWdlcn1cbiAgICAgIGluQW1wTW9kZT17aXNJbkFtcE1vZGUoYW1wU3RhdGUpfVxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0VmZmVjdD5cbiAgKVxufVxuXG4vLyBUT0RPOiBSZW1vdmUgaW4gdGhlIG5leHQgbWFqb3IgcmVsZWFzZVxuSGVhZC5yZXdpbmQgPSAoKSA9PiB7fVxuXG5leHBvcnQgZGVmYXVsdCBIZWFkXG4iLCJleHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplTG9jYWxlUGF0aChcbiAgcGF0aG5hbWU6IHN0cmluZyxcbiAgbG9jYWxlcz86IHN0cmluZ1tdXG4pOiB7XG4gIGRldGVjdGVkTG9jYWxlPzogc3RyaW5nXG4gIHBhdGhuYW1lOiBzdHJpbmdcbn0ge1xuICBsZXQgZGV0ZWN0ZWRMb2NhbGU6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAvLyBmaXJzdCBpdGVtIHdpbGwgYmUgZW1wdHkgc3RyaW5nIGZyb20gc3BsaXR0aW5nIGF0IGZpcnN0IGNoYXJcbiAgY29uc3QgcGF0aG5hbWVQYXJ0cyA9IHBhdGhuYW1lLnNwbGl0KCcvJylcblxuICA7KGxvY2FsZXMgfHwgW10pLnNvbWUoKGxvY2FsZSkgPT4ge1xuICAgIGlmIChwYXRobmFtZVBhcnRzWzFdLnRvTG93ZXJDYXNlKCkgPT09IGxvY2FsZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBkZXRlY3RlZExvY2FsZSA9IGxvY2FsZVxuICAgICAgcGF0aG5hbWVQYXJ0cy5zcGxpY2UoMSwgMSlcbiAgICAgIHBhdGhuYW1lID0gcGF0aG5hbWVQYXJ0cy5qb2luKCcvJykgfHwgJy8nXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2VcbiAgfSlcblxuICByZXR1cm4ge1xuICAgIHBhdGhuYW1lLFxuICAgIGRldGVjdGVkTG9jYWxlLFxuICB9XG59XG4iLCIvKlxuTUlUIExpY2Vuc2VcblxuQ29weXJpZ2h0IChjKSBKYXNvbiBNaWxsZXIgKGh0dHBzOi8vamFzb25mb3JtYXQuY29tLylcblxuUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcblxuVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG5cblRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IgSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLlxuKi9cblxuLy8gVGhpcyBmaWxlIGlzIGJhc2VkIG9uIGh0dHBzOi8vZ2l0aHViLmNvbS9kZXZlbG9waXQvbWl0dC9ibG9iL3YxLjEuMy9zcmMvaW5kZXguanNcbi8vIEl0J3MgYmVlbiBlZGl0ZWQgZm9yIHRoZSBuZWVkcyBvZiB0aGlzIHNjcmlwdFxuLy8gU2VlIHRoZSBMSUNFTlNFIGF0IHRoZSB0b3Agb2YgdGhlIGZpbGVcblxudHlwZSBIYW5kbGVyID0gKC4uLmV2dHM6IGFueVtdKSA9PiB2b2lkXG5cbmV4cG9ydCB0eXBlIE1pdHRFbWl0dGVyID0ge1xuICBvbih0eXBlOiBzdHJpbmcsIGhhbmRsZXI6IEhhbmRsZXIpOiB2b2lkXG4gIG9mZih0eXBlOiBzdHJpbmcsIGhhbmRsZXI6IEhhbmRsZXIpOiB2b2lkXG4gIGVtaXQodHlwZTogc3RyaW5nLCAuLi5ldnRzOiBhbnlbXSk6IHZvaWRcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWl0dCgpOiBNaXR0RW1pdHRlciB7XG4gIGNvbnN0IGFsbDogeyBbczogc3RyaW5nXTogSGFuZGxlcltdIH0gPSBPYmplY3QuY3JlYXRlKG51bGwpXG5cbiAgcmV0dXJuIHtcbiAgICBvbih0eXBlOiBzdHJpbmcsIGhhbmRsZXI6IEhhbmRsZXIpIHtcbiAgICAgIDsoYWxsW3R5cGVdIHx8IChhbGxbdHlwZV0gPSBbXSkpLnB1c2goaGFuZGxlcilcbiAgICB9LFxuXG4gICAgb2ZmKHR5cGU6IHN0cmluZywgaGFuZGxlcjogSGFuZGxlcikge1xuICAgICAgaWYgKGFsbFt0eXBlXSkge1xuICAgICAgICBhbGxbdHlwZV0uc3BsaWNlKGFsbFt0eXBlXS5pbmRleE9mKGhhbmRsZXIpID4+PiAwLCAxKVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBlbWl0KHR5cGU6IHN0cmluZywgLi4uZXZ0czogYW55W10pIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBhcnJheS1jYWxsYmFjay1yZXR1cm5cbiAgICAgIDsoYWxsW3R5cGVdIHx8IFtdKS5zbGljZSgpLm1hcCgoaGFuZGxlcjogSGFuZGxlcikgPT4ge1xuICAgICAgICBoYW5kbGVyKC4uLmV2dHMpXG4gICAgICB9KVxuICAgIH0sXG4gIH1cbn1cbiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IE5leHRSb3V0ZXIgfSBmcm9tICcuL3JvdXRlci9yb3V0ZXInXG5cbmV4cG9ydCBjb25zdCBSb3V0ZXJDb250ZXh0ID0gUmVhY3QuY3JlYXRlQ29udGV4dDxOZXh0Um91dGVyPihudWxsIGFzIGFueSlcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgUm91dGVyQ29udGV4dC5kaXNwbGF5TmFtZSA9ICdSb3V0ZXJDb250ZXh0J1xufVxuIiwiLyogZ2xvYmFsIF9fTkVYVF9EQVRBX18gKi9cbi8vIHRzbGludDpkaXNhYmxlOm5vLWNvbnNvbGVcbmltcG9ydCB7IFBhcnNlZFVybFF1ZXJ5IH0gZnJvbSAncXVlcnlzdHJpbmcnXG5pbXBvcnQgeyBDb21wb25lbnRUeXBlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBVcmxPYmplY3QgfSBmcm9tICd1cmwnXG5pbXBvcnQge1xuICBub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaCxcbiAgcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gsXG59IGZyb20gJy4uLy4uLy4uL2NsaWVudC9ub3JtYWxpemUtdHJhaWxpbmctc2xhc2gnXG5pbXBvcnQgeyBHb29kUGFnZUNhY2hlLCBTdHlsZVNoZWV0VHVwbGUgfSBmcm9tICcuLi8uLi8uLi9jbGllbnQvcGFnZS1sb2FkZXInXG5pbXBvcnQge1xuICBnZXRDbGllbnRCdWlsZE1hbmlmZXN0LFxuICBpc0Fzc2V0RXJyb3IsXG4gIG1hcmtBc3NldEVycm9yLFxufSBmcm9tICcuLi8uLi8uLi9jbGllbnQvcm91dGUtbG9hZGVyJ1xuaW1wb3J0IHsgRG9tYWluTG9jYWxlcyB9IGZyb20gJy4uLy4uL3NlcnZlci9jb25maWcnXG5pbXBvcnQgeyBkZW5vcm1hbGl6ZVBhZ2VQYXRoIH0gZnJvbSAnLi4vLi4vc2VydmVyL2Rlbm9ybWFsaXplLXBhZ2UtcGF0aCdcbmltcG9ydCB7IG5vcm1hbGl6ZUxvY2FsZVBhdGggfSBmcm9tICcuLi9pMThuL25vcm1hbGl6ZS1sb2NhbGUtcGF0aCdcbmltcG9ydCBtaXR0LCB7IE1pdHRFbWl0dGVyIH0gZnJvbSAnLi4vbWl0dCdcbmltcG9ydCB7XG4gIEFwcENvbnRleHRUeXBlLFxuICBmb3JtYXRXaXRoVmFsaWRhdGlvbixcbiAgZ2V0TG9jYXRpb25PcmlnaW4sXG4gIGdldFVSTCxcbiAgbG9hZEdldEluaXRpYWxQcm9wcyxcbiAgTmV4dFBhZ2VDb250ZXh0LFxuICBTVCxcbiAgTkVYVF9EQVRBLFxufSBmcm9tICcuLi91dGlscydcbmltcG9ydCB7IGlzRHluYW1pY1JvdXRlIH0gZnJvbSAnLi91dGlscy9pcy1keW5hbWljJ1xuaW1wb3J0IHsgcGFyc2VSZWxhdGl2ZVVybCB9IGZyb20gJy4vdXRpbHMvcGFyc2UtcmVsYXRpdmUtdXJsJ1xuaW1wb3J0IHsgc2VhcmNoUGFyYW1zVG9VcmxRdWVyeSB9IGZyb20gJy4vdXRpbHMvcXVlcnlzdHJpbmcnXG5pbXBvcnQgcmVzb2x2ZVJld3JpdGVzIGZyb20gJy4vdXRpbHMvcmVzb2x2ZS1yZXdyaXRlcydcbmltcG9ydCB7IGdldFJvdXRlTWF0Y2hlciB9IGZyb20gJy4vdXRpbHMvcm91dGUtbWF0Y2hlcidcbmltcG9ydCB7IGdldFJvdXRlUmVnZXggfSBmcm9tICcuL3V0aWxzL3JvdXRlLXJlZ2V4J1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIC8qIHByb2QgKi9cbiAgICBfX05FWFRfREFUQV9fOiBORVhUX0RBVEFcbiAgfVxufVxuXG5pbnRlcmZhY2UgUm91dGVQcm9wZXJ0aWVzIHtcbiAgc2hhbGxvdzogYm9vbGVhblxufVxuXG5pbnRlcmZhY2UgVHJhbnNpdGlvbk9wdGlvbnMge1xuICBzaGFsbG93PzogYm9vbGVhblxuICBsb2NhbGU/OiBzdHJpbmcgfCBmYWxzZVxuICBzY3JvbGw/OiBib29sZWFuXG59XG5cbmludGVyZmFjZSBOZXh0SGlzdG9yeVN0YXRlIHtcbiAgdXJsOiBzdHJpbmdcbiAgYXM6IHN0cmluZ1xuICBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9uc1xufVxuXG50eXBlIEhpc3RvcnlTdGF0ZSA9XG4gIHwgbnVsbFxuICB8IHsgX19OOiBmYWxzZSB9XG4gIHwgKHsgX19OOiB0cnVlOyBpZHg6IG51bWJlciB9ICYgTmV4dEhpc3RvcnlTdGF0ZSlcblxubGV0IGRldGVjdERvbWFpbkxvY2FsZTogdHlwZW9mIGltcG9ydCgnLi4vaTE4bi9kZXRlY3QtZG9tYWluLWxvY2FsZScpLmRldGVjdERvbWFpbkxvY2FsZVxuXG5pZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICBkZXRlY3REb21haW5Mb2NhbGUgPSByZXF1aXJlKCcuLi9pMThuL2RldGVjdC1kb21haW4tbG9jYWxlJylcbiAgICAuZGV0ZWN0RG9tYWluTG9jYWxlXG59XG5cbmNvbnN0IGJhc2VQYXRoID0gKHByb2Nlc3MuZW52Ll9fTkVYVF9ST1VURVJfQkFTRVBBVEggYXMgc3RyaW5nKSB8fCAnJ1xuXG5mdW5jdGlvbiBidWlsZENhbmNlbGxhdGlvbkVycm9yKCkge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbihuZXcgRXJyb3IoJ1JvdXRlIENhbmNlbGxlZCcpLCB7XG4gICAgY2FuY2VsbGVkOiB0cnVlLFxuICB9KVxufVxuXG5mdW5jdGlvbiBhZGRQYXRoUHJlZml4KHBhdGg6IHN0cmluZywgcHJlZml4Pzogc3RyaW5nKSB7XG4gIHJldHVybiBwcmVmaXggJiYgcGF0aC5zdGFydHNXaXRoKCcvJylcbiAgICA/IHBhdGggPT09ICcvJ1xuICAgICAgPyBub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaChwcmVmaXgpXG4gICAgICA6IGAke3ByZWZpeH0ke3BhdGhOb1F1ZXJ5SGFzaChwYXRoKSA9PT0gJy8nID8gcGF0aC5zdWJzdHJpbmcoMSkgOiBwYXRofWBcbiAgICA6IHBhdGhcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERvbWFpbkxvY2FsZShcbiAgcGF0aDogc3RyaW5nLFxuICBsb2NhbGU/OiBzdHJpbmcgfCBmYWxzZSxcbiAgbG9jYWxlcz86IHN0cmluZ1tdLFxuICBkb21haW5Mb2NhbGVzPzogRG9tYWluTG9jYWxlc1xuKSB7XG4gIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gICAgbG9jYWxlID0gbG9jYWxlIHx8IG5vcm1hbGl6ZUxvY2FsZVBhdGgocGF0aCwgbG9jYWxlcykuZGV0ZWN0ZWRMb2NhbGVcblxuICAgIGNvbnN0IGRldGVjdGVkRG9tYWluID0gZGV0ZWN0RG9tYWluTG9jYWxlKGRvbWFpbkxvY2FsZXMsIHVuZGVmaW5lZCwgbG9jYWxlKVxuXG4gICAgaWYgKGRldGVjdGVkRG9tYWluKSB7XG4gICAgICByZXR1cm4gYGh0dHAke2RldGVjdGVkRG9tYWluLmh0dHAgPyAnJyA6ICdzJ306Ly8ke2RldGVjdGVkRG9tYWluLmRvbWFpbn0ke1xuICAgICAgICBiYXNlUGF0aCB8fCAnJ1xuICAgICAgfSR7bG9jYWxlID09PSBkZXRlY3RlZERvbWFpbi5kZWZhdWx0TG9jYWxlID8gJycgOiBgLyR7bG9jYWxlfWB9JHtwYXRofWBcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZExvY2FsZShcbiAgcGF0aDogc3RyaW5nLFxuICBsb2NhbGU/OiBzdHJpbmcgfCBmYWxzZSxcbiAgZGVmYXVsdExvY2FsZT86IHN0cmluZ1xuKSB7XG4gIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gICAgcmV0dXJuIGxvY2FsZSAmJlxuICAgICAgbG9jYWxlICE9PSBkZWZhdWx0TG9jYWxlICYmXG4gICAgICAhcGF0aC5zdGFydHNXaXRoKCcvJyArIGxvY2FsZSArICcvJykgJiZcbiAgICAgIHBhdGggIT09ICcvJyArIGxvY2FsZVxuICAgICAgPyBhZGRQYXRoUHJlZml4KHBhdGgsICcvJyArIGxvY2FsZSlcbiAgICAgIDogcGF0aFxuICB9XG4gIHJldHVybiBwYXRoXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWxMb2NhbGUocGF0aDogc3RyaW5nLCBsb2NhbGU/OiBzdHJpbmcpIHtcbiAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICByZXR1cm4gbG9jYWxlICYmXG4gICAgICAocGF0aC5zdGFydHNXaXRoKCcvJyArIGxvY2FsZSArICcvJykgfHwgcGF0aCA9PT0gJy8nICsgbG9jYWxlKVxuICAgICAgPyBwYXRoLnN1YnN0cihsb2NhbGUubGVuZ3RoICsgMSkgfHwgJy8nXG4gICAgICA6IHBhdGhcbiAgfVxuICByZXR1cm4gcGF0aFxufVxuXG5mdW5jdGlvbiBwYXRoTm9RdWVyeUhhc2gocGF0aDogc3RyaW5nKSB7XG4gIGNvbnN0IHF1ZXJ5SW5kZXggPSBwYXRoLmluZGV4T2YoJz8nKVxuICBjb25zdCBoYXNoSW5kZXggPSBwYXRoLmluZGV4T2YoJyMnKVxuXG4gIGlmIChxdWVyeUluZGV4ID4gLTEgfHwgaGFzaEluZGV4ID4gLTEpIHtcbiAgICBwYXRoID0gcGF0aC5zdWJzdHJpbmcoMCwgcXVlcnlJbmRleCA+IC0xID8gcXVlcnlJbmRleCA6IGhhc2hJbmRleClcbiAgfVxuICByZXR1cm4gcGF0aFxufVxuXG5leHBvcnQgZnVuY3Rpb24gaGFzQmFzZVBhdGgocGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHBhdGggPSBwYXRoTm9RdWVyeUhhc2gocGF0aClcbiAgcmV0dXJuIHBhdGggPT09IGJhc2VQYXRoIHx8IHBhdGguc3RhcnRzV2l0aChiYXNlUGF0aCArICcvJylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkZEJhc2VQYXRoKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIC8vIHdlIG9ubHkgYWRkIHRoZSBiYXNlcGF0aCBvbiByZWxhdGl2ZSB1cmxzXG4gIHJldHVybiBhZGRQYXRoUHJlZml4KHBhdGgsIGJhc2VQYXRoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVsQmFzZVBhdGgocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcGF0aCA9IHBhdGguc2xpY2UoYmFzZVBhdGgubGVuZ3RoKVxuICBpZiAoIXBhdGguc3RhcnRzV2l0aCgnLycpKSBwYXRoID0gYC8ke3BhdGh9YFxuICByZXR1cm4gcGF0aFxufVxuXG4vKipcbiAqIERldGVjdHMgd2hldGhlciBhIGdpdmVuIHVybCBpcyByb3V0YWJsZSBieSB0aGUgTmV4dC5qcyByb3V0ZXIgKGJyb3dzZXIgb25seSkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0xvY2FsVVJMKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIC8vIHByZXZlbnQgYSBoeWRyYXRpb24gbWlzbWF0Y2ggb24gaHJlZiBmb3IgdXJsIHdpdGggYW5jaG9yIHJlZnNcbiAgaWYgKHVybC5zdGFydHNXaXRoKCcvJykgfHwgdXJsLnN0YXJ0c1dpdGgoJyMnKSkgcmV0dXJuIHRydWVcbiAgdHJ5IHtcbiAgICAvLyBhYnNvbHV0ZSB1cmxzIGNhbiBiZSBsb2NhbCBpZiB0aGV5IGFyZSBvbiB0aGUgc2FtZSBvcmlnaW5cbiAgICBjb25zdCBsb2NhdGlvbk9yaWdpbiA9IGdldExvY2F0aW9uT3JpZ2luKClcbiAgICBjb25zdCByZXNvbHZlZCA9IG5ldyBVUkwodXJsLCBsb2NhdGlvbk9yaWdpbilcbiAgICByZXR1cm4gcmVzb2x2ZWQub3JpZ2luID09PSBsb2NhdGlvbk9yaWdpbiAmJiBoYXNCYXNlUGF0aChyZXNvbHZlZC5wYXRobmFtZSlcbiAgfSBjYXRjaCAoXykge1xuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cbnR5cGUgVXJsID0gVXJsT2JqZWN0IHwgc3RyaW5nXG5cbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnBvbGF0ZUFzKFxuICByb3V0ZTogc3RyaW5nLFxuICBhc1BhdGhuYW1lOiBzdHJpbmcsXG4gIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeVxuKSB7XG4gIGxldCBpbnRlcnBvbGF0ZWRSb3V0ZSA9ICcnXG5cbiAgY29uc3QgZHluYW1pY1JlZ2V4ID0gZ2V0Um91dGVSZWdleChyb3V0ZSlcbiAgY29uc3QgZHluYW1pY0dyb3VwcyA9IGR5bmFtaWNSZWdleC5ncm91cHNcbiAgY29uc3QgZHluYW1pY01hdGNoZXMgPVxuICAgIC8vIFRyeSB0byBtYXRjaCB0aGUgZHluYW1pYyByb3V0ZSBhZ2FpbnN0IHRoZSBhc1BhdGhcbiAgICAoYXNQYXRobmFtZSAhPT0gcm91dGUgPyBnZXRSb3V0ZU1hdGNoZXIoZHluYW1pY1JlZ2V4KShhc1BhdGhuYW1lKSA6ICcnKSB8fFxuICAgIC8vIEZhbGwgYmFjayB0byByZWFkaW5nIHRoZSB2YWx1ZXMgZnJvbSB0aGUgaHJlZlxuICAgIC8vIFRPRE86IHNob3VsZCB0aGlzIHRha2UgcHJpb3JpdHk7IGFsc28gbmVlZCB0byBjaGFuZ2UgaW4gdGhlIHJvdXRlci5cbiAgICBxdWVyeVxuXG4gIGludGVycG9sYXRlZFJvdXRlID0gcm91dGVcbiAgY29uc3QgcGFyYW1zID0gT2JqZWN0LmtleXMoZHluYW1pY0dyb3VwcylcblxuICBpZiAoXG4gICAgIXBhcmFtcy5ldmVyeSgocGFyYW0pID0+IHtcbiAgICAgIGxldCB2YWx1ZSA9IGR5bmFtaWNNYXRjaGVzW3BhcmFtXSB8fCAnJ1xuICAgICAgY29uc3QgeyByZXBlYXQsIG9wdGlvbmFsIH0gPSBkeW5hbWljR3JvdXBzW3BhcmFtXVxuXG4gICAgICAvLyBzdXBwb3J0IHNpbmdsZS1sZXZlbCBjYXRjaC1hbGxcbiAgICAgIC8vIFRPRE86IG1vcmUgcm9idXN0IGhhbmRsaW5nIGZvciB1c2VyLWVycm9yIChwYXNzaW5nIGAvYClcbiAgICAgIGxldCByZXBsYWNlZCA9IGBbJHtyZXBlYXQgPyAnLi4uJyA6ICcnfSR7cGFyYW19XWBcbiAgICAgIGlmIChvcHRpb25hbCkge1xuICAgICAgICByZXBsYWNlZCA9IGAkeyF2YWx1ZSA/ICcvJyA6ICcnfVske3JlcGxhY2VkfV1gXG4gICAgICB9XG4gICAgICBpZiAocmVwZWF0ICYmICFBcnJheS5pc0FycmF5KHZhbHVlKSkgdmFsdWUgPSBbdmFsdWVdXG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIChvcHRpb25hbCB8fCBwYXJhbSBpbiBkeW5hbWljTWF0Y2hlcykgJiZcbiAgICAgICAgLy8gSW50ZXJwb2xhdGUgZ3JvdXAgaW50byBkYXRhIFVSTCBpZiBwcmVzZW50XG4gICAgICAgIChpbnRlcnBvbGF0ZWRSb3V0ZSA9XG4gICAgICAgICAgaW50ZXJwb2xhdGVkUm91dGUhLnJlcGxhY2UoXG4gICAgICAgICAgICByZXBsYWNlZCxcbiAgICAgICAgICAgIHJlcGVhdFxuICAgICAgICAgICAgICA/ICh2YWx1ZSBhcyBzdHJpbmdbXSlcbiAgICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAgIC8vIHRoZXNlIHZhbHVlcyBzaG91bGQgYmUgZnVsbHkgZW5jb2RlZCBpbnN0ZWFkIG9mIGp1c3RcbiAgICAgICAgICAgICAgICAgICAgLy8gcGF0aCBkZWxpbWl0ZXIgZXNjYXBlZCBzaW5jZSB0aGV5IGFyZSBiZWluZyBpbnNlcnRlZFxuICAgICAgICAgICAgICAgICAgICAvLyBpbnRvIHRoZSBVUkwgYW5kIHdlIGV4cGVjdCBVUkwgZW5jb2RlZCBzZWdtZW50c1xuICAgICAgICAgICAgICAgICAgICAvLyB3aGVuIHBhcnNpbmcgZHluYW1pYyByb3V0ZSBwYXJhbXNcbiAgICAgICAgICAgICAgICAgICAgKHNlZ21lbnQpID0+IGVuY29kZVVSSUNvbXBvbmVudChzZWdtZW50KVxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgLmpvaW4oJy8nKVxuICAgICAgICAgICAgICA6IGVuY29kZVVSSUNvbXBvbmVudCh2YWx1ZSBhcyBzdHJpbmcpXG4gICAgICAgICAgKSB8fCAnLycpXG4gICAgICApXG4gICAgfSlcbiAgKSB7XG4gICAgaW50ZXJwb2xhdGVkUm91dGUgPSAnJyAvLyBkaWQgbm90IHNhdGlzZnkgYWxsIHJlcXVpcmVtZW50c1xuXG4gICAgLy8gbi5iLiBXZSBpZ25vcmUgdGhpcyBlcnJvciBiZWNhdXNlIHdlIGhhbmRsZSB3YXJuaW5nIGZvciB0aGlzIGNhc2UgaW5cbiAgICAvLyBkZXZlbG9wbWVudCBpbiB0aGUgYDxMaW5rPmAgY29tcG9uZW50IGRpcmVjdGx5LlxuICB9XG4gIHJldHVybiB7XG4gICAgcGFyYW1zLFxuICAgIHJlc3VsdDogaW50ZXJwb2xhdGVkUm91dGUsXG4gIH1cbn1cblxuZnVuY3Rpb24gb21pdFBhcm1zRnJvbVF1ZXJ5KHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSwgcGFyYW1zOiBzdHJpbmdbXSkge1xuICBjb25zdCBmaWx0ZXJlZFF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSA9IHt9XG5cbiAgT2JqZWN0LmtleXMocXVlcnkpLmZvckVhY2goKGtleSkgPT4ge1xuICAgIGlmICghcGFyYW1zLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgIGZpbHRlcmVkUXVlcnlba2V5XSA9IHF1ZXJ5W2tleV1cbiAgICB9XG4gIH0pXG4gIHJldHVybiBmaWx0ZXJlZFF1ZXJ5XG59XG5cbi8qKlxuICogUmVzb2x2ZXMgYSBnaXZlbiBoeXBlcmxpbmsgd2l0aCBhIGNlcnRhaW4gcm91dGVyIHN0YXRlIChiYXNlUGF0aCBub3QgaW5jbHVkZWQpLlxuICogUHJlc2VydmVzIGFic29sdXRlIHVybHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlSHJlZihcbiAgY3VycmVudFBhdGg6IHN0cmluZyxcbiAgaHJlZjogVXJsLFxuICByZXNvbHZlQXM/OiBib29sZWFuXG4pOiBzdHJpbmcge1xuICAvLyB3ZSB1c2UgYSBkdW1teSBiYXNlIHVybCBmb3IgcmVsYXRpdmUgdXJsc1xuICBjb25zdCBiYXNlID0gbmV3IFVSTChjdXJyZW50UGF0aCwgJ2h0dHA6Ly9uJylcbiAgY29uc3QgdXJsQXNTdHJpbmcgPVxuICAgIHR5cGVvZiBocmVmID09PSAnc3RyaW5nJyA/IGhyZWYgOiBmb3JtYXRXaXRoVmFsaWRhdGlvbihocmVmKVxuICAvLyBSZXR1cm4gYmVjYXVzZSBpdCBjYW5ub3QgYmUgcm91dGVkIGJ5IHRoZSBOZXh0LmpzIHJvdXRlclxuICBpZiAoIWlzTG9jYWxVUkwodXJsQXNTdHJpbmcpKSB7XG4gICAgcmV0dXJuIChyZXNvbHZlQXMgPyBbdXJsQXNTdHJpbmddIDogdXJsQXNTdHJpbmcpIGFzIHN0cmluZ1xuICB9XG4gIHRyeSB7XG4gICAgY29uc3QgZmluYWxVcmwgPSBuZXcgVVJMKHVybEFzU3RyaW5nLCBiYXNlKVxuICAgIGZpbmFsVXJsLnBhdGhuYW1lID0gbm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2goZmluYWxVcmwucGF0aG5hbWUpXG4gICAgbGV0IGludGVycG9sYXRlZEFzID0gJydcblxuICAgIGlmIChcbiAgICAgIGlzRHluYW1pY1JvdXRlKGZpbmFsVXJsLnBhdGhuYW1lKSAmJlxuICAgICAgZmluYWxVcmwuc2VhcmNoUGFyYW1zICYmXG4gICAgICByZXNvbHZlQXNcbiAgICApIHtcbiAgICAgIGNvbnN0IHF1ZXJ5ID0gc2VhcmNoUGFyYW1zVG9VcmxRdWVyeShmaW5hbFVybC5zZWFyY2hQYXJhbXMpXG5cbiAgICAgIGNvbnN0IHsgcmVzdWx0LCBwYXJhbXMgfSA9IGludGVycG9sYXRlQXMoXG4gICAgICAgIGZpbmFsVXJsLnBhdGhuYW1lLFxuICAgICAgICBmaW5hbFVybC5wYXRobmFtZSxcbiAgICAgICAgcXVlcnlcbiAgICAgIClcblxuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICBpbnRlcnBvbGF0ZWRBcyA9IGZvcm1hdFdpdGhWYWxpZGF0aW9uKHtcbiAgICAgICAgICBwYXRobmFtZTogcmVzdWx0LFxuICAgICAgICAgIGhhc2g6IGZpbmFsVXJsLmhhc2gsXG4gICAgICAgICAgcXVlcnk6IG9taXRQYXJtc0Zyb21RdWVyeShxdWVyeSwgcGFyYW1zKSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpZiB0aGUgb3JpZ2luIGRpZG4ndCBjaGFuZ2UsIGl0IG1lYW5zIHdlIHJlY2VpdmVkIGEgcmVsYXRpdmUgaHJlZlxuICAgIGNvbnN0IHJlc29sdmVkSHJlZiA9XG4gICAgICBmaW5hbFVybC5vcmlnaW4gPT09IGJhc2Uub3JpZ2luXG4gICAgICAgID8gZmluYWxVcmwuaHJlZi5zbGljZShmaW5hbFVybC5vcmlnaW4ubGVuZ3RoKVxuICAgICAgICA6IGZpbmFsVXJsLmhyZWZcblxuICAgIHJldHVybiAocmVzb2x2ZUFzXG4gICAgICA/IFtyZXNvbHZlZEhyZWYsIGludGVycG9sYXRlZEFzIHx8IHJlc29sdmVkSHJlZl1cbiAgICAgIDogcmVzb2x2ZWRIcmVmKSBhcyBzdHJpbmdcbiAgfSBjYXRjaCAoXykge1xuICAgIHJldHVybiAocmVzb2x2ZUFzID8gW3VybEFzU3RyaW5nXSA6IHVybEFzU3RyaW5nKSBhcyBzdHJpbmdcbiAgfVxufVxuXG5mdW5jdGlvbiBzdHJpcE9yaWdpbih1cmw6IHN0cmluZykge1xuICBjb25zdCBvcmlnaW4gPSBnZXRMb2NhdGlvbk9yaWdpbigpXG5cbiAgcmV0dXJuIHVybC5zdGFydHNXaXRoKG9yaWdpbikgPyB1cmwuc3Vic3RyaW5nKG9yaWdpbi5sZW5ndGgpIDogdXJsXG59XG5cbmZ1bmN0aW9uIHByZXBhcmVVcmxBcyhyb3V0ZXI6IE5leHRSb3V0ZXIsIHVybDogVXJsLCBhcz86IFVybCkge1xuICAvLyBJZiB1cmwgYW5kIGFzIHByb3ZpZGVkIGFzIGFuIG9iamVjdCByZXByZXNlbnRhdGlvbixcbiAgLy8gd2UnbGwgZm9ybWF0IHRoZW0gaW50byB0aGUgc3RyaW5nIHZlcnNpb24gaGVyZS5cbiAgbGV0IFtyZXNvbHZlZEhyZWYsIHJlc29sdmVkQXNdID0gcmVzb2x2ZUhyZWYocm91dGVyLnBhdGhuYW1lLCB1cmwsIHRydWUpXG4gIGNvbnN0IG9yaWdpbiA9IGdldExvY2F0aW9uT3JpZ2luKClcbiAgY29uc3QgaHJlZkhhZE9yaWdpbiA9IHJlc29sdmVkSHJlZi5zdGFydHNXaXRoKG9yaWdpbilcbiAgY29uc3QgYXNIYWRPcmlnaW4gPSByZXNvbHZlZEFzICYmIHJlc29sdmVkQXMuc3RhcnRzV2l0aChvcmlnaW4pXG5cbiAgcmVzb2x2ZWRIcmVmID0gc3RyaXBPcmlnaW4ocmVzb2x2ZWRIcmVmKVxuICByZXNvbHZlZEFzID0gcmVzb2x2ZWRBcyA/IHN0cmlwT3JpZ2luKHJlc29sdmVkQXMpIDogcmVzb2x2ZWRBc1xuXG4gIGNvbnN0IHByZXBhcmVkVXJsID0gaHJlZkhhZE9yaWdpbiA/IHJlc29sdmVkSHJlZiA6IGFkZEJhc2VQYXRoKHJlc29sdmVkSHJlZilcbiAgY29uc3QgcHJlcGFyZWRBcyA9IGFzXG4gICAgPyBzdHJpcE9yaWdpbihyZXNvbHZlSHJlZihyb3V0ZXIucGF0aG5hbWUsIGFzKSlcbiAgICA6IHJlc29sdmVkQXMgfHwgcmVzb2x2ZWRIcmVmXG5cbiAgcmV0dXJuIHtcbiAgICB1cmw6IHByZXBhcmVkVXJsLFxuICAgIGFzOiBhc0hhZE9yaWdpbiA/IHByZXBhcmVkQXMgOiBhZGRCYXNlUGF0aChwcmVwYXJlZEFzKSxcbiAgfVxufVxuXG5mdW5jdGlvbiByZXNvbHZlRHluYW1pY1JvdXRlKFxuICBwYXJzZWRIcmVmOiBVcmxPYmplY3QsXG4gIHBhZ2VzOiBzdHJpbmdbXSxcbiAgYXBwbHlCYXNlUGF0aCA9IHRydWVcbikge1xuICBjb25zdCB7IHBhdGhuYW1lIH0gPSBwYXJzZWRIcmVmXG4gIGNvbnN0IGNsZWFuUGF0aG5hbWUgPSByZW1vdmVQYXRoVHJhaWxpbmdTbGFzaChcbiAgICBkZW5vcm1hbGl6ZVBhZ2VQYXRoKGFwcGx5QmFzZVBhdGggPyBkZWxCYXNlUGF0aChwYXRobmFtZSEpIDogcGF0aG5hbWUhKVxuICApXG5cbiAgaWYgKGNsZWFuUGF0aG5hbWUgPT09ICcvNDA0JyB8fCBjbGVhblBhdGhuYW1lID09PSAnL19lcnJvcicpIHtcbiAgICByZXR1cm4gcGFyc2VkSHJlZlxuICB9XG5cbiAgLy8gaGFuZGxlIHJlc29sdmluZyBocmVmIGZvciBkeW5hbWljIHJvdXRlc1xuICBpZiAoIXBhZ2VzLmluY2x1ZGVzKGNsZWFuUGF0aG5hbWUhKSkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBhcnJheS1jYWxsYmFjay1yZXR1cm5cbiAgICBwYWdlcy5zb21lKChwYWdlKSA9PiB7XG4gICAgICBpZiAoaXNEeW5hbWljUm91dGUocGFnZSkgJiYgZ2V0Um91dGVSZWdleChwYWdlKS5yZS50ZXN0KGNsZWFuUGF0aG5hbWUhKSkge1xuICAgICAgICBwYXJzZWRIcmVmLnBhdGhuYW1lID0gYXBwbHlCYXNlUGF0aCA/IGFkZEJhc2VQYXRoKHBhZ2UpIDogcGFnZVxuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICAgIH0pXG4gIH1cbiAgcGFyc2VkSHJlZi5wYXRobmFtZSA9IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhcnNlZEhyZWYucGF0aG5hbWUhKVxuICByZXR1cm4gcGFyc2VkSHJlZlxufVxuXG5leHBvcnQgdHlwZSBCYXNlUm91dGVyID0ge1xuICByb3V0ZTogc3RyaW5nXG4gIHBhdGhuYW1lOiBzdHJpbmdcbiAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4gIGFzUGF0aDogc3RyaW5nXG4gIGJhc2VQYXRoOiBzdHJpbmdcbiAgbG9jYWxlPzogc3RyaW5nXG4gIGxvY2FsZXM/OiBzdHJpbmdbXVxuICBkZWZhdWx0TG9jYWxlPzogc3RyaW5nXG4gIGRvbWFpbkxvY2FsZXM/OiBEb21haW5Mb2NhbGVzXG4gIGlzTG9jYWxlRG9tYWluOiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIE5leHRSb3V0ZXIgPSBCYXNlUm91dGVyICZcbiAgUGljazxcbiAgICBSb3V0ZXIsXG4gICAgfCAncHVzaCdcbiAgICB8ICdyZXBsYWNlJ1xuICAgIHwgJ3JlbG9hZCdcbiAgICB8ICdiYWNrJ1xuICAgIHwgJ3ByZWZldGNoJ1xuICAgIHwgJ2JlZm9yZVBvcFN0YXRlJ1xuICAgIHwgJ2V2ZW50cydcbiAgICB8ICdpc0ZhbGxiYWNrJ1xuICAgIHwgJ2lzUmVhZHknXG4gICAgfCAnaXNQcmV2aWV3J1xuICA+XG5cbmV4cG9ydCB0eXBlIFByZWZldGNoT3B0aW9ucyA9IHtcbiAgcHJpb3JpdHk/OiBib29sZWFuXG4gIGxvY2FsZT86IHN0cmluZyB8IGZhbHNlXG59XG5cbmV4cG9ydCB0eXBlIFByaXZhdGVSb3V0ZUluZm8gPVxuICB8IChPbWl0PENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbywgJ3N0eWxlU2hlZXRzJz4gJiB7IGluaXRpYWw6IHRydWUgfSlcbiAgfCBDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm9cblxuZXhwb3J0IHR5cGUgQ29tcGxldGVQcml2YXRlUm91dGVJbmZvID0ge1xuICBDb21wb25lbnQ6IENvbXBvbmVudFR5cGVcbiAgc3R5bGVTaGVldHM6IFN0eWxlU2hlZXRUdXBsZVtdXG4gIF9fTl9TU0c/OiBib29sZWFuXG4gIF9fTl9TU1A/OiBib29sZWFuXG4gIHByb3BzPzogUmVjb3JkPHN0cmluZywgYW55PlxuICBlcnI/OiBFcnJvclxuICBlcnJvcj86IGFueVxufVxuXG5leHBvcnQgdHlwZSBBcHBQcm9wcyA9IFBpY2s8Q29tcGxldGVQcml2YXRlUm91dGVJbmZvLCAnQ29tcG9uZW50JyB8ICdlcnInPiAmIHtcbiAgcm91dGVyOiBSb3V0ZXJcbn0gJiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG5leHBvcnQgdHlwZSBBcHBDb21wb25lbnQgPSBDb21wb25lbnRUeXBlPEFwcFByb3BzPlxuXG50eXBlIFN1YnNjcmlwdGlvbiA9IChcbiAgZGF0YTogUHJpdmF0ZVJvdXRlSW5mbyxcbiAgQXBwOiBBcHBDb21wb25lbnQsXG4gIHJlc2V0U2Nyb2xsOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0gfCBudWxsXG4pID0+IFByb21pc2U8dm9pZD5cblxudHlwZSBCZWZvcmVQb3BTdGF0ZUNhbGxiYWNrID0gKHN0YXRlOiBOZXh0SGlzdG9yeVN0YXRlKSA9PiBib29sZWFuXG5cbnR5cGUgQ29tcG9uZW50TG9hZENhbmNlbCA9ICgoKSA9PiB2b2lkKSB8IG51bGxcblxudHlwZSBIaXN0b3J5TWV0aG9kID0gJ3JlcGxhY2VTdGF0ZScgfCAncHVzaFN0YXRlJ1xuXG5jb25zdCBtYW51YWxTY3JvbGxSZXN0b3JhdGlvbiA9XG4gIHByb2Nlc3MuZW52Ll9fTkVYVF9TQ1JPTExfUkVTVE9SQVRJT04gJiZcbiAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgJ3Njcm9sbFJlc3RvcmF0aW9uJyBpbiB3aW5kb3cuaGlzdG9yeSAmJlxuICAhIShmdW5jdGlvbiAoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCB2ID0gJ19fbmV4dCdcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZXF1ZW5jZXNcbiAgICAgIHJldHVybiBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKHYsIHYpLCBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKHYpLCB0cnVlXG4gICAgfSBjYXRjaCAobikge31cbiAgfSkoKVxuXG5jb25zdCBTU0dfREFUQV9OT1RfRk9VTkQgPSBTeW1ib2woJ1NTR19EQVRBX05PVF9GT1VORCcpXG5cbmZ1bmN0aW9uIGZldGNoUmV0cnkodXJsOiBzdHJpbmcsIGF0dGVtcHRzOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICByZXR1cm4gZmV0Y2godXJsLCB7XG4gICAgLy8gQ29va2llcyBhcmUgcmVxdWlyZWQgdG8gYmUgcHJlc2VudCBmb3IgTmV4dC5qcycgU1NHIFwiUHJldmlldyBNb2RlXCIuXG4gICAgLy8gQ29va2llcyBtYXkgYWxzbyBiZSByZXF1aXJlZCBmb3IgYGdldFNlcnZlclNpZGVQcm9wc2AuXG4gICAgLy9cbiAgICAvLyA+IGBmZXRjaGAgd29u4oCZdCBzZW5kIGNvb2tpZXMsIHVubGVzcyB5b3Ugc2V0IHRoZSBjcmVkZW50aWFscyBpbml0XG4gICAgLy8gPiBvcHRpb24uXG4gICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0ZldGNoX0FQSS9Vc2luZ19GZXRjaFxuICAgIC8vXG4gICAgLy8gPiBGb3IgbWF4aW11bSBicm93c2VyIGNvbXBhdGliaWxpdHkgd2hlbiBpdCBjb21lcyB0byBzZW5kaW5nICZcbiAgICAvLyA+IHJlY2VpdmluZyBjb29raWVzLCBhbHdheXMgc3VwcGx5IHRoZSBgY3JlZGVudGlhbHM6ICdzYW1lLW9yaWdpbidgXG4gICAgLy8gPiBvcHRpb24gaW5zdGVhZCBvZiByZWx5aW5nIG9uIHRoZSBkZWZhdWx0LlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9naXRodWIvZmV0Y2gjY2F2ZWF0c1xuICAgIGNyZWRlbnRpYWxzOiAnc2FtZS1vcmlnaW4nLFxuICB9KS50aGVuKChyZXMpID0+IHtcbiAgICBpZiAoIXJlcy5vaykge1xuICAgICAgaWYgKGF0dGVtcHRzID4gMSAmJiByZXMuc3RhdHVzID49IDUwMCkge1xuICAgICAgICByZXR1cm4gZmV0Y2hSZXRyeSh1cmwsIGF0dGVtcHRzIC0gMSlcbiAgICAgIH1cbiAgICAgIGlmIChyZXMuc3RhdHVzID09PSA0MDQpIHtcbiAgICAgICAgcmV0dXJuIHJlcy5qc29uKCkudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhLm5vdEZvdW5kKSB7XG4gICAgICAgICAgICByZXR1cm4geyBub3RGb3VuZDogU1NHX0RBVEFfTk9UX0ZPVU5EIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gbG9hZCBzdGF0aWMgcHJvcHNgKVxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGYWlsZWQgdG8gbG9hZCBzdGF0aWMgcHJvcHNgKVxuICAgIH1cbiAgICByZXR1cm4gcmVzLmpzb24oKVxuICB9KVxufVxuXG5mdW5jdGlvbiBmZXRjaE5leHREYXRhKGRhdGFIcmVmOiBzdHJpbmcsIGlzU2VydmVyUmVuZGVyOiBib29sZWFuKSB7XG4gIHJldHVybiBmZXRjaFJldHJ5KGRhdGFIcmVmLCBpc1NlcnZlclJlbmRlciA/IDMgOiAxKS5jYXRjaCgoZXJyOiBFcnJvcikgPT4ge1xuICAgIC8vIFdlIHNob3VsZCBvbmx5IHRyaWdnZXIgYSBzZXJ2ZXItc2lkZSB0cmFuc2l0aW9uIGlmIHRoaXMgd2FzIGNhdXNlZFxuICAgIC8vIG9uIGEgY2xpZW50LXNpZGUgdHJhbnNpdGlvbi4gT3RoZXJ3aXNlLCB3ZSdkIGdldCBpbnRvIGFuIGluZmluaXRlXG4gICAgLy8gbG9vcC5cblxuICAgIGlmICghaXNTZXJ2ZXJSZW5kZXIpIHtcbiAgICAgIG1hcmtBc3NldEVycm9yKGVycilcbiAgICB9XG4gICAgdGhyb3cgZXJyXG4gIH0pXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJvdXRlciBpbXBsZW1lbnRzIEJhc2VSb3V0ZXIge1xuICByb3V0ZTogc3RyaW5nXG4gIHBhdGhuYW1lOiBzdHJpbmdcbiAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4gIGFzUGF0aDogc3RyaW5nXG4gIGJhc2VQYXRoOiBzdHJpbmdcblxuICAvKipcbiAgICogTWFwIG9mIGFsbCBjb21wb25lbnRzIGxvYWRlZCBpbiBgUm91dGVyYFxuICAgKi9cbiAgY29tcG9uZW50czogeyBbcGF0aG5hbWU6IHN0cmluZ106IFByaXZhdGVSb3V0ZUluZm8gfVxuICAvLyBTdGF0aWMgRGF0YSBDYWNoZVxuICBzZGM6IHsgW2FzUGF0aDogc3RyaW5nXTogb2JqZWN0IH0gPSB7fVxuICBzdWI6IFN1YnNjcmlwdGlvblxuICBjbGM6IENvbXBvbmVudExvYWRDYW5jZWxcbiAgcGFnZUxvYWRlcjogYW55XG4gIF9icHM6IEJlZm9yZVBvcFN0YXRlQ2FsbGJhY2sgfCB1bmRlZmluZWRcbiAgZXZlbnRzOiBNaXR0RW1pdHRlclxuICBfd3JhcEFwcDogKEFwcDogQXBwQ29tcG9uZW50KSA9PiBhbnlcbiAgaXNTc3I6IGJvb2xlYW5cbiAgaXNGYWxsYmFjazogYm9vbGVhblxuICBfaW5GbGlnaHRSb3V0ZT86IHN0cmluZ1xuICBfc2hhbGxvdz86IGJvb2xlYW5cbiAgbG9jYWxlPzogc3RyaW5nXG4gIGxvY2FsZXM/OiBzdHJpbmdbXVxuICBkZWZhdWx0TG9jYWxlPzogc3RyaW5nXG4gIGRvbWFpbkxvY2FsZXM/OiBEb21haW5Mb2NhbGVzXG4gIGlzUmVhZHk6IGJvb2xlYW5cbiAgaXNQcmV2aWV3OiBib29sZWFuXG4gIGlzTG9jYWxlRG9tYWluOiBib29sZWFuXG5cbiAgcHJpdmF0ZSBfaWR4OiBudW1iZXIgPSAwXG5cbiAgc3RhdGljIGV2ZW50czogTWl0dEVtaXR0ZXIgPSBtaXR0KClcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwYXRobmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSxcbiAgICBhczogc3RyaW5nLFxuICAgIHtcbiAgICAgIGluaXRpYWxQcm9wcyxcbiAgICAgIHBhZ2VMb2FkZXIsXG4gICAgICBBcHAsXG4gICAgICB3cmFwQXBwLFxuICAgICAgQ29tcG9uZW50LFxuICAgICAgZXJyLFxuICAgICAgc3Vic2NyaXB0aW9uLFxuICAgICAgaXNGYWxsYmFjayxcbiAgICAgIGxvY2FsZSxcbiAgICAgIGxvY2FsZXMsXG4gICAgICBkZWZhdWx0TG9jYWxlLFxuICAgICAgZG9tYWluTG9jYWxlcyxcbiAgICAgIGlzUHJldmlldyxcbiAgICB9OiB7XG4gICAgICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblxuICAgICAgaW5pdGlhbFByb3BzOiBhbnlcbiAgICAgIHBhZ2VMb2FkZXI6IGFueVxuICAgICAgQ29tcG9uZW50OiBDb21wb25lbnRUeXBlXG4gICAgICBBcHA6IEFwcENvbXBvbmVudFxuICAgICAgd3JhcEFwcDogKEFwcDogQXBwQ29tcG9uZW50KSA9PiBhbnlcbiAgICAgIGVycj86IEVycm9yXG4gICAgICBpc0ZhbGxiYWNrOiBib29sZWFuXG4gICAgICBsb2NhbGU/OiBzdHJpbmdcbiAgICAgIGxvY2FsZXM/OiBzdHJpbmdbXVxuICAgICAgZGVmYXVsdExvY2FsZT86IHN0cmluZ1xuICAgICAgZG9tYWluTG9jYWxlcz86IERvbWFpbkxvY2FsZXNcbiAgICAgIGlzUHJldmlldz86IGJvb2xlYW5cbiAgICB9XG4gICkge1xuICAgIC8vIHJlcHJlc2VudHMgdGhlIGN1cnJlbnQgY29tcG9uZW50IGtleVxuICAgIHRoaXMucm91dGUgPSByZW1vdmVQYXRoVHJhaWxpbmdTbGFzaChwYXRobmFtZSlcblxuICAgIC8vIHNldCB1cCB0aGUgY29tcG9uZW50IGNhY2hlIChieSByb3V0ZSBrZXlzKVxuICAgIHRoaXMuY29tcG9uZW50cyA9IHt9XG4gICAgLy8gV2Ugc2hvdWxkIG5vdCBrZWVwIHRoZSBjYWNoZSwgaWYgdGhlcmUncyBhbiBlcnJvclxuICAgIC8vIE90aGVyd2lzZSwgdGhpcyBjYXVzZSBpc3N1ZXMgd2hlbiB3aGVuIGdvaW5nIGJhY2sgYW5kXG4gICAgLy8gY29tZSBhZ2FpbiB0byB0aGUgZXJyb3JlZCBwYWdlLlxuICAgIGlmIChwYXRobmFtZSAhPT0gJy9fZXJyb3InKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudHNbdGhpcy5yb3V0ZV0gPSB7XG4gICAgICAgIENvbXBvbmVudCxcbiAgICAgICAgaW5pdGlhbDogdHJ1ZSxcbiAgICAgICAgcHJvcHM6IGluaXRpYWxQcm9wcyxcbiAgICAgICAgZXJyLFxuICAgICAgICBfX05fU1NHOiBpbml0aWFsUHJvcHMgJiYgaW5pdGlhbFByb3BzLl9fTl9TU0csXG4gICAgICAgIF9fTl9TU1A6IGluaXRpYWxQcm9wcyAmJiBpbml0aWFsUHJvcHMuX19OX1NTUCxcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmNvbXBvbmVudHNbJy9fYXBwJ10gPSB7XG4gICAgICBDb21wb25lbnQ6IEFwcCBhcyBDb21wb25lbnRUeXBlLFxuICAgICAgc3R5bGVTaGVldHM6IFtcbiAgICAgICAgLyogL19hcHAgZG9lcyBub3QgbmVlZCBpdHMgc3R5bGVzaGVldHMgbWFuYWdlZCAqL1xuICAgICAgXSxcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZHMgY29tcGF0IGZvciBSb3V0ZXIucm91dGVyLmV2ZW50c1xuICAgIC8vIFRPRE86IFNob3VsZCBiZSByZW1vdmUgdGhlIGZvbGxvd2luZyBtYWpvciB2ZXJzaW9uIGFzIGl0IHdhcyBuZXZlciBkb2N1bWVudGVkXG4gICAgdGhpcy5ldmVudHMgPSBSb3V0ZXIuZXZlbnRzXG5cbiAgICB0aGlzLnBhZ2VMb2FkZXIgPSBwYWdlTG9hZGVyXG4gICAgdGhpcy5wYXRobmFtZSA9IHBhdGhuYW1lXG4gICAgdGhpcy5xdWVyeSA9IHF1ZXJ5XG4gICAgLy8gaWYgYXV0byBwcmVyZW5kZXJlZCBhbmQgZHluYW1pYyByb3V0ZSB3YWl0IHRvIHVwZGF0ZSBhc1BhdGhcbiAgICAvLyB1bnRpbCBhZnRlciBtb3VudCB0byBwcmV2ZW50IGh5ZHJhdGlvbiBtaXNtYXRjaFxuICAgIGNvbnN0IGF1dG9FeHBvcnREeW5hbWljID1cbiAgICAgIGlzRHluYW1pY1JvdXRlKHBhdGhuYW1lKSAmJiBzZWxmLl9fTkVYVF9EQVRBX18uYXV0b0V4cG9ydFxuXG4gICAgdGhpcy5hc1BhdGggPSBhdXRvRXhwb3J0RHluYW1pYyA/IHBhdGhuYW1lIDogYXNcbiAgICB0aGlzLmJhc2VQYXRoID0gYmFzZVBhdGhcbiAgICB0aGlzLnN1YiA9IHN1YnNjcmlwdGlvblxuICAgIHRoaXMuY2xjID0gbnVsbFxuICAgIHRoaXMuX3dyYXBBcHAgPSB3cmFwQXBwXG4gICAgLy8gbWFrZSBzdXJlIHRvIGlnbm9yZSBleHRyYSBwb3BTdGF0ZSBpbiBzYWZhcmkgb24gbmF2aWdhdGluZ1xuICAgIC8vIGJhY2sgZnJvbSBleHRlcm5hbCBzaXRlXG4gICAgdGhpcy5pc1NzciA9IHRydWVcblxuICAgIHRoaXMuaXNGYWxsYmFjayA9IGlzRmFsbGJhY2tcblxuICAgIHRoaXMuaXNSZWFkeSA9ICEhKFxuICAgICAgc2VsZi5fX05FWFRfREFUQV9fLmdzc3AgfHxcbiAgICAgIHNlbGYuX19ORVhUX0RBVEFfXy5naXAgfHxcbiAgICAgICghYXV0b0V4cG9ydER5bmFtaWMgJiYgIXNlbGYubG9jYXRpb24uc2VhcmNoKVxuICAgIClcbiAgICB0aGlzLmlzUHJldmlldyA9ICEhaXNQcmV2aWV3XG4gICAgdGhpcy5pc0xvY2FsZURvbWFpbiA9IGZhbHNlXG5cbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICAgICAgdGhpcy5sb2NhbGUgPSBsb2NhbGVcbiAgICAgIHRoaXMubG9jYWxlcyA9IGxvY2FsZXNcbiAgICAgIHRoaXMuZGVmYXVsdExvY2FsZSA9IGRlZmF1bHRMb2NhbGVcbiAgICAgIHRoaXMuZG9tYWluTG9jYWxlcyA9IGRvbWFpbkxvY2FsZXNcbiAgICAgIHRoaXMuaXNMb2NhbGVEb21haW4gPSAhIWRldGVjdERvbWFpbkxvY2FsZShcbiAgICAgICAgZG9tYWluTG9jYWxlcyxcbiAgICAgICAgc2VsZi5sb2NhdGlvbi5ob3N0bmFtZVxuICAgICAgKVxuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgLy8gbWFrZSBzdXJlIFwiYXNcIiBkb2Vzbid0IHN0YXJ0IHdpdGggZG91YmxlIHNsYXNoZXMgb3IgZWxzZSBpdCBjYW5cbiAgICAgIC8vIHRocm93IGFuIGVycm9yIGFzIGl0J3MgY29uc2lkZXJlZCBpbnZhbGlkXG4gICAgICBpZiAoYXMuc3Vic3RyKDAsIDIpICE9PSAnLy8nKSB7XG4gICAgICAgIC8vIGluIG9yZGVyIGZvciBgZS5zdGF0ZWAgdG8gd29yayBvbiB0aGUgYG9ucG9wc3RhdGVgIGV2ZW50XG4gICAgICAgIC8vIHdlIGhhdmUgdG8gcmVnaXN0ZXIgdGhlIGluaXRpYWwgcm91dGUgdXBvbiBpbml0aWFsaXphdGlvblxuICAgICAgICB0aGlzLmNoYW5nZVN0YXRlKFxuICAgICAgICAgICdyZXBsYWNlU3RhdGUnLFxuICAgICAgICAgIGZvcm1hdFdpdGhWYWxpZGF0aW9uKHsgcGF0aG5hbWU6IGFkZEJhc2VQYXRoKHBhdGhuYW1lKSwgcXVlcnkgfSksXG4gICAgICAgICAgZ2V0VVJMKCksXG4gICAgICAgICAgeyBsb2NhbGUgfVxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwb3BzdGF0ZScsIHRoaXMub25Qb3BTdGF0ZSlcblxuICAgICAgLy8gZW5hYmxlIGN1c3RvbSBzY3JvbGwgcmVzdG9yYXRpb24gaGFuZGxpbmcgd2hlbiBhdmFpbGFibGVcbiAgICAgIC8vIG90aGVyd2lzZSBmYWxsYmFjayB0byBicm93c2VyJ3MgZGVmYXVsdCBoYW5kbGluZ1xuICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9TQ1JPTExfUkVTVE9SQVRJT04pIHtcbiAgICAgICAgaWYgKG1hbnVhbFNjcm9sbFJlc3RvcmF0aW9uKSB7XG4gICAgICAgICAgd2luZG93Lmhpc3Rvcnkuc2Nyb2xsUmVzdG9yYXRpb24gPSAnbWFudWFsJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb25Qb3BTdGF0ZSA9IChlOiBQb3BTdGF0ZUV2ZW50KTogdm9pZCA9PiB7XG4gICAgY29uc3Qgc3RhdGUgPSBlLnN0YXRlIGFzIEhpc3RvcnlTdGF0ZVxuXG4gICAgaWYgKCFzdGF0ZSkge1xuICAgICAgLy8gV2UgZ2V0IHN0YXRlIGFzIHVuZGVmaW5lZCBmb3IgdHdvIHJlYXNvbnMuXG4gICAgICAvLyAgMS4gV2l0aCBvbGRlciBzYWZhcmkgKDwgOCkgYW5kIG9sZGVyIGNocm9tZSAoPCAzNClcbiAgICAgIC8vICAyLiBXaGVuIHRoZSBVUkwgY2hhbmdlZCB3aXRoICNcbiAgICAgIC8vXG4gICAgICAvLyBJbiB0aGUgYm90aCBjYXNlcywgd2UgZG9uJ3QgbmVlZCB0byBwcm9jZWVkIGFuZCBjaGFuZ2UgdGhlIHJvdXRlLlxuICAgICAgLy8gKGFzIGl0J3MgYWxyZWFkeSBjaGFuZ2VkKVxuICAgICAgLy8gQnV0IHdlIGNhbiBzaW1wbHkgcmVwbGFjZSB0aGUgc3RhdGUgd2l0aCB0aGUgbmV3IGNoYW5nZXMuXG4gICAgICAvLyBBY3R1YWxseSwgZm9yICgxKSB3ZSBkb24ndCBuZWVkIHRvIG5vdGhpbmcuIEJ1dCBpdCdzIGhhcmQgdG8gZGV0ZWN0IHRoYXQgZXZlbnQuXG4gICAgICAvLyBTbywgZG9pbmcgdGhlIGZvbGxvd2luZyBmb3IgKDEpIGRvZXMgbm8gaGFybS5cbiAgICAgIGNvbnN0IHsgcGF0aG5hbWUsIHF1ZXJ5IH0gPSB0aGlzXG4gICAgICB0aGlzLmNoYW5nZVN0YXRlKFxuICAgICAgICAncmVwbGFjZVN0YXRlJyxcbiAgICAgICAgZm9ybWF0V2l0aFZhbGlkYXRpb24oeyBwYXRobmFtZTogYWRkQmFzZVBhdGgocGF0aG5hbWUpLCBxdWVyeSB9KSxcbiAgICAgICAgZ2V0VVJMKClcbiAgICAgIClcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghc3RhdGUuX19OKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBsZXQgZm9yY2VkU2Nyb2xsOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH0gfCB1bmRlZmluZWRcbiAgICBjb25zdCB7IHVybCwgYXMsIG9wdGlvbnMsIGlkeCB9ID0gc3RhdGVcbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX1NDUk9MTF9SRVNUT1JBVElPTikge1xuICAgICAgaWYgKG1hbnVhbFNjcm9sbFJlc3RvcmF0aW9uKSB7XG4gICAgICAgIGlmICh0aGlzLl9pZHggIT09IGlkeCkge1xuICAgICAgICAgIC8vIFNuYXBzaG90IGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uOlxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgICAgICAgICAnX19uZXh0X3Njcm9sbF8nICsgdGhpcy5faWR4LFxuICAgICAgICAgICAgICBKU09OLnN0cmluZ2lmeSh7IHg6IHNlbGYucGFnZVhPZmZzZXQsIHk6IHNlbGYucGFnZVlPZmZzZXQgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9IGNhdGNoIHt9XG5cbiAgICAgICAgICAvLyBSZXN0b3JlIG9sZCBzY3JvbGwgcG9zaXRpb246XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHYgPSBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdfX25leHRfc2Nyb2xsXycgKyBpZHgpXG4gICAgICAgICAgICBmb3JjZWRTY3JvbGwgPSBKU09OLnBhcnNlKHYhKVxuICAgICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgZm9yY2VkU2Nyb2xsID0geyB4OiAwLCB5OiAwIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5faWR4ID0gaWR4XG5cbiAgICBjb25zdCB7IHBhdGhuYW1lIH0gPSBwYXJzZVJlbGF0aXZlVXJsKHVybClcblxuICAgIC8vIE1ha2Ugc3VyZSB3ZSBkb24ndCByZS1yZW5kZXIgb24gaW5pdGlhbCBsb2FkLFxuICAgIC8vIGNhbiBiZSBjYXVzZWQgYnkgbmF2aWdhdGluZyBiYWNrIGZyb20gYW4gZXh0ZXJuYWwgc2l0ZVxuICAgIGlmICh0aGlzLmlzU3NyICYmIGFzID09PSB0aGlzLmFzUGF0aCAmJiBwYXRobmFtZSA9PT0gdGhpcy5wYXRobmFtZSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIGRvd25zdHJlYW0gYXBwbGljYXRpb24gcmV0dXJucyBmYWxzeSwgcmV0dXJuLlxuICAgIC8vIFRoZXkgd2lsbCB0aGVuIGJlIHJlc3BvbnNpYmxlIGZvciBoYW5kbGluZyB0aGUgZXZlbnQuXG4gICAgaWYgKHRoaXMuX2JwcyAmJiAhdGhpcy5fYnBzKHN0YXRlKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdGhpcy5jaGFuZ2UoXG4gICAgICAncmVwbGFjZVN0YXRlJyxcbiAgICAgIHVybCxcbiAgICAgIGFzLFxuICAgICAgT2JqZWN0LmFzc2lnbjx7fSwgVHJhbnNpdGlvbk9wdGlvbnMsIFRyYW5zaXRpb25PcHRpb25zPih7fSwgb3B0aW9ucywge1xuICAgICAgICBzaGFsbG93OiBvcHRpb25zLnNoYWxsb3cgJiYgdGhpcy5fc2hhbGxvdyxcbiAgICAgICAgbG9jYWxlOiBvcHRpb25zLmxvY2FsZSB8fCB0aGlzLmRlZmF1bHRMb2NhbGUsXG4gICAgICB9KSxcbiAgICAgIGZvcmNlZFNjcm9sbFxuICAgIClcbiAgfVxuXG4gIHJlbG9hZCgpOiB2b2lkIHtcbiAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKClcbiAgfVxuXG4gIC8qKlxuICAgKiBHbyBiYWNrIGluIGhpc3RvcnlcbiAgICovXG4gIGJhY2soKSB7XG4gICAgd2luZG93Lmhpc3RvcnkuYmFjaygpXG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgYSBgcHVzaFN0YXRlYCB3aXRoIGFyZ3VtZW50c1xuICAgKiBAcGFyYW0gdXJsIG9mIHRoZSByb3V0ZVxuICAgKiBAcGFyYW0gYXMgbWFza3MgYHVybGAgZm9yIHRoZSBicm93c2VyXG4gICAqIEBwYXJhbSBvcHRpb25zIG9iamVjdCB5b3UgY2FuIGRlZmluZSBgc2hhbGxvd2AgYW5kIG90aGVyIG9wdGlvbnNcbiAgICovXG4gIHB1c2godXJsOiBVcmwsIGFzPzogVXJsLCBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucyA9IHt9KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9TQ1JPTExfUkVTVE9SQVRJT04pIHtcbiAgICAgIC8vIFRPRE86IHJlbW92ZSBpbiB0aGUgZnV0dXJlIHdoZW4gd2UgdXBkYXRlIGhpc3RvcnkgYmVmb3JlIHJvdXRlIGNoYW5nZVxuICAgICAgLy8gaXMgY29tcGxldGUsIGFzIHRoZSBwb3BzdGF0ZSBldmVudCBzaG91bGQgaGFuZGxlIHRoaXMgY2FwdHVyZS5cbiAgICAgIGlmIChtYW51YWxTY3JvbGxSZXN0b3JhdGlvbikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIFNuYXBzaG90IHNjcm9sbCBwb3NpdGlvbiByaWdodCBiZWZvcmUgbmF2aWdhdGluZyB0byBhIG5ldyBwYWdlOlxuICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXG4gICAgICAgICAgICAnX19uZXh0X3Njcm9sbF8nICsgdGhpcy5faWR4LFxuICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkoeyB4OiBzZWxmLnBhZ2VYT2Zmc2V0LCB5OiBzZWxmLnBhZ2VZT2Zmc2V0IH0pXG4gICAgICAgICAgKVxuICAgICAgICB9IGNhdGNoIHt9XG4gICAgICB9XG4gICAgfVxuICAgIDsoeyB1cmwsIGFzIH0gPSBwcmVwYXJlVXJsQXModGhpcywgdXJsLCBhcykpXG4gICAgcmV0dXJuIHRoaXMuY2hhbmdlKCdwdXNoU3RhdGUnLCB1cmwsIGFzLCBvcHRpb25zKVxuICB9XG5cbiAgLyoqXG4gICAqIFBlcmZvcm1zIGEgYHJlcGxhY2VTdGF0ZWAgd2l0aCBhcmd1bWVudHNcbiAgICogQHBhcmFtIHVybCBvZiB0aGUgcm91dGVcbiAgICogQHBhcmFtIGFzIG1hc2tzIGB1cmxgIGZvciB0aGUgYnJvd3NlclxuICAgKiBAcGFyYW0gb3B0aW9ucyBvYmplY3QgeW91IGNhbiBkZWZpbmUgYHNoYWxsb3dgIGFuZCBvdGhlciBvcHRpb25zXG4gICAqL1xuICByZXBsYWNlKHVybDogVXJsLCBhcz86IFVybCwgb3B0aW9uczogVHJhbnNpdGlvbk9wdGlvbnMgPSB7fSkge1xuICAgIDsoeyB1cmwsIGFzIH0gPSBwcmVwYXJlVXJsQXModGhpcywgdXJsLCBhcykpXG4gICAgcmV0dXJuIHRoaXMuY2hhbmdlKCdyZXBsYWNlU3RhdGUnLCB1cmwsIGFzLCBvcHRpb25zKVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjaGFuZ2UoXG4gICAgbWV0aG9kOiBIaXN0b3J5TWV0aG9kLFxuICAgIHVybDogc3RyaW5nLFxuICAgIGFzOiBzdHJpbmcsXG4gICAgb3B0aW9uczogVHJhbnNpdGlvbk9wdGlvbnMsXG4gICAgZm9yY2VkU2Nyb2xsPzogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9XG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmICghaXNMb2NhbFVSTCh1cmwpKSB7XG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybFxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgLy8gZm9yIHN0YXRpYyBwYWdlcyB3aXRoIHF1ZXJ5IHBhcmFtcyBpbiB0aGUgVVJMIHdlIGRlbGF5XG4gICAgLy8gbWFya2luZyB0aGUgcm91dGVyIHJlYWR5IHVudGlsIGFmdGVyIHRoZSBxdWVyeSBpcyB1cGRhdGVkXG4gICAgaWYgKChvcHRpb25zIGFzIGFueSkuX2gpIHtcbiAgICAgIHRoaXMuaXNSZWFkeSA9IHRydWVcbiAgICB9XG5cbiAgICAvLyBEZWZhdWx0IHRvIHNjcm9sbCByZXNldCBiZWhhdmlvciB1bmxlc3MgZXhwbGljaXRseSBzcGVjaWZpZWQgdG8gYmVcbiAgICAvLyBgZmFsc2VgISBUaGlzIG1ha2VzIHRoZSBiZWhhdmlvciBiZXR3ZWVuIHVzaW5nIGBSb3V0ZXIjcHVzaGAgYW5kIGFcbiAgICAvLyBgPExpbmsgLz5gIGNvbnNpc3RlbnQuXG4gICAgb3B0aW9ucy5zY3JvbGwgPSAhIShvcHRpb25zLnNjcm9sbCA/PyB0cnVlKVxuXG4gICAgbGV0IGxvY2FsZUNoYW5nZSA9IG9wdGlvbnMubG9jYWxlICE9PSB0aGlzLmxvY2FsZVxuXG4gICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICAgIHRoaXMubG9jYWxlID1cbiAgICAgICAgb3B0aW9ucy5sb2NhbGUgPT09IGZhbHNlXG4gICAgICAgICAgPyB0aGlzLmRlZmF1bHRMb2NhbGVcbiAgICAgICAgICA6IG9wdGlvbnMubG9jYWxlIHx8IHRoaXMubG9jYWxlXG5cbiAgICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5sb2NhbGUgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIG9wdGlvbnMubG9jYWxlID0gdGhpcy5sb2NhbGVcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGFyc2VkQXMgPSBwYXJzZVJlbGF0aXZlVXJsKGhhc0Jhc2VQYXRoKGFzKSA/IGRlbEJhc2VQYXRoKGFzKSA6IGFzKVxuICAgICAgY29uc3QgbG9jYWxlUGF0aFJlc3VsdCA9IG5vcm1hbGl6ZUxvY2FsZVBhdGgoXG4gICAgICAgIHBhcnNlZEFzLnBhdGhuYW1lLFxuICAgICAgICB0aGlzLmxvY2FsZXNcbiAgICAgIClcblxuICAgICAgaWYgKGxvY2FsZVBhdGhSZXN1bHQuZGV0ZWN0ZWRMb2NhbGUpIHtcbiAgICAgICAgdGhpcy5sb2NhbGUgPSBsb2NhbGVQYXRoUmVzdWx0LmRldGVjdGVkTG9jYWxlXG4gICAgICAgIHBhcnNlZEFzLnBhdGhuYW1lID0gYWRkQmFzZVBhdGgocGFyc2VkQXMucGF0aG5hbWUpXG4gICAgICAgIGFzID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkQXMpXG4gICAgICAgIHVybCA9IGFkZEJhc2VQYXRoKFxuICAgICAgICAgIG5vcm1hbGl6ZUxvY2FsZVBhdGgoXG4gICAgICAgICAgICBoYXNCYXNlUGF0aCh1cmwpID8gZGVsQmFzZVBhdGgodXJsKSA6IHVybCxcbiAgICAgICAgICAgIHRoaXMubG9jYWxlc1xuICAgICAgICAgICkucGF0aG5hbWVcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgbGV0IGRpZE5hdmlnYXRlID0gZmFsc2VcblxuICAgICAgLy8gd2UgbmVlZCB0byB3cmFwIHRoaXMgaW4gdGhlIGVudiBjaGVjayBhZ2FpbiBzaW5jZSByZWdlbmVyYXRvciBydW50aW1lXG4gICAgICAvLyBtb3ZlcyB0aGlzIG9uIGl0cyBvd24gZHVlIHRvIHRoZSByZXR1cm5cbiAgICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gICAgICAgIC8vIGlmIHRoZSBsb2NhbGUgaXNuJ3QgY29uZmlndXJlZCBoYXJkIG5hdmlnYXRlIHRvIHNob3cgNDA0IHBhZ2VcbiAgICAgICAgaWYgKCF0aGlzLmxvY2FsZXM/LmluY2x1ZGVzKHRoaXMubG9jYWxlISkpIHtcbiAgICAgICAgICBwYXJzZWRBcy5wYXRobmFtZSA9IGFkZExvY2FsZShwYXJzZWRBcy5wYXRobmFtZSwgdGhpcy5sb2NhbGUpXG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWRBcylcbiAgICAgICAgICAvLyB0aGlzIHdhcyBwcmV2aW91c2x5IGEgcmV0dXJuIGJ1dCB3YXMgcmVtb3ZlZCBpbiBmYXZvclxuICAgICAgICAgIC8vIG9mIGJldHRlciBkZWFkIGNvZGUgZWxpbWluYXRpb24gd2l0aCByZWdlbmVyYXRvciBydW50aW1lXG4gICAgICAgICAgZGlkTmF2aWdhdGUgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgZGV0ZWN0ZWREb21haW4gPSBkZXRlY3REb21haW5Mb2NhbGUoXG4gICAgICAgIHRoaXMuZG9tYWluTG9jYWxlcyxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICB0aGlzLmxvY2FsZVxuICAgICAgKVxuXG4gICAgICAvLyB3ZSBuZWVkIHRvIHdyYXAgdGhpcyBpbiB0aGUgZW52IGNoZWNrIGFnYWluIHNpbmNlIHJlZ2VuZXJhdG9yIHJ1bnRpbWVcbiAgICAgIC8vIG1vdmVzIHRoaXMgb24gaXRzIG93biBkdWUgdG8gdGhlIHJldHVyblxuICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICAgICAgLy8gaWYgd2UgYXJlIG5hdmlnYXRpbmcgdG8gYSBkb21haW4gbG9jYWxlIGVuc3VyZSB3ZSByZWRpcmVjdCB0byB0aGVcbiAgICAgICAgLy8gY29ycmVjdCBkb21haW5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICFkaWROYXZpZ2F0ZSAmJlxuICAgICAgICAgIGRldGVjdGVkRG9tYWluICYmXG4gICAgICAgICAgdGhpcy5pc0xvY2FsZURvbWFpbiAmJlxuICAgICAgICAgIHNlbGYubG9jYXRpb24uaG9zdG5hbWUgIT09IGRldGVjdGVkRG9tYWluLmRvbWFpblxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBhc05vQmFzZVBhdGggPSBkZWxCYXNlUGF0aChhcylcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGBodHRwJHtkZXRlY3RlZERvbWFpbi5odHRwID8gJycgOiAncyd9Oi8vJHtcbiAgICAgICAgICAgIGRldGVjdGVkRG9tYWluLmRvbWFpblxuICAgICAgICAgIH0ke2FkZEJhc2VQYXRoKFxuICAgICAgICAgICAgYCR7XG4gICAgICAgICAgICAgIHRoaXMubG9jYWxlID09PSBkZXRlY3RlZERvbWFpbi5kZWZhdWx0TG9jYWxlXG4gICAgICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgICAgIDogYC8ke3RoaXMubG9jYWxlfWBcbiAgICAgICAgICAgIH0ke2FzTm9CYXNlUGF0aCA9PT0gJy8nID8gJycgOiBhc05vQmFzZVBhdGh9YCB8fCAnLydcbiAgICAgICAgICApfWBcbiAgICAgICAgICAvLyB0aGlzIHdhcyBwcmV2aW91c2x5IGEgcmV0dXJuIGJ1dCB3YXMgcmVtb3ZlZCBpbiBmYXZvclxuICAgICAgICAgIC8vIG9mIGJldHRlciBkZWFkIGNvZGUgZWxpbWluYXRpb24gd2l0aCByZWdlbmVyYXRvciBydW50aW1lXG4gICAgICAgICAgZGlkTmF2aWdhdGUgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGRpZE5hdmlnYXRlKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgoKSA9PiB7fSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoIShvcHRpb25zIGFzIGFueSkuX2gpIHtcbiAgICAgIHRoaXMuaXNTc3IgPSBmYWxzZVxuICAgIH1cbiAgICAvLyBtYXJraW5nIHJvdXRlIGNoYW5nZXMgYXMgYSBuYXZpZ2F0aW9uIHN0YXJ0IGVudHJ5XG4gICAgaWYgKFNUKSB7XG4gICAgICBwZXJmb3JtYW5jZS5tYXJrKCdyb3V0ZUNoYW5nZScpXG4gICAgfVxuXG4gICAgY29uc3QgeyBzaGFsbG93ID0gZmFsc2UgfSA9IG9wdGlvbnNcbiAgICBjb25zdCByb3V0ZVByb3BzID0geyBzaGFsbG93IH1cblxuICAgIGlmICh0aGlzLl9pbkZsaWdodFJvdXRlKSB7XG4gICAgICB0aGlzLmFib3J0Q29tcG9uZW50TG9hZCh0aGlzLl9pbkZsaWdodFJvdXRlLCByb3V0ZVByb3BzKVxuICAgIH1cblxuICAgIGFzID0gYWRkQmFzZVBhdGgoXG4gICAgICBhZGRMb2NhbGUoXG4gICAgICAgIGhhc0Jhc2VQYXRoKGFzKSA/IGRlbEJhc2VQYXRoKGFzKSA6IGFzLFxuICAgICAgICBvcHRpb25zLmxvY2FsZSxcbiAgICAgICAgdGhpcy5kZWZhdWx0TG9jYWxlXG4gICAgICApXG4gICAgKVxuICAgIGNvbnN0IGNsZWFuZWRBcyA9IGRlbExvY2FsZShcbiAgICAgIGhhc0Jhc2VQYXRoKGFzKSA/IGRlbEJhc2VQYXRoKGFzKSA6IGFzLFxuICAgICAgdGhpcy5sb2NhbGVcbiAgICApXG4gICAgdGhpcy5faW5GbGlnaHRSb3V0ZSA9IGFzXG5cbiAgICAvLyBJZiB0aGUgdXJsIGNoYW5nZSBpcyBvbmx5IHJlbGF0ZWQgdG8gYSBoYXNoIGNoYW5nZVxuICAgIC8vIFdlIHNob3VsZCBub3QgcHJvY2VlZC4gV2Ugc2hvdWxkIG9ubHkgY2hhbmdlIHRoZSBzdGF0ZS5cblxuICAgIC8vIFdBUk5JTkc6IGBfaGAgaXMgYW4gaW50ZXJuYWwgb3B0aW9uIGZvciBoYW5kaW5nIE5leHQuanMgY2xpZW50LXNpZGVcbiAgICAvLyBoeWRyYXRpb24uIFlvdXIgYXBwIHNob3VsZCBfbmV2ZXJfIHVzZSB0aGlzIHByb3BlcnR5LiBJdCBtYXkgY2hhbmdlIGF0XG4gICAgLy8gYW55IHRpbWUgd2l0aG91dCBub3RpY2UuXG4gICAgaWYgKCEob3B0aW9ucyBhcyBhbnkpLl9oICYmIHRoaXMub25seUFIYXNoQ2hhbmdlKGNsZWFuZWRBcykpIHtcbiAgICAgIHRoaXMuYXNQYXRoID0gY2xlYW5lZEFzXG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ2hhc2hDaGFuZ2VTdGFydCcsIGFzLCByb3V0ZVByb3BzKVxuICAgICAgLy8gVE9ETzogZG8gd2UgbmVlZCB0aGUgcmVzb2x2ZWQgaHJlZiB3aGVuIG9ubHkgYSBoYXNoIGNoYW5nZT9cbiAgICAgIHRoaXMuY2hhbmdlU3RhdGUobWV0aG9kLCB1cmwsIGFzLCBvcHRpb25zKVxuICAgICAgdGhpcy5zY3JvbGxUb0hhc2goY2xlYW5lZEFzKVxuICAgICAgdGhpcy5ub3RpZnkodGhpcy5jb21wb25lbnRzW3RoaXMucm91dGVdLCBudWxsKVxuICAgICAgUm91dGVyLmV2ZW50cy5lbWl0KCdoYXNoQ2hhbmdlQ29tcGxldGUnLCBhcywgcm91dGVQcm9wcylcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgbGV0IHBhcnNlZCA9IHBhcnNlUmVsYXRpdmVVcmwodXJsKVxuICAgIGxldCB7IHBhdGhuYW1lLCBxdWVyeSB9ID0gcGFyc2VkXG5cbiAgICAvLyBUaGUgYnVpbGQgbWFuaWZlc3QgbmVlZHMgdG8gYmUgbG9hZGVkIGJlZm9yZSBhdXRvLXN0YXRpYyBkeW5hbWljIHBhZ2VzXG4gICAgLy8gZ2V0IHRoZWlyIHF1ZXJ5IHBhcmFtZXRlcnMgdG8gYWxsb3cgZW5zdXJpbmcgdGhleSBjYW4gYmUgcGFyc2VkIHByb3Blcmx5XG4gICAgLy8gd2hlbiByZXdyaXR0ZW4gdG9cbiAgICBsZXQgcGFnZXM6IGFueSwgcmV3cml0ZXM6IGFueVxuICAgIHRyeSB7XG4gICAgICBwYWdlcyA9IGF3YWl0IHRoaXMucGFnZUxvYWRlci5nZXRQYWdlTGlzdCgpXG4gICAgICA7KHsgX19yZXdyaXRlczogcmV3cml0ZXMgfSA9IGF3YWl0IGdldENsaWVudEJ1aWxkTWFuaWZlc3QoKSlcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIElmIHdlIGZhaWwgdG8gcmVzb2x2ZSB0aGUgcGFnZSBsaXN0IG9yIGNsaWVudC1idWlsZCBtYW5pZmVzdCwgd2UgbXVzdFxuICAgICAgLy8gZG8gYSBzZXJ2ZXItc2lkZSB0cmFuc2l0aW9uOlxuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBhc1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgcGFyc2VkID0gcmVzb2x2ZUR5bmFtaWNSb3V0ZShwYXJzZWQsIHBhZ2VzKSBhcyB0eXBlb2YgcGFyc2VkXG5cbiAgICBpZiAocGFyc2VkLnBhdGhuYW1lICE9PSBwYXRobmFtZSkge1xuICAgICAgcGF0aG5hbWUgPSBwYXJzZWQucGF0aG5hbWVcbiAgICAgIHVybCA9IGZvcm1hdFdpdGhWYWxpZGF0aW9uKHBhcnNlZClcbiAgICB9XG5cbiAgICAvLyB1cmwgYW5kIGFzIHNob3VsZCBhbHdheXMgYmUgcHJlZml4ZWQgd2l0aCBiYXNlUGF0aCBieSB0aGlzXG4gICAgLy8gcG9pbnQgYnkgZWl0aGVyIG5leHQvbGluayBvciByb3V0ZXIucHVzaC9yZXBsYWNlIHNvIHN0cmlwIHRoZVxuICAgIC8vIGJhc2VQYXRoIGZyb20gdGhlIHBhdGhuYW1lIHRvIG1hdGNoIHRoZSBwYWdlcyBkaXIgMS10by0xXG4gICAgcGF0aG5hbWUgPSBwYXRobmFtZVxuICAgICAgPyByZW1vdmVQYXRoVHJhaWxpbmdTbGFzaChkZWxCYXNlUGF0aChwYXRobmFtZSkpXG4gICAgICA6IHBhdGhuYW1lXG5cbiAgICAvLyBJZiBhc2tlZCB0byBjaGFuZ2UgdGhlIGN1cnJlbnQgVVJMIHdlIHNob3VsZCByZWxvYWQgdGhlIGN1cnJlbnQgcGFnZVxuICAgIC8vIChub3QgbG9jYXRpb24ucmVsb2FkKCkgYnV0IHJlbG9hZCBnZXRJbml0aWFsUHJvcHMgYW5kIG90aGVyIE5leHQuanMgc3R1ZmZzKVxuICAgIC8vIFdlIGFsc28gbmVlZCB0byBzZXQgdGhlIG1ldGhvZCA9IHJlcGxhY2VTdGF0ZSBhbHdheXNcbiAgICAvLyBhcyB0aGlzIHNob3VsZCBub3QgZ28gaW50byB0aGUgaGlzdG9yeSAoVGhhdCdzIGhvdyBicm93c2VycyB3b3JrKVxuICAgIC8vIFdlIHNob3VsZCBjb21wYXJlIHRoZSBuZXcgYXNQYXRoIHRvIHRoZSBjdXJyZW50IGFzUGF0aCwgbm90IHRoZSB1cmxcbiAgICBpZiAoIXRoaXMudXJsSXNOZXcoY2xlYW5lZEFzKSAmJiAhbG9jYWxlQ2hhbmdlKSB7XG4gICAgICBtZXRob2QgPSAncmVwbGFjZVN0YXRlJ1xuICAgIH1cblxuICAgIGxldCByb3V0ZSA9IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhdGhuYW1lKVxuXG4gICAgLy8gd2UgbmVlZCB0byByZXNvbHZlIHRoZSBhcyB2YWx1ZSB1c2luZyByZXdyaXRlcyBmb3IgZHluYW1pYyBTU0dcbiAgICAvLyBwYWdlcyB0byBhbGxvdyBidWlsZGluZyB0aGUgZGF0YSBVUkwgY29ycmVjdGx5XG4gICAgbGV0IHJlc29sdmVkQXMgPSBhc1xuXG4gICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9IQVNfUkVXUklURVMgJiYgYXMuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICBjb25zdCByZXdyaXRlc1Jlc3VsdCA9IHJlc29sdmVSZXdyaXRlcyhcbiAgICAgICAgYWRkQmFzZVBhdGgoYWRkTG9jYWxlKGRlbEJhc2VQYXRoKGFzKSwgdGhpcy5sb2NhbGUpKSxcbiAgICAgICAgcGFnZXMsXG4gICAgICAgIHJld3JpdGVzLFxuICAgICAgICBxdWVyeSxcbiAgICAgICAgKHA6IHN0cmluZykgPT4gcmVzb2x2ZUR5bmFtaWNSb3V0ZSh7IHBhdGhuYW1lOiBwIH0sIHBhZ2VzKS5wYXRobmFtZSEsXG4gICAgICAgIHRoaXMubG9jYWxlc1xuICAgICAgKVxuICAgICAgcmVzb2x2ZWRBcyA9IHJld3JpdGVzUmVzdWx0LmFzUGF0aFxuXG4gICAgICBpZiAocmV3cml0ZXNSZXN1bHQubWF0Y2hlZFBhZ2UgJiYgcmV3cml0ZXNSZXN1bHQucmVzb2x2ZWRIcmVmKSB7XG4gICAgICAgIC8vIGlmIHRoaXMgZGlyZWN0bHkgbWF0Y2hlcyBhIHBhZ2Ugd2UgbmVlZCB0byB1cGRhdGUgdGhlIGhyZWYgdG9cbiAgICAgICAgLy8gYWxsb3cgdGhlIGNvcnJlY3QgcGFnZSBjaHVuayB0byBiZSBsb2FkZWRcbiAgICAgICAgcm91dGUgPSByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWZcbiAgICAgICAgcGF0aG5hbWUgPSByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWZcbiAgICAgICAgcGFyc2VkLnBhdGhuYW1lID0gcGF0aG5hbWVcbiAgICAgICAgdXJsID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkKVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghaXNMb2NhbFVSTChhcykpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgSW52YWxpZCBocmVmOiBcIiR7dXJsfVwiIGFuZCBhczogXCIke2FzfVwiLCByZWNlaXZlZCByZWxhdGl2ZSBocmVmIGFuZCBleHRlcm5hbCBhc2AgK1xuICAgICAgICAgICAgYFxcblNlZSBtb3JlIGluZm86IGh0dHBzOi8vZXJyLnNoL25leHQuanMvaW52YWxpZC1yZWxhdGl2ZS11cmwtZXh0ZXJuYWwtYXNgXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBhc1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgcmVzb2x2ZWRBcyA9IGRlbExvY2FsZShkZWxCYXNlUGF0aChyZXNvbHZlZEFzKSwgdGhpcy5sb2NhbGUpXG5cbiAgICBpZiAoaXNEeW5hbWljUm91dGUocm91dGUpKSB7XG4gICAgICBjb25zdCBwYXJzZWRBcyA9IHBhcnNlUmVsYXRpdmVVcmwocmVzb2x2ZWRBcylcbiAgICAgIGNvbnN0IGFzUGF0aG5hbWUgPSBwYXJzZWRBcy5wYXRobmFtZVxuXG4gICAgICBjb25zdCByb3V0ZVJlZ2V4ID0gZ2V0Um91dGVSZWdleChyb3V0ZSlcbiAgICAgIGNvbnN0IHJvdXRlTWF0Y2ggPSBnZXRSb3V0ZU1hdGNoZXIocm91dGVSZWdleCkoYXNQYXRobmFtZSlcbiAgICAgIGNvbnN0IHNob3VsZEludGVycG9sYXRlID0gcm91dGUgPT09IGFzUGF0aG5hbWVcbiAgICAgIGNvbnN0IGludGVycG9sYXRlZEFzID0gc2hvdWxkSW50ZXJwb2xhdGVcbiAgICAgICAgPyBpbnRlcnBvbGF0ZUFzKHJvdXRlLCBhc1BhdGhuYW1lLCBxdWVyeSlcbiAgICAgICAgOiAoe30gYXMgeyByZXN1bHQ6IHVuZGVmaW5lZDsgcGFyYW1zOiB1bmRlZmluZWQgfSlcblxuICAgICAgaWYgKCFyb3V0ZU1hdGNoIHx8IChzaG91bGRJbnRlcnBvbGF0ZSAmJiAhaW50ZXJwb2xhdGVkQXMucmVzdWx0KSkge1xuICAgICAgICBjb25zdCBtaXNzaW5nUGFyYW1zID0gT2JqZWN0LmtleXMocm91dGVSZWdleC5ncm91cHMpLmZpbHRlcihcbiAgICAgICAgICAocGFyYW0pID0+ICFxdWVyeVtwYXJhbV1cbiAgICAgICAgKVxuXG4gICAgICAgIGlmIChtaXNzaW5nUGFyYW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICBgJHtcbiAgICAgICAgICAgICAgICBzaG91bGRJbnRlcnBvbGF0ZVxuICAgICAgICAgICAgICAgICAgPyBgSW50ZXJwb2xhdGluZyBocmVmYFxuICAgICAgICAgICAgICAgICAgOiBgTWlzbWF0Y2hpbmcgXFxgYXNcXGAgYW5kIFxcYGhyZWZcXGBgXG4gICAgICAgICAgICAgIH0gZmFpbGVkIHRvIG1hbnVhbGx5IHByb3ZpZGUgYCArXG4gICAgICAgICAgICAgICAgYHRoZSBwYXJhbXM6ICR7bWlzc2luZ1BhcmFtcy5qb2luKFxuICAgICAgICAgICAgICAgICAgJywgJ1xuICAgICAgICAgICAgICAgICl9IGluIHRoZSBcXGBocmVmXFxgJ3MgXFxgcXVlcnlcXGBgXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgKHNob3VsZEludGVycG9sYXRlXG4gICAgICAgICAgICAgID8gYFRoZSBwcm92aWRlZCBcXGBocmVmXFxgICgke3VybH0pIHZhbHVlIGlzIG1pc3NpbmcgcXVlcnkgdmFsdWVzICgke21pc3NpbmdQYXJhbXMuam9pbihcbiAgICAgICAgICAgICAgICAgICcsICdcbiAgICAgICAgICAgICAgICApfSkgdG8gYmUgaW50ZXJwb2xhdGVkIHByb3Blcmx5LiBgXG4gICAgICAgICAgICAgIDogYFRoZSBwcm92aWRlZCBcXGBhc1xcYCB2YWx1ZSAoJHthc1BhdGhuYW1lfSkgaXMgaW5jb21wYXRpYmxlIHdpdGggdGhlIFxcYGhyZWZcXGAgdmFsdWUgKCR7cm91dGV9KS4gYCkgK1xuICAgICAgICAgICAgICBgUmVhZCBtb3JlOiBodHRwczovL2Vyci5zaC92ZXJjZWwvbmV4dC5qcy8ke1xuICAgICAgICAgICAgICAgIHNob3VsZEludGVycG9sYXRlXG4gICAgICAgICAgICAgICAgICA/ICdocmVmLWludGVycG9sYXRpb24tZmFpbGVkJ1xuICAgICAgICAgICAgICAgICAgOiAnaW5jb21wYXRpYmxlLWhyZWYtYXMnXG4gICAgICAgICAgICAgIH1gXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHNob3VsZEludGVycG9sYXRlKSB7XG4gICAgICAgIGFzID0gZm9ybWF0V2l0aFZhbGlkYXRpb24oXG4gICAgICAgICAgT2JqZWN0LmFzc2lnbih7fSwgcGFyc2VkQXMsIHtcbiAgICAgICAgICAgIHBhdGhuYW1lOiBpbnRlcnBvbGF0ZWRBcy5yZXN1bHQsXG4gICAgICAgICAgICBxdWVyeTogb21pdFBhcm1zRnJvbVF1ZXJ5KHF1ZXJ5LCBpbnRlcnBvbGF0ZWRBcy5wYXJhbXMhKSxcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBNZXJnZSBwYXJhbXMgaW50byBgcXVlcnlgLCBvdmVyd3JpdGluZyBhbnkgc3BlY2lmaWVkIGluIHNlYXJjaFxuICAgICAgICBPYmplY3QuYXNzaWduKHF1ZXJ5LCByb3V0ZU1hdGNoKVxuICAgICAgfVxuICAgIH1cblxuICAgIFJvdXRlci5ldmVudHMuZW1pdCgncm91dGVDaGFuZ2VTdGFydCcsIGFzLCByb3V0ZVByb3BzKVxuXG4gICAgdHJ5IHtcbiAgICAgIGxldCByb3V0ZUluZm8gPSBhd2FpdCB0aGlzLmdldFJvdXRlSW5mbyhcbiAgICAgICAgcm91dGUsXG4gICAgICAgIHBhdGhuYW1lLFxuICAgICAgICBxdWVyeSxcbiAgICAgICAgYXMsXG4gICAgICAgIHJlc29sdmVkQXMsXG4gICAgICAgIHJvdXRlUHJvcHNcbiAgICAgIClcbiAgICAgIGxldCB7IGVycm9yLCBwcm9wcywgX19OX1NTRywgX19OX1NTUCB9ID0gcm91dGVJbmZvXG5cbiAgICAgIC8vIGhhbmRsZSByZWRpcmVjdCBvbiBjbGllbnQtdHJhbnNpdGlvblxuICAgICAgaWYgKChfX05fU1NHIHx8IF9fTl9TU1ApICYmIHByb3BzKSB7XG4gICAgICAgIGlmICgocHJvcHMgYXMgYW55KS5wYWdlUHJvcHMgJiYgKHByb3BzIGFzIGFueSkucGFnZVByb3BzLl9fTl9SRURJUkVDVCkge1xuICAgICAgICAgIGNvbnN0IGRlc3RpbmF0aW9uID0gKHByb3BzIGFzIGFueSkucGFnZVByb3BzLl9fTl9SRURJUkVDVFxuXG4gICAgICAgICAgLy8gY2hlY2sgaWYgZGVzdGluYXRpb24gaXMgaW50ZXJuYWwgKHJlc29sdmVzIHRvIGEgcGFnZSkgYW5kIGF0dGVtcHRcbiAgICAgICAgICAvLyBjbGllbnQtbmF2aWdhdGlvbiBpZiBpdCBpcyBmYWxsaW5nIGJhY2sgdG8gaGFyZCBuYXZpZ2F0aW9uIGlmXG4gICAgICAgICAgLy8gaXQncyBub3RcbiAgICAgICAgICBpZiAoZGVzdGluYXRpb24uc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWRIcmVmID0gcGFyc2VSZWxhdGl2ZVVybChkZXN0aW5hdGlvbilcbiAgICAgICAgICAgIHJlc29sdmVEeW5hbWljUm91dGUocGFyc2VkSHJlZiwgcGFnZXMsIGZhbHNlKVxuXG4gICAgICAgICAgICBpZiAocGFnZXMuaW5jbHVkZXMocGFyc2VkSHJlZi5wYXRobmFtZSkpIHtcbiAgICAgICAgICAgICAgY29uc3QgeyB1cmw6IG5ld1VybCwgYXM6IG5ld0FzIH0gPSBwcmVwYXJlVXJsQXMoXG4gICAgICAgICAgICAgICAgdGhpcyxcbiAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbixcbiAgICAgICAgICAgICAgICBkZXN0aW5hdGlvblxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmNoYW5nZShtZXRob2QsIG5ld1VybCwgbmV3QXMsIG9wdGlvbnMpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBkZXN0aW5hdGlvblxuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgoKSA9PiB7fSlcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNQcmV2aWV3ID0gISFwcm9wcy5fX05fUFJFVklFV1xuXG4gICAgICAgIC8vIGhhbmRsZSBTU0cgZGF0YSA0MDRcbiAgICAgICAgaWYgKHByb3BzLm5vdEZvdW5kID09PSBTU0dfREFUQV9OT1RfRk9VTkQpIHtcbiAgICAgICAgICBsZXQgbm90Rm91bmRSb3V0ZVxuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMuZmV0Y2hDb21wb25lbnQoJy80MDQnKVxuICAgICAgICAgICAgbm90Rm91bmRSb3V0ZSA9ICcvNDA0J1xuICAgICAgICAgIH0gY2F0Y2ggKF8pIHtcbiAgICAgICAgICAgIG5vdEZvdW5kUm91dGUgPSAnL19lcnJvcidcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByb3V0ZUluZm8gPSBhd2FpdCB0aGlzLmdldFJvdXRlSW5mbyhcbiAgICAgICAgICAgIG5vdEZvdW5kUm91dGUsXG4gICAgICAgICAgICBub3RGb3VuZFJvdXRlLFxuICAgICAgICAgICAgcXVlcnksXG4gICAgICAgICAgICBhcyxcbiAgICAgICAgICAgIHJlc29sdmVkQXMsXG4gICAgICAgICAgICB7IHNoYWxsb3c6IGZhbHNlIH1cbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgUm91dGVyLmV2ZW50cy5lbWl0KCdiZWZvcmVIaXN0b3J5Q2hhbmdlJywgYXMsIHJvdXRlUHJvcHMpXG4gICAgICB0aGlzLmNoYW5nZVN0YXRlKG1ldGhvZCwgdXJsLCBhcywgb3B0aW9ucylcblxuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgY29uc3QgYXBwQ29tcDogYW55ID0gdGhpcy5jb21wb25lbnRzWycvX2FwcCddLkNvbXBvbmVudFxuICAgICAgICA7KHdpbmRvdyBhcyBhbnkpLm5leHQuaXNQcmVyZW5kZXJlZCA9XG4gICAgICAgICAgYXBwQ29tcC5nZXRJbml0aWFsUHJvcHMgPT09IGFwcENvbXAub3JpZ0dldEluaXRpYWxQcm9wcyAmJlxuICAgICAgICAgICEocm91dGVJbmZvLkNvbXBvbmVudCBhcyBhbnkpLmdldEluaXRpYWxQcm9wc1xuICAgICAgfVxuXG4gICAgICAvLyBzaGFsbG93IHJvdXRpbmcgaXMgb25seSBhbGxvd2VkIGZvciBzYW1lIHBhZ2UgVVJMIGNoYW5nZXMuXG4gICAgICBjb25zdCBpc1ZhbGlkU2hhbGxvd1JvdXRlID0gb3B0aW9ucy5zaGFsbG93ICYmIHRoaXMucm91dGUgPT09IHJvdXRlXG5cbiAgICAgIGlmIChcbiAgICAgICAgKG9wdGlvbnMgYXMgYW55KS5faCAmJlxuICAgICAgICBwYXRobmFtZSA9PT0gJy9fZXJyb3InICYmXG4gICAgICAgIHNlbGYuX19ORVhUX0RBVEFfXy5wcm9wcz8ucGFnZVByb3BzPy5zdGF0dXNDb2RlID09PSA1MDAgJiZcbiAgICAgICAgcHJvcHM/LnBhZ2VQcm9wc1xuICAgICAgKSB7XG4gICAgICAgIC8vIGVuc3VyZSBzdGF0dXNDb2RlIGlzIHN0aWxsIGNvcnJlY3QgZm9yIHN0YXRpYyA1MDAgcGFnZVxuICAgICAgICAvLyB3aGVuIHVwZGF0aW5nIHF1ZXJ5IGluZm9ybWF0aW9uXG4gICAgICAgIHByb3BzLnBhZ2VQcm9wcy5zdGF0dXNDb2RlID0gNTAwXG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRoaXMuc2V0KFxuICAgICAgICByb3V0ZSxcbiAgICAgICAgcGF0aG5hbWUhLFxuICAgICAgICBxdWVyeSxcbiAgICAgICAgY2xlYW5lZEFzLFxuICAgICAgICByb3V0ZUluZm8sXG4gICAgICAgIGZvcmNlZFNjcm9sbCB8fFxuICAgICAgICAgIChpc1ZhbGlkU2hhbGxvd1JvdXRlIHx8ICFvcHRpb25zLnNjcm9sbCA/IG51bGwgOiB7IHg6IDAsIHk6IDAgfSlcbiAgICAgICkuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgaWYgKGUuY2FuY2VsbGVkKSBlcnJvciA9IGVycm9yIHx8IGVcbiAgICAgICAgZWxzZSB0aHJvdyBlXG4gICAgICB9KVxuXG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgUm91dGVyLmV2ZW50cy5lbWl0KCdyb3V0ZUNoYW5nZUVycm9yJywgZXJyb3IsIGNsZWFuZWRBcywgcm91dGVQcm9wcylcbiAgICAgICAgdGhyb3cgZXJyb3JcbiAgICAgIH1cblxuICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICAgICAgaWYgKHRoaXMubG9jYWxlKSB7XG4gICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmxhbmcgPSB0aGlzLmxvY2FsZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ3JvdXRlQ2hhbmdlQ29tcGxldGUnLCBhcywgcm91dGVQcm9wcylcblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIuY2FuY2VsbGVkKSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuICB9XG5cbiAgY2hhbmdlU3RhdGUoXG4gICAgbWV0aG9kOiBIaXN0b3J5TWV0aG9kLFxuICAgIHVybDogc3RyaW5nLFxuICAgIGFzOiBzdHJpbmcsXG4gICAgb3B0aW9uczogVHJhbnNpdGlvbk9wdGlvbnMgPSB7fVxuICApOiB2b2lkIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgaWYgKHR5cGVvZiB3aW5kb3cuaGlzdG9yeSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgV2FybmluZzogd2luZG93Lmhpc3RvcnkgaXMgbm90IGF2YWlsYWJsZS5gKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiB3aW5kb3cuaGlzdG9yeVttZXRob2RdID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBXYXJuaW5nOiB3aW5kb3cuaGlzdG9yeS4ke21ldGhvZH0gaXMgbm90IGF2YWlsYWJsZWApXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChtZXRob2QgIT09ICdwdXNoU3RhdGUnIHx8IGdldFVSTCgpICE9PSBhcykge1xuICAgICAgdGhpcy5fc2hhbGxvdyA9IG9wdGlvbnMuc2hhbGxvd1xuICAgICAgd2luZG93Lmhpc3RvcnlbbWV0aG9kXShcbiAgICAgICAge1xuICAgICAgICAgIHVybCxcbiAgICAgICAgICBhcyxcbiAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgIF9fTjogdHJ1ZSxcbiAgICAgICAgICBpZHg6IHRoaXMuX2lkeCA9IG1ldGhvZCAhPT0gJ3B1c2hTdGF0ZScgPyB0aGlzLl9pZHggOiB0aGlzLl9pZHggKyAxLFxuICAgICAgICB9IGFzIEhpc3RvcnlTdGF0ZSxcbiAgICAgICAgLy8gTW9zdCBicm93c2VycyBjdXJyZW50bHkgaWdub3JlcyB0aGlzIHBhcmFtZXRlciwgYWx0aG91Z2ggdGhleSBtYXkgdXNlIGl0IGluIHRoZSBmdXR1cmUuXG4gICAgICAgIC8vIFBhc3NpbmcgdGhlIGVtcHR5IHN0cmluZyBoZXJlIHNob3VsZCBiZSBzYWZlIGFnYWluc3QgZnV0dXJlIGNoYW5nZXMgdG8gdGhlIG1ldGhvZC5cbiAgICAgICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0hpc3RvcnkvcmVwbGFjZVN0YXRlXG4gICAgICAgICcnLFxuICAgICAgICBhc1xuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGhhbmRsZVJvdXRlSW5mb0Vycm9yKFxuICAgIGVycjogRXJyb3IgJiB7IGNvZGU6IGFueTsgY2FuY2VsbGVkOiBib29sZWFuIH0sXG4gICAgcGF0aG5hbWU6IHN0cmluZyxcbiAgICBxdWVyeTogUGFyc2VkVXJsUXVlcnksXG4gICAgYXM6IHN0cmluZyxcbiAgICByb3V0ZVByb3BzOiBSb3V0ZVByb3BlcnRpZXMsXG4gICAgbG9hZEVycm9yRmFpbD86IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8+IHtcbiAgICBpZiAoZXJyLmNhbmNlbGxlZCkge1xuICAgICAgLy8gYnViYmxlIHVwIGNhbmNlbGxhdGlvbiBlcnJvcnNcbiAgICAgIHRocm93IGVyclxuICAgIH1cblxuICAgIGlmIChpc0Fzc2V0RXJyb3IoZXJyKSB8fCBsb2FkRXJyb3JGYWlsKSB7XG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ3JvdXRlQ2hhbmdlRXJyb3InLCBlcnIsIGFzLCByb3V0ZVByb3BzKVxuXG4gICAgICAvLyBJZiB3ZSBjYW4ndCBsb2FkIHRoZSBwYWdlIGl0IGNvdWxkIGJlIG9uZSBvZiBmb2xsb3dpbmcgcmVhc29uc1xuICAgICAgLy8gIDEuIFBhZ2UgZG9lc24ndCBleGlzdHNcbiAgICAgIC8vICAyLiBQYWdlIGRvZXMgZXhpc3QgaW4gYSBkaWZmZXJlbnQgem9uZVxuICAgICAgLy8gIDMuIEludGVybmFsIGVycm9yIHdoaWxlIGxvYWRpbmcgdGhlIHBhZ2VcblxuICAgICAgLy8gU28sIGRvaW5nIGEgaGFyZCByZWxvYWQgaXMgdGhlIHByb3BlciB3YXkgdG8gZGVhbCB3aXRoIHRoaXMuXG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGFzXG5cbiAgICAgIC8vIENoYW5naW5nIHRoZSBVUkwgZG9lc24ndCBibG9jayBleGVjdXRpbmcgdGhlIGN1cnJlbnQgY29kZSBwYXRoLlxuICAgICAgLy8gU28gbGV0J3MgdGhyb3cgYSBjYW5jZWxsYXRpb24gZXJyb3Igc3RvcCB0aGUgcm91dGluZyBsb2dpYy5cbiAgICAgIHRocm93IGJ1aWxkQ2FuY2VsbGF0aW9uRXJyb3IoKVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBsZXQgQ29tcG9uZW50OiBDb21wb25lbnRUeXBlXG4gICAgICBsZXQgc3R5bGVTaGVldHM6IFN0eWxlU2hlZXRUdXBsZVtdXG4gICAgICBsZXQgcHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWRcblxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgQ29tcG9uZW50ISA9PT0gJ3VuZGVmaW5lZCcgfHxcbiAgICAgICAgdHlwZW9mIHN0eWxlU2hlZXRzISA9PT0gJ3VuZGVmaW5lZCdcbiAgICAgICkge1xuICAgICAgICA7KHsgcGFnZTogQ29tcG9uZW50LCBzdHlsZVNoZWV0cyB9ID0gYXdhaXQgdGhpcy5mZXRjaENvbXBvbmVudChcbiAgICAgICAgICAnL19lcnJvcidcbiAgICAgICAgKSlcbiAgICAgIH1cblxuICAgICAgY29uc3Qgcm91dGVJbmZvOiBDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8gPSB7XG4gICAgICAgIHByb3BzLFxuICAgICAgICBDb21wb25lbnQsXG4gICAgICAgIHN0eWxlU2hlZXRzLFxuICAgICAgICBlcnIsXG4gICAgICAgIGVycm9yOiBlcnIsXG4gICAgICB9XG5cbiAgICAgIGlmICghcm91dGVJbmZvLnByb3BzKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgcm91dGVJbmZvLnByb3BzID0gYXdhaXQgdGhpcy5nZXRJbml0aWFsUHJvcHMoQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBlcnIsXG4gICAgICAgICAgICBwYXRobmFtZSxcbiAgICAgICAgICAgIHF1ZXJ5LFxuICAgICAgICAgIH0gYXMgYW55KVxuICAgICAgICB9IGNhdGNoIChnaXBFcnIpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBpbiBlcnJvciBwYWdlIGBnZXRJbml0aWFsUHJvcHNgOiAnLCBnaXBFcnIpXG4gICAgICAgICAgcm91dGVJbmZvLnByb3BzID0ge31cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcm91dGVJbmZvXG4gICAgfSBjYXRjaCAocm91dGVJbmZvRXJyKSB7XG4gICAgICByZXR1cm4gdGhpcy5oYW5kbGVSb3V0ZUluZm9FcnJvcihcbiAgICAgICAgcm91dGVJbmZvRXJyLFxuICAgICAgICBwYXRobmFtZSxcbiAgICAgICAgcXVlcnksXG4gICAgICAgIGFzLFxuICAgICAgICByb3V0ZVByb3BzLFxuICAgICAgICB0cnVlXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0Um91dGVJbmZvKFxuICAgIHJvdXRlOiBzdHJpbmcsXG4gICAgcGF0aG5hbWU6IHN0cmluZyxcbiAgICBxdWVyeTogYW55LFxuICAgIGFzOiBzdHJpbmcsXG4gICAgcmVzb2x2ZWRBczogc3RyaW5nLFxuICAgIHJvdXRlUHJvcHM6IFJvdXRlUHJvcGVydGllc1xuICApOiBQcm9taXNlPFByaXZhdGVSb3V0ZUluZm8+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZXhpc3RpbmdSb3V0ZUluZm86IFByaXZhdGVSb3V0ZUluZm8gfCB1bmRlZmluZWQgPSB0aGlzLmNvbXBvbmVudHNbXG4gICAgICAgIHJvdXRlXG4gICAgICBdXG4gICAgICBpZiAocm91dGVQcm9wcy5zaGFsbG93ICYmIGV4aXN0aW5nUm91dGVJbmZvICYmIHRoaXMucm91dGUgPT09IHJvdXRlKSB7XG4gICAgICAgIHJldHVybiBleGlzdGluZ1JvdXRlSW5mb1xuICAgICAgfVxuXG4gICAgICBjb25zdCBjYWNoZWRSb3V0ZUluZm86IENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbyB8IHVuZGVmaW5lZCA9XG4gICAgICAgIGV4aXN0aW5nUm91dGVJbmZvICYmICdpbml0aWFsJyBpbiBleGlzdGluZ1JvdXRlSW5mb1xuICAgICAgICAgID8gdW5kZWZpbmVkXG4gICAgICAgICAgOiBleGlzdGluZ1JvdXRlSW5mb1xuICAgICAgY29uc3Qgcm91dGVJbmZvOiBDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8gPSBjYWNoZWRSb3V0ZUluZm9cbiAgICAgICAgPyBjYWNoZWRSb3V0ZUluZm9cbiAgICAgICAgOiBhd2FpdCB0aGlzLmZldGNoQ29tcG9uZW50KHJvdXRlKS50aGVuKChyZXMpID0+ICh7XG4gICAgICAgICAgICBDb21wb25lbnQ6IHJlcy5wYWdlLFxuICAgICAgICAgICAgc3R5bGVTaGVldHM6IHJlcy5zdHlsZVNoZWV0cyxcbiAgICAgICAgICAgIF9fTl9TU0c6IHJlcy5tb2QuX19OX1NTRyxcbiAgICAgICAgICAgIF9fTl9TU1A6IHJlcy5tb2QuX19OX1NTUCxcbiAgICAgICAgICB9KSlcblxuICAgICAgY29uc3QgeyBDb21wb25lbnQsIF9fTl9TU0csIF9fTl9TU1AgfSA9IHJvdXRlSW5mb1xuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBjb25zdCB7IGlzVmFsaWRFbGVtZW50VHlwZSB9ID0gcmVxdWlyZSgncmVhY3QtaXMnKVxuICAgICAgICBpZiAoIWlzVmFsaWRFbGVtZW50VHlwZShDb21wb25lbnQpKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgYFRoZSBkZWZhdWx0IGV4cG9ydCBpcyBub3QgYSBSZWFjdCBDb21wb25lbnQgaW4gcGFnZTogXCIke3BhdGhuYW1lfVwiYFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBsZXQgZGF0YUhyZWY6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gICAgICBpZiAoX19OX1NTRyB8fCBfX05fU1NQKSB7XG4gICAgICAgIGRhdGFIcmVmID0gdGhpcy5wYWdlTG9hZGVyLmdldERhdGFIcmVmKFxuICAgICAgICAgIGZvcm1hdFdpdGhWYWxpZGF0aW9uKHsgcGF0aG5hbWUsIHF1ZXJ5IH0pLFxuICAgICAgICAgIHJlc29sdmVkQXMsXG4gICAgICAgICAgX19OX1NTRyxcbiAgICAgICAgICB0aGlzLmxvY2FsZVxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHByb3BzID0gYXdhaXQgdGhpcy5fZ2V0RGF0YTxDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8+KCgpID0+XG4gICAgICAgIF9fTl9TU0dcbiAgICAgICAgICA/IHRoaXMuX2dldFN0YXRpY0RhdGEoZGF0YUhyZWYhKVxuICAgICAgICAgIDogX19OX1NTUFxuICAgICAgICAgID8gdGhpcy5fZ2V0U2VydmVyRGF0YShkYXRhSHJlZiEpXG4gICAgICAgICAgOiB0aGlzLmdldEluaXRpYWxQcm9wcyhcbiAgICAgICAgICAgICAgQ29tcG9uZW50LFxuICAgICAgICAgICAgICAvLyB3ZSBwcm92aWRlIEFwcFRyZWUgbGF0ZXIgc28gdGhpcyBuZWVkcyB0byBiZSBgYW55YFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcGF0aG5hbWUsXG4gICAgICAgICAgICAgICAgcXVlcnksXG4gICAgICAgICAgICAgICAgYXNQYXRoOiBhcyxcbiAgICAgICAgICAgICAgfSBhcyBhbnlcbiAgICAgICAgICAgIClcbiAgICAgIClcblxuICAgICAgcm91dGVJbmZvLnByb3BzID0gcHJvcHNcbiAgICAgIHRoaXMuY29tcG9uZW50c1tyb3V0ZV0gPSByb3V0ZUluZm9cbiAgICAgIHJldHVybiByb3V0ZUluZm9cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZVJvdXRlSW5mb0Vycm9yKGVyciwgcGF0aG5hbWUsIHF1ZXJ5LCBhcywgcm91dGVQcm9wcylcbiAgICB9XG4gIH1cblxuICBzZXQoXG4gICAgcm91dGU6IHN0cmluZyxcbiAgICBwYXRobmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSxcbiAgICBhczogc3RyaW5nLFxuICAgIGRhdGE6IFByaXZhdGVSb3V0ZUluZm8sXG4gICAgcmVzZXRTY3JvbGw6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSB8IG51bGxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5pc0ZhbGxiYWNrID0gZmFsc2VcblxuICAgIHRoaXMucm91dGUgPSByb3V0ZVxuICAgIHRoaXMucGF0aG5hbWUgPSBwYXRobmFtZVxuICAgIHRoaXMucXVlcnkgPSBxdWVyeVxuICAgIHRoaXMuYXNQYXRoID0gYXNcbiAgICByZXR1cm4gdGhpcy5ub3RpZnkoZGF0YSwgcmVzZXRTY3JvbGwpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGJhY2sgdG8gZXhlY3V0ZSBiZWZvcmUgcmVwbGFjaW5nIHJvdXRlciBzdGF0ZVxuICAgKiBAcGFyYW0gY2IgY2FsbGJhY2sgdG8gYmUgZXhlY3V0ZWRcbiAgICovXG4gIGJlZm9yZVBvcFN0YXRlKGNiOiBCZWZvcmVQb3BTdGF0ZUNhbGxiYWNrKSB7XG4gICAgdGhpcy5fYnBzID0gY2JcbiAgfVxuXG4gIG9ubHlBSGFzaENoYW5nZShhczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmFzUGF0aCkgcmV0dXJuIGZhbHNlXG4gICAgY29uc3QgW29sZFVybE5vSGFzaCwgb2xkSGFzaF0gPSB0aGlzLmFzUGF0aC5zcGxpdCgnIycpXG4gICAgY29uc3QgW25ld1VybE5vSGFzaCwgbmV3SGFzaF0gPSBhcy5zcGxpdCgnIycpXG5cbiAgICAvLyBNYWtlcyBzdXJlIHdlIHNjcm9sbCB0byB0aGUgcHJvdmlkZWQgaGFzaCBpZiB0aGUgdXJsL2hhc2ggYXJlIHRoZSBzYW1lXG4gICAgaWYgKG5ld0hhc2ggJiYgb2xkVXJsTm9IYXNoID09PSBuZXdVcmxOb0hhc2ggJiYgb2xkSGFzaCA9PT0gbmV3SGFzaCkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgdXJscyBhcmUgY2hhbmdlLCB0aGVyZSdzIG1vcmUgdGhhbiBhIGhhc2ggY2hhbmdlXG4gICAgaWYgKG9sZFVybE5vSGFzaCAhPT0gbmV3VXJsTm9IYXNoKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgaGFzaCBoYXMgY2hhbmdlZCwgdGhlbiBpdCdzIGEgaGFzaCBvbmx5IGNoYW5nZS5cbiAgICAvLyBUaGlzIGNoZWNrIGlzIG5lY2Vzc2FyeSB0byBoYW5kbGUgYm90aCB0aGUgZW50ZXIgYW5kXG4gICAgLy8gbGVhdmUgaGFzaCA9PT0gJycgY2FzZXMuIFRoZSBpZGVudGl0eSBjYXNlIGZhbGxzIHRocm91Z2hcbiAgICAvLyBhbmQgaXMgdHJlYXRlZCBhcyBhIG5leHQgcmVsb2FkLlxuICAgIHJldHVybiBvbGRIYXNoICE9PSBuZXdIYXNoXG4gIH1cblxuICBzY3JvbGxUb0hhc2goYXM6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IFssIGhhc2hdID0gYXMuc3BsaXQoJyMnKVxuICAgIC8vIFNjcm9sbCB0byB0b3AgaWYgdGhlIGhhc2ggaXMganVzdCBgI2Agd2l0aCBubyB2YWx1ZSBvciBgI3RvcGBcbiAgICAvLyBUbyBtaXJyb3IgYnJvd3NlcnNcbiAgICBpZiAoaGFzaCA9PT0gJycgfHwgaGFzaCA9PT0gJ3RvcCcpIHtcbiAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCAwKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gRmlyc3Qgd2UgY2hlY2sgaWYgdGhlIGVsZW1lbnQgYnkgaWQgaXMgZm91bmRcbiAgICBjb25zdCBpZEVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaGFzaClcbiAgICBpZiAoaWRFbCkge1xuICAgICAgaWRFbC5zY3JvbGxJbnRvVmlldygpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgLy8gSWYgdGhlcmUncyBubyBlbGVtZW50IHdpdGggdGhlIGlkLCB3ZSBjaGVjayB0aGUgYG5hbWVgIHByb3BlcnR5XG4gICAgLy8gVG8gbWlycm9yIGJyb3dzZXJzXG4gICAgY29uc3QgbmFtZUVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoaGFzaClbMF1cbiAgICBpZiAobmFtZUVsKSB7XG4gICAgICBuYW1lRWwuc2Nyb2xsSW50b1ZpZXcoKVxuICAgIH1cbiAgfVxuXG4gIHVybElzTmV3KGFzUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYXNQYXRoICE9PSBhc1BhdGhcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVmZXRjaCBwYWdlIGNvZGUsIHlvdSBtYXkgd2FpdCBmb3IgdGhlIGRhdGEgZHVyaW5nIHBhZ2UgcmVuZGVyaW5nLlxuICAgKiBUaGlzIGZlYXR1cmUgb25seSB3b3JrcyBpbiBwcm9kdWN0aW9uIVxuICAgKiBAcGFyYW0gdXJsIHRoZSBocmVmIG9mIHByZWZldGNoZWQgcGFnZVxuICAgKiBAcGFyYW0gYXNQYXRoIHRoZSBhcyBwYXRoIG9mIHRoZSBwcmVmZXRjaGVkIHBhZ2VcbiAgICovXG4gIGFzeW5jIHByZWZldGNoKFxuICAgIHVybDogc3RyaW5nLFxuICAgIGFzUGF0aDogc3RyaW5nID0gdXJsLFxuICAgIG9wdGlvbnM6IFByZWZldGNoT3B0aW9ucyA9IHt9XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGxldCBwYXJzZWQgPSBwYXJzZVJlbGF0aXZlVXJsKHVybClcblxuICAgIGxldCB7IHBhdGhuYW1lIH0gPSBwYXJzZWRcblxuICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gICAgICBpZiAob3B0aW9ucy5sb2NhbGUgPT09IGZhbHNlKSB7XG4gICAgICAgIHBhdGhuYW1lID0gbm9ybWFsaXplTG9jYWxlUGF0aCEocGF0aG5hbWUsIHRoaXMubG9jYWxlcykucGF0aG5hbWVcbiAgICAgICAgcGFyc2VkLnBhdGhuYW1lID0gcGF0aG5hbWVcbiAgICAgICAgdXJsID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkKVxuXG4gICAgICAgIGxldCBwYXJzZWRBcyA9IHBhcnNlUmVsYXRpdmVVcmwoYXNQYXRoKVxuICAgICAgICBjb25zdCBsb2NhbGVQYXRoUmVzdWx0ID0gbm9ybWFsaXplTG9jYWxlUGF0aCEoXG4gICAgICAgICAgcGFyc2VkQXMucGF0aG5hbWUsXG4gICAgICAgICAgdGhpcy5sb2NhbGVzXG4gICAgICAgIClcbiAgICAgICAgcGFyc2VkQXMucGF0aG5hbWUgPSBsb2NhbGVQYXRoUmVzdWx0LnBhdGhuYW1lXG4gICAgICAgIG9wdGlvbnMubG9jYWxlID0gbG9jYWxlUGF0aFJlc3VsdC5kZXRlY3RlZExvY2FsZSB8fCB0aGlzLmRlZmF1bHRMb2NhbGVcbiAgICAgICAgYXNQYXRoID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkQXMpXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcGFnZXMgPSBhd2FpdCB0aGlzLnBhZ2VMb2FkZXIuZ2V0UGFnZUxpc3QoKVxuXG4gICAgcGFyc2VkID0gcmVzb2x2ZUR5bmFtaWNSb3V0ZShwYXJzZWQsIHBhZ2VzLCBmYWxzZSkgYXMgdHlwZW9mIHBhcnNlZFxuXG4gICAgaWYgKHBhcnNlZC5wYXRobmFtZSAhPT0gcGF0aG5hbWUpIHtcbiAgICAgIHBhdGhuYW1lID0gcGFyc2VkLnBhdGhuYW1lXG4gICAgICB1cmwgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWQpXG4gICAgfVxuICAgIGxldCByb3V0ZSA9IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhdGhuYW1lKVxuICAgIGxldCByZXNvbHZlZEFzID0gYXNQYXRoXG5cbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0hBU19SRVdSSVRFUyAmJiBhc1BhdGguc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgICBsZXQgcmV3cml0ZXM6IGFueVtdXG4gICAgICA7KHsgX19yZXdyaXRlczogcmV3cml0ZXMgfSA9IGF3YWl0IGdldENsaWVudEJ1aWxkTWFuaWZlc3QoKSlcblxuICAgICAgY29uc3QgcmV3cml0ZXNSZXN1bHQgPSByZXNvbHZlUmV3cml0ZXMoXG4gICAgICAgIGFkZEJhc2VQYXRoKGFkZExvY2FsZShkZWxCYXNlUGF0aChhc1BhdGgpLCB0aGlzLmxvY2FsZSkpLFxuICAgICAgICBwYWdlcyxcbiAgICAgICAgcmV3cml0ZXMsXG4gICAgICAgIHBhcnNlZC5xdWVyeSxcbiAgICAgICAgKHA6IHN0cmluZykgPT4gcmVzb2x2ZUR5bmFtaWNSb3V0ZSh7IHBhdGhuYW1lOiBwIH0sIHBhZ2VzKS5wYXRobmFtZSEsXG4gICAgICAgIHRoaXMubG9jYWxlc1xuICAgICAgKVxuXG4gICAgICBpZiAocmV3cml0ZXNSZXN1bHQubWF0Y2hlZFBhZ2UgJiYgcmV3cml0ZXNSZXN1bHQucmVzb2x2ZWRIcmVmKSB7XG4gICAgICAgIC8vIGlmIHRoaXMgZGlyZWN0bHkgbWF0Y2hlcyBhIHBhZ2Ugd2UgbmVlZCB0byB1cGRhdGUgdGhlIGhyZWYgdG9cbiAgICAgICAgLy8gYWxsb3cgdGhlIGNvcnJlY3QgcGFnZSBjaHVuayB0byBiZSBsb2FkZWRcbiAgICAgICAgcm91dGUgPSByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWZcbiAgICAgICAgcGF0aG5hbWUgPSByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWZcbiAgICAgICAgcGFyc2VkLnBhdGhuYW1lID0gcGF0aG5hbWVcbiAgICAgICAgdXJsID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkKVxuICAgICAgICByZXNvbHZlZEFzID0gcmV3cml0ZXNSZXN1bHQuYXNQYXRoXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUHJlZmV0Y2ggaXMgbm90IHN1cHBvcnRlZCBpbiBkZXZlbG9wbWVudCBtb2RlIGJlY2F1c2UgaXQgd291bGQgdHJpZ2dlciBvbi1kZW1hbmQtZW50cmllc1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICB0aGlzLnBhZ2VMb2FkZXIuX2lzU3NnKHVybCkudGhlbigoaXNTc2c6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgcmV0dXJuIGlzU3NnXG4gICAgICAgICAgPyB0aGlzLl9nZXRTdGF0aWNEYXRhKFxuICAgICAgICAgICAgICB0aGlzLnBhZ2VMb2FkZXIuZ2V0RGF0YUhyZWYoXG4gICAgICAgICAgICAgICAgdXJsLFxuICAgICAgICAgICAgICAgIHJlc29sdmVkQXMsXG4gICAgICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgICAgICB0eXBlb2Ygb3B0aW9ucy5sb2NhbGUgIT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICAgICAgICA/IG9wdGlvbnMubG9jYWxlXG4gICAgICAgICAgICAgICAgICA6IHRoaXMubG9jYWxlXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IGZhbHNlXG4gICAgICB9KSxcbiAgICAgIHRoaXMucGFnZUxvYWRlcltvcHRpb25zLnByaW9yaXR5ID8gJ2xvYWRQYWdlJyA6ICdwcmVmZXRjaCddKHJvdXRlKSxcbiAgICBdKVxuICB9XG5cbiAgYXN5bmMgZmV0Y2hDb21wb25lbnQocm91dGU6IHN0cmluZyk6IFByb21pc2U8R29vZFBhZ2VDYWNoZT4ge1xuICAgIGxldCBjYW5jZWxsZWQgPSBmYWxzZVxuICAgIGNvbnN0IGNhbmNlbCA9ICh0aGlzLmNsYyA9ICgpID0+IHtcbiAgICAgIGNhbmNlbGxlZCA9IHRydWVcbiAgICB9KVxuXG4gICAgY29uc3QgY29tcG9uZW50UmVzdWx0ID0gYXdhaXQgdGhpcy5wYWdlTG9hZGVyLmxvYWRQYWdlKHJvdXRlKVxuXG4gICAgaWYgKGNhbmNlbGxlZCkge1xuICAgICAgY29uc3QgZXJyb3I6IGFueSA9IG5ldyBFcnJvcihcbiAgICAgICAgYEFib3J0IGZldGNoaW5nIGNvbXBvbmVudCBmb3Igcm91dGU6IFwiJHtyb3V0ZX1cImBcbiAgICAgIClcbiAgICAgIGVycm9yLmNhbmNlbGxlZCA9IHRydWVcbiAgICAgIHRocm93IGVycm9yXG4gICAgfVxuXG4gICAgaWYgKGNhbmNlbCA9PT0gdGhpcy5jbGMpIHtcbiAgICAgIHRoaXMuY2xjID0gbnVsbFxuICAgIH1cblxuICAgIHJldHVybiBjb21wb25lbnRSZXN1bHRcbiAgfVxuXG4gIF9nZXREYXRhPFQ+KGZuOiAoKSA9PiBQcm9taXNlPFQ+KTogUHJvbWlzZTxUPiB7XG4gICAgbGV0IGNhbmNlbGxlZCA9IGZhbHNlXG4gICAgY29uc3QgY2FuY2VsID0gKCkgPT4ge1xuICAgICAgY2FuY2VsbGVkID0gdHJ1ZVxuICAgIH1cbiAgICB0aGlzLmNsYyA9IGNhbmNlbFxuICAgIHJldHVybiBmbigpLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIGlmIChjYW5jZWwgPT09IHRoaXMuY2xjKSB7XG4gICAgICAgIHRoaXMuY2xjID0gbnVsbFxuICAgICAgfVxuXG4gICAgICBpZiAoY2FuY2VsbGVkKSB7XG4gICAgICAgIGNvbnN0IGVycjogYW55ID0gbmV3IEVycm9yKCdMb2FkaW5nIGluaXRpYWwgcHJvcHMgY2FuY2VsbGVkJylcbiAgICAgICAgZXJyLmNhbmNlbGxlZCA9IHRydWVcbiAgICAgICAgdGhyb3cgZXJyXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBkYXRhXG4gICAgfSlcbiAgfVxuXG4gIF9nZXRTdGF0aWNEYXRhKGRhdGFIcmVmOiBzdHJpbmcpOiBQcm9taXNlPG9iamVjdD4ge1xuICAgIGNvbnN0IHsgaHJlZjogY2FjaGVLZXkgfSA9IG5ldyBVUkwoZGF0YUhyZWYsIHdpbmRvdy5sb2NhdGlvbi5ocmVmKVxuICAgIGlmIChcbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgJiZcbiAgICAgICF0aGlzLmlzUHJldmlldyAmJlxuICAgICAgdGhpcy5zZGNbY2FjaGVLZXldXG4gICAgKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuc2RjW2NhY2hlS2V5XSlcbiAgICB9XG4gICAgcmV0dXJuIGZldGNoTmV4dERhdGEoZGF0YUhyZWYsIHRoaXMuaXNTc3IpLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgIHRoaXMuc2RjW2NhY2hlS2V5XSA9IGRhdGFcbiAgICAgIHJldHVybiBkYXRhXG4gICAgfSlcbiAgfVxuXG4gIF9nZXRTZXJ2ZXJEYXRhKGRhdGFIcmVmOiBzdHJpbmcpOiBQcm9taXNlPG9iamVjdD4ge1xuICAgIHJldHVybiBmZXRjaE5leHREYXRhKGRhdGFIcmVmLCB0aGlzLmlzU3NyKVxuICB9XG5cbiAgZ2V0SW5pdGlhbFByb3BzKFxuICAgIENvbXBvbmVudDogQ29tcG9uZW50VHlwZSxcbiAgICBjdHg6IE5leHRQYWdlQ29udGV4dFxuICApOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHsgQ29tcG9uZW50OiBBcHAgfSA9IHRoaXMuY29tcG9uZW50c1snL19hcHAnXVxuICAgIGNvbnN0IEFwcFRyZWUgPSB0aGlzLl93cmFwQXBwKEFwcCBhcyBBcHBDb21wb25lbnQpXG4gICAgY3R4LkFwcFRyZWUgPSBBcHBUcmVlXG4gICAgcmV0dXJuIGxvYWRHZXRJbml0aWFsUHJvcHM8QXBwQ29udGV4dFR5cGU8Um91dGVyPj4oQXBwLCB7XG4gICAgICBBcHBUcmVlLFxuICAgICAgQ29tcG9uZW50LFxuICAgICAgcm91dGVyOiB0aGlzLFxuICAgICAgY3R4LFxuICAgIH0pXG4gIH1cblxuICBhYm9ydENvbXBvbmVudExvYWQoYXM6IHN0cmluZywgcm91dGVQcm9wczogUm91dGVQcm9wZXJ0aWVzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2xjKSB7XG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoXG4gICAgICAgICdyb3V0ZUNoYW5nZUVycm9yJyxcbiAgICAgICAgYnVpbGRDYW5jZWxsYXRpb25FcnJvcigpLFxuICAgICAgICBhcyxcbiAgICAgICAgcm91dGVQcm9wc1xuICAgICAgKVxuICAgICAgdGhpcy5jbGMoKVxuICAgICAgdGhpcy5jbGMgPSBudWxsXG4gICAgfVxuICB9XG5cbiAgbm90aWZ5KFxuICAgIGRhdGE6IFByaXZhdGVSb3V0ZUluZm8sXG4gICAgcmVzZXRTY3JvbGw6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSB8IG51bGxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc3ViKFxuICAgICAgZGF0YSxcbiAgICAgIHRoaXMuY29tcG9uZW50c1snL19hcHAnXS5Db21wb25lbnQgYXMgQXBwQ29tcG9uZW50LFxuICAgICAgcmVzZXRTY3JvbGxcbiAgICApXG4gIH1cbn1cbiIsIi8vIEZvcm1hdCBmdW5jdGlvbiBtb2RpZmllZCBmcm9tIG5vZGVqc1xuLy8gQ29weXJpZ2h0IEpveWVudCwgSW5jLiBhbmQgb3RoZXIgTm9kZSBjb250cmlidXRvcnMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGFcbi8vIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGVcbi8vIFwiU29mdHdhcmVcIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZ1xuLy8gd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLFxuLy8gZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdFxuLy8gcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlXG4vLyBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZFxuLy8gaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTU1xuLy8gT1IgSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRlxuLy8gTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTlxuLy8gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sXG4vLyBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1Jcbi8vIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEVcbi8vIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCB7IFVybE9iamVjdCB9IGZyb20gJ3VybCdcbmltcG9ydCB7IFBhcnNlZFVybFF1ZXJ5IH0gZnJvbSAncXVlcnlzdHJpbmcnXG5pbXBvcnQgKiBhcyBxdWVyeXN0cmluZyBmcm9tICcuL3F1ZXJ5c3RyaW5nJ1xuXG5jb25zdCBzbGFzaGVkUHJvdG9jb2xzID0gL2h0dHBzP3xmdHB8Z29waGVyfGZpbGUvXG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRVcmwodXJsT2JqOiBVcmxPYmplY3QpIHtcbiAgbGV0IHsgYXV0aCwgaG9zdG5hbWUgfSA9IHVybE9ialxuICBsZXQgcHJvdG9jb2wgPSB1cmxPYmoucHJvdG9jb2wgfHwgJydcbiAgbGV0IHBhdGhuYW1lID0gdXJsT2JqLnBhdGhuYW1lIHx8ICcnXG4gIGxldCBoYXNoID0gdXJsT2JqLmhhc2ggfHwgJydcbiAgbGV0IHF1ZXJ5ID0gdXJsT2JqLnF1ZXJ5IHx8ICcnXG4gIGxldCBob3N0OiBzdHJpbmcgfCBmYWxzZSA9IGZhbHNlXG5cbiAgYXV0aCA9IGF1dGggPyBlbmNvZGVVUklDb21wb25lbnQoYXV0aCkucmVwbGFjZSgvJTNBL2ksICc6JykgKyAnQCcgOiAnJ1xuXG4gIGlmICh1cmxPYmouaG9zdCkge1xuICAgIGhvc3QgPSBhdXRoICsgdXJsT2JqLmhvc3RcbiAgfSBlbHNlIGlmIChob3N0bmFtZSkge1xuICAgIGhvc3QgPSBhdXRoICsgKH5ob3N0bmFtZS5pbmRleE9mKCc6JykgPyBgWyR7aG9zdG5hbWV9XWAgOiBob3N0bmFtZSlcbiAgICBpZiAodXJsT2JqLnBvcnQpIHtcbiAgICAgIGhvc3QgKz0gJzonICsgdXJsT2JqLnBvcnRcbiAgICB9XG4gIH1cblxuICBpZiAocXVlcnkgJiYgdHlwZW9mIHF1ZXJ5ID09PSAnb2JqZWN0Jykge1xuICAgIHF1ZXJ5ID0gU3RyaW5nKHF1ZXJ5c3RyaW5nLnVybFF1ZXJ5VG9TZWFyY2hQYXJhbXMocXVlcnkgYXMgUGFyc2VkVXJsUXVlcnkpKVxuICB9XG5cbiAgbGV0IHNlYXJjaCA9IHVybE9iai5zZWFyY2ggfHwgKHF1ZXJ5ICYmIGA/JHtxdWVyeX1gKSB8fCAnJ1xuXG4gIGlmIChwcm90b2NvbCAmJiBwcm90b2NvbC5zdWJzdHIoLTEpICE9PSAnOicpIHByb3RvY29sICs9ICc6J1xuXG4gIGlmIChcbiAgICB1cmxPYmouc2xhc2hlcyB8fFxuICAgICgoIXByb3RvY29sIHx8IHNsYXNoZWRQcm90b2NvbHMudGVzdChwcm90b2NvbCkpICYmIGhvc3QgIT09IGZhbHNlKVxuICApIHtcbiAgICBob3N0ID0gJy8vJyArIChob3N0IHx8ICcnKVxuICAgIGlmIChwYXRobmFtZSAmJiBwYXRobmFtZVswXSAhPT0gJy8nKSBwYXRobmFtZSA9ICcvJyArIHBhdGhuYW1lXG4gIH0gZWxzZSBpZiAoIWhvc3QpIHtcbiAgICBob3N0ID0gJydcbiAgfVxuXG4gIGlmIChoYXNoICYmIGhhc2hbMF0gIT09ICcjJykgaGFzaCA9ICcjJyArIGhhc2hcbiAgaWYgKHNlYXJjaCAmJiBzZWFyY2hbMF0gIT09ICc/Jykgc2VhcmNoID0gJz8nICsgc2VhcmNoXG5cbiAgcGF0aG5hbWUgPSBwYXRobmFtZS5yZXBsYWNlKC9bPyNdL2csIGVuY29kZVVSSUNvbXBvbmVudClcbiAgc2VhcmNoID0gc2VhcmNoLnJlcGxhY2UoJyMnLCAnJTIzJylcblxuICByZXR1cm4gYCR7cHJvdG9jb2x9JHtob3N0fSR7cGF0aG5hbWV9JHtzZWFyY2h9JHtoYXNofWBcbn1cbiIsIi8vIFRyYW5zbGF0ZXMgYSBsb2dpY2FsIHJvdXRlIGludG8gaXRzIHBhZ2VzIGFzc2V0IHBhdGggKHJlbGF0aXZlIGZyb20gYSBjb21tb24gcHJlZml4KVxuLy8gXCJhc3NldCBwYXRoXCIgYmVpbmcgaXRzIGphdmFzY3JpcHQgZmlsZSwgZGF0YSBmaWxlLCBwcmVyZW5kZXJlZCBodG1sLC4uLlxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0QXNzZXRQYXRoRnJvbVJvdXRlKFxuICByb3V0ZTogc3RyaW5nLFxuICBleHQ6IHN0cmluZyA9ICcnXG4pOiBzdHJpbmcge1xuICBjb25zdCBwYXRoID1cbiAgICByb3V0ZSA9PT0gJy8nXG4gICAgICA/ICcvaW5kZXgnXG4gICAgICA6IC9eXFwvaW5kZXgoXFwvfCQpLy50ZXN0KHJvdXRlKVxuICAgICAgPyBgL2luZGV4JHtyb3V0ZX1gXG4gICAgICA6IGAke3JvdXRlfWBcbiAgcmV0dXJuIHBhdGggKyBleHRcbn1cbiIsIi8vIElkZW50aWZ5IC9bcGFyYW1dLyBpbiByb3V0ZSBzdHJpbmdcbmNvbnN0IFRFU1RfUk9VVEUgPSAvXFwvXFxbW14vXSs/XFxdKD89XFwvfCQpL1xuXG5leHBvcnQgZnVuY3Rpb24gaXNEeW5hbWljUm91dGUocm91dGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gVEVTVF9ST1VURS50ZXN0KHJvdXRlKVxufVxuIiwiaW1wb3J0IHsgZ2V0TG9jYXRpb25PcmlnaW4gfSBmcm9tICcuLi8uLi91dGlscydcbmltcG9ydCB7IHNlYXJjaFBhcmFtc1RvVXJsUXVlcnkgfSBmcm9tICcuL3F1ZXJ5c3RyaW5nJ1xuXG4vKipcbiAqIFBhcnNlcyBwYXRoLXJlbGF0aXZlIHVybHMgKGUuZy4gYC9oZWxsby93b3JsZD9mb289YmFyYCkuIElmIHVybCBpc24ndCBwYXRoLXJlbGF0aXZlXG4gKiAoZS5nLiBgLi9oZWxsb2ApIHRoZW4gYXQgbGVhc3QgYmFzZSBtdXN0IGJlLlxuICogQWJzb2x1dGUgdXJscyBhcmUgcmVqZWN0ZWQgd2l0aCBvbmUgZXhjZXB0aW9uLCBpbiB0aGUgYnJvd3NlciwgYWJzb2x1dGUgdXJscyB0aGF0IGFyZSBvblxuICogdGhlIGN1cnJlbnQgb3JpZ2luIHdpbGwgYmUgcGFyc2VkIGFzIHJlbGF0aXZlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVJlbGF0aXZlVXJsKHVybDogc3RyaW5nLCBiYXNlPzogc3RyaW5nKSB7XG4gIGNvbnN0IGdsb2JhbEJhc2UgPSBuZXcgVVJMKFxuICAgIHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gJ2h0dHA6Ly9uJyA6IGdldExvY2F0aW9uT3JpZ2luKClcbiAgKVxuICBjb25zdCByZXNvbHZlZEJhc2UgPSBiYXNlID8gbmV3IFVSTChiYXNlLCBnbG9iYWxCYXNlKSA6IGdsb2JhbEJhc2VcbiAgY29uc3QgeyBwYXRobmFtZSwgc2VhcmNoUGFyYW1zLCBzZWFyY2gsIGhhc2gsIGhyZWYsIG9yaWdpbiB9ID0gbmV3IFVSTChcbiAgICB1cmwsXG4gICAgcmVzb2x2ZWRCYXNlXG4gIClcbiAgaWYgKG9yaWdpbiAhPT0gZ2xvYmFsQmFzZS5vcmlnaW4pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFyaWFudDogaW52YWxpZCByZWxhdGl2ZSBVUkwsIHJvdXRlciByZWNlaXZlZCAke3VybH1gKVxuICB9XG4gIHJldHVybiB7XG4gICAgcGF0aG5hbWUsXG4gICAgcXVlcnk6IHNlYXJjaFBhcmFtc1RvVXJsUXVlcnkoc2VhcmNoUGFyYW1zKSxcbiAgICBzZWFyY2gsXG4gICAgaGFzaCxcbiAgICBocmVmOiBocmVmLnNsaWNlKGdsb2JhbEJhc2Uub3JpZ2luLmxlbmd0aCksXG4gIH1cbn1cbiIsImltcG9ydCB7IFBhcnNlZFVybFF1ZXJ5IH0gZnJvbSAncXVlcnlzdHJpbmcnXG5cbmV4cG9ydCBmdW5jdGlvbiBzZWFyY2hQYXJhbXNUb1VybFF1ZXJ5KFxuICBzZWFyY2hQYXJhbXM6IFVSTFNlYXJjaFBhcmFtc1xuKTogUGFyc2VkVXJsUXVlcnkge1xuICBjb25zdCBxdWVyeTogUGFyc2VkVXJsUXVlcnkgPSB7fVxuICBzZWFyY2hQYXJhbXMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgIGlmICh0eXBlb2YgcXVlcnlba2V5XSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHF1ZXJ5W2tleV0gPSB2YWx1ZVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShxdWVyeVtrZXldKSkge1xuICAgICAgOyhxdWVyeVtrZXldIGFzIHN0cmluZ1tdKS5wdXNoKHZhbHVlKVxuICAgIH0gZWxzZSB7XG4gICAgICBxdWVyeVtrZXldID0gW3F1ZXJ5W2tleV0gYXMgc3RyaW5nLCB2YWx1ZV1cbiAgICB9XG4gIH0pXG4gIHJldHVybiBxdWVyeVxufVxuXG5mdW5jdGlvbiBzdHJpbmdpZnlVcmxRdWVyeVBhcmFtKHBhcmFtOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoXG4gICAgdHlwZW9mIHBhcmFtID09PSAnc3RyaW5nJyB8fFxuICAgICh0eXBlb2YgcGFyYW0gPT09ICdudW1iZXInICYmICFpc05hTihwYXJhbSkpIHx8XG4gICAgdHlwZW9mIHBhcmFtID09PSAnYm9vbGVhbidcbiAgKSB7XG4gICAgcmV0dXJuIFN0cmluZyhwYXJhbSlcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gJydcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdXJsUXVlcnlUb1NlYXJjaFBhcmFtcyhcbiAgdXJsUXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4pOiBVUkxTZWFyY2hQYXJhbXMge1xuICBjb25zdCByZXN1bHQgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKClcbiAgT2JqZWN0LmVudHJpZXModXJsUXVlcnkpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgdmFsdWUuZm9yRWFjaCgoaXRlbSkgPT4gcmVzdWx0LmFwcGVuZChrZXksIHN0cmluZ2lmeVVybFF1ZXJ5UGFyYW0oaXRlbSkpKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHQuc2V0KGtleSwgc3RyaW5naWZ5VXJsUXVlcnlQYXJhbSh2YWx1ZSkpXG4gICAgfVxuICB9KVxuICByZXR1cm4gcmVzdWx0XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NpZ24oXG4gIHRhcmdldDogVVJMU2VhcmNoUGFyYW1zLFxuICAuLi5zZWFyY2hQYXJhbXNMaXN0OiBVUkxTZWFyY2hQYXJhbXNbXVxuKTogVVJMU2VhcmNoUGFyYW1zIHtcbiAgc2VhcmNoUGFyYW1zTGlzdC5mb3JFYWNoKChzZWFyY2hQYXJhbXMpID0+IHtcbiAgICBBcnJheS5mcm9tKHNlYXJjaFBhcmFtcy5rZXlzKCkpLmZvckVhY2goKGtleSkgPT4gdGFyZ2V0LmRlbGV0ZShrZXkpKVxuICAgIHNlYXJjaFBhcmFtcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB0YXJnZXQuYXBwZW5kKGtleSwgdmFsdWUpKVxuICB9KVxuICByZXR1cm4gdGFyZ2V0XG59XG4iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByZXNvbHZlUmV3cml0ZXMoKSB7fVxuIiwiaW1wb3J0IHsgZ2V0Um91dGVSZWdleCB9IGZyb20gJy4vcm91dGUtcmVnZXgnXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSb3V0ZU1hdGNoZXIocm91dGVSZWdleDogUmV0dXJuVHlwZTx0eXBlb2YgZ2V0Um91dGVSZWdleD4pIHtcbiAgY29uc3QgeyByZSwgZ3JvdXBzIH0gPSByb3V0ZVJlZ2V4XG4gIHJldHVybiAocGF0aG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgICBjb25zdCByb3V0ZU1hdGNoID0gcmUuZXhlYyhwYXRobmFtZSEpXG4gICAgaWYgKCFyb3V0ZU1hdGNoKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBjb25zdCBkZWNvZGUgPSAocGFyYW06IHN0cmluZykgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChwYXJhbSlcbiAgICAgIH0gY2F0Y2ggKF8pIHtcbiAgICAgICAgY29uc3QgZXJyOiBFcnJvciAmIHsgY29kZT86IHN0cmluZyB9ID0gbmV3IEVycm9yKFxuICAgICAgICAgICdmYWlsZWQgdG8gZGVjb2RlIHBhcmFtJ1xuICAgICAgICApXG4gICAgICAgIGVyci5jb2RlID0gJ0RFQ09ERV9GQUlMRUQnXG4gICAgICAgIHRocm93IGVyclxuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBwYXJhbXM6IHsgW3BhcmFtTmFtZTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfSA9IHt9XG5cbiAgICBPYmplY3Qua2V5cyhncm91cHMpLmZvckVhY2goKHNsdWdOYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGcgPSBncm91cHNbc2x1Z05hbWVdXG4gICAgICBjb25zdCBtID0gcm91dGVNYXRjaFtnLnBvc11cbiAgICAgIGlmIChtICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcGFyYW1zW3NsdWdOYW1lXSA9IH5tLmluZGV4T2YoJy8nKVxuICAgICAgICAgID8gbS5zcGxpdCgnLycpLm1hcCgoZW50cnkpID0+IGRlY29kZShlbnRyeSkpXG4gICAgICAgICAgOiBnLnJlcGVhdFxuICAgICAgICAgID8gW2RlY29kZShtKV1cbiAgICAgICAgICA6IGRlY29kZShtKVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIHBhcmFtc1xuICB9XG59XG4iLCJleHBvcnQgaW50ZXJmYWNlIEdyb3VwIHtcbiAgcG9zOiBudW1iZXJcbiAgcmVwZWF0OiBib29sZWFuXG4gIG9wdGlvbmFsOiBib29sZWFuXG59XG5cbi8vIHRoaXMgaXNuJ3QgaW1wb3J0aW5nIHRoZSBlc2NhcGUtc3RyaW5nLXJlZ2V4IG1vZHVsZVxuLy8gdG8gcmVkdWNlIGJ5dGVzXG5mdW5jdGlvbiBlc2NhcGVSZWdleChzdHI6IHN0cmluZykge1xuICByZXR1cm4gc3RyLnJlcGxhY2UoL1t8XFxcXHt9KClbXFxdXiQrKj8uLV0vZywgJ1xcXFwkJicpXG59XG5cbmZ1bmN0aW9uIHBhcnNlUGFyYW1ldGVyKHBhcmFtOiBzdHJpbmcpIHtcbiAgY29uc3Qgb3B0aW9uYWwgPSBwYXJhbS5zdGFydHNXaXRoKCdbJykgJiYgcGFyYW0uZW5kc1dpdGgoJ10nKVxuICBpZiAob3B0aW9uYWwpIHtcbiAgICBwYXJhbSA9IHBhcmFtLnNsaWNlKDEsIC0xKVxuICB9XG4gIGNvbnN0IHJlcGVhdCA9IHBhcmFtLnN0YXJ0c1dpdGgoJy4uLicpXG4gIGlmIChyZXBlYXQpIHtcbiAgICBwYXJhbSA9IHBhcmFtLnNsaWNlKDMpXG4gIH1cbiAgcmV0dXJuIHsga2V5OiBwYXJhbSwgcmVwZWF0LCBvcHRpb25hbCB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSb3V0ZVJlZ2V4KFxuICBub3JtYWxpemVkUm91dGU6IHN0cmluZ1xuKToge1xuICByZTogUmVnRXhwXG4gIG5hbWVkUmVnZXg/OiBzdHJpbmdcbiAgcm91dGVLZXlzPzogeyBbbmFtZWQ6IHN0cmluZ106IHN0cmluZyB9XG4gIGdyb3VwczogeyBbZ3JvdXBOYW1lOiBzdHJpbmddOiBHcm91cCB9XG59IHtcbiAgY29uc3Qgc2VnbWVudHMgPSAobm9ybWFsaXplZFJvdXRlLnJlcGxhY2UoL1xcLyQvLCAnJykgfHwgJy8nKVxuICAgIC5zbGljZSgxKVxuICAgIC5zcGxpdCgnLycpXG5cbiAgY29uc3QgZ3JvdXBzOiB7IFtncm91cE5hbWU6IHN0cmluZ106IEdyb3VwIH0gPSB7fVxuICBsZXQgZ3JvdXBJbmRleCA9IDFcbiAgY29uc3QgcGFyYW1ldGVyaXplZFJvdXRlID0gc2VnbWVudHNcbiAgICAubWFwKChzZWdtZW50KSA9PiB7XG4gICAgICBpZiAoc2VnbWVudC5zdGFydHNXaXRoKCdbJykgJiYgc2VnbWVudC5lbmRzV2l0aCgnXScpKSB7XG4gICAgICAgIGNvbnN0IHsga2V5LCBvcHRpb25hbCwgcmVwZWF0IH0gPSBwYXJzZVBhcmFtZXRlcihzZWdtZW50LnNsaWNlKDEsIC0xKSlcbiAgICAgICAgZ3JvdXBzW2tleV0gPSB7IHBvczogZ3JvdXBJbmRleCsrLCByZXBlYXQsIG9wdGlvbmFsIH1cbiAgICAgICAgcmV0dXJuIHJlcGVhdCA/IChvcHRpb25hbCA/ICcoPzovKC4rPykpPycgOiAnLyguKz8pJykgOiAnLyhbXi9dKz8pJ1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGAvJHtlc2NhcGVSZWdleChzZWdtZW50KX1gXG4gICAgICB9XG4gICAgfSlcbiAgICAuam9pbignJylcblxuICAvLyBkZWFkIGNvZGUgZWxpbWluYXRlIGZvciBicm93c2VyIHNpbmNlIGl0J3Mgb25seSBuZWVkZWRcbiAgLy8gd2hpbGUgZ2VuZXJhdGluZyByb3V0ZXMtbWFuaWZlc3RcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgbGV0IHJvdXRlS2V5Q2hhckNvZGUgPSA5N1xuICAgIGxldCByb3V0ZUtleUNoYXJMZW5ndGggPSAxXG5cbiAgICAvLyBidWlsZHMgYSBtaW5pbWFsIHJvdXRlS2V5IHVzaW5nIG9ubHkgYS16IGFuZCBtaW5pbWFsIG51bWJlciBvZiBjaGFyYWN0ZXJzXG4gICAgY29uc3QgZ2V0U2FmZVJvdXRlS2V5ID0gKCkgPT4ge1xuICAgICAgbGV0IHJvdXRlS2V5ID0gJydcblxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3V0ZUtleUNoYXJMZW5ndGg7IGkrKykge1xuICAgICAgICByb3V0ZUtleSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKHJvdXRlS2V5Q2hhckNvZGUpXG4gICAgICAgIHJvdXRlS2V5Q2hhckNvZGUrK1xuXG4gICAgICAgIGlmIChyb3V0ZUtleUNoYXJDb2RlID4gMTIyKSB7XG4gICAgICAgICAgcm91dGVLZXlDaGFyTGVuZ3RoKytcbiAgICAgICAgICByb3V0ZUtleUNoYXJDb2RlID0gOTdcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJvdXRlS2V5XG4gICAgfVxuXG4gICAgY29uc3Qgcm91dGVLZXlzOiB7IFtuYW1lZDogc3RyaW5nXTogc3RyaW5nIH0gPSB7fVxuXG4gICAgbGV0IG5hbWVkUGFyYW1ldGVyaXplZFJvdXRlID0gc2VnbWVudHNcbiAgICAgIC5tYXAoKHNlZ21lbnQpID0+IHtcbiAgICAgICAgaWYgKHNlZ21lbnQuc3RhcnRzV2l0aCgnWycpICYmIHNlZ21lbnQuZW5kc1dpdGgoJ10nKSkge1xuICAgICAgICAgIGNvbnN0IHsga2V5LCBvcHRpb25hbCwgcmVwZWF0IH0gPSBwYXJzZVBhcmFtZXRlcihzZWdtZW50LnNsaWNlKDEsIC0xKSlcbiAgICAgICAgICAvLyByZXBsYWNlIGFueSBub24td29yZCBjaGFyYWN0ZXJzIHNpbmNlIHRoZXkgY2FuIGJyZWFrXG4gICAgICAgICAgLy8gdGhlIG5hbWVkIHJlZ2V4XG4gICAgICAgICAgbGV0IGNsZWFuZWRLZXkgPSBrZXkucmVwbGFjZSgvXFxXL2csICcnKVxuICAgICAgICAgIGxldCBpbnZhbGlkS2V5ID0gZmFsc2VcblxuICAgICAgICAgIC8vIGNoZWNrIGlmIHRoZSBrZXkgaXMgc3RpbGwgaW52YWxpZCBhbmQgZmFsbGJhY2sgdG8gdXNpbmcgYSBrbm93blxuICAgICAgICAgIC8vIHNhZmUga2V5XG4gICAgICAgICAgaWYgKGNsZWFuZWRLZXkubGVuZ3RoID09PSAwIHx8IGNsZWFuZWRLZXkubGVuZ3RoID4gMzApIHtcbiAgICAgICAgICAgIGludmFsaWRLZXkgPSB0cnVlXG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICghaXNOYU4ocGFyc2VJbnQoY2xlYW5lZEtleS5zdWJzdHIoMCwgMSkpKSkge1xuICAgICAgICAgICAgaW52YWxpZEtleSA9IHRydWVcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaW52YWxpZEtleSkge1xuICAgICAgICAgICAgY2xlYW5lZEtleSA9IGdldFNhZmVSb3V0ZUtleSgpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcm91dGVLZXlzW2NsZWFuZWRLZXldID0ga2V5XG4gICAgICAgICAgcmV0dXJuIHJlcGVhdFxuICAgICAgICAgICAgPyBvcHRpb25hbFxuICAgICAgICAgICAgICA/IGAoPzovKD88JHtjbGVhbmVkS2V5fT4uKz8pKT9gXG4gICAgICAgICAgICAgIDogYC8oPzwke2NsZWFuZWRLZXl9Pi4rPylgXG4gICAgICAgICAgICA6IGAvKD88JHtjbGVhbmVkS2V5fT5bXi9dKz8pYFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBgLyR7ZXNjYXBlUmVnZXgoc2VnbWVudCl9YFxuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgLmpvaW4oJycpXG5cbiAgICByZXR1cm4ge1xuICAgICAgcmU6IG5ldyBSZWdFeHAoYF4ke3BhcmFtZXRlcml6ZWRSb3V0ZX0oPzovKT8kYCksXG4gICAgICBncm91cHMsXG4gICAgICByb3V0ZUtleXMsXG4gICAgICBuYW1lZFJlZ2V4OiBgXiR7bmFtZWRQYXJhbWV0ZXJpemVkUm91dGV9KD86Lyk/JGAsXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICByZTogbmV3IFJlZ0V4cChgXiR7cGFyYW1ldGVyaXplZFJvdXRlfSg/Oi8pPyRgKSxcbiAgICBncm91cHMsXG4gIH1cbn1cbiIsImltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQgfSBmcm9tICdyZWFjdCdcblxuY29uc3QgaXNTZXJ2ZXIgPSB0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJ1xuXG50eXBlIFN0YXRlID0gSlNYLkVsZW1lbnRbXSB8IHVuZGVmaW5lZFxuXG50eXBlIFNpZGVFZmZlY3RQcm9wcyA9IHtcbiAgcmVkdWNlQ29tcG9uZW50c1RvU3RhdGU6IDxUPihcbiAgICBjb21wb25lbnRzOiBBcnJheTxSZWFjdC5SZWFjdEVsZW1lbnQ8YW55Pj4sXG4gICAgcHJvcHM6IFRcbiAgKSA9PiBTdGF0ZVxuICBoYW5kbGVTdGF0ZUNoYW5nZT86IChzdGF0ZTogU3RhdGUpID0+IHZvaWRcbiAgaGVhZE1hbmFnZXI6IGFueVxuICBpbkFtcE1vZGU/OiBib29sZWFuXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIGV4dGVuZHMgQ29tcG9uZW50PFNpZGVFZmZlY3RQcm9wcz4ge1xuICBwcml2YXRlIF9oYXNIZWFkTWFuYWdlcjogYm9vbGVhblxuXG4gIGVtaXRDaGFuZ2UgPSAoKTogdm9pZCA9PiB7XG4gICAgaWYgKHRoaXMuX2hhc0hlYWRNYW5hZ2VyKSB7XG4gICAgICB0aGlzLnByb3BzLmhlYWRNYW5hZ2VyLnVwZGF0ZUhlYWQoXG4gICAgICAgIHRoaXMucHJvcHMucmVkdWNlQ29tcG9uZW50c1RvU3RhdGUoXG4gICAgICAgICAgWy4uLnRoaXMucHJvcHMuaGVhZE1hbmFnZXIubW91bnRlZEluc3RhbmNlc10sXG4gICAgICAgICAgdGhpcy5wcm9wc1xuICAgICAgICApXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IGFueSkge1xuICAgIHN1cGVyKHByb3BzKVxuICAgIHRoaXMuX2hhc0hlYWRNYW5hZ2VyID1cbiAgICAgIHRoaXMucHJvcHMuaGVhZE1hbmFnZXIgJiYgdGhpcy5wcm9wcy5oZWFkTWFuYWdlci5tb3VudGVkSW5zdGFuY2VzXG5cbiAgICBpZiAoaXNTZXJ2ZXIgJiYgdGhpcy5faGFzSGVhZE1hbmFnZXIpIHtcbiAgICAgIHRoaXMucHJvcHMuaGVhZE1hbmFnZXIubW91bnRlZEluc3RhbmNlcy5hZGQodGhpcylcbiAgICAgIHRoaXMuZW1pdENoYW5nZSgpXG4gICAgfVxuICB9XG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgIGlmICh0aGlzLl9oYXNIZWFkTWFuYWdlcikge1xuICAgICAgdGhpcy5wcm9wcy5oZWFkTWFuYWdlci5tb3VudGVkSW5zdGFuY2VzLmFkZCh0aGlzKVxuICAgIH1cbiAgICB0aGlzLmVtaXRDaGFuZ2UoKVxuICB9XG4gIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICB0aGlzLmVtaXRDaGFuZ2UoKVxuICB9XG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgIGlmICh0aGlzLl9oYXNIZWFkTWFuYWdlcikge1xuICAgICAgdGhpcy5wcm9wcy5oZWFkTWFuYWdlci5tb3VudGVkSW5zdGFuY2VzLmRlbGV0ZSh0aGlzKVxuICAgIH1cbiAgICB0aGlzLmVtaXRDaGFuZ2UoKVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIHJldHVybiBudWxsXG4gIH1cbn1cbiIsImltcG9ydCB7IEluY29taW5nTWVzc2FnZSwgU2VydmVyUmVzcG9uc2UgfSBmcm9tICdodHRwJ1xuaW1wb3J0IHsgUGFyc2VkVXJsUXVlcnkgfSBmcm9tICdxdWVyeXN0cmluZydcbmltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFVybE9iamVjdCB9IGZyb20gJ3VybCdcbmltcG9ydCB7IGZvcm1hdFVybCB9IGZyb20gJy4vcm91dGVyL3V0aWxzL2Zvcm1hdC11cmwnXG5pbXBvcnQgeyBNYW5pZmVzdEl0ZW0gfSBmcm9tICcuLi9zZXJ2ZXIvbG9hZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgTmV4dFJvdXRlciB9IGZyb20gJy4vcm91dGVyL3JvdXRlcidcbmltcG9ydCB7IEVudiB9IGZyb20gJ0BuZXh0L2VudidcbmltcG9ydCB7IEJ1aWxkTWFuaWZlc3QgfSBmcm9tICcuLi9zZXJ2ZXIvZ2V0LXBhZ2UtZmlsZXMnXG5pbXBvcnQgeyBEb21haW5Mb2NhbGVzIH0gZnJvbSAnLi4vc2VydmVyL2NvbmZpZydcblxuLyoqXG4gKiBUeXBlcyB1c2VkIGJ5IGJvdGggbmV4dCBhbmQgbmV4dC1zZXJ2ZXJcbiAqL1xuXG5leHBvcnQgdHlwZSBOZXh0Q29tcG9uZW50VHlwZTxcbiAgQyBleHRlbmRzIEJhc2VDb250ZXh0ID0gTmV4dFBhZ2VDb250ZXh0LFxuICBJUCA9IHt9LFxuICBQID0ge31cbj4gPSBDb21wb25lbnRUeXBlPFA+ICYge1xuICAvKipcbiAgICogVXNlZCBmb3IgaW5pdGlhbCBwYWdlIGxvYWQgZGF0YSBwb3B1bGF0aW9uLiBEYXRhIHJldHVybmVkIGZyb20gYGdldEluaXRpYWxQcm9wc2AgaXMgc2VyaWFsaXplZCB3aGVuIHNlcnZlciByZW5kZXJlZC5cbiAgICogTWFrZSBzdXJlIHRvIHJldHVybiBwbGFpbiBgT2JqZWN0YCB3aXRob3V0IHVzaW5nIGBEYXRlYCwgYE1hcGAsIGBTZXRgLlxuICAgKiBAcGFyYW0gY3R4IENvbnRleHQgb2YgYHBhZ2VgXG4gICAqL1xuICBnZXRJbml0aWFsUHJvcHM/KGNvbnRleHQ6IEMpOiBJUCB8IFByb21pc2U8SVA+XG59XG5cbmV4cG9ydCB0eXBlIERvY3VtZW50VHlwZSA9IE5leHRDb21wb25lbnRUeXBlPFxuICBEb2N1bWVudENvbnRleHQsXG4gIERvY3VtZW50SW5pdGlhbFByb3BzLFxuICBEb2N1bWVudFByb3BzXG4+ICYge1xuICByZW5kZXJEb2N1bWVudChcbiAgICBEb2N1bWVudDogRG9jdW1lbnRUeXBlLFxuICAgIHByb3BzOiBEb2N1bWVudFByb3BzXG4gICk6IFJlYWN0LlJlYWN0RWxlbWVudFxufVxuXG5leHBvcnQgdHlwZSBBcHBUeXBlID0gTmV4dENvbXBvbmVudFR5cGU8XG4gIEFwcENvbnRleHRUeXBlLFxuICBBcHBJbml0aWFsUHJvcHMsXG4gIEFwcFByb3BzVHlwZVxuPlxuXG5leHBvcnQgdHlwZSBBcHBUcmVlVHlwZSA9IENvbXBvbmVudFR5cGU8XG4gIEFwcEluaXRpYWxQcm9wcyAmIHsgW25hbWU6IHN0cmluZ106IGFueSB9XG4+XG5cbi8qKlxuICogV2ViIHZpdGFscyBwcm92aWRlZCB0byBfYXBwLnJlcG9ydFdlYlZpdGFscyBieSBDb3JlIFdlYiBWaXRhbHMgcGx1Z2luIGRldmVsb3BlZCBieSBHb29nbGUgQ2hyb21lIHRlYW0uXG4gKiBodHRwczovL25leHRqcy5vcmcvYmxvZy9uZXh0LTktNCNpbnRlZ3JhdGVkLXdlYi12aXRhbHMtcmVwb3J0aW5nXG4gKi9cbmV4cG9ydCB0eXBlIE5leHRXZWJWaXRhbHNNZXRyaWMgPSB7XG4gIGlkOiBzdHJpbmdcbiAgbGFiZWw6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc3RhcnRUaW1lOiBudW1iZXJcbiAgdmFsdWU6IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBFbmhhbmNlcjxDPiA9IChDb21wb25lbnQ6IEMpID0+IENcblxuZXhwb3J0IHR5cGUgQ29tcG9uZW50c0VuaGFuY2VyID1cbiAgfCB7XG4gICAgICBlbmhhbmNlQXBwPzogRW5oYW5jZXI8QXBwVHlwZT5cbiAgICAgIGVuaGFuY2VDb21wb25lbnQ/OiBFbmhhbmNlcjxOZXh0Q29tcG9uZW50VHlwZT5cbiAgICB9XG4gIHwgRW5oYW5jZXI8TmV4dENvbXBvbmVudFR5cGU+XG5cbmV4cG9ydCB0eXBlIFJlbmRlclBhZ2VSZXN1bHQgPSB7XG4gIGh0bWw6IHN0cmluZ1xuICBoZWFkPzogQXJyYXk8SlNYLkVsZW1lbnQgfCBudWxsPlxufVxuXG5leHBvcnQgdHlwZSBSZW5kZXJQYWdlID0gKFxuICBvcHRpb25zPzogQ29tcG9uZW50c0VuaGFuY2VyXG4pID0+IFJlbmRlclBhZ2VSZXN1bHQgfCBQcm9taXNlPFJlbmRlclBhZ2VSZXN1bHQ+XG5cbmV4cG9ydCB0eXBlIEJhc2VDb250ZXh0ID0ge1xuICByZXM/OiBTZXJ2ZXJSZXNwb25zZVxuICBbazogc3RyaW5nXTogYW55XG59XG5cbmV4cG9ydCB0eXBlIE5FWFRfREFUQSA9IHtcbiAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgcGFnZTogc3RyaW5nXG4gIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeVxuICBidWlsZElkOiBzdHJpbmdcbiAgYXNzZXRQcmVmaXg/OiBzdHJpbmdcbiAgcnVudGltZUNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH1cbiAgbmV4dEV4cG9ydD86IGJvb2xlYW5cbiAgYXV0b0V4cG9ydD86IGJvb2xlYW5cbiAgaXNGYWxsYmFjaz86IGJvb2xlYW5cbiAgZHluYW1pY0lkcz86IHN0cmluZ1tdXG4gIGVycj86IEVycm9yICYgeyBzdGF0dXNDb2RlPzogbnVtYmVyIH1cbiAgZ3NwPzogYm9vbGVhblxuICBnc3NwPzogYm9vbGVhblxuICBjdXN0b21TZXJ2ZXI/OiBib29sZWFuXG4gIGdpcD86IGJvb2xlYW5cbiAgYXBwR2lwPzogYm9vbGVhblxuICBsb2NhbGU/OiBzdHJpbmdcbiAgbG9jYWxlcz86IHN0cmluZ1tdXG4gIGRlZmF1bHRMb2NhbGU/OiBzdHJpbmdcbiAgZG9tYWluTG9jYWxlcz86IERvbWFpbkxvY2FsZXNcbiAgc2NyaXB0TG9hZGVyPzogYW55W11cbiAgaXNQcmV2aWV3PzogYm9vbGVhblxufVxuXG4vKipcbiAqIGBOZXh0YCBjb250ZXh0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dFBhZ2VDb250ZXh0IHtcbiAgLyoqXG4gICAqIEVycm9yIG9iamVjdCBpZiBlbmNvdW50ZXJlZCBkdXJpbmcgcmVuZGVyaW5nXG4gICAqL1xuICBlcnI/OiAoRXJyb3IgJiB7IHN0YXR1c0NvZGU/OiBudW1iZXIgfSkgfCBudWxsXG4gIC8qKlxuICAgKiBgSFRUUGAgcmVxdWVzdCBvYmplY3QuXG4gICAqL1xuICByZXE/OiBJbmNvbWluZ01lc3NhZ2VcbiAgLyoqXG4gICAqIGBIVFRQYCByZXNwb25zZSBvYmplY3QuXG4gICAqL1xuICByZXM/OiBTZXJ2ZXJSZXNwb25zZVxuICAvKipcbiAgICogUGF0aCBzZWN0aW9uIG9mIGBVUkxgLlxuICAgKi9cbiAgcGF0aG5hbWU6IHN0cmluZ1xuICAvKipcbiAgICogUXVlcnkgc3RyaW5nIHNlY3Rpb24gb2YgYFVSTGAgcGFyc2VkIGFzIGFuIG9iamVjdC5cbiAgICovXG4gIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeVxuICAvKipcbiAgICogYFN0cmluZ2Agb2YgdGhlIGFjdHVhbCBwYXRoIGluY2x1ZGluZyBxdWVyeS5cbiAgICovXG4gIGFzUGF0aD86IHN0cmluZ1xuICAvKipcbiAgICogYENvbXBvbmVudGAgdGhlIHRyZWUgb2YgdGhlIEFwcCB0byB1c2UgaWYgbmVlZGluZyB0byByZW5kZXIgc2VwYXJhdGVseVxuICAgKi9cbiAgQXBwVHJlZTogQXBwVHJlZVR5cGVcbn1cblxuZXhwb3J0IHR5cGUgQXBwQ29udGV4dFR5cGU8UiBleHRlbmRzIE5leHRSb3V0ZXIgPSBOZXh0Um91dGVyPiA9IHtcbiAgQ29tcG9uZW50OiBOZXh0Q29tcG9uZW50VHlwZTxOZXh0UGFnZUNvbnRleHQ+XG4gIEFwcFRyZWU6IEFwcFRyZWVUeXBlXG4gIGN0eDogTmV4dFBhZ2VDb250ZXh0XG4gIHJvdXRlcjogUlxufVxuXG5leHBvcnQgdHlwZSBBcHBJbml0aWFsUHJvcHMgPSB7XG4gIHBhZ2VQcm9wczogYW55XG59XG5cbmV4cG9ydCB0eXBlIEFwcFByb3BzVHlwZTxcbiAgUiBleHRlbmRzIE5leHRSb3V0ZXIgPSBOZXh0Um91dGVyLFxuICBQID0ge31cbj4gPSBBcHBJbml0aWFsUHJvcHMgJiB7XG4gIENvbXBvbmVudDogTmV4dENvbXBvbmVudFR5cGU8TmV4dFBhZ2VDb250ZXh0LCBhbnksIFA+XG4gIHJvdXRlcjogUlxuICBfX05fU1NHPzogYm9vbGVhblxuICBfX05fU1NQPzogYm9vbGVhblxufVxuXG5leHBvcnQgdHlwZSBEb2N1bWVudENvbnRleHQgPSBOZXh0UGFnZUNvbnRleHQgJiB7XG4gIHJlbmRlclBhZ2U6IFJlbmRlclBhZ2Vcbn1cblxuZXhwb3J0IHR5cGUgRG9jdW1lbnRJbml0aWFsUHJvcHMgPSBSZW5kZXJQYWdlUmVzdWx0ICYge1xuICBzdHlsZXM/OiBSZWFjdC5SZWFjdEVsZW1lbnRbXSB8IFJlYWN0LlJlYWN0RnJhZ21lbnRcbn1cblxuZXhwb3J0IHR5cGUgRG9jdW1lbnRQcm9wcyA9IERvY3VtZW50SW5pdGlhbFByb3BzICYge1xuICBfX05FWFRfREFUQV9fOiBORVhUX0RBVEFcbiAgZGFuZ2Vyb3VzQXNQYXRoOiBzdHJpbmdcbiAgZG9jQ29tcG9uZW50c1JlbmRlcmVkOiB7XG4gICAgSHRtbD86IGJvb2xlYW5cbiAgICBNYWluPzogYm9vbGVhblxuICAgIEhlYWQ/OiBib29sZWFuXG4gICAgTmV4dFNjcmlwdD86IGJvb2xlYW5cbiAgfVxuICBidWlsZE1hbmlmZXN0OiBCdWlsZE1hbmlmZXN0XG4gIGFtcFBhdGg6IHN0cmluZ1xuICBpbkFtcE1vZGU6IGJvb2xlYW5cbiAgaHlicmlkQW1wOiBib29sZWFuXG4gIGlzRGV2ZWxvcG1lbnQ6IGJvb2xlYW5cbiAgZHluYW1pY0ltcG9ydHM6IE1hbmlmZXN0SXRlbVtdXG4gIGFzc2V0UHJlZml4Pzogc3RyaW5nXG4gIGNhbm9uaWNhbEJhc2U6IHN0cmluZ1xuICBoZWFkVGFnczogYW55W11cbiAgdW5zdGFibGVfcnVudGltZUpTPzogZmFsc2VcbiAgdW5zdGFibGVfSnNQcmVsb2FkPzogZmFsc2VcbiAgZGV2T25seUNhY2hlQnVzdGVyUXVlcnlTdHJpbmc6IHN0cmluZ1xuICBzY3JpcHRMb2FkZXI6IHsgZGVmZXI/OiBzdHJpbmdbXTsgZWFnZXI/OiBhbnlbXSB9XG4gIGxvY2FsZT86IHN0cmluZ1xufVxuXG4vKipcbiAqIE5leHQgYEFQSWAgcm91dGUgcmVxdWVzdFxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5leHRBcGlSZXF1ZXN0IGV4dGVuZHMgSW5jb21pbmdNZXNzYWdlIHtcbiAgLyoqXG4gICAqIE9iamVjdCBvZiBgcXVlcnlgIHZhbHVlcyBmcm9tIHVybFxuICAgKi9cbiAgcXVlcnk6IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXVxuICB9XG4gIC8qKlxuICAgKiBPYmplY3Qgb2YgYGNvb2tpZXNgIGZyb20gaGVhZGVyXG4gICAqL1xuICBjb29raWVzOiB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nXG4gIH1cblxuICBib2R5OiBhbnlcblxuICBlbnY6IEVudlxuXG4gIHByZXZpZXc/OiBib29sZWFuXG4gIC8qKlxuICAgKiBQcmV2aWV3IGRhdGEgc2V0IG9uIHRoZSByZXF1ZXN0LCBpZiBhbnlcbiAgICogKi9cbiAgcHJldmlld0RhdGE/OiBhbnlcbn1cblxuLyoqXG4gKiBTZW5kIGJvZHkgb2YgcmVzcG9uc2VcbiAqL1xudHlwZSBTZW5kPFQ+ID0gKGJvZHk6IFQpID0+IHZvaWRcblxuLyoqXG4gKiBOZXh0IGBBUElgIHJvdXRlIHJlc3BvbnNlXG4gKi9cbmV4cG9ydCB0eXBlIE5leHRBcGlSZXNwb25zZTxUID0gYW55PiA9IFNlcnZlclJlc3BvbnNlICYge1xuICAvKipcbiAgICogU2VuZCBkYXRhIGBhbnlgIGRhdGEgaW4gcmVzcG9uc2VcbiAgICovXG4gIHNlbmQ6IFNlbmQ8VD5cbiAgLyoqXG4gICAqIFNlbmQgZGF0YSBganNvbmAgZGF0YSBpbiByZXNwb25zZVxuICAgKi9cbiAganNvbjogU2VuZDxUPlxuICBzdGF0dXM6IChzdGF0dXNDb2RlOiBudW1iZXIpID0+IE5leHRBcGlSZXNwb25zZTxUPlxuICByZWRpcmVjdCh1cmw6IHN0cmluZyk6IE5leHRBcGlSZXNwb25zZTxUPlxuICByZWRpcmVjdChzdGF0dXM6IG51bWJlciwgdXJsOiBzdHJpbmcpOiBOZXh0QXBpUmVzcG9uc2U8VD5cblxuICAvKipcbiAgICogU2V0IHByZXZpZXcgZGF0YSBmb3IgTmV4dC5qcycgcHJlcmVuZGVyIG1vZGVcbiAgICovXG4gIHNldFByZXZpZXdEYXRhOiAoXG4gICAgZGF0YTogb2JqZWN0IHwgc3RyaW5nLFxuICAgIG9wdGlvbnM/OiB7XG4gICAgICAvKipcbiAgICAgICAqIFNwZWNpZmllcyB0aGUgbnVtYmVyIChpbiBzZWNvbmRzKSBmb3IgdGhlIHByZXZpZXcgc2Vzc2lvbiB0byBsYXN0IGZvci5cbiAgICAgICAqIFRoZSBnaXZlbiBudW1iZXIgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBieSByb3VuZGluZyBkb3duLlxuICAgICAgICogQnkgZGVmYXVsdCwgbm8gbWF4aW11bSBhZ2UgaXMgc2V0IGFuZCB0aGUgcHJldmlldyBzZXNzaW9uIGZpbmlzaGVzXG4gICAgICAgKiB3aGVuIHRoZSBjbGllbnQgc2h1dHMgZG93biAoYnJvd3NlciBpcyBjbG9zZWQpLlxuICAgICAgICovXG4gICAgICBtYXhBZ2U/OiBudW1iZXJcbiAgICB9XG4gICkgPT4gTmV4dEFwaVJlc3BvbnNlPFQ+XG4gIGNsZWFyUHJldmlld0RhdGE6ICgpID0+IE5leHRBcGlSZXNwb25zZTxUPlxufVxuXG4vKipcbiAqIE5leHQgYEFQSWAgcm91dGUgaGFuZGxlclxuICovXG5leHBvcnQgdHlwZSBOZXh0QXBpSGFuZGxlcjxUID0gYW55PiA9IChcbiAgcmVxOiBOZXh0QXBpUmVxdWVzdCxcbiAgcmVzOiBOZXh0QXBpUmVzcG9uc2U8VD5cbikgPT4gdm9pZCB8IFByb21pc2U8dm9pZD5cblxuLyoqXG4gKiBVdGlsc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZXhlY09uY2U8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gUmV0dXJuVHlwZTxUPj4oXG4gIGZuOiBUXG4pOiBUIHtcbiAgbGV0IHVzZWQgPSBmYWxzZVxuICBsZXQgcmVzdWx0OiBSZXR1cm5UeXBlPFQ+XG5cbiAgcmV0dXJuICgoLi4uYXJnczogYW55W10pID0+IHtcbiAgICBpZiAoIXVzZWQpIHtcbiAgICAgIHVzZWQgPSB0cnVlXG4gICAgICByZXN1bHQgPSBmbiguLi5hcmdzKVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0XG4gIH0pIGFzIFRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExvY2F0aW9uT3JpZ2luKCkge1xuICBjb25zdCB7IHByb3RvY29sLCBob3N0bmFtZSwgcG9ydCB9ID0gd2luZG93LmxvY2F0aW9uXG4gIHJldHVybiBgJHtwcm90b2NvbH0vLyR7aG9zdG5hbWV9JHtwb3J0ID8gJzonICsgcG9ydCA6ICcnfWBcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFVSTCgpIHtcbiAgY29uc3QgeyBocmVmIH0gPSB3aW5kb3cubG9jYXRpb25cbiAgY29uc3Qgb3JpZ2luID0gZ2V0TG9jYXRpb25PcmlnaW4oKVxuICByZXR1cm4gaHJlZi5zdWJzdHJpbmcob3JpZ2luLmxlbmd0aClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpc3BsYXlOYW1lPFA+KENvbXBvbmVudDogQ29tcG9uZW50VHlwZTxQPikge1xuICByZXR1cm4gdHlwZW9mIENvbXBvbmVudCA9PT0gJ3N0cmluZydcbiAgICA/IENvbXBvbmVudFxuICAgIDogQ29tcG9uZW50LmRpc3BsYXlOYW1lIHx8IENvbXBvbmVudC5uYW1lIHx8ICdVbmtub3duJ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNSZXNTZW50KHJlczogU2VydmVyUmVzcG9uc2UpIHtcbiAgcmV0dXJuIHJlcy5maW5pc2hlZCB8fCByZXMuaGVhZGVyc1NlbnRcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRHZXRJbml0aWFsUHJvcHM8XG4gIEMgZXh0ZW5kcyBCYXNlQ29udGV4dCxcbiAgSVAgPSB7fSxcbiAgUCA9IHt9XG4+KEFwcDogTmV4dENvbXBvbmVudFR5cGU8QywgSVAsIFA+LCBjdHg6IEMpOiBQcm9taXNlPElQPiB7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgaWYgKEFwcC5wcm90b3R5cGU/LmdldEluaXRpYWxQcm9wcykge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBcIiR7Z2V0RGlzcGxheU5hbWUoXG4gICAgICAgIEFwcFxuICAgICAgKX0uZ2V0SW5pdGlhbFByb3BzKClcIiBpcyBkZWZpbmVkIGFzIGFuIGluc3RhbmNlIG1ldGhvZCAtIHZpc2l0IGh0dHBzOi8vZXJyLnNoL3ZlcmNlbC9uZXh0LmpzL2dldC1pbml0aWFsLXByb3BzLWFzLWFuLWluc3RhbmNlLW1ldGhvZCBmb3IgbW9yZSBpbmZvcm1hdGlvbi5gXG4gICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSlcbiAgICB9XG4gIH1cbiAgLy8gd2hlbiBjYWxsZWQgZnJvbSBfYXBwIGBjdHhgIGlzIG5lc3RlZCBpbiBgY3R4YFxuICBjb25zdCByZXMgPSBjdHgucmVzIHx8IChjdHguY3R4ICYmIGN0eC5jdHgucmVzKVxuXG4gIGlmICghQXBwLmdldEluaXRpYWxQcm9wcykge1xuICAgIGlmIChjdHguY3R4ICYmIGN0eC5Db21wb25lbnQpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmUgcGFnZVByb3BzIGRlZmF1bHRcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VQcm9wczogYXdhaXQgbG9hZEdldEluaXRpYWxQcm9wcyhjdHguQ29tcG9uZW50LCBjdHguY3R4KSxcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHt9IGFzIElQXG4gIH1cblxuICBjb25zdCBwcm9wcyA9IGF3YWl0IEFwcC5nZXRJbml0aWFsUHJvcHMoY3R4KVxuXG4gIGlmIChyZXMgJiYgaXNSZXNTZW50KHJlcykpIHtcbiAgICByZXR1cm4gcHJvcHNcbiAgfVxuXG4gIGlmICghcHJvcHMpIHtcbiAgICBjb25zdCBtZXNzYWdlID0gYFwiJHtnZXREaXNwbGF5TmFtZShcbiAgICAgIEFwcFxuICAgICl9LmdldEluaXRpYWxQcm9wcygpXCIgc2hvdWxkIHJlc29sdmUgdG8gYW4gb2JqZWN0LiBCdXQgZm91bmQgXCIke3Byb3BzfVwiIGluc3RlYWQuYFxuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKVxuICB9XG5cbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICBpZiAoT2JqZWN0LmtleXMocHJvcHMpLmxlbmd0aCA9PT0gMCAmJiAhY3R4LmN0eCkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgJHtnZXREaXNwbGF5TmFtZShcbiAgICAgICAgICBBcHBcbiAgICAgICAgKX0gcmV0dXJuZWQgYW4gZW1wdHkgb2JqZWN0IGZyb20gXFxgZ2V0SW5pdGlhbFByb3BzXFxgLiBUaGlzIGRlLW9wdGltaXplcyBhbmQgcHJldmVudHMgYXV0b21hdGljIHN0YXRpYyBvcHRpbWl6YXRpb24uIGh0dHBzOi8vZXJyLnNoL3ZlcmNlbC9uZXh0LmpzL2VtcHR5LW9iamVjdC1nZXRJbml0aWFsUHJvcHNgXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHByb3BzXG59XG5cbmV4cG9ydCBjb25zdCB1cmxPYmplY3RLZXlzID0gW1xuICAnYXV0aCcsXG4gICdoYXNoJyxcbiAgJ2hvc3QnLFxuICAnaG9zdG5hbWUnLFxuICAnaHJlZicsXG4gICdwYXRoJyxcbiAgJ3BhdGhuYW1lJyxcbiAgJ3BvcnQnLFxuICAncHJvdG9jb2wnLFxuICAncXVlcnknLFxuICAnc2VhcmNoJyxcbiAgJ3NsYXNoZXMnLFxuXVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0V2l0aFZhbGlkYXRpb24odXJsOiBVcmxPYmplY3QpOiBzdHJpbmcge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICBpZiAodXJsICE9PSBudWxsICYmIHR5cGVvZiB1cmwgPT09ICdvYmplY3QnKSB7XG4gICAgICBPYmplY3Qua2V5cyh1cmwpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICBpZiAodXJsT2JqZWN0S2V5cy5pbmRleE9mKGtleSkgPT09IC0xKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgYFVua25vd24ga2V5IHBhc3NlZCB2aWEgdXJsT2JqZWN0IGludG8gdXJsLmZvcm1hdDogJHtrZXl9YFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZm9ybWF0VXJsKHVybClcbn1cblxuZXhwb3J0IGNvbnN0IFNQID0gdHlwZW9mIHBlcmZvcm1hbmNlICE9PSAndW5kZWZpbmVkJ1xuZXhwb3J0IGNvbnN0IFNUID1cbiAgU1AgJiZcbiAgdHlwZW9mIHBlcmZvcm1hbmNlLm1hcmsgPT09ICdmdW5jdGlvbicgJiZcbiAgdHlwZW9mIHBlcmZvcm1hbmNlLm1lYXN1cmUgPT09ICdmdW5jdGlvbidcbiIsIlwidXNlIHN0cmljdFwiO2V4cG9ydHMuX19lc01vZHVsZT10cnVlO2V4cG9ydHMubm9ybWFsaXplUGF0aFNlcD1ub3JtYWxpemVQYXRoU2VwO2V4cG9ydHMuZGVub3JtYWxpemVQYWdlUGF0aD1kZW5vcm1hbGl6ZVBhZ2VQYXRoO2Z1bmN0aW9uIG5vcm1hbGl6ZVBhdGhTZXAocGF0aCl7cmV0dXJuIHBhdGgucmVwbGFjZSgvXFxcXC9nLCcvJyk7fWZ1bmN0aW9uIGRlbm9ybWFsaXplUGFnZVBhdGgocGFnZSl7cGFnZT1ub3JtYWxpemVQYXRoU2VwKHBhZ2UpO2lmKHBhZ2Uuc3RhcnRzV2l0aCgnL2luZGV4LycpKXtwYWdlPXBhZ2Uuc2xpY2UoNik7fWVsc2UgaWYocGFnZT09PScvaW5kZXgnKXtwYWdlPScvJzt9cmV0dXJuIHBhZ2U7fVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGVub3JtYWxpemUtcGFnZS1wYXRoLmpzLm1hcCIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9kaXN0L25leHQtc2VydmVyL2xpYi9oZWFkJylcbiIsIi8qKiBAbGljZW5zZSBSZWFjdCB2MTYuMTMuMVxuICogcmVhY3QtaXMuZGV2ZWxvcG1lbnQuanNcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIEZhY2Vib29rLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cblxuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gIChmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxuLy8gVGhlIFN5bWJvbCB1c2VkIHRvIHRhZyB0aGUgUmVhY3RFbGVtZW50LWxpa2UgdHlwZXMuIElmIHRoZXJlIGlzIG5vIG5hdGl2ZSBTeW1ib2xcbi8vIG5vciBwb2x5ZmlsbCwgdGhlbiBhIHBsYWluIG51bWJlciBpcyB1c2VkIGZvciBwZXJmb3JtYW5jZS5cbnZhciBoYXNTeW1ib2wgPSB0eXBlb2YgU3ltYm9sID09PSAnZnVuY3Rpb24nICYmIFN5bWJvbC5mb3I7XG52YXIgUkVBQ1RfRUxFTUVOVF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuZWxlbWVudCcpIDogMHhlYWM3O1xudmFyIFJFQUNUX1BPUlRBTF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QucG9ydGFsJykgOiAweGVhY2E7XG52YXIgUkVBQ1RfRlJBR01FTlRfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LmZyYWdtZW50JykgOiAweGVhY2I7XG52YXIgUkVBQ1RfU1RSSUNUX01PREVfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LnN0cmljdF9tb2RlJykgOiAweGVhY2M7XG52YXIgUkVBQ1RfUFJPRklMRVJfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LnByb2ZpbGVyJykgOiAweGVhZDI7XG52YXIgUkVBQ1RfUFJPVklERVJfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LnByb3ZpZGVyJykgOiAweGVhY2Q7XG52YXIgUkVBQ1RfQ09OVEVYVF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuY29udGV4dCcpIDogMHhlYWNlOyAvLyBUT0RPOiBXZSBkb24ndCB1c2UgQXN5bmNNb2RlIG9yIENvbmN1cnJlbnRNb2RlIGFueW1vcmUuIFRoZXkgd2VyZSB0ZW1wb3Jhcnlcbi8vICh1bnN0YWJsZSkgQVBJcyB0aGF0IGhhdmUgYmVlbiByZW1vdmVkLiBDYW4gd2UgcmVtb3ZlIHRoZSBzeW1ib2xzP1xuXG52YXIgUkVBQ1RfQVNZTkNfTU9ERV9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuYXN5bmNfbW9kZScpIDogMHhlYWNmO1xudmFyIFJFQUNUX0NPTkNVUlJFTlRfTU9ERV9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuY29uY3VycmVudF9tb2RlJykgOiAweGVhY2Y7XG52YXIgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LmZvcndhcmRfcmVmJykgOiAweGVhZDA7XG52YXIgUkVBQ1RfU1VTUEVOU0VfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LnN1c3BlbnNlJykgOiAweGVhZDE7XG52YXIgUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3Quc3VzcGVuc2VfbGlzdCcpIDogMHhlYWQ4O1xudmFyIFJFQUNUX01FTU9fVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0Lm1lbW8nKSA6IDB4ZWFkMztcbnZhciBSRUFDVF9MQVpZX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5sYXp5JykgOiAweGVhZDQ7XG52YXIgUkVBQ1RfQkxPQ0tfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LmJsb2NrJykgOiAweGVhZDk7XG52YXIgUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LmZ1bmRhbWVudGFsJykgOiAweGVhZDU7XG52YXIgUkVBQ1RfUkVTUE9OREVSX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5yZXNwb25kZXInKSA6IDB4ZWFkNjtcbnZhciBSRUFDVF9TQ09QRV9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3Quc2NvcGUnKSA6IDB4ZWFkNztcblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpIHtcbiAgcmV0dXJuIHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJyB8fCAvLyBOb3RlOiBpdHMgdHlwZW9mIG1pZ2h0IGJlIG90aGVyIHRoYW4gJ3N5bWJvbCcgb3IgJ251bWJlcicgaWYgaXQncyBhIHBvbHlmaWxsLlxuICB0eXBlID09PSBSRUFDVF9GUkFHTUVOVF9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX0NPTkNVUlJFTlRfTU9ERV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1BST0ZJTEVSX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfU1RSSUNUX01PREVfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9TVVNQRU5TRV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSB8fCB0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgdHlwZSAhPT0gbnVsbCAmJiAodHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTEFaWV9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX01FTU9fVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9QUk9WSURFUl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0NPTlRFWFRfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZVTkRBTUVOVEFMX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfUkVTUE9OREVSX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfU0NPUEVfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9CTE9DS19UWVBFKTtcbn1cblxuZnVuY3Rpb24gdHlwZU9mKG9iamVjdCkge1xuICBpZiAodHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgJiYgb2JqZWN0ICE9PSBudWxsKSB7XG4gICAgdmFyICQkdHlwZW9mID0gb2JqZWN0LiQkdHlwZW9mO1xuXG4gICAgc3dpdGNoICgkJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9FTEVNRU5UX1RZUEU6XG4gICAgICAgIHZhciB0eXBlID0gb2JqZWN0LnR5cGU7XG5cbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgY2FzZSBSRUFDVF9BU1lOQ19NT0RFX1RZUEU6XG4gICAgICAgICAgY2FzZSBSRUFDVF9DT05DVVJSRU5UX01PREVfVFlQRTpcbiAgICAgICAgICBjYXNlIFJFQUNUX0ZSQUdNRU5UX1RZUEU6XG4gICAgICAgICAgY2FzZSBSRUFDVF9QUk9GSUxFUl9UWVBFOlxuICAgICAgICAgIGNhc2UgUkVBQ1RfU1RSSUNUX01PREVfVFlQRTpcbiAgICAgICAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX1RZUEU6XG4gICAgICAgICAgICByZXR1cm4gdHlwZTtcblxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICB2YXIgJCR0eXBlb2ZUeXBlID0gdHlwZSAmJiB0eXBlLiQkdHlwZW9mO1xuXG4gICAgICAgICAgICBzd2l0Y2ggKCQkdHlwZW9mVHlwZSkge1xuICAgICAgICAgICAgICBjYXNlIFJFQUNUX0NPTlRFWFRfVFlQRTpcbiAgICAgICAgICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICAgICAgICBjYXNlIFJFQUNUX0xBWllfVFlQRTpcbiAgICAgICAgICAgICAgY2FzZSBSRUFDVF9NRU1PX1RZUEU6XG4gICAgICAgICAgICAgIGNhc2UgUkVBQ1RfUFJPVklERVJfVFlQRTpcbiAgICAgICAgICAgICAgICByZXR1cm4gJCR0eXBlb2ZUeXBlO1xuXG4gICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuICQkdHlwZW9mO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgY2FzZSBSRUFDVF9QT1JUQUxfVFlQRTpcbiAgICAgICAgcmV0dXJuICQkdHlwZW9mO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB1bmRlZmluZWQ7XG59IC8vIEFzeW5jTW9kZSBpcyBkZXByZWNhdGVkIGFsb25nIHdpdGggaXNBc3luY01vZGVcblxudmFyIEFzeW5jTW9kZSA9IFJFQUNUX0FTWU5DX01PREVfVFlQRTtcbnZhciBDb25jdXJyZW50TW9kZSA9IFJFQUNUX0NPTkNVUlJFTlRfTU9ERV9UWVBFO1xudmFyIENvbnRleHRDb25zdW1lciA9IFJFQUNUX0NPTlRFWFRfVFlQRTtcbnZhciBDb250ZXh0UHJvdmlkZXIgPSBSRUFDVF9QUk9WSURFUl9UWVBFO1xudmFyIEVsZW1lbnQgPSBSRUFDVF9FTEVNRU5UX1RZUEU7XG52YXIgRm9yd2FyZFJlZiA9IFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU7XG52YXIgRnJhZ21lbnQgPSBSRUFDVF9GUkFHTUVOVF9UWVBFO1xudmFyIExhenkgPSBSRUFDVF9MQVpZX1RZUEU7XG52YXIgTWVtbyA9IFJFQUNUX01FTU9fVFlQRTtcbnZhciBQb3J0YWwgPSBSRUFDVF9QT1JUQUxfVFlQRTtcbnZhciBQcm9maWxlciA9IFJFQUNUX1BST0ZJTEVSX1RZUEU7XG52YXIgU3RyaWN0TW9kZSA9IFJFQUNUX1NUUklDVF9NT0RFX1RZUEU7XG52YXIgU3VzcGVuc2UgPSBSRUFDVF9TVVNQRU5TRV9UWVBFO1xudmFyIGhhc1dhcm5lZEFib3V0RGVwcmVjYXRlZElzQXN5bmNNb2RlID0gZmFsc2U7IC8vIEFzeW5jTW9kZSBzaG91bGQgYmUgZGVwcmVjYXRlZFxuXG5mdW5jdGlvbiBpc0FzeW5jTW9kZShvYmplY3QpIHtcbiAge1xuICAgIGlmICghaGFzV2FybmVkQWJvdXREZXByZWNhdGVkSXNBc3luY01vZGUpIHtcbiAgICAgIGhhc1dhcm5lZEFib3V0RGVwcmVjYXRlZElzQXN5bmNNb2RlID0gdHJ1ZTsgLy8gVXNpbmcgY29uc29sZVsnd2FybiddIHRvIGV2YWRlIEJhYmVsIGFuZCBFU0xpbnRcblxuICAgICAgY29uc29sZVsnd2FybiddKCdUaGUgUmVhY3RJcy5pc0FzeW5jTW9kZSgpIGFsaWFzIGhhcyBiZWVuIGRlcHJlY2F0ZWQsICcgKyAnYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBSZWFjdCAxNysuIFVwZGF0ZSB5b3VyIGNvZGUgdG8gdXNlICcgKyAnUmVhY3RJcy5pc0NvbmN1cnJlbnRNb2RlKCkgaW5zdGVhZC4gSXQgaGFzIHRoZSBleGFjdCBzYW1lIEFQSS4nKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gaXNDb25jdXJyZW50TW9kZShvYmplY3QpIHx8IHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9BU1lOQ19NT0RFX1RZUEU7XG59XG5mdW5jdGlvbiBpc0NvbmN1cnJlbnRNb2RlKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX0NPTkNVUlJFTlRfTU9ERV9UWVBFO1xufVxuZnVuY3Rpb24gaXNDb250ZXh0Q29uc3VtZXIob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlT2Yob2JqZWN0KSA9PT0gUkVBQ1RfQ09OVEVYVF9UWVBFO1xufVxuZnVuY3Rpb24gaXNDb250ZXh0UHJvdmlkZXIob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlT2Yob2JqZWN0KSA9PT0gUkVBQ1RfUFJPVklERVJfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzRWxlbWVudChvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVvZiBvYmplY3QgPT09ICdvYmplY3QnICYmIG9iamVjdCAhPT0gbnVsbCAmJiBvYmplY3QuJCR0eXBlb2YgPT09IFJFQUNUX0VMRU1FTlRfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzRm9yd2FyZFJlZihvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFO1xufVxuZnVuY3Rpb24gaXNGcmFnbWVudChvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9GUkFHTUVOVF9UWVBFO1xufVxuZnVuY3Rpb24gaXNMYXp5KG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX0xBWllfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzTWVtbyhvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9NRU1PX1RZUEU7XG59XG5mdW5jdGlvbiBpc1BvcnRhbChvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9QT1JUQUxfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzUHJvZmlsZXIob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlT2Yob2JqZWN0KSA9PT0gUkVBQ1RfUFJPRklMRVJfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzU3RyaWN0TW9kZShvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFO1xufVxuZnVuY3Rpb24gaXNTdXNwZW5zZShvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9TVVNQRU5TRV9UWVBFO1xufVxuXG5leHBvcnRzLkFzeW5jTW9kZSA9IEFzeW5jTW9kZTtcbmV4cG9ydHMuQ29uY3VycmVudE1vZGUgPSBDb25jdXJyZW50TW9kZTtcbmV4cG9ydHMuQ29udGV4dENvbnN1bWVyID0gQ29udGV4dENvbnN1bWVyO1xuZXhwb3J0cy5Db250ZXh0UHJvdmlkZXIgPSBDb250ZXh0UHJvdmlkZXI7XG5leHBvcnRzLkVsZW1lbnQgPSBFbGVtZW50O1xuZXhwb3J0cy5Gb3J3YXJkUmVmID0gRm9yd2FyZFJlZjtcbmV4cG9ydHMuRnJhZ21lbnQgPSBGcmFnbWVudDtcbmV4cG9ydHMuTGF6eSA9IExhenk7XG5leHBvcnRzLk1lbW8gPSBNZW1vO1xuZXhwb3J0cy5Qb3J0YWwgPSBQb3J0YWw7XG5leHBvcnRzLlByb2ZpbGVyID0gUHJvZmlsZXI7XG5leHBvcnRzLlN0cmljdE1vZGUgPSBTdHJpY3RNb2RlO1xuZXhwb3J0cy5TdXNwZW5zZSA9IFN1c3BlbnNlO1xuZXhwb3J0cy5pc0FzeW5jTW9kZSA9IGlzQXN5bmNNb2RlO1xuZXhwb3J0cy5pc0NvbmN1cnJlbnRNb2RlID0gaXNDb25jdXJyZW50TW9kZTtcbmV4cG9ydHMuaXNDb250ZXh0Q29uc3VtZXIgPSBpc0NvbnRleHRDb25zdW1lcjtcbmV4cG9ydHMuaXNDb250ZXh0UHJvdmlkZXIgPSBpc0NvbnRleHRQcm92aWRlcjtcbmV4cG9ydHMuaXNFbGVtZW50ID0gaXNFbGVtZW50O1xuZXhwb3J0cy5pc0ZvcndhcmRSZWYgPSBpc0ZvcndhcmRSZWY7XG5leHBvcnRzLmlzRnJhZ21lbnQgPSBpc0ZyYWdtZW50O1xuZXhwb3J0cy5pc0xhenkgPSBpc0xhenk7XG5leHBvcnRzLmlzTWVtbyA9IGlzTWVtbztcbmV4cG9ydHMuaXNQb3J0YWwgPSBpc1BvcnRhbDtcbmV4cG9ydHMuaXNQcm9maWxlciA9IGlzUHJvZmlsZXI7XG5leHBvcnRzLmlzU3RyaWN0TW9kZSA9IGlzU3RyaWN0TW9kZTtcbmV4cG9ydHMuaXNTdXNwZW5zZSA9IGlzU3VzcGVuc2U7XG5leHBvcnRzLmlzVmFsaWRFbGVtZW50VHlwZSA9IGlzVmFsaWRFbGVtZW50VHlwZTtcbmV4cG9ydHMudHlwZU9mID0gdHlwZU9mO1xuICB9KSgpO1xufVxuIiwiJ3VzZSBzdHJpY3QnO1xuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJykge1xuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vY2pzL3JlYWN0LWlzLnByb2R1Y3Rpb24ubWluLmpzJyk7XG59IGVsc2Uge1xuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vY2pzL3JlYWN0LWlzLmRldmVsb3BtZW50LmpzJyk7XG59XG4iLCIvKiogQGxpY2Vuc2UgUmVhY3QgdjE3LjAuMVxuICogcmVhY3QtanN4LWRldi1ydW50aW1lLmRldmVsb3BtZW50LmpzXG4gKlxuICogQ29weXJpZ2h0IChjKSBGYWNlYm9vaywgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gIChmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxudmFyIFJlYWN0ID0gcmVxdWlyZSgncmVhY3QnKTtcbnZhciBfYXNzaWduID0gcmVxdWlyZSgnb2JqZWN0LWFzc2lnbicpO1xuXG4vLyBBVFRFTlRJT05cbi8vIFdoZW4gYWRkaW5nIG5ldyBzeW1ib2xzIHRvIHRoaXMgZmlsZSxcbi8vIFBsZWFzZSBjb25zaWRlciBhbHNvIGFkZGluZyB0byAncmVhY3QtZGV2dG9vbHMtc2hhcmVkL3NyYy9iYWNrZW5kL1JlYWN0U3ltYm9scydcbi8vIFRoZSBTeW1ib2wgdXNlZCB0byB0YWcgdGhlIFJlYWN0RWxlbWVudC1saWtlIHR5cGVzLiBJZiB0aGVyZSBpcyBubyBuYXRpdmUgU3ltYm9sXG4vLyBub3IgcG9seWZpbGwsIHRoZW4gYSBwbGFpbiBudW1iZXIgaXMgdXNlZCBmb3IgcGVyZm9ybWFuY2UuXG52YXIgUkVBQ1RfRUxFTUVOVF9UWVBFID0gMHhlYWM3O1xudmFyIFJFQUNUX1BPUlRBTF9UWVBFID0gMHhlYWNhO1xuZXhwb3J0cy5GcmFnbWVudCA9IDB4ZWFjYjtcbnZhciBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFID0gMHhlYWNjO1xudmFyIFJFQUNUX1BST0ZJTEVSX1RZUEUgPSAweGVhZDI7XG52YXIgUkVBQ1RfUFJPVklERVJfVFlQRSA9IDB4ZWFjZDtcbnZhciBSRUFDVF9DT05URVhUX1RZUEUgPSAweGVhY2U7XG52YXIgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSA9IDB4ZWFkMDtcbnZhciBSRUFDVF9TVVNQRU5TRV9UWVBFID0gMHhlYWQxO1xudmFyIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSA9IDB4ZWFkODtcbnZhciBSRUFDVF9NRU1PX1RZUEUgPSAweGVhZDM7XG52YXIgUkVBQ1RfTEFaWV9UWVBFID0gMHhlYWQ0O1xudmFyIFJFQUNUX0JMT0NLX1RZUEUgPSAweGVhZDk7XG52YXIgUkVBQ1RfU0VSVkVSX0JMT0NLX1RZUEUgPSAweGVhZGE7XG52YXIgUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSA9IDB4ZWFkNTtcbnZhciBSRUFDVF9TQ09QRV9UWVBFID0gMHhlYWQ3O1xudmFyIFJFQUNUX09QQVFVRV9JRF9UWVBFID0gMHhlYWUwO1xudmFyIFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFID0gMHhlYWUxO1xudmFyIFJFQUNUX09GRlNDUkVFTl9UWVBFID0gMHhlYWUyO1xudmFyIFJFQUNUX0xFR0FDWV9ISURERU5fVFlQRSA9IDB4ZWFlMztcblxuaWYgKHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiYgU3ltYm9sLmZvcikge1xuICB2YXIgc3ltYm9sRm9yID0gU3ltYm9sLmZvcjtcbiAgUkVBQ1RfRUxFTUVOVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5lbGVtZW50Jyk7XG4gIFJFQUNUX1BPUlRBTF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5wb3J0YWwnKTtcbiAgZXhwb3J0cy5GcmFnbWVudCA9IHN5bWJvbEZvcigncmVhY3QuZnJhZ21lbnQnKTtcbiAgUkVBQ1RfU1RSSUNUX01PREVfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc3RyaWN0X21vZGUnKTtcbiAgUkVBQ1RfUFJPRklMRVJfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QucHJvZmlsZXInKTtcbiAgUkVBQ1RfUFJPVklERVJfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QucHJvdmlkZXInKTtcbiAgUkVBQ1RfQ09OVEVYVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5jb250ZXh0Jyk7XG4gIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmZvcndhcmRfcmVmJyk7XG4gIFJFQUNUX1NVU1BFTlNFX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LnN1c3BlbnNlJyk7XG4gIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc3VzcGVuc2VfbGlzdCcpO1xuICBSRUFDVF9NRU1PX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0Lm1lbW8nKTtcbiAgUkVBQ1RfTEFaWV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5sYXp5Jyk7XG4gIFJFQUNUX0JMT0NLX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmJsb2NrJyk7XG4gIFJFQUNUX1NFUlZFUl9CTE9DS19UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zZXJ2ZXIuYmxvY2snKTtcbiAgUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZnVuZGFtZW50YWwnKTtcbiAgUkVBQ1RfU0NPUEVfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc2NvcGUnKTtcbiAgUkVBQ1RfT1BBUVVFX0lEX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0Lm9wYXF1ZS5pZCcpO1xuICBSRUFDVF9ERUJVR19UUkFDSU5HX01PREVfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZGVidWdfdHJhY2VfbW9kZScpO1xuICBSRUFDVF9PRkZTQ1JFRU5fVFlQRSA9IHN5bWJvbEZvcigncmVhY3Qub2Zmc2NyZWVuJyk7XG4gIFJFQUNUX0xFR0FDWV9ISURERU5fVFlQRSA9IHN5bWJvbEZvcigncmVhY3QubGVnYWN5X2hpZGRlbicpO1xufVxuXG52YXIgTUFZQkVfSVRFUkFUT1JfU1lNQk9MID0gdHlwZW9mIFN5bWJvbCA9PT0gJ2Z1bmN0aW9uJyAmJiBTeW1ib2wuaXRlcmF0b3I7XG52YXIgRkFVWF9JVEVSQVRPUl9TWU1CT0wgPSAnQEBpdGVyYXRvcic7XG5mdW5jdGlvbiBnZXRJdGVyYXRvckZuKG1heWJlSXRlcmFibGUpIHtcbiAgaWYgKG1heWJlSXRlcmFibGUgPT09IG51bGwgfHwgdHlwZW9mIG1heWJlSXRlcmFibGUgIT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB2YXIgbWF5YmVJdGVyYXRvciA9IE1BWUJFX0lURVJBVE9SX1NZTUJPTCAmJiBtYXliZUl0ZXJhYmxlW01BWUJFX0lURVJBVE9SX1NZTUJPTF0gfHwgbWF5YmVJdGVyYWJsZVtGQVVYX0lURVJBVE9SX1NZTUJPTF07XG5cbiAgaWYgKHR5cGVvZiBtYXliZUl0ZXJhdG9yID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1heWJlSXRlcmF0b3I7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxudmFyIFJlYWN0U2hhcmVkSW50ZXJuYWxzID0gUmVhY3QuX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQ7XG5cbmZ1bmN0aW9uIGVycm9yKGZvcm1hdCkge1xuICB7XG4gICAgZm9yICh2YXIgX2xlbjIgPSBhcmd1bWVudHMubGVuZ3RoLCBhcmdzID0gbmV3IEFycmF5KF9sZW4yID4gMSA/IF9sZW4yIC0gMSA6IDApLCBfa2V5MiA9IDE7IF9rZXkyIDwgX2xlbjI7IF9rZXkyKyspIHtcbiAgICAgIGFyZ3NbX2tleTIgLSAxXSA9IGFyZ3VtZW50c1tfa2V5Ml07XG4gICAgfVxuXG4gICAgcHJpbnRXYXJuaW5nKCdlcnJvcicsIGZvcm1hdCwgYXJncyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcHJpbnRXYXJuaW5nKGxldmVsLCBmb3JtYXQsIGFyZ3MpIHtcbiAgLy8gV2hlbiBjaGFuZ2luZyB0aGlzIGxvZ2ljLCB5b3UgbWlnaHQgd2FudCB0byBhbHNvXG4gIC8vIHVwZGF0ZSBjb25zb2xlV2l0aFN0YWNrRGV2Lnd3dy5qcyBhcyB3ZWxsLlxuICB7XG4gICAgdmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lO1xuICAgIHZhciBzdGFjayA9IFJlYWN0RGVidWdDdXJyZW50RnJhbWUuZ2V0U3RhY2tBZGRlbmR1bSgpO1xuXG4gICAgaWYgKHN0YWNrICE9PSAnJykge1xuICAgICAgZm9ybWF0ICs9ICclcyc7XG4gICAgICBhcmdzID0gYXJncy5jb25jYXQoW3N0YWNrXSk7XG4gICAgfVxuXG4gICAgdmFyIGFyZ3NXaXRoRm9ybWF0ID0gYXJncy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIHJldHVybiAnJyArIGl0ZW07XG4gICAgfSk7IC8vIENhcmVmdWw6IFJOIGN1cnJlbnRseSBkZXBlbmRzIG9uIHRoaXMgcHJlZml4XG5cbiAgICBhcmdzV2l0aEZvcm1hdC51bnNoaWZ0KCdXYXJuaW5nOiAnICsgZm9ybWF0KTsgLy8gV2UgaW50ZW50aW9uYWxseSBkb24ndCB1c2Ugc3ByZWFkIChvciAuYXBwbHkpIGRpcmVjdGx5IGJlY2F1c2UgaXRcbiAgICAvLyBicmVha3MgSUU5OiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzEzNjEwXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZ1xuXG4gICAgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwoY29uc29sZVtsZXZlbF0sIGNvbnNvbGUsIGFyZ3NXaXRoRm9ybWF0KTtcbiAgfVxufVxuXG4vLyBGaWx0ZXIgY2VydGFpbiBET00gYXR0cmlidXRlcyAoZS5nLiBzcmMsIGhyZWYpIGlmIHRoZWlyIHZhbHVlcyBhcmUgZW1wdHkgc3RyaW5ncy5cblxudmFyIGVuYWJsZVNjb3BlQVBJID0gZmFsc2U7IC8vIEV4cGVyaW1lbnRhbCBDcmVhdGUgRXZlbnQgSGFuZGxlIEFQSS5cblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpIHtcbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9IC8vIE5vdGU6IHR5cGVvZiBtaWdodCBiZSBvdGhlciB0aGFuICdzeW1ib2wnIG9yICdudW1iZXInIChlLmcuIGlmIGl0J3MgYSBwb2x5ZmlsbCkuXG5cblxuICBpZiAodHlwZSA9PT0gZXhwb3J0cy5GcmFnbWVudCB8fCB0eXBlID09PSBSRUFDVF9QUk9GSUxFUl9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1NUUklDVF9NT0RFX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfU1VTUEVOU0VfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfTEVHQUNZX0hJRERFTl9UWVBFIHx8IGVuYWJsZVNjb3BlQVBJICkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiB0eXBlICE9PSBudWxsKSB7XG4gICAgaWYgKHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0xBWllfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9NRU1PX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfUFJPVklERVJfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9DT05URVhUX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GVU5EQU1FTlRBTF9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0JMT0NLX1RZUEUgfHwgdHlwZVswXSA9PT0gUkVBQ1RfU0VSVkVSX0JMT0NLX1RZUEUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cblxuZnVuY3Rpb24gZ2V0V3JhcHBlZE5hbWUob3V0ZXJUeXBlLCBpbm5lclR5cGUsIHdyYXBwZXJOYW1lKSB7XG4gIHZhciBmdW5jdGlvbk5hbWUgPSBpbm5lclR5cGUuZGlzcGxheU5hbWUgfHwgaW5uZXJUeXBlLm5hbWUgfHwgJyc7XG4gIHJldHVybiBvdXRlclR5cGUuZGlzcGxheU5hbWUgfHwgKGZ1bmN0aW9uTmFtZSAhPT0gJycgPyB3cmFwcGVyTmFtZSArIFwiKFwiICsgZnVuY3Rpb25OYW1lICsgXCIpXCIgOiB3cmFwcGVyTmFtZSk7XG59XG5cbmZ1bmN0aW9uIGdldENvbnRleHROYW1lKHR5cGUpIHtcbiAgcmV0dXJuIHR5cGUuZGlzcGxheU5hbWUgfHwgJ0NvbnRleHQnO1xufVxuXG5mdW5jdGlvbiBnZXRDb21wb25lbnROYW1lKHR5cGUpIHtcbiAgaWYgKHR5cGUgPT0gbnVsbCkge1xuICAgIC8vIEhvc3Qgcm9vdCwgdGV4dCBub2RlIG9yIGp1c3QgaW52YWxpZCB0eXBlLlxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAge1xuICAgIGlmICh0eXBlb2YgdHlwZS50YWcgPT09ICdudW1iZXInKSB7XG4gICAgICBlcnJvcignUmVjZWl2ZWQgYW4gdW5leHBlY3RlZCBvYmplY3QgaW4gZ2V0Q29tcG9uZW50TmFtZSgpLiAnICsgJ1RoaXMgaXMgbGlrZWx5IGEgYnVnIGluIFJlYWN0LiBQbGVhc2UgZmlsZSBhbiBpc3N1ZS4nKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gdHlwZS5kaXNwbGF5TmFtZSB8fCB0eXBlLm5hbWUgfHwgbnVsbDtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdHlwZTtcbiAgfVxuXG4gIHN3aXRjaCAodHlwZSkge1xuICAgIGNhc2UgZXhwb3J0cy5GcmFnbWVudDpcbiAgICAgIHJldHVybiAnRnJhZ21lbnQnO1xuXG4gICAgY2FzZSBSRUFDVF9QT1JUQUxfVFlQRTpcbiAgICAgIHJldHVybiAnUG9ydGFsJztcblxuICAgIGNhc2UgUkVBQ1RfUFJPRklMRVJfVFlQRTpcbiAgICAgIHJldHVybiAnUHJvZmlsZXInO1xuXG4gICAgY2FzZSBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFOlxuICAgICAgcmV0dXJuICdTdHJpY3RNb2RlJztcblxuICAgIGNhc2UgUkVBQ1RfU1VTUEVOU0VfVFlQRTpcbiAgICAgIHJldHVybiAnU3VzcGVuc2UnO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEU6XG4gICAgICByZXR1cm4gJ1N1c3BlbnNlTGlzdCc7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnKSB7XG4gICAgc3dpdGNoICh0eXBlLiQkdHlwZW9mKSB7XG4gICAgICBjYXNlIFJFQUNUX0NPTlRFWFRfVFlQRTpcbiAgICAgICAgdmFyIGNvbnRleHQgPSB0eXBlO1xuICAgICAgICByZXR1cm4gZ2V0Q29udGV4dE5hbWUoY29udGV4dCkgKyAnLkNvbnN1bWVyJztcblxuICAgICAgY2FzZSBSRUFDVF9QUk9WSURFUl9UWVBFOlxuICAgICAgICB2YXIgcHJvdmlkZXIgPSB0eXBlO1xuICAgICAgICByZXR1cm4gZ2V0Q29udGV4dE5hbWUocHJvdmlkZXIuX2NvbnRleHQpICsgJy5Qcm92aWRlcic7XG5cbiAgICAgIGNhc2UgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRTpcbiAgICAgICAgcmV0dXJuIGdldFdyYXBwZWROYW1lKHR5cGUsIHR5cGUucmVuZGVyLCAnRm9yd2FyZFJlZicpO1xuXG4gICAgICBjYXNlIFJFQUNUX01FTU9fVFlQRTpcbiAgICAgICAgcmV0dXJuIGdldENvbXBvbmVudE5hbWUodHlwZS50eXBlKTtcblxuICAgICAgY2FzZSBSRUFDVF9CTE9DS19UWVBFOlxuICAgICAgICByZXR1cm4gZ2V0Q29tcG9uZW50TmFtZSh0eXBlLl9yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX0xBWllfVFlQRTpcbiAgICAgICAge1xuICAgICAgICAgIHZhciBsYXp5Q29tcG9uZW50ID0gdHlwZTtcbiAgICAgICAgICB2YXIgcGF5bG9hZCA9IGxhenlDb21wb25lbnQuX3BheWxvYWQ7XG4gICAgICAgICAgdmFyIGluaXQgPSBsYXp5Q29tcG9uZW50Ll9pbml0O1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBnZXRDb21wb25lbnROYW1lKGluaXQocGF5bG9hZCkpO1xuICAgICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vLyBIZWxwZXJzIHRvIHBhdGNoIGNvbnNvbGUubG9ncyB0byBhdm9pZCBsb2dnaW5nIGR1cmluZyBzaWRlLWVmZmVjdCBmcmVlXG4vLyByZXBsYXlpbmcgb24gcmVuZGVyIGZ1bmN0aW9uLiBUaGlzIGN1cnJlbnRseSBvbmx5IHBhdGNoZXMgdGhlIG9iamVjdFxuLy8gbGF6aWx5IHdoaWNoIHdvbid0IGNvdmVyIGlmIHRoZSBsb2cgZnVuY3Rpb24gd2FzIGV4dHJhY3RlZCBlYWdlcmx5LlxuLy8gV2UgY291bGQgYWxzbyBlYWdlcmx5IHBhdGNoIHRoZSBtZXRob2QuXG52YXIgZGlzYWJsZWREZXB0aCA9IDA7XG52YXIgcHJldkxvZztcbnZhciBwcmV2SW5mbztcbnZhciBwcmV2V2FybjtcbnZhciBwcmV2RXJyb3I7XG52YXIgcHJldkdyb3VwO1xudmFyIHByZXZHcm91cENvbGxhcHNlZDtcbnZhciBwcmV2R3JvdXBFbmQ7XG5cbmZ1bmN0aW9uIGRpc2FibGVkTG9nKCkge31cblxuZGlzYWJsZWRMb2cuX19yZWFjdERpc2FibGVkTG9nID0gdHJ1ZTtcbmZ1bmN0aW9uIGRpc2FibGVMb2dzKCkge1xuICB7XG4gICAgaWYgKGRpc2FibGVkRGVwdGggPT09IDApIHtcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgICAgcHJldkxvZyA9IGNvbnNvbGUubG9nO1xuICAgICAgcHJldkluZm8gPSBjb25zb2xlLmluZm87XG4gICAgICBwcmV2V2FybiA9IGNvbnNvbGUud2FybjtcbiAgICAgIHByZXZFcnJvciA9IGNvbnNvbGUuZXJyb3I7XG4gICAgICBwcmV2R3JvdXAgPSBjb25zb2xlLmdyb3VwO1xuICAgICAgcHJldkdyb3VwQ29sbGFwc2VkID0gY29uc29sZS5ncm91cENvbGxhcHNlZDtcbiAgICAgIHByZXZHcm91cEVuZCA9IGNvbnNvbGUuZ3JvdXBFbmQ7IC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTkwOTlcblxuICAgICAgdmFyIHByb3BzID0ge1xuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHZhbHVlOiBkaXNhYmxlZExvZyxcbiAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgIH07IC8vICRGbG93Rml4TWUgRmxvdyB0aGlua3MgY29uc29sZSBpcyBpbW11dGFibGUuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGNvbnNvbGUsIHtcbiAgICAgICAgaW5mbzogcHJvcHMsXG4gICAgICAgIGxvZzogcHJvcHMsXG4gICAgICAgIHdhcm46IHByb3BzLFxuICAgICAgICBlcnJvcjogcHJvcHMsXG4gICAgICAgIGdyb3VwOiBwcm9wcyxcbiAgICAgICAgZ3JvdXBDb2xsYXBzZWQ6IHByb3BzLFxuICAgICAgICBncm91cEVuZDogcHJvcHNcbiAgICAgIH0pO1xuICAgICAgLyogZXNsaW50LWVuYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICB9XG5cbiAgICBkaXNhYmxlZERlcHRoKys7XG4gIH1cbn1cbmZ1bmN0aW9uIHJlZW5hYmxlTG9ncygpIHtcbiAge1xuICAgIGRpc2FibGVkRGVwdGgtLTtcblxuICAgIGlmIChkaXNhYmxlZERlcHRoID09PSAwKSB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICAgIHZhciBwcm9wcyA9IHtcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZVxuICAgICAgfTsgLy8gJEZsb3dGaXhNZSBGbG93IHRoaW5rcyBjb25zb2xlIGlzIGltbXV0YWJsZS5cblxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY29uc29sZSwge1xuICAgICAgICBsb2c6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZMb2dcbiAgICAgICAgfSksXG4gICAgICAgIGluZm86IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZJbmZvXG4gICAgICAgIH0pLFxuICAgICAgICB3YXJuOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2V2FyblxuICAgICAgICB9KSxcbiAgICAgICAgZXJyb3I6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZFcnJvclxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXA6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXBDb2xsYXBzZWQ6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cENvbGxhcHNlZFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXBFbmQ6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cEVuZFxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgIH1cblxuICAgIGlmIChkaXNhYmxlZERlcHRoIDwgMCkge1xuICAgICAgZXJyb3IoJ2Rpc2FibGVkRGVwdGggZmVsbCBiZWxvdyB6ZXJvLiAnICsgJ1RoaXMgaXMgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgIH1cbiAgfVxufVxuXG52YXIgUmVhY3RDdXJyZW50RGlzcGF0Y2hlciA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0Q3VycmVudERpc3BhdGNoZXI7XG52YXIgcHJlZml4O1xuZnVuY3Rpb24gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUobmFtZSwgc291cmNlLCBvd25lckZuKSB7XG4gIHtcbiAgICBpZiAocHJlZml4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEV4dHJhY3QgdGhlIFZNIHNwZWNpZmljIHByZWZpeCB1c2VkIGJ5IGVhY2ggbGluZS5cbiAgICAgIHRyeSB7XG4gICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgIHZhciBtYXRjaCA9IHguc3RhY2sudHJpbSgpLm1hdGNoKC9cXG4oICooYXQgKT8pLyk7XG4gICAgICAgIHByZWZpeCA9IG1hdGNoICYmIG1hdGNoWzFdIHx8ICcnO1xuICAgICAgfVxuICAgIH0gLy8gV2UgdXNlIHRoZSBwcmVmaXggdG8gZW5zdXJlIG91ciBzdGFja3MgbGluZSB1cCB3aXRoIG5hdGl2ZSBzdGFjayBmcmFtZXMuXG5cblxuICAgIHJldHVybiAnXFxuJyArIHByZWZpeCArIG5hbWU7XG4gIH1cbn1cbnZhciByZWVudHJ5ID0gZmFsc2U7XG52YXIgY29tcG9uZW50RnJhbWVDYWNoZTtcblxue1xuICB2YXIgUG9zc2libHlXZWFrTWFwID0gdHlwZW9mIFdlYWtNYXAgPT09ICdmdW5jdGlvbicgPyBXZWFrTWFwIDogTWFwO1xuICBjb21wb25lbnRGcmFtZUNhY2hlID0gbmV3IFBvc3NpYmx5V2Vha01hcCgpO1xufVxuXG5mdW5jdGlvbiBkZXNjcmliZU5hdGl2ZUNvbXBvbmVudEZyYW1lKGZuLCBjb25zdHJ1Y3QpIHtcbiAgLy8gSWYgc29tZXRoaW5nIGFza2VkIGZvciBhIHN0YWNrIGluc2lkZSBhIGZha2UgcmVuZGVyLCBpdCBzaG91bGQgZ2V0IGlnbm9yZWQuXG4gIGlmICghZm4gfHwgcmVlbnRyeSkge1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHtcbiAgICB2YXIgZnJhbWUgPSBjb21wb25lbnRGcmFtZUNhY2hlLmdldChmbik7XG5cbiAgICBpZiAoZnJhbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZyYW1lO1xuICAgIH1cbiAgfVxuXG4gIHZhciBjb250cm9sO1xuICByZWVudHJ5ID0gdHJ1ZTtcbiAgdmFyIHByZXZpb3VzUHJlcGFyZVN0YWNrVHJhY2UgPSBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZTsgLy8gJEZsb3dGaXhNZSBJdCBkb2VzIGFjY2VwdCB1bmRlZmluZWQuXG5cbiAgRXJyb3IucHJlcGFyZVN0YWNrVHJhY2UgPSB1bmRlZmluZWQ7XG4gIHZhciBwcmV2aW91c0Rpc3BhdGNoZXI7XG5cbiAge1xuICAgIHByZXZpb3VzRGlzcGF0Y2hlciA9IFJlYWN0Q3VycmVudERpc3BhdGNoZXIuY3VycmVudDsgLy8gU2V0IHRoZSBkaXNwYXRjaGVyIGluIERFViBiZWNhdXNlIHRoaXMgbWlnaHQgYmUgY2FsbCBpbiB0aGUgcmVuZGVyIGZ1bmN0aW9uXG4gICAgLy8gZm9yIHdhcm5pbmdzLlxuXG4gICAgUmVhY3RDdXJyZW50RGlzcGF0Y2hlci5jdXJyZW50ID0gbnVsbDtcbiAgICBkaXNhYmxlTG9ncygpO1xuICB9XG5cbiAgdHJ5IHtcbiAgICAvLyBUaGlzIHNob3VsZCB0aHJvdy5cbiAgICBpZiAoY29uc3RydWN0KSB7XG4gICAgICAvLyBTb21ldGhpbmcgc2hvdWxkIGJlIHNldHRpbmcgdGhlIHByb3BzIGluIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICAgIHZhciBGYWtlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgfTsgLy8gJEZsb3dGaXhNZVxuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShGYWtlLnByb3RvdHlwZSwgJ3Byb3BzJywge1xuICAgICAgICBzZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAvLyBXZSB1c2UgYSB0aHJvd2luZyBzZXR0ZXIgaW5zdGVhZCBvZiBmcm96ZW4gb3Igbm9uLXdyaXRhYmxlIHByb3BzXG4gICAgICAgICAgLy8gYmVjYXVzZSB0aGF0IHdvbid0IHRocm93IGluIGEgbm9uLXN0cmljdCBtb2RlIGZ1bmN0aW9uLlxuICAgICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09ICdvYmplY3QnICYmIFJlZmxlY3QuY29uc3RydWN0KSB7XG4gICAgICAgIC8vIFdlIGNvbnN0cnVjdCBhIGRpZmZlcmVudCBjb250cm9sIGZvciB0aGlzIGNhc2UgdG8gaW5jbHVkZSBhbnkgZXh0cmFcbiAgICAgICAgLy8gZnJhbWVzIGFkZGVkIGJ5IHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBSZWZsZWN0LmNvbnN0cnVjdChGYWtlLCBbXSk7XG4gICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICBjb250cm9sID0geDtcbiAgICAgICAgfVxuXG4gICAgICAgIFJlZmxlY3QuY29uc3RydWN0KGZuLCBbXSwgRmFrZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIEZha2UuY2FsbCgpO1xuICAgICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICAgIH1cblxuICAgICAgICBmbi5jYWxsKEZha2UucHJvdG90eXBlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICB9XG5cbiAgICAgIGZuKCk7XG4gICAgfVxuICB9IGNhdGNoIChzYW1wbGUpIHtcbiAgICAvLyBUaGlzIGlzIGlubGluZWQgbWFudWFsbHkgYmVjYXVzZSBjbG9zdXJlIGRvZXNuJ3QgZG8gaXQgZm9yIHVzLlxuICAgIGlmIChzYW1wbGUgJiYgY29udHJvbCAmJiB0eXBlb2Ygc2FtcGxlLnN0YWNrID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gVGhpcyBleHRyYWN0cyB0aGUgZmlyc3QgZnJhbWUgZnJvbSB0aGUgc2FtcGxlIHRoYXQgaXNuJ3QgYWxzbyBpbiB0aGUgY29udHJvbC5cbiAgICAgIC8vIFNraXBwaW5nIG9uZSBmcmFtZSB0aGF0IHdlIGFzc3VtZSBpcyB0aGUgZnJhbWUgdGhhdCBjYWxscyB0aGUgdHdvLlxuICAgICAgdmFyIHNhbXBsZUxpbmVzID0gc2FtcGxlLnN0YWNrLnNwbGl0KCdcXG4nKTtcbiAgICAgIHZhciBjb250cm9sTGluZXMgPSBjb250cm9sLnN0YWNrLnNwbGl0KCdcXG4nKTtcbiAgICAgIHZhciBzID0gc2FtcGxlTGluZXMubGVuZ3RoIC0gMTtcbiAgICAgIHZhciBjID0gY29udHJvbExpbmVzLmxlbmd0aCAtIDE7XG5cbiAgICAgIHdoaWxlIChzID49IDEgJiYgYyA+PSAwICYmIHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgLy8gV2UgZXhwZWN0IGF0IGxlYXN0IG9uZSBzdGFjayBmcmFtZSB0byBiZSBzaGFyZWQuXG4gICAgICAgIC8vIFR5cGljYWxseSB0aGlzIHdpbGwgYmUgdGhlIHJvb3QgbW9zdCBvbmUuIEhvd2V2ZXIsIHN0YWNrIGZyYW1lcyBtYXkgYmVcbiAgICAgICAgLy8gY3V0IG9mZiBkdWUgdG8gbWF4aW11bSBzdGFjayBsaW1pdHMuIEluIHRoaXMgY2FzZSwgb25lIG1heWJlIGN1dCBvZmZcbiAgICAgICAgLy8gZWFybGllciB0aGFuIHRoZSBvdGhlci4gV2UgYXNzdW1lIHRoYXQgdGhlIHNhbXBsZSBpcyBsb25nZXIgb3IgdGhlIHNhbWVcbiAgICAgICAgLy8gYW5kIHRoZXJlIGZvciBjdXQgb2ZmIGVhcmxpZXIuIFNvIHdlIHNob3VsZCBmaW5kIHRoZSByb290IG1vc3QgZnJhbWUgaW5cbiAgICAgICAgLy8gdGhlIHNhbXBsZSBzb21ld2hlcmUgaW4gdGhlIGNvbnRyb2wuXG4gICAgICAgIGMtLTtcbiAgICAgIH1cblxuICAgICAgZm9yICg7IHMgPj0gMSAmJiBjID49IDA7IHMtLSwgYy0tKSB7XG4gICAgICAgIC8vIE5leHQgd2UgZmluZCB0aGUgZmlyc3Qgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgd2hpY2ggc2hvdWxkIGJlIHRoZVxuICAgICAgICAvLyBmcmFtZSB0aGF0IGNhbGxlZCBvdXIgc2FtcGxlIGZ1bmN0aW9uIGFuZCB0aGUgY29udHJvbC5cbiAgICAgICAgaWYgKHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAvLyBJbiBWOCwgdGhlIGZpcnN0IGxpbmUgaXMgZGVzY3JpYmluZyB0aGUgbWVzc2FnZSBidXQgb3RoZXIgVk1zIGRvbid0LlxuICAgICAgICAgIC8vIElmIHdlJ3JlIGFib3V0IHRvIHJldHVybiB0aGUgZmlyc3QgbGluZSwgYW5kIHRoZSBjb250cm9sIGlzIGFsc28gb24gdGhlIHNhbWVcbiAgICAgICAgICAvLyBsaW5lLCB0aGF0J3MgYSBwcmV0dHkgZ29vZCBpbmRpY2F0b3IgdGhhdCBvdXIgc2FtcGxlIHRocmV3IGF0IHNhbWUgbGluZSBhc1xuICAgICAgICAgIC8vIHRoZSBjb250cm9sLiBJLmUuIGJlZm9yZSB3ZSBlbnRlcmVkIHRoZSBzYW1wbGUgZnJhbWUuIFNvIHdlIGlnbm9yZSB0aGlzIHJlc3VsdC5cbiAgICAgICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gaWYgeW91IHBhc3NlZCBhIGNsYXNzIHRvIGZ1bmN0aW9uIGNvbXBvbmVudCwgb3Igbm9uLWZ1bmN0aW9uLlxuICAgICAgICAgIGlmIChzICE9PSAxIHx8IGMgIT09IDEpIHtcbiAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgcy0tO1xuICAgICAgICAgICAgICBjLS07IC8vIFdlIG1heSBzdGlsbCBoYXZlIHNpbWlsYXIgaW50ZXJtZWRpYXRlIGZyYW1lcyBmcm9tIHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgICAgICAgLy8gVGhlIG5leHQgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgc2hvdWxkIGJlIG91ciBtYXRjaCB0aG91Z2guXG5cbiAgICAgICAgICAgICAgaWYgKGMgPCAwIHx8IHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAgICAgICAvLyBWOCBhZGRzIGEgXCJuZXdcIiBwcmVmaXggZm9yIG5hdGl2ZSBjbGFzc2VzLiBMZXQncyByZW1vdmUgaXQgdG8gbWFrZSBpdCBwcmV0dGllci5cbiAgICAgICAgICAgICAgICB2YXIgX2ZyYW1lID0gJ1xcbicgKyBzYW1wbGVMaW5lc1tzXS5yZXBsYWNlKCcgYXQgbmV3ICcsICcgYXQgJyk7XG5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudEZyYW1lQ2FjaGUuc2V0KGZuLCBfZnJhbWUpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gLy8gUmV0dXJuIHRoZSBsaW5lIHdlIGZvdW5kLlxuXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gX2ZyYW1lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IHdoaWxlIChzID49IDEgJiYgYyA+PSAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSBmaW5hbGx5IHtcbiAgICByZWVudHJ5ID0gZmFsc2U7XG5cbiAgICB7XG4gICAgICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyLmN1cnJlbnQgPSBwcmV2aW91c0Rpc3BhdGNoZXI7XG4gICAgICByZWVuYWJsZUxvZ3MoKTtcbiAgICB9XG5cbiAgICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHByZXZpb3VzUHJlcGFyZVN0YWNrVHJhY2U7XG4gIH0gLy8gRmFsbGJhY2sgdG8ganVzdCB1c2luZyB0aGUgbmFtZSBpZiB3ZSBjb3VsZG4ndCBtYWtlIGl0IHRocm93LlxuXG5cbiAgdmFyIG5hbWUgPSBmbiA/IGZuLmRpc3BsYXlOYW1lIHx8IGZuLm5hbWUgOiAnJztcbiAgdmFyIHN5bnRoZXRpY0ZyYW1lID0gbmFtZSA/IGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKG5hbWUpIDogJyc7XG5cbiAge1xuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbXBvbmVudEZyYW1lQ2FjaGUuc2V0KGZuLCBzeW50aGV0aWNGcmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN5bnRoZXRpY0ZyYW1lO1xufVxuZnVuY3Rpb24gZGVzY3JpYmVGdW5jdGlvbkNvbXBvbmVudEZyYW1lKGZuLCBzb3VyY2UsIG93bmVyRm4pIHtcbiAge1xuICAgIHJldHVybiBkZXNjcmliZU5hdGl2ZUNvbXBvbmVudEZyYW1lKGZuLCBmYWxzZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2hvdWxkQ29uc3RydWN0KENvbXBvbmVudCkge1xuICB2YXIgcHJvdG90eXBlID0gQ29tcG9uZW50LnByb3RvdHlwZTtcbiAgcmV0dXJuICEhKHByb3RvdHlwZSAmJiBwcm90b3R5cGUuaXNSZWFjdENvbXBvbmVudCk7XG59XG5cbmZ1bmN0aW9uIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVih0eXBlLCBzb3VyY2UsIG93bmVyRm4pIHtcblxuICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAge1xuICAgICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUodHlwZSwgc2hvdWxkQ29uc3RydWN0KHR5cGUpKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKHR5cGUpO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9UWVBFOlxuICAgICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKCdTdXNwZW5zZScpO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEU6XG4gICAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUoJ1N1c3BlbnNlTGlzdCcpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0Jykge1xuICAgIHN3aXRjaCAodHlwZS4kJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICByZXR1cm4gZGVzY3JpYmVGdW5jdGlvbkNvbXBvbmVudEZyYW1lKHR5cGUucmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9NRU1PX1RZUEU6XG4gICAgICAgIC8vIE1lbW8gbWF5IGNvbnRhaW4gYW55IGNvbXBvbmVudCB0eXBlIHNvIHdlIHJlY3Vyc2l2ZWx5IHJlc29sdmUgaXQuXG4gICAgICAgIHJldHVybiBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYodHlwZS50eXBlLCBzb3VyY2UsIG93bmVyRm4pO1xuXG4gICAgICBjYXNlIFJFQUNUX0JMT0NLX1RZUEU6XG4gICAgICAgIHJldHVybiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUodHlwZS5fcmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9MQVpZX1RZUEU6XG4gICAgICAgIHtcbiAgICAgICAgICB2YXIgbGF6eUNvbXBvbmVudCA9IHR5cGU7XG4gICAgICAgICAgdmFyIHBheWxvYWQgPSBsYXp5Q29tcG9uZW50Ll9wYXlsb2FkO1xuICAgICAgICAgIHZhciBpbml0ID0gbGF6eUNvbXBvbmVudC5faW5pdDtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBMYXp5IG1heSBjb250YWluIGFueSBjb21wb25lbnQgdHlwZSBzbyB3ZSByZWN1cnNpdmVseSByZXNvbHZlIGl0LlxuICAgICAgICAgICAgcmV0dXJuIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVihpbml0KHBheWxvYWQpLCBzb3VyY2UsIG93bmVyRm4pO1xuICAgICAgICAgIH0gY2F0Y2ggKHgpIHt9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gJyc7XG59XG5cbnZhciBsb2dnZWRUeXBlRmFpbHVyZXMgPSB7fTtcbnZhciBSZWFjdERlYnVnQ3VycmVudEZyYW1lID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZTtcblxuZnVuY3Rpb24gc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQoZWxlbWVudCkge1xuICB7XG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHZhciBvd25lciA9IGVsZW1lbnQuX293bmVyO1xuICAgICAgdmFyIHN0YWNrID0gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGVsZW1lbnQudHlwZSwgZWxlbWVudC5fc291cmNlLCBvd25lciA/IG93bmVyLnR5cGUgOiBudWxsKTtcbiAgICAgIFJlYWN0RGVidWdDdXJyZW50RnJhbWUuc2V0RXh0cmFTdGFja0ZyYW1lKHN0YWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5zZXRFeHRyYVN0YWNrRnJhbWUobnVsbCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrUHJvcFR5cGVzKHR5cGVTcGVjcywgdmFsdWVzLCBsb2NhdGlvbiwgY29tcG9uZW50TmFtZSwgZWxlbWVudCkge1xuICB7XG4gICAgLy8gJEZsb3dGaXhNZSBUaGlzIGlzIG9rYXkgYnV0IEZsb3cgZG9lc24ndCBrbm93IGl0LlxuICAgIHZhciBoYXMgPSBGdW5jdGlvbi5jYWxsLmJpbmQoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSk7XG5cbiAgICBmb3IgKHZhciB0eXBlU3BlY05hbWUgaW4gdHlwZVNwZWNzKSB7XG4gICAgICBpZiAoaGFzKHR5cGVTcGVjcywgdHlwZVNwZWNOYW1lKSkge1xuICAgICAgICB2YXIgZXJyb3IkMSA9IHZvaWQgMDsgLy8gUHJvcCB0eXBlIHZhbGlkYXRpb24gbWF5IHRocm93LiBJbiBjYXNlIHRoZXkgZG8sIHdlIGRvbid0IHdhbnQgdG9cbiAgICAgICAgLy8gZmFpbCB0aGUgcmVuZGVyIHBoYXNlIHdoZXJlIGl0IGRpZG4ndCBmYWlsIGJlZm9yZS4gU28gd2UgbG9nIGl0LlxuICAgICAgICAvLyBBZnRlciB0aGVzZSBoYXZlIGJlZW4gY2xlYW5lZCB1cCwgd2UnbGwgbGV0IHRoZW0gdGhyb3cuXG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAvLyBUaGlzIGlzIGludGVudGlvbmFsbHkgYW4gaW52YXJpYW50IHRoYXQgZ2V0cyBjYXVnaHQuIEl0J3MgdGhlIHNhbWVcbiAgICAgICAgICAvLyBiZWhhdmlvciBhcyB3aXRob3V0IHRoaXMgc3RhdGVtZW50IGV4Y2VwdCB3aXRoIGEgYmV0dGVyIG1lc3NhZ2UuXG4gICAgICAgICAgaWYgKHR5cGVvZiB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdmFyIGVyciA9IEVycm9yKChjb21wb25lbnROYW1lIHx8ICdSZWFjdCBjbGFzcycpICsgJzogJyArIGxvY2F0aW9uICsgJyB0eXBlIGAnICsgdHlwZVNwZWNOYW1lICsgJ2AgaXMgaW52YWxpZDsgJyArICdpdCBtdXN0IGJlIGEgZnVuY3Rpb24sIHVzdWFsbHkgZnJvbSB0aGUgYHByb3AtdHlwZXNgIHBhY2thZ2UsIGJ1dCByZWNlaXZlZCBgJyArIHR5cGVvZiB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSArICdgLicgKyAnVGhpcyBvZnRlbiBoYXBwZW5zIGJlY2F1c2Ugb2YgdHlwb3Mgc3VjaCBhcyBgUHJvcFR5cGVzLmZ1bmN0aW9uYCBpbnN0ZWFkIG9mIGBQcm9wVHlwZXMuZnVuY2AuJyk7XG4gICAgICAgICAgICBlcnIubmFtZSA9ICdJbnZhcmlhbnQgVmlvbGF0aW9uJztcbiAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBlcnJvciQxID0gdHlwZVNwZWNzW3R5cGVTcGVjTmFtZV0odmFsdWVzLCB0eXBlU3BlY05hbWUsIGNvbXBvbmVudE5hbWUsIGxvY2F0aW9uLCBudWxsLCAnU0VDUkVUX0RPX05PVF9QQVNTX1RISVNfT1JfWU9VX1dJTExfQkVfRklSRUQnKTtcbiAgICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgICBlcnJvciQxID0gZXg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXJyb3IkMSAmJiAhKGVycm9yJDEgaW5zdGFuY2VvZiBFcnJvcikpIHtcbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KTtcblxuICAgICAgICAgIGVycm9yKCclczogdHlwZSBzcGVjaWZpY2F0aW9uIG9mICVzJyArICcgYCVzYCBpcyBpbnZhbGlkOyB0aGUgdHlwZSBjaGVja2VyICcgKyAnZnVuY3Rpb24gbXVzdCByZXR1cm4gYG51bGxgIG9yIGFuIGBFcnJvcmAgYnV0IHJldHVybmVkIGEgJXMuICcgKyAnWW91IG1heSBoYXZlIGZvcmdvdHRlbiB0byBwYXNzIGFuIGFyZ3VtZW50IHRvIHRoZSB0eXBlIGNoZWNrZXIgJyArICdjcmVhdG9yIChhcnJheU9mLCBpbnN0YW5jZU9mLCBvYmplY3RPZiwgb25lT2YsIG9uZU9mVHlwZSwgYW5kICcgKyAnc2hhcGUgYWxsIHJlcXVpcmUgYW4gYXJndW1lbnQpLicsIGNvbXBvbmVudE5hbWUgfHwgJ1JlYWN0IGNsYXNzJywgbG9jYXRpb24sIHR5cGVTcGVjTmFtZSwgdHlwZW9mIGVycm9yJDEpO1xuXG4gICAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXJyb3IkMSBpbnN0YW5jZW9mIEVycm9yICYmICEoZXJyb3IkMS5tZXNzYWdlIGluIGxvZ2dlZFR5cGVGYWlsdXJlcykpIHtcbiAgICAgICAgICAvLyBPbmx5IG1vbml0b3IgdGhpcyBmYWlsdXJlIG9uY2UgYmVjYXVzZSB0aGVyZSB0ZW5kcyB0byBiZSBhIGxvdCBvZiB0aGVcbiAgICAgICAgICAvLyBzYW1lIGVycm9yLlxuICAgICAgICAgIGxvZ2dlZFR5cGVGYWlsdXJlc1tlcnJvciQxLm1lc3NhZ2VdID0gdHJ1ZTtcbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KTtcblxuICAgICAgICAgIGVycm9yKCdGYWlsZWQgJXMgdHlwZTogJXMnLCBsb2NhdGlvbiwgZXJyb3IkMS5tZXNzYWdlKTtcblxuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KG51bGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnZhciBSZWFjdEN1cnJlbnRPd25lciA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0Q3VycmVudE93bmVyO1xudmFyIGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtcbnZhciBSRVNFUlZFRF9QUk9QUyA9IHtcbiAga2V5OiB0cnVlLFxuICByZWY6IHRydWUsXG4gIF9fc2VsZjogdHJ1ZSxcbiAgX19zb3VyY2U6IHRydWVcbn07XG52YXIgc3BlY2lhbFByb3BLZXlXYXJuaW5nU2hvd247XG52YXIgc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd247XG52YXIgZGlkV2FybkFib3V0U3RyaW5nUmVmcztcblxue1xuICBkaWRXYXJuQWJvdXRTdHJpbmdSZWZzID0ge307XG59XG5cbmZ1bmN0aW9uIGhhc1ZhbGlkUmVmKGNvbmZpZykge1xuICB7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCAncmVmJykpIHtcbiAgICAgIHZhciBnZXR0ZXIgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGNvbmZpZywgJ3JlZicpLmdldDtcblxuICAgICAgaWYgKGdldHRlciAmJiBnZXR0ZXIuaXNSZWFjdFdhcm5pbmcpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb25maWcucmVmICE9PSB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIGhhc1ZhbGlkS2V5KGNvbmZpZykge1xuICB7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCAna2V5JykpIHtcbiAgICAgIHZhciBnZXR0ZXIgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGNvbmZpZywgJ2tleScpLmdldDtcblxuICAgICAgaWYgKGdldHRlciAmJiBnZXR0ZXIuaXNSZWFjdFdhcm5pbmcpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjb25maWcua2V5ICE9PSB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIHdhcm5JZlN0cmluZ1JlZkNhbm5vdEJlQXV0b0NvbnZlcnRlZChjb25maWcsIHNlbGYpIHtcbiAge1xuICAgIGlmICh0eXBlb2YgY29uZmlnLnJlZiA9PT0gJ3N0cmluZycgJiYgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCAmJiBzZWxmICYmIFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQuc3RhdGVOb2RlICE9PSBzZWxmKSB7XG4gICAgICB2YXIgY29tcG9uZW50TmFtZSA9IGdldENvbXBvbmVudE5hbWUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKTtcblxuICAgICAgaWYgKCFkaWRXYXJuQWJvdXRTdHJpbmdSZWZzW2NvbXBvbmVudE5hbWVdKSB7XG4gICAgICAgIGVycm9yKCdDb21wb25lbnQgXCIlc1wiIGNvbnRhaW5zIHRoZSBzdHJpbmcgcmVmIFwiJXNcIi4gJyArICdTdXBwb3J0IGZvciBzdHJpbmcgcmVmcyB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gJyArICdUaGlzIGNhc2UgY2Fubm90IGJlIGF1dG9tYXRpY2FsbHkgY29udmVydGVkIHRvIGFuIGFycm93IGZ1bmN0aW9uLiAnICsgJ1dlIGFzayB5b3UgdG8gbWFudWFsbHkgZml4IHRoaXMgY2FzZSBieSB1c2luZyB1c2VSZWYoKSBvciBjcmVhdGVSZWYoKSBpbnN0ZWFkLiAnICsgJ0xlYXJuIG1vcmUgYWJvdXQgdXNpbmcgcmVmcyBzYWZlbHkgaGVyZTogJyArICdodHRwczovL3JlYWN0anMub3JnL2xpbmsvc3RyaWN0LW1vZGUtc3RyaW5nLXJlZicsIGdldENvbXBvbmVudE5hbWUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKSwgY29uZmlnLnJlZik7XG5cbiAgICAgICAgZGlkV2FybkFib3V0U3RyaW5nUmVmc1tjb21wb25lbnROYW1lXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGRlZmluZUtleVByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSkge1xuICB7XG4gICAgdmFyIHdhcm5BYm91dEFjY2Vzc2luZ0tleSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmICghc3BlY2lhbFByb3BLZXlXYXJuaW5nU2hvd24pIHtcbiAgICAgICAgc3BlY2lhbFByb3BLZXlXYXJuaW5nU2hvd24gPSB0cnVlO1xuXG4gICAgICAgIGVycm9yKCclczogYGtleWAgaXMgbm90IGEgcHJvcC4gVHJ5aW5nIHRvIGFjY2VzcyBpdCB3aWxsIHJlc3VsdCAnICsgJ2luIGB1bmRlZmluZWRgIGJlaW5nIHJldHVybmVkLiBJZiB5b3UgbmVlZCB0byBhY2Nlc3MgdGhlIHNhbWUgJyArICd2YWx1ZSB3aXRoaW4gdGhlIGNoaWxkIGNvbXBvbmVudCwgeW91IHNob3VsZCBwYXNzIGl0IGFzIGEgZGlmZmVyZW50ICcgKyAncHJvcC4gKGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9zcGVjaWFsLXByb3BzKScsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgd2FybkFib3V0QWNjZXNzaW5nS2V5LmlzUmVhY3RXYXJuaW5nID0gdHJ1ZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvcHMsICdrZXknLCB7XG4gICAgICBnZXQ6IHdhcm5BYm91dEFjY2Vzc2luZ0tleSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRlZmluZVJlZlByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSkge1xuICB7XG4gICAgdmFyIHdhcm5BYm91dEFjY2Vzc2luZ1JlZiA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGlmICghc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24pIHtcbiAgICAgICAgc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24gPSB0cnVlO1xuXG4gICAgICAgIGVycm9yKCclczogYHJlZmAgaXMgbm90IGEgcHJvcC4gVHJ5aW5nIHRvIGFjY2VzcyBpdCB3aWxsIHJlc3VsdCAnICsgJ2luIGB1bmRlZmluZWRgIGJlaW5nIHJldHVybmVkLiBJZiB5b3UgbmVlZCB0byBhY2Nlc3MgdGhlIHNhbWUgJyArICd2YWx1ZSB3aXRoaW4gdGhlIGNoaWxkIGNvbXBvbmVudCwgeW91IHNob3VsZCBwYXNzIGl0IGFzIGEgZGlmZmVyZW50ICcgKyAncHJvcC4gKGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9zcGVjaWFsLXByb3BzKScsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgd2FybkFib3V0QWNjZXNzaW5nUmVmLmlzUmVhY3RXYXJuaW5nID0gdHJ1ZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvcHMsICdyZWYnLCB7XG4gICAgICBnZXQ6IHdhcm5BYm91dEFjY2Vzc2luZ1JlZixcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgIH0pO1xuICB9XG59XG4vKipcbiAqIEZhY3RvcnkgbWV0aG9kIHRvIGNyZWF0ZSBhIG5ldyBSZWFjdCBlbGVtZW50LiBUaGlzIG5vIGxvbmdlciBhZGhlcmVzIHRvXG4gKiB0aGUgY2xhc3MgcGF0dGVybiwgc28gZG8gbm90IHVzZSBuZXcgdG8gY2FsbCBpdC4gQWxzbywgaW5zdGFuY2VvZiBjaGVja1xuICogd2lsbCBub3Qgd29yay4gSW5zdGVhZCB0ZXN0ICQkdHlwZW9mIGZpZWxkIGFnYWluc3QgU3ltYm9sLmZvcigncmVhY3QuZWxlbWVudCcpIHRvIGNoZWNrXG4gKiBpZiBzb21ldGhpbmcgaXMgYSBSZWFjdCBFbGVtZW50LlxuICpcbiAqIEBwYXJhbSB7Kn0gdHlwZVxuICogQHBhcmFtIHsqfSBwcm9wc1xuICogQHBhcmFtIHsqfSBrZXlcbiAqIEBwYXJhbSB7c3RyaW5nfG9iamVjdH0gcmVmXG4gKiBAcGFyYW0geyp9IG93bmVyXG4gKiBAcGFyYW0geyp9IHNlbGYgQSAqdGVtcG9yYXJ5KiBoZWxwZXIgdG8gZGV0ZWN0IHBsYWNlcyB3aGVyZSBgdGhpc2AgaXNcbiAqIGRpZmZlcmVudCBmcm9tIHRoZSBgb3duZXJgIHdoZW4gUmVhY3QuY3JlYXRlRWxlbWVudCBpcyBjYWxsZWQsIHNvIHRoYXQgd2VcbiAqIGNhbiB3YXJuLiBXZSB3YW50IHRvIGdldCByaWQgb2Ygb3duZXIgYW5kIHJlcGxhY2Ugc3RyaW5nIGByZWZgcyB3aXRoIGFycm93XG4gKiBmdW5jdGlvbnMsIGFuZCBhcyBsb25nIGFzIGB0aGlzYCBhbmQgb3duZXIgYXJlIHRoZSBzYW1lLCB0aGVyZSB3aWxsIGJlIG5vXG4gKiBjaGFuZ2UgaW4gYmVoYXZpb3IuXG4gKiBAcGFyYW0geyp9IHNvdXJjZSBBbiBhbm5vdGF0aW9uIG9iamVjdCAoYWRkZWQgYnkgYSB0cmFuc3BpbGVyIG9yIG90aGVyd2lzZSlcbiAqIGluZGljYXRpbmcgZmlsZW5hbWUsIGxpbmUgbnVtYmVyLCBhbmQvb3Igb3RoZXIgaW5mb3JtYXRpb24uXG4gKiBAaW50ZXJuYWxcbiAqL1xuXG5cbnZhciBSZWFjdEVsZW1lbnQgPSBmdW5jdGlvbiAodHlwZSwga2V5LCByZWYsIHNlbGYsIHNvdXJjZSwgb3duZXIsIHByb3BzKSB7XG4gIHZhciBlbGVtZW50ID0ge1xuICAgIC8vIFRoaXMgdGFnIGFsbG93cyB1cyB0byB1bmlxdWVseSBpZGVudGlmeSB0aGlzIGFzIGEgUmVhY3QgRWxlbWVudFxuICAgICQkdHlwZW9mOiBSRUFDVF9FTEVNRU5UX1RZUEUsXG4gICAgLy8gQnVpbHQtaW4gcHJvcGVydGllcyB0aGF0IGJlbG9uZyBvbiB0aGUgZWxlbWVudFxuICAgIHR5cGU6IHR5cGUsXG4gICAga2V5OiBrZXksXG4gICAgcmVmOiByZWYsXG4gICAgcHJvcHM6IHByb3BzLFxuICAgIC8vIFJlY29yZCB0aGUgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBjcmVhdGluZyB0aGlzIGVsZW1lbnQuXG4gICAgX293bmVyOiBvd25lclxuICB9O1xuXG4gIHtcbiAgICAvLyBUaGUgdmFsaWRhdGlvbiBmbGFnIGlzIGN1cnJlbnRseSBtdXRhdGl2ZS4gV2UgcHV0IGl0IG9uXG4gICAgLy8gYW4gZXh0ZXJuYWwgYmFja2luZyBzdG9yZSBzbyB0aGF0IHdlIGNhbiBmcmVlemUgdGhlIHdob2xlIG9iamVjdC5cbiAgICAvLyBUaGlzIGNhbiBiZSByZXBsYWNlZCB3aXRoIGEgV2Vha01hcCBvbmNlIHRoZXkgYXJlIGltcGxlbWVudGVkIGluXG4gICAgLy8gY29tbW9ubHkgdXNlZCBkZXZlbG9wbWVudCBlbnZpcm9ubWVudHMuXG4gICAgZWxlbWVudC5fc3RvcmUgPSB7fTsgLy8gVG8gbWFrZSBjb21wYXJpbmcgUmVhY3RFbGVtZW50cyBlYXNpZXIgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHdlIG1ha2VcbiAgICAvLyB0aGUgdmFsaWRhdGlvbiBmbGFnIG5vbi1lbnVtZXJhYmxlICh3aGVyZSBwb3NzaWJsZSwgd2hpY2ggc2hvdWxkXG4gICAgLy8gaW5jbHVkZSBldmVyeSBlbnZpcm9ubWVudCB3ZSBydW4gdGVzdHMgaW4pLCBzbyB0aGUgdGVzdCBmcmFtZXdvcmtcbiAgICAvLyBpZ25vcmVzIGl0LlxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnQuX3N0b3JlLCAndmFsaWRhdGVkJywge1xuICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICB2YWx1ZTogZmFsc2VcbiAgICB9KTsgLy8gc2VsZiBhbmQgc291cmNlIGFyZSBERVYgb25seSBwcm9wZXJ0aWVzLlxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnQsICdfc2VsZicsIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICAgIHZhbHVlOiBzZWxmXG4gICAgfSk7IC8vIFR3byBlbGVtZW50cyBjcmVhdGVkIGluIHR3byBkaWZmZXJlbnQgcGxhY2VzIHNob3VsZCBiZSBjb25zaWRlcmVkXG4gICAgLy8gZXF1YWwgZm9yIHRlc3RpbmcgcHVycG9zZXMgYW5kIHRoZXJlZm9yZSB3ZSBoaWRlIGl0IGZyb20gZW51bWVyYXRpb24uXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudCwgJ19zb3VyY2UnLCB7XG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICB2YWx1ZTogc291cmNlXG4gICAgfSk7XG5cbiAgICBpZiAoT2JqZWN0LmZyZWV6ZSkge1xuICAgICAgT2JqZWN0LmZyZWV6ZShlbGVtZW50LnByb3BzKTtcbiAgICAgIE9iamVjdC5mcmVlemUoZWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnQ7XG59O1xuLyoqXG4gKiBodHRwczovL2dpdGh1Yi5jb20vcmVhY3Rqcy9yZmNzL3B1bGwvMTA3XG4gKiBAcGFyYW0geyp9IHR5cGVcbiAqIEBwYXJhbSB7b2JqZWN0fSBwcm9wc1xuICogQHBhcmFtIHtzdHJpbmd9IGtleVxuICovXG5cbmZ1bmN0aW9uIGpzeERFVih0eXBlLCBjb25maWcsIG1heWJlS2V5LCBzb3VyY2UsIHNlbGYpIHtcbiAge1xuICAgIHZhciBwcm9wTmFtZTsgLy8gUmVzZXJ2ZWQgbmFtZXMgYXJlIGV4dHJhY3RlZFxuXG4gICAgdmFyIHByb3BzID0ge307XG4gICAgdmFyIGtleSA9IG51bGw7XG4gICAgdmFyIHJlZiA9IG51bGw7IC8vIEN1cnJlbnRseSwga2V5IGNhbiBiZSBzcHJlYWQgaW4gYXMgYSBwcm9wLiBUaGlzIGNhdXNlcyBhIHBvdGVudGlhbFxuICAgIC8vIGlzc3VlIGlmIGtleSBpcyBhbHNvIGV4cGxpY2l0bHkgZGVjbGFyZWQgKGllLiA8ZGl2IHsuLi5wcm9wc30ga2V5PVwiSGlcIiAvPlxuICAgIC8vIG9yIDxkaXYga2V5PVwiSGlcIiB7Li4ucHJvcHN9IC8+ICkuIFdlIHdhbnQgdG8gZGVwcmVjYXRlIGtleSBzcHJlYWQsXG4gICAgLy8gYnV0IGFzIGFuIGludGVybWVkaWFyeSBzdGVwLCB3ZSB3aWxsIHVzZSBqc3hERVYgZm9yIGV2ZXJ5dGhpbmcgZXhjZXB0XG4gICAgLy8gPGRpdiB7Li4ucHJvcHN9IGtleT1cIkhpXCIgLz4sIGJlY2F1c2Ugd2UgYXJlbid0IGN1cnJlbnRseSBhYmxlIHRvIHRlbGwgaWZcbiAgICAvLyBrZXkgaXMgZXhwbGljaXRseSBkZWNsYXJlZCB0byBiZSB1bmRlZmluZWQgb3Igbm90LlxuXG4gICAgaWYgKG1heWJlS2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGtleSA9ICcnICsgbWF5YmVLZXk7XG4gICAgfVxuXG4gICAgaWYgKGhhc1ZhbGlkS2V5KGNvbmZpZykpIHtcbiAgICAgIGtleSA9ICcnICsgY29uZmlnLmtleTtcbiAgICB9XG5cbiAgICBpZiAoaGFzVmFsaWRSZWYoY29uZmlnKSkge1xuICAgICAgcmVmID0gY29uZmlnLnJlZjtcbiAgICAgIHdhcm5JZlN0cmluZ1JlZkNhbm5vdEJlQXV0b0NvbnZlcnRlZChjb25maWcsIHNlbGYpO1xuICAgIH0gLy8gUmVtYWluaW5nIHByb3BlcnRpZXMgYXJlIGFkZGVkIHRvIGEgbmV3IHByb3BzIG9iamVjdFxuXG5cbiAgICBmb3IgKHByb3BOYW1lIGluIGNvbmZpZykge1xuICAgICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCBwcm9wTmFtZSkgJiYgIVJFU0VSVkVEX1BST1BTLmhhc093blByb3BlcnR5KHByb3BOYW1lKSkge1xuICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBjb25maWdbcHJvcE5hbWVdO1xuICAgICAgfVxuICAgIH0gLy8gUmVzb2x2ZSBkZWZhdWx0IHByb3BzXG5cblxuICAgIGlmICh0eXBlICYmIHR5cGUuZGVmYXVsdFByb3BzKSB7XG4gICAgICB2YXIgZGVmYXVsdFByb3BzID0gdHlwZS5kZWZhdWx0UHJvcHM7XG5cbiAgICAgIGZvciAocHJvcE5hbWUgaW4gZGVmYXVsdFByb3BzKSB7XG4gICAgICAgIGlmIChwcm9wc1twcm9wTmFtZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHByb3BzW3Byb3BOYW1lXSA9IGRlZmF1bHRQcm9wc1twcm9wTmFtZV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoa2V5IHx8IHJlZikge1xuICAgICAgdmFyIGRpc3BsYXlOYW1lID0gdHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicgPyB0eXBlLmRpc3BsYXlOYW1lIHx8IHR5cGUubmFtZSB8fCAnVW5rbm93bicgOiB0eXBlO1xuXG4gICAgICBpZiAoa2V5KSB7XG4gICAgICAgIGRlZmluZUtleVByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgZGVmaW5lUmVmUHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gUmVhY3RFbGVtZW50KHR5cGUsIGtleSwgcmVmLCBzZWxmLCBzb3VyY2UsIFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQsIHByb3BzKTtcbiAgfVxufVxuXG52YXIgUmVhY3RDdXJyZW50T3duZXIkMSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0Q3VycmVudE93bmVyO1xudmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUkMSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0RGVidWdDdXJyZW50RnJhbWU7XG5cbmZ1bmN0aW9uIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZWxlbWVudCkge1xuICB7XG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHZhciBvd25lciA9IGVsZW1lbnQuX293bmVyO1xuICAgICAgdmFyIHN0YWNrID0gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGVsZW1lbnQudHlwZSwgZWxlbWVudC5fc291cmNlLCBvd25lciA/IG93bmVyLnR5cGUgOiBudWxsKTtcbiAgICAgIFJlYWN0RGVidWdDdXJyZW50RnJhbWUkMS5zZXRFeHRyYVN0YWNrRnJhbWUoc3RhY2spO1xuICAgIH0gZWxzZSB7XG4gICAgICBSZWFjdERlYnVnQ3VycmVudEZyYW1lJDEuc2V0RXh0cmFTdGFja0ZyYW1lKG51bGwpO1xuICAgIH1cbiAgfVxufVxuXG52YXIgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd247XG5cbntcbiAgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24gPSBmYWxzZTtcbn1cbi8qKlxuICogVmVyaWZpZXMgdGhlIG9iamVjdCBpcyBhIFJlYWN0RWxlbWVudC5cbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjaXN2YWxpZGVsZW1lbnRcbiAqIEBwYXJhbSB7P29iamVjdH0gb2JqZWN0XG4gKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIGlmIGBvYmplY3RgIGlzIGEgUmVhY3RFbGVtZW50LlxuICogQGZpbmFsXG4gKi9cblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnQob2JqZWN0KSB7XG4gIHtcbiAgICByZXR1cm4gdHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgJiYgb2JqZWN0ICE9PSBudWxsICYmIG9iamVjdC4kJHR5cGVvZiA9PT0gUkVBQ1RfRUxFTUVOVF9UWVBFO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldERlY2xhcmF0aW9uRXJyb3JBZGRlbmR1bSgpIHtcbiAge1xuICAgIGlmIChSZWFjdEN1cnJlbnRPd25lciQxLmN1cnJlbnQpIHtcbiAgICAgIHZhciBuYW1lID0gZ2V0Q29tcG9uZW50TmFtZShSZWFjdEN1cnJlbnRPd25lciQxLmN1cnJlbnQudHlwZSk7XG5cbiAgICAgIGlmIChuYW1lKSB7XG4gICAgICAgIHJldHVybiAnXFxuXFxuQ2hlY2sgdGhlIHJlbmRlciBtZXRob2Qgb2YgYCcgKyBuYW1lICsgJ2AuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0U291cmNlSW5mb0Vycm9yQWRkZW5kdW0oc291cmNlKSB7XG4gIHtcbiAgICBpZiAoc291cmNlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHZhciBmaWxlTmFtZSA9IHNvdXJjZS5maWxlTmFtZS5yZXBsYWNlKC9eLipbXFxcXFxcL10vLCAnJyk7XG4gICAgICB2YXIgbGluZU51bWJlciA9IHNvdXJjZS5saW5lTnVtYmVyO1xuICAgICAgcmV0dXJuICdcXG5cXG5DaGVjayB5b3VyIGNvZGUgYXQgJyArIGZpbGVOYW1lICsgJzonICsgbGluZU51bWJlciArICcuJztcbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbi8qKlxuICogV2FybiBpZiB0aGVyZSdzIG5vIGtleSBleHBsaWNpdGx5IHNldCBvbiBkeW5hbWljIGFycmF5cyBvZiBjaGlsZHJlbiBvclxuICogb2JqZWN0IGtleXMgYXJlIG5vdCB2YWxpZC4gVGhpcyBhbGxvd3MgdXMgdG8ga2VlcCB0cmFjayBvZiBjaGlsZHJlbiBiZXR3ZWVuXG4gKiB1cGRhdGVzLlxuICovXG5cblxudmFyIG93bmVySGFzS2V5VXNlV2FybmluZyA9IHt9O1xuXG5mdW5jdGlvbiBnZXRDdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvKHBhcmVudFR5cGUpIHtcbiAge1xuICAgIHZhciBpbmZvID0gZ2V0RGVjbGFyYXRpb25FcnJvckFkZGVuZHVtKCk7XG5cbiAgICBpZiAoIWluZm8pIHtcbiAgICAgIHZhciBwYXJlbnROYW1lID0gdHlwZW9mIHBhcmVudFR5cGUgPT09ICdzdHJpbmcnID8gcGFyZW50VHlwZSA6IHBhcmVudFR5cGUuZGlzcGxheU5hbWUgfHwgcGFyZW50VHlwZS5uYW1lO1xuXG4gICAgICBpZiAocGFyZW50TmFtZSkge1xuICAgICAgICBpbmZvID0gXCJcXG5cXG5DaGVjayB0aGUgdG9wLWxldmVsIHJlbmRlciBjYWxsIHVzaW5nIDxcIiArIHBhcmVudE5hbWUgKyBcIj4uXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cbi8qKlxuICogV2FybiBpZiB0aGUgZWxlbWVudCBkb2Vzbid0IGhhdmUgYW4gZXhwbGljaXQga2V5IGFzc2lnbmVkIHRvIGl0LlxuICogVGhpcyBlbGVtZW50IGlzIGluIGFuIGFycmF5LiBUaGUgYXJyYXkgY291bGQgZ3JvdyBhbmQgc2hyaW5rIG9yIGJlXG4gKiByZW9yZGVyZWQuIEFsbCBjaGlsZHJlbiB0aGF0IGhhdmVuJ3QgYWxyZWFkeSBiZWVuIHZhbGlkYXRlZCBhcmUgcmVxdWlyZWQgdG9cbiAqIGhhdmUgYSBcImtleVwiIHByb3BlcnR5IGFzc2lnbmVkIHRvIGl0LiBFcnJvciBzdGF0dXNlcyBhcmUgY2FjaGVkIHNvIGEgd2FybmluZ1xuICogd2lsbCBvbmx5IGJlIHNob3duIG9uY2UuXG4gKlxuICogQGludGVybmFsXG4gKiBAcGFyYW0ge1JlYWN0RWxlbWVudH0gZWxlbWVudCBFbGVtZW50IHRoYXQgcmVxdWlyZXMgYSBrZXkuXG4gKiBAcGFyYW0geyp9IHBhcmVudFR5cGUgZWxlbWVudCdzIHBhcmVudCdzIHR5cGUuXG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUV4cGxpY2l0S2V5KGVsZW1lbnQsIHBhcmVudFR5cGUpIHtcbiAge1xuICAgIGlmICghZWxlbWVudC5fc3RvcmUgfHwgZWxlbWVudC5fc3RvcmUudmFsaWRhdGVkIHx8IGVsZW1lbnQua2V5ICE9IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBlbGVtZW50Ll9zdG9yZS52YWxpZGF0ZWQgPSB0cnVlO1xuICAgIHZhciBjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvID0gZ2V0Q3VycmVudENvbXBvbmVudEVycm9ySW5mbyhwYXJlbnRUeXBlKTtcblxuICAgIGlmIChvd25lckhhc0tleVVzZVdhcm5pbmdbY3VycmVudENvbXBvbmVudEVycm9ySW5mb10pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBvd25lckhhc0tleVVzZVdhcm5pbmdbY3VycmVudENvbXBvbmVudEVycm9ySW5mb10gPSB0cnVlOyAvLyBVc3VhbGx5IHRoZSBjdXJyZW50IG93bmVyIGlzIHRoZSBvZmZlbmRlciwgYnV0IGlmIGl0IGFjY2VwdHMgY2hpbGRyZW4gYXMgYVxuICAgIC8vIHByb3BlcnR5LCBpdCBtYXkgYmUgdGhlIGNyZWF0b3Igb2YgdGhlIGNoaWxkIHRoYXQncyByZXNwb25zaWJsZSBmb3JcbiAgICAvLyBhc3NpZ25pbmcgaXQgYSBrZXkuXG5cbiAgICB2YXIgY2hpbGRPd25lciA9ICcnO1xuXG4gICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5fb3duZXIgJiYgZWxlbWVudC5fb3duZXIgIT09IFJlYWN0Q3VycmVudE93bmVyJDEuY3VycmVudCkge1xuICAgICAgLy8gR2l2ZSB0aGUgY29tcG9uZW50IHRoYXQgb3JpZ2luYWxseSBjcmVhdGVkIHRoaXMgY2hpbGQuXG4gICAgICBjaGlsZE93bmVyID0gXCIgSXQgd2FzIHBhc3NlZCBhIGNoaWxkIGZyb20gXCIgKyBnZXRDb21wb25lbnROYW1lKGVsZW1lbnQuX293bmVyLnR5cGUpICsgXCIuXCI7XG4gICAgfVxuXG4gICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShlbGVtZW50KTtcblxuICAgIGVycm9yKCdFYWNoIGNoaWxkIGluIGEgbGlzdCBzaG91bGQgaGF2ZSBhIHVuaXF1ZSBcImtleVwiIHByb3AuJyArICclcyVzIFNlZSBodHRwczovL3JlYWN0anMub3JnL2xpbmsvd2FybmluZy1rZXlzIGZvciBtb3JlIGluZm9ybWF0aW9uLicsIGN1cnJlbnRDb21wb25lbnRFcnJvckluZm8sIGNoaWxkT3duZXIpO1xuXG4gICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShudWxsKTtcbiAgfVxufVxuLyoqXG4gKiBFbnN1cmUgdGhhdCBldmVyeSBlbGVtZW50IGVpdGhlciBpcyBwYXNzZWQgaW4gYSBzdGF0aWMgbG9jYXRpb24sIGluIGFuXG4gKiBhcnJheSB3aXRoIGFuIGV4cGxpY2l0IGtleXMgcHJvcGVydHkgZGVmaW5lZCwgb3IgaW4gYW4gb2JqZWN0IGxpdGVyYWxcbiAqIHdpdGggdmFsaWQga2V5IHByb3BlcnR5LlxuICpcbiAqIEBpbnRlcm5hbFxuICogQHBhcmFtIHtSZWFjdE5vZGV9IG5vZGUgU3RhdGljYWxseSBwYXNzZWQgY2hpbGQgb2YgYW55IHR5cGUuXG4gKiBAcGFyYW0geyp9IHBhcmVudFR5cGUgbm9kZSdzIHBhcmVudCdzIHR5cGUuXG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUNoaWxkS2V5cyhub2RlLCBwYXJlbnRUeXBlKSB7XG4gIHtcbiAgICBpZiAodHlwZW9mIG5vZGUgIT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkobm9kZSkpIHtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbm9kZS5sZW5ndGg7IGkrKykge1xuICAgICAgICB2YXIgY2hpbGQgPSBub2RlW2ldO1xuXG4gICAgICAgIGlmIChpc1ZhbGlkRWxlbWVudChjaGlsZCkpIHtcbiAgICAgICAgICB2YWxpZGF0ZUV4cGxpY2l0S2V5KGNoaWxkLCBwYXJlbnRUeXBlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoaXNWYWxpZEVsZW1lbnQobm9kZSkpIHtcbiAgICAgIC8vIFRoaXMgZWxlbWVudCB3YXMgcGFzc2VkIGluIGEgdmFsaWQgbG9jYXRpb24uXG4gICAgICBpZiAobm9kZS5fc3RvcmUpIHtcbiAgICAgICAgbm9kZS5fc3RvcmUudmFsaWRhdGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKG5vZGUpIHtcbiAgICAgIHZhciBpdGVyYXRvckZuID0gZ2V0SXRlcmF0b3JGbihub2RlKTtcblxuICAgICAgaWYgKHR5cGVvZiBpdGVyYXRvckZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIC8vIEVudHJ5IGl0ZXJhdG9ycyB1c2VkIHRvIHByb3ZpZGUgaW1wbGljaXQga2V5cyxcbiAgICAgICAgLy8gYnV0IG5vdyB3ZSBwcmludCBhIHNlcGFyYXRlIHdhcm5pbmcgZm9yIHRoZW0gbGF0ZXIuXG4gICAgICAgIGlmIChpdGVyYXRvckZuICE9PSBub2RlLmVudHJpZXMpIHtcbiAgICAgICAgICB2YXIgaXRlcmF0b3IgPSBpdGVyYXRvckZuLmNhbGwobm9kZSk7XG4gICAgICAgICAgdmFyIHN0ZXA7XG5cbiAgICAgICAgICB3aGlsZSAoIShzdGVwID0gaXRlcmF0b3IubmV4dCgpKS5kb25lKSB7XG4gICAgICAgICAgICBpZiAoaXNWYWxpZEVsZW1lbnQoc3RlcC52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgdmFsaWRhdGVFeHBsaWNpdEtleShzdGVwLnZhbHVlLCBwYXJlbnRUeXBlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qKlxuICogR2l2ZW4gYW4gZWxlbWVudCwgdmFsaWRhdGUgdGhhdCBpdHMgcHJvcHMgZm9sbG93IHRoZSBwcm9wVHlwZXMgZGVmaW5pdGlvbixcbiAqIHByb3ZpZGVkIGJ5IHRoZSB0eXBlLlxuICpcbiAqIEBwYXJhbSB7UmVhY3RFbGVtZW50fSBlbGVtZW50XG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZVByb3BUeXBlcyhlbGVtZW50KSB7XG4gIHtcbiAgICB2YXIgdHlwZSA9IGVsZW1lbnQudHlwZTtcblxuICAgIGlmICh0eXBlID09PSBudWxsIHx8IHR5cGUgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcHJvcFR5cGVzO1xuXG4gICAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBwcm9wVHlwZXMgPSB0eXBlLnByb3BUeXBlcztcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiAodHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSB8fCAvLyBOb3RlOiBNZW1vIG9ubHkgY2hlY2tzIG91dGVyIHByb3BzIGhlcmUuXG4gICAgLy8gSW5uZXIgcHJvcHMgYXJlIGNoZWNrZWQgaW4gdGhlIHJlY29uY2lsZXIuXG4gICAgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTUVNT19UWVBFKSkge1xuICAgICAgcHJvcFR5cGVzID0gdHlwZS5wcm9wVHlwZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocHJvcFR5cGVzKSB7XG4gICAgICAvLyBJbnRlbnRpb25hbGx5IGluc2lkZSB0byBhdm9pZCB0cmlnZ2VyaW5nIGxhenkgaW5pdGlhbGl6ZXJzOlxuICAgICAgdmFyIG5hbWUgPSBnZXRDb21wb25lbnROYW1lKHR5cGUpO1xuICAgICAgY2hlY2tQcm9wVHlwZXMocHJvcFR5cGVzLCBlbGVtZW50LnByb3BzLCAncHJvcCcsIG5hbWUsIGVsZW1lbnQpO1xuICAgIH0gZWxzZSBpZiAodHlwZS5Qcm9wVHlwZXMgIT09IHVuZGVmaW5lZCAmJiAhcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24pIHtcbiAgICAgIHByb3BUeXBlc01pc3NwZWxsV2FybmluZ1Nob3duID0gdHJ1ZTsgLy8gSW50ZW50aW9uYWxseSBpbnNpZGUgdG8gYXZvaWQgdHJpZ2dlcmluZyBsYXp5IGluaXRpYWxpemVyczpcblxuICAgICAgdmFyIF9uYW1lID0gZ2V0Q29tcG9uZW50TmFtZSh0eXBlKTtcblxuICAgICAgZXJyb3IoJ0NvbXBvbmVudCAlcyBkZWNsYXJlZCBgUHJvcFR5cGVzYCBpbnN0ZWFkIG9mIGBwcm9wVHlwZXNgLiBEaWQgeW91IG1pc3NwZWxsIHRoZSBwcm9wZXJ0eSBhc3NpZ25tZW50PycsIF9uYW1lIHx8ICdVbmtub3duJyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB0eXBlLmdldERlZmF1bHRQcm9wcyA9PT0gJ2Z1bmN0aW9uJyAmJiAhdHlwZS5nZXREZWZhdWx0UHJvcHMuaXNSZWFjdENsYXNzQXBwcm92ZWQpIHtcbiAgICAgIGVycm9yKCdnZXREZWZhdWx0UHJvcHMgaXMgb25seSB1c2VkIG9uIGNsYXNzaWMgUmVhY3QuY3JlYXRlQ2xhc3MgJyArICdkZWZpbml0aW9ucy4gVXNlIGEgc3RhdGljIHByb3BlcnR5IG5hbWVkIGBkZWZhdWx0UHJvcHNgIGluc3RlYWQuJyk7XG4gICAgfVxuICB9XG59XG4vKipcbiAqIEdpdmVuIGEgZnJhZ21lbnQsIHZhbGlkYXRlIHRoYXQgaXQgY2FuIG9ubHkgYmUgcHJvdmlkZWQgd2l0aCBmcmFnbWVudCBwcm9wc1xuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGZyYWdtZW50XG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUZyYWdtZW50UHJvcHMoZnJhZ21lbnQpIHtcbiAge1xuICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZnJhZ21lbnQucHJvcHMpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIga2V5ID0ga2V5c1tpXTtcblxuICAgICAgaWYgKGtleSAhPT0gJ2NoaWxkcmVuJyAmJiBrZXkgIT09ICdrZXknKSB7XG4gICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZnJhZ21lbnQpO1xuXG4gICAgICAgIGVycm9yKCdJbnZhbGlkIHByb3AgYCVzYCBzdXBwbGllZCB0byBgUmVhY3QuRnJhZ21lbnRgLiAnICsgJ1JlYWN0LkZyYWdtZW50IGNhbiBvbmx5IGhhdmUgYGtleWAgYW5kIGBjaGlsZHJlbmAgcHJvcHMuJywga2V5KTtcblxuICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKG51bGwpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZnJhZ21lbnQucmVmICE9PSBudWxsKSB7XG4gICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKGZyYWdtZW50KTtcblxuICAgICAgZXJyb3IoJ0ludmFsaWQgYXR0cmlidXRlIGByZWZgIHN1cHBsaWVkIHRvIGBSZWFjdC5GcmFnbWVudGAuJyk7XG5cbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEobnVsbCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGpzeFdpdGhWYWxpZGF0aW9uKHR5cGUsIHByb3BzLCBrZXksIGlzU3RhdGljQ2hpbGRyZW4sIHNvdXJjZSwgc2VsZikge1xuICB7XG4gICAgdmFyIHZhbGlkVHlwZSA9IGlzVmFsaWRFbGVtZW50VHlwZSh0eXBlKTsgLy8gV2Ugd2FybiBpbiB0aGlzIGNhc2UgYnV0IGRvbid0IHRocm93LiBXZSBleHBlY3QgdGhlIGVsZW1lbnQgY3JlYXRpb24gdG9cbiAgICAvLyBzdWNjZWVkIGFuZCB0aGVyZSB3aWxsIGxpa2VseSBiZSBlcnJvcnMgaW4gcmVuZGVyLlxuXG4gICAgaWYgKCF2YWxpZFR5cGUpIHtcbiAgICAgIHZhciBpbmZvID0gJyc7XG5cbiAgICAgIGlmICh0eXBlID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHR5cGUgPT09ICdvYmplY3QnICYmIHR5cGUgIT09IG51bGwgJiYgT2JqZWN0LmtleXModHlwZSkubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGluZm8gKz0gJyBZb3UgbGlrZWx5IGZvcmdvdCB0byBleHBvcnQgeW91ciBjb21wb25lbnQgZnJvbSB0aGUgZmlsZSAnICsgXCJpdCdzIGRlZmluZWQgaW4sIG9yIHlvdSBtaWdodCBoYXZlIG1peGVkIHVwIGRlZmF1bHQgYW5kIG5hbWVkIGltcG9ydHMuXCI7XG4gICAgICB9XG5cbiAgICAgIHZhciBzb3VyY2VJbmZvID0gZ2V0U291cmNlSW5mb0Vycm9yQWRkZW5kdW0oc291cmNlKTtcblxuICAgICAgaWYgKHNvdXJjZUluZm8pIHtcbiAgICAgICAgaW5mbyArPSBzb3VyY2VJbmZvO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaW5mbyArPSBnZXREZWNsYXJhdGlvbkVycm9yQWRkZW5kdW0oKTtcbiAgICAgIH1cblxuICAgICAgdmFyIHR5cGVTdHJpbmc7XG5cbiAgICAgIGlmICh0eXBlID09PSBudWxsKSB7XG4gICAgICAgIHR5cGVTdHJpbmcgPSAnbnVsbCc7XG4gICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodHlwZSkpIHtcbiAgICAgICAgdHlwZVN0cmluZyA9ICdhcnJheSc7XG4gICAgICB9IGVsc2UgaWYgKHR5cGUgIT09IHVuZGVmaW5lZCAmJiB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9FTEVNRU5UX1RZUEUpIHtcbiAgICAgICAgdHlwZVN0cmluZyA9IFwiPFwiICsgKGdldENvbXBvbmVudE5hbWUodHlwZS50eXBlKSB8fCAnVW5rbm93bicpICsgXCIgLz5cIjtcbiAgICAgICAgaW5mbyA9ICcgRGlkIHlvdSBhY2NpZGVudGFsbHkgZXhwb3J0IGEgSlNYIGxpdGVyYWwgaW5zdGVhZCBvZiBhIGNvbXBvbmVudD8nO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHlwZVN0cmluZyA9IHR5cGVvZiB0eXBlO1xuICAgICAgfVxuXG4gICAgICBlcnJvcignUmVhY3QuanN4OiB0eXBlIGlzIGludmFsaWQgLS0gZXhwZWN0ZWQgYSBzdHJpbmcgKGZvciAnICsgJ2J1aWx0LWluIGNvbXBvbmVudHMpIG9yIGEgY2xhc3MvZnVuY3Rpb24gKGZvciBjb21wb3NpdGUgJyArICdjb21wb25lbnRzKSBidXQgZ290OiAlcy4lcycsIHR5cGVTdHJpbmcsIGluZm8pO1xuICAgIH1cblxuICAgIHZhciBlbGVtZW50ID0ganN4REVWKHR5cGUsIHByb3BzLCBrZXksIHNvdXJjZSwgc2VsZik7IC8vIFRoZSByZXN1bHQgY2FuIGJlIG51bGxpc2ggaWYgYSBtb2NrIG9yIGEgY3VzdG9tIGZ1bmN0aW9uIGlzIHVzZWQuXG4gICAgLy8gVE9ETzogRHJvcCB0aGlzIHdoZW4gdGhlc2UgYXJlIG5vIGxvbmdlciBhbGxvd2VkIGFzIHRoZSB0eXBlIGFyZ3VtZW50LlxuXG4gICAgaWYgKGVsZW1lbnQgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGVsZW1lbnQ7XG4gICAgfSAvLyBTa2lwIGtleSB3YXJuaW5nIGlmIHRoZSB0eXBlIGlzbid0IHZhbGlkIHNpbmNlIG91ciBrZXkgdmFsaWRhdGlvbiBsb2dpY1xuICAgIC8vIGRvZXNuJ3QgZXhwZWN0IGEgbm9uLXN0cmluZy9mdW5jdGlvbiB0eXBlIGFuZCBjYW4gdGhyb3cgY29uZnVzaW5nIGVycm9ycy5cbiAgICAvLyBXZSBkb24ndCB3YW50IGV4Y2VwdGlvbiBiZWhhdmlvciB0byBkaWZmZXIgYmV0d2VlbiBkZXYgYW5kIHByb2QuXG4gICAgLy8gKFJlbmRlcmluZyB3aWxsIHRocm93IHdpdGggYSBoZWxwZnVsIG1lc3NhZ2UgYW5kIGFzIHNvb24gYXMgdGhlIHR5cGUgaXNcbiAgICAvLyBmaXhlZCwgdGhlIGtleSB3YXJuaW5ncyB3aWxsIGFwcGVhci4pXG5cblxuICAgIGlmICh2YWxpZFR5cGUpIHtcbiAgICAgIHZhciBjaGlsZHJlbiA9IHByb3BzLmNoaWxkcmVuO1xuXG4gICAgICBpZiAoY2hpbGRyZW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAoaXNTdGF0aWNDaGlsZHJlbikge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNoaWxkcmVuKSkge1xuICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICB2YWxpZGF0ZUNoaWxkS2V5cyhjaGlsZHJlbltpXSwgdHlwZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChPYmplY3QuZnJlZXplKSB7XG4gICAgICAgICAgICAgIE9iamVjdC5mcmVlemUoY2hpbGRyZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBlcnJvcignUmVhY3QuanN4OiBTdGF0aWMgY2hpbGRyZW4gc2hvdWxkIGFsd2F5cyBiZSBhbiBhcnJheS4gJyArICdZb3UgYXJlIGxpa2VseSBleHBsaWNpdGx5IGNhbGxpbmcgUmVhY3QuanN4cyBvciBSZWFjdC5qc3hERVYuICcgKyAnVXNlIHRoZSBCYWJlbCB0cmFuc2Zvcm0gaW5zdGVhZC4nKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFsaWRhdGVDaGlsZEtleXMoY2hpbGRyZW4sIHR5cGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHR5cGUgPT09IGV4cG9ydHMuRnJhZ21lbnQpIHtcbiAgICAgIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhlbGVtZW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsaWRhdGVQcm9wVHlwZXMoZWxlbWVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH1cbn0gLy8gVGhlc2UgdHdvIGZ1bmN0aW9ucyBleGlzdCB0byBzdGlsbCBnZXQgY2hpbGQgd2FybmluZ3MgaW4gZGV2XG5cbnZhciBqc3hERVYkMSA9ICBqc3hXaXRoVmFsaWRhdGlvbiA7XG5cbmV4cG9ydHMuanN4REVWID0ganN4REVWJDE7XG4gIH0pKCk7XG59XG4iLCIvKiogQGxpY2Vuc2UgUmVhY3QgdjE3LjAuMVxuICogcmVhY3QuZGV2ZWxvcG1lbnQuanNcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIEZhY2Vib29rLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG52YXIgX2Fzc2lnbiA9IHJlcXVpcmUoJ29iamVjdC1hc3NpZ24nKTtcblxuLy8gVE9ETzogdGhpcyBpcyBzcGVjaWFsIGJlY2F1c2UgaXQgZ2V0cyBpbXBvcnRlZCBkdXJpbmcgYnVpbGQuXG52YXIgUmVhY3RWZXJzaW9uID0gJzE3LjAuMSc7XG5cbi8vIEFUVEVOVElPTlxuLy8gV2hlbiBhZGRpbmcgbmV3IHN5bWJvbHMgdG8gdGhpcyBmaWxlLFxuLy8gUGxlYXNlIGNvbnNpZGVyIGFsc28gYWRkaW5nIHRvICdyZWFjdC1kZXZ0b29scy1zaGFyZWQvc3JjL2JhY2tlbmQvUmVhY3RTeW1ib2xzJ1xuLy8gVGhlIFN5bWJvbCB1c2VkIHRvIHRhZyB0aGUgUmVhY3RFbGVtZW50LWxpa2UgdHlwZXMuIElmIHRoZXJlIGlzIG5vIG5hdGl2ZSBTeW1ib2xcbi8vIG5vciBwb2x5ZmlsbCwgdGhlbiBhIHBsYWluIG51bWJlciBpcyB1c2VkIGZvciBwZXJmb3JtYW5jZS5cbnZhciBSRUFDVF9FTEVNRU5UX1RZUEUgPSAweGVhYzc7XG52YXIgUkVBQ1RfUE9SVEFMX1RZUEUgPSAweGVhY2E7XG5leHBvcnRzLkZyYWdtZW50ID0gMHhlYWNiO1xuZXhwb3J0cy5TdHJpY3RNb2RlID0gMHhlYWNjO1xuZXhwb3J0cy5Qcm9maWxlciA9IDB4ZWFkMjtcbnZhciBSRUFDVF9QUk9WSURFUl9UWVBFID0gMHhlYWNkO1xudmFyIFJFQUNUX0NPTlRFWFRfVFlQRSA9IDB4ZWFjZTtcbnZhciBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFID0gMHhlYWQwO1xuZXhwb3J0cy5TdXNwZW5zZSA9IDB4ZWFkMTtcbnZhciBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEUgPSAweGVhZDg7XG52YXIgUkVBQ1RfTUVNT19UWVBFID0gMHhlYWQzO1xudmFyIFJFQUNUX0xBWllfVFlQRSA9IDB4ZWFkNDtcbnZhciBSRUFDVF9CTE9DS19UWVBFID0gMHhlYWQ5O1xudmFyIFJFQUNUX1NFUlZFUl9CTE9DS19UWVBFID0gMHhlYWRhO1xudmFyIFJFQUNUX0ZVTkRBTUVOVEFMX1RZUEUgPSAweGVhZDU7XG52YXIgUkVBQ1RfU0NPUEVfVFlQRSA9IDB4ZWFkNztcbnZhciBSRUFDVF9PUEFRVUVfSURfVFlQRSA9IDB4ZWFlMDtcbnZhciBSRUFDVF9ERUJVR19UUkFDSU5HX01PREVfVFlQRSA9IDB4ZWFlMTtcbnZhciBSRUFDVF9PRkZTQ1JFRU5fVFlQRSA9IDB4ZWFlMjtcbnZhciBSRUFDVF9MRUdBQ1lfSElEREVOX1RZUEUgPSAweGVhZTM7XG5cbmlmICh0eXBlb2YgU3ltYm9sID09PSAnZnVuY3Rpb24nICYmIFN5bWJvbC5mb3IpIHtcbiAgdmFyIHN5bWJvbEZvciA9IFN5bWJvbC5mb3I7XG4gIFJFQUNUX0VMRU1FTlRfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZWxlbWVudCcpO1xuICBSRUFDVF9QT1JUQUxfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QucG9ydGFsJyk7XG4gIGV4cG9ydHMuRnJhZ21lbnQgPSBzeW1ib2xGb3IoJ3JlYWN0LmZyYWdtZW50Jyk7XG4gIGV4cG9ydHMuU3RyaWN0TW9kZSA9IHN5bWJvbEZvcigncmVhY3Quc3RyaWN0X21vZGUnKTtcbiAgZXhwb3J0cy5Qcm9maWxlciA9IHN5bWJvbEZvcigncmVhY3QucHJvZmlsZXInKTtcbiAgUkVBQ1RfUFJPVklERVJfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QucHJvdmlkZXInKTtcbiAgUkVBQ1RfQ09OVEVYVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5jb250ZXh0Jyk7XG4gIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmZvcndhcmRfcmVmJyk7XG4gIGV4cG9ydHMuU3VzcGVuc2UgPSBzeW1ib2xGb3IoJ3JlYWN0LnN1c3BlbnNlJyk7XG4gIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc3VzcGVuc2VfbGlzdCcpO1xuICBSRUFDVF9NRU1PX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0Lm1lbW8nKTtcbiAgUkVBQ1RfTEFaWV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5sYXp5Jyk7XG4gIFJFQUNUX0JMT0NLX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmJsb2NrJyk7XG4gIFJFQUNUX1NFUlZFUl9CTE9DS19UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zZXJ2ZXIuYmxvY2snKTtcbiAgUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZnVuZGFtZW50YWwnKTtcbiAgUkVBQ1RfU0NPUEVfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc2NvcGUnKTtcbiAgUkVBQ1RfT1BBUVVFX0lEX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0Lm9wYXF1ZS5pZCcpO1xuICBSRUFDVF9ERUJVR19UUkFDSU5HX01PREVfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZGVidWdfdHJhY2VfbW9kZScpO1xuICBSRUFDVF9PRkZTQ1JFRU5fVFlQRSA9IHN5bWJvbEZvcigncmVhY3Qub2Zmc2NyZWVuJyk7XG4gIFJFQUNUX0xFR0FDWV9ISURERU5fVFlQRSA9IHN5bWJvbEZvcigncmVhY3QubGVnYWN5X2hpZGRlbicpO1xufVxuXG52YXIgTUFZQkVfSVRFUkFUT1JfU1lNQk9MID0gdHlwZW9mIFN5bWJvbCA9PT0gJ2Z1bmN0aW9uJyAmJiBTeW1ib2wuaXRlcmF0b3I7XG52YXIgRkFVWF9JVEVSQVRPUl9TWU1CT0wgPSAnQEBpdGVyYXRvcic7XG5mdW5jdGlvbiBnZXRJdGVyYXRvckZuKG1heWJlSXRlcmFibGUpIHtcbiAgaWYgKG1heWJlSXRlcmFibGUgPT09IG51bGwgfHwgdHlwZW9mIG1heWJlSXRlcmFibGUgIT09ICdvYmplY3QnKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB2YXIgbWF5YmVJdGVyYXRvciA9IE1BWUJFX0lURVJBVE9SX1NZTUJPTCAmJiBtYXliZUl0ZXJhYmxlW01BWUJFX0lURVJBVE9SX1NZTUJPTF0gfHwgbWF5YmVJdGVyYWJsZVtGQVVYX0lURVJBVE9SX1NZTUJPTF07XG5cbiAgaWYgKHR5cGVvZiBtYXliZUl0ZXJhdG9yID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1heWJlSXRlcmF0b3I7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBLZWVwcyB0cmFjayBvZiB0aGUgY3VycmVudCBkaXNwYXRjaGVyLlxuICovXG52YXIgUmVhY3RDdXJyZW50RGlzcGF0Y2hlciA9IHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAdHlwZSB7UmVhY3RDb21wb25lbnR9XG4gICAqL1xuICBjdXJyZW50OiBudWxsXG59O1xuXG4vKipcbiAqIEtlZXBzIHRyYWNrIG9mIHRoZSBjdXJyZW50IGJhdGNoJ3MgY29uZmlndXJhdGlvbiBzdWNoIGFzIGhvdyBsb25nIGFuIHVwZGF0ZVxuICogc2hvdWxkIHN1c3BlbmQgZm9yIGlmIGl0IG5lZWRzIHRvLlxuICovXG52YXIgUmVhY3RDdXJyZW50QmF0Y2hDb25maWcgPSB7XG4gIHRyYW5zaXRpb246IDBcbn07XG5cbi8qKlxuICogS2VlcHMgdHJhY2sgb2YgdGhlIGN1cnJlbnQgb3duZXIuXG4gKlxuICogVGhlIGN1cnJlbnQgb3duZXIgaXMgdGhlIGNvbXBvbmVudCB3aG8gc2hvdWxkIG93biBhbnkgY29tcG9uZW50cyB0aGF0IGFyZVxuICogY3VycmVudGx5IGJlaW5nIGNvbnN0cnVjdGVkLlxuICovXG52YXIgUmVhY3RDdXJyZW50T3duZXIgPSB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICogQHR5cGUge1JlYWN0Q29tcG9uZW50fVxuICAgKi9cbiAgY3VycmVudDogbnVsbFxufTtcblxudmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUgPSB7fTtcbnZhciBjdXJyZW50RXh0cmFTdGFja0ZyYW1lID0gbnVsbDtcbmZ1bmN0aW9uIHNldEV4dHJhU3RhY2tGcmFtZShzdGFjaykge1xuICB7XG4gICAgY3VycmVudEV4dHJhU3RhY2tGcmFtZSA9IHN0YWNrO1xuICB9XG59XG5cbntcbiAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5zZXRFeHRyYVN0YWNrRnJhbWUgPSBmdW5jdGlvbiAoc3RhY2spIHtcbiAgICB7XG4gICAgICBjdXJyZW50RXh0cmFTdGFja0ZyYW1lID0gc3RhY2s7XG4gICAgfVxuICB9OyAvLyBTdGFjayBpbXBsZW1lbnRhdGlvbiBpbmplY3RlZCBieSB0aGUgY3VycmVudCByZW5kZXJlci5cblxuXG4gIFJlYWN0RGVidWdDdXJyZW50RnJhbWUuZ2V0Q3VycmVudFN0YWNrID0gbnVsbDtcblxuICBSZWFjdERlYnVnQ3VycmVudEZyYW1lLmdldFN0YWNrQWRkZW5kdW0gPSBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIHN0YWNrID0gJyc7IC8vIEFkZCBhbiBleHRyYSB0b3AgZnJhbWUgd2hpbGUgYW4gZWxlbWVudCBpcyBiZWluZyB2YWxpZGF0ZWRcblxuICAgIGlmIChjdXJyZW50RXh0cmFTdGFja0ZyYW1lKSB7XG4gICAgICBzdGFjayArPSBjdXJyZW50RXh0cmFTdGFja0ZyYW1lO1xuICAgIH0gLy8gRGVsZWdhdGUgdG8gdGhlIGluamVjdGVkIHJlbmRlcmVyLXNwZWNpZmljIGltcGxlbWVudGF0aW9uXG5cblxuICAgIHZhciBpbXBsID0gUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5nZXRDdXJyZW50U3RhY2s7XG5cbiAgICBpZiAoaW1wbCkge1xuICAgICAgc3RhY2sgKz0gaW1wbCgpIHx8ICcnO1xuICAgIH1cblxuICAgIHJldHVybiBzdGFjaztcbiAgfTtcbn1cblxuLyoqXG4gKiBVc2VkIGJ5IGFjdCgpIHRvIHRyYWNrIHdoZXRoZXIgeW91J3JlIGluc2lkZSBhbiBhY3QoKSBzY29wZS5cbiAqL1xudmFyIElzU29tZVJlbmRlcmVyQWN0aW5nID0ge1xuICBjdXJyZW50OiBmYWxzZVxufTtcblxudmFyIFJlYWN0U2hhcmVkSW50ZXJuYWxzID0ge1xuICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyOiBSZWFjdEN1cnJlbnREaXNwYXRjaGVyLFxuICBSZWFjdEN1cnJlbnRCYXRjaENvbmZpZzogUmVhY3RDdXJyZW50QmF0Y2hDb25maWcsXG4gIFJlYWN0Q3VycmVudE93bmVyOiBSZWFjdEN1cnJlbnRPd25lcixcbiAgSXNTb21lUmVuZGVyZXJBY3Rpbmc6IElzU29tZVJlbmRlcmVyQWN0aW5nLFxuICAvLyBVc2VkIGJ5IHJlbmRlcmVycyB0byBhdm9pZCBidW5kbGluZyBvYmplY3QtYXNzaWduIHR3aWNlIGluIFVNRCBidW5kbGVzOlxuICBhc3NpZ246IF9hc3NpZ25cbn07XG5cbntcbiAgUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSA9IFJlYWN0RGVidWdDdXJyZW50RnJhbWU7XG59XG5cbi8vIGJ5IGNhbGxzIHRvIHRoZXNlIG1ldGhvZHMgYnkgYSBCYWJlbCBwbHVnaW4uXG4vL1xuLy8gSW4gUFJPRCAob3IgaW4gcGFja2FnZXMgd2l0aG91dCBhY2Nlc3MgdG8gUmVhY3QgaW50ZXJuYWxzKSxcbi8vIHRoZXkgYXJlIGxlZnQgYXMgdGhleSBhcmUgaW5zdGVhZC5cblxuZnVuY3Rpb24gd2Fybihmb3JtYXQpIHtcbiAge1xuICAgIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBhcmdzID0gbmV3IEFycmF5KF9sZW4gPiAxID8gX2xlbiAtIDEgOiAwKSwgX2tleSA9IDE7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICAgIGFyZ3NbX2tleSAtIDFdID0gYXJndW1lbnRzW19rZXldO1xuICAgIH1cblxuICAgIHByaW50V2FybmluZygnd2FybicsIGZvcm1hdCwgYXJncyk7XG4gIH1cbn1cbmZ1bmN0aW9uIGVycm9yKGZvcm1hdCkge1xuICB7XG4gICAgZm9yICh2YXIgX2xlbjIgPSBhcmd1bWVudHMubGVuZ3RoLCBhcmdzID0gbmV3IEFycmF5KF9sZW4yID4gMSA/IF9sZW4yIC0gMSA6IDApLCBfa2V5MiA9IDE7IF9rZXkyIDwgX2xlbjI7IF9rZXkyKyspIHtcbiAgICAgIGFyZ3NbX2tleTIgLSAxXSA9IGFyZ3VtZW50c1tfa2V5Ml07XG4gICAgfVxuXG4gICAgcHJpbnRXYXJuaW5nKCdlcnJvcicsIGZvcm1hdCwgYXJncyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcHJpbnRXYXJuaW5nKGxldmVsLCBmb3JtYXQsIGFyZ3MpIHtcbiAgLy8gV2hlbiBjaGFuZ2luZyB0aGlzIGxvZ2ljLCB5b3UgbWlnaHQgd2FudCB0byBhbHNvXG4gIC8vIHVwZGF0ZSBjb25zb2xlV2l0aFN0YWNrRGV2Lnd3dy5qcyBhcyB3ZWxsLlxuICB7XG4gICAgdmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lO1xuICAgIHZhciBzdGFjayA9IFJlYWN0RGVidWdDdXJyZW50RnJhbWUuZ2V0U3RhY2tBZGRlbmR1bSgpO1xuXG4gICAgaWYgKHN0YWNrICE9PSAnJykge1xuICAgICAgZm9ybWF0ICs9ICclcyc7XG4gICAgICBhcmdzID0gYXJncy5jb25jYXQoW3N0YWNrXSk7XG4gICAgfVxuXG4gICAgdmFyIGFyZ3NXaXRoRm9ybWF0ID0gYXJncy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIHJldHVybiAnJyArIGl0ZW07XG4gICAgfSk7IC8vIENhcmVmdWw6IFJOIGN1cnJlbnRseSBkZXBlbmRzIG9uIHRoaXMgcHJlZml4XG5cbiAgICBhcmdzV2l0aEZvcm1hdC51bnNoaWZ0KCdXYXJuaW5nOiAnICsgZm9ybWF0KTsgLy8gV2UgaW50ZW50aW9uYWxseSBkb24ndCB1c2Ugc3ByZWFkIChvciAuYXBwbHkpIGRpcmVjdGx5IGJlY2F1c2UgaXRcbiAgICAvLyBicmVha3MgSUU5OiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzEzNjEwXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZ1xuXG4gICAgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwoY29uc29sZVtsZXZlbF0sIGNvbnNvbGUsIGFyZ3NXaXRoRm9ybWF0KTtcbiAgfVxufVxuXG52YXIgZGlkV2FyblN0YXRlVXBkYXRlRm9yVW5tb3VudGVkQ29tcG9uZW50ID0ge307XG5cbmZ1bmN0aW9uIHdhcm5Ob29wKHB1YmxpY0luc3RhbmNlLCBjYWxsZXJOYW1lKSB7XG4gIHtcbiAgICB2YXIgX2NvbnN0cnVjdG9yID0gcHVibGljSW5zdGFuY2UuY29uc3RydWN0b3I7XG4gICAgdmFyIGNvbXBvbmVudE5hbWUgPSBfY29uc3RydWN0b3IgJiYgKF9jb25zdHJ1Y3Rvci5kaXNwbGF5TmFtZSB8fCBfY29uc3RydWN0b3IubmFtZSkgfHwgJ1JlYWN0Q2xhc3MnO1xuICAgIHZhciB3YXJuaW5nS2V5ID0gY29tcG9uZW50TmFtZSArIFwiLlwiICsgY2FsbGVyTmFtZTtcblxuICAgIGlmIChkaWRXYXJuU3RhdGVVcGRhdGVGb3JVbm1vdW50ZWRDb21wb25lbnRbd2FybmluZ0tleV0pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBlcnJvcihcIkNhbid0IGNhbGwgJXMgb24gYSBjb21wb25lbnQgdGhhdCBpcyBub3QgeWV0IG1vdW50ZWQuIFwiICsgJ1RoaXMgaXMgYSBuby1vcCwgYnV0IGl0IG1pZ2h0IGluZGljYXRlIGEgYnVnIGluIHlvdXIgYXBwbGljYXRpb24uICcgKyAnSW5zdGVhZCwgYXNzaWduIHRvIGB0aGlzLnN0YXRlYCBkaXJlY3RseSBvciBkZWZpbmUgYSBgc3RhdGUgPSB7fTtgICcgKyAnY2xhc3MgcHJvcGVydHkgd2l0aCB0aGUgZGVzaXJlZCBzdGF0ZSBpbiB0aGUgJXMgY29tcG9uZW50LicsIGNhbGxlck5hbWUsIGNvbXBvbmVudE5hbWUpO1xuXG4gICAgZGlkV2FyblN0YXRlVXBkYXRlRm9yVW5tb3VudGVkQ29tcG9uZW50W3dhcm5pbmdLZXldID0gdHJ1ZTtcbiAgfVxufVxuLyoqXG4gKiBUaGlzIGlzIHRoZSBhYnN0cmFjdCBBUEkgZm9yIGFuIHVwZGF0ZSBxdWV1ZS5cbiAqL1xuXG5cbnZhciBSZWFjdE5vb3BVcGRhdGVRdWV1ZSA9IHtcbiAgLyoqXG4gICAqIENoZWNrcyB3aGV0aGVyIG9yIG5vdCB0aGlzIGNvbXBvc2l0ZSBjb21wb25lbnQgaXMgbW91bnRlZC5cbiAgICogQHBhcmFtIHtSZWFjdENsYXNzfSBwdWJsaWNJbnN0YW5jZSBUaGUgaW5zdGFuY2Ugd2Ugd2FudCB0byB0ZXN0LlxuICAgKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIGlmIG1vdW50ZWQsIGZhbHNlIG90aGVyd2lzZS5cbiAgICogQHByb3RlY3RlZFxuICAgKiBAZmluYWxcbiAgICovXG4gIGlzTW91bnRlZDogZnVuY3Rpb24gKHB1YmxpY0luc3RhbmNlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9LFxuXG4gIC8qKlxuICAgKiBGb3JjZXMgYW4gdXBkYXRlLiBUaGlzIHNob3VsZCBvbmx5IGJlIGludm9rZWQgd2hlbiBpdCBpcyBrbm93biB3aXRoXG4gICAqIGNlcnRhaW50eSB0aGF0IHdlIGFyZSAqKm5vdCoqIGluIGEgRE9NIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBZb3UgbWF5IHdhbnQgdG8gY2FsbCB0aGlzIHdoZW4geW91IGtub3cgdGhhdCBzb21lIGRlZXBlciBhc3BlY3Qgb2YgdGhlXG4gICAqIGNvbXBvbmVudCdzIHN0YXRlIGhhcyBjaGFuZ2VkIGJ1dCBgc2V0U3RhdGVgIHdhcyBub3QgY2FsbGVkLlxuICAgKlxuICAgKiBUaGlzIHdpbGwgbm90IGludm9rZSBgc2hvdWxkQ29tcG9uZW50VXBkYXRlYCwgYnV0IGl0IHdpbGwgaW52b2tlXG4gICAqIGBjb21wb25lbnRXaWxsVXBkYXRlYCBhbmQgYGNvbXBvbmVudERpZFVwZGF0ZWAuXG4gICAqXG4gICAqIEBwYXJhbSB7UmVhY3RDbGFzc30gcHVibGljSW5zdGFuY2UgVGhlIGluc3RhbmNlIHRoYXQgc2hvdWxkIHJlcmVuZGVyLlxuICAgKiBAcGFyYW0gez9mdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGVkIGFmdGVyIGNvbXBvbmVudCBpcyB1cGRhdGVkLlxuICAgKiBAcGFyYW0gez9zdHJpbmd9IGNhbGxlck5hbWUgbmFtZSBvZiB0aGUgY2FsbGluZyBmdW5jdGlvbiBpbiB0aGUgcHVibGljIEFQSS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBlbnF1ZXVlRm9yY2VVcGRhdGU6IGZ1bmN0aW9uIChwdWJsaWNJbnN0YW5jZSwgY2FsbGJhY2ssIGNhbGxlck5hbWUpIHtcbiAgICB3YXJuTm9vcChwdWJsaWNJbnN0YW5jZSwgJ2ZvcmNlVXBkYXRlJyk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFJlcGxhY2VzIGFsbCBvZiB0aGUgc3RhdGUuIEFsd2F5cyB1c2UgdGhpcyBvciBgc2V0U3RhdGVgIHRvIG11dGF0ZSBzdGF0ZS5cbiAgICogWW91IHNob3VsZCB0cmVhdCBgdGhpcy5zdGF0ZWAgYXMgaW1tdXRhYmxlLlxuICAgKlxuICAgKiBUaGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBgdGhpcy5zdGF0ZWAgd2lsbCBiZSBpbW1lZGlhdGVseSB1cGRhdGVkLCBzb1xuICAgKiBhY2Nlc3NpbmcgYHRoaXMuc3RhdGVgIGFmdGVyIGNhbGxpbmcgdGhpcyBtZXRob2QgbWF5IHJldHVybiB0aGUgb2xkIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0ge1JlYWN0Q2xhc3N9IHB1YmxpY0luc3RhbmNlIFRoZSBpbnN0YW5jZSB0aGF0IHNob3VsZCByZXJlbmRlci5cbiAgICogQHBhcmFtIHtvYmplY3R9IGNvbXBsZXRlU3RhdGUgTmV4dCBzdGF0ZS5cbiAgICogQHBhcmFtIHs/ZnVuY3Rpb259IGNhbGxiYWNrIENhbGxlZCBhZnRlciBjb21wb25lbnQgaXMgdXBkYXRlZC5cbiAgICogQHBhcmFtIHs/c3RyaW5nfSBjYWxsZXJOYW1lIG5hbWUgb2YgdGhlIGNhbGxpbmcgZnVuY3Rpb24gaW4gdGhlIHB1YmxpYyBBUEkuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZW5xdWV1ZVJlcGxhY2VTdGF0ZTogZnVuY3Rpb24gKHB1YmxpY0luc3RhbmNlLCBjb21wbGV0ZVN0YXRlLCBjYWxsYmFjaywgY2FsbGVyTmFtZSkge1xuICAgIHdhcm5Ob29wKHB1YmxpY0luc3RhbmNlLCAncmVwbGFjZVN0YXRlJyk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFNldHMgYSBzdWJzZXQgb2YgdGhlIHN0YXRlLiBUaGlzIG9ubHkgZXhpc3RzIGJlY2F1c2UgX3BlbmRpbmdTdGF0ZSBpc1xuICAgKiBpbnRlcm5hbC4gVGhpcyBwcm92aWRlcyBhIG1lcmdpbmcgc3RyYXRlZ3kgdGhhdCBpcyBub3QgYXZhaWxhYmxlIHRvIGRlZXBcbiAgICogcHJvcGVydGllcyB3aGljaCBpcyBjb25mdXNpbmcuIFRPRE86IEV4cG9zZSBwZW5kaW5nU3RhdGUgb3IgZG9uJ3QgdXNlIGl0XG4gICAqIGR1cmluZyB0aGUgbWVyZ2UuXG4gICAqXG4gICAqIEBwYXJhbSB7UmVhY3RDbGFzc30gcHVibGljSW5zdGFuY2UgVGhlIGluc3RhbmNlIHRoYXQgc2hvdWxkIHJlcmVuZGVyLlxuICAgKiBAcGFyYW0ge29iamVjdH0gcGFydGlhbFN0YXRlIE5leHQgcGFydGlhbCBzdGF0ZSB0byBiZSBtZXJnZWQgd2l0aCBzdGF0ZS5cbiAgICogQHBhcmFtIHs/ZnVuY3Rpb259IGNhbGxiYWNrIENhbGxlZCBhZnRlciBjb21wb25lbnQgaXMgdXBkYXRlZC5cbiAgICogQHBhcmFtIHs/c3RyaW5nfSBOYW1lIG9mIHRoZSBjYWxsaW5nIGZ1bmN0aW9uIGluIHRoZSBwdWJsaWMgQVBJLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGVucXVldWVTZXRTdGF0ZTogZnVuY3Rpb24gKHB1YmxpY0luc3RhbmNlLCBwYXJ0aWFsU3RhdGUsIGNhbGxiYWNrLCBjYWxsZXJOYW1lKSB7XG4gICAgd2Fybk5vb3AocHVibGljSW5zdGFuY2UsICdzZXRTdGF0ZScpO1xuICB9XG59O1xuXG52YXIgZW1wdHlPYmplY3QgPSB7fTtcblxue1xuICBPYmplY3QuZnJlZXplKGVtcHR5T2JqZWN0KTtcbn1cbi8qKlxuICogQmFzZSBjbGFzcyBoZWxwZXJzIGZvciB0aGUgdXBkYXRpbmcgc3RhdGUgb2YgYSBjb21wb25lbnQuXG4gKi9cblxuXG5mdW5jdGlvbiBDb21wb25lbnQocHJvcHMsIGNvbnRleHQsIHVwZGF0ZXIpIHtcbiAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB0aGlzLmNvbnRleHQgPSBjb250ZXh0OyAvLyBJZiBhIGNvbXBvbmVudCBoYXMgc3RyaW5nIHJlZnMsIHdlIHdpbGwgYXNzaWduIGEgZGlmZmVyZW50IG9iamVjdCBsYXRlci5cblxuICB0aGlzLnJlZnMgPSBlbXB0eU9iamVjdDsgLy8gV2UgaW5pdGlhbGl6ZSB0aGUgZGVmYXVsdCB1cGRhdGVyIGJ1dCB0aGUgcmVhbCBvbmUgZ2V0cyBpbmplY3RlZCBieSB0aGVcbiAgLy8gcmVuZGVyZXIuXG5cbiAgdGhpcy51cGRhdGVyID0gdXBkYXRlciB8fCBSZWFjdE5vb3BVcGRhdGVRdWV1ZTtcbn1cblxuQ29tcG9uZW50LnByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50ID0ge307XG4vKipcbiAqIFNldHMgYSBzdWJzZXQgb2YgdGhlIHN0YXRlLiBBbHdheXMgdXNlIHRoaXMgdG8gbXV0YXRlXG4gKiBzdGF0ZS4gWW91IHNob3VsZCB0cmVhdCBgdGhpcy5zdGF0ZWAgYXMgaW1tdXRhYmxlLlxuICpcbiAqIFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IGB0aGlzLnN0YXRlYCB3aWxsIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQsIHNvXG4gKiBhY2Nlc3NpbmcgYHRoaXMuc3RhdGVgIGFmdGVyIGNhbGxpbmcgdGhpcyBtZXRob2QgbWF5IHJldHVybiB0aGUgb2xkIHZhbHVlLlxuICpcbiAqIFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IGNhbGxzIHRvIGBzZXRTdGF0ZWAgd2lsbCBydW4gc3luY2hyb25vdXNseSxcbiAqIGFzIHRoZXkgbWF5IGV2ZW50dWFsbHkgYmUgYmF0Y2hlZCB0b2dldGhlci4gIFlvdSBjYW4gcHJvdmlkZSBhbiBvcHRpb25hbFxuICogY2FsbGJhY2sgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIHdoZW4gdGhlIGNhbGwgdG8gc2V0U3RhdGUgaXMgYWN0dWFsbHlcbiAqIGNvbXBsZXRlZC5cbiAqXG4gKiBXaGVuIGEgZnVuY3Rpb24gaXMgcHJvdmlkZWQgdG8gc2V0U3RhdGUsIGl0IHdpbGwgYmUgY2FsbGVkIGF0IHNvbWUgcG9pbnQgaW5cbiAqIHRoZSBmdXR1cmUgKG5vdCBzeW5jaHJvbm91c2x5KS4gSXQgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgdXAgdG8gZGF0ZVxuICogY29tcG9uZW50IGFyZ3VtZW50cyAoc3RhdGUsIHByb3BzLCBjb250ZXh0KS4gVGhlc2UgdmFsdWVzIGNhbiBiZSBkaWZmZXJlbnRcbiAqIGZyb20gdGhpcy4qIGJlY2F1c2UgeW91ciBmdW5jdGlvbiBtYXkgYmUgY2FsbGVkIGFmdGVyIHJlY2VpdmVQcm9wcyBidXQgYmVmb3JlXG4gKiBzaG91bGRDb21wb25lbnRVcGRhdGUsIGFuZCB0aGlzIG5ldyBzdGF0ZSwgcHJvcHMsIGFuZCBjb250ZXh0IHdpbGwgbm90IHlldCBiZVxuICogYXNzaWduZWQgdG8gdGhpcy5cbiAqXG4gKiBAcGFyYW0ge29iamVjdHxmdW5jdGlvbn0gcGFydGlhbFN0YXRlIE5leHQgcGFydGlhbCBzdGF0ZSBvciBmdW5jdGlvbiB0b1xuICogICAgICAgIHByb2R1Y2UgbmV4dCBwYXJ0aWFsIHN0YXRlIHRvIGJlIG1lcmdlZCB3aXRoIGN1cnJlbnQgc3RhdGUuXG4gKiBAcGFyYW0gez9mdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGVkIGFmdGVyIHN0YXRlIGlzIHVwZGF0ZWQuXG4gKiBAZmluYWxcbiAqIEBwcm90ZWN0ZWRcbiAqL1xuXG5Db21wb25lbnQucHJvdG90eXBlLnNldFN0YXRlID0gZnVuY3Rpb24gKHBhcnRpYWxTdGF0ZSwgY2FsbGJhY2spIHtcbiAgaWYgKCEodHlwZW9mIHBhcnRpYWxTdGF0ZSA9PT0gJ29iamVjdCcgfHwgdHlwZW9mIHBhcnRpYWxTdGF0ZSA9PT0gJ2Z1bmN0aW9uJyB8fCBwYXJ0aWFsU3RhdGUgPT0gbnVsbCkpIHtcbiAgICB7XG4gICAgICB0aHJvdyBFcnJvciggXCJzZXRTdGF0ZSguLi4pOiB0YWtlcyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzIHRvIHVwZGF0ZSBvciBhIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcy5cIiApO1xuICAgIH1cbiAgfVxuXG4gIHRoaXMudXBkYXRlci5lbnF1ZXVlU2V0U3RhdGUodGhpcywgcGFydGlhbFN0YXRlLCBjYWxsYmFjaywgJ3NldFN0YXRlJyk7XG59O1xuLyoqXG4gKiBGb3JjZXMgYW4gdXBkYXRlLiBUaGlzIHNob3VsZCBvbmx5IGJlIGludm9rZWQgd2hlbiBpdCBpcyBrbm93biB3aXRoXG4gKiBjZXJ0YWludHkgdGhhdCB3ZSBhcmUgKipub3QqKiBpbiBhIERPTSB0cmFuc2FjdGlvbi5cbiAqXG4gKiBZb3UgbWF5IHdhbnQgdG8gY2FsbCB0aGlzIHdoZW4geW91IGtub3cgdGhhdCBzb21lIGRlZXBlciBhc3BlY3Qgb2YgdGhlXG4gKiBjb21wb25lbnQncyBzdGF0ZSBoYXMgY2hhbmdlZCBidXQgYHNldFN0YXRlYCB3YXMgbm90IGNhbGxlZC5cbiAqXG4gKiBUaGlzIHdpbGwgbm90IGludm9rZSBgc2hvdWxkQ29tcG9uZW50VXBkYXRlYCwgYnV0IGl0IHdpbGwgaW52b2tlXG4gKiBgY29tcG9uZW50V2lsbFVwZGF0ZWAgYW5kIGBjb21wb25lbnREaWRVcGRhdGVgLlxuICpcbiAqIEBwYXJhbSB7P2Z1bmN0aW9ufSBjYWxsYmFjayBDYWxsZWQgYWZ0ZXIgdXBkYXRlIGlzIGNvbXBsZXRlLlxuICogQGZpbmFsXG4gKiBAcHJvdGVjdGVkXG4gKi9cblxuXG5Db21wb25lbnQucHJvdG90eXBlLmZvcmNlVXBkYXRlID0gZnVuY3Rpb24gKGNhbGxiYWNrKSB7XG4gIHRoaXMudXBkYXRlci5lbnF1ZXVlRm9yY2VVcGRhdGUodGhpcywgY2FsbGJhY2ssICdmb3JjZVVwZGF0ZScpO1xufTtcbi8qKlxuICogRGVwcmVjYXRlZCBBUElzLiBUaGVzZSBBUElzIHVzZWQgdG8gZXhpc3Qgb24gY2xhc3NpYyBSZWFjdCBjbGFzc2VzIGJ1dCBzaW5jZVxuICogd2Ugd291bGQgbGlrZSB0byBkZXByZWNhdGUgdGhlbSwgd2UncmUgbm90IGdvaW5nIHRvIG1vdmUgdGhlbSBvdmVyIHRvIHRoaXNcbiAqIG1vZGVybiBiYXNlIGNsYXNzLiBJbnN0ZWFkLCB3ZSBkZWZpbmUgYSBnZXR0ZXIgdGhhdCB3YXJucyBpZiBpdCdzIGFjY2Vzc2VkLlxuICovXG5cblxue1xuICB2YXIgZGVwcmVjYXRlZEFQSXMgPSB7XG4gICAgaXNNb3VudGVkOiBbJ2lzTW91bnRlZCcsICdJbnN0ZWFkLCBtYWtlIHN1cmUgdG8gY2xlYW4gdXAgc3Vic2NyaXB0aW9ucyBhbmQgcGVuZGluZyByZXF1ZXN0cyBpbiAnICsgJ2NvbXBvbmVudFdpbGxVbm1vdW50IHRvIHByZXZlbnQgbWVtb3J5IGxlYWtzLiddLFxuICAgIHJlcGxhY2VTdGF0ZTogWydyZXBsYWNlU3RhdGUnLCAnUmVmYWN0b3IgeW91ciBjb2RlIHRvIHVzZSBzZXRTdGF0ZSBpbnN0ZWFkIChzZWUgJyArICdodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzMyMzYpLiddXG4gIH07XG5cbiAgdmFyIGRlZmluZURlcHJlY2F0aW9uV2FybmluZyA9IGZ1bmN0aW9uIChtZXRob2ROYW1lLCBpbmZvKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KENvbXBvbmVudC5wcm90b3R5cGUsIG1ldGhvZE5hbWUsIHtcbiAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICB3YXJuKCclcyguLi4pIGlzIGRlcHJlY2F0ZWQgaW4gcGxhaW4gSmF2YVNjcmlwdCBSZWFjdCBjbGFzc2VzLiAlcycsIGluZm9bMF0sIGluZm9bMV0pO1xuXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgfSk7XG4gIH07XG5cbiAgZm9yICh2YXIgZm5OYW1lIGluIGRlcHJlY2F0ZWRBUElzKSB7XG4gICAgaWYgKGRlcHJlY2F0ZWRBUElzLmhhc093blByb3BlcnR5KGZuTmFtZSkpIHtcbiAgICAgIGRlZmluZURlcHJlY2F0aW9uV2FybmluZyhmbk5hbWUsIGRlcHJlY2F0ZWRBUElzW2ZuTmFtZV0pO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBDb21wb25lbnREdW1teSgpIHt9XG5cbkNvbXBvbmVudER1bW15LnByb3RvdHlwZSA9IENvbXBvbmVudC5wcm90b3R5cGU7XG4vKipcbiAqIENvbnZlbmllbmNlIGNvbXBvbmVudCB3aXRoIGRlZmF1bHQgc2hhbGxvdyBlcXVhbGl0eSBjaGVjayBmb3Igc0NVLlxuICovXG5cbmZ1bmN0aW9uIFB1cmVDb21wb25lbnQocHJvcHMsIGNvbnRleHQsIHVwZGF0ZXIpIHtcbiAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB0aGlzLmNvbnRleHQgPSBjb250ZXh0OyAvLyBJZiBhIGNvbXBvbmVudCBoYXMgc3RyaW5nIHJlZnMsIHdlIHdpbGwgYXNzaWduIGEgZGlmZmVyZW50IG9iamVjdCBsYXRlci5cblxuICB0aGlzLnJlZnMgPSBlbXB0eU9iamVjdDtcbiAgdGhpcy51cGRhdGVyID0gdXBkYXRlciB8fCBSZWFjdE5vb3BVcGRhdGVRdWV1ZTtcbn1cblxudmFyIHB1cmVDb21wb25lbnRQcm90b3R5cGUgPSBQdXJlQ29tcG9uZW50LnByb3RvdHlwZSA9IG5ldyBDb21wb25lbnREdW1teSgpO1xucHVyZUNvbXBvbmVudFByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IFB1cmVDb21wb25lbnQ7IC8vIEF2b2lkIGFuIGV4dHJhIHByb3RvdHlwZSBqdW1wIGZvciB0aGVzZSBtZXRob2RzLlxuXG5fYXNzaWduKHB1cmVDb21wb25lbnRQcm90b3R5cGUsIENvbXBvbmVudC5wcm90b3R5cGUpO1xuXG5wdXJlQ29tcG9uZW50UHJvdG90eXBlLmlzUHVyZVJlYWN0Q29tcG9uZW50ID0gdHJ1ZTtcblxuLy8gYW4gaW1tdXRhYmxlIG9iamVjdCB3aXRoIGEgc2luZ2xlIG11dGFibGUgdmFsdWVcbmZ1bmN0aW9uIGNyZWF0ZVJlZigpIHtcbiAgdmFyIHJlZk9iamVjdCA9IHtcbiAgICBjdXJyZW50OiBudWxsXG4gIH07XG5cbiAge1xuICAgIE9iamVjdC5zZWFsKHJlZk9iamVjdCk7XG4gIH1cblxuICByZXR1cm4gcmVmT2JqZWN0O1xufVxuXG5mdW5jdGlvbiBnZXRXcmFwcGVkTmFtZShvdXRlclR5cGUsIGlubmVyVHlwZSwgd3JhcHBlck5hbWUpIHtcbiAgdmFyIGZ1bmN0aW9uTmFtZSA9IGlubmVyVHlwZS5kaXNwbGF5TmFtZSB8fCBpbm5lclR5cGUubmFtZSB8fCAnJztcbiAgcmV0dXJuIG91dGVyVHlwZS5kaXNwbGF5TmFtZSB8fCAoZnVuY3Rpb25OYW1lICE9PSAnJyA/IHdyYXBwZXJOYW1lICsgXCIoXCIgKyBmdW5jdGlvbk5hbWUgKyBcIilcIiA6IHdyYXBwZXJOYW1lKTtcbn1cblxuZnVuY3Rpb24gZ2V0Q29udGV4dE5hbWUodHlwZSkge1xuICByZXR1cm4gdHlwZS5kaXNwbGF5TmFtZSB8fCAnQ29udGV4dCc7XG59XG5cbmZ1bmN0aW9uIGdldENvbXBvbmVudE5hbWUodHlwZSkge1xuICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgLy8gSG9zdCByb290LCB0ZXh0IG5vZGUgb3IganVzdCBpbnZhbGlkIHR5cGUuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB7XG4gICAgaWYgKHR5cGVvZiB0eXBlLnRhZyA9PT0gJ251bWJlcicpIHtcbiAgICAgIGVycm9yKCdSZWNlaXZlZCBhbiB1bmV4cGVjdGVkIG9iamVjdCBpbiBnZXRDb21wb25lbnROYW1lKCkuICcgKyAnVGhpcyBpcyBsaWtlbHkgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiB0eXBlLmRpc3BsYXlOYW1lIHx8IHR5cGUubmFtZSB8fCBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBleHBvcnRzLkZyYWdtZW50OlxuICAgICAgcmV0dXJuICdGcmFnbWVudCc7XG5cbiAgICBjYXNlIFJFQUNUX1BPUlRBTF9UWVBFOlxuICAgICAgcmV0dXJuICdQb3J0YWwnO1xuXG4gICAgY2FzZSBleHBvcnRzLlByb2ZpbGVyOlxuICAgICAgcmV0dXJuICdQcm9maWxlcic7XG5cbiAgICBjYXNlIGV4cG9ydHMuU3RyaWN0TW9kZTpcbiAgICAgIHJldHVybiAnU3RyaWN0TW9kZSc7XG5cbiAgICBjYXNlIGV4cG9ydHMuU3VzcGVuc2U6XG4gICAgICByZXR1cm4gJ1N1c3BlbnNlJztcblxuICAgIGNhc2UgUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFOlxuICAgICAgcmV0dXJuICdTdXNwZW5zZUxpc3QnO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0Jykge1xuICAgIHN3aXRjaCAodHlwZS4kJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9DT05URVhUX1RZUEU6XG4gICAgICAgIHZhciBjb250ZXh0ID0gdHlwZTtcbiAgICAgICAgcmV0dXJuIGdldENvbnRleHROYW1lKGNvbnRleHQpICsgJy5Db25zdW1lcic7XG5cbiAgICAgIGNhc2UgUkVBQ1RfUFJPVklERVJfVFlQRTpcbiAgICAgICAgdmFyIHByb3ZpZGVyID0gdHlwZTtcbiAgICAgICAgcmV0dXJuIGdldENvbnRleHROYW1lKHByb3ZpZGVyLl9jb250ZXh0KSArICcuUHJvdmlkZXInO1xuXG4gICAgICBjYXNlIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU6XG4gICAgICAgIHJldHVybiBnZXRXcmFwcGVkTmFtZSh0eXBlLCB0eXBlLnJlbmRlciwgJ0ZvcndhcmRSZWYnKTtcblxuICAgICAgY2FzZSBSRUFDVF9NRU1PX1RZUEU6XG4gICAgICAgIHJldHVybiBnZXRDb21wb25lbnROYW1lKHR5cGUudHlwZSk7XG5cbiAgICAgIGNhc2UgUkVBQ1RfQkxPQ0tfVFlQRTpcbiAgICAgICAgcmV0dXJuIGdldENvbXBvbmVudE5hbWUodHlwZS5fcmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9MQVpZX1RZUEU6XG4gICAgICAgIHtcbiAgICAgICAgICB2YXIgbGF6eUNvbXBvbmVudCA9IHR5cGU7XG4gICAgICAgICAgdmFyIHBheWxvYWQgPSBsYXp5Q29tcG9uZW50Ll9wYXlsb2FkO1xuICAgICAgICAgIHZhciBpbml0ID0gbGF6eUNvbXBvbmVudC5faW5pdDtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0Q29tcG9uZW50TmFtZShpbml0KHBheWxvYWQpKTtcbiAgICAgICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxudmFyIGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtcbnZhciBSRVNFUlZFRF9QUk9QUyA9IHtcbiAga2V5OiB0cnVlLFxuICByZWY6IHRydWUsXG4gIF9fc2VsZjogdHJ1ZSxcbiAgX19zb3VyY2U6IHRydWVcbn07XG52YXIgc3BlY2lhbFByb3BLZXlXYXJuaW5nU2hvd24sIHNwZWNpYWxQcm9wUmVmV2FybmluZ1Nob3duLCBkaWRXYXJuQWJvdXRTdHJpbmdSZWZzO1xuXG57XG4gIGRpZFdhcm5BYm91dFN0cmluZ1JlZnMgPSB7fTtcbn1cblxuZnVuY3Rpb24gaGFzVmFsaWRSZWYoY29uZmlnKSB7XG4gIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdyZWYnKSkge1xuICAgICAgdmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoY29uZmlnLCAncmVmJykuZ2V0O1xuXG4gICAgICBpZiAoZ2V0dGVyICYmIGdldHRlci5pc1JlYWN0V2FybmluZykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbmZpZy5yZWYgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaGFzVmFsaWRLZXkoY29uZmlnKSB7XG4gIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdrZXknKSkge1xuICAgICAgdmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoY29uZmlnLCAna2V5JykuZ2V0O1xuXG4gICAgICBpZiAoZ2V0dGVyICYmIGdldHRlci5pc1JlYWN0V2FybmluZykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbmZpZy5rZXkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gZGVmaW5lS2V5UHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKSB7XG4gIHZhciB3YXJuQWJvdXRBY2Nlc3NpbmdLZXkgPSBmdW5jdGlvbiAoKSB7XG4gICAge1xuICAgICAgaWYgKCFzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93bikge1xuICAgICAgICBzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93biA9IHRydWU7XG5cbiAgICAgICAgZXJyb3IoJyVzOiBga2V5YCBpcyBub3QgYSBwcm9wLiBUcnlpbmcgdG8gYWNjZXNzIGl0IHdpbGwgcmVzdWx0ICcgKyAnaW4gYHVuZGVmaW5lZGAgYmVpbmcgcmV0dXJuZWQuIElmIHlvdSBuZWVkIHRvIGFjY2VzcyB0aGUgc2FtZSAnICsgJ3ZhbHVlIHdpdGhpbiB0aGUgY2hpbGQgY29tcG9uZW50LCB5b3Ugc2hvdWxkIHBhc3MgaXQgYXMgYSBkaWZmZXJlbnQgJyArICdwcm9wLiAoaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3NwZWNpYWwtcHJvcHMpJywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB3YXJuQWJvdXRBY2Nlc3NpbmdLZXkuaXNSZWFjdFdhcm5pbmcgPSB0cnVlO1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkocHJvcHMsICdrZXknLCB7XG4gICAgZ2V0OiB3YXJuQWJvdXRBY2Nlc3NpbmdLZXksXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBkZWZpbmVSZWZQcm9wV2FybmluZ0dldHRlcihwcm9wcywgZGlzcGxheU5hbWUpIHtcbiAgdmFyIHdhcm5BYm91dEFjY2Vzc2luZ1JlZiA9IGZ1bmN0aW9uICgpIHtcbiAgICB7XG4gICAgICBpZiAoIXNwZWNpYWxQcm9wUmVmV2FybmluZ1Nob3duKSB7XG4gICAgICAgIHNwZWNpYWxQcm9wUmVmV2FybmluZ1Nob3duID0gdHJ1ZTtcblxuICAgICAgICBlcnJvcignJXM6IGByZWZgIGlzIG5vdCBhIHByb3AuIFRyeWluZyB0byBhY2Nlc3MgaXQgd2lsbCByZXN1bHQgJyArICdpbiBgdW5kZWZpbmVkYCBiZWluZyByZXR1cm5lZC4gSWYgeW91IG5lZWQgdG8gYWNjZXNzIHRoZSBzYW1lICcgKyAndmFsdWUgd2l0aGluIHRoZSBjaGlsZCBjb21wb25lbnQsIHlvdSBzaG91bGQgcGFzcyBpdCBhcyBhIGRpZmZlcmVudCAnICsgJ3Byb3AuIChodHRwczovL3JlYWN0anMub3JnL2xpbmsvc3BlY2lhbC1wcm9wcyknLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHdhcm5BYm91dEFjY2Vzc2luZ1JlZi5pc1JlYWN0V2FybmluZyA9IHRydWU7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ3JlZicsIHtcbiAgICBnZXQ6IHdhcm5BYm91dEFjY2Vzc2luZ1JlZixcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHdhcm5JZlN0cmluZ1JlZkNhbm5vdEJlQXV0b0NvbnZlcnRlZChjb25maWcpIHtcbiAge1xuICAgIGlmICh0eXBlb2YgY29uZmlnLnJlZiA9PT0gJ3N0cmluZycgJiYgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCAmJiBjb25maWcuX19zZWxmICYmIFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQuc3RhdGVOb2RlICE9PSBjb25maWcuX19zZWxmKSB7XG4gICAgICB2YXIgY29tcG9uZW50TmFtZSA9IGdldENvbXBvbmVudE5hbWUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKTtcblxuICAgICAgaWYgKCFkaWRXYXJuQWJvdXRTdHJpbmdSZWZzW2NvbXBvbmVudE5hbWVdKSB7XG4gICAgICAgIGVycm9yKCdDb21wb25lbnQgXCIlc1wiIGNvbnRhaW5zIHRoZSBzdHJpbmcgcmVmIFwiJXNcIi4gJyArICdTdXBwb3J0IGZvciBzdHJpbmcgcmVmcyB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gJyArICdUaGlzIGNhc2UgY2Fubm90IGJlIGF1dG9tYXRpY2FsbHkgY29udmVydGVkIHRvIGFuIGFycm93IGZ1bmN0aW9uLiAnICsgJ1dlIGFzayB5b3UgdG8gbWFudWFsbHkgZml4IHRoaXMgY2FzZSBieSB1c2luZyB1c2VSZWYoKSBvciBjcmVhdGVSZWYoKSBpbnN0ZWFkLiAnICsgJ0xlYXJuIG1vcmUgYWJvdXQgdXNpbmcgcmVmcyBzYWZlbHkgaGVyZTogJyArICdodHRwczovL3JlYWN0anMub3JnL2xpbmsvc3RyaWN0LW1vZGUtc3RyaW5nLXJlZicsIGNvbXBvbmVudE5hbWUsIGNvbmZpZy5yZWYpO1xuXG4gICAgICAgIGRpZFdhcm5BYm91dFN0cmluZ1JlZnNbY29tcG9uZW50TmFtZV0gPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyoqXG4gKiBGYWN0b3J5IG1ldGhvZCB0byBjcmVhdGUgYSBuZXcgUmVhY3QgZWxlbWVudC4gVGhpcyBubyBsb25nZXIgYWRoZXJlcyB0b1xuICogdGhlIGNsYXNzIHBhdHRlcm4sIHNvIGRvIG5vdCB1c2UgbmV3IHRvIGNhbGwgaXQuIEFsc28sIGluc3RhbmNlb2YgY2hlY2tcbiAqIHdpbGwgbm90IHdvcmsuIEluc3RlYWQgdGVzdCAkJHR5cGVvZiBmaWVsZCBhZ2FpbnN0IFN5bWJvbC5mb3IoJ3JlYWN0LmVsZW1lbnQnKSB0byBjaGVja1xuICogaWYgc29tZXRoaW5nIGlzIGEgUmVhY3QgRWxlbWVudC5cbiAqXG4gKiBAcGFyYW0geyp9IHR5cGVcbiAqIEBwYXJhbSB7Kn0gcHJvcHNcbiAqIEBwYXJhbSB7Kn0ga2V5XG4gKiBAcGFyYW0ge3N0cmluZ3xvYmplY3R9IHJlZlxuICogQHBhcmFtIHsqfSBvd25lclxuICogQHBhcmFtIHsqfSBzZWxmIEEgKnRlbXBvcmFyeSogaGVscGVyIHRvIGRldGVjdCBwbGFjZXMgd2hlcmUgYHRoaXNgIGlzXG4gKiBkaWZmZXJlbnQgZnJvbSB0aGUgYG93bmVyYCB3aGVuIFJlYWN0LmNyZWF0ZUVsZW1lbnQgaXMgY2FsbGVkLCBzbyB0aGF0IHdlXG4gKiBjYW4gd2Fybi4gV2Ugd2FudCB0byBnZXQgcmlkIG9mIG93bmVyIGFuZCByZXBsYWNlIHN0cmluZyBgcmVmYHMgd2l0aCBhcnJvd1xuICogZnVuY3Rpb25zLCBhbmQgYXMgbG9uZyBhcyBgdGhpc2AgYW5kIG93bmVyIGFyZSB0aGUgc2FtZSwgdGhlcmUgd2lsbCBiZSBub1xuICogY2hhbmdlIGluIGJlaGF2aW9yLlxuICogQHBhcmFtIHsqfSBzb3VyY2UgQW4gYW5ub3RhdGlvbiBvYmplY3QgKGFkZGVkIGJ5IGEgdHJhbnNwaWxlciBvciBvdGhlcndpc2UpXG4gKiBpbmRpY2F0aW5nIGZpbGVuYW1lLCBsaW5lIG51bWJlciwgYW5kL29yIG90aGVyIGluZm9ybWF0aW9uLlxuICogQGludGVybmFsXG4gKi9cblxuXG52YXIgUmVhY3RFbGVtZW50ID0gZnVuY3Rpb24gKHR5cGUsIGtleSwgcmVmLCBzZWxmLCBzb3VyY2UsIG93bmVyLCBwcm9wcykge1xuICB2YXIgZWxlbWVudCA9IHtcbiAgICAvLyBUaGlzIHRhZyBhbGxvd3MgdXMgdG8gdW5pcXVlbHkgaWRlbnRpZnkgdGhpcyBhcyBhIFJlYWN0IEVsZW1lbnRcbiAgICAkJHR5cGVvZjogUkVBQ1RfRUxFTUVOVF9UWVBFLFxuICAgIC8vIEJ1aWx0LWluIHByb3BlcnRpZXMgdGhhdCBiZWxvbmcgb24gdGhlIGVsZW1lbnRcbiAgICB0eXBlOiB0eXBlLFxuICAgIGtleToga2V5LFxuICAgIHJlZjogcmVmLFxuICAgIHByb3BzOiBwcm9wcyxcbiAgICAvLyBSZWNvcmQgdGhlIGNvbXBvbmVudCByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhpcyBlbGVtZW50LlxuICAgIF9vd25lcjogb3duZXJcbiAgfTtcblxuICB7XG4gICAgLy8gVGhlIHZhbGlkYXRpb24gZmxhZyBpcyBjdXJyZW50bHkgbXV0YXRpdmUuIFdlIHB1dCBpdCBvblxuICAgIC8vIGFuIGV4dGVybmFsIGJhY2tpbmcgc3RvcmUgc28gdGhhdCB3ZSBjYW4gZnJlZXplIHRoZSB3aG9sZSBvYmplY3QuXG4gICAgLy8gVGhpcyBjYW4gYmUgcmVwbGFjZWQgd2l0aCBhIFdlYWtNYXAgb25jZSB0aGV5IGFyZSBpbXBsZW1lbnRlZCBpblxuICAgIC8vIGNvbW1vbmx5IHVzZWQgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRzLlxuICAgIGVsZW1lbnQuX3N0b3JlID0ge307IC8vIFRvIG1ha2UgY29tcGFyaW5nIFJlYWN0RWxlbWVudHMgZWFzaWVyIGZvciB0ZXN0aW5nIHB1cnBvc2VzLCB3ZSBtYWtlXG4gICAgLy8gdGhlIHZhbGlkYXRpb24gZmxhZyBub24tZW51bWVyYWJsZSAod2hlcmUgcG9zc2libGUsIHdoaWNoIHNob3VsZFxuICAgIC8vIGluY2x1ZGUgZXZlcnkgZW52aXJvbm1lbnQgd2UgcnVuIHRlc3RzIGluKSwgc28gdGhlIHRlc3QgZnJhbWV3b3JrXG4gICAgLy8gaWdub3JlcyBpdC5cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlbGVtZW50Ll9zdG9yZSwgJ3ZhbGlkYXRlZCcsIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgdmFsdWU6IGZhbHNlXG4gICAgfSk7IC8vIHNlbGYgYW5kIHNvdXJjZSBhcmUgREVWIG9ubHkgcHJvcGVydGllcy5cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlbGVtZW50LCAnX3NlbGYnLCB7XG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICB2YWx1ZTogc2VsZlxuICAgIH0pOyAvLyBUd28gZWxlbWVudHMgY3JlYXRlZCBpbiB0d28gZGlmZmVyZW50IHBsYWNlcyBzaG91bGQgYmUgY29uc2lkZXJlZFxuICAgIC8vIGVxdWFsIGZvciB0ZXN0aW5nIHB1cnBvc2VzIGFuZCB0aGVyZWZvcmUgd2UgaGlkZSBpdCBmcm9tIGVudW1lcmF0aW9uLlxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnQsICdfc291cmNlJywge1xuICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgdmFsdWU6IHNvdXJjZVxuICAgIH0pO1xuXG4gICAgaWYgKE9iamVjdC5mcmVlemUpIHtcbiAgICAgIE9iamVjdC5mcmVlemUoZWxlbWVudC5wcm9wcyk7XG4gICAgICBPYmplY3QuZnJlZXplKGVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBlbGVtZW50O1xufTtcbi8qKlxuICogQ3JlYXRlIGFuZCByZXR1cm4gYSBuZXcgUmVhY3RFbGVtZW50IG9mIHRoZSBnaXZlbiB0eXBlLlxuICogU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9yZWFjdC1hcGkuaHRtbCNjcmVhdGVlbGVtZW50XG4gKi9cblxuZnVuY3Rpb24gY3JlYXRlRWxlbWVudCh0eXBlLCBjb25maWcsIGNoaWxkcmVuKSB7XG4gIHZhciBwcm9wTmFtZTsgLy8gUmVzZXJ2ZWQgbmFtZXMgYXJlIGV4dHJhY3RlZFxuXG4gIHZhciBwcm9wcyA9IHt9O1xuICB2YXIga2V5ID0gbnVsbDtcbiAgdmFyIHJlZiA9IG51bGw7XG4gIHZhciBzZWxmID0gbnVsbDtcbiAgdmFyIHNvdXJjZSA9IG51bGw7XG5cbiAgaWYgKGNvbmZpZyAhPSBudWxsKSB7XG4gICAgaWYgKGhhc1ZhbGlkUmVmKGNvbmZpZykpIHtcbiAgICAgIHJlZiA9IGNvbmZpZy5yZWY7XG5cbiAgICAgIHtcbiAgICAgICAgd2FybklmU3RyaW5nUmVmQ2Fubm90QmVBdXRvQ29udmVydGVkKGNvbmZpZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGhhc1ZhbGlkS2V5KGNvbmZpZykpIHtcbiAgICAgIGtleSA9ICcnICsgY29uZmlnLmtleTtcbiAgICB9XG5cbiAgICBzZWxmID0gY29uZmlnLl9fc2VsZiA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IGNvbmZpZy5fX3NlbGY7XG4gICAgc291cmNlID0gY29uZmlnLl9fc291cmNlID09PSB1bmRlZmluZWQgPyBudWxsIDogY29uZmlnLl9fc291cmNlOyAvLyBSZW1haW5pbmcgcHJvcGVydGllcyBhcmUgYWRkZWQgdG8gYSBuZXcgcHJvcHMgb2JqZWN0XG5cbiAgICBmb3IgKHByb3BOYW1lIGluIGNvbmZpZykge1xuICAgICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCBwcm9wTmFtZSkgJiYgIVJFU0VSVkVEX1BST1BTLmhhc093blByb3BlcnR5KHByb3BOYW1lKSkge1xuICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBjb25maWdbcHJvcE5hbWVdO1xuICAgICAgfVxuICAgIH1cbiAgfSAvLyBDaGlsZHJlbiBjYW4gYmUgbW9yZSB0aGFuIG9uZSBhcmd1bWVudCwgYW5kIHRob3NlIGFyZSB0cmFuc2ZlcnJlZCBvbnRvXG4gIC8vIHRoZSBuZXdseSBhbGxvY2F0ZWQgcHJvcHMgb2JqZWN0LlxuXG5cbiAgdmFyIGNoaWxkcmVuTGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aCAtIDI7XG5cbiAgaWYgKGNoaWxkcmVuTGVuZ3RoID09PSAxKSB7XG4gICAgcHJvcHMuY2hpbGRyZW4gPSBjaGlsZHJlbjtcbiAgfSBlbHNlIGlmIChjaGlsZHJlbkxlbmd0aCA+IDEpIHtcbiAgICB2YXIgY2hpbGRBcnJheSA9IEFycmF5KGNoaWxkcmVuTGVuZ3RoKTtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW5MZW5ndGg7IGkrKykge1xuICAgICAgY2hpbGRBcnJheVtpXSA9IGFyZ3VtZW50c1tpICsgMl07XG4gICAgfVxuXG4gICAge1xuICAgICAgaWYgKE9iamVjdC5mcmVlemUpIHtcbiAgICAgICAgT2JqZWN0LmZyZWV6ZShjaGlsZEFycmF5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkQXJyYXk7XG4gIH0gLy8gUmVzb2x2ZSBkZWZhdWx0IHByb3BzXG5cblxuICBpZiAodHlwZSAmJiB0eXBlLmRlZmF1bHRQcm9wcykge1xuICAgIHZhciBkZWZhdWx0UHJvcHMgPSB0eXBlLmRlZmF1bHRQcm9wcztcblxuICAgIGZvciAocHJvcE5hbWUgaW4gZGVmYXVsdFByb3BzKSB7XG4gICAgICBpZiAocHJvcHNbcHJvcE5hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gZGVmYXVsdFByb3BzW3Byb3BOYW1lXTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB7XG4gICAgaWYgKGtleSB8fCByZWYpIHtcbiAgICAgIHZhciBkaXNwbGF5TmFtZSA9IHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nID8gdHlwZS5kaXNwbGF5TmFtZSB8fCB0eXBlLm5hbWUgfHwgJ1Vua25vd24nIDogdHlwZTtcblxuICAgICAgaWYgKGtleSkge1xuICAgICAgICBkZWZpbmVLZXlQcm9wV2FybmluZ0dldHRlcihwcm9wcywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVmKSB7XG4gICAgICAgIGRlZmluZVJlZlByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFJlYWN0RWxlbWVudCh0eXBlLCBrZXksIHJlZiwgc2VsZiwgc291cmNlLCBSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LCBwcm9wcyk7XG59XG5mdW5jdGlvbiBjbG9uZUFuZFJlcGxhY2VLZXkob2xkRWxlbWVudCwgbmV3S2V5KSB7XG4gIHZhciBuZXdFbGVtZW50ID0gUmVhY3RFbGVtZW50KG9sZEVsZW1lbnQudHlwZSwgbmV3S2V5LCBvbGRFbGVtZW50LnJlZiwgb2xkRWxlbWVudC5fc2VsZiwgb2xkRWxlbWVudC5fc291cmNlLCBvbGRFbGVtZW50Ll9vd25lciwgb2xkRWxlbWVudC5wcm9wcyk7XG4gIHJldHVybiBuZXdFbGVtZW50O1xufVxuLyoqXG4gKiBDbG9uZSBhbmQgcmV0dXJuIGEgbmV3IFJlYWN0RWxlbWVudCB1c2luZyBlbGVtZW50IGFzIHRoZSBzdGFydGluZyBwb2ludC5cbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjY2xvbmVlbGVtZW50XG4gKi9cblxuZnVuY3Rpb24gY2xvbmVFbGVtZW50KGVsZW1lbnQsIGNvbmZpZywgY2hpbGRyZW4pIHtcbiAgaWYgKCEhKGVsZW1lbnQgPT09IG51bGwgfHwgZWxlbWVudCA9PT0gdW5kZWZpbmVkKSkge1xuICAgIHtcbiAgICAgIHRocm93IEVycm9yKCBcIlJlYWN0LmNsb25lRWxlbWVudCguLi4pOiBUaGUgYXJndW1lbnQgbXVzdCBiZSBhIFJlYWN0IGVsZW1lbnQsIGJ1dCB5b3UgcGFzc2VkIFwiICsgZWxlbWVudCArIFwiLlwiICk7XG4gICAgfVxuICB9XG5cbiAgdmFyIHByb3BOYW1lOyAvLyBPcmlnaW5hbCBwcm9wcyBhcmUgY29waWVkXG5cbiAgdmFyIHByb3BzID0gX2Fzc2lnbih7fSwgZWxlbWVudC5wcm9wcyk7IC8vIFJlc2VydmVkIG5hbWVzIGFyZSBleHRyYWN0ZWRcblxuXG4gIHZhciBrZXkgPSBlbGVtZW50LmtleTtcbiAgdmFyIHJlZiA9IGVsZW1lbnQucmVmOyAvLyBTZWxmIGlzIHByZXNlcnZlZCBzaW5jZSB0aGUgb3duZXIgaXMgcHJlc2VydmVkLlxuXG4gIHZhciBzZWxmID0gZWxlbWVudC5fc2VsZjsgLy8gU291cmNlIGlzIHByZXNlcnZlZCBzaW5jZSBjbG9uZUVsZW1lbnQgaXMgdW5saWtlbHkgdG8gYmUgdGFyZ2V0ZWQgYnkgYVxuICAvLyB0cmFuc3BpbGVyLCBhbmQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBwcm9iYWJseSBhIGJldHRlciBpbmRpY2F0b3Igb2YgdGhlXG4gIC8vIHRydWUgb3duZXIuXG5cbiAgdmFyIHNvdXJjZSA9IGVsZW1lbnQuX3NvdXJjZTsgLy8gT3duZXIgd2lsbCBiZSBwcmVzZXJ2ZWQsIHVubGVzcyByZWYgaXMgb3ZlcnJpZGRlblxuXG4gIHZhciBvd25lciA9IGVsZW1lbnQuX293bmVyO1xuXG4gIGlmIChjb25maWcgIT0gbnVsbCkge1xuICAgIGlmIChoYXNWYWxpZFJlZihjb25maWcpKSB7XG4gICAgICAvLyBTaWxlbnRseSBzdGVhbCB0aGUgcmVmIGZyb20gdGhlIHBhcmVudC5cbiAgICAgIHJlZiA9IGNvbmZpZy5yZWY7XG4gICAgICBvd25lciA9IFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQ7XG4gICAgfVxuXG4gICAgaWYgKGhhc1ZhbGlkS2V5KGNvbmZpZykpIHtcbiAgICAgIGtleSA9ICcnICsgY29uZmlnLmtleTtcbiAgICB9IC8vIFJlbWFpbmluZyBwcm9wZXJ0aWVzIG92ZXJyaWRlIGV4aXN0aW5nIHByb3BzXG5cblxuICAgIHZhciBkZWZhdWx0UHJvcHM7XG5cbiAgICBpZiAoZWxlbWVudC50eXBlICYmIGVsZW1lbnQudHlwZS5kZWZhdWx0UHJvcHMpIHtcbiAgICAgIGRlZmF1bHRQcm9wcyA9IGVsZW1lbnQudHlwZS5kZWZhdWx0UHJvcHM7XG4gICAgfVxuXG4gICAgZm9yIChwcm9wTmFtZSBpbiBjb25maWcpIHtcbiAgICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgcHJvcE5hbWUpICYmICFSRVNFUlZFRF9QUk9QUy5oYXNPd25Qcm9wZXJ0eShwcm9wTmFtZSkpIHtcbiAgICAgICAgaWYgKGNvbmZpZ1twcm9wTmFtZV0gPT09IHVuZGVmaW5lZCAmJiBkZWZhdWx0UHJvcHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIC8vIFJlc29sdmUgZGVmYXVsdCBwcm9wc1xuICAgICAgICAgIHByb3BzW3Byb3BOYW1lXSA9IGRlZmF1bHRQcm9wc1twcm9wTmFtZV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gY29uZmlnW3Byb3BOYW1lXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSAvLyBDaGlsZHJlbiBjYW4gYmUgbW9yZSB0aGFuIG9uZSBhcmd1bWVudCwgYW5kIHRob3NlIGFyZSB0cmFuc2ZlcnJlZCBvbnRvXG4gIC8vIHRoZSBuZXdseSBhbGxvY2F0ZWQgcHJvcHMgb2JqZWN0LlxuXG5cbiAgdmFyIGNoaWxkcmVuTGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aCAtIDI7XG5cbiAgaWYgKGNoaWxkcmVuTGVuZ3RoID09PSAxKSB7XG4gICAgcHJvcHMuY2hpbGRyZW4gPSBjaGlsZHJlbjtcbiAgfSBlbHNlIGlmIChjaGlsZHJlbkxlbmd0aCA+IDEpIHtcbiAgICB2YXIgY2hpbGRBcnJheSA9IEFycmF5KGNoaWxkcmVuTGVuZ3RoKTtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW5MZW5ndGg7IGkrKykge1xuICAgICAgY2hpbGRBcnJheVtpXSA9IGFyZ3VtZW50c1tpICsgMl07XG4gICAgfVxuXG4gICAgcHJvcHMuY2hpbGRyZW4gPSBjaGlsZEFycmF5O1xuICB9XG5cbiAgcmV0dXJuIFJlYWN0RWxlbWVudChlbGVtZW50LnR5cGUsIGtleSwgcmVmLCBzZWxmLCBzb3VyY2UsIG93bmVyLCBwcm9wcyk7XG59XG4vKipcbiAqIFZlcmlmaWVzIHRoZSBvYmplY3QgaXMgYSBSZWFjdEVsZW1lbnQuXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI2lzdmFsaWRlbGVtZW50XG4gKiBAcGFyYW0gez9vYmplY3R9IG9iamVjdFxuICogQHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiBgb2JqZWN0YCBpcyBhIFJlYWN0RWxlbWVudC5cbiAqIEBmaW5hbFxuICovXG5cbmZ1bmN0aW9uIGlzVmFsaWRFbGVtZW50KG9iamVjdCkge1xuICByZXR1cm4gdHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgJiYgb2JqZWN0ICE9PSBudWxsICYmIG9iamVjdC4kJHR5cGVvZiA9PT0gUkVBQ1RfRUxFTUVOVF9UWVBFO1xufVxuXG52YXIgU0VQQVJBVE9SID0gJy4nO1xudmFyIFNVQlNFUEFSQVRPUiA9ICc6Jztcbi8qKlxuICogRXNjYXBlIGFuZCB3cmFwIGtleSBzbyBpdCBpcyBzYWZlIHRvIHVzZSBhcyBhIHJlYWN0aWRcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30ga2V5IHRvIGJlIGVzY2FwZWQuXG4gKiBAcmV0dXJuIHtzdHJpbmd9IHRoZSBlc2NhcGVkIGtleS5cbiAqL1xuXG5mdW5jdGlvbiBlc2NhcGUoa2V5KSB7XG4gIHZhciBlc2NhcGVSZWdleCA9IC9bPTpdL2c7XG4gIHZhciBlc2NhcGVyTG9va3VwID0ge1xuICAgICc9JzogJz0wJyxcbiAgICAnOic6ICc9MidcbiAgfTtcbiAgdmFyIGVzY2FwZWRTdHJpbmcgPSBrZXkucmVwbGFjZShlc2NhcGVSZWdleCwgZnVuY3Rpb24gKG1hdGNoKSB7XG4gICAgcmV0dXJuIGVzY2FwZXJMb29rdXBbbWF0Y2hdO1xuICB9KTtcbiAgcmV0dXJuICckJyArIGVzY2FwZWRTdHJpbmc7XG59XG4vKipcbiAqIFRPRE86IFRlc3QgdGhhdCBhIHNpbmdsZSBjaGlsZCBhbmQgYW4gYXJyYXkgd2l0aCBvbmUgaXRlbSBoYXZlIHRoZSBzYW1lIGtleVxuICogcGF0dGVybi5cbiAqL1xuXG5cbnZhciBkaWRXYXJuQWJvdXRNYXBzID0gZmFsc2U7XG52YXIgdXNlclByb3ZpZGVkS2V5RXNjYXBlUmVnZXggPSAvXFwvKy9nO1xuXG5mdW5jdGlvbiBlc2NhcGVVc2VyUHJvdmlkZWRLZXkodGV4dCkge1xuICByZXR1cm4gdGV4dC5yZXBsYWNlKHVzZXJQcm92aWRlZEtleUVzY2FwZVJlZ2V4LCAnJCYvJyk7XG59XG4vKipcbiAqIEdlbmVyYXRlIGEga2V5IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgYSBlbGVtZW50IHdpdGhpbiBhIHNldC5cbiAqXG4gKiBAcGFyYW0geyp9IGVsZW1lbnQgQSBlbGVtZW50IHRoYXQgY291bGQgY29udGFpbiBhIG1hbnVhbCBrZXkuXG4gKiBAcGFyYW0ge251bWJlcn0gaW5kZXggSW5kZXggdGhhdCBpcyB1c2VkIGlmIGEgbWFudWFsIGtleSBpcyBub3QgcHJvdmlkZWQuXG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cblxuXG5mdW5jdGlvbiBnZXRFbGVtZW50S2V5KGVsZW1lbnQsIGluZGV4KSB7XG4gIC8vIERvIHNvbWUgdHlwZWNoZWNraW5nIGhlcmUgc2luY2Ugd2UgY2FsbCB0aGlzIGJsaW5kbHkuIFdlIHdhbnQgdG8gZW5zdXJlXG4gIC8vIHRoYXQgd2UgZG9uJ3QgYmxvY2sgcG90ZW50aWFsIGZ1dHVyZSBFUyBBUElzLlxuICBpZiAodHlwZW9mIGVsZW1lbnQgPT09ICdvYmplY3QnICYmIGVsZW1lbnQgIT09IG51bGwgJiYgZWxlbWVudC5rZXkgIT0gbnVsbCkge1xuICAgIC8vIEV4cGxpY2l0IGtleVxuICAgIHJldHVybiBlc2NhcGUoJycgKyBlbGVtZW50LmtleSk7XG4gIH0gLy8gSW1wbGljaXQga2V5IGRldGVybWluZWQgYnkgdGhlIGluZGV4IGluIHRoZSBzZXRcblxuXG4gIHJldHVybiBpbmRleC50b1N0cmluZygzNik7XG59XG5cbmZ1bmN0aW9uIG1hcEludG9BcnJheShjaGlsZHJlbiwgYXJyYXksIGVzY2FwZWRQcmVmaXgsIG5hbWVTb0ZhciwgY2FsbGJhY2spIHtcbiAgdmFyIHR5cGUgPSB0eXBlb2YgY2hpbGRyZW47XG5cbiAgaWYgKHR5cGUgPT09ICd1bmRlZmluZWQnIHx8IHR5cGUgPT09ICdib29sZWFuJykge1xuICAgIC8vIEFsbCBvZiB0aGUgYWJvdmUgYXJlIHBlcmNlaXZlZCBhcyBudWxsLlxuICAgIGNoaWxkcmVuID0gbnVsbDtcbiAgfVxuXG4gIHZhciBpbnZva2VDYWxsYmFjayA9IGZhbHNlO1xuXG4gIGlmIChjaGlsZHJlbiA9PT0gbnVsbCkge1xuICAgIGludm9rZUNhbGxiYWNrID0gdHJ1ZTtcbiAgfSBlbHNlIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICBjYXNlICdudW1iZXInOlxuICAgICAgICBpbnZva2VDYWxsYmFjayA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdvYmplY3QnOlxuICAgICAgICBzd2l0Y2ggKGNoaWxkcmVuLiQkdHlwZW9mKSB7XG4gICAgICAgICAgY2FzZSBSRUFDVF9FTEVNRU5UX1RZUEU6XG4gICAgICAgICAgY2FzZSBSRUFDVF9QT1JUQUxfVFlQRTpcbiAgICAgICAgICAgIGludm9rZUNhbGxiYWNrID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgaWYgKGludm9rZUNhbGxiYWNrKSB7XG4gICAgdmFyIF9jaGlsZCA9IGNoaWxkcmVuO1xuICAgIHZhciBtYXBwZWRDaGlsZCA9IGNhbGxiYWNrKF9jaGlsZCk7IC8vIElmIGl0J3MgdGhlIG9ubHkgY2hpbGQsIHRyZWF0IHRoZSBuYW1lIGFzIGlmIGl0IHdhcyB3cmFwcGVkIGluIGFuIGFycmF5XG4gICAgLy8gc28gdGhhdCBpdCdzIGNvbnNpc3RlbnQgaWYgdGhlIG51bWJlciBvZiBjaGlsZHJlbiBncm93czpcblxuICAgIHZhciBjaGlsZEtleSA9IG5hbWVTb0ZhciA9PT0gJycgPyBTRVBBUkFUT1IgKyBnZXRFbGVtZW50S2V5KF9jaGlsZCwgMCkgOiBuYW1lU29GYXI7XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShtYXBwZWRDaGlsZCkpIHtcbiAgICAgIHZhciBlc2NhcGVkQ2hpbGRLZXkgPSAnJztcblxuICAgICAgaWYgKGNoaWxkS2V5ICE9IG51bGwpIHtcbiAgICAgICAgZXNjYXBlZENoaWxkS2V5ID0gZXNjYXBlVXNlclByb3ZpZGVkS2V5KGNoaWxkS2V5KSArICcvJztcbiAgICAgIH1cblxuICAgICAgbWFwSW50b0FycmF5KG1hcHBlZENoaWxkLCBhcnJheSwgZXNjYXBlZENoaWxkS2V5LCAnJywgZnVuY3Rpb24gKGMpIHtcbiAgICAgICAgcmV0dXJuIGM7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKG1hcHBlZENoaWxkICE9IG51bGwpIHtcbiAgICAgIGlmIChpc1ZhbGlkRWxlbWVudChtYXBwZWRDaGlsZCkpIHtcbiAgICAgICAgbWFwcGVkQ2hpbGQgPSBjbG9uZUFuZFJlcGxhY2VLZXkobWFwcGVkQ2hpbGQsIC8vIEtlZXAgYm90aCB0aGUgKG1hcHBlZCkgYW5kIG9sZCBrZXlzIGlmIHRoZXkgZGlmZmVyLCBqdXN0IGFzXG4gICAgICAgIC8vIHRyYXZlcnNlQWxsQ2hpbGRyZW4gdXNlZCB0byBkbyBmb3Igb2JqZWN0cyBhcyBjaGlsZHJlblxuICAgICAgICBlc2NhcGVkUHJlZml4ICsgKCAvLyAkRmxvd0ZpeE1lIEZsb3cgaW5jb3JyZWN0bHkgdGhpbmtzIFJlYWN0LlBvcnRhbCBkb2Vzbid0IGhhdmUgYSBrZXlcbiAgICAgICAgbWFwcGVkQ2hpbGQua2V5ICYmICghX2NoaWxkIHx8IF9jaGlsZC5rZXkgIT09IG1hcHBlZENoaWxkLmtleSkgPyAvLyAkRmxvd0ZpeE1lIEZsb3cgaW5jb3JyZWN0bHkgdGhpbmtzIGV4aXN0aW5nIGVsZW1lbnQncyBrZXkgY2FuIGJlIGEgbnVtYmVyXG4gICAgICAgIGVzY2FwZVVzZXJQcm92aWRlZEtleSgnJyArIG1hcHBlZENoaWxkLmtleSkgKyAnLycgOiAnJykgKyBjaGlsZEtleSk7XG4gICAgICB9XG5cbiAgICAgIGFycmF5LnB1c2gobWFwcGVkQ2hpbGQpO1xuICAgIH1cblxuICAgIHJldHVybiAxO1xuICB9XG5cbiAgdmFyIGNoaWxkO1xuICB2YXIgbmV4dE5hbWU7XG4gIHZhciBzdWJ0cmVlQ291bnQgPSAwOyAvLyBDb3VudCBvZiBjaGlsZHJlbiBmb3VuZCBpbiB0aGUgY3VycmVudCBzdWJ0cmVlLlxuXG4gIHZhciBuZXh0TmFtZVByZWZpeCA9IG5hbWVTb0ZhciA9PT0gJycgPyBTRVBBUkFUT1IgOiBuYW1lU29GYXIgKyBTVUJTRVBBUkFUT1I7XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgY2hpbGQgPSBjaGlsZHJlbltpXTtcbiAgICAgIG5leHROYW1lID0gbmV4dE5hbWVQcmVmaXggKyBnZXRFbGVtZW50S2V5KGNoaWxkLCBpKTtcbiAgICAgIHN1YnRyZWVDb3VudCArPSBtYXBJbnRvQXJyYXkoY2hpbGQsIGFycmF5LCBlc2NhcGVkUHJlZml4LCBuZXh0TmFtZSwgY2FsbGJhY2spO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICB2YXIgaXRlcmF0b3JGbiA9IGdldEl0ZXJhdG9yRm4oY2hpbGRyZW4pO1xuXG4gICAgaWYgKHR5cGVvZiBpdGVyYXRvckZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB2YXIgaXRlcmFibGVDaGlsZHJlbiA9IGNoaWxkcmVuO1xuXG4gICAgICB7XG4gICAgICAgIC8vIFdhcm4gYWJvdXQgdXNpbmcgTWFwcyBhcyBjaGlsZHJlblxuICAgICAgICBpZiAoaXRlcmF0b3JGbiA9PT0gaXRlcmFibGVDaGlsZHJlbi5lbnRyaWVzKSB7XG4gICAgICAgICAgaWYgKCFkaWRXYXJuQWJvdXRNYXBzKSB7XG4gICAgICAgICAgICB3YXJuKCdVc2luZyBNYXBzIGFzIGNoaWxkcmVuIGlzIG5vdCBzdXBwb3J0ZWQuICcgKyAnVXNlIGFuIGFycmF5IG9mIGtleWVkIFJlYWN0RWxlbWVudHMgaW5zdGVhZC4nKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBkaWRXYXJuQWJvdXRNYXBzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB2YXIgaXRlcmF0b3IgPSBpdGVyYXRvckZuLmNhbGwoaXRlcmFibGVDaGlsZHJlbik7XG4gICAgICB2YXIgc3RlcDtcbiAgICAgIHZhciBpaSA9IDA7XG5cbiAgICAgIHdoaWxlICghKHN0ZXAgPSBpdGVyYXRvci5uZXh0KCkpLmRvbmUpIHtcbiAgICAgICAgY2hpbGQgPSBzdGVwLnZhbHVlO1xuICAgICAgICBuZXh0TmFtZSA9IG5leHROYW1lUHJlZml4ICsgZ2V0RWxlbWVudEtleShjaGlsZCwgaWkrKyk7XG4gICAgICAgIHN1YnRyZWVDb3VudCArPSBtYXBJbnRvQXJyYXkoY2hpbGQsIGFycmF5LCBlc2NhcGVkUHJlZml4LCBuZXh0TmFtZSwgY2FsbGJhY2spO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHZhciBjaGlsZHJlblN0cmluZyA9ICcnICsgY2hpbGRyZW47XG5cbiAgICAgIHtcbiAgICAgICAge1xuICAgICAgICAgIHRocm93IEVycm9yKCBcIk9iamVjdHMgYXJlIG5vdCB2YWxpZCBhcyBhIFJlYWN0IGNoaWxkIChmb3VuZDogXCIgKyAoY2hpbGRyZW5TdHJpbmcgPT09ICdbb2JqZWN0IE9iamVjdF0nID8gJ29iamVjdCB3aXRoIGtleXMgeycgKyBPYmplY3Qua2V5cyhjaGlsZHJlbikuam9pbignLCAnKSArICd9JyA6IGNoaWxkcmVuU3RyaW5nKSArIFwiKS4gSWYgeW91IG1lYW50IHRvIHJlbmRlciBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4sIHVzZSBhbiBhcnJheSBpbnN0ZWFkLlwiICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3VidHJlZUNvdW50O1xufVxuXG4vKipcbiAqIE1hcHMgY2hpbGRyZW4gdGhhdCBhcmUgdHlwaWNhbGx5IHNwZWNpZmllZCBhcyBgcHJvcHMuY2hpbGRyZW5gLlxuICpcbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjcmVhY3RjaGlsZHJlbm1hcFxuICpcbiAqIFRoZSBwcm92aWRlZCBtYXBGdW5jdGlvbihjaGlsZCwgaW5kZXgpIHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoXG4gKiBsZWFmIGNoaWxkLlxuICpcbiAqIEBwYXJhbSB7Pyp9IGNoaWxkcmVuIENoaWxkcmVuIHRyZWUgY29udGFpbmVyLlxuICogQHBhcmFtIHtmdW5jdGlvbigqLCBpbnQpfSBmdW5jIFRoZSBtYXAgZnVuY3Rpb24uXG4gKiBAcGFyYW0geyp9IGNvbnRleHQgQ29udGV4dCBmb3IgbWFwRnVuY3Rpb24uXG4gKiBAcmV0dXJuIHtvYmplY3R9IE9iamVjdCBjb250YWluaW5nIHRoZSBvcmRlcmVkIG1hcCBvZiByZXN1bHRzLlxuICovXG5mdW5jdGlvbiBtYXBDaGlsZHJlbihjaGlsZHJlbiwgZnVuYywgY29udGV4dCkge1xuICBpZiAoY2hpbGRyZW4gPT0gbnVsbCkge1xuICAgIHJldHVybiBjaGlsZHJlbjtcbiAgfVxuXG4gIHZhciByZXN1bHQgPSBbXTtcbiAgdmFyIGNvdW50ID0gMDtcbiAgbWFwSW50b0FycmF5KGNoaWxkcmVuLCByZXN1bHQsICcnLCAnJywgZnVuY3Rpb24gKGNoaWxkKSB7XG4gICAgcmV0dXJuIGZ1bmMuY2FsbChjb250ZXh0LCBjaGlsZCwgY291bnQrKyk7XG4gIH0pO1xuICByZXR1cm4gcmVzdWx0O1xufVxuLyoqXG4gKiBDb3VudCB0aGUgbnVtYmVyIG9mIGNoaWxkcmVuIHRoYXQgYXJlIHR5cGljYWxseSBzcGVjaWZpZWQgYXNcbiAqIGBwcm9wcy5jaGlsZHJlbmAuXG4gKlxuICogU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9yZWFjdC1hcGkuaHRtbCNyZWFjdGNoaWxkcmVuY291bnRcbiAqXG4gKiBAcGFyYW0gez8qfSBjaGlsZHJlbiBDaGlsZHJlbiB0cmVlIGNvbnRhaW5lci5cbiAqIEByZXR1cm4ge251bWJlcn0gVGhlIG51bWJlciBvZiBjaGlsZHJlbi5cbiAqL1xuXG5cbmZ1bmN0aW9uIGNvdW50Q2hpbGRyZW4oY2hpbGRyZW4pIHtcbiAgdmFyIG4gPSAwO1xuICBtYXBDaGlsZHJlbihjaGlsZHJlbiwgZnVuY3Rpb24gKCkge1xuICAgIG4rKzsgLy8gRG9uJ3QgcmV0dXJuIGFueXRoaW5nXG4gIH0pO1xuICByZXR1cm4gbjtcbn1cblxuLyoqXG4gKiBJdGVyYXRlcyB0aHJvdWdoIGNoaWxkcmVuIHRoYXQgYXJlIHR5cGljYWxseSBzcGVjaWZpZWQgYXMgYHByb3BzLmNoaWxkcmVuYC5cbiAqXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI3JlYWN0Y2hpbGRyZW5mb3JlYWNoXG4gKlxuICogVGhlIHByb3ZpZGVkIGZvckVhY2hGdW5jKGNoaWxkLCBpbmRleCkgd2lsbCBiZSBjYWxsZWQgZm9yIGVhY2hcbiAqIGxlYWYgY2hpbGQuXG4gKlxuICogQHBhcmFtIHs/Kn0gY2hpbGRyZW4gQ2hpbGRyZW4gdHJlZSBjb250YWluZXIuXG4gKiBAcGFyYW0ge2Z1bmN0aW9uKCosIGludCl9IGZvckVhY2hGdW5jXG4gKiBAcGFyYW0geyp9IGZvckVhY2hDb250ZXh0IENvbnRleHQgZm9yIGZvckVhY2hDb250ZXh0LlxuICovXG5mdW5jdGlvbiBmb3JFYWNoQ2hpbGRyZW4oY2hpbGRyZW4sIGZvckVhY2hGdW5jLCBmb3JFYWNoQ29udGV4dCkge1xuICBtYXBDaGlsZHJlbihjaGlsZHJlbiwgZnVuY3Rpb24gKCkge1xuICAgIGZvckVhY2hGdW5jLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IC8vIERvbid0IHJldHVybiBhbnl0aGluZy5cbiAgfSwgZm9yRWFjaENvbnRleHQpO1xufVxuLyoqXG4gKiBGbGF0dGVuIGEgY2hpbGRyZW4gb2JqZWN0ICh0eXBpY2FsbHkgc3BlY2lmaWVkIGFzIGBwcm9wcy5jaGlsZHJlbmApIGFuZFxuICogcmV0dXJuIGFuIGFycmF5IHdpdGggYXBwcm9wcmlhdGVseSByZS1rZXllZCBjaGlsZHJlbi5cbiAqXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI3JlYWN0Y2hpbGRyZW50b2FycmF5XG4gKi9cblxuXG5mdW5jdGlvbiB0b0FycmF5KGNoaWxkcmVuKSB7XG4gIHJldHVybiBtYXBDaGlsZHJlbihjaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkKSB7XG4gICAgcmV0dXJuIGNoaWxkO1xuICB9KSB8fCBbXTtcbn1cbi8qKlxuICogUmV0dXJucyB0aGUgZmlyc3QgY2hpbGQgaW4gYSBjb2xsZWN0aW9uIG9mIGNoaWxkcmVuIGFuZCB2ZXJpZmllcyB0aGF0IHRoZXJlXG4gKiBpcyBvbmx5IG9uZSBjaGlsZCBpbiB0aGUgY29sbGVjdGlvbi5cbiAqXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI3JlYWN0Y2hpbGRyZW5vbmx5XG4gKlxuICogVGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb2YgdGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgYSBzaW5nbGUgY2hpbGQgZ2V0c1xuICogcGFzc2VkIHdpdGhvdXQgYSB3cmFwcGVyLCBidXQgdGhlIHB1cnBvc2Ugb2YgdGhpcyBoZWxwZXIgZnVuY3Rpb24gaXMgdG9cbiAqIGFic3RyYWN0IGF3YXkgdGhlIHBhcnRpY3VsYXIgc3RydWN0dXJlIG9mIGNoaWxkcmVuLlxuICpcbiAqIEBwYXJhbSB7P29iamVjdH0gY2hpbGRyZW4gQ2hpbGQgY29sbGVjdGlvbiBzdHJ1Y3R1cmUuXG4gKiBAcmV0dXJuIHtSZWFjdEVsZW1lbnR9IFRoZSBmaXJzdCBhbmQgb25seSBgUmVhY3RFbGVtZW50YCBjb250YWluZWQgaW4gdGhlXG4gKiBzdHJ1Y3R1cmUuXG4gKi9cblxuXG5mdW5jdGlvbiBvbmx5Q2hpbGQoY2hpbGRyZW4pIHtcbiAgaWYgKCFpc1ZhbGlkRWxlbWVudChjaGlsZHJlbikpIHtcbiAgICB7XG4gICAgICB0aHJvdyBFcnJvciggXCJSZWFjdC5DaGlsZHJlbi5vbmx5IGV4cGVjdGVkIHRvIHJlY2VpdmUgYSBzaW5nbGUgUmVhY3QgZWxlbWVudCBjaGlsZC5cIiApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjaGlsZHJlbjtcbn1cblxuZnVuY3Rpb24gY3JlYXRlQ29udGV4dChkZWZhdWx0VmFsdWUsIGNhbGN1bGF0ZUNoYW5nZWRCaXRzKSB7XG4gIGlmIChjYWxjdWxhdGVDaGFuZ2VkQml0cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY2FsY3VsYXRlQ2hhbmdlZEJpdHMgPSBudWxsO1xuICB9IGVsc2Uge1xuICAgIHtcbiAgICAgIGlmIChjYWxjdWxhdGVDaGFuZ2VkQml0cyAhPT0gbnVsbCAmJiB0eXBlb2YgY2FsY3VsYXRlQ2hhbmdlZEJpdHMgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgZXJyb3IoJ2NyZWF0ZUNvbnRleHQ6IEV4cGVjdGVkIHRoZSBvcHRpb25hbCBzZWNvbmQgYXJndW1lbnQgdG8gYmUgYSAnICsgJ2Z1bmN0aW9uLiBJbnN0ZWFkIHJlY2VpdmVkOiAlcycsIGNhbGN1bGF0ZUNoYW5nZWRCaXRzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB2YXIgY29udGV4dCA9IHtcbiAgICAkJHR5cGVvZjogUkVBQ1RfQ09OVEVYVF9UWVBFLFxuICAgIF9jYWxjdWxhdGVDaGFuZ2VkQml0czogY2FsY3VsYXRlQ2hhbmdlZEJpdHMsXG4gICAgLy8gQXMgYSB3b3JrYXJvdW5kIHRvIHN1cHBvcnQgbXVsdGlwbGUgY29uY3VycmVudCByZW5kZXJlcnMsIHdlIGNhdGVnb3JpemVcbiAgICAvLyBzb21lIHJlbmRlcmVycyBhcyBwcmltYXJ5IGFuZCBvdGhlcnMgYXMgc2Vjb25kYXJ5LiBXZSBvbmx5IGV4cGVjdFxuICAgIC8vIHRoZXJlIHRvIGJlIHR3byBjb25jdXJyZW50IHJlbmRlcmVycyBhdCBtb3N0OiBSZWFjdCBOYXRpdmUgKHByaW1hcnkpIGFuZFxuICAgIC8vIEZhYnJpYyAoc2Vjb25kYXJ5KTsgUmVhY3QgRE9NIChwcmltYXJ5KSBhbmQgUmVhY3QgQVJUIChzZWNvbmRhcnkpLlxuICAgIC8vIFNlY29uZGFyeSByZW5kZXJlcnMgc3RvcmUgdGhlaXIgY29udGV4dCB2YWx1ZXMgb24gc2VwYXJhdGUgZmllbGRzLlxuICAgIF9jdXJyZW50VmFsdWU6IGRlZmF1bHRWYWx1ZSxcbiAgICBfY3VycmVudFZhbHVlMjogZGVmYXVsdFZhbHVlLFxuICAgIC8vIFVzZWQgdG8gdHJhY2sgaG93IG1hbnkgY29uY3VycmVudCByZW5kZXJlcnMgdGhpcyBjb250ZXh0IGN1cnJlbnRseVxuICAgIC8vIHN1cHBvcnRzIHdpdGhpbiBpbiBhIHNpbmdsZSByZW5kZXJlci4gU3VjaCBhcyBwYXJhbGxlbCBzZXJ2ZXIgcmVuZGVyaW5nLlxuICAgIF90aHJlYWRDb3VudDogMCxcbiAgICAvLyBUaGVzZSBhcmUgY2lyY3VsYXJcbiAgICBQcm92aWRlcjogbnVsbCxcbiAgICBDb25zdW1lcjogbnVsbFxuICB9O1xuICBjb250ZXh0LlByb3ZpZGVyID0ge1xuICAgICQkdHlwZW9mOiBSRUFDVF9QUk9WSURFUl9UWVBFLFxuICAgIF9jb250ZXh0OiBjb250ZXh0XG4gIH07XG4gIHZhciBoYXNXYXJuZWRBYm91dFVzaW5nTmVzdGVkQ29udGV4dENvbnN1bWVycyA9IGZhbHNlO1xuICB2YXIgaGFzV2FybmVkQWJvdXRVc2luZ0NvbnN1bWVyUHJvdmlkZXIgPSBmYWxzZTtcbiAgdmFyIGhhc1dhcm5lZEFib3V0RGlzcGxheU5hbWVPbkNvbnN1bWVyID0gZmFsc2U7XG5cbiAge1xuICAgIC8vIEEgc2VwYXJhdGUgb2JqZWN0LCBidXQgcHJveGllcyBiYWNrIHRvIHRoZSBvcmlnaW5hbCBjb250ZXh0IG9iamVjdCBmb3JcbiAgICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQgaGFzIGEgZGlmZmVyZW50ICQkdHlwZW9mLCBzbyB3ZSBjYW4gcHJvcGVybHlcbiAgICAvLyB3YXJuIGZvciB0aGUgaW5jb3JyZWN0IHVzYWdlIG9mIENvbnRleHQgYXMgYSBDb25zdW1lci5cbiAgICB2YXIgQ29uc3VtZXIgPSB7XG4gICAgICAkJHR5cGVvZjogUkVBQ1RfQ09OVEVYVF9UWVBFLFxuICAgICAgX2NvbnRleHQ6IGNvbnRleHQsXG4gICAgICBfY2FsY3VsYXRlQ2hhbmdlZEJpdHM6IGNvbnRleHQuX2NhbGN1bGF0ZUNoYW5nZWRCaXRzXG4gICAgfTsgLy8gJEZsb3dGaXhNZTogRmxvdyBjb21wbGFpbnMgYWJvdXQgbm90IHNldHRpbmcgYSB2YWx1ZSwgd2hpY2ggaXMgaW50ZW50aW9uYWwgaGVyZVxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoQ29uc3VtZXIsIHtcbiAgICAgIFByb3ZpZGVyOiB7XG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICghaGFzV2FybmVkQWJvdXRVc2luZ0NvbnN1bWVyUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIGhhc1dhcm5lZEFib3V0VXNpbmdDb25zdW1lclByb3ZpZGVyID0gdHJ1ZTtcblxuICAgICAgICAgICAgZXJyb3IoJ1JlbmRlcmluZyA8Q29udGV4dC5Db25zdW1lci5Qcm92aWRlcj4gaXMgbm90IHN1cHBvcnRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluICcgKyAnYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gRGlkIHlvdSBtZWFuIHRvIHJlbmRlciA8Q29udGV4dC5Qcm92aWRlcj4gaW5zdGVhZD8nKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gY29udGV4dC5Qcm92aWRlcjtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoX1Byb3ZpZGVyKSB7XG4gICAgICAgICAgY29udGV4dC5Qcm92aWRlciA9IF9Qcm92aWRlcjtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF9jdXJyZW50VmFsdWU6IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIGNvbnRleHQuX2N1cnJlbnRWYWx1ZTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoX2N1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgIGNvbnRleHQuX2N1cnJlbnRWYWx1ZSA9IF9jdXJyZW50VmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBfY3VycmVudFZhbHVlMjoge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gY29udGV4dC5fY3VycmVudFZhbHVlMjtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoX2N1cnJlbnRWYWx1ZTIpIHtcbiAgICAgICAgICBjb250ZXh0Ll9jdXJyZW50VmFsdWUyID0gX2N1cnJlbnRWYWx1ZTI7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBfdGhyZWFkQ291bnQ6IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIGNvbnRleHQuX3RocmVhZENvdW50O1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChfdGhyZWFkQ291bnQpIHtcbiAgICAgICAgICBjb250ZXh0Ll90aHJlYWRDb3VudCA9IF90aHJlYWRDb3VudDtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIENvbnN1bWVyOiB7XG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlmICghaGFzV2FybmVkQWJvdXRVc2luZ05lc3RlZENvbnRleHRDb25zdW1lcnMpIHtcbiAgICAgICAgICAgIGhhc1dhcm5lZEFib3V0VXNpbmdOZXN0ZWRDb250ZXh0Q29uc3VtZXJzID0gdHJ1ZTtcblxuICAgICAgICAgICAgZXJyb3IoJ1JlbmRlcmluZyA8Q29udGV4dC5Db25zdW1lci5Db25zdW1lcj4gaXMgbm90IHN1cHBvcnRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluICcgKyAnYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gRGlkIHlvdSBtZWFuIHRvIHJlbmRlciA8Q29udGV4dC5Db25zdW1lcj4gaW5zdGVhZD8nKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gY29udGV4dC5Db25zdW1lcjtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRpc3BsYXlOYW1lOiB7XG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBjb250ZXh0LmRpc3BsYXlOYW1lO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChkaXNwbGF5TmFtZSkge1xuICAgICAgICAgIGlmICghaGFzV2FybmVkQWJvdXREaXNwbGF5TmFtZU9uQ29uc3VtZXIpIHtcbiAgICAgICAgICAgIHdhcm4oJ1NldHRpbmcgYGRpc3BsYXlOYW1lYCBvbiBDb250ZXh0LkNvbnN1bWVyIGhhcyBubyBlZmZlY3QuICcgKyBcIllvdSBzaG91bGQgc2V0IGl0IGRpcmVjdGx5IG9uIHRoZSBjb250ZXh0IHdpdGggQ29udGV4dC5kaXNwbGF5TmFtZSA9ICclcycuXCIsIGRpc3BsYXlOYW1lKTtcblxuICAgICAgICAgICAgaGFzV2FybmVkQWJvdXREaXNwbGF5TmFtZU9uQ29uc3VtZXIgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pOyAvLyAkRmxvd0ZpeE1lOiBGbG93IGNvbXBsYWlucyBhYm91dCBtaXNzaW5nIHByb3BlcnRpZXMgYmVjYXVzZSBpdCBkb2Vzbid0IHVuZGVyc3RhbmQgZGVmaW5lUHJvcGVydHlcblxuICAgIGNvbnRleHQuQ29uc3VtZXIgPSBDb25zdW1lcjtcbiAgfVxuXG4gIHtcbiAgICBjb250ZXh0Ll9jdXJyZW50UmVuZGVyZXIgPSBudWxsO1xuICAgIGNvbnRleHQuX2N1cnJlbnRSZW5kZXJlcjIgPSBudWxsO1xuICB9XG5cbiAgcmV0dXJuIGNvbnRleHQ7XG59XG5cbnZhciBVbmluaXRpYWxpemVkID0gLTE7XG52YXIgUGVuZGluZyA9IDA7XG52YXIgUmVzb2x2ZWQgPSAxO1xudmFyIFJlamVjdGVkID0gMjtcblxuZnVuY3Rpb24gbGF6eUluaXRpYWxpemVyKHBheWxvYWQpIHtcbiAgaWYgKHBheWxvYWQuX3N0YXR1cyA9PT0gVW5pbml0aWFsaXplZCkge1xuICAgIHZhciBjdG9yID0gcGF5bG9hZC5fcmVzdWx0O1xuICAgIHZhciB0aGVuYWJsZSA9IGN0b3IoKTsgLy8gVHJhbnNpdGlvbiB0byB0aGUgbmV4dCBzdGF0ZS5cblxuICAgIHZhciBwZW5kaW5nID0gcGF5bG9hZDtcbiAgICBwZW5kaW5nLl9zdGF0dXMgPSBQZW5kaW5nO1xuICAgIHBlbmRpbmcuX3Jlc3VsdCA9IHRoZW5hYmxlO1xuICAgIHRoZW5hYmxlLnRoZW4oZnVuY3Rpb24gKG1vZHVsZU9iamVjdCkge1xuICAgICAgaWYgKHBheWxvYWQuX3N0YXR1cyA9PT0gUGVuZGluZykge1xuICAgICAgICB2YXIgZGVmYXVsdEV4cG9ydCA9IG1vZHVsZU9iamVjdC5kZWZhdWx0O1xuXG4gICAgICAgIHtcbiAgICAgICAgICBpZiAoZGVmYXVsdEV4cG9ydCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBlcnJvcignbGF6eTogRXhwZWN0ZWQgdGhlIHJlc3VsdCBvZiBhIGR5bmFtaWMgaW1wb3J0KCkgY2FsbC4gJyArICdJbnN0ZWFkIHJlY2VpdmVkOiAlc1xcblxcbllvdXIgY29kZSBzaG91bGQgbG9vayBsaWtlOiBcXG4gICcgKyAvLyBCcmVhayB1cCBpbXBvcnRzIHRvIGF2b2lkIGFjY2lkZW50YWxseSBwYXJzaW5nIHRoZW0gYXMgZGVwZW5kZW5jaWVzLlxuICAgICAgICAgICAgJ2NvbnN0IE15Q29tcG9uZW50ID0gbGF6eSgoKSA9PiBpbXAnICsgXCJvcnQoJy4vTXlDb21wb25lbnQnKSlcIiwgbW9kdWxlT2JqZWN0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gVHJhbnNpdGlvbiB0byB0aGUgbmV4dCBzdGF0ZS5cblxuXG4gICAgICAgIHZhciByZXNvbHZlZCA9IHBheWxvYWQ7XG4gICAgICAgIHJlc29sdmVkLl9zdGF0dXMgPSBSZXNvbHZlZDtcbiAgICAgICAgcmVzb2x2ZWQuX3Jlc3VsdCA9IGRlZmF1bHRFeHBvcnQ7XG4gICAgICB9XG4gICAgfSwgZnVuY3Rpb24gKGVycm9yKSB7XG4gICAgICBpZiAocGF5bG9hZC5fc3RhdHVzID09PSBQZW5kaW5nKSB7XG4gICAgICAgIC8vIFRyYW5zaXRpb24gdG8gdGhlIG5leHQgc3RhdGUuXG4gICAgICAgIHZhciByZWplY3RlZCA9IHBheWxvYWQ7XG4gICAgICAgIHJlamVjdGVkLl9zdGF0dXMgPSBSZWplY3RlZDtcbiAgICAgICAgcmVqZWN0ZWQuX3Jlc3VsdCA9IGVycm9yO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKHBheWxvYWQuX3N0YXR1cyA9PT0gUmVzb2x2ZWQpIHtcbiAgICByZXR1cm4gcGF5bG9hZC5fcmVzdWx0O1xuICB9IGVsc2Uge1xuICAgIHRocm93IHBheWxvYWQuX3Jlc3VsdDtcbiAgfVxufVxuXG5mdW5jdGlvbiBsYXp5KGN0b3IpIHtcbiAgdmFyIHBheWxvYWQgPSB7XG4gICAgLy8gV2UgdXNlIHRoZXNlIGZpZWxkcyB0byBzdG9yZSB0aGUgcmVzdWx0LlxuICAgIF9zdGF0dXM6IC0xLFxuICAgIF9yZXN1bHQ6IGN0b3JcbiAgfTtcbiAgdmFyIGxhenlUeXBlID0ge1xuICAgICQkdHlwZW9mOiBSRUFDVF9MQVpZX1RZUEUsXG4gICAgX3BheWxvYWQ6IHBheWxvYWQsXG4gICAgX2luaXQ6IGxhenlJbml0aWFsaXplclxuICB9O1xuXG4gIHtcbiAgICAvLyBJbiBwcm9kdWN0aW9uLCB0aGlzIHdvdWxkIGp1c3Qgc2V0IGl0IG9uIHRoZSBvYmplY3QuXG4gICAgdmFyIGRlZmF1bHRQcm9wcztcbiAgICB2YXIgcHJvcFR5cGVzOyAvLyAkRmxvd0ZpeE1lXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhsYXp5VHlwZSwge1xuICAgICAgZGVmYXVsdFByb3BzOiB7XG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIGRlZmF1bHRQcm9wcztcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAobmV3RGVmYXVsdFByb3BzKSB7XG4gICAgICAgICAgZXJyb3IoJ1JlYWN0LmxhenkoLi4uKTogSXQgaXMgbm90IHN1cHBvcnRlZCB0byBhc3NpZ24gYGRlZmF1bHRQcm9wc2AgdG8gJyArICdhIGxhenkgY29tcG9uZW50IGltcG9ydC4gRWl0aGVyIHNwZWNpZnkgdGhlbSB3aGVyZSB0aGUgY29tcG9uZW50ICcgKyAnaXMgZGVmaW5lZCwgb3IgY3JlYXRlIGEgd3JhcHBpbmcgY29tcG9uZW50IGFyb3VuZCBpdC4nKTtcblxuICAgICAgICAgIGRlZmF1bHRQcm9wcyA9IG5ld0RlZmF1bHRQcm9wczsgLy8gTWF0Y2ggcHJvZHVjdGlvbiBiZWhhdmlvciBtb3JlIGNsb3NlbHk6XG4gICAgICAgICAgLy8gJEZsb3dGaXhNZVxuXG4gICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGxhenlUeXBlLCAnZGVmYXVsdFByb3BzJywge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcHJvcFR5cGVzOiB7XG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIHByb3BUeXBlcztcbiAgICAgICAgfSxcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAobmV3UHJvcFR5cGVzKSB7XG4gICAgICAgICAgZXJyb3IoJ1JlYWN0LmxhenkoLi4uKTogSXQgaXMgbm90IHN1cHBvcnRlZCB0byBhc3NpZ24gYHByb3BUeXBlc2AgdG8gJyArICdhIGxhenkgY29tcG9uZW50IGltcG9ydC4gRWl0aGVyIHNwZWNpZnkgdGhlbSB3aGVyZSB0aGUgY29tcG9uZW50ICcgKyAnaXMgZGVmaW5lZCwgb3IgY3JlYXRlIGEgd3JhcHBpbmcgY29tcG9uZW50IGFyb3VuZCBpdC4nKTtcblxuICAgICAgICAgIHByb3BUeXBlcyA9IG5ld1Byb3BUeXBlczsgLy8gTWF0Y2ggcHJvZHVjdGlvbiBiZWhhdmlvciBtb3JlIGNsb3NlbHk6XG4gICAgICAgICAgLy8gJEZsb3dGaXhNZVxuXG4gICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGxhenlUeXBlLCAncHJvcFR5cGVzJywge1xuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gbGF6eVR5cGU7XG59XG5cbmZ1bmN0aW9uIGZvcndhcmRSZWYocmVuZGVyKSB7XG4gIHtcbiAgICBpZiAocmVuZGVyICE9IG51bGwgJiYgcmVuZGVyLiQkdHlwZW9mID09PSBSRUFDVF9NRU1PX1RZUEUpIHtcbiAgICAgIGVycm9yKCdmb3J3YXJkUmVmIHJlcXVpcmVzIGEgcmVuZGVyIGZ1bmN0aW9uIGJ1dCByZWNlaXZlZCBhIGBtZW1vYCAnICsgJ2NvbXBvbmVudC4gSW5zdGVhZCBvZiBmb3J3YXJkUmVmKG1lbW8oLi4uKSksIHVzZSAnICsgJ21lbW8oZm9yd2FyZFJlZiguLi4pKS4nKTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiByZW5kZXIgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGVycm9yKCdmb3J3YXJkUmVmIHJlcXVpcmVzIGEgcmVuZGVyIGZ1bmN0aW9uIGJ1dCB3YXMgZ2l2ZW4gJXMuJywgcmVuZGVyID09PSBudWxsID8gJ251bGwnIDogdHlwZW9mIHJlbmRlcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChyZW5kZXIubGVuZ3RoICE9PSAwICYmIHJlbmRlci5sZW5ndGggIT09IDIpIHtcbiAgICAgICAgZXJyb3IoJ2ZvcndhcmRSZWYgcmVuZGVyIGZ1bmN0aW9ucyBhY2NlcHQgZXhhY3RseSB0d28gcGFyYW1ldGVyczogcHJvcHMgYW5kIHJlZi4gJXMnLCByZW5kZXIubGVuZ3RoID09PSAxID8gJ0RpZCB5b3UgZm9yZ2V0IHRvIHVzZSB0aGUgcmVmIHBhcmFtZXRlcj8nIDogJ0FueSBhZGRpdGlvbmFsIHBhcmFtZXRlciB3aWxsIGJlIHVuZGVmaW5lZC4nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocmVuZGVyICE9IG51bGwpIHtcbiAgICAgIGlmIChyZW5kZXIuZGVmYXVsdFByb3BzICE9IG51bGwgfHwgcmVuZGVyLnByb3BUeXBlcyAhPSBudWxsKSB7XG4gICAgICAgIGVycm9yKCdmb3J3YXJkUmVmIHJlbmRlciBmdW5jdGlvbnMgZG8gbm90IHN1cHBvcnQgcHJvcFR5cGVzIG9yIGRlZmF1bHRQcm9wcy4gJyArICdEaWQgeW91IGFjY2lkZW50YWxseSBwYXNzIGEgUmVhY3QgY29tcG9uZW50PycpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHZhciBlbGVtZW50VHlwZSA9IHtcbiAgICAkJHR5cGVvZjogUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSxcbiAgICByZW5kZXI6IHJlbmRlclxuICB9O1xuXG4gIHtcbiAgICB2YXIgb3duTmFtZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudFR5cGUsICdkaXNwbGF5TmFtZScsIHtcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBvd25OYW1lO1xuICAgICAgfSxcbiAgICAgIHNldDogZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgICAgb3duTmFtZSA9IG5hbWU7XG5cbiAgICAgICAgaWYgKHJlbmRlci5kaXNwbGF5TmFtZSA9PSBudWxsKSB7XG4gICAgICAgICAgcmVuZGVyLmRpc3BsYXlOYW1lID0gbmFtZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnRUeXBlO1xufVxuXG4vLyBGaWx0ZXIgY2VydGFpbiBET00gYXR0cmlidXRlcyAoZS5nLiBzcmMsIGhyZWYpIGlmIHRoZWlyIHZhbHVlcyBhcmUgZW1wdHkgc3RyaW5ncy5cblxudmFyIGVuYWJsZVNjb3BlQVBJID0gZmFsc2U7IC8vIEV4cGVyaW1lbnRhbCBDcmVhdGUgRXZlbnQgSGFuZGxlIEFQSS5cblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpIHtcbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9IC8vIE5vdGU6IHR5cGVvZiBtaWdodCBiZSBvdGhlciB0aGFuICdzeW1ib2wnIG9yICdudW1iZXInIChlLmcuIGlmIGl0J3MgYSBwb2x5ZmlsbCkuXG5cblxuICBpZiAodHlwZSA9PT0gZXhwb3J0cy5GcmFnbWVudCB8fCB0eXBlID09PSBleHBvcnRzLlByb2ZpbGVyIHx8IHR5cGUgPT09IFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFIHx8IHR5cGUgPT09IGV4cG9ydHMuU3RyaWN0TW9kZSB8fCB0eXBlID09PSBleHBvcnRzLlN1c3BlbnNlIHx8IHR5cGUgPT09IFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9MRUdBQ1lfSElEREVOX1RZUEUgfHwgZW5hYmxlU2NvcGVBUEkgKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnICYmIHR5cGUgIT09IG51bGwpIHtcbiAgICBpZiAodHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTEFaWV9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX01FTU9fVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9QUk9WSURFUl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0NPTlRFWFRfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZVTkRBTUVOVEFMX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfQkxPQ0tfVFlQRSB8fCB0eXBlWzBdID09PSBSRUFDVF9TRVJWRVJfQkxPQ0tfVFlQRSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5mdW5jdGlvbiBtZW1vKHR5cGUsIGNvbXBhcmUpIHtcbiAge1xuICAgIGlmICghaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpKSB7XG4gICAgICBlcnJvcignbWVtbzogVGhlIGZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBjb21wb25lbnQuIEluc3RlYWQgJyArICdyZWNlaXZlZDogJXMnLCB0eXBlID09PSBudWxsID8gJ251bGwnIDogdHlwZW9mIHR5cGUpO1xuICAgIH1cbiAgfVxuXG4gIHZhciBlbGVtZW50VHlwZSA9IHtcbiAgICAkJHR5cGVvZjogUkVBQ1RfTUVNT19UWVBFLFxuICAgIHR5cGU6IHR5cGUsXG4gICAgY29tcGFyZTogY29tcGFyZSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IGNvbXBhcmVcbiAgfTtcblxuICB7XG4gICAgdmFyIG93bk5hbWU7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnRUeXBlLCAnZGlzcGxheU5hbWUnLCB7XG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gb3duTmFtZTtcbiAgICAgIH0sXG4gICAgICBzZXQ6IGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICAgIG93bk5hbWUgPSBuYW1lO1xuXG4gICAgICAgIGlmICh0eXBlLmRpc3BsYXlOYW1lID09IG51bGwpIHtcbiAgICAgICAgICB0eXBlLmRpc3BsYXlOYW1lID0gbmFtZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnRUeXBlO1xufVxuXG5mdW5jdGlvbiByZXNvbHZlRGlzcGF0Y2hlcigpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSBSZWFjdEN1cnJlbnREaXNwYXRjaGVyLmN1cnJlbnQ7XG5cbiAgaWYgKCEoZGlzcGF0Y2hlciAhPT0gbnVsbCkpIHtcbiAgICB7XG4gICAgICB0aHJvdyBFcnJvciggXCJJbnZhbGlkIGhvb2sgY2FsbC4gSG9va3MgY2FuIG9ubHkgYmUgY2FsbGVkIGluc2lkZSBvZiB0aGUgYm9keSBvZiBhIGZ1bmN0aW9uIGNvbXBvbmVudC4gVGhpcyBjb3VsZCBoYXBwZW4gZm9yIG9uZSBvZiB0aGUgZm9sbG93aW5nIHJlYXNvbnM6XFxuMS4gWW91IG1pZ2h0IGhhdmUgbWlzbWF0Y2hpbmcgdmVyc2lvbnMgb2YgUmVhY3QgYW5kIHRoZSByZW5kZXJlciAoc3VjaCBhcyBSZWFjdCBET00pXFxuMi4gWW91IG1pZ2h0IGJlIGJyZWFraW5nIHRoZSBSdWxlcyBvZiBIb29rc1xcbjMuIFlvdSBtaWdodCBoYXZlIG1vcmUgdGhhbiBvbmUgY29weSBvZiBSZWFjdCBpbiB0aGUgc2FtZSBhcHBcXG5TZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL2ludmFsaWQtaG9vay1jYWxsIGZvciB0aXBzIGFib3V0IGhvdyB0byBkZWJ1ZyBhbmQgZml4IHRoaXMgcHJvYmxlbS5cIiApO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkaXNwYXRjaGVyO1xufVxuXG5mdW5jdGlvbiB1c2VDb250ZXh0KENvbnRleHQsIHVuc3RhYmxlX29ic2VydmVkQml0cykge1xuICB2YXIgZGlzcGF0Y2hlciA9IHJlc29sdmVEaXNwYXRjaGVyKCk7XG5cbiAge1xuICAgIGlmICh1bnN0YWJsZV9vYnNlcnZlZEJpdHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZXJyb3IoJ3VzZUNvbnRleHQoKSBzZWNvbmQgYXJndW1lbnQgaXMgcmVzZXJ2ZWQgZm9yIGZ1dHVyZSAnICsgJ3VzZSBpbiBSZWFjdC4gUGFzc2luZyBpdCBpcyBub3Qgc3VwcG9ydGVkLiAnICsgJ1lvdSBwYXNzZWQ6ICVzLiVzJywgdW5zdGFibGVfb2JzZXJ2ZWRCaXRzLCB0eXBlb2YgdW5zdGFibGVfb2JzZXJ2ZWRCaXRzID09PSAnbnVtYmVyJyAmJiBBcnJheS5pc0FycmF5KGFyZ3VtZW50c1syXSkgPyAnXFxuXFxuRGlkIHlvdSBjYWxsIGFycmF5Lm1hcCh1c2VDb250ZXh0KT8gJyArICdDYWxsaW5nIEhvb2tzIGluc2lkZSBhIGxvb3AgaXMgbm90IHN1cHBvcnRlZC4gJyArICdMZWFybiBtb3JlIGF0IGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9ydWxlcy1vZi1ob29rcycgOiAnJyk7XG4gICAgfSAvLyBUT0RPOiBhZGQgYSBtb3JlIGdlbmVyaWMgd2FybmluZyBmb3IgaW52YWxpZCB2YWx1ZXMuXG5cblxuICAgIGlmIChDb250ZXh0Ll9jb250ZXh0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHZhciByZWFsQ29udGV4dCA9IENvbnRleHQuX2NvbnRleHQ7IC8vIERvbid0IGRlZHVwbGljYXRlIGJlY2F1c2UgdGhpcyBsZWdpdGltYXRlbHkgY2F1c2VzIGJ1Z3NcbiAgICAgIC8vIGFuZCBub2JvZHkgc2hvdWxkIGJlIHVzaW5nIHRoaXMgaW4gZXhpc3RpbmcgY29kZS5cblxuICAgICAgaWYgKHJlYWxDb250ZXh0LkNvbnN1bWVyID09PSBDb250ZXh0KSB7XG4gICAgICAgIGVycm9yKCdDYWxsaW5nIHVzZUNvbnRleHQoQ29udGV4dC5Db25zdW1lcikgaXMgbm90IHN1cHBvcnRlZCwgbWF5IGNhdXNlIGJ1Z3MsIGFuZCB3aWxsIGJlICcgKyAncmVtb3ZlZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiBEaWQgeW91IG1lYW4gdG8gY2FsbCB1c2VDb250ZXh0KENvbnRleHQpIGluc3RlYWQ/Jyk7XG4gICAgICB9IGVsc2UgaWYgKHJlYWxDb250ZXh0LlByb3ZpZGVyID09PSBDb250ZXh0KSB7XG4gICAgICAgIGVycm9yKCdDYWxsaW5nIHVzZUNvbnRleHQoQ29udGV4dC5Qcm92aWRlcikgaXMgbm90IHN1cHBvcnRlZC4gJyArICdEaWQgeW91IG1lYW4gdG8gY2FsbCB1c2VDb250ZXh0KENvbnRleHQpIGluc3RlYWQ/Jyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlQ29udGV4dChDb250ZXh0LCB1bnN0YWJsZV9vYnNlcnZlZEJpdHMpO1xufVxuZnVuY3Rpb24gdXNlU3RhdGUoaW5pdGlhbFN0YXRlKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlU3RhdGUoaW5pdGlhbFN0YXRlKTtcbn1cbmZ1bmN0aW9uIHVzZVJlZHVjZXIocmVkdWNlciwgaW5pdGlhbEFyZywgaW5pdCkge1xuICB2YXIgZGlzcGF0Y2hlciA9IHJlc29sdmVEaXNwYXRjaGVyKCk7XG4gIHJldHVybiBkaXNwYXRjaGVyLnVzZVJlZHVjZXIocmVkdWNlciwgaW5pdGlhbEFyZywgaW5pdCk7XG59XG5mdW5jdGlvbiB1c2VSZWYoaW5pdGlhbFZhbHVlKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlUmVmKGluaXRpYWxWYWx1ZSk7XG59XG5mdW5jdGlvbiB1c2VFZmZlY3QoY3JlYXRlLCBkZXBzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlRWZmZWN0KGNyZWF0ZSwgZGVwcyk7XG59XG5mdW5jdGlvbiB1c2VMYXlvdXRFZmZlY3QoY3JlYXRlLCBkZXBzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlTGF5b3V0RWZmZWN0KGNyZWF0ZSwgZGVwcyk7XG59XG5mdW5jdGlvbiB1c2VDYWxsYmFjayhjYWxsYmFjaywgZGVwcykge1xuICB2YXIgZGlzcGF0Y2hlciA9IHJlc29sdmVEaXNwYXRjaGVyKCk7XG4gIHJldHVybiBkaXNwYXRjaGVyLnVzZUNhbGxiYWNrKGNhbGxiYWNrLCBkZXBzKTtcbn1cbmZ1bmN0aW9uIHVzZU1lbW8oY3JlYXRlLCBkZXBzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlTWVtbyhjcmVhdGUsIGRlcHMpO1xufVxuZnVuY3Rpb24gdXNlSW1wZXJhdGl2ZUhhbmRsZShyZWYsIGNyZWF0ZSwgZGVwcykge1xuICB2YXIgZGlzcGF0Y2hlciA9IHJlc29sdmVEaXNwYXRjaGVyKCk7XG4gIHJldHVybiBkaXNwYXRjaGVyLnVzZUltcGVyYXRpdmVIYW5kbGUocmVmLCBjcmVhdGUsIGRlcHMpO1xufVxuZnVuY3Rpb24gdXNlRGVidWdWYWx1ZSh2YWx1ZSwgZm9ybWF0dGVyRm4pIHtcbiAge1xuICAgIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgICByZXR1cm4gZGlzcGF0Y2hlci51c2VEZWJ1Z1ZhbHVlKHZhbHVlLCBmb3JtYXR0ZXJGbik7XG4gIH1cbn1cblxuLy8gSGVscGVycyB0byBwYXRjaCBjb25zb2xlLmxvZ3MgdG8gYXZvaWQgbG9nZ2luZyBkdXJpbmcgc2lkZS1lZmZlY3QgZnJlZVxuLy8gcmVwbGF5aW5nIG9uIHJlbmRlciBmdW5jdGlvbi4gVGhpcyBjdXJyZW50bHkgb25seSBwYXRjaGVzIHRoZSBvYmplY3Rcbi8vIGxhemlseSB3aGljaCB3b24ndCBjb3ZlciBpZiB0aGUgbG9nIGZ1bmN0aW9uIHdhcyBleHRyYWN0ZWQgZWFnZXJseS5cbi8vIFdlIGNvdWxkIGFsc28gZWFnZXJseSBwYXRjaCB0aGUgbWV0aG9kLlxudmFyIGRpc2FibGVkRGVwdGggPSAwO1xudmFyIHByZXZMb2c7XG52YXIgcHJldkluZm87XG52YXIgcHJldldhcm47XG52YXIgcHJldkVycm9yO1xudmFyIHByZXZHcm91cDtcbnZhciBwcmV2R3JvdXBDb2xsYXBzZWQ7XG52YXIgcHJldkdyb3VwRW5kO1xuXG5mdW5jdGlvbiBkaXNhYmxlZExvZygpIHt9XG5cbmRpc2FibGVkTG9nLl9fcmVhY3REaXNhYmxlZExvZyA9IHRydWU7XG5mdW5jdGlvbiBkaXNhYmxlTG9ncygpIHtcbiAge1xuICAgIGlmIChkaXNhYmxlZERlcHRoID09PSAwKSB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICAgIHByZXZMb2cgPSBjb25zb2xlLmxvZztcbiAgICAgIHByZXZJbmZvID0gY29uc29sZS5pbmZvO1xuICAgICAgcHJldldhcm4gPSBjb25zb2xlLndhcm47XG4gICAgICBwcmV2RXJyb3IgPSBjb25zb2xlLmVycm9yO1xuICAgICAgcHJldkdyb3VwID0gY29uc29sZS5ncm91cDtcbiAgICAgIHByZXZHcm91cENvbGxhcHNlZCA9IGNvbnNvbGUuZ3JvdXBDb2xsYXBzZWQ7XG4gICAgICBwcmV2R3JvdXBFbmQgPSBjb25zb2xlLmdyb3VwRW5kOyAvLyBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzE5MDk5XG5cbiAgICAgIHZhciBwcm9wcyA9IHtcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICB2YWx1ZTogZGlzYWJsZWRMb2csXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgICB9OyAvLyAkRmxvd0ZpeE1lIEZsb3cgdGhpbmtzIGNvbnNvbGUgaXMgaW1tdXRhYmxlLlxuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhjb25zb2xlLCB7XG4gICAgICAgIGluZm86IHByb3BzLFxuICAgICAgICBsb2c6IHByb3BzLFxuICAgICAgICB3YXJuOiBwcm9wcyxcbiAgICAgICAgZXJyb3I6IHByb3BzLFxuICAgICAgICBncm91cDogcHJvcHMsXG4gICAgICAgIGdyb3VwQ29sbGFwc2VkOiBwcm9wcyxcbiAgICAgICAgZ3JvdXBFbmQ6IHByb3BzXG4gICAgICB9KTtcbiAgICAgIC8qIGVzbGludC1lbmFibGUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nICovXG4gICAgfVxuXG4gICAgZGlzYWJsZWREZXB0aCsrO1xuICB9XG59XG5mdW5jdGlvbiByZWVuYWJsZUxvZ3MoKSB7XG4gIHtcbiAgICBkaXNhYmxlZERlcHRoLS07XG5cbiAgICBpZiAoZGlzYWJsZWREZXB0aCA9PT0gMCkge1xuICAgICAgLyogZXNsaW50LWRpc2FibGUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nICovXG4gICAgICB2YXIgcHJvcHMgPSB7XG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgIH07IC8vICRGbG93Rml4TWUgRmxvdyB0aGlua3MgY29uc29sZSBpcyBpbW11dGFibGUuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGNvbnNvbGUsIHtcbiAgICAgICAgbG9nOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2TG9nXG4gICAgICAgIH0pLFxuICAgICAgICBpbmZvOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2SW5mb1xuICAgICAgICB9KSxcbiAgICAgICAgd2FybjogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldldhcm5cbiAgICAgICAgfSksXG4gICAgICAgIGVycm9yOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2RXJyb3JcbiAgICAgICAgfSksXG4gICAgICAgIGdyb3VwOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2R3JvdXBcbiAgICAgICAgfSksXG4gICAgICAgIGdyb3VwQ29sbGFwc2VkOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2R3JvdXBDb2xsYXBzZWRcbiAgICAgICAgfSksXG4gICAgICAgIGdyb3VwRW5kOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2R3JvdXBFbmRcbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgICAgLyogZXNsaW50LWVuYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICB9XG5cbiAgICBpZiAoZGlzYWJsZWREZXB0aCA8IDApIHtcbiAgICAgIGVycm9yKCdkaXNhYmxlZERlcHRoIGZlbGwgYmVsb3cgemVyby4gJyArICdUaGlzIGlzIGEgYnVnIGluIFJlYWN0LiBQbGVhc2UgZmlsZSBhbiBpc3N1ZS4nKTtcbiAgICB9XG4gIH1cbn1cblxudmFyIFJlYWN0Q3VycmVudERpc3BhdGNoZXIkMSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0Q3VycmVudERpc3BhdGNoZXI7XG52YXIgcHJlZml4O1xuZnVuY3Rpb24gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUobmFtZSwgc291cmNlLCBvd25lckZuKSB7XG4gIHtcbiAgICBpZiAocHJlZml4ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEV4dHJhY3QgdGhlIFZNIHNwZWNpZmljIHByZWZpeCB1c2VkIGJ5IGVhY2ggbGluZS5cbiAgICAgIHRyeSB7XG4gICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgIHZhciBtYXRjaCA9IHguc3RhY2sudHJpbSgpLm1hdGNoKC9cXG4oICooYXQgKT8pLyk7XG4gICAgICAgIHByZWZpeCA9IG1hdGNoICYmIG1hdGNoWzFdIHx8ICcnO1xuICAgICAgfVxuICAgIH0gLy8gV2UgdXNlIHRoZSBwcmVmaXggdG8gZW5zdXJlIG91ciBzdGFja3MgbGluZSB1cCB3aXRoIG5hdGl2ZSBzdGFjayBmcmFtZXMuXG5cblxuICAgIHJldHVybiAnXFxuJyArIHByZWZpeCArIG5hbWU7XG4gIH1cbn1cbnZhciByZWVudHJ5ID0gZmFsc2U7XG52YXIgY29tcG9uZW50RnJhbWVDYWNoZTtcblxue1xuICB2YXIgUG9zc2libHlXZWFrTWFwID0gdHlwZW9mIFdlYWtNYXAgPT09ICdmdW5jdGlvbicgPyBXZWFrTWFwIDogTWFwO1xuICBjb21wb25lbnRGcmFtZUNhY2hlID0gbmV3IFBvc3NpYmx5V2Vha01hcCgpO1xufVxuXG5mdW5jdGlvbiBkZXNjcmliZU5hdGl2ZUNvbXBvbmVudEZyYW1lKGZuLCBjb25zdHJ1Y3QpIHtcbiAgLy8gSWYgc29tZXRoaW5nIGFza2VkIGZvciBhIHN0YWNrIGluc2lkZSBhIGZha2UgcmVuZGVyLCBpdCBzaG91bGQgZ2V0IGlnbm9yZWQuXG4gIGlmICghZm4gfHwgcmVlbnRyeSkge1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHtcbiAgICB2YXIgZnJhbWUgPSBjb21wb25lbnRGcmFtZUNhY2hlLmdldChmbik7XG5cbiAgICBpZiAoZnJhbWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGZyYW1lO1xuICAgIH1cbiAgfVxuXG4gIHZhciBjb250cm9sO1xuICByZWVudHJ5ID0gdHJ1ZTtcbiAgdmFyIHByZXZpb3VzUHJlcGFyZVN0YWNrVHJhY2UgPSBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZTsgLy8gJEZsb3dGaXhNZSBJdCBkb2VzIGFjY2VwdCB1bmRlZmluZWQuXG5cbiAgRXJyb3IucHJlcGFyZVN0YWNrVHJhY2UgPSB1bmRlZmluZWQ7XG4gIHZhciBwcmV2aW91c0Rpc3BhdGNoZXI7XG5cbiAge1xuICAgIHByZXZpb3VzRGlzcGF0Y2hlciA9IFJlYWN0Q3VycmVudERpc3BhdGNoZXIkMS5jdXJyZW50OyAvLyBTZXQgdGhlIGRpc3BhdGNoZXIgaW4gREVWIGJlY2F1c2UgdGhpcyBtaWdodCBiZSBjYWxsIGluIHRoZSByZW5kZXIgZnVuY3Rpb25cbiAgICAvLyBmb3Igd2FybmluZ3MuXG5cbiAgICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyJDEuY3VycmVudCA9IG51bGw7XG4gICAgZGlzYWJsZUxvZ3MoKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgLy8gVGhpcyBzaG91bGQgdGhyb3cuXG4gICAgaWYgKGNvbnN0cnVjdCkge1xuICAgICAgLy8gU29tZXRoaW5nIHNob3VsZCBiZSBzZXR0aW5nIHRoZSBwcm9wcyBpbiB0aGUgY29uc3RydWN0b3IuXG4gICAgICB2YXIgRmFrZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgIH07IC8vICRGbG93Rml4TWVcblxuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoRmFrZS5wcm90b3R5cGUsICdwcm9wcycsIHtcbiAgICAgICAgc2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgLy8gV2UgdXNlIGEgdGhyb3dpbmcgc2V0dGVyIGluc3RlYWQgb2YgZnJvemVuIG9yIG5vbi13cml0YWJsZSBwcm9wc1xuICAgICAgICAgIC8vIGJlY2F1c2UgdGhhdCB3b24ndCB0aHJvdyBpbiBhIG5vbi1zdHJpY3QgbW9kZSBmdW5jdGlvbi5cbiAgICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSAnb2JqZWN0JyAmJiBSZWZsZWN0LmNvbnN0cnVjdCkge1xuICAgICAgICAvLyBXZSBjb25zdHJ1Y3QgYSBkaWZmZXJlbnQgY29udHJvbCBmb3IgdGhpcyBjYXNlIHRvIGluY2x1ZGUgYW55IGV4dHJhXG4gICAgICAgIC8vIGZyYW1lcyBhZGRlZCBieSB0aGUgY29uc3RydWN0IGNhbGwuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgUmVmbGVjdC5jb25zdHJ1Y3QoRmFrZSwgW10pO1xuICAgICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICAgIH1cblxuICAgICAgICBSZWZsZWN0LmNvbnN0cnVjdChmbiwgW10sIEZha2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBGYWtlLmNhbGwoKTtcbiAgICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICAgIGNvbnRyb2wgPSB4O1xuICAgICAgICB9XG5cbiAgICAgICAgZm4uY2FsbChGYWtlLnByb3RvdHlwZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgIGNvbnRyb2wgPSB4O1xuICAgICAgfVxuXG4gICAgICBmbigpO1xuICAgIH1cbiAgfSBjYXRjaCAoc2FtcGxlKSB7XG4gICAgLy8gVGhpcyBpcyBpbmxpbmVkIG1hbnVhbGx5IGJlY2F1c2UgY2xvc3VyZSBkb2Vzbid0IGRvIGl0IGZvciB1cy5cbiAgICBpZiAoc2FtcGxlICYmIGNvbnRyb2wgJiYgdHlwZW9mIHNhbXBsZS5zdGFjayA9PT0gJ3N0cmluZycpIHtcbiAgICAgIC8vIFRoaXMgZXh0cmFjdHMgdGhlIGZpcnN0IGZyYW1lIGZyb20gdGhlIHNhbXBsZSB0aGF0IGlzbid0IGFsc28gaW4gdGhlIGNvbnRyb2wuXG4gICAgICAvLyBTa2lwcGluZyBvbmUgZnJhbWUgdGhhdCB3ZSBhc3N1bWUgaXMgdGhlIGZyYW1lIHRoYXQgY2FsbHMgdGhlIHR3by5cbiAgICAgIHZhciBzYW1wbGVMaW5lcyA9IHNhbXBsZS5zdGFjay5zcGxpdCgnXFxuJyk7XG4gICAgICB2YXIgY29udHJvbExpbmVzID0gY29udHJvbC5zdGFjay5zcGxpdCgnXFxuJyk7XG4gICAgICB2YXIgcyA9IHNhbXBsZUxpbmVzLmxlbmd0aCAtIDE7XG4gICAgICB2YXIgYyA9IGNvbnRyb2xMaW5lcy5sZW5ndGggLSAxO1xuXG4gICAgICB3aGlsZSAocyA+PSAxICYmIGMgPj0gMCAmJiBzYW1wbGVMaW5lc1tzXSAhPT0gY29udHJvbExpbmVzW2NdKSB7XG4gICAgICAgIC8vIFdlIGV4cGVjdCBhdCBsZWFzdCBvbmUgc3RhY2sgZnJhbWUgdG8gYmUgc2hhcmVkLlxuICAgICAgICAvLyBUeXBpY2FsbHkgdGhpcyB3aWxsIGJlIHRoZSByb290IG1vc3Qgb25lLiBIb3dldmVyLCBzdGFjayBmcmFtZXMgbWF5IGJlXG4gICAgICAgIC8vIGN1dCBvZmYgZHVlIHRvIG1heGltdW0gc3RhY2sgbGltaXRzLiBJbiB0aGlzIGNhc2UsIG9uZSBtYXliZSBjdXQgb2ZmXG4gICAgICAgIC8vIGVhcmxpZXIgdGhhbiB0aGUgb3RoZXIuIFdlIGFzc3VtZSB0aGF0IHRoZSBzYW1wbGUgaXMgbG9uZ2VyIG9yIHRoZSBzYW1lXG4gICAgICAgIC8vIGFuZCB0aGVyZSBmb3IgY3V0IG9mZiBlYXJsaWVyLiBTbyB3ZSBzaG91bGQgZmluZCB0aGUgcm9vdCBtb3N0IGZyYW1lIGluXG4gICAgICAgIC8vIHRoZSBzYW1wbGUgc29tZXdoZXJlIGluIHRoZSBjb250cm9sLlxuICAgICAgICBjLS07XG4gICAgICB9XG5cbiAgICAgIGZvciAoOyBzID49IDEgJiYgYyA+PSAwOyBzLS0sIGMtLSkge1xuICAgICAgICAvLyBOZXh0IHdlIGZpbmQgdGhlIGZpcnN0IG9uZSB0aGF0IGlzbid0IHRoZSBzYW1lIHdoaWNoIHNob3VsZCBiZSB0aGVcbiAgICAgICAgLy8gZnJhbWUgdGhhdCBjYWxsZWQgb3VyIHNhbXBsZSBmdW5jdGlvbiBhbmQgdGhlIGNvbnRyb2wuXG4gICAgICAgIGlmIChzYW1wbGVMaW5lc1tzXSAhPT0gY29udHJvbExpbmVzW2NdKSB7XG4gICAgICAgICAgLy8gSW4gVjgsIHRoZSBmaXJzdCBsaW5lIGlzIGRlc2NyaWJpbmcgdGhlIG1lc3NhZ2UgYnV0IG90aGVyIFZNcyBkb24ndC5cbiAgICAgICAgICAvLyBJZiB3ZSdyZSBhYm91dCB0byByZXR1cm4gdGhlIGZpcnN0IGxpbmUsIGFuZCB0aGUgY29udHJvbCBpcyBhbHNvIG9uIHRoZSBzYW1lXG4gICAgICAgICAgLy8gbGluZSwgdGhhdCdzIGEgcHJldHR5IGdvb2QgaW5kaWNhdG9yIHRoYXQgb3VyIHNhbXBsZSB0aHJldyBhdCBzYW1lIGxpbmUgYXNcbiAgICAgICAgICAvLyB0aGUgY29udHJvbC4gSS5lLiBiZWZvcmUgd2UgZW50ZXJlZCB0aGUgc2FtcGxlIGZyYW1lLiBTbyB3ZSBpZ25vcmUgdGhpcyByZXN1bHQuXG4gICAgICAgICAgLy8gVGhpcyBjYW4gaGFwcGVuIGlmIHlvdSBwYXNzZWQgYSBjbGFzcyB0byBmdW5jdGlvbiBjb21wb25lbnQsIG9yIG5vbi1mdW5jdGlvbi5cbiAgICAgICAgICBpZiAocyAhPT0gMSB8fCBjICE9PSAxKSB7XG4gICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgIHMtLTtcbiAgICAgICAgICAgICAgYy0tOyAvLyBXZSBtYXkgc3RpbGwgaGF2ZSBzaW1pbGFyIGludGVybWVkaWF0ZSBmcmFtZXMgZnJvbSB0aGUgY29uc3RydWN0IGNhbGwuXG4gICAgICAgICAgICAgIC8vIFRoZSBuZXh0IG9uZSB0aGF0IGlzbid0IHRoZSBzYW1lIHNob3VsZCBiZSBvdXIgbWF0Y2ggdGhvdWdoLlxuXG4gICAgICAgICAgICAgIGlmIChjIDwgMCB8fCBzYW1wbGVMaW5lc1tzXSAhPT0gY29udHJvbExpbmVzW2NdKSB7XG4gICAgICAgICAgICAgICAgLy8gVjggYWRkcyBhIFwibmV3XCIgcHJlZml4IGZvciBuYXRpdmUgY2xhc3Nlcy4gTGV0J3MgcmVtb3ZlIGl0IHRvIG1ha2UgaXQgcHJldHRpZXIuXG4gICAgICAgICAgICAgICAgdmFyIF9mcmFtZSA9ICdcXG4nICsgc2FtcGxlTGluZXNbc10ucmVwbGFjZSgnIGF0IG5ldyAnLCAnIGF0ICcpO1xuXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRGcmFtZUNhY2hlLnNldChmbiwgX2ZyYW1lKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IC8vIFJldHVybiB0aGUgbGluZSB3ZSBmb3VuZC5cblxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIF9mcmFtZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSB3aGlsZSAocyA+PSAxICYmIGMgPj0gMCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gZmluYWxseSB7XG4gICAgcmVlbnRyeSA9IGZhbHNlO1xuXG4gICAge1xuICAgICAgUmVhY3RDdXJyZW50RGlzcGF0Y2hlciQxLmN1cnJlbnQgPSBwcmV2aW91c0Rpc3BhdGNoZXI7XG4gICAgICByZWVuYWJsZUxvZ3MoKTtcbiAgICB9XG5cbiAgICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHByZXZpb3VzUHJlcGFyZVN0YWNrVHJhY2U7XG4gIH0gLy8gRmFsbGJhY2sgdG8ganVzdCB1c2luZyB0aGUgbmFtZSBpZiB3ZSBjb3VsZG4ndCBtYWtlIGl0IHRocm93LlxuXG5cbiAgdmFyIG5hbWUgPSBmbiA/IGZuLmRpc3BsYXlOYW1lIHx8IGZuLm5hbWUgOiAnJztcbiAgdmFyIHN5bnRoZXRpY0ZyYW1lID0gbmFtZSA/IGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKG5hbWUpIDogJyc7XG5cbiAge1xuICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbXBvbmVudEZyYW1lQ2FjaGUuc2V0KGZuLCBzeW50aGV0aWNGcmFtZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHN5bnRoZXRpY0ZyYW1lO1xufVxuZnVuY3Rpb24gZGVzY3JpYmVGdW5jdGlvbkNvbXBvbmVudEZyYW1lKGZuLCBzb3VyY2UsIG93bmVyRm4pIHtcbiAge1xuICAgIHJldHVybiBkZXNjcmliZU5hdGl2ZUNvbXBvbmVudEZyYW1lKGZuLCBmYWxzZSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2hvdWxkQ29uc3RydWN0KENvbXBvbmVudCkge1xuICB2YXIgcHJvdG90eXBlID0gQ29tcG9uZW50LnByb3RvdHlwZTtcbiAgcmV0dXJuICEhKHByb3RvdHlwZSAmJiBwcm90b3R5cGUuaXNSZWFjdENvbXBvbmVudCk7XG59XG5cbmZ1bmN0aW9uIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVih0eXBlLCBzb3VyY2UsIG93bmVyRm4pIHtcblxuICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAge1xuICAgICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUodHlwZSwgc2hvdWxkQ29uc3RydWN0KHR5cGUpKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKHR5cGUpO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBleHBvcnRzLlN1c3BlbnNlOlxuICAgICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKCdTdXNwZW5zZScpO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEU6XG4gICAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUoJ1N1c3BlbnNlTGlzdCcpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0Jykge1xuICAgIHN3aXRjaCAodHlwZS4kJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICByZXR1cm4gZGVzY3JpYmVGdW5jdGlvbkNvbXBvbmVudEZyYW1lKHR5cGUucmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9NRU1PX1RZUEU6XG4gICAgICAgIC8vIE1lbW8gbWF5IGNvbnRhaW4gYW55IGNvbXBvbmVudCB0eXBlIHNvIHdlIHJlY3Vyc2l2ZWx5IHJlc29sdmUgaXQuXG4gICAgICAgIHJldHVybiBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYodHlwZS50eXBlLCBzb3VyY2UsIG93bmVyRm4pO1xuXG4gICAgICBjYXNlIFJFQUNUX0JMT0NLX1RZUEU6XG4gICAgICAgIHJldHVybiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUodHlwZS5fcmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9MQVpZX1RZUEU6XG4gICAgICAgIHtcbiAgICAgICAgICB2YXIgbGF6eUNvbXBvbmVudCA9IHR5cGU7XG4gICAgICAgICAgdmFyIHBheWxvYWQgPSBsYXp5Q29tcG9uZW50Ll9wYXlsb2FkO1xuICAgICAgICAgIHZhciBpbml0ID0gbGF6eUNvbXBvbmVudC5faW5pdDtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBMYXp5IG1heSBjb250YWluIGFueSBjb21wb25lbnQgdHlwZSBzbyB3ZSByZWN1cnNpdmVseSByZXNvbHZlIGl0LlxuICAgICAgICAgICAgcmV0dXJuIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVihpbml0KHBheWxvYWQpLCBzb3VyY2UsIG93bmVyRm4pO1xuICAgICAgICAgIH0gY2F0Y2ggKHgpIHt9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gJyc7XG59XG5cbnZhciBsb2dnZWRUeXBlRmFpbHVyZXMgPSB7fTtcbnZhciBSZWFjdERlYnVnQ3VycmVudEZyYW1lJDEgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lO1xuXG5mdW5jdGlvbiBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KSB7XG4gIHtcbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgdmFyIG93bmVyID0gZWxlbWVudC5fb3duZXI7XG4gICAgICB2YXIgc3RhY2sgPSBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYoZWxlbWVudC50eXBlLCBlbGVtZW50Ll9zb3VyY2UsIG93bmVyID8gb3duZXIudHlwZSA6IG51bGwpO1xuICAgICAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSQxLnNldEV4dHJhU3RhY2tGcmFtZShzdGFjayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIFJlYWN0RGVidWdDdXJyZW50RnJhbWUkMS5zZXRFeHRyYVN0YWNrRnJhbWUobnVsbCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGNoZWNrUHJvcFR5cGVzKHR5cGVTcGVjcywgdmFsdWVzLCBsb2NhdGlvbiwgY29tcG9uZW50TmFtZSwgZWxlbWVudCkge1xuICB7XG4gICAgLy8gJEZsb3dGaXhNZSBUaGlzIGlzIG9rYXkgYnV0IEZsb3cgZG9lc24ndCBrbm93IGl0LlxuICAgIHZhciBoYXMgPSBGdW5jdGlvbi5jYWxsLmJpbmQoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSk7XG5cbiAgICBmb3IgKHZhciB0eXBlU3BlY05hbWUgaW4gdHlwZVNwZWNzKSB7XG4gICAgICBpZiAoaGFzKHR5cGVTcGVjcywgdHlwZVNwZWNOYW1lKSkge1xuICAgICAgICB2YXIgZXJyb3IkMSA9IHZvaWQgMDsgLy8gUHJvcCB0eXBlIHZhbGlkYXRpb24gbWF5IHRocm93LiBJbiBjYXNlIHRoZXkgZG8sIHdlIGRvbid0IHdhbnQgdG9cbiAgICAgICAgLy8gZmFpbCB0aGUgcmVuZGVyIHBoYXNlIHdoZXJlIGl0IGRpZG4ndCBmYWlsIGJlZm9yZS4gU28gd2UgbG9nIGl0LlxuICAgICAgICAvLyBBZnRlciB0aGVzZSBoYXZlIGJlZW4gY2xlYW5lZCB1cCwgd2UnbGwgbGV0IHRoZW0gdGhyb3cuXG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAvLyBUaGlzIGlzIGludGVudGlvbmFsbHkgYW4gaW52YXJpYW50IHRoYXQgZ2V0cyBjYXVnaHQuIEl0J3MgdGhlIHNhbWVcbiAgICAgICAgICAvLyBiZWhhdmlvciBhcyB3aXRob3V0IHRoaXMgc3RhdGVtZW50IGV4Y2VwdCB3aXRoIGEgYmV0dGVyIG1lc3NhZ2UuXG4gICAgICAgICAgaWYgKHR5cGVvZiB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdmFyIGVyciA9IEVycm9yKChjb21wb25lbnROYW1lIHx8ICdSZWFjdCBjbGFzcycpICsgJzogJyArIGxvY2F0aW9uICsgJyB0eXBlIGAnICsgdHlwZVNwZWNOYW1lICsgJ2AgaXMgaW52YWxpZDsgJyArICdpdCBtdXN0IGJlIGEgZnVuY3Rpb24sIHVzdWFsbHkgZnJvbSB0aGUgYHByb3AtdHlwZXNgIHBhY2thZ2UsIGJ1dCByZWNlaXZlZCBgJyArIHR5cGVvZiB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSArICdgLicgKyAnVGhpcyBvZnRlbiBoYXBwZW5zIGJlY2F1c2Ugb2YgdHlwb3Mgc3VjaCBhcyBgUHJvcFR5cGVzLmZ1bmN0aW9uYCBpbnN0ZWFkIG9mIGBQcm9wVHlwZXMuZnVuY2AuJyk7XG4gICAgICAgICAgICBlcnIubmFtZSA9ICdJbnZhcmlhbnQgVmlvbGF0aW9uJztcbiAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBlcnJvciQxID0gdHlwZVNwZWNzW3R5cGVTcGVjTmFtZV0odmFsdWVzLCB0eXBlU3BlY05hbWUsIGNvbXBvbmVudE5hbWUsIGxvY2F0aW9uLCBudWxsLCAnU0VDUkVUX0RPX05PVF9QQVNTX1RISVNfT1JfWU9VX1dJTExfQkVfRklSRUQnKTtcbiAgICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgICBlcnJvciQxID0gZXg7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXJyb3IkMSAmJiAhKGVycm9yJDEgaW5zdGFuY2VvZiBFcnJvcikpIHtcbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KTtcblxuICAgICAgICAgIGVycm9yKCclczogdHlwZSBzcGVjaWZpY2F0aW9uIG9mICVzJyArICcgYCVzYCBpcyBpbnZhbGlkOyB0aGUgdHlwZSBjaGVja2VyICcgKyAnZnVuY3Rpb24gbXVzdCByZXR1cm4gYG51bGxgIG9yIGFuIGBFcnJvcmAgYnV0IHJldHVybmVkIGEgJXMuICcgKyAnWW91IG1heSBoYXZlIGZvcmdvdHRlbiB0byBwYXNzIGFuIGFyZ3VtZW50IHRvIHRoZSB0eXBlIGNoZWNrZXIgJyArICdjcmVhdG9yIChhcnJheU9mLCBpbnN0YW5jZU9mLCBvYmplY3RPZiwgb25lT2YsIG9uZU9mVHlwZSwgYW5kICcgKyAnc2hhcGUgYWxsIHJlcXVpcmUgYW4gYXJndW1lbnQpLicsIGNvbXBvbmVudE5hbWUgfHwgJ1JlYWN0IGNsYXNzJywgbG9jYXRpb24sIHR5cGVTcGVjTmFtZSwgdHlwZW9mIGVycm9yJDEpO1xuXG4gICAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXJyb3IkMSBpbnN0YW5jZW9mIEVycm9yICYmICEoZXJyb3IkMS5tZXNzYWdlIGluIGxvZ2dlZFR5cGVGYWlsdXJlcykpIHtcbiAgICAgICAgICAvLyBPbmx5IG1vbml0b3IgdGhpcyBmYWlsdXJlIG9uY2UgYmVjYXVzZSB0aGVyZSB0ZW5kcyB0byBiZSBhIGxvdCBvZiB0aGVcbiAgICAgICAgICAvLyBzYW1lIGVycm9yLlxuICAgICAgICAgIGxvZ2dlZFR5cGVGYWlsdXJlc1tlcnJvciQxLm1lc3NhZ2VdID0gdHJ1ZTtcbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KTtcblxuICAgICAgICAgIGVycm9yKCdGYWlsZWQgJXMgdHlwZTogJXMnLCBsb2NhdGlvbiwgZXJyb3IkMS5tZXNzYWdlKTtcblxuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KG51bGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZWxlbWVudCkge1xuICB7XG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHZhciBvd25lciA9IGVsZW1lbnQuX293bmVyO1xuICAgICAgdmFyIHN0YWNrID0gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGVsZW1lbnQudHlwZSwgZWxlbWVudC5fc291cmNlLCBvd25lciA/IG93bmVyLnR5cGUgOiBudWxsKTtcbiAgICAgIHNldEV4dHJhU3RhY2tGcmFtZShzdGFjayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldEV4dHJhU3RhY2tGcmFtZShudWxsKTtcbiAgICB9XG4gIH1cbn1cblxudmFyIHByb3BUeXBlc01pc3NwZWxsV2FybmluZ1Nob3duO1xuXG57XG4gIHByb3BUeXBlc01pc3NwZWxsV2FybmluZ1Nob3duID0gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGdldERlY2xhcmF0aW9uRXJyb3JBZGRlbmR1bSgpIHtcbiAgaWYgKFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQpIHtcbiAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKTtcblxuICAgIGlmIChuYW1lKSB7XG4gICAgICByZXR1cm4gJ1xcblxcbkNoZWNrIHRoZSByZW5kZXIgbWV0aG9kIG9mIGAnICsgbmFtZSArICdgLic7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuICcnO1xufVxuXG5mdW5jdGlvbiBnZXRTb3VyY2VJbmZvRXJyb3JBZGRlbmR1bShzb3VyY2UpIHtcbiAgaWYgKHNvdXJjZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgdmFyIGZpbGVOYW1lID0gc291cmNlLmZpbGVOYW1lLnJlcGxhY2UoL14uKltcXFxcXFwvXS8sICcnKTtcbiAgICB2YXIgbGluZU51bWJlciA9IHNvdXJjZS5saW5lTnVtYmVyO1xuICAgIHJldHVybiAnXFxuXFxuQ2hlY2sgeW91ciBjb2RlIGF0ICcgKyBmaWxlTmFtZSArICc6JyArIGxpbmVOdW1iZXIgKyAnLic7XG4gIH1cblxuICByZXR1cm4gJyc7XG59XG5cbmZ1bmN0aW9uIGdldFNvdXJjZUluZm9FcnJvckFkZGVuZHVtRm9yUHJvcHMoZWxlbWVudFByb3BzKSB7XG4gIGlmIChlbGVtZW50UHJvcHMgIT09IG51bGwgJiYgZWxlbWVudFByb3BzICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZ2V0U291cmNlSW5mb0Vycm9yQWRkZW5kdW0oZWxlbWVudFByb3BzLl9fc291cmNlKTtcbiAgfVxuXG4gIHJldHVybiAnJztcbn1cbi8qKlxuICogV2FybiBpZiB0aGVyZSdzIG5vIGtleSBleHBsaWNpdGx5IHNldCBvbiBkeW5hbWljIGFycmF5cyBvZiBjaGlsZHJlbiBvclxuICogb2JqZWN0IGtleXMgYXJlIG5vdCB2YWxpZC4gVGhpcyBhbGxvd3MgdXMgdG8ga2VlcCB0cmFjayBvZiBjaGlsZHJlbiBiZXR3ZWVuXG4gKiB1cGRhdGVzLlxuICovXG5cblxudmFyIG93bmVySGFzS2V5VXNlV2FybmluZyA9IHt9O1xuXG5mdW5jdGlvbiBnZXRDdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvKHBhcmVudFR5cGUpIHtcbiAgdmFyIGluZm8gPSBnZXREZWNsYXJhdGlvbkVycm9yQWRkZW5kdW0oKTtcblxuICBpZiAoIWluZm8pIHtcbiAgICB2YXIgcGFyZW50TmFtZSA9IHR5cGVvZiBwYXJlbnRUeXBlID09PSAnc3RyaW5nJyA/IHBhcmVudFR5cGUgOiBwYXJlbnRUeXBlLmRpc3BsYXlOYW1lIHx8IHBhcmVudFR5cGUubmFtZTtcblxuICAgIGlmIChwYXJlbnROYW1lKSB7XG4gICAgICBpbmZvID0gXCJcXG5cXG5DaGVjayB0aGUgdG9wLWxldmVsIHJlbmRlciBjYWxsIHVzaW5nIDxcIiArIHBhcmVudE5hbWUgKyBcIj4uXCI7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGluZm87XG59XG4vKipcbiAqIFdhcm4gaWYgdGhlIGVsZW1lbnQgZG9lc24ndCBoYXZlIGFuIGV4cGxpY2l0IGtleSBhc3NpZ25lZCB0byBpdC5cbiAqIFRoaXMgZWxlbWVudCBpcyBpbiBhbiBhcnJheS4gVGhlIGFycmF5IGNvdWxkIGdyb3cgYW5kIHNocmluayBvciBiZVxuICogcmVvcmRlcmVkLiBBbGwgY2hpbGRyZW4gdGhhdCBoYXZlbid0IGFscmVhZHkgYmVlbiB2YWxpZGF0ZWQgYXJlIHJlcXVpcmVkIHRvXG4gKiBoYXZlIGEgXCJrZXlcIiBwcm9wZXJ0eSBhc3NpZ25lZCB0byBpdC4gRXJyb3Igc3RhdHVzZXMgYXJlIGNhY2hlZCBzbyBhIHdhcm5pbmdcbiAqIHdpbGwgb25seSBiZSBzaG93biBvbmNlLlxuICpcbiAqIEBpbnRlcm5hbFxuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGVsZW1lbnQgRWxlbWVudCB0aGF0IHJlcXVpcmVzIGEga2V5LlxuICogQHBhcmFtIHsqfSBwYXJlbnRUeXBlIGVsZW1lbnQncyBwYXJlbnQncyB0eXBlLlxuICovXG5cblxuZnVuY3Rpb24gdmFsaWRhdGVFeHBsaWNpdEtleShlbGVtZW50LCBwYXJlbnRUeXBlKSB7XG4gIGlmICghZWxlbWVudC5fc3RvcmUgfHwgZWxlbWVudC5fc3RvcmUudmFsaWRhdGVkIHx8IGVsZW1lbnQua2V5ICE9IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBlbGVtZW50Ll9zdG9yZS52YWxpZGF0ZWQgPSB0cnVlO1xuICB2YXIgY3VycmVudENvbXBvbmVudEVycm9ySW5mbyA9IGdldEN1cnJlbnRDb21wb25lbnRFcnJvckluZm8ocGFyZW50VHlwZSk7XG5cbiAgaWYgKG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSA9IHRydWU7IC8vIFVzdWFsbHkgdGhlIGN1cnJlbnQgb3duZXIgaXMgdGhlIG9mZmVuZGVyLCBidXQgaWYgaXQgYWNjZXB0cyBjaGlsZHJlbiBhcyBhXG4gIC8vIHByb3BlcnR5LCBpdCBtYXkgYmUgdGhlIGNyZWF0b3Igb2YgdGhlIGNoaWxkIHRoYXQncyByZXNwb25zaWJsZSBmb3JcbiAgLy8gYXNzaWduaW5nIGl0IGEga2V5LlxuXG4gIHZhciBjaGlsZE93bmVyID0gJyc7XG5cbiAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5fb3duZXIgJiYgZWxlbWVudC5fb3duZXIgIT09IFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQpIHtcbiAgICAvLyBHaXZlIHRoZSBjb21wb25lbnQgdGhhdCBvcmlnaW5hbGx5IGNyZWF0ZWQgdGhpcyBjaGlsZC5cbiAgICBjaGlsZE93bmVyID0gXCIgSXQgd2FzIHBhc3NlZCBhIGNoaWxkIGZyb20gXCIgKyBnZXRDb21wb25lbnROYW1lKGVsZW1lbnQuX293bmVyLnR5cGUpICsgXCIuXCI7XG4gIH1cblxuICB7XG4gICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShlbGVtZW50KTtcblxuICAgIGVycm9yKCdFYWNoIGNoaWxkIGluIGEgbGlzdCBzaG91bGQgaGF2ZSBhIHVuaXF1ZSBcImtleVwiIHByb3AuJyArICclcyVzIFNlZSBodHRwczovL3JlYWN0anMub3JnL2xpbmsvd2FybmluZy1rZXlzIGZvciBtb3JlIGluZm9ybWF0aW9uLicsIGN1cnJlbnRDb21wb25lbnRFcnJvckluZm8sIGNoaWxkT3duZXIpO1xuXG4gICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShudWxsKTtcbiAgfVxufVxuLyoqXG4gKiBFbnN1cmUgdGhhdCBldmVyeSBlbGVtZW50IGVpdGhlciBpcyBwYXNzZWQgaW4gYSBzdGF0aWMgbG9jYXRpb24sIGluIGFuXG4gKiBhcnJheSB3aXRoIGFuIGV4cGxpY2l0IGtleXMgcHJvcGVydHkgZGVmaW5lZCwgb3IgaW4gYW4gb2JqZWN0IGxpdGVyYWxcbiAqIHdpdGggdmFsaWQga2V5IHByb3BlcnR5LlxuICpcbiAqIEBpbnRlcm5hbFxuICogQHBhcmFtIHtSZWFjdE5vZGV9IG5vZGUgU3RhdGljYWxseSBwYXNzZWQgY2hpbGQgb2YgYW55IHR5cGUuXG4gKiBAcGFyYW0geyp9IHBhcmVudFR5cGUgbm9kZSdzIHBhcmVudCdzIHR5cGUuXG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUNoaWxkS2V5cyhub2RlLCBwYXJlbnRUeXBlKSB7XG4gIGlmICh0eXBlb2Ygbm9kZSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBpZiAoQXJyYXkuaXNBcnJheShub2RlKSkge1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbm9kZS5sZW5ndGg7IGkrKykge1xuICAgICAgdmFyIGNoaWxkID0gbm9kZVtpXTtcblxuICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KGNoaWxkKSkge1xuICAgICAgICB2YWxpZGF0ZUV4cGxpY2l0S2V5KGNoaWxkLCBwYXJlbnRUeXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSBpZiAoaXNWYWxpZEVsZW1lbnQobm9kZSkpIHtcbiAgICAvLyBUaGlzIGVsZW1lbnQgd2FzIHBhc3NlZCBpbiBhIHZhbGlkIGxvY2F0aW9uLlxuICAgIGlmIChub2RlLl9zdG9yZSkge1xuICAgICAgbm9kZS5fc3RvcmUudmFsaWRhdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH0gZWxzZSBpZiAobm9kZSkge1xuICAgIHZhciBpdGVyYXRvckZuID0gZ2V0SXRlcmF0b3JGbihub2RlKTtcblxuICAgIGlmICh0eXBlb2YgaXRlcmF0b3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgLy8gRW50cnkgaXRlcmF0b3JzIHVzZWQgdG8gcHJvdmlkZSBpbXBsaWNpdCBrZXlzLFxuICAgICAgLy8gYnV0IG5vdyB3ZSBwcmludCBhIHNlcGFyYXRlIHdhcm5pbmcgZm9yIHRoZW0gbGF0ZXIuXG4gICAgICBpZiAoaXRlcmF0b3JGbiAhPT0gbm9kZS5lbnRyaWVzKSB7XG4gICAgICAgIHZhciBpdGVyYXRvciA9IGl0ZXJhdG9yRm4uY2FsbChub2RlKTtcbiAgICAgICAgdmFyIHN0ZXA7XG5cbiAgICAgICAgd2hpbGUgKCEoc3RlcCA9IGl0ZXJhdG9yLm5leHQoKSkuZG9uZSkge1xuICAgICAgICAgIGlmIChpc1ZhbGlkRWxlbWVudChzdGVwLnZhbHVlKSkge1xuICAgICAgICAgICAgdmFsaWRhdGVFeHBsaWNpdEtleShzdGVwLnZhbHVlLCBwYXJlbnRUeXBlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qKlxuICogR2l2ZW4gYW4gZWxlbWVudCwgdmFsaWRhdGUgdGhhdCBpdHMgcHJvcHMgZm9sbG93IHRoZSBwcm9wVHlwZXMgZGVmaW5pdGlvbixcbiAqIHByb3ZpZGVkIGJ5IHRoZSB0eXBlLlxuICpcbiAqIEBwYXJhbSB7UmVhY3RFbGVtZW50fSBlbGVtZW50XG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZVByb3BUeXBlcyhlbGVtZW50KSB7XG4gIHtcbiAgICB2YXIgdHlwZSA9IGVsZW1lbnQudHlwZTtcblxuICAgIGlmICh0eXBlID09PSBudWxsIHx8IHR5cGUgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB2YXIgcHJvcFR5cGVzO1xuXG4gICAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBwcm9wVHlwZXMgPSB0eXBlLnByb3BUeXBlcztcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiAodHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSB8fCAvLyBOb3RlOiBNZW1vIG9ubHkgY2hlY2tzIG91dGVyIHByb3BzIGhlcmUuXG4gICAgLy8gSW5uZXIgcHJvcHMgYXJlIGNoZWNrZWQgaW4gdGhlIHJlY29uY2lsZXIuXG4gICAgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTUVNT19UWVBFKSkge1xuICAgICAgcHJvcFR5cGVzID0gdHlwZS5wcm9wVHlwZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocHJvcFR5cGVzKSB7XG4gICAgICAvLyBJbnRlbnRpb25hbGx5IGluc2lkZSB0byBhdm9pZCB0cmlnZ2VyaW5nIGxhenkgaW5pdGlhbGl6ZXJzOlxuICAgICAgdmFyIG5hbWUgPSBnZXRDb21wb25lbnROYW1lKHR5cGUpO1xuICAgICAgY2hlY2tQcm9wVHlwZXMocHJvcFR5cGVzLCBlbGVtZW50LnByb3BzLCAncHJvcCcsIG5hbWUsIGVsZW1lbnQpO1xuICAgIH0gZWxzZSBpZiAodHlwZS5Qcm9wVHlwZXMgIT09IHVuZGVmaW5lZCAmJiAhcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24pIHtcbiAgICAgIHByb3BUeXBlc01pc3NwZWxsV2FybmluZ1Nob3duID0gdHJ1ZTsgLy8gSW50ZW50aW9uYWxseSBpbnNpZGUgdG8gYXZvaWQgdHJpZ2dlcmluZyBsYXp5IGluaXRpYWxpemVyczpcblxuICAgICAgdmFyIF9uYW1lID0gZ2V0Q29tcG9uZW50TmFtZSh0eXBlKTtcblxuICAgICAgZXJyb3IoJ0NvbXBvbmVudCAlcyBkZWNsYXJlZCBgUHJvcFR5cGVzYCBpbnN0ZWFkIG9mIGBwcm9wVHlwZXNgLiBEaWQgeW91IG1pc3NwZWxsIHRoZSBwcm9wZXJ0eSBhc3NpZ25tZW50PycsIF9uYW1lIHx8ICdVbmtub3duJyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB0eXBlLmdldERlZmF1bHRQcm9wcyA9PT0gJ2Z1bmN0aW9uJyAmJiAhdHlwZS5nZXREZWZhdWx0UHJvcHMuaXNSZWFjdENsYXNzQXBwcm92ZWQpIHtcbiAgICAgIGVycm9yKCdnZXREZWZhdWx0UHJvcHMgaXMgb25seSB1c2VkIG9uIGNsYXNzaWMgUmVhY3QuY3JlYXRlQ2xhc3MgJyArICdkZWZpbml0aW9ucy4gVXNlIGEgc3RhdGljIHByb3BlcnR5IG5hbWVkIGBkZWZhdWx0UHJvcHNgIGluc3RlYWQuJyk7XG4gICAgfVxuICB9XG59XG4vKipcbiAqIEdpdmVuIGEgZnJhZ21lbnQsIHZhbGlkYXRlIHRoYXQgaXQgY2FuIG9ubHkgYmUgcHJvdmlkZWQgd2l0aCBmcmFnbWVudCBwcm9wc1xuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGZyYWdtZW50XG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUZyYWdtZW50UHJvcHMoZnJhZ21lbnQpIHtcbiAge1xuICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZnJhZ21lbnQucHJvcHMpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIga2V5ID0ga2V5c1tpXTtcblxuICAgICAgaWYgKGtleSAhPT0gJ2NoaWxkcmVuJyAmJiBrZXkgIT09ICdrZXknKSB7XG4gICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZnJhZ21lbnQpO1xuXG4gICAgICAgIGVycm9yKCdJbnZhbGlkIHByb3AgYCVzYCBzdXBwbGllZCB0byBgUmVhY3QuRnJhZ21lbnRgLiAnICsgJ1JlYWN0LkZyYWdtZW50IGNhbiBvbmx5IGhhdmUgYGtleWAgYW5kIGBjaGlsZHJlbmAgcHJvcHMuJywga2V5KTtcblxuICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKG51bGwpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZnJhZ21lbnQucmVmICE9PSBudWxsKSB7XG4gICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKGZyYWdtZW50KTtcblxuICAgICAgZXJyb3IoJ0ludmFsaWQgYXR0cmlidXRlIGByZWZgIHN1cHBsaWVkIHRvIGBSZWFjdC5GcmFnbWVudGAuJyk7XG5cbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEobnVsbCk7XG4gICAgfVxuICB9XG59XG5mdW5jdGlvbiBjcmVhdGVFbGVtZW50V2l0aFZhbGlkYXRpb24odHlwZSwgcHJvcHMsIGNoaWxkcmVuKSB7XG4gIHZhciB2YWxpZFR5cGUgPSBpc1ZhbGlkRWxlbWVudFR5cGUodHlwZSk7IC8vIFdlIHdhcm4gaW4gdGhpcyBjYXNlIGJ1dCBkb24ndCB0aHJvdy4gV2UgZXhwZWN0IHRoZSBlbGVtZW50IGNyZWF0aW9uIHRvXG4gIC8vIHN1Y2NlZWQgYW5kIHRoZXJlIHdpbGwgbGlrZWx5IGJlIGVycm9ycyBpbiByZW5kZXIuXG5cbiAgaWYgKCF2YWxpZFR5cGUpIHtcbiAgICB2YXIgaW5mbyA9ICcnO1xuXG4gICAgaWYgKHR5cGUgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgdHlwZSAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyh0eXBlKS5sZW5ndGggPT09IDApIHtcbiAgICAgIGluZm8gKz0gJyBZb3UgbGlrZWx5IGZvcmdvdCB0byBleHBvcnQgeW91ciBjb21wb25lbnQgZnJvbSB0aGUgZmlsZSAnICsgXCJpdCdzIGRlZmluZWQgaW4sIG9yIHlvdSBtaWdodCBoYXZlIG1peGVkIHVwIGRlZmF1bHQgYW5kIG5hbWVkIGltcG9ydHMuXCI7XG4gICAgfVxuXG4gICAgdmFyIHNvdXJjZUluZm8gPSBnZXRTb3VyY2VJbmZvRXJyb3JBZGRlbmR1bUZvclByb3BzKHByb3BzKTtcblxuICAgIGlmIChzb3VyY2VJbmZvKSB7XG4gICAgICBpbmZvICs9IHNvdXJjZUluZm87XG4gICAgfSBlbHNlIHtcbiAgICAgIGluZm8gKz0gZ2V0RGVjbGFyYXRpb25FcnJvckFkZGVuZHVtKCk7XG4gICAgfVxuXG4gICAgdmFyIHR5cGVTdHJpbmc7XG5cbiAgICBpZiAodHlwZSA9PT0gbnVsbCkge1xuICAgICAgdHlwZVN0cmluZyA9ICdudWxsJztcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodHlwZSkpIHtcbiAgICAgIHR5cGVTdHJpbmcgPSAnYXJyYXknO1xuICAgIH0gZWxzZSBpZiAodHlwZSAhPT0gdW5kZWZpbmVkICYmIHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0VMRU1FTlRfVFlQRSkge1xuICAgICAgdHlwZVN0cmluZyA9IFwiPFwiICsgKGdldENvbXBvbmVudE5hbWUodHlwZS50eXBlKSB8fCAnVW5rbm93bicpICsgXCIgLz5cIjtcbiAgICAgIGluZm8gPSAnIERpZCB5b3UgYWNjaWRlbnRhbGx5IGV4cG9ydCBhIEpTWCBsaXRlcmFsIGluc3RlYWQgb2YgYSBjb21wb25lbnQ/JztcbiAgICB9IGVsc2Uge1xuICAgICAgdHlwZVN0cmluZyA9IHR5cGVvZiB0eXBlO1xuICAgIH1cblxuICAgIHtcbiAgICAgIGVycm9yKCdSZWFjdC5jcmVhdGVFbGVtZW50OiB0eXBlIGlzIGludmFsaWQgLS0gZXhwZWN0ZWQgYSBzdHJpbmcgKGZvciAnICsgJ2J1aWx0LWluIGNvbXBvbmVudHMpIG9yIGEgY2xhc3MvZnVuY3Rpb24gKGZvciBjb21wb3NpdGUgJyArICdjb21wb25lbnRzKSBidXQgZ290OiAlcy4lcycsIHR5cGVTdHJpbmcsIGluZm8pO1xuICAgIH1cbiAgfVxuXG4gIHZhciBlbGVtZW50ID0gY3JlYXRlRWxlbWVudC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOyAvLyBUaGUgcmVzdWx0IGNhbiBiZSBudWxsaXNoIGlmIGEgbW9jayBvciBhIGN1c3RvbSBmdW5jdGlvbiBpcyB1c2VkLlxuICAvLyBUT0RPOiBEcm9wIHRoaXMgd2hlbiB0aGVzZSBhcmUgbm8gbG9uZ2VyIGFsbG93ZWQgYXMgdGhlIHR5cGUgYXJndW1lbnQuXG5cbiAgaWYgKGVsZW1lbnQgPT0gbnVsbCkge1xuICAgIHJldHVybiBlbGVtZW50O1xuICB9IC8vIFNraXAga2V5IHdhcm5pbmcgaWYgdGhlIHR5cGUgaXNuJ3QgdmFsaWQgc2luY2Ugb3VyIGtleSB2YWxpZGF0aW9uIGxvZ2ljXG4gIC8vIGRvZXNuJ3QgZXhwZWN0IGEgbm9uLXN0cmluZy9mdW5jdGlvbiB0eXBlIGFuZCBjYW4gdGhyb3cgY29uZnVzaW5nIGVycm9ycy5cbiAgLy8gV2UgZG9uJ3Qgd2FudCBleGNlcHRpb24gYmVoYXZpb3IgdG8gZGlmZmVyIGJldHdlZW4gZGV2IGFuZCBwcm9kLlxuICAvLyAoUmVuZGVyaW5nIHdpbGwgdGhyb3cgd2l0aCBhIGhlbHBmdWwgbWVzc2FnZSBhbmQgYXMgc29vbiBhcyB0aGUgdHlwZSBpc1xuICAvLyBmaXhlZCwgdGhlIGtleSB3YXJuaW5ncyB3aWxsIGFwcGVhci4pXG5cblxuICBpZiAodmFsaWRUeXBlKSB7XG4gICAgZm9yICh2YXIgaSA9IDI7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhbGlkYXRlQ2hpbGRLZXlzKGFyZ3VtZW50c1tpXSwgdHlwZSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHR5cGUgPT09IGV4cG9ydHMuRnJhZ21lbnQpIHtcbiAgICB2YWxpZGF0ZUZyYWdtZW50UHJvcHMoZWxlbWVudCk7XG4gIH0gZWxzZSB7XG4gICAgdmFsaWRhdGVQcm9wVHlwZXMoZWxlbWVudCk7XG4gIH1cblxuICByZXR1cm4gZWxlbWVudDtcbn1cbnZhciBkaWRXYXJuQWJvdXREZXByZWNhdGVkQ3JlYXRlRmFjdG9yeSA9IGZhbHNlO1xuZnVuY3Rpb24gY3JlYXRlRmFjdG9yeVdpdGhWYWxpZGF0aW9uKHR5cGUpIHtcbiAgdmFyIHZhbGlkYXRlZEZhY3RvcnkgPSBjcmVhdGVFbGVtZW50V2l0aFZhbGlkYXRpb24uYmluZChudWxsLCB0eXBlKTtcbiAgdmFsaWRhdGVkRmFjdG9yeS50eXBlID0gdHlwZTtcblxuICB7XG4gICAgaWYgKCFkaWRXYXJuQWJvdXREZXByZWNhdGVkQ3JlYXRlRmFjdG9yeSkge1xuICAgICAgZGlkV2FybkFib3V0RGVwcmVjYXRlZENyZWF0ZUZhY3RvcnkgPSB0cnVlO1xuXG4gICAgICB3YXJuKCdSZWFjdC5jcmVhdGVGYWN0b3J5KCkgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluICcgKyAnYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gQ29uc2lkZXIgdXNpbmcgSlNYICcgKyAnb3IgdXNlIFJlYWN0LmNyZWF0ZUVsZW1lbnQoKSBkaXJlY3RseSBpbnN0ZWFkLicpO1xuICAgIH0gLy8gTGVnYWN5IGhvb2s6IHJlbW92ZSBpdFxuXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodmFsaWRhdGVkRmFjdG9yeSwgJ3R5cGUnLCB7XG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICB3YXJuKCdGYWN0b3J5LnR5cGUgaXMgZGVwcmVjYXRlZC4gQWNjZXNzIHRoZSBjbGFzcyBkaXJlY3RseSAnICsgJ2JlZm9yZSBwYXNzaW5nIGl0IHRvIGNyZWF0ZUZhY3RvcnkuJyk7XG5cbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsICd0eXBlJywge1xuICAgICAgICAgIHZhbHVlOiB0eXBlXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdHlwZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiB2YWxpZGF0ZWRGYWN0b3J5O1xufVxuZnVuY3Rpb24gY2xvbmVFbGVtZW50V2l0aFZhbGlkYXRpb24oZWxlbWVudCwgcHJvcHMsIGNoaWxkcmVuKSB7XG4gIHZhciBuZXdFbGVtZW50ID0gY2xvbmVFbGVtZW50LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG5cbiAgZm9yICh2YXIgaSA9IDI7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YWxpZGF0ZUNoaWxkS2V5cyhhcmd1bWVudHNbaV0sIG5ld0VsZW1lbnQudHlwZSk7XG4gIH1cblxuICB2YWxpZGF0ZVByb3BUeXBlcyhuZXdFbGVtZW50KTtcbiAgcmV0dXJuIG5ld0VsZW1lbnQ7XG59XG5cbntcblxuICB0cnkge1xuICAgIHZhciBmcm96ZW5PYmplY3QgPSBPYmplY3QuZnJlZXplKHt9KTtcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBuby1uZXcgKi9cblxuICAgIG5ldyBNYXAoW1tmcm96ZW5PYmplY3QsIG51bGxdXSk7XG4gICAgbmV3IFNldChbZnJvemVuT2JqZWN0XSk7XG4gICAgLyogZXNsaW50LWVuYWJsZSBuby1uZXcgKi9cbiAgfSBjYXRjaCAoZSkge1xuICB9XG59XG5cbnZhciBjcmVhdGVFbGVtZW50JDEgPSAgY3JlYXRlRWxlbWVudFdpdGhWYWxpZGF0aW9uIDtcbnZhciBjbG9uZUVsZW1lbnQkMSA9ICBjbG9uZUVsZW1lbnRXaXRoVmFsaWRhdGlvbiA7XG52YXIgY3JlYXRlRmFjdG9yeSA9ICBjcmVhdGVGYWN0b3J5V2l0aFZhbGlkYXRpb24gO1xudmFyIENoaWxkcmVuID0ge1xuICBtYXA6IG1hcENoaWxkcmVuLFxuICBmb3JFYWNoOiBmb3JFYWNoQ2hpbGRyZW4sXG4gIGNvdW50OiBjb3VudENoaWxkcmVuLFxuICB0b0FycmF5OiB0b0FycmF5LFxuICBvbmx5OiBvbmx5Q2hpbGRcbn07XG5cbmV4cG9ydHMuQ2hpbGRyZW4gPSBDaGlsZHJlbjtcbmV4cG9ydHMuQ29tcG9uZW50ID0gQ29tcG9uZW50O1xuZXhwb3J0cy5QdXJlQ29tcG9uZW50ID0gUHVyZUNvbXBvbmVudDtcbmV4cG9ydHMuX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQgPSBSZWFjdFNoYXJlZEludGVybmFscztcbmV4cG9ydHMuY2xvbmVFbGVtZW50ID0gY2xvbmVFbGVtZW50JDE7XG5leHBvcnRzLmNyZWF0ZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0O1xuZXhwb3J0cy5jcmVhdGVFbGVtZW50ID0gY3JlYXRlRWxlbWVudCQxO1xuZXhwb3J0cy5jcmVhdGVGYWN0b3J5ID0gY3JlYXRlRmFjdG9yeTtcbmV4cG9ydHMuY3JlYXRlUmVmID0gY3JlYXRlUmVmO1xuZXhwb3J0cy5mb3J3YXJkUmVmID0gZm9yd2FyZFJlZjtcbmV4cG9ydHMuaXNWYWxpZEVsZW1lbnQgPSBpc1ZhbGlkRWxlbWVudDtcbmV4cG9ydHMubGF6eSA9IGxhenk7XG5leHBvcnRzLm1lbW8gPSBtZW1vO1xuZXhwb3J0cy51c2VDYWxsYmFjayA9IHVzZUNhbGxiYWNrO1xuZXhwb3J0cy51c2VDb250ZXh0ID0gdXNlQ29udGV4dDtcbmV4cG9ydHMudXNlRGVidWdWYWx1ZSA9IHVzZURlYnVnVmFsdWU7XG5leHBvcnRzLnVzZUVmZmVjdCA9IHVzZUVmZmVjdDtcbmV4cG9ydHMudXNlSW1wZXJhdGl2ZUhhbmRsZSA9IHVzZUltcGVyYXRpdmVIYW5kbGU7XG5leHBvcnRzLnVzZUxheW91dEVmZmVjdCA9IHVzZUxheW91dEVmZmVjdDtcbmV4cG9ydHMudXNlTWVtbyA9IHVzZU1lbW87XG5leHBvcnRzLnVzZVJlZHVjZXIgPSB1c2VSZWR1Y2VyO1xuZXhwb3J0cy51c2VSZWYgPSB1c2VSZWY7XG5leHBvcnRzLnVzZVN0YXRlID0gdXNlU3RhdGU7XG5leHBvcnRzLnZlcnNpb24gPSBSZWFjdFZlcnNpb247XG4gIH0pKCk7XG59XG4iLCIndXNlIHN0cmljdCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QucHJvZHVjdGlvbi5taW4uanMnKTtcbn0gZWxzZSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QuZGV2ZWxvcG1lbnQuanMnKTtcbn1cbiIsIid1c2Ugc3RyaWN0JztcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Nqcy9yZWFjdC1qc3gtZGV2LXJ1bnRpbWUucHJvZHVjdGlvbi5taW4uanMnKTtcbn0gZWxzZSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QtanN4LWRldi1ydW50aW1lLmRldmVsb3BtZW50LmpzJyk7XG59XG4iLCIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxNC1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5cbnZhciBydW50aW1lID0gKGZ1bmN0aW9uIChleHBvcnRzKSB7XG4gIFwidXNlIHN0cmljdFwiO1xuXG4gIHZhciBPcCA9IE9iamVjdC5wcm90b3R5cGU7XG4gIHZhciBoYXNPd24gPSBPcC5oYXNPd25Qcm9wZXJ0eTtcbiAgdmFyIHVuZGVmaW5lZDsgLy8gTW9yZSBjb21wcmVzc2libGUgdGhhbiB2b2lkIDAuXG4gIHZhciAkU3ltYm9sID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiID8gU3ltYm9sIDoge307XG4gIHZhciBpdGVyYXRvclN5bWJvbCA9ICRTeW1ib2wuaXRlcmF0b3IgfHwgXCJAQGl0ZXJhdG9yXCI7XG4gIHZhciBhc3luY0l0ZXJhdG9yU3ltYm9sID0gJFN5bWJvbC5hc3luY0l0ZXJhdG9yIHx8IFwiQEBhc3luY0l0ZXJhdG9yXCI7XG4gIHZhciB0b1N0cmluZ1RhZ1N5bWJvbCA9ICRTeW1ib2wudG9TdHJpbmdUYWcgfHwgXCJAQHRvU3RyaW5nVGFnXCI7XG5cbiAgZnVuY3Rpb24gZGVmaW5lKG9iaiwga2V5LCB2YWx1ZSkge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwge1xuICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgfSk7XG4gICAgcmV0dXJuIG9ialtrZXldO1xuICB9XG4gIHRyeSB7XG4gICAgLy8gSUUgOCBoYXMgYSBicm9rZW4gT2JqZWN0LmRlZmluZVByb3BlcnR5IHRoYXQgb25seSB3b3JrcyBvbiBET00gb2JqZWN0cy5cbiAgICBkZWZpbmUoe30sIFwiXCIpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICBkZWZpbmUgPSBmdW5jdGlvbihvYmosIGtleSwgdmFsdWUpIHtcbiAgICAgIHJldHVybiBvYmpba2V5XSA9IHZhbHVlO1xuICAgIH07XG4gIH1cblxuICBmdW5jdGlvbiB3cmFwKGlubmVyRm4sIG91dGVyRm4sIHNlbGYsIHRyeUxvY3NMaXN0KSB7XG4gICAgLy8gSWYgb3V0ZXJGbiBwcm92aWRlZCBhbmQgb3V0ZXJGbi5wcm90b3R5cGUgaXMgYSBHZW5lcmF0b3IsIHRoZW4gb3V0ZXJGbi5wcm90b3R5cGUgaW5zdGFuY2VvZiBHZW5lcmF0b3IuXG4gICAgdmFyIHByb3RvR2VuZXJhdG9yID0gb3V0ZXJGbiAmJiBvdXRlckZuLnByb3RvdHlwZSBpbnN0YW5jZW9mIEdlbmVyYXRvciA/IG91dGVyRm4gOiBHZW5lcmF0b3I7XG4gICAgdmFyIGdlbmVyYXRvciA9IE9iamVjdC5jcmVhdGUocHJvdG9HZW5lcmF0b3IucHJvdG90eXBlKTtcbiAgICB2YXIgY29udGV4dCA9IG5ldyBDb250ZXh0KHRyeUxvY3NMaXN0IHx8IFtdKTtcblxuICAgIC8vIFRoZSAuX2ludm9rZSBtZXRob2QgdW5pZmllcyB0aGUgaW1wbGVtZW50YXRpb25zIG9mIHRoZSAubmV4dCxcbiAgICAvLyAudGhyb3csIGFuZCAucmV0dXJuIG1ldGhvZHMuXG4gICAgZ2VuZXJhdG9yLl9pbnZva2UgPSBtYWtlSW52b2tlTWV0aG9kKGlubmVyRm4sIHNlbGYsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGdlbmVyYXRvcjtcbiAgfVxuICBleHBvcnRzLndyYXAgPSB3cmFwO1xuXG4gIC8vIFRyeS9jYXRjaCBoZWxwZXIgdG8gbWluaW1pemUgZGVvcHRpbWl6YXRpb25zLiBSZXR1cm5zIGEgY29tcGxldGlvblxuICAvLyByZWNvcmQgbGlrZSBjb250ZXh0LnRyeUVudHJpZXNbaV0uY29tcGxldGlvbi4gVGhpcyBpbnRlcmZhY2UgY291bGRcbiAgLy8gaGF2ZSBiZWVuIChhbmQgd2FzIHByZXZpb3VzbHkpIGRlc2lnbmVkIHRvIHRha2UgYSBjbG9zdXJlIHRvIGJlXG4gIC8vIGludm9rZWQgd2l0aG91dCBhcmd1bWVudHMsIGJ1dCBpbiBhbGwgdGhlIGNhc2VzIHdlIGNhcmUgYWJvdXQgd2VcbiAgLy8gYWxyZWFkeSBoYXZlIGFuIGV4aXN0aW5nIG1ldGhvZCB3ZSB3YW50IHRvIGNhbGwsIHNvIHRoZXJlJ3Mgbm8gbmVlZFxuICAvLyB0byBjcmVhdGUgYSBuZXcgZnVuY3Rpb24gb2JqZWN0LiBXZSBjYW4gZXZlbiBnZXQgYXdheSB3aXRoIGFzc3VtaW5nXG4gIC8vIHRoZSBtZXRob2QgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQsIHNpbmNlIHRoYXQgaGFwcGVucyB0byBiZSB0cnVlXG4gIC8vIGluIGV2ZXJ5IGNhc2UsIHNvIHdlIGRvbid0IGhhdmUgdG8gdG91Y2ggdGhlIGFyZ3VtZW50cyBvYmplY3QuIFRoZVxuICAvLyBvbmx5IGFkZGl0aW9uYWwgYWxsb2NhdGlvbiByZXF1aXJlZCBpcyB0aGUgY29tcGxldGlvbiByZWNvcmQsIHdoaWNoXG4gIC8vIGhhcyBhIHN0YWJsZSBzaGFwZSBhbmQgc28gaG9wZWZ1bGx5IHNob3VsZCBiZSBjaGVhcCB0byBhbGxvY2F0ZS5cbiAgZnVuY3Rpb24gdHJ5Q2F0Y2goZm4sIG9iaiwgYXJnKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB7IHR5cGU6IFwibm9ybWFsXCIsIGFyZzogZm4uY2FsbChvYmosIGFyZykgfTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiB7IHR5cGU6IFwidGhyb3dcIiwgYXJnOiBlcnIgfTtcbiAgICB9XG4gIH1cblxuICB2YXIgR2VuU3RhdGVTdXNwZW5kZWRTdGFydCA9IFwic3VzcGVuZGVkU3RhcnRcIjtcbiAgdmFyIEdlblN0YXRlU3VzcGVuZGVkWWllbGQgPSBcInN1c3BlbmRlZFlpZWxkXCI7XG4gIHZhciBHZW5TdGF0ZUV4ZWN1dGluZyA9IFwiZXhlY3V0aW5nXCI7XG4gIHZhciBHZW5TdGF0ZUNvbXBsZXRlZCA9IFwiY29tcGxldGVkXCI7XG5cbiAgLy8gUmV0dXJuaW5nIHRoaXMgb2JqZWN0IGZyb20gdGhlIGlubmVyRm4gaGFzIHRoZSBzYW1lIGVmZmVjdCBhc1xuICAvLyBicmVha2luZyBvdXQgb2YgdGhlIGRpc3BhdGNoIHN3aXRjaCBzdGF0ZW1lbnQuXG4gIHZhciBDb250aW51ZVNlbnRpbmVsID0ge307XG5cbiAgLy8gRHVtbXkgY29uc3RydWN0b3IgZnVuY3Rpb25zIHRoYXQgd2UgdXNlIGFzIHRoZSAuY29uc3RydWN0b3IgYW5kXG4gIC8vIC5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgcHJvcGVydGllcyBmb3IgZnVuY3Rpb25zIHRoYXQgcmV0dXJuIEdlbmVyYXRvclxuICAvLyBvYmplY3RzLiBGb3IgZnVsbCBzcGVjIGNvbXBsaWFuY2UsIHlvdSBtYXkgd2lzaCB0byBjb25maWd1cmUgeW91clxuICAvLyBtaW5pZmllciBub3QgdG8gbWFuZ2xlIHRoZSBuYW1lcyBvZiB0aGVzZSB0d28gZnVuY3Rpb25zLlxuICBmdW5jdGlvbiBHZW5lcmF0b3IoKSB7fVxuICBmdW5jdGlvbiBHZW5lcmF0b3JGdW5jdGlvbigpIHt9XG4gIGZ1bmN0aW9uIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlKCkge31cblxuICAvLyBUaGlzIGlzIGEgcG9seWZpbGwgZm9yICVJdGVyYXRvclByb3RvdHlwZSUgZm9yIGVudmlyb25tZW50cyB0aGF0XG4gIC8vIGRvbid0IG5hdGl2ZWx5IHN1cHBvcnQgaXQuXG4gIHZhciBJdGVyYXRvclByb3RvdHlwZSA9IHt9O1xuICBJdGVyYXRvclByb3RvdHlwZVtpdGVyYXRvclN5bWJvbF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgdmFyIGdldFByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mO1xuICB2YXIgTmF0aXZlSXRlcmF0b3JQcm90b3R5cGUgPSBnZXRQcm90byAmJiBnZXRQcm90byhnZXRQcm90byh2YWx1ZXMoW10pKSk7XG4gIGlmIChOYXRpdmVJdGVyYXRvclByb3RvdHlwZSAmJlxuICAgICAgTmF0aXZlSXRlcmF0b3JQcm90b3R5cGUgIT09IE9wICYmXG4gICAgICBoYXNPd24uY2FsbChOYXRpdmVJdGVyYXRvclByb3RvdHlwZSwgaXRlcmF0b3JTeW1ib2wpKSB7XG4gICAgLy8gVGhpcyBlbnZpcm9ubWVudCBoYXMgYSBuYXRpdmUgJUl0ZXJhdG9yUHJvdG90eXBlJTsgdXNlIGl0IGluc3RlYWRcbiAgICAvLyBvZiB0aGUgcG9seWZpbGwuXG4gICAgSXRlcmF0b3JQcm90b3R5cGUgPSBOYXRpdmVJdGVyYXRvclByb3RvdHlwZTtcbiAgfVxuXG4gIHZhciBHcCA9IEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLnByb3RvdHlwZSA9XG4gICAgR2VuZXJhdG9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoSXRlcmF0b3JQcm90b3R5cGUpO1xuICBHZW5lcmF0b3JGdW5jdGlvbi5wcm90b3R5cGUgPSBHcC5jb25zdHJ1Y3RvciA9IEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlO1xuICBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IEdlbmVyYXRvckZ1bmN0aW9uO1xuICBHZW5lcmF0b3JGdW5jdGlvbi5kaXNwbGF5TmFtZSA9IGRlZmluZShcbiAgICBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSxcbiAgICB0b1N0cmluZ1RhZ1N5bWJvbCxcbiAgICBcIkdlbmVyYXRvckZ1bmN0aW9uXCJcbiAgKTtcblxuICAvLyBIZWxwZXIgZm9yIGRlZmluaW5nIHRoZSAubmV4dCwgLnRocm93LCBhbmQgLnJldHVybiBtZXRob2RzIG9mIHRoZVxuICAvLyBJdGVyYXRvciBpbnRlcmZhY2UgaW4gdGVybXMgb2YgYSBzaW5nbGUgLl9pbnZva2UgbWV0aG9kLlxuICBmdW5jdGlvbiBkZWZpbmVJdGVyYXRvck1ldGhvZHMocHJvdG90eXBlKSB7XG4gICAgW1wibmV4dFwiLCBcInRocm93XCIsIFwicmV0dXJuXCJdLmZvckVhY2goZnVuY3Rpb24obWV0aG9kKSB7XG4gICAgICBkZWZpbmUocHJvdG90eXBlLCBtZXRob2QsIGZ1bmN0aW9uKGFyZykge1xuICAgICAgICByZXR1cm4gdGhpcy5faW52b2tlKG1ldGhvZCwgYXJnKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0cy5pc0dlbmVyYXRvckZ1bmN0aW9uID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgdmFyIGN0b3IgPSB0eXBlb2YgZ2VuRnVuID09PSBcImZ1bmN0aW9uXCIgJiYgZ2VuRnVuLmNvbnN0cnVjdG9yO1xuICAgIHJldHVybiBjdG9yXG4gICAgICA/IGN0b3IgPT09IEdlbmVyYXRvckZ1bmN0aW9uIHx8XG4gICAgICAgIC8vIEZvciB0aGUgbmF0aXZlIEdlbmVyYXRvckZ1bmN0aW9uIGNvbnN0cnVjdG9yLCB0aGUgYmVzdCB3ZSBjYW5cbiAgICAgICAgLy8gZG8gaXMgdG8gY2hlY2sgaXRzIC5uYW1lIHByb3BlcnR5LlxuICAgICAgICAoY3Rvci5kaXNwbGF5TmFtZSB8fCBjdG9yLm5hbWUpID09PSBcIkdlbmVyYXRvckZ1bmN0aW9uXCJcbiAgICAgIDogZmFsc2U7XG4gIH07XG5cbiAgZXhwb3J0cy5tYXJrID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgaWYgKE9iamVjdC5zZXRQcm90b3R5cGVPZikge1xuICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKGdlbkZ1biwgR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBnZW5GdW4uX19wcm90b19fID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gICAgICBkZWZpbmUoZ2VuRnVuLCB0b1N0cmluZ1RhZ1N5bWJvbCwgXCJHZW5lcmF0b3JGdW5jdGlvblwiKTtcbiAgICB9XG4gICAgZ2VuRnVuLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoR3ApO1xuICAgIHJldHVybiBnZW5GdW47XG4gIH07XG5cbiAgLy8gV2l0aGluIHRoZSBib2R5IG9mIGFueSBhc3luYyBmdW5jdGlvbiwgYGF3YWl0IHhgIGlzIHRyYW5zZm9ybWVkIHRvXG4gIC8vIGB5aWVsZCByZWdlbmVyYXRvclJ1bnRpbWUuYXdyYXAoeClgLCBzbyB0aGF0IHRoZSBydW50aW1lIGNhbiB0ZXN0XG4gIC8vIGBoYXNPd24uY2FsbCh2YWx1ZSwgXCJfX2F3YWl0XCIpYCB0byBkZXRlcm1pbmUgaWYgdGhlIHlpZWxkZWQgdmFsdWUgaXNcbiAgLy8gbWVhbnQgdG8gYmUgYXdhaXRlZC5cbiAgZXhwb3J0cy5hd3JhcCA9IGZ1bmN0aW9uKGFyZykge1xuICAgIHJldHVybiB7IF9fYXdhaXQ6IGFyZyB9O1xuICB9O1xuXG4gIGZ1bmN0aW9uIEFzeW5jSXRlcmF0b3IoZ2VuZXJhdG9yLCBQcm9taXNlSW1wbCkge1xuICAgIGZ1bmN0aW9uIGludm9rZShtZXRob2QsIGFyZywgcmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICB2YXIgcmVjb3JkID0gdHJ5Q2F0Y2goZ2VuZXJhdG9yW21ldGhvZF0sIGdlbmVyYXRvciwgYXJnKTtcbiAgICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgIHJlamVjdChyZWNvcmQuYXJnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZhciByZXN1bHQgPSByZWNvcmQuYXJnO1xuICAgICAgICB2YXIgdmFsdWUgPSByZXN1bHQudmFsdWU7XG4gICAgICAgIGlmICh2YWx1ZSAmJlxuICAgICAgICAgICAgdHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiICYmXG4gICAgICAgICAgICBoYXNPd24uY2FsbCh2YWx1ZSwgXCJfX2F3YWl0XCIpKSB7XG4gICAgICAgICAgcmV0dXJuIFByb21pc2VJbXBsLnJlc29sdmUodmFsdWUuX19hd2FpdCkudGhlbihmdW5jdGlvbih2YWx1ZSkge1xuICAgICAgICAgICAgaW52b2tlKFwibmV4dFwiLCB2YWx1ZSwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgICB9LCBmdW5jdGlvbihlcnIpIHtcbiAgICAgICAgICAgIGludm9rZShcInRocm93XCIsIGVyciwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQcm9taXNlSW1wbC5yZXNvbHZlKHZhbHVlKS50aGVuKGZ1bmN0aW9uKHVud3JhcHBlZCkge1xuICAgICAgICAgIC8vIFdoZW4gYSB5aWVsZGVkIFByb21pc2UgaXMgcmVzb2x2ZWQsIGl0cyBmaW5hbCB2YWx1ZSBiZWNvbWVzXG4gICAgICAgICAgLy8gdGhlIC52YWx1ZSBvZiB0aGUgUHJvbWlzZTx7dmFsdWUsZG9uZX0+IHJlc3VsdCBmb3IgdGhlXG4gICAgICAgICAgLy8gY3VycmVudCBpdGVyYXRpb24uXG4gICAgICAgICAgcmVzdWx0LnZhbHVlID0gdW53cmFwcGVkO1xuICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgICAgfSwgZnVuY3Rpb24oZXJyb3IpIHtcbiAgICAgICAgICAvLyBJZiBhIHJlamVjdGVkIFByb21pc2Ugd2FzIHlpZWxkZWQsIHRocm93IHRoZSByZWplY3Rpb24gYmFja1xuICAgICAgICAgIC8vIGludG8gdGhlIGFzeW5jIGdlbmVyYXRvciBmdW5jdGlvbiBzbyBpdCBjYW4gYmUgaGFuZGxlZCB0aGVyZS5cbiAgICAgICAgICByZXR1cm4gaW52b2tlKFwidGhyb3dcIiwgZXJyb3IsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhciBwcmV2aW91c1Byb21pc2U7XG5cbiAgICBmdW5jdGlvbiBlbnF1ZXVlKG1ldGhvZCwgYXJnKSB7XG4gICAgICBmdW5jdGlvbiBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZygpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlSW1wbChmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgICBpbnZva2UobWV0aG9kLCBhcmcsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcHJldmlvdXNQcm9taXNlID1cbiAgICAgICAgLy8gSWYgZW5xdWV1ZSBoYXMgYmVlbiBjYWxsZWQgYmVmb3JlLCB0aGVuIHdlIHdhbnQgdG8gd2FpdCB1bnRpbFxuICAgICAgICAvLyBhbGwgcHJldmlvdXMgUHJvbWlzZXMgaGF2ZSBiZWVuIHJlc29sdmVkIGJlZm9yZSBjYWxsaW5nIGludm9rZSxcbiAgICAgICAgLy8gc28gdGhhdCByZXN1bHRzIGFyZSBhbHdheXMgZGVsaXZlcmVkIGluIHRoZSBjb3JyZWN0IG9yZGVyLiBJZlxuICAgICAgICAvLyBlbnF1ZXVlIGhhcyBub3QgYmVlbiBjYWxsZWQgYmVmb3JlLCB0aGVuIGl0IGlzIGltcG9ydGFudCB0b1xuICAgICAgICAvLyBjYWxsIGludm9rZSBpbW1lZGlhdGVseSwgd2l0aG91dCB3YWl0aW5nIG9uIGEgY2FsbGJhY2sgdG8gZmlyZSxcbiAgICAgICAgLy8gc28gdGhhdCB0aGUgYXN5bmMgZ2VuZXJhdG9yIGZ1bmN0aW9uIGhhcyB0aGUgb3Bwb3J0dW5pdHkgdG8gZG9cbiAgICAgICAgLy8gYW55IG5lY2Vzc2FyeSBzZXR1cCBpbiBhIHByZWRpY3RhYmxlIHdheS4gVGhpcyBwcmVkaWN0YWJpbGl0eVxuICAgICAgICAvLyBpcyB3aHkgdGhlIFByb21pc2UgY29uc3RydWN0b3Igc3luY2hyb25vdXNseSBpbnZva2VzIGl0c1xuICAgICAgICAvLyBleGVjdXRvciBjYWxsYmFjaywgYW5kIHdoeSBhc3luYyBmdW5jdGlvbnMgc3luY2hyb25vdXNseVxuICAgICAgICAvLyBleGVjdXRlIGNvZGUgYmVmb3JlIHRoZSBmaXJzdCBhd2FpdC4gU2luY2Ugd2UgaW1wbGVtZW50IHNpbXBsZVxuICAgICAgICAvLyBhc3luYyBmdW5jdGlvbnMgaW4gdGVybXMgb2YgYXN5bmMgZ2VuZXJhdG9ycywgaXQgaXMgZXNwZWNpYWxseVxuICAgICAgICAvLyBpbXBvcnRhbnQgdG8gZ2V0IHRoaXMgcmlnaHQsIGV2ZW4gdGhvdWdoIGl0IHJlcXVpcmVzIGNhcmUuXG4gICAgICAgIHByZXZpb3VzUHJvbWlzZSA/IHByZXZpb3VzUHJvbWlzZS50aGVuKFxuICAgICAgICAgIGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnLFxuICAgICAgICAgIC8vIEF2b2lkIHByb3BhZ2F0aW5nIGZhaWx1cmVzIHRvIFByb21pc2VzIHJldHVybmVkIGJ5IGxhdGVyXG4gICAgICAgICAgLy8gaW52b2NhdGlvbnMgb2YgdGhlIGl0ZXJhdG9yLlxuICAgICAgICAgIGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnXG4gICAgICAgICkgOiBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZygpO1xuICAgIH1cblxuICAgIC8vIERlZmluZSB0aGUgdW5pZmllZCBoZWxwZXIgbWV0aG9kIHRoYXQgaXMgdXNlZCB0byBpbXBsZW1lbnQgLm5leHQsXG4gICAgLy8gLnRocm93LCBhbmQgLnJldHVybiAoc2VlIGRlZmluZUl0ZXJhdG9yTWV0aG9kcykuXG4gICAgdGhpcy5faW52b2tlID0gZW5xdWV1ZTtcbiAgfVxuXG4gIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhBc3luY0l0ZXJhdG9yLnByb3RvdHlwZSk7XG4gIEFzeW5jSXRlcmF0b3IucHJvdG90eXBlW2FzeW5jSXRlcmF0b3JTeW1ib2xdID0gZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuICBleHBvcnRzLkFzeW5jSXRlcmF0b3IgPSBBc3luY0l0ZXJhdG9yO1xuXG4gIC8vIE5vdGUgdGhhdCBzaW1wbGUgYXN5bmMgZnVuY3Rpb25zIGFyZSBpbXBsZW1lbnRlZCBvbiB0b3Agb2ZcbiAgLy8gQXN5bmNJdGVyYXRvciBvYmplY3RzOyB0aGV5IGp1c3QgcmV0dXJuIGEgUHJvbWlzZSBmb3IgdGhlIHZhbHVlIG9mXG4gIC8vIHRoZSBmaW5hbCByZXN1bHQgcHJvZHVjZWQgYnkgdGhlIGl0ZXJhdG9yLlxuICBleHBvcnRzLmFzeW5jID0gZnVuY3Rpb24oaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QsIFByb21pc2VJbXBsKSB7XG4gICAgaWYgKFByb21pc2VJbXBsID09PSB2b2lkIDApIFByb21pc2VJbXBsID0gUHJvbWlzZTtcblxuICAgIHZhciBpdGVyID0gbmV3IEFzeW5jSXRlcmF0b3IoXG4gICAgICB3cmFwKGlubmVyRm4sIG91dGVyRm4sIHNlbGYsIHRyeUxvY3NMaXN0KSxcbiAgICAgIFByb21pc2VJbXBsXG4gICAgKTtcblxuICAgIHJldHVybiBleHBvcnRzLmlzR2VuZXJhdG9yRnVuY3Rpb24ob3V0ZXJGbilcbiAgICAgID8gaXRlciAvLyBJZiBvdXRlckZuIGlzIGEgZ2VuZXJhdG9yLCByZXR1cm4gdGhlIGZ1bGwgaXRlcmF0b3IuXG4gICAgICA6IGl0ZXIubmV4dCgpLnRoZW4oZnVuY3Rpb24ocmVzdWx0KSB7XG4gICAgICAgICAgcmV0dXJuIHJlc3VsdC5kb25lID8gcmVzdWx0LnZhbHVlIDogaXRlci5uZXh0KCk7XG4gICAgICAgIH0pO1xuICB9O1xuXG4gIGZ1bmN0aW9uIG1ha2VJbnZva2VNZXRob2QoaW5uZXJGbiwgc2VsZiwgY29udGV4dCkge1xuICAgIHZhciBzdGF0ZSA9IEdlblN0YXRlU3VzcGVuZGVkU3RhcnQ7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gaW52b2tlKG1ldGhvZCwgYXJnKSB7XG4gICAgICBpZiAoc3RhdGUgPT09IEdlblN0YXRlRXhlY3V0aW5nKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkdlbmVyYXRvciBpcyBhbHJlYWR5IHJ1bm5pbmdcIik7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGF0ZSA9PT0gR2VuU3RhdGVDb21wbGV0ZWQpIHtcbiAgICAgICAgaWYgKG1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgdGhyb3cgYXJnO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQmUgZm9yZ2l2aW5nLCBwZXIgMjUuMy4zLjMuMyBvZiB0aGUgc3BlYzpcbiAgICAgICAgLy8gaHR0cHM6Ly9wZW9wbGUubW96aWxsYS5vcmcvfmpvcmVuZG9yZmYvZXM2LWRyYWZ0Lmh0bWwjc2VjLWdlbmVyYXRvcnJlc3VtZVxuICAgICAgICByZXR1cm4gZG9uZVJlc3VsdCgpO1xuICAgICAgfVxuXG4gICAgICBjb250ZXh0Lm1ldGhvZCA9IG1ldGhvZDtcbiAgICAgIGNvbnRleHQuYXJnID0gYXJnO1xuXG4gICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICB2YXIgZGVsZWdhdGUgPSBjb250ZXh0LmRlbGVnYXRlO1xuICAgICAgICBpZiAoZGVsZWdhdGUpIHtcbiAgICAgICAgICB2YXIgZGVsZWdhdGVSZXN1bHQgPSBtYXliZUludm9rZURlbGVnYXRlKGRlbGVnYXRlLCBjb250ZXh0KTtcbiAgICAgICAgICBpZiAoZGVsZWdhdGVSZXN1bHQpIHtcbiAgICAgICAgICAgIGlmIChkZWxlZ2F0ZVJlc3VsdCA9PT0gQ29udGludWVTZW50aW5lbCkgY29udGludWU7XG4gICAgICAgICAgICByZXR1cm4gZGVsZWdhdGVSZXN1bHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbnRleHQubWV0aG9kID09PSBcIm5leHRcIikge1xuICAgICAgICAgIC8vIFNldHRpbmcgY29udGV4dC5fc2VudCBmb3IgbGVnYWN5IHN1cHBvcnQgb2YgQmFiZWwnc1xuICAgICAgICAgIC8vIGZ1bmN0aW9uLnNlbnQgaW1wbGVtZW50YXRpb24uXG4gICAgICAgICAgY29udGV4dC5zZW50ID0gY29udGV4dC5fc2VudCA9IGNvbnRleHQuYXJnO1xuXG4gICAgICAgIH0gZWxzZSBpZiAoY29udGV4dC5tZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgIGlmIChzdGF0ZSA9PT0gR2VuU3RhdGVTdXNwZW5kZWRTdGFydCkge1xuICAgICAgICAgICAgc3RhdGUgPSBHZW5TdGF0ZUNvbXBsZXRlZDtcbiAgICAgICAgICAgIHRocm93IGNvbnRleHQuYXJnO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnRleHQuZGlzcGF0Y2hFeGNlcHRpb24oY29udGV4dC5hcmcpO1xuXG4gICAgICAgIH0gZWxzZSBpZiAoY29udGV4dC5tZXRob2QgPT09IFwicmV0dXJuXCIpIHtcbiAgICAgICAgICBjb250ZXh0LmFicnVwdChcInJldHVyblwiLCBjb250ZXh0LmFyZyk7XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0ZSA9IEdlblN0YXRlRXhlY3V0aW5nO1xuXG4gICAgICAgIHZhciByZWNvcmQgPSB0cnlDYXRjaChpbm5lckZuLCBzZWxmLCBjb250ZXh0KTtcbiAgICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcIm5vcm1hbFwiKSB7XG4gICAgICAgICAgLy8gSWYgYW4gZXhjZXB0aW9uIGlzIHRocm93biBmcm9tIGlubmVyRm4sIHdlIGxlYXZlIHN0YXRlID09PVxuICAgICAgICAgIC8vIEdlblN0YXRlRXhlY3V0aW5nIGFuZCBsb29wIGJhY2sgZm9yIGFub3RoZXIgaW52b2NhdGlvbi5cbiAgICAgICAgICBzdGF0ZSA9IGNvbnRleHQuZG9uZVxuICAgICAgICAgICAgPyBHZW5TdGF0ZUNvbXBsZXRlZFxuICAgICAgICAgICAgOiBHZW5TdGF0ZVN1c3BlbmRlZFlpZWxkO1xuXG4gICAgICAgICAgaWYgKHJlY29yZC5hcmcgPT09IENvbnRpbnVlU2VudGluZWwpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YWx1ZTogcmVjb3JkLmFyZyxcbiAgICAgICAgICAgIGRvbmU6IGNvbnRleHQuZG9uZVxuICAgICAgICAgIH07XG5cbiAgICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgc3RhdGUgPSBHZW5TdGF0ZUNvbXBsZXRlZDtcbiAgICAgICAgICAvLyBEaXNwYXRjaCB0aGUgZXhjZXB0aW9uIGJ5IGxvb3BpbmcgYmFjayBhcm91bmQgdG8gdGhlXG4gICAgICAgICAgLy8gY29udGV4dC5kaXNwYXRjaEV4Y2VwdGlvbihjb250ZXh0LmFyZykgY2FsbCBhYm92ZS5cbiAgICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwidGhyb3dcIjtcbiAgICAgICAgICBjb250ZXh0LmFyZyA9IHJlY29yZC5hcmc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLy8gQ2FsbCBkZWxlZ2F0ZS5pdGVyYXRvcltjb250ZXh0Lm1ldGhvZF0oY29udGV4dC5hcmcpIGFuZCBoYW5kbGUgdGhlXG4gIC8vIHJlc3VsdCwgZWl0aGVyIGJ5IHJldHVybmluZyBhIHsgdmFsdWUsIGRvbmUgfSByZXN1bHQgZnJvbSB0aGVcbiAgLy8gZGVsZWdhdGUgaXRlcmF0b3IsIG9yIGJ5IG1vZGlmeWluZyBjb250ZXh0Lm1ldGhvZCBhbmQgY29udGV4dC5hcmcsXG4gIC8vIHNldHRpbmcgY29udGV4dC5kZWxlZ2F0ZSB0byBudWxsLCBhbmQgcmV0dXJuaW5nIHRoZSBDb250aW51ZVNlbnRpbmVsLlxuICBmdW5jdGlvbiBtYXliZUludm9rZURlbGVnYXRlKGRlbGVnYXRlLCBjb250ZXh0KSB7XG4gICAgdmFyIG1ldGhvZCA9IGRlbGVnYXRlLml0ZXJhdG9yW2NvbnRleHQubWV0aG9kXTtcbiAgICBpZiAobWV0aG9kID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEEgLnRocm93IG9yIC5yZXR1cm4gd2hlbiB0aGUgZGVsZWdhdGUgaXRlcmF0b3IgaGFzIG5vIC50aHJvd1xuICAgICAgLy8gbWV0aG9kIGFsd2F5cyB0ZXJtaW5hdGVzIHRoZSB5aWVsZCogbG9vcC5cbiAgICAgIGNvbnRleHQuZGVsZWdhdGUgPSBudWxsO1xuXG4gICAgICBpZiAoY29udGV4dC5tZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAvLyBOb3RlOiBbXCJyZXR1cm5cIl0gbXVzdCBiZSB1c2VkIGZvciBFUzMgcGFyc2luZyBjb21wYXRpYmlsaXR5LlxuICAgICAgICBpZiAoZGVsZWdhdGUuaXRlcmF0b3JbXCJyZXR1cm5cIl0pIHtcbiAgICAgICAgICAvLyBJZiB0aGUgZGVsZWdhdGUgaXRlcmF0b3IgaGFzIGEgcmV0dXJuIG1ldGhvZCwgZ2l2ZSBpdCBhXG4gICAgICAgICAgLy8gY2hhbmNlIHRvIGNsZWFuIHVwLlxuICAgICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJyZXR1cm5cIjtcbiAgICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICBtYXliZUludm9rZURlbGVnYXRlKGRlbGVnYXRlLCBjb250ZXh0KTtcblxuICAgICAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgICAvLyBJZiBtYXliZUludm9rZURlbGVnYXRlKGNvbnRleHQpIGNoYW5nZWQgY29udGV4dC5tZXRob2QgZnJvbVxuICAgICAgICAgICAgLy8gXCJyZXR1cm5cIiB0byBcInRocm93XCIsIGxldCB0aGF0IG92ZXJyaWRlIHRoZSBUeXBlRXJyb3IgYmVsb3cuXG4gICAgICAgICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwidGhyb3dcIjtcbiAgICAgICAgY29udGV4dC5hcmcgPSBuZXcgVHlwZUVycm9yKFxuICAgICAgICAgIFwiVGhlIGl0ZXJhdG9yIGRvZXMgbm90IHByb3ZpZGUgYSAndGhyb3cnIG1ldGhvZFwiKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfVxuXG4gICAgdmFyIHJlY29yZCA9IHRyeUNhdGNoKG1ldGhvZCwgZGVsZWdhdGUuaXRlcmF0b3IsIGNvbnRleHQuYXJnKTtcblxuICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICBjb250ZXh0Lm1ldGhvZCA9IFwidGhyb3dcIjtcbiAgICAgIGNvbnRleHQuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgIGNvbnRleHQuZGVsZWdhdGUgPSBudWxsO1xuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfVxuXG4gICAgdmFyIGluZm8gPSByZWNvcmQuYXJnO1xuXG4gICAgaWYgKCEgaW5mbykge1xuICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICBjb250ZXh0LmFyZyA9IG5ldyBUeXBlRXJyb3IoXCJpdGVyYXRvciByZXN1bHQgaXMgbm90IGFuIG9iamVjdFwiKTtcbiAgICAgIGNvbnRleHQuZGVsZWdhdGUgPSBudWxsO1xuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfVxuXG4gICAgaWYgKGluZm8uZG9uZSkge1xuICAgICAgLy8gQXNzaWduIHRoZSByZXN1bHQgb2YgdGhlIGZpbmlzaGVkIGRlbGVnYXRlIHRvIHRoZSB0ZW1wb3JhcnlcbiAgICAgIC8vIHZhcmlhYmxlIHNwZWNpZmllZCBieSBkZWxlZ2F0ZS5yZXN1bHROYW1lIChzZWUgZGVsZWdhdGVZaWVsZCkuXG4gICAgICBjb250ZXh0W2RlbGVnYXRlLnJlc3VsdE5hbWVdID0gaW5mby52YWx1ZTtcblxuICAgICAgLy8gUmVzdW1lIGV4ZWN1dGlvbiBhdCB0aGUgZGVzaXJlZCBsb2NhdGlvbiAoc2VlIGRlbGVnYXRlWWllbGQpLlxuICAgICAgY29udGV4dC5uZXh0ID0gZGVsZWdhdGUubmV4dExvYztcblxuICAgICAgLy8gSWYgY29udGV4dC5tZXRob2Qgd2FzIFwidGhyb3dcIiBidXQgdGhlIGRlbGVnYXRlIGhhbmRsZWQgdGhlXG4gICAgICAvLyBleGNlcHRpb24sIGxldCB0aGUgb3V0ZXIgZ2VuZXJhdG9yIHByb2NlZWQgbm9ybWFsbHkuIElmXG4gICAgICAvLyBjb250ZXh0Lm1ldGhvZCB3YXMgXCJuZXh0XCIsIGZvcmdldCBjb250ZXh0LmFyZyBzaW5jZSBpdCBoYXMgYmVlblxuICAgICAgLy8gXCJjb25zdW1lZFwiIGJ5IHRoZSBkZWxlZ2F0ZSBpdGVyYXRvci4gSWYgY29udGV4dC5tZXRob2Qgd2FzXG4gICAgICAvLyBcInJldHVyblwiLCBhbGxvdyB0aGUgb3JpZ2luYWwgLnJldHVybiBjYWxsIHRvIGNvbnRpbnVlIGluIHRoZVxuICAgICAgLy8gb3V0ZXIgZ2VuZXJhdG9yLlxuICAgICAgaWYgKGNvbnRleHQubWV0aG9kICE9PSBcInJldHVyblwiKSB7XG4gICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJuZXh0XCI7XG4gICAgICAgIGNvbnRleHQuYXJnID0gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFJlLXlpZWxkIHRoZSByZXN1bHQgcmV0dXJuZWQgYnkgdGhlIGRlbGVnYXRlIG1ldGhvZC5cbiAgICAgIHJldHVybiBpbmZvO1xuICAgIH1cblxuICAgIC8vIFRoZSBkZWxlZ2F0ZSBpdGVyYXRvciBpcyBmaW5pc2hlZCwgc28gZm9yZ2V0IGl0IGFuZCBjb250aW51ZSB3aXRoXG4gICAgLy8gdGhlIG91dGVyIGdlbmVyYXRvci5cbiAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcbiAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgfVxuXG4gIC8vIERlZmluZSBHZW5lcmF0b3IucHJvdG90eXBlLntuZXh0LHRocm93LHJldHVybn0gaW4gdGVybXMgb2YgdGhlXG4gIC8vIHVuaWZpZWQgLl9pbnZva2UgaGVscGVyIG1ldGhvZC5cbiAgZGVmaW5lSXRlcmF0b3JNZXRob2RzKEdwKTtcblxuICBkZWZpbmUoR3AsIHRvU3RyaW5nVGFnU3ltYm9sLCBcIkdlbmVyYXRvclwiKTtcblxuICAvLyBBIEdlbmVyYXRvciBzaG91bGQgYWx3YXlzIHJldHVybiBpdHNlbGYgYXMgdGhlIGl0ZXJhdG9yIG9iamVjdCB3aGVuIHRoZVxuICAvLyBAQGl0ZXJhdG9yIGZ1bmN0aW9uIGlzIGNhbGxlZCBvbiBpdC4gU29tZSBicm93c2VycycgaW1wbGVtZW50YXRpb25zIG9mIHRoZVxuICAvLyBpdGVyYXRvciBwcm90b3R5cGUgY2hhaW4gaW5jb3JyZWN0bHkgaW1wbGVtZW50IHRoaXMsIGNhdXNpbmcgdGhlIEdlbmVyYXRvclxuICAvLyBvYmplY3QgdG8gbm90IGJlIHJldHVybmVkIGZyb20gdGhpcyBjYWxsLiBUaGlzIGVuc3VyZXMgdGhhdCBkb2Vzbid0IGhhcHBlbi5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWdlbmVyYXRvci9pc3N1ZXMvMjc0IGZvciBtb3JlIGRldGFpbHMuXG4gIEdwW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIEdwLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIFwiW29iamVjdCBHZW5lcmF0b3JdXCI7XG4gIH07XG5cbiAgZnVuY3Rpb24gcHVzaFRyeUVudHJ5KGxvY3MpIHtcbiAgICB2YXIgZW50cnkgPSB7IHRyeUxvYzogbG9jc1swXSB9O1xuXG4gICAgaWYgKDEgaW4gbG9jcykge1xuICAgICAgZW50cnkuY2F0Y2hMb2MgPSBsb2NzWzFdO1xuICAgIH1cblxuICAgIGlmICgyIGluIGxvY3MpIHtcbiAgICAgIGVudHJ5LmZpbmFsbHlMb2MgPSBsb2NzWzJdO1xuICAgICAgZW50cnkuYWZ0ZXJMb2MgPSBsb2NzWzNdO1xuICAgIH1cblxuICAgIHRoaXMudHJ5RW50cmllcy5wdXNoKGVudHJ5KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlc2V0VHJ5RW50cnkoZW50cnkpIHtcbiAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbiB8fCB7fTtcbiAgICByZWNvcmQudHlwZSA9IFwibm9ybWFsXCI7XG4gICAgZGVsZXRlIHJlY29yZC5hcmc7XG4gICAgZW50cnkuY29tcGxldGlvbiA9IHJlY29yZDtcbiAgfVxuXG4gIGZ1bmN0aW9uIENvbnRleHQodHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBUaGUgcm9vdCBlbnRyeSBvYmplY3QgKGVmZmVjdGl2ZWx5IGEgdHJ5IHN0YXRlbWVudCB3aXRob3V0IGEgY2F0Y2hcbiAgICAvLyBvciBhIGZpbmFsbHkgYmxvY2spIGdpdmVzIHVzIGEgcGxhY2UgdG8gc3RvcmUgdmFsdWVzIHRocm93biBmcm9tXG4gICAgLy8gbG9jYXRpb25zIHdoZXJlIHRoZXJlIGlzIG5vIGVuY2xvc2luZyB0cnkgc3RhdGVtZW50LlxuICAgIHRoaXMudHJ5RW50cmllcyA9IFt7IHRyeUxvYzogXCJyb290XCIgfV07XG4gICAgdHJ5TG9jc0xpc3QuZm9yRWFjaChwdXNoVHJ5RW50cnksIHRoaXMpO1xuICAgIHRoaXMucmVzZXQodHJ1ZSk7XG4gIH1cblxuICBleHBvcnRzLmtleXMgPSBmdW5jdGlvbihvYmplY3QpIHtcbiAgICB2YXIga2V5cyA9IFtdO1xuICAgIGZvciAodmFyIGtleSBpbiBvYmplY3QpIHtcbiAgICAgIGtleXMucHVzaChrZXkpO1xuICAgIH1cbiAgICBrZXlzLnJldmVyc2UoKTtcblxuICAgIC8vIFJhdGhlciB0aGFuIHJldHVybmluZyBhbiBvYmplY3Qgd2l0aCBhIG5leHQgbWV0aG9kLCB3ZSBrZWVwXG4gICAgLy8gdGhpbmdzIHNpbXBsZSBhbmQgcmV0dXJuIHRoZSBuZXh0IGZ1bmN0aW9uIGl0c2VsZi5cbiAgICByZXR1cm4gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgIHdoaWxlIChrZXlzLmxlbmd0aCkge1xuICAgICAgICB2YXIga2V5ID0ga2V5cy5wb3AoKTtcbiAgICAgICAgaWYgKGtleSBpbiBvYmplY3QpIHtcbiAgICAgICAgICBuZXh0LnZhbHVlID0ga2V5O1xuICAgICAgICAgIG5leHQuZG9uZSA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRvIGF2b2lkIGNyZWF0aW5nIGFuIGFkZGl0aW9uYWwgb2JqZWN0LCB3ZSBqdXN0IGhhbmcgdGhlIC52YWx1ZVxuICAgICAgLy8gYW5kIC5kb25lIHByb3BlcnRpZXMgb2ZmIHRoZSBuZXh0IGZ1bmN0aW9uIG9iamVjdCBpdHNlbGYuIFRoaXNcbiAgICAgIC8vIGFsc28gZW5zdXJlcyB0aGF0IHRoZSBtaW5pZmllciB3aWxsIG5vdCBhbm9ueW1pemUgdGhlIGZ1bmN0aW9uLlxuICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH07XG4gIH07XG5cbiAgZnVuY3Rpb24gdmFsdWVzKGl0ZXJhYmxlKSB7XG4gICAgaWYgKGl0ZXJhYmxlKSB7XG4gICAgICB2YXIgaXRlcmF0b3JNZXRob2QgPSBpdGVyYWJsZVtpdGVyYXRvclN5bWJvbF07XG4gICAgICBpZiAoaXRlcmF0b3JNZXRob2QpIHtcbiAgICAgICAgcmV0dXJuIGl0ZXJhdG9yTWV0aG9kLmNhbGwoaXRlcmFibGUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGl0ZXJhYmxlLm5leHQgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gaXRlcmFibGU7XG4gICAgICB9XG5cbiAgICAgIGlmICghaXNOYU4oaXRlcmFibGUubGVuZ3RoKSkge1xuICAgICAgICB2YXIgaSA9IC0xLCBuZXh0ID0gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgICAgICB3aGlsZSAoKytpIDwgaXRlcmFibGUubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAoaGFzT3duLmNhbGwoaXRlcmFibGUsIGkpKSB7XG4gICAgICAgICAgICAgIG5leHQudmFsdWUgPSBpdGVyYWJsZVtpXTtcbiAgICAgICAgICAgICAgbmV4dC5kb25lID0gZmFsc2U7XG4gICAgICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIG5leHQudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcblxuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBuZXh0Lm5leHQgPSBuZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJldHVybiBhbiBpdGVyYXRvciB3aXRoIG5vIHZhbHVlcy5cbiAgICByZXR1cm4geyBuZXh0OiBkb25lUmVzdWx0IH07XG4gIH1cbiAgZXhwb3J0cy52YWx1ZXMgPSB2YWx1ZXM7XG5cbiAgZnVuY3Rpb24gZG9uZVJlc3VsdCgpIHtcbiAgICByZXR1cm4geyB2YWx1ZTogdW5kZWZpbmVkLCBkb25lOiB0cnVlIH07XG4gIH1cblxuICBDb250ZXh0LnByb3RvdHlwZSA9IHtcbiAgICBjb25zdHJ1Y3RvcjogQ29udGV4dCxcblxuICAgIHJlc2V0OiBmdW5jdGlvbihza2lwVGVtcFJlc2V0KSB7XG4gICAgICB0aGlzLnByZXYgPSAwO1xuICAgICAgdGhpcy5uZXh0ID0gMDtcbiAgICAgIC8vIFJlc2V0dGluZyBjb250ZXh0Ll9zZW50IGZvciBsZWdhY3kgc3VwcG9ydCBvZiBCYWJlbCdzXG4gICAgICAvLyBmdW5jdGlvbi5zZW50IGltcGxlbWVudGF0aW9uLlxuICAgICAgdGhpcy5zZW50ID0gdGhpcy5fc2VudCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuZG9uZSA9IGZhbHNlO1xuICAgICAgdGhpcy5kZWxlZ2F0ZSA9IG51bGw7XG5cbiAgICAgIHRoaXMubWV0aG9kID0gXCJuZXh0XCI7XG4gICAgICB0aGlzLmFyZyA9IHVuZGVmaW5lZDtcblxuICAgICAgdGhpcy50cnlFbnRyaWVzLmZvckVhY2gocmVzZXRUcnlFbnRyeSk7XG5cbiAgICAgIGlmICghc2tpcFRlbXBSZXNldCkge1xuICAgICAgICBmb3IgKHZhciBuYW1lIGluIHRoaXMpIHtcbiAgICAgICAgICAvLyBOb3Qgc3VyZSBhYm91dCB0aGUgb3B0aW1hbCBvcmRlciBvZiB0aGVzZSBjb25kaXRpb25zOlxuICAgICAgICAgIGlmIChuYW1lLmNoYXJBdCgwKSA9PT0gXCJ0XCIgJiZcbiAgICAgICAgICAgICAgaGFzT3duLmNhbGwodGhpcywgbmFtZSkgJiZcbiAgICAgICAgICAgICAgIWlzTmFOKCtuYW1lLnNsaWNlKDEpKSkge1xuICAgICAgICAgICAgdGhpc1tuYW1lXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgc3RvcDogZnVuY3Rpb24oKSB7XG4gICAgICB0aGlzLmRvbmUgPSB0cnVlO1xuXG4gICAgICB2YXIgcm9vdEVudHJ5ID0gdGhpcy50cnlFbnRyaWVzWzBdO1xuICAgICAgdmFyIHJvb3RSZWNvcmQgPSByb290RW50cnkuY29tcGxldGlvbjtcbiAgICAgIGlmIChyb290UmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICB0aHJvdyByb290UmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMucnZhbDtcbiAgICB9LFxuXG4gICAgZGlzcGF0Y2hFeGNlcHRpb246IGZ1bmN0aW9uKGV4Y2VwdGlvbikge1xuICAgICAgaWYgKHRoaXMuZG9uZSkge1xuICAgICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgICB9XG5cbiAgICAgIHZhciBjb250ZXh0ID0gdGhpcztcbiAgICAgIGZ1bmN0aW9uIGhhbmRsZShsb2MsIGNhdWdodCkge1xuICAgICAgICByZWNvcmQudHlwZSA9IFwidGhyb3dcIjtcbiAgICAgICAgcmVjb3JkLmFyZyA9IGV4Y2VwdGlvbjtcbiAgICAgICAgY29udGV4dC5uZXh0ID0gbG9jO1xuXG4gICAgICAgIGlmIChjYXVnaHQpIHtcbiAgICAgICAgICAvLyBJZiB0aGUgZGlzcGF0Y2hlZCBleGNlcHRpb24gd2FzIGNhdWdodCBieSBhIGNhdGNoIGJsb2NrLFxuICAgICAgICAgIC8vIHRoZW4gbGV0IHRoYXQgY2F0Y2ggYmxvY2sgaGFuZGxlIHRoZSBleGNlcHRpb24gbm9ybWFsbHkuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAhISBjYXVnaHQ7XG4gICAgICB9XG5cbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcblxuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSBcInJvb3RcIikge1xuICAgICAgICAgIC8vIEV4Y2VwdGlvbiB0aHJvd24gb3V0c2lkZSBvZiBhbnkgdHJ5IGJsb2NrIHRoYXQgY291bGQgaGFuZGxlXG4gICAgICAgICAgLy8gaXQsIHNvIHNldCB0aGUgY29tcGxldGlvbiB2YWx1ZSBvZiB0aGUgZW50aXJlIGZ1bmN0aW9uIHRvXG4gICAgICAgICAgLy8gdGhyb3cgdGhlIGV4Y2VwdGlvbi5cbiAgICAgICAgICByZXR1cm4gaGFuZGxlKFwiZW5kXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYpIHtcbiAgICAgICAgICB2YXIgaGFzQ2F0Y2ggPSBoYXNPd24uY2FsbChlbnRyeSwgXCJjYXRjaExvY1wiKTtcbiAgICAgICAgICB2YXIgaGFzRmluYWxseSA9IGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIik7XG5cbiAgICAgICAgICBpZiAoaGFzQ2F0Y2ggJiYgaGFzRmluYWxseSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGVudHJ5LmNhdGNoTG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuY2F0Y2hMb2MsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0NhdGNoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcmV2IDwgZW50cnkuY2F0Y2hMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5jYXRjaExvYywgdHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0ZpbmFsbHkpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHlcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcblxuICAgIGFicnVwdDogZnVuY3Rpb24odHlwZSwgYXJnKSB7XG4gICAgICBmb3IgKHZhciBpID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IHRoaXMudHJ5RW50cmllc1tpXTtcbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYgJiZcbiAgICAgICAgICAgIGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIikgJiZcbiAgICAgICAgICAgIHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICB2YXIgZmluYWxseUVudHJ5ID0gZW50cnk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGZpbmFsbHlFbnRyeSAmJlxuICAgICAgICAgICh0eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICAgdHlwZSA9PT0gXCJjb250aW51ZVwiKSAmJlxuICAgICAgICAgIGZpbmFsbHlFbnRyeS50cnlMb2MgPD0gYXJnICYmXG4gICAgICAgICAgYXJnIDw9IGZpbmFsbHlFbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgIC8vIElnbm9yZSB0aGUgZmluYWxseSBlbnRyeSBpZiBjb250cm9sIGlzIG5vdCBqdW1waW5nIHRvIGFcbiAgICAgICAgLy8gbG9jYXRpb24gb3V0c2lkZSB0aGUgdHJ5L2NhdGNoIGJsb2NrLlxuICAgICAgICBmaW5hbGx5RW50cnkgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICB2YXIgcmVjb3JkID0gZmluYWxseUVudHJ5ID8gZmluYWxseUVudHJ5LmNvbXBsZXRpb24gOiB7fTtcbiAgICAgIHJlY29yZC50eXBlID0gdHlwZTtcbiAgICAgIHJlY29yZC5hcmcgPSBhcmc7XG5cbiAgICAgIGlmIChmaW5hbGx5RW50cnkpIHtcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgdGhpcy5uZXh0ID0gZmluYWxseUVudHJ5LmZpbmFsbHlMb2M7XG4gICAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5jb21wbGV0ZShyZWNvcmQpO1xuICAgIH0sXG5cbiAgICBjb21wbGV0ZTogZnVuY3Rpb24ocmVjb3JkLCBhZnRlckxvYykge1xuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgdGhyb3cgcmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICByZWNvcmQudHlwZSA9PT0gXCJjb250aW51ZVwiKSB7XG4gICAgICAgIHRoaXMubmV4dCA9IHJlY29yZC5hcmc7XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcInJldHVyblwiKSB7XG4gICAgICAgIHRoaXMucnZhbCA9IHRoaXMuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcInJldHVyblwiO1xuICAgICAgICB0aGlzLm5leHQgPSBcImVuZFwiO1xuICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gXCJub3JtYWxcIiAmJiBhZnRlckxvYykge1xuICAgICAgICB0aGlzLm5leHQgPSBhZnRlckxvYztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfSxcblxuICAgIGZpbmlzaDogZnVuY3Rpb24oZmluYWxseUxvYykge1xuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIGlmIChlbnRyeS5maW5hbGx5TG9jID09PSBmaW5hbGx5TG9jKSB7XG4gICAgICAgICAgdGhpcy5jb21wbGV0ZShlbnRyeS5jb21wbGV0aW9uLCBlbnRyeS5hZnRlckxvYyk7XG4gICAgICAgICAgcmVzZXRUcnlFbnRyeShlbnRyeSk7XG4gICAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgXCJjYXRjaFwiOiBmdW5jdGlvbih0cnlMb2MpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSB0cnlMb2MpIHtcbiAgICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcbiAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgICAgdmFyIHRocm93biA9IHJlY29yZC5hcmc7XG4gICAgICAgICAgICByZXNldFRyeUVudHJ5KGVudHJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRocm93bjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUaGUgY29udGV4dC5jYXRjaCBtZXRob2QgbXVzdCBvbmx5IGJlIGNhbGxlZCB3aXRoIGEgbG9jYXRpb25cbiAgICAgIC8vIGFyZ3VtZW50IHRoYXQgY29ycmVzcG9uZHMgdG8gYSBrbm93biBjYXRjaCBibG9jay5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdFwiKTtcbiAgICB9LFxuXG4gICAgZGVsZWdhdGVZaWVsZDogZnVuY3Rpb24oaXRlcmFibGUsIHJlc3VsdE5hbWUsIG5leHRMb2MpIHtcbiAgICAgIHRoaXMuZGVsZWdhdGUgPSB7XG4gICAgICAgIGl0ZXJhdG9yOiB2YWx1ZXMoaXRlcmFibGUpLFxuICAgICAgICByZXN1bHROYW1lOiByZXN1bHROYW1lLFxuICAgICAgICBuZXh0TG9jOiBuZXh0TG9jXG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5tZXRob2QgPT09IFwibmV4dFwiKSB7XG4gICAgICAgIC8vIERlbGliZXJhdGVseSBmb3JnZXQgdGhlIGxhc3Qgc2VudCB2YWx1ZSBzbyB0aGF0IHdlIGRvbid0XG4gICAgICAgIC8vIGFjY2lkZW50YWxseSBwYXNzIGl0IG9uIHRvIHRoZSBkZWxlZ2F0ZS5cbiAgICAgICAgdGhpcy5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cbiAgfTtcblxuICAvLyBSZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhpcyBzY3JpcHQgaXMgZXhlY3V0aW5nIGFzIGEgQ29tbW9uSlMgbW9kdWxlXG4gIC8vIG9yIG5vdCwgcmV0dXJuIHRoZSBydW50aW1lIG9iamVjdCBzbyB0aGF0IHdlIGNhbiBkZWNsYXJlIHRoZSB2YXJpYWJsZVxuICAvLyByZWdlbmVyYXRvclJ1bnRpbWUgaW4gdGhlIG91dGVyIHNjb3BlLCB3aGljaCBhbGxvd3MgdGhpcyBtb2R1bGUgdG8gYmVcbiAgLy8gaW5qZWN0ZWQgZWFzaWx5IGJ5IGBiaW4vcmVnZW5lcmF0b3IgLS1pbmNsdWRlLXJ1bnRpbWUgc2NyaXB0LmpzYC5cbiAgcmV0dXJuIGV4cG9ydHM7XG5cbn0oXG4gIC8vIElmIHRoaXMgc2NyaXB0IGlzIGV4ZWN1dGluZyBhcyBhIENvbW1vbkpTIG1vZHVsZSwgdXNlIG1vZHVsZS5leHBvcnRzXG4gIC8vIGFzIHRoZSByZWdlbmVyYXRvclJ1bnRpbWUgbmFtZXNwYWNlLiBPdGhlcndpc2UgY3JlYXRlIGEgbmV3IGVtcHR5XG4gIC8vIG9iamVjdC4gRWl0aGVyIHdheSwgdGhlIHJlc3VsdGluZyBvYmplY3Qgd2lsbCBiZSB1c2VkIHRvIGluaXRpYWxpemVcbiAgLy8gdGhlIHJlZ2VuZXJhdG9yUnVudGltZSB2YXJpYWJsZSBhdCB0aGUgdG9wIG9mIHRoaXMgZmlsZS5cbiAgdHlwZW9mIG1vZHVsZSA9PT0gXCJvYmplY3RcIiA/IG1vZHVsZS5leHBvcnRzIDoge31cbikpO1xuXG50cnkge1xuICByZWdlbmVyYXRvclJ1bnRpbWUgPSBydW50aW1lO1xufSBjYXRjaCAoYWNjaWRlbnRhbFN0cmljdE1vZGUpIHtcbiAgLy8gVGhpcyBtb2R1bGUgc2hvdWxkIG5vdCBiZSBydW5uaW5nIGluIHN0cmljdCBtb2RlLCBzbyB0aGUgYWJvdmVcbiAgLy8gYXNzaWdubWVudCBzaG91bGQgYWx3YXlzIHdvcmsgdW5sZXNzIHNvbWV0aGluZyBpcyBtaXNjb25maWd1cmVkLiBKdXN0XG4gIC8vIGluIGNhc2UgcnVudGltZS5qcyBhY2NpZGVudGFsbHkgcnVucyBpbiBzdHJpY3QgbW9kZSwgd2UgY2FuIGVzY2FwZVxuICAvLyBzdHJpY3QgbW9kZSB1c2luZyBhIGdsb2JhbCBGdW5jdGlvbiBjYWxsLiBUaGlzIGNvdWxkIGNvbmNlaXZhYmx5IGZhaWxcbiAgLy8gaWYgYSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBmb3JiaWRzIHVzaW5nIEZ1bmN0aW9uLCBidXQgaW4gdGhhdCBjYXNlXG4gIC8vIHRoZSBwcm9wZXIgc29sdXRpb24gaXMgdG8gZml4IHRoZSBhY2NpZGVudGFsIHN0cmljdCBtb2RlIHByb2JsZW0uIElmXG4gIC8vIHlvdSd2ZSBtaXNjb25maWd1cmVkIHlvdXIgYnVuZGxlciB0byBmb3JjZSBzdHJpY3QgbW9kZSBhbmQgYXBwbGllZCBhXG4gIC8vIENTUCB0byBmb3JiaWQgRnVuY3Rpb24sIGFuZCB5b3UncmUgbm90IHdpbGxpbmcgdG8gZml4IGVpdGhlciBvZiB0aG9zZVxuICAvLyBwcm9ibGVtcywgcGxlYXNlIGRldGFpbCB5b3VyIHVuaXF1ZSBwcmVkaWNhbWVudCBpbiBhIEdpdEh1YiBpc3N1ZS5cbiAgRnVuY3Rpb24oXCJyXCIsIFwicmVnZW5lcmF0b3JSdW50aW1lID0gclwiKShydW50aW1lKTtcbn1cbiIsImltcG9ydCBcIi4uL3N0eWxlcy9nbG9iYWxzLmNzc1wiO1xuaW1wb3J0IEhlYWQgZnJvbSBcIm5leHQvaGVhZFwiO1xuaW1wb3J0ICdib290c3RyYXAvZGlzdC9jc3MvYm9vdHN0cmFwLmNzcydcbmZ1bmN0aW9uIE15QXBwKHsgQ29tcG9uZW50LCBwYWdlUHJvcHMgfSkge1xuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8SGVhZD5cbiAgICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgLz5cbiAgICAgICAgPGxpbmsgcmVsPVwiaWNvblwiIHR5cGU9XCJpbWFnZS9wbmdcIiBzaXplcz1cIjMyeDMyXCIgaHJlZj1cImZhdmljb24tMzJ4MzJfZmluZ2VycHJpbnQucG5nXCIvPlxuICAgICAgPC9IZWFkPlxuICAgICAgPENvbXBvbmVudCB7Li4ucGFnZVByb3BzfSAvPlxuICAgIDwvPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBNeUFwcDtcbiIsInZhciBhcGkgPSByZXF1aXJlKFwiIS4uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtc3R5bGUtbG9hZGVyL3J1bnRpbWUvaW5qZWN0U3R5bGVzSW50b1N0eWxlVGFnLmpzXCIpO1xuICAgICAgICAgICAgdmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNi0xIS4uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcG9zdGNzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNi0yIS4vZ2xvYmFscy5jc3NcIik7XG5cbiAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50Ll9fZXNNb2R1bGUgPyBjb250ZW50LmRlZmF1bHQgOiBjb250ZW50O1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcbiAgICAgICAgICAgIH1cblxudmFyIG9wdGlvbnMgPSB7fTtcblxub3B0aW9ucy5pbnNlcnQgPSBmdW5jdGlvbihlbGVtZW50KXsvLyBUaGVzZSBlbGVtZW50cyBzaG91bGQgYWx3YXlzIGV4aXN0LiBJZiB0aGV5IGRvIG5vdCxcbi8vIHRoaXMgY29kZSBzaG91bGQgZmFpbC5cbnZhciBhbmNob3JFbGVtZW50PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNfX25leHRfY3NzX19ET19OT1RfVVNFX18nKTt2YXIgcGFyZW50Tm9kZT1hbmNob3JFbGVtZW50LnBhcmVudE5vZGU7Ly8gTm9ybWFsbHkgPGhlYWQ+XG4vLyBFYWNoIHN0eWxlIHRhZyBzaG91bGQgYmUgcGxhY2VkIHJpZ2h0IGJlZm9yZSBvdXJcbi8vIGFuY2hvci4gQnkgaW5zZXJ0aW5nIGJlZm9yZSBhbmQgbm90IGFmdGVyLCB3ZSBkbyBub3Rcbi8vIG5lZWQgdG8gdHJhY2sgdGhlIGxhc3QgaW5zZXJ0ZWQgZWxlbWVudC5cbnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsYW5jaG9yRWxlbWVudCk7fTtcbm9wdGlvbnMuc2luZ2xldG9uID0gZmFsc2U7XG5cbnZhciB1cGRhdGUgPSBhcGkoY29udGVudCwgb3B0aW9ucyk7XG5cblxuaWYgKG1vZHVsZS5ob3QpIHtcbiAgaWYgKCFjb250ZW50LmxvY2FscyB8fCBtb2R1bGUuaG90LmludmFsaWRhdGUpIHtcbiAgICB2YXIgaXNFcXVhbExvY2FscyA9IGZ1bmN0aW9uIGlzRXF1YWxMb2NhbHMoYSxiLGlzTmFtZWRFeHBvcnQpe2lmKCFhJiZifHxhJiYhYil7cmV0dXJuIGZhbHNlO31sZXQgcDtmb3IocCBpbiBhKXtpZihpc05hbWVkRXhwb3J0JiZwPT09J2RlZmF1bHQnKXsvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29udGludWVcbmNvbnRpbnVlO31pZihhW3BdIT09YltwXSl7cmV0dXJuIGZhbHNlO319Zm9yKHAgaW4gYil7aWYoaXNOYW1lZEV4cG9ydCYmcD09PSdkZWZhdWx0Jyl7Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRpbnVlXG5jb250aW51ZTt9aWYoIWFbcF0pe3JldHVybiBmYWxzZTt9fXJldHVybiB0cnVlO307XG4gICAgdmFyIG9sZExvY2FscyA9IGNvbnRlbnQubG9jYWxzO1xuXG4gICAgbW9kdWxlLmhvdC5hY2NlcHQoXG4gICAgICBcIiEhLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMSEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Bvc3Rjc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMiEuL2dsb2JhbHMuY3NzXCIsXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNi0xIS4uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcG9zdGNzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNi0yIS4vZ2xvYmFscy5jc3NcIik7XG5cbiAgICAgICAgICAgICAgY29udGVudCA9IGNvbnRlbnQuX19lc01vZHVsZSA/IGNvbnRlbnQuZGVmYXVsdCA6IGNvbnRlbnQ7XG5cbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmICghaXNFcXVhbExvY2FscyhvbGRMb2NhbHMsIGNvbnRlbnQubG9jYWxzKSkge1xuICAgICAgICAgICAgICAgIG1vZHVsZS5ob3QuaW52YWxpZGF0ZSgpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgb2xkTG9jYWxzID0gY29udGVudC5sb2NhbHM7XG5cbiAgICAgICAgICAgICAgdXBkYXRlKGNvbnRlbnQpO1xuICAgICAgfVxuICAgIClcbiAgfVxuXG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHtcbiAgICB1cGRhdGUoKTtcbiAgfSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHMgfHwge307Il0sInNvdXJjZVJvb3QiOiIifQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvYXJyYXlMaWtlVG9BcnJheS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvYXJyYXlXaXRoSG9sZXMuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2FycmF5V2l0aG91dEhvbGVzLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2FzeW5jVG9HZW5lcmF0b3IuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2NsYXNzQ2FsbENoZWNrLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9jb25zdHJ1Y3QuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2NyZWF0ZUNsYXNzLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9kZWZpbmVQcm9wZXJ0eS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2RlZmluZVByb3BlcnR5LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9nZXRQcm90b3R5cGVPZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaW5oZXJpdHMuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2ludGVyb3BSZXF1aXJlRGVmYXVsdC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaW50ZXJvcFJlcXVpcmVXaWxkY2FyZC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pdGVyYWJsZVRvQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2l0ZXJhYmxlVG9BcnJheUxpbWl0LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9ub25JdGVyYWJsZVJlc3QuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL25vbkl0ZXJhYmxlU3ByZWFkLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9zZXRQcm90b3R5cGVPZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvc2xpY2VkVG9BcnJheS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvdG9Db25zdW1hYmxlQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL3R5cGVvZi5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9yZWdlbmVyYXRvci9pbmRleC5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzP2M4OGMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvcG9seWZpbGxzL29iamVjdC1hc3NpZ24uanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtY2xpZW50LXBhZ2VzLWxvYWRlci5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9idWlsZC93ZWJwYWNrL2xvYWRlcnMvbmV4dC1zdHlsZS1sb2FkZXIvcnVudGltZS9pbmplY3RTdHlsZXNJbnRvU3R5bGVUYWcuanMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9jbGllbnQvbm9ybWFsaXplLXRyYWlsaW5nLXNsYXNoLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vY2xpZW50L3JlcXVlc3QtaWRsZS1jYWxsYmFjay50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uL2NsaWVudC9yb3V0ZS1sb2FkZXIudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9jbGllbnQvcm91dGVyLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vY2xpZW50L3dpdGgtcm91dGVyLnRzeCIsIndlYnBhY2s6Ly9fTl9FLyh3ZWJwYWNrKS9jc3MtbG9hZGVyL2FwaS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzIiwid2VicGFjazovL19OX0UvLi9zdHlsZXMvZ2xvYmFscy5jc3MiLCJ3ZWJwYWNrOi8vX05fRS8od2VicGFjaykvd2VicGFjay9oYXJtb255LW1vZHVsZS5qcyIsIndlYnBhY2s6Ly9fTl9FLyh3ZWJwYWNrKS93ZWJwYWNrL21vZHVsZS5qcyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9hbXAtY29udGV4dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9hbXAudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaGVhZC1tYW5hZ2VyLWNvbnRleHQudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaGVhZC50c3giLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvaTE4bi9ub3JtYWxpemUtbG9jYWxlLXBhdGgudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvbWl0dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9yb3V0ZXItY29udGV4dC50cyIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi9yb3V0ZXIvcm91dGVyLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9mb3JtYXQtdXJsLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9nZXQtYXNzZXQtcGF0aC1mcm9tLXJvdXRlLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9pcy1keW5hbWljLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9wYXJzZS1yZWxhdGl2ZS11cmwudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3F1ZXJ5c3RyaW5nLnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3JvdXRlci91dGlscy9yZXNvbHZlLXJld3JpdGVzLW5vb3AudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3JvdXRlLW1hdGNoZXIudHMiLCJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3V0aWxzL3JvdXRlLXJlZ2V4LnRzIiwid2VicGFjazovL19OX0UvLi4vLi4vLi4vbmV4dC1zZXJ2ZXIvbGliL3NpZGUtZWZmZWN0LnRzeCIsIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL25leHQtc2VydmVyL2xpYi91dGlscy50cyIsIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9uZXh0LXNlcnZlci9zZXJ2ZXIvZGVub3JtYWxpemUtcGFnZS1wYXRoLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvbmV4dC9oZWFkLmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QtaXMvY2pzL3JlYWN0LWlzLmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QtaXMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWFjdC9janMvcmVhY3QtanN4LWRldi1ydW50aW1lLmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QvY2pzL3JlYWN0LmRldmVsb3BtZW50LmpzIiwid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvcmVhY3QvaW5kZXguanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWFjdC9qc3gtZGV2LXJ1bnRpbWUuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9yZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL3BhZ2VzL19hcHAuanMiLCJ3ZWJwYWNrOi8vX05fRS8uL3N0eWxlcy9nbG9iYWxzLmNzcz84ZDc5Il0sIm5hbWVzIjpbInBhdGgiLCJub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaCIsInByb2Nlc3MiLCJyZXF1ZXN0SWRsZUNhbGxiYWNrIiwic2VsZiIsInN0YXJ0IiwiRGF0ZSIsInNldFRpbWVvdXQiLCJjYiIsImRpZFRpbWVvdXQiLCJ0aW1lUmVtYWluaW5nIiwiTWF0aCIsImNhbmNlbElkbGVDYWxsYmFjayIsImNsZWFyVGltZW91dCIsIk1TX01BWF9JRExFX0RFTEFZIiwiZW50cnkiLCJtYXAiLCJQcm9taXNlIiwicHJvbSIsInJlc29sdmUiLCJyZXNvbHZlciIsImZ1dHVyZSIsImdlbmVyYXRvciIsInZhbHVlIiwibGluayIsImRvY3VtZW50Iiwid2luZG93IiwiY2FuUHJlZmV0Y2giLCJoYXNQcmVmZXRjaCIsInJlcyIsIkFTU0VUX0xPQURfRVJST1IiLCJTeW1ib2wiLCJPYmplY3QiLCJlcnIiLCJzY3JpcHQiLCJyZWplY3QiLCJtYXJrQXNzZXRFcnJvciIsIm9uQnVpbGRNYW5pZmVzdCIsImlkbGVUaW1lb3V0Iiwic2NyaXB0cyIsImFzc2V0UHJlZml4IiwiZW5jb2RlVVJJIiwiY3NzIiwiZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCIsIm1hbmlmZXN0Iiwicm91dGUiLCJhbGxGaWxlcyIsInYiLCJlbnRyeXBvaW50cyIsImxvYWRlZFNjcmlwdHMiLCJzdHlsZVNoZWV0cyIsInJvdXRlcyIsImFwcGVuZFNjcmlwdCIsImZldGNoIiwidGV4dCIsImhyZWYiLCJjb250ZW50Iiwid2hlbkVudHJ5cG9pbnQiLCJ3aXRoRnV0dXJlIiwib25FbnRyeXBvaW50IiwiZm4iLCJleHBvcnRzIiwiY29tcG9uZW50IiwiZXJyb3IiLCJpbnB1dCIsIm9sZCIsImxvYWRSb3V0ZSIsImdldEZpbGVzRm9yUm91dGUiLCJlbnRyeXBvaW50Iiwic3R5bGVzIiwicHJlZmV0Y2giLCJjbiIsIm5hdmlnYXRvciIsIm91dHB1dCIsInByZWZldGNoVmlhRG9tIiwiY3JlYXRlUm91dGVMb2FkZXIiLCJzaW5nbGV0b25Sb3V0ZXIiLCJyb3V0ZXIiLCJyZWFkeUNhbGxiYWNrcyIsInJlYWR5IiwidXJsUHJvcGVydHlGaWVsZHMiLCJyb3V0ZXJFdmVudHMiLCJjb3JlTWV0aG9kRmllbGRzIiwiZ2V0IiwiUm91dGVyIiwiZmllbGQiLCJnZXRSb3V0ZXIiLCJldmVudCIsImV2ZW50RmllbGQiLCJfc2luZ2xldG9uUm91dGVyIiwiY29uc29sZSIsIm1lc3NhZ2UiLCJSZWFjdCIsIlJvdXRlckNvbnRleHQiLCJjcmVhdGVSb3V0ZXIiLCJfcm91dGVyIiwiaW5zdGFuY2UiLCJBcnJheSIsIkNvbXBvc2VkQ29tcG9uZW50IiwiZ2V0SW5pdGlhbFByb3BzIiwiV2l0aFJvdXRlcldyYXBwZXIiLCJuYW1lIiwiQW1wU3RhdGVDb250ZXh0IiwiYW1wRmlyc3QiLCJoeWJyaWQiLCJoYXNRdWVyeSIsImlzSW5BbXBNb2RlIiwiSGVhZE1hbmFnZXJDb250ZXh0IiwiaW5BbXBNb2RlIiwiaGVhZCIsImNoaWxkIiwibGlzdCIsImZyYWdtZW50TGlzdCIsIk1FVEFUWVBFUyIsImtleXMiLCJ0YWdzIiwibWV0YVR5cGVzIiwibWV0YUNhdGVnb3JpZXMiLCJoIiwiaXNVbmlxdWUiLCJoYXNLZXkiLCJrZXkiLCJpIiwibGVuIiwibWV0YXR5cGUiLCJjYXRlZ29yeSIsImNhdGVnb3JpZXMiLCJoZWFkRWxlbWVudHMiLCJoZWFkRWxlbWVudENoaWxkcmVuIiwiaGVhZEVsZW1lbnQiLCJkZWZhdWx0SGVhZCIsInByb3BzIiwidW5pcXVlIiwiYyIsImFtcFN0YXRlIiwiaGVhZE1hbmFnZXIiLCJIZWFkIiwicGF0aG5hbWVQYXJ0cyIsInBhdGhuYW1lIiwibG9jYWxlcyIsImxvY2FsZSIsImRldGVjdGVkTG9jYWxlIiwiYWxsIiwib24iLCJvZmYiLCJlbWl0IiwiaGFuZGxlciIsImJhc2VQYXRoIiwiY2FuY2VsbGVkIiwicHJlZml4IiwicGF0aE5vUXVlcnlIYXNoIiwicXVlcnlJbmRleCIsImhhc2hJbmRleCIsImFkZFBhdGhQcmVmaXgiLCJ1cmwiLCJsb2NhdGlvbk9yaWdpbiIsInJlc29sdmVkIiwiaGFzQmFzZVBhdGgiLCJpbnRlcnBvbGF0ZWRSb3V0ZSIsImR5bmFtaWNSZWdleCIsImR5bmFtaWNHcm91cHMiLCJkeW5hbWljTWF0Y2hlcyIsImFzUGF0aG5hbWUiLCJwYXJhbXMiLCJwYXJhbSIsInJlcGxhY2VkIiwicmVwZWF0Iiwib3B0aW9uYWwiLCJzZWdtZW50IiwiZW5jb2RlVVJJQ29tcG9uZW50IiwicmVzdWx0IiwiZmlsdGVyZWRRdWVyeSIsInF1ZXJ5IiwiYmFzZSIsInVybEFzU3RyaW5nIiwiaXNMb2NhbFVSTCIsInJlc29sdmVBcyIsImZpbmFsVXJsIiwiaW50ZXJwb2xhdGVkQXMiLCJpbnRlcnBvbGF0ZUFzIiwiaGFzaCIsIm9taXRQYXJtc0Zyb21RdWVyeSIsInJlc29sdmVkSHJlZiIsIm9yaWdpbiIsInJlc29sdmVIcmVmIiwiaHJlZkhhZE9yaWdpbiIsImFzSGFkT3JpZ2luIiwicmVzb2x2ZWRBcyIsInN0cmlwT3JpZ2luIiwicHJlcGFyZWRVcmwiLCJhZGRCYXNlUGF0aCIsInByZXBhcmVkQXMiLCJhcyIsImFwcGx5QmFzZVBhdGgiLCJjbGVhblBhdGhuYW1lIiwiZGVsQmFzZVBhdGgiLCJwYWdlcyIsInBhZ2UiLCJwYXJzZWRIcmVmIiwibWFudWFsU2Nyb2xsUmVzdG9yYXRpb24iLCJTU0dfREFUQV9OT1RfRk9VTkQiLCJjcmVkZW50aWFscyIsImF0dGVtcHRzIiwiZmV0Y2hSZXRyeSIsImRhdGEiLCJub3RGb3VuZCIsImlzU2VydmVyUmVuZGVyIiwiY29uc3RydWN0b3IiLCJhc1BhdGgiLCJjb21wb25lbnRzIiwic2RjIiwic3ViIiwiY2xjIiwicGFnZUxvYWRlciIsIl9icHMiLCJldmVudHMiLCJfd3JhcEFwcCIsImlzU3NyIiwiaXNGYWxsYmFjayIsIl9pbkZsaWdodFJvdXRlIiwiX3NoYWxsb3ciLCJkZWZhdWx0TG9jYWxlIiwiZG9tYWluTG9jYWxlcyIsImlzUmVhZHkiLCJpc1ByZXZpZXciLCJpc0xvY2FsZURvbWFpbiIsIl9pZHgiLCJlIiwic3RhdGUiLCJzaGFsbG93Iiwib3B0aW9ucyIsIkNvbXBvbmVudCIsImluaXRpYWwiLCJfX05fU1NHIiwiaW5pdGlhbFByb3BzIiwiX19OX1NTUCIsImF1dG9FeHBvcnREeW5hbWljIiwicmVsb2FkIiwicHJlcGFyZVVybEFzIiwibG9jYWxlQ2hhbmdlIiwicGFyc2VkQXMiLCJsb2NhbGVQYXRoUmVzdWx0IiwiZGlkTmF2aWdhdGUiLCJkZXRlY3RlZERvbWFpbiIsImRldGVjdERvbWFpbkxvY2FsZSIsIlNUIiwicGVyZm9ybWFuY2UiLCJyb3V0ZVByb3BzIiwiYWRkTG9jYWxlIiwiY2xlYW5lZEFzIiwiZGVsTG9jYWxlIiwicGFyc2VkIiwiX19yZXdyaXRlcyIsInJlc29sdmVEeW5hbWljUm91dGUiLCJtZXRob2QiLCJyb3V0ZVJlZ2V4Iiwicm91dGVNYXRjaCIsInNob3VsZEludGVycG9sYXRlIiwibWlzc2luZ1BhcmFtcyIsInJvdXRlSW5mbyIsImRlc3RpbmF0aW9uIiwibm90Rm91bmRSb3V0ZSIsImFwcENvbXAiLCJpc1ZhbGlkU2hhbGxvd1JvdXRlIiwiZm9yY2VkU2Nyb2xsIiwieCIsInkiLCJfX04iLCJpZHgiLCJidWlsZENhbmNlbGxhdGlvbkVycm9yIiwiZXhpc3RpbmdSb3V0ZUluZm8iLCJjYWNoZWRSb3V0ZUluZm8iLCJyZXF1aXJlIiwiaXNWYWxpZEVsZW1lbnRUeXBlIiwiZGF0YUhyZWYiLCJvbmx5QUhhc2hDaGFuZ2UiLCJuZXdIYXNoIiwib2xkVXJsTm9IYXNoIiwib2xkSGFzaCIsInNjcm9sbFRvSGFzaCIsImlkRWwiLCJuYW1lRWwiLCJ1cmxJc05ldyIsInJld3JpdGVzUmVzdWx0IiwicCIsImlzU3NnIiwiY2FuY2VsIiwiY29tcG9uZW50UmVzdWx0IiwiX2dldFN0YXRpY0RhdGEiLCJmZXRjaE5leHREYXRhIiwiX2dldFNlcnZlckRhdGEiLCJBcHBUcmVlIiwiY3R4IiwiYWJvcnRDb21wb25lbnRMb2FkIiwibm90aWZ5Iiwic2xhc2hlZFByb3RvY29scyIsInByb3RvY29sIiwidXJsT2JqIiwiaG9zdCIsImF1dGgiLCJob3N0bmFtZSIsIlN0cmluZyIsInF1ZXJ5c3RyaW5nIiwic2VhcmNoIiwiZXh0IiwiVEVTVF9ST1VURSIsImdsb2JhbEJhc2UiLCJyZXNvbHZlZEJhc2UiLCJzZWFyY2hQYXJhbXMiLCJpc05hTiIsIml0ZW0iLCJzdHJpbmdpZnlVcmxRdWVyeVBhcmFtIiwic2VhcmNoUGFyYW1zTGlzdCIsInRhcmdldCIsInJlIiwiZGVjb2RlIiwiZGVjb2RlVVJJQ29tcG9uZW50Iiwic2x1Z05hbWUiLCJnIiwiZ3JvdXBzIiwibSIsInN0ciIsInNlZ21lbnRzIiwibm9ybWFsaXplZFJvdXRlIiwiZ3JvdXBJbmRleCIsInBhcmFtZXRlcml6ZWRSb3V0ZSIsInBhcnNlUGFyYW1ldGVyIiwicG9zIiwiZXNjYXBlUmVnZXgiLCJpc1NlcnZlciIsIl9oYXNIZWFkTWFuYWdlciIsImVtaXRDaGFuZ2UiLCJjb21wb25lbnREaWRNb3VudCIsImNvbXBvbmVudERpZFVwZGF0ZSIsImNvbXBvbmVudFdpbGxVbm1vdW50IiwicmVuZGVyIiwidXNlZCIsInBvcnQiLCJnZXRMb2NhdGlvbk9yaWdpbiIsIkFwcCIsImdldERpc3BsYXlOYW1lIiwibG9hZEdldEluaXRpYWxQcm9wcyIsInBhZ2VQcm9wcyIsImlzUmVzU2VudCIsInVybE9iamVjdEtleXMiLCJTUCIsIk15QXBwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFDQTs7QUFFQSx3Q0FBd0MsU0FBUztBQUNqRDtBQUNBOztBQUVBO0FBQ0E7O0FBRUEsbUM7Ozs7Ozs7Ozs7O0FDVkE7QUFDQTtBQUNBOztB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WUFBWSxNQUFNLE1BQU0sTUFBTSxZQUFZLE1BQU0sTUFBTSxNQUFNLFlBQVksTUFBTSxNQUFNLEtBQUssWUFBWSxPQUFPLEtBQUssV0FBVyxPQUFPLE1BQU0sVUFBVSxhQUFhLFFBQVEsT0FBTyxXQUFXLFdBQVcsVUFBVSxXQUFXLE9BQU8sTUFBTSxXQUFXLFdBQVcsV0FBVyxPQUFPLE9BQU8sV0FBVyxPQUFPLFFBQVEsVUFBVSxXQUFXLE9BQU8sU0FBUyxXQUFXLE9BQU8sTUFBTSxhQUFhLFFBQVEsTUFBTSxXQUFXLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxPQUFPLGFBQWEsUUFBUSxNQUFNLFlBQVksT0FBTyxNQUFNLFlBQVksZUFBZSxRQUFRLE9BQU8sV0FBVyxXQUFXLFVBQVUsV0FBVyxPQUFPLE1BQU0sVUFBVSxPQUFPLE1BQU0sVUFBVSxPQUFPLE1BQU0sV0FBVyxjQUFjLE9BQU8sTUFBTSxZQUFZLFFBQVEsTUFBTSxVQUFVLFdBQVcsT0FBTyxTQUFTLGFBQWEsWUFBWSxZQUFZLFdBQVcsT0FBTyxNQUFNLFVBQVUsVUFBVSxXQUFXLFVBQVUsWUFBWSxLQUFLLE1BQU0sWUFBWSxXQUFXLFdBQVcsT0FBTyxNQUFNLFlBQVksWUFBWSxZQUFZLE1BQU0sTUFBTSxVQUFVLE9BQU8sTUFBTSxXQUFXLFlBQVksWUFBWSxhQUFhLFdBQVcsTUFBTSxNQUFNLFVBQVUsV0FBVyxjQUFjLFFBQVEsTUFBTSxXQUFXLE9BQU8sT0FBTyxXQUFXLE9BQU8sTUFBTSxXQUFXLFdBQVcsT0FBTyxNQUFNLGFBQWEsZUFBZSxhQUFhLFlBQVksT0FBTyxNQUFNLFdBQVcsV0FBVyxPQUFPLFdBQVcsV0FBVyxXQUFXLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxVQUFVLFVBQVUsV0FBVyxZQUFZLFlBQVksT0FBTyxPQUFPLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxTQUFTLFdBQVcsTUFBTSxTQUFTLFVBQVUsT0FBTyxNQUFNLFVBQVUsV0FBVyxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sVUFBVSxVQUFVLFVBQVUsVUFBVSxPQUFPLE1BQU0sVUFBVSxVQUFVLFVBQVUsYUFBYSxhQUFhLFlBQVksTUFBTSxNQUFNLE1BQU0sWUFBWSxNQUFNLEtBQUssTUFBTSxVQUFVLE9BQU8sWUFBWSxVQUFVLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxXQUFXLFdBQVcsT0FBTyxZQUFZLEtBQUssS0FBSyxXQUFXLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxVQUFVLE9BQU8sTUFBTSxVQUFVLFdBQVcsT0FBTyxNQUFNLFdBQVcsT0FBTyxNQUFNLFVBQVUsT0FBTyxNQUFNLFdBQVcsVUFBVSxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sV0FBVyxPQUFPLE1BQU0sWUFBWSxjQUFjLE9BQU8sTUFBTSxZQUFZLGNBQWMsZUFBZSxNQUFNLE1BQU0sTUFBTSxXQUFXLE1BQU0sTUFBTSxNQUFNLFlBQVksY0FBYyxlQUFlLE9BQU8sTUFBTSxNQUFNLFlBQVksTUFBTSxNQUFNLE1BQU0sWUFBWSxjQUFjLGVBQWUsT0FBTyxNQUFNLE1BQU0sV0FBVyxNQUFNLE1BQU0sTUFBTSxZQUFZLGNBQWMsZUFBZSxPQUFPLE1BQU0sTUFBTSxZQUFZLE1BQU0sTUFBTSxNQUFNLFlBQVksY0FBYyxlQUFlLE9BQU8sTUFBTSxNQUFNLFdBQVcsTUFBTSxNQUFNLE1BQU0sWUFBWSxjQUFjLGVBQWUsT0FBTyxNQUFNLE1BQU0sWUFBWSxNQUFNLE1BQU0sTUFBTSxXQUFXLFdBQVcsUUFBUSxNQUFNLFdBQVcsV0FBVyxRQUFRLE1BQU0sV0FBVyxNQUFNLE1BQU0sYUFBYSxRQUFRLE1BQU0sWUFBWSxZQUFZLE9BQU8sTUFBTSxZQUFZLFdBQVcsTUFBTSxNQUFNLFdBQVcsT0FBTyxNQUFNLFdBQVcsWUFBWSxXQUFXLFlBQVksT0FBTyxNQUFNLFVBQVUsT0FBTyxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sY0FBYyxjQUFjLFdBQVcsV0FBVyxVQUFVLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sWUFBWSxZQUFZLFFBQVEsYUFBYSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxPQUFPLE1BQU0sWUFBWSxPQUFPLEtBQUssT0FBTyxNQUFNLFlBQVksT0FBTyxLQUFLLE9BQU8sTUFBTSxZQUFZLE9BQU8sS0FBSyxPQUFPLE1BQU0sWUFBWSxPQUFPLEtBQUssT0FBTyxNQUFNLFlBQVksT0FBTyxLQUFLLE9BQU8sV0FBVyxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsUUFBUSxPQUFPLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsT0FBTyxLQUFLLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLE9BQU8sS0FBSyxPQUFPLEtBQUssVUFBVSxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsT0FBTyxLQUFLLE9BQU8sS0FBSyxVQUFVLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFdBQVcsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sV0FBVyxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLE9BQU8sWUFBWSxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxPQUFPLEtBQUssT0FBTyxLQUFLLFVBQVUsUUFBUSxPQUFPLFdBQVcsVUFBVSxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sVUFBVSxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFdBQVcsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxXQUFXLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsT0FBTyxZQUFZLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLE9BQU8sS0FBSyxPQUFPLEtBQUssVUFBVSxRQUFRLE9BQU8sV0FBVyxVQUFVLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxVQUFVLFVBQVUsUUFBUSxPQUFPLFVBQVUsVUFBVSxRQUFRLE9BQU8sVUFBVSxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsV0FBVyxRQUFRLE9BQU8sV0FBVyxXQUFXLFFBQVEsT0FBTyxXQUFXLFVBQVUsUUFBUSxPQUFPLFdBQVcsUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxPQUFPLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsT0FBTyxLQUFLLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFlBQVksV0FBVyxhQUFhLGFBQWEsT0FBTyxRQUFRLFdBQVcsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxVQUFVLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxjQUFjLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLFdBQVcsWUFBWSxRQUFRLFFBQVEsY0FBYyxhQUFhLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxpQkFBaUIsY0FBYyxhQUFhLFlBQVksV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsUUFBUSxZQUFZLGVBQWUsaUJBQWlCLGNBQWMsZUFBZSxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsWUFBWSxZQUFZLFFBQVEsUUFBUSxZQUFZLFlBQVksUUFBUSxRQUFRLGFBQWEsWUFBWSxRQUFRLFFBQVEsV0FBVyxXQUFXLGNBQWMsZUFBZSxhQUFhLGFBQWEsV0FBVyxXQUFXLFVBQVUsY0FBYyxjQUFjLGFBQWEsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxlQUFlLFFBQVEsUUFBUSxXQUFXLFdBQVcsY0FBYyxlQUFlLGFBQWEsYUFBYSxXQUFXLFdBQVcsVUFBVSxjQUFjLGNBQWMsYUFBYSxhQUFhLFFBQVEsUUFBUSxNQUFNLFlBQVksV0FBVyxRQUFRLEtBQUssUUFBUSxlQUFlLFNBQVMsUUFBUSxVQUFVLFVBQVUsV0FBVyxXQUFXLGNBQWMsZUFBZSxhQUFhLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxVQUFVLFNBQVMsUUFBUSxlQUFlLGVBQWUsWUFBWSxZQUFZLE9BQU8sUUFBUSxXQUFXLFdBQVcsY0FBYyxRQUFRLFFBQVEsV0FBVyxXQUFXLGNBQWMsU0FBUyxRQUFRLGVBQWUsZUFBZSxZQUFZLFlBQVksT0FBTyxRQUFRLFdBQVcsV0FBVyxjQUFjLFFBQVEsUUFBUSxXQUFXLFdBQVcsY0FBYyxTQUFTLFFBQVEsY0FBYyxRQUFRLFFBQVEsY0FBYyxRQUFRLFFBQVEsY0FBYyxTQUFTLFFBQVEsVUFBVSxVQUFVLGNBQWMsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsWUFBWSxPQUFPLFFBQVEsVUFBVSxZQUFZLFFBQVEsUUFBUSxVQUFVLFVBQVUsV0FBVyxZQUFZLGdCQUFnQixpQkFBaUIsY0FBYyxhQUFhLFlBQVksV0FBVyxlQUFlLG1CQUFtQixlQUFlLFlBQVksWUFBWSxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsY0FBYyxlQUFlLFFBQVEsUUFBUSxlQUFlLGVBQWUsUUFBUSxRQUFRLFlBQVksZUFBZSxPQUFPLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxlQUFlLG1CQUFtQixtQkFBbUIsYUFBYSxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsbUJBQW1CLGFBQWEsUUFBUSxRQUFRLFVBQVUsZUFBZSxtQkFBbUIsbUJBQW1CLFFBQVEsUUFBUSxVQUFVLFdBQVcsU0FBUyxRQUFRLGNBQWMsa0JBQWtCLGVBQWUsV0FBVyxZQUFZLFlBQVksV0FBVyxXQUFXLGVBQWUsZUFBZSxXQUFXLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxZQUFZLE9BQU8sUUFBUSxlQUFlLFFBQVEsUUFBUSxlQUFlLFFBQVEsUUFBUSxlQUFlLGNBQWMsZUFBZSxRQUFRLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLGVBQWUsYUFBYSxRQUFRLFFBQVEsV0FBVyxVQUFVLGNBQWMsUUFBUSxRQUFRLGNBQWMsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLGNBQWMsZUFBZSxXQUFXLFdBQVcsYUFBYSxZQUFZLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsV0FBVyxRQUFRLFFBQVEsZUFBZSxlQUFlLFNBQVMsUUFBUSxXQUFXLGVBQWUsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsYUFBYSxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsY0FBYyxrQkFBa0IsZUFBZSxjQUFjLGVBQWUsY0FBYyxZQUFZLGFBQWEsV0FBVyxXQUFXLFFBQVEsUUFBUSxLQUFLLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGNBQWMsa0JBQWtCLGVBQWUsY0FBYyxpQkFBaUIsYUFBYSxhQUFhLE9BQU8sUUFBUSxjQUFjLGtCQUFrQixpQkFBaUIsZ0JBQWdCLGNBQWMsWUFBWSxhQUFhLFdBQVcsV0FBVyxRQUFRLFFBQVEsTUFBTSxZQUFZLFdBQVcsUUFBUSxLQUFLLFFBQVEsZ0JBQWdCLFFBQVEsUUFBUSxjQUFjLGtCQUFrQixlQUFlLGNBQWMsaUJBQWlCLGFBQWEsYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsYUFBYSxPQUFPLFFBQVEsYUFBYSxRQUFRLFFBQVEsV0FBVyxRQUFRLFNBQVMsZUFBZSxlQUFlLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxjQUFjLG1CQUFtQixRQUFRLFVBQVUsY0FBYyxtQkFBbUIsUUFBUSxRQUFRLGNBQWMsbUJBQW1CLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFVBQVUsUUFBUSxTQUFTLFdBQVcsVUFBVSxVQUFVLFVBQVUsUUFBUSxTQUFTLFVBQVUsUUFBUSxRQUFRLFdBQVcsVUFBVSxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsWUFBWSxnQkFBZ0IsaUJBQWlCLGVBQWUsYUFBYSxXQUFXLGFBQWEsYUFBYSxhQUFhLFFBQVEsV0FBVyxXQUFXLGFBQWEsWUFBWSxRQUFRLFdBQVcsV0FBVyxhQUFhLFlBQVksUUFBUSxTQUFTLFdBQVcsU0FBUyxTQUFTLGFBQWEsV0FBVyxPQUFPLFNBQVMsYUFBYSxXQUFXLE9BQU8sUUFBUSxXQUFXLGFBQWEsV0FBVyxRQUFRLFFBQVEsVUFBVSxVQUFVLGVBQWUsYUFBYSxnQkFBZ0IsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxXQUFXLFdBQVcsYUFBYSxhQUFhLGNBQWMsYUFBYSxRQUFRLFdBQVcsVUFBVSxTQUFTLFFBQVEsZ0JBQWdCLG1CQUFtQixlQUFlLFdBQVcsV0FBVyxXQUFXLFFBQVEsUUFBUSxlQUFlLGdCQUFnQixVQUFVLFFBQVEsZ0JBQWdCLGVBQWUsU0FBUyxRQUFRLGdCQUFnQixtQkFBbUIsZUFBZSxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsZ0JBQWdCLFVBQVUsUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFVBQVUsVUFBVSxlQUFlLGFBQWEsZ0JBQWdCLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLGFBQWEsYUFBYSxjQUFjLGFBQWEsUUFBUSxXQUFXLFVBQVUsU0FBUyxRQUFRLGdCQUFnQixtQkFBbUIsZUFBZSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsZUFBZSxnQkFBZ0IsVUFBVSxRQUFRLGdCQUFnQixlQUFlLFNBQVMsUUFBUSxnQkFBZ0IsbUJBQW1CLGdCQUFnQixXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsZ0JBQWdCLFVBQVUsUUFBUSxnQkFBZ0IsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsY0FBYyxZQUFZLFdBQVcsV0FBVyxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxZQUFZLFlBQVksWUFBWSxXQUFXLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsV0FBVyxPQUFPLFFBQVEsVUFBVSxlQUFlLFFBQVEsUUFBUSxXQUFXLGNBQWMsU0FBUyxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsV0FBVyxhQUFhLGVBQWUsT0FBTyxRQUFRLFVBQVUsWUFBWSxjQUFjLFNBQVMsUUFBUSxXQUFXLFlBQVksY0FBYyxZQUFZLFFBQVEsUUFBUSxXQUFXLGNBQWMsY0FBYyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsV0FBVyxhQUFhLGVBQWUsT0FBTyxRQUFRLFVBQVUsWUFBWSxjQUFjLFNBQVMsUUFBUSxXQUFXLFlBQVksY0FBYyxZQUFZLFFBQVEsUUFBUSxXQUFXLGNBQWMsY0FBYyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLFdBQVcsYUFBYSxlQUFlLE9BQU8sUUFBUSxVQUFVLFlBQVksY0FBYyxTQUFTLFFBQVEsV0FBVyxZQUFZLGNBQWMsWUFBWSxRQUFRLFFBQVEsV0FBVyxjQUFjLGNBQWMsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFFBQVEsUUFBUSxXQUFXLGFBQWEsZUFBZSxPQUFPLFFBQVEsVUFBVSxZQUFZLGNBQWMsU0FBUyxRQUFRLFdBQVcsWUFBWSxjQUFjLFlBQVksUUFBUSxRQUFRLFdBQVcsY0FBYyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxRQUFRLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsWUFBWSxhQUFhLE9BQU8sUUFBUSxVQUFVLFlBQVksYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLGVBQWUsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFlBQVksYUFBYSxTQUFTLFFBQVEsY0FBYyxlQUFlLGdCQUFnQixRQUFRLFFBQVEsYUFBYSxRQUFRLFFBQVEsWUFBWSxRQUFRLFFBQVEsWUFBWSxhQUFhLFlBQVksUUFBUSxRQUFRLFlBQVksYUFBYSxZQUFZLFFBQVEsUUFBUSxZQUFZLFFBQVEsUUFBUSxNQUFNLFlBQVksUUFBUSxLQUFLLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsUUFBUSxRQUFRLEtBQUssV0FBVyxRQUFRLE1BQU0sV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLGNBQWMsaUJBQWlCLGFBQWEsWUFBWSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLGNBQWMsY0FBYyxlQUFlLGVBQWUsVUFBVSxZQUFZLGFBQWEsWUFBWSxXQUFXLGFBQWEsYUFBYSxXQUFXLFlBQVksT0FBTyxRQUFRLFVBQVUsZUFBZSxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxPQUFPLE1BQU0sV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsS0FBSyxPQUFPLE1BQU0sV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLEtBQUssUUFBUSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsZUFBZSxRQUFRLFFBQVEsV0FBVyxjQUFjLGlCQUFpQixhQUFhLFdBQVcsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLFFBQVEsUUFBUSxVQUFVLGVBQWUsUUFBUSxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsYUFBYSxZQUFZLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsUUFBUSxXQUFXLFNBQVMsUUFBUSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxlQUFlLFFBQVEsUUFBUSxXQUFXLGNBQWMsaUJBQWlCLGFBQWEsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFdBQVcsY0FBYyxpQkFBaUIsYUFBYSxZQUFZLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxVQUFVLFdBQVcsVUFBVSxjQUFjLGVBQWUsYUFBYSxXQUFXLFdBQVcsV0FBVyxVQUFVLFFBQVEsUUFBUSxjQUFjLGdCQUFnQixPQUFPLFFBQVEsWUFBWSxhQUFhLGNBQWMsT0FBTyxRQUFRLFlBQVksYUFBYSxXQUFXLFNBQVMsUUFBUSxVQUFVLFNBQVMsUUFBUSxVQUFVLGVBQWUsZUFBZSxhQUFhLGNBQWMsYUFBYSxTQUFTLFFBQVEsVUFBVSxXQUFXLFlBQVksUUFBUSxRQUFRLFlBQVksZUFBZSxpQkFBaUIsUUFBUSxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksZ0JBQWdCLFFBQVEsUUFBUSxZQUFZLGNBQWMsT0FBTyxRQUFRLFlBQVksT0FBTyxRQUFRLGVBQWUsUUFBUSxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksUUFBUSxTQUFTLFdBQVcsV0FBVyxXQUFXLFFBQVEsU0FBUyxXQUFXLFVBQVUsUUFBUSxtQkFBbUIsVUFBVSxTQUFTLFFBQVEsVUFBVSxVQUFVLFdBQVcsUUFBUSxRQUFRLFVBQVUsU0FBUyxTQUFTLFdBQVcsUUFBUSxTQUFTLFlBQVksV0FBVyxPQUFPLFVBQVUsWUFBWSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxRQUFRLFNBQVMsVUFBVSxRQUFRLFNBQVMsV0FBVyxRQUFRLFNBQVMsYUFBYSxXQUFXLE9BQU8sU0FBUyxhQUFhLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsV0FBVyxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFlBQVksYUFBYSxVQUFVLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFdBQVcsV0FBVyxhQUFhLFdBQVcsT0FBTyxRQUFRLGVBQWUsZUFBZSxRQUFRLFFBQVEsWUFBWSxhQUFhLFdBQVcsUUFBUSxTQUFTLFlBQVksZUFBZSxpQkFBaUIsUUFBUSxRQUFRLFdBQVcsYUFBYSxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsYUFBYSxPQUFPLFNBQVMsWUFBWSxjQUFjLFFBQVEsU0FBUyxVQUFVLFdBQVcsU0FBUyxTQUFTLFVBQVUsVUFBVSxXQUFXLFNBQVMsUUFBUSxVQUFVLFFBQVEsUUFBUSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxtQkFBbUIsUUFBUSxjQUFjLFVBQVUsV0FBVyxXQUFXLFdBQVcsUUFBUSxRQUFRLGVBQWUsbUJBQW1CLG1CQUFtQixjQUFjLGFBQWEsV0FBVyxRQUFRLFFBQVEsVUFBVSxXQUFXLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLGVBQWUsbUJBQW1CLFNBQVMsUUFBUSxXQUFXLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxhQUFhLFlBQVksV0FBVyxXQUFXLGFBQWEsWUFBWSxRQUFRLFFBQVEsTUFBTSxZQUFZLFFBQVEsS0FBSyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFFBQVEsUUFBUSxVQUFVLFFBQVEsS0FBSyxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFFBQVEsZUFBZSxRQUFRLFNBQVMsZUFBZSxRQUFRLFFBQVEsZUFBZSxtQkFBbUIsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLGVBQWUsUUFBUSxVQUFVLGVBQWUsU0FBUyxRQUFRLFlBQVksT0FBTyxRQUFRLFlBQVksT0FBTyxRQUFRLGVBQWUsUUFBUSxRQUFRLGVBQWUsUUFBUSxRQUFRLGVBQWUsUUFBUSxTQUFTLFlBQVksT0FBTyxRQUFRLGVBQWUsbUJBQW1CLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxlQUFlLFFBQVEsVUFBVSxZQUFZLFFBQVEsUUFBUSxXQUFXLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxZQUFZLFdBQVcsWUFBWSxPQUFPLFFBQVEsVUFBVSxVQUFVLFFBQVEsUUFBUSxXQUFXLFdBQVcsUUFBUSxRQUFRLFdBQVcsWUFBWSxXQUFXLE9BQU8sUUFBUSxXQUFXLFlBQVksV0FBVyxPQUFPLFNBQVMsVUFBVSxTQUFTLFFBQVEsVUFBVSxXQUFXLFNBQVMsUUFBUSxlQUFlLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxlQUFlLGVBQWUsUUFBUSxRQUFRLGFBQWEsUUFBUSxRQUFRLFdBQVcsZUFBZSxlQUFlLFFBQVEsUUFBUSxhQUFhLFFBQVEsUUFBUSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxZQUFZLFlBQVksUUFBUSxVQUFVLFVBQVUsU0FBUyxTQUFTLGFBQWEsV0FBVyxRQUFRLFNBQVMsYUFBYSxXQUFXLFFBQVEsUUFBUSxlQUFlLFFBQVEsT0FBTyxPQUFPLFVBQVUsV0FBVyxRQUFRLFFBQVEsVUFBVSxXQUFXLFFBQVEsUUFBUSxVQUFVLFVBQVUsUUFBUSxRQUFRLGFBQWEsV0FBVyxPQUFPLFNBQVMsV0FBVyxRQUFRLFNBQVMsV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sU0FBUyxXQUFXLFFBQVEsU0FBUyxXQUFXLFFBQVEsTUFBTSxRQUFRLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyxZQUFZLGFBQWEsWUFBWSxlQUFlLGVBQWUsWUFBWSxZQUFZLGFBQWEsUUFBUSxRQUFRLE9BQU8sYUFBYSxRQUFRLEtBQUssUUFBUSxXQUFXLFFBQVEsUUFBUSxjQUFjLG1CQUFtQixRQUFRLFFBQVEsV0FBVyxlQUFlLFFBQVEsUUFBUSxVQUFVLGNBQWMsa0JBQWtCLGVBQWUsVUFBVSxXQUFXLFdBQVcsZUFBZSxpQkFBaUIsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLEtBQUssUUFBUSxVQUFVLFFBQVEsUUFBUSxVQUFVLGVBQWUsY0FBYyxlQUFlLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLGNBQWMsYUFBYSxXQUFXLE9BQU8sUUFBUSxjQUFjLGFBQWEsV0FBVyxRQUFRLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxVQUFVLFVBQVUsYUFBYSxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsV0FBVyxhQUFhLFdBQVcsT0FBTyxRQUFRLFdBQVcsYUFBYSxXQUFXLFFBQVEsUUFBUSxVQUFVLFVBQVUsVUFBVSxlQUFlLGVBQWUsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLFVBQVUsZUFBZSxlQUFlLFlBQVksUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsV0FBVyxXQUFXLFFBQVEsUUFBUSxXQUFXLFVBQVUsWUFBWSxhQUFhLFlBQVksWUFBWSxhQUFhLFFBQVEsUUFBUSxNQUFNLGFBQWEsUUFBUSxLQUFLLFFBQVEsVUFBVSxhQUFhLGVBQWUsYUFBYSxPQUFPLFFBQVEsVUFBVSxhQUFhLGVBQWUsZ0JBQWdCLG1CQUFtQixTQUFTLFFBQVEsZUFBZSxRQUFRLFFBQVEsVUFBVSxZQUFZLGNBQWMsYUFBYSxPQUFPLFFBQVEsWUFBWSxhQUFhLGFBQWEsZUFBZSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsYUFBYSxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxhQUFhLGdCQUFnQixhQUFhLFdBQVcsWUFBWSxXQUFXLFdBQVcsWUFBWSxPQUFPLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLFNBQVMsUUFBUSxXQUFXLFdBQVcsZUFBZSxlQUFlLFlBQVksUUFBUSxRQUFRLFVBQVUsU0FBUyxRQUFRLGNBQWMsU0FBUyxRQUFRLGVBQWUsUUFBUSxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsV0FBVyxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsYUFBYSxpQkFBaUIsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsWUFBWSxnQkFBZ0IsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsS0FBSyxlQUFlLFFBQVEsS0FBSyxRQUFRLFVBQVUsY0FBYyxlQUFlLGFBQWEsY0FBYyxXQUFXLFFBQVEsUUFBUSxVQUFVLFdBQVcsV0FBVyxXQUFXLFdBQVcsWUFBWSxXQUFXLFlBQVksY0FBYyxRQUFRLFFBQVEsTUFBTSxZQUFZLFFBQVEsTUFBTSxRQUFRLFlBQVksWUFBWSxTQUFTLFFBQVEsV0FBVyxRQUFRLFFBQVEsS0FBSyxVQUFVLFFBQVEsTUFBTSxRQUFRLFVBQVUsV0FBVyxVQUFVLFdBQVcsWUFBWSxRQUFRLFFBQVEsVUFBVSxXQUFXLFlBQVksUUFBUSxRQUFRLFVBQVUsV0FBVyxZQUFZLGFBQWEsT0FBTyxRQUFRLFlBQVksZUFBZSxRQUFRLFFBQVEsV0FBVyxVQUFVLFdBQVcsV0FBVyxhQUFhLGFBQWEsUUFBUSxRQUFRLGFBQWEsV0FBVyxPQUFPLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxZQUFZLGFBQWEsYUFBYSxPQUFPLFFBQVEsVUFBVSxZQUFZLGVBQWUsZUFBZSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsV0FBVyxjQUFjLFNBQVMsUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLGFBQWEsV0FBVyxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsY0FBYyxjQUFjLFFBQVEsUUFBUSxXQUFXLGNBQWMsU0FBUyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxRQUFRLFFBQVEsYUFBYSxXQUFXLE9BQU8sUUFBUSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsY0FBYyxRQUFRLFFBQVEsV0FBVyxjQUFjLFFBQVEsS0FBSyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsU0FBUyxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxZQUFZLGVBQWUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsVUFBVSxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxZQUFZLGVBQWUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxhQUFhLGFBQWEsVUFBVSxRQUFRLFlBQVksZUFBZSxTQUFTLFFBQVEsV0FBVyxZQUFZLFFBQVEsUUFBUSxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsWUFBWSxlQUFlLFNBQVMsUUFBUSxXQUFXLFlBQVksUUFBUSxRQUFRLFdBQVcsYUFBYSxhQUFhLFVBQVUsUUFBUSxXQUFXLGNBQWMsa0JBQWtCLGVBQWUsV0FBVyxZQUFZLFVBQVUsWUFBWSxlQUFlLFFBQVEsUUFBUSxVQUFVLFdBQVcsY0FBYyxRQUFRLFFBQVEsVUFBVSxlQUFlLGtCQUFrQixRQUFRLFFBQVEsV0FBVyxXQUFXLFdBQVcsV0FBVyxjQUFjLFNBQVMsUUFBUSxlQUFlLFNBQVMsUUFBUSxjQUFjLGNBQWMsYUFBYSxhQUFhLGVBQWUsZUFBZSxXQUFXLGNBQWMsYUFBYSxPQUFPLFFBQVEsVUFBVSxRQUFRLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxXQUFXLFVBQVUsV0FBVyxRQUFRLFFBQVEsY0FBYyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsWUFBWSxpQkFBaUIsZUFBZSxXQUFXLFlBQVksV0FBVyxPQUFPLFFBQVEsV0FBVyxlQUFlLFNBQVMsUUFBUSxlQUFlLGVBQWUsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsY0FBYyxjQUFjLFVBQVUsVUFBVSxXQUFXLFVBQVUsU0FBUyxRQUFRLFdBQVcsVUFBVSxjQUFjLGVBQWUsUUFBUSxRQUFRLGVBQWUsZUFBZSxRQUFRLFFBQVEsT0FBTyxhQUFhLFFBQVEsS0FBSyxRQUFRLGNBQWMsUUFBUSxRQUFRLGVBQWUsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFdBQVcsV0FBVyxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxXQUFXLFVBQVUsV0FBVyxhQUFhLGFBQWEsV0FBVyxhQUFhLFlBQVksU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLGNBQWMsY0FBYyxVQUFVLGFBQWEsT0FBTyxRQUFRLFVBQVUsUUFBUSxRQUFRLGNBQWMsU0FBUyxRQUFRLFVBQVUsVUFBVSxXQUFXLFdBQVcsZUFBZSxlQUFlLGFBQWEsV0FBVyxPQUFPLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLGNBQWMsU0FBUyxRQUFRLFdBQVcsVUFBVSxZQUFZLFFBQVEsUUFBUSxVQUFVLFVBQVUsVUFBVSxXQUFXLFdBQVcsV0FBVyxXQUFXLGFBQWEsV0FBVyxPQUFPLFFBQVEsVUFBVSxTQUFTLFFBQVEsV0FBVyxVQUFVLFVBQVUsVUFBVSxXQUFXLFNBQVMsT0FBTyxPQUFPLGVBQWUsZUFBZSxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsZUFBZSxRQUFRLEtBQUssT0FBTyxRQUFRLGVBQWUsUUFBUSxLQUFLLE9BQU8sT0FBTyxlQUFlLFFBQVEsS0FBSyxRQUFRLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLFFBQVEsT0FBTyxPQUFPLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLE9BQU8sS0FBSyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxVQUFVLGFBQWEsT0FBTyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsT0FBTyxLQUFLLE9BQU8sT0FBTyxVQUFVLFVBQVUsVUFBVSxVQUFVLFFBQVEsUUFBUSxVQUFVLFVBQVUsYUFBYSxPQUFPLFFBQVEsYUFBYSxPQUFPLFFBQVEsV0FBVyxRQUFRLFFBQVEsYUFBYSxPQUFPLEtBQUssT0FBTyxPQUFPLFVBQVUsVUFBVSxVQUFVLFVBQVUsUUFBUSxRQUFRLFVBQVUsVUFBVSxhQUFhLE9BQU8sUUFBUSxhQUFhLE9BQU8sUUFBUSxXQUFXLFFBQVEsUUFBUSxhQUFhLE9BQU8sS0FBSyxPQUFPLE9BQU8sVUFBVSxVQUFVLFVBQVUsVUFBVSxRQUFRLFFBQVEsVUFBVSxVQUFVLGFBQWEsT0FBTyxRQUFRLGFBQWEsT0FBTyxRQUFRLFdBQVcsUUFBUSxRQUFRLGFBQWEsT0FBTyxLQUFLLFFBQVEsV0FBVyxjQUFjLGNBQWMsY0FBYyxrQkFBa0IsY0FBYyxjQUFjLGlCQUFpQixjQUFjLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLGFBQWEsYUFBYSxVQUFVLFFBQVEsUUFBUSxjQUFjLFFBQVEsUUFBUSxXQUFXLFVBQVUsY0FBYyxrQkFBa0IsUUFBUSxRQUFRLFdBQVcsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsUUFBUSxRQUFRLFVBQVUsV0FBVyxhQUFhLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLGNBQWMsa0JBQWtCLFFBQVEsUUFBUSxVQUFVLFdBQVcsYUFBYSxRQUFRLFFBQVEsV0FBVyxRQUFRLFFBQVEsVUFBVSxRQUFRLFFBQVEsVUFBVSxXQUFXLGFBQWEsUUFBUSxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsY0FBYyxrQkFBa0IsUUFBUSxRQUFRLFVBQVUsV0FBVyxhQUFhLFFBQVEsUUFBUSxlQUFlLGVBQWUsWUFBWSxhQUFhLGFBQWEsV0FBVyxRQUFRLFFBQVEsV0FBVyxVQUFVLFdBQVcsY0FBYyxjQUFjLGVBQWUsa0JBQWtCLGNBQWMsY0FBYyxpQkFBaUIsY0FBYyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxhQUFhLGFBQWEsWUFBWSxZQUFZLFdBQVcsWUFBWSxPQUFPLFFBQVEsV0FBVyxVQUFVLGNBQWMsa0JBQWtCLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxRQUFRLFVBQVUsV0FBVyxlQUFlLFFBQVEsUUFBUSxhQUFhLGNBQWMsYUFBYSxRQUFRLFFBQVEsV0FBVyxjQUFjLGtCQUFrQixRQUFRLFFBQVEsVUFBVSxXQUFXLGVBQWUsUUFBUSxRQUFRLGFBQWEsY0FBYyxhQUFhLFFBQVEsUUFBUSxXQUFXLFFBQVEsUUFBUSxVQUFVLFdBQVcsZUFBZSxRQUFRLFFBQVEsYUFBYSxjQUFjLGFBQWEsT0FBTyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsY0FBYyxlQUFlLFVBQVUsV0FBVyxTQUFTLFFBQVEsV0FBVyxjQUFjLGtCQUFrQixRQUFRLFFBQVEsVUFBVSxXQUFXLGVBQWUsUUFBUSxRQUFRLGFBQWEsY0FBYyxhQUFhLFFBQVEsUUFBUSxXQUFXLFdBQVcsWUFBWSxpQkFBaUIsZUFBZSxhQUFhLFdBQVcsT0FBTyxRQUFRLFVBQVUsU0FBUyxRQUFRLFdBQVcsWUFBWSxRQUFRLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxVQUFVLFdBQVcsUUFBUSxRQUFRLFVBQVUsVUFBVSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFdBQVcsV0FBVyxXQUFXLGVBQWUsUUFBUSxRQUFRLE1BQU0sWUFBWSxRQUFRLE1BQU0sVUFBVSxVQUFVLFNBQVMsY0FBYyxNQUFNLFdBQVcsU0FBUyxTQUFTLFdBQVcsU0FBUyxjQUFjLEtBQUssVUFBVSxXQUFXLFVBQVUsUUFBUSxVQUFVLFVBQVUsVUFBVSxRQUFRLFNBQVMsVUFBVSxVQUFVLGVBQWUsUUFBUSxRQUFRLFFBQVEsYUFBYSxRQUFRLE1BQU0sU0FBUyxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsV0FBVyxXQUFXLGNBQWMsY0FBYyxZQUFZLGFBQWEsV0FBVyxVQUFVLGNBQWMsaUJBQWlCLFFBQVEsUUFBUSxRQUFRLGFBQWEsUUFBUSxLQUFLLFVBQVUsWUFBWSxhQUFhLFVBQVUsY0FBYyxTQUFTLFFBQVEsVUFBVSxTQUFTLFFBQVEsVUFBVSxTQUFTLFNBQVMsV0FBVyxjQUFjLGtCQUFrQixlQUFlLFdBQVcsV0FBVyxTQUFTLGNBQWMsS0FBSyxLQUFLLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsVUFBVSxVQUFVLFVBQVUsVUFBVSxVQUFVLFdBQVcsVUFBVSxlQUFlLGVBQWUsZUFBZSxlQUFlLFFBQVEsUUFBUSxXQUFXLFVBQVUsY0FBYyxrQkFBa0IsY0FBYyxlQUFlLG1CQUFtQixlQUFlLFVBQVUsYUFBYSxhQUFhLFVBQVUsV0FBVyxXQUFXLGNBQWMsaUJBQWlCLFFBQVEsUUFBUSxPQUFPLGFBQWEsUUFBUSxLQUFLLFFBQVEsY0FBYyxTQUFTLFFBQVEsV0FBVyxVQUFVLGNBQWMsY0FBYyxlQUFlLG1CQUFtQixnQkFBZ0IsYUFBYSxTQUFTLFNBQVMsZUFBZSxRQUFRLFFBQVEsYUFBYSxPQUFPLFFBQVEsWUFBWSxRQUFRLFFBQVEsS0FBSyxXQUFXLFFBQVEsS0FBSyxRQUFRLFdBQVcsY0FBYyxrQkFBa0IsZUFBZSxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxjQUFjLGtCQUFrQixtQkFBbUIsU0FBUyxRQUFRLEtBQUssV0FBVyxRQUFRLFFBQVEsVUFBVSxVQUFVLFFBQVEsS0FBSyxRQUFRLFdBQVcsY0FBYyxrQkFBa0IsZUFBZSxXQUFXLFdBQVcsVUFBVSxXQUFXLFNBQVMsUUFBUSxjQUFjLGtCQUFrQixTQUFTLFFBQVEsTUFBTSxXQUFXLFFBQVEsS0FBSyxRQUFRLFVBQVUsVUFBVSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxZQUFZLE9BQU8sUUFBUSxVQUFVLFNBQVMsUUFBUSxXQUFXLFVBQVUsUUFBUSxRQUFRLFVBQVUsV0FBVyxVQUFVLFFBQVEsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFVBQVUsVUFBVSxVQUFVLFVBQVUsY0FBYyxTQUFTLFFBQVEsVUFBVSxVQUFVLFVBQVUsVUFBVSxjQUFjLFNBQVMsUUFBUSxXQUFXLFVBQVUsY0FBYyxTQUFTLE9BQU8sT0FBTyxXQUFXLFVBQVUsY0FBYyxRQUFRLEtBQUssT0FBTyxPQUFPLFdBQVcsVUFBVSxjQUFjLFFBQVEsS0FBSyxPQUFPLE9BQU8sV0FBVyxVQUFVLGNBQWMsUUFBUSxLQUFLLE9BQU8sT0FBTyxXQUFXLFVBQVUsY0FBYyxRQUFRLEtBQUssT0FBTyxPQUFPLFdBQVcsVUFBVSxjQUFjLFFBQVEsS0FBSyxTQUFTLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFVBQVUsVUFBVSxVQUFVLFVBQVUsYUFBYSxhQUFhLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxjQUFjLEtBQUssV0FBVyxXQUFXLFNBQVMsY0FBYyxLQUFLLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLE9BQU8sTUFBTSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFFBQVEsS0FBSyxPQUFPLE1BQU0sV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsUUFBUSxLQUFLLE9BQU8sTUFBTSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxTQUFTLFFBQVEsV0FBVyxRQUFRLEtBQUssT0FBTyxNQUFNLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFdBQVcsU0FBUyxRQUFRLFdBQVcsV0FBVyxTQUFTLFFBQVEsV0FBVyxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNBQVMsUUFBUSxXQUFXLFNB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QTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLDhGQUE4RixlQUFlO0FBQzdHO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSyxFQUFFOztBQUVQLGlEQUFpRDtBQUNqRDtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQSwyQkFBMkI7O0FBRTNCO0FBQ0E7QUFDQTtBQUNBLEdBQUc7OztBQUdIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDOztBQUV0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTs7QUFFUjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7O0FBRVI7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQSxTQUFTO0FBQ1Qsd0JBQXdCO0FBQ3hCO0FBQ0EsU0FBUztBQUNULHdCQUF3QjtBQUN4QjtBQUNBLFNBQVM7QUFDVCx5QkFBeUI7QUFDekI7QUFDQSxTQUFTO0FBQ1QseUJBQXlCO0FBQ3pCO0FBQ0EsU0FBUztBQUNULGtDQUFrQztBQUNsQztBQUNBLFNBQVM7QUFDVCw0QkFBNEI7QUFDNUI7QUFDQSxTQUFTO0FBQ1QsT0FBTztBQUNQO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBLEtBQUs7OztBQUdMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSwwREFBMEQ7O0FBRTFEO0FBQ0E7O0FBRUE7QUFDQSx3REFBd0Q7QUFDeEQ7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7OztBQUdSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87O0FBRVA7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFlBQVksa0JBQWtCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCOzs7QUFHakI7QUFDQTtBQUNBLGFBQWE7QUFDYjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLEdBQUc7OztBQUdIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwSEFBMEg7QUFDMUg7QUFDQTtBQUNBOztBQUVBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSxtRUFBbUU7O0FBRW5FO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2IsV0FBVyxjQUFjO0FBQ3pCLFdBQVcsRUFBRTtBQUNiLFdBQVcsRUFBRTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxFQUFFO0FBQ2I7QUFDQTtBQUNBOzs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QjtBQUN4QjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssRUFBRTs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFFO0FBQ1A7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUw7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsRUFBRTtBQUNiLFdBQVcsT0FBTztBQUNs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QTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEVBQUU7QUFDYixXQUFXLEVBQUU7QUFDYixXQUFXLEVBQUU7QUFDYixXQUFXLGNBQWM7QUFDekIsV0FBVyxFQUFFO0FBQ2IsV0FBVyxFQUFFO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEVBQUU7QUFDYjtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCO0FBQ3hCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxFQUFF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QTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFQTtBQUNBOztBQUVBOztBQUVBLDJCQUEyQjs7QUFFM0I7QUFDQTtBQUNBO0FBQ0EsR0FBRzs7O0FBR0g7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLOzs7QUFHTDtBQUNBLHlDQUF5QztBQUN6Qzs7QUFFQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFF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QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1AsS0FBSztBQUNMOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBLFdBQVc7QUFDWDs7QUFFQTtBQUNBO0FBQ0Esd0NBQXdDLFdBQVc7QUFDbkQ7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDJCQUEyQjtBQUMzQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUEsU0FBUztBQUNUO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0MsY0FBYztBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxpQ0FBaUMsa0JBQWtCO0FBQ25EO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxpQkFBaUI7O0FBRWpCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixpQkFBaUI7QUFDekM7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtB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ZUEsU0FBZjtBQUFBO0FBQUE7QUFBQTtBQUFBLFlBUEY7QUFBQSxrQkFERjtBQVdEOztLQVpRSSxLO0FBY01BLG9FQUFmOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUNqQkEsVUFBVSxtQkFBTyxDQUFDLG1OQUF3RztBQUMxSCwwQkFBMEIsbUJBQU8sQ0FBQyw0U0FBbUs7O0FBRXJNOztBQUVBO0FBQ0EsMEJBQTBCLFFBQVM7QUFDbkM7O0FBRUE7O0FBRUEsbUNBQW1DO0FBQ25DO0FBQ0Esc0VBQXNFLHdDQUF3QztBQUM5RztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOzs7QUFHQSxJQUFJLElBQVU7QUFDZDtBQUNBLGtFQUFrRSxpQkFBaUIsY0FBYyxNQUFNLFlBQVksaUNBQWlDO0FBQ3BKLFVBQVUsZ0JBQWdCLGVBQWUsWUFBWSxpQ0FBaUM7QUFDdEYsVUFBVSxVQUFVLGVBQWU7QUFDbkM7O0FBRUE7QUFDQSxNQUFNLDRTQUFtSztBQUN6SztBQUNBLGtCQUFrQixtQkFBTyxDQUFDLDRTQUFtSzs7QUFFN0w7O0FBRUE7QUFDQSw0QkFBNEIsUUFBUztBQUNyQzs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQSxzQyIsImZpbGUiOiJzdGF0aWMvY2h1bmtzL3BhZ2VzL19hcHAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBfYXJyYXlMaWtlVG9BcnJheShhcnIsIGxlbikge1xuICBpZiAobGVuID09IG51bGwgfHwgbGVuID4gYXJyLmxlbmd0aCkgbGVuID0gYXJyLmxlbmd0aDtcblxuICBmb3IgKHZhciBpID0gMCwgYXJyMiA9IG5ldyBBcnJheShsZW4pOyBpIDwgbGVuOyBpKyspIHtcbiAgICBhcnIyW2ldID0gYXJyW2ldO1xuICB9XG5cbiAgcmV0dXJuIGFycjI7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2FycmF5TGlrZVRvQXJyYXk7IiwiZnVuY3Rpb24gX2FycmF5V2l0aEhvbGVzKGFycikge1xuICBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSByZXR1cm4gYXJyO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9hcnJheVdpdGhIb2xlczsiLCJ2YXIgYXJyYXlMaWtlVG9BcnJheSA9IHJlcXVpcmUoXCIuL2FycmF5TGlrZVRvQXJyYXlcIik7XG5cbmZ1bmN0aW9uIF9hcnJheVdpdGhvdXRIb2xlcyhhcnIpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgcmV0dXJuIGFycmF5TGlrZVRvQXJyYXkoYXJyKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfYXJyYXlXaXRob3V0SG9sZXM7IiwiZnVuY3Rpb24gX2Fzc2VydFRoaXNJbml0aWFsaXplZChzZWxmKSB7XG4gIGlmIChzZWxmID09PSB2b2lkIDApIHtcbiAgICB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoXCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWRcIik7XG4gIH1cblxuICByZXR1cm4gc2VsZjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfYXNzZXJ0VGhpc0luaXRpYWxpemVkOyIsImZ1bmN0aW9uIGFzeW5jR2VuZXJhdG9yU3RlcChnZW4sIHJlc29sdmUsIHJlamVjdCwgX25leHQsIF90aHJvdywga2V5LCBhcmcpIHtcbiAgdHJ5IHtcbiAgICB2YXIgaW5mbyA9IGdlbltrZXldKGFyZyk7XG4gICAgdmFyIHZhbHVlID0gaW5mby52YWx1ZTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZWplY3QoZXJyb3IpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChpbmZvLmRvbmUpIHtcbiAgICByZXNvbHZlKHZhbHVlKTtcbiAgfSBlbHNlIHtcbiAgICBQcm9taXNlLnJlc29sdmUodmFsdWUpLnRoZW4oX25leHQsIF90aHJvdyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gX2FzeW5jVG9HZW5lcmF0b3IoZm4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgc2VsZiA9IHRoaXMsXG4gICAgICAgIGFyZ3MgPSBhcmd1bWVudHM7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgIHZhciBnZW4gPSBmbi5hcHBseShzZWxmLCBhcmdzKTtcblxuICAgICAgZnVuY3Rpb24gX25leHQodmFsdWUpIHtcbiAgICAgICAgYXN5bmNHZW5lcmF0b3JTdGVwKGdlbiwgcmVzb2x2ZSwgcmVqZWN0LCBfbmV4dCwgX3Rocm93LCBcIm5leHRcIiwgdmFsdWUpO1xuICAgICAgfVxuXG4gICAgICBmdW5jdGlvbiBfdGhyb3coZXJyKSB7XG4gICAgICAgIGFzeW5jR2VuZXJhdG9yU3RlcChnZW4sIHJlc29sdmUsIHJlamVjdCwgX25leHQsIF90aHJvdywgXCJ0aHJvd1wiLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICBfbmV4dCh1bmRlZmluZWQpO1xuICAgIH0pO1xuICB9O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9hc3luY1RvR2VuZXJhdG9yOyIsImZ1bmN0aW9uIF9jbGFzc0NhbGxDaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHtcbiAgaWYgKCEoaW5zdGFuY2UgaW5zdGFuY2VvZiBDb25zdHJ1Y3RvcikpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpO1xuICB9XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2NsYXNzQ2FsbENoZWNrOyIsInZhciBzZXRQcm90b3R5cGVPZiA9IHJlcXVpcmUoXCIuL3NldFByb3RvdHlwZU9mXCIpO1xuXG52YXIgaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0ID0gcmVxdWlyZShcIi4vaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0XCIpO1xuXG5mdW5jdGlvbiBfY29uc3RydWN0KFBhcmVudCwgYXJncywgQ2xhc3MpIHtcbiAgaWYgKGlzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCgpKSB7XG4gICAgbW9kdWxlLmV4cG9ydHMgPSBfY29uc3RydWN0ID0gUmVmbGVjdC5jb25zdHJ1Y3Q7XG4gIH0gZWxzZSB7XG4gICAgbW9kdWxlLmV4cG9ydHMgPSBfY29uc3RydWN0ID0gZnVuY3Rpb24gX2NvbnN0cnVjdChQYXJlbnQsIGFyZ3MsIENsYXNzKSB7XG4gICAgICB2YXIgYSA9IFtudWxsXTtcbiAgICAgIGEucHVzaC5hcHBseShhLCBhcmdzKTtcbiAgICAgIHZhciBDb25zdHJ1Y3RvciA9IEZ1bmN0aW9uLmJpbmQuYXBwbHkoUGFyZW50LCBhKTtcbiAgICAgIHZhciBpbnN0YW5jZSA9IG5ldyBDb25zdHJ1Y3RvcigpO1xuICAgICAgaWYgKENsYXNzKSBzZXRQcm90b3R5cGVPZihpbnN0YW5jZSwgQ2xhc3MucHJvdG90eXBlKTtcbiAgICAgIHJldHVybiBpbnN0YW5jZTtcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIF9jb25zdHJ1Y3QuYXBwbHkobnVsbCwgYXJndW1lbnRzKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfY29uc3RydWN0OyIsImZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgcHJvcHMpIHtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07XG4gICAgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlO1xuICAgIGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTtcbiAgICBpZiAoXCJ2YWx1ZVwiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBfY3JlYXRlQ2xhc3MoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7XG4gIGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpO1xuICBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7XG4gIHJldHVybiBDb25zdHJ1Y3Rvcjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfY3JlYXRlQ2xhc3M7IiwiZnVuY3Rpb24gX2RlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkge1xuICBpZiAoa2V5IGluIG9iaikge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwge1xuICAgICAgdmFsdWU6IHZhbHVlLFxuICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgb2JqW2tleV0gPSB2YWx1ZTtcbiAgfVxuXG4gIHJldHVybiBvYmo7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX2RlZmluZVByb3BlcnR5OyIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHtcbiAgaWYgKGtleSBpbiBvYmopIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHtcbiAgICAgIHZhbHVlOiB2YWx1ZSxcbiAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICB3cml0YWJsZTogdHJ1ZVxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIG9ialtrZXldID0gdmFsdWU7XG4gIH1cblxuICByZXR1cm4gb2JqO1xufSIsImZ1bmN0aW9uIF9nZXRQcm90b3R5cGVPZihvKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gX2dldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mID8gT2JqZWN0LmdldFByb3RvdHlwZU9mIDogZnVuY3Rpb24gX2dldFByb3RvdHlwZU9mKG8pIHtcbiAgICByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pO1xuICB9O1xuICByZXR1cm4gX2dldFByb3RvdHlwZU9mKG8pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9nZXRQcm90b3R5cGVPZjsiLCJ2YXIgc2V0UHJvdG90eXBlT2YgPSByZXF1aXJlKFwiLi9zZXRQcm90b3R5cGVPZlwiKTtcblxuZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7XG4gIGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gXCJmdW5jdGlvblwiICYmIHN1cGVyQ2xhc3MgIT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb25cIik7XG4gIH1cblxuICBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHtcbiAgICBjb25zdHJ1Y3Rvcjoge1xuICAgICAgdmFsdWU6IHN1YkNsYXNzLFxuICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICB9XG4gIH0pO1xuICBpZiAoc3VwZXJDbGFzcykgc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9pbmhlcml0czsiLCJmdW5jdGlvbiBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KG9iaikge1xuICByZXR1cm4gb2JqICYmIG9iai5fX2VzTW9kdWxlID8gb2JqIDoge1xuICAgIFwiZGVmYXVsdFwiOiBvYmpcbiAgfTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0OyIsInZhciBfdHlwZW9mID0gcmVxdWlyZShcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvdHlwZW9mXCIpO1xuXG5mdW5jdGlvbiBfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUoKSB7XG4gIGlmICh0eXBlb2YgV2Vha01hcCAhPT0gXCJmdW5jdGlvblwiKSByZXR1cm4gbnVsbDtcbiAgdmFyIGNhY2hlID0gbmV3IFdlYWtNYXAoKTtcblxuICBfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUgPSBmdW5jdGlvbiBfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUoKSB7XG4gICAgcmV0dXJuIGNhY2hlO1xuICB9O1xuXG4gIHJldHVybiBjYWNoZTtcbn1cblxuZnVuY3Rpb24gX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQob2JqKSB7XG4gIGlmIChvYmogJiYgb2JqLl9fZXNNb2R1bGUpIHtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgaWYgKG9iaiA9PT0gbnVsbCB8fCBfdHlwZW9mKG9iaikgIT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIG9iaiAhPT0gXCJmdW5jdGlvblwiKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIFwiZGVmYXVsdFwiOiBvYmpcbiAgICB9O1xuICB9XG5cbiAgdmFyIGNhY2hlID0gX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlKCk7XG5cbiAgaWYgKGNhY2hlICYmIGNhY2hlLmhhcyhvYmopKSB7XG4gICAgcmV0dXJuIGNhY2hlLmdldChvYmopO1xuICB9XG5cbiAgdmFyIG5ld09iaiA9IHt9O1xuICB2YXIgaGFzUHJvcGVydHlEZXNjcmlwdG9yID0gT2JqZWN0LmRlZmluZVByb3BlcnR5ICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7XG5cbiAgZm9yICh2YXIga2V5IGluIG9iaikge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7XG4gICAgICB2YXIgZGVzYyA9IGhhc1Byb3BlcnR5RGVzY3JpcHRvciA/IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBrZXkpIDogbnVsbDtcblxuICAgICAgaWYgKGRlc2MgJiYgKGRlc2MuZ2V0IHx8IGRlc2Muc2V0KSkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobmV3T2JqLCBrZXksIGRlc2MpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3T2JqW2tleV0gPSBvYmpba2V5XTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZXdPYmpbXCJkZWZhdWx0XCJdID0gb2JqO1xuXG4gIGlmIChjYWNoZSkge1xuICAgIGNhY2hlLnNldChvYmosIG5ld09iaik7XG4gIH1cblxuICByZXR1cm4gbmV3T2JqO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkOyIsImZ1bmN0aW9uIF9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QoKSB7XG4gIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJ1bmRlZmluZWRcIiB8fCAhUmVmbGVjdC5jb25zdHJ1Y3QpIHJldHVybiBmYWxzZTtcbiAgaWYgKFJlZmxlY3QuY29uc3RydWN0LnNoYW0pIHJldHVybiBmYWxzZTtcbiAgaWYgKHR5cGVvZiBQcm94eSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gdHJ1ZTtcblxuICB0cnkge1xuICAgIERhdGUucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoRGF0ZSwgW10sIGZ1bmN0aW9uICgpIHt9KSk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0OyIsImZ1bmN0aW9uIF9pdGVyYWJsZVRvQXJyYXkoaXRlcikge1xuICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gXCJ1bmRlZmluZWRcIiAmJiBTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGl0ZXIpKSByZXR1cm4gQXJyYXkuZnJvbShpdGVyKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaXRlcmFibGVUb0FycmF5OyIsImZ1bmN0aW9uIF9pdGVyYWJsZVRvQXJyYXlMaW1pdChhcnIsIGkpIHtcbiAgaWYgKHR5cGVvZiBTeW1ib2wgPT09IFwidW5kZWZpbmVkXCIgfHwgIShTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGFycikpKSByZXR1cm47XG4gIHZhciBfYXJyID0gW107XG4gIHZhciBfbiA9IHRydWU7XG4gIHZhciBfZCA9IGZhbHNlO1xuICB2YXIgX2UgPSB1bmRlZmluZWQ7XG5cbiAgdHJ5IHtcbiAgICBmb3IgKHZhciBfaSA9IGFycltTeW1ib2wuaXRlcmF0b3JdKCksIF9zOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7XG4gICAgICBfYXJyLnB1c2goX3MudmFsdWUpO1xuXG4gICAgICBpZiAoaSAmJiBfYXJyLmxlbmd0aCA9PT0gaSkgYnJlYWs7XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICBfZCA9IHRydWU7XG4gICAgX2UgPSBlcnI7XG4gIH0gZmluYWxseSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghX24gJiYgX2lbXCJyZXR1cm5cIl0gIT0gbnVsbCkgX2lbXCJyZXR1cm5cIl0oKTtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgaWYgKF9kKSB0aHJvdyBfZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gX2Fycjtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfaXRlcmFibGVUb0FycmF5TGltaXQ7IiwiZnVuY3Rpb24gX25vbkl0ZXJhYmxlUmVzdCgpIHtcbiAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBkZXN0cnVjdHVyZSBub24taXRlcmFibGUgaW5zdGFuY2UuXFxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLlwiKTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBfbm9uSXRlcmFibGVSZXN0OyIsImZ1bmN0aW9uIF9ub25JdGVyYWJsZVNwcmVhZCgpIHtcbiAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkludmFsaWQgYXR0ZW1wdCB0byBzcHJlYWQgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxcbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC5cIik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX25vbkl0ZXJhYmxlU3ByZWFkOyIsInZhciBfdHlwZW9mID0gcmVxdWlyZShcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvdHlwZW9mXCIpO1xuXG52YXIgYXNzZXJ0VGhpc0luaXRpYWxpemVkID0gcmVxdWlyZShcIi4vYXNzZXJ0VGhpc0luaXRpYWxpemVkXCIpO1xuXG5mdW5jdGlvbiBfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybihzZWxmLCBjYWxsKSB7XG4gIGlmIChjYWxsICYmIChfdHlwZW9mKGNhbGwpID09PSBcIm9iamVjdFwiIHx8IHR5cGVvZiBjYWxsID09PSBcImZ1bmN0aW9uXCIpKSB7XG4gICAgcmV0dXJuIGNhbGw7XG4gIH1cblxuICByZXR1cm4gYXNzZXJ0VGhpc0luaXRpYWxpemVkKHNlbGYpO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IF9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuOyIsImZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gX3NldFByb3RvdHlwZU9mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIF9zZXRQcm90b3R5cGVPZihvLCBwKSB7XG4gICAgby5fX3Byb3RvX18gPSBwO1xuICAgIHJldHVybiBvO1xuICB9O1xuXG4gIHJldHVybiBfc2V0UHJvdG90eXBlT2YobywgcCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX3NldFByb3RvdHlwZU9mOyIsInZhciBhcnJheVdpdGhIb2xlcyA9IHJlcXVpcmUoXCIuL2FycmF5V2l0aEhvbGVzXCIpO1xuXG52YXIgaXRlcmFibGVUb0FycmF5TGltaXQgPSByZXF1aXJlKFwiLi9pdGVyYWJsZVRvQXJyYXlMaW1pdFwiKTtcblxudmFyIHVuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5ID0gcmVxdWlyZShcIi4vdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXlcIik7XG5cbnZhciBub25JdGVyYWJsZVJlc3QgPSByZXF1aXJlKFwiLi9ub25JdGVyYWJsZVJlc3RcIik7XG5cbmZ1bmN0aW9uIF9zbGljZWRUb0FycmF5KGFyciwgaSkge1xuICByZXR1cm4gYXJyYXlXaXRoSG9sZXMoYXJyKSB8fCBpdGVyYWJsZVRvQXJyYXlMaW1pdChhcnIsIGkpIHx8IHVuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5KGFyciwgaSkgfHwgbm9uSXRlcmFibGVSZXN0KCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX3NsaWNlZFRvQXJyYXk7IiwidmFyIGFycmF5V2l0aG91dEhvbGVzID0gcmVxdWlyZShcIi4vYXJyYXlXaXRob3V0SG9sZXNcIik7XG5cbnZhciBpdGVyYWJsZVRvQXJyYXkgPSByZXF1aXJlKFwiLi9pdGVyYWJsZVRvQXJyYXlcIik7XG5cbnZhciB1bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSA9IHJlcXVpcmUoXCIuL3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5XCIpO1xuXG52YXIgbm9uSXRlcmFibGVTcHJlYWQgPSByZXF1aXJlKFwiLi9ub25JdGVyYWJsZVNwcmVhZFwiKTtcblxuZnVuY3Rpb24gX3RvQ29uc3VtYWJsZUFycmF5KGFycikge1xuICByZXR1cm4gYXJyYXlXaXRob3V0SG9sZXMoYXJyKSB8fCBpdGVyYWJsZVRvQXJyYXkoYXJyKSB8fCB1bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheShhcnIpIHx8IG5vbkl0ZXJhYmxlU3ByZWFkKCk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX3RvQ29uc3VtYWJsZUFycmF5OyIsImZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7XG4gIFwiQGJhYmVsL2hlbHBlcnMgLSB0eXBlb2ZcIjtcblxuICBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHtcbiAgICBtb2R1bGUuZXhwb3J0cyA9IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikge1xuICAgICAgcmV0dXJuIHR5cGVvZiBvYmo7XG4gICAgfTtcbiAgfSBlbHNlIHtcbiAgICBtb2R1bGUuZXhwb3J0cyA9IF90eXBlb2YgPSBmdW5jdGlvbiBfdHlwZW9mKG9iaikge1xuICAgICAgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgJiYgb2JqICE9PSBTeW1ib2wucHJvdG90eXBlID8gXCJzeW1ib2xcIiA6IHR5cGVvZiBvYmo7XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBfdHlwZW9mKG9iaik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX3R5cGVvZjsiLCJ2YXIgYXJyYXlMaWtlVG9BcnJheSA9IHJlcXVpcmUoXCIuL2FycmF5TGlrZVRvQXJyYXlcIik7XG5cbmZ1bmN0aW9uIF91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheShvLCBtaW5MZW4pIHtcbiAgaWYgKCFvKSByZXR1cm47XG4gIGlmICh0eXBlb2YgbyA9PT0gXCJzdHJpbmdcIikgcmV0dXJuIGFycmF5TGlrZVRvQXJyYXkobywgbWluTGVuKTtcbiAgdmFyIG4gPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobykuc2xpY2UoOCwgLTEpO1xuICBpZiAobiA9PT0gXCJPYmplY3RcIiAmJiBvLmNvbnN0cnVjdG9yKSBuID0gby5jb25zdHJ1Y3Rvci5uYW1lO1xuICBpZiAobiA9PT0gXCJNYXBcIiB8fCBuID09PSBcIlNldFwiKSByZXR1cm4gQXJyYXkuZnJvbShvKTtcbiAgaWYgKG4gPT09IFwiQXJndW1lbnRzXCIgfHwgL14oPzpVaXxJKW50KD86OHwxNnwzMikoPzpDbGFtcGVkKT9BcnJheSQvLnRlc3QobikpIHJldHVybiBhcnJheUxpa2VUb0FycmF5KG8sIG1pbkxlbik7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5OyIsIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcInJlZ2VuZXJhdG9yLXJ1bnRpbWVcIik7XG4iLCJ2YXIgYXBpID0gcmVxdWlyZShcIiEuLi8uLi8uLi9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtc3R5bGUtbG9hZGVyL3J1bnRpbWUvaW5qZWN0U3R5bGVzSW50b1N0eWxlVGFnLmpzXCIpO1xuICAgICAgICAgICAgdmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9uZXh0L2Rpc3QvY29tcGlsZWQvY3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi01LTEhLi4vLi4vLi4vbmV4dC9kaXN0L2NvbXBpbGVkL3Bvc3Rjc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTUtMiEuL2Jvb3RzdHJhcC5jc3NcIik7XG5cbiAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50Ll9fZXNNb2R1bGUgPyBjb250ZW50LmRlZmF1bHQgOiBjb250ZW50O1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcbiAgICAgICAgICAgIH1cblxudmFyIG9wdGlvbnMgPSB7fTtcblxub3B0aW9ucy5pbnNlcnQgPSBmdW5jdGlvbihlbGVtZW50KXsvLyBUaGVzZSBlbGVtZW50cyBzaG91bGQgYWx3YXlzIGV4aXN0LiBJZiB0aGV5IGRvIG5vdCxcbi8vIHRoaXMgY29kZSBzaG91bGQgZmFpbC5cbnZhciBhbmNob3JFbGVtZW50PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNfX25leHRfY3NzX19ET19OT1RfVVNFX18nKTt2YXIgcGFyZW50Tm9kZT1hbmNob3JFbGVtZW50LnBhcmVudE5vZGU7Ly8gTm9ybWFsbHkgPGhlYWQ+XG4vLyBFYWNoIHN0eWxlIHRhZyBzaG91bGQgYmUgcGxhY2VkIHJpZ2h0IGJlZm9yZSBvdXJcbi8vIGFuY2hvci4gQnkgaW5zZXJ0aW5nIGJlZm9yZSBhbmQgbm90IGFmdGVyLCB3ZSBkbyBub3Rcbi8vIG5lZWQgdG8gdHJhY2sgdGhlIGxhc3QgaW5zZXJ0ZWQgZWxlbWVudC5cbnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGVsZW1lbnQsYW5jaG9yRWxlbWVudCk7fTtcbm9wdGlvbnMuc2luZ2xldG9uID0gZmFsc2U7XG5cbnZhciB1cGRhdGUgPSBhcGkoY29udGVudCwgb3B0aW9ucyk7XG5cblxuaWYgKG1vZHVsZS5ob3QpIHtcbiAgaWYgKCFjb250ZW50LmxvY2FscyB8fCBtb2R1bGUuaG90LmludmFsaWRhdGUpIHtcbiAgICB2YXIgaXNFcXVhbExvY2FscyA9IGZ1bmN0aW9uIGlzRXF1YWxMb2NhbHMoYSxiLGlzTmFtZWRFeHBvcnQpe2lmKCFhJiZifHxhJiYhYil7cmV0dXJuIGZhbHNlO31sZXQgcDtmb3IocCBpbiBhKXtpZihpc05hbWVkRXhwb3J0JiZwPT09J2RlZmF1bHQnKXsvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29udGludWVcbmNvbnRpbnVlO31pZihhW3BdIT09YltwXSl7cmV0dXJuIGZhbHNlO319Zm9yKHAgaW4gYil7aWYoaXNOYW1lZEV4cG9ydCYmcD09PSdkZWZhdWx0Jyl7Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRpbnVlXG5jb250aW51ZTt9aWYoIWFbcF0pe3JldHVybiBmYWxzZTt9fXJldHVybiB0cnVlO307XG4gICAgdmFyIG9sZExvY2FscyA9IGNvbnRlbnQubG9jYWxzO1xuXG4gICAgbW9kdWxlLmhvdC5hY2NlcHQoXG4gICAgICBcIiEhLi4vLi4vLi4vbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvY2pzLmpzPz9yZWYtLTUtb25lT2YtNS0xIS4uLy4uLy4uL25leHQvZGlzdC9jb21waWxlZC9wb3N0Y3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi01LTIhLi9ib290c3RyYXAuY3NzXCIsXG4gICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi9uZXh0L2Rpc3QvY29tcGlsZWQvY3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi01LTEhLi4vLi4vLi4vbmV4dC9kaXN0L2NvbXBpbGVkL3Bvc3Rjc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTUtMiEuL2Jvb3RzdHJhcC5jc3NcIik7XG5cbiAgICAgICAgICAgICAgY29udGVudCA9IGNvbnRlbnQuX19lc01vZHVsZSA/IGNvbnRlbnQuZGVmYXVsdCA6IGNvbnRlbnQ7XG5cbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGlmICghaXNFcXVhbExvY2FscyhvbGRMb2NhbHMsIGNvbnRlbnQubG9jYWxzKSkge1xuICAgICAgICAgICAgICAgIG1vZHVsZS5ob3QuaW52YWxpZGF0ZSgpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgb2xkTG9jYWxzID0gY29udGVudC5sb2NhbHM7XG5cbiAgICAgICAgICAgICAgdXBkYXRlKGNvbnRlbnQpO1xuICAgICAgfVxuICAgIClcbiAgfVxuXG4gIG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHtcbiAgICB1cGRhdGUoKTtcbiAgfSk7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHMgfHwge307IiwiXCJ1c2Ugc3RyaWN0XCI7dmFyIGFzc2lnbj1PYmplY3QuYXNzaWduLmJpbmQoT2JqZWN0KTttb2R1bGUuZXhwb3J0cz1hc3NpZ247bW9kdWxlLmV4cG9ydHMuZGVmYXVsdD1tb2R1bGUuZXhwb3J0cztcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW9iamVjdC1hc3NpZ24uanMubWFwIiwiXG4gICAgICAod2luZG93Ll9fTkVYVF9QID0gd2luZG93Ll9fTkVYVF9QIHx8IFtdKS5wdXNoKFtcbiAgICAgICAgXCIvX2FwcFwiLFxuICAgICAgICBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIHJlcXVpcmUoXCJwcml2YXRlLW5leHQtcGFnZXMvX2FwcC5qc1wiKTtcbiAgICAgICAgfVxuICAgICAgXSk7XG4gICAgIiwiXCJ1c2Ugc3RyaWN0XCI7Y29uc3QgaXNPbGRJRT1mdW5jdGlvbiBpc09sZElFKCl7bGV0IG1lbW87cmV0dXJuIGZ1bmN0aW9uIG1lbW9yaXplKCl7aWYodHlwZW9mIG1lbW89PT0ndW5kZWZpbmVkJyl7Ly8gVGVzdCBmb3IgSUUgPD0gOSBhcyBwcm9wb3NlZCBieSBCcm93c2VyaGFja3Ncbi8vIEBzZWUgaHR0cDovL2Jyb3dzZXJoYWNrcy5jb20vI2hhY2stZTcxZDg2OTJmNjUzMzQxNzNmZWU3MTVjMjIyY2I4MDVcbi8vIFRlc3RzIGZvciBleGlzdGVuY2Ugb2Ygc3RhbmRhcmQgZ2xvYmFscyBpcyB0byBhbGxvdyBzdHlsZS1sb2FkZXJcbi8vIHRvIG9wZXJhdGUgY29ycmVjdGx5IGludG8gbm9uLXN0YW5kYXJkIGVudmlyb25tZW50c1xuLy8gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vd2VicGFjay1jb250cmliL3N0eWxlLWxvYWRlci9pc3N1ZXMvMTc3XG5tZW1vPUJvb2xlYW4od2luZG93JiZkb2N1bWVudCYmZG9jdW1lbnQuYWxsJiYhd2luZG93LmF0b2IpO31yZXR1cm4gbWVtbzt9O30oKTtjb25zdCBnZXRUYXJnZXQ9ZnVuY3Rpb24gZ2V0VGFyZ2V0KCl7Y29uc3QgbWVtbz17fTtyZXR1cm4gZnVuY3Rpb24gbWVtb3JpemUodGFyZ2V0KXtpZih0eXBlb2YgbWVtb1t0YXJnZXRdPT09J3VuZGVmaW5lZCcpe2xldCBzdHlsZVRhcmdldD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCk7Ly8gU3BlY2lhbCBjYXNlIHRvIHJldHVybiBoZWFkIG9mIGlmcmFtZSBpbnN0ZWFkIG9mIGlmcmFtZSBpdHNlbGZcbmlmKHdpbmRvdy5IVE1MSUZyYW1lRWxlbWVudCYmc3R5bGVUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuSFRNTElGcmFtZUVsZW1lbnQpe3RyeXsvLyBUaGlzIHdpbGwgdGhyb3cgYW4gZXhjZXB0aW9uIGlmIGFjY2VzcyB0byBpZnJhbWUgaXMgYmxvY2tlZFxuLy8gZHVlIHRvIGNyb3NzLW9yaWdpbiByZXN0cmljdGlvbnNcbnN0eWxlVGFyZ2V0PXN0eWxlVGFyZ2V0LmNvbnRlbnREb2N1bWVudC5oZWFkO31jYXRjaChlKXsvLyBpc3RhbmJ1bCBpZ25vcmUgbmV4dFxuc3R5bGVUYXJnZXQ9bnVsbDt9fW1lbW9bdGFyZ2V0XT1zdHlsZVRhcmdldDt9cmV0dXJuIG1lbW9bdGFyZ2V0XTt9O30oKTtjb25zdCBzdHlsZXNJbkRvbT1bXTtmdW5jdGlvbiBnZXRJbmRleEJ5SWRlbnRpZmllcihpZGVudGlmaWVyKXtsZXQgcmVzdWx0PS0xO2ZvcihsZXQgaT0wO2k8c3R5bGVzSW5Eb20ubGVuZ3RoO2krKyl7aWYoc3R5bGVzSW5Eb21baV0uaWRlbnRpZmllcj09PWlkZW50aWZpZXIpe3Jlc3VsdD1pO2JyZWFrO319cmV0dXJuIHJlc3VsdDt9ZnVuY3Rpb24gbW9kdWxlc1RvRG9tKGxpc3Qsb3B0aW9ucyl7Y29uc3QgaWRDb3VudE1hcD17fTtjb25zdCBpZGVudGlmaWVycz1bXTtmb3IobGV0IGk9MDtpPGxpc3QubGVuZ3RoO2krKyl7Y29uc3QgaXRlbT1saXN0W2ldO2NvbnN0IGlkPW9wdGlvbnMuYmFzZT9pdGVtWzBdK29wdGlvbnMuYmFzZTppdGVtWzBdO2NvbnN0IGNvdW50PWlkQ291bnRNYXBbaWRdfHwwO2NvbnN0IGlkZW50aWZpZXI9YCR7aWR9ICR7Y291bnR9YDtpZENvdW50TWFwW2lkXT1jb3VudCsxO2NvbnN0IGluZGV4PWdldEluZGV4QnlJZGVudGlmaWVyKGlkZW50aWZpZXIpO2NvbnN0IG9iaj17Y3NzOml0ZW1bMV0sbWVkaWE6aXRlbVsyXSxzb3VyY2VNYXA6aXRlbVszXX07aWYoaW5kZXghPT0tMSl7c3R5bGVzSW5Eb21baW5kZXhdLnJlZmVyZW5jZXMrKztzdHlsZXNJbkRvbVtpbmRleF0udXBkYXRlcihvYmopO31lbHNle3N0eWxlc0luRG9tLnB1c2goe2lkZW50aWZpZXIsdXBkYXRlcjphZGRTdHlsZShvYmosb3B0aW9ucykscmVmZXJlbmNlczoxfSk7fWlkZW50aWZpZXJzLnB1c2goaWRlbnRpZmllcik7fXJldHVybiBpZGVudGlmaWVyczt9ZnVuY3Rpb24gaW5zZXJ0U3R5bGVFbGVtZW50KG9wdGlvbnMpe2NvbnN0IHN0eWxlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7Y29uc3QgYXR0cmlidXRlcz1vcHRpb25zLmF0dHJpYnV0ZXN8fHt9O2lmKHR5cGVvZiBhdHRyaWJ1dGVzLm5vbmNlPT09J3VuZGVmaW5lZCcpe2NvbnN0IG5vbmNlPS8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZlxudHlwZW9mIF9fd2VicGFja19ub25jZV9fIT09J3VuZGVmaW5lZCc/X193ZWJwYWNrX25vbmNlX186bnVsbDtpZihub25jZSl7YXR0cmlidXRlcy5ub25jZT1ub25jZTt9fU9iamVjdC5rZXlzKGF0dHJpYnV0ZXMpLmZvckVhY2goa2V5PT57c3R5bGUuc2V0QXR0cmlidXRlKGtleSxhdHRyaWJ1dGVzW2tleV0pO30pO2lmKHR5cGVvZiBvcHRpb25zLmluc2VydD09PSdmdW5jdGlvbicpe29wdGlvbnMuaW5zZXJ0KHN0eWxlKTt9ZWxzZXtjb25zdCB0YXJnZXQ9Z2V0VGFyZ2V0KG9wdGlvbnMuaW5zZXJ0fHwnaGVhZCcpO2lmKCF0YXJnZXQpe3Rocm93IG5ldyBFcnJvcihcIkNvdWxkbid0IGZpbmQgYSBzdHlsZSB0YXJnZXQuIFRoaXMgcHJvYmFibHkgbWVhbnMgdGhhdCB0aGUgdmFsdWUgZm9yIHRoZSAnaW5zZXJ0JyBwYXJhbWV0ZXIgaXMgaW52YWxpZC5cIik7fXRhcmdldC5hcHBlbmRDaGlsZChzdHlsZSk7fXJldHVybiBzdHlsZTt9ZnVuY3Rpb24gcmVtb3ZlU3R5bGVFbGVtZW50KHN0eWxlKXsvLyBpc3RhbmJ1bCBpZ25vcmUgaWZcbmlmKHN0eWxlLnBhcmVudE5vZGU9PT1udWxsKXtyZXR1cm4gZmFsc2U7fXN0eWxlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoc3R5bGUpO30vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAgKi9jb25zdCByZXBsYWNlVGV4dD1mdW5jdGlvbiByZXBsYWNlVGV4dCgpe2NvbnN0IHRleHRTdG9yZT1bXTtyZXR1cm4gZnVuY3Rpb24gcmVwbGFjZShpbmRleCxyZXBsYWNlbWVudCl7dGV4dFN0b3JlW2luZGV4XT1yZXBsYWNlbWVudDtyZXR1cm4gdGV4dFN0b3JlLmZpbHRlcihCb29sZWFuKS5qb2luKCdcXG4nKTt9O30oKTtmdW5jdGlvbiBhcHBseVRvU2luZ2xldG9uVGFnKHN0eWxlLGluZGV4LHJlbW92ZSxvYmope2NvbnN0IGNzcz1yZW1vdmU/Jyc6b2JqLm1lZGlhP2BAbWVkaWEgJHtvYmoubWVkaWF9IHske29iai5jc3N9fWA6b2JqLmNzczsvLyBGb3Igb2xkIElFXG4vKiBpc3RhbmJ1bCBpZ25vcmUgaWYgICovaWYoc3R5bGUuc3R5bGVTaGVldCl7c3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0PXJlcGxhY2VUZXh0KGluZGV4LGNzcyk7fWVsc2V7Y29uc3QgY3NzTm9kZT1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpO2NvbnN0IGNoaWxkTm9kZXM9c3R5bGUuY2hpbGROb2RlcztpZihjaGlsZE5vZGVzW2luZGV4XSl7c3R5bGUucmVtb3ZlQ2hpbGQoY2hpbGROb2Rlc1tpbmRleF0pO31pZihjaGlsZE5vZGVzLmxlbmd0aCl7c3R5bGUuaW5zZXJ0QmVmb3JlKGNzc05vZGUsY2hpbGROb2Rlc1tpbmRleF0pO31lbHNle3N0eWxlLmFwcGVuZENoaWxkKGNzc05vZGUpO319fWZ1bmN0aW9uIGFwcGx5VG9UYWcoc3R5bGUsb3B0aW9ucyxvYmope2xldCBjc3M9b2JqLmNzcztjb25zdCBtZWRpYT1vYmoubWVkaWE7Y29uc3Qgc291cmNlTWFwPW9iai5zb3VyY2VNYXA7aWYobWVkaWEpe3N0eWxlLnNldEF0dHJpYnV0ZSgnbWVkaWEnLG1lZGlhKTt9ZWxzZXtzdHlsZS5yZW1vdmVBdHRyaWJ1dGUoJ21lZGlhJyk7fWlmKHNvdXJjZU1hcCYmdHlwZW9mIGJ0b2EhPT0ndW5kZWZpbmVkJyl7Y3NzKz1gXFxuLyojIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCwke2J0b2EodW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHNvdXJjZU1hcCkpKSl9ICovYDt9Ly8gRm9yIG9sZCBJRVxuLyogaXN0YW5idWwgaWdub3JlIGlmICAqL2lmKHN0eWxlLnN0eWxlU2hlZXQpe3N0eWxlLnN0eWxlU2hlZXQuY3NzVGV4dD1jc3M7fWVsc2V7d2hpbGUoc3R5bGUuZmlyc3RDaGlsZCl7c3R5bGUucmVtb3ZlQ2hpbGQoc3R5bGUuZmlyc3RDaGlsZCk7fXN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO319bGV0IHNpbmdsZXRvbj1udWxsO2xldCBzaW5nbGV0b25Db3VudGVyPTA7ZnVuY3Rpb24gYWRkU3R5bGUob2JqLG9wdGlvbnMpe2xldCBzdHlsZTtsZXQgdXBkYXRlO2xldCByZW1vdmU7aWYob3B0aW9ucy5zaW5nbGV0b24pe2NvbnN0IHN0eWxlSW5kZXg9c2luZ2xldG9uQ291bnRlcisrO3N0eWxlPXNpbmdsZXRvbnx8KHNpbmdsZXRvbj1pbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucykpO3VwZGF0ZT1hcHBseVRvU2luZ2xldG9uVGFnLmJpbmQobnVsbCxzdHlsZSxzdHlsZUluZGV4LGZhbHNlKTtyZW1vdmU9YXBwbHlUb1NpbmdsZXRvblRhZy5iaW5kKG51bGwsc3R5bGUsc3R5bGVJbmRleCx0cnVlKTt9ZWxzZXtzdHlsZT1pbnNlcnRTdHlsZUVsZW1lbnQob3B0aW9ucyk7dXBkYXRlPWFwcGx5VG9UYWcuYmluZChudWxsLHN0eWxlLG9wdGlvbnMpO3JlbW92ZT0oKT0+e3JlbW92ZVN0eWxlRWxlbWVudChzdHlsZSk7fTt9dXBkYXRlKG9iaik7cmV0dXJuIGZ1bmN0aW9uIHVwZGF0ZVN0eWxlKG5ld09iail7aWYobmV3T2JqKXtpZihuZXdPYmouY3NzPT09b2JqLmNzcyYmbmV3T2JqLm1lZGlhPT09b2JqLm1lZGlhJiZuZXdPYmouc291cmNlTWFwPT09b2JqLnNvdXJjZU1hcCl7cmV0dXJuO311cGRhdGUob2JqPW5ld09iaik7fWVsc2V7cmVtb3ZlKCk7fX07fW1vZHVsZS5leHBvcnRzPShsaXN0LG9wdGlvbnMpPT57b3B0aW9ucz1vcHRpb25zfHx7fTsvLyBGb3JjZSBzaW5nbGUtdGFnIHNvbHV0aW9uIG9uIElFNi05LCB3aGljaCBoYXMgYSBoYXJkIGxpbWl0IG9uIHRoZSAjIG9mIDxzdHlsZT5cbi8vIHRhZ3MgaXQgd2lsbCBhbGxvdyBvbiBhIHBhZ2VcbmlmKCFvcHRpb25zLnNpbmdsZXRvbiYmdHlwZW9mIG9wdGlvbnMuc2luZ2xldG9uIT09J2Jvb2xlYW4nKXtvcHRpb25zLnNpbmdsZXRvbj1pc09sZElFKCk7fWxpc3Q9bGlzdHx8W107bGV0IGxhc3RJZGVudGlmaWVycz1tb2R1bGVzVG9Eb20obGlzdCxvcHRpb25zKTtyZXR1cm4gZnVuY3Rpb24gdXBkYXRlKG5ld0xpc3Qpe25ld0xpc3Q9bmV3TGlzdHx8W107aWYoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG5ld0xpc3QpIT09J1tvYmplY3QgQXJyYXldJyl7cmV0dXJuO31mb3IobGV0IGk9MDtpPGxhc3RJZGVudGlmaWVycy5sZW5ndGg7aSsrKXtjb25zdCBpZGVudGlmaWVyPWxhc3RJZGVudGlmaWVyc1tpXTtjb25zdCBpbmRleD1nZXRJbmRleEJ5SWRlbnRpZmllcihpZGVudGlmaWVyKTtzdHlsZXNJbkRvbVtpbmRleF0ucmVmZXJlbmNlcy0tO31jb25zdCBuZXdMYXN0SWRlbnRpZmllcnM9bW9kdWxlc1RvRG9tKG5ld0xpc3Qsb3B0aW9ucyk7Zm9yKGxldCBpPTA7aTxsYXN0SWRlbnRpZmllcnMubGVuZ3RoO2krKyl7Y29uc3QgaWRlbnRpZmllcj1sYXN0SWRlbnRpZmllcnNbaV07Y29uc3QgaW5kZXg9Z2V0SW5kZXhCeUlkZW50aWZpZXIoaWRlbnRpZmllcik7aWYoc3R5bGVzSW5Eb21baW5kZXhdLnJlZmVyZW5jZXM9PT0wKXtzdHlsZXNJbkRvbVtpbmRleF0udXBkYXRlcigpO3N0eWxlc0luRG9tLnNwbGljZShpbmRleCwxKTt9fWxhc3RJZGVudGlmaWVycz1uZXdMYXN0SWRlbnRpZmllcnM7fTt9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5qZWN0U3R5bGVzSW50b1N0eWxlVGFnLmpzLm1hcCIsIi8qKlxuICogUmVtb3ZlcyB0aGUgdHJhaWxpbmcgc2xhc2ggb2YgYSBwYXRoIGlmIHRoZXJlIGlzIG9uZS4gUHJlc2VydmVzIHRoZSByb290IHBhdGggYC9gLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHBhdGguZW5kc1dpdGgoJy8nKSAmJiBwYXRoICE9PSAnLycgPyBwYXRoLnNsaWNlKDAsIC0xKSA6IHBhdGhcbn1cblxuLyoqXG4gKiBOb3JtYWxpemVzIHRoZSB0cmFpbGluZyBzbGFzaCBvZiBhIHBhdGggYWNjb3JkaW5nIHRvIHRoZSBgdHJhaWxpbmdTbGFzaGAgb3B0aW9uXG4gKiBpbiBgbmV4dC5jb25maWcuanNgLlxuICovXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2ggPSBwcm9jZXNzLmVudi5fX05FWFRfVFJBSUxJTkdfU0xBU0hcbiAgPyAocGF0aDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICAgIGlmICgvXFwuW14vXStcXC8/JC8udGVzdChwYXRoKSkge1xuICAgICAgICByZXR1cm4gcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gocGF0aClcbiAgICAgIH0gZWxzZSBpZiAocGF0aC5lbmRzV2l0aCgnLycpKSB7XG4gICAgICAgIHJldHVybiBwYXRoXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gcGF0aCArICcvJ1xuICAgICAgfVxuICAgIH1cbiAgOiByZW1vdmVQYXRoVHJhaWxpbmdTbGFzaFxuIiwidHlwZSBSZXF1ZXN0SWRsZUNhbGxiYWNrSGFuZGxlID0gYW55XG50eXBlIFJlcXVlc3RJZGxlQ2FsbGJhY2tPcHRpb25zID0ge1xuICB0aW1lb3V0OiBudW1iZXJcbn1cbnR5cGUgUmVxdWVzdElkbGVDYWxsYmFja0RlYWRsaW5lID0ge1xuICByZWFkb25seSBkaWRUaW1lb3V0OiBib29sZWFuXG4gIHRpbWVSZW1haW5pbmc6ICgpID0+IG51bWJlclxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIHJlcXVlc3RJZGxlQ2FsbGJhY2s6IChcbiAgICAgIGNhbGxiYWNrOiAoZGVhZGxpbmU6IFJlcXVlc3RJZGxlQ2FsbGJhY2tEZWFkbGluZSkgPT4gdm9pZCxcbiAgICAgIG9wdHM/OiBSZXF1ZXN0SWRsZUNhbGxiYWNrT3B0aW9uc1xuICAgICkgPT4gUmVxdWVzdElkbGVDYWxsYmFja0hhbmRsZVxuICAgIGNhbmNlbElkbGVDYWxsYmFjazogKGlkOiBSZXF1ZXN0SWRsZUNhbGxiYWNrSGFuZGxlKSA9PiB2b2lkXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHJlcXVlc3RJZGxlQ2FsbGJhY2sgPVxuICAodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnICYmIHNlbGYucmVxdWVzdElkbGVDYWxsYmFjaykgfHxcbiAgZnVuY3Rpb24gKFxuICAgIGNiOiAoZGVhZGxpbmU6IFJlcXVlc3RJZGxlQ2FsbGJhY2tEZWFkbGluZSkgPT4gdm9pZFxuICApOiBOb2RlSlMuVGltZW91dCB7XG4gICAgbGV0IHN0YXJ0ID0gRGF0ZS5ub3coKVxuICAgIHJldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGNiKHtcbiAgICAgICAgZGlkVGltZW91dDogZmFsc2UsXG4gICAgICAgIHRpbWVSZW1haW5pbmc6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gTWF0aC5tYXgoMCwgNTAgLSAoRGF0ZS5ub3coKSAtIHN0YXJ0KSlcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSwgMSlcbiAgfVxuXG5leHBvcnQgY29uc3QgY2FuY2VsSWRsZUNhbGxiYWNrID1cbiAgKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJyAmJiBzZWxmLmNhbmNlbElkbGVDYWxsYmFjaykgfHxcbiAgZnVuY3Rpb24gKGlkOiBSZXF1ZXN0SWRsZUNhbGxiYWNrSGFuZGxlKSB7XG4gICAgcmV0dXJuIGNsZWFyVGltZW91dChpZClcbiAgfVxuIiwiaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQ2xpZW50QnVpbGRNYW5pZmVzdCB9IGZyb20gJy4uL2J1aWxkL3dlYnBhY2svcGx1Z2lucy9idWlsZC1tYW5pZmVzdC1wbHVnaW4nXG5pbXBvcnQgZ2V0QXNzZXRQYXRoRnJvbVJvdXRlIGZyb20gJy4uL25leHQtc2VydmVyL2xpYi9yb3V0ZXIvdXRpbHMvZ2V0LWFzc2V0LXBhdGgtZnJvbS1yb3V0ZSdcbmltcG9ydCB7IHJlcXVlc3RJZGxlQ2FsbGJhY2sgfSBmcm9tICcuL3JlcXVlc3QtaWRsZS1jYWxsYmFjaydcblxuLy8gMy44cyB3YXMgYXJiaXRyYXJpbHkgY2hvc2VuIGFzIGl0J3Mgd2hhdCBodHRwczovL3dlYi5kZXYvaW50ZXJhY3RpdmVcbi8vIGNvbnNpZGVycyBhcyBcIkdvb2RcIiB0aW1lLXRvLWludGVyYWN0aXZlLiBXZSBtdXN0IGFzc3VtZSBzb21ldGhpbmcgd2VudFxuLy8gd3JvbmcgYmV5b25kIHRoaXMgcG9pbnQsIGFuZCB0aGVuIGZhbGwtYmFjayB0byBhIGZ1bGwgcGFnZSB0cmFuc2l0aW9uIHRvXG4vLyBzaG93IHRoZSB1c2VyIHNvbWV0aGluZyBvZiB2YWx1ZS5cbmNvbnN0IE1TX01BWF9JRExFX0RFTEFZID0gMzgwMFxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBXaW5kb3cge1xuICAgIF9fQlVJTERfTUFOSUZFU1Q/OiBDbGllbnRCdWlsZE1hbmlmZXN0XG4gICAgX19CVUlMRF9NQU5JRkVTVF9DQj86IEZ1bmN0aW9uXG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2FkZWRFbnRyeXBvaW50U3VjY2VzcyB7XG4gIGNvbXBvbmVudDogQ29tcG9uZW50VHlwZVxuICBleHBvcnRzOiBhbnlcbn1cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGVkRW50cnlwb2ludEZhaWx1cmUge1xuICBlcnJvcjogdW5rbm93blxufVxuZXhwb3J0IHR5cGUgUm91dGVFbnRyeXBvaW50ID0gTG9hZGVkRW50cnlwb2ludFN1Y2Nlc3MgfCBMb2FkZWRFbnRyeXBvaW50RmFpbHVyZVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlU3R5bGVTaGVldCB7XG4gIGhyZWY6IHN0cmluZ1xuICBjb250ZW50OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2FkZWRSb3V0ZVN1Y2Nlc3MgZXh0ZW5kcyBMb2FkZWRFbnRyeXBvaW50U3VjY2VzcyB7XG4gIHN0eWxlczogUm91dGVTdHlsZVNoZWV0W11cbn1cbmV4cG9ydCBpbnRlcmZhY2UgTG9hZGVkUm91dGVGYWlsdXJlIHtcbiAgZXJyb3I6IHVua25vd25cbn1cbmV4cG9ydCB0eXBlIFJvdXRlTG9hZGVyRW50cnkgPSBMb2FkZWRSb3V0ZVN1Y2Nlc3MgfCBMb2FkZWRSb3V0ZUZhaWx1cmVcblxuZXhwb3J0IHR5cGUgRnV0dXJlPFY+ID0ge1xuICByZXNvbHZlOiAoZW50cnlwb2ludDogVikgPT4gdm9pZFxuICBmdXR1cmU6IFByb21pc2U8Vj5cbn1cbmZ1bmN0aW9uIHdpdGhGdXR1cmU8VD4oXG4gIGtleTogc3RyaW5nLFxuICBtYXA6IE1hcDxzdHJpbmcsIEZ1dHVyZTxUPiB8IFQ+LFxuICBnZW5lcmF0b3I/OiAoKSA9PiBQcm9taXNlPFQ+XG4pOiBQcm9taXNlPFQ+IHtcbiAgbGV0IGVudHJ5OiBGdXR1cmU8VD4gfCBUIHwgdW5kZWZpbmVkID0gbWFwLmdldChrZXkpXG4gIGlmIChlbnRyeSkge1xuICAgIGlmICgnZnV0dXJlJyBpbiBlbnRyeSkge1xuICAgICAgcmV0dXJuIGVudHJ5LmZ1dHVyZVxuICAgIH1cbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGVudHJ5KVxuICB9XG4gIGxldCByZXNvbHZlcjogKGVudHJ5cG9pbnQ6IFQpID0+IHZvaWRcbiAgY29uc3QgcHJvbTogUHJvbWlzZTxUPiA9IG5ldyBQcm9taXNlPFQ+KChyZXNvbHZlKSA9PiB7XG4gICAgcmVzb2x2ZXIgPSByZXNvbHZlXG4gIH0pXG4gIG1hcC5zZXQoa2V5LCAoZW50cnkgPSB7IHJlc29sdmU6IHJlc29sdmVyISwgZnV0dXJlOiBwcm9tIH0pKVxuICByZXR1cm4gZ2VuZXJhdG9yXG4gICAgPyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VxdWVuY2VzXG4gICAgICBnZW5lcmF0b3IoKS50aGVuKCh2YWx1ZSkgPT4gKHJlc29sdmVyKHZhbHVlKSwgdmFsdWUpKVxuICAgIDogcHJvbVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlTG9hZGVyIHtcbiAgd2hlbkVudHJ5cG9pbnQocm91dGU6IHN0cmluZyk6IFByb21pc2U8Um91dGVFbnRyeXBvaW50PlxuICBvbkVudHJ5cG9pbnQocm91dGU6IHN0cmluZywgZXhlY3V0ZTogKCkgPT4gdW5rbm93bik6IHZvaWRcbiAgbG9hZFJvdXRlKHJvdXRlOiBzdHJpbmcpOiBQcm9taXNlPFJvdXRlTG9hZGVyRW50cnk+XG4gIHByZWZldGNoKHJvdXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+XG59XG5cbmZ1bmN0aW9uIGhhc1ByZWZldGNoKGxpbms/OiBIVE1MTGlua0VsZW1lbnQpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpXG4gICAgcmV0dXJuIChcbiAgICAgIC8vIGRldGVjdCBJRTExIHNpbmNlIGl0IHN1cHBvcnRzIHByZWZldGNoIGJ1dCBpc24ndCBkZXRlY3RlZFxuICAgICAgLy8gd2l0aCByZWxMaXN0LnN1cHBvcnRcbiAgICAgICghIXdpbmRvdy5NU0lucHV0TWV0aG9kQ29udGV4dCAmJiAhIShkb2N1bWVudCBhcyBhbnkpLmRvY3VtZW50TW9kZSkgfHxcbiAgICAgIGxpbmsucmVsTGlzdC5zdXBwb3J0cygncHJlZmV0Y2gnKVxuICAgIClcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuY29uc3QgY2FuUHJlZmV0Y2g6IGJvb2xlYW4gPSBoYXNQcmVmZXRjaCgpXG5cbmZ1bmN0aW9uIHByZWZldGNoVmlhRG9tKFxuICBocmVmOiBzdHJpbmcsXG4gIGFzOiBzdHJpbmcsXG4gIGxpbms/OiBIVE1MTGlua0VsZW1lbnRcbik6IFByb21pc2U8YW55PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzLCByZWopID0+IHtcbiAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbGlua1tyZWw9XCJwcmVmZXRjaFwiXVtocmVmXj1cIiR7aHJlZn1cIl1gKSkge1xuICAgICAgcmV0dXJuIHJlcygpXG4gICAgfVxuXG4gICAgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKVxuXG4gICAgLy8gVGhlIG9yZGVyIG9mIHByb3BlcnR5IGFzc2lnbm1lbnQgaGVyZSBpcyBpbnRlbnRpb25hbDpcbiAgICBpZiAoYXMpIGxpbmshLmFzID0gYXNcbiAgICBsaW5rIS5yZWwgPSBgcHJlZmV0Y2hgXG4gICAgbGluayEuY3Jvc3NPcmlnaW4gPSBwcm9jZXNzLmVudi5fX05FWFRfQ1JPU1NfT1JJR0lOIVxuICAgIGxpbmshLm9ubG9hZCA9IHJlc1xuICAgIGxpbmshLm9uZXJyb3IgPSByZWpcblxuICAgIC8vIGBocmVmYCBzaG91bGQgYWx3YXlzIGJlIGxhc3Q6XG4gICAgbGluayEuaHJlZiA9IGhyZWZcblxuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobGluaylcbiAgfSlcbn1cblxuY29uc3QgQVNTRVRfTE9BRF9FUlJPUiA9IFN5bWJvbCgnQVNTRVRfTE9BRF9FUlJPUicpXG4vLyBUT0RPOiB1bmV4cG9ydFxuZXhwb3J0IGZ1bmN0aW9uIG1hcmtBc3NldEVycm9yKGVycjogRXJyb3IpOiBFcnJvciB7XG4gIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXJyLCBBU1NFVF9MT0FEX0VSUk9SLCB7fSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQXNzZXRFcnJvcihlcnI/OiBFcnJvcik6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICByZXR1cm4gZXJyICYmIEFTU0VUX0xPQURfRVJST1IgaW4gZXJyXG59XG5cbmZ1bmN0aW9uIGFwcGVuZFNjcmlwdChcbiAgc3JjOiBzdHJpbmcsXG4gIHNjcmlwdD86IEhUTUxTY3JpcHRFbGVtZW50XG4pOiBQcm9taXNlPHVua25vd24+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKVxuXG4gICAgLy8gVGhlIG9yZGVyIG9mIHByb3BlcnR5IGFzc2lnbm1lbnQgaGVyZSBpcyBpbnRlbnRpb25hbC5cbiAgICAvLyAxLiBTZXR1cCBzdWNjZXNzL2ZhaWx1cmUgaG9va3MgaW4gY2FzZSB0aGUgYnJvd3NlciBzeW5jaHJvbm91c2x5XG4gICAgLy8gICAgZXhlY3V0ZXMgd2hlbiBgc3JjYCBpcyBzZXQuXG4gICAgc2NyaXB0Lm9ubG9hZCA9IHJlc29sdmVcbiAgICBzY3JpcHQub25lcnJvciA9ICgpID0+XG4gICAgICByZWplY3QobWFya0Fzc2V0RXJyb3IobmV3IEVycm9yKGBGYWlsZWQgdG8gbG9hZCBzY3JpcHQ6ICR7c3JjfWApKSlcblxuICAgIC8vIDIuIENvbmZpZ3VyZSB0aGUgY3Jvc3Mtb3JpZ2luIGF0dHJpYnV0ZSBiZWZvcmUgc2V0dGluZyBgc3JjYCBpbiBjYXNlIHRoZVxuICAgIC8vICAgIGJyb3dzZXIgYmVnaW5zIHRvIGZldGNoLlxuICAgIHNjcmlwdC5jcm9zc09yaWdpbiA9IHByb2Nlc3MuZW52Ll9fTkVYVF9DUk9TU19PUklHSU4hXG5cbiAgICAvLyAzLiBGaW5hbGx5LCBzZXQgdGhlIHNvdXJjZSBhbmQgaW5qZWN0IGludG8gdGhlIERPTSBpbiBjYXNlIHRoZSBjaGlsZFxuICAgIC8vICAgIG11c3QgYmUgYXBwZW5kZWQgZm9yIGZldGNoaW5nIHRvIHN0YXJ0LlxuICAgIHNjcmlwdC5zcmMgPSBzcmNcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdClcbiAgfSlcbn1cblxuZnVuY3Rpb24gaWRsZVRpbWVvdXQ8VD4obXM6IG51bWJlciwgZXJyOiBFcnJvcik6IFByb21pc2U8VD4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKF9yZXNvbHZlLCByZWplY3QpID0+XG4gICAgcmVxdWVzdElkbGVDYWxsYmFjaygoKSA9PiBzZXRUaW1lb3V0KCgpID0+IHJlamVjdChlcnIpLCBtcykpXG4gIClcbn1cblxuLy8gVE9ETzogc3RvcCBleHBvcnRpbmcgb3IgY2FjaGUgdGhlIGZhaWx1cmVcbi8vIEl0J2QgYmUgYmVzdCB0byBzdG9wIGV4cG9ydGluZyB0aGlzLiBJdCdzIGFuIGltcGxlbWVudGF0aW9uIGRldGFpbC4gV2UncmVcbi8vIG9ubHkgZXhwb3J0aW5nIGl0IGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbHR5IHdpdGggdGhlIGBwYWdlLWxvYWRlcmAuXG4vLyBPbmx5IGNhY2hlIHRoaXMgcmVzcG9uc2UgYXMgYSBsYXN0IHJlc29ydCBpZiB3ZSBjYW5ub3QgZWxpbWluYXRlIGFsbCBvdGhlclxuLy8gY29kZSBicmFuY2hlcyB0aGF0IHVzZSB0aGUgQnVpbGQgTWFuaWZlc3QgQ2FsbGJhY2sgYW5kIHB1c2ggdGhlbSB0aHJvdWdoXG4vLyB0aGUgUm91dGUgTG9hZGVyIGludGVyZmFjZS5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDbGllbnRCdWlsZE1hbmlmZXN0KCk6IFByb21pc2U8Q2xpZW50QnVpbGRNYW5pZmVzdD4ge1xuICBpZiAoc2VsZi5fX0JVSUxEX01BTklGRVNUKSB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShzZWxmLl9fQlVJTERfTUFOSUZFU1QpXG4gIH1cblxuICBjb25zdCBvbkJ1aWxkTWFuaWZlc3Q6IFByb21pc2U8Q2xpZW50QnVpbGRNYW5pZmVzdD4gPSBuZXcgUHJvbWlzZTxcbiAgICBDbGllbnRCdWlsZE1hbmlmZXN0XG4gID4oKHJlc29sdmUpID0+IHtcbiAgICAvLyBNYW5kYXRvcnkgYmVjYXVzZSB0aGlzIGlzIG5vdCBjb25jdXJyZW50IHNhZmU6XG4gICAgY29uc3QgY2IgPSBzZWxmLl9fQlVJTERfTUFOSUZFU1RfQ0JcbiAgICBzZWxmLl9fQlVJTERfTUFOSUZFU1RfQ0IgPSAoKSA9PiB7XG4gICAgICByZXNvbHZlKHNlbGYuX19CVUlMRF9NQU5JRkVTVClcbiAgICAgIGNiICYmIGNiKClcbiAgICB9XG4gIH0pXG4gIHJldHVybiBQcm9taXNlLnJhY2UoW1xuICAgIG9uQnVpbGRNYW5pZmVzdCxcbiAgICBpZGxlVGltZW91dDxDbGllbnRCdWlsZE1hbmlmZXN0PihcbiAgICAgIE1TX01BWF9JRExFX0RFTEFZLFxuICAgICAgbWFya0Fzc2V0RXJyb3IobmV3IEVycm9yKCdGYWlsZWQgdG8gbG9hZCBjbGllbnQgYnVpbGQgbWFuaWZlc3QnKSlcbiAgICApLFxuICBdKVxufVxuXG5pbnRlcmZhY2UgUm91dGVGaWxlcyB7XG4gIHNjcmlwdHM6IHN0cmluZ1tdXG4gIGNzczogc3RyaW5nW11cbn1cbmZ1bmN0aW9uIGdldEZpbGVzRm9yUm91dGUoXG4gIGFzc2V0UHJlZml4OiBzdHJpbmcsXG4gIHJvdXRlOiBzdHJpbmdcbik6IFByb21pc2U8Um91dGVGaWxlcz4ge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcbiAgICAgIHNjcmlwdHM6IFtcbiAgICAgICAgYXNzZXRQcmVmaXggK1xuICAgICAgICAgICcvX25leHQvc3RhdGljL2NodW5rcy9wYWdlcycgK1xuICAgICAgICAgIGVuY29kZVVSSShnZXRBc3NldFBhdGhGcm9tUm91dGUocm91dGUsICcuanMnKSksXG4gICAgICBdLFxuICAgICAgLy8gU3R5bGVzIGFyZSBoYW5kbGVkIGJ5IGBzdHlsZS1sb2FkZXJgIGluIGRldmVsb3BtZW50OlxuICAgICAgY3NzOiBbXSxcbiAgICB9KVxuICB9XG4gIHJldHVybiBnZXRDbGllbnRCdWlsZE1hbmlmZXN0KCkudGhlbigobWFuaWZlc3QpID0+IHtcbiAgICBpZiAoIShyb3V0ZSBpbiBtYW5pZmVzdCkpIHtcbiAgICAgIHRocm93IG1hcmtBc3NldEVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvb2t1cCByb3V0ZTogJHtyb3V0ZX1gKSlcbiAgICB9XG4gICAgY29uc3QgYWxsRmlsZXMgPSBtYW5pZmVzdFtyb3V0ZV0ubWFwKFxuICAgICAgKGVudHJ5KSA9PiBhc3NldFByZWZpeCArICcvX25leHQvJyArIGVuY29kZVVSSShlbnRyeSlcbiAgICApXG4gICAgcmV0dXJuIHtcbiAgICAgIHNjcmlwdHM6IGFsbEZpbGVzLmZpbHRlcigodikgPT4gdi5lbmRzV2l0aCgnLmpzJykpLFxuICAgICAgY3NzOiBhbGxGaWxlcy5maWx0ZXIoKHYpID0+IHYuZW5kc1dpdGgoJy5jc3MnKSksXG4gICAgfVxuICB9KVxufVxuXG5mdW5jdGlvbiBjcmVhdGVSb3V0ZUxvYWRlcihhc3NldFByZWZpeDogc3RyaW5nKTogUm91dGVMb2FkZXIge1xuICBjb25zdCBlbnRyeXBvaW50czogTWFwPFxuICAgIHN0cmluZyxcbiAgICBGdXR1cmU8Um91dGVFbnRyeXBvaW50PiB8IFJvdXRlRW50cnlwb2ludFxuICA+ID0gbmV3IE1hcCgpXG4gIGNvbnN0IGxvYWRlZFNjcmlwdHM6IE1hcDxzdHJpbmcsIFByb21pc2U8dW5rbm93bj4+ID0gbmV3IE1hcCgpXG4gIGNvbnN0IHN0eWxlU2hlZXRzOiBNYXA8c3RyaW5nLCBQcm9taXNlPFJvdXRlU3R5bGVTaGVldD4+ID0gbmV3IE1hcCgpXG4gIGNvbnN0IHJvdXRlczogTWFwPFxuICAgIHN0cmluZyxcbiAgICBGdXR1cmU8Um91dGVMb2FkZXJFbnRyeT4gfCBSb3V0ZUxvYWRlckVudHJ5XG4gID4gPSBuZXcgTWFwKClcblxuICBmdW5jdGlvbiBtYXliZUV4ZWN1dGVTY3JpcHQoc3JjOiBzdHJpbmcpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICBsZXQgcHJvbTogUHJvbWlzZTx1bmtub3duPiB8IHVuZGVmaW5lZCA9IGxvYWRlZFNjcmlwdHMuZ2V0KHNyYylcbiAgICBpZiAocHJvbSkge1xuICAgICAgcmV0dXJuIHByb21cbiAgICB9XG5cbiAgICAvLyBTa2lwIGV4ZWN1dGluZyBzY3JpcHQgaWYgaXQncyBhbHJlYWR5IGluIHRoZSBET006XG4gICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYHNjcmlwdFtzcmNePVwiJHtzcmN9XCJdYCkpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKVxuICAgIH1cblxuICAgIGxvYWRlZFNjcmlwdHMuc2V0KHNyYywgKHByb20gPSBhcHBlbmRTY3JpcHQoc3JjKSkpXG4gICAgcmV0dXJuIHByb21cbiAgfVxuXG4gIGZ1bmN0aW9uIGZldGNoU3R5bGVTaGVldChocmVmOiBzdHJpbmcpOiBQcm9taXNlPFJvdXRlU3R5bGVTaGVldD4ge1xuICAgIGxldCBwcm9tOiBQcm9taXNlPFJvdXRlU3R5bGVTaGVldD4gfCB1bmRlZmluZWQgPSBzdHlsZVNoZWV0cy5nZXQoaHJlZilcbiAgICBpZiAocHJvbSkge1xuICAgICAgcmV0dXJuIHByb21cbiAgICB9XG5cbiAgICBzdHlsZVNoZWV0cy5zZXQoXG4gICAgICBocmVmLFxuICAgICAgKHByb20gPSBmZXRjaChocmVmKVxuICAgICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXMub2spIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGxvYWQgc3R5bGVzaGVldDogJHtocmVmfWApXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByZXMudGV4dCgpLnRoZW4oKHRleHQpID0+ICh7IGhyZWY6IGhyZWYsIGNvbnRlbnQ6IHRleHQgfSkpXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiB7XG4gICAgICAgICAgdGhyb3cgbWFya0Fzc2V0RXJyb3IoZXJyKVxuICAgICAgICB9KSlcbiAgICApXG4gICAgcmV0dXJuIHByb21cbiAgfVxuXG4gIHJldHVybiB7XG4gICAgd2hlbkVudHJ5cG9pbnQocm91dGU6IHN0cmluZykge1xuICAgICAgcmV0dXJuIHdpdGhGdXR1cmUocm91dGUsIGVudHJ5cG9pbnRzKVxuICAgIH0sXG4gICAgb25FbnRyeXBvaW50KHJvdXRlOiBzdHJpbmcsIGV4ZWN1dGU6ICgpID0+IHVua25vd24pIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZShleGVjdXRlKVxuICAgICAgICAudGhlbigoZm4pID0+IGZuKCkpXG4gICAgICAgIC50aGVuKFxuICAgICAgICAgIChleHBvcnRzOiBhbnkpID0+ICh7XG4gICAgICAgICAgICBjb21wb25lbnQ6IChleHBvcnRzICYmIGV4cG9ydHMuZGVmYXVsdCkgfHwgZXhwb3J0cyxcbiAgICAgICAgICAgIGV4cG9ydHM6IGV4cG9ydHMsXG4gICAgICAgICAgfSksXG4gICAgICAgICAgKGVycikgPT4gKHsgZXJyb3I6IGVyciB9KVxuICAgICAgICApXG4gICAgICAgIC50aGVuKChpbnB1dDogUm91dGVFbnRyeXBvaW50KSA9PiB7XG4gICAgICAgICAgY29uc3Qgb2xkID0gZW50cnlwb2ludHMuZ2V0KHJvdXRlKVxuICAgICAgICAgIGVudHJ5cG9pbnRzLnNldChyb3V0ZSwgaW5wdXQpXG4gICAgICAgICAgaWYgKG9sZCAmJiAncmVzb2x2ZScgaW4gb2xkKSBvbGQucmVzb2x2ZShpbnB1dClcbiAgICAgICAgfSlcbiAgICB9LFxuICAgIGxvYWRSb3V0ZShyb3V0ZTogc3RyaW5nKSB7XG4gICAgICByZXR1cm4gd2l0aEZ1dHVyZTxSb3V0ZUxvYWRlckVudHJ5Pihyb3V0ZSwgcm91dGVzLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgeyBzY3JpcHRzLCBjc3MgfSA9IGF3YWl0IGdldEZpbGVzRm9yUm91dGUoYXNzZXRQcmVmaXgsIHJvdXRlKVxuICAgICAgICAgIGNvbnN0IFssIHN0eWxlc10gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgICAgICBlbnRyeXBvaW50cy5oYXMocm91dGUpXG4gICAgICAgICAgICAgID8gW11cbiAgICAgICAgICAgICAgOiBQcm9taXNlLmFsbChzY3JpcHRzLm1hcChtYXliZUV4ZWN1dGVTY3JpcHQpKSxcbiAgICAgICAgICAgIFByb21pc2UuYWxsKGNzcy5tYXAoZmV0Y2hTdHlsZVNoZWV0KSksXG4gICAgICAgICAgXSBhcyBjb25zdClcblxuICAgICAgICAgIGNvbnN0IGVudHJ5cG9pbnQ6IFJvdXRlRW50cnlwb2ludCA9IGF3YWl0IFByb21pc2UucmFjZShbXG4gICAgICAgICAgICB0aGlzLndoZW5FbnRyeXBvaW50KHJvdXRlKSxcbiAgICAgICAgICAgIGlkbGVUaW1lb3V0PFJvdXRlTG9hZGVyRW50cnk+KFxuICAgICAgICAgICAgICBNU19NQVhfSURMRV9ERUxBWSxcbiAgICAgICAgICAgICAgbWFya0Fzc2V0RXJyb3IoXG4gICAgICAgICAgICAgICAgbmV3IEVycm9yKGBSb3V0ZSBkaWQgbm90IGNvbXBsZXRlIGxvYWRpbmc6ICR7cm91dGV9YClcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICBdKVxuICAgICAgICAgIGNvbnN0IHJlczogUm91dGVMb2FkZXJFbnRyeSA9IE9iamVjdC5hc3NpZ248XG4gICAgICAgICAgICB7IHN0eWxlczogUm91dGVTdHlsZVNoZWV0W10gfSxcbiAgICAgICAgICAgIFJvdXRlRW50cnlwb2ludFxuICAgICAgICAgID4oeyBzdHlsZXMgfSwgZW50cnlwb2ludClcbiAgICAgICAgICByZXR1cm4gJ2Vycm9yJyBpbiBlbnRyeXBvaW50ID8gZW50cnlwb2ludCA6IHJlc1xuICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICByZXR1cm4geyBlcnJvcjogZXJyIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHByZWZldGNoKHJvdXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9Hb29nbGVDaHJvbWVMYWJzL3F1aWNrbGluay9ibG9iLzQ1M2E2NjFmYTFmYTk0MGUyZDJlMDQ0NDUyMzk4ZTM4YzY3YTk4ZmIvc3JjL2luZGV4Lm1qcyNMMTE1LUwxMThcbiAgICAgIC8vIExpY2Vuc2U6IEFwYWNoZSAyLjBcbiAgICAgIGxldCBjblxuICAgICAgaWYgKChjbiA9IChuYXZpZ2F0b3IgYXMgYW55KS5jb25uZWN0aW9uKSkge1xuICAgICAgICAvLyBEb24ndCBwcmVmZXRjaCBpZiB1c2luZyAyRyBvciBpZiBTYXZlLURhdGEgaXMgZW5hYmxlZC5cbiAgICAgICAgaWYgKGNuLnNhdmVEYXRhIHx8IC8yZy8udGVzdChjbi5lZmZlY3RpdmVUeXBlKSkgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG4gICAgICB9XG4gICAgICByZXR1cm4gZ2V0RmlsZXNGb3JSb3V0ZShhc3NldFByZWZpeCwgcm91dGUpXG4gICAgICAgIC50aGVuKChvdXRwdXQpID0+XG4gICAgICAgICAgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBjYW5QcmVmZXRjaFxuICAgICAgICAgICAgICA/IG91dHB1dC5zY3JpcHRzLm1hcCgoc2NyaXB0KSA9PiBwcmVmZXRjaFZpYURvbShzY3JpcHQsICdzY3JpcHQnKSlcbiAgICAgICAgICAgICAgOiBbXVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgcmVxdWVzdElkbGVDYWxsYmFjaygoKSA9PiB0aGlzLmxvYWRSb3V0ZShyb3V0ZSkpXG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChcbiAgICAgICAgICAvLyBzd2FsbG93IHByZWZldGNoIGVycm9yc1xuICAgICAgICAgICgpID0+IHt9XG4gICAgICAgIClcbiAgICB9LFxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNyZWF0ZVJvdXRlTG9hZGVyXG4iLCIvKiBnbG9iYWwgd2luZG93ICovXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgUm91dGVyLCB7IE5leHRSb3V0ZXIgfSBmcm9tICcuLi9uZXh0LXNlcnZlci9saWIvcm91dGVyL3JvdXRlcidcbmltcG9ydCB7IFJvdXRlckNvbnRleHQgfSBmcm9tICcuLi9uZXh0LXNlcnZlci9saWIvcm91dGVyLWNvbnRleHQnXG5cbnR5cGUgQ2xhc3NBcmd1bWVudHM8VD4gPSBUIGV4dGVuZHMgbmV3ICguLi5hcmdzOiBpbmZlciBVKSA9PiBhbnkgPyBVIDogYW55XG5cbnR5cGUgUm91dGVyQXJncyA9IENsYXNzQXJndW1lbnRzPHR5cGVvZiBSb3V0ZXI+XG5cbnR5cGUgU2luZ2xldG9uUm91dGVyQmFzZSA9IHtcbiAgcm91dGVyOiBSb3V0ZXIgfCBudWxsXG4gIHJlYWR5Q2FsbGJhY2tzOiBBcnJheTwoKSA9PiBhbnk+XG4gIHJlYWR5KGNiOiAoKSA9PiBhbnkpOiB2b2lkXG59XG5cbmV4cG9ydCB7IFJvdXRlciwgTmV4dFJvdXRlciB9XG5cbmV4cG9ydCB0eXBlIFNpbmdsZXRvblJvdXRlciA9IFNpbmdsZXRvblJvdXRlckJhc2UgJiBOZXh0Um91dGVyXG5cbmNvbnN0IHNpbmdsZXRvblJvdXRlcjogU2luZ2xldG9uUm91dGVyQmFzZSA9IHtcbiAgcm91dGVyOiBudWxsLCAvLyBob2xkcyB0aGUgYWN0dWFsIHJvdXRlciBpbnN0YW5jZVxuICByZWFkeUNhbGxiYWNrczogW10sXG4gIHJlYWR5KGNiOiAoKSA9PiB2b2lkKSB7XG4gICAgaWYgKHRoaXMucm91dGVyKSByZXR1cm4gY2IoKVxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5yZWFkeUNhbGxiYWNrcy5wdXNoKGNiKVxuICAgIH1cbiAgfSxcbn1cblxuLy8gQ3JlYXRlIHB1YmxpYyBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzIG9mIHRoZSByb3V0ZXIgaW4gdGhlIHNpbmdsZXRvblJvdXRlclxuY29uc3QgdXJsUHJvcGVydHlGaWVsZHMgPSBbXG4gICdwYXRobmFtZScsXG4gICdyb3V0ZScsXG4gICdxdWVyeScsXG4gICdhc1BhdGgnLFxuICAnY29tcG9uZW50cycsXG4gICdpc0ZhbGxiYWNrJyxcbiAgJ2Jhc2VQYXRoJyxcbiAgJ2xvY2FsZScsXG4gICdsb2NhbGVzJyxcbiAgJ2RlZmF1bHRMb2NhbGUnLFxuICAnaXNSZWFkeScsXG4gICdpc1ByZXZpZXcnLFxuICAnaXNMb2NhbGVEb21haW4nLFxuXVxuY29uc3Qgcm91dGVyRXZlbnRzID0gW1xuICAncm91dGVDaGFuZ2VTdGFydCcsXG4gICdiZWZvcmVIaXN0b3J5Q2hhbmdlJyxcbiAgJ3JvdXRlQ2hhbmdlQ29tcGxldGUnLFxuICAncm91dGVDaGFuZ2VFcnJvcicsXG4gICdoYXNoQ2hhbmdlU3RhcnQnLFxuICAnaGFzaENoYW5nZUNvbXBsZXRlJyxcbl1cbmNvbnN0IGNvcmVNZXRob2RGaWVsZHMgPSBbXG4gICdwdXNoJyxcbiAgJ3JlcGxhY2UnLFxuICAncmVsb2FkJyxcbiAgJ2JhY2snLFxuICAncHJlZmV0Y2gnLFxuICAnYmVmb3JlUG9wU3RhdGUnLFxuXVxuXG4vLyBFdmVudHMgaXMgYSBzdGF0aWMgcHJvcGVydHkgb24gdGhlIHJvdXRlciwgdGhlIHJvdXRlciBkb2Vzbid0IGhhdmUgdG8gYmUgaW5pdGlhbGl6ZWQgdG8gdXNlIGl0XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoc2luZ2xldG9uUm91dGVyLCAnZXZlbnRzJywge1xuICBnZXQoKSB7XG4gICAgcmV0dXJuIFJvdXRlci5ldmVudHNcbiAgfSxcbn0pXG5cbnVybFByb3BlcnR5RmllbGRzLmZvckVhY2goKGZpZWxkOiBzdHJpbmcpID0+IHtcbiAgLy8gSGVyZSB3ZSBuZWVkIHRvIHVzZSBPYmplY3QuZGVmaW5lUHJvcGVydHkgYmVjYXVzZSwgd2UgbmVlZCB0byByZXR1cm5cbiAgLy8gdGhlIHByb3BlcnR5IGFzc2lnbmVkIHRvIHRoZSBhY3R1YWwgcm91dGVyXG4gIC8vIFRoZSB2YWx1ZSBtaWdodCBnZXQgY2hhbmdlZCBhcyB3ZSBjaGFuZ2Ugcm91dGVzIGFuZCB0aGlzIGlzIHRoZVxuICAvLyBwcm9wZXIgd2F5IHRvIGFjY2VzcyBpdFxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoc2luZ2xldG9uUm91dGVyLCBmaWVsZCwge1xuICAgIGdldCgpIHtcbiAgICAgIGNvbnN0IHJvdXRlciA9IGdldFJvdXRlcigpIGFzIGFueVxuICAgICAgcmV0dXJuIHJvdXRlcltmaWVsZF0gYXMgc3RyaW5nXG4gICAgfSxcbiAgfSlcbn0pXG5cbmNvcmVNZXRob2RGaWVsZHMuZm9yRWFjaCgoZmllbGQ6IHN0cmluZykgPT4ge1xuICAvLyBXZSBkb24ndCByZWFsbHkga25vdyB0aGUgdHlwZXMgaGVyZSwgc28gd2UgYWRkIHRoZW0gbGF0ZXIgaW5zdGVhZFxuICA7KHNpbmdsZXRvblJvdXRlciBhcyBhbnkpW2ZpZWxkXSA9ICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgIGNvbnN0IHJvdXRlciA9IGdldFJvdXRlcigpIGFzIGFueVxuICAgIHJldHVybiByb3V0ZXJbZmllbGRdKC4uLmFyZ3MpXG4gIH1cbn0pXG5cbnJvdXRlckV2ZW50cy5mb3JFYWNoKChldmVudDogc3RyaW5nKSA9PiB7XG4gIHNpbmdsZXRvblJvdXRlci5yZWFkeSgoKSA9PiB7XG4gICAgUm91dGVyLmV2ZW50cy5vbihldmVudCwgKC4uLmFyZ3MpID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50RmllbGQgPSBgb24ke2V2ZW50LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7ZXZlbnQuc3Vic3RyaW5nKFxuICAgICAgICAxXG4gICAgICApfWBcbiAgICAgIGNvbnN0IF9zaW5nbGV0b25Sb3V0ZXIgPSBzaW5nbGV0b25Sb3V0ZXIgYXMgYW55XG4gICAgICBpZiAoX3NpbmdsZXRvblJvdXRlcltldmVudEZpZWxkXSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIF9zaW5nbGV0b25Sb3V0ZXJbZXZlbnRGaWVsZF0oLi4uYXJncylcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3Igd2hlbiBydW5uaW5nIHRoZSBSb3V0ZXIgZXZlbnQ6ICR7ZXZlbnRGaWVsZH1gKVxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYCR7ZXJyLm1lc3NhZ2V9XFxuJHtlcnIuc3RhY2t9YClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG4gIH0pXG59KVxuXG5mdW5jdGlvbiBnZXRSb3V0ZXIoKTogUm91dGVyIHtcbiAgaWYgKCFzaW5nbGV0b25Sb3V0ZXIucm91dGVyKSB7XG4gICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICAnTm8gcm91dGVyIGluc3RhbmNlIGZvdW5kLlxcbicgK1xuICAgICAgJ1lvdSBzaG91bGQgb25seSB1c2UgXCJuZXh0L3JvdXRlclwiIGluc2lkZSB0aGUgY2xpZW50IHNpZGUgb2YgeW91ciBhcHAuXFxuJ1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKVxuICB9XG4gIHJldHVybiBzaW5nbGV0b25Sb3V0ZXIucm91dGVyXG59XG5cbi8vIEV4cG9ydCB0aGUgc2luZ2xldG9uUm91dGVyIGFuZCB0aGlzIGlzIHRoZSBwdWJsaWMgQVBJLlxuZXhwb3J0IGRlZmF1bHQgc2luZ2xldG9uUm91dGVyIGFzIFNpbmdsZXRvblJvdXRlclxuXG4vLyBSZWV4cG9ydCB0aGUgd2l0aFJvdXRlIEhPQ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB3aXRoUm91dGVyIH0gZnJvbSAnLi93aXRoLXJvdXRlcidcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZVJvdXRlcigpOiBOZXh0Um91dGVyIHtcbiAgcmV0dXJuIFJlYWN0LnVzZUNvbnRleHQoUm91dGVyQ29udGV4dClcbn1cblxuLy8gSU5URVJOQUwgQVBJU1xuLy8gLS0tLS0tLS0tLS0tLVxuLy8gKGRvIG5vdCB1c2UgZm9sbG93aW5nIGV4cG9ydHMgaW5zaWRlIHRoZSBhcHApXG5cbi8vIENyZWF0ZSBhIHJvdXRlciBhbmQgYXNzaWduIGl0IGFzIHRoZSBzaW5nbGV0b24gaW5zdGFuY2UuXG4vLyBUaGlzIGlzIHVzZWQgaW4gY2xpZW50IHNpZGUgd2hlbiB3ZSBhcmUgaW5pdGlsaXppbmcgdGhlIGFwcC5cbi8vIFRoaXMgc2hvdWxkICoqbm90KiogdXNlIGluc2lkZSB0aGUgc2VydmVyLlxuZXhwb3J0IGNvbnN0IGNyZWF0ZVJvdXRlciA9ICguLi5hcmdzOiBSb3V0ZXJBcmdzKTogUm91dGVyID0+IHtcbiAgc2luZ2xldG9uUm91dGVyLnJvdXRlciA9IG5ldyBSb3V0ZXIoLi4uYXJncylcbiAgc2luZ2xldG9uUm91dGVyLnJlYWR5Q2FsbGJhY2tzLmZvckVhY2goKGNiKSA9PiBjYigpKVxuICBzaW5nbGV0b25Sb3V0ZXIucmVhZHlDYWxsYmFja3MgPSBbXVxuXG4gIHJldHVybiBzaW5nbGV0b25Sb3V0ZXIucm91dGVyXG59XG5cbi8vIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBjcmVhdGUgdGhlIGB3aXRoUm91dGVyYCByb3V0ZXIgaW5zdGFuY2VcbmV4cG9ydCBmdW5jdGlvbiBtYWtlUHVibGljUm91dGVySW5zdGFuY2Uocm91dGVyOiBSb3V0ZXIpOiBOZXh0Um91dGVyIHtcbiAgY29uc3QgX3JvdXRlciA9IHJvdXRlciBhcyBhbnlcbiAgY29uc3QgaW5zdGFuY2UgPSB7fSBhcyBhbnlcblxuICBmb3IgKGNvbnN0IHByb3BlcnR5IG9mIHVybFByb3BlcnR5RmllbGRzKSB7XG4gICAgaWYgKHR5cGVvZiBfcm91dGVyW3Byb3BlcnR5XSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGluc3RhbmNlW3Byb3BlcnR5XSA9IE9iamVjdC5hc3NpZ24oXG4gICAgICAgIEFycmF5LmlzQXJyYXkoX3JvdXRlcltwcm9wZXJ0eV0pID8gW10gOiB7fSxcbiAgICAgICAgX3JvdXRlcltwcm9wZXJ0eV1cbiAgICAgICkgLy8gbWFrZXMgc3VyZSBxdWVyeSBpcyBub3Qgc3RhdGVmdWxcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgaW5zdGFuY2VbcHJvcGVydHldID0gX3JvdXRlcltwcm9wZXJ0eV1cbiAgfVxuXG4gIC8vIEV2ZW50cyBpcyBhIHN0YXRpYyBwcm9wZXJ0eSBvbiB0aGUgcm91dGVyLCB0aGUgcm91dGVyIGRvZXNuJ3QgaGF2ZSB0byBiZSBpbml0aWFsaXplZCB0byB1c2UgaXRcbiAgaW5zdGFuY2UuZXZlbnRzID0gUm91dGVyLmV2ZW50c1xuXG4gIGNvcmVNZXRob2RGaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICBpbnN0YW5jZVtmaWVsZF0gPSAoLi4uYXJnczogYW55W10pID0+IHtcbiAgICAgIHJldHVybiBfcm91dGVyW2ZpZWxkXSguLi5hcmdzKVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gaW5zdGFuY2Vcbn1cbiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IE5leHRDb21wb25lbnRUeXBlLCBOZXh0UGFnZUNvbnRleHQgfSBmcm9tICcuLi9uZXh0LXNlcnZlci9saWIvdXRpbHMnXG5pbXBvcnQgeyBOZXh0Um91dGVyLCB1c2VSb3V0ZXIgfSBmcm9tICcuL3JvdXRlcidcblxuZXhwb3J0IHR5cGUgV2l0aFJvdXRlclByb3BzID0ge1xuICByb3V0ZXI6IE5leHRSb3V0ZXJcbn1cblxuZXhwb3J0IHR5cGUgRXhjbHVkZVJvdXRlclByb3BzPFA+ID0gUGljazxcbiAgUCxcbiAgRXhjbHVkZTxrZXlvZiBQLCBrZXlvZiBXaXRoUm91dGVyUHJvcHM+XG4+XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHdpdGhSb3V0ZXI8XG4gIFAgZXh0ZW5kcyBXaXRoUm91dGVyUHJvcHMsXG4gIEMgPSBOZXh0UGFnZUNvbnRleHRcbj4oXG4gIENvbXBvc2VkQ29tcG9uZW50OiBOZXh0Q29tcG9uZW50VHlwZTxDLCBhbnksIFA+XG4pOiBSZWFjdC5Db21wb25lbnRUeXBlPEV4Y2x1ZGVSb3V0ZXJQcm9wczxQPj4ge1xuICBmdW5jdGlvbiBXaXRoUm91dGVyV3JhcHBlcihwcm9wczogYW55KTogSlNYLkVsZW1lbnQge1xuICAgIHJldHVybiA8Q29tcG9zZWRDb21wb25lbnQgcm91dGVyPXt1c2VSb3V0ZXIoKX0gey4uLnByb3BzfSAvPlxuICB9XG5cbiAgV2l0aFJvdXRlcldyYXBwZXIuZ2V0SW5pdGlhbFByb3BzID0gQ29tcG9zZWRDb21wb25lbnQuZ2V0SW5pdGlhbFByb3BzXG4gIC8vIFRoaXMgaXMgbmVlZGVkIHRvIGFsbG93IGNoZWNraW5nIGZvciBjdXN0b20gZ2V0SW5pdGlhbFByb3BzIGluIF9hcHBcbiAgOyhXaXRoUm91dGVyV3JhcHBlciBhcyBhbnkpLm9yaWdHZXRJbml0aWFsUHJvcHMgPSAoQ29tcG9zZWRDb21wb25lbnQgYXMgYW55KS5vcmlnR2V0SW5pdGlhbFByb3BzXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgY29uc3QgbmFtZSA9XG4gICAgICBDb21wb3NlZENvbXBvbmVudC5kaXNwbGF5TmFtZSB8fCBDb21wb3NlZENvbXBvbmVudC5uYW1lIHx8ICdVbmtub3duJ1xuICAgIFdpdGhSb3V0ZXJXcmFwcGVyLmRpc3BsYXlOYW1lID0gYHdpdGhSb3V0ZXIoJHtuYW1lfSlgXG4gIH1cblxuICByZXR1cm4gV2l0aFJvdXRlcldyYXBwZXJcbn1cbiIsIm1vZHVsZS5leHBvcnRzPWZ1bmN0aW9uKCl7XCJ1c2Ugc3RyaWN0XCI7dmFyIG49ezc2MjpmdW5jdGlvbihuKXtuLmV4cG9ydHM9ZnVuY3Rpb24obil7dmFyIHQ9W107dC50b1N0cmluZz1mdW5jdGlvbiB0b1N0cmluZygpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbih0KXt2YXIgcj1jc3NXaXRoTWFwcGluZ1RvU3RyaW5nKHQsbik7aWYodFsyXSl7cmV0dXJuXCJAbWVkaWEgXCIuY29uY2F0KHRbMl0sXCIge1wiKS5jb25jYXQocixcIn1cIil9cmV0dXJuIHJ9KS5qb2luKFwiXCIpfTt0Lmk9ZnVuY3Rpb24obixyLG8pe2lmKHR5cGVvZiBuPT09XCJzdHJpbmdcIil7bj1bW251bGwsbixcIlwiXV19dmFyIGU9e307aWYobyl7Zm9yKHZhciBhPTA7YTx0aGlzLmxlbmd0aDthKyspe3ZhciBjPXRoaXNbYV1bMF07aWYoYyE9bnVsbCl7ZVtjXT10cnVlfX19Zm9yKHZhciBpPTA7aTxuLmxlbmd0aDtpKyspe3ZhciB1PVtdLmNvbmNhdChuW2ldKTtpZihvJiZlW3VbMF1dKXtjb250aW51ZX1pZihyKXtpZighdVsyXSl7dVsyXT1yfWVsc2V7dVsyXT1cIlwiLmNvbmNhdChyLFwiIGFuZCBcIikuY29uY2F0KHVbMl0pfX10LnB1c2godSl9fTtyZXR1cm4gdH07ZnVuY3Rpb24gY3NzV2l0aE1hcHBpbmdUb1N0cmluZyhuLHQpe3ZhciByPW5bMV18fFwiXCI7dmFyIG89blszXTtpZighbyl7cmV0dXJuIHJ9aWYodCYmdHlwZW9mIGJ0b2E9PT1cImZ1bmN0aW9uXCIpe3ZhciBlPXRvQ29tbWVudChvKTt2YXIgYT1vLnNvdXJjZXMubWFwKGZ1bmN0aW9uKG4pe3JldHVyblwiLyojIHNvdXJjZVVSTD1cIi5jb25jYXQoby5zb3VyY2VSb290fHxcIlwiKS5jb25jYXQobixcIiAqL1wiKX0pO3JldHVybltyXS5jb25jYXQoYSkuY29uY2F0KFtlXSkuam9pbihcIlxcblwiKX1yZXR1cm5bcl0uam9pbihcIlxcblwiKX1mdW5jdGlvbiB0b0NvbW1lbnQobil7dmFyIHQ9YnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkobikpKSk7dmFyIHI9XCJzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxcIi5jb25jYXQodCk7cmV0dXJuXCIvKiMgXCIuY29uY2F0KHIsXCIgKi9cIil9fX07dmFyIHQ9e307ZnVuY3Rpb24gX19uY2N3cGNrX3JlcXVpcmVfXyhyKXtpZih0W3JdKXtyZXR1cm4gdFtyXS5leHBvcnRzfXZhciBvPXRbcl09e2V4cG9ydHM6e319O3ZhciBlPXRydWU7dHJ5e25bcl0obyxvLmV4cG9ydHMsX19uY2N3cGNrX3JlcXVpcmVfXyk7ZT1mYWxzZX1maW5hbGx5e2lmKGUpZGVsZXRlIHRbcl19cmV0dXJuIG8uZXhwb3J0c31fX25jY3dwY2tfcmVxdWlyZV9fLmFiPV9fZGlybmFtZStcIi9cIjtyZXR1cm4gX19uY2N3cGNrX3JlcXVpcmVfXyg3NjIpfSgpOyIsIi8vIEltcG9ydHNcbmltcG9ydCBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18gZnJvbSBcIi4uLy4uLy4uL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2FwaS5qc1wiO1xudmFyIF9fX0NTU19MT0FERVJfRVhQT1JUX19fID0gX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fKHRydWUpO1xuLy8gTW9kdWxlXG5fX19DU1NfTE9BREVSX0VYUE9SVF9fXy5wdXNoKFttb2R1bGUuaWQsIFwiQGNoYXJzZXQgXFxcIlVURi04XFxcIjtcXG4vKiFcXG4gKiBCb290c3RyYXAgdjUuMC4wLWJldGEyIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKVxcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVGhlIEJvb3RzdHJhcCBBdXRob3JzXFxuICogQ29weXJpZ2h0IDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXFxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYWluL0xJQ0VOU0UpXFxuICovXFxuOnJvb3Qge1xcbiAgLS1icy1ibHVlOiAjMGQ2ZWZkO1xcbiAgLS1icy1pbmRpZ286ICM2NjEwZjI7XFxuICAtLWJzLXB1cnBsZTogIzZmNDJjMTtcXG4gIC0tYnMtcGluazogI2Q2MzM4NDtcXG4gIC0tYnMtcmVkOiAjZGMzNTQ1O1xcbiAgLS1icy1vcmFuZ2U6ICNmZDdlMTQ7XFxuICAtLWJzLXllbGxvdzogI2ZmYzEwNztcXG4gIC0tYnMtZ3JlZW46ICMxOTg3NTQ7XFxuICAtLWJzLXRlYWw6ICMyMGM5OTc7XFxuICAtLWJzLWN5YW46ICMwZGNhZjA7XFxuICAtLWJzLXdoaXRlOiAjZmZmO1xcbiAgLS1icy1ncmF5OiAjNmM3NTdkO1xcbiAgLS1icy1ncmF5LWRhcms6ICMzNDNhNDA7XFxuICAtLWJzLXByaW1hcnk6ICMwZDZlZmQ7XFxuICAtLWJzLXNlY29uZGFyeTogIzZjNzU3ZDtcXG4gIC0tYnMtc3VjY2VzczogIzE5ODc1NDtcXG4gIC0tYnMtaW5mbzogIzBkY2FmMDtcXG4gIC0tYnMtd2FybmluZzogI2ZmYzEwNztcXG4gIC0tYnMtZGFuZ2VyOiAjZGMzNTQ1O1xcbiAgLS1icy1saWdodDogI2Y4ZjlmYTtcXG4gIC0tYnMtZGFyazogIzIxMjUyOTtcXG4gIC0tYnMtZm9udC1zYW5zLXNlcmlmOiBzeXN0ZW0tdWksIC1hcHBsZS1zeXN0ZW0sIFxcXCJTZWdvZSBVSVxcXCIsIFJvYm90bywgXFxcIkhlbHZldGljYSBOZXVlXFxcIiwgQXJpYWwsIFxcXCJOb3RvIFNhbnNcXFwiLCBcXFwiTGliZXJhdGlvbiBTYW5zXFxcIiwgc2Fucy1zZXJpZiwgXFxcIkFwcGxlIENvbG9yIEVtb2ppXFxcIiwgXFxcIlNlZ29lIFVJIEVtb2ppXFxcIiwgXFxcIlNlZ29lIFVJIFN5bWJvbFxcXCIsIFxcXCJOb3RvIENvbG9yIEVtb2ppXFxcIjtcXG4gIC0tYnMtZm9udC1tb25vc3BhY2U6IFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXFxcIkxpYmVyYXRpb24gTW9ub1xcXCIsIFxcXCJDb3VyaWVyIE5ld1xcXCIsIG1vbm9zcGFjZTtcXG4gIC0tYnMtZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpO1xcbn1cXG5cXG4qLFxcbio6OmJlZm9yZSxcXG4qOjphZnRlciB7XFxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbn1cXG5cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcXG4gIDpyb290IHtcXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XFxuICB9XFxufVxcblxcbmJvZHkge1xcbiAgbWFyZ2luOiAwO1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XFxuICBmb250LXNpemU6IDFyZW07XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcXG59XFxuXFxuW3RhYmluZGV4PVxcXCItMVxcXCJdOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG5ociB7XFxuICBtYXJnaW46IDFyZW0gMDtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xcbiAgYm9yZGVyOiAwO1xcbiAgb3BhY2l0eTogMC4yNTtcXG59XFxuXFxuaHI6bm90KFtzaXplXSkge1xcbiAgaGVpZ2h0OiAxcHg7XFxufVxcblxcbmg2LCAuaDYsIGg1LCAuaDUsIGg0LCAuaDQsIGgzLCAuaDMsIGgyLCAuaDIsIGgxLCAuaDEge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5cXG5oMSwgLmgxIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgaDEsIC5oMSB7XFxuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xcbiAgfVxcbn1cXG5cXG5oMiwgLmgyIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjMyNXJlbSArIDAuOXZ3KTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgaDIsIC5oMiB7XFxuICAgIGZvbnQtc2l6ZTogMnJlbTtcXG4gIH1cXG59XFxuXFxuaDMsIC5oMyB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zcmVtICsgMC42dncpO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICBoMywgLmgzIHtcXG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xcbiAgfVxcbn1cXG5cXG5oNCwgLmg0IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgaDQsIC5oNCB7XFxuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xcbiAgfVxcbn1cXG5cXG5oNSwgLmg1IHtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuXFxuaDYsIC5oNiB7XFxuICBmb250LXNpemU6IDFyZW07XFxufVxcblxcbnAge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxufVxcblxcbmFiYnJbdGl0bGVdLFxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0ge1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XFxuICBjdXJzb3I6IGhlbHA7XFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7XFxufVxcblxcbmFkZHJlc3Mge1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbn1cXG5cXG5vbCxcXG51bCB7XFxuICBwYWRkaW5nLWxlZnQ6IDJyZW07XFxufVxcblxcbm9sLFxcbnVsLFxcbmRsIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbn1cXG5cXG5vbCBvbCxcXG51bCB1bCxcXG5vbCB1bCxcXG51bCBvbCB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG5kdCB7XFxuICBmb250LXdlaWdodDogNzAwO1xcbn1cXG5cXG5kZCB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuXFxuYmxvY2txdW90ZSB7XFxuICBtYXJnaW46IDAgMCAxcmVtO1xcbn1cXG5cXG5iLFxcbnN0cm9uZyB7XFxuICBmb250LXdlaWdodDogYm9sZGVyO1xcbn1cXG5cXG5zbWFsbCwgLnNtYWxsIHtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG59XFxuXFxubWFyaywgLm1hcmsge1xcbiAgcGFkZGluZzogMC4yZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xcbn1cXG5cXG5zdWIsXFxuc3VwIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZvbnQtc2l6ZTogMC43NWVtO1xcbiAgbGluZS1oZWlnaHQ6IDA7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxufVxcblxcbnN1YiB7XFxuICBib3R0b206IC0wLjI1ZW07XFxufVxcblxcbnN1cCB7XFxuICB0b3A6IC0wLjVlbTtcXG59XFxuXFxuYSB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xcbn1cXG5hOmhvdmVyIHtcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbn1cXG5cXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSwgYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSk6aG92ZXIge1xcbiAgY29sb3I6IGluaGVyaXQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcblxcbnByZSxcXG5jb2RlLFxcbmtiZCxcXG5zYW1wIHtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSk7XFxuICBmb250LXNpemU6IDFlbTtcXG4gIGRpcmVjdGlvbjogbHRyIC8qIHJ0bDppZ25vcmUgKi87XFxuICB1bmljb2RlLWJpZGk6IGJpZGktb3ZlcnJpZGU7XFxufVxcblxcbnByZSB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgb3ZlcmZsb3c6IGF1dG87XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxufVxcbnByZSBjb2RlIHtcXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbn1cXG5cXG5jb2RlIHtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjZDYzMzg0O1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbn1cXG5hID4gY29kZSB7XFxuICBjb2xvcjogaW5oZXJpdDtcXG59XFxuXFxua2JkIHtcXG4gIHBhZGRpbmc6IDAuMnJlbSAwLjRyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XFxufVxcbmtiZCBrYmQge1xcbiAgcGFkZGluZzogMDtcXG4gIGZvbnQtc2l6ZTogMWVtO1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuXFxuZmlndXJlIHtcXG4gIG1hcmdpbjogMCAwIDFyZW07XFxufVxcblxcbmltZyxcXG5zdmcge1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG59XFxuXFxudGFibGUge1xcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XFxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xcbn1cXG5cXG5jYXB0aW9uIHtcXG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbn1cXG5cXG50aCB7XFxuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7XFxufVxcblxcbnRoZWFkLFxcbnRib2R5LFxcbnRmb290LFxcbnRyLFxcbnRkLFxcbnRoIHtcXG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICBib3JkZXItd2lkdGg6IDA7XFxufVxcblxcbmxhYmVsIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuXFxuYnV0dG9uIHtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcblxcbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcXG4gIG91dGxpbmU6IDA7XFxufVxcblxcbmlucHV0LFxcbmJ1dHRvbixcXG5zZWxlY3QsXFxub3B0Z3JvdXAsXFxudGV4dGFyZWEge1xcbiAgbWFyZ2luOiAwO1xcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XFxuICBmb250LXNpemU6IGluaGVyaXQ7XFxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcXG59XFxuXFxuYnV0dG9uLFxcbnNlbGVjdCB7XFxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG59XFxuXFxuW3JvbGU9YnV0dG9uXSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbnNlbGVjdCB7XFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcXG59XFxuXFxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuYnV0dG9uLFxcblt0eXBlPWJ1dHRvbl0sXFxuW3R5cGU9cmVzZXRdLFxcblt0eXBlPXN1Ym1pdF0ge1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XFxufVxcbmJ1dHRvbjpub3QoOmRpc2FibGVkKSxcXG5bdHlwZT1idXR0b25dOm5vdCg6ZGlzYWJsZWQpLFxcblt0eXBlPXJlc2V0XTpub3QoOmRpc2FibGVkKSxcXG5bdHlwZT1zdWJtaXRdOm5vdCg6ZGlzYWJsZWQpIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuOjotbW96LWZvY3VzLWlubmVyIHtcXG4gIHBhZGRpbmc6IDA7XFxuICBib3JkZXItc3R5bGU6IG5vbmU7XFxufVxcblxcbnRleHRhcmVhIHtcXG4gIHJlc2l6ZTogdmVydGljYWw7XFxufVxcblxcbmZpZWxkc2V0IHtcXG4gIG1pbi13aWR0aDogMDtcXG4gIHBhZGRpbmc6IDA7XFxuICBtYXJnaW46IDA7XFxuICBib3JkZXI6IDA7XFxufVxcblxcbmxlZ2VuZCB7XFxuICBmbG9hdDogbGVmdDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KTtcXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICBsZWdlbmQge1xcbiAgICBmb250LXNpemU6IDEuNXJlbTtcXG4gIH1cXG59XFxubGVnZW5kICsgKiB7XFxuICBjbGVhcjogbGVmdDtcXG59XFxuXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCB7XFxuICBwYWRkaW5nOiAwO1xcbn1cXG5cXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xcbiAgaGVpZ2h0OiBhdXRvO1xcbn1cXG5cXG5bdHlwZT1zZWFyY2hdIHtcXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XFxufVxcblxcbi8qIHJ0bDpyYXc6XFxuW3R5cGU9XFxcInRlbFxcXCJdLFxcblt0eXBlPVxcXCJ1cmxcXFwiXSxcXG5bdHlwZT1cXFwiZW1haWxcXFwiXSxcXG5bdHlwZT1cXFwibnVtYmVyXFxcIl0ge1xcbiAgZGlyZWN0aW9uOiBsdHI7XFxufVxcbiovXFxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuXFxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcXG4gIHBhZGRpbmc6IDA7XFxufVxcblxcbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgZm9udDogaW5oZXJpdDtcXG59XFxuXFxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBmb250OiBpbmhlcml0O1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XFxufVxcblxcbm91dHB1dCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbmlmcmFtZSB7XFxuICBib3JkZXI6IDA7XFxufVxcblxcbnN1bW1hcnkge1xcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG5cXG5wcm9ncmVzcyB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxufVxcblxcbltoaWRkZW5dIHtcXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmxlYWQge1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG59XFxuXFxuLmRpc3BsYXktMSB7XFxuICBmb250LXNpemU6IGNhbGMoMS42MjVyZW0gKyA0LjV2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktMSB7XFxuICAgIGZvbnQtc2l6ZTogNXJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktMiB7XFxuICBmb250LXNpemU6IGNhbGMoMS41NzVyZW0gKyAzLjl2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktMiB7XFxuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS0zIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjUyNXJlbSArIDMuM3Z3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS0zIHtcXG4gICAgZm9udC1zaXplOiA0cmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS00IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjQ3NXJlbSArIDIuN3Z3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS00IHtcXG4gICAgZm9udC1zaXplOiAzLjVyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTUge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNDI1cmVtICsgMi4xdncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTUge1xcbiAgICBmb250LXNpemU6IDNyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTYge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTYge1xcbiAgICBmb250LXNpemU6IDIuNXJlbTtcXG4gIH1cXG59XFxuXFxuLmxpc3QtdW5zdHlsZWQge1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLmxpc3QtaW5saW5lIHtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5saXN0LWlubGluZS1pdGVtIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcXG59XFxuXFxuLmluaXRpYWxpc20ge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcXG59XFxuXFxuLmJsb2NrcXVvdGUge1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uYmxvY2txdW90ZS1mb290ZXIge1xcbiAgbWFyZ2luLXRvcDogLTFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3JlIHtcXG4gIGNvbnRlbnQ6IFxcXCLigJTCoFxcXCI7XFxufVxcblxcbi5pbWctZmx1aWQge1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiBhdXRvO1xcbn1cXG5cXG4uaW1nLXRodW1ibmFpbCB7XFxuICBwYWRkaW5nOiAwLjI1cmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiBhdXRvO1xcbn1cXG5cXG4uZmlndXJlIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuXFxuLmZpZ3VyZS1pbWcge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxufVxcblxcbi5maWd1cmUtY2FwdGlvbiB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLmNvbnRhaW5lcixcXG4uY29udGFpbmVyLWZsdWlkLFxcbi5jb250YWluZXIteHhsLFxcbi5jb250YWluZXIteGwsXFxuLmNvbnRhaW5lci1sZyxcXG4uY29udGFpbmVyLW1kLFxcbi5jb250YWluZXItc20ge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1icy1ndXR0ZXIteCwgMC43NXJlbSk7XFxuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWJzLWd1dHRlci14LCAwLjc1cmVtKTtcXG4gIG1hcmdpbi1yaWdodDogYXV0bztcXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xcbiAgICBtYXgtd2lkdGg6IDU0MHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiAxMTQwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5jb250YWluZXIteHhsLCAuY29udGFpbmVyLXhsLCAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiAxMzIwcHg7XFxuICB9XFxufVxcbi5yb3cge1xcbiAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgLS1icy1ndXR0ZXIteTogMDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWJzLWd1dHRlci15KSAqIC0xKTtcXG4gIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAtMik7XFxuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAtMik7XFxufVxcbi5yb3cgPiAqIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIDIpO1xcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIDIpO1xcbiAgbWFyZ2luLXRvcDogdmFyKC0tYnMtZ3V0dGVyLXkpO1xcbn1cXG5cXG4uY29sIHtcXG4gIGZsZXg6IDEgMDtcXG59XFxuXFxuLnJvdy1jb2xzLWF1dG8gPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IGF1dG87XFxufVxcblxcbi5yb3ctY29scy0xID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG5cXG4ucm93LWNvbHMtMiA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNTAlO1xcbn1cXG5cXG4ucm93LWNvbHMtMyA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5yb3ctY29scy00ID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAyNSU7XFxufVxcblxcbi5yb3ctY29scy01ID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAyMCU7XFxufVxcblxcbi5yb3ctY29scy02ID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC1hdXRvIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IGF1dG87XFxufVxcblxcbi5jb2wtMSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4uY29sLTIge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtMyB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAyNSU7XFxufVxcblxcbi5jb2wtNCB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLmNvbC01IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLTYge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNTAlO1xcbn1cXG5cXG4uY29sLTcge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtOCB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC05IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDc1JTtcXG59XFxuXFxuLmNvbC0xMCB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLmNvbC0xMSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC0xMiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG5cXG4ub2Zmc2V0LTEge1xcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxufVxcblxcbi5vZmZzZXQtMiB7XFxuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5vZmZzZXQtMyB7XFxuICBtYXJnaW4tbGVmdDogMjUlO1xcbn1cXG5cXG4ub2Zmc2V0LTQge1xcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ub2Zmc2V0LTUge1xcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbn1cXG5cXG4ub2Zmc2V0LTYge1xcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcXG59XFxuXFxuLm9mZnNldC03IHtcXG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC04IHtcXG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG59XFxuXFxuLm9mZnNldC05IHtcXG4gIG1hcmdpbi1sZWZ0OiA3NSU7XFxufVxcblxcbi5vZmZzZXQtMTAge1xcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ub2Zmc2V0LTExIHtcXG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmctMCxcXG4uZ3gtMCB7XFxuICAtLWJzLWd1dHRlci14OiAwO1xcbn1cXG5cXG4uZy0wLFxcbi5neS0wIHtcXG4gIC0tYnMtZ3V0dGVyLXk6IDA7XFxufVxcblxcbi5nLTEsXFxuLmd4LTEge1xcbiAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG59XFxuXFxuLmctMSxcXG4uZ3ktMSB7XFxuICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbn1cXG5cXG4uZy0yLFxcbi5neC0yIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG59XFxuXFxuLmctMixcXG4uZ3ktMiB7XFxuICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxufVxcblxcbi5nLTMsXFxuLmd4LTMge1xcbiAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG59XFxuXFxuLmctMyxcXG4uZ3ktMyB7XFxuICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbn1cXG5cXG4uZy00LFxcbi5neC00IHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG59XFxuXFxuLmctNCxcXG4uZ3ktNCB7XFxuICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxufVxcblxcbi5nLTUsXFxuLmd4LTUge1xcbiAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG59XFxuXFxuLmctNSxcXG4uZ3ktNSB7XFxuICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5jb2wtc20ge1xcbiAgICBmbGV4OiAxIDA7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wtc20tMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLXNtLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy1zbS0wLFxcbi5neC1zbS0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLXNtLTAsXFxuLmd5LXNtLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmctc20tMSxcXG4uZ3gtc20tMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS0xLFxcbi5neS1zbS0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTIsXFxuLmd4LXNtLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS0yLFxcbi5neS1zbS0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMyxcXG4uZ3gtc20tMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy1zbS0zLFxcbi5neS1zbS0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTQsXFxuLmd4LXNtLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS00LFxcbi5neS1zbS00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tNSxcXG4uZ3gtc20tNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy1zbS01LFxcbi5neS1zbS01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuY29sLW1kIHtcXG4gICAgZmxleDogMSAwO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLW1kLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLW1kLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmctbWQtMCxcXG4uZ3gtbWQtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy1tZC0wLFxcbi5neS1tZC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLW1kLTEsXFxuLmd4LW1kLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMSxcXG4uZ3ktbWQtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC0yLFxcbi5neC1tZC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMixcXG4uZ3ktbWQtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTMsXFxuLmd4LW1kLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMyxcXG4uZ3ktbWQtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy1tZC00LFxcbi5neC1tZC00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtNCxcXG4uZ3ktbWQtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTUsXFxuLmd4LW1kLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmctbWQtNSxcXG4uZ3ktbWQtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmNvbC1sZyB7XFxuICAgIGZsZXg6IDEgMDtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLWxnLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLWxnLTAsXFxuLmd4LWxnLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmctbGctMCxcXG4uZ3ktbGctMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy1sZy0xLFxcbi5neC1sZy0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTEsXFxuLmd5LWxnLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctbGctMixcXG4uZ3gtbGctMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTIsXFxuLmd5LWxnLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0zLFxcbi5neC1sZy0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTMsXFxuLmd5LWxnLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctbGctNCxcXG4uZ3gtbGctNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTQsXFxuLmd5LWxnLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy01LFxcbi5neC1sZy01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTUsXFxuLmd5LWxnLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuY29sLXhsIHtcXG4gICAgZmxleDogMSAwO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLXhsLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLXhsLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14bC01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC14bC03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmcteGwtMCxcXG4uZ3gteGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy14bC0wLFxcbi5neS14bC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLXhsLTEsXFxuLmd4LXhsLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMSxcXG4uZ3kteGwtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy14bC0yLFxcbi5neC14bC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMixcXG4uZ3kteGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTMsXFxuLmd4LXhsLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMyxcXG4uZ3kteGwtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy14bC00LFxcbi5neC14bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtNCxcXG4uZ3kteGwtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTUsXFxuLmd4LXhsLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmcteGwtNSxcXG4uZ3kteGwtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5jb2wteHhsIHtcXG4gICAgZmxleDogMSAwO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLXh4bC03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy14eGwtMCxcXG4uZ3gteHhsLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmcteHhsLTAsXFxuLmd5LXh4bC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLXh4bC0xLFxcbi5neC14eGwtMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMSxcXG4uZ3kteHhsLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTIsXFxuLmd4LXh4bC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTIsXFxuLmd5LXh4bC0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTMsXFxuLmd4LXh4bC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0zLFxcbi5neS14eGwtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy14eGwtNCxcXG4uZ3gteHhsLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtNCxcXG4uZ3kteHhsLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy14eGwtNSxcXG4uZ3gteHhsLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTUsXFxuLmd5LXh4bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuLnRhYmxlIHtcXG4gIC0tYnMtdGFibGUtYmc6IHRyYW5zcGFyZW50O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMyMTI1Mjk7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzIxMjUyOTtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xcbn1cXG4udGFibGUgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgcGFkZGluZzogMC41cmVtIDAuNXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRhYmxlLWJnKTtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS1icy10YWJsZS1hY2NlbnQtYmcpO1xcbn1cXG4udGFibGUgPiB0Ym9keSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcXG59XFxuLnRhYmxlID4gdGhlYWQge1xcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcXG59XFxuLnRhYmxlID4gOm5vdCg6bGFzdC1jaGlsZCkgPiA6bGFzdC1jaGlsZCA+ICoge1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudENvbG9yO1xcbn1cXG5cXG4uY2FwdGlvbi10b3Age1xcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XFxufVxcblxcbi50YWJsZS1zbSA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuMjVyZW07XFxufVxcblxcbi50YWJsZS1ib3JkZXJlZCA+IDpub3QoY2FwdGlvbikgPiAqIHtcXG4gIGJvcmRlci13aWR0aDogMXB4IDA7XFxufVxcbi50YWJsZS1ib3JkZXJlZCA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XFxuICBib3JkZXItd2lkdGg6IDAgMXB4O1xcbn1cXG5cXG4udGFibGUtYm9yZGVybGVzcyA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbn1cXG5cXG4udGFibGUtc3RyaXBlZCA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XFxuICAtLWJzLXRhYmxlLWFjY2VudC1iZzogdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1iZyk7XFxuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcik7XFxufVxcblxcbi50YWJsZS1hY3RpdmUge1xcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1iZyk7XFxuICBjb2xvcjogdmFyKC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yKTtcXG59XFxuXFxuLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0cjpob3ZlciB7XFxuICAtLWJzLXRhYmxlLWFjY2VudC1iZzogdmFyKC0tYnMtdGFibGUtaG92ZXItYmcpO1xcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWhvdmVyLWNvbG9yKTtcXG59XFxuXFxuLnRhYmxlLXByaW1hcnkge1xcbiAgLS1icy10YWJsZS1iZzogI2NmZTJmZjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M1ZDdmMjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYmFjYmU2O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjYmZkMWVjO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmFjYmU2O1xcbn1cXG5cXG4udGFibGUtc2Vjb25kYXJ5IHtcXG4gIC0tYnMtdGFibGUtYmc6ICNlMmUzZTU7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNkN2Q4ZGE7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2NiY2NjZTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2QxZDJkNDtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2NiY2NjZTtcXG59XFxuXFxuLnRhYmxlLXN1Y2Nlc3Mge1xcbiAgLS1icy10YWJsZS1iZzogI2QxZTdkZDtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M3ZGJkMjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYmNkMGM3O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjYzFkNmNjO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNkMGM3O1xcbn1cXG5cXG4udGFibGUtaW5mbyB7XFxuICAtLWJzLXRhYmxlLWJnOiAjY2ZmNGZjO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjYzVlOGVmO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNiYWRjZTM7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNiZmUyZTk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNiYWRjZTM7XFxufVxcblxcbi50YWJsZS13YXJuaW5nIHtcXG4gIC0tYnMtdGFibGUtYmc6ICNmZmYzY2Q7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNmMmU3YzM7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2U2ZGJiOTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2VjZTFiZTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2U2ZGJiOTtcXG59XFxuXFxuLnRhYmxlLWRhbmdlciB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZjhkN2RhO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZWNjY2NmO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNkZmMyYzQ7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNlNWM3Y2E7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNkZmMyYzQ7XFxufVxcblxcbi50YWJsZS1saWdodCB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZjhmOWZhO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZWNlZGVlO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNkZmUwZTE7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNlNWU2ZTc7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNkZmUwZTE7XFxufVxcblxcbi50YWJsZS1kYXJrIHtcXG4gIC0tYnMtdGFibGUtYmc6ICMyMTI1Mjk7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICMyYzMwMzQ7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICNmZmY7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogIzM3M2IzZTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjZmZmO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogIzMyMzUzOTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICNmZmY7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogIzM3M2IzZTtcXG59XFxuXFxuLnRhYmxlLXJlc3BvbnNpdmUge1xcbiAgb3ZlcmZsb3cteDogYXV0bztcXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG59XFxuXFxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS1zbSB7XFxuICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS1tZCB7XFxuICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS1sZyB7XFxuICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUteGwge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiAxMzk5Ljk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLXh4bCB7XFxuICAgIG92ZXJmbG93LXg6IGF1dG87XFxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gIH1cXG59XFxuLmZvcm0tbGFiZWwge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbn1cXG5cXG4uY29sLWZvcm0tbGFiZWwge1xcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxufVxcblxcbi5jb2wtZm9ybS1sYWJlbC1sZyB7XFxuICBwYWRkaW5nLXRvcDogY2FsYygwLjVyZW0gKyAxcHgpO1xcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC41cmVtICsgMXB4KTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcXG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4yNXJlbSArIDFweCk7XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbn1cXG5cXG4uZm9ybS10ZXh0IHtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLmZvcm0tY29udHJvbCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLWNvbnRyb2wge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1jb250cm9sW3R5cGU9ZmlsZV0ge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcbi5mb3JtLWNvbnRyb2w6Zm9jdXMge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyLWNvbG9yOiAjODZiN2ZlO1xcbiAgb3V0bGluZTogMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpO1xcbn1cXG4uZm9ybS1jb250cm9sOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG59XFxuLmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uZm9ybS1jb250cm9sOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgbWFyZ2luOiAtMC4zNzVyZW0gLTAuNzVyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMC43NXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gIGJvcmRlci13aWR0aDogMDtcXG4gIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAxcHg7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLWNvbnRyb2w6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tY29udHJvbDpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGUwZTM7XFxufVxcbi5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBtYXJnaW46IC0wLjM3NXJlbSAtMC43NXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IDFweDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRlMGUzO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItd2lkdGg6IDFweCAwO1xcbn1cXG4uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtc20sIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1sZyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLXNtIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLXNtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuMjVyZW0gLTAuNXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjVyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtc206Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luOiAtMC4yNXJlbSAtMC41cmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNXJlbTtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1sZyB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcXG59XFxuLmZvcm0tY29udHJvbC1sZzo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1sZzo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcXG59XFxuXFxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcXG59XFxudGV4dGFyZWEuZm9ybS1jb250cm9sLXNtIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xcbn1cXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wtbGcge1xcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcXG4gIG1heC13aWR0aDogM3JlbTtcXG4gIGhlaWdodDogYXV0bztcXG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcbi5mb3JtLWNvbnRyb2wtY29sb3I6Oi1tb3otY29sb3Itc3dhdGNoIHtcXG4gIGhlaWdodDogMS41ZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAyLjI1cmVtIDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuLmZvcm0tc2VsZWN0OmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tc2VsZWN0W211bHRpcGxlXSwgLmZvcm0tc2VsZWN0W3NpemVdOm5vdChbc2l6ZT1cXFwiMVxcXCJdKSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG59XFxuLmZvcm0tc2VsZWN0OmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG59XFxuLmZvcm0tc2VsZWN0Oi1tb3otZm9jdXNyaW5nIHtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIHRleHQtc2hhZG93OiAwIDAgMCAjMjEyNTI5O1xcbn1cXG5cXG4uZm9ybS1zZWxlY3Qtc20ge1xcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0LWxnIHtcXG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG5cXG4uZm9ybS1jaGVjayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1pbi1oZWlnaHQ6IDEuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMS41ZW07XFxuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcXG59XFxuLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICBtYXJnaW4tbGVmdDogLTEuNWVtO1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbnB1dCB7XFxuICB3aWR0aDogMWVtO1xcbiAgaGVpZ2h0OiAxZW07XFxuICBtYXJnaW4tdG9wOiAwLjI1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcXG4gIGNvbG9yLWFkanVzdDogZXhhY3Q7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10ge1xcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDphY3RpdmUge1xcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9Y2hlY2tib3hdIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9cmFkaW9dIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMicgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGZpbHRlcjogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG5cXG4uZm9ybS1zd2l0Y2gge1xcbiAgcGFkZGluZy1sZWZ0OiAyLjVlbTtcXG59XFxuLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gIHdpZHRoOiAyZW07XFxuICBtYXJnaW4tbGVmdDogLTIuNWVtO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSdyZ2JhJTI4MCwgMCwgMCwgMC4yNSUyOScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XFxuICBib3JkZXItcmFkaXVzOiAyZW07XFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzODZiN2ZlJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW07XFxufVxcblxcbi5idG4tY2hlY2sge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4uYnRuLWNoZWNrW2Rpc2FibGVkXSArIC5idG4sIC5idG4tY2hlY2s6ZGlzYWJsZWQgKyAuYnRuIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgZmlsdGVyOiBub25lO1xcbiAgb3BhY2l0eTogMC42NTtcXG59XFxuXFxuLmZvcm0tcmFuZ2Uge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEuNXJlbTtcXG4gIHBhZGRpbmc6IDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzIHtcXG4gIG91dGxpbmU6IDA7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRodW1iIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIge1xcbiAgYm9yZGVyOiAwO1xcbn1cXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiNmQ0ZmU7XFxufVxcbi5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMC41cmVtO1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbn1cXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbiAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgICAtbW96LXRyYW5zaXRpb246IG5vbmU7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iOmFjdGl2ZSB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZkNGZlO1xcbn1cXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10cmFjayB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMC41cmVtO1xcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RlZTJlNjtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbn1cXG4uZm9ybS1yYW5nZTpkaXNhYmxlZCB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG59XFxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XFxufVxcbi5mb3JtLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRodW1iIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGI1YmQ7XFxufVxcblxcbi5mb3JtLWZsb2F0aW5nIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sLFxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IHtcXG4gIGhlaWdodDogY2FsYygzLjVyZW0gKyAycHgpO1xcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IGxhYmVsIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xcyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLWZsb2F0aW5nID4gbGFiZWwge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOi1tb3otcGxhY2Vob2xkZXItc2hvd24pIHtcXG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOmZvY3VzLCAuZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB7XFxuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IHtcXG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOm5vdCg6LW1vei1wbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCB7XFxuICBvcGFjaXR5OiAwLjY1O1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjVyZW0pIHRyYW5zbGF0ZVgoMC4xNXJlbSk7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cyB+IGxhYmVsLFxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IH4gbGFiZWwge1xcbiAgb3BhY2l0eTogMC42NTtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNjU7XFxuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcXG59XFxuXFxuLmlucHV0LWdyb3VwIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHdpZHRoOiAxJTtcXG4gIG1pbi13aWR0aDogMDtcXG59XFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cyxcXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG59XFxuLmlucHV0LWdyb3VwIC5idG4ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMjtcXG59XFxuLmlucHV0LWdyb3VwIC5idG46Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG59XFxuXFxuLmlucHV0LWdyb3VwLXRleHQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpLFxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiszKSB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiA6bnRoLWxhc3QtY2hpbGQobiszKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rNCkge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmlucHV0LWdyb3VwID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC52YWxpZC10b29sdGlwKTpub3QoLnZhbGlkLWZlZWRiYWNrKTpub3QoLmludmFsaWQtdG9vbHRpcCk6bm90KC5pbnZhbGlkLWZlZWRiYWNrKSB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG5cXG4udmFsaWQtZmVlZGJhY2sge1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbn1cXG5cXG4udmFsaWQtdG9vbHRpcCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDEwMCU7XFxuICB6LWluZGV4OiA1O1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNSwgMTM1LCA4NCwgMC45KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtdG9vbHRpcCxcXG4uaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXFxuLmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzE5ODc1NCcgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuMjUpO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQsIC5mb3JtLXNlbGVjdC5pcy12YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxuICBwYWRkaW5nLXJpZ2h0OiA0LjEyNXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIiksIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4LCBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkOmZvY3VzLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Y2hlY2tlZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpmb2N1cywgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XFxuICBjb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IH4gLnZhbGlkLWZlZWRiYWNrIHtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcXG59XFxuXFxuLmludmFsaWQtZmVlZGJhY2sge1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbn1cXG5cXG4uaW52YWxpZC10b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMTAwJTtcXG4gIHotaW5kZXg6IDU7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBtYXJnaW4tdG9wOiAwLjFyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMCwgNTMsIDY5LCAwLjkpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsXFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NSclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOmludmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkLCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxuICBwYWRkaW5nLXJpZ2h0OiA0LjEyNXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIiksIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NSclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXIsIGNlbnRlciByaWdodCAyLjI1cmVtO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHgsIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZDpmb2N1cywgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Y2hlY2tlZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZDpjaGVja2VkIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Zm9jdXMsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgY29sb3I6ICNkYzM1NDU7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB+IC5pbnZhbGlkLWZlZWRiYWNrIHtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcXG59XFxuXFxuLmJ0biB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XFxuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmJ0biB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5idG46aG92ZXIge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLCAuYnRuOmZvY3VzIHtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmJ0bjpkaXNhYmxlZCwgLmJ0bi5kaXNhYmxlZCwgZmllbGRzZXQ6ZGlzYWJsZWQgLmJ0biB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNjU7XFxufVxcblxcbi5idG4tcHJpbWFyeSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5idG4tcHJpbWFyeTpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDc7XFxuICBib3JkZXItY29sb3I6ICMwYTU4Y2E7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXByaW1hcnksIC5idG4tcHJpbWFyeTpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwYjVlZDc7XFxuICBib3JkZXItY29sb3I6ICMwYTU4Y2E7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNDksIDEzMiwgMjUzLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXByaW1hcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1wcmltYXJ5LCAuYnRuLXByaW1hcnk6YWN0aXZlLCAuYnRuLXByaW1hcnkuYWN0aXZlLCAuc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGE1OGNhO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGE1M2JlO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXByaW1hcnk6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLXByaW1hcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXByaW1hcnkuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDQ5LCAxMzIsIDI1MywgMC41KTtcXG59XFxuLmJ0bi1wcmltYXJ5OmRpc2FibGVkLCAuYnRuLXByaW1hcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG5cXG4uYnRuLXNlY29uZGFyeSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5idG4tc2Vjb25kYXJ5OmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjNjM2YTtcXG4gIGJvcmRlci1jb2xvcjogIzU2NWU2NDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tc2Vjb25kYXJ5LCAuYnRuLXNlY29uZGFyeTpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM1YzYzNmE7XFxuICBib3JkZXItY29sb3I6ICM1NjVlNjQ7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMwLCAxMzgsIDE0NSwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zZWNvbmRhcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1zZWNvbmRhcnksIC5idG4tc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnkuYWN0aXZlLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM1NjVlNjQ7XFxuICBib3JkZXItY29sb3I6ICM1MTU4NWU7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzMCwgMTM4LCAxNDUsIDAuNSk7XFxufVxcbi5idG4tc2Vjb25kYXJ5OmRpc2FibGVkLCAuYnRuLXNlY29uZGFyeS5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2Q7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5idG4tc3VjY2VzcyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5idG4tc3VjY2Vzczpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTczNDc7XFxuICBib3JkZXItY29sb3I6ICMxNDZjNDM7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXN1Y2Nlc3MsIC5idG4tc3VjY2Vzczpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNTczNDc7XFxuICBib3JkZXItY29sb3I6ICMxNDZjNDM7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjAsIDE1MywgMTEwLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXN1Y2Nlc3MsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1zdWNjZXNzLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlLCAuc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2YzQzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMTM2NTNmO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXN1Y2Nlc3M6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLXN1Y2Nlc3MuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDYwLCAxNTMsIDExMCwgMC41KTtcXG59XFxuLmJ0bi1zdWNjZXNzOmRpc2FibGVkLCAuYnRuLXN1Y2Nlc3MuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG5cXG4uYnRuLWluZm8ge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG4uYnRuLWluZm86aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFkMmYyO1xcbiAgYm9yZGVyLWNvbG9yOiAjMjVjZmYyO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1pbmZvLCAuYnRuLWluZm86Zm9jdXMge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFkMmYyO1xcbiAgYm9yZGVyLWNvbG9yOiAjMjVjZmYyO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDExLCAxNzIsIDIwNCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1pbmZvLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4taW5mbywgLmJ0bi1pbmZvOmFjdGl2ZSwgLmJ0bi1pbmZvLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkZDVmMztcXG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1pbmZvOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4taW5mbzpmb2N1cywgLmJ0bi1pbmZvOmFjdGl2ZTpmb2N1cywgLmJ0bi1pbmZvLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWluZm8uZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMSwgMTcyLCAyMDQsIDAuNSk7XFxufVxcbi5idG4taW5mbzpkaXNhYmxlZCwgLmJ0bi1pbmZvLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuXFxuLmJ0bi13YXJuaW5nIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuLmJ0bi13YXJuaW5nOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2EyYztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzcyMDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4td2FybmluZywgLmJ0bi13YXJuaW5nOmZvY3VzIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2EyYztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzcyMDtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMTcsIDE2NCwgNiwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi13YXJuaW5nLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4td2FybmluZywgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLmJ0bi13YXJuaW5nLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmY2QzOTtcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzcyMDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi13YXJuaW5nOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi13YXJuaW5nOmFjdGl2ZTpmb2N1cywgLmJ0bi13YXJuaW5nLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMTcsIDE2NCwgNiwgMC41KTtcXG59XFxuLmJ0bi13YXJuaW5nOmRpc2FibGVkLCAuYnRuLXdhcm5pbmcuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG5cXG4uYnRuLWRhbmdlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi5idG4tZGFuZ2VyOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JiMmQzYjtcXG4gIGJvcmRlci1jb2xvcjogI2IwMmEzNztcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tZGFuZ2VyLCAuYnRuLWRhbmdlcjpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7XFxuICBib3JkZXItY29sb3I6ICNiMDJhMzc7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjI1LCA4MywgOTcsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFuZ2VyLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tZGFuZ2VyLCAuYnRuLWRhbmdlcjphY3RpdmUsIC5idG4tZGFuZ2VyLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjAyYTM3O1xcbiAgYm9yZGVyLWNvbG9yOiAjYTUyODM0O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhbmdlcjpmb2N1cywgLmJ0bi1kYW5nZXI6YWN0aXZlOmZvY3VzLCAuYnRuLWRhbmdlci5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjUsIDgzLCA5NywgMC41KTtcXG59XFxuLmJ0bi1kYW5nZXI6ZGlzYWJsZWQsIC5idG4tZGFuZ2VyLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuXFxuLmJ0bi1saWdodCB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tbGlnaHQ6aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1saWdodCwgLmJ0bi1saWdodDpmb2N1cyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XFxuICBib3JkZXItY29sb3I6ICNmOWZhZmI7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjExLCAyMTIsIDIxMywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1saWdodCwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWxpZ2h0LCAuYnRuLWxpZ2h0OmFjdGl2ZSwgLmJ0bi1saWdodC5hY3RpdmUsIC5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tbGlnaHQ6Zm9jdXMsIC5idG4tbGlnaHQ6YWN0aXZlOmZvY3VzLCAuYnRuLWxpZ2h0LmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjExLCAyMTIsIDIxMywgMC41KTtcXG59XFxuLmJ0bi1saWdodDpkaXNhYmxlZCwgLmJ0bi1saWdodC5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcblxcbi5idG4tZGFyayB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5idG4tZGFyazpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjM7XFxuICBib3JkZXItY29sb3I6ICMxYTFlMjE7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLWRhcmssIC5idG4tZGFyazpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxYzFmMjM7XFxuICBib3JkZXItY29sb3I6ICMxYTFlMjE7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjYsIDcwLCA3MywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYXJrLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tZGFyaywgLmJ0bi1kYXJrOmFjdGl2ZSwgLmJ0bi1kYXJrLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWUyMTtcXG4gIGJvcmRlci1jb2xvcjogIzE5MWMxZjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYXJrOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tZGFyazpmb2N1cywgLmJ0bi1kYXJrOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYXJrLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg2NiwgNzAsIDczLCAwLjUpO1xcbn1cXG4uYnRuLWRhcms6ZGlzYWJsZWQsIC5idG4tZGFyay5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItY29sb3I6ICMyMTI1Mjk7XFxufVxcblxcbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLW91dGxpbmUtcHJpbWFyeTpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtcHJpbWFyeSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXByaW1hcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXByaW1hcnksIC5idG4tb3V0bGluZS1wcmltYXJ5OmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeTphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMGQ2ZWZkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2Q7XFxufVxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5hY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTA4LCAxMTcsIDEyNSwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtc3VjY2VzcyB7XFxuICBjb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsIC5idG4tb3V0bGluZS1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuYWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2VzczphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtc3VjY2VzczpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLWluZm8ge1xcbiAgY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4tb3V0bGluZS1pbmZvOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1pbmZvLCAuYnRuLW91dGxpbmUtaW5mbzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDIwMiwgMjQwLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1vdXRsaW5lLWluZm86YWN0aXZlLCAuYnRuLW91dGxpbmUtaW5mby5hY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDIwMiwgMjQwLCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWluZm8uZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwZGNhZjA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcge1xcbiAgY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4tb3V0bGluZS13YXJuaW5nOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS13YXJuaW5nLCAuYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS13YXJuaW5nLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS13YXJuaW5nLCAuYnRuLW91dGxpbmUtd2FybmluZzphY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNTUsIDE5MywgNywgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS13YXJuaW5nLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZjMTA3O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1kYW5nZXIge1xcbiAgY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWRhbmdlciwgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjIwLCA1MywgNjksIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhbmdlciwgLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmUsIC5idG4tb3V0bGluZS1kYW5nZXIuYWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFuZ2VyOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlci5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1saWdodCB7XFxuICBjb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWxpZ2h0LCAuYnRuLW91dGxpbmUtbGlnaHQ6YWN0aXZlLCAuYnRuLW91dGxpbmUtbGlnaHQuYWN0aXZlLCAuYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtbGlnaHQ6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQ6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtbGlnaHQuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI0OCwgMjQ5LCAyNTAsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1saWdodDpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZjhmOWZhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1kYXJrIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLW91dGxpbmUtZGFyazpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1Mjk7XFxuICBib3JkZXItY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDMzLCAzNywgNDEsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYXJrLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYXJrLCAuYnRuLW91dGxpbmUtZGFyazphY3RpdmUsIC5idG4tb3V0bGluZS1kYXJrLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFyazpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcms6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMywgMzcsIDQxLCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtZGFyazpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1saW5rIHtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xcbn1cXG4uYnRuLWxpbms6aG92ZXIge1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxufVxcbi5idG4tbGluazpkaXNhYmxlZCwgLmJ0bi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4uYnRuLWxnLCAuYnRuLWdyb3VwLWxnID4gLmJ0biB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcXG59XFxuXFxuLmJ0bi1zbSwgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG5cXG4uZmFkZSB7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mYWRlIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZhZGU6bm90KC5zaG93KSB7XFxuICBvcGFjaXR5OiAwO1xcbn1cXG5cXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4uY29sbGFwc2luZyB7XFxuICBoZWlnaHQ6IDA7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMzVzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY29sbGFwc2luZyB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5kcm9wdXAsXFxuLmRyb3BlbmQsXFxuLmRyb3Bkb3duLFxcbi5kcm9wc3RhcnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG5cXG4uZHJvcGRvd24tdG9nZ2xlIHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkO1xcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1ib3R0b206IDA7XFxuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxufVxcbi5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDEwMCU7XFxuICB6LWluZGV4OiAxMDAwO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIG1pbi13aWR0aDogMTByZW07XFxuICBwYWRkaW5nOiAwLjVyZW0gMDtcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbGVmdDogMDtcXG4gIG1hcmdpbi10b3A6IDAuMTI1cmVtO1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudS1zdGFydCB7XFxuICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG59XFxuLmRyb3Bkb3duLW1lbnUtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxufVxcblxcbi5kcm9wZG93bi1tZW51LWVuZCB7XFxuICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxufVxcbi5kcm9wZG93bi1tZW51LWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuZHJvcGRvd24tbWVudS1zbS1zdGFydCB7XFxuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtc20tc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUtc20tZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtc20tZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuZHJvcGRvd24tbWVudS1tZC1zdGFydCB7XFxuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtbWQtc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUtbWQtZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtbWQtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuZHJvcGRvd24tbWVudS1sZy1zdGFydCB7XFxuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUtbGctZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUtbGctZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUteGwtc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXhsLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LXhsLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXhsLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LXh4bC1zdGFydCB7XFxuICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUteHhsLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LXh4bC1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14eGwtZW5kW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IGF1dG8gLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG59XFxuLmRyb3B1cCAuZHJvcGRvd24tbWVudSB7XFxuICB0b3A6IGF1dG87XFxuICBib3R0b206IDEwMCU7XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcXG59XFxuLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwO1xcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkO1xcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG5cXG4uZHJvcGVuZCAuZHJvcGRvd24tbWVudSB7XFxuICB0b3A6IDA7XFxuICByaWdodDogYXV0bztcXG4gIGxlZnQ6IDEwMCU7XFxufVxcbi5kcm9wZW5kIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtO1xcbn1cXG4uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yaWdodDogMDtcXG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkO1xcbn1cXG4uZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgdmVydGljYWwtYWxpZ246IDA7XFxufVxcblxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLW1lbnUge1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDEwMCU7XFxuICBsZWZ0OiBhdXRvO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNXJlbTtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1NWVtO1xcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcXG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogMDtcXG59XFxuXFxuLmRyb3Bkb3duLWRpdmlkZXIge1xcbiAgaGVpZ2h0OiAwO1xcbiAgbWFyZ2luOiAwLjVyZW0gMDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG59XFxuXFxuLmRyb3Bkb3duLWl0ZW0ge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcXG4gIGNsZWFyOiBib3RoO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogMDtcXG59XFxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcXG4gIGNvbG9yOiAjMWUyMTI1O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG59XFxuLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24taXRlbTphY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xcbiAgY29sb3I6ICNhZGI1YmQ7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudS5zaG93IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4uZHJvcGRvd24taGVhZGVyIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG59XFxuXFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudS1kYXJrIHtcXG4gIGNvbG9yOiAjZGVlMmU2O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM0M2E0MDtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbSB7XFxuICBjb2xvcjogI2RlZTJlNjtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpob3ZlciwgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xcbiAgY29sb3I6ICNhZGI1YmQ7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWRpdmlkZXIge1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLXRleHQge1xcbiAgY29sb3I6ICNkZWUyZTY7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWhlYWRlciB7XFxuICBjb2xvcjogI2FkYjViZDtcXG59XFxuXFxuLmJ0bi1ncm91cCxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG59XFxuLmJ0bi1ncm91cCA+IC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZmxleDogMSAxIGF1dG87XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxcbi5idG4tZ3JvdXAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcXG4uYnRuLWdyb3VwID4gLmJ0bjpob3ZlcixcXG4uYnRuLWdyb3VwID4gLmJ0bjpmb2N1cyxcXG4uYnRuLWdyb3VwID4gLmJ0bjphY3RpdmUsXFxuLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpob3ZlcixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpmb2N1cyxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjphY3RpdmUsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4uYWN0aXZlIHtcXG4gIHotaW5kZXg6IDE7XFxufVxcblxcbi5idG4tdG9vbGJhciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbn1cXG4uYnRuLXRvb2xiYXIgLmlucHV0LWdyb3VwIHtcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG59XFxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmJ0bi1ncm91cCA+IC5idG46bnRoLWNoaWxkKG4rMyksXFxuLmJ0bi1ncm91cCA+IDpub3QoLmJ0bi1jaGVjaykgKyAuYnRuLFxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuXFxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjU2MjVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTtcXG59XFxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsIC5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsIC5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyIHtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XFxuICBtYXJnaW4tcmlnaHQ6IDA7XFxufVxcblxcbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLXNtID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtO1xcbn1cXG5cXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XFxuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XFxufVxcblxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxufVxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwIHtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICBtYXJnaW4tdG9wOiAtMXB4O1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIH4gLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG5cXG4ubmF2IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLm5hdi1saW5rIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLm5hdi1saW5rIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBjdXJzb3I6IGRlZmF1bHQ7XFxufVxcblxcbi5uYXYtdGFicyB7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcXG59XFxuLm5hdi10YWJzIC5uYXYtbGluayB7XFxuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xcbiAgYmFja2dyb3VuZDogbm9uZTtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLCAubmF2LXRhYnMgLm5hdi1saW5rOmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogI2U5ZWNlZiAjZTllY2VmICNkZWUyZTY7XFxuICBpc29sYXRpb246IGlzb2xhdGU7XFxufVxcbi5uYXYtdGFicyAubmF2LWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxcbi5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xcbiAgY29sb3I6ICM0OTUwNTc7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2ICNkZWUyZTYgI2ZmZjtcXG59XFxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcXG4gIG1hcmdpbi10b3A6IC0xcHg7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxufVxcblxcbi5uYXYtcGlsbHMgLm5hdi1saW5rIHtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4ubmF2LXBpbGxzIC5uYXYtbGluay5hY3RpdmUsXFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxufVxcblxcbi5uYXYtZmlsbCA+IC5uYXYtbGluayxcXG4ubmF2LWZpbGwgLm5hdi1pdGVtIHtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG4ubmF2LWp1c3RpZmllZCA+IC5uYXYtbGluayxcXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xcbiAgZmxleC1iYXNpczogMDtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXFxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbi50YWItY29udGVudCA+IC5hY3RpdmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi5uYXZiYXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG59XFxuLm5hdmJhciA+IC5jb250YWluZXIsXFxuLm5hdmJhciA+IC5jb250YWluZXItZmx1aWQsXFxuLm5hdmJhciA+IC5jb250YWluZXItc20sXFxuLm5hdmJhciA+IC5jb250YWluZXItbWQsXFxuLm5hdmJhciA+IC5jb250YWluZXItbGcsXFxuLm5hdmJhciA+IC5jb250YWluZXIteGwsXFxuLm5hdmJhciA+IC5jb250YWluZXIteHhsIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IGluaGVyaXQ7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbn1cXG4ubmF2YmFyLWJyYW5kIHtcXG4gIHBhZGRpbmctdG9wOiAwLjMxMjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC4zMTI1cmVtO1xcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG59XFxuLm5hdmJhci1uYXYge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDA7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxufVxcbi5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gIHBvc2l0aW9uOiBzdGF0aWM7XFxufVxcblxcbi5uYXZiYXItdGV4dCB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG59XFxuXFxuLm5hdmJhci1jb2xsYXBzZSB7XFxuICBmbGV4LWJhc2lzOiAxMDAlO1xcbiAgZmxleC1ncm93OiAxO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG59XFxuXFxuLm5hdmJhci10b2dnbGVyIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLm5hdmJhci10b2dnbGVyOmhvdmVyIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG59XFxuLm5hdmJhci10b2dnbGVyOmZvY3VzIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtO1xcbn1cXG5cXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMS41ZW07XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XFxufVxcblxcbi5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICBtYXgtaGVpZ2h0OiB2YXIoLS1icy1zY3JvbGwtaGVpZ2h0LCA3NXZoKTtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLm5hdmJhci1leHBhbmQtc20ge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC1tZCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLWxnIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLXhsIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLXh4bCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG4ubmF2YmFyLWV4cGFuZCB7XFxuICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYge1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICBvdmVyZmxvdzogdmlzaWJsZTtcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1jb2xsYXBzZSB7XFxuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICBmbGV4LWJhc2lzOiBhdXRvO1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgwLCAwLCAwLCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU1KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYSxcXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyLFxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6Zm9jdXMge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcXG59XFxuXFxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVyLCAubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93ID4gLm5hdi1saW5rLFxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjU1JTI5JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IHtcXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGEsXFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmhvdmVyLFxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuXFxuLmNhcmQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBtaW4td2lkdGg6IDA7XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uY2FyZCA+IGhyIHtcXG4gIG1hcmdpbi1yaWdodDogMDtcXG4gIG1hcmdpbi1sZWZ0OiAwO1xcbn1cXG4uY2FyZCA+IC5saXN0LWdyb3VwIHtcXG4gIGJvcmRlci10b3A6IGluaGVyaXQ7XFxuICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xcbn1cXG4uY2FyZCA+IC5saXN0LWdyb3VwOmZpcnN0LWNoaWxkIHtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcbi5jYXJkID4gLmxpc3QtZ3JvdXA6bGFzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG4uY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxcbi5jYXJkID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xcbiAgYm9yZGVyLXRvcDogMDtcXG59XFxuXFxuLmNhcmQtYm9keSB7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcXG59XFxuXFxuLmNhcmQtdGl0bGUge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbn1cXG5cXG4uY2FyZC1zdWJ0aXRsZSB7XFxuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC1saW5rOmhvdmVyIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG59XFxuLmNhcmQtbGluayArIC5jYXJkLWxpbmsge1xcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gLyogcnRsOmlnbm9yZSAqLztcXG59XFxuXFxuLmNhcmQtaGVhZGVyIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxufVxcbi5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCkgMCAwO1xcbn1cXG5cXG4uY2FyZC1mb290ZXIge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbn1cXG4uY2FyZC1mb290ZXI6bGFzdC1jaGlsZCB7XFxuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG5cXG4uY2FyZC1oZWFkZXItdGFicyB7XFxuICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XFxuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XFxuICBib3JkZXItYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC1oZWFkZXItcGlsbHMge1xcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xcbiAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XFxufVxcblxcbi5jYXJkLWltZy1vdmVybGF5IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgbGVmdDogMDtcXG4gIHBhZGRpbmc6IDFyZW07XFxuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLXRvcCxcXG4uY2FyZC1pbWctYm90dG9tIHtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLXRvcCB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcblxcbi5jYXJkLWltZyxcXG4uY2FyZC1pbWctYm90dG9tIHtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5jYXJkLWdyb3VwIHtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQge1xcbiAgICBmbGV4OiAxIDA7XFxuICAgIG1hcmdpbi1ib3R0b206IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkICsgLmNhcmQge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgYm9yZGVyLWxlZnQ6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLXRvcCxcXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtaW1nLWJvdHRvbSxcXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6bGFzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLXRvcCxcXG4uY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1mb290ZXIge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5cXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICB0ZXh0LWFsaWduOiBsZWZ0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItcmFkaXVzIDAuMTVzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkge1xcbiAgY29sb3I6ICMwYzYzZTQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdmMWZmO1xcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCk6OmFmdGVyIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMGM2M2U0JyUzZSUzY3BhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICB3aWR0aDogMS4yNXJlbTtcXG4gIGhlaWdodDogMS4yNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzIxMjUyOSclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtc2l6ZTogMS4yNXJlbTtcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmFjY29yZGlvbi1idXR0b246aG92ZXIge1xcbiAgei1pbmRleDogMjtcXG59XFxuLmFjY29yZGlvbi1idXR0b246Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuXFxuLmFjY29yZGlvbi1oZWFkZXIge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uLmNvbGxhcHNlZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgYm9yZGVyOiBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG4gIGJvcmRlci13aWR0aDogMCAxcHg7XFxufVxcblxcbi5hY2NvcmRpb24tYm9keSB7XFxuICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XFxufVxcblxcbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1idXR0b24ge1xcbiAgYm9yZGVyLXJpZ2h0OiAwO1xcbiAgYm9yZGVyLWxlZnQ6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbn1cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpmaXJzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG59XFxuXFxuLmJyZWFkY3J1bWIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIHBhZGRpbmc6IDAgMDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbSB7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG59XFxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XFxuICBmbG9hdDogbGVmdDtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgY29udGVudDogdmFyKC0tYnMtYnJlYWRjcnVtYi1kaXZpZGVyLCBcXFwiL1xcXCIpIC8qIHJ0bDogdmFyKC0tYnMtYnJlYWRjcnVtYi1kaXZpZGVyLCBcXFwiL1xcXCIpICovO1xcbn1cXG4uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLnBhZ2luYXRpb24ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5wYWdlLWxpbmsge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5wYWdlLWxpbmsge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4ucGFnZS1saW5rOmhvdmVyIHtcXG4gIHotaW5kZXg6IDI7XFxuICBjb2xvcjogIzBhNThjYTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XFxufVxcbi5wYWdlLWxpbms6Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuXFxuLnBhZ2UtaXRlbTpub3QoOmZpcnN0LWNoaWxkKSAucGFnZS1saW5rIHtcXG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbn1cXG4ucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcXG4gIHotaW5kZXg6IDM7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcXG59XFxuXFxuLnBhZ2UtbGluayB7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbn1cXG5cXG4ucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxufVxcbi5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWxpbmsge1xcbiAgcGFkZGluZzogMC43NXJlbSAxLjVyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjNyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjNyZW07XFxufVxcbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjNyZW07XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zcmVtO1xcbn1cXG5cXG4ucGFnaW5hdGlvbi1zbSAucGFnZS1saW5rIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG59XFxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMnJlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMnJlbTtcXG59XFxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMnJlbTtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjJyZW07XFxufVxcblxcbi5iYWRnZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBwYWRkaW5nOiAwLjM1ZW0gMC42NWVtO1xcbiAgZm9udC1zaXplOiAwLjc1ZW07XFxuICBmb250LXdlaWdodDogNzAwO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uYmFkZ2U6ZW1wdHkge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLmJ0biAuYmFkZ2Uge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgdG9wOiAtMXB4O1xcbn1cXG5cXG4uYWxlcnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmFsZXJ0LWhlYWRpbmcge1xcbiAgY29sb3I6IGluaGVyaXQ7XFxufVxcblxcbi5hbGVydC1saW5rIHtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxufVxcblxcbi5hbGVydC1kaXNtaXNzaWJsZSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xcbn1cXG4uYWxlcnQtZGlzbWlzc2libGUgLmJ0bi1jbG9zZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIHotaW5kZXg6IDI7XFxuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XFxufVxcblxcbi5hbGVydC1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMDg0Mjk4O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZTJmZjtcXG4gIGJvcmRlci1jb2xvcjogI2I2ZDRmZTtcXG59XFxuLmFsZXJ0LXByaW1hcnkgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICMwNjM1N2E7XFxufVxcblxcbi5hbGVydC1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICM0MTQ2NGI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlM2U1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZDNkNmQ4O1xcbn1cXG4uYWxlcnQtc2Vjb25kYXJ5IC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMzQzODNjO1xcbn1cXG5cXG4uYWxlcnQtc3VjY2VzcyB7XFxuICBjb2xvcjogIzBmNTEzMjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkMWU3ZGQ7XFxuICBib3JkZXItY29sb3I6ICNiYWRiY2M7XFxufVxcbi5hbGVydC1zdWNjZXNzIC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMGM0MTI4O1xcbn1cXG5cXG4uYWxlcnQtaW5mbyB7XFxuICBjb2xvcjogIzA1NTE2MDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XFxuICBib3JkZXItY29sb3I6ICNiNmVmZmI7XFxufVxcbi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMDQ0MTRkO1xcbn1cXG5cXG4uYWxlcnQtd2FybmluZyB7XFxuICBjb2xvcjogIzY2NGQwMztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XFxuICBib3JkZXItY29sb3I6ICNmZmVjYjU7XFxufVxcbi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjNTIzZTAyO1xcbn1cXG5cXG4uYWxlcnQtZGFuZ2VyIHtcXG4gIGNvbG9yOiAjODQyMDI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y1YzJjNztcXG59XFxuLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzZhMWEyMTtcXG59XFxuXFxuLmFsZXJ0LWxpZ2h0IHtcXG4gIGNvbG9yOiAjNjM2NDY0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcXG4gIGJvcmRlci1jb2xvcjogI2ZkZmRmZTtcXG59XFxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjNGY1MDUwO1xcbn1cXG5cXG4uYWxlcnQtZGFyayB7XFxuICBjb2xvcjogIzE0MTYxOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDQ7XFxuICBib3JkZXItY29sb3I6ICNiY2JlYmY7XFxufVxcbi5hbGVydC1kYXJrIC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMTAxMjE0O1xcbn1cXG5cXG5Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcXG4gIDAlIHtcXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAxcmVtO1xcbiAgfVxcbn1cXG4ucHJvZ3Jlc3Mge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGhlaWdodDogMXJlbTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBmb250LXNpemU6IDAuNzVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLnByb2dyZXNzLWJhciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjZzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAucHJvZ3Jlc3MtYmFyIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxcmVtIDFyZW07XFxufVxcblxcbi5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xcbiAgYW5pbWF0aW9uOiAxcyBsaW5lYXIgaW5maW5pdGUgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcXG4gICAgYW5pbWF0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4ubGlzdC1ncm91cCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XFxuICB3aWR0aDogMTAwJTtcXG4gIGNvbG9yOiAjNDk1MDU3O1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIHotaW5kZXg6IDE7XFxuICBjb2xvcjogIzQ5NTA1NztcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmFjdGl2ZSB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsIC5saXN0LWdyb3VwLWl0ZW06ZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gIHotaW5kZXg6IDI7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICBtYXJnaW4tdG9wOiAtMXB4O1xcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbn1cXG5cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi10b3A6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi10b3A6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi10b3A6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi10b3A6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbi5saXN0LWdyb3VwLWZsdXNoIHtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XFxufVxcbi5saXN0LWdyb3VwLWZsdXNoID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeSB7XFxuICBjb2xvcjogIzA4NDI5ODtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmUyZmY7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzA4NDI5ODtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWNiZTY7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwODQyOTg7XFxuICBib3JkZXItY29sb3I6ICMwODQyOTg7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNDE0NjRiO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzQxNDY0YjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjYmNjY2U7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxNDY0YjtcXG4gIGJvcmRlci1jb2xvcjogIzQxNDY0YjtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMGY1MTMyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QxZTdkZDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjMGY1MTMyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JjZDBjNztcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBmNTEzMjtcXG4gIGJvcmRlci1jb2xvcjogIzBmNTEzMjtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcXG4gIGNvbG9yOiAjMDU1MTYwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NmZjRmYztcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjMDU1MTYwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JhZGNlMztcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1NTE2MDtcXG4gIGJvcmRlci1jb2xvcjogIzA1NTE2MDtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcXG4gIGNvbG9yOiAjNjY0ZDAzO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNjZDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjNjY0ZDAzO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZGJiOTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NGQwMztcXG4gIGJvcmRlci1jb2xvcjogIzY2NGQwMztcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIge1xcbiAgY29sb3I6ICM4NDIwMjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjODQyMDI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmYzJjNDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODQyMDI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjODQyMDI5O1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0IHtcXG4gIGNvbG9yOiAjNjM2NDY0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICM2MzY0NjQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNjQ2NDtcXG4gIGJvcmRlci1jb2xvcjogIzYzNjQ2NDtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHtcXG4gIGNvbG9yOiAjMTQxNjE5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkNDtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjMTQxNjE5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JlYmViZjtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MTYxOTtcXG4gIGJvcmRlci1jb2xvcjogIzE0MTYxOTtcXG59XFxuXFxuLmJ0bi1jbG9zZSB7XFxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcXG4gIHdpZHRoOiAxZW07XFxuICBoZWlnaHQ6IDFlbTtcXG4gIHBhZGRpbmc6IDAuMjVlbSAwLjI1ZW07XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzMDAwJyUzZSUzY3BhdGggZD0nTS4yOTMuMjkzYTEgMSAwIDAxMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMTExLjQxNCAxLjQxNEw5LjQxNCA4bDYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDYuNTg2IDggLjI5MyAxLjcwN2ExIDEgMCAwMTAtMS40MTR6Jy8lM2UlM2Mvc3ZnJTNlXFxcIikgY2VudGVyLzFlbSBhdXRvIG5vLXJlcGVhdDtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICBvcGFjaXR5OiAwLjU7XFxufVxcbi5idG4tY2xvc2U6aG92ZXIge1xcbiAgY29sb3I6ICMwMDA7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBvcGFjaXR5OiAwLjc1O1xcbn1cXG4uYnRuLWNsb3NlOmZvY3VzIHtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5idG4tY2xvc2U6ZGlzYWJsZWQsIC5idG4tY2xvc2UuZGlzYWJsZWQge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xcbiAgb3BhY2l0eTogMC4yNTtcXG59XFxuXFxuLmJ0bi1jbG9zZS13aGl0ZSB7XFxuICBmaWx0ZXI6IGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKTtcXG59XFxuXFxuLnRvYXN0IHtcXG4gIHdpZHRoOiAzNTBweDtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBwb2ludGVyLWV2ZW50czogYXV0bztcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLnRvYXN0Om5vdCguc2hvd2luZyk6bm90KC5zaG93KSB7XFxuICBvcGFjaXR5OiAwO1xcbn1cXG4udG9hc3QuaGlkZSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG5cXG4udG9hc3QtY29udGFpbmVyIHtcXG4gIHdpZHRoOiAtbW96LW1heC1jb250ZW50O1xcbiAgd2lkdGg6IG1heC1jb250ZW50O1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxufVxcbi50b2FzdC1jb250YWluZXIgPiA6bm90KDpsYXN0LWNoaWxkKSB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xcbn1cXG5cXG4udG9hc3QtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcbi50b2FzdC1oZWFkZXIgLmJ0bi1jbG9zZSB7XFxuICBtYXJnaW4tcmlnaHQ6IC0wLjM3NXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xcbn1cXG5cXG4udG9hc3QtYm9keSB7XFxuICBwYWRkaW5nOiAwLjc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbn1cXG5cXG4ubW9kYWwtb3BlbiB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4ubW9kYWwtb3BlbiAubW9kYWwge1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuXFxuLm1vZGFsIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDUwO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIG91dGxpbmU6IDA7XFxufVxcblxcbi5tb2RhbC1kaWFsb2cge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IGF1dG87XFxuICBtYXJnaW46IDAuNXJlbTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xcbiAgdHJhbnNmb3JtOiBub25lO1xcbn1cXG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcXG59XFxuXFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XFxufVxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5IHtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcblxcbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcXG59XFxuXFxuLm1vZGFsLWNvbnRlbnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICB3aWR0aDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG4ubW9kYWwtYmFja2Ryb3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDEwNDA7XFxuICB3aWR0aDogMTAwdnc7XFxuICBoZWlnaHQ6IDEwMHZoO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcXG59XFxuLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xcbiAgb3BhY2l0eTogMDtcXG59XFxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG5cXG4ubW9kYWwtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXNocmluazogMDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBwYWRkaW5nOiAxcmVtIDFyZW07XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0wLjVyZW0gLTAuNXJlbSBhdXRvO1xcbn1cXG5cXG4ubW9kYWwtdGl0bGUge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxufVxcblxcbi5tb2RhbC1ib2R5IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgcGFkZGluZzogMXJlbTtcXG59XFxuXFxuLm1vZGFsLWZvb3RlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gIHBhZGRpbmc6IDAuNzVyZW07XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5tb2RhbC1mb290ZXIgPiAqIHtcXG4gIG1hcmdpbjogMC4yNXJlbTtcXG59XFxuXFxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogLTk5OTlweDtcXG4gIHdpZHRoOiA1MHB4O1xcbiAgaGVpZ2h0OiA1MHB4O1xcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAubW9kYWwtZGlhbG9nIHtcXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcXG4gICAgbWFyZ2luOiAxLjc1cmVtIGF1dG87XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSk7XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcXG4gIH1cXG5cXG4gIC5tb2RhbC1zbSB7XFxuICAgIG1heC13aWR0aDogMzAwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLm1vZGFsLWxnLFxcbi5tb2RhbC14bCB7XFxuICAgIG1heC13aWR0aDogODAwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5tb2RhbC14bCB7XFxuICAgIG1heC13aWR0aDogMTE0MHB4O1xcbiAgfVxcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiB7XFxuICB3aWR0aDogMTAwdnc7XFxuICBtYXgtd2lkdGg6IG5vbmU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtYXJnaW46IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1jb250ZW50IHtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1oZWFkZXIge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWJvZHkge1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWZvb3RlciB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG5cXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWhlYWRlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuLnRvb2x0aXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogMTA3MDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWFyZ2luOiAwO1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICB0ZXh0LWFsaWduOiBzdGFydDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRleHQtc2hhZG93OiBub25lO1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbiAgbGluZS1icmVhazogYXV0bztcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBvcGFjaXR5OiAwO1xcbn1cXG4udG9vbHRpcC5zaG93IHtcXG4gIG9wYWNpdHk6IDAuOTtcXG59XFxuLnRvb2x0aXAgLnRvb2x0aXAtYXJyb3cge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMC44cmVtO1xcbiAgaGVpZ2h0OiAwLjRyZW07XFxufVxcbi50b29sdGlwIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtdG9wLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSB7XFxuICBwYWRkaW5nOiAwLjRyZW0gMDtcXG59XFxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdyB7XFxuICBib3R0b206IDA7XFxufVxcbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIHRvcDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwO1xcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtZW5kLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIHtcXG4gIHBhZGRpbmc6IDAgMC40cmVtO1xcbn1cXG4uYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgbGVmdDogMDtcXG4gIHdpZHRoOiAwLjRyZW07XFxuICBoZWlnaHQ6IDAuOHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICByaWdodDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwLjRyZW0gMDtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtYm90dG9tLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSB7XFxuICBwYWRkaW5nOiAwLjRyZW0gMDtcXG59XFxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdyB7XFxuICB0b3A6IDA7XFxufVxcbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIGJvdHRvbTogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtc3RhcnQsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSB7XFxuICBwYWRkaW5nOiAwIDAuNHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdyB7XFxuICByaWdodDogMDtcXG4gIHdpZHRoOiAwLjRyZW07XFxuICBoZWlnaHQ6IDAuOHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgbGVmdDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAgMC40cmVtIDAuNHJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwO1xcbn1cXG5cXG4udG9vbHRpcC1pbm5lciB7XFxuICBtYXgtd2lkdGg6IDIwMHB4O1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ucG9wb3ZlciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB6LWluZGV4OiAxMDYwO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXgtd2lkdGg6IDI3NnB4O1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICB0ZXh0LWFsaWduOiBzdGFydDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRleHQtc2hhZG93OiBub25lO1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbiAgbGluZS1icmVhazogYXV0bztcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcXG59XFxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3cge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMC41cmVtO1xcbn1cXG4ucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICBib3R0b206IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxufVxcbi5icy1wb3BvdmVyLXRvcCA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICBib3R0b206IDA7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLXRvcCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgYm90dG9tOiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XFxufVxcblxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3cge1xcbiAgbGVmdDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG4gIHdpZHRoOiAwLjVyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIGxlZnQ6IDA7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XFxuICBsZWZ0OiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7XFxufVxcblxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIHRvcDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG59XFxuLmJzLXBvcG92ZXItYm90dG9tID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIHRvcDogMDtcXG4gIGJvcmRlci13aWR0aDogMCAwLjVyZW0gMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgdG9wOiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xcbn1cXG4uYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDUwJTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDFyZW07XFxuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XFxufVxcblxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIHJpZ2h0OiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xcbiAgd2lkdGg6IDAuNXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG59XFxuLmJzLXBvcG92ZXItc3RhcnQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIHJpZ2h0OiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgcmlnaHQ6IDFweDtcXG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4ucG9wb3Zlci1oZWFkZXIge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkOGQ4O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG59XFxuLnBvcG92ZXItaGVhZGVyOmVtcHR5IHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5wb3BvdmVyLWJvZHkge1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcblxcbi5jYXJvdXNlbCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcXG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XFxufVxcblxcbi5jYXJvdXNlbC1pbm5lciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5jYXJvdXNlbC1pbm5lcjo6YWZ0ZXIge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjbGVhcjogYm90aDtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XFxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNhcm91c2VsLWl0ZW0ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXFxuLmNhcm91c2VsLWl0ZW0tbmV4dCxcXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4vKiBydGw6YmVnaW46aWdub3JlICovXFxuLmNhcm91c2VsLWl0ZW0tbmV4dDpub3QoLmNhcm91c2VsLWl0ZW0tc3RhcnQpLFxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1lbmQpLFxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xcbn1cXG5cXG4vKiBydGw6ZW5kOmlnbm9yZSAqL1xcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtIHtcXG4gIG9wYWNpdHk6IDA7XFxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xcbiAgdHJhbnNmb3JtOiBub25lO1xcbn1cXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgei1pbmRleDogMTtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gIHotaW5kZXg6IDA7XFxuICBvcGFjaXR5OiAwO1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyAwLjZzO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxcbi5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgei1pbmRleDogMTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICB3aWR0aDogMTUlO1xcbiAgcGFkZGluZzogMDtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZDogbm9uZTtcXG4gIGJvcmRlcjogMDtcXG4gIG9wYWNpdHk6IDAuNTtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5jYXJvdXNlbC1jb250cm9sLXByZXY6aG92ZXIsIC5jYXJvdXNlbC1jb250cm9sLXByZXY6Zm9jdXMsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpob3ZlcixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmZvY3VzIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgb3V0bGluZTogMDtcXG4gIG9wYWNpdHk6IDAuOTtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XFxuICBsZWZ0OiAwO1xcbn1cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcXG4gIHJpZ2h0OiAwO1xcbn1cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAycmVtO1xcbiAgaGVpZ2h0OiAycmVtO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xcbn1cXG5cXG4vKiBydGw6b3B0aW9uczoge1xcbiAgXFxcImF1dG9SZW5hbWVcXFwiOiB0cnVlLFxcbiAgXFxcInN0cmluZ01hcFxcXCI6WyB7XFxuICAgIFxcXCJuYW1lXFxcIiAgICA6IFxcXCJwcmV2LW5leHRcXFwiLFxcbiAgICBcXFwic2VhcmNoXFxcIiAgOiBcXFwicHJldlxcXCIsXFxuICAgIFxcXCJyZXBsYWNlXFxcIiA6IFxcXCJuZXh0XFxcIlxcbiAgfSBdXFxufSAqL1xcbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyM2ZmZiclM2UlM2NwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG5cXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjNmZmYnJTNlJTNjcGF0aCBkPSdNNC42NDYgMS42NDZhLjUuNSAwIDAgMSAuNzA4IDBsNiA2YS41LjUgMCAwIDEgMCAuNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4LS43MDhMMTAuMjkzIDggNC42NDYgMi4zNTRhLjUuNSAwIDAgMSAwLS43MDh6Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcblxcbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDI7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luLXJpZ2h0OiAxNSU7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgbWFyZ2luLWxlZnQ6IDE1JTtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcbi5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICBmbGV4OiAwIDEgYXV0bztcXG4gIHdpZHRoOiAzMHB4O1xcbiAgaGVpZ2h0OiAzcHg7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XFxuICBtYXJnaW4tbGVmdDogM3B4O1xcbiAgdGV4dC1pbmRlbnQ6IC05OTlweDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBvcGFjaXR5OiAwLjU7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZlIHtcXG4gIG9wYWNpdHk6IDE7XFxufVxcblxcbi5jYXJvdXNlbC1jYXB0aW9uIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHJpZ2h0OiAxNSU7XFxuICBib3R0b206IDEuMjVyZW07XFxuICBsZWZ0OiAxNSU7XFxuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xcbiAgZmlsdGVyOiBpbnZlcnQoMSkgZ3JheXNjYWxlKDEwMCk7XFxufVxcbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1pbmRpY2F0b3JzIFtkYXRhLWJzLXRhcmdldF0ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcXG59XFxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNhcHRpb24ge1xcbiAgY29sb3I6ICMwMDA7XFxufVxcblxcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xcbiAgdG8ge1xcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbi5zcGlubmVyLWJvcmRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMnJlbTtcXG4gIGhlaWdodDogMnJlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcXG4gIGJvcmRlcjogMC4yNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiA1MCU7XFxuICBhbmltYXRpb246IDAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWJvcmRlcjtcXG59XFxuXFxuLnNwaW5uZXItYm9yZGVyLXNtIHtcXG4gIHdpZHRoOiAxcmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjJlbTtcXG59XFxuXFxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xcbiAgMCUge1xcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xcbiAgfVxcbiAgNTAlIHtcXG4gICAgb3BhY2l0eTogMTtcXG4gICAgdHJhbnNmb3JtOiBub25lO1xcbiAgfVxcbn1cXG4uc3Bpbm5lci1ncm93IHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAycmVtO1xcbiAgaGVpZ2h0OiAycmVtO1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbiAgb3BhY2l0eTogMDtcXG4gIGFuaW1hdGlvbjogMC43NXMgbGluZWFyIGluZmluaXRlIHNwaW5uZXItZ3JvdztcXG59XFxuXFxuLnNwaW5uZXItZ3Jvdy1zbSB7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG59XFxuXFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5zcGlubmVyLWJvcmRlcixcXG4uc3Bpbm5lci1ncm93IHtcXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xcbiAgfVxcbn1cXG4uY2xlYXJmaXg6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY2xlYXI6IGJvdGg7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuXFxuLmxpbmstcHJpbWFyeSB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG59XFxuLmxpbmstcHJpbWFyeTpob3ZlciwgLmxpbmstcHJpbWFyeTpmb2N1cyB7XFxuICBjb2xvcjogIzBhNThjYTtcXG59XFxuXFxuLmxpbmstc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG4ubGluay1zZWNvbmRhcnk6aG92ZXIsIC5saW5rLXNlY29uZGFyeTpmb2N1cyB7XFxuICBjb2xvcjogIzU2NWU2NDtcXG59XFxuXFxuLmxpbmstc3VjY2VzcyB7XFxuICBjb2xvcjogIzE5ODc1NDtcXG59XFxuLmxpbmstc3VjY2Vzczpob3ZlciwgLmxpbmstc3VjY2Vzczpmb2N1cyB7XFxuICBjb2xvcjogIzE0NmM0MztcXG59XFxuXFxuLmxpbmstaW5mbyB7XFxuICBjb2xvcjogIzBkY2FmMDtcXG59XFxuLmxpbmstaW5mbzpob3ZlciwgLmxpbmstaW5mbzpmb2N1cyB7XFxuICBjb2xvcjogIzNkZDVmMztcXG59XFxuXFxuLmxpbmstd2FybmluZyB7XFxuICBjb2xvcjogI2ZmYzEwNztcXG59XFxuLmxpbmstd2FybmluZzpob3ZlciwgLmxpbmstd2FybmluZzpmb2N1cyB7XFxuICBjb2xvcjogI2ZmY2QzOTtcXG59XFxuXFxuLmxpbmstZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4ubGluay1kYW5nZXI6aG92ZXIsIC5saW5rLWRhbmdlcjpmb2N1cyB7XFxuICBjb2xvcjogI2IwMmEzNztcXG59XFxuXFxuLmxpbmstbGlnaHQge1xcbiAgY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5saW5rLWxpZ2h0OmhvdmVyLCAubGluay1saWdodDpmb2N1cyB7XFxuICBjb2xvcjogI2Y5ZmFmYjtcXG59XFxuXFxuLmxpbmstZGFyayB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG59XFxuLmxpbmstZGFyazpob3ZlciwgLmxpbmstZGFyazpmb2N1cyB7XFxuICBjb2xvcjogIzFhMWUyMTtcXG59XFxuXFxuLnJhdGlvIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4ucmF0aW86OmJlZm9yZSB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmctdG9wOiB2YXIoLS1icy1hc3BlY3QtcmF0aW8pO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcbi5yYXRpbyA+ICoge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbn1cXG5cXG4ucmF0aW8tMXgxIHtcXG4gIC0tYnMtYXNwZWN0LXJhdGlvOiAxMDAlO1xcbn1cXG5cXG4ucmF0aW8tNHgzIHtcXG4gIC0tYnMtYXNwZWN0LXJhdGlvOiBjYWxjKDMgLyA0ICogMTAwJSk7XFxufVxcblxcbi5yYXRpby0xNng5IHtcXG4gIC0tYnMtYXNwZWN0LXJhdGlvOiBjYWxjKDkgLyAxNiAqIDEwMCUpO1xcbn1cXG5cXG4ucmF0aW8tMjF4OSB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogY2FsYyg5IC8gMjEgKiAxMDAlKTtcXG59XFxuXFxuLmZpeGVkLXRvcCB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDMwO1xcbn1cXG5cXG4uZml4ZWQtYm90dG9tIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDEwMzA7XFxufVxcblxcbi5zdGlja3ktdG9wIHtcXG4gIHBvc2l0aW9uOiBzdGlja3k7XFxuICB0b3A6IDA7XFxuICB6LWluZGV4OiAxMDIwO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5zdGlja3ktc20tdG9wIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgdG9wOiAwO1xcbiAgICB6LWluZGV4OiAxMDIwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5zdGlja3ktbWQtdG9wIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgdG9wOiAwO1xcbiAgICB6LWluZGV4OiAxMDIwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5zdGlja3ktbGctdG9wIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgdG9wOiAwO1xcbiAgICB6LWluZGV4OiAxMDIwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuc3RpY2t5LXhsLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLnN0aWNreS14eGwtdG9wIHtcXG4gICAgcG9zaXRpb246IHN0aWNreTtcXG4gICAgdG9wOiAwO1xcbiAgICB6LWluZGV4OiAxMDIwO1xcbiAgfVxcbn1cXG4udmlzdWFsbHktaGlkZGVuLFxcbi52aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcXG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcXG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc3RyZXRjaGVkLWxpbms6OmFmdGVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDE7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG59XFxuXFxuLnRleHQtdHJ1bmNhdGUge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG59XFxuXFxuLmFsaWduLWJhc2VsaW5lIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tdG9wIHtcXG4gIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLW1pZGRsZSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1ib3R0b20ge1xcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tdGV4dC1ib3R0b20ge1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi10ZXh0LXRvcCB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsb2F0LXN0YXJ0IHtcXG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbG9hdC1lbmQge1xcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbG9hdC1ub25lIHtcXG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vdmVyZmxvdy1hdXRvIHtcXG4gIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vdmVyZmxvdy1oaWRkZW4ge1xcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctdmlzaWJsZSB7XFxuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctc2Nyb2xsIHtcXG4gIG92ZXJmbG93OiBzY3JvbGwgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtaW5saW5lIHtcXG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1pbmxpbmUtYmxvY2sge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWJsb2NrIHtcXG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWdyaWQge1xcbiAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC10YWJsZSB7XFxuICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC10YWJsZS1yb3cge1xcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLXRhYmxlLWNlbGwge1xcbiAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1mbGV4IHtcXG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG59XFxuXFxuLmQtaW5saW5lLWZsZXgge1xcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG59XFxuXFxuLmQtbm9uZSB7XFxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zaGFkb3cge1xcbiAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMTUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zaGFkb3ctc20ge1xcbiAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zaGFkb3ctbGcge1xcbiAgYm94LXNoYWRvdzogMCAxcmVtIDNyZW0gcmdiYSgwLCAwLCAwLCAwLjE3NSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnNoYWRvdy1ub25lIHtcXG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLXN0YXRpYyB7XFxuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1yZWxhdGl2ZSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLWFic29sdXRlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tZml4ZWQge1xcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1zdGlja3kge1xcbiAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udG9wLTAge1xcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi50b3AtNTAge1xcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRvcC0xMDAge1xcbiAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3R0b20tMCB7XFxuICBib3R0b206IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvdHRvbS01MCB7XFxuICBib3R0b206IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm90dG9tLTEwMCB7XFxuICBib3R0b206IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0YXJ0LTAge1xcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc3RhcnQtNTAge1xcbiAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zdGFydC0xMDAge1xcbiAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZW5kLTAge1xcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmVuZC01MCB7XFxuICByaWdodDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5lbmQtMTAwIHtcXG4gIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50cmFuc2xhdGUtbWlkZGxlIHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi50cmFuc2xhdGUtbWlkZGxlLXgge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi50cmFuc2xhdGUtbWlkZGxlLXkge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXIge1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTAge1xcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItdG9wIHtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItdG9wLTAge1xcbiAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWVuZCB7XFxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItZW5kLTAge1xcbiAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItYm90dG9tIHtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItYm90dG9tLTAge1xcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXN0YXJ0IHtcXG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXN0YXJ0LTAge1xcbiAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1wcmltYXJ5IHtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXNlY29uZGFyeSB7XFxuICBib3JkZXItY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zdWNjZXNzIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWluZm8ge1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItd2FybmluZyB7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1kYW5nZXIge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItbGlnaHQge1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItZGFyayB7XFxuICBib3JkZXItY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci13aGl0ZSB7XFxuICBib3JkZXItY29sb3I6ICNmZmYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0wIHtcXG4gIGJvcmRlci13aWR0aDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTEge1xcbiAgYm9yZGVyLXdpZHRoOiAxcHggIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0yIHtcXG4gIGJvcmRlci13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMyB7XFxuICBib3JkZXItd2lkdGg6IDNweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTQge1xcbiAgYm9yZGVyLXdpZHRoOiA0cHggIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci01IHtcXG4gIGJvcmRlci13aWR0aDogNXB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LTI1IHtcXG4gIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctNTAge1xcbiAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy03NSB7XFxuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LTEwMCB7XFxuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy1hdXRvIHtcXG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdy0xMDAge1xcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi52dy0xMDAge1xcbiAgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5taW4tdnctMTAwIHtcXG4gIG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtMjUge1xcbiAgaGVpZ2h0OiAyNSUgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtNTAge1xcbiAgaGVpZ2h0OiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtNzUge1xcbiAgaGVpZ2h0OiA3NSUgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtMTAwIHtcXG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaC1hdXRvIHtcXG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWgtMTAwIHtcXG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnZoLTEwMCB7XFxuICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5taW4tdmgtMTAwIHtcXG4gIG1pbi1oZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWZpbGwge1xcbiAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtcm93IHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtY29sdW1uIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtcm93LXJldmVyc2Uge1xcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWNvbHVtbi1yZXZlcnNlIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1ncm93LTAge1xcbiAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWdyb3ctMSB7XFxuICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtc2hyaW5rLTAge1xcbiAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtc2hyaW5rLTEge1xcbiAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtd3JhcCB7XFxuICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtbm93cmFwIHtcXG4gIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXdyYXAtcmV2ZXJzZSB7XFxuICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTAge1xcbiAgZ3JpZC1nYXA6IDAgIWltcG9ydGFudDtcXG4gIGdhcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTEge1xcbiAgZ3JpZC1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTIge1xcbiAgZ3JpZC1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0zIHtcXG4gIGdyaWQtZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC00IHtcXG4gIGdyaWQtZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtNSB7XFxuICBncmlkLWdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1jZW50ZXIge1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWFyb3VuZCB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWV2ZW5seSB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24taXRlbXMtc3RhcnQge1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLWVuZCB7XFxuICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XFxuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1iYXNlbGluZSB7XFxuICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLXN0cmV0Y2gge1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1lbmQge1xcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1iZXR3ZWVuIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtYXJvdW5kIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1zdHJldGNoIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtYXV0byB7XFxuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLXN0YXJ0IHtcXG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtZW5kIHtcXG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWNlbnRlciB7XFxuICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtYmFzZWxpbmUge1xcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XFxuICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci1maXJzdCB7XFxuICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTAge1xcbiAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTEge1xcbiAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTIge1xcbiAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTMge1xcbiAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTQge1xcbiAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTUge1xcbiAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLWxhc3Qge1xcbiAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMCB7XFxuICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMSB7XFxuICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMiB7XFxuICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS0zIHtcXG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS00IHtcXG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTUge1xcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLWF1dG8ge1xcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC0wIHtcXG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTEge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMiB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMyB7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC00IHtcXG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC01IHtcXG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LWF1dG8ge1xcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktMCB7XFxuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0xIHtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTIge1xcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTMge1xcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktNCB7XFxuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktNSB7XFxuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS1hdXRvIHtcXG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTAge1xcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMSB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC0yIHtcXG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMyB7XFxuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC00IHtcXG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtNSB7XFxuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC1hdXRvIHtcXG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTAge1xcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS0xIHtcXG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMiB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMyB7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTQge1xcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTUge1xcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS1hdXRvIHtcXG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMCB7XFxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0xIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTIge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0zIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTQge1xcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi01IHtcXG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLWF1dG8ge1xcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMCB7XFxuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMSB7XFxuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMiB7XFxuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy0zIHtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy00IHtcXG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTUge1xcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLWF1dG8ge1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMCB7XFxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTEge1xcbiAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0yIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0zIHtcXG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtNCB7XFxuICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtNSB7XFxuICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC0wIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTIge1xcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTQge1xcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTAge1xcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0xIHtcXG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0zIHtcXG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktNCB7XFxuICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS01IHtcXG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMCB7XFxuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMSB7XFxuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC0zIHtcXG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC00IHtcXG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTUge1xcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTAge1xcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0wIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0xIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0yIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTMge1xcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTQge1xcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItNSB7XFxuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTEge1xcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0yIHtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0zIHtcXG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTEge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy0yIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjMyNXJlbSArIDAuOXZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtMyB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zcmVtICsgMC42dncpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy00IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtNSB7XFxuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTYge1xcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mc3QtaXRhbGljIHtcXG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnN0LW5vcm1hbCB7XFxuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWxpZ2h0IHtcXG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWxpZ2h0ZXIge1xcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LW5vcm1hbCB7XFxuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ib2xkIHtcXG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWJvbGRlciB7XFxuICBmb250LXdlaWdodDogYm9sZGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWxvd2VyY2FzZSB7XFxuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXVwcGVyY2FzZSB7XFxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWNhcGl0YWxpemUge1xcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtc3RhcnQge1xcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1lbmQge1xcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtY2VudGVyIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMTk4NzU0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWluZm8ge1xcbiAgY29sb3I6ICMwZGNhZjAgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2FybmluZyB7XFxuICBjb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kYW5nZXIge1xcbiAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtbGlnaHQge1xcbiAgY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGFyayB7XFxuICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC13aGl0ZSB7XFxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1ib2R5IHtcXG4gIGNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LW11dGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWJsYWNrLTUwIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2hpdGUtNTAge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1yZXNldCB7XFxuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtMSB7XFxuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtc20ge1xcbiAgbGluZS1oZWlnaHQ6IDEuMjUgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLWJhc2Uge1xcbiAgbGluZS1oZWlnaHQ6IDEuNSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtbGcge1xcbiAgbGluZS1oZWlnaHQ6IDIgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXByaW1hcnkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctc2Vjb25kYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXN1Y2Nlc3Mge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctaW5mbyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy13YXJuaW5nIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWRhbmdlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1saWdodCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1kYXJrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWJvZHkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctd2hpdGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctdHJhbnNwYXJlbnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWdyYWRpZW50IHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWJzLWdyYWRpZW50KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC13cmFwIHtcXG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtbm93cmFwIHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSB7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kZWNvcmF0aW9uLWxpbmUtdGhyb3VnaCB7XFxuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaCAhaW1wb3J0YW50O1xcbn1cXG5cXG4vKiBydGw6YmVnaW46cmVtb3ZlICovXFxuLnRleHQtYnJlYWsge1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XFxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XFxufVxcblxcbi8qIHJ0bDplbmQ6cmVtb3ZlICovXFxuLmZvbnQtbW9ub3NwYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnVzZXItc2VsZWN0LWFsbCB7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBhbGwgIWltcG9ydGFudDtcXG4gIC1tcy11c2VyLXNlbGVjdDogYWxsICFpbXBvcnRhbnQ7XFxuICAgICAgdXNlci1zZWxlY3Q6IGFsbCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udXNlci1zZWxlY3QtYXV0byB7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAtbXMtdXNlci1zZWxlY3Q6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgICB1c2VyLXNlbGVjdDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4udXNlci1zZWxlY3Qtbm9uZSB7XFxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XFxuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmUgIWltcG9ydGFudDtcXG4gICAgICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtbm9uZSB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtYXV0byB7XFxuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZCB7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLTAge1xcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0xIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0yIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtMyB7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtY2lyY2xlIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1waWxsIHtcXG4gIGJvcmRlci1yYWRpdXM6IDUwcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLXRvcCB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1lbmQge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1zdGFydCB7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi52aXNpYmxlIHtcXG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcXG59XFxuXFxuLmludmlzaWJsZSB7XFxuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuZmxvYXQtc20tc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXNtLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXNtLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20taW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20taW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20td3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTAge1xcbiAgICBncmlkLWdhcDogMCAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMSB7XFxuICAgIGdyaWQtZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0yIHtcXG4gICAgZ3JpZC1nYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0zIHtcXG4gICAgZ3JpZC1nYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTQge1xcbiAgICBncmlkLWdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTUge1xcbiAgICBncmlkLWdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tZW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWFyb3VuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLWVuZCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tY2VudGVyIHtcXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1zbS1zdHJldGNoIHtcXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tZW5kIHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtc20tc3RyZXRjaCB7XFxuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTEge1xcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTQge1xcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXNtLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tMCB7XFxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS0zIHtcXG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLWF1dG8ge1xcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tMSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS00IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tMiB7XFxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTUge1xcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tMiB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTUge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXNtLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtc20tZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXNtLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gIC5mbG9hdC1tZC1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbWQtZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtbWQtbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtd3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtMCB7XFxuICAgIGdyaWQtZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC0xIHtcXG4gICAgZ3JpZC1nYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTIge1xcbiAgICBncmlkLWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTMge1xcbiAgICBncmlkLWdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtNCB7XFxuICAgIGdyaWQtZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtNSB7XFxuICAgIGdyaWQtZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1tZC1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmZsb2F0LWxnLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1sZy1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1sZy1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy0wIHtcXG4gICAgZ3JpZC1nYXA6IDAgIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTEge1xcbiAgICBncmlkLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctMiB7XFxuICAgIGdyaWQtZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctMyB7XFxuICAgIGdyaWQtZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy00IHtcXG4gICAgZ3JpZC1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy01IHtcXG4gICAgZ3JpZC1nYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctY2VudGVyIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1ldmVubHkge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1jZW50ZXIge1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLXN0YXJ0IHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctYmV0d2VlbiB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LWxnLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWF1dG8ge1xcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1sZy1jZW50ZXIge1xcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbGctZmlyc3Qge1xcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0yIHtcXG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy01IHtcXG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTEge1xcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctNCB7XFxuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctMiB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTUge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy0wIHtcXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTMge1xcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTAge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctMyB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy0wIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1sZy1zdGFydCB7XFxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LWxnLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1sZy1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmZsb2F0LXhsLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14bC1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14bC1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC0wIHtcXG4gICAgZ3JpZC1nYXA6IDAgIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTEge1xcbiAgICBncmlkLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMiB7XFxuICAgIGdyaWQtZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMyB7XFxuICAgIGdyaWQtZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC00IHtcXG4gICAgZ3JpZC1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC01IHtcXG4gICAgZ3JpZC1nYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtY2VudGVyIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1ldmVubHkge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1jZW50ZXIge1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0YXJ0IHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtYmV0d2VlbiB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLWF1dG8ge1xcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1jZW50ZXIge1xcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtZmlyc3Qge1xcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC0yIHtcXG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC01IHtcXG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14bC1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTEge1xcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtNCB7XFxuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtMiB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTUge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0wIHtcXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTMge1xcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTAge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtMyB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0wIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14bC1zdGFydCB7XFxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXhsLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14bC1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xcbiAgLmZsb2F0LXh4bC1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQteHhsLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXh4bC1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtd3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTAge1xcbiAgICBncmlkLWdhcDogMCAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTEge1xcbiAgICBncmlkLWdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTIge1xcbiAgICBncmlkLWdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0zIHtcXG4gICAgZ3JpZC1nYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC00IHtcXG4gICAgZ3JpZC1nYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtNSB7XFxuICAgIGdyaWQtZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXh4bC1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmZzLTEge1xcbiAgICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZzLTIge1xcbiAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mcy0zIHtcXG4gICAgZm9udC1zaXplOiAxLjc1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZnMtNCB7XFxuICAgIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSBwcmludCB7XFxuICAuZC1wcmludC1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5cXG4vKiMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuY3NzLm1hcCAqL1wiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL2Rpc3QvY3NzL2Jvb3RzdHJhcC5jc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcmVib290LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2ltYWdlcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29udGFpbmVycy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY29udGFpbmVyLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtdmFyaWFudHMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fbGFiZWxzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNvbnRyb2wuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLXNlbGVjdC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19mb3JtLWNoZWNrLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tcmFuZ2Uuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZmxvYXRpbmctbGFiZWxzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19idXR0b25zLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2FjY29yZGlvbi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19icmVhZGNydW1iLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYmFkZ2Uuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2FsZXJ0LnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2xpc3QtZ3JvdXAuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21vZGFsLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJvdXNlbC5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19jb2xvcmVkLWxpbmtzLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcmF0aW8uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19wb3NpdGlvbi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3NcIixcIndlYnBhY2s6Ly9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RyZXRjaGVkLWxpbmsuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtdHJ1bmNhdGUuc2Nzc1wiLFwid2VicGFjazovL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3V0aWxpdGllcy5zY3NzXCIsXCJ3ZWJwYWNrOi8vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIkFBQUEsZ0JBQWdCO0FDQWhCOzs7OztFQUFBO0FDQUE7RUFHSSxrQkFBQTtFQUFBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxrQkFBQTtFQUFBLGlCQUFBO0VBQUEsb0JBQUE7RUFBQSxvQkFBQTtFQUFBLG1CQUFBO0VBQUEsa0JBQUE7RUFBQSxrQkFBQTtFQUFBLGdCQUFBO0VBQUEsa0JBQUE7RUFBQSx1QkFBQTtFQUlBLHFCQUFBO0VBQUEsdUJBQUE7RUFBQSxxQkFBQTtFQUFBLGtCQUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLG1CQUFBO0VBQUEsa0JBQUE7RUFLRixxTkFBQTtFQUNBLHlHQUFBO0VBQ0EseUZBQUE7QUZrQkY7O0FHakJBOzs7RUFHRSxzQkFBQTtBSG9CRjs7QUdQSTtFQUpKO0lBS00sdUJBQUE7RUhXSjtBQUNGOztBR0NBO0VBQ0UsU0FBQTtFQUNBLHNDQ3lXNEI7RUM3SnhCLGVBTEk7RUZyTVIsZ0JDbVg0QjtFRGxYNUIsZ0JDd1g0QjtFRHZYNUIsY0NsQ1M7RURvQ1Qsc0JDN0NTO0VEOENULDhCQUFBO0VBQ0EsNkNBQUE7QUhDRjs7QUdZQTtFQUNFLHFCQUFBO0FIVEY7O0FHa0JBO0VBQ0UsY0FBQTtFQUNBLGNDc1o0QjtFRHJaNUIsOEJBQUE7RUFDQSxTQUFBO0VBQ0EsYUNxWjRCO0FKcGE5Qjs7QUdrQkE7RUFDRSxXQzZRNEI7QUo1UjlCOztBR3lCQTtFQUNFLGFBQUE7RUFDQSxxQkM2VjRCO0VEMVY1QixnQkM2VjRCO0VENVY1QixnQkM2VjRCO0FKclg5Qjs7QUc0QkE7RUVvSlEsaUNBQUE7QUw1S1I7QUtVSTtFRmNKO0lFMkpRLGlCQUFBO0VML0tOO0FBQ0Y7O0FHd0JBO0VFK0lRLGlDQUFBO0FMbktSO0FLQ0k7RUZtQko7SUVzSlEsZUFBQTtFTHRLTjtBQUNGOztBR29CQTtFRTBJUSwrQkFBQTtBTDFKUjtBS1JJO0VGd0JKO0lFaUpRLGtCQUFBO0VMN0pOO0FBQ0Y7O0FHZ0JBO0VFcUlRLGlDQUFBO0FMakpSO0FLakJJO0VGNkJKO0lFNElRLGlCQUFBO0VMcEpOO0FBQ0Y7O0FHWUE7RUU0SE0sa0JBTEk7QUwvSFY7O0FHYUE7RUV1SE0sZUFMSTtBTDNIVjs7QUdvQkE7RUFDRSxhQUFBO0VBQ0EsbUJDd0owQjtBSnpLNUI7O0FHNEJBOztFQUVFLDBCQUFBO0VBQ0EsaUNBQUE7RUFDQSxZQUFBO0VBQ0EsOEJBQUE7QUh6QkY7O0FHK0JBO0VBQ0UsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0FINUJGOztBR2tDQTs7RUFFRSxrQkFBQTtBSC9CRjs7QUdrQ0E7OztFQUdFLGFBQUE7RUFDQSxtQkFBQTtBSC9CRjs7QUdrQ0E7Ozs7RUFJRSxnQkFBQTtBSC9CRjs7QUdrQ0E7RUFDRSxnQkNpTzRCO0FKaFE5Qjs7QUdvQ0E7RUFDRSxxQkFBQTtFQUNBLGNBQUE7QUhqQ0Y7O0FHdUNBO0VBQ0UsZ0JBQUE7QUhwQ0Y7O0FHNENBOztFQUVFLG1CQzBNNEI7QUpuUDlCOztBR2lEQTtFRXVCTSxrQkFMSTtBTC9EVjs7QUdvREE7RUFDRSxjQ2tRNEI7RURqUTVCLHlCQ3lRNEI7QUoxVDlCOztBRzBEQTs7RUFFRSxrQkFBQTtFRUdJLGlCQUxJO0VGSVIsY0FBQTtFQUNBLHdCQUFBO0FIdkRGOztBRzBEQTtFQUFNLGVBQUE7QUh0RE47O0FHdURBO0VBQU0sV0FBQTtBSG5ETjs7QUd3REE7RUFDRSxjQy9OUTtFRGdPUiwwQkN1QndDO0FKNUUxQztBR3VERTtFQUNFLGNDc0JzQztBSjNFMUM7O0FHZ0VFO0VBRUUsY0FBQTtFQUNBLHFCQUFBO0FIOURKOztBR3FFQTs7OztFQUlFLHFDQ3VINEI7RUM5SnhCLGNBTEk7RUY4Q1IsK0JBQUE7RUFDQSwyQkFBQTtBSGxFRjs7QUd5RUE7RUFDRSxjQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtFRXJESSxrQkFMSTtBTFhWO0FHMEVFO0VFMURJLGtCQUxJO0VGaUVOLGNBQUE7RUFDQSxrQkFBQTtBSHhFSjs7QUc0RUE7RUVqRU0sa0JBTEk7RUZ3RVIsY0NyUlE7RURzUlIscUJBQUE7QUh6RUY7QUc0RUU7RUFDRSxjQUFBO0FIMUVKOztBRzhFQTtFQUNFLHNCQUFBO0VFN0VJLGtCQUxJO0VGb0ZSLFdDbFVTO0VEbVVULHlCQzFUUztFRUNQLHFCQUFBO0FOK09KO0FHNkVFO0VBQ0UsVUFBQTtFRXBGRSxjQUxJO0VGMkZOLGdCQ29GMEI7QUovSjlCOztBR29GQTtFQUNFLGdCQUFBO0FIakZGOztBR3VGQTs7RUFFRSxzQkFBQTtBSHBGRjs7QUc0RkE7RUFDRSxvQkFBQTtFQUNBLHlCQUFBO0FIekZGOztBRzRGQTtFQUNFLG1CQzZJNEI7RUQ1STVCLHNCQzRJNEI7RUQzSTVCLGNDcldTO0VEc1dULGdCQUFBO0FIekZGOztBR2dHQTtFQUVFLG1CQUFBO0VBQ0EsZ0NBQUE7QUg5RkY7O0FHaUdBOzs7Ozs7RUFNRSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtBSDlGRjs7QUdzR0E7RUFDRSxxQkFBQTtBSG5HRjs7QUd5R0E7RUFFRSxnQkFBQTtBSHZHRjs7QUcrR0E7RUFDRSxVQUFBO0FINUdGOztBR2lIQTs7Ozs7RUFLRSxTQUFBO0VBQ0Esb0JBQUE7RUVuTEksa0JBTEk7RUYwTFIsb0JBQUE7QUg5R0Y7O0FHbUhBOztFQUVFLG9CQUFBO0FIaEhGOztBR3NIQTtFQUNFLGVBQUE7QUhuSEY7O0FHeUhBO0VBQ0UsaUJBQUE7QUh0SEY7O0FHNEhBO0VBQ0UsYUFBQTtBSHpIRjs7QUdpSUE7Ozs7RUFJRSwwQkFBQTtBSDlIRjtBR2lJSTs7OztFQUNFLGVBQUE7QUg1SE47O0FHbUlBO0VBQ0UsVUFBQTtFQUNBLGtCQUFBO0FIaElGOztBR3FJQTtFQUNFLGdCQUFBO0FIbElGOztBRzRJQTtFQUNFLFlBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7QUh6SUY7O0FHaUpBO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0EscUJDM0I0QjtFQzNPdEIsaUNBQUE7RUZ5UU4sb0JBQUE7QUgvSUY7QUs1Ukk7RUZvYUo7SUUzUFEsaUJBQUE7RUx1SE47QUFDRjtBRzRJRTtFQUNFLFdBQUE7QUgxSUo7O0FHaUpBOzs7Ozs7O0VBT0UsVUFBQTtBSDlJRjs7QUdpSkE7RUFDRSxZQUFBO0FIOUlGOztBR3VKQTtFQUNFLG9CQUFBO0VBQ0EsNkJBQUE7QUhwSkY7O0FHNEpBOzs7Ozs7O0NBQUE7QUFXQTtFQUNFLHdCQUFBO0FINUpGOztBR2lLQTtFQUNFLFVBQUE7QUg5SkY7O0FHcUtBO0VBQ0UsYUFBQTtBSGxLRjs7QUd3S0E7RUFDRSxhQUFBO0VBQ0EsMEJBQUE7QUhyS0Y7O0FHMEtBO0VBQ0UscUJBQUE7QUh2S0Y7O0FHNEtBO0VBQ0UsU0FBQTtBSHpLRjs7QUdnTEE7RUFDRSxrQkFBQTtFQUNBLGVBQUE7QUg3S0Y7O0FHcUxBO0VBQ0Usd0JBQUE7QUhsTEY7O0FHMExBO0VBQ0Usd0JBQUE7QUh2TEY7O0FPdGFBO0VGK05NLGtCQUxJO0VFeE5SLGdCSHdiNEI7QUpmOUI7O0FPcGFFO0VGNE5NLGlDQUFBO0VFMU5KLGdCSDRha0I7RUczYWxCLGdCSDhaMEI7QUpTOUI7QUtoWEk7RUUxREY7SUZtT00sZUFBQTtFTDJNTjtBQUNGOztBTy9hRTtFRjROTSxpQ0FBQTtFRTFOSixnQkg0YWtCO0VHM2FsQixnQkg4WjBCO0FKb0I5QjtBSzNYSTtFRTFERjtJRm1PTSxpQkFBQTtFTHNOTjtBQUNGOztBTzFiRTtFRjROTSxpQ0FBQTtFRTFOSixnQkg0YWtCO0VHM2FsQixnQkg4WjBCO0FKK0I5QjtBS3RZSTtFRTFERjtJRm1PTSxlQUFBO0VMaU9OO0FBQ0Y7O0FPcmNFO0VGNE5NLGlDQUFBO0VFMU5KLGdCSDRha0I7RUczYWxCLGdCSDhaMEI7QUowQzlCO0FLalpJO0VFMURGO0lGbU9NLGlCQUFBO0VMNE9OO0FBQ0Y7O0FPaGRFO0VGNE5NLGlDQUFBO0VFMU5KLGdCSDRha0I7RUczYWxCLGdCSDhaMEI7QUpxRDlCO0FLNVpJO0VFMURGO0lGbU9NLGVBQUE7RUx1UE47QUFDRjs7QU8zZEU7RUY0Tk0saUNBQUE7RUUxTkosZ0JINGFrQjtFRzNhbEIsZ0JIOFowQjtBSmdFOUI7QUt2YUk7RUUxREY7SUZtT00saUJBQUE7RUxrUU47QUFDRjs7QU9oZEE7RUNyREUsZUFBQTtFQUNBLGdCQUFBO0FSeWdCRjs7QU9oZEE7RUMxREUsZUFBQTtFQUNBLGdCQUFBO0FSOGdCRjs7QU9sZEE7RUFDRSxxQkFBQTtBUHFkRjtBT25kRTtFQUNFLG9CSCthMEI7QUpzQzlCOztBTzNjQTtFRjRLTSxrQkFMSTtFRXJLUix5QkFBQTtBUDhjRjs7QU8xY0E7RUFDRSxtQkhrS087RUNHSCxrQkFMSTtBTDhTVjtBTzNjRTtFQUNFLGdCQUFBO0FQNmNKOztBT3pjQTtFQUNFLGlCQUFBO0VBQ0EsbUJId0pPO0VDR0gsa0JBTEk7RUVwSlIsY0hwRlM7QUpnaUJYO0FPMWNFO0VBQ0UsYUFBQTtBUDRjSjs7QVMxaUJBO0VDSUUsZUFBQTtFQUdBLFlBQUE7QVZ3aUJGOztBU3ppQkE7RUFDRSxnQkx3dENrQztFS3Z0Q2xDLHNCTFBTO0VLUVQseUJBQUE7RUhFRSxzQkFBQTtFSVBGLGVBQUE7RUFHQSxZQUFBO0FWaWpCRjs7QVNuaUJBO0VBRUUscUJBQUE7QVRxaUJGOztBU2xpQkE7RUFDRSxxQkFBQTtFQUNBLGNBQUE7QVRxaUJGOztBU2xpQkE7RUpxTk0sa0JBTEk7RUk5TVIsY0wxQlM7QUorakJYOztBV3ZrQkU7Ozs7Ozs7RUNIQSxXQUFBO0VBQ0EsMENBQUE7RUFDQSx5Q0FBQTtFQUNBLGtCQUFB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RUFDQSxXQUFBO0VBQ0EseUJBQUE7RWZvUEksZUFMSTtFZTVPUixnQmhCMFo0QjtFZ0J6WjVCLGdCaEIrWjRCO0VnQjlaNUIsY2hCS1M7RWdCSlQsc0JoQkxTO0VnQk1ULDRCQUFBO0VBQ0EseUJBQUE7RUFDQSx3QkFBQTtFQUFBLHFCQUFBO0VBQUEsZ0JBQUE7RWRFRSxzQkFBQTtFZUZFLHdFRE1KO0FwQjBsRUY7QXFCNWxFTTtFRGhCTjtJQ2lCUSxnQkFBQTtFckIrbEVOO0FBQ0Y7QW9CN2xFRTtFQUNFLGdCQUFBO0FwQitsRUo7QW9CN2xFSTtFQUNFLGVBQUE7QXBCK2xFTjtBb0IxbEVFO0VBQ0UsY2hCakJPO0VnQmtCUCxzQmhCM0JPO0VnQjRCUCxxQmhCaW9Cb0M7RWdCaG9CcEMsVUFBQTtFQUtFLGtEaEJraEIwQjtBSnNrRGhDO0FvQmpsRUU7RUFFRSxhQUFBO0FwQmtsRUo7QW9COWtFRTtFQUNFLGNoQjFDTztFZ0I0Q1AsVUFBQTtBcEIra0VKO0FvQmxsRUU7RUFDRSxjaEIxQ087RWdCNENQLFVBQUE7QXBCK2tFSjtBb0J2a0VFO0VBRUUseUJoQjFETztFZ0I2RFAsVUFBQTtBcEJza0VKO0FvQmprRUU7RUFDRSx5QkFBQTtFQUNBLDBCQUFBO0VBQ0EsMEJoQnFlMEI7RWdCcGUxQixjaEIvRE87RWtCYlQseUJsQk1TO0VnQndFUCxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsNEJoQjhRMEI7RWdCN1ExQixnQkFBQTtFQ3ZFRSxxSUR3RUY7QXBCbWtFSjtBcUJ2b0VNO0VEd0RKO0lDdkRNLGdCQUFBO0VyQjBvRU47QUFDRjtBb0Jwa0VFO0VBQ0UseUJoQitzQjhCO0FKdTNDbEM7QW9CbmtFRTtFQUNFLHlCQUFBO0VBQ0EsMEJBQUE7RUFDQSwwQmhCaWQwQjtFZ0JoZDFCLGNoQm5GTztFa0JiVCx5QmxCTVM7RWdCNEZQLG9CQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSw0QmhCMFAwQjtFZ0J6UDFCLGdCQUFBO0VDM0ZFLDZJRDRGRjtFQzVGRSxxSUQ0RkY7QXBCcWtFSjtBcUI3cEVNO0VENEVKO0lDM0VNLHdCQUFBO0lBQUEsZ0JBQUE7RXJCZ3FFTjtBQUNGO0FvQnZrRUU7RUFDRSx5QmhCNHJCOEI7QUo2NENsQzs7QW9CaGtFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCaEI0UzRCO0VnQjNTNUIsY2hCOUdTO0VnQitHVCw2QkFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QXBCbWtFRjtBb0Jqa0VFO0VBRUUsZ0JBQUE7RUFDQSxlQUFBO0FwQmtrRUo7O0FvQnZqRUE7RUFDRSxzQ2hCaWlCc0M7RWdCaGlCdEMsdUJBQUE7RWZ1R0ksbUJBTEk7RUNwT04scUJBQUE7QU44ckVKO0FvQnZqRUU7RUFDRSx1QkFBQTtFQUNBLHdCQUFBO0VBQ0EseUJoQm1hMEI7QUpzcEQ5QjtBb0J0akVFO0VBQ0UsdUJBQUE7RUFDQSx3QkFBQTtFQUNBLHlCaEI2WjBCO0FKMnBEOUI7O0FvQnBqRUE7RUFDRSxvQ2hCOGdCc0M7RWdCN2dCdEMsb0JBQUE7RWZtRkksa0JBTEk7RUNwT04scUJBQUE7QU4rc0VKO0FvQnBqRUU7RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsdUJoQm1aMEI7QUptcUQ5QjtBb0JuakVFO0VBQ0Usb0JBQUE7RUFDQSxxQkFBQTtFQUNBLHVCaEI2WTBCO0FKd3FEOUI7O0FvQjdpRUU7RUFDRSx1Q2hCb2ZvQztBSjRqRHhDO0FvQjdpRUU7RUFDRSxzQ2hCaWZvQztBSjhqRHhDO0FvQjVpRUU7RUFDRSxvQ2hCOGVvQztBSmdrRHhDOztBb0J6aUVBO0VBQ0UsZUFBQTtFQUNBLFlBQUE7RUFDQSxpQmhCb1c0QjtBSndzRDlCO0FvQjFpRUU7RUFDRSxlQUFBO0FwQjRpRUo7QW9CemlFRTtFQUNFLGFBQUE7RWRwTUEsc0JBQUE7QU5ndkVKO0FvQnhpRUU7RUFDRSxhQUFBO0Vkek1BLHNCQUFBO0FOb3ZFSjs7QXVCandFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsMENBQUE7RWxCbVBJLGVBTEk7RWtCM09SLGdCbkJ5WjRCO0VtQnhaNUIsZ0JuQjhaNEI7RW1CN1o1QixjbkJJUztFbUJIVCxzQm5CTlM7RW1CT1QsaVBBQUE7RUFDQSw0QkFBQTtFQUNBLHlDbkI0dUJrQztFbUIzdUJsQywwQm5CNHVCa0M7RW1CM3VCbEMseUJBQUE7RWpCREUsc0JBQUE7RWlCSUYsd0JBQUE7RUFBQSxxQkFBQTtFQUFBLGdCQUFBO0F2Qmt3RUY7QXVCaHdFRTtFQUNFLHFCbkI0b0JvQztFbUIzb0JwQyxVQUFBO0VBS0Usa0RuQjh1QjRCO0FKZ2hEbEM7QXVCMXZFRTtFQUVFLHNCbkIrZ0IwQjtFbUI5Z0IxQixzQkFBQTtBdkIydkVKO0F1Qnh2RUU7RUFDRSxjbkI1Qk87RW1CNkJQLHlCbkJqQ087QUoyeEVYO0F1QnJ2RUU7RUFDRSxrQkFBQTtFQUNBLDBCQUFBO0F2QnV2RUo7O0F1Qm52RUE7RUFDRSxvQm5CdWdCNEI7RW1CdGdCNUIsdUJuQnNnQjRCO0VtQnJnQjVCLG9CbkJzZ0I0QjtFQ3BVeEIsbUJBTEk7QUwwakVWOztBdUJudkVBO0VBQ0UsbUJuQm9nQjRCO0VtQm5nQjVCLHNCbkJtZ0I0QjtFbUJsZ0I1QixrQm5CbWdCNEI7RUN4VXhCLGtCQUxJO0FMaWtFVjs7QXdCbnpFQTtFQUNFLGNBQUE7RUFDQSxrQnBCcXJCd0M7RW9CcHJCeEMsbUJwQnFyQndDO0VvQnByQnhDLHVCcEJxckJ3QztBSmlvRDFDO0F3QnB6RUU7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7QXhCc3pFSjs7QXdCbHpFQTtFQUNFLFVwQnlxQndDO0VvQnhxQnhDLFdwQndxQndDO0VvQnZxQnhDLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQnBCYlM7RW9CY1QsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLHdCQUFBO0VBQ0EscUNwQjRxQndDO0VvQjNxQnhDLHdCQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTtFQUNBLGlDQUFBO0VBQUEsbUJBQUE7QXhCcXpFRjtBd0JsekVFO0VsQlpFLHFCQUFBO0FOaTBFSjtBd0JqekVFO0VBRUUsa0JwQm1xQnNDO0FKK29EMUM7QXdCL3lFRTtFQUNFLHVCcEIwcEJzQztBSnVwRDFDO0F3Qjl5RUU7RUFDRSxxQnBCeW5Cb0M7RW9CeG5CcEMsVUFBQTtFQUNBLGtEcEI4Z0I0QjtBSmt5RGhDO0F3Qjd5RUU7RUFDRSx5QnBCWk07RW9CYU4scUJwQmJNO0FKNHpFVjtBd0I3eUVJO0VBSUksK09BQUE7QXhCNHlFUjtBd0J4eUVJO0VBSUksdUpBQUE7QXhCdXlFUjtBd0JseUVFO0VBQ0UseUJwQmpDTTtFb0JrQ04scUJwQmxDTTtFb0J1Q0oseU9BQUE7QXhCZ3lFTjtBd0I1eEVFO0VBQ0Usb0JBQUE7RUFDQSxZQUFBO0VBQ0EsWXBCa29CdUM7QUo0cEQzQztBd0J2eEVJO0VBQ0UsWXBCMG5CcUM7QUorcEQzQzs7QXdCM3dFQTtFQUNFLG1CcEJpbkJnQztBSjZwRGxDO0F3QjV3RUU7RUFDRSxVcEI2bUI4QjtFb0I1bUI5QixtQkFBQTtFQUNBLHdLQUFBO0VBQ0EsZ0NBQUE7RWxCL0ZBLGtCQUFBO0VlRkUsaURHbUdGO0F4Qjh3RUo7QXFCNzJFTTtFR3lGSjtJSHhGTSxnQkFBQTtFckJnM0VOO0FBQ0Y7QXdCanhFSTtFQUNFLDBKQUFBO0F4Qm14RU47QXdCaHhFSTtFQUNFLGlDcEI0bUI0QjtFb0J2bUIxQix1SkFBQTtBeEI4d0VSOztBd0J4d0VBO0VBQ0UscUJBQUE7RUFDQSxrQnBCaW1CZ0M7QUowcURsQzs7QXdCeHdFQTtFQUNFLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxvQkFBQTtBeEIyd0VGO0F3QnZ3RUk7RUFDRSxvQkFBQTtFQUNBLFlBQUE7RUFDQSxhcEI4Y3dCO0FKMnpEOUI7O0F5QnY1RUE7RUFDRSxXQUFBO0VBQ0EsY0FBQTtFQUNBLFVBQUE7RUFDQSw2QkFBQTtFQUNBLHdCQUFBO0VBQUEscUJBQUE7RUFBQSxnQkFBQTtBekIwNUVGO0F5Qng1RUU7RUFDRSxVQUFBO0F6QjA1RUo7QXlCdDVFSTtFQUEwQixrRXJCa3hCYTtBSnVvRDNDO0F5Qng1RUk7RUFBMEIsa0VyQml4QmE7QUowb0QzQztBeUJ4NUVFO0VBQ0UsU0FBQTtBekIwNUVKO0F5QnY1RUU7RUFDRSxXckJtd0J1QztFcUJsd0J2QyxZckJrd0J1QztFcUJqd0J2QyxvQkFBQTtFSHpCRix5QmxCa0NRO0VxQlBOLFNyQmt3QnVDO0VFL3dCdkMsbUJBQUE7RWVGRSxvSElrQkY7RUpsQkUsNEdJa0JGO0VBQ0Esd0JBQUE7RUFBQSxnQkFBQTtBekJ3NUVKO0FxQnY2RU07RUlNSjtJSkxNLHdCQUFBO0lBQUEsZ0JBQUE7RXJCMDZFTjtBQUNGO0F5QjM1RUk7RUhqQ0YseUJsQmt5QnlDO0FKNnBEM0M7QXlCejVFRTtFQUNFLFdyQjR1QjhCO0VxQjN1QjlCLGNyQjR1QjhCO0VxQjN1QjlCLGtCQUFBO0VBQ0EsZXJCMnVCOEI7RXFCMXVCOUIseUJyQnBDTztFcUJxQ1AseUJBQUE7RW5COUJBLG1CQUFBO0FOMDdFSjtBeUJ2NUVFO0VBQ0UsV3JCd3VCdUM7RXFCdnVCdkMsWXJCdXVCdUM7RWtCMXhCekMseUJsQmtDUTtFcUJtQk4sU3JCd3VCdUM7RUUvd0J2QyxtQkFBQTtFZUZFLGlISTRDRjtFSjVDRSw0R0k0Q0Y7RUFDQSxxQkFBQTtFQUFBLGdCQUFBO0F6Qnc1RUo7QXFCajhFTTtFSWlDSjtJSmhDTSxxQkFBQTtJQUFBLGdCQUFBO0VyQm84RU47QUFDRjtBeUIzNUVJO0VIM0RGLHlCbEJreUJ5QztBSnVyRDNDO0F5Qno1RUU7RUFDRSxXckJrdEI4QjtFcUJqdEI5QixjckJrdEI4QjtFcUJqdEI5QixrQkFBQTtFQUNBLGVyQml0QjhCO0VxQmh0QjlCLHlCckI5RE87RXFCK0RQLHlCQUFBO0VuQnhEQSxtQkFBQTtBTm85RUo7QXlCdjVFRTtFQUNFLG9CQUFBO0F6Qnk1RUo7QXlCdjVFSTtFQUNFLHlCckJ0RUs7QUorOUVYO0F5QnQ1RUk7RUFDRSx5QnJCMUVLO0FKaytFWDs7QTBCLytFQTtFQUNFLGtCQUFBO0ExQmsvRUY7QTBCaC9FRTs7RUFFRSwwQnRCeXlCOEI7RXNCeHlCOUIscUJBQUE7QTFCay9FSjtBMEIvK0VFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLG9CQUFBO0VBQ0EsNkJBQUE7RUFDQSxxQkFBQTtFTERFLGdFS0VGO0ExQmkvRUo7QXFCLytFTTtFS1hKO0lMWU0sZ0JBQUE7RXJCay9FTjtBQUNGO0EwQmovRUk7RUFDRSxrQkFBQTtBMUJtL0VOO0EwQnAvRUk7RUFDRSxrQkFBQTtBMUJtL0VOO0EwQmgvRUk7RUFFRSxxQnRCb3hCNEI7RXNCbnhCNUIsd0J0Qm94QjRCO0FKNnREbEM7QTBCcC9FSTtFQUVFLHFCdEJveEI0QjtFc0JueEI1Qix3QnRCb3hCNEI7QUo2dERsQztBMEI5K0VJO0VBQ0UscUJ0Qit3QjRCO0VzQjl3QjVCLHdCdEIrd0I0QjtBSml1RGxDO0EwQjUrRUU7RUFDRSxxQnRCeXdCOEI7RXNCeHdCOUIsd0J0Qnl3QjhCO0FKcXVEbEM7QTBCeCtFSTtFQUNFLGF0Qm13QjRCO0VzQmx3QjVCLDhEdEJtd0I0QjtBSnl1RGxDO0EwQjkrRUk7OztFQUNFLGF0Qm13QjRCO0VzQmx3QjVCLDhEdEJtd0I0QjtBSnl1RGxDO0EwQnYrRUk7RUFDRSxhdEI0dkI0QjtFc0IzdkI1Qiw4RHRCNHZCNEI7QUo2dURsQzs7QTJCN2hGQTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLFdBQUE7QTNCZ2lGRjtBMkI5aEZFOztFQUVFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0EzQmdpRko7QTJCNWhGRTs7RUFFRSxVQUFBO0EzQjhoRko7QTJCeGhGRTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtBM0IwaEZKO0EyQnhoRkk7RUFDRSxVQUFBO0EzQjBoRk47O0EyQi9nRkE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFdEI0TUksZUFMSTtFc0JyTVIsZ0J2Qm1YNEI7RXVCbFg1QixnQnZCd1g0QjtFdUJ2WDVCLGN2QmxDUztFdUJtQ1Qsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHlCdkI1Q1M7RXVCNkNULHlCQUFBO0VyQnJDRSxzQkFBQTtBTndqRko7O0EyQnpnRkE7Ozs7RUFJRSxvQkFBQTtFdEJzTEksa0JBTEk7RUNwT04scUJBQUE7QU5pa0ZKOztBMkJ6Z0ZBOzs7O0VBSUUsdUJBQUE7RXRCNktJLG1CQUxJO0VDcE9OLHFCQUFBO0FOMGtGSjs7QTJCemdGQTs7RUFFRSxtQkFBQTtBM0I0Z0ZGOztBMkIvL0VJOztFckJoRUEsMEJBQUE7RUFDQSw2QkFBQTtBTm9rRko7QTJCOS9FSTs7RXJCdkVBLDBCQUFBO0VBQ0EsNkJBQUE7QU55a0ZKO0EyQngvRUU7RUFDRSxpQkFBQTtFckJyRUEseUJBQUE7RUFDQSw0QkFBQTtBTmdrRko7O0E0QjFsRkU7RUFDRSxhQUFBO0VBQ0EsV0FBQTtFQUNBLG1CeEJrbUJvQztFQ2pZbEMsa0JBTEk7RXVCek5OLGN4Qnd5QnFCO0FKb3pEekI7O0E0QnpsRkU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0V2Qm9ORSxtQkFMSTtFdUI1TU4sV0F2QmM7RUF3QmQsd0NBdkJpQjtFdEJGakIsc0JBQUE7QU5xbkZKOztBNEJ2bEZJOzs7O0VBRUUsY0FBQTtBNUI0bEZOOztBNEIxb0ZJO0VBb0RFLHFCeEI2d0JtQjtFd0Ixd0JqQixvQ3hCb25CZ0M7RXdCbm5CaEMsNFBBQUE7RUFDQSw0QkFBQTtFQUNBLDJEQUFBO0VBQ0EsZ0VBQUE7QTVCd2xGUjtBNEJybEZNO0VBQ0UscUJ4Qmt3QmlCO0V3Qmp3QmpCLGlEQS9DYTtBNUJzb0ZyQjs7QTRCdnBGSTtFQXlFSSxvQ3hCa21CZ0M7RXdCam1CaEMsa0ZBQUE7QTVCa2xGUjs7QTRCNXBGSTtFQWlGRSxxQnhCZ3ZCbUI7RXdCN3VCakIsdUJ4QjBxQmdDO0V3QnpxQmhDLDZkQUFBO0VBQ0EsK0RBQUE7RUFDQSwyRUFBQTtBNUI2a0ZSO0E0QjFrRk07RUFDRSxxQnhCc3VCaUI7RXdCcnVCakIsaURBM0VhO0E1QnVwRnJCOztBNEJ4cUZJO0VBbUdFLHFCeEI4dEJtQjtBSjIyRHpCO0E0QnZrRk07RUFDRSx5QnhCMnRCaUI7QUo4MkR6QjtBNEJ0a0ZNO0VBQ0UsaURBekZhO0E1QmlxRnJCO0E0QnJrRk07RUFDRSxjeEJtdEJpQjtBSm8zRHpCOztBNEJsa0ZJO0VBQ0Usa0JBQUE7QTVCcWtGTjs7QTRCdHFGRTtFQUNFLGFBQUE7RUFDQSxXQUFBO0VBQ0EsbUJ4QmttQm9DO0VDallsQyxrQkFMSTtFdUJ6Tk4sY3hCd3lCcUI7QUpnNER6Qjs7QTRCcnFGRTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0Esa0JBQUE7RXZCb05FLG1CQUxJO0V1QjVNTixXQXZCYztFQXdCZCx3Q0F2QmlCO0V0QkZqQixzQkFBQTtBTmlzRko7O0E0Qm5xRkk7Ozs7RUFFRSxjQUFBO0E1QndxRk47O0E0QnR0Rkk7RUFvREUscUJ4QjZ3Qm1CO0V3QjF3QmpCLG9DeEJvbkJnQztFd0JubkJoQyw0VUFBQTtFQUNBLDRCQUFBO0VBQ0EsMkRBQUE7RUFDQSxnRUFBQTtBNUJvcUZSO0E0QmpxRk07RUFDRSxxQnhCa3dCaUI7RXdCandCakIsaURBL0NhO0E1Qmt0RnJCOztBNEJudUZJO0VBeUVJLG9DeEJrbUJnQztFd0JqbUJoQyxrRkFBQTtBNUI4cEZSOztBNEJ4dUZJO0VBaUZFLHFCeEJndkJtQjtFd0I3dUJqQix1QnhCMHFCZ0M7RXdCenFCaEMsNmlCQUFBO0VBQ0EsK0RBQUE7RUFDQSwyRUFBQTtBNUJ5cEZSO0E0QnRwRk07RUFDRSxxQnhCc3VCaUI7RXdCcnVCakIsaURBM0VhO0E1Qm11RnJCOztBNEJwdkZJO0VBbUdFLHFCeEI4dEJtQjtBSnU3RHpCO0E0Qm5wRk07RUFDRSx5QnhCMnRCaUI7QUowN0R6QjtBNEJscEZNO0VBQ0UsaURBekZhO0E1QjZ1RnJCO0E0QmpwRk07RUFDRSxjeEJtdEJpQjtBSmc4RHpCOztBNEI5b0ZJO0VBQ0Usa0JBQUE7QTVCaXBGTjs7QTZCcndGQTtFQUNFLHFCQUFBO0VBRUEsZ0J6QjZaNEI7RXlCNVo1QixnQnpCa2E0QjtFeUJqYTVCLGN6QlFTO0V5QlBULGtCQUFBO0VBQ0EscUJBQUE7RUFFQSxzQkFBQTtFQUNBLGVBQUE7RUFDQSx5QkFBQTtFQUFBLHFCQUFBO01BQUEsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VDMEdBLHlCQUFBO0V6QmdJSSxlQUxJO0VDcE9OLHNCQUFBO0VlRkUscUlRR0o7QTdCd3dGRjtBcUJ2d0ZNO0VRaEJOO0lSaUJRLGdCQUFBO0VyQjB3Rk47QUFDRjtBNkIzd0ZFO0VBQ0UsY3pCTE87QUpreEZYO0E2Qnp3RkU7RUFFRSxVQUFBO0VBQ0Esa0R6QitoQjRCO0FKMnVFaEM7QTZCNXZGRTtFQUdFLG9CQUFBO0VBQ0EsYXpCbWpCMEI7QUp5c0U5Qjs7QTZCanZGRTtFQ3ZDQSxXQVhRO0VSSlIseUJsQjRFYTtFMEIzRGIscUIxQjJEYTtBSml1RmY7QThCenhGRTtFQUNFLFdBZFk7RVJQZCx5QlFLbUI7RUFrQmpCLHFCQWpCYTtBOUI0eUZqQjtBOEJ4eEZFO0VBRUUsV0FyQlk7RVJQZCx5QlFLbUI7RUF5QmpCLHFCQXhCYTtFQTZCWCxpREFBQTtBOUJxeEZOO0E4Qmp4RkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCb3pGbEI7QThCM3dGSTtFQUtJLGlEQUFBO0E5Qnl3RlI7QThCcHdGRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJhVztFMEJWWCxxQjFCVVc7QUp5dkZmOztBNkIvd0ZFO0VDdkNBLFdBWFE7RVJKUix5QmxCNEVhO0UwQjNEYixxQjFCMkRhO0FKK3ZGZjtBOEJ2ekZFO0VBQ0UsV0FkWTtFUlBkLHlCUUttQjtFQWtCakIscUJBakJhO0E5QjAwRmpCO0E4QnR6RkU7RUFFRSxXQXJCWTtFUlBkLHlCUUttQjtFQXlCakIscUJBeEJhO0VBNkJYLGtEQUFBO0E5Qm16Rk47QThCL3lGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJrMUZsQjtBOEJ6eUZJO0VBS0ksa0RBQUE7QTlCdXlGUjtBOEJseUZFO0VBRUUsV0FqRGU7RUFrRGYseUIxQmFXO0UwQlZYLHFCMUJVVztBSnV4RmY7O0E2Qjd5RkU7RUN2Q0EsV0FYUTtFUkpSLHlCbEI0RWE7RTBCM0RiLHFCMUIyRGE7QUo2eEZmO0E4QnIxRkU7RUFDRSxXQWRZO0VSUGQseUJRS21CO0VBa0JqQixxQkFqQmE7QTlCdzJGakI7QThCcDFGRTtFQUVFLFdBckJZO0VSUGQseUJRS21CO0VBeUJqQixxQkF4QmE7RUE2QlgsaURBQUE7QTlCaTFGTjtBOEI3MEZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QmczRmxCO0E4QnYwRkk7RUFLSSxpREFBQTtBOUJxMEZSO0E4QmgwRkU7RUFFRSxXQWpEZTtFQWtEZix5QjFCYVc7RTBCVlgscUIxQlVXO0FKcXpGZjs7QTZCMzBGRTtFQ3ZDQSxXQVhRO0VSSlIseUJsQjRFYTtFMEIzRGIscUIxQjJEYTtBSjJ6RmY7QThCbjNGRTtFQUNFLFdBZFk7RVJQZCx5QlFLbUI7RUFrQmpCLHFCQWpCYTtBOUJzNEZqQjtBOEJsM0ZFO0VBRUUsV0FyQlk7RVJQZCx5QlFLbUI7RUF5QmpCLHFCQXhCYTtFQTZCWCxpREFBQTtBOUIrMkZOO0E4QjMyRkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCODRGbEI7QThCcjJGSTtFQUtJLGlEQUFBO0E5Qm0yRlI7QThCOTFGRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJhVztFMEJWWCxxQjFCVVc7QUptMUZmOztBNkJ6MkZFO0VDdkNBLFdBWFE7RVJKUix5QmxCNEVhO0UwQjNEYixxQjFCMkRhO0FKeTFGZjtBOEJqNUZFO0VBQ0UsV0FkWTtFUlBkLHlCUUttQjtFQWtCakIscUJBakJhO0E5Qm82RmpCO0E4Qmg1RkU7RUFFRSxXQXJCWTtFUlBkLHlCUUttQjtFQXlCakIscUJBeEJhO0VBNkJYLGdEQUFBO0E5QjY0Rk47QThCejRGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUI0NkZsQjtBOEJuNEZJO0VBS0ksZ0RBQUE7QTlCaTRGUjtBOEI1M0ZFO0VBRUUsV0FqRGU7RUFrRGYseUIxQmFXO0UwQlZYLHFCMUJVVztBSmkzRmY7O0E2QnY0RkU7RUN2Q0EsV0FYUTtFUkpSLHlCbEI0RWE7RTBCM0RiLHFCMUIyRGE7QUp1M0ZmO0E4Qi82RkU7RUFDRSxXQWRZO0VSUGQseUJRS21CO0VBa0JqQixxQkFqQmE7QTlCazhGakI7QThCOTZGRTtFQUVFLFdBckJZO0VSUGQseUJRS21CO0VBeUJqQixxQkF4QmE7RUE2QlgsZ0RBQUE7QTlCMjZGTjtBOEJ2NkZFO0VBS0UsV0FsQ2E7RUFtQ2IseUJBckNrQjtFQXdDbEIscUJBdkNjO0E5QjA4RmxCO0E4Qmo2Rkk7RUFLSSxnREFBQTtBOUIrNUZSO0E4QjE1RkU7RUFFRSxXQWpEZTtFQWtEZix5QjFCYVc7RTBCVlgscUIxQlVXO0FKKzRGZjs7QTZCcjZGRTtFQ3ZDQSxXQVhRO0VSSlIseUJsQjRFYTtFMEIzRGIscUIxQjJEYTtBSnE1RmY7QThCNzhGRTtFQUNFLFdBZFk7RVJQZCx5QlFLbUI7RUFrQmpCLHFCQWpCYTtBOUJnK0ZqQjtBOEI1OEZFO0VBRUUsV0FyQlk7RVJQZCx5QlFLbUI7RUF5QmpCLHFCQXhCYTtFQTZCWCxrREFBQTtBOUJ5OEZOO0E4QnI4RkU7RUFLRSxXQWxDYTtFQW1DYix5QkFyQ2tCO0VBd0NsQixxQkF2Q2M7QTlCdytGbEI7QThCLzdGSTtFQUtJLGtEQUFBO0E5QjY3RlI7QThCeDdGRTtFQUVFLFdBakRlO0VBa0RmLHlCMUJhVztFMEJWWCxxQjFCVVc7QUo2NkZmOztBNkJuOEZFO0VDdkNBLFdBWFE7RVJKUix5QmxCNEVhO0UwQjNEYixxQjFCMkRhO0FKbTdGZjtBOEIzK0ZFO0VBQ0UsV0FkWTtFUlBkLHlCUUttQjtFQWtCakIscUJBakJhO0E5QjgvRmpCO0E4QjErRkU7RUFFRSxXQXJCWTtFUlBkLHlCUUttQjtFQXlCakIscUJBeEJhO0VBNkJYLCtDQUFBO0E5QnUrRk47QThCbitGRTtFQUtFLFdBbENhO0VBbUNiLHlCQXJDa0I7RUF3Q2xCLHFCQXZDYztBOUJzZ0dsQjtBOEI3OUZJO0VBS0ksK0NBQUE7QTlCMjlGUjtBOEJ0OUZFO0VBRUUsV0FqRGU7RUFrRGYseUIxQmFXO0UwQlZYLHFCMUJVVztBSjI4RmY7O0E2QjM5RkU7RUNpQkEsYzFCRGE7RTBCRWIscUIxQkZhO0FKZzlGZjtBOEI1OEZFO0VBQ0UsV0FUWTtFQVVaLHlCMUJOVztFMEJPWCxxQjFCUFc7QUpxOUZmO0E4QjM4RkU7RUFFRSxpREFBQTtBOUI0OEZKO0E4Qno4RkU7RUFLRSxXQXJCYTtFQXNCYix5QjFCckJXO0UwQnNCWCxxQjFCdEJXO0FKNjlGZjtBOEJyOEZJO0VBS0ksaURBQUE7QTlCbThGUjtBOEI5N0ZFO0VBRUUsYzFCcENXO0UwQnFDWCw2QkFBQTtBOUIrN0ZKOztBNkJwL0ZFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSnkrRmY7QThCcitGRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKOCtGZjtBOEJwK0ZFO0VBRUUsa0RBQUE7QTlCcStGSjtBOEJsK0ZFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSnMvRmY7QThCOTlGSTtFQUtJLGtEQUFBO0E5QjQ5RlI7QThCdjlGRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCdzlGSjs7QTZCN2dHRTtFQ2lCQSxjMUJEYTtFMEJFYixxQjFCRmE7QUprZ0dmO0E4QjkvRkU7RUFDRSxXQVRZO0VBVVoseUIxQk5XO0UwQk9YLHFCMUJQVztBSnVnR2Y7QThCNy9GRTtFQUVFLGdEQUFBO0E5QjgvRko7QThCMy9GRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJyQlc7RTBCc0JYLHFCMUJ0Qlc7QUorZ0dmO0E4QnYvRkk7RUFLSSxnREFBQTtBOUJxL0ZSO0E4QmgvRkU7RUFFRSxjMUJwQ1c7RTBCcUNYLDZCQUFBO0E5QmkvRko7O0E2QnRpR0U7RUNpQkEsYzFCRGE7RTBCRWIscUIxQkZhO0FKMmhHZjtBOEJ2aEdFO0VBQ0UsV0FUWTtFQVVaLHlCMUJOVztFMEJPWCxxQjFCUFc7QUpnaUdmO0E4QnRoR0U7RUFFRSxpREFBQTtBOUJ1aEdKO0E4QnBoR0U7RUFLRSxXQXJCYTtFQXNCYix5QjFCckJXO0UwQnNCWCxxQjFCdEJXO0FKd2lHZjtBOEJoaEdJO0VBS0ksaURBQUE7QTlCOGdHUjtBOEJ6Z0dFO0VBRUUsYzFCcENXO0UwQnFDWCw2QkFBQTtBOUIwZ0dKOztBNkIvakdFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSm9qR2Y7QThCaGpHRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKeWpHZjtBOEIvaUdFO0VBRUUsZ0RBQUE7QTlCZ2pHSjtBOEI3aUdFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSmlrR2Y7QThCemlHSTtFQUtJLGdEQUFBO0E5QnVpR1I7QThCbGlHRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCbWlHSjs7QTZCeGxHRTtFQ2lCQSxjMUJEYTtFMEJFYixxQjFCRmE7QUo2a0dmO0E4QnprR0U7RUFDRSxXQVRZO0VBVVoseUIxQk5XO0UwQk9YLHFCMUJQVztBSmtsR2Y7QThCeGtHRTtFQUVFLGdEQUFBO0E5QnlrR0o7QThCdGtHRTtFQUtFLFdBckJhO0VBc0JiLHlCMUJyQlc7RTBCc0JYLHFCMUJ0Qlc7QUowbEdmO0E4QmxrR0k7RUFLSSxnREFBQTtBOUJna0dSO0E4QjNqR0U7RUFFRSxjMUJwQ1c7RTBCcUNYLDZCQUFBO0E5QjRqR0o7O0E2QmpuR0U7RUNpQkEsYzFCRGE7RTBCRWIscUIxQkZhO0FKc21HZjtBOEJsbUdFO0VBQ0UsV0FUWTtFQVVaLHlCMUJOVztFMEJPWCxxQjFCUFc7QUoybUdmO0E4QmptR0U7RUFFRSxrREFBQTtBOUJrbUdKO0E4Qi9sR0U7RUFLRSxXQXJCYTtFQXNCYix5QjFCckJXO0UwQnNCWCxxQjFCdEJXO0FKbW5HZjtBOEIzbEdJO0VBS0ksa0RBQUE7QTlCeWxHUjtBOEJwbEdFO0VBRUUsYzFCcENXO0UwQnFDWCw2QkFBQTtBOUJxbEdKOztBNkIxb0dFO0VDaUJBLGMxQkRhO0UwQkViLHFCMUJGYTtBSituR2Y7QThCM25HRTtFQUNFLFdBVFk7RUFVWix5QjFCTlc7RTBCT1gscUIxQlBXO0FKb29HZjtBOEIxbkdFO0VBRUUsK0NBQUE7QTlCMm5HSjtBOEJ4bkdFO0VBS0UsV0FyQmE7RUFzQmIseUIxQnJCVztFMEJzQlgscUIxQnRCVztBSjRvR2Y7QThCcG5HSTtFQUtJLCtDQUFBO0E5QmtuR1I7QThCN21HRTtFQUVFLGMxQnBDVztFMEJxQ1gsNkJBQUE7QTlCOG1HSjs7QTZCeHBHQTtFQUNFLGdCekJ3VjRCO0V5QnZWNUIsY3pCdkNRO0V5QndDUiwwQnpCK013QztBSjQ4RjFDO0E2QnpwR0U7RUFDRSxjekI4TXNDO0FKNjhGMUM7QTZCbnBHRTtFQUVFLGN6QjdFTztBSml1R1g7O0E2QnpvR0E7RUNxQkUsb0JBQUE7RXpCZ0lJLGtCQUxJO0VDcE9OLHFCQUFBO0FObXVHSjs7QTZCM29HQTtFQ2lCRSx1QkFBQTtFekJnSUksbUJBTEk7RUNwT04scUJBQUE7QU55dUdKOztBK0IzdkdBO0VWZ0JNLGdDVWZKO0EvQjh2R0Y7QXFCM3VHTTtFVXBCTjtJVnFCUSxnQkFBQTtFckI4dUdOO0FBQ0Y7QStCandHRTtFQUNFLFVBQUE7QS9CbXdHSjs7QStCOXZHRTtFQUNFLGFBQUE7QS9CaXdHSjs7QStCN3ZHQTtFQUNFLFNBQUE7RUFDQSxnQkFBQTtFVkFJLDZCVUNKO0EvQmd3R0Y7QXFCN3ZHTTtFVU5OO0lWT1EsZ0JBQUE7RXJCZ3dHTjtBQUNGOztBZ0NyeEdBOzs7O0VBSUUsa0JBQUE7QWhDd3hHRjs7QWdDcnhHQTtFQUNFLG1CQUFBO0FoQ3d4R0Y7QWlDcHdHSTtFQUNFLHFCQUFBO0VBQ0Esb0I3QmdXd0I7RTZCL1Z4Qix1QjdCOFZ3QjtFNkI3VnhCLFdBQUE7RUFoQ0osdUJBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFBO0VBQ0Esb0NBQUE7QWpDdXlHRjtBaUNsdkdJO0VBQ0UsY0FBQTtBakNvdkdOOztBZ0M5eEdBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsYTVCbzBCa0M7RTRCbjBCbEMsYUFB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RSxjQUFBO0FqQzg3R047QWdDLzNHSTtFQUNFLGlCQUFBO0FoQ2k0R047O0FnQzEzR0E7RUFDRSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHlDQUFBO0FoQzYzR0Y7O0FnQ3YzR0E7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLGdCNUJvUjRCO0U0Qm5SNUIsYzVCaElTO0U0QmlJVCxtQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7QWhDMDNHRjtBZ0M1MkdFO0VBRUUsYzVCZ3hCZ0M7RWtCbDdCbEMseUJsQk1TO0FKMGdIWDtBZ0N6MkdFO0VBRUUsVzVCcktPO0U0QnNLUCxxQkFBQTtFVjFLRix5QmxCa0NRO0FKbS9HVjtBZ0N2MkdFO0VBRUUsYzVCdktPO0U0QndLUCxvQkFBQTtFQUNBLDZCQUFBO0FoQ3cyR0o7O0FnQ2wyR0E7RUFDRSxjQUFBO0FoQ3EyR0Y7O0FnQ2oyR0E7RUFDRSxjQUFBO0VBQ0Esb0I1Qit2QmtDO0U0Qjl2QmxDLGdCQUFBO0UzQnVESSxtQkFMSTtFMkJoRFIsYzVCeExTO0U0QnlMVCxtQkFBQTtBaENvMkdGOztBZ0NoMkdBO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsYzVCN0xTO0FKZ2lIWDs7QWdDLzFHQTtFQUNFLGM1QnhNUztFNEJ5TVQseUI1QnBNUztFNEJxTVQsaUM1Qnd0QmtDO0FKMG9GcEM7QWdDLzFHRTtFQUNFLGM1QjlNTztBSitpSFg7QWdDLzFHSTtFQUVFLFc1QnJOSztFa0JKVCwyQ2xCdThCa0M7QUptbkZwQztBZ0M3MUdJO0VBRUUsVzVCM05LO0VrQkpULHlCbEJrQ1E7QUo0aEhWO0FnQzMxR0k7RUFFRSxjNUI1Tks7QUp3akhYO0FnQ3gxR0U7RUFDRSxpQzVCK3JCZ0M7QUoycEZwQztBZ0N2MUdFO0VBQ0UsYzVCdk9PO0FKZ2tIWDtBZ0N0MUdFO0VBQ0UsYzVCek9PO0FKaWtIWDs7QWtDN2tIQTs7RUFFRSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0Esc0JBQUE7QWxD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YUFBQTtFcENzdEhSO0FBQ0Y7QWF4MUhJO0V1QnFHQTtJQUVJLGlCQUFBO0lBQ0EsMkJBQUE7RXBDcXZITjtFb0NudkhNO0lBQ0UsbUJBQUE7RXBDcXZIUjtFb0NudkhRO0lBQ0Usa0JBQUE7RXBDcXZIVjtFb0NsdkhRO0lBQ0UscUJoQzZzQndCO0lnQzVzQnhCLG9CaEM0c0J3QjtFSndpR2xDO0VvQ2h2SE07SUFDRSxpQkFBQTtFcENrdkhSO0VvQy91SE07SUFDRSx3QkFBQTtJQUNBLGdCQUFBO0VwQ2l2SFI7RW9DOXVITTtJQUNFLGFBQUE7RXBDZ3ZIUjtBQUNGO0FhbDNISTtFdUJxR0E7SUFFSSxpQkFBQTtJQUNBLDJCQUFBO0VwQyt3SE47RW9DN3dITTtJQUNFLG1CQUFBO0VwQyt3SFI7RW9DN3dIUTtJQUNFLGtCQUFBO0VwQyt3SFY7RW9DNXdIUTtJQUNFLHFCaEM2c0J3QjtJZ0M1c0J4QixvQmhDNHNCd0I7RUpra0dsQztFb0Mxd0hNO0lBQ0UsaUJBQUE7RXBDNHdIUjtFb0N6d0hNO0lBQ0Usd0JBQUE7SUFDQSxnQkFBQTtFcEMyd0hSO0VvQ3h3SE07SUFDRSxhQUFBO0VwQzB3SFI7QUFDRjtBYTU0SEk7RXVCcUdBO0lBRUksaUJBQUE7SUFDQSwyQkFBQTtFcEN5eUhOO0VvQ3Z5SE07SUFDRSxtQkFBQTtFcEN5eUhSO0VvQ3Z5SFE7SUFDRSxrQkFBQTtFcEN5eUhWO0VvQ3R5SFE7SUFDRSxxQmhDNnNCd0I7SWdDNXNCeEIsb0JoQzRzQndCO0VKNGxHbEM7RW9DcHlITTtJQUNFLGlCQUFBO0VwQ3N5SFI7RW9DbnlITTtJQUNFLHdCQUFBO0lBQ0EsZ0JBQUE7RXBDcXlIUjtFb0NseUhNO0lBQ0UsYUFBQTtFcENveUhSO0FBQ0Y7QW9DajBISTtFQUVJLGlCQUFBO0VBQ0EsMkJBQUE7QXBDazBIUjtBb0NoMEhRO0VBQ0UsbUJBQUE7QXBDazBIVjtBb0NoMEhVO0VBQ0Usa0JBQUE7QXBDazBIWjtBb0MvekhVO0VBQ0UscUJoQzZzQndCO0VnQzVzQnhCLG9CaEM0c0J3QjtBSnFuR3BDO0FvQzd6SFE7RUFDRSxpQkFBQTtBcEMrekhWO0FvQzV6SFE7RUFDRSx3QkFBQTtFQUNBLGdCQUFBO0FwQzh6SFY7QW9DM3pIUTtFQUNFLGFBQUE7QXBDNnpIVjs7QW9DL3lIRTtFQUNFLHlCaEN3c0JnQztBSjBtR3BDO0FvQ2h6SEk7RUFFRSx5QmhDb3NCOEI7QUo2bUdwQztBb0M1eUhJO0VBQ0UsMEJoQzRyQjhCO0FKa25HcEM7QW9DNXlITTtFQUVFLHlCaEN5ckI0QjtBSm9uR3BDO0FvQzF5SE07RUFDRSx5QmhDdXJCNEI7QUpxbkdwQztBb0N4eUhJOztFQUVFLHlCaENnckI4QjtBSjBuR3BDO0FvQ3R5SEU7RUFDRSwwQmhDeXFCZ0M7RWdDeHFCaEMsZ0NoQzZxQmdDO0FKMm5HcEM7QW9DcnlIRTtFQUNFLDZQQUFBO0FwQ3V5SEo7QW9DcHlIRTtFQUNFLDBCaENncUJnQztBSnNvR3BDO0FvQ3B5SEk7OztFQUdFLHlCaEM2cEI4QjtBSnlvR3BDOztBb0MveEhFO0VBQ0UsV2hDMVBPO0FKNGhJWDtBb0NoeUhJO0VBRUUsV2hDOVBLO0FKK2hJWDtBb0M1eEhJO0VBQ0UsZ0NoQ2tvQjhCO0FKNHBHcEM7QW9DNXhITTtFQUVFLGdDaEMrbkI0QjtBSjhwR3BDO0FvQzF4SE07RUFDRSxnQ2hDNm5CNEI7QUorcEdwQztBb0N4eEhJOztFQUVFLFdoQ2xSSztBSjRpSVg7QW9DdHhIRTtFQUNFLGdDaEMrbUJnQztFZ0M5bUJoQyxzQ2hDbW5CZ0M7QUpxcUdwQztBb0NyeEhFO0VBQ0UsbVFBQUE7QXBDdXhISjtBb0NweEhFO0VBQ0UsZ0NoQ3NtQmdDO0FKZ3JHcEM7QW9DcnhISTs7O0VBR0UsV2hDcFNLO0FKMmpJWDs7QXFDL2pJQTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsWUFBQTtFQUVBLHFCQUFBO0VBQ0Esc0JqQ0hTO0VpQ0lULDJCQUFBO0VBQ0Esc0NBQUE7RS9CS0Usc0JBQUE7QU42aklKO0FxQy9qSUU7RUFDRSxlQUFBO0VBQ0EsY0FBQTtBckNpa0lKO0FxQzlqSUU7RUFDRSxtQkFBQTtFQUNB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STtFaENyQ0EsK0JBQUE7RUFDQSxnQ0FBQTtBTnl3SUo7QXNDN3RJTTtFQUNFLHdCbEMyUnNCO0VFM1QxQixtQ0FBQTtFQUNBLGtDQUFBO0FOZ3dJSjtBc0M1dElJO0VBQ0Usd0JsQ3FSd0I7RUUzVDFCLG1DQUFBO0VBQ0Esa0NBQUE7QU5xd0lKOztBc0MxdElBO0VBQ0Usa0NBQUE7RUFDQSxtQkFBQTtBdEM2dElGOztBc0MxdElBO0VBQ0UscUJBQUE7QXRDNnRJRjs7QXNDcHRJRTtFQUNFLGVBQUE7RUFDQSxjQUFBO0VoQ3BGQSxnQkFBQTtBTjR5SUo7QXNDcHRJRTtFQUNFLGVBQUE7QXRDc3RJSjtBc0NqdElNO0VBQ0UsbUJBQUE7RWhDdEZKLHlCQUFBO0VBQ0EsMEJBQUE7QU4weUlKO0FzQy9zSU07RUFDRSxzQkFBQTtFaEMvRUosNkJBQUE7RUFDQSw0QkFBQTtBTml5SUo7O0F1QzMwSUE7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxtQm5Dc3ZDa0M7RW1DcHZDbEMsZ0JBQUE7QXZDNjBJRjs7QXVDdDBJRTtFQUNFLG9CbkMydUNnQztBSjhsR3BDO0F1Q3YwSUk7RUFDRSxXQUFBO0VBQ0EscUJuQ3V1QzhCO0VtQ3R1QzlCLGNuQ0xLO0VtQ01MLHVGQUFBO0F2Q3kwSU47QXVDcjBJRTtFQUNFLGNuQ1hPO0FKazFJWDs7QXdDaDJJQTtFQUNFLGFBQUE7RWhDR0EsZUFBQTtFQUNBLGdCQUFBO0FSaTJJRjs7QXdDajJJQTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLGNwQzhCUTtFb0M3QlIscUJBQUE7RUFDQSxzQnBDRlM7RW9DR1QseUJBQUE7RW5CS0kscUltQkpKO0F4Q28ySUY7QXFCNTFJTTtFbUJmTjtJbkJnQlEsZ0JBQUE7RXJCKzFJTjtBQUNGO0F3Q3YySUU7RUFDRSxVQUFBO0VBQ0EsY3BDK1FzQztFb0M3UXRDLHlCcENSTztFb0NTUCxxQnBDUk87QUpnM0lYO0F3Q3IySUU7RUFDRSxVQUFBO0VBQ0EsY3BDdVFzQztFb0N0UXRDLHlCcENmTztFb0NnQlAsVXBDMjhCZ0M7RW9DMThCaEMsa0RwQ2lpQjRCO0FKczBIaEM7O0F3Q2wySUU7RUFDRSxpQnBDODdCZ0M7QUp1NkdwQztBd0NsMklFO0VBQ0UsVUFBQTtFQUNBLFdwQzlCTztFa0JKVCx5QmxCa0NRO0VvQ0VOLHFCcENGTTtBSnMySVY7QXdDajJJRTtFQUNFLGNwQzlCTztFb0MrQlAsb0JBQUE7RUFDQSxzQnBDdENPO0VvQ3VDUCxxQnBDcENPO0FKdTRJWDs7QXlDLzRJRTtFQUNFLHlCQUFBO0F6Q2s1SUo7O0F5QzM0SVE7RW5DcUNKLCtCQUFBO0VBQ0Esa0NBQUE7QU4wMklKO0F5QzE0SVE7RW5DaUJKLGdDQUFBO0VBQ0EsbUNBQUE7QU40M0lKOztBeUM1NUlFO0VBQ0UsdUJBQUE7RXBDdVBFLGtCQUxJO0FMOHFJVjtBeUN6NUlRO0VuQ3FDSiw4QkFBQTtFQUNBLGlDQUFBO0FOdTNJSjtBeUN2NUlRO0VuQ2lCSiwrQkFBQTtFQUNBLGtDQUFBO0FOeTRJSjs7QXlDejZJRTtFQUNFLHVCQUFBO0VwQ3VQRSxtQkFMSTtBTDJySVY7QXlDdDZJUTtFbkNxQ0osOEJBQUE7RUFDQSxpQ0FBQTtBTm80SUo7QXlDcDZJUTtFbkNpQkosK0JBQUE7RUFDQSxrQ0FBQTtBTnM1SUo7O0EwQ3A3SUE7RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0VyQ29QSSxpQkFMSTtFcUM3T1IsZ0J0QzRaNEI7RXNDM1o1QixjQUFBO0VBQ0EsV3RDSFM7RXNDSVQsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHdCQUFBO0VwQ0lFLHNCQUFBO0FObzdJSjtBMENuN0lFO0VBQ0UsYUFBQTtBMUNxN0lKOztBMENoN0lBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0ExQ203SUY7O0EyQzE4SUE7RUFDRSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJ2Q3dxQ2tDO0V1Q3ZxQ2xDLDZCQUFBO0VyQ1VFLHNCQUFBO0FObzhJSjs7QTJDejhJQTtFQUVFLGNBQUE7QTNDMjhJRjs7QTJDdjhJQTtFQUNFLGdCdkNpWjRCO0FKeWpJOUI7O0EyQ2w4SUE7RUFDRSxtQnZDMnBDa0M7QUoweUdwQztBMkNsOElFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtBM0NvOElKOztBMkNyN0lFO0VDbkRBLGNEK0NjO0VyQjVDZCx5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQ2c4SWpCO0E0QzErSUU7RUFDRSxjQUFBO0E1QzQrSUo7O0EyQzk3SUU7RUNuREEsY0QrQ2M7RXJCNUNkLHlCcUIwQ21CO0VDM0NuQixxQkQ0Q2U7QTNDeThJakI7QTRDbi9JRTtFQUNFLGNBQUE7QTVDcS9JSjs7QTJDdjhJRTtFQ25EQSxjRCtDYztFckI1Q2QseUJxQjBDbUI7RUMzQ25CLHFCRDRDZTtBM0NrOUlqQjtBNEM1L0lFO0VBQ0UsY0FBQTtBNUM4L0lKOztBMkNoOUlFO0VDbkRBLGNEaURnQjtFckI5Q2hCLHlCcUIwQ21CO0VDM0NuQixxQkQ0Q2U7QTNDMjlJakI7QTRDcmdKRTtFQUNFLGNBQUE7QTVDdWdKSjs7QTJDejlJRTtFQ25EQSxjRGlEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQ28rSWpCO0E0QzlnSkU7RUFDRSxjQUFBO0E1Q2doSko7O0EyQ2wrSUU7RUNuREEsY0QrQ2M7RXJCNUNkLHlCcUIwQ21CO0VDM0NuQixxQkQ0Q2U7QTNDNitJakI7QTRDdmhKRTtFQUNFLGNBQUE7QTVDeWhKSjs7QTJDMytJRTtFQ25EQSxjRGlEZ0I7RXJCOUNoQix5QnFCMENtQjtFQzNDbkIscUJENENlO0EzQ3MvSWpCO0E0Q2hpSkU7RUFDRSxjQUFBO0E1Q2tpSko7O0EyQ3AvSUU7RUNuREEsY0QrQ2M7RXJCNUNkLHlCcUIwQ21CO0VDM0NuQixxQkQ0Q2U7QTNDKy9JakI7QTRDemlKRTtFQUNFLGNBQUE7QTVDMmlKSjs7QTZDL2lKRTtFQUNFO0lBQUssMkJ6QzByQzJCO0VKeTNHbEM7QUFDRjtBNkNoakpBO0VBQ0UsYUFBQTtFQUNBLFl6Q29yQ2tDO0V5Q25yQ2xDLGdCQUFBO0V4Q2lQSSxrQkFMSTtFd0MxT1IseUJ6Q0ZTO0VFUVAsc0JBQUE7QU42aUpKOztBNkM5aUpBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7RUFDQSxnQkFBQTtFQUNBLFd6Q2RTO0V5Q2VULGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QnpDYVE7RWlCdEJKLDJCd0JVSjtBN0NpakpGO0FxQnZqSk07RXdCSE47SXhCSVEsZ0JBQUE7RXJCMGpKTjtBQUNGOztBNkNuakpBO0V2QmVFLHFNQUFBO0V1QmJBLDBCQUFBO0E3Q3NqSkY7O0E2Q2xqSkU7RUFDRSxrREFBQTtBN0NxakpKO0E2Q2xqSk07RUFKSjtJQUtNLGVBQUE7RTdDcWpKTjtBQUNGOztBOEMxbEpBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBR0EsZUFBQTtFQUNBLGdCQUFBO0V4Q1FFLHNCQUFBO0FOb2xKSjs7QThDbGxKQTtFQUNFLFdBQUE7RUFDQSxjMUNQUztFMENRVCxtQkFBQTtBOUNxbEpGO0E4Q2xsSkU7RUFFRSxVQUFBO0VBQ0EsYzFDZE87RTBDZVAscUJBQUE7RUFDQSx5QjFDdEJPO0FKeW1KWDtBOENobEpFO0VBQ0UsYzFDbEJPO0UwQ21CUCx5QjFDMUJPO0FKNG1KWDs7QThDemtKQTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0VBRUEscUJBQUE7RUFDQSxzQjFDM0NTO0UwQzRDVCxzQ0FBQTtBOUMya0pGO0E4Q3prSkU7RXhDM0JFLCtCQUFBO0VBQ0EsZ0NBQUE7QU51bUpKO0E4Q3prSkU7RXhDakJFLG1DQUFBO0VBQ0Esa0NBQUE7QU42bEpKO0E4Q3prSkU7RUFFRSxjMUNsRE87RTBDbURQLG9CQUFBO0VBQ0Esc0IxQzFETztBSm9vSlg7QThDdGtKRTtFQUNFLFVBQUE7RUFDQSxXMUNoRU87RTBDaUVQLHlCMUNuQ007RTBDb0NOLHFCMUNwQ007QUo0bUpWO0E4Q3JrSkU7RUFDRSxtQkFBQTtBOUN1a0pKO0E4Q3JrSkk7RUFDRSxnQkFBQTtFQUNBLHFCMUNrUndCO0FKcXpJOUI7O0E4Q3pqSkk7RUFDRSxtQkFBQTtBOUM0akpOO0E4Q3pqSlE7RXhDM0JKLGtDQUFBO0VBWkEsMEJBQUE7QU5vbUpKO0E4Q3hqSlE7RXhDNUNKLGdDQUFBO0VBWUEsNEJBQUE7QU40bEpKO0E4Q3ZqSlE7RUFDRSxhQUFBO0E5Q3lqSlY7QThDdGpKUTtFQUNFLHFCMUNpUG9CO0UwQ2hQcEIsb0JBQUE7QTlDd2pKVjtBOEN0akpVO0VBQ0UsaUJBQUE7RUFDQSxzQjFDNE9rQjtBSjQwSTlCOztBYWpuSkk7RWlDaUNBO0lBQ0UsbUJBQUE7RTlDb2xKSjtFOENqbEpNO0l4QzNCSixrQ0FBQTtJQVpBLDBCQUFBO0VONG5KRjtFOENobEpNO0l4QzVDSixnQ0FBQTtJQVlBLDRCQUFBO0VOb25KRjtFOEMva0pNO0lBQ0UsYUFBQTtFOUNpbEpSO0U4QzlrSk07SUFDRSxxQjFDaVBvQjtJMENoUHBCLG9CQUFBO0U5Q2dsSlI7RThDOWtKUTtJQUNFLGlCQUFBO0lBQ0Esc0IxQzRPa0I7RUpvMkk1QjtBQUNGO0FhMW9KSTtFaUNpQ0E7SUFDRSxtQkFBQTtFOUM0bUpKO0U4Q3ptSk07SXhDM0JKLGtDQUFBO0lBWkEsMEJBQUE7RU5vcEpGO0U4Q3htSk07SXhDNUNKLGdDQUFBO0lBWUEsNEJBQUE7RU40b0pGO0U4Q3ZtSk07SUFDRSxhQUFBO0U5Q3ltSlI7RThDdG1KTTtJQUNFLHFCMUNpUG9CO0kwQ2hQcEIsb0JBQUE7RTlDd21KUjtFOEN0bUpRO0lBQ0UsaUJBQUE7SUFDQSxzQjFDNE9rQjtFSjQzSTVCO0FBQ0Y7QWFscUpJO0VpQ2lDQTtJQUNFLG1CQUFBO0U5Q29vSko7RThDam9KTTtJeEMzQkosa0NBQUE7SUFaQSwwQkFBQTtFTjRxSkY7RThDaG9KTTtJeEM1Q0osZ0NBQUE7SUFZQSw0QkFBQTtFTm9xSkY7RThDL25KTTtJQUNFLGFBQUE7RTlDaW9KUjtFOEM5bkpNO0lBQ0UscUIxQ2lQb0I7STBDaFBwQixvQkFBQTtFOUNnb0pSO0U4QzluSlE7SUFDRSxpQkFBQTtJQUNBLHNCMUM0T2tCO0VKbzVJNUI7QUFDRjtBYTFySkk7RWlDaUNBO0lBQ0UsbUJBQUE7RTlDNHBKSjtFOEN6cEpNO0l4QzNCSixrQ0FBQTtJQVpBLDBCQUFBO0VOb3NKRjtFOEN4cEpNO0l4QzVDSixnQ0FBQTtJQVlBLDRCQUFBO0VONHJKRjtFOEN2cEpNO0lBQ0UsYUFBQTtFOUN5cEpSO0U4Q3RwSk07SUFDRSxxQjFDaVBvQjtJMENoUHBCLG9CQUFBO0U5Q3dwSlI7RThDdHBKUTtJQUNFLGlCQUFBO0lBQ0Esc0IxQzRPa0I7RUo0Nkk1QjtBQUNGO0FhbHRKSTtFaUNpQ0E7SUFDRSxtQkFBQTtFOUNvckpKO0U4Q2pySk07SXhDM0JKLGtDQUFBO0lBWkEsMEJBQUE7RU40dEpGO0U4Q2hySk07SXhDNUNKLGdDQUFBO0lBWUEsNEJBQUE7RU5vdEpGO0U4Qy9xSk07SUFDRSxhQUFBO0U5Q2lySlI7RThDOXFKTTtJQUNFLHFCMUNpUG9CO0kwQ2hQcEIsb0JBQUE7RTlDZ3JKUjtFOEM5cUpRO0lBQ0UsaUJBQUE7SUFDQSxzQjFDNE9rQjtFSm84STVCO0FBQ0Y7QThDbnFKQTtFeENwSEksZ0JBQUE7QU4weEpKO0E4Q25xSkU7RUFDRSxxQkFBQTtBOUNxcUpKO0E4Q25xSkk7RUFDRSxzQkFBQTtBOUNxcUpOOztBK0MveUpFO0VBQ0UsY0R1SmlCO0VDdEpqQix5QkRxSnNCO0E5QzZwSjFCO0ErQy95Sk07RUFFRSxjRGlKYTtFQ2hKYix5QkFBQTtBL0NnekpSO0ErQzd5Sk07RUFDRSxXM0NQRztFMkNRSCx5QkQySWE7RUMxSWIscUJEMElhO0E5Q3FxSnJCOztBK0M3ekpFO0VBQ0UsY0R1SmlCO0VDdEpqQix5QkRxSnNCO0E5QzJxSjFCO0ErQzd6Sk07RUFFRSxjRGlKYTtFQ2hKYix5QkFBQTtBL0M4ekpSO0ErQzN6Sk07RUFDRSxXM0NQRztFMkNRSCx5QkQySWE7RUMxSWIscUJEMElhO0E5Q21ySnJCOztBK0MzMEpFO0VBQ0UsY0R1SmlCO0VDdEpqQix5QkRxSnNCO0E5Q3lySjFCO0ErQzMwSk07RUFFRSxjRGlKYTtFQ2hKYix5QkFBQTtBL0M0MEpSO0ErQ3owSk07RUFDRSxXM0NQRztFMkNRSCx5QkQySWE7RUMxSWIscUJEMElhO0E5Q2lzSnJCOztBK0N6MUpFO0VBQ0UsY0R5Sm1CO0VDeEpuQix5QkRxSnNCO0E5Q3VzSjFCO0ErQ3oxSk07RUFFRSxjRG1KZTtFQ2xKZix5QkFBQTtBL0MwMUpSO0ErQ3YxSk07RUFDRSxXM0NQRztFMkNRSCx5QkQ2SWU7RUM1SWYscUJENEllO0E5QzZzSnZCOztBK0N2MkpFO0VBQ0UsY0R5Sm1CO0VDeEpuQix5QkRxSnNCO0E5Q3F0SjFCO0ErQ3YySk07RUFFRSxjRG1KZTtFQ2xKZix5QkFBQTtBL0N3MkpSO0ErQ3IySk07RUFDRSxXM0NQRztFMkNRSCx5QkQ2SWU7RUM1SWYscUJENEllO0E5QzJ0SnZCOztBK0NyM0pFO0VBQ0UsY0R1SmlCO0VDdEpqQix5QkRxSnNCO0E5Q211SjFCO0ErQ3IzSk07RUFFRSxjRGlKYTtFQ2hKYix5QkFBQTtBL0NzM0pSO0ErQ24zSk07RUFDRSxXM0NQRztFMkNRSCx5QkQySWE7RUMxSWIscUJEMElhO0E5QzJ1SnJCOztBK0NuNEpFO0VBQ0UsY0R5Sm1CO0VDeEpuQix5QkRxSnNCO0E5Q2l2SjFCO0ErQ240Sk07RUFFRSxjRG1KZTtFQ2xKZix5QkFBQTtBL0NvNEpSO0ErQ2o0Sk07RUFDRSxXM0NQRztFMkNRSCx5QkQ2SWU7RUM1SWYscUJENEllO0E5Q3V2SnZCOztBK0NqNUpFO0VBQ0UsY0R1SmlCO0VDdEpqQix5QkRxSnNCO0E5Qyt2SjFCO0ErQ2o1Sk07RUFFRSxjRGlKYTtFQ2hKYix5QkFBQTtBL0NrNUpSO0ErQy80Sk07RUFDRSxXM0NQRztFMkNRSCx5QkQySWE7RUMxSWIscUJEMElhO0E5Q3V3SnJCOztBZ0Q3NUpBO0VBQ0UsdUJBQUE7RUFDQSxVNUM0eUMyQjtFNEMzeUMzQixXNUMyeUMyQjtFNEMxeUMzQixzQkFBQTtFQUNBLFc1Q1FTO0U0Q1BULDJXQUFBO0VBQ0EsU0FBQTtFMUNNRSxzQkFBQTtFMENKRixZNUM0eUMyQjtBSm9uSDdCO0FnRDc1SkU7RUFDRSxXQUFBO0VBQ0EscUJBQUE7RUFDQSxhNUN1eUN5QjtBSnduSDdCO0FnRDU1SkU7RUFDRSxVQUFBO0VBQ0Esa0Q1Q21pQjRCO0U0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dkpNLGdCQUFBO0VyQitwTE47QUFDRjtBc0RyL0tFO0VBQ0UsVWxEK2tDaUM7QUp3NklyQzs7QXNEOStLQTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGVsRHlrQ21DO0VrRHhrQ25DLFNBQUE7RUFDQSxvQmxEc2tDbUM7RWtEcmtDbkMsdUJsRHFrQ21DO0VrRHBrQ25DLFdsRHpNUztFa0QwTVQsa0JBQUE7QXREaS9LRjs7QXNEMytLRTs7RUFFRSxnQ2xEd2tDaUM7QUpzNklyQztBc0QzK0tFO0VBQ0Usc0JsRDVNTztBSnlyTFg7QXNEMStLRTtFQUNFLFdsRGhOTztBSjRyTFg7O0F3RDFzTEE7RUFDRTtJQUFLLDBDQUFBO0V4RDhzTEw7QUFDRjtBd0Q1c0xBO0VBQ0UscUJBQUE7RUFDQSxXcEQ2eEN3QjtFb0Q1eEN4QixZcEQ0eEN3QjtFb0QzeEN4QiwyQkFBQTtFQUNBLGlDQUFBO0VBQ0EsK0JBQUE7RUFFQSxrQkFBQTtFQUNBLCtDQUFBO0F4RDZzTEY7O0F3RDFzTEE7RUFDRSxXcER1eEN3QjtFb0R0eEN4QixZcERzeEN3QjtFb0RyeEN4QixtQnBEdXhDd0I7QUpzN0kxQjs7QXdEdHNMQTtFQUNFO0lBQ0UsbUJBQUE7RXhEeXNMRjtFd0R2c0xBO0lBQ0UsVUFBQTtJQUNBLGVBQUE7RXhEeXNMRjtBQUNGO0F3RHRzTEE7RUFDRSxxQkFBQTtFQUNBLFdwRDZ2Q3dCO0VvRDV2Q3hCLFlwRDR2Q3dCO0VvRDN2Q3hCLDJCQUFBO0VBQ0EsOEJBQUE7RUFFQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSw2Q0FBQTtBeER1c0xGOztBd0Rwc0xBO0VBQ0UsV3BEdXZDd0I7RW9EdHZDeEIsWXBEc3ZDd0I7QUppOUkxQjs7QXdEbnNMRTtFQUNFOztJQUVFLHdCQUFBO0V4RHNzTEo7QUFDRjtBdURsd0xFO0VBQ0UsY0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0F2RG93TEo7O0F5RHh3TEU7RUFDRSxjckQ4RVc7QUo2ckxmO0F5RHh3TE07RUFFRSxjQUFBO0F6RHl3TFI7O0F5RC93TEU7RUFDRSxjckQ4RVc7QUpvc0xm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O0FpRW44TE07RUFFSSx5QkFBQTtBakVxOExWOztBaUV2OExNO0VBRUksd0JBQUE7QWpFeThMVjs7QWlFMzhMTTtFQUVJLHlCQUFBO0FqRTY4TFY7O0FpRS84TE07RUFFSSw2QkFBQTtBakVpOUxWOztBaUVuOUxNO0VBRUksOEJBQUE7QWpFcTlMVjs7QWlFdjlMTTtFQUVJLHdCQUFBO0FqRXk5TFY7O0FpRTM5TE07RUFFSSwrQkFBQTtBakU2OUxWOztBaUUvOUxNO0VBRUksd0JBQUE7QWpFaStMVjs7QWlFbitMTTtFQUVJLHdEQUFBO0FqRXErTFY7O0FpRXYrTE07RUFFSSw4REFBQTtBakV5K0xWOztBaUUzK0xNO0VBRUksdURBQUE7QWpFNitMVjs7QWlFLytMTTtFQUVJLDJCQUFBO0FqRWkvTFY7O0FpRW4vTE07RUFFSSwyQkFBQTtBakVxL0xWOztBaUV2L0xNO0VBRUksNkJBQUE7QWpFeS9MVjs7QWlFMy9MTTtFQUVJLDZCQUFBO0FqRTYvTFY7O0FpRS8vTE07RUFFSSwwQkFBQTtBakVpZ01WOztBaUVuZ01NO0VBRUksMkJBQUE7QWpFcWdNVjs7QWlFdmdNTTtFQUVJLGlCQUFBO0FqRXlnTVY7O0FpRTNnTU07RUFFSSxtQkFBQTtBakU2Z01WOztBaUUvZ01NO0VBRUksb0JBQUE7QWpFaWhNVjs7QWlFbmhNTTtFQUVJLG9CQUFBO0FqRXFoTVY7O0FpRXZoTU07RUFFSSxzQkFBQTtBakV5aE1WOztBaUUzaE1NO0VBRUksdUJBQUE7QWpFNmhNVjs7QWlFL2hNTTtFQUVJLGtCQUFBO0FqRWlpTVY7O0FpRW5pTU07RUFFSSxvQkFBQTtBakVxaU1WOztBaUV2aU1NO0VBRUkscUJBQUE7QWpFeWlNVjs7QWlFM2lNTTtFQUVJLG1CQUFBO0FqRTZpTVY7O0FpRS9pTU07RUFFSSxxQkFBQTtBakVpak1WOztBaUVuak1NO0VBRUksc0JBQUE7QWpFcWpNVjs7QWlFdmpNTTtFQUVJLDJDQUFBO0FqRXlqTVY7O0FpRTNqTU07RUFFSSxzQ0FBQTtBakU2ak1WOztBaUUvak1NO0VBRUksc0NBQUE7QWpFaWtNVjs7QWlFbmtNTTtFQUVJLG9DQUFBO0FqRXFrTVY7O0FpRXZrTU07RUFFSSxvQkFBQTtBakV5a01WOztBaUUza01NO0VBRUksd0NBQUE7QWpFNmtNVjs7QWlFL2tNTTtFQUVJLHdCQUFBO0FqRWlsTVY7O0FpRW5sTU07RUFFSSwwQ0FBQTtBakVxbE1WOztBaUV2bE1NO0VBRUksMEJBQUE7QWpFeWxNVjs7QWlFM2xNTTtFQUVJLDJDQUFBO0FqRTZsTVY7O0FpRS9sTU07RUFFSSwyQkFBQTtBakVpbU1WOztBaUVubU1NO0VBRUkseUNBQUE7QWpFcW1NVjs7QWlFdm1NTTtFQUVJLHlCQUFBO0FqRXltTVY7O0FpRTNtTU07RUFFSSxnQ0FBQTtBakU2bU1WOztBaUUvbU1NO0VBRUksZ0NBQUE7QWpFaW5NVjs7QWlFbm5NTTtFQUVJLGdDQUFBO0FqRXFuTVY7O0FpRXZuTU07RUFFSSxnQ0FBQTtBakV5bk1WOztBaUUzbk1NO0VBRUksZ0NBQUE7QWpFNm5NVjs7QWlFL25NTTtFQUVJLGdDQUFBO0FqRWlvTVY7O0FpRW5vTU07RUFFSSxnQ0FBQTtBakVxb01WOztBaUV2b01NO0VBRUksZ0NBQUE7QWpFeW9NVjs7QWlFM29NTTtFQUVJLDZCQUFBO0FqRTZvTVY7O0FpRS9vTU07RUFFSSwwQkFBQTtBakVpcE1WOztBaUVucE1NO0VBRUksNEJBQUE7QWpFcXBNVjs7QWlFdnBNTTtFQUVJLDRCQUFBO0FqRXlwTVY7O0FpRTNwTU07RUFFSSw0QkFBQTtBakU2cE1WOztBaUUvcE1NO0VBRUksNEJBQUE7QWpFaXFNVjs7QWlFbnFNTTtFQUVJLDRCQUFBO0FqRXFxTVY7O0FpRXZxTU07RUFFSSxxQkFBQTtBakV5cU1WOztBaUUzcU1NO0VBRUkscUJBQUE7QWpFNnFNVjs7QWlFL3FNTTtFQUVJLHFCQUFBO0FqRWlyTVY7O0FpRW5yTU07RUFFSSxzQkFBQTtBakVxck1WOztBaUV2ck1NO0VBRUksc0JBQUE7QWpFeXJNVjs7QWlFM3JNTTtFQUVJLDBCQUFBO0FqRTZyTVY7O0FpRS9yTU07RUFFSSx1QkFBQTtBakVpc01WOztBaUVuc01NO0VBRUksMkJBQUE7QWpFcXNNVjs7QWlFdnNNTTtFQUVJLHNCQUFBO0FqRXlzTVY7O0FpRTNzTU07RUFFSSxzQkFBQTtBakU2c01WOztBaUUvc01NO0VBRUksc0JBQUE7QWpFaXRNVjs7QWlFbnRNTTtFQUVJLHVCQUFBO0FqRXF0TVY7O0FpRXZ0TU07RUFFSSx1QkFBQTtBakV5dE1WOztBaUUzdE1NO0VBRUksMkJBQUE7QWpFNnRNVjs7QWlFL3RNTTtFQUVJLHdCQUFBO0FqRWl1TVY7O0FpRW51TU07RUFFSSw0QkFBQTtBakVxdU1WOztBaUV2dU1NO0VBRUkseUJBQUE7QWpFeXVNVjs7QWlFM3VNTTtFQUVJLDhCQUFBO0FqRTZ1TVY7O0FpRS91TU07RUFFSSxpQ0FBQTtBakVpdk1WOztBaUVudk1NO0VBRUksc0NBQUE7QWpFcXZNVjs7QWlFdnZNTTtFQUVJLHlDQUFBO0FqRXl2TVY7O0FpRTN2TU07RUFFSSx1QkFBQTtBakU2dk1WOztBaUUvdk1NO0VBRUksdUJBQUE7QWpFaXdNVjs7QWlFbndNTTtFQUVJLHlCQUFBO0FqRXF3TVY7O0FpRXZ3TU07RUFFSSx5QkFBQTtBakV5d01WOztBaUUzd01NO0VBRUksMEJBQUE7QWpFNndNVjs7QWlFL3dNTTtFQUVJLDRCQUFBO0FqRWl4TVY7O0FpRW54TU07RUFFSSxrQ0FBQTtBakVxeE1WOztBaUV2eE1NO0VBRUksc0JBQUE7RUFBQSxpQkFBQTtBakV5eE1WOztBaUUzeE1NO0VBRUksNEJBQUE7RUFBQSx1QkFBQTtBakU2eE1WOztBaUUveE1NO0VBRUksMkJBQUE7RUFBQSxzQkFBQTtBakVpeU1WOztBaUVueU1NO0VBRUkseUJBQUE7RUFBQSxvQkFBQTtBakVxeU1WOztBaUV2eU1NO0VBRUksMkJBQUE7RUFBQSxzQkFBQTtBakV5eU1WOztBaUUzeU1NO0VBRUkseUJBQUE7RUFBQSxvQkFBQTtBakU2eU1WOztBaUUveU1NO0VBRUksc0NBQUE7QWpFaXpNVjs7QWlFbnpNTTtFQUVJLG9DQUFBO0FqRXF6TVY7O0FpRXZ6TU07RUFFSSxrQ0FBQTtBakV5ek1WOztBaUUzek1NO0VBRUkseUNBQUE7QWpFNnpNVjs7QWlFL3pNTTtFQUVJLHdDQUFBO0FqRWkwTVY7O0FpRW4wTU07RUFFSSx3Q0FBQTtBakVxME1WOztBaUV2ME1NO0VBRUksa0NBQUE7QWpFeTBNVjs7QWlFMzBNTTtFQUVJLGdDQUFBO0FqRTYwTVY7O0FpRS8wTU07RUFFSSw4QkFBQTtBakVpMU1WOztBaUVuMU1NO0VBRUksZ0NBQUE7QWpFcTFNVjs7QWlFdjFNTTtFQUVJLCtCQUFBO0FqRXkxTVY7O0FpRTMxTU07RUFFSSxvQ0FBQTtBakU2MU1WOztBaUUvMU1NO0VBRUksa0NBQUE7QWpFaTJNVjs7QWlFbjJNTTtFQUVJLGdDQUFBO0FqRXEyTVY7O0FpRXYyTU07RUFFSSx1Q0FBQTtBakV5Mk1WOztBaUUzMk1NO0VBRUksc0NBQUE7QWpFNjJNVjs7QWlFLzJNTTtFQUVJLGlDQUFBO0FqRWkzTVY7O0FpRW4zTU07RUFFSSwyQkFBQTtBakVxM01WOztBaUV2M01NO0VBRUksaUNBQUE7QWpFeTNNVjs7QWlFMzNNTTtFQUVJLCtCQUFBO0FqRTYzTVY7O0FpRS8zTU07RUFFSSw2QkFBQTtBakVpNE1WOztBaUVuNE1NO0VBRUksK0JBQUE7QWpFcTRNVjs7QWlFdjRNTTtFQUVJLDhCQUFBO0FqRXk0TVY7O0FpRTM0TU07RUFFSSxvQkFBQTtBakU2NE1WOztBaUUvNE1NO0VBRUksbUJBQUE7QWpFaTVNVjs7QWlFbjVNTTtFQUVJLG1CQUFBO0FqRXE1TVY7O0FpRXY1TU07RUFFSSxtQkFBQTtBakV5NU1WOztBaUUzNU1NO0VBRUksbUJBQUE7QWpFNjVNVjs7QWlFLzVNTTtFQUVJLG1CQUFBO0FqRWk2TVY7O0FpRW42TU07RUFFSSxtQkFBQTtBakVxNk1WOztBaUV2Nk1NO0VBRUksbUJBQUE7QWpFeTZNVjs7QWlFMzZNTTtFQUVJLG9CQUFBO0FqRTY2TVY7O0FpRS82TU07RUFFSSwwQkFBQTtBakVpN01WOztBaUVuN01NO0VBRUkseUJBQUE7QWpFcTdNVjs7QWlFdjdNTTtFQUVJLHVCQUFBO0FqRXk3TVY7O0FpRTM3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SSw2QkFBQTtBakUreU5WOztBaUVqek5NO0VBRUksNENBQUE7QWpFbXpOVjs7QWlFcnpOTTtFQUVJLDRDQUFBO0FqRXV6TlY7O0FpRXp6Tk07RUFFSSwwQ0FBQTtBakUyek5WOztBaUU3ek5NO0VBRUksNENBQUE7QWpFK3pOVjs7QWlFajBOTTtFQUVJLDZCQUFBO0FqRW0wTlY7O0FpRXIwTk07RUFFSSwwQkFBQTtBakV1ME5WOztBaUV6ME5NO0VBRUksNkJBQUE7QWpFMjBOVjs7QWlFNzBOTTtFQUVJLDZCQUFBO0FqRSswTlY7O0FpRWoxTk07RUFFSSwyQkFBQTtBakVtMU5WOztBaUVyMU5NO0VBRUksK0JBQUE7QWpFdTFOVjs7QWlFejFOTTtFQUVJLDJCQUFBO0FqRTIxTlY7O0FpRTcxTk07RUFFSSwyQkFBQTtBakUrMU5WOztBaUVqMk5NO0VBRUksOEJBQUE7QWpFbTJOVjs7QWlFcjJOTTtFQUVJLG9DQUFBO0FqRXUyTlY7O0FpRXoyTk07RUFFSSxvQ0FBQTtBakUyMk5WOztBaUU3Mk5NO0VBRUkscUNBQUE7QWpFKzJOVjs7QWlFajNOTTtFQUVJLDJCQUFBO0FqRW0zTlY7O0FpRXIzTk07RUFFSSw0QkFBQTtBakV1M05WOztBaUV6M05NO0VBRUksNkJBQUE7QWpFMjNOVjs7QWlFNzNOTTtFQUVJLHlCQUFBO0FqRSszTlY7O0FpRWo0Tk07RUFFSSx5QkFBQTtBakVtNE5WOztBaUVyNE5NO0VBRUkseUJBQUE7QWpFdTROVjs7QWlFejROTTtFQUVJLHlCQUFBO0FqRTI0TlY7O0FpRTc0Tk07RUFFSSx5QkFBQTtBakUrNE5WOztBaUVqNU5NO0VBRUkseUJBQUE7QWpFbTVOVjs7QWlFcjVOTTtFQUVJLHlCQUFBO0FqRXU1TlY7O0FpRXo1Tk07RUFFSSx5QkFBQTtBakUyNU5WOztBaUU3NU5NO0VBRUksc0JBQUE7QWpFKzVOVjs7QWlFajZOTTtFQUVJLHlCQUFBO0FqRW02TlY7O0FpRXI2Tk07RUFFSSx5QkFBQTtBakV1Nk5WOztBaUV6Nk5NO0VBRUksb0NBQUE7QWpFMjZOVjs7QWlFNzZOTTtFQUVJLDBDQUFBO0FqRSs2TlY7O0FpRWo3Tk07RUFFSSx5QkFBQTtBakVtN05WOztBaUVyN05NO0VBRUkseUJBQUE7QWpFdTdOVjs7QWlFejdOTTtFQUVJLDRCQUFBO0FqRTI3TlY7O0FpRTc3Tk07RUFFSSwyQkFBQTtBakUrN05WOztBaUVqOE5NO0VBRUkseUJBQUE7QWpFbThOVjs7QWlFcjhOTTtFQUVJLG9DQUFBO0FqRXU4TlY7O0FpRXo4Tk07RUFFSSxvQ0FBQTtBakUyOE5WOztBaUU3OE5NO0VBRUksb0NBQUE7QWpFKzhOVjs7QWlFajlOTTtFQUVJLG9DQUFBO0FqRW05TlY7O0FpRXI5Tk07RUFFSSxvQ0FBQTtBakV1OU5WOztBaUV6OU5NO0VBRUksb0NBQUE7QWpFMjlOVjs7QWlFNzlOTTtFQUVJLG9DQUFBO0FqRSs5TlY7O0FpRWorTk07RUFFSSxvQ0FBQTtBakVtK05WOztBaUVyK05NO0VBRUksaUNBQUE7QWpFdStOVjs7QWlFeitOTTtFQUVJLGlDQUFBO0FqRTIrTlY7O0FpRTcrTk07RUFFSSx3Q0FBQTtBakUrK05WOztBaUVqL05NO0VBRUksK0NBQUE7QWpFbS9OVjs7QWlFci9OTTtFQUVJLDhCQUFBO0FqRXUvTlY7O0FpRXovTk07RUFFSSw4QkFBQTtBakUyL05WOztBaUU3L05NO0VBRUksZ0NBQUE7QWpFKy9OVjs7QWlFamdPTTtFQUVJLHFDQUFBO0FqRW1nT1Y7O0FpRXJnT007RUFFSSx3Q0FBQTtBakV1Z09WOztBaUUzZ09RLHFCQUFBO0FBRUY7RUFFSSxnQ0FBQTtFQUFBLGlDQUFBO0FqRTZnT1Y7O0FpRWpnT1EsbUJBQUE7QUFkRjtFQUVJLGdEQUFBO0FqRWtoT1Y7O0FpRXBoT007RUFFSSxtQ0FBQTtFQUFBLCtCQUFBO01BQUEsMkJBQUE7QWpFc2hPVjs7QWlFeGhPTTtFQUVJLG9DQUFBO0VBQUEsZ0NBQUE7TUFBQSw0QkFBQTtBakUwaE9WOztBaUU1aE9NO0VBRUksb0NBQUE7RUFBQSxnQ0FBQTtNQUFBLDRCQUFBO0FqRThoT1Y7O0FpRWhpT007RUFFSSwrQkFBQTtBakVraU9WOztBaUVwaU9NO0VBRUksK0JBQUE7QWpFc2lPVjs7QWlFeGlPTTtFQUVJLGlDQUFBO0FqRTBpT1Y7O0FpRTVpT007RUFFSSwyQkFBQTtBakU4aU9WOztBaUVoak9NO0VBRUksZ0NBQUE7QWpFa2pPVjs7QWlFcGpPTTtFQUVJLGlDQUFBO0FqRXNqT1Y7O0FpRXhqT007RUFFSSxnQ0FBQTtBakUwak9WOztBaUU1ak9NO0VBRUksNkJBQUE7QWpFOGpPVjs7QWlFaGtPTTtFQUVJLCtCQUFBO0FqRWtrT1Y7O0FpRXBrT007RUFFSSwwQ0FBQTtFQUFBLDJDQUFBO0FqRXVrT1Y7O0FpRXprT007RUFFSSwyQ0FBQTtFQUFBLDhDQUFBO0FqRTRrT1Y7O0FpRTlrT007RUFFSSw4Q0FBQTtFQUFBLDZDQUFBO0FqRWlsT1Y7O0FpRW5sT007RUFFSSw2Q0FBQTtFQUFBLDBDQUFBO0FqRXNsT1Y7O0FpRXhsT007RUFFSSw4QkFBQTtBakUwbE9WOztBaUU1bE9NO0VBRUksNkJBQUE7QWpFOGxPVjs7QWFsbE9JO0VvRGRFO0lBRUksc0JBQUE7RWpFbW1PUjs7RWlFcm1PSTtJQUVJLHVCQUFBO0VqRXVtT1I7O0VpRXptT0k7SUFFSSxzQkFBQTtFakUybU9SOztFaUU3bU9JO0lBRUksMEJBQUE7RWpFK21PUjs7RWlFam5PSTtJQUVJLGdDQUFBO0VqRW1uT1I7O0VpRXJuT0k7SUFFSSx5QkFBQTtFakV1bk9SOztFaUV6bk9JO0lBRUksd0JBQUE7RWpFMm5PUjs7RWlFN25PSTtJQUVJLHlCQUFBO0VqRStuT1I7O0VpRWpvT0k7SUFFSSw2QkFBQTtFakVtb09SOztFaUVyb09JO0lBRUksOEJBQUE7RWpFdW9PUjs7RWlFem9PSTtJQUVJLHdCQUFBO0VqRTJvT1I7O0VpRTdvT0k7SUFFSSwrQkFBQTtFakUrb09SOztFaUVqcE9JO0lBRUksd0JBQUE7RWpFbXBPUjs7RWlFcnBPSTtJQUVJLHlCQUFBO0VqRXVwT1I7O0VpRXpwT0k7SUFFSSw4QkFBQTtFakUycE9SOztFaUU3cE9JO0lBRUksaUNBQUE7RWpFK3BPUjs7RWlFanFPSTtJQUVJLHNDQUFBO0VqRW1xT1I7O0VpRXJxT0k7SUFFSSx5Q0FBQTtFakV1cU9SOztFaUV6cU9JO0lBRUksdUJBQUE7RWpFMnFPUjs7RWlFN3FPSTtJQUVJLHVCQUFBO0VqRStxT1I7O0VpRWpyT0k7SUFFSSx5QkFBQTtFakVtck9SOztFaUVyck9JO0lBRUkseUJBQUE7RWpFdXJPUjs7RWlFenJPSTtJQUVJLDBCQUFBO0VqRTJyT1I7O0VpRTdyT0k7SUFFSSw0QkFBQTtFakUrck9SOztFaUVqc09JO0lBRUksa0NBQUE7RWpFbXNPUjs7RWlFcnNPSTtJQUVJLHNCQUFBO0lBQUEsaUJBQUE7RWpFdXNPUjs7RWlFenNPSTtJQUVJLDRCQUFBO0lBQUEsdUJBQUE7RWpFMnNPUjs7RWlFN3NPSTtJQUVJLDJCQUFBO0lBQUEsc0JBQUE7RWpFK3NPUjs7RWlFanRPSTtJQUVJLHlCQUFBO0lBQUEsb0JBQUE7RWpFbXRPUjs7RWlFcnRPSTtJQUVJLDJCQUFBO0lBQUEsc0JBQUE7RWpFdXRPUjs7RWlFenRPSTtJQUVJLHlCQUFBO0lBQUEsb0JBQUE7RWpFMnRPUjs7RWlFN3RPSTtJQUVJLHNDQUFBO0VqRSt0T1I7O0VpRWp1T0k7SUFFSSxvQ0FBQTtFakVtdU9SOztFaUVydU9JO0lBRUksa0NBQUE7RWpFdXVPUjs7RWlFenVPSTtJQUVJLHlDQUFBO0VqRTJ1T1I7O0VpRTd1T0k7SUFFSSx3Q0FBQTtFakUrdU9SOztFaUVqdk9JO0lBRUksd0NBQUE7RWpFbXZPUjs7RWlFcnZPSTtJQUVJLGtDQUFBO0VqRXV2T1I7O0VpRXp2T0k7SUFFSSxnQ0FBQTtFakUydk9SOztFaUU3dk9JO0lBRUksOEJBQUE7RWpFK3ZPUjs7RWlFandPSTtJQUVJLGdDQUFBO0VqRW13T1I7O0VpRXJ3T0k7SUFFSSwrQkFBQTtFakV1d09SOztFaUV6d09JO0lBRUksb0NBQUE7RWpFMndPUjs7RWlFN3dPSTtJQUVJLGtDQUFBO0VqRSt3T1I7O0VpRWp4T0k7SUFFSSxnQ0FBQTtFakVteE9SOztFaUVyeE9JO0lBRUksdUNBQUE7RWpFdXhPUjs7RWlFenhPSTtJQUVJLHNDQUFBO0VqRTJ4T1I7O0VpRTd4T0k7SUFFSSxpQ0FBQTtFakUreE9SOztFaUVqeU9JO0lBRUksMkJBQUE7RWpFbXlPUjs7RWlFcnlPSTtJQUVJLGlDQUFBO0VqRXV5T1I7O0VpRXp5T0k7SUFFSSwrQkFBQTtFakUyeU9SOztFaUU3eU9JO0lBRUksNkJBQUE7RWpFK3lPUjs7RWlFanpPSTtJQUVJLCtCQUFBO0VqRW16T1I7O0VpRXJ6T0k7SUFFSSw4QkFBQTtFakV1ek9SOztFaUV6ek9JO0lBRUksb0JBQUE7RWpFMnpPUjs7RWlFN3pPSTtJQUVJLG1CQUFBO0VqRSt6T1I7O0VpRWowT0k7SUFFSSxtQkFBQTtFakVtME9SOztFaUVyME9JO0lBRUksbUJBQUE7RWpFdTBPUjs7RWlFejBPSTtJQUVJLG1CQUFBO0VqRTIwT1I7O0VpRTcwT0k7SUFFSSxtQkFBQTtFakUrME9SOztFaUVqMU9JO0lBRUksbUJBQUE7RWpFbTFPUjs7RWlFcjFPSTtJQUVJLG1CQUFBO0VqRXUxT1I7O0VpRXoxT0k7SUFFSSxvQkFBQTtFakUyMU9SOztFaUU3MU9JO0lBRUksMEJBQUE7RWpFKzFPUjs7RWlFajJPSTtJQUVJLHlCQUFBO0VqRW0yT1I7O0VpRXIyT0k7SUFFSSx1QkFBQTtFakV1Mk9SOztFaUV6Mk9JO0lBRUkseUJBQUE7RWpFMjJPUjs7RWlFNzJPSTtJQUVJLHVCQUFBO0VqRSsyT1I7O0VpRWozT0k7SUFFSSx1QkFBQTtFakVtM09SOztFaUVyM09JO0lBRUksMEJBQUE7SUFBQSx5QkFBQTtFakV3M09SOztFaUUxM09JO0lBRUksZ0NBQUE7SUFBQSwrQkFBQTtFakU2M09SOztFaUUvM09JO0lBRUksK0JBQUE7SUFBQSw4QkFBQTtFakVrNE9SOztFaUVwNE9JO0lBRUksNkJBQUE7SUFBQSw0QkFBQTtFakV1NE9SOztFaUV6NE9JO0lBRUksK0JBQUE7SUFBQSw4QkFBQTtFakU0NE9SOztFaUU5NE9JO0lBRUksNkJBQUE7SUFBQSw0QkFBQTtFakVpNU9SOztFaUVuNU9JO0lBRUksNkJBQUE7SUFBQSw0QkFBQTtFakVzNU9SOztFaUV4NU9JO0lBRUksd0JBQUE7SUFBQSwyQkFBQTtFakUyNU9SOztFaUU3NU9JO0lBRUksOEJBQUE7SUFBQSxpQ0FBQTtFakVnNk9SOztFaUVsNk9JO0lBRUksNkJBQUE7SUFBQSxnQ0FBQTtFakVxNk9SOztFaUV2Nk9JO0lBRUksMkJBQUE7SUFBQSw4QkFBQTtFakUwNk9SOztFaUU1Nk9JO0lBRUksNkJBQUE7SUFBQSxnQ0FBQTtFakUrNk9SOztFaUVqN09JO0lBRUksMkJBQUE7SUFBQSw4QkFBQTtFakVvN09SOztFaUV0N09JO0lBRUksMkJBQUE7SUFBQSw4QkFBQTtFakV5N09SOztFaUUzN09JO0lBRUksd0JBQUE7RWpFNjdPUjs7RWlFLzdPSTtJQUVJLDhCQUFBO0VqRWk4T1I7O0VpRW44T0k7SUFFSSw2QkFBQTtFakVxOE9SOztFaUV2OE9JO0lBRUksMkJBQUE7RWpFeThPUjs7RWlFMzhPSTtJQUVJLDZCQUFBO0VqRTY4T1I7O0VpRS84T0k7SUFFSSwyQkFBQTtFakVpOU9SOztFaUVuOU9JO0lBRUksMkJBQUE7RWpFcTlPUjs7RWlFdjlPSTtJQUVJLDBCQUFBO0VqRXk5T1I7O0VpRTM5T0k7SUFFSSxnQ0FBQTtFakU2OU9SOztFaUUvOU9JO0lBRUksK0JBQUE7RWpFaStPUjs7RWlFbitPSTtJQUVJLDZCQUFBO0VqRXErT1I7O0VpRXYrT0k7SUFFSSwrQkFBQTtFakV5K09SOztFaUUzK09JO0lBRUksNkJBQUE7RWpFNitPUjs7RWlFLytPSTtJQUVJLDZCQUFBO0VqRWkvT1I7O0VpRW4vT0k7SUFFSSwyQkFBQTtFakVxL09SOztFaUV2L09JO0lBRUksaUNBQUE7RWpFeS9PUjs7RWlFMy9PSTtJQUVJLGdDQUFBO0VqRTYvT1I7O0VpRS8vT0k7SUFFSSw4QkFBQTtFakVpZ1BSOztFaUVuZ1BJO0lBRUksZ0NBQUE7RWpFcWdQUjs7RWlFdmdQSTtJQUVJLDhCQUFBO0VqRXlnUFI7O0VpRTNnUEk7SUFFSSw4QkFBQTtFakU2Z1BSOztFaUUvZ1BJO0lBRUkseUJBQUE7RWpFaWhQUjs7RWlFbmhQSTtJQUVJLCtCQUFBO0VqRXFoUFI7O0VpRXZoUEk7SUFFSSw4QkFBQTtFakV5aFBSOztFaUUzaFBJO0lBRUksNEJBQUE7RWpFNmhQUjs7RWlFL2hQSTtJQUVJLDhCQUFBO0VqRWlpUFI7O0VpRW5pUEk7SUFFSSw0QkFBQTtFakVxaVBSOztFaUV2aVBJO0lBRUksNEJBQUE7RWpFeWlQUjs7RWlFM2lQSTtJQUVJLHFCQUFBO0VqRTZpUFI7O0VpRS9pUEk7SUFFSSwyQkFBQTtFakVpalBSOztFaUVualBJO0lBRUksMEJBQUE7RWpFcWpQUjs7RWlFdmpQSTtJQUVJLHdCQUFBO0VqRXlqUFI7O0VpRTNqUEk7SUFFSSwwQkFBQTtFakU2alBSOztFaUUvalBJO0lBRUksd0JBQUE7RWpFaWtQUjs7RWlFbmtQSTtJQUVJLDJCQUFBO0lBQUEsMEJBQUE7RWpFc2tQUjs7RWlFeGtQSTtJQUVJLGlDQUFBO0lBQUEsZ0NBQUE7RWpFMmtQUjs7RWlFN2tQSTtJQUVJLGdDQUFBO0lBQUEsK0JBQUE7RWpFZ2xQUjs7RWlFbGxQSTtJQUVJLDhCQUFBO0lBQUEsNkJBQUE7RWpFcWxQUjs7RWlFdmxQSTtJQUVJLGdDQUFBO0lBQUEsK0JBQUE7RWpFMGxQUjs7RWlFNWxQSTtJQUVJLDhCQUFBO0lBQUEsNkJBQUE7RWpFK2xQUjs7RWlFam1QSTtJQUVJLHlCQUFBO0lBQUEsNEJBQUE7RWpFb21QUjs7RWlFdG1QSTtJQUVJLCtCQUFBO0lBQUEsa0NBQUE7RWpFeW1QUjs7RWlFM21QSTtJQUVJLDhCQUFBO0lBQUEsaUNBQUE7RWpFOG1QUjs7RWlFaG5QSTtJQUVJLDRCQUFBO0lBQUEsK0JBQUE7RWpFbW5QUjs7RWlFcm5QSTtJQUVJLDhCQUFBO0lBQUEsaUNBQUE7RWpFd25QUjs7RWlFMW5QSTtJQUVJLDRCQUFBO0lBQUEsK0JBQUE7RWpFNm5QUjs7RWlFL25QSTtJQUVJLHlCQUFBO0VqRWlvUFI7O0VpRW5vUEk7SUFFSSwrQkFBQTtFakVxb1BSOztFaUV2b1BJO0lBRUksOEJBQUE7RWpFeW9QUjs7RWlFM29QSTtJQUVJLDRCQUFBO0VqRTZvUFI7O0VpRS9vUEk7SUFFSSw4QkFBQTtFakVpcFBSOztFaUVucFBJO0lBRUksNEJBQUE7RWpFcXBQUjs7RWlFdnBQSTtJQUVJLDJCQUFBO0VqRXlwUFI7O0VpRTNwUEk7SUFFSSxpQ0FBQTtFakU2cFBSOztFaUUvcFBJO0lBRUksZ0NBQUE7RWpFaXFQUjs7RWlFbnFQSTtJQUVJLDhCQUFBO0VqRXFxUFI7O0VpRXZxUEk7SUFFSSxnQ0FBQTtFakV5cVBSOztFaUUzcVBJO0lBRUksOEJBQUE7RWpFNnFQUjs7RWlFL3FQSTtJQUVJLDRCQUFBO0VqRWlyUFI7O0VpRW5yUEk7SUFFSSxrQ0FBQTtFakVxclBSOztFaUV2clBJO0lBRUksaUNBQUE7RWpFeXJQUjs7RWlFM3JQSTtJQUVJLCtCQUFBO0VqRTZyUFI7O0VpRS9yUEk7SUFFSSxpQ0FBQTtFakVpc1BSOztFaUVuc1BJO0lBRUksK0JBQUE7RWpFcXNQUjs7RWlFdnNQSTtJQUVJLDBCQUFBO0VqRXlzUFI7O0VpRTNzUEk7SUFFSSxnQ0FBQTtFakU2c1BSOztFaUUvc1BJO0lBRUksK0JBQUE7RWpFaXRQUjs7RWlFbnRQSTtJQUVJLDZCQUFBO0VqRXF0UFI7O0VpRXZ0UEk7SUFFSSwrQkFBQTtFakV5dFBSOztFaUUzdFBJO0lBRUksNkJBQUE7RWpFNnRQUjs7RWlFL3RQSTtJQUVJLDJCQUFBO0VqRWl1UFI7O0VpRW51UEk7SUFFSSw0QkFBQTtFakVxdVBSOztFaUV2dVBJO0lBRUksNkJBQUE7RWpFeXVQUjtBQUNGO0FhOXRQSTtFb0RkRTtJQUVJLHNCQUFBO0VqRTh1UFI7O0VpRWh2UEk7SUFFSSx1QkFBQTtFakVrdlBSOztFaUVwdlBJO0lBRUksc0JBQUE7RWpFc3ZQUjs7RWlFeHZQSTtJQUVJLDBCQUFBO0VqRTB2UFI7O0VpRTV2UEk7SUFFSSxnQ0FBQTtFakU4dlBSOztFaUVod1BJO0lBRUkseUJBQUE7RWpFa3dQUjs7RWlFcHdQSTtJQUVJLHdCQUFBO0VqRXN3UFI7O0VpRXh3UEk7SUFFSSx5QkFBQTtFakUwd1BSOztFaUU1d1BJO0lB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RUkseUJBQUE7SUFBQSxvQkFBQTtFakVpL1FSOztFaUVuL1FJO0lBRUksc0NBQUE7RWpFcS9RUjs7RWlFdi9RSTtJQUVJLG9DQUFBO0VqRXkvUVI7O0VpRTMvUUk7SUFFSSxrQ0FBQTtFakU2L1FSOztFaUUvL1FJO0lBRUkseUNBQUE7RWpFaWdSUjs7RWlFbmdSSTtJQUVJLHdDQUFBO0VqRXFnUlI7O0VpRXZnUkk7SUFFSSx3Q0FBQTtFakV5Z1JSOztFaUUzZ1JJO0lBRUksa0NBQUE7RWpFNmdSUjs7RWlFL2dSSTtJQUVJLGdDQUFBO0VqRWloUlI7O0VpRW5oUkk7SUFFSSw4QkFBQTtFakVxaFJSOztFaUV2aFJJO0lBRUksZ0NBQUE7RWpFeWhSUjs7RWlFM2hSSTtJQUVJLCtCQUFBO0VqRTZoUlI7O0VpRS9oUkk7SUFFSSxvQ0FBQTtFakVpaVJSOztFaUVuaVJJO0lBRUksa0NBQUE7RWpFcWlSUjs7RWlFdmlSSTtJQUVJLGdDQUFBO0VqRXlpUlI7O0VpRTNpUkk7SUFFSSx1Q0FBQTtFakU2aVJSOztFaUUvaVJJO0lBRUksc0NBQUE7RWpFaWpSUjs7RWlFbmpSSTtJQUVJLGlDQUFBO0VqRXFqUlI7O0VpRXZqUkk7SUFFSSwyQkFBQTtFakV5alJSOztFaUUzalJJO0lBRUksaUNBQUE7RWpFNmpSUjs7RWlFL2pSSTtJQUVJLCtCQUFBO0VqRWlrUlI7O0VpRW5rUkk7SUFFSSw2QkFBQTtFakVxa1JSOztFaUV2a1JJO0lBRUksK0JBQUE7RWpFeWtSUjs7RWlFM2tSSTtJQUVJLDhCQUFBO0VqRTZrUlI7O0VpRS9rUkk7SUFFSSxvQkFBQTtFakVpbFJSOztFaUVubFJJO0lBRUksbUJBQUE7RWpFcWxSUjs7RWlFdmxSSTtJQUVJLG1CQUFBO0VqRXlsUlI7O0VpRTNsUkk7SUFFSSxtQkFBQTtFakU2bFJSOztFaUUvbFJJO0lBRUksbUJBQUE7RWpFaW1SUjs7RWlFbm1SSTtJQUVJLG1CQUFBO0VqRXFtUlI7O0VpRXZtUkk7SUFFSSxtQkFBQTtFakV5bVJSOztFaUUzbVJJO0lBRUksbUJBQUE7RWpFNm1SUjs7RWlF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QUVJLGdDQUFBO0VqRW0rUlI7O0VpRXIrUkk7SUFFSSwrQkFBQTtFakV1K1JSOztFaUV6K1JJO0lBRUksNkJBQUE7RWpFMitSUjs7RWlFNytSSTtJQUVJLCtCQUFBO0VqRSsrUlI7O0VpRWovUkk7SUFFSSw2QkFBQTtFakVtL1JSOztFaUVyL1JJO0lBRUksMkJBQUE7RWpFdS9SUjs7RWlFei9SSTtJQUVJLDRCQUFBO0VqRTIvUlI7O0VpRTcvUkk7SUFFSSw2QkFBQTtFakUrL1JSO0FBQ0Y7QWFwL1JJO0VvRGRFO0lBRUksc0JBQUE7RWpFb2dTUjs7RWlFdGdTSTtJQUVJLHVCQUFBO0VqRXdnU1I7O0VpRTFnU0k7SUFFSSxzQkFBQTtFakU0Z1NSOztFaUU5Z1NJO0lBRUksMEJBQUE7RWpFZ2hTUjs7RWlFbGhTSTtJQUVJLGdDQUFBO0VqRW9oU1I7O0VpRXRoU0k7SUFFSSx5QkFBQTtFakV3aFNSOztFaUUxaFNJO0lBRUksd0JBQUE7RWpFNGhTUjs7RWlFOWhTSTtJQUVJLHlCQUFBO0VqRWdpU1I7O0VpRWxpU0k7SUFFSSw2QkFBQTtFakVvaVNSOztFaUV0aVNJO0lBRUksOEJBQUE7RWpFd2lTUjs7RWlFMWlTSTtJQUVJLHdCQUFBO0VqRTRpU1I7O0VpRTlpU0k7SUFFSSwrQkFBQTtFakVnalNSOztFaUVsalNJO0lBRUksd0JBQUE7RWpFb2pTUjs7RWlFdGpTSTtJQUVJLHlCQUFBO0VqRXdqU1I7O0VpRTFqU0k7SUFFSSw4QkFBQTtFakU0alNSOztFaUU5alNJO0lBRUksaUNBQUE7RWpFZ2tTUjs7RWlFbGtTSTtJQUVJLHNDQUFBO0VqRW9rU1I7O0VpRXRrU0k7SUFFSSx5Q0FBQTtFakV3a1NSOztFaUUxa1NJO0lBRUksdUJBQUE7RWpFNGtTUjs7RWlFOWtTSTtJQUVJLHVCQUFBO0VqRWdsU1I7O0VpRWxsU0k7SUFFSSx5QkFBQTtFakVvbFNSOztFaUV0bFNJO0lBRUkseUJBQUE7RWpFd2xTUjs7RWlFMWxTSTtJQUVJLDBCQUFBO0VqRTRsU1I7O0VpRTlsU0k7SUFFSSw0QkFBQTtFakVnbVNSOztFaUVs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a1RJO0lBRUksOEJBQUE7RWpFOGtUUjs7RWlFaGxUSTtJQUVJLDRCQUFBO0VqRWtsVFI7O0VpRXBsVEk7SUFFSSxrQ0FBQTtFakVzbFRSOztFaUV4bFRJO0lBRUksaUNBQUE7RWpFMGxUUjs7RWlFNWxUSTtJQUVJLCtCQUFBO0VqRThsVFI7O0VpRWhtVEk7SUFFSSxpQ0FBQTtFakVrbVRSOztFaUVwbVRJO0lBRUksK0JBQUE7RWpFc21UUjs7RWlFeG1USTtJQUVJLDBCQUFBO0VqRTBtVFI7O0VpRTVtVEk7SUFFSSxnQ0FBQTtFakU4bVRSOztFaUVoblRJO0lBRUksK0JBQUE7RWpFa25UUjs7RWlFcG5USTtJQUVJLDZCQUFBO0VqRXNuVFI7O0VpRXhuVEk7SUFFSSwrQkFBQTtFakUwblRSOztFaUU1blRJO0lBRUksNkJBQUE7RWpFOG5UUjs7RWlFaG9USTtJQUVJLDJCQUFBO0VqRWtvVFI7O0VpRXBvVEk7SUFFSSw0QkFBQTtFakVzb1RSOztFaUV4b1RJO0lBRUksNkJBQUE7RWpFMG9UUjtBQUNGO0FhL25USTtFb0RkRTtJQUVJLHNCQUFBO0VqRStvVFI7O0VpRWpwVEk7SUFFSSx1QkFBQTtFakVtcFRSOztFaUVycFRJO0lBRUksc0JBQUE7RWpFdXBUUjs7RWlFenBUSTtJQUVJLDBCQUFBO0VqRTJwVFI7O0VpRTdwVEk7SUFFSSxnQ0FBQTtFakUrcFRSOztFaUVqcVRJO0lBRUkseUJBQUE7RWpFbXFUUjs7RWlFcnFUSTtJQUVJLHdCQUFBO0VqRXVxVFI7O0VpRXpxVEk7SUFFSSx5QkFBQTtFakUycVRSOztFaUU3cVRJO0lBRUksNkJBQUE7RWpFK3FUUjs7RWlFanJUSTtJQUVJLDhCQUFBO0VqRW1yVFI7O0VpRXJyVEk7SUFFSSx3QkFBQTtFakV1clRSOztFaUV6clRJO0lBRUksK0JBQUE7RWpFMnJUUjs7RWlFN3JUSTtJQUVJLHdCQUFBO0VqRStyVFI7O0VpRWpzVEk7SUFFSSx5QkFBQTtFakVtc1RSOztFaUVyc1RJO0lBRUksOEJBQUE7RWpFdXNUUjs7RWlFenNUSTtJQUVJLGlDQUFBO0VqRTJzVFI7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O0VpRXZyVUk7SUFFSSw0QkFBQTtFakV5clVSOztFaUUzclVJO0lBRUksOEJBQUE7RWpFNnJVUjs7RWlFL3JVSTtJQUVJLDRCQUFBO0VqRWlzVVI7O0VpRW5zVUk7SUFFSSwyQkFBQTtFakVxc1VSOztFaUV2c1VJO0lBRUksaUNBQUE7RWpFeXNVUjs7RWlFM3NVSTtJQUVJLGdDQUFBO0VqRTZzVVI7O0VpRS9zVUk7SUFFSSw4QkFBQTtFakVpdFVSOztFaUVudFVJO0lBRUksZ0NBQUE7RWpFcXRVUjs7RWlFdnRVSTtJQUVJLDhCQUFBO0VqRXl0VVI7O0VpRTN0VUk7SUFFSSw0QkFBQTtFakU2dFVSOztFaUUvdFVJO0lBRUksa0NBQUE7RWpFaXVVUjs7RWlFbnVVSTtJQUVJLGlDQUFBO0VqRXF1VVI7O0VpRXZ1VUk7SUFFSSwrQkFBQTtFakV5dVVSOztFaUUzdVVJO0lBRUksaUNBQUE7RWpFNnVVUjs7RWlFL3VVSTtJQUVJLCtCQUFBO0VqRWl2VVI7O0VpRW52VUk7SUFFSSwwQkFBQTtFakVxdlVSOztFaUV2dlVJO0lBRUksZ0NBQUE7RWpFeXZVUjs7RWlFM3ZVSTtJQUVJLCtCQUFBO0VqRTZ2VVI7O0VpRS92VUk7SUFFSSw2QkFBQTtFakVpd1VSOztFaUVud1VJO0lBRUksK0JBQUE7RWpFcXdVUjs7RWlFdndVSTtJQUVJLDZCQUFBO0VqRXl3VVI7O0VpRTN3VUk7SUFFSSwyQkFBQTtFakU2d1VSOztFaUUvd1VJO0lBRUksNEJBQUE7RWpFaXhVUjs7RWlFbnhVSTtJQUVJLDZCQUFBO0VqRXF4VVI7QUFDRjtBa0V0elVBO0VEOEJNO0lBRUksNEJBQUE7RWpFMHhVUjs7RWlFNXhVSTtJQUVJLDBCQUFBO0VqRTh4VVI7O0VpRWh5VUk7SUFFSSw2QkFBQTtFakVreVVSOztFaUVweVVJO0lBRUksNEJBQUE7RWpFc3lVUjtBQUNGO0FrRXB6VUE7RURXTTtJQUVJLDBCQUFBO0VqRTJ5VVI7O0VpRTd5VUk7SUFFSSxnQ0FBQTtFakUreVVSOztFaUVqelVJO0lBRUkseUJBQUE7RWpFbXpVUjs7RWlFcnpVSTtJQUVJLHdCQUFBO0VqRXV6VVI7O0VpRXp6VUk7SUFFSSx5QkFBQTtFakUyelVSOztFaUU3elVJO0lBRUksNkJBQUE7RWpFK3pVUjs7RWlFajBVSTtJQUVJLDhCQUFBO0VqRW0wVVI7O0VpRXIwVUk7SUFFSSx3QkFBQTtFakV1MFVSOztFaUV6MFVJO0lBRUksK0JBQUE7RWpFMjBVUjs7RWlFNzBVSTtJQUVJLHdCQUFBO0VqRSswVVI7QUFDRjs7QUFnR0Esd0NBQXdDXCIsXCJzb3VyY2VzQ29udGVudFwiOltcIkBjaGFyc2V0IFxcXCJVVEYtOFxcXCI7XFxuLyohXFxuICogQm9vdHN0cmFwIHY1LjAuMC1iZXRhMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxcbiAqL1xcbjpyb290IHtcXG4gIC0tYnMtYmx1ZTogIzBkNmVmZDtcXG4gIC0tYnMtaW5kaWdvOiAjNjYxMGYyO1xcbiAgLS1icy1wdXJwbGU6ICM2ZjQyYzE7XFxuICAtLWJzLXBpbms6ICNkNjMzODQ7XFxuICAtLWJzLXJlZDogI2RjMzU0NTtcXG4gIC0tYnMtb3JhbmdlOiAjZmQ3ZTE0O1xcbiAgLS1icy15ZWxsb3c6ICNmZmMxMDc7XFxuICAtLWJzLWdyZWVuOiAjMTk4NzU0O1xcbiAgLS1icy10ZWFsOiAjMjBjOTk3O1xcbiAgLS1icy1jeWFuOiAjMGRjYWYwO1xcbiAgLS1icy13aGl0ZTogI2ZmZjtcXG4gIC0tYnMtZ3JheTogIzZjNzU3ZDtcXG4gIC0tYnMtZ3JheS1kYXJrOiAjMzQzYTQwO1xcbiAgLS1icy1wcmltYXJ5OiAjMGQ2ZWZkO1xcbiAgLS1icy1zZWNvbmRhcnk6ICM2Yzc1N2Q7XFxuICAtLWJzLXN1Y2Nlc3M6ICMxOTg3NTQ7XFxuICAtLWJzLWluZm86ICMwZGNhZjA7XFxuICAtLWJzLXdhcm5pbmc6ICNmZmMxMDc7XFxuICAtLWJzLWRhbmdlcjogI2RjMzU0NTtcXG4gIC0tYnMtbGlnaHQ6ICNmOGY5ZmE7XFxuICAtLWJzLWRhcms6ICMyMTI1Mjk7XFxuICAtLWJzLWZvbnQtc2Fucy1zZXJpZjogc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcXFwiU2Vnb2UgVUlcXFwiLCBSb2JvdG8sIFxcXCJIZWx2ZXRpY2EgTmV1ZVxcXCIsIEFyaWFsLCBcXFwiTm90byBTYW5zXFxcIiwgXFxcIkxpYmVyYXRpb24gU2Fuc1xcXCIsIHNhbnMtc2VyaWYsIFxcXCJBcHBsZSBDb2xvciBFbW9qaVxcXCIsIFxcXCJTZWdvZSBVSSBFbW9qaVxcXCIsIFxcXCJTZWdvZSBVSSBTeW1ib2xcXFwiLCBcXFwiTm90byBDb2xvciBFbW9qaVxcXCI7XFxuICAtLWJzLWZvbnQtbW9ub3NwYWNlOiBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFxcXCJMaWJlcmF0aW9uIE1vbm9cXFwiLCBcXFwiQ291cmllciBOZXdcXFwiLCBtb25vc3BhY2U7XFxuICAtLWJzLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcXG59XFxuXFxuKixcXG4qOjpiZWZvcmUsXFxuKjo6YWZ0ZXIge1xcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcXG59XFxuXFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XFxuICA6cm9vdCB7XFxuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xcbiAgfVxcbn1cXG5cXG5ib2R5IHtcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LXNhbnMtc2VyaWYpO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XFxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XFxufVxcblxcblt0YWJpbmRleD1cXFwiLTFcXFwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcXG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuaHIge1xcbiAgbWFyZ2luOiAxcmVtIDA7XFxuICBjb2xvcjogaW5oZXJpdDtcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlcjogMDtcXG4gIG9wYWNpdHk6IDAuMjU7XFxufVxcblxcbmhyOm5vdChbc2l6ZV0pIHtcXG4gIGhlaWdodDogMXB4O1xcbn1cXG5cXG5oNiwgLmg2LCBoNSwgLmg1LCBoNCwgLmg0LCBoMywgLmgzLCBoMiwgLmgyLCBoMSwgLmgxIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBmb250LXdlaWdodDogNTAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuXFxuaDEsIC5oMSB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGgxLCAuaDEge1xcbiAgICBmb250LXNpemU6IDIuNXJlbTtcXG4gIH1cXG59XFxuXFxuaDIsIC5oMiB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zMjVyZW0gKyAwLjl2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGgyLCAuaDIge1xcbiAgICBmb250LXNpemU6IDJyZW07XFxuICB9XFxufVxcblxcbmgzLCAuaDMge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuM3JlbSArIDAuNnZ3KTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgaDMsIC5oMyB7XFxuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcXG4gIH1cXG59XFxuXFxuaDQsIC5oNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIGg0LCAuaDQge1xcbiAgICBmb250LXNpemU6IDEuNXJlbTtcXG4gIH1cXG59XFxuXFxuaDUsIC5oNSB7XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcblxcbmg2LCAuaDYge1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbn1cXG5cXG5wIHtcXG4gIG1hcmdpbi10b3A6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbn1cXG5cXG5hYmJyW3RpdGxlXSxcXG5hYmJyW2RhdGEtYnMtb3JpZ2luYWwtdGl0bGVdIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xcbiAgY3Vyc29yOiBoZWxwO1xcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xcbn1cXG5cXG5hZGRyZXNzIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcXG59XFxuXFxub2wsXFxudWwge1xcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xcbn1cXG5cXG5vbCxcXG51bCxcXG5kbCB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG59XFxuXFxub2wgb2wsXFxudWwgdWwsXFxub2wgdWwsXFxudWwgb2wge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuZHQge1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuXFxuZGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcblxcbmJsb2NrcXVvdGUge1xcbiAgbWFyZ2luOiAwIDAgMXJlbTtcXG59XFxuXFxuYixcXG5zdHJvbmcge1xcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcXG59XFxuXFxuc21hbGwsIC5zbWFsbCB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxufVxcblxcbm1hcmssIC5tYXJrIHtcXG4gIHBhZGRpbmc6IDAuMmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcXG59XFxuXFxuc3ViLFxcbnN1cCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmb250LXNpemU6IDAuNzVlbTtcXG4gIGxpbmUtaGVpZ2h0OiAwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbn1cXG5cXG5zdWIge1xcbiAgYm90dG9tOiAtMC4yNWVtO1xcbn1cXG5cXG5zdXAge1xcbiAgdG9wOiAtMC41ZW07XFxufVxcblxcbmEge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG59XFxuYTpob3ZlciB7XFxuICBjb2xvcjogIzBhNThjYTtcXG59XFxuXFxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSksIGE6bm90KFtocmVmXSk6bm90KFtjbGFzc10pOmhvdmVyIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbn1cXG5cXG5wcmUsXFxuY29kZSxcXG5rYmQsXFxuc2FtcCB7XFxuICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpO1xcbiAgZm9udC1zaXplOiAxZW07XFxuICBkaXJlY3Rpb246IGx0ciAvKiBydGw6aWdub3JlICovO1xcbiAgdW5pY29kZS1iaWRpOiBiaWRpLW92ZXJyaWRlO1xcbn1cXG5cXG5wcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIG92ZXJmbG93OiBhdXRvO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbn1cXG5wcmUgY29kZSB7XFxuICBmb250LXNpemU6IGluaGVyaXQ7XFxuICBjb2xvcjogaW5oZXJpdDtcXG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcXG59XFxuXFxuY29kZSB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBjb2xvcjogI2Q2MzM4NDtcXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcXG59XFxuYSA+IGNvZGUge1xcbiAgY29sb3I6IGluaGVyaXQ7XFxufVxcblxcbmtiZCB7XFxuICBwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG5rYmQga2JkIHtcXG4gIHBhZGRpbmc6IDA7XFxuICBmb250LXNpemU6IDFlbTtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxufVxcblxcbmZpZ3VyZSB7XFxuICBtYXJnaW46IDAgMCAxcmVtO1xcbn1cXG5cXG5pbWcsXFxuc3ZnIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxufVxcblxcbnRhYmxlIHtcXG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcXG59XFxuXFxuY2FwdGlvbiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG59XFxuXFxudGgge1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50O1xcbn1cXG5cXG50aGVhZCxcXG50Ym9keSxcXG50Zm9vdCxcXG50cixcXG50ZCxcXG50aCB7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbn1cXG5cXG5sYWJlbCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbmJ1dHRvbiB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG5cXG5idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG5pbnB1dCxcXG5idXR0b24sXFxuc2VsZWN0LFxcbm9wdGdyb3VwLFxcbnRleHRhcmVhIHtcXG4gIG1hcmdpbjogMDtcXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xcbiAgZm9udC1zaXplOiBpbmhlcml0O1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcblxcbmJ1dHRvbixcXG5zZWxlY3Qge1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxufVxcblxcbltyb2xlPWJ1dHRvbl0ge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG5cXG5zZWxlY3Qge1xcbiAgd29yZC13cmFwOiBub3JtYWw7XFxufVxcblxcbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbmJ1dHRvbixcXG5bdHlwZT1idXR0b25dLFxcblt0eXBlPXJlc2V0XSxcXG5bdHlwZT1zdWJtaXRdIHtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xcbn1cXG5idXR0b246bm90KDpkaXNhYmxlZCksXFxuW3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxcXG5bdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksXFxuW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcbjo6LW1vei1mb2N1cy1pbm5lciB7XFxuICBwYWRkaW5nOiAwO1xcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xcbn1cXG5cXG50ZXh0YXJlYSB7XFxuICByZXNpemU6IHZlcnRpY2FsO1xcbn1cXG5cXG5maWVsZHNldCB7XFxuICBtaW4td2lkdGg6IDA7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luOiAwO1xcbiAgYm9yZGVyOiAwO1xcbn1cXG5cXG5sZWdlbmQge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XFxuICBmb250LXNpemU6IGNhbGMoMS4yNzVyZW0gKyAwLjN2dyk7XFxuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgbGVnZW5kIHtcXG4gICAgZm9udC1zaXplOiAxLjVyZW07XFxuICB9XFxufVxcbmxlZ2VuZCArICoge1xcbiAgY2xlYXI6IGxlZnQ7XFxufVxcblxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xcbiAgcGFkZGluZzogMDtcXG59XFxuXFxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuW3R5cGU9c2VhcmNoXSB7XFxuICBvdXRsaW5lLW9mZnNldDogLTJweDtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xcbn1cXG5cXG4vKiBydGw6cmF3Olxcblt0eXBlPVxcXCJ0ZWxcXFwiXSxcXG5bdHlwZT1cXFwidXJsXFxcIl0sXFxuW3R5cGU9XFxcImVtYWlsXFxcIl0sXFxuW3R5cGU9XFxcIm51bWJlclxcXCJdIHtcXG4gIGRpcmVjdGlvbjogbHRyO1xcbn1cXG4qL1xcbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XFxufVxcblxcbjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gtd3JhcHBlciB7XFxuICBwYWRkaW5nOiAwO1xcbn1cXG5cXG46OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIGZvbnQ6IGluaGVyaXQ7XFxufVxcblxcbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgZm9udDogaW5oZXJpdDtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xcbn1cXG5cXG5vdXRwdXQge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG5cXG5pZnJhbWUge1xcbiAgYm9yZGVyOiAwO1xcbn1cXG5cXG5zdW1tYXJ5IHtcXG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxucHJvZ3Jlc3Mge1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbn1cXG5cXG5baGlkZGVuXSB7XFxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5sZWFkIHtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxufVxcblxcbi5kaXNwbGF5LTEge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNjI1cmVtICsgNC41dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTEge1xcbiAgICBmb250LXNpemU6IDVyZW07XFxuICB9XFxufVxcblxcbi5kaXNwbGF5LTIge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuNTc1cmVtICsgMy45dncpO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kaXNwbGF5LTIge1xcbiAgICBmb250LXNpemU6IDQuNXJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktMyB7XFxuICBmb250LXNpemU6IGNhbGMoMS41MjVyZW0gKyAzLjN2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktMyB7XFxuICAgIGZvbnQtc2l6ZTogNHJlbTtcXG4gIH1cXG59XFxuXFxuLmRpc3BsYXktNCB7XFxuICBmb250LXNpemU6IGNhbGMoMS40NzVyZW0gKyAyLjd2dyk7XFxuICBmb250LXdlaWdodDogMzAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMjtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmRpc3BsYXktNCB7XFxuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS01IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjQyNXJlbSArIDIuMXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS01IHtcXG4gICAgZm9udC1zaXplOiAzcmVtO1xcbiAgfVxcbn1cXG5cXG4uZGlzcGxheS02IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjM3NXJlbSArIDEuNXZ3KTtcXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XFxuICBsaW5lLWhlaWdodDogMS4yO1xcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZGlzcGxheS02IHtcXG4gICAgZm9udC1zaXplOiAyLjVyZW07XFxuICB9XFxufVxcblxcbi5saXN0LXVuc3R5bGVkIHtcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5saXN0LWlubGluZSB7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ubGlzdC1pbmxpbmUtaXRlbSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcbi5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XFxufVxcblxcbi5pbml0aWFsaXNtIHtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XFxufVxcblxcbi5ibG9ja3F1b3RlIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcbi5ibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcXG4gIG1hcmdpbi10b3A6IC0xcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYmxvY2txdW90ZS1mb290ZXI6OmJlZm9yZSB7XFxuICBjb250ZW50OiBcXFwi4oCUwqBcXFwiO1xcbn1cXG5cXG4uaW1nLWZsdWlkIHtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuLmltZy10aHVtYm5haWwge1xcbiAgcGFkZGluZzogMC4yNXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuLmZpZ3VyZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcblxcbi5maWd1cmUtaW1nIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbn1cXG5cXG4uZmlndXJlLWNhcHRpb24ge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5jb250YWluZXIsXFxuLmNvbnRhaW5lci1mbHVpZCxcXG4uY29udGFpbmVyLXh4bCxcXG4uY29udGFpbmVyLXhsLFxcbi5jb250YWluZXItbGcsXFxuLmNvbnRhaW5lci1tZCxcXG4uY29udGFpbmVyLXNtIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tYnMtZ3V0dGVyLXgsIDAuNzVyZW0pO1xcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1icy1ndXR0ZXIteCwgMC43NXJlbSk7XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA1NDBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA3MjBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcXG4gICAgbWF4LXdpZHRoOiA5NjBweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogMTE0MHB4O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuY29udGFpbmVyLXh4bCwgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XFxuICAgIG1heC13aWR0aDogMTMyMHB4O1xcbiAgfVxcbn1cXG4ucm93IHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteSkgKiAtMSk7XFxuICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gLTIpO1xcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gLTIpO1xcbn1cXG4ucm93ID4gKiB7XFxuICBmbGV4LXNocmluazogMDtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAyKTtcXG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgLyAyKTtcXG4gIG1hcmdpbi10b3A6IHZhcigtLWJzLWd1dHRlci15KTtcXG59XFxuXFxuLmNvbCB7XFxuICBmbGV4OiAxIDAgMCU7XFxufVxcblxcbi5yb3ctY29scy1hdXRvID4gKiB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG4ucm93LWNvbHMtMSA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLnJvdy1jb2xzLTIgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDUwJTtcXG59XFxuXFxuLnJvdy1jb2xzLTMgPiAqIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ucm93LWNvbHMtNCA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjUlO1xcbn1cXG5cXG4ucm93LWNvbHMtNSA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjAlO1xcbn1cXG5cXG4ucm93LWNvbHMtNiA+ICoge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtYXV0byB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG4uY29sLTEge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLmNvbC0yIHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4uY29sLTMge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMjUlO1xcbn1cXG5cXG4uY29sLTQge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtNSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLmNvbC02IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDUwJTtcXG59XFxuXFxuLmNvbC03IHtcXG4gIGZsZXg6IDAgMCBhdXRvO1xcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4uY29sLTgge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtOSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiA3NSU7XFxufVxcblxcbi5jb2wtMTAge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxufVxcblxcbi5jb2wtMTEge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5jb2wtMTIge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLm9mZnNldC0xIHtcXG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbn1cXG5cXG4ub2Zmc2V0LTIge1xcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbn1cXG5cXG4ub2Zmc2V0LTMge1xcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcXG59XFxuXFxuLm9mZnNldC00IHtcXG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC01IHtcXG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG59XFxuXFxuLm9mZnNldC02IHtcXG4gIG1hcmdpbi1sZWZ0OiA1MCU7XFxufVxcblxcbi5vZmZzZXQtNyB7XFxuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxufVxcblxcbi5vZmZzZXQtOCB7XFxuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5vZmZzZXQtOSB7XFxuICBtYXJnaW4tbGVmdDogNzUlO1xcbn1cXG5cXG4ub2Zmc2V0LTEwIHtcXG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG59XFxuXFxuLm9mZnNldC0xMSB7XFxuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxufVxcblxcbi5nLTAsXFxuLmd4LTAge1xcbiAgLS1icy1ndXR0ZXIteDogMDtcXG59XFxuXFxuLmctMCxcXG4uZ3ktMCB7XFxuICAtLWJzLWd1dHRlci15OiAwO1xcbn1cXG5cXG4uZy0xLFxcbi5neC0xIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxufVxcblxcbi5nLTEsXFxuLmd5LTEge1xcbiAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG59XFxuXFxuLmctMixcXG4uZ3gtMiB7XFxuICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxufVxcblxcbi5nLTIsXFxuLmd5LTIge1xcbiAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbn1cXG5cXG4uZy0zLFxcbi5neC0zIHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxufVxcblxcbi5nLTMsXFxuLmd5LTMge1xcbiAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG59XFxuXFxuLmctNCxcXG4uZ3gtNCB7XFxuICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxufVxcblxcbi5nLTQsXFxuLmd5LTQge1xcbiAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbn1cXG5cXG4uZy01LFxcbi5neC01IHtcXG4gIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxufVxcblxcbi5nLTUsXFxuLmd5LTUge1xcbiAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY29sLXNtIHtcXG4gICAgZmxleDogMSAwIDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLWF1dG8gPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTIgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tMyA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXNtLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtc20tNSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDIwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1zbS02ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLXNtLTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLXNtLTQge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS01IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS03IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tOCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wtc20tMTAge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1zbS0xMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXNtLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTEge1xcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTYge1xcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS03IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1zbS05IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtc20tMTAge1xcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXNtLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmctc20tMCxcXG4uZ3gtc20tMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDA7XFxuICB9XFxuXFxuICAuZy1zbS0wLFxcbi5neS1zbS0wIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMDtcXG4gIH1cXG5cXG4gIC5nLXNtLTEsXFxuLmd4LXNtLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMSxcXG4uZ3ktc20tMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1zbS0yLFxcbi5neC1zbS0yIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tMixcXG4uZ3ktc20tMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTMsXFxuLmd4LXNtLTMge1xcbiAgICAtLWJzLWd1dHRlci14OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctc20tMyxcXG4uZ3ktc20tMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDFyZW07XFxuICB9XFxuXFxuICAuZy1zbS00LFxcbi5neC1zbS00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctc20tNCxcXG4uZ3ktc20tNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXNtLTUsXFxuLmd4LXNtLTUge1xcbiAgICAtLWJzLWd1dHRlci14OiAzcmVtO1xcbiAgfVxcblxcbiAgLmctc20tNSxcXG4uZ3ktc20tNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmNvbC1tZCB7XFxuICAgIGZsZXg6IDEgMCAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1tZC00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLW1kLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbWQtNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC1tZC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLW1kLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLW1kLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbWQtMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1tZC0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbWQtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LW1kLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1tZC0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLW1kLTAsXFxuLmd4LW1kLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmctbWQtMCxcXG4uZ3ktbWQtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy1tZC0xLFxcbi5neC1tZC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTEsXFxuLmd5LW1kLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmctbWQtMixcXG4uZ3gtbWQtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTIsXFxuLmd5LW1kLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC0zLFxcbi5neC1tZC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTMsXFxuLmd5LW1kLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmctbWQtNCxcXG4uZ3gtbWQtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTQsXFxuLmd5LW1kLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1tZC01LFxcbi5neC1tZC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLW1kLTUsXFxuLmd5LW1kLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcXG4gIC5jb2wtbGcge1xcbiAgICBmbGV4OiAxIDAgMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctMSA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctMiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMtbGctNCA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy1sZy01ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctYXV0byB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5jb2wtbGctMSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTMge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDI1JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctNCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC1sZy02IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA1MCU7XFxuICB9XFxuXFxuICAuY29sLWxnLTcge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctOSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNzUlO1xcbiAgfVxcblxcbiAgLmNvbC1sZy0xMCB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLWxnLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wtbGctMTIge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctNiB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTgge1xcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LWxnLTkge1xcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC1sZy0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQtbGctMTEge1xcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuZy1sZy0wLFxcbi5neC1sZy0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLWxnLTAsXFxuLmd5LWxnLTAge1xcbiAgICAtLWJzLWd1dHRlci15OiAwO1xcbiAgfVxcblxcbiAgLmctbGctMSxcXG4uZ3gtbGctMSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuMjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0xLFxcbi5neS1sZy0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTIsXFxuLmd4LWxnLTIge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy0yLFxcbi5neS1sZy0yIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctMyxcXG4uZ3gtbGctMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy1sZy0zLFxcbi5neS1sZy0zIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLWxnLTQsXFxuLmd4LWxnLTQge1xcbiAgICAtLWJzLWd1dHRlci14OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy1sZy00LFxcbi5neS1sZy00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmctbGctNSxcXG4uZ3gtbGctNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDNyZW07XFxuICB9XFxuXFxuICAuZy1sZy01LFxcbi5neS1sZy01IHtcXG4gICAgLS1icy1ndXR0ZXIteTogM3JlbTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmNvbC14bCB7XFxuICAgIGZsZXg6IDEgMCAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC1hdXRvID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogYXV0bztcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC0xID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTMgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14bC00ID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXhsLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteGwtNiA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC1hdXRvIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14bC0yIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMjUlO1xcbiAgfVxcblxcbiAgLmNvbC14bC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNSB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTYge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDUwJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXhsLTgge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC05IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA3NSU7XFxuICB9XFxuXFxuICAuY29sLXhsLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteGwtMTEge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14bC0xMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtNyB7XFxuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtOCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteGwtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXhsLTEwIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14bC0xMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5nLXhsLTAsXFxuLmd4LXhsLTAge1xcbiAgICAtLWJzLWd1dHRlci14OiAwO1xcbiAgfVxcblxcbiAgLmcteGwtMCxcXG4uZ3kteGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy14bC0xLFxcbi5neC14bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTEsXFxuLmd5LXhsLTEge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteGwtMixcXG4uZ3gteGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTIsXFxuLmd5LXhsLTIge1xcbiAgICAtLWJzLWd1dHRlci15OiAwLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC0zLFxcbi5neC14bC0zIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTMsXFxuLmd5LXhsLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteGwtNCxcXG4uZ3gteGwtNCB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDEuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTQsXFxuLmd5LXhsLTQge1xcbiAgICAtLWJzLWd1dHRlci15OiAxLjVyZW07XFxuICB9XFxuXFxuICAuZy14bC01LFxcbi5neC14bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLXhsLTUsXFxuLmd5LXhsLTUge1xcbiAgICAtLWJzLWd1dHRlci15OiAzcmVtO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuY29sLXh4bCB7XFxuICAgIGZsZXg6IDEgMCAwJTtcXG4gIH1cXG5cXG4gIC5yb3ctY29scy14eGwtYXV0byA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTEgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC0yID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLnJvdy1jb2xzLXh4bC0zID4gKiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTQgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTUgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyMCU7XFxuICB9XFxuXFxuICAucm93LWNvbHMteHhsLTYgPiAqIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLWF1dG8ge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxuXFxuICAuY29sLXh4bC0xIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtMiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC0zIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAyNSU7XFxuICB9XFxuXFxuICAuY29sLXh4bC00IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTUge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNiB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTAlO1xcbiAgfVxcblxcbiAgLmNvbC14eGwtNyB7XFxuICAgIGZsZXg6IDAgMCBhdXRvO1xcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAuY29sLXh4bC04IHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTkge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDc1JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTEwIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTExIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5jb2wteHhsLTEyIHtcXG4gICAgZmxleDogMCAwIGF1dG87XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTUge1xcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC02IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTcge1xcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC04IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLm9mZnNldC14eGwtOSB7XFxuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XFxuICB9XFxuXFxuICAub2Zmc2V0LXh4bC0xMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcXG4gIH1cXG5cXG4gIC5vZmZzZXQteHhsLTExIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xcbiAgfVxcblxcbiAgLmcteHhsLTAsXFxuLmd4LXh4bC0wIHtcXG4gICAgLS1icy1ndXR0ZXIteDogMDtcXG4gIH1cXG5cXG4gIC5nLXh4bC0wLFxcbi5neS14eGwtMCB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDA7XFxuICB9XFxuXFxuICAuZy14eGwtMSxcXG4uZ3gteHhsLTEge1xcbiAgICAtLWJzLWd1dHRlci14OiAwLjI1cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTEsXFxuLmd5LXh4bC0xIHtcXG4gICAgLS1icy1ndXR0ZXIteTogMC4yNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0yLFxcbi5neC14eGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0yLFxcbi5neS14eGwtMiB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDAuNXJlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC0zLFxcbi5neC14eGwtMyB7XFxuICAgIC0tYnMtZ3V0dGVyLXg6IDFyZW07XFxuICB9XFxuXFxuICAuZy14eGwtMyxcXG4uZ3kteHhsLTMge1xcbiAgICAtLWJzLWd1dHRlci15OiAxcmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTQsXFxuLmd4LXh4bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteDogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTQsXFxuLmd5LXh4bC00IHtcXG4gICAgLS1icy1ndXR0ZXIteTogMS41cmVtO1xcbiAgfVxcblxcbiAgLmcteHhsLTUsXFxuLmd4LXh4bC01IHtcXG4gICAgLS1icy1ndXR0ZXIteDogM3JlbTtcXG4gIH1cXG5cXG4gIC5nLXh4bC01LFxcbi5neS14eGwtNSB7XFxuICAgIC0tYnMtZ3V0dGVyLXk6IDNyZW07XFxuICB9XFxufVxcbi50YWJsZSB7XFxuICAtLWJzLXRhYmxlLWJnOiB0cmFuc3BhcmVudDtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzIxMjUyOTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogcmdiYSgwLCAwLCAwLCAwLjA1KTtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6IHJnYmEoMCwgMCwgMCwgMC4xKTtcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMyMTI1Mjk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNjtcXG59XFxuLnRhYmxlID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW07XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy10YWJsZS1iZyk7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XFxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tYnMtdGFibGUtYWNjZW50LWJnKTtcXG59XFxuLnRhYmxlID4gdGJvZHkge1xcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XFxufVxcbi50YWJsZSA+IHRoZWFkIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XFxufVxcbi50YWJsZSA+IDpub3QoOmxhc3QtY2hpbGQpID4gOmxhc3QtY2hpbGQgPiAqIHtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRDb2xvcjtcXG59XFxuXFxuLmNhcHRpb24tdG9wIHtcXG4gIGNhcHRpb24tc2lkZTogdG9wO1xcbn1cXG5cXG4udGFibGUtc20gPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjI1cmVtO1xcbn1cXG5cXG4udGFibGUtYm9yZGVyZWQgPiA6bm90KGNhcHRpb24pID4gKiB7XFxuICBib3JkZXItd2lkdGg6IDFweCAwO1xcbn1cXG4udGFibGUtYm9yZGVyZWQgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgYm9yZGVyLXdpZHRoOiAwIDFweDtcXG59XFxuXFxuLnRhYmxlLWJvcmRlcmxlc3MgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG59XFxuXFxuLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkge1xcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHZhcigtLWJzLXRhYmxlLXN0cmlwZWQtYmcpO1xcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3IpO1xcbn1cXG5cXG4udGFibGUtYWN0aXZlIHtcXG4gIC0tYnMtdGFibGUtYWNjZW50LWJnOiB2YXIoLS1icy10YWJsZS1hY3RpdmUtYmcpO1xcbiAgY29sb3I6IHZhcigtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcik7XFxufVxcblxcbi50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHI6aG92ZXIge1xcbiAgLS1icy10YWJsZS1hY2NlbnQtYmc6IHZhcigtLWJzLXRhYmxlLWhvdmVyLWJnKTtcXG4gIGNvbG9yOiB2YXIoLS1icy10YWJsZS1ob3Zlci1jb2xvcik7XFxufVxcblxcbi50YWJsZS1wcmltYXJ5IHtcXG4gIC0tYnMtdGFibGUtYmc6ICNjZmUyZmY7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNjNWQ3ZjI7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JhY2JlNjtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2JmZDFlYztcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2JhY2JlNjtcXG59XFxuXFxuLnRhYmxlLXNlY29uZGFyeSB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZTJlM2U1O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZDdkOGRhO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNjYmNjY2U7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNkMWQyZDQ7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNjYmNjY2U7XFxufVxcblxcbi50YWJsZS1zdWNjZXNzIHtcXG4gIC0tYnMtdGFibGUtYmc6ICNkMWU3ZGQ7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtYmc6ICNjN2RiZDI7XFxuICAtLWJzLXRhYmxlLXN0cmlwZWQtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1iZzogI2JjZDBjNztcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1ob3Zlci1iZzogI2MxZDZjYztcXG4gIC0tYnMtdGFibGUtaG92ZXItY29sb3I6ICMwMDA7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJvcmRlci1jb2xvcjogI2JjZDBjNztcXG59XFxuXFxuLnRhYmxlLWluZm8ge1xcbiAgLS1icy10YWJsZS1iZzogI2NmZjRmYztcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2M1ZThlZjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjYmFkY2UzO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjYmZlMmU5O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmFkY2UzO1xcbn1cXG5cXG4udGFibGUtd2FybmluZyB7XFxuICAtLWJzLXRhYmxlLWJnOiAjZmZmM2NkO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjZjJlN2MzO1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjMDAwO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICNlNmRiYjk7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICNlY2UxYmU7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjMDAwO1xcbiAgY29sb3I6ICMwMDA7XFxuICBib3JkZXItY29sb3I6ICNlNmRiYjk7XFxufVxcblxcbi50YWJsZS1kYW5nZXIge1xcbiAgLS1icy10YWJsZS1iZzogI2Y4ZDdkYTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2VjY2NjZjtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZjMmM0O1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZTVjN2NhO1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGZjMmM0O1xcbn1cXG5cXG4udGFibGUtbGlnaHQge1xcbiAgLS1icy10YWJsZS1iZzogI2Y4ZjlmYTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1iZzogI2VjZWRlZTtcXG4gIC0tYnMtdGFibGUtc3RyaXBlZC1jb2xvcjogIzAwMDtcXG4gIC0tYnMtdGFibGUtYWN0aXZlLWJnOiAjZGZlMGUxO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtY29sb3I6ICMwMDA7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWJnOiAjZTVlNmU3O1xcbiAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogIzAwMDtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGZlMGUxO1xcbn1cXG5cXG4udGFibGUtZGFyayB7XFxuICAtLWJzLXRhYmxlLWJnOiAjMjEyNTI5O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiAjMmMzMDM0O1xcbiAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjZmZmO1xcbiAgLS1icy10YWJsZS1hY3RpdmUtYmc6ICMzNzNiM2U7XFxuICAtLWJzLXRhYmxlLWFjdGl2ZS1jb2xvcjogI2ZmZjtcXG4gIC0tYnMtdGFibGUtaG92ZXItYmc6ICMzMjM1Mzk7XFxuICAtLWJzLXRhYmxlLWhvdmVyLWNvbG9yOiAjZmZmO1xcbiAgY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICMzNzNiM2U7XFxufVxcblxcbi50YWJsZS1yZXNwb25zaXZlIHtcXG4gIG92ZXJmbG93LXg6IGF1dG87XFxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxufVxcblxcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbWQge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xcbiAgLnRhYmxlLXJlc3BvbnNpdmUtbGcge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcXG4gIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcXG4gICAgb3ZlcmZsb3cteDogYXV0bztcXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogMTM5OS45OHB4KSB7XFxuICAudGFibGUtcmVzcG9uc2l2ZS14eGwge1xcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XFxuICB9XFxufVxcbi5mb3JtLWxhYmVsIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsIHtcXG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBmb250LXNpemU6IGluaGVyaXQ7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbn1cXG5cXG4uY29sLWZvcm0tbGFiZWwtbGcge1xcbiAgcGFkZGluZy10b3A6IGNhbGMoMC41cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxufVxcblxcbi5jb2wtZm9ybS1sYWJlbC1zbSB7XFxuICBwYWRkaW5nLXRvcDogY2FsYygwLjI1cmVtICsgMXB4KTtcXG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG59XFxuXFxuLmZvcm0tdGV4dCB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5mb3JtLWNvbnRyb2wge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1jb250cm9sIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tY29udHJvbFt0eXBlPWZpbGVdIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5mb3JtLWNvbnRyb2xbdHlwZT1maWxlXTpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbn1cXG4uZm9ybS1jb250cm9sOmZvY3VzIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcXG4gIGhlaWdodDogMS41ZW07XFxufVxcbi5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgb3BhY2l0eTogMTtcXG59XFxuLmZvcm0tY29udHJvbDpkaXNhYmxlZCwgLmZvcm0tY29udHJvbFtyZWFkb25seV0ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIG9wYWNpdHk6IDE7XFxufVxcbi5mb3JtLWNvbnRyb2w6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBtYXJnaW46IC0wLjM3NXJlbSAtMC43NXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjc1cmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IDFweDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tY29udHJvbDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1jb250cm9sOmhvdmVyOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKTo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZTBlMztcXG59XFxuLmZvcm0tY29udHJvbDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG4gIG1hcmdpbjogLTAuMzc1cmVtIC0wLjc1cmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNzVyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICBib3JkZXItd2lkdGg6IDA7XFxuICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogMXB4O1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1jb250cm9sOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLWNvbnRyb2w6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRlMGUzO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaW5lLWhlaWdodDogMS41O1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItd2lkdGg6IDFweCAwO1xcbn1cXG4uZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtc20sIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1sZyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLXNtIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLXNtOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIG1hcmdpbjogLTAuMjVyZW0gLTAuNXJlbTtcXG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAwLjVyZW07XFxufVxcbi5mb3JtLWNvbnRyb2wtc206Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luOiAtMC4yNXJlbSAtMC41cmVtO1xcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNXJlbTtcXG59XFxuXFxuLmZvcm0tY29udHJvbC1sZyB7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcXG59XFxuLmZvcm0tY29udHJvbC1sZzo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcXG59XFxuLmZvcm0tY29udHJvbC1sZzo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW46IC0wLjVyZW0gLTFyZW07XFxuICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcXG59XFxuXFxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTtcXG59XFxudGV4dGFyZWEuZm9ybS1jb250cm9sLXNtIHtcXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xcbn1cXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wtbGcge1xcbiAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDFyZW0gKyAycHgpO1xcbn1cXG5cXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcXG4gIG1heC13aWR0aDogM3JlbTtcXG4gIGhlaWdodDogYXV0bztcXG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcbi5mb3JtLWNvbnRyb2wtY29sb3I6Oi1tb3otY29sb3Itc3dhdGNoIHtcXG4gIGhlaWdodDogMS41ZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAyLjI1cmVtIDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuLmZvcm0tc2VsZWN0OmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tc2VsZWN0W211bHRpcGxlXSwgLmZvcm0tc2VsZWN0W3NpemVdOm5vdChbc2l6ZT1cXFwiMVxcXCJdKSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG59XFxuLmZvcm0tc2VsZWN0OmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG59XFxuLmZvcm0tc2VsZWN0Oi1tb3otZm9jdXNyaW5nIHtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIHRleHQtc2hhZG93OiAwIDAgMCAjMjEyNTI5O1xcbn1cXG5cXG4uZm9ybS1zZWxlY3Qtc20ge1xcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG59XFxuXFxuLmZvcm0tc2VsZWN0LWxnIHtcXG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG5cXG4uZm9ybS1jaGVjayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIG1pbi1oZWlnaHQ6IDEuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMS41ZW07XFxuICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcXG59XFxuLmZvcm0tY2hlY2sgLmZvcm0tY2hlY2staW5wdXQge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICBtYXJnaW4tbGVmdDogLTEuNWVtO1xcbn1cXG5cXG4uZm9ybS1jaGVjay1pbnB1dCB7XFxuICB3aWR0aDogMWVtO1xcbiAgaGVpZ2h0OiAxZW07XFxuICBtYXJnaW4tdG9wOiAwLjI1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG4gIGNvbG9yLWFkanVzdDogZXhhY3Q7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXRbdHlwZT1yYWRpb10ge1xcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDphY3RpdmUge1xcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDkwJSk7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcXG4gIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcXG4gIG91dGxpbmU6IDA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9Y2hlY2tib3hdIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBsMyAzbDYtNicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkW3R5cGU9cmFkaW9dIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMicgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5mb3JtLWNoZWNrLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG4uZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGZpbHRlcjogbm9uZTtcXG4gIG9wYWNpdHk6IDAuNTtcXG59XFxuLmZvcm0tY2hlY2staW5wdXRbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG5cXG4uZm9ybS1zd2l0Y2gge1xcbiAgcGFkZGluZy1sZWZ0OiAyLjVlbTtcXG59XFxuLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gIHdpZHRoOiAyZW07XFxuICBtYXJnaW4tbGVmdDogLTIuNWVtO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPSdyZ2JhJTI4MCwgMCwgMCwgMC4yNSUyOScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XFxuICBib3JkZXItcmFkaXVzOiAyZW07XFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMTVzIGVhc2UtaW4tb3V0O1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tc3dpdGNoIC5mb3JtLWNoZWNrLWlucHV0OmZvY3VzIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzODZiN2ZlJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcbi5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXFxcIik7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW07XFxufVxcblxcbi5idG4tY2hlY2sge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4uYnRuLWNoZWNrW2Rpc2FibGVkXSArIC5idG4sIC5idG4tY2hlY2s6ZGlzYWJsZWQgKyAuYnRuIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgZmlsdGVyOiBub25lO1xcbiAgb3BhY2l0eTogMC42NTtcXG59XFxuXFxuLmZvcm0tcmFuZ2Uge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEuNXJlbTtcXG4gIHBhZGRpbmc6IDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzIHtcXG4gIG91dGxpbmU6IDA7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5mb3JtLXJhbmdlOmZvY3VzOjotbW96LXJhbmdlLXRodW1iIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otZm9jdXMtb3V0ZXIge1xcbiAgYm9yZGVyOiAwO1xcbn1cXG4uZm9ybS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxuICBtYXJnaW4tdG9wOiAtMC4yNXJlbTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAxcmVtO1xcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mb3JtLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I2ZDRmZTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAwLjVyZW07XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGVlMmU2O1xcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XFxufVxcbi5mb3JtLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcXG4gIHdpZHRoOiAxcmVtO1xcbiAgaGVpZ2h0OiAxcmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XFxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uZm9ybS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I2ZDRmZTtcXG59XFxuLmZvcm0tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2sge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDAuNXJlbTtcXG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWUyZTY7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcXG59XFxuLmZvcm0tcmFuZ2U6ZGlzYWJsZWQge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxufVxcbi5mb3JtLXJhbmdlOmRpc2FibGVkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xcbn1cXG4uZm9ybS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10aHVtYiB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiNWJkO1xcbn1cXG5cXG4uZm9ybS1mbG9hdGluZyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbCxcXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XFxuICBoZWlnaHQ6IGNhbGMoMy41cmVtICsgMnB4KTtcXG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiBsYWJlbCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZm9ybS1mbG9hdGluZyA+IGxhYmVsIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XFxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cywgLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcXG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcXG59XFxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xcbiAgcGFkZGluZy10b3A6IDEuNjI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLXNlbGVjdCB7XFxuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XFxufVxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpmb2N1cyB+IGxhYmVsLFxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IGxhYmVsLFxcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tc2VsZWN0IH4gbGFiZWwge1xcbiAgb3BhY2l0eTogMC42NTtcXG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSkgdHJhbnNsYXRlWSgtMC41cmVtKSB0cmFuc2xhdGVYKDAuMTVyZW0pO1xcbn1cXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCB+IGxhYmVsIHtcXG4gIG9wYWNpdHk6IDAuNjU7XFxuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHRyYW5zbGF0ZVkoLTAuNXJlbSkgdHJhbnNsYXRlWCgwLjE1cmVtKTtcXG59XFxuXFxuLmlucHV0LWdyb3VwIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcXG4gIHdpZHRoOiAxMDAlO1xcbn1cXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLFxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHdpZHRoOiAxJTtcXG4gIG1pbi13aWR0aDogMDtcXG59XFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cyxcXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG59XFxuLmlucHV0LWdyb3VwIC5idG4ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMjtcXG59XFxuLmlucHV0LWdyb3VwIC5idG46Zm9jdXMge1xcbiAgei1pbmRleDogMztcXG59XFxuXFxuLmlucHV0LWdyb3VwLXRleHQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgZm9udC13ZWlnaHQ6IDQwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2NlZDRkYTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xcbn1cXG5cXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1zZWxlY3QsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDNyZW07XFxufVxcblxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpLFxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiszKSB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiA6bnRoLWxhc3QtY2hpbGQobiszKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4rNCkge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuLmlucHV0LWdyb3VwID4gOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC52YWxpZC10b29sdGlwKTpub3QoLnZhbGlkLWZlZWRiYWNrKTpub3QoLmludmFsaWQtdG9vbHRpcCk6bm90KC5pbnZhbGlkLWZlZWRiYWNrKSB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG5cXG4udmFsaWQtZmVlZGJhY2sge1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbn1cXG5cXG4udmFsaWQtdG9vbHRpcCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDEwMCU7XFxuICB6LWluZGV4OiA1O1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNSwgMTM1LCA4NCwgMC45KTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcXG4ud2FzLXZhbGlkYXRlZCA6dmFsaWQgfiAudmFsaWQtdG9vbHRpcCxcXG4uaXMtdmFsaWQgfiAudmFsaWQtZmVlZGJhY2ssXFxuLmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVlbSArIDAuNzVyZW0pO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyUyMzE5ODc1NCcgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZDpmb2N1cywgLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuMjUpO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygwLjM3NWVtICsgMC4xODc1cmVtKSByaWdodCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pO1xcbn1cXG5cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6dmFsaWQsIC5mb3JtLXNlbGVjdC5pcy12YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxuICBwYWRkaW5nLXJpZ2h0OiA0LjEyNXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIiksIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMxOTg3NTQnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAuNzVyZW0gY2VudGVyLCBjZW50ZXIgcmlnaHQgMi4yNXJlbTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4LCBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tc2VsZWN0OnZhbGlkOmZvY3VzLCAuZm9ybS1zZWxlY3QuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQ6Y2hlY2tlZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Y2hlY2tlZCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZDpmb2N1cywgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQ6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1LCAxMzUsIDg0LCAwLjI1KTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XFxuICBjb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IH4gLnZhbGlkLWZlZWRiYWNrIHtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcXG59XFxuXFxuLmludmFsaWQtZmVlZGJhY2sge1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbn1cXG5cXG4uaW52YWxpZC10b29sdGlwIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMTAwJTtcXG4gIHotaW5kZXg6IDU7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBtYXJnaW4tdG9wOiAwLjFyZW07XFxuICBmb250LXNpemU6IDAuODc1cmVtO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIyMCwgNTMsIDY5LCAwLjkpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcXG4ud2FzLXZhbGlkYXRlZCA6aW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAsXFxuLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6aW52YWxpZCwgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NSclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSkgY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKSBjYWxjKDAuNzVlbSArIDAuMzc1cmVtKTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkOmZvY3VzLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgdGV4dGFyZWEuZm9ybS1jb250cm9sOmludmFsaWQsIHRleHRhcmVhLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkIHtcXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtKTtcXG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKDAuMzc1ZW0gKyAwLjE4NzVyZW0pIHJpZ2h0IGNhbGMoMC4zNzVlbSArIDAuMTg3NXJlbSk7XFxufVxcblxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLXNlbGVjdDppbnZhbGlkLCAuZm9ybS1zZWxlY3QuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxuICBwYWRkaW5nLXJpZ2h0OiA0LjEyNXJlbTtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM2UlM2NwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzMzQzYTQwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8lM2UlM2Mvc3ZnJTNlXFxcIiksIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyUyM2RjMzU0NSclM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLyUzZSUzY3BhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8lM2UlM2NjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPSclMjNkYzM1NDUnIHN0cm9rZT0nbm9uZScvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC43NXJlbSBjZW50ZXIsIGNlbnRlciByaWdodCAyLjI1cmVtO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHgsIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pIGNhbGMoMC43NWVtICsgMC4zNzVyZW0pO1xcbn1cXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1zZWxlY3Q6aW52YWxpZDpmb2N1cywgLmZvcm0tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuXFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Y2hlY2tlZCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZDpjaGVja2VkIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxufVxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQ6Zm9jdXMsIC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjI1KTtcXG59XFxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6aW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkIH4gLmZvcm0tY2hlY2stbGFiZWwge1xcbiAgY29sb3I6ICNkYzM1NDU7XFxufVxcblxcbi5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB+IC5pbnZhbGlkLWZlZWRiYWNrIHtcXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcXG59XFxuXFxuLmJ0biB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIHVzZXItc2VsZWN0OiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDFyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5idG4ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uYnRuOmhvdmVyIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0biwgLmJ0bjpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcbi5idG46ZGlzYWJsZWQsIC5idG4uZGlzYWJsZWQsIGZpZWxkc2V0OmRpc2FibGVkIC5idG4ge1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBvcGFjaXR5OiAwLjY1O1xcbn1cXG5cXG4uYnRuLXByaW1hcnkge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLXByaW1hcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI1ZWQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMGE1OGNhO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1wcmltYXJ5LCAuYnRuLXByaW1hcnk6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI1ZWQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMGE1OGNhO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDQ5LCAxMzIsIDI1MywgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1wcmltYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeSwgLmJ0bi1wcmltYXJ5OmFjdGl2ZSwgLmJ0bi1wcmltYXJ5LmFjdGl2ZSwgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhNThjYTtcXG4gIGJvcmRlci1jb2xvcjogIzBhNTNiZTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1wcmltYXJ5OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tcHJpbWFyeTpmb2N1cywgLmJ0bi1wcmltYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1wcmltYXJ5LmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg0OSwgMTMyLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tcHJpbWFyeTpkaXNhYmxlZCwgLmJ0bi1wcmltYXJ5LmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuXFxuLmJ0bi1zZWNvbmRhcnkge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM1YzYzNmE7XFxuICBib3JkZXItY29sb3I6ICM1NjVlNjQ7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXNlY29uZGFyeSwgLmJ0bi1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWM2MzZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjNTY1ZTY0O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzMCwgMTM4LCAxNDUsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tc2Vjb25kYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc2Vjb25kYXJ5LCAuYnRuLXNlY29uZGFyeTphY3RpdmUsIC5idG4tc2Vjb25kYXJ5LmFjdGl2ZSwgLnNob3cgPiAuYnRuLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY1ZTY0O1xcbiAgYm9yZGVyLWNvbG9yOiAjNTE1ODVlO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzLCAuYnRuLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMzAsIDEzOCwgMTQ1LCAwLjUpO1xcbn1cXG4uYnRuLXNlY29uZGFyeTpkaXNhYmxlZCwgLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG5cXG4uYnRuLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLXN1Y2Nlc3M6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU3MzQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTQ2YzQzO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1zdWNjZXNzLCAuYnRuLXN1Y2Nlc3M6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTU3MzQ3O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTQ2YzQzO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDYwLCAxNTMsIDExMCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zdWNjZXNzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc3VjY2VzcywgLmJ0bi1zdWNjZXNzOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0NmM0MztcXG4gIGJvcmRlci1jb2xvcjogIzEzNjUzZjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1zdWNjZXNzOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tc3VjY2Vzczpmb2N1cywgLmJ0bi1zdWNjZXNzOmFjdGl2ZTpmb2N1cywgLmJ0bi1zdWNjZXNzLmFjdGl2ZTpmb2N1cywgLnNob3cgPiAuYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSg2MCwgMTUzLCAxMTAsIDAuNSk7XFxufVxcbi5idG4tc3VjY2VzczpkaXNhYmxlZCwgLmJ0bi1zdWNjZXNzLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuXFxuLmJ0bi1pbmZvIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkY2FmMDtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMDtcXG59XFxuLmJ0bi1pbmZvOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxZDJmMjtcXG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4taW5mbywgLmJ0bi1pbmZvOmZvY3VzIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxZDJmMjtcXG4gIGJvcmRlci1jb2xvcjogIzI1Y2ZmMjtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMSwgMTcyLCAyMDQsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4taW5mbywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWluZm8sIC5idG4taW5mbzphY3RpdmUsIC5idG4taW5mby5hY3RpdmUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzZGQ1ZjM7XFxuICBib3JkZXItY29sb3I6ICMyNWNmZjI7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4taW5mbzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWluZm86Zm9jdXMsIC5idG4taW5mbzphY3RpdmU6Zm9jdXMsIC5idG4taW5mby5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTEsIDE3MiwgMjA0LCAwLjUpO1xcbn1cXG4uYnRuLWluZm86ZGlzYWJsZWQsIC5idG4taW5mby5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcblxcbi5idG4td2FybmluZyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4td2FybmluZzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNhMmM7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzpmb2N1cyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNhMmM7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjE3LCAxNjQsIDYsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4td2FybmluZywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXdhcm5pbmcsIC5idG4td2FybmluZzphY3RpdmUsIC5idG4td2FybmluZy5hY3RpdmUsIC5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmNkMzk7XFxuICBib3JkZXItY29sb3I6ICNmZmM3MjA7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4td2FybmluZzpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLXdhcm5pbmc6Zm9jdXMsIC5idG4td2FybmluZzphY3RpdmU6Zm9jdXMsIC5idG4td2FybmluZy5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjE3LCAxNjQsIDYsIDAuNSk7XFxufVxcbi5idG4td2FybmluZzpkaXNhYmxlZCwgLmJ0bi13YXJuaW5nLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuXFxuLmJ0bi1kYW5nZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLWRhbmdlcjpob3ZlciB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjJkM2I7XFxuICBib3JkZXItY29sb3I6ICNiMDJhMzc7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLWRhbmdlciwgLmJ0bi1kYW5nZXI6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmIyZDNiO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjAyYTM3O1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyNSwgODMsIDk3LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLWRhbmdlciwgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhbmdlciwgLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuLWRhbmdlci5hY3RpdmUsIC5zaG93ID4gLmJ0bi1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2IwMmEzNztcXG4gIGJvcmRlci1jb2xvcjogI2E1MjgzNDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1kYW5nZXI6Zm9jdXMsIC5idG4tZGFuZ2VyOmFjdGl2ZTpmb2N1cywgLmJ0bi1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjI1LCA4MywgOTcsIDAuNSk7XFxufVxcbi5idG4tZGFuZ2VyOmRpc2FibGVkLCAuYnRuLWRhbmdlci5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcblxcbi5idG4tbGlnaHQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4uYnRuLWxpZ2h0OmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tbGlnaHQsIC5idG4tbGlnaHQ6Zm9jdXMge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjlmYWZiO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxMSwgMjEyLCAyMTMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tbGlnaHQsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1saWdodCwgLmJ0bi1saWdodDphY3RpdmUsIC5idG4tbGlnaHQuYWN0aXZlLCAuc2hvdyA+IC5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcXG4gIGJvcmRlci1jb2xvcjogI2Y5ZmFmYjtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWxpZ2h0OmZvY3VzLCAuYnRuLWxpZ2h0OmFjdGl2ZTpmb2N1cywgLmJ0bi1saWdodC5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIxMSwgMjEyLCAyMTMsIDAuNSk7XFxufVxcbi5idG4tbGlnaHQ6ZGlzYWJsZWQsIC5idG4tbGlnaHQuZGlzYWJsZWQge1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbiAgYm9yZGVyLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG5cXG4uYnRuLWRhcmsge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWRhcms6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMWExZTIxO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1kYXJrLCAuYnRuLWRhcms6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWMxZjIzO1xcbiAgYm9yZGVyLWNvbG9yOiAjMWExZTIxO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDY2LCA3MCwgNzMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFyaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhcmssIC5idG4tZGFyazphY3RpdmUsIC5idG4tZGFyay5hY3RpdmUsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTFlMjE7XFxuICBib3JkZXItY29sb3I6ICMxOTFjMWY7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tZGFyazpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLWRhcms6Zm9jdXMsIC5idG4tZGFyazphY3RpdmU6Zm9jdXMsIC5idG4tZGFyay5hY3RpdmU6Zm9jdXMsIC5zaG93ID4gLmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoNjYsIDcwLCA3MywgMC41KTtcXG59XFxuLmJ0bi1kYXJrOmRpc2FibGVkLCAuYnRuLWRhcmsuZGlzYWJsZWQge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLXByaW1hcnksIC5idG4tb3V0bGluZS1wcmltYXJ5OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1wcmltYXJ5LCAuYnRuLW91dGxpbmUtcHJpbWFyeTphY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtcHJpbWFyeTpmb2N1cywgLmJ0bi1vdXRsaW5lLXByaW1hcnk6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1wcmltYXJ5OmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeS5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzBkNmVmZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xcbn1cXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zZWNvbmRhcnksIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTphY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuYWN0aXZlLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZjNzU3ZDtcXG4gIGJvcmRlci1jb2xvcjogIzZjNzU3ZDtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NDtcXG4gIGJvcmRlci1jb2xvcjogIzE5ODc1NDtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjUsIDEzNSwgODQsIDAuNSk7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1zdWNjZXNzLCAuYnRuLW91dGxpbmUtc3VjY2VzczphY3RpdmUsIC5idG4tb3V0bGluZS1zdWNjZXNzLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlLnNob3cge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk4NzU0O1xcbiAgYm9yZGVyLWNvbG9yOiAjMTk4NzU0O1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtc3VjY2Vzczpmb2N1cywgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtc3VjY2Vzcy5hY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNSwgMTM1LCA4NCwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMTk4NzU0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS1pbmZvIHtcXG4gIGNvbG9yOiAjMGRjYWYwO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGRjYWYwO1xcbn1cXG4uYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAyMDIsIDI0MCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWluZm8sIC5idG4tb3V0bGluZS1pbmZvOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWluZm8uYWN0aXZlLCAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZGNhZjA7XFxuICBib3JkZXItY29sb3I6ICMwZGNhZjA7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1pbmZvOmZvY3VzLCAuYnRuLW91dGxpbmUtaW5mbzphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1pbmZvLmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWluZm8uZHJvcGRvd24tdG9nZ2xlLnNob3c6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAyMDIsIDI0MCwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWluZm86ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1pbmZvLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMGRjYWYwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tb3V0bGluZS13YXJuaW5nIHtcXG4gIGNvbG9yOiAjZmZjMTA3O1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3O1xcbn1cXG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDc7XFxuICBib3JkZXItY29sb3I6ICNmZmMxMDc7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDI1NSwgMTkzLCA3LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtd2FybmluZywgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZy5hY3RpdmUsIC5idG4tb3V0bGluZS13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzEwNztcXG4gIGJvcmRlci1jb2xvcjogI2ZmYzEwNztcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXMsIC5idG4tb3V0bGluZS13YXJuaW5nOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLXdhcm5pbmcuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjU1LCAxOTMsIDcsIDAuNSk7XFxufVxcbi5idG4tb3V0bGluZS13YXJuaW5nOmRpc2FibGVkLCAuYnRuLW91dGxpbmUtd2FybmluZy5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2ZmYzEwNztcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcXG4gIGNvbG9yOiAjZGMzNTQ1O1xcbiAgYm9yZGVyLWNvbG9yOiAjZGMzNTQ1O1xcbn1cXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjMzU0NTtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcXG59XFxuLmJ0bi1jaGVjazpmb2N1cyArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMge1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDIyMCwgNTMsIDY5LCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFuZ2VyLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1kYW5nZXIsIC5idG4tb3V0bGluZS1kYW5nZXI6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGUuc2hvdyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XFxuICBib3JkZXItY29sb3I6ICNkYzM1NDU7XFxufVxcbi5idG4tY2hlY2s6Y2hlY2tlZCArIC5idG4tb3V0bGluZS1kYW5nZXI6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmU6Zm9jdXMsIC5idG4tb3V0bGluZS1kYW5nZXIuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpkaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWRhbmdlci5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2RjMzU0NTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtbGlnaHQge1xcbiAgY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XFxuICBjb2xvcjogIzAwMDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XFxuICBib3JkZXItY29sb3I6ICNmOGY5ZmE7XFxufVxcbi5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLW91dGxpbmUtbGlnaHQsIC5idG4tb3V0bGluZS1saWdodDpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMjQ4LCAyNDksIDI1MCwgMC41KTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWxpZ2h0LCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1saWdodCwgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3VzLCAuYnRuLWNoZWNrOmFjdGl2ZSArIC5idG4tb3V0bGluZS1saWdodDpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0OmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0LmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZS5zaG93OmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgyNDgsIDI0OSwgMjUwLCAwLjUpO1xcbn1cXG4uYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1saWdodC5kaXNhYmxlZCB7XFxuICBjb2xvcjogI2Y4ZjlmYTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG5cXG4uYnRuLW91dGxpbmUtZGFyayB7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyNTI5O1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5O1xcbn1cXG4uYnRuLWNoZWNrOmZvY3VzICsgLmJ0bi1vdXRsaW5lLWRhcmssIC5idG4tb3V0bGluZS1kYXJrOmZvY3VzIHtcXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMjVyZW0gcmdiYSgzMywgMzcsIDQxLCAwLjUpO1xcbn1cXG4uYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1jaGVjazphY3RpdmUgKyAuYnRuLW91dGxpbmUtZGFyaywgLmJ0bi1vdXRsaW5lLWRhcms6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyay5hY3RpdmUsIC5idG4tb3V0bGluZS1kYXJrLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjUyOTtcXG4gIGJvcmRlci1jb2xvcjogIzIxMjUyOTtcXG59XFxuLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tY2hlY2s6YWN0aXZlICsgLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMsIC5idG4tb3V0bGluZS1kYXJrOmFjdGl2ZTpmb2N1cywgLmJ0bi1vdXRsaW5lLWRhcmsuYWN0aXZlOmZvY3VzLCAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGUuc2hvdzpmb2N1cyB7XFxuICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMzMsIDM3LCA0MSwgMC41KTtcXG59XFxuLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5idG4tbGluayB7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcXG59XFxuLmJ0bi1saW5rOmhvdmVyIHtcXG4gIGNvbG9yOiAjMGE1OGNhO1xcbn1cXG4uYnRuLWxpbms6ZGlzYWJsZWQsIC5idG4tbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuXFxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxufVxcblxcbi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcXG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcXG59XFxuXFxuLmZhZGUge1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuZmFkZSB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5mYWRlOm5vdCguc2hvdykge1xcbiAgb3BhY2l0eTogMDtcXG59XFxuXFxuLmNvbGxhcHNlOm5vdCguc2hvdykge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLmNvbGxhcHNpbmcge1xcbiAgaGVpZ2h0OiAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmNvbGxhcHNpbmcge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG4uZHJvcHVwLFxcbi5kcm9wZW5kLFxcbi5kcm9wZG93bixcXG4uZHJvcHN0YXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbn1cXG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAwO1xcbiAgYm9yZGVyLWxlZnQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAxMDAlO1xcbiAgei1pbmRleDogMTAwMDtcXG4gIGRpc3BsYXk6IG5vbmU7XFxuICBtaW4td2lkdGg6IDEwcmVtO1xcbiAgcGFkZGluZzogMC41cmVtIDA7XFxuICBtYXJnaW46IDA7XFxuICBmb250LXNpemU6IDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcXG4gIGxlZnQ6IDA7XFxuICBtYXJnaW4tdG9wOiAwLjEyNXJlbTtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUtc3RhcnQge1xcbiAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxufVxcbi5kcm9wZG93bi1tZW51LXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgbGVmdDogMCAvKiBydGw6aWdub3JlICovO1xcbn1cXG5cXG4uZHJvcGRvd24tbWVudS1lbmQge1xcbiAgLS1icy1wb3NpdGlvbjogZW5kO1xcbn1cXG4uZHJvcGRvd24tbWVudS1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gIHJpZ2h0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxufVxcblxcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtc20tc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXNtLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LXNtLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXNtLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtbWQtc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LW1kLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LW1kLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LW1kLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmRyb3Bkb3duLW1lbnUtbGctc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LWxnLXN0YXJ0W2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgIHJpZ2h0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICAgIGxlZnQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZCB7XFxuICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LWxnLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5kcm9wZG93bi1tZW51LXhsLXN0YXJ0IHtcXG4gICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS14bC1lbmQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBlbmQ7XFxuICB9XFxuICAuZHJvcGRvd24tbWVudS14bC1lbmRbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgcmlnaHQ6IDAgLyogcnRsOmlnbm9yZSAqLztcXG4gICAgbGVmdDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAuZHJvcGRvd24tbWVudS14eGwtc3RhcnQge1xcbiAgICAtLWJzLXBvc2l0aW9uOiBzdGFydDtcXG4gIH1cXG4gIC5kcm9wZG93bi1tZW51LXh4bC1zdGFydFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogYXV0byAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxuXFxuICAuZHJvcGRvd24tbWVudS14eGwtZW5kIHtcXG4gICAgLS1icy1wb3NpdGlvbjogZW5kO1xcbiAgfVxcbiAgLmRyb3Bkb3duLW1lbnUteHhsLWVuZFtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICByaWdodDogMCAvKiBydGw6aWdub3JlICovO1xcbiAgICBsZWZ0OiBhdXRvIC8qIHJ0bDppZ25vcmUgKi87XFxuICB9XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xcbiAgdG9wOiBhdXRvO1xcbiAgYm90dG9tOiAxMDAlO1xcbn1cXG4uZHJvcHVwIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XFxufVxcbi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZDtcXG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuLmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuXFxuLmRyb3BlbmQgLmRyb3Bkb3duLW1lbnUge1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IGF1dG87XFxuICBsZWZ0OiAxMDAlO1xcbn1cXG4uZHJvcGVuZCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1sZWZ0OiAwLjEyNXJlbTtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLXRvcDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmlnaHQ6IDA7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1sZWZ0OiAwLjNlbSBzb2xpZDtcXG59XFxuLmRyb3BlbmQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5kcm9wZW5kIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIHZlcnRpY2FsLWFsaWduOiAwO1xcbn1cXG5cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi1tZW51IHtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAxMDAlO1xcbiAgbGVmdDogYXV0bztcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDAuMjU1ZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG4uZHJvcHN0YXJ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbi5kcm9wc3RhcnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1yaWdodDogMC4yNTVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQ7XFxuICBib3JkZXItYm90dG9tOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xcbiAgdmVydGljYWwtYWxpZ246IDA7XFxufVxcblxcbi5kcm9wZG93bi1kaXZpZGVyIHtcXG4gIGhlaWdodDogMDtcXG4gIG1hcmdpbjogMC41cmVtIDA7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxufVxcblxcbi5kcm9wZG93bi1pdGVtIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XFxuICBjbGVhcjogYm90aDtcXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XFxuICBjb2xvcjogIzIxMjUyOTtcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IDA7XFxufVxcbi5kcm9wZG93bi1pdGVtOmhvdmVyLCAuZHJvcGRvd24taXRlbTpmb2N1cyB7XFxuICBjb2xvcjogIzFlMjEyNTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxufVxcbi5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcXG59XFxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZWQsIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjYWRiNWJkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLmRyb3Bkb3duLWhlYWRlciB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcblxcbi5kcm9wZG93bi1pdGVtLXRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDFyZW07XFxuICBjb2xvcjogIzIxMjUyOTtcXG59XFxuXFxuLmRyb3Bkb3duLW1lbnUtZGFyayB7XFxuICBjb2xvcjogI2RlZTJlNjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMzNDNhNDA7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW0ge1xcbiAgY29sb3I6ICNkZWUyZTY7XFxufVxcbi5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1tZW51LWRhcmsgLmRyb3Bkb3duLWl0ZW06Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmFjdGl2ZSwgLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbTphY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtLmRpc2FibGVkLCAuZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjYWRiNWJkO1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1kaXZpZGVyIHtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcXG59XFxuLmRyb3Bkb3duLW1lbnUtZGFyayAuZHJvcGRvd24taXRlbS10ZXh0IHtcXG4gIGNvbG9yOiAjZGVlMmU2O1xcbn1cXG4uZHJvcGRvd24tbWVudS1kYXJrIC5kcm9wZG93bi1oZWFkZXIge1xcbiAgY29sb3I6ICNhZGI1YmQ7XFxufVxcblxcbi5idG4tZ3JvdXAsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbn1cXG4uYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcXG4uYnRuLWdyb3VwID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXFxuLmJ0bi1ncm91cCA+IC5idG46aG92ZXIsXFxuLmJ0bi1ncm91cCA+IC5idG46Zm9jdXMsXFxuLmJ0bi1ncm91cCA+IC5idG46YWN0aXZlLFxcbi5idG4tZ3JvdXAgPiAuYnRuLmFjdGl2ZSxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpjaGVja2VkICsgLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1jaGVjazpmb2N1cyArIC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46aG92ZXIsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMsXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46YWN0aXZlLFxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XFxuICB6LWluZGV4OiAxO1xcbn1cXG5cXG4uYnRuLXRvb2xiYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG59XFxuLmJ0bi10b29sYmFyIC5pbnB1dC1ncm91cCB7XFxuICB3aWR0aDogYXV0bztcXG59XFxuXFxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXFxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5idG4tZ3JvdXAgPiAuYnRuOm50aC1jaGlsZChuKzMpLFxcbi5idG4tZ3JvdXAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcblxcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjU2MjVyZW07XFxufVxcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcGVuZCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmRyb3BzdGFydCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjpiZWZvcmUge1xcbiAgbWFyZ2luLXJpZ2h0OiAwO1xcbn1cXG5cXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuMzc1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcXG59XFxuXFxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsIC5idG4tZ3JvdXAtbGcgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xcbiAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xcbn1cXG5cXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bixcXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgbWFyZ2luLXRvcDogLTFweDtcXG59XFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB+IC5idG4sXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcXG59XFxuXFxuLm5hdiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5uYXYtbGluayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5uYXYtbGluayB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5uYXYtbGluay5kaXNhYmxlZCB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgY3Vyc29yOiBkZWZhdWx0O1xcbn1cXG5cXG4ubmF2LXRhYnMge1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XFxufVxcbi5uYXYtdGFicyAubmF2LWxpbmsge1xcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cyB7XFxuICBib3JkZXItY29sb3I6ICNlOWVjZWYgI2U5ZWNlZiAjZGVlMmU2O1xcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbn1cXG4ubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcXG4ubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcXG4gIGNvbG9yOiAjNDk1MDU3O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJvcmRlci1jb2xvcjogI2RlZTJlNiAjZGVlMmU2ICNmZmY7XFxufVxcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XFxuICBtYXJnaW4tdG9wOiAtMXB4O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG5cXG4ubmF2LXBpbGxzIC5uYXYtbGluayB7XFxuICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgYm9yZGVyOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxcbi5uYXYtcGlsbHMgLnNob3cgPiAubmF2LWxpbmsge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG5cXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXFxuLm5hdi1maWxsIC5uYXYtaXRlbSB7XFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXFxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXFxuLm5hdi1qdXN0aWZpZWQgLm5hdi1pdGVtIHtcXG4gIGZsZXgtYmFzaXM6IDA7XFxuICBmbGV4LWdyb3c6IDE7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcbi50YWItY29udGVudCA+IC50YWItcGFuZSB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4udGFiLWNvbnRlbnQgPiAuYWN0aXZlIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4ubmF2YmFyIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XFxufVxcbi5uYXZiYXIgPiAuY29udGFpbmVyLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXNtLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLW1kLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLWxnLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXhsLFxcbi5uYXZiYXIgPiAuY29udGFpbmVyLXh4bCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiBpbmhlcml0O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG59XFxuLm5hdmJhci1icmFuZCB7XFxuICBwYWRkaW5nLXRvcDogMC4zMTI1cmVtO1xcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcXG4gIG1hcmdpbi1yaWdodDogMXJlbTtcXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcbi5uYXZiYXItbmF2IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcbi5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbn1cXG4ubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICBwb3NpdGlvbjogc3RhdGljO1xcbn1cXG5cXG4ubmF2YmFyLXRleHQge1xcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XFxufVxcblxcbi5uYXZiYXItY29sbGFwc2Uge1xcbiAgZmxleC1iYXNpczogMTAwJTtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxufVxcblxcbi5uYXZiYXItdG9nZ2xlciB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XFxuICBmb250LXNpemU6IDEuMjVyZW07XFxuICBsaW5lLWhlaWdodDogMTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5uYXZiYXItdG9nZ2xlcjpob3ZlciB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcbi5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbTtcXG59XFxuXFxuLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDEuNWVtO1xcbiAgaGVpZ2h0OiAxLjVlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xcbn1cXG5cXG4ubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgbWF4LWhlaWdodDogdmFyKC0tYnMtc2Nyb2xsLWhlaWdodCwgNzV2aCk7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXA7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gICAgZmxleC1iYXNpczogYXV0bztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xcbiAgLm5hdmJhci1leHBhbmQtbWQge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC1sZyB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC14bCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XFxuICAubmF2YmFyLWV4cGFuZC14eGwge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIH1cXG4gIC5uYXZiYXItZXhwYW5kLXh4bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgfVxcbiAgLm5hdmJhci1leHBhbmQteHhsIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICAgIGZsZXgtYmFzaXM6IGF1dG87XFxuICB9XFxuICAubmF2YmFyLWV4cGFuZC14eGwgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gIH1cXG59XFxuLm5hdmJhci1leHBhbmQge1xcbiAgZmxleC13cmFwOiBub3dyYXA7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xcbn1cXG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLW5hdi1zY3JvbGwge1xcbiAgb3ZlcmZsb3c6IHZpc2libGU7XFxufVxcbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2Uge1xcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgZmxleC1iYXNpczogYXV0bztcXG59XFxuLm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVyIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZCB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpmb2N1cyB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xcbn1cXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluayB7XFxuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjU1KTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXFxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNTUpO1xcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MCwgMCwgMCwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQge1xcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NSk7XFxufVxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGEsXFxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3ZlcixcXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XFxufVxcblxcbi5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kIHtcXG4gIGNvbG9yOiAjZmZmO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6Zm9jdXMge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XFxufVxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdG9nZ2xlciB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcXG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xcbn1cXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJyUzZSUzY3BhdGggc3Ryb2tlPSdyZ2JhJTI4MjU1LCAyNTUsIDI1NSwgMC41NSUyOScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCB7XFxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcXG59XFxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhLFxcbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3ZlcixcXG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGE6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmY7XFxufVxcblxcbi5jYXJkIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgbWluLXdpZHRoOiAwO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmNhcmQgPiBociB7XFxuICBtYXJnaW4tcmlnaHQ6IDA7XFxuICBtYXJnaW4tbGVmdDogMDtcXG59XFxuLmNhcmQgPiAubGlzdC1ncm91cCB7XFxuICBib3JkZXItdG9wOiBpbmhlcml0O1xcbiAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcXG59XFxuLmNhcmQgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG4uY2FyZCA+IC5saXN0LWdyb3VwOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuLmNhcmQgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcXG4uY2FyZCA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcXG4gIGJvcmRlci10b3A6IDA7XFxufVxcblxcbi5jYXJkLWJvZHkge1xcbiAgZmxleDogMSAxIGF1dG87XFxuICBwYWRkaW5nOiAxcmVtIDFyZW07XFxufVxcblxcbi5jYXJkLXRpdGxlIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcXG59XFxuXFxuLmNhcmQtc3VidGl0bGUge1xcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtbGluazpob3ZlciB7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxufVxcbi5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtIC8qIHJ0bDppZ25vcmUgKi87XFxufVxcblxcbi5jYXJkLWhlYWRlciB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xcbn1cXG4uY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpIDAgMDtcXG59XFxuXFxuLmNhcmQtZm9vdGVyIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjAzKTtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcXG59XFxuLmNhcmQtZm9vdGVyOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtaGVhZGVyLXRhYnMge1xcbiAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xcbiAgbWFyZ2luLWJvdHRvbTogLTAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xcbiAgYm9yZGVyLWJvdHRvbTogMDtcXG59XFxuXFxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcXG4gIG1hcmdpbi1yaWdodDogLTAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xcbn1cXG5cXG4uY2FyZC1pbWctb3ZlcmxheSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICBwYWRkaW5nOiAxcmVtO1xcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy10b3AsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuXFxuLmNhcmQtaW1nLFxcbi5jYXJkLWltZy10b3Age1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcblxcbi5jYXJkLWdyb3VwID4gLmNhcmQge1xcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuY2FyZC1ncm91cCB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcXG4gICAgZmxleDogMSAwIDAlO1xcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZCArIC5jYXJkIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICAgIGJvcmRlci1sZWZ0OiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWhlYWRlciB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b20sXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmxhc3QtY2hpbGQpIC5jYXJkLWZvb3RlciB7XFxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSB7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAuY2FyZC1ncm91cCA+IC5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy10b3AsXFxuLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmNhcmQtZ3JvdXAgPiAuY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9tLFxcbi5jYXJkLWdyb3VwID4gLmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtZm9vdGVyIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG59XFxuXFxuLmFjY29yZGlvbi1idXR0b24ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcXG4gIGZvbnQtc2l6ZTogMXJlbTtcXG4gIGNvbG9yOiAjMjEyNTI5O1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLXJhZGl1cyAwLjE1cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcXG59XFxuLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcXG4gIGNvbG9yOiAjMGM2M2U0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjFmZjtcXG59XFxuLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpOjphZnRlciB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzBjNjNlNCclM2UlM2NwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcXG59XFxuLmFjY29yZGlvbi1idXR0b246OmFmdGVyIHtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgd2lkdGg6IDEuMjVyZW07XFxuICBoZWlnaHQ6IDEuMjVyZW07XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjMyMTI1MjknJTNlJTNjcGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEuMjVyZW07XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5hY2NvcmRpb24tYnV0dG9uOjphZnRlciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOmhvdmVyIHtcXG4gIHotaW5kZXg6IDI7XFxufVxcbi5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxuICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcblxcbi5hY2NvcmRpb24taGVhZGVyIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5hY2NvcmRpb24taXRlbTpmaXJzdC1vZi10eXBlIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmFjY29yZGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbi5jb2xsYXBzZWQge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1vZi10eXBlIC5hY2NvcmRpb24tY29sbGFwc2Uge1xcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlcjogc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxuICBib3JkZXItd2lkdGg6IDAgMXB4O1xcbn1cXG5cXG4uYWNjb3JkaW9uLWJvZHkge1xcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xcbn1cXG5cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gIGJvcmRlci1yaWdodDogMDtcXG4gIGJvcmRlci1sZWZ0OiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlci13aWR0aDogMDtcXG59XFxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWl0ZW06Zmlyc3Qtb2YtdHlwZSAuYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbn1cXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24taXRlbTpsYXN0LW9mLXR5cGUgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcXG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxufVxcblxcbi5icmVhZGNydW1iIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBwYWRkaW5nOiAwIDA7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXFxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW0ge1xcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XFxufVxcbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmUge1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGNvbnRlbnQ6IHZhcigtLWJzLWJyZWFkY3J1bWItZGl2aWRlciwgXFxcIi9cXFwiKSAvKiBydGw6IHZhcigtLWJzLWJyZWFkY3J1bWItZGl2aWRlciwgXFxcIi9cXFwiKSAqLztcXG59XFxuLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxufVxcblxcbi5wYWdpbmF0aW9uIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG5cXG4ucGFnZS1saW5rIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAucGFnZS1saW5rIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLnBhZ2UtbGluazpob3ZlciB7XFxuICB6LWluZGV4OiAyO1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbiAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xcbn1cXG4ucGFnZS1saW5rOmZvY3VzIHtcXG4gIHotaW5kZXg6IDM7XFxuICBjb2xvcjogIzBhNThjYTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxufVxcblxcbi5wYWdlLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XFxuICBtYXJnaW4tbGVmdDogLTFweDtcXG59XFxuLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XFxuICB6LWluZGV4OiAzO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4ucGFnZS1pdGVtLmRpc2FibGVkIC5wYWdlLWxpbmsge1xcbiAgY29sb3I6ICM2Yzc1N2Q7XFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XFxuICBib3JkZXItY29sb3I6ICNkZWUyZTY7XFxufVxcblxcbi5wYWdlLWxpbmsge1xcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcXG59XFxuXFxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1saW5rIHtcXG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zcmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zcmVtO1xcbn1cXG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zcmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuM3JlbTtcXG59XFxuXFxuLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7XFxuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxufVxcbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayB7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjJyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjJyZW07XFxufVxcbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjJyZW07XFxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4ycmVtO1xcbn1cXG5cXG4uYmFkZ2Uge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgcGFkZGluZzogMC4zNWVtIDAuNjVlbTtcXG4gIGZvbnQtc2l6ZTogMC43NWVtO1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgY29sb3I6ICNmZmY7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuLmJhZGdlOmVtcHR5IHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5idG4gLmJhZGdlIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHRvcDogLTFweDtcXG59XFxuXFxuLmFsZXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHBhZGRpbmc6IDFyZW0gMXJlbTtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5hbGVydC1oZWFkaW5nIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbn1cXG5cXG4uYWxlcnQtbGluayB7XFxuICBmb250LXdlaWdodDogNzAwO1xcbn1cXG5cXG4uYWxlcnQtZGlzbWlzc2libGUge1xcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcXG59XFxuLmFsZXJ0LWRpc21pc3NpYmxlIC5idG4tY2xvc2Uge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICB6LWluZGV4OiAyO1xcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xcbn1cXG5cXG4uYWxlcnQtcHJpbWFyeSB7XFxuICBjb2xvcjogIzA4NDI5ODtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmUyZmY7XFxuICBib3JkZXItY29sb3I6ICNiNmQ0ZmU7XFxufVxcbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcXG4gIGNvbG9yOiAjMDYzNTdhO1xcbn1cXG5cXG4uYWxlcnQtc2Vjb25kYXJ5IHtcXG4gIGNvbG9yOiAjNDE0NjRiO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcXG4gIGJvcmRlci1jb2xvcjogI2QzZDZkODtcXG59XFxuLmFsZXJ0LXNlY29uZGFyeSAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzM0MzgzYztcXG59XFxuXFxuLmFsZXJ0LXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMwZjUxMzI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xcbiAgYm9yZGVyLWNvbG9yOiAjYmFkYmNjO1xcbn1cXG4uYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzBjNDEyODtcXG59XFxuXFxuLmFsZXJ0LWluZm8ge1xcbiAgY29sb3I6ICMwNTUxNjA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZmNGZjO1xcbiAgYm9yZGVyLWNvbG9yOiAjYjZlZmZiO1xcbn1cXG4uYWxlcnQtaW5mbyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzA0NDE0ZDtcXG59XFxuXFxuLmFsZXJ0LXdhcm5pbmcge1xcbiAgY29sb3I6ICM2NjRkMDM7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZlY2I1O1xcbn1cXG4uYWxlcnQtd2FybmluZyAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzUyM2UwMjtcXG59XFxuXFxuLmFsZXJ0LWRhbmdlciB7XFxuICBjb2xvcjogIzg0MjAyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGQ3ZGE7XFxuICBib3JkZXItY29sb3I6ICNmNWMyYzc7XFxufVxcbi5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmsge1xcbiAgY29sb3I6ICM2YTFhMjE7XFxufVxcblxcbi5hbGVydC1saWdodCB7XFxuICBjb2xvcjogIzYzNjQ2NDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XFxuICBib3JkZXItY29sb3I6ICNmZGZkZmU7XFxufVxcbi5hbGVydC1saWdodCAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzRmNTA1MDtcXG59XFxuXFxuLmFsZXJ0LWRhcmsge1xcbiAgY29sb3I6ICMxNDE2MTk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2Q0O1xcbiAgYm9yZGVyLWNvbG9yOiAjYmNiZWJmO1xcbn1cXG4uYWxlcnQtZGFyayAuYWxlcnQtbGluayB7XFxuICBjb2xvcjogIzEwMTIxNDtcXG59XFxuXFxuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XFxuICAwJSB7XFxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogMXJlbTtcXG4gIH1cXG59XFxuLnByb2dyZXNzIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBoZWlnaHQ6IDFyZW07XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XFxufVxcblxcbi5wcm9ncmVzcy1iYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgdHJhbnNpdGlvbjogd2lkdGggMC42cyBlYXNlO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnByb2dyZXNzLWJhciB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcblxcbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcXG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtO1xcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcXG4gIGFuaW1hdGlvbjogMXMgbGluZWFyIGluZmluaXRlIHByb2dyZXNzLWJhci1zdHJpcGVzO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLnByb2dyZXNzLWJhci1hbmltYXRlZCB7XFxuICAgIGFuaW1hdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmxpc3QtZ3JvdXAge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBwYWRkaW5nLWxlZnQ6IDA7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xcbiAgd2lkdGg6IDEwMCU7XFxuICBjb2xvcjogIzQ5NTA1NztcXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICB6LWluZGV4OiAxO1xcbiAgY29sb3I6ICM0OTUwNTc7XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjphY3RpdmUge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEyNSk7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogaW5oZXJpdDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAubGlzdC1ncm91cC1pdGVtOmRpc2FibGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICB6LWluZGV4OiAyO1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xcbiAgYm9yZGVyLWNvbG9yOiAjMGQ2ZWZkO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgbWFyZ2luLXRvcDogLTFweDtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxufVxcbi5saXN0LWdyb3VwLWhvcml6b250YWwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgbWFyZ2luLXRvcDogMDtcXG59XFxuLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1ob3Jpem9udGFsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtc20gPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbWQgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwtbGcgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCA+IC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLXRvcDogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsID4gLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XFxuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XFxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XFxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcXG4gIH1cXG4gIC5saXN0LWdyb3VwLWhvcml6b250YWwteHhsID4gLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xcbiAgICBtYXJnaW4tdG9wOiAwO1xcbiAgfVxcbiAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14eGwgPiAubGlzdC1ncm91cC1pdGVtICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuICB9XFxuICAubGlzdC1ncm91cC1ob3Jpem9udGFsLXh4bCA+IC5saXN0LWdyb3VwLWl0ZW0gKyAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xcbiAgfVxcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4O1xcbn1cXG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XFxuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkge1xcbiAgY29sb3I6ICMwODQyOTg7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZlMmZmO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICMwODQyOTg7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFjYmU2O1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xcbiAgY29sb3I6ICNmZmY7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDg0Mjk4O1xcbiAgYm9yZGVyLWNvbG9yOiAjMDg0Mjk4O1xcbn1cXG5cXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzQxNDY0YjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlMmUzZTU7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMge1xcbiAgY29sb3I6ICM0MTQ2NGI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2JjY2NlO1xcbn1cXG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM0MTQ2NGI7XFxuICBib3JkZXItY29sb3I6ICM0MTQ2NGI7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2VzcyB7XFxuICBjb2xvcjogIzBmNTEzMjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkMWU3ZGQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzBmNTEzMjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiY2QwYzc7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwZjUxMzI7XFxuICBib3JkZXItY29sb3I6ICMwZjUxMzI7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0taW5mbyB7XFxuICBjb2xvcjogIzA1NTE2MDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWluZm8ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzA1NTE2MDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWRjZTM7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTUxNjA7XFxuICBib3JkZXItY29sb3I6ICMwNTUxNjA7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZyB7XFxuICBjb2xvcjogIzY2NGQwMztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYzY2Q7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzY2NGQwMztcXG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmRiYjk7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0td2FybmluZy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjRkMDM7XFxuICBib3JkZXItY29sb3I6ICM2NjRkMDM7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyIHtcXG4gIGNvbG9yOiAjODQyMDI5O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzg0MjAyOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmMyYzQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg0MjAyOTtcXG4gIGJvcmRlci1jb2xvcjogIzg0MjAyOTtcXG59XFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodCB7XFxuICBjb2xvcjogIzYzNjQ2NDtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzIHtcXG4gIGNvbG9yOiAjNjM2NDY0O1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcXG59XFxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2MzY0NjQ7XFxuICBib3JkZXItY29sb3I6ICM2MzY0NjQ7XFxufVxcblxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyayB7XFxuICBjb2xvcjogIzE0MTYxOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDQ7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cyB7XFxuICBjb2xvcjogIzE0MTYxOTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmY7XFxufVxcbi5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZSB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDE2MTk7XFxuICBib3JkZXItY29sb3I6ICMxNDE2MTk7XFxufVxcblxcbi5idG4tY2xvc2Uge1xcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICB3aWR0aDogMWVtO1xcbiAgaGVpZ2h0OiAxZW07XFxuICBwYWRkaW5nOiAwLjI1ZW0gMC4yNWVtO1xcbiAgY29sb3I6ICMwMDA7XFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyUyMzAwMCclM2UlM2NwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwMTEuNDE0IDBMOCA2LjU4NiAxNC4yOTMuMjkzYTEgMSAwIDExMS40MTQgMS40MTRMOS40MTQgOGw2LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEw4IDkuNDE0bC02LjI5MyA2LjI5M2ExIDEgMCAwMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMDEwLTEuNDE0eicvJTNlJTNjL3N2ZyUzZVxcXCIpIGNlbnRlci8xZW0gYXV0byBuby1yZXBlYXQ7XFxuICBib3JkZXI6IDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG4uYnRuLWNsb3NlOmhvdmVyIHtcXG4gIGNvbG9yOiAjMDAwO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgb3BhY2l0eTogMC43NTtcXG59XFxuLmJ0bi1jbG9zZTpmb2N1cyB7XFxuICBvdXRsaW5lOiAwO1xcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uYnRuLWNsb3NlOmRpc2FibGVkLCAuYnRuLWNsb3NlLmRpc2FibGVkIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XFxuICBvcGFjaXR5OiAwLjI1O1xcbn1cXG5cXG4uYnRuLWNsb3NlLXdoaXRlIHtcXG4gIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpO1xcbn1cXG5cXG4udG9hc3Qge1xcbiAgd2lkdGg6IDM1MHB4O1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XFxuICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG4udG9hc3Q6bm90KC5zaG93aW5nKTpub3QoLnNob3cpIHtcXG4gIG9wYWNpdHk6IDA7XFxufVxcbi50b2FzdC5oaWRlIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi50b2FzdC1jb250YWluZXIge1xcbiAgd2lkdGg6IG1heC1jb250ZW50O1xcbiAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxufVxcbi50b2FzdC1jb250YWluZXIgPiA6bm90KDpsYXN0LWNoaWxkKSB7XFxuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xcbn1cXG5cXG4udG9hc3QtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XFxuICBjb2xvcjogIzZjNzU3ZDtcXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XFxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XFxufVxcbi50b2FzdC1oZWFkZXIgLmJ0bi1jbG9zZSB7XFxuICBtYXJnaW4tcmlnaHQ6IC0wLjM3NXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xcbn1cXG5cXG4udG9hc3QtYm9keSB7XFxuICBwYWRkaW5nOiAwLjc1cmVtO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcbn1cXG5cXG4ubW9kYWwtb3BlbiB7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbn1cXG4ubW9kYWwtb3BlbiAubW9kYWwge1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuXFxuLm1vZGFsIHtcXG4gIHBvc2l0aW9uOiBmaXhlZDtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDUwO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIG91dGxpbmU6IDA7XFxufVxcblxcbi5tb2RhbC1kaWFsb2cge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IGF1dG87XFxuICBtYXJnaW46IDAuNXJlbTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbn1cXG4ubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwcHgpO1xcbn1cXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xcbiAgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XFxuICAgIHRyYW5zaXRpb246IG5vbmU7XFxuICB9XFxufVxcbi5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xcbiAgdHJhbnNmb3JtOiBub25lO1xcbn1cXG4ubW9kYWwubW9kYWwtc3RhdGljIC5tb2RhbC1kaWFsb2cge1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcXG59XFxuXFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcXG4gIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XFxufVxcbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG59XFxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5IHtcXG4gIG92ZXJmbG93LXk6IGF1dG87XFxufVxcblxcbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcXG59XFxuXFxuLm1vZGFsLWNvbnRlbnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICB3aWR0aDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XFxuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XFxuICBvdXRsaW5lOiAwO1xcbn1cXG5cXG4ubW9kYWwtYmFja2Ryb3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6IDEwNDA7XFxuICB3aWR0aDogMTAwdnc7XFxuICBoZWlnaHQ6IDEwMHZoO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcXG59XFxuLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xcbiAgb3BhY2l0eTogMDtcXG59XFxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xcbiAgb3BhY2l0eTogMC41O1xcbn1cXG5cXG4ubW9kYWwtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXNocmluazogMDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XFxuICBwYWRkaW5nOiAxcmVtIDFyZW07XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5tb2RhbC1oZWFkZXIgLmJ0bi1jbG9zZSB7XFxuICBwYWRkaW5nOiAwLjVyZW0gMC41cmVtO1xcbiAgbWFyZ2luOiAtMC41cmVtIC0wLjVyZW0gLTAuNXJlbSBhdXRvO1xcbn1cXG5cXG4ubW9kYWwtdGl0bGUge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxufVxcblxcbi5tb2RhbC1ib2R5IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGZsZXg6IDEgMSBhdXRvO1xcbiAgcGFkZGluZzogMXJlbTtcXG59XFxuXFxuLm1vZGFsLWZvb3RlciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgZmxleC1zaHJpbms6IDA7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcXG4gIHBhZGRpbmc6IDAuNzVyZW07XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNjtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XFxufVxcbi5tb2RhbC1mb290ZXIgPiAqIHtcXG4gIG1hcmdpbjogMC4yNXJlbTtcXG59XFxuXFxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogLTk5OTlweDtcXG4gIHdpZHRoOiA1MHB4O1xcbiAgaGVpZ2h0OiA1MHB4O1xcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAubW9kYWwtZGlhbG9nIHtcXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcXG4gICAgbWFyZ2luOiAxLjc1cmVtIGF1dG87XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDMuNXJlbSk7XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcXG4gIH1cXG5cXG4gIC5tb2RhbC1zbSB7XFxuICAgIG1heC13aWR0aDogMzAwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLm1vZGFsLWxnLFxcbi5tb2RhbC14bCB7XFxuICAgIG1heC13aWR0aDogODAwcHg7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcXG4gIC5tb2RhbC14bCB7XFxuICAgIG1heC13aWR0aDogMTE0MHB4O1xcbiAgfVxcbn1cXG4ubW9kYWwtZnVsbHNjcmVlbiB7XFxuICB3aWR0aDogMTAwdnc7XFxuICBtYXgtd2lkdGg6IG5vbmU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBtYXJnaW46IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1jb250ZW50IHtcXG4gIGhlaWdodDogMTAwJTtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcbi5tb2RhbC1mdWxsc2NyZWVuIC5tb2RhbC1oZWFkZXIge1xcbiAgYm9yZGVyLXJhZGl1czogMDtcXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWJvZHkge1xcbiAgb3ZlcmZsb3cteTogYXV0bztcXG59XFxuLm1vZGFsLWZ1bGxzY3JlZW4gLm1vZGFsLWZvb3RlciB7XFxuICBib3JkZXItcmFkaXVzOiAwO1xcbn1cXG5cXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXNtLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tc20tZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1zbS1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLW1kLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbWQtZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1tZC1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcXG4gIC5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1jb250ZW50IHtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1oZWFkZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi1sZy1kb3duIC5tb2RhbC1mb290ZXIge1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XFxuICAubW9kYWwtZnVsbHNjcmVlbi14bC1kb3duIHtcXG4gICAgd2lkdGg6IDEwMHZ3O1xcbiAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgbWFyZ2luOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtaGVhZGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG4gIC5tb2RhbC1mdWxsc2NyZWVuLXhsLWRvd24gLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teGwtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtYXgtd2lkdGg6IDEzOTkuOThweCkge1xcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24ge1xcbiAgICB3aWR0aDogMTAwdnc7XFxuICAgIG1heC13aWR0aDogbm9uZTtcXG4gICAgaGVpZ2h0OiAxMDAlO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtY29udGVudCB7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICBib3JkZXItcmFkaXVzOiAwO1xcbiAgfVxcbiAgLm1vZGFsLWZ1bGxzY3JlZW4teHhsLWRvd24gLm1vZGFsLWhlYWRlciB7XFxuICAgIGJvcmRlci1yYWRpdXM6IDA7XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtYm9keSB7XFxuICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICB9XFxuICAubW9kYWwtZnVsbHNjcmVlbi14eGwtZG93biAubW9kYWwtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXJhZGl1czogMDtcXG4gIH1cXG59XFxuLnRvb2x0aXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogMTA3MDtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWFyZ2luOiAwO1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICB0ZXh0LWFsaWduOiBzdGFydDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRleHQtc2hhZG93OiBub25lO1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbiAgbGluZS1icmVhazogYXV0bztcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBvcGFjaXR5OiAwO1xcbn1cXG4udG9vbHRpcC5zaG93IHtcXG4gIG9wYWNpdHk6IDAuOTtcXG59XFxuLnRvb2x0aXAgLnRvb2x0aXAtYXJyb3cge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMC44cmVtO1xcbiAgaGVpZ2h0OiAwLjRyZW07XFxufVxcbi50b29sdGlwIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtdG9wLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSB7XFxuICBwYWRkaW5nOiAwLjRyZW0gMDtcXG59XFxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdyB7XFxuICBib3R0b206IDA7XFxufVxcbi5icy10b29sdGlwLXRvcCAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49dG9wXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIHRvcDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwO1xcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtZW5kLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdIHtcXG4gIHBhZGRpbmc6IDAgMC40cmVtO1xcbn1cXG4uYnMtdG9vbHRpcC1lbmQgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3cge1xcbiAgbGVmdDogMDtcXG4gIHdpZHRoOiAwLjRyZW07XFxuICBoZWlnaHQ6IDAuOHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtZW5kIC50b29sdGlwLWFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSB7XFxuICByaWdodDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAuNHJlbSAwLjRyZW0gMDtcXG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtYm90dG9tLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSB7XFxuICBwYWRkaW5nOiAwLjRyZW0gMDtcXG59XFxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93LCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdyB7XFxuICB0b3A6IDA7XFxufVxcbi5icy10b29sdGlwLWJvdHRvbSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSAudG9vbHRpcC1hcnJvdzo6YmVmb3JlIHtcXG4gIGJvdHRvbTogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMCAwLjRyZW0gMC40cmVtO1xcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcXG59XFxuXFxuLmJzLXRvb2x0aXAtc3RhcnQsIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSB7XFxuICBwYWRkaW5nOiAwIDAuNHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3csIC5icy10b29sdGlwLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSAudG9vbHRpcC1hcnJvdyB7XFxuICByaWdodDogMDtcXG4gIHdpZHRoOiAwLjRyZW07XFxuICBoZWlnaHQ6IDAuOHJlbTtcXG59XFxuLmJzLXRvb2x0aXAtc3RhcnQgLnRvb2x0aXAtYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWxlZnRdIC50b29sdGlwLWFycm93OjpiZWZvcmUge1xcbiAgbGVmdDogLTFweDtcXG4gIGJvcmRlci13aWR0aDogMC40cmVtIDAgMC40cmVtIDAuNHJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwO1xcbn1cXG5cXG4udG9vbHRpcC1pbm5lciB7XFxuICBtYXgtd2lkdGg6IDIwMHB4O1xcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xcbn1cXG5cXG4ucG9wb3ZlciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBsZWZ0OiAwIC8qIHJ0bDppZ25vcmUgKi87XFxuICB6LWluZGV4OiAxMDYwO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXgtd2lkdGg6IDI3NnB4O1xcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJzLWZvbnQtc2Fucy1zZXJpZik7XFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBmb250LXdlaWdodDogNDAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7XFxuICB0ZXh0LWFsaWduOiBzdGFydDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIHRleHQtc2hhZG93OiBub25lO1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xcbiAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XFxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xcbiAgbGluZS1icmVhazogYXV0bztcXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcXG59XFxuLnBvcG92ZXIgLnBvcG92ZXItYXJyb3cge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMC41cmVtO1xcbn1cXG4ucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAucG9wb3ZlciAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbn1cXG5cXG4uYnMtcG9wb3Zlci10b3AgPiAucG9wb3Zlci1hcnJvdywgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdyB7XFxuICBib3R0b206IGNhbGMoLTAuNXJlbSAtIDFweCk7XFxufVxcbi5icy1wb3BvdmVyLXRvcCA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj10b3BdID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XFxuICBib3R0b206IDA7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLXRvcCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXRvcF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgYm90dG9tOiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMDtcXG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XFxufVxcblxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49cmlnaHRdID4gLnBvcG92ZXItYXJyb3cge1xcbiAgbGVmdDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG4gIHdpZHRoOiAwLjVyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1yaWdodF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIGxlZnQ6IDA7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLWVuZCA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePXJpZ2h0XSA+IC5wb3BvdmVyLWFycm93OjphZnRlciB7XFxuICBsZWZ0OiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwLjVyZW0gMC41cmVtIDA7XFxuICBib3JkZXItcmlnaHQtY29sb3I6ICNmZmY7XFxufVxcblxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93LCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49Ym90dG9tXSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIHRvcDogY2FsYygtMC41cmVtIC0gMXB4KTtcXG59XFxuLmJzLXBvcG92ZXItYm90dG9tID4gLnBvcG92ZXItYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIHRvcDogMDtcXG4gIGJvcmRlci13aWR0aDogMCAwLjVyZW0gMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5wb3BvdmVyLWFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1tkYXRhLXBvcHBlci1wbGFjZW1lbnRePWJvdHRvbV0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgdG9wOiAxcHg7XFxuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07XFxuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmZmO1xcbn1cXG4uYnMtcG9wb3Zlci1ib3R0b20gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDUwJTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDFyZW07XFxuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XFxufVxcblxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3csIC5icy1wb3BvdmVyLWF1dG9bZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1sZWZ0XSA+IC5wb3BvdmVyLWFycm93IHtcXG4gIHJpZ2h0OiBjYWxjKC0wLjVyZW0gLSAxcHgpO1xcbiAgd2lkdGg6IDAuNXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG59XFxuLmJzLXBvcG92ZXItc3RhcnQgPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcXG4gIHJpZ2h0OiAwO1xcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMCAwLjVyZW0gMC41cmVtO1xcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XFxufVxcbi5icy1wb3BvdmVyLXN0YXJ0ID4gLnBvcG92ZXItYXJyb3c6OmFmdGVyLCAuYnMtcG9wb3Zlci1hdXRvW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49bGVmdF0gPiAucG9wb3Zlci1hcnJvdzo6YWZ0ZXIge1xcbiAgcmlnaHQ6IDFweDtcXG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAgMC41cmVtIDAuNXJlbTtcXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmO1xcbn1cXG5cXG4ucG9wb3Zlci1oZWFkZXIge1xcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbiAgZm9udC1zaXplOiAxcmVtO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDhkOGQ4O1xcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcXG59XFxuLnBvcG92ZXItaGVhZGVyOmVtcHR5IHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcblxcbi5wb3BvdmVyLWJvZHkge1xcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcblxcbi5jYXJvdXNlbCB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxufVxcblxcbi5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHtcXG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XFxufVxcblxcbi5jYXJvdXNlbC1pbm5lciB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogMTAwJTtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxufVxcbi5jYXJvdXNlbC1pbm5lcjo6YWZ0ZXIge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBjbGVhcjogYm90aDtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaXRlbSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgZmxvYXQ6IGxlZnQ7XFxuICB3aWR0aDogMTAwJTtcXG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XFxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XFxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1pdGVtIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXFxuLmNhcm91c2VsLWl0ZW0tcHJldiB7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuXFxuLyogcnRsOmJlZ2luOmlnbm9yZSAqL1xcbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0tcHJldjpub3QoLmNhcm91c2VsLWl0ZW0tZW5kKSxcXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcXG59XFxuXFxuLyogcnRsOmVuZDppZ25vcmUgKi9cXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbSB7XFxuICBvcGFjaXR5OiAwO1xcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcXG4gIHRyYW5zZm9ybTogbm9uZTtcXG59XFxuLmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxcbi5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4uY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gIHotaW5kZXg6IDE7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXFxuLmNhcm91c2VsLWZhZGUgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICB6LWluZGV4OiAwO1xcbiAgb3BhY2l0eTogMDtcXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgMC42cztcXG59XFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcXG4gIC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1zdGFydCxcXG4uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldixcXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIHotaW5kZXg6IDE7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgd2lkdGg6IDE1JTtcXG4gIHBhZGRpbmc6IDA7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDA7XFxuICBvcGFjaXR5OiAwLjU7XFxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgfVxcbn1cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVyLCAuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmZvY3VzLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dDpmb2N1cyB7XFxuICBjb2xvcjogI2ZmZjtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG4gIG91dGxpbmU6IDA7XFxuICBvcGFjaXR5OiAwLjk7XFxufVxcblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xcbiAgbGVmdDogMDtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XFxuICByaWdodDogMDtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMnJlbTtcXG4gIGhlaWdodDogMnJlbTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcXG59XFxuXFxuLyogcnRsOm9wdGlvbnM6IHtcXG4gIFxcXCJhdXRvUmVuYW1lXFxcIjogdHJ1ZSxcXG4gIFxcXCJzdHJpbmdNYXBcXFwiOlsge1xcbiAgICBcXFwibmFtZVxcXCIgICAgOiBcXFwicHJldi1uZXh0XFxcIixcXG4gICAgXFxcInNlYXJjaFxcXCIgIDogXFxcInByZXZcXFwiLFxcbiAgICBcXFwicmVwbGFjZVxcXCIgOiBcXFwibmV4dFxcXCJcXG4gIH0gXVxcbn0gKi9cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPSclMjNmZmYnJTNlJTNjcGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMHonLyUzZSUzYy9zdmclM2VcXFwiKTtcXG59XFxuXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nJTIzZmZmJyUzZSUzY3BhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvJTNlJTNjL3N2ZyUzZVxcXCIpO1xcbn1cXG5cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAyO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1yaWdodDogMTUlO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAxNSU7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcbn1cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgZmxleDogMCAxIGF1dG87XFxuICB3aWR0aDogMzBweDtcXG4gIGhlaWdodDogM3B4O1xcbiAgcGFkZGluZzogMDtcXG4gIG1hcmdpbi1yaWdodDogM3B4O1xcbiAgbWFyZ2luLWxlZnQ6IDNweDtcXG4gIHRleHQtaW5kZW50OiAtOTk5cHg7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogMDtcXG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgb3BhY2l0eTogMC41O1xcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2U7XFxufVxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcXG4gIH1cXG59XFxuLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZSB7XFxuICBvcGFjaXR5OiAxO1xcbn1cXG5cXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogMTUlO1xcbiAgYm90dG9tOiAxLjI1cmVtO1xcbiAgbGVmdDogMTUlO1xcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XFxuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcXG4gIGNvbG9yOiAjZmZmO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG5cXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXFxuLmNhcm91c2VsLWRhcmsgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDApO1xcbn1cXG4uY2Fyb3VzZWwtZGFyayAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XFxufVxcbi5jYXJvdXNlbC1kYXJrIC5jYXJvdXNlbC1jYXB0aW9uIHtcXG4gIGNvbG9yOiAjMDAwO1xcbn1cXG5cXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcXG4gIHRvIHtcXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSAvKiBydGw6aWdub3JlICovO1xcbiAgfVxcbn1cXG4uc3Bpbm5lci1ib3JkZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6IDJyZW07XFxuICBoZWlnaHQ6IDJyZW07XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XFxuICBib3JkZXI6IDAuMjVlbSBzb2xpZCBjdXJyZW50Q29sb3I7XFxuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbiAgYW5pbWF0aW9uOiAwLjc1cyBsaW5lYXIgaW5maW5pdGUgc3Bpbm5lci1ib3JkZXI7XFxufVxcblxcbi5zcGlubmVyLWJvcmRlci1zbSB7XFxuICB3aWR0aDogMXJlbTtcXG4gIGhlaWdodDogMXJlbTtcXG4gIGJvcmRlci13aWR0aDogMC4yZW07XFxufVxcblxcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcXG4gIDAlIHtcXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcXG4gIH1cXG4gIDUwJSB7XFxuICAgIG9wYWNpdHk6IDE7XFxuICAgIHRyYW5zZm9ybTogbm9uZTtcXG4gIH1cXG59XFxuLnNwaW5uZXItZ3JvdyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMnJlbTtcXG4gIGhlaWdodDogMnJlbTtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG4gIG9wYWNpdHk6IDA7XFxuICBhbmltYXRpb246IDAuNzVzIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XFxufVxcblxcbi5zcGlubmVyLWdyb3ctc20ge1xcbiAgd2lkdGg6IDFyZW07XFxuICBoZWlnaHQ6IDFyZW07XFxufVxcblxcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAuc3Bpbm5lci1ib3JkZXIsXFxuLnNwaW5uZXItZ3JvdyB7XFxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcXG4gIH1cXG59XFxuLmNsZWFyZml4OjphZnRlciB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIGNsZWFyOiBib3RoO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcblxcbi5saW5rLXByaW1hcnkge1xcbiAgY29sb3I6ICMwZDZlZmQ7XFxufVxcbi5saW5rLXByaW1hcnk6aG92ZXIsIC5saW5rLXByaW1hcnk6Zm9jdXMge1xcbiAgY29sb3I6ICMwYTU4Y2E7XFxufVxcblxcbi5saW5rLXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzZjNzU3ZDtcXG59XFxuLmxpbmstc2Vjb25kYXJ5OmhvdmVyLCAubGluay1zZWNvbmRhcnk6Zm9jdXMge1xcbiAgY29sb3I6ICM1NjVlNjQ7XFxufVxcblxcbi5saW5rLXN1Y2Nlc3Mge1xcbiAgY29sb3I6ICMxOTg3NTQ7XFxufVxcbi5saW5rLXN1Y2Nlc3M6aG92ZXIsIC5saW5rLXN1Y2Nlc3M6Zm9jdXMge1xcbiAgY29sb3I6ICMxNDZjNDM7XFxufVxcblxcbi5saW5rLWluZm8ge1xcbiAgY29sb3I6ICMwZGNhZjA7XFxufVxcbi5saW5rLWluZm86aG92ZXIsIC5saW5rLWluZm86Zm9jdXMge1xcbiAgY29sb3I6ICMzZGQ1ZjM7XFxufVxcblxcbi5saW5rLXdhcm5pbmcge1xcbiAgY29sb3I6ICNmZmMxMDc7XFxufVxcbi5saW5rLXdhcm5pbmc6aG92ZXIsIC5saW5rLXdhcm5pbmc6Zm9jdXMge1xcbiAgY29sb3I6ICNmZmNkMzk7XFxufVxcblxcbi5saW5rLWRhbmdlciB7XFxuICBjb2xvcjogI2RjMzU0NTtcXG59XFxuLmxpbmstZGFuZ2VyOmhvdmVyLCAubGluay1kYW5nZXI6Zm9jdXMge1xcbiAgY29sb3I6ICNiMDJhMzc7XFxufVxcblxcbi5saW5rLWxpZ2h0IHtcXG4gIGNvbG9yOiAjZjhmOWZhO1xcbn1cXG4ubGluay1saWdodDpob3ZlciwgLmxpbmstbGlnaHQ6Zm9jdXMge1xcbiAgY29sb3I6ICNmOWZhZmI7XFxufVxcblxcbi5saW5rLWRhcmsge1xcbiAgY29sb3I6ICMyMTI1Mjk7XFxufVxcbi5saW5rLWRhcms6aG92ZXIsIC5saW5rLWRhcms6Zm9jdXMge1xcbiAgY29sb3I6ICMxYTFlMjE7XFxufVxcblxcbi5yYXRpbyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogMTAwJTtcXG59XFxuLnJhdGlvOjpiZWZvcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nLXRvcDogdmFyKC0tYnMtYXNwZWN0LXJhdGlvKTtcXG4gIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbn1cXG4ucmF0aW8gPiAqIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDA7XFxuICB3aWR0aDogMTAwJTtcXG4gIGhlaWdodDogMTAwJTtcXG59XFxuXFxuLnJhdGlvLTF4MSB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogMTAwJTtcXG59XFxuXFxuLnJhdGlvLTR4MyB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogY2FsYygzIC8gNCAqIDEwMCUpO1xcbn1cXG5cXG4ucmF0aW8tMTZ4OSB7XFxuICAtLWJzLWFzcGVjdC1yYXRpbzogY2FsYyg5IC8gMTYgKiAxMDAlKTtcXG59XFxuXFxuLnJhdGlvLTIxeDkge1xcbiAgLS1icy1hc3BlY3QtcmF0aW86IGNhbGMoOSAvIDIxICogMTAwJSk7XFxufVxcblxcbi5maXhlZC10b3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogMTAzMDtcXG59XFxuXFxuLmZpeGVkLWJvdHRvbSB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxMDMwO1xcbn1cXG5cXG4uc3RpY2t5LXRvcCB7XFxuICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgdG9wOiAwO1xcbiAgei1pbmRleDogMTAyMDtcXG59XFxuXFxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XFxuICAuc3RpY2t5LXNtLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuc3RpY2t5LW1kLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XFxuICAuc3RpY2t5LWxnLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLnN0aWNreS14bC10b3Age1xcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xcbiAgICB0b3A6IDA7XFxuICAgIHotaW5kZXg6IDEwMjA7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5zdGlja3kteHhsLXRvcCB7XFxuICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgIHRvcDogMDtcXG4gICAgei1pbmRleDogMTAyMDtcXG4gIH1cXG59XFxuLnZpc3VhbGx5LWhpZGRlbixcXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XFxuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XFxuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XFxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XFxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XFxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0cmV0Y2hlZC1saW5rOjphZnRlciB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAxO1xcbiAgY29udGVudDogXFxcIlxcXCI7XFxufVxcblxcbi50ZXh0LXRydW5jYXRlIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcblxcbi5hbGlnbi1iYXNlbGluZSB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXRvcCB7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1taWRkbGUge1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tYm90dG9tIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXRleHQtYm90dG9tIHtcXG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tdGV4dC10b3Age1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbG9hdC1zdGFydCB7XFxuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxvYXQtZW5kIHtcXG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxvYXQtbm9uZSB7XFxuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctYXV0byB7XFxuICBvdmVyZmxvdzogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ub3ZlcmZsb3ctaGlkZGVuIHtcXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LXZpc2libGUge1xcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcXG59XFxuXFxuLm92ZXJmbG93LXNjcm9sbCB7XFxuICBvdmVyZmxvdzogc2Nyb2xsICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWlubGluZSB7XFxuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtaW5saW5lLWJsb2NrIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1ibG9jayB7XFxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC1ncmlkIHtcXG4gIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtdGFibGUge1xcbiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtdGFibGUtcm93IHtcXG4gIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZC10YWJsZS1jZWxsIHtcXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG59XFxuXFxuLmQtZmxleCB7XFxuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLWlubGluZS1mbGV4IHtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5kLW5vbmUge1xcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93IHtcXG4gIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93LXNtIHtcXG4gIGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMDc1KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc2hhZG93LWxnIHtcXG4gIGJveC1zaGFkb3c6IDAgMXJlbSAzcmVtIHJnYmEoMCwgMCwgMCwgMC4xNzUpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zaGFkb3ctbm9uZSB7XFxuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1zdGF0aWMge1xcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tcmVsYXRpdmUge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcXG59XFxuXFxuLnBvc2l0aW9uLWZpeGVkIHtcXG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucG9zaXRpb24tc3RpY2t5IHtcXG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcXG59XFxuXFxuLnRvcC0wIHtcXG4gIHRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udG9wLTUwIHtcXG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50b3AtMTAwIHtcXG4gIHRvcDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm90dG9tLTAge1xcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3R0b20tNTAge1xcbiAgYm90dG9tOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvdHRvbS0xMDAge1xcbiAgYm90dG9tOiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5zdGFydC0wIHtcXG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnN0YXJ0LTUwIHtcXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uc3RhcnQtMTAwIHtcXG4gIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmVuZC0wIHtcXG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5lbmQtNTAge1xcbiAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZW5kLTEwMCB7XFxuICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZSB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZS14IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udHJhbnNsYXRlLW1pZGRsZS15IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyIHtcXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0wIHtcXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXRvcCB7XFxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXRvcC0wIHtcXG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1lbmQge1xcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWVuZC0wIHtcXG4gIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWJvdHRvbSB7XFxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWJvdHRvbS0wIHtcXG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zdGFydCB7XFxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZWUyZTYgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zdGFydC0wIHtcXG4gIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItcHJpbWFyeSB7XFxuICBib3JkZXItY29sb3I6ICMwZDZlZmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1zZWNvbmRhcnkge1xcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItc3VjY2VzcyB7XFxuICBib3JkZXItY29sb3I6ICMxOTg3NTQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci1pbmZvIHtcXG4gIGJvcmRlci1jb2xvcjogIzBkY2FmMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLXdhcm5pbmcge1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZjMTA3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItZGFuZ2VyIHtcXG4gIGJvcmRlci1jb2xvcjogI2RjMzU0NSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWxpZ2h0IHtcXG4gIGJvcmRlci1jb2xvcjogI2Y4ZjlmYSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLWRhcmsge1xcbiAgYm9yZGVyLWNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItd2hpdGUge1xcbiAgYm9yZGVyLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMCB7XFxuICBib3JkZXItd2lkdGg6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci0xIHtcXG4gIGJvcmRlci13aWR0aDogMXB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItMiB7XFxuICBib3JkZXItd2lkdGg6IDJweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYm9yZGVyLTMge1xcbiAgYm9yZGVyLXdpZHRoOiAzcHggIWltcG9ydGFudDtcXG59XFxuXFxuLmJvcmRlci00IHtcXG4gIGJvcmRlci13aWR0aDogNHB4ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5ib3JkZXItNSB7XFxuICBib3JkZXItd2lkdGg6IDVweCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy0yNSB7XFxuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi53LTUwIHtcXG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctNzUge1xcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udy0xMDAge1xcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLnctYXV0byB7XFxuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXctMTAwIHtcXG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udnctMTAwIHtcXG4gIHdpZHRoOiAxMDB2dyAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWluLXZ3LTEwMCB7XFxuICBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTI1IHtcXG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTUwIHtcXG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTc1IHtcXG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5oLTEwMCB7XFxuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcXG59XFxuXFxuLmgtYXV0byB7XFxuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1oLTEwMCB7XFxuICBtYXgtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi52aC0xMDAge1xcbiAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWluLXZoLTEwMCB7XFxuICBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1maWxsIHtcXG4gIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXJvdyB7XFxuICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LWNvbHVtbiB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXJvdy1yZXZlcnNlIHtcXG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1jb2x1bW4tcmV2ZXJzZSB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG59XFxuXFxuLmZsZXgtZ3Jvdy0wIHtcXG4gIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC1ncm93LTEge1xcbiAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXNocmluay0wIHtcXG4gIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXNocmluay0xIHtcXG4gIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LXdyYXAge1xcbiAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mbGV4LW5vd3JhcCB7XFxuICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZmxleC13cmFwLXJldmVyc2Uge1xcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG59XFxuXFxuLmdhcC0wIHtcXG4gIGdhcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTEge1xcbiAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtMiB7XFxuICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTMge1xcbiAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5nYXAtNCB7XFxuICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZ2FwLTUge1xcbiAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtc3RhcnQge1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1jZW50ZXIge1xcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWFyb3VuZCB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uanVzdGlmeS1jb250ZW50LWV2ZW5seSB7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24taXRlbXMtc3RhcnQge1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLWVuZCB7XFxuICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLWNlbnRlciB7XFxuICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1pdGVtcy1iYXNlbGluZSB7XFxuICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWl0ZW1zLXN0cmV0Y2gge1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtc3RhcnQge1xcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1lbmQge1xcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtY2VudGVyIHtcXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1iZXR3ZWVuIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLWNvbnRlbnQtYXJvdW5kIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYWxpZ24tY29udGVudC1zdHJldGNoIHtcXG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtYXV0byB7XFxuICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLXN0YXJ0IHtcXG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtZW5kIHtcXG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxufVxcblxcbi5hbGlnbi1zZWxmLWNlbnRlciB7XFxuICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtYmFzZWxpbmUge1xcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG59XFxuXFxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XFxuICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxufVxcblxcbi5vcmRlci1maXJzdCB7XFxuICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTAge1xcbiAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTEge1xcbiAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTIge1xcbiAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTMge1xcbiAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTQge1xcbiAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLTUge1xcbiAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG59XFxuXFxuLm9yZGVyLWxhc3Qge1xcbiAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMCB7XFxuICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMSB7XFxuICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm0tMiB7XFxuICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS0zIHtcXG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubS00IHtcXG4gIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLTUge1xcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tLWF1dG8ge1xcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC0wIHtcXG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLm14LTEge1xcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMiB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXgtMyB7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC00IHtcXG4gIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teC01IHtcXG4gIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm14LWF1dG8ge1xcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktMCB7XFxuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS0xIHtcXG4gIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTIge1xcbiAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm15LTMge1xcbiAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktNCB7XFxuICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXktNSB7XFxuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5teS1hdXRvIHtcXG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm10LTAge1xcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMSB7XFxuICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC0yIHtcXG4gIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtMyB7XFxuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC00IHtcXG4gIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXQtNSB7XFxuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tdC1hdXRvIHtcXG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTAge1xcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS0xIHtcXG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMiB7XFxuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWUtMyB7XFxuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTQge1xcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1lLTUge1xcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tZS1hdXRvIHtcXG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubWItMCB7XFxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0xIHtcXG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTIge1xcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi0zIHtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLTQge1xcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tYi01IHtcXG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1iLWF1dG8ge1xcbiAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMCB7XFxuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMSB7XFxuICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubXMtMiB7XFxuICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy0zIHtcXG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5tcy00IHtcXG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLTUge1xcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLm1zLWF1dG8ge1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtMCB7XFxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wLTEge1xcbiAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0yIHtcXG4gIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucC0zIHtcXG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtNCB7XFxuICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnAtNSB7XFxuICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weC0wIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTIge1xcbiAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB4LTQge1xcbiAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHgtNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB5LTAge1xcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0xIHtcXG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktMiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS0zIHtcXG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHktNCB7XFxuICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5weS01IHtcXG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMCB7XFxuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMSB7XFxuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHQtMiB7XFxuICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC0zIHtcXG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wdC00IHtcXG4gIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnB0LTUge1xcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBlLTAge1xcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS0yIHtcXG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtMyB7XFxuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS00IHtcXG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGUtNSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0wIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0xIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wYi0yIHtcXG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTMge1xcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnBiLTQge1xcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucGItNSB7XFxuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtMCB7XFxuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG59XFxuXFxuLnBzLTEge1xcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0yIHtcXG4gIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wcy0zIHtcXG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtNCB7XFxuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucHMtNSB7XFxuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTEge1xcbiAgZm9udC1zaXplOiBjYWxjKDEuMzc1cmVtICsgMS41dncpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy0yIHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjMyNXJlbSArIDAuOXZ3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtMyB7XFxuICBmb250LXNpemU6IGNhbGMoMS4zcmVtICsgMC42dncpICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mcy00IHtcXG4gIGZvbnQtc2l6ZTogY2FsYygxLjI3NXJlbSArIDAuM3Z3KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnMtNSB7XFxuICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLmZzLTYge1xcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mc3QtaXRhbGljIHtcXG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xcbn1cXG5cXG4uZnN0LW5vcm1hbCB7XFxuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWxpZ2h0IHtcXG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWxpZ2h0ZXIge1xcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXIgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LW5vcm1hbCB7XFxuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5mdy1ib2xkIHtcXG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcXG59XFxuXFxuLmZ3LWJvbGRlciB7XFxuICBmb250LXdlaWdodDogYm9sZGVyICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWxvd2VyY2FzZSB7XFxuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXVwcGVyY2FzZSB7XFxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWNhcGl0YWxpemUge1xcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtc3RhcnQge1xcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1lbmQge1xcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtY2VudGVyIHtcXG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1wcmltYXJ5IHtcXG4gIGNvbG9yOiAjMGQ2ZWZkICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LXNlY29uZGFyeSB7XFxuICBjb2xvcjogIzZjNzU3ZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1zdWNjZXNzIHtcXG4gIGNvbG9yOiAjMTk4NzU0ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWluZm8ge1xcbiAgY29sb3I6ICMwZGNhZjAgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2FybmluZyB7XFxuICBjb2xvcjogI2ZmYzEwNyAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kYW5nZXIge1xcbiAgY29sb3I6ICNkYzM1NDUgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtbGlnaHQge1xcbiAgY29sb3I6ICNmOGY5ZmEgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGFyayB7XFxuICBjb2xvcjogIzIxMjUyOSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC13aGl0ZSB7XFxuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1ib2R5IHtcXG4gIGNvbG9yOiAjMjEyNTI5ICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LW11dGVkIHtcXG4gIGNvbG9yOiAjNmM3NTdkICFpbXBvcnRhbnQ7XFxufVxcblxcbi50ZXh0LWJsYWNrLTUwIHtcXG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtd2hpdGUtNTAge1xcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1yZXNldCB7XFxuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtMSB7XFxuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtc20ge1xcbiAgbGluZS1oZWlnaHQ6IDEuMjUgIWltcG9ydGFudDtcXG59XFxuXFxuLmxoLWJhc2Uge1xcbiAgbGluZS1oZWlnaHQ6IDEuNSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ubGgtbGcge1xcbiAgbGluZS1oZWlnaHQ6IDIgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXByaW1hcnkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctc2Vjb25kYXJ5IHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICM2Yzc1N2QgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLXN1Y2Nlc3Mge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5ODc1NCAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctaW5mbyB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGRjYWYwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy13YXJuaW5nIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmMxMDcgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWRhbmdlciB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMzNTQ1ICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1saWdodCB7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhICFpbXBvcnRhbnQ7XFxufVxcblxcbi5iZy1kYXJrIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTI1MjkgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWJvZHkge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctd2hpdGUge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xcbn1cXG5cXG4uYmctdHJhbnNwYXJlbnQge1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcXG59XFxuXFxuLmJnLWdyYWRpZW50IHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWJzLWdyYWRpZW50KSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC13cmFwIHtcXG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtbm93cmFwIHtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcXG59XFxuXFxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kZWNvcmF0aW9uLXVuZGVybGluZSB7XFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4udGV4dC1kZWNvcmF0aW9uLWxpbmUtdGhyb3VnaCB7XFxuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaCAhaW1wb3J0YW50O1xcbn1cXG5cXG4vKiBydGw6YmVnaW46cmVtb3ZlICovXFxuLnRleHQtYnJlYWsge1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XFxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XFxufVxcblxcbi8qIHJ0bDplbmQ6cmVtb3ZlICovXFxuLmZvbnQtbW9ub3NwYWNlIHtcXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSkgIWltcG9ydGFudDtcXG59XFxuXFxuLnVzZXItc2VsZWN0LWFsbCB7XFxuICB1c2VyLXNlbGVjdDogYWxsICFpbXBvcnRhbnQ7XFxufVxcblxcbi51c2VyLXNlbGVjdC1hdXRvIHtcXG4gIHVzZXItc2VsZWN0OiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi51c2VyLXNlbGVjdC1ub25lIHtcXG4gIHVzZXItc2VsZWN0OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS1ub25lIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XFxufVxcblxcbi5wZS1hdXRvIHtcXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtMCB7XFxuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLTEge1xcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLTIge1xcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC0zIHtcXG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbSAhaW1wb3J0YW50O1xcbn1cXG5cXG4ucm91bmRlZC1jaXJjbGUge1xcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLXBpbGwge1xcbiAgYm9yZGVyLXJhZGl1czogNTByZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtdG9wIHtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLWVuZCB7XFxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnJvdW5kZWQtYm90dG9tIHtcXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxufVxcblxcbi5yb3VuZGVkLXN0YXJ0IHtcXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcXG59XFxuXFxuLnZpc2libGUge1xcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xcbn1cXG5cXG4uaW52aXNpYmxlIHtcXG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xcbn1cXG5cXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcXG4gIC5mbG9hdC1zbS1zdGFydCB7XFxuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtc20tZW5kIHtcXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxvYXQtc20tbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtc20tdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXNtLWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1zbS1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tZmlsbCB7XFxuICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1jb2x1bW4ge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1yb3ctcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXNtLWdyb3ctMCB7XFxuICAgIGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20tZ3Jvdy0xIHtcXG4gICAgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1zaHJpbmstMSB7XFxuICAgIGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS13cmFwIHtcXG4gICAgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1zbS1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtc20td3JhcC1yZXZlcnNlIHtcXG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtc20tMCB7XFxuICAgIGdhcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0xIHtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTIge1xcbiAgICBnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS0zIHtcXG4gICAgZ2FwOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXNtLTQge1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1zbS01IHtcXG4gICAgZ2FwOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLXN0YXJ0IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXNtLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtc20tYmV0d2VlbiB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1zbS1ldmVubHkge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXNtLXN0YXJ0IHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1jZW50ZXIge1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtc20tYmFzZWxpbmUge1xcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1zbS1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLXN0YXJ0IHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tZW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tYmV0d2VlbiB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXNtLWFyb3VuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWF1dG8ge1xcbiAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1zdGFydCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1zbS1jZW50ZXIge1xcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXNtLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItc20tZmlyc3Qge1xcbiAgICBvcmRlcjogLTEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0wIHtcXG4gICAgb3JkZXI6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0yIHtcXG4gICAgb3JkZXI6IDIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS0zIHtcXG4gICAgb3JkZXI6IDMgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS01IHtcXG4gICAgb3JkZXI6IDUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1zbS1sYXN0IHtcXG4gICAgb3JkZXI6IDYgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTEge1xcbiAgICBtYXJnaW46IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXNtLTIge1xcbiAgICBtYXJnaW46IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tc20tNCB7XFxuICAgIG1hcmdpbjogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS01IHtcXG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1zbS1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtc20tMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXNtLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktc20tMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXNtLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1zbS1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtc20tMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1zbS01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tMCB7XFxuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLTEge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1zbS0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtc20tNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXNtLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1zbS0wIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tMiB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTMge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXNtLTUge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItc20tYXV0byB7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0xIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1zbS0yIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXNtLTQge1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tNSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtc20tYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS0wIHtcXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtc20tMSB7XFxuICAgIHBhZGRpbmc6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXNtLTMge1xcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS00IHtcXG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1zbS01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXNtLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1zbS00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtc20tNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktc20tMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXNtLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1zbS01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1zbS0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTMge1xcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXNtLTQge1xcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtc20tNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtc20tMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS0zIHtcXG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXNtLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1zbS01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTAge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTEge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXNtLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tMyB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItc20tNCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1zbS01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS0wIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtc20tMSB7XFxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXNtLTMge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS00IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1zbS01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1zbS1zdGFydCB7XFxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXNtLWVuZCB7XFxuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1zbS1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XFxuICAuZmxvYXQtbWQtc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LW1kLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LW1kLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLW1kLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1tZC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbWQtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1tZC1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbWQtbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LW1kLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLW1kLTAge1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtMSB7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC0yIHtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtMyB7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1tZC00IHtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbWQtNSB7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1tZC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LW1kLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbWQtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1tZC1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLW1kLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbWQtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1tZC1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LW1kLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbWQtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi1tZC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLW1kLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXItbWQtbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1tZC0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLW1kLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbWQtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LW1kLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1tZC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbWQtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LW1kLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1tZC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbWQtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LW1kLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbWQtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbWQtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLW1kLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1tZC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbWQtMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1tZC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbWQtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1tZC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLW1kLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLW1kLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1tZC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbWQtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1tZC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbWQtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LW1kLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LW1kLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1tZC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbWQtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbWQtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1tZC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LW1kLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLW1kLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1tZC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbWQtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1tZC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLW1kLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbWQtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLW1kLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1tZC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbWQtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC1tZC1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbWQtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgLmZsb2F0LWxnLXN0YXJ0IHtcXG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1sZy1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC1sZy1ub25lIHtcXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZSB7XFxuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy1ncmlkIHtcXG4gICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctdGFibGUtcm93IHtcXG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1sZy10YWJsZS1jZWxsIHtcXG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtbGctZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLWlubGluZS1mbGV4IHtcXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLWxnLW5vbmUge1xcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXJvdyB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLWNvbHVtbiB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1jb2x1bW4tcmV2ZXJzZSB7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgtbGctZ3Jvdy0wIHtcXG4gICAgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXNocmluay0wIHtcXG4gICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXNocmluay0xIHtcXG4gICAgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LWxnLW5vd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC1sZy13cmFwLXJldmVyc2Uge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC1sZy0wIHtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTEge1xcbiAgICBnYXA6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctMiB7XFxuICAgIGdhcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTMge1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAtbGctNCB7XFxuICAgIGdhcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLWxnLTUge1xcbiAgICBnYXA6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQtbGctZW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1jZW50ZXIge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC1sZy1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWFyb3VuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LWxnLWV2ZW5seSB7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMtbGctc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLWVuZCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLWNlbnRlciB7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy1sZy1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLWxnLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctc3RhcnQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctY2VudGVyIHtcXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQtbGctYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC1sZy1zdHJldGNoIHtcXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctYXV0byB7XFxuICAgIGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctZW5kIHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLWxnLWNlbnRlciB7XFxuICAgIGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYtbGctc3RyZXRjaCB7XFxuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci1sZy1maXJzdCB7XFxuICAgIG9yZGVyOiAtMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTEge1xcbiAgICBvcmRlcjogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTIge1xcbiAgICBvcmRlcjogMiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTQge1xcbiAgICBvcmRlcjogNCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLTUge1xcbiAgICBvcmRlcjogNSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLWxnLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctMCB7XFxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctMSB7XFxuICAgIG1hcmdpbjogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0tbGctMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy0zIHtcXG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS1sZy00IHtcXG4gICAgbWFyZ2luOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLWxnLWF1dG8ge1xcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC1sZy0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgtbGctNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS1sZy0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTIge1xcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLTQge1xcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXktbGctNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LWxnLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC1sZy0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTMge1xcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LWxnLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQtbGctYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy0wIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTIge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLWxnLTMge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS1sZy01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUtbGctYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLWxnLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctMSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy0yIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy00IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWItbGctNSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTAge1xcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTEge1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLWxnLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctMyB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMtbGctNCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy1sZy1hdXRvIHtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTAge1xcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC1sZy0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctMiB7XFxuICAgIHBhZGRpbmc6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAtbGctMyB7XFxuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLWxnLTUge1xcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctMCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgtbGctMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LWxnLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC1sZy01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy0wIHtcXG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS1sZy0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHktbGctNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LWxnLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LWxnLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctMyB7XFxuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQtbGctNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC1sZy01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS1sZy0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctMiB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTMge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUtbGctNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLWxnLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctMCB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGItbGctMiB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy0zIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi1sZy00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLWxnLTUge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTAge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy1sZy0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctMiB7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMtbGctMyB7XFxuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLWxnLTUge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LWxnLXN0YXJ0IHtcXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQtbGctZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LWxnLWNlbnRlciB7XFxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XFxuICAuZmxvYXQteGwtc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXhsLWVuZCB7XFxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXhsLW5vbmUge1xcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1pbmxpbmUtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWJsb2NrIHtcXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC10YWJsZSB7XFxuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC10YWJsZS1yb3cge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXhsLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14bC1mbGV4IHtcXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtaW5saW5lLWZsZXgge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteGwtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWZpbGwge1xcbiAgICBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtcm93IHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtcm93LXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWNvbHVtbi1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14bC1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLWdyb3ctMSB7XFxuICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtc2hyaW5rLTAge1xcbiAgICBmbGV4LXNocmluazogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtd3JhcCB7XFxuICAgIGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteGwtbm93cmFwIHtcXG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXhsLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXhsLTAge1xcbiAgICBnYXA6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMSB7XFxuICAgIGdhcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC0yIHtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtMyB7XFxuICAgIGdhcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14bC00IHtcXG4gICAgZ2FwOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteGwtNSB7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1zdGFydCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14bC1lbmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXhsLWJldHdlZW4ge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5kIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteGwtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14bC1zdGFydCB7XFxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtZW5kIHtcXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXhsLWJhc2VsaW5lIHtcXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24taXRlbXMteGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWVuZCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1jZW50ZXIge1xcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14bC1hcm91bmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtc3RhcnQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1lbmQge1xcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteGwtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1iYXNlbGluZSB7XFxuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14bC1zdHJldGNoIHtcXG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXhsLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMCB7XFxuICAgIG9yZGVyOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMSB7XFxuICAgIG9yZGVyOiAxICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtMyB7XFxuICAgIG9yZGVyOiAzICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtNCB7XFxuICAgIG9yZGVyOiA0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteGwtbGFzdCB7XFxuICAgIG9yZGVyOiA2ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0wIHtcXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14bC0yIHtcXG4gICAgbWFyZ2luOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTMge1xcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXhsLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtNSB7XFxuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teGwtYXV0byB7XFxuICAgIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtNCB7XFxuICAgIG1hcmdpbi1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14bC01IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0xIHtcXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtNCB7XFxuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteGwtYXV0byB7XFxuICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXhsLTAge1xcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC0yIHtcXG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteGwtNSB7XFxuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC0xIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMiB7XFxuICAgIG1hcmdpbi1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14bC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteGwtMCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0xIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC0zIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLTQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14bC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMCB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteGwtMiB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC0zIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLTUge1xcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXhsLWF1dG8ge1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXhsLTEge1xcbiAgICBwYWRkaW5nOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0yIHtcXG4gICAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14bC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtNCB7XFxuICAgIHBhZGRpbmc6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteGwtNSB7XFxuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0xIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteGwtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXhsLTUge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXhsLTIge1xcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14bC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMSB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14bC00IHtcXG4gICAgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXhsLTUge1xcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXhsLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC0yIHtcXG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14bC00IHtcXG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0xIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14bC0yIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXhsLTQge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteGwtNSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXhsLTEge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0yIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14bC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtNCB7XFxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteGwtNSB7XFxuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteGwtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14bC1lbmQge1xcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnRleHQteGwtY2VudGVyIHtcXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcXG4gIC5mbG9hdC14eGwtc3RhcnQge1xcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsb2F0LXh4bC1lbmQge1xcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbG9hdC14eGwtbm9uZSB7XFxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtaW5saW5lIHtcXG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtaW5saW5lLWJsb2NrIHtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLWdyaWQge1xcbiAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtdGFibGUge1xcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQteHhsLXRhYmxlLWNlbGwge1xcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtZmxleCB7XFxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXh4bC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC14eGwtbm9uZSB7XFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1maWxsIHtcXG4gICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1yb3cge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtY29sdW1uIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXJvdy1yZXZlcnNlIHtcXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtY29sdW1uLXJldmVyc2Uge1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ncm93LTAge1xcbiAgICBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ncm93LTEge1xcbiAgICBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1zaHJpbmstMCB7XFxuICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZmxleC14eGwtc2hyaW5rLTEge1xcbiAgICBmbGV4LXNocmluazogMSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXdyYXAge1xcbiAgICBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mbGV4LXh4bC1ub3dyYXAge1xcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZsZXgteHhsLXdyYXAtcmV2ZXJzZSB7XFxuICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0wIHtcXG4gICAgZ2FwOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0xIHtcXG4gICAgZ2FwOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZ2FwLXh4bC0yIHtcXG4gICAgZ2FwOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTMge1xcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5nYXAteHhsLTQge1xcbiAgICBnYXA6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmdhcC14eGwtNSB7XFxuICAgIGdhcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtc3RhcnQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWVuZCB7XFxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5qdXN0aWZ5LWNvbnRlbnQteHhsLWNlbnRlciB7XFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1iZXR3ZWVuIHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuanVzdGlmeS1jb250ZW50LXh4bC1hcm91bmQge1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmp1c3RpZnktY29udGVudC14eGwtZXZlbmx5IHtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHkgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtc3RhcnQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1lbmQge1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1pdGVtcy14eGwtY2VudGVyIHtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1iYXNlbGluZSB7XFxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWl0ZW1zLXh4bC1zdHJldGNoIHtcXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1zdGFydCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1jb250ZW50LXh4bC1lbmQge1xcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWNlbnRlciB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLWNvbnRlbnQteHhsLWJldHdlZW4ge1xcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtYXJvdW5kIHtcXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tY29udGVudC14eGwtc3RyZXRjaCB7XFxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5hbGlnbi1zZWxmLXh4bC1hdXRvIHtcXG4gICAgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLXN0YXJ0IHtcXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLWVuZCB7XFxuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtY2VudGVyIHtcXG4gICAgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuYWxpZ24tc2VsZi14eGwtYmFzZWxpbmUge1xcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmFsaWduLXNlbGYteHhsLXN0cmV0Y2gge1xcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLWZpcnN0IHtcXG4gICAgb3JkZXI6IC0xICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTAge1xcbiAgICBvcmRlcjogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC0xIHtcXG4gICAgb3JkZXI6IDEgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtMiB7XFxuICAgIG9yZGVyOiAyICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLTMge1xcbiAgICBvcmRlcjogMyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm9yZGVyLXh4bC00IHtcXG4gICAgb3JkZXI6IDQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5vcmRlci14eGwtNSB7XFxuICAgIG9yZGVyOiA1ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAub3JkZXIteHhsLWxhc3Qge1xcbiAgICBvcmRlcjogNiAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTAge1xcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC0xIHtcXG4gICAgbWFyZ2luOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMiB7XFxuICAgIG1hcmdpbjogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubS14eGwtMyB7XFxuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTQge1xcbiAgICBtYXJnaW46IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm0teHhsLTUge1xcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm14LXh4bC0zIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTQge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXgteHhsLTUge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teC14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC0wIHtcXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLTEge1xcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5teS14eGwtMyB7XFxuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm15LXh4bC01IHtcXG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXkteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMCB7XFxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMSB7XFxuICAgIG1hcmdpbi10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tdC14eGwtMiB7XFxuICAgIG1hcmdpbi10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC0zIHtcXG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm10LXh4bC00IHtcXG4gICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLTUge1xcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXQteHhsLWF1dG8ge1xcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWUteHhsLTAge1xcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMSB7XFxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC0yIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtMyB7XFxuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC00IHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tZS14eGwtNSB7XFxuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1lLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTAge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTEge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubWIteHhsLTIge1xcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtMyB7XFxuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tYi14eGwtNCB7XFxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC01IHtcXG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1iLXh4bC1hdXRvIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC0wIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtMSB7XFxuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTIge1xcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAubXMteHhsLTMge1xcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC00IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLm1zLXh4bC01IHtcXG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5tcy14eGwtYXV0byB7XFxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucC14eGwtMCB7XFxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0xIHtcXG4gICAgcGFkZGluZzogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTIge1xcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC0zIHtcXG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnAteHhsLTQge1xcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wLXh4bC01IHtcXG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB4LXh4bC0wIHtcXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHgteHhsLTQge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weC14eGwtNSB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHkteHhsLTAge1xcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0xIHtcXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtMiB7XFxuICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5weS14eGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB5LXh4bC01IHtcXG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtMCB7XFxuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHQteHhsLTEge1xcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0yIHtcXG4gICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnB0LXh4bC0zIHtcXG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtNCB7XFxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wdC14eGwtNSB7XFxuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTAge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTEge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGUteHhsLTIge1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtMyB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wZS14eGwtNCB7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBlLXh4bC01IHtcXG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC0wIHtcXG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wYi14eGwtMSB7XFxuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTIge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucGIteHhsLTMge1xcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC00IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBiLXh4bC01IHtcXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5wcy14eGwtMCB7XFxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0xIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTIge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC0zIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAucHMteHhsLTQge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLnBzLXh4bC01IHtcXG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtc3RhcnQge1xcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAudGV4dC14eGwtZW5kIHtcXG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC50ZXh0LXh4bC1jZW50ZXIge1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcXG4gIH1cXG59XFxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xcbiAgLmZzLTEge1xcbiAgICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmZzLTIge1xcbiAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5mcy0zIHtcXG4gICAgZm9udC1zaXplOiAxLjc1cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZnMtNCB7XFxuICAgIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XFxuICB9XFxufVxcbkBtZWRpYSBwcmludCB7XFxuICAuZC1wcmludC1pbmxpbmUge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWlubGluZS1ibG9jayB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtYmxvY2sge1xcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtZ3JpZCB7XFxuICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlIHtcXG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LXRhYmxlLXJvdyB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xcbiAgfVxcblxcbiAgLmQtcHJpbnQtdGFibGUtY2VsbCB7XFxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcXG4gIH1cXG5cXG4gIC5kLXByaW50LWZsZXgge1xcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1pbmxpbmUtZmxleCB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuZC1wcmludC1ub25lIHtcXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xcbiAgfVxcbn1cXG5cXG4vKiMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAuY3NzLm1hcCAqL1xcblwiLFwiLyohXFxuICogQm9vdHN0cmFwIHY1LjAuMC1iZXRhMiAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDIxIFRoZSBCb290c3RyYXAgQXV0aG9yc1xcbiAqIENvcHlyaWdodCAyMDExLTIwMjEgVHdpdHRlciwgSW5jLlxcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxcbiAqL1xcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBpbXBvcnQtc3RhY2tcXG4vLyBDb25maWd1cmF0aW9uXFxuQGltcG9ydCBcXFwiZnVuY3Rpb25zXFxcIjtcXG5AaW1wb3J0IFxcXCJ2YXJpYWJsZXNcXFwiO1xcbkBpbXBvcnQgXFxcIm1peGluc1xcXCI7XFxuQGltcG9ydCBcXFwidXRpbGl0aWVzXFxcIjtcXG5cXG4vLyBMYXlvdXQgJiBjb21wb25lbnRzXFxuQGltcG9ydCBcXFwicm9vdFxcXCI7XFxuQGltcG9ydCBcXFwicmVib290XFxcIjtcXG5AaW1wb3J0IFxcXCJ0eXBlXFxcIjtcXG5AaW1wb3J0IFxcXCJpbWFnZXNcXFwiO1xcbkBpbXBvcnQgXFxcImNvbnRhaW5lcnNcXFwiO1xcbkBpbXBvcnQgXFxcImdyaWRcXFwiO1xcbkBpbXBvcnQgXFxcInRhYmxlc1xcXCI7XFxuQGltcG9ydCBcXFwiZm9ybXNcXFwiO1xcbkBpbXBvcnQgXFxcImJ1dHRvbnNcXFwiO1xcbkBpbXBvcnQgXFxcInRyYW5zaXRpb25zXFxcIjtcXG5AaW1wb3J0IFxcXCJkcm9wZG93blxcXCI7XFxuQGltcG9ydCBcXFwiYnV0dG9uLWdyb3VwXFxcIjtcXG5AaW1wb3J0IFxcXCJuYXZcXFwiO1xcbkBpbXBvcnQgXFxcIm5hdmJhclxcXCI7XFxuQGltcG9ydCBcXFwiY2FyZFxcXCI7XFxuQGltcG9ydCBcXFwiYWNjb3JkaW9uXFxcIjtcXG5AaW1wb3J0IFxcXCJicmVhZGNydW1iXFxcIjtcXG5AaW1wb3J0IFxcXCJwYWdpbmF0aW9uXFxcIjtcXG5AaW1wb3J0IFxcXCJiYWRnZVxcXCI7XFxuQGltcG9ydCBcXFwiYWxlcnRcXFwiO1xcbkBpbXBvcnQgXFxcInByb2dyZXNzXFxcIjtcXG5AaW1wb3J0IFxcXCJsaXN0LWdyb3VwXFxcIjtcXG5AaW1wb3J0IFxcXCJjbG9zZVxcXCI7XFxuQGltcG9ydCBcXFwidG9hc3RzXFxcIjtcXG5AaW1wb3J0IFxcXCJtb2RhbFxcXCI7XFxuQGltcG9ydCBcXFwidG9vbHRpcFxcXCI7XFxuQGltcG9ydCBcXFwicG9wb3ZlclxcXCI7XFxuQGltcG9ydCBcXFwiY2Fyb3VzZWxcXFwiO1xcbkBpbXBvcnQgXFxcInNwaW5uZXJzXFxcIjtcXG5cXG4vLyBIZWxwZXJzXFxuQGltcG9ydCBcXFwiaGVscGVyc1xcXCI7XFxuXFxuLy8gVXRpbGl0aWVzXFxuQGltcG9ydCBcXFwidXRpbGl0aWVzL2FwaVxcXCI7XFxuLy8gc2Nzcy1kb2NzLWVuZCBpbXBvcnQtc3RhY2tcXG5cIixcIjpyb290IHtcXG4gIC8vIEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xcbiAgfVxcblxcbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xcbiAgfVxcblxcbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWZvbnQtbW9ub3NwYWNlOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSl9O1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQ6ICN7JGdyYWRpZW50fTtcXG59XFxuXCIsXCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxcblxcblxcbi8vIFJlYm9vdFxcbi8vXFxuLy8gTm9ybWFsaXphdGlvbiBvZiBIVE1MIGVsZW1lbnRzLCBtYW51YWxseSBmb3JrZWQgZnJvbSBOb3JtYWxpemUuY3NzIHRvIHJlbW92ZVxcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxcbi8vXFxuLy8gTm9ybWFsaXplIGlzIGxpY2Vuc2VkIE1JVC4gaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzc1xcblxcblxcbi8vIERvY3VtZW50XFxuLy9cXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxcblxcbiosXFxuKjo6YmVmb3JlLFxcbio6OmFmdGVyIHtcXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XFxufVxcblxcblxcbi8vIFJvb3RcXG4vL1xcbi8vIEFiaWxpdHkgdG8gdGhlIHZhbHVlIG9mIHRoZSByb290IGZvbnQgc2l6ZXMsIGFmZmVjdGluZyB0aGUgdmFsdWUgb2YgYHJlbWAuXFxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxcblxcbjpyb290IHtcXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yb290O1xcblxcbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XFxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIEJvZHlcXG4vL1xcbi8vIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cXG4vLyAyLiBBcyBhIGJlc3QgcHJhY3RpY2UsIGFwcGx5IGEgZGVmYXVsdCBgYmFja2dyb3VuZC1jb2xvcmAuXFxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXFxuLy8gNC4gQ2hhbmdlIHRoZSBkZWZhdWx0IHRhcCBoaWdobGlnaHQgdG8gYmUgY29tcGxldGVseSB0cmFuc3BhcmVudCBpbiBpT1MuXFxuXFxuYm9keSB7XFxuICBtYXJnaW46IDA7IC8vIDFcXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogJGJvZHktdGV4dC1hbGlnbjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnOyAvLyAyXFxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA0XFxufVxcblxcblxcbi8vIEZ1dHVyZS1wcm9vZiBydWxlOiBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgOmZvY3VzLXZpc2libGUsIHN1cHByZXNzIHRoZSBmb2N1cyBvdXRsaW5lXFxuLy8gb24gZWxlbWVudHMgdGhhdCBwcm9ncmFtbWF0aWNhbGx5IHJlY2VpdmUgZm9jdXMgYnV0IHdvdWxkbid0IG5vcm1hbGx5IHNob3cgYSB2aXNpYmxlXFxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxcbi8vIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBlbGVtZW50IHJlY2VpdmluZyBwcm9ncmFtbWF0aWMgZm9jdXMgd2FzIGEga2V5Ym9hcmQgaW50ZXJhY3Rpb24sXFxuLy8gb3IgdGhlIGJyb3dzZXIgaGFzIHNvbWVob3cgZGV0ZXJtaW5lZCB0aGF0IHRoZSB1c2VyIGlzIHByaW1hcmlseSBhIGtleWJvYXJkIHVzZXIgYW5kL29yXFxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXFxuLy8gYW5kIGh0dHBzOi8vZGV2ZWxvcGVyLnBhY2llbGxvZ3JvdXAuY29tL2Jsb2cvMjAxOC8wMy9mb2N1cy12aXNpYmxlLWFuZC1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS9cXG5cXG5bdGFiaW5kZXg9XFxcIi0xXFxcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XFxuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XFxufVxcblxcblxcbi8vIENvbnRlbnQgZ3JvdXBpbmdcXG4vL1xcbi8vIDEuIFJlc2V0IEZpcmVmb3gncyBncmF5IGNvbG9yXFxuLy8gMi4gU2V0IGNvcnJlY3QgaGVpZ2h0IGFuZCBwcmV2ZW50IHRoZSBgc2l6ZWAgYXR0cmlidXRlIHRvIG1ha2UgdGhlIGBocmAgbG9vayBsaWtlIGFuIGlucHV0IGZpZWxkXFxuXFxuaHIge1xcbiAgbWFyZ2luOiAkaHItbWFyZ2luLXkgMDtcXG4gIGNvbG9yOiAkaHItY29sb3I7IC8vIDFcXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcXG4gIGJvcmRlcjogMDtcXG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xcbn1cXG5cXG5ocjpub3QoW3NpemVdKSB7XFxuICBoZWlnaHQ6ICRoci1oZWlnaHQ7IC8vIDJcXG59XFxuXFxuXFxuLy8gVHlwb2dyYXBoeVxcbi8vXFxuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3NcXG4vLyAgICBCeSBkZWZhdWx0LCBgPGgxPmAtYDxoNj5gIGFsbCByZWNlaXZlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuIFdlIG51a2UgdGhlIHRvcFxcbi8vICAgIG1hcmdpbiBmb3IgZWFzaWVyIGNvbnRyb2wgd2l0aGluIHR5cGUgc2NhbGVzIGFzIGl0IGF2b2lkcyBtYXJnaW4gY29sbGFwc2luZy5cXG5cXG4laGVhZGluZyB7XFxuICBtYXJnaW4tdG9wOiAwOyAvLyAxXFxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcXG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XFxuICBmb250LXN0eWxlOiAkaGVhZGluZ3MtZm9udC1zdHlsZTtcXG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XFxuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xcbiAgY29sb3I6ICRoZWFkaW5ncy1jb2xvcjtcXG59XFxuXFxuaDEge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDEtZm9udC1zaXplKTtcXG59XFxuXFxuaDIge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcXG59XFxuXFxuaDMge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcXG59XFxuXFxuaDQge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcXG59XFxuXFxuaDUge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcXG59XFxuXFxuaDYge1xcbiAgQGV4dGVuZCAlaGVhZGluZztcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcXG59XFxuXFxuXFxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXFxuLy9cXG4vLyBTaW1pbGFybHksIHRoZSB0b3AgbWFyZ2luIG9uIGA8cD5gcyBnZXQgcmVzZXQuIEhvd2V2ZXIsIHdlIGFsc28gcmVzZXQgdGhlXFxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxcblxcbnAge1xcbiAgbWFyZ2luLXRvcDogMDtcXG4gIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcXG59XFxuXFxuXFxuLy8gQWJicmV2aWF0aW9uc1xcbi8vXFxuLy8gMS4gRHVwbGljYXRlIGJlaGF2aW9yIHRvIHRoZSBkYXRhLWJzLSogYXR0cmlidXRlIGZvciBvdXIgdG9vbHRpcCBwbHVnaW5cXG4vLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXFxuLy8gMy4gQWRkIGV4cGxpY2l0IGN1cnNvciB0byBpbmRpY2F0ZSBjaGFuZ2VkIGJlaGF2aW9yLlxcbi8vIDQuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxcblxcbmFiYnJbdGl0bGVdLFxcbmFiYnJbZGF0YS1icy1vcmlnaW5hbC10aXRsZV0geyAvLyAxXFxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXFxuICBjdXJzb3I6IGhlbHA7IC8vIDNcXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gNFxcbn1cXG5cXG5cXG4vLyBBZGRyZXNzXFxuXFxuYWRkcmVzcyB7XFxuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcblxcblxcbi8vIExpc3RzXFxuXFxub2wsXFxudWwge1xcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xcbn1cXG5cXG5vbCxcXG51bCxcXG5kbCB7XFxuICBtYXJnaW4tdG9wOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcXG59XFxuXFxub2wgb2wsXFxudWwgdWwsXFxub2wgdWwsXFxudWwgb2wge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuZHQge1xcbiAgZm9udC13ZWlnaHQ6ICRkdC1mb250LXdlaWdodDtcXG59XFxuXFxuLy8gMS4gVW5kbyBicm93c2VyIGRlZmF1bHRcXG5cXG5kZCB7XFxuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcXG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXFxufVxcblxcblxcbi8vIEJsb2NrcXVvdGVcXG5cXG5ibG9ja3F1b3RlIHtcXG4gIG1hcmdpbjogMCAwIDFyZW07XFxufVxcblxcblxcbi8vIFN0cm9uZ1xcbi8vXFxuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxcblxcbmIsXFxuc3Ryb25nIHtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZGVyO1xcbn1cXG5cXG5cXG4vLyBTbWFsbFxcbi8vXFxuLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcXG5cXG5zbWFsbCB7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XFxufVxcblxcblxcbi8vIE1hcmtcXG5cXG5tYXJrIHtcXG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcXG59XFxuXFxuXFxuLy8gU3ViIGFuZCBTdXBcXG4vL1xcbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxcbi8vIGFsbCBicm93c2Vycy5cXG5cXG5zdWIsXFxuc3VwIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkc3ViLXN1cC1mb250LXNpemUpO1xcbiAgbGluZS1oZWlnaHQ6IDA7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxufVxcblxcbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XFxuc3VwIHsgdG9wOiAtLjVlbTsgfVxcblxcblxcbi8vIExpbmtzXFxuXFxuYSB7XFxuICBjb2xvcjogJGxpbmstY29sb3I7XFxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XFxuICB9XFxufVxcblxcbi8vIEFuZCB1bmRvIHRoZXNlIHN0eWxlcyBmb3IgcGxhY2Vob2xkZXIgbGlua3MvbmFtZWQgYW5jaG9ycyAod2l0aG91dCBocmVmKS5cXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxcbi8vIGNhdXNlcyBzcGVjaWZpY2l0eSBpc3N1ZXMgaW4gbWFueSBvdGhlciBzdHlsZXMgdGhhdCBhcmUgdG9vIGNvbXBsZXggdG8gZml4Llxcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5NDAyXFxuXFxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xcbiAgJixcXG4gICY6aG92ZXIge1xcbiAgICBjb2xvcjogaW5oZXJpdDtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBDb2RlXFxuXFxucHJlLFxcbmNvZGUsXFxua2JkLFxcbnNhbXAge1xcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1jb2RlO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cXG4gIGRpcmVjdGlvbjogbHRyICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gIHVuaWNvZGUtYmlkaTogYmlkaS1vdmVycmlkZTtcXG59XFxuXFxuLy8gMS4gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXFxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcXG4vLyAzLiBEb24ndCBhbGxvdyBjb250ZW50IHRvIGJyZWFrIG91dHNpZGVcXG5cXG5wcmUge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXJnaW4tdG9wOiAwOyAvLyAxXFxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXFxuICBvdmVyZmxvdzogYXV0bzsgLy8gM1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb2RlLWZvbnQtc2l6ZSk7XFxuICBjb2xvcjogJHByZS1jb2xvcjtcXG5cXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXFxuICBjb2RlIHtcXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xcbiAgICBjb2xvcjogaW5oZXJpdDtcXG4gICAgd29yZC1icmVhazogbm9ybWFsO1xcbiAgfVxcbn1cXG5cXG5jb2RlIHtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xcblxcbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXFxuICBhID4gJiB7XFxuICAgIGNvbG9yOiBpbmhlcml0O1xcbiAgfVxcbn1cXG5cXG5rYmQge1xcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGtiZC1mb250LXNpemUpO1xcbiAgY29sb3I6ICRrYmQtY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XFxuXFxuICBrYmQge1xcbiAgICBwYWRkaW5nOiAwO1xcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTtcXG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBGaWd1cmVzXFxuLy9cXG4vLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXFxuXFxuZmlndXJlIHtcXG4gIG1hcmdpbjogMCAwIDFyZW07XFxufVxcblxcblxcbi8vIEltYWdlcyBhbmQgY29udGVudFxcblxcbmltZyxcXG5zdmcge1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG59XFxuXFxuXFxuLy8gVGFibGVzXFxuLy9cXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXFxuXFxudGFibGUge1xcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XFxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xcbn1cXG5cXG5jYXB0aW9uIHtcXG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nLXk7XFxuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogbGVmdDtcXG59XFxuXFxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cXG4vLyAzLiBGaXggYWxpZ25tZW50IGZvciBTYWZhcmlcXG5cXG50aCB7XFxuICBmb250LXdlaWdodDogJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OyAvLyAxXFxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXFxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xcbn1cXG5cXG50aGVhZCxcXG50Ym9keSxcXG50Zm9vdCxcXG50cixcXG50ZCxcXG50aCB7XFxuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XFxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgYm9yZGVyLXdpZHRoOiAwO1xcbn1cXG5cXG5cXG4vLyBGb3Jtc1xcbi8vXFxuLy8gMS4gQWxsb3cgbGFiZWxzIHRvIHVzZSBgbWFyZ2luYCBmb3Igc3BhY2luZy5cXG5cXG5sYWJlbCB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIDFcXG59XFxuXFxuLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IGBib3JkZXItcmFkaXVzYCB0aGF0IG1hY09TIENocm9tZSBhZGRzLlxcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXFxuXFxuYnV0dG9uIHtcXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gIGJvcmRlci1yYWRpdXM6IDA7XFxufVxcblxcbi8vIEV4cGxpY2l0bHkgcmVtb3ZlIGZvY3VzIG91dGxpbmUgaW4gQ2hyb21pdW0gd2hlbiBpdCBzaG91bGRuJ3QgYmVcXG4vLyB2aXNpYmxlIChlLmcuIGFzIHJlc3VsdCBvZiBtb3VzZSBjbGljayBvciB0b3VjaCB0YXApLiBJdCBhbHJlYWR5XFxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxcbi8vIGNvbmZ1c2VkIGFuZCBhcHBsaWVzIGl0cyB2ZXJ5IHZpc2libGUgdHdvLXRvbmUgb3V0bGluZSBhbnl3YXkuXFxuXFxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xcbiAgb3V0bGluZTogMDtcXG59XFxuXFxuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpXFxuXFxuaW5wdXQsXFxuYnV0dG9uLFxcbnNlbGVjdCxcXG5vcHRncm91cCxcXG50ZXh0YXJlYSB7XFxuICBtYXJnaW46IDA7IC8vIDFcXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxufVxcblxcbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxcblxcbmJ1dHRvbixcXG5zZWxlY3Qge1xcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XFxufVxcblxcbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXFxuLy9cXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXFxuW3JvbGU9XFxcImJ1dHRvblxcXCJdIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXFxuXFxuc2VsZWN0IHtcXG4gIHdvcmQtd3JhcDogbm9ybWFsO1xcbn1cXG5cXG4vLyBSZW1vdmUgdGhlIGRyb3Bkb3duIGFycm93IGluIENocm9tZSBmcm9tIGlucHV0cyBidWlsdCB3aXRoIGRhdGFsaXN0cy5cXG4vLyBTZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzU0OTk3MTE4XFxuXFxuW2xpc3RdOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuXFxuLy8gMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0Llxcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXFxuLy8gMy4gT3BpbmlvbmF0ZWQ6IGFkZCBcXFwiaGFuZFxcXCIgY3Vyc29yIHRvIG5vbi1kaXNhYmxlZCBidXR0b24gZWxlbWVudHMuXFxuXFxuYnV0dG9uLFxcblt0eXBlPVxcXCJidXR0b25cXFwiXSwgLy8gMVxcblt0eXBlPVxcXCJyZXNldFxcXCJdLFxcblt0eXBlPVxcXCJzdWJtaXRcXFwiXSB7XFxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxcblxcbiAgQGlmICRlbmFibGUtYnV0dG9uLXBvaW50ZXJzIHtcXG4gICAgJjpub3QoOmRpc2FibGVkKSB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gUmVtb3ZlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBmcm9tIEZpcmVmb3gsIGJ1dCBkb24ndCByZXN0b3JlIHRoZSBvdXRsaW5lIGxpa2UgTm9ybWFsaXplLlxcblxcbjo6LW1vei1mb2N1cy1pbm5lciB7XFxuICBwYWRkaW5nOiAwO1xcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xcbn1cXG5cXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXFxuXFxudGV4dGFyZWEge1xcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxcbn1cXG5cXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxcbi8vICAgIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0Llxcbi8vICAgIFNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGZpZWxkc2V0cyBiZWhhdmUgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxcbi8vICAgIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcXG4vLyAyLiBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cXG5cXG5maWVsZHNldCB7XFxuICBtaW4td2lkdGg6IDA7IC8vIDFcXG4gIHBhZGRpbmc6IDA7IC8vIDJcXG4gIG1hcmdpbjogMDsgLy8gMlxcbiAgYm9yZGVyOiAwOyAvLyAyXFxufVxcblxcbi8vIDEuIEJ5IHVzaW5nIGBmbG9hdDogbGVmdGAsIHRoZSBsZWdlbmQgd2lsbCBiZWhhdmUgbGlrZSBhIGJsb2NrIGVsZW1lbnQuXFxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXFxuLy8gMi4gRml4IHdyYXBwaW5nIGJ1Zy5cXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yOTcxMlxcblxcbmxlZ2VuZCB7XFxuICBmbG9hdDogbGVmdDsgLy8gMVxcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogJGxlZ2VuZC1tYXJnaW4tYm90dG9tO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XFxuXFxuICArICoge1xcbiAgICBjbGVhcjogbGVmdDsgLy8gMlxcbiAgfVxcbn1cXG5cXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODg0Mlxcblxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXRleHQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1vbnRoLWZpZWxkLFxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xcbiAgcGFkZGluZzogMDtcXG59XFxuXFxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcXG4gIGhlaWdodDogYXV0bztcXG59XFxuXFxuLy8gMS4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXFxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxcbi8vICAgIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxcbi8vICAgIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2Llxcblxcblt0eXBlPVxcXCJzZWFyY2hcXFwiXSB7XFxuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMVxcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDJcXG59XFxuXFxuLy8gMS4gQSBmZXcgaW5wdXQgdHlwZXMgc2hvdWxkIHN0YXkgTFRSXFxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcXG4vLyAyLiBSVEwgb25seSBvdXRwdXRcXG4vLyBTZWUgaHR0cHM6Ly9ydGxjc3MuY29tL2xlYXJuL3VzYWdlLWd1aWRlL2NvbnRyb2wtZGlyZWN0aXZlcy8jcmF3XFxuXFxuLyogcnRsOnJhdzpcXG5bdHlwZT1cXFwidGVsXFxcIl0sXFxuW3R5cGU9XFxcInVybFxcXCJdLFxcblt0eXBlPVxcXCJlbWFpbFxcXCJdLFxcblt0eXBlPVxcXCJudW1iZXJcXFwiXSB7XFxuICBkaXJlY3Rpb246IGx0cjtcXG59XFxuKi9cXG5cXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXFxuXFxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcXG59XFxuXFxuLy8gUmVtb3ZlIHBhZGRpbmcgYXJvdW5kIGNvbG9yIHBpY2tlcnMgaW4gd2Via2l0IGJyb3dzZXJzXFxuXFxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcXG4gIHBhZGRpbmc6IDA7XFxufVxcblxcblxcbi8vIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcXG5cXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItcHNldWRvLWVsZW1lbnQtbm8tdW5rbm93blxcbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgZm9udDogaW5oZXJpdDtcXG59XFxuXFxuLy8gMS4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGBcXG4vLyAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxcblxcbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgZm9udDogaW5oZXJpdDsgLy8gMVxcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcXG59XFxuXFxuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXFxuXFxub3V0cHV0IHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuXFxuLy8gUmVtb3ZlIGJvcmRlciBmcm9tIGlmcmFtZVxcblxcbmlmcmFtZSB7XFxuICBib3JkZXI6IDA7XFxufVxcblxcbi8vIFN1bW1hcnlcXG4vL1xcbi8vIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xcblxcbnN1bW1hcnkge1xcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyAxXFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcblxcblxcbi8vIFByb2dyZXNzXFxuLy9cXG4vLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxcblxcbnByb2dyZXNzIHtcXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcXG59XFxuXFxuXFxuLy8gSGlkZGVuIGF0dHJpYnV0ZVxcbi8vXFxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZS5cXG5cXG5baGlkZGVuXSB7XFxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XFxufVxcblwiLFwiLy8gVmFyaWFibGVzXFxuLy9cXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3JcXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cXG5cXG4vLyBDb2xvciBzeXN0ZW1cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvci12YXJpYWJsZXNcXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XFxuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcXG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XFxuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcXG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XFxuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcXG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XFxuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvci12YXJpYWJsZXNcXG5cXG4vLyBmdXN2LWRpc2FibGVcXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JheS1jb2xvcnMtbWFwXFxuJGdyYXlzOiAoXFxuICBcXFwiMTAwXFxcIjogJGdyYXktMTAwLFxcbiAgXFxcIjIwMFxcXCI6ICRncmF5LTIwMCxcXG4gIFxcXCIzMDBcXFwiOiAkZ3JheS0zMDAsXFxuICBcXFwiNDAwXFxcIjogJGdyYXktNDAwLFxcbiAgXFxcIjUwMFxcXCI6ICRncmF5LTUwMCxcXG4gIFxcXCI2MDBcXFwiOiAkZ3JheS02MDAsXFxuICBcXFwiNzAwXFxcIjogJGdyYXktNzAwLFxcbiAgXFxcIjgwMFxcXCI6ICRncmF5LTgwMCxcXG4gIFxcXCI5MDBcXFwiOiAkZ3JheS05MDBcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZ3JheS1jb2xvcnMtbWFwXFxuLy8gZnVzdi1lbmFibGVcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXFxuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XFxuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XFxuJHB1cnBsZTogICM2ZjQyYzEgIWRlZmF1bHQ7XFxuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XFxuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XFxuJG9yYW5nZTogICNmZDdlMTQgIWRlZmF1bHQ7XFxuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XFxuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XFxuJHRlYWw6ICAgICMyMGM5OTcgIWRlZmF1bHQ7XFxuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxcbiRjb2xvcnM6IChcXG4gIFxcXCJibHVlXFxcIjogICAgICAgJGJsdWUsXFxuICBcXFwiaW5kaWdvXFxcIjogICAgICRpbmRpZ28sXFxuICBcXFwicHVycGxlXFxcIjogICAgICRwdXJwbGUsXFxuICBcXFwicGlua1xcXCI6ICAgICAgICRwaW5rLFxcbiAgXFxcInJlZFxcXCI6ICAgICAgICAkcmVkLFxcbiAgXFxcIm9yYW5nZVxcXCI6ICAgICAkb3JhbmdlLFxcbiAgXFxcInllbGxvd1xcXCI6ICAgICAkeWVsbG93LFxcbiAgXFxcImdyZWVuXFxcIjogICAgICAkZ3JlZW4sXFxuICBcXFwidGVhbFxcXCI6ICAgICAgICR0ZWFsLFxcbiAgXFxcImN5YW5cXFwiOiAgICAgICAkY3lhbixcXG4gIFxcXCJ3aGl0ZVxcXCI6ICAgICAgJHdoaXRlLFxcbiAgXFxcImdyYXlcXFwiOiAgICAgICAkZ3JheS02MDAsXFxuICBcXFwiZ3JheS1kYXJrXFxcIjogICRncmF5LTgwMFxcbikgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvcnMtbWFwXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcXG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XFxuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XFxuJGRhcms6ICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xcblxcbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvcnMtbWFwXFxuJHRoZW1lLWNvbG9yczogKFxcbiAgXFxcInByaW1hcnlcXFwiOiAgICAkcHJpbWFyeSxcXG4gIFxcXCJzZWNvbmRhcnlcXFwiOiAgJHNlY29uZGFyeSxcXG4gIFxcXCJzdWNjZXNzXFxcIjogICAgJHN1Y2Nlc3MsXFxuICBcXFwiaW5mb1xcXCI6ICAgICAgICRpbmZvLFxcbiAgXFxcIndhcm5pbmdcXFwiOiAgICAkd2FybmluZyxcXG4gIFxcXCJkYW5nZXJcXFwiOiAgICAgJGRhbmdlcixcXG4gIFxcXCJsaWdodFxcXCI6ICAgICAgJGxpZ2h0LFxcbiAgXFxcImRhcmtcXFwiOiAgICAgICAkZGFya1xcbikgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXFxuXFxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXFxcImxpZ2h0XFxcIiB0byBcXFwiZGFya1xcXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3Llxcbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcXG5cXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxcbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcXG4kY29sb3ItY29udHJhc3QtbGlnaHQ6ICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuXFxuLy8gZnVzdi1kaXNhYmxlXFxuJGJsdWUtMTAwOiB0aW50LWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcXG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XFxuJGJsdWUtNDAwOiB0aW50LWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XFxuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcXG4kYmx1ZS03MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA0MCUpICFkZWZhdWx0O1xcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XFxuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcXG5cXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XFxuJGluZGlnby0zMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcXG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xcbiRpbmRpZ28tNjAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xcbiRpbmRpZ28tOTAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xcblxcbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS0yMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcXG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS01MDA6ICRwdXJwbGUgIWRlZmF1bHQ7XFxuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS04MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XFxuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJHBpbmstMTAwOiB0aW50LWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcXG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XFxuJHBpbmstNDAwOiB0aW50LWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XFxuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcXG4kcGluay03MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA0MCUpICFkZWZhdWx0O1xcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XFxuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcXG5cXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XFxuJHJlZC0zMDA6IHRpbnQtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcXG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xcbiRyZWQtNjAwOiBzaGFkZS1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xcbiRyZWQtOTAwOiBzaGFkZS1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xcblxcbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS0yMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcXG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS01MDA6ICRvcmFuZ2UgIWRlZmF1bHQ7XFxuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS04MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XFxuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJHllbGxvdy0xMDA6IHRpbnQtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XFxuJHllbGxvdy00MDA6IHRpbnQtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcXG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTcwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcXG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcXG5cXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tMzAwOiB0aW50LWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XFxuJGdyZWVuLTYwMDogc2hhZGUtY29sb3IoJGdyZWVuLCAyMCUpICFkZWZhdWx0O1xcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcXG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XFxuJGdyZWVuLTkwMDogc2hhZGUtY29sb3IoJGdyZWVuLCA4MCUpICFkZWZhdWx0O1xcblxcbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcXG4kdGVhbC0yMDA6IHRpbnQtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XFxuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcXG4kdGVhbC01MDA6ICR0ZWFsICFkZWZhdWx0O1xcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XFxuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcXG4kdGVhbC04MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XFxuXFxuJGN5YW4tMTAwOiB0aW50LWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcXG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XFxuJGN5YW4tNDAwOiB0aW50LWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XFxuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcXG4kY3lhbi03MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA0MCUpICFkZWZhdWx0O1xcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XFxuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcXG4vLyBmdXN2LWVuYWJsZVxcblxcbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXFxuICAoXFxcIjxcXFwiLCBcXFwiJTNjXFxcIiksXFxuICAoXFxcIj5cXFwiLCBcXFwiJTNlXFxcIiksXFxuICAoXFxcIiNcXFwiLCBcXFwiJTIzXFxcIiksXFxuICAoXFxcIihcXFwiLCBcXFwiJTI4XFxcIiksXFxuICAoXFxcIilcXFwiLCBcXFwiJTI5XFxcIiksXFxuKSAhZGVmYXVsdDtcXG5cXG4vLyBPcHRpb25zXFxuLy9cXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXFxuXFxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbjogICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1idXR0b24tcG9pbnRlcnM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XFxuJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zOiAgICAgZmFsc2UgIWRlZmF1bHQ7XFxuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcXG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xcblxcbi8vIFByZWZpeCBmb3IgOnJvb3QgQ1NTIHZhcmlhYmxlc1xcblxcbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDtcXG5cXG4vLyBHcmFkaWVudFxcbi8vXFxuLy8gVGhlIGdyYWRpZW50IHdoaWNoIGlzIGFkZGVkIHRvIGNvbXBvbmVudHMgaWYgYCRlbmFibGUtZ3JhZGllbnRzYCBpcyBgdHJ1ZWBcXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxcbiRncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgkd2hpdGUsIC4xNSksIHJnYmEoJHdoaXRlLCAwKSkgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxcblxcbi8vIFNwYWNpbmdcXG4vL1xcbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2VcXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXFxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cXG5cXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xcbiRzcGFjZXJzOiAoXFxuICAwOiAwLFxcbiAgMTogJHNwYWNlciAvIDQsXFxuICAyOiAkc3BhY2VyIC8gMixcXG4gIDM6ICRzcGFjZXIsXFxuICA0OiAkc3BhY2VyICogMS41LFxcbiAgNTogJHNwYWNlciAqIDMsXFxuKSAhZGVmYXVsdDtcXG5cXG4kbmVnYXRpdmUtc3BhY2VyczogaWYoJGVuYWJsZS1uZWdhdGl2ZS1tYXJnaW5zLCBuZWdhdGl2aWZ5LW1hcCgkc3BhY2VycyksIG51bGwpICFkZWZhdWx0O1xcblxcbi8vIFBvc2l0aW9uXFxuLy9cXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxcblxcbiRwb3NpdGlvbi12YWx1ZXM6IChcXG4gIDA6IDAsXFxuICA1MDogNTAlLFxcbiAgMTAwOiAxMDAlXFxuKSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBCb2R5XFxuLy9cXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXFxuXFxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xcbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcblxcbi8vIExpbmtzXFxuLy9cXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXFxuXFxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XFxuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcXG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XFxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcXG4kc3RyZXRjaGVkLWxpbmstei1pbmRleDogICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xcblxcbi8vIFBhcmFncmFwaHNcXG4vL1xcbi8vIFN0eWxlIHAgZWxlbWVudC5cXG5cXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBHcmlkIGJyZWFrcG9pbnRzXFxuLy9cXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcXG4kZ3JpZC1icmVha3BvaW50czogKFxcbiAgeHM6IDAsXFxuICBzbTogNTc2cHgsXFxuICBtZDogNzY4cHgsXFxuICBsZzogOTkycHgsXFxuICB4bDogMTIwMHB4LFxcbiAgeHhsOiAxNDAwcHhcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xcblxcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcXFwiJGdyaWQtYnJlYWtwb2ludHNcXFwiKTtcXG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcXFwiJGdyaWQtYnJlYWtwb2ludHNcXFwiKTtcXG5cXG5cXG4vLyBHcmlkIGNvbnRhaW5lcnNcXG4vL1xcbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXFxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXFxuICBzbTogNTQwcHgsXFxuICBtZDogNzIwcHgsXFxuICBsZzogOTYwcHgsXFxuICB4bDogMTE0MHB4LFxcbiAgeHhsOiAxMzIwcHhcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcXG5cXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFxcXCIkY29udGFpbmVyLW1heC13aWR0aHNcXFwiKTtcXG5cXG5cXG4vLyBHcmlkIGNvbHVtbnNcXG4vL1xcbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxcblxcbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcXG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xcblxcbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcXG5cXG4vLyBDb250YWluZXIgcGFkZGluZ1xcblxcbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xcblxcblxcbi8vIENvbXBvbmVudHNcXG4vL1xcbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cXG5cXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XFxuJGJvcmRlci13aWR0aHM6IChcXG4gIDA6IDAsXFxuICAxOiAxcHgsXFxuICAyOiAycHgsXFxuICAzOiAzcHgsXFxuICA0OiA0cHgsXFxuICA1OiA1cHhcXG4pICFkZWZhdWx0O1xcblxcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcXG5cXG4kYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XFxuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XFxuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XFxuJGJvcmRlci1yYWRpdXMtcGlsbDogICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XFxuXFxuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xcbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcXG4kYm94LXNoYWRvdy1pbnNldDogICAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xcblxcbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcXG5cXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcXG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XFxuXFxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XFxuXFxuLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFzcGVjdC1yYXRpb3NcXG4kYXNwZWN0LXJhdGlvczogKFxcbiAgXFxcIjF4MVxcXCI6IDEwMCUsXFxuICBcXFwiNHgzXFxcIjogY2FsYygzIC8gNCAqIDEwMCUpLFxcbiAgXFxcIjE2eDlcXFwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxcbiAgXFxcIjIxeDlcXFwiOiBjYWxjKDkgLyAyMSAqIDEwMCUpXFxuKSAhZGVmYXVsdDtcXG4vLyBzY3NzLWRvY3MtZW5kIGFzcGVjdC1yYXRpb3NcXG4vLyBzdHlsZWxpbnQtZW5hYmxlIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcblxcbi8vIFR5cG9ncmFwaHlcXG4vL1xcbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxcblxcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXFxcIlNlZ29lIFVJXFxcIiwgUm9ib3RvLCBcXFwiSGVsdmV0aWNhIE5ldWVcXFwiLCBBcmlhbCwgXFxcIk5vdG8gU2Fuc1xcXCIsIFxcXCJMaWJlcmF0aW9uIFNhbnNcXFwiLCBzYW5zLXNlcmlmLCBcXFwiQXBwbGUgQ29sb3IgRW1vamlcXFwiLCBcXFwiU2Vnb2UgVUkgRW1vamlcXFwiLCBcXFwiU2Vnb2UgVUkgU3ltYm9sXFxcIiwgXFxcIk5vdG8gQ29sb3IgRW1vamlcXFwiICFkZWZhdWx0O1xcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXFxcIkxpYmVyYXRpb24gTW9ub1xcXCIsIFxcXCJDb3VyaWVyIE5ld1xcXCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcXG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LXNhbnMtc2VyaWYpICFkZWZhdWx0O1xcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XFxuXFxuLy8gJGZvbnQtc2l6ZS1yb290IGVmZmVjdHMgdGhlIHZhbHVlIG9mIGByZW1gLCB3aGljaCBpcyB1c2VkIGZvciBhcyB3ZWxsIGZvbnQgc2l6ZXMsIHBhZGRpbmdzIGFuZCBtYXJnaW5zXFxuLy8gJGZvbnQtc2l6ZS1iYXNlIGVmZmVjdHMgdGhlIGZvbnQgc2l6ZSBvZiB0aGUgYm9keSB0ZXh0XFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcXG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XFxuXFxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcXG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XFxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcXG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XFxuXFxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcXG5cXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XFxuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xcblxcbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcXG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XFxuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XFxuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXFxuJGZvbnQtc2l6ZXM6IChcXG4gIDE6ICRoMS1mb250LXNpemUsXFxuICAyOiAkaDItZm9udC1zaXplLFxcbiAgMzogJGgzLWZvbnQtc2l6ZSxcXG4gIDQ6ICRoNC1mb250LXNpemUsXFxuICA1OiAkaDUtZm9udC1zaXplLFxcbiAgNjogJGg2LWZvbnQtc2l6ZVxcbikgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXFxuXFxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XFxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcXG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XFxuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xcbiRkaXNwbGF5LWZvbnQtc2l6ZXM6IChcXG4gIDE6IDVyZW0sXFxuICAyOiA0LjVyZW0sXFxuICAzOiA0cmVtLFxcbiAgNDogMy41cmVtLFxcbiAgNTogM3JlbSxcXG4gIDY6IDIuNXJlbVxcbikgIWRlZmF1bHQ7XFxuXFxuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcXG4kZGlzcGxheS1saW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xcblxcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XFxuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xcblxcbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcXG5cXG4kc3ViLXN1cC1mb250LXNpemU6ICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcXG5cXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuXFxuJGluaXRpYWxpc20tZm9udC1zaXplOiAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG5cXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XFxuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XFxuXFxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xcblxcbiRsZWdlbmQtbWFyZ2luLWJvdHRvbTogICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcXG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XFxuXFxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XFxuXFxuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XFxuXFxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuXFxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcXG5cXG5cXG4vLyBUYWJsZXNcXG4vL1xcbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXFxuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJHRhYmxlLWNlbGwtcGFkZGluZy14OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcXG5cXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XFxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG5cXG4kdGFibGUtc3RyaXBlZC1jb2xvcjogICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XFxuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xcbiR0YWJsZS1zdHJpcGVkLWJnOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpICFkZWZhdWx0O1xcblxcbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcXG4kdGFibGUtYWN0aXZlLWJnLWZhY3RvcjogICAgICAuMSAhZGVmYXVsdDtcXG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3IpICFkZWZhdWx0O1xcblxcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcXG4kdGFibGUtaG92ZXItYmctZmFjdG9yOiAgICAgICAuMDc1ICFkZWZhdWx0O1xcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcXG5cXG4kdGFibGUtYm9yZGVyLWZhY3RvcjogICAgICAgICAuMSAhZGVmYXVsdDtcXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuXFxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xcblxcbiR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I6IGN1cnJlbnRDb2xvciAhZGVmYXVsdDtcXG5cXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcXG5cXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xcblxcbiR0YWJsZS12YXJpYW50czogKFxcbiAgXFxcInByaW1hcnlcXFwiOiAgICBzaGlmdC1jb2xvcigkcHJpbWFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcXG4gIFxcXCJzZWNvbmRhcnlcXFwiOiAgc2hpZnQtY29sb3IoJHNlY29uZGFyeSwgJHRhYmxlLWJnLXNjYWxlKSxcXG4gIFxcXCJzdWNjZXNzXFxcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXFxuICBcXFwiaW5mb1xcXCI6ICAgICAgIHNoaWZ0LWNvbG9yKCRpbmZvLCAkdGFibGUtYmctc2NhbGUpLFxcbiAgXFxcIndhcm5pbmdcXFwiOiAgICBzaGlmdC1jb2xvcigkd2FybmluZywgJHRhYmxlLWJnLXNjYWxlKSxcXG4gIFxcXCJkYW5nZXJcXFwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcXG4gIFxcXCJsaWdodFxcXCI6ICAgICAgJGxpZ2h0LFxcbiAgXFxcImRhcmtcXFwiOiAgICAgICAkZGFyayxcXG4pICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtdmFyaWFibGVzXFxuXFxuXFxuLy8gQnV0dG9ucyArIEZvcm1zXFxuLy9cXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cXG5cXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSkgIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xcblxcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuXFxuXFxuLy8gQnV0dG9uc1xcbi8vXFxuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXFxuXFxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcXG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcXG5cXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcXG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcXG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcXG5cXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcXG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcXG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG5cXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG5cXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XFxuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcXG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XFxuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XFxuXFxuJGJ0bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XFxuJGJ0bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XFxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcblxcbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcXG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcXG5cXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuXFxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcXG4kYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50OiAgICAgICAgMTUlICFkZWZhdWx0O1xcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XFxuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcXG4kYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQ6ICAgICAgMjAlICFkZWZhdWx0O1xcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XFxuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcXG4kYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQ6ICAgMTAlICFkZWZhdWx0O1xcblxcblxcbi8vIEZvcm1zXFxuXFxuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcXG4kZm9ybS10ZXh0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS10ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRmb3JtLWxhYmVsLWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblxcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcXG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XFxuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XFxuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XFxuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XFxuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XFxuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XFxuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcXG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW0sICRpbnB1dC1wYWRkaW5nLXkpICFkZWZhdWx0O1xcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcXG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcXG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcXG5cXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG5cXG5cXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stbWluLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xcblxcbiRmb3JtLWNoZWNrLWlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMjUpICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwbDMgM2w2LTYnLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzInIGZpbGw9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J002IDEwaDgnLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XFxuJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk6ICAgICRidG4tZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMjUpICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XFxuJGZvcm0tc3dpdGNoLWJnLWltYWdlOiAgICAgICAgICAgIHVybChcXFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcXG4kZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbjogICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcblxcbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZTogICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcblxcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZTogICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ6ICAgIDFyZW0gIWRlZmF1bHQ7XFxuXFxuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAzICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIGZvciBiYWNrZ3JvdW5kLWltYWdlXFxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcXG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNic+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicgZD0nTTIgNWw2IDYgNi02Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xcbiRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcXG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG5cXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgJGJveC1zaGFkb3ctaW5zZXQgIWRlZmF1bHQ7XFxuXFxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBFZGdlXFxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XFxuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcXG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcblxcbiRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcXG4kZm9ybS1maWxlLWJ1dHRvbi1ob3Zlci1iZzogICAgICAgc2hhZGUtY29sb3IoJGZvcm0tZmlsZS1idXR0b24tYmcsIDUlKSAhZGVmYXVsdDtcXG5cXG4kZm9ybS1mbG9hdGluZy1oZWlnaHQ6ICAgICAgICAgICAgYWRkKDMuNXJlbSwgJGlucHV0LWhlaWdodC1ib3JkZXIpICFkZWZhdWx0O1xcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteTogICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAxLjYyNXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgLjYyNXJlbSAhZGVmYXVsdDtcXG4kZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5OiAgICAgLjY1ICFkZWZhdWx0O1xcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XFxuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcblxcbi8vIEZvcm0gdmFsaWRhdGlvblxcblxcbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgJHN1Y2Nlc3MgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcXG5cXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMiAxMicgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfSc+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IChcXG4gIFxcXCJ2YWxpZFxcXCI6IChcXG4gICAgXFxcImNvbG9yXFxcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXFxuICAgIFxcXCJpY29uXFxcIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxcbiAgKSxcXG4gIFxcXCJpbnZhbGlkXFxcIjogKFxcbiAgICBcXFwiY29sb3JcXFwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxcbiAgICBcXFwiaWNvblxcXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxcbiAgKVxcbikgIWRlZmF1bHQ7XFxuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXFxuXFxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxcbi8vXFxuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XFxuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxcblxcbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XFxuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcXG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XFxuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcXG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LXN0YWNrXFxuXFxuXFxuLy8gTmF2c1xcblxcbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kbmF2LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG5cXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XFxuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xcblxcbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xcblxcblxcbi8vIE5hdmJhclxcblxcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcXG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XFxuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuXFxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcXG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xcbiRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uOiAgICAgICAgIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcXG5cXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjU1KSAhZGVmYXVsdDtcXG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcXG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcXG5cXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjU1KSAhZGVmYXVsdDtcXG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XFxuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcXG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcXG5cXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gRHJvcGRvd25zXFxuLy9cXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXFxuXFxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcXG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcXG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcXG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgc2hhZGUtY29sb3IoJGdyYXktOTAwLCAxMCUpICFkZWZhdWx0O1xcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcXG5cXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG5cXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgJHNwYWNlciAvIDQgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG5cXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuXFxuJGRyb3Bkb3duLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1kaXZpZGVyLWJnICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kZHJvcGRvd24tZGFyay1saW5rLWFjdGl2ZS1iZzogICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcXG5cXG5cXG4vLyBQYWdpbmF0aW9uXFxuXFxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XFxuXFxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuXFxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuXFxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xcblxcbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuXFxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XFxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XFxuXFxuLy8gQ2FyZHNcXG5cXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuJGNhcmQtdGl0bGUtc3BhY2VyLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XFxuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XFxuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcXG4kY2FyZC1jYXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAvIDIgIWRlZmF1bHQ7XFxuJGNhcmQtY2FwLXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXggIWRlZmF1bHQ7XFxuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XFxuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcblxcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuXFxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcXG5cXG4vLyBBY2NvcmRpb25cXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuXFxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuXFxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy14OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGFjY29yZGlvbi1jb2xvciAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWJ1dHRvbi1iZzogICAgICAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLWJnICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiwgYm9yZGVyLXJhZGl1cyAuMTVzIGVhc2UgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgOTAlKSAhZGVmYXVsdDtcXG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgMTAlKSAhZGVmYXVsdDtcXG5cXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRhY2NvcmRpb24tY29sb3IgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XFxuJGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybTogICAgICAgICAgICAgICAgcm90YXRlKDE4MGRlZykgIWRlZmF1bHQ7XFxuXFxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1jb2xvcn0nPjxwYXRoIGZpbGwtcnVsZT0nZXZlbm9kZCcgZD0nTTEuNjQ2IDQuNjQ2YS41LjUgMCAwIDEgLjcwOCAwTDggMTAuMjkzbDUuNjQ2LTUuNjQ3YS41LjUgMCAwIDEgLjcwOC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDggMGwtNi02YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfSc+PHBhdGggZmlsbC1ydWxlPSdldmVub2RkJyBkPSdNMS42NDYgNC42NDZhLjUuNSAwIDAgMSAuNzA4IDBMOCAxMC4yOTNsNS42NDYtNS42NDdhLjUuNSAwIDAgMSAuNzA4LjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOCAwbC02LTZhLjUuNSAwIDAgMSAwLS43MDh6Jy8+PC9zdmc+XFxcIikgIWRlZmF1bHQ7XFxuXFxuLy8gVG9vbHRpcHNcXG5cXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDQgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XFxuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcXG5cXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcXG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcXG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcXG5cXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXFxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU6ICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gUG9wb3ZlcnNcXG5cXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyNzZweCAhZGVmYXVsdDtcXG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XFxuJHBvcG92ZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XFxuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBzaGFkZS1jb2xvcigkcG9wb3Zlci1iZywgNiUpICFkZWZhdWx0O1xcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcXG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcblxcbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcXG5cXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xcblxcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xcblxcblxcbi8vIFRvYXN0c1xcblxcbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcXG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcXG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XFxuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xcblxcbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcXG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gQmFkZ2VzXFxuXFxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XFxuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XFxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4zNWVtICFkZWZhdWx0O1xcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xcblxcblxcbi8vIE1vZGFsc1xcblxcbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuXFxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXFxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuXFxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcXG5cXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcXG5cXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XFxuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcXG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAkYm94LXNoYWRvdy1zbSAhZGVmYXVsdDtcXG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcXG5cXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XFxuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XFxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcXG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XFxuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XFxuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XFxuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcXG5cXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcXG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcXG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XFxuXFxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcXG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XFxuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XFxuXFxuXFxuLy8gQWxlcnRzXFxuLy9cXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cXG5cXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XFxuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcXG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xcblxcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XFxuJGFsZXJ0LWJvcmRlci1zY2FsZTogICAgICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDtcXG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgICAgICA0MCUgIWRlZmF1bHQ7XFxuXFxuJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjogICAgICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXFxuXFxuXFxuLy8gUHJvZ3Jlc3MgYmFyc1xcblxcbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XFxuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xcblxcblxcbi8vIExpc3QgZ3JvdXBcXG5cXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcXG5cXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGU6ICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZTogICAgICAgNDAlICFkZWZhdWx0O1xcblxcbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XFxuXFxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xcblxcbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcXG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XFxuXFxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XFxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xcblxcblxcbi8vIEltYWdlIHRodW1ibmFpbHNcXG5cXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XFxuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XFxuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcXG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XFxuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XFxuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJGJveC1zaGFkb3ctc20gIWRlZmF1bHQ7XFxuXFxuXFxuLy8gRmlndXJlc1xcblxcbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xcblxcblxcbi8vIEJyZWFkY3J1bWJzXFxuXFxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XFxuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXFxcIi9cXFwiKSAhZGVmYXVsdDtcXG4kYnJlYWRjcnVtYi1kaXZpZGVyLWZsaXBwZWQ6ICAgICAgICAkYnJlYWRjcnVtYi1kaXZpZGVyICFkZWZhdWx0O1xcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XFxuXFxuLy8gQ2Fyb3VzZWxcXG5cXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XFxuXFxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk6ICAxICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xcblxcbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcXG4kY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI6ICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcXG5cXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcXG5cXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFxcXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J00xMS4zNTQgMS42NDZhLjUuNSAwIDAgMSAwIC43MDhMNS43MDcgOGw1LjY0NyA1LjY0NmEuNS41IDAgMCAxLS43MDguNzA4bC02LTZhLjUuNSAwIDAgMSAwLS43MDhsNi02YS41LjUgMCAwIDEgLjcwOCAweicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlxcXCIpICFkZWZhdWx0O1xcblxcbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCAhZGVmYXVsdDsgLy8gRGVmaW5lIHRyYW5zZm9ybSB0cmFuc2l0aW9uIGZpcnN0IGlmIHVzaW5nIG11bHRpcGxlIHRyYW5zaXRpb25zIChlLmcuLCBgdHJhbnNmb3JtIDJzIGVhc2UsIG9wYWNpdHkgLjVzIGVhc2Utb3V0YClcXG5cXG4kY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgJGJsYWNrICFkZWZhdWx0O1xcbiRjYXJvdXNlbC1kYXJrLWNhcHRpb24tY29sb3I6ICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XFxuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBTcGlubmVyc1xcblxcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcXG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XFxuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xcblxcbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcXG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xcbiRzcGlubmVyLWJvcmRlci13aWR0aC1zbTogLjJlbSAhZGVmYXVsdDtcXG5cXG5cXG4vLyBDbG9zZVxcblxcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtaGVpZ2h0OiAgICAgICAgICAgJGJ0bi1jbG9zZS13aWR0aCAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLXBhZGRpbmcteDogICAgICAgIC4yNWVtICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1jb2xvcjogICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XFxuJGJ0bi1jbG9zZS1iZzogICAgICAgICAgICAgICB1cmwoXFxcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRidG4tY2xvc2UtY29sb3J9Jz48cGF0aCBkPSdNLjI5My4yOTNhMSAxIDAgMDExLjQxNCAwTDggNi41ODYgMTQuMjkzLjI5M2ExIDEgMCAxMTEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQgMS40MTRMOCA5LjQxNGwtNi4yOTMgNi4yOTNhMSAxIDAgMDEtMS40MTQtMS40MTRMNi41ODYgOCAuMjkzIDEuNzA3YTEgMSAwIDAxMC0xLjQxNHonLz48L3N2Zz5cXFwiKSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTogICAgLjc1ICFkZWZhdWx0O1xcbiRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcXG4kYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogICAgIGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKSAhZGVmYXVsdDtcXG5cXG4vLyBDb2RlXFxuXFxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkcGluayAhZGVmYXVsdDtcXG5cXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcXG4ka2JkLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcXG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XFxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcXG5cXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xcblwiLFwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XFxuXFxuLy8gU0NTUyBSRlMgbWl4aW5cXG4vL1xcbi8vIEF1dG9tYXRlZCByZXNwb25zaXZlIHZhbHVlcyBmb3IgZm9udCBzaXplcywgcGFkZGluZ3MsIG1hcmdpbnMgYW5kIG11Y2ggbW9yZVxcbi8vXFxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi9tYXN0ZXIvTElDRU5TRSlcXG5cXG4vLyBDb25maWd1cmF0aW9uXFxuXFxuLy8gQmFzZSB2YWx1ZVxcbiRyZnMtYmFzZS12YWx1ZTogMS4yNXJlbSAhZGVmYXVsdDtcXG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcXG5cXG5AaWYgJHJmcy11bml0ICE9IHJlbSBhbmQgJHJmcy11bml0ICE9IHB4IHtcXG4gIEBlcnJvciBcXFwiYCN7JHJmcy11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cXFwiO1xcbn1cXG5cXG4vLyBCcmVha3BvaW50IGF0IHdoZXJlIHZhbHVlcyBzdGFydCBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXFxuJHJmcy1icmVha3BvaW50OiAxMjAwcHggIWRlZmF1bHQ7XFxuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xcblxcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSBweCBhbmQgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gZW0gYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IHJlbSB7XFxuICBAZXJyb3IgXFxcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlxcXCI7XFxufVxcblxcbi8vIFJlc2l6ZSB2YWx1ZXMgYmFzZWQgb24gc2NyZWVuIGhlaWdodCBhbmQgd2lkdGhcXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XFxuXFxuLy8gRmFjdG9yIG9mIGRlY3JlYXNlXFxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xcblxcbkBpZiB0eXBlLW9mKCRyZnMtZmFjdG9yKSAhPSBudW1iZXIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XFxuICBAZXJyb3IgXFxcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlxcXCI7XFxufVxcblxcbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFxcXCJtaW4tbWVkaWEtcXVlcnlcXFwiLCBcXFwibWF4LW1lZGlhLXF1ZXJ5XFxcIlxcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xcblxcbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcXFwiZW5hYmxlXFxcIiBvciBcXFwiZGlzYWJsZVxcXCJcXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcXG5cXG4vLyAxIHJlbSA9ICRyZnMtcmVtLXZhbHVlIHB4XFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xcblxcbi8vIFNhZmFyaSBpZnJhbWUgcmVzaXplIGJ1ZzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzL2lzc3Vlcy8xNFxcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XFxuXFxuLy8gRGlzYWJsZSBSRlMgYnkgc2V0dGluZyAkZW5hYmxlLXJmcyB0byBmYWxzZVxcbiRlbmFibGUtcmZzOiB0cnVlICFkZWZhdWx0O1xcblxcbi8vIENhY2hlICRyZnMtYmFzZS12YWx1ZSB1bml0XFxuJHJmcy1iYXNlLXZhbHVlLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLXZhbHVlKTtcXG5cXG4vLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRyZnMtYmFzZS12YWx1ZSBmb3IgY2FsY3VsYXRpb25zXFxuQGlmICRyZnMtYmFzZS12YWx1ZS11bml0ID09IHB4IHtcXG4gICRyZnMtYmFzZS12YWx1ZTogJHJmcy1iYXNlLXZhbHVlIC8gKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxKTtcXG59XFxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcXG4gICRyZnMtYmFzZS12YWx1ZTogJHJmcy1iYXNlLXZhbHVlIC8gKCRyZnMtYmFzZS12YWx1ZSAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xcbn1cXG5cXG4vLyBDYWNoZSAkcmZzLWJyZWFrcG9pbnQgdW5pdCB0byBwcmV2ZW50IG11bHRpcGxlIGNhbGxzXFxuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcXG5cXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXFxuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IHB4IHtcXG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcXG59XFxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFxcXCJlbVxcXCIge1xcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XFxufVxcblxcbi8vIENhbGN1bGF0ZSB0aGUgbWVkaWEgcXVlcnkgdmFsdWVcXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcXG4kcmZzLW1xLXByb3BlcnR5LWhlaWdodDogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgbWF4LWhlaWdodCwgbWluLWhlaWdodCk7XFxuXFxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5IHtcXG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XFxuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcXG4gICAgICBAbWVkaWEgKCN7JHJmcy1tcS1wcm9wZXJ0eS13aWR0aH06ICN7JHJmcy1tcS12YWx1ZX0pLCAoI3skcmZzLW1xLXByb3BlcnR5LWhlaWdodH06ICN7JHJmcy1tcS12YWx1ZX0pIHtcXG4gICAgICAgIEBjb250ZW50O1xcbiAgICAgIH1cXG4gICAgfVxcbiAgICBAZWxzZSB7XFxuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XFxuICAgICAgICBAY29udGVudDtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG4gIEBlbHNlIHtcXG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxcbkBtaXhpbiBfcmZzLXJ1bGUge1xcbiAgQGlmICRyZnMtY2xhc3MgPT0gZGlzYWJsZSBhbmQgJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSB7XFxuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcXG4gICAgJixcXG4gICAgLmRpc2FibGUtcmZzICYsXFxuICAgICYuZGlzYWJsZS1yZnMge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9XFxuICBAZWxzZSBpZiAkcmZzLWNsYXNzID09IGVuYWJsZSBhbmQgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XFxuICAgIC5lbmFibGUtcmZzICYsXFxuICAgICYuZW5hYmxlLXJmcyB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG4gIEBlbHNlIHtcXG4gICAgQGNvbnRlbnQ7XFxuICB9XFxufVxcblxcbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxcbkBtaXhpbiBfcmZzLW1lZGlhLXF1ZXJ5LXJ1bGUge1xcblxcbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcXG4gICAgQGlmICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuXFxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xcbiAgICAgIC5lbmFibGUtcmZzICYsXFxuICAgICAgJi5lbmFibGUtcmZzIHtcXG4gICAgICAgIEBjb250ZW50O1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbiAgQGVsc2Uge1xcbiAgICBAaWYgJHJmcy1jbGFzcyA9PSBkaXNhYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcXG4gICAgICAuZGlzYWJsZS1yZnMgJixcXG4gICAgICAmLmRpc2FibGUtcmZzIHtcXG4gICAgICAgIEBjb250ZW50O1xcbiAgICAgIH1cXG4gICAgfVxcbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBmb3JtYXR0ZWQgbm9uLXJlc3BvbnNpdmUgdmFsdWVcXG5AZnVuY3Rpb24gcmZzLXZhbHVlKCR2YWx1ZXMpIHtcXG4gIC8vIENvbnZlcnQgdG8gbGlzdFxcbiAgJHZhbHVlczogaWYodHlwZS1vZigkdmFsdWVzKSAhPSBsaXN0LCAoJHZhbHVlcywpLCAkdmFsdWVzKTtcXG5cXG4gICR2YWw6ICcnO1xcblxcbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xcbiAgICBAaWYgJHZhbHVlID09IDAge1xcbiAgICAgICR2YWw6ICR2YWwgKyAnIDAnO1xcbiAgICB9XFxuICAgIEBlbHNlIHtcXG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXFxcIm51bWJlclxcXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xcblxcbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XFxuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAjeyR2YWx1ZSAvICgkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcXG4gICAgICB9XFxuICAgICAgQGVsc2UgaWYgJHVuaXQgPT0gcmVtIHtcXG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHB4LCAjeyR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcXG4gICAgICB9XFxuICAgICAgQGVsc2Uge1xcbiAgICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXFxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcXG59XFxuXFxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xcbkBmdW5jdGlvbiByZnMtZmx1aWQtdmFsdWUoJHZhbHVlcykge1xcbiAgLy8gQ29udmVydCB0byBsaXN0XFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xcblxcbiAgJHZhbDogJyc7XFxuXFxuICAvLyBMb29wIG92ZXIgZWFjaCB2YWx1ZSBhbmQgY2FsY3VsYXRlIHZhbHVlXFxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XFxuICAgIEBpZiAkdmFsdWUgPT0gMCB7XFxuICAgICAgJHZhbDogJHZhbCArICcgMCc7XFxuICAgIH1cXG5cXG4gICAgQGVsc2Uge1xcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcXFwibnVtYmVyXFxcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XFxuXFxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXFxuICAgICAgQGlmIG5vdCAkdW5pdCBvciAkdW5pdCAhPSBweCBhbmQgJHVuaXQgIT0gcmVtIHtcXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyAkdmFsdWU7XFxuICAgICAgfVxcblxcbiAgICAgIEBlbHNlIHtcXG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcXG4gICAgICAgICR2YWx1ZTogJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgMSAvICRyZnMtcmVtLXZhbHVlKSk7XFxuXFxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxcbiAgICAgICAgQGlmIGFicygkdmFsdWUpIDw9ICRyZnMtYmFzZS12YWx1ZSBvciBub3QgJGVuYWJsZS1yZnMge1xcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgIGlmKCRyZnMtdW5pdCA9PSByZW0sICN7JHZhbHVlIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyR2YWx1ZX1weCk7XFxuICAgICAgICB9XFxuICAgICAgICBAZWxzZSB7XFxuICAgICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgbWluaW11bSB2YWx1ZVxcbiAgICAgICAgICAkdmFsdWUtbWluOiAkcmZzLWJhc2UtdmFsdWUgKyAoYWJzKCR2YWx1ZSkgLSAkcmZzLWJhc2UtdmFsdWUpIC8gJHJmcy1mYWN0b3I7XFxuXFxuICAgICAgICAgIC8vIENhbGN1bGF0ZSBkaWZmZXJlbmNlIGJldHdlZW4gJHZhbHVlIGFuZCB0aGUgbWluaW11bSB2YWx1ZVxcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xcblxcbiAgICAgICAgICAvLyBCYXNlIHZhbHVlIGZvcm1hdHRpbmdcXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3skdmFsdWUtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyR2YWx1ZS1taW59cHgpO1xcblxcbiAgICAgICAgICAvLyBVc2UgbmVnYXRpdmUgdmFsdWUgaWYgbmVlZGVkXFxuICAgICAgICAgICRtaW4td2lkdGg6IGlmKCR2YWx1ZSA8IDAsIC0kbWluLXdpZHRoLCAkbWluLXdpZHRoKTtcXG5cXG4gICAgICAgICAgLy8gVXNlIGB2bWluYCBpZiB0d28tZGltZW5zaW9uYWwgaXMgZW5hYmxlZFxcbiAgICAgICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcXG5cXG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxcbiAgICAgICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JHZhbHVlLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XFxuXFxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxcbiAgICAgICAgICAkdmFsOiAkdmFsICsgJyBjYWxjKCcgKyAkbWluLXdpZHRoICsgaWYoJHZhbHVlIDwgMCwgJyAtICcsICcgKyAnKSArICR2YXJpYWJsZS13aWR0aCArICcpJztcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XFxufVxcblxcbi8vIFJGUyBtaXhpblxcbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcXG4gIEBpZiAkdmFsdWVzICE9IG51bGwge1xcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XFxuICAgICRmbHVpZFZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xcblxcbiAgICAvLyBEbyBub3QgcHJpbnQgdGhlIG1lZGlhIHF1ZXJ5IGlmIHJlc3BvbnNpdmUgJiBub24tcmVzcG9uc2l2ZSB2YWx1ZXMgYXJlIHRoZSBzYW1lXFxuICAgIEBpZiAkdmFsID09ICRmbHVpZFZhbCB7XFxuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xcbiAgICB9XFxuICAgIEBlbHNlIHtcXG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUge1xcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkdmFsLCAkZmx1aWRWYWwpO1xcblxcbiAgICAgICAgLy8gSW5jbHVkZSBzYWZhcmkgaWZyYW1lIHJlc2l6ZSBmaXggaWYgbmVlZGVkXFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcXG4gICAgICB9XFxuXFxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlIHtcXG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkVmFsLCAkdmFsKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcXG5AbWl4aW4gZm9udC1zaXplKCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSk7XFxufVxcblxcbkBtaXhpbiBwYWRkaW5nKCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XFxufVxcblxcbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIHBhZGRpbmctdG9wKTtcXG59XFxuXFxuQG1peGluIHBhZGRpbmctcmlnaHQoJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLXJpZ2h0KTtcXG59XFxuXFxuQG1peGluIHBhZGRpbmctYm90dG9tKCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xcbn1cXG5cXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1sZWZ0KTtcXG59XFxuXFxuQG1peGluIG1hcmdpbigkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbik7XFxufVxcblxcbkBtaXhpbiBtYXJnaW4tdG9wKCR2YWx1ZSkge1xcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XFxufVxcblxcbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tcmlnaHQpO1xcbn1cXG5cXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkdmFsdWUpIHtcXG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1ib3R0b20pO1xcbn1cXG5cXG5AbWl4aW4gbWFyZ2luLWxlZnQoJHZhbHVlKSB7XFxuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XFxufVxcblwiLFwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xcblxcbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcXG4gICRyZXR1cm46ICgpO1xcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XFxuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcXG4gICAgfSBAZWxzZSB7XFxuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XFxuICAgIH1cXG4gIH1cXG4gIEByZXR1cm4gJHJldHVybjtcXG59XFxuXFxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcXG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XFxuICB9XFxufVxcblxcbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xcbiAgfVxcbn1cXG5cXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xcbiAgfVxcbn1cXG5cXG5AbWl4aW4gYm9yZGVyLXRvcC1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XFxuICB9XFxufVxcblxcbkBtaXhpbiBib3JkZXItdG9wLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xcbiAgfVxcbn1cXG5cXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XFxuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gSGVhZGluZ3NcXG4vL1xcbi5oMSB7XFxuICBAZXh0ZW5kIGgxO1xcbn1cXG5cXG4uaDIge1xcbiAgQGV4dGVuZCBoMjtcXG59XFxuXFxuLmgzIHtcXG4gIEBleHRlbmQgaDM7XFxufVxcblxcbi5oNCB7XFxuICBAZXh0ZW5kIGg0O1xcbn1cXG5cXG4uaDUge1xcbiAgQGV4dGVuZCBoNTtcXG59XFxuXFxuLmg2IHtcXG4gIEBleHRlbmQgaDY7XFxufVxcblxcblxcbi5sZWFkIHtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbGVhZC1mb250LXNpemUpO1xcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xcbn1cXG5cXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xcbkBlYWNoICRkaXNwbGF5LCAkZm9udC1zaXplIGluICRkaXNwbGF5LWZvbnQtc2l6ZXMge1xcbiAgLmRpc3BsYXktI3skZGlzcGxheX0ge1xcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XFxuICAgIGZvbnQtd2VpZ2h0OiAkZGlzcGxheS1mb250LXdlaWdodDtcXG4gICAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xcbiAgfVxcbn1cXG5cXG4vL1xcbi8vIEVtcGhhc2lzXFxuLy9cXG4uc21hbGwge1xcbiAgQGV4dGVuZCBzbWFsbDtcXG59XFxuXFxuLm1hcmsge1xcbiAgQGV4dGVuZCBtYXJrO1xcbn1cXG5cXG4vL1xcbi8vIExpc3RzXFxuLy9cXG5cXG4ubGlzdC11bnN0eWxlZCB7XFxuICBAaW5jbHVkZSBsaXN0LXVuc3R5bGVkKCk7XFxufVxcblxcbi8vIElubGluZSB0dXJucyBsaXN0IGl0ZW1zIGludG8gaW5saW5lLWJsb2NrXFxuLmxpc3QtaW5saW5lIHtcXG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcXG59XFxuLmxpc3QtaW5saW5lLWl0ZW0ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcblxcbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBNaXNjXFxuLy9cXG5cXG4vLyBCdWlsZHMgb24gYGFiYnJgXFxuLmluaXRpYWxpc20ge1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbml0aWFsaXNtLWZvbnQtc2l6ZSk7XFxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xcbn1cXG5cXG4vLyBCbG9ja3F1b3Rlc1xcbi5ibG9ja3F1b3RlIHtcXG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XFxuXFxuICA+IDpsYXN0LWNoaWxkIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIH1cXG59XFxuXFxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcXG4gIG1hcmdpbi10b3A6IC0kYmxvY2txdW90ZS1tYXJnaW4teTtcXG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemUpO1xcbiAgY29sb3I6ICRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjtcXG5cXG4gICY6OmJlZm9yZSB7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFxcMjAxNFxcXFwwMEEwXFxcIjsgLy8gZW0gZGFzaCwgbmJzcFxcbiAgfVxcbn1cXG5cIixcIi8vIExpc3RzXFxuXFxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXFxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbGlzdC1zdHlsZTogbm9uZTtcXG59XFxuXCIsXCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcXG4vL1xcbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcXFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcXFwiIGFwcHJvYWNoIGluIEJvb3RzdHJhcCB2MixcXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cXG4vLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4MTc4XFxuLmltZy1mbHVpZCB7XFxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcXG59XFxuXFxuXFxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xcbi5pbWctdGh1bWJuYWlsIHtcXG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcXG4gIGJhY2tncm91bmQtY29sb3I6ICR0aHVtYm5haWwtYmc7XFxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkdGh1bWJuYWlsLWJveC1zaGFkb3cpO1xcblxcbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXFxuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcXG59XFxuXFxuLy9cXG4vLyBGaWd1cmVzXFxuLy9cXG5cXG4uZmlndXJlIHtcXG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG59XFxuXFxuLmZpZ3VyZS1pbWcge1xcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAvIDI7XFxuICBsaW5lLWhlaWdodDogMTtcXG59XFxuXFxuLmZpZ3VyZS1jYXB0aW9uIHtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcXG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XFxufVxcblwiLFwiLy8gSW1hZ2UgTWl4aW5zXFxuLy8gLSBSZXNwb25zaXZlIGltYWdlXFxuLy8gLSBSZXRpbmEgaW1hZ2VcXG5cXG5cXG4vLyBSZXNwb25zaXZlIGltYWdlXFxuLy9cXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxcblxcbkBtaXhpbiBpbWctZmx1aWQge1xcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXFxuICBoZWlnaHQ6IGF1dG87XFxufVxcblwiLFwiLy8gQ29udGFpbmVyIHdpZHRoc1xcbi8vXFxuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxcblxcbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XFxuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXFxuICAuY29udGFpbmVyLFxcbiAgLy8gMTAwJSB3aWRlIGNvbnRhaW5lciBhdCBhbGwgYnJlYWtwb2ludHNcXG4gIC5jb250YWluZXItZmx1aWQge1xcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xcbiAgfVxcblxcbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcXG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkY29udGFpbmVyLW1heC13aWR0aHMge1xcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcXG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XFxuICAgIH1cXG5cXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICAgICAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH0ge1xcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcXG4gICAgICB9XFxuXFxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcXG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XFxuXFxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XFxuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xcbiAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcXG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcXG4gICAgICAgICAgfVxcblxcbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xcbiAgICAgICAgICAgICRleHRlbmQtYnJlYWtwb2ludDogZmFsc2U7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBDb250YWluZXIgbWl4aW5zXFxuXFxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCwgI3skZ3V0dGVyfSk7XFxuICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCwgI3skZ3V0dGVyfSk7XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG59XFxuXCIsXCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxcbi8vXFxuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxcbi8vXFxuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxcbi8vXFxuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0Llxcblxcbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cXG4vL1xcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcXG4vLyAgICBtZFxcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcXG4vLyAgICBtZFxcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXFxuLy8gICAgbWRcXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XFxuICBAaWYgbm90ICRuIHtcXG4gICAgQGVycm9yIFxcXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXFxcIjtcXG4gIH1cXG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xcbn1cXG5cXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXFxuLy9cXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcXG4vLyAgICA1NzZweFxcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcXG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcXG59XFxuXFxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxcbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxcbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXFxuLy9cXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcXG4vLyAgICA3NjcuOThweFxcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcXG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xcbn1cXG5cXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250Llxcbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxcbi8vXFxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcXG4vLyAgICBcXFwiXFxcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXFxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcXG4vLyAgICBcXFwiLXNtXFxcIlxcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFxcXCJcXFwiLCBcXFwiLSN7JG5hbWV9XFxcIik7XFxufVxcblxcbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcXG4gIEBpZiAkbWluIHtcXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfSBAZWxzZSB7XFxuICAgIEBjb250ZW50O1xcbiAgfVxcbn1cXG5cXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50Llxcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXFxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XFxuICBAaWYgJG1heCB7XFxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH0gQGVsc2Uge1xcbiAgICBAY29udGVudDtcXG4gIH1cXG59XFxuXFxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XFxuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XFxuXFxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxcbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxcbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XFxuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XFxuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0KTtcXG5cXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XFxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xcbiAgICAgIEBjb250ZW50O1xcbiAgICB9XFxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBSb3dcXG4vL1xcbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXFxuXFxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcXG4gIC5yb3cge1xcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xcblxcbiAgICA+ICoge1xcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuXFxuLy8gQ29sdW1uc1xcbi8vXFxuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xcblxcbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XFxuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xcbn1cXG5cIixcIi8vLyBHcmlkIHN5c3RlbVxcbi8vXFxuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxcblxcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXk6IDA7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgLyAtMik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XFxuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpIC8gLTIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbn1cXG5cXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XFxuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XFxuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XFxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpIC8gMik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAvIDIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KTtcXG59XFxuXFxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xcbiAgZmxleDogMCAwIGF1dG87XFxuICB3aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcXG59XFxuXFxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XFxuICBmbGV4OiAwIDAgYXV0bztcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG5cXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcXG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xcbn1cXG5cXG4vLyBSb3cgY29sdW1uc1xcbi8vXFxuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXFxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XFxuLy8gc3R5bGUgZ3JpZC5cXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XFxuICA+ICoge1xcbiAgICBmbGV4OiAwIDAgYXV0bztcXG4gICAgd2lkdGg6IDEwMCUgLyAkY291bnQ7XFxuICB9XFxufVxcblxcbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cXG4vL1xcbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxcbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXFxuXFxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XFxuXFxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXFxuICAgICAgLmNvbCN7JGluZml4fSB7XFxuICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxcbiAgICAgIH1cXG5cXG4gICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xcbiAgICAgIH1cXG5cXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xcbiAgICAgIH1cXG5cXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcXG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuXFxuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXFxcIlxcXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAvLyBHdXR0ZXJzXFxuICAgICAgLy9cXG4gICAgICAvLyBNYWtlIHVzZSBvZiBgLmctKmAsIGAuZ3gtKmAgb3IgYC5neS0qYCB1dGlsaXRpZXMgdG8gY2hhbmdlIHNwYWNpbmcgYmV0d2VlbiB0aGUgY29sdW1ucy5cXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xcbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcXG4gICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcXG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXFxuICAgICAgICAuZ3kjeyRpbmZpeH0tI3ska2V5fSB7XFxuICAgICAgICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAjeyR2YWx1ZX07XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy9cXG4vLyBCYXNpYyBCb290c3RyYXAgdGFibGVcXG4vL1xcblxcbi50YWJsZSB7XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3skdGFibGUtc3RyaXBlZC1jb2xvcn07XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWJnOiAjeyR0YWJsZS1zdHJpcGVkLWJnfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcjogI3skdGFibGUtYWN0aXZlLWNvbG9yfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skdGFibGUtYWN0aXZlLWJnfTtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yOiAjeyR0YWJsZS1ob3Zlci1jb2xvcn07XFxuICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZzogI3skdGFibGUtaG92ZXItYmd9O1xcblxcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xcbiAgY29sb3I6ICR0YWJsZS1jb2xvcjtcXG4gIHZlcnRpY2FsLWFsaWduOiAkdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjtcXG4gIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcXG5cXG4gIC8vIFRhcmdldCB0aCAmIHRkXFxuICAvLyBXZSBuZWVkIHRoZSBjaGlsZCBjb21iaW5hdG9yIHRvIHByZXZlbnQgc3R5bGVzIGxlYWtpbmcgdG8gbmVzdGVkIHRhYmxlcyB3aGljaCBkb2Vzbid0IGhhdmUgYSBgLnRhYmxlYCBjbGFzcy5cXG4gIC8vIFdlIHVzZSB0aGUgdW5pdmVyc2FsIHNlbGVjdG9ycyBoZXJlIHRvIHNpbXBsaWZ5IHRoZSBzZWxlY3RvciAoZWxzZSB3ZSB3b3VsZCBuZWVkIDYgZGlmZmVyZW50IHNlbGVjdG9ycykuXFxuICAvLyBBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoaXMgZ2VuZXJhdGVzIGxlc3MgY29kZSBhbmQgbWFrZXMgdGhlIHNlbGVjdG9yIGxlc3Mgc3BlY2lmaWMgbWFraW5nIGl0IGVhc2llciB0byBvdmVycmlkZS5cXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXFxuICA+IDpub3QoY2FwdGlvbikgPiAqID4gKiB7XFxuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteSAkdGFibGUtY2VsbC1wYWRkaW5nLXg7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZyk7XFxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGg7XFxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDk5OTlweCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnKTtcXG4gIH1cXG5cXG4gID4gdGJvZHkge1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcXG4gIH1cXG5cXG4gID4gdGhlYWQge1xcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xcbiAgfVxcblxcbiAgLy8gSGlnaGxpZ2h0IGJvcmRlciBjb2xvciBiZXR3ZWVuIHRoZWFkLCB0Ym9keSBhbmQgdGZvb3QuXFxuICA+IDpub3QoOmxhc3QtY2hpbGQpID4gOmxhc3QtY2hpbGQgPiAqIHtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRhYmxlLWdyb3VwLXNlcGFyYXRvci1jb2xvcjtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xcbi8vXFxuXFxuLmNhcHRpb24tdG9wIHtcXG4gIGNhcHRpb24tc2lkZTogdG9wO1xcbn1cXG5cXG5cXG4vL1xcbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcXG4vL1xcblxcbi50YWJsZS1zbSB7XFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBCb3JkZXIgdmVyc2lvbnNcXG4vL1xcbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXFxuLy9cXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cXG4vLyB0aGVzZSBib3JkZXJzIGRvIG5vdCBoYXZlIHRoZSBzYW1lIGNvbG9yIG9yIGlmIHRoZXkgYXJlIHNlbWktdHJhbnNwYXJlbnQuXFxuLy8gVGhlcmVmb3Igd2UgYWRkIHRvcCBhbmQgYm9yZGVyIGJvdHRvbXMgdG8gdGhlIGB0cmBzIGFuZCBsZWZ0IGFuZCByaWdodCBib3JkZXJzXFxuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXFxuXFxuLnRhYmxlLWJvcmRlcmVkIHtcXG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xcbiAgICBib3JkZXItd2lkdGg6ICR0YWJsZS1ib3JkZXItd2lkdGggMDtcXG5cXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcXG4gICAgPiAqIHtcXG4gICAgICBib3JkZXItd2lkdGg6IDAgJHRhYmxlLWJvcmRlci13aWR0aDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4udGFibGUtYm9yZGVybGVzcyB7XFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXVuaXZlcnNhbFxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgfVxcbn1cXG5cXG4vLyBaZWJyYS1zdHJpcGluZ1xcbi8vXFxuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcXG5cXG4udGFibGUtc3RyaXBlZCB7XFxuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWNjZW50LWJnOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1iZyk7XFxuICAgIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XFxuICB9XFxufVxcblxcbi8vIEFjdGl2ZSB0YWJsZVxcbi8vXFxuLy8gVGhlIGAudGFibGUtYWN0aXZlYCBjbGFzcyBjYW4gYmUgYWRkZWQgdG8gaGlnaGxpZ2h0IHJvd3Mgb3IgY2VsbHNcXG5cXG4udGFibGUtYWN0aXZlIHtcXG4gIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjY2VudC1iZzogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZyk7XFxuICBjb2xvcjogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XFxufVxcblxcbi8vIEhvdmVyIGVmZmVjdFxcbi8vXFxuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xcblxcbi50YWJsZS1ob3ZlciB7XFxuICA+IHRib2R5ID4gdHI6aG92ZXIge1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1hY2NlbnQtYmc6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1ob3Zlci1iZyk7XFxuICAgIGNvbG9yOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItY29sb3IpO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBUYWJsZSB2YXJpYW50c1xcbi8vXFxuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXFxuLy8gYW5kIHRoZSBjb2xvcnMgb2YgdGhlIHN0cmlwZWQsIGhvdmVyZWQgJiBhY3RpdmUgdGFibGVzXFxuXFxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcXG4gIEBpbmNsdWRlIHRhYmxlLXZhcmlhbnQoJGNvbG9yLCAkdmFsdWUpO1xcbn1cXG5cXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xcbi8vXFxuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXFxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXFxuXFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xcblxcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XFxuICAgIC50YWJsZS1yZXNwb25zaXZlI3skaW5maXh9IHtcXG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XFxuQG1peGluIHRhYmxlLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xcbiAgLnRhYmxlLSN7JHN0YXRlfSB7XFxuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xcbiAgICAkaG92ZXItYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ob3Zlci1iZy1mYWN0b3IpKTtcXG4gICAgJHN0cmlwZWQtYmc6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikpO1xcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xcblxcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1iZzogI3skYmFja2dyb3VuZH07XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHN0cmlwZWQtYmd9O1xcbiAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH10YWJsZS1zdHJpcGVkLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRzdHJpcGVkLWJnKX07XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtYWN0aXZlLWNvbG9yOiAje2NvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmcpfTtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JGhvdmVyLWJnfTtcXG4gICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XFxuXFxuICAgIGNvbG9yOiAkY29sb3I7XFxuICAgIGJvcmRlci1jb2xvcjogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWJvcmRlci1mYWN0b3IpKTtcXG4gIH1cXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYW50XFxuXCIsXCIvL1xcbi8vIExhYmVsc1xcbi8vXFxuXFxuLmZvcm0tbGFiZWwge1xcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1sYWJlbC1mb250LXNpemUpO1xcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcXG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcXG59XFxuXFxuLy8gRm9yIHVzZSB3aXRoIGhvcml6b250YWwgYW5kIGlubGluZSBmb3Jtcywgd2hlbiB5b3UgbmVlZCB0aGUgbGFiZWwgKG9yIGxlZ2VuZClcXG4vLyB0ZXh0IHRvIGFsaWduIHdpdGggdGhlIGZvcm0gY29udHJvbHMuXFxuLmNvbC1mb3JtLWxhYmVsIHtcXG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteSwgJGlucHV0LWJvcmRlci13aWR0aCk7XFxuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXksICRpbnB1dC1ib3JkZXItd2lkdGgpO1xcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpOyAvLyBPdmVycmlkZSB0aGUgYDxsZWdlbmQ+YCBkZWZhdWx0XFxuICBmb250LXN0eWxlOiAkZm9ybS1sYWJlbC1mb250LXN0eWxlO1xcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcXG59XFxuXFxuLmNvbC1mb3JtLWxhYmVsLWxnIHtcXG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XFxuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xcbn1cXG5cXG4uY29sLWZvcm0tbGFiZWwtc20ge1xcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcXG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XFxufVxcblwiLFwiLy9cXG4vLyBGb3JtIHRleHRcXG4vL1xcblxcbi5mb3JtLXRleHQge1xcbiAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcXG4gIGZvbnQtc3R5bGU6ICRmb3JtLXRleHQtZm9udC1zdHlsZTtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS10ZXh0LWZvbnQtd2VpZ2h0O1xcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XFxufVxcblwiLFwiLy9cXG4vLyBHZW5lcmFsIGZvcm0gY29udHJvbHMgKHBsdXMgYSBmZXcgc3BlY2lmaWMgaGlnaC1sZXZlbCBpbnRlcnZlbnRpb25zKVxcbi8vXFxuXFxuLmZvcm0tY29udHJvbCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcXG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcXG5cXG4gIC8vIE5vdGU6IFRoaXMgaGFzIG5vIGVmZmVjdCBvbiA8c2VsZWN0PnMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMsIDApO1xcblxcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdyk7XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcXG5cXG4gICZbdHlwZT1cXFwiZmlsZVxcXCJdIHtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxcblxcbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XFxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICB9XFxuICB9XFxuXFxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXFxuICAmOmZvY3VzIHtcXG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xcbiAgICB9XFxuICB9XFxuXFxuICAvLyBBZGQgc29tZSBoZWlnaHQgdG8gZGF0ZSBpbnB1dHMgb24gaU9TXFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzMzA3XFxuICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcXG4gICY6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XFxuICAgIC8vIE11bHRpcGx5IGxpbmUtaGVpZ2h0IGJ5IDFlbSBpZiBpdCBoYXMgbm8gdW5pdFxcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcXFwiXFxcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xcbiAgfVxcblxcbiAgLy8gUGxhY2Vob2xkZXJcXG4gICY6OnBsYWNlaG9sZGVyIHtcXG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcXG4gICAgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjYuXFxuICAgIG9wYWNpdHk6IDE7XFxuICB9XFxuXFxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xcbiAgLy9cXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXFxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxcbiAgJjpkaXNhYmxlZCxcXG4gICZbcmVhZG9ubHldIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XFxuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXFxuICAgIG9wYWNpdHk6IDE7XFxuICB9XFxuXFxuICAvLyBGaWxlIGlucHV0IGJ1dHRvbnMgdGhlbWluZ1xcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLXBzZXVkby1lbGVtZW50LW5vLXVua25vd25cXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXg7XFxuICAgIGNvbG9yOiAkZm9ybS1maWxlLWJ1dHRvbi1jb2xvcjtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItd2lkdGg6IDA7XFxuICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XFxuICB9XFxuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItcHNldWRvLWVsZW1lbnQtbm8tdW5rbm93blxcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XFxuICB9XFxuXFxuICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XFxuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcXG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXkpICgtJGlucHV0LXBhZGRpbmcteCk7XFxuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14O1xcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLWZpbGUtYnV0dG9uLWJnKTtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcXG4gICAgYm9yZGVyLXJhZGl1czogMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xcbiAgfVxcblxcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSk6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XFxuICB9XFxufVxcblxcbi8vIFJlYWRvbmx5IGNvbnRyb2xzIGFzIHBsYWluIHRleHRcXG4vL1xcbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXFxuLy8gdGV4dCAod2l0aG91dCBhbnkgYm9yZGVyLCBiYWNrZ3JvdW5kIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3IpXFxuXFxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICB3aWR0aDogMTAwJTtcXG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIG1hdGNoIGlucHV0cyBpZiB0aGlzIGNsYXNzIGNvbWVzIG9uIGlucHV0cyB3aXRoIGRlZmF1bHQgbWFyZ2luc1xcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XFxuXFxuICAmLmZvcm0tY29udHJvbC1zbSxcXG4gICYuZm9ybS1jb250cm9sLWxnIHtcXG4gICAgcGFkZGluZy1yaWdodDogMDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgfVxcbn1cXG5cXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXFxuLy9cXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXFxuLy9cXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cXG5cXG4uZm9ybS1jb250cm9sLXNtIHtcXG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XFxuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcXG5cXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1wc2V1ZG8tZWxlbWVudC1uby11bmtub3duXFxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XFxuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcXG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XFxuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LXNtO1xcbiAgfVxcblxcbiAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XFxuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LXNtKSAoLSRpbnB1dC1wYWRkaW5nLXgtc20pO1xcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1zbTtcXG4gIH1cXG59XFxuXFxuLmZvcm0tY29udHJvbC1sZyB7XFxuICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XFxuXFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItcHNldWRvLWVsZW1lbnQtbm8tdW5rbm93blxcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XFxuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteC1sZztcXG4gIH1cXG5cXG4gICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcXG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteS1sZykgKC0kaW5wdXQtcGFkZGluZy14LWxnKTtcXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtbGc7XFxuICB9XFxufVxcblxcbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI5MTI0XFxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXFxudGV4dGFyZWEge1xcbiAgJi5mb3JtLWNvbnRyb2wge1xcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xcbiAgfVxcblxcbiAgJi5mb3JtLWNvbnRyb2wtc20ge1xcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xcbiAgfVxcblxcbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xcbiAgfVxcbn1cXG4vLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxcblxcbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xcbiAgbWF4LXdpZHRoOiAzcmVtO1xcbiAgaGVpZ2h0OiBhdXRvOyAvLyBPdmVycmlkZSBmaXhlZCBicm93c2VyIGhlaWdodFxcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcXG5cXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pIHtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgfVxcblxcbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcXFwiXFxcIiwgJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtbGluZS1oZWlnaHQpO1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcXG4gIH1cXG5cXG4gICY6Oi13ZWJraXQtY29sb3Itc3dhdGNoIHtcXG4gICAgaGVpZ2h0OiBpZih1bml0KCRpbnB1dC1saW5lLWhlaWdodCkgPT0gXFxcIlxcXCIsICRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LWxpbmUtaGVpZ2h0KTtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XFxuICB9XFxufVxcblwiLFwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xcbiAgICAkdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcXG4gIH1cXG5cXG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID4gMSB7XFxuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XFxuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcXG4gICAgICAgIEB3YXJuIFxcXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cXFwiO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcXG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcXG4gICAgfVxcblxcbiAgICBAaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG5vbmUge1xcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIEdyYWRpZW50c1xcblxcbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxcbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3I6IG51bGwpIHtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcXG5cXG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XFxuICB9XFxufVxcbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtYmctbWl4aW5cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JhZGllbnQtbWl4aW5zXFxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XFxuLy9cXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxcbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xcbn1cXG5cXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXFxuLy9cXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxcbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xcbn1cXG5cXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xcbn1cXG5cXG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xcbn1cXG5cXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XFxufVxcblxcbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XFxufVxcblxcbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCBncmFkaWVudC1taXhpbnNcXG5cIixcIi8vIFNlbGVjdFxcbi8vXFxuLy8gUmVwbGFjZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBzZWxlY3Qgd2l0aCBhIGN1c3RvbSBvbmUsIG1vc3RseSBwdWxsZWQgZnJvbVxcbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXFxuXFxuLmZvcm0tc2VsZWN0IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XFxuICBmb250LWZhbWlseTogJGZvcm0tc2VsZWN0LWZvbnQtZmFtaWx5O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUpO1xcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1zZWxlY3QtbGluZS1oZWlnaHQ7XFxuICBjb2xvcjogJGZvcm0tc2VsZWN0LWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XFxuICBiYWNrZ3JvdW5kLXNpemU6ICRmb3JtLXNlbGVjdC1iZy1zaXplO1xcbiAgYm9yZGVyOiAkZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3cpO1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG5cXG4gICY6Zm9jdXMge1xcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tc2VsZWN0LWJveC1zaGFkb3csICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93KTtcXG4gICAgfSBAZWxzZSB7XFxuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxcbiAgICAgIGJveC1zaGFkb3c6ICRmb3JtLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xcbiAgICB9XFxuICB9XFxuXFxuICAmW211bHRpcGxlXSxcXG4gICZbc2l6ZV06bm90KFtzaXplPVxcXCIxXFxcIl0pIHtcXG4gICAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteDtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQge1xcbiAgICBjb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc7XFxuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcXG4gIH1cXG5cXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxcbiAgJjotbW96LWZvY3VzcmluZyB7XFxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcXG4gIH1cXG59XFxuXFxuLmZvcm0tc2VsZWN0LXNtIHtcXG4gIHBhZGRpbmctdG9wOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtO1xcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XFxuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc207XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XFxufVxcblxcbi5mb3JtLXNlbGVjdC1sZyB7XFxuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1sZztcXG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1zZWxlY3QtcGFkZGluZy14LWxnO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtbGcpO1xcbn1cXG5cIixcIi8vXFxuLy8gQ2hlY2svcmFkaW9cXG4vL1xcblxcbi5mb3JtLWNoZWNrIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcXG4gIHBhZGRpbmctbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDtcXG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b207XFxuXFxuICAuZm9ybS1jaGVjay1pbnB1dCB7XFxuICAgIGZsb2F0OiBsZWZ0O1xcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xcbiAgfVxcbn1cXG5cXG4uZm9ybS1jaGVjay1pbnB1dCB7XFxuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XFxuICBoZWlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoO1xcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1iYXNlIC0gJGZvcm0tY2hlY2staW5wdXQtd2lkdGgpIC8gMjsgLy8gbGluZS1oZWlnaHQgbWludXMgY2hlY2sgaGVpZ2h0XFxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtYmc7XFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xcbiAgYm9yZGVyOiAkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI7XFxuICBhcHBlYXJhbmNlOiBub25lO1xcbiAgY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tY2hlY2stdHJhbnNpdGlvbik7XFxuXFxuICAmW3R5cGU9XFxcImNoZWNrYm94XFxcIl0ge1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXMpO1xcbiAgfVxcblxcbiAgJlt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1jaGVjay1yYWRpby1ib3JkZXItcmFkaXVzO1xcbiAgfVxcblxcbiAgJjphY3RpdmUge1xcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XFxuICB9XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3JkZXI7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XFxuICB9XFxuXFxuICAmOmNoZWNrZWQge1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yO1xcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYm9yZGVyLWNvbG9yO1xcblxcbiAgICAmW3R5cGU9XFxcImNoZWNrYm94XFxcIl0ge1xcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpLCB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3JhZGllbnQpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJlt0eXBlPVxcXCJyYWRpb1xcXCJdIHtcXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcXG4gICAgICB9IEBlbHNlIHtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAmW3R5cGU9XFxcImNoZWNrYm94XFxcIl06aW5kZXRlcm1pbmF0ZSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I7XFxuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I7XFxuXFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKSwgdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdyYWRpZW50KTtcXG4gICAgfSBAZWxzZSB7XFxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjpkaXNhYmxlZCB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBmaWx0ZXI6IG5vbmU7XFxuICAgIG9wYWNpdHk6ICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHk7XFxuICB9XFxuXFxuICAvLyBVc2UgZGlzYWJsZWQgYXR0cmlidXRlIGluIGFkZGl0aW9uIG9mIDpkaXNhYmxlZCBwc2V1ZG8tY2xhc3NcXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xcbiAgJltkaXNhYmxlZF0sXFxuICAmOmRpc2FibGVkIHtcXG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XFxuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uZm9ybS1jaGVjay1sYWJlbCB7XFxuICBjb2xvcjogJGZvcm0tY2hlY2stbGFiZWwtY29sb3I7XFxuICBjdXJzb3I6ICRmb3JtLWNoZWNrLWxhYmVsLWN1cnNvcjtcXG59XFxuXFxuLy9cXG4vLyBTd2l0Y2hcXG4vL1xcblxcbi5mb3JtLXN3aXRjaCB7XFxuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0O1xcblxcbiAgLmZvcm0tY2hlY2staW5wdXQge1xcbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQgKiAtMTtcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtYmctaW1hZ2UpO1xcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cyk7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc3dpdGNoLXRyYW5zaXRpb24pO1xcblxcbiAgICAmOmZvY3VzIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZSk7XFxuICAgIH1cXG5cXG4gICAgJjpjaGVja2VkIHtcXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1wb3NpdGlvbjtcXG5cXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSksIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ncmFkaWVudCk7XFxuICAgICAgfSBAZWxzZSB7XFxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmZvcm0tY2hlY2staW5saW5lIHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi1lbmQ7XFxufVxcblxcbi5idG4tY2hlY2sge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcblxcbiAgJltkaXNhYmxlZF0sXFxuICAmOmRpc2FibGVkIHtcXG4gICAgKyAuYnRuIHtcXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgICBmaWx0ZXI6IG5vbmU7XFxuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBSYW5nZVxcbi8vXFxuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cXG4vLyBlbGVtZW50cyBjYW5ub3QgYmUgbWl4ZWQuIEFzIHN1Y2gsIHRoZXJlIGFyZSBubyBzaGFyZWQgc3R5bGVzIGZvciBmb2N1cyBvclxcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxcblxcbi5mb3JtLXJhbmdlIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XFxuICBwYWRkaW5nOiAwOyAvLyBOZWVkIHRvIHJlc2V0IHBhZGRpbmdcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYXBwZWFyYW5jZTogbm9uZTtcXG5cXG4gICY6Zm9jdXMge1xcbiAgICBvdXRsaW5lOiAwO1xcblxcbiAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBlZmZlY3QuXFxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XFxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxcbiAgfVxcblxcbiAgJjo6LW1vei1mb2N1cy1vdXRlciB7XFxuICAgIGJvcmRlcjogMDtcXG4gIH1cXG5cXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcXG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRodW1iLXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDtcXG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgLyAyOyAvLyBXZWJraXQgc3BlY2lmaWNcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xcbiAgICBib3JkZXI6ICRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uKTtcXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcXG5cXG4gICAgJjphY3RpdmUge1xcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZyk7XFxuICAgIH1cXG4gIH1cXG5cXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcXG4gICAgd2lkdGg6ICRmb3JtLXJhbmdlLXRyYWNrLXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcXG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XFxuICAgIGN1cnNvcjogJGZvcm0tcmFuZ2UtdHJhY2stY3Vyc29yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9ybS1yYW5nZS10cmFjay1iZztcXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcXG4gIH1cXG5cXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XFxuICAgIGhlaWdodDogJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0O1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1iZyk7XFxuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXMpO1xcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xcbiAgICBhcHBlYXJhbmNlOiBub25lO1xcblxcbiAgICAmOmFjdGl2ZSB7XFxuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcXG4gICAgfVxcbiAgfVxcblxcbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XFxuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcXG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XFxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRyYWNrLWJnO1xcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGaXJlZm94IHNwZWNpZmljP1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xcbiAgfVxcblxcbiAgJjpkaXNhYmxlZCB7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcblxcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XFxuICAgIH1cXG5cXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIuZm9ybS1mbG9hdGluZyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuXFxuICA+IC5mb3JtLWNvbnRyb2wsXFxuICA+IC5mb3JtLXNlbGVjdCB7XFxuICAgIGhlaWdodDogJGZvcm0tZmxvYXRpbmctaGVpZ2h0O1xcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xcbiAgfVxcblxcbiAgPiBsYWJlbCB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAwO1xcbiAgICBsZWZ0OiAwO1xcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGFsbG93IHRleHRhcmVhc1xcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyBSZXF1aXJlZCBmb3IgYWxpZ25pbmcgbGFiZWwncyB0ZXh0IHdpdGggdGhlIGlucHV0IGFzIGl0IGFmZmVjdHMgaW5uZXIgYm94IG1vZGVsXFxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcXG4gIH1cXG5cXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcXG4gID4gLmZvcm0tY29udHJvbCB7XFxuICAgICY6OnBsYWNlaG9sZGVyIHtcXG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIH1cXG5cXG4gICAgJjpmb2N1cyxcXG4gICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XFxuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcXG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy1iO1xcbiAgICB9XFxuICAgIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcXG4gICAgJjotd2Via2l0LWF1dG9maWxsIHtcXG4gICAgICBwYWRkaW5nLXRvcDogJGZvcm0tZmxvYXRpbmctaW5wdXQtcGFkZGluZy10O1xcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XFxuICAgIH1cXG4gIH1cXG5cXG4gID4gLmZvcm0tc2VsZWN0IHtcXG4gICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcXG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcXG4gIH1cXG5cXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcXG4gID4gLmZvcm0tY29udHJvbDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcXG4gID4gLmZvcm0tc2VsZWN0IHtcXG4gICAgfiBsYWJlbCB7XFxuICAgICAgb3BhY2l0eTogJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTtcXG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcXG4gICAgfVxcbiAgfVxcbiAgLy8gRHVwbGljYXRlZCBiZWNhdXNlIGA6LXdlYmtpdC1hdXRvZmlsbGAgaW52YWxpZGF0ZXMgb3RoZXIgc2VsZWN0b3JzIHdoZW4gZ3JvdXBlZFxcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xcbiAgICB+IGxhYmVsIHtcXG4gICAgICBvcGFjaXR5OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5O1xcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xcbiAgICB9XFxuICB9XFxuICAvLyBzdHlsZWxpbnQtZW5hYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcXG59XFxuXCIsXCIvL1xcbi8vIEJhc2Ugc3R5bGVzXFxuLy9cXG5cXG4uaW5wdXQtZ3JvdXAge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XFxuICB3aWR0aDogMTAwJTtcXG5cXG4gID4gLmZvcm0tY29udHJvbCxcXG4gID4gLmZvcm0tc2VsZWN0IHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB3aWR0aDogMSU7XFxuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcXG4gIH1cXG5cXG4gIC8vIEJyaW5nIHRoZSBcXFwiYWN0aXZlXFxcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xcbiAgPiAuZm9ybS1jb250cm9sOmZvY3VzLFxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xcbiAgICB6LWluZGV4OiAzO1xcbiAgfVxcblxcbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cXG4gIC8vIFRoaXMgaXNuJ3QgbmVlZGVkIGZvciBgLmlucHV0LWdyb3VwLXRleHRgIHNpbmNlIGl0IHNoYXJlcyB0aGUgc2FtZSBib3JkZXItY29sb3JcXG4gIC8vIGFzIG91ciBpbnB1dHMuXFxuICAuYnRuIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICB6LWluZGV4OiAyO1xcblxcbiAgICAmOmZvY3VzIHtcXG4gICAgICB6LWluZGV4OiAzO1xcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIFRleHR1YWwgYWRkb25zXFxuLy9cXG4vLyBTZXJ2ZXMgYXMgYSBjYXRjaC1hbGwgZWxlbWVudCBmb3IgYW55IHRleHQgb3IgcmFkaW8vY2hlY2tib3ggaW5wdXQgeW91IHdpc2hcXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cXG5cXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHBhZGRpbmc6ICRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXkgJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplKTsgLy8gTWF0Y2ggaW5wdXRzXFxuICBmb250LXdlaWdodDogJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0O1xcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcXG4gIGNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I7XFxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcXG59XFxuXFxuXFxuLy8gU2l6aW5nXFxuLy9cXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXFxuLy8gbWFuaXB1bGF0aW9uLlxcblxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1sZyA+IC5idG4ge1xcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XFxufVxcblxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2wsXFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxcbi5pbnB1dC1ncm91cC1zbSA+IC5idG4ge1xcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XFxufVxcblxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1zZWxlY3Qge1xcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcXG59XFxuXFxuXFxuLy8gUm91bmRlZCBjb3JuZXJzXFxuLy9cXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xcbi8vIGJvcmRlci1yYWRpdXMgdmFsdWVzIHdoZW4gZXh0ZW5kaW5nLiBUaGV5J3JlIG1vcmUgc3BlY2lmaWMgdGhhbiB3ZSdkIGxpa2VcXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cXG5cXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xcbi5pbnB1dC1ncm91cCB7XFxuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcXG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSk6bm90KC5kcm9wZG93bi1tZW51KSxcXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSB7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gICYuaGFzLXZhbGlkYXRpb24ge1xcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSksXFxuICAgID4gLmRyb3Bkb3duLXRvZ2dsZTpudGgtbGFzdC1jaGlsZChuICsgNCkge1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xcbiAgICB9XFxuICB9XFxuXFxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXFxcIlxcXCI7XFxuICBAZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXMpIHtcXG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXFxcIjpub3QoLlxcXCIgKyB1bnF1b3RlKCRzdGF0ZSkgKyBcXFwiLXRvb2x0aXApXFxcIiArIFxcXCI6bm90KC5cXFwiICsgdW5xdW90ZSgkc3RhdGUpICsgXFxcIi1mZWVkYmFjaylcXFwiO1xcbiAgfVxcblxcbiAgPiA6bm90KDpmaXJzdC1jaGlsZCk6bm90KC5kcm9wZG93bi1tZW51KSN7JHZhbGlkYXRpb24tbWVzc2FnZXN9IHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xcbiAgfVxcbn1cXG5cIixcIi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3NcXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xcbiAgQGlmICgkc3RhdGUgPT0gXFxcInZhbGlkXFxcIiBvciAkc3RhdGUgPT0gXFxcImludmFsaWRcXFwiKSB7XFxuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXFxcIiZcXFwiLCBcXFwiXFxcIil9OiN7JHN0YXRlfSxcXG4gICAgI3tpZigmLCBcXFwiJlxcXCIsIFxcXCJcXFwiKX0uaXMtI3skc3RhdGV9IHtcXG4gICAgICBAY29udGVudDtcXG4gICAgfVxcbiAgfSBAZWxzZSB7XFxuICAgICN7aWYoJiwgXFxcIiZcXFwiLCBcXFwiXFxcIil9LmlzLSN7JHN0YXRlfSB7XFxuICAgICAgQGNvbnRlbnQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZShcXG4gICRzdGF0ZSxcXG4gICRjb2xvcixcXG4gICRpY29uLFxcbiAgJHRvb2x0aXAtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXFxuICAkZm9jdXMtYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpXFxuKSB7XFxuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcXG4gICAgZGlzcGxheTogbm9uZTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIG1hcmdpbi10b3A6ICRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A7XFxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xcbiAgICBmb250LXN0eWxlOiAkZm9ybS1mZWVkYmFjay1mb250LXN0eWxlO1xcbiAgICBjb2xvcjogJGNvbG9yO1xcbiAgfVxcblxcbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB0b3A6IDEwMCU7XFxuICAgIHotaW5kZXg6IDU7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcXG4gICAgbWFyZ2luLXRvcDogLjFyZW07XFxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XFxuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnLWNvbG9yO1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XFxuICB9XFxuXFxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XFxuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICB9XFxuICB9XFxuXFxuICAuZm9ybS1jb250cm9sIHtcXG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xcblxcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY7XFxuICAgICAgfVxcblxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XFxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5mb3JtLXNlbGVjdCB7XFxuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcXG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcXG5cXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kO1xcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKSwgZXNjYXBlLXN2ZygkaWNvbik7XFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkZm9ybS1zZWxlY3QtYmctc2l6ZSwgJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcXG4gICAgICB9XFxuXFxuICAgICAgJjpmb2N1cyB7XFxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcXG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcblxcbiAgLmZvcm0tY2hlY2staW5wdXQge1xcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuXFxuICAgICAgJjpjaGVja2VkIHtcXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcXG4gICAgICB9XFxuXFxuICAgICAgJjpmb2N1cyB7XFxuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcXG4gICAgICB9XFxuXFxuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XFxuICAgICAgICBjb2xvcjogJGNvbG9yO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcXG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrIHtcXG4gICAgICBtYXJnaW4tbGVmdDogLjVlbTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gQmFzZSBzdHlsZXNcXG4vL1xcblxcbi5idG4ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgZm9udC1mYW1pbHk6ICRidG4tZm9udC1mYW1pbHk7XFxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiAkYnRuLWxpbmUtaGVpZ2h0O1xcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XFxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xcbiAgY3Vyc29yOiBpZigkZW5hYmxlLWJ1dHRvbi1wb2ludGVycywgcG9pbnRlciwgbnVsbCk7XFxuICB1c2VyLXNlbGVjdDogbm9uZTtcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tYm9yZGVyLXJhZGl1cyk7XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRidG4tdHJhbnNpdGlvbik7XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcXG4gIH1cXG5cXG4gIC5idG4tY2hlY2s6Zm9jdXMgKyAmLFxcbiAgJjpmb2N1cyB7XFxuICAgIG91dGxpbmU6IDA7XFxuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcXG4gIH1cXG5cXG4gIC5idG4tY2hlY2s6Y2hlY2tlZCArICYsXFxuICAuYnRuLWNoZWNrOmFjdGl2ZSArICYsXFxuICAmOmFjdGl2ZSxcXG4gICYuYWN0aXZlIHtcXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcXG5cXG4gICAgJjpmb2N1cyB7XFxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xcbiAgICB9XFxuICB9XFxuXFxuICAmOmRpc2FibGVkLFxcbiAgJi5kaXNhYmxlZCxcXG4gIGZpZWxkc2V0OmRpc2FibGVkICYge1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xcbiAgfVxcbn1cXG5cXG5cXG4vL1xcbi8vIEFsdGVybmF0ZSBidXR0b25zXFxuLy9cXG5cXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcXG4gIC5idG4tI3skY29sb3J9IHtcXG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xcbiAgfVxcbn1cXG5cXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcXG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xcbiAgICBAaW5jbHVkZSBidXR0b24tb3V0bGluZS12YXJpYW50KCR2YWx1ZSk7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gTGluayBidXR0b25zXFxuLy9cXG5cXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xcbi5idG4tbGluayB7XFxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcXG4gIGNvbG9yOiAkYnRuLWxpbmstY29sb3I7XFxuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRidG4tbGluay1ob3Zlci1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xcbiAgfVxcblxcbiAgJjpmb2N1cyB7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQsXFxuICAmLmRpc2FibGVkIHtcXG4gICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcXG4gIH1cXG5cXG4gIC8vIE5vIG5lZWQgZm9yIGFuIGFjdGl2ZSBzdGF0ZSBoZXJlXFxufVxcblxcblxcbi8vXFxuLy8gQnV0dG9uIFNpemVzXFxuLy9cXG5cXG4uYnRuLWxnIHtcXG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LWxnLCAkYnRuLXBhZGRpbmcteC1sZywgJGJ0bi1mb250LXNpemUtbGcsICRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XFxufVxcblxcbi5idG4tc20ge1xcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcXG59XFxuXCIsXCIvLyBCdXR0b24gdmFyaWFudHNcXG4vL1xcbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSxcXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcXG5cXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXFxuICAkYmFja2dyb3VuZCxcXG4gICRib3JkZXIsXFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcXG4gICRob3Zlci1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXRpbnQtYW1vdW50KSksXFxuICAkaG92ZXItYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4taG92ZXItYm9yZGVyLXRpbnQtYW1vdW50KSksXFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcXG4gICRhY3RpdmUtYmFja2dyb3VuZDogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJhY2tncm91bmQsJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcXG4gICRhY3RpdmUtYm9yZGVyOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpKSxcXG4gICRhY3RpdmUtY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhY3RpdmUtYmFja2dyb3VuZCksXFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXFxuICAkZGlzYWJsZWQtYm9yZGVyOiAkYm9yZGVyLFxcbiAgJGRpc2FibGVkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkZGlzYWJsZWQtYmFja2dyb3VuZClcXG4pIHtcXG4gIGNvbG9yOiAkY29sb3I7XFxuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XFxuICBib3JkZXItY29sb3I6ICRib3JkZXI7XFxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XFxuICB9XFxuXFxuICAuYnRuLWNoZWNrOmZvY3VzICsgJixcXG4gICY6Zm9jdXMge1xcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XFxuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcXG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XFxuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xcbiAgICB9IEBlbHNlIHtcXG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XFxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KTtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcXG4gIC5idG4tY2hlY2s6YWN0aXZlICsgJixcXG4gICY6YWN0aXZlLFxcbiAgJi5hY3RpdmUsXFxuICAuc2hvdyA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcXG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcXG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcXG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcXG5cXG4gICAgJjpmb2N1cyB7XFxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XFxuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoJGNvbG9yLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xcbiAgICAgIH0gQGVsc2Uge1xcbiAgICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peCgkY29sb3IsICRib3JkZXIsIDE1JSksIC41KTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQsXFxuICAmLmRpc2FibGVkIHtcXG4gICAgY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkLWJhY2tncm91bmQ7XFxuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XFxuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkLWJvcmRlcjtcXG4gIH1cXG59XFxuXFxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXFxuICAkY29sb3IsXFxuICAkY29sb3ItaG92ZXI6IGNvbG9yLWNvbnRyYXN0KCRjb2xvciksXFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcXG4gICRhY3RpdmUtYm9yZGVyOiAkY29sb3IsXFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpXFxuKSB7XFxuICBjb2xvcjogJGNvbG9yO1xcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xcbiAgfVxcblxcbiAgLmJ0bi1jaGVjazpmb2N1cyArICYsXFxuICAmOmZvY3VzIHtcXG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xcbiAgfVxcblxcbiAgLmJ0bi1jaGVjazpjaGVja2VkICsgJixcXG4gIC5idG4tY2hlY2s6YWN0aXZlICsgJixcXG4gICY6YWN0aXZlLFxcbiAgJi5hY3RpdmUsXFxuICAmLmRyb3Bkb3duLXRvZ2dsZS5zaG93IHtcXG4gICAgY29sb3I6ICRhY3RpdmUtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcXG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcXG5cXG4gICAgJjpmb2N1cyB7XFxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XFxuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KSk7XFxuICAgICAgfSBAZWxzZSB7XFxuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XFxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxuXFxuICAmOmRpc2FibGVkLFxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgfVxcbn1cXG5cXG4vLyBCdXR0b24gc2l6ZXNcXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGJvcmRlci1yYWRpdXMpIHtcXG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcXG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcXG59XFxuXCIsXCIuZmFkZSB7XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xcblxcbiAgJjpub3QoLnNob3cpIHtcXG4gICAgb3BhY2l0eTogMDtcXG4gIH1cXG59XFxuXFxuLmNvbGxhcHNlIHtcXG4gICY6bm90KC5zaG93KSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcblxcbi5jb2xsYXBzaW5nIHtcXG4gIGhlaWdodDogMDtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcXG59XFxuXCIsXCIvLyBUaGUgZHJvcGRvd24gd3JhcHBlciAoYDxkaXY+YClcXG4uZHJvcHVwLFxcbi5kcm9wZW5kLFxcbi5kcm9wZG93bixcXG4uZHJvcHN0YXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcblxcbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcXG4gIEBpbmNsdWRlIGNhcmV0KCk7XFxufVxcblxcbi8vIFRoZSBkcm9wZG93biBtZW51XFxuLmRyb3Bkb3duLW1lbnUge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgdG9wOiAxMDAlO1xcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcXG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFxcXCJvcGVuXFxcIiBvZiB0aGUgbWVudVxcbiAgbWluLXdpZHRoOiAkZHJvcGRvd24tbWluLXdpZHRoO1xcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24tcGFkZGluZy14O1xcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xcbiAgY29sb3I6ICRkcm9wZG93bi1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyLXdpZHRoIHNvbGlkICRkcm9wZG93bi1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRkcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcXG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xcblxcbiAgJltkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICBsZWZ0OiAwO1xcbiAgICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tc3BhY2VyO1xcbiAgfVxcbn1cXG5cXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xcbi8vIFdlIGRlbGliZXJhdGVseSBoYXJkY29kZSB0aGUgYGJzLWAgcHJlZml4IGJlY2F1c2Ugd2UgY2hlY2tcXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcXG5cXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG5cXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xcbiAgICAgIC0tYnMtcG9zaXRpb246IHN0YXJ0O1xcblxcbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcXG4gICAgICAgIHJpZ2h0OiBhdXRvICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gICAgICAgIGxlZnQ6IDAgI3tcXFwiLyogcnRsOmlnbm9yZSAqL1xcXCJ9O1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAuZHJvcGRvd24tbWVudSN7JGluZml4fS1lbmQge1xcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcXG5cXG4gICAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgICAgICByaWdodDogMCAje1xcXCIvKiBydGw6aWdub3JlICovXFxcIn07XFxuICAgICAgICBsZWZ0OiBhdXRvICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXFxuXFxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXFxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0Llxcbi5kcm9wdXAge1xcbiAgLmRyb3Bkb3duLW1lbnUge1xcbiAgICB0b3A6IGF1dG87XFxuICAgIGJvdHRvbTogMTAwJTtcXG5cXG4gICAgJltkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICAgIG1hcmdpbi10b3A6IDA7XFxuICAgICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcXG4gIH1cXG59XFxuXFxuLmRyb3BlbmQge1xcbiAgLmRyb3Bkb3duLW1lbnUge1xcbiAgICB0b3A6IDA7XFxuICAgIHJpZ2h0OiBhdXRvO1xcbiAgICBsZWZ0OiAxMDAlO1xcblxcbiAgICAmW2RhdGEtYnMtcG9wcGVyXSB7XFxuICAgICAgbWFyZ2luLXRvcDogMDtcXG4gICAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICAgIEBpbmNsdWRlIGNhcmV0KGVuZCk7XFxuICAgICY6OmFmdGVyIHtcXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uZHJvcHN0YXJ0IHtcXG4gIC5kcm9wZG93bi1tZW51IHtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMTAwJTtcXG4gICAgbGVmdDogYXV0bztcXG5cXG4gICAgJltkYXRhLWJzLXBvcHBlcl0ge1xcbiAgICAgIG1hcmdpbi10b3A6IDA7XFxuICAgICAgbWFyZ2luLXJpZ2h0OiAkZHJvcGRvd24tc3BhY2VyO1xcbiAgICB9XFxuICB9XFxuXFxuICAuZHJvcGRvd24tdG9nZ2xlIHtcXG4gICAgQGluY2x1ZGUgY2FyZXQoc3RhcnQpO1xcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXFxuLmRyb3Bkb3duLWRpdmlkZXIge1xcbiAgaGVpZ2h0OiAwO1xcbiAgbWFyZ2luOiAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSAwO1xcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHJvcGRvd24tZGl2aWRlci1iZztcXG59XFxuXFxuLy8gTGlua3MsIGJ1dHRvbnMsIGFuZCBtb3JlIHdpdGhpbiB0aGUgZHJvcGRvd24gbWVudVxcbi8vXFxuLy8gYDxidXR0b24+YC1zcGVjaWZpYyBzdHlsZXMgYXJlIGRlbm90ZWQgd2l0aCBgLy8gRm9yIDxidXR0b24+c2BcXG4uZHJvcGRvd24taXRlbSB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHNcXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XFxuICBjbGVhcjogYm90aDtcXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXFxuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcXG4gIGJvcmRlcjogMDsgLy8gRm9yIGA8YnV0dG9uPmBzXFxuXFxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXFxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcXG4gICAgJjpmaXJzdC1jaGlsZCB7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgICB9XFxuXFxuICAgICY6bGFzdC1jaGlsZCB7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgICB9XFxuICB9XFxuXFxuICAmOmhvdmVyLFxcbiAgJjpmb2N1cyB7XFxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcXG4gIH1cXG5cXG4gICYuYWN0aXZlLFxcbiAgJjphY3RpdmUge1xcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yO1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyk7XFxuICB9XFxuXFxuICAmLmRpc2FibGVkLFxcbiAgJjpkaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xcbiAgfVxcbn1cXG5cXG4uZHJvcGRvd24tbWVudS5zaG93IHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG5cXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcXG4uZHJvcGRvd24taGVhZGVyIHtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gZm9yIHVzZSB3aXRoIGhlYWRpbmcgZWxlbWVudHNcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLXNtKTtcXG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxcbn1cXG5cXG4vLyBEcm9wZG93biB0ZXh0XFxuLmRyb3Bkb3duLWl0ZW0tdGV4dCB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XFxuICBjb2xvcjogJGRyb3Bkb3duLWxpbmstY29sb3I7XFxufVxcblxcbi8vIERhcmsgZHJvcGRvd25zXFxuLmRyb3Bkb3duLW1lbnUtZGFyayB7XFxuICBjb2xvcjogJGRyb3Bkb3duLWRhcmstY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tZGFyay1iZztcXG4gIGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWRhcmstYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZHJvcGRvd24tZGFyay1ib3gtc2hhZG93KTtcXG5cXG4gIC5kcm9wZG93bi1pdGVtIHtcXG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XFxuXFxuICAgICY6aG92ZXIsXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yO1xcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmcpO1xcbiAgICB9XFxuXFxuICAgICYuYWN0aXZlLFxcbiAgICAmOmFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yO1xcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnKTtcXG4gICAgfVxcblxcbiAgICAmLmRpc2FibGVkLFxcbiAgICAmOmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLmRyb3Bkb3duLWRpdmlkZXIge1xcbiAgICBib3JkZXItY29sb3I6ICRkcm9wZG93bi1kYXJrLWRpdmlkZXItYmc7XFxuICB9XFxuXFxuICAuZHJvcGRvd24taXRlbS10ZXh0IHtcXG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWxpbmstY29sb3I7XFxuICB9XFxuXFxuICAuZHJvcGRvd24taGVhZGVyIHtcXG4gICAgY29sb3I6ICRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjtcXG4gIH1cXG59XFxuXCIsXCJAbWl4aW4gY2FyZXQtZG93biB7XFxuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQ7XFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1ib3R0b206IDA7XFxuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbn1cXG5cXG5AbWl4aW4gY2FyZXQtdXAge1xcbiAgYm9yZGVyLXRvcDogMDtcXG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcXG59XFxuXFxuQG1peGluIGNhcmV0LWVuZCB7XFxuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItcmlnaHQ6IDA7XFxuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xcbn1cXG5cXG5AbWl4aW4gY2FyZXQtc3RhcnQge1xcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQ7XFxuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxufVxcblxcbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XFxuICBAaWYgJGVuYWJsZS1jYXJldCB7XFxuICAgICY6OmFmdGVyIHtcXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XFxuICAgICAgY29udGVudDogXFxcIlxcXCI7XFxuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XFxuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duKCk7XFxuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcXG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCk7XFxuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGVuZCB7XFxuICAgICAgICBAaW5jbHVkZSBjYXJldC1lbmQoKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xcbiAgICAgICY6OmFmdGVyIHtcXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgICAgfVxcblxcbiAgICAgICY6OmJlZm9yZSB7XFxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcXG4gICAgICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtc3RhcnQoKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXFxuLmJ0bi1ncm91cCxcXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcXG5cXG4gID4gLmJ0biB7XFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gICAgZmxleDogMSAxIGF1dG87XFxuICB9XFxuXFxuICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcXFwiYWN0aXZlXFxcIiBidXR0b25zIHRvIHRoZSBmcm9udCB0byBvdmVybGF5XFxuICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxcbiAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxcbiAgPiAuYnRuLWNoZWNrOmZvY3VzICsgLmJ0bixcXG4gID4gLmJ0bjpob3ZlcixcXG4gID4gLmJ0bjpmb2N1cyxcXG4gID4gLmJ0bjphY3RpdmUsXFxuICA+IC5idG4uYWN0aXZlIHtcXG4gICAgei1pbmRleDogMTtcXG4gIH1cXG59XFxuXFxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxcbi5idG4tdG9vbGJhciB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xcblxcbiAgLmlucHV0LWdyb3VwIHtcXG4gICAgd2lkdGg6IGF1dG87XFxuICB9XFxufVxcblxcbi5idG4tZ3JvdXAge1xcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gICAgbWFyZ2luLWxlZnQ6IC0kYnRuLWJvcmRlci13aWR0aDtcXG4gIH1cXG5cXG4gIC8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLWVuZC1yYWRpdXMoMCk7XFxuICB9XFxuXFxuICAvLyBUaGUgbGVmdCByYWRpdXMgc2hvdWxkIGJlIDAgaWYgdGhlIGJ1dHRvbiBpczpcXG4gIC8vIC0gdGhlIFxcXCJ0aGlyZCBvciBtb3JlXFxcIiBjaGlsZFxcbiAgLy8gLSB0aGUgc2Vjb25kIGNoaWxkIGFuZCB0aGUgcHJldmlvdXMgZWxlbWVudCBpc24ndCBgLmJ0bi1jaGVja2AgKG1ha2luZyBpdCB0aGUgZmlyc3QgY2hpbGQgdmlzdWFsbHkpXFxuICAvLyAtIHBhcnQgb2YgYSBidG4tZ3JvdXAgd2hpY2ggaXNuJ3QgdGhlIGZpcnN0IGNoaWxkXFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcXG4gID4gOm5vdCguYnRuLWNoZWNrKSArIC5idG4sXFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcXG4gIH1cXG59XFxuXFxuLy8gU2l6aW5nXFxuLy9cXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cXG5cXG4uYnRuLWdyb3VwLXNtID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1zbTsgfVxcbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XFxuXFxuXFxuLy9cXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXFxuLy9cXG5cXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcXG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14ICogLjc1O1xcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcXG5cXG4gICY6OmFmdGVyLFxcbiAgLmRyb3B1cCAmOjphZnRlcixcXG4gIC5kcm9wZW5kICY6OmFmdGVyIHtcXG4gICAgbWFyZ2luLWxlZnQ6IDA7XFxuICB9XFxuXFxuICAuZHJvcHN0YXJ0ICY6OmJlZm9yZSB7XFxuICAgIG1hcmdpbi1yaWdodDogMDtcXG4gIH1cXG59XFxuXFxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XFxuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xcbn1cXG5cXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XFxuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcXG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XFxufVxcblxcblxcbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcXG4uYnRuLWdyb3VwLnNob3cgLmRyb3Bkb3duLXRvZ2dsZSB7XFxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xcblxcbiAgLy8gU2hvdyBubyBzaGFkb3cgZm9yIGAuYnRuLWxpbmtgIHNpbmNlIGl0IGhhcyBubyBvdGhlciBidXR0b24gc3R5bGVzLlxcbiAgJi5idG4tbGluayB7XFxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XFxuICB9XFxufVxcblxcblxcbi8vXFxuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xcbi8vXFxuXFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG5cXG4gID4gLmJ0bixcXG4gID4gLmJ0bi1ncm91cCB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgfVxcblxcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcXG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xcbiAgfVxcblxcbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXFxuICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcXG4gIH1cXG5cXG4gID4gLmJ0biB+IC5idG4sXFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XFxuICB9XFxufVxcblwiLFwiLy8gQmFzZSBjbGFzc1xcbi8vXFxuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXFxuXFxuLm5hdiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxufVxcblxcbi5uYXYtbGluayB7XFxuICBkaXNwbGF5OiBibG9jaztcXG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2LWxpbmstZm9udC1zaXplKTtcXG4gIGZvbnQtd2VpZ2h0OiAkbmF2LWxpbmstZm9udC13ZWlnaHQ7XFxuICBjb2xvcjogJG5hdi1saW5rLWNvbG9yO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbmF2LWxpbmstdHJhbnNpdGlvbik7XFxuXFxuICAmOmhvdmVyLFxcbiAgJjpmb2N1cyB7XFxuICAgIGNvbG9yOiAkbmF2LWxpbmstaG92ZXItY29sb3I7XFxuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xcbiAgfVxcblxcbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxcbiAgJi5kaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3I7XFxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XFxuICB9XFxufVxcblxcbi8vXFxuLy8gVGFic1xcbi8vXFxuXFxuLm5hdi10YWJzIHtcXG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcXG5cXG4gIC5uYXYtbGluayB7XFxuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRuYXYtdGFicy1ib3JkZXItcmFkaXVzKTtcXG5cXG4gICAgJjpob3ZlcixcXG4gICAgJjpmb2N1cyB7XFxuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XFxuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcXG4gICAgfVxcblxcbiAgICAmLmRpc2FibGVkIHtcXG4gICAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yO1xcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5uYXYtbGluay5hY3RpdmUsXFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xcbiAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XFxuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcXG4gIH1cXG5cXG4gIC5kcm9wZG93bi1tZW51IHtcXG4gICAgLy8gTWFrZSBkcm9wZG93biBib3JkZXIgb3ZlcmxhcCB0YWIgYm9yZGVyXFxuICAgIG1hcmdpbi10b3A6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBQaWxsc1xcbi8vXFxuXFxuLm5hdi1waWxscyB7XFxuICAubmF2LWxpbmsge1xcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xcbiAgICBib3JkZXI6IDA7XFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcXG4gIH1cXG5cXG4gIC5uYXYtbGluay5hY3RpdmUsXFxuICAuc2hvdyA+IC5uYXYtbGluayB7XFxuICAgIGNvbG9yOiAkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yO1xcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKTtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcXG4vL1xcblxcbi5uYXYtZmlsbCB7XFxuICA+IC5uYXYtbGluayxcXG4gIC5uYXYtaXRlbSB7XFxuICAgIGZsZXg6IDEgMSBhdXRvO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB9XFxufVxcblxcbi5uYXYtanVzdGlmaWVkIHtcXG4gID4gLm5hdi1saW5rLFxcbiAgLm5hdi1pdGVtIHtcXG4gICAgZmxleC1iYXNpczogMDtcXG4gICAgZmxleC1ncm93OiAxO1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxuICB9XFxufVxcblxcblxcbi8vIFRhYmJhYmxlIHRhYnNcXG4vL1xcbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxcblxcbi50YWItY29udGVudCB7XFxuICA+IC50YWItcGFuZSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxuICA+IC5hY3RpdmUge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gIH1cXG59XFxuXCIsXCIvLyBDb250ZW50c1xcbi8vXFxuLy8gTmF2YmFyXFxuLy8gTmF2YmFyIGJyYW5kXFxuLy8gTmF2YmFyIG5hdlxcbi8vIE5hdmJhciB0ZXh0XFxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcXG4vLyBOYXZiYXIgcG9zaXRpb25cXG4vLyBOYXZiYXIgdGhlbWVzXFxuXFxuXFxuLy8gTmF2YmFyXFxuLy9cXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxcbi8vIG90aGVyIG5hdmJhciB2YXJpYXRpb25zLlxcblxcbi5uYXZiYXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItcGFkZGluZy15O1xcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcXG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLXBhZGRpbmcteTtcXG4gIHBhZGRpbmctbGVmdDogJG5hdmJhci1wYWRkaW5nLXg7IC8vIGRlZmF1bHQ6IG51bGxcXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XFxuXFxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxcbiAgLy8gVGhlIGBmbGV4LXdyYXBgIHByb3BlcnR5IGlzIGluaGVyaXRlZCB0byBzaW1wbGlmeSB0aGUgZXhwYW5kZWQgbmF2YmFyc1xcbiAgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXMge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LXdyYXA6IGluaGVyaXQ7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIH1cXG5cXG4gID4gLmNvbnRhaW5lcixcXG4gID4gLmNvbnRhaW5lci1mbHVpZCB7XFxuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XFxuICB9XFxuXFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcXG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XFxuICAgICAgQGV4dGVuZCAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcztcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBOYXZiYXIgYnJhbmRcXG4vL1xcbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxcblxcbi5uYXZiYXItYnJhbmQge1xcbiAgcGFkZGluZy10b3A6ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQ7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcXG5cXG4gICY6aG92ZXIsXFxuICAmOmZvY3VzIHtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XFxuICB9XFxufVxcblxcblxcbi8vIE5hdmJhciBuYXZcXG4vL1xcbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxcblxcbi5uYXZiYXItbmF2IHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvLyBjYW5ub3QgdXNlIGBpbmhlcml0YCB0byBnZXQgdGhlIGAubmF2YmFyYHMgdmFsdWVcXG4gIHBhZGRpbmctbGVmdDogMDtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcblxcbiAgLm5hdi1saW5rIHtcXG4gICAgcGFkZGluZy1yaWdodDogMDtcXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xcbiAgfVxcblxcbiAgLmRyb3Bkb3duLW1lbnUge1xcbiAgICBwb3NpdGlvbjogc3RhdGljO1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBOYXZiYXIgdGV4dFxcbi8vXFxuLy9cXG5cXG4ubmF2YmFyLXRleHQge1xcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XFxuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcXG59XFxuXFxuXFxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcXG4vL1xcbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxcbi8vIFBvd2VyZWQgYnkgdGhlIGNvbGxhcHNlIEJvb3RzdHJhcCBKYXZhU2NyaXB0IHBsdWdpbi5cXG5cXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cXG4vLyB0aGUgZGVmYXVsdCBmbGV4Ym94IHJvdyBvcmllbnRhdGlvbi4gUmVxdWlyZXMgdGhlIHVzZSBvZiBgZmxleC13cmFwOiB3cmFwYFxcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50Llxcbi5uYXZiYXItY29sbGFwc2Uge1xcbiAgZmxleC1iYXNpczogMTAwJTtcXG4gIGZsZXgtZ3JvdzogMTtcXG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXFxuICAvLyBwcm9wZXJseSB2ZXJ0aWNhbGx5LiBDYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gd2l0aCBmbGV4IHV0aWxpdGllcy5cXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxufVxcblxcbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcXG4ubmF2YmFyLXRvZ2dsZXIge1xcbiAgcGFkZGluZzogJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteSAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xcbiAgbGluZS1oZWlnaHQ6IDE7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXFxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRuYXZiYXItdG9nZ2xlci10cmFuc2l0aW9uKTtcXG5cXG4gICY6aG92ZXIge1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB9XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg7XFxuICB9XFxufVxcblxcbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cXG4vLyBvciBpbWFnZSBmaWxlIGFzIG5lZWRlZC5cXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogMS41ZW07XFxuICBoZWlnaHQ6IDEuNWVtO1xcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XFxufVxcblxcbi5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICBtYXgtaGVpZ2h0OiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9c2Nyb2xsLWhlaWdodCwgNzV2aCk7XFxuICBvdmVyZmxvdy15OiBhdXRvO1xcbn1cXG5cXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcXG4vLyB3aGVyZSB5b3VyIG5hdmJhciBjb2xsYXBzZXMuXFxuLm5hdmJhci1leHBhbmQge1xcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG5cXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3Mvc2VsZWN0b3Itbm8tdW5pb24tY2xhc3MtbmFtZVxcbiAgICAmI3skaW5maXh9IHtcXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XFxuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcXG5cXG4gICAgICAgIC5uYXZiYXItbmF2IHtcXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcXG5cXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICAgICAgfVxcblxcbiAgICAgICAgICAubmF2LWxpbmsge1xcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14O1xcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XFxuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XFxuICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcXG4gICAgICAgIH1cXG5cXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XFxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIE5hdmJhciB0aGVtZXNcXG4vL1xcbi8vIFN0eWxlcyBmb3Igc3dpdGNoaW5nIGJldHdlZW4gbmF2YmFycyB3aXRoIGxpZ2h0IG9yIGRhcmsgYmFja2dyb3VuZC5cXG5cXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXFxuLm5hdmJhci1saWdodCB7XFxuICAubmF2YmFyLWJyYW5kIHtcXG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XFxuXFxuICAgICY6aG92ZXIsXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xcbiAgICB9XFxuICB9XFxuXFxuICAubmF2YmFyLW5hdiB7XFxuICAgIC5uYXYtbGluayB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XFxuXFxuICAgICAgJjpob3ZlcixcXG4gICAgICAmOmZvY3VzIHtcXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLmRpc2FibGVkIHtcXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAuc2hvdyA+IC5uYXYtbGluayxcXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xcbiAgICB9XFxuICB9XFxuXFxuICAubmF2YmFyLXRvZ2dsZXIge1xcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yO1xcbiAgfVxcblxcbiAgLm5hdmJhci10b2dnbGVyLWljb24ge1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcXG4gIH1cXG5cXG4gIC5uYXZiYXItdGV4dCB7XFxuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xcblxcbiAgICBhLFxcbiAgICBhOmhvdmVyLFxcbiAgICBhOmZvY3VzICB7XFxuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcXG4ubmF2YmFyLWRhcmsge1xcbiAgLm5hdmJhci1icmFuZCB7XFxuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XFxuXFxuICAgICY6aG92ZXIsXFxuICAgICY6Zm9jdXMge1xcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC5uYXZiYXItbmF2IHtcXG4gICAgLm5hdi1saW5rIHtcXG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xcblxcbiAgICAgICY6aG92ZXIsXFxuICAgICAgJjpmb2N1cyB7XFxuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xcbiAgICAgIH1cXG5cXG4gICAgICAmLmRpc2FibGVkIHtcXG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcXG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcXG4gICAgfVxcbiAgfVxcblxcbiAgLm5hdmJhci10b2dnbGVyIHtcXG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcXG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XFxuICB9XFxuXFxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyk7XFxuICB9XFxuXFxuICAubmF2YmFyLXRleHQge1xcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xcbiAgICBhLFxcbiAgICBhOmhvdmVyLFxcbiAgICBhOmZvY3VzIHtcXG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gQmFzZSBzdHlsZXNcXG4vL1xcblxcbi5jYXJkIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxcbiAgaGVpZ2h0OiAkY2FyZC1oZWlnaHQ7XFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZztcXG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcXG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtYm9yZGVyLXJhZGl1cyk7XFxuXFxuICA+IGhyIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xcbiAgICBtYXJnaW4tbGVmdDogMDtcXG4gIH1cXG5cXG4gID4gLmxpc3QtZ3JvdXAge1xcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xcblxcbiAgICAmOmZpcnN0LWNoaWxkIHtcXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgICB9XFxuXFxuICAgICY6bGFzdC1jaGlsZCAge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIER1ZSB0byBzcGVjaWZpY2l0eSBvZiB0aGUgYWJvdmUgc2VsZWN0b3IgKGAuY2FyZCA+IC5saXN0LWdyb3VwYCksIHdlIG11c3RcXG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXFxuICA+IC5saXN0LWdyb3VwICsgLmNhcmQtZm9vdGVyIHtcXG4gICAgYm9yZGVyLXRvcDogMDtcXG4gIH1cXG59XFxuXFxuLmNhcmQtYm9keSB7XFxuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgZm9yIGRlY2tzIGFuZCBncm91cHMgc28gdGhhdCBjYXJkIGJsb2NrcyB0YWtlIHVwXFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXFxuICBmbGV4OiAxIDEgYXV0bztcXG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xcbiAgY29sb3I6ICRjYXJkLWNvbG9yO1xcbn1cXG5cXG4uY2FyZC10aXRsZSB7XFxuICBtYXJnaW4tYm90dG9tOiAkY2FyZC10aXRsZS1zcGFjZXIteTtcXG59XFxuXFxuLmNhcmQtc3VidGl0bGUge1xcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXRpdGxlLXNwYWNlci15IC8gMjtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxufVxcblxcbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XFxuICBtYXJnaW4tYm90dG9tOiAwO1xcbn1cXG5cXG4uY2FyZC1saW5rIHtcXG4gICY6aG92ZXIge1xcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XFxuICB9XFxuXFxuICArIC5jYXJkLWxpbmsge1xcbiAgICBtYXJnaW4tbGVmdDogJGNhcmQtc3BhY2VyLXggI3tcXFwiLyogcnRsOmlnbm9yZSAqL1xcXCJ9O1xcbiAgfVxcbn1cXG5cXG4vL1xcbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xcbi8vXFxuXFxuLmNhcmQtaGVhZGVyIHtcXG4gIHBhZGRpbmc6ICRjYXJkLWNhcC1wYWRkaW5nLXkgJGNhcmQtY2FwLXBhZGRpbmcteDtcXG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XFxuICBjb2xvcjogJGNhcmQtY2FwLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcXG5cXG4gICY6Zmlyc3QtY2hpbGQge1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAwIDApO1xcbiAgfVxcbn1cXG5cXG4uY2FyZC1mb290ZXIge1xcbiAgcGFkZGluZzogJGNhcmQtY2FwLXBhZGRpbmcteSAkY2FyZC1jYXAtcGFkZGluZy14O1xcbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcXG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XFxuXFxuICAmOmxhc3QtY2hpbGQge1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgfVxcbn1cXG5cXG5cXG4vL1xcbi8vIEhlYWRlciBuYXZzXFxuLy9cXG5cXG4uY2FyZC1oZWFkZXItdGFicyB7XFxuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1jYXAtcGFkZGluZy14IC8gMjtcXG4gIG1hcmdpbi1ib3R0b206IC0kY2FyZC1jYXAtcGFkZGluZy15O1xcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14IC8gMjtcXG4gIGJvcmRlci1ib3R0b206IDA7XFxuXFxuICBAaWYgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICE9ICRjYXJkLWJnIHtcXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtYmc7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNhcmQtYmc7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmNhcmQtaGVhZGVyLXBpbGxzIHtcXG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLWNhcC1wYWRkaW5nLXggLyAyO1xcbiAgbWFyZ2luLWxlZnQ6IC0kY2FyZC1jYXAtcGFkZGluZy14IC8gMjtcXG59XFxuXFxuLy8gQ2FyZCBpbWFnZVxcbi5jYXJkLWltZy1vdmVybGF5IHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIHJpZ2h0OiAwO1xcbiAgYm90dG9tOiAwO1xcbiAgbGVmdDogMDtcXG4gIHBhZGRpbmc6ICRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLXRvcCxcXG4uY2FyZC1pbWctYm90dG9tIHtcXG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXFxufVxcblxcbi5jYXJkLWltZyxcXG4uY2FyZC1pbWctdG9wIHtcXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cXG4uY2FyZC1pbWcsXFxuLmNhcmQtaW1nLWJvdHRvbSB7XFxuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcXG59XFxuXFxuXFxuLy9cXG4vLyBDYXJkIGdyb3Vwc1xcbi8vXFxuXFxuLmNhcmQtZ3JvdXAge1xcbiAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cXG4gID4gLmNhcmQge1xcbiAgICBtYXJnaW4tYm90dG9tOiAkY2FyZC1ncm91cC1tYXJnaW47XFxuICB9XFxuXFxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XFxuICAgIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcXG4gICAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cXG4gICAgPiAuY2FyZCB7XFxuICAgICAgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XFxuICAgICAgZmxleDogMSAwIDAlO1xcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XFxuXFxuICAgICAgKyAuY2FyZCB7XFxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcXG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xcbiAgICAgIH1cXG5cXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXFxuICAgICAgQGlmICRlbmFibGUtcm91bmRlZCB7XFxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcXG5cXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XFxuICAgICAgICAgIH1cXG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG5cXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xcblxcbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcXG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xcbiAgICAgICAgICB9XFxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XFxuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XFxuICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvL1xcbi8vIEJhc2Ugc3R5bGVzXFxuLy9cXG5cXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgcGFkZGluZzogJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15ICRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDtcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xcbiAgY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gUmVzZXQgYnV0dG9uIHN0eWxlXFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1iZztcXG4gIGJvcmRlcjogJGFjY29yZGlvbi1ib3JkZXItd2lkdGggc29saWQgJGFjY29yZGlvbi1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYWNjb3JkaW9uLXRyYW5zaXRpb24pO1xcblxcbiAgJi5jb2xsYXBzZWQge1xcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xcbiAgfVxcblxcbiAgJjpub3QoLmNvbGxhcHNlZCkge1xcbiAgICBjb2xvcjogJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmc7XFxuXFxuICAgICY6OmFmdGVyIHtcXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uKTtcXG4gICAgICB0cmFuc2Zvcm06ICRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm07XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIEFjY29yZGlvbiBpY29uXFxuICAmOjphZnRlciB7XFxuICAgIGZsZXgtc2hyaW5rOiAwO1xcbiAgICB3aWR0aDogJGFjY29yZGlvbi1pY29uLXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24pO1xcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRhY2NvcmRpb24taWNvbi13aWR0aDtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYWNjb3JkaW9uLWljb24tdHJhbnNpdGlvbik7XFxuICB9XFxuXFxuICAmOmhvdmVyIHtcXG4gICAgei1pbmRleDogMjtcXG4gIH1cXG5cXG4gICY6Zm9jdXMge1xcbiAgICB6LWluZGV4OiAzO1xcbiAgICBib3JkZXItY29sb3I6ICRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjtcXG4gICAgb3V0bGluZTogMDtcXG4gICAgYm94LXNoYWRvdzogJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdztcXG4gIH1cXG59XFxuXFxuLmFjY29yZGlvbi1oZWFkZXIge1xcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuXFxuLmFjY29yZGlvbi1pdGVtIHtcXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XFxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMpO1xcbiAgICB9XFxuICB9XFxuXFxuICAmOmxhc3Qtb2YtdHlwZSB7XFxuICAgIC5hY2NvcmRpb24tYnV0dG9uIHtcXG4gICAgICAvLyBPbmx5IHNldCBhIGJvcmRlci1yYWRpdXMgb24gdGhlIGxhc3QgaXRlbSBpZiB0aGUgYWNjb3JkaW9uIGlzIGNvbGxhcHNlZFxcbiAgICAgICYuY29sbGFwc2VkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoO1xcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcXG4gICAgICB9XFxuICAgIH1cXG5cXG4gICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGFjY29yZGlvbi1ib3JkZXItd2lkdGg7XFxuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGFjY29yZGlvbi1ib3JkZXItcmFkaXVzKTtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYWNjb3JkaW9uLWNvbGxhcHNlIHtcXG4gIGJvcmRlcjogc29saWQgJGFjY29yZGlvbi1ib3JkZXItY29sb3I7XFxuICBib3JkZXItd2lkdGg6IDAgJGFjY29yZGlvbi1ib3JkZXItd2lkdGg7XFxufVxcblxcbi5hY2NvcmRpb24tYm9keSB7XFxuICBwYWRkaW5nOiAkYWNjb3JkaW9uLWJvZHktcGFkZGluZy15ICRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg7XFxufVxcblxcblxcbi8vIEZsdXNoIGFjY29yZGlvbiBpdGVtc1xcbi8vXFxuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBhY2NvcmRpb24gaXRlbXMgZWRnZS10by1lZGdlLlxcblxcbi5hY2NvcmRpb24tZmx1c2gge1xcbiAgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgICBib3JkZXItcmlnaHQ6IDA7XFxuICAgIGJvcmRlci1sZWZ0OiAwO1xcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xcbiAgfVxcblxcbiAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XFxuICAgIGJvcmRlci13aWR0aDogMDtcXG4gIH1cXG5cXG4gIC5hY2NvcmRpb24taXRlbSB7XFxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XFxuICAgICAgLmFjY29yZGlvbi1idXR0b24ge1xcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xcbiAgICAgIH1cXG4gICAgfVxcblxcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XFxuICAgICAgLmFjY29yZGlvbi1idXR0b24uY29sbGFwc2VkIHtcXG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIuYnJlYWRjcnVtYiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC13cmFwOiB3cmFwO1xcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcXG4gIG1hcmdpbi1ib3R0b206ICRicmVhZGNydW1iLW1hcmdpbi1ib3R0b207XFxuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJlYWRjcnVtYi1iZztcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyk7XFxufVxcblxcbi5icmVhZGNydW1iLWl0ZW0ge1xcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFxcXCIvXFxcIilcXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XFxuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgZmxvYXQ6IGxlZnQ7IC8vIFN1cHByZXNzIGlubGluZSBzcGFjaW5ncyBhbmQgdW5kZXJsaW5pbmcgb2YgdGhlIHNlcGFyYXRvclxcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14O1xcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XFxcIi8qIHJ0bDpcXFwifSB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XFxcIiovXFxcIn07XFxuICAgIH1cXG4gIH1cXG5cXG4gICYuYWN0aXZlIHtcXG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcXG4gIH1cXG59XFxuXCIsXCIucGFnaW5hdGlvbiB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xcbn1cXG5cXG4ucGFnZS1saW5rIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XFxuICBib3JkZXI6ICRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCBzb2xpZCAkcGFnaW5hdGlvbi1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwYWdpbmF0aW9uLXRyYW5zaXRpb24pO1xcblxcbiAgJjpob3ZlciB7XFxuICAgIHotaW5kZXg6IDI7XFxuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjtcXG4gIH1cXG5cXG4gICY6Zm9jdXMge1xcbiAgICB6LWluZGV4OiAzO1xcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZm9jdXMtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWZvY3VzLWJnO1xcbiAgICBvdXRsaW5lOiAkcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lO1xcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xcbiAgfVxcbn1cXG5cXG4ucGFnZS1pdGVtIHtcXG4gICY6bm90KDpmaXJzdC1jaGlsZCkgLnBhZ2UtbGluayB7XFxuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XFxuICB9XFxuXFxuICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcXG4gICAgei1pbmRleDogMztcXG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJHBhZ2luYXRpb24tYWN0aXZlLWJnKTtcXG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xcbiAgfVxcblxcbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcXG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XFxuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xcbiAgfVxcbn1cXG5cXG5cXG4vL1xcbi8vIFNpemluZ1xcbi8vXFxuQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteSwgJHBhZ2luYXRpb24tcGFkZGluZy14LCBudWxsLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzKTtcXG5cXG4ucGFnaW5hdGlvbi1sZyB7XFxuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGcpO1xcbn1cXG5cXG4ucGFnaW5hdGlvbi1zbSB7XFxuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xcbn1cXG5cIixcIi8vIFBhZ2luYXRpb25cXG5cXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRib3JkZXItcmFkaXVzKSB7XFxuICAucGFnZS1saW5rIHtcXG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XFxuICB9XFxuXFxuICAucGFnZS1pdGVtIHtcXG4gICAgQGlmICRwYWdpbmF0aW9uLW1hcmdpbi1zdGFydCA9PSAoLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCkge1xcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgLnBhZ2UtbGluayB7XFxuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG5cXG4gICAgICAmOmxhc3QtY2hpbGQge1xcbiAgICAgICAgLnBhZ2UtbGluayB7XFxuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcXG4gICAgICAgIH1cXG4gICAgICB9XFxuICAgIH0gQGVsc2Uge1xcbiAgICAgIC8vQWRkIGJvcmRlci1yYWRpdXMgdG8gYWxsIHBhZ2VMaW5rcyBpbiBjYXNlIHRoZXkgaGF2ZSBsZWZ0IG1hcmdpblxcbiAgICAgIC5wYWdlLWxpbmsge1xcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gQmFzZSBjbGFzc1xcbi8vXFxuLy8gUmVxdWlyZXMgb25lIG9mIHRoZSBjb250ZXh0dWFsLCBjb2xvciBtb2RpZmllciBjbGFzc2VzIGZvciBgY29sb3JgIGFuZFxcbi8vIGBiYWNrZ3JvdW5kLWNvbG9yYC5cXG5cXG4uYmFkZ2Uge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRiYWRnZS1mb250LXNpemUpO1xcbiAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcXG4gIGxpbmUtaGVpZ2h0OiAxO1xcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRiYWRnZS1ib3JkZXItcmFkaXVzKTtcXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XFxuXFxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxcbiAgJjplbXB0eSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcblxcbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcXG4uYnRuIC5iYWRnZSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB0b3A6IC0xcHg7XFxufVxcblwiLFwiLy9cXG4vLyBCYXNlIHN0eWxlc1xcbi8vXFxuXFxuLmFsZXJ0IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcXG4gIG1hcmdpbi1ib3R0b206ICRhbGVydC1tYXJnaW4tYm90dG9tO1xcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XFxufVxcblxcbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXFxuLmFsZXJ0LWhlYWRpbmcge1xcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxcbiAgY29sb3I6IGluaGVyaXQ7XFxufVxcblxcbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXFxuLmFsZXJ0LWxpbmsge1xcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xcbn1cXG5cXG5cXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcXG4vL1xcbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxcblxcbi5hbGVydC1kaXNtaXNzaWJsZSB7XFxuICBwYWRkaW5nLXJpZ2h0OiAkYWxlcnQtZGlzbWlzc2libGUtcGFkZGluZy1yO1xcblxcbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cXG4gIC5idG4tY2xvc2Uge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcXG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAqIDEuMjUgJGFsZXJ0LXBhZGRpbmcteDtcXG4gIH1cXG59XFxuXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xcbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXFxuXFxuQGVhY2ggJHN0YXRlLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAkYWxlcnQtYmFja2dyb3VuZDogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYmctc2NhbGUpO1xcbiAgJGFsZXJ0LWJvcmRlcjogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtYm9yZGVyLXNjYWxlKTtcXG4gICRhbGVydC1jb2xvcjogc2hpZnQtY29sb3IoJHZhbHVlLCAkYWxlcnQtY29sb3Itc2NhbGUpO1xcbiAgQGlmIChjb250cmFzdC1yYXRpbygkYWxlcnQtYmFja2dyb3VuZCwgJGFsZXJ0LWNvbG9yKSA8ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcXG4gICAgJGFsZXJ0LWNvbG9yOiBtaXgoJHZhbHVlLCBjb2xvci1jb250cmFzdCgkYWxlcnQtYmFja2dyb3VuZCksIGFicygkYWxlcnQtY29sb3Itc2NhbGUpKTtcXG4gIH1cXG4gIC5hbGVydC0jeyRzdGF0ZX0ge1xcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1iYWNrZ3JvdW5kLCAkYWxlcnQtYm9yZGVyLCAkYWxlcnQtY29sb3IpO1xcbiAgfVxcbn1cXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LW1vZGlmaWVyc1xcblwiLFwiQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICRjb2xvcikge1xcbiAgY29sb3I6ICRjb2xvcjtcXG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcXG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcXG5cXG4gIC5hbGVydC1saW5rIHtcXG4gICAgY29sb3I6IHNoYWRlLWNvbG9yKCRjb2xvciwgMjAlKTtcXG4gIH1cXG59XFxuXCIsXCIvLyBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0cmFuc2l0aW9ucyBhcmUgZGlzYWJsZWRcXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XFxuICBAa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVzIHtcXG4gICAgMCUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6ICRwcm9ncmVzcy1oZWlnaHQ7IH1cXG4gIH1cXG59XFxuXFxuLnByb2dyZXNzIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XFxuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcHJvZ3Jlc3MtZm9udC1zaXplKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcHJvZ3Jlc3MtYm94LXNoYWRvdyk7XFxufVxcblxcbi5wcm9ncmVzcy1iYXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICBjb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWJnO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb24pO1xcbn1cXG5cXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xcbiAgYmFja2dyb3VuZC1zaXplOiAkcHJvZ3Jlc3MtaGVpZ2h0ICRwcm9ncmVzcy1oZWlnaHQ7XFxufVxcblxcbkBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcXG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcXG5cXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAgICAgICBhbmltYXRpb246IG5vbmU7XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gQmFzZSBjbGFzc1xcbi8vXFxuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cXG5cXG4ubGlzdC1ncm91cCB7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG5cXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxcbiAgbWFyZ2luLWJvdHRvbTogMDtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XFxufVxcblxcblxcbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcXG4vL1xcbi8vIFVzZSBhbmNob3Igb3IgYnV0dG9uIGVsZW1lbnRzIGluc3RlYWQgb2YgYGxpYHMgb3IgYGRpdmBzIHRvIGNyZWF0ZSBpbnRlcmFjdGl2ZVxcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXFxuXFxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3I7XFxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcXG5cXG4gIC8vIEhvdmVyIHN0YXRlXFxuICAmOmhvdmVyLFxcbiAgJjpmb2N1cyB7XFxuICAgIHotaW5kZXg6IDE7IC8vIFBsYWNlIGhvdmVyL2ZvY3VzIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1ob3Zlci1iZztcXG4gIH1cXG5cXG4gICY6YWN0aXZlIHtcXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XFxuICB9XFxufVxcblxcblxcbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xcbi8vXFxuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50Llxcblxcbi5saXN0LWdyb3VwLWl0ZW0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcXG4gIGNvbG9yOiAkbGlzdC1ncm91cC1jb2xvcjtcXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcXG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xcbiAgYm9yZGVyOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGggc29saWQgJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yO1xcblxcbiAgJjpmaXJzdC1jaGlsZCB7XFxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGluaGVyaXQpO1xcbiAgfVxcblxcbiAgJjpsYXN0LWNoaWxkIHtcXG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XFxuICB9XFxuXFxuICAmLmRpc2FibGVkLFxcbiAgJjpkaXNhYmxlZCB7XFxuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xcbiAgfVxcblxcbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcXG4gICYuYWN0aXZlIHtcXG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xcbiAgICBib3JkZXItY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I7XFxuICB9XFxuXFxuICAmICsgJiB7XFxuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XFxuXFxuICAgICYuYWN0aXZlIHtcXG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBIb3Jpem9udGFsXFxuLy9cXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXFxuXFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuXFxuICAgICAgPiAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKDApO1xcbiAgICAgICAgfVxcblxcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcXG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygwKTtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICYuYWN0aXZlIHtcXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcXG4gICAgICAgIH1cXG5cXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XFxuICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XFxuXFxuICAgICAgICAgICYuYWN0aXZlIHtcXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcXG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblxcblxcbi8vIEZsdXNoIGxpc3QgaXRlbXNcXG4vL1xcbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3RcXG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cXG5cXG4ubGlzdC1ncm91cC1mbHVzaCB7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xcblxcbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcXG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xcblxcbiAgICAmOmxhc3QtY2hpbGQge1xcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuXFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtbW9kaWZpZXJzXFxuLy8gTGlzdCBncm91cCBjb250ZXh0dWFsIHZhcmlhbnRzXFxuLy9cXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxcbi8vIE9yZ2FuaXphdGlvbmFsbHksIHRoaXMgbXVzdCBjb21lIGFmdGVyIHRoZSBgOmhvdmVyYCBzdGF0ZXMuXFxuXFxuQGVhY2ggJHN0YXRlLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAkbGlzdC1ncm91cC1iYWNrZ3JvdW5kOiBzaGlmdC1jb2xvcigkdmFsdWUsICRsaXN0LWdyb3VwLWl0ZW0tYmctc2NhbGUpO1xcbiAgJGxpc3QtZ3JvdXAtY29sb3I6IHNoaWZ0LWNvbG9yKCR2YWx1ZSwgJGxpc3QtZ3JvdXAtaXRlbS1jb2xvci1zY2FsZSk7XFxuICBAaWYgKGNvbnRyYXN0LXJhdGlvKCRsaXN0LWdyb3VwLWJhY2tncm91bmQsICRsaXN0LWdyb3VwLWNvbG9yKSA8ICRtaW4tY29udHJhc3QtcmF0aW8pIHtcXG4gICAgJGxpc3QtZ3JvdXAtY29sb3I6IG1peCgkdmFsdWUsIGNvbG9yLWNvbnRyYXN0KCRsaXN0LWdyb3VwLWJhY2tncm91bmQpLCBhYnMoJGFsZXJ0LWNvbG9yLXNjYWxlKSk7XFxuICB9XFxuXFxuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRsaXN0LWdyb3VwLWJhY2tncm91bmQsICRsaXN0LWdyb3VwLWNvbG9yKTtcXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xcblwiLFwiLy8gTGlzdCBHcm91cHNcXG5cXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XFxuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XFxuICAgIGNvbG9yOiAkY29sb3I7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xcblxcbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24ge1xcbiAgICAgICY6aG92ZXIsXFxuICAgICAgJjpmb2N1cyB7XFxuICAgICAgICBjb2xvcjogJGNvbG9yO1xcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUtY29sb3IoJGJhY2tncm91bmQsIDEwJSk7XFxuICAgICAgfVxcblxcbiAgICAgICYuYWN0aXZlIHtcXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XFxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgcHJvcGVydGllcyBpbmNsdWRlZCBmb3IgYnV0dG9uIHZlcnNpb24uXFxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXFxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cXFwiI1xcXCJgLlxcbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxcblxcbi5idG4tY2xvc2Uge1xcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XFxuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcXG4gIGhlaWdodDogJGJ0bi1jbG9zZS1oZWlnaHQ7XFxuICBwYWRkaW5nOiAkYnRuLWNsb3NlLXBhZGRpbmcteSAkYnRuLWNsb3NlLXBhZGRpbmcteDtcXG4gIGNvbG9yOiAkYnRuLWNsb3NlLWNvbG9yO1xcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgZXNjYXBlLXN2ZygkYnRuLWNsb3NlLWJnKSBjZW50ZXIgLyAkYnRuLWNsb3NlLXdpZHRoIGF1dG8gbm8tcmVwZWF0OyAvLyBpbmNsdWRlIHRyYW5zcGFyZW50IGZvciBidXR0b24gZWxlbWVudHNcXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xcbiAgb3BhY2l0eTogJGJ0bi1jbG9zZS1vcGFjaXR5O1xcblxcbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcXG4gICY6aG92ZXIge1xcbiAgICBjb2xvcjogJGJ0bi1jbG9zZS1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWhvdmVyLW9wYWNpdHk7XFxuICB9XFxuXFxuICAmOmZvY3VzIHtcXG4gICAgb3V0bGluZTogMDtcXG4gICAgYm94LXNoYWRvdzogJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c7XFxuICAgIG9wYWNpdHk6ICRidG4tY2xvc2UtZm9jdXMtb3BhY2l0eTtcXG4gIH1cXG5cXG4gICY6ZGlzYWJsZWQsXFxuICAmLmRpc2FibGVkIHtcXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XFxuICAgIHVzZXItc2VsZWN0OiBub25lO1xcbiAgICBvcGFjaXR5OiAkYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk7XFxuICB9XFxufVxcblxcbi5idG4tY2xvc2Utd2hpdGUge1xcbiAgZmlsdGVyOiAkYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjtcXG59XFxuXCIsXCIudG9hc3Qge1xcbiAgd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XFxuICBtYXgtd2lkdGg6IDEwMCU7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHRvYXN0LWZvbnQtc2l6ZSk7XFxuICBjb2xvcjogJHRvYXN0LWNvbG9yO1xcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcjtcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6ICR0b2FzdC1ib3JkZXItd2lkdGggc29saWQgJHRvYXN0LWJvcmRlci1jb2xvcjtcXG4gIGJveC1zaGFkb3c6ICR0b2FzdC1ib3gtc2hhZG93O1xcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdG9hc3QtYm9yZGVyLXJhZGl1cyk7XFxuXFxuICAmOm5vdCguc2hvd2luZyk6bm90KC5zaG93KSB7XFxuICAgIG9wYWNpdHk6IDA7XFxuICB9XFxuXFxuICAmLmhpZGUge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbiAgfVxcbn1cXG5cXG4udG9hc3QtY29udGFpbmVyIHtcXG4gIHdpZHRoOiBtYXgtY29udGVudDtcXG4gIG1heC13aWR0aDogMTAwJTtcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcblxcbiAgPiA6bm90KDpsYXN0LWNoaWxkKSB7XFxuICAgIG1hcmdpbi1ib3R0b206ICR0b2FzdC1zcGFjaW5nO1xcbiAgfVxcbn1cXG5cXG4udG9hc3QtaGVhZGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteSAkdG9hc3QtcGFkZGluZy14O1xcbiAgY29sb3I6ICR0b2FzdC1oZWFkZXItY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XFxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZCAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHN1YnRyYWN0KCR0b2FzdC1ib3JkZXItcmFkaXVzLCAkdG9hc3QtYm9yZGVyLXdpZHRoKSk7XFxuXFxuICAuYnRuLWNsb3NlIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAkdG9hc3QtcGFkZGluZy14IC8gLTI7XFxuICAgIG1hcmdpbi1sZWZ0OiAkdG9hc3QtcGFkZGluZy14O1xcbiAgfVxcbn1cXG5cXG4udG9hc3QtYm9keSB7XFxuICBwYWRkaW5nOiAkdG9hc3QtcGFkZGluZy14OyAvLyBhcHBseSB0byBib3RoIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsXFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxufVxcblwiLFwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxcbi8vIC5tb2RhbCAgICAgICAgICAgLSBjb250YWluZXIgdG8gc2Nyb2xsIHdpdGhpblxcbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXFxuXFxuXFxuLm1vZGFsLW9wZW4ge1xcbiAgLy8gS2lsbCB0aGUgc2Nyb2xsIG9uIHRoZSBib2R5XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcblxcbiAgLm1vZGFsIHtcXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbn1cXG5cXG4vLyBDb250YWluZXIgdGhhdCB0aGUgbW9kYWwgc2Nyb2xscyB3aXRoaW5cXG4ubW9kYWwge1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XFxuICBkaXNwbGF5OiBub25lO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBoZWlnaHQ6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxcbiAgb3V0bGluZTogMDtcXG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXFxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcXG4gIC8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTc2OTVcXG59XFxuXFxuLy8gU2hlbGwgZGl2IHRvIHBvc2l0aW9uIHRoZSBtb2RhbCB3aXRoIGJvdHRvbSBwYWRkaW5nXFxuLm1vZGFsLWRpYWxvZyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogYXV0bztcXG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XFxuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xcblxcbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cXG4gIC5tb2RhbC5mYWRlICYge1xcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcXG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XFxuICB9XFxuICAubW9kYWwuc2hvdyAmIHtcXG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XFxuICB9XFxuXFxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxcbiAgLm1vZGFsLm1vZGFsLXN0YXRpYyAmIHtcXG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xcbiAgfVxcbn1cXG5cXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xcbiAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xcblxcbiAgLm1vZGFsLWNvbnRlbnQge1xcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgfVxcblxcbiAgLm1vZGFsLWJvZHkge1xcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xcbiAgfVxcbn1cXG5cXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcXG59XFxuXFxuLy8gQWN0dWFsIG1vZGFsXFxuLm1vZGFsLWNvbnRlbnQge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XFxuICB3aWR0aDogMTAwJTsgLy8gRW5zdXJlIGAubW9kYWwtY29udGVudGAgZXh0ZW5kcyB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgcGFyZW50IGAubW9kYWwtZGlhbG9nYFxcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXFxuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XFxuICBwb2ludGVyLWV2ZW50czogYXV0bztcXG4gIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1jb250ZW50LWJnO1xcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gIGJvcmRlcjogJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyk7XFxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcXG4gIG91dGxpbmU6IDA7XFxufVxcblxcbi8vIE1vZGFsIGJhY2tncm91bmRcXG4ubW9kYWwtYmFja2Ryb3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgbGVmdDogMDtcXG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XFxuICB3aWR0aDogMTAwdnc7XFxuICBoZWlnaHQ6IDEwMHZoO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xcblxcbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cXG4gICYuc2hvdyB7IG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OyB9XFxufVxcblxcbi8vIE1vZGFsIGhlYWRlclxcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xcbi5tb2RhbC1oZWFkZXIge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtc2hyaW5rOiAwO1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcXG4gIGJvcmRlci1ib3R0b206ICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yO1xcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XFxuXFxuICAuYnRuLWNsb3NlIHtcXG4gICAgcGFkZGluZzogKCRtb2RhbC1oZWFkZXItcGFkZGluZy15IC8gMikgKCRtb2RhbC1oZWFkZXItcGFkZGluZy14IC8gMik7XFxuICAgIG1hcmdpbjogKCRtb2RhbC1oZWFkZXItcGFkZGluZy15IC8gLTIpICgkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAvIC0yKSAoJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgLyAtMikgYXV0bztcXG4gIH1cXG59XFxuXFxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXFxuLm1vZGFsLXRpdGxlIHtcXG4gIG1hcmdpbi1ib3R0b206IDA7XFxuICBsaW5lLWhlaWdodDogJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0O1xcbn1cXG5cXG4vLyBNb2RhbCBib2R5XFxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxcbi5tb2RhbC1ib2R5IHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxcbiAgZmxleDogMSAxIGF1dG87XFxuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcXG59XFxuXFxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcXG4ubW9kYWwtZm9vdGVyIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBmbGV4LXdyYXA6IHdyYXA7XFxuICBmbGV4LXNocmluazogMDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcXG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nIC0gJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XFxuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcXG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xcblxcbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXFxuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcXG4gID4gKiB7XFxuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAvIDI7XFxuICB9XFxufVxcblxcbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IC05OTk5cHg7XFxuICB3aWR0aDogNTBweDtcXG4gIGhlaWdodDogNTBweDtcXG4gIG92ZXJmbG93OiBzY3JvbGw7XFxufVxcblxcbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcXG4gIC8vIEF1dG9tYXRpY2FsbHkgc2V0IG1vZGFsJ3Mgd2lkdGggZm9yIGxhcmdlciB2aWV3cG9ydHNcXG4gIC5tb2RhbC1kaWFsb2cge1xcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcXG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwIGF1dG87XFxuICB9XFxuXFxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcXG4gIH1cXG5cXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XFxuICB9XFxuXFxuICAubW9kYWwtY29udGVudCB7XFxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cCk7XFxuICB9XFxuXFxuICAubW9kYWwtc20geyBtYXgtd2lkdGg6ICRtb2RhbC1zbTsgfVxcbn1cXG5cXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XFxuICAubW9kYWwtbGcsXFxuICAubW9kYWwteGwge1xcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcXG4gIH1cXG59XFxuXFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cXG59XFxuXFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcXG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xcbiAgJHBvc3RmaXg6IGlmKCRpbmZpeCAhPSBcXFwiXFxcIiwgJGluZml4ICsgXFxcIi1kb3duXFxcIiwgXFxcIlxcXCIpO1xcblxcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XFxuICAgIC5tb2RhbC1mdWxsc2NyZWVuI3skcG9zdGZpeH0ge1xcbiAgICAgIHdpZHRoOiAxMDB2dztcXG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XFxuICAgICAgaGVpZ2h0OiAxMDAlO1xcbiAgICAgIG1hcmdpbjogMDtcXG5cXG4gICAgICAubW9kYWwtY29udGVudCB7XFxuICAgICAgICBoZWlnaHQ6IDEwMCU7XFxuICAgICAgICBib3JkZXI6IDA7XFxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xcbiAgICAgIH1cXG5cXG4gICAgICAubW9kYWwtaGVhZGVyIHtcXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XFxuICAgICAgfVxcblxcbiAgICAgIC5tb2RhbC1ib2R5IHtcXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XFxuICAgICAgfVxcblxcbiAgICAgIC5tb2RhbC1mb290ZXIge1xcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXCIsXCIvLyBCYXNlIGNsYXNzXFxuLnRvb2x0aXAge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogJHppbmRleC10b29sdGlwO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcXG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXFxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHRvb2x0aXAtZm9udC1zaXplKTtcXG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBvcGFjaXR5OiAwO1xcblxcbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxcblxcbiAgLnRvb2x0aXAtYXJyb3cge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XFxuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXRvb2x0aXAtdG9wIHtcXG4gIHBhZGRpbmc6ICR0b29sdGlwLWFycm93LWhlaWdodCAwO1xcblxcbiAgLnRvb2x0aXAtYXJyb3cge1xcbiAgICBib3R0b206IDA7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgdG9wOiAtMXB4O1xcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXRvb2x0aXAtZW5kIHtcXG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xcblxcbiAgLnRvb2x0aXAtYXJyb3cge1xcbiAgICBsZWZ0OiAwO1xcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHJpZ2h0OiAtMXB4O1xcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XFxuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtdG9vbHRpcC1ib3R0b20ge1xcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XFxuXFxuICAudG9vbHRpcC1hcnJvdyB7XFxuICAgIHRvcDogMDtcXG5cXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICBib3R0b206IC0xcHg7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtdG9vbHRpcC1zdGFydCB7XFxuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcXG5cXG4gIC50b29sdGlwLWFycm93IHtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIHdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XFxuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgbGVmdDogLTFweDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtdG9vbHRpcC1hdXRvIHtcXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwidG9wXFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcXG4gIH1cXG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cXFwicmlnaHRcXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtZW5kO1xcbiAgfVxcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJib3R0b21cXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xcbiAgfVxcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJsZWZ0XFxcIl0ge1xcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLXN0YXJ0O1xcbiAgfVxcbn1cXG5cXG4vLyBXcmFwcGVyIGZvciB0aGUgdG9vbHRpcCBjb250ZW50XFxuLnRvb2x0aXAtaW5uZXIge1xcbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XFxuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nLXkgJHRvb2x0aXAtcGFkZGluZy14O1xcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmc7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xcbn1cXG5cIixcIkBtaXhpbiByZXNldC10ZXh0IHtcXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcXG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXFxuICBmb250LXN0eWxlOiBub3JtYWw7XFxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcXG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XFxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XFxuICB3b3JkLWJyZWFrOiBub3JtYWw7XFxuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XFxuICBsaW5lLWJyZWFrOiBhdXRvO1xcbn1cXG5cIixcIi5wb3BvdmVyIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMDtcXG4gIGxlZnQ6IDAgI3tcXFwiLyogcnRsOmlnbm9yZSAqL1xcXCJ9O1xcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcXG4gIC8vIE91ciBwYXJlbnQgZWxlbWVudCBjYW4gYmUgYXJiaXRyYXJ5IHNpbmNlIHRvb2x0aXBzIGFyZSBieSBkZWZhdWx0IGluc2VydGVkIGFzIGEgc2libGluZyBvZiB0aGVpciB0YXJnZXQgZWxlbWVudC5cXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXFxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XFxuICBAaW5jbHVkZSBmb250LXNpemUoJHBvcG92ZXItZm9udC1zaXplKTtcXG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXFxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcG9wb3Zlci1iZztcXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XFxuICBib3JkZXI6ICRwb3BvdmVyLWJvcmRlci13aWR0aCBzb2xpZCAkcG9wb3Zlci1ib3JkZXItY29sb3I7XFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkcG9wb3Zlci1ib3gtc2hhZG93KTtcXG5cXG4gIC5wb3BvdmVyLWFycm93IHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcXG5cXG4gICAgJjo6YmVmb3JlLFxcbiAgICAmOjphZnRlciB7XFxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtcG9wb3Zlci10b3Age1xcbiAgPiAucG9wb3Zlci1hcnJvdyB7XFxuICAgIGJvdHRvbTogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcXG5cXG4gICAgJjo6YmVmb3JlIHtcXG4gICAgICBib3R0b206IDA7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcXG4gICAgfVxcblxcbiAgICAmOjphZnRlciB7XFxuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XFxuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcXG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcXG4gICAgfVxcbiAgfVxcbn1cXG5cXG4uYnMtcG9wb3Zlci1lbmQge1xcbiAgPiAucG9wb3Zlci1hcnJvdyB7XFxuICAgIGxlZnQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XFxuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XFxuICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgbGVmdDogMDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XFxuICAgIH1cXG5cXG4gICAgJjo6YWZ0ZXIge1xcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcXG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLmJzLXBvcG92ZXItYm90dG9tIHtcXG4gID4gLnBvcG92ZXItYXJyb3cge1xcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XFxuXFxuICAgICY6OmJlZm9yZSB7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XFxuICAgIH1cXG5cXG4gICAgJjo6YWZ0ZXIge1xcbiAgICAgIHRvcDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xcbiAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XFxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XFxuICAgIH1cXG4gIH1cXG5cXG4gIC8vIFRoaXMgd2lsbCByZW1vdmUgdGhlIHBvcG92ZXItaGVhZGVyJ3MgYm9yZGVyIGp1c3QgYmVsb3cgdGhlIGFycm93XFxuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAwO1xcbiAgICBsZWZ0OiA1MCU7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XFxuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xcbiAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkICRwb3BvdmVyLWhlYWRlci1iZztcXG4gIH1cXG59XFxuXFxuLmJzLXBvcG92ZXItc3RhcnQge1xcbiAgPiAucG9wb3Zlci1hcnJvdyB7XFxuICAgIHJpZ2h0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xcbiAgICB3aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xcblxcbiAgICAmOjpiZWZvcmUge1xcbiAgICAgIHJpZ2h0OiAwO1xcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xcbiAgICB9XFxuXFxuICAgICY6OmFmdGVyIHtcXG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XFxuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xcbiAgICB9XFxuICB9XFxufVxcblxcbi5icy1wb3BvdmVyLWF1dG8ge1xcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJ0b3BcXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xcbiAgfVxcbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVxcXCJyaWdodFxcXCJdIHtcXG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1lbmQ7XFxuICB9XFxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XFxcImJvdHRvbVxcXCJdIHtcXG4gICAgQGV4dGVuZCAuYnMtcG9wb3Zlci1ib3R0b207XFxuICB9XFxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XFxcImxlZnRcXFwiXSB7XFxuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItc3RhcnQ7XFxuICB9XFxufVxcblxcbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xcbi5wb3BvdmVyLWhlYWRlciB7XFxuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XFxuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XFxuICBjb2xvcjogJHBvcG92ZXItaGVhZGVyLWNvbG9yO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xcbiAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkIHNoYWRlLWNvbG9yKCRwb3BvdmVyLWhlYWRlci1iZywgMTAlKTtcXG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpO1xcblxcbiAgJjplbXB0eSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxuICB9XFxufVxcblxcbi5wb3BvdmVyLWJvZHkge1xcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XFxuICBjb2xvcjogJHBvcG92ZXItYm9keS1jb2xvcjtcXG59XFxuXCIsXCIvLyBOb3RlcyBvbiB0aGUgY2xhc3NlczpcXG4vL1xcbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXFxuLy8gICAgZXZlbiB3aGVuIHRoZWlyIHNjcm9sbCBhY3Rpb24gc3RhcnRlZCBvbiBhIGNhcm91c2VsLCBidXQgZm9yIGNvbXBhdGliaWxpdHkgKHdpdGggRmlyZWZveClcXG4vLyAgICB3ZSdyZSBwcmV2ZW50aW5nIGFsbCBhY3Rpb25zIGluc3RlYWRcXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLWVuZCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXFxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxcbi8vIDMuIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbSBpcyB0aGUgY3VycmVudCBzbGlkZS5cXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdGhlIGN1cnJlbnRcXG4vLyAgICBzbGlkZSBpbiBpdHMgaW4tdHJhbnNpdGlvbiBzdGF0ZS4gT25seSBvbmUgb2YgdGhlc2Ugb2NjdXJzIGF0IGEgdGltZS5cXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1lbmRcXG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cXG5cXG4uY2Fyb3VzZWwge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbn1cXG5cXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XFxuICB0b3VjaC1hY3Rpb246IHBhbi15O1xcbn1cXG5cXG4uY2Fyb3VzZWwtaW5uZXIge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgd2lkdGg6IDEwMCU7XFxuICBvdmVyZmxvdzogaGlkZGVuO1xcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcXG59XFxuXFxuLmNhcm91c2VsLWl0ZW0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgZGlzcGxheTogbm9uZTtcXG4gIGZsb2F0OiBsZWZ0O1xcbiAgd2lkdGg6IDEwMCU7XFxuICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XFxufVxcblxcbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcXG4uY2Fyb3VzZWwtaXRlbS1uZXh0LFxcbi5jYXJvdXNlbC1pdGVtLXByZXYge1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcblxcbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cXG4uY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1zdGFydCksXFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XFxufVxcblxcbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0IHtcXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XFxufVxcblxcbi8qIHJ0bDplbmQ6aWdub3JlICovXFxuXFxuXFxuLy9cXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcXG4vL1xcblxcbi5jYXJvdXNlbC1mYWRlIHtcXG4gIC5jYXJvdXNlbC1pdGVtIHtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcXG4gICAgdHJhbnNmb3JtOiBub25lO1xcbiAgfVxcblxcbiAgLmNhcm91c2VsLWl0ZW0uYWN0aXZlLFxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XFxuICAgIHotaW5kZXg6IDE7XFxuICAgIG9wYWNpdHk6IDE7XFxuICB9XFxuXFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQsXFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcXG4gICAgei1pbmRleDogMDtcXG4gICAgb3BhY2l0eTogMDtcXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcXG4gIH1cXG59XFxuXFxuXFxuLy9cXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcXG4vL1xcblxcbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDA7XFxuICBib3R0b206IDA7XFxuICB6LWluZGV4OiAxO1xcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIDIuIHZlcnRpY2FsbHkgY2VudGVyIGNvbnRlbnRzXFxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xcbiAgcGFkZGluZzogMDtcXG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG4gIGJhY2tncm91bmQ6IG5vbmU7XFxuICBib3JkZXI6IDA7XFxuICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5O1xcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcXG5cXG4gIC8vIEhvdmVyL2ZvY3VzIHN0YXRlXFxuICAmOmhvdmVyLFxcbiAgJjpmb2N1cyB7XFxuICAgIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgICBvdXRsaW5lOiAwO1xcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5O1xcbiAgfVxcbn1cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2IHtcXG4gIGxlZnQ6IDA7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XFxufVxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQge1xcbiAgcmlnaHQ6IDA7XFxuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgkYmxhY2ssIC4yNSksIHJnYmEoJGJsYWNrLCAuMDAxKSksIG51bGwpO1xcbn1cXG5cXG4vLyBJY29ucyBmb3Igd2l0aGluXFxuLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcXG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XFxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XFxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcXG59XFxuXFxuLyogcnRsOm9wdGlvbnM6IHtcXG4gIFxcXCJhdXRvUmVuYW1lXFxcIjogdHJ1ZSxcXG4gIFxcXCJzdHJpbmdNYXBcXFwiOlsge1xcbiAgICBcXFwibmFtZVxcXCIgICAgOiBcXFwicHJldi1uZXh0XFxcIixcXG4gICAgXFxcInNlYXJjaFxcXCIgIDogXFxcInByZXZcXFwiLFxcbiAgICBcXFwicmVwbGFjZVxcXCIgOiBcXFwibmV4dFxcXCJcXG4gIH0gXVxcbn0gKi9cXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmcpO1xcbn1cXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24ge1xcbiAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmcpO1xcbn1cXG5cXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwcy9jb250cm9sc1xcbi8vXFxuLy8gQWRkIGEgY29udGFpbmVyIChzdWNoIGFzIGEgbGlzdCkgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYW4gaXRlbSAoaWRlYWxseSBhIGZvY3VzYWJsZSBjb250cm9sLFxcbi8vIGxpa2UgYSBidXR0b24pIHdpdGggZGF0YS1icy10YXJnZXQgZm9yIGVhY2ggc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cXG5cXG4uY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAyO1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xcbiAgcGFkZGluZzogMDtcXG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxcbiAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XFxuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XFxuICBsaXN0LXN0eWxlOiBub25lO1xcblxcbiAgW2RhdGEtYnMtdGFyZ2V0XSB7XFxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xcbiAgICBmbGV4OiAwIDEgYXV0bztcXG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg7XFxuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XFxuICAgIHBhZGRpbmc6IDA7XFxuICAgIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XFxuICAgIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcXG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZztcXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcXG4gICAgYm9yZGVyOiAwO1xcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XFxuICAgIGJvcmRlci1ib3R0b206ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0IHNvbGlkIHRyYW5zcGFyZW50O1xcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk7XFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcXG4gIH1cXG5cXG4gIC5hY3RpdmUge1xcbiAgICBvcGFjaXR5OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5O1xcbiAgfVxcbn1cXG5cXG5cXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xcbi8vXFxuLy9cXG5cXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgLyAyO1xcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XFxuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XFxuICBwYWRkaW5nLXRvcDogJGNhcm91c2VsLWNhcHRpb24tcGFkZGluZy15O1xcbiAgcGFkZGluZy1ib3R0b206ICRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTtcXG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcXG59XFxuXFxuLy8gRGFyayBtb2RlIGNhcm91c2VsXFxuXFxuLmNhcm91c2VsLWRhcmsge1xcbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLFxcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcXG4gICAgZmlsdGVyOiAkY2Fyb3VzZWwtZGFyay1jb250cm9sLWljb24tZmlsdGVyO1xcbiAgfVxcblxcbiAgLmNhcm91c2VsLWluZGljYXRvcnMgW2RhdGEtYnMtdGFyZ2V0XSB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc7XFxuICB9XFxuXFxuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XFxuICAgIGNvbG9yOiAkY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yO1xcbiAgfVxcbn1cXG5cIixcIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxcbkBtaXhpbiBjbGVhcmZpeCgpIHtcXG4gICY6OmFmdGVyIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIGNsZWFyOiBib3RoO1xcbiAgICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIH1cXG59XFxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxcblwiLFwiLy9cXG4vLyBSb3RhdGluZyBib3JkZXJcXG4vL1xcblxcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpICN7XFxcIi8qIHJ0bDppZ25vcmUgKi9cXFwifTsgfVxcbn1cXG5cXG4uc3Bpbm5lci1ib3JkZXIge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQ7XFxuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XFxuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XFxuICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbiAgYW5pbWF0aW9uOiAkc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgbGluZWFyIGluZmluaXRlIHNwaW5uZXItYm9yZGVyO1xcbn1cXG5cXG4uc3Bpbm5lci1ib3JkZXItc20ge1xcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XFxuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcXG59XFxuXFxuLy9cXG4vLyBHcm93aW5nIGNpcmNsZVxcbi8vXFxuXFxuQGtleWZyYW1lcyBzcGlubmVyLWdyb3cge1xcbiAgMCUge1xcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xcbiAgfVxcbiAgNTAlIHtcXG4gICAgb3BhY2l0eTogMTtcXG4gICAgdHJhbnNmb3JtOiBub25lO1xcbiAgfVxcbn1cXG5cXG4uc3Bpbm5lci1ncm93IHtcXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aDtcXG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0O1xcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xcbiAgb3BhY2l0eTogMDtcXG4gIGFuaW1hdGlvbjogJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkIGxpbmVhciBpbmZpbml0ZSBzcGlubmVyLWdyb3c7XFxufVxcblxcbi5zcGlubmVyLWdyb3ctc20ge1xcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoLXNtO1xcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XFxufVxcblxcbkBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIHtcXG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XFxuICAgIC5zcGlubmVyLWJvcmRlcixcXG4gICAgLnNwaW5uZXItZ3JvdyB7XFxuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc3Bpbm5lci1hbmltYXRpb24tc3BlZWQgKiAyO1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XFxuICAubGluay0jeyRjb2xvcn0ge1xcbiAgICBjb2xvcjogJHZhbHVlO1xcblxcbiAgICBAaWYgJGxpbmstc2hhZGUtcGVyY2VudGFnZSAhPSAwIHtcXG4gICAgICAmOmhvdmVyLFxcbiAgICAgICY6Zm9jdXMge1xcbiAgICAgICAgY29sb3I6IGlmKGNvbG9yLWNvbnRyYXN0KCR2YWx1ZSkgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkdmFsdWUsICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UpLCB0aW50LWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkpO1xcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cIixcIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxcblxcbi5yYXRpbyB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICB3aWR0aDogMTAwJTtcXG5cXG4gICY6OmJlZm9yZSB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbyk7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgfVxcblxcbiAgPiAqIHtcXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgICB0b3A6IDA7XFxuICAgIGxlZnQ6IDA7XFxuICAgIHdpZHRoOiAxMDAlO1xcbiAgICBoZWlnaHQ6IDEwMCU7XFxuICB9XFxufVxcblxcbkBlYWNoICRrZXksICRyYXRpbyBpbiAkYXNwZWN0LXJhdGlvcyB7XFxuICAucmF0aW8tI3ska2V5fSB7XFxuICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xcbiAgfVxcbn1cXG5cIixcIi8vIFNob3J0aGFuZFxcblxcbi5maXhlZC10b3Age1xcbiAgcG9zaXRpb246IGZpeGVkO1xcbiAgdG9wOiAwO1xcbiAgcmlnaHQ6IDA7XFxuICBsZWZ0OiAwO1xcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcXG59XFxuXFxuLmZpeGVkLWJvdHRvbSB7XFxuICBwb3NpdGlvbjogZml4ZWQ7XFxuICByaWdodDogMDtcXG4gIGJvdHRvbTogMDtcXG4gIGxlZnQ6IDA7XFxuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xcbn1cXG5cXG4vLyBSZXNwb25zaXZlIHN0aWNreSB0b3BcXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG5cXG4gICAgLnN0aWNreSN7JGluZml4fS10b3Age1xcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XFxuICAgICAgdG9wOiAwO1xcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy9cXG4vLyBWaXN1YWxseSBoaWRkZW5cXG4vL1xcblxcbi52aXN1YWxseS1oaWRkZW4sXFxuLnZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGU6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcXG4gIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xcbn1cXG5cIixcIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxcblxcbi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xcbi8vXFxuLy8gU2VlOiBodHRwczovL3d3dy5hMTF5cHJvamVjdC5jb20vcG9zdHMvMjAxMy0wMS0xMS1ob3ctdG8taGlkZS1jb250ZW50L1xcbi8vIFNlZTogaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXFxuXFxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcXG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcXG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xcbn1cXG5cXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxcbi8vIChpLmUuIHdoZW4gZm9jdXMgaXMgd2l0aGluIHRoZSBlbGVtZW50L2NvbnRhaW5lciB0aGF0IHRoZSBjbGFzcyB3YXMgYXBwbGllZCB0bylcXG4vL1xcbi8vIFVzZWZ1bCBmb3IgXFxcIlNraXAgdG8gbWFpbiBjb250ZW50XFxcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXFxuXFxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XFxuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XFxuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gU3RyZXRjaGVkIGxpbmtcXG4vL1xcblxcbi5zdHJldGNoZWQtbGluayB7XFxuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICAgIHRvcDogMDtcXG4gICAgcmlnaHQ6IDA7XFxuICAgIGJvdHRvbTogMDtcXG4gICAgbGVmdDogMDtcXG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XFxuICAgIGNvbnRlbnQ6IFxcXCJcXFwiO1xcbiAgfVxcbn1cXG5cIixcIi8vXFxuLy8gVGV4dCB0cnVuY2F0aW9uXFxuLy9cXG5cXG4udGV4dC10cnVuY2F0ZSB7XFxuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XFxufVxcblwiLFwiLy8gVGV4dCB0cnVuY2F0ZVxcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcXG5cXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcXG4gIG92ZXJmbG93OiBoaWRkZW47XFxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XFxufVxcblwiLFwiLy8gVXRpbGl0eSBnZW5lcmF0b3JcXG4vLyBVc2VkIHRvIGdlbmVyYXRlIHV0aWxpdGllcyAmIHByaW50IHV0aWxpdGllc1xcbkBtaXhpbiBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsICRpcy1yZnMtbWVkaWEtcXVlcnk6IGZhbHNlKSB7XFxuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xcblxcbiAgLy8gSWYgdGhlIHZhbHVlcyBhcmUgYSBsaXN0IG9yIHN0cmluZywgY29udmVydCBpdCBpbnRvIGEgbWFwXFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcXFwic3RyaW5nXFxcIiBvciB0eXBlLW9mKG50aCgkdmFsdWVzLCAxKSkgIT0gXFxcImxpc3RcXFwiIHtcXG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xcbiAgfVxcblxcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xcbiAgICAkcHJvcGVydGllczogbWFwLWdldCgkdXRpbGl0eSwgcHJvcGVydHkpO1xcblxcbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcXG4gICAgQGlmIHR5cGUtb2YoJHByb3BlcnRpZXMpID09IFxcXCJzdHJpbmdcXFwiIHtcXG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XFxuICAgIH1cXG5cXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XFxuICAgICRwcm9wZXJ0eS1jbGFzczogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIGNsYXNzKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpLCBudGgoJHByb3BlcnRpZXMsIDEpKTtcXG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZigkcHJvcGVydHktY2xhc3MgPT0gbnVsbCwgXFxcIlxcXCIsICRwcm9wZXJ0eS1jbGFzcyk7XFxuXFxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xcbiAgICAkc3RhdGU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBzdGF0ZSksIG1hcC1nZXQoJHV0aWxpdHksIHN0YXRlKSwgKCkpO1xcblxcbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcXFwiXFxcIiBhbmQgc3RyLXNsaWNlKCRpbmZpeCwgMSwgMSkgPT0gXFxcIi1cXFwiLCBzdHItc2xpY2UoJGluZml4LCAyKSwgJGluZml4KTtcXG5cXG4gICAgLy8gRG9uJ3QgcHJlZml4IGlmIHZhbHVlIGtleSBpcyBudWxsIChlZy4gd2l0aCBzaGFkb3cgY2xhc3MpXFxuICAgICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcjogaWYoJGtleSwgaWYoJHByb3BlcnR5LWNsYXNzID09IFxcXCJcXFwiIGFuZCAkaW5maXggPT0gXFxcIlxcXCIsIFxcXCJcXFwiLCBcXFwiLVxcXCIpICsgJGtleSwgXFxcIlxcXCIpO1xcblxcbiAgICBAaWYgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSB7XFxuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxcbiAgICAgIEBpZiAkaXMtcmZzLW1lZGlhLXF1ZXJ5IHtcXG4gICAgICAgICR2YWw6IHJmcy12YWx1ZSgkdmFsdWUpO1xcblxcbiAgICAgICAgLy8gRG8gbm90IHJlbmRlciBhbnl0aGluZyBpZiBmbHVpZCBhbmQgbm9uIGZsdWlkIHZhbHVlcyBhcmUgdGhlIHNhbWVcXG4gICAgICAgICR2YWx1ZTogaWYoJHZhbCA9PSByZnMtZmx1aWQtdmFsdWUoJHZhbHVlKSwgbnVsbCwgJHZhbCk7XFxuICAgICAgfVxcbiAgICAgIEBlbHNlIHtcXG4gICAgICAgICR2YWx1ZTogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSk7XFxuICAgICAgfVxcbiAgICB9XFxuXFxuICAgICRpcy1ydGw6IG1hcC1nZXQoJHV0aWxpdHksIHJ0bCk7XFxuXFxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XFxuICAgICAgQGlmICRpcy1ydGwgPT0gZmFsc2Uge1xcbiAgICAgICAgLyogcnRsOmJlZ2luOnJlbW92ZSAqL1xcbiAgICAgIH1cXG4gICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9IHtcXG4gICAgICAgIEBlYWNoICRwcm9wZXJ0eSBpbiAkcHJvcGVydGllcyB7XFxuICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XFxuICAgICAgICB9XFxuICAgICAgfVxcblxcbiAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcXG4gICAgICAgIC4jeyRwcm9wZXJ0eS1jbGFzcyArICRpbmZpeCArICRwcm9wZXJ0eS1jbGFzcy1tb2RpZmllcn0tI3skcHNldWRvfTojeyRwc2V1ZG99IHtcXG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcXG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xcbiAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgfVxcbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcXG4gICAgICAgIC8qIHJ0bDplbmQ6cmVtb3ZlICovXFxuICAgICAgfVxcbiAgICB9XFxuICB9XFxufVxcblwiLFwiLy8gTG9vcCBvdmVyIGVhY2ggYnJlYWtwb2ludFxcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XFxuXFxuICAvLyBHZW5lcmF0ZSBtZWRpYSBxdWVyeSBpZiBuZWVkZWRcXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcXG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XFxuXFxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcXG4gICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XFxuICAgICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxcbiAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcXFwibWFwXFxcIiBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcXFwiXFxcIikge1xcbiAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4KTtcXG4gICAgICB9XFxuICAgIH1cXG4gIH1cXG59XFxuXFxuLy8gUkZTIHJlc2NhbGluZ1xcbkBtZWRpYSAobWluLXdpZHRoOiAkcmZzLW1xLXZhbHVlKSB7XFxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcXG5cXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcXG4gICAgICAvLyBMb29wIG92ZXIgZWFjaCB1dGlsaXR5IHByb3BlcnR5XFxuICAgICAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XFxuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XFxuICAgICAgICAvLyBPbmx5IHByb2NlZWQgaWYgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGFyZSBlbmFibGVkIG9yIGlmIGl0J3MgdGhlIGJhc2UgbWVkaWEgcXVlcnlcXG4gICAgICAgIEBpZiB0eXBlLW9mKCR1dGlsaXR5KSA9PSBcXFwibWFwXFxcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcXFwiXFxcIikge1xcbiAgICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgsIHRydWUpO1xcbiAgICAgICAgfVxcbiAgICAgIH1cXG4gICAgfVxcbiAgfVxcbn1cXG5cXG5cXG4vLyBQcmludCB1dGlsaXRpZXNcXG5AbWVkaWEgcHJpbnQge1xcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XFxuICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcXG4gICAgLy8gVGhlbiBjaGVjayBpZiB0aGUgdXRpbGl0eSBuZWVkcyBwcmludCBzdHlsZXNcXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFxcXCJtYXBcXFwiIGFuZCBtYXAtZ2V0KCR1dGlsaXR5LCBwcmludCkgPT0gdHJ1ZSB7XFxuICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgXFxcIi1wcmludFxcXCIpO1xcbiAgICB9XFxuICB9XFxufVxcblwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iLCIvLyBJbXBvcnRzXG5pbXBvcnQgX19fQ1NTX0xPQURFUl9BUElfSU1QT1JUX19fIGZyb20gXCIuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL2Nzcy1sb2FkZXIvYXBpLmpzXCI7XG52YXIgX19fQ1NTX0xPQURFUl9FWFBPUlRfX18gPSBfX19DU1NfTE9BREVSX0FQSV9JTVBPUlRfX18odHJ1ZSk7XG4vLyBNb2R1bGVcbl9fX0NTU19MT0FERVJfRVhQT1JUX19fLnB1c2goW21vZHVsZS5pZCwgXCJcXG4vKiBTVEFSVCBUT0dHTEUgTkVXIFBST0pFQ1QgTEFZT1VUICA9PT4gVE9HR0xFIFZJU0lCSUxJVFkgKi9cXG4gLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuYnV0dG9uLWdyb3VwICxcXG4gLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuUGFuZS5ob3Jpem9udGFsLlBhbmUyXFxuICAge1xcbiAgICBvcGFjaXR5OiAuMjtcXG4gIH1cXG4gIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLlNwbGl0UGFuZS5ob3Jpem9udGFsIHtcXG4gICAgbWFyZ2luLXRvcDogMTUwcHggIWltcG9ydGFudDtcXG4gIH1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5sb25nVVJMSW5wdXQge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luOiAzMHB4IDA7XFxuICAgIG1heC13aWR0aDogNTZ2dztcXG4gIH1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5sb25nVVJMQnV0dG9ucyB7XFxuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuc2xvZ2FuICB7XFxuICBjb2xvcjogd2hpdGU7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIHJpZ2h0OiAxdnc7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDh2aDtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuY3VzdG9tVVJMICxcXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5jdXN0b20tc2VsZWN0ICB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5uZXdQcm9qZWN0QnV0dG9ucyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG59XFxuLyogRU5EIFRPR0dMRSBORVcgUFJPSkVDVCBMQVlPVVQgKi9cXG5cXG5cXG5cXG5cXG5cXG4ucHJvamVjdE5hbWUtSW5wdXRGaWVsZC5wcm92aWRlUHJvak5hbWUsXFxuLlNhdmVCdXR0b24tZm9yLVByb2pOYW1lLnByb3ZpZGVQcm9qTmFtZSB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuY3JlYXRlTmV3UHJvamVjdCB7XFxuICAgICBtYXJnaW46IDAgMWVtO1xcbiAgfVxcblxcblxcbi5TYXZlQnV0dG9uLWZvci1Qcm9qTmFtZSB7XFxuICAgIHdpZHRoOiA1dncgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvb3RzdHJhcEJ1dHRvbiB7XFxuICAgIGZvbnQtc2l6ZTogNDZweDtcXG59XFxuXFxuXFxuZGl2LmN1c3RvbS1zZWxlY3QgPiBzdmcgIHtcXG4gICAgbWFyZ2luOiAwIC4yZW07XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuXFxuLmxvbmdVUkxJbnB1dC5mb3JtLWNvbnRyb2wuZm9ybS1pbnB1dCB7XFxuICAgIGNvbG9yOiBkYXJrc2xhdGVncmV5O1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcblxcbiBzcGFuLm5ld1Byb2plY3RCdXR0b25zID4gc3ZnIHtcXG4gICAgbWFyZ2luOiAwIC4yZW07XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuIHNwYW4ubmV3UHJvamVjdEJ1dHRvbnMgPiBzdmc6bnRoLWNoaWxkKDEpIHtcXG4gICAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xcbn1cXG5cXG5cXG5cXG5cXG5cXG5cXG5ib2R5IHtcXG4gICAgbWFyZ2luOiAwcHg7XFxuICAgIGZvbnQtZmFtaWx5OiBHYXJhbW9uZCxzZXJpZjtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbn1cXG4uUmVzaXplciB7XFxuICAgIHotaW5kZXg6IDEwMDAwO1xcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbn1cXG5cXG4uUmVzaXplcjpob3ZlciB7XFxuICAgIHRyYW5zaXRpb246IGFsbCAycyBlYXNlO1xcbiAgICBib3JkZXI6IDEwcHggc29saWQgIzMzMzY0MjtcXG59XFxuXFxuLlJlc2l6ZXIuaG9yaXpvbnRhbCB7XFxuICAgIGhlaWdodDogMTFweDtcXG4gICAgbWFyZ2luOiAtNXB4IDA7XFxuICAgIGN1cnNvcjogcm93LXJlc2l6ZTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGJvcmRlcjogOHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLnZlcnRpY2FsIHtcXG4gICAgbWFyZ2luOiAwIC01cHg7XFxuXFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTtcXG4gICAgYm9yZGVyOiA4cHggc29saWQgIzMzMzY0MjtcXG59XFxuXFxuLlJlc2l6ZXIuZGlzYWJsZWQge1xcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xcbn1cXG4uUmVzaXplci5kaXNhYmxlZDpob3ZlciB7XFxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQgIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZ3JlZW47XFxufVxcblxcblxcbi5hY2VfZm9sZC13aWRnZXQuYWNlX29wZW4ge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XFxufVxcblxcblxcblxcblxcbi5hY2VfZm9sZC13aWRnZXQgIHtcXG4gIGRpc3BsYXk6IGlubGluZTtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmFjZV9mb2xkLXdpZGdldDpob3ZlciB7XFxuICBjb2xvcjogI2MwMDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG59XFxuXFxuLmFjZV9mb2xkLXdpZGdldDpob3ZlcjphZnRlciB7XFxuICBiYWNrZ3JvdW5kOiAjMTExO1xcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuOCk7XFxuICBib3JkZXItcmFkaXVzOiAuNWVtO1xcbiAgYm90dG9tOiAxLjM1ZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBsZWZ0OiAxZW07XFxuICBwYWRkaW5nOiAuM2VtIDFlbTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRleHQtc2hhZG93OiAwIDFweCAwICMwMDA7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgei1pbmRleDogOTg7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXI6YmVmb3JlIHtcXG4gIGJvcmRlcjogc29saWQ7XFxuICBib3JkZXItY29sb3I6ICMxMTEgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXdpZHRoOiAuNGVtIC40ZW0gMCAuNGVtO1xcbiAgYm90dG9tOiAxZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbGVmdDogMmVtO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogOTk7XFxufVxcblxcbi5jdXN0b20tc2VsZWN0e1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcXG59XFxuLmZvcm0taW5wdXR7XFxuICAgIGhlaWdodDogMzZweDtcXG4gICAgbWFyZ2luOiAwIDEwcHg7XFxuICAgIGZvbnQtZmFtaWx5OiBHYXJhbW9uZCxcXG4gICAgc2VyaWY7XFxufVwiLCBcIlwiLHtcInZlcnNpb25cIjozLFwic291cmNlc1wiOltcIndlYnBhY2s6Ly9zdHlsZXMvZ2xvYmFscy5jc3NcIl0sXCJuYW1lc1wiOltdLFwibWFwcGluZ3NcIjpcIjtBQUNBLDJEQUEyRDtDQUMxRDs7O0lBR0csV0FBVztFQUNiO0VBQ0E7SUFDRSw0QkFBNEI7RUFDOUI7QUFDRjtJQUNJLGdDQUFnQztJQUNoQyxjQUFjO0lBQ2QsZUFBZTtFQUNqQjtBQUNGO0VBQ0UsdUJBQXVCO0FBQ3pCO0FBQ0E7RUFDRSxZQUFZO0VBQ1osZ0NBQWdDO0VBQ2hDLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsUUFBUTtBQUNWO0FBQ0E7O0VBRUUsYUFBYTtBQUNmO0FBQ0E7RUFDRSxnQ0FBZ0M7QUFDbEM7QUFDQSxrQ0FBa0M7Ozs7OztBQU1sQzs7RUFFRSw4QkFBOEI7RUFDOUI7O0VBRUE7S0FDRyxhQUFhO0VBQ2hCOzs7QUFHRjtJQUNJLHFCQUFxQjtBQUN6Qjs7QUFFQTtJQUNJLGVBQWU7QUFDbkI7OztBQUdBO0lBQ0ksY0FBYztJQUNkLGVBQWU7QUFDbkI7OztBQUdBO0lBQ0ksb0JBQW9CO0lBQ3BCLGtCQUFrQjtBQUN0Qjs7O0NBR0M7SUFDRyxjQUFjO0lBQ2QsZUFBZTtBQUNuQjs7Q0FFQztJQUNHLHFCQUFxQjtBQUN6Qjs7Ozs7OztBQU9BO0lBQ0ksV0FBVztJQUNYLDJCQUEyQjtJQUMzQixlQUFlO0FBQ25CO0FBQ0E7SUFDSSxjQUFjO0lBQ2Qsc0JBQXNCO0lBQ3RCLDRCQUE0QjtBQUNoQzs7QUFFQTtJQUNJLHVCQUF1QjtJQUN2QiwwQkFBMEI7QUFDOUI7O0FBRUE7SUFDSSxZQUFZO0lBQ1osY0FBYztJQUNkLGtCQUFrQjtJQUNsQixXQUFXO0lBQ1gseUJBQXlCO0FBQzdCOztBQUVBO0lBQ0ksY0FBYzs7SUFFZCxrQkFBa0I7SUFDbEIseUJBQXlCO0FBQzdCOztBQUVBO0lBQ0ksbUJBQW1CO0FBQ3ZCO0FBQ0E7SUFDSSx5QkFBeUI7QUFDN0I7O0FBRUE7SUFDSSx1QkFBdUI7QUFDM0I7OztBQUdBO0lBQ0kscUJBQXFCO0FBQ3pCOzs7OztBQUtBO0VBQ0UsZUFBZTtFQUNmLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsNkJBQTZCO0VBQzdCLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2QsV0FBVztFQUNYLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsU0FBUztFQUNULGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIseUJBQXlCO0VBQ3pCLG1CQUFtQjtFQUNuQixXQUFXO0FBQ2I7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLDJDQUEyQztFQUMzQyw4QkFBOEI7RUFDOUIsV0FBVztFQUNYLFdBQVc7RUFDWCxjQUFjO0VBQ2QsU0FBUztFQUNULGtCQUFrQjtFQUNsQixXQUFXO0FBQ2I7O0FBRUE7SUFDSSxhQUFhO0lBQ2IsdUJBQXVCO0FBQzNCO0FBQ0E7SUFDSSxZQUFZO0lBQ1osY0FBYztJQUNkO1NBQ0s7QUFDVFwiLFwic291cmNlc0NvbnRlbnRcIjpbXCJcXG4vKiBTVEFSVCBUT0dHTEUgTkVXIFBST0pFQ1QgTEFZT1VUICA9PT4gVE9HR0xFIFZJU0lCSUxJVFkgKi9cXG4gLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuYnV0dG9uLWdyb3VwICxcXG4gLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuUGFuZS5ob3Jpem9udGFsLlBhbmUyXFxuICAge1xcbiAgICBvcGFjaXR5OiAuMjtcXG4gIH1cXG4gIC50b2dnbGVWaWV3LmNyZWF0ZU5ld1Byb2plY3ROb3cgLlNwbGl0UGFuZS5ob3Jpem9udGFsIHtcXG4gICAgbWFyZ2luLXRvcDogMTUwcHggIWltcG9ydGFudDtcXG4gIH1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5sb25nVVJMSW5wdXQge1xcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gICAgbWFyZ2luOiAzMHB4IDA7XFxuICAgIG1heC13aWR0aDogNTZ2dztcXG4gIH1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5sb25nVVJMQnV0dG9ucyB7XFxuICB3aWR0aDogMTAwdncgIWltcG9ydGFudDtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuc2xvZ2FuICB7XFxuICBjb2xvcjogd2hpdGU7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG4gIHJpZ2h0OiAxdnc7XFxuICBwb3NpdGlvbjogYWJzb2x1dGU7XFxuICB0b3A6IDh2aDtcXG59XFxuLnRvZ2dsZVZpZXcuY3JlYXRlTmV3UHJvamVjdE5vdyAuY3VzdG9tVVJMICxcXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5jdXN0b20tc2VsZWN0ICB7XFxuICBkaXNwbGF5OiBub25lO1xcbn1cXG4udG9nZ2xlVmlldy5jcmVhdGVOZXdQcm9qZWN0Tm93IC5uZXdQcm9qZWN0QnV0dG9ucyB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcXG59XFxuLyogRU5EIFRPR0dMRSBORVcgUFJPSkVDVCBMQVlPVVQgKi9cXG5cXG5cXG5cXG5cXG5cXG4ucHJvamVjdE5hbWUtSW5wdXRGaWVsZC5wcm92aWRlUHJvak5hbWUsXFxuLlNhdmVCdXR0b24tZm9yLVByb2pOYW1lLnByb3ZpZGVQcm9qTmFtZSB7XFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XFxuICB9XFxuXFxuICAuY3JlYXRlTmV3UHJvamVjdCB7XFxuICAgICBtYXJnaW46IDAgMWVtO1xcbiAgfVxcblxcblxcbi5TYXZlQnV0dG9uLWZvci1Qcm9qTmFtZSB7XFxuICAgIHdpZHRoOiA1dncgIWltcG9ydGFudDtcXG59XFxuXFxuLmJvb3RzdHJhcEJ1dHRvbiB7XFxuICAgIGZvbnQtc2l6ZTogNDZweDtcXG59XFxuXFxuXFxuZGl2LmN1c3RvbS1zZWxlY3QgPiBzdmcgIHtcXG4gICAgbWFyZ2luOiAwIC4yZW07XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuXFxuLmxvbmdVUkxJbnB1dC5mb3JtLWNvbnRyb2wuZm9ybS1pbnB1dCB7XFxuICAgIGNvbG9yOiBkYXJrc2xhdGVncmV5O1xcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XFxufVxcblxcblxcbiBzcGFuLm5ld1Byb2plY3RCdXR0b25zID4gc3ZnIHtcXG4gICAgbWFyZ2luOiAwIC4yZW07XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuXFxuIHNwYW4ubmV3UHJvamVjdEJ1dHRvbnMgPiBzdmc6bnRoLWNoaWxkKDEpIHtcXG4gICAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xcbn1cXG5cXG5cXG5cXG5cXG5cXG5cXG5ib2R5IHtcXG4gICAgbWFyZ2luOiAwcHg7XFxuICAgIGZvbnQtZmFtaWx5OiBHYXJhbW9uZCxzZXJpZjtcXG4gICAgZm9udC1zaXplOiAxMnB4O1xcbn1cXG4uUmVzaXplciB7XFxuICAgIHotaW5kZXg6IDEwMDAwO1xcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xcbn1cXG5cXG4uUmVzaXplcjpob3ZlciB7XFxuICAgIHRyYW5zaXRpb246IGFsbCAycyBlYXNlO1xcbiAgICBib3JkZXI6IDEwcHggc29saWQgIzMzMzY0MjtcXG59XFxuXFxuLlJlc2l6ZXIuaG9yaXpvbnRhbCB7XFxuICAgIGhlaWdodDogMTFweDtcXG4gICAgbWFyZ2luOiAtNXB4IDA7XFxuICAgIGN1cnNvcjogcm93LXJlc2l6ZTtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIGJvcmRlcjogOHB4IHNvbGlkICMzMzM2NDI7XFxufVxcblxcbi5SZXNpemVyLnZlcnRpY2FsIHtcXG4gICAgbWFyZ2luOiAwIC01cHg7XFxuXFxuICAgIGN1cnNvcjogY29sLXJlc2l6ZTtcXG4gICAgYm9yZGVyOiA4cHggc29saWQgIzMzMzY0MjtcXG59XFxuXFxuLlJlc2l6ZXIuZGlzYWJsZWQge1xcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xcbn1cXG4uUmVzaXplci5kaXNhYmxlZDpob3ZlciB7XFxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQgIHtcXG4gICAgYm9yZGVyOiAxcHggc29saWQgZ3JlZW47XFxufVxcblxcblxcbi5hY2VfZm9sZC13aWRnZXQuYWNlX29wZW4ge1xcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XFxufVxcblxcblxcblxcblxcbi5hY2VfZm9sZC13aWRnZXQgIHtcXG4gIGRpc3BsYXk6IGlubGluZTtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG59XFxuXFxuLmFjZV9mb2xkLXdpZGdldDpob3ZlciB7XFxuICBjb2xvcjogI2MwMDtcXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcXG59XFxuXFxuLmFjZV9mb2xkLXdpZGdldDpob3ZlcjphZnRlciB7XFxuICBiYWNrZ3JvdW5kOiAjMTExO1xcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuOCk7XFxuICBib3JkZXItcmFkaXVzOiAuNWVtO1xcbiAgYm90dG9tOiAxLjM1ZW07XFxuICBjb2xvcjogI2ZmZjtcXG4gIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBsZWZ0OiAxZW07XFxuICBwYWRkaW5nOiAuM2VtIDFlbTtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRleHQtc2hhZG93OiAwIDFweCAwICMwMDA7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgei1pbmRleDogOTg7XFxufVxcblxcbi5hY2VfZm9sZC13aWRnZXQ6aG92ZXI6YmVmb3JlIHtcXG4gIGJvcmRlcjogc29saWQ7XFxuICBib3JkZXItY29sb3I6ICMxMTEgdHJhbnNwYXJlbnQ7XFxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpIHRyYW5zcGFyZW50O1xcbiAgYm9yZGVyLXdpZHRoOiAuNGVtIC40ZW0gMCAuNGVtO1xcbiAgYm90dG9tOiAxZW07XFxuICBjb250ZW50OiBcXFwiXFxcIjtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgbGVmdDogMmVtO1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbiAgei1pbmRleDogOTk7XFxufVxcblxcbi5jdXN0b20tc2VsZWN0e1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcXG59XFxuLmZvcm0taW5wdXR7XFxuICAgIGhlaWdodDogMzZweDtcXG4gICAgbWFyZ2luOiAwIDEwcHg7XFxuICAgIGZvbnQtZmFtaWx5OiBHYXJhbW9uZCxcXG4gICAgc2VyaWY7XFxufVwiXSxcInNvdXJjZVJvb3RcIjpcIlwifV0pO1xuLy8gRXhwb3J0c1xuZXhwb3J0IGRlZmF1bHQgX19fQ1NTX0xPQURFUl9FWFBPUlRfX187XG4iLCJtb2R1bGUuZXhwb3J0cyA9XG4vKioqKioqLyAoZnVuY3Rpb24oKSB7IC8vIHdlYnBhY2tCb290c3RyYXBcbi8qKioqKiovIFx0dmFyIF9fd2VicGFja19tb2R1bGVzX18gPSAoe1xuXG4vKioqLyA5MzE6XG4vKioqLyAoZnVuY3Rpb24obW9kdWxlKSB7XG5cbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24ob3JpZ2luYWxNb2R1bGUpIHtcblx0aWYgKCFvcmlnaW5hbE1vZHVsZS53ZWJwYWNrUG9seWZpbGwpIHtcblx0XHR2YXIgbW9kdWxlID0gT2JqZWN0LmNyZWF0ZShvcmlnaW5hbE1vZHVsZSk7XG5cdFx0Ly8gbW9kdWxlLnBhcmVudCA9IHVuZGVmaW5lZCBieSBkZWZhdWx0XG5cdFx0aWYgKCFtb2R1bGUuY2hpbGRyZW4pIG1vZHVsZS5jaGlsZHJlbiA9IFtdO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwibG9hZGVkXCIsIHtcblx0XHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRyZXR1cm4gbW9kdWxlLmw7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG1vZHVsZSwgXCJpZFwiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuXHRcdFx0Z2V0OiBmdW5jdGlvbigpIHtcblx0XHRcdFx0cmV0dXJuIG1vZHVsZS5pO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShtb2R1bGUsIFwiZXhwb3J0c1wiLCB7XG5cdFx0XHRlbnVtZXJhYmxlOiB0cnVlXG5cdFx0fSk7XG5cdFx0bW9kdWxlLndlYnBhY2tQb2x5ZmlsbCA9IDE7XG5cdH1cblx0cmV0dXJuIG1vZHVsZTtcbn07XG5cblxuLyoqKi8gfSlcblxuLyoqKioqKi8gXHR9KTtcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0dmFyIF9fd2VicGFja19tb2R1bGVfY2FjaGVfXyA9IHt9O1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbi8qKioqKiovIFx0ZnVuY3Rpb24gX19uY2N3cGNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuLyoqKioqKi8gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuLyoqKioqKi8gXHRcdGlmKF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0pIHtcbi8qKioqKiovIFx0XHRcdHJldHVybiBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdLmV4cG9ydHM7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4vKioqKioqLyBcdFx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG4vKioqKioqLyBcdFx0XHQvLyBubyBtb2R1bGUuaWQgbmVlZGVkXG4vKioqKioqLyBcdFx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuLyoqKioqKi8gXHRcdFx0ZXhwb3J0czoge31cbi8qKioqKiovIFx0XHR9O1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbi8qKioqKiovIFx0XHR2YXIgdGhyZXcgPSB0cnVlO1xuLyoqKioqKi8gXHRcdHRyeSB7XG4vKioqKioqLyBcdFx0XHRfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXShtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX25jY3dwY2tfcmVxdWlyZV9fKTtcbi8qKioqKiovIFx0XHRcdHRocmV3ID0gZmFsc2U7XG4vKioqKioqLyBcdFx0fSBmaW5hbGx5IHtcbi8qKioqKiovIFx0XHRcdGlmKHRocmV3KSBkZWxldGUgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdFxuLyoqKioqKi8gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4vKioqKioqLyBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuLyoqKioqKi8gXHR9XG4vKioqKioqLyBcdFxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKiovIFx0Lyogd2VicGFjay9ydW50aW1lL2NvbXBhdCAqL1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0X19uY2N3cGNrX3JlcXVpcmVfXy5hYiA9IF9fZGlybmFtZSArIFwiL1wiOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8vIG1vZHVsZSBleHBvcnRzIG11c3QgYmUgcmV0dXJuZWQgZnJvbSBydW50aW1lIHNvIGVudHJ5IGlubGluaW5nIGlzIGRpc2FibGVkXG4vKioqKioqLyBcdC8vIHN0YXJ0dXBcbi8qKioqKiovIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4vKioqKioqLyBcdHJldHVybiBfX25jY3dwY2tfcmVxdWlyZV9fKDkzMSk7XG4vKioqKioqLyB9KSgpXG47IiwibW9kdWxlLmV4cG9ydHMgPVxuLyoqKioqKi8gKGZ1bmN0aW9uKCkgeyAvLyB3ZWJwYWNrQm9vdHN0cmFwXG4vKioqKioqLyBcdHZhciBfX3dlYnBhY2tfbW9kdWxlc19fID0gKHtcblxuLyoqKi8gODgwOlxuLyoqKi8gKGZ1bmN0aW9uKG1vZHVsZSkge1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuXHRpZiAoIW1vZHVsZS53ZWJwYWNrUG9seWZpbGwpIHtcblx0XHRtb2R1bGUuZGVwcmVjYXRlID0gZnVuY3Rpb24oKSB7fTtcblx0XHRtb2R1bGUucGF0aHMgPSBbXTtcblx0XHQvLyBtb2R1bGUucGFyZW50ID0gdW5kZWZpbmVkIGJ5IGRlZmF1bHRcblx0XHRpZiAoIW1vZHVsZS5jaGlsZHJlbikgbW9kdWxlLmNoaWxkcmVuID0gW107XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KG1vZHVsZSwgXCJsb2FkZWRcIiwge1xuXHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcblx0XHRcdGdldDogZnVuY3Rpb24oKSB7XG5cdFx0XHRcdHJldHVybiBtb2R1bGUubDtcblx0XHRcdH1cblx0XHR9KTtcblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkobW9kdWxlLCBcImlkXCIsIHtcblx0XHRcdGVudW1lcmFibGU6IHRydWUsXG5cdFx0XHRnZXQ6IGZ1bmN0aW9uKCkge1xuXHRcdFx0XHRyZXR1cm4gbW9kdWxlLmk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0bW9kdWxlLndlYnBhY2tQb2x5ZmlsbCA9IDE7XG5cdH1cblx0cmV0dXJuIG1vZHVsZTtcbn07XG5cblxuLyoqKi8gfSlcblxuLyoqKioqKi8gXHR9KTtcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbi8qKioqKiovIFx0dmFyIF9fd2VicGFja19tb2R1bGVfY2FjaGVfXyA9IHt9O1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbi8qKioqKiovIFx0ZnVuY3Rpb24gX19uY2N3cGNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuLyoqKioqKi8gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuLyoqKioqKi8gXHRcdGlmKF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0pIHtcbi8qKioqKiovIFx0XHRcdHJldHVybiBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdLmV4cG9ydHM7XG4vKioqKioqLyBcdFx0fVxuLyoqKioqKi8gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4vKioqKioqLyBcdFx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG4vKioqKioqLyBcdFx0XHQvLyBubyBtb2R1bGUuaWQgbmVlZGVkXG4vKioqKioqLyBcdFx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuLyoqKioqKi8gXHRcdFx0ZXhwb3J0czoge31cbi8qKioqKiovIFx0XHR9O1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbi8qKioqKiovIFx0XHR2YXIgdGhyZXcgPSB0cnVlO1xuLyoqKioqKi8gXHRcdHRyeSB7XG4vKioqKioqLyBcdFx0XHRfX3dlYnBhY2tfbW9kdWxlc19fW21vZHVsZUlkXShtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX25jY3dwY2tfcmVxdWlyZV9fKTtcbi8qKioqKiovIFx0XHRcdHRocmV3ID0gZmFsc2U7XG4vKioqKioqLyBcdFx0fSBmaW5hbGx5IHtcbi8qKioqKiovIFx0XHRcdGlmKHRocmV3KSBkZWxldGUgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcbi8qKioqKiovIFx0XHR9XG4vKioqKioqLyBcdFxuLyoqKioqKi8gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4vKioqKioqLyBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuLyoqKioqKi8gXHR9XG4vKioqKioqLyBcdFxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKiovIFx0Lyogd2VicGFjay9ydW50aW1lL2NvbXBhdCAqL1xuLyoqKioqKi8gXHRcbi8qKioqKiovIFx0X19uY2N3cGNrX3JlcXVpcmVfXy5hYiA9IF9fZGlybmFtZSArIFwiL1wiOy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqLyBcdC8vIG1vZHVsZSBleHBvcnRzIG11c3QgYmUgcmV0dXJuZWQgZnJvbSBydW50aW1lIHNvIGVudHJ5IGlubGluaW5nIGlzIGRpc2FibGVkXG4vKioqKioqLyBcdC8vIHN0YXJ0dXBcbi8qKioqKiovIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4vKioqKioqLyBcdHJldHVybiBfX25jY3dwY2tfcmVxdWlyZV9fKDg4MCk7XG4vKioqKioqLyB9KSgpXG47IiwiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuXG5leHBvcnQgY29uc3QgQW1wU3RhdGVDb250ZXh0OiBSZWFjdC5Db250ZXh0PGFueT4gPSBSZWFjdC5jcmVhdGVDb250ZXh0KHt9KVxuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICBBbXBTdGF0ZUNvbnRleHQuZGlzcGxheU5hbWUgPSAnQW1wU3RhdGVDb250ZXh0J1xufVxuIiwiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQW1wU3RhdGVDb250ZXh0IH0gZnJvbSAnLi9hbXAtY29udGV4dCdcblxuZXhwb3J0IGZ1bmN0aW9uIGlzSW5BbXBNb2RlKHtcbiAgYW1wRmlyc3QgPSBmYWxzZSxcbiAgaHlicmlkID0gZmFsc2UsXG4gIGhhc1F1ZXJ5ID0gZmFsc2UsXG59ID0ge30pOiBib29sZWFuIHtcbiAgcmV0dXJuIGFtcEZpcnN0IHx8IChoeWJyaWQgJiYgaGFzUXVlcnkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VBbXAoKTogYm9vbGVhbiB7XG4gIC8vIERvbid0IGFzc2lnbiB0aGUgY29udGV4dCB2YWx1ZSB0byBhIHZhcmlhYmxlIHRvIHNhdmUgYnl0ZXNcbiAgcmV0dXJuIGlzSW5BbXBNb2RlKFJlYWN0LnVzZUNvbnRleHQoQW1wU3RhdGVDb250ZXh0KSlcbn1cbiIsImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcblxuZXhwb3J0IGNvbnN0IEhlYWRNYW5hZ2VyQ29udGV4dDogUmVhY3QuQ29udGV4dDx7XG4gIHVwZGF0ZUhlYWQ/OiAoc3RhdGU6IGFueSkgPT4gdm9pZFxuICBtb3VudGVkSW5zdGFuY2VzPzogYW55XG4gIHVwZGF0ZVNjcmlwdHM/OiAoc3RhdGU6IGFueSkgPT4gdm9pZFxuICBzY3JpcHRzPzogYW55XG59PiA9IFJlYWN0LmNyZWF0ZUNvbnRleHQoe30pXG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gIEhlYWRNYW5hZ2VyQ29udGV4dC5kaXNwbGF5TmFtZSA9ICdIZWFkTWFuYWdlckNvbnRleHQnXG59XG4iLCJpbXBvcnQgUmVhY3QsIHsgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IEVmZmVjdCBmcm9tICcuL3NpZGUtZWZmZWN0J1xuaW1wb3J0IHsgQW1wU3RhdGVDb250ZXh0IH0gZnJvbSAnLi9hbXAtY29udGV4dCdcbmltcG9ydCB7IEhlYWRNYW5hZ2VyQ29udGV4dCB9IGZyb20gJy4vaGVhZC1tYW5hZ2VyLWNvbnRleHQnXG5pbXBvcnQgeyBpc0luQW1wTW9kZSB9IGZyb20gJy4vYW1wJ1xuXG50eXBlIFdpdGhJbkFtcE1vZGUgPSB7XG4gIGluQW1wTW9kZT86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRIZWFkKGluQW1wTW9kZSA9IGZhbHNlKTogSlNYLkVsZW1lbnRbXSB7XG4gIGNvbnN0IGhlYWQgPSBbPG1ldGEgY2hhclNldD1cInV0Zi04XCIgLz5dXG4gIGlmICghaW5BbXBNb2RlKSB7XG4gICAgaGVhZC5wdXNoKDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGhcIiAvPilcbiAgfVxuICByZXR1cm4gaGVhZFxufVxuXG5mdW5jdGlvbiBvbmx5UmVhY3RFbGVtZW50KFxuICBsaXN0OiBBcnJheTxSZWFjdC5SZWFjdEVsZW1lbnQ8YW55Pj4sXG4gIGNoaWxkOiBSZWFjdC5SZWFjdENoaWxkXG4pOiBBcnJheTxSZWFjdC5SZWFjdEVsZW1lbnQ8YW55Pj4ge1xuICAvLyBSZWFjdCBjaGlsZHJlbiBjYW4gYmUgXCJzdHJpbmdcIiBvciBcIm51bWJlclwiIGluIHRoaXMgY2FzZSB3ZSBpZ25vcmUgdGhlbSBmb3IgYmFja3dhcmRzIGNvbXBhdFxuICBpZiAodHlwZW9mIGNoaWxkID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgY2hpbGQgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIGxpc3RcbiAgfVxuICAvLyBBZGRzIHN1cHBvcnQgZm9yIFJlYWN0LkZyYWdtZW50XG4gIGlmIChjaGlsZC50eXBlID09PSBSZWFjdC5GcmFnbWVudCkge1xuICAgIHJldHVybiBsaXN0LmNvbmNhdChcbiAgICAgIFJlYWN0LkNoaWxkcmVuLnRvQXJyYXkoY2hpbGQucHJvcHMuY2hpbGRyZW4pLnJlZHVjZShcbiAgICAgICAgKFxuICAgICAgICAgIGZyYWdtZW50TGlzdDogQXJyYXk8UmVhY3QuUmVhY3RFbGVtZW50PGFueT4+LFxuICAgICAgICAgIGZyYWdtZW50Q2hpbGQ6IFJlYWN0LlJlYWN0Q2hpbGRcbiAgICAgICAgKTogQXJyYXk8UmVhY3QuUmVhY3RFbGVtZW50PGFueT4+ID0+IHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0eXBlb2YgZnJhZ21lbnRDaGlsZCA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgICAgIHR5cGVvZiBmcmFnbWVudENoaWxkID09PSAnbnVtYmVyJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIGZyYWdtZW50TGlzdFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gZnJhZ21lbnRMaXN0LmNvbmNhdChmcmFnbWVudENoaWxkKVxuICAgICAgICB9LFxuICAgICAgICBbXVxuICAgICAgKVxuICAgIClcbiAgfVxuICByZXR1cm4gbGlzdC5jb25jYXQoY2hpbGQpXG59XG5cbmNvbnN0IE1FVEFUWVBFUyA9IFsnbmFtZScsICdodHRwRXF1aXYnLCAnY2hhclNldCcsICdpdGVtUHJvcCddXG5cbi8qXG4gcmV0dXJucyBhIGZ1bmN0aW9uIGZvciBmaWx0ZXJpbmcgaGVhZCBjaGlsZCBlbGVtZW50c1xuIHdoaWNoIHNob3VsZG4ndCBiZSBkdXBsaWNhdGVkLCBsaWtlIDx0aXRsZS8+XG4gQWxzbyBhZGRzIHN1cHBvcnQgZm9yIGRlZHVwbGljYXRlZCBga2V5YCBwcm9wZXJ0aWVzXG4qL1xuZnVuY3Rpb24gdW5pcXVlKCkge1xuICBjb25zdCBrZXlzID0gbmV3IFNldCgpXG4gIGNvbnN0IHRhZ3MgPSBuZXcgU2V0KClcbiAgY29uc3QgbWV0YVR5cGVzID0gbmV3IFNldCgpXG4gIGNvbnN0IG1ldGFDYXRlZ29yaWVzOiB7IFttZXRhdHlwZTogc3RyaW5nXTogU2V0PHN0cmluZz4gfSA9IHt9XG5cbiAgcmV0dXJuIChoOiBSZWFjdC5SZWFjdEVsZW1lbnQ8YW55PikgPT4ge1xuICAgIGxldCBpc1VuaXF1ZSA9IHRydWVcbiAgICBsZXQgaGFzS2V5ID0gZmFsc2VcblxuICAgIGlmIChoLmtleSAmJiB0eXBlb2YgaC5rZXkgIT09ICdudW1iZXInICYmIGgua2V5LmluZGV4T2YoJyQnKSA+IDApIHtcbiAgICAgIGhhc0tleSA9IHRydWVcbiAgICAgIGNvbnN0IGtleSA9IGgua2V5LnNsaWNlKGgua2V5LmluZGV4T2YoJyQnKSArIDEpXG4gICAgICBpZiAoa2V5cy5oYXMoa2V5KSkge1xuICAgICAgICBpc1VuaXF1ZSA9IGZhbHNlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBrZXlzLmFkZChrZXkpXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlZmF1bHQtY2FzZVxuICAgIHN3aXRjaCAoaC50eXBlKSB7XG4gICAgICBjYXNlICd0aXRsZSc6XG4gICAgICBjYXNlICdiYXNlJzpcbiAgICAgICAgaWYgKHRhZ3MuaGFzKGgudHlwZSkpIHtcbiAgICAgICAgICBpc1VuaXF1ZSA9IGZhbHNlXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGFncy5hZGQoaC50eXBlKVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdtZXRhJzpcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IE1FVEFUWVBFUy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICAgICAgICAgIGNvbnN0IG1ldGF0eXBlID0gTUVUQVRZUEVTW2ldXG4gICAgICAgICAgaWYgKCFoLnByb3BzLmhhc093blByb3BlcnR5KG1ldGF0eXBlKSkgY29udGludWVcblxuICAgICAgICAgIGlmIChtZXRhdHlwZSA9PT0gJ2NoYXJTZXQnKSB7XG4gICAgICAgICAgICBpZiAobWV0YVR5cGVzLmhhcyhtZXRhdHlwZSkpIHtcbiAgICAgICAgICAgICAgaXNVbmlxdWUgPSBmYWxzZVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgbWV0YVR5cGVzLmFkZChtZXRhdHlwZSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgY2F0ZWdvcnkgPSBoLnByb3BzW21ldGF0eXBlXVxuICAgICAgICAgICAgY29uc3QgY2F0ZWdvcmllcyA9IG1ldGFDYXRlZ29yaWVzW21ldGF0eXBlXSB8fCBuZXcgU2V0KClcbiAgICAgICAgICAgIGlmICgobWV0YXR5cGUgIT09ICduYW1lJyB8fCAhaGFzS2V5KSAmJiBjYXRlZ29yaWVzLmhhcyhjYXRlZ29yeSkpIHtcbiAgICAgICAgICAgICAgaXNVbmlxdWUgPSBmYWxzZVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgY2F0ZWdvcmllcy5hZGQoY2F0ZWdvcnkpXG4gICAgICAgICAgICAgIG1ldGFDYXRlZ29yaWVzW21ldGF0eXBlXSA9IGNhdGVnb3JpZXNcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNVbmlxdWVcbiAgfVxufVxuXG4vKipcbiAqXG4gKiBAcGFyYW0gaGVhZEVsZW1lbnRzIExpc3Qgb2YgbXVsdGlwbGUgPEhlYWQ+IGluc3RhbmNlc1xuICovXG5mdW5jdGlvbiByZWR1Y2VDb21wb25lbnRzKFxuICBoZWFkRWxlbWVudHM6IEFycmF5PFJlYWN0LlJlYWN0RWxlbWVudDxhbnk+PixcbiAgcHJvcHM6IFdpdGhJbkFtcE1vZGVcbikge1xuICByZXR1cm4gaGVhZEVsZW1lbnRzXG4gICAgLnJlZHVjZShcbiAgICAgIChsaXN0OiBSZWFjdC5SZWFjdENoaWxkW10sIGhlYWRFbGVtZW50OiBSZWFjdC5SZWFjdEVsZW1lbnQ8YW55PikgPT4ge1xuICAgICAgICBjb25zdCBoZWFkRWxlbWVudENoaWxkcmVuID0gUmVhY3QuQ2hpbGRyZW4udG9BcnJheShcbiAgICAgICAgICBoZWFkRWxlbWVudC5wcm9wcy5jaGlsZHJlblxuICAgICAgICApXG4gICAgICAgIHJldHVybiBsaXN0LmNvbmNhdChoZWFkRWxlbWVudENoaWxkcmVuKVxuICAgICAgfSxcbiAgICAgIFtdXG4gICAgKVxuICAgIC5yZWR1Y2Uob25seVJlYWN0RWxlbWVudCwgW10pXG4gICAgLnJldmVyc2UoKVxuICAgIC5jb25jYXQoZGVmYXVsdEhlYWQocHJvcHMuaW5BbXBNb2RlKSlcbiAgICAuZmlsdGVyKHVuaXF1ZSgpKVxuICAgIC5yZXZlcnNlKClcbiAgICAubWFwKChjOiBSZWFjdC5SZWFjdEVsZW1lbnQ8YW55PiwgaTogbnVtYmVyKSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSBjLmtleSB8fCBpXG4gICAgICBpZiAoXG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAnZGV2ZWxvcG1lbnQnICYmXG4gICAgICAgIHByb2Nlc3MuZW52Ll9fTkVYVF9PUFRJTUlaRV9GT05UUyAmJlxuICAgICAgICAhcHJvcHMuaW5BbXBNb2RlXG4gICAgICApIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGMudHlwZSA9PT0gJ2xpbmsnICYmXG4gICAgICAgICAgYy5wcm9wc1snaHJlZiddICYmXG4gICAgICAgICAgLy8gVE9ETyhwcmF0ZWVrYmhAKTogUmVwbGFjZSB0aGlzIHdpdGggY29uc3QgZnJvbSBgY29uc3RhbnRzYCB3aGVuIHRoZSB0cmVlIHNoYWtpbmcgd29ya3MuXG4gICAgICAgICAgWydodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzcyddLnNvbWUoKHVybCkgPT5cbiAgICAgICAgICAgIGMucHJvcHNbJ2hyZWYnXS5zdGFydHNXaXRoKHVybClcbiAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IG5ld1Byb3BzID0geyAuLi4oYy5wcm9wcyB8fCB7fSkgfVxuICAgICAgICAgIG5ld1Byb3BzWydkYXRhLWhyZWYnXSA9IG5ld1Byb3BzWydocmVmJ11cbiAgICAgICAgICBuZXdQcm9wc1snaHJlZiddID0gdW5kZWZpbmVkXG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChjLCBuZXdQcm9wcylcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIFJlYWN0LmNsb25lRWxlbWVudChjLCB7IGtleSB9KVxuICAgIH0pXG59XG5cbi8qKlxuICogVGhpcyBjb21wb25lbnQgaW5qZWN0cyBlbGVtZW50cyB0byBgPGhlYWQ+YCBvZiB5b3VyIHBhZ2UuXG4gKiBUbyBhdm9pZCBkdXBsaWNhdGVkIGB0YWdzYCBpbiBgPGhlYWQ+YCB5b3UgY2FuIHVzZSB0aGUgYGtleWAgcHJvcGVydHksIHdoaWNoIHdpbGwgbWFrZSBzdXJlIGV2ZXJ5IHRhZyBpcyBvbmx5IHJlbmRlcmVkIG9uY2UuXG4gKi9cbmZ1bmN0aW9uIEhlYWQoeyBjaGlsZHJlbiB9OiB7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfSkge1xuICBjb25zdCBhbXBTdGF0ZSA9IHVzZUNvbnRleHQoQW1wU3RhdGVDb250ZXh0KVxuICBjb25zdCBoZWFkTWFuYWdlciA9IHVzZUNvbnRleHQoSGVhZE1hbmFnZXJDb250ZXh0KVxuICByZXR1cm4gKFxuICAgIDxFZmZlY3RcbiAgICAgIHJlZHVjZUNvbXBvbmVudHNUb1N0YXRlPXtyZWR1Y2VDb21wb25lbnRzfVxuICAgICAgaGVhZE1hbmFnZXI9e2hlYWRNYW5hZ2VyfVxuICAgICAgaW5BbXBNb2RlPXtpc0luQW1wTW9kZShhbXBTdGF0ZSl9XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvRWZmZWN0PlxuICApXG59XG5cbi8vIFRPRE86IFJlbW92ZSBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlXG5IZWFkLnJld2luZCA9ICgpID0+IHt9XG5cbmV4cG9ydCBkZWZhdWx0IEhlYWRcbiIsImV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVMb2NhbGVQYXRoKFxuICBwYXRobmFtZTogc3RyaW5nLFxuICBsb2NhbGVzPzogc3RyaW5nW11cbik6IHtcbiAgZGV0ZWN0ZWRMb2NhbGU/OiBzdHJpbmdcbiAgcGF0aG5hbWU6IHN0cmluZ1xufSB7XG4gIGxldCBkZXRlY3RlZExvY2FsZTogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIC8vIGZpcnN0IGl0ZW0gd2lsbCBiZSBlbXB0eSBzdHJpbmcgZnJvbSBzcGxpdHRpbmcgYXQgZmlyc3QgY2hhclxuICBjb25zdCBwYXRobmFtZVBhcnRzID0gcGF0aG5hbWUuc3BsaXQoJy8nKVxuXG4gIDsobG9jYWxlcyB8fCBbXSkuc29tZSgobG9jYWxlKSA9PiB7XG4gICAgaWYgKHBhdGhuYW1lUGFydHNbMV0udG9Mb3dlckNhc2UoKSA9PT0gbG9jYWxlLnRvTG93ZXJDYXNlKCkpIHtcbiAgICAgIGRldGVjdGVkTG9jYWxlID0gbG9jYWxlXG4gICAgICBwYXRobmFtZVBhcnRzLnNwbGljZSgxLCAxKVxuICAgICAgcGF0aG5hbWUgPSBwYXRobmFtZVBhcnRzLmpvaW4oJy8nKSB8fCAnLydcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9KVxuXG4gIHJldHVybiB7XG4gICAgcGF0aG5hbWUsXG4gICAgZGV0ZWN0ZWRMb2NhbGUsXG4gIH1cbn1cbiIsIi8qXG5NSVQgTGljZW5zZVxuXG5Db3B5cmlnaHQgKGMpIEphc29uIE1pbGxlciAoaHR0cHM6Ly9qYXNvbmZvcm1hdC5jb20vKVxuXG5QZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuXG5UaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cblxuVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuXG4qL1xuXG4vLyBUaGlzIGZpbGUgaXMgYmFzZWQgb24gaHR0cHM6Ly9naXRodWIuY29tL2RldmVsb3BpdC9taXR0L2Jsb2IvdjEuMS4zL3NyYy9pbmRleC5qc1xuLy8gSXQncyBiZWVuIGVkaXRlZCBmb3IgdGhlIG5lZWRzIG9mIHRoaXMgc2NyaXB0XG4vLyBTZWUgdGhlIExJQ0VOU0UgYXQgdGhlIHRvcCBvZiB0aGUgZmlsZVxuXG50eXBlIEhhbmRsZXIgPSAoLi4uZXZ0czogYW55W10pID0+IHZvaWRcblxuZXhwb3J0IHR5cGUgTWl0dEVtaXR0ZXIgPSB7XG4gIG9uKHR5cGU6IHN0cmluZywgaGFuZGxlcjogSGFuZGxlcik6IHZvaWRcbiAgb2ZmKHR5cGU6IHN0cmluZywgaGFuZGxlcjogSGFuZGxlcik6IHZvaWRcbiAgZW1pdCh0eXBlOiBzdHJpbmcsIC4uLmV2dHM6IGFueVtdKTogdm9pZFxufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtaXR0KCk6IE1pdHRFbWl0dGVyIHtcbiAgY29uc3QgYWxsOiB7IFtzOiBzdHJpbmddOiBIYW5kbGVyW10gfSA9IE9iamVjdC5jcmVhdGUobnVsbClcblxuICByZXR1cm4ge1xuICAgIG9uKHR5cGU6IHN0cmluZywgaGFuZGxlcjogSGFuZGxlcikge1xuICAgICAgOyhhbGxbdHlwZV0gfHwgKGFsbFt0eXBlXSA9IFtdKSkucHVzaChoYW5kbGVyKVxuICAgIH0sXG5cbiAgICBvZmYodHlwZTogc3RyaW5nLCBoYW5kbGVyOiBIYW5kbGVyKSB7XG4gICAgICBpZiAoYWxsW3R5cGVdKSB7XG4gICAgICAgIGFsbFt0eXBlXS5zcGxpY2UoYWxsW3R5cGVdLmluZGV4T2YoaGFuZGxlcikgPj4+IDAsIDEpXG4gICAgICB9XG4gICAgfSxcblxuICAgIGVtaXQodHlwZTogc3RyaW5nLCAuLi5ldnRzOiBhbnlbXSkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGFycmF5LWNhbGxiYWNrLXJldHVyblxuICAgICAgOyhhbGxbdHlwZV0gfHwgW10pLnNsaWNlKCkubWFwKChoYW5kbGVyOiBIYW5kbGVyKSA9PiB7XG4gICAgICAgIGhhbmRsZXIoLi4uZXZ0cylcbiAgICAgIH0pXG4gICAgfSxcbiAgfVxufVxuIiwiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgTmV4dFJvdXRlciB9IGZyb20gJy4vcm91dGVyL3JvdXRlcidcblxuZXhwb3J0IGNvbnN0IFJvdXRlckNvbnRleHQgPSBSZWFjdC5jcmVhdGVDb250ZXh0PE5leHRSb3V0ZXI+KG51bGwgYXMgYW55KVxuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICBSb3V0ZXJDb250ZXh0LmRpc3BsYXlOYW1lID0gJ1JvdXRlckNvbnRleHQnXG59XG4iLCIvKiBnbG9iYWwgX19ORVhUX0RBVEFfXyAqL1xuLy8gdHNsaW50OmRpc2FibGU6bm8tY29uc29sZVxuaW1wb3J0IHsgUGFyc2VkVXJsUXVlcnkgfSBmcm9tICdxdWVyeXN0cmluZydcbmltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFVybE9iamVjdCB9IGZyb20gJ3VybCdcbmltcG9ydCB7XG4gIG5vcm1hbGl6ZVBhdGhUcmFpbGluZ1NsYXNoLFxuICByZW1vdmVQYXRoVHJhaWxpbmdTbGFzaCxcbn0gZnJvbSAnLi4vLi4vLi4vY2xpZW50L25vcm1hbGl6ZS10cmFpbGluZy1zbGFzaCdcbmltcG9ydCB7IEdvb2RQYWdlQ2FjaGUsIFN0eWxlU2hlZXRUdXBsZSB9IGZyb20gJy4uLy4uLy4uL2NsaWVudC9wYWdlLWxvYWRlcidcbmltcG9ydCB7XG4gIGdldENsaWVudEJ1aWxkTWFuaWZlc3QsXG4gIGlzQXNzZXRFcnJvcixcbiAgbWFya0Fzc2V0RXJyb3IsXG59IGZyb20gJy4uLy4uLy4uL2NsaWVudC9yb3V0ZS1sb2FkZXInXG5pbXBvcnQgeyBEb21haW5Mb2NhbGVzIH0gZnJvbSAnLi4vLi4vc2VydmVyL2NvbmZpZydcbmltcG9ydCB7IGRlbm9ybWFsaXplUGFnZVBhdGggfSBmcm9tICcuLi8uLi9zZXJ2ZXIvZGVub3JtYWxpemUtcGFnZS1wYXRoJ1xuaW1wb3J0IHsgbm9ybWFsaXplTG9jYWxlUGF0aCB9IGZyb20gJy4uL2kxOG4vbm9ybWFsaXplLWxvY2FsZS1wYXRoJ1xuaW1wb3J0IG1pdHQsIHsgTWl0dEVtaXR0ZXIgfSBmcm9tICcuLi9taXR0J1xuaW1wb3J0IHtcbiAgQXBwQ29udGV4dFR5cGUsXG4gIGZvcm1hdFdpdGhWYWxpZGF0aW9uLFxuICBnZXRMb2NhdGlvbk9yaWdpbixcbiAgZ2V0VVJMLFxuICBsb2FkR2V0SW5pdGlhbFByb3BzLFxuICBOZXh0UGFnZUNvbnRleHQsXG4gIFNULFxuICBORVhUX0RBVEEsXG59IGZyb20gJy4uL3V0aWxzJ1xuaW1wb3J0IHsgaXNEeW5hbWljUm91dGUgfSBmcm9tICcuL3V0aWxzL2lzLWR5bmFtaWMnXG5pbXBvcnQgeyBwYXJzZVJlbGF0aXZlVXJsIH0gZnJvbSAnLi91dGlscy9wYXJzZS1yZWxhdGl2ZS11cmwnXG5pbXBvcnQgeyBzZWFyY2hQYXJhbXNUb1VybFF1ZXJ5IH0gZnJvbSAnLi91dGlscy9xdWVyeXN0cmluZydcbmltcG9ydCByZXNvbHZlUmV3cml0ZXMgZnJvbSAnLi91dGlscy9yZXNvbHZlLXJld3JpdGVzJ1xuaW1wb3J0IHsgZ2V0Um91dGVNYXRjaGVyIH0gZnJvbSAnLi91dGlscy9yb3V0ZS1tYXRjaGVyJ1xuaW1wb3J0IHsgZ2V0Um91dGVSZWdleCB9IGZyb20gJy4vdXRpbHMvcm91dGUtcmVnZXgnXG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIFdpbmRvdyB7XG4gICAgLyogcHJvZCAqL1xuICAgIF9fTkVYVF9EQVRBX186IE5FWFRfREFUQVxuICB9XG59XG5cbmludGVyZmFjZSBSb3V0ZVByb3BlcnRpZXMge1xuICBzaGFsbG93OiBib29sZWFuXG59XG5cbmludGVyZmFjZSBUcmFuc2l0aW9uT3B0aW9ucyB7XG4gIHNoYWxsb3c/OiBib29sZWFuXG4gIGxvY2FsZT86IHN0cmluZyB8IGZhbHNlXG4gIHNjcm9sbD86IGJvb2xlYW5cbn1cblxuaW50ZXJmYWNlIE5leHRIaXN0b3J5U3RhdGUge1xuICB1cmw6IHN0cmluZ1xuICBhczogc3RyaW5nXG4gIG9wdGlvbnM6IFRyYW5zaXRpb25PcHRpb25zXG59XG5cbnR5cGUgSGlzdG9yeVN0YXRlID1cbiAgfCBudWxsXG4gIHwgeyBfX046IGZhbHNlIH1cbiAgfCAoeyBfX046IHRydWU7IGlkeDogbnVtYmVyIH0gJiBOZXh0SGlzdG9yeVN0YXRlKVxuXG5sZXQgZGV0ZWN0RG9tYWluTG9jYWxlOiB0eXBlb2YgaW1wb3J0KCcuLi9pMThuL2RldGVjdC1kb21haW4tbG9jYWxlJykuZGV0ZWN0RG9tYWluTG9jYWxlXG5cbmlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gIGRldGVjdERvbWFpbkxvY2FsZSA9IHJlcXVpcmUoJy4uL2kxOG4vZGV0ZWN0LWRvbWFpbi1sb2NhbGUnKVxuICAgIC5kZXRlY3REb21haW5Mb2NhbGVcbn1cblxuY29uc3QgYmFzZVBhdGggPSAocHJvY2Vzcy5lbnYuX19ORVhUX1JPVVRFUl9CQVNFUEFUSCBhcyBzdHJpbmcpIHx8ICcnXG5cbmZ1bmN0aW9uIGJ1aWxkQ2FuY2VsbGF0aW9uRXJyb3IoKSB7XG4gIHJldHVybiBPYmplY3QuYXNzaWduKG5ldyBFcnJvcignUm91dGUgQ2FuY2VsbGVkJyksIHtcbiAgICBjYW5jZWxsZWQ6IHRydWUsXG4gIH0pXG59XG5cbmZ1bmN0aW9uIGFkZFBhdGhQcmVmaXgocGF0aDogc3RyaW5nLCBwcmVmaXg/OiBzdHJpbmcpIHtcbiAgcmV0dXJuIHByZWZpeCAmJiBwYXRoLnN0YXJ0c1dpdGgoJy8nKVxuICAgID8gcGF0aCA9PT0gJy8nXG4gICAgICA/IG5vcm1hbGl6ZVBhdGhUcmFpbGluZ1NsYXNoKHByZWZpeClcbiAgICAgIDogYCR7cHJlZml4fSR7cGF0aE5vUXVlcnlIYXNoKHBhdGgpID09PSAnLycgPyBwYXRoLnN1YnN0cmluZygxKSA6IHBhdGh9YFxuICAgIDogcGF0aFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RG9tYWluTG9jYWxlKFxuICBwYXRoOiBzdHJpbmcsXG4gIGxvY2FsZT86IHN0cmluZyB8IGZhbHNlLFxuICBsb2NhbGVzPzogc3RyaW5nW10sXG4gIGRvbWFpbkxvY2FsZXM/OiBEb21haW5Mb2NhbGVzXG4pIHtcbiAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICBsb2NhbGUgPSBsb2NhbGUgfHwgbm9ybWFsaXplTG9jYWxlUGF0aChwYXRoLCBsb2NhbGVzKS5kZXRlY3RlZExvY2FsZVxuXG4gICAgY29uc3QgZGV0ZWN0ZWREb21haW4gPSBkZXRlY3REb21haW5Mb2NhbGUoZG9tYWluTG9jYWxlcywgdW5kZWZpbmVkLCBsb2NhbGUpXG5cbiAgICBpZiAoZGV0ZWN0ZWREb21haW4pIHtcbiAgICAgIHJldHVybiBgaHR0cCR7ZGV0ZWN0ZWREb21haW4uaHR0cCA/ICcnIDogJ3MnfTovLyR7ZGV0ZWN0ZWREb21haW4uZG9tYWlufSR7XG4gICAgICAgIGJhc2VQYXRoIHx8ICcnXG4gICAgICB9JHtsb2NhbGUgPT09IGRldGVjdGVkRG9tYWluLmRlZmF1bHRMb2NhbGUgPyAnJyA6IGAvJHtsb2NhbGV9YH0ke3BhdGh9YFxuICAgIH1cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHJldHVybiBmYWxzZVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkTG9jYWxlKFxuICBwYXRoOiBzdHJpbmcsXG4gIGxvY2FsZT86IHN0cmluZyB8IGZhbHNlLFxuICBkZWZhdWx0TG9jYWxlPzogc3RyaW5nXG4pIHtcbiAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICByZXR1cm4gbG9jYWxlICYmXG4gICAgICBsb2NhbGUgIT09IGRlZmF1bHRMb2NhbGUgJiZcbiAgICAgICFwYXRoLnN0YXJ0c1dpdGgoJy8nICsgbG9jYWxlICsgJy8nKSAmJlxuICAgICAgcGF0aCAhPT0gJy8nICsgbG9jYWxlXG4gICAgICA/IGFkZFBhdGhQcmVmaXgocGF0aCwgJy8nICsgbG9jYWxlKVxuICAgICAgOiBwYXRoXG4gIH1cbiAgcmV0dXJuIHBhdGhcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlbExvY2FsZShwYXRoOiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZykge1xuICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICAgIHJldHVybiBsb2NhbGUgJiZcbiAgICAgIChwYXRoLnN0YXJ0c1dpdGgoJy8nICsgbG9jYWxlICsgJy8nKSB8fCBwYXRoID09PSAnLycgKyBsb2NhbGUpXG4gICAgICA/IHBhdGguc3Vic3RyKGxvY2FsZS5sZW5ndGggKyAxKSB8fCAnLydcbiAgICAgIDogcGF0aFxuICB9XG4gIHJldHVybiBwYXRoXG59XG5cbmZ1bmN0aW9uIHBhdGhOb1F1ZXJ5SGFzaChwYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgcXVlcnlJbmRleCA9IHBhdGguaW5kZXhPZignPycpXG4gIGNvbnN0IGhhc2hJbmRleCA9IHBhdGguaW5kZXhPZignIycpXG5cbiAgaWYgKHF1ZXJ5SW5kZXggPiAtMSB8fCBoYXNoSW5kZXggPiAtMSkge1xuICAgIHBhdGggPSBwYXRoLnN1YnN0cmluZygwLCBxdWVyeUluZGV4ID4gLTEgPyBxdWVyeUluZGV4IDogaGFzaEluZGV4KVxuICB9XG4gIHJldHVybiBwYXRoXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNCYXNlUGF0aChwYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcGF0aCA9IHBhdGhOb1F1ZXJ5SGFzaChwYXRoKVxuICByZXR1cm4gcGF0aCA9PT0gYmFzZVBhdGggfHwgcGF0aC5zdGFydHNXaXRoKGJhc2VQYXRoICsgJy8nKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkQmFzZVBhdGgocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgLy8gd2Ugb25seSBhZGQgdGhlIGJhc2VwYXRoIG9uIHJlbGF0aXZlIHVybHNcbiAgcmV0dXJuIGFkZFBhdGhQcmVmaXgocGF0aCwgYmFzZVBhdGgpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWxCYXNlUGF0aChwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBwYXRoID0gcGF0aC5zbGljZShiYXNlUGF0aC5sZW5ndGgpXG4gIGlmICghcGF0aC5zdGFydHNXaXRoKCcvJykpIHBhdGggPSBgLyR7cGF0aH1gXG4gIHJldHVybiBwYXRoXG59XG5cbi8qKlxuICogRGV0ZWN0cyB3aGV0aGVyIGEgZ2l2ZW4gdXJsIGlzIHJvdXRhYmxlIGJ5IHRoZSBOZXh0LmpzIHJvdXRlciAoYnJvd3NlciBvbmx5KS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTG9jYWxVUkwodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgLy8gcHJldmVudCBhIGh5ZHJhdGlvbiBtaXNtYXRjaCBvbiBocmVmIGZvciB1cmwgd2l0aCBhbmNob3IgcmVmc1xuICBpZiAodXJsLnN0YXJ0c1dpdGgoJy8nKSB8fCB1cmwuc3RhcnRzV2l0aCgnIycpKSByZXR1cm4gdHJ1ZVxuICB0cnkge1xuICAgIC8vIGFic29sdXRlIHVybHMgY2FuIGJlIGxvY2FsIGlmIHRoZXkgYXJlIG9uIHRoZSBzYW1lIG9yaWdpblxuICAgIGNvbnN0IGxvY2F0aW9uT3JpZ2luID0gZ2V0TG9jYXRpb25PcmlnaW4oKVxuICAgIGNvbnN0IHJlc29sdmVkID0gbmV3IFVSTCh1cmwsIGxvY2F0aW9uT3JpZ2luKVxuICAgIHJldHVybiByZXNvbHZlZC5vcmlnaW4gPT09IGxvY2F0aW9uT3JpZ2luICYmIGhhc0Jhc2VQYXRoKHJlc29sdmVkLnBhdGhuYW1lKVxuICB9IGNhdGNoIChfKSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxudHlwZSBVcmwgPSBVcmxPYmplY3QgfCBzdHJpbmdcblxuZXhwb3J0IGZ1bmN0aW9uIGludGVycG9sYXRlQXMoXG4gIHJvdXRlOiBzdHJpbmcsXG4gIGFzUGF0aG5hbWU6IHN0cmluZyxcbiAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4pIHtcbiAgbGV0IGludGVycG9sYXRlZFJvdXRlID0gJydcblxuICBjb25zdCBkeW5hbWljUmVnZXggPSBnZXRSb3V0ZVJlZ2V4KHJvdXRlKVxuICBjb25zdCBkeW5hbWljR3JvdXBzID0gZHluYW1pY1JlZ2V4Lmdyb3Vwc1xuICBjb25zdCBkeW5hbWljTWF0Y2hlcyA9XG4gICAgLy8gVHJ5IHRvIG1hdGNoIHRoZSBkeW5hbWljIHJvdXRlIGFnYWluc3QgdGhlIGFzUGF0aFxuICAgIChhc1BhdGhuYW1lICE9PSByb3V0ZSA/IGdldFJvdXRlTWF0Y2hlcihkeW5hbWljUmVnZXgpKGFzUGF0aG5hbWUpIDogJycpIHx8XG4gICAgLy8gRmFsbCBiYWNrIHRvIHJlYWRpbmcgdGhlIHZhbHVlcyBmcm9tIHRoZSBocmVmXG4gICAgLy8gVE9ETzogc2hvdWxkIHRoaXMgdGFrZSBwcmlvcml0eTsgYWxzbyBuZWVkIHRvIGNoYW5nZSBpbiB0aGUgcm91dGVyLlxuICAgIHF1ZXJ5XG5cbiAgaW50ZXJwb2xhdGVkUm91dGUgPSByb3V0ZVxuICBjb25zdCBwYXJhbXMgPSBPYmplY3Qua2V5cyhkeW5hbWljR3JvdXBzKVxuXG4gIGlmIChcbiAgICAhcGFyYW1zLmV2ZXJ5KChwYXJhbSkgPT4ge1xuICAgICAgbGV0IHZhbHVlID0gZHluYW1pY01hdGNoZXNbcGFyYW1dIHx8ICcnXG4gICAgICBjb25zdCB7IHJlcGVhdCwgb3B0aW9uYWwgfSA9IGR5bmFtaWNHcm91cHNbcGFyYW1dXG5cbiAgICAgIC8vIHN1cHBvcnQgc2luZ2xlLWxldmVsIGNhdGNoLWFsbFxuICAgICAgLy8gVE9ETzogbW9yZSByb2J1c3QgaGFuZGxpbmcgZm9yIHVzZXItZXJyb3IgKHBhc3NpbmcgYC9gKVxuICAgICAgbGV0IHJlcGxhY2VkID0gYFske3JlcGVhdCA/ICcuLi4nIDogJyd9JHtwYXJhbX1dYFxuICAgICAgaWYgKG9wdGlvbmFsKSB7XG4gICAgICAgIHJlcGxhY2VkID0gYCR7IXZhbHVlID8gJy8nIDogJyd9WyR7cmVwbGFjZWR9XWBcbiAgICAgIH1cbiAgICAgIGlmIChyZXBlYXQgJiYgIUFycmF5LmlzQXJyYXkodmFsdWUpKSB2YWx1ZSA9IFt2YWx1ZV1cblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgKG9wdGlvbmFsIHx8IHBhcmFtIGluIGR5bmFtaWNNYXRjaGVzKSAmJlxuICAgICAgICAvLyBJbnRlcnBvbGF0ZSBncm91cCBpbnRvIGRhdGEgVVJMIGlmIHByZXNlbnRcbiAgICAgICAgKGludGVycG9sYXRlZFJvdXRlID1cbiAgICAgICAgICBpbnRlcnBvbGF0ZWRSb3V0ZSEucmVwbGFjZShcbiAgICAgICAgICAgIHJlcGxhY2VkLFxuICAgICAgICAgICAgcmVwZWF0XG4gICAgICAgICAgICAgID8gKHZhbHVlIGFzIHN0cmluZ1tdKVxuICAgICAgICAgICAgICAgICAgLm1hcChcbiAgICAgICAgICAgICAgICAgICAgLy8gdGhlc2UgdmFsdWVzIHNob3VsZCBiZSBmdWxseSBlbmNvZGVkIGluc3RlYWQgb2YganVzdFxuICAgICAgICAgICAgICAgICAgICAvLyBwYXRoIGRlbGltaXRlciBlc2NhcGVkIHNpbmNlIHRoZXkgYXJlIGJlaW5nIGluc2VydGVkXG4gICAgICAgICAgICAgICAgICAgIC8vIGludG8gdGhlIFVSTCBhbmQgd2UgZXhwZWN0IFVSTCBlbmNvZGVkIHNlZ21lbnRzXG4gICAgICAgICAgICAgICAgICAgIC8vIHdoZW4gcGFyc2luZyBkeW5hbWljIHJvdXRlIHBhcmFtc1xuICAgICAgICAgICAgICAgICAgICAoc2VnbWVudCkgPT4gZW5jb2RlVVJJQ29tcG9uZW50KHNlZ21lbnQpXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAuam9pbignLycpXG4gICAgICAgICAgICAgIDogZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlIGFzIHN0cmluZylcbiAgICAgICAgICApIHx8ICcvJylcbiAgICAgIClcbiAgICB9KVxuICApIHtcbiAgICBpbnRlcnBvbGF0ZWRSb3V0ZSA9ICcnIC8vIGRpZCBub3Qgc2F0aXNmeSBhbGwgcmVxdWlyZW1lbnRzXG5cbiAgICAvLyBuLmIuIFdlIGlnbm9yZSB0aGlzIGVycm9yIGJlY2F1c2Ugd2UgaGFuZGxlIHdhcm5pbmcgZm9yIHRoaXMgY2FzZSBpblxuICAgIC8vIGRldmVsb3BtZW50IGluIHRoZSBgPExpbms+YCBjb21wb25lbnQgZGlyZWN0bHkuXG4gIH1cbiAgcmV0dXJuIHtcbiAgICBwYXJhbXMsXG4gICAgcmVzdWx0OiBpbnRlcnBvbGF0ZWRSb3V0ZSxcbiAgfVxufVxuXG5mdW5jdGlvbiBvbWl0UGFybXNGcm9tUXVlcnkocXVlcnk6IFBhcnNlZFVybFF1ZXJ5LCBwYXJhbXM6IHN0cmluZ1tdKSB7XG4gIGNvbnN0IGZpbHRlcmVkUXVlcnk6IFBhcnNlZFVybFF1ZXJ5ID0ge31cblxuICBPYmplY3Qua2V5cyhxdWVyeSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgaWYgKCFwYXJhbXMuaW5jbHVkZXMoa2V5KSkge1xuICAgICAgZmlsdGVyZWRRdWVyeVtrZXldID0gcXVlcnlba2V5XVxuICAgIH1cbiAgfSlcbiAgcmV0dXJuIGZpbHRlcmVkUXVlcnlcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIGdpdmVuIGh5cGVybGluayB3aXRoIGEgY2VydGFpbiByb3V0ZXIgc3RhdGUgKGJhc2VQYXRoIG5vdCBpbmNsdWRlZCkuXG4gKiBQcmVzZXJ2ZXMgYWJzb2x1dGUgdXJscy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVIcmVmKFxuICBjdXJyZW50UGF0aDogc3RyaW5nLFxuICBocmVmOiBVcmwsXG4gIHJlc29sdmVBcz86IGJvb2xlYW5cbik6IHN0cmluZyB7XG4gIC8vIHdlIHVzZSBhIGR1bW15IGJhc2UgdXJsIGZvciByZWxhdGl2ZSB1cmxzXG4gIGNvbnN0IGJhc2UgPSBuZXcgVVJMKGN1cnJlbnRQYXRoLCAnaHR0cDovL24nKVxuICBjb25zdCB1cmxBc1N0cmluZyA9XG4gICAgdHlwZW9mIGhyZWYgPT09ICdzdHJpbmcnID8gaHJlZiA6IGZvcm1hdFdpdGhWYWxpZGF0aW9uKGhyZWYpXG4gIC8vIFJldHVybiBiZWNhdXNlIGl0IGNhbm5vdCBiZSByb3V0ZWQgYnkgdGhlIE5leHQuanMgcm91dGVyXG4gIGlmICghaXNMb2NhbFVSTCh1cmxBc1N0cmluZykpIHtcbiAgICByZXR1cm4gKHJlc29sdmVBcyA/IFt1cmxBc1N0cmluZ10gOiB1cmxBc1N0cmluZykgYXMgc3RyaW5nXG4gIH1cbiAgdHJ5IHtcbiAgICBjb25zdCBmaW5hbFVybCA9IG5ldyBVUkwodXJsQXNTdHJpbmcsIGJhc2UpXG4gICAgZmluYWxVcmwucGF0aG5hbWUgPSBub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaChmaW5hbFVybC5wYXRobmFtZSlcbiAgICBsZXQgaW50ZXJwb2xhdGVkQXMgPSAnJ1xuXG4gICAgaWYgKFxuICAgICAgaXNEeW5hbWljUm91dGUoZmluYWxVcmwucGF0aG5hbWUpICYmXG4gICAgICBmaW5hbFVybC5zZWFyY2hQYXJhbXMgJiZcbiAgICAgIHJlc29sdmVBc1xuICAgICkge1xuICAgICAgY29uc3QgcXVlcnkgPSBzZWFyY2hQYXJhbXNUb1VybFF1ZXJ5KGZpbmFsVXJsLnNlYXJjaFBhcmFtcylcblxuICAgICAgY29uc3QgeyByZXN1bHQsIHBhcmFtcyB9ID0gaW50ZXJwb2xhdGVBcyhcbiAgICAgICAgZmluYWxVcmwucGF0aG5hbWUsXG4gICAgICAgIGZpbmFsVXJsLnBhdGhuYW1lLFxuICAgICAgICBxdWVyeVxuICAgICAgKVxuXG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIGludGVycG9sYXRlZEFzID0gZm9ybWF0V2l0aFZhbGlkYXRpb24oe1xuICAgICAgICAgIHBhdGhuYW1lOiByZXN1bHQsXG4gICAgICAgICAgaGFzaDogZmluYWxVcmwuaGFzaCxcbiAgICAgICAgICBxdWVyeTogb21pdFBhcm1zRnJvbVF1ZXJ5KHF1ZXJ5LCBwYXJhbXMpLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGlmIHRoZSBvcmlnaW4gZGlkbid0IGNoYW5nZSwgaXQgbWVhbnMgd2UgcmVjZWl2ZWQgYSByZWxhdGl2ZSBocmVmXG4gICAgY29uc3QgcmVzb2x2ZWRIcmVmID1cbiAgICAgIGZpbmFsVXJsLm9yaWdpbiA9PT0gYmFzZS5vcmlnaW5cbiAgICAgICAgPyBmaW5hbFVybC5ocmVmLnNsaWNlKGZpbmFsVXJsLm9yaWdpbi5sZW5ndGgpXG4gICAgICAgIDogZmluYWxVcmwuaHJlZlxuXG4gICAgcmV0dXJuIChyZXNvbHZlQXNcbiAgICAgID8gW3Jlc29sdmVkSHJlZiwgaW50ZXJwb2xhdGVkQXMgfHwgcmVzb2x2ZWRIcmVmXVxuICAgICAgOiByZXNvbHZlZEhyZWYpIGFzIHN0cmluZ1xuICB9IGNhdGNoIChfKSB7XG4gICAgcmV0dXJuIChyZXNvbHZlQXMgPyBbdXJsQXNTdHJpbmddIDogdXJsQXNTdHJpbmcpIGFzIHN0cmluZ1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0cmlwT3JpZ2luKHVybDogc3RyaW5nKSB7XG4gIGNvbnN0IG9yaWdpbiA9IGdldExvY2F0aW9uT3JpZ2luKClcblxuICByZXR1cm4gdXJsLnN0YXJ0c1dpdGgob3JpZ2luKSA/IHVybC5zdWJzdHJpbmcob3JpZ2luLmxlbmd0aCkgOiB1cmxcbn1cblxuZnVuY3Rpb24gcHJlcGFyZVVybEFzKHJvdXRlcjogTmV4dFJvdXRlciwgdXJsOiBVcmwsIGFzPzogVXJsKSB7XG4gIC8vIElmIHVybCBhbmQgYXMgcHJvdmlkZWQgYXMgYW4gb2JqZWN0IHJlcHJlc2VudGF0aW9uLFxuICAvLyB3ZSdsbCBmb3JtYXQgdGhlbSBpbnRvIHRoZSBzdHJpbmcgdmVyc2lvbiBoZXJlLlxuICBsZXQgW3Jlc29sdmVkSHJlZiwgcmVzb2x2ZWRBc10gPSByZXNvbHZlSHJlZihyb3V0ZXIucGF0aG5hbWUsIHVybCwgdHJ1ZSlcbiAgY29uc3Qgb3JpZ2luID0gZ2V0TG9jYXRpb25PcmlnaW4oKVxuICBjb25zdCBocmVmSGFkT3JpZ2luID0gcmVzb2x2ZWRIcmVmLnN0YXJ0c1dpdGgob3JpZ2luKVxuICBjb25zdCBhc0hhZE9yaWdpbiA9IHJlc29sdmVkQXMgJiYgcmVzb2x2ZWRBcy5zdGFydHNXaXRoKG9yaWdpbilcblxuICByZXNvbHZlZEhyZWYgPSBzdHJpcE9yaWdpbihyZXNvbHZlZEhyZWYpXG4gIHJlc29sdmVkQXMgPSByZXNvbHZlZEFzID8gc3RyaXBPcmlnaW4ocmVzb2x2ZWRBcykgOiByZXNvbHZlZEFzXG5cbiAgY29uc3QgcHJlcGFyZWRVcmwgPSBocmVmSGFkT3JpZ2luID8gcmVzb2x2ZWRIcmVmIDogYWRkQmFzZVBhdGgocmVzb2x2ZWRIcmVmKVxuICBjb25zdCBwcmVwYXJlZEFzID0gYXNcbiAgICA/IHN0cmlwT3JpZ2luKHJlc29sdmVIcmVmKHJvdXRlci5wYXRobmFtZSwgYXMpKVxuICAgIDogcmVzb2x2ZWRBcyB8fCByZXNvbHZlZEhyZWZcblxuICByZXR1cm4ge1xuICAgIHVybDogcHJlcGFyZWRVcmwsXG4gICAgYXM6IGFzSGFkT3JpZ2luID8gcHJlcGFyZWRBcyA6IGFkZEJhc2VQYXRoKHByZXBhcmVkQXMpLFxuICB9XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVEeW5hbWljUm91dGUoXG4gIHBhcnNlZEhyZWY6IFVybE9iamVjdCxcbiAgcGFnZXM6IHN0cmluZ1tdLFxuICBhcHBseUJhc2VQYXRoID0gdHJ1ZVxuKSB7XG4gIGNvbnN0IHsgcGF0aG5hbWUgfSA9IHBhcnNlZEhyZWZcbiAgY29uc3QgY2xlYW5QYXRobmFtZSA9IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKFxuICAgIGRlbm9ybWFsaXplUGFnZVBhdGgoYXBwbHlCYXNlUGF0aCA/IGRlbEJhc2VQYXRoKHBhdGhuYW1lISkgOiBwYXRobmFtZSEpXG4gIClcblxuICBpZiAoY2xlYW5QYXRobmFtZSA9PT0gJy80MDQnIHx8IGNsZWFuUGF0aG5hbWUgPT09ICcvX2Vycm9yJykge1xuICAgIHJldHVybiBwYXJzZWRIcmVmXG4gIH1cblxuICAvLyBoYW5kbGUgcmVzb2x2aW5nIGhyZWYgZm9yIGR5bmFtaWMgcm91dGVzXG4gIGlmICghcGFnZXMuaW5jbHVkZXMoY2xlYW5QYXRobmFtZSEpKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGFycmF5LWNhbGxiYWNrLXJldHVyblxuICAgIHBhZ2VzLnNvbWUoKHBhZ2UpID0+IHtcbiAgICAgIGlmIChpc0R5bmFtaWNSb3V0ZShwYWdlKSAmJiBnZXRSb3V0ZVJlZ2V4KHBhZ2UpLnJlLnRlc3QoY2xlYW5QYXRobmFtZSEpKSB7XG4gICAgICAgIHBhcnNlZEhyZWYucGF0aG5hbWUgPSBhcHBseUJhc2VQYXRoID8gYWRkQmFzZVBhdGgocGFnZSkgOiBwYWdlXG4gICAgICAgIHJldHVybiB0cnVlXG4gICAgICB9XG4gICAgfSlcbiAgfVxuICBwYXJzZWRIcmVmLnBhdGhuYW1lID0gcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gocGFyc2VkSHJlZi5wYXRobmFtZSEpXG4gIHJldHVybiBwYXJzZWRIcmVmXG59XG5cbmV4cG9ydCB0eXBlIEJhc2VSb3V0ZXIgPSB7XG4gIHJvdXRlOiBzdHJpbmdcbiAgcGF0aG5hbWU6IHN0cmluZ1xuICBxdWVyeTogUGFyc2VkVXJsUXVlcnlcbiAgYXNQYXRoOiBzdHJpbmdcbiAgYmFzZVBhdGg6IHN0cmluZ1xuICBsb2NhbGU/OiBzdHJpbmdcbiAgbG9jYWxlcz86IHN0cmluZ1tdXG4gIGRlZmF1bHRMb2NhbGU/OiBzdHJpbmdcbiAgZG9tYWluTG9jYWxlcz86IERvbWFpbkxvY2FsZXNcbiAgaXNMb2NhbGVEb21haW46IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgTmV4dFJvdXRlciA9IEJhc2VSb3V0ZXIgJlxuICBQaWNrPFxuICAgIFJvdXRlcixcbiAgICB8ICdwdXNoJ1xuICAgIHwgJ3JlcGxhY2UnXG4gICAgfCAncmVsb2FkJ1xuICAgIHwgJ2JhY2snXG4gICAgfCAncHJlZmV0Y2gnXG4gICAgfCAnYmVmb3JlUG9wU3RhdGUnXG4gICAgfCAnZXZlbnRzJ1xuICAgIHwgJ2lzRmFsbGJhY2snXG4gICAgfCAnaXNSZWFkeSdcbiAgICB8ICdpc1ByZXZpZXcnXG4gID5cblxuZXhwb3J0IHR5cGUgUHJlZmV0Y2hPcHRpb25zID0ge1xuICBwcmlvcml0eT86IGJvb2xlYW5cbiAgbG9jYWxlPzogc3RyaW5nIHwgZmFsc2Vcbn1cblxuZXhwb3J0IHR5cGUgUHJpdmF0ZVJvdXRlSW5mbyA9XG4gIHwgKE9taXQ8Q29tcGxldGVQcml2YXRlUm91dGVJbmZvLCAnc3R5bGVTaGVldHMnPiAmIHsgaW5pdGlhbDogdHJ1ZSB9KVxuICB8IENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mb1xuXG5leHBvcnQgdHlwZSBDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8gPSB7XG4gIENvbXBvbmVudDogQ29tcG9uZW50VHlwZVxuICBzdHlsZVNoZWV0czogU3R5bGVTaGVldFR1cGxlW11cbiAgX19OX1NTRz86IGJvb2xlYW5cbiAgX19OX1NTUD86IGJvb2xlYW5cbiAgcHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIGVycj86IEVycm9yXG4gIGVycm9yPzogYW55XG59XG5cbmV4cG9ydCB0eXBlIEFwcFByb3BzID0gUGljazxDb21wbGV0ZVByaXZhdGVSb3V0ZUluZm8sICdDb21wb25lbnQnIHwgJ2Vycic+ICYge1xuICByb3V0ZXI6IFJvdXRlclxufSAmIFJlY29yZDxzdHJpbmcsIGFueT5cbmV4cG9ydCB0eXBlIEFwcENvbXBvbmVudCA9IENvbXBvbmVudFR5cGU8QXBwUHJvcHM+XG5cbnR5cGUgU3Vic2NyaXB0aW9uID0gKFxuICBkYXRhOiBQcml2YXRlUm91dGVJbmZvLFxuICBBcHA6IEFwcENvbXBvbmVudCxcbiAgcmVzZXRTY3JvbGw6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSB8IG51bGxcbikgPT4gUHJvbWlzZTx2b2lkPlxuXG50eXBlIEJlZm9yZVBvcFN0YXRlQ2FsbGJhY2sgPSAoc3RhdGU6IE5leHRIaXN0b3J5U3RhdGUpID0+IGJvb2xlYW5cblxudHlwZSBDb21wb25lbnRMb2FkQ2FuY2VsID0gKCgpID0+IHZvaWQpIHwgbnVsbFxuXG50eXBlIEhpc3RvcnlNZXRob2QgPSAncmVwbGFjZVN0YXRlJyB8ICdwdXNoU3RhdGUnXG5cbmNvbnN0IG1hbnVhbFNjcm9sbFJlc3RvcmF0aW9uID1cbiAgcHJvY2Vzcy5lbnYuX19ORVhUX1NDUk9MTF9SRVNUT1JBVElPTiAmJlxuICB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJlxuICAnc2Nyb2xsUmVzdG9yYXRpb24nIGluIHdpbmRvdy5oaXN0b3J5ICYmXG4gICEhKGZ1bmN0aW9uICgpIHtcbiAgICB0cnkge1xuICAgICAgbGV0IHYgPSAnX19uZXh0J1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlcXVlbmNlc1xuICAgICAgcmV0dXJuIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0odiwgdiksIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0odiksIHRydWVcbiAgICB9IGNhdGNoIChuKSB7fVxuICB9KSgpXG5cbmNvbnN0IFNTR19EQVRBX05PVF9GT1VORCA9IFN5bWJvbCgnU1NHX0RBVEFfTk9UX0ZPVU5EJylcblxuZnVuY3Rpb24gZmV0Y2hSZXRyeSh1cmw6IHN0cmluZywgYXR0ZW1wdHM6IG51bWJlcik6IFByb21pc2U8YW55PiB7XG4gIHJldHVybiBmZXRjaCh1cmwsIHtcbiAgICAvLyBDb29raWVzIGFyZSByZXF1aXJlZCB0byBiZSBwcmVzZW50IGZvciBOZXh0LmpzJyBTU0cgXCJQcmV2aWV3IE1vZGVcIi5cbiAgICAvLyBDb29raWVzIG1heSBhbHNvIGJlIHJlcXVpcmVkIGZvciBgZ2V0U2VydmVyU2lkZVByb3BzYC5cbiAgICAvL1xuICAgIC8vID4gYGZldGNoYCB3b27igJl0IHNlbmQgY29va2llcywgdW5sZXNzIHlvdSBzZXQgdGhlIGNyZWRlbnRpYWxzIGluaXRcbiAgICAvLyA+IG9wdGlvbi5cbiAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRmV0Y2hfQVBJL1VzaW5nX0ZldGNoXG4gICAgLy9cbiAgICAvLyA+IEZvciBtYXhpbXVtIGJyb3dzZXIgY29tcGF0aWJpbGl0eSB3aGVuIGl0IGNvbWVzIHRvIHNlbmRpbmcgJlxuICAgIC8vID4gcmVjZWl2aW5nIGNvb2tpZXMsIGFsd2F5cyBzdXBwbHkgdGhlIGBjcmVkZW50aWFsczogJ3NhbWUtb3JpZ2luJ2BcbiAgICAvLyA+IG9wdGlvbiBpbnN0ZWFkIG9mIHJlbHlpbmcgb24gdGhlIGRlZmF1bHQuXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2dpdGh1Yi9mZXRjaCNjYXZlYXRzXG4gICAgY3JlZGVudGlhbHM6ICdzYW1lLW9yaWdpbicsXG4gIH0pLnRoZW4oKHJlcykgPT4ge1xuICAgIGlmICghcmVzLm9rKSB7XG4gICAgICBpZiAoYXR0ZW1wdHMgPiAxICYmIHJlcy5zdGF0dXMgPj0gNTAwKSB7XG4gICAgICAgIHJldHVybiBmZXRjaFJldHJ5KHVybCwgYXR0ZW1wdHMgLSAxKVxuICAgICAgfVxuICAgICAgaWYgKHJlcy5zdGF0dXMgPT09IDQwNCkge1xuICAgICAgICByZXR1cm4gcmVzLmpzb24oKS50aGVuKChkYXRhKSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGEubm90Rm91bmQpIHtcbiAgICAgICAgICAgIHJldHVybiB7IG5vdEZvdW5kOiBTU0dfREFUQV9OT1RfRk9VTkQgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIHN0YXRpYyBwcm9wc2ApXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBsb2FkIHN0YXRpYyBwcm9wc2ApXG4gICAgfVxuICAgIHJldHVybiByZXMuanNvbigpXG4gIH0pXG59XG5cbmZ1bmN0aW9uIGZldGNoTmV4dERhdGEoZGF0YUhyZWY6IHN0cmluZywgaXNTZXJ2ZXJSZW5kZXI6IGJvb2xlYW4pIHtcbiAgcmV0dXJuIGZldGNoUmV0cnkoZGF0YUhyZWYsIGlzU2VydmVyUmVuZGVyID8gMyA6IDEpLmNhdGNoKChlcnI6IEVycm9yKSA9PiB7XG4gICAgLy8gV2Ugc2hvdWxkIG9ubHkgdHJpZ2dlciBhIHNlcnZlci1zaWRlIHRyYW5zaXRpb24gaWYgdGhpcyB3YXMgY2F1c2VkXG4gICAgLy8gb24gYSBjbGllbnQtc2lkZSB0cmFuc2l0aW9uLiBPdGhlcndpc2UsIHdlJ2QgZ2V0IGludG8gYW4gaW5maW5pdGVcbiAgICAvLyBsb29wLlxuXG4gICAgaWYgKCFpc1NlcnZlclJlbmRlcikge1xuICAgICAgbWFya0Fzc2V0RXJyb3IoZXJyKVxuICAgIH1cbiAgICB0aHJvdyBlcnJcbiAgfSlcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm91dGVyIGltcGxlbWVudHMgQmFzZVJvdXRlciB7XG4gIHJvdXRlOiBzdHJpbmdcbiAgcGF0aG5hbWU6IHN0cmluZ1xuICBxdWVyeTogUGFyc2VkVXJsUXVlcnlcbiAgYXNQYXRoOiBzdHJpbmdcbiAgYmFzZVBhdGg6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBNYXAgb2YgYWxsIGNvbXBvbmVudHMgbG9hZGVkIGluIGBSb3V0ZXJgXG4gICAqL1xuICBjb21wb25lbnRzOiB7IFtwYXRobmFtZTogc3RyaW5nXTogUHJpdmF0ZVJvdXRlSW5mbyB9XG4gIC8vIFN0YXRpYyBEYXRhIENhY2hlXG4gIHNkYzogeyBbYXNQYXRoOiBzdHJpbmddOiBvYmplY3QgfSA9IHt9XG4gIHN1YjogU3Vic2NyaXB0aW9uXG4gIGNsYzogQ29tcG9uZW50TG9hZENhbmNlbFxuICBwYWdlTG9hZGVyOiBhbnlcbiAgX2JwczogQmVmb3JlUG9wU3RhdGVDYWxsYmFjayB8IHVuZGVmaW5lZFxuICBldmVudHM6IE1pdHRFbWl0dGVyXG4gIF93cmFwQXBwOiAoQXBwOiBBcHBDb21wb25lbnQpID0+IGFueVxuICBpc1NzcjogYm9vbGVhblxuICBpc0ZhbGxiYWNrOiBib29sZWFuXG4gIF9pbkZsaWdodFJvdXRlPzogc3RyaW5nXG4gIF9zaGFsbG93PzogYm9vbGVhblxuICBsb2NhbGU/OiBzdHJpbmdcbiAgbG9jYWxlcz86IHN0cmluZ1tdXG4gIGRlZmF1bHRMb2NhbGU/OiBzdHJpbmdcbiAgZG9tYWluTG9jYWxlcz86IERvbWFpbkxvY2FsZXNcbiAgaXNSZWFkeTogYm9vbGVhblxuICBpc1ByZXZpZXc6IGJvb2xlYW5cbiAgaXNMb2NhbGVEb21haW46IGJvb2xlYW5cblxuICBwcml2YXRlIF9pZHg6IG51bWJlciA9IDBcblxuICBzdGF0aWMgZXZlbnRzOiBNaXR0RW1pdHRlciA9IG1pdHQoKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHBhdGhuYW1lOiBzdHJpbmcsXG4gICAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5LFxuICAgIGFzOiBzdHJpbmcsXG4gICAge1xuICAgICAgaW5pdGlhbFByb3BzLFxuICAgICAgcGFnZUxvYWRlcixcbiAgICAgIEFwcCxcbiAgICAgIHdyYXBBcHAsXG4gICAgICBDb21wb25lbnQsXG4gICAgICBlcnIsXG4gICAgICBzdWJzY3JpcHRpb24sXG4gICAgICBpc0ZhbGxiYWNrLFxuICAgICAgbG9jYWxlLFxuICAgICAgbG9jYWxlcyxcbiAgICAgIGRlZmF1bHRMb2NhbGUsXG4gICAgICBkb21haW5Mb2NhbGVzLFxuICAgICAgaXNQcmV2aWV3LFxuICAgIH06IHtcbiAgICAgIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uXG4gICAgICBpbml0aWFsUHJvcHM6IGFueVxuICAgICAgcGFnZUxvYWRlcjogYW55XG4gICAgICBDb21wb25lbnQ6IENvbXBvbmVudFR5cGVcbiAgICAgIEFwcDogQXBwQ29tcG9uZW50XG4gICAgICB3cmFwQXBwOiAoQXBwOiBBcHBDb21wb25lbnQpID0+IGFueVxuICAgICAgZXJyPzogRXJyb3JcbiAgICAgIGlzRmFsbGJhY2s6IGJvb2xlYW5cbiAgICAgIGxvY2FsZT86IHN0cmluZ1xuICAgICAgbG9jYWxlcz86IHN0cmluZ1tdXG4gICAgICBkZWZhdWx0TG9jYWxlPzogc3RyaW5nXG4gICAgICBkb21haW5Mb2NhbGVzPzogRG9tYWluTG9jYWxlc1xuICAgICAgaXNQcmV2aWV3PzogYm9vbGVhblxuICAgIH1cbiAgKSB7XG4gICAgLy8gcmVwcmVzZW50cyB0aGUgY3VycmVudCBjb21wb25lbnQga2V5XG4gICAgdGhpcy5yb3V0ZSA9IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKHBhdGhuYW1lKVxuXG4gICAgLy8gc2V0IHVwIHRoZSBjb21wb25lbnQgY2FjaGUgKGJ5IHJvdXRlIGtleXMpXG4gICAgdGhpcy5jb21wb25lbnRzID0ge31cbiAgICAvLyBXZSBzaG91bGQgbm90IGtlZXAgdGhlIGNhY2hlLCBpZiB0aGVyZSdzIGFuIGVycm9yXG4gICAgLy8gT3RoZXJ3aXNlLCB0aGlzIGNhdXNlIGlzc3VlcyB3aGVuIHdoZW4gZ29pbmcgYmFjayBhbmRcbiAgICAvLyBjb21lIGFnYWluIHRvIHRoZSBlcnJvcmVkIHBhZ2UuXG4gICAgaWYgKHBhdGhuYW1lICE9PSAnL19lcnJvcicpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50c1t0aGlzLnJvdXRlXSA9IHtcbiAgICAgICAgQ29tcG9uZW50LFxuICAgICAgICBpbml0aWFsOiB0cnVlLFxuICAgICAgICBwcm9wczogaW5pdGlhbFByb3BzLFxuICAgICAgICBlcnIsXG4gICAgICAgIF9fTl9TU0c6IGluaXRpYWxQcm9wcyAmJiBpbml0aWFsUHJvcHMuX19OX1NTRyxcbiAgICAgICAgX19OX1NTUDogaW5pdGlhbFByb3BzICYmIGluaXRpYWxQcm9wcy5fX05fU1NQLFxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuY29tcG9uZW50c1snL19hcHAnXSA9IHtcbiAgICAgIENvbXBvbmVudDogQXBwIGFzIENvbXBvbmVudFR5cGUsXG4gICAgICBzdHlsZVNoZWV0czogW1xuICAgICAgICAvKiAvX2FwcCBkb2VzIG5vdCBuZWVkIGl0cyBzdHlsZXNoZWV0cyBtYW5hZ2VkICovXG4gICAgICBdLFxuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkcyBjb21wYXQgZm9yIFJvdXRlci5yb3V0ZXIuZXZlbnRzXG4gICAgLy8gVE9ETzogU2hvdWxkIGJlIHJlbW92ZSB0aGUgZm9sbG93aW5nIG1ham9yIHZlcnNpb24gYXMgaXQgd2FzIG5ldmVyIGRvY3VtZW50ZWRcbiAgICB0aGlzLmV2ZW50cyA9IFJvdXRlci5ldmVudHNcblxuICAgIHRoaXMucGFnZUxvYWRlciA9IHBhZ2VMb2FkZXJcbiAgICB0aGlzLnBhdGhuYW1lID0gcGF0aG5hbWVcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnlcbiAgICAvLyBpZiBhdXRvIHByZXJlbmRlcmVkIGFuZCBkeW5hbWljIHJvdXRlIHdhaXQgdG8gdXBkYXRlIGFzUGF0aFxuICAgIC8vIHVudGlsIGFmdGVyIG1vdW50IHRvIHByZXZlbnQgaHlkcmF0aW9uIG1pc21hdGNoXG4gICAgY29uc3QgYXV0b0V4cG9ydER5bmFtaWMgPVxuICAgICAgaXNEeW5hbWljUm91dGUocGF0aG5hbWUpICYmIHNlbGYuX19ORVhUX0RBVEFfXy5hdXRvRXhwb3J0XG5cbiAgICB0aGlzLmFzUGF0aCA9IGF1dG9FeHBvcnREeW5hbWljID8gcGF0aG5hbWUgOiBhc1xuICAgIHRoaXMuYmFzZVBhdGggPSBiYXNlUGF0aFxuICAgIHRoaXMuc3ViID0gc3Vic2NyaXB0aW9uXG4gICAgdGhpcy5jbGMgPSBudWxsXG4gICAgdGhpcy5fd3JhcEFwcCA9IHdyYXBBcHBcbiAgICAvLyBtYWtlIHN1cmUgdG8gaWdub3JlIGV4dHJhIHBvcFN0YXRlIGluIHNhZmFyaSBvbiBuYXZpZ2F0aW5nXG4gICAgLy8gYmFjayBmcm9tIGV4dGVybmFsIHNpdGVcbiAgICB0aGlzLmlzU3NyID0gdHJ1ZVxuXG4gICAgdGhpcy5pc0ZhbGxiYWNrID0gaXNGYWxsYmFja1xuXG4gICAgdGhpcy5pc1JlYWR5ID0gISEoXG4gICAgICBzZWxmLl9fTkVYVF9EQVRBX18uZ3NzcCB8fFxuICAgICAgc2VsZi5fX05FWFRfREFUQV9fLmdpcCB8fFxuICAgICAgKCFhdXRvRXhwb3J0RHluYW1pYyAmJiAhc2VsZi5sb2NhdGlvbi5zZWFyY2gpXG4gICAgKVxuICAgIHRoaXMuaXNQcmV2aWV3ID0gISFpc1ByZXZpZXdcbiAgICB0aGlzLmlzTG9jYWxlRG9tYWluID0gZmFsc2VcblxuICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSTE4Tl9TVVBQT1JUKSB7XG4gICAgICB0aGlzLmxvY2FsZSA9IGxvY2FsZVxuICAgICAgdGhpcy5sb2NhbGVzID0gbG9jYWxlc1xuICAgICAgdGhpcy5kZWZhdWx0TG9jYWxlID0gZGVmYXVsdExvY2FsZVxuICAgICAgdGhpcy5kb21haW5Mb2NhbGVzID0gZG9tYWluTG9jYWxlc1xuICAgICAgdGhpcy5pc0xvY2FsZURvbWFpbiA9ICEhZGV0ZWN0RG9tYWluTG9jYWxlKFxuICAgICAgICBkb21haW5Mb2NhbGVzLFxuICAgICAgICBzZWxmLmxvY2F0aW9uLmhvc3RuYW1lXG4gICAgICApXG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAvLyBtYWtlIHN1cmUgXCJhc1wiIGRvZXNuJ3Qgc3RhcnQgd2l0aCBkb3VibGUgc2xhc2hlcyBvciBlbHNlIGl0IGNhblxuICAgICAgLy8gdGhyb3cgYW4gZXJyb3IgYXMgaXQncyBjb25zaWRlcmVkIGludmFsaWRcbiAgICAgIGlmIChhcy5zdWJzdHIoMCwgMikgIT09ICcvLycpIHtcbiAgICAgICAgLy8gaW4gb3JkZXIgZm9yIGBlLnN0YXRlYCB0byB3b3JrIG9uIHRoZSBgb25wb3BzdGF0ZWAgZXZlbnRcbiAgICAgICAgLy8gd2UgaGF2ZSB0byByZWdpc3RlciB0aGUgaW5pdGlhbCByb3V0ZSB1cG9uIGluaXRpYWxpemF0aW9uXG4gICAgICAgIHRoaXMuY2hhbmdlU3RhdGUoXG4gICAgICAgICAgJ3JlcGxhY2VTdGF0ZScsXG4gICAgICAgICAgZm9ybWF0V2l0aFZhbGlkYXRpb24oeyBwYXRobmFtZTogYWRkQmFzZVBhdGgocGF0aG5hbWUpLCBxdWVyeSB9KSxcbiAgICAgICAgICBnZXRVUkwoKSxcbiAgICAgICAgICB7IGxvY2FsZSB9XG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvcHN0YXRlJywgdGhpcy5vblBvcFN0YXRlKVxuXG4gICAgICAvLyBlbmFibGUgY3VzdG9tIHNjcm9sbCByZXN0b3JhdGlvbiBoYW5kbGluZyB3aGVuIGF2YWlsYWJsZVxuICAgICAgLy8gb3RoZXJ3aXNlIGZhbGxiYWNrIHRvIGJyb3dzZXIncyBkZWZhdWx0IGhhbmRsaW5nXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX1NDUk9MTF9SRVNUT1JBVElPTikge1xuICAgICAgICBpZiAobWFudWFsU2Nyb2xsUmVzdG9yYXRpb24pIHtcbiAgICAgICAgICB3aW5kb3cuaGlzdG9yeS5zY3JvbGxSZXN0b3JhdGlvbiA9ICdtYW51YWwnXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvblBvcFN0YXRlID0gKGU6IFBvcFN0YXRlRXZlbnQpOiB2b2lkID0+IHtcbiAgICBjb25zdCBzdGF0ZSA9IGUuc3RhdGUgYXMgSGlzdG9yeVN0YXRlXG5cbiAgICBpZiAoIXN0YXRlKSB7XG4gICAgICAvLyBXZSBnZXQgc3RhdGUgYXMgdW5kZWZpbmVkIGZvciB0d28gcmVhc29ucy5cbiAgICAgIC8vICAxLiBXaXRoIG9sZGVyIHNhZmFyaSAoPCA4KSBhbmQgb2xkZXIgY2hyb21lICg8IDM0KVxuICAgICAgLy8gIDIuIFdoZW4gdGhlIFVSTCBjaGFuZ2VkIHdpdGggI1xuICAgICAgLy9cbiAgICAgIC8vIEluIHRoZSBib3RoIGNhc2VzLCB3ZSBkb24ndCBuZWVkIHRvIHByb2NlZWQgYW5kIGNoYW5nZSB0aGUgcm91dGUuXG4gICAgICAvLyAoYXMgaXQncyBhbHJlYWR5IGNoYW5nZWQpXG4gICAgICAvLyBCdXQgd2UgY2FuIHNpbXBseSByZXBsYWNlIHRoZSBzdGF0ZSB3aXRoIHRoZSBuZXcgY2hhbmdlcy5cbiAgICAgIC8vIEFjdHVhbGx5LCBmb3IgKDEpIHdlIGRvbid0IG5lZWQgdG8gbm90aGluZy4gQnV0IGl0J3MgaGFyZCB0byBkZXRlY3QgdGhhdCBldmVudC5cbiAgICAgIC8vIFNvLCBkb2luZyB0aGUgZm9sbG93aW5nIGZvciAoMSkgZG9lcyBubyBoYXJtLlxuICAgICAgY29uc3QgeyBwYXRobmFtZSwgcXVlcnkgfSA9IHRoaXNcbiAgICAgIHRoaXMuY2hhbmdlU3RhdGUoXG4gICAgICAgICdyZXBsYWNlU3RhdGUnLFxuICAgICAgICBmb3JtYXRXaXRoVmFsaWRhdGlvbih7IHBhdGhuYW1lOiBhZGRCYXNlUGF0aChwYXRobmFtZSksIHF1ZXJ5IH0pLFxuICAgICAgICBnZXRVUkwoKVxuICAgICAgKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKCFzdGF0ZS5fX04pIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGxldCBmb3JjZWRTY3JvbGw6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSB8IHVuZGVmaW5lZFxuICAgIGNvbnN0IHsgdXJsLCBhcywgb3B0aW9ucywgaWR4IH0gPSBzdGF0ZVxuICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfU0NST0xMX1JFU1RPUkFUSU9OKSB7XG4gICAgICBpZiAobWFudWFsU2Nyb2xsUmVzdG9yYXRpb24pIHtcbiAgICAgICAgaWYgKHRoaXMuX2lkeCAhPT0gaWR4KSB7XG4gICAgICAgICAgLy8gU25hcHNob3QgY3VycmVudCBzY3JvbGwgcG9zaXRpb246XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oXG4gICAgICAgICAgICAgICdfX25leHRfc2Nyb2xsXycgKyB0aGlzLl9pZHgsXG4gICAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHsgeDogc2VsZi5wYWdlWE9mZnNldCwgeTogc2VsZi5wYWdlWU9mZnNldCB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIH0gY2F0Y2gge31cblxuICAgICAgICAgIC8vIFJlc3RvcmUgb2xkIHNjcm9sbCBwb3NpdGlvbjpcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgdiA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oJ19fbmV4dF9zY3JvbGxfJyArIGlkeClcbiAgICAgICAgICAgIGZvcmNlZFNjcm9sbCA9IEpTT04ucGFyc2UodiEpXG4gICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICBmb3JjZWRTY3JvbGwgPSB7IHg6IDAsIHk6IDAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9pZHggPSBpZHhcblxuICAgIGNvbnN0IHsgcGF0aG5hbWUgfSA9IHBhcnNlUmVsYXRpdmVVcmwodXJsKVxuXG4gICAgLy8gTWFrZSBzdXJlIHdlIGRvbid0IHJlLXJlbmRlciBvbiBpbml0aWFsIGxvYWQsXG4gICAgLy8gY2FuIGJlIGNhdXNlZCBieSBuYXZpZ2F0aW5nIGJhY2sgZnJvbSBhbiBleHRlcm5hbCBzaXRlXG4gICAgaWYgKHRoaXMuaXNTc3IgJiYgYXMgPT09IHRoaXMuYXNQYXRoICYmIHBhdGhuYW1lID09PSB0aGlzLnBhdGhuYW1lKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgZG93bnN0cmVhbSBhcHBsaWNhdGlvbiByZXR1cm5zIGZhbHN5LCByZXR1cm4uXG4gICAgLy8gVGhleSB3aWxsIHRoZW4gYmUgcmVzcG9uc2libGUgZm9yIGhhbmRsaW5nIHRoZSBldmVudC5cbiAgICBpZiAodGhpcy5fYnBzICYmICF0aGlzLl9icHMoc3RhdGUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZShcbiAgICAgICdyZXBsYWNlU3RhdGUnLFxuICAgICAgdXJsLFxuICAgICAgYXMsXG4gICAgICBPYmplY3QuYXNzaWduPHt9LCBUcmFuc2l0aW9uT3B0aW9ucywgVHJhbnNpdGlvbk9wdGlvbnM+KHt9LCBvcHRpb25zLCB7XG4gICAgICAgIHNoYWxsb3c6IG9wdGlvbnMuc2hhbGxvdyAmJiB0aGlzLl9zaGFsbG93LFxuICAgICAgICBsb2NhbGU6IG9wdGlvbnMubG9jYWxlIHx8IHRoaXMuZGVmYXVsdExvY2FsZSxcbiAgICAgIH0pLFxuICAgICAgZm9yY2VkU2Nyb2xsXG4gICAgKVxuICB9XG5cbiAgcmVsb2FkKCk6IHZvaWQge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKVxuICB9XG5cbiAgLyoqXG4gICAqIEdvIGJhY2sgaW4gaGlzdG9yeVxuICAgKi9cbiAgYmFjaygpIHtcbiAgICB3aW5kb3cuaGlzdG9yeS5iYWNrKClcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBhIGBwdXNoU3RhdGVgIHdpdGggYXJndW1lbnRzXG4gICAqIEBwYXJhbSB1cmwgb2YgdGhlIHJvdXRlXG4gICAqIEBwYXJhbSBhcyBtYXNrcyBgdXJsYCBmb3IgdGhlIGJyb3dzZXJcbiAgICogQHBhcmFtIG9wdGlvbnMgb2JqZWN0IHlvdSBjYW4gZGVmaW5lIGBzaGFsbG93YCBhbmQgb3RoZXIgb3B0aW9uc1xuICAgKi9cbiAgcHVzaCh1cmw6IFVybCwgYXM/OiBVcmwsIG9wdGlvbnM6IFRyYW5zaXRpb25PcHRpb25zID0ge30pIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX1NDUk9MTF9SRVNUT1JBVElPTikge1xuICAgICAgLy8gVE9ETzogcmVtb3ZlIGluIHRoZSBmdXR1cmUgd2hlbiB3ZSB1cGRhdGUgaGlzdG9yeSBiZWZvcmUgcm91dGUgY2hhbmdlXG4gICAgICAvLyBpcyBjb21wbGV0ZSwgYXMgdGhlIHBvcHN0YXRlIGV2ZW50IHNob3VsZCBoYW5kbGUgdGhpcyBjYXB0dXJlLlxuICAgICAgaWYgKG1hbnVhbFNjcm9sbFJlc3RvcmF0aW9uKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgLy8gU25hcHNob3Qgc2Nyb2xsIHBvc2l0aW9uIHJpZ2h0IGJlZm9yZSBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2U6XG4gICAgICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICAgICAgICdfX25leHRfc2Nyb2xsXycgKyB0aGlzLl9pZHgsXG4gICAgICAgICAgICBKU09OLnN0cmluZ2lmeSh7IHg6IHNlbGYucGFnZVhPZmZzZXQsIHk6IHNlbGYucGFnZVlPZmZzZXQgfSlcbiAgICAgICAgICApXG4gICAgICAgIH0gY2F0Y2gge31cbiAgICAgIH1cbiAgICB9XG4gICAgOyh7IHVybCwgYXMgfSA9IHByZXBhcmVVcmxBcyh0aGlzLCB1cmwsIGFzKSlcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2UoJ3B1c2hTdGF0ZScsIHVybCwgYXMsIG9wdGlvbnMpXG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgYSBgcmVwbGFjZVN0YXRlYCB3aXRoIGFyZ3VtZW50c1xuICAgKiBAcGFyYW0gdXJsIG9mIHRoZSByb3V0ZVxuICAgKiBAcGFyYW0gYXMgbWFza3MgYHVybGAgZm9yIHRoZSBicm93c2VyXG4gICAqIEBwYXJhbSBvcHRpb25zIG9iamVjdCB5b3UgY2FuIGRlZmluZSBgc2hhbGxvd2AgYW5kIG90aGVyIG9wdGlvbnNcbiAgICovXG4gIHJlcGxhY2UodXJsOiBVcmwsIGFzPzogVXJsLCBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucyA9IHt9KSB7XG4gICAgOyh7IHVybCwgYXMgfSA9IHByZXBhcmVVcmxBcyh0aGlzLCB1cmwsIGFzKSlcbiAgICByZXR1cm4gdGhpcy5jaGFuZ2UoJ3JlcGxhY2VTdGF0ZScsIHVybCwgYXMsIG9wdGlvbnMpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoYW5nZShcbiAgICBtZXRob2Q6IEhpc3RvcnlNZXRob2QsXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYXM6IHN0cmluZyxcbiAgICBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucyxcbiAgICBmb3JjZWRTY3JvbGw/OiB7IHg6IG51bWJlcjsgeTogbnVtYmVyIH1cbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgaWYgKCFpc0xvY2FsVVJMKHVybCkpIHtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdXJsXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICAvLyBmb3Igc3RhdGljIHBhZ2VzIHdpdGggcXVlcnkgcGFyYW1zIGluIHRoZSBVUkwgd2UgZGVsYXlcbiAgICAvLyBtYXJraW5nIHRoZSByb3V0ZXIgcmVhZHkgdW50aWwgYWZ0ZXIgdGhlIHF1ZXJ5IGlzIHVwZGF0ZWRcbiAgICBpZiAoKG9wdGlvbnMgYXMgYW55KS5faCkge1xuICAgICAgdGhpcy5pc1JlYWR5ID0gdHJ1ZVxuICAgIH1cblxuICAgIC8vIERlZmF1bHQgdG8gc2Nyb2xsIHJlc2V0IGJlaGF2aW9yIHVubGVzcyBleHBsaWNpdGx5IHNwZWNpZmllZCB0byBiZVxuICAgIC8vIGBmYWxzZWAhIFRoaXMgbWFrZXMgdGhlIGJlaGF2aW9yIGJldHdlZW4gdXNpbmcgYFJvdXRlciNwdXNoYCBhbmQgYVxuICAgIC8vIGA8TGluayAvPmAgY29uc2lzdGVudC5cbiAgICBvcHRpb25zLnNjcm9sbCA9ICEhKG9wdGlvbnMuc2Nyb2xsID8/IHRydWUpXG5cbiAgICBsZXQgbG9jYWxlQ2hhbmdlID0gb3B0aW9ucy5sb2NhbGUgIT09IHRoaXMubG9jYWxlXG5cbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICAgICAgdGhpcy5sb2NhbGUgPVxuICAgICAgICBvcHRpb25zLmxvY2FsZSA9PT0gZmFsc2VcbiAgICAgICAgICA/IHRoaXMuZGVmYXVsdExvY2FsZVxuICAgICAgICAgIDogb3B0aW9ucy5sb2NhbGUgfHwgdGhpcy5sb2NhbGVcblxuICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLmxvY2FsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgb3B0aW9ucy5sb2NhbGUgPSB0aGlzLmxvY2FsZVxuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJzZWRBcyA9IHBhcnNlUmVsYXRpdmVVcmwoaGFzQmFzZVBhdGgoYXMpID8gZGVsQmFzZVBhdGgoYXMpIDogYXMpXG4gICAgICBjb25zdCBsb2NhbGVQYXRoUmVzdWx0ID0gbm9ybWFsaXplTG9jYWxlUGF0aChcbiAgICAgICAgcGFyc2VkQXMucGF0aG5hbWUsXG4gICAgICAgIHRoaXMubG9jYWxlc1xuICAgICAgKVxuXG4gICAgICBpZiAobG9jYWxlUGF0aFJlc3VsdC5kZXRlY3RlZExvY2FsZSkge1xuICAgICAgICB0aGlzLmxvY2FsZSA9IGxvY2FsZVBhdGhSZXN1bHQuZGV0ZWN0ZWRMb2NhbGVcbiAgICAgICAgcGFyc2VkQXMucGF0aG5hbWUgPSBhZGRCYXNlUGF0aChwYXJzZWRBcy5wYXRobmFtZSlcbiAgICAgICAgYXMgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWRBcylcbiAgICAgICAgdXJsID0gYWRkQmFzZVBhdGgoXG4gICAgICAgICAgbm9ybWFsaXplTG9jYWxlUGF0aChcbiAgICAgICAgICAgIGhhc0Jhc2VQYXRoKHVybCkgPyBkZWxCYXNlUGF0aCh1cmwpIDogdXJsLFxuICAgICAgICAgICAgdGhpcy5sb2NhbGVzXG4gICAgICAgICAgKS5wYXRobmFtZVxuICAgICAgICApXG4gICAgICB9XG4gICAgICBsZXQgZGlkTmF2aWdhdGUgPSBmYWxzZVxuXG4gICAgICAvLyB3ZSBuZWVkIHRvIHdyYXAgdGhpcyBpbiB0aGUgZW52IGNoZWNrIGFnYWluIHNpbmNlIHJlZ2VuZXJhdG9yIHJ1bnRpbWVcbiAgICAgIC8vIG1vdmVzIHRoaXMgb24gaXRzIG93biBkdWUgdG8gdGhlIHJldHVyblxuICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICAgICAgLy8gaWYgdGhlIGxvY2FsZSBpc24ndCBjb25maWd1cmVkIGhhcmQgbmF2aWdhdGUgdG8gc2hvdyA0MDQgcGFnZVxuICAgICAgICBpZiAoIXRoaXMubG9jYWxlcz8uaW5jbHVkZXModGhpcy5sb2NhbGUhKSkge1xuICAgICAgICAgIHBhcnNlZEFzLnBhdGhuYW1lID0gYWRkTG9jYWxlKHBhcnNlZEFzLnBhdGhuYW1lLCB0aGlzLmxvY2FsZSlcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGZvcm1hdFdpdGhWYWxpZGF0aW9uKHBhcnNlZEFzKVxuICAgICAgICAgIC8vIHRoaXMgd2FzIHByZXZpb3VzbHkgYSByZXR1cm4gYnV0IHdhcyByZW1vdmVkIGluIGZhdm9yXG4gICAgICAgICAgLy8gb2YgYmV0dGVyIGRlYWQgY29kZSBlbGltaW5hdGlvbiB3aXRoIHJlZ2VuZXJhdG9yIHJ1bnRpbWVcbiAgICAgICAgICBkaWROYXZpZ2F0ZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBkZXRlY3RlZERvbWFpbiA9IGRldGVjdERvbWFpbkxvY2FsZShcbiAgICAgICAgdGhpcy5kb21haW5Mb2NhbGVzLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIHRoaXMubG9jYWxlXG4gICAgICApXG5cbiAgICAgIC8vIHdlIG5lZWQgdG8gd3JhcCB0aGlzIGluIHRoZSBlbnYgY2hlY2sgYWdhaW4gc2luY2UgcmVnZW5lcmF0b3IgcnVudGltZVxuICAgICAgLy8gbW92ZXMgdGhpcyBvbiBpdHMgb3duIGR1ZSB0byB0aGUgcmV0dXJuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICAgICAgICAvLyBpZiB3ZSBhcmUgbmF2aWdhdGluZyB0byBhIGRvbWFpbiBsb2NhbGUgZW5zdXJlIHdlIHJlZGlyZWN0IHRvIHRoZVxuICAgICAgICAvLyBjb3JyZWN0IGRvbWFpblxuICAgICAgICBpZiAoXG4gICAgICAgICAgIWRpZE5hdmlnYXRlICYmXG4gICAgICAgICAgZGV0ZWN0ZWREb21haW4gJiZcbiAgICAgICAgICB0aGlzLmlzTG9jYWxlRG9tYWluICYmXG4gICAgICAgICAgc2VsZi5sb2NhdGlvbi5ob3N0bmFtZSAhPT0gZGV0ZWN0ZWREb21haW4uZG9tYWluXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IGFzTm9CYXNlUGF0aCA9IGRlbEJhc2VQYXRoKGFzKVxuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYGh0dHAke2RldGVjdGVkRG9tYWluLmh0dHAgPyAnJyA6ICdzJ306Ly8ke1xuICAgICAgICAgICAgZGV0ZWN0ZWREb21haW4uZG9tYWluXG4gICAgICAgICAgfSR7YWRkQmFzZVBhdGgoXG4gICAgICAgICAgICBgJHtcbiAgICAgICAgICAgICAgdGhpcy5sb2NhbGUgPT09IGRldGVjdGVkRG9tYWluLmRlZmF1bHRMb2NhbGVcbiAgICAgICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICAgICAgOiBgLyR7dGhpcy5sb2NhbGV9YFxuICAgICAgICAgICAgfSR7YXNOb0Jhc2VQYXRoID09PSAnLycgPyAnJyA6IGFzTm9CYXNlUGF0aH1gIHx8ICcvJ1xuICAgICAgICAgICl9YFxuICAgICAgICAgIC8vIHRoaXMgd2FzIHByZXZpb3VzbHkgYSByZXR1cm4gYnV0IHdhcyByZW1vdmVkIGluIGZhdm9yXG4gICAgICAgICAgLy8gb2YgYmV0dGVyIGRlYWQgY29kZSBlbGltaW5hdGlvbiB3aXRoIHJlZ2VuZXJhdG9yIHJ1bnRpbWVcbiAgICAgICAgICBkaWROYXZpZ2F0ZSA9IHRydWVcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZGlkTmF2aWdhdGUpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKCgpID0+IHt9KVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghKG9wdGlvbnMgYXMgYW55KS5faCkge1xuICAgICAgdGhpcy5pc1NzciA9IGZhbHNlXG4gICAgfVxuICAgIC8vIG1hcmtpbmcgcm91dGUgY2hhbmdlcyBhcyBhIG5hdmlnYXRpb24gc3RhcnQgZW50cnlcbiAgICBpZiAoU1QpIHtcbiAgICAgIHBlcmZvcm1hbmNlLm1hcmsoJ3JvdXRlQ2hhbmdlJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHNoYWxsb3cgPSBmYWxzZSB9ID0gb3B0aW9uc1xuICAgIGNvbnN0IHJvdXRlUHJvcHMgPSB7IHNoYWxsb3cgfVxuXG4gICAgaWYgKHRoaXMuX2luRmxpZ2h0Um91dGUpIHtcbiAgICAgIHRoaXMuYWJvcnRDb21wb25lbnRMb2FkKHRoaXMuX2luRmxpZ2h0Um91dGUsIHJvdXRlUHJvcHMpXG4gICAgfVxuXG4gICAgYXMgPSBhZGRCYXNlUGF0aChcbiAgICAgIGFkZExvY2FsZShcbiAgICAgICAgaGFzQmFzZVBhdGgoYXMpID8gZGVsQmFzZVBhdGgoYXMpIDogYXMsXG4gICAgICAgIG9wdGlvbnMubG9jYWxlLFxuICAgICAgICB0aGlzLmRlZmF1bHRMb2NhbGVcbiAgICAgIClcbiAgICApXG4gICAgY29uc3QgY2xlYW5lZEFzID0gZGVsTG9jYWxlKFxuICAgICAgaGFzQmFzZVBhdGgoYXMpID8gZGVsQmFzZVBhdGgoYXMpIDogYXMsXG4gICAgICB0aGlzLmxvY2FsZVxuICAgIClcbiAgICB0aGlzLl9pbkZsaWdodFJvdXRlID0gYXNcblxuICAgIC8vIElmIHRoZSB1cmwgY2hhbmdlIGlzIG9ubHkgcmVsYXRlZCB0byBhIGhhc2ggY2hhbmdlXG4gICAgLy8gV2Ugc2hvdWxkIG5vdCBwcm9jZWVkLiBXZSBzaG91bGQgb25seSBjaGFuZ2UgdGhlIHN0YXRlLlxuXG4gICAgLy8gV0FSTklORzogYF9oYCBpcyBhbiBpbnRlcm5hbCBvcHRpb24gZm9yIGhhbmRpbmcgTmV4dC5qcyBjbGllbnQtc2lkZVxuICAgIC8vIGh5ZHJhdGlvbi4gWW91ciBhcHAgc2hvdWxkIF9uZXZlcl8gdXNlIHRoaXMgcHJvcGVydHkuIEl0IG1heSBjaGFuZ2UgYXRcbiAgICAvLyBhbnkgdGltZSB3aXRob3V0IG5vdGljZS5cbiAgICBpZiAoIShvcHRpb25zIGFzIGFueSkuX2ggJiYgdGhpcy5vbmx5QUhhc2hDaGFuZ2UoY2xlYW5lZEFzKSkge1xuICAgICAgdGhpcy5hc1BhdGggPSBjbGVhbmVkQXNcbiAgICAgIFJvdXRlci5ldmVudHMuZW1pdCgnaGFzaENoYW5nZVN0YXJ0JywgYXMsIHJvdXRlUHJvcHMpXG4gICAgICAvLyBUT0RPOiBkbyB3ZSBuZWVkIHRoZSByZXNvbHZlZCBocmVmIHdoZW4gb25seSBhIGhhc2ggY2hhbmdlP1xuICAgICAgdGhpcy5jaGFuZ2VTdGF0ZShtZXRob2QsIHVybCwgYXMsIG9wdGlvbnMpXG4gICAgICB0aGlzLnNjcm9sbFRvSGFzaChjbGVhbmVkQXMpXG4gICAgICB0aGlzLm5vdGlmeSh0aGlzLmNvbXBvbmVudHNbdGhpcy5yb3V0ZV0sIG51bGwpXG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ2hhc2hDaGFuZ2VDb21wbGV0ZScsIGFzLCByb3V0ZVByb3BzKVxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICBsZXQgcGFyc2VkID0gcGFyc2VSZWxhdGl2ZVVybCh1cmwpXG4gICAgbGV0IHsgcGF0aG5hbWUsIHF1ZXJ5IH0gPSBwYXJzZWRcblxuICAgIC8vIFRoZSBidWlsZCBtYW5pZmVzdCBuZWVkcyB0byBiZSBsb2FkZWQgYmVmb3JlIGF1dG8tc3RhdGljIGR5bmFtaWMgcGFnZXNcbiAgICAvLyBnZXQgdGhlaXIgcXVlcnkgcGFyYW1ldGVycyB0byBhbGxvdyBlbnN1cmluZyB0aGV5IGNhbiBiZSBwYXJzZWQgcHJvcGVybHlcbiAgICAvLyB3aGVuIHJld3JpdHRlbiB0b1xuICAgIGxldCBwYWdlczogYW55LCByZXdyaXRlczogYW55XG4gICAgdHJ5IHtcbiAgICAgIHBhZ2VzID0gYXdhaXQgdGhpcy5wYWdlTG9hZGVyLmdldFBhZ2VMaXN0KClcbiAgICAgIDsoeyBfX3Jld3JpdGVzOiByZXdyaXRlcyB9ID0gYXdhaXQgZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCgpKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgLy8gSWYgd2UgZmFpbCB0byByZXNvbHZlIHRoZSBwYWdlIGxpc3Qgb3IgY2xpZW50LWJ1aWxkIG1hbmlmZXN0LCB3ZSBtdXN0XG4gICAgICAvLyBkbyBhIHNlcnZlci1zaWRlIHRyYW5zaXRpb246XG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGFzXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBwYXJzZWQgPSByZXNvbHZlRHluYW1pY1JvdXRlKHBhcnNlZCwgcGFnZXMpIGFzIHR5cGVvZiBwYXJzZWRcblxuICAgIGlmIChwYXJzZWQucGF0aG5hbWUgIT09IHBhdGhuYW1lKSB7XG4gICAgICBwYXRobmFtZSA9IHBhcnNlZC5wYXRobmFtZVxuICAgICAgdXJsID0gZm9ybWF0V2l0aFZhbGlkYXRpb24ocGFyc2VkKVxuICAgIH1cblxuICAgIC8vIHVybCBhbmQgYXMgc2hvdWxkIGFsd2F5cyBiZSBwcmVmaXhlZCB3aXRoIGJhc2VQYXRoIGJ5IHRoaXNcbiAgICAvLyBwb2ludCBieSBlaXRoZXIgbmV4dC9saW5rIG9yIHJvdXRlci5wdXNoL3JlcGxhY2Ugc28gc3RyaXAgdGhlXG4gICAgLy8gYmFzZVBhdGggZnJvbSB0aGUgcGF0aG5hbWUgdG8gbWF0Y2ggdGhlIHBhZ2VzIGRpciAxLXRvLTFcbiAgICBwYXRobmFtZSA9IHBhdGhuYW1lXG4gICAgICA/IHJlbW92ZVBhdGhUcmFpbGluZ1NsYXNoKGRlbEJhc2VQYXRoKHBhdGhuYW1lKSlcbiAgICAgIDogcGF0aG5hbWVcblxuICAgIC8vIElmIGFza2VkIHRvIGNoYW5nZSB0aGUgY3VycmVudCBVUkwgd2Ugc2hvdWxkIHJlbG9hZCB0aGUgY3VycmVudCBwYWdlXG4gICAgLy8gKG5vdCBsb2NhdGlvbi5yZWxvYWQoKSBidXQgcmVsb2FkIGdldEluaXRpYWxQcm9wcyBhbmQgb3RoZXIgTmV4dC5qcyBzdHVmZnMpXG4gICAgLy8gV2UgYWxzbyBuZWVkIHRvIHNldCB0aGUgbWV0aG9kID0gcmVwbGFjZVN0YXRlIGFsd2F5c1xuICAgIC8vIGFzIHRoaXMgc2hvdWxkIG5vdCBnbyBpbnRvIHRoZSBoaXN0b3J5IChUaGF0J3MgaG93IGJyb3dzZXJzIHdvcmspXG4gICAgLy8gV2Ugc2hvdWxkIGNvbXBhcmUgdGhlIG5ldyBhc1BhdGggdG8gdGhlIGN1cnJlbnQgYXNQYXRoLCBub3QgdGhlIHVybFxuICAgIGlmICghdGhpcy51cmxJc05ldyhjbGVhbmVkQXMpICYmICFsb2NhbGVDaGFuZ2UpIHtcbiAgICAgIG1ldGhvZCA9ICdyZXBsYWNlU3RhdGUnXG4gICAgfVxuXG4gICAgbGV0IHJvdXRlID0gcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gocGF0aG5hbWUpXG5cbiAgICAvLyB3ZSBuZWVkIHRvIHJlc29sdmUgdGhlIGFzIHZhbHVlIHVzaW5nIHJld3JpdGVzIGZvciBkeW5hbWljIFNTR1xuICAgIC8vIHBhZ2VzIHRvIGFsbG93IGJ1aWxkaW5nIHRoZSBkYXRhIFVSTCBjb3JyZWN0bHlcbiAgICBsZXQgcmVzb2x2ZWRBcyA9IGFzXG5cbiAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0hBU19SRVdSSVRFUyAmJiBhcy5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgIGNvbnN0IHJld3JpdGVzUmVzdWx0ID0gcmVzb2x2ZVJld3JpdGVzKFxuICAgICAgICBhZGRCYXNlUGF0aChhZGRMb2NhbGUoZGVsQmFzZVBhdGgoYXMpLCB0aGlzLmxvY2FsZSkpLFxuICAgICAgICBwYWdlcyxcbiAgICAgICAgcmV3cml0ZXMsXG4gICAgICAgIHF1ZXJ5LFxuICAgICAgICAocDogc3RyaW5nKSA9PiByZXNvbHZlRHluYW1pY1JvdXRlKHsgcGF0aG5hbWU6IHAgfSwgcGFnZXMpLnBhdGhuYW1lISxcbiAgICAgICAgdGhpcy5sb2NhbGVzXG4gICAgICApXG4gICAgICByZXNvbHZlZEFzID0gcmV3cml0ZXNSZXN1bHQuYXNQYXRoXG5cbiAgICAgIGlmIChyZXdyaXRlc1Jlc3VsdC5tYXRjaGVkUGFnZSAmJiByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWYpIHtcbiAgICAgICAgLy8gaWYgdGhpcyBkaXJlY3RseSBtYXRjaGVzIGEgcGFnZSB3ZSBuZWVkIHRvIHVwZGF0ZSB0aGUgaHJlZiB0b1xuICAgICAgICAvLyBhbGxvdyB0aGUgY29ycmVjdCBwYWdlIGNodW5rIHRvIGJlIGxvYWRlZFxuICAgICAgICByb3V0ZSA9IHJld3JpdGVzUmVzdWx0LnJlc29sdmVkSHJlZlxuICAgICAgICBwYXRobmFtZSA9IHJld3JpdGVzUmVzdWx0LnJlc29sdmVkSHJlZlxuICAgICAgICBwYXJzZWQucGF0aG5hbWUgPSBwYXRobmFtZVxuICAgICAgICB1cmwgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWQpXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFpc0xvY2FsVVJMKGFzKSkge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIGhyZWY6IFwiJHt1cmx9XCIgYW5kIGFzOiBcIiR7YXN9XCIsIHJlY2VpdmVkIHJlbGF0aXZlIGhyZWYgYW5kIGV4dGVybmFsIGFzYCArXG4gICAgICAgICAgICBgXFxuU2VlIG1vcmUgaW5mbzogaHR0cHM6Ly9lcnIuc2gvbmV4dC5qcy9pbnZhbGlkLXJlbGF0aXZlLXVybC1leHRlcm5hbC1hc2BcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGFzXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICByZXNvbHZlZEFzID0gZGVsTG9jYWxlKGRlbEJhc2VQYXRoKHJlc29sdmVkQXMpLCB0aGlzLmxvY2FsZSlcblxuICAgIGlmIChpc0R5bmFtaWNSb3V0ZShyb3V0ZSkpIHtcbiAgICAgIGNvbnN0IHBhcnNlZEFzID0gcGFyc2VSZWxhdGl2ZVVybChyZXNvbHZlZEFzKVxuICAgICAgY29uc3QgYXNQYXRobmFtZSA9IHBhcnNlZEFzLnBhdGhuYW1lXG5cbiAgICAgIGNvbnN0IHJvdXRlUmVnZXggPSBnZXRSb3V0ZVJlZ2V4KHJvdXRlKVxuICAgICAgY29uc3Qgcm91dGVNYXRjaCA9IGdldFJvdXRlTWF0Y2hlcihyb3V0ZVJlZ2V4KShhc1BhdGhuYW1lKVxuICAgICAgY29uc3Qgc2hvdWxkSW50ZXJwb2xhdGUgPSByb3V0ZSA9PT0gYXNQYXRobmFtZVxuICAgICAgY29uc3QgaW50ZXJwb2xhdGVkQXMgPSBzaG91bGRJbnRlcnBvbGF0ZVxuICAgICAgICA/IGludGVycG9sYXRlQXMocm91dGUsIGFzUGF0aG5hbWUsIHF1ZXJ5KVxuICAgICAgICA6ICh7fSBhcyB7IHJlc3VsdDogdW5kZWZpbmVkOyBwYXJhbXM6IHVuZGVmaW5lZCB9KVxuXG4gICAgICBpZiAoIXJvdXRlTWF0Y2ggfHwgKHNob3VsZEludGVycG9sYXRlICYmICFpbnRlcnBvbGF0ZWRBcy5yZXN1bHQpKSB7XG4gICAgICAgIGNvbnN0IG1pc3NpbmdQYXJhbXMgPSBPYmplY3Qua2V5cyhyb3V0ZVJlZ2V4Lmdyb3VwcykuZmlsdGVyKFxuICAgICAgICAgIChwYXJhbSkgPT4gIXF1ZXJ5W3BhcmFtXVxuICAgICAgICApXG5cbiAgICAgICAgaWYgKG1pc3NpbmdQYXJhbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgIGAke1xuICAgICAgICAgICAgICAgIHNob3VsZEludGVycG9sYXRlXG4gICAgICAgICAgICAgICAgICA/IGBJbnRlcnBvbGF0aW5nIGhyZWZgXG4gICAgICAgICAgICAgICAgICA6IGBNaXNtYXRjaGluZyBcXGBhc1xcYCBhbmQgXFxgaHJlZlxcYGBcbiAgICAgICAgICAgICAgfSBmYWlsZWQgdG8gbWFudWFsbHkgcHJvdmlkZSBgICtcbiAgICAgICAgICAgICAgICBgdGhlIHBhcmFtczogJHttaXNzaW5nUGFyYW1zLmpvaW4oXG4gICAgICAgICAgICAgICAgICAnLCAnXG4gICAgICAgICAgICAgICAgKX0gaW4gdGhlIFxcYGhyZWZcXGAncyBcXGBxdWVyeVxcYGBcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAoc2hvdWxkSW50ZXJwb2xhdGVcbiAgICAgICAgICAgICAgPyBgVGhlIHByb3ZpZGVkIFxcYGhyZWZcXGAgKCR7dXJsfSkgdmFsdWUgaXMgbWlzc2luZyBxdWVyeSB2YWx1ZXMgKCR7bWlzc2luZ1BhcmFtcy5qb2luKFxuICAgICAgICAgICAgICAgICAgJywgJ1xuICAgICAgICAgICAgICAgICl9KSB0byBiZSBpbnRlcnBvbGF0ZWQgcHJvcGVybHkuIGBcbiAgICAgICAgICAgICAgOiBgVGhlIHByb3ZpZGVkIFxcYGFzXFxgIHZhbHVlICgke2FzUGF0aG5hbWV9KSBpcyBpbmNvbXBhdGlibGUgd2l0aCB0aGUgXFxgaHJlZlxcYCB2YWx1ZSAoJHtyb3V0ZX0pLiBgKSArXG4gICAgICAgICAgICAgIGBSZWFkIG1vcmU6IGh0dHBzOi8vZXJyLnNoL3ZlcmNlbC9uZXh0LmpzLyR7XG4gICAgICAgICAgICAgICAgc2hvdWxkSW50ZXJwb2xhdGVcbiAgICAgICAgICAgICAgICAgID8gJ2hyZWYtaW50ZXJwb2xhdGlvbi1mYWlsZWQnXG4gICAgICAgICAgICAgICAgICA6ICdpbmNvbXBhdGlibGUtaHJlZi1hcydcbiAgICAgICAgICAgICAgfWBcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoc2hvdWxkSW50ZXJwb2xhdGUpIHtcbiAgICAgICAgYXMgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihcbiAgICAgICAgICBPYmplY3QuYXNzaWduKHt9LCBwYXJzZWRBcywge1xuICAgICAgICAgICAgcGF0aG5hbWU6IGludGVycG9sYXRlZEFzLnJlc3VsdCxcbiAgICAgICAgICAgIHF1ZXJ5OiBvbWl0UGFybXNGcm9tUXVlcnkocXVlcnksIGludGVycG9sYXRlZEFzLnBhcmFtcyEpLFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE1lcmdlIHBhcmFtcyBpbnRvIGBxdWVyeWAsIG92ZXJ3cml0aW5nIGFueSBzcGVjaWZpZWQgaW4gc2VhcmNoXG4gICAgICAgIE9iamVjdC5hc3NpZ24ocXVlcnksIHJvdXRlTWF0Y2gpXG4gICAgICB9XG4gICAgfVxuXG4gICAgUm91dGVyLmV2ZW50cy5lbWl0KCdyb3V0ZUNoYW5nZVN0YXJ0JywgYXMsIHJvdXRlUHJvcHMpXG5cbiAgICB0cnkge1xuICAgICAgbGV0IHJvdXRlSW5mbyA9IGF3YWl0IHRoaXMuZ2V0Um91dGVJbmZvKFxuICAgICAgICByb3V0ZSxcbiAgICAgICAgcGF0aG5hbWUsXG4gICAgICAgIHF1ZXJ5LFxuICAgICAgICBhcyxcbiAgICAgICAgcmVzb2x2ZWRBcyxcbiAgICAgICAgcm91dGVQcm9wc1xuICAgICAgKVxuICAgICAgbGV0IHsgZXJyb3IsIHByb3BzLCBfX05fU1NHLCBfX05fU1NQIH0gPSByb3V0ZUluZm9cblxuICAgICAgLy8gaGFuZGxlIHJlZGlyZWN0IG9uIGNsaWVudC10cmFuc2l0aW9uXG4gICAgICBpZiAoKF9fTl9TU0cgfHwgX19OX1NTUCkgJiYgcHJvcHMpIHtcbiAgICAgICAgaWYgKChwcm9wcyBhcyBhbnkpLnBhZ2VQcm9wcyAmJiAocHJvcHMgYXMgYW55KS5wYWdlUHJvcHMuX19OX1JFRElSRUNUKSB7XG4gICAgICAgICAgY29uc3QgZGVzdGluYXRpb24gPSAocHJvcHMgYXMgYW55KS5wYWdlUHJvcHMuX19OX1JFRElSRUNUXG5cbiAgICAgICAgICAvLyBjaGVjayBpZiBkZXN0aW5hdGlvbiBpcyBpbnRlcm5hbCAocmVzb2x2ZXMgdG8gYSBwYWdlKSBhbmQgYXR0ZW1wdFxuICAgICAgICAgIC8vIGNsaWVudC1uYXZpZ2F0aW9uIGlmIGl0IGlzIGZhbGxpbmcgYmFjayB0byBoYXJkIG5hdmlnYXRpb24gaWZcbiAgICAgICAgICAvLyBpdCdzIG5vdFxuICAgICAgICAgIGlmIChkZXN0aW5hdGlvbi5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZEhyZWYgPSBwYXJzZVJlbGF0aXZlVXJsKGRlc3RpbmF0aW9uKVxuICAgICAgICAgICAgcmVzb2x2ZUR5bmFtaWNSb3V0ZShwYXJzZWRIcmVmLCBwYWdlcywgZmFsc2UpXG5cbiAgICAgICAgICAgIGlmIChwYWdlcy5pbmNsdWRlcyhwYXJzZWRIcmVmLnBhdGhuYW1lKSkge1xuICAgICAgICAgICAgICBjb25zdCB7IHVybDogbmV3VXJsLCBhczogbmV3QXMgfSA9IHByZXBhcmVVcmxBcyhcbiAgICAgICAgICAgICAgICB0aGlzLFxuICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uLFxuICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlKG1ldGhvZCwgbmV3VXJsLCBuZXdBcywgb3B0aW9ucylcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGRlc3RpbmF0aW9uXG4gICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKCgpID0+IHt9KVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pc1ByZXZpZXcgPSAhIXByb3BzLl9fTl9QUkVWSUVXXG5cbiAgICAgICAgLy8gaGFuZGxlIFNTRyBkYXRhIDQwNFxuICAgICAgICBpZiAocHJvcHMubm90Rm91bmQgPT09IFNTR19EQVRBX05PVF9GT1VORCkge1xuICAgICAgICAgIGxldCBub3RGb3VuZFJvdXRlXG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5mZXRjaENvbXBvbmVudCgnLzQwNCcpXG4gICAgICAgICAgICBub3RGb3VuZFJvdXRlID0gJy80MDQnXG4gICAgICAgICAgfSBjYXRjaCAoXykge1xuICAgICAgICAgICAgbm90Rm91bmRSb3V0ZSA9ICcvX2Vycm9yJ1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJvdXRlSW5mbyA9IGF3YWl0IHRoaXMuZ2V0Um91dGVJbmZvKFxuICAgICAgICAgICAgbm90Rm91bmRSb3V0ZSxcbiAgICAgICAgICAgIG5vdEZvdW5kUm91dGUsXG4gICAgICAgICAgICBxdWVyeSxcbiAgICAgICAgICAgIGFzLFxuICAgICAgICAgICAgcmVzb2x2ZWRBcyxcbiAgICAgICAgICAgIHsgc2hhbGxvdzogZmFsc2UgfVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ2JlZm9yZUhpc3RvcnlDaGFuZ2UnLCBhcywgcm91dGVQcm9wcylcbiAgICAgIHRoaXMuY2hhbmdlU3RhdGUobWV0aG9kLCB1cmwsIGFzLCBvcHRpb25zKVxuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBjb25zdCBhcHBDb21wOiBhbnkgPSB0aGlzLmNvbXBvbmVudHNbJy9fYXBwJ10uQ29tcG9uZW50XG4gICAgICAgIDsod2luZG93IGFzIGFueSkubmV4dC5pc1ByZXJlbmRlcmVkID1cbiAgICAgICAgICBhcHBDb21wLmdldEluaXRpYWxQcm9wcyA9PT0gYXBwQ29tcC5vcmlnR2V0SW5pdGlhbFByb3BzICYmXG4gICAgICAgICAgIShyb3V0ZUluZm8uQ29tcG9uZW50IGFzIGFueSkuZ2V0SW5pdGlhbFByb3BzXG4gICAgICB9XG5cbiAgICAgIC8vIHNoYWxsb3cgcm91dGluZyBpcyBvbmx5IGFsbG93ZWQgZm9yIHNhbWUgcGFnZSBVUkwgY2hhbmdlcy5cbiAgICAgIGNvbnN0IGlzVmFsaWRTaGFsbG93Um91dGUgPSBvcHRpb25zLnNoYWxsb3cgJiYgdGhpcy5yb3V0ZSA9PT0gcm91dGVcblxuICAgICAgaWYgKFxuICAgICAgICAob3B0aW9ucyBhcyBhbnkpLl9oICYmXG4gICAgICAgIHBhdGhuYW1lID09PSAnL19lcnJvcicgJiZcbiAgICAgICAgc2VsZi5fX05FWFRfREFUQV9fLnByb3BzPy5wYWdlUHJvcHM/LnN0YXR1c0NvZGUgPT09IDUwMCAmJlxuICAgICAgICBwcm9wcz8ucGFnZVByb3BzXG4gICAgICApIHtcbiAgICAgICAgLy8gZW5zdXJlIHN0YXR1c0NvZGUgaXMgc3RpbGwgY29ycmVjdCBmb3Igc3RhdGljIDUwMCBwYWdlXG4gICAgICAgIC8vIHdoZW4gdXBkYXRpbmcgcXVlcnkgaW5mb3JtYXRpb25cbiAgICAgICAgcHJvcHMucGFnZVByb3BzLnN0YXR1c0NvZGUgPSA1MDBcbiAgICAgIH1cblxuICAgICAgYXdhaXQgdGhpcy5zZXQoXG4gICAgICAgIHJvdXRlLFxuICAgICAgICBwYXRobmFtZSEsXG4gICAgICAgIHF1ZXJ5LFxuICAgICAgICBjbGVhbmVkQXMsXG4gICAgICAgIHJvdXRlSW5mbyxcbiAgICAgICAgZm9yY2VkU2Nyb2xsIHx8XG4gICAgICAgICAgKGlzVmFsaWRTaGFsbG93Um91dGUgfHwgIW9wdGlvbnMuc2Nyb2xsID8gbnVsbCA6IHsgeDogMCwgeTogMCB9KVxuICAgICAgKS5jYXRjaCgoZSkgPT4ge1xuICAgICAgICBpZiAoZS5jYW5jZWxsZWQpIGVycm9yID0gZXJyb3IgfHwgZVxuICAgICAgICBlbHNlIHRocm93IGVcbiAgICAgIH0pXG5cbiAgICAgIGlmIChlcnJvcikge1xuICAgICAgICBSb3V0ZXIuZXZlbnRzLmVtaXQoJ3JvdXRlQ2hhbmdlRXJyb3InLCBlcnJvciwgY2xlYW5lZEFzLCByb3V0ZVByb3BzKVxuICAgICAgICB0aHJvdyBlcnJvclxuICAgICAgfVxuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX0kxOE5fU1VQUE9SVCkge1xuICAgICAgICBpZiAodGhpcy5sb2NhbGUpIHtcbiAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZyA9IHRoaXMubG9jYWxlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFJvdXRlci5ldmVudHMuZW1pdCgncm91dGVDaGFuZ2VDb21wbGV0ZScsIGFzLCByb3V0ZVByb3BzKVxuXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVyci5jYW5jZWxsZWQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgICB0aHJvdyBlcnJcbiAgICB9XG4gIH1cblxuICBjaGFuZ2VTdGF0ZShcbiAgICBtZXRob2Q6IEhpc3RvcnlNZXRob2QsXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYXM6IHN0cmluZyxcbiAgICBvcHRpb25zOiBUcmFuc2l0aW9uT3B0aW9ucyA9IHt9XG4gICk6IHZvaWQge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICBpZiAodHlwZW9mIHdpbmRvdy5oaXN0b3J5ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBXYXJuaW5nOiB3aW5kb3cuaGlzdG9yeSBpcyBub3QgYXZhaWxhYmxlLmApXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIHdpbmRvdy5oaXN0b3J5W21ldGhvZF0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFdhcm5pbmc6IHdpbmRvdy5oaXN0b3J5LiR7bWV0aG9kfSBpcyBub3QgYXZhaWxhYmxlYClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG1ldGhvZCAhPT0gJ3B1c2hTdGF0ZScgfHwgZ2V0VVJMKCkgIT09IGFzKSB7XG4gICAgICB0aGlzLl9zaGFsbG93ID0gb3B0aW9ucy5zaGFsbG93XG4gICAgICB3aW5kb3cuaGlzdG9yeVttZXRob2RdKFxuICAgICAgICB7XG4gICAgICAgICAgdXJsLFxuICAgICAgICAgIGFzLFxuICAgICAgICAgIG9wdGlvbnMsXG4gICAgICAgICAgX19OOiB0cnVlLFxuICAgICAgICAgIGlkeDogdGhpcy5faWR4ID0gbWV0aG9kICE9PSAncHVzaFN0YXRlJyA/IHRoaXMuX2lkeCA6IHRoaXMuX2lkeCArIDEsXG4gICAgICAgIH0gYXMgSGlzdG9yeVN0YXRlLFxuICAgICAgICAvLyBNb3N0IGJyb3dzZXJzIGN1cnJlbnRseSBpZ25vcmVzIHRoaXMgcGFyYW1ldGVyLCBhbHRob3VnaCB0aGV5IG1heSB1c2UgaXQgaW4gdGhlIGZ1dHVyZS5cbiAgICAgICAgLy8gUGFzc2luZyB0aGUgZW1wdHkgc3RyaW5nIGhlcmUgc2hvdWxkIGJlIHNhZmUgYWdhaW5zdCBmdXR1cmUgY2hhbmdlcyB0byB0aGUgbWV0aG9kLlxuICAgICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvSGlzdG9yeS9yZXBsYWNlU3RhdGVcbiAgICAgICAgJycsXG4gICAgICAgIGFzXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgaGFuZGxlUm91dGVJbmZvRXJyb3IoXG4gICAgZXJyOiBFcnJvciAmIHsgY29kZTogYW55OyBjYW5jZWxsZWQ6IGJvb2xlYW4gfSxcbiAgICBwYXRobmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSxcbiAgICBhczogc3RyaW5nLFxuICAgIHJvdXRlUHJvcHM6IFJvdXRlUHJvcGVydGllcyxcbiAgICBsb2FkRXJyb3JGYWlsPzogYm9vbGVhblxuICApOiBQcm9taXNlPENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbz4ge1xuICAgIGlmIChlcnIuY2FuY2VsbGVkKSB7XG4gICAgICAvLyBidWJibGUgdXAgY2FuY2VsbGF0aW9uIGVycm9yc1xuICAgICAgdGhyb3cgZXJyXG4gICAgfVxuXG4gICAgaWYgKGlzQXNzZXRFcnJvcihlcnIpIHx8IGxvYWRFcnJvckZhaWwpIHtcbiAgICAgIFJvdXRlci5ldmVudHMuZW1pdCgncm91dGVDaGFuZ2VFcnJvcicsIGVyciwgYXMsIHJvdXRlUHJvcHMpXG5cbiAgICAgIC8vIElmIHdlIGNhbid0IGxvYWQgdGhlIHBhZ2UgaXQgY291bGQgYmUgb25lIG9mIGZvbGxvd2luZyByZWFzb25zXG4gICAgICAvLyAgMS4gUGFnZSBkb2Vzbid0IGV4aXN0c1xuICAgICAgLy8gIDIuIFBhZ2UgZG9lcyBleGlzdCBpbiBhIGRpZmZlcmVudCB6b25lXG4gICAgICAvLyAgMy4gSW50ZXJuYWwgZXJyb3Igd2hpbGUgbG9hZGluZyB0aGUgcGFnZVxuXG4gICAgICAvLyBTbywgZG9pbmcgYSBoYXJkIHJlbG9hZCBpcyB0aGUgcHJvcGVyIHdheSB0byBkZWFsIHdpdGggdGhpcy5cbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gYXNcblxuICAgICAgLy8gQ2hhbmdpbmcgdGhlIFVSTCBkb2Vzbid0IGJsb2NrIGV4ZWN1dGluZyB0aGUgY3VycmVudCBjb2RlIHBhdGguXG4gICAgICAvLyBTbyBsZXQncyB0aHJvdyBhIGNhbmNlbGxhdGlvbiBlcnJvciBzdG9wIHRoZSByb3V0aW5nIGxvZ2ljLlxuICAgICAgdGhyb3cgYnVpbGRDYW5jZWxsYXRpb25FcnJvcigpXG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIGxldCBDb21wb25lbnQ6IENvbXBvbmVudFR5cGVcbiAgICAgIGxldCBzdHlsZVNoZWV0czogU3R5bGVTaGVldFR1cGxlW11cbiAgICAgIGxldCBwcm9wczogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZFxuXG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBDb21wb25lbnQhID09PSAndW5kZWZpbmVkJyB8fFxuICAgICAgICB0eXBlb2Ygc3R5bGVTaGVldHMhID09PSAndW5kZWZpbmVkJ1xuICAgICAgKSB7XG4gICAgICAgIDsoeyBwYWdlOiBDb21wb25lbnQsIHN0eWxlU2hlZXRzIH0gPSBhd2FpdCB0aGlzLmZldGNoQ29tcG9uZW50KFxuICAgICAgICAgICcvX2Vycm9yJ1xuICAgICAgICApKVxuICAgICAgfVxuXG4gICAgICBjb25zdCByb3V0ZUluZm86IENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbyA9IHtcbiAgICAgICAgcHJvcHMsXG4gICAgICAgIENvbXBvbmVudCxcbiAgICAgICAgc3R5bGVTaGVldHMsXG4gICAgICAgIGVycixcbiAgICAgICAgZXJyb3I6IGVycixcbiAgICAgIH1cblxuICAgICAgaWYgKCFyb3V0ZUluZm8ucHJvcHMpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICByb3V0ZUluZm8ucHJvcHMgPSBhd2FpdCB0aGlzLmdldEluaXRpYWxQcm9wcyhDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGVycixcbiAgICAgICAgICAgIHBhdGhuYW1lLFxuICAgICAgICAgICAgcXVlcnksXG4gICAgICAgICAgfSBhcyBhbnkpXG4gICAgICAgIH0gY2F0Y2ggKGdpcEVycikge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGluIGVycm9yIHBhZ2UgYGdldEluaXRpYWxQcm9wc2A6ICcsIGdpcEVycilcbiAgICAgICAgICByb3V0ZUluZm8ucHJvcHMgPSB7fVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByb3V0ZUluZm9cbiAgICB9IGNhdGNoIChyb3V0ZUluZm9FcnIpIHtcbiAgICAgIHJldHVybiB0aGlzLmhhbmRsZVJvdXRlSW5mb0Vycm9yKFxuICAgICAgICByb3V0ZUluZm9FcnIsXG4gICAgICAgIHBhdGhuYW1lLFxuICAgICAgICBxdWVyeSxcbiAgICAgICAgYXMsXG4gICAgICAgIHJvdXRlUHJvcHMsXG4gICAgICAgIHRydWVcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBhc3luYyBnZXRSb3V0ZUluZm8oXG4gICAgcm91dGU6IHN0cmluZyxcbiAgICBwYXRobmFtZTogc3RyaW5nLFxuICAgIHF1ZXJ5OiBhbnksXG4gICAgYXM6IHN0cmluZyxcbiAgICByZXNvbHZlZEFzOiBzdHJpbmcsXG4gICAgcm91dGVQcm9wczogUm91dGVQcm9wZXJ0aWVzXG4gICk6IFByb21pc2U8UHJpdmF0ZVJvdXRlSW5mbz4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBleGlzdGluZ1JvdXRlSW5mbzogUHJpdmF0ZVJvdXRlSW5mbyB8IHVuZGVmaW5lZCA9IHRoaXMuY29tcG9uZW50c1tcbiAgICAgICAgcm91dGVcbiAgICAgIF1cbiAgICAgIGlmIChyb3V0ZVByb3BzLnNoYWxsb3cgJiYgZXhpc3RpbmdSb3V0ZUluZm8gJiYgdGhpcy5yb3V0ZSA9PT0gcm91dGUpIHtcbiAgICAgICAgcmV0dXJuIGV4aXN0aW5nUm91dGVJbmZvXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNhY2hlZFJvdXRlSW5mbzogQ29tcGxldGVQcml2YXRlUm91dGVJbmZvIHwgdW5kZWZpbmVkID1cbiAgICAgICAgZXhpc3RpbmdSb3V0ZUluZm8gJiYgJ2luaXRpYWwnIGluIGV4aXN0aW5nUm91dGVJbmZvXG4gICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICA6IGV4aXN0aW5nUm91dGVJbmZvXG4gICAgICBjb25zdCByb3V0ZUluZm86IENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbyA9IGNhY2hlZFJvdXRlSW5mb1xuICAgICAgICA/IGNhY2hlZFJvdXRlSW5mb1xuICAgICAgICA6IGF3YWl0IHRoaXMuZmV0Y2hDb21wb25lbnQocm91dGUpLnRoZW4oKHJlcykgPT4gKHtcbiAgICAgICAgICAgIENvbXBvbmVudDogcmVzLnBhZ2UsXG4gICAgICAgICAgICBzdHlsZVNoZWV0czogcmVzLnN0eWxlU2hlZXRzLFxuICAgICAgICAgICAgX19OX1NTRzogcmVzLm1vZC5fX05fU1NHLFxuICAgICAgICAgICAgX19OX1NTUDogcmVzLm1vZC5fX05fU1NQLFxuICAgICAgICAgIH0pKVxuXG4gICAgICBjb25zdCB7IENvbXBvbmVudCwgX19OX1NTRywgX19OX1NTUCB9ID0gcm91dGVJbmZvXG5cbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIGNvbnN0IHsgaXNWYWxpZEVsZW1lbnRUeXBlIH0gPSByZXF1aXJlKCdyZWFjdC1pcycpXG4gICAgICAgIGlmICghaXNWYWxpZEVsZW1lbnRUeXBlKENvbXBvbmVudCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICBgVGhlIGRlZmF1bHQgZXhwb3J0IGlzIG5vdCBhIFJlYWN0IENvbXBvbmVudCBpbiBwYWdlOiBcIiR7cGF0aG5hbWV9XCJgXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxldCBkYXRhSHJlZjogc3RyaW5nIHwgdW5kZWZpbmVkXG5cbiAgICAgIGlmIChfX05fU1NHIHx8IF9fTl9TU1ApIHtcbiAgICAgICAgZGF0YUhyZWYgPSB0aGlzLnBhZ2VMb2FkZXIuZ2V0RGF0YUhyZWYoXG4gICAgICAgICAgZm9ybWF0V2l0aFZhbGlkYXRpb24oeyBwYXRobmFtZSwgcXVlcnkgfSksXG4gICAgICAgICAgcmVzb2x2ZWRBcyxcbiAgICAgICAgICBfX05fU1NHLFxuICAgICAgICAgIHRoaXMubG9jYWxlXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgY29uc3QgcHJvcHMgPSBhd2FpdCB0aGlzLl9nZXREYXRhPENvbXBsZXRlUHJpdmF0ZVJvdXRlSW5mbz4oKCkgPT5cbiAgICAgICAgX19OX1NTR1xuICAgICAgICAgID8gdGhpcy5fZ2V0U3RhdGljRGF0YShkYXRhSHJlZiEpXG4gICAgICAgICAgOiBfX05fU1NQXG4gICAgICAgICAgPyB0aGlzLl9nZXRTZXJ2ZXJEYXRhKGRhdGFIcmVmISlcbiAgICAgICAgICA6IHRoaXMuZ2V0SW5pdGlhbFByb3BzKFxuICAgICAgICAgICAgICBDb21wb25lbnQsXG4gICAgICAgICAgICAgIC8vIHdlIHByb3ZpZGUgQXBwVHJlZSBsYXRlciBzbyB0aGlzIG5lZWRzIHRvIGJlIGBhbnlgXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwYXRobmFtZSxcbiAgICAgICAgICAgICAgICBxdWVyeSxcbiAgICAgICAgICAgICAgICBhc1BhdGg6IGFzLFxuICAgICAgICAgICAgICB9IGFzIGFueVxuICAgICAgICAgICAgKVxuICAgICAgKVxuXG4gICAgICByb3V0ZUluZm8ucHJvcHMgPSBwcm9wc1xuICAgICAgdGhpcy5jb21wb25lbnRzW3JvdXRlXSA9IHJvdXRlSW5mb1xuICAgICAgcmV0dXJuIHJvdXRlSW5mb1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHRoaXMuaGFuZGxlUm91dGVJbmZvRXJyb3IoZXJyLCBwYXRobmFtZSwgcXVlcnksIGFzLCByb3V0ZVByb3BzKVxuICAgIH1cbiAgfVxuXG4gIHNldChcbiAgICByb3V0ZTogc3RyaW5nLFxuICAgIHBhdGhuYW1lOiBzdHJpbmcsXG4gICAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5LFxuICAgIGFzOiBzdHJpbmcsXG4gICAgZGF0YTogUHJpdmF0ZVJvdXRlSW5mbyxcbiAgICByZXNldFNjcm9sbDogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9IHwgbnVsbFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmlzRmFsbGJhY2sgPSBmYWxzZVxuXG4gICAgdGhpcy5yb3V0ZSA9IHJvdXRlXG4gICAgdGhpcy5wYXRobmFtZSA9IHBhdGhuYW1lXG4gICAgdGhpcy5xdWVyeSA9IHF1ZXJ5XG4gICAgdGhpcy5hc1BhdGggPSBhc1xuICAgIHJldHVybiB0aGlzLm5vdGlmeShkYXRhLCByZXNldFNjcm9sbClcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB0byBleGVjdXRlIGJlZm9yZSByZXBsYWNpbmcgcm91dGVyIHN0YXRlXG4gICAqIEBwYXJhbSBjYiBjYWxsYmFjayB0byBiZSBleGVjdXRlZFxuICAgKi9cbiAgYmVmb3JlUG9wU3RhdGUoY2I6IEJlZm9yZVBvcFN0YXRlQ2FsbGJhY2spIHtcbiAgICB0aGlzLl9icHMgPSBjYlxuICB9XG5cbiAgb25seUFIYXNoQ2hhbmdlKGFzOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuYXNQYXRoKSByZXR1cm4gZmFsc2VcbiAgICBjb25zdCBbb2xkVXJsTm9IYXNoLCBvbGRIYXNoXSA9IHRoaXMuYXNQYXRoLnNwbGl0KCcjJylcbiAgICBjb25zdCBbbmV3VXJsTm9IYXNoLCBuZXdIYXNoXSA9IGFzLnNwbGl0KCcjJylcblxuICAgIC8vIE1ha2VzIHN1cmUgd2Ugc2Nyb2xsIHRvIHRoZSBwcm92aWRlZCBoYXNoIGlmIHRoZSB1cmwvaGFzaCBhcmUgdGhlIHNhbWVcbiAgICBpZiAobmV3SGFzaCAmJiBvbGRVcmxOb0hhc2ggPT09IG5ld1VybE5vSGFzaCAmJiBvbGRIYXNoID09PSBuZXdIYXNoKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIHRoZSB1cmxzIGFyZSBjaGFuZ2UsIHRoZXJlJ3MgbW9yZSB0aGFuIGEgaGFzaCBjaGFuZ2VcbiAgICBpZiAob2xkVXJsTm9IYXNoICE9PSBuZXdVcmxOb0hhc2gpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIC8vIElmIHRoZSBoYXNoIGhhcyBjaGFuZ2VkLCB0aGVuIGl0J3MgYSBoYXNoIG9ubHkgY2hhbmdlLlxuICAgIC8vIFRoaXMgY2hlY2sgaXMgbmVjZXNzYXJ5IHRvIGhhbmRsZSBib3RoIHRoZSBlbnRlciBhbmRcbiAgICAvLyBsZWF2ZSBoYXNoID09PSAnJyBjYXNlcy4gVGhlIGlkZW50aXR5IGNhc2UgZmFsbHMgdGhyb3VnaFxuICAgIC8vIGFuZCBpcyB0cmVhdGVkIGFzIGEgbmV4dCByZWxvYWQuXG4gICAgcmV0dXJuIG9sZEhhc2ggIT09IG5ld0hhc2hcbiAgfVxuXG4gIHNjcm9sbFRvSGFzaChhczogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgWywgaGFzaF0gPSBhcy5zcGxpdCgnIycpXG4gICAgLy8gU2Nyb2xsIHRvIHRvcCBpZiB0aGUgaGFzaCBpcyBqdXN0IGAjYCB3aXRoIG5vIHZhbHVlIG9yIGAjdG9wYFxuICAgIC8vIFRvIG1pcnJvciBicm93c2Vyc1xuICAgIGlmIChoYXNoID09PSAnJyB8fCBoYXNoID09PSAndG9wJykge1xuICAgICAgd2luZG93LnNjcm9sbFRvKDAsIDApXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBGaXJzdCB3ZSBjaGVjayBpZiB0aGUgZWxlbWVudCBieSBpZCBpcyBmb3VuZFxuICAgIGNvbnN0IGlkRWwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChoYXNoKVxuICAgIGlmIChpZEVsKSB7XG4gICAgICBpZEVsLnNjcm9sbEludG9WaWV3KClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICAvLyBJZiB0aGVyZSdzIG5vIGVsZW1lbnQgd2l0aCB0aGUgaWQsIHdlIGNoZWNrIHRoZSBgbmFtZWAgcHJvcGVydHlcbiAgICAvLyBUbyBtaXJyb3IgYnJvd3NlcnNcbiAgICBjb25zdCBuYW1lRWwgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZShoYXNoKVswXVxuICAgIGlmIChuYW1lRWwpIHtcbiAgICAgIG5hbWVFbC5zY3JvbGxJbnRvVmlldygpXG4gICAgfVxuICB9XG5cbiAgdXJsSXNOZXcoYXNQYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hc1BhdGggIT09IGFzUGF0aFxuICB9XG5cbiAgLyoqXG4gICAqIFByZWZldGNoIHBhZ2UgY29kZSwgeW91IG1heSB3YWl0IGZvciB0aGUgZGF0YSBkdXJpbmcgcGFnZSByZW5kZXJpbmcuXG4gICAqIFRoaXMgZmVhdHVyZSBvbmx5IHdvcmtzIGluIHByb2R1Y3Rpb24hXG4gICAqIEBwYXJhbSB1cmwgdGhlIGhyZWYgb2YgcHJlZmV0Y2hlZCBwYWdlXG4gICAqIEBwYXJhbSBhc1BhdGggdGhlIGFzIHBhdGggb2YgdGhlIHByZWZldGNoZWQgcGFnZVxuICAgKi9cbiAgYXN5bmMgcHJlZmV0Y2goXG4gICAgdXJsOiBzdHJpbmcsXG4gICAgYXNQYXRoOiBzdHJpbmcgPSB1cmwsXG4gICAgb3B0aW9uczogUHJlZmV0Y2hPcHRpb25zID0ge31cbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbGV0IHBhcnNlZCA9IHBhcnNlUmVsYXRpdmVVcmwodXJsKVxuXG4gICAgbGV0IHsgcGF0aG5hbWUgfSA9IHBhcnNlZFxuXG4gICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9JMThOX1NVUFBPUlQpIHtcbiAgICAgIGlmIChvcHRpb25zLmxvY2FsZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgcGF0aG5hbWUgPSBub3JtYWxpemVMb2NhbGVQYXRoIShwYXRobmFtZSwgdGhpcy5sb2NhbGVzKS5wYXRobmFtZVxuICAgICAgICBwYXJzZWQucGF0aG5hbWUgPSBwYXRobmFtZVxuICAgICAgICB1cmwgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWQpXG5cbiAgICAgICAgbGV0IHBhcnNlZEFzID0gcGFyc2VSZWxhdGl2ZVVybChhc1BhdGgpXG4gICAgICAgIGNvbnN0IGxvY2FsZVBhdGhSZXN1bHQgPSBub3JtYWxpemVMb2NhbGVQYXRoIShcbiAgICAgICAgICBwYXJzZWRBcy5wYXRobmFtZSxcbiAgICAgICAgICB0aGlzLmxvY2FsZXNcbiAgICAgICAgKVxuICAgICAgICBwYXJzZWRBcy5wYXRobmFtZSA9IGxvY2FsZVBhdGhSZXN1bHQucGF0aG5hbWVcbiAgICAgICAgb3B0aW9ucy5sb2NhbGUgPSBsb2NhbGVQYXRoUmVzdWx0LmRldGVjdGVkTG9jYWxlIHx8IHRoaXMuZGVmYXVsdExvY2FsZVxuICAgICAgICBhc1BhdGggPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWRBcylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwYWdlcyA9IGF3YWl0IHRoaXMucGFnZUxvYWRlci5nZXRQYWdlTGlzdCgpXG5cbiAgICBwYXJzZWQgPSByZXNvbHZlRHluYW1pY1JvdXRlKHBhcnNlZCwgcGFnZXMsIGZhbHNlKSBhcyB0eXBlb2YgcGFyc2VkXG5cbiAgICBpZiAocGFyc2VkLnBhdGhuYW1lICE9PSBwYXRobmFtZSkge1xuICAgICAgcGF0aG5hbWUgPSBwYXJzZWQucGF0aG5hbWVcbiAgICAgIHVybCA9IGZvcm1hdFdpdGhWYWxpZGF0aW9uKHBhcnNlZClcbiAgICB9XG4gICAgbGV0IHJvdXRlID0gcmVtb3ZlUGF0aFRyYWlsaW5nU2xhc2gocGF0aG5hbWUpXG4gICAgbGV0IHJlc29sdmVkQXMgPSBhc1BhdGhcblxuICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfSEFTX1JFV1JJVEVTICYmIGFzUGF0aC5zdGFydHNXaXRoKCcvJykpIHtcbiAgICAgIGxldCByZXdyaXRlczogYW55W11cbiAgICAgIDsoeyBfX3Jld3JpdGVzOiByZXdyaXRlcyB9ID0gYXdhaXQgZ2V0Q2xpZW50QnVpbGRNYW5pZmVzdCgpKVxuXG4gICAgICBjb25zdCByZXdyaXRlc1Jlc3VsdCA9IHJlc29sdmVSZXdyaXRlcyhcbiAgICAgICAgYWRkQmFzZVBhdGgoYWRkTG9jYWxlKGRlbEJhc2VQYXRoKGFzUGF0aCksIHRoaXMubG9jYWxlKSksXG4gICAgICAgIHBhZ2VzLFxuICAgICAgICByZXdyaXRlcyxcbiAgICAgICAgcGFyc2VkLnF1ZXJ5LFxuICAgICAgICAocDogc3RyaW5nKSA9PiByZXNvbHZlRHluYW1pY1JvdXRlKHsgcGF0aG5hbWU6IHAgfSwgcGFnZXMpLnBhdGhuYW1lISxcbiAgICAgICAgdGhpcy5sb2NhbGVzXG4gICAgICApXG5cbiAgICAgIGlmIChyZXdyaXRlc1Jlc3VsdC5tYXRjaGVkUGFnZSAmJiByZXdyaXRlc1Jlc3VsdC5yZXNvbHZlZEhyZWYpIHtcbiAgICAgICAgLy8gaWYgdGhpcyBkaXJlY3RseSBtYXRjaGVzIGEgcGFnZSB3ZSBuZWVkIHRvIHVwZGF0ZSB0aGUgaHJlZiB0b1xuICAgICAgICAvLyBhbGxvdyB0aGUgY29ycmVjdCBwYWdlIGNodW5rIHRvIGJlIGxvYWRlZFxuICAgICAgICByb3V0ZSA9IHJld3JpdGVzUmVzdWx0LnJlc29sdmVkSHJlZlxuICAgICAgICBwYXRobmFtZSA9IHJld3JpdGVzUmVzdWx0LnJlc29sdmVkSHJlZlxuICAgICAgICBwYXJzZWQucGF0aG5hbWUgPSBwYXRobmFtZVxuICAgICAgICB1cmwgPSBmb3JtYXRXaXRoVmFsaWRhdGlvbihwYXJzZWQpXG4gICAgICAgIHJlc29sdmVkQXMgPSByZXdyaXRlc1Jlc3VsdC5hc1BhdGhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQcmVmZXRjaCBpcyBub3Qgc3VwcG9ydGVkIGluIGRldmVsb3BtZW50IG1vZGUgYmVjYXVzZSBpdCB3b3VsZCB0cmlnZ2VyIG9uLWRlbWFuZC1lbnRyaWVzXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIHRoaXMucGFnZUxvYWRlci5faXNTc2codXJsKS50aGVuKChpc1NzZzogYm9vbGVhbikgPT4ge1xuICAgICAgICByZXR1cm4gaXNTc2dcbiAgICAgICAgICA/IHRoaXMuX2dldFN0YXRpY0RhdGEoXG4gICAgICAgICAgICAgIHRoaXMucGFnZUxvYWRlci5nZXREYXRhSHJlZihcbiAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgcmVzb2x2ZWRBcyxcbiAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgIHR5cGVvZiBvcHRpb25zLmxvY2FsZSAhPT0gJ3VuZGVmaW5lZCdcbiAgICAgICAgICAgICAgICAgID8gb3B0aW9ucy5sb2NhbGVcbiAgICAgICAgICAgICAgICAgIDogdGhpcy5sb2NhbGVcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogZmFsc2VcbiAgICAgIH0pLFxuICAgICAgdGhpcy5wYWdlTG9hZGVyW29wdGlvbnMucHJpb3JpdHkgPyAnbG9hZFBhZ2UnIDogJ3ByZWZldGNoJ10ocm91dGUpLFxuICAgIF0pXG4gIH1cblxuICBhc3luYyBmZXRjaENvbXBvbmVudChyb3V0ZTogc3RyaW5nKTogUHJvbWlzZTxHb29kUGFnZUNhY2hlPiB7XG4gICAgbGV0IGNhbmNlbGxlZCA9IGZhbHNlXG4gICAgY29uc3QgY2FuY2VsID0gKHRoaXMuY2xjID0gKCkgPT4ge1xuICAgICAgY2FuY2VsbGVkID0gdHJ1ZVxuICAgIH0pXG5cbiAgICBjb25zdCBjb21wb25lbnRSZXN1bHQgPSBhd2FpdCB0aGlzLnBhZ2VMb2FkZXIubG9hZFBhZ2Uocm91dGUpXG5cbiAgICBpZiAoY2FuY2VsbGVkKSB7XG4gICAgICBjb25zdCBlcnJvcjogYW55ID0gbmV3IEVycm9yKFxuICAgICAgICBgQWJvcnQgZmV0Y2hpbmcgY29tcG9uZW50IGZvciByb3V0ZTogXCIke3JvdXRlfVwiYFxuICAgICAgKVxuICAgICAgZXJyb3IuY2FuY2VsbGVkID0gdHJ1ZVxuICAgICAgdGhyb3cgZXJyb3JcbiAgICB9XG5cbiAgICBpZiAoY2FuY2VsID09PSB0aGlzLmNsYykge1xuICAgICAgdGhpcy5jbGMgPSBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudFJlc3VsdFxuICB9XG5cbiAgX2dldERhdGE8VD4oZm46ICgpID0+IFByb21pc2U8VD4pOiBQcm9taXNlPFQ+IHtcbiAgICBsZXQgY2FuY2VsbGVkID0gZmFsc2VcbiAgICBjb25zdCBjYW5jZWwgPSAoKSA9PiB7XG4gICAgICBjYW5jZWxsZWQgPSB0cnVlXG4gICAgfVxuICAgIHRoaXMuY2xjID0gY2FuY2VsXG4gICAgcmV0dXJuIGZuKCkudGhlbigoZGF0YSkgPT4ge1xuICAgICAgaWYgKGNhbmNlbCA9PT0gdGhpcy5jbGMpIHtcbiAgICAgICAgdGhpcy5jbGMgPSBudWxsXG4gICAgICB9XG5cbiAgICAgIGlmIChjYW5jZWxsZWQpIHtcbiAgICAgICAgY29uc3QgZXJyOiBhbnkgPSBuZXcgRXJyb3IoJ0xvYWRpbmcgaW5pdGlhbCBwcm9wcyBjYW5jZWxsZWQnKVxuICAgICAgICBlcnIuY2FuY2VsbGVkID0gdHJ1ZVxuICAgICAgICB0aHJvdyBlcnJcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRhdGFcbiAgICB9KVxuICB9XG5cbiAgX2dldFN0YXRpY0RhdGEoZGF0YUhyZWY6IHN0cmluZyk6IFByb21pc2U8b2JqZWN0PiB7XG4gICAgY29uc3QgeyBocmVmOiBjYWNoZUtleSB9ID0gbmV3IFVSTChkYXRhSHJlZiwgd2luZG93LmxvY2F0aW9uLmhyZWYpXG4gICAgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgIXRoaXMuaXNQcmV2aWV3ICYmXG4gICAgICB0aGlzLnNkY1tjYWNoZUtleV1cbiAgICApIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodGhpcy5zZGNbY2FjaGVLZXldKVxuICAgIH1cbiAgICByZXR1cm4gZmV0Y2hOZXh0RGF0YShkYXRhSHJlZiwgdGhpcy5pc1NzcikudGhlbigoZGF0YSkgPT4ge1xuICAgICAgdGhpcy5zZGNbY2FjaGVLZXldID0gZGF0YVxuICAgICAgcmV0dXJuIGRhdGFcbiAgICB9KVxuICB9XG5cbiAgX2dldFNlcnZlckRhdGEoZGF0YUhyZWY6IHN0cmluZyk6IFByb21pc2U8b2JqZWN0PiB7XG4gICAgcmV0dXJuIGZldGNoTmV4dERhdGEoZGF0YUhyZWYsIHRoaXMuaXNTc3IpXG4gIH1cblxuICBnZXRJbml0aWFsUHJvcHMoXG4gICAgQ29tcG9uZW50OiBDb21wb25lbnRUeXBlLFxuICAgIGN0eDogTmV4dFBhZ2VDb250ZXh0XG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgeyBDb21wb25lbnQ6IEFwcCB9ID0gdGhpcy5jb21wb25lbnRzWycvX2FwcCddXG4gICAgY29uc3QgQXBwVHJlZSA9IHRoaXMuX3dyYXBBcHAoQXBwIGFzIEFwcENvbXBvbmVudClcbiAgICBjdHguQXBwVHJlZSA9IEFwcFRyZWVcbiAgICByZXR1cm4gbG9hZEdldEluaXRpYWxQcm9wczxBcHBDb250ZXh0VHlwZTxSb3V0ZXI+PihBcHAsIHtcbiAgICAgIEFwcFRyZWUsXG4gICAgICBDb21wb25lbnQsXG4gICAgICByb3V0ZXI6IHRoaXMsXG4gICAgICBjdHgsXG4gICAgfSlcbiAgfVxuXG4gIGFib3J0Q29tcG9uZW50TG9hZChhczogc3RyaW5nLCByb3V0ZVByb3BzOiBSb3V0ZVByb3BlcnRpZXMpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbGMpIHtcbiAgICAgIFJvdXRlci5ldmVudHMuZW1pdChcbiAgICAgICAgJ3JvdXRlQ2hhbmdlRXJyb3InLFxuICAgICAgICBidWlsZENhbmNlbGxhdGlvbkVycm9yKCksXG4gICAgICAgIGFzLFxuICAgICAgICByb3V0ZVByb3BzXG4gICAgICApXG4gICAgICB0aGlzLmNsYygpXG4gICAgICB0aGlzLmNsYyA9IG51bGxcbiAgICB9XG4gIH1cblxuICBub3RpZnkoXG4gICAgZGF0YTogUHJpdmF0ZVJvdXRlSW5mbyxcbiAgICByZXNldFNjcm9sbDogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9IHwgbnVsbFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdWIoXG4gICAgICBkYXRhLFxuICAgICAgdGhpcy5jb21wb25lbnRzWycvX2FwcCddLkNvbXBvbmVudCBhcyBBcHBDb21wb25lbnQsXG4gICAgICByZXNldFNjcm9sbFxuICAgIClcbiAgfVxufVxuIiwiLy8gRm9ybWF0IGZ1bmN0aW9uIG1vZGlmaWVkIGZyb20gbm9kZWpzXG4vLyBDb3B5cmlnaHQgSm95ZW50LCBJbmMuIGFuZCBvdGhlciBOb2RlIGNvbnRyaWJ1dG9ycy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYVxuLy8gY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZVxuLy8gXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nXG4vLyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsXG4vLyBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0XG4vLyBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGVcbi8vIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkXG4vLyBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTXG4vLyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GXG4vLyBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOXG4vLyBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSxcbi8vIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUlxuLy8gT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRVxuLy8gVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHsgVXJsT2JqZWN0IH0gZnJvbSAndXJsJ1xuaW1wb3J0IHsgUGFyc2VkVXJsUXVlcnkgfSBmcm9tICdxdWVyeXN0cmluZydcbmltcG9ydCAqIGFzIHF1ZXJ5c3RyaW5nIGZyb20gJy4vcXVlcnlzdHJpbmcnXG5cbmNvbnN0IHNsYXNoZWRQcm90b2NvbHMgPSAvaHR0cHM/fGZ0cHxnb3BoZXJ8ZmlsZS9cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFVybCh1cmxPYmo6IFVybE9iamVjdCkge1xuICBsZXQgeyBhdXRoLCBob3N0bmFtZSB9ID0gdXJsT2JqXG4gIGxldCBwcm90b2NvbCA9IHVybE9iai5wcm90b2NvbCB8fCAnJ1xuICBsZXQgcGF0aG5hbWUgPSB1cmxPYmoucGF0aG5hbWUgfHwgJydcbiAgbGV0IGhhc2ggPSB1cmxPYmouaGFzaCB8fCAnJ1xuICBsZXQgcXVlcnkgPSB1cmxPYmoucXVlcnkgfHwgJydcbiAgbGV0IGhvc3Q6IHN0cmluZyB8IGZhbHNlID0gZmFsc2VcblxuICBhdXRoID0gYXV0aCA/IGVuY29kZVVSSUNvbXBvbmVudChhdXRoKS5yZXBsYWNlKC8lM0EvaSwgJzonKSArICdAJyA6ICcnXG5cbiAgaWYgKHVybE9iai5ob3N0KSB7XG4gICAgaG9zdCA9IGF1dGggKyB1cmxPYmouaG9zdFxuICB9IGVsc2UgaWYgKGhvc3RuYW1lKSB7XG4gICAgaG9zdCA9IGF1dGggKyAofmhvc3RuYW1lLmluZGV4T2YoJzonKSA/IGBbJHtob3N0bmFtZX1dYCA6IGhvc3RuYW1lKVxuICAgIGlmICh1cmxPYmoucG9ydCkge1xuICAgICAgaG9zdCArPSAnOicgKyB1cmxPYmoucG9ydFxuICAgIH1cbiAgfVxuXG4gIGlmIChxdWVyeSAmJiB0eXBlb2YgcXVlcnkgPT09ICdvYmplY3QnKSB7XG4gICAgcXVlcnkgPSBTdHJpbmcocXVlcnlzdHJpbmcudXJsUXVlcnlUb1NlYXJjaFBhcmFtcyhxdWVyeSBhcyBQYXJzZWRVcmxRdWVyeSkpXG4gIH1cblxuICBsZXQgc2VhcmNoID0gdXJsT2JqLnNlYXJjaCB8fCAocXVlcnkgJiYgYD8ke3F1ZXJ5fWApIHx8ICcnXG5cbiAgaWYgKHByb3RvY29sICYmIHByb3RvY29sLnN1YnN0cigtMSkgIT09ICc6JykgcHJvdG9jb2wgKz0gJzonXG5cbiAgaWYgKFxuICAgIHVybE9iai5zbGFzaGVzIHx8XG4gICAgKCghcHJvdG9jb2wgfHwgc2xhc2hlZFByb3RvY29scy50ZXN0KHByb3RvY29sKSkgJiYgaG9zdCAhPT0gZmFsc2UpXG4gICkge1xuICAgIGhvc3QgPSAnLy8nICsgKGhvc3QgfHwgJycpXG4gICAgaWYgKHBhdGhuYW1lICYmIHBhdGhuYW1lWzBdICE9PSAnLycpIHBhdGhuYW1lID0gJy8nICsgcGF0aG5hbWVcbiAgfSBlbHNlIGlmICghaG9zdCkge1xuICAgIGhvc3QgPSAnJ1xuICB9XG5cbiAgaWYgKGhhc2ggJiYgaGFzaFswXSAhPT0gJyMnKSBoYXNoID0gJyMnICsgaGFzaFxuICBpZiAoc2VhcmNoICYmIHNlYXJjaFswXSAhPT0gJz8nKSBzZWFyY2ggPSAnPycgKyBzZWFyY2hcblxuICBwYXRobmFtZSA9IHBhdGhuYW1lLnJlcGxhY2UoL1s/I10vZywgZW5jb2RlVVJJQ29tcG9uZW50KVxuICBzZWFyY2ggPSBzZWFyY2gucmVwbGFjZSgnIycsICclMjMnKVxuXG4gIHJldHVybiBgJHtwcm90b2NvbH0ke2hvc3R9JHtwYXRobmFtZX0ke3NlYXJjaH0ke2hhc2h9YFxufVxuIiwiLy8gVHJhbnNsYXRlcyBhIGxvZ2ljYWwgcm91dGUgaW50byBpdHMgcGFnZXMgYXNzZXQgcGF0aCAocmVsYXRpdmUgZnJvbSBhIGNvbW1vbiBwcmVmaXgpXG4vLyBcImFzc2V0IHBhdGhcIiBiZWluZyBpdHMgamF2YXNjcmlwdCBmaWxlLCBkYXRhIGZpbGUsIHByZXJlbmRlcmVkIGh0bWwsLi4uXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRBc3NldFBhdGhGcm9tUm91dGUoXG4gIHJvdXRlOiBzdHJpbmcsXG4gIGV4dDogc3RyaW5nID0gJydcbik6IHN0cmluZyB7XG4gIGNvbnN0IHBhdGggPVxuICAgIHJvdXRlID09PSAnLydcbiAgICAgID8gJy9pbmRleCdcbiAgICAgIDogL15cXC9pbmRleChcXC98JCkvLnRlc3Qocm91dGUpXG4gICAgICA/IGAvaW5kZXgke3JvdXRlfWBcbiAgICAgIDogYCR7cm91dGV9YFxuICByZXR1cm4gcGF0aCArIGV4dFxufVxuIiwiLy8gSWRlbnRpZnkgL1twYXJhbV0vIGluIHJvdXRlIHN0cmluZ1xuY29uc3QgVEVTVF9ST1VURSA9IC9cXC9cXFtbXi9dKz9cXF0oPz1cXC98JCkvXG5cbmV4cG9ydCBmdW5jdGlvbiBpc0R5bmFtaWNSb3V0ZShyb3V0ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBURVNUX1JPVVRFLnRlc3Qocm91dGUpXG59XG4iLCJpbXBvcnQgeyBnZXRMb2NhdGlvbk9yaWdpbiB9IGZyb20gJy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgc2VhcmNoUGFyYW1zVG9VcmxRdWVyeSB9IGZyb20gJy4vcXVlcnlzdHJpbmcnXG5cbi8qKlxuICogUGFyc2VzIHBhdGgtcmVsYXRpdmUgdXJscyAoZS5nLiBgL2hlbGxvL3dvcmxkP2Zvbz1iYXJgKS4gSWYgdXJsIGlzbid0IHBhdGgtcmVsYXRpdmVcbiAqIChlLmcuIGAuL2hlbGxvYCkgdGhlbiBhdCBsZWFzdCBiYXNlIG11c3QgYmUuXG4gKiBBYnNvbHV0ZSB1cmxzIGFyZSByZWplY3RlZCB3aXRoIG9uZSBleGNlcHRpb24sIGluIHRoZSBicm93c2VyLCBhYnNvbHV0ZSB1cmxzIHRoYXQgYXJlIG9uXG4gKiB0aGUgY3VycmVudCBvcmlnaW4gd2lsbCBiZSBwYXJzZWQgYXMgcmVsYXRpdmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlUmVsYXRpdmVVcmwodXJsOiBzdHJpbmcsIGJhc2U/OiBzdHJpbmcpIHtcbiAgY29uc3QgZ2xvYmFsQmFzZSA9IG5ldyBVUkwoXG4gICAgdHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcgPyAnaHR0cDovL24nIDogZ2V0TG9jYXRpb25PcmlnaW4oKVxuICApXG4gIGNvbnN0IHJlc29sdmVkQmFzZSA9IGJhc2UgPyBuZXcgVVJMKGJhc2UsIGdsb2JhbEJhc2UpIDogZ2xvYmFsQmFzZVxuICBjb25zdCB7IHBhdGhuYW1lLCBzZWFyY2hQYXJhbXMsIHNlYXJjaCwgaGFzaCwgaHJlZiwgb3JpZ2luIH0gPSBuZXcgVVJMKFxuICAgIHVybCxcbiAgICByZXNvbHZlZEJhc2VcbiAgKVxuICBpZiAob3JpZ2luICE9PSBnbG9iYWxCYXNlLm9yaWdpbikge1xuICAgIHRocm93IG5ldyBFcnJvcihgaW52YXJpYW50OiBpbnZhbGlkIHJlbGF0aXZlIFVSTCwgcm91dGVyIHJlY2VpdmVkICR7dXJsfWApXG4gIH1cbiAgcmV0dXJuIHtcbiAgICBwYXRobmFtZSxcbiAgICBxdWVyeTogc2VhcmNoUGFyYW1zVG9VcmxRdWVyeShzZWFyY2hQYXJhbXMpLFxuICAgIHNlYXJjaCxcbiAgICBoYXNoLFxuICAgIGhyZWY6IGhyZWYuc2xpY2UoZ2xvYmFsQmFzZS5vcmlnaW4ubGVuZ3RoKSxcbiAgfVxufVxuIiwiaW1wb3J0IHsgUGFyc2VkVXJsUXVlcnkgfSBmcm9tICdxdWVyeXN0cmluZydcblxuZXhwb3J0IGZ1bmN0aW9uIHNlYXJjaFBhcmFtc1RvVXJsUXVlcnkoXG4gIHNlYXJjaFBhcmFtczogVVJMU2VhcmNoUGFyYW1zXG4pOiBQYXJzZWRVcmxRdWVyeSB7XG4gIGNvbnN0IHF1ZXJ5OiBQYXJzZWRVcmxRdWVyeSA9IHt9XG4gIHNlYXJjaFBhcmFtcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgaWYgKHR5cGVvZiBxdWVyeVtrZXldID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcXVlcnlba2V5XSA9IHZhbHVlXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHF1ZXJ5W2tleV0pKSB7XG4gICAgICA7KHF1ZXJ5W2tleV0gYXMgc3RyaW5nW10pLnB1c2godmFsdWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHF1ZXJ5W2tleV0gPSBbcXVlcnlba2V5XSBhcyBzdHJpbmcsIHZhbHVlXVxuICAgIH1cbiAgfSlcbiAgcmV0dXJuIHF1ZXJ5XG59XG5cbmZ1bmN0aW9uIHN0cmluZ2lmeVVybFF1ZXJ5UGFyYW0ocGFyYW06IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmIChcbiAgICB0eXBlb2YgcGFyYW0gPT09ICdzdHJpbmcnIHx8XG4gICAgKHR5cGVvZiBwYXJhbSA9PT0gJ251bWJlcicgJiYgIWlzTmFOKHBhcmFtKSkgfHxcbiAgICB0eXBlb2YgcGFyYW0gPT09ICdib29sZWFuJ1xuICApIHtcbiAgICByZXR1cm4gU3RyaW5nKHBhcmFtKVxuICB9IGVsc2Uge1xuICAgIHJldHVybiAnJ1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cmxRdWVyeVRvU2VhcmNoUGFyYW1zKFxuICB1cmxRdWVyeTogUGFyc2VkVXJsUXVlcnlcbik6IFVSTFNlYXJjaFBhcmFtcyB7XG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoKVxuICBPYmplY3QuZW50cmllcyh1cmxRdWVyeSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICB2YWx1ZS5mb3JFYWNoKChpdGVtKSA9PiByZXN1bHQuYXBwZW5kKGtleSwgc3RyaW5naWZ5VXJsUXVlcnlQYXJhbShpdGVtKSkpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdC5zZXQoa2V5LCBzdHJpbmdpZnlVcmxRdWVyeVBhcmFtKHZhbHVlKSlcbiAgICB9XG4gIH0pXG4gIHJldHVybiByZXN1bHRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFzc2lnbihcbiAgdGFyZ2V0OiBVUkxTZWFyY2hQYXJhbXMsXG4gIC4uLnNlYXJjaFBhcmFtc0xpc3Q6IFVSTFNlYXJjaFBhcmFtc1tdXG4pOiBVUkxTZWFyY2hQYXJhbXMge1xuICBzZWFyY2hQYXJhbXNMaXN0LmZvckVhY2goKHNlYXJjaFBhcmFtcykgPT4ge1xuICAgIEFycmF5LmZyb20oc2VhcmNoUGFyYW1zLmtleXMoKSkuZm9yRWFjaCgoa2V5KSA9PiB0YXJnZXQuZGVsZXRlKGtleSkpXG4gICAgc2VhcmNoUGFyYW1zLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHRhcmdldC5hcHBlbmQoa2V5LCB2YWx1ZSkpXG4gIH0pXG4gIHJldHVybiB0YXJnZXRcbn1cbiIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlc29sdmVSZXdyaXRlcygpIHt9XG4iLCJpbXBvcnQgeyBnZXRSb3V0ZVJlZ2V4IH0gZnJvbSAnLi9yb3V0ZS1yZWdleCdcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvdXRlTWF0Y2hlcihyb3V0ZVJlZ2V4OiBSZXR1cm5UeXBlPHR5cGVvZiBnZXRSb3V0ZVJlZ2V4Pikge1xuICBjb25zdCB7IHJlLCBncm91cHMgfSA9IHJvdXRlUmVnZXhcbiAgcmV0dXJuIChwYXRobmFtZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCkgPT4ge1xuICAgIGNvbnN0IHJvdXRlTWF0Y2ggPSByZS5leGVjKHBhdGhuYW1lISlcbiAgICBpZiAoIXJvdXRlTWF0Y2gpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIGNvbnN0IGRlY29kZSA9IChwYXJhbTogc3RyaW5nKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHBhcmFtKVxuICAgICAgfSBjYXRjaCAoXykge1xuICAgICAgICBjb25zdCBlcnI6IEVycm9yICYgeyBjb2RlPzogc3RyaW5nIH0gPSBuZXcgRXJyb3IoXG4gICAgICAgICAgJ2ZhaWxlZCB0byBkZWNvZGUgcGFyYW0nXG4gICAgICAgIClcbiAgICAgICAgZXJyLmNvZGUgPSAnREVDT0RFX0ZBSUxFRCdcbiAgICAgICAgdGhyb3cgZXJyXG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IHBhcmFtczogeyBbcGFyYW1OYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9ID0ge31cblxuICAgIE9iamVjdC5rZXlzKGdyb3VwcykuZm9yRWFjaCgoc2x1Z05hbWU6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgZyA9IGdyb3Vwc1tzbHVnTmFtZV1cbiAgICAgIGNvbnN0IG0gPSByb3V0ZU1hdGNoW2cucG9zXVxuICAgICAgaWYgKG0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBwYXJhbXNbc2x1Z05hbWVdID0gfm0uaW5kZXhPZignLycpXG4gICAgICAgICAgPyBtLnNwbGl0KCcvJykubWFwKChlbnRyeSkgPT4gZGVjb2RlKGVudHJ5KSlcbiAgICAgICAgICA6IGcucmVwZWF0XG4gICAgICAgICAgPyBbZGVjb2RlKG0pXVxuICAgICAgICAgIDogZGVjb2RlKG0pXG4gICAgICB9XG4gICAgfSlcbiAgICByZXR1cm4gcGFyYW1zXG4gIH1cbn1cbiIsImV4cG9ydCBpbnRlcmZhY2UgR3JvdXAge1xuICBwb3M6IG51bWJlclxuICByZXBlYXQ6IGJvb2xlYW5cbiAgb3B0aW9uYWw6IGJvb2xlYW5cbn1cblxuLy8gdGhpcyBpc24ndCBpbXBvcnRpbmcgdGhlIGVzY2FwZS1zdHJpbmctcmVnZXggbW9kdWxlXG4vLyB0byByZWR1Y2UgYnl0ZXNcbmZ1bmN0aW9uIGVzY2FwZVJlZ2V4KHN0cjogc3RyaW5nKSB7XG4gIHJldHVybiBzdHIucmVwbGFjZSgvW3xcXFxce30oKVtcXF1eJCsqPy4tXS9nLCAnXFxcXCQmJylcbn1cblxuZnVuY3Rpb24gcGFyc2VQYXJhbWV0ZXIocGFyYW06IHN0cmluZykge1xuICBjb25zdCBvcHRpb25hbCA9IHBhcmFtLnN0YXJ0c1dpdGgoJ1snKSAmJiBwYXJhbS5lbmRzV2l0aCgnXScpXG4gIGlmIChvcHRpb25hbCkge1xuICAgIHBhcmFtID0gcGFyYW0uc2xpY2UoMSwgLTEpXG4gIH1cbiAgY29uc3QgcmVwZWF0ID0gcGFyYW0uc3RhcnRzV2l0aCgnLi4uJylcbiAgaWYgKHJlcGVhdCkge1xuICAgIHBhcmFtID0gcGFyYW0uc2xpY2UoMylcbiAgfVxuICByZXR1cm4geyBrZXk6IHBhcmFtLCByZXBlYXQsIG9wdGlvbmFsIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvdXRlUmVnZXgoXG4gIG5vcm1hbGl6ZWRSb3V0ZTogc3RyaW5nXG4pOiB7XG4gIHJlOiBSZWdFeHBcbiAgbmFtZWRSZWdleD86IHN0cmluZ1xuICByb3V0ZUtleXM/OiB7IFtuYW1lZDogc3RyaW5nXTogc3RyaW5nIH1cbiAgZ3JvdXBzOiB7IFtncm91cE5hbWU6IHN0cmluZ106IEdyb3VwIH1cbn0ge1xuICBjb25zdCBzZWdtZW50cyA9IChub3JtYWxpemVkUm91dGUucmVwbGFjZSgvXFwvJC8sICcnKSB8fCAnLycpXG4gICAgLnNsaWNlKDEpXG4gICAgLnNwbGl0KCcvJylcblxuICBjb25zdCBncm91cHM6IHsgW2dyb3VwTmFtZTogc3RyaW5nXTogR3JvdXAgfSA9IHt9XG4gIGxldCBncm91cEluZGV4ID0gMVxuICBjb25zdCBwYXJhbWV0ZXJpemVkUm91dGUgPSBzZWdtZW50c1xuICAgIC5tYXAoKHNlZ21lbnQpID0+IHtcbiAgICAgIGlmIChzZWdtZW50LnN0YXJ0c1dpdGgoJ1snKSAmJiBzZWdtZW50LmVuZHNXaXRoKCddJykpIHtcbiAgICAgICAgY29uc3QgeyBrZXksIG9wdGlvbmFsLCByZXBlYXQgfSA9IHBhcnNlUGFyYW1ldGVyKHNlZ21lbnQuc2xpY2UoMSwgLTEpKVxuICAgICAgICBncm91cHNba2V5XSA9IHsgcG9zOiBncm91cEluZGV4KyssIHJlcGVhdCwgb3B0aW9uYWwgfVxuICAgICAgICByZXR1cm4gcmVwZWF0ID8gKG9wdGlvbmFsID8gJyg/Oi8oLis/KSk/JyA6ICcvKC4rPyknKSA6ICcvKFteL10rPyknXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gYC8ke2VzY2FwZVJlZ2V4KHNlZ21lbnQpfWBcbiAgICAgIH1cbiAgICB9KVxuICAgIC5qb2luKCcnKVxuXG4gIC8vIGRlYWQgY29kZSBlbGltaW5hdGUgZm9yIGJyb3dzZXIgc2luY2UgaXQncyBvbmx5IG5lZWRlZFxuICAvLyB3aGlsZSBnZW5lcmF0aW5nIHJvdXRlcy1tYW5pZmVzdFxuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBsZXQgcm91dGVLZXlDaGFyQ29kZSA9IDk3XG4gICAgbGV0IHJvdXRlS2V5Q2hhckxlbmd0aCA9IDFcblxuICAgIC8vIGJ1aWxkcyBhIG1pbmltYWwgcm91dGVLZXkgdXNpbmcgb25seSBhLXogYW5kIG1pbmltYWwgbnVtYmVyIG9mIGNoYXJhY3RlcnNcbiAgICBjb25zdCBnZXRTYWZlUm91dGVLZXkgPSAoKSA9PiB7XG4gICAgICBsZXQgcm91dGVLZXkgPSAnJ1xuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvdXRlS2V5Q2hhckxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHJvdXRlS2V5ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUocm91dGVLZXlDaGFyQ29kZSlcbiAgICAgICAgcm91dGVLZXlDaGFyQ29kZSsrXG5cbiAgICAgICAgaWYgKHJvdXRlS2V5Q2hhckNvZGUgPiAxMjIpIHtcbiAgICAgICAgICByb3V0ZUtleUNoYXJMZW5ndGgrK1xuICAgICAgICAgIHJvdXRlS2V5Q2hhckNvZGUgPSA5N1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gcm91dGVLZXlcbiAgICB9XG5cbiAgICBjb25zdCByb3V0ZUtleXM6IHsgW25hbWVkOiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9XG5cbiAgICBsZXQgbmFtZWRQYXJhbWV0ZXJpemVkUm91dGUgPSBzZWdtZW50c1xuICAgICAgLm1hcCgoc2VnbWVudCkgPT4ge1xuICAgICAgICBpZiAoc2VnbWVudC5zdGFydHNXaXRoKCdbJykgJiYgc2VnbWVudC5lbmRzV2l0aCgnXScpKSB7XG4gICAgICAgICAgY29uc3QgeyBrZXksIG9wdGlvbmFsLCByZXBlYXQgfSA9IHBhcnNlUGFyYW1ldGVyKHNlZ21lbnQuc2xpY2UoMSwgLTEpKVxuICAgICAgICAgIC8vIHJlcGxhY2UgYW55IG5vbi13b3JkIGNoYXJhY3RlcnMgc2luY2UgdGhleSBjYW4gYnJlYWtcbiAgICAgICAgICAvLyB0aGUgbmFtZWQgcmVnZXhcbiAgICAgICAgICBsZXQgY2xlYW5lZEtleSA9IGtleS5yZXBsYWNlKC9cXFcvZywgJycpXG4gICAgICAgICAgbGV0IGludmFsaWRLZXkgPSBmYWxzZVxuXG4gICAgICAgICAgLy8gY2hlY2sgaWYgdGhlIGtleSBpcyBzdGlsbCBpbnZhbGlkIGFuZCBmYWxsYmFjayB0byB1c2luZyBhIGtub3duXG4gICAgICAgICAgLy8gc2FmZSBrZXlcbiAgICAgICAgICBpZiAoY2xlYW5lZEtleS5sZW5ndGggPT09IDAgfHwgY2xlYW5lZEtleS5sZW5ndGggPiAzMCkge1xuICAgICAgICAgICAgaW52YWxpZEtleSA9IHRydWVcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKCFpc05hTihwYXJzZUludChjbGVhbmVkS2V5LnN1YnN0cigwLCAxKSkpKSB7XG4gICAgICAgICAgICBpbnZhbGlkS2V5ID0gdHJ1ZVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChpbnZhbGlkS2V5KSB7XG4gICAgICAgICAgICBjbGVhbmVkS2V5ID0gZ2V0U2FmZVJvdXRlS2V5KClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByb3V0ZUtleXNbY2xlYW5lZEtleV0gPSBrZXlcbiAgICAgICAgICByZXR1cm4gcmVwZWF0XG4gICAgICAgICAgICA/IG9wdGlvbmFsXG4gICAgICAgICAgICAgID8gYCg/Oi8oPzwke2NsZWFuZWRLZXl9Pi4rPykpP2BcbiAgICAgICAgICAgICAgOiBgLyg/PCR7Y2xlYW5lZEtleX0+Lis/KWBcbiAgICAgICAgICAgIDogYC8oPzwke2NsZWFuZWRLZXl9PlteL10rPylgXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGAvJHtlc2NhcGVSZWdleChzZWdtZW50KX1gXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuam9pbignJylcblxuICAgIHJldHVybiB7XG4gICAgICByZTogbmV3IFJlZ0V4cChgXiR7cGFyYW1ldGVyaXplZFJvdXRlfSg/Oi8pPyRgKSxcbiAgICAgIGdyb3VwcyxcbiAgICAgIHJvdXRlS2V5cyxcbiAgICAgIG5hbWVkUmVnZXg6IGBeJHtuYW1lZFBhcmFtZXRlcml6ZWRSb3V0ZX0oPzovKT8kYCxcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHJlOiBuZXcgUmVnRXhwKGBeJHtwYXJhbWV0ZXJpemVkUm91dGV9KD86Lyk/JGApLFxuICAgIGdyb3VwcyxcbiAgfVxufVxuIiwiaW1wb3J0IFJlYWN0LCB7IENvbXBvbmVudCB9IGZyb20gJ3JlYWN0J1xuXG5jb25zdCBpc1NlcnZlciA9IHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnXG5cbnR5cGUgU3RhdGUgPSBKU1guRWxlbWVudFtdIHwgdW5kZWZpbmVkXG5cbnR5cGUgU2lkZUVmZmVjdFByb3BzID0ge1xuICByZWR1Y2VDb21wb25lbnRzVG9TdGF0ZTogPFQ+KFxuICAgIGNvbXBvbmVudHM6IEFycmF5PFJlYWN0LlJlYWN0RWxlbWVudDxhbnk+PixcbiAgICBwcm9wczogVFxuICApID0+IFN0YXRlXG4gIGhhbmRsZVN0YXRlQ2hhbmdlPzogKHN0YXRlOiBTdGF0ZSkgPT4gdm9pZFxuICBoZWFkTWFuYWdlcjogYW55XG4gIGluQW1wTW9kZT86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgZXh0ZW5kcyBDb21wb25lbnQ8U2lkZUVmZmVjdFByb3BzPiB7XG4gIHByaXZhdGUgX2hhc0hlYWRNYW5hZ2VyOiBib29sZWFuXG5cbiAgZW1pdENoYW5nZSA9ICgpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5faGFzSGVhZE1hbmFnZXIpIHtcbiAgICAgIHRoaXMucHJvcHMuaGVhZE1hbmFnZXIudXBkYXRlSGVhZChcbiAgICAgICAgdGhpcy5wcm9wcy5yZWR1Y2VDb21wb25lbnRzVG9TdGF0ZShcbiAgICAgICAgICBbLi4udGhpcy5wcm9wcy5oZWFkTWFuYWdlci5tb3VudGVkSW5zdGFuY2VzXSxcbiAgICAgICAgICB0aGlzLnByb3BzXG4gICAgICAgIClcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcm9wczogYW55KSB7XG4gICAgc3VwZXIocHJvcHMpXG4gICAgdGhpcy5faGFzSGVhZE1hbmFnZXIgPVxuICAgICAgdGhpcy5wcm9wcy5oZWFkTWFuYWdlciAmJiB0aGlzLnByb3BzLmhlYWRNYW5hZ2VyLm1vdW50ZWRJbnN0YW5jZXNcblxuICAgIGlmIChpc1NlcnZlciAmJiB0aGlzLl9oYXNIZWFkTWFuYWdlcikge1xuICAgICAgdGhpcy5wcm9wcy5oZWFkTWFuYWdlci5tb3VudGVkSW5zdGFuY2VzLmFkZCh0aGlzKVxuICAgICAgdGhpcy5lbWl0Q2hhbmdlKClcbiAgICB9XG4gIH1cbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgaWYgKHRoaXMuX2hhc0hlYWRNYW5hZ2VyKSB7XG4gICAgICB0aGlzLnByb3BzLmhlYWRNYW5hZ2VyLm1vdW50ZWRJbnN0YW5jZXMuYWRkKHRoaXMpXG4gICAgfVxuICAgIHRoaXMuZW1pdENoYW5nZSgpXG4gIH1cbiAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgIHRoaXMuZW1pdENoYW5nZSgpXG4gIH1cbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XG4gICAgaWYgKHRoaXMuX2hhc0hlYWRNYW5hZ2VyKSB7XG4gICAgICB0aGlzLnByb3BzLmhlYWRNYW5hZ2VyLm1vdW50ZWRJbnN0YW5jZXMuZGVsZXRlKHRoaXMpXG4gICAgfVxuICAgIHRoaXMuZW1pdENoYW5nZSgpXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuIiwiaW1wb3J0IHsgSW5jb21pbmdNZXNzYWdlLCBTZXJ2ZXJSZXNwb25zZSB9IGZyb20gJ2h0dHAnXG5pbXBvcnQgeyBQYXJzZWRVcmxRdWVyeSB9IGZyb20gJ3F1ZXJ5c3RyaW5nJ1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVXJsT2JqZWN0IH0gZnJvbSAndXJsJ1xuaW1wb3J0IHsgZm9ybWF0VXJsIH0gZnJvbSAnLi9yb3V0ZXIvdXRpbHMvZm9ybWF0LXVybCdcbmltcG9ydCB7IE1hbmlmZXN0SXRlbSB9IGZyb20gJy4uL3NlcnZlci9sb2FkLWNvbXBvbmVudHMnXG5pbXBvcnQgeyBOZXh0Um91dGVyIH0gZnJvbSAnLi9yb3V0ZXIvcm91dGVyJ1xuaW1wb3J0IHsgRW52IH0gZnJvbSAnQG5leHQvZW52J1xuaW1wb3J0IHsgQnVpbGRNYW5pZmVzdCB9IGZyb20gJy4uL3NlcnZlci9nZXQtcGFnZS1maWxlcydcbmltcG9ydCB7IERvbWFpbkxvY2FsZXMgfSBmcm9tICcuLi9zZXJ2ZXIvY29uZmlnJ1xuXG4vKipcbiAqIFR5cGVzIHVzZWQgYnkgYm90aCBuZXh0IGFuZCBuZXh0LXNlcnZlclxuICovXG5cbmV4cG9ydCB0eXBlIE5leHRDb21wb25lbnRUeXBlPFxuICBDIGV4dGVuZHMgQmFzZUNvbnRleHQgPSBOZXh0UGFnZUNvbnRleHQsXG4gIElQID0ge30sXG4gIFAgPSB7fVxuPiA9IENvbXBvbmVudFR5cGU8UD4gJiB7XG4gIC8qKlxuICAgKiBVc2VkIGZvciBpbml0aWFsIHBhZ2UgbG9hZCBkYXRhIHBvcHVsYXRpb24uIERhdGEgcmV0dXJuZWQgZnJvbSBgZ2V0SW5pdGlhbFByb3BzYCBpcyBzZXJpYWxpemVkIHdoZW4gc2VydmVyIHJlbmRlcmVkLlxuICAgKiBNYWtlIHN1cmUgdG8gcmV0dXJuIHBsYWluIGBPYmplY3RgIHdpdGhvdXQgdXNpbmcgYERhdGVgLCBgTWFwYCwgYFNldGAuXG4gICAqIEBwYXJhbSBjdHggQ29udGV4dCBvZiBgcGFnZWBcbiAgICovXG4gIGdldEluaXRpYWxQcm9wcz8oY29udGV4dDogQyk6IElQIHwgUHJvbWlzZTxJUD5cbn1cblxuZXhwb3J0IHR5cGUgRG9jdW1lbnRUeXBlID0gTmV4dENvbXBvbmVudFR5cGU8XG4gIERvY3VtZW50Q29udGV4dCxcbiAgRG9jdW1lbnRJbml0aWFsUHJvcHMsXG4gIERvY3VtZW50UHJvcHNcbj4gJiB7XG4gIHJlbmRlckRvY3VtZW50KFxuICAgIERvY3VtZW50OiBEb2N1bWVudFR5cGUsXG4gICAgcHJvcHM6IERvY3VtZW50UHJvcHNcbiAgKTogUmVhY3QuUmVhY3RFbGVtZW50XG59XG5cbmV4cG9ydCB0eXBlIEFwcFR5cGUgPSBOZXh0Q29tcG9uZW50VHlwZTxcbiAgQXBwQ29udGV4dFR5cGUsXG4gIEFwcEluaXRpYWxQcm9wcyxcbiAgQXBwUHJvcHNUeXBlXG4+XG5cbmV4cG9ydCB0eXBlIEFwcFRyZWVUeXBlID0gQ29tcG9uZW50VHlwZTxcbiAgQXBwSW5pdGlhbFByb3BzICYgeyBbbmFtZTogc3RyaW5nXTogYW55IH1cbj5cblxuLyoqXG4gKiBXZWIgdml0YWxzIHByb3ZpZGVkIHRvIF9hcHAucmVwb3J0V2ViVml0YWxzIGJ5IENvcmUgV2ViIFZpdGFscyBwbHVnaW4gZGV2ZWxvcGVkIGJ5IEdvb2dsZSBDaHJvbWUgdGVhbS5cbiAqIGh0dHBzOi8vbmV4dGpzLm9yZy9ibG9nL25leHQtOS00I2ludGVncmF0ZWQtd2ViLXZpdGFscy1yZXBvcnRpbmdcbiAqL1xuZXhwb3J0IHR5cGUgTmV4dFdlYlZpdGFsc01ldHJpYyA9IHtcbiAgaWQ6IHN0cmluZ1xuICBsYWJlbDogc3RyaW5nXG4gIG5hbWU6IHN0cmluZ1xuICBzdGFydFRpbWU6IG51bWJlclxuICB2YWx1ZTogbnVtYmVyXG59XG5cbmV4cG9ydCB0eXBlIEVuaGFuY2VyPEM+ID0gKENvbXBvbmVudDogQykgPT4gQ1xuXG5leHBvcnQgdHlwZSBDb21wb25lbnRzRW5oYW5jZXIgPVxuICB8IHtcbiAgICAgIGVuaGFuY2VBcHA/OiBFbmhhbmNlcjxBcHBUeXBlPlxuICAgICAgZW5oYW5jZUNvbXBvbmVudD86IEVuaGFuY2VyPE5leHRDb21wb25lbnRUeXBlPlxuICAgIH1cbiAgfCBFbmhhbmNlcjxOZXh0Q29tcG9uZW50VHlwZT5cblxuZXhwb3J0IHR5cGUgUmVuZGVyUGFnZVJlc3VsdCA9IHtcbiAgaHRtbDogc3RyaW5nXG4gIGhlYWQ/OiBBcnJheTxKU1guRWxlbWVudCB8IG51bGw+XG59XG5cbmV4cG9ydCB0eXBlIFJlbmRlclBhZ2UgPSAoXG4gIG9wdGlvbnM/OiBDb21wb25lbnRzRW5oYW5jZXJcbikgPT4gUmVuZGVyUGFnZVJlc3VsdCB8IFByb21pc2U8UmVuZGVyUGFnZVJlc3VsdD5cblxuZXhwb3J0IHR5cGUgQmFzZUNvbnRleHQgPSB7XG4gIHJlcz86IFNlcnZlclJlc3BvbnNlXG4gIFtrOiBzdHJpbmddOiBhbnlcbn1cblxuZXhwb3J0IHR5cGUgTkVYVF9EQVRBID0ge1xuICBwcm9wczogUmVjb3JkPHN0cmluZywgYW55PlxuICBwYWdlOiBzdHJpbmdcbiAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4gIGJ1aWxkSWQ6IHN0cmluZ1xuICBhc3NldFByZWZpeD86IHN0cmluZ1xuICBydW50aW1lQ29uZmlnPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfVxuICBuZXh0RXhwb3J0PzogYm9vbGVhblxuICBhdXRvRXhwb3J0PzogYm9vbGVhblxuICBpc0ZhbGxiYWNrPzogYm9vbGVhblxuICBkeW5hbWljSWRzPzogc3RyaW5nW11cbiAgZXJyPzogRXJyb3IgJiB7IHN0YXR1c0NvZGU/OiBudW1iZXIgfVxuICBnc3A/OiBib29sZWFuXG4gIGdzc3A/OiBib29sZWFuXG4gIGN1c3RvbVNlcnZlcj86IGJvb2xlYW5cbiAgZ2lwPzogYm9vbGVhblxuICBhcHBHaXA/OiBib29sZWFuXG4gIGxvY2FsZT86IHN0cmluZ1xuICBsb2NhbGVzPzogc3RyaW5nW11cbiAgZGVmYXVsdExvY2FsZT86IHN0cmluZ1xuICBkb21haW5Mb2NhbGVzPzogRG9tYWluTG9jYWxlc1xuICBzY3JpcHRMb2FkZXI/OiBhbnlbXVxuICBpc1ByZXZpZXc/OiBib29sZWFuXG59XG5cbi8qKlxuICogYE5leHRgIGNvbnRleHRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXh0UGFnZUNvbnRleHQge1xuICAvKipcbiAgICogRXJyb3Igb2JqZWN0IGlmIGVuY291bnRlcmVkIGR1cmluZyByZW5kZXJpbmdcbiAgICovXG4gIGVycj86IChFcnJvciAmIHsgc3RhdHVzQ29kZT86IG51bWJlciB9KSB8IG51bGxcbiAgLyoqXG4gICAqIGBIVFRQYCByZXF1ZXN0IG9iamVjdC5cbiAgICovXG4gIHJlcT86IEluY29taW5nTWVzc2FnZVxuICAvKipcbiAgICogYEhUVFBgIHJlc3BvbnNlIG9iamVjdC5cbiAgICovXG4gIHJlcz86IFNlcnZlclJlc3BvbnNlXG4gIC8qKlxuICAgKiBQYXRoIHNlY3Rpb24gb2YgYFVSTGAuXG4gICAqL1xuICBwYXRobmFtZTogc3RyaW5nXG4gIC8qKlxuICAgKiBRdWVyeSBzdHJpbmcgc2VjdGlvbiBvZiBgVVJMYCBwYXJzZWQgYXMgYW4gb2JqZWN0LlxuICAgKi9cbiAgcXVlcnk6IFBhcnNlZFVybFF1ZXJ5XG4gIC8qKlxuICAgKiBgU3RyaW5nYCBvZiB0aGUgYWN0dWFsIHBhdGggaW5jbHVkaW5nIHF1ZXJ5LlxuICAgKi9cbiAgYXNQYXRoPzogc3RyaW5nXG4gIC8qKlxuICAgKiBgQ29tcG9uZW50YCB0aGUgdHJlZSBvZiB0aGUgQXBwIHRvIHVzZSBpZiBuZWVkaW5nIHRvIHJlbmRlciBzZXBhcmF0ZWx5XG4gICAqL1xuICBBcHBUcmVlOiBBcHBUcmVlVHlwZVxufVxuXG5leHBvcnQgdHlwZSBBcHBDb250ZXh0VHlwZTxSIGV4dGVuZHMgTmV4dFJvdXRlciA9IE5leHRSb3V0ZXI+ID0ge1xuICBDb21wb25lbnQ6IE5leHRDb21wb25lbnRUeXBlPE5leHRQYWdlQ29udGV4dD5cbiAgQXBwVHJlZTogQXBwVHJlZVR5cGVcbiAgY3R4OiBOZXh0UGFnZUNvbnRleHRcbiAgcm91dGVyOiBSXG59XG5cbmV4cG9ydCB0eXBlIEFwcEluaXRpYWxQcm9wcyA9IHtcbiAgcGFnZVByb3BzOiBhbnlcbn1cblxuZXhwb3J0IHR5cGUgQXBwUHJvcHNUeXBlPFxuICBSIGV4dGVuZHMgTmV4dFJvdXRlciA9IE5leHRSb3V0ZXIsXG4gIFAgPSB7fVxuPiA9IEFwcEluaXRpYWxQcm9wcyAmIHtcbiAgQ29tcG9uZW50OiBOZXh0Q29tcG9uZW50VHlwZTxOZXh0UGFnZUNvbnRleHQsIGFueSwgUD5cbiAgcm91dGVyOiBSXG4gIF9fTl9TU0c/OiBib29sZWFuXG4gIF9fTl9TU1A/OiBib29sZWFuXG59XG5cbmV4cG9ydCB0eXBlIERvY3VtZW50Q29udGV4dCA9IE5leHRQYWdlQ29udGV4dCAmIHtcbiAgcmVuZGVyUGFnZTogUmVuZGVyUGFnZVxufVxuXG5leHBvcnQgdHlwZSBEb2N1bWVudEluaXRpYWxQcm9wcyA9IFJlbmRlclBhZ2VSZXN1bHQgJiB7XG4gIHN0eWxlcz86IFJlYWN0LlJlYWN0RWxlbWVudFtdIHwgUmVhY3QuUmVhY3RGcmFnbWVudFxufVxuXG5leHBvcnQgdHlwZSBEb2N1bWVudFByb3BzID0gRG9jdW1lbnRJbml0aWFsUHJvcHMgJiB7XG4gIF9fTkVYVF9EQVRBX186IE5FWFRfREFUQVxuICBkYW5nZXJvdXNBc1BhdGg6IHN0cmluZ1xuICBkb2NDb21wb25lbnRzUmVuZGVyZWQ6IHtcbiAgICBIdG1sPzogYm9vbGVhblxuICAgIE1haW4/OiBib29sZWFuXG4gICAgSGVhZD86IGJvb2xlYW5cbiAgICBOZXh0U2NyaXB0PzogYm9vbGVhblxuICB9XG4gIGJ1aWxkTWFuaWZlc3Q6IEJ1aWxkTWFuaWZlc3RcbiAgYW1wUGF0aDogc3RyaW5nXG4gIGluQW1wTW9kZTogYm9vbGVhblxuICBoeWJyaWRBbXA6IGJvb2xlYW5cbiAgaXNEZXZlbG9wbWVudDogYm9vbGVhblxuICBkeW5hbWljSW1wb3J0czogTWFuaWZlc3RJdGVtW11cbiAgYXNzZXRQcmVmaXg/OiBzdHJpbmdcbiAgY2Fub25pY2FsQmFzZTogc3RyaW5nXG4gIGhlYWRUYWdzOiBhbnlbXVxuICB1bnN0YWJsZV9ydW50aW1lSlM/OiBmYWxzZVxuICB1bnN0YWJsZV9Kc1ByZWxvYWQ/OiBmYWxzZVxuICBkZXZPbmx5Q2FjaGVCdXN0ZXJRdWVyeVN0cmluZzogc3RyaW5nXG4gIHNjcmlwdExvYWRlcjogeyBkZWZlcj86IHN0cmluZ1tdOyBlYWdlcj86IGFueVtdIH1cbiAgbG9jYWxlPzogc3RyaW5nXG59XG5cbi8qKlxuICogTmV4dCBgQVBJYCByb3V0ZSByZXF1ZXN0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dEFwaVJlcXVlc3QgZXh0ZW5kcyBJbmNvbWluZ01lc3NhZ2Uge1xuICAvKipcbiAgICogT2JqZWN0IG9mIGBxdWVyeWAgdmFsdWVzIGZyb20gdXJsXG4gICAqL1xuICBxdWVyeToge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdXG4gIH1cbiAgLyoqXG4gICAqIE9iamVjdCBvZiBgY29va2llc2AgZnJvbSBoZWFkZXJcbiAgICovXG4gIGNvb2tpZXM6IHtcbiAgICBba2V5OiBzdHJpbmddOiBzdHJpbmdcbiAgfVxuXG4gIGJvZHk6IGFueVxuXG4gIGVudjogRW52XG5cbiAgcHJldmlldz86IGJvb2xlYW5cbiAgLyoqXG4gICAqIFByZXZpZXcgZGF0YSBzZXQgb24gdGhlIHJlcXVlc3QsIGlmIGFueVxuICAgKiAqL1xuICBwcmV2aWV3RGF0YT86IGFueVxufVxuXG4vKipcbiAqIFNlbmQgYm9keSBvZiByZXNwb25zZVxuICovXG50eXBlIFNlbmQ8VD4gPSAoYm9keTogVCkgPT4gdm9pZFxuXG4vKipcbiAqIE5leHQgYEFQSWAgcm91dGUgcmVzcG9uc2VcbiAqL1xuZXhwb3J0IHR5cGUgTmV4dEFwaVJlc3BvbnNlPFQgPSBhbnk+ID0gU2VydmVyUmVzcG9uc2UgJiB7XG4gIC8qKlxuICAgKiBTZW5kIGRhdGEgYGFueWAgZGF0YSBpbiByZXNwb25zZVxuICAgKi9cbiAgc2VuZDogU2VuZDxUPlxuICAvKipcbiAgICogU2VuZCBkYXRhIGBqc29uYCBkYXRhIGluIHJlc3BvbnNlXG4gICAqL1xuICBqc29uOiBTZW5kPFQ+XG4gIHN0YXR1czogKHN0YXR1c0NvZGU6IG51bWJlcikgPT4gTmV4dEFwaVJlc3BvbnNlPFQ+XG4gIHJlZGlyZWN0KHVybDogc3RyaW5nKTogTmV4dEFwaVJlc3BvbnNlPFQ+XG4gIHJlZGlyZWN0KHN0YXR1czogbnVtYmVyLCB1cmw6IHN0cmluZyk6IE5leHRBcGlSZXNwb25zZTxUPlxuXG4gIC8qKlxuICAgKiBTZXQgcHJldmlldyBkYXRhIGZvciBOZXh0LmpzJyBwcmVyZW5kZXIgbW9kZVxuICAgKi9cbiAgc2V0UHJldmlld0RhdGE6IChcbiAgICBkYXRhOiBvYmplY3QgfCBzdHJpbmcsXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIC8qKlxuICAgICAgICogU3BlY2lmaWVzIHRoZSBudW1iZXIgKGluIHNlY29uZHMpIGZvciB0aGUgcHJldmlldyBzZXNzaW9uIHRvIGxhc3QgZm9yLlxuICAgICAgICogVGhlIGdpdmVuIG51bWJlciB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyIGJ5IHJvdW5kaW5nIGRvd24uXG4gICAgICAgKiBCeSBkZWZhdWx0LCBubyBtYXhpbXVtIGFnZSBpcyBzZXQgYW5kIHRoZSBwcmV2aWV3IHNlc3Npb24gZmluaXNoZXNcbiAgICAgICAqIHdoZW4gdGhlIGNsaWVudCBzaHV0cyBkb3duIChicm93c2VyIGlzIGNsb3NlZCkuXG4gICAgICAgKi9cbiAgICAgIG1heEFnZT86IG51bWJlclxuICAgIH1cbiAgKSA9PiBOZXh0QXBpUmVzcG9uc2U8VD5cbiAgY2xlYXJQcmV2aWV3RGF0YTogKCkgPT4gTmV4dEFwaVJlc3BvbnNlPFQ+XG59XG5cbi8qKlxuICogTmV4dCBgQVBJYCByb3V0ZSBoYW5kbGVyXG4gKi9cbmV4cG9ydCB0eXBlIE5leHRBcGlIYW5kbGVyPFQgPSBhbnk+ID0gKFxuICByZXE6IE5leHRBcGlSZXF1ZXN0LFxuICByZXM6IE5leHRBcGlSZXNwb25zZTxUPlxuKSA9PiB2b2lkIHwgUHJvbWlzZTx2b2lkPlxuXG4vKipcbiAqIFV0aWxzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleGVjT25jZTxUIGV4dGVuZHMgKC4uLmFyZ3M6IGFueVtdKSA9PiBSZXR1cm5UeXBlPFQ+PihcbiAgZm46IFRcbik6IFQge1xuICBsZXQgdXNlZCA9IGZhbHNlXG4gIGxldCByZXN1bHQ6IFJldHVyblR5cGU8VD5cblxuICByZXR1cm4gKCguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgIGlmICghdXNlZCkge1xuICAgICAgdXNlZCA9IHRydWVcbiAgICAgIHJlc3VsdCA9IGZuKC4uLmFyZ3MpXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRcbiAgfSkgYXMgVFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TG9jYXRpb25PcmlnaW4oKSB7XG4gIGNvbnN0IHsgcHJvdG9jb2wsIGhvc3RuYW1lLCBwb3J0IH0gPSB3aW5kb3cubG9jYXRpb25cbiAgcmV0dXJuIGAke3Byb3RvY29sfS8vJHtob3N0bmFtZX0ke3BvcnQgPyAnOicgKyBwb3J0IDogJyd9YFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VVJMKCkge1xuICBjb25zdCB7IGhyZWYgfSA9IHdpbmRvdy5sb2NhdGlvblxuICBjb25zdCBvcmlnaW4gPSBnZXRMb2NhdGlvbk9yaWdpbigpXG4gIHJldHVybiBocmVmLnN1YnN0cmluZyhvcmlnaW4ubGVuZ3RoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGlzcGxheU5hbWU8UD4oQ29tcG9uZW50OiBDb21wb25lbnRUeXBlPFA+KSB7XG4gIHJldHVybiB0eXBlb2YgQ29tcG9uZW50ID09PSAnc3RyaW5nJ1xuICAgID8gQ29tcG9uZW50XG4gICAgOiBDb21wb25lbnQuZGlzcGxheU5hbWUgfHwgQ29tcG9uZW50Lm5hbWUgfHwgJ1Vua25vd24nXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Jlc1NlbnQocmVzOiBTZXJ2ZXJSZXNwb25zZSkge1xuICByZXR1cm4gcmVzLmZpbmlzaGVkIHx8IHJlcy5oZWFkZXJzU2VudFxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbG9hZEdldEluaXRpYWxQcm9wczxcbiAgQyBleHRlbmRzIEJhc2VDb250ZXh0LFxuICBJUCA9IHt9LFxuICBQID0ge31cbj4oQXBwOiBOZXh0Q29tcG9uZW50VHlwZTxDLCBJUCwgUD4sIGN0eDogQyk6IFByb21pc2U8SVA+IHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICBpZiAoQXBwLnByb3RvdHlwZT8uZ2V0SW5pdGlhbFByb3BzKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFwiJHtnZXREaXNwbGF5TmFtZShcbiAgICAgICAgQXBwXG4gICAgICApfS5nZXRJbml0aWFsUHJvcHMoKVwiIGlzIGRlZmluZWQgYXMgYW4gaW5zdGFuY2UgbWV0aG9kIC0gdmlzaXQgaHR0cHM6Ly9lcnIuc2gvdmVyY2VsL25leHQuanMvZ2V0LWluaXRpYWwtcHJvcHMtYXMtYW4taW5zdGFuY2UtbWV0aG9kIGZvciBtb3JlIGluZm9ybWF0aW9uLmBcbiAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKVxuICAgIH1cbiAgfVxuICAvLyB3aGVuIGNhbGxlZCBmcm9tIF9hcHAgYGN0eGAgaXMgbmVzdGVkIGluIGBjdHhgXG4gIGNvbnN0IHJlcyA9IGN0eC5yZXMgfHwgKGN0eC5jdHggJiYgY3R4LmN0eC5yZXMpXG5cbiAgaWYgKCFBcHAuZ2V0SW5pdGlhbFByb3BzKSB7XG4gICAgaWYgKGN0eC5jdHggJiYgY3R4LkNvbXBvbmVudCkge1xuICAgICAgLy8gQHRzLWlnbm9yZSBwYWdlUHJvcHMgZGVmYXVsdFxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZVByb3BzOiBhd2FpdCBsb2FkR2V0SW5pdGlhbFByb3BzKGN0eC5Db21wb25lbnQsIGN0eC5jdHgpLFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge30gYXMgSVBcbiAgfVxuXG4gIGNvbnN0IHByb3BzID0gYXdhaXQgQXBwLmdldEluaXRpYWxQcm9wcyhjdHgpXG5cbiAgaWYgKHJlcyAmJiBpc1Jlc1NlbnQocmVzKSkge1xuICAgIHJldHVybiBwcm9wc1xuICB9XG5cbiAgaWYgKCFwcm9wcykge1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBgXCIke2dldERpc3BsYXlOYW1lKFxuICAgICAgQXBwXG4gICAgKX0uZ2V0SW5pdGlhbFByb3BzKClcIiBzaG91bGQgcmVzb2x2ZSB0byBhbiBvYmplY3QuIEJ1dCBmb3VuZCBcIiR7cHJvcHN9XCIgaW5zdGVhZC5gXG4gICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpXG4gIH1cblxuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIGlmIChPYmplY3Qua2V5cyhwcm9wcykubGVuZ3RoID09PSAwICYmICFjdHguY3R4KSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGAke2dldERpc3BsYXlOYW1lKFxuICAgICAgICAgIEFwcFxuICAgICAgICApfSByZXR1cm5lZCBhbiBlbXB0eSBvYmplY3QgZnJvbSBcXGBnZXRJbml0aWFsUHJvcHNcXGAuIFRoaXMgZGUtb3B0aW1pemVzIGFuZCBwcmV2ZW50cyBhdXRvbWF0aWMgc3RhdGljIG9wdGltaXphdGlvbi4gaHR0cHM6Ly9lcnIuc2gvdmVyY2VsL25leHQuanMvZW1wdHktb2JqZWN0LWdldEluaXRpYWxQcm9wc2BcbiAgICAgIClcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcHJvcHNcbn1cblxuZXhwb3J0IGNvbnN0IHVybE9iamVjdEtleXMgPSBbXG4gICdhdXRoJyxcbiAgJ2hhc2gnLFxuICAnaG9zdCcsXG4gICdob3N0bmFtZScsXG4gICdocmVmJyxcbiAgJ3BhdGgnLFxuICAncGF0aG5hbWUnLFxuICAncG9ydCcsXG4gICdwcm90b2NvbCcsXG4gICdxdWVyeScsXG4gICdzZWFyY2gnLFxuICAnc2xhc2hlcycsXG5dXG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRXaXRoVmFsaWRhdGlvbih1cmw6IFVybE9iamVjdCk6IHN0cmluZyB7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgIGlmICh1cmwgIT09IG51bGwgJiYgdHlwZW9mIHVybCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIE9iamVjdC5rZXlzKHVybCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGlmICh1cmxPYmplY3RLZXlzLmluZGV4T2Yoa2V5KSA9PT0gLTEpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBgVW5rbm93biBrZXkgcGFzc2VkIHZpYSB1cmxPYmplY3QgaW50byB1cmwuZm9ybWF0OiAke2tleX1gXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmb3JtYXRVcmwodXJsKVxufVxuXG5leHBvcnQgY29uc3QgU1AgPSB0eXBlb2YgcGVyZm9ybWFuY2UgIT09ICd1bmRlZmluZWQnXG5leHBvcnQgY29uc3QgU1QgPVxuICBTUCAmJlxuICB0eXBlb2YgcGVyZm9ybWFuY2UubWFyayA9PT0gJ2Z1bmN0aW9uJyAmJlxuICB0eXBlb2YgcGVyZm9ybWFuY2UubWVhc3VyZSA9PT0gJ2Z1bmN0aW9uJ1xuIiwiXCJ1c2Ugc3RyaWN0XCI7ZXhwb3J0cy5fX2VzTW9kdWxlPXRydWU7ZXhwb3J0cy5ub3JtYWxpemVQYXRoU2VwPW5vcm1hbGl6ZVBhdGhTZXA7ZXhwb3J0cy5kZW5vcm1hbGl6ZVBhZ2VQYXRoPWRlbm9ybWFsaXplUGFnZVBhdGg7ZnVuY3Rpb24gbm9ybWFsaXplUGF0aFNlcChwYXRoKXtyZXR1cm4gcGF0aC5yZXBsYWNlKC9cXFxcL2csJy8nKTt9ZnVuY3Rpb24gZGVub3JtYWxpemVQYWdlUGF0aChwYWdlKXtwYWdlPW5vcm1hbGl6ZVBhdGhTZXAocGFnZSk7aWYocGFnZS5zdGFydHNXaXRoKCcvaW5kZXgvJykpe3BhZ2U9cGFnZS5zbGljZSg2KTt9ZWxzZSBpZihwYWdlPT09Jy9pbmRleCcpe3BhZ2U9Jy8nO31yZXR1cm4gcGFnZTt9XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kZW5vcm1hbGl6ZS1wYWdlLXBhdGguanMubWFwIiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Rpc3QvbmV4dC1zZXJ2ZXIvbGliL2hlYWQnKVxuIiwiLyoqIEBsaWNlbnNlIFJlYWN0IHYxNi4xMy4xXG4gKiByZWFjdC1pcy5kZXZlbG9wbWVudC5qc1xuICpcbiAqIENvcHlyaWdodCAoYykgRmFjZWJvb2ssIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5cbid1c2Ugc3RyaWN0JztcblxuXG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG4vLyBUaGUgU3ltYm9sIHVzZWQgdG8gdGFnIHRoZSBSZWFjdEVsZW1lbnQtbGlrZSB0eXBlcy4gSWYgdGhlcmUgaXMgbm8gbmF0aXZlIFN5bWJvbFxuLy8gbm9yIHBvbHlmaWxsLCB0aGVuIGEgcGxhaW4gbnVtYmVyIGlzIHVzZWQgZm9yIHBlcmZvcm1hbmNlLlxudmFyIGhhc1N5bWJvbCA9IHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiYgU3ltYm9sLmZvcjtcbnZhciBSRUFDVF9FTEVNRU5UX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5lbGVtZW50JykgOiAweGVhYzc7XG52YXIgUkVBQ1RfUE9SVEFMX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5wb3J0YWwnKSA6IDB4ZWFjYTtcbnZhciBSRUFDVF9GUkFHTUVOVF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuZnJhZ21lbnQnKSA6IDB4ZWFjYjtcbnZhciBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3Quc3RyaWN0X21vZGUnKSA6IDB4ZWFjYztcbnZhciBSRUFDVF9QUk9GSUxFUl9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QucHJvZmlsZXInKSA6IDB4ZWFkMjtcbnZhciBSRUFDVF9QUk9WSURFUl9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QucHJvdmlkZXInKSA6IDB4ZWFjZDtcbnZhciBSRUFDVF9DT05URVhUX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5jb250ZXh0JykgOiAweGVhY2U7IC8vIFRPRE86IFdlIGRvbid0IHVzZSBBc3luY01vZGUgb3IgQ29uY3VycmVudE1vZGUgYW55bW9yZS4gVGhleSB3ZXJlIHRlbXBvcmFyeVxuLy8gKHVuc3RhYmxlKSBBUElzIHRoYXQgaGF2ZSBiZWVuIHJlbW92ZWQuIENhbiB3ZSByZW1vdmUgdGhlIHN5bWJvbHM/XG5cbnZhciBSRUFDVF9BU1lOQ19NT0RFX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5hc3luY19tb2RlJykgOiAweGVhY2Y7XG52YXIgUkVBQ1RfQ09OQ1VSUkVOVF9NT0RFX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5jb25jdXJyZW50X21vZGUnKSA6IDB4ZWFjZjtcbnZhciBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuZm9yd2FyZF9yZWYnKSA6IDB4ZWFkMDtcbnZhciBSRUFDVF9TVVNQRU5TRV9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3Quc3VzcGVuc2UnKSA6IDB4ZWFkMTtcbnZhciBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5zdXNwZW5zZV9saXN0JykgOiAweGVhZDg7XG52YXIgUkVBQ1RfTUVNT19UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QubWVtbycpIDogMHhlYWQzO1xudmFyIFJFQUNUX0xBWllfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LmxhenknKSA6IDB4ZWFkNDtcbnZhciBSRUFDVF9CTE9DS19UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuYmxvY2snKSA6IDB4ZWFkOTtcbnZhciBSRUFDVF9GVU5EQU1FTlRBTF9UWVBFID0gaGFzU3ltYm9sID8gU3ltYm9sLmZvcigncmVhY3QuZnVuZGFtZW50YWwnKSA6IDB4ZWFkNTtcbnZhciBSRUFDVF9SRVNQT05ERVJfVFlQRSA9IGhhc1N5bWJvbCA/IFN5bWJvbC5mb3IoJ3JlYWN0LnJlc3BvbmRlcicpIDogMHhlYWQ2O1xudmFyIFJFQUNUX1NDT1BFX1RZUEUgPSBoYXNTeW1ib2wgPyBTeW1ib2wuZm9yKCdyZWFjdC5zY29wZScpIDogMHhlYWQ3O1xuXG5mdW5jdGlvbiBpc1ZhbGlkRWxlbWVudFR5cGUodHlwZSkge1xuICByZXR1cm4gdHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nIHx8IC8vIE5vdGU6IGl0cyB0eXBlb2YgbWlnaHQgYmUgb3RoZXIgdGhhbiAnc3ltYm9sJyBvciAnbnVtYmVyJyBpZiBpdCdzIGEgcG9seWZpbGwuXG4gIHR5cGUgPT09IFJFQUNUX0ZSQUdNRU5UX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfQ09OQ1VSUkVOVF9NT0RFX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfUFJPRklMRVJfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1NVU1BFTlNFX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFIHx8IHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiB0eXBlICE9PSBudWxsICYmICh0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9MQVpZX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTUVNT19UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX1BST1ZJREVSX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfQ09OVEVYVF9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9SRVNQT05ERVJfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9TQ09QRV9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0JMT0NLX1RZUEUpO1xufVxuXG5mdW5jdGlvbiB0eXBlT2Yob2JqZWN0KSB7XG4gIGlmICh0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwpIHtcbiAgICB2YXIgJCR0eXBlb2YgPSBvYmplY3QuJCR0eXBlb2Y7XG5cbiAgICBzd2l0Y2ggKCQkdHlwZW9mKSB7XG4gICAgICBjYXNlIFJFQUNUX0VMRU1FTlRfVFlQRTpcbiAgICAgICAgdmFyIHR5cGUgPSBvYmplY3QudHlwZTtcblxuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICBjYXNlIFJFQUNUX0FTWU5DX01PREVfVFlQRTpcbiAgICAgICAgICBjYXNlIFJFQUNUX0NPTkNVUlJFTlRfTU9ERV9UWVBFOlxuICAgICAgICAgIGNhc2UgUkVBQ1RfRlJBR01FTlRfVFlQRTpcbiAgICAgICAgICBjYXNlIFJFQUNUX1BST0ZJTEVSX1RZUEU6XG4gICAgICAgICAgY2FzZSBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFOlxuICAgICAgICAgIGNhc2UgUkVBQ1RfU1VTUEVOU0VfVFlQRTpcbiAgICAgICAgICAgIHJldHVybiB0eXBlO1xuXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHZhciAkJHR5cGVvZlR5cGUgPSB0eXBlICYmIHR5cGUuJCR0eXBlb2Y7XG5cbiAgICAgICAgICAgIHN3aXRjaCAoJCR0eXBlb2ZUeXBlKSB7XG4gICAgICAgICAgICAgIGNhc2UgUkVBQ1RfQ09OVEVYVF9UWVBFOlxuICAgICAgICAgICAgICBjYXNlIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU6XG4gICAgICAgICAgICAgIGNhc2UgUkVBQ1RfTEFaWV9UWVBFOlxuICAgICAgICAgICAgICBjYXNlIFJFQUNUX01FTU9fVFlQRTpcbiAgICAgICAgICAgICAgY2FzZSBSRUFDVF9QUk9WSURFUl9UWVBFOlxuICAgICAgICAgICAgICAgIHJldHVybiAkJHR5cGVvZlR5cGU7XG5cbiAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJCR0eXBlb2Y7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICBjYXNlIFJFQUNUX1BPUlRBTF9UWVBFOlxuICAgICAgICByZXR1cm4gJCR0eXBlb2Y7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn0gLy8gQXN5bmNNb2RlIGlzIGRlcHJlY2F0ZWQgYWxvbmcgd2l0aCBpc0FzeW5jTW9kZVxuXG52YXIgQXN5bmNNb2RlID0gUkVBQ1RfQVNZTkNfTU9ERV9UWVBFO1xudmFyIENvbmN1cnJlbnRNb2RlID0gUkVBQ1RfQ09OQ1VSUkVOVF9NT0RFX1RZUEU7XG52YXIgQ29udGV4dENvbnN1bWVyID0gUkVBQ1RfQ09OVEVYVF9UWVBFO1xudmFyIENvbnRleHRQcm92aWRlciA9IFJFQUNUX1BST1ZJREVSX1RZUEU7XG52YXIgRWxlbWVudCA9IFJFQUNUX0VMRU1FTlRfVFlQRTtcbnZhciBGb3J3YXJkUmVmID0gUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRTtcbnZhciBGcmFnbWVudCA9IFJFQUNUX0ZSQUdNRU5UX1RZUEU7XG52YXIgTGF6eSA9IFJFQUNUX0xBWllfVFlQRTtcbnZhciBNZW1vID0gUkVBQ1RfTUVNT19UWVBFO1xudmFyIFBvcnRhbCA9IFJFQUNUX1BPUlRBTF9UWVBFO1xudmFyIFByb2ZpbGVyID0gUkVBQ1RfUFJPRklMRVJfVFlQRTtcbnZhciBTdHJpY3RNb2RlID0gUkVBQ1RfU1RSSUNUX01PREVfVFlQRTtcbnZhciBTdXNwZW5zZSA9IFJFQUNUX1NVU1BFTlNFX1RZUEU7XG52YXIgaGFzV2FybmVkQWJvdXREZXByZWNhdGVkSXNBc3luY01vZGUgPSBmYWxzZTsgLy8gQXN5bmNNb2RlIHNob3VsZCBiZSBkZXByZWNhdGVkXG5cbmZ1bmN0aW9uIGlzQXN5bmNNb2RlKG9iamVjdCkge1xuICB7XG4gICAgaWYgKCFoYXNXYXJuZWRBYm91dERlcHJlY2F0ZWRJc0FzeW5jTW9kZSkge1xuICAgICAgaGFzV2FybmVkQWJvdXREZXByZWNhdGVkSXNBc3luY01vZGUgPSB0cnVlOyAvLyBVc2luZyBjb25zb2xlWyd3YXJuJ10gdG8gZXZhZGUgQmFiZWwgYW5kIEVTTGludFxuXG4gICAgICBjb25zb2xlWyd3YXJuJ10oJ1RoZSBSZWFjdElzLmlzQXN5bmNNb2RlKCkgYWxpYXMgaGFzIGJlZW4gZGVwcmVjYXRlZCwgJyArICdhbmQgd2lsbCBiZSByZW1vdmVkIGluIFJlYWN0IDE3Ky4gVXBkYXRlIHlvdXIgY29kZSB0byB1c2UgJyArICdSZWFjdElzLmlzQ29uY3VycmVudE1vZGUoKSBpbnN0ZWFkLiBJdCBoYXMgdGhlIGV4YWN0IHNhbWUgQVBJLicpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBpc0NvbmN1cnJlbnRNb2RlKG9iamVjdCkgfHwgdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX0FTWU5DX01PREVfVFlQRTtcbn1cbmZ1bmN0aW9uIGlzQ29uY3VycmVudE1vZGUob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlT2Yob2JqZWN0KSA9PT0gUkVBQ1RfQ09OQ1VSUkVOVF9NT0RFX1RZUEU7XG59XG5mdW5jdGlvbiBpc0NvbnRleHRDb25zdW1lcihvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9DT05URVhUX1RZUEU7XG59XG5mdW5jdGlvbiBpc0NvbnRleHRQcm92aWRlcihvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9QUk9WSURFUl9UWVBFO1xufVxuZnVuY3Rpb24gaXNFbGVtZW50KG9iamVjdCkge1xuICByZXR1cm4gdHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgJiYgb2JqZWN0ICE9PSBudWxsICYmIG9iamVjdC4kJHR5cGVvZiA9PT0gUkVBQ1RfRUxFTUVOVF9UWVBFO1xufVxuZnVuY3Rpb24gaXNGb3J3YXJkUmVmKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU7XG59XG5mdW5jdGlvbiBpc0ZyYWdtZW50KG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX0ZSQUdNRU5UX1RZUEU7XG59XG5mdW5jdGlvbiBpc0xhenkob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlT2Yob2JqZWN0KSA9PT0gUkVBQ1RfTEFaWV9UWVBFO1xufVxuZnVuY3Rpb24gaXNNZW1vKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX01FTU9fVFlQRTtcbn1cbmZ1bmN0aW9uIGlzUG9ydGFsKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX1BPUlRBTF9UWVBFO1xufVxuZnVuY3Rpb24gaXNQcm9maWxlcihvYmplY3QpIHtcbiAgcmV0dXJuIHR5cGVPZihvYmplY3QpID09PSBSRUFDVF9QUk9GSUxFUl9UWVBFO1xufVxuZnVuY3Rpb24gaXNTdHJpY3RNb2RlKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX1NUUklDVF9NT0RFX1RZUEU7XG59XG5mdW5jdGlvbiBpc1N1c3BlbnNlKG9iamVjdCkge1xuICByZXR1cm4gdHlwZU9mKG9iamVjdCkgPT09IFJFQUNUX1NVU1BFTlNFX1RZUEU7XG59XG5cbmV4cG9ydHMuQXN5bmNNb2RlID0gQXN5bmNNb2RlO1xuZXhwb3J0cy5Db25jdXJyZW50TW9kZSA9IENvbmN1cnJlbnRNb2RlO1xuZXhwb3J0cy5Db250ZXh0Q29uc3VtZXIgPSBDb250ZXh0Q29uc3VtZXI7XG5leHBvcnRzLkNvbnRleHRQcm92aWRlciA9IENvbnRleHRQcm92aWRlcjtcbmV4cG9ydHMuRWxlbWVudCA9IEVsZW1lbnQ7XG5leHBvcnRzLkZvcndhcmRSZWYgPSBGb3J3YXJkUmVmO1xuZXhwb3J0cy5GcmFnbWVudCA9IEZyYWdtZW50O1xuZXhwb3J0cy5MYXp5ID0gTGF6eTtcbmV4cG9ydHMuTWVtbyA9IE1lbW87XG5leHBvcnRzLlBvcnRhbCA9IFBvcnRhbDtcbmV4cG9ydHMuUHJvZmlsZXIgPSBQcm9maWxlcjtcbmV4cG9ydHMuU3RyaWN0TW9kZSA9IFN0cmljdE1vZGU7XG5leHBvcnRzLlN1c3BlbnNlID0gU3VzcGVuc2U7XG5leHBvcnRzLmlzQXN5bmNNb2RlID0gaXNBc3luY01vZGU7XG5leHBvcnRzLmlzQ29uY3VycmVudE1vZGUgPSBpc0NvbmN1cnJlbnRNb2RlO1xuZXhwb3J0cy5pc0NvbnRleHRDb25zdW1lciA9IGlzQ29udGV4dENvbnN1bWVyO1xuZXhwb3J0cy5pc0NvbnRleHRQcm92aWRlciA9IGlzQ29udGV4dFByb3ZpZGVyO1xuZXhwb3J0cy5pc0VsZW1lbnQgPSBpc0VsZW1lbnQ7XG5leHBvcnRzLmlzRm9yd2FyZFJlZiA9IGlzRm9yd2FyZFJlZjtcbmV4cG9ydHMuaXNGcmFnbWVudCA9IGlzRnJhZ21lbnQ7XG5leHBvcnRzLmlzTGF6eSA9IGlzTGF6eTtcbmV4cG9ydHMuaXNNZW1vID0gaXNNZW1vO1xuZXhwb3J0cy5pc1BvcnRhbCA9IGlzUG9ydGFsO1xuZXhwb3J0cy5pc1Byb2ZpbGVyID0gaXNQcm9maWxlcjtcbmV4cG9ydHMuaXNTdHJpY3RNb2RlID0gaXNTdHJpY3RNb2RlO1xuZXhwb3J0cy5pc1N1c3BlbnNlID0gaXNTdXNwZW5zZTtcbmV4cG9ydHMuaXNWYWxpZEVsZW1lbnRUeXBlID0gaXNWYWxpZEVsZW1lbnRUeXBlO1xuZXhwb3J0cy50eXBlT2YgPSB0eXBlT2Y7XG4gIH0pKCk7XG59XG4iLCIndXNlIHN0cmljdCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QtaXMucHJvZHVjdGlvbi5taW4uanMnKTtcbn0gZWxzZSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QtaXMuZGV2ZWxvcG1lbnQuanMnKTtcbn1cbiIsIi8qKiBAbGljZW5zZSBSZWFjdCB2MTcuMC4xXG4gKiByZWFjdC1qc3gtZGV2LXJ1bnRpbWUuZGV2ZWxvcG1lbnQuanNcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIEZhY2Vib29rLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG4ndXNlIHN0cmljdCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgKGZ1bmN0aW9uKCkge1xuJ3VzZSBzdHJpY3QnO1xuXG52YXIgUmVhY3QgPSByZXF1aXJlKCdyZWFjdCcpO1xudmFyIF9hc3NpZ24gPSByZXF1aXJlKCdvYmplY3QtYXNzaWduJyk7XG5cbi8vIEFUVEVOVElPTlxuLy8gV2hlbiBhZGRpbmcgbmV3IHN5bWJvbHMgdG8gdGhpcyBmaWxlLFxuLy8gUGxlYXNlIGNvbnNpZGVyIGFsc28gYWRkaW5nIHRvICdyZWFjdC1kZXZ0b29scy1zaGFyZWQvc3JjL2JhY2tlbmQvUmVhY3RTeW1ib2xzJ1xuLy8gVGhlIFN5bWJvbCB1c2VkIHRvIHRhZyB0aGUgUmVhY3RFbGVtZW50LWxpa2UgdHlwZXMuIElmIHRoZXJlIGlzIG5vIG5hdGl2ZSBTeW1ib2xcbi8vIG5vciBwb2x5ZmlsbCwgdGhlbiBhIHBsYWluIG51bWJlciBpcyB1c2VkIGZvciBwZXJmb3JtYW5jZS5cbnZhciBSRUFDVF9FTEVNRU5UX1RZUEUgPSAweGVhYzc7XG52YXIgUkVBQ1RfUE9SVEFMX1RZUEUgPSAweGVhY2E7XG5leHBvcnRzLkZyYWdtZW50ID0gMHhlYWNiO1xudmFyIFJFQUNUX1NUUklDVF9NT0RFX1RZUEUgPSAweGVhY2M7XG52YXIgUkVBQ1RfUFJPRklMRVJfVFlQRSA9IDB4ZWFkMjtcbnZhciBSRUFDVF9QUk9WSURFUl9UWVBFID0gMHhlYWNkO1xudmFyIFJFQUNUX0NPTlRFWFRfVFlQRSA9IDB4ZWFjZTtcbnZhciBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFID0gMHhlYWQwO1xudmFyIFJFQUNUX1NVU1BFTlNFX1RZUEUgPSAweGVhZDE7XG52YXIgUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFID0gMHhlYWQ4O1xudmFyIFJFQUNUX01FTU9fVFlQRSA9IDB4ZWFkMztcbnZhciBSRUFDVF9MQVpZX1RZUEUgPSAweGVhZDQ7XG52YXIgUkVBQ1RfQkxPQ0tfVFlQRSA9IDB4ZWFkOTtcbnZhciBSRUFDVF9TRVJWRVJfQkxPQ0tfVFlQRSA9IDB4ZWFkYTtcbnZhciBSRUFDVF9GVU5EQU1FTlRBTF9UWVBFID0gMHhlYWQ1O1xudmFyIFJFQUNUX1NDT1BFX1RZUEUgPSAweGVhZDc7XG52YXIgUkVBQ1RfT1BBUVVFX0lEX1RZUEUgPSAweGVhZTA7XG52YXIgUkVBQ1RfREVCVUdfVFJBQ0lOR19NT0RFX1RZUEUgPSAweGVhZTE7XG52YXIgUkVBQ1RfT0ZGU0NSRUVOX1RZUEUgPSAweGVhZTI7XG52YXIgUkVBQ1RfTEVHQUNZX0hJRERFTl9UWVBFID0gMHhlYWUzO1xuXG5pZiAodHlwZW9mIFN5bWJvbCA9PT0gJ2Z1bmN0aW9uJyAmJiBTeW1ib2wuZm9yKSB7XG4gIHZhciBzeW1ib2xGb3IgPSBTeW1ib2wuZm9yO1xuICBSRUFDVF9FTEVNRU5UX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmVsZW1lbnQnKTtcbiAgUkVBQ1RfUE9SVEFMX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LnBvcnRhbCcpO1xuICBleHBvcnRzLkZyYWdtZW50ID0gc3ltYm9sRm9yKCdyZWFjdC5mcmFnbWVudCcpO1xuICBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zdHJpY3RfbW9kZScpO1xuICBSRUFDVF9QUk9GSUxFUl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5wcm9maWxlcicpO1xuICBSRUFDVF9QUk9WSURFUl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5wcm92aWRlcicpO1xuICBSRUFDVF9DT05URVhUX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmNvbnRleHQnKTtcbiAgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZm9yd2FyZF9yZWYnKTtcbiAgUkVBQ1RfU1VTUEVOU0VfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Quc3VzcGVuc2UnKTtcbiAgUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zdXNwZW5zZV9saXN0Jyk7XG4gIFJFQUNUX01FTU9fVFlQRSA9IHN5bWJvbEZvcigncmVhY3QubWVtbycpO1xuICBSRUFDVF9MQVpZX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmxhenknKTtcbiAgUkVBQ1RfQkxPQ0tfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuYmxvY2snKTtcbiAgUkVBQ1RfU0VSVkVSX0JMT0NLX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LnNlcnZlci5ibG9jaycpO1xuICBSRUFDVF9GVU5EQU1FTlRBTF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5mdW5kYW1lbnRhbCcpO1xuICBSRUFDVF9TQ09QRV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zY29wZScpO1xuICBSRUFDVF9PUEFRVUVfSURfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Qub3BhcXVlLmlkJyk7XG4gIFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5kZWJ1Z190cmFjZV9tb2RlJyk7XG4gIFJFQUNUX09GRlNDUkVFTl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5vZmZzY3JlZW4nKTtcbiAgUkVBQ1RfTEVHQUNZX0hJRERFTl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5sZWdhY3lfaGlkZGVuJyk7XG59XG5cbnZhciBNQVlCRV9JVEVSQVRPUl9TWU1CT0wgPSB0eXBlb2YgU3ltYm9sID09PSAnZnVuY3Rpb24nICYmIFN5bWJvbC5pdGVyYXRvcjtcbnZhciBGQVVYX0lURVJBVE9SX1NZTUJPTCA9ICdAQGl0ZXJhdG9yJztcbmZ1bmN0aW9uIGdldEl0ZXJhdG9yRm4obWF5YmVJdGVyYWJsZSkge1xuICBpZiAobWF5YmVJdGVyYWJsZSA9PT0gbnVsbCB8fCB0eXBlb2YgbWF5YmVJdGVyYWJsZSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHZhciBtYXliZUl0ZXJhdG9yID0gTUFZQkVfSVRFUkFUT1JfU1lNQk9MICYmIG1heWJlSXRlcmFibGVbTUFZQkVfSVRFUkFUT1JfU1lNQk9MXSB8fCBtYXliZUl0ZXJhYmxlW0ZBVVhfSVRFUkFUT1JfU1lNQk9MXTtcblxuICBpZiAodHlwZW9mIG1heWJlSXRlcmF0b3IgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gbWF5YmVJdGVyYXRvcjtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG52YXIgUmVhY3RTaGFyZWRJbnRlcm5hbHMgPSBSZWFjdC5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRDtcblxuZnVuY3Rpb24gZXJyb3IoZm9ybWF0KSB7XG4gIHtcbiAgICBmb3IgKHZhciBfbGVuMiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbjIgPiAxID8gX2xlbjIgLSAxIDogMCksIF9rZXkyID0gMTsgX2tleTIgPCBfbGVuMjsgX2tleTIrKykge1xuICAgICAgYXJnc1tfa2V5MiAtIDFdID0gYXJndW1lbnRzW19rZXkyXTtcbiAgICB9XG5cbiAgICBwcmludFdhcm5pbmcoJ2Vycm9yJywgZm9ybWF0LCBhcmdzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBwcmludFdhcm5pbmcobGV2ZWwsIGZvcm1hdCwgYXJncykge1xuICAvLyBXaGVuIGNoYW5naW5nIHRoaXMgbG9naWMsIHlvdSBtaWdodCB3YW50IHRvIGFsc29cbiAgLy8gdXBkYXRlIGNvbnNvbGVXaXRoU3RhY2tEZXYud3d3LmpzIGFzIHdlbGwuXG4gIHtcbiAgICB2YXIgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0RGVidWdDdXJyZW50RnJhbWU7XG4gICAgdmFyIHN0YWNrID0gUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5nZXRTdGFja0FkZGVuZHVtKCk7XG5cbiAgICBpZiAoc3RhY2sgIT09ICcnKSB7XG4gICAgICBmb3JtYXQgKz0gJyVzJztcbiAgICAgIGFyZ3MgPSBhcmdzLmNvbmNhdChbc3RhY2tdKTtcbiAgICB9XG5cbiAgICB2YXIgYXJnc1dpdGhGb3JtYXQgPSBhcmdzLm1hcChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuICcnICsgaXRlbTtcbiAgICB9KTsgLy8gQ2FyZWZ1bDogUk4gY3VycmVudGx5IGRlcGVuZHMgb24gdGhpcyBwcmVmaXhcblxuICAgIGFyZ3NXaXRoRm9ybWF0LnVuc2hpZnQoJ1dhcm5pbmc6ICcgKyBmb3JtYXQpOyAvLyBXZSBpbnRlbnRpb25hbGx5IGRvbid0IHVzZSBzcHJlYWQgKG9yIC5hcHBseSkgZGlyZWN0bHkgYmVjYXVzZSBpdFxuICAgIC8vIGJyZWFrcyBJRTk6IGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTM2MTBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nXG5cbiAgICBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY2FsbChjb25zb2xlW2xldmVsXSwgY29uc29sZSwgYXJnc1dpdGhGb3JtYXQpO1xuICB9XG59XG5cbi8vIEZpbHRlciBjZXJ0YWluIERPTSBhdHRyaWJ1dGVzIChlLmcuIHNyYywgaHJlZikgaWYgdGhlaXIgdmFsdWVzIGFyZSBlbXB0eSBzdHJpbmdzLlxuXG52YXIgZW5hYmxlU2NvcGVBUEkgPSBmYWxzZTsgLy8gRXhwZXJpbWVudGFsIENyZWF0ZSBFdmVudCBIYW5kbGUgQVBJLlxuXG5mdW5jdGlvbiBpc1ZhbGlkRWxlbWVudFR5cGUodHlwZSkge1xuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gLy8gTm90ZTogdHlwZW9mIG1pZ2h0IGJlIG90aGVyIHRoYW4gJ3N5bWJvbCcgb3IgJ251bWJlcicgKGUuZy4gaWYgaXQncyBhIHBvbHlmaWxsKS5cblxuXG4gIGlmICh0eXBlID09PSBleHBvcnRzLkZyYWdtZW50IHx8IHR5cGUgPT09IFJFQUNUX1BST0ZJTEVSX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfREVCVUdfVFJBQ0lOR19NT0RFX1RZUEUgfHwgdHlwZSA9PT0gUkVBQ1RfU1RSSUNUX01PREVfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9TVVNQRU5TRV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9MRUdBQ1lfSElEREVOX1RZUEUgfHwgZW5hYmxlU2NvcGVBUEkgKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnICYmIHR5cGUgIT09IG51bGwpIHtcbiAgICBpZiAodHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTEFaWV9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX01FTU9fVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9QUk9WSURFUl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0NPTlRFWFRfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZVTkRBTUVOVEFMX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfQkxPQ0tfVFlQRSB8fCB0eXBlWzBdID09PSBSRUFDVF9TRVJWRVJfQkxPQ0tfVFlQRSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5mdW5jdGlvbiBnZXRXcmFwcGVkTmFtZShvdXRlclR5cGUsIGlubmVyVHlwZSwgd3JhcHBlck5hbWUpIHtcbiAgdmFyIGZ1bmN0aW9uTmFtZSA9IGlubmVyVHlwZS5kaXNwbGF5TmFtZSB8fCBpbm5lclR5cGUubmFtZSB8fCAnJztcbiAgcmV0dXJuIG91dGVyVHlwZS5kaXNwbGF5TmFtZSB8fCAoZnVuY3Rpb25OYW1lICE9PSAnJyA/IHdyYXBwZXJOYW1lICsgXCIoXCIgKyBmdW5jdGlvbk5hbWUgKyBcIilcIiA6IHdyYXBwZXJOYW1lKTtcbn1cblxuZnVuY3Rpb24gZ2V0Q29udGV4dE5hbWUodHlwZSkge1xuICByZXR1cm4gdHlwZS5kaXNwbGF5TmFtZSB8fCAnQ29udGV4dCc7XG59XG5cbmZ1bmN0aW9uIGdldENvbXBvbmVudE5hbWUodHlwZSkge1xuICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgLy8gSG9zdCByb290LCB0ZXh0IG5vZGUgb3IganVzdCBpbnZhbGlkIHR5cGUuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICB7XG4gICAgaWYgKHR5cGVvZiB0eXBlLnRhZyA9PT0gJ251bWJlcicpIHtcbiAgICAgIGVycm9yKCdSZWNlaXZlZCBhbiB1bmV4cGVjdGVkIG9iamVjdCBpbiBnZXRDb21wb25lbnROYW1lKCkuICcgKyAnVGhpcyBpcyBsaWtlbHkgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiB0eXBlLmRpc3BsYXlOYW1lIHx8IHR5cGUubmFtZSB8fCBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBleHBvcnRzLkZyYWdtZW50OlxuICAgICAgcmV0dXJuICdGcmFnbWVudCc7XG5cbiAgICBjYXNlIFJFQUNUX1BPUlRBTF9UWVBFOlxuICAgICAgcmV0dXJuICdQb3J0YWwnO1xuXG4gICAgY2FzZSBSRUFDVF9QUk9GSUxFUl9UWVBFOlxuICAgICAgcmV0dXJuICdQcm9maWxlcic7XG5cbiAgICBjYXNlIFJFQUNUX1NUUklDVF9NT0RFX1RZUEU6XG4gICAgICByZXR1cm4gJ1N0cmljdE1vZGUnO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9UWVBFOlxuICAgICAgcmV0dXJuICdTdXNwZW5zZSc7XG5cbiAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRTpcbiAgICAgIHJldHVybiAnU3VzcGVuc2VMaXN0JztcbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcpIHtcbiAgICBzd2l0Y2ggKHR5cGUuJCR0eXBlb2YpIHtcbiAgICAgIGNhc2UgUkVBQ1RfQ09OVEVYVF9UWVBFOlxuICAgICAgICB2YXIgY29udGV4dCA9IHR5cGU7XG4gICAgICAgIHJldHVybiBnZXRDb250ZXh0TmFtZShjb250ZXh0KSArICcuQ29uc3VtZXInO1xuXG4gICAgICBjYXNlIFJFQUNUX1BST1ZJREVSX1RZUEU6XG4gICAgICAgIHZhciBwcm92aWRlciA9IHR5cGU7XG4gICAgICAgIHJldHVybiBnZXRDb250ZXh0TmFtZShwcm92aWRlci5fY29udGV4dCkgKyAnLlByb3ZpZGVyJztcblxuICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICByZXR1cm4gZ2V0V3JhcHBlZE5hbWUodHlwZSwgdHlwZS5yZW5kZXIsICdGb3J3YXJkUmVmJyk7XG5cbiAgICAgIGNhc2UgUkVBQ1RfTUVNT19UWVBFOlxuICAgICAgICByZXR1cm4gZ2V0Q29tcG9uZW50TmFtZSh0eXBlLnR5cGUpO1xuXG4gICAgICBjYXNlIFJFQUNUX0JMT0NLX1RZUEU6XG4gICAgICAgIHJldHVybiBnZXRDb21wb25lbnROYW1lKHR5cGUuX3JlbmRlcik7XG5cbiAgICAgIGNhc2UgUkVBQ1RfTEFaWV9UWVBFOlxuICAgICAgICB7XG4gICAgICAgICAgdmFyIGxhenlDb21wb25lbnQgPSB0eXBlO1xuICAgICAgICAgIHZhciBwYXlsb2FkID0gbGF6eUNvbXBvbmVudC5fcGF5bG9hZDtcbiAgICAgICAgICB2YXIgaW5pdCA9IGxhenlDb21wb25lbnQuX2luaXQ7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIGdldENvbXBvbmVudE5hbWUoaW5pdChwYXlsb2FkKSk7XG4gICAgICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59XG5cbi8vIEhlbHBlcnMgdG8gcGF0Y2ggY29uc29sZS5sb2dzIHRvIGF2b2lkIGxvZ2dpbmcgZHVyaW5nIHNpZGUtZWZmZWN0IGZyZWVcbi8vIHJlcGxheWluZyBvbiByZW5kZXIgZnVuY3Rpb24uIFRoaXMgY3VycmVudGx5IG9ubHkgcGF0Y2hlcyB0aGUgb2JqZWN0XG4vLyBsYXppbHkgd2hpY2ggd29uJ3QgY292ZXIgaWYgdGhlIGxvZyBmdW5jdGlvbiB3YXMgZXh0cmFjdGVkIGVhZ2VybHkuXG4vLyBXZSBjb3VsZCBhbHNvIGVhZ2VybHkgcGF0Y2ggdGhlIG1ldGhvZC5cbnZhciBkaXNhYmxlZERlcHRoID0gMDtcbnZhciBwcmV2TG9nO1xudmFyIHByZXZJbmZvO1xudmFyIHByZXZXYXJuO1xudmFyIHByZXZFcnJvcjtcbnZhciBwcmV2R3JvdXA7XG52YXIgcHJldkdyb3VwQ29sbGFwc2VkO1xudmFyIHByZXZHcm91cEVuZDtcblxuZnVuY3Rpb24gZGlzYWJsZWRMb2coKSB7fVxuXG5kaXNhYmxlZExvZy5fX3JlYWN0RGlzYWJsZWRMb2cgPSB0cnVlO1xuZnVuY3Rpb24gZGlzYWJsZUxvZ3MoKSB7XG4gIHtcbiAgICBpZiAoZGlzYWJsZWREZXB0aCA9PT0gMCkge1xuICAgICAgLyogZXNsaW50LWRpc2FibGUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nICovXG4gICAgICBwcmV2TG9nID0gY29uc29sZS5sb2c7XG4gICAgICBwcmV2SW5mbyA9IGNvbnNvbGUuaW5mbztcbiAgICAgIHByZXZXYXJuID0gY29uc29sZS53YXJuO1xuICAgICAgcHJldkVycm9yID0gY29uc29sZS5lcnJvcjtcbiAgICAgIHByZXZHcm91cCA9IGNvbnNvbGUuZ3JvdXA7XG4gICAgICBwcmV2R3JvdXBDb2xsYXBzZWQgPSBjb25zb2xlLmdyb3VwQ29sbGFwc2VkO1xuICAgICAgcHJldkdyb3VwRW5kID0gY29uc29sZS5ncm91cEVuZDsgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L2lzc3Vlcy8xOTA5OVxuXG4gICAgICB2YXIgcHJvcHMgPSB7XG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IGRpc2FibGVkTG9nLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZVxuICAgICAgfTsgLy8gJEZsb3dGaXhNZSBGbG93IHRoaW5rcyBjb25zb2xlIGlzIGltbXV0YWJsZS5cblxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY29uc29sZSwge1xuICAgICAgICBpbmZvOiBwcm9wcyxcbiAgICAgICAgbG9nOiBwcm9wcyxcbiAgICAgICAgd2FybjogcHJvcHMsXG4gICAgICAgIGVycm9yOiBwcm9wcyxcbiAgICAgICAgZ3JvdXA6IHByb3BzLFxuICAgICAgICBncm91cENvbGxhcHNlZDogcHJvcHMsXG4gICAgICAgIGdyb3VwRW5kOiBwcm9wc1xuICAgICAgfSk7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgIH1cblxuICAgIGRpc2FibGVkRGVwdGgrKztcbiAgfVxufVxuZnVuY3Rpb24gcmVlbmFibGVMb2dzKCkge1xuICB7XG4gICAgZGlzYWJsZWREZXB0aC0tO1xuXG4gICAgaWYgKGRpc2FibGVkRGVwdGggPT09IDApIHtcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgICAgdmFyIHByb3BzID0ge1xuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgICB9OyAvLyAkRmxvd0ZpeE1lIEZsb3cgdGhpbmtzIGNvbnNvbGUgaXMgaW1tdXRhYmxlLlxuXG4gICAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhjb25zb2xlLCB7XG4gICAgICAgIGxvZzogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkxvZ1xuICAgICAgICB9KSxcbiAgICAgICAgaW5mbzogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkluZm9cbiAgICAgICAgfSksXG4gICAgICAgIHdhcm46IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZXYXJuXG4gICAgICAgIH0pLFxuICAgICAgICBlcnJvcjogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkVycm9yXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cDogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkdyb3VwXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cENvbGxhcHNlZDogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkdyb3VwQ29sbGFwc2VkXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cEVuZDogX2Fzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkdyb3VwRW5kXG4gICAgICAgIH0pXG4gICAgICB9KTtcbiAgICAgIC8qIGVzbGludC1lbmFibGUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nICovXG4gICAgfVxuXG4gICAgaWYgKGRpc2FibGVkRGVwdGggPCAwKSB7XG4gICAgICBlcnJvcignZGlzYWJsZWREZXB0aCBmZWxsIGJlbG93IHplcm8uICcgKyAnVGhpcyBpcyBhIGJ1ZyBpbiBSZWFjdC4gUGxlYXNlIGZpbGUgYW4gaXNzdWUuJyk7XG4gICAgfVxuICB9XG59XG5cbnZhciBSZWFjdEN1cnJlbnREaXNwYXRjaGVyID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcjtcbnZhciBwcmVmaXg7XG5mdW5jdGlvbiBkZXNjcmliZUJ1aWx0SW5Db21wb25lbnRGcmFtZShuYW1lLCBzb3VyY2UsIG93bmVyRm4pIHtcbiAge1xuICAgIGlmIChwcmVmaXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gRXh0cmFjdCB0aGUgVk0gc3BlY2lmaWMgcHJlZml4IHVzZWQgYnkgZWFjaCBsaW5lLlxuICAgICAgdHJ5IHtcbiAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgdmFyIG1hdGNoID0geC5zdGFjay50cmltKCkubWF0Y2goL1xcbiggKihhdCApPykvKTtcbiAgICAgICAgcHJlZml4ID0gbWF0Y2ggJiYgbWF0Y2hbMV0gfHwgJyc7XG4gICAgICB9XG4gICAgfSAvLyBXZSB1c2UgdGhlIHByZWZpeCB0byBlbnN1cmUgb3VyIHN0YWNrcyBsaW5lIHVwIHdpdGggbmF0aXZlIHN0YWNrIGZyYW1lcy5cblxuXG4gICAgcmV0dXJuICdcXG4nICsgcHJlZml4ICsgbmFtZTtcbiAgfVxufVxudmFyIHJlZW50cnkgPSBmYWxzZTtcbnZhciBjb21wb25lbnRGcmFtZUNhY2hlO1xuXG57XG4gIHZhciBQb3NzaWJseVdlYWtNYXAgPSB0eXBlb2YgV2Vha01hcCA9PT0gJ2Z1bmN0aW9uJyA/IFdlYWtNYXAgOiBNYXA7XG4gIGNvbXBvbmVudEZyYW1lQ2FjaGUgPSBuZXcgUG9zc2libHlXZWFrTWFwKCk7XG59XG5cbmZ1bmN0aW9uIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGNvbnN0cnVjdCkge1xuICAvLyBJZiBzb21ldGhpbmcgYXNrZWQgZm9yIGEgc3RhY2sgaW5zaWRlIGEgZmFrZSByZW5kZXIsIGl0IHNob3VsZCBnZXQgaWdub3JlZC5cbiAgaWYgKCFmbiB8fCByZWVudHJ5KSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAge1xuICAgIHZhciBmcmFtZSA9IGNvbXBvbmVudEZyYW1lQ2FjaGUuZ2V0KGZuKTtcblxuICAgIGlmIChmcmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZnJhbWU7XG4gICAgfVxuICB9XG5cbiAgdmFyIGNvbnRyb2w7XG4gIHJlZW50cnkgPSB0cnVlO1xuICB2YXIgcHJldmlvdXNQcmVwYXJlU3RhY2tUcmFjZSA9IEVycm9yLnByZXBhcmVTdGFja1RyYWNlOyAvLyAkRmxvd0ZpeE1lIEl0IGRvZXMgYWNjZXB0IHVuZGVmaW5lZC5cblxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHVuZGVmaW5lZDtcbiAgdmFyIHByZXZpb3VzRGlzcGF0Y2hlcjtcblxuICB7XG4gICAgcHJldmlvdXNEaXNwYXRjaGVyID0gUmVhY3RDdXJyZW50RGlzcGF0Y2hlci5jdXJyZW50OyAvLyBTZXQgdGhlIGRpc3BhdGNoZXIgaW4gREVWIGJlY2F1c2UgdGhpcyBtaWdodCBiZSBjYWxsIGluIHRoZSByZW5kZXIgZnVuY3Rpb25cbiAgICAvLyBmb3Igd2FybmluZ3MuXG5cbiAgICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyLmN1cnJlbnQgPSBudWxsO1xuICAgIGRpc2FibGVMb2dzKCk7XG4gIH1cblxuICB0cnkge1xuICAgIC8vIFRoaXMgc2hvdWxkIHRocm93LlxuICAgIGlmIChjb25zdHJ1Y3QpIHtcbiAgICAgIC8vIFNvbWV0aGluZyBzaG91bGQgYmUgc2V0dGluZyB0aGUgcHJvcHMgaW4gdGhlIGNvbnN0cnVjdG9yLlxuICAgICAgdmFyIEZha2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICB9OyAvLyAkRmxvd0ZpeE1lXG5cblxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KEZha2UucHJvdG90eXBlLCAncHJvcHMnLCB7XG4gICAgICAgIHNldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIC8vIFdlIHVzZSBhIHRocm93aW5nIHNldHRlciBpbnN0ZWFkIG9mIGZyb3plbiBvciBub24td3JpdGFibGUgcHJvcHNcbiAgICAgICAgICAvLyBiZWNhdXNlIHRoYXQgd29uJ3QgdGhyb3cgaW4gYSBub24tc3RyaWN0IG1vZGUgZnVuY3Rpb24uXG4gICAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gJ29iamVjdCcgJiYgUmVmbGVjdC5jb25zdHJ1Y3QpIHtcbiAgICAgICAgLy8gV2UgY29uc3RydWN0IGEgZGlmZmVyZW50IGNvbnRyb2wgZm9yIHRoaXMgY2FzZSB0byBpbmNsdWRlIGFueSBleHRyYVxuICAgICAgICAvLyBmcmFtZXMgYWRkZWQgYnkgdGhlIGNvbnN0cnVjdCBjYWxsLlxuICAgICAgICB0cnkge1xuICAgICAgICAgIFJlZmxlY3QuY29uc3RydWN0KEZha2UsIFtdKTtcbiAgICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICAgIGNvbnRyb2wgPSB4O1xuICAgICAgICB9XG5cbiAgICAgICAgUmVmbGVjdC5jb25zdHJ1Y3QoZm4sIFtdLCBGYWtlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgRmFrZS5jYWxsKCk7XG4gICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICBjb250cm9sID0geDtcbiAgICAgICAgfVxuXG4gICAgICAgIGZuLmNhbGwoRmFrZS5wcm90b3R5cGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICBjb250cm9sID0geDtcbiAgICAgIH1cblxuICAgICAgZm4oKTtcbiAgICB9XG4gIH0gY2F0Y2ggKHNhbXBsZSkge1xuICAgIC8vIFRoaXMgaXMgaW5saW5lZCBtYW51YWxseSBiZWNhdXNlIGNsb3N1cmUgZG9lc24ndCBkbyBpdCBmb3IgdXMuXG4gICAgaWYgKHNhbXBsZSAmJiBjb250cm9sICYmIHR5cGVvZiBzYW1wbGUuc3RhY2sgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBUaGlzIGV4dHJhY3RzIHRoZSBmaXJzdCBmcmFtZSBmcm9tIHRoZSBzYW1wbGUgdGhhdCBpc24ndCBhbHNvIGluIHRoZSBjb250cm9sLlxuICAgICAgLy8gU2tpcHBpbmcgb25lIGZyYW1lIHRoYXQgd2UgYXNzdW1lIGlzIHRoZSBmcmFtZSB0aGF0IGNhbGxzIHRoZSB0d28uXG4gICAgICB2YXIgc2FtcGxlTGluZXMgPSBzYW1wbGUuc3RhY2suc3BsaXQoJ1xcbicpO1xuICAgICAgdmFyIGNvbnRyb2xMaW5lcyA9IGNvbnRyb2wuc3RhY2suc3BsaXQoJ1xcbicpO1xuICAgICAgdmFyIHMgPSBzYW1wbGVMaW5lcy5sZW5ndGggLSAxO1xuICAgICAgdmFyIGMgPSBjb250cm9sTGluZXMubGVuZ3RoIC0gMTtcblxuICAgICAgd2hpbGUgKHMgPj0gMSAmJiBjID49IDAgJiYgc2FtcGxlTGluZXNbc10gIT09IGNvbnRyb2xMaW5lc1tjXSkge1xuICAgICAgICAvLyBXZSBleHBlY3QgYXQgbGVhc3Qgb25lIHN0YWNrIGZyYW1lIHRvIGJlIHNoYXJlZC5cbiAgICAgICAgLy8gVHlwaWNhbGx5IHRoaXMgd2lsbCBiZSB0aGUgcm9vdCBtb3N0IG9uZS4gSG93ZXZlciwgc3RhY2sgZnJhbWVzIG1heSBiZVxuICAgICAgICAvLyBjdXQgb2ZmIGR1ZSB0byBtYXhpbXVtIHN0YWNrIGxpbWl0cy4gSW4gdGhpcyBjYXNlLCBvbmUgbWF5YmUgY3V0IG9mZlxuICAgICAgICAvLyBlYXJsaWVyIHRoYW4gdGhlIG90aGVyLiBXZSBhc3N1bWUgdGhhdCB0aGUgc2FtcGxlIGlzIGxvbmdlciBvciB0aGUgc2FtZVxuICAgICAgICAvLyBhbmQgdGhlcmUgZm9yIGN1dCBvZmYgZWFybGllci4gU28gd2Ugc2hvdWxkIGZpbmQgdGhlIHJvb3QgbW9zdCBmcmFtZSBpblxuICAgICAgICAvLyB0aGUgc2FtcGxlIHNvbWV3aGVyZSBpbiB0aGUgY29udHJvbC5cbiAgICAgICAgYy0tO1xuICAgICAgfVxuXG4gICAgICBmb3IgKDsgcyA+PSAxICYmIGMgPj0gMDsgcy0tLCBjLS0pIHtcbiAgICAgICAgLy8gTmV4dCB3ZSBmaW5kIHRoZSBmaXJzdCBvbmUgdGhhdCBpc24ndCB0aGUgc2FtZSB3aGljaCBzaG91bGQgYmUgdGhlXG4gICAgICAgIC8vIGZyYW1lIHRoYXQgY2FsbGVkIG91ciBzYW1wbGUgZnVuY3Rpb24gYW5kIHRoZSBjb250cm9sLlxuICAgICAgICBpZiAoc2FtcGxlTGluZXNbc10gIT09IGNvbnRyb2xMaW5lc1tjXSkge1xuICAgICAgICAgIC8vIEluIFY4LCB0aGUgZmlyc3QgbGluZSBpcyBkZXNjcmliaW5nIHRoZSBtZXNzYWdlIGJ1dCBvdGhlciBWTXMgZG9uJ3QuXG4gICAgICAgICAgLy8gSWYgd2UncmUgYWJvdXQgdG8gcmV0dXJuIHRoZSBmaXJzdCBsaW5lLCBhbmQgdGhlIGNvbnRyb2wgaXMgYWxzbyBvbiB0aGUgc2FtZVxuICAgICAgICAgIC8vIGxpbmUsIHRoYXQncyBhIHByZXR0eSBnb29kIGluZGljYXRvciB0aGF0IG91ciBzYW1wbGUgdGhyZXcgYXQgc2FtZSBsaW5lIGFzXG4gICAgICAgICAgLy8gdGhlIGNvbnRyb2wuIEkuZS4gYmVmb3JlIHdlIGVudGVyZWQgdGhlIHNhbXBsZSBmcmFtZS4gU28gd2UgaWdub3JlIHRoaXMgcmVzdWx0LlxuICAgICAgICAgIC8vIFRoaXMgY2FuIGhhcHBlbiBpZiB5b3UgcGFzc2VkIGEgY2xhc3MgdG8gZnVuY3Rpb24gY29tcG9uZW50LCBvciBub24tZnVuY3Rpb24uXG4gICAgICAgICAgaWYgKHMgIT09IDEgfHwgYyAhPT0gMSkge1xuICAgICAgICAgICAgZG8ge1xuICAgICAgICAgICAgICBzLS07XG4gICAgICAgICAgICAgIGMtLTsgLy8gV2UgbWF5IHN0aWxsIGhhdmUgc2ltaWxhciBpbnRlcm1lZGlhdGUgZnJhbWVzIGZyb20gdGhlIGNvbnN0cnVjdCBjYWxsLlxuICAgICAgICAgICAgICAvLyBUaGUgbmV4dCBvbmUgdGhhdCBpc24ndCB0aGUgc2FtZSBzaG91bGQgYmUgb3VyIG1hdGNoIHRob3VnaC5cblxuICAgICAgICAgICAgICBpZiAoYyA8IDAgfHwgc2FtcGxlTGluZXNbc10gIT09IGNvbnRyb2xMaW5lc1tjXSkge1xuICAgICAgICAgICAgICAgIC8vIFY4IGFkZHMgYSBcIm5ld1wiIHByZWZpeCBmb3IgbmF0aXZlIGNsYXNzZXMuIExldCdzIHJlbW92ZSBpdCB0byBtYWtlIGl0IHByZXR0aWVyLlxuICAgICAgICAgICAgICAgIHZhciBfZnJhbWUgPSAnXFxuJyArIHNhbXBsZUxpbmVzW3NdLnJlcGxhY2UoJyBhdCBuZXcgJywgJyBhdCAnKTtcblxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICAgICAgY29tcG9uZW50RnJhbWVDYWNoZS5zZXQoZm4sIF9mcmFtZSk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSAvLyBSZXR1cm4gdGhlIGxpbmUgd2UgZm91bmQuXG5cblxuICAgICAgICAgICAgICAgIHJldHVybiBfZnJhbWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gd2hpbGUgKHMgPj0gMSAmJiBjID49IDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IGZpbmFsbHkge1xuICAgIHJlZW50cnkgPSBmYWxzZTtcblxuICAgIHtcbiAgICAgIFJlYWN0Q3VycmVudERpc3BhdGNoZXIuY3VycmVudCA9IHByZXZpb3VzRGlzcGF0Y2hlcjtcbiAgICAgIHJlZW5hYmxlTG9ncygpO1xuICAgIH1cblxuICAgIEVycm9yLnByZXBhcmVTdGFja1RyYWNlID0gcHJldmlvdXNQcmVwYXJlU3RhY2tUcmFjZTtcbiAgfSAvLyBGYWxsYmFjayB0byBqdXN0IHVzaW5nIHRoZSBuYW1lIGlmIHdlIGNvdWxkbid0IG1ha2UgaXQgdGhyb3cuXG5cblxuICB2YXIgbmFtZSA9IGZuID8gZm4uZGlzcGxheU5hbWUgfHwgZm4ubmFtZSA6ICcnO1xuICB2YXIgc3ludGhldGljRnJhbWUgPSBuYW1lID8gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUobmFtZSkgOiAnJztcblxuICB7XG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29tcG9uZW50RnJhbWVDYWNoZS5zZXQoZm4sIHN5bnRoZXRpY0ZyYW1lKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3ludGhldGljRnJhbWU7XG59XG5mdW5jdGlvbiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUoZm4sIHNvdXJjZSwgb3duZXJGbikge1xuICB7XG4gICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGZhbHNlKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzaG91bGRDb25zdHJ1Y3QoQ29tcG9uZW50KSB7XG4gIHZhciBwcm90b3R5cGUgPSBDb21wb25lbnQucHJvdG90eXBlO1xuICByZXR1cm4gISEocHJvdG90eXBlICYmIHByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50KTtcbn1cblxuZnVuY3Rpb24gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKHR5cGUsIHNvdXJjZSwgb3duZXJGbikge1xuXG4gIGlmICh0eXBlID09IG51bGwpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICB7XG4gICAgICByZXR1cm4gZGVzY3JpYmVOYXRpdmVDb21wb25lbnRGcmFtZSh0eXBlLCBzaG91bGRDb25zdHJ1Y3QodHlwZSkpO1xuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUodHlwZSk7XG4gIH1cblxuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX1RZUEU6XG4gICAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUoJ1N1c3BlbnNlJyk7XG5cbiAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRTpcbiAgICAgIHJldHVybiBkZXNjcmliZUJ1aWx0SW5Db21wb25lbnRGcmFtZSgnU3VzcGVuc2VMaXN0Jyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnKSB7XG4gICAgc3dpdGNoICh0eXBlLiQkdHlwZW9mKSB7XG4gICAgICBjYXNlIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU6XG4gICAgICAgIHJldHVybiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUodHlwZS5yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX01FTU9fVFlQRTpcbiAgICAgICAgLy8gTWVtbyBtYXkgY29udGFpbiBhbnkgY29tcG9uZW50IHR5cGUgc28gd2UgcmVjdXJzaXZlbHkgcmVzb2x2ZSBpdC5cbiAgICAgICAgcmV0dXJuIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVih0eXBlLnR5cGUsIHNvdXJjZSwgb3duZXJGbik7XG5cbiAgICAgIGNhc2UgUkVBQ1RfQkxPQ0tfVFlQRTpcbiAgICAgICAgcmV0dXJuIGRlc2NyaWJlRnVuY3Rpb25Db21wb25lbnRGcmFtZSh0eXBlLl9yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX0xBWllfVFlQRTpcbiAgICAgICAge1xuICAgICAgICAgIHZhciBsYXp5Q29tcG9uZW50ID0gdHlwZTtcbiAgICAgICAgICB2YXIgcGF5bG9hZCA9IGxhenlDb21wb25lbnQuX3BheWxvYWQ7XG4gICAgICAgICAgdmFyIGluaXQgPSBsYXp5Q29tcG9uZW50Ll9pbml0O1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIExhenkgbWF5IGNvbnRhaW4gYW55IGNvbXBvbmVudCB0eXBlIHNvIHdlIHJlY3Vyc2l2ZWx5IHJlc29sdmUgaXQuXG4gICAgICAgICAgICByZXR1cm4gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGluaXQocGF5bG9hZCksIHNvdXJjZSwgb3duZXJGbik7XG4gICAgICAgICAgfSBjYXRjaCAoeCkge31cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiAnJztcbn1cblxudmFyIGxvZ2dlZFR5cGVGYWlsdXJlcyA9IHt9O1xudmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lO1xuXG5mdW5jdGlvbiBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KSB7XG4gIHtcbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgdmFyIG93bmVyID0gZWxlbWVudC5fb3duZXI7XG4gICAgICB2YXIgc3RhY2sgPSBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYoZWxlbWVudC50eXBlLCBlbGVtZW50Ll9zb3VyY2UsIG93bmVyID8gb3duZXIudHlwZSA6IG51bGwpO1xuICAgICAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5zZXRFeHRyYVN0YWNrRnJhbWUoc3RhY2spO1xuICAgIH0gZWxzZSB7XG4gICAgICBSZWFjdERlYnVnQ3VycmVudEZyYW1lLnNldEV4dHJhU3RhY2tGcmFtZShudWxsKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY2hlY2tQcm9wVHlwZXModHlwZVNwZWNzLCB2YWx1ZXMsIGxvY2F0aW9uLCBjb21wb25lbnROYW1lLCBlbGVtZW50KSB7XG4gIHtcbiAgICAvLyAkRmxvd0ZpeE1lIFRoaXMgaXMgb2theSBidXQgRmxvdyBkb2Vzbid0IGtub3cgaXQuXG4gICAgdmFyIGhhcyA9IEZ1bmN0aW9uLmNhbGwuYmluZChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5KTtcblxuICAgIGZvciAodmFyIHR5cGVTcGVjTmFtZSBpbiB0eXBlU3BlY3MpIHtcbiAgICAgIGlmIChoYXModHlwZVNwZWNzLCB0eXBlU3BlY05hbWUpKSB7XG4gICAgICAgIHZhciBlcnJvciQxID0gdm9pZCAwOyAvLyBQcm9wIHR5cGUgdmFsaWRhdGlvbiBtYXkgdGhyb3cuIEluIGNhc2UgdGhleSBkbywgd2UgZG9uJ3Qgd2FudCB0b1xuICAgICAgICAvLyBmYWlsIHRoZSByZW5kZXIgcGhhc2Ugd2hlcmUgaXQgZGlkbid0IGZhaWwgYmVmb3JlLiBTbyB3ZSBsb2cgaXQuXG4gICAgICAgIC8vIEFmdGVyIHRoZXNlIGhhdmUgYmVlbiBjbGVhbmVkIHVwLCB3ZSdsbCBsZXQgdGhlbSB0aHJvdy5cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIFRoaXMgaXMgaW50ZW50aW9uYWxseSBhbiBpbnZhcmlhbnQgdGhhdCBnZXRzIGNhdWdodC4gSXQncyB0aGUgc2FtZVxuICAgICAgICAgIC8vIGJlaGF2aW9yIGFzIHdpdGhvdXQgdGhpcyBzdGF0ZW1lbnQgZXhjZXB0IHdpdGggYSBiZXR0ZXIgbWVzc2FnZS5cbiAgICAgICAgICBpZiAodHlwZW9mIHR5cGVTcGVjc1t0eXBlU3BlY05hbWVdICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB2YXIgZXJyID0gRXJyb3IoKGNvbXBvbmVudE5hbWUgfHwgJ1JlYWN0IGNsYXNzJykgKyAnOiAnICsgbG9jYXRpb24gKyAnIHR5cGUgYCcgKyB0eXBlU3BlY05hbWUgKyAnYCBpcyBpbnZhbGlkOyAnICsgJ2l0IG11c3QgYmUgYSBmdW5jdGlvbiwgdXN1YWxseSBmcm9tIHRoZSBgcHJvcC10eXBlc2AgcGFja2FnZSwgYnV0IHJlY2VpdmVkIGAnICsgdHlwZW9mIHR5cGVTcGVjc1t0eXBlU3BlY05hbWVdICsgJ2AuJyArICdUaGlzIG9mdGVuIGhhcHBlbnMgYmVjYXVzZSBvZiB0eXBvcyBzdWNoIGFzIGBQcm9wVHlwZXMuZnVuY3Rpb25gIGluc3RlYWQgb2YgYFByb3BUeXBlcy5mdW5jYC4nKTtcbiAgICAgICAgICAgIGVyci5uYW1lID0gJ0ludmFyaWFudCBWaW9sYXRpb24nO1xuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGVycm9yJDEgPSB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSh2YWx1ZXMsIHR5cGVTcGVjTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIG51bGwsICdTRUNSRVRfRE9fTk9UX1BBU1NfVEhJU19PUl9ZT1VfV0lMTF9CRV9GSVJFRCcpO1xuICAgICAgICB9IGNhdGNoIChleCkge1xuICAgICAgICAgIGVycm9yJDEgPSBleDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvciQxICYmICEoZXJyb3IkMSBpbnN0YW5jZW9mIEVycm9yKSkge1xuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGVsZW1lbnQpO1xuXG4gICAgICAgICAgZXJyb3IoJyVzOiB0eXBlIHNwZWNpZmljYXRpb24gb2YgJXMnICsgJyBgJXNgIGlzIGludmFsaWQ7IHRoZSB0eXBlIGNoZWNrZXIgJyArICdmdW5jdGlvbiBtdXN0IHJldHVybiBgbnVsbGAgb3IgYW4gYEVycm9yYCBidXQgcmV0dXJuZWQgYSAlcy4gJyArICdZb3UgbWF5IGhhdmUgZm9yZ290dGVuIHRvIHBhc3MgYW4gYXJndW1lbnQgdG8gdGhlIHR5cGUgY2hlY2tlciAnICsgJ2NyZWF0b3IgKGFycmF5T2YsIGluc3RhbmNlT2YsIG9iamVjdE9mLCBvbmVPZiwgb25lT2ZUeXBlLCBhbmQgJyArICdzaGFwZSBhbGwgcmVxdWlyZSBhbiBhcmd1bWVudCkuJywgY29tcG9uZW50TmFtZSB8fCAnUmVhY3QgY2xhc3MnLCBsb2NhdGlvbiwgdHlwZVNwZWNOYW1lLCB0eXBlb2YgZXJyb3IkMSk7XG5cbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvciQxIGluc3RhbmNlb2YgRXJyb3IgJiYgIShlcnJvciQxLm1lc3NhZ2UgaW4gbG9nZ2VkVHlwZUZhaWx1cmVzKSkge1xuICAgICAgICAgIC8vIE9ubHkgbW9uaXRvciB0aGlzIGZhaWx1cmUgb25jZSBiZWNhdXNlIHRoZXJlIHRlbmRzIHRvIGJlIGEgbG90IG9mIHRoZVxuICAgICAgICAgIC8vIHNhbWUgZXJyb3IuXG4gICAgICAgICAgbG9nZ2VkVHlwZUZhaWx1cmVzW2Vycm9yJDEubWVzc2FnZV0gPSB0cnVlO1xuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGVsZW1lbnQpO1xuXG4gICAgICAgICAgZXJyb3IoJ0ZhaWxlZCAlcyB0eXBlOiAlcycsIGxvY2F0aW9uLCBlcnJvciQxLm1lc3NhZ2UpO1xuXG4gICAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxudmFyIFJlYWN0Q3VycmVudE93bmVyID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3RDdXJyZW50T3duZXI7XG52YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xudmFyIFJFU0VSVkVEX1BST1BTID0ge1xuICBrZXk6IHRydWUsXG4gIHJlZjogdHJ1ZSxcbiAgX19zZWxmOiB0cnVlLFxuICBfX3NvdXJjZTogdHJ1ZVxufTtcbnZhciBzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93bjtcbnZhciBzcGVjaWFsUHJvcFJlZldhcm5pbmdTaG93bjtcbnZhciBkaWRXYXJuQWJvdXRTdHJpbmdSZWZzO1xuXG57XG4gIGRpZFdhcm5BYm91dFN0cmluZ1JlZnMgPSB7fTtcbn1cblxuZnVuY3Rpb24gaGFzVmFsaWRSZWYoY29uZmlnKSB7XG4gIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdyZWYnKSkge1xuICAgICAgdmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoY29uZmlnLCAncmVmJykuZ2V0O1xuXG4gICAgICBpZiAoZ2V0dGVyICYmIGdldHRlci5pc1JlYWN0V2FybmluZykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbmZpZy5yZWYgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaGFzVmFsaWRLZXkoY29uZmlnKSB7XG4gIHtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsICdrZXknKSkge1xuICAgICAgdmFyIGdldHRlciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoY29uZmlnLCAna2V5JykuZ2V0O1xuXG4gICAgICBpZiAoZ2V0dGVyICYmIGdldHRlci5pc1JlYWN0V2FybmluZykge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNvbmZpZy5rZXkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gd2FybklmU3RyaW5nUmVmQ2Fubm90QmVBdXRvQ29udmVydGVkKGNvbmZpZywgc2VsZikge1xuICB7XG4gICAgaWYgKHR5cGVvZiBjb25maWcucmVmID09PSAnc3RyaW5nJyAmJiBSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50ICYmIHNlbGYgJiYgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC5zdGF0ZU5vZGUgIT09IHNlbGYpIHtcbiAgICAgIHZhciBjb21wb25lbnROYW1lID0gZ2V0Q29tcG9uZW50TmFtZShSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnR5cGUpO1xuXG4gICAgICBpZiAoIWRpZFdhcm5BYm91dFN0cmluZ1JlZnNbY29tcG9uZW50TmFtZV0pIHtcbiAgICAgICAgZXJyb3IoJ0NvbXBvbmVudCBcIiVzXCIgY29udGFpbnMgdGhlIHN0cmluZyByZWYgXCIlc1wiLiAnICsgJ1N1cHBvcnQgZm9yIHN0cmluZyByZWZzIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiAnICsgJ1RoaXMgY2FzZSBjYW5ub3QgYmUgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgdG8gYW4gYXJyb3cgZnVuY3Rpb24uICcgKyAnV2UgYXNrIHlvdSB0byBtYW51YWxseSBmaXggdGhpcyBjYXNlIGJ5IHVzaW5nIHVzZVJlZigpIG9yIGNyZWF0ZVJlZigpIGluc3RlYWQuICcgKyAnTGVhcm4gbW9yZSBhYm91dCB1c2luZyByZWZzIHNhZmVseSBoZXJlOiAnICsgJ2h0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9zdHJpY3QtbW9kZS1zdHJpbmctcmVmJywgZ2V0Q29tcG9uZW50TmFtZShSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnR5cGUpLCBjb25maWcucmVmKTtcblxuICAgICAgICBkaWRXYXJuQWJvdXRTdHJpbmdSZWZzW2NvbXBvbmVudE5hbWVdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmaW5lS2V5UHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKSB7XG4gIHtcbiAgICB2YXIgd2FybkFib3V0QWNjZXNzaW5nS2V5ID0gZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKCFzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93bikge1xuICAgICAgICBzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93biA9IHRydWU7XG5cbiAgICAgICAgZXJyb3IoJyVzOiBga2V5YCBpcyBub3QgYSBwcm9wLiBUcnlpbmcgdG8gYWNjZXNzIGl0IHdpbGwgcmVzdWx0ICcgKyAnaW4gYHVuZGVmaW5lZGAgYmVpbmcgcmV0dXJuZWQuIElmIHlvdSBuZWVkIHRvIGFjY2VzcyB0aGUgc2FtZSAnICsgJ3ZhbHVlIHdpdGhpbiB0aGUgY2hpbGQgY29tcG9uZW50LCB5b3Ugc2hvdWxkIHBhc3MgaXQgYXMgYSBkaWZmZXJlbnQgJyArICdwcm9wLiAoaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3NwZWNpYWwtcHJvcHMpJywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB3YXJuQWJvdXRBY2Nlc3NpbmdLZXkuaXNSZWFjdFdhcm5pbmcgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ2tleScsIHtcbiAgICAgIGdldDogd2FybkFib3V0QWNjZXNzaW5nS2V5LFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmaW5lUmVmUHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKSB7XG4gIHtcbiAgICB2YXIgd2FybkFib3V0QWNjZXNzaW5nUmVmID0gZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKCFzcGVjaWFsUHJvcFJlZldhcm5pbmdTaG93bikge1xuICAgICAgICBzcGVjaWFsUHJvcFJlZldhcm5pbmdTaG93biA9IHRydWU7XG5cbiAgICAgICAgZXJyb3IoJyVzOiBgcmVmYCBpcyBub3QgYSBwcm9wLiBUcnlpbmcgdG8gYWNjZXNzIGl0IHdpbGwgcmVzdWx0ICcgKyAnaW4gYHVuZGVmaW5lZGAgYmVpbmcgcmV0dXJuZWQuIElmIHlvdSBuZWVkIHRvIGFjY2VzcyB0aGUgc2FtZSAnICsgJ3ZhbHVlIHdpdGhpbiB0aGUgY2hpbGQgY29tcG9uZW50LCB5b3Ugc2hvdWxkIHBhc3MgaXQgYXMgYSBkaWZmZXJlbnQgJyArICdwcm9wLiAoaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3NwZWNpYWwtcHJvcHMpJywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB3YXJuQWJvdXRBY2Nlc3NpbmdSZWYuaXNSZWFjdFdhcm5pbmcgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ3JlZicsIHtcbiAgICAgIGdldDogd2FybkFib3V0QWNjZXNzaW5nUmVmLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH1cbn1cbi8qKlxuICogRmFjdG9yeSBtZXRob2QgdG8gY3JlYXRlIGEgbmV3IFJlYWN0IGVsZW1lbnQuIFRoaXMgbm8gbG9uZ2VyIGFkaGVyZXMgdG9cbiAqIHRoZSBjbGFzcyBwYXR0ZXJuLCBzbyBkbyBub3QgdXNlIG5ldyB0byBjYWxsIGl0LiBBbHNvLCBpbnN0YW5jZW9mIGNoZWNrXG4gKiB3aWxsIG5vdCB3b3JrLiBJbnN0ZWFkIHRlc3QgJCR0eXBlb2YgZmllbGQgYWdhaW5zdCBTeW1ib2wuZm9yKCdyZWFjdC5lbGVtZW50JykgdG8gY2hlY2tcbiAqIGlmIHNvbWV0aGluZyBpcyBhIFJlYWN0IEVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHsqfSB0eXBlXG4gKiBAcGFyYW0geyp9IHByb3BzXG4gKiBAcGFyYW0geyp9IGtleVxuICogQHBhcmFtIHtzdHJpbmd8b2JqZWN0fSByZWZcbiAqIEBwYXJhbSB7Kn0gb3duZXJcbiAqIEBwYXJhbSB7Kn0gc2VsZiBBICp0ZW1wb3JhcnkqIGhlbHBlciB0byBkZXRlY3QgcGxhY2VzIHdoZXJlIGB0aGlzYCBpc1xuICogZGlmZmVyZW50IGZyb20gdGhlIGBvd25lcmAgd2hlbiBSZWFjdC5jcmVhdGVFbGVtZW50IGlzIGNhbGxlZCwgc28gdGhhdCB3ZVxuICogY2FuIHdhcm4uIFdlIHdhbnQgdG8gZ2V0IHJpZCBvZiBvd25lciBhbmQgcmVwbGFjZSBzdHJpbmcgYHJlZmBzIHdpdGggYXJyb3dcbiAqIGZ1bmN0aW9ucywgYW5kIGFzIGxvbmcgYXMgYHRoaXNgIGFuZCBvd25lciBhcmUgdGhlIHNhbWUsIHRoZXJlIHdpbGwgYmUgbm9cbiAqIGNoYW5nZSBpbiBiZWhhdmlvci5cbiAqIEBwYXJhbSB7Kn0gc291cmNlIEFuIGFubm90YXRpb24gb2JqZWN0IChhZGRlZCBieSBhIHRyYW5zcGlsZXIgb3Igb3RoZXJ3aXNlKVxuICogaW5kaWNhdGluZyBmaWxlbmFtZSwgbGluZSBudW1iZXIsIGFuZC9vciBvdGhlciBpbmZvcm1hdGlvbi5cbiAqIEBpbnRlcm5hbFxuICovXG5cblxudmFyIFJlYWN0RWxlbWVudCA9IGZ1bmN0aW9uICh0eXBlLCBrZXksIHJlZiwgc2VsZiwgc291cmNlLCBvd25lciwgcHJvcHMpIHtcbiAgdmFyIGVsZW1lbnQgPSB7XG4gICAgLy8gVGhpcyB0YWcgYWxsb3dzIHVzIHRvIHVuaXF1ZWx5IGlkZW50aWZ5IHRoaXMgYXMgYSBSZWFjdCBFbGVtZW50XG4gICAgJCR0eXBlb2Y6IFJFQUNUX0VMRU1FTlRfVFlQRSxcbiAgICAvLyBCdWlsdC1pbiBwcm9wZXJ0aWVzIHRoYXQgYmVsb25nIG9uIHRoZSBlbGVtZW50XG4gICAgdHlwZTogdHlwZSxcbiAgICBrZXk6IGtleSxcbiAgICByZWY6IHJlZixcbiAgICBwcm9wczogcHJvcHMsXG4gICAgLy8gUmVjb3JkIHRoZSBjb21wb25lbnQgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoaXMgZWxlbWVudC5cbiAgICBfb3duZXI6IG93bmVyXG4gIH07XG5cbiAge1xuICAgIC8vIFRoZSB2YWxpZGF0aW9uIGZsYWcgaXMgY3VycmVudGx5IG11dGF0aXZlLiBXZSBwdXQgaXQgb25cbiAgICAvLyBhbiBleHRlcm5hbCBiYWNraW5nIHN0b3JlIHNvIHRoYXQgd2UgY2FuIGZyZWV6ZSB0aGUgd2hvbGUgb2JqZWN0LlxuICAgIC8vIFRoaXMgY2FuIGJlIHJlcGxhY2VkIHdpdGggYSBXZWFrTWFwIG9uY2UgdGhleSBhcmUgaW1wbGVtZW50ZWQgaW5cbiAgICAvLyBjb21tb25seSB1c2VkIGRldmVsb3BtZW50IGVudmlyb25tZW50cy5cbiAgICBlbGVtZW50Ll9zdG9yZSA9IHt9OyAvLyBUbyBtYWtlIGNvbXBhcmluZyBSZWFjdEVsZW1lbnRzIGVhc2llciBmb3IgdGVzdGluZyBwdXJwb3Nlcywgd2UgbWFrZVxuICAgIC8vIHRoZSB2YWxpZGF0aW9uIGZsYWcgbm9uLWVudW1lcmFibGUgKHdoZXJlIHBvc3NpYmxlLCB3aGljaCBzaG91bGRcbiAgICAvLyBpbmNsdWRlIGV2ZXJ5IGVudmlyb25tZW50IHdlIHJ1biB0ZXN0cyBpbiksIHNvIHRoZSB0ZXN0IGZyYW1ld29ya1xuICAgIC8vIGlnbm9yZXMgaXQuXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudC5fc3RvcmUsICd2YWxpZGF0ZWQnLCB7XG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgIHZhbHVlOiBmYWxzZVxuICAgIH0pOyAvLyBzZWxmIGFuZCBzb3VyY2UgYXJlIERFViBvbmx5IHByb3BlcnRpZXMuXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudCwgJ19zZWxmJywge1xuICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgd3JpdGFibGU6IGZhbHNlLFxuICAgICAgdmFsdWU6IHNlbGZcbiAgICB9KTsgLy8gVHdvIGVsZW1lbnRzIGNyZWF0ZWQgaW4gdHdvIGRpZmZlcmVudCBwbGFjZXMgc2hvdWxkIGJlIGNvbnNpZGVyZWRcbiAgICAvLyBlcXVhbCBmb3IgdGVzdGluZyBwdXJwb3NlcyBhbmQgdGhlcmVmb3JlIHdlIGhpZGUgaXQgZnJvbSBlbnVtZXJhdGlvbi5cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlbGVtZW50LCAnX3NvdXJjZScsIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICAgIHZhbHVlOiBzb3VyY2VcbiAgICB9KTtcblxuICAgIGlmIChPYmplY3QuZnJlZXplKSB7XG4gICAgICBPYmplY3QuZnJlZXplKGVsZW1lbnQucHJvcHMpO1xuICAgICAgT2JqZWN0LmZyZWV6ZShlbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZWxlbWVudDtcbn07XG4vKipcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdGpzL3JmY3MvcHVsbC8xMDdcbiAqIEBwYXJhbSB7Kn0gdHlwZVxuICogQHBhcmFtIHtvYmplY3R9IHByb3BzXG4gKiBAcGFyYW0ge3N0cmluZ30ga2V5XG4gKi9cblxuZnVuY3Rpb24ganN4REVWKHR5cGUsIGNvbmZpZywgbWF5YmVLZXksIHNvdXJjZSwgc2VsZikge1xuICB7XG4gICAgdmFyIHByb3BOYW1lOyAvLyBSZXNlcnZlZCBuYW1lcyBhcmUgZXh0cmFjdGVkXG5cbiAgICB2YXIgcHJvcHMgPSB7fTtcbiAgICB2YXIga2V5ID0gbnVsbDtcbiAgICB2YXIgcmVmID0gbnVsbDsgLy8gQ3VycmVudGx5LCBrZXkgY2FuIGJlIHNwcmVhZCBpbiBhcyBhIHByb3AuIFRoaXMgY2F1c2VzIGEgcG90ZW50aWFsXG4gICAgLy8gaXNzdWUgaWYga2V5IGlzIGFsc28gZXhwbGljaXRseSBkZWNsYXJlZCAoaWUuIDxkaXYgey4uLnByb3BzfSBrZXk9XCJIaVwiIC8+XG4gICAgLy8gb3IgPGRpdiBrZXk9XCJIaVwiIHsuLi5wcm9wc30gLz4gKS4gV2Ugd2FudCB0byBkZXByZWNhdGUga2V5IHNwcmVhZCxcbiAgICAvLyBidXQgYXMgYW4gaW50ZXJtZWRpYXJ5IHN0ZXAsIHdlIHdpbGwgdXNlIGpzeERFViBmb3IgZXZlcnl0aGluZyBleGNlcHRcbiAgICAvLyA8ZGl2IHsuLi5wcm9wc30ga2V5PVwiSGlcIiAvPiwgYmVjYXVzZSB3ZSBhcmVuJ3QgY3VycmVudGx5IGFibGUgdG8gdGVsbCBpZlxuICAgIC8vIGtleSBpcyBleHBsaWNpdGx5IGRlY2xhcmVkIHRvIGJlIHVuZGVmaW5lZCBvciBub3QuXG5cbiAgICBpZiAobWF5YmVLZXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAga2V5ID0gJycgKyBtYXliZUtleTtcbiAgICB9XG5cbiAgICBpZiAoaGFzVmFsaWRLZXkoY29uZmlnKSkge1xuICAgICAga2V5ID0gJycgKyBjb25maWcua2V5O1xuICAgIH1cblxuICAgIGlmIChoYXNWYWxpZFJlZihjb25maWcpKSB7XG4gICAgICByZWYgPSBjb25maWcucmVmO1xuICAgICAgd2FybklmU3RyaW5nUmVmQ2Fubm90QmVBdXRvQ29udmVydGVkKGNvbmZpZywgc2VsZik7XG4gICAgfSAvLyBSZW1haW5pbmcgcHJvcGVydGllcyBhcmUgYWRkZWQgdG8gYSBuZXcgcHJvcHMgb2JqZWN0XG5cblxuICAgIGZvciAocHJvcE5hbWUgaW4gY29uZmlnKSB7XG4gICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsIHByb3BOYW1lKSAmJiAhUkVTRVJWRURfUFJPUFMuaGFzT3duUHJvcGVydHkocHJvcE5hbWUpKSB7XG4gICAgICAgIHByb3BzW3Byb3BOYW1lXSA9IGNvbmZpZ1twcm9wTmFtZV07XG4gICAgICB9XG4gICAgfSAvLyBSZXNvbHZlIGRlZmF1bHQgcHJvcHNcblxuXG4gICAgaWYgKHR5cGUgJiYgdHlwZS5kZWZhdWx0UHJvcHMpIHtcbiAgICAgIHZhciBkZWZhdWx0UHJvcHMgPSB0eXBlLmRlZmF1bHRQcm9wcztcblxuICAgICAgZm9yIChwcm9wTmFtZSBpbiBkZWZhdWx0UHJvcHMpIHtcbiAgICAgICAgaWYgKHByb3BzW3Byb3BOYW1lXSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gZGVmYXVsdFByb3BzW3Byb3BOYW1lXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChrZXkgfHwgcmVmKSB7XG4gICAgICB2YXIgZGlzcGxheU5hbWUgPSB0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJyA/IHR5cGUuZGlzcGxheU5hbWUgfHwgdHlwZS5uYW1lIHx8ICdVbmtub3duJyA6IHR5cGU7XG5cbiAgICAgIGlmIChrZXkpIHtcbiAgICAgICAgZGVmaW5lS2V5UHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHJlZikge1xuICAgICAgICBkZWZpbmVSZWZQcm9wV2FybmluZ0dldHRlcihwcm9wcywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBSZWFjdEVsZW1lbnQodHlwZSwga2V5LCByZWYsIHNlbGYsIHNvdXJjZSwgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCwgcHJvcHMpO1xuICB9XG59XG5cbnZhciBSZWFjdEN1cnJlbnRPd25lciQxID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3RDdXJyZW50T3duZXI7XG52YXIgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSQxID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZTtcblxuZnVuY3Rpb24gc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShlbGVtZW50KSB7XG4gIHtcbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgdmFyIG93bmVyID0gZWxlbWVudC5fb3duZXI7XG4gICAgICB2YXIgc3RhY2sgPSBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYoZWxlbWVudC50eXBlLCBlbGVtZW50Ll9zb3VyY2UsIG93bmVyID8gb3duZXIudHlwZSA6IG51bGwpO1xuICAgICAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSQxLnNldEV4dHJhU3RhY2tGcmFtZShzdGFjayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIFJlYWN0RGVidWdDdXJyZW50RnJhbWUkMS5zZXRFeHRyYVN0YWNrRnJhbWUobnVsbCk7XG4gICAgfVxuICB9XG59XG5cbnZhciBwcm9wVHlwZXNNaXNzcGVsbFdhcm5pbmdTaG93bjtcblxue1xuICBwcm9wVHlwZXNNaXNzcGVsbFdhcm5pbmdTaG93biA9IGZhbHNlO1xufVxuLyoqXG4gKiBWZXJpZmllcyB0aGUgb2JqZWN0IGlzIGEgUmVhY3RFbGVtZW50LlxuICogU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9yZWFjdC1hcGkuaHRtbCNpc3ZhbGlkZWxlbWVudFxuICogQHBhcmFtIHs/b2JqZWN0fSBvYmplY3RcbiAqIEByZXR1cm4ge2Jvb2xlYW59IFRydWUgaWYgYG9iamVjdGAgaXMgYSBSZWFjdEVsZW1lbnQuXG4gKiBAZmluYWxcbiAqL1xuXG5mdW5jdGlvbiBpc1ZhbGlkRWxlbWVudChvYmplY3QpIHtcbiAge1xuICAgIHJldHVybiB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwgJiYgb2JqZWN0LiQkdHlwZW9mID09PSBSRUFDVF9FTEVNRU5UX1RZUEU7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0RGVjbGFyYXRpb25FcnJvckFkZGVuZHVtKCkge1xuICB7XG4gICAgaWYgKFJlYWN0Q3VycmVudE93bmVyJDEuY3VycmVudCkge1xuICAgICAgdmFyIG5hbWUgPSBnZXRDb21wb25lbnROYW1lKFJlYWN0Q3VycmVudE93bmVyJDEuY3VycmVudC50eXBlKTtcblxuICAgICAgaWYgKG5hbWUpIHtcbiAgICAgICAgcmV0dXJuICdcXG5cXG5DaGVjayB0aGUgcmVuZGVyIG1ldGhvZCBvZiBgJyArIG5hbWUgKyAnYC4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRTb3VyY2VJbmZvRXJyb3JBZGRlbmR1bShzb3VyY2UpIHtcbiAge1xuICAgIGlmIChzb3VyY2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdmFyIGZpbGVOYW1lID0gc291cmNlLmZpbGVOYW1lLnJlcGxhY2UoL14uKltcXFxcXFwvXS8sICcnKTtcbiAgICAgIHZhciBsaW5lTnVtYmVyID0gc291cmNlLmxpbmVOdW1iZXI7XG4gICAgICByZXR1cm4gJ1xcblxcbkNoZWNrIHlvdXIgY29kZSBhdCAnICsgZmlsZU5hbWUgKyAnOicgKyBsaW5lTnVtYmVyICsgJy4nO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxufVxuLyoqXG4gKiBXYXJuIGlmIHRoZXJlJ3Mgbm8ga2V5IGV4cGxpY2l0bHkgc2V0IG9uIGR5bmFtaWMgYXJyYXlzIG9mIGNoaWxkcmVuIG9yXG4gKiBvYmplY3Qga2V5cyBhcmUgbm90IHZhbGlkLiBUaGlzIGFsbG93cyB1cyB0byBrZWVwIHRyYWNrIG9mIGNoaWxkcmVuIGJldHdlZW5cbiAqIHVwZGF0ZXMuXG4gKi9cblxuXG52YXIgb3duZXJIYXNLZXlVc2VXYXJuaW5nID0ge307XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnRDb21wb25lbnRFcnJvckluZm8ocGFyZW50VHlwZSkge1xuICB7XG4gICAgdmFyIGluZm8gPSBnZXREZWNsYXJhdGlvbkVycm9yQWRkZW5kdW0oKTtcblxuICAgIGlmICghaW5mbykge1xuICAgICAgdmFyIHBhcmVudE5hbWUgPSB0eXBlb2YgcGFyZW50VHlwZSA9PT0gJ3N0cmluZycgPyBwYXJlbnRUeXBlIDogcGFyZW50VHlwZS5kaXNwbGF5TmFtZSB8fCBwYXJlbnRUeXBlLm5hbWU7XG5cbiAgICAgIGlmIChwYXJlbnROYW1lKSB7XG4gICAgICAgIGluZm8gPSBcIlxcblxcbkNoZWNrIHRoZSB0b3AtbGV2ZWwgcmVuZGVyIGNhbGwgdXNpbmcgPFwiICsgcGFyZW50TmFtZSArIFwiPi5cIjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaW5mbztcbiAgfVxufVxuLyoqXG4gKiBXYXJuIGlmIHRoZSBlbGVtZW50IGRvZXNuJ3QgaGF2ZSBhbiBleHBsaWNpdCBrZXkgYXNzaWduZWQgdG8gaXQuXG4gKiBUaGlzIGVsZW1lbnQgaXMgaW4gYW4gYXJyYXkuIFRoZSBhcnJheSBjb3VsZCBncm93IGFuZCBzaHJpbmsgb3IgYmVcbiAqIHJlb3JkZXJlZC4gQWxsIGNoaWxkcmVuIHRoYXQgaGF2ZW4ndCBhbHJlYWR5IGJlZW4gdmFsaWRhdGVkIGFyZSByZXF1aXJlZCB0b1xuICogaGF2ZSBhIFwia2V5XCIgcHJvcGVydHkgYXNzaWduZWQgdG8gaXQuIEVycm9yIHN0YXR1c2VzIGFyZSBjYWNoZWQgc28gYSB3YXJuaW5nXG4gKiB3aWxsIG9ubHkgYmUgc2hvd24gb25jZS5cbiAqXG4gKiBAaW50ZXJuYWxcbiAqIEBwYXJhbSB7UmVhY3RFbGVtZW50fSBlbGVtZW50IEVsZW1lbnQgdGhhdCByZXF1aXJlcyBhIGtleS5cbiAqIEBwYXJhbSB7Kn0gcGFyZW50VHlwZSBlbGVtZW50J3MgcGFyZW50J3MgdHlwZS5cbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlRXhwbGljaXRLZXkoZWxlbWVudCwgcGFyZW50VHlwZSkge1xuICB7XG4gICAgaWYgKCFlbGVtZW50Ll9zdG9yZSB8fCBlbGVtZW50Ll9zdG9yZS52YWxpZGF0ZWQgfHwgZWxlbWVudC5rZXkgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGVsZW1lbnQuX3N0b3JlLnZhbGlkYXRlZCA9IHRydWU7XG4gICAgdmFyIGN1cnJlbnRDb21wb25lbnRFcnJvckluZm8gPSBnZXRDdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvKHBhcmVudFR5cGUpO1xuXG4gICAgaWYgKG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSA9IHRydWU7IC8vIFVzdWFsbHkgdGhlIGN1cnJlbnQgb3duZXIgaXMgdGhlIG9mZmVuZGVyLCBidXQgaWYgaXQgYWNjZXB0cyBjaGlsZHJlbiBhcyBhXG4gICAgLy8gcHJvcGVydHksIGl0IG1heSBiZSB0aGUgY3JlYXRvciBvZiB0aGUgY2hpbGQgdGhhdCdzIHJlc3BvbnNpYmxlIGZvclxuICAgIC8vIGFzc2lnbmluZyBpdCBhIGtleS5cblxuICAgIHZhciBjaGlsZE93bmVyID0gJyc7XG5cbiAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50Ll9vd25lciAmJiBlbGVtZW50Ll9vd25lciAhPT0gUmVhY3RDdXJyZW50T3duZXIkMS5jdXJyZW50KSB7XG4gICAgICAvLyBHaXZlIHRoZSBjb21wb25lbnQgdGhhdCBvcmlnaW5hbGx5IGNyZWF0ZWQgdGhpcyBjaGlsZC5cbiAgICAgIGNoaWxkT3duZXIgPSBcIiBJdCB3YXMgcGFzc2VkIGEgY2hpbGQgZnJvbSBcIiArIGdldENvbXBvbmVudE5hbWUoZWxlbWVudC5fb3duZXIudHlwZSkgKyBcIi5cIjtcbiAgICB9XG5cbiAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKGVsZW1lbnQpO1xuXG4gICAgZXJyb3IoJ0VhY2ggY2hpbGQgaW4gYSBsaXN0IHNob3VsZCBoYXZlIGEgdW5pcXVlIFwia2V5XCIgcHJvcC4nICsgJyVzJXMgU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay93YXJuaW5nLWtleXMgZm9yIG1vcmUgaW5mb3JtYXRpb24uJywgY3VycmVudENvbXBvbmVudEVycm9ySW5mbywgY2hpbGRPd25lcik7XG5cbiAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKG51bGwpO1xuICB9XG59XG4vKipcbiAqIEVuc3VyZSB0aGF0IGV2ZXJ5IGVsZW1lbnQgZWl0aGVyIGlzIHBhc3NlZCBpbiBhIHN0YXRpYyBsb2NhdGlvbiwgaW4gYW5cbiAqIGFycmF5IHdpdGggYW4gZXhwbGljaXQga2V5cyBwcm9wZXJ0eSBkZWZpbmVkLCBvciBpbiBhbiBvYmplY3QgbGl0ZXJhbFxuICogd2l0aCB2YWxpZCBrZXkgcHJvcGVydHkuXG4gKlxuICogQGludGVybmFsXG4gKiBAcGFyYW0ge1JlYWN0Tm9kZX0gbm9kZSBTdGF0aWNhbGx5IHBhc3NlZCBjaGlsZCBvZiBhbnkgdHlwZS5cbiAqIEBwYXJhbSB7Kn0gcGFyZW50VHlwZSBub2RlJ3MgcGFyZW50J3MgdHlwZS5cbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlQ2hpbGRLZXlzKG5vZGUsIHBhcmVudFR5cGUpIHtcbiAge1xuICAgIGlmICh0eXBlb2Ygbm9kZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShub2RlKSkge1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBjaGlsZCA9IG5vZGVbaV07XG5cbiAgICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KGNoaWxkKSkge1xuICAgICAgICAgIHZhbGlkYXRlRXhwbGljaXRLZXkoY2hpbGQsIHBhcmVudFR5cGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChpc1ZhbGlkRWxlbWVudChub2RlKSkge1xuICAgICAgLy8gVGhpcyBlbGVtZW50IHdhcyBwYXNzZWQgaW4gYSB2YWxpZCBsb2NhdGlvbi5cbiAgICAgIGlmIChub2RlLl9zdG9yZSkge1xuICAgICAgICBub2RlLl9zdG9yZS52YWxpZGF0ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAobm9kZSkge1xuICAgICAgdmFyIGl0ZXJhdG9yRm4gPSBnZXRJdGVyYXRvckZuKG5vZGUpO1xuXG4gICAgICBpZiAodHlwZW9mIGl0ZXJhdG9yRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgLy8gRW50cnkgaXRlcmF0b3JzIHVzZWQgdG8gcHJvdmlkZSBpbXBsaWNpdCBrZXlzLFxuICAgICAgICAvLyBidXQgbm93IHdlIHByaW50IGEgc2VwYXJhdGUgd2FybmluZyBmb3IgdGhlbSBsYXRlci5cbiAgICAgICAgaWYgKGl0ZXJhdG9yRm4gIT09IG5vZGUuZW50cmllcykge1xuICAgICAgICAgIHZhciBpdGVyYXRvciA9IGl0ZXJhdG9yRm4uY2FsbChub2RlKTtcbiAgICAgICAgICB2YXIgc3RlcDtcblxuICAgICAgICAgIHdoaWxlICghKHN0ZXAgPSBpdGVyYXRvci5uZXh0KCkpLmRvbmUpIHtcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkRWxlbWVudChzdGVwLnZhbHVlKSkge1xuICAgICAgICAgICAgICB2YWxpZGF0ZUV4cGxpY2l0S2V5KHN0ZXAudmFsdWUsIHBhcmVudFR5cGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyoqXG4gKiBHaXZlbiBhbiBlbGVtZW50LCB2YWxpZGF0ZSB0aGF0IGl0cyBwcm9wcyBmb2xsb3cgdGhlIHByb3BUeXBlcyBkZWZpbml0aW9uLFxuICogcHJvdmlkZWQgYnkgdGhlIHR5cGUuXG4gKlxuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGVsZW1lbnRcbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlUHJvcFR5cGVzKGVsZW1lbnQpIHtcbiAge1xuICAgIHZhciB0eXBlID0gZWxlbWVudC50eXBlO1xuXG4gICAgaWYgKHR5cGUgPT09IG51bGwgfHwgdHlwZSA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBwcm9wVHlwZXM7XG5cbiAgICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHByb3BUeXBlcyA9IHR5cGUucHJvcFR5cGVzO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnICYmICh0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFIHx8IC8vIE5vdGU6IE1lbW8gb25seSBjaGVja3Mgb3V0ZXIgcHJvcHMgaGVyZS5cbiAgICAvLyBJbm5lciBwcm9wcyBhcmUgY2hlY2tlZCBpbiB0aGUgcmVjb25jaWxlci5cbiAgICB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9NRU1PX1RZUEUpKSB7XG4gICAgICBwcm9wVHlwZXMgPSB0eXBlLnByb3BUeXBlcztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwcm9wVHlwZXMpIHtcbiAgICAgIC8vIEludGVudGlvbmFsbHkgaW5zaWRlIHRvIGF2b2lkIHRyaWdnZXJpbmcgbGF6eSBpbml0aWFsaXplcnM6XG4gICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUodHlwZSk7XG4gICAgICBjaGVja1Byb3BUeXBlcyhwcm9wVHlwZXMsIGVsZW1lbnQucHJvcHMsICdwcm9wJywgbmFtZSwgZWxlbWVudCk7XG4gICAgfSBlbHNlIGlmICh0eXBlLlByb3BUeXBlcyAhPT0gdW5kZWZpbmVkICYmICFwcm9wVHlwZXNNaXNzcGVsbFdhcm5pbmdTaG93bikge1xuICAgICAgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24gPSB0cnVlOyAvLyBJbnRlbnRpb25hbGx5IGluc2lkZSB0byBhdm9pZCB0cmlnZ2VyaW5nIGxhenkgaW5pdGlhbGl6ZXJzOlxuXG4gICAgICB2YXIgX25hbWUgPSBnZXRDb21wb25lbnROYW1lKHR5cGUpO1xuXG4gICAgICBlcnJvcignQ29tcG9uZW50ICVzIGRlY2xhcmVkIGBQcm9wVHlwZXNgIGluc3RlYWQgb2YgYHByb3BUeXBlc2AuIERpZCB5b3UgbWlzc3BlbGwgdGhlIHByb3BlcnR5IGFzc2lnbm1lbnQ/JywgX25hbWUgfHwgJ1Vua25vd24nKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHR5cGUuZ2V0RGVmYXVsdFByb3BzID09PSAnZnVuY3Rpb24nICYmICF0eXBlLmdldERlZmF1bHRQcm9wcy5pc1JlYWN0Q2xhc3NBcHByb3ZlZCkge1xuICAgICAgZXJyb3IoJ2dldERlZmF1bHRQcm9wcyBpcyBvbmx5IHVzZWQgb24gY2xhc3NpYyBSZWFjdC5jcmVhdGVDbGFzcyAnICsgJ2RlZmluaXRpb25zLiBVc2UgYSBzdGF0aWMgcHJvcGVydHkgbmFtZWQgYGRlZmF1bHRQcm9wc2AgaW5zdGVhZC4nKTtcbiAgICB9XG4gIH1cbn1cbi8qKlxuICogR2l2ZW4gYSBmcmFnbWVudCwgdmFsaWRhdGUgdGhhdCBpdCBjYW4gb25seSBiZSBwcm92aWRlZCB3aXRoIGZyYWdtZW50IHByb3BzXG4gKiBAcGFyYW0ge1JlYWN0RWxlbWVudH0gZnJhZ21lbnRcbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhmcmFnbWVudCkge1xuICB7XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhmcmFnbWVudC5wcm9wcyk7XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuXG4gICAgICBpZiAoa2V5ICE9PSAnY2hpbGRyZW4nICYmIGtleSAhPT0gJ2tleScpIHtcbiAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShmcmFnbWVudCk7XG5cbiAgICAgICAgZXJyb3IoJ0ludmFsaWQgcHJvcCBgJXNgIHN1cHBsaWVkIHRvIGBSZWFjdC5GcmFnbWVudGAuICcgKyAnUmVhY3QuRnJhZ21lbnQgY2FuIG9ubHkgaGF2ZSBga2V5YCBhbmQgYGNoaWxkcmVuYCBwcm9wcy4nLCBrZXkpO1xuXG4gICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEobnVsbCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmcmFnbWVudC5yZWYgIT09IG51bGwpIHtcbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZnJhZ21lbnQpO1xuXG4gICAgICBlcnJvcignSW52YWxpZCBhdHRyaWJ1dGUgYHJlZmAgc3VwcGxpZWQgdG8gYFJlYWN0LkZyYWdtZW50YC4nKTtcblxuICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShudWxsKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24ganN4V2l0aFZhbGlkYXRpb24odHlwZSwgcHJvcHMsIGtleSwgaXNTdGF0aWNDaGlsZHJlbiwgc291cmNlLCBzZWxmKSB7XG4gIHtcbiAgICB2YXIgdmFsaWRUeXBlID0gaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpOyAvLyBXZSB3YXJuIGluIHRoaXMgY2FzZSBidXQgZG9uJ3QgdGhyb3cuIFdlIGV4cGVjdCB0aGUgZWxlbWVudCBjcmVhdGlvbiB0b1xuICAgIC8vIHN1Y2NlZWQgYW5kIHRoZXJlIHdpbGwgbGlrZWx5IGJlIGVycm9ycyBpbiByZW5kZXIuXG5cbiAgICBpZiAoIXZhbGlkVHlwZSkge1xuICAgICAgdmFyIGluZm8gPSAnJztcblxuICAgICAgaWYgKHR5cGUgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgdHlwZSAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyh0eXBlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgaW5mbyArPSAnIFlvdSBsaWtlbHkgZm9yZ290IHRvIGV4cG9ydCB5b3VyIGNvbXBvbmVudCBmcm9tIHRoZSBmaWxlICcgKyBcIml0J3MgZGVmaW5lZCBpbiwgb3IgeW91IG1pZ2h0IGhhdmUgbWl4ZWQgdXAgZGVmYXVsdCBhbmQgbmFtZWQgaW1wb3J0cy5cIjtcbiAgICAgIH1cblxuICAgICAgdmFyIHNvdXJjZUluZm8gPSBnZXRTb3VyY2VJbmZvRXJyb3JBZGRlbmR1bShzb3VyY2UpO1xuXG4gICAgICBpZiAoc291cmNlSW5mbykge1xuICAgICAgICBpbmZvICs9IHNvdXJjZUluZm87XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpbmZvICs9IGdldERlY2xhcmF0aW9uRXJyb3JBZGRlbmR1bSgpO1xuICAgICAgfVxuXG4gICAgICB2YXIgdHlwZVN0cmluZztcblxuICAgICAgaWYgKHR5cGUgPT09IG51bGwpIHtcbiAgICAgICAgdHlwZVN0cmluZyA9ICdudWxsJztcbiAgICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuICAgICAgICB0eXBlU3RyaW5nID0gJ2FycmF5JztcbiAgICAgIH0gZWxzZSBpZiAodHlwZSAhPT0gdW5kZWZpbmVkICYmIHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0VMRU1FTlRfVFlQRSkge1xuICAgICAgICB0eXBlU3RyaW5nID0gXCI8XCIgKyAoZ2V0Q29tcG9uZW50TmFtZSh0eXBlLnR5cGUpIHx8ICdVbmtub3duJykgKyBcIiAvPlwiO1xuICAgICAgICBpbmZvID0gJyBEaWQgeW91IGFjY2lkZW50YWxseSBleHBvcnQgYSBKU1ggbGl0ZXJhbCBpbnN0ZWFkIG9mIGEgY29tcG9uZW50Pyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0eXBlU3RyaW5nID0gdHlwZW9mIHR5cGU7XG4gICAgICB9XG5cbiAgICAgIGVycm9yKCdSZWFjdC5qc3g6IHR5cGUgaXMgaW52YWxpZCAtLSBleHBlY3RlZCBhIHN0cmluZyAoZm9yICcgKyAnYnVpbHQtaW4gY29tcG9uZW50cykgb3IgYSBjbGFzcy9mdW5jdGlvbiAoZm9yIGNvbXBvc2l0ZSAnICsgJ2NvbXBvbmVudHMpIGJ1dCBnb3Q6ICVzLiVzJywgdHlwZVN0cmluZywgaW5mbyk7XG4gICAgfVxuXG4gICAgdmFyIGVsZW1lbnQgPSBqc3hERVYodHlwZSwgcHJvcHMsIGtleSwgc291cmNlLCBzZWxmKTsgLy8gVGhlIHJlc3VsdCBjYW4gYmUgbnVsbGlzaCBpZiBhIG1vY2sgb3IgYSBjdXN0b20gZnVuY3Rpb24gaXMgdXNlZC5cbiAgICAvLyBUT0RPOiBEcm9wIHRoaXMgd2hlbiB0aGVzZSBhcmUgbm8gbG9uZ2VyIGFsbG93ZWQgYXMgdGhlIHR5cGUgYXJndW1lbnQuXG5cbiAgICBpZiAoZWxlbWVudCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9IC8vIFNraXAga2V5IHdhcm5pbmcgaWYgdGhlIHR5cGUgaXNuJ3QgdmFsaWQgc2luY2Ugb3VyIGtleSB2YWxpZGF0aW9uIGxvZ2ljXG4gICAgLy8gZG9lc24ndCBleHBlY3QgYSBub24tc3RyaW5nL2Z1bmN0aW9uIHR5cGUgYW5kIGNhbiB0aHJvdyBjb25mdXNpbmcgZXJyb3JzLlxuICAgIC8vIFdlIGRvbid0IHdhbnQgZXhjZXB0aW9uIGJlaGF2aW9yIHRvIGRpZmZlciBiZXR3ZWVuIGRldiBhbmQgcHJvZC5cbiAgICAvLyAoUmVuZGVyaW5nIHdpbGwgdGhyb3cgd2l0aCBhIGhlbHBmdWwgbWVzc2FnZSBhbmQgYXMgc29vbiBhcyB0aGUgdHlwZSBpc1xuICAgIC8vIGZpeGVkLCB0aGUga2V5IHdhcm5pbmdzIHdpbGwgYXBwZWFyLilcblxuXG4gICAgaWYgKHZhbGlkVHlwZSkge1xuICAgICAgdmFyIGNoaWxkcmVuID0gcHJvcHMuY2hpbGRyZW47XG5cbiAgICAgIGlmIChjaGlsZHJlbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmIChpc1N0YXRpY0NoaWxkcmVuKSB7XG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGRyZW4pKSB7XG4gICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgIHZhbGlkYXRlQ2hpbGRLZXlzKGNoaWxkcmVuW2ldLCB0eXBlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKE9iamVjdC5mcmVlemUpIHtcbiAgICAgICAgICAgICAgT2JqZWN0LmZyZWV6ZShjaGlsZHJlbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGVycm9yKCdSZWFjdC5qc3g6IFN0YXRpYyBjaGlsZHJlbiBzaG91bGQgYWx3YXlzIGJlIGFuIGFycmF5LiAnICsgJ1lvdSBhcmUgbGlrZWx5IGV4cGxpY2l0bHkgY2FsbGluZyBSZWFjdC5qc3hzIG9yIFJlYWN0LmpzeERFVi4gJyArICdVc2UgdGhlIEJhYmVsIHRyYW5zZm9ybSBpbnN0ZWFkLicpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB2YWxpZGF0ZUNoaWxkS2V5cyhjaGlsZHJlbiwgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gZXhwb3J0cy5GcmFnbWVudCkge1xuICAgICAgdmFsaWRhdGVGcmFnbWVudFByb3BzKGVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YWxpZGF0ZVByb3BUeXBlcyhlbGVtZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfVxufSAvLyBUaGVzZSB0d28gZnVuY3Rpb25zIGV4aXN0IHRvIHN0aWxsIGdldCBjaGlsZCB3YXJuaW5ncyBpbiBkZXZcblxudmFyIGpzeERFViQxID0gIGpzeFdpdGhWYWxpZGF0aW9uIDtcblxuZXhwb3J0cy5qc3hERVYgPSBqc3hERVYkMTtcbiAgfSkoKTtcbn1cbiIsIi8qKiBAbGljZW5zZSBSZWFjdCB2MTcuMC4xXG4gKiByZWFjdC5kZXZlbG9wbWVudC5qc1xuICpcbiAqIENvcHlyaWdodCAoYykgRmFjZWJvb2ssIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5cbid1c2Ugc3RyaWN0JztcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICAoZnVuY3Rpb24oKSB7XG4ndXNlIHN0cmljdCc7XG5cbnZhciBfYXNzaWduID0gcmVxdWlyZSgnb2JqZWN0LWFzc2lnbicpO1xuXG4vLyBUT0RPOiB0aGlzIGlzIHNwZWNpYWwgYmVjYXVzZSBpdCBnZXRzIGltcG9ydGVkIGR1cmluZyBidWlsZC5cbnZhciBSZWFjdFZlcnNpb24gPSAnMTcuMC4xJztcblxuLy8gQVRURU5USU9OXG4vLyBXaGVuIGFkZGluZyBuZXcgc3ltYm9scyB0byB0aGlzIGZpbGUsXG4vLyBQbGVhc2UgY29uc2lkZXIgYWxzbyBhZGRpbmcgdG8gJ3JlYWN0LWRldnRvb2xzLXNoYXJlZC9zcmMvYmFja2VuZC9SZWFjdFN5bWJvbHMnXG4vLyBUaGUgU3ltYm9sIHVzZWQgdG8gdGFnIHRoZSBSZWFjdEVsZW1lbnQtbGlrZSB0eXBlcy4gSWYgdGhlcmUgaXMgbm8gbmF0aXZlIFN5bWJvbFxuLy8gbm9yIHBvbHlmaWxsLCB0aGVuIGEgcGxhaW4gbnVtYmVyIGlzIHVzZWQgZm9yIHBlcmZvcm1hbmNlLlxudmFyIFJFQUNUX0VMRU1FTlRfVFlQRSA9IDB4ZWFjNztcbnZhciBSRUFDVF9QT1JUQUxfVFlQRSA9IDB4ZWFjYTtcbmV4cG9ydHMuRnJhZ21lbnQgPSAweGVhY2I7XG5leHBvcnRzLlN0cmljdE1vZGUgPSAweGVhY2M7XG5leHBvcnRzLlByb2ZpbGVyID0gMHhlYWQyO1xudmFyIFJFQUNUX1BST1ZJREVSX1RZUEUgPSAweGVhY2Q7XG52YXIgUkVBQ1RfQ09OVEVYVF9UWVBFID0gMHhlYWNlO1xudmFyIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgPSAweGVhZDA7XG5leHBvcnRzLlN1c3BlbnNlID0gMHhlYWQxO1xudmFyIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSA9IDB4ZWFkODtcbnZhciBSRUFDVF9NRU1PX1RZUEUgPSAweGVhZDM7XG52YXIgUkVBQ1RfTEFaWV9UWVBFID0gMHhlYWQ0O1xudmFyIFJFQUNUX0JMT0NLX1RZUEUgPSAweGVhZDk7XG52YXIgUkVBQ1RfU0VSVkVSX0JMT0NLX1RZUEUgPSAweGVhZGE7XG52YXIgUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSA9IDB4ZWFkNTtcbnZhciBSRUFDVF9TQ09QRV9UWVBFID0gMHhlYWQ3O1xudmFyIFJFQUNUX09QQVFVRV9JRF9UWVBFID0gMHhlYWUwO1xudmFyIFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFID0gMHhlYWUxO1xudmFyIFJFQUNUX09GRlNDUkVFTl9UWVBFID0gMHhlYWUyO1xudmFyIFJFQUNUX0xFR0FDWV9ISURERU5fVFlQRSA9IDB4ZWFlMztcblxuaWYgKHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiYgU3ltYm9sLmZvcikge1xuICB2YXIgc3ltYm9sRm9yID0gU3ltYm9sLmZvcjtcbiAgUkVBQ1RfRUxFTUVOVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5lbGVtZW50Jyk7XG4gIFJFQUNUX1BPUlRBTF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5wb3J0YWwnKTtcbiAgZXhwb3J0cy5GcmFnbWVudCA9IHN5bWJvbEZvcigncmVhY3QuZnJhZ21lbnQnKTtcbiAgZXhwb3J0cy5TdHJpY3RNb2RlID0gc3ltYm9sRm9yKCdyZWFjdC5zdHJpY3RfbW9kZScpO1xuICBleHBvcnRzLlByb2ZpbGVyID0gc3ltYm9sRm9yKCdyZWFjdC5wcm9maWxlcicpO1xuICBSRUFDVF9QUk9WSURFUl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5wcm92aWRlcicpO1xuICBSRUFDVF9DT05URVhUX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmNvbnRleHQnKTtcbiAgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuZm9yd2FyZF9yZWYnKTtcbiAgZXhwb3J0cy5TdXNwZW5zZSA9IHN5bWJvbEZvcigncmVhY3Quc3VzcGVuc2UnKTtcbiAgUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zdXNwZW5zZV9saXN0Jyk7XG4gIFJFQUNUX01FTU9fVFlQRSA9IHN5bWJvbEZvcigncmVhY3QubWVtbycpO1xuICBSRUFDVF9MQVpZX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LmxhenknKTtcbiAgUkVBQ1RfQkxPQ0tfVFlQRSA9IHN5bWJvbEZvcigncmVhY3QuYmxvY2snKTtcbiAgUkVBQ1RfU0VSVkVSX0JMT0NLX1RZUEUgPSBzeW1ib2xGb3IoJ3JlYWN0LnNlcnZlci5ibG9jaycpO1xuICBSRUFDVF9GVU5EQU1FTlRBTF9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5mdW5kYW1lbnRhbCcpO1xuICBSRUFDVF9TQ09QRV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5zY29wZScpO1xuICBSRUFDVF9PUEFRVUVfSURfVFlQRSA9IHN5bWJvbEZvcigncmVhY3Qub3BhcXVlLmlkJyk7XG4gIFJFQUNUX0RFQlVHX1RSQUNJTkdfTU9ERV9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5kZWJ1Z190cmFjZV9tb2RlJyk7XG4gIFJFQUNUX09GRlNDUkVFTl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5vZmZzY3JlZW4nKTtcbiAgUkVBQ1RfTEVHQUNZX0hJRERFTl9UWVBFID0gc3ltYm9sRm9yKCdyZWFjdC5sZWdhY3lfaGlkZGVuJyk7XG59XG5cbnZhciBNQVlCRV9JVEVSQVRPUl9TWU1CT0wgPSB0eXBlb2YgU3ltYm9sID09PSAnZnVuY3Rpb24nICYmIFN5bWJvbC5pdGVyYXRvcjtcbnZhciBGQVVYX0lURVJBVE9SX1NZTUJPTCA9ICdAQGl0ZXJhdG9yJztcbmZ1bmN0aW9uIGdldEl0ZXJhdG9yRm4obWF5YmVJdGVyYWJsZSkge1xuICBpZiAobWF5YmVJdGVyYWJsZSA9PT0gbnVsbCB8fCB0eXBlb2YgbWF5YmVJdGVyYWJsZSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHZhciBtYXliZUl0ZXJhdG9yID0gTUFZQkVfSVRFUkFUT1JfU1lNQk9MICYmIG1heWJlSXRlcmFibGVbTUFZQkVfSVRFUkFUT1JfU1lNQk9MXSB8fCBtYXliZUl0ZXJhYmxlW0ZBVVhfSVRFUkFUT1JfU1lNQk9MXTtcblxuICBpZiAodHlwZW9mIG1heWJlSXRlcmF0b3IgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gbWF5YmVJdGVyYXRvcjtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vKipcbiAqIEtlZXBzIHRyYWNrIG9mIHRoZSBjdXJyZW50IGRpc3BhdGNoZXIuXG4gKi9cbnZhciBSZWFjdEN1cnJlbnREaXNwYXRjaGVyID0ge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqIEB0eXBlIHtSZWFjdENvbXBvbmVudH1cbiAgICovXG4gIGN1cnJlbnQ6IG51bGxcbn07XG5cbi8qKlxuICogS2VlcHMgdHJhY2sgb2YgdGhlIGN1cnJlbnQgYmF0Y2gncyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgaG93IGxvbmcgYW4gdXBkYXRlXG4gKiBzaG91bGQgc3VzcGVuZCBmb3IgaWYgaXQgbmVlZHMgdG8uXG4gKi9cbnZhciBSZWFjdEN1cnJlbnRCYXRjaENvbmZpZyA9IHtcbiAgdHJhbnNpdGlvbjogMFxufTtcblxuLyoqXG4gKiBLZWVwcyB0cmFjayBvZiB0aGUgY3VycmVudCBvd25lci5cbiAqXG4gKiBUaGUgY3VycmVudCBvd25lciBpcyB0aGUgY29tcG9uZW50IHdobyBzaG91bGQgb3duIGFueSBjb21wb25lbnRzIHRoYXQgYXJlXG4gKiBjdXJyZW50bHkgYmVpbmcgY29uc3RydWN0ZWQuXG4gKi9cbnZhciBSZWFjdEN1cnJlbnRPd25lciA9IHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAdHlwZSB7UmVhY3RDb21wb25lbnR9XG4gICAqL1xuICBjdXJyZW50OiBudWxsXG59O1xuXG52YXIgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSA9IHt9O1xudmFyIGN1cnJlbnRFeHRyYVN0YWNrRnJhbWUgPSBudWxsO1xuZnVuY3Rpb24gc2V0RXh0cmFTdGFja0ZyYW1lKHN0YWNrKSB7XG4gIHtcbiAgICBjdXJyZW50RXh0cmFTdGFja0ZyYW1lID0gc3RhY2s7XG4gIH1cbn1cblxue1xuICBSZWFjdERlYnVnQ3VycmVudEZyYW1lLnNldEV4dHJhU3RhY2tGcmFtZSA9IGZ1bmN0aW9uIChzdGFjaykge1xuICAgIHtcbiAgICAgIGN1cnJlbnRFeHRyYVN0YWNrRnJhbWUgPSBzdGFjaztcbiAgICB9XG4gIH07IC8vIFN0YWNrIGltcGxlbWVudGF0aW9uIGluamVjdGVkIGJ5IHRoZSBjdXJyZW50IHJlbmRlcmVyLlxuXG5cbiAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5nZXRDdXJyZW50U3RhY2sgPSBudWxsO1xuXG4gIFJlYWN0RGVidWdDdXJyZW50RnJhbWUuZ2V0U3RhY2tBZGRlbmR1bSA9IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgc3RhY2sgPSAnJzsgLy8gQWRkIGFuIGV4dHJhIHRvcCBmcmFtZSB3aGlsZSBhbiBlbGVtZW50IGlzIGJlaW5nIHZhbGlkYXRlZFxuXG4gICAgaWYgKGN1cnJlbnRFeHRyYVN0YWNrRnJhbWUpIHtcbiAgICAgIHN0YWNrICs9IGN1cnJlbnRFeHRyYVN0YWNrRnJhbWU7XG4gICAgfSAvLyBEZWxlZ2F0ZSB0byB0aGUgaW5qZWN0ZWQgcmVuZGVyZXItc3BlY2lmaWMgaW1wbGVtZW50YXRpb25cblxuXG4gICAgdmFyIGltcGwgPSBSZWFjdERlYnVnQ3VycmVudEZyYW1lLmdldEN1cnJlbnRTdGFjaztcblxuICAgIGlmIChpbXBsKSB7XG4gICAgICBzdGFjayArPSBpbXBsKCkgfHwgJyc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YWNrO1xuICB9O1xufVxuXG4vKipcbiAqIFVzZWQgYnkgYWN0KCkgdG8gdHJhY2sgd2hldGhlciB5b3UncmUgaW5zaWRlIGFuIGFjdCgpIHNjb3BlLlxuICovXG52YXIgSXNTb21lUmVuZGVyZXJBY3RpbmcgPSB7XG4gIGN1cnJlbnQ6IGZhbHNlXG59O1xuXG52YXIgUmVhY3RTaGFyZWRJbnRlcm5hbHMgPSB7XG4gIFJlYWN0Q3VycmVudERpc3BhdGNoZXI6IFJlYWN0Q3VycmVudERpc3BhdGNoZXIsXG4gIFJlYWN0Q3VycmVudEJhdGNoQ29uZmlnOiBSZWFjdEN1cnJlbnRCYXRjaENvbmZpZyxcbiAgUmVhY3RDdXJyZW50T3duZXI6IFJlYWN0Q3VycmVudE93bmVyLFxuICBJc1NvbWVSZW5kZXJlckFjdGluZzogSXNTb21lUmVuZGVyZXJBY3RpbmcsXG4gIC8vIFVzZWQgYnkgcmVuZGVyZXJzIHRvIGF2b2lkIGJ1bmRsaW5nIG9iamVjdC1hc3NpZ24gdHdpY2UgaW4gVU1EIGJ1bmRsZXM6XG4gIGFzc2lnbjogX2Fzc2lnblxufTtcblxue1xuICBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lID0gUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZTtcbn1cblxuLy8gYnkgY2FsbHMgdG8gdGhlc2UgbWV0aG9kcyBieSBhIEJhYmVsIHBsdWdpbi5cbi8vXG4vLyBJbiBQUk9EIChvciBpbiBwYWNrYWdlcyB3aXRob3V0IGFjY2VzcyB0byBSZWFjdCBpbnRlcm5hbHMpLFxuLy8gdGhleSBhcmUgbGVmdCBhcyB0aGV5IGFyZSBpbnN0ZWFkLlxuXG5mdW5jdGlvbiB3YXJuKGZvcm1hdCkge1xuICB7XG4gICAgZm9yICh2YXIgX2xlbiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbiA+IDEgPyBfbGVuIC0gMSA6IDApLCBfa2V5ID0gMTsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgYXJnc1tfa2V5IC0gMV0gPSBhcmd1bWVudHNbX2tleV07XG4gICAgfVxuXG4gICAgcHJpbnRXYXJuaW5nKCd3YXJuJywgZm9ybWF0LCBhcmdzKTtcbiAgfVxufVxuZnVuY3Rpb24gZXJyb3IoZm9ybWF0KSB7XG4gIHtcbiAgICBmb3IgKHZhciBfbGVuMiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbjIgPiAxID8gX2xlbjIgLSAxIDogMCksIF9rZXkyID0gMTsgX2tleTIgPCBfbGVuMjsgX2tleTIrKykge1xuICAgICAgYXJnc1tfa2V5MiAtIDFdID0gYXJndW1lbnRzW19rZXkyXTtcbiAgICB9XG5cbiAgICBwcmludFdhcm5pbmcoJ2Vycm9yJywgZm9ybWF0LCBhcmdzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBwcmludFdhcm5pbmcobGV2ZWwsIGZvcm1hdCwgYXJncykge1xuICAvLyBXaGVuIGNoYW5naW5nIHRoaXMgbG9naWMsIHlvdSBtaWdodCB3YW50IHRvIGFsc29cbiAgLy8gdXBkYXRlIGNvbnNvbGVXaXRoU3RhY2tEZXYud3d3LmpzIGFzIHdlbGwuXG4gIHtcbiAgICB2YXIgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0RGVidWdDdXJyZW50RnJhbWU7XG4gICAgdmFyIHN0YWNrID0gUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZS5nZXRTdGFja0FkZGVuZHVtKCk7XG5cbiAgICBpZiAoc3RhY2sgIT09ICcnKSB7XG4gICAgICBmb3JtYXQgKz0gJyVzJztcbiAgICAgIGFyZ3MgPSBhcmdzLmNvbmNhdChbc3RhY2tdKTtcbiAgICB9XG5cbiAgICB2YXIgYXJnc1dpdGhGb3JtYXQgPSBhcmdzLm1hcChmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuICcnICsgaXRlbTtcbiAgICB9KTsgLy8gQ2FyZWZ1bDogUk4gY3VycmVudGx5IGRlcGVuZHMgb24gdGhpcyBwcmVmaXhcblxuICAgIGFyZ3NXaXRoRm9ybWF0LnVuc2hpZnQoJ1dhcm5pbmc6ICcgKyBmb3JtYXQpOyAvLyBXZSBpbnRlbnRpb25hbGx5IGRvbid0IHVzZSBzcHJlYWQgKG9yIC5hcHBseSkgZGlyZWN0bHkgYmVjYXVzZSBpdFxuICAgIC8vIGJyZWFrcyBJRTk6IGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTM2MTBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaW50ZXJuYWwvbm8tcHJvZHVjdGlvbi1sb2dnaW5nXG5cbiAgICBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY2FsbChjb25zb2xlW2xldmVsXSwgY29uc29sZSwgYXJnc1dpdGhGb3JtYXQpO1xuICB9XG59XG5cbnZhciBkaWRXYXJuU3RhdGVVcGRhdGVGb3JVbm1vdW50ZWRDb21wb25lbnQgPSB7fTtcblxuZnVuY3Rpb24gd2Fybk5vb3AocHVibGljSW5zdGFuY2UsIGNhbGxlck5hbWUpIHtcbiAge1xuICAgIHZhciBfY29uc3RydWN0b3IgPSBwdWJsaWNJbnN0YW5jZS5jb25zdHJ1Y3RvcjtcbiAgICB2YXIgY29tcG9uZW50TmFtZSA9IF9jb25zdHJ1Y3RvciAmJiAoX2NvbnN0cnVjdG9yLmRpc3BsYXlOYW1lIHx8IF9jb25zdHJ1Y3Rvci5uYW1lKSB8fCAnUmVhY3RDbGFzcyc7XG4gICAgdmFyIHdhcm5pbmdLZXkgPSBjb21wb25lbnROYW1lICsgXCIuXCIgKyBjYWxsZXJOYW1lO1xuXG4gICAgaWYgKGRpZFdhcm5TdGF0ZVVwZGF0ZUZvclVubW91bnRlZENvbXBvbmVudFt3YXJuaW5nS2V5XSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGVycm9yKFwiQ2FuJ3QgY2FsbCAlcyBvbiBhIGNvbXBvbmVudCB0aGF0IGlzIG5vdCB5ZXQgbW91bnRlZC4gXCIgKyAnVGhpcyBpcyBhIG5vLW9wLCBidXQgaXQgbWlnaHQgaW5kaWNhdGUgYSBidWcgaW4geW91ciBhcHBsaWNhdGlvbi4gJyArICdJbnN0ZWFkLCBhc3NpZ24gdG8gYHRoaXMuc3RhdGVgIGRpcmVjdGx5IG9yIGRlZmluZSBhIGBzdGF0ZSA9IHt9O2AgJyArICdjbGFzcyBwcm9wZXJ0eSB3aXRoIHRoZSBkZXNpcmVkIHN0YXRlIGluIHRoZSAlcyBjb21wb25lbnQuJywgY2FsbGVyTmFtZSwgY29tcG9uZW50TmFtZSk7XG5cbiAgICBkaWRXYXJuU3RhdGVVcGRhdGVGb3JVbm1vdW50ZWRDb21wb25lbnRbd2FybmluZ0tleV0gPSB0cnVlO1xuICB9XG59XG4vKipcbiAqIFRoaXMgaXMgdGhlIGFic3RyYWN0IEFQSSBmb3IgYW4gdXBkYXRlIHF1ZXVlLlxuICovXG5cblxudmFyIFJlYWN0Tm9vcFVwZGF0ZVF1ZXVlID0ge1xuICAvKipcbiAgICogQ2hlY2tzIHdoZXRoZXIgb3Igbm90IHRoaXMgY29tcG9zaXRlIGNvbXBvbmVudCBpcyBtb3VudGVkLlxuICAgKiBAcGFyYW0ge1JlYWN0Q2xhc3N9IHB1YmxpY0luc3RhbmNlIFRoZSBpbnN0YW5jZSB3ZSB3YW50IHRvIHRlc3QuXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59IFRydWUgaWYgbW91bnRlZCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgKiBAcHJvdGVjdGVkXG4gICAqIEBmaW5hbFxuICAgKi9cbiAgaXNNb3VudGVkOiBmdW5jdGlvbiAocHVibGljSW5zdGFuY2UpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH0sXG5cbiAgLyoqXG4gICAqIEZvcmNlcyBhbiB1cGRhdGUuIFRoaXMgc2hvdWxkIG9ubHkgYmUgaW52b2tlZCB3aGVuIGl0IGlzIGtub3duIHdpdGhcbiAgICogY2VydGFpbnR5IHRoYXQgd2UgYXJlICoqbm90KiogaW4gYSBET00gdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIFlvdSBtYXkgd2FudCB0byBjYWxsIHRoaXMgd2hlbiB5b3Uga25vdyB0aGF0IHNvbWUgZGVlcGVyIGFzcGVjdCBvZiB0aGVcbiAgICogY29tcG9uZW50J3Mgc3RhdGUgaGFzIGNoYW5nZWQgYnV0IGBzZXRTdGF0ZWAgd2FzIG5vdCBjYWxsZWQuXG4gICAqXG4gICAqIFRoaXMgd2lsbCBub3QgaW52b2tlIGBzaG91bGRDb21wb25lbnRVcGRhdGVgLCBidXQgaXQgd2lsbCBpbnZva2VcbiAgICogYGNvbXBvbmVudFdpbGxVcGRhdGVgIGFuZCBgY29tcG9uZW50RGlkVXBkYXRlYC5cbiAgICpcbiAgICogQHBhcmFtIHtSZWFjdENsYXNzfSBwdWJsaWNJbnN0YW5jZSBUaGUgaW5zdGFuY2UgdGhhdCBzaG91bGQgcmVyZW5kZXIuXG4gICAqIEBwYXJhbSB7P2Z1bmN0aW9ufSBjYWxsYmFjayBDYWxsZWQgYWZ0ZXIgY29tcG9uZW50IGlzIHVwZGF0ZWQuXG4gICAqIEBwYXJhbSB7P3N0cmluZ30gY2FsbGVyTmFtZSBuYW1lIG9mIHRoZSBjYWxsaW5nIGZ1bmN0aW9uIGluIHRoZSBwdWJsaWMgQVBJLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGVucXVldWVGb3JjZVVwZGF0ZTogZnVuY3Rpb24gKHB1YmxpY0luc3RhbmNlLCBjYWxsYmFjaywgY2FsbGVyTmFtZSkge1xuICAgIHdhcm5Ob29wKHB1YmxpY0luc3RhbmNlLCAnZm9yY2VVcGRhdGUnKTtcbiAgfSxcblxuICAvKipcbiAgICogUmVwbGFjZXMgYWxsIG9mIHRoZSBzdGF0ZS4gQWx3YXlzIHVzZSB0aGlzIG9yIGBzZXRTdGF0ZWAgdG8gbXV0YXRlIHN0YXRlLlxuICAgKiBZb3Ugc2hvdWxkIHRyZWF0IGB0aGlzLnN0YXRlYCBhcyBpbW11dGFibGUuXG4gICAqXG4gICAqIFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IGB0aGlzLnN0YXRlYCB3aWxsIGJlIGltbWVkaWF0ZWx5IHVwZGF0ZWQsIHNvXG4gICAqIGFjY2Vzc2luZyBgdGhpcy5zdGF0ZWAgYWZ0ZXIgY2FsbGluZyB0aGlzIG1ldGhvZCBtYXkgcmV0dXJuIHRoZSBvbGQgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7UmVhY3RDbGFzc30gcHVibGljSW5zdGFuY2UgVGhlIGluc3RhbmNlIHRoYXQgc2hvdWxkIHJlcmVuZGVyLlxuICAgKiBAcGFyYW0ge29iamVjdH0gY29tcGxldGVTdGF0ZSBOZXh0IHN0YXRlLlxuICAgKiBAcGFyYW0gez9mdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGVkIGFmdGVyIGNvbXBvbmVudCBpcyB1cGRhdGVkLlxuICAgKiBAcGFyYW0gez9zdHJpbmd9IGNhbGxlck5hbWUgbmFtZSBvZiB0aGUgY2FsbGluZyBmdW5jdGlvbiBpbiB0aGUgcHVibGljIEFQSS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBlbnF1ZXVlUmVwbGFjZVN0YXRlOiBmdW5jdGlvbiAocHVibGljSW5zdGFuY2UsIGNvbXBsZXRlU3RhdGUsIGNhbGxiYWNrLCBjYWxsZXJOYW1lKSB7XG4gICAgd2Fybk5vb3AocHVibGljSW5zdGFuY2UsICdyZXBsYWNlU3RhdGUnKTtcbiAgfSxcblxuICAvKipcbiAgICogU2V0cyBhIHN1YnNldCBvZiB0aGUgc3RhdGUuIFRoaXMgb25seSBleGlzdHMgYmVjYXVzZSBfcGVuZGluZ1N0YXRlIGlzXG4gICAqIGludGVybmFsLiBUaGlzIHByb3ZpZGVzIGEgbWVyZ2luZyBzdHJhdGVneSB0aGF0IGlzIG5vdCBhdmFpbGFibGUgdG8gZGVlcFxuICAgKiBwcm9wZXJ0aWVzIHdoaWNoIGlzIGNvbmZ1c2luZy4gVE9ETzogRXhwb3NlIHBlbmRpbmdTdGF0ZSBvciBkb24ndCB1c2UgaXRcbiAgICogZHVyaW5nIHRoZSBtZXJnZS5cbiAgICpcbiAgICogQHBhcmFtIHtSZWFjdENsYXNzfSBwdWJsaWNJbnN0YW5jZSBUaGUgaW5zdGFuY2UgdGhhdCBzaG91bGQgcmVyZW5kZXIuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBwYXJ0aWFsU3RhdGUgTmV4dCBwYXJ0aWFsIHN0YXRlIHRvIGJlIG1lcmdlZCB3aXRoIHN0YXRlLlxuICAgKiBAcGFyYW0gez9mdW5jdGlvbn0gY2FsbGJhY2sgQ2FsbGVkIGFmdGVyIGNvbXBvbmVudCBpcyB1cGRhdGVkLlxuICAgKiBAcGFyYW0gez9zdHJpbmd9IE5hbWUgb2YgdGhlIGNhbGxpbmcgZnVuY3Rpb24gaW4gdGhlIHB1YmxpYyBBUEkuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZW5xdWV1ZVNldFN0YXRlOiBmdW5jdGlvbiAocHVibGljSW5zdGFuY2UsIHBhcnRpYWxTdGF0ZSwgY2FsbGJhY2ssIGNhbGxlck5hbWUpIHtcbiAgICB3YXJuTm9vcChwdWJsaWNJbnN0YW5jZSwgJ3NldFN0YXRlJyk7XG4gIH1cbn07XG5cbnZhciBlbXB0eU9iamVjdCA9IHt9O1xuXG57XG4gIE9iamVjdC5mcmVlemUoZW1wdHlPYmplY3QpO1xufVxuLyoqXG4gKiBCYXNlIGNsYXNzIGhlbHBlcnMgZm9yIHRoZSB1cGRhdGluZyBzdGF0ZSBvZiBhIGNvbXBvbmVudC5cbiAqL1xuXG5cbmZ1bmN0aW9uIENvbXBvbmVudChwcm9wcywgY29udGV4dCwgdXBkYXRlcikge1xuICB0aGlzLnByb3BzID0gcHJvcHM7XG4gIHRoaXMuY29udGV4dCA9IGNvbnRleHQ7IC8vIElmIGEgY29tcG9uZW50IGhhcyBzdHJpbmcgcmVmcywgd2Ugd2lsbCBhc3NpZ24gYSBkaWZmZXJlbnQgb2JqZWN0IGxhdGVyLlxuXG4gIHRoaXMucmVmcyA9IGVtcHR5T2JqZWN0OyAvLyBXZSBpbml0aWFsaXplIHRoZSBkZWZhdWx0IHVwZGF0ZXIgYnV0IHRoZSByZWFsIG9uZSBnZXRzIGluamVjdGVkIGJ5IHRoZVxuICAvLyByZW5kZXJlci5cblxuICB0aGlzLnVwZGF0ZXIgPSB1cGRhdGVyIHx8IFJlYWN0Tm9vcFVwZGF0ZVF1ZXVlO1xufVxuXG5Db21wb25lbnQucHJvdG90eXBlLmlzUmVhY3RDb21wb25lbnQgPSB7fTtcbi8qKlxuICogU2V0cyBhIHN1YnNldCBvZiB0aGUgc3RhdGUuIEFsd2F5cyB1c2UgdGhpcyB0byBtdXRhdGVcbiAqIHN0YXRlLiBZb3Ugc2hvdWxkIHRyZWF0IGB0aGlzLnN0YXRlYCBhcyBpbW11dGFibGUuXG4gKlxuICogVGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRoYXQgYHRoaXMuc3RhdGVgIHdpbGwgYmUgaW1tZWRpYXRlbHkgdXBkYXRlZCwgc29cbiAqIGFjY2Vzc2luZyBgdGhpcy5zdGF0ZWAgYWZ0ZXIgY2FsbGluZyB0aGlzIG1ldGhvZCBtYXkgcmV0dXJuIHRoZSBvbGQgdmFsdWUuXG4gKlxuICogVGhlcmUgaXMgbm8gZ3VhcmFudGVlIHRoYXQgY2FsbHMgdG8gYHNldFN0YXRlYCB3aWxsIHJ1biBzeW5jaHJvbm91c2x5LFxuICogYXMgdGhleSBtYXkgZXZlbnR1YWxseSBiZSBiYXRjaGVkIHRvZ2V0aGVyLiAgWW91IGNhbiBwcm92aWRlIGFuIG9wdGlvbmFsXG4gKiBjYWxsYmFjayB0aGF0IHdpbGwgYmUgZXhlY3V0ZWQgd2hlbiB0aGUgY2FsbCB0byBzZXRTdGF0ZSBpcyBhY3R1YWxseVxuICogY29tcGxldGVkLlxuICpcbiAqIFdoZW4gYSBmdW5jdGlvbiBpcyBwcm92aWRlZCB0byBzZXRTdGF0ZSwgaXQgd2lsbCBiZSBjYWxsZWQgYXQgc29tZSBwb2ludCBpblxuICogdGhlIGZ1dHVyZSAobm90IHN5bmNocm9ub3VzbHkpLiBJdCB3aWxsIGJlIGNhbGxlZCB3aXRoIHRoZSB1cCB0byBkYXRlXG4gKiBjb21wb25lbnQgYXJndW1lbnRzIChzdGF0ZSwgcHJvcHMsIGNvbnRleHQpLiBUaGVzZSB2YWx1ZXMgY2FuIGJlIGRpZmZlcmVudFxuICogZnJvbSB0aGlzLiogYmVjYXVzZSB5b3VyIGZ1bmN0aW9uIG1heSBiZSBjYWxsZWQgYWZ0ZXIgcmVjZWl2ZVByb3BzIGJ1dCBiZWZvcmVcbiAqIHNob3VsZENvbXBvbmVudFVwZGF0ZSwgYW5kIHRoaXMgbmV3IHN0YXRlLCBwcm9wcywgYW5kIGNvbnRleHQgd2lsbCBub3QgeWV0IGJlXG4gKiBhc3NpZ25lZCB0byB0aGlzLlxuICpcbiAqIEBwYXJhbSB7b2JqZWN0fGZ1bmN0aW9ufSBwYXJ0aWFsU3RhdGUgTmV4dCBwYXJ0aWFsIHN0YXRlIG9yIGZ1bmN0aW9uIHRvXG4gKiAgICAgICAgcHJvZHVjZSBuZXh0IHBhcnRpYWwgc3RhdGUgdG8gYmUgbWVyZ2VkIHdpdGggY3VycmVudCBzdGF0ZS5cbiAqIEBwYXJhbSB7P2Z1bmN0aW9ufSBjYWxsYmFjayBDYWxsZWQgYWZ0ZXIgc3RhdGUgaXMgdXBkYXRlZC5cbiAqIEBmaW5hbFxuICogQHByb3RlY3RlZFxuICovXG5cbkNvbXBvbmVudC5wcm90b3R5cGUuc2V0U3RhdGUgPSBmdW5jdGlvbiAocGFydGlhbFN0YXRlLCBjYWxsYmFjaykge1xuICBpZiAoISh0eXBlb2YgcGFydGlhbFN0YXRlID09PSAnb2JqZWN0JyB8fCB0eXBlb2YgcGFydGlhbFN0YXRlID09PSAnZnVuY3Rpb24nIHx8IHBhcnRpYWxTdGF0ZSA9PSBudWxsKSkge1xuICAgIHtcbiAgICAgIHRocm93IEVycm9yKCBcInNldFN0YXRlKC4uLik6IHRha2VzIGFuIG9iamVjdCBvZiBzdGF0ZSB2YXJpYWJsZXMgdG8gdXBkYXRlIG9yIGEgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzLlwiICk7XG4gICAgfVxuICB9XG5cbiAgdGhpcy51cGRhdGVyLmVucXVldWVTZXRTdGF0ZSh0aGlzLCBwYXJ0aWFsU3RhdGUsIGNhbGxiYWNrLCAnc2V0U3RhdGUnKTtcbn07XG4vKipcbiAqIEZvcmNlcyBhbiB1cGRhdGUuIFRoaXMgc2hvdWxkIG9ubHkgYmUgaW52b2tlZCB3aGVuIGl0IGlzIGtub3duIHdpdGhcbiAqIGNlcnRhaW50eSB0aGF0IHdlIGFyZSAqKm5vdCoqIGluIGEgRE9NIHRyYW5zYWN0aW9uLlxuICpcbiAqIFlvdSBtYXkgd2FudCB0byBjYWxsIHRoaXMgd2hlbiB5b3Uga25vdyB0aGF0IHNvbWUgZGVlcGVyIGFzcGVjdCBvZiB0aGVcbiAqIGNvbXBvbmVudCdzIHN0YXRlIGhhcyBjaGFuZ2VkIGJ1dCBgc2V0U3RhdGVgIHdhcyBub3QgY2FsbGVkLlxuICpcbiAqIFRoaXMgd2lsbCBub3QgaW52b2tlIGBzaG91bGRDb21wb25lbnRVcGRhdGVgLCBidXQgaXQgd2lsbCBpbnZva2VcbiAqIGBjb21wb25lbnRXaWxsVXBkYXRlYCBhbmQgYGNvbXBvbmVudERpZFVwZGF0ZWAuXG4gKlxuICogQHBhcmFtIHs/ZnVuY3Rpb259IGNhbGxiYWNrIENhbGxlZCBhZnRlciB1cGRhdGUgaXMgY29tcGxldGUuXG4gKiBAZmluYWxcbiAqIEBwcm90ZWN0ZWRcbiAqL1xuXG5cbkNvbXBvbmVudC5wcm90b3R5cGUuZm9yY2VVcGRhdGUgPSBmdW5jdGlvbiAoY2FsbGJhY2spIHtcbiAgdGhpcy51cGRhdGVyLmVucXVldWVGb3JjZVVwZGF0ZSh0aGlzLCBjYWxsYmFjaywgJ2ZvcmNlVXBkYXRlJyk7XG59O1xuLyoqXG4gKiBEZXByZWNhdGVkIEFQSXMuIFRoZXNlIEFQSXMgdXNlZCB0byBleGlzdCBvbiBjbGFzc2ljIFJlYWN0IGNsYXNzZXMgYnV0IHNpbmNlXG4gKiB3ZSB3b3VsZCBsaWtlIHRvIGRlcHJlY2F0ZSB0aGVtLCB3ZSdyZSBub3QgZ29pbmcgdG8gbW92ZSB0aGVtIG92ZXIgdG8gdGhpc1xuICogbW9kZXJuIGJhc2UgY2xhc3MuIEluc3RlYWQsIHdlIGRlZmluZSBhIGdldHRlciB0aGF0IHdhcm5zIGlmIGl0J3MgYWNjZXNzZWQuXG4gKi9cblxuXG57XG4gIHZhciBkZXByZWNhdGVkQVBJcyA9IHtcbiAgICBpc01vdW50ZWQ6IFsnaXNNb3VudGVkJywgJ0luc3RlYWQsIG1ha2Ugc3VyZSB0byBjbGVhbiB1cCBzdWJzY3JpcHRpb25zIGFuZCBwZW5kaW5nIHJlcXVlc3RzIGluICcgKyAnY29tcG9uZW50V2lsbFVubW91bnQgdG8gcHJldmVudCBtZW1vcnkgbGVha3MuJ10sXG4gICAgcmVwbGFjZVN0YXRlOiBbJ3JlcGxhY2VTdGF0ZScsICdSZWZhY3RvciB5b3VyIGNvZGUgdG8gdXNlIHNldFN0YXRlIGluc3RlYWQgKHNlZSAnICsgJ2h0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMzIzNikuJ11cbiAgfTtcblxuICB2YXIgZGVmaW5lRGVwcmVjYXRpb25XYXJuaW5nID0gZnVuY3Rpb24gKG1ldGhvZE5hbWUsIGluZm8pIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoQ29tcG9uZW50LnByb3RvdHlwZSwgbWV0aG9kTmFtZSwge1xuICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHdhcm4oJyVzKC4uLikgaXMgZGVwcmVjYXRlZCBpbiBwbGFpbiBKYXZhU2NyaXB0IFJlYWN0IGNsYXNzZXMuICVzJywgaW5mb1swXSwgaW5mb1sxXSk7XG5cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBmb3IgKHZhciBmbk5hbWUgaW4gZGVwcmVjYXRlZEFQSXMpIHtcbiAgICBpZiAoZGVwcmVjYXRlZEFQSXMuaGFzT3duUHJvcGVydHkoZm5OYW1lKSkge1xuICAgICAgZGVmaW5lRGVwcmVjYXRpb25XYXJuaW5nKGZuTmFtZSwgZGVwcmVjYXRlZEFQSXNbZm5OYW1lXSk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIENvbXBvbmVudER1bW15KCkge31cblxuQ29tcG9uZW50RHVtbXkucHJvdG90eXBlID0gQ29tcG9uZW50LnByb3RvdHlwZTtcbi8qKlxuICogQ29udmVuaWVuY2UgY29tcG9uZW50IHdpdGggZGVmYXVsdCBzaGFsbG93IGVxdWFsaXR5IGNoZWNrIGZvciBzQ1UuXG4gKi9cblxuZnVuY3Rpb24gUHVyZUNvbXBvbmVudChwcm9wcywgY29udGV4dCwgdXBkYXRlcikge1xuICB0aGlzLnByb3BzID0gcHJvcHM7XG4gIHRoaXMuY29udGV4dCA9IGNvbnRleHQ7IC8vIElmIGEgY29tcG9uZW50IGhhcyBzdHJpbmcgcmVmcywgd2Ugd2lsbCBhc3NpZ24gYSBkaWZmZXJlbnQgb2JqZWN0IGxhdGVyLlxuXG4gIHRoaXMucmVmcyA9IGVtcHR5T2JqZWN0O1xuICB0aGlzLnVwZGF0ZXIgPSB1cGRhdGVyIHx8IFJlYWN0Tm9vcFVwZGF0ZVF1ZXVlO1xufVxuXG52YXIgcHVyZUNvbXBvbmVudFByb3RvdHlwZSA9IFB1cmVDb21wb25lbnQucHJvdG90eXBlID0gbmV3IENvbXBvbmVudER1bW15KCk7XG5wdXJlQ29tcG9uZW50UHJvdG90eXBlLmNvbnN0cnVjdG9yID0gUHVyZUNvbXBvbmVudDsgLy8gQXZvaWQgYW4gZXh0cmEgcHJvdG90eXBlIGp1bXAgZm9yIHRoZXNlIG1ldGhvZHMuXG5cbl9hc3NpZ24ocHVyZUNvbXBvbmVudFByb3RvdHlwZSwgQ29tcG9uZW50LnByb3RvdHlwZSk7XG5cbnB1cmVDb21wb25lbnRQcm90b3R5cGUuaXNQdXJlUmVhY3RDb21wb25lbnQgPSB0cnVlO1xuXG4vLyBhbiBpbW11dGFibGUgb2JqZWN0IHdpdGggYSBzaW5nbGUgbXV0YWJsZSB2YWx1ZVxuZnVuY3Rpb24gY3JlYXRlUmVmKCkge1xuICB2YXIgcmVmT2JqZWN0ID0ge1xuICAgIGN1cnJlbnQ6IG51bGxcbiAgfTtcblxuICB7XG4gICAgT2JqZWN0LnNlYWwocmVmT2JqZWN0KTtcbiAgfVxuXG4gIHJldHVybiByZWZPYmplY3Q7XG59XG5cbmZ1bmN0aW9uIGdldFdyYXBwZWROYW1lKG91dGVyVHlwZSwgaW5uZXJUeXBlLCB3cmFwcGVyTmFtZSkge1xuICB2YXIgZnVuY3Rpb25OYW1lID0gaW5uZXJUeXBlLmRpc3BsYXlOYW1lIHx8IGlubmVyVHlwZS5uYW1lIHx8ICcnO1xuICByZXR1cm4gb3V0ZXJUeXBlLmRpc3BsYXlOYW1lIHx8IChmdW5jdGlvbk5hbWUgIT09ICcnID8gd3JhcHBlck5hbWUgKyBcIihcIiArIGZ1bmN0aW9uTmFtZSArIFwiKVwiIDogd3JhcHBlck5hbWUpO1xufVxuXG5mdW5jdGlvbiBnZXRDb250ZXh0TmFtZSh0eXBlKSB7XG4gIHJldHVybiB0eXBlLmRpc3BsYXlOYW1lIHx8ICdDb250ZXh0Jztcbn1cblxuZnVuY3Rpb24gZ2V0Q29tcG9uZW50TmFtZSh0eXBlKSB7XG4gIGlmICh0eXBlID09IG51bGwpIHtcbiAgICAvLyBIb3N0IHJvb3QsIHRleHQgbm9kZSBvciBqdXN0IGludmFsaWQgdHlwZS5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHtcbiAgICBpZiAodHlwZW9mIHR5cGUudGFnID09PSAnbnVtYmVyJykge1xuICAgICAgZXJyb3IoJ1JlY2VpdmVkIGFuIHVuZXhwZWN0ZWQgb2JqZWN0IGluIGdldENvbXBvbmVudE5hbWUoKS4gJyArICdUaGlzIGlzIGxpa2VseSBhIGJ1ZyBpbiBSZWFjdC4gUGxlYXNlIGZpbGUgYW4gaXNzdWUuJyk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIHR5cGUuZGlzcGxheU5hbWUgfHwgdHlwZS5uYW1lIHx8IG51bGw7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIGV4cG9ydHMuRnJhZ21lbnQ6XG4gICAgICByZXR1cm4gJ0ZyYWdtZW50JztcblxuICAgIGNhc2UgUkVBQ1RfUE9SVEFMX1RZUEU6XG4gICAgICByZXR1cm4gJ1BvcnRhbCc7XG5cbiAgICBjYXNlIGV4cG9ydHMuUHJvZmlsZXI6XG4gICAgICByZXR1cm4gJ1Byb2ZpbGVyJztcblxuICAgIGNhc2UgZXhwb3J0cy5TdHJpY3RNb2RlOlxuICAgICAgcmV0dXJuICdTdHJpY3RNb2RlJztcblxuICAgIGNhc2UgZXhwb3J0cy5TdXNwZW5zZTpcbiAgICAgIHJldHVybiAnU3VzcGVuc2UnO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEU6XG4gICAgICByZXR1cm4gJ1N1c3BlbnNlTGlzdCc7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnKSB7XG4gICAgc3dpdGNoICh0eXBlLiQkdHlwZW9mKSB7XG4gICAgICBjYXNlIFJFQUNUX0NPTlRFWFRfVFlQRTpcbiAgICAgICAgdmFyIGNvbnRleHQgPSB0eXBlO1xuICAgICAgICByZXR1cm4gZ2V0Q29udGV4dE5hbWUoY29udGV4dCkgKyAnLkNvbnN1bWVyJztcblxuICAgICAgY2FzZSBSRUFDVF9QUk9WSURFUl9UWVBFOlxuICAgICAgICB2YXIgcHJvdmlkZXIgPSB0eXBlO1xuICAgICAgICByZXR1cm4gZ2V0Q29udGV4dE5hbWUocHJvdmlkZXIuX2NvbnRleHQpICsgJy5Qcm92aWRlcic7XG5cbiAgICAgIGNhc2UgUkVBQ1RfRk9SV0FSRF9SRUZfVFlQRTpcbiAgICAgICAgcmV0dXJuIGdldFdyYXBwZWROYW1lKHR5cGUsIHR5cGUucmVuZGVyLCAnRm9yd2FyZFJlZicpO1xuXG4gICAgICBjYXNlIFJFQUNUX01FTU9fVFlQRTpcbiAgICAgICAgcmV0dXJuIGdldENvbXBvbmVudE5hbWUodHlwZS50eXBlKTtcblxuICAgICAgY2FzZSBSRUFDVF9CTE9DS19UWVBFOlxuICAgICAgICByZXR1cm4gZ2V0Q29tcG9uZW50TmFtZSh0eXBlLl9yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX0xBWllfVFlQRTpcbiAgICAgICAge1xuICAgICAgICAgIHZhciBsYXp5Q29tcG9uZW50ID0gdHlwZTtcbiAgICAgICAgICB2YXIgcGF5bG9hZCA9IGxhenlDb21wb25lbnQuX3BheWxvYWQ7XG4gICAgICAgICAgdmFyIGluaXQgPSBsYXp5Q29tcG9uZW50Ll9pbml0O1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBnZXRDb21wb25lbnROYW1lKGluaXQocGF5bG9hZCkpO1xuICAgICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG52YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xudmFyIFJFU0VSVkVEX1BST1BTID0ge1xuICBrZXk6IHRydWUsXG4gIHJlZjogdHJ1ZSxcbiAgX19zZWxmOiB0cnVlLFxuICBfX3NvdXJjZTogdHJ1ZVxufTtcbnZhciBzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93biwgc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24sIGRpZFdhcm5BYm91dFN0cmluZ1JlZnM7XG5cbntcbiAgZGlkV2FybkFib3V0U3RyaW5nUmVmcyA9IHt9O1xufVxuXG5mdW5jdGlvbiBoYXNWYWxpZFJlZihjb25maWcpIHtcbiAge1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgJ3JlZicpKSB7XG4gICAgICB2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihjb25maWcsICdyZWYnKS5nZXQ7XG5cbiAgICAgIGlmIChnZXR0ZXIgJiYgZ2V0dGVyLmlzUmVhY3RXYXJuaW5nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uZmlnLnJlZiAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBoYXNWYWxpZEtleShjb25maWcpIHtcbiAge1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgJ2tleScpKSB7XG4gICAgICB2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihjb25maWcsICdrZXknKS5nZXQ7XG5cbiAgICAgIGlmIChnZXR0ZXIgJiYgZ2V0dGVyLmlzUmVhY3RXYXJuaW5nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uZmlnLmtleSAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBkZWZpbmVLZXlQcm9wV2FybmluZ0dldHRlcihwcm9wcywgZGlzcGxheU5hbWUpIHtcbiAgdmFyIHdhcm5BYm91dEFjY2Vzc2luZ0tleSA9IGZ1bmN0aW9uICgpIHtcbiAgICB7XG4gICAgICBpZiAoIXNwZWNpYWxQcm9wS2V5V2FybmluZ1Nob3duKSB7XG4gICAgICAgIHNwZWNpYWxQcm9wS2V5V2FybmluZ1Nob3duID0gdHJ1ZTtcblxuICAgICAgICBlcnJvcignJXM6IGBrZXlgIGlzIG5vdCBhIHByb3AuIFRyeWluZyB0byBhY2Nlc3MgaXQgd2lsbCByZXN1bHQgJyArICdpbiBgdW5kZWZpbmVkYCBiZWluZyByZXR1cm5lZC4gSWYgeW91IG5lZWQgdG8gYWNjZXNzIHRoZSBzYW1lICcgKyAndmFsdWUgd2l0aGluIHRoZSBjaGlsZCBjb21wb25lbnQsIHlvdSBzaG91bGQgcGFzcyBpdCBhcyBhIGRpZmZlcmVudCAnICsgJ3Byb3AuIChodHRwczovL3JlYWN0anMub3JnL2xpbmsvc3BlY2lhbC1wcm9wcyknLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHdhcm5BYm91dEFjY2Vzc2luZ0tleS5pc1JlYWN0V2FybmluZyA9IHRydWU7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ2tleScsIHtcbiAgICBnZXQ6IHdhcm5BYm91dEFjY2Vzc2luZ0tleSxcbiAgICBjb25maWd1cmFibGU6IHRydWVcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGRlZmluZVJlZlByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSkge1xuICB2YXIgd2FybkFib3V0QWNjZXNzaW5nUmVmID0gZnVuY3Rpb24gKCkge1xuICAgIHtcbiAgICAgIGlmICghc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24pIHtcbiAgICAgICAgc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24gPSB0cnVlO1xuXG4gICAgICAgIGVycm9yKCclczogYHJlZmAgaXMgbm90IGEgcHJvcC4gVHJ5aW5nIHRvIGFjY2VzcyBpdCB3aWxsIHJlc3VsdCAnICsgJ2luIGB1bmRlZmluZWRgIGJlaW5nIHJldHVybmVkLiBJZiB5b3UgbmVlZCB0byBhY2Nlc3MgdGhlIHNhbWUgJyArICd2YWx1ZSB3aXRoaW4gdGhlIGNoaWxkIGNvbXBvbmVudCwgeW91IHNob3VsZCBwYXNzIGl0IGFzIGEgZGlmZmVyZW50ICcgKyAncHJvcC4gKGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9zcGVjaWFsLXByb3BzKScsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgd2FybkFib3V0QWNjZXNzaW5nUmVmLmlzUmVhY3RXYXJuaW5nID0gdHJ1ZTtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHByb3BzLCAncmVmJywge1xuICAgIGdldDogd2FybkFib3V0QWNjZXNzaW5nUmVmLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICB9KTtcbn1cblxuZnVuY3Rpb24gd2FybklmU3RyaW5nUmVmQ2Fubm90QmVBdXRvQ29udmVydGVkKGNvbmZpZykge1xuICB7XG4gICAgaWYgKHR5cGVvZiBjb25maWcucmVmID09PSAnc3RyaW5nJyAmJiBSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50ICYmIGNvbmZpZy5fX3NlbGYgJiYgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC5zdGF0ZU5vZGUgIT09IGNvbmZpZy5fX3NlbGYpIHtcbiAgICAgIHZhciBjb21wb25lbnROYW1lID0gZ2V0Q29tcG9uZW50TmFtZShSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnR5cGUpO1xuXG4gICAgICBpZiAoIWRpZFdhcm5BYm91dFN0cmluZ1JlZnNbY29tcG9uZW50TmFtZV0pIHtcbiAgICAgICAgZXJyb3IoJ0NvbXBvbmVudCBcIiVzXCIgY29udGFpbnMgdGhlIHN0cmluZyByZWYgXCIlc1wiLiAnICsgJ1N1cHBvcnQgZm9yIHN0cmluZyByZWZzIHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiAnICsgJ1RoaXMgY2FzZSBjYW5ub3QgYmUgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgdG8gYW4gYXJyb3cgZnVuY3Rpb24uICcgKyAnV2UgYXNrIHlvdSB0byBtYW51YWxseSBmaXggdGhpcyBjYXNlIGJ5IHVzaW5nIHVzZVJlZigpIG9yIGNyZWF0ZVJlZigpIGluc3RlYWQuICcgKyAnTGVhcm4gbW9yZSBhYm91dCB1c2luZyByZWZzIHNhZmVseSBoZXJlOiAnICsgJ2h0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay9zdHJpY3QtbW9kZS1zdHJpbmctcmVmJywgY29tcG9uZW50TmFtZSwgY29uZmlnLnJlZik7XG5cbiAgICAgICAgZGlkV2FybkFib3V0U3RyaW5nUmVmc1tjb21wb25lbnROYW1lXSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKipcbiAqIEZhY3RvcnkgbWV0aG9kIHRvIGNyZWF0ZSBhIG5ldyBSZWFjdCBlbGVtZW50LiBUaGlzIG5vIGxvbmdlciBhZGhlcmVzIHRvXG4gKiB0aGUgY2xhc3MgcGF0dGVybiwgc28gZG8gbm90IHVzZSBuZXcgdG8gY2FsbCBpdC4gQWxzbywgaW5zdGFuY2VvZiBjaGVja1xuICogd2lsbCBub3Qgd29yay4gSW5zdGVhZCB0ZXN0ICQkdHlwZW9mIGZpZWxkIGFnYWluc3QgU3ltYm9sLmZvcigncmVhY3QuZWxlbWVudCcpIHRvIGNoZWNrXG4gKiBpZiBzb21ldGhpbmcgaXMgYSBSZWFjdCBFbGVtZW50LlxuICpcbiAqIEBwYXJhbSB7Kn0gdHlwZVxuICogQHBhcmFtIHsqfSBwcm9wc1xuICogQHBhcmFtIHsqfSBrZXlcbiAqIEBwYXJhbSB7c3RyaW5nfG9iamVjdH0gcmVmXG4gKiBAcGFyYW0geyp9IG93bmVyXG4gKiBAcGFyYW0geyp9IHNlbGYgQSAqdGVtcG9yYXJ5KiBoZWxwZXIgdG8gZGV0ZWN0IHBsYWNlcyB3aGVyZSBgdGhpc2AgaXNcbiAqIGRpZmZlcmVudCBmcm9tIHRoZSBgb3duZXJgIHdoZW4gUmVhY3QuY3JlYXRlRWxlbWVudCBpcyBjYWxsZWQsIHNvIHRoYXQgd2VcbiAqIGNhbiB3YXJuLiBXZSB3YW50IHRvIGdldCByaWQgb2Ygb3duZXIgYW5kIHJlcGxhY2Ugc3RyaW5nIGByZWZgcyB3aXRoIGFycm93XG4gKiBmdW5jdGlvbnMsIGFuZCBhcyBsb25nIGFzIGB0aGlzYCBhbmQgb3duZXIgYXJlIHRoZSBzYW1lLCB0aGVyZSB3aWxsIGJlIG5vXG4gKiBjaGFuZ2UgaW4gYmVoYXZpb3IuXG4gKiBAcGFyYW0geyp9IHNvdXJjZSBBbiBhbm5vdGF0aW9uIG9iamVjdCAoYWRkZWQgYnkgYSB0cmFuc3BpbGVyIG9yIG90aGVyd2lzZSlcbiAqIGluZGljYXRpbmcgZmlsZW5hbWUsIGxpbmUgbnVtYmVyLCBhbmQvb3Igb3RoZXIgaW5mb3JtYXRpb24uXG4gKiBAaW50ZXJuYWxcbiAqL1xuXG5cbnZhciBSZWFjdEVsZW1lbnQgPSBmdW5jdGlvbiAodHlwZSwga2V5LCByZWYsIHNlbGYsIHNvdXJjZSwgb3duZXIsIHByb3BzKSB7XG4gIHZhciBlbGVtZW50ID0ge1xuICAgIC8vIFRoaXMgdGFnIGFsbG93cyB1cyB0byB1bmlxdWVseSBpZGVudGlmeSB0aGlzIGFzIGEgUmVhY3QgRWxlbWVudFxuICAgICQkdHlwZW9mOiBSRUFDVF9FTEVNRU5UX1RZUEUsXG4gICAgLy8gQnVpbHQtaW4gcHJvcGVydGllcyB0aGF0IGJlbG9uZyBvbiB0aGUgZWxlbWVudFxuICAgIHR5cGU6IHR5cGUsXG4gICAga2V5OiBrZXksXG4gICAgcmVmOiByZWYsXG4gICAgcHJvcHM6IHByb3BzLFxuICAgIC8vIFJlY29yZCB0aGUgY29tcG9uZW50IHJlc3BvbnNpYmxlIGZvciBjcmVhdGluZyB0aGlzIGVsZW1lbnQuXG4gICAgX293bmVyOiBvd25lclxuICB9O1xuXG4gIHtcbiAgICAvLyBUaGUgdmFsaWRhdGlvbiBmbGFnIGlzIGN1cnJlbnRseSBtdXRhdGl2ZS4gV2UgcHV0IGl0IG9uXG4gICAgLy8gYW4gZXh0ZXJuYWwgYmFja2luZyBzdG9yZSBzbyB0aGF0IHdlIGNhbiBmcmVlemUgdGhlIHdob2xlIG9iamVjdC5cbiAgICAvLyBUaGlzIGNhbiBiZSByZXBsYWNlZCB3aXRoIGEgV2Vha01hcCBvbmNlIHRoZXkgYXJlIGltcGxlbWVudGVkIGluXG4gICAgLy8gY29tbW9ubHkgdXNlZCBkZXZlbG9wbWVudCBlbnZpcm9ubWVudHMuXG4gICAgZWxlbWVudC5fc3RvcmUgPSB7fTsgLy8gVG8gbWFrZSBjb21wYXJpbmcgUmVhY3RFbGVtZW50cyBlYXNpZXIgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHdlIG1ha2VcbiAgICAvLyB0aGUgdmFsaWRhdGlvbiBmbGFnIG5vbi1lbnVtZXJhYmxlICh3aGVyZSBwb3NzaWJsZSwgd2hpY2ggc2hvdWxkXG4gICAgLy8gaW5jbHVkZSBldmVyeSBlbnZpcm9ubWVudCB3ZSBydW4gdGVzdHMgaW4pLCBzbyB0aGUgdGVzdCBmcmFtZXdvcmtcbiAgICAvLyBpZ25vcmVzIGl0LlxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnQuX3N0b3JlLCAndmFsaWRhdGVkJywge1xuICAgICAgY29uZmlndXJhYmxlOiBmYWxzZSxcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgd3JpdGFibGU6IHRydWUsXG4gICAgICB2YWx1ZTogZmFsc2VcbiAgICB9KTsgLy8gc2VsZiBhbmQgc291cmNlIGFyZSBERVYgb25seSBwcm9wZXJ0aWVzLlxuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGVsZW1lbnQsICdfc2VsZicsIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIHdyaXRhYmxlOiBmYWxzZSxcbiAgICAgIHZhbHVlOiBzZWxmXG4gICAgfSk7IC8vIFR3byBlbGVtZW50cyBjcmVhdGVkIGluIHR3byBkaWZmZXJlbnQgcGxhY2VzIHNob3VsZCBiZSBjb25zaWRlcmVkXG4gICAgLy8gZXF1YWwgZm9yIHRlc3RpbmcgcHVycG9zZXMgYW5kIHRoZXJlZm9yZSB3ZSBoaWRlIGl0IGZyb20gZW51bWVyYXRpb24uXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudCwgJ19zb3VyY2UnLCB7XG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICB2YWx1ZTogc291cmNlXG4gICAgfSk7XG5cbiAgICBpZiAoT2JqZWN0LmZyZWV6ZSkge1xuICAgICAgT2JqZWN0LmZyZWV6ZShlbGVtZW50LnByb3BzKTtcbiAgICAgIE9iamVjdC5mcmVlemUoZWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGVsZW1lbnQ7XG59O1xuLyoqXG4gKiBDcmVhdGUgYW5kIHJldHVybiBhIG5ldyBSZWFjdEVsZW1lbnQgb2YgdGhlIGdpdmVuIHR5cGUuXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI2NyZWF0ZWVsZW1lbnRcbiAqL1xuXG5mdW5jdGlvbiBjcmVhdGVFbGVtZW50KHR5cGUsIGNvbmZpZywgY2hpbGRyZW4pIHtcbiAgdmFyIHByb3BOYW1lOyAvLyBSZXNlcnZlZCBuYW1lcyBhcmUgZXh0cmFjdGVkXG5cbiAgdmFyIHByb3BzID0ge307XG4gIHZhciBrZXkgPSBudWxsO1xuICB2YXIgcmVmID0gbnVsbDtcbiAgdmFyIHNlbGYgPSBudWxsO1xuICB2YXIgc291cmNlID0gbnVsbDtcblxuICBpZiAoY29uZmlnICE9IG51bGwpIHtcbiAgICBpZiAoaGFzVmFsaWRSZWYoY29uZmlnKSkge1xuICAgICAgcmVmID0gY29uZmlnLnJlZjtcblxuICAgICAge1xuICAgICAgICB3YXJuSWZTdHJpbmdSZWZDYW5ub3RCZUF1dG9Db252ZXJ0ZWQoY29uZmlnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaGFzVmFsaWRLZXkoY29uZmlnKSkge1xuICAgICAga2V5ID0gJycgKyBjb25maWcua2V5O1xuICAgIH1cblxuICAgIHNlbGYgPSBjb25maWcuX19zZWxmID09PSB1bmRlZmluZWQgPyBudWxsIDogY29uZmlnLl9fc2VsZjtcbiAgICBzb3VyY2UgPSBjb25maWcuX19zb3VyY2UgPT09IHVuZGVmaW5lZCA/IG51bGwgOiBjb25maWcuX19zb3VyY2U7IC8vIFJlbWFpbmluZyBwcm9wZXJ0aWVzIGFyZSBhZGRlZCB0byBhIG5ldyBwcm9wcyBvYmplY3RcblxuICAgIGZvciAocHJvcE5hbWUgaW4gY29uZmlnKSB7XG4gICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChjb25maWcsIHByb3BOYW1lKSAmJiAhUkVTRVJWRURfUFJPUFMuaGFzT3duUHJvcGVydHkocHJvcE5hbWUpKSB7XG4gICAgICAgIHByb3BzW3Byb3BOYW1lXSA9IGNvbmZpZ1twcm9wTmFtZV07XG4gICAgICB9XG4gICAgfVxuICB9IC8vIENoaWxkcmVuIGNhbiBiZSBtb3JlIHRoYW4gb25lIGFyZ3VtZW50LCBhbmQgdGhvc2UgYXJlIHRyYW5zZmVycmVkIG9udG9cbiAgLy8gdGhlIG5ld2x5IGFsbG9jYXRlZCBwcm9wcyBvYmplY3QuXG5cblxuICB2YXIgY2hpbGRyZW5MZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoIC0gMjtcblxuICBpZiAoY2hpbGRyZW5MZW5ndGggPT09IDEpIHtcbiAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICB9IGVsc2UgaWYgKGNoaWxkcmVuTGVuZ3RoID4gMSkge1xuICAgIHZhciBjaGlsZEFycmF5ID0gQXJyYXkoY2hpbGRyZW5MZW5ndGgpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbkxlbmd0aDsgaSsrKSB7XG4gICAgICBjaGlsZEFycmF5W2ldID0gYXJndW1lbnRzW2kgKyAyXTtcbiAgICB9XG5cbiAgICB7XG4gICAgICBpZiAoT2JqZWN0LmZyZWV6ZSkge1xuICAgICAgICBPYmplY3QuZnJlZXplKGNoaWxkQXJyYXkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3BzLmNoaWxkcmVuID0gY2hpbGRBcnJheTtcbiAgfSAvLyBSZXNvbHZlIGRlZmF1bHQgcHJvcHNcblxuXG4gIGlmICh0eXBlICYmIHR5cGUuZGVmYXVsdFByb3BzKSB7XG4gICAgdmFyIGRlZmF1bHRQcm9wcyA9IHR5cGUuZGVmYXVsdFByb3BzO1xuXG4gICAgZm9yIChwcm9wTmFtZSBpbiBkZWZhdWx0UHJvcHMpIHtcbiAgICAgIGlmIChwcm9wc1twcm9wTmFtZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBkZWZhdWx0UHJvcHNbcHJvcE5hbWVdO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHtcbiAgICBpZiAoa2V5IHx8IHJlZikge1xuICAgICAgdmFyIGRpc3BsYXlOYW1lID0gdHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicgPyB0eXBlLmRpc3BsYXlOYW1lIHx8IHR5cGUubmFtZSB8fCAnVW5rbm93bicgOiB0eXBlO1xuXG4gICAgICBpZiAoa2V5KSB7XG4gICAgICAgIGRlZmluZUtleVByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgZGVmaW5lUmVmUHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gUmVhY3RFbGVtZW50KHR5cGUsIGtleSwgcmVmLCBzZWxmLCBzb3VyY2UsIFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQsIHByb3BzKTtcbn1cbmZ1bmN0aW9uIGNsb25lQW5kUmVwbGFjZUtleShvbGRFbGVtZW50LCBuZXdLZXkpIHtcbiAgdmFyIG5ld0VsZW1lbnQgPSBSZWFjdEVsZW1lbnQob2xkRWxlbWVudC50eXBlLCBuZXdLZXksIG9sZEVsZW1lbnQucmVmLCBvbGRFbGVtZW50Ll9zZWxmLCBvbGRFbGVtZW50Ll9zb3VyY2UsIG9sZEVsZW1lbnQuX293bmVyLCBvbGRFbGVtZW50LnByb3BzKTtcbiAgcmV0dXJuIG5ld0VsZW1lbnQ7XG59XG4vKipcbiAqIENsb25lIGFuZCByZXR1cm4gYSBuZXcgUmVhY3RFbGVtZW50IHVzaW5nIGVsZW1lbnQgYXMgdGhlIHN0YXJ0aW5nIHBvaW50LlxuICogU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9yZWFjdC1hcGkuaHRtbCNjbG9uZWVsZW1lbnRcbiAqL1xuXG5mdW5jdGlvbiBjbG9uZUVsZW1lbnQoZWxlbWVudCwgY29uZmlnLCBjaGlsZHJlbikge1xuICBpZiAoISEoZWxlbWVudCA9PT0gbnVsbCB8fCBlbGVtZW50ID09PSB1bmRlZmluZWQpKSB7XG4gICAge1xuICAgICAgdGhyb3cgRXJyb3IoIFwiUmVhY3QuY2xvbmVFbGVtZW50KC4uLik6IFRoZSBhcmd1bWVudCBtdXN0IGJlIGEgUmVhY3QgZWxlbWVudCwgYnV0IHlvdSBwYXNzZWQgXCIgKyBlbGVtZW50ICsgXCIuXCIgKTtcbiAgICB9XG4gIH1cblxuICB2YXIgcHJvcE5hbWU7IC8vIE9yaWdpbmFsIHByb3BzIGFyZSBjb3BpZWRcblxuICB2YXIgcHJvcHMgPSBfYXNzaWduKHt9LCBlbGVtZW50LnByb3BzKTsgLy8gUmVzZXJ2ZWQgbmFtZXMgYXJlIGV4dHJhY3RlZFxuXG5cbiAgdmFyIGtleSA9IGVsZW1lbnQua2V5O1xuICB2YXIgcmVmID0gZWxlbWVudC5yZWY7IC8vIFNlbGYgaXMgcHJlc2VydmVkIHNpbmNlIHRoZSBvd25lciBpcyBwcmVzZXJ2ZWQuXG5cbiAgdmFyIHNlbGYgPSBlbGVtZW50Ll9zZWxmOyAvLyBTb3VyY2UgaXMgcHJlc2VydmVkIHNpbmNlIGNsb25lRWxlbWVudCBpcyB1bmxpa2VseSB0byBiZSB0YXJnZXRlZCBieSBhXG4gIC8vIHRyYW5zcGlsZXIsIGFuZCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIHByb2JhYmx5IGEgYmV0dGVyIGluZGljYXRvciBvZiB0aGVcbiAgLy8gdHJ1ZSBvd25lci5cblxuICB2YXIgc291cmNlID0gZWxlbWVudC5fc291cmNlOyAvLyBPd25lciB3aWxsIGJlIHByZXNlcnZlZCwgdW5sZXNzIHJlZiBpcyBvdmVycmlkZGVuXG5cbiAgdmFyIG93bmVyID0gZWxlbWVudC5fb3duZXI7XG5cbiAgaWYgKGNvbmZpZyAhPSBudWxsKSB7XG4gICAgaWYgKGhhc1ZhbGlkUmVmKGNvbmZpZykpIHtcbiAgICAgIC8vIFNpbGVudGx5IHN0ZWFsIHRoZSByZWYgZnJvbSB0aGUgcGFyZW50LlxuICAgICAgcmVmID0gY29uZmlnLnJlZjtcbiAgICAgIG93bmVyID0gUmVhY3RDdXJyZW50T3duZXIuY3VycmVudDtcbiAgICB9XG5cbiAgICBpZiAoaGFzVmFsaWRLZXkoY29uZmlnKSkge1xuICAgICAga2V5ID0gJycgKyBjb25maWcua2V5O1xuICAgIH0gLy8gUmVtYWluaW5nIHByb3BlcnRpZXMgb3ZlcnJpZGUgZXhpc3RpbmcgcHJvcHNcblxuXG4gICAgdmFyIGRlZmF1bHRQcm9wcztcblxuICAgIGlmIChlbGVtZW50LnR5cGUgJiYgZWxlbWVudC50eXBlLmRlZmF1bHRQcm9wcykge1xuICAgICAgZGVmYXVsdFByb3BzID0gZWxlbWVudC50eXBlLmRlZmF1bHRQcm9wcztcbiAgICB9XG5cbiAgICBmb3IgKHByb3BOYW1lIGluIGNvbmZpZykge1xuICAgICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCBwcm9wTmFtZSkgJiYgIVJFU0VSVkVEX1BST1BTLmhhc093blByb3BlcnR5KHByb3BOYW1lKSkge1xuICAgICAgICBpZiAoY29uZmlnW3Byb3BOYW1lXSA9PT0gdW5kZWZpbmVkICYmIGRlZmF1bHRQcm9wcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgLy8gUmVzb2x2ZSBkZWZhdWx0IHByb3BzXG4gICAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gZGVmYXVsdFByb3BzW3Byb3BOYW1lXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBjb25maWdbcHJvcE5hbWVdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IC8vIENoaWxkcmVuIGNhbiBiZSBtb3JlIHRoYW4gb25lIGFyZ3VtZW50LCBhbmQgdGhvc2UgYXJlIHRyYW5zZmVycmVkIG9udG9cbiAgLy8gdGhlIG5ld2x5IGFsbG9jYXRlZCBwcm9wcyBvYmplY3QuXG5cblxuICB2YXIgY2hpbGRyZW5MZW5ndGggPSBhcmd1bWVudHMubGVuZ3RoIC0gMjtcblxuICBpZiAoY2hpbGRyZW5MZW5ndGggPT09IDEpIHtcbiAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICB9IGVsc2UgaWYgKGNoaWxkcmVuTGVuZ3RoID4gMSkge1xuICAgIHZhciBjaGlsZEFycmF5ID0gQXJyYXkoY2hpbGRyZW5MZW5ndGgpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbkxlbmd0aDsgaSsrKSB7XG4gICAgICBjaGlsZEFycmF5W2ldID0gYXJndW1lbnRzW2kgKyAyXTtcbiAgICB9XG5cbiAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkQXJyYXk7XG4gIH1cblxuICByZXR1cm4gUmVhY3RFbGVtZW50KGVsZW1lbnQudHlwZSwga2V5LCByZWYsIHNlbGYsIHNvdXJjZSwgb3duZXIsIHByb3BzKTtcbn1cbi8qKlxuICogVmVyaWZpZXMgdGhlIG9iamVjdCBpcyBhIFJlYWN0RWxlbWVudC5cbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjaXN2YWxpZGVsZW1lbnRcbiAqIEBwYXJhbSB7P29iamVjdH0gb2JqZWN0XG4gKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIGlmIGBvYmplY3RgIGlzIGEgUmVhY3RFbGVtZW50LlxuICogQGZpbmFsXG4gKi9cblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnQob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwgJiYgb2JqZWN0LiQkdHlwZW9mID09PSBSRUFDVF9FTEVNRU5UX1RZUEU7XG59XG5cbnZhciBTRVBBUkFUT1IgPSAnLic7XG52YXIgU1VCU0VQQVJBVE9SID0gJzonO1xuLyoqXG4gKiBFc2NhcGUgYW5kIHdyYXAga2V5IHNvIGl0IGlzIHNhZmUgdG8gdXNlIGFzIGEgcmVhY3RpZFxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXkgdG8gYmUgZXNjYXBlZC5cbiAqIEByZXR1cm4ge3N0cmluZ30gdGhlIGVzY2FwZWQga2V5LlxuICovXG5cbmZ1bmN0aW9uIGVzY2FwZShrZXkpIHtcbiAgdmFyIGVzY2FwZVJlZ2V4ID0gL1s9Ol0vZztcbiAgdmFyIGVzY2FwZXJMb29rdXAgPSB7XG4gICAgJz0nOiAnPTAnLFxuICAgICc6JzogJz0yJ1xuICB9O1xuICB2YXIgZXNjYXBlZFN0cmluZyA9IGtleS5yZXBsYWNlKGVzY2FwZVJlZ2V4LCBmdW5jdGlvbiAobWF0Y2gpIHtcbiAgICByZXR1cm4gZXNjYXBlckxvb2t1cFttYXRjaF07XG4gIH0pO1xuICByZXR1cm4gJyQnICsgZXNjYXBlZFN0cmluZztcbn1cbi8qKlxuICogVE9ETzogVGVzdCB0aGF0IGEgc2luZ2xlIGNoaWxkIGFuZCBhbiBhcnJheSB3aXRoIG9uZSBpdGVtIGhhdmUgdGhlIHNhbWUga2V5XG4gKiBwYXR0ZXJuLlxuICovXG5cblxudmFyIGRpZFdhcm5BYm91dE1hcHMgPSBmYWxzZTtcbnZhciB1c2VyUHJvdmlkZWRLZXlFc2NhcGVSZWdleCA9IC9cXC8rL2c7XG5cbmZ1bmN0aW9uIGVzY2FwZVVzZXJQcm92aWRlZEtleSh0ZXh0KSB7XG4gIHJldHVybiB0ZXh0LnJlcGxhY2UodXNlclByb3ZpZGVkS2V5RXNjYXBlUmVnZXgsICckJi8nKTtcbn1cbi8qKlxuICogR2VuZXJhdGUgYSBrZXkgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyBhIGVsZW1lbnQgd2l0aGluIGEgc2V0LlxuICpcbiAqIEBwYXJhbSB7Kn0gZWxlbWVudCBBIGVsZW1lbnQgdGhhdCBjb3VsZCBjb250YWluIGEgbWFudWFsIGtleS5cbiAqIEBwYXJhbSB7bnVtYmVyfSBpbmRleCBJbmRleCB0aGF0IGlzIHVzZWQgaWYgYSBtYW51YWwga2V5IGlzIG5vdCBwcm92aWRlZC5cbiAqIEByZXR1cm4ge3N0cmluZ31cbiAqL1xuXG5cbmZ1bmN0aW9uIGdldEVsZW1lbnRLZXkoZWxlbWVudCwgaW5kZXgpIHtcbiAgLy8gRG8gc29tZSB0eXBlY2hlY2tpbmcgaGVyZSBzaW5jZSB3ZSBjYWxsIHRoaXMgYmxpbmRseS4gV2Ugd2FudCB0byBlbnN1cmVcbiAgLy8gdGhhdCB3ZSBkb24ndCBibG9jayBwb3RlbnRpYWwgZnV0dXJlIEVTIEFQSXMuXG4gIGlmICh0eXBlb2YgZWxlbWVudCA9PT0gJ29iamVjdCcgJiYgZWxlbWVudCAhPT0gbnVsbCAmJiBlbGVtZW50LmtleSAhPSBudWxsKSB7XG4gICAgLy8gRXhwbGljaXQga2V5XG4gICAgcmV0dXJuIGVzY2FwZSgnJyArIGVsZW1lbnQua2V5KTtcbiAgfSAvLyBJbXBsaWNpdCBrZXkgZGV0ZXJtaW5lZCBieSB0aGUgaW5kZXggaW4gdGhlIHNldFxuXG5cbiAgcmV0dXJuIGluZGV4LnRvU3RyaW5nKDM2KTtcbn1cblxuZnVuY3Rpb24gbWFwSW50b0FycmF5KGNoaWxkcmVuLCBhcnJheSwgZXNjYXBlZFByZWZpeCwgbmFtZVNvRmFyLCBjYWxsYmFjaykge1xuICB2YXIgdHlwZSA9IHR5cGVvZiBjaGlsZHJlbjtcblxuICBpZiAodHlwZSA9PT0gJ3VuZGVmaW5lZCcgfHwgdHlwZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgLy8gQWxsIG9mIHRoZSBhYm92ZSBhcmUgcGVyY2VpdmVkIGFzIG51bGwuXG4gICAgY2hpbGRyZW4gPSBudWxsO1xuICB9XG5cbiAgdmFyIGludm9rZUNhbGxiYWNrID0gZmFsc2U7XG5cbiAgaWYgKGNoaWxkcmVuID09PSBudWxsKSB7XG4gICAgaW52b2tlQ2FsbGJhY2sgPSB0cnVlO1xuICB9IGVsc2Uge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgIGNhc2UgJ251bWJlcic6XG4gICAgICAgIGludm9rZUNhbGxiYWNrID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ29iamVjdCc6XG4gICAgICAgIHN3aXRjaCAoY2hpbGRyZW4uJCR0eXBlb2YpIHtcbiAgICAgICAgICBjYXNlIFJFQUNUX0VMRU1FTlRfVFlQRTpcbiAgICAgICAgICBjYXNlIFJFQUNUX1BPUlRBTF9UWVBFOlxuICAgICAgICAgICAgaW52b2tlQ2FsbGJhY2sgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBpZiAoaW52b2tlQ2FsbGJhY2spIHtcbiAgICB2YXIgX2NoaWxkID0gY2hpbGRyZW47XG4gICAgdmFyIG1hcHBlZENoaWxkID0gY2FsbGJhY2soX2NoaWxkKTsgLy8gSWYgaXQncyB0aGUgb25seSBjaGlsZCwgdHJlYXQgdGhlIG5hbWUgYXMgaWYgaXQgd2FzIHdyYXBwZWQgaW4gYW4gYXJyYXlcbiAgICAvLyBzbyB0aGF0IGl0J3MgY29uc2lzdGVudCBpZiB0aGUgbnVtYmVyIG9mIGNoaWxkcmVuIGdyb3dzOlxuXG4gICAgdmFyIGNoaWxkS2V5ID0gbmFtZVNvRmFyID09PSAnJyA/IFNFUEFSQVRPUiArIGdldEVsZW1lbnRLZXkoX2NoaWxkLCAwKSA6IG5hbWVTb0ZhcjtcblxuICAgIGlmIChBcnJheS5pc0FycmF5KG1hcHBlZENoaWxkKSkge1xuICAgICAgdmFyIGVzY2FwZWRDaGlsZEtleSA9ICcnO1xuXG4gICAgICBpZiAoY2hpbGRLZXkgIT0gbnVsbCkge1xuICAgICAgICBlc2NhcGVkQ2hpbGRLZXkgPSBlc2NhcGVVc2VyUHJvdmlkZWRLZXkoY2hpbGRLZXkpICsgJy8nO1xuICAgICAgfVxuXG4gICAgICBtYXBJbnRvQXJyYXkobWFwcGVkQ2hpbGQsIGFycmF5LCBlc2NhcGVkQ2hpbGRLZXksICcnLCBmdW5jdGlvbiAoYykge1xuICAgICAgICByZXR1cm4gYztcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAobWFwcGVkQ2hpbGQgIT0gbnVsbCkge1xuICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KG1hcHBlZENoaWxkKSkge1xuICAgICAgICBtYXBwZWRDaGlsZCA9IGNsb25lQW5kUmVwbGFjZUtleShtYXBwZWRDaGlsZCwgLy8gS2VlcCBib3RoIHRoZSAobWFwcGVkKSBhbmQgb2xkIGtleXMgaWYgdGhleSBkaWZmZXIsIGp1c3QgYXNcbiAgICAgICAgLy8gdHJhdmVyc2VBbGxDaGlsZHJlbiB1c2VkIHRvIGRvIGZvciBvYmplY3RzIGFzIGNoaWxkcmVuXG4gICAgICAgIGVzY2FwZWRQcmVmaXggKyAoIC8vICRGbG93Rml4TWUgRmxvdyBpbmNvcnJlY3RseSB0aGlua3MgUmVhY3QuUG9ydGFsIGRvZXNuJ3QgaGF2ZSBhIGtleVxuICAgICAgICBtYXBwZWRDaGlsZC5rZXkgJiYgKCFfY2hpbGQgfHwgX2NoaWxkLmtleSAhPT0gbWFwcGVkQ2hpbGQua2V5KSA/IC8vICRGbG93Rml4TWUgRmxvdyBpbmNvcnJlY3RseSB0aGlua3MgZXhpc3RpbmcgZWxlbWVudCdzIGtleSBjYW4gYmUgYSBudW1iZXJcbiAgICAgICAgZXNjYXBlVXNlclByb3ZpZGVkS2V5KCcnICsgbWFwcGVkQ2hpbGQua2V5KSArICcvJyA6ICcnKSArIGNoaWxkS2V5KTtcbiAgICAgIH1cblxuICAgICAgYXJyYXkucHVzaChtYXBwZWRDaGlsZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIDE7XG4gIH1cblxuICB2YXIgY2hpbGQ7XG4gIHZhciBuZXh0TmFtZTtcbiAgdmFyIHN1YnRyZWVDb3VudCA9IDA7IC8vIENvdW50IG9mIGNoaWxkcmVuIGZvdW5kIGluIHRoZSBjdXJyZW50IHN1YnRyZWUuXG5cbiAgdmFyIG5leHROYW1lUHJlZml4ID0gbmFtZVNvRmFyID09PSAnJyA/IFNFUEFSQVRPUiA6IG5hbWVTb0ZhciArIFNVQlNFUEFSQVRPUjtcblxuICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjaGlsZCA9IGNoaWxkcmVuW2ldO1xuICAgICAgbmV4dE5hbWUgPSBuZXh0TmFtZVByZWZpeCArIGdldEVsZW1lbnRLZXkoY2hpbGQsIGkpO1xuICAgICAgc3VidHJlZUNvdW50ICs9IG1hcEludG9BcnJheShjaGlsZCwgYXJyYXksIGVzY2FwZWRQcmVmaXgsIG5leHROYW1lLCBjYWxsYmFjayk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHZhciBpdGVyYXRvckZuID0gZ2V0SXRlcmF0b3JGbihjaGlsZHJlbik7XG5cbiAgICBpZiAodHlwZW9mIGl0ZXJhdG9yRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHZhciBpdGVyYWJsZUNoaWxkcmVuID0gY2hpbGRyZW47XG5cbiAgICAgIHtcbiAgICAgICAgLy8gV2FybiBhYm91dCB1c2luZyBNYXBzIGFzIGNoaWxkcmVuXG4gICAgICAgIGlmIChpdGVyYXRvckZuID09PSBpdGVyYWJsZUNoaWxkcmVuLmVudHJpZXMpIHtcbiAgICAgICAgICBpZiAoIWRpZFdhcm5BYm91dE1hcHMpIHtcbiAgICAgICAgICAgIHdhcm4oJ1VzaW5nIE1hcHMgYXMgY2hpbGRyZW4gaXMgbm90IHN1cHBvcnRlZC4gJyArICdVc2UgYW4gYXJyYXkgb2Yga2V5ZWQgUmVhY3RFbGVtZW50cyBpbnN0ZWFkLicpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGRpZFdhcm5BYm91dE1hcHMgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHZhciBpdGVyYXRvciA9IGl0ZXJhdG9yRm4uY2FsbChpdGVyYWJsZUNoaWxkcmVuKTtcbiAgICAgIHZhciBzdGVwO1xuICAgICAgdmFyIGlpID0gMDtcblxuICAgICAgd2hpbGUgKCEoc3RlcCA9IGl0ZXJhdG9yLm5leHQoKSkuZG9uZSkge1xuICAgICAgICBjaGlsZCA9IHN0ZXAudmFsdWU7XG4gICAgICAgIG5leHROYW1lID0gbmV4dE5hbWVQcmVmaXggKyBnZXRFbGVtZW50S2V5KGNoaWxkLCBpaSsrKTtcbiAgICAgICAgc3VidHJlZUNvdW50ICs9IG1hcEludG9BcnJheShjaGlsZCwgYXJyYXksIGVzY2FwZWRQcmVmaXgsIG5leHROYW1lLCBjYWxsYmFjayk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAnb2JqZWN0Jykge1xuICAgICAgdmFyIGNoaWxkcmVuU3RyaW5nID0gJycgKyBjaGlsZHJlbjtcblxuICAgICAge1xuICAgICAgICB7XG4gICAgICAgICAgdGhyb3cgRXJyb3IoIFwiT2JqZWN0cyBhcmUgbm90IHZhbGlkIGFzIGEgUmVhY3QgY2hpbGQgKGZvdW5kOiBcIiArIChjaGlsZHJlblN0cmluZyA9PT0gJ1tvYmplY3QgT2JqZWN0XScgPyAnb2JqZWN0IHdpdGgga2V5cyB7JyArIE9iamVjdC5rZXlzKGNoaWxkcmVuKS5qb2luKCcsICcpICsgJ30nIDogY2hpbGRyZW5TdHJpbmcpICsgXCIpLiBJZiB5b3UgbWVhbnQgdG8gcmVuZGVyIGEgY29sbGVjdGlvbiBvZiBjaGlsZHJlbiwgdXNlIGFuIGFycmF5IGluc3RlYWQuXCIgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdWJ0cmVlQ291bnQ7XG59XG5cbi8qKlxuICogTWFwcyBjaGlsZHJlbiB0aGF0IGFyZSB0eXBpY2FsbHkgc3BlY2lmaWVkIGFzIGBwcm9wcy5jaGlsZHJlbmAuXG4gKlxuICogU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvZG9jcy9yZWFjdC1hcGkuaHRtbCNyZWFjdGNoaWxkcmVubWFwXG4gKlxuICogVGhlIHByb3ZpZGVkIG1hcEZ1bmN0aW9uKGNoaWxkLCBpbmRleCkgd2lsbCBiZSBjYWxsZWQgZm9yIGVhY2hcbiAqIGxlYWYgY2hpbGQuXG4gKlxuICogQHBhcmFtIHs/Kn0gY2hpbGRyZW4gQ2hpbGRyZW4gdHJlZSBjb250YWluZXIuXG4gKiBAcGFyYW0ge2Z1bmN0aW9uKCosIGludCl9IGZ1bmMgVGhlIG1hcCBmdW5jdGlvbi5cbiAqIEBwYXJhbSB7Kn0gY29udGV4dCBDb250ZXh0IGZvciBtYXBGdW5jdGlvbi5cbiAqIEByZXR1cm4ge29iamVjdH0gT2JqZWN0IGNvbnRhaW5pbmcgdGhlIG9yZGVyZWQgbWFwIG9mIHJlc3VsdHMuXG4gKi9cbmZ1bmN0aW9uIG1hcENoaWxkcmVuKGNoaWxkcmVuLCBmdW5jLCBjb250ZXh0KSB7XG4gIGlmIChjaGlsZHJlbiA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGNoaWxkcmVuO1xuICB9XG5cbiAgdmFyIHJlc3VsdCA9IFtdO1xuICB2YXIgY291bnQgPSAwO1xuICBtYXBJbnRvQXJyYXkoY2hpbGRyZW4sIHJlc3VsdCwgJycsICcnLCBmdW5jdGlvbiAoY2hpbGQpIHtcbiAgICByZXR1cm4gZnVuYy5jYWxsKGNvbnRleHQsIGNoaWxkLCBjb3VudCsrKTtcbiAgfSk7XG4gIHJldHVybiByZXN1bHQ7XG59XG4vKipcbiAqIENvdW50IHRoZSBudW1iZXIgb2YgY2hpbGRyZW4gdGhhdCBhcmUgdHlwaWNhbGx5IHNwZWNpZmllZCBhc1xuICogYHByb3BzLmNoaWxkcmVuYC5cbiAqXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI3JlYWN0Y2hpbGRyZW5jb3VudFxuICpcbiAqIEBwYXJhbSB7Pyp9IGNoaWxkcmVuIENoaWxkcmVuIHRyZWUgY29udGFpbmVyLlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgbnVtYmVyIG9mIGNoaWxkcmVuLlxuICovXG5cblxuZnVuY3Rpb24gY291bnRDaGlsZHJlbihjaGlsZHJlbikge1xuICB2YXIgbiA9IDA7XG4gIG1hcENoaWxkcmVuKGNoaWxkcmVuLCBmdW5jdGlvbiAoKSB7XG4gICAgbisrOyAvLyBEb24ndCByZXR1cm4gYW55dGhpbmdcbiAgfSk7XG4gIHJldHVybiBuO1xufVxuXG4vKipcbiAqIEl0ZXJhdGVzIHRocm91Z2ggY2hpbGRyZW4gdGhhdCBhcmUgdHlwaWNhbGx5IHNwZWNpZmllZCBhcyBgcHJvcHMuY2hpbGRyZW5gLlxuICpcbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjcmVhY3RjaGlsZHJlbmZvcmVhY2hcbiAqXG4gKiBUaGUgcHJvdmlkZWQgZm9yRWFjaEZ1bmMoY2hpbGQsIGluZGV4KSB3aWxsIGJlIGNhbGxlZCBmb3IgZWFjaFxuICogbGVhZiBjaGlsZC5cbiAqXG4gKiBAcGFyYW0gez8qfSBjaGlsZHJlbiBDaGlsZHJlbiB0cmVlIGNvbnRhaW5lci5cbiAqIEBwYXJhbSB7ZnVuY3Rpb24oKiwgaW50KX0gZm9yRWFjaEZ1bmNcbiAqIEBwYXJhbSB7Kn0gZm9yRWFjaENvbnRleHQgQ29udGV4dCBmb3IgZm9yRWFjaENvbnRleHQuXG4gKi9cbmZ1bmN0aW9uIGZvckVhY2hDaGlsZHJlbihjaGlsZHJlbiwgZm9yRWFjaEZ1bmMsIGZvckVhY2hDb250ZXh0KSB7XG4gIG1hcENoaWxkcmVuKGNoaWxkcmVuLCBmdW5jdGlvbiAoKSB7XG4gICAgZm9yRWFjaEZ1bmMuYXBwbHkodGhpcywgYXJndW1lbnRzKTsgLy8gRG9uJ3QgcmV0dXJuIGFueXRoaW5nLlxuICB9LCBmb3JFYWNoQ29udGV4dCk7XG59XG4vKipcbiAqIEZsYXR0ZW4gYSBjaGlsZHJlbiBvYmplY3QgKHR5cGljYWxseSBzcGVjaWZpZWQgYXMgYHByb3BzLmNoaWxkcmVuYCkgYW5kXG4gKiByZXR1cm4gYW4gYXJyYXkgd2l0aCBhcHByb3ByaWF0ZWx5IHJlLWtleWVkIGNoaWxkcmVuLlxuICpcbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjcmVhY3RjaGlsZHJlbnRvYXJyYXlcbiAqL1xuXG5cbmZ1bmN0aW9uIHRvQXJyYXkoY2hpbGRyZW4pIHtcbiAgcmV0dXJuIG1hcENoaWxkcmVuKGNoaWxkcmVuLCBmdW5jdGlvbiAoY2hpbGQpIHtcbiAgICByZXR1cm4gY2hpbGQ7XG4gIH0pIHx8IFtdO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBmaXJzdCBjaGlsZCBpbiBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4gYW5kIHZlcmlmaWVzIHRoYXQgdGhlcmVcbiAqIGlzIG9ubHkgb25lIGNoaWxkIGluIHRoZSBjb2xsZWN0aW9uLlxuICpcbiAqIFNlZSBodHRwczovL3JlYWN0anMub3JnL2RvY3MvcmVhY3QtYXBpLmh0bWwjcmVhY3RjaGlsZHJlbm9ubHlcbiAqXG4gKiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBhIHNpbmdsZSBjaGlsZCBnZXRzXG4gKiBwYXNzZWQgd2l0aG91dCBhIHdyYXBwZXIsIGJ1dCB0aGUgcHVycG9zZSBvZiB0aGlzIGhlbHBlciBmdW5jdGlvbiBpcyB0b1xuICogYWJzdHJhY3QgYXdheSB0aGUgcGFydGljdWxhciBzdHJ1Y3R1cmUgb2YgY2hpbGRyZW4uXG4gKlxuICogQHBhcmFtIHs/b2JqZWN0fSBjaGlsZHJlbiBDaGlsZCBjb2xsZWN0aW9uIHN0cnVjdHVyZS5cbiAqIEByZXR1cm4ge1JlYWN0RWxlbWVudH0gVGhlIGZpcnN0IGFuZCBvbmx5IGBSZWFjdEVsZW1lbnRgIGNvbnRhaW5lZCBpbiB0aGVcbiAqIHN0cnVjdHVyZS5cbiAqL1xuXG5cbmZ1bmN0aW9uIG9ubHlDaGlsZChjaGlsZHJlbikge1xuICBpZiAoIWlzVmFsaWRFbGVtZW50KGNoaWxkcmVuKSkge1xuICAgIHtcbiAgICAgIHRocm93IEVycm9yKCBcIlJlYWN0LkNoaWxkcmVuLm9ubHkgZXhwZWN0ZWQgdG8gcmVjZWl2ZSBhIHNpbmdsZSBSZWFjdCBlbGVtZW50IGNoaWxkLlwiICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGNoaWxkcmVuO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVDb250ZXh0KGRlZmF1bHRWYWx1ZSwgY2FsY3VsYXRlQ2hhbmdlZEJpdHMpIHtcbiAgaWYgKGNhbGN1bGF0ZUNoYW5nZWRCaXRzID09PSB1bmRlZmluZWQpIHtcbiAgICBjYWxjdWxhdGVDaGFuZ2VkQml0cyA9IG51bGw7XG4gIH0gZWxzZSB7XG4gICAge1xuICAgICAgaWYgKGNhbGN1bGF0ZUNoYW5nZWRCaXRzICE9PSBudWxsICYmIHR5cGVvZiBjYWxjdWxhdGVDaGFuZ2VkQml0cyAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBlcnJvcignY3JlYXRlQ29udGV4dDogRXhwZWN0ZWQgdGhlIG9wdGlvbmFsIHNlY29uZCBhcmd1bWVudCB0byBiZSBhICcgKyAnZnVuY3Rpb24uIEluc3RlYWQgcmVjZWl2ZWQ6ICVzJywgY2FsY3VsYXRlQ2hhbmdlZEJpdHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHZhciBjb250ZXh0ID0ge1xuICAgICQkdHlwZW9mOiBSRUFDVF9DT05URVhUX1RZUEUsXG4gICAgX2NhbGN1bGF0ZUNoYW5nZWRCaXRzOiBjYWxjdWxhdGVDaGFuZ2VkQml0cyxcbiAgICAvLyBBcyBhIHdvcmthcm91bmQgdG8gc3VwcG9ydCBtdWx0aXBsZSBjb25jdXJyZW50IHJlbmRlcmVycywgd2UgY2F0ZWdvcml6ZVxuICAgIC8vIHNvbWUgcmVuZGVyZXJzIGFzIHByaW1hcnkgYW5kIG90aGVycyBhcyBzZWNvbmRhcnkuIFdlIG9ubHkgZXhwZWN0XG4gICAgLy8gdGhlcmUgdG8gYmUgdHdvIGNvbmN1cnJlbnQgcmVuZGVyZXJzIGF0IG1vc3Q6IFJlYWN0IE5hdGl2ZSAocHJpbWFyeSkgYW5kXG4gICAgLy8gRmFicmljIChzZWNvbmRhcnkpOyBSZWFjdCBET00gKHByaW1hcnkpIGFuZCBSZWFjdCBBUlQgKHNlY29uZGFyeSkuXG4gICAgLy8gU2Vjb25kYXJ5IHJlbmRlcmVycyBzdG9yZSB0aGVpciBjb250ZXh0IHZhbHVlcyBvbiBzZXBhcmF0ZSBmaWVsZHMuXG4gICAgX2N1cnJlbnRWYWx1ZTogZGVmYXVsdFZhbHVlLFxuICAgIF9jdXJyZW50VmFsdWUyOiBkZWZhdWx0VmFsdWUsXG4gICAgLy8gVXNlZCB0byB0cmFjayBob3cgbWFueSBjb25jdXJyZW50IHJlbmRlcmVycyB0aGlzIGNvbnRleHQgY3VycmVudGx5XG4gICAgLy8gc3VwcG9ydHMgd2l0aGluIGluIGEgc2luZ2xlIHJlbmRlcmVyLiBTdWNoIGFzIHBhcmFsbGVsIHNlcnZlciByZW5kZXJpbmcuXG4gICAgX3RocmVhZENvdW50OiAwLFxuICAgIC8vIFRoZXNlIGFyZSBjaXJjdWxhclxuICAgIFByb3ZpZGVyOiBudWxsLFxuICAgIENvbnN1bWVyOiBudWxsXG4gIH07XG4gIGNvbnRleHQuUHJvdmlkZXIgPSB7XG4gICAgJCR0eXBlb2Y6IFJFQUNUX1BST1ZJREVSX1RZUEUsXG4gICAgX2NvbnRleHQ6IGNvbnRleHRcbiAgfTtcbiAgdmFyIGhhc1dhcm5lZEFib3V0VXNpbmdOZXN0ZWRDb250ZXh0Q29uc3VtZXJzID0gZmFsc2U7XG4gIHZhciBoYXNXYXJuZWRBYm91dFVzaW5nQ29uc3VtZXJQcm92aWRlciA9IGZhbHNlO1xuICB2YXIgaGFzV2FybmVkQWJvdXREaXNwbGF5TmFtZU9uQ29uc3VtZXIgPSBmYWxzZTtcblxuICB7XG4gICAgLy8gQSBzZXBhcmF0ZSBvYmplY3QsIGJ1dCBwcm94aWVzIGJhY2sgdG8gdGhlIG9yaWdpbmFsIGNvbnRleHQgb2JqZWN0IGZvclxuICAgIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBJdCBoYXMgYSBkaWZmZXJlbnQgJCR0eXBlb2YsIHNvIHdlIGNhbiBwcm9wZXJseVxuICAgIC8vIHdhcm4gZm9yIHRoZSBpbmNvcnJlY3QgdXNhZ2Ugb2YgQ29udGV4dCBhcyBhIENvbnN1bWVyLlxuICAgIHZhciBDb25zdW1lciA9IHtcbiAgICAgICQkdHlwZW9mOiBSRUFDVF9DT05URVhUX1RZUEUsXG4gICAgICBfY29udGV4dDogY29udGV4dCxcbiAgICAgIF9jYWxjdWxhdGVDaGFuZ2VkQml0czogY29udGV4dC5fY2FsY3VsYXRlQ2hhbmdlZEJpdHNcbiAgICB9OyAvLyAkRmxvd0ZpeE1lOiBGbG93IGNvbXBsYWlucyBhYm91dCBub3Qgc2V0dGluZyBhIHZhbHVlLCB3aGljaCBpcyBpbnRlbnRpb25hbCBoZXJlXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhDb25zdW1lciwge1xuICAgICAgUHJvdmlkZXI6IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaWYgKCFoYXNXYXJuZWRBYm91dFVzaW5nQ29uc3VtZXJQcm92aWRlcikge1xuICAgICAgICAgICAgaGFzV2FybmVkQWJvdXRVc2luZ0NvbnN1bWVyUHJvdmlkZXIgPSB0cnVlO1xuXG4gICAgICAgICAgICBlcnJvcignUmVuZGVyaW5nIDxDb250ZXh0LkNvbnN1bWVyLlByb3ZpZGVyPiBpcyBub3Qgc3VwcG9ydGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gJyArICdhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiBEaWQgeW91IG1lYW4gdG8gcmVuZGVyIDxDb250ZXh0LlByb3ZpZGVyPiBpbnN0ZWFkPycpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBjb250ZXh0LlByb3ZpZGVyO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChfUHJvdmlkZXIpIHtcbiAgICAgICAgICBjb250ZXh0LlByb3ZpZGVyID0gX1Byb3ZpZGVyO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgX2N1cnJlbnRWYWx1ZToge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gY29udGV4dC5fY3VycmVudFZhbHVlO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChfY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgY29udGV4dC5fY3VycmVudFZhbHVlID0gX2N1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF9jdXJyZW50VmFsdWUyOiB7XG4gICAgICAgIGdldDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBjb250ZXh0Ll9jdXJyZW50VmFsdWUyO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChfY3VycmVudFZhbHVlMikge1xuICAgICAgICAgIGNvbnRleHQuX2N1cnJlbnRWYWx1ZTIgPSBfY3VycmVudFZhbHVlMjtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIF90aHJlYWRDb3VudDoge1xuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gY29udGV4dC5fdGhyZWFkQ291bnQ7XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gKF90aHJlYWRDb3VudCkge1xuICAgICAgICAgIGNvbnRleHQuX3RocmVhZENvdW50ID0gX3RocmVhZENvdW50O1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgQ29uc3VtZXI6IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaWYgKCFoYXNXYXJuZWRBYm91dFVzaW5nTmVzdGVkQ29udGV4dENvbnN1bWVycykge1xuICAgICAgICAgICAgaGFzV2FybmVkQWJvdXRVc2luZ05lc3RlZENvbnRleHRDb25zdW1lcnMgPSB0cnVlO1xuXG4gICAgICAgICAgICBlcnJvcignUmVuZGVyaW5nIDxDb250ZXh0LkNvbnN1bWVyLkNvbnN1bWVyPiBpcyBub3Qgc3VwcG9ydGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gJyArICdhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiBEaWQgeW91IG1lYW4gdG8gcmVuZGVyIDxDb250ZXh0LkNvbnN1bWVyPiBpbnN0ZWFkPycpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBjb250ZXh0LkNvbnN1bWVyO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGlzcGxheU5hbWU6IHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIGNvbnRleHQuZGlzcGxheU5hbWU7XG4gICAgICAgIH0sXG4gICAgICAgIHNldDogZnVuY3Rpb24gKGRpc3BsYXlOYW1lKSB7XG4gICAgICAgICAgaWYgKCFoYXNXYXJuZWRBYm91dERpc3BsYXlOYW1lT25Db25zdW1lcikge1xuICAgICAgICAgICAgd2FybignU2V0dGluZyBgZGlzcGxheU5hbWVgIG9uIENvbnRleHQuQ29uc3VtZXIgaGFzIG5vIGVmZmVjdC4gJyArIFwiWW91IHNob3VsZCBzZXQgaXQgZGlyZWN0bHkgb24gdGhlIGNvbnRleHQgd2l0aCBDb250ZXh0LmRpc3BsYXlOYW1lID0gJyVzJy5cIiwgZGlzcGxheU5hbWUpO1xuXG4gICAgICAgICAgICBoYXNXYXJuZWRBYm91dERpc3BsYXlOYW1lT25Db25zdW1lciA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7IC8vICRGbG93Rml4TWU6IEZsb3cgY29tcGxhaW5zIGFib3V0IG1pc3NpbmcgcHJvcGVydGllcyBiZWNhdXNlIGl0IGRvZXNuJ3QgdW5kZXJzdGFuZCBkZWZpbmVQcm9wZXJ0eVxuXG4gICAgY29udGV4dC5Db25zdW1lciA9IENvbnN1bWVyO1xuICB9XG5cbiAge1xuICAgIGNvbnRleHQuX2N1cnJlbnRSZW5kZXJlciA9IG51bGw7XG4gICAgY29udGV4dC5fY3VycmVudFJlbmRlcmVyMiA9IG51bGw7XG4gIH1cblxuICByZXR1cm4gY29udGV4dDtcbn1cblxudmFyIFVuaW5pdGlhbGl6ZWQgPSAtMTtcbnZhciBQZW5kaW5nID0gMDtcbnZhciBSZXNvbHZlZCA9IDE7XG52YXIgUmVqZWN0ZWQgPSAyO1xuXG5mdW5jdGlvbiBsYXp5SW5pdGlhbGl6ZXIocGF5bG9hZCkge1xuICBpZiAocGF5bG9hZC5fc3RhdHVzID09PSBVbmluaXRpYWxpemVkKSB7XG4gICAgdmFyIGN0b3IgPSBwYXlsb2FkLl9yZXN1bHQ7XG4gICAgdmFyIHRoZW5hYmxlID0gY3RvcigpOyAvLyBUcmFuc2l0aW9uIHRvIHRoZSBuZXh0IHN0YXRlLlxuXG4gICAgdmFyIHBlbmRpbmcgPSBwYXlsb2FkO1xuICAgIHBlbmRpbmcuX3N0YXR1cyA9IFBlbmRpbmc7XG4gICAgcGVuZGluZy5fcmVzdWx0ID0gdGhlbmFibGU7XG4gICAgdGhlbmFibGUudGhlbihmdW5jdGlvbiAobW9kdWxlT2JqZWN0KSB7XG4gICAgICBpZiAocGF5bG9hZC5fc3RhdHVzID09PSBQZW5kaW5nKSB7XG4gICAgICAgIHZhciBkZWZhdWx0RXhwb3J0ID0gbW9kdWxlT2JqZWN0LmRlZmF1bHQ7XG5cbiAgICAgICAge1xuICAgICAgICAgIGlmIChkZWZhdWx0RXhwb3J0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGVycm9yKCdsYXp5OiBFeHBlY3RlZCB0aGUgcmVzdWx0IG9mIGEgZHluYW1pYyBpbXBvcnQoKSBjYWxsLiAnICsgJ0luc3RlYWQgcmVjZWl2ZWQ6ICVzXFxuXFxuWW91ciBjb2RlIHNob3VsZCBsb29rIGxpa2U6IFxcbiAgJyArIC8vIEJyZWFrIHVwIGltcG9ydHMgdG8gYXZvaWQgYWNjaWRlbnRhbGx5IHBhcnNpbmcgdGhlbSBhcyBkZXBlbmRlbmNpZXMuXG4gICAgICAgICAgICAnY29uc3QgTXlDb21wb25lbnQgPSBsYXp5KCgpID0+IGltcCcgKyBcIm9ydCgnLi9NeUNvbXBvbmVudCcpKVwiLCBtb2R1bGVPYmplY3QpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSAvLyBUcmFuc2l0aW9uIHRvIHRoZSBuZXh0IHN0YXRlLlxuXG5cbiAgICAgICAgdmFyIHJlc29sdmVkID0gcGF5bG9hZDtcbiAgICAgICAgcmVzb2x2ZWQuX3N0YXR1cyA9IFJlc29sdmVkO1xuICAgICAgICByZXNvbHZlZC5fcmVzdWx0ID0gZGVmYXVsdEV4cG9ydDtcbiAgICAgIH1cbiAgICB9LCBmdW5jdGlvbiAoZXJyb3IpIHtcbiAgICAgIGlmIChwYXlsb2FkLl9zdGF0dXMgPT09IFBlbmRpbmcpIHtcbiAgICAgICAgLy8gVHJhbnNpdGlvbiB0byB0aGUgbmV4dCBzdGF0ZS5cbiAgICAgICAgdmFyIHJlamVjdGVkID0gcGF5bG9hZDtcbiAgICAgICAgcmVqZWN0ZWQuX3N0YXR1cyA9IFJlamVjdGVkO1xuICAgICAgICByZWplY3RlZC5fcmVzdWx0ID0gZXJyb3I7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBpZiAocGF5bG9hZC5fc3RhdHVzID09PSBSZXNvbHZlZCkge1xuICAgIHJldHVybiBwYXlsb2FkLl9yZXN1bHQ7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgcGF5bG9hZC5fcmVzdWx0O1xuICB9XG59XG5cbmZ1bmN0aW9uIGxhenkoY3Rvcikge1xuICB2YXIgcGF5bG9hZCA9IHtcbiAgICAvLyBXZSB1c2UgdGhlc2UgZmllbGRzIHRvIHN0b3JlIHRoZSByZXN1bHQuXG4gICAgX3N0YXR1czogLTEsXG4gICAgX3Jlc3VsdDogY3RvclxuICB9O1xuICB2YXIgbGF6eVR5cGUgPSB7XG4gICAgJCR0eXBlb2Y6IFJFQUNUX0xBWllfVFlQRSxcbiAgICBfcGF5bG9hZDogcGF5bG9hZCxcbiAgICBfaW5pdDogbGF6eUluaXRpYWxpemVyXG4gIH07XG5cbiAge1xuICAgIC8vIEluIHByb2R1Y3Rpb24sIHRoaXMgd291bGQganVzdCBzZXQgaXQgb24gdGhlIG9iamVjdC5cbiAgICB2YXIgZGVmYXVsdFByb3BzO1xuICAgIHZhciBwcm9wVHlwZXM7IC8vICRGbG93Rml4TWVcblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGxhenlUeXBlLCB7XG4gICAgICBkZWZhdWx0UHJvcHM6IHtcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gZGVmYXVsdFByb3BzO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChuZXdEZWZhdWx0UHJvcHMpIHtcbiAgICAgICAgICBlcnJvcignUmVhY3QubGF6eSguLi4pOiBJdCBpcyBub3Qgc3VwcG9ydGVkIHRvIGFzc2lnbiBgZGVmYXVsdFByb3BzYCB0byAnICsgJ2EgbGF6eSBjb21wb25lbnQgaW1wb3J0LiBFaXRoZXIgc3BlY2lmeSB0aGVtIHdoZXJlIHRoZSBjb21wb25lbnQgJyArICdpcyBkZWZpbmVkLCBvciBjcmVhdGUgYSB3cmFwcGluZyBjb21wb25lbnQgYXJvdW5kIGl0LicpO1xuXG4gICAgICAgICAgZGVmYXVsdFByb3BzID0gbmV3RGVmYXVsdFByb3BzOyAvLyBNYXRjaCBwcm9kdWN0aW9uIGJlaGF2aW9yIG1vcmUgY2xvc2VseTpcbiAgICAgICAgICAvLyAkRmxvd0ZpeE1lXG5cbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobGF6eVR5cGUsICdkZWZhdWx0UHJvcHMnLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBwcm9wVHlwZXM6IHtcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gcHJvcFR5cGVzO1xuICAgICAgICB9LFxuICAgICAgICBzZXQ6IGZ1bmN0aW9uIChuZXdQcm9wVHlwZXMpIHtcbiAgICAgICAgICBlcnJvcignUmVhY3QubGF6eSguLi4pOiBJdCBpcyBub3Qgc3VwcG9ydGVkIHRvIGFzc2lnbiBgcHJvcFR5cGVzYCB0byAnICsgJ2EgbGF6eSBjb21wb25lbnQgaW1wb3J0LiBFaXRoZXIgc3BlY2lmeSB0aGVtIHdoZXJlIHRoZSBjb21wb25lbnQgJyArICdpcyBkZWZpbmVkLCBvciBjcmVhdGUgYSB3cmFwcGluZyBjb21wb25lbnQgYXJvdW5kIGl0LicpO1xuXG4gICAgICAgICAgcHJvcFR5cGVzID0gbmV3UHJvcFR5cGVzOyAvLyBNYXRjaCBwcm9kdWN0aW9uIGJlaGF2aW9yIG1vcmUgY2xvc2VseTpcbiAgICAgICAgICAvLyAkRmxvd0ZpeE1lXG5cbiAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkobGF6eVR5cGUsICdwcm9wVHlwZXMnLCB7XG4gICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBsYXp5VHlwZTtcbn1cblxuZnVuY3Rpb24gZm9yd2FyZFJlZihyZW5kZXIpIHtcbiAge1xuICAgIGlmIChyZW5kZXIgIT0gbnVsbCAmJiByZW5kZXIuJCR0eXBlb2YgPT09IFJFQUNUX01FTU9fVFlQRSkge1xuICAgICAgZXJyb3IoJ2ZvcndhcmRSZWYgcmVxdWlyZXMgYSByZW5kZXIgZnVuY3Rpb24gYnV0IHJlY2VpdmVkIGEgYG1lbW9gICcgKyAnY29tcG9uZW50LiBJbnN0ZWFkIG9mIGZvcndhcmRSZWYobWVtbyguLi4pKSwgdXNlICcgKyAnbWVtbyhmb3J3YXJkUmVmKC4uLikpLicpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHJlbmRlciAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZXJyb3IoJ2ZvcndhcmRSZWYgcmVxdWlyZXMgYSByZW5kZXIgZnVuY3Rpb24gYnV0IHdhcyBnaXZlbiAlcy4nLCByZW5kZXIgPT09IG51bGwgPyAnbnVsbCcgOiB0eXBlb2YgcmVuZGVyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHJlbmRlci5sZW5ndGggIT09IDAgJiYgcmVuZGVyLmxlbmd0aCAhPT0gMikge1xuICAgICAgICBlcnJvcignZm9yd2FyZFJlZiByZW5kZXIgZnVuY3Rpb25zIGFjY2VwdCBleGFjdGx5IHR3byBwYXJhbWV0ZXJzOiBwcm9wcyBhbmQgcmVmLiAlcycsIHJlbmRlci5sZW5ndGggPT09IDEgPyAnRGlkIHlvdSBmb3JnZXQgdG8gdXNlIHRoZSByZWYgcGFyYW1ldGVyPycgOiAnQW55IGFkZGl0aW9uYWwgcGFyYW1ldGVyIHdpbGwgYmUgdW5kZWZpbmVkLicpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChyZW5kZXIgIT0gbnVsbCkge1xuICAgICAgaWYgKHJlbmRlci5kZWZhdWx0UHJvcHMgIT0gbnVsbCB8fCByZW5kZXIucHJvcFR5cGVzICE9IG51bGwpIHtcbiAgICAgICAgZXJyb3IoJ2ZvcndhcmRSZWYgcmVuZGVyIGZ1bmN0aW9ucyBkbyBub3Qgc3VwcG9ydCBwcm9wVHlwZXMgb3IgZGVmYXVsdFByb3BzLiAnICsgJ0RpZCB5b3UgYWNjaWRlbnRhbGx5IHBhc3MgYSBSZWFjdCBjb21wb25lbnQ/Jyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdmFyIGVsZW1lbnRUeXBlID0ge1xuICAgICQkdHlwZW9mOiBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFLFxuICAgIHJlbmRlcjogcmVuZGVyXG4gIH07XG5cbiAge1xuICAgIHZhciBvd25OYW1lO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlbGVtZW50VHlwZSwgJ2Rpc3BsYXlOYW1lJywge1xuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICBnZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIG93bk5hbWU7XG4gICAgICB9LFxuICAgICAgc2V0OiBmdW5jdGlvbiAobmFtZSkge1xuICAgICAgICBvd25OYW1lID0gbmFtZTtcblxuICAgICAgICBpZiAocmVuZGVyLmRpc3BsYXlOYW1lID09IG51bGwpIHtcbiAgICAgICAgICByZW5kZXIuZGlzcGxheU5hbWUgPSBuYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gZWxlbWVudFR5cGU7XG59XG5cbi8vIEZpbHRlciBjZXJ0YWluIERPTSBhdHRyaWJ1dGVzIChlLmcuIHNyYywgaHJlZikgaWYgdGhlaXIgdmFsdWVzIGFyZSBlbXB0eSBzdHJpbmdzLlxuXG52YXIgZW5hYmxlU2NvcGVBUEkgPSBmYWxzZTsgLy8gRXhwZXJpbWVudGFsIENyZWF0ZSBFdmVudCBIYW5kbGUgQVBJLlxuXG5mdW5jdGlvbiBpc1ZhbGlkRWxlbWVudFR5cGUodHlwZSkge1xuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnIHx8IHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gLy8gTm90ZTogdHlwZW9mIG1pZ2h0IGJlIG90aGVyIHRoYW4gJ3N5bWJvbCcgb3IgJ251bWJlcicgKGUuZy4gaWYgaXQncyBhIHBvbHlmaWxsKS5cblxuXG4gIGlmICh0eXBlID09PSBleHBvcnRzLkZyYWdtZW50IHx8IHR5cGUgPT09IGV4cG9ydHMuUHJvZmlsZXIgfHwgdHlwZSA9PT0gUkVBQ1RfREVCVUdfVFJBQ0lOR19NT0RFX1RZUEUgfHwgdHlwZSA9PT0gZXhwb3J0cy5TdHJpY3RNb2RlIHx8IHR5cGUgPT09IGV4cG9ydHMuU3VzcGVuc2UgfHwgdHlwZSA9PT0gUkVBQ1RfU1VTUEVOU0VfTElTVF9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX0xFR0FDWV9ISURERU5fVFlQRSB8fCBlbmFibGVTY29wZUFQSSApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgdHlwZSAhPT0gbnVsbCkge1xuICAgIGlmICh0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9MQVpZX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfTUVNT19UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX1BST1ZJREVSX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfQ09OVEVYVF9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRlVOREFNRU5UQUxfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9CTE9DS19UWVBFIHx8IHR5cGVbMF0gPT09IFJFQUNUX1NFUlZFUl9CTE9DS19UWVBFKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIG1lbW8odHlwZSwgY29tcGFyZSkge1xuICB7XG4gICAgaWYgKCFpc1ZhbGlkRWxlbWVudFR5cGUodHlwZSkpIHtcbiAgICAgIGVycm9yKCdtZW1vOiBUaGUgZmlyc3QgYXJndW1lbnQgbXVzdCBiZSBhIGNvbXBvbmVudC4gSW5zdGVhZCAnICsgJ3JlY2VpdmVkOiAlcycsIHR5cGUgPT09IG51bGwgPyAnbnVsbCcgOiB0eXBlb2YgdHlwZSk7XG4gICAgfVxuICB9XG5cbiAgdmFyIGVsZW1lbnRUeXBlID0ge1xuICAgICQkdHlwZW9mOiBSRUFDVF9NRU1PX1RZUEUsXG4gICAgdHlwZTogdHlwZSxcbiAgICBjb21wYXJlOiBjb21wYXJlID09PSB1bmRlZmluZWQgPyBudWxsIDogY29tcGFyZVxuICB9O1xuXG4gIHtcbiAgICB2YXIgb3duTmFtZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudFR5cGUsICdkaXNwbGF5TmFtZScsIHtcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBvd25OYW1lO1xuICAgICAgfSxcbiAgICAgIHNldDogZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgICAgb3duTmFtZSA9IG5hbWU7XG5cbiAgICAgICAgaWYgKHR5cGUuZGlzcGxheU5hbWUgPT0gbnVsbCkge1xuICAgICAgICAgIHR5cGUuZGlzcGxheU5hbWUgPSBuYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gZWxlbWVudFR5cGU7XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVEaXNwYXRjaGVyKCkge1xuICB2YXIgZGlzcGF0Y2hlciA9IFJlYWN0Q3VycmVudERpc3BhdGNoZXIuY3VycmVudDtcblxuICBpZiAoIShkaXNwYXRjaGVyICE9PSBudWxsKSkge1xuICAgIHtcbiAgICAgIHRocm93IEVycm9yKCBcIkludmFsaWQgaG9vayBjYWxsLiBIb29rcyBjYW4gb25seSBiZSBjYWxsZWQgaW5zaWRlIG9mIHRoZSBib2R5IG9mIGEgZnVuY3Rpb24gY29tcG9uZW50LiBUaGlzIGNvdWxkIGhhcHBlbiBmb3Igb25lIG9mIHRoZSBmb2xsb3dpbmcgcmVhc29uczpcXG4xLiBZb3UgbWlnaHQgaGF2ZSBtaXNtYXRjaGluZyB2ZXJzaW9ucyBvZiBSZWFjdCBhbmQgdGhlIHJlbmRlcmVyIChzdWNoIGFzIFJlYWN0IERPTSlcXG4yLiBZb3UgbWlnaHQgYmUgYnJlYWtpbmcgdGhlIFJ1bGVzIG9mIEhvb2tzXFxuMy4gWW91IG1pZ2h0IGhhdmUgbW9yZSB0aGFuIG9uZSBjb3B5IG9mIFJlYWN0IGluIHRoZSBzYW1lIGFwcFxcblNlZSBodHRwczovL3JlYWN0anMub3JnL2xpbmsvaW52YWxpZC1ob29rLWNhbGwgZm9yIHRpcHMgYWJvdXQgaG93IHRvIGRlYnVnIGFuZCBmaXggdGhpcyBwcm9ibGVtLlwiICk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRpc3BhdGNoZXI7XG59XG5cbmZ1bmN0aW9uIHVzZUNvbnRleHQoQ29udGV4dCwgdW5zdGFibGVfb2JzZXJ2ZWRCaXRzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcblxuICB7XG4gICAgaWYgKHVuc3RhYmxlX29ic2VydmVkQml0cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBlcnJvcigndXNlQ29udGV4dCgpIHNlY29uZCBhcmd1bWVudCBpcyByZXNlcnZlZCBmb3IgZnV0dXJlICcgKyAndXNlIGluIFJlYWN0LiBQYXNzaW5nIGl0IGlzIG5vdCBzdXBwb3J0ZWQuICcgKyAnWW91IHBhc3NlZDogJXMuJXMnLCB1bnN0YWJsZV9vYnNlcnZlZEJpdHMsIHR5cGVvZiB1bnN0YWJsZV9vYnNlcnZlZEJpdHMgPT09ICdudW1iZXInICYmIEFycmF5LmlzQXJyYXkoYXJndW1lbnRzWzJdKSA/ICdcXG5cXG5EaWQgeW91IGNhbGwgYXJyYXkubWFwKHVzZUNvbnRleHQpPyAnICsgJ0NhbGxpbmcgSG9va3MgaW5zaWRlIGEgbG9vcCBpcyBub3Qgc3VwcG9ydGVkLiAnICsgJ0xlYXJuIG1vcmUgYXQgaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3J1bGVzLW9mLWhvb2tzJyA6ICcnKTtcbiAgICB9IC8vIFRPRE86IGFkZCBhIG1vcmUgZ2VuZXJpYyB3YXJuaW5nIGZvciBpbnZhbGlkIHZhbHVlcy5cblxuXG4gICAgaWYgKENvbnRleHQuX2NvbnRleHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdmFyIHJlYWxDb250ZXh0ID0gQ29udGV4dC5fY29udGV4dDsgLy8gRG9uJ3QgZGVkdXBsaWNhdGUgYmVjYXVzZSB0aGlzIGxlZ2l0aW1hdGVseSBjYXVzZXMgYnVnc1xuICAgICAgLy8gYW5kIG5vYm9keSBzaG91bGQgYmUgdXNpbmcgdGhpcyBpbiBleGlzdGluZyBjb2RlLlxuXG4gICAgICBpZiAocmVhbENvbnRleHQuQ29uc3VtZXIgPT09IENvbnRleHQpIHtcbiAgICAgICAgZXJyb3IoJ0NhbGxpbmcgdXNlQ29udGV4dChDb250ZXh0LkNvbnN1bWVyKSBpcyBub3Qgc3VwcG9ydGVkLCBtYXkgY2F1c2UgYnVncywgYW5kIHdpbGwgYmUgJyArICdyZW1vdmVkIGluIGEgZnV0dXJlIG1ham9yIHJlbGVhc2UuIERpZCB5b3UgbWVhbiB0byBjYWxsIHVzZUNvbnRleHQoQ29udGV4dCkgaW5zdGVhZD8nKTtcbiAgICAgIH0gZWxzZSBpZiAocmVhbENvbnRleHQuUHJvdmlkZXIgPT09IENvbnRleHQpIHtcbiAgICAgICAgZXJyb3IoJ0NhbGxpbmcgdXNlQ29udGV4dChDb250ZXh0LlByb3ZpZGVyKSBpcyBub3Qgc3VwcG9ydGVkLiAnICsgJ0RpZCB5b3UgbWVhbiB0byBjYWxsIHVzZUNvbnRleHQoQ29udGV4dCkgaW5zdGVhZD8nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGlzcGF0Y2hlci51c2VDb250ZXh0KENvbnRleHQsIHVuc3RhYmxlX29ic2VydmVkQml0cyk7XG59XG5mdW5jdGlvbiB1c2VTdGF0ZShpbml0aWFsU3RhdGUpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICByZXR1cm4gZGlzcGF0Y2hlci51c2VTdGF0ZShpbml0aWFsU3RhdGUpO1xufVxuZnVuY3Rpb24gdXNlUmVkdWNlcihyZWR1Y2VyLCBpbml0aWFsQXJnLCBpbml0KSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlUmVkdWNlcihyZWR1Y2VyLCBpbml0aWFsQXJnLCBpbml0KTtcbn1cbmZ1bmN0aW9uIHVzZVJlZihpbml0aWFsVmFsdWUpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICByZXR1cm4gZGlzcGF0Y2hlci51c2VSZWYoaW5pdGlhbFZhbHVlKTtcbn1cbmZ1bmN0aW9uIHVzZUVmZmVjdChjcmVhdGUsIGRlcHMpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICByZXR1cm4gZGlzcGF0Y2hlci51c2VFZmZlY3QoY3JlYXRlLCBkZXBzKTtcbn1cbmZ1bmN0aW9uIHVzZUxheW91dEVmZmVjdChjcmVhdGUsIGRlcHMpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICByZXR1cm4gZGlzcGF0Y2hlci51c2VMYXlvdXRFZmZlY3QoY3JlYXRlLCBkZXBzKTtcbn1cbmZ1bmN0aW9uIHVzZUNhbGxiYWNrKGNhbGxiYWNrLCBkZXBzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlQ2FsbGJhY2soY2FsbGJhY2ssIGRlcHMpO1xufVxuZnVuY3Rpb24gdXNlTWVtbyhjcmVhdGUsIGRlcHMpIHtcbiAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICByZXR1cm4gZGlzcGF0Y2hlci51c2VNZW1vKGNyZWF0ZSwgZGVwcyk7XG59XG5mdW5jdGlvbiB1c2VJbXBlcmF0aXZlSGFuZGxlKHJlZiwgY3JlYXRlLCBkZXBzKSB7XG4gIHZhciBkaXNwYXRjaGVyID0gcmVzb2x2ZURpc3BhdGNoZXIoKTtcbiAgcmV0dXJuIGRpc3BhdGNoZXIudXNlSW1wZXJhdGl2ZUhhbmRsZShyZWYsIGNyZWF0ZSwgZGVwcyk7XG59XG5mdW5jdGlvbiB1c2VEZWJ1Z1ZhbHVlKHZhbHVlLCBmb3JtYXR0ZXJGbikge1xuICB7XG4gICAgdmFyIGRpc3BhdGNoZXIgPSByZXNvbHZlRGlzcGF0Y2hlcigpO1xuICAgIHJldHVybiBkaXNwYXRjaGVyLnVzZURlYnVnVmFsdWUodmFsdWUsIGZvcm1hdHRlckZuKTtcbiAgfVxufVxuXG4vLyBIZWxwZXJzIHRvIHBhdGNoIGNvbnNvbGUubG9ncyB0byBhdm9pZCBsb2dnaW5nIGR1cmluZyBzaWRlLWVmZmVjdCBmcmVlXG4vLyByZXBsYXlpbmcgb24gcmVuZGVyIGZ1bmN0aW9uLiBUaGlzIGN1cnJlbnRseSBvbmx5IHBhdGNoZXMgdGhlIG9iamVjdFxuLy8gbGF6aWx5IHdoaWNoIHdvbid0IGNvdmVyIGlmIHRoZSBsb2cgZnVuY3Rpb24gd2FzIGV4dHJhY3RlZCBlYWdlcmx5LlxuLy8gV2UgY291bGQgYWxzbyBlYWdlcmx5IHBhdGNoIHRoZSBtZXRob2QuXG52YXIgZGlzYWJsZWREZXB0aCA9IDA7XG52YXIgcHJldkxvZztcbnZhciBwcmV2SW5mbztcbnZhciBwcmV2V2FybjtcbnZhciBwcmV2RXJyb3I7XG52YXIgcHJldkdyb3VwO1xudmFyIHByZXZHcm91cENvbGxhcHNlZDtcbnZhciBwcmV2R3JvdXBFbmQ7XG5cbmZ1bmN0aW9uIGRpc2FibGVkTG9nKCkge31cblxuZGlzYWJsZWRMb2cuX19yZWFjdERpc2FibGVkTG9nID0gdHJ1ZTtcbmZ1bmN0aW9uIGRpc2FibGVMb2dzKCkge1xuICB7XG4gICAgaWYgKGRpc2FibGVkRGVwdGggPT09IDApIHtcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgICAgcHJldkxvZyA9IGNvbnNvbGUubG9nO1xuICAgICAgcHJldkluZm8gPSBjb25zb2xlLmluZm87XG4gICAgICBwcmV2V2FybiA9IGNvbnNvbGUud2FybjtcbiAgICAgIHByZXZFcnJvciA9IGNvbnNvbGUuZXJyb3I7XG4gICAgICBwcmV2R3JvdXAgPSBjb25zb2xlLmdyb3VwO1xuICAgICAgcHJldkdyb3VwQ29sbGFwc2VkID0gY29uc29sZS5ncm91cENvbGxhcHNlZDtcbiAgICAgIHByZXZHcm91cEVuZCA9IGNvbnNvbGUuZ3JvdXBFbmQ7IC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTkwOTlcblxuICAgICAgdmFyIHByb3BzID0ge1xuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHZhbHVlOiBkaXNhYmxlZExvZyxcbiAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgIH07IC8vICRGbG93Rml4TWUgRmxvdyB0aGlua3MgY29uc29sZSBpcyBpbW11dGFibGUuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGNvbnNvbGUsIHtcbiAgICAgICAgaW5mbzogcHJvcHMsXG4gICAgICAgIGxvZzogcHJvcHMsXG4gICAgICAgIHdhcm46IHByb3BzLFxuICAgICAgICBlcnJvcjogcHJvcHMsXG4gICAgICAgIGdyb3VwOiBwcm9wcyxcbiAgICAgICAgZ3JvdXBDb2xsYXBzZWQ6IHByb3BzLFxuICAgICAgICBncm91cEVuZDogcHJvcHNcbiAgICAgIH0pO1xuICAgICAgLyogZXNsaW50LWVuYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICB9XG5cbiAgICBkaXNhYmxlZERlcHRoKys7XG4gIH1cbn1cbmZ1bmN0aW9uIHJlZW5hYmxlTG9ncygpIHtcbiAge1xuICAgIGRpc2FibGVkRGVwdGgtLTtcblxuICAgIGlmIChkaXNhYmxlZERlcHRoID09PSAwKSB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC1pbnRlcm5hbC9uby1wcm9kdWN0aW9uLWxvZ2dpbmcgKi9cbiAgICAgIHZhciBwcm9wcyA9IHtcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICB3cml0YWJsZTogdHJ1ZVxuICAgICAgfTsgLy8gJEZsb3dGaXhNZSBGbG93IHRoaW5rcyBjb25zb2xlIGlzIGltbXV0YWJsZS5cblxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY29uc29sZSwge1xuICAgICAgICBsb2c6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZMb2dcbiAgICAgICAgfSksXG4gICAgICAgIGluZm86IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZJbmZvXG4gICAgICAgIH0pLFxuICAgICAgICB3YXJuOiBfYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2V2FyblxuICAgICAgICB9KSxcbiAgICAgICAgZXJyb3I6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZFcnJvclxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXA6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXBDb2xsYXBzZWQ6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cENvbGxhcHNlZFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXBFbmQ6IF9hc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cEVuZFxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgIH1cblxuICAgIGlmIChkaXNhYmxlZERlcHRoIDwgMCkge1xuICAgICAgZXJyb3IoJ2Rpc2FibGVkRGVwdGggZmVsbCBiZWxvdyB6ZXJvLiAnICsgJ1RoaXMgaXMgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgIH1cbiAgfVxufVxuXG52YXIgUmVhY3RDdXJyZW50RGlzcGF0Y2hlciQxID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3RDdXJyZW50RGlzcGF0Y2hlcjtcbnZhciBwcmVmaXg7XG5mdW5jdGlvbiBkZXNjcmliZUJ1aWx0SW5Db21wb25lbnRGcmFtZShuYW1lLCBzb3VyY2UsIG93bmVyRm4pIHtcbiAge1xuICAgIGlmIChwcmVmaXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gRXh0cmFjdCB0aGUgVk0gc3BlY2lmaWMgcHJlZml4IHVzZWQgYnkgZWFjaCBsaW5lLlxuICAgICAgdHJ5IHtcbiAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgdmFyIG1hdGNoID0geC5zdGFjay50cmltKCkubWF0Y2goL1xcbiggKihhdCApPykvKTtcbiAgICAgICAgcHJlZml4ID0gbWF0Y2ggJiYgbWF0Y2hbMV0gfHwgJyc7XG4gICAgICB9XG4gICAgfSAvLyBXZSB1c2UgdGhlIHByZWZpeCB0byBlbnN1cmUgb3VyIHN0YWNrcyBsaW5lIHVwIHdpdGggbmF0aXZlIHN0YWNrIGZyYW1lcy5cblxuXG4gICAgcmV0dXJuICdcXG4nICsgcHJlZml4ICsgbmFtZTtcbiAgfVxufVxudmFyIHJlZW50cnkgPSBmYWxzZTtcbnZhciBjb21wb25lbnRGcmFtZUNhY2hlO1xuXG57XG4gIHZhciBQb3NzaWJseVdlYWtNYXAgPSB0eXBlb2YgV2Vha01hcCA9PT0gJ2Z1bmN0aW9uJyA/IFdlYWtNYXAgOiBNYXA7XG4gIGNvbXBvbmVudEZyYW1lQ2FjaGUgPSBuZXcgUG9zc2libHlXZWFrTWFwKCk7XG59XG5cbmZ1bmN0aW9uIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGNvbnN0cnVjdCkge1xuICAvLyBJZiBzb21ldGhpbmcgYXNrZWQgZm9yIGEgc3RhY2sgaW5zaWRlIGEgZmFrZSByZW5kZXIsIGl0IHNob3VsZCBnZXQgaWdub3JlZC5cbiAgaWYgKCFmbiB8fCByZWVudHJ5KSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAge1xuICAgIHZhciBmcmFtZSA9IGNvbXBvbmVudEZyYW1lQ2FjaGUuZ2V0KGZuKTtcblxuICAgIGlmIChmcmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZnJhbWU7XG4gICAgfVxuICB9XG5cbiAgdmFyIGNvbnRyb2w7XG4gIHJlZW50cnkgPSB0cnVlO1xuICB2YXIgcHJldmlvdXNQcmVwYXJlU3RhY2tUcmFjZSA9IEVycm9yLnByZXBhcmVTdGFja1RyYWNlOyAvLyAkRmxvd0ZpeE1lIEl0IGRvZXMgYWNjZXB0IHVuZGVmaW5lZC5cblxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHVuZGVmaW5lZDtcbiAgdmFyIHByZXZpb3VzRGlzcGF0Y2hlcjtcblxuICB7XG4gICAgcHJldmlvdXNEaXNwYXRjaGVyID0gUmVhY3RDdXJyZW50RGlzcGF0Y2hlciQxLmN1cnJlbnQ7IC8vIFNldCB0aGUgZGlzcGF0Y2hlciBpbiBERVYgYmVjYXVzZSB0aGlzIG1pZ2h0IGJlIGNhbGwgaW4gdGhlIHJlbmRlciBmdW5jdGlvblxuICAgIC8vIGZvciB3YXJuaW5ncy5cblxuICAgIFJlYWN0Q3VycmVudERpc3BhdGNoZXIkMS5jdXJyZW50ID0gbnVsbDtcbiAgICBkaXNhYmxlTG9ncygpO1xuICB9XG5cbiAgdHJ5IHtcbiAgICAvLyBUaGlzIHNob3VsZCB0aHJvdy5cbiAgICBpZiAoY29uc3RydWN0KSB7XG4gICAgICAvLyBTb21ldGhpbmcgc2hvdWxkIGJlIHNldHRpbmcgdGhlIHByb3BzIGluIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICAgIHZhciBGYWtlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgfTsgLy8gJEZsb3dGaXhNZVxuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShGYWtlLnByb3RvdHlwZSwgJ3Byb3BzJywge1xuICAgICAgICBzZXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAvLyBXZSB1c2UgYSB0aHJvd2luZyBzZXR0ZXIgaW5zdGVhZCBvZiBmcm96ZW4gb3Igbm9uLXdyaXRhYmxlIHByb3BzXG4gICAgICAgICAgLy8gYmVjYXVzZSB0aGF0IHdvbid0IHRocm93IGluIGEgbm9uLXN0cmljdCBtb2RlIGZ1bmN0aW9uLlxuICAgICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09ICdvYmplY3QnICYmIFJlZmxlY3QuY29uc3RydWN0KSB7XG4gICAgICAgIC8vIFdlIGNvbnN0cnVjdCBhIGRpZmZlcmVudCBjb250cm9sIGZvciB0aGlzIGNhc2UgdG8gaW5jbHVkZSBhbnkgZXh0cmFcbiAgICAgICAgLy8gZnJhbWVzIGFkZGVkIGJ5IHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBSZWZsZWN0LmNvbnN0cnVjdChGYWtlLCBbXSk7XG4gICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICBjb250cm9sID0geDtcbiAgICAgICAgfVxuXG4gICAgICAgIFJlZmxlY3QuY29uc3RydWN0KGZuLCBbXSwgRmFrZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIEZha2UuY2FsbCgpO1xuICAgICAgICB9IGNhdGNoICh4KSB7XG4gICAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICAgIH1cblxuICAgICAgICBmbi5jYWxsKEZha2UucHJvdG90eXBlKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdGhyb3cgRXJyb3IoKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICB9XG5cbiAgICAgIGZuKCk7XG4gICAgfVxuICB9IGNhdGNoIChzYW1wbGUpIHtcbiAgICAvLyBUaGlzIGlzIGlubGluZWQgbWFudWFsbHkgYmVjYXVzZSBjbG9zdXJlIGRvZXNuJ3QgZG8gaXQgZm9yIHVzLlxuICAgIGlmIChzYW1wbGUgJiYgY29udHJvbCAmJiB0eXBlb2Ygc2FtcGxlLnN0YWNrID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gVGhpcyBleHRyYWN0cyB0aGUgZmlyc3QgZnJhbWUgZnJvbSB0aGUgc2FtcGxlIHRoYXQgaXNuJ3QgYWxzbyBpbiB0aGUgY29udHJvbC5cbiAgICAgIC8vIFNraXBwaW5nIG9uZSBmcmFtZSB0aGF0IHdlIGFzc3VtZSBpcyB0aGUgZnJhbWUgdGhhdCBjYWxscyB0aGUgdHdvLlxuICAgICAgdmFyIHNhbXBsZUxpbmVzID0gc2FtcGxlLnN0YWNrLnNwbGl0KCdcXG4nKTtcbiAgICAgIHZhciBjb250cm9sTGluZXMgPSBjb250cm9sLnN0YWNrLnNwbGl0KCdcXG4nKTtcbiAgICAgIHZhciBzID0gc2FtcGxlTGluZXMubGVuZ3RoIC0gMTtcbiAgICAgIHZhciBjID0gY29udHJvbExpbmVzLmxlbmd0aCAtIDE7XG5cbiAgICAgIHdoaWxlIChzID49IDEgJiYgYyA+PSAwICYmIHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgLy8gV2UgZXhwZWN0IGF0IGxlYXN0IG9uZSBzdGFjayBmcmFtZSB0byBiZSBzaGFyZWQuXG4gICAgICAgIC8vIFR5cGljYWxseSB0aGlzIHdpbGwgYmUgdGhlIHJvb3QgbW9zdCBvbmUuIEhvd2V2ZXIsIHN0YWNrIGZyYW1lcyBtYXkgYmVcbiAgICAgICAgLy8gY3V0IG9mZiBkdWUgdG8gbWF4aW11bSBzdGFjayBsaW1pdHMuIEluIHRoaXMgY2FzZSwgb25lIG1heWJlIGN1dCBvZmZcbiAgICAgICAgLy8gZWFybGllciB0aGFuIHRoZSBvdGhlci4gV2UgYXNzdW1lIHRoYXQgdGhlIHNhbXBsZSBpcyBsb25nZXIgb3IgdGhlIHNhbWVcbiAgICAgICAgLy8gYW5kIHRoZXJlIGZvciBjdXQgb2ZmIGVhcmxpZXIuIFNvIHdlIHNob3VsZCBmaW5kIHRoZSByb290IG1vc3QgZnJhbWUgaW5cbiAgICAgICAgLy8gdGhlIHNhbXBsZSBzb21ld2hlcmUgaW4gdGhlIGNvbnRyb2wuXG4gICAgICAgIGMtLTtcbiAgICAgIH1cblxuICAgICAgZm9yICg7IHMgPj0gMSAmJiBjID49IDA7IHMtLSwgYy0tKSB7XG4gICAgICAgIC8vIE5leHQgd2UgZmluZCB0aGUgZmlyc3Qgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgd2hpY2ggc2hvdWxkIGJlIHRoZVxuICAgICAgICAvLyBmcmFtZSB0aGF0IGNhbGxlZCBvdXIgc2FtcGxlIGZ1bmN0aW9uIGFuZCB0aGUgY29udHJvbC5cbiAgICAgICAgaWYgKHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAvLyBJbiBWOCwgdGhlIGZpcnN0IGxpbmUgaXMgZGVzY3JpYmluZyB0aGUgbWVzc2FnZSBidXQgb3RoZXIgVk1zIGRvbid0LlxuICAgICAgICAgIC8vIElmIHdlJ3JlIGFib3V0IHRvIHJldHVybiB0aGUgZmlyc3QgbGluZSwgYW5kIHRoZSBjb250cm9sIGlzIGFsc28gb24gdGhlIHNhbWVcbiAgICAgICAgICAvLyBsaW5lLCB0aGF0J3MgYSBwcmV0dHkgZ29vZCBpbmRpY2F0b3IgdGhhdCBvdXIgc2FtcGxlIHRocmV3IGF0IHNhbWUgbGluZSBhc1xuICAgICAgICAgIC8vIHRoZSBjb250cm9sLiBJLmUuIGJlZm9yZSB3ZSBlbnRlcmVkIHRoZSBzYW1wbGUgZnJhbWUuIFNvIHdlIGlnbm9yZSB0aGlzIHJlc3VsdC5cbiAgICAgICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gaWYgeW91IHBhc3NlZCBhIGNsYXNzIHRvIGZ1bmN0aW9uIGNvbXBvbmVudCwgb3Igbm9uLWZ1bmN0aW9uLlxuICAgICAgICAgIGlmIChzICE9PSAxIHx8IGMgIT09IDEpIHtcbiAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgcy0tO1xuICAgICAgICAgICAgICBjLS07IC8vIFdlIG1heSBzdGlsbCBoYXZlIHNpbWlsYXIgaW50ZXJtZWRpYXRlIGZyYW1lcyBmcm9tIHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgICAgICAgLy8gVGhlIG5leHQgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgc2hvdWxkIGJlIG91ciBtYXRjaCB0aG91Z2guXG5cbiAgICAgICAgICAgICAgaWYgKGMgPCAwIHx8IHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAgICAgICAvLyBWOCBhZGRzIGEgXCJuZXdcIiBwcmVmaXggZm9yIG5hdGl2ZSBjbGFzc2VzLiBMZXQncyByZW1vdmUgaXQgdG8gbWFrZSBpdCBwcmV0dGllci5cbiAgICAgICAgICAgICAgICB2YXIgX2ZyYW1lID0gJ1xcbicgKyBzYW1wbGVMaW5lc1tzXS5yZXBsYWNlKCcgYXQgbmV3ICcsICcgYXQgJyk7XG5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbXBvbmVudEZyYW1lQ2FjaGUuc2V0KGZuLCBfZnJhbWUpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gLy8gUmV0dXJuIHRoZSBsaW5lIHdlIGZvdW5kLlxuXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gX2ZyYW1lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IHdoaWxlIChzID49IDEgJiYgYyA+PSAwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSBmaW5hbGx5IHtcbiAgICByZWVudHJ5ID0gZmFsc2U7XG5cbiAgICB7XG4gICAgICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyJDEuY3VycmVudCA9IHByZXZpb3VzRGlzcGF0Y2hlcjtcbiAgICAgIHJlZW5hYmxlTG9ncygpO1xuICAgIH1cblxuICAgIEVycm9yLnByZXBhcmVTdGFja1RyYWNlID0gcHJldmlvdXNQcmVwYXJlU3RhY2tUcmFjZTtcbiAgfSAvLyBGYWxsYmFjayB0byBqdXN0IHVzaW5nIHRoZSBuYW1lIGlmIHdlIGNvdWxkbid0IG1ha2UgaXQgdGhyb3cuXG5cblxuICB2YXIgbmFtZSA9IGZuID8gZm4uZGlzcGxheU5hbWUgfHwgZm4ubmFtZSA6ICcnO1xuICB2YXIgc3ludGhldGljRnJhbWUgPSBuYW1lID8gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUobmFtZSkgOiAnJztcblxuICB7XG4gICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29tcG9uZW50RnJhbWVDYWNoZS5zZXQoZm4sIHN5bnRoZXRpY0ZyYW1lKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3ludGhldGljRnJhbWU7XG59XG5mdW5jdGlvbiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUoZm4sIHNvdXJjZSwgb3duZXJGbikge1xuICB7XG4gICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGZhbHNlKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzaG91bGRDb25zdHJ1Y3QoQ29tcG9uZW50KSB7XG4gIHZhciBwcm90b3R5cGUgPSBDb21wb25lbnQucHJvdG90eXBlO1xuICByZXR1cm4gISEocHJvdG90eXBlICYmIHByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50KTtcbn1cblxuZnVuY3Rpb24gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKHR5cGUsIHNvdXJjZSwgb3duZXJGbikge1xuXG4gIGlmICh0eXBlID09IG51bGwpIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICB7XG4gICAgICByZXR1cm4gZGVzY3JpYmVOYXRpdmVDb21wb25lbnRGcmFtZSh0eXBlLCBzaG91bGRDb25zdHJ1Y3QodHlwZSkpO1xuICAgIH1cbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUodHlwZSk7XG4gIH1cblxuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIGV4cG9ydHMuU3VzcGVuc2U6XG4gICAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUoJ1N1c3BlbnNlJyk7XG5cbiAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRTpcbiAgICAgIHJldHVybiBkZXNjcmliZUJ1aWx0SW5Db21wb25lbnRGcmFtZSgnU3VzcGVuc2VMaXN0Jyk7XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnKSB7XG4gICAgc3dpdGNoICh0eXBlLiQkdHlwZW9mKSB7XG4gICAgICBjYXNlIFJFQUNUX0ZPUldBUkRfUkVGX1RZUEU6XG4gICAgICAgIHJldHVybiBkZXNjcmliZUZ1bmN0aW9uQ29tcG9uZW50RnJhbWUodHlwZS5yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX01FTU9fVFlQRTpcbiAgICAgICAgLy8gTWVtbyBtYXkgY29udGFpbiBhbnkgY29tcG9uZW50IHR5cGUgc28gd2UgcmVjdXJzaXZlbHkgcmVzb2x2ZSBpdC5cbiAgICAgICAgcmV0dXJuIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVih0eXBlLnR5cGUsIHNvdXJjZSwgb3duZXJGbik7XG5cbiAgICAgIGNhc2UgUkVBQ1RfQkxPQ0tfVFlQRTpcbiAgICAgICAgcmV0dXJuIGRlc2NyaWJlRnVuY3Rpb25Db21wb25lbnRGcmFtZSh0eXBlLl9yZW5kZXIpO1xuXG4gICAgICBjYXNlIFJFQUNUX0xBWllfVFlQRTpcbiAgICAgICAge1xuICAgICAgICAgIHZhciBsYXp5Q29tcG9uZW50ID0gdHlwZTtcbiAgICAgICAgICB2YXIgcGF5bG9hZCA9IGxhenlDb21wb25lbnQuX3BheWxvYWQ7XG4gICAgICAgICAgdmFyIGluaXQgPSBsYXp5Q29tcG9uZW50Ll9pbml0O1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIExhenkgbWF5IGNvbnRhaW4gYW55IGNvbXBvbmVudCB0eXBlIHNvIHdlIHJlY3Vyc2l2ZWx5IHJlc29sdmUgaXQuXG4gICAgICAgICAgICByZXR1cm4gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGluaXQocGF5bG9hZCksIHNvdXJjZSwgb3duZXJGbik7XG4gICAgICAgICAgfSBjYXRjaCAoeCkge31cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiAnJztcbn1cblxudmFyIGxvZ2dlZFR5cGVGYWlsdXJlcyA9IHt9O1xudmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUkMSA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0RGVidWdDdXJyZW50RnJhbWU7XG5cbmZ1bmN0aW9uIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGVsZW1lbnQpIHtcbiAge1xuICAgIGlmIChlbGVtZW50KSB7XG4gICAgICB2YXIgb3duZXIgPSBlbGVtZW50Ll9vd25lcjtcbiAgICAgIHZhciBzdGFjayA9IGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVihlbGVtZW50LnR5cGUsIGVsZW1lbnQuX3NvdXJjZSwgb3duZXIgPyBvd25lci50eXBlIDogbnVsbCk7XG4gICAgICBSZWFjdERlYnVnQ3VycmVudEZyYW1lJDEuc2V0RXh0cmFTdGFja0ZyYW1lKHN0YWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZSQxLnNldEV4dHJhU3RhY2tGcmFtZShudWxsKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gY2hlY2tQcm9wVHlwZXModHlwZVNwZWNzLCB2YWx1ZXMsIGxvY2F0aW9uLCBjb21wb25lbnROYW1lLCBlbGVtZW50KSB7XG4gIHtcbiAgICAvLyAkRmxvd0ZpeE1lIFRoaXMgaXMgb2theSBidXQgRmxvdyBkb2Vzbid0IGtub3cgaXQuXG4gICAgdmFyIGhhcyA9IEZ1bmN0aW9uLmNhbGwuYmluZChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5KTtcblxuICAgIGZvciAodmFyIHR5cGVTcGVjTmFtZSBpbiB0eXBlU3BlY3MpIHtcbiAgICAgIGlmIChoYXModHlwZVNwZWNzLCB0eXBlU3BlY05hbWUpKSB7XG4gICAgICAgIHZhciBlcnJvciQxID0gdm9pZCAwOyAvLyBQcm9wIHR5cGUgdmFsaWRhdGlvbiBtYXkgdGhyb3cuIEluIGNhc2UgdGhleSBkbywgd2UgZG9uJ3Qgd2FudCB0b1xuICAgICAgICAvLyBmYWlsIHRoZSByZW5kZXIgcGhhc2Ugd2hlcmUgaXQgZGlkbid0IGZhaWwgYmVmb3JlLiBTbyB3ZSBsb2cgaXQuXG4gICAgICAgIC8vIEFmdGVyIHRoZXNlIGhhdmUgYmVlbiBjbGVhbmVkIHVwLCB3ZSdsbCBsZXQgdGhlbSB0aHJvdy5cblxuICAgICAgICB0cnkge1xuICAgICAgICAgIC8vIFRoaXMgaXMgaW50ZW50aW9uYWxseSBhbiBpbnZhcmlhbnQgdGhhdCBnZXRzIGNhdWdodC4gSXQncyB0aGUgc2FtZVxuICAgICAgICAgIC8vIGJlaGF2aW9yIGFzIHdpdGhvdXQgdGhpcyBzdGF0ZW1lbnQgZXhjZXB0IHdpdGggYSBiZXR0ZXIgbWVzc2FnZS5cbiAgICAgICAgICBpZiAodHlwZW9mIHR5cGVTcGVjc1t0eXBlU3BlY05hbWVdICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICB2YXIgZXJyID0gRXJyb3IoKGNvbXBvbmVudE5hbWUgfHwgJ1JlYWN0IGNsYXNzJykgKyAnOiAnICsgbG9jYXRpb24gKyAnIHR5cGUgYCcgKyB0eXBlU3BlY05hbWUgKyAnYCBpcyBpbnZhbGlkOyAnICsgJ2l0IG11c3QgYmUgYSBmdW5jdGlvbiwgdXN1YWxseSBmcm9tIHRoZSBgcHJvcC10eXBlc2AgcGFja2FnZSwgYnV0IHJlY2VpdmVkIGAnICsgdHlwZW9mIHR5cGVTcGVjc1t0eXBlU3BlY05hbWVdICsgJ2AuJyArICdUaGlzIG9mdGVuIGhhcHBlbnMgYmVjYXVzZSBvZiB0eXBvcyBzdWNoIGFzIGBQcm9wVHlwZXMuZnVuY3Rpb25gIGluc3RlYWQgb2YgYFByb3BUeXBlcy5mdW5jYC4nKTtcbiAgICAgICAgICAgIGVyci5uYW1lID0gJ0ludmFyaWFudCBWaW9sYXRpb24nO1xuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGVycm9yJDEgPSB0eXBlU3BlY3NbdHlwZVNwZWNOYW1lXSh2YWx1ZXMsIHR5cGVTcGVjTmFtZSwgY29tcG9uZW50TmFtZSwgbG9jYXRpb24sIG51bGwsICdTRUNSRVRfRE9fTk9UX1BBU1NfVEhJU19PUl9ZT1VfV0lMTF9CRV9GSVJFRCcpO1xuICAgICAgICB9IGNhdGNoIChleCkge1xuICAgICAgICAgIGVycm9yJDEgPSBleDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvciQxICYmICEoZXJyb3IkMSBpbnN0YW5jZW9mIEVycm9yKSkge1xuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGVsZW1lbnQpO1xuXG4gICAgICAgICAgZXJyb3IoJyVzOiB0eXBlIHNwZWNpZmljYXRpb24gb2YgJXMnICsgJyBgJXNgIGlzIGludmFsaWQ7IHRoZSB0eXBlIGNoZWNrZXIgJyArICdmdW5jdGlvbiBtdXN0IHJldHVybiBgbnVsbGAgb3IgYW4gYEVycm9yYCBidXQgcmV0dXJuZWQgYSAlcy4gJyArICdZb3UgbWF5IGhhdmUgZm9yZ290dGVuIHRvIHBhc3MgYW4gYXJndW1lbnQgdG8gdGhlIHR5cGUgY2hlY2tlciAnICsgJ2NyZWF0b3IgKGFycmF5T2YsIGluc3RhbmNlT2YsIG9iamVjdE9mLCBvbmVPZiwgb25lT2ZUeXBlLCBhbmQgJyArICdzaGFwZSBhbGwgcmVxdWlyZSBhbiBhcmd1bWVudCkuJywgY29tcG9uZW50TmFtZSB8fCAnUmVhY3QgY2xhc3MnLCBsb2NhdGlvbiwgdHlwZVNwZWNOYW1lLCB0eXBlb2YgZXJyb3IkMSk7XG5cbiAgICAgICAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChudWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvciQxIGluc3RhbmNlb2YgRXJyb3IgJiYgIShlcnJvciQxLm1lc3NhZ2UgaW4gbG9nZ2VkVHlwZUZhaWx1cmVzKSkge1xuICAgICAgICAgIC8vIE9ubHkgbW9uaXRvciB0aGlzIGZhaWx1cmUgb25jZSBiZWNhdXNlIHRoZXJlIHRlbmRzIHRvIGJlIGEgbG90IG9mIHRoZVxuICAgICAgICAgIC8vIHNhbWUgZXJyb3IuXG4gICAgICAgICAgbG9nZ2VkVHlwZUZhaWx1cmVzW2Vycm9yJDEubWVzc2FnZV0gPSB0cnVlO1xuICAgICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGVsZW1lbnQpO1xuXG4gICAgICAgICAgZXJyb3IoJ0ZhaWxlZCAlcyB0eXBlOiAlcycsIGxvY2F0aW9uLCBlcnJvciQxLm1lc3NhZ2UpO1xuXG4gICAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShlbGVtZW50KSB7XG4gIHtcbiAgICBpZiAoZWxlbWVudCkge1xuICAgICAgdmFyIG93bmVyID0gZWxlbWVudC5fb3duZXI7XG4gICAgICB2YXIgc3RhY2sgPSBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYoZWxlbWVudC50eXBlLCBlbGVtZW50Ll9zb3VyY2UsIG93bmVyID8gb3duZXIudHlwZSA6IG51bGwpO1xuICAgICAgc2V0RXh0cmFTdGFja0ZyYW1lKHN0YWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0RXh0cmFTdGFja0ZyYW1lKG51bGwpO1xuICAgIH1cbiAgfVxufVxuXG52YXIgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd247XG5cbntcbiAgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24gPSBmYWxzZTtcbn1cblxuZnVuY3Rpb24gZ2V0RGVjbGFyYXRpb25FcnJvckFkZGVuZHVtKCkge1xuICBpZiAoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCkge1xuICAgIHZhciBuYW1lID0gZ2V0Q29tcG9uZW50TmFtZShSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnR5cGUpO1xuXG4gICAgaWYgKG5hbWUpIHtcbiAgICAgIHJldHVybiAnXFxuXFxuQ2hlY2sgdGhlIHJlbmRlciBtZXRob2Qgb2YgYCcgKyBuYW1lICsgJ2AuJztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gJyc7XG59XG5cbmZ1bmN0aW9uIGdldFNvdXJjZUluZm9FcnJvckFkZGVuZHVtKHNvdXJjZSkge1xuICBpZiAoc291cmNlICE9PSB1bmRlZmluZWQpIHtcbiAgICB2YXIgZmlsZU5hbWUgPSBzb3VyY2UuZmlsZU5hbWUucmVwbGFjZSgvXi4qW1xcXFxcXC9dLywgJycpO1xuICAgIHZhciBsaW5lTnVtYmVyID0gc291cmNlLmxpbmVOdW1iZXI7XG4gICAgcmV0dXJuICdcXG5cXG5DaGVjayB5b3VyIGNvZGUgYXQgJyArIGZpbGVOYW1lICsgJzonICsgbGluZU51bWJlciArICcuJztcbiAgfVxuXG4gIHJldHVybiAnJztcbn1cblxuZnVuY3Rpb24gZ2V0U291cmNlSW5mb0Vycm9yQWRkZW5kdW1Gb3JQcm9wcyhlbGVtZW50UHJvcHMpIHtcbiAgaWYgKGVsZW1lbnRQcm9wcyAhPT0gbnVsbCAmJiBlbGVtZW50UHJvcHMgIT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBnZXRTb3VyY2VJbmZvRXJyb3JBZGRlbmR1bShlbGVtZW50UHJvcHMuX19zb3VyY2UpO1xuICB9XG5cbiAgcmV0dXJuICcnO1xufVxuLyoqXG4gKiBXYXJuIGlmIHRoZXJlJ3Mgbm8ga2V5IGV4cGxpY2l0bHkgc2V0IG9uIGR5bmFtaWMgYXJyYXlzIG9mIGNoaWxkcmVuIG9yXG4gKiBvYmplY3Qga2V5cyBhcmUgbm90IHZhbGlkLiBUaGlzIGFsbG93cyB1cyB0byBrZWVwIHRyYWNrIG9mIGNoaWxkcmVuIGJldHdlZW5cbiAqIHVwZGF0ZXMuXG4gKi9cblxuXG52YXIgb3duZXJIYXNLZXlVc2VXYXJuaW5nID0ge307XG5cbmZ1bmN0aW9uIGdldEN1cnJlbnRDb21wb25lbnRFcnJvckluZm8ocGFyZW50VHlwZSkge1xuICB2YXIgaW5mbyA9IGdldERlY2xhcmF0aW9uRXJyb3JBZGRlbmR1bSgpO1xuXG4gIGlmICghaW5mbykge1xuICAgIHZhciBwYXJlbnROYW1lID0gdHlwZW9mIHBhcmVudFR5cGUgPT09ICdzdHJpbmcnID8gcGFyZW50VHlwZSA6IHBhcmVudFR5cGUuZGlzcGxheU5hbWUgfHwgcGFyZW50VHlwZS5uYW1lO1xuXG4gICAgaWYgKHBhcmVudE5hbWUpIHtcbiAgICAgIGluZm8gPSBcIlxcblxcbkNoZWNrIHRoZSB0b3AtbGV2ZWwgcmVuZGVyIGNhbGwgdXNpbmcgPFwiICsgcGFyZW50TmFtZSArIFwiPi5cIjtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gaW5mbztcbn1cbi8qKlxuICogV2FybiBpZiB0aGUgZWxlbWVudCBkb2Vzbid0IGhhdmUgYW4gZXhwbGljaXQga2V5IGFzc2lnbmVkIHRvIGl0LlxuICogVGhpcyBlbGVtZW50IGlzIGluIGFuIGFycmF5LiBUaGUgYXJyYXkgY291bGQgZ3JvdyBhbmQgc2hyaW5rIG9yIGJlXG4gKiByZW9yZGVyZWQuIEFsbCBjaGlsZHJlbiB0aGF0IGhhdmVuJ3QgYWxyZWFkeSBiZWVuIHZhbGlkYXRlZCBhcmUgcmVxdWlyZWQgdG9cbiAqIGhhdmUgYSBcImtleVwiIHByb3BlcnR5IGFzc2lnbmVkIHRvIGl0LiBFcnJvciBzdGF0dXNlcyBhcmUgY2FjaGVkIHNvIGEgd2FybmluZ1xuICogd2lsbCBvbmx5IGJlIHNob3duIG9uY2UuXG4gKlxuICogQGludGVybmFsXG4gKiBAcGFyYW0ge1JlYWN0RWxlbWVudH0gZWxlbWVudCBFbGVtZW50IHRoYXQgcmVxdWlyZXMgYSBrZXkuXG4gKiBAcGFyYW0geyp9IHBhcmVudFR5cGUgZWxlbWVudCdzIHBhcmVudCdzIHR5cGUuXG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUV4cGxpY2l0S2V5KGVsZW1lbnQsIHBhcmVudFR5cGUpIHtcbiAgaWYgKCFlbGVtZW50Ll9zdG9yZSB8fCBlbGVtZW50Ll9zdG9yZS52YWxpZGF0ZWQgfHwgZWxlbWVudC5rZXkgIT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGVsZW1lbnQuX3N0b3JlLnZhbGlkYXRlZCA9IHRydWU7XG4gIHZhciBjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvID0gZ2V0Q3VycmVudENvbXBvbmVudEVycm9ySW5mbyhwYXJlbnRUeXBlKTtcblxuICBpZiAob3duZXJIYXNLZXlVc2VXYXJuaW5nW2N1cnJlbnRDb21wb25lbnRFcnJvckluZm9dKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgb3duZXJIYXNLZXlVc2VXYXJuaW5nW2N1cnJlbnRDb21wb25lbnRFcnJvckluZm9dID0gdHJ1ZTsgLy8gVXN1YWxseSB0aGUgY3VycmVudCBvd25lciBpcyB0aGUgb2ZmZW5kZXIsIGJ1dCBpZiBpdCBhY2NlcHRzIGNoaWxkcmVuIGFzIGFcbiAgLy8gcHJvcGVydHksIGl0IG1heSBiZSB0aGUgY3JlYXRvciBvZiB0aGUgY2hpbGQgdGhhdCdzIHJlc3BvbnNpYmxlIGZvclxuICAvLyBhc3NpZ25pbmcgaXQgYSBrZXkuXG5cbiAgdmFyIGNoaWxkT3duZXIgPSAnJztcblxuICBpZiAoZWxlbWVudCAmJiBlbGVtZW50Ll9vd25lciAmJiBlbGVtZW50Ll9vd25lciAhPT0gUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCkge1xuICAgIC8vIEdpdmUgdGhlIGNvbXBvbmVudCB0aGF0IG9yaWdpbmFsbHkgY3JlYXRlZCB0aGlzIGNoaWxkLlxuICAgIGNoaWxkT3duZXIgPSBcIiBJdCB3YXMgcGFzc2VkIGEgY2hpbGQgZnJvbSBcIiArIGdldENvbXBvbmVudE5hbWUoZWxlbWVudC5fb3duZXIudHlwZSkgKyBcIi5cIjtcbiAgfVxuXG4gIHtcbiAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKGVsZW1lbnQpO1xuXG4gICAgZXJyb3IoJ0VhY2ggY2hpbGQgaW4gYSBsaXN0IHNob3VsZCBoYXZlIGEgdW5pcXVlIFwia2V5XCIgcHJvcC4nICsgJyVzJXMgU2VlIGh0dHBzOi8vcmVhY3Rqcy5vcmcvbGluay93YXJuaW5nLWtleXMgZm9yIG1vcmUgaW5mb3JtYXRpb24uJywgY3VycmVudENvbXBvbmVudEVycm9ySW5mbywgY2hpbGRPd25lcik7XG5cbiAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudCQxKG51bGwpO1xuICB9XG59XG4vKipcbiAqIEVuc3VyZSB0aGF0IGV2ZXJ5IGVsZW1lbnQgZWl0aGVyIGlzIHBhc3NlZCBpbiBhIHN0YXRpYyBsb2NhdGlvbiwgaW4gYW5cbiAqIGFycmF5IHdpdGggYW4gZXhwbGljaXQga2V5cyBwcm9wZXJ0eSBkZWZpbmVkLCBvciBpbiBhbiBvYmplY3QgbGl0ZXJhbFxuICogd2l0aCB2YWxpZCBrZXkgcHJvcGVydHkuXG4gKlxuICogQGludGVybmFsXG4gKiBAcGFyYW0ge1JlYWN0Tm9kZX0gbm9kZSBTdGF0aWNhbGx5IHBhc3NlZCBjaGlsZCBvZiBhbnkgdHlwZS5cbiAqIEBwYXJhbSB7Kn0gcGFyZW50VHlwZSBub2RlJ3MgcGFyZW50J3MgdHlwZS5cbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlQ2hpbGRLZXlzKG5vZGUsIHBhcmVudFR5cGUpIHtcbiAgaWYgKHR5cGVvZiBub2RlICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChBcnJheS5pc0FycmF5KG5vZGUpKSB7XG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgY2hpbGQgPSBub2RlW2ldO1xuXG4gICAgICBpZiAoaXNWYWxpZEVsZW1lbnQoY2hpbGQpKSB7XG4gICAgICAgIHZhbGlkYXRlRXhwbGljaXRLZXkoY2hpbGQsIHBhcmVudFR5cGUpO1xuICAgICAgfVxuICAgIH1cbiAgfSBlbHNlIGlmIChpc1ZhbGlkRWxlbWVudChub2RlKSkge1xuICAgIC8vIFRoaXMgZWxlbWVudCB3YXMgcGFzc2VkIGluIGEgdmFsaWQgbG9jYXRpb24uXG4gICAgaWYgKG5vZGUuX3N0b3JlKSB7XG4gICAgICBub2RlLl9zdG9yZS52YWxpZGF0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfSBlbHNlIGlmIChub2RlKSB7XG4gICAgdmFyIGl0ZXJhdG9yRm4gPSBnZXRJdGVyYXRvckZuKG5vZGUpO1xuXG4gICAgaWYgKHR5cGVvZiBpdGVyYXRvckZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAvLyBFbnRyeSBpdGVyYXRvcnMgdXNlZCB0byBwcm92aWRlIGltcGxpY2l0IGtleXMsXG4gICAgICAvLyBidXQgbm93IHdlIHByaW50IGEgc2VwYXJhdGUgd2FybmluZyBmb3IgdGhlbSBsYXRlci5cbiAgICAgIGlmIChpdGVyYXRvckZuICE9PSBub2RlLmVudHJpZXMpIHtcbiAgICAgICAgdmFyIGl0ZXJhdG9yID0gaXRlcmF0b3JGbi5jYWxsKG5vZGUpO1xuICAgICAgICB2YXIgc3RlcDtcblxuICAgICAgICB3aGlsZSAoIShzdGVwID0gaXRlcmF0b3IubmV4dCgpKS5kb25lKSB7XG4gICAgICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KHN0ZXAudmFsdWUpKSB7XG4gICAgICAgICAgICB2YWxpZGF0ZUV4cGxpY2l0S2V5KHN0ZXAudmFsdWUsIHBhcmVudFR5cGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyoqXG4gKiBHaXZlbiBhbiBlbGVtZW50LCB2YWxpZGF0ZSB0aGF0IGl0cyBwcm9wcyBmb2xsb3cgdGhlIHByb3BUeXBlcyBkZWZpbml0aW9uLFxuICogcHJvdmlkZWQgYnkgdGhlIHR5cGUuXG4gKlxuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGVsZW1lbnRcbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlUHJvcFR5cGVzKGVsZW1lbnQpIHtcbiAge1xuICAgIHZhciB0eXBlID0gZWxlbWVudC50eXBlO1xuXG4gICAgaWYgKHR5cGUgPT09IG51bGwgfHwgdHlwZSA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHZhciBwcm9wVHlwZXM7XG5cbiAgICBpZiAodHlwZW9mIHR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHByb3BUeXBlcyA9IHR5cGUucHJvcFR5cGVzO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHR5cGUgPT09ICdvYmplY3QnICYmICh0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFIHx8IC8vIE5vdGU6IE1lbW8gb25seSBjaGVja3Mgb3V0ZXIgcHJvcHMgaGVyZS5cbiAgICAvLyBJbm5lciBwcm9wcyBhcmUgY2hlY2tlZCBpbiB0aGUgcmVjb25jaWxlci5cbiAgICB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9NRU1PX1RZUEUpKSB7XG4gICAgICBwcm9wVHlwZXMgPSB0eXBlLnByb3BUeXBlcztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChwcm9wVHlwZXMpIHtcbiAgICAgIC8vIEludGVudGlvbmFsbHkgaW5zaWRlIHRvIGF2b2lkIHRyaWdnZXJpbmcgbGF6eSBpbml0aWFsaXplcnM6XG4gICAgICB2YXIgbmFtZSA9IGdldENvbXBvbmVudE5hbWUodHlwZSk7XG4gICAgICBjaGVja1Byb3BUeXBlcyhwcm9wVHlwZXMsIGVsZW1lbnQucHJvcHMsICdwcm9wJywgbmFtZSwgZWxlbWVudCk7XG4gICAgfSBlbHNlIGlmICh0eXBlLlByb3BUeXBlcyAhPT0gdW5kZWZpbmVkICYmICFwcm9wVHlwZXNNaXNzcGVsbFdhcm5pbmdTaG93bikge1xuICAgICAgcHJvcFR5cGVzTWlzc3BlbGxXYXJuaW5nU2hvd24gPSB0cnVlOyAvLyBJbnRlbnRpb25hbGx5IGluc2lkZSB0byBhdm9pZCB0cmlnZ2VyaW5nIGxhenkgaW5pdGlhbGl6ZXJzOlxuXG4gICAgICB2YXIgX25hbWUgPSBnZXRDb21wb25lbnROYW1lKHR5cGUpO1xuXG4gICAgICBlcnJvcignQ29tcG9uZW50ICVzIGRlY2xhcmVkIGBQcm9wVHlwZXNgIGluc3RlYWQgb2YgYHByb3BUeXBlc2AuIERpZCB5b3UgbWlzc3BlbGwgdGhlIHByb3BlcnR5IGFzc2lnbm1lbnQ/JywgX25hbWUgfHwgJ1Vua25vd24nKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHR5cGUuZ2V0RGVmYXVsdFByb3BzID09PSAnZnVuY3Rpb24nICYmICF0eXBlLmdldERlZmF1bHRQcm9wcy5pc1JlYWN0Q2xhc3NBcHByb3ZlZCkge1xuICAgICAgZXJyb3IoJ2dldERlZmF1bHRQcm9wcyBpcyBvbmx5IHVzZWQgb24gY2xhc3NpYyBSZWFjdC5jcmVhdGVDbGFzcyAnICsgJ2RlZmluaXRpb25zLiBVc2UgYSBzdGF0aWMgcHJvcGVydHkgbmFtZWQgYGRlZmF1bHRQcm9wc2AgaW5zdGVhZC4nKTtcbiAgICB9XG4gIH1cbn1cbi8qKlxuICogR2l2ZW4gYSBmcmFnbWVudCwgdmFsaWRhdGUgdGhhdCBpdCBjYW4gb25seSBiZSBwcm92aWRlZCB3aXRoIGZyYWdtZW50IHByb3BzXG4gKiBAcGFyYW0ge1JlYWN0RWxlbWVudH0gZnJhZ21lbnRcbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhmcmFnbWVudCkge1xuICB7XG4gICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhmcmFnbWVudC5wcm9wcyk7XG5cbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGtleXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHZhciBrZXkgPSBrZXlzW2ldO1xuXG4gICAgICBpZiAoa2V5ICE9PSAnY2hpbGRyZW4nICYmIGtleSAhPT0gJ2tleScpIHtcbiAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShmcmFnbWVudCk7XG5cbiAgICAgICAgZXJyb3IoJ0ludmFsaWQgcHJvcCBgJXNgIHN1cHBsaWVkIHRvIGBSZWFjdC5GcmFnbWVudGAuICcgKyAnUmVhY3QuRnJhZ21lbnQgY2FuIG9ubHkgaGF2ZSBga2V5YCBhbmQgYGNoaWxkcmVuYCBwcm9wcy4nLCBrZXkpO1xuXG4gICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEobnVsbCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmcmFnbWVudC5yZWYgIT09IG51bGwpIHtcbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50JDEoZnJhZ21lbnQpO1xuXG4gICAgICBlcnJvcignSW52YWxpZCBhdHRyaWJ1dGUgYHJlZmAgc3VwcGxpZWQgdG8gYFJlYWN0LkZyYWdtZW50YC4nKTtcblxuICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQkMShudWxsKTtcbiAgICB9XG4gIH1cbn1cbmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnRXaXRoVmFsaWRhdGlvbih0eXBlLCBwcm9wcywgY2hpbGRyZW4pIHtcbiAgdmFyIHZhbGlkVHlwZSA9IGlzVmFsaWRFbGVtZW50VHlwZSh0eXBlKTsgLy8gV2Ugd2FybiBpbiB0aGlzIGNhc2UgYnV0IGRvbid0IHRocm93LiBXZSBleHBlY3QgdGhlIGVsZW1lbnQgY3JlYXRpb24gdG9cbiAgLy8gc3VjY2VlZCBhbmQgdGhlcmUgd2lsbCBsaWtlbHkgYmUgZXJyb3JzIGluIHJlbmRlci5cblxuICBpZiAoIXZhbGlkVHlwZSkge1xuICAgIHZhciBpbmZvID0gJyc7XG5cbiAgICBpZiAodHlwZSA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiB0eXBlICE9PSBudWxsICYmIE9iamVjdC5rZXlzKHR5cGUpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgaW5mbyArPSAnIFlvdSBsaWtlbHkgZm9yZ290IHRvIGV4cG9ydCB5b3VyIGNvbXBvbmVudCBmcm9tIHRoZSBmaWxlICcgKyBcIml0J3MgZGVmaW5lZCBpbiwgb3IgeW91IG1pZ2h0IGhhdmUgbWl4ZWQgdXAgZGVmYXVsdCBhbmQgbmFtZWQgaW1wb3J0cy5cIjtcbiAgICB9XG5cbiAgICB2YXIgc291cmNlSW5mbyA9IGdldFNvdXJjZUluZm9FcnJvckFkZGVuZHVtRm9yUHJvcHMocHJvcHMpO1xuXG4gICAgaWYgKHNvdXJjZUluZm8pIHtcbiAgICAgIGluZm8gKz0gc291cmNlSW5mbztcbiAgICB9IGVsc2Uge1xuICAgICAgaW5mbyArPSBnZXREZWNsYXJhdGlvbkVycm9yQWRkZW5kdW0oKTtcbiAgICB9XG5cbiAgICB2YXIgdHlwZVN0cmluZztcblxuICAgIGlmICh0eXBlID09PSBudWxsKSB7XG4gICAgICB0eXBlU3RyaW5nID0gJ251bGwnO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuICAgICAgdHlwZVN0cmluZyA9ICdhcnJheSc7XG4gICAgfSBlbHNlIGlmICh0eXBlICE9PSB1bmRlZmluZWQgJiYgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfRUxFTUVOVF9UWVBFKSB7XG4gICAgICB0eXBlU3RyaW5nID0gXCI8XCIgKyAoZ2V0Q29tcG9uZW50TmFtZSh0eXBlLnR5cGUpIHx8ICdVbmtub3duJykgKyBcIiAvPlwiO1xuICAgICAgaW5mbyA9ICcgRGlkIHlvdSBhY2NpZGVudGFsbHkgZXhwb3J0IGEgSlNYIGxpdGVyYWwgaW5zdGVhZCBvZiBhIGNvbXBvbmVudD8nO1xuICAgIH0gZWxzZSB7XG4gICAgICB0eXBlU3RyaW5nID0gdHlwZW9mIHR5cGU7XG4gICAgfVxuXG4gICAge1xuICAgICAgZXJyb3IoJ1JlYWN0LmNyZWF0ZUVsZW1lbnQ6IHR5cGUgaXMgaW52YWxpZCAtLSBleHBlY3RlZCBhIHN0cmluZyAoZm9yICcgKyAnYnVpbHQtaW4gY29tcG9uZW50cykgb3IgYSBjbGFzcy9mdW5jdGlvbiAoZm9yIGNvbXBvc2l0ZSAnICsgJ2NvbXBvbmVudHMpIGJ1dCBnb3Q6ICVzLiVzJywgdHlwZVN0cmluZywgaW5mbyk7XG4gICAgfVxuICB9XG5cbiAgdmFyIGVsZW1lbnQgPSBjcmVhdGVFbGVtZW50LmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7IC8vIFRoZSByZXN1bHQgY2FuIGJlIG51bGxpc2ggaWYgYSBtb2NrIG9yIGEgY3VzdG9tIGZ1bmN0aW9uIGlzIHVzZWQuXG4gIC8vIFRPRE86IERyb3AgdGhpcyB3aGVuIHRoZXNlIGFyZSBubyBsb25nZXIgYWxsb3dlZCBhcyB0aGUgdHlwZSBhcmd1bWVudC5cblxuICBpZiAoZWxlbWVudCA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGVsZW1lbnQ7XG4gIH0gLy8gU2tpcCBrZXkgd2FybmluZyBpZiB0aGUgdHlwZSBpc24ndCB2YWxpZCBzaW5jZSBvdXIga2V5IHZhbGlkYXRpb24gbG9naWNcbiAgLy8gZG9lc24ndCBleHBlY3QgYSBub24tc3RyaW5nL2Z1bmN0aW9uIHR5cGUgYW5kIGNhbiB0aHJvdyBjb25mdXNpbmcgZXJyb3JzLlxuICAvLyBXZSBkb24ndCB3YW50IGV4Y2VwdGlvbiBiZWhhdmlvciB0byBkaWZmZXIgYmV0d2VlbiBkZXYgYW5kIHByb2QuXG4gIC8vIChSZW5kZXJpbmcgd2lsbCB0aHJvdyB3aXRoIGEgaGVscGZ1bCBtZXNzYWdlIGFuZCBhcyBzb29uIGFzIHRoZSB0eXBlIGlzXG4gIC8vIGZpeGVkLCB0aGUga2V5IHdhcm5pbmdzIHdpbGwgYXBwZWFyLilcblxuXG4gIGlmICh2YWxpZFR5cGUpIHtcbiAgICBmb3IgKHZhciBpID0gMjsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgdmFsaWRhdGVDaGlsZEtleXMoYXJndW1lbnRzW2ldLCB0eXBlKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZSA9PT0gZXhwb3J0cy5GcmFnbWVudCkge1xuICAgIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhlbGVtZW50KTtcbiAgfSBlbHNlIHtcbiAgICB2YWxpZGF0ZVByb3BUeXBlcyhlbGVtZW50KTtcbiAgfVxuXG4gIHJldHVybiBlbGVtZW50O1xufVxudmFyIGRpZFdhcm5BYm91dERlcHJlY2F0ZWRDcmVhdGVGYWN0b3J5ID0gZmFsc2U7XG5mdW5jdGlvbiBjcmVhdGVGYWN0b3J5V2l0aFZhbGlkYXRpb24odHlwZSkge1xuICB2YXIgdmFsaWRhdGVkRmFjdG9yeSA9IGNyZWF0ZUVsZW1lbnRXaXRoVmFsaWRhdGlvbi5iaW5kKG51bGwsIHR5cGUpO1xuICB2YWxpZGF0ZWRGYWN0b3J5LnR5cGUgPSB0eXBlO1xuXG4gIHtcbiAgICBpZiAoIWRpZFdhcm5BYm91dERlcHJlY2F0ZWRDcmVhdGVGYWN0b3J5KSB7XG4gICAgICBkaWRXYXJuQWJvdXREZXByZWNhdGVkQ3JlYXRlRmFjdG9yeSA9IHRydWU7XG5cbiAgICAgIHdhcm4oJ1JlYWN0LmNyZWF0ZUZhY3RvcnkoKSBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gJyArICdhIGZ1dHVyZSBtYWpvciByZWxlYXNlLiBDb25zaWRlciB1c2luZyBKU1ggJyArICdvciB1c2UgUmVhY3QuY3JlYXRlRWxlbWVudCgpIGRpcmVjdGx5IGluc3RlYWQuJyk7XG4gICAgfSAvLyBMZWdhY3kgaG9vazogcmVtb3ZlIGl0XG5cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh2YWxpZGF0ZWRGYWN0b3J5LCAndHlwZScsIHtcbiAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHdhcm4oJ0ZhY3RvcnkudHlwZSBpcyBkZXByZWNhdGVkLiBBY2Nlc3MgdGhlIGNsYXNzIGRpcmVjdGx5ICcgKyAnYmVmb3JlIHBhc3NpbmcgaXQgdG8gY3JlYXRlRmFjdG9yeS4nKTtcblxuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ3R5cGUnLCB7XG4gICAgICAgICAgdmFsdWU6IHR5cGVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHZhbGlkYXRlZEZhY3Rvcnk7XG59XG5mdW5jdGlvbiBjbG9uZUVsZW1lbnRXaXRoVmFsaWRhdGlvbihlbGVtZW50LCBwcm9wcywgY2hpbGRyZW4pIHtcbiAgdmFyIG5ld0VsZW1lbnQgPSBjbG9uZUVsZW1lbnQuYXBwbHkodGhpcywgYXJndW1lbnRzKTtcblxuICBmb3IgKHZhciBpID0gMjsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgIHZhbGlkYXRlQ2hpbGRLZXlzKGFyZ3VtZW50c1tpXSwgbmV3RWxlbWVudC50eXBlKTtcbiAgfVxuXG4gIHZhbGlkYXRlUHJvcFR5cGVzKG5ld0VsZW1lbnQpO1xuICByZXR1cm4gbmV3RWxlbWVudDtcbn1cblxue1xuXG4gIHRyeSB7XG4gICAgdmFyIGZyb3plbk9iamVjdCA9IE9iamVjdC5mcmVlemUoe30pO1xuICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLW5ldyAqL1xuXG4gICAgbmV3IE1hcChbW2Zyb3plbk9iamVjdCwgbnVsbF1dKTtcbiAgICBuZXcgU2V0KFtmcm96ZW5PYmplY3RdKTtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIG5vLW5ldyAqL1xuICB9IGNhdGNoIChlKSB7XG4gIH1cbn1cblxudmFyIGNyZWF0ZUVsZW1lbnQkMSA9ICBjcmVhdGVFbGVtZW50V2l0aFZhbGlkYXRpb24gO1xudmFyIGNsb25lRWxlbWVudCQxID0gIGNsb25lRWxlbWVudFdpdGhWYWxpZGF0aW9uIDtcbnZhciBjcmVhdGVGYWN0b3J5ID0gIGNyZWF0ZUZhY3RvcnlXaXRoVmFsaWRhdGlvbiA7XG52YXIgQ2hpbGRyZW4gPSB7XG4gIG1hcDogbWFwQ2hpbGRyZW4sXG4gIGZvckVhY2g6IGZvckVhY2hDaGlsZHJlbixcbiAgY291bnQ6IGNvdW50Q2hpbGRyZW4sXG4gIHRvQXJyYXk6IHRvQXJyYXksXG4gIG9ubHk6IG9ubHlDaGlsZFxufTtcblxuZXhwb3J0cy5DaGlsZHJlbiA9IENoaWxkcmVuO1xuZXhwb3J0cy5Db21wb25lbnQgPSBDb21wb25lbnQ7XG5leHBvcnRzLlB1cmVDb21wb25lbnQgPSBQdXJlQ29tcG9uZW50O1xuZXhwb3J0cy5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzO1xuZXhwb3J0cy5jbG9uZUVsZW1lbnQgPSBjbG9uZUVsZW1lbnQkMTtcbmV4cG9ydHMuY3JlYXRlQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ7XG5leHBvcnRzLmNyZWF0ZUVsZW1lbnQgPSBjcmVhdGVFbGVtZW50JDE7XG5leHBvcnRzLmNyZWF0ZUZhY3RvcnkgPSBjcmVhdGVGYWN0b3J5O1xuZXhwb3J0cy5jcmVhdGVSZWYgPSBjcmVhdGVSZWY7XG5leHBvcnRzLmZvcndhcmRSZWYgPSBmb3J3YXJkUmVmO1xuZXhwb3J0cy5pc1ZhbGlkRWxlbWVudCA9IGlzVmFsaWRFbGVtZW50O1xuZXhwb3J0cy5sYXp5ID0gbGF6eTtcbmV4cG9ydHMubWVtbyA9IG1lbW87XG5leHBvcnRzLnVzZUNhbGxiYWNrID0gdXNlQ2FsbGJhY2s7XG5leHBvcnRzLnVzZUNvbnRleHQgPSB1c2VDb250ZXh0O1xuZXhwb3J0cy51c2VEZWJ1Z1ZhbHVlID0gdXNlRGVidWdWYWx1ZTtcbmV4cG9ydHMudXNlRWZmZWN0ID0gdXNlRWZmZWN0O1xuZXhwb3J0cy51c2VJbXBlcmF0aXZlSGFuZGxlID0gdXNlSW1wZXJhdGl2ZUhhbmRsZTtcbmV4cG9ydHMudXNlTGF5b3V0RWZmZWN0ID0gdXNlTGF5b3V0RWZmZWN0O1xuZXhwb3J0cy51c2VNZW1vID0gdXNlTWVtbztcbmV4cG9ydHMudXNlUmVkdWNlciA9IHVzZVJlZHVjZXI7XG5leHBvcnRzLnVzZVJlZiA9IHVzZVJlZjtcbmV4cG9ydHMudXNlU3RhdGUgPSB1c2VTdGF0ZTtcbmV4cG9ydHMudmVyc2lvbiA9IFJlYWN0VmVyc2lvbjtcbiAgfSkoKTtcbn1cbiIsIid1c2Ugc3RyaWN0JztcblxuaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Nqcy9yZWFjdC5wcm9kdWN0aW9uLm1pbi5qcycpO1xufSBlbHNlIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Nqcy9yZWFjdC5kZXZlbG9wbWVudC5qcycpO1xufVxuIiwiJ3VzZSBzdHJpY3QnO1xuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJykge1xuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vY2pzL3JlYWN0LWpzeC1kZXYtcnVudGltZS5wcm9kdWN0aW9uLm1pbi5qcycpO1xufSBlbHNlIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuL2Nqcy9yZWFjdC1qc3gtZGV2LXJ1bnRpbWUuZGV2ZWxvcG1lbnQuanMnKTtcbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE0LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxudmFyIHJ1bnRpbWUgPSAoZnVuY3Rpb24gKGV4cG9ydHMpIHtcbiAgXCJ1c2Ugc3RyaWN0XCI7XG5cbiAgdmFyIE9wID0gT2JqZWN0LnByb3RvdHlwZTtcbiAgdmFyIGhhc093biA9IE9wLmhhc093blByb3BlcnR5O1xuICB2YXIgdW5kZWZpbmVkOyAvLyBNb3JlIGNvbXByZXNzaWJsZSB0aGFuIHZvaWQgMC5cbiAgdmFyICRTeW1ib2wgPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgPyBTeW1ib2wgOiB7fTtcbiAgdmFyIGl0ZXJhdG9yU3ltYm9sID0gJFN5bWJvbC5pdGVyYXRvciB8fCBcIkBAaXRlcmF0b3JcIjtcbiAgdmFyIGFzeW5jSXRlcmF0b3JTeW1ib2wgPSAkU3ltYm9sLmFzeW5jSXRlcmF0b3IgfHwgXCJAQGFzeW5jSXRlcmF0b3JcIjtcbiAgdmFyIHRvU3RyaW5nVGFnU3ltYm9sID0gJFN5bWJvbC50b1N0cmluZ1RhZyB8fCBcIkBAdG9TdHJpbmdUYWdcIjtcblxuICBmdW5jdGlvbiBkZWZpbmUob2JqLCBrZXksIHZhbHVlKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgd3JpdGFibGU6IHRydWVcbiAgICB9KTtcbiAgICByZXR1cm4gb2JqW2tleV07XG4gIH1cbiAgdHJ5IHtcbiAgICAvLyBJRSA4IGhhcyBhIGJyb2tlbiBPYmplY3QuZGVmaW5lUHJvcGVydHkgdGhhdCBvbmx5IHdvcmtzIG9uIERPTSBvYmplY3RzLlxuICAgIGRlZmluZSh7fSwgXCJcIik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGRlZmluZSA9IGZ1bmN0aW9uKG9iaiwga2V5LCB2YWx1ZSkge1xuICAgICAgcmV0dXJuIG9ialtrZXldID0gdmFsdWU7XG4gICAgfTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBJZiBvdXRlckZuIHByb3ZpZGVkIGFuZCBvdXRlckZuLnByb3RvdHlwZSBpcyBhIEdlbmVyYXRvciwgdGhlbiBvdXRlckZuLnByb3RvdHlwZSBpbnN0YW5jZW9mIEdlbmVyYXRvci5cbiAgICB2YXIgcHJvdG9HZW5lcmF0b3IgPSBvdXRlckZuICYmIG91dGVyRm4ucHJvdG90eXBlIGluc3RhbmNlb2YgR2VuZXJhdG9yID8gb3V0ZXJGbiA6IEdlbmVyYXRvcjtcbiAgICB2YXIgZ2VuZXJhdG9yID0gT2JqZWN0LmNyZWF0ZShwcm90b0dlbmVyYXRvci5wcm90b3R5cGUpO1xuICAgIHZhciBjb250ZXh0ID0gbmV3IENvbnRleHQodHJ5TG9jc0xpc3QgfHwgW10pO1xuXG4gICAgLy8gVGhlIC5faW52b2tlIG1ldGhvZCB1bmlmaWVzIHRoZSBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlIC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcy5cbiAgICBnZW5lcmF0b3IuX2ludm9rZSA9IG1ha2VJbnZva2VNZXRob2QoaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9yO1xuICB9XG4gIGV4cG9ydHMud3JhcCA9IHdyYXA7XG5cbiAgLy8gVHJ5L2NhdGNoIGhlbHBlciB0byBtaW5pbWl6ZSBkZW9wdGltaXphdGlvbnMuIFJldHVybnMgYSBjb21wbGV0aW9uXG4gIC8vIHJlY29yZCBsaWtlIGNvbnRleHQudHJ5RW50cmllc1tpXS5jb21wbGV0aW9uLiBUaGlzIGludGVyZmFjZSBjb3VsZFxuICAvLyBoYXZlIGJlZW4gKGFuZCB3YXMgcHJldmlvdXNseSkgZGVzaWduZWQgdG8gdGFrZSBhIGNsb3N1cmUgdG8gYmVcbiAgLy8gaW52b2tlZCB3aXRob3V0IGFyZ3VtZW50cywgYnV0IGluIGFsbCB0aGUgY2FzZXMgd2UgY2FyZSBhYm91dCB3ZVxuICAvLyBhbHJlYWR5IGhhdmUgYW4gZXhpc3RpbmcgbWV0aG9kIHdlIHdhbnQgdG8gY2FsbCwgc28gdGhlcmUncyBubyBuZWVkXG4gIC8vIHRvIGNyZWF0ZSBhIG5ldyBmdW5jdGlvbiBvYmplY3QuIFdlIGNhbiBldmVuIGdldCBhd2F5IHdpdGggYXNzdW1pbmdcbiAgLy8gdGhlIG1ldGhvZCB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCwgc2luY2UgdGhhdCBoYXBwZW5zIHRvIGJlIHRydWVcbiAgLy8gaW4gZXZlcnkgY2FzZSwgc28gd2UgZG9uJ3QgaGF2ZSB0byB0b3VjaCB0aGUgYXJndW1lbnRzIG9iamVjdC4gVGhlXG4gIC8vIG9ubHkgYWRkaXRpb25hbCBhbGxvY2F0aW9uIHJlcXVpcmVkIGlzIHRoZSBjb21wbGV0aW9uIHJlY29yZCwgd2hpY2hcbiAgLy8gaGFzIGEgc3RhYmxlIHNoYXBlIGFuZCBzbyBob3BlZnVsbHkgc2hvdWxkIGJlIGNoZWFwIHRvIGFsbG9jYXRlLlxuICBmdW5jdGlvbiB0cnlDYXRjaChmbiwgb2JqLCBhcmcpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJub3JtYWxcIiwgYXJnOiBmbi5jYWxsKG9iaiwgYXJnKSB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJ0aHJvd1wiLCBhcmc6IGVyciB9O1xuICAgIH1cbiAgfVxuXG4gIHZhciBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0ID0gXCJzdXNwZW5kZWRTdGFydFwiO1xuICB2YXIgR2VuU3RhdGVTdXNwZW5kZWRZaWVsZCA9IFwic3VzcGVuZGVkWWllbGRcIjtcbiAgdmFyIEdlblN0YXRlRXhlY3V0aW5nID0gXCJleGVjdXRpbmdcIjtcbiAgdmFyIEdlblN0YXRlQ29tcGxldGVkID0gXCJjb21wbGV0ZWRcIjtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBvYmplY3QgZnJvbSB0aGUgaW5uZXJGbiBoYXMgdGhlIHNhbWUgZWZmZWN0IGFzXG4gIC8vIGJyZWFraW5nIG91dCBvZiB0aGUgZGlzcGF0Y2ggc3dpdGNoIHN0YXRlbWVudC5cbiAgdmFyIENvbnRpbnVlU2VudGluZWwgPSB7fTtcblxuICAvLyBEdW1teSBjb25zdHJ1Y3RvciBmdW5jdGlvbnMgdGhhdCB3ZSB1c2UgYXMgdGhlIC5jb25zdHJ1Y3RvciBhbmRcbiAgLy8gLmNvbnN0cnVjdG9yLnByb3RvdHlwZSBwcm9wZXJ0aWVzIGZvciBmdW5jdGlvbnMgdGhhdCByZXR1cm4gR2VuZXJhdG9yXG4gIC8vIG9iamVjdHMuIEZvciBmdWxsIHNwZWMgY29tcGxpYW5jZSwgeW91IG1heSB3aXNoIHRvIGNvbmZpZ3VyZSB5b3VyXG4gIC8vIG1pbmlmaWVyIG5vdCB0byBtYW5nbGUgdGhlIG5hbWVzIG9mIHRoZXNlIHR3byBmdW5jdGlvbnMuXG4gIGZ1bmN0aW9uIEdlbmVyYXRvcigpIHt9XG4gIGZ1bmN0aW9uIEdlbmVyYXRvckZ1bmN0aW9uKCkge31cbiAgZnVuY3Rpb24gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoKSB7fVxuXG4gIC8vIFRoaXMgaXMgYSBwb2x5ZmlsbCBmb3IgJUl0ZXJhdG9yUHJvdG90eXBlJSBmb3IgZW52aXJvbm1lbnRzIHRoYXRcbiAgLy8gZG9uJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC5cbiAgdmFyIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG4gIEl0ZXJhdG9yUHJvdG90eXBlW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgZ2V0UHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Y7XG4gIHZhciBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSA9IGdldFByb3RvICYmIGdldFByb3RvKGdldFByb3RvKHZhbHVlcyhbXSkpKTtcbiAgaWYgKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlICYmXG4gICAgICBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSAhPT0gT3AgJiZcbiAgICAgIGhhc093bi5jYWxsKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlLCBpdGVyYXRvclN5bWJvbCkpIHtcbiAgICAvLyBUaGlzIGVudmlyb25tZW50IGhhcyBhIG5hdGl2ZSAlSXRlcmF0b3JQcm90b3R5cGUlOyB1c2UgaXQgaW5zdGVhZFxuICAgIC8vIG9mIHRoZSBwb2x5ZmlsbC5cbiAgICBJdGVyYXRvclByb3RvdHlwZSA9IE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG5cbiAgdmFyIEdwID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUucHJvdG90eXBlID1cbiAgICBHZW5lcmF0b3IucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShJdGVyYXRvclByb3RvdHlwZSk7XG4gIEdlbmVyYXRvckZ1bmN0aW9uLnByb3RvdHlwZSA9IEdwLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb247XG4gIEdlbmVyYXRvckZ1bmN0aW9uLmRpc3BsYXlOYW1lID0gZGVmaW5lKFxuICAgIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLFxuICAgIHRvU3RyaW5nVGFnU3ltYm9sLFxuICAgIFwiR2VuZXJhdG9yRnVuY3Rpb25cIlxuICApO1xuXG4gIC8vIEhlbHBlciBmb3IgZGVmaW5pbmcgdGhlIC5uZXh0LCAudGhyb3csIGFuZCAucmV0dXJuIG1ldGhvZHMgb2YgdGhlXG4gIC8vIEl0ZXJhdG9yIGludGVyZmFjZSBpbiB0ZXJtcyBvZiBhIHNpbmdsZSAuX2ludm9rZSBtZXRob2QuXG4gIGZ1bmN0aW9uIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhwcm90b3R5cGUpIHtcbiAgICBbXCJuZXh0XCIsIFwidGhyb3dcIiwgXCJyZXR1cm5cIl0uZm9yRWFjaChmdW5jdGlvbihtZXRob2QpIHtcbiAgICAgIGRlZmluZShwcm90b3R5cGUsIG1ldGhvZCwgZnVuY3Rpb24oYXJnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnZva2UobWV0aG9kLCBhcmcpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRzLmlzR2VuZXJhdG9yRnVuY3Rpb24gPSBmdW5jdGlvbihnZW5GdW4pIHtcbiAgICB2YXIgY3RvciA9IHR5cGVvZiBnZW5GdW4gPT09IFwiZnVuY3Rpb25cIiAmJiBnZW5GdW4uY29uc3RydWN0b3I7XG4gICAgcmV0dXJuIGN0b3JcbiAgICAgID8gY3RvciA9PT0gR2VuZXJhdG9yRnVuY3Rpb24gfHxcbiAgICAgICAgLy8gRm9yIHRoZSBuYXRpdmUgR2VuZXJhdG9yRnVuY3Rpb24gY29uc3RydWN0b3IsIHRoZSBiZXN0IHdlIGNhblxuICAgICAgICAvLyBkbyBpcyB0byBjaGVjayBpdHMgLm5hbWUgcHJvcGVydHkuXG4gICAgICAgIChjdG9yLmRpc3BsYXlOYW1lIHx8IGN0b3IubmFtZSkgPT09IFwiR2VuZXJhdG9yRnVuY3Rpb25cIlxuICAgICAgOiBmYWxzZTtcbiAgfTtcblxuICBleHBvcnRzLm1hcmsgPSBmdW5jdGlvbihnZW5GdW4pIHtcbiAgICBpZiAoT2JqZWN0LnNldFByb3RvdHlwZU9mKSB7XG4gICAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoZ2VuRnVuLCBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGdlbkZ1bi5fX3Byb3RvX18gPSBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZTtcbiAgICAgIGRlZmluZShnZW5GdW4sIHRvU3RyaW5nVGFnU3ltYm9sLCBcIkdlbmVyYXRvckZ1bmN0aW9uXCIpO1xuICAgIH1cbiAgICBnZW5GdW4ucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShHcCk7XG4gICAgcmV0dXJuIGdlbkZ1bjtcbiAgfTtcblxuICAvLyBXaXRoaW4gdGhlIGJvZHkgb2YgYW55IGFzeW5jIGZ1bmN0aW9uLCBgYXdhaXQgeGAgaXMgdHJhbnNmb3JtZWQgdG9cbiAgLy8gYHlpZWxkIHJlZ2VuZXJhdG9yUnVudGltZS5hd3JhcCh4KWAsIHNvIHRoYXQgdGhlIHJ1bnRpbWUgY2FuIHRlc3RcbiAgLy8gYGhhc093bi5jYWxsKHZhbHVlLCBcIl9fYXdhaXRcIilgIHRvIGRldGVybWluZSBpZiB0aGUgeWllbGRlZCB2YWx1ZSBpc1xuICAvLyBtZWFudCB0byBiZSBhd2FpdGVkLlxuICBleHBvcnRzLmF3cmFwID0gZnVuY3Rpb24oYXJnKSB7XG4gICAgcmV0dXJuIHsgX19hd2FpdDogYXJnIH07XG4gIH07XG5cbiAgZnVuY3Rpb24gQXN5bmNJdGVyYXRvcihnZW5lcmF0b3IsIFByb21pc2VJbXBsKSB7XG4gICAgZnVuY3Rpb24gaW52b2tlKG1ldGhvZCwgYXJnLCByZXNvbHZlLCByZWplY3QpIHtcbiAgICAgIHZhciByZWNvcmQgPSB0cnlDYXRjaChnZW5lcmF0b3JbbWV0aG9kXSwgZ2VuZXJhdG9yLCBhcmcpO1xuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgcmVqZWN0KHJlY29yZC5hcmcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIHJlc3VsdCA9IHJlY29yZC5hcmc7XG4gICAgICAgIHZhciB2YWx1ZSA9IHJlc3VsdC52YWx1ZTtcbiAgICAgICAgaWYgKHZhbHVlICYmXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIgJiZcbiAgICAgICAgICAgIGhhc093bi5jYWxsKHZhbHVlLCBcIl9fYXdhaXRcIikpIHtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZUltcGwucmVzb2x2ZSh2YWx1ZS5fX2F3YWl0KS50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICBpbnZva2UoXCJuZXh0XCIsIHZhbHVlLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikge1xuICAgICAgICAgICAgaW52b2tlKFwidGhyb3dcIiwgZXJyLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFByb21pc2VJbXBsLnJlc29sdmUodmFsdWUpLnRoZW4oZnVuY3Rpb24odW53cmFwcGVkKSB7XG4gICAgICAgICAgLy8gV2hlbiBhIHlpZWxkZWQgUHJvbWlzZSBpcyByZXNvbHZlZCwgaXRzIGZpbmFsIHZhbHVlIGJlY29tZXNcbiAgICAgICAgICAvLyB0aGUgLnZhbHVlIG9mIHRoZSBQcm9taXNlPHt2YWx1ZSxkb25lfT4gcmVzdWx0IGZvciB0aGVcbiAgICAgICAgICAvLyBjdXJyZW50IGl0ZXJhdGlvbi5cbiAgICAgICAgICByZXN1bHQudmFsdWUgPSB1bndyYXBwZWQ7XG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgICB9LCBmdW5jdGlvbihlcnJvcikge1xuICAgICAgICAgIC8vIElmIGEgcmVqZWN0ZWQgUHJvbWlzZSB3YXMgeWllbGRlZCwgdGhyb3cgdGhlIHJlamVjdGlvbiBiYWNrXG4gICAgICAgICAgLy8gaW50byB0aGUgYXN5bmMgZ2VuZXJhdG9yIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSBoYW5kbGVkIHRoZXJlLlxuICAgICAgICAgIHJldHVybiBpbnZva2UoXCJ0aHJvd1wiLCBlcnJvciwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIHByZXZpb3VzUHJvbWlzZTtcblxuICAgIGZ1bmN0aW9uIGVucXVldWUobWV0aG9kLCBhcmcpIHtcbiAgICAgIGZ1bmN0aW9uIGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2VJbXBsKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICAgIGludm9rZShtZXRob2QsIGFyZywgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwcmV2aW91c1Byb21pc2UgPVxuICAgICAgICAvLyBJZiBlbnF1ZXVlIGhhcyBiZWVuIGNhbGxlZCBiZWZvcmUsIHRoZW4gd2Ugd2FudCB0byB3YWl0IHVudGlsXG4gICAgICAgIC8vIGFsbCBwcmV2aW91cyBQcm9taXNlcyBoYXZlIGJlZW4gcmVzb2x2ZWQgYmVmb3JlIGNhbGxpbmcgaW52b2tlLFxuICAgICAgICAvLyBzbyB0aGF0IHJlc3VsdHMgYXJlIGFsd2F5cyBkZWxpdmVyZWQgaW4gdGhlIGNvcnJlY3Qgb3JkZXIuIElmXG4gICAgICAgIC8vIGVucXVldWUgaGFzIG5vdCBiZWVuIGNhbGxlZCBiZWZvcmUsIHRoZW4gaXQgaXMgaW1wb3J0YW50IHRvXG4gICAgICAgIC8vIGNhbGwgaW52b2tlIGltbWVkaWF0ZWx5LCB3aXRob3V0IHdhaXRpbmcgb24gYSBjYWxsYmFjayB0byBmaXJlLFxuICAgICAgICAvLyBzbyB0aGF0IHRoZSBhc3luYyBnZW5lcmF0b3IgZnVuY3Rpb24gaGFzIHRoZSBvcHBvcnR1bml0eSB0byBkb1xuICAgICAgICAvLyBhbnkgbmVjZXNzYXJ5IHNldHVwIGluIGEgcHJlZGljdGFibGUgd2F5LiBUaGlzIHByZWRpY3RhYmlsaXR5XG4gICAgICAgIC8vIGlzIHdoeSB0aGUgUHJvbWlzZSBjb25zdHJ1Y3RvciBzeW5jaHJvbm91c2x5IGludm9rZXMgaXRzXG4gICAgICAgIC8vIGV4ZWN1dG9yIGNhbGxiYWNrLCBhbmQgd2h5IGFzeW5jIGZ1bmN0aW9ucyBzeW5jaHJvbm91c2x5XG4gICAgICAgIC8vIGV4ZWN1dGUgY29kZSBiZWZvcmUgdGhlIGZpcnN0IGF3YWl0LiBTaW5jZSB3ZSBpbXBsZW1lbnQgc2ltcGxlXG4gICAgICAgIC8vIGFzeW5jIGZ1bmN0aW9ucyBpbiB0ZXJtcyBvZiBhc3luYyBnZW5lcmF0b3JzLCBpdCBpcyBlc3BlY2lhbGx5XG4gICAgICAgIC8vIGltcG9ydGFudCB0byBnZXQgdGhpcyByaWdodCwgZXZlbiB0aG91Z2ggaXQgcmVxdWlyZXMgY2FyZS5cbiAgICAgICAgcHJldmlvdXNQcm9taXNlID8gcHJldmlvdXNQcm9taXNlLnRoZW4oXG4gICAgICAgICAgY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcsXG4gICAgICAgICAgLy8gQXZvaWQgcHJvcGFnYXRpbmcgZmFpbHVyZXMgdG8gUHJvbWlzZXMgcmV0dXJuZWQgYnkgbGF0ZXJcbiAgICAgICAgICAvLyBpbnZvY2F0aW9ucyBvZiB0aGUgaXRlcmF0b3IuXG4gICAgICAgICAgY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmdcbiAgICAgICAgKSA6IGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnKCk7XG4gICAgfVxuXG4gICAgLy8gRGVmaW5lIHRoZSB1bmlmaWVkIGhlbHBlciBtZXRob2QgdGhhdCBpcyB1c2VkIHRvIGltcGxlbWVudCAubmV4dCxcbiAgICAvLyAudGhyb3csIGFuZCAucmV0dXJuIChzZWUgZGVmaW5lSXRlcmF0b3JNZXRob2RzKS5cbiAgICB0aGlzLl9pbnZva2UgPSBlbnF1ZXVlO1xuICB9XG5cbiAgZGVmaW5lSXRlcmF0b3JNZXRob2RzKEFzeW5jSXRlcmF0b3IucHJvdG90eXBlKTtcbiAgQXN5bmNJdGVyYXRvci5wcm90b3R5cGVbYXN5bmNJdGVyYXRvclN5bWJvbF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG4gIGV4cG9ydHMuQXN5bmNJdGVyYXRvciA9IEFzeW5jSXRlcmF0b3I7XG5cbiAgLy8gTm90ZSB0aGF0IHNpbXBsZSBhc3luYyBmdW5jdGlvbnMgYXJlIGltcGxlbWVudGVkIG9uIHRvcCBvZlxuICAvLyBBc3luY0l0ZXJhdG9yIG9iamVjdHM7IHRoZXkganVzdCByZXR1cm4gYSBQcm9taXNlIGZvciB0aGUgdmFsdWUgb2ZcbiAgLy8gdGhlIGZpbmFsIHJlc3VsdCBwcm9kdWNlZCBieSB0aGUgaXRlcmF0b3IuXG4gIGV4cG9ydHMuYXN5bmMgPSBmdW5jdGlvbihpbm5lckZuLCBvdXRlckZuLCBzZWxmLCB0cnlMb2NzTGlzdCwgUHJvbWlzZUltcGwpIHtcbiAgICBpZiAoUHJvbWlzZUltcGwgPT09IHZvaWQgMCkgUHJvbWlzZUltcGwgPSBQcm9taXNlO1xuXG4gICAgdmFyIGl0ZXIgPSBuZXcgQXN5bmNJdGVyYXRvcihcbiAgICAgIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpLFxuICAgICAgUHJvbWlzZUltcGxcbiAgICApO1xuXG4gICAgcmV0dXJuIGV4cG9ydHMuaXNHZW5lcmF0b3JGdW5jdGlvbihvdXRlckZuKVxuICAgICAgPyBpdGVyIC8vIElmIG91dGVyRm4gaXMgYSBnZW5lcmF0b3IsIHJldHVybiB0aGUgZnVsbCBpdGVyYXRvci5cbiAgICAgIDogaXRlci5uZXh0KCkudGhlbihmdW5jdGlvbihyZXN1bHQpIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0LmRvbmUgPyByZXN1bHQudmFsdWUgOiBpdGVyLm5leHQoKTtcbiAgICAgICAgfSk7XG4gIH07XG5cbiAgZnVuY3Rpb24gbWFrZUludm9rZU1ldGhvZChpbm5lckZuLCBzZWxmLCBjb250ZXh0KSB7XG4gICAgdmFyIHN0YXRlID0gR2VuU3RhdGVTdXNwZW5kZWRTdGFydDtcblxuICAgIHJldHVybiBmdW5jdGlvbiBpbnZva2UobWV0aG9kLCBhcmcpIHtcbiAgICAgIGlmIChzdGF0ZSA9PT0gR2VuU3RhdGVFeGVjdXRpbmcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZ1wiKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZUNvbXBsZXRlZCkge1xuICAgICAgICBpZiAobWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICB0aHJvdyBhcmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCZSBmb3JnaXZpbmcsIHBlciAyNS4zLjMuMy4zIG9mIHRoZSBzcGVjOlxuICAgICAgICAvLyBodHRwczovL3Blb3BsZS5tb3ppbGxhLm9yZy9+am9yZW5kb3JmZi9lczYtZHJhZnQuaHRtbCNzZWMtZ2VuZXJhdG9ycmVzdW1lXG4gICAgICAgIHJldHVybiBkb25lUmVzdWx0KCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRleHQubWV0aG9kID0gbWV0aG9kO1xuICAgICAgY29udGV4dC5hcmcgPSBhcmc7XG5cbiAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIHZhciBkZWxlZ2F0ZSA9IGNvbnRleHQuZGVsZWdhdGU7XG4gICAgICAgIGlmIChkZWxlZ2F0ZSkge1xuICAgICAgICAgIHZhciBkZWxlZ2F0ZVJlc3VsdCA9IG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpO1xuICAgICAgICAgIGlmIChkZWxlZ2F0ZVJlc3VsdCkge1xuICAgICAgICAgICAgaWYgKGRlbGVnYXRlUmVzdWx0ID09PSBDb250aW51ZVNlbnRpbmVsKSBjb250aW51ZTtcbiAgICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZVJlc3VsdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29udGV4dC5tZXRob2QgPT09IFwibmV4dFwiKSB7XG4gICAgICAgICAgLy8gU2V0dGluZyBjb250ZXh0Ll9zZW50IGZvciBsZWdhY3kgc3VwcG9ydCBvZiBCYWJlbCdzXG4gICAgICAgICAgLy8gZnVuY3Rpb24uc2VudCBpbXBsZW1lbnRhdGlvbi5cbiAgICAgICAgICBjb250ZXh0LnNlbnQgPSBjb250ZXh0Ll9zZW50ID0gY29udGV4dC5hcmc7XG5cbiAgICAgICAgfSBlbHNlIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0KSB7XG4gICAgICAgICAgICBzdGF0ZSA9IEdlblN0YXRlQ29tcGxldGVkO1xuICAgICAgICAgICAgdGhyb3cgY29udGV4dC5hcmc7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29udGV4dC5kaXNwYXRjaEV4Y2VwdGlvbihjb250ZXh0LmFyZyk7XG5cbiAgICAgICAgfSBlbHNlIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJyZXR1cm5cIikge1xuICAgICAgICAgIGNvbnRleHQuYWJydXB0KFwicmV0dXJuXCIsIGNvbnRleHQuYXJnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRlID0gR2VuU3RhdGVFeGVjdXRpbmc7XG5cbiAgICAgICAgdmFyIHJlY29yZCA9IHRyeUNhdGNoKGlubmVyRm4sIHNlbGYsIGNvbnRleHQpO1xuICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwibm9ybWFsXCIpIHtcbiAgICAgICAgICAvLyBJZiBhbiBleGNlcHRpb24gaXMgdGhyb3duIGZyb20gaW5uZXJGbiwgd2UgbGVhdmUgc3RhdGUgPT09XG4gICAgICAgICAgLy8gR2VuU3RhdGVFeGVjdXRpbmcgYW5kIGxvb3AgYmFjayBmb3IgYW5vdGhlciBpbnZvY2F0aW9uLlxuICAgICAgICAgIHN0YXRlID0gY29udGV4dC5kb25lXG4gICAgICAgICAgICA/IEdlblN0YXRlQ29tcGxldGVkXG4gICAgICAgICAgICA6IEdlblN0YXRlU3VzcGVuZGVkWWllbGQ7XG5cbiAgICAgICAgICBpZiAocmVjb3JkLmFyZyA9PT0gQ29udGludWVTZW50aW5lbCkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHZhbHVlOiByZWNvcmQuYXJnLFxuICAgICAgICAgICAgZG9uZTogY29udGV4dC5kb25lXG4gICAgICAgICAgfTtcblxuICAgICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICBzdGF0ZSA9IEdlblN0YXRlQ29tcGxldGVkO1xuICAgICAgICAgIC8vIERpc3BhdGNoIHRoZSBleGNlcHRpb24gYnkgbG9vcGluZyBiYWNrIGFyb3VuZCB0byB0aGVcbiAgICAgICAgICAvLyBjb250ZXh0LmRpc3BhdGNoRXhjZXB0aW9uKGNvbnRleHQuYXJnKSBjYWxsIGFib3ZlLlxuICAgICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvLyBDYWxsIGRlbGVnYXRlLml0ZXJhdG9yW2NvbnRleHQubWV0aG9kXShjb250ZXh0LmFyZykgYW5kIGhhbmRsZSB0aGVcbiAgLy8gcmVzdWx0LCBlaXRoZXIgYnkgcmV0dXJuaW5nIGEgeyB2YWx1ZSwgZG9uZSB9IHJlc3VsdCBmcm9tIHRoZVxuICAvLyBkZWxlZ2F0ZSBpdGVyYXRvciwgb3IgYnkgbW9kaWZ5aW5nIGNvbnRleHQubWV0aG9kIGFuZCBjb250ZXh0LmFyZyxcbiAgLy8gc2V0dGluZyBjb250ZXh0LmRlbGVnYXRlIHRvIG51bGwsIGFuZCByZXR1cm5pbmcgdGhlIENvbnRpbnVlU2VudGluZWwuXG4gIGZ1bmN0aW9uIG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpIHtcbiAgICB2YXIgbWV0aG9kID0gZGVsZWdhdGUuaXRlcmF0b3JbY29udGV4dC5tZXRob2RdO1xuICAgIGlmIChtZXRob2QgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQSAudGhyb3cgb3IgLnJldHVybiB3aGVuIHRoZSBkZWxlZ2F0ZSBpdGVyYXRvciBoYXMgbm8gLnRocm93XG4gICAgICAvLyBtZXRob2QgYWx3YXlzIHRlcm1pbmF0ZXMgdGhlIHlpZWxkKiBsb29wLlxuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG5cbiAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgIC8vIE5vdGU6IFtcInJldHVyblwiXSBtdXN0IGJlIHVzZWQgZm9yIEVTMyBwYXJzaW5nIGNvbXBhdGliaWxpdHkuXG4gICAgICAgIGlmIChkZWxlZ2F0ZS5pdGVyYXRvcltcInJldHVyblwiXSkge1xuICAgICAgICAgIC8vIElmIHRoZSBkZWxlZ2F0ZSBpdGVyYXRvciBoYXMgYSByZXR1cm4gbWV0aG9kLCBnaXZlIGl0IGFcbiAgICAgICAgICAvLyBjaGFuY2UgdG8gY2xlYW4gdXAuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInJldHVyblwiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gdW5kZWZpbmVkO1xuICAgICAgICAgIG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICAgIC8vIElmIG1heWJlSW52b2tlRGVsZWdhdGUoY29udGV4dCkgY2hhbmdlZCBjb250ZXh0Lm1ldGhvZCBmcm9tXG4gICAgICAgICAgICAvLyBcInJldHVyblwiIHRvIFwidGhyb3dcIiwgbGV0IHRoYXQgb3ZlcnJpZGUgdGhlIFR5cGVFcnJvciBiZWxvdy5cbiAgICAgICAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgICBjb250ZXh0LmFyZyA9IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgXCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICd0aHJvdycgbWV0aG9kXCIpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICB2YXIgcmVjb3JkID0gdHJ5Q2F0Y2gobWV0aG9kLCBkZWxlZ2F0ZS5pdGVyYXRvciwgY29udGV4dC5hcmcpO1xuXG4gICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgY29udGV4dC5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICB2YXIgaW5mbyA9IHJlY29yZC5hcmc7XG5cbiAgICBpZiAoISBpbmZvKSB7XG4gICAgICBjb250ZXh0Lm1ldGhvZCA9IFwidGhyb3dcIjtcbiAgICAgIGNvbnRleHQuYXJnID0gbmV3IFR5cGVFcnJvcihcIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0XCIpO1xuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICBpZiAoaW5mby5kb25lKSB7XG4gICAgICAvLyBBc3NpZ24gdGhlIHJlc3VsdCBvZiB0aGUgZmluaXNoZWQgZGVsZWdhdGUgdG8gdGhlIHRlbXBvcmFyeVxuICAgICAgLy8gdmFyaWFibGUgc3BlY2lmaWVkIGJ5IGRlbGVnYXRlLnJlc3VsdE5hbWUgKHNlZSBkZWxlZ2F0ZVlpZWxkKS5cbiAgICAgIGNvbnRleHRbZGVsZWdhdGUucmVzdWx0TmFtZV0gPSBpbmZvLnZhbHVlO1xuXG4gICAgICAvLyBSZXN1bWUgZXhlY3V0aW9uIGF0IHRoZSBkZXNpcmVkIGxvY2F0aW9uIChzZWUgZGVsZWdhdGVZaWVsZCkuXG4gICAgICBjb250ZXh0Lm5leHQgPSBkZWxlZ2F0ZS5uZXh0TG9jO1xuXG4gICAgICAvLyBJZiBjb250ZXh0Lm1ldGhvZCB3YXMgXCJ0aHJvd1wiIGJ1dCB0aGUgZGVsZWdhdGUgaGFuZGxlZCB0aGVcbiAgICAgIC8vIGV4Y2VwdGlvbiwgbGV0IHRoZSBvdXRlciBnZW5lcmF0b3IgcHJvY2VlZCBub3JtYWxseS4gSWZcbiAgICAgIC8vIGNvbnRleHQubWV0aG9kIHdhcyBcIm5leHRcIiwgZm9yZ2V0IGNvbnRleHQuYXJnIHNpbmNlIGl0IGhhcyBiZWVuXG4gICAgICAvLyBcImNvbnN1bWVkXCIgYnkgdGhlIGRlbGVnYXRlIGl0ZXJhdG9yLiBJZiBjb250ZXh0Lm1ldGhvZCB3YXNcbiAgICAgIC8vIFwicmV0dXJuXCIsIGFsbG93IHRoZSBvcmlnaW5hbCAucmV0dXJuIGNhbGwgdG8gY29udGludWUgaW4gdGhlXG4gICAgICAvLyBvdXRlciBnZW5lcmF0b3IuXG4gICAgICBpZiAoY29udGV4dC5tZXRob2QgIT09IFwicmV0dXJuXCIpIHtcbiAgICAgICAgY29udGV4dC5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgY29udGV4dC5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUmUteWllbGQgdGhlIHJlc3VsdCByZXR1cm5lZCBieSB0aGUgZGVsZWdhdGUgbWV0aG9kLlxuICAgICAgcmV0dXJuIGluZm87XG4gICAgfVxuXG4gICAgLy8gVGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGlzIGZpbmlzaGVkLCBzbyBmb3JnZXQgaXQgYW5kIGNvbnRpbnVlIHdpdGhcbiAgICAvLyB0aGUgb3V0ZXIgZ2VuZXJhdG9yLlxuICAgIGNvbnRleHQuZGVsZWdhdGUgPSBudWxsO1xuICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICB9XG5cbiAgLy8gRGVmaW5lIEdlbmVyYXRvci5wcm90b3R5cGUue25leHQsdGhyb3cscmV0dXJufSBpbiB0ZXJtcyBvZiB0aGVcbiAgLy8gdW5pZmllZCAuX2ludm9rZSBoZWxwZXIgbWV0aG9kLlxuICBkZWZpbmVJdGVyYXRvck1ldGhvZHMoR3ApO1xuXG4gIGRlZmluZShHcCwgdG9TdHJpbmdUYWdTeW1ib2wsIFwiR2VuZXJhdG9yXCIpO1xuXG4gIC8vIEEgR2VuZXJhdG9yIHNob3VsZCBhbHdheXMgcmV0dXJuIGl0c2VsZiBhcyB0aGUgaXRlcmF0b3Igb2JqZWN0IHdoZW4gdGhlXG4gIC8vIEBAaXRlcmF0b3IgZnVuY3Rpb24gaXMgY2FsbGVkIG9uIGl0LiBTb21lIGJyb3dzZXJzJyBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlXG4gIC8vIGl0ZXJhdG9yIHByb3RvdHlwZSBjaGFpbiBpbmNvcnJlY3RseSBpbXBsZW1lbnQgdGhpcywgY2F1c2luZyB0aGUgR2VuZXJhdG9yXG4gIC8vIG9iamVjdCB0byBub3QgYmUgcmV0dXJuZWQgZnJvbSB0aGlzIGNhbGwuIFRoaXMgZW5zdXJlcyB0aGF0IGRvZXNuJ3QgaGFwcGVuLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlZ2VuZXJhdG9yL2lzc3Vlcy8yNzQgZm9yIG1vcmUgZGV0YWlscy5cbiAgR3BbaXRlcmF0b3JTeW1ib2xdID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgR3AudG9TdHJpbmcgPSBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gXCJbb2JqZWN0IEdlbmVyYXRvcl1cIjtcbiAgfTtcblxuICBmdW5jdGlvbiBwdXNoVHJ5RW50cnkobG9jcykge1xuICAgIHZhciBlbnRyeSA9IHsgdHJ5TG9jOiBsb2NzWzBdIH07XG5cbiAgICBpZiAoMSBpbiBsb2NzKSB7XG4gICAgICBlbnRyeS5jYXRjaExvYyA9IGxvY3NbMV07XG4gICAgfVxuXG4gICAgaWYgKDIgaW4gbG9jcykge1xuICAgICAgZW50cnkuZmluYWxseUxvYyA9IGxvY3NbMl07XG4gICAgICBlbnRyeS5hZnRlckxvYyA9IGxvY3NbM107XG4gICAgfVxuXG4gICAgdGhpcy50cnlFbnRyaWVzLnB1c2goZW50cnkpO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVzZXRUcnlFbnRyeShlbnRyeSkge1xuICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uIHx8IHt9O1xuICAgIHJlY29yZC50eXBlID0gXCJub3JtYWxcIjtcbiAgICBkZWxldGUgcmVjb3JkLmFyZztcbiAgICBlbnRyeS5jb21wbGV0aW9uID0gcmVjb3JkO1xuICB9XG5cbiAgZnVuY3Rpb24gQ29udGV4dCh0cnlMb2NzTGlzdCkge1xuICAgIC8vIFRoZSByb290IGVudHJ5IG9iamVjdCAoZWZmZWN0aXZlbHkgYSB0cnkgc3RhdGVtZW50IHdpdGhvdXQgYSBjYXRjaFxuICAgIC8vIG9yIGEgZmluYWxseSBibG9jaykgZ2l2ZXMgdXMgYSBwbGFjZSB0byBzdG9yZSB2YWx1ZXMgdGhyb3duIGZyb21cbiAgICAvLyBsb2NhdGlvbnMgd2hlcmUgdGhlcmUgaXMgbm8gZW5jbG9zaW5nIHRyeSBzdGF0ZW1lbnQuXG4gICAgdGhpcy50cnlFbnRyaWVzID0gW3sgdHJ5TG9jOiBcInJvb3RcIiB9XTtcbiAgICB0cnlMb2NzTGlzdC5mb3JFYWNoKHB1c2hUcnlFbnRyeSwgdGhpcyk7XG4gICAgdGhpcy5yZXNldCh0cnVlKTtcbiAgfVxuXG4gIGV4cG9ydHMua2V5cyA9IGZ1bmN0aW9uKG9iamVjdCkge1xuICAgIHZhciBrZXlzID0gW107XG4gICAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgfVxuICAgIGtleXMucmV2ZXJzZSgpO1xuXG4gICAgLy8gUmF0aGVyIHRoYW4gcmV0dXJuaW5nIGFuIG9iamVjdCB3aXRoIGEgbmV4dCBtZXRob2QsIHdlIGtlZXBcbiAgICAvLyB0aGluZ3Mgc2ltcGxlIGFuZCByZXR1cm4gdGhlIG5leHQgZnVuY3Rpb24gaXRzZWxmLlxuICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgd2hpbGUgKGtleXMubGVuZ3RoKSB7XG4gICAgICAgIHZhciBrZXkgPSBrZXlzLnBvcCgpO1xuICAgICAgICBpZiAoa2V5IGluIG9iamVjdCkge1xuICAgICAgICAgIG5leHQudmFsdWUgPSBrZXk7XG4gICAgICAgICAgbmV4dC5kb25lID0gZmFsc2U7XG4gICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVG8gYXZvaWQgY3JlYXRpbmcgYW4gYWRkaXRpb25hbCBvYmplY3QsIHdlIGp1c3QgaGFuZyB0aGUgLnZhbHVlXG4gICAgICAvLyBhbmQgLmRvbmUgcHJvcGVydGllcyBvZmYgdGhlIG5leHQgZnVuY3Rpb24gb2JqZWN0IGl0c2VsZi4gVGhpc1xuICAgICAgLy8gYWxzbyBlbnN1cmVzIHRoYXQgdGhlIG1pbmlmaWVyIHdpbGwgbm90IGFub255bWl6ZSB0aGUgZnVuY3Rpb24uXG4gICAgICBuZXh0LmRvbmUgPSB0cnVlO1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfTtcbiAgfTtcblxuICBmdW5jdGlvbiB2YWx1ZXMoaXRlcmFibGUpIHtcbiAgICBpZiAoaXRlcmFibGUpIHtcbiAgICAgIHZhciBpdGVyYXRvck1ldGhvZCA9IGl0ZXJhYmxlW2l0ZXJhdG9yU3ltYm9sXTtcbiAgICAgIGlmIChpdGVyYXRvck1ldGhvZCkge1xuICAgICAgICByZXR1cm4gaXRlcmF0b3JNZXRob2QuY2FsbChpdGVyYWJsZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgaXRlcmFibGUubmV4dCA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgIHJldHVybiBpdGVyYWJsZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFpc05hTihpdGVyYWJsZS5sZW5ndGgpKSB7XG4gICAgICAgIHZhciBpID0gLTEsIG5leHQgPSBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgIHdoaWxlICgrK2kgPCBpdGVyYWJsZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmIChoYXNPd24uY2FsbChpdGVyYWJsZSwgaSkpIHtcbiAgICAgICAgICAgICAgbmV4dC52YWx1ZSA9IGl0ZXJhYmxlW2ldO1xuICAgICAgICAgICAgICBuZXh0LmRvbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbmV4dC52YWx1ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICBuZXh0LmRvbmUgPSB0cnVlO1xuXG4gICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIG5leHQubmV4dCA9IG5leHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIGFuIGl0ZXJhdG9yIHdpdGggbm8gdmFsdWVzLlxuICAgIHJldHVybiB7IG5leHQ6IGRvbmVSZXN1bHQgfTtcbiAgfVxuICBleHBvcnRzLnZhbHVlcyA9IHZhbHVlcztcblxuICBmdW5jdGlvbiBkb25lUmVzdWx0KCkge1xuICAgIHJldHVybiB7IHZhbHVlOiB1bmRlZmluZWQsIGRvbmU6IHRydWUgfTtcbiAgfVxuXG4gIENvbnRleHQucHJvdG90eXBlID0ge1xuICAgIGNvbnN0cnVjdG9yOiBDb250ZXh0LFxuXG4gICAgcmVzZXQ6IGZ1bmN0aW9uKHNraXBUZW1wUmVzZXQpIHtcbiAgICAgIHRoaXMucHJldiA9IDA7XG4gICAgICB0aGlzLm5leHQgPSAwO1xuICAgICAgLy8gUmVzZXR0aW5nIGNvbnRleHQuX3NlbnQgZm9yIGxlZ2FjeSBzdXBwb3J0IG9mIEJhYmVsJ3NcbiAgICAgIC8vIGZ1bmN0aW9uLnNlbnQgaW1wbGVtZW50YXRpb24uXG4gICAgICB0aGlzLnNlbnQgPSB0aGlzLl9zZW50ID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy5kb25lID0gZmFsc2U7XG4gICAgICB0aGlzLmRlbGVnYXRlID0gbnVsbDtcblxuICAgICAgdGhpcy5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgIHRoaXMuYXJnID0gdW5kZWZpbmVkO1xuXG4gICAgICB0aGlzLnRyeUVudHJpZXMuZm9yRWFjaChyZXNldFRyeUVudHJ5KTtcblxuICAgICAgaWYgKCFza2lwVGVtcFJlc2V0KSB7XG4gICAgICAgIGZvciAodmFyIG5hbWUgaW4gdGhpcykge1xuICAgICAgICAgIC8vIE5vdCBzdXJlIGFib3V0IHRoZSBvcHRpbWFsIG9yZGVyIG9mIHRoZXNlIGNvbmRpdGlvbnM6XG4gICAgICAgICAgaWYgKG5hbWUuY2hhckF0KDApID09PSBcInRcIiAmJlxuICAgICAgICAgICAgICBoYXNPd24uY2FsbCh0aGlzLCBuYW1lKSAmJlxuICAgICAgICAgICAgICAhaXNOYU4oK25hbWUuc2xpY2UoMSkpKSB7XG4gICAgICAgICAgICB0aGlzW25hbWVdID0gdW5kZWZpbmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBzdG9wOiBmdW5jdGlvbigpIHtcbiAgICAgIHRoaXMuZG9uZSA9IHRydWU7XG5cbiAgICAgIHZhciByb290RW50cnkgPSB0aGlzLnRyeUVudHJpZXNbMF07XG4gICAgICB2YXIgcm9vdFJlY29yZCA9IHJvb3RFbnRyeS5jb21wbGV0aW9uO1xuICAgICAgaWYgKHJvb3RSZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgIHRocm93IHJvb3RSZWNvcmQuYXJnO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5ydmFsO1xuICAgIH0sXG5cbiAgICBkaXNwYXRjaEV4Y2VwdGlvbjogZnVuY3Rpb24oZXhjZXB0aW9uKSB7XG4gICAgICBpZiAodGhpcy5kb25lKSB7XG4gICAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbnRleHQgPSB0aGlzO1xuICAgICAgZnVuY3Rpb24gaGFuZGxlKGxvYywgY2F1Z2h0KSB7XG4gICAgICAgIHJlY29yZC50eXBlID0gXCJ0aHJvd1wiO1xuICAgICAgICByZWNvcmQuYXJnID0gZXhjZXB0aW9uO1xuICAgICAgICBjb250ZXh0Lm5leHQgPSBsb2M7XG5cbiAgICAgICAgaWYgKGNhdWdodCkge1xuICAgICAgICAgIC8vIElmIHRoZSBkaXNwYXRjaGVkIGV4Y2VwdGlvbiB3YXMgY2F1Z2h0IGJ5IGEgY2F0Y2ggYmxvY2ssXG4gICAgICAgICAgLy8gdGhlbiBsZXQgdGhhdCBjYXRjaCBibG9jayBoYW5kbGUgdGhlIGV4Y2VwdGlvbiBub3JtYWxseS5cbiAgICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICEhIGNhdWdodDtcbiAgICAgIH1cblxuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uO1xuXG4gICAgICAgIGlmIChlbnRyeS50cnlMb2MgPT09IFwicm9vdFwiKSB7XG4gICAgICAgICAgLy8gRXhjZXB0aW9uIHRocm93biBvdXRzaWRlIG9mIGFueSB0cnkgYmxvY2sgdGhhdCBjb3VsZCBoYW5kbGVcbiAgICAgICAgICAvLyBpdCwgc28gc2V0IHRoZSBjb21wbGV0aW9uIHZhbHVlIG9mIHRoZSBlbnRpcmUgZnVuY3Rpb24gdG9cbiAgICAgICAgICAvLyB0aHJvdyB0aGUgZXhjZXB0aW9uLlxuICAgICAgICAgIHJldHVybiBoYW5kbGUoXCJlbmRcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZW50cnkudHJ5TG9jIDw9IHRoaXMucHJldikge1xuICAgICAgICAgIHZhciBoYXNDYXRjaCA9IGhhc093bi5jYWxsKGVudHJ5LCBcImNhdGNoTG9jXCIpO1xuICAgICAgICAgIHZhciBoYXNGaW5hbGx5ID0gaGFzT3duLmNhbGwoZW50cnksIFwiZmluYWxseUxvY1wiKTtcblxuICAgICAgICAgIGlmIChoYXNDYXRjaCAmJiBoYXNGaW5hbGx5KSB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcmV2IDwgZW50cnkuY2F0Y2hMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5jYXRjaExvYywgdHJ1ZSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5maW5hbGx5TG9jKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ2F0Y2gpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXYgPCBlbnRyeS5jYXRjaExvYykge1xuICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlKGVudHJ5LmNhdGNoTG9jLCB0cnVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSBpZiAoaGFzRmluYWxseSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5maW5hbGx5TG9jKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseVwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgYWJydXB0OiBmdW5jdGlvbih0eXBlLCBhcmcpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICBpZiAoZW50cnkudHJ5TG9jIDw9IHRoaXMucHJldiAmJlxuICAgICAgICAgICAgaGFzT3duLmNhbGwoZW50cnksIFwiZmluYWxseUxvY1wiKSAmJlxuICAgICAgICAgICAgdGhpcy5wcmV2IDwgZW50cnkuZmluYWxseUxvYykge1xuICAgICAgICAgIHZhciBmaW5hbGx5RW50cnkgPSBlbnRyeTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZmluYWxseUVudHJ5ICYmXG4gICAgICAgICAgKHR5cGUgPT09IFwiYnJlYWtcIiB8fFxuICAgICAgICAgICB0eXBlID09PSBcImNvbnRpbnVlXCIpICYmXG4gICAgICAgICAgZmluYWxseUVudHJ5LnRyeUxvYyA8PSBhcmcgJiZcbiAgICAgICAgICBhcmcgPD0gZmluYWxseUVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgLy8gSWdub3JlIHRoZSBmaW5hbGx5IGVudHJ5IGlmIGNvbnRyb2wgaXMgbm90IGp1bXBpbmcgdG8gYVxuICAgICAgICAvLyBsb2NhdGlvbiBvdXRzaWRlIHRoZSB0cnkvY2F0Y2ggYmxvY2suXG4gICAgICAgIGZpbmFsbHlFbnRyeSA9IG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciByZWNvcmQgPSBmaW5hbGx5RW50cnkgPyBmaW5hbGx5RW50cnkuY29tcGxldGlvbiA6IHt9O1xuICAgICAgcmVjb3JkLnR5cGUgPSB0eXBlO1xuICAgICAgcmVjb3JkLmFyZyA9IGFyZztcblxuICAgICAgaWYgKGZpbmFsbHlFbnRyeSkge1xuICAgICAgICB0aGlzLm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICB0aGlzLm5leHQgPSBmaW5hbGx5RW50cnkuZmluYWxseUxvYztcbiAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbXBsZXRlKHJlY29yZCk7XG4gICAgfSxcblxuICAgIGNvbXBsZXRlOiBmdW5jdGlvbihyZWNvcmQsIGFmdGVyTG9jKSB7XG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICB0aHJvdyByZWNvcmQuYXJnO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwiYnJlYWtcIiB8fFxuICAgICAgICAgIHJlY29yZC50eXBlID09PSBcImNvbnRpbnVlXCIpIHtcbiAgICAgICAgdGhpcy5uZXh0ID0gcmVjb3JkLmFyZztcbiAgICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IFwicmV0dXJuXCIpIHtcbiAgICAgICAgdGhpcy5ydmFsID0gdGhpcy5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgICB0aGlzLm1ldGhvZCA9IFwicmV0dXJuXCI7XG4gICAgICAgIHRoaXMubmV4dCA9IFwiZW5kXCI7XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcIm5vcm1hbFwiICYmIGFmdGVyTG9jKSB7XG4gICAgICAgIHRoaXMubmV4dCA9IGFmdGVyTG9jO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9LFxuXG4gICAgZmluaXNoOiBmdW5jdGlvbihmaW5hbGx5TG9jKSB7XG4gICAgICBmb3IgKHZhciBpID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IHRoaXMudHJ5RW50cmllc1tpXTtcbiAgICAgICAgaWYgKGVudHJ5LmZpbmFsbHlMb2MgPT09IGZpbmFsbHlMb2MpIHtcbiAgICAgICAgICB0aGlzLmNvbXBsZXRlKGVudHJ5LmNvbXBsZXRpb24sIGVudHJ5LmFmdGVyTG9jKTtcbiAgICAgICAgICByZXNldFRyeUVudHJ5KGVudHJ5KTtcbiAgICAgICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBcImNhdGNoXCI6IGZ1bmN0aW9uKHRyeUxvYykge1xuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIGlmIChlbnRyeS50cnlMb2MgPT09IHRyeUxvYykge1xuICAgICAgICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uO1xuICAgICAgICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgICB2YXIgdGhyb3duID0gcmVjb3JkLmFyZztcbiAgICAgICAgICAgIHJlc2V0VHJ5RW50cnkoZW50cnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdGhyb3duO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRoZSBjb250ZXh0LmNhdGNoIG1ldGhvZCBtdXN0IG9ubHkgYmUgY2FsbGVkIHdpdGggYSBsb2NhdGlvblxuICAgICAgLy8gYXJndW1lbnQgdGhhdCBjb3JyZXNwb25kcyB0byBhIGtub3duIGNhdGNoIGJsb2NrLlxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiaWxsZWdhbCBjYXRjaCBhdHRlbXB0XCIpO1xuICAgIH0sXG5cbiAgICBkZWxlZ2F0ZVlpZWxkOiBmdW5jdGlvbihpdGVyYWJsZSwgcmVzdWx0TmFtZSwgbmV4dExvYykge1xuICAgICAgdGhpcy5kZWxlZ2F0ZSA9IHtcbiAgICAgICAgaXRlcmF0b3I6IHZhbHVlcyhpdGVyYWJsZSksXG4gICAgICAgIHJlc3VsdE5hbWU6IHJlc3VsdE5hbWUsXG4gICAgICAgIG5leHRMb2M6IG5leHRMb2NcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLm1ldGhvZCA9PT0gXCJuZXh0XCIpIHtcbiAgICAgICAgLy8gRGVsaWJlcmF0ZWx5IGZvcmdldCB0aGUgbGFzdCBzZW50IHZhbHVlIHNvIHRoYXQgd2UgZG9uJ3RcbiAgICAgICAgLy8gYWNjaWRlbnRhbGx5IHBhc3MgaXQgb24gdG8gdGhlIGRlbGVnYXRlLlxuICAgICAgICB0aGlzLmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfVxuICB9O1xuXG4gIC8vIFJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGlzIHNjcmlwdCBpcyBleGVjdXRpbmcgYXMgYSBDb21tb25KUyBtb2R1bGVcbiAgLy8gb3Igbm90LCByZXR1cm4gdGhlIHJ1bnRpbWUgb2JqZWN0IHNvIHRoYXQgd2UgY2FuIGRlY2xhcmUgdGhlIHZhcmlhYmxlXG4gIC8vIHJlZ2VuZXJhdG9yUnVudGltZSBpbiB0aGUgb3V0ZXIgc2NvcGUsIHdoaWNoIGFsbG93cyB0aGlzIG1vZHVsZSB0byBiZVxuICAvLyBpbmplY3RlZCBlYXNpbHkgYnkgYGJpbi9yZWdlbmVyYXRvciAtLWluY2x1ZGUtcnVudGltZSBzY3JpcHQuanNgLlxuICByZXR1cm4gZXhwb3J0cztcblxufShcbiAgLy8gSWYgdGhpcyBzY3JpcHQgaXMgZXhlY3V0aW5nIGFzIGEgQ29tbW9uSlMgbW9kdWxlLCB1c2UgbW9kdWxlLmV4cG9ydHNcbiAgLy8gYXMgdGhlIHJlZ2VuZXJhdG9yUnVudGltZSBuYW1lc3BhY2UuIE90aGVyd2lzZSBjcmVhdGUgYSBuZXcgZW1wdHlcbiAgLy8gb2JqZWN0LiBFaXRoZXIgd2F5LCB0aGUgcmVzdWx0aW5nIG9iamVjdCB3aWxsIGJlIHVzZWQgdG8gaW5pdGlhbGl6ZVxuICAvLyB0aGUgcmVnZW5lcmF0b3JSdW50aW1lIHZhcmlhYmxlIGF0IHRoZSB0b3Agb2YgdGhpcyBmaWxlLlxuICB0eXBlb2YgbW9kdWxlID09PSBcIm9iamVjdFwiID8gbW9kdWxlLmV4cG9ydHMgOiB7fVxuKSk7XG5cbnRyeSB7XG4gIHJlZ2VuZXJhdG9yUnVudGltZSA9IHJ1bnRpbWU7XG59IGNhdGNoIChhY2NpZGVudGFsU3RyaWN0TW9kZSkge1xuICAvLyBUaGlzIG1vZHVsZSBzaG91bGQgbm90IGJlIHJ1bm5pbmcgaW4gc3RyaWN0IG1vZGUsIHNvIHRoZSBhYm92ZVxuICAvLyBhc3NpZ25tZW50IHNob3VsZCBhbHdheXMgd29yayB1bmxlc3Mgc29tZXRoaW5nIGlzIG1pc2NvbmZpZ3VyZWQuIEp1c3RcbiAgLy8gaW4gY2FzZSBydW50aW1lLmpzIGFjY2lkZW50YWxseSBydW5zIGluIHN0cmljdCBtb2RlLCB3ZSBjYW4gZXNjYXBlXG4gIC8vIHN0cmljdCBtb2RlIHVzaW5nIGEgZ2xvYmFsIEZ1bmN0aW9uIGNhbGwuIFRoaXMgY291bGQgY29uY2VpdmFibHkgZmFpbFxuICAvLyBpZiBhIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGZvcmJpZHMgdXNpbmcgRnVuY3Rpb24sIGJ1dCBpbiB0aGF0IGNhc2VcbiAgLy8gdGhlIHByb3BlciBzb2x1dGlvbiBpcyB0byBmaXggdGhlIGFjY2lkZW50YWwgc3RyaWN0IG1vZGUgcHJvYmxlbS4gSWZcbiAgLy8geW91J3ZlIG1pc2NvbmZpZ3VyZWQgeW91ciBidW5kbGVyIHRvIGZvcmNlIHN0cmljdCBtb2RlIGFuZCBhcHBsaWVkIGFcbiAgLy8gQ1NQIHRvIGZvcmJpZCBGdW5jdGlvbiwgYW5kIHlvdSdyZSBub3Qgd2lsbGluZyB0byBmaXggZWl0aGVyIG9mIHRob3NlXG4gIC8vIHByb2JsZW1zLCBwbGVhc2UgZGV0YWlsIHlvdXIgdW5pcXVlIHByZWRpY2FtZW50IGluIGEgR2l0SHViIGlzc3VlLlxuICBGdW5jdGlvbihcInJcIiwgXCJyZWdlbmVyYXRvclJ1bnRpbWUgPSByXCIpKHJ1bnRpbWUpO1xufVxuIiwiaW1wb3J0IFwiLi4vc3R5bGVzL2dsb2JhbHMuY3NzXCI7XG5pbXBvcnQgSGVhZCBmcm9tIFwibmV4dC9oZWFkXCI7XG5pbXBvcnQgJ2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAuY3NzJ1xuZnVuY3Rpb24gTXlBcHAoeyBDb21wb25lbnQsIHBhZ2VQcm9wcyB9KSB7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxIZWFkPlxuICAgICAgICA8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTFcIiAvPlxuICAgICAgICA8bGluayByZWw9XCJpY29uXCIgdHlwZT1cImltYWdlL3BuZ1wiIHNpemVzPVwiMzJ4MzJcIiBocmVmPVwiZmF2aWNvbi0zMngzMl9maW5nZXJwcmludC5wbmdcIi8+XG4gICAgey8qIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMjA4MjkgKi99XG4gICAgICAgIDxzY3JpcHQ+IGlmICghY3Jvc3NPcmlnaW5Jc29sYXRlZCkgU2hhcmVkQXJyYXlCdWZmZXIgPSBBcnJheUJ1ZmZlciA8L3NjcmlwdD5cbiAgICAgIDwvSGVhZD5cbiAgICAgIDxDb21wb25lbnQgey4uLnBhZ2VQcm9wc30gLz5cbiAgICA8Lz5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTXlBcHA7XG4iLCJ2YXIgYXBpID0gcmVxdWlyZShcIiEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2J1aWxkL3dlYnBhY2svbG9hZGVycy9uZXh0LXN0eWxlLWxvYWRlci9ydW50aW1lL2luamVjdFN0eWxlc0ludG9TdHlsZVRhZy5qc1wiKTtcbiAgICAgICAgICAgIHZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMSEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Bvc3Rjc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMiEuL2dsb2JhbHMuY3NzXCIpO1xuXG4gICAgICAgICAgICBjb250ZW50ID0gY29udGVudC5fX2VzTW9kdWxlID8gY29udGVudC5kZWZhdWx0IDogY29udGVudDtcblxuICAgICAgICAgICAgaWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG4gICAgICAgICAgICB9XG5cbnZhciBvcHRpb25zID0ge307XG5cbm9wdGlvbnMuaW5zZXJ0ID0gZnVuY3Rpb24oZWxlbWVudCl7Ly8gVGhlc2UgZWxlbWVudHMgc2hvdWxkIGFsd2F5cyBleGlzdC4gSWYgdGhleSBkbyBub3QsXG4vLyB0aGlzIGNvZGUgc2hvdWxkIGZhaWwuXG52YXIgYW5jaG9yRWxlbWVudD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjX19uZXh0X2Nzc19fRE9fTk9UX1VTRV9fJyk7dmFyIHBhcmVudE5vZGU9YW5jaG9yRWxlbWVudC5wYXJlbnROb2RlOy8vIE5vcm1hbGx5IDxoZWFkPlxuLy8gRWFjaCBzdHlsZSB0YWcgc2hvdWxkIGJlIHBsYWNlZCByaWdodCBiZWZvcmUgb3VyXG4vLyBhbmNob3IuIEJ5IGluc2VydGluZyBiZWZvcmUgYW5kIG5vdCBhZnRlciwgd2UgZG8gbm90XG4vLyBuZWVkIHRvIHRyYWNrIHRoZSBsYXN0IGluc2VydGVkIGVsZW1lbnQuXG5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlbGVtZW50LGFuY2hvckVsZW1lbnQpO307XG5vcHRpb25zLnNpbmdsZXRvbiA9IGZhbHNlO1xuXG52YXIgdXBkYXRlID0gYXBpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5cbmlmIChtb2R1bGUuaG90KSB7XG4gIGlmICghY29udGVudC5sb2NhbHMgfHwgbW9kdWxlLmhvdC5pbnZhbGlkYXRlKSB7XG4gICAgdmFyIGlzRXF1YWxMb2NhbHMgPSBmdW5jdGlvbiBpc0VxdWFsTG9jYWxzKGEsYixpc05hbWVkRXhwb3J0KXtpZighYSYmYnx8YSYmIWIpe3JldHVybiBmYWxzZTt9bGV0IHA7Zm9yKHAgaW4gYSl7aWYoaXNOYW1lZEV4cG9ydCYmcD09PSdkZWZhdWx0Jyl7Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnRpbnVlXG5jb250aW51ZTt9aWYoYVtwXSE9PWJbcF0pe3JldHVybiBmYWxzZTt9fWZvcihwIGluIGIpe2lmKGlzTmFtZWRFeHBvcnQmJnA9PT0nZGVmYXVsdCcpey8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250aW51ZVxuY29udGludWU7fWlmKCFhW3BdKXtyZXR1cm4gZmFsc2U7fX1yZXR1cm4gdHJ1ZTt9O1xuICAgIHZhciBvbGRMb2NhbHMgPSBjb250ZW50LmxvY2FscztcblxuICAgIG1vZHVsZS5ob3QuYWNjZXB0KFxuICAgICAgXCIhIS4uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvY3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi02LTEhLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9wb3N0Y3NzLWxvYWRlci9janMuanM/P3JlZi0tNS1vbmVPZi02LTIhLi9nbG9iYWxzLmNzc1wiLFxuICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9jc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMSEuLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Bvc3Rjc3MtbG9hZGVyL2Nqcy5qcz8/cmVmLS01LW9uZU9mLTYtMiEuL2dsb2JhbHMuY3NzXCIpO1xuXG4gICAgICAgICAgICAgIGNvbnRlbnQgPSBjb250ZW50Ll9fZXNNb2R1bGUgPyBjb250ZW50LmRlZmF1bHQgOiBjb250ZW50O1xuXG4gICAgICAgICAgICAgIGlmICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAoIWlzRXF1YWxMb2NhbHMob2xkTG9jYWxzLCBjb250ZW50LmxvY2FscykpIHtcbiAgICAgICAgICAgICAgICBtb2R1bGUuaG90LmludmFsaWRhdGUoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIG9sZExvY2FscyA9IGNvbnRlbnQubG9jYWxzO1xuXG4gICAgICAgICAgICAgIHVwZGF0ZShjb250ZW50KTtcbiAgICAgIH1cbiAgICApXG4gIH1cblxuICBtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7XG4gICAgdXBkYXRlKCk7XG4gIH0pO1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzIHx8IHt9OyJdLCJzb3VyY2VSb290IjoiIn0= \ No newline at end of file diff --git a/.next/static/chunks/webpack.js b/.next/static/chunks/webpack.js index 8ac8556..7362a20 100644 --- a/.next/static/chunks/webpack.js +++ b/.next/static/chunks/webpack.js @@ -113,7 +113,7 @@ /******/ /******/ var hotApplyOnUpdate = true; /******/ // eslint-disable-next-line no-unused-vars -/******/ var hotCurrentHash = "2aaa16a54c2da40feb85"; +/******/ var hotCurrentHash = "93f715a648fafa3513d9"; /******/ var hotRequestTimeout = 10000; /******/ var hotCurrentModuleData = {}; /******/ var hotCurrentChildModule; @@ -1021,4 +1021,4 @@ /******/ }) /************************************************************************/ /******/ ([]); -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FL3dlYnBhY2svYm9vdHN0cmFwIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7UUFBQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLFFBQVEsb0JBQW9CO1FBQzVCO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLDRCQUE0QjtRQUM3QztRQUNBO1FBQ0Esa0JBQWtCLDJCQUEyQjtRQUM3QztRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsR0FBRzs7UUFFSDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0EsT0FBTztRQUNQO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7O1FBRUw7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsNkJBQTZCO1FBQzdCLDZCQUE2QjtRQUM3QjtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHFCQUFxQixnQkFBZ0I7UUFDckM7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQSxxQkFBcUIsZ0JBQWdCO1FBQ3JDO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7O1FBRUw7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0EsS0FBSzs7UUFFTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0Esa0JBQWtCLDhCQUE4QjtRQUNoRDtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsSUFBSTtRQUNKOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsSUFBSTtRQUNKO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0E7UUFDQTtRQUNBLE9BQU87UUFDUDtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxvQkFBb0IsMkJBQTJCO1FBQy9DO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxPQUFPO1FBQ1A7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBLG1CQUFtQixjQUFjO1FBQ2pDO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSxnQkFBZ0IsS0FBSztRQUNyQjtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGdCQUFnQixZQUFZO1FBQzVCO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0EsY0FBYyw0QkFBNEI7UUFDMUM7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxJQUFJOztRQUVKO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTs7UUFFQTtRQUNBO1FBQ0EsZUFBZSw0QkFBNEI7UUFDM0M7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQSxlQUFlLDRCQUE0QjtRQUMzQztRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLHVDQUF1QztRQUN4RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLHVDQUF1QztRQUN4RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGlCQUFpQixzQkFBc0I7UUFDdkM7UUFDQTtRQUNBO1FBQ0EsUUFBUTtRQUNSO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFVBQVU7UUFDVjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQSxjQUFjLHdDQUF3QztRQUN0RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0EsT0FBTztRQUNQO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFNBQVM7UUFDVDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFFBQVE7UUFDUjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0EsS0FBSztRQUNMOztRQUVBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBOztRQUVBO1FBQ0E7UUFDQSx3REFBd0Q7UUFDeEQ7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGVBQWU7UUFDZjtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTs7UUFFQSxZQUFZO1FBQ1o7UUFDQTs7UUFFQTtRQUNBLElBQUk7UUFDSjtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBOzs7UUFHQTs7UUFFQTtRQUNBLGlDQUFpQzs7UUFFakM7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHdCQUF3QixrQ0FBa0M7UUFDMUQsTUFBTTtRQUNOO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7UUFFQTtRQUNBLDBDQUEwQyxvQkFBb0IsV0FBVzs7UUFFekU7UUFDQSxzQ0FBc0MsdUJBQXVCOztRQUU3RDtRQUNBO1FBQ0E7UUFDQTtRQUNBLGdCQUFnQix1QkFBdUI7UUFDdkM7OztRQUdBO1FBQ0EiLCJmaWxlIjoic3RhdGljL2NodW5rcy93ZWJwYWNrLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gaW5zdGFsbCBhIEpTT05QIGNhbGxiYWNrIGZvciBjaHVuayBsb2FkaW5nXG4gXHRmdW5jdGlvbiB3ZWJwYWNrSnNvbnBDYWxsYmFjayhkYXRhKSB7XG4gXHRcdHZhciBjaHVua0lkcyA9IGRhdGFbMF07XG4gXHRcdHZhciBtb3JlTW9kdWxlcyA9IGRhdGFbMV07XG4gXHRcdHZhciBleGVjdXRlTW9kdWxlcyA9IGRhdGFbMl07XG5cbiBcdFx0Ly8gYWRkIFwibW9yZU1vZHVsZXNcIiB0byB0aGUgbW9kdWxlcyBvYmplY3QsXG4gXHRcdC8vIHRoZW4gZmxhZyBhbGwgXCJjaHVua0lkc1wiIGFzIGxvYWRlZCBhbmQgZmlyZSBjYWxsYmFja1xuIFx0XHR2YXIgbW9kdWxlSWQsIGNodW5rSWQsIGkgPSAwLCByZXNvbHZlcyA9IFtdO1xuIFx0XHRmb3IoO2kgPCBjaHVua0lkcy5sZW5ndGg7IGkrKykge1xuIFx0XHRcdGNodW5rSWQgPSBjaHVua0lkc1tpXTtcbiBcdFx0XHRpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaW5zdGFsbGVkQ2h1bmtzLCBjaHVua0lkKSAmJiBpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0pIHtcbiBcdFx0XHRcdHJlc29sdmVzLnB1c2goaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdWzBdKTtcbiBcdFx0XHR9XG4gXHRcdFx0aW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdID0gMDtcbiBcdFx0fVxuIFx0XHRmb3IobW9kdWxlSWQgaW4gbW9yZU1vZHVsZXMpIHtcbiBcdFx0XHRpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobW9yZU1vZHVsZXMsIG1vZHVsZUlkKSkge1xuIFx0XHRcdFx0bW9kdWxlc1ttb2R1bGVJZF0gPSBtb3JlTW9kdWxlc1ttb2R1bGVJZF07XG4gXHRcdFx0fVxuIFx0XHR9XG4gXHRcdGlmKHBhcmVudEpzb25wRnVuY3Rpb24pIHBhcmVudEpzb25wRnVuY3Rpb24oZGF0YSk7XG5cbiBcdFx0d2hpbGUocmVzb2x2ZXMubGVuZ3RoKSB7XG4gXHRcdFx0cmVzb2x2ZXMuc2hpZnQoKSgpO1xuIFx0XHR9XG5cbiBcdFx0Ly8gYWRkIGVudHJ5IG1vZHVsZXMgZnJvbSBsb2FkZWQgY2h1bmsgdG8gZGVmZXJyZWQgbGlzdFxuIFx0XHRkZWZlcnJlZE1vZHVsZXMucHVzaC5hcHBseShkZWZlcnJlZE1vZHVsZXMsIGV4ZWN1dGVNb2R1bGVzIHx8IFtdKTtcblxuIFx0XHQvLyBydW4gZGVmZXJyZWQgbW9kdWxlcyB3aGVuIGFsbCBjaHVua3MgcmVhZHlcbiBcdFx0cmV0dXJuIGNoZWNrRGVmZXJyZWRNb2R1bGVzKCk7XG4gXHR9O1xuIFx0ZnVuY3Rpb24gY2hlY2tEZWZlcnJlZE1vZHVsZXMoKSB7XG4gXHRcdHZhciByZXN1bHQ7XG4gXHRcdGZvcih2YXIgaSA9IDA7IGkgPCBkZWZlcnJlZE1vZHVsZXMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHR2YXIgZGVmZXJyZWRNb2R1bGUgPSBkZWZlcnJlZE1vZHVsZXNbaV07XG4gXHRcdFx0dmFyIGZ1bGZpbGxlZCA9IHRydWU7XG4gXHRcdFx0Zm9yKHZhciBqID0gMTsgaiA8IGRlZmVycmVkTW9kdWxlLmxlbmd0aDsgaisrKSB7XG4gXHRcdFx0XHR2YXIgZGVwSWQgPSBkZWZlcnJlZE1vZHVsZVtqXTtcbiBcdFx0XHRcdGlmKGluc3RhbGxlZENodW5rc1tkZXBJZF0gIT09IDApIGZ1bGZpbGxlZCA9IGZhbHNlO1xuIFx0XHRcdH1cbiBcdFx0XHRpZihmdWxmaWxsZWQpIHtcbiBcdFx0XHRcdGRlZmVycmVkTW9kdWxlcy5zcGxpY2UoaS0tLCAxKTtcbiBcdFx0XHRcdHJlc3VsdCA9IF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gZGVmZXJyZWRNb2R1bGVbMF0pO1xuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdHJldHVybiByZXN1bHQ7XG4gXHR9XG4gXHRmdW5jdGlvbiBob3REaXNwb3NlQ2h1bmsoY2h1bmtJZCkge1xuIFx0XHRkZWxldGUgaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdO1xuIFx0fVxuIFx0dmFyIHBhcmVudEhvdFVwZGF0ZUNhbGxiYWNrID0gd2luZG93W1wid2VicGFja0hvdFVwZGF0ZV9OX0VcIl07XG4gXHR3aW5kb3dbXCJ3ZWJwYWNrSG90VXBkYXRlX05fRVwiXSA9IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0ZnVuY3Rpb24gd2VicGFja0hvdFVwZGF0ZUNhbGxiYWNrKGNodW5rSWQsIG1vcmVNb2R1bGVzKSB7XG4gXHRcdGhvdEFkZFVwZGF0ZUNodW5rKGNodW5rSWQsIG1vcmVNb2R1bGVzKTtcbiBcdFx0aWYgKHBhcmVudEhvdFVwZGF0ZUNhbGxiYWNrKSBwYXJlbnRIb3RVcGRhdGVDYWxsYmFjayhjaHVua0lkLCBtb3JlTW9kdWxlcyk7XG4gXHR9IDtcblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3REb3dubG9hZFVwZGF0ZUNodW5rKGNodW5rSWQpIHtcbiBcdFx0dmFyIHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIik7XG4gXHRcdHNjcmlwdC5jaGFyc2V0ID0gXCJ1dGYtOFwiO1xuIFx0XHRzY3JpcHQuc3JjID0gX193ZWJwYWNrX3JlcXVpcmVfXy5wICsgXCJzdGF0aWMvd2VicGFjay9cIiArIGNodW5rSWQgKyBcIi5cIiArIGhvdEN1cnJlbnRIYXNoICsgXCIuaG90LXVwZGF0ZS5qc1wiO1xuIFx0XHRpZiAobnVsbCkgc2NyaXB0LmNyb3NzT3JpZ2luID0gbnVsbDtcbiBcdFx0ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuIFx0fVxuXG4gXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiBcdGZ1bmN0aW9uIGhvdERvd25sb2FkTWFuaWZlc3QocmVxdWVzdFRpbWVvdXQpIHtcbiBcdFx0cmVxdWVzdFRpbWVvdXQgPSByZXF1ZXN0VGltZW91dCB8fCAxMDAwMDtcbiBcdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgPT09IFwidW5kZWZpbmVkXCIpIHtcbiBcdFx0XHRcdHJldHVybiByZWplY3QobmV3IEVycm9yKFwiTm8gYnJvd3NlciBzdXBwb3J0XCIpKTtcbiBcdFx0XHR9XG4gXHRcdFx0dHJ5IHtcbiBcdFx0XHRcdHZhciByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gXHRcdFx0XHR2YXIgcmVxdWVzdFBhdGggPSBfX3dlYnBhY2tfcmVxdWlyZV9fLnAgKyBcInN0YXRpYy93ZWJwYWNrL1wiICsgaG90Q3VycmVudEhhc2ggKyBcIi5ob3QtdXBkYXRlLmpzb25cIjtcbiBcdFx0XHRcdHJlcXVlc3Qub3BlbihcIkdFVFwiLCByZXF1ZXN0UGF0aCwgdHJ1ZSk7XG4gXHRcdFx0XHRyZXF1ZXN0LnRpbWVvdXQgPSByZXF1ZXN0VGltZW91dDtcbiBcdFx0XHRcdHJlcXVlc3Quc2VuZChudWxsKTtcbiBcdFx0XHR9IGNhdGNoIChlcnIpIHtcbiBcdFx0XHRcdHJldHVybiByZWplY3QoZXJyKTtcbiBcdFx0XHR9XG4gXHRcdFx0cmVxdWVzdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHtcbiBcdFx0XHRcdGlmIChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQpIHJldHVybjtcbiBcdFx0XHRcdGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCkge1xuIFx0XHRcdFx0XHQvLyB0aW1lb3V0XG4gXHRcdFx0XHRcdHJlamVjdChcbiBcdFx0XHRcdFx0XHRuZXcgRXJyb3IoXCJNYW5pZmVzdCByZXF1ZXN0IHRvIFwiICsgcmVxdWVzdFBhdGggKyBcIiB0aW1lZCBvdXQuXCIpXG4gXHRcdFx0XHRcdCk7XG4gXHRcdFx0XHR9IGVsc2UgaWYgKHJlcXVlc3Quc3RhdHVzID09PSA0MDQpIHtcbiBcdFx0XHRcdFx0Ly8gbm8gdXBkYXRlIGF2YWlsYWJsZVxuIFx0XHRcdFx0XHRyZXNvbHZlKCk7XG4gXHRcdFx0XHR9IGVsc2UgaWYgKHJlcXVlc3Quc3RhdHVzICE9PSAyMDAgJiYgcmVxdWVzdC5zdGF0dXMgIT09IDMwNCkge1xuIFx0XHRcdFx0XHQvLyBvdGhlciBmYWlsdXJlXG4gXHRcdFx0XHRcdHJlamVjdChuZXcgRXJyb3IoXCJNYW5pZmVzdCByZXF1ZXN0IHRvIFwiICsgcmVxdWVzdFBhdGggKyBcIiBmYWlsZWQuXCIpKTtcbiBcdFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHRcdC8vIHN1Y2Nlc3NcbiBcdFx0XHRcdFx0dHJ5IHtcbiBcdFx0XHRcdFx0XHR2YXIgdXBkYXRlID0gSlNPTi5wYXJzZShyZXF1ZXN0LnJlc3BvbnNlVGV4dCk7XG4gXHRcdFx0XHRcdH0gY2F0Y2ggKGUpIHtcbiBcdFx0XHRcdFx0XHRyZWplY3QoZSk7XG4gXHRcdFx0XHRcdFx0cmV0dXJuO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdHJlc29sdmUodXBkYXRlKTtcbiBcdFx0XHRcdH1cbiBcdFx0XHR9O1xuIFx0XHR9KTtcbiBcdH1cblxuIFx0dmFyIGhvdEFwcGx5T25VcGRhdGUgPSB0cnVlO1xuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHR2YXIgaG90Q3VycmVudEhhc2ggPSBcIjJhYWExNmE1NGMyZGE0MGZlYjg1XCI7XG4gXHR2YXIgaG90UmVxdWVzdFRpbWVvdXQgPSAxMDAwMDtcbiBcdHZhciBob3RDdXJyZW50TW9kdWxlRGF0YSA9IHt9O1xuIFx0dmFyIGhvdEN1cnJlbnRDaGlsZE1vZHVsZTtcbiBcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0dmFyIGhvdEN1cnJlbnRQYXJlbnRzID0gW107XG4gXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiBcdHZhciBob3RDdXJyZW50UGFyZW50c1RlbXAgPSBbXTtcblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3RDcmVhdGVSZXF1aXJlKG1vZHVsZUlkKSB7XG4gXHRcdHZhciBtZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHRpZiAoIW1lKSByZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXztcbiBcdFx0dmFyIGZuID0gZnVuY3Rpb24ocmVxdWVzdCkge1xuIFx0XHRcdGlmIChtZS5ob3QuYWN0aXZlKSB7XG4gXHRcdFx0XHRpZiAoaW5zdGFsbGVkTW9kdWxlc1tyZXF1ZXN0XSkge1xuIFx0XHRcdFx0XHRpZiAoaW5zdGFsbGVkTW9kdWxlc1tyZXF1ZXN0XS5wYXJlbnRzLmluZGV4T2YobW9kdWxlSWQpID09PSAtMSkge1xuIFx0XHRcdFx0XHRcdGluc3RhbGxlZE1vZHVsZXNbcmVxdWVzdF0ucGFyZW50cy5wdXNoKG1vZHVsZUlkKTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdFx0aG90Q3VycmVudFBhcmVudHMgPSBbbW9kdWxlSWRdO1xuIFx0XHRcdFx0XHRob3RDdXJyZW50Q2hpbGRNb2R1bGUgPSByZXF1ZXN0O1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0aWYgKG1lLmNoaWxkcmVuLmluZGV4T2YocmVxdWVzdCkgPT09IC0xKSB7XG4gXHRcdFx0XHRcdG1lLmNoaWxkcmVuLnB1c2gocmVxdWVzdCk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdGNvbnNvbGUud2FybihcbiBcdFx0XHRcdFx0XCJbSE1SXSB1bmV4cGVjdGVkIHJlcXVpcmUoXCIgK1xuIFx0XHRcdFx0XHRcdHJlcXVlc3QgK1xuIFx0XHRcdFx0XHRcdFwiKSBmcm9tIGRpc3Bvc2VkIG1vZHVsZSBcIiArXG4gXHRcdFx0XHRcdFx0bW9kdWxlSWRcbiBcdFx0XHRcdCk7XG4gXHRcdFx0XHRob3RDdXJyZW50UGFyZW50cyA9IFtdO1xuIFx0XHRcdH1cbiBcdFx0XHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhyZXF1ZXN0KTtcbiBcdFx0fTtcbiBcdFx0dmFyIE9iamVjdEZhY3RvcnkgPSBmdW5jdGlvbiBPYmplY3RGYWN0b3J5KG5hbWUpIHtcbiBcdFx0XHRyZXR1cm4ge1xuIFx0XHRcdFx0Y29uZmlndXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZnVuY3Rpb24oKSB7XG4gXHRcdFx0XHRcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fW25hbWVdO1xuIFx0XHRcdFx0fSxcbiBcdFx0XHRcdHNldDogZnVuY3Rpb24odmFsdWUpIHtcbiBcdFx0XHRcdFx0X193ZWJwYWNrX3JlcXVpcmVfX1tuYW1lXSA9IHZhbHVlO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH07XG4gXHRcdH07XG4gXHRcdGZvciAodmFyIG5hbWUgaW4gX193ZWJwYWNrX3JlcXVpcmVfXykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChfX3dlYnBhY2tfcmVxdWlyZV9fLCBuYW1lKSAmJlxuIFx0XHRcdFx0bmFtZSAhPT0gXCJlXCIgJiZcbiBcdFx0XHRcdG5hbWUgIT09IFwidFwiXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZm4sIG5hbWUsIE9iamVjdEZhY3RvcnkobmFtZSkpO1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRmbi5lID0gZnVuY3Rpb24oY2h1bmtJZCkge1xuIFx0XHRcdGlmIChob3RTdGF0dXMgPT09IFwicmVhZHlcIikgaG90U2V0U3RhdHVzKFwicHJlcGFyZVwiKTtcbiBcdFx0XHRob3RDaHVua3NMb2FkaW5nKys7XG4gXHRcdFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18uZShjaHVua0lkKS50aGVuKGZpbmlzaENodW5rTG9hZGluZywgZnVuY3Rpb24oZXJyKSB7XG4gXHRcdFx0XHRmaW5pc2hDaHVua0xvYWRpbmcoKTtcbiBcdFx0XHRcdHRocm93IGVycjtcbiBcdFx0XHR9KTtcblxuIFx0XHRcdGZ1bmN0aW9uIGZpbmlzaENodW5rTG9hZGluZygpIHtcbiBcdFx0XHRcdGhvdENodW5rc0xvYWRpbmctLTtcbiBcdFx0XHRcdGlmIChob3RTdGF0dXMgPT09IFwicHJlcGFyZVwiKSB7XG4gXHRcdFx0XHRcdGlmICghaG90V2FpdGluZ0ZpbGVzTWFwW2NodW5rSWRdKSB7XG4gXHRcdFx0XHRcdFx0aG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0aWYgKGhvdENodW5rc0xvYWRpbmcgPT09IDAgJiYgaG90V2FpdGluZ0ZpbGVzID09PSAwKSB7XG4gXHRcdFx0XHRcdFx0aG90VXBkYXRlRG93bmxvYWRlZCgpO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHR9XG4gXHRcdFx0fVxuIFx0XHR9O1xuIFx0XHRmbi50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0XHRpZiAobW9kZSAmIDEpIHZhbHVlID0gZm4odmFsdWUpO1xuIFx0XHRcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fLnQodmFsdWUsIG1vZGUgJiB+MSk7XG4gXHRcdH07XG4gXHRcdHJldHVybiBmbjtcbiBcdH1cblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3RDcmVhdGVNb2R1bGUobW9kdWxlSWQpIHtcbiBcdFx0dmFyIGhvdCA9IHtcbiBcdFx0XHQvLyBwcml2YXRlIHN0dWZmXG4gXHRcdFx0X2FjY2VwdGVkRGVwZW5kZW5jaWVzOiB7fSxcbiBcdFx0XHRfZGVjbGluZWREZXBlbmRlbmNpZXM6IHt9LFxuIFx0XHRcdF9zZWxmQWNjZXB0ZWQ6IGZhbHNlLFxuIFx0XHRcdF9zZWxmRGVjbGluZWQ6IGZhbHNlLFxuIFx0XHRcdF9zZWxmSW52YWxpZGF0ZWQ6IGZhbHNlLFxuIFx0XHRcdF9kaXNwb3NlSGFuZGxlcnM6IFtdLFxuIFx0XHRcdF9tYWluOiBob3RDdXJyZW50Q2hpbGRNb2R1bGUgIT09IG1vZHVsZUlkLFxuXG4gXHRcdFx0Ly8gTW9kdWxlIEFQSVxuIFx0XHRcdGFjdGl2ZTogdHJ1ZSxcbiBcdFx0XHRhY2NlcHQ6IGZ1bmN0aW9uKGRlcCwgY2FsbGJhY2spIHtcbiBcdFx0XHRcdGlmIChkZXAgPT09IHVuZGVmaW5lZCkgaG90Ll9zZWxmQWNjZXB0ZWQgPSB0cnVlO1xuIFx0XHRcdFx0ZWxzZSBpZiAodHlwZW9mIGRlcCA9PT0gXCJmdW5jdGlvblwiKSBob3QuX3NlbGZBY2NlcHRlZCA9IGRlcDtcbiBcdFx0XHRcdGVsc2UgaWYgKHR5cGVvZiBkZXAgPT09IFwib2JqZWN0XCIpXG4gXHRcdFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgZGVwLmxlbmd0aDsgaSsrKVxuIFx0XHRcdFx0XHRcdGhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwW2ldXSA9IGNhbGxiYWNrIHx8IGZ1bmN0aW9uKCkge307XG4gXHRcdFx0XHRlbHNlIGhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwXSA9IGNhbGxiYWNrIHx8IGZ1bmN0aW9uKCkge307XG4gXHRcdFx0fSxcbiBcdFx0XHRkZWNsaW5lOiBmdW5jdGlvbihkZXApIHtcbiBcdFx0XHRcdGlmIChkZXAgPT09IHVuZGVmaW5lZCkgaG90Ll9zZWxmRGVjbGluZWQgPSB0cnVlO1xuIFx0XHRcdFx0ZWxzZSBpZiAodHlwZW9mIGRlcCA9PT0gXCJvYmplY3RcIilcbiBcdFx0XHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBkZXAubGVuZ3RoOyBpKyspXG4gXHRcdFx0XHRcdFx0aG90Ll9kZWNsaW5lZERlcGVuZGVuY2llc1tkZXBbaV1dID0gdHJ1ZTtcbiBcdFx0XHRcdGVsc2UgaG90Ll9kZWNsaW5lZERlcGVuZGVuY2llc1tkZXBdID0gdHJ1ZTtcbiBcdFx0XHR9LFxuIFx0XHRcdGRpc3Bvc2U6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gXHRcdFx0XHRob3QuX2Rpc3Bvc2VIYW5kbGVycy5wdXNoKGNhbGxiYWNrKTtcbiBcdFx0XHR9LFxuIFx0XHRcdGFkZERpc3Bvc2VIYW5kbGVyOiBmdW5jdGlvbihjYWxsYmFjaykge1xuIFx0XHRcdFx0aG90Ll9kaXNwb3NlSGFuZGxlcnMucHVzaChjYWxsYmFjayk7XG4gXHRcdFx0fSxcbiBcdFx0XHRyZW1vdmVEaXNwb3NlSGFuZGxlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiBcdFx0XHRcdHZhciBpZHggPSBob3QuX2Rpc3Bvc2VIYW5kbGVycy5pbmRleE9mKGNhbGxiYWNrKTtcbiBcdFx0XHRcdGlmIChpZHggPj0gMCkgaG90Ll9kaXNwb3NlSGFuZGxlcnMuc3BsaWNlKGlkeCwgMSk7XG4gXHRcdFx0fSxcbiBcdFx0XHRpbnZhbGlkYXRlOiBmdW5jdGlvbigpIHtcbiBcdFx0XHRcdHRoaXMuX3NlbGZJbnZhbGlkYXRlZCA9IHRydWU7XG4gXHRcdFx0XHRzd2l0Y2ggKGhvdFN0YXR1cykge1xuIFx0XHRcdFx0XHRjYXNlIFwiaWRsZVwiOlxuIFx0XHRcdFx0XHRcdGhvdFVwZGF0ZSA9IHt9O1xuIFx0XHRcdFx0XHRcdGhvdFVwZGF0ZVttb2R1bGVJZF0gPSBtb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdFx0XHRob3RTZXRTdGF0dXMoXCJyZWFkeVwiKTtcbiBcdFx0XHRcdFx0XHRicmVhaztcbiBcdFx0XHRcdFx0Y2FzZSBcInJlYWR5XCI6XG4gXHRcdFx0XHRcdFx0aG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZShtb2R1bGVJZCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJwcmVwYXJlXCI6XG4gXHRcdFx0XHRcdGNhc2UgXCJjaGVja1wiOlxuIFx0XHRcdFx0XHRjYXNlIFwiZGlzcG9zZVwiOlxuIFx0XHRcdFx0XHRjYXNlIFwiYXBwbHlcIjpcbiBcdFx0XHRcdFx0XHQoaG90UXVldWVkSW52YWxpZGF0ZWRNb2R1bGVzID1cbiBcdFx0XHRcdFx0XHRcdGhvdFF1ZXVlZEludmFsaWRhdGVkTW9kdWxlcyB8fCBbXSkucHVzaChtb2R1bGVJZCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGRlZmF1bHQ6XG4gXHRcdFx0XHRcdFx0Ly8gaWdub3JlIHJlcXVlc3RzIGluIGVycm9yIHN0YXRlc1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH0sXG5cbiBcdFx0XHQvLyBNYW5hZ2VtZW50IEFQSVxuIFx0XHRcdGNoZWNrOiBob3RDaGVjayxcbiBcdFx0XHRhcHBseTogaG90QXBwbHksXG4gXHRcdFx0c3RhdHVzOiBmdW5jdGlvbihsKSB7XG4gXHRcdFx0XHRpZiAoIWwpIHJldHVybiBob3RTdGF0dXM7XG4gXHRcdFx0XHRob3RTdGF0dXNIYW5kbGVycy5wdXNoKGwpO1xuIFx0XHRcdH0sXG4gXHRcdFx0YWRkU3RhdHVzSGFuZGxlcjogZnVuY3Rpb24obCkge1xuIFx0XHRcdFx0aG90U3RhdHVzSGFuZGxlcnMucHVzaChsKTtcbiBcdFx0XHR9LFxuIFx0XHRcdHJlbW92ZVN0YXR1c0hhbmRsZXI6IGZ1bmN0aW9uKGwpIHtcbiBcdFx0XHRcdHZhciBpZHggPSBob3RTdGF0dXNIYW5kbGVycy5pbmRleE9mKGwpO1xuIFx0XHRcdFx0aWYgKGlkeCA+PSAwKSBob3RTdGF0dXNIYW5kbGVycy5zcGxpY2UoaWR4LCAxKTtcbiBcdFx0XHR9LFxuXG4gXHRcdFx0Ly9pbmhlcml0IGZyb20gcHJldmlvdXMgZGlzcG9zZSBjYWxsXG4gXHRcdFx0ZGF0YTogaG90Q3VycmVudE1vZHVsZURhdGFbbW9kdWxlSWRdXG4gXHRcdH07XG4gXHRcdGhvdEN1cnJlbnRDaGlsZE1vZHVsZSA9IHVuZGVmaW5lZDtcbiBcdFx0cmV0dXJuIGhvdDtcbiBcdH1cblxuIFx0dmFyIGhvdFN0YXR1c0hhbmRsZXJzID0gW107XG4gXHR2YXIgaG90U3RhdHVzID0gXCJpZGxlXCI7XG5cbiBcdGZ1bmN0aW9uIGhvdFNldFN0YXR1cyhuZXdTdGF0dXMpIHtcbiBcdFx0aG90U3RhdHVzID0gbmV3U3RhdHVzO1xuIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IGhvdFN0YXR1c0hhbmRsZXJzLmxlbmd0aDsgaSsrKVxuIFx0XHRcdGhvdFN0YXR1c0hhbmRsZXJzW2ldLmNhbGwobnVsbCwgbmV3U3RhdHVzKTtcbiBcdH1cblxuIFx0Ly8gd2hpbGUgZG93bmxvYWRpbmdcbiBcdHZhciBob3RXYWl0aW5nRmlsZXMgPSAwO1xuIFx0dmFyIGhvdENodW5rc0xvYWRpbmcgPSAwO1xuIFx0dmFyIGhvdFdhaXRpbmdGaWxlc01hcCA9IHt9O1xuIFx0dmFyIGhvdFJlcXVlc3RlZEZpbGVzTWFwID0ge307XG4gXHR2YXIgaG90QXZhaWxhYmxlRmlsZXNNYXAgPSB7fTtcbiBcdHZhciBob3REZWZlcnJlZDtcblxuIFx0Ly8gVGhlIHVwZGF0ZSBpbmZvXG4gXHR2YXIgaG90VXBkYXRlLCBob3RVcGRhdGVOZXdIYXNoLCBob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXM7XG5cbiBcdGZ1bmN0aW9uIHRvTW9kdWxlSWQoaWQpIHtcbiBcdFx0dmFyIGlzTnVtYmVyID0gK2lkICsgXCJcIiA9PT0gaWQ7XG4gXHRcdHJldHVybiBpc051bWJlciA/ICtpZCA6IGlkO1xuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RDaGVjayhhcHBseSkge1xuIFx0XHRpZiAoaG90U3RhdHVzICE9PSBcImlkbGVcIikge1xuIFx0XHRcdHRocm93IG5ldyBFcnJvcihcImNoZWNrKCkgaXMgb25seSBhbGxvd2VkIGluIGlkbGUgc3RhdHVzXCIpO1xuIFx0XHR9XG4gXHRcdGhvdEFwcGx5T25VcGRhdGUgPSBhcHBseTtcbiBcdFx0aG90U2V0U3RhdHVzKFwiY2hlY2tcIik7XG4gXHRcdHJldHVybiBob3REb3dubG9hZE1hbmlmZXN0KGhvdFJlcXVlc3RUaW1lb3V0KS50aGVuKGZ1bmN0aW9uKHVwZGF0ZSkge1xuIFx0XHRcdGlmICghdXBkYXRlKSB7XG4gXHRcdFx0XHRob3RTZXRTdGF0dXMoaG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZXMoKSA/IFwicmVhZHlcIiA6IFwiaWRsZVwiKTtcbiBcdFx0XHRcdHJldHVybiBudWxsO1xuIFx0XHRcdH1cbiBcdFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcCA9IHt9O1xuIFx0XHRcdGhvdFdhaXRpbmdGaWxlc01hcCA9IHt9O1xuIFx0XHRcdGhvdEF2YWlsYWJsZUZpbGVzTWFwID0gdXBkYXRlLmM7XG4gXHRcdFx0aG90VXBkYXRlTmV3SGFzaCA9IHVwZGF0ZS5oO1xuXG4gXHRcdFx0aG90U2V0U3RhdHVzKFwicHJlcGFyZVwiKTtcbiBcdFx0XHR2YXIgcHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdFx0aG90RGVmZXJyZWQgPSB7XG4gXHRcdFx0XHRcdHJlc29sdmU6IHJlc29sdmUsXG4gXHRcdFx0XHRcdHJlamVjdDogcmVqZWN0XG4gXHRcdFx0XHR9O1xuIFx0XHRcdH0pO1xuIFx0XHRcdGhvdFVwZGF0ZSA9IHt9O1xuIFx0XHRcdGZvcih2YXIgY2h1bmtJZCBpbiBpbnN0YWxsZWRDaHVua3MpXG4gXHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWxvbmUtYmxvY2tzXG4gXHRcdFx0e1xuIFx0XHRcdFx0aG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0fVxuIFx0XHRcdGlmIChcbiBcdFx0XHRcdGhvdFN0YXR1cyA9PT0gXCJwcmVwYXJlXCIgJiZcbiBcdFx0XHRcdGhvdENodW5rc0xvYWRpbmcgPT09IDAgJiZcbiBcdFx0XHRcdGhvdFdhaXRpbmdGaWxlcyA9PT0gMFxuIFx0XHRcdCkge1xuIFx0XHRcdFx0aG90VXBkYXRlRG93bmxvYWRlZCgpO1xuIFx0XHRcdH1cbiBcdFx0XHRyZXR1cm4gcHJvbWlzZTtcbiBcdFx0fSk7XG4gXHR9XG5cbiBcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0ZnVuY3Rpb24gaG90QWRkVXBkYXRlQ2h1bmsoY2h1bmtJZCwgbW9yZU1vZHVsZXMpIHtcbiBcdFx0aWYgKCFob3RBdmFpbGFibGVGaWxlc01hcFtjaHVua0lkXSB8fCAhaG90UmVxdWVzdGVkRmlsZXNNYXBbY2h1bmtJZF0pXG4gXHRcdFx0cmV0dXJuO1xuIFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcFtjaHVua0lkXSA9IGZhbHNlO1xuIFx0XHRmb3IgKHZhciBtb2R1bGVJZCBpbiBtb3JlTW9kdWxlcykge1xuIFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobW9yZU1vZHVsZXMsIG1vZHVsZUlkKSkge1xuIFx0XHRcdFx0aG90VXBkYXRlW21vZHVsZUlkXSA9IG1vcmVNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHR9XG4gXHRcdH1cbiBcdFx0aWYgKC0taG90V2FpdGluZ0ZpbGVzID09PSAwICYmIGhvdENodW5rc0xvYWRpbmcgPT09IDApIHtcbiBcdFx0XHRob3RVcGRhdGVEb3dubG9hZGVkKCk7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCkge1xuIFx0XHRpZiAoIWhvdEF2YWlsYWJsZUZpbGVzTWFwW2NodW5rSWRdKSB7XG4gXHRcdFx0aG90V2FpdGluZ0ZpbGVzTWFwW2NodW5rSWRdID0gdHJ1ZTtcbiBcdFx0fSBlbHNlIHtcbiBcdFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcFtjaHVua0lkXSA9IHRydWU7XG4gXHRcdFx0aG90V2FpdGluZ0ZpbGVzKys7XG4gXHRcdFx0aG90RG93bmxvYWRVcGRhdGVDaHVuayhjaHVua0lkKTtcbiBcdFx0fVxuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RVcGRhdGVEb3dubG9hZGVkKCkge1xuIFx0XHRob3RTZXRTdGF0dXMoXCJyZWFkeVwiKTtcbiBcdFx0dmFyIGRlZmVycmVkID0gaG90RGVmZXJyZWQ7XG4gXHRcdGhvdERlZmVycmVkID0gbnVsbDtcbiBcdFx0aWYgKCFkZWZlcnJlZCkgcmV0dXJuO1xuIFx0XHRpZiAoaG90QXBwbHlPblVwZGF0ZSkge1xuIFx0XHRcdC8vIFdyYXAgZGVmZXJyZWQgb2JqZWN0IGluIFByb21pc2UgdG8gbWFyayBpdCBhcyBhIHdlbGwtaGFuZGxlZCBQcm9taXNlIHRvXG4gXHRcdFx0Ly8gYXZvaWQgdHJpZ2dlcmluZyB1bmNhdWdodCBleGNlcHRpb24gd2FybmluZyBpbiBDaHJvbWUuXG4gXHRcdFx0Ly8gU2VlIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTQ2NTY2NlxuIFx0XHRcdFByb21pc2UucmVzb2x2ZSgpXG4gXHRcdFx0XHQudGhlbihmdW5jdGlvbigpIHtcbiBcdFx0XHRcdFx0cmV0dXJuIGhvdEFwcGx5KGhvdEFwcGx5T25VcGRhdGUpO1xuIFx0XHRcdFx0fSlcbiBcdFx0XHRcdC50aGVuKFxuIFx0XHRcdFx0XHRmdW5jdGlvbihyZXN1bHQpIHtcbiBcdFx0XHRcdFx0XHRkZWZlcnJlZC5yZXNvbHZlKHJlc3VsdCk7XG4gXHRcdFx0XHRcdH0sXG4gXHRcdFx0XHRcdGZ1bmN0aW9uKGVycikge1xuIFx0XHRcdFx0XHRcdGRlZmVycmVkLnJlamVjdChlcnIpO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHQpO1xuIFx0XHR9IGVsc2Uge1xuIFx0XHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbXTtcbiBcdFx0XHRmb3IgKHZhciBpZCBpbiBob3RVcGRhdGUpIHtcbiBcdFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaG90VXBkYXRlLCBpZCkpIHtcbiBcdFx0XHRcdFx0b3V0ZGF0ZWRNb2R1bGVzLnB1c2godG9Nb2R1bGVJZChpZCkpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0XHRkZWZlcnJlZC5yZXNvbHZlKG91dGRhdGVkTW9kdWxlcyk7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90QXBwbHkob3B0aW9ucykge1xuIFx0XHRpZiAoaG90U3RhdHVzICE9PSBcInJlYWR5XCIpXG4gXHRcdFx0dGhyb3cgbmV3IEVycm9yKFwiYXBwbHkoKSBpcyBvbmx5IGFsbG93ZWQgaW4gcmVhZHkgc3RhdHVzXCIpO1xuIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiBcdFx0cmV0dXJuIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucyk7XG4gXHR9XG5cbiBcdGZ1bmN0aW9uIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucykge1xuIFx0XHRob3RBcHBseUludmFsaWRhdGVkTW9kdWxlcygpO1xuXG4gXHRcdHZhciBjYjtcbiBcdFx0dmFyIGk7XG4gXHRcdHZhciBqO1xuIFx0XHR2YXIgbW9kdWxlO1xuIFx0XHR2YXIgbW9kdWxlSWQ7XG5cbiBcdFx0ZnVuY3Rpb24gZ2V0QWZmZWN0ZWRTdHVmZih1cGRhdGVNb2R1bGVJZCkge1xuIFx0XHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbdXBkYXRlTW9kdWxlSWRdO1xuIFx0XHRcdHZhciBvdXRkYXRlZERlcGVuZGVuY2llcyA9IHt9O1xuXG4gXHRcdFx0dmFyIHF1ZXVlID0gb3V0ZGF0ZWRNb2R1bGVzLm1hcChmdW5jdGlvbihpZCkge1xuIFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0Y2hhaW46IFtpZF0sXG4gXHRcdFx0XHRcdGlkOiBpZFxuIFx0XHRcdFx0fTtcbiBcdFx0XHR9KTtcbiBcdFx0XHR3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuIFx0XHRcdFx0dmFyIHF1ZXVlSXRlbSA9IHF1ZXVlLnBvcCgpO1xuIFx0XHRcdFx0dmFyIG1vZHVsZUlkID0gcXVldWVJdGVtLmlkO1xuIFx0XHRcdFx0dmFyIGNoYWluID0gcXVldWVJdGVtLmNoYWluO1xuIFx0XHRcdFx0bW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRpZiAoXG4gXHRcdFx0XHRcdCFtb2R1bGUgfHxcbiBcdFx0XHRcdFx0KG1vZHVsZS5ob3QuX3NlbGZBY2NlcHRlZCAmJiAhbW9kdWxlLmhvdC5fc2VsZkludmFsaWRhdGVkKVxuIFx0XHRcdFx0KVxuIFx0XHRcdFx0XHRjb250aW51ZTtcbiBcdFx0XHRcdGlmIChtb2R1bGUuaG90Ll9zZWxmRGVjbGluZWQpIHtcbiBcdFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0XHR0eXBlOiBcInNlbGYtZGVjbGluZWRcIixcbiBcdFx0XHRcdFx0XHRjaGFpbjogY2hhaW4sXG4gXHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkXG4gXHRcdFx0XHRcdH07XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRpZiAobW9kdWxlLmhvdC5fbWFpbikge1xuIFx0XHRcdFx0XHRyZXR1cm4ge1xuIFx0XHRcdFx0XHRcdHR5cGU6IFwidW5hY2NlcHRlZFwiLFxuIFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbixcbiBcdFx0XHRcdFx0XHRtb2R1bGVJZDogbW9kdWxlSWRcbiBcdFx0XHRcdFx0fTtcbiBcdFx0XHRcdH1cbiBcdFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbW9kdWxlLnBhcmVudHMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHRcdFx0dmFyIHBhcmVudElkID0gbW9kdWxlLnBhcmVudHNbaV07XG4gXHRcdFx0XHRcdHZhciBwYXJlbnQgPSBpbnN0YWxsZWRNb2R1bGVzW3BhcmVudElkXTtcbiBcdFx0XHRcdFx0aWYgKCFwYXJlbnQpIGNvbnRpbnVlO1xuIFx0XHRcdFx0XHRpZiAocGFyZW50LmhvdC5fZGVjbGluZWREZXBlbmRlbmNpZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0XHRcdHR5cGU6IFwiZGVjbGluZWRcIixcbiBcdFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbi5jb25jYXQoW3BhcmVudElkXSksXG4gXHRcdFx0XHRcdFx0XHRtb2R1bGVJZDogbW9kdWxlSWQsXG4gXHRcdFx0XHRcdFx0XHRwYXJlbnRJZDogcGFyZW50SWRcbiBcdFx0XHRcdFx0XHR9O1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGlmIChvdXRkYXRlZE1vZHVsZXMuaW5kZXhPZihwYXJlbnRJZCkgIT09IC0xKSBjb250aW51ZTtcbiBcdFx0XHRcdFx0aWYgKHBhcmVudC5ob3QuX2FjY2VwdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSkge1xuIFx0XHRcdFx0XHRcdGlmICghb3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdKVxuIFx0XHRcdFx0XHRcdFx0b3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdID0gW107XG4gXHRcdFx0XHRcdFx0YWRkQWxsVG9TZXQob3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdLCBbbW9kdWxlSWRdKTtcbiBcdFx0XHRcdFx0XHRjb250aW51ZTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRkZWxldGUgb3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdO1xuIFx0XHRcdFx0XHRvdXRkYXRlZE1vZHVsZXMucHVzaChwYXJlbnRJZCk7XG4gXHRcdFx0XHRcdHF1ZXVlLnB1c2goe1xuIFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbi5jb25jYXQoW3BhcmVudElkXSksXG4gXHRcdFx0XHRcdFx0aWQ6IHBhcmVudElkXG4gXHRcdFx0XHRcdH0pO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cblxuIFx0XHRcdHJldHVybiB7XG4gXHRcdFx0XHR0eXBlOiBcImFjY2VwdGVkXCIsXG4gXHRcdFx0XHRtb2R1bGVJZDogdXBkYXRlTW9kdWxlSWQsXG4gXHRcdFx0XHRvdXRkYXRlZE1vZHVsZXM6IG91dGRhdGVkTW9kdWxlcyxcbiBcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzOiBvdXRkYXRlZERlcGVuZGVuY2llc1xuIFx0XHRcdH07XG4gXHRcdH1cblxuIFx0XHRmdW5jdGlvbiBhZGRBbGxUb1NldChhLCBiKSB7XG4gXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBiLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0XHR2YXIgaXRlbSA9IGJbaV07XG4gXHRcdFx0XHRpZiAoYS5pbmRleE9mKGl0ZW0pID09PSAtMSkgYS5wdXNoKGl0ZW0pO1xuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIGF0IGJlZ2luIGFsbCB1cGRhdGVzIG1vZHVsZXMgYXJlIG91dGRhdGVkXG4gXHRcdC8vIHRoZSBcIm91dGRhdGVkXCIgc3RhdHVzIGNhbiBwcm9wYWdhdGUgdG8gcGFyZW50cyBpZiB0aGV5IGRvbid0IGFjY2VwdCB0aGUgY2hpbGRyZW5cbiBcdFx0dmFyIG91dGRhdGVkRGVwZW5kZW5jaWVzID0ge307XG4gXHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbXTtcbiBcdFx0dmFyIGFwcGxpZWRVcGRhdGUgPSB7fTtcblxuIFx0XHR2YXIgd2FyblVuZXhwZWN0ZWRSZXF1aXJlID0gZnVuY3Rpb24gd2FyblVuZXhwZWN0ZWRSZXF1aXJlKCkge1xuIFx0XHRcdGNvbnNvbGUud2FybihcbiBcdFx0XHRcdFwiW0hNUl0gdW5leHBlY3RlZCByZXF1aXJlKFwiICsgcmVzdWx0Lm1vZHVsZUlkICsgXCIpIHRvIGRpc3Bvc2VkIG1vZHVsZVwiXG4gXHRcdFx0KTtcbiBcdFx0fTtcblxuIFx0XHRmb3IgKHZhciBpZCBpbiBob3RVcGRhdGUpIHtcbiBcdFx0XHRpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGhvdFVwZGF0ZSwgaWQpKSB7XG4gXHRcdFx0XHRtb2R1bGVJZCA9IHRvTW9kdWxlSWQoaWQpO1xuIFx0XHRcdFx0LyoqIEB0eXBlIHtUT0RPfSAqL1xuIFx0XHRcdFx0dmFyIHJlc3VsdDtcbiBcdFx0XHRcdGlmIChob3RVcGRhdGVbaWRdKSB7XG4gXHRcdFx0XHRcdHJlc3VsdCA9IGdldEFmZmVjdGVkU3R1ZmYobW9kdWxlSWQpO1xuIFx0XHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdFx0cmVzdWx0ID0ge1xuIFx0XHRcdFx0XHRcdHR5cGU6IFwiZGlzcG9zZWRcIixcbiBcdFx0XHRcdFx0XHRtb2R1bGVJZDogaWRcbiBcdFx0XHRcdFx0fTtcbiBcdFx0XHRcdH1cbiBcdFx0XHRcdC8qKiBAdHlwZSB7RXJyb3J8ZmFsc2V9ICovXG4gXHRcdFx0XHR2YXIgYWJvcnRFcnJvciA9IGZhbHNlO1xuIFx0XHRcdFx0dmFyIGRvQXBwbHkgPSBmYWxzZTtcbiBcdFx0XHRcdHZhciBkb0Rpc3Bvc2UgPSBmYWxzZTtcbiBcdFx0XHRcdHZhciBjaGFpbkluZm8gPSBcIlwiO1xuIFx0XHRcdFx0aWYgKHJlc3VsdC5jaGFpbikge1xuIFx0XHRcdFx0XHRjaGFpbkluZm8gPSBcIlxcblVwZGF0ZSBwcm9wYWdhdGlvbjogXCIgKyByZXN1bHQuY2hhaW4uam9pbihcIiAtPiBcIik7XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRzd2l0Y2ggKHJlc3VsdC50eXBlKSB7XG4gXHRcdFx0XHRcdGNhc2UgXCJzZWxmLWRlY2xpbmVkXCI6XG4gXHRcdFx0XHRcdFx0aWYgKG9wdGlvbnMub25EZWNsaW5lZCkgb3B0aW9ucy5vbkRlY2xpbmVkKHJlc3VsdCk7XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZURlY2xpbmVkKVxuIFx0XHRcdFx0XHRcdFx0YWJvcnRFcnJvciA9IG5ldyBFcnJvcihcbiBcdFx0XHRcdFx0XHRcdFx0XCJBYm9ydGVkIGJlY2F1c2Ugb2Ygc2VsZiBkZWNsaW5lOiBcIiArXG4gXHRcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm1vZHVsZUlkICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRjaGFpbkluZm9cbiBcdFx0XHRcdFx0XHRcdCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJkZWNsaW5lZFwiOlxuIFx0XHRcdFx0XHRcdGlmIChvcHRpb25zLm9uRGVjbGluZWQpIG9wdGlvbnMub25EZWNsaW5lZChyZXN1bHQpO1xuIFx0XHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVEZWNsaW5lZClcbiBcdFx0XHRcdFx0XHRcdGFib3J0RXJyb3IgPSBuZXcgRXJyb3IoXG4gXHRcdFx0XHRcdFx0XHRcdFwiQWJvcnRlZCBiZWNhdXNlIG9mIGRlY2xpbmVkIGRlcGVuZGVuY3k6IFwiICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRyZXN1bHQubW9kdWxlSWQgK1xuIFx0XHRcdFx0XHRcdFx0XHRcdFwiIGluIFwiICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRyZXN1bHQucGFyZW50SWQgK1xuIFx0XHRcdFx0XHRcdFx0XHRcdGNoYWluSW5mb1xuIFx0XHRcdFx0XHRcdFx0KTtcbiBcdFx0XHRcdFx0XHRicmVhaztcbiBcdFx0XHRcdFx0Y2FzZSBcInVuYWNjZXB0ZWRcIjpcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vblVuYWNjZXB0ZWQpIG9wdGlvbnMub25VbmFjY2VwdGVkKHJlc3VsdCk7XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZVVuYWNjZXB0ZWQpXG4gXHRcdFx0XHRcdFx0XHRhYm9ydEVycm9yID0gbmV3IEVycm9yKFxuIFx0XHRcdFx0XHRcdFx0XHRcIkFib3J0ZWQgYmVjYXVzZSBcIiArIG1vZHVsZUlkICsgXCIgaXMgbm90IGFjY2VwdGVkXCIgKyBjaGFpbkluZm9cbiBcdFx0XHRcdFx0XHRcdCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJhY2NlcHRlZFwiOlxuIFx0XHRcdFx0XHRcdGlmIChvcHRpb25zLm9uQWNjZXB0ZWQpIG9wdGlvbnMub25BY2NlcHRlZChyZXN1bHQpO1xuIFx0XHRcdFx0XHRcdGRvQXBwbHkgPSB0cnVlO1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0XHRjYXNlIFwiZGlzcG9zZWRcIjpcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vbkRpc3Bvc2VkKSBvcHRpb25zLm9uRGlzcG9zZWQocmVzdWx0KTtcbiBcdFx0XHRcdFx0XHRkb0Rpc3Bvc2UgPSB0cnVlO1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0XHRkZWZhdWx0OlxuIFx0XHRcdFx0XHRcdHRocm93IG5ldyBFcnJvcihcIlVuZXhjZXB0aW9uIHR5cGUgXCIgKyByZXN1bHQudHlwZSk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRpZiAoYWJvcnRFcnJvcikge1xuIFx0XHRcdFx0XHRob3RTZXRTdGF0dXMoXCJhYm9ydFwiKTtcbiBcdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGFib3J0RXJyb3IpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0aWYgKGRvQXBwbHkpIHtcbiBcdFx0XHRcdFx0YXBwbGllZFVwZGF0ZVttb2R1bGVJZF0gPSBob3RVcGRhdGVbbW9kdWxlSWRdO1xuIFx0XHRcdFx0XHRhZGRBbGxUb1NldChvdXRkYXRlZE1vZHVsZXMsIHJlc3VsdC5vdXRkYXRlZE1vZHVsZXMpO1xuIFx0XHRcdFx0XHRmb3IgKG1vZHVsZUlkIGluIHJlc3VsdC5vdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdFx0XHRcdGlmIChcbiBcdFx0XHRcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChcbiBcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm91dGRhdGVkRGVwZW5kZW5jaWVzLFxuIFx0XHRcdFx0XHRcdFx0XHRtb2R1bGVJZFxuIFx0XHRcdFx0XHRcdFx0KVxuIFx0XHRcdFx0XHRcdCkge1xuIFx0XHRcdFx0XHRcdFx0aWYgKCFvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF0pXG4gXHRcdFx0XHRcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSA9IFtdO1xuIFx0XHRcdFx0XHRcdFx0YWRkQWxsVG9TZXQoXG4gXHRcdFx0XHRcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSxcbiBcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXVxuIFx0XHRcdFx0XHRcdFx0KTtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH1cbiBcdFx0XHRcdGlmIChkb0Rpc3Bvc2UpIHtcbiBcdFx0XHRcdFx0YWRkQWxsVG9TZXQob3V0ZGF0ZWRNb2R1bGVzLCBbcmVzdWx0Lm1vZHVsZUlkXSk7XG4gXHRcdFx0XHRcdGFwcGxpZWRVcGRhdGVbbW9kdWxlSWRdID0gd2FyblVuZXhwZWN0ZWRSZXF1aXJlO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIFN0b3JlIHNlbGYgYWNjZXB0ZWQgb3V0ZGF0ZWQgbW9kdWxlcyB0byByZXF1aXJlIHRoZW0gbGF0ZXIgYnkgdGhlIG1vZHVsZSBzeXN0ZW1cbiBcdFx0dmFyIG91dGRhdGVkU2VsZkFjY2VwdGVkTW9kdWxlcyA9IFtdO1xuIFx0XHRmb3IgKGkgPSAwOyBpIDwgb3V0ZGF0ZWRNb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0bW9kdWxlSWQgPSBvdXRkYXRlZE1vZHVsZXNbaV07XG4gXHRcdFx0aWYgKFxuIFx0XHRcdFx0aW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gJiZcbiBcdFx0XHRcdGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmhvdC5fc2VsZkFjY2VwdGVkICYmXG4gXHRcdFx0XHQvLyByZW1vdmVkIHNlbGYtYWNjZXB0ZWQgbW9kdWxlcyBzaG91bGQgbm90IGJlIHJlcXVpcmVkXG4gXHRcdFx0XHRhcHBsaWVkVXBkYXRlW21vZHVsZUlkXSAhPT0gd2FyblVuZXhwZWN0ZWRSZXF1aXJlICYmXG4gXHRcdFx0XHQvLyB3aGVuIGNhbGxlZCBpbnZhbGlkYXRlIHNlbGYtYWNjZXB0aW5nIGlzIG5vdCBwb3NzaWJsZVxuIFx0XHRcdFx0IWluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmhvdC5fc2VsZkludmFsaWRhdGVkXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRvdXRkYXRlZFNlbGZBY2NlcHRlZE1vZHVsZXMucHVzaCh7XG4gXHRcdFx0XHRcdG1vZHVsZTogbW9kdWxlSWQsXG4gXHRcdFx0XHRcdHBhcmVudHM6IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLnBhcmVudHMuc2xpY2UoKSxcbiBcdFx0XHRcdFx0ZXJyb3JIYW5kbGVyOiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5ob3QuX3NlbGZBY2NlcHRlZFxuIFx0XHRcdFx0fSk7XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gTm93IGluIFwiZGlzcG9zZVwiIHBoYXNlXG4gXHRcdGhvdFNldFN0YXR1cyhcImRpc3Bvc2VcIik7XG4gXHRcdE9iamVjdC5rZXlzKGhvdEF2YWlsYWJsZUZpbGVzTWFwKS5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rSWQpIHtcbiBcdFx0XHRpZiAoaG90QXZhaWxhYmxlRmlsZXNNYXBbY2h1bmtJZF0gPT09IGZhbHNlKSB7XG4gXHRcdFx0XHRob3REaXNwb3NlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0fVxuIFx0XHR9KTtcblxuIFx0XHR2YXIgaWR4O1xuIFx0XHR2YXIgcXVldWUgPSBvdXRkYXRlZE1vZHVsZXMuc2xpY2UoKTtcbiBcdFx0d2hpbGUgKHF1ZXVlLmxlbmd0aCA+IDApIHtcbiBcdFx0XHRtb2R1bGVJZCA9IHF1ZXVlLnBvcCgpO1xuIFx0XHRcdG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHRcdGlmICghbW9kdWxlKSBjb250aW51ZTtcblxuIFx0XHRcdHZhciBkYXRhID0ge307XG5cbiBcdFx0XHQvLyBDYWxsIGRpc3Bvc2UgaGFuZGxlcnNcbiBcdFx0XHR2YXIgZGlzcG9zZUhhbmRsZXJzID0gbW9kdWxlLmhvdC5fZGlzcG9zZUhhbmRsZXJzO1xuIFx0XHRcdGZvciAoaiA9IDA7IGogPCBkaXNwb3NlSGFuZGxlcnMubGVuZ3RoOyBqKyspIHtcbiBcdFx0XHRcdGNiID0gZGlzcG9zZUhhbmRsZXJzW2pdO1xuIFx0XHRcdFx0Y2IoZGF0YSk7XG4gXHRcdFx0fVxuIFx0XHRcdGhvdEN1cnJlbnRNb2R1bGVEYXRhW21vZHVsZUlkXSA9IGRhdGE7XG5cbiBcdFx0XHQvLyBkaXNhYmxlIG1vZHVsZSAodGhpcyBkaXNhYmxlcyByZXF1aXJlcyBmcm9tIHRoaXMgbW9kdWxlKVxuIFx0XHRcdG1vZHVsZS5ob3QuYWN0aXZlID0gZmFsc2U7XG5cbiBcdFx0XHQvLyByZW1vdmUgbW9kdWxlIGZyb20gY2FjaGVcbiBcdFx0XHRkZWxldGUgaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF07XG5cbiBcdFx0XHQvLyB3aGVuIGRpc3Bvc2luZyB0aGVyZSBpcyBubyBuZWVkIHRvIGNhbGwgZGlzcG9zZSBoYW5kbGVyXG4gXHRcdFx0ZGVsZXRlIG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXTtcblxuIFx0XHRcdC8vIHJlbW92ZSBcInBhcmVudHNcIiByZWZlcmVuY2VzIGZyb20gYWxsIGNoaWxkcmVuXG4gXHRcdFx0Zm9yIChqID0gMDsgaiA8IG1vZHVsZS5jaGlsZHJlbi5sZW5ndGg7IGorKykge1xuIFx0XHRcdFx0dmFyIGNoaWxkID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGUuY2hpbGRyZW5bal1dO1xuIFx0XHRcdFx0aWYgKCFjaGlsZCkgY29udGludWU7XG4gXHRcdFx0XHRpZHggPSBjaGlsZC5wYXJlbnRzLmluZGV4T2YobW9kdWxlSWQpO1xuIFx0XHRcdFx0aWYgKGlkeCA+PSAwKSB7XG4gXHRcdFx0XHRcdGNoaWxkLnBhcmVudHMuc3BsaWNlKGlkeCwgMSk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gcmVtb3ZlIG91dGRhdGVkIGRlcGVuZGVuY3kgZnJvbSBtb2R1bGUgY2hpbGRyZW5cbiBcdFx0dmFyIGRlcGVuZGVuY3k7XG4gXHRcdHZhciBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llcztcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBvdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvdXRkYXRlZERlcGVuZGVuY2llcywgbW9kdWxlSWQpXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdGlmIChtb2R1bGUpIHtcbiBcdFx0XHRcdFx0bW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMgPSBvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRcdGZvciAoaiA9IDA7IGogPCBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llcy5sZW5ndGg7IGorKykge1xuIFx0XHRcdFx0XHRcdGRlcGVuZGVuY3kgPSBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llc1tqXTtcbiBcdFx0XHRcdFx0XHRpZHggPSBtb2R1bGUuY2hpbGRyZW4uaW5kZXhPZihkZXBlbmRlbmN5KTtcbiBcdFx0XHRcdFx0XHRpZiAoaWR4ID49IDApIG1vZHVsZS5jaGlsZHJlbi5zcGxpY2UoaWR4LCAxKTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIE5vdyBpbiBcImFwcGx5XCIgcGhhc2VcbiBcdFx0aG90U2V0U3RhdHVzKFwiYXBwbHlcIik7XG5cbiBcdFx0aWYgKGhvdFVwZGF0ZU5ld0hhc2ggIT09IHVuZGVmaW5lZCkge1xuIFx0XHRcdGhvdEN1cnJlbnRIYXNoID0gaG90VXBkYXRlTmV3SGFzaDtcbiBcdFx0XHRob3RVcGRhdGVOZXdIYXNoID0gdW5kZWZpbmVkO1xuIFx0XHR9XG4gXHRcdGhvdFVwZGF0ZSA9IHVuZGVmaW5lZDtcblxuIFx0XHQvLyBpbnNlcnQgbmV3IGNvZGVcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBhcHBsaWVkVXBkYXRlKSB7XG4gXHRcdFx0aWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhcHBsaWVkVXBkYXRlLCBtb2R1bGVJZCkpIHtcbiBcdFx0XHRcdG1vZHVsZXNbbW9kdWxlSWRdID0gYXBwbGllZFVwZGF0ZVttb2R1bGVJZF07XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gY2FsbCBhY2NlcHQgaGFuZGxlcnNcbiBcdFx0dmFyIGVycm9yID0gbnVsbDtcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBvdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvdXRkYXRlZERlcGVuZGVuY2llcywgbW9kdWxlSWQpXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdGlmIChtb2R1bGUpIHtcbiBcdFx0XHRcdFx0bW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMgPSBvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRcdHZhciBjYWxsYmFja3MgPSBbXTtcbiBcdFx0XHRcdFx0Zm9yIChpID0gMDsgaSA8IG1vZHVsZU91dGRhdGVkRGVwZW5kZW5jaWVzLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0XHRcdFx0ZGVwZW5kZW5jeSA9IG1vZHVsZU91dGRhdGVkRGVwZW5kZW5jaWVzW2ldO1xuIFx0XHRcdFx0XHRcdGNiID0gbW9kdWxlLmhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwZW5kZW5jeV07XG4gXHRcdFx0XHRcdFx0aWYgKGNiKSB7XG4gXHRcdFx0XHRcdFx0XHRpZiAoY2FsbGJhY2tzLmluZGV4T2YoY2IpICE9PSAtMSkgY29udGludWU7XG4gXHRcdFx0XHRcdFx0XHRjYWxsYmFja3MucHVzaChjYik7XG4gXHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGZvciAoaSA9IDA7IGkgPCBjYWxsYmFja3MubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHRcdFx0XHRjYiA9IGNhbGxiYWNrc1tpXTtcbiBcdFx0XHRcdFx0XHR0cnkge1xuIFx0XHRcdFx0XHRcdFx0Y2IobW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMpO1xuIFx0XHRcdFx0XHRcdH0gY2F0Y2ggKGVycikge1xuIFx0XHRcdFx0XHRcdFx0aWYgKG9wdGlvbnMub25FcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdFx0XHR0eXBlOiBcImFjY2VwdC1lcnJvcmVkXCIsXG4gXHRcdFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0XHRcdGRlcGVuZGVuY3lJZDogbW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXNbaV0sXG4gXHRcdFx0XHRcdFx0XHRcdFx0ZXJyb3I6IGVyclxuIFx0XHRcdFx0XHRcdFx0XHR9KTtcbiBcdFx0XHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVFcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0XHRcdGlmICghZXJyb3IpIGVycm9yID0gZXJyO1xuIFx0XHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIExvYWQgc2VsZiBhY2NlcHRlZCBtb2R1bGVzXG4gXHRcdGZvciAoaSA9IDA7IGkgPCBvdXRkYXRlZFNlbGZBY2NlcHRlZE1vZHVsZXMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHR2YXIgaXRlbSA9IG91dGRhdGVkU2VsZkFjY2VwdGVkTW9kdWxlc1tpXTtcbiBcdFx0XHRtb2R1bGVJZCA9IGl0ZW0ubW9kdWxlO1xuIFx0XHRcdGhvdEN1cnJlbnRQYXJlbnRzID0gaXRlbS5wYXJlbnRzO1xuIFx0XHRcdGhvdEN1cnJlbnRDaGlsZE1vZHVsZSA9IG1vZHVsZUlkO1xuIFx0XHRcdHRyeSB7XG4gXHRcdFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKTtcbiBcdFx0XHR9IGNhdGNoIChlcnIpIHtcbiBcdFx0XHRcdGlmICh0eXBlb2YgaXRlbS5lcnJvckhhbmRsZXIgPT09IFwiZnVuY3Rpb25cIikge1xuIFx0XHRcdFx0XHR0cnkge1xuIFx0XHRcdFx0XHRcdGl0ZW0uZXJyb3JIYW5kbGVyKGVycik7XG4gXHRcdFx0XHRcdH0gY2F0Y2ggKGVycjIpIHtcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vbkVycm9yZWQpIHtcbiBcdFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdFx0dHlwZTogXCJzZWxmLWFjY2VwdC1lcnJvci1oYW5kbGVyLWVycm9yZWRcIixcbiBcdFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0XHRlcnJvcjogZXJyMixcbiBcdFx0XHRcdFx0XHRcdFx0b3JpZ2luYWxFcnJvcjogZXJyXG4gXHRcdFx0XHRcdFx0XHR9KTtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZUVycm9yZWQpIHtcbiBcdFx0XHRcdFx0XHRcdGlmICghZXJyb3IpIGVycm9yID0gZXJyMjtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdFx0aWYgKCFlcnJvcikgZXJyb3IgPSBlcnI7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHRcdGlmIChvcHRpb25zLm9uRXJyb3JlZCkge1xuIFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdHR5cGU6IFwic2VsZi1hY2NlcHQtZXJyb3JlZFwiLFxuIFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0ZXJyb3I6IGVyclxuIFx0XHRcdFx0XHRcdH0pO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVFcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0aWYgKCFlcnJvcikgZXJyb3IgPSBlcnI7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH1cbiBcdFx0XHR9XG4gXHRcdH1cblxuIFx0XHQvLyBoYW5kbGUgZXJyb3JzIGluIGFjY2VwdCBoYW5kbGVycyBhbmQgc2VsZiBhY2NlcHRlZCBtb2R1bGUgbG9hZFxuIFx0XHRpZiAoZXJyb3IpIHtcbiBcdFx0XHRob3RTZXRTdGF0dXMoXCJmYWlsXCIpO1xuIFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG4gXHRcdH1cblxuIFx0XHRpZiAoaG90UXVldWVkSW52YWxpZGF0ZWRNb2R1bGVzKSB7XG4gXHRcdFx0cmV0dXJuIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucykudGhlbihmdW5jdGlvbihsaXN0KSB7XG4gXHRcdFx0XHRvdXRkYXRlZE1vZHVsZXMuZm9yRWFjaChmdW5jdGlvbihtb2R1bGVJZCkge1xuIFx0XHRcdFx0XHRpZiAobGlzdC5pbmRleE9mKG1vZHVsZUlkKSA8IDApIGxpc3QucHVzaChtb2R1bGVJZCk7XG4gXHRcdFx0XHR9KTtcbiBcdFx0XHRcdHJldHVybiBsaXN0O1xuIFx0XHRcdH0pO1xuIFx0XHR9XG5cbiBcdFx0aG90U2V0U3RhdHVzKFwiaWRsZVwiKTtcbiBcdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHtcbiBcdFx0XHRyZXNvbHZlKG91dGRhdGVkTW9kdWxlcyk7XG4gXHRcdH0pO1xuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RBcHBseUludmFsaWRhdGVkTW9kdWxlcygpIHtcbiBcdFx0aWYgKGhvdFF1ZXVlZEludmFsaWRhdGVkTW9kdWxlcykge1xuIFx0XHRcdGlmICghaG90VXBkYXRlKSBob3RVcGRhdGUgPSB7fTtcbiBcdFx0XHRob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXMuZm9yRWFjaChob3RBcHBseUludmFsaWRhdGVkTW9kdWxlKTtcbiBcdFx0XHRob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXMgPSB1bmRlZmluZWQ7XG4gXHRcdFx0cmV0dXJuIHRydWU7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZShtb2R1bGVJZCkge1xuIFx0XHRpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChob3RVcGRhdGUsIG1vZHVsZUlkKSlcbiBcdFx0XHRob3RVcGRhdGVbbW9kdWxlSWRdID0gbW9kdWxlc1ttb2R1bGVJZF07XG4gXHR9XG5cbiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIG9iamVjdCB0byBzdG9yZSBsb2FkZWQgYW5kIGxvYWRpbmcgY2h1bmtzXG4gXHQvLyB1bmRlZmluZWQgPSBjaHVuayBub3QgbG9hZGVkLCBudWxsID0gY2h1bmsgcHJlbG9hZGVkL3ByZWZldGNoZWRcbiBcdC8vIFByb21pc2UgPSBjaHVuayBsb2FkaW5nLCAwID0gY2h1bmsgbG9hZGVkXG4gXHR2YXIgaW5zdGFsbGVkQ2h1bmtzID0ge1xuIFx0XHRcIndlYnBhY2tcIjogMFxuIFx0fTtcblxuIFx0dmFyIGRlZmVycmVkTW9kdWxlcyA9IFtdO1xuXG4gXHQvLyBzY3JpcHQgcGF0aCBmdW5jdGlvblxuIFx0ZnVuY3Rpb24ganNvbnBTY3JpcHRTcmMoY2h1bmtJZCkge1xuIFx0XHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXy5wICsgXCJzdGF0aWMvY2h1bmtzL1wiICsgKHt9W2NodW5rSWRdfHxjaHVua0lkKSArIFwiLmpzXCJcbiBcdH1cblxuIFx0Ly8gbm9vcCBmbnMgdG8gcHJldmVudCBydW50aW1lIGVycm9ycyBkdXJpbmcgaW5pdGlhbGl6YXRpb25cbiBcdGlmICh0eXBlb2Ygc2VsZiAhPT0gXCJ1bmRlZmluZWRcIikge1xuIFx0XHRzZWxmLiRSZWZyZXNoUmVnJCA9IGZ1bmN0aW9uICgpIHt9O1xuIFx0XHRzZWxmLiRSZWZyZXNoU2lnJCA9IGZ1bmN0aW9uICgpIHtcbiBcdFx0XHRyZXR1cm4gZnVuY3Rpb24gKHR5cGUpIHtcbiBcdFx0XHRcdHJldHVybiB0eXBlO1xuIFx0XHRcdH07XG4gXHRcdH07XG4gXHR9XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9LFxuIFx0XHRcdGhvdDogaG90Q3JlYXRlTW9kdWxlKG1vZHVsZUlkKSxcbiBcdFx0XHRwYXJlbnRzOiAoaG90Q3VycmVudFBhcmVudHNUZW1wID0gaG90Q3VycmVudFBhcmVudHMsIGhvdEN1cnJlbnRQYXJlbnRzID0gW10sIGhvdEN1cnJlbnRQYXJlbnRzVGVtcCksXG4gXHRcdFx0Y2hpbGRyZW46IFtdXG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdHZhciB0aHJldyA9IHRydWU7XG4gXHRcdHRyeSB7XG5cbiBcdFx0ICAgICAgICB2YXIgaGFzUmVmcmVzaCA9IHR5cGVvZiBzZWxmICE9PSBcInVuZGVmaW5lZFwiICYmICEhc2VsZi4kUmVmcmVzaEludGVyY2VwdE1vZHVsZUV4ZWN1dGlvbiQ7XG4gXHRcdCAgICAgICAgdmFyIGNsZWFudXAgPSBoYXNSZWZyZXNoXG4gXHRcdCAgICAgICAgICA/IHNlbGYuJFJlZnJlc2hJbnRlcmNlcHRNb2R1bGVFeGVjdXRpb24kKG1vZHVsZUlkKVxuIFx0XHQgICAgICAgICAgOiBmdW5jdGlvbigpIHt9O1xuIFx0XHQgICAgICAgIHRyeSB7XG4gXHRcdCAgICAgICAgXG4gXHRcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgaG90Q3JlYXRlUmVxdWlyZShtb2R1bGVJZCkpO1xuXG4gXHRcdCAgICAgICAgfSBmaW5hbGx5IHtcbiBcdFx0ICAgICAgICAgIGNsZWFudXAoKTtcbiBcdFx0ICAgICAgICB9XG4gXHRcdCAgICAgICAgXG4gXHRcdFx0dGhyZXcgPSBmYWxzZTtcbiBcdFx0fSBmaW5hbGx5IHtcbiBcdFx0XHRpZih0aHJldykgZGVsZXRlIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHR9XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG4gXHQvLyBUaGlzIGZpbGUgY29udGFpbnMgb25seSB0aGUgZW50cnkgY2h1bmsuXG4gXHQvLyBUaGUgY2h1bmsgbG9hZGluZyBmdW5jdGlvbiBmb3IgYWRkaXRpb25hbCBjaHVua3NcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZSA9IGZ1bmN0aW9uIHJlcXVpcmVFbnN1cmUoY2h1bmtJZCkge1xuIFx0XHR2YXIgcHJvbWlzZXMgPSBbXTtcblxuXG4gXHRcdC8vIEpTT05QIGNodW5rIGxvYWRpbmcgZm9yIGphdmFzY3JpcHRcblxuIFx0XHR2YXIgaW5zdGFsbGVkQ2h1bmtEYXRhID0gaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdO1xuIFx0XHRpZihpbnN0YWxsZWRDaHVua0RhdGEgIT09IDApIHsgLy8gMCBtZWFucyBcImFscmVhZHkgaW5zdGFsbGVkXCIuXG5cbiBcdFx0XHQvLyBhIFByb21pc2UgbWVhbnMgXCJjdXJyZW50bHkgbG9hZGluZ1wiLlxuIFx0XHRcdGlmKGluc3RhbGxlZENodW5rRGF0YSkge1xuIFx0XHRcdFx0cHJvbWlzZXMucHVzaChpbnN0YWxsZWRDaHVua0RhdGFbMl0pO1xuIFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHQvLyBzZXR1cCBQcm9taXNlIGluIGNodW5rIGNhY2hlXG4gXHRcdFx0XHR2YXIgcHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdFx0XHRpbnN0YWxsZWRDaHVua0RhdGEgPSBpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0gPSBbcmVzb2x2ZSwgcmVqZWN0XTtcbiBcdFx0XHRcdH0pO1xuIFx0XHRcdFx0cHJvbWlzZXMucHVzaChpbnN0YWxsZWRDaHVua0RhdGFbMl0gPSBwcm9taXNlKTtcblxuIFx0XHRcdFx0Ly8gc3RhcnQgY2h1bmsgbG9hZGluZ1xuIFx0XHRcdFx0dmFyIHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuIFx0XHRcdFx0dmFyIG9uU2NyaXB0Q29tcGxldGU7XG5cbiBcdFx0XHRcdHNjcmlwdC5jaGFyc2V0ID0gJ3V0Zi04JztcbiBcdFx0XHRcdHNjcmlwdC50aW1lb3V0ID0gMTIwO1xuIFx0XHRcdFx0aWYgKF9fd2VicGFja19yZXF1aXJlX18ubmMpIHtcbiBcdFx0XHRcdFx0c2NyaXB0LnNldEF0dHJpYnV0ZShcIm5vbmNlXCIsIF9fd2VicGFja19yZXF1aXJlX18ubmMpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0c2NyaXB0LnNyYyA9IGpzb25wU2NyaXB0U3JjKGNodW5rSWQpO1xuXG4gXHRcdFx0XHQvLyBjcmVhdGUgZXJyb3IgYmVmb3JlIHN0YWNrIHVud291bmQgdG8gZ2V0IHVzZWZ1bCBzdGFja3RyYWNlIGxhdGVyXG4gXHRcdFx0XHR2YXIgZXJyb3IgPSBuZXcgRXJyb3IoKTtcbiBcdFx0XHRcdG9uU2NyaXB0Q29tcGxldGUgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiBcdFx0XHRcdFx0Ly8gYXZvaWQgbWVtIGxlYWtzIGluIElFLlxuIFx0XHRcdFx0XHRzY3JpcHQub25lcnJvciA9IHNjcmlwdC5vbmxvYWQgPSBudWxsO1xuIFx0XHRcdFx0XHRjbGVhclRpbWVvdXQodGltZW91dCk7XG4gXHRcdFx0XHRcdHZhciBjaHVuayA9IGluc3RhbGxlZENodW5rc1tjaHVua0lkXTtcbiBcdFx0XHRcdFx0aWYoY2h1bmsgIT09IDApIHtcbiBcdFx0XHRcdFx0XHRpZihjaHVuaykge1xuIFx0XHRcdFx0XHRcdFx0dmFyIGVycm9yVHlwZSA9IGV2ZW50ICYmIChldmVudC50eXBlID09PSAnbG9hZCcgPyAnbWlzc2luZycgOiBldmVudC50eXBlKTtcbiBcdFx0XHRcdFx0XHRcdHZhciByZWFsU3JjID0gZXZlbnQgJiYgZXZlbnQudGFyZ2V0ICYmIGV2ZW50LnRhcmdldC5zcmM7XG4gXHRcdFx0XHRcdFx0XHRlcnJvci5tZXNzYWdlID0gJ0xvYWRpbmcgY2h1bmsgJyArIGNodW5rSWQgKyAnIGZhaWxlZC5cXG4oJyArIGVycm9yVHlwZSArICc6ICcgKyByZWFsU3JjICsgJyknO1xuIFx0XHRcdFx0XHRcdFx0ZXJyb3IubmFtZSA9ICdDaHVua0xvYWRFcnJvcic7XG4gXHRcdFx0XHRcdFx0XHRlcnJvci50eXBlID0gZXJyb3JUeXBlO1xuIFx0XHRcdFx0XHRcdFx0ZXJyb3IucmVxdWVzdCA9IHJlYWxTcmM7XG4gXHRcdFx0XHRcdFx0XHRjaHVua1sxXShlcnJvcik7XG4gXHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRcdGluc3RhbGxlZENodW5rc1tjaHVua0lkXSA9IHVuZGVmaW5lZDtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fTtcbiBcdFx0XHRcdHZhciB0aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpe1xuIFx0XHRcdFx0XHRvblNjcmlwdENvbXBsZXRlKHsgdHlwZTogJ3RpbWVvdXQnLCB0YXJnZXQ6IHNjcmlwdCB9KTtcbiBcdFx0XHRcdH0sIDEyMDAwMCk7XG4gXHRcdFx0XHRzY3JpcHQub25lcnJvciA9IHNjcmlwdC5vbmxvYWQgPSBvblNjcmlwdENvbXBsZXRlO1xuIFx0XHRcdFx0ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRyZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuIFx0fTtcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBnZXR0ZXIgfSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uciA9IGZ1bmN0aW9uKGV4cG9ydHMpIHtcbiBcdFx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG4gXHRcdH1cbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiBcdH07XG5cbiBcdC8vIGNyZWF0ZSBhIGZha2UgbmFtZXNwYWNlIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDE6IHZhbHVlIGlzIGEgbW9kdWxlIGlkLCByZXF1aXJlIGl0XG4gXHQvLyBtb2RlICYgMjogbWVyZ2UgYWxsIHByb3BlcnRpZXMgb2YgdmFsdWUgaW50byB0aGUgbnNcbiBcdC8vIG1vZGUgJiA0OiByZXR1cm4gdmFsdWUgd2hlbiBhbHJlYWR5IG5zIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDh8MTogYmVoYXZlIGxpa2UgcmVxdWlyZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0aWYobW9kZSAmIDEpIHZhbHVlID0gX193ZWJwYWNrX3JlcXVpcmVfXyh2YWx1ZSk7XG4gXHRcdGlmKG1vZGUgJiA4KSByZXR1cm4gdmFsdWU7XG4gXHRcdGlmKChtb2RlICYgNCkgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAmJiB2YWx1ZS5fX2VzTW9kdWxlKSByZXR1cm4gdmFsdWU7XG4gXHRcdHZhciBucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18ucihucyk7XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShucywgJ2RlZmF1bHQnLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2YWx1ZSB9KTtcbiBcdFx0aWYobW9kZSAmIDIgJiYgdHlwZW9mIHZhbHVlICE9ICdzdHJpbmcnKSBmb3IodmFyIGtleSBpbiB2YWx1ZSkgX193ZWJwYWNrX3JlcXVpcmVfXy5kKG5zLCBrZXksIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gdmFsdWVba2V5XTsgfS5iaW5kKG51bGwsIGtleSkpO1xuIFx0XHRyZXR1cm4gbnM7XG4gXHR9O1xuXG4gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuIFx0XHRyZXR1cm4gZ2V0dGVyO1xuIFx0fTtcblxuIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG5cbiBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIlwiO1xuXG4gXHQvLyBvbiBlcnJvciBmdW5jdGlvbiBmb3IgYXN5bmMgbG9hZGluZ1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vZSA9IGZ1bmN0aW9uKGVycikgeyBjb25zb2xlLmVycm9yKGVycik7IHRocm93IGVycjsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX2hhc2hfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5oID0gZnVuY3Rpb24oKSB7IHJldHVybiBob3RDdXJyZW50SGFzaDsgfTtcblxuIFx0dmFyIGpzb25wQXJyYXkgPSB3aW5kb3dbXCJ3ZWJwYWNrSnNvbnBfTl9FXCJdID0gd2luZG93W1wid2VicGFja0pzb25wX05fRVwiXSB8fCBbXTtcbiBcdHZhciBvbGRKc29ucEZ1bmN0aW9uID0ganNvbnBBcnJheS5wdXNoLmJpbmQoanNvbnBBcnJheSk7XG4gXHRqc29ucEFycmF5LnB1c2ggPSB3ZWJwYWNrSnNvbnBDYWxsYmFjaztcbiBcdGpzb25wQXJyYXkgPSBqc29ucEFycmF5LnNsaWNlKCk7XG4gXHRmb3IodmFyIGkgPSAwOyBpIDwganNvbnBBcnJheS5sZW5ndGg7IGkrKykgd2VicGFja0pzb25wQ2FsbGJhY2soanNvbnBBcnJheVtpXSk7XG4gXHR2YXIgcGFyZW50SnNvbnBGdW5jdGlvbiA9IG9sZEpzb25wRnVuY3Rpb247XG5cblxuIFx0Ly8gcnVuIGRlZmVycmVkIG1vZHVsZXMgZnJvbSBvdGhlciBjaHVua3NcbiBcdGNoZWNrRGVmZXJyZWRNb2R1bGVzKCk7XG4iXSwic291cmNlUm9vdCI6IiJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FL3dlYnBhY2svYm9vdHN0cmFwIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7UUFBQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLFFBQVEsb0JBQW9CO1FBQzVCO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLDRCQUE0QjtRQUM3QztRQUNBO1FBQ0Esa0JBQWtCLDJCQUEyQjtRQUM3QztRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsR0FBRzs7UUFFSDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0EsT0FBTztRQUNQO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7O1FBRUw7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsNkJBQTZCO1FBQzdCLDZCQUE2QjtRQUM3QjtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHFCQUFxQixnQkFBZ0I7UUFDckM7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQSxxQkFBcUIsZ0JBQWdCO1FBQ3JDO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7O1FBRUw7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0EsS0FBSzs7UUFFTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBO1FBQ0Esa0JBQWtCLDhCQUE4QjtRQUNoRDtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsSUFBSTtRQUNKOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsSUFBSTtRQUNKO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0E7UUFDQTtRQUNBLE9BQU87UUFDUDtRQUNBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLEtBQUs7UUFDTDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxvQkFBb0IsMkJBQTJCO1FBQy9DO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxPQUFPO1FBQ1A7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBLG1CQUFtQixjQUFjO1FBQ2pDO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSxnQkFBZ0IsS0FBSztRQUNyQjtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGdCQUFnQixZQUFZO1FBQzVCO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0EsY0FBYyw0QkFBNEI7UUFDMUM7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxJQUFJOztRQUVKO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTs7UUFFQTtRQUNBO1FBQ0EsZUFBZSw0QkFBNEI7UUFDM0M7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQSxlQUFlLDRCQUE0QjtRQUMzQztRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLHVDQUF1QztRQUN4RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsaUJBQWlCLHVDQUF1QztRQUN4RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGlCQUFpQixzQkFBc0I7UUFDdkM7UUFDQTtRQUNBO1FBQ0EsUUFBUTtRQUNSO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFVBQVU7UUFDVjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQSxjQUFjLHdDQUF3QztRQUN0RDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxLQUFLO1FBQ0w7UUFDQTtRQUNBO1FBQ0EsT0FBTztRQUNQO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFNBQVM7UUFDVDtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNO1FBQ047UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLFFBQVE7UUFDUjtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EsTUFBTTtRQUNOO1FBQ0EsS0FBSztRQUNMOztRQUVBO1FBQ0E7UUFDQTtRQUNBLElBQUk7UUFDSjs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBOztRQUVBO1FBQ0E7UUFDQSx3REFBd0Q7UUFDeEQ7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLGVBQWU7UUFDZjtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTs7UUFFQSxZQUFZO1FBQ1o7UUFDQTs7UUFFQTtRQUNBLElBQUk7UUFDSjtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBOzs7UUFHQTs7UUFFQTtRQUNBLGlDQUFpQzs7UUFFakM7UUFDQTtRQUNBO1FBQ0EsS0FBSztRQUNMO1FBQ0E7UUFDQTtRQUNBLE1BQU07UUFDTjs7UUFFQTtRQUNBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBLHdCQUF3QixrQ0FBa0M7UUFDMUQsTUFBTTtRQUNOO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTs7UUFFQTtRQUNBOztRQUVBO1FBQ0E7O1FBRUE7UUFDQTtRQUNBO1FBQ0EsMENBQTBDLGdDQUFnQztRQUMxRTtRQUNBOztRQUVBO1FBQ0E7UUFDQTtRQUNBLHdEQUF3RCxrQkFBa0I7UUFDMUU7UUFDQSxpREFBaUQsY0FBYztRQUMvRDs7UUFFQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO1FBQ0EseUNBQXlDLGlDQUFpQztRQUMxRSxnSEFBZ0gsbUJBQW1CLEVBQUU7UUFDckk7UUFDQTs7UUFFQTtRQUNBO1FBQ0E7UUFDQSwyQkFBMkIsMEJBQTBCLEVBQUU7UUFDdkQsaUNBQWlDLGVBQWU7UUFDaEQ7UUFDQTtRQUNBOztRQUVBO1FBQ0Esc0RBQXNELCtEQUErRDs7UUFFckg7UUFDQTs7UUFFQTtRQUNBLDBDQUEwQyxvQkFBb0IsV0FBVzs7UUFFekU7UUFDQSxzQ0FBc0MsdUJBQXVCOztRQUU3RDtRQUNBO1FBQ0E7UUFDQTtRQUNBLGdCQUFnQix1QkFBdUI7UUFDdkM7OztRQUdBO1FBQ0EiLCJmaWxlIjoic3RhdGljL2NodW5rcy93ZWJwYWNrLmpzIiwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gaW5zdGFsbCBhIEpTT05QIGNhbGxiYWNrIGZvciBjaHVuayBsb2FkaW5nXG4gXHRmdW5jdGlvbiB3ZWJwYWNrSnNvbnBDYWxsYmFjayhkYXRhKSB7XG4gXHRcdHZhciBjaHVua0lkcyA9IGRhdGFbMF07XG4gXHRcdHZhciBtb3JlTW9kdWxlcyA9IGRhdGFbMV07XG4gXHRcdHZhciBleGVjdXRlTW9kdWxlcyA9IGRhdGFbMl07XG5cbiBcdFx0Ly8gYWRkIFwibW9yZU1vZHVsZXNcIiB0byB0aGUgbW9kdWxlcyBvYmplY3QsXG4gXHRcdC8vIHRoZW4gZmxhZyBhbGwgXCJjaHVua0lkc1wiIGFzIGxvYWRlZCBhbmQgZmlyZSBjYWxsYmFja1xuIFx0XHR2YXIgbW9kdWxlSWQsIGNodW5rSWQsIGkgPSAwLCByZXNvbHZlcyA9IFtdO1xuIFx0XHRmb3IoO2kgPCBjaHVua0lkcy5sZW5ndGg7IGkrKykge1xuIFx0XHRcdGNodW5rSWQgPSBjaHVua0lkc1tpXTtcbiBcdFx0XHRpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaW5zdGFsbGVkQ2h1bmtzLCBjaHVua0lkKSAmJiBpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0pIHtcbiBcdFx0XHRcdHJlc29sdmVzLnB1c2goaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdWzBdKTtcbiBcdFx0XHR9XG4gXHRcdFx0aW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdID0gMDtcbiBcdFx0fVxuIFx0XHRmb3IobW9kdWxlSWQgaW4gbW9yZU1vZHVsZXMpIHtcbiBcdFx0XHRpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobW9yZU1vZHVsZXMsIG1vZHVsZUlkKSkge1xuIFx0XHRcdFx0bW9kdWxlc1ttb2R1bGVJZF0gPSBtb3JlTW9kdWxlc1ttb2R1bGVJZF07XG4gXHRcdFx0fVxuIFx0XHR9XG4gXHRcdGlmKHBhcmVudEpzb25wRnVuY3Rpb24pIHBhcmVudEpzb25wRnVuY3Rpb24oZGF0YSk7XG5cbiBcdFx0d2hpbGUocmVzb2x2ZXMubGVuZ3RoKSB7XG4gXHRcdFx0cmVzb2x2ZXMuc2hpZnQoKSgpO1xuIFx0XHR9XG5cbiBcdFx0Ly8gYWRkIGVudHJ5IG1vZHVsZXMgZnJvbSBsb2FkZWQgY2h1bmsgdG8gZGVmZXJyZWQgbGlzdFxuIFx0XHRkZWZlcnJlZE1vZHVsZXMucHVzaC5hcHBseShkZWZlcnJlZE1vZHVsZXMsIGV4ZWN1dGVNb2R1bGVzIHx8IFtdKTtcblxuIFx0XHQvLyBydW4gZGVmZXJyZWQgbW9kdWxlcyB3aGVuIGFsbCBjaHVua3MgcmVhZHlcbiBcdFx0cmV0dXJuIGNoZWNrRGVmZXJyZWRNb2R1bGVzKCk7XG4gXHR9O1xuIFx0ZnVuY3Rpb24gY2hlY2tEZWZlcnJlZE1vZHVsZXMoKSB7XG4gXHRcdHZhciByZXN1bHQ7XG4gXHRcdGZvcih2YXIgaSA9IDA7IGkgPCBkZWZlcnJlZE1vZHVsZXMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHR2YXIgZGVmZXJyZWRNb2R1bGUgPSBkZWZlcnJlZE1vZHVsZXNbaV07XG4gXHRcdFx0dmFyIGZ1bGZpbGxlZCA9IHRydWU7XG4gXHRcdFx0Zm9yKHZhciBqID0gMTsgaiA8IGRlZmVycmVkTW9kdWxlLmxlbmd0aDsgaisrKSB7XG4gXHRcdFx0XHR2YXIgZGVwSWQgPSBkZWZlcnJlZE1vZHVsZVtqXTtcbiBcdFx0XHRcdGlmKGluc3RhbGxlZENodW5rc1tkZXBJZF0gIT09IDApIGZ1bGZpbGxlZCA9IGZhbHNlO1xuIFx0XHRcdH1cbiBcdFx0XHRpZihmdWxmaWxsZWQpIHtcbiBcdFx0XHRcdGRlZmVycmVkTW9kdWxlcy5zcGxpY2UoaS0tLCAxKTtcbiBcdFx0XHRcdHJlc3VsdCA9IF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gZGVmZXJyZWRNb2R1bGVbMF0pO1xuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdHJldHVybiByZXN1bHQ7XG4gXHR9XG4gXHRmdW5jdGlvbiBob3REaXNwb3NlQ2h1bmsoY2h1bmtJZCkge1xuIFx0XHRkZWxldGUgaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdO1xuIFx0fVxuIFx0dmFyIHBhcmVudEhvdFVwZGF0ZUNhbGxiYWNrID0gd2luZG93W1wid2VicGFja0hvdFVwZGF0ZV9OX0VcIl07XG4gXHR3aW5kb3dbXCJ3ZWJwYWNrSG90VXBkYXRlX05fRVwiXSA9IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0ZnVuY3Rpb24gd2VicGFja0hvdFVwZGF0ZUNhbGxiYWNrKGNodW5rSWQsIG1vcmVNb2R1bGVzKSB7XG4gXHRcdGhvdEFkZFVwZGF0ZUNodW5rKGNodW5rSWQsIG1vcmVNb2R1bGVzKTtcbiBcdFx0aWYgKHBhcmVudEhvdFVwZGF0ZUNhbGxiYWNrKSBwYXJlbnRIb3RVcGRhdGVDYWxsYmFjayhjaHVua0lkLCBtb3JlTW9kdWxlcyk7XG4gXHR9IDtcblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3REb3dubG9hZFVwZGF0ZUNodW5rKGNodW5rSWQpIHtcbiBcdFx0dmFyIHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIik7XG4gXHRcdHNjcmlwdC5jaGFyc2V0ID0gXCJ1dGYtOFwiO1xuIFx0XHRzY3JpcHQuc3JjID0gX193ZWJwYWNrX3JlcXVpcmVfXy5wICsgXCJzdGF0aWMvd2VicGFjay9cIiArIGNodW5rSWQgKyBcIi5cIiArIGhvdEN1cnJlbnRIYXNoICsgXCIuaG90LXVwZGF0ZS5qc1wiO1xuIFx0XHRpZiAobnVsbCkgc2NyaXB0LmNyb3NzT3JpZ2luID0gbnVsbDtcbiBcdFx0ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuIFx0fVxuXG4gXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiBcdGZ1bmN0aW9uIGhvdERvd25sb2FkTWFuaWZlc3QocmVxdWVzdFRpbWVvdXQpIHtcbiBcdFx0cmVxdWVzdFRpbWVvdXQgPSByZXF1ZXN0VGltZW91dCB8fCAxMDAwMDtcbiBcdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdGlmICh0eXBlb2YgWE1MSHR0cFJlcXVlc3QgPT09IFwidW5kZWZpbmVkXCIpIHtcbiBcdFx0XHRcdHJldHVybiByZWplY3QobmV3IEVycm9yKFwiTm8gYnJvd3NlciBzdXBwb3J0XCIpKTtcbiBcdFx0XHR9XG4gXHRcdFx0dHJ5IHtcbiBcdFx0XHRcdHZhciByZXF1ZXN0ID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gXHRcdFx0XHR2YXIgcmVxdWVzdFBhdGggPSBfX3dlYnBhY2tfcmVxdWlyZV9fLnAgKyBcInN0YXRpYy93ZWJwYWNrL1wiICsgaG90Q3VycmVudEhhc2ggKyBcIi5ob3QtdXBkYXRlLmpzb25cIjtcbiBcdFx0XHRcdHJlcXVlc3Qub3BlbihcIkdFVFwiLCByZXF1ZXN0UGF0aCwgdHJ1ZSk7XG4gXHRcdFx0XHRyZXF1ZXN0LnRpbWVvdXQgPSByZXF1ZXN0VGltZW91dDtcbiBcdFx0XHRcdHJlcXVlc3Quc2VuZChudWxsKTtcbiBcdFx0XHR9IGNhdGNoIChlcnIpIHtcbiBcdFx0XHRcdHJldHVybiByZWplY3QoZXJyKTtcbiBcdFx0XHR9XG4gXHRcdFx0cmVxdWVzdC5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHtcbiBcdFx0XHRcdGlmIChyZXF1ZXN0LnJlYWR5U3RhdGUgIT09IDQpIHJldHVybjtcbiBcdFx0XHRcdGlmIChyZXF1ZXN0LnN0YXR1cyA9PT0gMCkge1xuIFx0XHRcdFx0XHQvLyB0aW1lb3V0XG4gXHRcdFx0XHRcdHJlamVjdChcbiBcdFx0XHRcdFx0XHRuZXcgRXJyb3IoXCJNYW5pZmVzdCByZXF1ZXN0IHRvIFwiICsgcmVxdWVzdFBhdGggKyBcIiB0aW1lZCBvdXQuXCIpXG4gXHRcdFx0XHRcdCk7XG4gXHRcdFx0XHR9IGVsc2UgaWYgKHJlcXVlc3Quc3RhdHVzID09PSA0MDQpIHtcbiBcdFx0XHRcdFx0Ly8gbm8gdXBkYXRlIGF2YWlsYWJsZVxuIFx0XHRcdFx0XHRyZXNvbHZlKCk7XG4gXHRcdFx0XHR9IGVsc2UgaWYgKHJlcXVlc3Quc3RhdHVzICE9PSAyMDAgJiYgcmVxdWVzdC5zdGF0dXMgIT09IDMwNCkge1xuIFx0XHRcdFx0XHQvLyBvdGhlciBmYWlsdXJlXG4gXHRcdFx0XHRcdHJlamVjdChuZXcgRXJyb3IoXCJNYW5pZmVzdCByZXF1ZXN0IHRvIFwiICsgcmVxdWVzdFBhdGggKyBcIiBmYWlsZWQuXCIpKTtcbiBcdFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHRcdC8vIHN1Y2Nlc3NcbiBcdFx0XHRcdFx0dHJ5IHtcbiBcdFx0XHRcdFx0XHR2YXIgdXBkYXRlID0gSlNPTi5wYXJzZShyZXF1ZXN0LnJlc3BvbnNlVGV4dCk7XG4gXHRcdFx0XHRcdH0gY2F0Y2ggKGUpIHtcbiBcdFx0XHRcdFx0XHRyZWplY3QoZSk7XG4gXHRcdFx0XHRcdFx0cmV0dXJuO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdHJlc29sdmUodXBkYXRlKTtcbiBcdFx0XHRcdH1cbiBcdFx0XHR9O1xuIFx0XHR9KTtcbiBcdH1cblxuIFx0dmFyIGhvdEFwcGx5T25VcGRhdGUgPSB0cnVlO1xuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHR2YXIgaG90Q3VycmVudEhhc2ggPSBcIjkzZjcxNWE2NDhmYWZhMzUxM2Q5XCI7XG4gXHR2YXIgaG90UmVxdWVzdFRpbWVvdXQgPSAxMDAwMDtcbiBcdHZhciBob3RDdXJyZW50TW9kdWxlRGF0YSA9IHt9O1xuIFx0dmFyIGhvdEN1cnJlbnRDaGlsZE1vZHVsZTtcbiBcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0dmFyIGhvdEN1cnJlbnRQYXJlbnRzID0gW107XG4gXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiBcdHZhciBob3RDdXJyZW50UGFyZW50c1RlbXAgPSBbXTtcblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3RDcmVhdGVSZXF1aXJlKG1vZHVsZUlkKSB7XG4gXHRcdHZhciBtZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHRpZiAoIW1lKSByZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXztcbiBcdFx0dmFyIGZuID0gZnVuY3Rpb24ocmVxdWVzdCkge1xuIFx0XHRcdGlmIChtZS5ob3QuYWN0aXZlKSB7XG4gXHRcdFx0XHRpZiAoaW5zdGFsbGVkTW9kdWxlc1tyZXF1ZXN0XSkge1xuIFx0XHRcdFx0XHRpZiAoaW5zdGFsbGVkTW9kdWxlc1tyZXF1ZXN0XS5wYXJlbnRzLmluZGV4T2YobW9kdWxlSWQpID09PSAtMSkge1xuIFx0XHRcdFx0XHRcdGluc3RhbGxlZE1vZHVsZXNbcmVxdWVzdF0ucGFyZW50cy5wdXNoKG1vZHVsZUlkKTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdFx0aG90Q3VycmVudFBhcmVudHMgPSBbbW9kdWxlSWRdO1xuIFx0XHRcdFx0XHRob3RDdXJyZW50Q2hpbGRNb2R1bGUgPSByZXF1ZXN0O1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0aWYgKG1lLmNoaWxkcmVuLmluZGV4T2YocmVxdWVzdCkgPT09IC0xKSB7XG4gXHRcdFx0XHRcdG1lLmNoaWxkcmVuLnB1c2gocmVxdWVzdCk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdGNvbnNvbGUud2FybihcbiBcdFx0XHRcdFx0XCJbSE1SXSB1bmV4cGVjdGVkIHJlcXVpcmUoXCIgK1xuIFx0XHRcdFx0XHRcdHJlcXVlc3QgK1xuIFx0XHRcdFx0XHRcdFwiKSBmcm9tIGRpc3Bvc2VkIG1vZHVsZSBcIiArXG4gXHRcdFx0XHRcdFx0bW9kdWxlSWRcbiBcdFx0XHRcdCk7XG4gXHRcdFx0XHRob3RDdXJyZW50UGFyZW50cyA9IFtdO1xuIFx0XHRcdH1cbiBcdFx0XHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhyZXF1ZXN0KTtcbiBcdFx0fTtcbiBcdFx0dmFyIE9iamVjdEZhY3RvcnkgPSBmdW5jdGlvbiBPYmplY3RGYWN0b3J5KG5hbWUpIHtcbiBcdFx0XHRyZXR1cm4ge1xuIFx0XHRcdFx0Y29uZmlndXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZnVuY3Rpb24oKSB7XG4gXHRcdFx0XHRcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fW25hbWVdO1xuIFx0XHRcdFx0fSxcbiBcdFx0XHRcdHNldDogZnVuY3Rpb24odmFsdWUpIHtcbiBcdFx0XHRcdFx0X193ZWJwYWNrX3JlcXVpcmVfX1tuYW1lXSA9IHZhbHVlO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH07XG4gXHRcdH07XG4gXHRcdGZvciAodmFyIG5hbWUgaW4gX193ZWJwYWNrX3JlcXVpcmVfXykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChfX3dlYnBhY2tfcmVxdWlyZV9fLCBuYW1lKSAmJlxuIFx0XHRcdFx0bmFtZSAhPT0gXCJlXCIgJiZcbiBcdFx0XHRcdG5hbWUgIT09IFwidFwiXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZm4sIG5hbWUsIE9iamVjdEZhY3RvcnkobmFtZSkpO1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRmbi5lID0gZnVuY3Rpb24oY2h1bmtJZCkge1xuIFx0XHRcdGlmIChob3RTdGF0dXMgPT09IFwicmVhZHlcIikgaG90U2V0U3RhdHVzKFwicHJlcGFyZVwiKTtcbiBcdFx0XHRob3RDaHVua3NMb2FkaW5nKys7XG4gXHRcdFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18uZShjaHVua0lkKS50aGVuKGZpbmlzaENodW5rTG9hZGluZywgZnVuY3Rpb24oZXJyKSB7XG4gXHRcdFx0XHRmaW5pc2hDaHVua0xvYWRpbmcoKTtcbiBcdFx0XHRcdHRocm93IGVycjtcbiBcdFx0XHR9KTtcblxuIFx0XHRcdGZ1bmN0aW9uIGZpbmlzaENodW5rTG9hZGluZygpIHtcbiBcdFx0XHRcdGhvdENodW5rc0xvYWRpbmctLTtcbiBcdFx0XHRcdGlmIChob3RTdGF0dXMgPT09IFwicHJlcGFyZVwiKSB7XG4gXHRcdFx0XHRcdGlmICghaG90V2FpdGluZ0ZpbGVzTWFwW2NodW5rSWRdKSB7XG4gXHRcdFx0XHRcdFx0aG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0aWYgKGhvdENodW5rc0xvYWRpbmcgPT09IDAgJiYgaG90V2FpdGluZ0ZpbGVzID09PSAwKSB7XG4gXHRcdFx0XHRcdFx0aG90VXBkYXRlRG93bmxvYWRlZCgpO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHR9XG4gXHRcdFx0fVxuIFx0XHR9O1xuIFx0XHRmbi50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0XHRpZiAobW9kZSAmIDEpIHZhbHVlID0gZm4odmFsdWUpO1xuIFx0XHRcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fLnQodmFsdWUsIG1vZGUgJiB+MSk7XG4gXHRcdH07XG4gXHRcdHJldHVybiBmbjtcbiBcdH1cblxuIFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXG4gXHRmdW5jdGlvbiBob3RDcmVhdGVNb2R1bGUobW9kdWxlSWQpIHtcbiBcdFx0dmFyIGhvdCA9IHtcbiBcdFx0XHQvLyBwcml2YXRlIHN0dWZmXG4gXHRcdFx0X2FjY2VwdGVkRGVwZW5kZW5jaWVzOiB7fSxcbiBcdFx0XHRfZGVjbGluZWREZXBlbmRlbmNpZXM6IHt9LFxuIFx0XHRcdF9zZWxmQWNjZXB0ZWQ6IGZhbHNlLFxuIFx0XHRcdF9zZWxmRGVjbGluZWQ6IGZhbHNlLFxuIFx0XHRcdF9zZWxmSW52YWxpZGF0ZWQ6IGZhbHNlLFxuIFx0XHRcdF9kaXNwb3NlSGFuZGxlcnM6IFtdLFxuIFx0XHRcdF9tYWluOiBob3RDdXJyZW50Q2hpbGRNb2R1bGUgIT09IG1vZHVsZUlkLFxuXG4gXHRcdFx0Ly8gTW9kdWxlIEFQSVxuIFx0XHRcdGFjdGl2ZTogdHJ1ZSxcbiBcdFx0XHRhY2NlcHQ6IGZ1bmN0aW9uKGRlcCwgY2FsbGJhY2spIHtcbiBcdFx0XHRcdGlmIChkZXAgPT09IHVuZGVmaW5lZCkgaG90Ll9zZWxmQWNjZXB0ZWQgPSB0cnVlO1xuIFx0XHRcdFx0ZWxzZSBpZiAodHlwZW9mIGRlcCA9PT0gXCJmdW5jdGlvblwiKSBob3QuX3NlbGZBY2NlcHRlZCA9IGRlcDtcbiBcdFx0XHRcdGVsc2UgaWYgKHR5cGVvZiBkZXAgPT09IFwib2JqZWN0XCIpXG4gXHRcdFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgZGVwLmxlbmd0aDsgaSsrKVxuIFx0XHRcdFx0XHRcdGhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwW2ldXSA9IGNhbGxiYWNrIHx8IGZ1bmN0aW9uKCkge307XG4gXHRcdFx0XHRlbHNlIGhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwXSA9IGNhbGxiYWNrIHx8IGZ1bmN0aW9uKCkge307XG4gXHRcdFx0fSxcbiBcdFx0XHRkZWNsaW5lOiBmdW5jdGlvbihkZXApIHtcbiBcdFx0XHRcdGlmIChkZXAgPT09IHVuZGVmaW5lZCkgaG90Ll9zZWxmRGVjbGluZWQgPSB0cnVlO1xuIFx0XHRcdFx0ZWxzZSBpZiAodHlwZW9mIGRlcCA9PT0gXCJvYmplY3RcIilcbiBcdFx0XHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBkZXAubGVuZ3RoOyBpKyspXG4gXHRcdFx0XHRcdFx0aG90Ll9kZWNsaW5lZERlcGVuZGVuY2llc1tkZXBbaV1dID0gdHJ1ZTtcbiBcdFx0XHRcdGVsc2UgaG90Ll9kZWNsaW5lZERlcGVuZGVuY2llc1tkZXBdID0gdHJ1ZTtcbiBcdFx0XHR9LFxuIFx0XHRcdGRpc3Bvc2U6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7XG4gXHRcdFx0XHRob3QuX2Rpc3Bvc2VIYW5kbGVycy5wdXNoKGNhbGxiYWNrKTtcbiBcdFx0XHR9LFxuIFx0XHRcdGFkZERpc3Bvc2VIYW5kbGVyOiBmdW5jdGlvbihjYWxsYmFjaykge1xuIFx0XHRcdFx0aG90Ll9kaXNwb3NlSGFuZGxlcnMucHVzaChjYWxsYmFjayk7XG4gXHRcdFx0fSxcbiBcdFx0XHRyZW1vdmVEaXNwb3NlSGFuZGxlcjogZnVuY3Rpb24oY2FsbGJhY2spIHtcbiBcdFx0XHRcdHZhciBpZHggPSBob3QuX2Rpc3Bvc2VIYW5kbGVycy5pbmRleE9mKGNhbGxiYWNrKTtcbiBcdFx0XHRcdGlmIChpZHggPj0gMCkgaG90Ll9kaXNwb3NlSGFuZGxlcnMuc3BsaWNlKGlkeCwgMSk7XG4gXHRcdFx0fSxcbiBcdFx0XHRpbnZhbGlkYXRlOiBmdW5jdGlvbigpIHtcbiBcdFx0XHRcdHRoaXMuX3NlbGZJbnZhbGlkYXRlZCA9IHRydWU7XG4gXHRcdFx0XHRzd2l0Y2ggKGhvdFN0YXR1cykge1xuIFx0XHRcdFx0XHRjYXNlIFwiaWRsZVwiOlxuIFx0XHRcdFx0XHRcdGhvdFVwZGF0ZSA9IHt9O1xuIFx0XHRcdFx0XHRcdGhvdFVwZGF0ZVttb2R1bGVJZF0gPSBtb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdFx0XHRob3RTZXRTdGF0dXMoXCJyZWFkeVwiKTtcbiBcdFx0XHRcdFx0XHRicmVhaztcbiBcdFx0XHRcdFx0Y2FzZSBcInJlYWR5XCI6XG4gXHRcdFx0XHRcdFx0aG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZShtb2R1bGVJZCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJwcmVwYXJlXCI6XG4gXHRcdFx0XHRcdGNhc2UgXCJjaGVja1wiOlxuIFx0XHRcdFx0XHRjYXNlIFwiZGlzcG9zZVwiOlxuIFx0XHRcdFx0XHRjYXNlIFwiYXBwbHlcIjpcbiBcdFx0XHRcdFx0XHQoaG90UXVldWVkSW52YWxpZGF0ZWRNb2R1bGVzID1cbiBcdFx0XHRcdFx0XHRcdGhvdFF1ZXVlZEludmFsaWRhdGVkTW9kdWxlcyB8fCBbXSkucHVzaChtb2R1bGVJZCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGRlZmF1bHQ6XG4gXHRcdFx0XHRcdFx0Ly8gaWdub3JlIHJlcXVlc3RzIGluIGVycm9yIHN0YXRlc1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH0sXG5cbiBcdFx0XHQvLyBNYW5hZ2VtZW50IEFQSVxuIFx0XHRcdGNoZWNrOiBob3RDaGVjayxcbiBcdFx0XHRhcHBseTogaG90QXBwbHksXG4gXHRcdFx0c3RhdHVzOiBmdW5jdGlvbihsKSB7XG4gXHRcdFx0XHRpZiAoIWwpIHJldHVybiBob3RTdGF0dXM7XG4gXHRcdFx0XHRob3RTdGF0dXNIYW5kbGVycy5wdXNoKGwpO1xuIFx0XHRcdH0sXG4gXHRcdFx0YWRkU3RhdHVzSGFuZGxlcjogZnVuY3Rpb24obCkge1xuIFx0XHRcdFx0aG90U3RhdHVzSGFuZGxlcnMucHVzaChsKTtcbiBcdFx0XHR9LFxuIFx0XHRcdHJlbW92ZVN0YXR1c0hhbmRsZXI6IGZ1bmN0aW9uKGwpIHtcbiBcdFx0XHRcdHZhciBpZHggPSBob3RTdGF0dXNIYW5kbGVycy5pbmRleE9mKGwpO1xuIFx0XHRcdFx0aWYgKGlkeCA+PSAwKSBob3RTdGF0dXNIYW5kbGVycy5zcGxpY2UoaWR4LCAxKTtcbiBcdFx0XHR9LFxuXG4gXHRcdFx0Ly9pbmhlcml0IGZyb20gcHJldmlvdXMgZGlzcG9zZSBjYWxsXG4gXHRcdFx0ZGF0YTogaG90Q3VycmVudE1vZHVsZURhdGFbbW9kdWxlSWRdXG4gXHRcdH07XG4gXHRcdGhvdEN1cnJlbnRDaGlsZE1vZHVsZSA9IHVuZGVmaW5lZDtcbiBcdFx0cmV0dXJuIGhvdDtcbiBcdH1cblxuIFx0dmFyIGhvdFN0YXR1c0hhbmRsZXJzID0gW107XG4gXHR2YXIgaG90U3RhdHVzID0gXCJpZGxlXCI7XG5cbiBcdGZ1bmN0aW9uIGhvdFNldFN0YXR1cyhuZXdTdGF0dXMpIHtcbiBcdFx0aG90U3RhdHVzID0gbmV3U3RhdHVzO1xuIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IGhvdFN0YXR1c0hhbmRsZXJzLmxlbmd0aDsgaSsrKVxuIFx0XHRcdGhvdFN0YXR1c0hhbmRsZXJzW2ldLmNhbGwobnVsbCwgbmV3U3RhdHVzKTtcbiBcdH1cblxuIFx0Ly8gd2hpbGUgZG93bmxvYWRpbmdcbiBcdHZhciBob3RXYWl0aW5nRmlsZXMgPSAwO1xuIFx0dmFyIGhvdENodW5rc0xvYWRpbmcgPSAwO1xuIFx0dmFyIGhvdFdhaXRpbmdGaWxlc01hcCA9IHt9O1xuIFx0dmFyIGhvdFJlcXVlc3RlZEZpbGVzTWFwID0ge307XG4gXHR2YXIgaG90QXZhaWxhYmxlRmlsZXNNYXAgPSB7fTtcbiBcdHZhciBob3REZWZlcnJlZDtcblxuIFx0Ly8gVGhlIHVwZGF0ZSBpbmZvXG4gXHR2YXIgaG90VXBkYXRlLCBob3RVcGRhdGVOZXdIYXNoLCBob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXM7XG5cbiBcdGZ1bmN0aW9uIHRvTW9kdWxlSWQoaWQpIHtcbiBcdFx0dmFyIGlzTnVtYmVyID0gK2lkICsgXCJcIiA9PT0gaWQ7XG4gXHRcdHJldHVybiBpc051bWJlciA/ICtpZCA6IGlkO1xuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RDaGVjayhhcHBseSkge1xuIFx0XHRpZiAoaG90U3RhdHVzICE9PSBcImlkbGVcIikge1xuIFx0XHRcdHRocm93IG5ldyBFcnJvcihcImNoZWNrKCkgaXMgb25seSBhbGxvd2VkIGluIGlkbGUgc3RhdHVzXCIpO1xuIFx0XHR9XG4gXHRcdGhvdEFwcGx5T25VcGRhdGUgPSBhcHBseTtcbiBcdFx0aG90U2V0U3RhdHVzKFwiY2hlY2tcIik7XG4gXHRcdHJldHVybiBob3REb3dubG9hZE1hbmlmZXN0KGhvdFJlcXVlc3RUaW1lb3V0KS50aGVuKGZ1bmN0aW9uKHVwZGF0ZSkge1xuIFx0XHRcdGlmICghdXBkYXRlKSB7XG4gXHRcdFx0XHRob3RTZXRTdGF0dXMoaG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZXMoKSA/IFwicmVhZHlcIiA6IFwiaWRsZVwiKTtcbiBcdFx0XHRcdHJldHVybiBudWxsO1xuIFx0XHRcdH1cbiBcdFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcCA9IHt9O1xuIFx0XHRcdGhvdFdhaXRpbmdGaWxlc01hcCA9IHt9O1xuIFx0XHRcdGhvdEF2YWlsYWJsZUZpbGVzTWFwID0gdXBkYXRlLmM7XG4gXHRcdFx0aG90VXBkYXRlTmV3SGFzaCA9IHVwZGF0ZS5oO1xuXG4gXHRcdFx0aG90U2V0U3RhdHVzKFwicHJlcGFyZVwiKTtcbiBcdFx0XHR2YXIgcHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdFx0aG90RGVmZXJyZWQgPSB7XG4gXHRcdFx0XHRcdHJlc29sdmU6IHJlc29sdmUsXG4gXHRcdFx0XHRcdHJlamVjdDogcmVqZWN0XG4gXHRcdFx0XHR9O1xuIFx0XHRcdH0pO1xuIFx0XHRcdGhvdFVwZGF0ZSA9IHt9O1xuIFx0XHRcdGZvcih2YXIgY2h1bmtJZCBpbiBpbnN0YWxsZWRDaHVua3MpXG4gXHRcdFx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWxvbmUtYmxvY2tzXG4gXHRcdFx0e1xuIFx0XHRcdFx0aG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0fVxuIFx0XHRcdGlmIChcbiBcdFx0XHRcdGhvdFN0YXR1cyA9PT0gXCJwcmVwYXJlXCIgJiZcbiBcdFx0XHRcdGhvdENodW5rc0xvYWRpbmcgPT09IDAgJiZcbiBcdFx0XHRcdGhvdFdhaXRpbmdGaWxlcyA9PT0gMFxuIFx0XHRcdCkge1xuIFx0XHRcdFx0aG90VXBkYXRlRG93bmxvYWRlZCgpO1xuIFx0XHRcdH1cbiBcdFx0XHRyZXR1cm4gcHJvbWlzZTtcbiBcdFx0fSk7XG4gXHR9XG5cbiBcdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xuIFx0ZnVuY3Rpb24gaG90QWRkVXBkYXRlQ2h1bmsoY2h1bmtJZCwgbW9yZU1vZHVsZXMpIHtcbiBcdFx0aWYgKCFob3RBdmFpbGFibGVGaWxlc01hcFtjaHVua0lkXSB8fCAhaG90UmVxdWVzdGVkRmlsZXNNYXBbY2h1bmtJZF0pXG4gXHRcdFx0cmV0dXJuO1xuIFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcFtjaHVua0lkXSA9IGZhbHNlO1xuIFx0XHRmb3IgKHZhciBtb2R1bGVJZCBpbiBtb3JlTW9kdWxlcykge1xuIFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobW9yZU1vZHVsZXMsIG1vZHVsZUlkKSkge1xuIFx0XHRcdFx0aG90VXBkYXRlW21vZHVsZUlkXSA9IG1vcmVNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHR9XG4gXHRcdH1cbiBcdFx0aWYgKC0taG90V2FpdGluZ0ZpbGVzID09PSAwICYmIGhvdENodW5rc0xvYWRpbmcgPT09IDApIHtcbiBcdFx0XHRob3RVcGRhdGVEb3dubG9hZGVkKCk7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90RW5zdXJlVXBkYXRlQ2h1bmsoY2h1bmtJZCkge1xuIFx0XHRpZiAoIWhvdEF2YWlsYWJsZUZpbGVzTWFwW2NodW5rSWRdKSB7XG4gXHRcdFx0aG90V2FpdGluZ0ZpbGVzTWFwW2NodW5rSWRdID0gdHJ1ZTtcbiBcdFx0fSBlbHNlIHtcbiBcdFx0XHRob3RSZXF1ZXN0ZWRGaWxlc01hcFtjaHVua0lkXSA9IHRydWU7XG4gXHRcdFx0aG90V2FpdGluZ0ZpbGVzKys7XG4gXHRcdFx0aG90RG93bmxvYWRVcGRhdGVDaHVuayhjaHVua0lkKTtcbiBcdFx0fVxuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RVcGRhdGVEb3dubG9hZGVkKCkge1xuIFx0XHRob3RTZXRTdGF0dXMoXCJyZWFkeVwiKTtcbiBcdFx0dmFyIGRlZmVycmVkID0gaG90RGVmZXJyZWQ7XG4gXHRcdGhvdERlZmVycmVkID0gbnVsbDtcbiBcdFx0aWYgKCFkZWZlcnJlZCkgcmV0dXJuO1xuIFx0XHRpZiAoaG90QXBwbHlPblVwZGF0ZSkge1xuIFx0XHRcdC8vIFdyYXAgZGVmZXJyZWQgb2JqZWN0IGluIFByb21pc2UgdG8gbWFyayBpdCBhcyBhIHdlbGwtaGFuZGxlZCBQcm9taXNlIHRvXG4gXHRcdFx0Ly8gYXZvaWQgdHJpZ2dlcmluZyB1bmNhdWdodCBleGNlcHRpb24gd2FybmluZyBpbiBDaHJvbWUuXG4gXHRcdFx0Ly8gU2VlIGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTQ2NTY2NlxuIFx0XHRcdFByb21pc2UucmVzb2x2ZSgpXG4gXHRcdFx0XHQudGhlbihmdW5jdGlvbigpIHtcbiBcdFx0XHRcdFx0cmV0dXJuIGhvdEFwcGx5KGhvdEFwcGx5T25VcGRhdGUpO1xuIFx0XHRcdFx0fSlcbiBcdFx0XHRcdC50aGVuKFxuIFx0XHRcdFx0XHRmdW5jdGlvbihyZXN1bHQpIHtcbiBcdFx0XHRcdFx0XHRkZWZlcnJlZC5yZXNvbHZlKHJlc3VsdCk7XG4gXHRcdFx0XHRcdH0sXG4gXHRcdFx0XHRcdGZ1bmN0aW9uKGVycikge1xuIFx0XHRcdFx0XHRcdGRlZmVycmVkLnJlamVjdChlcnIpO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHQpO1xuIFx0XHR9IGVsc2Uge1xuIFx0XHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbXTtcbiBcdFx0XHRmb3IgKHZhciBpZCBpbiBob3RVcGRhdGUpIHtcbiBcdFx0XHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaG90VXBkYXRlLCBpZCkpIHtcbiBcdFx0XHRcdFx0b3V0ZGF0ZWRNb2R1bGVzLnB1c2godG9Nb2R1bGVJZChpZCkpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0XHRkZWZlcnJlZC5yZXNvbHZlKG91dGRhdGVkTW9kdWxlcyk7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90QXBwbHkob3B0aW9ucykge1xuIFx0XHRpZiAoaG90U3RhdHVzICE9PSBcInJlYWR5XCIpXG4gXHRcdFx0dGhyb3cgbmV3IEVycm9yKFwiYXBwbHkoKSBpcyBvbmx5IGFsbG93ZWQgaW4gcmVhZHkgc3RhdHVzXCIpO1xuIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiBcdFx0cmV0dXJuIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucyk7XG4gXHR9XG5cbiBcdGZ1bmN0aW9uIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucykge1xuIFx0XHRob3RBcHBseUludmFsaWRhdGVkTW9kdWxlcygpO1xuXG4gXHRcdHZhciBjYjtcbiBcdFx0dmFyIGk7XG4gXHRcdHZhciBqO1xuIFx0XHR2YXIgbW9kdWxlO1xuIFx0XHR2YXIgbW9kdWxlSWQ7XG5cbiBcdFx0ZnVuY3Rpb24gZ2V0QWZmZWN0ZWRTdHVmZih1cGRhdGVNb2R1bGVJZCkge1xuIFx0XHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbdXBkYXRlTW9kdWxlSWRdO1xuIFx0XHRcdHZhciBvdXRkYXRlZERlcGVuZGVuY2llcyA9IHt9O1xuXG4gXHRcdFx0dmFyIHF1ZXVlID0gb3V0ZGF0ZWRNb2R1bGVzLm1hcChmdW5jdGlvbihpZCkge1xuIFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0Y2hhaW46IFtpZF0sXG4gXHRcdFx0XHRcdGlkOiBpZFxuIFx0XHRcdFx0fTtcbiBcdFx0XHR9KTtcbiBcdFx0XHR3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuIFx0XHRcdFx0dmFyIHF1ZXVlSXRlbSA9IHF1ZXVlLnBvcCgpO1xuIFx0XHRcdFx0dmFyIG1vZHVsZUlkID0gcXVldWVJdGVtLmlkO1xuIFx0XHRcdFx0dmFyIGNoYWluID0gcXVldWVJdGVtLmNoYWluO1xuIFx0XHRcdFx0bW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRpZiAoXG4gXHRcdFx0XHRcdCFtb2R1bGUgfHxcbiBcdFx0XHRcdFx0KG1vZHVsZS5ob3QuX3NlbGZBY2NlcHRlZCAmJiAhbW9kdWxlLmhvdC5fc2VsZkludmFsaWRhdGVkKVxuIFx0XHRcdFx0KVxuIFx0XHRcdFx0XHRjb250aW51ZTtcbiBcdFx0XHRcdGlmIChtb2R1bGUuaG90Ll9zZWxmRGVjbGluZWQpIHtcbiBcdFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0XHR0eXBlOiBcInNlbGYtZGVjbGluZWRcIixcbiBcdFx0XHRcdFx0XHRjaGFpbjogY2hhaW4sXG4gXHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkXG4gXHRcdFx0XHRcdH07XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRpZiAobW9kdWxlLmhvdC5fbWFpbikge1xuIFx0XHRcdFx0XHRyZXR1cm4ge1xuIFx0XHRcdFx0XHRcdHR5cGU6IFwidW5hY2NlcHRlZFwiLFxuIFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbixcbiBcdFx0XHRcdFx0XHRtb2R1bGVJZDogbW9kdWxlSWRcbiBcdFx0XHRcdFx0fTtcbiBcdFx0XHRcdH1cbiBcdFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgbW9kdWxlLnBhcmVudHMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHRcdFx0dmFyIHBhcmVudElkID0gbW9kdWxlLnBhcmVudHNbaV07XG4gXHRcdFx0XHRcdHZhciBwYXJlbnQgPSBpbnN0YWxsZWRNb2R1bGVzW3BhcmVudElkXTtcbiBcdFx0XHRcdFx0aWYgKCFwYXJlbnQpIGNvbnRpbnVlO1xuIFx0XHRcdFx0XHRpZiAocGFyZW50LmhvdC5fZGVjbGluZWREZXBlbmRlbmNpZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0XHRcdFx0cmV0dXJuIHtcbiBcdFx0XHRcdFx0XHRcdHR5cGU6IFwiZGVjbGluZWRcIixcbiBcdFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbi5jb25jYXQoW3BhcmVudElkXSksXG4gXHRcdFx0XHRcdFx0XHRtb2R1bGVJZDogbW9kdWxlSWQsXG4gXHRcdFx0XHRcdFx0XHRwYXJlbnRJZDogcGFyZW50SWRcbiBcdFx0XHRcdFx0XHR9O1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGlmIChvdXRkYXRlZE1vZHVsZXMuaW5kZXhPZihwYXJlbnRJZCkgIT09IC0xKSBjb250aW51ZTtcbiBcdFx0XHRcdFx0aWYgKHBhcmVudC5ob3QuX2FjY2VwdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSkge1xuIFx0XHRcdFx0XHRcdGlmICghb3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdKVxuIFx0XHRcdFx0XHRcdFx0b3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdID0gW107XG4gXHRcdFx0XHRcdFx0YWRkQWxsVG9TZXQob3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdLCBbbW9kdWxlSWRdKTtcbiBcdFx0XHRcdFx0XHRjb250aW51ZTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRkZWxldGUgb3V0ZGF0ZWREZXBlbmRlbmNpZXNbcGFyZW50SWRdO1xuIFx0XHRcdFx0XHRvdXRkYXRlZE1vZHVsZXMucHVzaChwYXJlbnRJZCk7XG4gXHRcdFx0XHRcdHF1ZXVlLnB1c2goe1xuIFx0XHRcdFx0XHRcdGNoYWluOiBjaGFpbi5jb25jYXQoW3BhcmVudElkXSksXG4gXHRcdFx0XHRcdFx0aWQ6IHBhcmVudElkXG4gXHRcdFx0XHRcdH0pO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cblxuIFx0XHRcdHJldHVybiB7XG4gXHRcdFx0XHR0eXBlOiBcImFjY2VwdGVkXCIsXG4gXHRcdFx0XHRtb2R1bGVJZDogdXBkYXRlTW9kdWxlSWQsXG4gXHRcdFx0XHRvdXRkYXRlZE1vZHVsZXM6IG91dGRhdGVkTW9kdWxlcyxcbiBcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzOiBvdXRkYXRlZERlcGVuZGVuY2llc1xuIFx0XHRcdH07XG4gXHRcdH1cblxuIFx0XHRmdW5jdGlvbiBhZGRBbGxUb1NldChhLCBiKSB7XG4gXHRcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBiLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0XHR2YXIgaXRlbSA9IGJbaV07XG4gXHRcdFx0XHRpZiAoYS5pbmRleE9mKGl0ZW0pID09PSAtMSkgYS5wdXNoKGl0ZW0pO1xuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIGF0IGJlZ2luIGFsbCB1cGRhdGVzIG1vZHVsZXMgYXJlIG91dGRhdGVkXG4gXHRcdC8vIHRoZSBcIm91dGRhdGVkXCIgc3RhdHVzIGNhbiBwcm9wYWdhdGUgdG8gcGFyZW50cyBpZiB0aGV5IGRvbid0IGFjY2VwdCB0aGUgY2hpbGRyZW5cbiBcdFx0dmFyIG91dGRhdGVkRGVwZW5kZW5jaWVzID0ge307XG4gXHRcdHZhciBvdXRkYXRlZE1vZHVsZXMgPSBbXTtcbiBcdFx0dmFyIGFwcGxpZWRVcGRhdGUgPSB7fTtcblxuIFx0XHR2YXIgd2FyblVuZXhwZWN0ZWRSZXF1aXJlID0gZnVuY3Rpb24gd2FyblVuZXhwZWN0ZWRSZXF1aXJlKCkge1xuIFx0XHRcdGNvbnNvbGUud2FybihcbiBcdFx0XHRcdFwiW0hNUl0gdW5leHBlY3RlZCByZXF1aXJlKFwiICsgcmVzdWx0Lm1vZHVsZUlkICsgXCIpIHRvIGRpc3Bvc2VkIG1vZHVsZVwiXG4gXHRcdFx0KTtcbiBcdFx0fTtcblxuIFx0XHRmb3IgKHZhciBpZCBpbiBob3RVcGRhdGUpIHtcbiBcdFx0XHRpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGhvdFVwZGF0ZSwgaWQpKSB7XG4gXHRcdFx0XHRtb2R1bGVJZCA9IHRvTW9kdWxlSWQoaWQpO1xuIFx0XHRcdFx0LyoqIEB0eXBlIHtUT0RPfSAqL1xuIFx0XHRcdFx0dmFyIHJlc3VsdDtcbiBcdFx0XHRcdGlmIChob3RVcGRhdGVbaWRdKSB7XG4gXHRcdFx0XHRcdHJlc3VsdCA9IGdldEFmZmVjdGVkU3R1ZmYobW9kdWxlSWQpO1xuIFx0XHRcdFx0fSBlbHNlIHtcbiBcdFx0XHRcdFx0cmVzdWx0ID0ge1xuIFx0XHRcdFx0XHRcdHR5cGU6IFwiZGlzcG9zZWRcIixcbiBcdFx0XHRcdFx0XHRtb2R1bGVJZDogaWRcbiBcdFx0XHRcdFx0fTtcbiBcdFx0XHRcdH1cbiBcdFx0XHRcdC8qKiBAdHlwZSB7RXJyb3J8ZmFsc2V9ICovXG4gXHRcdFx0XHR2YXIgYWJvcnRFcnJvciA9IGZhbHNlO1xuIFx0XHRcdFx0dmFyIGRvQXBwbHkgPSBmYWxzZTtcbiBcdFx0XHRcdHZhciBkb0Rpc3Bvc2UgPSBmYWxzZTtcbiBcdFx0XHRcdHZhciBjaGFpbkluZm8gPSBcIlwiO1xuIFx0XHRcdFx0aWYgKHJlc3VsdC5jaGFpbikge1xuIFx0XHRcdFx0XHRjaGFpbkluZm8gPSBcIlxcblVwZGF0ZSBwcm9wYWdhdGlvbjogXCIgKyByZXN1bHQuY2hhaW4uam9pbihcIiAtPiBcIik7XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRzd2l0Y2ggKHJlc3VsdC50eXBlKSB7XG4gXHRcdFx0XHRcdGNhc2UgXCJzZWxmLWRlY2xpbmVkXCI6XG4gXHRcdFx0XHRcdFx0aWYgKG9wdGlvbnMub25EZWNsaW5lZCkgb3B0aW9ucy5vbkRlY2xpbmVkKHJlc3VsdCk7XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZURlY2xpbmVkKVxuIFx0XHRcdFx0XHRcdFx0YWJvcnRFcnJvciA9IG5ldyBFcnJvcihcbiBcdFx0XHRcdFx0XHRcdFx0XCJBYm9ydGVkIGJlY2F1c2Ugb2Ygc2VsZiBkZWNsaW5lOiBcIiArXG4gXHRcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm1vZHVsZUlkICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRjaGFpbkluZm9cbiBcdFx0XHRcdFx0XHRcdCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJkZWNsaW5lZFwiOlxuIFx0XHRcdFx0XHRcdGlmIChvcHRpb25zLm9uRGVjbGluZWQpIG9wdGlvbnMub25EZWNsaW5lZChyZXN1bHQpO1xuIFx0XHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVEZWNsaW5lZClcbiBcdFx0XHRcdFx0XHRcdGFib3J0RXJyb3IgPSBuZXcgRXJyb3IoXG4gXHRcdFx0XHRcdFx0XHRcdFwiQWJvcnRlZCBiZWNhdXNlIG9mIGRlY2xpbmVkIGRlcGVuZGVuY3k6IFwiICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRyZXN1bHQubW9kdWxlSWQgK1xuIFx0XHRcdFx0XHRcdFx0XHRcdFwiIGluIFwiICtcbiBcdFx0XHRcdFx0XHRcdFx0XHRyZXN1bHQucGFyZW50SWQgK1xuIFx0XHRcdFx0XHRcdFx0XHRcdGNoYWluSW5mb1xuIFx0XHRcdFx0XHRcdFx0KTtcbiBcdFx0XHRcdFx0XHRicmVhaztcbiBcdFx0XHRcdFx0Y2FzZSBcInVuYWNjZXB0ZWRcIjpcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vblVuYWNjZXB0ZWQpIG9wdGlvbnMub25VbmFjY2VwdGVkKHJlc3VsdCk7XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZVVuYWNjZXB0ZWQpXG4gXHRcdFx0XHRcdFx0XHRhYm9ydEVycm9yID0gbmV3IEVycm9yKFxuIFx0XHRcdFx0XHRcdFx0XHRcIkFib3J0ZWQgYmVjYXVzZSBcIiArIG1vZHVsZUlkICsgXCIgaXMgbm90IGFjY2VwdGVkXCIgKyBjaGFpbkluZm9cbiBcdFx0XHRcdFx0XHRcdCk7XG4gXHRcdFx0XHRcdFx0YnJlYWs7XG4gXHRcdFx0XHRcdGNhc2UgXCJhY2NlcHRlZFwiOlxuIFx0XHRcdFx0XHRcdGlmIChvcHRpb25zLm9uQWNjZXB0ZWQpIG9wdGlvbnMub25BY2NlcHRlZChyZXN1bHQpO1xuIFx0XHRcdFx0XHRcdGRvQXBwbHkgPSB0cnVlO1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0XHRjYXNlIFwiZGlzcG9zZWRcIjpcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vbkRpc3Bvc2VkKSBvcHRpb25zLm9uRGlzcG9zZWQocmVzdWx0KTtcbiBcdFx0XHRcdFx0XHRkb0Rpc3Bvc2UgPSB0cnVlO1xuIFx0XHRcdFx0XHRcdGJyZWFrO1xuIFx0XHRcdFx0XHRkZWZhdWx0OlxuIFx0XHRcdFx0XHRcdHRocm93IG5ldyBFcnJvcihcIlVuZXhjZXB0aW9uIHR5cGUgXCIgKyByZXN1bHQudHlwZSk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0XHRpZiAoYWJvcnRFcnJvcikge1xuIFx0XHRcdFx0XHRob3RTZXRTdGF0dXMoXCJhYm9ydFwiKTtcbiBcdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KGFib3J0RXJyb3IpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0aWYgKGRvQXBwbHkpIHtcbiBcdFx0XHRcdFx0YXBwbGllZFVwZGF0ZVttb2R1bGVJZF0gPSBob3RVcGRhdGVbbW9kdWxlSWRdO1xuIFx0XHRcdFx0XHRhZGRBbGxUb1NldChvdXRkYXRlZE1vZHVsZXMsIHJlc3VsdC5vdXRkYXRlZE1vZHVsZXMpO1xuIFx0XHRcdFx0XHRmb3IgKG1vZHVsZUlkIGluIHJlc3VsdC5vdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdFx0XHRcdGlmIChcbiBcdFx0XHRcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChcbiBcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm91dGRhdGVkRGVwZW5kZW5jaWVzLFxuIFx0XHRcdFx0XHRcdFx0XHRtb2R1bGVJZFxuIFx0XHRcdFx0XHRcdFx0KVxuIFx0XHRcdFx0XHRcdCkge1xuIFx0XHRcdFx0XHRcdFx0aWYgKCFvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF0pXG4gXHRcdFx0XHRcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSA9IFtdO1xuIFx0XHRcdFx0XHRcdFx0YWRkQWxsVG9TZXQoXG4gXHRcdFx0XHRcdFx0XHRcdG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXSxcbiBcdFx0XHRcdFx0XHRcdFx0cmVzdWx0Lm91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXVxuIFx0XHRcdFx0XHRcdFx0KTtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH1cbiBcdFx0XHRcdGlmIChkb0Rpc3Bvc2UpIHtcbiBcdFx0XHRcdFx0YWRkQWxsVG9TZXQob3V0ZGF0ZWRNb2R1bGVzLCBbcmVzdWx0Lm1vZHVsZUlkXSk7XG4gXHRcdFx0XHRcdGFwcGxpZWRVcGRhdGVbbW9kdWxlSWRdID0gd2FyblVuZXhwZWN0ZWRSZXF1aXJlO1xuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIFN0b3JlIHNlbGYgYWNjZXB0ZWQgb3V0ZGF0ZWQgbW9kdWxlcyB0byByZXF1aXJlIHRoZW0gbGF0ZXIgYnkgdGhlIG1vZHVsZSBzeXN0ZW1cbiBcdFx0dmFyIG91dGRhdGVkU2VsZkFjY2VwdGVkTW9kdWxlcyA9IFtdO1xuIFx0XHRmb3IgKGkgPSAwOyBpIDwgb3V0ZGF0ZWRNb2R1bGVzLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0bW9kdWxlSWQgPSBvdXRkYXRlZE1vZHVsZXNbaV07XG4gXHRcdFx0aWYgKFxuIFx0XHRcdFx0aW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gJiZcbiBcdFx0XHRcdGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmhvdC5fc2VsZkFjY2VwdGVkICYmXG4gXHRcdFx0XHQvLyByZW1vdmVkIHNlbGYtYWNjZXB0ZWQgbW9kdWxlcyBzaG91bGQgbm90IGJlIHJlcXVpcmVkXG4gXHRcdFx0XHRhcHBsaWVkVXBkYXRlW21vZHVsZUlkXSAhPT0gd2FyblVuZXhwZWN0ZWRSZXF1aXJlICYmXG4gXHRcdFx0XHQvLyB3aGVuIGNhbGxlZCBpbnZhbGlkYXRlIHNlbGYtYWNjZXB0aW5nIGlzIG5vdCBwb3NzaWJsZVxuIFx0XHRcdFx0IWluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmhvdC5fc2VsZkludmFsaWRhdGVkXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRvdXRkYXRlZFNlbGZBY2NlcHRlZE1vZHVsZXMucHVzaCh7XG4gXHRcdFx0XHRcdG1vZHVsZTogbW9kdWxlSWQsXG4gXHRcdFx0XHRcdHBhcmVudHM6IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLnBhcmVudHMuc2xpY2UoKSxcbiBcdFx0XHRcdFx0ZXJyb3JIYW5kbGVyOiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5ob3QuX3NlbGZBY2NlcHRlZFxuIFx0XHRcdFx0fSk7XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gTm93IGluIFwiZGlzcG9zZVwiIHBoYXNlXG4gXHRcdGhvdFNldFN0YXR1cyhcImRpc3Bvc2VcIik7XG4gXHRcdE9iamVjdC5rZXlzKGhvdEF2YWlsYWJsZUZpbGVzTWFwKS5mb3JFYWNoKGZ1bmN0aW9uKGNodW5rSWQpIHtcbiBcdFx0XHRpZiAoaG90QXZhaWxhYmxlRmlsZXNNYXBbY2h1bmtJZF0gPT09IGZhbHNlKSB7XG4gXHRcdFx0XHRob3REaXNwb3NlQ2h1bmsoY2h1bmtJZCk7XG4gXHRcdFx0fVxuIFx0XHR9KTtcblxuIFx0XHR2YXIgaWR4O1xuIFx0XHR2YXIgcXVldWUgPSBvdXRkYXRlZE1vZHVsZXMuc2xpY2UoKTtcbiBcdFx0d2hpbGUgKHF1ZXVlLmxlbmd0aCA+IDApIHtcbiBcdFx0XHRtb2R1bGVJZCA9IHF1ZXVlLnBvcCgpO1xuIFx0XHRcdG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHRcdGlmICghbW9kdWxlKSBjb250aW51ZTtcblxuIFx0XHRcdHZhciBkYXRhID0ge307XG5cbiBcdFx0XHQvLyBDYWxsIGRpc3Bvc2UgaGFuZGxlcnNcbiBcdFx0XHR2YXIgZGlzcG9zZUhhbmRsZXJzID0gbW9kdWxlLmhvdC5fZGlzcG9zZUhhbmRsZXJzO1xuIFx0XHRcdGZvciAoaiA9IDA7IGogPCBkaXNwb3NlSGFuZGxlcnMubGVuZ3RoOyBqKyspIHtcbiBcdFx0XHRcdGNiID0gZGlzcG9zZUhhbmRsZXJzW2pdO1xuIFx0XHRcdFx0Y2IoZGF0YSk7XG4gXHRcdFx0fVxuIFx0XHRcdGhvdEN1cnJlbnRNb2R1bGVEYXRhW21vZHVsZUlkXSA9IGRhdGE7XG5cbiBcdFx0XHQvLyBkaXNhYmxlIG1vZHVsZSAodGhpcyBkaXNhYmxlcyByZXF1aXJlcyBmcm9tIHRoaXMgbW9kdWxlKVxuIFx0XHRcdG1vZHVsZS5ob3QuYWN0aXZlID0gZmFsc2U7XG5cbiBcdFx0XHQvLyByZW1vdmUgbW9kdWxlIGZyb20gY2FjaGVcbiBcdFx0XHRkZWxldGUgaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF07XG5cbiBcdFx0XHQvLyB3aGVuIGRpc3Bvc2luZyB0aGVyZSBpcyBubyBuZWVkIHRvIGNhbGwgZGlzcG9zZSBoYW5kbGVyXG4gXHRcdFx0ZGVsZXRlIG91dGRhdGVkRGVwZW5kZW5jaWVzW21vZHVsZUlkXTtcblxuIFx0XHRcdC8vIHJlbW92ZSBcInBhcmVudHNcIiByZWZlcmVuY2VzIGZyb20gYWxsIGNoaWxkcmVuXG4gXHRcdFx0Zm9yIChqID0gMDsgaiA8IG1vZHVsZS5jaGlsZHJlbi5sZW5ndGg7IGorKykge1xuIFx0XHRcdFx0dmFyIGNoaWxkID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGUuY2hpbGRyZW5bal1dO1xuIFx0XHRcdFx0aWYgKCFjaGlsZCkgY29udGludWU7XG4gXHRcdFx0XHRpZHggPSBjaGlsZC5wYXJlbnRzLmluZGV4T2YobW9kdWxlSWQpO1xuIFx0XHRcdFx0aWYgKGlkeCA+PSAwKSB7XG4gXHRcdFx0XHRcdGNoaWxkLnBhcmVudHMuc3BsaWNlKGlkeCwgMSk7XG4gXHRcdFx0XHR9XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gcmVtb3ZlIG91dGRhdGVkIGRlcGVuZGVuY3kgZnJvbSBtb2R1bGUgY2hpbGRyZW5cbiBcdFx0dmFyIGRlcGVuZGVuY3k7XG4gXHRcdHZhciBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llcztcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBvdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvdXRkYXRlZERlcGVuZGVuY2llcywgbW9kdWxlSWQpXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdGlmIChtb2R1bGUpIHtcbiBcdFx0XHRcdFx0bW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMgPSBvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRcdGZvciAoaiA9IDA7IGogPCBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llcy5sZW5ndGg7IGorKykge1xuIFx0XHRcdFx0XHRcdGRlcGVuZGVuY3kgPSBtb2R1bGVPdXRkYXRlZERlcGVuZGVuY2llc1tqXTtcbiBcdFx0XHRcdFx0XHRpZHggPSBtb2R1bGUuY2hpbGRyZW4uaW5kZXhPZihkZXBlbmRlbmN5KTtcbiBcdFx0XHRcdFx0XHRpZiAoaWR4ID49IDApIG1vZHVsZS5jaGlsZHJlbi5zcGxpY2UoaWR4LCAxKTtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIE5vdyBpbiBcImFwcGx5XCIgcGhhc2VcbiBcdFx0aG90U2V0U3RhdHVzKFwiYXBwbHlcIik7XG5cbiBcdFx0aWYgKGhvdFVwZGF0ZU5ld0hhc2ggIT09IHVuZGVmaW5lZCkge1xuIFx0XHRcdGhvdEN1cnJlbnRIYXNoID0gaG90VXBkYXRlTmV3SGFzaDtcbiBcdFx0XHRob3RVcGRhdGVOZXdIYXNoID0gdW5kZWZpbmVkO1xuIFx0XHR9XG4gXHRcdGhvdFVwZGF0ZSA9IHVuZGVmaW5lZDtcblxuIFx0XHQvLyBpbnNlcnQgbmV3IGNvZGVcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBhcHBsaWVkVXBkYXRlKSB7XG4gXHRcdFx0aWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhcHBsaWVkVXBkYXRlLCBtb2R1bGVJZCkpIHtcbiBcdFx0XHRcdG1vZHVsZXNbbW9kdWxlSWRdID0gYXBwbGllZFVwZGF0ZVttb2R1bGVJZF07XG4gXHRcdFx0fVxuIFx0XHR9XG5cbiBcdFx0Ly8gY2FsbCBhY2NlcHQgaGFuZGxlcnNcbiBcdFx0dmFyIGVycm9yID0gbnVsbDtcbiBcdFx0Zm9yIChtb2R1bGVJZCBpbiBvdXRkYXRlZERlcGVuZGVuY2llcykge1xuIFx0XHRcdGlmIChcbiBcdFx0XHRcdE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvdXRkYXRlZERlcGVuZGVuY2llcywgbW9kdWxlSWQpXG4gXHRcdFx0KSB7XG4gXHRcdFx0XHRtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXTtcbiBcdFx0XHRcdGlmIChtb2R1bGUpIHtcbiBcdFx0XHRcdFx0bW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMgPSBvdXRkYXRlZERlcGVuZGVuY2llc1ttb2R1bGVJZF07XG4gXHRcdFx0XHRcdHZhciBjYWxsYmFja3MgPSBbXTtcbiBcdFx0XHRcdFx0Zm9yIChpID0gMDsgaSA8IG1vZHVsZU91dGRhdGVkRGVwZW5kZW5jaWVzLmxlbmd0aDsgaSsrKSB7XG4gXHRcdFx0XHRcdFx0ZGVwZW5kZW5jeSA9IG1vZHVsZU91dGRhdGVkRGVwZW5kZW5jaWVzW2ldO1xuIFx0XHRcdFx0XHRcdGNiID0gbW9kdWxlLmhvdC5fYWNjZXB0ZWREZXBlbmRlbmNpZXNbZGVwZW5kZW5jeV07XG4gXHRcdFx0XHRcdFx0aWYgKGNiKSB7XG4gXHRcdFx0XHRcdFx0XHRpZiAoY2FsbGJhY2tzLmluZGV4T2YoY2IpICE9PSAtMSkgY29udGludWU7XG4gXHRcdFx0XHRcdFx0XHRjYWxsYmFja3MucHVzaChjYik7XG4gXHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGZvciAoaSA9IDA7IGkgPCBjYWxsYmFja3MubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHRcdFx0XHRjYiA9IGNhbGxiYWNrc1tpXTtcbiBcdFx0XHRcdFx0XHR0cnkge1xuIFx0XHRcdFx0XHRcdFx0Y2IobW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXMpO1xuIFx0XHRcdFx0XHRcdH0gY2F0Y2ggKGVycikge1xuIFx0XHRcdFx0XHRcdFx0aWYgKG9wdGlvbnMub25FcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdFx0XHR0eXBlOiBcImFjY2VwdC1lcnJvcmVkXCIsXG4gXHRcdFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0XHRcdGRlcGVuZGVuY3lJZDogbW9kdWxlT3V0ZGF0ZWREZXBlbmRlbmNpZXNbaV0sXG4gXHRcdFx0XHRcdFx0XHRcdFx0ZXJyb3I6IGVyclxuIFx0XHRcdFx0XHRcdFx0XHR9KTtcbiBcdFx0XHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVFcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0XHRcdGlmICghZXJyb3IpIGVycm9yID0gZXJyO1xuIFx0XHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRcdH1cbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fVxuIFx0XHRcdH1cbiBcdFx0fVxuXG4gXHRcdC8vIExvYWQgc2VsZiBhY2NlcHRlZCBtb2R1bGVzXG4gXHRcdGZvciAoaSA9IDA7IGkgPCBvdXRkYXRlZFNlbGZBY2NlcHRlZE1vZHVsZXMubGVuZ3RoOyBpKyspIHtcbiBcdFx0XHR2YXIgaXRlbSA9IG91dGRhdGVkU2VsZkFjY2VwdGVkTW9kdWxlc1tpXTtcbiBcdFx0XHRtb2R1bGVJZCA9IGl0ZW0ubW9kdWxlO1xuIFx0XHRcdGhvdEN1cnJlbnRQYXJlbnRzID0gaXRlbS5wYXJlbnRzO1xuIFx0XHRcdGhvdEN1cnJlbnRDaGlsZE1vZHVsZSA9IG1vZHVsZUlkO1xuIFx0XHRcdHRyeSB7XG4gXHRcdFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKTtcbiBcdFx0XHR9IGNhdGNoIChlcnIpIHtcbiBcdFx0XHRcdGlmICh0eXBlb2YgaXRlbS5lcnJvckhhbmRsZXIgPT09IFwiZnVuY3Rpb25cIikge1xuIFx0XHRcdFx0XHR0cnkge1xuIFx0XHRcdFx0XHRcdGl0ZW0uZXJyb3JIYW5kbGVyKGVycik7XG4gXHRcdFx0XHRcdH0gY2F0Y2ggKGVycjIpIHtcbiBcdFx0XHRcdFx0XHRpZiAob3B0aW9ucy5vbkVycm9yZWQpIHtcbiBcdFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdFx0dHlwZTogXCJzZWxmLWFjY2VwdC1lcnJvci1oYW5kbGVyLWVycm9yZWRcIixcbiBcdFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0XHRlcnJvcjogZXJyMixcbiBcdFx0XHRcdFx0XHRcdFx0b3JpZ2luYWxFcnJvcjogZXJyXG4gXHRcdFx0XHRcdFx0XHR9KTtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdFx0aWYgKCFvcHRpb25zLmlnbm9yZUVycm9yZWQpIHtcbiBcdFx0XHRcdFx0XHRcdGlmICghZXJyb3IpIGVycm9yID0gZXJyMjtcbiBcdFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdFx0aWYgKCFlcnJvcikgZXJyb3IgPSBlcnI7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHRcdGlmIChvcHRpb25zLm9uRXJyb3JlZCkge1xuIFx0XHRcdFx0XHRcdG9wdGlvbnMub25FcnJvcmVkKHtcbiBcdFx0XHRcdFx0XHRcdHR5cGU6IFwic2VsZi1hY2NlcHQtZXJyb3JlZFwiLFxuIFx0XHRcdFx0XHRcdFx0bW9kdWxlSWQ6IG1vZHVsZUlkLFxuIFx0XHRcdFx0XHRcdFx0ZXJyb3I6IGVyclxuIFx0XHRcdFx0XHRcdH0pO1xuIFx0XHRcdFx0XHR9XG4gXHRcdFx0XHRcdGlmICghb3B0aW9ucy5pZ25vcmVFcnJvcmVkKSB7XG4gXHRcdFx0XHRcdFx0aWYgKCFlcnJvcikgZXJyb3IgPSBlcnI7XG4gXHRcdFx0XHRcdH1cbiBcdFx0XHRcdH1cbiBcdFx0XHR9XG4gXHRcdH1cblxuIFx0XHQvLyBoYW5kbGUgZXJyb3JzIGluIGFjY2VwdCBoYW5kbGVycyBhbmQgc2VsZiBhY2NlcHRlZCBtb2R1bGUgbG9hZFxuIFx0XHRpZiAoZXJyb3IpIHtcbiBcdFx0XHRob3RTZXRTdGF0dXMoXCJmYWlsXCIpO1xuIFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7XG4gXHRcdH1cblxuIFx0XHRpZiAoaG90UXVldWVkSW52YWxpZGF0ZWRNb2R1bGVzKSB7XG4gXHRcdFx0cmV0dXJuIGhvdEFwcGx5SW50ZXJuYWwob3B0aW9ucykudGhlbihmdW5jdGlvbihsaXN0KSB7XG4gXHRcdFx0XHRvdXRkYXRlZE1vZHVsZXMuZm9yRWFjaChmdW5jdGlvbihtb2R1bGVJZCkge1xuIFx0XHRcdFx0XHRpZiAobGlzdC5pbmRleE9mKG1vZHVsZUlkKSA8IDApIGxpc3QucHVzaChtb2R1bGVJZCk7XG4gXHRcdFx0XHR9KTtcbiBcdFx0XHRcdHJldHVybiBsaXN0O1xuIFx0XHRcdH0pO1xuIFx0XHR9XG5cbiBcdFx0aG90U2V0U3RhdHVzKFwiaWRsZVwiKTtcbiBcdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHtcbiBcdFx0XHRyZXNvbHZlKG91dGRhdGVkTW9kdWxlcyk7XG4gXHRcdH0pO1xuIFx0fVxuXG4gXHRmdW5jdGlvbiBob3RBcHBseUludmFsaWRhdGVkTW9kdWxlcygpIHtcbiBcdFx0aWYgKGhvdFF1ZXVlZEludmFsaWRhdGVkTW9kdWxlcykge1xuIFx0XHRcdGlmICghaG90VXBkYXRlKSBob3RVcGRhdGUgPSB7fTtcbiBcdFx0XHRob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXMuZm9yRWFjaChob3RBcHBseUludmFsaWRhdGVkTW9kdWxlKTtcbiBcdFx0XHRob3RRdWV1ZWRJbnZhbGlkYXRlZE1vZHVsZXMgPSB1bmRlZmluZWQ7XG4gXHRcdFx0cmV0dXJuIHRydWU7XG4gXHRcdH1cbiBcdH1cblxuIFx0ZnVuY3Rpb24gaG90QXBwbHlJbnZhbGlkYXRlZE1vZHVsZShtb2R1bGVJZCkge1xuIFx0XHRpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChob3RVcGRhdGUsIG1vZHVsZUlkKSlcbiBcdFx0XHRob3RVcGRhdGVbbW9kdWxlSWRdID0gbW9kdWxlc1ttb2R1bGVJZF07XG4gXHR9XG5cbiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIG9iamVjdCB0byBzdG9yZSBsb2FkZWQgYW5kIGxvYWRpbmcgY2h1bmtzXG4gXHQvLyB1bmRlZmluZWQgPSBjaHVuayBub3QgbG9hZGVkLCBudWxsID0gY2h1bmsgcHJlbG9hZGVkL3ByZWZldGNoZWRcbiBcdC8vIFByb21pc2UgPSBjaHVuayBsb2FkaW5nLCAwID0gY2h1bmsgbG9hZGVkXG4gXHR2YXIgaW5zdGFsbGVkQ2h1bmtzID0ge1xuIFx0XHRcIndlYnBhY2tcIjogMFxuIFx0fTtcblxuIFx0dmFyIGRlZmVycmVkTW9kdWxlcyA9IFtdO1xuXG4gXHQvLyBzY3JpcHQgcGF0aCBmdW5jdGlvblxuIFx0ZnVuY3Rpb24ganNvbnBTY3JpcHRTcmMoY2h1bmtJZCkge1xuIFx0XHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXy5wICsgXCJzdGF0aWMvY2h1bmtzL1wiICsgKHt9W2NodW5rSWRdfHxjaHVua0lkKSArIFwiLmpzXCJcbiBcdH1cblxuIFx0Ly8gbm9vcCBmbnMgdG8gcHJldmVudCBydW50aW1lIGVycm9ycyBkdXJpbmcgaW5pdGlhbGl6YXRpb25cbiBcdGlmICh0eXBlb2Ygc2VsZiAhPT0gXCJ1bmRlZmluZWRcIikge1xuIFx0XHRzZWxmLiRSZWZyZXNoUmVnJCA9IGZ1bmN0aW9uICgpIHt9O1xuIFx0XHRzZWxmLiRSZWZyZXNoU2lnJCA9IGZ1bmN0aW9uICgpIHtcbiBcdFx0XHRyZXR1cm4gZnVuY3Rpb24gKHR5cGUpIHtcbiBcdFx0XHRcdHJldHVybiB0eXBlO1xuIFx0XHRcdH07XG4gXHRcdH07XG4gXHR9XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9LFxuIFx0XHRcdGhvdDogaG90Q3JlYXRlTW9kdWxlKG1vZHVsZUlkKSxcbiBcdFx0XHRwYXJlbnRzOiAoaG90Q3VycmVudFBhcmVudHNUZW1wID0gaG90Q3VycmVudFBhcmVudHMsIGhvdEN1cnJlbnRQYXJlbnRzID0gW10sIGhvdEN1cnJlbnRQYXJlbnRzVGVtcCksXG4gXHRcdFx0Y2hpbGRyZW46IFtdXG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdHZhciB0aHJldyA9IHRydWU7XG4gXHRcdHRyeSB7XG5cbiBcdFx0ICAgICAgICB2YXIgaGFzUmVmcmVzaCA9IHR5cGVvZiBzZWxmICE9PSBcInVuZGVmaW5lZFwiICYmICEhc2VsZi4kUmVmcmVzaEludGVyY2VwdE1vZHVsZUV4ZWN1dGlvbiQ7XG4gXHRcdCAgICAgICAgdmFyIGNsZWFudXAgPSBoYXNSZWZyZXNoXG4gXHRcdCAgICAgICAgICA/IHNlbGYuJFJlZnJlc2hJbnRlcmNlcHRNb2R1bGVFeGVjdXRpb24kKG1vZHVsZUlkKVxuIFx0XHQgICAgICAgICAgOiBmdW5jdGlvbigpIHt9O1xuIFx0XHQgICAgICAgIHRyeSB7XG4gXHRcdCAgICAgICAgXG4gXHRcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgaG90Q3JlYXRlUmVxdWlyZShtb2R1bGVJZCkpO1xuXG4gXHRcdCAgICAgICAgfSBmaW5hbGx5IHtcbiBcdFx0ICAgICAgICAgIGNsZWFudXAoKTtcbiBcdFx0ICAgICAgICB9XG4gXHRcdCAgICAgICAgXG4gXHRcdFx0dGhyZXcgPSBmYWxzZTtcbiBcdFx0fSBmaW5hbGx5IHtcbiBcdFx0XHRpZih0aHJldykgZGVsZXRlIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdO1xuIFx0XHR9XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG4gXHQvLyBUaGlzIGZpbGUgY29udGFpbnMgb25seSB0aGUgZW50cnkgY2h1bmsuXG4gXHQvLyBUaGUgY2h1bmsgbG9hZGluZyBmdW5jdGlvbiBmb3IgYWRkaXRpb25hbCBjaHVua3NcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZSA9IGZ1bmN0aW9uIHJlcXVpcmVFbnN1cmUoY2h1bmtJZCkge1xuIFx0XHR2YXIgcHJvbWlzZXMgPSBbXTtcblxuXG4gXHRcdC8vIEpTT05QIGNodW5rIGxvYWRpbmcgZm9yIGphdmFzY3JpcHRcblxuIFx0XHR2YXIgaW5zdGFsbGVkQ2h1bmtEYXRhID0gaW5zdGFsbGVkQ2h1bmtzW2NodW5rSWRdO1xuIFx0XHRpZihpbnN0YWxsZWRDaHVua0RhdGEgIT09IDApIHsgLy8gMCBtZWFucyBcImFscmVhZHkgaW5zdGFsbGVkXCIuXG5cbiBcdFx0XHQvLyBhIFByb21pc2UgbWVhbnMgXCJjdXJyZW50bHkgbG9hZGluZ1wiLlxuIFx0XHRcdGlmKGluc3RhbGxlZENodW5rRGF0YSkge1xuIFx0XHRcdFx0cHJvbWlzZXMucHVzaChpbnN0YWxsZWRDaHVua0RhdGFbMl0pO1xuIFx0XHRcdH0gZWxzZSB7XG4gXHRcdFx0XHQvLyBzZXR1cCBQcm9taXNlIGluIGNodW5rIGNhY2hlXG4gXHRcdFx0XHR2YXIgcHJvbWlzZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuIFx0XHRcdFx0XHRpbnN0YWxsZWRDaHVua0RhdGEgPSBpbnN0YWxsZWRDaHVua3NbY2h1bmtJZF0gPSBbcmVzb2x2ZSwgcmVqZWN0XTtcbiBcdFx0XHRcdH0pO1xuIFx0XHRcdFx0cHJvbWlzZXMucHVzaChpbnN0YWxsZWRDaHVua0RhdGFbMl0gPSBwcm9taXNlKTtcblxuIFx0XHRcdFx0Ly8gc3RhcnQgY2h1bmsgbG9hZGluZ1xuIFx0XHRcdFx0dmFyIHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuIFx0XHRcdFx0dmFyIG9uU2NyaXB0Q29tcGxldGU7XG5cbiBcdFx0XHRcdHNjcmlwdC5jaGFyc2V0ID0gJ3V0Zi04JztcbiBcdFx0XHRcdHNjcmlwdC50aW1lb3V0ID0gMTIwO1xuIFx0XHRcdFx0aWYgKF9fd2VicGFja19yZXF1aXJlX18ubmMpIHtcbiBcdFx0XHRcdFx0c2NyaXB0LnNldEF0dHJpYnV0ZShcIm5vbmNlXCIsIF9fd2VicGFja19yZXF1aXJlX18ubmMpO1xuIFx0XHRcdFx0fVxuIFx0XHRcdFx0c2NyaXB0LnNyYyA9IGpzb25wU2NyaXB0U3JjKGNodW5rSWQpO1xuXG4gXHRcdFx0XHQvLyBjcmVhdGUgZXJyb3IgYmVmb3JlIHN0YWNrIHVud291bmQgdG8gZ2V0IHVzZWZ1bCBzdGFja3RyYWNlIGxhdGVyXG4gXHRcdFx0XHR2YXIgZXJyb3IgPSBuZXcgRXJyb3IoKTtcbiBcdFx0XHRcdG9uU2NyaXB0Q29tcGxldGUgPSBmdW5jdGlvbiAoZXZlbnQpIHtcbiBcdFx0XHRcdFx0Ly8gYXZvaWQgbWVtIGxlYWtzIGluIElFLlxuIFx0XHRcdFx0XHRzY3JpcHQub25lcnJvciA9IHNjcmlwdC5vbmxvYWQgPSBudWxsO1xuIFx0XHRcdFx0XHRjbGVhclRpbWVvdXQodGltZW91dCk7XG4gXHRcdFx0XHRcdHZhciBjaHVuayA9IGluc3RhbGxlZENodW5rc1tjaHVua0lkXTtcbiBcdFx0XHRcdFx0aWYoY2h1bmsgIT09IDApIHtcbiBcdFx0XHRcdFx0XHRpZihjaHVuaykge1xuIFx0XHRcdFx0XHRcdFx0dmFyIGVycm9yVHlwZSA9IGV2ZW50ICYmIChldmVudC50eXBlID09PSAnbG9hZCcgPyAnbWlzc2luZycgOiBldmVudC50eXBlKTtcbiBcdFx0XHRcdFx0XHRcdHZhciByZWFsU3JjID0gZXZlbnQgJiYgZXZlbnQudGFyZ2V0ICYmIGV2ZW50LnRhcmdldC5zcmM7XG4gXHRcdFx0XHRcdFx0XHRlcnJvci5tZXNzYWdlID0gJ0xvYWRpbmcgY2h1bmsgJyArIGNodW5rSWQgKyAnIGZhaWxlZC5cXG4oJyArIGVycm9yVHlwZSArICc6ICcgKyByZWFsU3JjICsgJyknO1xuIFx0XHRcdFx0XHRcdFx0ZXJyb3IubmFtZSA9ICdDaHVua0xvYWRFcnJvcic7XG4gXHRcdFx0XHRcdFx0XHRlcnJvci50eXBlID0gZXJyb3JUeXBlO1xuIFx0XHRcdFx0XHRcdFx0ZXJyb3IucmVxdWVzdCA9IHJlYWxTcmM7XG4gXHRcdFx0XHRcdFx0XHRjaHVua1sxXShlcnJvcik7XG4gXHRcdFx0XHRcdFx0fVxuIFx0XHRcdFx0XHRcdGluc3RhbGxlZENodW5rc1tjaHVua0lkXSA9IHVuZGVmaW5lZDtcbiBcdFx0XHRcdFx0fVxuIFx0XHRcdFx0fTtcbiBcdFx0XHRcdHZhciB0aW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpe1xuIFx0XHRcdFx0XHRvblNjcmlwdENvbXBsZXRlKHsgdHlwZTogJ3RpbWVvdXQnLCB0YXJnZXQ6IHNjcmlwdCB9KTtcbiBcdFx0XHRcdH0sIDEyMDAwMCk7XG4gXHRcdFx0XHRzY3JpcHQub25lcnJvciA9IHNjcmlwdC5vbmxvYWQgPSBvblNjcmlwdENvbXBsZXRlO1xuIFx0XHRcdFx0ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzY3JpcHQpO1xuIFx0XHRcdH1cbiBcdFx0fVxuIFx0XHRyZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpO1xuIFx0fTtcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBnZXR0ZXIgfSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uciA9IGZ1bmN0aW9uKGV4cG9ydHMpIHtcbiBcdFx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG4gXHRcdH1cbiBcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiBcdH07XG5cbiBcdC8vIGNyZWF0ZSBhIGZha2UgbmFtZXNwYWNlIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDE6IHZhbHVlIGlzIGEgbW9kdWxlIGlkLCByZXF1aXJlIGl0XG4gXHQvLyBtb2RlICYgMjogbWVyZ2UgYWxsIHByb3BlcnRpZXMgb2YgdmFsdWUgaW50byB0aGUgbnNcbiBcdC8vIG1vZGUgJiA0OiByZXR1cm4gdmFsdWUgd2hlbiBhbHJlYWR5IG5zIG9iamVjdFxuIFx0Ly8gbW9kZSAmIDh8MTogYmVoYXZlIGxpa2UgcmVxdWlyZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy50ID0gZnVuY3Rpb24odmFsdWUsIG1vZGUpIHtcbiBcdFx0aWYobW9kZSAmIDEpIHZhbHVlID0gX193ZWJwYWNrX3JlcXVpcmVfXyh2YWx1ZSk7XG4gXHRcdGlmKG1vZGUgJiA4KSByZXR1cm4gdmFsdWU7XG4gXHRcdGlmKChtb2RlICYgNCkgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAmJiB2YWx1ZS5fX2VzTW9kdWxlKSByZXR1cm4gdmFsdWU7XG4gXHRcdHZhciBucyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18ucihucyk7XG4gXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShucywgJ2RlZmF1bHQnLCB7IGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiB2YWx1ZSB9KTtcbiBcdFx0aWYobW9kZSAmIDIgJiYgdHlwZW9mIHZhbHVlICE9ICdzdHJpbmcnKSBmb3IodmFyIGtleSBpbiB2YWx1ZSkgX193ZWJwYWNrX3JlcXVpcmVfXy5kKG5zLCBrZXksIGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gdmFsdWVba2V5XTsgfS5iaW5kKG51bGwsIGtleSkpO1xuIFx0XHRyZXR1cm4gbnM7XG4gXHR9O1xuXG4gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuIFx0XHRyZXR1cm4gZ2V0dGVyO1xuIFx0fTtcblxuIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG5cbiBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIlwiO1xuXG4gXHQvLyBvbiBlcnJvciBmdW5jdGlvbiBmb3IgYXN5bmMgbG9hZGluZ1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vZSA9IGZ1bmN0aW9uKGVycikgeyBjb25zb2xlLmVycm9yKGVycik7IHRocm93IGVycjsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX2hhc2hfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5oID0gZnVuY3Rpb24oKSB7IHJldHVybiBob3RDdXJyZW50SGFzaDsgfTtcblxuIFx0dmFyIGpzb25wQXJyYXkgPSB3aW5kb3dbXCJ3ZWJwYWNrSnNvbnBfTl9FXCJdID0gd2luZG93W1wid2VicGFja0pzb25wX05fRVwiXSB8fCBbXTtcbiBcdHZhciBvbGRKc29ucEZ1bmN0aW9uID0ganNvbnBBcnJheS5wdXNoLmJpbmQoanNvbnBBcnJheSk7XG4gXHRqc29ucEFycmF5LnB1c2ggPSB3ZWJwYWNrSnNvbnBDYWxsYmFjaztcbiBcdGpzb25wQXJyYXkgPSBqc29ucEFycmF5LnNsaWNlKCk7XG4gXHRmb3IodmFyIGkgPSAwOyBpIDwganNvbnBBcnJheS5sZW5ndGg7IGkrKykgd2VicGFja0pzb25wQ2FsbGJhY2soanNvbnBBcnJheVtpXSk7XG4gXHR2YXIgcGFyZW50SnNvbnBGdW5jdGlvbiA9IG9sZEpzb25wRnVuY3Rpb247XG5cblxuIFx0Ly8gcnVuIGRlZmVycmVkIG1vZHVsZXMgZnJvbSBvdGhlciBjaHVua3NcbiBcdGNoZWNrRGVmZXJyZWRNb2R1bGVzKCk7XG4iXSwic291cmNlUm9vdCI6IiJ9 \ No newline at end of file diff --git a/pages/_app.js b/pages/_app.js index c882878..9c7b02d 100644 --- a/pages/_app.js +++ b/pages/_app.js @@ -7,6 +7,8 @@ function MyApp({ Component, pageProps }) { + {/* https://github.com/facebook/react/issues/20829 */} + diff --git a/pages/index.js b/pages/index.js index 6555f7c..60e2a71 100644 --- a/pages/index.js +++ b/pages/index.js @@ -381,10 +381,10 @@ const Index = () => { } - const HandleProjectNameChange = (e) => { // Stefano: controlled States = this is also still unfinished business + const HandleProjectNameChange = e => { // Stefano: controlled States = this is also still unfinished business setProjectName(e.target.value) } - const HandleLongURL_Change = (e) => { // console.log('HandleLongURL_Change: ' , e.target.value ) ; + const HandleLongURL_Change = e => { // console.log('HandleLongURL_Change: ' , e.target.value ) ; setLongurlValue(e.target.value) } @@ -429,7 +429,7 @@ const Index = () => {
{ HandleLongURL_Change(e); }} > + onChange={HandleLongURL_Change} > @@ -452,8 +452,7 @@ const Index = () => { style={{ visibility: "hidden" }} value={projectName} placeholder="provide Project Name" - onChange={(e) => { - HandleProjectNameChange(e)}} + onChange={ HandleProjectNameChange } >