((typeof self !== 'undefined' ? self : this)["webpackJsonp"] = (typeof self !== 'undefined' ? self : this)["webpackJsonp"] || []).push([["npm.qiankun"],{ /***/ "./node_modules/qiankun/es/addons/engineFlag.js": /*!******************************************************!*\ !*** ./node_modules/qiankun/es/addons/engineFlag.js ***! \******************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getAddOn; });\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n\n\n/**\n * @author Kuitos\n * @since 2020-05-15\n */\n\nfunction getAddOn(global) {\n return {\n beforeLoad: function beforeLoad() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // eslint-disable-next-line no-param-reassign\n global.__POWERED_BY_QIANKUN__ = true;\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n beforeMount: function beforeMount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // eslint-disable-next-line no-param-reassign\n global.__POWERED_BY_QIANKUN__ = true;\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n beforeUnmount: function beforeUnmount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // eslint-disable-next-line no-param-reassign\n delete global.__POWERED_BY_QIANKUN__;\n\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n }\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hZGRvbnMvZW5naW5lRmxhZy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL2FkZG9ucy9lbmdpbmVGbGFnLmpzPzdiNDkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSBcIkBiYWJlbC9ydW50aW1lL3JlZ2VuZXJhdG9yXCI7XG5cbi8qKlxuICogQGF1dGhvciBLdWl0b3NcbiAqIEBzaW5jZSAyMDIwLTA1LTE1XG4gKi9cbmltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0QWRkT24oZ2xvYmFsKSB7XG4gIHJldHVybiB7XG4gICAgYmVmb3JlTG9hZDogZnVuY3Rpb24gYmVmb3JlTG9hZCgpIHtcbiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHtcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICAgICAgICAgICAgICBnbG9iYWwuX19QT1dFUkVEX0JZX1FJQU5LVU5fXyA9IHRydWU7XG5cbiAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sIF9jYWxsZWUpO1xuICAgICAgfSkpO1xuICAgIH0sXG4gICAgYmVmb3JlTW91bnQ6IGZ1bmN0aW9uIGJlZm9yZU1vdW50KCkge1xuICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHtcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7XG4gICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkge1xuICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG4gICAgICAgICAgICAgICAgZ2xvYmFsLl9fUE9XRVJFRF9CWV9RSUFOS1VOX18gPSB0cnVlO1xuXG4gICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgX2NhbGxlZTIpO1xuICAgICAgfSkpO1xuICAgIH0sXG4gICAgYmVmb3JlVW5tb3VudDogZnVuY3Rpb24gYmVmb3JlVW5tb3VudCgpIHtcbiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTMoKSB7XG4gICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0Mykge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0My5wcmV2ID0gX2NvbnRleHQzLm5leHQpIHtcbiAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICAgICAgICAgIGRlbGV0ZSBnbG9iYWwuX19QT1dFUkVEX0JZX1FJQU5LVU5fXztcblxuICAgICAgICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sIF9jYWxsZWUzKTtcbiAgICAgIH0pKTtcbiAgICB9XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/addons/engineFlag.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/addons/index.js": /*!*************************************************!*\ !*** ./node_modules/qiankun/es/addons/index.js ***! \*************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getAddOns; });\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/concat */ \"./node_modules/lodash/concat.js\");\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_concat__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/mergeWith */ \"./node_modules/lodash/mergeWith.js\");\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _runtimePublicPath__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./runtimePublicPath */ \"./node_modules/qiankun/es/addons/runtimePublicPath.js\");\n/* harmony import */ var _engineFlag__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./engineFlag */ \"./node_modules/qiankun/es/addons/engineFlag.js\");\n\n\n\n\nfunction getAddOns(global, publicPath) {\n return lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1___default()({}, Object(_engineFlag__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(global), Object(_runtimePublicPath__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(global, publicPath), function (v1, v2) {\n return lodash_concat__WEBPACK_IMPORTED_MODULE_0___default()(v1 !== null && v1 !== void 0 ? v1 : [], v2 !== null && v2 !== void 0 ? v2 : []);\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hZGRvbnMvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hZGRvbnMvaW5kZXguanM/ODlkOSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgX2NvbmNhdCBmcm9tIFwibG9kYXNoL2NvbmNhdFwiO1xuaW1wb3J0IF9tZXJnZVdpdGggZnJvbSBcImxvZGFzaC9tZXJnZVdpdGhcIjtcbmltcG9ydCBnZXRSdW50aW1lUHVibGljUGF0aEFkZE9uIGZyb20gJy4vcnVudGltZVB1YmxpY1BhdGgnO1xuaW1wb3J0IGdldEVuZ2luZUZsYWdBZGRvbiBmcm9tICcuL2VuZ2luZUZsYWcnO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0QWRkT25zKGdsb2JhbCwgcHVibGljUGF0aCkge1xuICByZXR1cm4gX21lcmdlV2l0aCh7fSwgZ2V0RW5naW5lRmxhZ0FkZG9uKGdsb2JhbCksIGdldFJ1bnRpbWVQdWJsaWNQYXRoQWRkT24oZ2xvYmFsLCBwdWJsaWNQYXRoKSwgZnVuY3Rpb24gKHYxLCB2Mikge1xuICAgIHJldHVybiBfY29uY2F0KHYxICE9PSBudWxsICYmIHYxICE9PSB2b2lkIDAgPyB2MSA6IFtdLCB2MiAhPT0gbnVsbCAmJiB2MiAhPT0gdm9pZCAwID8gdjIgOiBbXSk7XG4gIH0pO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/addons/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/addons/runtimePublicPath.js": /*!*************************************************************!*\ !*** ./node_modules/qiankun/es/addons/runtimePublicPath.js ***! \*************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getAddOn; });\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n\n\nvar rawPublicPath = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__;\nfunction getAddOn(global) {\n var publicPath = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '/';\n var hasMountedOnce = false;\n return {\n beforeLoad: function beforeLoad() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n // eslint-disable-next-line no-param-reassign\n global.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ = publicPath;\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n beforeMount: function beforeMount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee2() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (hasMountedOnce) {\n // eslint-disable-next-line no-param-reassign\n global.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ = publicPath;\n }\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n },\n beforeUnmount: function beforeUnmount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_1__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.mark(function _callee3() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_0___default.a.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n if (rawPublicPath === undefined) {\n // eslint-disable-next-line no-param-reassign\n delete global.__INJECTED_PUBLIC_PATH_BY_QIANKUN__;\n } else {\n // eslint-disable-next-line no-param-reassign\n global.__INJECTED_PUBLIC_PATH_BY_QIANKUN__ = rawPublicPath;\n }\n\n hasMountedOnce = true;\n\n case 2:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n }\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hZGRvbnMvcnVudGltZVB1YmxpY1BhdGguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hZGRvbnMvcnVudGltZVB1YmxpY1BhdGguanM/ZWU4NSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgX3JlZ2VuZXJhdG9yUnVudGltZSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3JcIjtcbmltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xudmFyIHJhd1B1YmxpY1BhdGggPSB3aW5kb3cuX19JTkpFQ1RFRF9QVUJMSUNfUEFUSF9CWV9RSUFOS1VOX187XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRBZGRPbihnbG9iYWwpIHtcbiAgdmFyIHB1YmxpY1BhdGggPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICcvJztcbiAgdmFyIGhhc01vdW50ZWRPbmNlID0gZmFsc2U7XG4gIHJldHVybiB7XG4gICAgYmVmb3JlTG9hZDogZnVuY3Rpb24gYmVmb3JlTG9hZCgpIHtcbiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHtcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICAgICAgICAgICAgICBnbG9iYWwuX19JTkpFQ1RFRF9QVUJMSUNfUEFUSF9CWV9RSUFOS1VOX18gPSBwdWJsaWNQYXRoO1xuXG4gICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlKTtcbiAgICAgIH0pKTtcbiAgICB9LFxuICAgIGJlZm9yZU1vdW50OiBmdW5jdGlvbiBiZWZvcmVNb3VudCgpIHtcbiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7XG4gICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0Mikge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHtcbiAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgIGlmIChoYXNNb3VudGVkT25jZSkge1xuICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG4gICAgICAgICAgICAgICAgICBnbG9iYWwuX19JTkpFQ1RFRF9QVUJMSUNfUEFUSF9CWV9RSUFOS1VOX18gPSBwdWJsaWNQYXRoO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQyLnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0sIF9jYWxsZWUyKTtcbiAgICAgIH0pKTtcbiAgICB9LFxuICAgIGJlZm9yZVVubW91bnQ6IGZ1bmN0aW9uIGJlZm9yZVVubW91bnQoKSB7XG4gICAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKCkge1xuICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUzJChfY29udGV4dDMpIHtcbiAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDMucHJldiA9IF9jb250ZXh0My5uZXh0KSB7XG4gICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICBpZiAocmF3UHVibGljUGF0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICAgICAgICAgICAgICAgIGRlbGV0ZSBnbG9iYWwuX19JTkpFQ1RFRF9QVUJMSUNfUEFUSF9CWV9RSUFOS1VOX187XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgICAgICAgICAgICAgZ2xvYmFsLl9fSU5KRUNURURfUFVCTElDX1BBVEhfQllfUUlBTktVTl9fID0gcmF3UHVibGljUGF0aDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoYXNNb3VudGVkT25jZSA9IHRydWU7XG5cbiAgICAgICAgICAgICAgY2FzZSAyOlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlMyk7XG4gICAgICB9KSk7XG4gICAgfVxuICB9O1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/addons/runtimePublicPath.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/apis.js": /*!*****************************************!*\ !*** ./node_modules/qiankun/es/apis.js ***! \*****************************************/ /*! exports provided: frameworkConfiguration, registerMicroApps, loadMicroApp, start */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"frameworkConfiguration\", function() { return frameworkConfiguration; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"registerMicroApps\", function() { return registerMicroApps; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"loadMicroApp\", function() { return loadMicroApp; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"start\", function() { return start; });\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/noop */ \"./node_modules/lodash/noop.js\");\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_noop__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var single_spa__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! single-spa */ \"./node_modules/single-spa/lib/esm/single-spa.min.js\");\n/* harmony import */ var _loader__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./loader */ \"./node_modules/qiankun/es/loader.js\");\n/* harmony import */ var _prefetch__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./prefetch */ \"./node_modules/qiankun/es/prefetch.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils */ \"./node_modules/qiankun/es/utils.js\");\n\n\n\n\n\n\n\n\n\nvar microApps = []; // eslint-disable-next-line import/no-mutable-exports\n\nvar frameworkConfiguration = {};\nvar frameworkStartedDefer = new _utils__WEBPACK_IMPORTED_MODULE_8__[\"Deferred\"]();\nfunction registerMicroApps(apps, lifeCycles) {\n var _this = this;\n\n // Each app only needs to be registered once\n var unregisteredApps = apps.filter(function (app) {\n return !microApps.some(function (registeredApp) {\n return registeredApp.name === app.name;\n });\n });\n microApps = [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(microApps), Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(unregisteredApps));\n unregisteredApps.forEach(function (app) {\n var name = app.name,\n activeRule = app.activeRule,\n _app$loader = app.loader,\n loader = _app$loader === void 0 ? lodash_noop__WEBPACK_IMPORTED_MODULE_2___default.a : _app$loader,\n props = app.props,\n appConfig = Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__rest\"])(app, [\"name\", \"activeRule\", \"loader\", \"props\"]);\n\n Object(single_spa__WEBPACK_IMPORTED_MODULE_5__[\"registerApplication\"])({\n name: name,\n app: function app() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee3() {\n var _this2 = this;\n\n var _a, mount, otherMicroAppConfigs;\n\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n loader(true);\n _context3.next = 3;\n return frameworkStartedDefer.promise;\n\n case 3:\n _context3.next = 5;\n return Object(_loader__WEBPACK_IMPORTED_MODULE_6__[\"loadApp\"])(Object.assign({\n name: name,\n props: props\n }, appConfig), frameworkConfiguration, lifeCycles);\n\n case 5:\n _context3.t0 = _context3.sent;\n _a = (0, _context3.t0)();\n mount = _a.mount;\n otherMicroAppConfigs = Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__rest\"])(_a, [\"mount\"]);\n return _context3.abrupt(\"return\", Object.assign({\n mount: [function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__awaiter\"])(_this2, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", loader(true));\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n }].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(Object(_utils__WEBPACK_IMPORTED_MODULE_8__[\"toArray\"])(mount)), [function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__awaiter\"])(_this2, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee2() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", loader(false));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }])\n }, otherMicroAppConfigs));\n\n case 10:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n },\n activeWhen: activeRule,\n customProps: props\n });\n });\n}\nvar appConfigPromiseGetterMap = new Map();\nfunction loadMicroApp(app, configuration, lifeCycles) {\n var _this3 = this;\n\n var props = app.props,\n name = app.name;\n\n var getContainerXpath = function getContainerXpath(container) {\n var containerElement = Object(_utils__WEBPACK_IMPORTED_MODULE_8__[\"getContainer\"])(container);\n\n if (containerElement) {\n return Object(_utils__WEBPACK_IMPORTED_MODULE_8__[\"getXPathForElement\"])(containerElement, document);\n }\n\n return undefined;\n };\n\n var wrapParcelConfigForRemount = function wrapParcelConfigForRemount(config) {\n return Object.assign(Object.assign({}, config), {\n // empty bootstrap hook which should not run twice while it calling from cached micro app\n bootstrap: function bootstrap() {\n return Promise.resolve();\n }\n });\n };\n /**\n * using name + container xpath as the micro app instance id,\n * it means if you rendering a micro app to a dom which have been rendered before,\n * the micro app would not load and evaluate its lifecycles again\n */\n\n\n var memorizedLoadingFn = function memorizedLoadingFn() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__awaiter\"])(_this3, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee4() {\n var userConfiguration, $$cacheLifecycleByAppName, container, parcelConfigGetterPromise, xpath, _parcelConfigGetterPromise, parcelConfigObjectGetterPromise, _xpath;\n\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n userConfiguration = configuration !== null && configuration !== void 0 ? configuration : Object.assign(Object.assign({}, frameworkConfiguration), {\n singular: false\n });\n $$cacheLifecycleByAppName = userConfiguration.$$cacheLifecycleByAppName;\n container = 'container' in app ? app.container : undefined;\n\n if (!container) {\n _context4.next = 23;\n break;\n }\n\n if (!$$cacheLifecycleByAppName) {\n _context4.next = 13;\n break;\n }\n\n parcelConfigGetterPromise = appConfigPromiseGetterMap.get(name);\n\n if (!parcelConfigGetterPromise) {\n _context4.next = 13;\n break;\n }\n\n _context4.t0 = wrapParcelConfigForRemount;\n _context4.next = 10;\n return parcelConfigGetterPromise;\n\n case 10:\n _context4.t1 = _context4.sent;\n _context4.t2 = (0, _context4.t1)(container);\n return _context4.abrupt(\"return\", (0, _context4.t0)(_context4.t2));\n\n case 13:\n xpath = getContainerXpath(container);\n\n if (!xpath) {\n _context4.next = 23;\n break;\n }\n\n _parcelConfigGetterPromise = appConfigPromiseGetterMap.get(\"\".concat(name, \"-\").concat(xpath));\n\n if (!_parcelConfigGetterPromise) {\n _context4.next = 23;\n break;\n }\n\n _context4.t3 = wrapParcelConfigForRemount;\n _context4.next = 20;\n return _parcelConfigGetterPromise;\n\n case 20:\n _context4.t4 = _context4.sent;\n _context4.t5 = (0, _context4.t4)(container);\n return _context4.abrupt(\"return\", (0, _context4.t3)(_context4.t5));\n\n case 23:\n parcelConfigObjectGetterPromise = Object(_loader__WEBPACK_IMPORTED_MODULE_6__[\"loadApp\"])(app, userConfiguration, lifeCycles);\n\n if (container) {\n if ($$cacheLifecycleByAppName) {\n appConfigPromiseGetterMap.set(name, parcelConfigObjectGetterPromise);\n } else {\n _xpath = getContainerXpath(container);\n if (_xpath) appConfigPromiseGetterMap.set(\"\".concat(name, \"-\").concat(_xpath), parcelConfigObjectGetterPromise);\n }\n }\n\n _context4.next = 27;\n return parcelConfigObjectGetterPromise;\n\n case 27:\n _context4.t6 = _context4.sent;\n return _context4.abrupt(\"return\", (0, _context4.t6)(container));\n\n case 29:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n };\n\n return Object(single_spa__WEBPACK_IMPORTED_MODULE_5__[\"mountRootParcel\"])(memorizedLoadingFn, Object.assign({\n domElement: document.createElement('div')\n }, props));\n}\nfunction start() {\n var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n frameworkConfiguration = Object.assign({\n prefetch: true,\n singular: true,\n sandbox: true\n }, opts);\n\n var _frameworkConfigurati = frameworkConfiguration,\n prefetch = _frameworkConfigurati.prefetch,\n sandbox = _frameworkConfigurati.sandbox,\n singular = _frameworkConfigurati.singular,\n urlRerouteOnly = _frameworkConfigurati.urlRerouteOnly,\n importEntryOpts = Object(tslib__WEBPACK_IMPORTED_MODULE_4__[\"__rest\"])(frameworkConfiguration, [\"prefetch\", \"sandbox\", \"singular\", \"urlRerouteOnly\"]);\n\n if (prefetch) {\n Object(_prefetch__WEBPACK_IMPORTED_MODULE_7__[\"doPrefetchStrategy\"])(microApps, prefetch, importEntryOpts);\n }\n\n if (sandbox) {\n if (!window.Proxy) {\n console.warn('[qiankun] Miss window.Proxy, proxySandbox will degenerate into snapshotSandbox');\n frameworkConfiguration.sandbox = Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(sandbox) === 'object' ? Object.assign(Object.assign({}, sandbox), {\n loose: true\n }) : {\n loose: true\n };\n\n if (!singular) {\n console.warn('[qiankun] Setting singular as false may cause unexpected behavior while your browser not support window.Proxy');\n }\n }\n }\n\n Object(single_spa__WEBPACK_IMPORTED_MODULE_5__[\"start\"])({\n urlRerouteOnly: urlRerouteOnly\n });\n frameworkStartedDefer.resolve();\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9hcGlzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvYXBpcy5qcz8zNGFjIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfdHlwZW9mIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS90eXBlb2ZcIjtcbmltcG9ydCBfcmVnZW5lcmF0b3JSdW50aW1lIGZyb20gXCJAYmFiZWwvcnVudGltZS9yZWdlbmVyYXRvclwiO1xuaW1wb3J0IF9ub29wIGZyb20gXCJsb2Rhc2gvbm9vcFwiO1xuaW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXlcIjtcbmltcG9ydCB7IF9fYXdhaXRlciwgX19yZXN0IH0gZnJvbSBcInRzbGliXCI7XG5pbXBvcnQgeyBtb3VudFJvb3RQYXJjZWwsIHJlZ2lzdGVyQXBwbGljYXRpb24sIHN0YXJ0IGFzIHN0YXJ0U2luZ2xlU3BhIH0gZnJvbSAnc2luZ2xlLXNwYSc7XG5pbXBvcnQgeyBsb2FkQXBwIH0gZnJvbSAnLi9sb2FkZXInO1xuaW1wb3J0IHsgZG9QcmVmZXRjaFN0cmF0ZWd5IH0gZnJvbSAnLi9wcmVmZXRjaCc7XG5pbXBvcnQgeyBEZWZlcnJlZCwgZ2V0Q29udGFpbmVyLCBnZXRYUGF0aEZvckVsZW1lbnQsIHRvQXJyYXkgfSBmcm9tICcuL3V0aWxzJztcbnZhciBtaWNyb0FwcHMgPSBbXTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGltcG9ydC9uby1tdXRhYmxlLWV4cG9ydHNcblxuZXhwb3J0IHZhciBmcmFtZXdvcmtDb25maWd1cmF0aW9uID0ge307XG52YXIgZnJhbWV3b3JrU3RhcnRlZERlZmVyID0gbmV3IERlZmVycmVkKCk7XG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJNaWNyb0FwcHMoYXBwcywgbGlmZUN5Y2xlcykge1xuICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gIC8vIEVhY2ggYXBwIG9ubHkgbmVlZHMgdG8gYmUgcmVnaXN0ZXJlZCBvbmNlXG4gIHZhciB1bnJlZ2lzdGVyZWRBcHBzID0gYXBwcy5maWx0ZXIoZnVuY3Rpb24gKGFwcCkge1xuICAgIHJldHVybiAhbWljcm9BcHBzLnNvbWUoZnVuY3Rpb24gKHJlZ2lzdGVyZWRBcHApIHtcbiAgICAgIHJldHVybiByZWdpc3RlcmVkQXBwLm5hbWUgPT09IGFwcC5uYW1lO1xuICAgIH0pO1xuICB9KTtcbiAgbWljcm9BcHBzID0gW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheShtaWNyb0FwcHMpLCBfdG9Db25zdW1hYmxlQXJyYXkodW5yZWdpc3RlcmVkQXBwcykpO1xuICB1bnJlZ2lzdGVyZWRBcHBzLmZvckVhY2goZnVuY3Rpb24gKGFwcCkge1xuICAgIHZhciBuYW1lID0gYXBwLm5hbWUsXG4gICAgICAgIGFjdGl2ZVJ1bGUgPSBhcHAuYWN0aXZlUnVsZSxcbiAgICAgICAgX2FwcCRsb2FkZXIgPSBhcHAubG9hZGVyLFxuICAgICAgICBsb2FkZXIgPSBfYXBwJGxvYWRlciA9PT0gdm9pZCAwID8gX25vb3AgOiBfYXBwJGxvYWRlcixcbiAgICAgICAgcHJvcHMgPSBhcHAucHJvcHMsXG4gICAgICAgIGFwcENvbmZpZyA9IF9fcmVzdChhcHAsIFtcIm5hbWVcIiwgXCJhY3RpdmVSdWxlXCIsIFwibG9hZGVyXCIsIFwicHJvcHNcIl0pO1xuXG4gICAgcmVnaXN0ZXJBcHBsaWNhdGlvbih7XG4gICAgICBuYW1lOiBuYW1lLFxuICAgICAgYXBwOiBmdW5jdGlvbiBhcHAoKSB7XG4gICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKCkge1xuICAgICAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICAgICAgdmFyIF9hLCBtb3VudCwgb3RoZXJNaWNyb0FwcENvbmZpZ3M7XG5cbiAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUzJChfY29udGV4dDMpIHtcbiAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkge1xuICAgICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAgIGxvYWRlcih0cnVlKTtcbiAgICAgICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gMztcbiAgICAgICAgICAgICAgICAgIHJldHVybiBmcmFtZXdvcmtTdGFydGVkRGVmZXIucHJvbWlzZTtcblxuICAgICAgICAgICAgICAgIGNhc2UgMzpcbiAgICAgICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gNTtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBsb2FkQXBwKE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgICAgICAgICBwcm9wczogcHJvcHNcbiAgICAgICAgICAgICAgICAgIH0sIGFwcENvbmZpZyksIGZyYW1ld29ya0NvbmZpZ3VyYXRpb24sIGxpZmVDeWNsZXMpO1xuXG4gICAgICAgICAgICAgICAgY2FzZSA1OlxuICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLnQwID0gX2NvbnRleHQzLnNlbnQ7XG4gICAgICAgICAgICAgICAgICBfYSA9ICgwLCBfY29udGV4dDMudDApKCk7XG4gICAgICAgICAgICAgICAgICBtb3VudCA9IF9hLm1vdW50O1xuICAgICAgICAgICAgICAgICAgb3RoZXJNaWNyb0FwcENvbmZpZ3MgPSBfX3Jlc3QoX2EsIFtcIm1vdW50XCJdKTtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuYWJydXB0KFwicmV0dXJuXCIsIE9iamVjdC5hc3NpZ24oe1xuICAgICAgICAgICAgICAgICAgICBtb3VudDogW2Z1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKF90aGlzMiwgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5hYnJ1cHQoXCJyZXR1cm5cIiwgbG9hZGVyKHRydWUpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZSk7XG4gICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB9XS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KHRvQXJyYXkobW91bnQpKSwgW2Z1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKF90aGlzMiwgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUyJChfY29udGV4dDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5hYnJ1cHQoXCJyZXR1cm5cIiwgbG9hZGVyKGZhbHNlKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlMik7XG4gICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB9XSlcbiAgICAgICAgICAgICAgICAgIH0sIG90aGVyTWljcm9BcHBDb25maWdzKSk7XG5cbiAgICAgICAgICAgICAgICBjYXNlIDEwOlxuICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuc3RvcCgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSwgX2NhbGxlZTMpO1xuICAgICAgICB9KSk7XG4gICAgICB9LFxuICAgICAgYWN0aXZlV2hlbjogYWN0aXZlUnVsZSxcbiAgICAgIGN1c3RvbVByb3BzOiBwcm9wc1xuICAgIH0pO1xuICB9KTtcbn1cbnZhciBhcHBDb25maWdQcm9taXNlR2V0dGVyTWFwID0gbmV3IE1hcCgpO1xuZXhwb3J0IGZ1bmN0aW9uIGxvYWRNaWNyb0FwcChhcHAsIGNvbmZpZ3VyYXRpb24sIGxpZmVDeWNsZXMpIHtcbiAgdmFyIF90aGlzMyA9IHRoaXM7XG5cbiAgdmFyIHByb3BzID0gYXBwLnByb3BzLFxuICAgICAgbmFtZSA9IGFwcC5uYW1lO1xuXG4gIHZhciBnZXRDb250YWluZXJYcGF0aCA9IGZ1bmN0aW9uIGdldENvbnRhaW5lclhwYXRoKGNvbnRhaW5lcikge1xuICAgIHZhciBjb250YWluZXJFbGVtZW50ID0gZ2V0Q29udGFpbmVyKGNvbnRhaW5lcik7XG5cbiAgICBpZiAoY29udGFpbmVyRWxlbWVudCkge1xuICAgICAgcmV0dXJuIGdldFhQYXRoRm9yRWxlbWVudChjb250YWluZXJFbGVtZW50LCBkb2N1bWVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfTtcblxuICB2YXIgd3JhcFBhcmNlbENvbmZpZ0ZvclJlbW91bnQgPSBmdW5jdGlvbiB3cmFwUGFyY2VsQ29uZmlnRm9yUmVtb3VudChjb25maWcpIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBjb25maWcpLCB7XG4gICAgICAvLyBlbXB0eSBib290c3RyYXAgaG9vayB3aGljaCBzaG91bGQgbm90IHJ1biB0d2ljZSB3aGlsZSBpdCBjYWxsaW5nIGZyb20gY2FjaGVkIG1pY3JvIGFwcFxuICAgICAgYm9vdHN0cmFwOiBmdW5jdGlvbiBib290c3RyYXAoKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcbiAgLyoqXG4gICAqIHVzaW5nIG5hbWUgKyBjb250YWluZXIgeHBhdGggYXMgdGhlIG1pY3JvIGFwcCBpbnN0YW5jZSBpZCxcbiAgICogaXQgbWVhbnMgaWYgeW91IHJlbmRlcmluZyBhIG1pY3JvIGFwcCB0byBhIGRvbSB3aGljaCBoYXZlIGJlZW4gcmVuZGVyZWQgYmVmb3JlLFxuICAgKiB0aGUgbWljcm8gYXBwIHdvdWxkIG5vdCBsb2FkIGFuZCBldmFsdWF0ZSBpdHMgbGlmZWN5Y2xlcyBhZ2FpblxuICAgKi9cblxuXG4gIHZhciBtZW1vcml6ZWRMb2FkaW5nRm4gPSBmdW5jdGlvbiBtZW1vcml6ZWRMb2FkaW5nRm4oKSB7XG4gICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpczMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU0KCkge1xuICAgICAgdmFyIHVzZXJDb25maWd1cmF0aW9uLCAkJGNhY2hlTGlmZWN5Y2xlQnlBcHBOYW1lLCBjb250YWluZXIsIHBhcmNlbENvbmZpZ0dldHRlclByb21pc2UsIHhwYXRoLCBfcGFyY2VsQ29uZmlnR2V0dGVyUHJvbWlzZSwgcGFyY2VsQ29uZmlnT2JqZWN0R2V0dGVyUHJvbWlzZSwgX3hwYXRoO1xuXG4gICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU0JChfY29udGV4dDQpIHtcbiAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0NC5wcmV2ID0gX2NvbnRleHQ0Lm5leHQpIHtcbiAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgdXNlckNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uICE9PSBudWxsICYmIGNvbmZpZ3VyYXRpb24gIT09IHZvaWQgMCA/IGNvbmZpZ3VyYXRpb24gOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIGZyYW1ld29ya0NvbmZpZ3VyYXRpb24pLCB7XG4gICAgICAgICAgICAgICAgc2luZ3VsYXI6IGZhbHNlXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAkJGNhY2hlTGlmZWN5Y2xlQnlBcHBOYW1lID0gdXNlckNvbmZpZ3VyYXRpb24uJCRjYWNoZUxpZmVjeWNsZUJ5QXBwTmFtZTtcbiAgICAgICAgICAgICAgY29udGFpbmVyID0gJ2NvbnRhaW5lcicgaW4gYXBwID8gYXBwLmNvbnRhaW5lciA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgICBpZiAoIWNvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMjM7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpZiAoISQkY2FjaGVMaWZlY3ljbGVCeUFwcE5hbWUpIHtcbiAgICAgICAgICAgICAgICBfY29udGV4dDQubmV4dCA9IDEzO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcGFyY2VsQ29uZmlnR2V0dGVyUHJvbWlzZSA9IGFwcENvbmZpZ1Byb21pc2VHZXR0ZXJNYXAuZ2V0KG5hbWUpO1xuXG4gICAgICAgICAgICAgIGlmICghcGFyY2VsQ29uZmlnR2V0dGVyUHJvbWlzZSkge1xuICAgICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMTM7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBfY29udGV4dDQudDAgPSB3cmFwUGFyY2VsQ29uZmlnRm9yUmVtb3VudDtcbiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm5leHQgPSAxMDtcbiAgICAgICAgICAgICAgcmV0dXJuIHBhcmNlbENvbmZpZ0dldHRlclByb21pc2U7XG5cbiAgICAgICAgICAgIGNhc2UgMTA6XG4gICAgICAgICAgICAgIF9jb250ZXh0NC50MSA9IF9jb250ZXh0NC5zZW50O1xuICAgICAgICAgICAgICBfY29udGV4dDQudDIgPSAoMCwgX2NvbnRleHQ0LnQxKShjb250YWluZXIpO1xuICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ0LmFicnVwdChcInJldHVyblwiLCAoMCwgX2NvbnRleHQ0LnQwKShfY29udGV4dDQudDIpKTtcblxuICAgICAgICAgICAgY2FzZSAxMzpcbiAgICAgICAgICAgICAgeHBhdGggPSBnZXRDb250YWluZXJYcGF0aChjb250YWluZXIpO1xuXG4gICAgICAgICAgICAgIGlmICgheHBhdGgpIHtcbiAgICAgICAgICAgICAgICBfY29udGV4dDQubmV4dCA9IDIzO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgX3BhcmNlbENvbmZpZ0dldHRlclByb21pc2UgPSBhcHBDb25maWdQcm9taXNlR2V0dGVyTWFwLmdldChcIlwiLmNvbmNhdChuYW1lLCBcIi1cIikuY29uY2F0KHhwYXRoKSk7XG5cbiAgICAgICAgICAgICAgaWYgKCFfcGFyY2VsQ29uZmlnR2V0dGVyUHJvbWlzZSkge1xuICAgICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMjM7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBfY29udGV4dDQudDMgPSB3cmFwUGFyY2VsQ29uZmlnRm9yUmVtb3VudDtcbiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm5leHQgPSAyMDtcbiAgICAgICAgICAgICAgcmV0dXJuIF9wYXJjZWxDb25maWdHZXR0ZXJQcm9taXNlO1xuXG4gICAgICAgICAgICBjYXNlIDIwOlxuICAgICAgICAgICAgICBfY29udGV4dDQudDQgPSBfY29udGV4dDQuc2VudDtcbiAgICAgICAgICAgICAgX2NvbnRleHQ0LnQ1ID0gKDAsIF9jb250ZXh0NC50NCkoY29udGFpbmVyKTtcbiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0NC5hYnJ1cHQoXCJyZXR1cm5cIiwgKDAsIF9jb250ZXh0NC50MykoX2NvbnRleHQ0LnQ1KSk7XG5cbiAgICAgICAgICAgIGNhc2UgMjM6XG4gICAgICAgICAgICAgIHBhcmNlbENvbmZpZ09iamVjdEdldHRlclByb21pc2UgPSBsb2FkQXBwKGFwcCwgdXNlckNvbmZpZ3VyYXRpb24sIGxpZmVDeWNsZXMpO1xuXG4gICAgICAgICAgICAgIGlmIChjb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICBpZiAoJCRjYWNoZUxpZmVjeWNsZUJ5QXBwTmFtZSkge1xuICAgICAgICAgICAgICAgICAgYXBwQ29uZmlnUHJvbWlzZUdldHRlck1hcC5zZXQobmFtZSwgcGFyY2VsQ29uZmlnT2JqZWN0R2V0dGVyUHJvbWlzZSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIF94cGF0aCA9IGdldENvbnRhaW5lclhwYXRoKGNvbnRhaW5lcik7XG4gICAgICAgICAgICAgICAgICBpZiAoX3hwYXRoKSBhcHBDb25maWdQcm9taXNlR2V0dGVyTWFwLnNldChcIlwiLmNvbmNhdChuYW1lLCBcIi1cIikuY29uY2F0KF94cGF0aCksIHBhcmNlbENvbmZpZ09iamVjdEdldHRlclByb21pc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMjc7XG4gICAgICAgICAgICAgIHJldHVybiBwYXJjZWxDb25maWdPYmplY3RHZXR0ZXJQcm9taXNlO1xuXG4gICAgICAgICAgICBjYXNlIDI3OlxuICAgICAgICAgICAgICBfY29udGV4dDQudDYgPSBfY29udGV4dDQuc2VudDtcbiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0NC5hYnJ1cHQoXCJyZXR1cm5cIiwgKDAsIF9jb250ZXh0NC50NikoY29udGFpbmVyKSk7XG5cbiAgICAgICAgICAgIGNhc2UgMjk6XG4gICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuc3RvcCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSwgX2NhbGxlZTQpO1xuICAgIH0pKTtcbiAgfTtcblxuICByZXR1cm4gbW91bnRSb290UGFyY2VsKG1lbW9yaXplZExvYWRpbmdGbiwgT2JqZWN0LmFzc2lnbih7XG4gICAgZG9tRWxlbWVudDogZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JylcbiAgfSwgcHJvcHMpKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBzdGFydCgpIHtcbiAgdmFyIG9wdHMgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuICBmcmFtZXdvcmtDb25maWd1cmF0aW9uID0gT2JqZWN0LmFzc2lnbih7XG4gICAgcHJlZmV0Y2g6IHRydWUsXG4gICAgc2luZ3VsYXI6IHRydWUsXG4gICAgc2FuZGJveDogdHJ1ZVxuICB9LCBvcHRzKTtcblxuICB2YXIgX2ZyYW1ld29ya0NvbmZpZ3VyYXRpID0gZnJhbWV3b3JrQ29uZmlndXJhdGlvbixcbiAgICAgIHByZWZldGNoID0gX2ZyYW1ld29ya0NvbmZpZ3VyYXRpLnByZWZldGNoLFxuICAgICAgc2FuZGJveCA9IF9mcmFtZXdvcmtDb25maWd1cmF0aS5zYW5kYm94LFxuICAgICAgc2luZ3VsYXIgPSBfZnJhbWV3b3JrQ29uZmlndXJhdGkuc2luZ3VsYXIsXG4gICAgICB1cmxSZXJvdXRlT25seSA9IF9mcmFtZXdvcmtDb25maWd1cmF0aS51cmxSZXJvdXRlT25seSxcbiAgICAgIGltcG9ydEVudHJ5T3B0cyA9IF9fcmVzdChmcmFtZXdvcmtDb25maWd1cmF0aW9uLCBbXCJwcmVmZXRjaFwiLCBcInNhbmRib3hcIiwgXCJzaW5ndWxhclwiLCBcInVybFJlcm91dGVPbmx5XCJdKTtcblxuICBpZiAocHJlZmV0Y2gpIHtcbiAgICBkb1ByZWZldGNoU3RyYXRlZ3kobWljcm9BcHBzLCBwcmVmZXRjaCwgaW1wb3J0RW50cnlPcHRzKTtcbiAgfVxuXG4gIGlmIChzYW5kYm94KSB7XG4gICAgaWYgKCF3aW5kb3cuUHJveHkpIHtcbiAgICAgIGNvbnNvbGUud2FybignW3FpYW5rdW5dIE1pc3Mgd2luZG93LlByb3h5LCBwcm94eVNhbmRib3ggd2lsbCBkZWdlbmVyYXRlIGludG8gc25hcHNob3RTYW5kYm94Jyk7XG4gICAgICBmcmFtZXdvcmtDb25maWd1cmF0aW9uLnNhbmRib3ggPSBfdHlwZW9mKHNhbmRib3gpID09PSAnb2JqZWN0JyA/IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2FuZGJveCksIHtcbiAgICAgICAgbG9vc2U6IHRydWVcbiAgICAgIH0pIDoge1xuICAgICAgICBsb29zZTogdHJ1ZVxuICAgICAgfTtcblxuICAgICAgaWYgKCFzaW5ndWxhcikge1xuICAgICAgICBjb25zb2xlLndhcm4oJ1txaWFua3VuXSBTZXR0aW5nIHNpbmd1bGFyIGFzIGZhbHNlIG1heSBjYXVzZSB1bmV4cGVjdGVkIGJlaGF2aW9yIHdoaWxlIHlvdXIgYnJvd3NlciBub3Qgc3VwcG9ydCB3aW5kb3cuUHJveHknKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdGFydFNpbmdsZVNwYSh7XG4gICAgdXJsUmVyb3V0ZU9ubHk6IHVybFJlcm91dGVPbmx5XG4gIH0pO1xuICBmcmFtZXdvcmtTdGFydGVkRGVmZXIucmVzb2x2ZSgpO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/apis.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/effects.js": /*!********************************************!*\ !*** ./node_modules/qiankun/es/effects.js ***! \********************************************/ /*! exports provided: setDefaultMountApp, runDefaultMountEffects, runAfterFirstMounted */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setDefaultMountApp\", function() { return setDefaultMountApp; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"runDefaultMountEffects\", function() { return runDefaultMountEffects; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"runAfterFirstMounted\", function() { return runAfterFirstMounted; });\n/* harmony import */ var single_spa__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! single-spa */ \"./node_modules/single-spa/lib/esm/single-spa.min.js\");\n/**\n * @author Kuitos\n * @since 2019-02-19\n */\n\nvar firstMountLogLabel = '[qiankun] first app mounted';\n\nif (false) {}\n\nfunction setDefaultMountApp(defaultAppLink) {\n // can not use addEventListener once option for ie support\n window.addEventListener('single-spa:no-app-change', function listener() {\n var mountedApps = Object(single_spa__WEBPACK_IMPORTED_MODULE_0__[\"getMountedApps\"])();\n\n if (!mountedApps.length) {\n Object(single_spa__WEBPACK_IMPORTED_MODULE_0__[\"navigateToUrl\"])(defaultAppLink);\n }\n\n window.removeEventListener('single-spa:no-app-change', listener);\n });\n}\nfunction runDefaultMountEffects(defaultAppLink) {\n console.warn('[qiankun] runDefaultMountEffects will be removed in next version, please use setDefaultMountApp instead');\n setDefaultMountApp(defaultAppLink);\n}\nfunction runAfterFirstMounted(effect) {\n // can not use addEventListener once option for ie support\n window.addEventListener('single-spa:first-mount', function listener() {\n if (false) {}\n\n effect();\n window.removeEventListener('single-spa:first-mount', listener);\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9lZmZlY3RzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvZWZmZWN0cy5qcz8wN2VjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGF1dGhvciBLdWl0b3NcbiAqIEBzaW5jZSAyMDE5LTAyLTE5XG4gKi9cbmltcG9ydCB7IGdldE1vdW50ZWRBcHBzLCBuYXZpZ2F0ZVRvVXJsIH0gZnJvbSAnc2luZ2xlLXNwYSc7XG52YXIgZmlyc3RNb3VudExvZ0xhYmVsID0gJ1txaWFua3VuXSBmaXJzdCBhcHAgbW91bnRlZCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICBjb25zb2xlLnRpbWUoZmlyc3RNb3VudExvZ0xhYmVsKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNldERlZmF1bHRNb3VudEFwcChkZWZhdWx0QXBwTGluaykge1xuICAvLyBjYW4gbm90IHVzZSBhZGRFdmVudExpc3RlbmVyIG9uY2Ugb3B0aW9uIGZvciBpZSBzdXBwb3J0XG4gIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzaW5nbGUtc3BhOm5vLWFwcC1jaGFuZ2UnLCBmdW5jdGlvbiBsaXN0ZW5lcigpIHtcbiAgICB2YXIgbW91bnRlZEFwcHMgPSBnZXRNb3VudGVkQXBwcygpO1xuXG4gICAgaWYgKCFtb3VudGVkQXBwcy5sZW5ndGgpIHtcbiAgICAgIG5hdmlnYXRlVG9VcmwoZGVmYXVsdEFwcExpbmspO1xuICAgIH1cblxuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzaW5nbGUtc3BhOm5vLWFwcC1jaGFuZ2UnLCBsaXN0ZW5lcik7XG4gIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJ1bkRlZmF1bHRNb3VudEVmZmVjdHMoZGVmYXVsdEFwcExpbmspIHtcbiAgY29uc29sZS53YXJuKCdbcWlhbmt1bl0gcnVuRGVmYXVsdE1vdW50RWZmZWN0cyB3aWxsIGJlIHJlbW92ZWQgaW4gbmV4dCB2ZXJzaW9uLCBwbGVhc2UgdXNlIHNldERlZmF1bHRNb3VudEFwcCBpbnN0ZWFkJyk7XG4gIHNldERlZmF1bHRNb3VudEFwcChkZWZhdWx0QXBwTGluayk7XG59XG5leHBvcnQgZnVuY3Rpb24gcnVuQWZ0ZXJGaXJzdE1vdW50ZWQoZWZmZWN0KSB7XG4gIC8vIGNhbiBub3QgdXNlIGFkZEV2ZW50TGlzdGVuZXIgb25jZSBvcHRpb24gZm9yIGllIHN1cHBvcnRcbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3NpbmdsZS1zcGE6Zmlyc3QtbW91bnQnLCBmdW5jdGlvbiBsaXN0ZW5lcigpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgIGNvbnNvbGUudGltZUVuZChmaXJzdE1vdW50TG9nTGFiZWwpO1xuICAgIH1cblxuICAgIGVmZmVjdCgpO1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzaW5nbGUtc3BhOmZpcnN0LW1vdW50JywgbGlzdGVuZXIpO1xuICB9KTtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/effects.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/errorHandler.js": /*!*************************************************!*\ !*** ./node_modules/qiankun/es/errorHandler.js ***! \*************************************************/ /*! exports provided: addErrorHandler, removeErrorHandler, addGlobalUncaughtErrorHandler, removeGlobalUncaughtErrorHandler */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"addGlobalUncaughtErrorHandler\", function() { return addGlobalUncaughtErrorHandler; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"removeGlobalUncaughtErrorHandler\", function() { return removeGlobalUncaughtErrorHandler; });\n/* harmony import */ var single_spa__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! single-spa */ \"./node_modules/single-spa/lib/esm/single-spa.min.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addErrorHandler\", function() { return single_spa__WEBPACK_IMPORTED_MODULE_0__[\"addErrorHandler\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"removeErrorHandler\", function() { return single_spa__WEBPACK_IMPORTED_MODULE_0__[\"removeErrorHandler\"]; });\n\n/**\n * @author Kuitos\n * @since 2020-02-21\n */\n\nfunction addGlobalUncaughtErrorHandler(errorHandler) {\n window.addEventListener('error', errorHandler);\n window.addEventListener('unhandledrejection', errorHandler);\n}\nfunction removeGlobalUncaughtErrorHandler(errorHandler) {\n window.removeEventListener('error', errorHandler);\n window.removeEventListener('unhandledrejection', errorHandler);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9lcnJvckhhbmRsZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9lcnJvckhhbmRsZXIuanM/NTQ4YSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBhdXRob3IgS3VpdG9zXG4gKiBAc2luY2UgMjAyMC0wMi0yMVxuICovXG5leHBvcnQgeyBhZGRFcnJvckhhbmRsZXIsIHJlbW92ZUVycm9ySGFuZGxlciB9IGZyb20gJ3NpbmdsZS1zcGEnO1xuZXhwb3J0IGZ1bmN0aW9uIGFkZEdsb2JhbFVuY2F1Z2h0RXJyb3JIYW5kbGVyKGVycm9ySGFuZGxlcikge1xuICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignZXJyb3InLCBlcnJvckhhbmRsZXIpO1xuICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigndW5oYW5kbGVkcmVqZWN0aW9uJywgZXJyb3JIYW5kbGVyKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVHbG9iYWxVbmNhdWdodEVycm9ySGFuZGxlcihlcnJvckhhbmRsZXIpIHtcbiAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2Vycm9yJywgZXJyb3JIYW5kbGVyKTtcbiAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3VuaGFuZGxlZHJlamVjdGlvbicsIGVycm9ySGFuZGxlcik7XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/errorHandler.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/globalState.js": /*!************************************************!*\ !*** ./node_modules/qiankun/es/globalState.js ***! \************************************************/ /*! exports provided: initGlobalState, getMicroAppStateActions */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"initGlobalState\", function() { return initGlobalState; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getMicroAppStateActions\", function() { return getMicroAppStateActions; });\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/cloneDeep */ \"./node_modules/lodash/cloneDeep.js\");\n/* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1__);\n\n\nvar globalState = {};\nvar deps = {}; // 触发全局监听\n\nfunction emitGlobal(state, prevState) {\n Object.keys(deps).forEach(function (id) {\n if (deps[id] instanceof Function) {\n deps[id](lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(state), lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(prevState));\n }\n });\n}\n\nfunction initGlobalState() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (state === globalState) {\n console.warn('[qiankun] state has not changed!');\n } else {\n var prevGlobalState = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(globalState);\n\n globalState = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(state);\n emitGlobal(globalState, prevGlobalState);\n }\n\n return getMicroAppStateActions(\"global-\".concat(+new Date()), true);\n}\nfunction getMicroAppStateActions(id, isMaster) {\n return {\n /**\n * onGlobalStateChange 全局依赖监听\n *\n * 收集 setState 时所需要触发的依赖\n *\n * 限制条件:每个子应用只有一个激活状态的全局监听,新监听覆盖旧监听,若只是监听部分属性,请使用 onGlobalStateChange\n *\n * 这么设计是为了减少全局监听滥用导致的内存爆炸\n *\n * 依赖数据结构为:\n * {\n * {id}: callback\n * }\n *\n * @param callback\n * @param fireImmediately\n */\n onGlobalStateChange: function onGlobalStateChange(callback, fireImmediately) {\n if (!(callback instanceof Function)) {\n console.error('[qiankun] callback must be function!');\n return;\n }\n\n if (deps[id]) {\n console.warn(\"[qiankun] '\".concat(id, \"' global listener already exists before this, new listener will overwrite it.\"));\n }\n\n deps[id] = callback;\n\n var cloneState = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(globalState);\n\n if (fireImmediately) {\n callback(cloneState, cloneState);\n }\n },\n\n /**\n * setGlobalState 更新 store 数据\n *\n * 1. 对输入 state 的第一层属性做校验,只有初始化时声明过的第一层(bucket)属性才会被更改\n * 2. 修改 store 并触发全局监听\n *\n * @param state\n */\n setGlobalState: function setGlobalState() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (state === globalState) {\n console.warn('[qiankun] state has not changed!');\n return false;\n }\n\n var changeKeys = [];\n\n var prevGlobalState = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(globalState);\n\n globalState = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_1___default()(Object.keys(state).reduce(function (_globalState, changeKey) {\n if (isMaster || _globalState.hasOwnProperty(changeKey)) {\n changeKeys.push(changeKey);\n return Object.assign(_globalState, Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, changeKey, state[changeKey]));\n }\n\n console.warn(\"[qiankun] '\".concat(changeKey, \"' not declared when init state\\uFF01\"));\n return _globalState;\n }, globalState));\n\n if (changeKeys.length === 0) {\n console.warn('[qiankun] state has not changed!');\n return false;\n }\n\n emitGlobal(globalState, prevGlobalState);\n return true;\n },\n // 注销该应用下的依赖\n offGlobalStateChange: function offGlobalStateChange() {\n delete deps[id];\n return true;\n }\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9nbG9iYWxTdGF0ZS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL2dsb2JhbFN0YXRlLmpzP2UyMjMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9kZWZpbmVQcm9wZXJ0eSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZGVmaW5lUHJvcGVydHlcIjtcbmltcG9ydCBfY2xvbmVEZWVwIGZyb20gXCJsb2Rhc2gvY2xvbmVEZWVwXCI7XG52YXIgZ2xvYmFsU3RhdGUgPSB7fTtcbnZhciBkZXBzID0ge307IC8vIOinpuWPkeWFqOWxgOebkeWQrFxuXG5mdW5jdGlvbiBlbWl0R2xvYmFsKHN0YXRlLCBwcmV2U3RhdGUpIHtcbiAgT2JqZWN0LmtleXMoZGVwcykuZm9yRWFjaChmdW5jdGlvbiAoaWQpIHtcbiAgICBpZiAoZGVwc1tpZF0gaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgZGVwc1tpZF0oX2Nsb25lRGVlcChzdGF0ZSksIF9jbG9uZURlZXAocHJldlN0YXRlKSk7XG4gICAgfVxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRHbG9iYWxTdGF0ZSgpIHtcbiAgdmFyIHN0YXRlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiB7fTtcblxuICBpZiAoc3RhdGUgPT09IGdsb2JhbFN0YXRlKSB7XG4gICAgY29uc29sZS53YXJuKCdbcWlhbmt1bl0gc3RhdGUgaGFzIG5vdCBjaGFuZ2Vk77yBJyk7XG4gIH0gZWxzZSB7XG4gICAgdmFyIHByZXZHbG9iYWxTdGF0ZSA9IF9jbG9uZURlZXAoZ2xvYmFsU3RhdGUpO1xuXG4gICAgZ2xvYmFsU3RhdGUgPSBfY2xvbmVEZWVwKHN0YXRlKTtcbiAgICBlbWl0R2xvYmFsKGdsb2JhbFN0YXRlLCBwcmV2R2xvYmFsU3RhdGUpO1xuICB9XG5cbiAgcmV0dXJuIGdldE1pY3JvQXBwU3RhdGVBY3Rpb25zKFwiZ2xvYmFsLVwiLmNvbmNhdCgrbmV3IERhdGUoKSksIHRydWUpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldE1pY3JvQXBwU3RhdGVBY3Rpb25zKGlkLCBpc01hc3Rlcikge1xuICByZXR1cm4ge1xuICAgIC8qKlxuICAgICAqIG9uR2xvYmFsU3RhdGVDaGFuZ2Ug5YWo5bGA5L6d6LWW55uR5ZCsXG4gICAgICpcbiAgICAgKiDmlLbpm4Ygc2V0U3RhdGUg5pe25omA6ZyA6KaB6Kem5Y+R55qE5L6d6LWWXG4gICAgICpcbiAgICAgKiDpmZDliLbmnaHku7bvvJrmr4/kuKrlrZDlupTnlKjlj6rmnInkuIDkuKrmv4DmtLvnirbmgIHnmoTlhajlsYDnm5HlkKzvvIzmlrDnm5HlkKzopobnm5bml6fnm5HlkKzvvIzoi6Xlj6rmmK/nm5HlkKzpg6jliIblsZ7mgKfvvIzor7fkvb/nlKggb25HbG9iYWxTdGF0ZUNoYW5nZVxuICAgICAqXG4gICAgICog6L+Z5LmI6K6+6K6h5piv5Li65LqG5YeP5bCR5YWo5bGA55uR5ZCs5rul55So5a+86Ie055qE5YaF5a2Y54iG54K4XG4gICAgICpcbiAgICAgKiDkvp3otZbmlbDmja7nu5PmnoTkuLrvvJpcbiAgICAgKiB7XG4gICAgICogICB7aWR9OiBjYWxsYmFja1xuICAgICAqIH1cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjYWxsYmFja1xuICAgICAqIEBwYXJhbSBmaXJlSW1tZWRpYXRlbHlcbiAgICAgKi9cbiAgICBvbkdsb2JhbFN0YXRlQ2hhbmdlOiBmdW5jdGlvbiBvbkdsb2JhbFN0YXRlQ2hhbmdlKGNhbGxiYWNrLCBmaXJlSW1tZWRpYXRlbHkpIHtcbiAgICAgIGlmICghKGNhbGxiYWNrIGluc3RhbmNlb2YgRnVuY3Rpb24pKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1txaWFua3VuXSBjYWxsYmFjayBtdXN0IGJlIGZ1bmN0aW9uIScpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChkZXBzW2lkXSkge1xuICAgICAgICBjb25zb2xlLndhcm4oXCJbcWlhbmt1bl0gJ1wiLmNvbmNhdChpZCwgXCInIGdsb2JhbCBsaXN0ZW5lciBhbHJlYWR5IGV4aXN0cyBiZWZvcmUgdGhpcywgbmV3IGxpc3RlbmVyIHdpbGwgb3ZlcndyaXRlIGl0LlwiKSk7XG4gICAgICB9XG5cbiAgICAgIGRlcHNbaWRdID0gY2FsbGJhY2s7XG5cbiAgICAgIHZhciBjbG9uZVN0YXRlID0gX2Nsb25lRGVlcChnbG9iYWxTdGF0ZSk7XG5cbiAgICAgIGlmIChmaXJlSW1tZWRpYXRlbHkpIHtcbiAgICAgICAgY2FsbGJhY2soY2xvbmVTdGF0ZSwgY2xvbmVTdGF0ZSk7XG4gICAgICB9XG4gICAgfSxcblxuICAgIC8qKlxuICAgICAqIHNldEdsb2JhbFN0YXRlIOabtOaWsCBzdG9yZSDmlbDmja5cbiAgICAgKlxuICAgICAqIDEuIOWvuei+k+WFpSBzdGF0ZSDnmoTnrKzkuIDlsYLlsZ7mgKflgZrmoKHpqozvvIzlj6rmnInliJ3lp4vljJbml7blo7DmmI7ov4fnmoTnrKzkuIDlsYLvvIhidWNrZXTvvInlsZ7mgKfmiY3kvJrooqvmm7TmlLlcbiAgICAgKiAyLiDkv67mlLkgc3RvcmUg5bm26Kem5Y+R5YWo5bGA55uR5ZCsXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3RhdGVcbiAgICAgKi9cbiAgICBzZXRHbG9iYWxTdGF0ZTogZnVuY3Rpb24gc2V0R2xvYmFsU3RhdGUoKSB7XG4gICAgICB2YXIgc3RhdGUgPSBhcmd1bWVudHMubGVuZ3RoID4gMCAmJiBhcmd1bWVudHNbMF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1swXSA6IHt9O1xuXG4gICAgICBpZiAoc3RhdGUgPT09IGdsb2JhbFN0YXRlKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignW3FpYW5rdW5dIHN0YXRlIGhhcyBub3QgY2hhbmdlZO+8gScpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIHZhciBjaGFuZ2VLZXlzID0gW107XG5cbiAgICAgIHZhciBwcmV2R2xvYmFsU3RhdGUgPSBfY2xvbmVEZWVwKGdsb2JhbFN0YXRlKTtcblxuICAgICAgZ2xvYmFsU3RhdGUgPSBfY2xvbmVEZWVwKE9iamVjdC5rZXlzKHN0YXRlKS5yZWR1Y2UoZnVuY3Rpb24gKF9nbG9iYWxTdGF0ZSwgY2hhbmdlS2V5KSB7XG4gICAgICAgIGlmIChpc01hc3RlciB8fCBfZ2xvYmFsU3RhdGUuaGFzT3duUHJvcGVydHkoY2hhbmdlS2V5KSkge1xuICAgICAgICAgIGNoYW5nZUtleXMucHVzaChjaGFuZ2VLZXkpO1xuICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKF9nbG9iYWxTdGF0ZSwgX2RlZmluZVByb3BlcnR5KHt9LCBjaGFuZ2VLZXksIHN0YXRlW2NoYW5nZUtleV0pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnNvbGUud2FybihcIltxaWFua3VuXSAnXCIuY29uY2F0KGNoYW5nZUtleSwgXCInIG5vdCBkZWNsYXJlZCB3aGVuIGluaXQgc3RhdGVcXHVGRjAxXCIpKTtcbiAgICAgICAgcmV0dXJuIF9nbG9iYWxTdGF0ZTtcbiAgICAgIH0sIGdsb2JhbFN0YXRlKSk7XG5cbiAgICAgIGlmIChjaGFuZ2VLZXlzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICBjb25zb2xlLndhcm4oJ1txaWFua3VuXSBzdGF0ZSBoYXMgbm90IGNoYW5nZWTvvIEnKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBlbWl0R2xvYmFsKGdsb2JhbFN0YXRlLCBwcmV2R2xvYmFsU3RhdGUpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcbiAgICAvLyDms6jplIDor6XlupTnlKjkuIvnmoTkvp3otZZcbiAgICBvZmZHbG9iYWxTdGF0ZUNoYW5nZTogZnVuY3Rpb24gb2ZmR2xvYmFsU3RhdGVDaGFuZ2UoKSB7XG4gICAgICBkZWxldGUgZGVwc1tpZF07XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/globalState.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/index.js": /*!******************************************!*\ !*** ./node_modules/qiankun/es/index.js ***! \******************************************/ /*! exports provided: loadMicroApp, registerMicroApps, start, initGlobalState, addErrorHandler, removeErrorHandler, addGlobalUncaughtErrorHandler, removeGlobalUncaughtErrorHandler, setDefaultMountApp, runDefaultMountEffects, runAfterFirstMounted, SandBoxType, prefetchApps */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _apis__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./apis */ \"./node_modules/qiankun/es/apis.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"loadMicroApp\", function() { return _apis__WEBPACK_IMPORTED_MODULE_0__[\"loadMicroApp\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"registerMicroApps\", function() { return _apis__WEBPACK_IMPORTED_MODULE_0__[\"registerMicroApps\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"start\", function() { return _apis__WEBPACK_IMPORTED_MODULE_0__[\"start\"]; });\n\n/* harmony import */ var _globalState__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./globalState */ \"./node_modules/qiankun/es/globalState.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"initGlobalState\", function() { return _globalState__WEBPACK_IMPORTED_MODULE_1__[\"initGlobalState\"]; });\n\n/* harmony import */ var _errorHandler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./errorHandler */ \"./node_modules/qiankun/es/errorHandler.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addErrorHandler\", function() { return _errorHandler__WEBPACK_IMPORTED_MODULE_2__[\"addErrorHandler\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"removeErrorHandler\", function() { return _errorHandler__WEBPACK_IMPORTED_MODULE_2__[\"removeErrorHandler\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addGlobalUncaughtErrorHandler\", function() { return _errorHandler__WEBPACK_IMPORTED_MODULE_2__[\"addGlobalUncaughtErrorHandler\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"removeGlobalUncaughtErrorHandler\", function() { return _errorHandler__WEBPACK_IMPORTED_MODULE_2__[\"removeGlobalUncaughtErrorHandler\"]; });\n\n/* harmony import */ var _effects__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./effects */ \"./node_modules/qiankun/es/effects.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setDefaultMountApp\", function() { return _effects__WEBPACK_IMPORTED_MODULE_3__[\"setDefaultMountApp\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"runDefaultMountEffects\", function() { return _effects__WEBPACK_IMPORTED_MODULE_3__[\"runDefaultMountEffects\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"runAfterFirstMounted\", function() { return _effects__WEBPACK_IMPORTED_MODULE_3__[\"runAfterFirstMounted\"]; });\n\n/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./interfaces */ \"./node_modules/qiankun/es/interfaces.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"SandBoxType\", function() { return _interfaces__WEBPACK_IMPORTED_MODULE_4__[\"SandBoxType\"]; });\n\n/* harmony import */ var _prefetch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./prefetch */ \"./node_modules/qiankun/es/prefetch.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"prefetchApps\", function() { return _prefetch__WEBPACK_IMPORTED_MODULE_5__[\"prefetchImmediately\"]; });\n\n/**\n * @author Kuitos\n * @since 2019-04-25\n */\n\n\n\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9pbmRleC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL2luZGV4LmpzPzAyYjYiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAYXV0aG9yIEt1aXRvc1xuICogQHNpbmNlIDIwMTktMDQtMjVcbiAqL1xuZXhwb3J0IHsgbG9hZE1pY3JvQXBwLCByZWdpc3Rlck1pY3JvQXBwcywgc3RhcnQgfSBmcm9tICcuL2FwaXMnO1xuZXhwb3J0IHsgaW5pdEdsb2JhbFN0YXRlIH0gZnJvbSAnLi9nbG9iYWxTdGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2Vycm9ySGFuZGxlcic7XG5leHBvcnQgKiBmcm9tICcuL2VmZmVjdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCB7IHByZWZldGNoSW1tZWRpYXRlbHkgYXMgcHJlZmV0Y2hBcHBzIH0gZnJvbSAnLi9wcmVmZXRjaCc7Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/interfaces.js": /*!***********************************************!*\ !*** ./node_modules/qiankun/es/interfaces.js ***! \***********************************************/ /*! exports provided: SandBoxType */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SandBoxType\", function() { return SandBoxType; });\nvar SandBoxType;\n\n(function (SandBoxType) {\n SandBoxType[\"Proxy\"] = \"Proxy\";\n SandBoxType[\"Snapshot\"] = \"Snapshot\"; // for legacy sandbox\n // https://github.com/umijs/qiankun/blob/0d1d3f0c5ed1642f01854f96c3fabf0a2148bd26/src/sandbox/legacy/sandbox.ts#L22...L25\n\n SandBoxType[\"LegacyProxy\"] = \"LegacyProxy\";\n})(SandBoxType || (SandBoxType = {}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9pbnRlcmZhY2VzLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvaW50ZXJmYWNlcy5qcz9hN2I3Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB2YXIgU2FuZEJveFR5cGU7XG5cbihmdW5jdGlvbiAoU2FuZEJveFR5cGUpIHtcbiAgU2FuZEJveFR5cGVbXCJQcm94eVwiXSA9IFwiUHJveHlcIjtcbiAgU2FuZEJveFR5cGVbXCJTbmFwc2hvdFwiXSA9IFwiU25hcHNob3RcIjsgLy8gZm9yIGxlZ2FjeSBzYW5kYm94XG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS91bWlqcy9xaWFua3VuL2Jsb2IvMGQxZDNmMGM1ZWQxNjQyZjAxODU0Zjk2YzNmYWJmMGEyMTQ4YmQyNi9zcmMvc2FuZGJveC9sZWdhY3kvc2FuZGJveC50cyNMMjIuLi5MMjVcblxuICBTYW5kQm94VHlwZVtcIkxlZ2FjeVByb3h5XCJdID0gXCJMZWdhY3lQcm94eVwiO1xufSkoU2FuZEJveFR5cGUgfHwgKFNhbmRCb3hUeXBlID0ge30pKTsiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/interfaces.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/loader.js": /*!*******************************************!*\ !*** ./node_modules/qiankun/es/loader.js ***! \*******************************************/ /*! exports provided: loadApp */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"loadApp\", function() { return loadApp; });\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/concat */ \"./node_modules/lodash/concat.js\");\n/* harmony import */ var lodash_concat__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_concat__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/mergeWith */ \"./node_modules/lodash/mergeWith.js\");\n/* harmony import */ var lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var lodash_forEach__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/forEach */ \"./node_modules/lodash/forEach.js\");\n/* harmony import */ var lodash_forEach__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_forEach__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var import_html_entry__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! import-html-entry */ \"./node_modules/import-html-entry/esm/index.js\");\n/* harmony import */ var _addons__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./addons */ \"./node_modules/qiankun/es/addons/index.js\");\n/* harmony import */ var _globalState__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./globalState */ \"./node_modules/qiankun/es/globalState.js\");\n/* harmony import */ var _sandbox__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./sandbox */ \"./node_modules/qiankun/es/sandbox/index.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils */ \"./node_modules/qiankun/es/utils.js\");\n\n\n\n\n\n\n/**\n * @author Kuitos\n * @since 2020-04-01\n */\n\n\n\n\n\n\n\nfunction assertElementExist(element, msg) {\n if (!element) {\n if (msg) {\n throw new Error(msg);\n }\n\n throw new Error('[qiankun] element not existed!');\n }\n}\n\nfunction execHooksChain(hooks, app) {\n var global = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : window;\n\n if (hooks.length) {\n return hooks.reduce(function (chain, hook) {\n return chain.then(function () {\n return hook(app, global);\n });\n }, Promise.resolve());\n }\n\n return Promise.resolve();\n}\n\nfunction validateSingularMode(validate, app) {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", typeof validate === 'function' ? validate(app) : !!validate);\n\n case 1:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n} // @ts-ignore\n\n\nvar supportShadowDOM = document.head.attachShadow || document.head.createShadowRoot;\n\nfunction createElement(appContent, strictStyleIsolation, scopedCSS, appName) {\n var containerElement = document.createElement('div');\n containerElement.innerHTML = appContent; // appContent always wrapped with a singular div\n\n var appElement = containerElement.firstChild;\n\n if (strictStyleIsolation) {\n if (!supportShadowDOM) {\n console.warn('[qiankun]: As current browser not support shadow dom, your strictStyleIsolation configuration will be ignored!');\n } else {\n var innerHTML = appElement.innerHTML;\n appElement.innerHTML = '';\n var shadow;\n\n if (appElement.attachShadow) {\n shadow = appElement.attachShadow({\n mode: 'open'\n });\n } else {\n // createShadowRoot was proposed in initial spec, which has then been deprecated\n shadow = appElement.createShadowRoot();\n }\n\n shadow.innerHTML = innerHTML;\n }\n }\n\n if (scopedCSS) {\n var attr = appElement.getAttribute(_sandbox__WEBPACK_IMPORTED_MODULE_9__[\"css\"].QiankunCSSRewriteAttr);\n\n if (!attr) {\n appElement.setAttribute(_sandbox__WEBPACK_IMPORTED_MODULE_9__[\"css\"].QiankunCSSRewriteAttr, appName);\n }\n\n var styleNodes = appElement.querySelectorAll('style') || [];\n\n lodash_forEach__WEBPACK_IMPORTED_MODULE_3___default()(styleNodes, function (stylesheetElement) {\n _sandbox__WEBPACK_IMPORTED_MODULE_9__[\"css\"].process(appElement, stylesheetElement, appName);\n });\n }\n\n return appElement;\n}\n/** generate app wrapper dom getter */\n\n\nfunction getAppWrapperGetter(appName, appInstanceId, useLegacyRender, strictStyleIsolation, scopedCSS, elementGetter) {\n return function () {\n if (useLegacyRender) {\n if (strictStyleIsolation) throw new Error('[qiankun]: strictStyleIsolation can not be used with legacy render!');\n if (scopedCSS) throw new Error('[qiankun]: experimentalStyleIsolation can not be used with legacy render!');\n var appWrapper = document.getElementById(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"getWrapperId\"])(appInstanceId));\n assertElementExist(appWrapper, \"[qiankun] Wrapper element for \".concat(appName, \" with instance \").concat(appInstanceId, \" is not existed!\"));\n return appWrapper;\n }\n\n var element = elementGetter();\n assertElementExist(element, \"[qiankun] Wrapper element for \".concat(appName, \" with instance \").concat(appInstanceId, \" is not existed!\"));\n\n if (strictStyleIsolation) {\n return element.shadowRoot;\n }\n\n return element;\n };\n}\n\nvar rawAppendChild = HTMLElement.prototype.appendChild;\nvar rawRemoveChild = HTMLElement.prototype.removeChild;\n/**\n * Get the render function\n * If the legacy render function is provide, used as it, otherwise we will insert the app element to target container by qiankun\n * @param appName\n * @param appContent\n * @param legacyRender\n */\n\nfunction getRender(appName, appContent, legacyRender) {\n var render = function render(_ref, phase) {\n var element = _ref.element,\n loading = _ref.loading,\n container = _ref.container;\n\n if (legacyRender) {\n if (false) {}\n\n return legacyRender({\n loading: loading,\n appContent: element ? appContent : ''\n });\n }\n\n var containerElement = Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"getContainer\"])(container); // The container might have be removed after micro app unmounted.\n // Such as the micro app unmount lifecycle called by a react componentWillUnmount lifecycle, after micro app unmounted, the react component might also be removed\n\n if (phase !== 'unmounted') {\n var errorMsg = function () {\n switch (phase) {\n case 'loading':\n case 'mounting':\n return \"[qiankun] Target container with \".concat(container, \" not existed while \").concat(appName, \" \").concat(phase, \"!\");\n\n case 'mounted':\n return \"[qiankun] Target container with \".concat(container, \" not existed after \").concat(appName, \" \").concat(phase, \"!\");\n\n default:\n return \"[qiankun] Target container with \".concat(container, \" not existed while \").concat(appName, \" rendering!\");\n }\n }();\n\n assertElementExist(containerElement, errorMsg);\n }\n\n if (containerElement && !containerElement.contains(element)) {\n // clear the container\n while (containerElement.firstChild) {\n rawRemoveChild.call(containerElement, containerElement.firstChild);\n } // append the element to container if it exist\n\n\n if (element) {\n rawAppendChild.call(containerElement, element);\n }\n }\n\n return undefined;\n };\n\n return render;\n}\n\nfunction getLifecyclesFromExports(scriptExports, appName, global, globalLatestSetProp) {\n if (Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"validateExportLifecycle\"])(scriptExports)) {\n return scriptExports;\n } // fallback to sandbox latest set property if it had\n\n\n if (globalLatestSetProp) {\n var lifecycles = global[globalLatestSetProp];\n\n if (Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"validateExportLifecycle\"])(lifecycles)) {\n return lifecycles;\n }\n }\n\n if (false) {} // fallback to global variable who named with ${appName} while module exports not found\n\n\n var globalVariableExports = global[appName];\n\n if (Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"validateExportLifecycle\"])(globalVariableExports)) {\n return globalVariableExports;\n }\n\n throw new Error(\"[qiankun] You need to export lifecycle functions in \".concat(appName, \" entry\"));\n}\n\nvar prevAppUnmountedDeferred;\nfunction loadApp(app) {\n var configuration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var lifeCycles = arguments.length > 2 ? arguments[2] : undefined;\n\n var _a;\n\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee16() {\n var _this = this;\n\n var entry, appName, appInstanceId, markName, _configuration$singul, singular, _configuration$sandbo, sandbox, excludeAssetFilter, importEntryOpts, _yield$importEntry, template, execScripts, assetPublicPath, appContent, strictStyleIsolation, scopedCSS, initialAppWrapperElement, initialContainer, legacyRender, render, initialAppWrapperGetter, global, mountSandbox, unmountSandbox, useLooseSandbox, sandboxContainer, _mergeWith, _mergeWith$beforeUnmo, beforeUnmount, _mergeWith$afterUnmou, afterUnmount, _mergeWith$afterMount, afterMount, _mergeWith$beforeMoun, beforeMount, _mergeWith$beforeLoad, beforeLoad, scriptExports, _getLifecyclesFromExp, bootstrap, mount, unmount, update, _getMicroAppStateActi, onGlobalStateChange, setGlobalState, offGlobalStateChange, syncAppWrapperElement2Sandbox, parcelConfigGetter;\n\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee16$(_context16) {\n while (1) {\n switch (_context16.prev = _context16.next) {\n case 0:\n entry = app.entry, appName = app.name;\n appInstanceId = \"\".concat(appName, \"_\").concat(+new Date(), \"_\").concat(Math.floor(Math.random() * 1000));\n markName = \"[qiankun] App \".concat(appInstanceId, \" Loading\");\n\n if (false) {}\n\n _configuration$singul = configuration.singular, singular = _configuration$singul === void 0 ? false : _configuration$singul, _configuration$sandbo = configuration.sandbox, sandbox = _configuration$sandbo === void 0 ? true : _configuration$sandbo, excludeAssetFilter = configuration.excludeAssetFilter, importEntryOpts = Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__rest\"])(configuration, [\"singular\", \"sandbox\", \"excludeAssetFilter\"]); // get the entry html content and script executor\n\n _context16.next = 7;\n return Object(import_html_entry__WEBPACK_IMPORTED_MODULE_6__[\"importEntry\"])(entry, importEntryOpts);\n\n case 7:\n _yield$importEntry = _context16.sent;\n template = _yield$importEntry.template;\n execScripts = _yield$importEntry.execScripts;\n assetPublicPath = _yield$importEntry.assetPublicPath;\n _context16.next = 13;\n return validateSingularMode(singular, app);\n\n case 13:\n if (!_context16.sent) {\n _context16.next = 16;\n break;\n }\n\n _context16.next = 16;\n return prevAppUnmountedDeferred && prevAppUnmountedDeferred.promise;\n\n case 16:\n appContent = Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"getDefaultTplWrapper\"])(appInstanceId, appName)(template);\n strictStyleIsolation = Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(sandbox) === 'object' && !!sandbox.strictStyleIsolation;\n scopedCSS = Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"isEnableScopedCSS\"])(sandbox);\n initialAppWrapperElement = createElement(appContent, strictStyleIsolation, scopedCSS, appName);\n initialContainer = 'container' in app ? app.container : undefined;\n legacyRender = 'render' in app ? app.render : undefined;\n render = getRender(appName, appContent, legacyRender); // 第一次加载设置应用可见区域 dom 结构\n // 确保每次应用加载前容器 dom 结构已经设置完毕\n\n render({\n element: initialAppWrapperElement,\n loading: true,\n container: initialContainer\n }, 'loading');\n initialAppWrapperGetter = getAppWrapperGetter(appName, appInstanceId, !!legacyRender, strictStyleIsolation, scopedCSS, function () {\n return initialAppWrapperElement;\n });\n global = window;\n\n mountSandbox = function mountSandbox() {\n return Promise.resolve();\n };\n\n unmountSandbox = function unmountSandbox() {\n return Promise.resolve();\n };\n\n useLooseSandbox = Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(sandbox) === 'object' && !!sandbox.loose;\n\n if (sandbox) {\n sandboxContainer = Object(_sandbox__WEBPACK_IMPORTED_MODULE_9__[\"createSandboxContainer\"])(appName, // FIXME should use a strict sandbox logic while remount, see https://github.com/umijs/qiankun/issues/518\n initialAppWrapperGetter, scopedCSS, useLooseSandbox, excludeAssetFilter); // 用沙箱的代理对象作为接下来使用的全局对象\n\n global = sandboxContainer.instance.proxy;\n mountSandbox = sandboxContainer.mount;\n unmountSandbox = sandboxContainer.unmount;\n }\n\n _mergeWith = lodash_mergeWith__WEBPACK_IMPORTED_MODULE_1___default()({}, Object(_addons__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(global, assetPublicPath), lifeCycles, function (v1, v2) {\n return lodash_concat__WEBPACK_IMPORTED_MODULE_0___default()(v1 !== null && v1 !== void 0 ? v1 : [], v2 !== null && v2 !== void 0 ? v2 : []);\n }), _mergeWith$beforeUnmo = _mergeWith.beforeUnmount, beforeUnmount = _mergeWith$beforeUnmo === void 0 ? [] : _mergeWith$beforeUnmo, _mergeWith$afterUnmou = _mergeWith.afterUnmount, afterUnmount = _mergeWith$afterUnmou === void 0 ? [] : _mergeWith$afterUnmou, _mergeWith$afterMount = _mergeWith.afterMount, afterMount = _mergeWith$afterMount === void 0 ? [] : _mergeWith$afterMount, _mergeWith$beforeMoun = _mergeWith.beforeMount, beforeMount = _mergeWith$beforeMoun === void 0 ? [] : _mergeWith$beforeMoun, _mergeWith$beforeLoad = _mergeWith.beforeLoad, beforeLoad = _mergeWith$beforeLoad === void 0 ? [] : _mergeWith$beforeLoad;\n _context16.next = 33;\n return execHooksChain(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"toArray\"])(beforeLoad), app, global);\n\n case 33:\n _context16.next = 35;\n return execScripts(global, !useLooseSandbox);\n\n case 35:\n scriptExports = _context16.sent;\n _getLifecyclesFromExp = getLifecyclesFromExports(scriptExports, appName, global, (_a = sandboxContainer === null || sandboxContainer === void 0 ? void 0 : sandboxContainer.instance) === null || _a === void 0 ? void 0 : _a.latestSetProp), bootstrap = _getLifecyclesFromExp.bootstrap, mount = _getLifecyclesFromExp.mount, unmount = _getLifecyclesFromExp.unmount, update = _getLifecyclesFromExp.update;\n _getMicroAppStateActi = Object(_globalState__WEBPACK_IMPORTED_MODULE_8__[\"getMicroAppStateActions\"])(appInstanceId), onGlobalStateChange = _getMicroAppStateActi.onGlobalStateChange, setGlobalState = _getMicroAppStateActi.setGlobalState, offGlobalStateChange = _getMicroAppStateActi.offGlobalStateChange; // FIXME temporary way\n\n syncAppWrapperElement2Sandbox = function syncAppWrapperElement2Sandbox(element) {\n return initialAppWrapperElement = element;\n };\n\n parcelConfigGetter = function parcelConfigGetter() {\n var remountContainer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialContainer;\n var appWrapperElement = initialAppWrapperElement;\n var appWrapperGetter = getAppWrapperGetter(appName, appInstanceId, !!legacyRender, strictStyleIsolation, scopedCSS, function () {\n return appWrapperElement;\n });\n var parcelConfig = {\n name: appInstanceId,\n bootstrap: bootstrap,\n mount: [function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee2() {\n var marks;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (false) {}\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee3() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return validateSingularMode(singular, app);\n\n case 2:\n _context3.t0 = _context3.sent;\n\n if (!_context3.t0) {\n _context3.next = 5;\n break;\n }\n\n _context3.t0 = prevAppUnmountedDeferred;\n\n case 5:\n if (!_context3.t0) {\n _context3.next = 7;\n break;\n }\n\n return _context3.abrupt(\"return\", prevAppUnmountedDeferred.promise);\n\n case 7:\n return _context3.abrupt(\"return\", undefined);\n\n case 8:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n }, // 添加 mount hook, 确保每次应用加载前容器 dom 结构已经设置完毕\n function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee4() {\n var useNewContainer;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n useNewContainer = remountContainer !== initialContainer;\n\n if (useNewContainer || !appWrapperElement) {\n // element will be destroyed after unmounted, we need to recreate it if it not exist\n // or we try to remount into a new container\n appWrapperElement = createElement(appContent, strictStyleIsolation, scopedCSS, appName);\n syncAppWrapperElement2Sandbox(appWrapperElement);\n }\n\n render({\n element: appWrapperElement,\n loading: true,\n container: remountContainer\n }, 'mounting');\n\n case 3:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n }, mountSandbox, // exec the chain after rendering to keep the behavior with beforeLoad\n function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee5() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n return _context5.abrupt(\"return\", execHooksChain(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"toArray\"])(beforeMount), app, global));\n\n case 1:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5);\n }));\n }, function (props) {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee6() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n return _context6.abrupt(\"return\", mount(Object.assign(Object.assign({}, props), {\n container: appWrapperGetter(),\n setGlobalState: setGlobalState,\n onGlobalStateChange: onGlobalStateChange\n })));\n\n case 1:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6);\n }));\n }, // finish loading after app mounted\n function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee7() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee7$(_context7) {\n while (1) {\n switch (_context7.prev = _context7.next) {\n case 0:\n return _context7.abrupt(\"return\", render({\n element: appWrapperElement,\n loading: false,\n container: remountContainer\n }, 'mounted'));\n\n case 1:\n case \"end\":\n return _context7.stop();\n }\n }\n }, _callee7);\n }));\n }, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee8() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee8$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n return _context8.abrupt(\"return\", execHooksChain(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"toArray\"])(afterMount), app, global));\n\n case 1:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee8);\n }));\n }, // initialize the unmount defer after app mounted and resolve the defer after it unmounted\n function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee9() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee9$(_context9) {\n while (1) {\n switch (_context9.prev = _context9.next) {\n case 0:\n _context9.next = 2;\n return validateSingularMode(singular, app);\n\n case 2:\n if (!_context9.sent) {\n _context9.next = 4;\n break;\n }\n\n prevAppUnmountedDeferred = new _utils__WEBPACK_IMPORTED_MODULE_10__[\"Deferred\"]();\n\n case 4:\n case \"end\":\n return _context9.stop();\n }\n }\n }, _callee9);\n }));\n }, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee10() {\n var measureName;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee10$(_context10) {\n while (1) {\n switch (_context10.prev = _context10.next) {\n case 0:\n if (false) {}\n\n case 1:\n case \"end\":\n return _context10.stop();\n }\n }\n }, _callee10);\n }));\n }],\n unmount: [function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee11() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee11$(_context11) {\n while (1) {\n switch (_context11.prev = _context11.next) {\n case 0:\n return _context11.abrupt(\"return\", execHooksChain(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"toArray\"])(beforeUnmount), app, global));\n\n case 1:\n case \"end\":\n return _context11.stop();\n }\n }\n }, _callee11);\n }));\n }, function (props) {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee12() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee12$(_context12) {\n while (1) {\n switch (_context12.prev = _context12.next) {\n case 0:\n return _context12.abrupt(\"return\", unmount(Object.assign(Object.assign({}, props), {\n container: appWrapperGetter()\n })));\n\n case 1:\n case \"end\":\n return _context12.stop();\n }\n }\n }, _callee12);\n }));\n }, unmountSandbox, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee13() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee13$(_context13) {\n while (1) {\n switch (_context13.prev = _context13.next) {\n case 0:\n return _context13.abrupt(\"return\", execHooksChain(Object(_utils__WEBPACK_IMPORTED_MODULE_10__[\"toArray\"])(afterUnmount), app, global));\n\n case 1:\n case \"end\":\n return _context13.stop();\n }\n }\n }, _callee13);\n }));\n }, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee14() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee14$(_context14) {\n while (1) {\n switch (_context14.prev = _context14.next) {\n case 0:\n render({\n element: null,\n loading: false,\n container: remountContainer\n }, 'unmounted');\n offGlobalStateChange(appInstanceId); // for gc\n\n appWrapperElement = null;\n syncAppWrapperElement2Sandbox(appWrapperElement);\n\n case 4:\n case \"end\":\n return _context14.stop();\n }\n }\n }, _callee14);\n }));\n }, function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_5__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.mark(function _callee15() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_4___default.a.wrap(function _callee15$(_context15) {\n while (1) {\n switch (_context15.prev = _context15.next) {\n case 0:\n _context15.next = 2;\n return validateSingularMode(singular, app);\n\n case 2:\n _context15.t0 = _context15.sent;\n\n if (!_context15.t0) {\n _context15.next = 5;\n break;\n }\n\n _context15.t0 = prevAppUnmountedDeferred;\n\n case 5:\n if (!_context15.t0) {\n _context15.next = 7;\n break;\n }\n\n prevAppUnmountedDeferred.resolve();\n\n case 7:\n case \"end\":\n return _context15.stop();\n }\n }\n }, _callee15);\n }));\n }]\n };\n\n if (typeof update === 'function') {\n parcelConfig.update = update;\n }\n\n return parcelConfig;\n };\n\n return _context16.abrupt(\"return\", parcelConfigGetter);\n\n case 41:\n case \"end\":\n return _context16.stop();\n }\n }\n }, _callee16);\n }));\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9sb2FkZXIuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9sb2FkZXIuanM/NmYxNCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgX2NvbmNhdCBmcm9tIFwibG9kYXNoL2NvbmNhdFwiO1xuaW1wb3J0IF9tZXJnZVdpdGgyIGZyb20gXCJsb2Rhc2gvbWVyZ2VXaXRoXCI7XG5pbXBvcnQgX3R5cGVvZiBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdHlwZW9mXCI7XG5pbXBvcnQgX2ZvckVhY2ggZnJvbSBcImxvZGFzaC9mb3JFYWNoXCI7XG5pbXBvcnQgX3JlZ2VuZXJhdG9yUnVudGltZSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3JcIjtcblxuLyoqXG4gKiBAYXV0aG9yIEt1aXRvc1xuICogQHNpbmNlIDIwMjAtMDQtMDFcbiAqL1xuaW1wb3J0IHsgX19hd2FpdGVyLCBfX3Jlc3QgfSBmcm9tIFwidHNsaWJcIjtcbmltcG9ydCB7IGltcG9ydEVudHJ5IH0gZnJvbSAnaW1wb3J0LWh0bWwtZW50cnknO1xuaW1wb3J0IGdldEFkZE9ucyBmcm9tICcuL2FkZG9ucyc7XG5pbXBvcnQgeyBnZXRNaWNyb0FwcFN0YXRlQWN0aW9ucyB9IGZyb20gJy4vZ2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgY3JlYXRlU2FuZGJveENvbnRhaW5lciwgY3NzIH0gZnJvbSAnLi9zYW5kYm94JztcbmltcG9ydCB7IERlZmVycmVkLCBnZXRDb250YWluZXIsIGdldERlZmF1bHRUcGxXcmFwcGVyLCBnZXRXcmFwcGVySWQsIGlzRW5hYmxlU2NvcGVkQ1NTLCBwZXJmb3JtYW5jZU1hcmssIHBlcmZvcm1hbmNlTWVhc3VyZSwgcGVyZm9ybWFuY2VHZXRFbnRyaWVzQnlOYW1lLCB0b0FycmF5LCB2YWxpZGF0ZUV4cG9ydExpZmVjeWNsZSB9IGZyb20gJy4vdXRpbHMnO1xuXG5mdW5jdGlvbiBhc3NlcnRFbGVtZW50RXhpc3QoZWxlbWVudCwgbXNnKSB7XG4gIGlmICghZWxlbWVudCkge1xuICAgIGlmIChtc2cpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihtc2cpO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignW3FpYW5rdW5dIGVsZW1lbnQgbm90IGV4aXN0ZWQhJyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZXhlY0hvb2tzQ2hhaW4oaG9va3MsIGFwcCkge1xuICB2YXIgZ2xvYmFsID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgJiYgYXJndW1lbnRzWzJdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMl0gOiB3aW5kb3c7XG5cbiAgaWYgKGhvb2tzLmxlbmd0aCkge1xuICAgIHJldHVybiBob29rcy5yZWR1Y2UoZnVuY3Rpb24gKGNoYWluLCBob29rKSB7XG4gICAgICByZXR1cm4gY2hhaW4udGhlbihmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBob29rKGFwcCwgZ2xvYmFsKTtcbiAgICAgIH0pO1xuICAgIH0sIFByb21pc2UucmVzb2x2ZSgpKTtcbiAgfVxuXG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVTaW5ndWxhck1vZGUodmFsaWRhdGUsIGFwcCkge1xuICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUoKSB7XG4gICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkge1xuICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkge1xuICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5hYnJ1cHQoXCJyZXR1cm5cIiwgdHlwZW9mIHZhbGlkYXRlID09PSAnZnVuY3Rpb24nID8gdmFsaWRhdGUoYXBwKSA6ICEhdmFsaWRhdGUpO1xuXG4gICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCBfY2FsbGVlKTtcbiAgfSkpO1xufSAvLyBAdHMtaWdub3JlXG5cblxudmFyIHN1cHBvcnRTaGFkb3dET00gPSBkb2N1bWVudC5oZWFkLmF0dGFjaFNoYWRvdyB8fCBkb2N1bWVudC5oZWFkLmNyZWF0ZVNoYWRvd1Jvb3Q7XG5cbmZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQoYXBwQ29udGVudCwgc3RyaWN0U3R5bGVJc29sYXRpb24sIHNjb3BlZENTUywgYXBwTmFtZSkge1xuICB2YXIgY29udGFpbmVyRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICBjb250YWluZXJFbGVtZW50LmlubmVySFRNTCA9IGFwcENvbnRlbnQ7IC8vIGFwcENvbnRlbnQgYWx3YXlzIHdyYXBwZWQgd2l0aCBhIHNpbmd1bGFyIGRpdlxuXG4gIHZhciBhcHBFbGVtZW50ID0gY29udGFpbmVyRWxlbWVudC5maXJzdENoaWxkO1xuXG4gIGlmIChzdHJpY3RTdHlsZUlzb2xhdGlvbikge1xuICAgIGlmICghc3VwcG9ydFNoYWRvd0RPTSkge1xuICAgICAgY29uc29sZS53YXJuKCdbcWlhbmt1bl06IEFzIGN1cnJlbnQgYnJvd3NlciBub3Qgc3VwcG9ydCBzaGFkb3cgZG9tLCB5b3VyIHN0cmljdFN0eWxlSXNvbGF0aW9uIGNvbmZpZ3VyYXRpb24gd2lsbCBiZSBpZ25vcmVkIScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgaW5uZXJIVE1MID0gYXBwRWxlbWVudC5pbm5lckhUTUw7XG4gICAgICBhcHBFbGVtZW50LmlubmVySFRNTCA9ICcnO1xuICAgICAgdmFyIHNoYWRvdztcblxuICAgICAgaWYgKGFwcEVsZW1lbnQuYXR0YWNoU2hhZG93KSB7XG4gICAgICAgIHNoYWRvdyA9IGFwcEVsZW1lbnQuYXR0YWNoU2hhZG93KHtcbiAgICAgICAgICBtb2RlOiAnb3BlbidcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBjcmVhdGVTaGFkb3dSb290IHdhcyBwcm9wb3NlZCBpbiBpbml0aWFsIHNwZWMsIHdoaWNoIGhhcyB0aGVuIGJlZW4gZGVwcmVjYXRlZFxuICAgICAgICBzaGFkb3cgPSBhcHBFbGVtZW50LmNyZWF0ZVNoYWRvd1Jvb3QoKTtcbiAgICAgIH1cblxuICAgICAgc2hhZG93LmlubmVySFRNTCA9IGlubmVySFRNTDtcbiAgICB9XG4gIH1cblxuICBpZiAoc2NvcGVkQ1NTKSB7XG4gICAgdmFyIGF0dHIgPSBhcHBFbGVtZW50LmdldEF0dHJpYnV0ZShjc3MuUWlhbmt1bkNTU1Jld3JpdGVBdHRyKTtcblxuICAgIGlmICghYXR0cikge1xuICAgICAgYXBwRWxlbWVudC5zZXRBdHRyaWJ1dGUoY3NzLlFpYW5rdW5DU1NSZXdyaXRlQXR0ciwgYXBwTmFtZSk7XG4gICAgfVxuXG4gICAgdmFyIHN0eWxlTm9kZXMgPSBhcHBFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3N0eWxlJykgfHwgW107XG5cbiAgICBfZm9yRWFjaChzdHlsZU5vZGVzLCBmdW5jdGlvbiAoc3R5bGVzaGVldEVsZW1lbnQpIHtcbiAgICAgIGNzcy5wcm9jZXNzKGFwcEVsZW1lbnQsIHN0eWxlc2hlZXRFbGVtZW50LCBhcHBOYW1lKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBhcHBFbGVtZW50O1xufVxuLyoqIGdlbmVyYXRlIGFwcCB3cmFwcGVyIGRvbSBnZXR0ZXIgKi9cblxuXG5mdW5jdGlvbiBnZXRBcHBXcmFwcGVyR2V0dGVyKGFwcE5hbWUsIGFwcEluc3RhbmNlSWQsIHVzZUxlZ2FjeVJlbmRlciwgc3RyaWN0U3R5bGVJc29sYXRpb24sIHNjb3BlZENTUywgZWxlbWVudEdldHRlcikge1xuICByZXR1cm4gZnVuY3Rpb24gKCkge1xuICAgIGlmICh1c2VMZWdhY3lSZW5kZXIpIHtcbiAgICAgIGlmIChzdHJpY3RTdHlsZUlzb2xhdGlvbikgdGhyb3cgbmV3IEVycm9yKCdbcWlhbmt1bl06IHN0cmljdFN0eWxlSXNvbGF0aW9uIGNhbiBub3QgYmUgdXNlZCB3aXRoIGxlZ2FjeSByZW5kZXIhJyk7XG4gICAgICBpZiAoc2NvcGVkQ1NTKSB0aHJvdyBuZXcgRXJyb3IoJ1txaWFua3VuXTogZXhwZXJpbWVudGFsU3R5bGVJc29sYXRpb24gY2FuIG5vdCBiZSB1c2VkIHdpdGggbGVnYWN5IHJlbmRlciEnKTtcbiAgICAgIHZhciBhcHBXcmFwcGVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ2V0V3JhcHBlcklkKGFwcEluc3RhbmNlSWQpKTtcbiAgICAgIGFzc2VydEVsZW1lbnRFeGlzdChhcHBXcmFwcGVyLCBcIltxaWFua3VuXSBXcmFwcGVyIGVsZW1lbnQgZm9yIFwiLmNvbmNhdChhcHBOYW1lLCBcIiB3aXRoIGluc3RhbmNlIFwiKS5jb25jYXQoYXBwSW5zdGFuY2VJZCwgXCIgaXMgbm90IGV4aXN0ZWQhXCIpKTtcbiAgICAgIHJldHVybiBhcHBXcmFwcGVyO1xuICAgIH1cblxuICAgIHZhciBlbGVtZW50ID0gZWxlbWVudEdldHRlcigpO1xuICAgIGFzc2VydEVsZW1lbnRFeGlzdChlbGVtZW50LCBcIltxaWFua3VuXSBXcmFwcGVyIGVsZW1lbnQgZm9yIFwiLmNvbmNhdChhcHBOYW1lLCBcIiB3aXRoIGluc3RhbmNlIFwiKS5jb25jYXQoYXBwSW5zdGFuY2VJZCwgXCIgaXMgbm90IGV4aXN0ZWQhXCIpKTtcblxuICAgIGlmIChzdHJpY3RTdHlsZUlzb2xhdGlvbikge1xuICAgICAgcmV0dXJuIGVsZW1lbnQuc2hhZG93Um9vdDtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfTtcbn1cblxudmFyIHJhd0FwcGVuZENoaWxkID0gSFRNTEVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkO1xudmFyIHJhd1JlbW92ZUNoaWxkID0gSFRNTEVsZW1lbnQucHJvdG90eXBlLnJlbW92ZUNoaWxkO1xuLyoqXG4gKiBHZXQgdGhlIHJlbmRlciBmdW5jdGlvblxuICogSWYgdGhlIGxlZ2FjeSByZW5kZXIgZnVuY3Rpb24gaXMgcHJvdmlkZSwgdXNlZCBhcyBpdCwgb3RoZXJ3aXNlIHdlIHdpbGwgaW5zZXJ0IHRoZSBhcHAgZWxlbWVudCB0byB0YXJnZXQgY29udGFpbmVyIGJ5IHFpYW5rdW5cbiAqIEBwYXJhbSBhcHBOYW1lXG4gKiBAcGFyYW0gYXBwQ29udGVudFxuICogQHBhcmFtIGxlZ2FjeVJlbmRlclxuICovXG5cbmZ1bmN0aW9uIGdldFJlbmRlcihhcHBOYW1lLCBhcHBDb250ZW50LCBsZWdhY3lSZW5kZXIpIHtcbiAgdmFyIHJlbmRlciA9IGZ1bmN0aW9uIHJlbmRlcihfcmVmLCBwaGFzZSkge1xuICAgIHZhciBlbGVtZW50ID0gX3JlZi5lbGVtZW50LFxuICAgICAgICBsb2FkaW5nID0gX3JlZi5sb2FkaW5nLFxuICAgICAgICBjb250YWluZXIgPSBfcmVmLmNvbnRhaW5lcjtcblxuICAgIGlmIChsZWdhY3lSZW5kZXIpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgICAgICBjb25zb2xlLndhcm4oJ1txaWFua3VuXSBDdXN0b20gcmVuZGVyaW5nIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQsIHlvdSBjYW4gdXNlIHRoZSBjb250YWluZXIgZWxlbWVudCBzZXR0aW5nIGluc3RlYWQhJyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBsZWdhY3lSZW5kZXIoe1xuICAgICAgICBsb2FkaW5nOiBsb2FkaW5nLFxuICAgICAgICBhcHBDb250ZW50OiBlbGVtZW50ID8gYXBwQ29udGVudCA6ICcnXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB2YXIgY29udGFpbmVyRWxlbWVudCA9IGdldENvbnRhaW5lcihjb250YWluZXIpOyAvLyBUaGUgY29udGFpbmVyIG1pZ2h0IGhhdmUgYmUgcmVtb3ZlZCBhZnRlciBtaWNybyBhcHAgdW5tb3VudGVkLlxuICAgIC8vIFN1Y2ggYXMgdGhlIG1pY3JvIGFwcCB1bm1vdW50IGxpZmVjeWNsZSBjYWxsZWQgYnkgYSByZWFjdCBjb21wb25lbnRXaWxsVW5tb3VudCBsaWZlY3ljbGUsIGFmdGVyIG1pY3JvIGFwcCB1bm1vdW50ZWQsIHRoZSByZWFjdCBjb21wb25lbnQgbWlnaHQgYWxzbyBiZSByZW1vdmVkXG5cbiAgICBpZiAocGhhc2UgIT09ICd1bm1vdW50ZWQnKSB7XG4gICAgICB2YXIgZXJyb3JNc2cgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHN3aXRjaCAocGhhc2UpIHtcbiAgICAgICAgICBjYXNlICdsb2FkaW5nJzpcbiAgICAgICAgICBjYXNlICdtb3VudGluZyc6XG4gICAgICAgICAgICByZXR1cm4gXCJbcWlhbmt1bl0gVGFyZ2V0IGNvbnRhaW5lciB3aXRoIFwiLmNvbmNhdChjb250YWluZXIsIFwiIG5vdCBleGlzdGVkIHdoaWxlIFwiKS5jb25jYXQoYXBwTmFtZSwgXCIgXCIpLmNvbmNhdChwaGFzZSwgXCIhXCIpO1xuXG4gICAgICAgICAgY2FzZSAnbW91bnRlZCc6XG4gICAgICAgICAgICByZXR1cm4gXCJbcWlhbmt1bl0gVGFyZ2V0IGNvbnRhaW5lciB3aXRoIFwiLmNvbmNhdChjb250YWluZXIsIFwiIG5vdCBleGlzdGVkIGFmdGVyIFwiKS5jb25jYXQoYXBwTmFtZSwgXCIgXCIpLmNvbmNhdChwaGFzZSwgXCIhXCIpO1xuXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBcIltxaWFua3VuXSBUYXJnZXQgY29udGFpbmVyIHdpdGggXCIuY29uY2F0KGNvbnRhaW5lciwgXCIgbm90IGV4aXN0ZWQgd2hpbGUgXCIpLmNvbmNhdChhcHBOYW1lLCBcIiByZW5kZXJpbmchXCIpO1xuICAgICAgICB9XG4gICAgICB9KCk7XG5cbiAgICAgIGFzc2VydEVsZW1lbnRFeGlzdChjb250YWluZXJFbGVtZW50LCBlcnJvck1zZyk7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRhaW5lckVsZW1lbnQgJiYgIWNvbnRhaW5lckVsZW1lbnQuY29udGFpbnMoZWxlbWVudCkpIHtcbiAgICAgIC8vIGNsZWFyIHRoZSBjb250YWluZXJcbiAgICAgIHdoaWxlIChjb250YWluZXJFbGVtZW50LmZpcnN0Q2hpbGQpIHtcbiAgICAgICAgcmF3UmVtb3ZlQ2hpbGQuY2FsbChjb250YWluZXJFbGVtZW50LCBjb250YWluZXJFbGVtZW50LmZpcnN0Q2hpbGQpO1xuICAgICAgfSAvLyBhcHBlbmQgdGhlIGVsZW1lbnQgdG8gY29udGFpbmVyIGlmIGl0IGV4aXN0XG5cblxuICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgcmF3QXBwZW5kQ2hpbGQuY2FsbChjb250YWluZXJFbGVtZW50LCBlbGVtZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xuXG4gIHJldHVybiByZW5kZXI7XG59XG5cbmZ1bmN0aW9uIGdldExpZmVjeWNsZXNGcm9tRXhwb3J0cyhzY3JpcHRFeHBvcnRzLCBhcHBOYW1lLCBnbG9iYWwsIGdsb2JhbExhdGVzdFNldFByb3ApIHtcbiAgaWYgKHZhbGlkYXRlRXhwb3J0TGlmZWN5Y2xlKHNjcmlwdEV4cG9ydHMpKSB7XG4gICAgcmV0dXJuIHNjcmlwdEV4cG9ydHM7XG4gIH0gLy8gZmFsbGJhY2sgdG8gc2FuZGJveCBsYXRlc3Qgc2V0IHByb3BlcnR5IGlmIGl0IGhhZFxuXG5cbiAgaWYgKGdsb2JhbExhdGVzdFNldFByb3ApIHtcbiAgICB2YXIgbGlmZWN5Y2xlcyA9IGdsb2JhbFtnbG9iYWxMYXRlc3RTZXRQcm9wXTtcblxuICAgIGlmICh2YWxpZGF0ZUV4cG9ydExpZmVjeWNsZShsaWZlY3ljbGVzKSkge1xuICAgICAgcmV0dXJuIGxpZmVjeWNsZXM7XG4gICAgfVxuICB9XG5cbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgY29uc29sZS53YXJuKFwiW3FpYW5rdW5dIGxpZmVjeWNsZSBub3QgZm91bmQgZnJvbSBcIi5jb25jYXQoYXBwTmFtZSwgXCIgZW50cnkgZXhwb3J0cywgZmFsbGJhY2sgdG8gZ2V0IGZyb20gd2luZG93WydcIikuY29uY2F0KGFwcE5hbWUsIFwiJ11cIikpO1xuICB9IC8vIGZhbGxiYWNrIHRvIGdsb2JhbCB2YXJpYWJsZSB3aG8gbmFtZWQgd2l0aCAke2FwcE5hbWV9IHdoaWxlIG1vZHVsZSBleHBvcnRzIG5vdCBmb3VuZFxuXG5cbiAgdmFyIGdsb2JhbFZhcmlhYmxlRXhwb3J0cyA9IGdsb2JhbFthcHBOYW1lXTtcblxuICBpZiAodmFsaWRhdGVFeHBvcnRMaWZlY3ljbGUoZ2xvYmFsVmFyaWFibGVFeHBvcnRzKSkge1xuICAgIHJldHVybiBnbG9iYWxWYXJpYWJsZUV4cG9ydHM7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoXCJbcWlhbmt1bl0gWW91IG5lZWQgdG8gZXhwb3J0IGxpZmVjeWNsZSBmdW5jdGlvbnMgaW4gXCIuY29uY2F0KGFwcE5hbWUsIFwiIGVudHJ5XCIpKTtcbn1cblxudmFyIHByZXZBcHBVbm1vdW50ZWREZWZlcnJlZDtcbmV4cG9ydCBmdW5jdGlvbiBsb2FkQXBwKGFwcCkge1xuICB2YXIgY29uZmlndXJhdGlvbiA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDoge307XG4gIHZhciBsaWZlQ3ljbGVzID0gYXJndW1lbnRzLmxlbmd0aCA+IDIgPyBhcmd1bWVudHNbMl0gOiB1bmRlZmluZWQ7XG5cbiAgdmFyIF9hO1xuXG4gIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTE2KCkge1xuICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICB2YXIgZW50cnksIGFwcE5hbWUsIGFwcEluc3RhbmNlSWQsIG1hcmtOYW1lLCBfY29uZmlndXJhdGlvbiRzaW5ndWwsIHNpbmd1bGFyLCBfY29uZmlndXJhdGlvbiRzYW5kYm8sIHNhbmRib3gsIGV4Y2x1ZGVBc3NldEZpbHRlciwgaW1wb3J0RW50cnlPcHRzLCBfeWllbGQkaW1wb3J0RW50cnksIHRlbXBsYXRlLCBleGVjU2NyaXB0cywgYXNzZXRQdWJsaWNQYXRoLCBhcHBDb250ZW50LCBzdHJpY3RTdHlsZUlzb2xhdGlvbiwgc2NvcGVkQ1NTLCBpbml0aWFsQXBwV3JhcHBlckVsZW1lbnQsIGluaXRpYWxDb250YWluZXIsIGxlZ2FjeVJlbmRlciwgcmVuZGVyLCBpbml0aWFsQXBwV3JhcHBlckdldHRlciwgZ2xvYmFsLCBtb3VudFNhbmRib3gsIHVubW91bnRTYW5kYm94LCB1c2VMb29zZVNhbmRib3gsIHNhbmRib3hDb250YWluZXIsIF9tZXJnZVdpdGgsIF9tZXJnZVdpdGgkYmVmb3JlVW5tbywgYmVmb3JlVW5tb3VudCwgX21lcmdlV2l0aCRhZnRlclVubW91LCBhZnRlclVubW91bnQsIF9tZXJnZVdpdGgkYWZ0ZXJNb3VudCwgYWZ0ZXJNb3VudCwgX21lcmdlV2l0aCRiZWZvcmVNb3VuLCBiZWZvcmVNb3VudCwgX21lcmdlV2l0aCRiZWZvcmVMb2FkLCBiZWZvcmVMb2FkLCBzY3JpcHRFeHBvcnRzLCBfZ2V0TGlmZWN5Y2xlc0Zyb21FeHAsIGJvb3RzdHJhcCwgbW91bnQsIHVubW91bnQsIHVwZGF0ZSwgX2dldE1pY3JvQXBwU3RhdGVBY3RpLCBvbkdsb2JhbFN0YXRlQ2hhbmdlLCBzZXRHbG9iYWxTdGF0ZSwgb2ZmR2xvYmFsU3RhdGVDaGFuZ2UsIHN5bmNBcHBXcmFwcGVyRWxlbWVudDJTYW5kYm94LCBwYXJjZWxDb25maWdHZXR0ZXI7XG5cbiAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUxNiQoX2NvbnRleHQxNikge1xuICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgc3dpdGNoIChfY29udGV4dDE2LnByZXYgPSBfY29udGV4dDE2Lm5leHQpIHtcbiAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICBlbnRyeSA9IGFwcC5lbnRyeSwgYXBwTmFtZSA9IGFwcC5uYW1lO1xuICAgICAgICAgICAgYXBwSW5zdGFuY2VJZCA9IFwiXCIuY29uY2F0KGFwcE5hbWUsIFwiX1wiKS5jb25jYXQoK25ldyBEYXRlKCksIFwiX1wiKS5jb25jYXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMCkpO1xuICAgICAgICAgICAgbWFya05hbWUgPSBcIltxaWFua3VuXSBBcHAgXCIuY29uY2F0KGFwcEluc3RhbmNlSWQsIFwiIExvYWRpbmdcIik7XG5cbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ2RldmVsb3BtZW50Jykge1xuICAgICAgICAgICAgICBwZXJmb3JtYW5jZU1hcmsobWFya05hbWUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBfY29uZmlndXJhdGlvbiRzaW5ndWwgPSBjb25maWd1cmF0aW9uLnNpbmd1bGFyLCBzaW5ndWxhciA9IF9jb25maWd1cmF0aW9uJHNpbmd1bCA9PT0gdm9pZCAwID8gZmFsc2UgOiBfY29uZmlndXJhdGlvbiRzaW5ndWwsIF9jb25maWd1cmF0aW9uJHNhbmRibyA9IGNvbmZpZ3VyYXRpb24uc2FuZGJveCwgc2FuZGJveCA9IF9jb25maWd1cmF0aW9uJHNhbmRibyA9PT0gdm9pZCAwID8gdHJ1ZSA6IF9jb25maWd1cmF0aW9uJHNhbmRibywgZXhjbHVkZUFzc2V0RmlsdGVyID0gY29uZmlndXJhdGlvbi5leGNsdWRlQXNzZXRGaWx0ZXIsIGltcG9ydEVudHJ5T3B0cyA9IF9fcmVzdChjb25maWd1cmF0aW9uLCBbXCJzaW5ndWxhclwiLCBcInNhbmRib3hcIiwgXCJleGNsdWRlQXNzZXRGaWx0ZXJcIl0pOyAvLyBnZXQgdGhlIGVudHJ5IGh0bWwgY29udGVudCBhbmQgc2NyaXB0IGV4ZWN1dG9yXG5cbiAgICAgICAgICAgIF9jb250ZXh0MTYubmV4dCA9IDc7XG4gICAgICAgICAgICByZXR1cm4gaW1wb3J0RW50cnkoZW50cnksIGltcG9ydEVudHJ5T3B0cyk7XG5cbiAgICAgICAgICBjYXNlIDc6XG4gICAgICAgICAgICBfeWllbGQkaW1wb3J0RW50cnkgPSBfY29udGV4dDE2LnNlbnQ7XG4gICAgICAgICAgICB0ZW1wbGF0ZSA9IF95aWVsZCRpbXBvcnRFbnRyeS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIGV4ZWNTY3JpcHRzID0gX3lpZWxkJGltcG9ydEVudHJ5LmV4ZWNTY3JpcHRzO1xuICAgICAgICAgICAgYXNzZXRQdWJsaWNQYXRoID0gX3lpZWxkJGltcG9ydEVudHJ5LmFzc2V0UHVibGljUGF0aDtcbiAgICAgICAgICAgIF9jb250ZXh0MTYubmV4dCA9IDEzO1xuICAgICAgICAgICAgcmV0dXJuIHZhbGlkYXRlU2luZ3VsYXJNb2RlKHNpbmd1bGFyLCBhcHApO1xuXG4gICAgICAgICAgY2FzZSAxMzpcbiAgICAgICAgICAgIGlmICghX2NvbnRleHQxNi5zZW50KSB7XG4gICAgICAgICAgICAgIF9jb250ZXh0MTYubmV4dCA9IDE2O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgX2NvbnRleHQxNi5uZXh0ID0gMTY7XG4gICAgICAgICAgICByZXR1cm4gcHJldkFwcFVubW91bnRlZERlZmVycmVkICYmIHByZXZBcHBVbm1vdW50ZWREZWZlcnJlZC5wcm9taXNlO1xuXG4gICAgICAgICAgY2FzZSAxNjpcbiAgICAgICAgICAgIGFwcENvbnRlbnQgPSBnZXREZWZhdWx0VHBsV3JhcHBlcihhcHBJbnN0YW5jZUlkLCBhcHBOYW1lKSh0ZW1wbGF0ZSk7XG4gICAgICAgICAgICBzdHJpY3RTdHlsZUlzb2xhdGlvbiA9IF90eXBlb2Yoc2FuZGJveCkgPT09ICdvYmplY3QnICYmICEhc2FuZGJveC5zdHJpY3RTdHlsZUlzb2xhdGlvbjtcbiAgICAgICAgICAgIHNjb3BlZENTUyA9IGlzRW5hYmxlU2NvcGVkQ1NTKHNhbmRib3gpO1xuICAgICAgICAgICAgaW5pdGlhbEFwcFdyYXBwZXJFbGVtZW50ID0gY3JlYXRlRWxlbWVudChhcHBDb250ZW50LCBzdHJpY3RTdHlsZUlzb2xhdGlvbiwgc2NvcGVkQ1NTLCBhcHBOYW1lKTtcbiAgICAgICAgICAgIGluaXRpYWxDb250YWluZXIgPSAnY29udGFpbmVyJyBpbiBhcHAgPyBhcHAuY29udGFpbmVyIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgbGVnYWN5UmVuZGVyID0gJ3JlbmRlcicgaW4gYXBwID8gYXBwLnJlbmRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHJlbmRlciA9IGdldFJlbmRlcihhcHBOYW1lLCBhcHBDb250ZW50LCBsZWdhY3lSZW5kZXIpOyAvLyDnrKzkuIDmrKHliqDovb3orr7nva7lupTnlKjlj6/op4HljLrln58gZG9tIOe7k+aehFxuICAgICAgICAgICAgLy8g56Gu5L+d5q+P5qyh5bqU55So5Yqg6L295YmN5a655ZmoIGRvbSDnu5PmnoTlt7Lnu4/orr7nva7lrozmr5VcblxuICAgICAgICAgICAgcmVuZGVyKHtcbiAgICAgICAgICAgICAgZWxlbWVudDogaW5pdGlhbEFwcFdyYXBwZXJFbGVtZW50LFxuICAgICAgICAgICAgICBsb2FkaW5nOiB0cnVlLFxuICAgICAgICAgICAgICBjb250YWluZXI6IGluaXRpYWxDb250YWluZXJcbiAgICAgICAgICAgIH0sICdsb2FkaW5nJyk7XG4gICAgICAgICAgICBpbml0aWFsQXBwV3JhcHBlckdldHRlciA9IGdldEFwcFdyYXBwZXJHZXR0ZXIoYXBwTmFtZSwgYXBwSW5zdGFuY2VJZCwgISFsZWdhY3lSZW5kZXIsIHN0cmljdFN0eWxlSXNvbGF0aW9uLCBzY29wZWRDU1MsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGluaXRpYWxBcHBXcmFwcGVyRWxlbWVudDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZ2xvYmFsID0gd2luZG93O1xuXG4gICAgICAgICAgICBtb3VudFNhbmRib3ggPSBmdW5jdGlvbiBtb3VudFNhbmRib3goKSB7XG4gICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHVubW91bnRTYW5kYm94ID0gZnVuY3Rpb24gdW5tb3VudFNhbmRib3goKSB7XG4gICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHVzZUxvb3NlU2FuZGJveCA9IF90eXBlb2Yoc2FuZGJveCkgPT09ICdvYmplY3QnICYmICEhc2FuZGJveC5sb29zZTtcblxuICAgICAgICAgICAgaWYgKHNhbmRib3gpIHtcbiAgICAgICAgICAgICAgc2FuZGJveENvbnRhaW5lciA9IGNyZWF0ZVNhbmRib3hDb250YWluZXIoYXBwTmFtZSwgLy8gRklYTUUgc2hvdWxkIHVzZSBhIHN0cmljdCBzYW5kYm94IGxvZ2ljIHdoaWxlIHJlbW91bnQsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vdW1panMvcWlhbmt1bi9pc3N1ZXMvNTE4XG4gICAgICAgICAgICAgIGluaXRpYWxBcHBXcmFwcGVyR2V0dGVyLCBzY29wZWRDU1MsIHVzZUxvb3NlU2FuZGJveCwgZXhjbHVkZUFzc2V0RmlsdGVyKTsgLy8g55So5rKZ566x55qE5Luj55CG5a+56LGh5L2c5Li65o6l5LiL5p2l5L2/55So55qE5YWo5bGA5a+56LGhXG5cbiAgICAgICAgICAgICAgZ2xvYmFsID0gc2FuZGJveENvbnRhaW5lci5pbnN0YW5jZS5wcm94eTtcbiAgICAgICAgICAgICAgbW91bnRTYW5kYm94ID0gc2FuZGJveENvbnRhaW5lci5tb3VudDtcbiAgICAgICAgICAgICAgdW5tb3VudFNhbmRib3ggPSBzYW5kYm94Q29udGFpbmVyLnVubW91bnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIF9tZXJnZVdpdGggPSBfbWVyZ2VXaXRoMih7fSwgZ2V0QWRkT25zKGdsb2JhbCwgYXNzZXRQdWJsaWNQYXRoKSwgbGlmZUN5Y2xlcywgZnVuY3Rpb24gKHYxLCB2Mikge1xuICAgICAgICAgICAgICByZXR1cm4gX2NvbmNhdCh2MSAhPT0gbnVsbCAmJiB2MSAhPT0gdm9pZCAwID8gdjEgOiBbXSwgdjIgIT09IG51bGwgJiYgdjIgIT09IHZvaWQgMCA/IHYyIDogW10pO1xuICAgICAgICAgICAgfSksIF9tZXJnZVdpdGgkYmVmb3JlVW5tbyA9IF9tZXJnZVdpdGguYmVmb3JlVW5tb3VudCwgYmVmb3JlVW5tb3VudCA9IF9tZXJnZVdpdGgkYmVmb3JlVW5tbyA9PT0gdm9pZCAwID8gW10gOiBfbWVyZ2VXaXRoJGJlZm9yZVVubW8sIF9tZXJnZVdpdGgkYWZ0ZXJVbm1vdSA9IF9tZXJnZVdpdGguYWZ0ZXJVbm1vdW50LCBhZnRlclVubW91bnQgPSBfbWVyZ2VXaXRoJGFmdGVyVW5tb3UgPT09IHZvaWQgMCA/IFtdIDogX21lcmdlV2l0aCRhZnRlclVubW91LCBfbWVyZ2VXaXRoJGFmdGVyTW91bnQgPSBfbWVyZ2VXaXRoLmFmdGVyTW91bnQsIGFmdGVyTW91bnQgPSBfbWVyZ2VXaXRoJGFmdGVyTW91bnQgPT09IHZvaWQgMCA/IFtdIDogX21lcmdlV2l0aCRhZnRlck1vdW50LCBfbWVyZ2VXaXRoJGJlZm9yZU1vdW4gPSBfbWVyZ2VXaXRoLmJlZm9yZU1vdW50LCBiZWZvcmVNb3VudCA9IF9tZXJnZVdpdGgkYmVmb3JlTW91biA9PT0gdm9pZCAwID8gW10gOiBfbWVyZ2VXaXRoJGJlZm9yZU1vdW4sIF9tZXJnZVdpdGgkYmVmb3JlTG9hZCA9IF9tZXJnZVdpdGguYmVmb3JlTG9hZCwgYmVmb3JlTG9hZCA9IF9tZXJnZVdpdGgkYmVmb3JlTG9hZCA9PT0gdm9pZCAwID8gW10gOiBfbWVyZ2VXaXRoJGJlZm9yZUxvYWQ7XG4gICAgICAgICAgICBfY29udGV4dDE2Lm5leHQgPSAzMztcbiAgICAgICAgICAgIHJldHVybiBleGVjSG9va3NDaGFpbih0b0FycmF5KGJlZm9yZUxvYWQpLCBhcHAsIGdsb2JhbCk7XG5cbiAgICAgICAgICBjYXNlIDMzOlxuICAgICAgICAgICAgX2NvbnRleHQxNi5uZXh0ID0gMzU7XG4gICAgICAgICAgICByZXR1cm4gZXhlY1NjcmlwdHMoZ2xvYmFsLCAhdXNlTG9vc2VTYW5kYm94KTtcblxuICAgICAgICAgIGNhc2UgMzU6XG4gICAgICAgICAgICBzY3JpcHRFeHBvcnRzID0gX2NvbnRleHQxNi5zZW50O1xuICAgICAgICAgICAgX2dldExpZmVjeWNsZXNGcm9tRXhwID0gZ2V0TGlmZWN5Y2xlc0Zyb21FeHBvcnRzKHNjcmlwdEV4cG9ydHMsIGFwcE5hbWUsIGdsb2JhbCwgKF9hID0gc2FuZGJveENvbnRhaW5lciA9PT0gbnVsbCB8fCBzYW5kYm94Q29udGFpbmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzYW5kYm94Q29udGFpbmVyLmluc3RhbmNlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubGF0ZXN0U2V0UHJvcCksIGJvb3RzdHJhcCA9IF9nZXRMaWZlY3ljbGVzRnJvbUV4cC5ib290c3RyYXAsIG1vdW50ID0gX2dldExpZmVjeWNsZXNGcm9tRXhwLm1vdW50LCB1bm1vdW50ID0gX2dldExpZmVjeWNsZXNGcm9tRXhwLnVubW91bnQsIHVwZGF0ZSA9IF9nZXRMaWZlY3ljbGVzRnJvbUV4cC51cGRhdGU7XG4gICAgICAgICAgICBfZ2V0TWljcm9BcHBTdGF0ZUFjdGkgPSBnZXRNaWNyb0FwcFN0YXRlQWN0aW9ucyhhcHBJbnN0YW5jZUlkKSwgb25HbG9iYWxTdGF0ZUNoYW5nZSA9IF9nZXRNaWNyb0FwcFN0YXRlQWN0aS5vbkdsb2JhbFN0YXRlQ2hhbmdlLCBzZXRHbG9iYWxTdGF0ZSA9IF9nZXRNaWNyb0FwcFN0YXRlQWN0aS5zZXRHbG9iYWxTdGF0ZSwgb2ZmR2xvYmFsU3RhdGVDaGFuZ2UgPSBfZ2V0TWljcm9BcHBTdGF0ZUFjdGkub2ZmR2xvYmFsU3RhdGVDaGFuZ2U7IC8vIEZJWE1FIHRlbXBvcmFyeSB3YXlcblxuICAgICAgICAgICAgc3luY0FwcFdyYXBwZXJFbGVtZW50MlNhbmRib3ggPSBmdW5jdGlvbiBzeW5jQXBwV3JhcHBlckVsZW1lbnQyU2FuZGJveChlbGVtZW50KSB7XG4gICAgICAgICAgICAgIHJldHVybiBpbml0aWFsQXBwV3JhcHBlckVsZW1lbnQgPSBlbGVtZW50O1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgcGFyY2VsQ29uZmlnR2V0dGVyID0gZnVuY3Rpb24gcGFyY2VsQ29uZmlnR2V0dGVyKCkge1xuICAgICAgICAgICAgICB2YXIgcmVtb3VudENvbnRhaW5lciA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogaW5pdGlhbENvbnRhaW5lcjtcbiAgICAgICAgICAgICAgdmFyIGFwcFdyYXBwZXJFbGVtZW50ID0gaW5pdGlhbEFwcFdyYXBwZXJFbGVtZW50O1xuICAgICAgICAgICAgICB2YXIgYXBwV3JhcHBlckdldHRlciA9IGdldEFwcFdyYXBwZXJHZXR0ZXIoYXBwTmFtZSwgYXBwSW5zdGFuY2VJZCwgISFsZWdhY3lSZW5kZXIsIHN0cmljdFN0eWxlSXNvbGF0aW9uLCBzY29wZWRDU1MsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYXBwV3JhcHBlckVsZW1lbnQ7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB2YXIgcGFyY2VsQ29uZmlnID0ge1xuICAgICAgICAgICAgICAgIG5hbWU6IGFwcEluc3RhbmNlSWQsXG4gICAgICAgICAgICAgICAgYm9vdHN0cmFwOiBib290c3RyYXAsXG4gICAgICAgICAgICAgICAgbW91bnQ6IFtmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKF90aGlzLCB2b2lkIDAsIHZvaWQgMCwgLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIG1hcmtzO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUyJChfY29udGV4dDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDIucHJldiA9IF9jb250ZXh0Mi5uZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtzID0gcGVyZm9ybWFuY2VHZXRFbnRyaWVzQnlOYW1lKG1hcmtOYW1lLCAnbWFyaycpOyAvLyBtYXJrIGxlbmd0aCBpcyB6ZXJvIG1lYW5zIHRoZSBhcHAgaXMgcmVtb3VudGluZ1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobWFya3MgJiYgIW1hcmtzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJmb3JtYW5jZU1hcmsobWFya05hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQyLnN0b3AoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sIF9jYWxsZWUyKTtcbiAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gX19hd2FpdGVyKF90aGlzLCB2b2lkIDAsIHZvaWQgMCwgLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlMygpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMyQoX2NvbnRleHQzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLm5leHQgPSAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWxpZGF0ZVNpbmd1bGFyTW9kZShzaW5ndWxhciwgYXBwKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLnQwID0gX2NvbnRleHQzLnNlbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIV9jb250ZXh0My50MCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLm5leHQgPSA1O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLnQwID0gcHJldkFwcFVubW91bnRlZERlZmVycmVkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgNTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIV9jb250ZXh0My50MCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQzLm5leHQgPSA3O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5hYnJ1cHQoXCJyZXR1cm5cIiwgcHJldkFwcFVubW91bnRlZERlZmVycmVkLnByb21pc2UpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgNzpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLmFicnVwdChcInJldHVyblwiLCB1bmRlZmluZWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgODpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTMpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIC8vIOa3u+WKoCBtb3VudCBob29rLCDnoa7kv53mr4/mrKHlupTnlKjliqDovb3liY3lrrnlmaggZG9tIOe7k+aehOW3sue7j+iuvue9ruWujOavlVxuICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU0KCkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgdXNlTmV3Q29udGFpbmVyO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU0JChfY29udGV4dDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDQucHJldiA9IF9jb250ZXh0NC5uZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VOZXdDb250YWluZXIgPSByZW1vdW50Q29udGFpbmVyICE9PSBpbml0aWFsQ29udGFpbmVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVzZU5ld0NvbnRhaW5lciB8fCAhYXBwV3JhcHBlckVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVsZW1lbnQgd2lsbCBiZSBkZXN0cm95ZWQgYWZ0ZXIgdW5tb3VudGVkLCB3ZSBuZWVkIHRvIHJlY3JlYXRlIGl0IGlmIGl0IG5vdCBleGlzdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gb3Igd2UgdHJ5IHRvIHJlbW91bnQgaW50byBhIG5ldyBjb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcFdyYXBwZXJFbGVtZW50ID0gY3JlYXRlRWxlbWVudChhcHBDb250ZW50LCBzdHJpY3RTdHlsZUlzb2xhdGlvbiwgc2NvcGVkQ1NTLCBhcHBOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmNBcHBXcmFwcGVyRWxlbWVudDJTYW5kYm94KGFwcFdyYXBwZXJFbGVtZW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZW5kZXIoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudDogYXBwV3JhcHBlckVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyOiByZW1vdW50Q29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgJ21vdW50aW5nJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0NC5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlNCk7XG4gICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgfSwgbW91bnRTYW5kYm94LCAvLyBleGVjIHRoZSBjaGFpbiBhZnRlciByZW5kZXJpbmcgdG8ga2VlcCB0aGUgYmVoYXZpb3Igd2l0aCBiZWZvcmVMb2FkXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTUoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTUkKF9jb250ZXh0NSkge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0NS5wcmV2ID0gX2NvbnRleHQ1Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDUuYWJydXB0KFwicmV0dXJuXCIsIGV4ZWNIb29rc0NoYWluKHRvQXJyYXkoYmVmb3JlTW91bnQpLCBhcHAsIGdsb2JhbCkpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDUuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTUpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uIChwcm9wcykge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTYoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTYkKF9jb250ZXh0Nikge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Ni5wcmV2ID0gX2NvbnRleHQ2Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDYuYWJydXB0KFwicmV0dXJuXCIsIG1vdW50KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcHJvcHMpLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXI6IGFwcFdyYXBwZXJHZXR0ZXIoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldEdsb2JhbFN0YXRlOiBzZXRHbG9iYWxTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uR2xvYmFsU3RhdGVDaGFuZ2U6IG9uR2xvYmFsU3RhdGVDaGFuZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSkpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDYuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTYpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIC8vIGZpbmlzaCBsb2FkaW5nIGFmdGVyIGFwcCBtb3VudGVkXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTcoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTckKF9jb250ZXh0Nykge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Ny5wcmV2ID0gX2NvbnRleHQ3Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDcuYWJydXB0KFwicmV0dXJuXCIsIHJlbmRlcih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiBhcHBXcmFwcGVyRWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyOiByZW1vdW50Q29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgJ21vdW50ZWQnKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Ny5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlNyk7XG4gICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTgoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTgkKF9jb250ZXh0OCkge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0OC5wcmV2ID0gX2NvbnRleHQ4Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDguYWJydXB0KFwicmV0dXJuXCIsIGV4ZWNIb29rc0NoYWluKHRvQXJyYXkoYWZ0ZXJNb3VudCksIGFwcCwgZ2xvYmFsKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0OC5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlOCk7XG4gICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgfSwgLy8gaW5pdGlhbGl6ZSB0aGUgdW5tb3VudCBkZWZlciBhZnRlciBhcHAgbW91bnRlZCBhbmQgcmVzb2x2ZSB0aGUgZGVmZXIgYWZ0ZXIgaXQgdW5tb3VudGVkXG4gICAgICAgICAgICAgICAgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTkoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZTkkKF9jb250ZXh0OSkge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0OS5wcmV2ID0gX2NvbnRleHQ5Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0OS5uZXh0ID0gMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsaWRhdGVTaW5ndWxhck1vZGUoc2luZ3VsYXIsIGFwcCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAyOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghX2NvbnRleHQ5LnNlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0OS5uZXh0ID0gNDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZBcHBVbm1vdW50ZWREZWZlcnJlZCA9IG5ldyBEZWZlcnJlZCgpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgNDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDkuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTkpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUxMCgpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIG1lYXN1cmVOYW1lO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUxMCQoX2NvbnRleHQxMCkge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0MTAucHJldiA9IF9jb250ZXh0MTAubmV4dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWFzdXJlTmFtZSA9IFwiW3FpYW5rdW5dIEFwcCBcIi5jb25jYXQoYXBwSW5zdGFuY2VJZCwgXCIgTG9hZGluZyBDb25zdW1pbmdcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJmb3JtYW5jZU1lYXN1cmUobWVhc3VyZU5hbWUsIG1hcmtOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0MTAuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTEwKTtcbiAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9XSxcbiAgICAgICAgICAgICAgICB1bm1vdW50OiBbZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTExKCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUxMSQoX2NvbnRleHQxMSkge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0MTEucHJldiA9IF9jb250ZXh0MTEubmV4dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0MTEuYWJydXB0KFwicmV0dXJuXCIsIGV4ZWNIb29rc0NoYWluKHRvQXJyYXkoYmVmb3JlVW5tb3VudCksIGFwcCwgZ2xvYmFsKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0MTEuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTExKTtcbiAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9LCBmdW5jdGlvbiAocHJvcHMpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUxMigpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMTIkKF9jb250ZXh0MTIpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDEyLnByZXYgPSBfY29udGV4dDEyLm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDEyLmFicnVwdChcInJldHVyblwiLCB1bm1vdW50KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcHJvcHMpLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXI6IGFwcFdyYXBwZXJHZXR0ZXIoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pKSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAxOlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0MTIuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSwgX2NhbGxlZTEyKTtcbiAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9LCB1bm1vdW50U2FuZGJveCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIF9fYXdhaXRlcihfdGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTEzKCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUxMyQoX2NvbnRleHQxMykge1xuICAgICAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0MTMucHJldiA9IF9jb250ZXh0MTMubmV4dCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0MTMuYWJydXB0KFwicmV0dXJuXCIsIGV4ZWNIb29rc0NoYWluKHRvQXJyYXkoYWZ0ZXJVbm1vdW50KSwgYXBwLCBnbG9iYWwpKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQxMy5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlMTMpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUxNCgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMTQkKF9jb250ZXh0MTQpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDE0LnByZXYgPSBfY29udGV4dDE0Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbmRlcih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXI6IHJlbW91bnRDb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAndW5tb3VudGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb2ZmR2xvYmFsU3RhdGVDaGFuZ2UoYXBwSW5zdGFuY2VJZCk7IC8vIGZvciBnY1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwV3JhcHBlckVsZW1lbnQgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmNBcHBXcmFwcGVyRWxlbWVudDJTYW5kYm94KGFwcFdyYXBwZXJFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQxNC5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlMTQpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUxNSgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMTUkKF9jb250ZXh0MTUpIHtcbiAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dDE1LnByZXYgPSBfY29udGV4dDE1Lm5leHQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0MTUubmV4dCA9IDI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbGlkYXRlU2luZ3VsYXJNb2RlKHNpbmd1bGFyLCBhcHApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDE1LnQwID0gX2NvbnRleHQxNS5zZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFfY29udGV4dDE1LnQwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDE1Lm5leHQgPSA1O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQxNS50MCA9IHByZXZBcHBVbm1vdW50ZWREZWZlcnJlZDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDU6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFfY29udGV4dDE1LnQwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDE1Lm5leHQgPSA3O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldkFwcFVubW91bnRlZERlZmVycmVkLnJlc29sdmUoKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlIDc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgXCJlbmRcIjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQxNS5zdG9wKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LCBfY2FsbGVlMTUpO1xuICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIH1dXG4gICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiB1cGRhdGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICBwYXJjZWxDb25maWcudXBkYXRlID0gdXBkYXRlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHBhcmNlbENvbmZpZztcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHJldHVybiBfY29udGV4dDE2LmFicnVwdChcInJldHVyblwiLCBwYXJjZWxDb25maWdHZXR0ZXIpO1xuXG4gICAgICAgICAgY2FzZSA0MTpcbiAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICByZXR1cm4gX2NvbnRleHQxNi5zdG9wKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCBfY2FsbGVlMTYpO1xuICB9KSk7XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlDQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/loader.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/prefetch.js": /*!*********************************************!*\ !*** ./node_modules/qiankun/es/prefetch.js ***! \*********************************************/ /*! exports provided: prefetchImmediately, doPrefetchStrategy */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"prefetchImmediately\", function() { return prefetchImmediately; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"doPrefetchStrategy\", function() { return doPrefetchStrategy; });\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var import_html_entry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! import-html-entry */ \"./node_modules/import-html-entry/esm/index.js\");\n/* harmony import */ var single_spa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! single-spa */ \"./node_modules/single-spa/lib/esm/single-spa.min.js\");\n\n\n\n/**\n * @author Kuitos\n * @since 2019-02-26\n */\n\n\n // RIC and shim for browsers setTimeout() without it\n\nvar requestIdleCallback = window.requestIdleCallback || function requestIdleCallback(cb) {\n var start = Date.now();\n return setTimeout(function () {\n cb({\n didTimeout: false,\n timeRemaining: function timeRemaining() {\n return Math.max(0, 50 - (Date.now() - start));\n }\n });\n }, 1);\n};\n\nvar isSlowNetwork = navigator.connection ? navigator.connection.saveData || navigator.connection.type !== 'wifi' && navigator.connection.type !== 'ethernet' && /(2|3)g/.test(navigator.connection.effectiveType) : false;\n/**\n * prefetch assets, do nothing while in mobile network\n * @param entry\n * @param opts\n */\n\nfunction prefetch(entry, opts) {\n var _this = this;\n\n if (!navigator.onLine || isSlowNetwork) {\n // Don't prefetch if in a slow network or offline\n return;\n }\n\n requestIdleCallback(function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_2__[\"__awaiter\"])(_this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee() {\n var _yield$importEntry, getExternalScripts, getExternalStyleSheets;\n\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return Object(import_html_entry__WEBPACK_IMPORTED_MODULE_3__[\"importEntry\"])(entry, opts);\n\n case 2:\n _yield$importEntry = _context.sent;\n getExternalScripts = _yield$importEntry.getExternalScripts;\n getExternalStyleSheets = _yield$importEntry.getExternalStyleSheets;\n requestIdleCallback(getExternalStyleSheets);\n requestIdleCallback(getExternalScripts);\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n });\n}\n\nfunction prefetchAfterFirstMounted(apps, opts) {\n window.addEventListener('single-spa:first-mount', function listener() {\n var notLoadedApps = apps.filter(function (app) {\n return Object(single_spa__WEBPACK_IMPORTED_MODULE_4__[\"getAppStatus\"])(app.name) === single_spa__WEBPACK_IMPORTED_MODULE_4__[\"NOT_LOADED\"];\n });\n\n if (false) { var mountedApps; }\n\n notLoadedApps.forEach(function (_ref) {\n var entry = _ref.entry;\n return prefetch(entry, opts);\n });\n window.removeEventListener('single-spa:first-mount', listener);\n });\n}\n\nfunction prefetchImmediately(apps, opts) {\n if (false) {}\n\n apps.forEach(function (_ref2) {\n var entry = _ref2.entry;\n return prefetch(entry, opts);\n });\n}\nfunction doPrefetchStrategy(apps, prefetchStrategy, importEntryOpts) {\n var _this2 = this;\n\n var appsName2Apps = function appsName2Apps(names) {\n return apps.filter(function (app) {\n return names.includes(app.name);\n });\n };\n\n if (Array.isArray(prefetchStrategy)) {\n prefetchAfterFirstMounted(appsName2Apps(prefetchStrategy), importEntryOpts);\n } else if (lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(prefetchStrategy)) {\n (function () {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_2__[\"__awaiter\"])(_this2, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee2() {\n var _yield$prefetchStrate, _yield$prefetchStrate2, criticalAppNames, _yield$prefetchStrate3, minorAppsName;\n\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return prefetchStrategy(apps);\n\n case 2:\n _yield$prefetchStrate = _context2.sent;\n _yield$prefetchStrate2 = _yield$prefetchStrate.criticalAppNames;\n criticalAppNames = _yield$prefetchStrate2 === void 0 ? [] : _yield$prefetchStrate2;\n _yield$prefetchStrate3 = _yield$prefetchStrate.minorAppsName;\n minorAppsName = _yield$prefetchStrate3 === void 0 ? [] : _yield$prefetchStrate3;\n prefetchImmediately(appsName2Apps(criticalAppNames), importEntryOpts);\n prefetchAfterFirstMounted(appsName2Apps(minorAppsName), importEntryOpts);\n\n case 9:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n })();\n } else {\n switch (prefetchStrategy) {\n case true:\n prefetchAfterFirstMounted(apps, importEntryOpts);\n break;\n\n case 'all':\n prefetchImmediately(apps, importEntryOpts);\n break;\n\n default:\n break;\n }\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9wcmVmZXRjaC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3ByZWZldGNoLmpzPzYwMzYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9pc0Z1bmN0aW9uIGZyb20gXCJsb2Rhc2gvaXNGdW5jdGlvblwiO1xuaW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSBcIkBiYWJlbC9ydW50aW1lL3JlZ2VuZXJhdG9yXCI7XG5cbi8qKlxuICogQGF1dGhvciBLdWl0b3NcbiAqIEBzaW5jZSAyMDE5LTAyLTI2XG4gKi9cbmltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IHsgaW1wb3J0RW50cnkgfSBmcm9tICdpbXBvcnQtaHRtbC1lbnRyeSc7XG5pbXBvcnQgeyBnZXRBcHBTdGF0dXMsIGdldE1vdW50ZWRBcHBzLCBOT1RfTE9BREVEIH0gZnJvbSAnc2luZ2xlLXNwYSc7IC8vIFJJQyBhbmQgc2hpbSBmb3IgYnJvd3NlcnMgc2V0VGltZW91dCgpIHdpdGhvdXQgaXRcblxudmFyIHJlcXVlc3RJZGxlQ2FsbGJhY2sgPSB3aW5kb3cucmVxdWVzdElkbGVDYWxsYmFjayB8fCBmdW5jdGlvbiByZXF1ZXN0SWRsZUNhbGxiYWNrKGNiKSB7XG4gIHZhciBzdGFydCA9IERhdGUubm93KCk7XG4gIHJldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICBjYih7XG4gICAgICBkaWRUaW1lb3V0OiBmYWxzZSxcbiAgICAgIHRpbWVSZW1haW5pbmc6IGZ1bmN0aW9uIHRpbWVSZW1haW5pbmcoKSB7XG4gICAgICAgIHJldHVybiBNYXRoLm1heCgwLCA1MCAtIChEYXRlLm5vdygpIC0gc3RhcnQpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSwgMSk7XG59O1xuXG52YXIgaXNTbG93TmV0d29yayA9IG5hdmlnYXRvci5jb25uZWN0aW9uID8gbmF2aWdhdG9yLmNvbm5lY3Rpb24uc2F2ZURhdGEgfHwgbmF2aWdhdG9yLmNvbm5lY3Rpb24udHlwZSAhPT0gJ3dpZmknICYmIG5hdmlnYXRvci5jb25uZWN0aW9uLnR5cGUgIT09ICdldGhlcm5ldCcgJiYgLygyfDMpZy8udGVzdChuYXZpZ2F0b3IuY29ubmVjdGlvbi5lZmZlY3RpdmVUeXBlKSA6IGZhbHNlO1xuLyoqXG4gKiBwcmVmZXRjaCBhc3NldHMsIGRvIG5vdGhpbmcgd2hpbGUgaW4gbW9iaWxlIG5ldHdvcmtcbiAqIEBwYXJhbSBlbnRyeVxuICogQHBhcmFtIG9wdHNcbiAqL1xuXG5mdW5jdGlvbiBwcmVmZXRjaChlbnRyeSwgb3B0cykge1xuICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gIGlmICghbmF2aWdhdG9yLm9uTGluZSB8fCBpc1Nsb3dOZXR3b3JrKSB7XG4gICAgLy8gRG9uJ3QgcHJlZmV0Y2ggaWYgaW4gYSBzbG93IG5ldHdvcmsgb3Igb2ZmbGluZVxuICAgIHJldHVybjtcbiAgfVxuXG4gIHJlcXVlc3RJZGxlQ2FsbGJhY2soZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIoX3RoaXMsIHZvaWQgMCwgdm9pZCAwLCAvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUoKSB7XG4gICAgICB2YXIgX3lpZWxkJGltcG9ydEVudHJ5LCBnZXRFeHRlcm5hbFNjcmlwdHMsIGdldEV4dGVybmFsU3R5bGVTaGVldHM7XG5cbiAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHtcbiAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAyO1xuICAgICAgICAgICAgICByZXR1cm4gaW1wb3J0RW50cnkoZW50cnksIG9wdHMpO1xuXG4gICAgICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgICAgIF95aWVsZCRpbXBvcnRFbnRyeSA9IF9jb250ZXh0LnNlbnQ7XG4gICAgICAgICAgICAgIGdldEV4dGVybmFsU2NyaXB0cyA9IF95aWVsZCRpbXBvcnRFbnRyeS5nZXRFeHRlcm5hbFNjcmlwdHM7XG4gICAgICAgICAgICAgIGdldEV4dGVybmFsU3R5bGVTaGVldHMgPSBfeWllbGQkaW1wb3J0RW50cnkuZ2V0RXh0ZXJuYWxTdHlsZVNoZWV0cztcbiAgICAgICAgICAgICAgcmVxdWVzdElkbGVDYWxsYmFjayhnZXRFeHRlcm5hbFN0eWxlU2hlZXRzKTtcbiAgICAgICAgICAgICAgcmVxdWVzdElkbGVDYWxsYmFjayhnZXRFeHRlcm5hbFNjcmlwdHMpO1xuXG4gICAgICAgICAgICBjYXNlIDc6XG4gICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LCBfY2FsbGVlKTtcbiAgICB9KSk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBwcmVmZXRjaEFmdGVyRmlyc3RNb3VudGVkKGFwcHMsIG9wdHMpIHtcbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3NpbmdsZS1zcGE6Zmlyc3QtbW91bnQnLCBmdW5jdGlvbiBsaXN0ZW5lcigpIHtcbiAgICB2YXIgbm90TG9hZGVkQXBwcyA9IGFwcHMuZmlsdGVyKGZ1bmN0aW9uIChhcHApIHtcbiAgICAgIHJldHVybiBnZXRBcHBTdGF0dXMoYXBwLm5hbWUpID09PSBOT1RfTE9BREVEO1xuICAgIH0pO1xuXG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICB2YXIgbW91bnRlZEFwcHMgPSBnZXRNb3VudGVkQXBwcygpO1xuICAgICAgY29uc29sZS5sb2coXCJbcWlhbmt1bl0gcHJlZmV0Y2ggc3RhcnRpbmcgYWZ0ZXIgXCIuY29uY2F0KG1vdW50ZWRBcHBzLCBcIiBtb3VudGVkLi4uXCIpLCBub3RMb2FkZWRBcHBzKTtcbiAgICB9XG5cbiAgICBub3RMb2FkZWRBcHBzLmZvckVhY2goZnVuY3Rpb24gKF9yZWYpIHtcbiAgICAgIHZhciBlbnRyeSA9IF9yZWYuZW50cnk7XG4gICAgICByZXR1cm4gcHJlZmV0Y2goZW50cnksIG9wdHMpO1xuICAgIH0pO1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzaW5nbGUtc3BhOmZpcnN0LW1vdW50JywgbGlzdGVuZXIpO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByZWZldGNoSW1tZWRpYXRlbHkoYXBwcywgb3B0cykge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICBjb25zb2xlLmxvZygnW3FpYW5rdW5dIHByZWZldGNoIHN0YXJ0aW5nIGZvciBhcHBzLi4uJywgYXBwcyk7XG4gIH1cblxuICBhcHBzLmZvckVhY2goZnVuY3Rpb24gKF9yZWYyKSB7XG4gICAgdmFyIGVudHJ5ID0gX3JlZjIuZW50cnk7XG4gICAgcmV0dXJuIHByZWZldGNoKGVudHJ5LCBvcHRzKTtcbiAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gZG9QcmVmZXRjaFN0cmF0ZWd5KGFwcHMsIHByZWZldGNoU3RyYXRlZ3ksIGltcG9ydEVudHJ5T3B0cykge1xuICB2YXIgX3RoaXMyID0gdGhpcztcblxuICB2YXIgYXBwc05hbWUyQXBwcyA9IGZ1bmN0aW9uIGFwcHNOYW1lMkFwcHMobmFtZXMpIHtcbiAgICByZXR1cm4gYXBwcy5maWx0ZXIoZnVuY3Rpb24gKGFwcCkge1xuICAgICAgcmV0dXJuIG5hbWVzLmluY2x1ZGVzKGFwcC5uYW1lKTtcbiAgICB9KTtcbiAgfTtcblxuICBpZiAoQXJyYXkuaXNBcnJheShwcmVmZXRjaFN0cmF0ZWd5KSkge1xuICAgIHByZWZldGNoQWZ0ZXJGaXJzdE1vdW50ZWQoYXBwc05hbWUyQXBwcyhwcmVmZXRjaFN0cmF0ZWd5KSwgaW1wb3J0RW50cnlPcHRzKTtcbiAgfSBlbHNlIGlmIChfaXNGdW5jdGlvbihwcmVmZXRjaFN0cmF0ZWd5KSkge1xuICAgIChmdW5jdGlvbiAoKSB7XG4gICAgICByZXR1cm4gX19hd2FpdGVyKF90aGlzMiwgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7XG4gICAgICAgIHZhciBfeWllbGQkcHJlZmV0Y2hTdHJhdGUsIF95aWVsZCRwcmVmZXRjaFN0cmF0ZTIsIGNyaXRpY2FsQXBwTmFtZXMsIF95aWVsZCRwcmVmZXRjaFN0cmF0ZTMsIG1pbm9yQXBwc05hbWU7XG5cbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7XG4gICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkge1xuICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSAyO1xuICAgICAgICAgICAgICAgIHJldHVybiBwcmVmZXRjaFN0cmF0ZWd5KGFwcHMpO1xuXG4gICAgICAgICAgICAgIGNhc2UgMjpcbiAgICAgICAgICAgICAgICBfeWllbGQkcHJlZmV0Y2hTdHJhdGUgPSBfY29udGV4dDIuc2VudDtcbiAgICAgICAgICAgICAgICBfeWllbGQkcHJlZmV0Y2hTdHJhdGUyID0gX3lpZWxkJHByZWZldGNoU3RyYXRlLmNyaXRpY2FsQXBwTmFtZXM7XG4gICAgICAgICAgICAgICAgY3JpdGljYWxBcHBOYW1lcyA9IF95aWVsZCRwcmVmZXRjaFN0cmF0ZTIgPT09IHZvaWQgMCA/IFtdIDogX3lpZWxkJHByZWZldGNoU3RyYXRlMjtcbiAgICAgICAgICAgICAgICBfeWllbGQkcHJlZmV0Y2hTdHJhdGUzID0gX3lpZWxkJHByZWZldGNoU3RyYXRlLm1pbm9yQXBwc05hbWU7XG4gICAgICAgICAgICAgICAgbWlub3JBcHBzTmFtZSA9IF95aWVsZCRwcmVmZXRjaFN0cmF0ZTMgPT09IHZvaWQgMCA/IFtdIDogX3lpZWxkJHByZWZldGNoU3RyYXRlMztcbiAgICAgICAgICAgICAgICBwcmVmZXRjaEltbWVkaWF0ZWx5KGFwcHNOYW1lMkFwcHMoY3JpdGljYWxBcHBOYW1lcyksIGltcG9ydEVudHJ5T3B0cyk7XG4gICAgICAgICAgICAgICAgcHJlZmV0Y2hBZnRlckZpcnN0TW91bnRlZChhcHBzTmFtZTJBcHBzKG1pbm9yQXBwc05hbWUpLCBpbXBvcnRFbnRyeU9wdHMpO1xuXG4gICAgICAgICAgICAgIGNhc2UgOTpcbiAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSwgX2NhbGxlZTIpO1xuICAgICAgfSkpO1xuICAgIH0pKCk7XG4gIH0gZWxzZSB7XG4gICAgc3dpdGNoIChwcmVmZXRjaFN0cmF0ZWd5KSB7XG4gICAgICBjYXNlIHRydWU6XG4gICAgICAgIHByZWZldGNoQWZ0ZXJGaXJzdE1vdW50ZWQoYXBwcywgaW1wb3J0RW50cnlPcHRzKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgJ2FsbCc6XG4gICAgICAgIHByZWZldGNoSW1tZWRpYXRlbHkoYXBwcywgaW1wb3J0RW50cnlPcHRzKTtcbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/prefetch.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/common.js": /*!***************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/common.js ***! \***************************************************/ /*! exports provided: getCurrentRunningSandboxProxy, setCurrentRunningSandboxProxy, getTargetValue, getProxyPropertyValue */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getCurrentRunningSandboxProxy\", function() { return getCurrentRunningSandboxProxy; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setCurrentRunningSandboxProxy\", function() { return setCurrentRunningSandboxProxy; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getTargetValue\", function() { return getTargetValue; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getProxyPropertyValue\", function() { return getProxyPropertyValue; });\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ \"./node_modules/qiankun/es/utils.js\");\n/**\n * @author Kuitos\n * @since 2020-04-13\n */\n\nvar currentRunningSandboxProxy;\nfunction getCurrentRunningSandboxProxy() {\n return currentRunningSandboxProxy;\n}\nfunction setCurrentRunningSandboxProxy(proxy) {\n currentRunningSandboxProxy = proxy;\n}\nvar functionBoundedValueMap = new WeakMap();\nfunction getTargetValue(target, value) {\n var cachedBoundFunction = functionBoundedValueMap.get(value);\n\n if (cachedBoundFunction) {\n return cachedBoundFunction;\n }\n /*\n 仅绑定 isCallable && !isBoundedFunction && !isConstructable 的函数对象,如 window.console、window.atob 这类。目前没有完美的检测方式,这里通过 prototype 中是否还有可枚举的拓展方法的方式来判断\n @warning 这里不要随意替换成别的判断方式,因为可能触发一些 edge case(比如在 lodash.isFunction 在 iframe 上下文中可能由于调用了 top window 对象触发的安全异常)\n */\n\n\n if (Object(_utils__WEBPACK_IMPORTED_MODULE_0__[\"isCallable\"])(value) && !Object(_utils__WEBPACK_IMPORTED_MODULE_0__[\"isBoundedFunction\"])(value) && !Object(_utils__WEBPACK_IMPORTED_MODULE_0__[\"isConstructable\"])(value)) {\n var boundValue = Function.prototype.bind.call(value, target); // some callable function has custom fields, we need to copy the enumerable props to boundValue. such as moment function.\n // use for..in rather than Object.keys.forEach for performance reason\n // eslint-disable-next-line guard-for-in,no-restricted-syntax\n\n for (var key in value) {\n boundValue[key] = value[key];\n } // copy prototype if bound function not have\n // mostly a bound function have no own prototype, but it not absolute in some old version browser, see https://github.com/umijs/qiankun/issues/1121\n\n\n if (value.hasOwnProperty('prototype') && !boundValue.hasOwnProperty('prototype')) boundValue.prototype = value.prototype;\n functionBoundedValueMap.set(value, boundValue);\n return boundValue;\n }\n\n return value;\n}\nvar getterInvocationResultMap = new WeakMap();\nfunction getProxyPropertyValue(getter) {\n var getterResult = getterInvocationResultMap.get(getter);\n\n if (!getterResult) {\n var result = getter();\n getterInvocationResultMap.set(getter, result);\n return result;\n }\n\n return getterResult;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L2NvbW1vbi5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvY29tbW9uLmpzPzhhMjQiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAYXV0aG9yIEt1aXRvc1xuICogQHNpbmNlIDIwMjAtMDQtMTNcbiAqL1xuaW1wb3J0IHsgaXNCb3VuZGVkRnVuY3Rpb24sIGlzQ2FsbGFibGUsIGlzQ29uc3RydWN0YWJsZSB9IGZyb20gJy4uL3V0aWxzJztcbnZhciBjdXJyZW50UnVubmluZ1NhbmRib3hQcm94eTtcbmV4cG9ydCBmdW5jdGlvbiBnZXRDdXJyZW50UnVubmluZ1NhbmRib3hQcm94eSgpIHtcbiAgcmV0dXJuIGN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5O1xufVxuZXhwb3J0IGZ1bmN0aW9uIHNldEN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5KHByb3h5KSB7XG4gIGN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5ID0gcHJveHk7XG59XG52YXIgZnVuY3Rpb25Cb3VuZGVkVmFsdWVNYXAgPSBuZXcgV2Vha01hcCgpO1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRhcmdldFZhbHVlKHRhcmdldCwgdmFsdWUpIHtcbiAgdmFyIGNhY2hlZEJvdW5kRnVuY3Rpb24gPSBmdW5jdGlvbkJvdW5kZWRWYWx1ZU1hcC5nZXQodmFsdWUpO1xuXG4gIGlmIChjYWNoZWRCb3VuZEZ1bmN0aW9uKSB7XG4gICAgcmV0dXJuIGNhY2hlZEJvdW5kRnVuY3Rpb247XG4gIH1cbiAgLypcbiAgICDku4Xnu5HlrpogaXNDYWxsYWJsZSAmJiAhaXNCb3VuZGVkRnVuY3Rpb24gJiYgIWlzQ29uc3RydWN0YWJsZSDnmoTlh73mlbDlr7nosaHvvIzlpoIgd2luZG93LmNvbnNvbGXjgIF3aW5kb3cuYXRvYiDov5nnsbvjgILnm67liY3msqHmnInlroznvo7nmoTmo4DmtYvmlrnlvI/vvIzov5nph4zpgJrov4cgcHJvdG90eXBlIOS4reaYr+WQpui/mOacieWPr+aemuS4vueahOaLk+WxleaWueazleeahOaWueW8j+adpeWIpOaWrVxuICAgIEB3YXJuaW5nIOi/memHjOS4jeimgemaj+aEj+abv+aNouaIkOWIq+eahOWIpOaWreaWueW8j++8jOWboOS4uuWPr+iDveinpuWPkeS4gOS6myBlZGdlIGNhc2XvvIjmr5TlpoLlnKggbG9kYXNoLmlzRnVuY3Rpb24g5ZyoIGlmcmFtZSDkuIrkuIvmlofkuK3lj6/og73nlLHkuo7osIPnlKjkuoYgdG9wIHdpbmRvdyDlr7nosaHop6blj5HnmoTlronlhajlvILluLjvvIlcbiAgICovXG5cblxuICBpZiAoaXNDYWxsYWJsZSh2YWx1ZSkgJiYgIWlzQm91bmRlZEZ1bmN0aW9uKHZhbHVlKSAmJiAhaXNDb25zdHJ1Y3RhYmxlKHZhbHVlKSkge1xuICAgIHZhciBib3VuZFZhbHVlID0gRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQuY2FsbCh2YWx1ZSwgdGFyZ2V0KTsgLy8gc29tZSBjYWxsYWJsZSBmdW5jdGlvbiBoYXMgY3VzdG9tIGZpZWxkcywgd2UgbmVlZCB0byBjb3B5IHRoZSBlbnVtZXJhYmxlIHByb3BzIHRvIGJvdW5kVmFsdWUuIHN1Y2ggYXMgbW9tZW50IGZ1bmN0aW9uLlxuICAgIC8vIHVzZSBmb3IuLmluIHJhdGhlciB0aGFuIE9iamVjdC5rZXlzLmZvckVhY2ggZm9yIHBlcmZvcm1hbmNlIHJlYXNvblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBndWFyZC1mb3ItaW4sbm8tcmVzdHJpY3RlZC1zeW50YXhcblxuICAgIGZvciAodmFyIGtleSBpbiB2YWx1ZSkge1xuICAgICAgYm91bmRWYWx1ZVtrZXldID0gdmFsdWVba2V5XTtcbiAgICB9IC8vIGNvcHkgcHJvdG90eXBlIGlmIGJvdW5kIGZ1bmN0aW9uIG5vdCBoYXZlXG4gICAgLy8gbW9zdGx5IGEgYm91bmQgZnVuY3Rpb24gaGF2ZSBubyBvd24gcHJvdG90eXBlLCBidXQgaXQgbm90IGFic29sdXRlIGluIHNvbWUgb2xkIHZlcnNpb24gYnJvd3Nlciwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS91bWlqcy9xaWFua3VuL2lzc3Vlcy8xMTIxXG5cblxuICAgIGlmICh2YWx1ZS5oYXNPd25Qcm9wZXJ0eSgncHJvdG90eXBlJykgJiYgIWJvdW5kVmFsdWUuaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpKSBib3VuZFZhbHVlLnByb3RvdHlwZSA9IHZhbHVlLnByb3RvdHlwZTtcbiAgICBmdW5jdGlvbkJvdW5kZWRWYWx1ZU1hcC5zZXQodmFsdWUsIGJvdW5kVmFsdWUpO1xuICAgIHJldHVybiBib3VuZFZhbHVlO1xuICB9XG5cbiAgcmV0dXJuIHZhbHVlO1xufVxudmFyIGdldHRlckludm9jYXRpb25SZXN1bHRNYXAgPSBuZXcgV2Vha01hcCgpO1xuZXhwb3J0IGZ1bmN0aW9uIGdldFByb3h5UHJvcGVydHlWYWx1ZShnZXR0ZXIpIHtcbiAgdmFyIGdldHRlclJlc3VsdCA9IGdldHRlckludm9jYXRpb25SZXN1bHRNYXAuZ2V0KGdldHRlcik7XG5cbiAgaWYgKCFnZXR0ZXJSZXN1bHQpIHtcbiAgICB2YXIgcmVzdWx0ID0gZ2V0dGVyKCk7XG4gICAgZ2V0dGVySW52b2NhdGlvblJlc3VsdE1hcC5zZXQoZ2V0dGVyLCByZXN1bHQpO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICByZXR1cm4gZ2V0dGVyUmVzdWx0O1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/common.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/index.js": /*!**************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/index.js ***! \**************************************************/ /*! exports provided: css, createSandboxContainer */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createSandboxContainer\", function() { return createSandboxContainer; });\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/regenerator */ \"./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\");\n/* harmony import */ var _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _legacy_sandbox__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./legacy/sandbox */ \"./node_modules/qiankun/es/sandbox/legacy/sandbox.js\");\n/* harmony import */ var _patchers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./patchers */ \"./node_modules/qiankun/es/sandbox/patchers/index.js\");\n/* harmony import */ var _proxySandbox__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./proxySandbox */ \"./node_modules/qiankun/es/sandbox/proxySandbox.js\");\n/* harmony import */ var _snapshotSandbox__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./snapshotSandbox */ \"./node_modules/qiankun/es/sandbox/snapshotSandbox.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"css\", function() { return _patchers__WEBPACK_IMPORTED_MODULE_4__[\"css\"]; });\n\n\n\n\n\n\n\n\n\n/**\n * 生成应用运行时沙箱\n *\n * 沙箱分两个类型:\n * 1. app 环境沙箱\n * app 环境沙箱是指应用初始化过之后,应用会在什么样的上下文环境运行。每个应用的环境沙箱只会初始化一次,因为子应用只会触发一次 bootstrap 。\n * 子应用在切换时,实际上切换的是 app 环境沙箱。\n * 2. render 沙箱\n * 子应用在 app mount 开始前生成好的的沙箱。每次子应用切换过后,render 沙箱都会重现初始化。\n *\n * 这么设计的目的是为了保证每个子应用切换回来之后,还能运行在应用 bootstrap 之后的环境下。\n *\n * @param appName\n * @param elementGetter\n * @param scopedCSS\n * @param useLooseSandbox\n * @param excludeAssetFilter\n */\n\nfunction createSandboxContainer(appName, elementGetter, scopedCSS, useLooseSandbox, excludeAssetFilter) {\n var sandbox;\n\n if (window.Proxy) {\n sandbox = useLooseSandbox ? new _legacy_sandbox__WEBPACK_IMPORTED_MODULE_3__[\"default\"](appName) : new _proxySandbox__WEBPACK_IMPORTED_MODULE_5__[\"default\"](appName);\n } else {\n sandbox = new _snapshotSandbox__WEBPACK_IMPORTED_MODULE_6__[\"default\"](appName);\n } // some side effect could be be invoked while bootstrapping, such as dynamic stylesheet injection with style-loader, especially during the development phase\n\n\n var bootstrappingFreers = Object(_patchers__WEBPACK_IMPORTED_MODULE_4__[\"patchAtBootstrapping\"])(appName, elementGetter, sandbox, scopedCSS, excludeAssetFilter); // mounting freers are one-off and should be re-init at every mounting time\n\n var mountingFreers = [];\n var sideEffectsRebuilders = [];\n return {\n instance: sandbox,\n\n /**\n * 沙箱被 mount\n * 可能是从 bootstrap 状态进入的 mount\n * 也可能是从 unmount 之后再次唤醒进入 mount\n */\n mount: function mount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_2__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee() {\n var sideEffectsRebuildersAtBootstrapping, sideEffectsRebuildersAtMounting;\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n /* ------------------------------------------ 因为有上下文依赖(window),以下代码执行顺序不能变 ------------------------------------------ */\n\n /* ------------------------------------------ 1. 启动/恢复 沙箱------------------------------------------ */\n sandbox.active();\n sideEffectsRebuildersAtBootstrapping = sideEffectsRebuilders.slice(0, bootstrappingFreers.length);\n sideEffectsRebuildersAtMounting = sideEffectsRebuilders.slice(bootstrappingFreers.length); // must rebuild the side effects which added at bootstrapping firstly to recovery to nature state\n\n if (sideEffectsRebuildersAtBootstrapping.length) {\n sideEffectsRebuildersAtBootstrapping.forEach(function (rebuild) {\n return rebuild();\n });\n }\n /* ------------------------------------------ 2. 开启全局变量补丁 ------------------------------------------*/\n // render 沙箱启动时开始劫持各类全局监听,尽量不要在应用初始化阶段有 事件监听/定时器 等副作用\n\n\n mountingFreers = Object(_patchers__WEBPACK_IMPORTED_MODULE_4__[\"patchAtMounting\"])(appName, elementGetter, sandbox, scopedCSS, excludeAssetFilter);\n /* ------------------------------------------ 3. 重置一些初始化时的副作用 ------------------------------------------*/\n // 存在 rebuilder 则表明有些副作用需要重建\n\n if (sideEffectsRebuildersAtMounting.length) {\n sideEffectsRebuildersAtMounting.forEach(function (rebuild) {\n return rebuild();\n });\n } // clean up rebuilders\n\n\n sideEffectsRebuilders = [];\n\n case 7:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n },\n\n /**\n * 恢复 global 状态,使其能回到应用加载之前的状态\n */\n unmount: function unmount() {\n return Object(tslib__WEBPACK_IMPORTED_MODULE_2__[\"__awaiter\"])(this, void 0, void 0, /*#__PURE__*/_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.mark(function _callee2() {\n return _babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // record the rebuilders of window side effects (event listeners or timers)\n // note that the frees of mounting phase are one-off as it will be re-init at next mounting\n sideEffectsRebuilders = [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(bootstrappingFreers), Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(mountingFreers)).map(function (free) {\n return free();\n });\n sandbox.inactive();\n\n case 2:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n }\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L2luZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9pbmRleC5qcz8yYmZiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5XCI7XG5pbXBvcnQgX3JlZ2VuZXJhdG9yUnVudGltZSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3JcIjtcbmltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IExlZ2FjeVNhbmRib3ggZnJvbSAnLi9sZWdhY3kvc2FuZGJveCc7XG5pbXBvcnQgeyBwYXRjaEF0Qm9vdHN0cmFwcGluZywgcGF0Y2hBdE1vdW50aW5nIH0gZnJvbSAnLi9wYXRjaGVycyc7XG5pbXBvcnQgUHJveHlTYW5kYm94IGZyb20gJy4vcHJveHlTYW5kYm94JztcbmltcG9ydCBTbmFwc2hvdFNhbmRib3ggZnJvbSAnLi9zbmFwc2hvdFNhbmRib3gnO1xuZXhwb3J0IHsgY3NzIH0gZnJvbSAnLi9wYXRjaGVycyc7XG4vKipcbiAqIOeUn+aIkOW6lOeUqOi/kOihjOaXtuaymeeusVxuICpcbiAqIOaymeeuseWIhuS4pOS4quexu+Wei++8mlxuICogMS4gYXBwIOeOr+Wig+aymeeusVxuICogIGFwcCDnjq/looPmspnnrrHmmK/mjIflupTnlKjliJ3lp4vljJbov4fkuYvlkI7vvIzlupTnlKjkvJrlnKjku4DkuYjmoLfnmoTkuIrkuIvmlofnjq/looPov5DooYzjgILmr4/kuKrlupTnlKjnmoTnjq/looPmspnnrrHlj6rkvJrliJ3lp4vljJbkuIDmrKHvvIzlm6DkuLrlrZDlupTnlKjlj6rkvJrop6blj5HkuIDmrKEgYm9vdHN0cmFwIOOAglxuICogIOWtkOW6lOeUqOWcqOWIh+aNouaXtu+8jOWunumZheS4iuWIh+aNoueahOaYryBhcHAg546v5aKD5rKZ566x44CCXG4gKiAyLiByZW5kZXIg5rKZ566xXG4gKiAg5a2Q5bqU55So5ZyoIGFwcCBtb3VudCDlvIDlp4vliY3nlJ/miJDlpb3nmoTnmoTmspnnrrHjgILmr4/mrKHlrZDlupTnlKjliIfmjaLov4flkI7vvIxyZW5kZXIg5rKZ566x6YO95Lya6YeN546w5Yid5aeL5YyW44CCXG4gKlxuICog6L+Z5LmI6K6+6K6h55qE55uu55qE5piv5Li65LqG5L+d6K+B5q+P5Liq5a2Q5bqU55So5YiH5o2i5Zue5p2l5LmL5ZCO77yM6L+Y6IO96L+Q6KGM5Zyo5bqU55SoIGJvb3RzdHJhcCDkuYvlkI7nmoTnjq/looPkuIvjgIJcbiAqXG4gKiBAcGFyYW0gYXBwTmFtZVxuICogQHBhcmFtIGVsZW1lbnRHZXR0ZXJcbiAqIEBwYXJhbSBzY29wZWRDU1NcbiAqIEBwYXJhbSB1c2VMb29zZVNhbmRib3hcbiAqIEBwYXJhbSBleGNsdWRlQXNzZXRGaWx0ZXJcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2FuZGJveENvbnRhaW5lcihhcHBOYW1lLCBlbGVtZW50R2V0dGVyLCBzY29wZWRDU1MsIHVzZUxvb3NlU2FuZGJveCwgZXhjbHVkZUFzc2V0RmlsdGVyKSB7XG4gIHZhciBzYW5kYm94O1xuXG4gIGlmICh3aW5kb3cuUHJveHkpIHtcbiAgICBzYW5kYm94ID0gdXNlTG9vc2VTYW5kYm94ID8gbmV3IExlZ2FjeVNhbmRib3goYXBwTmFtZSkgOiBuZXcgUHJveHlTYW5kYm94KGFwcE5hbWUpO1xuICB9IGVsc2Uge1xuICAgIHNhbmRib3ggPSBuZXcgU25hcHNob3RTYW5kYm94KGFwcE5hbWUpO1xuICB9IC8vIHNvbWUgc2lkZSBlZmZlY3QgY291bGQgYmUgYmUgaW52b2tlZCB3aGlsZSBib290c3RyYXBwaW5nLCBzdWNoIGFzIGR5bmFtaWMgc3R5bGVzaGVldCBpbmplY3Rpb24gd2l0aCBzdHlsZS1sb2FkZXIsIGVzcGVjaWFsbHkgZHVyaW5nIHRoZSBkZXZlbG9wbWVudCBwaGFzZVxuXG5cbiAgdmFyIGJvb3RzdHJhcHBpbmdGcmVlcnMgPSBwYXRjaEF0Qm9vdHN0cmFwcGluZyhhcHBOYW1lLCBlbGVtZW50R2V0dGVyLCBzYW5kYm94LCBzY29wZWRDU1MsIGV4Y2x1ZGVBc3NldEZpbHRlcik7IC8vIG1vdW50aW5nIGZyZWVycyBhcmUgb25lLW9mZiBhbmQgc2hvdWxkIGJlIHJlLWluaXQgYXQgZXZlcnkgbW91bnRpbmcgdGltZVxuXG4gIHZhciBtb3VudGluZ0ZyZWVycyA9IFtdO1xuICB2YXIgc2lkZUVmZmVjdHNSZWJ1aWxkZXJzID0gW107XG4gIHJldHVybiB7XG4gICAgaW5zdGFuY2U6IHNhbmRib3gsXG5cbiAgICAvKipcbiAgICAgKiDmspnnrrHooqsgbW91bnRcbiAgICAgKiDlj6/og73mmK/ku44gYm9vdHN0cmFwIOeKtuaAgei/m+WFpeeahCBtb3VudFxuICAgICAqIOS5n+WPr+iDveaYr+S7jiB1bm1vdW50IOS5i+WQjuWGjeasoeWUpOmGkui/m+WFpSBtb3VudFxuICAgICAqL1xuICAgIG1vdW50OiBmdW5jdGlvbiBtb3VudCgpIHtcbiAgICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHtcbiAgICAgICAgdmFyIHNpZGVFZmZlY3RzUmVidWlsZGVyc0F0Qm9vdHN0cmFwcGluZywgc2lkZUVmZmVjdHNSZWJ1aWxkZXJzQXRNb3VudGluZztcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkge1xuICAgICAgICAgIHdoaWxlICgxKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7XG4gICAgICAgICAgICAgIGNhc2UgMDpcbiAgICAgICAgICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g5Zug5Li65pyJ5LiK5LiL5paH5L6d6LWW77yId2luZG9377yJ77yM5Lul5LiL5Luj56CB5omn6KGM6aG65bqP5LiN6IO95Y+YIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIDEuIOWQr+WKqC/mgaLlpI0g5rKZ566xLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgICAgICAgICAgICAgc2FuZGJveC5hY3RpdmUoKTtcbiAgICAgICAgICAgICAgICBzaWRlRWZmZWN0c1JlYnVpbGRlcnNBdEJvb3RzdHJhcHBpbmcgPSBzaWRlRWZmZWN0c1JlYnVpbGRlcnMuc2xpY2UoMCwgYm9vdHN0cmFwcGluZ0ZyZWVycy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIHNpZGVFZmZlY3RzUmVidWlsZGVyc0F0TW91bnRpbmcgPSBzaWRlRWZmZWN0c1JlYnVpbGRlcnMuc2xpY2UoYm9vdHN0cmFwcGluZ0ZyZWVycy5sZW5ndGgpOyAvLyBtdXN0IHJlYnVpbGQgdGhlIHNpZGUgZWZmZWN0cyB3aGljaCBhZGRlZCBhdCBib290c3RyYXBwaW5nIGZpcnN0bHkgdG8gcmVjb3ZlcnkgdG8gbmF0dXJlIHN0YXRlXG5cbiAgICAgICAgICAgICAgICBpZiAoc2lkZUVmZmVjdHNSZWJ1aWxkZXJzQXRCb290c3RyYXBwaW5nLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgc2lkZUVmZmVjdHNSZWJ1aWxkZXJzQXRCb290c3RyYXBwaW5nLmZvckVhY2goZnVuY3Rpb24gKHJlYnVpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlYnVpbGQoKTtcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gMi4g5byA5ZCv5YWo5bGA5Y+Y6YeP6KGl5LiBIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gICAgICAgICAgICAgICAgLy8gcmVuZGVyIOaymeeuseWQr+WKqOaXtuW8gOWni+WKq+aMgeWQhOexu+WFqOWxgOebkeWQrO+8jOWwvemHj+S4jeimgeWcqOW6lOeUqOWIneWni+WMlumYtuauteaciSDkuovku7bnm5HlkKwv5a6a5pe25ZmoIOetieWJr+S9nOeUqFxuXG5cbiAgICAgICAgICAgICAgICBtb3VudGluZ0ZyZWVycyA9IHBhdGNoQXRNb3VudGluZyhhcHBOYW1lLCBlbGVtZW50R2V0dGVyLCBzYW5kYm94LCBzY29wZWRDU1MsIGV4Y2x1ZGVBc3NldEZpbHRlcik7XG4gICAgICAgICAgICAgICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIDMuIOmHjee9ruS4gOS6m+WIneWni+WMluaXtueahOWJr+S9nOeUqCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAgICAgICAgICAgICAgIC8vIOWtmOWcqCByZWJ1aWxkZXIg5YiZ6KGo5piO5pyJ5Lqb5Ymv5L2c55So6ZyA6KaB6YeN5bu6XG5cbiAgICAgICAgICAgICAgICBpZiAoc2lkZUVmZmVjdHNSZWJ1aWxkZXJzQXRNb3VudGluZy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgIHNpZGVFZmZlY3RzUmVidWlsZGVyc0F0TW91bnRpbmcuZm9yRWFjaChmdW5jdGlvbiAocmVidWlsZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVidWlsZCgpO1xuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSAvLyBjbGVhbiB1cCByZWJ1aWxkZXJzXG5cblxuICAgICAgICAgICAgICAgIHNpZGVFZmZlY3RzUmVidWlsZGVycyA9IFtdO1xuXG4gICAgICAgICAgICAgIGNhc2UgNzpcbiAgICAgICAgICAgICAgY2FzZSBcImVuZFwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlKTtcbiAgICAgIH0pKTtcbiAgICB9LFxuXG4gICAgLyoqXG4gICAgICog5oGi5aSNIGdsb2JhbCDnirbmgIHvvIzkvb/lhbbog73lm57liLDlupTnlKjliqDovb3kuYvliY3nmoTnirbmgIFcbiAgICAgKi9cbiAgICB1bm1vdW50OiBmdW5jdGlvbiB1bm1vdW50KCkge1xuICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHtcbiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7XG4gICAgICAgICAgd2hpbGUgKDEpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkge1xuICAgICAgICAgICAgICBjYXNlIDA6XG4gICAgICAgICAgICAgICAgLy8gcmVjb3JkIHRoZSByZWJ1aWxkZXJzIG9mIHdpbmRvdyBzaWRlIGVmZmVjdHMgKGV2ZW50IGxpc3RlbmVycyBvciB0aW1lcnMpXG4gICAgICAgICAgICAgICAgLy8gbm90ZSB0aGF0IHRoZSBmcmVlcyBvZiBtb3VudGluZyBwaGFzZSBhcmUgb25lLW9mZiBhcyBpdCB3aWxsIGJlIHJlLWluaXQgYXQgbmV4dCBtb3VudGluZ1xuICAgICAgICAgICAgICAgIHNpZGVFZmZlY3RzUmVidWlsZGVycyA9IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoYm9vdHN0cmFwcGluZ0ZyZWVycyksIF90b0NvbnN1bWFibGVBcnJheShtb3VudGluZ0ZyZWVycykpLm1hcChmdW5jdGlvbiAoZnJlZSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGZyZWUoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBzYW5kYm94LmluYWN0aXZlKCk7XG5cbiAgICAgICAgICAgICAgY2FzZSAyOlxuICAgICAgICAgICAgICBjYXNlIFwiZW5kXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LCBfY2FsbGVlMik7XG4gICAgICB9KSk7XG4gICAgfVxuICB9O1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/legacy/sandbox.js": /*!***********************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/legacy/sandbox.js ***! \***********************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return SingularProxySandbox; });\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../interfaces */ \"./node_modules/qiankun/es/interfaces.js\");\n/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../common */ \"./node_modules/qiankun/es/sandbox/common.js\");\n\n\n\n\n\n\n\nfunction isPropConfigurable(target, prop) {\n var descriptor = Object.getOwnPropertyDescriptor(target, prop);\n return descriptor ? descriptor.configurable : true;\n}\n\nfunction setWindowProp(prop, value, toDelete) {\n if (value === undefined && toDelete) {\n delete window[prop];\n } else if (isPropConfigurable(window, prop) && Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(prop) !== 'symbol') {\n Object.defineProperty(window, prop, {\n writable: true,\n configurable: true\n });\n window[prop] = value;\n }\n}\n/**\n * 基于 Proxy 实现的沙箱\n * TODO: 为了兼容性 singular 模式下依旧使用该沙箱,等新沙箱稳定之后再切换\n */\n\n\nvar SingularProxySandbox = /*#__PURE__*/function () {\n function SingularProxySandbox(name) {\n var _this = this;\n\n Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, SingularProxySandbox);\n\n /** 沙箱期间新增的全局变量 */\n this.addedPropsMapInSandbox = new Map();\n /** 沙箱期间更新的全局变量 */\n\n this.modifiedPropsOriginalValueMapInSandbox = new Map();\n /** 持续记录更新的(新增和修改的)全局变量的 map,用于在任意时刻做 snapshot */\n\n this.currentUpdatedPropsValueMap = new Map();\n this.sandboxRunning = true;\n this.latestSetProp = null;\n this.name = name;\n this.type = _interfaces__WEBPACK_IMPORTED_MODULE_4__[\"SandBoxType\"].LegacyProxy;\n var addedPropsMapInSandbox = this.addedPropsMapInSandbox,\n modifiedPropsOriginalValueMapInSandbox = this.modifiedPropsOriginalValueMapInSandbox,\n currentUpdatedPropsValueMap = this.currentUpdatedPropsValueMap;\n var rawWindow = window;\n var fakeWindow = Object.create(null);\n var proxy = new Proxy(fakeWindow, {\n set: function set(_, p, value) {\n if (_this.sandboxRunning) {\n if (!rawWindow.hasOwnProperty(p)) {\n addedPropsMapInSandbox.set(p, value);\n } else if (!modifiedPropsOriginalValueMapInSandbox.has(p)) {\n // 如果当前 window 对象存在该属性,且 record map 中未记录过,则记录该属性初始值\n var originalValue = rawWindow[p];\n modifiedPropsOriginalValueMapInSandbox.set(p, originalValue);\n }\n\n currentUpdatedPropsValueMap.set(p, value); // 必须重新设置 window 对象保证下次 get 时能拿到已更新的数据\n // eslint-disable-next-line no-param-reassign\n\n rawWindow[p] = value;\n _this.latestSetProp = p;\n return true;\n }\n\n if (false) {} // 在 strict-mode 下,Proxy 的 handler.set 返回 false 会抛出 TypeError,在沙箱卸载的情况下应该忽略错误\n\n\n return true;\n },\n get: function get(_, p) {\n // avoid who using window.window or window.self to escape the sandbox environment to touch the really window\n // or use window.top to check if an iframe context\n // see https://github.com/eligrey/FileSaver.js/blob/master/src/FileSaver.js#L13\n if (p === 'top' || p === 'parent' || p === 'window' || p === 'self') {\n return proxy;\n }\n\n var value = rawWindow[p];\n return Object(_common__WEBPACK_IMPORTED_MODULE_5__[\"getTargetValue\"])(rawWindow, value);\n },\n // trap in operator\n // see https://github.com/styled-components/styled-components/blob/master/packages/styled-components/src/constants.js#L12\n has: function has(_, p) {\n return p in rawWindow;\n },\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(_, p) {\n var descriptor = Object.getOwnPropertyDescriptor(rawWindow, p); // A property cannot be reported as non-configurable, if it does not exists as an own property of the target object\n\n if (descriptor && !descriptor.configurable) {\n descriptor.configurable = true;\n }\n\n return descriptor;\n }\n });\n this.proxy = proxy;\n }\n\n Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(SingularProxySandbox, [{\n key: \"active\",\n value: function active() {\n if (!this.sandboxRunning) {\n this.currentUpdatedPropsValueMap.forEach(function (v, p) {\n return setWindowProp(p, v);\n });\n }\n\n this.sandboxRunning = true;\n }\n }, {\n key: \"inactive\",\n value: function inactive() {\n if (false) {} // renderSandboxSnapshot = snapshot(currentUpdatedPropsValueMapForSnapshot);\n // restore global props to initial snapshot\n\n\n this.modifiedPropsOriginalValueMapInSandbox.forEach(function (v, p) {\n return setWindowProp(p, v);\n });\n this.addedPropsMapInSandbox.forEach(function (_, p) {\n return setWindowProp(p, undefined, true);\n });\n this.sandboxRunning = false;\n }\n }]);\n\n return SingularProxySandbox;\n}();\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L2xlZ2FjeS9zYW5kYm94LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9sZWdhY3kvc2FuZGJveC5qcz9hOTczIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5XCI7XG5pbXBvcnQgX2NsYXNzQ2FsbENoZWNrIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9jbGFzc0NhbGxDaGVja1wiO1xuaW1wb3J0IF9jcmVhdGVDbGFzcyBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY3JlYXRlQ2xhc3NcIjtcbmltcG9ydCBfdHlwZW9mIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS90eXBlb2ZcIjtcbmltcG9ydCB7IFNhbmRCb3hUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXRUYXJnZXRWYWx1ZSB9IGZyb20gJy4uL2NvbW1vbic7XG5cbmZ1bmN0aW9uIGlzUHJvcENvbmZpZ3VyYWJsZSh0YXJnZXQsIHByb3ApIHtcbiAgdmFyIGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwgcHJvcCk7XG4gIHJldHVybiBkZXNjcmlwdG9yID8gZGVzY3JpcHRvci5jb25maWd1cmFibGUgOiB0cnVlO1xufVxuXG5mdW5jdGlvbiBzZXRXaW5kb3dQcm9wKHByb3AsIHZhbHVlLCB0b0RlbGV0ZSkge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCAmJiB0b0RlbGV0ZSkge1xuICAgIGRlbGV0ZSB3aW5kb3dbcHJvcF07XG4gIH0gZWxzZSBpZiAoaXNQcm9wQ29uZmlndXJhYmxlKHdpbmRvdywgcHJvcCkgJiYgX3R5cGVvZihwcm9wKSAhPT0gJ3N5bWJvbCcpIHtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCBwcm9wLCB7XG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxuICAgIH0pO1xuICAgIHdpbmRvd1twcm9wXSA9IHZhbHVlO1xuICB9XG59XG4vKipcbiAqIOWfuuS6jiBQcm94eSDlrp7njrDnmoTmspnnrrFcbiAqIFRPRE86IOS4uuS6huWFvOWuueaApyBzaW5ndWxhciDmqKHlvI/kuIvkvp3ml6fkvb/nlKjor6XmspnnrrHvvIznrYnmlrDmspnnrrHnqLPlrprkuYvlkI7lho3liIfmjaJcbiAqL1xuXG5cbnZhciBTaW5ndWxhclByb3h5U2FuZGJveCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFNpbmd1bGFyUHJveHlTYW5kYm94KG5hbWUpIHtcbiAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIFNpbmd1bGFyUHJveHlTYW5kYm94KTtcblxuICAgIC8qKiDmspnnrrHmnJ/pl7TmlrDlop7nmoTlhajlsYDlj5jph48gKi9cbiAgICB0aGlzLmFkZGVkUHJvcHNNYXBJblNhbmRib3ggPSBuZXcgTWFwKCk7XG4gICAgLyoqIOaymeeuseacn+mXtOabtOaWsOeahOWFqOWxgOWPmOmHjyAqL1xuXG4gICAgdGhpcy5tb2RpZmllZFByb3BzT3JpZ2luYWxWYWx1ZU1hcEluU2FuZGJveCA9IG5ldyBNYXAoKTtcbiAgICAvKiog5oyB57ut6K6w5b2V5pu05paw55qEKOaWsOWinuWSjOS/ruaUueeahCnlhajlsYDlj5jph4/nmoQgbWFw77yM55So5LqO5Zyo5Lu75oSP5pe25Yi75YGaIHNuYXBzaG90ICovXG5cbiAgICB0aGlzLmN1cnJlbnRVcGRhdGVkUHJvcHNWYWx1ZU1hcCA9IG5ldyBNYXAoKTtcbiAgICB0aGlzLnNhbmRib3hSdW5uaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxhdGVzdFNldFByb3AgPSBudWxsO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy50eXBlID0gU2FuZEJveFR5cGUuTGVnYWN5UHJveHk7XG4gICAgdmFyIGFkZGVkUHJvcHNNYXBJblNhbmRib3ggPSB0aGlzLmFkZGVkUHJvcHNNYXBJblNhbmRib3gsXG4gICAgICAgIG1vZGlmaWVkUHJvcHNPcmlnaW5hbFZhbHVlTWFwSW5TYW5kYm94ID0gdGhpcy5tb2RpZmllZFByb3BzT3JpZ2luYWxWYWx1ZU1hcEluU2FuZGJveCxcbiAgICAgICAgY3VycmVudFVwZGF0ZWRQcm9wc1ZhbHVlTWFwID0gdGhpcy5jdXJyZW50VXBkYXRlZFByb3BzVmFsdWVNYXA7XG4gICAgdmFyIHJhd1dpbmRvdyA9IHdpbmRvdztcbiAgICB2YXIgZmFrZVdpbmRvdyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG4gICAgdmFyIHByb3h5ID0gbmV3IFByb3h5KGZha2VXaW5kb3csIHtcbiAgICAgIHNldDogZnVuY3Rpb24gc2V0KF8sIHAsIHZhbHVlKSB7XG4gICAgICAgIGlmIChfdGhpcy5zYW5kYm94UnVubmluZykge1xuICAgICAgICAgIGlmICghcmF3V2luZG93Lmhhc093blByb3BlcnR5KHApKSB7XG4gICAgICAgICAgICBhZGRlZFByb3BzTWFwSW5TYW5kYm94LnNldChwLCB2YWx1ZSk7XG4gICAgICAgICAgfSBlbHNlIGlmICghbW9kaWZpZWRQcm9wc09yaWdpbmFsVmFsdWVNYXBJblNhbmRib3guaGFzKHApKSB7XG4gICAgICAgICAgICAvLyDlpoLmnpzlvZPliY0gd2luZG93IOWvueixoeWtmOWcqOivpeWxnuaAp++8jOS4lCByZWNvcmQgbWFwIOS4reacquiusOW9lei/h++8jOWImeiusOW9leivpeWxnuaAp+WIneWni+WAvFxuICAgICAgICAgICAgdmFyIG9yaWdpbmFsVmFsdWUgPSByYXdXaW5kb3dbcF07XG4gICAgICAgICAgICBtb2RpZmllZFByb3BzT3JpZ2luYWxWYWx1ZU1hcEluU2FuZGJveC5zZXQocCwgb3JpZ2luYWxWYWx1ZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY3VycmVudFVwZGF0ZWRQcm9wc1ZhbHVlTWFwLnNldChwLCB2YWx1ZSk7IC8vIOW/hemhu+mHjeaWsOiuvue9riB3aW5kb3cg5a+56LGh5L+d6K+B5LiL5qyhIGdldCDml7bog73mi7/liLDlt7Lmm7TmlrDnmoTmlbDmja5cbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cblxuICAgICAgICAgIHJhd1dpbmRvd1twXSA9IHZhbHVlO1xuICAgICAgICAgIF90aGlzLmxhdGVzdFNldFByb3AgPSBwO1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFwiW3FpYW5rdW5dIFNldCB3aW5kb3cuXCIuY29uY2F0KHAudG9TdHJpbmcoKSwgXCIgd2hpbGUgc2FuZGJveCBkZXN0cm95ZWQgb3IgaW5hY3RpdmUgaW4gXCIpLmNvbmNhdChuYW1lLCBcIiFcIikpO1xuICAgICAgICB9IC8vIOWcqCBzdHJpY3QtbW9kZSDkuIvvvIxQcm94eSDnmoQgaGFuZGxlci5zZXQg6L+U5ZueIGZhbHNlIOS8muaKm+WHuiBUeXBlRXJyb3LvvIzlnKjmspnnrrHljbjovb3nmoTmg4XlhrXkuIvlupTor6Xlv73nlaXplJnor69cblxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSxcbiAgICAgIGdldDogZnVuY3Rpb24gZ2V0KF8sIHApIHtcbiAgICAgICAgLy8gYXZvaWQgd2hvIHVzaW5nIHdpbmRvdy53aW5kb3cgb3Igd2luZG93LnNlbGYgdG8gZXNjYXBlIHRoZSBzYW5kYm94IGVudmlyb25tZW50IHRvIHRvdWNoIHRoZSByZWFsbHkgd2luZG93XG4gICAgICAgIC8vIG9yIHVzZSB3aW5kb3cudG9wIHRvIGNoZWNrIGlmIGFuIGlmcmFtZSBjb250ZXh0XG4gICAgICAgIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vZWxpZ3JleS9GaWxlU2F2ZXIuanMvYmxvYi9tYXN0ZXIvc3JjL0ZpbGVTYXZlci5qcyNMMTNcbiAgICAgICAgaWYgKHAgPT09ICd0b3AnIHx8IHAgPT09ICdwYXJlbnQnIHx8IHAgPT09ICd3aW5kb3cnIHx8IHAgPT09ICdzZWxmJykge1xuICAgICAgICAgIHJldHVybiBwcm94eTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciB2YWx1ZSA9IHJhd1dpbmRvd1twXTtcbiAgICAgICAgcmV0dXJuIGdldFRhcmdldFZhbHVlKHJhd1dpbmRvdywgdmFsdWUpO1xuICAgICAgfSxcbiAgICAgIC8vIHRyYXAgaW4gb3BlcmF0b3JcbiAgICAgIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vc3R5bGVkLWNvbXBvbmVudHMvc3R5bGVkLWNvbXBvbmVudHMvYmxvYi9tYXN0ZXIvcGFja2FnZXMvc3R5bGVkLWNvbXBvbmVudHMvc3JjL2NvbnN0YW50cy5qcyNMMTJcbiAgICAgIGhhczogZnVuY3Rpb24gaGFzKF8sIHApIHtcbiAgICAgICAgcmV0dXJuIHAgaW4gcmF3V2luZG93O1xuICAgICAgfSxcbiAgICAgIGdldE93blByb3BlcnR5RGVzY3JpcHRvcjogZnVuY3Rpb24gZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKF8sIHApIHtcbiAgICAgICAgdmFyIGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHJhd1dpbmRvdywgcCk7IC8vIEEgcHJvcGVydHkgY2Fubm90IGJlIHJlcG9ydGVkIGFzIG5vbi1jb25maWd1cmFibGUsIGlmIGl0IGRvZXMgbm90IGV4aXN0cyBhcyBhbiBvd24gcHJvcGVydHkgb2YgdGhlIHRhcmdldCBvYmplY3RcblxuICAgICAgICBpZiAoZGVzY3JpcHRvciAmJiAhZGVzY3JpcHRvci5jb25maWd1cmFibGUpIHtcbiAgICAgICAgICBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnByb3h5ID0gcHJveHk7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoU2luZ3VsYXJQcm94eVNhbmRib3gsIFt7XG4gICAga2V5OiBcImFjdGl2ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhY3RpdmUoKSB7XG4gICAgICBpZiAoIXRoaXMuc2FuZGJveFJ1bm5pbmcpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50VXBkYXRlZFByb3BzVmFsdWVNYXAuZm9yRWFjaChmdW5jdGlvbiAodiwgcCkge1xuICAgICAgICAgIHJldHVybiBzZXRXaW5kb3dQcm9wKHAsIHYpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zYW5kYm94UnVubmluZyA9IHRydWU7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImluYWN0aXZlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluYWN0aXZlKCkge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgIGNvbnNvbGUuaW5mbyhcIltxaWFua3VuOnNhbmRib3hdIFwiLmNvbmNhdCh0aGlzLm5hbWUsIFwiIG1vZGlmaWVkIGdsb2JhbCBwcm9wZXJ0aWVzIHJlc3RvcmUuLi5cIiksIFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGhpcy5hZGRlZFByb3BzTWFwSW5TYW5kYm94LmtleXMoKSksIF90b0NvbnN1bWFibGVBcnJheSh0aGlzLm1vZGlmaWVkUHJvcHNPcmlnaW5hbFZhbHVlTWFwSW5TYW5kYm94LmtleXMoKSkpKTtcbiAgICAgIH0gLy8gcmVuZGVyU2FuZGJveFNuYXBzaG90ID0gc25hcHNob3QoY3VycmVudFVwZGF0ZWRQcm9wc1ZhbHVlTWFwRm9yU25hcHNob3QpO1xuICAgICAgLy8gcmVzdG9yZSBnbG9iYWwgcHJvcHMgdG8gaW5pdGlhbCBzbmFwc2hvdFxuXG5cbiAgICAgIHRoaXMubW9kaWZpZWRQcm9wc09yaWdpbmFsVmFsdWVNYXBJblNhbmRib3guZm9yRWFjaChmdW5jdGlvbiAodiwgcCkge1xuICAgICAgICByZXR1cm4gc2V0V2luZG93UHJvcChwLCB2KTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5hZGRlZFByb3BzTWFwSW5TYW5kYm94LmZvckVhY2goZnVuY3Rpb24gKF8sIHApIHtcbiAgICAgICAgcmV0dXJuIHNldFdpbmRvd1Byb3AocCwgdW5kZWZpbmVkLCB0cnVlKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zYW5kYm94UnVubmluZyA9IGZhbHNlO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBTaW5ndWxhclByb3h5U2FuZGJveDtcbn0oKTtcblxuZXhwb3J0IHsgU2luZ3VsYXJQcm94eVNhbmRib3ggYXMgZGVmYXVsdCB9OyJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/legacy/sandbox.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/css.js": /*!*********************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/css.js ***! \*********************************************************/ /*! exports provided: ScopedCSS, QiankunCSSRewriteAttr, process */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ScopedCSS\", function() { return ScopedCSS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"QiankunCSSRewriteAttr\", function() { return QiankunCSSRewriteAttr; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"process\", function() { return process; });\n/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js\");\n\n\n\n/**\n * @author Saviio\n * @since 2020-4-19\n */\n// https://developer.mozilla.org/en-US/docs/Web/API/CSSRule\nvar RuleType;\n\n(function (RuleType) {\n // type: rule will be rewrote\n RuleType[RuleType[\"STYLE\"] = 1] = \"STYLE\";\n RuleType[RuleType[\"MEDIA\"] = 4] = \"MEDIA\";\n RuleType[RuleType[\"SUPPORTS\"] = 12] = \"SUPPORTS\"; // type: value will be kept\n\n RuleType[RuleType[\"IMPORT\"] = 3] = \"IMPORT\";\n RuleType[RuleType[\"FONT_FACE\"] = 5] = \"FONT_FACE\";\n RuleType[RuleType[\"PAGE\"] = 6] = \"PAGE\";\n RuleType[RuleType[\"KEYFRAMES\"] = 7] = \"KEYFRAMES\";\n RuleType[RuleType[\"KEYFRAME\"] = 8] = \"KEYFRAME\";\n})(RuleType || (RuleType = {}));\n\nvar arrayify = function arrayify(list) {\n return [].slice.call(list, 0);\n};\n\nvar rawDocumentBodyAppend = HTMLBodyElement.prototype.appendChild;\nvar ScopedCSS = /*#__PURE__*/function () {\n function ScopedCSS() {\n Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(this, ScopedCSS);\n\n var styleNode = document.createElement('style');\n rawDocumentBodyAppend.call(document.body, styleNode);\n this.swapNode = styleNode;\n this.sheet = styleNode.sheet;\n this.sheet.disabled = true;\n }\n\n Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(ScopedCSS, [{\n key: \"process\",\n value: function process(styleNode) {\n var _this = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n\n var _a;\n\n if (styleNode.textContent !== '') {\n var textNode = document.createTextNode(styleNode.textContent || '');\n this.swapNode.appendChild(textNode);\n var sheet = this.swapNode.sheet; // type is missing\n\n var rules = arrayify((_a = sheet === null || sheet === void 0 ? void 0 : sheet.cssRules) !== null && _a !== void 0 ? _a : []);\n var css = this.rewrite(rules, prefix); // eslint-disable-next-line no-param-reassign\n\n styleNode.textContent = css; // cleanup\n\n this.swapNode.removeChild(textNode);\n return;\n }\n\n var mutator = new MutationObserver(function (mutations) {\n var _a;\n\n for (var i = 0; i < mutations.length; i += 1) {\n var mutation = mutations[i];\n\n if (ScopedCSS.ModifiedTag in styleNode) {\n return;\n }\n\n if (mutation.type === 'childList') {\n var _sheet = styleNode.sheet;\n\n var _rules = arrayify((_a = _sheet === null || _sheet === void 0 ? void 0 : _sheet.cssRules) !== null && _a !== void 0 ? _a : []);\n\n var _css = _this.rewrite(_rules, prefix); // eslint-disable-next-line no-param-reassign\n\n\n styleNode.textContent = _css; // eslint-disable-next-line no-param-reassign\n\n styleNode[ScopedCSS.ModifiedTag] = true;\n }\n }\n }); // since observer will be deleted when node be removed\n // we dont need create a cleanup function manually\n // see https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver/disconnect\n\n mutator.observe(styleNode, {\n childList: true\n });\n }\n }, {\n key: \"rewrite\",\n value: function rewrite(rules) {\n var _this2 = this;\n\n var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var css = '';\n rules.forEach(function (rule) {\n switch (rule.type) {\n case RuleType.STYLE:\n css += _this2.ruleStyle(rule, prefix);\n break;\n\n case RuleType.MEDIA:\n css += _this2.ruleMedia(rule, prefix);\n break;\n\n case RuleType.SUPPORTS:\n css += _this2.ruleSupport(rule, prefix);\n break;\n\n default:\n css += \"\".concat(rule.cssText);\n break;\n }\n });\n return css;\n } // handle case:\n // .app-main {}\n // html, body {}\n // eslint-disable-next-line class-methods-use-this\n\n }, {\n key: \"ruleStyle\",\n value: function ruleStyle(rule, prefix) {\n var rootSelectorRE = /((?:[^\\w\\-.#]|^)(body|html|:root))/gm;\n var rootCombinationRE = /(html[^\\w{[]+)/gm;\n var selector = rule.selectorText.trim();\n var cssText = rule.cssText; // handle html { ... }\n // handle body { ... }\n // handle :root { ... }\n\n if (selector === 'html' || selector === 'body' || selector === ':root') {\n return cssText.replace(rootSelectorRE, prefix);\n } // handle html body { ... }\n // handle html > body { ... }\n\n\n if (rootCombinationRE.test(rule.selectorText)) {\n var siblingSelectorRE = /(html[^\\w{]+)(\\+|~)/gm; // since html + body is a non-standard rule for html\n // transformer will ignore it\n\n if (!siblingSelectorRE.test(rule.selectorText)) {\n cssText = cssText.replace(rootCombinationRE, '');\n }\n } // handle grouping selector, a,span,p,div { ... }\n\n\n cssText = cssText.replace(/^[\\s\\S]+{/, function (selectors) {\n return selectors.replace(/(^|,\\n?)([^,]+)/g, function (item, p, s) {\n // handle div,body,span { ... }\n if (rootSelectorRE.test(item)) {\n return item.replace(rootSelectorRE, function (m) {\n // do not discard valid previous character, such as body,html or *:not(:root)\n var whitePrevChars = [',', '('];\n\n if (m && whitePrevChars.includes(m[0])) {\n return \"\".concat(m[0]).concat(prefix);\n } // replace root selector with prefix\n\n\n return prefix;\n });\n }\n\n return \"\".concat(p).concat(prefix, \" \").concat(s.replace(/^ */, ''));\n });\n });\n return cssText;\n } // handle case:\n // @media screen and (max-width: 300px) {}\n\n }, {\n key: \"ruleMedia\",\n value: function ruleMedia(rule, prefix) {\n var css = this.rewrite(arrayify(rule.cssRules), prefix);\n return \"@media \".concat(rule.conditionText, \" {\").concat(css, \"}\");\n } // handle case:\n // @supports (display: grid) {}\n\n }, {\n key: \"ruleSupport\",\n value: function ruleSupport(rule, prefix) {\n var css = this.rewrite(arrayify(rule.cssRules), prefix);\n return \"@supports \".concat(rule.conditionText, \" {\").concat(css, \"}\");\n }\n }]);\n\n return ScopedCSS;\n}();\nScopedCSS.ModifiedTag = 'Symbol(style-modified-qiankun)';\nvar processor;\nvar QiankunCSSRewriteAttr = 'data-qiankun';\nvar process = function process(appWrapper, stylesheetElement, appName) {\n // lazy singleton pattern\n if (!processor) {\n processor = new ScopedCSS();\n }\n\n if (stylesheetElement.tagName === 'LINK') {\n console.warn('Feature: sandbox.experimentalStyleIsolation is not support for link element yet.');\n }\n\n var mountDOM = appWrapper;\n\n if (!mountDOM) {\n return;\n }\n\n var tag = (mountDOM.tagName || '').toLowerCase();\n\n if (tag && stylesheetElement.tagName === 'STYLE') {\n var prefix = \"\".concat(tag, \"[\").concat(QiankunCSSRewriteAttr, \"=\\\"\").concat(appName, \"\\\"]\");\n processor.process(stylesheetElement, prefix);\n }\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2Nzcy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvcGF0Y2hlcnMvY3NzLmpzP2ZhZDUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9jbGFzc0NhbGxDaGVjayBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY2xhc3NDYWxsQ2hlY2tcIjtcbmltcG9ydCBfY3JlYXRlQ2xhc3MgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NyZWF0ZUNsYXNzXCI7XG5cbi8qKlxuICogQGF1dGhvciBTYXZpaW9cbiAqIEBzaW5jZSAyMDIwLTQtMTlcbiAqL1xuLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0NTU1J1bGVcbnZhciBSdWxlVHlwZTtcblxuKGZ1bmN0aW9uIChSdWxlVHlwZSkge1xuICAvLyB0eXBlOiBydWxlIHdpbGwgYmUgcmV3cm90ZVxuICBSdWxlVHlwZVtSdWxlVHlwZVtcIlNUWUxFXCJdID0gMV0gPSBcIlNUWUxFXCI7XG4gIFJ1bGVUeXBlW1J1bGVUeXBlW1wiTUVESUFcIl0gPSA0XSA9IFwiTUVESUFcIjtcbiAgUnVsZVR5cGVbUnVsZVR5cGVbXCJTVVBQT1JUU1wiXSA9IDEyXSA9IFwiU1VQUE9SVFNcIjsgLy8gdHlwZTogdmFsdWUgd2lsbCBiZSBrZXB0XG5cbiAgUnVsZVR5cGVbUnVsZVR5cGVbXCJJTVBPUlRcIl0gPSAzXSA9IFwiSU1QT1JUXCI7XG4gIFJ1bGVUeXBlW1J1bGVUeXBlW1wiRk9OVF9GQUNFXCJdID0gNV0gPSBcIkZPTlRfRkFDRVwiO1xuICBSdWxlVHlwZVtSdWxlVHlwZVtcIlBBR0VcIl0gPSA2XSA9IFwiUEFHRVwiO1xuICBSdWxlVHlwZVtSdWxlVHlwZVtcIktFWUZSQU1FU1wiXSA9IDddID0gXCJLRVlGUkFNRVNcIjtcbiAgUnVsZVR5cGVbUnVsZVR5cGVbXCJLRVlGUkFNRVwiXSA9IDhdID0gXCJLRVlGUkFNRVwiO1xufSkoUnVsZVR5cGUgfHwgKFJ1bGVUeXBlID0ge30pKTtcblxudmFyIGFycmF5aWZ5ID0gZnVuY3Rpb24gYXJyYXlpZnkobGlzdCkge1xuICByZXR1cm4gW10uc2xpY2UuY2FsbChsaXN0LCAwKTtcbn07XG5cbnZhciByYXdEb2N1bWVudEJvZHlBcHBlbmQgPSBIVE1MQm9keUVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkO1xuZXhwb3J0IHZhciBTY29wZWRDU1MgPSAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBTY29wZWRDU1MoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIFNjb3BlZENTUyk7XG5cbiAgICB2YXIgc3R5bGVOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICByYXdEb2N1bWVudEJvZHlBcHBlbmQuY2FsbChkb2N1bWVudC5ib2R5LCBzdHlsZU5vZGUpO1xuICAgIHRoaXMuc3dhcE5vZGUgPSBzdHlsZU5vZGU7XG4gICAgdGhpcy5zaGVldCA9IHN0eWxlTm9kZS5zaGVldDtcbiAgICB0aGlzLnNoZWV0LmRpc2FibGVkID0gdHJ1ZTtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhTY29wZWRDU1MsIFt7XG4gICAga2V5OiBcInByb2Nlc3NcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gcHJvY2VzcyhzdHlsZU5vZGUpIHtcbiAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgICAgIHZhciBwcmVmaXggPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6ICcnO1xuXG4gICAgICB2YXIgX2E7XG5cbiAgICAgIGlmIChzdHlsZU5vZGUudGV4dENvbnRlbnQgIT09ICcnKSB7XG4gICAgICAgIHZhciB0ZXh0Tm9kZSA9IGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHN0eWxlTm9kZS50ZXh0Q29udGVudCB8fCAnJyk7XG4gICAgICAgIHRoaXMuc3dhcE5vZGUuYXBwZW5kQ2hpbGQodGV4dE5vZGUpO1xuICAgICAgICB2YXIgc2hlZXQgPSB0aGlzLnN3YXBOb2RlLnNoZWV0OyAvLyB0eXBlIGlzIG1pc3NpbmdcblxuICAgICAgICB2YXIgcnVsZXMgPSBhcnJheWlmeSgoX2EgPSBzaGVldCA9PT0gbnVsbCB8fCBzaGVldCA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2hlZXQuY3NzUnVsZXMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IFtdKTtcbiAgICAgICAgdmFyIGNzcyA9IHRoaXMucmV3cml0ZShydWxlcywgcHJlZml4KTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG5cbiAgICAgICAgc3R5bGVOb2RlLnRleHRDb250ZW50ID0gY3NzOyAvLyBjbGVhbnVwXG5cbiAgICAgICAgdGhpcy5zd2FwTm9kZS5yZW1vdmVDaGlsZCh0ZXh0Tm9kZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdmFyIG11dGF0b3IgPSBuZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbiAobXV0YXRpb25zKSB7XG4gICAgICAgIHZhciBfYTtcblxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG11dGF0aW9ucy5sZW5ndGg7IGkgKz0gMSkge1xuICAgICAgICAgIHZhciBtdXRhdGlvbiA9IG11dGF0aW9uc1tpXTtcblxuICAgICAgICAgIGlmIChTY29wZWRDU1MuTW9kaWZpZWRUYWcgaW4gc3R5bGVOb2RlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG11dGF0aW9uLnR5cGUgPT09ICdjaGlsZExpc3QnKSB7XG4gICAgICAgICAgICB2YXIgX3NoZWV0ID0gc3R5bGVOb2RlLnNoZWV0O1xuXG4gICAgICAgICAgICB2YXIgX3J1bGVzID0gYXJyYXlpZnkoKF9hID0gX3NoZWV0ID09PSBudWxsIHx8IF9zaGVldCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX3NoZWV0LmNzc1J1bGVzKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSk7XG5cbiAgICAgICAgICAgIHZhciBfY3NzID0gX3RoaXMucmV3cml0ZShfcnVsZXMsIHByZWZpeCk7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuXG5cbiAgICAgICAgICAgIHN0eWxlTm9kZS50ZXh0Q29udGVudCA9IF9jc3M7IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuXG4gICAgICAgICAgICBzdHlsZU5vZGVbU2NvcGVkQ1NTLk1vZGlmaWVkVGFnXSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTsgLy8gc2luY2Ugb2JzZXJ2ZXIgd2lsbCBiZSBkZWxldGVkIHdoZW4gbm9kZSBiZSByZW1vdmVkXG4gICAgICAvLyB3ZSBkb250IG5lZWQgY3JlYXRlIGEgY2xlYW51cCBmdW5jdGlvbiBtYW51YWxseVxuICAgICAgLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9NdXRhdGlvbk9ic2VydmVyL2Rpc2Nvbm5lY3RcblxuICAgICAgbXV0YXRvci5vYnNlcnZlKHN0eWxlTm9kZSwge1xuICAgICAgICBjaGlsZExpc3Q6IHRydWVcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJyZXdyaXRlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIHJld3JpdGUocnVsZXMpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICB2YXIgcHJlZml4ID0gYXJndW1lbnRzLmxlbmd0aCA+IDEgJiYgYXJndW1lbnRzWzFdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMV0gOiAnJztcbiAgICAgIHZhciBjc3MgPSAnJztcbiAgICAgIHJ1bGVzLmZvckVhY2goZnVuY3Rpb24gKHJ1bGUpIHtcbiAgICAgICAgc3dpdGNoIChydWxlLnR5cGUpIHtcbiAgICAgICAgICBjYXNlIFJ1bGVUeXBlLlNUWUxFOlxuICAgICAgICAgICAgY3NzICs9IF90aGlzMi5ydWxlU3R5bGUocnVsZSwgcHJlZml4KTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSBSdWxlVHlwZS5NRURJQTpcbiAgICAgICAgICAgIGNzcyArPSBfdGhpczIucnVsZU1lZGlhKHJ1bGUsIHByZWZpeCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgUnVsZVR5cGUuU1VQUE9SVFM6XG4gICAgICAgICAgICBjc3MgKz0gX3RoaXMyLnJ1bGVTdXBwb3J0KHJ1bGUsIHByZWZpeCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBjc3MgKz0gXCJcIi5jb25jYXQocnVsZS5jc3NUZXh0KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBjc3M7XG4gICAgfSAvLyBoYW5kbGUgY2FzZTpcbiAgICAvLyAuYXBwLW1haW4ge31cbiAgICAvLyBodG1sLCBib2R5IHt9XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcblxuICB9LCB7XG4gICAga2V5OiBcInJ1bGVTdHlsZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBydWxlU3R5bGUocnVsZSwgcHJlZml4KSB7XG4gICAgICB2YXIgcm9vdFNlbGVjdG9yUkUgPSAvKCg/OlteXFx3XFwtLiNdfF4pKGJvZHl8aHRtbHw6cm9vdCkpL2dtO1xuICAgICAgdmFyIHJvb3RDb21iaW5hdGlvblJFID0gLyhodG1sW15cXHd7W10rKS9nbTtcbiAgICAgIHZhciBzZWxlY3RvciA9IHJ1bGUuc2VsZWN0b3JUZXh0LnRyaW0oKTtcbiAgICAgIHZhciBjc3NUZXh0ID0gcnVsZS5jc3NUZXh0OyAvLyBoYW5kbGUgaHRtbCB7IC4uLiB9XG4gICAgICAvLyBoYW5kbGUgYm9keSB7IC4uLiB9XG4gICAgICAvLyBoYW5kbGUgOnJvb3QgeyAuLi4gfVxuXG4gICAgICBpZiAoc2VsZWN0b3IgPT09ICdodG1sJyB8fCBzZWxlY3RvciA9PT0gJ2JvZHknIHx8IHNlbGVjdG9yID09PSAnOnJvb3QnKSB7XG4gICAgICAgIHJldHVybiBjc3NUZXh0LnJlcGxhY2Uocm9vdFNlbGVjdG9yUkUsIHByZWZpeCk7XG4gICAgICB9IC8vIGhhbmRsZSBodG1sIGJvZHkgeyAuLi4gfVxuICAgICAgLy8gaGFuZGxlIGh0bWwgPiBib2R5IHsgLi4uIH1cblxuXG4gICAgICBpZiAocm9vdENvbWJpbmF0aW9uUkUudGVzdChydWxlLnNlbGVjdG9yVGV4dCkpIHtcbiAgICAgICAgdmFyIHNpYmxpbmdTZWxlY3RvclJFID0gLyhodG1sW15cXHd7XSspKFxcK3x+KS9nbTsgLy8gc2luY2UgaHRtbCArIGJvZHkgaXMgYSBub24tc3RhbmRhcmQgcnVsZSBmb3IgaHRtbFxuICAgICAgICAvLyB0cmFuc2Zvcm1lciB3aWxsIGlnbm9yZSBpdFxuXG4gICAgICAgIGlmICghc2libGluZ1NlbGVjdG9yUkUudGVzdChydWxlLnNlbGVjdG9yVGV4dCkpIHtcbiAgICAgICAgICBjc3NUZXh0ID0gY3NzVGV4dC5yZXBsYWNlKHJvb3RDb21iaW5hdGlvblJFLCAnJyk7XG4gICAgICAgIH1cbiAgICAgIH0gLy8gaGFuZGxlIGdyb3VwaW5nIHNlbGVjdG9yLCBhLHNwYW4scCxkaXYgeyAuLi4gfVxuXG5cbiAgICAgIGNzc1RleHQgPSBjc3NUZXh0LnJlcGxhY2UoL15bXFxzXFxTXSt7LywgZnVuY3Rpb24gKHNlbGVjdG9ycykge1xuICAgICAgICByZXR1cm4gc2VsZWN0b3JzLnJlcGxhY2UoLyhefCxcXG4/KShbXixdKykvZywgZnVuY3Rpb24gKGl0ZW0sIHAsIHMpIHtcbiAgICAgICAgICAvLyBoYW5kbGUgZGl2LGJvZHksc3BhbiB7IC4uLiB9XG4gICAgICAgICAgaWYgKHJvb3RTZWxlY3RvclJFLnRlc3QoaXRlbSkpIHtcbiAgICAgICAgICAgIHJldHVybiBpdGVtLnJlcGxhY2Uocm9vdFNlbGVjdG9yUkUsIGZ1bmN0aW9uIChtKSB7XG4gICAgICAgICAgICAgIC8vIGRvIG5vdCBkaXNjYXJkIHZhbGlkIHByZXZpb3VzIGNoYXJhY3Rlciwgc3VjaCBhcyBib2R5LGh0bWwgb3IgKjpub3QoOnJvb3QpXG4gICAgICAgICAgICAgIHZhciB3aGl0ZVByZXZDaGFycyA9IFsnLCcsICcoJ107XG5cbiAgICAgICAgICAgICAgaWYgKG0gJiYgd2hpdGVQcmV2Q2hhcnMuaW5jbHVkZXMobVswXSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gXCJcIi5jb25jYXQobVswXSkuY29uY2F0KHByZWZpeCk7XG4gICAgICAgICAgICAgIH0gLy8gcmVwbGFjZSByb290IHNlbGVjdG9yIHdpdGggcHJlZml4XG5cblxuICAgICAgICAgICAgICByZXR1cm4gcHJlZml4O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFwiXCIuY29uY2F0KHApLmNvbmNhdChwcmVmaXgsIFwiIFwiKS5jb25jYXQocy5yZXBsYWNlKC9eICovLCAnJykpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNzc1RleHQ7XG4gICAgfSAvLyBoYW5kbGUgY2FzZTpcbiAgICAvLyBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMDBweCkge31cblxuICB9LCB7XG4gICAga2V5OiBcInJ1bGVNZWRpYVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBydWxlTWVkaWEocnVsZSwgcHJlZml4KSB7XG4gICAgICB2YXIgY3NzID0gdGhpcy5yZXdyaXRlKGFycmF5aWZ5KHJ1bGUuY3NzUnVsZXMpLCBwcmVmaXgpO1xuICAgICAgcmV0dXJuIFwiQG1lZGlhIFwiLmNvbmNhdChydWxlLmNvbmRpdGlvblRleHQsIFwiIHtcIikuY29uY2F0KGNzcywgXCJ9XCIpO1xuICAgIH0gLy8gaGFuZGxlIGNhc2U6XG4gICAgLy8gQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7fVxuXG4gIH0sIHtcbiAgICBrZXk6IFwicnVsZVN1cHBvcnRcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gcnVsZVN1cHBvcnQocnVsZSwgcHJlZml4KSB7XG4gICAgICB2YXIgY3NzID0gdGhpcy5yZXdyaXRlKGFycmF5aWZ5KHJ1bGUuY3NzUnVsZXMpLCBwcmVmaXgpO1xuICAgICAgcmV0dXJuIFwiQHN1cHBvcnRzIFwiLmNvbmNhdChydWxlLmNvbmRpdGlvblRleHQsIFwiIHtcIikuY29uY2F0KGNzcywgXCJ9XCIpO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBTY29wZWRDU1M7XG59KCk7XG5TY29wZWRDU1MuTW9kaWZpZWRUYWcgPSAnU3ltYm9sKHN0eWxlLW1vZGlmaWVkLXFpYW5rdW4pJztcbnZhciBwcm9jZXNzb3I7XG5leHBvcnQgdmFyIFFpYW5rdW5DU1NSZXdyaXRlQXR0ciA9ICdkYXRhLXFpYW5rdW4nO1xuZXhwb3J0IHZhciBwcm9jZXNzID0gZnVuY3Rpb24gcHJvY2VzcyhhcHBXcmFwcGVyLCBzdHlsZXNoZWV0RWxlbWVudCwgYXBwTmFtZSkge1xuICAvLyBsYXp5IHNpbmdsZXRvbiBwYXR0ZXJuXG4gIGlmICghcHJvY2Vzc29yKSB7XG4gICAgcHJvY2Vzc29yID0gbmV3IFNjb3BlZENTUygpO1xuICB9XG5cbiAgaWYgKHN0eWxlc2hlZXRFbGVtZW50LnRhZ05hbWUgPT09ICdMSU5LJykge1xuICAgIGNvbnNvbGUud2FybignRmVhdHVyZTogc2FuZGJveC5leHBlcmltZW50YWxTdHlsZUlzb2xhdGlvbiBpcyBub3Qgc3VwcG9ydCBmb3IgbGluayBlbGVtZW50IHlldC4nKTtcbiAgfVxuXG4gIHZhciBtb3VudERPTSA9IGFwcFdyYXBwZXI7XG5cbiAgaWYgKCFtb3VudERPTSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHZhciB0YWcgPSAobW91bnRET00udGFnTmFtZSB8fCAnJykudG9Mb3dlckNhc2UoKTtcblxuICBpZiAodGFnICYmIHN0eWxlc2hlZXRFbGVtZW50LnRhZ05hbWUgPT09ICdTVFlMRScpIHtcbiAgICB2YXIgcHJlZml4ID0gXCJcIi5jb25jYXQodGFnLCBcIltcIikuY29uY2F0KFFpYW5rdW5DU1NSZXdyaXRlQXR0ciwgXCI9XFxcIlwiKS5jb25jYXQoYXBwTmFtZSwgXCJcXFwiXVwiKTtcbiAgICBwcm9jZXNzb3IucHJvY2VzcyhzdHlsZXNoZWV0RWxlbWVudCwgcHJlZml4KTtcbiAgfVxufTsiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/css.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/common.js": /*!**************************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/common.js ***! \**************************************************************************/ /*! exports provided: rawHeadAppendChild, isHijackingTag, isStyledComponentsLike, recordStyledComponentsCSSRules, getStyledElementCSSRules, patchHTMLDynamicAppendPrototypeFunctions, rebuildCSSRules */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"rawHeadAppendChild\", function() { return rawHeadAppendChild; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isHijackingTag\", function() { return isHijackingTag; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isStyledComponentsLike\", function() { return isStyledComponentsLike; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"recordStyledComponentsCSSRules\", function() { return recordStyledComponentsCSSRules; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getStyledElementCSSRules\", function() { return getStyledElementCSSRules; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"patchHTMLDynamicAppendPrototypeFunctions\", function() { return patchHTMLDynamicAppendPrototypeFunctions; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"rebuildCSSRules\", function() { return rebuildCSSRules; });\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var import_html_entry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! import-html-entry */ \"./node_modules/import-html-entry/esm/index.js\");\n/* harmony import */ var _apis__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../apis */ \"./node_modules/qiankun/es/apis.js\");\n/* harmony import */ var _css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../css */ \"./node_modules/qiankun/es/sandbox/patchers/css.js\");\n\n\n/**\n * @author Kuitos\n * @since 2019-10-21\n */\n\n\n\nvar rawHeadAppendChild = HTMLHeadElement.prototype.appendChild;\nvar rawHeadRemoveChild = HTMLHeadElement.prototype.removeChild;\nvar rawBodyAppendChild = HTMLBodyElement.prototype.appendChild;\nvar rawBodyRemoveChild = HTMLBodyElement.prototype.removeChild;\nvar rawHeadInsertBefore = HTMLHeadElement.prototype.insertBefore;\nvar rawRemoveChild = HTMLElement.prototype.removeChild;\nvar SCRIPT_TAG_NAME = 'SCRIPT';\nvar LINK_TAG_NAME = 'LINK';\nvar STYLE_TAG_NAME = 'STYLE';\nfunction isHijackingTag(tagName) {\n return (tagName === null || tagName === void 0 ? void 0 : tagName.toUpperCase()) === LINK_TAG_NAME || (tagName === null || tagName === void 0 ? void 0 : tagName.toUpperCase()) === STYLE_TAG_NAME || (tagName === null || tagName === void 0 ? void 0 : tagName.toUpperCase()) === SCRIPT_TAG_NAME;\n}\n/**\n * Check if a style element is a styled-component liked.\n * A styled-components liked element is which not have textContext but keep the rules in its styleSheet.cssRules.\n * Such as the style element generated by styled-components and emotion.\n * @param element\n */\n\nfunction isStyledComponentsLike(element) {\n var _a, _b;\n\n return !element.textContent && (((_a = element.sheet) === null || _a === void 0 ? void 0 : _a.cssRules.length) || ((_b = getStyledElementCSSRules(element)) === null || _b === void 0 ? void 0 : _b.length));\n}\n\nfunction patchCustomEvent(e, elementGetter) {\n Object.defineProperties(e, {\n srcElement: {\n get: elementGetter\n },\n target: {\n get: elementGetter\n }\n });\n return e;\n}\n\nfunction manualInvokeElementOnLoad(element) {\n // we need to invoke the onload event manually to notify the event listener that the script was completed\n // here are the two typical ways of dynamic script loading\n // 1. element.onload callback way, which webpack and loadjs used, see https://github.com/muicss/loadjs/blob/master/src/loadjs.js#L138\n // 2. addEventListener way, which toast-loader used, see https://github.com/pyrsmk/toast/blob/master/src/Toast.ts#L64\n var loadEvent = new CustomEvent('load');\n var patchedEvent = patchCustomEvent(loadEvent, function () {\n return element;\n });\n\n if (lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(element.onload)) {\n element.onload(patchedEvent);\n } else {\n element.dispatchEvent(patchedEvent);\n }\n}\n\nfunction manualInvokeElementOnError(element) {\n var errorEvent = new CustomEvent('error');\n var patchedEvent = patchCustomEvent(errorEvent, function () {\n return element;\n });\n\n if (lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(element.onerror)) {\n element.onerror(patchedEvent);\n } else {\n element.dispatchEvent(patchedEvent);\n }\n}\n\nfunction convertLinkAsStyle(element, postProcess) {\n var fetchFn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : fetch;\n var styleElement = document.createElement('style');\n var href = element.href; // add source link element href\n\n styleElement.dataset.qiankunHref = href;\n fetchFn(href).then(function (res) {\n return res.text();\n }).then(function (styleContext) {\n styleElement.appendChild(document.createTextNode(styleContext));\n postProcess(styleElement);\n manualInvokeElementOnLoad(element);\n }).catch(function () {\n return manualInvokeElementOnError(element);\n });\n return styleElement;\n}\n\nvar styledComponentCSSRulesMap = new WeakMap();\nvar dynamicScriptAttachedCommentMap = new WeakMap();\nvar dynamicLinkAttachedInlineStyleMap = new WeakMap();\nfunction recordStyledComponentsCSSRules(styleElements) {\n styleElements.forEach(function (styleElement) {\n /*\n With a styled-components generated style element, we need to record its cssRules for restore next re-mounting time.\n We're doing this because the sheet of style element is going to be cleaned automatically by browser after the style element dom removed from document.\n see https://www.w3.org/TR/cssom-1/#associated-css-style-sheet\n */\n if (styleElement instanceof HTMLStyleElement && isStyledComponentsLike(styleElement)) {\n if (styleElement.sheet) {\n // record the original css rules of the style element for restore\n styledComponentCSSRulesMap.set(styleElement, styleElement.sheet.cssRules);\n }\n }\n });\n}\nfunction getStyledElementCSSRules(styledElement) {\n return styledComponentCSSRulesMap.get(styledElement);\n}\n\nfunction getOverwrittenAppendChildOrInsertBefore(opts) {\n return function appendChildOrInsertBefore(newChild, refChild) {\n var _a, _b;\n\n var element = newChild;\n var rawDOMAppendOrInsertBefore = opts.rawDOMAppendOrInsertBefore,\n isInvokedByMicroApp = opts.isInvokedByMicroApp,\n containerConfigGetter = opts.containerConfigGetter;\n\n if (!isHijackingTag(element.tagName) || !isInvokedByMicroApp(element)) {\n return rawDOMAppendOrInsertBefore.call(this, element, refChild);\n }\n\n if (element.tagName) {\n var containerConfig = containerConfigGetter(element);\n var appName = containerConfig.appName,\n appWrapperGetter = containerConfig.appWrapperGetter,\n proxy = containerConfig.proxy,\n strictGlobal = containerConfig.strictGlobal,\n dynamicStyleSheetElements = containerConfig.dynamicStyleSheetElements,\n scopedCSS = containerConfig.scopedCSS,\n excludeAssetFilter = containerConfig.excludeAssetFilter;\n\n switch (element.tagName) {\n case LINK_TAG_NAME:\n case STYLE_TAG_NAME:\n {\n var stylesheetElement = newChild;\n var _stylesheetElement = stylesheetElement,\n href = _stylesheetElement.href;\n\n if (excludeAssetFilter && href && excludeAssetFilter(href)) {\n return rawDOMAppendOrInsertBefore.call(this, element, refChild);\n }\n\n var mountDOM = appWrapperGetter();\n\n if (scopedCSS) {\n // exclude link elements like \n var linkElementUsingStylesheet = ((_a = element.tagName) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === LINK_TAG_NAME && element.rel === 'stylesheet' && element.href;\n\n if (linkElementUsingStylesheet) {\n var _fetch = typeof _apis__WEBPACK_IMPORTED_MODULE_2__[\"frameworkConfiguration\"].fetch === 'function' ? _apis__WEBPACK_IMPORTED_MODULE_2__[\"frameworkConfiguration\"].fetch : (_b = _apis__WEBPACK_IMPORTED_MODULE_2__[\"frameworkConfiguration\"].fetch) === null || _b === void 0 ? void 0 : _b.fn;\n\n stylesheetElement = convertLinkAsStyle(element, function (styleElement) {\n return _css__WEBPACK_IMPORTED_MODULE_3__[\"process\"](mountDOM, styleElement, appName);\n }, _fetch);\n dynamicLinkAttachedInlineStyleMap.set(element, stylesheetElement);\n } else {\n _css__WEBPACK_IMPORTED_MODULE_3__[\"process\"](mountDOM, stylesheetElement, appName);\n }\n } // eslint-disable-next-line no-shadow\n\n\n dynamicStyleSheetElements.push(stylesheetElement);\n var referenceNode = mountDOM.contains(refChild) ? refChild : null;\n return rawDOMAppendOrInsertBefore.call(mountDOM, stylesheetElement, referenceNode);\n }\n\n case SCRIPT_TAG_NAME:\n {\n var _element = element,\n src = _element.src,\n text = _element.text; // some script like jsonp maybe not support cors which should't use execScripts\n\n if (excludeAssetFilter && src && excludeAssetFilter(src)) {\n return rawDOMAppendOrInsertBefore.call(this, element, refChild);\n }\n\n var _mountDOM = appWrapperGetter();\n\n var _fetch2 = _apis__WEBPACK_IMPORTED_MODULE_2__[\"frameworkConfiguration\"].fetch;\n\n var _referenceNode = _mountDOM.contains(refChild) ? refChild : null;\n\n if (src) {\n Object(import_html_entry__WEBPACK_IMPORTED_MODULE_1__[\"execScripts\"])(null, [src], proxy, {\n fetch: _fetch2,\n strictGlobal: strictGlobal,\n beforeExec: function beforeExec() {\n Object.defineProperty(document, 'currentScript', {\n get: function get() {\n return element;\n },\n configurable: true\n });\n },\n success: function success() {\n manualInvokeElementOnLoad(element);\n element = null;\n },\n error: function error() {\n manualInvokeElementOnError(element);\n element = null;\n }\n });\n var dynamicScriptCommentElement = document.createComment(\"dynamic script \".concat(src, \" replaced by qiankun\"));\n dynamicScriptAttachedCommentMap.set(element, dynamicScriptCommentElement);\n return rawDOMAppendOrInsertBefore.call(_mountDOM, dynamicScriptCommentElement, _referenceNode);\n } // inline script never trigger the onload and onerror event\n\n\n Object(import_html_entry__WEBPACK_IMPORTED_MODULE_1__[\"execScripts\"])(null, [\"\")], proxy, {\n strictGlobal: strictGlobal\n });\n var dynamicInlineScriptCommentElement = document.createComment('dynamic inline script replaced by qiankun');\n dynamicScriptAttachedCommentMap.set(element, dynamicInlineScriptCommentElement);\n return rawDOMAppendOrInsertBefore.call(_mountDOM, dynamicInlineScriptCommentElement, _referenceNode);\n }\n\n default:\n break;\n }\n }\n\n return rawDOMAppendOrInsertBefore.call(this, element, refChild);\n };\n}\n\nfunction getNewRemoveChild(headOrBodyRemoveChild, appWrapperGetterGetter) {\n return function removeChild(child) {\n var tagName = child.tagName;\n if (!isHijackingTag(tagName)) return headOrBodyRemoveChild.call(this, child);\n\n try {\n var attachedElement;\n\n switch (tagName) {\n case LINK_TAG_NAME:\n {\n attachedElement = dynamicLinkAttachedInlineStyleMap.get(child) || child;\n break;\n }\n\n case SCRIPT_TAG_NAME:\n {\n attachedElement = dynamicScriptAttachedCommentMap.get(child) || child;\n break;\n }\n\n default:\n {\n attachedElement = child;\n }\n } // container may had been removed while app unmounting if the removeChild action was async\n\n\n var appWrapperGetter = appWrapperGetterGetter(child);\n var container = appWrapperGetter();\n\n if (container.contains(attachedElement)) {\n return rawRemoveChild.call(container, attachedElement);\n }\n } catch (e) {\n console.warn(e);\n }\n\n return headOrBodyRemoveChild.call(this, child);\n };\n}\n\nfunction patchHTMLDynamicAppendPrototypeFunctions(isInvokedByMicroApp, containerConfigGetter) {\n // Just overwrite it while it have not been overwrite\n if (HTMLHeadElement.prototype.appendChild === rawHeadAppendChild && HTMLBodyElement.prototype.appendChild === rawBodyAppendChild && HTMLHeadElement.prototype.insertBefore === rawHeadInsertBefore) {\n HTMLHeadElement.prototype.appendChild = getOverwrittenAppendChildOrInsertBefore({\n rawDOMAppendOrInsertBefore: rawHeadAppendChild,\n containerConfigGetter: containerConfigGetter,\n isInvokedByMicroApp: isInvokedByMicroApp\n });\n HTMLBodyElement.prototype.appendChild = getOverwrittenAppendChildOrInsertBefore({\n rawDOMAppendOrInsertBefore: rawBodyAppendChild,\n containerConfigGetter: containerConfigGetter,\n isInvokedByMicroApp: isInvokedByMicroApp\n });\n HTMLHeadElement.prototype.insertBefore = getOverwrittenAppendChildOrInsertBefore({\n rawDOMAppendOrInsertBefore: rawHeadInsertBefore,\n containerConfigGetter: containerConfigGetter,\n isInvokedByMicroApp: isInvokedByMicroApp\n });\n } // Just overwrite it while it have not been overwrite\n\n\n if (HTMLHeadElement.prototype.removeChild === rawHeadRemoveChild && HTMLBodyElement.prototype.removeChild === rawBodyRemoveChild) {\n HTMLHeadElement.prototype.removeChild = getNewRemoveChild(rawHeadRemoveChild, function (element) {\n return containerConfigGetter(element).appWrapperGetter;\n });\n HTMLBodyElement.prototype.removeChild = getNewRemoveChild(rawBodyRemoveChild, function (element) {\n return containerConfigGetter(element).appWrapperGetter;\n });\n }\n\n return function unpatch() {\n HTMLHeadElement.prototype.appendChild = rawHeadAppendChild;\n HTMLHeadElement.prototype.removeChild = rawHeadRemoveChild;\n HTMLBodyElement.prototype.appendChild = rawBodyAppendChild;\n HTMLBodyElement.prototype.removeChild = rawBodyRemoveChild;\n HTMLHeadElement.prototype.insertBefore = rawHeadInsertBefore;\n };\n}\nfunction rebuildCSSRules(styleSheetElements, reAppendElement) {\n styleSheetElements.forEach(function (stylesheetElement) {\n // re-append the dynamic stylesheet to sub-app container\n var appendSuccess = reAppendElement(stylesheetElement);\n\n if (appendSuccess) {\n /*\n get the stored css rules from styled-components generated element, and the re-insert rules for them.\n note that we must do this after style element had been added to document, which stylesheet would be associated to the document automatically.\n check the spec https://www.w3.org/TR/cssom-1/#associated-css-style-sheet\n */\n if (stylesheetElement instanceof HTMLStyleElement && isStyledComponentsLike(stylesheetElement)) {\n var cssRules = getStyledElementCSSRules(stylesheetElement);\n\n if (cssRules) {\n // eslint-disable-next-line no-plusplus\n for (var i = 0; i < cssRules.length; i++) {\n var cssRule = cssRules[i];\n var cssStyleSheetElement = stylesheetElement.sheet;\n cssStyleSheetElement.insertRule(cssRule.cssText, cssStyleSheetElement.cssRules.length);\n }\n }\n }\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2R5bmFtaWNBcHBlbmQvY29tbW9uLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9wYXRjaGVycy9keW5hbWljQXBwZW5kL2NvbW1vbi5qcz8yZWEwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfaXNGdW5jdGlvbiBmcm9tIFwibG9kYXNoL2lzRnVuY3Rpb25cIjtcblxuLyoqXG4gKiBAYXV0aG9yIEt1aXRvc1xuICogQHNpbmNlIDIwMTktMTAtMjFcbiAqL1xuaW1wb3J0IHsgZXhlY1NjcmlwdHMgfSBmcm9tICdpbXBvcnQtaHRtbC1lbnRyeSc7XG5pbXBvcnQgeyBmcmFtZXdvcmtDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vYXBpcyc7XG5pbXBvcnQgKiBhcyBjc3MgZnJvbSAnLi4vY3NzJztcbmV4cG9ydCB2YXIgcmF3SGVhZEFwcGVuZENoaWxkID0gSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5hcHBlbmRDaGlsZDtcbnZhciByYXdIZWFkUmVtb3ZlQ2hpbGQgPSBIVE1MSGVhZEVsZW1lbnQucHJvdG90eXBlLnJlbW92ZUNoaWxkO1xudmFyIHJhd0JvZHlBcHBlbmRDaGlsZCA9IEhUTUxCb2R5RWxlbWVudC5wcm90b3R5cGUuYXBwZW5kQ2hpbGQ7XG52YXIgcmF3Qm9keVJlbW92ZUNoaWxkID0gSFRNTEJvZHlFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZDtcbnZhciByYXdIZWFkSW5zZXJ0QmVmb3JlID0gSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5pbnNlcnRCZWZvcmU7XG52YXIgcmF3UmVtb3ZlQ2hpbGQgPSBIVE1MRWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGQ7XG52YXIgU0NSSVBUX1RBR19OQU1FID0gJ1NDUklQVCc7XG52YXIgTElOS19UQUdfTkFNRSA9ICdMSU5LJztcbnZhciBTVFlMRV9UQUdfTkFNRSA9ICdTVFlMRSc7XG5leHBvcnQgZnVuY3Rpb24gaXNIaWphY2tpbmdUYWcodGFnTmFtZSkge1xuICByZXR1cm4gKHRhZ05hbWUgPT09IG51bGwgfHwgdGFnTmFtZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogdGFnTmFtZS50b1VwcGVyQ2FzZSgpKSA9PT0gTElOS19UQUdfTkFNRSB8fCAodGFnTmFtZSA9PT0gbnVsbCB8fCB0YWdOYW1lID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0YWdOYW1lLnRvVXBwZXJDYXNlKCkpID09PSBTVFlMRV9UQUdfTkFNRSB8fCAodGFnTmFtZSA9PT0gbnVsbCB8fCB0YWdOYW1lID09PSB2b2lkIDAgPyB2b2lkIDAgOiB0YWdOYW1lLnRvVXBwZXJDYXNlKCkpID09PSBTQ1JJUFRfVEFHX05BTUU7XG59XG4vKipcbiAqIENoZWNrIGlmIGEgc3R5bGUgZWxlbWVudCBpcyBhIHN0eWxlZC1jb21wb25lbnQgbGlrZWQuXG4gKiBBIHN0eWxlZC1jb21wb25lbnRzIGxpa2VkIGVsZW1lbnQgaXMgd2hpY2ggbm90IGhhdmUgdGV4dENvbnRleHQgYnV0IGtlZXAgdGhlIHJ1bGVzIGluIGl0cyBzdHlsZVNoZWV0LmNzc1J1bGVzLlxuICogU3VjaCBhcyB0aGUgc3R5bGUgZWxlbWVudCBnZW5lcmF0ZWQgYnkgc3R5bGVkLWNvbXBvbmVudHMgYW5kIGVtb3Rpb24uXG4gKiBAcGFyYW0gZWxlbWVudFxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBpc1N0eWxlZENvbXBvbmVudHNMaWtlKGVsZW1lbnQpIHtcbiAgdmFyIF9hLCBfYjtcblxuICByZXR1cm4gIWVsZW1lbnQudGV4dENvbnRlbnQgJiYgKCgoX2EgPSBlbGVtZW50LnNoZWV0KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY3NzUnVsZXMubGVuZ3RoKSB8fCAoKF9iID0gZ2V0U3R5bGVkRWxlbWVudENTU1J1bGVzKGVsZW1lbnQpKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IubGVuZ3RoKSk7XG59XG5cbmZ1bmN0aW9uIHBhdGNoQ3VzdG9tRXZlbnQoZSwgZWxlbWVudEdldHRlcikge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydGllcyhlLCB7XG4gICAgc3JjRWxlbWVudDoge1xuICAgICAgZ2V0OiBlbGVtZW50R2V0dGVyXG4gICAgfSxcbiAgICB0YXJnZXQ6IHtcbiAgICAgIGdldDogZWxlbWVudEdldHRlclxuICAgIH1cbiAgfSk7XG4gIHJldHVybiBlO1xufVxuXG5mdW5jdGlvbiBtYW51YWxJbnZva2VFbGVtZW50T25Mb2FkKGVsZW1lbnQpIHtcbiAgLy8gd2UgbmVlZCB0byBpbnZva2UgdGhlIG9ubG9hZCBldmVudCBtYW51YWxseSB0byBub3RpZnkgdGhlIGV2ZW50IGxpc3RlbmVyIHRoYXQgdGhlIHNjcmlwdCB3YXMgY29tcGxldGVkXG4gIC8vIGhlcmUgYXJlIHRoZSB0d28gdHlwaWNhbCB3YXlzIG9mIGR5bmFtaWMgc2NyaXB0IGxvYWRpbmdcbiAgLy8gMS4gZWxlbWVudC5vbmxvYWQgY2FsbGJhY2sgd2F5LCB3aGljaCB3ZWJwYWNrIGFuZCBsb2FkanMgdXNlZCwgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9tdWljc3MvbG9hZGpzL2Jsb2IvbWFzdGVyL3NyYy9sb2FkanMuanMjTDEzOFxuICAvLyAyLiBhZGRFdmVudExpc3RlbmVyIHdheSwgd2hpY2ggdG9hc3QtbG9hZGVyIHVzZWQsIHNlZSBodHRwczovL2dpdGh1Yi5jb20vcHlyc21rL3RvYXN0L2Jsb2IvbWFzdGVyL3NyYy9Ub2FzdC50cyNMNjRcbiAgdmFyIGxvYWRFdmVudCA9IG5ldyBDdXN0b21FdmVudCgnbG9hZCcpO1xuICB2YXIgcGF0Y2hlZEV2ZW50ID0gcGF0Y2hDdXN0b21FdmVudChsb2FkRXZlbnQsIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfSk7XG5cbiAgaWYgKF9pc0Z1bmN0aW9uKGVsZW1lbnQub25sb2FkKSkge1xuICAgIGVsZW1lbnQub25sb2FkKHBhdGNoZWRFdmVudCk7XG4gIH0gZWxzZSB7XG4gICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KHBhdGNoZWRFdmVudCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gbWFudWFsSW52b2tlRWxlbWVudE9uRXJyb3IoZWxlbWVudCkge1xuICB2YXIgZXJyb3JFdmVudCA9IG5ldyBDdXN0b21FdmVudCgnZXJyb3InKTtcbiAgdmFyIHBhdGNoZWRFdmVudCA9IHBhdGNoQ3VzdG9tRXZlbnQoZXJyb3JFdmVudCwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBlbGVtZW50O1xuICB9KTtcblxuICBpZiAoX2lzRnVuY3Rpb24oZWxlbWVudC5vbmVycm9yKSkge1xuICAgIGVsZW1lbnQub25lcnJvcihwYXRjaGVkRXZlbnQpO1xuICB9IGVsc2Uge1xuICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChwYXRjaGVkRXZlbnQpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRMaW5rQXNTdHlsZShlbGVtZW50LCBwb3N0UHJvY2Vzcykge1xuICB2YXIgZmV0Y2hGbiA9IGFyZ3VtZW50cy5sZW5ndGggPiAyICYmIGFyZ3VtZW50c1syXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzJdIDogZmV0Y2g7XG4gIHZhciBzdHlsZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICB2YXIgaHJlZiA9IGVsZW1lbnQuaHJlZjsgLy8gYWRkIHNvdXJjZSBsaW5rIGVsZW1lbnQgaHJlZlxuXG4gIHN0eWxlRWxlbWVudC5kYXRhc2V0LnFpYW5rdW5IcmVmID0gaHJlZjtcbiAgZmV0Y2hGbihocmVmKS50aGVuKGZ1bmN0aW9uIChyZXMpIHtcbiAgICByZXR1cm4gcmVzLnRleHQoKTtcbiAgfSkudGhlbihmdW5jdGlvbiAoc3R5bGVDb250ZXh0KSB7XG4gICAgc3R5bGVFbGVtZW50LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHN0eWxlQ29udGV4dCkpO1xuICAgIHBvc3RQcm9jZXNzKHN0eWxlRWxlbWVudCk7XG4gICAgbWFudWFsSW52b2tlRWxlbWVudE9uTG9hZChlbGVtZW50KTtcbiAgfSkuY2F0Y2goZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBtYW51YWxJbnZva2VFbGVtZW50T25FcnJvcihlbGVtZW50KTtcbiAgfSk7XG4gIHJldHVybiBzdHlsZUVsZW1lbnQ7XG59XG5cbnZhciBzdHlsZWRDb21wb25lbnRDU1NSdWxlc01hcCA9IG5ldyBXZWFrTWFwKCk7XG52YXIgZHluYW1pY1NjcmlwdEF0dGFjaGVkQ29tbWVudE1hcCA9IG5ldyBXZWFrTWFwKCk7XG52YXIgZHluYW1pY0xpbmtBdHRhY2hlZElubGluZVN0eWxlTWFwID0gbmV3IFdlYWtNYXAoKTtcbmV4cG9ydCBmdW5jdGlvbiByZWNvcmRTdHlsZWRDb21wb25lbnRzQ1NTUnVsZXMoc3R5bGVFbGVtZW50cykge1xuICBzdHlsZUVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24gKHN0eWxlRWxlbWVudCkge1xuICAgIC8qXG4gICAgIFdpdGggYSBzdHlsZWQtY29tcG9uZW50cyBnZW5lcmF0ZWQgc3R5bGUgZWxlbWVudCwgd2UgbmVlZCB0byByZWNvcmQgaXRzIGNzc1J1bGVzIGZvciByZXN0b3JlIG5leHQgcmUtbW91bnRpbmcgdGltZS5cbiAgICAgV2UncmUgZG9pbmcgdGhpcyBiZWNhdXNlIHRoZSBzaGVldCBvZiBzdHlsZSBlbGVtZW50IGlzIGdvaW5nIHRvIGJlIGNsZWFuZWQgYXV0b21hdGljYWxseSBieSBicm93c2VyIGFmdGVyIHRoZSBzdHlsZSBlbGVtZW50IGRvbSByZW1vdmVkIGZyb20gZG9jdW1lbnQuXG4gICAgIHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3Nzb20tMS8jYXNzb2NpYXRlZC1jc3Mtc3R5bGUtc2hlZXRcbiAgICAgKi9cbiAgICBpZiAoc3R5bGVFbGVtZW50IGluc3RhbmNlb2YgSFRNTFN0eWxlRWxlbWVudCAmJiBpc1N0eWxlZENvbXBvbmVudHNMaWtlKHN0eWxlRWxlbWVudCkpIHtcbiAgICAgIGlmIChzdHlsZUVsZW1lbnQuc2hlZXQpIHtcbiAgICAgICAgLy8gcmVjb3JkIHRoZSBvcmlnaW5hbCBjc3MgcnVsZXMgb2YgdGhlIHN0eWxlIGVsZW1lbnQgZm9yIHJlc3RvcmVcbiAgICAgICAgc3R5bGVkQ29tcG9uZW50Q1NTUnVsZXNNYXAuc2V0KHN0eWxlRWxlbWVudCwgc3R5bGVFbGVtZW50LnNoZWV0LmNzc1J1bGVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldFN0eWxlZEVsZW1lbnRDU1NSdWxlcyhzdHlsZWRFbGVtZW50KSB7XG4gIHJldHVybiBzdHlsZWRDb21wb25lbnRDU1NSdWxlc01hcC5nZXQoc3R5bGVkRWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGdldE92ZXJ3cml0dGVuQXBwZW5kQ2hpbGRPckluc2VydEJlZm9yZShvcHRzKSB7XG4gIHJldHVybiBmdW5jdGlvbiBhcHBlbmRDaGlsZE9ySW5zZXJ0QmVmb3JlKG5ld0NoaWxkLCByZWZDaGlsZCkge1xuICAgIHZhciBfYSwgX2I7XG5cbiAgICB2YXIgZWxlbWVudCA9IG5ld0NoaWxkO1xuICAgIHZhciByYXdET01BcHBlbmRPckluc2VydEJlZm9yZSA9IG9wdHMucmF3RE9NQXBwZW5kT3JJbnNlcnRCZWZvcmUsXG4gICAgICAgIGlzSW52b2tlZEJ5TWljcm9BcHAgPSBvcHRzLmlzSW52b2tlZEJ5TWljcm9BcHAsXG4gICAgICAgIGNvbnRhaW5lckNvbmZpZ0dldHRlciA9IG9wdHMuY29udGFpbmVyQ29uZmlnR2V0dGVyO1xuXG4gICAgaWYgKCFpc0hpamFja2luZ1RhZyhlbGVtZW50LnRhZ05hbWUpIHx8ICFpc0ludm9rZWRCeU1pY3JvQXBwKGVsZW1lbnQpKSB7XG4gICAgICByZXR1cm4gcmF3RE9NQXBwZW5kT3JJbnNlcnRCZWZvcmUuY2FsbCh0aGlzLCBlbGVtZW50LCByZWZDaGlsZCk7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnQudGFnTmFtZSkge1xuICAgICAgdmFyIGNvbnRhaW5lckNvbmZpZyA9IGNvbnRhaW5lckNvbmZpZ0dldHRlcihlbGVtZW50KTtcbiAgICAgIHZhciBhcHBOYW1lID0gY29udGFpbmVyQ29uZmlnLmFwcE5hbWUsXG4gICAgICAgICAgYXBwV3JhcHBlckdldHRlciA9IGNvbnRhaW5lckNvbmZpZy5hcHBXcmFwcGVyR2V0dGVyLFxuICAgICAgICAgIHByb3h5ID0gY29udGFpbmVyQ29uZmlnLnByb3h5LFxuICAgICAgICAgIHN0cmljdEdsb2JhbCA9IGNvbnRhaW5lckNvbmZpZy5zdHJpY3RHbG9iYWwsXG4gICAgICAgICAgZHluYW1pY1N0eWxlU2hlZXRFbGVtZW50cyA9IGNvbnRhaW5lckNvbmZpZy5keW5hbWljU3R5bGVTaGVldEVsZW1lbnRzLFxuICAgICAgICAgIHNjb3BlZENTUyA9IGNvbnRhaW5lckNvbmZpZy5zY29wZWRDU1MsXG4gICAgICAgICAgZXhjbHVkZUFzc2V0RmlsdGVyID0gY29udGFpbmVyQ29uZmlnLmV4Y2x1ZGVBc3NldEZpbHRlcjtcblxuICAgICAgc3dpdGNoIChlbGVtZW50LnRhZ05hbWUpIHtcbiAgICAgICAgY2FzZSBMSU5LX1RBR19OQU1FOlxuICAgICAgICBjYXNlIFNUWUxFX1RBR19OQU1FOlxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZhciBzdHlsZXNoZWV0RWxlbWVudCA9IG5ld0NoaWxkO1xuICAgICAgICAgICAgdmFyIF9zdHlsZXNoZWV0RWxlbWVudCA9IHN0eWxlc2hlZXRFbGVtZW50LFxuICAgICAgICAgICAgICAgIGhyZWYgPSBfc3R5bGVzaGVldEVsZW1lbnQuaHJlZjtcblxuICAgICAgICAgICAgaWYgKGV4Y2x1ZGVBc3NldEZpbHRlciAmJiBocmVmICYmIGV4Y2x1ZGVBc3NldEZpbHRlcihocmVmKSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmF3RE9NQXBwZW5kT3JJbnNlcnRCZWZvcmUuY2FsbCh0aGlzLCBlbGVtZW50LCByZWZDaGlsZCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHZhciBtb3VudERPTSA9IGFwcFdyYXBwZXJHZXR0ZXIoKTtcblxuICAgICAgICAgICAgaWYgKHNjb3BlZENTUykge1xuICAgICAgICAgICAgICAvLyBleGNsdWRlIGxpbmsgZWxlbWVudHMgbGlrZSA8bGluayByZWw9XCJpY29uXCIgaHJlZj1cImZhdmljb24uaWNvXCI+XG4gICAgICAgICAgICAgIHZhciBsaW5rRWxlbWVudFVzaW5nU3R5bGVzaGVldCA9ICgoX2EgPSBlbGVtZW50LnRhZ05hbWUpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS50b1VwcGVyQ2FzZSgpKSA9PT0gTElOS19UQUdfTkFNRSAmJiBlbGVtZW50LnJlbCA9PT0gJ3N0eWxlc2hlZXQnICYmIGVsZW1lbnQuaHJlZjtcblxuICAgICAgICAgICAgICBpZiAobGlua0VsZW1lbnRVc2luZ1N0eWxlc2hlZXQpIHtcbiAgICAgICAgICAgICAgICB2YXIgX2ZldGNoID0gdHlwZW9mIGZyYW1ld29ya0NvbmZpZ3VyYXRpb24uZmV0Y2ggPT09ICdmdW5jdGlvbicgPyBmcmFtZXdvcmtDb25maWd1cmF0aW9uLmZldGNoIDogKF9iID0gZnJhbWV3b3JrQ29uZmlndXJhdGlvbi5mZXRjaCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmZuO1xuXG4gICAgICAgICAgICAgICAgc3R5bGVzaGVldEVsZW1lbnQgPSBjb252ZXJ0TGlua0FzU3R5bGUoZWxlbWVudCwgZnVuY3Rpb24gKHN0eWxlRWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGNzcy5wcm9jZXNzKG1vdW50RE9NLCBzdHlsZUVsZW1lbnQsIGFwcE5hbWUpO1xuICAgICAgICAgICAgICAgIH0sIF9mZXRjaCk7XG4gICAgICAgICAgICAgICAgZHluYW1pY0xpbmtBdHRhY2hlZElubGluZVN0eWxlTWFwLnNldChlbGVtZW50LCBzdHlsZXNoZWV0RWxlbWVudCk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY3NzLnByb2Nlc3MobW91bnRET00sIHN0eWxlc2hlZXRFbGVtZW50LCBhcHBOYW1lKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2hhZG93XG5cblxuICAgICAgICAgICAgZHluYW1pY1N0eWxlU2hlZXRFbGVtZW50cy5wdXNoKHN0eWxlc2hlZXRFbGVtZW50KTtcbiAgICAgICAgICAgIHZhciByZWZlcmVuY2VOb2RlID0gbW91bnRET00uY29udGFpbnMocmVmQ2hpbGQpID8gcmVmQ2hpbGQgOiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlLmNhbGwobW91bnRET00sIHN0eWxlc2hlZXRFbGVtZW50LCByZWZlcmVuY2VOb2RlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBTQ1JJUFRfVEFHX05BTUU6XG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFyIF9lbGVtZW50ID0gZWxlbWVudCxcbiAgICAgICAgICAgICAgICBzcmMgPSBfZWxlbWVudC5zcmMsXG4gICAgICAgICAgICAgICAgdGV4dCA9IF9lbGVtZW50LnRleHQ7IC8vIHNvbWUgc2NyaXB0IGxpa2UganNvbnAgbWF5YmUgbm90IHN1cHBvcnQgY29ycyB3aGljaCBzaG91bGQndCB1c2UgZXhlY1NjcmlwdHNcblxuICAgICAgICAgICAgaWYgKGV4Y2x1ZGVBc3NldEZpbHRlciAmJiBzcmMgJiYgZXhjbHVkZUFzc2V0RmlsdGVyKHNyYykpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlLmNhbGwodGhpcywgZWxlbWVudCwgcmVmQ2hpbGQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB2YXIgX21vdW50RE9NID0gYXBwV3JhcHBlckdldHRlcigpO1xuXG4gICAgICAgICAgICB2YXIgX2ZldGNoMiA9IGZyYW1ld29ya0NvbmZpZ3VyYXRpb24uZmV0Y2g7XG5cbiAgICAgICAgICAgIHZhciBfcmVmZXJlbmNlTm9kZSA9IF9tb3VudERPTS5jb250YWlucyhyZWZDaGlsZCkgPyByZWZDaGlsZCA6IG51bGw7XG5cbiAgICAgICAgICAgIGlmIChzcmMpIHtcbiAgICAgICAgICAgICAgZXhlY1NjcmlwdHMobnVsbCwgW3NyY10sIHByb3h5LCB7XG4gICAgICAgICAgICAgICAgZmV0Y2g6IF9mZXRjaDIsXG4gICAgICAgICAgICAgICAgc3RyaWN0R2xvYmFsOiBzdHJpY3RHbG9iYWwsXG4gICAgICAgICAgICAgICAgYmVmb3JlRXhlYzogZnVuY3Rpb24gYmVmb3JlRXhlYygpIHtcbiAgICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkb2N1bWVudCwgJ2N1cnJlbnRTY3JpcHQnLCB7XG4gICAgICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24gZ2V0KCkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWVcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gc3VjY2VzcygpIHtcbiAgICAgICAgICAgICAgICAgIG1hbnVhbEludm9rZUVsZW1lbnRPbkxvYWQoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICBlbGVtZW50ID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbiBlcnJvcigpIHtcbiAgICAgICAgICAgICAgICAgIG1hbnVhbEludm9rZUVsZW1lbnRPbkVycm9yKGVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgZWxlbWVudCA9IG51bGw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgdmFyIGR5bmFtaWNTY3JpcHRDb21tZW50RWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoXCJkeW5hbWljIHNjcmlwdCBcIi5jb25jYXQoc3JjLCBcIiByZXBsYWNlZCBieSBxaWFua3VuXCIpKTtcbiAgICAgICAgICAgICAgZHluYW1pY1NjcmlwdEF0dGFjaGVkQ29tbWVudE1hcC5zZXQoZWxlbWVudCwgZHluYW1pY1NjcmlwdENvbW1lbnRFbGVtZW50KTtcbiAgICAgICAgICAgICAgcmV0dXJuIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlLmNhbGwoX21vdW50RE9NLCBkeW5hbWljU2NyaXB0Q29tbWVudEVsZW1lbnQsIF9yZWZlcmVuY2VOb2RlKTtcbiAgICAgICAgICAgIH0gLy8gaW5saW5lIHNjcmlwdCBuZXZlciB0cmlnZ2VyIHRoZSBvbmxvYWQgYW5kIG9uZXJyb3IgZXZlbnRcblxuXG4gICAgICAgICAgICBleGVjU2NyaXB0cyhudWxsLCBbXCI8c2NyaXB0PlwiLmNvbmNhdCh0ZXh0LCBcIjwvc2NyaXB0PlwiKV0sIHByb3h5LCB7XG4gICAgICAgICAgICAgIHN0cmljdEdsb2JhbDogc3RyaWN0R2xvYmFsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHZhciBkeW5hbWljSW5saW5lU2NyaXB0Q29tbWVudEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVDb21tZW50KCdkeW5hbWljIGlubGluZSBzY3JpcHQgcmVwbGFjZWQgYnkgcWlhbmt1bicpO1xuICAgICAgICAgICAgZHluYW1pY1NjcmlwdEF0dGFjaGVkQ29tbWVudE1hcC5zZXQoZWxlbWVudCwgZHluYW1pY0lubGluZVNjcmlwdENvbW1lbnRFbGVtZW50KTtcbiAgICAgICAgICAgIHJldHVybiByYXdET01BcHBlbmRPckluc2VydEJlZm9yZS5jYWxsKF9tb3VudERPTSwgZHluYW1pY0lubGluZVNjcmlwdENvbW1lbnRFbGVtZW50LCBfcmVmZXJlbmNlTm9kZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlLmNhbGwodGhpcywgZWxlbWVudCwgcmVmQ2hpbGQpO1xuICB9O1xufVxuXG5mdW5jdGlvbiBnZXROZXdSZW1vdmVDaGlsZChoZWFkT3JCb2R5UmVtb3ZlQ2hpbGQsIGFwcFdyYXBwZXJHZXR0ZXJHZXR0ZXIpIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIHJlbW92ZUNoaWxkKGNoaWxkKSB7XG4gICAgdmFyIHRhZ05hbWUgPSBjaGlsZC50YWdOYW1lO1xuICAgIGlmICghaXNIaWphY2tpbmdUYWcodGFnTmFtZSkpIHJldHVybiBoZWFkT3JCb2R5UmVtb3ZlQ2hpbGQuY2FsbCh0aGlzLCBjaGlsZCk7XG5cbiAgICB0cnkge1xuICAgICAgdmFyIGF0dGFjaGVkRWxlbWVudDtcblxuICAgICAgc3dpdGNoICh0YWdOYW1lKSB7XG4gICAgICAgIGNhc2UgTElOS19UQUdfTkFNRTpcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhdHRhY2hlZEVsZW1lbnQgPSBkeW5hbWljTGlua0F0dGFjaGVkSW5saW5lU3R5bGVNYXAuZ2V0KGNoaWxkKSB8fCBjaGlsZDtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cblxuICAgICAgICBjYXNlIFNDUklQVF9UQUdfTkFNRTpcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhdHRhY2hlZEVsZW1lbnQgPSBkeW5hbWljU2NyaXB0QXR0YWNoZWRDb21tZW50TWFwLmdldChjaGlsZCkgfHwgY2hpbGQ7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB7XG4gICAgICAgICAgICBhdHRhY2hlZEVsZW1lbnQgPSBjaGlsZDtcbiAgICAgICAgICB9XG4gICAgICB9IC8vIGNvbnRhaW5lciBtYXkgaGFkIGJlZW4gcmVtb3ZlZCB3aGlsZSBhcHAgdW5tb3VudGluZyBpZiB0aGUgcmVtb3ZlQ2hpbGQgYWN0aW9uIHdhcyBhc3luY1xuXG5cbiAgICAgIHZhciBhcHBXcmFwcGVyR2V0dGVyID0gYXBwV3JhcHBlckdldHRlckdldHRlcihjaGlsZCk7XG4gICAgICB2YXIgY29udGFpbmVyID0gYXBwV3JhcHBlckdldHRlcigpO1xuXG4gICAgICBpZiAoY29udGFpbmVyLmNvbnRhaW5zKGF0dGFjaGVkRWxlbWVudCkpIHtcbiAgICAgICAgcmV0dXJuIHJhd1JlbW92ZUNoaWxkLmNhbGwoY29udGFpbmVyLCBhdHRhY2hlZEVsZW1lbnQpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybihlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaGVhZE9yQm9keVJlbW92ZUNoaWxkLmNhbGwodGhpcywgY2hpbGQpO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2hIVE1MRHluYW1pY0FwcGVuZFByb3RvdHlwZUZ1bmN0aW9ucyhpc0ludm9rZWRCeU1pY3JvQXBwLCBjb250YWluZXJDb25maWdHZXR0ZXIpIHtcbiAgLy8gSnVzdCBvdmVyd3JpdGUgaXQgd2hpbGUgaXQgaGF2ZSBub3QgYmVlbiBvdmVyd3JpdGVcbiAgaWYgKEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUuYXBwZW5kQ2hpbGQgPT09IHJhd0hlYWRBcHBlbmRDaGlsZCAmJiBIVE1MQm9keUVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkID09PSByYXdCb2R5QXBwZW5kQ2hpbGQgJiYgSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5pbnNlcnRCZWZvcmUgPT09IHJhd0hlYWRJbnNlcnRCZWZvcmUpIHtcbiAgICBIVE1MSGVhZEVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkID0gZ2V0T3ZlcndyaXR0ZW5BcHBlbmRDaGlsZE9ySW5zZXJ0QmVmb3JlKHtcbiAgICAgIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlOiByYXdIZWFkQXBwZW5kQ2hpbGQsXG4gICAgICBjb250YWluZXJDb25maWdHZXR0ZXI6IGNvbnRhaW5lckNvbmZpZ0dldHRlcixcbiAgICAgIGlzSW52b2tlZEJ5TWljcm9BcHA6IGlzSW52b2tlZEJ5TWljcm9BcHBcbiAgICB9KTtcbiAgICBIVE1MQm9keUVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkID0gZ2V0T3ZlcndyaXR0ZW5BcHBlbmRDaGlsZE9ySW5zZXJ0QmVmb3JlKHtcbiAgICAgIHJhd0RPTUFwcGVuZE9ySW5zZXJ0QmVmb3JlOiByYXdCb2R5QXBwZW5kQ2hpbGQsXG4gICAgICBjb250YWluZXJDb25maWdHZXR0ZXI6IGNvbnRhaW5lckNvbmZpZ0dldHRlcixcbiAgICAgIGlzSW52b2tlZEJ5TWljcm9BcHA6IGlzSW52b2tlZEJ5TWljcm9BcHBcbiAgICB9KTtcbiAgICBIVE1MSGVhZEVsZW1lbnQucHJvdG90eXBlLmluc2VydEJlZm9yZSA9IGdldE92ZXJ3cml0dGVuQXBwZW5kQ2hpbGRPckluc2VydEJlZm9yZSh7XG4gICAgICByYXdET01BcHBlbmRPckluc2VydEJlZm9yZTogcmF3SGVhZEluc2VydEJlZm9yZSxcbiAgICAgIGNvbnRhaW5lckNvbmZpZ0dldHRlcjogY29udGFpbmVyQ29uZmlnR2V0dGVyLFxuICAgICAgaXNJbnZva2VkQnlNaWNyb0FwcDogaXNJbnZva2VkQnlNaWNyb0FwcFxuICAgIH0pO1xuICB9IC8vIEp1c3Qgb3ZlcndyaXRlIGl0IHdoaWxlIGl0IGhhdmUgbm90IGJlZW4gb3ZlcndyaXRlXG5cblxuICBpZiAoSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZCA9PT0gcmF3SGVhZFJlbW92ZUNoaWxkICYmIEhUTUxCb2R5RWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGQgPT09IHJhd0JvZHlSZW1vdmVDaGlsZCkge1xuICAgIEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGQgPSBnZXROZXdSZW1vdmVDaGlsZChyYXdIZWFkUmVtb3ZlQ2hpbGQsIGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgICByZXR1cm4gY29udGFpbmVyQ29uZmlnR2V0dGVyKGVsZW1lbnQpLmFwcFdyYXBwZXJHZXR0ZXI7XG4gICAgfSk7XG4gICAgSFRNTEJvZHlFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZCA9IGdldE5ld1JlbW92ZUNoaWxkKHJhd0JvZHlSZW1vdmVDaGlsZCwgZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgICAgIHJldHVybiBjb250YWluZXJDb25maWdHZXR0ZXIoZWxlbWVudCkuYXBwV3JhcHBlckdldHRlcjtcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBmdW5jdGlvbiB1bnBhdGNoKCkge1xuICAgIEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUuYXBwZW5kQ2hpbGQgPSByYXdIZWFkQXBwZW5kQ2hpbGQ7XG4gICAgSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVDaGlsZCA9IHJhd0hlYWRSZW1vdmVDaGlsZDtcbiAgICBIVE1MQm9keUVsZW1lbnQucHJvdG90eXBlLmFwcGVuZENoaWxkID0gcmF3Qm9keUFwcGVuZENoaWxkO1xuICAgIEhUTUxCb2R5RWxlbWVudC5wcm90b3R5cGUucmVtb3ZlQ2hpbGQgPSByYXdCb2R5UmVtb3ZlQ2hpbGQ7XG4gICAgSFRNTEhlYWRFbGVtZW50LnByb3RvdHlwZS5pbnNlcnRCZWZvcmUgPSByYXdIZWFkSW5zZXJ0QmVmb3JlO1xuICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIHJlYnVpbGRDU1NSdWxlcyhzdHlsZVNoZWV0RWxlbWVudHMsIHJlQXBwZW5kRWxlbWVudCkge1xuICBzdHlsZVNoZWV0RWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbiAoc3R5bGVzaGVldEVsZW1lbnQpIHtcbiAgICAvLyByZS1hcHBlbmQgdGhlIGR5bmFtaWMgc3R5bGVzaGVldCB0byBzdWItYXBwIGNvbnRhaW5lclxuICAgIHZhciBhcHBlbmRTdWNjZXNzID0gcmVBcHBlbmRFbGVtZW50KHN0eWxlc2hlZXRFbGVtZW50KTtcblxuICAgIGlmIChhcHBlbmRTdWNjZXNzKSB7XG4gICAgICAvKlxuICAgICAgZ2V0IHRoZSBzdG9yZWQgY3NzIHJ1bGVzIGZyb20gc3R5bGVkLWNvbXBvbmVudHMgZ2VuZXJhdGVkIGVsZW1lbnQsIGFuZCB0aGUgcmUtaW5zZXJ0IHJ1bGVzIGZvciB0aGVtLlxuICAgICAgbm90ZSB0aGF0IHdlIG11c3QgZG8gdGhpcyBhZnRlciBzdHlsZSBlbGVtZW50IGhhZCBiZWVuIGFkZGVkIHRvIGRvY3VtZW50LCB3aGljaCBzdHlsZXNoZWV0IHdvdWxkIGJlIGFzc29jaWF0ZWQgdG8gdGhlIGRvY3VtZW50IGF1dG9tYXRpY2FsbHkuXG4gICAgICBjaGVjayB0aGUgc3BlYyBodHRwczovL3d3dy53My5vcmcvVFIvY3Nzb20tMS8jYXNzb2NpYXRlZC1jc3Mtc3R5bGUtc2hlZXRcbiAgICAgICAqL1xuICAgICAgaWYgKHN0eWxlc2hlZXRFbGVtZW50IGluc3RhbmNlb2YgSFRNTFN0eWxlRWxlbWVudCAmJiBpc1N0eWxlZENvbXBvbmVudHNMaWtlKHN0eWxlc2hlZXRFbGVtZW50KSkge1xuICAgICAgICB2YXIgY3NzUnVsZXMgPSBnZXRTdHlsZWRFbGVtZW50Q1NTUnVsZXMoc3R5bGVzaGVldEVsZW1lbnQpO1xuXG4gICAgICAgIGlmIChjc3NSdWxlcykge1xuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wbHVzcGx1c1xuICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY3NzUnVsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHZhciBjc3NSdWxlID0gY3NzUnVsZXNbaV07XG4gICAgICAgICAgICB2YXIgY3NzU3R5bGVTaGVldEVsZW1lbnQgPSBzdHlsZXNoZWV0RWxlbWVudC5zaGVldDtcbiAgICAgICAgICAgIGNzc1N0eWxlU2hlZXRFbGVtZW50Lmluc2VydFJ1bGUoY3NzUnVsZS5jc3NUZXh0LCBjc3NTdHlsZVNoZWV0RWxlbWVudC5jc3NSdWxlcy5sZW5ndGgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSk7XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/common.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forLooseSandbox.js": /*!***********************************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forLooseSandbox.js ***! \***********************************************************************************/ /*! exports provided: patchLooseSandbox */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"patchLooseSandbox\", function() { return patchLooseSandbox; });\n/* harmony import */ var single_spa__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! single-spa */ \"./node_modules/single-spa/lib/esm/single-spa.min.js\");\n/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./common */ \"./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/common.js\");\n/**\n * @author Kuitos\n * @since 2020-10-13\n */\n\n\nvar bootstrappingPatchCount = 0;\nvar mountingPatchCount = 0;\n/**\n * Just hijack dynamic head append, that could avoid accidentally hijacking the insertion of elements except in head.\n * Such a case: ReactDOM.createPortal(, container),\n * this could made we append the style element into app wrapper but it will cause an error while the react portal unmounting, as ReactDOM could not find the style in body children list.\n * @param appName\n * @param appWrapperGetter\n * @param proxy\n * @param mounting\n * @param scopedCSS\n * @param excludeAssetFilter\n */\n\nfunction patchLooseSandbox(appName, appWrapperGetter, proxy) {\n var mounting = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var scopedCSS = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n var excludeAssetFilter = arguments.length > 5 ? arguments[5] : undefined;\n var dynamicStyleSheetElements = [];\n var unpatchDynamicAppendPrototypeFunctions = Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"patchHTMLDynamicAppendPrototypeFunctions\"])(\n /*\n check if the currently specified application is active\n While we switch page from qiankun app to a normal react routing page, the normal one may load stylesheet dynamically while page rendering,\n but the url change listener must to wait until the current call stack is flushed.\n This scenario may cause we record the stylesheet from react routing page dynamic injection,\n and remove them after the url change triggered and qiankun app is unmouting\n see https://github.com/ReactTraining/history/blob/master/modules/createHashHistory.js#L222-L230\n */\n function () {\n return Object(single_spa__WEBPACK_IMPORTED_MODULE_0__[\"checkActivityFunctions\"])(window.location).some(function (name) {\n return name === appName;\n });\n }, function () {\n return {\n appName: appName,\n appWrapperGetter: appWrapperGetter,\n proxy: proxy,\n strictGlobal: false,\n scopedCSS: scopedCSS,\n dynamicStyleSheetElements: dynamicStyleSheetElements,\n excludeAssetFilter: excludeAssetFilter\n };\n });\n if (!mounting) bootstrappingPatchCount++;\n if (mounting) mountingPatchCount++;\n return function free() {\n // bootstrap patch just called once but its freer will be called multiple times\n if (!mounting && bootstrappingPatchCount !== 0) bootstrappingPatchCount--;\n if (mounting) mountingPatchCount--;\n var allMicroAppUnmounted = mountingPatchCount === 0 && bootstrappingPatchCount === 0; // release the overwrite prototype after all the micro apps unmounted\n\n if (allMicroAppUnmounted) unpatchDynamicAppendPrototypeFunctions();\n Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"recordStyledComponentsCSSRules\"])(dynamicStyleSheetElements); // As now the sub app content all wrapped with a special id container,\n // the dynamic style sheet would be removed automatically while unmoutting\n\n return function rebuild() {\n Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"rebuildCSSRules\"])(dynamicStyleSheetElements, function (stylesheetElement) {\n var appWrapper = appWrapperGetter();\n\n if (!appWrapper.contains(stylesheetElement)) {\n // Using document.head.appendChild ensures that appendChild invocation can also directly use the HTMLHeadElement.prototype.appendChild method which is overwritten at mounting phase\n document.head.appendChild.call(appWrapper, stylesheetElement);\n return true;\n }\n\n return false;\n }); // As the patcher will be invoked every mounting phase, we could release the cache for gc after rebuilding\n\n if (mounting) {\n dynamicStyleSheetElements = [];\n }\n };\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2R5bmFtaWNBcHBlbmQvZm9yTG9vc2VTYW5kYm94LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9wYXRjaGVycy9keW5hbWljQXBwZW5kL2Zvckxvb3NlU2FuZGJveC5qcz81M2Q3Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGF1dGhvciBLdWl0b3NcbiAqIEBzaW5jZSAyMDIwLTEwLTEzXG4gKi9cbmltcG9ydCB7IGNoZWNrQWN0aXZpdHlGdW5jdGlvbnMgfSBmcm9tICdzaW5nbGUtc3BhJztcbmltcG9ydCB7IHBhdGNoSFRNTER5bmFtaWNBcHBlbmRQcm90b3R5cGVGdW5jdGlvbnMsIHJlYnVpbGRDU1NSdWxlcywgcmVjb3JkU3R5bGVkQ29tcG9uZW50c0NTU1J1bGVzIH0gZnJvbSAnLi9jb21tb24nO1xudmFyIGJvb3RzdHJhcHBpbmdQYXRjaENvdW50ID0gMDtcbnZhciBtb3VudGluZ1BhdGNoQ291bnQgPSAwO1xuLyoqXG4gKiBKdXN0IGhpamFjayBkeW5hbWljIGhlYWQgYXBwZW5kLCB0aGF0IGNvdWxkIGF2b2lkIGFjY2lkZW50YWxseSBoaWphY2tpbmcgdGhlIGluc2VydGlvbiBvZiBlbGVtZW50cyBleGNlcHQgaW4gaGVhZC5cbiAqIFN1Y2ggYSBjYXNlOiBSZWFjdERPTS5jcmVhdGVQb3J0YWwoPHN0eWxlPi50ZXN0e2NvbG9yOmJsdWV9PC9zdHlsZT4sIGNvbnRhaW5lciksXG4gKiB0aGlzIGNvdWxkIG1hZGUgd2UgYXBwZW5kIHRoZSBzdHlsZSBlbGVtZW50IGludG8gYXBwIHdyYXBwZXIgYnV0IGl0IHdpbGwgY2F1c2UgYW4gZXJyb3Igd2hpbGUgdGhlIHJlYWN0IHBvcnRhbCB1bm1vdW50aW5nLCBhcyBSZWFjdERPTSBjb3VsZCBub3QgZmluZCB0aGUgc3R5bGUgaW4gYm9keSBjaGlsZHJlbiBsaXN0LlxuICogQHBhcmFtIGFwcE5hbWVcbiAqIEBwYXJhbSBhcHBXcmFwcGVyR2V0dGVyXG4gKiBAcGFyYW0gcHJveHlcbiAqIEBwYXJhbSBtb3VudGluZ1xuICogQHBhcmFtIHNjb3BlZENTU1xuICogQHBhcmFtIGV4Y2x1ZGVBc3NldEZpbHRlclxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRjaExvb3NlU2FuZGJveChhcHBOYW1lLCBhcHBXcmFwcGVyR2V0dGVyLCBwcm94eSkge1xuICB2YXIgbW91bnRpbmcgPSBhcmd1bWVudHMubGVuZ3RoID4gMyAmJiBhcmd1bWVudHNbM10gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1szXSA6IHRydWU7XG4gIHZhciBzY29wZWRDU1MgPSBhcmd1bWVudHMubGVuZ3RoID4gNCAmJiBhcmd1bWVudHNbNF0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1s0XSA6IGZhbHNlO1xuICB2YXIgZXhjbHVkZUFzc2V0RmlsdGVyID0gYXJndW1lbnRzLmxlbmd0aCA+IDUgPyBhcmd1bWVudHNbNV0gOiB1bmRlZmluZWQ7XG4gIHZhciBkeW5hbWljU3R5bGVTaGVldEVsZW1lbnRzID0gW107XG4gIHZhciB1bnBhdGNoRHluYW1pY0FwcGVuZFByb3RvdHlwZUZ1bmN0aW9ucyA9IHBhdGNoSFRNTER5bmFtaWNBcHBlbmRQcm90b3R5cGVGdW5jdGlvbnMoXG4gIC8qXG4gICAgY2hlY2sgaWYgdGhlIGN1cnJlbnRseSBzcGVjaWZpZWQgYXBwbGljYXRpb24gaXMgYWN0aXZlXG4gICAgV2hpbGUgd2Ugc3dpdGNoIHBhZ2UgZnJvbSBxaWFua3VuIGFwcCB0byBhIG5vcm1hbCByZWFjdCByb3V0aW5nIHBhZ2UsIHRoZSBub3JtYWwgb25lIG1heSBsb2FkIHN0eWxlc2hlZXQgZHluYW1pY2FsbHkgd2hpbGUgcGFnZSByZW5kZXJpbmcsXG4gICAgYnV0IHRoZSB1cmwgY2hhbmdlIGxpc3RlbmVyIG11c3QgdG8gd2FpdCB1bnRpbCB0aGUgY3VycmVudCBjYWxsIHN0YWNrIGlzIGZsdXNoZWQuXG4gICAgVGhpcyBzY2VuYXJpbyBtYXkgY2F1c2Ugd2UgcmVjb3JkIHRoZSBzdHlsZXNoZWV0IGZyb20gcmVhY3Qgcm91dGluZyBwYWdlIGR5bmFtaWMgaW5qZWN0aW9uLFxuICAgIGFuZCByZW1vdmUgdGhlbSBhZnRlciB0aGUgdXJsIGNoYW5nZSB0cmlnZ2VyZWQgYW5kIHFpYW5rdW4gYXBwIGlzIHVubW91dGluZ1xuICAgIHNlZSBodHRwczovL2dpdGh1Yi5jb20vUmVhY3RUcmFpbmluZy9oaXN0b3J5L2Jsb2IvbWFzdGVyL21vZHVsZXMvY3JlYXRlSGFzaEhpc3RvcnkuanMjTDIyMi1MMjMwXG4gICAqL1xuICBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIGNoZWNrQWN0aXZpdHlGdW5jdGlvbnMod2luZG93LmxvY2F0aW9uKS5zb21lKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICByZXR1cm4gbmFtZSA9PT0gYXBwTmFtZTtcbiAgICB9KTtcbiAgfSwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB7XG4gICAgICBhcHBOYW1lOiBhcHBOYW1lLFxuICAgICAgYXBwV3JhcHBlckdldHRlcjogYXBwV3JhcHBlckdldHRlcixcbiAgICAgIHByb3h5OiBwcm94eSxcbiAgICAgIHN0cmljdEdsb2JhbDogZmFsc2UsXG4gICAgICBzY29wZWRDU1M6IHNjb3BlZENTUyxcbiAgICAgIGR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHM6IGR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHMsXG4gICAgICBleGNsdWRlQXNzZXRGaWx0ZXI6IGV4Y2x1ZGVBc3NldEZpbHRlclxuICAgIH07XG4gIH0pO1xuICBpZiAoIW1vdW50aW5nKSBib290c3RyYXBwaW5nUGF0Y2hDb3VudCsrO1xuICBpZiAobW91bnRpbmcpIG1vdW50aW5nUGF0Y2hDb3VudCsrO1xuICByZXR1cm4gZnVuY3Rpb24gZnJlZSgpIHtcbiAgICAvLyBib290c3RyYXAgcGF0Y2gganVzdCBjYWxsZWQgb25jZSBidXQgaXRzIGZyZWVyIHdpbGwgYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzXG4gICAgaWYgKCFtb3VudGluZyAmJiBib290c3RyYXBwaW5nUGF0Y2hDb3VudCAhPT0gMCkgYm9vdHN0cmFwcGluZ1BhdGNoQ291bnQtLTtcbiAgICBpZiAobW91bnRpbmcpIG1vdW50aW5nUGF0Y2hDb3VudC0tO1xuICAgIHZhciBhbGxNaWNyb0FwcFVubW91bnRlZCA9IG1vdW50aW5nUGF0Y2hDb3VudCA9PT0gMCAmJiBib290c3RyYXBwaW5nUGF0Y2hDb3VudCA9PT0gMDsgLy8gcmVsZWFzZSB0aGUgb3ZlcndyaXRlIHByb3RvdHlwZSBhZnRlciBhbGwgdGhlIG1pY3JvIGFwcHMgdW5tb3VudGVkXG5cbiAgICBpZiAoYWxsTWljcm9BcHBVbm1vdW50ZWQpIHVucGF0Y2hEeW5hbWljQXBwZW5kUHJvdG90eXBlRnVuY3Rpb25zKCk7XG4gICAgcmVjb3JkU3R5bGVkQ29tcG9uZW50c0NTU1J1bGVzKGR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHMpOyAvLyBBcyBub3cgdGhlIHN1YiBhcHAgY29udGVudCBhbGwgd3JhcHBlZCB3aXRoIGEgc3BlY2lhbCBpZCBjb250YWluZXIsXG4gICAgLy8gdGhlIGR5bmFtaWMgc3R5bGUgc2hlZXQgd291bGQgYmUgcmVtb3ZlZCBhdXRvbWF0aWNhbGx5IHdoaWxlIHVubW91dHRpbmdcblxuICAgIHJldHVybiBmdW5jdGlvbiByZWJ1aWxkKCkge1xuICAgICAgcmVidWlsZENTU1J1bGVzKGR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHMsIGZ1bmN0aW9uIChzdHlsZXNoZWV0RWxlbWVudCkge1xuICAgICAgICB2YXIgYXBwV3JhcHBlciA9IGFwcFdyYXBwZXJHZXR0ZXIoKTtcblxuICAgICAgICBpZiAoIWFwcFdyYXBwZXIuY29udGFpbnMoc3R5bGVzaGVldEVsZW1lbnQpKSB7XG4gICAgICAgICAgLy8gVXNpbmcgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCBlbnN1cmVzIHRoYXQgYXBwZW5kQ2hpbGQgaW52b2NhdGlvbiBjYW4gYWxzbyBkaXJlY3RseSB1c2UgdGhlIEhUTUxIZWFkRWxlbWVudC5wcm90b3R5cGUuYXBwZW5kQ2hpbGQgbWV0aG9kIHdoaWNoIGlzIG92ZXJ3cml0dGVuIGF0IG1vdW50aW5nIHBoYXNlXG4gICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZC5jYWxsKGFwcFdyYXBwZXIsIHN0eWxlc2hlZXRFbGVtZW50KTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pOyAvLyBBcyB0aGUgcGF0Y2hlciB3aWxsIGJlIGludm9rZWQgZXZlcnkgbW91bnRpbmcgcGhhc2UsIHdlIGNvdWxkIHJlbGVhc2UgdGhlIGNhY2hlIGZvciBnYyBhZnRlciByZWJ1aWxkaW5nXG5cbiAgICAgIGlmIChtb3VudGluZykge1xuICAgICAgICBkeW5hbWljU3R5bGVTaGVldEVsZW1lbnRzID0gW107XG4gICAgICB9XG4gICAgfTtcbiAgfTtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forLooseSandbox.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forStrictSandbox.js": /*!************************************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forStrictSandbox.js ***! \************************************************************************************/ /*! exports provided: patchStrictSandbox */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"patchStrictSandbox\", function() { return patchStrictSandbox; });\n/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../common */ \"./node_modules/qiankun/es/sandbox/common.js\");\n/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./common */ \"./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/common.js\");\n/**\n * @author Kuitos\n * @since 2020-10-13\n */\n\n\nvar rawDocumentCreateElement = Document.prototype.createElement;\nvar proxyAttachContainerConfigMap = new WeakMap();\nvar elementAttachContainerConfigMap = new WeakMap();\n\nfunction patchDocumentCreateElement() {\n if (Document.prototype.createElement === rawDocumentCreateElement) {\n Document.prototype.createElement = function createElement(tagName, options) {\n var element = rawDocumentCreateElement.call(this, tagName, options);\n\n if (Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"isHijackingTag\"])(tagName)) {\n var currentRunningSandboxProxy = Object(_common__WEBPACK_IMPORTED_MODULE_0__[\"getCurrentRunningSandboxProxy\"])();\n\n if (currentRunningSandboxProxy) {\n var proxyContainerConfig = proxyAttachContainerConfigMap.get(currentRunningSandboxProxy);\n\n if (proxyContainerConfig) {\n elementAttachContainerConfigMap.set(element, proxyContainerConfig);\n }\n }\n }\n\n return element;\n };\n }\n\n return function unpatch() {\n Document.prototype.createElement = rawDocumentCreateElement;\n };\n}\n\nvar bootstrappingPatchCount = 0;\nvar mountingPatchCount = 0;\nfunction patchStrictSandbox(appName, appWrapperGetter, proxy) {\n var mounting = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var scopedCSS = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n var excludeAssetFilter = arguments.length > 5 ? arguments[5] : undefined;\n var containerConfig = proxyAttachContainerConfigMap.get(proxy);\n\n if (!containerConfig) {\n containerConfig = {\n appName: appName,\n proxy: proxy,\n appWrapperGetter: appWrapperGetter,\n dynamicStyleSheetElements: [],\n strictGlobal: true,\n excludeAssetFilter: excludeAssetFilter,\n scopedCSS: scopedCSS\n };\n proxyAttachContainerConfigMap.set(proxy, containerConfig);\n } // all dynamic style sheets are stored in proxy container\n\n\n var _containerConfig = containerConfig,\n dynamicStyleSheetElements = _containerConfig.dynamicStyleSheetElements;\n var unpatchDocumentCreate = patchDocumentCreateElement();\n var unpatchDynamicAppendPrototypeFunctions = Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"patchHTMLDynamicAppendPrototypeFunctions\"])(function (element) {\n return elementAttachContainerConfigMap.has(element);\n }, function (element) {\n return elementAttachContainerConfigMap.get(element);\n });\n if (!mounting) bootstrappingPatchCount++;\n if (mounting) mountingPatchCount++;\n return function free() {\n // bootstrap patch just called once but its freer will be called multiple times\n if (!mounting && bootstrappingPatchCount !== 0) bootstrappingPatchCount--;\n if (mounting) mountingPatchCount--;\n var allMicroAppUnmounted = mountingPatchCount === 0 && bootstrappingPatchCount === 0; // release the overwrite prototype after all the micro apps unmounted\n\n if (allMicroAppUnmounted) {\n unpatchDynamicAppendPrototypeFunctions();\n unpatchDocumentCreate();\n }\n\n Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"recordStyledComponentsCSSRules\"])(dynamicStyleSheetElements); // As now the sub app content all wrapped with a special id container,\n // the dynamic style sheet would be removed automatically while unmoutting\n\n return function rebuild() {\n Object(_common__WEBPACK_IMPORTED_MODULE_1__[\"rebuildCSSRules\"])(dynamicStyleSheetElements, function (stylesheetElement) {\n var appWrapper = appWrapperGetter();\n\n if (!appWrapper.contains(stylesheetElement)) {\n _common__WEBPACK_IMPORTED_MODULE_1__[\"rawHeadAppendChild\"].call(appWrapper, stylesheetElement);\n return true;\n }\n\n return false;\n });\n };\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2R5bmFtaWNBcHBlbmQvZm9yU3RyaWN0U2FuZGJveC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvcGF0Y2hlcnMvZHluYW1pY0FwcGVuZC9mb3JTdHJpY3RTYW5kYm94LmpzP2I5Y2QiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAYXV0aG9yIEt1aXRvc1xuICogQHNpbmNlIDIwMjAtMTAtMTNcbiAqL1xuaW1wb3J0IHsgZ2V0Q3VycmVudFJ1bm5pbmdTYW5kYm94UHJveHkgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgaXNIaWphY2tpbmdUYWcsIHBhdGNoSFRNTER5bmFtaWNBcHBlbmRQcm90b3R5cGVGdW5jdGlvbnMsIHJhd0hlYWRBcHBlbmRDaGlsZCwgcmVidWlsZENTU1J1bGVzLCByZWNvcmRTdHlsZWRDb21wb25lbnRzQ1NTUnVsZXMgfSBmcm9tICcuL2NvbW1vbic7XG52YXIgcmF3RG9jdW1lbnRDcmVhdGVFbGVtZW50ID0gRG9jdW1lbnQucHJvdG90eXBlLmNyZWF0ZUVsZW1lbnQ7XG52YXIgcHJveHlBdHRhY2hDb250YWluZXJDb25maWdNYXAgPSBuZXcgV2Vha01hcCgpO1xudmFyIGVsZW1lbnRBdHRhY2hDb250YWluZXJDb25maWdNYXAgPSBuZXcgV2Vha01hcCgpO1xuXG5mdW5jdGlvbiBwYXRjaERvY3VtZW50Q3JlYXRlRWxlbWVudCgpIHtcbiAgaWYgKERvY3VtZW50LnByb3RvdHlwZS5jcmVhdGVFbGVtZW50ID09PSByYXdEb2N1bWVudENyZWF0ZUVsZW1lbnQpIHtcbiAgICBEb2N1bWVudC5wcm90b3R5cGUuY3JlYXRlRWxlbWVudCA9IGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnQodGFnTmFtZSwgb3B0aW9ucykge1xuICAgICAgdmFyIGVsZW1lbnQgPSByYXdEb2N1bWVudENyZWF0ZUVsZW1lbnQuY2FsbCh0aGlzLCB0YWdOYW1lLCBvcHRpb25zKTtcblxuICAgICAgaWYgKGlzSGlqYWNraW5nVGFnKHRhZ05hbWUpKSB7XG4gICAgICAgIHZhciBjdXJyZW50UnVubmluZ1NhbmRib3hQcm94eSA9IGdldEN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5KCk7XG5cbiAgICAgICAgaWYgKGN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5KSB7XG4gICAgICAgICAgdmFyIHByb3h5Q29udGFpbmVyQ29uZmlnID0gcHJveHlBdHRhY2hDb250YWluZXJDb25maWdNYXAuZ2V0KGN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5KTtcblxuICAgICAgICAgIGlmIChwcm94eUNvbnRhaW5lckNvbmZpZykge1xuICAgICAgICAgICAgZWxlbWVudEF0dGFjaENvbnRhaW5lckNvbmZpZ01hcC5zZXQoZWxlbWVudCwgcHJveHlDb250YWluZXJDb25maWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZWxlbWVudDtcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIGZ1bmN0aW9uIHVucGF0Y2goKSB7XG4gICAgRG9jdW1lbnQucHJvdG90eXBlLmNyZWF0ZUVsZW1lbnQgPSByYXdEb2N1bWVudENyZWF0ZUVsZW1lbnQ7XG4gIH07XG59XG5cbnZhciBib290c3RyYXBwaW5nUGF0Y2hDb3VudCA9IDA7XG52YXIgbW91bnRpbmdQYXRjaENvdW50ID0gMDtcbmV4cG9ydCBmdW5jdGlvbiBwYXRjaFN0cmljdFNhbmRib3goYXBwTmFtZSwgYXBwV3JhcHBlckdldHRlciwgcHJveHkpIHtcbiAgdmFyIG1vdW50aW5nID0gYXJndW1lbnRzLmxlbmd0aCA+IDMgJiYgYXJndW1lbnRzWzNdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbM10gOiB0cnVlO1xuICB2YXIgc2NvcGVkQ1NTID0gYXJndW1lbnRzLmxlbmd0aCA+IDQgJiYgYXJndW1lbnRzWzRdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbNF0gOiBmYWxzZTtcbiAgdmFyIGV4Y2x1ZGVBc3NldEZpbHRlciA9IGFyZ3VtZW50cy5sZW5ndGggPiA1ID8gYXJndW1lbnRzWzVdIDogdW5kZWZpbmVkO1xuICB2YXIgY29udGFpbmVyQ29uZmlnID0gcHJveHlBdHRhY2hDb250YWluZXJDb25maWdNYXAuZ2V0KHByb3h5KTtcblxuICBpZiAoIWNvbnRhaW5lckNvbmZpZykge1xuICAgIGNvbnRhaW5lckNvbmZpZyA9IHtcbiAgICAgIGFwcE5hbWU6IGFwcE5hbWUsXG4gICAgICBwcm94eTogcHJveHksXG4gICAgICBhcHBXcmFwcGVyR2V0dGVyOiBhcHBXcmFwcGVyR2V0dGVyLFxuICAgICAgZHluYW1pY1N0eWxlU2hlZXRFbGVtZW50czogW10sXG4gICAgICBzdHJpY3RHbG9iYWw6IHRydWUsXG4gICAgICBleGNsdWRlQXNzZXRGaWx0ZXI6IGV4Y2x1ZGVBc3NldEZpbHRlcixcbiAgICAgIHNjb3BlZENTUzogc2NvcGVkQ1NTXG4gICAgfTtcbiAgICBwcm94eUF0dGFjaENvbnRhaW5lckNvbmZpZ01hcC5zZXQocHJveHksIGNvbnRhaW5lckNvbmZpZyk7XG4gIH0gLy8gYWxsIGR5bmFtaWMgc3R5bGUgc2hlZXRzIGFyZSBzdG9yZWQgaW4gcHJveHkgY29udGFpbmVyXG5cblxuICB2YXIgX2NvbnRhaW5lckNvbmZpZyA9IGNvbnRhaW5lckNvbmZpZyxcbiAgICAgIGR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHMgPSBfY29udGFpbmVyQ29uZmlnLmR5bmFtaWNTdHlsZVNoZWV0RWxlbWVudHM7XG4gIHZhciB1bnBhdGNoRG9jdW1lbnRDcmVhdGUgPSBwYXRjaERvY3VtZW50Q3JlYXRlRWxlbWVudCgpO1xuICB2YXIgdW5wYXRjaER5bmFtaWNBcHBlbmRQcm90b3R5cGVGdW5jdGlvbnMgPSBwYXRjaEhUTUxEeW5hbWljQXBwZW5kUHJvdG90eXBlRnVuY3Rpb25zKGZ1bmN0aW9uIChlbGVtZW50KSB7XG4gICAgcmV0dXJuIGVsZW1lbnRBdHRhY2hDb250YWluZXJDb25maWdNYXAuaGFzKGVsZW1lbnQpO1xuICB9LCBmdW5jdGlvbiAoZWxlbWVudCkge1xuICAgIHJldHVybiBlbGVtZW50QXR0YWNoQ29udGFpbmVyQ29uZmlnTWFwLmdldChlbGVtZW50KTtcbiAgfSk7XG4gIGlmICghbW91bnRpbmcpIGJvb3RzdHJhcHBpbmdQYXRjaENvdW50Kys7XG4gIGlmIChtb3VudGluZykgbW91bnRpbmdQYXRjaENvdW50Kys7XG4gIHJldHVybiBmdW5jdGlvbiBmcmVlKCkge1xuICAgIC8vIGJvb3RzdHJhcCBwYXRjaCBqdXN0IGNhbGxlZCBvbmNlIGJ1dCBpdHMgZnJlZXIgd2lsbCBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXNcbiAgICBpZiAoIW1vdW50aW5nICYmIGJvb3RzdHJhcHBpbmdQYXRjaENvdW50ICE9PSAwKSBib290c3RyYXBwaW5nUGF0Y2hDb3VudC0tO1xuICAgIGlmIChtb3VudGluZykgbW91bnRpbmdQYXRjaENvdW50LS07XG4gICAgdmFyIGFsbE1pY3JvQXBwVW5tb3VudGVkID0gbW91bnRpbmdQYXRjaENvdW50ID09PSAwICYmIGJvb3RzdHJhcHBpbmdQYXRjaENvdW50ID09PSAwOyAvLyByZWxlYXNlIHRoZSBvdmVyd3JpdGUgcHJvdG90eXBlIGFmdGVyIGFsbCB0aGUgbWljcm8gYXBwcyB1bm1vdW50ZWRcblxuICAgIGlmIChhbGxNaWNyb0FwcFVubW91bnRlZCkge1xuICAgICAgdW5wYXRjaER5bmFtaWNBcHBlbmRQcm90b3R5cGVGdW5jdGlvbnMoKTtcbiAgICAgIHVucGF0Y2hEb2N1bWVudENyZWF0ZSgpO1xuICAgIH1cblxuICAgIHJlY29yZFN0eWxlZENvbXBvbmVudHNDU1NSdWxlcyhkeW5hbWljU3R5bGVTaGVldEVsZW1lbnRzKTsgLy8gQXMgbm93IHRoZSBzdWIgYXBwIGNvbnRlbnQgYWxsIHdyYXBwZWQgd2l0aCBhIHNwZWNpYWwgaWQgY29udGFpbmVyLFxuICAgIC8vIHRoZSBkeW5hbWljIHN0eWxlIHNoZWV0IHdvdWxkIGJlIHJlbW92ZWQgYXV0b21hdGljYWxseSB3aGlsZSB1bm1vdXR0aW5nXG5cbiAgICByZXR1cm4gZnVuY3Rpb24gcmVidWlsZCgpIHtcbiAgICAgIHJlYnVpbGRDU1NSdWxlcyhkeW5hbWljU3R5bGVTaGVldEVsZW1lbnRzLCBmdW5jdGlvbiAoc3R5bGVzaGVldEVsZW1lbnQpIHtcbiAgICAgICAgdmFyIGFwcFdyYXBwZXIgPSBhcHBXcmFwcGVyR2V0dGVyKCk7XG5cbiAgICAgICAgaWYgKCFhcHBXcmFwcGVyLmNvbnRhaW5zKHN0eWxlc2hlZXRFbGVtZW50KSkge1xuICAgICAgICAgIHJhd0hlYWRBcHBlbmRDaGlsZC5jYWxsKGFwcFdyYXBwZXIsIHN0eWxlc2hlZXRFbGVtZW50KTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pO1xuICAgIH07XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forStrictSandbox.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/index.js": /*!*************************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/index.js ***! \*************************************************************************/ /*! exports provided: patchLooseSandbox, patchStrictSandbox */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _forLooseSandbox__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./forLooseSandbox */ \"./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forLooseSandbox.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"patchLooseSandbox\", function() { return _forLooseSandbox__WEBPACK_IMPORTED_MODULE_0__[\"patchLooseSandbox\"]; });\n\n/* harmony import */ var _forStrictSandbox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./forStrictSandbox */ \"./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/forStrictSandbox.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"patchStrictSandbox\", function() { return _forStrictSandbox__WEBPACK_IMPORTED_MODULE_1__[\"patchStrictSandbox\"]; });\n\n/**\n * @author Kuitos\n * @since 2020-10-13\n */\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2R5bmFtaWNBcHBlbmQvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2R5bmFtaWNBcHBlbmQvaW5kZXguanM/Yzk3MCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBhdXRob3IgS3VpdG9zXG4gKiBAc2luY2UgMjAyMC0xMC0xM1xuICovXG5leHBvcnQgeyBwYXRjaExvb3NlU2FuZGJveCB9IGZyb20gJy4vZm9yTG9vc2VTYW5kYm94JztcbmV4cG9ydCB7IHBhdGNoU3RyaWN0U2FuZGJveCB9IGZyb20gJy4vZm9yU3RyaWN0U2FuZGJveCc7Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/historyListener.js": /*!*********************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/historyListener.js ***! \*********************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return patch; });\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/noop */ \"./node_modules/lodash/noop.js\");\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_noop__WEBPACK_IMPORTED_MODULE_1__);\n\n\nfunction patch() {\n // FIXME umi unmount feature request\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n var rawHistoryListen = function rawHistoryListen(_) {\n return lodash_noop__WEBPACK_IMPORTED_MODULE_1___default.a;\n };\n\n var historyListeners = [];\n var historyUnListens = [];\n\n if (window.g_history && lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(window.g_history.listen)) {\n rawHistoryListen = window.g_history.listen.bind(window.g_history);\n\n window.g_history.listen = function (listener) {\n historyListeners.push(listener);\n var unListen = rawHistoryListen(listener);\n historyUnListens.push(unListen);\n return function () {\n unListen();\n historyUnListens.splice(historyUnListens.indexOf(unListen), 1);\n historyListeners.splice(historyListeners.indexOf(listener), 1);\n };\n };\n }\n\n return function free() {\n var rebuild = lodash_noop__WEBPACK_IMPORTED_MODULE_1___default.a;\n /*\n 还存在余量 listener 表明未被卸载,存在两种情况\n 1. 应用在 unmout 时未正确卸载 listener\n 2. listener 是应用 mount 之前绑定的,\n 第二种情况下应用在下次 mount 之前需重新绑定该 listener\n */\n\n if (historyListeners.length) {\n rebuild = function rebuild() {\n // 必须使用 window.g_history.listen 的方式重新绑定 listener,从而能保证 rebuild 这部分也能被捕获到,否则在应用卸载后无法正确的移除这部分副作用\n historyListeners.forEach(function (listener) {\n return window.g_history.listen(listener);\n });\n };\n } // 卸载余下的 listener\n\n\n historyUnListens.forEach(function (unListen) {\n return unListen();\n }); // restore\n\n if (window.g_history && lodash_isFunction__WEBPACK_IMPORTED_MODULE_0___default()(window.g_history.listen)) {\n window.g_history.listen = rawHistoryListen;\n }\n\n return rebuild;\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2hpc3RvcnlMaXN0ZW5lci5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvcGF0Y2hlcnMvaGlzdG9yeUxpc3RlbmVyLmpzPzVkNzQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9pc0Z1bmN0aW9uIGZyb20gXCJsb2Rhc2gvaXNGdW5jdGlvblwiO1xuaW1wb3J0IF9ub29wIGZyb20gXCJsb2Rhc2gvbm9vcFwiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcGF0Y2goKSB7XG4gIC8vIEZJWE1FIHVtaSB1bm1vdW50IGZlYXR1cmUgcmVxdWVzdFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHZhciByYXdIaXN0b3J5TGlzdGVuID0gZnVuY3Rpb24gcmF3SGlzdG9yeUxpc3RlbihfKSB7XG4gICAgcmV0dXJuIF9ub29wO1xuICB9O1xuXG4gIHZhciBoaXN0b3J5TGlzdGVuZXJzID0gW107XG4gIHZhciBoaXN0b3J5VW5MaXN0ZW5zID0gW107XG5cbiAgaWYgKHdpbmRvdy5nX2hpc3RvcnkgJiYgX2lzRnVuY3Rpb24od2luZG93LmdfaGlzdG9yeS5saXN0ZW4pKSB7XG4gICAgcmF3SGlzdG9yeUxpc3RlbiA9IHdpbmRvdy5nX2hpc3RvcnkubGlzdGVuLmJpbmQod2luZG93LmdfaGlzdG9yeSk7XG5cbiAgICB3aW5kb3cuZ19oaXN0b3J5Lmxpc3RlbiA9IGZ1bmN0aW9uIChsaXN0ZW5lcikge1xuICAgICAgaGlzdG9yeUxpc3RlbmVycy5wdXNoKGxpc3RlbmVyKTtcbiAgICAgIHZhciB1bkxpc3RlbiA9IHJhd0hpc3RvcnlMaXN0ZW4obGlzdGVuZXIpO1xuICAgICAgaGlzdG9yeVVuTGlzdGVucy5wdXNoKHVuTGlzdGVuKTtcbiAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHVuTGlzdGVuKCk7XG4gICAgICAgIGhpc3RvcnlVbkxpc3RlbnMuc3BsaWNlKGhpc3RvcnlVbkxpc3RlbnMuaW5kZXhPZih1bkxpc3RlbiksIDEpO1xuICAgICAgICBoaXN0b3J5TGlzdGVuZXJzLnNwbGljZShoaXN0b3J5TGlzdGVuZXJzLmluZGV4T2YobGlzdGVuZXIpLCAxKTtcbiAgICAgIH07XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBmdW5jdGlvbiBmcmVlKCkge1xuICAgIHZhciByZWJ1aWxkID0gX25vb3A7XG4gICAgLypcbiAgICAg6L+Y5a2Y5Zyo5L2Z6YePIGxpc3RlbmVyIOihqOaYjuacquiiq+WNuOi9ve+8jOWtmOWcqOS4pOenjeaDheWGtVxuICAgICAxLiDlupTnlKjlnKggdW5tb3V0IOaXtuacquato+ehruWNuOi9vSBsaXN0ZW5lclxuICAgICAyLiBsaXN0ZW5lciDmmK/lupTnlKggbW91bnQg5LmL5YmN57uR5a6a55qE77yMXG4gICAgIOesrOS6jOenjeaDheWGteS4i+W6lOeUqOWcqOS4i+asoSBtb3VudCDkuYvliY3pnIDph43mlrDnu5Hlrpror6UgbGlzdGVuZXJcbiAgICAgKi9cblxuICAgIGlmIChoaXN0b3J5TGlzdGVuZXJzLmxlbmd0aCkge1xuICAgICAgcmVidWlsZCA9IGZ1bmN0aW9uIHJlYnVpbGQoKSB7XG4gICAgICAgIC8vIOW/hemhu+S9v+eUqCB3aW5kb3cuZ19oaXN0b3J5Lmxpc3RlbiDnmoTmlrnlvI/ph43mlrDnu5HlrpogbGlzdGVuZXLvvIzku47ogIzog73kv53or4EgcmVidWlsZCDov5npg6jliIbkuZ/og73ooqvmjZXojrfliLDvvIzlkKbliJnlnKjlupTnlKjljbjovb3lkI7ml6Dms5XmraPnoa7nmoTnp7vpmaTov5npg6jliIblia/kvZznlKhcbiAgICAgICAgaGlzdG9yeUxpc3RlbmVycy5mb3JFYWNoKGZ1bmN0aW9uIChsaXN0ZW5lcikge1xuICAgICAgICAgIHJldHVybiB3aW5kb3cuZ19oaXN0b3J5Lmxpc3RlbihsaXN0ZW5lcik7XG4gICAgICAgIH0pO1xuICAgICAgfTtcbiAgICB9IC8vIOWNuOi9veS9meS4i+eahCBsaXN0ZW5lclxuXG5cbiAgICBoaXN0b3J5VW5MaXN0ZW5zLmZvckVhY2goZnVuY3Rpb24gKHVuTGlzdGVuKSB7XG4gICAgICByZXR1cm4gdW5MaXN0ZW4oKTtcbiAgICB9KTsgLy8gcmVzdG9yZVxuXG4gICAgaWYgKHdpbmRvdy5nX2hpc3RvcnkgJiYgX2lzRnVuY3Rpb24od2luZG93LmdfaGlzdG9yeS5saXN0ZW4pKSB7XG4gICAgICB3aW5kb3cuZ19oaXN0b3J5Lmxpc3RlbiA9IHJhd0hpc3RvcnlMaXN0ZW47XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlYnVpbGQ7XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/historyListener.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/index.js": /*!***********************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/index.js ***! \***********************************************************/ /*! exports provided: patchAtMounting, patchAtBootstrapping, css */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"patchAtMounting\", function() { return patchAtMounting; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"patchAtBootstrapping\", function() { return patchAtBootstrapping; });\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/defineProperty */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/defineProperty.js\");\n/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../interfaces */ \"./node_modules/qiankun/es/interfaces.js\");\n/* harmony import */ var _css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./css */ \"./node_modules/qiankun/es/sandbox/patchers/css.js\");\n/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, \"css\", function() { return _css__WEBPACK_IMPORTED_MODULE_2__; });\n/* harmony import */ var _dynamicAppend__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dynamicAppend */ \"./node_modules/qiankun/es/sandbox/patchers/dynamicAppend/index.js\");\n/* harmony import */ var _historyListener__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./historyListener */ \"./node_modules/qiankun/es/sandbox/patchers/historyListener.js\");\n/* harmony import */ var _interval__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./interval */ \"./node_modules/qiankun/es/sandbox/patchers/interval.js\");\n/* harmony import */ var _windowListener__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./windowListener */ \"./node_modules/qiankun/es/sandbox/patchers/windowListener.js\");\n\n\n/**\n * @author Kuitos\n * @since 2019-04-11\n */\n\n\n\n\n\n\nfunction patchAtMounting(appName, elementGetter, sandbox, scopedCSS, excludeAssetFilter) {\n var _patchersInSandbox;\n\n var _a;\n\n var basePatchers = [function () {\n return Object(_interval__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(sandbox.proxy);\n }, function () {\n return Object(_windowListener__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(sandbox.proxy);\n }, function () {\n return Object(_historyListener__WEBPACK_IMPORTED_MODULE_4__[\"default\"])();\n }];\n var patchersInSandbox = (_patchersInSandbox = {}, Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].LegacyProxy, [].concat(basePatchers, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchLooseSandbox\"])(appName, elementGetter, sandbox.proxy, true, scopedCSS, excludeAssetFilter);\n }])), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].Proxy, [].concat(basePatchers, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchStrictSandbox\"])(appName, elementGetter, sandbox.proxy, true, scopedCSS, excludeAssetFilter);\n }])), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].Snapshot, [].concat(basePatchers, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchLooseSandbox\"])(appName, elementGetter, sandbox.proxy, true, scopedCSS, excludeAssetFilter);\n }])), _patchersInSandbox);\n return (_a = patchersInSandbox[sandbox.type]) === null || _a === void 0 ? void 0 : _a.map(function (patch) {\n return patch();\n });\n}\nfunction patchAtBootstrapping(appName, elementGetter, sandbox, scopedCSS, excludeAssetFilter) {\n var _patchersInSandbox2;\n\n var _a;\n\n var patchersInSandbox = (_patchersInSandbox2 = {}, Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox2, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].LegacyProxy, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchLooseSandbox\"])(appName, elementGetter, sandbox.proxy, false, scopedCSS, excludeAssetFilter);\n }]), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox2, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].Proxy, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchStrictSandbox\"])(appName, elementGetter, sandbox.proxy, false, scopedCSS, excludeAssetFilter);\n }]), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(_patchersInSandbox2, _interfaces__WEBPACK_IMPORTED_MODULE_1__[\"SandBoxType\"].Snapshot, [function () {\n return Object(_dynamicAppend__WEBPACK_IMPORTED_MODULE_3__[\"patchLooseSandbox\"])(appName, elementGetter, sandbox.proxy, false, scopedCSS, excludeAssetFilter);\n }]), _patchersInSandbox2);\n return (_a = patchersInSandbox[sandbox.type]) === null || _a === void 0 ? void 0 : _a.map(function (patch) {\n return patch();\n });\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2luZGV4LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9wYXRjaGVycy9pbmRleC5qcz83MjhhIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfZGVmaW5lUHJvcGVydHkgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2RlZmluZVByb3BlcnR5XCI7XG5cbi8qKlxuICogQGF1dGhvciBLdWl0b3NcbiAqIEBzaW5jZSAyMDE5LTA0LTExXG4gKi9cbmltcG9ydCB7IFNhbmRCb3hUeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBjc3MgZnJvbSAnLi9jc3MnO1xuaW1wb3J0IHsgcGF0Y2hMb29zZVNhbmRib3gsIHBhdGNoU3RyaWN0U2FuZGJveCB9IGZyb20gJy4vZHluYW1pY0FwcGVuZCc7XG5pbXBvcnQgcGF0Y2hIaXN0b3J5TGlzdGVuZXIgZnJvbSAnLi9oaXN0b3J5TGlzdGVuZXInO1xuaW1wb3J0IHBhdGNoSW50ZXJ2YWwgZnJvbSAnLi9pbnRlcnZhbCc7XG5pbXBvcnQgcGF0Y2hXaW5kb3dMaXN0ZW5lciBmcm9tICcuL3dpbmRvd0xpc3RlbmVyJztcbmV4cG9ydCBmdW5jdGlvbiBwYXRjaEF0TW91bnRpbmcoYXBwTmFtZSwgZWxlbWVudEdldHRlciwgc2FuZGJveCwgc2NvcGVkQ1NTLCBleGNsdWRlQXNzZXRGaWx0ZXIpIHtcbiAgdmFyIF9wYXRjaGVyc0luU2FuZGJveDtcblxuICB2YXIgX2E7XG5cbiAgdmFyIGJhc2VQYXRjaGVycyA9IFtmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHBhdGNoSW50ZXJ2YWwoc2FuZGJveC5wcm94eSk7XG4gIH0sIGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcGF0Y2hXaW5kb3dMaXN0ZW5lcihzYW5kYm94LnByb3h5KTtcbiAgfSwgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBwYXRjaEhpc3RvcnlMaXN0ZW5lcigpO1xuICB9XTtcbiAgdmFyIHBhdGNoZXJzSW5TYW5kYm94ID0gKF9wYXRjaGVyc0luU2FuZGJveCA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3BhdGNoZXJzSW5TYW5kYm94LCBTYW5kQm94VHlwZS5MZWdhY3lQcm94eSwgW10uY29uY2F0KGJhc2VQYXRjaGVycywgW2Z1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcGF0Y2hMb29zZVNhbmRib3goYXBwTmFtZSwgZWxlbWVudEdldHRlciwgc2FuZGJveC5wcm94eSwgdHJ1ZSwgc2NvcGVkQ1NTLCBleGNsdWRlQXNzZXRGaWx0ZXIpO1xuICB9XSkpLCBfZGVmaW5lUHJvcGVydHkoX3BhdGNoZXJzSW5TYW5kYm94LCBTYW5kQm94VHlwZS5Qcm94eSwgW10uY29uY2F0KGJhc2VQYXRjaGVycywgW2Z1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gcGF0Y2hTdHJpY3RTYW5kYm94KGFwcE5hbWUsIGVsZW1lbnRHZXR0ZXIsIHNhbmRib3gucHJveHksIHRydWUsIHNjb3BlZENTUywgZXhjbHVkZUFzc2V0RmlsdGVyKTtcbiAgfV0pKSwgX2RlZmluZVByb3BlcnR5KF9wYXRjaGVyc0luU2FuZGJveCwgU2FuZEJveFR5cGUuU25hcHNob3QsIFtdLmNvbmNhdChiYXNlUGF0Y2hlcnMsIFtmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHBhdGNoTG9vc2VTYW5kYm94KGFwcE5hbWUsIGVsZW1lbnRHZXR0ZXIsIHNhbmRib3gucHJveHksIHRydWUsIHNjb3BlZENTUywgZXhjbHVkZUFzc2V0RmlsdGVyKTtcbiAgfV0pKSwgX3BhdGNoZXJzSW5TYW5kYm94KTtcbiAgcmV0dXJuIChfYSA9IHBhdGNoZXJzSW5TYW5kYm94W3NhbmRib3gudHlwZV0pID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5tYXAoZnVuY3Rpb24gKHBhdGNoKSB7XG4gICAgcmV0dXJuIHBhdGNoKCk7XG4gIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoQXRCb290c3RyYXBwaW5nKGFwcE5hbWUsIGVsZW1lbnRHZXR0ZXIsIHNhbmRib3gsIHNjb3BlZENTUywgZXhjbHVkZUFzc2V0RmlsdGVyKSB7XG4gIHZhciBfcGF0Y2hlcnNJblNhbmRib3gyO1xuXG4gIHZhciBfYTtcblxuICB2YXIgcGF0Y2hlcnNJblNhbmRib3ggPSAoX3BhdGNoZXJzSW5TYW5kYm94MiA9IHt9LCBfZGVmaW5lUHJvcGVydHkoX3BhdGNoZXJzSW5TYW5kYm94MiwgU2FuZEJveFR5cGUuTGVnYWN5UHJveHksIFtmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHBhdGNoTG9vc2VTYW5kYm94KGFwcE5hbWUsIGVsZW1lbnRHZXR0ZXIsIHNhbmRib3gucHJveHksIGZhbHNlLCBzY29wZWRDU1MsIGV4Y2x1ZGVBc3NldEZpbHRlcik7XG4gIH1dKSwgX2RlZmluZVByb3BlcnR5KF9wYXRjaGVyc0luU2FuZGJveDIsIFNhbmRCb3hUeXBlLlByb3h5LCBbZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBwYXRjaFN0cmljdFNhbmRib3goYXBwTmFtZSwgZWxlbWVudEdldHRlciwgc2FuZGJveC5wcm94eSwgZmFsc2UsIHNjb3BlZENTUywgZXhjbHVkZUFzc2V0RmlsdGVyKTtcbiAgfV0pLCBfZGVmaW5lUHJvcGVydHkoX3BhdGNoZXJzSW5TYW5kYm94MiwgU2FuZEJveFR5cGUuU25hcHNob3QsIFtmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHBhdGNoTG9vc2VTYW5kYm94KGFwcE5hbWUsIGVsZW1lbnRHZXR0ZXIsIHNhbmRib3gucHJveHksIGZhbHNlLCBzY29wZWRDU1MsIGV4Y2x1ZGVBc3NldEZpbHRlcik7XG4gIH1dKSwgX3BhdGNoZXJzSW5TYW5kYm94Mik7XG4gIHJldHVybiAoX2EgPSBwYXRjaGVyc0luU2FuZGJveFtzYW5kYm94LnR5cGVdKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubWFwKGZ1bmN0aW9uIChwYXRjaCkge1xuICAgIHJldHVybiBwYXRjaCgpO1xuICB9KTtcbn1cbmV4cG9ydCB7IGNzcyB9OyJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/interval.js": /*!**************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/interval.js ***! \**************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return patch; });\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/noop */ \"./node_modules/lodash/noop.js\");\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_noop__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n\n\nvar rawWindowInterval = window.setInterval;\nvar rawWindowClearInterval = window.clearInterval;\nfunction patch(global) {\n var intervals = [];\n\n global.clearInterval = function (intervalId) {\n intervals = intervals.filter(function (id) {\n return id !== intervalId;\n });\n return rawWindowClearInterval(intervalId);\n };\n\n global.setInterval = function (handler, timeout) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var intervalId = rawWindowInterval.apply(void 0, [handler, timeout].concat(args));\n intervals = [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(intervals), [intervalId]);\n return intervalId;\n };\n\n return function free() {\n intervals.forEach(function (id) {\n return global.clearInterval(id);\n });\n global.setInterval = rawWindowInterval;\n global.clearInterval = rawWindowClearInterval;\n return lodash_noop__WEBPACK_IMPORTED_MODULE_0___default.a;\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL2ludGVydmFsLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9wYXRjaGVycy9pbnRlcnZhbC5qcz8wZjdkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfbm9vcCBmcm9tIFwibG9kYXNoL25vb3BcIjtcbmltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5XCI7XG52YXIgcmF3V2luZG93SW50ZXJ2YWwgPSB3aW5kb3cuc2V0SW50ZXJ2YWw7XG52YXIgcmF3V2luZG93Q2xlYXJJbnRlcnZhbCA9IHdpbmRvdy5jbGVhckludGVydmFsO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcGF0Y2goZ2xvYmFsKSB7XG4gIHZhciBpbnRlcnZhbHMgPSBbXTtcblxuICBnbG9iYWwuY2xlYXJJbnRlcnZhbCA9IGZ1bmN0aW9uIChpbnRlcnZhbElkKSB7XG4gICAgaW50ZXJ2YWxzID0gaW50ZXJ2YWxzLmZpbHRlcihmdW5jdGlvbiAoaWQpIHtcbiAgICAgIHJldHVybiBpZCAhPT0gaW50ZXJ2YWxJZDtcbiAgICB9KTtcbiAgICByZXR1cm4gcmF3V2luZG93Q2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgfTtcblxuICBnbG9iYWwuc2V0SW50ZXJ2YWwgPSBmdW5jdGlvbiAoaGFuZGxlciwgdGltZW91dCkge1xuICAgIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBhcmdzID0gbmV3IEFycmF5KF9sZW4gPiAyID8gX2xlbiAtIDIgOiAwKSwgX2tleSA9IDI7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICAgIGFyZ3NbX2tleSAtIDJdID0gYXJndW1lbnRzW19rZXldO1xuICAgIH1cblxuICAgIHZhciBpbnRlcnZhbElkID0gcmF3V2luZG93SW50ZXJ2YWwuYXBwbHkodm9pZCAwLCBbaGFuZGxlciwgdGltZW91dF0uY29uY2F0KGFyZ3MpKTtcbiAgICBpbnRlcnZhbHMgPSBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KGludGVydmFscyksIFtpbnRlcnZhbElkXSk7XG4gICAgcmV0dXJuIGludGVydmFsSWQ7XG4gIH07XG5cbiAgcmV0dXJuIGZ1bmN0aW9uIGZyZWUoKSB7XG4gICAgaW50ZXJ2YWxzLmZvckVhY2goZnVuY3Rpb24gKGlkKSB7XG4gICAgICByZXR1cm4gZ2xvYmFsLmNsZWFySW50ZXJ2YWwoaWQpO1xuICAgIH0pO1xuICAgIGdsb2JhbC5zZXRJbnRlcnZhbCA9IHJhd1dpbmRvd0ludGVydmFsO1xuICAgIGdsb2JhbC5jbGVhckludGVydmFsID0gcmF3V2luZG93Q2xlYXJJbnRlcnZhbDtcbiAgICByZXR1cm4gX25vb3A7XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/interval.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/patchers/windowListener.js": /*!********************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/patchers/windowListener.js ***! \********************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return patch; });\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash/noop */ \"./node_modules/lodash/noop.js\");\n/* harmony import */ var lodash_noop__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash_noop__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n\n\nvar rawAddEventListener = window.addEventListener;\nvar rawRemoveEventListener = window.removeEventListener;\nfunction patch(global) {\n var listenerMap = new Map();\n\n global.addEventListener = function (type, listener, options) {\n var listeners = listenerMap.get(type) || [];\n listenerMap.set(type, [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(listeners), [listener]));\n return rawAddEventListener.call(window, type, listener, options);\n };\n\n global.removeEventListener = function (type, listener, options) {\n var storedTypeListeners = listenerMap.get(type);\n\n if (storedTypeListeners && storedTypeListeners.length && storedTypeListeners.indexOf(listener) !== -1) {\n storedTypeListeners.splice(storedTypeListeners.indexOf(listener), 1);\n }\n\n return rawRemoveEventListener.call(window, type, listener, options);\n };\n\n return function free() {\n listenerMap.forEach(function (listeners, type) {\n return Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(listeners).forEach(function (listener) {\n return global.removeEventListener(type, listener);\n });\n });\n global.addEventListener = rawAddEventListener;\n global.removeEventListener = rawRemoveEventListener;\n return lodash_noop__WEBPACK_IMPORTED_MODULE_0___default.a;\n };\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3BhdGNoZXJzL3dpbmRvd0xpc3RlbmVyLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vZXMvc2FuZGJveC9wYXRjaGVycy93aW5kb3dMaXN0ZW5lci5qcz8xNDQxIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfbm9vcCBmcm9tIFwibG9kYXNoL25vb3BcIjtcbmltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5XCI7XG52YXIgcmF3QWRkRXZlbnRMaXN0ZW5lciA9IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyO1xudmFyIHJhd1JlbW92ZUV2ZW50TGlzdGVuZXIgPSB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHBhdGNoKGdsb2JhbCkge1xuICB2YXIgbGlzdGVuZXJNYXAgPSBuZXcgTWFwKCk7XG5cbiAgZ2xvYmFsLmFkZEV2ZW50TGlzdGVuZXIgPSBmdW5jdGlvbiAodHlwZSwgbGlzdGVuZXIsIG9wdGlvbnMpIHtcbiAgICB2YXIgbGlzdGVuZXJzID0gbGlzdGVuZXJNYXAuZ2V0KHR5cGUpIHx8IFtdO1xuICAgIGxpc3RlbmVyTWFwLnNldCh0eXBlLCBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KGxpc3RlbmVycyksIFtsaXN0ZW5lcl0pKTtcbiAgICByZXR1cm4gcmF3QWRkRXZlbnRMaXN0ZW5lci5jYWxsKHdpbmRvdywgdHlwZSwgbGlzdGVuZXIsIG9wdGlvbnMpO1xuICB9O1xuXG4gIGdsb2JhbC5yZW1vdmVFdmVudExpc3RlbmVyID0gZnVuY3Rpb24gKHR5cGUsIGxpc3RlbmVyLCBvcHRpb25zKSB7XG4gICAgdmFyIHN0b3JlZFR5cGVMaXN0ZW5lcnMgPSBsaXN0ZW5lck1hcC5nZXQodHlwZSk7XG5cbiAgICBpZiAoc3RvcmVkVHlwZUxpc3RlbmVycyAmJiBzdG9yZWRUeXBlTGlzdGVuZXJzLmxlbmd0aCAmJiBzdG9yZWRUeXBlTGlzdGVuZXJzLmluZGV4T2YobGlzdGVuZXIpICE9PSAtMSkge1xuICAgICAgc3RvcmVkVHlwZUxpc3RlbmVycy5zcGxpY2Uoc3RvcmVkVHlwZUxpc3RlbmVycy5pbmRleE9mKGxpc3RlbmVyKSwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJhd1JlbW92ZUV2ZW50TGlzdGVuZXIuY2FsbCh3aW5kb3csIHR5cGUsIGxpc3RlbmVyLCBvcHRpb25zKTtcbiAgfTtcblxuICByZXR1cm4gZnVuY3Rpb24gZnJlZSgpIHtcbiAgICBsaXN0ZW5lck1hcC5mb3JFYWNoKGZ1bmN0aW9uIChsaXN0ZW5lcnMsIHR5cGUpIHtcbiAgICAgIHJldHVybiBfdG9Db25zdW1hYmxlQXJyYXkobGlzdGVuZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChsaXN0ZW5lcikge1xuICAgICAgICByZXR1cm4gZ2xvYmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIodHlwZSwgbGlzdGVuZXIpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgZ2xvYmFsLmFkZEV2ZW50TGlzdGVuZXIgPSByYXdBZGRFdmVudExpc3RlbmVyO1xuICAgIGdsb2JhbC5yZW1vdmVFdmVudExpc3RlbmVyID0gcmF3UmVtb3ZlRXZlbnRMaXN0ZW5lcjtcbiAgICByZXR1cm4gX25vb3A7XG4gIH07XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/patchers/windowListener.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/proxySandbox.js": /*!*********************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/proxySandbox.js ***! \*********************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return ProxySandbox; });\n/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js\");\n/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../interfaces */ \"./node_modules/qiankun/es/interfaces.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils */ \"./node_modules/qiankun/es/utils.js\");\n/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./common */ \"./node_modules/qiankun/es/sandbox/common.js\");\n\n\n\n\n\n\n/**\n * fastest(at most time) unique array method\n * @see https://jsperf.com/array-filter-unique/30\n */\n\nfunction uniq(array) {\n return array.filter(function filter(element) {\n return element in this ? false : this[element] = true;\n }, Object.create(null));\n} // zone.js will overwrite Object.defineProperty\n\n\nvar rawObjectDefineProperty = Object.defineProperty;\nvar variableWhiteListInDev = false || window.__QIANKUN_DEVELOPMENT__ ? [// for react hot reload\n// see https://github.com/facebook/create-react-app/blob/66bf7dfc43350249e2f09d138a20840dae8a0a4a/packages/react-error-overlay/src/index.js#L180\n'__REACT_ERROR_OVERLAY_GLOBAL_HOOK__'] : []; // who could escape the sandbox\n\nvar variableWhiteList = [// FIXME System.js used a indirect call with eval, which would make it scope escape to global\n// To make System.js works well, we write it back to global window temporary\n// see https://github.com/systemjs/systemjs/blob/457f5b7e8af6bd120a279540477552a07d5de086/src/evaluate.js#L106\n'System', // see https://github.com/systemjs/systemjs/blob/457f5b7e8af6bd120a279540477552a07d5de086/src/instantiate.js#L357\n'__cjsWrapper'].concat(variableWhiteListInDev);\n/*\n variables who are impossible to be overwrite need to be escaped from proxy sandbox for performance reasons\n */\n\nvar unscopables = {\n undefined: true,\n Array: true,\n Object: true,\n String: true,\n Boolean: true,\n Math: true,\n Number: true,\n Symbol: true,\n parseFloat: true,\n Float32Array: true\n};\n\nfunction createFakeWindow(global) {\n // map always has the fastest performance in has check scenario\n // see https://jsperf.com/array-indexof-vs-set-has/23\n var propertiesWithGetter = new Map();\n var fakeWindow = {};\n /*\n copy the non-configurable property of global to fakeWindow\n see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/handler/getOwnPropertyDescriptor\n > A property cannot be reported as non-configurable, if it does not exists as an own property of the target object or if it exists as a configurable own property of the target object.\n */\n\n Object.getOwnPropertyNames(global).filter(function (p) {\n var descriptor = Object.getOwnPropertyDescriptor(global, p);\n return !(descriptor === null || descriptor === void 0 ? void 0 : descriptor.configurable);\n }).forEach(function (p) {\n var descriptor = Object.getOwnPropertyDescriptor(global, p);\n\n if (descriptor) {\n var hasGetter = Object.prototype.hasOwnProperty.call(descriptor, 'get');\n /*\n make top/self/window property configurable and writable, otherwise it will cause TypeError while get trap return.\n see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/handler/get\n > The value reported for a property must be the same as the value of the corresponding target object property if the target object property is a non-writable, non-configurable data property.\n */\n\n if (p === 'top' || p === 'parent' || p === 'self' || p === 'window' || false && (false)) {\n descriptor.configurable = true;\n /*\n The descriptor of window.window/window.top/window.self in Safari/FF are accessor descriptors, we need to avoid adding a data descriptor while it was\n Example:\n Safari/FF: Object.getOwnPropertyDescriptor(window, 'top') -> {get: function, set: undefined, enumerable: true, configurable: false}\n Chrome: Object.getOwnPropertyDescriptor(window, 'top') -> {value: Window, writable: false, enumerable: true, configurable: false}\n */\n\n if (!hasGetter) {\n descriptor.writable = true;\n }\n }\n\n if (hasGetter) propertiesWithGetter.set(p, true); // freeze the descriptor to avoid being modified by zone.js\n // see https://github.com/angular/zone.js/blob/a5fe09b0fac27ac5df1fa746042f96f05ccb6a00/lib/browser/define-property.ts#L71\n\n rawObjectDefineProperty(fakeWindow, p, Object.freeze(descriptor));\n }\n });\n return {\n fakeWindow: fakeWindow,\n propertiesWithGetter: propertiesWithGetter\n };\n}\n\nvar activeSandboxCount = 0;\n/**\n * 基于 Proxy 实现的沙箱\n */\n\nvar ProxySandbox = /*#__PURE__*/function () {\n function ProxySandbox(name) {\n var _this = this;\n\n Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, ProxySandbox);\n\n /** window 值变更记录 */\n this.updatedValueSet = new Set();\n this.sandboxRunning = true;\n this.latestSetProp = null;\n this.name = name;\n this.type = _interfaces__WEBPACK_IMPORTED_MODULE_3__[\"SandBoxType\"].Proxy;\n var updatedValueSet = this.updatedValueSet;\n var rawWindow = window;\n\n var _createFakeWindow = createFakeWindow(rawWindow),\n fakeWindow = _createFakeWindow.fakeWindow,\n propertiesWithGetter = _createFakeWindow.propertiesWithGetter;\n\n var descriptorTargetMap = new Map();\n\n var hasOwnProperty = function hasOwnProperty(key) {\n return fakeWindow.hasOwnProperty(key) || rawWindow.hasOwnProperty(key);\n };\n\n var proxy = new Proxy(fakeWindow, {\n set: function set(target, p, value) {\n if (_this.sandboxRunning) {\n // We must kept its description while the property existed in rawWindow before\n if (!target.hasOwnProperty(p) && rawWindow.hasOwnProperty(p)) {\n var descriptor = Object.getOwnPropertyDescriptor(rawWindow, p);\n var writable = descriptor.writable,\n configurable = descriptor.configurable,\n enumerable = descriptor.enumerable;\n\n if (writable) {\n Object.defineProperty(target, p, {\n configurable: configurable,\n enumerable: enumerable,\n writable: writable,\n value: value\n });\n }\n } else {\n // @ts-ignore\n target[p] = value;\n }\n\n if (variableWhiteList.indexOf(p) !== -1) {\n // @ts-ignore\n rawWindow[p] = value;\n }\n\n updatedValueSet.add(p);\n _this.latestSetProp = p;\n return true;\n }\n\n if (false) {} // 在 strict-mode 下,Proxy 的 handler.set 返回 false 会抛出 TypeError,在沙箱卸载的情况下应该忽略错误\n\n\n return true;\n },\n get: function get(target, p) {\n if (p === Symbol.unscopables) return unscopables; // avoid who using window.window or window.self to escape the sandbox environment to touch the really window\n // see https://github.com/eligrey/FileSaver.js/blob/master/src/FileSaver.js#L13\n\n if (p === 'window' || p === 'self') {\n return proxy;\n }\n\n if (p === 'top' || p === 'parent' || false && (false)) {\n // if your master app in an iframe context, allow these props escape the sandbox\n if (rawWindow === rawWindow.parent) {\n return proxy;\n }\n\n return rawWindow[p];\n } // proxy.hasOwnProperty would invoke getter firstly, then its value represented as rawWindow.hasOwnProperty\n\n\n if (p === 'hasOwnProperty') {\n return hasOwnProperty;\n } // mark the symbol to document while accessing as document.createElement could know is invoked by which sandbox for dynamic append patcher\n\n\n if (p === 'document' || p === 'eval') {\n Object(_common__WEBPACK_IMPORTED_MODULE_5__[\"setCurrentRunningSandboxProxy\"])(proxy); // FIXME if you have any other good ideas\n // remove the mark in next tick, thus we can identify whether it in micro app or not\n // this approach is just a workaround, it could not cover all complex cases, such as the micro app runs in the same task context with master in some case\n\n Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"nextTick\"])(function () {\n return Object(_common__WEBPACK_IMPORTED_MODULE_5__[\"setCurrentRunningSandboxProxy\"])(null);\n });\n\n switch (p) {\n case 'document':\n return document;\n\n case 'eval':\n // eslint-disable-next-line no-eval\n return eval;\n // no default\n }\n } // eslint-disable-next-line no-nested-ternary\n\n\n var value = propertiesWithGetter.has(p) ? rawWindow[p] : p in target ? target[p] : rawWindow[p];\n return Object(_common__WEBPACK_IMPORTED_MODULE_5__[\"getTargetValue\"])(rawWindow, value);\n },\n // trap in operator\n // see https://github.com/styled-components/styled-components/blob/master/packages/styled-components/src/constants.js#L12\n has: function has(target, p) {\n return p in unscopables || p in target || p in rawWindow;\n },\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, p) {\n /*\n as the descriptor of top/self/window/mockTop in raw window are configurable but not in proxy target, we need to get it from target to avoid TypeError\n see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/handler/getOwnPropertyDescriptor\n > A property cannot be reported as non-configurable, if it does not exists as an own property of the target object or if it exists as a configurable own property of the target object.\n */\n if (target.hasOwnProperty(p)) {\n var descriptor = Object.getOwnPropertyDescriptor(target, p);\n descriptorTargetMap.set(p, 'target');\n return descriptor;\n }\n\n if (rawWindow.hasOwnProperty(p)) {\n var _descriptor = Object.getOwnPropertyDescriptor(rawWindow, p);\n\n descriptorTargetMap.set(p, 'rawWindow'); // A property cannot be reported as non-configurable, if it does not exists as an own property of the target object\n\n if (_descriptor && !_descriptor.configurable) {\n _descriptor.configurable = true;\n }\n\n return _descriptor;\n }\n\n return undefined;\n },\n // trap to support iterator with sandbox\n ownKeys: function ownKeys(target) {\n var keys = uniq(Reflect.ownKeys(rawWindow).concat(Reflect.ownKeys(target)));\n return keys;\n },\n defineProperty: function defineProperty(target, p, attributes) {\n var from = descriptorTargetMap.get(p);\n /*\n Descriptor must be defined to native window while it comes from native window via Object.getOwnPropertyDescriptor(window, p),\n otherwise it would cause a TypeError with illegal invocation.\n */\n\n switch (from) {\n case 'rawWindow':\n return Reflect.defineProperty(rawWindow, p, attributes);\n\n default:\n return Reflect.defineProperty(target, p, attributes);\n }\n },\n deleteProperty: function deleteProperty(target, p) {\n if (target.hasOwnProperty(p)) {\n // @ts-ignore\n delete target[p];\n updatedValueSet.delete(p);\n return true;\n }\n\n return true;\n }\n });\n this.proxy = proxy;\n activeSandboxCount++;\n }\n\n Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(ProxySandbox, [{\n key: \"active\",\n value: function active() {\n if (!this.sandboxRunning) activeSandboxCount++;\n this.sandboxRunning = true;\n }\n }, {\n key: \"inactive\",\n value: function inactive() {\n var _this2 = this;\n\n if (false) {}\n\n if (--activeSandboxCount === 0) {\n variableWhiteList.forEach(function (p) {\n if (_this2.proxy.hasOwnProperty(p)) {\n // @ts-ignore\n delete window[p];\n }\n });\n }\n\n this.sandboxRunning = false;\n }\n }]);\n\n return ProxySandbox;\n}();\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3Byb3h5U2FuZGJveC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvcHJveHlTYW5kYm94LmpzP2YyYTAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXlcIjtcbmltcG9ydCBfY2xhc3NDYWxsQ2hlY2sgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NsYXNzQ2FsbENoZWNrXCI7XG5pbXBvcnQgX2NyZWF0ZUNsYXNzIGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9jcmVhdGVDbGFzc1wiO1xuaW1wb3J0IHsgU2FuZEJveFR5cGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IG5leHRUaWNrIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgZ2V0VGFyZ2V0VmFsdWUsIHNldEN1cnJlbnRSdW5uaW5nU2FuZGJveFByb3h5IH0gZnJvbSAnLi9jb21tb24nO1xuLyoqXG4gKiBmYXN0ZXN0KGF0IG1vc3QgdGltZSkgdW5pcXVlIGFycmF5IG1ldGhvZFxuICogQHNlZSBodHRwczovL2pzcGVyZi5jb20vYXJyYXktZmlsdGVyLXVuaXF1ZS8zMFxuICovXG5cbmZ1bmN0aW9uIHVuaXEoYXJyYXkpIHtcbiAgcmV0dXJuIGFycmF5LmZpbHRlcihmdW5jdGlvbiBmaWx0ZXIoZWxlbWVudCkge1xuICAgIHJldHVybiBlbGVtZW50IGluIHRoaXMgPyBmYWxzZSA6IHRoaXNbZWxlbWVudF0gPSB0cnVlO1xuICB9LCBPYmplY3QuY3JlYXRlKG51bGwpKTtcbn0gLy8gem9uZS5qcyB3aWxsIG92ZXJ3cml0ZSBPYmplY3QuZGVmaW5lUHJvcGVydHlcblxuXG52YXIgcmF3T2JqZWN0RGVmaW5lUHJvcGVydHkgPSBPYmplY3QuZGVmaW5lUHJvcGVydHk7XG52YXIgdmFyaWFibGVXaGl0ZUxpc3RJbkRldiA9IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnIHx8IHdpbmRvdy5fX1FJQU5LVU5fREVWRUxPUE1FTlRfXyA/IFsvLyBmb3IgcmVhY3QgaG90IHJlbG9hZFxuLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9jcmVhdGUtcmVhY3QtYXBwL2Jsb2IvNjZiZjdkZmM0MzM1MDI0OWUyZjA5ZDEzOGEyMDg0MGRhZThhMGE0YS9wYWNrYWdlcy9yZWFjdC1lcnJvci1vdmVybGF5L3NyYy9pbmRleC5qcyNMMTgwXG4nX19SRUFDVF9FUlJPUl9PVkVSTEFZX0dMT0JBTF9IT09LX18nXSA6IFtdOyAvLyB3aG8gY291bGQgZXNjYXBlIHRoZSBzYW5kYm94XG5cbnZhciB2YXJpYWJsZVdoaXRlTGlzdCA9IFsvLyBGSVhNRSBTeXN0ZW0uanMgdXNlZCBhIGluZGlyZWN0IGNhbGwgd2l0aCBldmFsLCB3aGljaCB3b3VsZCBtYWtlIGl0IHNjb3BlIGVzY2FwZSB0byBnbG9iYWxcbi8vIFRvIG1ha2UgU3lzdGVtLmpzIHdvcmtzIHdlbGwsIHdlIHdyaXRlIGl0IGJhY2sgdG8gZ2xvYmFsIHdpbmRvdyB0ZW1wb3Jhcnlcbi8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vc3lzdGVtanMvc3lzdGVtanMvYmxvYi80NTdmNWI3ZThhZjZiZDEyMGEyNzk1NDA0Nzc1NTJhMDdkNWRlMDg2L3NyYy9ldmFsdWF0ZS5qcyNMMTA2XG4nU3lzdGVtJywgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zeXN0ZW1qcy9zeXN0ZW1qcy9ibG9iLzQ1N2Y1YjdlOGFmNmJkMTIwYTI3OTU0MDQ3NzU1MmEwN2Q1ZGUwODYvc3JjL2luc3RhbnRpYXRlLmpzI0wzNTdcbidfX2Nqc1dyYXBwZXInXS5jb25jYXQodmFyaWFibGVXaGl0ZUxpc3RJbkRldik7XG4vKlxuIHZhcmlhYmxlcyB3aG8gYXJlIGltcG9zc2libGUgdG8gYmUgb3ZlcndyaXRlIG5lZWQgdG8gYmUgZXNjYXBlZCBmcm9tIHByb3h5IHNhbmRib3ggZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnNcbiAqL1xuXG52YXIgdW5zY29wYWJsZXMgPSB7XG4gIHVuZGVmaW5lZDogdHJ1ZSxcbiAgQXJyYXk6IHRydWUsXG4gIE9iamVjdDogdHJ1ZSxcbiAgU3RyaW5nOiB0cnVlLFxuICBCb29sZWFuOiB0cnVlLFxuICBNYXRoOiB0cnVlLFxuICBOdW1iZXI6IHRydWUsXG4gIFN5bWJvbDogdHJ1ZSxcbiAgcGFyc2VGbG9hdDogdHJ1ZSxcbiAgRmxvYXQzMkFycmF5OiB0cnVlXG59O1xuXG5mdW5jdGlvbiBjcmVhdGVGYWtlV2luZG93KGdsb2JhbCkge1xuICAvLyBtYXAgYWx3YXlzIGhhcyB0aGUgZmFzdGVzdCBwZXJmb3JtYW5jZSBpbiBoYXMgY2hlY2sgc2NlbmFyaW9cbiAgLy8gc2VlIGh0dHBzOi8vanNwZXJmLmNvbS9hcnJheS1pbmRleG9mLXZzLXNldC1oYXMvMjNcbiAgdmFyIHByb3BlcnRpZXNXaXRoR2V0dGVyID0gbmV3IE1hcCgpO1xuICB2YXIgZmFrZVdpbmRvdyA9IHt9O1xuICAvKlxuICAgY29weSB0aGUgbm9uLWNvbmZpZ3VyYWJsZSBwcm9wZXJ0eSBvZiBnbG9iYWwgdG8gZmFrZVdpbmRvd1xuICAgc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL1Byb3h5L2hhbmRsZXIvZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yXG4gICA+IEEgcHJvcGVydHkgY2Fubm90IGJlIHJlcG9ydGVkIGFzIG5vbi1jb25maWd1cmFibGUsIGlmIGl0IGRvZXMgbm90IGV4aXN0cyBhcyBhbiBvd24gcHJvcGVydHkgb2YgdGhlIHRhcmdldCBvYmplY3Qgb3IgaWYgaXQgZXhpc3RzIGFzIGEgY29uZmlndXJhYmxlIG93biBwcm9wZXJ0eSBvZiB0aGUgdGFyZ2V0IG9iamVjdC5cbiAgICovXG5cbiAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZ2xvYmFsKS5maWx0ZXIoZnVuY3Rpb24gKHApIHtcbiAgICB2YXIgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZ2xvYmFsLCBwKTtcbiAgICByZXR1cm4gIShkZXNjcmlwdG9yID09PSBudWxsIHx8IGRlc2NyaXB0b3IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlKTtcbiAgfSkuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgIHZhciBkZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihnbG9iYWwsIHApO1xuXG4gICAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICAgIHZhciBoYXNHZXR0ZXIgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZGVzY3JpcHRvciwgJ2dldCcpO1xuICAgICAgLypcbiAgICAgICBtYWtlIHRvcC9zZWxmL3dpbmRvdyBwcm9wZXJ0eSBjb25maWd1cmFibGUgYW5kIHdyaXRhYmxlLCBvdGhlcndpc2UgaXQgd2lsbCBjYXVzZSBUeXBlRXJyb3Igd2hpbGUgZ2V0IHRyYXAgcmV0dXJuLlxuICAgICAgIHNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9Qcm94eS9oYW5kbGVyL2dldFxuICAgICAgID4gVGhlIHZhbHVlIHJlcG9ydGVkIGZvciBhIHByb3BlcnR5IG11c3QgYmUgdGhlIHNhbWUgYXMgdGhlIHZhbHVlIG9mIHRoZSBjb3JyZXNwb25kaW5nIHRhcmdldCBvYmplY3QgcHJvcGVydHkgaWYgdGhlIHRhcmdldCBvYmplY3QgcHJvcGVydHkgaXMgYSBub24td3JpdGFibGUsIG5vbi1jb25maWd1cmFibGUgZGF0YSBwcm9wZXJ0eS5cbiAgICAgICAqL1xuXG4gICAgICBpZiAocCA9PT0gJ3RvcCcgfHwgcCA9PT0gJ3BhcmVudCcgfHwgcCA9PT0gJ3NlbGYnIHx8IHAgPT09ICd3aW5kb3cnIHx8IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAndGVzdCcgJiYgKHAgPT09ICdtb2NrVG9wJyB8fCBwID09PSAnbW9ja1NhZmFyaVRvcCcpKSB7XG4gICAgICAgIGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTtcbiAgICAgICAgLypcbiAgICAgICAgIFRoZSBkZXNjcmlwdG9yIG9mIHdpbmRvdy53aW5kb3cvd2luZG93LnRvcC93aW5kb3cuc2VsZiBpbiBTYWZhcmkvRkYgYXJlIGFjY2Vzc29yIGRlc2NyaXB0b3JzLCB3ZSBuZWVkIHRvIGF2b2lkIGFkZGluZyBhIGRhdGEgZGVzY3JpcHRvciB3aGlsZSBpdCB3YXNcbiAgICAgICAgIEV4YW1wbGU6XG4gICAgICAgICAgU2FmYXJpL0ZGOiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgJ3RvcCcpIC0+IHtnZXQ6IGZ1bmN0aW9uLCBzZXQ6IHVuZGVmaW5lZCwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiBmYWxzZX1cbiAgICAgICAgICBDaHJvbWU6IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAndG9wJykgLT4ge3ZhbHVlOiBXaW5kb3csIHdyaXRhYmxlOiBmYWxzZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiBmYWxzZX1cbiAgICAgICAgICovXG5cbiAgICAgICAgaWYgKCFoYXNHZXR0ZXIpIHtcbiAgICAgICAgICBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaGFzR2V0dGVyKSBwcm9wZXJ0aWVzV2l0aEdldHRlci5zZXQocCwgdHJ1ZSk7IC8vIGZyZWV6ZSB0aGUgZGVzY3JpcHRvciB0byBhdm9pZCBiZWluZyBtb2RpZmllZCBieSB6b25lLmpzXG4gICAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvem9uZS5qcy9ibG9iL2E1ZmUwOWIwZmFjMjdhYzVkZjFmYTc0NjA0MmY5NmYwNWNjYjZhMDAvbGliL2Jyb3dzZXIvZGVmaW5lLXByb3BlcnR5LnRzI0w3MVxuXG4gICAgICByYXdPYmplY3REZWZpbmVQcm9wZXJ0eShmYWtlV2luZG93LCBwLCBPYmplY3QuZnJlZXplKGRlc2NyaXB0b3IpKTtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4ge1xuICAgIGZha2VXaW5kb3c6IGZha2VXaW5kb3csXG4gICAgcHJvcGVydGllc1dpdGhHZXR0ZXI6IHByb3BlcnRpZXNXaXRoR2V0dGVyXG4gIH07XG59XG5cbnZhciBhY3RpdmVTYW5kYm94Q291bnQgPSAwO1xuLyoqXG4gKiDln7rkuo4gUHJveHkg5a6e546w55qE5rKZ566xXG4gKi9cblxudmFyIFByb3h5U2FuZGJveCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7XG4gIGZ1bmN0aW9uIFByb3h5U2FuZGJveChuYW1lKSB7XG4gICAgdmFyIF90aGlzID0gdGhpcztcblxuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBQcm94eVNhbmRib3gpO1xuXG4gICAgLyoqIHdpbmRvdyDlgLzlj5jmm7TorrDlvZUgKi9cbiAgICB0aGlzLnVwZGF0ZWRWYWx1ZVNldCA9IG5ldyBTZXQoKTtcbiAgICB0aGlzLnNhbmRib3hSdW5uaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmxhdGVzdFNldFByb3AgPSBudWxsO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy50eXBlID0gU2FuZEJveFR5cGUuUHJveHk7XG4gICAgdmFyIHVwZGF0ZWRWYWx1ZVNldCA9IHRoaXMudXBkYXRlZFZhbHVlU2V0O1xuICAgIHZhciByYXdXaW5kb3cgPSB3aW5kb3c7XG5cbiAgICB2YXIgX2NyZWF0ZUZha2VXaW5kb3cgPSBjcmVhdGVGYWtlV2luZG93KHJhd1dpbmRvdyksXG4gICAgICAgIGZha2VXaW5kb3cgPSBfY3JlYXRlRmFrZVdpbmRvdy5mYWtlV2luZG93LFxuICAgICAgICBwcm9wZXJ0aWVzV2l0aEdldHRlciA9IF9jcmVhdGVGYWtlV2luZG93LnByb3BlcnRpZXNXaXRoR2V0dGVyO1xuXG4gICAgdmFyIGRlc2NyaXB0b3JUYXJnZXRNYXAgPSBuZXcgTWFwKCk7XG5cbiAgICB2YXIgaGFzT3duUHJvcGVydHkgPSBmdW5jdGlvbiBoYXNPd25Qcm9wZXJ0eShrZXkpIHtcbiAgICAgIHJldHVybiBmYWtlV2luZG93Lmhhc093blByb3BlcnR5KGtleSkgfHwgcmF3V2luZG93Lmhhc093blByb3BlcnR5KGtleSk7XG4gICAgfTtcblxuICAgIHZhciBwcm94eSA9IG5ldyBQcm94eShmYWtlV2luZG93LCB7XG4gICAgICBzZXQ6IGZ1bmN0aW9uIHNldCh0YXJnZXQsIHAsIHZhbHVlKSB7XG4gICAgICAgIGlmIChfdGhpcy5zYW5kYm94UnVubmluZykge1xuICAgICAgICAgIC8vIFdlIG11c3Qga2VwdCBpdHMgZGVzY3JpcHRpb24gd2hpbGUgdGhlIHByb3BlcnR5IGV4aXN0ZWQgaW4gcmF3V2luZG93IGJlZm9yZVxuICAgICAgICAgIGlmICghdGFyZ2V0Lmhhc093blByb3BlcnR5KHApICYmIHJhd1dpbmRvdy5oYXNPd25Qcm9wZXJ0eShwKSkge1xuICAgICAgICAgICAgdmFyIGRlc2NyaXB0b3IgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHJhd1dpbmRvdywgcCk7XG4gICAgICAgICAgICB2YXIgd3JpdGFibGUgPSBkZXNjcmlwdG9yLndyaXRhYmxlLFxuICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZSA9IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlLFxuICAgICAgICAgICAgICAgIGVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGU7XG5cbiAgICAgICAgICAgIGlmICh3cml0YWJsZSkge1xuICAgICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBwLCB7XG4gICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiBjb25maWd1cmFibGUsXG4gICAgICAgICAgICAgICAgZW51bWVyYWJsZTogZW51bWVyYWJsZSxcbiAgICAgICAgICAgICAgICB3cml0YWJsZTogd3JpdGFibGUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICB0YXJnZXRbcF0gPSB2YWx1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodmFyaWFibGVXaGl0ZUxpc3QuaW5kZXhPZihwKSAhPT0gLTEpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIHJhd1dpbmRvd1twXSA9IHZhbHVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVwZGF0ZWRWYWx1ZVNldC5hZGQocCk7XG4gICAgICAgICAgX3RoaXMubGF0ZXN0U2V0UHJvcCA9IHA7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXCJbcWlhbmt1bl0gU2V0IHdpbmRvdy5cIi5jb25jYXQocC50b1N0cmluZygpLCBcIiB3aGlsZSBzYW5kYm94IGRlc3Ryb3llZCBvciBpbmFjdGl2ZSBpbiBcIikuY29uY2F0KG5hbWUsIFwiIVwiKSk7XG4gICAgICAgIH0gLy8g5ZyoIHN0cmljdC1tb2RlIOS4i++8jFByb3h5IOeahCBoYW5kbGVyLnNldCDov5Tlm54gZmFsc2Ug5Lya5oqb5Ye6IFR5cGVFcnJvcu+8jOWcqOaymeeuseWNuOi9veeahOaDheWGteS4i+W6lOivpeW/veeVpemUmeivr1xuXG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LFxuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQodGFyZ2V0LCBwKSB7XG4gICAgICAgIGlmIChwID09PSBTeW1ib2wudW5zY29wYWJsZXMpIHJldHVybiB1bnNjb3BhYmxlczsgLy8gYXZvaWQgd2hvIHVzaW5nIHdpbmRvdy53aW5kb3cgb3Igd2luZG93LnNlbGYgdG8gZXNjYXBlIHRoZSBzYW5kYm94IGVudmlyb25tZW50IHRvIHRvdWNoIHRoZSByZWFsbHkgd2luZG93XG4gICAgICAgIC8vIHNlZSBodHRwczovL2dpdGh1Yi5jb20vZWxpZ3JleS9GaWxlU2F2ZXIuanMvYmxvYi9tYXN0ZXIvc3JjL0ZpbGVTYXZlci5qcyNMMTNcblxuICAgICAgICBpZiAocCA9PT0gJ3dpbmRvdycgfHwgcCA9PT0gJ3NlbGYnKSB7XG4gICAgICAgICAgcmV0dXJuIHByb3h5O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHAgPT09ICd0b3AnIHx8IHAgPT09ICdwYXJlbnQnIHx8IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAndGVzdCcgJiYgKHAgPT09ICdtb2NrVG9wJyB8fCBwID09PSAnbW9ja1NhZmFyaVRvcCcpKSB7XG4gICAgICAgICAgLy8gaWYgeW91ciBtYXN0ZXIgYXBwIGluIGFuIGlmcmFtZSBjb250ZXh0LCBhbGxvdyB0aGVzZSBwcm9wcyBlc2NhcGUgdGhlIHNhbmRib3hcbiAgICAgICAgICBpZiAocmF3V2luZG93ID09PSByYXdXaW5kb3cucGFyZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gcHJveHk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHJhd1dpbmRvd1twXTtcbiAgICAgICAgfSAvLyBwcm94eS5oYXNPd25Qcm9wZXJ0eSB3b3VsZCBpbnZva2UgZ2V0dGVyIGZpcnN0bHksIHRoZW4gaXRzIHZhbHVlIHJlcHJlc2VudGVkIGFzIHJhd1dpbmRvdy5oYXNPd25Qcm9wZXJ0eVxuXG5cbiAgICAgICAgaWYgKHAgPT09ICdoYXNPd25Qcm9wZXJ0eScpIHtcbiAgICAgICAgICByZXR1cm4gaGFzT3duUHJvcGVydHk7XG4gICAgICAgIH0gLy8gbWFyayB0aGUgc3ltYm9sIHRvIGRvY3VtZW50IHdoaWxlIGFjY2Vzc2luZyBhcyBkb2N1bWVudC5jcmVhdGVFbGVtZW50IGNvdWxkIGtub3cgaXMgaW52b2tlZCBieSB3aGljaCBzYW5kYm94IGZvciBkeW5hbWljIGFwcGVuZCBwYXRjaGVyXG5cblxuICAgICAgICBpZiAocCA9PT0gJ2RvY3VtZW50JyB8fCBwID09PSAnZXZhbCcpIHtcbiAgICAgICAgICBzZXRDdXJyZW50UnVubmluZ1NhbmRib3hQcm94eShwcm94eSk7IC8vIEZJWE1FIGlmIHlvdSBoYXZlIGFueSBvdGhlciBnb29kIGlkZWFzXG4gICAgICAgICAgLy8gcmVtb3ZlIHRoZSBtYXJrIGluIG5leHQgdGljaywgdGh1cyB3ZSBjYW4gaWRlbnRpZnkgd2hldGhlciBpdCBpbiBtaWNybyBhcHAgb3Igbm90XG4gICAgICAgICAgLy8gdGhpcyBhcHByb2FjaCBpcyBqdXN0IGEgd29ya2Fyb3VuZCwgaXQgY291bGQgbm90IGNvdmVyIGFsbCBjb21wbGV4IGNhc2VzLCBzdWNoIGFzIHRoZSBtaWNybyBhcHAgcnVucyBpbiB0aGUgc2FtZSB0YXNrIGNvbnRleHQgd2l0aCBtYXN0ZXIgaW4gc29tZSBjYXNlXG5cbiAgICAgICAgICBuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0Q3VycmVudFJ1bm5pbmdTYW5kYm94UHJveHkobnVsbCk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBzd2l0Y2ggKHApIHtcbiAgICAgICAgICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50O1xuXG4gICAgICAgICAgICBjYXNlICdldmFsJzpcbiAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWV2YWxcbiAgICAgICAgICAgICAgcmV0dXJuIGV2YWw7XG4gICAgICAgICAgICAvLyBubyBkZWZhdWx0XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1uZXN0ZWQtdGVybmFyeVxuXG5cbiAgICAgICAgdmFyIHZhbHVlID0gcHJvcGVydGllc1dpdGhHZXR0ZXIuaGFzKHApID8gcmF3V2luZG93W3BdIDogcCBpbiB0YXJnZXQgPyB0YXJnZXRbcF0gOiByYXdXaW5kb3dbcF07XG4gICAgICAgIHJldHVybiBnZXRUYXJnZXRWYWx1ZShyYXdXaW5kb3csIHZhbHVlKTtcbiAgICAgIH0sXG4gICAgICAvLyB0cmFwIGluIG9wZXJhdG9yXG4gICAgICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3N0eWxlZC1jb21wb25lbnRzL3N0eWxlZC1jb21wb25lbnRzL2Jsb2IvbWFzdGVyL3BhY2thZ2VzL3N0eWxlZC1jb21wb25lbnRzL3NyYy9jb25zdGFudHMuanMjTDEyXG4gICAgICBoYXM6IGZ1bmN0aW9uIGhhcyh0YXJnZXQsIHApIHtcbiAgICAgICAgcmV0dXJuIHAgaW4gdW5zY29wYWJsZXMgfHwgcCBpbiB0YXJnZXQgfHwgcCBpbiByYXdXaW5kb3c7XG4gICAgICB9LFxuICAgICAgZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yOiBmdW5jdGlvbiBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBwKSB7XG4gICAgICAgIC8qXG4gICAgICAgICBhcyB0aGUgZGVzY3JpcHRvciBvZiB0b3Avc2VsZi93aW5kb3cvbW9ja1RvcCBpbiByYXcgd2luZG93IGFyZSBjb25maWd1cmFibGUgYnV0IG5vdCBpbiBwcm94eSB0YXJnZXQsIHdlIG5lZWQgdG8gZ2V0IGl0IGZyb20gdGFyZ2V0IHRvIGF2b2lkIFR5cGVFcnJvclxuICAgICAgICAgc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL1Byb3h5L2hhbmRsZXIvZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yXG4gICAgICAgICA+IEEgcHJvcGVydHkgY2Fubm90IGJlIHJlcG9ydGVkIGFzIG5vbi1jb25maWd1cmFibGUsIGlmIGl0IGRvZXMgbm90IGV4aXN0cyBhcyBhbiBvd24gcHJvcGVydHkgb2YgdGhlIHRhcmdldCBvYmplY3Qgb3IgaWYgaXQgZXhpc3RzIGFzIGEgY29uZmlndXJhYmxlIG93biBwcm9wZXJ0eSBvZiB0aGUgdGFyZ2V0IG9iamVjdC5cbiAgICAgICAgICovXG4gICAgICAgIGlmICh0YXJnZXQuaGFzT3duUHJvcGVydHkocCkpIHtcbiAgICAgICAgICB2YXIgZGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBwKTtcbiAgICAgICAgICBkZXNjcmlwdG9yVGFyZ2V0TWFwLnNldChwLCAndGFyZ2V0Jyk7XG4gICAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmF3V2luZG93Lmhhc093blByb3BlcnR5KHApKSB7XG4gICAgICAgICAgdmFyIF9kZXNjcmlwdG9yID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyYXdXaW5kb3csIHApO1xuXG4gICAgICAgICAgZGVzY3JpcHRvclRhcmdldE1hcC5zZXQocCwgJ3Jhd1dpbmRvdycpOyAvLyBBIHByb3BlcnR5IGNhbm5vdCBiZSByZXBvcnRlZCBhcyBub24tY29uZmlndXJhYmxlLCBpZiBpdCBkb2VzIG5vdCBleGlzdHMgYXMgYW4gb3duIHByb3BlcnR5IG9mIHRoZSB0YXJnZXQgb2JqZWN0XG5cbiAgICAgICAgICBpZiAoX2Rlc2NyaXB0b3IgJiYgIV9kZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSkge1xuICAgICAgICAgICAgX2Rlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gX2Rlc2NyaXB0b3I7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfSxcbiAgICAgIC8vIHRyYXAgdG8gc3VwcG9ydCBpdGVyYXRvciB3aXRoIHNhbmRib3hcbiAgICAgIG93bktleXM6IGZ1bmN0aW9uIG93bktleXModGFyZ2V0KSB7XG4gICAgICAgIHZhciBrZXlzID0gdW5pcShSZWZsZWN0Lm93bktleXMocmF3V2luZG93KS5jb25jYXQoUmVmbGVjdC5vd25LZXlzKHRhcmdldCkpKTtcbiAgICAgICAgcmV0dXJuIGtleXM7XG4gICAgICB9LFxuICAgICAgZGVmaW5lUHJvcGVydHk6IGZ1bmN0aW9uIGRlZmluZVByb3BlcnR5KHRhcmdldCwgcCwgYXR0cmlidXRlcykge1xuICAgICAgICB2YXIgZnJvbSA9IGRlc2NyaXB0b3JUYXJnZXRNYXAuZ2V0KHApO1xuICAgICAgICAvKlxuICAgICAgICAgRGVzY3JpcHRvciBtdXN0IGJlIGRlZmluZWQgdG8gbmF0aXZlIHdpbmRvdyB3aGlsZSBpdCBjb21lcyBmcm9tIG5hdGl2ZSB3aW5kb3cgdmlhIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCBwKSxcbiAgICAgICAgIG90aGVyd2lzZSBpdCB3b3VsZCBjYXVzZSBhIFR5cGVFcnJvciB3aXRoIGlsbGVnYWwgaW52b2NhdGlvbi5cbiAgICAgICAgICovXG5cbiAgICAgICAgc3dpdGNoIChmcm9tKSB7XG4gICAgICAgICAgY2FzZSAncmF3V2luZG93JzpcbiAgICAgICAgICAgIHJldHVybiBSZWZsZWN0LmRlZmluZVByb3BlcnR5KHJhd1dpbmRvdywgcCwgYXR0cmlidXRlcyk7XG5cbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFJlZmxlY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBwLCBhdHRyaWJ1dGVzKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGRlbGV0ZVByb3BlcnR5OiBmdW5jdGlvbiBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHApIHtcbiAgICAgICAgaWYgKHRhcmdldC5oYXNPd25Qcm9wZXJ0eShwKSkge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBkZWxldGUgdGFyZ2V0W3BdO1xuICAgICAgICAgIHVwZGF0ZWRWYWx1ZVNldC5kZWxldGUocCk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnByb3h5ID0gcHJveHk7XG4gICAgYWN0aXZlU2FuZGJveENvdW50Kys7XG4gIH1cblxuICBfY3JlYXRlQ2xhc3MoUHJveHlTYW5kYm94LCBbe1xuICAgIGtleTogXCJhY3RpdmVcIixcbiAgICB2YWx1ZTogZnVuY3Rpb24gYWN0aXZlKCkge1xuICAgICAgaWYgKCF0aGlzLnNhbmRib3hSdW5uaW5nKSBhY3RpdmVTYW5kYm94Q291bnQrKztcbiAgICAgIHRoaXMuc2FuZGJveFJ1bm5pbmcgPSB0cnVlO1xuICAgIH1cbiAgfSwge1xuICAgIGtleTogXCJpbmFjdGl2ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBpbmFjdGl2ZSgpIHtcbiAgICAgIHZhciBfdGhpczIgPSB0aGlzO1xuXG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgICAgY29uc29sZS5pbmZvKFwiW3FpYW5rdW46c2FuZGJveF0gXCIuY29uY2F0KHRoaXMubmFtZSwgXCIgbW9kaWZpZWQgZ2xvYmFsIHByb3BlcnRpZXMgcmVzdG9yZS4uLlwiKSwgX3RvQ29uc3VtYWJsZUFycmF5KHRoaXMudXBkYXRlZFZhbHVlU2V0LmtleXMoKSkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoLS1hY3RpdmVTYW5kYm94Q291bnQgPT09IDApIHtcbiAgICAgICAgdmFyaWFibGVXaGl0ZUxpc3QuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICAgIGlmIChfdGhpczIucHJveHkuaGFzT3duUHJvcGVydHkocCkpIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIGRlbGV0ZSB3aW5kb3dbcF07XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zYW5kYm94UnVubmluZyA9IGZhbHNlO1xuICAgIH1cbiAgfV0pO1xuXG4gIHJldHVybiBQcm94eVNhbmRib3g7XG59KCk7XG5cbmV4cG9ydCB7IFByb3h5U2FuZGJveCBhcyBkZWZhdWx0IH07Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/proxySandbox.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/sandbox/snapshotSandbox.js": /*!************************************************************!*\ !*** ./node_modules/qiankun/es/sandbox/snapshotSandbox.js ***! \************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return SnapshotSandbox; });\n/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js\");\n/* harmony import */ var _interfaces__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../interfaces */ \"./node_modules/qiankun/es/interfaces.js\");\n\n\n\n\nfunction iter(obj, callbackFn) {\n // eslint-disable-next-line guard-for-in, no-restricted-syntax\n for (var prop in obj) {\n if (obj.hasOwnProperty(prop)) {\n callbackFn(prop);\n }\n }\n}\n/**\n * 基于 diff 方式实现的沙箱,用于不支持 Proxy 的低版本浏览器\n */\n\n\nvar SnapshotSandbox = /*#__PURE__*/function () {\n function SnapshotSandbox(name) {\n Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(this, SnapshotSandbox);\n\n this.sandboxRunning = true;\n this.modifyPropsMap = {};\n this.name = name;\n this.proxy = window;\n this.type = _interfaces__WEBPACK_IMPORTED_MODULE_2__[\"SandBoxType\"].Snapshot;\n }\n\n Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(SnapshotSandbox, [{\n key: \"active\",\n value: function active() {\n var _this = this;\n\n // 记录当前快照\n this.windowSnapshot = {};\n iter(window, function (prop) {\n _this.windowSnapshot[prop] = window[prop];\n }); // 恢复之前的变更\n\n Object.keys(this.modifyPropsMap).forEach(function (p) {\n window[p] = _this.modifyPropsMap[p];\n });\n this.sandboxRunning = true;\n }\n }, {\n key: \"inactive\",\n value: function inactive() {\n var _this2 = this;\n\n this.modifyPropsMap = {};\n iter(window, function (prop) {\n if (window[prop] !== _this2.windowSnapshot[prop]) {\n // 记录变更,恢复环境\n _this2.modifyPropsMap[prop] = window[prop];\n window[prop] = _this2.windowSnapshot[prop];\n }\n });\n\n if (false) {}\n\n this.sandboxRunning = false;\n }\n }]);\n\n return SnapshotSandbox;\n}();\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy9zYW5kYm94L3NuYXBzaG90U2FuZGJveC5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3NhbmRib3gvc25hcHNob3RTYW5kYm94LmpzP2M1M2YiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF9jbGFzc0NhbGxDaGVjayBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY2xhc3NDYWxsQ2hlY2tcIjtcbmltcG9ydCBfY3JlYXRlQ2xhc3MgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NyZWF0ZUNsYXNzXCI7XG5pbXBvcnQgeyBTYW5kQm94VHlwZSB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5mdW5jdGlvbiBpdGVyKG9iaiwgY2FsbGJhY2tGbikge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ3VhcmQtZm9yLWluLCBuby1yZXN0cmljdGVkLXN5bnRheFxuICBmb3IgKHZhciBwcm9wIGluIG9iaikge1xuICAgIGlmIChvYmouaGFzT3duUHJvcGVydHkocHJvcCkpIHtcbiAgICAgIGNhbGxiYWNrRm4ocHJvcCk7XG4gICAgfVxuICB9XG59XG4vKipcbiAqIOWfuuS6jiBkaWZmIOaWueW8j+WunueOsOeahOaymeeuse+8jOeUqOS6juS4jeaUr+aMgSBQcm94eSDnmoTkvY7niYjmnKzmtY/op4jlmahcbiAqL1xuXG5cbnZhciBTbmFwc2hvdFNhbmRib3ggPSAvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkge1xuICBmdW5jdGlvbiBTbmFwc2hvdFNhbmRib3gobmFtZSkge1xuICAgIF9jbGFzc0NhbGxDaGVjayh0aGlzLCBTbmFwc2hvdFNhbmRib3gpO1xuXG4gICAgdGhpcy5zYW5kYm94UnVubmluZyA9IHRydWU7XG4gICAgdGhpcy5tb2RpZnlQcm9wc01hcCA9IHt9O1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5wcm94eSA9IHdpbmRvdztcbiAgICB0aGlzLnR5cGUgPSBTYW5kQm94VHlwZS5TbmFwc2hvdDtcbiAgfVxuXG4gIF9jcmVhdGVDbGFzcyhTbmFwc2hvdFNhbmRib3gsIFt7XG4gICAga2V5OiBcImFjdGl2ZVwiLFxuICAgIHZhbHVlOiBmdW5jdGlvbiBhY3RpdmUoKSB7XG4gICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuXG4gICAgICAvLyDorrDlvZXlvZPliY3lv6vnhadcbiAgICAgIHRoaXMud2luZG93U25hcHNob3QgPSB7fTtcbiAgICAgIGl0ZXIod2luZG93LCBmdW5jdGlvbiAocHJvcCkge1xuICAgICAgICBfdGhpcy53aW5kb3dTbmFwc2hvdFtwcm9wXSA9IHdpbmRvd1twcm9wXTtcbiAgICAgIH0pOyAvLyDmgaLlpI3kuYvliY3nmoTlj5jmm7RcblxuICAgICAgT2JqZWN0LmtleXModGhpcy5tb2RpZnlQcm9wc01hcCkuZm9yRWFjaChmdW5jdGlvbiAocCkge1xuICAgICAgICB3aW5kb3dbcF0gPSBfdGhpcy5tb2RpZnlQcm9wc01hcFtwXTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zYW5kYm94UnVubmluZyA9IHRydWU7XG4gICAgfVxuICB9LCB7XG4gICAga2V5OiBcImluYWN0aXZlXCIsXG4gICAgdmFsdWU6IGZ1bmN0aW9uIGluYWN0aXZlKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHRoaXMubW9kaWZ5UHJvcHNNYXAgPSB7fTtcbiAgICAgIGl0ZXIod2luZG93LCBmdW5jdGlvbiAocHJvcCkge1xuICAgICAgICBpZiAod2luZG93W3Byb3BdICE9PSBfdGhpczIud2luZG93U25hcHNob3RbcHJvcF0pIHtcbiAgICAgICAgICAvLyDorrDlvZXlj5jmm7TvvIzmgaLlpI3njq/looNcbiAgICAgICAgICBfdGhpczIubW9kaWZ5UHJvcHNNYXBbcHJvcF0gPSB3aW5kb3dbcHJvcF07XG4gICAgICAgICAgd2luZG93W3Byb3BdID0gX3RoaXMyLndpbmRvd1NuYXBzaG90W3Byb3BdO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnKSB7XG4gICAgICAgIGNvbnNvbGUuaW5mbyhcIltxaWFua3VuOnNhbmRib3hdIFwiLmNvbmNhdCh0aGlzLm5hbWUsIFwiIG9yaWdpbiB3aW5kb3cgcmVzdG9yZS4uLlwiKSwgT2JqZWN0LmtleXModGhpcy5tb2RpZnlQcm9wc01hcCkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNhbmRib3hSdW5uaW5nID0gZmFsc2U7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIFNuYXBzaG90U2FuZGJveDtcbn0oKTtcblxuZXhwb3J0IHsgU25hcHNob3RTYW5kYm94IGFzIGRlZmF1bHQgfTsiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/sandbox/snapshotSandbox.js\n"); /***/ }), /***/ "./node_modules/qiankun/es/utils.js": /*!******************************************!*\ !*** ./node_modules/qiankun/es/utils.js ***! \******************************************/ /*! exports provided: toArray, sleep, nextTick, isConstructable, isCallable, isBoundedFunction, getDefaultTplWrapper, getWrapperId, validateExportLifecycle, Deferred, performanceGetEntriesByName, performanceMark, performanceMeasure, isEnableScopedCSS, getXPathForElement, getContainer */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"toArray\", function() { return toArray; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"sleep\", function() { return sleep; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"nextTick\", function() { return nextTick; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isConstructable\", function() { return isConstructable; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isCallable\", function() { return isCallable; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isBoundedFunction\", function() { return isBoundedFunction; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getDefaultTplWrapper\", function() { return getDefaultTplWrapper; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getWrapperId\", function() { return getWrapperId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"validateExportLifecycle\", function() { return validateExportLifecycle; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Deferred\", function() { return Deferred; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"performanceGetEntriesByName\", function() { return performanceGetEntriesByName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"performanceMark\", function() { return performanceMark; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"performanceMeasure\", function() { return performanceMeasure; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isEnableScopedCSS\", function() { return isEnableScopedCSS; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getXPathForElement\", function() { return getXPathForElement; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getContainer\", function() { return getContainer; });\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/typeof */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/isFunction */ \"./node_modules/lodash/isFunction.js\");\n/* harmony import */ var lodash_isFunction__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash_isFunction__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var lodash_snakeCase__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/snakeCase */ \"./node_modules/lodash/snakeCase.js\");\n/* harmony import */ var lodash_snakeCase__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_snakeCase__WEBPACK_IMPORTED_MODULE_3__);\n\n\n\n\nfunction toArray(array) {\n return Array.isArray(array) ? array : [array];\n}\nfunction sleep(ms) {\n return new Promise(function (resolve) {\n return setTimeout(resolve, ms);\n });\n}\n/**\n * run a callback after next tick\n * @param cb\n */\n\nfunction nextTick(cb) {\n Promise.resolve().then(cb);\n}\nvar constructableMap = new WeakMap();\nfunction isConstructable(fn) {\n if (constructableMap.has(fn)) {\n return constructableMap.get(fn);\n }\n\n var constructableFunctionRegex = /^function\\b\\s[A-Z].*/;\n var classRegex = /^class\\b/; // 有 prototype 并且 prototype 上有定义一系列非 constructor 属性,则可以认为是一个构造函数\n\n var constructable = fn.prototype && fn.prototype.constructor === fn && Object.getOwnPropertyNames(fn.prototype).length > 1 || constructableFunctionRegex.test(fn.toString()) || classRegex.test(fn.toString());\n constructableMap.set(fn, constructable);\n return constructable;\n}\n/**\n * in safari\n * typeof document.all === 'undefined' // true\n * typeof document.all === 'function' // true\n * We need to discriminate safari for better performance\n */\n\nvar naughtySafari = typeof document.all === 'function' && typeof document.all === 'undefined';\nvar isCallable = naughtySafari ? function (fn) {\n return typeof fn === 'function' && typeof fn !== 'undefined';\n} : function (fn) {\n return typeof fn === 'function';\n};\nvar boundedMap = new WeakMap();\nfunction isBoundedFunction(fn) {\n if (boundedMap.has(fn)) {\n return boundedMap.get(fn);\n }\n /*\n indexOf is faster than startsWith\n see https://jsperf.com/string-startswith/72\n */\n\n\n var bounded = fn.name.indexOf('bound ') === 0 && !fn.hasOwnProperty('prototype');\n boundedMap.set(fn, bounded);\n return bounded;\n}\nfunction getDefaultTplWrapper(id, name) {\n return function (tpl) {\n return \"
\").concat(tpl, \"
\");\n };\n}\nfunction getWrapperId(id) {\n return \"__qiankun_microapp_wrapper_for_\".concat(lodash_snakeCase__WEBPACK_IMPORTED_MODULE_3___default()(id), \"__\");\n}\n/** 校验子应用导出的 生命周期 对象是否正确 */\n\nfunction validateExportLifecycle(exports) {\n var _ref = exports !== null && exports !== void 0 ? exports : {},\n bootstrap = _ref.bootstrap,\n mount = _ref.mount,\n unmount = _ref.unmount;\n\n return lodash_isFunction__WEBPACK_IMPORTED_MODULE_2___default()(bootstrap) && lodash_isFunction__WEBPACK_IMPORTED_MODULE_2___default()(mount) && lodash_isFunction__WEBPACK_IMPORTED_MODULE_2___default()(unmount);\n}\n\nvar Deferred = function Deferred() {\n var _this = this;\n\n Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(this, Deferred);\n\n this.promise = new Promise(function (resolve, reject) {\n _this.resolve = resolve;\n _this.reject = reject;\n });\n};\n\n\nvar supportsUserTiming = typeof performance !== 'undefined' && typeof performance.mark === 'function' && typeof performance.clearMarks === 'function' && typeof performance.measure === 'function' && typeof performance.clearMeasures === 'function' && typeof performance.getEntriesByName === 'function';\nfunction performanceGetEntriesByName(markName, type) {\n var marks = null;\n\n if (supportsUserTiming) {\n marks = performance.getEntriesByName(markName, type);\n }\n\n return marks;\n}\nfunction performanceMark(markName) {\n if (supportsUserTiming) {\n performance.mark(markName);\n }\n}\nfunction performanceMeasure(measureName, markName) {\n if (supportsUserTiming && performance.getEntriesByName(markName, 'mark').length) {\n performance.measure(measureName, markName);\n performance.clearMarks(markName);\n performance.clearMeasures(measureName);\n }\n}\nfunction isEnableScopedCSS(sandbox) {\n if (Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(sandbox) !== 'object') {\n return false;\n }\n\n if (sandbox.strictStyleIsolation) {\n return false;\n }\n\n return !!sandbox.experimentalStyleIsolation;\n}\n/**\n * copy from https://developer.mozilla.org/zh-CN/docs/Using_XPath\n * @param el\n * @param document\n */\n\nfunction getXPathForElement(el, document) {\n // not support that if el not existed in document yet(such as it not append to document before it mounted)\n if (!document.body.contains(el)) {\n return undefined;\n }\n\n var xpath = '';\n var pos;\n var tmpEle;\n var element = el;\n\n while (element !== document.documentElement) {\n pos = 0;\n tmpEle = element;\n\n while (tmpEle) {\n if (tmpEle.nodeType === 1 && tmpEle.nodeName === element.nodeName) {\n // If it is ELEMENT_NODE of the same name\n pos += 1;\n }\n\n tmpEle = tmpEle.previousSibling;\n }\n\n xpath = \"*[name()='\".concat(element.nodeName, \"' and namespace-uri()='\").concat(element.namespaceURI === null ? '' : element.namespaceURI, \"'][\").concat(pos, \"]/\").concat(xpath);\n element = element.parentNode;\n }\n\n xpath = \"/*[name()='\".concat(document.documentElement.nodeName, \"' and namespace-uri()='\").concat(element.namespaceURI === null ? '' : element.namespaceURI, \"']/\").concat(xpath);\n xpath = xpath.replace(/\\/$/, '');\n return xpath;\n}\nfunction getContainer(container) {\n return typeof container === 'string' ? document.querySelector(container) : container;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9lcy91dGlscy5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL2VzL3V0aWxzLmpzPzc5YWMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF90eXBlb2YgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3R5cGVvZlwiO1xuaW1wb3J0IF9jbGFzc0NhbGxDaGVjayBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY2xhc3NDYWxsQ2hlY2tcIjtcbmltcG9ydCBfaXNGdW5jdGlvbiBmcm9tIFwibG9kYXNoL2lzRnVuY3Rpb25cIjtcbmltcG9ydCBfc25ha2VDYXNlIGZyb20gXCJsb2Rhc2gvc25ha2VDYXNlXCI7XG5leHBvcnQgZnVuY3Rpb24gdG9BcnJheShhcnJheSkge1xuICByZXR1cm4gQXJyYXkuaXNBcnJheShhcnJheSkgPyBhcnJheSA6IFthcnJheV07XG59XG5leHBvcnQgZnVuY3Rpb24gc2xlZXAobXMpIHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG4gICAgcmV0dXJuIHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpO1xuICB9KTtcbn1cbi8qKlxuICogcnVuIGEgY2FsbGJhY2sgYWZ0ZXIgbmV4dCB0aWNrXG4gKiBAcGFyYW0gY2JcbiAqL1xuXG5leHBvcnQgZnVuY3Rpb24gbmV4dFRpY2soY2IpIHtcbiAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbihjYik7XG59XG52YXIgY29uc3RydWN0YWJsZU1hcCA9IG5ldyBXZWFrTWFwKCk7XG5leHBvcnQgZnVuY3Rpb24gaXNDb25zdHJ1Y3RhYmxlKGZuKSB7XG4gIGlmIChjb25zdHJ1Y3RhYmxlTWFwLmhhcyhmbikpIHtcbiAgICByZXR1cm4gY29uc3RydWN0YWJsZU1hcC5nZXQoZm4pO1xuICB9XG5cbiAgdmFyIGNvbnN0cnVjdGFibGVGdW5jdGlvblJlZ2V4ID0gL15mdW5jdGlvblxcYlxcc1tBLVpdLiovO1xuICB2YXIgY2xhc3NSZWdleCA9IC9eY2xhc3NcXGIvOyAvLyDmnIkgcHJvdG90eXBlIOW5tuS4lCBwcm90b3R5cGUg5LiK5pyJ5a6a5LmJ5LiA57O75YiX6Z2eIGNvbnN0cnVjdG9yIOWxnuaAp++8jOWImeWPr+S7peiupOS4uuaYr+S4gOS4quaehOmAoOWHveaVsFxuXG4gIHZhciBjb25zdHJ1Y3RhYmxlID0gZm4ucHJvdG90eXBlICYmIGZuLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9PT0gZm4gJiYgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZm4ucHJvdG90eXBlKS5sZW5ndGggPiAxIHx8IGNvbnN0cnVjdGFibGVGdW5jdGlvblJlZ2V4LnRlc3QoZm4udG9TdHJpbmcoKSkgfHwgY2xhc3NSZWdleC50ZXN0KGZuLnRvU3RyaW5nKCkpO1xuICBjb25zdHJ1Y3RhYmxlTWFwLnNldChmbiwgY29uc3RydWN0YWJsZSk7XG4gIHJldHVybiBjb25zdHJ1Y3RhYmxlO1xufVxuLyoqXG4gKiBpbiBzYWZhcmlcbiAqIHR5cGVvZiBkb2N1bWVudC5hbGwgPT09ICd1bmRlZmluZWQnIC8vIHRydWVcbiAqIHR5cGVvZiBkb2N1bWVudC5hbGwgPT09ICdmdW5jdGlvbicgLy8gdHJ1ZVxuICogV2UgbmVlZCB0byBkaXNjcmltaW5hdGUgc2FmYXJpIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2VcbiAqL1xuXG52YXIgbmF1Z2h0eVNhZmFyaSA9IHR5cGVvZiBkb2N1bWVudC5hbGwgPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIGRvY3VtZW50LmFsbCA9PT0gJ3VuZGVmaW5lZCc7XG5leHBvcnQgdmFyIGlzQ2FsbGFibGUgPSBuYXVnaHR5U2FmYXJpID8gZnVuY3Rpb24gKGZuKSB7XG4gIHJldHVybiB0eXBlb2YgZm4gPT09ICdmdW5jdGlvbicgJiYgdHlwZW9mIGZuICE9PSAndW5kZWZpbmVkJztcbn0gOiBmdW5jdGlvbiAoZm4pIHtcbiAgcmV0dXJuIHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJztcbn07XG52YXIgYm91bmRlZE1hcCA9IG5ldyBXZWFrTWFwKCk7XG5leHBvcnQgZnVuY3Rpb24gaXNCb3VuZGVkRnVuY3Rpb24oZm4pIHtcbiAgaWYgKGJvdW5kZWRNYXAuaGFzKGZuKSkge1xuICAgIHJldHVybiBib3VuZGVkTWFwLmdldChmbik7XG4gIH1cbiAgLypcbiAgIGluZGV4T2YgaXMgZmFzdGVyIHRoYW4gc3RhcnRzV2l0aFxuICAgc2VlIGh0dHBzOi8vanNwZXJmLmNvbS9zdHJpbmctc3RhcnRzd2l0aC83MlxuICAgKi9cblxuXG4gIHZhciBib3VuZGVkID0gZm4ubmFtZS5pbmRleE9mKCdib3VuZCAnKSA9PT0gMCAmJiAhZm4uaGFzT3duUHJvcGVydHkoJ3Byb3RvdHlwZScpO1xuICBib3VuZGVkTWFwLnNldChmbiwgYm91bmRlZCk7XG4gIHJldHVybiBib3VuZGVkO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRUcGxXcmFwcGVyKGlkLCBuYW1lKSB7XG4gIHJldHVybiBmdW5jdGlvbiAodHBsKSB7XG4gICAgcmV0dXJuIFwiPGRpdiBpZD1cXFwiXCIuY29uY2F0KGdldFdyYXBwZXJJZChpZCksIFwiXFxcIiBkYXRhLW5hbWU9XFxcIlwiKS5jb25jYXQobmFtZSwgXCJcXFwiPlwiKS5jb25jYXQodHBsLCBcIjwvZGl2PlwiKTtcbiAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBnZXRXcmFwcGVySWQoaWQpIHtcbiAgcmV0dXJuIFwiX19xaWFua3VuX21pY3JvYXBwX3dyYXBwZXJfZm9yX1wiLmNvbmNhdChfc25ha2VDYXNlKGlkKSwgXCJfX1wiKTtcbn1cbi8qKiDmoKHpqozlrZDlupTnlKjlr7zlh7rnmoQg55Sf5ZG95ZGo5pyfIOWvueixoeaYr+WQpuato+ehriAqL1xuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVFeHBvcnRMaWZlY3ljbGUoZXhwb3J0cykge1xuICB2YXIgX3JlZiA9IGV4cG9ydHMgIT09IG51bGwgJiYgZXhwb3J0cyAhPT0gdm9pZCAwID8gZXhwb3J0cyA6IHt9LFxuICAgICAgYm9vdHN0cmFwID0gX3JlZi5ib290c3RyYXAsXG4gICAgICBtb3VudCA9IF9yZWYubW91bnQsXG4gICAgICB1bm1vdW50ID0gX3JlZi51bm1vdW50O1xuXG4gIHJldHVybiBfaXNGdW5jdGlvbihib290c3RyYXApICYmIF9pc0Z1bmN0aW9uKG1vdW50KSAmJiBfaXNGdW5jdGlvbih1bm1vdW50KTtcbn1cblxudmFyIERlZmVycmVkID0gZnVuY3Rpb24gRGVmZXJyZWQoKSB7XG4gIHZhciBfdGhpcyA9IHRoaXM7XG5cbiAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIERlZmVycmVkKTtcblxuICB0aGlzLnByb21pc2UgPSBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgX3RoaXMucmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgX3RoaXMucmVqZWN0ID0gcmVqZWN0O1xuICB9KTtcbn07XG5cbmV4cG9ydCB7IERlZmVycmVkIH07XG52YXIgc3VwcG9ydHNVc2VyVGltaW5nID0gdHlwZW9mIHBlcmZvcm1hbmNlICE9PSAndW5kZWZpbmVkJyAmJiB0eXBlb2YgcGVyZm9ybWFuY2UubWFyayA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcyA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgcGVyZm9ybWFuY2UubWVhc3VyZSA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgcGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyA9PT0gJ2Z1bmN0aW9uJyAmJiB0eXBlb2YgcGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZSA9PT0gJ2Z1bmN0aW9uJztcbmV4cG9ydCBmdW5jdGlvbiBwZXJmb3JtYW5jZUdldEVudHJpZXNCeU5hbWUobWFya05hbWUsIHR5cGUpIHtcbiAgdmFyIG1hcmtzID0gbnVsbDtcblxuICBpZiAoc3VwcG9ydHNVc2VyVGltaW5nKSB7XG4gICAgbWFya3MgPSBwZXJmb3JtYW5jZS5nZXRFbnRyaWVzQnlOYW1lKG1hcmtOYW1lLCB0eXBlKTtcbiAgfVxuXG4gIHJldHVybiBtYXJrcztcbn1cbmV4cG9ydCBmdW5jdGlvbiBwZXJmb3JtYW5jZU1hcmsobWFya05hbWUpIHtcbiAgaWYgKHN1cHBvcnRzVXNlclRpbWluZykge1xuICAgIHBlcmZvcm1hbmNlLm1hcmsobWFya05hbWUpO1xuICB9XG59XG5leHBvcnQgZnVuY3Rpb24gcGVyZm9ybWFuY2VNZWFzdXJlKG1lYXN1cmVOYW1lLCBtYXJrTmFtZSkge1xuICBpZiAoc3VwcG9ydHNVc2VyVGltaW5nICYmIHBlcmZvcm1hbmNlLmdldEVudHJpZXNCeU5hbWUobWFya05hbWUsICdtYXJrJykubGVuZ3RoKSB7XG4gICAgcGVyZm9ybWFuY2UubWVhc3VyZShtZWFzdXJlTmFtZSwgbWFya05hbWUpO1xuICAgIHBlcmZvcm1hbmNlLmNsZWFyTWFya3MobWFya05hbWUpO1xuICAgIHBlcmZvcm1hbmNlLmNsZWFyTWVhc3VyZXMobWVhc3VyZU5hbWUpO1xuICB9XG59XG5leHBvcnQgZnVuY3Rpb24gaXNFbmFibGVTY29wZWRDU1Moc2FuZGJveCkge1xuICBpZiAoX3R5cGVvZihzYW5kYm94KSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAoc2FuZGJveC5zdHJpY3RTdHlsZUlzb2xhdGlvbikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiAhIXNhbmRib3guZXhwZXJpbWVudGFsU3R5bGVJc29sYXRpb247XG59XG4vKipcbiAqIGNvcHkgZnJvbSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy96aC1DTi9kb2NzL1VzaW5nX1hQYXRoXG4gKiBAcGFyYW0gZWxcbiAqIEBwYXJhbSBkb2N1bWVudFxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRYUGF0aEZvckVsZW1lbnQoZWwsIGRvY3VtZW50KSB7XG4gIC8vIG5vdCBzdXBwb3J0IHRoYXQgaWYgZWwgbm90IGV4aXN0ZWQgaW4gZG9jdW1lbnQgeWV0KHN1Y2ggYXMgaXQgbm90IGFwcGVuZCB0byBkb2N1bWVudCBiZWZvcmUgaXQgbW91bnRlZClcbiAgaWYgKCFkb2N1bWVudC5ib2R5LmNvbnRhaW5zKGVsKSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICB2YXIgeHBhdGggPSAnJztcbiAgdmFyIHBvcztcbiAgdmFyIHRtcEVsZTtcbiAgdmFyIGVsZW1lbnQgPSBlbDtcblxuICB3aGlsZSAoZWxlbWVudCAhPT0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSB7XG4gICAgcG9zID0gMDtcbiAgICB0bXBFbGUgPSBlbGVtZW50O1xuXG4gICAgd2hpbGUgKHRtcEVsZSkge1xuICAgICAgaWYgKHRtcEVsZS5ub2RlVHlwZSA9PT0gMSAmJiB0bXBFbGUubm9kZU5hbWUgPT09IGVsZW1lbnQubm9kZU5hbWUpIHtcbiAgICAgICAgLy8gSWYgaXQgaXMgRUxFTUVOVF9OT0RFIG9mIHRoZSBzYW1lIG5hbWVcbiAgICAgICAgcG9zICs9IDE7XG4gICAgICB9XG5cbiAgICAgIHRtcEVsZSA9IHRtcEVsZS5wcmV2aW91c1NpYmxpbmc7XG4gICAgfVxuXG4gICAgeHBhdGggPSBcIipbbmFtZSgpPSdcIi5jb25jYXQoZWxlbWVudC5ub2RlTmFtZSwgXCInIGFuZCBuYW1lc3BhY2UtdXJpKCk9J1wiKS5jb25jYXQoZWxlbWVudC5uYW1lc3BhY2VVUkkgPT09IG51bGwgPyAnJyA6IGVsZW1lbnQubmFtZXNwYWNlVVJJLCBcIiddW1wiKS5jb25jYXQocG9zLCBcIl0vXCIpLmNvbmNhdCh4cGF0aCk7XG4gICAgZWxlbWVudCA9IGVsZW1lbnQucGFyZW50Tm9kZTtcbiAgfVxuXG4gIHhwYXRoID0gXCIvKltuYW1lKCk9J1wiLmNvbmNhdChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubm9kZU5hbWUsIFwiJyBhbmQgbmFtZXNwYWNlLXVyaSgpPSdcIikuY29uY2F0KGVsZW1lbnQubmFtZXNwYWNlVVJJID09PSBudWxsID8gJycgOiBlbGVtZW50Lm5hbWVzcGFjZVVSSSwgXCInXS9cIikuY29uY2F0KHhwYXRoKTtcbiAgeHBhdGggPSB4cGF0aC5yZXBsYWNlKC9cXC8kLywgJycpO1xuICByZXR1cm4geHBhdGg7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29udGFpbmVyKGNvbnRhaW5lcikge1xuICByZXR1cm4gdHlwZW9mIGNvbnRhaW5lciA9PT0gJ3N0cmluZycgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGNvbnRhaW5lcikgOiBjb250YWluZXI7XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/es/utils.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js": /*!******************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js ***! \******************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _arrayLikeToArray; });\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXJyYXlMaWtlVG9BcnJheS5qcy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9xaWFua3VuL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hcnJheUxpa2VUb0FycmF5LmpzP2Q2MjkiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gX2FycmF5TGlrZVRvQXJyYXkoYXJyLCBsZW4pIHtcbiAgaWYgKGxlbiA9PSBudWxsIHx8IGxlbiA+IGFyci5sZW5ndGgpIGxlbiA9IGFyci5sZW5ndGg7XG5cbiAgZm9yICh2YXIgaSA9IDAsIGFycjIgPSBuZXcgQXJyYXkobGVuKTsgaSA8IGxlbjsgaSsrKSB7XG4gICAgYXJyMltpXSA9IGFycltpXTtcbiAgfVxuXG4gIHJldHVybiBhcnIyO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js": /*!*******************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js ***! \*******************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _arrayWithoutHoles; });\n/* harmony import */ var _babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/arrayLikeToArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return Object(_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(arr);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXJyYXlXaXRob3V0SG9sZXMuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXJyYXlXaXRob3V0SG9sZXMuanM/MzdkMiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXJyYXlMaWtlVG9BcnJheSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXJyYXlMaWtlVG9BcnJheVwiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gX2FycmF5V2l0aG91dEhvbGVzKGFycikge1xuICBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSByZXR1cm4gYXJyYXlMaWtlVG9BcnJheShhcnIpO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js": /*!****************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***! \****************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _classCallCheck; });\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY2xhc3NDYWxsQ2hlY2suanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY2xhc3NDYWxsQ2hlY2suanM/YjgzNCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBfY2xhc3NDYWxsQ2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7XG4gIGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcihcIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvblwiKTtcbiAgfVxufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/classCallCheck.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js": /*!*************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js ***! \*************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _createClass; });\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY3JlYXRlQ2xhc3MuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY3JlYXRlQ2xhc3MuanM/ZGViOCJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgZGVzY3JpcHRvciA9IHByb3BzW2ldO1xuICAgIGRlc2NyaXB0b3IuZW51bWVyYWJsZSA9IGRlc2NyaXB0b3IuZW51bWVyYWJsZSB8fCBmYWxzZTtcbiAgICBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7XG4gICAgaWYgKFwidmFsdWVcIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gX2NyZWF0ZUNsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykge1xuICBpZiAocHJvdG9Qcm9wcykgX2RlZmluZVByb3BlcnRpZXMoQ29uc3RydWN0b3IucHJvdG90eXBlLCBwcm90b1Byb3BzKTtcbiAgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpO1xuICByZXR1cm4gQ29uc3RydWN0b3I7XG59Il0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/createClass.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/defineProperty.js": /*!****************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/defineProperty.js ***! \****************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _defineProperty; });\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZGVmaW5lUHJvcGVydHkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vZGVmaW5lUHJvcGVydHkuanM/ZmMzOSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBfZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHZhbHVlKSB7XG4gIGlmIChrZXkgaW4gb2JqKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgd3JpdGFibGU6IHRydWVcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBvYmpba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgcmV0dXJuIG9iajtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/defineProperty.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/iterableToArray.js": /*!*****************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/iterableToArray.js ***! \*****************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _iterableToArray; });\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vaXRlcmFibGVUb0FycmF5LmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2l0ZXJhYmxlVG9BcnJheS5qcz85ZjA5Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF9pdGVyYWJsZVRvQXJyYXkoaXRlcikge1xuICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gXCJ1bmRlZmluZWRcIiAmJiBTeW1ib2wuaXRlcmF0b3IgaW4gT2JqZWN0KGl0ZXIpKSByZXR1cm4gQXJyYXkuZnJvbShpdGVyKTtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/iterableToArray.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js": /*!*******************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js ***! \*******************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _nonIterableSpread; });\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vbm9uSXRlcmFibGVTcHJlYWQuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vbm9uSXRlcmFibGVTcHJlYWQuanM/NmIwOSJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBfbm9uSXRlcmFibGVTcHJlYWQoKSB7XG4gIHRocm93IG5ldyBUeXBlRXJyb3IoXCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuXCIpO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js": /*!*******************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js ***! \*******************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _toConsumableArray; });\n/* harmony import */ var _babel_runtime_helpers_esm_arrayWithoutHoles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/arrayWithoutHoles */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_iterableToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/iterableToArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/iterableToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_unsupportedIterableToArray__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/esm/unsupportedIterableToArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js\");\n/* harmony import */ var _babel_runtime_helpers_esm_nonIterableSpread__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/esm/nonIterableSpread */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js\");\n\n\n\n\nfunction _toConsumableArray(arr) {\n return Object(_babel_runtime_helpers_esm_arrayWithoutHoles__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(arr) || Object(_babel_runtime_helpers_esm_iterableToArray__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(arr) || Object(_babel_runtime_helpers_esm_unsupportedIterableToArray__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(arr) || Object(_babel_runtime_helpers_esm_nonIterableSpread__WEBPACK_IMPORTED_MODULE_3__[\"default\"])();\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXkuanM/ZmI3YiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXJyYXlXaXRob3V0SG9sZXMgZnJvbSBcIkBiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2FycmF5V2l0aG91dEhvbGVzXCI7XG5pbXBvcnQgaXRlcmFibGVUb0FycmF5IGZyb20gXCJAYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9pdGVyYWJsZVRvQXJyYXlcIjtcbmltcG9ydCB1bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXlcIjtcbmltcG9ydCBub25JdGVyYWJsZVNwcmVhZCBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vbm9uSXRlcmFibGVTcHJlYWRcIjtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF90b0NvbnN1bWFibGVBcnJheShhcnIpIHtcbiAgcmV0dXJuIGFycmF5V2l0aG91dEhvbGVzKGFycikgfHwgaXRlcmFibGVUb0FycmF5KGFycikgfHwgdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkoYXJyKSB8fCBub25JdGVyYWJsZVNwcmVhZCgpO1xufSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js": /*!********************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js ***! \********************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _typeof; });\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdHlwZW9mLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3R5cGVvZi5qcz8zMTIzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7XG4gIFwiQGJhYmVsL2hlbHBlcnMgLSB0eXBlb2ZcIjtcblxuICBpZiAodHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIHR5cGVvZiBTeW1ib2wuaXRlcmF0b3IgPT09IFwic3ltYm9sXCIpIHtcbiAgICBfdHlwZW9mID0gZnVuY3Rpb24gX3R5cGVvZihvYmopIHtcbiAgICAgIHJldHVybiB0eXBlb2Ygb2JqO1xuICAgIH07XG4gIH0gZWxzZSB7XG4gICAgX3R5cGVvZiA9IGZ1bmN0aW9uIF90eXBlb2Yob2JqKSB7XG4gICAgICByZXR1cm4gb2JqICYmIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCAmJiBvYmogIT09IFN5bWJvbC5wcm90b3R5cGUgPyBcInN5bWJvbFwiIDogdHlwZW9mIG9iajtcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIF90eXBlb2Yob2JqKTtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/typeof.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js": /*!****************************************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js ***! \****************************************************************************************************/ /*! exports provided: default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _unsupportedIterableToArray; });\n/* harmony import */ var _babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/arrayLikeToArray */ \"./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return Object(_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_babel_runtime_helpers_esm_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(o, minLen);\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkuanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkuanM/ZDE3OCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXJyYXlMaWtlVG9BcnJheSBmcm9tIFwiQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXJyYXlMaWtlVG9BcnJheVwiO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gX3Vuc3VwcG9ydGVkSXRlcmFibGVUb0FycmF5KG8sIG1pbkxlbikge1xuICBpZiAoIW8pIHJldHVybjtcbiAgaWYgKHR5cGVvZiBvID09PSBcInN0cmluZ1wiKSByZXR1cm4gYXJyYXlMaWtlVG9BcnJheShvLCBtaW5MZW4pO1xuICB2YXIgbiA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChvKS5zbGljZSg4LCAtMSk7XG4gIGlmIChuID09PSBcIk9iamVjdFwiICYmIG8uY29uc3RydWN0b3IpIG4gPSBvLmNvbnN0cnVjdG9yLm5hbWU7XG4gIGlmIChuID09PSBcIk1hcFwiIHx8IG4gPT09IFwiU2V0XCIpIHJldHVybiBBcnJheS5mcm9tKG8pO1xuICBpZiAobiA9PT0gXCJBcmd1bWVudHNcIiB8fCAvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKSkgcmV0dXJuIGFycmF5TGlrZVRvQXJyYXkobywgbWluTGVuKTtcbn0iXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js": /*!*******************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js ***! \*******************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("module.exports = __webpack_require__(/*! regenerator-runtime */ \"./node_modules/qiankun/node_modules/regenerator-runtime/runtime.js\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3IvaW5kZXguanMuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvcmVnZW5lcmF0b3IvaW5kZXguanM/MmZkNyJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJyZWdlbmVyYXRvci1ydW50aW1lXCIpO1xuIl0sIm1hcHBpbmdzIjoiQUFBQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/@babel/runtime/regenerator/index.js\n"); /***/ }), /***/ "./node_modules/qiankun/node_modules/regenerator-runtime/runtime.js": /*!**************************************************************************!*\ !*** ./node_modules/qiankun/node_modules/regenerator-runtime/runtime.js ***! \**************************************************************************/ /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { eval("/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n true ? module.exports : undefined\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9ub2RlX21vZHVsZXMvcWlhbmt1bi9ub2RlX21vZHVsZXMvcmVnZW5lcmF0b3ItcnVudGltZS9ydW50aW1lLmpzLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3FpYW5rdW4vbm9kZV9tb2R1bGVzL3JlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZS5qcz83NTMwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE0LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxudmFyIHJ1bnRpbWUgPSAoZnVuY3Rpb24gKGV4cG9ydHMpIHtcbiAgXCJ1c2Ugc3RyaWN0XCI7XG5cbiAgdmFyIE9wID0gT2JqZWN0LnByb3RvdHlwZTtcbiAgdmFyIGhhc093biA9IE9wLmhhc093blByb3BlcnR5O1xuICB2YXIgdW5kZWZpbmVkOyAvLyBNb3JlIGNvbXByZXNzaWJsZSB0aGFuIHZvaWQgMC5cbiAgdmFyICRTeW1ib2wgPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgPyBTeW1ib2wgOiB7fTtcbiAgdmFyIGl0ZXJhdG9yU3ltYm9sID0gJFN5bWJvbC5pdGVyYXRvciB8fCBcIkBAaXRlcmF0b3JcIjtcbiAgdmFyIGFzeW5jSXRlcmF0b3JTeW1ib2wgPSAkU3ltYm9sLmFzeW5jSXRlcmF0b3IgfHwgXCJAQGFzeW5jSXRlcmF0b3JcIjtcbiAgdmFyIHRvU3RyaW5nVGFnU3ltYm9sID0gJFN5bWJvbC50b1N0cmluZ1RhZyB8fCBcIkBAdG9TdHJpbmdUYWdcIjtcblxuICBmdW5jdGlvbiBkZWZpbmUob2JqLCBrZXksIHZhbHVlKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7XG4gICAgICB2YWx1ZTogdmFsdWUsXG4gICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgd3JpdGFibGU6IHRydWVcbiAgICB9KTtcbiAgICByZXR1cm4gb2JqW2tleV07XG4gIH1cbiAgdHJ5IHtcbiAgICAvLyBJRSA4IGhhcyBhIGJyb2tlbiBPYmplY3QuZGVmaW5lUHJvcGVydHkgdGhhdCBvbmx5IHdvcmtzIG9uIERPTSBvYmplY3RzLlxuICAgIGRlZmluZSh7fSwgXCJcIik7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGRlZmluZSA9IGZ1bmN0aW9uKG9iaiwga2V5LCB2YWx1ZSkge1xuICAgICAgcmV0dXJuIG9ialtrZXldID0gdmFsdWU7XG4gICAgfTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBJZiBvdXRlckZuIHByb3ZpZGVkIGFuZCBvdXRlckZuLnByb3RvdHlwZSBpcyBhIEdlbmVyYXRvciwgdGhlbiBvdXRlckZuLnByb3RvdHlwZSBpbnN0YW5jZW9mIEdlbmVyYXRvci5cbiAgICB2YXIgcHJvdG9HZW5lcmF0b3IgPSBvdXRlckZuICYmIG91dGVyRm4ucHJvdG90eXBlIGluc3RhbmNlb2YgR2VuZXJhdG9yID8gb3V0ZXJGbiA6IEdlbmVyYXRvcjtcbiAgICB2YXIgZ2VuZXJhdG9yID0gT2JqZWN0LmNyZWF0ZShwcm90b0dlbmVyYXRvci5wcm90b3R5cGUpO1xuICAgIHZhciBjb250ZXh0ID0gbmV3IENvbnRleHQodHJ5TG9jc0xpc3QgfHwgW10pO1xuXG4gICAgLy8gVGhlIC5faW52b2tlIG1ldGhvZCB1bmlmaWVzIHRoZSBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlIC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcy5cbiAgICBnZW5lcmF0b3IuX2ludm9rZSA9IG1ha2VJbnZva2VNZXRob2QoaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9yO1xuICB9XG4gIGV4cG9ydHMud3JhcCA9IHdyYXA7XG5cbiAgLy8gVHJ5L2NhdGNoIGhlbHBlciB0byBtaW5pbWl6ZSBkZW9wdGltaXphdGlvbnMuIFJldHVybnMgYSBjb21wbGV0aW9uXG4gIC8vIHJlY29yZCBsaWtlIGNvbnRleHQudHJ5RW50cmllc1tpXS5jb21wbGV0aW9uLiBUaGlzIGludGVyZmFjZSBjb3VsZFxuICAvLyBoYXZlIGJlZW4gKGFuZCB3YXMgcHJldmlvdXNseSkgZGVzaWduZWQgdG8gdGFrZSBhIGNsb3N1cmUgdG8gYmVcbiAgLy8gaW52b2tlZCB3aXRob3V0IGFyZ3VtZW50cywgYnV0IGluIGFsbCB0aGUgY2FzZXMgd2UgY2FyZSBhYm91dCB3ZVxuICAvLyBhbHJlYWR5IGhhdmUgYW4gZXhpc3RpbmcgbWV0aG9kIHdlIHdhbnQgdG8gY2FsbCwgc28gdGhlcmUncyBubyBuZWVkXG4gIC8vIHRvIGNyZWF0ZSBhIG5ldyBmdW5jdGlvbiBvYmplY3QuIFdlIGNhbiBldmVuIGdldCBhd2F5IHdpdGggYXNzdW1pbmdcbiAgLy8gdGhlIG1ldGhvZCB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCwgc2luY2UgdGhhdCBoYXBwZW5zIHRvIGJlIHRydWVcbiAgLy8gaW4gZXZlcnkgY2FzZSwgc28gd2UgZG9uJ3QgaGF2ZSB0byB0b3VjaCB0aGUgYXJndW1lbnRzIG9iamVjdC4gVGhlXG4gIC8vIG9ubHkgYWRkaXRpb25hbCBhbGxvY2F0aW9uIHJlcXVpcmVkIGlzIHRoZSBjb21wbGV0aW9uIHJlY29yZCwgd2hpY2hcbiAgLy8gaGFzIGEgc3RhYmxlIHNoYXBlIGFuZCBzbyBob3BlZnVsbHkgc2hvdWxkIGJlIGNoZWFwIHRvIGFsbG9jYXRlLlxuICBmdW5jdGlvbiB0cnlDYXRjaChmbiwgb2JqLCBhcmcpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJub3JtYWxcIiwgYXJnOiBmbi5jYWxsKG9iaiwgYXJnKSB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJ0aHJvd1wiLCBhcmc6IGVyciB9O1xuICAgIH1cbiAgfVxuXG4gIHZhciBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0ID0gXCJzdXNwZW5kZWRTdGFydFwiO1xuICB2YXIgR2VuU3RhdGVTdXNwZW5kZWRZaWVsZCA9IFwic3VzcGVuZGVkWWllbGRcIjtcbiAgdmFyIEdlblN0YXRlRXhlY3V0aW5nID0gXCJleGVjdXRpbmdcIjtcbiAgdmFyIEdlblN0YXRlQ29tcGxldGVkID0gXCJjb21wbGV0ZWRcIjtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBvYmplY3QgZnJvbSB0aGUgaW5uZXJGbiBoYXMgdGhlIHNhbWUgZWZmZWN0IGFzXG4gIC8vIGJyZWFraW5nIG91dCBvZiB0aGUgZGlzcGF0Y2ggc3dpdGNoIHN0YXRlbWVudC5cbiAgdmFyIENvbnRpbnVlU2VudGluZWwgPSB7fTtcblxuICAvLyBEdW1teSBjb25zdHJ1Y3RvciBmdW5jdGlvbnMgdGhhdCB3ZSB1c2UgYXMgdGhlIC5jb25zdHJ1Y3RvciBhbmRcbiAgLy8gLmNvbnN0cnVjdG9yLnByb3RvdHlwZSBwcm9wZXJ0aWVzIGZvciBmdW5jdGlvbnMgdGhhdCByZXR1cm4gR2VuZXJhdG9yXG4gIC8vIG9iamVjdHMuIEZvciBmdWxsIHNwZWMgY29tcGxpYW5jZSwgeW91IG1heSB3aXNoIHRvIGNvbmZpZ3VyZSB5b3VyXG4gIC8vIG1pbmlmaWVyIG5vdCB0byBtYW5nbGUgdGhlIG5hbWVzIG9mIHRoZXNlIHR3byBmdW5jdGlvbnMuXG4gIGZ1bmN0aW9uIEdlbmVyYXRvcigpIHt9XG4gIGZ1bmN0aW9uIEdlbmVyYXRvckZ1bmN0aW9uKCkge31cbiAgZnVuY3Rpb24gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoKSB7fVxuXG4gIC8vIFRoaXMgaXMgYSBwb2x5ZmlsbCBmb3IgJUl0ZXJhdG9yUHJvdG90eXBlJSBmb3IgZW52aXJvbm1lbnRzIHRoYXRcbiAgLy8gZG9uJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC5cbiAgdmFyIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG4gIEl0ZXJhdG9yUHJvdG90eXBlW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgZ2V0UHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Y7XG4gIHZhciBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSA9IGdldFByb3RvICYmIGdldFByb3RvKGdldFByb3RvKHZhbHVlcyhbXSkpKTtcbiAgaWYgKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlICYmXG4gICAgICBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSAhPT0gT3AgJiZcbiAgICAgIGhhc093bi5jYWxsKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlLCBpdGVyYXRvclN5bWJvbCkpIHtcbiAgICAvLyBUaGlzIGVudmlyb25tZW50IGhhcyBhIG5hdGl2ZSAlSXRlcmF0b3JQcm90b3R5cGUlOyB1c2UgaXQgaW5zdGVhZFxuICAgIC8vIG9mIHRoZSBwb2x5ZmlsbC5cbiAgICBJdGVyYXRvclByb3RvdHlwZSA9IE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG5cbiAgdmFyIEdwID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUucHJvdG90eXBlID1cbiAgICBHZW5lcmF0b3IucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShJdGVyYXRvclByb3RvdHlwZSk7XG4gIEdlbmVyYXRvckZ1bmN0aW9uLnByb3RvdHlwZSA9IEdwLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb247XG4gIEdlbmVyYXRvckZ1bmN0aW9uLmRpc3BsYXlOYW1lID0gZGVmaW5lKFxuICAgIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLFxuICAgIHRvU3RyaW5nVGFnU3ltYm9sLFxuICAgIFwiR2VuZXJhdG9yRnVuY3Rpb25cIlxuICApO1xuXG4gIC8vIEhlbHBlciBmb3IgZGVmaW5pbmcgdGhlIC5uZXh0LCAudGhyb3csIGFuZCAucmV0dXJuIG1ldGhvZHMgb2YgdGhlXG4gIC8vIEl0ZXJhdG9yIGludGVyZmFjZSBpbiB0ZXJtcyBvZiBhIHNpbmdsZSAuX2ludm9rZSBtZXRob2QuXG4gIGZ1bmN0aW9uIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhwcm90b3R5cGUpIHtcbiAgICBbXCJuZXh0XCIsIFwidGhyb3dcIiwgXCJyZXR1cm5cIl0uZm9yRWFjaChmdW5jdGlvbihtZXRob2QpIHtcbiAgICAgIGRlZmluZShwcm90b3R5cGUsIG1ldGhvZCwgZnVuY3Rpb24oYXJnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnZva2UobWV0aG9kLCBhcmcpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRzLmlzR2VuZXJhdG9yRnVuY3Rpb24gPSBmdW5jdGlvbihnZW5GdW4pIHtcbiAgICB2YXIgY3RvciA9IHR5cGVvZiBnZW5GdW4gPT09IFwiZnVuY3Rpb25cIiAmJiBnZW5GdW4uY29uc3RydWN0b3I7XG4gICAgcmV0dXJuIGN0b3JcbiAgICAgID8gY3RvciA9PT0gR2VuZXJhdG9yRnVuY3Rpb24gfHxcbiAgICAgICAgLy8gRm9yIHRoZSBuYXRpdmUgR2VuZXJhdG9yRnVuY3Rpb24gY29uc3RydWN0b3IsIHRoZSBiZXN0IHdlIGNhblxuICAgICAgICAvLyBkbyBpcyB0byBjaGVjayBpdHMgLm5hbWUgcHJvcGVydHkuXG4gICAgICAgIChjdG9yLmRpc3BsYXlOYW1lIHx8IGN0b3IubmFtZSkgPT09IFwiR2VuZXJhdG9yRnVuY3Rpb25cIlxuICAgICAgOiBmYWxzZTtcbiAgfTtcblxuICBleHBvcnRzLm1hcmsgPSBmdW5jdGlvbihnZW5GdW4pIHtcbiAgICBpZiAoT2JqZWN0LnNldFByb3RvdHlwZU9mKSB7XG4gICAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YoZ2VuRnVuLCBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGdlbkZ1bi5fX3Byb3RvX18gPSBHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZTtcbiAgICAgIGRlZmluZShnZW5GdW4sIHRvU3RyaW5nVGFnU3ltYm9sLCBcIkdlbmVyYXRvckZ1bmN0aW9uXCIpO1xuICAgIH1cbiAgICBnZW5GdW4ucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShHcCk7XG4gICAgcmV0dXJuIGdlbkZ1bjtcbiAgfTtcblxuICAvLyBXaXRoaW4gdGhlIGJvZHkgb2YgYW55IGFzeW5jIGZ1bmN0aW9uLCBgYXdhaXQgeGAgaXMgdHJhbnNmb3JtZWQgdG9cbiAgLy8gYHlpZWxkIHJlZ2VuZXJhdG9yUnVudGltZS5hd3JhcCh4KWAsIHNvIHRoYXQgdGhlIHJ1bnRpbWUgY2FuIHRlc3RcbiAgLy8gYGhhc093bi5jYWxsKHZhbHVlLCBcIl9fYXdhaXRcIilgIHRvIGRldGVybWluZSBpZiB0aGUgeWllbGRlZCB2YWx1ZSBpc1xuICAvLyBtZWFudCB0byBiZSBhd2FpdGVkLlxuICBleHBvcnRzLmF3cmFwID0gZnVuY3Rpb24oYXJnKSB7XG4gICAgcmV0dXJuIHsgX19hd2FpdDogYXJnIH07XG4gIH07XG5cbiAgZnVuY3Rpb24gQXN5bmNJdGVyYXRvcihnZW5lcmF0b3IsIFByb21pc2VJbXBsKSB7XG4gICAgZnVuY3Rpb24gaW52b2tlKG1ldGhvZCwgYXJnLCByZXNvbHZlLCByZWplY3QpIHtcbiAgICAgIHZhciByZWNvcmQgPSB0cnlDYXRjaChnZW5lcmF0b3JbbWV0aG9kXSwgZ2VuZXJhdG9yLCBhcmcpO1xuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgcmVqZWN0KHJlY29yZC5hcmcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdmFyIHJlc3VsdCA9IHJlY29yZC5hcmc7XG4gICAgICAgIHZhciB2YWx1ZSA9IHJlc3VsdC52YWx1ZTtcbiAgICAgICAgaWYgKHZhbHVlICYmXG4gICAgICAgICAgICB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIgJiZcbiAgICAgICAgICAgIGhhc093bi5jYWxsKHZhbHVlLCBcIl9fYXdhaXRcIikpIHtcbiAgICAgICAgICByZXR1cm4gUHJvbWlzZUltcGwucmVzb2x2ZSh2YWx1ZS5fX2F3YWl0KS50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7XG4gICAgICAgICAgICBpbnZva2UoXCJuZXh0XCIsIHZhbHVlLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikge1xuICAgICAgICAgICAgaW52b2tlKFwidGhyb3dcIiwgZXJyLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFByb21pc2VJbXBsLnJlc29sdmUodmFsdWUpLnRoZW4oZnVuY3Rpb24odW53cmFwcGVkKSB7XG4gICAgICAgICAgLy8gV2hlbiBhIHlpZWxkZWQgUHJvbWlzZSBpcyByZXNvbHZlZCwgaXRzIGZpbmFsIHZhbHVlIGJlY29tZXNcbiAgICAgICAgICAvLyB0aGUgLnZhbHVlIG9mIHRoZSBQcm9taXNlPHt2YWx1ZSxkb25lfT4gcmVzdWx0IGZvciB0aGVcbiAgICAgICAgICAvLyBjdXJyZW50IGl0ZXJhdGlvbi5cbiAgICAgICAgICByZXN1bHQudmFsdWUgPSB1bndyYXBwZWQ7XG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgICB9LCBmdW5jdGlvbihlcnJvcikge1xuICAgICAgICAgIC8vIElmIGEgcmVqZWN0ZWQgUHJvbWlzZSB3YXMgeWllbGRlZCwgdGhyb3cgdGhlIHJlamVjdGlvbiBiYWNrXG4gICAgICAgICAgLy8gaW50byB0aGUgYXN5bmMgZ2VuZXJhdG9yIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSBoYW5kbGVkIHRoZXJlLlxuICAgICAgICAgIHJldHVybiBpbnZva2UoXCJ0aHJvd1wiLCBlcnJvciwgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIHByZXZpb3VzUHJvbWlzZTtcblxuICAgIGZ1bmN0aW9uIGVucXVldWUobWV0aG9kLCBhcmcpIHtcbiAgICAgIGZ1bmN0aW9uIGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2VJbXBsKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICAgIGludm9rZShtZXRob2QsIGFyZywgcmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwcmV2aW91c1Byb21pc2UgPVxuICAgICAgICAvLyBJZiBlbnF1ZXVlIGhhcyBiZWVuIGNhbGxlZCBiZWZvcmUsIHRoZW4gd2Ugd2FudCB0byB3YWl0IHVudGlsXG4gICAgICAgIC8vIGFsbCBwcmV2aW91cyBQcm9taXNlcyBoYXZlIGJlZW4gcmVzb2x2ZWQgYmVmb3JlIGNhbGxpbmcgaW52b2tlLFxuICAgICAgICAvLyBzbyB0aGF0IHJlc3VsdHMgYXJlIGFsd2F5cyBkZWxpdmVyZWQgaW4gdGhlIGNvcnJlY3Qgb3JkZXIuIElmXG4gICAgICAgIC8vIGVucXVldWUgaGFzIG5vdCBiZWVuIGNhbGxlZCBiZWZvcmUsIHRoZW4gaXQgaXMgaW1wb3J0YW50IHRvXG4gICAgICAgIC8vIGNhbGwgaW52b2tlIGltbWVkaWF0ZWx5LCB3aXRob3V0IHdhaXRpbmcgb24gYSBjYWxsYmFjayB0byBmaXJlLFxuICAgICAgICAvLyBzbyB0aGF0IHRoZSBhc3luYyBnZW5lcmF0b3IgZnVuY3Rpb24gaGFzIHRoZSBvcHBvcnR1bml0eSB0byBkb1xuICAgICAgICAvLyBhbnkgbmVjZXNzYXJ5IHNldHVwIGluIGEgcHJlZGljdGFibGUgd2F5LiBUaGlzIHByZWRpY3RhYmlsaXR5XG4gICAgICAgIC8vIGlzIHdoeSB0aGUgUHJvbWlzZSBjb25zdHJ1Y3RvciBzeW5jaHJvbm91c2x5IGludm9rZXMgaXRzXG4gICAgICAgIC8vIGV4ZWN1dG9yIGNhbGxiYWNrLCBhbmQgd2h5IGFzeW5jIGZ1bmN0aW9ucyBzeW5jaHJvbm91c2x5XG4gICAgICAgIC8vIGV4ZWN1dGUgY29kZSBiZWZvcmUgdGhlIGZpcnN0IGF3YWl0LiBTaW5jZSB3ZSBpbXBsZW1lbnQgc2ltcGxlXG4gICAgICAgIC8vIGFzeW5jIGZ1bmN0aW9ucyBpbiB0ZXJtcyBvZiBhc3luYyBnZW5lcmF0b3JzLCBpdCBpcyBlc3BlY2lhbGx5XG4gICAgICAgIC8vIGltcG9ydGFudCB0byBnZXQgdGhpcyByaWdodCwgZXZlbiB0aG91Z2ggaXQgcmVxdWlyZXMgY2FyZS5cbiAgICAgICAgcHJldmlvdXNQcm9taXNlID8gcHJldmlvdXNQcm9taXNlLnRoZW4oXG4gICAgICAgICAgY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcsXG4gICAgICAgICAgLy8gQXZvaWQgcHJvcGFnYXRpbmcgZmFpbHVyZXMgdG8gUHJvbWlzZXMgcmV0dXJuZWQgYnkgbGF0ZXJcbiAgICAgICAgICAvLyBpbnZvY2F0aW9ucyBvZiB0aGUgaXRlcmF0b3IuXG4gICAgICAgICAgY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmdcbiAgICAgICAgKSA6IGNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnKCk7XG4gICAgfVxuXG4gICAgLy8gRGVmaW5lIHRoZSB1bmlmaWVkIGhlbHBlciBtZXRob2QgdGhhdCBpcyB1c2VkIHRvIGltcGxlbWVudCAubmV4dCxcbiAgICAvLyAudGhyb3csIGFuZCAucmV0dXJuIChzZWUgZGVmaW5lSXRlcmF0b3JNZXRob2RzKS5cbiAgICB0aGlzLl9pbnZva2UgPSBlbnF1ZXVlO1xuICB9XG5cbiAgZGVmaW5lSXRlcmF0b3JNZXRob2RzKEFzeW5jSXRlcmF0b3IucHJvdG90eXBlKTtcbiAgQXN5bmNJdGVyYXRvci5wcm90b3R5cGVbYXN5bmNJdGVyYXRvclN5bWJvbF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG4gIGV4cG9ydHMuQXN5bmNJdGVyYXRvciA9IEFzeW5jSXRlcmF0b3I7XG5cbiAgLy8gTm90ZSB0aGF0IHNpbXBsZSBhc3luYyBmdW5jdGlvbnMgYXJlIGltcGxlbWVudGVkIG9uIHRvcCBvZlxuICAvLyBBc3luY0l0ZXJhdG9yIG9iamVjdHM7IHRoZXkganVzdCByZXR1cm4gYSBQcm9taXNlIGZvciB0aGUgdmFsdWUgb2ZcbiAgLy8gdGhlIGZpbmFsIHJlc3VsdCBwcm9kdWNlZCBieSB0aGUgaXRlcmF0b3IuXG4gIGV4cG9ydHMuYXN5bmMgPSBmdW5jdGlvbihpbm5lckZuLCBvdXRlckZuLCBzZWxmLCB0cnlMb2NzTGlzdCwgUHJvbWlzZUltcGwpIHtcbiAgICBpZiAoUHJvbWlzZUltcGwgPT09IHZvaWQgMCkgUHJvbWlzZUltcGwgPSBQcm9taXNlO1xuXG4gICAgdmFyIGl0ZXIgPSBuZXcgQXN5bmNJdGVyYXRvcihcbiAgICAgIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpLFxuICAgICAgUHJvbWlzZUltcGxcbiAgICApO1xuXG4gICAgcmV0dXJuIGV4cG9ydHMuaXNHZW5lcmF0b3JGdW5jdGlvbihvdXRlckZuKVxuICAgICAgPyBpdGVyIC8vIElmIG91dGVyRm4gaXMgYSBnZW5lcmF0b3IsIHJldHVybiB0aGUgZnVsbCBpdGVyYXRvci5cbiAgICAgIDogaXRlci5uZXh0KCkudGhlbihmdW5jdGlvbihyZXN1bHQpIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0LmRvbmUgPyByZXN1bHQudmFsdWUgOiBpdGVyLm5leHQoKTtcbiAgICAgICAgfSk7XG4gIH07XG5cbiAgZnVuY3Rpb24gbWFrZUludm9rZU1ldGhvZChpbm5lckZuLCBzZWxmLCBjb250ZXh0KSB7XG4gICAgdmFyIHN0YXRlID0gR2VuU3RhdGVTdXNwZW5kZWRTdGFydDtcblxuICAgIHJldHVybiBmdW5jdGlvbiBpbnZva2UobWV0aG9kLCBhcmcpIHtcbiAgICAgIGlmIChzdGF0ZSA9PT0gR2VuU3RhdGVFeGVjdXRpbmcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgcnVubmluZ1wiKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZUNvbXBsZXRlZCkge1xuICAgICAgICBpZiAobWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICB0aHJvdyBhcmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBCZSBmb3JnaXZpbmcsIHBlciAyNS4zLjMuMy4zIG9mIHRoZSBzcGVjOlxuICAgICAgICAvLyBodHRwczovL3Blb3BsZS5tb3ppbGxhLm9yZy9+am9yZW5kb3JmZi9lczYtZHJhZnQuaHRtbCNzZWMtZ2VuZXJhdG9ycmVzdW1lXG4gICAgICAgIHJldHVybiBkb25lUmVzdWx0KCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRleHQubWV0aG9kID0gbWV0aG9kO1xuICAgICAgY29udGV4dC5hcmcgPSBhcmc7XG5cbiAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIHZhciBkZWxlZ2F0ZSA9IGNvbnRleHQuZGVsZWdhdGU7XG4gICAgICAgIGlmIChkZWxlZ2F0ZSkge1xuICAgICAgICAgIHZhciBkZWxlZ2F0ZVJlc3VsdCA9IG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpO1xuICAgICAgICAgIGlmIChkZWxlZ2F0ZVJlc3VsdCkge1xuICAgICAgICAgICAgaWYgKGRlbGVnYXRlUmVzdWx0ID09PSBDb250aW51ZVNlbnRpbmVsKSBjb250aW51ZTtcbiAgICAgICAgICAgIHJldHVybiBkZWxlZ2F0ZVJlc3VsdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY29udGV4dC5tZXRob2QgPT09IFwibmV4dFwiKSB7XG4gICAgICAgICAgLy8gU2V0dGluZyBjb250ZXh0Ll9zZW50IGZvciBsZWdhY3kgc3VwcG9ydCBvZiBCYWJlbCdzXG4gICAgICAgICAgLy8gZnVuY3Rpb24uc2VudCBpbXBsZW1lbnRhdGlvbi5cbiAgICAgICAgICBjb250ZXh0LnNlbnQgPSBjb250ZXh0Ll9zZW50ID0gY29udGV4dC5hcmc7XG5cbiAgICAgICAgfSBlbHNlIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0KSB7XG4gICAgICAgICAgICBzdGF0ZSA9IEdlblN0YXRlQ29tcGxldGVkO1xuICAgICAgICAgICAgdGhyb3cgY29udGV4dC5hcmc7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29udGV4dC5kaXNwYXRjaEV4Y2VwdGlvbihjb250ZXh0LmFyZyk7XG5cbiAgICAgICAgfSBlbHNlIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJyZXR1cm5cIikge1xuICAgICAgICAgIGNvbnRleHQuYWJydXB0KFwicmV0dXJuXCIsIGNvbnRleHQuYXJnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRlID0gR2VuU3RhdGVFeGVjdXRpbmc7XG5cbiAgICAgICAgdmFyIHJlY29yZCA9IHRyeUNhdGNoKGlubmVyRm4sIHNlbGYsIGNvbnRleHQpO1xuICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwibm9ybWFsXCIpIHtcbiAgICAgICAgICAvLyBJZiBhbiBleGNlcHRpb24gaXMgdGhyb3duIGZyb20gaW5uZXJGbiwgd2UgbGVhdmUgc3RhdGUgPT09XG4gICAgICAgICAgLy8gR2VuU3RhdGVFeGVjdXRpbmcgYW5kIGxvb3AgYmFjayBmb3IgYW5vdGhlciBpbnZvY2F0aW9uLlxuICAgICAgICAgIHN0YXRlID0gY29udGV4dC5kb25lXG4gICAgICAgICAgICA/IEdlblN0YXRlQ29tcGxldGVkXG4gICAgICAgICAgICA6IEdlblN0YXRlU3VzcGVuZGVkWWllbGQ7XG5cbiAgICAgICAgICBpZiAocmVjb3JkLmFyZyA9PT0gQ29udGludWVTZW50aW5lbCkge1xuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHZhbHVlOiByZWNvcmQuYXJnLFxuICAgICAgICAgICAgZG9uZTogY29udGV4dC5kb25lXG4gICAgICAgICAgfTtcblxuICAgICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICBzdGF0ZSA9IEdlblN0YXRlQ29tcGxldGVkO1xuICAgICAgICAgIC8vIERpc3BhdGNoIHRoZSBleGNlcHRpb24gYnkgbG9vcGluZyBiYWNrIGFyb3VuZCB0byB0aGVcbiAgICAgICAgICAvLyBjb250ZXh0LmRpc3BhdGNoRXhjZXB0aW9uKGNvbnRleHQuYXJnKSBjYWxsIGFib3ZlLlxuICAgICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvLyBDYWxsIGRlbGVnYXRlLml0ZXJhdG9yW2NvbnRleHQubWV0aG9kXShjb250ZXh0LmFyZykgYW5kIGhhbmRsZSB0aGVcbiAgLy8gcmVzdWx0LCBlaXRoZXIgYnkgcmV0dXJuaW5nIGEgeyB2YWx1ZSwgZG9uZSB9IHJlc3VsdCBmcm9tIHRoZVxuICAvLyBkZWxlZ2F0ZSBpdGVyYXRvciwgb3IgYnkgbW9kaWZ5aW5nIGNvbnRleHQubWV0aG9kIGFuZCBjb250ZXh0LmFyZyxcbiAgLy8gc2V0dGluZyBjb250ZXh0LmRlbGVnYXRlIHRvIG51bGwsIGFuZCByZXR1cm5pbmcgdGhlIENvbnRpbnVlU2VudGluZWwuXG4gIGZ1bmN0aW9uIG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpIHtcbiAgICB2YXIgbWV0aG9kID0gZGVsZWdhdGUuaXRlcmF0b3JbY29udGV4dC5tZXRob2RdO1xuICAgIGlmIChtZXRob2QgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gQSAudGhyb3cgb3IgLnJldHVybiB3aGVuIHRoZSBkZWxlZ2F0ZSBpdGVyYXRvciBoYXMgbm8gLnRocm93XG4gICAgICAvLyBtZXRob2QgYWx3YXlzIHRlcm1pbmF0ZXMgdGhlIHlpZWxkKiBsb29wLlxuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG5cbiAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgIC8vIE5vdGU6IFtcInJldHVyblwiXSBtdXN0IGJlIHVzZWQgZm9yIEVTMyBwYXJzaW5nIGNvbXBhdGliaWxpdHkuXG4gICAgICAgIGlmIChkZWxlZ2F0ZS5pdGVyYXRvcltcInJldHVyblwiXSkge1xuICAgICAgICAgIC8vIElmIHRoZSBkZWxlZ2F0ZSBpdGVyYXRvciBoYXMgYSByZXR1cm4gbWV0aG9kLCBnaXZlIGl0IGFcbiAgICAgICAgICAvLyBjaGFuY2UgdG8gY2xlYW4gdXAuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInJldHVyblwiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gdW5kZWZpbmVkO1xuICAgICAgICAgIG1heWJlSW52b2tlRGVsZWdhdGUoZGVsZWdhdGUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICAgIC8vIElmIG1heWJlSW52b2tlRGVsZWdhdGUoY29udGV4dCkgY2hhbmdlZCBjb250ZXh0Lm1ldGhvZCBmcm9tXG4gICAgICAgICAgICAvLyBcInJldHVyblwiIHRvIFwidGhyb3dcIiwgbGV0IHRoYXQgb3ZlcnJpZGUgdGhlIFR5cGVFcnJvciBiZWxvdy5cbiAgICAgICAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgICBjb250ZXh0LmFyZyA9IG5ldyBUeXBlRXJyb3IoXG4gICAgICAgICAgXCJUaGUgaXRlcmF0b3IgZG9lcyBub3QgcHJvdmlkZSBhICd0aHJvdycgbWV0aG9kXCIpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICB2YXIgcmVjb3JkID0gdHJ5Q2F0Y2gobWV0aG9kLCBkZWxlZ2F0ZS5pdGVyYXRvciwgY29udGV4dC5hcmcpO1xuXG4gICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgY29udGV4dC5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICB2YXIgaW5mbyA9IHJlY29yZC5hcmc7XG5cbiAgICBpZiAoISBpbmZvKSB7XG4gICAgICBjb250ZXh0Lm1ldGhvZCA9IFwidGhyb3dcIjtcbiAgICAgIGNvbnRleHQuYXJnID0gbmV3IFR5cGVFcnJvcihcIml0ZXJhdG9yIHJlc3VsdCBpcyBub3QgYW4gb2JqZWN0XCIpO1xuICAgICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9XG5cbiAgICBpZiAoaW5mby5kb25lKSB7XG4gICAgICAvLyBBc3NpZ24gdGhlIHJlc3VsdCBvZiB0aGUgZmluaXNoZWQgZGVsZWdhdGUgdG8gdGhlIHRlbXBvcmFyeVxuICAgICAgLy8gdmFyaWFibGUgc3BlY2lmaWVkIGJ5IGRlbGVnYXRlLnJlc3VsdE5hbWUgKHNlZSBkZWxlZ2F0ZVlpZWxkKS5cbiAgICAgIGNvbnRleHRbZGVsZWdhdGUucmVzdWx0TmFtZV0gPSBpbmZvLnZhbHVlO1xuXG4gICAgICAvLyBSZXN1bWUgZXhlY3V0aW9uIGF0IHRoZSBkZXNpcmVkIGxvY2F0aW9uIChzZWUgZGVsZWdhdGVZaWVsZCkuXG4gICAgICBjb250ZXh0Lm5leHQgPSBkZWxlZ2F0ZS5uZXh0TG9jO1xuXG4gICAgICAvLyBJZiBjb250ZXh0Lm1ldGhvZCB3YXMgXCJ0aHJvd1wiIGJ1dCB0aGUgZGVsZWdhdGUgaGFuZGxlZCB0aGVcbiAgICAgIC8vIGV4Y2VwdGlvbiwgbGV0IHRoZSBvdXRlciBnZW5lcmF0b3IgcHJvY2VlZCBub3JtYWxseS4gSWZcbiAgICAgIC8vIGNvbnRleHQubWV0aG9kIHdhcyBcIm5leHRcIiwgZm9yZ2V0IGNvbnRleHQuYXJnIHNpbmNlIGl0IGhhcyBiZWVuXG4gICAgICAvLyBcImNvbnN1bWVkXCIgYnkgdGhlIGRlbGVnYXRlIGl0ZXJhdG9yLiBJZiBjb250ZXh0Lm1ldGhvZCB3YXNcbiAgICAgIC8vIFwicmV0dXJuXCIsIGFsbG93IHRoZSBvcmlnaW5hbCAucmV0dXJuIGNhbGwgdG8gY29udGludWUgaW4gdGhlXG4gICAgICAvLyBvdXRlciBnZW5lcmF0b3IuXG4gICAgICBpZiAoY29udGV4dC5tZXRob2QgIT09IFwicmV0dXJuXCIpIHtcbiAgICAgICAgY29udGV4dC5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgY29udGV4dC5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUmUteWllbGQgdGhlIHJlc3VsdCByZXR1cm5lZCBieSB0aGUgZGVsZWdhdGUgbWV0aG9kLlxuICAgICAgcmV0dXJuIGluZm87XG4gICAgfVxuXG4gICAgLy8gVGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGlzIGZpbmlzaGVkLCBzbyBmb3JnZXQgaXQgYW5kIGNvbnRpbnVlIHdpdGhcbiAgICAvLyB0aGUgb3V0ZXIgZ2VuZXJhdG9yLlxuICAgIGNvbnRleHQuZGVsZWdhdGUgPSBudWxsO1xuICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICB9XG5cbiAgLy8gRGVmaW5lIEdlbmVyYXRvci5wcm90b3R5cGUue25leHQsdGhyb3cscmV0dXJufSBpbiB0ZXJtcyBvZiB0aGVcbiAgLy8gdW5pZmllZCAuX2ludm9rZSBoZWxwZXIgbWV0aG9kLlxuICBkZWZpbmVJdGVyYXRvck1ldGhvZHMoR3ApO1xuXG4gIGRlZmluZShHcCwgdG9TdHJpbmdUYWdTeW1ib2wsIFwiR2VuZXJhdG9yXCIpO1xuXG4gIC8vIEEgR2VuZXJhdG9yIHNob3VsZCBhbHdheXMgcmV0dXJuIGl0c2VsZiBhcyB0aGUgaXRlcmF0b3Igb2JqZWN0IHdoZW4gdGhlXG4gIC8vIEBAaXRlcmF0b3IgZnVuY3Rpb24gaXMgY2FsbGVkIG9uIGl0LiBTb21lIGJyb3dzZXJzJyBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlXG4gIC8vIGl0ZXJhdG9yIHByb3RvdHlwZSBjaGFpbiBpbmNvcnJlY3RseSBpbXBsZW1lbnQgdGhpcywgY2F1c2luZyB0aGUgR2VuZXJhdG9yXG4gIC8vIG9iamVjdCB0byBub3QgYmUgcmV0dXJuZWQgZnJvbSB0aGlzIGNhbGwuIFRoaXMgZW5zdXJlcyB0aGF0IGRvZXNuJ3QgaGFwcGVuLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlZ2VuZXJhdG9yL2lzc3Vlcy8yNzQgZm9yIG1vcmUgZGV0YWlscy5cbiAgR3BbaXRlcmF0b3JTeW1ib2xdID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG5cbiAgR3AudG9TdHJpbmcgPSBmdW5jdGlvbigpIHtcbiAgICByZXR1cm4gXCJbb2JqZWN0IEdlbmVyYXRvcl1cIjtcbiAgfTtcblxuICBmdW5jdGlvbiBwdXNoVHJ5RW50cnkobG9jcykge1xuICAgIHZhciBlbnRyeSA9IHsgdHJ5TG9jOiBsb2NzWzBdIH07XG5cbiAgICBpZiAoMSBpbiBsb2NzKSB7XG4gICAgICBlbnRyeS5jYXRjaExvYyA9IGxvY3NbMV07XG4gICAgfVxuXG4gICAgaWYgKDIgaW4gbG9jcykge1xuICAgICAgZW50cnkuZmluYWxseUxvYyA9IGxvY3NbMl07XG4gICAgICBlbnRyeS5hZnRlckxvYyA9IGxvY3NbM107XG4gICAgfVxuXG4gICAgdGhpcy50cnlFbnRyaWVzLnB1c2goZW50cnkpO1xuICB9XG5cbiAgZnVuY3Rpb24gcmVzZXRUcnlFbnRyeShlbnRyeSkge1xuICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uIHx8IHt9O1xuICAgIHJlY29yZC50eXBlID0gXCJub3JtYWxcIjtcbiAgICBkZWxldGUgcmVjb3JkLmFyZztcbiAgICBlbnRyeS5jb21wbGV0aW9uID0gcmVjb3JkO1xuICB9XG5cbiAgZnVuY3Rpb24gQ29udGV4dCh0cnlMb2NzTGlzdCkge1xuICAgIC8vIFRoZSByb290IGVudHJ5IG9iamVjdCAoZWZmZWN0aXZlbHkgYSB0cnkgc3RhdGVtZW50IHdpdGhvdXQgYSBjYXRjaFxuICAgIC8vIG9yIGEgZmluYWxseSBibG9jaykgZ2l2ZXMgdXMgYSBwbGFjZSB0byBzdG9yZSB2YWx1ZXMgdGhyb3duIGZyb21cbiAgICAvLyBsb2NhdGlvbnMgd2hlcmUgdGhlcmUgaXMgbm8gZW5jbG9zaW5nIHRyeSBzdGF0ZW1lbnQuXG4gICAgdGhpcy50cnlFbnRyaWVzID0gW3sgdHJ5TG9jOiBcInJvb3RcIiB9XTtcbiAgICB0cnlMb2NzTGlzdC5mb3JFYWNoKHB1c2hUcnlFbnRyeSwgdGhpcyk7XG4gICAgdGhpcy5yZXNldCh0cnVlKTtcbiAgfVxuXG4gIGV4cG9ydHMua2V5cyA9IGZ1bmN0aW9uKG9iamVjdCkge1xuICAgIHZhciBrZXlzID0gW107XG4gICAgZm9yICh2YXIga2V5IGluIG9iamVjdCkge1xuICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgfVxuICAgIGtleXMucmV2ZXJzZSgpO1xuXG4gICAgLy8gUmF0aGVyIHRoYW4gcmV0dXJuaW5nIGFuIG9iamVjdCB3aXRoIGEgbmV4dCBtZXRob2QsIHdlIGtlZXBcbiAgICAvLyB0aGluZ3Mgc2ltcGxlIGFuZCByZXR1cm4gdGhlIG5leHQgZnVuY3Rpb24gaXRzZWxmLlxuICAgIHJldHVybiBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgd2hpbGUgKGtleXMubGVuZ3RoKSB7XG4gICAgICAgIHZhciBrZXkgPSBrZXlzLnBvcCgpO1xuICAgICAgICBpZiAoa2V5IGluIG9iamVjdCkge1xuICAgICAgICAgIG5leHQudmFsdWUgPSBrZXk7XG4gICAgICAgICAgbmV4dC5kb25lID0gZmFsc2U7XG4gICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVG8gYXZvaWQgY3JlYXRpbmcgYW4gYWRkaXRpb25hbCBvYmplY3QsIHdlIGp1c3QgaGFuZyB0aGUgLnZhbHVlXG4gICAgICAvLyBhbmQgLmRvbmUgcHJvcGVydGllcyBvZmYgdGhlIG5leHQgZnVuY3Rpb24gb2JqZWN0IGl0c2VsZi4gVGhpc1xuICAgICAgLy8gYWxzbyBlbnN1cmVzIHRoYXQgdGhlIG1pbmlmaWVyIHdpbGwgbm90IGFub255bWl6ZSB0aGUgZnVuY3Rpb24uXG4gICAgICBuZXh0LmRvbmUgPSB0cnVlO1xuICAgICAgcmV0dXJuIG5leHQ7XG4gICAgfTtcbiAgfTtcblxuICBmdW5jdGlvbiB2YWx1ZXMoaXRlcmFibGUpIHtcbiAgICBpZiAoaXRlcmFibGUpIHtcbiAgICAgIHZhciBpdGVyYXRvck1ldGhvZCA9IGl0ZXJhYmxlW2l0ZXJhdG9yU3ltYm9sXTtcbiAgICAgIGlmIChpdGVyYXRvck1ldGhvZCkge1xuICAgICAgICByZXR1cm4gaXRlcmF0b3JNZXRob2QuY2FsbChpdGVyYWJsZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlb2YgaXRlcmFibGUubmV4dCA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgIHJldHVybiBpdGVyYWJsZTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFpc05hTihpdGVyYWJsZS5sZW5ndGgpKSB7XG4gICAgICAgIHZhciBpID0gLTEsIG5leHQgPSBmdW5jdGlvbiBuZXh0KCkge1xuICAgICAgICAgIHdoaWxlICgrK2kgPCBpdGVyYWJsZS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmIChoYXNPd24uY2FsbChpdGVyYWJsZSwgaSkpIHtcbiAgICAgICAgICAgICAgbmV4dC52YWx1ZSA9IGl0ZXJhYmxlW2ldO1xuICAgICAgICAgICAgICBuZXh0LmRvbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbmV4dC52YWx1ZSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICBuZXh0LmRvbmUgPSB0cnVlO1xuXG4gICAgICAgICAgcmV0dXJuIG5leHQ7XG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIG5leHQubmV4dCA9IG5leHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmV0dXJuIGFuIGl0ZXJhdG9yIHdpdGggbm8gdmFsdWVzLlxuICAgIHJldHVybiB7IG5leHQ6IGRvbmVSZXN1bHQgfTtcbiAgfVxuICBleHBvcnRzLnZhbHVlcyA9IHZhbHVlcztcblxuICBmdW5jdGlvbiBkb25lUmVzdWx0KCkge1xuICAgIHJldHVybiB7IHZhbHVlOiB1bmRlZmluZWQsIGRvbmU6IHRydWUgfTtcbiAgfVxuXG4gIENvbnRleHQucHJvdG90eXBlID0ge1xuICAgIGNvbnN0cnVjdG9yOiBDb250ZXh0LFxuXG4gICAgcmVzZXQ6IGZ1bmN0aW9uKHNraXBUZW1wUmVzZXQpIHtcbiAgICAgIHRoaXMucHJldiA9IDA7XG4gICAgICB0aGlzLm5leHQgPSAwO1xuICAgICAgLy8gUmVzZXR0aW5nIGNvbnRleHQuX3NlbnQgZm9yIGxlZ2FjeSBzdXBwb3J0IG9mIEJhYmVsJ3NcbiAgICAgIC8vIGZ1bmN0aW9uLnNlbnQgaW1wbGVtZW50YXRpb24uXG4gICAgICB0aGlzLnNlbnQgPSB0aGlzLl9zZW50ID0gdW5kZWZpbmVkO1xuICAgICAgdGhpcy5kb25lID0gZmFsc2U7XG4gICAgICB0aGlzLmRlbGVnYXRlID0gbnVsbDtcblxuICAgICAgdGhpcy5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgIHRoaXMuYXJnID0gdW5kZWZpbmVkO1xuXG4gICAgICB0aGlzLnRyeUVudHJpZXMuZm9yRWFjaChyZXNldFRyeUVudHJ5KTtcblxuICAgICAgaWYgKCFza2lwVGVtcFJlc2V0KSB7XG4gICAgICAgIGZvciAodmFyIG5hbWUgaW4gdGhpcykge1xuICAgICAgICAgIC8vIE5vdCBzdXJlIGFib3V0IHRoZSBvcHRpbWFsIG9yZGVyIG9mIHRoZXNlIGNvbmRpdGlvbnM6XG4gICAgICAgICAgaWYgKG5hbWUuY2hhckF0KDApID09PSBcInRcIiAmJlxuICAgICAgICAgICAgICBoYXNPd24uY2FsbCh0aGlzLCBuYW1lKSAmJlxuICAgICAgICAgICAgICAhaXNOYU4oK25hbWUuc2xpY2UoMSkpKSB7XG4gICAgICAgICAgICB0aGlzW25hbWVdID0gdW5kZWZpbmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBzdG9wOiBmdW5jdGlvbigpIHtcbiAgICAgIHRoaXMuZG9uZSA9IHRydWU7XG5cbiAgICAgIHZhciByb290RW50cnkgPSB0aGlzLnRyeUVudHJpZXNbMF07XG4gICAgICB2YXIgcm9vdFJlY29yZCA9IHJvb3RFbnRyeS5jb21wbGV0aW9uO1xuICAgICAgaWYgKHJvb3RSZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgIHRocm93IHJvb3RSZWNvcmQuYXJnO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5ydmFsO1xuICAgIH0sXG5cbiAgICBkaXNwYXRjaEV4Y2VwdGlvbjogZnVuY3Rpb24oZXhjZXB0aW9uKSB7XG4gICAgICBpZiAodGhpcy5kb25lKSB7XG4gICAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICAgIH1cblxuICAgICAgdmFyIGNvbnRleHQgPSB0aGlzO1xuICAgICAgZnVuY3Rpb24gaGFuZGxlKGxvYywgY2F1Z2h0KSB7XG4gICAgICAgIHJlY29yZC50eXBlID0gXCJ0aHJvd1wiO1xuICAgICAgICByZWNvcmQuYXJnID0gZXhjZXB0aW9uO1xuICAgICAgICBjb250ZXh0Lm5leHQgPSBsb2M7XG5cbiAgICAgICAgaWYgKGNhdWdodCkge1xuICAgICAgICAgIC8vIElmIHRoZSBkaXNwYXRjaGVkIGV4Y2VwdGlvbiB3YXMgY2F1Z2h0IGJ5IGEgY2F0Y2ggYmxvY2ssXG4gICAgICAgICAgLy8gdGhlbiBsZXQgdGhhdCBjYXRjaCBibG9jayBoYW5kbGUgdGhlIGV4Y2VwdGlvbiBub3JtYWxseS5cbiAgICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICAgIGNvbnRleHQuYXJnID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICEhIGNhdWdodDtcbiAgICAgIH1cblxuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uO1xuXG4gICAgICAgIGlmIChlbnRyeS50cnlMb2MgPT09IFwicm9vdFwiKSB7XG4gICAgICAgICAgLy8gRXhjZXB0aW9uIHRocm93biBvdXRzaWRlIG9mIGFueSB0cnkgYmxvY2sgdGhhdCBjb3VsZCBoYW5kbGVcbiAgICAgICAgICAvLyBpdCwgc28gc2V0IHRoZSBjb21wbGV0aW9uIHZhbHVlIG9mIHRoZSBlbnRpcmUgZnVuY3Rpb24gdG9cbiAgICAgICAgICAvLyB0aHJvdyB0aGUgZXhjZXB0aW9uLlxuICAgICAgICAgIHJldHVybiBoYW5kbGUoXCJlbmRcIik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZW50cnkudHJ5TG9jIDw9IHRoaXMucHJldikge1xuICAgICAgICAgIHZhciBoYXNDYXRjaCA9IGhhc093bi5jYWxsKGVudHJ5LCBcImNhdGNoTG9jXCIpO1xuICAgICAgICAgIHZhciBoYXNGaW5hbGx5ID0gaGFzT3duLmNhbGwoZW50cnksIFwiZmluYWxseUxvY1wiKTtcblxuICAgICAgICAgIGlmIChoYXNDYXRjaCAmJiBoYXNGaW5hbGx5KSB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcmV2IDwgZW50cnkuY2F0Y2hMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5jYXRjaExvYywgdHJ1ZSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5maW5hbGx5TG9jKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSBpZiAoaGFzQ2F0Y2gpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXYgPCBlbnRyeS5jYXRjaExvYykge1xuICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlKGVudHJ5LmNhdGNoTG9jLCB0cnVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSBpZiAoaGFzRmluYWxseSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5maW5hbGx5TG9jKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJ0cnkgc3RhdGVtZW50IHdpdGhvdXQgY2F0Y2ggb3IgZmluYWxseVwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgYWJydXB0OiBmdW5jdGlvbih0eXBlLCBhcmcpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICBpZiAoZW50cnkudHJ5TG9jIDw9IHRoaXMucHJldiAmJlxuICAgICAgICAgICAgaGFzT3duLmNhbGwoZW50cnksIFwiZmluYWxseUxvY1wiKSAmJlxuICAgICAgICAgICAgdGhpcy5wcmV2IDwgZW50cnkuZmluYWxseUxvYykge1xuICAgICAgICAgIHZhciBmaW5hbGx5RW50cnkgPSBlbnRyeTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAoZmluYWxseUVudHJ5ICYmXG4gICAgICAgICAgKHR5cGUgPT09IFwiYnJlYWtcIiB8fFxuICAgICAgICAgICB0eXBlID09PSBcImNvbnRpbnVlXCIpICYmXG4gICAgICAgICAgZmluYWxseUVudHJ5LnRyeUxvYyA8PSBhcmcgJiZcbiAgICAgICAgICBhcmcgPD0gZmluYWxseUVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgLy8gSWdub3JlIHRoZSBmaW5hbGx5IGVudHJ5IGlmIGNvbnRyb2wgaXMgbm90IGp1bXBpbmcgdG8gYVxuICAgICAgICAvLyBsb2NhdGlvbiBvdXRzaWRlIHRoZSB0cnkvY2F0Y2ggYmxvY2suXG4gICAgICAgIGZpbmFsbHlFbnRyeSA9IG51bGw7XG4gICAgICB9XG5cbiAgICAgIHZhciByZWNvcmQgPSBmaW5hbGx5RW50cnkgPyBmaW5hbGx5RW50cnkuY29tcGxldGlvbiA6IHt9O1xuICAgICAgcmVjb3JkLnR5cGUgPSB0eXBlO1xuICAgICAgcmVjb3JkLmFyZyA9IGFyZztcblxuICAgICAgaWYgKGZpbmFsbHlFbnRyeSkge1xuICAgICAgICB0aGlzLm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICB0aGlzLm5leHQgPSBmaW5hbGx5RW50cnkuZmluYWxseUxvYztcbiAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmNvbXBsZXRlKHJlY29yZCk7XG4gICAgfSxcblxuICAgIGNvbXBsZXRlOiBmdW5jdGlvbihyZWNvcmQsIGFmdGVyTG9jKSB7XG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICB0aHJvdyByZWNvcmQuYXJnO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwiYnJlYWtcIiB8fFxuICAgICAgICAgIHJlY29yZC50eXBlID09PSBcImNvbnRpbnVlXCIpIHtcbiAgICAgICAgdGhpcy5uZXh0ID0gcmVjb3JkLmFyZztcbiAgICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IFwicmV0dXJuXCIpIHtcbiAgICAgICAgdGhpcy5ydmFsID0gdGhpcy5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgICB0aGlzLm1ldGhvZCA9IFwicmV0dXJuXCI7XG4gICAgICAgIHRoaXMubmV4dCA9IFwiZW5kXCI7XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcIm5vcm1hbFwiICYmIGFmdGVyTG9jKSB7XG4gICAgICAgIHRoaXMubmV4dCA9IGFmdGVyTG9jO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICB9LFxuXG4gICAgZmluaXNoOiBmdW5jdGlvbihmaW5hbGx5TG9jKSB7XG4gICAgICBmb3IgKHZhciBpID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IHRoaXMudHJ5RW50cmllc1tpXTtcbiAgICAgICAgaWYgKGVudHJ5LmZpbmFsbHlMb2MgPT09IGZpbmFsbHlMb2MpIHtcbiAgICAgICAgICB0aGlzLmNvbXBsZXRlKGVudHJ5LmNvbXBsZXRpb24sIGVudHJ5LmFmdGVyTG9jKTtcbiAgICAgICAgICByZXNldFRyeUVudHJ5KGVudHJ5KTtcbiAgICAgICAgICByZXR1cm4gQ29udGludWVTZW50aW5lbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG5cbiAgICBcImNhdGNoXCI6IGZ1bmN0aW9uKHRyeUxvYykge1xuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIGlmIChlbnRyeS50cnlMb2MgPT09IHRyeUxvYykge1xuICAgICAgICAgIHZhciByZWNvcmQgPSBlbnRyeS5jb21wbGV0aW9uO1xuICAgICAgICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJ0aHJvd1wiKSB7XG4gICAgICAgICAgICB2YXIgdGhyb3duID0gcmVjb3JkLmFyZztcbiAgICAgICAgICAgIHJlc2V0VHJ5RW50cnkoZW50cnkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdGhyb3duO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRoZSBjb250ZXh0LmNhdGNoIG1ldGhvZCBtdXN0IG9ubHkgYmUgY2FsbGVkIHdpdGggYSBsb2NhdGlvblxuICAgICAgLy8gYXJndW1lbnQgdGhhdCBjb3JyZXNwb25kcyB0byBhIGtub3duIGNhdGNoIGJsb2NrLlxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiaWxsZWdhbCBjYXRjaCBhdHRlbXB0XCIpO1xuICAgIH0sXG5cbiAgICBkZWxlZ2F0ZVlpZWxkOiBmdW5jdGlvbihpdGVyYWJsZSwgcmVzdWx0TmFtZSwgbmV4dExvYykge1xuICAgICAgdGhpcy5kZWxlZ2F0ZSA9IHtcbiAgICAgICAgaXRlcmF0b3I6IHZhbHVlcyhpdGVyYWJsZSksXG4gICAgICAgIHJlc3VsdE5hbWU6IHJlc3VsdE5hbWUsXG4gICAgICAgIG5leHRMb2M6IG5leHRMb2NcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLm1ldGhvZCA9PT0gXCJuZXh0XCIpIHtcbiAgICAgICAgLy8gRGVsaWJlcmF0ZWx5IGZvcmdldCB0aGUgbGFzdCBzZW50IHZhbHVlIHNvIHRoYXQgd2UgZG9uJ3RcbiAgICAgICAgLy8gYWNjaWRlbnRhbGx5IHBhc3MgaXQgb24gdG8gdGhlIGRlbGVnYXRlLlxuICAgICAgICB0aGlzLmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfVxuICB9O1xuXG4gIC8vIFJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGlzIHNjcmlwdCBpcyBleGVjdXRpbmcgYXMgYSBDb21tb25KUyBtb2R1bGVcbiAgLy8gb3Igbm90LCByZXR1cm4gdGhlIHJ1bnRpbWUgb2JqZWN0IHNvIHRoYXQgd2UgY2FuIGRlY2xhcmUgdGhlIHZhcmlhYmxlXG4gIC8vIHJlZ2VuZXJhdG9yUnVudGltZSBpbiB0aGUgb3V0ZXIgc2NvcGUsIHdoaWNoIGFsbG93cyB0aGlzIG1vZHVsZSB0byBiZVxuICAvLyBpbmplY3RlZCBlYXNpbHkgYnkgYGJpbi9yZWdlbmVyYXRvciAtLWluY2x1ZGUtcnVudGltZSBzY3JpcHQuanNgLlxuICByZXR1cm4gZXhwb3J0cztcblxufShcbiAgLy8gSWYgdGhpcyBzY3JpcHQgaXMgZXhlY3V0aW5nIGFzIGEgQ29tbW9uSlMgbW9kdWxlLCB1c2UgbW9kdWxlLmV4cG9ydHNcbiAgLy8gYXMgdGhlIHJlZ2VuZXJhdG9yUnVudGltZSBuYW1lc3BhY2UuIE90aGVyd2lzZSBjcmVhdGUgYSBuZXcgZW1wdHlcbiAgLy8gb2JqZWN0LiBFaXRoZXIgd2F5LCB0aGUgcmVzdWx0aW5nIG9iamVjdCB3aWxsIGJlIHVzZWQgdG8gaW5pdGlhbGl6ZVxuICAvLyB0aGUgcmVnZW5lcmF0b3JSdW50aW1lIHZhcmlhYmxlIGF0IHRoZSB0b3Agb2YgdGhpcyBmaWxlLlxuICB0eXBlb2YgbW9kdWxlID09PSBcIm9iamVjdFwiID8gbW9kdWxlLmV4cG9ydHMgOiB7fVxuKSk7XG5cbnRyeSB7XG4gIHJlZ2VuZXJhdG9yUnVudGltZSA9IHJ1bnRpbWU7XG59IGNhdGNoIChhY2NpZGVudGFsU3RyaWN0TW9kZSkge1xuICAvLyBUaGlzIG1vZHVsZSBzaG91bGQgbm90IGJlIHJ1bm5pbmcgaW4gc3RyaWN0IG1vZGUsIHNvIHRoZSBhYm92ZVxuICAvLyBhc3NpZ25tZW50IHNob3VsZCBhbHdheXMgd29yayB1bmxlc3Mgc29tZXRoaW5nIGlzIG1pc2NvbmZpZ3VyZWQuIEp1c3RcbiAgLy8gaW4gY2FzZSBydW50aW1lLmpzIGFjY2lkZW50YWxseSBydW5zIGluIHN0cmljdCBtb2RlLCB3ZSBjYW4gZXNjYXBlXG4gIC8vIHN0cmljdCBtb2RlIHVzaW5nIGEgZ2xvYmFsIEZ1bmN0aW9uIGNhbGwuIFRoaXMgY291bGQgY29uY2VpdmFibHkgZmFpbFxuICAvLyBpZiBhIENvbnRlbnQgU2VjdXJpdHkgUG9saWN5IGZvcmJpZHMgdXNpbmcgRnVuY3Rpb24sIGJ1dCBpbiB0aGF0IGNhc2VcbiAgLy8gdGhlIHByb3BlciBzb2x1dGlvbiBpcyB0byBmaXggdGhlIGFjY2lkZW50YWwgc3RyaWN0IG1vZGUgcHJvYmxlbS4gSWZcbiAgLy8geW91J3ZlIG1pc2NvbmZpZ3VyZWQgeW91ciBidW5kbGVyIHRvIGZvcmNlIHN0cmljdCBtb2RlIGFuZCBhcHBsaWVkIGFcbiAgLy8gQ1NQIHRvIGZvcmJpZCBGdW5jdGlvbiwgYW5kIHlvdSdyZSBub3Qgd2lsbGluZyB0byBmaXggZWl0aGVyIG9mIHRob3NlXG4gIC8vIHByb2JsZW1zLCBwbGVhc2UgZGV0YWlsIHlvdXIgdW5pcXVlIHByZWRpY2FtZW50IGluIGEgR2l0SHViIGlzc3VlLlxuICBGdW5jdGlvbihcInJcIiwgXCJyZWdlbmVyYXRvclJ1bnRpbWUgPSByXCIpKHJ1bnRpbWUpO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./node_modules/qiankun/node_modules/regenerator-runtime/runtime.js\n"); /***/ }) }]);