/* * ATTENTION: An "eval-source-map" devtool has been used. * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ exports.id = "vendor-chunks/next"; exports.ids = ["vendor-chunks/next"]; exports.modules = { /***/ "(ssr)/./node_modules/next/dist/client/add-base-path.js": /*!********************************************************!*\ !*** ./node_modules/next/dist/client/add-base-path.js ***! \********************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"addBasePath\", ({\n enumerable: true,\n get: function() {\n return addBasePath;\n }\n}));\nconst _addpathprefix = __webpack_require__(/*! ../shared/lib/router/utils/add-path-prefix */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js\");\nconst _normalizetrailingslash = __webpack_require__(/*! ./normalize-trailing-slash */ \"(ssr)/./node_modules/next/dist/client/normalize-trailing-slash.js\");\nconst basePath = false || \"\";\nfunction addBasePath(path, required) {\n return (0, _normalizetrailingslash.normalizePathTrailingSlash)( false ? 0 : (0, _addpathprefix.addPathPrefix)(path, basePath));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=add-base-path.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hZGQtYmFzZS1wYXRoLmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCwrQ0FBOEM7SUFDMUNJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNQyxpQkFBaUJDLG1CQUFPQSxDQUFDLDZIQUE0QztBQUMzRSxNQUFNQywwQkFBMEJELG1CQUFPQSxDQUFDLHFHQUE0QjtBQUNwRSxNQUFNRSxXQUFXQyxNQUFrQyxJQUFJO0FBQ3ZELFNBQVNMLFlBQVlRLElBQUksRUFBRUMsUUFBUTtJQUMvQixPQUFPLENBQUMsR0FBR04sd0JBQXdCTywwQkFBMEIsRUFBRUwsTUFBdURJLEdBQUdELENBQUlBLEdBQUcsQ0FBQyxHQUFHUCxlQUFlVyxhQUFhLEVBQUVKLE1BQU1KO0FBQzVLO0FBRUEsSUFBSSxDQUFDLE9BQU9SLFFBQVFpQixPQUFPLEtBQUssY0FBZSxPQUFPakIsUUFBUWlCLE9BQU8sS0FBSyxZQUFZakIsUUFBUWlCLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT2pCLFFBQVFpQixPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLcEIsT0FBT0MsY0FBYyxDQUFDQyxRQUFRaUIsT0FBTyxFQUFFLGNBQWM7UUFBRWhCLE9BQU87SUFBSztJQUNuRUgsT0FBT3FCLE1BQU0sQ0FBQ25CLFFBQVFpQixPQUFPLEVBQUVqQjtJQUMvQm9CLE9BQU9wQixPQUFPLEdBQUdBLFFBQVFpQixPQUFPO0FBQ2xDLEVBRUEseUNBQXlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hZGQtYmFzZS1wYXRoLmpzPzYxMzEiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJhZGRCYXNlUGF0aFwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gYWRkQmFzZVBhdGg7XG4gICAgfVxufSk7XG5jb25zdCBfYWRkcGF0aHByZWZpeCA9IHJlcXVpcmUoXCIuLi9zaGFyZWQvbGliL3JvdXRlci91dGlscy9hZGQtcGF0aC1wcmVmaXhcIik7XG5jb25zdCBfbm9ybWFsaXpldHJhaWxpbmdzbGFzaCA9IHJlcXVpcmUoXCIuL25vcm1hbGl6ZS10cmFpbGluZy1zbGFzaFwiKTtcbmNvbnN0IGJhc2VQYXRoID0gcHJvY2Vzcy5lbnYuX19ORVhUX1JPVVRFUl9CQVNFUEFUSCB8fCBcIlwiO1xuZnVuY3Rpb24gYWRkQmFzZVBhdGgocGF0aCwgcmVxdWlyZWQpIHtcbiAgICByZXR1cm4gKDAsIF9ub3JtYWxpemV0cmFpbGluZ3NsYXNoLm5vcm1hbGl6ZVBhdGhUcmFpbGluZ1NsYXNoKShwcm9jZXNzLmVudi5fX05FWFRfTUFOVUFMX0NMSUVOVF9CQVNFX1BBVEggJiYgIXJlcXVpcmVkID8gcGF0aCA6ICgwLCBfYWRkcGF0aHByZWZpeC5hZGRQYXRoUHJlZml4KShwYXRoLCBiYXNlUGF0aCkpO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1hZGQtYmFzZS1wYXRoLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJhZGRCYXNlUGF0aCIsIl9hZGRwYXRocHJlZml4IiwicmVxdWlyZSIsIl9ub3JtYWxpemV0cmFpbGluZ3NsYXNoIiwiYmFzZVBhdGgiLCJwcm9jZXNzIiwiZW52IiwiX19ORVhUX1JPVVRFUl9CQVNFUEFUSCIsInBhdGgiLCJyZXF1aXJlZCIsIm5vcm1hbGl6ZVBhdGhUcmFpbGluZ1NsYXNoIiwiX19ORVhUX01BTlVBTF9DTElFTlRfQkFTRV9QQVRIIiwiYWRkUGF0aFByZWZpeCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/add-base-path.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/app-call-server.js": /*!**********************************************************!*\ !*** ./node_modules/next/dist/client/app-call-server.js ***! \**********************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"callServer\", ({\n enumerable: true,\n get: function() {\n return callServer;\n }\n}));\nconst _approuter = __webpack_require__(/*! ./components/app-router */ \"(ssr)/./node_modules/next/dist/client/components/app-router.js\");\nasync function callServer(actionId, actionArgs) {\n const actionDispatcher = (0, _approuter.getServerActionDispatcher)();\n if (!actionDispatcher) {\n throw new Error(\"Invariant: missing action dispatcher.\");\n }\n return new Promise((resolve, reject)=>{\n actionDispatcher({\n actionId,\n actionArgs,\n resolve,\n reject\n });\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-call-server.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hcHAtY2FsbC1zZXJ2ZXIuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0ZILDhDQUE2QztJQUN6Q0ksWUFBWTtJQUNaQyxLQUFLO1FBQ0QsT0FBT0M7SUFDWDtBQUNKLENBQUMsRUFBQztBQUNGLE1BQU1DLGFBQWFDLG1CQUFPQSxDQUFDLCtGQUF5QjtBQUNwRCxlQUFlRixXQUFXRyxRQUFRLEVBQUVDLFVBQVU7SUFDMUMsTUFBTUMsbUJBQW1CLENBQUMsR0FBR0osV0FBV0sseUJBQXlCO0lBQ2pFLElBQUksQ0FBQ0Qsa0JBQWtCO1FBQ25CLE1BQU0sSUFBSUUsTUFBTTtJQUNwQjtJQUNBLE9BQU8sSUFBSUMsUUFBUSxDQUFDQyxTQUFTQztRQUN6QkwsaUJBQWlCO1lBQ2JGO1lBQ0FDO1lBQ0FLO1lBQ0FDO1FBQ0o7SUFDSjtBQUNKO0FBRUEsSUFBSSxDQUFDLE9BQU9kLFFBQVFlLE9BQU8sS0FBSyxjQUFlLE9BQU9mLFFBQVFlLE9BQU8sS0FBSyxZQUFZZixRQUFRZSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9mLFFBQVFlLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktsQixPQUFPQyxjQUFjLENBQUNDLFFBQVFlLE9BQU8sRUFBRSxjQUFjO1FBQUVkLE9BQU87SUFBSztJQUNuRUgsT0FBT21CLE1BQU0sQ0FBQ2pCLFFBQVFlLE9BQU8sRUFBRWY7SUFDL0JrQixPQUFPbEIsT0FBTyxHQUFHQSxRQUFRZSxPQUFPO0FBQ2xDLEVBRUEsMkNBQTJDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9hcHAtY2FsbC1zZXJ2ZXIuanM/ZjNmMiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcImNhbGxTZXJ2ZXJcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGNhbGxTZXJ2ZXI7XG4gICAgfVxufSk7XG5jb25zdCBfYXBwcm91dGVyID0gcmVxdWlyZShcIi4vY29tcG9uZW50cy9hcHAtcm91dGVyXCIpO1xuYXN5bmMgZnVuY3Rpb24gY2FsbFNlcnZlcihhY3Rpb25JZCwgYWN0aW9uQXJncykge1xuICAgIGNvbnN0IGFjdGlvbkRpc3BhdGNoZXIgPSAoMCwgX2FwcHJvdXRlci5nZXRTZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyKSgpO1xuICAgIGlmICghYWN0aW9uRGlzcGF0Y2hlcikge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhcmlhbnQ6IG1pc3NpbmcgYWN0aW9uIGRpc3BhdGNoZXIuXCIpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCk9PntcbiAgICAgICAgYWN0aW9uRGlzcGF0Y2hlcih7XG4gICAgICAgICAgICBhY3Rpb25JZCxcbiAgICAgICAgICAgIGFjdGlvbkFyZ3MsXG4gICAgICAgICAgICByZXNvbHZlLFxuICAgICAgICAgICAgcmVqZWN0XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1hcHAtY2FsbC1zZXJ2ZXIuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsImNhbGxTZXJ2ZXIiLCJfYXBwcm91dGVyIiwicmVxdWlyZSIsImFjdGlvbklkIiwiYWN0aW9uQXJncyIsImFjdGlvbkRpc3BhdGNoZXIiLCJnZXRTZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyIiwiRXJyb3IiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/app-call-server.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js": /*!**************************************************************************!*\ !*** ./node_modules/next/dist/client/components/app-router-announcer.js ***! \**************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AppRouterAnnouncer\", ({\n enumerable: true,\n get: function() {\n return AppRouterAnnouncer;\n }\n}));\nconst _react = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\nconst _reactdom = __webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\");\nconst ANNOUNCER_TYPE = \"next-route-announcer\";\nconst ANNOUNCER_ID = \"__next-route-announcer__\";\nfunction getAnnouncerNode() {\n var _existingAnnouncer_shadowRoot;\n const existingAnnouncer = document.getElementsByName(ANNOUNCER_TYPE)[0];\n if (existingAnnouncer == null ? void 0 : (_existingAnnouncer_shadowRoot = existingAnnouncer.shadowRoot) == null ? void 0 : _existingAnnouncer_shadowRoot.childNodes[0]) {\n return existingAnnouncer.shadowRoot.childNodes[0];\n } else {\n const container = document.createElement(ANNOUNCER_TYPE);\n container.style.cssText = \"position:absolute\";\n const announcer = document.createElement(\"div\");\n announcer.ariaLive = \"assertive\";\n announcer.id = ANNOUNCER_ID;\n announcer.role = \"alert\";\n announcer.style.cssText = \"position:absolute;border:0;height:1px;margin:-1px;padding:0;width:1px;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;word-wrap:normal\";\n // Use shadow DOM here to avoid any potential CSS bleed\n const shadow = container.attachShadow({\n mode: \"open\"\n });\n shadow.appendChild(announcer);\n document.body.appendChild(container);\n return announcer;\n }\n}\nfunction AppRouterAnnouncer(param) {\n let { tree } = param;\n const [portalNode, setPortalNode] = (0, _react.useState)(null);\n (0, _react.useEffect)(()=>{\n const announcer = getAnnouncerNode();\n setPortalNode(announcer);\n return ()=>{\n const container = document.getElementsByTagName(ANNOUNCER_TYPE)[0];\n if (container == null ? void 0 : container.isConnected) {\n document.body.removeChild(container);\n }\n };\n }, []);\n const [routeAnnouncement, setRouteAnnouncement] = (0, _react.useState)(\"\");\n const previousTitle = (0, _react.useRef)();\n (0, _react.useEffect)(()=>{\n let currentTitle = \"\";\n if (document.title) {\n currentTitle = document.title;\n } else {\n const pageHeader = document.querySelector(\"h1\");\n if (pageHeader) {\n currentTitle = pageHeader.innerText || pageHeader.textContent || \"\";\n }\n }\n // Only announce the title change, but not for the first load because screen\n // readers do that automatically.\n if (previousTitle.current !== undefined && previousTitle.current !== currentTitle) {\n setRouteAnnouncement(currentTitle);\n }\n previousTitle.current = currentTitle;\n }, [\n tree\n ]);\n return portalNode ? /*#__PURE__*/ (0, _reactdom.createPortal)(routeAnnouncement, portalNode) : null;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router-announcer.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXItYW5ub3VuY2VyLmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCxzREFBcUQ7SUFDakRJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNQyxTQUFTQyxtQkFBT0EsQ0FBQyx3R0FBTztBQUM5QixNQUFNQyxZQUFZRCxtQkFBT0EsQ0FBQyxnSEFBVztBQUNyQyxNQUFNRSxpQkFBaUI7QUFDdkIsTUFBTUMsZUFBZTtBQUNyQixTQUFTQztJQUNMLElBQUlDO0lBQ0osTUFBTUMsb0JBQW9CQyxTQUFTQyxpQkFBaUIsQ0FBQ04sZUFBZSxDQUFDLEVBQUU7SUFDdkUsSUFBSUkscUJBQXFCLE9BQU8sS0FBSyxJQUFJLENBQUNELGdDQUFnQ0Msa0JBQWtCRyxVQUFVLEtBQUssT0FBTyxLQUFLLElBQUlKLDhCQUE4QkssVUFBVSxDQUFDLEVBQUUsRUFBRTtRQUNwSyxPQUFPSixrQkFBa0JHLFVBQVUsQ0FBQ0MsVUFBVSxDQUFDLEVBQUU7SUFDckQsT0FBTztRQUNILE1BQU1DLFlBQVlKLFNBQVNLLGFBQWEsQ0FBQ1Y7UUFDekNTLFVBQVVFLEtBQUssQ0FBQ0MsT0FBTyxHQUFHO1FBQzFCLE1BQU1DLFlBQVlSLFNBQVNLLGFBQWEsQ0FBQztRQUN6Q0csVUFBVUMsUUFBUSxHQUFHO1FBQ3JCRCxVQUFVRSxFQUFFLEdBQUdkO1FBQ2ZZLFVBQVVHLElBQUksR0FBRztRQUNqQkgsVUFBVUYsS0FBSyxDQUFDQyxPQUFPLEdBQUc7UUFDMUIsdURBQXVEO1FBQ3ZELE1BQU1LLFNBQVNSLFVBQVVTLFlBQVksQ0FBQztZQUNsQ0MsTUFBTTtRQUNWO1FBQ0FGLE9BQU9HLFdBQVcsQ0FBQ1A7UUFDbkJSLFNBQVNnQixJQUFJLENBQUNELFdBQVcsQ0FBQ1g7UUFDMUIsT0FBT0k7SUFDWDtBQUNKO0FBQ0EsU0FBU2pCLG1CQUFtQjBCLEtBQUs7SUFDN0IsSUFBSSxFQUFFQyxJQUFJLEVBQUUsR0FBR0Q7SUFDZixNQUFNLENBQUNFLFlBQVlDLGNBQWMsR0FBRyxDQUFDLEdBQUc1QixPQUFPNkIsUUFBUSxFQUFFO0lBQ3hELElBQUc3QixPQUFPOEIsU0FBUyxFQUFFO1FBQ2xCLE1BQU1kLFlBQVlYO1FBQ2xCdUIsY0FBY1o7UUFDZCxPQUFPO1lBQ0gsTUFBTUosWUFBWUosU0FBU3VCLG9CQUFvQixDQUFDNUIsZUFBZSxDQUFDLEVBQUU7WUFDbEUsSUFBSVMsYUFBYSxPQUFPLEtBQUssSUFBSUEsVUFBVW9CLFdBQVcsRUFBRTtnQkFDcER4QixTQUFTZ0IsSUFBSSxDQUFDUyxXQUFXLENBQUNyQjtZQUM5QjtRQUNKO0lBQ0osR0FBRyxFQUFFO0lBQ0wsTUFBTSxDQUFDc0IsbUJBQW1CQyxxQkFBcUIsR0FBRyxDQUFDLEdBQUduQyxPQUFPNkIsUUFBUSxFQUFFO0lBQ3ZFLE1BQU1PLGdCQUFnQixDQUFDLEdBQUdwQyxPQUFPcUMsTUFBTTtJQUN0QyxJQUFHckMsT0FBTzhCLFNBQVMsRUFBRTtRQUNsQixJQUFJUSxlQUFlO1FBQ25CLElBQUk5QixTQUFTK0IsS0FBSyxFQUFFO1lBQ2hCRCxlQUFlOUIsU0FBUytCLEtBQUs7UUFDakMsT0FBTztZQUNILE1BQU1DLGFBQWFoQyxTQUFTaUMsYUFBYSxDQUFDO1lBQzFDLElBQUlELFlBQVk7Z0JBQ1pGLGVBQWVFLFdBQVdFLFNBQVMsSUFBSUYsV0FBV0csV0FBVyxJQUFJO1lBQ3JFO1FBQ0o7UUFDQSw0RUFBNEU7UUFDNUUsaUNBQWlDO1FBQ2pDLElBQUlQLGNBQWNRLE9BQU8sS0FBS0MsYUFBYVQsY0FBY1EsT0FBTyxLQUFLTixjQUFjO1lBQy9FSCxxQkFBcUJHO1FBQ3pCO1FBQ0FGLGNBQWNRLE9BQU8sR0FBR047SUFDNUIsR0FBRztRQUNDWjtLQUNIO0lBQ0QsT0FBT0MsYUFBMkIsV0FBSCxHQUFJLElBQUd6QixVQUFVNEMsWUFBWSxFQUFFWixtQkFBbUJQLGNBQWM7QUFDbkc7QUFFQSxJQUFJLENBQUMsT0FBT2hDLFFBQVFvRCxPQUFPLEtBQUssY0FBZSxPQUFPcEQsUUFBUW9ELE9BQU8sS0FBSyxZQUFZcEQsUUFBUW9ELE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT3BELFFBQVFvRCxPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLdkQsT0FBT0MsY0FBYyxDQUFDQyxRQUFRb0QsT0FBTyxFQUFFLGNBQWM7UUFBRW5ELE9BQU87SUFBSztJQUNuRUgsT0FBT3dELE1BQU0sQ0FBQ3RELFFBQVFvRCxPQUFPLEVBQUVwRDtJQUMvQnVELE9BQU92RCxPQUFPLEdBQUdBLFFBQVFvRCxPQUFPO0FBQ2xDLEVBRUEsZ0RBQWdEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXItYW5ub3VuY2VyLmpzPzZlMDIiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJBcHBSb3V0ZXJBbm5vdW5jZXJcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIEFwcFJvdXRlckFubm91bmNlcjtcbiAgICB9XG59KTtcbmNvbnN0IF9yZWFjdCA9IHJlcXVpcmUoXCJyZWFjdFwiKTtcbmNvbnN0IF9yZWFjdGRvbSA9IHJlcXVpcmUoXCJyZWFjdC1kb21cIik7XG5jb25zdCBBTk5PVU5DRVJfVFlQRSA9IFwibmV4dC1yb3V0ZS1hbm5vdW5jZXJcIjtcbmNvbnN0IEFOTk9VTkNFUl9JRCA9IFwiX19uZXh0LXJvdXRlLWFubm91bmNlcl9fXCI7XG5mdW5jdGlvbiBnZXRBbm5vdW5jZXJOb2RlKCkge1xuICAgIHZhciBfZXhpc3RpbmdBbm5vdW5jZXJfc2hhZG93Um9vdDtcbiAgICBjb25zdCBleGlzdGluZ0Fubm91bmNlciA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKEFOTk9VTkNFUl9UWVBFKVswXTtcbiAgICBpZiAoZXhpc3RpbmdBbm5vdW5jZXIgPT0gbnVsbCA/IHZvaWQgMCA6IChfZXhpc3RpbmdBbm5vdW5jZXJfc2hhZG93Um9vdCA9IGV4aXN0aW5nQW5ub3VuY2VyLnNoYWRvd1Jvb3QpID09IG51bGwgPyB2b2lkIDAgOiBfZXhpc3RpbmdBbm5vdW5jZXJfc2hhZG93Um9vdC5jaGlsZE5vZGVzWzBdKSB7XG4gICAgICAgIHJldHVybiBleGlzdGluZ0Fubm91bmNlci5zaGFkb3dSb290LmNoaWxkTm9kZXNbMF07XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChBTk5PVU5DRVJfVFlQRSk7XG4gICAgICAgIGNvbnRhaW5lci5zdHlsZS5jc3NUZXh0ID0gXCJwb3NpdGlvbjphYnNvbHV0ZVwiO1xuICAgICAgICBjb25zdCBhbm5vdW5jZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuICAgICAgICBhbm5vdW5jZXIuYXJpYUxpdmUgPSBcImFzc2VydGl2ZVwiO1xuICAgICAgICBhbm5vdW5jZXIuaWQgPSBBTk5PVU5DRVJfSUQ7XG4gICAgICAgIGFubm91bmNlci5yb2xlID0gXCJhbGVydFwiO1xuICAgICAgICBhbm5vdW5jZXIuc3R5bGUuY3NzVGV4dCA9IFwicG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjA7aGVpZ2h0OjFweDttYXJnaW46LTFweDtwYWRkaW5nOjA7d2lkdGg6MXB4O2NsaXA6cmVjdCgwIDAgMCAwKTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWxcIjtcbiAgICAgICAgLy8gVXNlIHNoYWRvdyBET00gaGVyZSB0byBhdm9pZCBhbnkgcG90ZW50aWFsIENTUyBibGVlZFxuICAgICAgICBjb25zdCBzaGFkb3cgPSBjb250YWluZXIuYXR0YWNoU2hhZG93KHtcbiAgICAgICAgICAgIG1vZGU6IFwib3BlblwiXG4gICAgICAgIH0pO1xuICAgICAgICBzaGFkb3cuYXBwZW5kQ2hpbGQoYW5ub3VuY2VyKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChjb250YWluZXIpO1xuICAgICAgICByZXR1cm4gYW5ub3VuY2VyO1xuICAgIH1cbn1cbmZ1bmN0aW9uIEFwcFJvdXRlckFubm91bmNlcihwYXJhbSkge1xuICAgIGxldCB7IHRyZWUgfSA9IHBhcmFtO1xuICAgIGNvbnN0IFtwb3J0YWxOb2RlLCBzZXRQb3J0YWxOb2RlXSA9ICgwLCBfcmVhY3QudXNlU3RhdGUpKG51bGwpO1xuICAgICgwLCBfcmVhY3QudXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICBjb25zdCBhbm5vdW5jZXIgPSBnZXRBbm5vdW5jZXJOb2RlKCk7XG4gICAgICAgIHNldFBvcnRhbE5vZGUoYW5ub3VuY2VyKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICBjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShBTk5PVU5DRVJfVFlQRSlbMF07XG4gICAgICAgICAgICBpZiAoY29udGFpbmVyID09IG51bGwgPyB2b2lkIDAgOiBjb250YWluZXIuaXNDb25uZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGNvbnRhaW5lcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IFtyb3V0ZUFubm91bmNlbWVudCwgc2V0Um91dGVBbm5vdW5jZW1lbnRdID0gKDAsIF9yZWFjdC51c2VTdGF0ZSkoXCJcIik7XG4gICAgY29uc3QgcHJldmlvdXNUaXRsZSA9ICgwLCBfcmVhY3QudXNlUmVmKSgpO1xuICAgICgwLCBfcmVhY3QudXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICBsZXQgY3VycmVudFRpdGxlID0gXCJcIjtcbiAgICAgICAgaWYgKGRvY3VtZW50LnRpdGxlKSB7XG4gICAgICAgICAgICBjdXJyZW50VGl0bGUgPSBkb2N1bWVudC50aXRsZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHBhZ2VIZWFkZXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiaDFcIik7XG4gICAgICAgICAgICBpZiAocGFnZUhlYWRlcikge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRUaXRsZSA9IHBhZ2VIZWFkZXIuaW5uZXJUZXh0IHx8IHBhZ2VIZWFkZXIudGV4dENvbnRlbnQgfHwgXCJcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IGFubm91bmNlIHRoZSB0aXRsZSBjaGFuZ2UsIGJ1dCBub3QgZm9yIHRoZSBmaXJzdCBsb2FkIGJlY2F1c2Ugc2NyZWVuXG4gICAgICAgIC8vIHJlYWRlcnMgZG8gdGhhdCBhdXRvbWF0aWNhbGx5LlxuICAgICAgICBpZiAocHJldmlvdXNUaXRsZS5jdXJyZW50ICE9PSB1bmRlZmluZWQgJiYgcHJldmlvdXNUaXRsZS5jdXJyZW50ICE9PSBjdXJyZW50VGl0bGUpIHtcbiAgICAgICAgICAgIHNldFJvdXRlQW5ub3VuY2VtZW50KGN1cnJlbnRUaXRsZSk7XG4gICAgICAgIH1cbiAgICAgICAgcHJldmlvdXNUaXRsZS5jdXJyZW50ID0gY3VycmVudFRpdGxlO1xuICAgIH0sIFtcbiAgICAgICAgdHJlZVxuICAgIF0pO1xuICAgIHJldHVybiBwb3J0YWxOb2RlID8gLyojX19QVVJFX18qLyAoMCwgX3JlYWN0ZG9tLmNyZWF0ZVBvcnRhbCkocm91dGVBbm5vdW5jZW1lbnQsIHBvcnRhbE5vZGUpIDogbnVsbDtcbn1cblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YXBwLXJvdXRlci1hbm5vdW5jZXIuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIkFwcFJvdXRlckFubm91bmNlciIsIl9yZWFjdCIsInJlcXVpcmUiLCJfcmVhY3Rkb20iLCJBTk5PVU5DRVJfVFlQRSIsIkFOTk9VTkNFUl9JRCIsImdldEFubm91bmNlck5vZGUiLCJfZXhpc3RpbmdBbm5vdW5jZXJfc2hhZG93Um9vdCIsImV4aXN0aW5nQW5ub3VuY2VyIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50c0J5TmFtZSIsInNoYWRvd1Jvb3QiLCJjaGlsZE5vZGVzIiwiY29udGFpbmVyIiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwiY3NzVGV4dCIsImFubm91bmNlciIsImFyaWFMaXZlIiwiaWQiLCJyb2xlIiwic2hhZG93IiwiYXR0YWNoU2hhZG93IiwibW9kZSIsImFwcGVuZENoaWxkIiwiYm9keSIsInBhcmFtIiwidHJlZSIsInBvcnRhbE5vZGUiLCJzZXRQb3J0YWxOb2RlIiwidXNlU3RhdGUiLCJ1c2VFZmZlY3QiLCJnZXRFbGVtZW50c0J5VGFnTmFtZSIsImlzQ29ubmVjdGVkIiwicmVtb3ZlQ2hpbGQiLCJyb3V0ZUFubm91bmNlbWVudCIsInNldFJvdXRlQW5ub3VuY2VtZW50IiwicHJldmlvdXNUaXRsZSIsInVzZVJlZiIsImN1cnJlbnRUaXRsZSIsInRpdGxlIiwicGFnZUhlYWRlciIsInF1ZXJ5U2VsZWN0b3IiLCJpbm5lclRleHQiLCJ0ZXh0Q29udGVudCIsImN1cnJlbnQiLCJ1bmRlZmluZWQiLCJjcmVhdGVQb3J0YWwiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/app-router-headers.js": /*!************************************************************************!*\ !*** ./node_modules/next/dist/client/components/app-router-headers.js ***! \************************************************************************/ /***/ ((module, exports) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n RSC_HEADER: function() {\n return RSC_HEADER;\n },\n ACTION: function() {\n return ACTION;\n },\n NEXT_ROUTER_STATE_TREE: function() {\n return NEXT_ROUTER_STATE_TREE;\n },\n NEXT_ROUTER_PREFETCH_HEADER: function() {\n return NEXT_ROUTER_PREFETCH_HEADER;\n },\n NEXT_URL: function() {\n return NEXT_URL;\n },\n RSC_CONTENT_TYPE_HEADER: function() {\n return RSC_CONTENT_TYPE_HEADER;\n },\n RSC_VARY_HEADER: function() {\n return RSC_VARY_HEADER;\n },\n FLIGHT_PARAMETERS: function() {\n return FLIGHT_PARAMETERS;\n },\n NEXT_RSC_UNION_QUERY: function() {\n return NEXT_RSC_UNION_QUERY;\n },\n NEXT_DID_POSTPONE_HEADER: function() {\n return NEXT_DID_POSTPONE_HEADER;\n }\n});\nconst RSC_HEADER = \"RSC\";\nconst ACTION = \"Next-Action\";\nconst NEXT_ROUTER_STATE_TREE = \"Next-Router-State-Tree\";\nconst NEXT_ROUTER_PREFETCH_HEADER = \"Next-Router-Prefetch\";\nconst NEXT_URL = \"Next-Url\";\nconst RSC_CONTENT_TYPE_HEADER = \"text/x-component\";\nconst RSC_VARY_HEADER = RSC_HEADER + \", \" + NEXT_ROUTER_STATE_TREE + \", \" + NEXT_ROUTER_PREFETCH_HEADER + \", \" + NEXT_URL;\nconst FLIGHT_PARAMETERS = [\n [\n RSC_HEADER\n ],\n [\n NEXT_ROUTER_STATE_TREE\n ],\n [\n NEXT_ROUTER_PREFETCH_HEADER\n ]\n];\nconst NEXT_RSC_UNION_QUERY = \"_rsc\";\nconst NEXT_DID_POSTPONE_HEADER = \"x-nextjs-postponed\";\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router-headers.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXItaGVhZGVycy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRixLQUFNQyxDQUFBQSxDQVdOO0FBQ0EsU0FBU1csUUFBUUMsTUFBTSxFQUFFQyxHQUFHO0lBQ3hCLElBQUksSUFBSUMsUUFBUUQsSUFBSWpCLE9BQU9DLGNBQWMsQ0FBQ2UsUUFBUUUsTUFBTTtRQUNwREMsWUFBWTtRQUNaQyxLQUFLSCxHQUFHLENBQUNDLEtBQUs7SUFDbEI7QUFDSjtBQUNBSCxRQUFRYixTQUFTO0lBQ2JHLFlBQVk7UUFDUixPQUFPQTtJQUNYO0lBQ0FDLFFBQVE7UUFDSixPQUFPQTtJQUNYO0lBQ0FDLHdCQUF3QjtRQUNwQixPQUFPQTtJQUNYO0lBQ0FDLDZCQUE2QjtRQUN6QixPQUFPQTtJQUNYO0lBQ0FDLFVBQVU7UUFDTixPQUFPQTtJQUNYO0lBQ0FDLHlCQUF5QjtRQUNyQixPQUFPQTtJQUNYO0lBQ0FDLGlCQUFpQjtRQUNiLE9BQU9BO0lBQ1g7SUFDQUMsbUJBQW1CO1FBQ2YsT0FBT0E7SUFDWDtJQUNBQyxzQkFBc0I7UUFDbEIsT0FBT0E7SUFDWDtJQUNBQywwQkFBMEI7UUFDdEIsT0FBT0E7SUFDWDtBQUNKO0FBQ0EsTUFBTVQsYUFBYTtBQUNuQixNQUFNQyxTQUFTO0FBQ2YsTUFBTUMseUJBQXlCO0FBQy9CLE1BQU1DLDhCQUE4QjtBQUNwQyxNQUFNQyxXQUFXO0FBQ2pCLE1BQU1DLDBCQUEwQjtBQUNoQyxNQUFNQyxrQkFBa0JOLGFBQWEsT0FBT0UseUJBQXlCLE9BQU9DLDhCQUE4QixPQUFPQztBQUNqSCxNQUFNRyxvQkFBb0I7SUFDdEI7UUFDSVA7S0FDSDtJQUNEO1FBQ0lFO0tBQ0g7SUFDRDtRQUNJQztLQUNIO0NBQ0o7QUFDRCxNQUFNSyx1QkFBdUI7QUFDN0IsTUFBTUMsMkJBQTJCO0FBRWpDLElBQUksQ0FBQyxPQUFPWixRQUFRbUIsT0FBTyxLQUFLLGNBQWUsT0FBT25CLFFBQVFtQixPQUFPLEtBQUssWUFBWW5CLFFBQVFtQixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9uQixRQUFRbUIsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS3RCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUW1CLE9BQU8sRUFBRSxjQUFjO1FBQUVsQixPQUFPO0lBQUs7SUFDbkVILE9BQU91QixNQUFNLENBQUNyQixRQUFRbUIsT0FBTyxFQUFFbkI7SUFDL0JFLE9BQU9GLE9BQU8sR0FBR0EsUUFBUW1CLE9BQU87QUFDbEMsRUFFQSw4Q0FBOEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvYXBwLXJvdXRlci1oZWFkZXJzLmpzPzM1NmYiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBSU0NfSEVBREVSOiBudWxsLFxuICAgIEFDVElPTjogbnVsbCxcbiAgICBORVhUX1JPVVRFUl9TVEFURV9UUkVFOiBudWxsLFxuICAgIE5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUjogbnVsbCxcbiAgICBORVhUX1VSTDogbnVsbCxcbiAgICBSU0NfQ09OVEVOVF9UWVBFX0hFQURFUjogbnVsbCxcbiAgICBSU0NfVkFSWV9IRUFERVI6IG51bGwsXG4gICAgRkxJR0hUX1BBUkFNRVRFUlM6IG51bGwsXG4gICAgTkVYVF9SU0NfVU5JT05fUVVFUlk6IG51bGwsXG4gICAgTkVYVF9ESURfUE9TVFBPTkVfSEVBREVSOiBudWxsXG59KTtcbmZ1bmN0aW9uIF9leHBvcnQodGFyZ2V0LCBhbGwpIHtcbiAgICBmb3IodmFyIG5hbWUgaW4gYWxsKU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIG5hbWUsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBhbGxbbmFtZV1cbiAgICB9KTtcbn1cbl9leHBvcnQoZXhwb3J0cywge1xuICAgIFJTQ19IRUFERVI6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gUlNDX0hFQURFUjtcbiAgICB9LFxuICAgIEFDVElPTjogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBBQ1RJT047XG4gICAgfSxcbiAgICBORVhUX1JPVVRFUl9TVEFURV9UUkVFOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIE5FWFRfUk9VVEVSX1NUQVRFX1RSRUU7XG4gICAgfSxcbiAgICBORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVI6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gTkVYVF9ST1VURVJfUFJFRkVUQ0hfSEVBREVSO1xuICAgIH0sXG4gICAgTkVYVF9VUkw6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gTkVYVF9VUkw7XG4gICAgfSxcbiAgICBSU0NfQ09OVEVOVF9UWVBFX0hFQURFUjogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBSU0NfQ09OVEVOVF9UWVBFX0hFQURFUjtcbiAgICB9LFxuICAgIFJTQ19WQVJZX0hFQURFUjogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBSU0NfVkFSWV9IRUFERVI7XG4gICAgfSxcbiAgICBGTElHSFRfUEFSQU1FVEVSUzogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBGTElHSFRfUEFSQU1FVEVSUztcbiAgICB9LFxuICAgIE5FWFRfUlNDX1VOSU9OX1FVRVJZOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIE5FWFRfUlNDX1VOSU9OX1FVRVJZO1xuICAgIH0sXG4gICAgTkVYVF9ESURfUE9TVFBPTkVfSEVBREVSOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIE5FWFRfRElEX1BPU1RQT05FX0hFQURFUjtcbiAgICB9XG59KTtcbmNvbnN0IFJTQ19IRUFERVIgPSBcIlJTQ1wiO1xuY29uc3QgQUNUSU9OID0gXCJOZXh0LUFjdGlvblwiO1xuY29uc3QgTkVYVF9ST1VURVJfU1RBVEVfVFJFRSA9IFwiTmV4dC1Sb3V0ZXItU3RhdGUtVHJlZVwiO1xuY29uc3QgTkVYVF9ST1VURVJfUFJFRkVUQ0hfSEVBREVSID0gXCJOZXh0LVJvdXRlci1QcmVmZXRjaFwiO1xuY29uc3QgTkVYVF9VUkwgPSBcIk5leHQtVXJsXCI7XG5jb25zdCBSU0NfQ09OVEVOVF9UWVBFX0hFQURFUiA9IFwidGV4dC94LWNvbXBvbmVudFwiO1xuY29uc3QgUlNDX1ZBUllfSEVBREVSID0gUlNDX0hFQURFUiArIFwiLCBcIiArIE5FWFRfUk9VVEVSX1NUQVRFX1RSRUUgKyBcIiwgXCIgKyBORVhUX1JPVVRFUl9QUkVGRVRDSF9IRUFERVIgKyBcIiwgXCIgKyBORVhUX1VSTDtcbmNvbnN0IEZMSUdIVF9QQVJBTUVURVJTID0gW1xuICAgIFtcbiAgICAgICAgUlNDX0hFQURFUlxuICAgIF0sXG4gICAgW1xuICAgICAgICBORVhUX1JPVVRFUl9TVEFURV9UUkVFXG4gICAgXSxcbiAgICBbXG4gICAgICAgIE5FWFRfUk9VVEVSX1BSRUZFVENIX0hFQURFUlxuICAgIF1cbl07XG5jb25zdCBORVhUX1JTQ19VTklPTl9RVUVSWSA9IFwiX3JzY1wiO1xuY29uc3QgTkVYVF9ESURfUE9TVFBPTkVfSEVBREVSID0gXCJ4LW5leHRqcy1wb3N0cG9uZWRcIjtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YXBwLXJvdXRlci1oZWFkZXJzLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsIm1vZHVsZSIsIlJTQ19IRUFERVIiLCJBQ1RJT04iLCJORVhUX1JPVVRFUl9TVEFURV9UUkVFIiwiTkVYVF9ST1VURVJfUFJFRkVUQ0hfSEVBREVSIiwiTkVYVF9VUkwiLCJSU0NfQ09OVEVOVF9UWVBFX0hFQURFUiIsIlJTQ19WQVJZX0hFQURFUiIsIkZMSUdIVF9QQVJBTUVURVJTIiwiTkVYVF9SU0NfVU5JT05fUVVFUlkiLCJORVhUX0RJRF9QT1NUUE9ORV9IRUFERVIiLCJfZXhwb3J0IiwidGFyZ2V0IiwiYWxsIiwibmFtZSIsImVudW1lcmFibGUiLCJnZXQiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router-headers.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/app-router.js": /*!****************************************************************!*\ !*** ./node_modules/next/dist/client/components/app-router.js ***! \****************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n getServerActionDispatcher: function() {\n return getServerActionDispatcher;\n },\n urlToUrlWithoutFlightMarker: function() {\n return urlToUrlWithoutFlightMarker;\n },\n createEmptyCacheNode: function() {\n return createEmptyCacheNode;\n },\n default: function() {\n return AppRouter;\n }\n});\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _routerreducertypes = __webpack_require__(/*! ./router-reducer/router-reducer-types */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/router-reducer-types.js\");\nconst _createhreffromurl = __webpack_require__(/*! ./router-reducer/create-href-from-url */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-href-from-url.js\");\nconst _hooksclientcontextsharedruntime = __webpack_require__(/*! ../../shared/lib/hooks-client-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js\");\nconst _usereducerwithdevtools = __webpack_require__(/*! ./use-reducer-with-devtools */ \"(ssr)/./node_modules/next/dist/client/components/use-reducer-with-devtools.js\");\nconst _errorboundary = __webpack_require__(/*! ./error-boundary */ \"(ssr)/./node_modules/next/dist/client/components/error-boundary.js\");\nconst _createinitialrouterstate = __webpack_require__(/*! ./router-reducer/create-initial-router-state */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js\");\nconst _isbot = __webpack_require__(/*! ../../shared/lib/router/utils/is-bot */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/is-bot.js\");\nconst _addbasepath = __webpack_require__(/*! ../add-base-path */ \"(ssr)/./node_modules/next/dist/client/add-base-path.js\");\nconst _approuterannouncer = __webpack_require__(/*! ./app-router-announcer */ \"(ssr)/./node_modules/next/dist/client/components/app-router-announcer.js\");\nconst _redirectboundary = __webpack_require__(/*! ./redirect-boundary */ \"(ssr)/./node_modules/next/dist/client/components/redirect-boundary.js\");\nconst _findheadincache = __webpack_require__(/*! ./router-reducer/reducers/find-head-in-cache */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/find-head-in-cache.js\");\nconst _infinitepromise = __webpack_require__(/*! ./infinite-promise */ \"(ssr)/./node_modules/next/dist/client/components/infinite-promise.js\");\nconst _approuterheaders = __webpack_require__(/*! ./app-router-headers */ \"(ssr)/./node_modules/next/dist/client/components/app-router-headers.js\");\nconst _removebasepath = __webpack_require__(/*! ../remove-base-path */ \"(ssr)/./node_modules/next/dist/client/remove-base-path.js\");\nconst _hasbasepath = __webpack_require__(/*! ../has-base-path */ \"(ssr)/./node_modules/next/dist/client/has-base-path.js\");\nconst isServer = \"undefined\" === \"undefined\";\n// Ensure the initialParallelRoutes are not combined because of double-rendering in the browser with Strict Mode.\nlet initialParallelRoutes = isServer ? null : new Map();\nlet globalServerActionDispatcher = null;\nfunction getServerActionDispatcher() {\n return globalServerActionDispatcher;\n}\nconst globalMutable = {};\nfunction urlToUrlWithoutFlightMarker(url) {\n const urlWithoutFlightParameters = new URL(url, location.origin);\n urlWithoutFlightParameters.searchParams.delete(_approuterheaders.NEXT_RSC_UNION_QUERY);\n if (false) {}\n return urlWithoutFlightParameters;\n}\nfunction isExternalURL(url) {\n return url.origin !== window.location.origin;\n}\nfunction HistoryUpdater(param) {\n let { appRouterState, sync } = param;\n (0, _react.useInsertionEffect)(()=>{\n const { tree, pushRef, canonicalUrl } = appRouterState;\n const historyState = {\n ... false ? 0 : {},\n // Identifier is shortened intentionally.\n // __NA is used to identify if the history entry can be handled by the app-router.\n // __N is used to identify if the history entry can be handled by the old router.\n __NA: true,\n __PRIVATE_NEXTJS_INTERNALS_TREE: tree\n };\n if (pushRef.pendingPush && // Skip pushing an additional history entry if the canonicalUrl is the same as the current url.\n // This mirrors the browser behavior for normal navigation.\n (0, _createhreffromurl.createHrefFromUrl)(new URL(window.location.href)) !== canonicalUrl) {\n // This intentionally mutates React state, pushRef is overwritten to ensure additional push/replace calls do not trigger an additional history entry.\n pushRef.pendingPush = false;\n window.history.pushState(historyState, \"\", canonicalUrl);\n } else {\n window.history.replaceState(historyState, \"\", canonicalUrl);\n }\n sync(appRouterState);\n }, [\n appRouterState,\n sync\n ]);\n return null;\n}\nconst createEmptyCacheNode = ()=>({\n status: _approutercontextsharedruntime.CacheStates.LAZY_INITIALIZED,\n data: null,\n subTreeData: null,\n parallelRoutes: new Map()\n });\nfunction useServerActionDispatcher(dispatch) {\n const serverActionDispatcher = (0, _react.useCallback)((actionPayload)=>{\n (0, _react.startTransition)(()=>{\n dispatch({\n ...actionPayload,\n type: _routerreducertypes.ACTION_SERVER_ACTION\n });\n });\n }, [\n dispatch\n ]);\n globalServerActionDispatcher = serverActionDispatcher;\n}\n/**\n * Server response that only patches the cache and tree.\n */ function useChangeByServerResponse(dispatch) {\n return (0, _react.useCallback)((previousTree, flightData, overrideCanonicalUrl)=>{\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_SERVER_PATCH,\n flightData,\n previousTree,\n overrideCanonicalUrl\n });\n });\n }, [\n dispatch\n ]);\n}\nfunction useNavigate(dispatch) {\n return (0, _react.useCallback)((href, navigateType, shouldScroll)=>{\n const url = new URL((0, _addbasepath.addBasePath)(href), location.href);\n return dispatch({\n type: _routerreducertypes.ACTION_NAVIGATE,\n url,\n isExternalUrl: isExternalURL(url),\n locationSearch: location.search,\n shouldScroll: shouldScroll != null ? shouldScroll : true,\n navigateType\n });\n }, [\n dispatch\n ]);\n}\nfunction copyNextJsInternalHistoryState(data) {\n if (data == null) data = {};\n const currentState = window.history.state;\n const __NA = currentState == null ? void 0 : currentState.__NA;\n if (__NA) {\n data.__NA = __NA;\n }\n const __PRIVATE_NEXTJS_INTERNALS_TREE = currentState == null ? void 0 : currentState.__PRIVATE_NEXTJS_INTERNALS_TREE;\n if (__PRIVATE_NEXTJS_INTERNALS_TREE) {\n data.__PRIVATE_NEXTJS_INTERNALS_TREE = __PRIVATE_NEXTJS_INTERNALS_TREE;\n }\n return data;\n}\n/**\n * The global router that wraps the application components.\n */ function Router(param) {\n let { buildId, initialHead, initialTree, initialCanonicalUrl, initialSeedData, assetPrefix } = param;\n const initialState = (0, _react.useMemo)(()=>(0, _createinitialrouterstate.createInitialRouterState)({\n buildId,\n initialSeedData,\n initialCanonicalUrl,\n initialTree,\n initialParallelRoutes,\n isServer,\n location: !isServer ? window.location : null,\n initialHead\n }), [\n buildId,\n initialSeedData,\n initialCanonicalUrl,\n initialTree,\n initialHead\n ]);\n const [reducerState, dispatch, sync] = (0, _usereducerwithdevtools.useReducerWithReduxDevtools)(initialState);\n (0, _react.useEffect)(()=>{\n // Ensure initialParallelRoutes is cleaned up from memory once it's used.\n initialParallelRoutes = null;\n }, []);\n const { canonicalUrl } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n // Add memoized pathname/query for useSearchParams and usePathname.\n const { searchParams, pathname } = (0, _react.useMemo)(()=>{\n const url = new URL(canonicalUrl, true ? \"http://n\" : 0);\n return {\n // This is turned into a readonly class in `useSearchParams`\n searchParams: url.searchParams,\n pathname: (0, _hasbasepath.hasBasePath)(url.pathname) ? (0, _removebasepath.removeBasePath)(url.pathname) : url.pathname\n };\n }, [\n canonicalUrl\n ]);\n const changeByServerResponse = useChangeByServerResponse(dispatch);\n const navigate = useNavigate(dispatch);\n useServerActionDispatcher(dispatch);\n /**\n * The app router that is exposed through `useRouter`. It's only concerned with dispatching actions to the reducer, does not hold state.\n */ const appRouter = (0, _react.useMemo)(()=>{\n const routerInstance = {\n back: ()=>window.history.back(),\n forward: ()=>window.history.forward(),\n prefetch: (href, options)=>{\n // Don't prefetch for bots as they don't navigate.\n // Don't prefetch during development (improves compilation performance)\n if ((0, _isbot.isBot)(window.navigator.userAgent) || \"development\" === \"development\") {\n return;\n }\n const url = new URL((0, _addbasepath.addBasePath)(href), window.location.href);\n // External urls can't be prefetched in the same way.\n if (isExternalURL(url)) {\n return;\n }\n (0, _react.startTransition)(()=>{\n var _options_kind;\n dispatch({\n type: _routerreducertypes.ACTION_PREFETCH,\n url,\n kind: (_options_kind = options == null ? void 0 : options.kind) != null ? _options_kind : _routerreducertypes.PrefetchKind.FULL\n });\n });\n },\n replace: (href, options)=>{\n if (options === void 0) options = {};\n (0, _react.startTransition)(()=>{\n var _options_scroll;\n navigate(href, \"replace\", (_options_scroll = options.scroll) != null ? _options_scroll : true);\n });\n },\n push: (href, options)=>{\n if (options === void 0) options = {};\n (0, _react.startTransition)(()=>{\n var _options_scroll;\n navigate(href, \"push\", (_options_scroll = options.scroll) != null ? _options_scroll : true);\n });\n },\n refresh: ()=>{\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_REFRESH,\n origin: window.location.origin\n });\n });\n },\n // @ts-ignore we don't want to expose this method at all\n fastRefresh: ()=>{\n if (false) {} else {\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_FAST_REFRESH,\n origin: window.location.origin\n });\n });\n }\n }\n };\n return routerInstance;\n }, [\n dispatch,\n navigate\n ]);\n (0, _react.useEffect)(()=>{\n // Exists for debugging purposes. Don't use in application code.\n if (window.next) {\n window.next.router = appRouter;\n }\n }, [\n appRouter\n ]);\n if (true) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { cache, prefetchCache, tree } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n // This hook is in a conditional but that is ok because `process.env.NODE_ENV` never changes\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, _react.useEffect)(()=>{\n // Add `window.nd` for debugging purposes.\n // This is not meant for use in applications as concurrent rendering will affect the cache/tree/router.\n // @ts-ignore this is for debugging\n window.nd = {\n router: appRouter,\n cache,\n prefetchCache,\n tree\n };\n }, [\n appRouter,\n cache,\n prefetchCache,\n tree\n ]);\n }\n (0, _react.useEffect)(()=>{\n // If the app is restored from bfcache, it's possible that\n // pushRef.mpaNavigation is true, which would mean that any re-render of this component\n // would trigger the mpa navigation logic again from the lines below.\n // This will restore the router to the initial state in the event that the app is restored from bfcache.\n function handlePageShow(event) {\n var _window_history_state;\n if (!event.persisted || !((_window_history_state = window.history.state) == null ? void 0 : _window_history_state.__PRIVATE_NEXTJS_INTERNALS_TREE)) {\n return;\n }\n dispatch({\n type: _routerreducertypes.ACTION_RESTORE,\n url: new URL(window.location.href),\n tree: window.history.state.__PRIVATE_NEXTJS_INTERNALS_TREE\n });\n }\n window.addEventListener(\"pageshow\", handlePageShow);\n return ()=>{\n window.removeEventListener(\"pageshow\", handlePageShow);\n };\n }, [\n dispatch\n ]);\n // When mpaNavigation flag is set do a hard navigation to the new url.\n // Infinitely suspend because we don't actually want to rerender any child\n // components with the new URL and any entangled state updates shouldn't\n // commit either (eg: useTransition isPending should stay true until the page\n // unloads).\n //\n // This is a side effect in render. Don't try this at home, kids. It's\n // probably safe because we know this is a singleton component and it's never\n // in . At least I hope so. (It will run twice in dev strict mode,\n // but that's... fine?)\n const { pushRef } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n if (pushRef.mpaNavigation) {\n // if there's a re-render, we don't want to trigger another redirect if one is already in flight to the same URL\n if (globalMutable.pendingMpaPath !== canonicalUrl) {\n const location1 = window.location;\n if (pushRef.pendingPush) {\n location1.assign(canonicalUrl);\n } else {\n location1.replace(canonicalUrl);\n }\n globalMutable.pendingMpaPath = canonicalUrl;\n }\n // TODO-APP: Should we listen to navigateerror here to catch failed\n // navigations somehow? And should we call window.stop() if a SPA navigation\n // should interrupt an MPA one?\n (0, _react.use)((0, _infinitepromise.createInfinitePromise)());\n }\n (0, _react.useEffect)(()=>{\n const originalPushState = window.history.pushState.bind(window.history);\n const originalReplaceState = window.history.replaceState.bind(window.history);\n if (false) {}\n /**\n * Handle popstate event, this is used to handle back/forward in the browser.\n * By default dispatches ACTION_RESTORE, however if the history entry was not pushed/replaced by app-router it will reload the page.\n * That case can happen when the old router injected the history entry.\n */ const onPopState = (param)=>{\n let { state } = param;\n if (!state) {\n // TODO-APP: this case only happens when pushState/replaceState was called outside of Next.js. It should probably reload the page in this case.\n return;\n }\n // This case happens when the history entry was pushed by the `pages` router.\n if (!state.__NA) {\n window.location.reload();\n return;\n }\n // @ts-ignore useTransition exists\n // TODO-APP: Ideally the back button should not use startTransition as it should apply the updates synchronously\n // Without startTransition works if the cache is there for this path\n (0, _react.startTransition)(()=>{\n dispatch({\n type: _routerreducertypes.ACTION_RESTORE,\n url: new URL(window.location.href),\n tree: state.__PRIVATE_NEXTJS_INTERNALS_TREE\n });\n });\n };\n // Register popstate event to call onPopstate.\n window.addEventListener(\"popstate\", onPopState);\n return ()=>{\n if (false) {}\n window.removeEventListener(\"popstate\", onPopState);\n };\n }, [\n dispatch\n ]);\n const { cache, tree, nextUrl, focusAndScrollRef } = (0, _usereducerwithdevtools.useUnwrapState)(reducerState);\n const head = (0, _react.useMemo)(()=>{\n return (0, _findheadincache.findHeadInCache)(cache, tree[1]);\n }, [\n cache,\n tree\n ]);\n let content = /*#__PURE__*/ _react.default.createElement(_redirectboundary.RedirectBoundary, null, head, cache.subTreeData, /*#__PURE__*/ _react.default.createElement(_approuterannouncer.AppRouterAnnouncer, {\n tree: tree\n }));\n if (true) {\n if (false) {}\n const HotReloader = (__webpack_require__(/*! ./react-dev-overlay/hot-reloader-client */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/hot-reloader-client.js\")[\"default\"]);\n content = /*#__PURE__*/ _react.default.createElement(HotReloader, {\n assetPrefix: assetPrefix\n }, content);\n }\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(HistoryUpdater, {\n appRouterState: (0, _usereducerwithdevtools.useUnwrapState)(reducerState),\n sync: sync\n }), /*#__PURE__*/ _react.default.createElement(_hooksclientcontextsharedruntime.PathnameContext.Provider, {\n value: pathname\n }, /*#__PURE__*/ _react.default.createElement(_hooksclientcontextsharedruntime.SearchParamsContext.Provider, {\n value: searchParams\n }, /*#__PURE__*/ _react.default.createElement(_approutercontextsharedruntime.GlobalLayoutRouterContext.Provider, {\n value: {\n buildId,\n changeByServerResponse,\n tree,\n focusAndScrollRef,\n nextUrl\n }\n }, /*#__PURE__*/ _react.default.createElement(_approutercontextsharedruntime.AppRouterContext.Provider, {\n value: appRouter\n }, /*#__PURE__*/ _react.default.createElement(_approutercontextsharedruntime.LayoutRouterContext.Provider, {\n value: {\n childNodes: cache.parallelRoutes,\n tree,\n // Root node always has `url`\n // Provided in AppTreeContext to ensure it can be overwritten in layout-router\n url: canonicalUrl\n }\n }, content))))));\n}\nfunction AppRouter(props) {\n const { globalErrorComponent, ...rest } = props;\n return /*#__PURE__*/ _react.default.createElement(_errorboundary.ErrorBoundary, {\n errorComponent: globalErrorComponent\n }, /*#__PURE__*/ _react.default.createElement(Router, rest));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=app-router.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXIuanMiLCJtYXBwaW5ncyI6InFEQUVhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGLEtBQU1DLENBQUFBLENBS047QUFDQSxTQUFTSyxRQUFRQyxNQUFNLEVBQUVDLEdBQUc7SUFDeEIsSUFBSSxJQUFJQyxRQUFRRCxJQUFJWCxPQUFPQyxjQUFjLENBQUNTLFFBQVFFLE1BQU07UUFDcERDLFlBQVk7UUFDWkMsS0FBS0gsR0FBRyxDQUFDQyxLQUFLO0lBQ2xCO0FBQ0o7QUFDQUgsUUFBUVAsU0FBUztJQUNiRywyQkFBMkI7UUFDdkIsT0FBT0E7SUFDWDtJQUNBQyw2QkFBNkI7UUFDekIsT0FBT0E7SUFDWDtJQUNBQyxzQkFBc0I7UUFDbEIsT0FBT0E7SUFDWDtJQUNBQyxTQUFTO1FBQ0wsT0FBT087SUFDWDtBQUNKO0FBQ0EsTUFBTUMsNEJBQTRCQyxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLDBCQUEwQkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNRyxpQ0FBaUNILG1CQUFPQSxDQUFDLHVLQUFvRDtBQUNuRyxNQUFNSSxzQkFBc0JKLG1CQUFPQSxDQUFDLHNJQUF1QztBQUMzRSxNQUFNSyxxQkFBcUJMLG1CQUFPQSxDQUFDLHNJQUF1QztBQUMxRSxNQUFNTSxtQ0FBbUNOLG1CQUFPQSxDQUFDLDJLQUFzRDtBQUN2RyxNQUFNTywwQkFBMEJQLG1CQUFPQSxDQUFDLGtIQUE2QjtBQUNyRSxNQUFNUSxpQkFBaUJSLG1CQUFPQSxDQUFDLDRGQUFrQjtBQUNqRCxNQUFNUyw0QkFBNEJULG1CQUFPQSxDQUFDLG9KQUE4QztBQUN4RixNQUFNVSxTQUFTVixtQkFBT0EsQ0FBQyw4R0FBc0M7QUFDN0QsTUFBTVcsZUFBZVgsbUJBQU9BLENBQUMsZ0ZBQWtCO0FBQy9D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QUFDakssUUFBUU0sT0FBTyxFQUFFTjtJQUMvQkUsT0FBT0YsT0FBTyxHQUFHQSxRQUFRTSxPQUFPO0FBQ2xDLEVBRUEsc0NBQXNDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2FwcC1yb3V0ZXIuanM/NDE1OSJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBnZXRTZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyOiBudWxsLFxuICAgIHVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcjogbnVsbCxcbiAgICBjcmVhdGVFbXB0eUNhY2hlTm9kZTogbnVsbCxcbiAgICBkZWZhdWx0OiBudWxsXG59KTtcbmZ1bmN0aW9uIF9leHBvcnQodGFyZ2V0LCBhbGwpIHtcbiAgICBmb3IodmFyIG5hbWUgaW4gYWxsKU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIG5hbWUsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBhbGxbbmFtZV1cbiAgICB9KTtcbn1cbl9leHBvcnQoZXhwb3J0cywge1xuICAgIGdldFNlcnZlckFjdGlvbkRpc3BhdGNoZXI6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gZ2V0U2VydmVyQWN0aW9uRGlzcGF0Y2hlcjtcbiAgICB9LFxuICAgIHVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcjogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB1cmxUb1VybFdpdGhvdXRGbGlnaHRNYXJrZXI7XG4gICAgfSxcbiAgICBjcmVhdGVFbXB0eUNhY2hlTm9kZTogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVFbXB0eUNhY2hlTm9kZTtcbiAgICB9LFxuICAgIGRlZmF1bHQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gQXBwUm91dGVyO1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkXCIpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLl8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmNvbnN0IF9hcHByb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZSA9IHJlcXVpcmUoXCIuLi8uLi9zaGFyZWQvbGliL2FwcC1yb3V0ZXItY29udGV4dC5zaGFyZWQtcnVudGltZVwiKTtcbmNvbnN0IF9yb3V0ZXJyZWR1Y2VydHlwZXMgPSByZXF1aXJlKFwiLi9yb3V0ZXItcmVkdWNlci9yb3V0ZXItcmVkdWNlci10eXBlc1wiKTtcbmNvbnN0IF9jcmVhdGVocmVmZnJvbXVybCA9IHJlcXVpcmUoXCIuL3JvdXRlci1yZWR1Y2VyL2NyZWF0ZS1ocmVmLWZyb20tdXJsXCIpO1xuY29uc3QgX2hvb2tzY2xpZW50Y29udGV4dHNoYXJlZHJ1bnRpbWUgPSByZXF1aXJlKFwiLi4vLi4vc2hhcmVkL2xpYi9ob29rcy1jbGllbnQtY29udGV4dC5zaGFyZWQtcnVudGltZVwiKTtcbmNvbnN0IF91c2VyZWR1Y2Vyd2l0aGRldnRvb2xzID0gcmVxdWlyZShcIi4vdXNlLXJlZHVjZXItd2l0aC1kZXZ0b29sc1wiKTtcbmNvbnN0IF9lcnJvcmJvdW5kYXJ5ID0gcmVxdWlyZShcIi4vZXJyb3ItYm91bmRhcnlcIik7XG5jb25zdCBfY3JlYXRlaW5pdGlhbHJvdXRlcnN0YXRlID0gcmVxdWlyZShcIi4vcm91dGVyLXJlZHVjZXIvY3JlYXRlLWluaXRpYWwtcm91dGVyLXN0YXRlXCIpO1xuY29uc3QgX2lzYm90ID0gcmVxdWlyZShcIi4uLy4uL3NoYXJlZC9saWIvcm91dGVyL3V0aWxzL2lzLWJvdFwiKTtcbmNvbnN0IF9hZGRiYXNlcGF0aCA9IHJlcXVpcmUoXCIuLi9hZGQtYmFzZS1wYXRoXCIpO1xuY29uc3QgX2FwcHJvdXRlcmFubm91bmNlciA9IHJlcXVpcmUoXCIuL2FwcC1yb3V0ZXItYW5ub3VuY2VyXCIpO1xuY29uc3QgX3JlZGlyZWN0Ym91bmRhcnkgPSByZXF1aXJlKFwiLi9yZWRpcmVjdC1ib3VuZGFyeVwiKTtcbmNvbnN0IF9maW5kaGVhZGluY2FjaGUgPSByZXF1aXJlKFwiLi9yb3V0ZXItcmVkdWNlci9yZWR1Y2Vycy9maW5kLWhlYWQtaW4tY2FjaGVcIik7XG5jb25zdCBfaW5maW5pdGVwcm9taXNlID0gcmVxdWlyZShcIi4vaW5maW5pdGUtcHJvbWlzZVwiKTtcbmNvbnN0IF9hcHByb3V0ZXJoZWFkZXJzID0gcmVxdWlyZShcIi4vYXBwLXJvdXRlci1oZWFkZXJzXCIpO1xuY29uc3QgX3JlbW92ZWJhc2VwYXRoID0gcmVxdWlyZShcIi4uL3JlbW92ZS1iYXNlLXBhdGhcIik7XG5jb25zdCBfaGFzYmFzZXBhdGggPSByZXF1aXJlKFwiLi4vaGFzLWJhc2UtcGF0aFwiKTtcbmNvbnN0IGlzU2VydmVyID0gdHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIjtcbi8vIEVuc3VyZSB0aGUgaW5pdGlhbFBhcmFsbGVsUm91dGVzIGFyZSBub3QgY29tYmluZWQgYmVjYXVzZSBvZiBkb3VibGUtcmVuZGVyaW5nIGluIHRoZSBicm93c2VyIHdpdGggU3RyaWN0IE1vZGUuXG5sZXQgaW5pdGlhbFBhcmFsbGVsUm91dGVzID0gaXNTZXJ2ZXIgPyBudWxsIDogbmV3IE1hcCgpO1xubGV0IGdsb2JhbFNlcnZlckFjdGlvbkRpc3BhdGNoZXIgPSBudWxsO1xuZnVuY3Rpb24gZ2V0U2VydmVyQWN0aW9uRGlzcGF0Y2hlcigpIHtcbiAgICByZXR1cm4gZ2xvYmFsU2VydmVyQWN0aW9uRGlzcGF0Y2hlcjtcbn1cbmNvbnN0IGdsb2JhbE11dGFibGUgPSB7fTtcbmZ1bmN0aW9uIHVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlcih1cmwpIHtcbiAgICBjb25zdCB1cmxXaXRob3V0RmxpZ2h0UGFyYW1ldGVycyA9IG5ldyBVUkwodXJsLCBsb2NhdGlvbi5vcmlnaW4pO1xuICAgIHVybFdpdGhvdXRGbGlnaHRQYXJhbWV0ZXJzLnNlYXJjaFBhcmFtcy5kZWxldGUoX2FwcHJvdXRlcmhlYWRlcnMuTkVYVF9SU0NfVU5JT05fUVVFUlkpO1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9DT05GSUdfT1VUUFVUID09PSBcImV4cG9ydFwiICYmIHVybFdpdGhvdXRGbGlnaHRQYXJhbWV0ZXJzLnBhdGhuYW1lLmVuZHNXaXRoKFwiLnR4dFwiKSkge1xuICAgICAgICAgICAgY29uc3QgeyBwYXRobmFtZSB9ID0gdXJsV2l0aG91dEZsaWdodFBhcmFtZXRlcnM7XG4gICAgICAgICAgICBjb25zdCBsZW5ndGggPSBwYXRobmFtZS5lbmRzV2l0aChcIi9pbmRleC50eHRcIikgPyAxMCA6IDQ7XG4gICAgICAgICAgICAvLyBTbGljZSBvZmYgYC9pbmRleC50eHRgIG9yIGAudHh0YCBmcm9tIHRoZSBlbmQgb2YgdGhlIHBhdGhuYW1lXG4gICAgICAgICAgICB1cmxXaXRob3V0RmxpZ2h0UGFyYW1ldGVycy5wYXRobmFtZSA9IHBhdGhuYW1lLnNsaWNlKDAsIC1sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1cmxXaXRob3V0RmxpZ2h0UGFyYW1ldGVycztcbn1cbmZ1bmN0aW9uIGlzRXh0ZXJuYWxVUkwodXJsKSB7XG4gICAgcmV0dXJuIHVybC5vcmlnaW4gIT09IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XG59XG5mdW5jdGlvbiBIaXN0b3J5VXBkYXRlcihwYXJhbSkge1xuICAgIGxldCB7IGFwcFJvdXRlclN0YXRlLCBzeW5jIH0gPSBwYXJhbTtcbiAgICAoMCwgX3JlYWN0LnVzZUluc2VydGlvbkVmZmVjdCkoKCk9PntcbiAgICAgICAgY29uc3QgeyB0cmVlLCBwdXNoUmVmLCBjYW5vbmljYWxVcmwgfSA9IGFwcFJvdXRlclN0YXRlO1xuICAgICAgICBjb25zdCBoaXN0b3J5U3RhdGUgPSB7XG4gICAgICAgICAgICAuLi5wcm9jZXNzLmVudi5fX05FWFRfV0lORE9XX0hJU1RPUllfU1VQUE9SVCAmJiBwdXNoUmVmLnByZXNlcnZlQ3VzdG9tSGlzdG9yeVN0YXRlID8gd2luZG93Lmhpc3Rvcnkuc3RhdGUgOiB7fSxcbiAgICAgICAgICAgIC8vIElkZW50aWZpZXIgaXMgc2hvcnRlbmVkIGludGVudGlvbmFsbHkuXG4gICAgICAgICAgICAvLyBfX05BIGlzIHVzZWQgdG8gaWRlbnRpZnkgaWYgdGhlIGhpc3RvcnkgZW50cnkgY2FuIGJlIGhhbmRsZWQgYnkgdGhlIGFwcC1yb3V0ZXIuXG4gICAgICAgICAgICAvLyBfX04gaXMgdXNlZCB0byBpZGVudGlmeSBpZiB0aGUgaGlzdG9yeSBlbnRyeSBjYW4gYmUgaGFuZGxlZCBieSB0aGUgb2xkIHJvdXRlci5cbiAgICAgICAgICAgIF9fTkE6IHRydWUsXG4gICAgICAgICAgICBfX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFOiB0cmVlXG4gICAgICAgIH07XG4gICAgICAgIGlmIChwdXNoUmVmLnBlbmRpbmdQdXNoICYmIC8vIFNraXAgcHVzaGluZyBhbiBhZGRpdGlvbmFsIGhpc3RvcnkgZW50cnkgaWYgdGhlIGNhbm9uaWNhbFVybCBpcyB0aGUgc2FtZSBhcyB0aGUgY3VycmVudCB1cmwuXG4gICAgICAgIC8vIFRoaXMgbWlycm9ycyB0aGUgYnJvd3NlciBiZWhhdmlvciBmb3Igbm9ybWFsIG5hdmlnYXRpb24uXG4gICAgICAgICgwLCBfY3JlYXRlaHJlZmZyb211cmwuY3JlYXRlSHJlZkZyb21VcmwpKG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpKSAhPT0gY2Fub25pY2FsVXJsKSB7XG4gICAgICAgICAgICAvLyBUaGlzIGludGVudGlvbmFsbHkgbXV0YXRlcyBSZWFjdCBzdGF0ZSwgcHVzaFJlZiBpcyBvdmVyd3JpdHRlbiB0byBlbnN1cmUgYWRkaXRpb25hbCBwdXNoL3JlcGxhY2UgY2FsbHMgZG8gbm90IHRyaWdnZXIgYW4gYWRkaXRpb25hbCBoaXN0b3J5IGVudHJ5LlxuICAgICAgICAgICAgcHVzaFJlZi5wZW5kaW5nUHVzaCA9IGZhbHNlO1xuICAgICAgICAgICAgd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlKGhpc3RvcnlTdGF0ZSwgXCJcIiwgY2Fub25pY2FsVXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHdpbmRvdy5oaXN0b3J5LnJlcGxhY2VTdGF0ZShoaXN0b3J5U3RhdGUsIFwiXCIsIGNhbm9uaWNhbFVybCk7XG4gICAgICAgIH1cbiAgICAgICAgc3luYyhhcHBSb3V0ZXJTdGF0ZSk7XG4gICAgfSwgW1xuICAgICAgICBhcHBSb3V0ZXJTdGF0ZSxcbiAgICAgICAgc3luY1xuICAgIF0pO1xuICAgIHJldHVybiBudWxsO1xufVxuY29uc3QgY3JlYXRlRW1wdHlDYWNoZU5vZGUgPSAoKT0+KHtcbiAgICAgICAgc3RhdHVzOiBfYXBwcm91dGVyY29udGV4dHNoYXJlZHJ1bnRpbWUuQ2FjaGVTdGF0ZXMuTEFaWV9JTklUSUFMSVpFRCxcbiAgICAgICAgZGF0YTogbnVsbCxcbiAgICAgICAgc3ViVHJlZURhdGE6IG51bGwsXG4gICAgICAgIHBhcmFsbGVsUm91dGVzOiBuZXcgTWFwKClcbiAgICB9KTtcbmZ1bmN0aW9uIHVzZVNlcnZlckFjdGlvbkRpc3BhdGNoZXIoZGlzcGF0Y2gpIHtcbiAgICBjb25zdCBzZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyID0gKDAsIF9yZWFjdC51c2VDYWxsYmFjaykoKGFjdGlvblBheWxvYWQpPT57XG4gICAgICAgICgwLCBfcmVhY3Quc3RhcnRUcmFuc2l0aW9uKSgoKT0+e1xuICAgICAgICAgICAgZGlzcGF0Y2goe1xuICAgICAgICAgICAgICAgIC4uLmFjdGlvblBheWxvYWQsXG4gICAgICAgICAgICAgICAgdHlwZTogX3JvdXRlcnJlZHVjZXJ0eXBlcy5BQ1RJT05fU0VSVkVSX0FDVElPTlxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH0sIFtcbiAgICAgICAgZGlzcGF0Y2hcbiAgICBdKTtcbiAgICBnbG9iYWxTZXJ2ZXJBY3Rpb25EaXNwYXRjaGVyID0gc2VydmVyQWN0aW9uRGlzcGF0Y2hlcjtcbn1cbi8qKlxuICogU2VydmVyIHJlc3BvbnNlIHRoYXQgb25seSBwYXRjaGVzIHRoZSBjYWNoZSBhbmQgdHJlZS5cbiAqLyBmdW5jdGlvbiB1c2VDaGFuZ2VCeVNlcnZlclJlc3BvbnNlKGRpc3BhdGNoKSB7XG4gICAgcmV0dXJuICgwLCBfcmVhY3QudXNlQ2FsbGJhY2spKChwcmV2aW91c1RyZWUsIGZsaWdodERhdGEsIG92ZXJyaWRlQ2Fub25pY2FsVXJsKT0+e1xuICAgICAgICAoMCwgX3JlYWN0LnN0YXJ0VHJhbnNpdGlvbikoKCk9PntcbiAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBfcm91dGVycmVkdWNlcnR5cGVzLkFDVElPTl9TRVJWRVJfUEFUQ0gsXG4gICAgICAgICAgICAgICAgZmxpZ2h0RGF0YSxcbiAgICAgICAgICAgICAgICBwcmV2aW91c1RyZWUsXG4gICAgICAgICAgICAgICAgb3ZlcnJpZGVDYW5vbmljYWxVcmxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9LCBbXG4gICAgICAgIGRpc3BhdGNoXG4gICAgXSk7XG59XG5mdW5jdGlvbiB1c2VOYXZpZ2F0ZShkaXNwYXRjaCkge1xuICAgIHJldHVybiAoMCwgX3JlYWN0LnVzZUNhbGxiYWNrKSgoaHJlZiwgbmF2aWdhdGVUeXBlLCBzaG91bGRTY3JvbGwpPT57XG4gICAgICAgIGNvbnN0IHVybCA9IG5ldyBVUkwoKDAsIF9hZGRiYXNlcGF0aC5hZGRCYXNlUGF0aCkoaHJlZiksIGxvY2F0aW9uLmhyZWYpO1xuICAgICAgICByZXR1cm4gZGlzcGF0Y2goe1xuICAgICAgICAgICAgdHlwZTogX3JvdXRlcnJlZHVjZXJ0eXBlcy5BQ1RJT05fTkFWSUdBVEUsXG4gICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICBpc0V4dGVybmFsVXJsOiBpc0V4dGVybmFsVVJMKHVybCksXG4gICAgICAgICAgICBsb2NhdGlvblNlYXJjaDogbG9jYXRpb24uc2VhcmNoLFxuICAgICAgICAgICAgc2hvdWxkU2Nyb2xsOiBzaG91bGRTY3JvbGwgIT0gbnVsbCA/IHNob3VsZFNjcm9sbCA6IHRydWUsXG4gICAgICAgICAgICBuYXZpZ2F0ZVR5cGVcbiAgICAgICAgfSk7XG4gICAgfSwgW1xuICAgICAgICBkaXNwYXRjaFxuICAgIF0pO1xufVxuZnVuY3Rpb24gY29weU5leHRKc0ludGVybmFsSGlzdG9yeVN0YXRlKGRhdGEpIHtcbiAgICBpZiAoZGF0YSA9PSBudWxsKSBkYXRhID0ge307XG4gICAgY29uc3QgY3VycmVudFN0YXRlID0gd2luZG93Lmhpc3Rvcnkuc3RhdGU7XG4gICAgY29uc3QgX19OQSA9IGN1cnJlbnRTdGF0ZSA9PSBudWxsID8gdm9pZCAwIDogY3VycmVudFN0YXRlLl9fTkE7XG4gICAgaWYgKF9fTkEpIHtcbiAgICAgICAgZGF0YS5fX05BID0gX19OQTtcbiAgICB9XG4gICAgY29uc3QgX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRSA9IGN1cnJlbnRTdGF0ZSA9PSBudWxsID8gdm9pZCAwIDogY3VycmVudFN0YXRlLl9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUU7XG4gICAgaWYgKF9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUUpIHtcbiAgICAgICAgZGF0YS5fX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFID0gX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG59XG4vKipcbiAqIFRoZSBnbG9iYWwgcm91dGVyIHRoYXQgd3JhcHMgdGhlIGFwcGxpY2F0aW9uIGNvbXBvbmVudHMuXG4gKi8gZnVuY3Rpb24gUm91dGVyKHBhcmFtKSB7XG4gICAgbGV0IHsgYnVpbGRJZCwgaW5pdGlhbEhlYWQsIGluaXRpYWxUcmVlLCBpbml0aWFsQ2Fub25pY2FsVXJsLCBpbml0aWFsU2VlZERhdGEsIGFzc2V0UHJlZml4IH0gPSBwYXJhbTtcbiAgICBjb25zdCBpbml0aWFsU3RhdGUgPSAoMCwgX3JlYWN0LnVzZU1lbW8pKCgpPT4oMCwgX2NyZWF0ZWluaXRpYWxyb3V0ZXJzdGF0ZS5jcmVhdGVJbml0aWFsUm91dGVyU3RhdGUpKHtcbiAgICAgICAgICAgIGJ1aWxkSWQsXG4gICAgICAgICAgICBpbml0aWFsU2VlZERhdGEsXG4gICAgICAgICAgICBpbml0aWFsQ2Fub25pY2FsVXJsLFxuICAgICAgICAgICAgaW5pdGlhbFRyZWUsXG4gICAgICAgICAgICBpbml0aWFsUGFyYWxsZWxSb3V0ZXMsXG4gICAgICAgICAgICBpc1NlcnZlcixcbiAgICAgICAgICAgIGxvY2F0aW9uOiAhaXNTZXJ2ZXIgPyB3aW5kb3cubG9jYXRpb24gOiBudWxsLFxuICAgICAgICAgICAgaW5pdGlhbEhlYWRcbiAgICAgICAgfSksIFtcbiAgICAgICAgYnVpbGRJZCxcbiAgICAgICAgaW5pdGlhbFNlZWREYXRhLFxuICAgICAgICBpbml0aWFsQ2Fub25pY2FsVXJsLFxuICAgICAgICBpbml0aWFsVHJlZSxcbiAgICAgICAgaW5pdGlhbEhlYWRcbiAgICBdKTtcbiAgICBjb25zdCBbcmVkdWNlclN0YXRlLCBkaXNwYXRjaCwgc3luY10gPSAoMCwgX3VzZXJlZHVjZXJ3aXRoZGV2dG9vbHMudXNlUmVkdWNlcldpdGhSZWR1eERldnRvb2xzKShpbml0aWFsU3RhdGUpO1xuICAgICgwLCBfcmVhY3QudXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICAvLyBFbnN1cmUgaW5pdGlhbFBhcmFsbGVsUm91dGVzIGlzIGNsZWFuZWQgdXAgZnJvbSBtZW1vcnkgb25jZSBpdCdzIHVzZWQuXG4gICAgICAgIGluaXRpYWxQYXJhbGxlbFJvdXRlcyA9IG51bGw7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IHsgY2Fub25pY2FsVXJsIH0gPSAoMCwgX3VzZXJlZHVjZXJ3aXRoZGV2dG9vbHMudXNlVW53cmFwU3RhdGUpKHJlZHVjZXJTdGF0ZSk7XG4gICAgLy8gQWRkIG1lbW9pemVkIHBhdGhuYW1lL3F1ZXJ5IGZvciB1c2VTZWFyY2hQYXJhbXMgYW5kIHVzZVBhdGhuYW1lLlxuICAgIGNvbnN0IHsgc2VhcmNoUGFyYW1zLCBwYXRobmFtZSB9ID0gKDAsIF9yZWFjdC51c2VNZW1vKSgoKT0+e1xuICAgICAgICBjb25zdCB1cmwgPSBuZXcgVVJMKGNhbm9uaWNhbFVybCwgdHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIiA/IFwiaHR0cDovL25cIiA6IHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC8vIFRoaXMgaXMgdHVybmVkIGludG8gYSByZWFkb25seSBjbGFzcyBpbiBgdXNlU2VhcmNoUGFyYW1zYFxuICAgICAgICAgICAgc2VhcmNoUGFyYW1zOiB1cmwuc2VhcmNoUGFyYW1zLFxuICAgICAgICAgICAgcGF0aG5hbWU6ICgwLCBfaGFzYmFzZXBhdGguaGFzQmFzZVBhdGgpKHVybC5wYXRobmFtZSkgPyAoMCwgX3JlbW92ZWJhc2VwYXRoLnJlbW92ZUJhc2VQYXRoKSh1cmwucGF0aG5hbWUpIDogdXJsLnBhdGhuYW1lXG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBjYW5vbmljYWxVcmxcbiAgICBdKTtcbiAgICBjb25zdCBjaGFuZ2VCeVNlcnZlclJlc3BvbnNlID0gdXNlQ2hhbmdlQnlTZXJ2ZXJSZXNwb25zZShkaXNwYXRjaCk7XG4gICAgY29uc3QgbmF2aWdhdGUgPSB1c2VOYXZpZ2F0ZShkaXNwYXRjaCk7XG4gICAgdXNlU2VydmVyQWN0aW9uRGlzcGF0Y2hlcihkaXNwYXRjaCk7XG4gICAgLyoqXG4gICAqIFRoZSBhcHAgcm91dGVyIHRoYXQgaXMgZXhwb3NlZCB0aHJvdWdoIGB1c2VSb3V0ZXJgLiBJdCdzIG9ubHkgY29uY2VybmVkIHdpdGggZGlzcGF0Y2hpbmcgYWN0aW9ucyB0byB0aGUgcmVkdWNlciwgZG9lcyBub3QgaG9sZCBzdGF0ZS5cbiAgICovIGNvbnN0IGFwcFJvdXRlciA9ICgwLCBfcmVhY3QudXNlTWVtbykoKCk9PntcbiAgICAgICAgY29uc3Qgcm91dGVySW5zdGFuY2UgPSB7XG4gICAgICAgICAgICBiYWNrOiAoKT0+d2luZG93Lmhpc3RvcnkuYmFjaygpLFxuICAgICAgICAgICAgZm9yd2FyZDogKCk9PndpbmRvdy5oaXN0b3J5LmZvcndhcmQoKSxcbiAgICAgICAgICAgIHByZWZldGNoOiAoaHJlZiwgb3B0aW9ucyk9PntcbiAgICAgICAgICAgICAgICAvLyBEb24ndCBwcmVmZXRjaCBmb3IgYm90cyBhcyB0aGV5IGRvbid0IG5hdmlnYXRlLlxuICAgICAgICAgICAgICAgIC8vIERvbid0IHByZWZldGNoIGR1cmluZyBkZXZlbG9wbWVudCAoaW1wcm92ZXMgY29tcGlsYXRpb24gcGVyZm9ybWFuY2UpXG4gICAgICAgICAgICAgICAgaWYgKCgwLCBfaXNib3QuaXNCb3QpKHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KSB8fCBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gXCJkZXZlbG9wbWVudFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgdXJsID0gbmV3IFVSTCgoMCwgX2FkZGJhc2VwYXRoLmFkZEJhc2VQYXRoKShocmVmKSwgd2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICAgICAgICAgICAgICAgIC8vIEV4dGVybmFsIHVybHMgY2FuJ3QgYmUgcHJlZmV0Y2hlZCBpbiB0aGUgc2FtZSB3YXkuXG4gICAgICAgICAgICAgICAgaWYgKGlzRXh0ZXJuYWxVUkwodXJsKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICgwLCBfcmVhY3Quc3RhcnRUcmFuc2l0aW9uKSgoKT0+e1xuICAgICAgICAgICAgICAgICAgICB2YXIgX29wdGlvbnNfa2luZDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogX3JvdXRlcnJlZHVjZXJ0eXBlcy5BQ1RJT05fUFJFRkVUQ0gsXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICBraW5kOiAoX29wdGlvbnNfa2luZCA9IG9wdGlvbnMgPT0gbnVsbCA/IHZvaWQgMCA6IG9wdGlvbnMua2luZCkgIT0gbnVsbCA/IF9vcHRpb25zX2tpbmQgOiBfcm91dGVycmVkdWNlcnR5cGVzLlByZWZldGNoS2luZC5GVUxMXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlcGxhY2U6IChocmVmLCBvcHRpb25zKT0+e1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zID09PSB2b2lkIDApIG9wdGlvbnMgPSB7fTtcbiAgICAgICAgICAgICAgICAoMCwgX3JlYWN0LnN0YXJ0VHJhbnNpdGlvbikoKCk9PntcbiAgICAgICAgICAgICAgICAgICAgdmFyIF9vcHRpb25zX3Njcm9sbDtcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGUoaHJlZiwgXCJyZXBsYWNlXCIsIChfb3B0aW9uc19zY3JvbGwgPSBvcHRpb25zLnNjcm9sbCkgIT0gbnVsbCA/IF9vcHRpb25zX3Njcm9sbCA6IHRydWUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHB1c2g6IChocmVmLCBvcHRpb25zKT0+e1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zID09PSB2b2lkIDApIG9wdGlvbnMgPSB7fTtcbiAgICAgICAgICAgICAgICAoMCwgX3JlYWN0LnN0YXJ0VHJhbnNpdGlvbikoKCk9PntcbiAgICAgICAgICAgICAgICAgICAgdmFyIF9vcHRpb25zX3Njcm9sbDtcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGUoaHJlZiwgXCJwdXNoXCIsIChfb3B0aW9uc19zY3JvbGwgPSBvcHRpb25zLnNjcm9sbCkgIT0gbnVsbCA/IF9vcHRpb25zX3Njcm9sbCA6IHRydWUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZnJlc2g6ICgpPT57XG4gICAgICAgICAgICAgICAgKDAsIF9yZWFjdC5zdGFydFRyYW5zaXRpb24pKCgpPT57XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IF9yb3V0ZXJyZWR1Y2VydHlwZXMuQUNUSU9OX1JFRlJFU0gsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW46IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW5cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZSB3ZSBkb24ndCB3YW50IHRvIGV4cG9zZSB0aGlzIG1ldGhvZCBhdCBhbGxcbiAgICAgICAgICAgIGZhc3RSZWZyZXNoOiAoKT0+e1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJkZXZlbG9wbWVudFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcImZhc3RSZWZyZXNoIGNhbiBvbmx5IGJlIHVzZWQgaW4gZGV2ZWxvcG1lbnQgbW9kZS4gUGxlYXNlIHVzZSByZWZyZXNoIGluc3RlYWQuXCIpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICgwLCBfcmVhY3Quc3RhcnRUcmFuc2l0aW9uKSgoKT0+e1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2goe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IF9yb3V0ZXJyZWR1Y2VydHlwZXMuQUNUSU9OX0ZBU1RfUkVGUkVTSCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmlnaW46IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW5cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiByb3V0ZXJJbnN0YW5jZTtcbiAgICB9LCBbXG4gICAgICAgIGRpc3BhdGNoLFxuICAgICAgICBuYXZpZ2F0ZVxuICAgIF0pO1xuICAgICgwLCBfcmVhY3QudXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICAvLyBFeGlzdHMgZm9yIGRlYnVnZ2luZyBwdXJwb3Nlcy4gRG9uJ3QgdXNlIGluIGFwcGxpY2F0aW9uIGNvZGUuXG4gICAgICAgIGlmICh3aW5kb3cubmV4dCkge1xuICAgICAgICAgICAgd2luZG93Lm5leHQucm91dGVyID0gYXBwUm91dGVyO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBhcHBSb3V0ZXJcbiAgICBdKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9ydWxlcy1vZi1ob29rc1xuICAgICAgICBjb25zdCB7IGNhY2hlLCBwcmVmZXRjaENhY2hlLCB0cmVlIH0gPSAoMCwgX3VzZXJlZHVjZXJ3aXRoZGV2dG9vbHMudXNlVW53cmFwU3RhdGUpKHJlZHVjZXJTdGF0ZSk7XG4gICAgICAgIC8vIFRoaXMgaG9vayBpcyBpbiBhIGNvbmRpdGlvbmFsIGJ1dCB0aGF0IGlzIG9rIGJlY2F1c2UgYHByb2Nlc3MuZW52Lk5PREVfRU5WYCBuZXZlciBjaGFuZ2VzXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9ydWxlcy1vZi1ob29rc1xuICAgICAgICAoMCwgX3JlYWN0LnVzZUVmZmVjdCkoKCk9PntcbiAgICAgICAgICAgIC8vIEFkZCBgd2luZG93Lm5kYCBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLlxuICAgICAgICAgICAgLy8gVGhpcyBpcyBub3QgbWVhbnQgZm9yIHVzZSBpbiBhcHBsaWNhdGlvbnMgYXMgY29uY3VycmVudCByZW5kZXJpbmcgd2lsbCBhZmZlY3QgdGhlIGNhY2hlL3RyZWUvcm91dGVyLlxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZSB0aGlzIGlzIGZvciBkZWJ1Z2dpbmdcbiAgICAgICAgICAgIHdpbmRvdy5uZCA9IHtcbiAgICAgICAgICAgICAgICByb3V0ZXI6IGFwcFJvdXRlcixcbiAgICAgICAgICAgICAgICBjYWNoZSxcbiAgICAgICAgICAgICAgICBwcmVmZXRjaENhY2hlLFxuICAgICAgICAgICAgICAgIHRyZWVcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0sIFtcbiAgICAgICAgICAgIGFwcFJvdXRlcixcbiAgICAgICAgICAgIGNhY2hlLFxuICAgICAgICAgICAgcHJlZmV0Y2hDYWNoZSxcbiAgICAgICAgICAgIHRyZWVcbiAgICAgICAgXSk7XG4gICAgfVxuICAgICgwLCBfcmVhY3QudXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICAvLyBJZiB0aGUgYXBwIGlzIHJlc3RvcmVkIGZyb20gYmZjYWNoZSwgaXQncyBwb3NzaWJsZSB0aGF0XG4gICAgICAgIC8vIHB1c2hSZWYubXBhTmF2aWdhdGlvbiBpcyB0cnVlLCB3aGljaCB3b3VsZCBtZWFuIHRoYXQgYW55IHJlLXJlbmRlciBvZiB0aGlzIGNvbXBvbmVudFxuICAgICAgICAvLyB3b3VsZCB0cmlnZ2VyIHRoZSBtcGEgbmF2aWdhdGlvbiBsb2dpYyBhZ2FpbiBmcm9tIHRoZSBsaW5lcyBiZWxvdy5cbiAgICAgICAgLy8gVGhpcyB3aWxsIHJlc3RvcmUgdGhlIHJvdXRlciB0byB0aGUgaW5pdGlhbCBzdGF0ZSBpbiB0aGUgZXZlbnQgdGhhdCB0aGUgYXBwIGlzIHJlc3RvcmVkIGZyb20gYmZjYWNoZS5cbiAgICAgICAgZnVuY3Rpb24gaGFuZGxlUGFnZVNob3coZXZlbnQpIHtcbiAgICAgICAgICAgIHZhciBfd2luZG93X2hpc3Rvcnlfc3RhdGU7XG4gICAgICAgICAgICBpZiAoIWV2ZW50LnBlcnNpc3RlZCB8fCAhKChfd2luZG93X2hpc3Rvcnlfc3RhdGUgPSB3aW5kb3cuaGlzdG9yeS5zdGF0ZSkgPT0gbnVsbCA/IHZvaWQgMCA6IF93aW5kb3dfaGlzdG9yeV9zdGF0ZS5fX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICB0eXBlOiBfcm91dGVycmVkdWNlcnR5cGVzLkFDVElPTl9SRVNUT1JFLFxuICAgICAgICAgICAgICAgIHVybDogbmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZiksXG4gICAgICAgICAgICAgICAgdHJlZTogd2luZG93Lmhpc3Rvcnkuc3RhdGUuX19QUklWQVRFX05FWFRKU19JTlRFUk5BTFNfVFJFRVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJwYWdlc2hvd1wiLCBoYW5kbGVQYWdlU2hvdyk7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJwYWdlc2hvd1wiLCBoYW5kbGVQYWdlU2hvdyk7XG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBkaXNwYXRjaFxuICAgIF0pO1xuICAgIC8vIFdoZW4gbXBhTmF2aWdhdGlvbiBmbGFnIGlzIHNldCBkbyBhIGhhcmQgbmF2aWdhdGlvbiB0byB0aGUgbmV3IHVybC5cbiAgICAvLyBJbmZpbml0ZWx5IHN1c3BlbmQgYmVjYXVzZSB3ZSBkb24ndCBhY3R1YWxseSB3YW50IHRvIHJlcmVuZGVyIGFueSBjaGlsZFxuICAgIC8vIGNvbXBvbmVudHMgd2l0aCB0aGUgbmV3IFVSTCBhbmQgYW55IGVudGFuZ2xlZCBzdGF0ZSB1cGRhdGVzIHNob3VsZG4ndFxuICAgIC8vIGNvbW1pdCBlaXRoZXIgKGVnOiB1c2VUcmFuc2l0aW9uIGlzUGVuZGluZyBzaG91bGQgc3RheSB0cnVlIHVudGlsIHRoZSBwYWdlXG4gICAgLy8gdW5sb2FkcykuXG4gICAgLy9cbiAgICAvLyBUaGlzIGlzIGEgc2lkZSBlZmZlY3QgaW4gcmVuZGVyLiBEb24ndCB0cnkgdGhpcyBhdCBob21lLCBraWRzLiBJdCdzXG4gICAgLy8gcHJvYmFibHkgc2FmZSBiZWNhdXNlIHdlIGtub3cgdGhpcyBpcyBhIHNpbmdsZXRvbiBjb21wb25lbnQgYW5kIGl0J3MgbmV2ZXJcbiAgICAvLyBpbiA8T2Zmc2NyZWVuPi4gQXQgbGVhc3QgSSBob3BlIHNvLiAoSXQgd2lsbCBydW4gdHdpY2UgaW4gZGV2IHN0cmljdCBtb2RlLFxuICAgIC8vIGJ1dCB0aGF0J3MuLi4gZmluZT8pXG4gICAgY29uc3QgeyBwdXNoUmVmIH0gPSAoMCwgX3VzZXJlZHVjZXJ3aXRoZGV2dG9vbHMudXNlVW53cmFwU3RhdGUpKHJlZHVjZXJTdGF0ZSk7XG4gICAgaWYgKHB1c2hSZWYubXBhTmF2aWdhdGlvbikge1xuICAgICAgICAvLyBpZiB0aGVyZSdzIGEgcmUtcmVuZGVyLCB3ZSBkb24ndCB3YW50IHRvIHRyaWdnZXIgYW5vdGhlciByZWRpcmVjdCBpZiBvbmUgaXMgYWxyZWFkeSBpbiBmbGlnaHQgdG8gdGhlIHNhbWUgVVJMXG4gICAgICAgIGlmIChnbG9iYWxNdXRhYmxlLnBlbmRpbmdNcGFQYXRoICE9PSBjYW5vbmljYWxVcmwpIHtcbiAgICAgICAgICAgIGNvbnN0IGxvY2F0aW9uMSA9IHdpbmRvdy5sb2NhdGlvbjtcbiAgICAgICAgICAgIGlmIChwdXNoUmVmLnBlbmRpbmdQdXNoKSB7XG4gICAgICAgICAgICAgICAgbG9jYXRpb24xLmFzc2lnbihjYW5vbmljYWxVcmwpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBsb2NhdGlvbjEucmVwbGFjZShjYW5vbmljYWxVcmwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZ2xvYmFsTXV0YWJsZS5wZW5kaW5nTXBhUGF0aCA9IGNhbm9uaWNhbFVybDtcbiAgICAgICAgfVxuICAgICAgICAvLyBUT0RPLUFQUDogU2hvdWxkIHdlIGxpc3RlbiB0byBuYXZpZ2F0ZWVycm9yIGhlcmUgdG8gY2F0Y2ggZmFpbGVkXG4gICAgICAgIC8vIG5hdmlnYXRpb25zIHNvbWVob3c/IEFuZCBzaG91bGQgd2UgY2FsbCB3aW5kb3cuc3RvcCgpIGlmIGEgU1BBIG5hdmlnYXRpb25cbiAgICAgICAgLy8gc2hvdWxkIGludGVycnVwdCBhbiBNUEEgb25lP1xuICAgICAgICAoMCwgX3JlYWN0LnVzZSkoKDAsIF9pbmZpbml0ZXByb21pc2UuY3JlYXRlSW5maW5pdGVQcm9taXNlKSgpKTtcbiAgICB9XG4gICAgKDAsIF9yZWFjdC51c2VFZmZlY3QpKCgpPT57XG4gICAgICAgIGNvbnN0IG9yaWdpbmFsUHVzaFN0YXRlID0gd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlLmJpbmQod2luZG93Lmhpc3RvcnkpO1xuICAgICAgICBjb25zdCBvcmlnaW5hbFJlcGxhY2VTdGF0ZSA9IHdpbmRvdy5oaXN0b3J5LnJlcGxhY2VTdGF0ZS5iaW5kKHdpbmRvdy5oaXN0b3J5KTtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9XSU5ET1dfSElTVE9SWV9TVVBQT1JUKSB7XG4gICAgICAgICAgICAvLyBFbnN1cmUgdGhlIGNhbm9uaWNhbCBVUkwgaW4gdGhlIE5leHQuanMgUm91dGVyIGlzIHVwZGF0ZWQgd2hlbiB0aGUgVVJMIGlzIGNoYW5nZWQgc28gdGhhdCBgdXNlUGF0aG5hbWVgIGFuZCBgdXNlU2VhcmNoUGFyYW1zYCBob2xkIHRoZSBwdXNoZWQgdmFsdWVzLlxuICAgICAgICAgICAgY29uc3QgYXBwbHlVcmxGcm9tSGlzdG9yeVB1c2hSZXBsYWNlID0gKHVybCk9PntcbiAgICAgICAgICAgICAgICBjb25zdCBocmVmID0gd2luZG93LmxvY2F0aW9uLmhyZWY7XG4gICAgICAgICAgICAgICAgKDAsIF9yZWFjdC5zdGFydFRyYW5zaXRpb24pKCgpPT57XG4gICAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IF9yb3V0ZXJyZWR1Y2VydHlwZXMuQUNUSU9OX1JFU1RPUkUsXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IG5ldyBVUkwodXJsICE9IG51bGwgPyB1cmwgOiBocmVmLCBocmVmKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyZWU6IHdpbmRvdy5oaXN0b3J5LnN0YXRlLl9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgLyoqXG4gICAgICAgKiBQYXRjaCBwdXNoU3RhdGUgdG8gZW5zdXJlIGV4dGVybmFsIGNoYW5nZXMgdG8gdGhlIGhpc3RvcnkgYXJlIHJlZmxlY3RlZCBpbiB0aGUgTmV4dC5qcyBSb3V0ZXIuXG4gICAgICAgKiBFbnN1cmVzIE5leHQuanMgaW50ZXJuYWwgaGlzdG9yeSBzdGF0ZSBpcyBjb3BpZWQgdG8gdGhlIG5ldyBoaXN0b3J5IGVudHJ5LlxuICAgICAgICogRW5zdXJlcyB1c2VQYXRobmFtZSBhbmQgdXNlU2VhcmNoUGFyYW1zIGhvbGQgdGhlIG5ld2x5IHByb3ZpZGVkIHVybC5cbiAgICAgICAqLyB3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUgPSBmdW5jdGlvbiBwdXNoU3RhdGUoZGF0YSwgX3VudXNlZCwgdXJsKSB7XG4gICAgICAgICAgICAgICAgLy8gQXZvaWQgYSBsb29wIHdoZW4gTmV4dC5qcyBpbnRlcm5hbHMgdHJpZ2dlciBwdXNoU3RhdGUvcmVwbGFjZVN0YXRlXG4gICAgICAgICAgICAgICAgaWYgKChkYXRhID09IG51bGwgPyB2b2lkIDAgOiBkYXRhLl9fTkEpIHx8IChkYXRhID09IG51bGwgPyB2b2lkIDAgOiBkYXRhLl9OKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxQdXNoU3RhdGUoZGF0YSwgX3VudXNlZCwgdXJsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGF0YSA9IGNvcHlOZXh0SnNJbnRlcm5hbEhpc3RvcnlTdGF0ZShkYXRhKTtcbiAgICAgICAgICAgICAgICBpZiAodXJsKSB7XG4gICAgICAgICAgICAgICAgICAgIGFwcGx5VXJsRnJvbUhpc3RvcnlQdXNoUmVwbGFjZSh1cmwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxQdXNoU3RhdGUoZGF0YSwgX3VudXNlZCwgdXJsKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvKipcbiAgICAgICAqIFBhdGNoIHJlcGxhY2VTdGF0ZSB0byBlbnN1cmUgZXh0ZXJuYWwgY2hhbmdlcyB0byB0aGUgaGlzdG9yeSBhcmUgcmVmbGVjdGVkIGluIHRoZSBOZXh0LmpzIFJvdXRlci5cbiAgICAgICAqIEVuc3VyZXMgTmV4dC5qcyBpbnRlcm5hbCBoaXN0b3J5IHN0YXRlIGlzIGNvcGllZCB0byB0aGUgbmV3IGhpc3RvcnkgZW50cnkuXG4gICAgICAgKiBFbnN1cmVzIHVzZVBhdGhuYW1lIGFuZCB1c2VTZWFyY2hQYXJhbXMgaG9sZCB0aGUgbmV3bHkgcHJvdmlkZWQgdXJsLlxuICAgICAgICovIHdpbmRvdy5oaXN0b3J5LnJlcGxhY2VTdGF0ZSA9IGZ1bmN0aW9uIHJlcGxhY2VTdGF0ZShkYXRhLCBfdW51c2VkLCB1cmwpIHtcbiAgICAgICAgICAgICAgICAvLyBBdm9pZCBhIGxvb3Agd2hlbiBOZXh0LmpzIGludGVybmFscyB0cmlnZ2VyIHB1c2hTdGF0ZS9yZXBsYWNlU3RhdGVcbiAgICAgICAgICAgICAgICBpZiAoKGRhdGEgPT0gbnVsbCA/IHZvaWQgMCA6IGRhdGEuX19OQSkgfHwgKGRhdGEgPT0gbnVsbCA/IHZvaWQgMCA6IGRhdGEuX04pKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFJlcGxhY2VTdGF0ZShkYXRhLCBfdW51c2VkLCB1cmwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBkYXRhID0gY29weU5leHRKc0ludGVybmFsSGlzdG9yeVN0YXRlKGRhdGEpO1xuICAgICAgICAgICAgICAgIGlmICh1cmwpIHtcbiAgICAgICAgICAgICAgICAgICAgYXBwbHlVcmxGcm9tSGlzdG9yeVB1c2hSZXBsYWNlKHVybCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFJlcGxhY2VTdGF0ZShkYXRhLCBfdW51c2VkLCB1cmwpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgKiBIYW5kbGUgcG9wc3RhdGUgZXZlbnQsIHRoaXMgaXMgdXNlZCB0byBoYW5kbGUgYmFjay9mb3J3YXJkIGluIHRoZSBicm93c2VyLlxuICAgICAqIEJ5IGRlZmF1bHQgZGlzcGF0Y2hlcyBBQ1RJT05fUkVTVE9SRSwgaG93ZXZlciBpZiB0aGUgaGlzdG9yeSBlbnRyeSB3YXMgbm90IHB1c2hlZC9yZXBsYWNlZCBieSBhcHAtcm91dGVyIGl0IHdpbGwgcmVsb2FkIHRoZSBwYWdlLlxuICAgICAqIFRoYXQgY2FzZSBjYW4gaGFwcGVuIHdoZW4gdGhlIG9sZCByb3V0ZXIgaW5qZWN0ZWQgdGhlIGhpc3RvcnkgZW50cnkuXG4gICAgICovIGNvbnN0IG9uUG9wU3RhdGUgPSAocGFyYW0pPT57XG4gICAgICAgICAgICBsZXQgeyBzdGF0ZSB9ID0gcGFyYW07XG4gICAgICAgICAgICBpZiAoIXN0YXRlKSB7XG4gICAgICAgICAgICAgICAgLy8gVE9ETy1BUFA6IHRoaXMgY2FzZSBvbmx5IGhhcHBlbnMgd2hlbiBwdXNoU3RhdGUvcmVwbGFjZVN0YXRlIHdhcyBjYWxsZWQgb3V0c2lkZSBvZiBOZXh0LmpzLiBJdCBzaG91bGQgcHJvYmFibHkgcmVsb2FkIHRoZSBwYWdlIGluIHRoaXMgY2FzZS5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUaGlzIGNhc2UgaGFwcGVucyB3aGVuIHRoZSBoaXN0b3J5IGVudHJ5IHdhcyBwdXNoZWQgYnkgdGhlIGBwYWdlc2Agcm91dGVyLlxuICAgICAgICAgICAgaWYgKCFzdGF0ZS5fX05BKSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmUgdXNlVHJhbnNpdGlvbiBleGlzdHNcbiAgICAgICAgICAgIC8vIFRPRE8tQVBQOiBJZGVhbGx5IHRoZSBiYWNrIGJ1dHRvbiBzaG91bGQgbm90IHVzZSBzdGFydFRyYW5zaXRpb24gYXMgaXQgc2hvdWxkIGFwcGx5IHRoZSB1cGRhdGVzIHN5bmNocm9ub3VzbHlcbiAgICAgICAgICAgIC8vIFdpdGhvdXQgc3RhcnRUcmFuc2l0aW9uIHdvcmtzIGlmIHRoZSBjYWNoZSBpcyB0aGVyZSBmb3IgdGhpcyBwYXRoXG4gICAgICAgICAgICAoMCwgX3JlYWN0LnN0YXJ0VHJhbnNpdGlvbikoKCk9PntcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IF9yb3V0ZXJyZWR1Y2VydHlwZXMuQUNUSU9OX1JFU1RPUkUsXG4gICAgICAgICAgICAgICAgICAgIHVybDogbmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZiksXG4gICAgICAgICAgICAgICAgICAgIHRyZWU6IHN0YXRlLl9fUFJJVkFURV9ORVhUSlNfSU5URVJOQUxTX1RSRUVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgICAgICAvLyBSZWdpc3RlciBwb3BzdGF0ZSBldmVudCB0byBjYWxsIG9uUG9wc3RhdGUuXG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwicG9wc3RhdGVcIiwgb25Qb3BTdGF0ZSk7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9XSU5ET1dfSElTVE9SWV9TVVBQT1JUKSB7XG4gICAgICAgICAgICAgICAgd2luZG93Lmhpc3RvcnkucHVzaFN0YXRlID0gb3JpZ2luYWxQdXNoU3RhdGU7XG4gICAgICAgICAgICAgICAgd2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlID0gb3JpZ2luYWxSZXBsYWNlU3RhdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInBvcHN0YXRlXCIsIG9uUG9wU3RhdGUpO1xuICAgICAgICB9O1xuICAgIH0sIFtcbiAgICAgICAgZGlzcGF0Y2hcbiAgICBdKTtcbiAgICBjb25zdCB7IGNhY2hlLCB0cmVlLCBuZXh0VXJsLCBmb2N1c0FuZFNjcm9sbFJlZiB9ID0gKDAsIF91c2VyZWR1Y2Vyd2l0aGRldnRvb2xzLnVzZVVud3JhcFN0YXRlKShyZWR1Y2VyU3RhdGUpO1xuICAgIGNvbnN0IGhlYWQgPSAoMCwgX3JlYWN0LnVzZU1lbW8pKCgpPT57XG4gICAgICAgIHJldHVybiAoMCwgX2ZpbmRoZWFkaW5jYWNoZS5maW5kSGVhZEluQ2FjaGUpKGNhY2hlLCB0cmVlWzFdKTtcbiAgICB9LCBbXG4gICAgICAgIGNhY2hlLFxuICAgICAgICB0cmVlXG4gICAgXSk7XG4gICAgbGV0IGNvbnRlbnQgPSAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX3JlZGlyZWN0Ym91bmRhcnkuUmVkaXJlY3RCb3VuZGFyeSwgbnVsbCwgaGVhZCwgY2FjaGUuc3ViVHJlZURhdGEsIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfYXBwcm91dGVyYW5ub3VuY2VyLkFwcFJvdXRlckFubm91bmNlciwge1xuICAgICAgICB0cmVlOiB0cmVlXG4gICAgfSkpO1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgICAgIGNvbnN0IERldlJvb3ROb3RGb3VuZEJvdW5kYXJ5ID0gcmVxdWlyZShcIi4vZGV2LXJvb3Qtbm90LWZvdW5kLWJvdW5kYXJ5XCIpLkRldlJvb3ROb3RGb3VuZEJvdW5kYXJ5O1xuICAgICAgICAgICAgY29udGVudCA9IC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChEZXZSb290Tm90Rm91bmRCb3VuZGFyeSwgbnVsbCwgY29udGVudCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgSG90UmVsb2FkZXIgPSByZXF1aXJlKFwiLi9yZWFjdC1kZXYtb3ZlcmxheS9ob3QtcmVsb2FkZXItY2xpZW50XCIpLmRlZmF1bHQ7XG4gICAgICAgIGNvbnRlbnQgPSAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoSG90UmVsb2FkZXIsIHtcbiAgICAgICAgICAgIGFzc2V0UHJlZml4OiBhc3NldFByZWZpeFxuICAgICAgICB9LCBjb250ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVhY3QuZGVmYXVsdC5GcmFnbWVudCwgbnVsbCwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KEhpc3RvcnlVcGRhdGVyLCB7XG4gICAgICAgIGFwcFJvdXRlclN0YXRlOiAoMCwgX3VzZXJlZHVjZXJ3aXRoZGV2dG9vbHMudXNlVW53cmFwU3RhdGUpKHJlZHVjZXJTdGF0ZSksXG4gICAgICAgIHN5bmM6IHN5bmNcbiAgICB9KSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9ob29rc2NsaWVudGNvbnRleHRzaGFyZWRydW50aW1lLlBhdGhuYW1lQ29udGV4dC5Qcm92aWRlciwge1xuICAgICAgICB2YWx1ZTogcGF0aG5hbWVcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX2hvb2tzY2xpZW50Y29udGV4dHNoYXJlZHJ1bnRpbWUuU2VhcmNoUGFyYW1zQ29udGV4dC5Qcm92aWRlciwge1xuICAgICAgICB2YWx1ZTogc2VhcmNoUGFyYW1zXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9hcHByb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZS5HbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBidWlsZElkLFxuICAgICAgICAgICAgY2hhbmdlQnlTZXJ2ZXJSZXNwb25zZSxcbiAgICAgICAgICAgIHRyZWUsXG4gICAgICAgICAgICBmb2N1c0FuZFNjcm9sbFJlZixcbiAgICAgICAgICAgIG5leHRVcmxcbiAgICAgICAgfVxuICAgIH0sIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfYXBwcm91dGVyY29udGV4dHNoYXJlZHJ1bnRpbWUuQXBwUm91dGVyQ29udGV4dC5Qcm92aWRlciwge1xuICAgICAgICB2YWx1ZTogYXBwUm91dGVyXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9hcHByb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZS5MYXlvdXRSb3V0ZXJDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBjaGlsZE5vZGVzOiBjYWNoZS5wYXJhbGxlbFJvdXRlcyxcbiAgICAgICAgICAgIHRyZWUsXG4gICAgICAgICAgICAvLyBSb290IG5vZGUgYWx3YXlzIGhhcyBgdXJsYFxuICAgICAgICAgICAgLy8gUHJvdmlkZWQgaW4gQXBwVHJlZUNvbnRleHQgdG8gZW5zdXJlIGl0IGNhbiBiZSBvdmVyd3JpdHRlbiBpbiBsYXlvdXQtcm91dGVyXG4gICAgICAgICAgICB1cmw6IGNhbm9uaWNhbFVybFxuICAgICAgICB9XG4gICAgfSwgY29udGVudCkpKSkpKTtcbn1cbmZ1bmN0aW9uIEFwcFJvdXRlcihwcm9wcykge1xuICAgIGNvbnN0IHsgZ2xvYmFsRXJyb3JDb21wb25lbnQsIC4uLnJlc3QgfSA9IHByb3BzO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX2Vycm9yYm91bmRhcnkuRXJyb3JCb3VuZGFyeSwge1xuICAgICAgICBlcnJvckNvbXBvbmVudDogZ2xvYmFsRXJyb3JDb21wb25lbnRcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoUm91dGVyLCByZXN0KSk7XG59XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWFwcC1yb3V0ZXIuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwibW9kdWxlIiwiZ2V0U2VydmVyQWN0aW9uRGlzcGF0Y2hlciIsInVybFRvVXJsV2l0aG91dEZsaWdodE1hcmtlciIsImNyZWF0ZUVtcHR5Q2FjaGVOb2RlIiwiZGVmYXVsdCIsIl9leHBvcnQiLCJ0YXJnZXQiLCJhbGwiLCJuYW1lIiwiZW51bWVyYWJsZSIsImdldCIsIkFwcFJvdXRlciIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsIl9hcHByb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZSIsIl9yb3V0ZXJyZWR1Y2VydHlwZXMiLCJfY3JlYXRlaHJlZmZyb211cmwiLCJfaG9va3NjbGllbnRjb250ZXh0c2hhcmVkcnVudGltZSIsIl91c2VyZWR1Y2Vyd2l0aGRldnRvb2xzIiwiX2Vycm9yYm91bmRhcnkiLCJfY3JlYXRlaW5pdGlhbHJvdXRlcnN0YXRlIiwiX2lzYm90IiwiX2FkZGJhc2VwYXRoIiwiX2FwcHJvdXRlcmFubm91bmNlciIsIl9yZWRpcmVjdGJvdW5kYXJ5IiwiX2ZpbmRoZWFkaW5jYWNoZSIsIl9pbmZpbml0ZXByb21pc2UiLCJfYXBwcm91dGVyaGVhZGVycyIsIl9yZW1vdmViYXNlcGF0aCIsIl9oYXNiYXNlcGF0aCIsImlzU2VydmVyIiwiaW5pdGlhbFBhcmFsbGVsUm91dGVzIiwiTWFwIiwiZ2xvYmFsU2VydmVyQWN0aW9uRGlzcGF0Y2hlciIsImdsb2JhbE11dGFibGUiLCJ1cmwiLCJ1cmxXaXRob3V0RmxpZ2h0UGFyYW1ldGVycyIsIlVSTCIsImxvY2F0aW9uIiwib3JpZ2luIiwic2VhcmNoUGFyYW1zIiwiZGVsZXRlIiwiTkVYVF9SU0NfVU5JT05fUVVFUlkiLCJwcm9jZXNzIiwiZW52IiwiX19ORVhUX0NPTkZJR19PVVRQVVQiLCJwYXRobmFtZSIsImVuZHNXaXRoIiwibGVuZ3RoIiwic2xpY2UiLCJpc0V4dGVybmFsVVJMIiwid2luZG93IiwiSGlzdG9yeVVwZGF0ZXIiLCJwYXJhbSIsImFwcFJvdXRlclN0YXRlIiwic3luYyIsInVzZUluc2VydGlvbkVmZmVjdCIsInRyZWUiLCJwdXNoUmVmIiwiY2Fub25pY2FsVXJsIiwiaGlzdG9yeVN0YXRlIiwiX19ORVhUX1dJTkRPV19ISVNUT1JZX1NVUFBPUlQiLCJwcmVzZXJ2ZUN1c3RvbUhpc3RvcnlTdGF0ZSIsImhpc3RvcnkiLCJzdGF0ZSIsIl9fTkEiLCJfX1BSSVZBVEVfTkVYVEpTX0lOVEVSTkFMU19UUkVFIiwicGVuZGluZ1B1c2giLCJjcmVhdGVIcmVmRnJvbVVybCIsImhyZWYiLCJwdXNoU3RhdGUiLCJyZXBsYWNlU3RhdGUiLCJzdGF0dXMiLCJDYWNoZVN0YXRlcyIsIkxBWllfSU5JVElBTElaRUQiLCJkYXRhIiwic3ViVHJlZURhdGEiLCJwYXJhbGxlbFJvdXRlcyIsInVzZVNlcnZlckFjdGlvbkRpc3BhdGNoZXIiLCJkaXNwYXRjaCIsInNlcnZlckFjdGlvbkRpc3BhdGNoZXIiLCJ1c2VDYWxsYmFjayIsImFjdGlvblBheWxvYWQiLCJzdGFydFRyYW5zaXRpb24iLCJ0eXBlIiwiQUNUSU9OX1NFUlZFUl9BQ1RJT04iLCJ1c2VDaGFuZ2VCeVNlcnZlclJlc3BvbnNlIiwicHJldmlvdXNUcmVlIiwiZmxpZ2h0RGF0YSIsIm92ZXJyaWRlQ2Fub25pY2FsVXJsIiwiQUNUSU9OX1NFUlZFUl9QQVRDSCIsInVzZU5hdmlnYXRlIiwibmF2aWdhdGVUeXBlIiwic2hvdWxkU2Nyb2xsIiwiYWRkQmFzZVBhdGgiLCJBQ1RJT05fTkFWSUdBVEUiLCJpc0V4dGVybmFsVXJsIiwibG9jYXRpb25TZWFyY2giLCJzZWFyY2giLCJjb3B5TmV4dEpzSW50ZXJuYWxIaXN0b3J5U3RhdGUiLCJjdXJyZW50U3RhdGUiLCJSb3V0ZXIiLCJidWlsZElkIiwiaW5pdGlhbEhlYWQiLCJpbml0aWFsVHJlZSIsImluaXRpYWxDYW5vbmljYWxVcmwiLCJpbml0aWFsU2VlZERhdGEiLCJhc3NldFByZWZpeCIsImluaXRpYWxTdGF0ZSIsInVzZU1lbW8iLCJjcmVhdGVJbml0aWFsUm91dGVyU3RhdGUiLCJyZWR1Y2VyU3RhdGUiLCJ1c2VSZWR1Y2VyV2l0aFJlZHV4RGV2dG9vbHMiLCJ1c2VFZmZlY3QiLCJ1c2VVbndyYXBTdGF0ZSIsImhhc0Jhc2VQYXRoIiwicmVtb3ZlQmFzZVBhdGgiLCJjaGFuZ2VCeVNlcnZlclJlc3BvbnNlIiwibmF2aWdhdGUiLCJhcHBSb3V0ZXIiLCJyb3V0ZXJJbnN0YW5jZSIsImJhY2siLCJmb3J3YXJkIiwicHJlZmV0Y2giLCJvcHRpb25zIiwiaXNCb3QiLCJuYXZpZ2F0b3IiLCJ1c2VyQWdlbnQiLCJfb3B0aW9uc19raW5kIiwiQUNUSU9OX1BSRUZFVENIIiwia2luZCIsIlByZWZldGNoS2luZCIsIkZVTEwiLCJyZXBsYWNlIiwiX29wdGlvbnNfc2Nyb2xsIiwic2Nyb2xsIiwicHVzaCIsInJlZnJlc2giLCJBQ1RJT05fUkVGUkVTSCIsImZhc3RSZWZyZXNoIiwiRXJyb3IiLCJBQ1RJT05fRkFTVF9SRUZSRVNIIiwibmV4dCIsInJvdXRlciIsImNhY2hlIiwicHJlZmV0Y2hDYWNoZSIsIm5kIiwiaGFuZGxlUGFnZVNob3ciLCJldmVudCIsIl93aW5kb3dfaGlzdG9yeV9zdGF0ZSIsInBlcnNpc3RlZCIsIkFDVElPTl9SRVNUT1JFIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJtcGFOYXZpZ2F0aW9uIiwicGVuZGluZ01wYVBhdGgiLCJsb2NhdGlvbjEiLCJhc3NpZ24iLCJ1c2UiLCJjcmVhdGVJbmZpbml0ZVByb21pc2UiLCJvcmlnaW5hbFB1c2hTdGF0ZSIsImJpbmQiLCJvcmlnaW5hbFJlcGxhY2VTdGF0ZSIsImFwcGx5VXJsRnJvbUhpc3RvcnlQdXNoUmVwbGFjZSIsIl91bnVzZWQiLCJfTiIsIm9uUG9wU3RhdGUiLCJyZWxvYWQiLCJuZXh0VXJsIiwiZm9jdXNBbmRTY3JvbGxSZWYiLCJoZWFkIiwiZmluZEhlYWRJbkNhY2hlIiwiY29udGVudCIsImNyZWF0ZUVsZW1lbnQiLCJSZWRpcmVjdEJvdW5kYXJ5IiwiQXBwUm91dGVyQW5ub3VuY2VyIiwiRGV2Um9vdE5vdEZvdW5kQm91bmRhcnkiLCJIb3RSZWxvYWRlciIsIkZyYWdtZW50IiwiUGF0aG5hbWVDb250ZXh0IiwiUHJvdmlkZXIiLCJTZWFyY2hQYXJhbXNDb250ZXh0IiwiR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dCIsIkFwcFJvdXRlckNvbnRleHQiLCJMYXlvdXRSb3V0ZXJDb250ZXh0IiwiY2hpbGROb2RlcyIsInByb3BzIiwiZ2xvYmFsRXJyb3JDb21wb25lbnQiLCJyZXN0IiwiRXJyb3JCb3VuZGFyeSIsImVycm9yQ29tcG9uZW50IiwiX19lc01vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/app-router.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js": /*!*********************************************************************************!*\ !*** ./node_modules/next/dist/client/components/bailout-to-client-rendering.js ***! \*********************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"bailoutToClientRendering\", ({\n enumerable: true,\n get: function() {\n return bailoutToClientRendering;\n }\n}));\nconst _nossrerror = __webpack_require__(/*! ../../shared/lib/lazy-dynamic/no-ssr-error */ \"(ssr)/./node_modules/next/dist/shared/lib/lazy-dynamic/no-ssr-error.js\");\nconst _staticgenerationasyncstorageexternal = __webpack_require__(/*! ./static-generation-async-storage.external */ \"./static-generation-async-storage.external\");\nfunction bailoutToClientRendering() {\n const staticGenerationStore = _staticgenerationasyncstorageexternal.staticGenerationAsyncStorage.getStore();\n if (staticGenerationStore == null ? void 0 : staticGenerationStore.forceStatic) {\n return;\n }\n if (staticGenerationStore == null ? void 0 : staticGenerationStore.isStaticGeneration) {\n (0, _nossrerror.throwWithNoSSR)();\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=bailout-to-client-rendering.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2JhaWxvdXQtdG8tY2xpZW50LXJlbmRlcmluZy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsNERBQTJEO0lBQ3ZESSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsY0FBY0MsbUJBQU9BLENBQUMsMEhBQTRDO0FBQ3hFLE1BQU1DLHdDQUF3Q0QsbUJBQU9BLENBQUMsOEZBQTRDO0FBQ2xHLFNBQVNGO0lBQ0wsTUFBTUksd0JBQXdCRCxzQ0FBc0NFLDRCQUE0QixDQUFDQyxRQUFRO0lBQ3pHLElBQUlGLHlCQUF5QixPQUFPLEtBQUssSUFBSUEsc0JBQXNCRyxXQUFXLEVBQUU7UUFDNUU7SUFDSjtJQUNBLElBQUlILHlCQUF5QixPQUFPLEtBQUssSUFBSUEsc0JBQXNCSSxrQkFBa0IsRUFBRTtRQUNsRixJQUFHUCxZQUFZUSxjQUFjO0lBQ2xDO0FBQ0o7QUFFQSxJQUFJLENBQUMsT0FBT2IsUUFBUWMsT0FBTyxLQUFLLGNBQWUsT0FBT2QsUUFBUWMsT0FBTyxLQUFLLFlBQVlkLFFBQVFjLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT2QsUUFBUWMsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS2pCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUWMsT0FBTyxFQUFFLGNBQWM7UUFBRWIsT0FBTztJQUFLO0lBQ25FSCxPQUFPa0IsTUFBTSxDQUFDaEIsUUFBUWMsT0FBTyxFQUFFZDtJQUMvQmlCLE9BQU9qQixPQUFPLEdBQUdBLFFBQVFjLE9BQU87QUFDbEMsRUFFQSx1REFBdUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvYmFpbG91dC10by1jbGllbnQtcmVuZGVyaW5nLmpzP2IxNzciXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJiYWlsb3V0VG9DbGllbnRSZW5kZXJpbmdcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGJhaWxvdXRUb0NsaWVudFJlbmRlcmluZztcbiAgICB9XG59KTtcbmNvbnN0IF9ub3NzcmVycm9yID0gcmVxdWlyZShcIi4uLy4uL3NoYXJlZC9saWIvbGF6eS1keW5hbWljL25vLXNzci1lcnJvclwiKTtcbmNvbnN0IF9zdGF0aWNnZW5lcmF0aW9uYXN5bmNzdG9yYWdlZXh0ZXJuYWwgPSByZXF1aXJlKFwiLi9zdGF0aWMtZ2VuZXJhdGlvbi1hc3luYy1zdG9yYWdlLmV4dGVybmFsXCIpO1xuZnVuY3Rpb24gYmFpbG91dFRvQ2xpZW50UmVuZGVyaW5nKCkge1xuICAgIGNvbnN0IHN0YXRpY0dlbmVyYXRpb25TdG9yZSA9IF9zdGF0aWNnZW5lcmF0aW9uYXN5bmNzdG9yYWdlZXh0ZXJuYWwuc3RhdGljR2VuZXJhdGlvbkFzeW5jU3RvcmFnZS5nZXRTdG9yZSgpO1xuICAgIGlmIChzdGF0aWNHZW5lcmF0aW9uU3RvcmUgPT0gbnVsbCA/IHZvaWQgMCA6IHN0YXRpY0dlbmVyYXRpb25TdG9yZS5mb3JjZVN0YXRpYykge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChzdGF0aWNHZW5lcmF0aW9uU3RvcmUgPT0gbnVsbCA/IHZvaWQgMCA6IHN0YXRpY0dlbmVyYXRpb25TdG9yZS5pc1N0YXRpY0dlbmVyYXRpb24pIHtcbiAgICAgICAgKDAsIF9ub3NzcmVycm9yLnRocm93V2l0aE5vU1NSKSgpO1xuICAgIH1cbn1cblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9YmFpbG91dC10by1jbGllbnQtcmVuZGVyaW5nLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJiYWlsb3V0VG9DbGllbnRSZW5kZXJpbmciLCJfbm9zc3JlcnJvciIsInJlcXVpcmUiLCJfc3RhdGljZ2VuZXJhdGlvbmFzeW5jc3RvcmFnZWV4dGVybmFsIiwic3RhdGljR2VuZXJhdGlvblN0b3JlIiwic3RhdGljR2VuZXJhdGlvbkFzeW5jU3RvcmFnZSIsImdldFN0b3JlIiwiZm9yY2VTdGF0aWMiLCJpc1N0YXRpY0dlbmVyYXRpb24iLCJ0aHJvd1dpdGhOb1NTUiIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/client-hook-in-server-component-error.js": /*!*******************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/client-hook-in-server-component-error.js ***! \*******************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"clientHookInServerComponentError\", ({\n enumerable: true,\n get: function() {\n return clientHookInServerComponentError;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nfunction clientHookInServerComponentError(hookName) {\n if (true) {\n // If useState is undefined we're in a server component\n if (!_react.default.useState) {\n throw new Error(\"\" + hookName + ' only works in Client Components. Add the \"use client\" directive at the top of the file to use it. Read more: https://nextjs.org/docs/messages/react-client-hook-in-server-component');\n }\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=client-hook-in-server-component-error.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2NsaWVudC1ob29rLWluLXNlcnZlci1jb21wb25lbnQtZXJyb3IuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0ZILG9FQUFtRTtJQUMvREksWUFBWTtJQUNaQyxLQUFLO1FBQ0QsT0FBT0M7SUFDWDtBQUNKLENBQUMsRUFBQztBQUNGLE1BQU1DLDJCQUEyQkMsbUJBQU9BLENBQUMsa0hBQXlDO0FBQ2xGLE1BQU1DLFNBQVMsV0FBVyxHQUFHRix5QkFBeUJHLENBQUMsQ0FBQ0YsbUJBQU9BLENBQUMsd0dBQU87QUFDdkUsU0FBU0YsaUNBQWlDSyxRQUFRO0lBQzlDLElBQUlDLElBQXFDLEVBQUU7UUFDdkMsdURBQXVEO1FBQ3ZELElBQUksQ0FBQ0gsT0FBT0ksT0FBTyxDQUFDQyxRQUFRLEVBQUU7WUFDMUIsTUFBTSxJQUFJQyxNQUFNLEtBQUtKLFdBQVc7UUFDcEM7SUFDSjtBQUNKO0FBRUEsSUFBSSxDQUFDLE9BQU9ULFFBQVFXLE9BQU8sS0FBSyxjQUFlLE9BQU9YLFFBQVFXLE9BQU8sS0FBSyxZQUFZWCxRQUFRVyxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9YLFFBQVFXLE9BQU8sQ0FBQ0csVUFBVSxLQUFLLGFBQWE7SUFDcktoQixPQUFPQyxjQUFjLENBQUNDLFFBQVFXLE9BQU8sRUFBRSxjQUFjO1FBQUVWLE9BQU87SUFBSztJQUNuRUgsT0FBT2lCLE1BQU0sQ0FBQ2YsUUFBUVcsT0FBTyxFQUFFWDtJQUMvQmdCLE9BQU9oQixPQUFPLEdBQUdBLFFBQVFXLE9BQU87QUFDbEMsRUFFQSxpRUFBaUUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LWhvb2staW4tc2VydmVyLWNvbXBvbmVudC1lcnJvci5qcz8zZGFhIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3JcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGNsaWVudEhvb2tJblNlcnZlckNvbXBvbmVudEVycm9yO1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0ID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdFwiKTtcbmNvbnN0IF9yZWFjdCA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0Ll8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmZ1bmN0aW9uIGNsaWVudEhvb2tJblNlcnZlckNvbXBvbmVudEVycm9yKGhvb2tOYW1lKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICAgICAgICAvLyBJZiB1c2VTdGF0ZSBpcyB1bmRlZmluZWQgd2UncmUgaW4gYSBzZXJ2ZXIgY29tcG9uZW50XG4gICAgICAgIGlmICghX3JlYWN0LmRlZmF1bHQudXNlU3RhdGUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlwiICsgaG9va05hbWUgKyAnIG9ubHkgd29ya3MgaW4gQ2xpZW50IENvbXBvbmVudHMuIEFkZCB0aGUgXCJ1c2UgY2xpZW50XCIgZGlyZWN0aXZlIGF0IHRoZSB0b3Agb2YgdGhlIGZpbGUgdG8gdXNlIGl0LiBSZWFkIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3JlYWN0LWNsaWVudC1ob29rLWluLXNlcnZlci1jb21wb25lbnQnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2xpZW50LWhvb2staW4tc2VydmVyLWNvbXBvbmVudC1lcnJvci5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IiLCJfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsImhvb2tOYW1lIiwicHJvY2VzcyIsImRlZmF1bHQiLCJ1c2VTdGF0ZSIsIkVycm9yIiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/client-hook-in-server-component-error.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/error-boundary.js": /*!********************************************************************!*\ !*** ./node_modules/next/dist/client/components/error-boundary.js ***! \********************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ErrorBoundaryHandler: function() {\n return ErrorBoundaryHandler;\n },\n GlobalError: function() {\n return GlobalError;\n },\n // Exported so that the import signature in the loaders can be identical to user\n // supplied custom global error signatures.\n default: function() {\n return _default;\n },\n ErrorBoundary: function() {\n return ErrorBoundary;\n }\n});\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _navigation = __webpack_require__(/*! ./navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nconst styles = {\n error: {\n // https://github.com/sindresorhus/modern-normalize/blob/main/modern-normalize.css#L38-L52\n fontFamily: 'system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"',\n height: \"100vh\",\n textAlign: \"center\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\"\n },\n text: {\n fontSize: \"14px\",\n fontWeight: 400,\n lineHeight: \"28px\",\n margin: \"0 8px\"\n }\n};\n// if we are revalidating we want to re-throw the error so the\n// function crashes so we can maintain our previous cache\n// instead of caching the error page\nfunction HandleISRError(param) {\n let { error } = param;\n if (typeof fetch.__nextGetStaticStore === \"function\") {\n var _fetch___nextGetStaticStore;\n const store = (_fetch___nextGetStaticStore = fetch.__nextGetStaticStore()) == null ? void 0 : _fetch___nextGetStaticStore.getStore();\n if ((store == null ? void 0 : store.isRevalidate) || (store == null ? void 0 : store.isStaticGeneration)) {\n console.error(error);\n throw error;\n }\n }\n return null;\n}\nclass ErrorBoundaryHandler extends _react.default.Component {\n static getDerivedStateFromError(error) {\n return {\n error\n };\n }\n static getDerivedStateFromProps(props, state) {\n /**\n * Handles reset of the error boundary when a navigation happens.\n * Ensures the error boundary does not stay enabled when navigating to a new page.\n * Approach of setState in render is safe as it checks the previous pathname and then overrides\n * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders\n */ if (props.pathname !== state.previousPathname && state.error) {\n return {\n error: null,\n previousPathname: props.pathname\n };\n }\n return {\n error: state.error,\n previousPathname: props.pathname\n };\n }\n render() {\n if (this.state.error) {\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(HandleISRError, {\n error: this.state.error\n }), this.props.errorStyles, this.props.errorScripts, /*#__PURE__*/ _react.default.createElement(this.props.errorComponent, {\n error: this.state.error,\n reset: this.reset\n }));\n }\n return this.props.children;\n }\n constructor(props){\n super(props);\n this.reset = ()=>{\n this.setState({\n error: null\n });\n };\n this.state = {\n error: null,\n previousPathname: this.props.pathname\n };\n }\n}\nfunction GlobalError(param) {\n let { error } = param;\n const digest = error == null ? void 0 : error.digest;\n return /*#__PURE__*/ _react.default.createElement(\"html\", {\n id: \"__next_error__\"\n }, /*#__PURE__*/ _react.default.createElement(\"head\", null), /*#__PURE__*/ _react.default.createElement(\"body\", null, /*#__PURE__*/ _react.default.createElement(HandleISRError, {\n error: error\n }), /*#__PURE__*/ _react.default.createElement(\"div\", {\n style: styles.error\n }, /*#__PURE__*/ _react.default.createElement(\"div\", null, /*#__PURE__*/ _react.default.createElement(\"h2\", {\n style: styles.text\n }, \"Application error: a \" + (digest ? \"server\" : \"client\") + \"-side exception has occurred (see the \" + (digest ? \"server logs\" : \"browser console\") + \" for more information).\"), digest ? /*#__PURE__*/ _react.default.createElement(\"p\", {\n style: styles.text\n }, \"Digest: \" + digest) : null))));\n}\nconst _default = GlobalError;\nfunction ErrorBoundary(param) {\n let { errorComponent, errorStyles, errorScripts, children } = param;\n const pathname = (0, _navigation.usePathname)();\n if (errorComponent) {\n return /*#__PURE__*/ _react.default.createElement(ErrorBoundaryHandler, {\n pathname: pathname,\n errorComponent: errorComponent,\n errorStyles: errorStyles,\n errorScripts: errorScripts\n }, children);\n }\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=error-boundary.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2Vycm9yLWJvdW5kYXJ5LmpzIiwibWFwcGluZ3MiOiJxREFFYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRixLQUFNQyxDQUFBQSxDQUtOO0FBQ0EsU0FBU0ssUUFBUUMsTUFBTSxFQUFFQyxHQUFHO0lBQ3hCLElBQUksSUFBSUMsUUFBUUQsSUFBSVgsT0FBT0MsY0FBYyxDQUFDUyxRQUFRRSxNQUFNO1FBQ3BEQyxZQUFZO1FBQ1pDLEtBQUtILEdBQUcsQ0FBQ0MsS0FBSztJQUNsQjtBQUNKO0FBQ0FILFFBQVFQLFNBQVM7SUFDYkcsc0JBQXNCO1FBQ2xCLE9BQU9BO0lBQ1g7SUFDQUMsYUFBYTtRQUNULE9BQU9BO0lBQ1g7SUFDQSxnRkFBZ0Y7SUFDaEYsMkNBQTJDO0lBQzNDQyxTQUFTO1FBQ0wsT0FBT1E7SUFDWDtJQUNBUCxlQUFlO1FBQ1gsT0FBT0E7SUFDWDtBQUNKO0FBQ0EsTUFBTVEsMkJBQTJCQyxtQkFBT0EsQ0FBQyxrSEFBeUM7QUFDbEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLHlCQUF5QkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN2RSxNQUFNRyxjQUFjSCxtQkFBT0EsQ0FBQyxvRkFBYztBQUMxQyxNQUFNSSxTQUFTO0lBQ1hDLE9BQU87UUFDSCwwRkFBMEY7UUFDMUZDLFlBQVk7UUFDWkMsUUFBUTtRQUNSQyxXQUFXO1FBQ1hDLFNBQVM7UUFDVEMsZUFBZTtRQUNmQyxZQUFZO1FBQ1pDLGdCQUFnQjtJQUNwQjtJQUNBQyxNQUFNO1FBQ0ZDLFVBQVU7UUFDVkMsWUFBWTtRQUNaQyxZQUFZO1FBQ1pDLFFBQVE7SUFDWjtBQUNKO0FBQ0EsOERBQThEO0FBQzlELHlEQUF5RDtBQUN6RCxvQ0FBb0M7QUFDcEMsU0FBU0MsZUFBZUMsS0FBSztJQUN6QixJQUFJLEVBQUVkLEtBQUssRUFBRSxHQUFHYztJQUNoQixJ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QUs7SUFDbkVILE9BQU9tRSxNQUFNLENBQUNqRSxRQUFRSyxPQUFPLEVBQUVMO0lBQy9CRSxPQUFPRixPQUFPLEdBQUdBLFFBQVFLLE9BQU87QUFDbEMsRUFFQSwwQ0FBMEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvZXJyb3ItYm91bmRhcnkuanM/NzY5NyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBFcnJvckJvdW5kYXJ5SGFuZGxlcjogbnVsbCxcbiAgICBHbG9iYWxFcnJvcjogbnVsbCxcbiAgICBkZWZhdWx0OiBudWxsLFxuICAgIEVycm9yQm91bmRhcnk6IG51bGxcbn0pO1xuZnVuY3Rpb24gX2V4cG9ydCh0YXJnZXQsIGFsbCkge1xuICAgIGZvcih2YXIgbmFtZSBpbiBhbGwpT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgbmFtZSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGFsbFtuYW1lXVxuICAgIH0pO1xufVxuX2V4cG9ydChleHBvcnRzLCB7XG4gICAgRXJyb3JCb3VuZGFyeUhhbmRsZXI6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gRXJyb3JCb3VuZGFyeUhhbmRsZXI7XG4gICAgfSxcbiAgICBHbG9iYWxFcnJvcjogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBHbG9iYWxFcnJvcjtcbiAgICB9LFxuICAgIC8vIEV4cG9ydGVkIHNvIHRoYXQgdGhlIGltcG9ydCBzaWduYXR1cmUgaW4gdGhlIGxvYWRlcnMgY2FuIGJlIGlkZW50aWNhbCB0byB1c2VyXG4gICAgLy8gc3VwcGxpZWQgY3VzdG9tIGdsb2JhbCBlcnJvciBzaWduYXR1cmVzLlxuICAgIGRlZmF1bHQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX2RlZmF1bHQ7XG4gICAgfSxcbiAgICBFcnJvckJvdW5kYXJ5OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIEVycm9yQm91bmRhcnk7XG4gICAgfVxufSk7XG5jb25zdCBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQgPSByZXF1aXJlKFwiQHN3Yy9oZWxwZXJzL18vX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0XCIpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQuXyhyZXF1aXJlKFwicmVhY3RcIikpO1xuY29uc3QgX25hdmlnYXRpb24gPSByZXF1aXJlKFwiLi9uYXZpZ2F0aW9uXCIpO1xuY29uc3Qgc3R5bGVzID0ge1xuICAgIGVycm9yOiB7XG4gICAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvbW9kZXJuLW5vcm1hbGl6ZS9ibG9iL21haW4vbW9kZXJuLW5vcm1hbGl6ZS5jc3MjTDM4LUw1MlxuICAgICAgICBmb250RmFtaWx5OiAnc3lzdGVtLXVpLFwiU2Vnb2UgVUlcIixSb2JvdG8sSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWYsXCJBcHBsZSBDb2xvciBFbW9qaVwiLFwiU2Vnb2UgVUkgRW1vamlcIicsXG4gICAgICAgIGhlaWdodDogXCIxMDB2aFwiLFxuICAgICAgICB0ZXh0QWxpZ246IFwiY2VudGVyXCIsXG4gICAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgICBhbGlnbkl0ZW1zOiBcImNlbnRlclwiLFxuICAgICAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIlxuICAgIH0sXG4gICAgdGV4dDoge1xuICAgICAgICBmb250U2l6ZTogXCIxNHB4XCIsXG4gICAgICAgIGZvbnRXZWlnaHQ6IDQwMCxcbiAgICAgICAgbGluZUhlaWdodDogXCIyOHB4XCIsXG4gICAgICAgIG1hcmdpbjogXCIwIDhweFwiXG4gICAgfVxufTtcbi8vIGlmIHdlIGFyZSByZXZhbGlkYXRpbmcgd2Ugd2FudCB0byByZS10aHJvdyB0aGUgZXJyb3Igc28gdGhlXG4vLyBmdW5jdGlvbiBjcmFzaGVzIHNvIHdlIGNhbiBtYWludGFpbiBvdXIgcHJldmlvdXMgY2FjaGVcbi8vIGluc3RlYWQgb2YgY2FjaGluZyB0aGUgZXJyb3IgcGFnZVxuZnVuY3Rpb24gSGFuZGxlSVNSRXJyb3IocGFyYW0pIHtcbiAgICBsZXQgeyBlcnJvciB9ID0gcGFyYW07XG4gICAgaWYgKHR5cGVvZiBmZXRjaC5fX25leHRHZXRTdGF0aWNTdG9yZSA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgIHZhciBfZmV0Y2hfX19uZXh0R2V0U3RhdGljU3RvcmU7XG4gICAgICAgIGNvbnN0IHN0b3JlID0gKF9mZXRjaF9fX25leHRHZXRTdGF0aWNTdG9yZSA9IGZldGNoLl9fbmV4dEdldFN0YXRpY1N0b3JlKCkpID09IG51bGwgPyB2b2lkIDAgOiBfZmV0Y2hfX19uZXh0R2V0U3RhdGljU3RvcmUuZ2V0U3RvcmUoKTtcbiAgICAgICAgaWYgKChzdG9yZSA9PSBudWxsID8gdm9pZCAwIDogc3RvcmUuaXNSZXZhbGlkYXRlKSB8fCAoc3RvcmUgPT0gbnVsbCA/IHZvaWQgMCA6IHN0b3JlLmlzU3RhdGljR2VuZXJhdGlvbikpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG5jbGFzcyBFcnJvckJvdW5kYXJ5SGFuZGxlciBleHRlbmRzIF9yZWFjdC5kZWZhdWx0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21FcnJvcihlcnJvcikge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZXJyb3JcbiAgICAgICAgfTtcbiAgICB9XG4gICAgc3RhdGljIGdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyhwcm9wcywgc3RhdGUpIHtcbiAgICAgICAgLyoqXG4gICAgICogSGFuZGxlcyByZXNldCBvZiB0aGUgZXJyb3IgYm91bmRhcnkgd2hlbiBhIG5hdmlnYXRpb24gaGFwcGVucy5cbiAgICAgKiBFbnN1cmVzIHRoZSBlcnJvciBib3VuZGFyeSBkb2VzIG5vdCBzdGF5IGVuYWJsZWQgd2hlbiBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2UuXG4gICAgICogQXBwcm9hY2ggb2Ygc2V0U3RhdGUgaW4gcmVuZGVyIGlzIHNhZmUgYXMgaXQgY2hlY2tzIHRoZSBwcmV2aW91cyBwYXRobmFtZSBhbmQgdGhlbiBvdmVycmlkZXNcbiAgICAgKiBpdCBhcyBvdXRsaW5lZCBpbiBodHRwczovL3JlYWN0LmRldi9yZWZlcmVuY2UvcmVhY3QvdXNlU3RhdGUjc3RvcmluZy1pbmZvcm1hdGlvbi1mcm9tLXByZXZpb3VzLXJlbmRlcnNcbiAgICAgKi8gaWYgKHByb3BzLnBhdGhuYW1lICE9PSBzdGF0ZS5wcmV2aW91c1BhdGhuYW1lICYmIHN0YXRlLmVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGVycm9yOiBudWxsLFxuICAgICAgICAgICAgICAgIHByZXZpb3VzUGF0aG5hbWU6IHByb3BzLnBhdGhuYW1lXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlcnJvcjogc3RhdGUuZXJyb3IsXG4gICAgICAgICAgICBwcmV2aW91c1BhdGhuYW1lOiBwcm9wcy5wYXRobmFtZVxuICAgICAgICB9O1xuICAgIH1cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnN0YXRlLmVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9yZWFjdC5kZWZhdWx0LkZyYWdtZW50LCBudWxsLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoSGFuZGxlSVNSRXJyb3IsIHtcbiAgICAgICAgICAgICAgICBlcnJvcjogdGhpcy5zdGF0ZS5lcnJvclxuICAgICAgICAgICAgfSksIHRoaXMucHJvcHMuZXJyb3JTdHlsZXMsIHRoaXMucHJvcHMuZXJyb3JTY3JpcHRzLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQodGhpcy5wcm9wcy5lcnJvckNvbXBvbmVudCwge1xuICAgICAgICAgICAgICAgIGVycm9yOiB0aGlzLnN0YXRlLmVycm9yLFxuICAgICAgICAgICAgICAgIHJlc2V0OiB0aGlzLnJlc2V0XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW47XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHByb3BzKXtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuICAgICAgICB0aGlzLnJlc2V0ID0gKCk9PntcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgICAgIGVycm9yOiBudWxsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgICAgICAgIGVycm9yOiBudWxsLFxuICAgICAgICAgICAgcHJldmlvdXNQYXRobmFtZTogdGhpcy5wcm9wcy5wYXRobmFtZVxuICAgICAgICB9O1xuICAgIH1cbn1cbmZ1bmN0aW9uIEdsb2JhbEVycm9yKHBhcmFtKSB7XG4gICAgbGV0IHsgZXJyb3IgfSA9IHBhcmFtO1xuICAgIGNvbnN0IGRpZ2VzdCA9IGVycm9yID09IG51bGwgPyB2b2lkIDAgOiBlcnJvci5kaWdlc3Q7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChcImh0bWxcIiwge1xuICAgICAgICBpZDogXCJfX25leHRfZXJyb3JfX1wiXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KFwiaGVhZFwiLCBudWxsKSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KFwiYm9keVwiLCBudWxsLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoSGFuZGxlSVNSRXJyb3IsIHtcbiAgICAgICAgZXJyb3I6IGVycm9yXG4gICAgfSksIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIHN0eWxlOiBzdHlsZXMuZXJyb3JcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgbnVsbCwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KFwiaDJcIiwge1xuICAgICAgICBzdHlsZTogc3R5bGVzLnRleHRcbiAgICB9LCBcIkFwcGxpY2F0aW9uIGVycm9yOiBhIFwiICsgKGRpZ2VzdCA/IFwic2VydmVyXCIgOiBcImNsaWVudFwiKSArIFwiLXNpZGUgZXhjZXB0aW9uIGhhcyBvY2N1cnJlZCAoc2VlIHRoZSBcIiArIChkaWdlc3QgPyBcInNlcnZlciBsb2dzXCIgOiBcImJyb3dzZXIgY29uc29sZVwiKSArIFwiIGZvciBtb3JlIGluZm9ybWF0aW9uKS5cIiksIGRpZ2VzdCA/IC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChcInBcIiwge1xuICAgICAgICBzdHlsZTogc3R5bGVzLnRleHRcbiAgICB9LCBcIkRpZ2VzdDogXCIgKyBkaWdlc3QpIDogbnVsbCkpKSk7XG59XG5jb25zdCBfZGVmYXVsdCA9IEdsb2JhbEVycm9yO1xuZnVuY3Rpb24gRXJyb3JCb3VuZGFyeShwYXJhbSkge1xuICAgIGxldCB7IGVycm9yQ29tcG9uZW50LCBlcnJvclN0eWxlcywgZXJyb3JTY3JpcHRzLCBjaGlsZHJlbiB9ID0gcGFyYW07XG4gICAgY29uc3QgcGF0aG5hbWUgPSAoMCwgX25hdmlnYXRpb24udXNlUGF0aG5hbWUpKCk7XG4gICAgaWYgKGVycm9yQ29tcG9uZW50KSB7XG4gICAgICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoRXJyb3JCb3VuZGFyeUhhbmRsZXIsIHtcbiAgICAgICAgICAgIHBhdGhuYW1lOiBwYXRobmFtZSxcbiAgICAgICAgICAgIGVycm9yQ29tcG9uZW50OiBlcnJvckNvbXBvbmVudCxcbiAgICAgICAgICAgIGVycm9yU3R5bGVzOiBlcnJvclN0eWxlcyxcbiAgICAgICAgICAgIGVycm9yU2NyaXB0czogZXJyb3JTY3JpcHRzXG4gICAgICAgIH0sIGNoaWxkcmVuKTtcbiAgICB9XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVhY3QuZGVmYXVsdC5GcmFnbWVudCwgbnVsbCwgY2hpbGRyZW4pO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1lcnJvci1ib3VuZGFyeS5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJtb2R1bGUiLCJFcnJvckJvdW5kYXJ5SGFuZGxlciIsIkdsb2JhbEVycm9yIiwiZGVmYXVsdCIsIkVycm9yQm91bmRhcnkiLCJfZXhwb3J0IiwidGFyZ2V0IiwiYWxsIiwibmFtZSIsImVudW1lcmFibGUiLCJnZXQiLCJfZGVmYXVsdCIsIl9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCIsInJlcXVpcmUiLCJfcmVhY3QiLCJfIiwiX25hdmlnYXRpb24iLCJzdHlsZXMiLCJlcnJvciIsImZvbnRGYW1pbHkiLCJoZWlnaHQiLCJ0ZXh0QWxpZ24iLCJkaXNwbGF5IiwiZmxleERpcmVjdGlvbiIsImFsaWduSXRlbXMiLCJqdXN0aWZ5Q29udGVudCIsInRleHQiLCJmb250U2l6ZSIsImZvbnRXZWlnaHQiLCJsaW5lSGVpZ2h0IiwibWFyZ2luIiwiSGFuZGxlSVNSRXJyb3IiLCJwYXJhbSIsImZldGNoIiwiX19uZXh0R2V0U3RhdGljU3RvcmUiLCJfZmV0Y2hfX19uZXh0R2V0U3RhdGljU3RvcmUiLCJzdG9yZSIsImdldFN0b3JlIiwiaXNSZXZhbGlkYXRlIiwiaXNTdGF0aWNHZW5lcmF0aW9uIiwiY29uc29sZSIsIkNvbXBvbmVudCIsImdldERlcml2ZWRTdGF0ZUZyb21FcnJvciIsImdldERlcml2ZWRTdGF0ZUZyb21Qcm9wcyIsInByb3BzIiwic3RhdGUiLCJwYXRobmFtZSIsInByZXZpb3VzUGF0aG5hbWUiLCJyZW5kZXIiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJlcnJvclN0eWxlcyIsImVycm9yU2NyaXB0cyIsImVycm9yQ29tcG9uZW50IiwicmVzZXQiLCJjaGlsZHJlbiIsImNvbnN0cnVjdG9yIiwic2V0U3RhdGUiLCJkaWdlc3QiLCJpZCIsInN0eWxlIiwidXNlUGF0aG5hbWUiLCJfX2VzTW9kdWxlIiwiYXNzaWduIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/error-boundary.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/hooks-server-context.js": /*!**************************************************************************!*\ !*** ./node_modules/next/dist/client/components/hooks-server-context.js ***! \**************************************************************************/ /***/ ((module, exports) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n DYNAMIC_ERROR_CODE: function() {\n return DYNAMIC_ERROR_CODE;\n },\n DynamicServerError: function() {\n return DynamicServerError;\n }\n});\nconst DYNAMIC_ERROR_CODE = \"DYNAMIC_SERVER_USAGE\";\nclass DynamicServerError extends Error {\n constructor(type){\n super(\"Dynamic server usage: \" + type);\n this.digest = DYNAMIC_ERROR_CODE;\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=hooks-server-context.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2hvb2tzLXNlcnZlci1jb250ZXh0LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGLEtBQU1DLENBQUFBLENBR047QUFDQSxTQUFTRyxRQUFRQyxNQUFNLEVBQUVDLEdBQUc7SUFDeEIsSUFBSSxJQUFJQyxRQUFRRCxJQUFJVCxPQUFPQyxjQUFjLENBQUNPLFFBQVFFLE1BQU07UUFDcERDLFlBQVk7UUFDWkMsS0FBS0gsR0FBRyxDQUFDQyxLQUFLO0lBQ2xCO0FBQ0o7QUFDQUgsUUFBUUwsU0FBUztJQUNiRyxvQkFBb0I7UUFDaEIsT0FBT0E7SUFDWDtJQUNBQyxvQkFBb0I7UUFDaEIsT0FBT0E7SUFDWDtBQUNKO0FBQ0EsTUFBTUQscUJBQXFCO0FBQzNCLE1BQU1DLDJCQUEyQk87SUFDN0JDLFlBQVlDLElBQUksQ0FBQztRQUNiLEtBQUssQ0FBQywyQkFBMkJBO1FBQ2pDLElBQUksQ0FBQ0MsTUFBTSxHQUFHWDtJQUNsQjtBQUNKO0FBRUEsSUFBSSxDQUFDLE9BQU9ILFFBQVFlLE9BQU8sS0FBSyxjQUFlLE9BQU9mLFFBQVFlLE9BQU8sS0FBSyxZQUFZZixRQUFRZSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9mLFFBQVFlLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktsQixPQUFPQyxjQUFjLENBQUNDLFFBQVFlLE9BQU8sRUFBRSxjQUFjO1FBQUVkLE9BQU87SUFBSztJQUNuRUgsT0FBT21CLE1BQU0sQ0FBQ2pCLFFBQVFlLE9BQU8sRUFBRWY7SUFDL0JFLE9BQU9GLE9BQU8sR0FBR0EsUUFBUWUsT0FBTztBQUNsQyxFQUVBLGdEQUFnRCIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9ob29rcy1zZXJ2ZXItY29udGV4dC5qcz8wMDlhIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuMCAmJiAobW9kdWxlLmV4cG9ydHMgPSB7XG4gICAgRFlOQU1JQ19FUlJPUl9DT0RFOiBudWxsLFxuICAgIER5bmFtaWNTZXJ2ZXJFcnJvcjogbnVsbFxufSk7XG5mdW5jdGlvbiBfZXhwb3J0KHRhcmdldCwgYWxsKSB7XG4gICAgZm9yKHZhciBuYW1lIGluIGFsbClPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBuYW1lLCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGdldDogYWxsW25hbWVdXG4gICAgfSk7XG59XG5fZXhwb3J0KGV4cG9ydHMsIHtcbiAgICBEWU5BTUlDX0VSUk9SX0NPREU6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gRFlOQU1JQ19FUlJPUl9DT0RFO1xuICAgIH0sXG4gICAgRHluYW1pY1NlcnZlckVycm9yOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIER5bmFtaWNTZXJ2ZXJFcnJvcjtcbiAgICB9XG59KTtcbmNvbnN0IERZTkFNSUNfRVJST1JfQ09ERSA9IFwiRFlOQU1JQ19TRVJWRVJfVVNBR0VcIjtcbmNsYXNzIER5bmFtaWNTZXJ2ZXJFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgICBjb25zdHJ1Y3Rvcih0eXBlKXtcbiAgICAgICAgc3VwZXIoXCJEeW5hbWljIHNlcnZlciB1c2FnZTogXCIgKyB0eXBlKTtcbiAgICAgICAgdGhpcy5kaWdlc3QgPSBEWU5BTUlDX0VSUk9SX0NPREU7XG4gICAgfVxufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1ob29rcy1zZXJ2ZXItY29udGV4dC5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJtb2R1bGUiLCJEWU5BTUlDX0VSUk9SX0NPREUiLCJEeW5hbWljU2VydmVyRXJyb3IiLCJfZXhwb3J0IiwidGFyZ2V0IiwiYWxsIiwibmFtZSIsImVudW1lcmFibGUiLCJnZXQiLCJFcnJvciIsImNvbnN0cnVjdG9yIiwidHlwZSIsImRpZ2VzdCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/hooks-server-context.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/infinite-promise.js": /*!**********************************************************************!*\ !*** ./node_modules/next/dist/client/components/infinite-promise.js ***! \**********************************************************************/ /***/ ((module, exports) => { "use strict"; eval("/**\n * Used to cache in createInfinitePromise\n */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"createInfinitePromise\", ({\n enumerable: true,\n get: function() {\n return createInfinitePromise;\n }\n}));\nlet infinitePromise;\nfunction createInfinitePromise() {\n if (!infinitePromise) {\n // Only create the Promise once\n infinitePromise = new Promise(()=>{\n // This is used to debug when the rendering is never updated.\n // setTimeout(() => {\n // infinitePromise = new Error('Infinite promise')\n // resolve()\n // }, 5000)\n });\n }\n return infinitePromise;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=infinite-promise.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2luZmluaXRlLXByb21pc2UuanMiLCJtYXBwaW5ncyI6IkFBQUE7O0NBRUMsR0FBZ0I7QUFDakJBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCx5REFBd0Q7SUFDcERJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixJQUFJQztBQUNKLFNBQVNEO0lBQ0wsSUFBSSxDQUFDQyxpQkFBaUI7UUFDbEIsK0JBQStCO1FBQy9CQSxrQkFBa0IsSUFBSUMsUUFBUTtRQUM5Qiw2REFBNkQ7UUFDN0QscUJBQXFCO1FBQ3JCLG9EQUFvRDtRQUNwRCxjQUFjO1FBQ2QsV0FBVztRQUNYO0lBQ0o7SUFDQSxPQUFPRDtBQUNYO0FBRUEsSUFBSSxDQUFDLE9BQU9MLFFBQVFPLE9BQU8sS0FBSyxjQUFlLE9BQU9QLFFBQVFPLE9BQU8sS0FBSyxZQUFZUCxRQUFRTyxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9QLFFBQVFPLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktWLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUU8sT0FBTyxFQUFFLGNBQWM7UUFBRU4sT0FBTztJQUFLO0lBQ25FSCxPQUFPVyxNQUFNLENBQUNULFFBQVFPLE9BQU8sRUFBRVA7SUFDL0JVLE9BQU9WLE9BQU8sR0FBR0EsUUFBUU8sT0FBTztBQUNsQyxFQUVBLDRDQUE0QyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9pbmZpbml0ZS1wcm9taXNlLmpzPzcyZmYiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVc2VkIHRvIGNhY2hlIGluIGNyZWF0ZUluZmluaXRlUHJvbWlzZVxuICovIFwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiY3JlYXRlSW5maW5pdGVQcm9taXNlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVJbmZpbml0ZVByb21pc2U7XG4gICAgfVxufSk7XG5sZXQgaW5maW5pdGVQcm9taXNlO1xuZnVuY3Rpb24gY3JlYXRlSW5maW5pdGVQcm9taXNlKCkge1xuICAgIGlmICghaW5maW5pdGVQcm9taXNlKSB7XG4gICAgICAgIC8vIE9ubHkgY3JlYXRlIHRoZSBQcm9taXNlIG9uY2VcbiAgICAgICAgaW5maW5pdGVQcm9taXNlID0gbmV3IFByb21pc2UoKCk9PntcbiAgICAgICAgLy8gVGhpcyBpcyB1c2VkIHRvIGRlYnVnIHdoZW4gdGhlIHJlbmRlcmluZyBpcyBuZXZlciB1cGRhdGVkLlxuICAgICAgICAvLyBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgLy8gICBpbmZpbml0ZVByb21pc2UgPSBuZXcgRXJyb3IoJ0luZmluaXRlIHByb21pc2UnKVxuICAgICAgICAvLyAgIHJlc29sdmUoKVxuICAgICAgICAvLyB9LCA1MDAwKVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGluZmluaXRlUHJvbWlzZTtcbn1cblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5maW5pdGUtcHJvbWlzZS5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiY3JlYXRlSW5maW5pdGVQcm9taXNlIiwiaW5maW5pdGVQcm9taXNlIiwiUHJvbWlzZSIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/infinite-promise.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/is-next-router-error.js": /*!**************************************************************************!*\ !*** ./node_modules/next/dist/client/components/is-next-router-error.js ***! \**************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isNextRouterError\", ({\n enumerable: true,\n get: function() {\n return isNextRouterError;\n }\n}));\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(ssr)/./node_modules/next/dist/client/components/not-found.js\");\nconst _redirect = __webpack_require__(/*! ./redirect */ \"(ssr)/./node_modules/next/dist/client/components/redirect.js\");\nfunction isNextRouterError(error) {\n return error && error.digest && ((0, _redirect.isRedirectError)(error) || (0, _notfound.isNotFoundError)(error));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=is-next-router-error.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2lzLW5leHQtcm91dGVyLWVycm9yLmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCxxREFBb0Q7SUFDaERJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNQyxZQUFZQyxtQkFBT0EsQ0FBQyxrRkFBYTtBQUN2QyxNQUFNQyxZQUFZRCxtQkFBT0EsQ0FBQyxnRkFBWTtBQUN0QyxTQUFTRixrQkFBa0JJLEtBQUs7SUFDNUIsT0FBT0EsU0FBU0EsTUFBTUMsTUFBTSxJQUFLLEVBQUMsR0FBR0YsVUFBVUcsZUFBZSxFQUFFRixVQUFVLENBQUMsR0FBR0gsVUFBVU0sZUFBZSxFQUFFSCxNQUFLO0FBQ2xIO0FBRUEsSUFBSSxDQUFDLE9BQU9SLFFBQVFZLE9BQU8sS0FBSyxjQUFlLE9BQU9aLFFBQVFZLE9BQU8sS0FBSyxZQUFZWixRQUFRWSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9aLFFBQVFZLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktmLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUVksT0FBTyxFQUFFLGNBQWM7UUFBRVgsT0FBTztJQUFLO0lBQ25FSCxPQUFPZ0IsTUFBTSxDQUFDZCxRQUFRWSxPQUFPLEVBQUVaO0lBQy9CZSxPQUFPZixPQUFPLEdBQUdBLFFBQVFZLE9BQU87QUFDbEMsRUFFQSxnREFBZ0QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvaXMtbmV4dC1yb3V0ZXItZXJyb3IuanM/ZDkwNyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcImlzTmV4dFJvdXRlckVycm9yXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBpc05leHRSb3V0ZXJFcnJvcjtcbiAgICB9XG59KTtcbmNvbnN0IF9ub3Rmb3VuZCA9IHJlcXVpcmUoXCIuL25vdC1mb3VuZFwiKTtcbmNvbnN0IF9yZWRpcmVjdCA9IHJlcXVpcmUoXCIuL3JlZGlyZWN0XCIpO1xuZnVuY3Rpb24gaXNOZXh0Um91dGVyRXJyb3IoZXJyb3IpIHtcbiAgICByZXR1cm4gZXJyb3IgJiYgZXJyb3IuZGlnZXN0ICYmICgoMCwgX3JlZGlyZWN0LmlzUmVkaXJlY3RFcnJvcikoZXJyb3IpIHx8ICgwLCBfbm90Zm91bmQuaXNOb3RGb3VuZEVycm9yKShlcnJvcikpO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1pcy1uZXh0LXJvdXRlci1lcnJvci5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiaXNOZXh0Um91dGVyRXJyb3IiLCJfbm90Zm91bmQiLCJyZXF1aXJlIiwiX3JlZGlyZWN0IiwiZXJyb3IiLCJkaWdlc3QiLCJpc1JlZGlyZWN0RXJyb3IiLCJpc05vdEZvdW5kRXJyb3IiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/is-next-router-error.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/layout-router.js": /*!*******************************************************************!*\ !*** ./node_modules/next/dist/client/components/layout-router.js ***! \*******************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return OuterLayoutRouter;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _reactdom = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react-dom */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react-dom.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _fetchserverresponse = __webpack_require__(/*! ./router-reducer/fetch-server-response */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/fetch-server-response.js\");\nconst _infinitepromise = __webpack_require__(/*! ./infinite-promise */ \"(ssr)/./node_modules/next/dist/client/components/infinite-promise.js\");\nconst _errorboundary = __webpack_require__(/*! ./error-boundary */ \"(ssr)/./node_modules/next/dist/client/components/error-boundary.js\");\nconst _matchsegments = __webpack_require__(/*! ./match-segments */ \"(ssr)/./node_modules/next/dist/client/components/match-segments.js\");\nconst _handlesmoothscroll = __webpack_require__(/*! ../../shared/lib/router/utils/handle-smooth-scroll */ \"(ssr)/./node_modules/next/dist/shared/lib/router/utils/handle-smooth-scroll.js\");\nconst _redirectboundary = __webpack_require__(/*! ./redirect-boundary */ \"(ssr)/./node_modules/next/dist/client/components/redirect-boundary.js\");\nconst _notfoundboundary = __webpack_require__(/*! ./not-found-boundary */ \"(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js\");\nconst _getsegmentvalue = __webpack_require__(/*! ./router-reducer/reducers/get-segment-value */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js\");\nconst _createroutercachekey = __webpack_require__(/*! ./router-reducer/create-router-cache-key */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/create-router-cache-key.js\");\n/**\n * Add refetch marker to router state at the point of the current layout segment.\n * This ensures the response returned is not further down than the current layout segment.\n */ function walkAddRefetch(segmentPathToWalk, treeToRecreate) {\n if (segmentPathToWalk) {\n const [segment, parallelRouteKey] = segmentPathToWalk;\n const isLast = segmentPathToWalk.length === 2;\n if ((0, _matchsegments.matchSegment)(treeToRecreate[0], segment)) {\n if (treeToRecreate[1].hasOwnProperty(parallelRouteKey)) {\n if (isLast) {\n const subTree = walkAddRefetch(undefined, treeToRecreate[1][parallelRouteKey]);\n return [\n treeToRecreate[0],\n {\n ...treeToRecreate[1],\n [parallelRouteKey]: [\n subTree[0],\n subTree[1],\n subTree[2],\n \"refetch\"\n ]\n }\n ];\n }\n return [\n treeToRecreate[0],\n {\n ...treeToRecreate[1],\n [parallelRouteKey]: walkAddRefetch(segmentPathToWalk.slice(2), treeToRecreate[1][parallelRouteKey])\n }\n ];\n }\n }\n }\n return treeToRecreate;\n}\n// TODO-APP: Replace with new React API for finding dom nodes without a `ref` when available\n/**\n * Wraps ReactDOM.findDOMNode with additional logic to hide React Strict Mode warning\n */ function findDOMNode(instance) {\n // Tree-shake for server bundle\n if (true) return null;\n // Only apply strict mode warning when not in production\n if (true) {\n const originalConsoleError = console.error;\n try {\n console.error = function() {\n for(var _len = arguments.length, messages = new Array(_len), _key = 0; _key < _len; _key++){\n messages[_key] = arguments[_key];\n }\n // Ignore strict mode warning for the findDomNode call below\n if (!messages[0].includes(\"Warning: %s is deprecated in StrictMode.\")) {\n originalConsoleError(...messages);\n }\n };\n return _reactdom.default.findDOMNode(instance);\n } finally{\n console.error = originalConsoleError;\n }\n }\n return _reactdom.default.findDOMNode(instance);\n}\nconst rectProperties = [\n \"bottom\",\n \"height\",\n \"left\",\n \"right\",\n \"top\",\n \"width\",\n \"x\",\n \"y\"\n];\n/**\n * Check if a HTMLElement is hidden or fixed/sticky position\n */ function shouldSkipElement(element) {\n // we ignore fixed or sticky positioned elements since they'll likely pass the \"in-viewport\" check\n // and will result in a situation we bail on scroll because of something like a fixed nav,\n // even though the actual page content is offscreen\n if ([\n \"sticky\",\n \"fixed\"\n ].includes(getComputedStyle(element).position)) {\n if (true) {\n console.warn(\"Skipping auto-scroll behavior due to `position: sticky` or `position: fixed` on element:\", element);\n }\n return true;\n }\n // Uses `getBoundingClientRect` to check if the element is hidden instead of `offsetParent`\n // because `offsetParent` doesn't consider document/body\n const rect = element.getBoundingClientRect();\n return rectProperties.every((item)=>rect[item] === 0);\n}\n/**\n * Check if the top corner of the HTMLElement is in the viewport.\n */ function topOfElementInViewport(element, viewportHeight) {\n const rect = element.getBoundingClientRect();\n return rect.top >= 0 && rect.top <= viewportHeight;\n}\n/**\n * Find the DOM node for a hash fragment.\n * If `top` the page has to scroll to the top of the page. This mirrors the browser's behavior.\n * If the hash fragment is an id, the page has to scroll to the element with that id.\n * If the hash fragment is a name, the page has to scroll to the first element with that name.\n */ function getHashFragmentDomNode(hashFragment) {\n // If the hash fragment is `top` the page has to scroll to the top of the page.\n if (hashFragment === \"top\") {\n return document.body;\n }\n var _document_getElementById;\n // If the hash fragment is an id, the page has to scroll to the element with that id.\n return (_document_getElementById = document.getElementById(hashFragment)) != null ? _document_getElementById : document.getElementsByName(hashFragment)[0];\n}\nclass InnerScrollAndFocusHandler extends _react.default.Component {\n componentDidMount() {\n this.handlePotentialScroll();\n }\n componentDidUpdate() {\n // Because this property is overwritten in handlePotentialScroll it's fine to always run it when true as it'll be set to false for subsequent renders.\n if (this.props.focusAndScrollRef.apply) {\n this.handlePotentialScroll();\n }\n }\n render() {\n return this.props.children;\n }\n constructor(...args){\n super(...args);\n this.handlePotentialScroll = ()=>{\n // Handle scroll and focus, it's only applied once in the first useEffect that triggers that changed.\n const { focusAndScrollRef, segmentPath } = this.props;\n if (focusAndScrollRef.apply) {\n // segmentPaths is an array of segment paths that should be scrolled to\n // if the current segment path is not in the array, the scroll is not applied\n // unless the array is empty, in which case the scroll is always applied\n if (focusAndScrollRef.segmentPaths.length !== 0 && !focusAndScrollRef.segmentPaths.some((scrollRefSegmentPath)=>segmentPath.every((segment, index)=>(0, _matchsegments.matchSegment)(segment, scrollRefSegmentPath[index])))) {\n return;\n }\n let domNode = null;\n const hashFragment = focusAndScrollRef.hashFragment;\n if (hashFragment) {\n domNode = getHashFragmentDomNode(hashFragment);\n }\n // `findDOMNode` is tricky because it returns just the first child if the component is a fragment.\n // This already caused a bug where the first child was a in head.\n if (!domNode) {\n domNode = findDOMNode(this);\n }\n // If there is no DOM node this layout-router level is skipped. It'll be handled higher-up in the tree.\n if (!(domNode instanceof Element)) {\n return;\n }\n // Verify if the element is a HTMLElement and if we want to consider it for scroll behavior.\n // If the element is skipped, try to select the next sibling and try again.\n while(!(domNode instanceof HTMLElement) || shouldSkipElement(domNode)){\n // No siblings found that match the criteria are found, so handle scroll higher up in the tree instead.\n if (domNode.nextElementSibling === null) {\n return;\n }\n domNode = domNode.nextElementSibling;\n }\n // State is mutated to ensure that the focus and scroll is applied only once.\n focusAndScrollRef.apply = false;\n focusAndScrollRef.hashFragment = null;\n focusAndScrollRef.segmentPaths = [];\n (0, _handlesmoothscroll.handleSmoothScroll)(()=>{\n // In case of hash scroll, we only need to scroll the element into view\n if (hashFragment) {\n domNode.scrollIntoView();\n return;\n }\n // Store the current viewport height because reading `clientHeight` causes a reflow,\n // and it won't change during this function.\n const htmlElement = document.documentElement;\n const viewportHeight = htmlElement.clientHeight;\n // If the element's top edge is already in the viewport, exit early.\n if (topOfElementInViewport(domNode, viewportHeight)) {\n return;\n }\n // Otherwise, try scrolling go the top of the document to be backward compatible with pages\n // scrollIntoView() called on `` element scrolls horizontally on chrome and firefox (that shouldn't happen)\n // We could use it to scroll horizontally following RTL but that also seems to be broken - it will always scroll left\n // scrollLeft = 0 also seems to ignore RTL and manually checking for RTL is too much hassle so we will scroll just vertically\n htmlElement.scrollTop = 0;\n // Scroll to domNode if domNode is not in viewport when scrolled to top of document\n if (!topOfElementInViewport(domNode, viewportHeight)) {\n domNode.scrollIntoView();\n }\n }, {\n // We will force layout by querying domNode position\n dontForceLayout: true,\n onlyHashChange: focusAndScrollRef.onlyHashChange\n });\n // Mutate after scrolling so that it can be read by `handleSmoothScroll`\n focusAndScrollRef.onlyHashChange = false;\n // Set focus on the element\n domNode.focus();\n }\n };\n }\n}\nfunction ScrollAndFocusHandler(param) {\n let { segmentPath, children } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant global layout router not mounted\");\n }\n return /*#__PURE__*/ _react.default.createElement(InnerScrollAndFocusHandler, {\n segmentPath: segmentPath,\n focusAndScrollRef: context.focusAndScrollRef\n }, children);\n}\n/**\n * InnerLayoutRouter handles rendering the provided segment based on the cache.\n */ function InnerLayoutRouter(param) {\n let { parallelRouterKey, url, childNodes, segmentPath, tree, // isActive,\n cacheKey } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant global layout router not mounted\");\n }\n const { buildId, changeByServerResponse, tree: fullTree } = context;\n // Read segment path from the parallel router cache node.\n let childNode = childNodes.get(cacheKey);\n // When childNode is not available during rendering client-side we need to fetch it from the server.\n if (!childNode || childNode.status === _approutercontextsharedruntime.CacheStates.LAZY_INITIALIZED) {\n /**\n * Router state with refetch marker added\n */ // TODO-APP: remove ''\n const refetchTree = walkAddRefetch([\n \"\",\n ...segmentPath\n ], fullTree);\n childNode = {\n status: _approutercontextsharedruntime.CacheStates.DATA_FETCH,\n data: (0, _fetchserverresponse.fetchServerResponse)(new URL(url, location.origin), refetchTree, context.nextUrl, buildId),\n subTreeData: null,\n head: childNode && childNode.status === _approutercontextsharedruntime.CacheStates.LAZY_INITIALIZED ? childNode.head : undefined,\n parallelRoutes: childNode && childNode.status === _approutercontextsharedruntime.CacheStates.LAZY_INITIALIZED ? childNode.parallelRoutes : new Map()\n };\n /**\n * Flight data fetch kicked off during render and put into the cache.\n */ childNodes.set(cacheKey, childNode);\n }\n // This case should never happen so it throws an error. It indicates there's a bug in the Next.js.\n if (!childNode) {\n throw new Error(\"Child node should always exist\");\n }\n // This case should never happen so it throws an error. It indicates there's a bug in the Next.js.\n if (childNode.subTreeData && childNode.data) {\n throw new Error(\"Child node should not have both subTreeData and data\");\n }\n // If cache node has a data request we have to unwrap response by `use` and update the cache.\n if (childNode.data) {\n /**\n * Flight response data\n */ // When the data has not resolved yet `use` will suspend here.\n const [flightData, overrideCanonicalUrl] = (0, _react.use)(childNode.data);\n // segmentPath from the server does not match the layout's segmentPath\n childNode.data = null;\n // setTimeout is used to start a new transition during render, this is an intentional hack around React.\n setTimeout(()=>{\n (0, _react.startTransition)(()=>{\n changeByServerResponse(fullTree, flightData, overrideCanonicalUrl);\n });\n });\n // Suspend infinitely as `changeByServerResponse` will cause a different part of the tree to be rendered.\n (0, _react.use)((0, _infinitepromise.createInfinitePromise)());\n }\n // If cache node has no subTreeData and no data request we have to infinitely suspend as the data will likely flow in from another place.\n // TODO-APP: double check users can't return null in a component that will kick in here.\n if (!childNode.subTreeData) {\n (0, _react.use)((0, _infinitepromise.createInfinitePromise)());\n }\n const subtree = /*#__PURE__*/ _react.default.createElement(_approutercontextsharedruntime.LayoutRouterContext.Provider, {\n value: {\n tree: tree[1][parallelRouterKey],\n childNodes: childNode.parallelRoutes,\n // TODO-APP: overriding of url for parallel routes\n url: url\n }\n }, childNode.subTreeData);\n // Ensure root layout is not wrapped in a div as the root layout renders ``\n return subtree;\n}\n/**\n * Renders suspense boundary with the provided \"loading\" property as the fallback.\n * If no loading property is provided it renders the children without a suspense boundary.\n */ function LoadingBoundary(param) {\n let { children, loading, loadingStyles, loadingScripts, hasLoading } = param;\n if (hasLoading) {\n return /*#__PURE__*/ _react.default.createElement(_react.Suspense, {\n fallback: /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, loadingStyles, loadingScripts, loading)\n }, children);\n }\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);\n}\nfunction OuterLayoutRouter(param) {\n let { parallelRouterKey, segmentPath, error, errorStyles, errorScripts, templateStyles, templateScripts, loading, loadingStyles, loadingScripts, hasLoading, template, notFound, notFoundStyles, styles } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.LayoutRouterContext);\n if (!context) {\n throw new Error(\"invariant expected layout router to be mounted\");\n }\n const { childNodes, tree, url } = context;\n // Get the current parallelRouter cache node\n let childNodesForParallelRouter = childNodes.get(parallelRouterKey);\n // If the parallel router cache node does not exist yet, create it.\n // This writes to the cache when there is no item in the cache yet. It never *overwrites* existing cache items which is why it's safe in concurrent mode.\n if (!childNodesForParallelRouter) {\n childNodesForParallelRouter = new Map();\n childNodes.set(parallelRouterKey, childNodesForParallelRouter);\n }\n // Get the active segment in the tree\n // The reason arrays are used in the data format is that these are transferred from the server to the browser so it's optimized to save bytes.\n const treeSegment = tree[1][parallelRouterKey][0];\n // If segment is an array it's a dynamic route and we want to read the dynamic route value as the segment to get from the cache.\n const currentChildSegmentValue = (0, _getsegmentvalue.getSegmentValue)(treeSegment);\n /**\n * Decides which segments to keep rendering, all segments that are not active will be wrapped in ``.\n */ // TODO-APP: Add handling of `` when it's available.\n const preservedSegments = [\n treeSegment\n ];\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, styles, preservedSegments.map((preservedSegment)=>{\n const preservedSegmentValue = (0, _getsegmentvalue.getSegmentValue)(preservedSegment);\n const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(preservedSegment);\n return(/*\n - Error boundary\n - Only renders error boundary if error component is provided.\n - Rendered for each segment to ensure they have their own error state.\n - Loading boundary\n - Only renders suspense boundary if loading components is provided.\n - Rendered for each segment to ensure they have their own loading state.\n - Passed to the router during rendering to ensure it can be immediately rendered when suspending on a Flight fetch.\n */ /*#__PURE__*/ _react.default.createElement(_approutercontextsharedruntime.TemplateContext.Provider, {\n key: (0, _createroutercachekey.createRouterCacheKey)(preservedSegment, true),\n value: /*#__PURE__*/ _react.default.createElement(ScrollAndFocusHandler, {\n segmentPath: segmentPath\n }, /*#__PURE__*/ _react.default.createElement(_errorboundary.ErrorBoundary, {\n errorComponent: error,\n errorStyles: errorStyles,\n errorScripts: errorScripts\n }, /*#__PURE__*/ _react.default.createElement(LoadingBoundary, {\n hasLoading: hasLoading,\n loading: loading,\n loadingStyles: loadingStyles,\n loadingScripts: loadingScripts\n }, /*#__PURE__*/ _react.default.createElement(_notfoundboundary.NotFoundBoundary, {\n notFound: notFound,\n notFoundStyles: notFoundStyles\n }, /*#__PURE__*/ _react.default.createElement(_redirectboundary.RedirectBoundary, null, /*#__PURE__*/ _react.default.createElement(InnerLayoutRouter, {\n parallelRouterKey: parallelRouterKey,\n url: url,\n tree: tree,\n childNodes: childNodesForParallelRouter,\n segmentPath: segmentPath,\n cacheKey: cacheKey,\n isActive: currentChildSegmentValue === preservedSegmentValue\n }))))))\n }, templateStyles, templateScripts, template));\n }));\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=layout-router.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIuanMiLCJtYXBwaW5ncyI6InFEQUVhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCwyQ0FHZTtJQUNYSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsMkJBQTJCQyxtQkFBT0EsQ0FBQyxrSEFBeUM7QUFDbEYsTUFBTUMsNEJBQTRCRCxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUUsU0FBUyxXQUFXLEdBQUdELDBCQUEwQkUsQ0FBQyxDQUFDSCxtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNSSxZQUFZLFdBQVcsR0FBR0wseUJBQXlCSSxDQUFDLENBQUNILG1CQUFPQSxDQUFDLGdIQUFXO0FBQzlFLE1BQU1LLGlDQUFpQ0wsbUJBQU9BLENBQUMsdUtBQW9EO0FBQ25HLE1BQU1NLHVCQUF1Qk4sbUJBQU9BLENBQUMsd0lBQXdDO0FBQzdFLE1BQU1PLG1CQUFtQlAsbUJBQU9BLENBQUMsZ0dBQW9CO0FBQ3JELE1BQU1RLGlCQUFpQlIsbUJBQU9BLENBQUMsNEZBQWtCO0FBQ2pELE1BQU1TLGlCQUFpQlQsbUJBQU9BLENBQUMsNEZBQWtCO0FBQ2pELE1BQU1VLHNCQUFzQlYsbUJBQU9BLENBQUMsMElBQW9EO0FBQ3hGLE1BQU1XLG9CQUFvQlgsbUJBQU9BLENBQUMsa0dBQXFCO0FBQ3ZELE1BQU1ZLG9CQUFvQlosbUJBQU9BLENBQUMsb0dBQXNCO0FBQ3hELE1BQU1hLG1CQUFtQmIsbUJBQU9BLENBQUMsa0pBQTZDO0FBQzlFLE1BQU1jLHdCQUF3QmQsbUJBQU9BLENBQUMsNElBQTBDO0FBQ2hGOzs7Q0FHQyxHQUFHLFNBQVNlLGVBQWVDLGlCQUFpQixFQUFFQyxjQUFjO0lBQ3pELElBQUlELG1CQUFtQjtRQUNuQixNQUFNLENBQUNFLFNBQVNDLGlC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SjtBQUVBLElBQUksQ0FBQyxPQUFPdEosUUFBUTZDLE9BQU8sS0FBSyxjQUFlLE9BQU83QyxRQUFRNkMsT0FBTyxLQUFLLFlBQVk3QyxRQUFRNkMsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPN0MsUUFBUTZDLE9BQU8sQ0FBQzZILFVBQVUsS0FBSyxhQUFhO0lBQ3JLNUssT0FBT0MsY0FBYyxDQUFDQyxRQUFRNkMsT0FBTyxFQUFFLGNBQWM7UUFBRTVDLE9BQU87SUFBSztJQUNuRUgsT0FBTzZLLE1BQU0sQ0FBQzNLLFFBQVE2QyxPQUFPLEVBQUU3QztJQUMvQjRLLE9BQU81SyxPQUFPLEdBQUdBLFFBQVE2QyxPQUFPO0FBQ2xDLEVBRUEseUNBQXlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIuanM/MGJmYSJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgLyoqXG4gKiBPdXRlckxheW91dFJvdXRlciBoYW5kbGVzIHRoZSBjdXJyZW50IHNlZ21lbnQgYXMgd2VsbCBhcyA8T2Zmc2NyZWVuPiByZW5kZXJpbmcgb2Ygb3RoZXIgc2VnbWVudHMuXG4gKiBJdCBjYW4gYmUgcmVuZGVyZWQgbmV4dCB0byBlYWNoIG90aGVyIHdpdGggYSBkaWZmZXJlbnQgYHBhcmFsbGVsUm91dGVyS2V5YCwgYWxsb3dpbmcgZm9yIFBhcmFsbGVsIHJvdXRlcy5cbiAqLyBcImRlZmF1bHRcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIE91dGVyTGF5b3V0Um91dGVyO1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0ID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdFwiKTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQgPSByZXF1aXJlKFwiQHN3Yy9oZWxwZXJzL18vX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZFwiKTtcbmNvbnN0IF9yZWFjdCA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZC5fKHJlcXVpcmUoXCJyZWFjdFwiKSk7XG5jb25zdCBfcmVhY3Rkb20gPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCJyZWFjdC1kb21cIikpO1xuY29uc3QgX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lID0gcmVxdWlyZShcIi4uLy4uL3NoYXJlZC9saWIvYXBwLXJvdXRlci1jb250ZXh0LnNoYXJlZC1ydW50aW1lXCIpO1xuY29uc3QgX2ZldGNoc2VydmVycmVzcG9uc2UgPSByZXF1aXJlKFwiLi9yb3V0ZXItcmVkdWNlci9mZXRjaC1zZXJ2ZXItcmVzcG9uc2VcIik7XG5jb25zdCBfaW5maW5pdGVwcm9taXNlID0gcmVxdWlyZShcIi4vaW5maW5pdGUtcHJvbWlzZVwiKTtcbmNvbnN0IF9lcnJvcmJvdW5kYXJ5ID0gcmVxdWlyZShcIi4vZXJyb3ItYm91bmRhcnlcIik7XG5jb25zdCBfbWF0Y2hzZWdtZW50cyA9IHJlcXVpcmUoXCIuL21hdGNoLXNlZ21lbnRzXCIpO1xuY29uc3QgX2hhbmRsZXNtb290aHNjcm9sbCA9IHJlcXVpcmUoXCIuLi8uLi9zaGFyZWQvbGliL3JvdXRlci91dGlscy9oYW5kbGUtc21vb3RoLXNjcm9sbFwiKTtcbmNvbnN0IF9yZWRpcmVjdGJvdW5kYXJ5ID0gcmVxdWlyZShcIi4vcmVkaXJlY3QtYm91bmRhcnlcIik7XG5jb25zdCBfbm90Zm91bmRib3VuZGFyeSA9IHJlcXVpcmUoXCIuL25vdC1mb3VuZC1ib3VuZGFyeVwiKTtcbmNvbnN0IF9nZXRzZWdtZW50dmFsdWUgPSByZXF1aXJlKFwiLi9yb3V0ZXItcmVkdWNlci9yZWR1Y2Vycy9nZXQtc2VnbWVudC12YWx1ZVwiKTtcbmNvbnN0IF9jcmVhdGVyb3V0ZXJjYWNoZWtleSA9IHJlcXVpcmUoXCIuL3JvdXRlci1yZWR1Y2VyL2NyZWF0ZS1yb3V0ZXItY2FjaGUta2V5XCIpO1xuLyoqXG4gKiBBZGQgcmVmZXRjaCBtYXJrZXIgdG8gcm91dGVyIHN0YXRlIGF0IHRoZSBwb2ludCBvZiB0aGUgY3VycmVudCBsYXlvdXQgc2VnbWVudC5cbiAqIFRoaXMgZW5zdXJlcyB0aGUgcmVzcG9uc2UgcmV0dXJuZWQgaXMgbm90IGZ1cnRoZXIgZG93biB0aGFuIHRoZSBjdXJyZW50IGxheW91dCBzZWdtZW50LlxuICovIGZ1bmN0aW9uIHdhbGtBZGRSZWZldGNoKHNlZ21lbnRQYXRoVG9XYWxrLCB0cmVlVG9SZWNyZWF0ZSkge1xuICAgIGlmIChzZWdtZW50UGF0aFRvV2Fsaykge1xuICAgICAgICBjb25zdCBbc2VnbWVudCwgcGFyYWxsZWxSb3V0ZUtleV0gPSBzZWdtZW50UGF0aFRvV2FsaztcbiAgICAgICAgY29uc3QgaXNMYXN0ID0gc2VnbWVudFBhdGhUb1dhbGsubGVuZ3RoID09PSAyO1xuICAgICAgICBpZiAoKDAsIF9tYXRjaHNlZ21lbnRzLm1hdGNoU2VnbWVudCkodHJlZVRvUmVjcmVhdGVbMF0sIHNlZ21lbnQpKSB7XG4gICAgICAgICAgICBpZiAodHJlZVRvUmVjcmVhdGVbMV0uaGFzT3duUHJvcGVydHkocGFyYWxsZWxSb3V0ZUtleSkpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNMYXN0KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN1YlRyZWUgPSB3YWxrQWRkUmVmZXRjaCh1bmRlZmluZWQsIHRyZWVUb1JlY3JlYXRlWzFdW3BhcmFsbGVsUm91dGVLZXldKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyZWVUb1JlY3JlYXRlWzBdLFxuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRyZWVUb1JlY3JlYXRlWzFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwYXJhbGxlbFJvdXRlS2V5XTogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJUcmVlWzBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJUcmVlWzFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdWJUcmVlWzJdLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcInJlZmV0Y2hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICAgICAgdHJlZVRvUmVjcmVhdGVbMF0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLnRyZWVUb1JlY3JlYXRlWzFdLFxuICAgICAgICAgICAgICAgICAgICAgICAgW3BhcmFsbGVsUm91dGVLZXldOiB3YWxrQWRkUmVmZXRjaChzZWdtZW50UGF0aFRvV2Fsay5zbGljZSgyKSwgdHJlZVRvUmVjcmVhdGVbMV1bcGFyYWxsZWxSb3V0ZUtleV0pXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cmVlVG9SZWNyZWF0ZTtcbn1cbi8vIFRPRE8tQVBQOiBSZXBsYWNlIHdpdGggbmV3IFJlYWN0IEFQSSBmb3IgZmluZGluZyBkb20gbm9kZXMgd2l0aG91dCBhIGByZWZgIHdoZW4gYXZhaWxhYmxlXG4vKipcbiAqIFdyYXBzIFJlYWN0RE9NLmZpbmRET01Ob2RlIHdpdGggYWRkaXRpb25hbCBsb2dpYyB0byBoaWRlIFJlYWN0IFN0cmljdCBNb2RlIHdhcm5pbmdcbiAqLyBmdW5jdGlvbiBmaW5kRE9NTm9kZShpbnN0YW5jZSkge1xuICAgIC8vIFRyZWUtc2hha2UgZm9yIHNlcnZlciBidW5kbGVcbiAgICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIikgcmV0dXJuIG51bGw7XG4gICAgLy8gT25seSBhcHBseSBzdHJpY3QgbW9kZSB3YXJuaW5nIHdoZW4gbm90IGluIHByb2R1Y3Rpb25cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmFsQ29uc29sZUVycm9yID0gY29uc29sZS5lcnJvcjtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IgPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgICAgICBmb3IodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBtZXNzYWdlcyA9IG5ldyBBcnJheShfbGVuKSwgX2tleSA9IDA7IF9rZXkgPCBfbGVuOyBfa2V5Kyspe1xuICAgICAgICAgICAgICAgICAgICBtZXNzYWdlc1tfa2V5XSA9IGFyZ3VtZW50c1tfa2V5XTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gSWdub3JlIHN0cmljdCBtb2RlIHdhcm5pbmcgZm9yIHRoZSBmaW5kRG9tTm9kZSBjYWxsIGJlbG93XG4gICAgICAgICAgICAgICAgaWYgKCFtZXNzYWdlc1swXS5pbmNsdWRlcyhcIldhcm5pbmc6ICVzIGlzIGRlcHJlY2F0ZWQgaW4gU3RyaWN0TW9kZS5cIikpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxDb25zb2xlRXJyb3IoLi4ubWVzc2FnZXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICByZXR1cm4gX3JlYWN0ZG9tLmRlZmF1bHQuZmluZERPTU5vZGUoaW5zdGFuY2UpO1xuICAgICAgICB9IGZpbmFsbHl7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yID0gb3JpZ2luYWxDb25zb2xlRXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIF9yZWFjdGRvbS5kZWZhdWx0LmZpbmRET01Ob2RlKGluc3RhbmNlKTtcbn1cbmNvbnN0IHJlY3RQcm9wZXJ0aWVzID0gW1xuICAgIFwiYm90dG9tXCIsXG4gICAgXCJoZWlnaHRcIixcbiAgICBcImxlZnRcIixcbiAgICBcInJpZ2h0XCIsXG4gICAgXCJ0b3BcIixcbiAgICBcIndpZHRoXCIsXG4gICAgXCJ4XCIsXG4gICAgXCJ5XCJcbl07XG4vKipcbiAqIENoZWNrIGlmIGEgSFRNTEVsZW1lbnQgaXMgaGlkZGVuIG9yIGZpeGVkL3N0aWNreSBwb3NpdGlvblxuICovIGZ1bmN0aW9uIHNob3VsZFNraXBFbGVtZW50KGVsZW1lbnQpIHtcbiAgICAvLyB3ZSBpZ25vcmUgZml4ZWQgb3Igc3RpY2t5IHBvc2l0aW9uZWQgZWxlbWVudHMgc2luY2UgdGhleSdsbCBsaWtlbHkgcGFzcyB0aGUgXCJpbi12aWV3cG9ydFwiIGNoZWNrXG4gICAgLy8gYW5kIHdpbGwgcmVzdWx0IGluIGEgc2l0dWF0aW9uIHdlIGJhaWwgb24gc2Nyb2xsIGJlY2F1c2Ugb2Ygc29tZXRoaW5nIGxpa2UgYSBmaXhlZCBuYXYsXG4gICAgLy8gZXZlbiB0aG91Z2ggdGhlIGFjdHVhbCBwYWdlIGNvbnRlbnQgaXMgb2Zmc2NyZWVuXG4gICAgaWYgKFtcbiAgICAgICAgXCJzdGlja3lcIixcbiAgICAgICAgXCJmaXhlZFwiXG4gICAgXS5pbmNsdWRlcyhnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLnBvc2l0aW9uKSkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIikge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKFwiU2tpcHBpbmcgYXV0by1zY3JvbGwgYmVoYXZpb3IgZHVlIHRvIGBwb3NpdGlvbjogc3RpY2t5YCBvciBgcG9zaXRpb246IGZpeGVkYCBvbiBlbGVtZW50OlwiLCBlbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8gVXNlcyBgZ2V0Qm91bmRpbmdDbGllbnRSZWN0YCB0byBjaGVjayBpZiB0aGUgZWxlbWVudCBpcyBoaWRkZW4gaW5zdGVhZCBvZiBgb2Zmc2V0UGFyZW50YFxuICAgIC8vIGJlY2F1c2UgYG9mZnNldFBhcmVudGAgZG9lc24ndCBjb25zaWRlciBkb2N1bWVudC9ib2R5XG4gICAgY29uc3QgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgcmV0dXJuIHJlY3RQcm9wZXJ0aWVzLmV2ZXJ5KChpdGVtKT0+cmVjdFtpdGVtXSA9PT0gMCk7XG59XG4vKipcbiAqIENoZWNrIGlmIHRoZSB0b3AgY29ybmVyIG9mIHRoZSBIVE1MRWxlbWVudCBpcyBpbiB0aGUgdmlld3BvcnQuXG4gKi8gZnVuY3Rpb24gdG9wT2ZFbGVtZW50SW5WaWV3cG9ydChlbGVtZW50LCB2aWV3cG9ydEhlaWdodCkge1xuICAgIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIHJldHVybiByZWN0LnRvcCA+PSAwICYmIHJlY3QudG9wIDw9IHZpZXdwb3J0SGVpZ2h0O1xufVxuLyoqXG4gKiBGaW5kIHRoZSBET00gbm9kZSBmb3IgYSBoYXNoIGZyYWdtZW50LlxuICogSWYgYHRvcGAgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgdG9wIG9mIHRoZSBwYWdlLiBUaGlzIG1pcnJvcnMgdGhlIGJyb3dzZXIncyBiZWhhdmlvci5cbiAqIElmIHRoZSBoYXNoIGZyYWdtZW50IGlzIGFuIGlkLCB0aGUgcGFnZSBoYXMgdG8gc2Nyb2xsIHRvIHRoZSBlbGVtZW50IHdpdGggdGhhdCBpZC5cbiAqIElmIHRoZSBoYXNoIGZyYWdtZW50IGlzIGEgbmFtZSwgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgZmlyc3QgZWxlbWVudCB3aXRoIHRoYXQgbmFtZS5cbiAqLyBmdW5jdGlvbiBnZXRIYXNoRnJhZ21lbnREb21Ob2RlKGhhc2hGcmFnbWVudCkge1xuICAgIC8vIElmIHRoZSBoYXNoIGZyYWdtZW50IGlzIGB0b3BgIHRoZSBwYWdlIGhhcyB0byBzY3JvbGwgdG8gdGhlIHRvcCBvZiB0aGUgcGFnZS5cbiAgICBpZiAoaGFzaEZyYWdtZW50ID09PSBcInRvcFwiKSB7XG4gICAgICAgIHJldHVybiBkb2N1bWVudC5ib2R5O1xuICAgIH1cbiAgICB2YXIgX2RvY3VtZW50X2dldEVsZW1lbnRCeUlkO1xuICAgIC8vIElmIHRoZSBoYXNoIGZyYWdtZW50IGlzIGFuIGlkLCB0aGUgcGFnZSBoYXMgdG8gc2Nyb2xsIHRvIHRoZSBlbGVtZW50IHdpdGggdGhhdCBpZC5cbiAgICByZXR1cm4gKF9kb2N1bWVudF9nZXRFbGVtZW50QnlJZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGhhc2hGcmFnbWVudCkpICE9IG51bGwgPyBfZG9jdW1lbnRfZ2V0RWxlbWVudEJ5SWQgOiAvLyBJZiB0aGUgaGFzaCBmcmFnbWVudCBpcyBhIG5hbWUsIHRoZSBwYWdlIGhhcyB0byBzY3JvbGwgdG8gdGhlIGZpcnN0IGVsZW1lbnQgd2l0aCB0aGF0IG5hbWUuXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoaGFzaEZyYWdtZW50KVswXTtcbn1cbmNsYXNzIElubmVyU2Nyb2xsQW5kRm9jdXNIYW5kbGVyIGV4dGVuZHMgX3JlYWN0LmRlZmF1bHQuQ29tcG9uZW50IHtcbiAgICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVQb3RlbnRpYWxTY3JvbGwoKTtcbiAgICB9XG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgICAvLyBCZWNhdXNlIHRoaXMgcHJvcGVydHkgaXMgb3ZlcndyaXR0ZW4gaW4gaGFuZGxlUG90ZW50aWFsU2Nyb2xsIGl0J3MgZmluZSB0byBhbHdheXMgcnVuIGl0IHdoZW4gdHJ1ZSBhcyBpdCdsbCBiZSBzZXQgdG8gZmFsc2UgZm9yIHN1YnNlcXVlbnQgcmVuZGVycy5cbiAgICAgICAgaWYgKHRoaXMucHJvcHMuZm9jdXNBbmRTY3JvbGxSZWYuYXBwbHkpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlUG90ZW50aWFsU2Nyb2xsKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmVuZGVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcy5jaGlsZHJlbjtcbiAgICB9XG4gICAgY29uc3RydWN0b3IoLi4uYXJncyl7XG4gICAgICAgIHN1cGVyKC4uLmFyZ3MpO1xuICAgICAgICB0aGlzLmhhbmRsZVBvdGVudGlhbFNjcm9sbCA9ICgpPT57XG4gICAgICAgICAgICAvLyBIYW5kbGUgc2Nyb2xsIGFuZCBmb2N1cywgaXQncyBvbmx5IGFwcGxpZWQgb25jZSBpbiB0aGUgZmlyc3QgdXNlRWZmZWN0IHRoYXQgdHJpZ2dlcnMgdGhhdCBjaGFuZ2VkLlxuICAgICAgICAgICAgY29uc3QgeyBmb2N1c0FuZFNjcm9sbFJlZiwgc2VnbWVudFBhdGggfSA9IHRoaXMucHJvcHM7XG4gICAgICAgICAgICBpZiAoZm9jdXNBbmRTY3JvbGxSZWYuYXBwbHkpIHtcbiAgICAgICAgICAgICAgICAvLyBzZWdtZW50UGF0aHMgaXMgYW4gYXJyYXkgb2Ygc2VnbWVudCBwYXRocyB0aGF0IHNob3VsZCBiZSBzY3JvbGxlZCB0b1xuICAgICAgICAgICAgICAgIC8vIGlmIHRoZSBjdXJyZW50IHNlZ21lbnQgcGF0aCBpcyBub3QgaW4gdGhlIGFycmF5LCB0aGUgc2Nyb2xsIGlzIG5vdCBhcHBsaWVkXG4gICAgICAgICAgICAgICAgLy8gdW5sZXNzIHRoZSBhcnJheSBpcyBlbXB0eSwgaW4gd2hpY2ggY2FzZSB0aGUgc2Nyb2xsIGlzIGFsd2F5cyBhcHBsaWVkXG4gICAgICAgICAgICAgICAgaWYgKGZvY3VzQW5kU2Nyb2xsUmVmLnNlZ21lbnRQYXRocy5sZW5ndGggIT09IDAgJiYgIWZvY3VzQW5kU2Nyb2xsUmVmLnNlZ21lbnRQYXRocy5zb21lKChzY3JvbGxSZWZTZWdtZW50UGF0aCk9PnNlZ21lbnRQYXRoLmV2ZXJ5KChzZWdtZW50LCBpbmRleCk9PigwLCBfbWF0Y2hzZWdtZW50cy5tYXRjaFNlZ21lbnQpKHNlZ21lbnQsIHNjcm9sbFJlZlNlZ21lbnRQYXRoW2luZGV4XSkpKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxldCBkb21Ob2RlID0gbnVsbDtcbiAgICAgICAgICAgICAgICBjb25zdCBoYXNoRnJhZ21lbnQgPSBmb2N1c0FuZFNjcm9sbFJlZi5oYXNoRnJhZ21lbnQ7XG4gICAgICAgICAgICAgICAgaWYgKGhhc2hGcmFnbWVudCkge1xuICAgICAgICAgICAgICAgICAgICBkb21Ob2RlID0gZ2V0SGFzaEZyYWdtZW50RG9tTm9kZShoYXNoRnJhZ21lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBgZmluZERPTU5vZGVgIGlzIHRyaWNreSBiZWNhdXNlIGl0IHJldHVybnMganVzdCB0aGUgZmlyc3QgY2hpbGQgaWYgdGhlIGNvbXBvbmVudCBpcyBhIGZyYWdtZW50LlxuICAgICAgICAgICAgICAgIC8vIFRoaXMgYWxyZWFkeSBjYXVzZWQgYSBidWcgd2hlcmUgdGhlIGZpcnN0IGNoaWxkIHdhcyBhIDxsaW5rLz4gaW4gaGVhZC5cbiAgICAgICAgICAgICAgICBpZiAoIWRvbU5vZGUpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9tTm9kZSA9IGZpbmRET01Ob2RlKHRoaXMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBJZiB0aGVyZSBpcyBubyBET00gbm9kZSB0aGlzIGxheW91dC1yb3V0ZXIgbGV2ZWwgaXMgc2tpcHBlZC4gSXQnbGwgYmUgaGFuZGxlZCBoaWdoZXItdXAgaW4gdGhlIHRyZWUuXG4gICAgICAgICAgICAgICAgaWYgKCEoZG9tTm9kZSBpbnN0YW5jZW9mIEVsZW1lbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gVmVyaWZ5IGlmIHRoZSBlbGVtZW50IGlzIGEgSFRNTEVsZW1lbnQgYW5kIGlmIHdlIHdhbnQgdG8gY29uc2lkZXIgaXQgZm9yIHNjcm9sbCBiZWhhdmlvci5cbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgZWxlbWVudCBpcyBza2lwcGVkLCB0cnkgdG8gc2VsZWN0IHRoZSBuZXh0IHNpYmxpbmcgYW5kIHRyeSBhZ2Fpbi5cbiAgICAgICAgICAgICAgICB3aGlsZSghKGRvbU5vZGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkgfHwgc2hvdWxkU2tpcEVsZW1lbnQoZG9tTm9kZSkpe1xuICAgICAgICAgICAgICAgICAgICAvLyBObyBzaWJsaW5ncyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSBhcmUgZm91bmQsIHNvIGhhbmRsZSBzY3JvbGwgaGlnaGVyIHVwIGluIHRoZSB0cmVlIGluc3RlYWQuXG4gICAgICAgICAgICAgICAgICAgIGlmIChkb21Ob2RlLm5leHRFbGVtZW50U2libGluZyA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGRvbU5vZGUgPSBkb21Ob2RlLm5leHRFbGVtZW50U2libGluZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gU3RhdGUgaXMgbXV0YXRlZCB0byBlbnN1cmUgdGhhdCB0aGUgZm9jdXMgYW5kIHNjcm9sbCBpcyBhcHBsaWVkIG9ubHkgb25jZS5cbiAgICAgICAgICAgICAgICBmb2N1c0FuZFNjcm9sbFJlZi5hcHBseSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGZvY3VzQW5kU2Nyb2xsUmVmLmhhc2hGcmFnbWVudCA9IG51bGw7XG4gICAgICAgICAgICAgICAgZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzID0gW107XG4gICAgICAgICAgICAgICAgKDAsIF9oYW5kbGVzbW9vdGhzY3JvbGwuaGFuZGxlU21vb3RoU2Nyb2xsKSgoKT0+e1xuICAgICAgICAgICAgICAgICAgICAvLyBJbiBjYXNlIG9mIGhhc2ggc2Nyb2xsLCB3ZSBvbmx5IG5lZWQgdG8gc2Nyb2xsIHRoZSBlbGVtZW50IGludG8gdmlld1xuICAgICAgICAgICAgICAgICAgICBpZiAoaGFzaEZyYWdtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkb21Ob2RlLnNjcm9sbEludG9WaWV3KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgdmlld3BvcnQgaGVpZ2h0IGJlY2F1c2UgcmVhZGluZyBgY2xpZW50SGVpZ2h0YCBjYXVzZXMgYSByZWZsb3csXG4gICAgICAgICAgICAgICAgICAgIC8vIGFuZCBpdCB3b24ndCBjaGFuZ2UgZHVyaW5nIHRoaXMgZnVuY3Rpb24uXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGh0bWxFbGVtZW50ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB2aWV3cG9ydEhlaWdodCA9IGh0bWxFbGVtZW50LmNsaWVudEhlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlIGVsZW1lbnQncyB0b3AgZWRnZSBpcyBhbHJlYWR5IGluIHRoZSB2aWV3cG9ydCwgZXhpdCBlYXJseS5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHRvcE9mRWxlbWVudEluVmlld3BvcnQoZG9tTm9kZSwgdmlld3BvcnRIZWlnaHQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLCB0cnkgc2Nyb2xsaW5nIGdvIHRoZSB0b3Agb2YgdGhlIGRvY3VtZW50IHRvIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCBwYWdlc1xuICAgICAgICAgICAgICAgICAgICAvLyBzY3JvbGxJbnRvVmlldygpIGNhbGxlZCBvbiBgPGh0bWwvPmAgZWxlbWVudCBzY3JvbGxzIGhvcml6b250YWxseSBvbiBjaHJvbWUgYW5kIGZpcmVmb3ggKHRoYXQgc2hvdWxkbid0IGhhcHBlbilcbiAgICAgICAgICAgICAgICAgICAgLy8gV2UgY291bGQgdXNlIGl0IHRvIHNjcm9sbCBob3Jpem9udGFsbHkgZm9sbG93aW5nIFJUTCBidXQgdGhhdCBhbHNvIHNlZW1zIHRvIGJlIGJyb2tlbiAtIGl0IHdpbGwgYWx3YXlzIHNjcm9sbCBsZWZ0XG4gICAgICAgICAgICAgICAgICAgIC8vIHNjcm9sbExlZnQgPSAwIGFsc28gc2VlbXMgdG8gaWdub3JlIFJUTCBhbmQgbWFudWFsbHkgY2hlY2tpbmcgZm9yIFJUTCBpcyB0b28gbXVjaCBoYXNzbGUgc28gd2Ugd2lsbCBzY3JvbGwganVzdCB2ZXJ0aWNhbGx5XG4gICAgICAgICAgICAgICAgICAgIGh0bWxFbGVtZW50LnNjcm9sbFRvcCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIC8vIFNjcm9sbCB0byBkb21Ob2RlIGlmIGRvbU5vZGUgaXMgbm90IGluIHZpZXdwb3J0IHdoZW4gc2Nyb2xsZWQgdG8gdG9wIG9mIGRvY3VtZW50XG4gICAgICAgICAgICAgICAgICAgIGlmICghdG9wT2ZFbGVtZW50SW5WaWV3cG9ydChkb21Ob2RlLCB2aWV3cG9ydEhlaWdodCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvbU5vZGUuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gV2Ugd2lsbCBmb3JjZSBsYXlvdXQgYnkgcXVlcnlpbmcgZG9tTm9kZSBwb3NpdGlvblxuICAgICAgICAgICAgICAgICAgICBkb250Rm9yY2VMYXlvdXQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIG9ubHlIYXNoQ2hhbmdlOiBmb2N1c0FuZFNjcm9sbFJlZi5vbmx5SGFzaENoYW5nZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIC8vIE11dGF0ZSBhZnRlciBzY3JvbGxpbmcgc28gdGhhdCBpdCBjYW4gYmUgcmVhZCBieSBgaGFuZGxlU21vb3RoU2Nyb2xsYFxuICAgICAgICAgICAgICAgIGZvY3VzQW5kU2Nyb2xsUmVmLm9ubHlIYXNoQ2hhbmdlID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgLy8gU2V0IGZvY3VzIG9uIHRoZSBlbGVtZW50XG4gICAgICAgICAgICAgICAgZG9tTm9kZS5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn1cbmZ1bmN0aW9uIFNjcm9sbEFuZEZvY3VzSGFuZGxlcihwYXJhbSkge1xuICAgIGxldCB7IHNlZ21lbnRQYXRoLCBjaGlsZHJlbiB9ID0gcGFyYW07XG4gICAgY29uc3QgY29udGV4dCA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkdsb2JhbExheW91dFJvdXRlckNvbnRleHQpO1xuICAgIGlmICghY29udGV4dCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJpbnZhcmlhbnQgZ2xvYmFsIGxheW91dCByb3V0ZXIgbm90IG1vdW50ZWRcIik7XG4gICAgfVxuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoSW5uZXJTY3JvbGxBbmRGb2N1c0hhbmRsZXIsIHtcbiAgICAgICAgc2VnbWVudFBhdGg6IHNlZ21lbnRQYXRoLFxuICAgICAgICBmb2N1c0FuZFNjcm9sbFJlZjogY29udGV4dC5mb2N1c0FuZFNjcm9sbFJlZlxuICAgIH0sIGNoaWxkcmVuKTtcbn1cbi8qKlxuICogSW5uZXJMYXlvdXRSb3V0ZXIgaGFuZGxlcyByZW5kZXJpbmcgdGhlIHByb3ZpZGVkIHNlZ21lbnQgYmFzZWQgb24gdGhlIGNhY2hlLlxuICovIGZ1bmN0aW9uIElubmVyTGF5b3V0Um91dGVyKHBhcmFtKSB7XG4gICAgbGV0IHsgcGFyYWxsZWxSb3V0ZXJLZXksIHVybCwgY2hpbGROb2Rlcywgc2VnbWVudFBhdGgsIHRyZWUsIC8vIFRPRE8tQVBQOiBpbXBsZW1lbnQgYDxPZmZzY3JlZW4+YCB3aGVuIGF2YWlsYWJsZS5cbiAgICAvLyBpc0FjdGl2ZSxcbiAgICBjYWNoZUtleSB9ID0gcGFyYW07XG4gICAgY29uc3QgY29udGV4dCA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkdsb2JhbExheW91dFJvdXRlckNvbnRleHQpO1xuICAgIGlmICghY29udGV4dCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJpbnZhcmlhbnQgZ2xvYmFsIGxheW91dCByb3V0ZXIgbm90IG1vdW50ZWRcIik7XG4gICAgfVxuICAgIGNvbnN0IHsgYnVpbGRJZCwgY2hhbmdlQnlTZXJ2ZXJSZXNwb25zZSwgdHJlZTogZnVsbFRyZWUgfSA9IGNvbnRleHQ7XG4gICAgLy8gUmVhZCBzZWdtZW50IHBhdGggZnJvbSB0aGUgcGFyYWxsZWwgcm91dGVyIGNhY2hlIG5vZGUuXG4gICAgbGV0IGNoaWxkTm9kZSA9IGNoaWxkTm9kZXMuZ2V0KGNhY2hlS2V5KTtcbiAgICAvLyBXaGVuIGNoaWxkTm9kZSBpcyBub3QgYXZhaWxhYmxlIGR1cmluZyByZW5kZXJpbmcgY2xpZW50LXNpZGUgd2UgbmVlZCB0byBmZXRjaCBpdCBmcm9tIHRoZSBzZXJ2ZXIuXG4gICAgaWYgKCFjaGlsZE5vZGUgfHwgY2hpbGROb2RlLnN0YXR1cyA9PT0gX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkNhY2hlU3RhdGVzLkxBWllfSU5JVElBTElaRUQpIHtcbiAgICAgICAgLyoqXG4gICAgICogUm91dGVyIHN0YXRlIHdpdGggcmVmZXRjaCBtYXJrZXIgYWRkZWRcbiAgICAgKi8gLy8gVE9ETy1BUFA6IHJlbW92ZSAnJ1xuICAgICAgICBjb25zdCByZWZldGNoVHJlZSA9IHdhbGtBZGRSZWZldGNoKFtcbiAgICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgICAuLi5zZWdtZW50UGF0aFxuICAgICAgICBdLCBmdWxsVHJlZSk7XG4gICAgICAgIGNoaWxkTm9kZSA9IHtcbiAgICAgICAgICAgIHN0YXR1czogX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkNhY2hlU3RhdGVzLkRBVEFfRkVUQ0gsXG4gICAgICAgICAgICBkYXRhOiAoMCwgX2ZldGNoc2VydmVycmVzcG9uc2UuZmV0Y2hTZXJ2ZXJSZXNwb25zZSkobmV3IFVSTCh1cmwsIGxvY2F0aW9uLm9yaWdpbiksIHJlZmV0Y2hUcmVlLCBjb250ZXh0Lm5leHRVcmwsIGJ1aWxkSWQpLFxuICAgICAgICAgICAgc3ViVHJlZURhdGE6IG51bGwsXG4gICAgICAgICAgICBoZWFkOiBjaGlsZE5vZGUgJiYgY2hpbGROb2RlLnN0YXR1cyA9PT0gX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkNhY2hlU3RhdGVzLkxBWllfSU5JVElBTElaRUQgPyBjaGlsZE5vZGUuaGVhZCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHBhcmFsbGVsUm91dGVzOiBjaGlsZE5vZGUgJiYgY2hpbGROb2RlLnN0YXR1cyA9PT0gX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkNhY2hlU3RhdGVzLkxBWllfSU5JVElBTElaRUQgPyBjaGlsZE5vZGUucGFyYWxsZWxSb3V0ZXMgOiBuZXcgTWFwKClcbiAgICAgICAgfTtcbiAgICAgICAgLyoqXG4gICAgICogRmxpZ2h0IGRhdGEgZmV0Y2gga2lja2VkIG9mZiBkdXJpbmcgcmVuZGVyIGFuZCBwdXQgaW50byB0aGUgY2FjaGUuXG4gICAgICovIGNoaWxkTm9kZXMuc2V0KGNhY2hlS2V5LCBjaGlsZE5vZGUpO1xuICAgIH1cbiAgICAvLyBUaGlzIGNhc2Ugc2hvdWxkIG5ldmVyIGhhcHBlbiBzbyBpdCB0aHJvd3MgYW4gZXJyb3IuIEl0IGluZGljYXRlcyB0aGVyZSdzIGEgYnVnIGluIHRoZSBOZXh0LmpzLlxuICAgIGlmICghY2hpbGROb2RlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNoaWxkIG5vZGUgc2hvdWxkIGFsd2F5cyBleGlzdFwiKTtcbiAgICB9XG4gICAgLy8gVGhpcyBjYXNlIHNob3VsZCBuZXZlciBoYXBwZW4gc28gaXQgdGhyb3dzIGFuIGVycm9yLiBJdCBpbmRpY2F0ZXMgdGhlcmUncyBhIGJ1ZyBpbiB0aGUgTmV4dC5qcy5cbiAgICBpZiAoY2hpbGROb2RlLnN1YlRyZWVEYXRhICYmIGNoaWxkTm9kZS5kYXRhKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNoaWxkIG5vZGUgc2hvdWxkIG5vdCBoYXZlIGJvdGggc3ViVHJlZURhdGEgYW5kIGRhdGFcIik7XG4gICAgfVxuICAgIC8vIElmIGNhY2hlIG5vZGUgaGFzIGEgZGF0YSByZXF1ZXN0IHdlIGhhdmUgdG8gdW53cmFwIHJlc3BvbnNlIGJ5IGB1c2VgIGFuZCB1cGRhdGUgdGhlIGNhY2hlLlxuICAgIGlmIChjaGlsZE5vZGUuZGF0YSkge1xuICAgICAgICAvKipcbiAgICAgKiBGbGlnaHQgcmVzcG9uc2UgZGF0YVxuICAgICAqLyAvLyBXaGVuIHRoZSBkYXRhIGhhcyBub3QgcmVzb2x2ZWQgeWV0IGB1c2VgIHdpbGwgc3VzcGVuZCBoZXJlLlxuICAgICAgICBjb25zdCBbZmxpZ2h0RGF0YSwgb3ZlcnJpZGVDYW5vbmljYWxVcmxdID0gKDAsIF9yZWFjdC51c2UpKGNoaWxkTm9kZS5kYXRhKTtcbiAgICAgICAgLy8gc2VnbWVudFBhdGggZnJvbSB0aGUgc2VydmVyIGRvZXMgbm90IG1hdGNoIHRoZSBsYXlvdXQncyBzZWdtZW50UGF0aFxuICAgICAgICBjaGlsZE5vZGUuZGF0YSA9IG51bGw7XG4gICAgICAgIC8vIHNldFRpbWVvdXQgaXMgdXNlZCB0byBzdGFydCBhIG5ldyB0cmFuc2l0aW9uIGR1cmluZyByZW5kZXIsIHRoaXMgaXMgYW4gaW50ZW50aW9uYWwgaGFjayBhcm91bmQgUmVhY3QuXG4gICAgICAgIHNldFRpbWVvdXQoKCk9PntcbiAgICAgICAgICAgICgwLCBfcmVhY3Quc3RhcnRUcmFuc2l0aW9uKSgoKT0+e1xuICAgICAgICAgICAgICAgIGNoYW5nZUJ5U2VydmVyUmVzcG9uc2UoZnVsbFRyZWUsIGZsaWdodERhdGEsIG92ZXJyaWRlQ2Fub25pY2FsVXJsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgLy8gU3VzcGVuZCBpbmZpbml0ZWx5IGFzIGBjaGFuZ2VCeVNlcnZlclJlc3BvbnNlYCB3aWxsIGNhdXNlIGEgZGlmZmVyZW50IHBhcnQgb2YgdGhlIHRyZWUgdG8gYmUgcmVuZGVyZWQuXG4gICAgICAgICgwLCBfcmVhY3QudXNlKSgoMCwgX2luZmluaXRlcHJvbWlzZS5jcmVhdGVJbmZpbml0ZVByb21pc2UpKCkpO1xuICAgIH1cbiAgICAvLyBJZiBjYWNoZSBub2RlIGhhcyBubyBzdWJUcmVlRGF0YSBhbmQgbm8gZGF0YSByZXF1ZXN0IHdlIGhhdmUgdG8gaW5maW5pdGVseSBzdXNwZW5kIGFzIHRoZSBkYXRhIHdpbGwgbGlrZWx5IGZsb3cgaW4gZnJvbSBhbm90aGVyIHBsYWNlLlxuICAgIC8vIFRPRE8tQVBQOiBkb3VibGUgY2hlY2sgdXNlcnMgY2FuJ3QgcmV0dXJuIG51bGwgaW4gYSBjb21wb25lbnQgdGhhdCB3aWxsIGtpY2sgaW4gaGVyZS5cbiAgICBpZiAoIWNoaWxkTm9kZS5zdWJUcmVlRGF0YSkge1xuICAgICAgICAoMCwgX3JlYWN0LnVzZSkoKDAsIF9pbmZpbml0ZXByb21pc2UuY3JlYXRlSW5maW5pdGVQcm9taXNlKSgpKTtcbiAgICB9XG4gICAgY29uc3Qgc3VidHJlZSA9IC8vIFRoZSBsYXlvdXQgcm91dGVyIGNvbnRleHQgbmFycm93cyBkb3duIHRyZWUgYW5kIGNoaWxkTm9kZXMgYXQgZWFjaCBsZXZlbC5cbiAgICAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkxheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXIsIHtcbiAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIHRyZWU6IHRyZWVbMV1bcGFyYWxsZWxSb3V0ZXJLZXldLFxuICAgICAgICAgICAgY2hpbGROb2RlczogY2hpbGROb2RlLnBhcmFsbGVsUm91dGVzLFxuICAgICAgICAgICAgLy8gVE9ETy1BUFA6IG92ZXJyaWRpbmcgb2YgdXJsIGZvciBwYXJhbGxlbCByb3V0ZXNcbiAgICAgICAgICAgIHVybDogdXJsXG4gICAgICAgIH1cbiAgICB9LCBjaGlsZE5vZGUuc3ViVHJlZURhdGEpO1xuICAgIC8vIEVuc3VyZSByb290IGxheW91dCBpcyBub3Qgd3JhcHBlZCBpbiBhIGRpdiBhcyB0aGUgcm9vdCBsYXlvdXQgcmVuZGVycyBgPGh0bWw+YFxuICAgIHJldHVybiBzdWJ0cmVlO1xufVxuLyoqXG4gKiBSZW5kZXJzIHN1c3BlbnNlIGJvdW5kYXJ5IHdpdGggdGhlIHByb3ZpZGVkIFwibG9hZGluZ1wiIHByb3BlcnR5IGFzIHRoZSBmYWxsYmFjay5cbiAqIElmIG5vIGxvYWRpbmcgcHJvcGVydHkgaXMgcHJvdmlkZWQgaXQgcmVuZGVycyB0aGUgY2hpbGRyZW4gd2l0aG91dCBhIHN1c3BlbnNlIGJvdW5kYXJ5LlxuICovIGZ1bmN0aW9uIExvYWRpbmdCb3VuZGFyeShwYXJhbSkge1xuICAgIGxldCB7IGNoaWxkcmVuLCBsb2FkaW5nLCBsb2FkaW5nU3R5bGVzLCBsb2FkaW5nU2NyaXB0cywgaGFzTG9hZGluZyB9ID0gcGFyYW07XG4gICAgaWYgKGhhc0xvYWRpbmcpIHtcbiAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVhY3QuU3VzcGVuc2UsIHtcbiAgICAgICAgICAgIGZhbGxiYWNrOiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX3JlYWN0LmRlZmF1bHQuRnJhZ21lbnQsIG51bGwsIGxvYWRpbmdTdHlsZXMsIGxvYWRpbmdTY3JpcHRzLCBsb2FkaW5nKVxuICAgICAgICB9LCBjaGlsZHJlbik7XG4gICAgfVxuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX3JlYWN0LmRlZmF1bHQuRnJhZ21lbnQsIG51bGwsIGNoaWxkcmVuKTtcbn1cbmZ1bmN0aW9uIE91dGVyTGF5b3V0Um91dGVyKHBhcmFtKSB7XG4gICAgbGV0IHsgcGFyYWxsZWxSb3V0ZXJLZXksIHNlZ21lbnRQYXRoLCBlcnJvciwgZXJyb3JTdHlsZXMsIGVycm9yU2NyaXB0cywgdGVtcGxhdGVTdHlsZXMsIHRlbXBsYXRlU2NyaXB0cywgbG9hZGluZywgbG9hZGluZ1N0eWxlcywgbG9hZGluZ1NjcmlwdHMsIGhhc0xvYWRpbmcsIHRlbXBsYXRlLCBub3RGb3VuZCwgbm90Rm91bmRTdHlsZXMsIHN0eWxlcyB9ID0gcGFyYW07XG4gICAgY29uc3QgY29udGV4dCA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkxheW91dFJvdXRlckNvbnRleHQpO1xuICAgIGlmICghY29udGV4dCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJpbnZhcmlhbnQgZXhwZWN0ZWQgbGF5b3V0IHJvdXRlciB0byBiZSBtb3VudGVkXCIpO1xuICAgIH1cbiAgICBjb25zdCB7IGNoaWxkTm9kZXMsIHRyZWUsIHVybCB9ID0gY29udGV4dDtcbiAgICAvLyBHZXQgdGhlIGN1cnJlbnQgcGFyYWxsZWxSb3V0ZXIgY2FjaGUgbm9kZVxuICAgIGxldCBjaGlsZE5vZGVzRm9yUGFyYWxsZWxSb3V0ZXIgPSBjaGlsZE5vZGVzLmdldChwYXJhbGxlbFJvdXRlcktleSk7XG4gICAgLy8gSWYgdGhlIHBhcmFsbGVsIHJvdXRlciBjYWNoZSBub2RlIGRvZXMgbm90IGV4aXN0IHlldCwgY3JlYXRlIGl0LlxuICAgIC8vIFRoaXMgd3JpdGVzIHRvIHRoZSBjYWNoZSB3aGVuIHRoZXJlIGlzIG5vIGl0ZW0gaW4gdGhlIGNhY2hlIHlldC4gSXQgbmV2ZXIgKm92ZXJ3cml0ZXMqIGV4aXN0aW5nIGNhY2hlIGl0ZW1zIHdoaWNoIGlzIHdoeSBpdCdzIHNhZmUgaW4gY29uY3VycmVudCBtb2RlLlxuICAgIGlmICghY2hpbGROb2Rlc0ZvclBhcmFsbGVsUm91dGVyKSB7XG4gICAgICAgIGNoaWxkTm9kZXNGb3JQYXJhbGxlbFJvdXRlciA9IG5ldyBNYXAoKTtcbiAgICAgICAgY2hpbGROb2Rlcy5zZXQocGFyYWxsZWxSb3V0ZXJLZXksIGNoaWxkTm9kZXNGb3JQYXJhbGxlbFJvdXRlcik7XG4gICAgfVxuICAgIC8vIEdldCB0aGUgYWN0aXZlIHNlZ21lbnQgaW4gdGhlIHRyZWVcbiAgICAvLyBUaGUgcmVhc29uIGFycmF5cyBhcmUgdXNlZCBpbiB0aGUgZGF0YSBmb3JtYXQgaXMgdGhhdCB0aGVzZSBhcmUgdHJhbnNmZXJyZWQgZnJvbSB0aGUgc2VydmVyIHRvIHRoZSBicm93c2VyIHNvIGl0J3Mgb3B0aW1pemVkIHRvIHNhdmUgYnl0ZXMuXG4gICAgY29uc3QgdHJlZVNlZ21lbnQgPSB0cmVlWzFdW3BhcmFsbGVsUm91dGVyS2V5XVswXTtcbiAgICAvLyBJZiBzZWdtZW50IGlzIGFuIGFycmF5IGl0J3MgYSBkeW5hbWljIHJvdXRlIGFuZCB3ZSB3YW50IHRvIHJlYWQgdGhlIGR5bmFtaWMgcm91dGUgdmFsdWUgYXMgdGhlIHNlZ21lbnQgdG8gZ2V0IGZyb20gdGhlIGNhY2hlLlxuICAgIGNvbnN0IGN1cnJlbnRDaGlsZFNlZ21lbnRWYWx1ZSA9ICgwLCBfZ2V0c2VnbWVudHZhbHVlLmdldFNlZ21lbnRWYWx1ZSkodHJlZVNlZ21lbnQpO1xuICAgIC8qKlxuICAgKiBEZWNpZGVzIHdoaWNoIHNlZ21lbnRzIHRvIGtlZXAgcmVuZGVyaW5nLCBhbGwgc2VnbWVudHMgdGhhdCBhcmUgbm90IGFjdGl2ZSB3aWxsIGJlIHdyYXBwZWQgaW4gYDxPZmZzY3JlZW4+YC5cbiAgICovIC8vIFRPRE8tQVBQOiBBZGQgaGFuZGxpbmcgb2YgYDxPZmZzY3JlZW4+YCB3aGVuIGl0J3MgYXZhaWxhYmxlLlxuICAgIGNvbnN0IHByZXNlcnZlZFNlZ21lbnRzID0gW1xuICAgICAgICB0cmVlU2VnbWVudFxuICAgIF07XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVhY3QuZGVmYXVsdC5GcmFnbWVudCwgbnVsbCwgc3R5bGVzLCBwcmVzZXJ2ZWRTZWdtZW50cy5tYXAoKHByZXNlcnZlZFNlZ21lbnQpPT57XG4gICAgICAgIGNvbnN0IHByZXNlcnZlZFNlZ21lbnRWYWx1ZSA9ICgwLCBfZ2V0c2VnbWVudHZhbHVlLmdldFNlZ21lbnRWYWx1ZSkocHJlc2VydmVkU2VnbWVudCk7XG4gICAgICAgIGNvbnN0IGNhY2hlS2V5ID0gKDAsIF9jcmVhdGVyb3V0ZXJjYWNoZWtleS5jcmVhdGVSb3V0ZXJDYWNoZUtleSkocHJlc2VydmVkU2VnbWVudCk7XG4gICAgICAgIHJldHVybigvKlxuICAgICAgICAgICAgLSBFcnJvciBib3VuZGFyeVxuICAgICAgICAgICAgICAtIE9ubHkgcmVuZGVycyBlcnJvciBib3VuZGFyeSBpZiBlcnJvciBjb21wb25lbnQgaXMgcHJvdmlkZWQuXG4gICAgICAgICAgICAgIC0gUmVuZGVyZWQgZm9yIGVhY2ggc2VnbWVudCB0byBlbnN1cmUgdGhleSBoYXZlIHRoZWlyIG93biBlcnJvciBzdGF0ZS5cbiAgICAgICAgICAgIC0gTG9hZGluZyBib3VuZGFyeVxuICAgICAgICAgICAgICAtIE9ubHkgcmVuZGVycyBzdXNwZW5zZSBib3VuZGFyeSBpZiBsb2FkaW5nIGNvbXBvbmVudHMgaXMgcHJvdmlkZWQuXG4gICAgICAgICAgICAgIC0gUmVuZGVyZWQgZm9yIGVhY2ggc2VnbWVudCB0byBlbnN1cmUgdGhleSBoYXZlIHRoZWlyIG93biBsb2FkaW5nIHN0YXRlLlxuICAgICAgICAgICAgICAtIFBhc3NlZCB0byB0aGUgcm91dGVyIGR1cmluZyByZW5kZXJpbmcgdG8gZW5zdXJlIGl0IGNhbiBiZSBpbW1lZGlhdGVseSByZW5kZXJlZCB3aGVuIHN1c3BlbmRpbmcgb24gYSBGbGlnaHQgZmV0Y2guXG4gICAgICAgICAgKi8gLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9hcHByb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZS5UZW1wbGF0ZUNvbnRleHQuUHJvdmlkZXIsIHtcbiAgICAgICAgICAgIGtleTogKDAsIF9jcmVhdGVyb3V0ZXJjYWNoZWtleS5jcmVhdGVSb3V0ZXJDYWNoZUtleSkocHJlc2VydmVkU2VnbWVudCwgdHJ1ZSksXG4gICAgICAgICAgICB2YWx1ZTogLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KFNjcm9sbEFuZEZvY3VzSGFuZGxlciwge1xuICAgICAgICAgICAgICAgIHNlZ21lbnRQYXRoOiBzZWdtZW50UGF0aFxuICAgICAgICAgICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9lcnJvcmJvdW5kYXJ5LkVycm9yQm91bmRhcnksIHtcbiAgICAgICAgICAgICAgICBlcnJvckNvbXBvbmVudDogZXJyb3IsXG4gICAgICAgICAgICAgICAgZXJyb3JTdHlsZXM6IGVycm9yU3R5bGVzLFxuICAgICAgICAgICAgICAgIGVycm9yU2NyaXB0czogZXJyb3JTY3JpcHRzXG4gICAgICAgICAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoTG9hZGluZ0JvdW5kYXJ5LCB7XG4gICAgICAgICAgICAgICAgaGFzTG9hZGluZzogaGFzTG9hZGluZyxcbiAgICAgICAgICAgICAgICBsb2FkaW5nOiBsb2FkaW5nLFxuICAgICAgICAgICAgICAgIGxvYWRpbmdTdHlsZXM6IGxvYWRpbmdTdHlsZXMsXG4gICAgICAgICAgICAgICAgbG9hZGluZ1NjcmlwdHM6IGxvYWRpbmdTY3JpcHRzXG4gICAgICAgICAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoX25vdGZvdW5kYm91bmRhcnkuTm90Rm91bmRCb3VuZGFyeSwge1xuICAgICAgICAgICAgICAgIG5vdEZvdW5kOiBub3RGb3VuZCxcbiAgICAgICAgICAgICAgICBub3RGb3VuZFN0eWxlczogbm90Rm91bmRTdHlsZXNcbiAgICAgICAgICAgIH0sIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVkaXJlY3Rib3VuZGFyeS5SZWRpcmVjdEJvdW5kYXJ5LCBudWxsLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoSW5uZXJMYXlvdXRSb3V0ZXIsIHtcbiAgICAgICAgICAgICAgICBwYXJhbGxlbFJvdXRlcktleTogcGFyYWxsZWxSb3V0ZXJLZXksXG4gICAgICAgICAgICAgICAgdXJsOiB1cmwsXG4gICAgICAgICAgICAgICAgdHJlZTogdHJlZSxcbiAgICAgICAgICAgICAgICBjaGlsZE5vZGVzOiBjaGlsZE5vZGVzRm9yUGFyYWxsZWxSb3V0ZXIsXG4gICAgICAgICAgICAgICAgc2VnbWVudFBhdGg6IHNlZ21lbnRQYXRoLFxuICAgICAgICAgICAgICAgIGNhY2hlS2V5OiBjYWNoZUtleSxcbiAgICAgICAgICAgICAgICBpc0FjdGl2ZTogY3VycmVudENoaWxkU2VnbWVudFZhbHVlID09PSBwcmVzZXJ2ZWRTZWdtZW50VmFsdWVcbiAgICAgICAgICAgIH0pKSkpKSlcbiAgICAgICAgfSwgdGVtcGxhdGVTdHlsZXMsIHRlbXBsYXRlU2NyaXB0cywgdGVtcGxhdGUpKTtcbiAgICB9KSk7XG59XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWxheW91dC1yb3V0ZXIuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIk91dGVyTGF5b3V0Um91dGVyIiwiX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0IiwicmVxdWlyZSIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJfcmVhY3QiLCJfIiwiX3JlYWN0ZG9tIiwiX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lIiwiX2ZldGNoc2VydmVycmVzcG9uc2UiLCJfaW5maW5pdGVwcm9taXNlIiwiX2Vycm9yYm91bmRhcnkiLCJfbWF0Y2hzZWdtZW50cyIsIl9oYW5kbGVzbW9vdGhzY3JvbGwiLCJfcmVkaXJlY3Rib3VuZGFyeSIsIl9ub3Rmb3VuZGJvdW5kYXJ5IiwiX2dldHNlZ21lbnR2YWx1ZSIsIl9jcmVhdGVyb3V0ZXJjYWNoZWtleSIsIndhbGtBZGRSZWZldGNoIiwic2VnbWVudFBhdGhUb1dhbGsiLCJ0cmVlVG9SZWNyZWF0ZSIsInNlZ21lbnQiLCJwYXJhbGxlbFJvdXRlS2V5IiwiaXNMYXN0IiwibGVuZ3RoIiwibWF0Y2hTZWdtZW50IiwiaGFzT3duUHJvcGVydHkiLCJzdWJUcmVlIiwidW5kZWZpbmVkIiwic2xpY2UiLCJmaW5kRE9NTm9kZSIsImluc3RhbmNlIiwicHJvY2VzcyIsIm9yaWdpbmFsQ29uc29sZUVycm9yIiwiY29uc29sZSIsImVycm9yIiwiX2xlbiIsImFyZ3VtZW50cyIsIm1lc3NhZ2VzIiwiQXJyYXkiLCJfa2V5IiwiaW5jbHVkZXMiLCJkZWZhdWx0IiwicmVjdFByb3BlcnRpZXMiLCJzaG91bGRTa2lwRWxlbWVudCIsImVsZW1lbnQiLCJnZXRDb21wdXRlZFN0eWxlIiwicG9zaXRpb24iLCJ3YXJuIiwicmVjdCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImV2ZXJ5IiwiaXRlbSIsInRvcE9mRWxlbWVudEluVmlld3BvcnQiLCJ2aWV3cG9ydEhlaWdodCIsInRvcCIsImdldEhhc2hGcmFnbWVudERvbU5vZGUiLCJoYXNoRnJhZ21lbnQiLCJkb2N1bWVudCIsImJvZHkiLCJfZG9jdW1lbnRfZ2V0RWxlbWVudEJ5SWQiLCJnZXRFbGVtZW50QnlJZCIsImdldEVsZW1lbnRzQnlOYW1lIiwiSW5uZXJTY3JvbGxBbmRGb2N1c0hhbmRsZXIiLCJDb21wb25lbnQiLCJjb21wb25lbnREaWRNb3VudCIsImhhbmRsZVBvdGVudGlhbFNjcm9sbCIsImNvbXBvbmVudERpZFVwZGF0ZSIsInByb3BzIiwiZm9jdXNBbmRTY3JvbGxSZWYiLCJhcHBseSIsInJlbmRlciIsImNoaWxkcmVuIiwiY29uc3RydWN0b3IiLCJhcmdzIiwic2VnbWVudFBhdGgiLCJzZWdtZW50UGF0aHMiLCJzb21lIiwic2Nyb2xsUmVmU2VnbWVudFBhdGgiLCJpbmRleCIsImRvbU5vZGUiLCJFbGVtZW50IiwiSFRNTEVsZW1lbnQiLCJuZXh0RWxlbWVudFNpYmxpbmciLCJoYW5kbGVTbW9vdGhTY3JvbGwiLCJzY3JvbGxJbnRvVmlldyIsImh0bWxFbGVtZW50IiwiZG9jdW1lbnRFbGVtZW50IiwiY2xpZW50SGVpZ2h0Iiwic2Nyb2xsVG9wIiwiZG9udEZvcmNlTGF5b3V0Iiwib25seUhhc2hDaGFuZ2UiLCJmb2N1cyIsIlNjcm9sbEFuZEZvY3VzSGFuZGxlciIsInBhcmFtIiwiY29udGV4dCIsInVzZUNvbnRleHQiLCJHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0IiwiRXJyb3IiLCJjcmVhdGVFbGVtZW50IiwiSW5uZXJMYXlvdXRSb3V0ZXIiLCJwYXJhbGxlbFJvdXRlcktleSIsInVybCIsImNoaWxkTm9kZXMiLCJ0cmVlIiwiY2FjaGVLZXkiLCJidWlsZElkIiwiY2hhbmdlQnlTZXJ2ZXJSZXNwb25zZSIsImZ1bGxUcmVlIiwiY2hpbGROb2RlIiwic3RhdHVzIiwiQ2FjaGVTdGF0ZXMiLCJMQVpZX0lOSVRJQUxJWkVEIiwicmVmZXRjaFRyZWUiLCJEQVRBX0ZFVENIIiwiZGF0YSIsImZldGNoU2VydmVyUmVzcG9uc2UiLCJVUkwiLCJsb2NhdGlvbiIsIm9yaWdpbiIsIm5leHRVcmwiLCJzdWJUcmVlRGF0YSIsImhlYWQiLCJwYXJhbGxlbFJvdXRlcyIsIk1hcCIsInNldCIsImZsaWdodERhdGEiLCJvdmVycmlkZUNhbm9uaWNhbFVybCIsInVzZSIsInNldFRpbWVvdXQiLCJzdGFydFRyYW5zaXRpb24iLCJjcmVhdGVJbmZpbml0ZVByb21pc2UiLCJzdWJ0cmVlIiwiTGF5b3V0Um91dGVyQ29udGV4dCIsIlByb3ZpZGVyIiwiTG9hZGluZ0JvdW5kYXJ5IiwibG9hZGluZyIsImxvYWRpbmdTdHlsZXMiLCJsb2FkaW5nU2NyaXB0cyIsImhhc0xvYWRpbmciLCJTdXNwZW5zZSIsImZhbGxiYWNrIiwiRnJhZ21lbnQiLCJlcnJvclN0eWxlcyIsImVycm9yU2NyaXB0cyIsInRlbXBsYXRlU3R5bGVzIiwidGVtcGxhdGVTY3JpcHRzIiwidGVtcGxhdGUiLCJub3RGb3VuZCIsIm5vdEZvdW5kU3R5bGVzIiwic3R5bGVzIiwiY2hpbGROb2Rlc0ZvclBhcmFsbGVsUm91dGVyIiwidHJlZVNlZ21lbnQiLCJjdXJyZW50Q2hpbGRTZWdtZW50VmFsdWUiLCJnZXRTZWdtZW50VmFsdWUiLCJwcmVzZXJ2ZWRTZWdtZW50cyIsIm1hcCIsInByZXNlcnZlZFNlZ21lbnQiLCJwcmVzZXJ2ZWRTZWdtZW50VmFsdWUiLCJjcmVhdGVSb3V0ZXJDYWNoZUtleSIsIlRlbXBsYXRlQ29udGV4dCIsImtleSIsIkVycm9yQm91bmRhcnkiLCJlcnJvckNvbXBvbmVudCIsIk5vdEZvdW5kQm91bmRhcnkiLCJSZWRpcmVjdEJvdW5kYXJ5IiwiaXNBY3RpdmUiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/layout-router.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/match-segments.js": /*!********************************************************************!*\ !*** ./node_modules/next/dist/client/components/match-segments.js ***! \********************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n matchSegment: function() {\n return matchSegment;\n },\n canSegmentBeOverridden: function() {\n return canSegmentBeOverridden;\n }\n});\nconst _getsegmentparam = __webpack_require__(/*! ../../server/app-render/get-segment-param */ \"(ssr)/./node_modules/next/dist/server/app-render/get-segment-param.js\");\nconst matchSegment = (existingSegment, segment)=>{\n // segment is either Array or string\n if (typeof existingSegment === \"string\") {\n if (typeof segment === \"string\") {\n // Common case: segment is just a string\n return existingSegment === segment;\n }\n return false;\n }\n if (typeof segment === \"string\") {\n return false;\n }\n return existingSegment[0] === segment[0] && existingSegment[1] === segment[1];\n};\nconst canSegmentBeOverridden = (existingSegment, segment)=>{\n var _getSegmentParam;\n if (Array.isArray(existingSegment) || !Array.isArray(segment)) {\n return false;\n }\n return ((_getSegmentParam = (0, _getsegmentparam.getSegmentParam)(existingSegment)) == null ? void 0 : _getSegmentParam.param) === segment[0];\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=match-segments.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL21hdGNoLXNlZ21lbnRzLmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGLEtBQU1DLENBQUFBLENBR047QUFDQSxTQUFTRyxRQUFRQyxNQUFNLEVBQUVDLEdBQUc7SUFDeEIsSUFBSSxJQUFJQyxRQUFRRCxJQUFJVCxPQUFPQyxjQUFjLENBQUNPLFFBQVFFLE1BQU07UUFDcERDLFlBQVk7UUFDWkMsS0FBS0gsR0FBRyxDQUFDQyxLQUFLO0lBQ2xCO0FBQ0o7QUFDQUgsUUFBUUwsU0FBUztJQUNiRyxjQUFjO1FBQ1YsT0FBT0E7SUFDWDtJQUNBQyx3QkFBd0I7UUFDcEIsT0FBT0E7SUFDWDtBQUNKO0FBQ0EsTUFBTU8sbUJBQW1CQyxtQkFBT0EsQ0FBQyx3SEFBMkM7QUFDNUUsTUFBTVQsZUFBZSxDQUFDVSxpQkFBaUJDO0lBQ25DLG9DQUFvQztJQUNwQyxJQUFJLE9BQU9ELG9CQUFvQixVQUFVO1FBQ3JDLElBQUksT0FBT0MsWUFBWSxVQUFVO1lBQzdCLHdDQUF3QztZQUN4QyxPQUFPRCxvQkFBb0JDO1FBQy9CO1FBQ0EsT0FBTztJQUNYO0lBQ0EsSUFBSSxPQUFPQSxZQUFZLFVBQVU7UUFDN0IsT0FBTztJQUNYO0lBQ0EsT0FBT0QsZUFBZSxDQUFDLEVBQUUsS0FBS0MsT0FBTyxDQUFDLEVBQUUsSUFBSUQsZUFBZSxDQUFDLEVBQUUsS0FBS0MsT0FBTyxDQUFDLEVBQUU7QUFDakY7QUFDQSxNQUFNVix5QkFBeUIsQ0FBQ1MsaUJBQWlCQztJQUM3QyxJQUFJQztJQUNKLElBQUlDLE1BQU1DLE9BQU8sQ0FBQ0osb0JBQW9CLENBQUNHLE1BQU1DLE9BQU8sQ0FBQ0gsVUFBVTtRQUMzRCxPQUFPO0lBQ1g7SUFDQSxPQUFPLENBQUMsQ0FBQ0MsbUJBQW1CLENBQUMsR0FBR0osaUJBQWlCTyxlQUFlLEVBQUVMLGdCQUFlLEtBQU0sT0FBTyxLQUFLLElBQUlFLGlCQUFpQkksS0FBSyxNQUFNTCxPQUFPLENBQUMsRUFBRTtBQUNqSjtBQUVBLElBQUksQ0FBQyxPQUFPZCxRQUFRb0IsT0FBTyxLQUFLLGNBQWUsT0FBT3BCLFFBQVFvQixPQUFPLEtBQUssWUFBWXBCLFFBQVFvQixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9wQixRQUFRb0IsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS3ZCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUW9CLE9BQU8sRUFBRSxjQUFjO1FBQUVuQixPQUFPO0lBQUs7SUFDbkVILE9BQU93QixNQUFNLENBQUN0QixRQUFRb0IsT0FBTyxFQUFFcEI7SUFDL0JFLE9BQU9GLE9BQU8sR0FBR0EsUUFBUW9CLE9BQU87QUFDbEMsRUFFQSwwQ0FBMEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbWF0Y2gtc2VnbWVudHMuanM/YmNiMSJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbjAgJiYgKG1vZHVsZS5leHBvcnRzID0ge1xuICAgIG1hdGNoU2VnbWVudDogbnVsbCxcbiAgICBjYW5TZWdtZW50QmVPdmVycmlkZGVuOiBudWxsXG59KTtcbmZ1bmN0aW9uIF9leHBvcnQodGFyZ2V0LCBhbGwpIHtcbiAgICBmb3IodmFyIG5hbWUgaW4gYWxsKU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIG5hbWUsIHtcbiAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICAgICAgZ2V0OiBhbGxbbmFtZV1cbiAgICB9KTtcbn1cbl9leHBvcnQoZXhwb3J0cywge1xuICAgIG1hdGNoU2VnbWVudDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBtYXRjaFNlZ21lbnQ7XG4gICAgfSxcbiAgICBjYW5TZWdtZW50QmVPdmVycmlkZGVuOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGNhblNlZ21lbnRCZU92ZXJyaWRkZW47XG4gICAgfVxufSk7XG5jb25zdCBfZ2V0c2VnbWVudHBhcmFtID0gcmVxdWlyZShcIi4uLy4uL3NlcnZlci9hcHAtcmVuZGVyL2dldC1zZWdtZW50LXBhcmFtXCIpO1xuY29uc3QgbWF0Y2hTZWdtZW50ID0gKGV4aXN0aW5nU2VnbWVudCwgc2VnbWVudCk9PntcbiAgICAvLyBzZWdtZW50IGlzIGVpdGhlciBBcnJheSBvciBzdHJpbmdcbiAgICBpZiAodHlwZW9mIGV4aXN0aW5nU2VnbWVudCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICBpZiAodHlwZW9mIHNlZ21lbnQgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIC8vIENvbW1vbiBjYXNlOiBzZWdtZW50IGlzIGp1c3QgYSBzdHJpbmdcbiAgICAgICAgICAgIHJldHVybiBleGlzdGluZ1NlZ21lbnQgPT09IHNlZ21lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHNlZ21lbnQgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gZXhpc3RpbmdTZWdtZW50WzBdID09PSBzZWdtZW50WzBdICYmIGV4aXN0aW5nU2VnbWVudFsxXSA9PT0gc2VnbWVudFsxXTtcbn07XG5jb25zdCBjYW5TZWdtZW50QmVPdmVycmlkZGVuID0gKGV4aXN0aW5nU2VnbWVudCwgc2VnbWVudCk9PntcbiAgICB2YXIgX2dldFNlZ21lbnRQYXJhbTtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShleGlzdGluZ1NlZ21lbnQpIHx8ICFBcnJheS5pc0FycmF5KHNlZ21lbnQpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICgoX2dldFNlZ21lbnRQYXJhbSA9ICgwLCBfZ2V0c2VnbWVudHBhcmFtLmdldFNlZ21lbnRQYXJhbSkoZXhpc3RpbmdTZWdtZW50KSkgPT0gbnVsbCA/IHZvaWQgMCA6IF9nZXRTZWdtZW50UGFyYW0ucGFyYW0pID09PSBzZWdtZW50WzBdO1xufTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bWF0Y2gtc2VnbWVudHMuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwibW9kdWxlIiwibWF0Y2hTZWdtZW50IiwiY2FuU2VnbWVudEJlT3ZlcnJpZGRlbiIsIl9leHBvcnQiLCJ0YXJnZXQiLCJhbGwiLCJuYW1lIiwiZW51bWVyYWJsZSIsImdldCIsIl9nZXRzZWdtZW50cGFyYW0iLCJyZXF1aXJlIiwiZXhpc3RpbmdTZWdtZW50Iiwic2VnbWVudCIsIl9nZXRTZWdtZW50UGFyYW0iLCJBcnJheSIsImlzQXJyYXkiLCJnZXRTZWdtZW50UGFyYW0iLCJwYXJhbSIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/match-segments.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/navigation.js": /*!****************************************************************!*\ !*** ./node_modules/next/dist/client/components/navigation.js ***! \****************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n ReadonlyURLSearchParams: function() {\n return ReadonlyURLSearchParams;\n },\n useSearchParams: function() {\n return useSearchParams;\n },\n usePathname: function() {\n return usePathname;\n },\n ServerInsertedHTMLContext: function() {\n return _serverinsertedhtmlsharedruntime.ServerInsertedHTMLContext;\n },\n useServerInsertedHTML: function() {\n return _serverinsertedhtmlsharedruntime.useServerInsertedHTML;\n },\n useRouter: function() {\n return useRouter;\n },\n useParams: function() {\n return useParams;\n },\n useSelectedLayoutSegments: function() {\n return useSelectedLayoutSegments;\n },\n useSelectedLayoutSegment: function() {\n return useSelectedLayoutSegment;\n },\n redirect: function() {\n return _redirect.redirect;\n },\n permanentRedirect: function() {\n return _redirect.permanentRedirect;\n },\n RedirectType: function() {\n return _redirect.RedirectType;\n },\n notFound: function() {\n return _notfound.notFound;\n }\n});\nconst _react = __webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\");\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/app-router-context.js\");\nconst _hooksclientcontextsharedruntime = __webpack_require__(/*! ../../shared/lib/hooks-client-context.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/hooks-client-context.js\");\nconst _clienthookinservercomponenterror = __webpack_require__(/*! ./client-hook-in-server-component-error */ \"(ssr)/./node_modules/next/dist/client/components/client-hook-in-server-component-error.js\");\nconst _getsegmentvalue = __webpack_require__(/*! ./router-reducer/reducers/get-segment-value */ \"(ssr)/./node_modules/next/dist/client/components/router-reducer/reducers/get-segment-value.js\");\nconst _serverinsertedhtmlsharedruntime = __webpack_require__(/*! ../../shared/lib/server-inserted-html.shared-runtime */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/contexts/server-inserted-html.js\");\nconst _redirect = __webpack_require__(/*! ./redirect */ \"(ssr)/./node_modules/next/dist/client/components/redirect.js\");\nconst _notfound = __webpack_require__(/*! ./not-found */ \"(ssr)/./node_modules/next/dist/client/components/not-found.js\");\nconst INTERNAL_URLSEARCHPARAMS_INSTANCE = Symbol(\"internal for urlsearchparams readonly\");\nfunction readonlyURLSearchParamsError() {\n return new Error(\"ReadonlyURLSearchParams cannot be modified\");\n}\nclass ReadonlyURLSearchParams {\n [Symbol.iterator]() {\n return this[INTERNAL_URLSEARCHPARAMS_INSTANCE][Symbol.iterator]();\n }\n append() {\n throw readonlyURLSearchParamsError();\n }\n delete() {\n throw readonlyURLSearchParamsError();\n }\n set() {\n throw readonlyURLSearchParamsError();\n }\n sort() {\n throw readonlyURLSearchParamsError();\n }\n constructor(urlSearchParams){\n this[INTERNAL_URLSEARCHPARAMS_INSTANCE] = urlSearchParams;\n this.entries = urlSearchParams.entries.bind(urlSearchParams);\n this.forEach = urlSearchParams.forEach.bind(urlSearchParams);\n this.get = urlSearchParams.get.bind(urlSearchParams);\n this.getAll = urlSearchParams.getAll.bind(urlSearchParams);\n this.has = urlSearchParams.has.bind(urlSearchParams);\n this.keys = urlSearchParams.keys.bind(urlSearchParams);\n this.values = urlSearchParams.values.bind(urlSearchParams);\n this.toString = urlSearchParams.toString.bind(urlSearchParams);\n this.size = urlSearchParams.size;\n }\n}\nfunction useSearchParams() {\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"useSearchParams\");\n const searchParams = (0, _react.useContext)(_hooksclientcontextsharedruntime.SearchParamsContext);\n // In the case where this is `null`, the compat types added in\n // `next-env.d.ts` will add a new overload that changes the return type to\n // include `null`.\n const readonlySearchParams = (0, _react.useMemo)(()=>{\n if (!searchParams) {\n // When the router is not ready in pages, we won't have the search params\n // available.\n return null;\n }\n return new ReadonlyURLSearchParams(searchParams);\n }, [\n searchParams\n ]);\n if (true) {\n // AsyncLocalStorage should not be included in the client bundle.\n const { bailoutToClientRendering } = __webpack_require__(/*! ./bailout-to-client-rendering */ \"(ssr)/./node_modules/next/dist/client/components/bailout-to-client-rendering.js\");\n // TODO-APP: handle dynamic = 'force-static' here and on the client\n bailoutToClientRendering();\n }\n return readonlySearchParams;\n}\nfunction usePathname() {\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"usePathname\");\n // In the case where this is `null`, the compat types added in `next-env.d.ts`\n // will add a new overload that changes the return type to include `null`.\n return (0, _react.useContext)(_hooksclientcontextsharedruntime.PathnameContext);\n}\nfunction useRouter() {\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"useRouter\");\n const router = (0, _react.useContext)(_approutercontextsharedruntime.AppRouterContext);\n if (router === null) {\n throw new Error(\"invariant expected app router to be mounted\");\n }\n return router;\n}\n// this function performs a depth-first search of the tree to find the selected\n// params\nfunction getSelectedParams(tree, params) {\n if (params === void 0) params = {};\n const parallelRoutes = tree[1];\n for (const parallelRoute of Object.values(parallelRoutes)){\n const segment = parallelRoute[0];\n const isDynamicParameter = Array.isArray(segment);\n const segmentValue = isDynamicParameter ? segment[1] : segment;\n if (!segmentValue || segmentValue.startsWith(\"__PAGE__\")) continue;\n // Ensure catchAll and optional catchall are turned into an array\n const isCatchAll = isDynamicParameter && (segment[2] === \"c\" || segment[2] === \"oc\");\n if (isCatchAll) {\n params[segment[0]] = segment[1].split(\"/\");\n } else if (isDynamicParameter) {\n params[segment[0]] = segment[1];\n }\n params = getSelectedParams(parallelRoute, params);\n }\n return params;\n}\nfunction useParams() {\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"useParams\");\n const globalLayoutRouter = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n const pathParams = (0, _react.useContext)(_hooksclientcontextsharedruntime.PathParamsContext);\n return (0, _react.useMemo)(()=>{\n // When it's under app router\n if (globalLayoutRouter == null ? void 0 : globalLayoutRouter.tree) {\n return getSelectedParams(globalLayoutRouter.tree);\n }\n // When it's under client side pages router\n return pathParams;\n }, [\n globalLayoutRouter == null ? void 0 : globalLayoutRouter.tree,\n pathParams\n ]);\n}\n// TODO-APP: handle parallel routes\n/**\n * Get the canonical parameters from the current level to the leaf node.\n */ function getSelectedLayoutSegmentPath(tree, parallelRouteKey, first, segmentPath) {\n if (first === void 0) first = true;\n if (segmentPath === void 0) segmentPath = [];\n let node;\n if (first) {\n // Use the provided parallel route key on the first parallel route\n node = tree[1][parallelRouteKey];\n } else {\n // After first parallel route prefer children, if there's no children pick the first parallel route.\n const parallelRoutes = tree[1];\n var _parallelRoutes_children;\n node = (_parallelRoutes_children = parallelRoutes.children) != null ? _parallelRoutes_children : Object.values(parallelRoutes)[0];\n }\n if (!node) return segmentPath;\n const segment = node[0];\n const segmentValue = (0, _getsegmentvalue.getSegmentValue)(segment);\n if (!segmentValue || segmentValue.startsWith(\"__PAGE__\")) return segmentPath;\n segmentPath.push(segmentValue);\n return getSelectedLayoutSegmentPath(node, parallelRouteKey, false, segmentPath);\n}\nfunction useSelectedLayoutSegments(parallelRouteKey) {\n if (parallelRouteKey === void 0) parallelRouteKey = \"children\";\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"useSelectedLayoutSegments\");\n const { tree } = (0, _react.useContext)(_approutercontextsharedruntime.LayoutRouterContext);\n return getSelectedLayoutSegmentPath(tree, parallelRouteKey);\n}\nfunction useSelectedLayoutSegment(parallelRouteKey) {\n if (parallelRouteKey === void 0) parallelRouteKey = \"children\";\n (0, _clienthookinservercomponenterror.clientHookInServerComponentError)(\"useSelectedLayoutSegment\");\n const selectedLayoutSegments = useSelectedLayoutSegments(parallelRouteKey);\n if (selectedLayoutSegments.length === 0) {\n return null;\n }\n return selectedLayoutSegments[0];\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=navigation.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25hdmlnYXRpb24uanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0YsS0FBTUMsQ0FBQUEsQ0FjTjtBQUNBLFNBQVNjLFFBQVFDLE1BQU0sRUFBRUMsR0FBRztJQUN4QixJQUFJLElBQUlDLFFBQVFELElBQUlwQixPQUFPQyxjQUFjLENBQUNrQixRQUFRRSxNQUFNO1FBQ3BEQyxZQUFZO1FBQ1pDLEtBQUtILEdBQUcsQ0FBQ0MsS0FBSztJQUNsQjtBQUNKO0FBQ0FILFFBQVFoQixTQUFTO0lBQ2JHLHlCQUF5QjtRQUNyQixPQUFPQTtJQUNYO0lBQ0FDLGlCQUFpQjtRQUNiLE9BQU9BO0lBQ1g7SUFDQUMsYUFBYTtRQUNULE9BQU9BO0lBQ1g7SUFDQUMsMkJBQTJCO1FBQ3ZCLE9BQU9nQixpQ0FBaUNoQix5QkFBeUI7SUFDckU7SUFDQUMsdUJBQXVCO1FBQ25CLE9BQU9lLGlDQUFpQ2YscUJBQXFCO0lBQ2pFO0lBQ0FDLFdBQVc7UUFDUCxPQUFPQTtJQUNYO0lBQ0FDLFdBQVc7UUFDUCxPQUFPQTtJQUNYO0lBQ0FDLDJCQUEyQjtRQUN2QixPQUFPQTtJQUNYO0lBQ0FDLDBCQUEwQjtRQUN0QixPQUFPQTtJQUNYO0lBQ0FDLFVBQVU7UUFDTixPQUFPVyxVQUFVWCxRQUFRO0lBQzdCO0lBQ0FDLG1CQUFtQjtRQUNmLE9BQU9VLFVBQVVWLGlCQUFpQjtJQUN0QztJQUNBQyxjQUFjO1FBQ1YsT0FBT1MsVUFBVVQsWUFBWTtJQUNqQztJQUNBQyxVQUFVO1FBQ04sT0FBT1MsVUFBVVQsUUFBUTtJQUM3QjtBQUNKO0FBQ0EsTUFBTVUsU0FBU0MsbUJBQU9BLENBQUMsd0dBQU87QUFDOUIsTUFBTUMsaUNBQWlDRCxtQkFBT0EsQ0FBQyx1S0FBb0Q7QUFDbkcsTUFBTUUsbUNBQW1DRixtQkFBT0EsQ0FBQywyS0FBc0Q7QUFD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RUFBRTtJQUN4RSxNQUFNLEVBQUVXLElBQUksRUFBRSxHQUFHLENBQUMsR0FBR3JDLE9BQU80QixVQUFVLEVBQUUxQiwrQkFBK0I0RCxtQkFBbUI7SUFDMUYsT0FBT1QsNkJBQTZCaEIsTUFBTWlCO0FBQzlDO0FBQ0EsU0FBU3BFLHlCQUF5Qm9FLGdCQUFnQjtJQUM5QyxJQUFJQSxxQkFBcUIsS0FBSyxHQUFHQSxtQkFBbUI7SUFDbkQsSUFBR2xELGtDQUFrQ3NCLGdDQUFnQyxFQUFFO0lBQ3hFLE1BQU1xQyx5QkFBeUI5RSwwQkFBMEJxRTtJQUN6RCxJQUFJUyx1QkFBdUJDLE1BQU0sS0FBSyxHQUFHO1FBQ3JDLE9BQU87SUFDWDtJQUNBLE9BQU9ELHNCQUFzQixDQUFDLEVBQUU7QUFDcEM7QUFFQSxJQUFJLENBQUMsT0FBT3hGLFFBQVEwRixPQUFPLEtBQUssY0FBZSxPQUFPMUYsUUFBUTBGLE9BQU8sS0FBSyxZQUFZMUYsUUFBUTBGLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBTzFGLFFBQVEwRixPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLN0YsT0FBT0MsY0FBYyxDQUFDQyxRQUFRMEYsT0FBTyxFQUFFLGNBQWM7UUFBRXpGLE9BQU87SUFBSztJQUNuRUgsT0FBTzhGLE1BQU0sQ0FBQzVGLFFBQVEwRixPQUFPLEVBQUUxRjtJQUMvQkUsT0FBT0YsT0FBTyxHQUFHQSxRQUFRMEYsT0FBTztBQUNsQyxFQUVBLHNDQUFzQyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9uYXZpZ2F0aW9uLmpzPzM0ODIiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBSZWFkb25seVVSTFNlYXJjaFBhcmFtczogbnVsbCxcbiAgICB1c2VTZWFyY2hQYXJhbXM6IG51bGwsXG4gICAgdXNlUGF0aG5hbWU6IG51bGwsXG4gICAgU2VydmVySW5zZXJ0ZWRIVE1MQ29udGV4dDogbnVsbCxcbiAgICB1c2VTZXJ2ZXJJbnNlcnRlZEhUTUw6IG51bGwsXG4gICAgdXNlUm91dGVyOiBudWxsLFxuICAgIHVzZVBhcmFtczogbnVsbCxcbiAgICB1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzOiBudWxsLFxuICAgIHVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudDogbnVsbCxcbiAgICByZWRpcmVjdDogbnVsbCxcbiAgICBwZXJtYW5lbnRSZWRpcmVjdDogbnVsbCxcbiAgICBSZWRpcmVjdFR5cGU6IG51bGwsXG4gICAgbm90Rm91bmQ6IG51bGxcbn0pO1xuZnVuY3Rpb24gX2V4cG9ydCh0YXJnZXQsIGFsbCkge1xuICAgIGZvcih2YXIgbmFtZSBpbiBhbGwpT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgbmFtZSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGFsbFtuYW1lXVxuICAgIH0pO1xufVxuX2V4cG9ydChleHBvcnRzLCB7XG4gICAgUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXM6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXM7XG4gICAgfSxcbiAgICB1c2VTZWFyY2hQYXJhbXM6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdXNlU2VhcmNoUGFyYW1zO1xuICAgIH0sXG4gICAgdXNlUGF0aG5hbWU6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdXNlUGF0aG5hbWU7XG4gICAgfSxcbiAgICBTZXJ2ZXJJbnNlcnRlZEhUTUxDb250ZXh0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9zZXJ2ZXJpbnNlcnRlZGh0bWxzaGFyZWRydW50aW1lLlNlcnZlckluc2VydGVkSFRNTENvbnRleHQ7XG4gICAgfSxcbiAgICB1c2VTZXJ2ZXJJbnNlcnRlZEhUTUw6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX3NlcnZlcmluc2VydGVkaHRtbHNoYXJlZHJ1bnRpbWUudXNlU2VydmVySW5zZXJ0ZWRIVE1MO1xuICAgIH0sXG4gICAgdXNlUm91dGVyOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHVzZVJvdXRlcjtcbiAgICB9LFxuICAgIHVzZVBhcmFtczogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB1c2VQYXJhbXM7XG4gICAgfSxcbiAgICB1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHVzZVNlbGVjdGVkTGF5b3V0U2VnbWVudHM7XG4gICAgfSxcbiAgICB1c2VTZWxlY3RlZExheW91dFNlZ21lbnQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50O1xuICAgIH0sXG4gICAgcmVkaXJlY3Q6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX3JlZGlyZWN0LnJlZGlyZWN0O1xuICAgIH0sXG4gICAgcGVybWFuZW50UmVkaXJlY3Q6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX3JlZGlyZWN0LnBlcm1hbmVudFJlZGlyZWN0O1xuICAgIH0sXG4gICAgUmVkaXJlY3RUeXBlOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9yZWRpcmVjdC5SZWRpcmVjdFR5cGU7XG4gICAgfSxcbiAgICBub3RGb3VuZDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBfbm90Zm91bmQubm90Rm91bmQ7XG4gICAgfVxufSk7XG5jb25zdCBfcmVhY3QgPSByZXF1aXJlKFwicmVhY3RcIik7XG5jb25zdCBfYXBwcm91dGVyY29udGV4dHNoYXJlZHJ1bnRpbWUgPSByZXF1aXJlKFwiLi4vLi4vc2hhcmVkL2xpYi9hcHAtcm91dGVyLWNvbnRleHQuc2hhcmVkLXJ1bnRpbWVcIik7XG5jb25zdCBfaG9va3NjbGllbnRjb250ZXh0c2hhcmVkcnVudGltZSA9IHJlcXVpcmUoXCIuLi8uLi9zaGFyZWQvbGliL2hvb2tzLWNsaWVudC1jb250ZXh0LnNoYXJlZC1ydW50aW1lXCIpO1xuY29uc3QgX2NsaWVudGhvb2tpbnNlcnZlcmNvbXBvbmVudGVycm9yID0gcmVxdWlyZShcIi4vY2xpZW50LWhvb2staW4tc2VydmVyLWNvbXBvbmVudC1lcnJvclwiKTtcbmNvbnN0IF9nZXRzZWdtZW50dmFsdWUgPSByZXF1aXJlKFwiLi9yb3V0ZXItcmVkdWNlci9yZWR1Y2Vycy9nZXQtc2VnbWVudC12YWx1ZVwiKTtcbmNvbnN0IF9zZXJ2ZXJpbnNlcnRlZGh0bWxzaGFyZWRydW50aW1lID0gcmVxdWlyZShcIi4uLy4uL3NoYXJlZC9saWIvc2VydmVyLWluc2VydGVkLWh0bWwuc2hhcmVkLXJ1bnRpbWVcIik7XG5jb25zdCBfcmVkaXJlY3QgPSByZXF1aXJlKFwiLi9yZWRpcmVjdFwiKTtcbmNvbnN0IF9ub3Rmb3VuZCA9IHJlcXVpcmUoXCIuL25vdC1mb3VuZFwiKTtcbmNvbnN0IElOVEVSTkFMX1VSTFNFQVJDSFBBUkFNU19JTlNUQU5DRSA9IFN5bWJvbChcImludGVybmFsIGZvciB1cmxzZWFyY2hwYXJhbXMgcmVhZG9ubHlcIik7XG5mdW5jdGlvbiByZWFkb25seVVSTFNlYXJjaFBhcmFtc0Vycm9yKCkge1xuICAgIHJldHVybiBuZXcgRXJyb3IoXCJSZWFkb25seVVSTFNlYXJjaFBhcmFtcyBjYW5ub3QgYmUgbW9kaWZpZWRcIik7XG59XG5jbGFzcyBSZWFkb25seVVSTFNlYXJjaFBhcmFtcyB7XG4gICAgW1N5bWJvbC5pdGVyYXRvcl0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzW0lOVEVSTkFMX1VSTFNFQVJDSFBBUkFNU19JTlNUQU5DRV1bU3ltYm9sLml0ZXJhdG9yXSgpO1xuICAgIH1cbiAgICBhcHBlbmQoKSB7XG4gICAgICAgIHRocm93IHJlYWRvbmx5VVJMU2VhcmNoUGFyYW1zRXJyb3IoKTtcbiAgICB9XG4gICAgZGVsZXRlKCkge1xuICAgICAgICB0aHJvdyByZWFkb25seVVSTFNlYXJjaFBhcmFtc0Vycm9yKCk7XG4gICAgfVxuICAgIHNldCgpIHtcbiAgICAgICAgdGhyb3cgcmVhZG9ubHlVUkxTZWFyY2hQYXJhbXNFcnJvcigpO1xuICAgIH1cbiAgICBzb3J0KCkge1xuICAgICAgICB0aHJvdyByZWFkb25seVVSTFNlYXJjaFBhcmFtc0Vycm9yKCk7XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHVybFNlYXJjaFBhcmFtcyl7XG4gICAgICAgIHRoaXNbSU5URVJOQUxfVVJMU0VBUkNIUEFSQU1TX0lOU1RBTkNFXSA9IHVybFNlYXJjaFBhcmFtcztcbiAgICAgICAgdGhpcy5lbnRyaWVzID0gdXJsU2VhcmNoUGFyYW1zLmVudHJpZXMuYmluZCh1cmxTZWFyY2hQYXJhbXMpO1xuICAgICAgICB0aGlzLmZvckVhY2ggPSB1cmxTZWFyY2hQYXJhbXMuZm9yRWFjaC5iaW5kKHVybFNlYXJjaFBhcmFtcyk7XG4gICAgICAgIHRoaXMuZ2V0ID0gdXJsU2VhcmNoUGFyYW1zLmdldC5iaW5kKHVybFNlYXJjaFBhcmFtcyk7XG4gICAgICAgIHRoaXMuZ2V0QWxsID0gdXJsU2VhcmNoUGFyYW1zLmdldEFsbC5iaW5kKHVybFNlYXJjaFBhcmFtcyk7XG4gICAgICAgIHRoaXMuaGFzID0gdXJsU2VhcmNoUGFyYW1zLmhhcy5iaW5kKHVybFNlYXJjaFBhcmFtcyk7XG4gICAgICAgIHRoaXMua2V5cyA9IHVybFNlYXJjaFBhcmFtcy5rZXlzLmJpbmQodXJsU2VhcmNoUGFyYW1zKTtcbiAgICAgICAgdGhpcy52YWx1ZXMgPSB1cmxTZWFyY2hQYXJhbXMudmFsdWVzLmJpbmQodXJsU2VhcmNoUGFyYW1zKTtcbiAgICAgICAgdGhpcy50b1N0cmluZyA9IHVybFNlYXJjaFBhcmFtcy50b1N0cmluZy5iaW5kKHVybFNlYXJjaFBhcmFtcyk7XG4gICAgICAgIHRoaXMuc2l6ZSA9IHVybFNlYXJjaFBhcmFtcy5zaXplO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHVzZVNlYXJjaFBhcmFtcygpIHtcbiAgICAoMCwgX2NsaWVudGhvb2tpbnNlcnZlcmNvbXBvbmVudGVycm9yLmNsaWVudEhvb2tJblNlcnZlckNvbXBvbmVudEVycm9yKShcInVzZVNlYXJjaFBhcmFtc1wiKTtcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSAoMCwgX3JlYWN0LnVzZUNvbnRleHQpKF9ob29rc2NsaWVudGNvbnRleHRzaGFyZWRydW50aW1lLlNlYXJjaFBhcmFtc0NvbnRleHQpO1xuICAgIC8vIEluIHRoZSBjYXNlIHdoZXJlIHRoaXMgaXMgYG51bGxgLCB0aGUgY29tcGF0IHR5cGVzIGFkZGVkIGluXG4gICAgLy8gYG5leHQtZW52LmQudHNgIHdpbGwgYWRkIGEgbmV3IG92ZXJsb2FkIHRoYXQgY2hhbmdlcyB0aGUgcmV0dXJuIHR5cGUgdG9cbiAgICAvLyBpbmNsdWRlIGBudWxsYC5cbiAgICBjb25zdCByZWFkb25seVNlYXJjaFBhcmFtcyA9ICgwLCBfcmVhY3QudXNlTWVtbykoKCk9PntcbiAgICAgICAgaWYgKCFzZWFyY2hQYXJhbXMpIHtcbiAgICAgICAgICAgIC8vIFdoZW4gdGhlIHJvdXRlciBpcyBub3QgcmVhZHkgaW4gcGFnZXMsIHdlIHdvbid0IGhhdmUgdGhlIHNlYXJjaCBwYXJhbXNcbiAgICAgICAgICAgIC8vIGF2YWlsYWJsZS5cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXcgUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMoc2VhcmNoUGFyYW1zKTtcbiAgICB9LCBbXG4gICAgICAgIHNlYXJjaFBhcmFtc1xuICAgIF0pO1xuICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICAgIC8vIEFzeW5jTG9jYWxTdG9yYWdlIHNob3VsZCBub3QgYmUgaW5jbHVkZWQgaW4gdGhlIGNsaWVudCBidW5kbGUuXG4gICAgICAgIGNvbnN0IHsgYmFpbG91dFRvQ2xpZW50UmVuZGVyaW5nIH0gPSByZXF1aXJlKFwiLi9iYWlsb3V0LXRvLWNsaWVudC1yZW5kZXJpbmdcIik7XG4gICAgICAgIC8vIFRPRE8tQVBQOiBoYW5kbGUgZHluYW1pYyA9ICdmb3JjZS1zdGF0aWMnIGhlcmUgYW5kIG9uIHRoZSBjbGllbnRcbiAgICAgICAgYmFpbG91dFRvQ2xpZW50UmVuZGVyaW5nKCk7XG4gICAgfVxuICAgIHJldHVybiByZWFkb25seVNlYXJjaFBhcmFtcztcbn1cbmZ1bmN0aW9uIHVzZVBhdGhuYW1lKCkge1xuICAgICgwLCBfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IuY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IpKFwidXNlUGF0aG5hbWVcIik7XG4gICAgLy8gSW4gdGhlIGNhc2Ugd2hlcmUgdGhpcyBpcyBgbnVsbGAsIHRoZSBjb21wYXQgdHlwZXMgYWRkZWQgaW4gYG5leHQtZW52LmQudHNgXG4gICAgLy8gd2lsbCBhZGQgYSBuZXcgb3ZlcmxvYWQgdGhhdCBjaGFuZ2VzIHRoZSByZXR1cm4gdHlwZSB0byBpbmNsdWRlIGBudWxsYC5cbiAgICByZXR1cm4gKDAsIF9yZWFjdC51c2VDb250ZXh0KShfaG9va3NjbGllbnRjb250ZXh0c2hhcmVkcnVudGltZS5QYXRobmFtZUNvbnRleHQpO1xufVxuZnVuY3Rpb24gdXNlUm91dGVyKCkge1xuICAgICgwLCBfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IuY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IpKFwidXNlUm91dGVyXCIpO1xuICAgIGNvbnN0IHJvdXRlciA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkFwcFJvdXRlckNvbnRleHQpO1xuICAgIGlmIChyb3V0ZXIgPT09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiaW52YXJpYW50IGV4cGVjdGVkIGFwcCByb3V0ZXIgdG8gYmUgbW91bnRlZFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIHJvdXRlcjtcbn1cbi8vIHRoaXMgZnVuY3Rpb24gcGVyZm9ybXMgYSBkZXB0aC1maXJzdCBzZWFyY2ggb2YgdGhlIHRyZWUgdG8gZmluZCB0aGUgc2VsZWN0ZWRcbi8vIHBhcmFtc1xuZnVuY3Rpb24gZ2V0U2VsZWN0ZWRQYXJhbXModHJlZSwgcGFyYW1zKSB7XG4gICAgaWYgKHBhcmFtcyA9PT0gdm9pZCAwKSBwYXJhbXMgPSB7fTtcbiAgICBjb25zdCBwYXJhbGxlbFJvdXRlcyA9IHRyZWVbMV07XG4gICAgZm9yIChjb25zdCBwYXJhbGxlbFJvdXRlIG9mIE9iamVjdC52YWx1ZXMocGFyYWxsZWxSb3V0ZXMpKXtcbiAgICAgICAgY29uc3Qgc2VnbWVudCA9IHBhcmFsbGVsUm91dGVbMF07XG4gICAgICAgIGNvbnN0IGlzRHluYW1pY1BhcmFtZXRlciA9IEFycmF5LmlzQXJyYXkoc2VnbWVudCk7XG4gICAgICAgIGNvbnN0IHNlZ21lbnRWYWx1ZSA9IGlzRHluYW1pY1BhcmFtZXRlciA/IHNlZ21lbnRbMV0gOiBzZWdtZW50O1xuICAgICAgICBpZiAoIXNlZ21lbnRWYWx1ZSB8fCBzZWdtZW50VmFsdWUuc3RhcnRzV2l0aChcIl9fUEFHRV9fXCIpKSBjb250aW51ZTtcbiAgICAgICAgLy8gRW5zdXJlIGNhdGNoQWxsIGFuZCBvcHRpb25hbCBjYXRjaGFsbCBhcmUgdHVybmVkIGludG8gYW4gYXJyYXlcbiAgICAgICAgY29uc3QgaXNDYXRjaEFsbCA9IGlzRHluYW1pY1BhcmFtZXRlciAmJiAoc2VnbWVudFsyXSA9PT0gXCJjXCIgfHwgc2VnbWVudFsyXSA9PT0gXCJvY1wiKTtcbiAgICAgICAgaWYgKGlzQ2F0Y2hBbGwpIHtcbiAgICAgICAgICAgIHBhcmFtc1tzZWdtZW50WzBdXSA9IHNlZ21lbnRbMV0uc3BsaXQoXCIvXCIpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRHluYW1pY1BhcmFtZXRlcikge1xuICAgICAgICAgICAgcGFyYW1zW3NlZ21lbnRbMF1dID0gc2VnbWVudFsxXTtcbiAgICAgICAgfVxuICAgICAgICBwYXJhbXMgPSBnZXRTZWxlY3RlZFBhcmFtcyhwYXJhbGxlbFJvdXRlLCBwYXJhbXMpO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zO1xufVxuZnVuY3Rpb24gdXNlUGFyYW1zKCkge1xuICAgICgwLCBfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IuY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IpKFwidXNlUGFyYW1zXCIpO1xuICAgIGNvbnN0IGdsb2JhbExheW91dFJvdXRlciA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkdsb2JhbExheW91dFJvdXRlckNvbnRleHQpO1xuICAgIGNvbnN0IHBhdGhQYXJhbXMgPSAoMCwgX3JlYWN0LnVzZUNvbnRleHQpKF9ob29rc2NsaWVudGNvbnRleHRzaGFyZWRydW50aW1lLlBhdGhQYXJhbXNDb250ZXh0KTtcbiAgICByZXR1cm4gKDAsIF9yZWFjdC51c2VNZW1vKSgoKT0+e1xuICAgICAgICAvLyBXaGVuIGl0J3MgdW5kZXIgYXBwIHJvdXRlclxuICAgICAgICBpZiAoZ2xvYmFsTGF5b3V0Um91dGVyID09IG51bGwgPyB2b2lkIDAgOiBnbG9iYWxMYXlvdXRSb3V0ZXIudHJlZSkge1xuICAgICAgICAgICAgcmV0dXJuIGdldFNlbGVjdGVkUGFyYW1zKGdsb2JhbExheW91dFJvdXRlci50cmVlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBXaGVuIGl0J3MgdW5kZXIgY2xpZW50IHNpZGUgcGFnZXMgcm91dGVyXG4gICAgICAgIHJldHVybiBwYXRoUGFyYW1zO1xuICAgIH0sIFtcbiAgICAgICAgZ2xvYmFsTGF5b3V0Um91dGVyID09IG51bGwgPyB2b2lkIDAgOiBnbG9iYWxMYXlvdXRSb3V0ZXIudHJlZSxcbiAgICAgICAgcGF0aFBhcmFtc1xuICAgIF0pO1xufVxuLy8gVE9ETy1BUFA6IGhhbmRsZSBwYXJhbGxlbCByb3V0ZXNcbi8qKlxuICogR2V0IHRoZSBjYW5vbmljYWwgcGFyYW1ldGVycyBmcm9tIHRoZSBjdXJyZW50IGxldmVsIHRvIHRoZSBsZWFmIG5vZGUuXG4gKi8gZnVuY3Rpb24gZ2V0U2VsZWN0ZWRMYXlvdXRTZWdtZW50UGF0aCh0cmVlLCBwYXJhbGxlbFJvdXRlS2V5LCBmaXJzdCwgc2VnbWVudFBhdGgpIHtcbiAgICBpZiAoZmlyc3QgPT09IHZvaWQgMCkgZmlyc3QgPSB0cnVlO1xuICAgIGlmIChzZWdtZW50UGF0aCA9PT0gdm9pZCAwKSBzZWdtZW50UGF0aCA9IFtdO1xuICAgIGxldCBub2RlO1xuICAgIGlmIChmaXJzdCkge1xuICAgICAgICAvLyBVc2UgdGhlIHByb3ZpZGVkIHBhcmFsbGVsIHJvdXRlIGtleSBvbiB0aGUgZmlyc3QgcGFyYWxsZWwgcm91dGVcbiAgICAgICAgbm9kZSA9IHRyZWVbMV1bcGFyYWxsZWxSb3V0ZUtleV07XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQWZ0ZXIgZmlyc3QgcGFyYWxsZWwgcm91dGUgcHJlZmVyIGNoaWxkcmVuLCBpZiB0aGVyZSdzIG5vIGNoaWxkcmVuIHBpY2sgdGhlIGZpcnN0IHBhcmFsbGVsIHJvdXRlLlxuICAgICAgICBjb25zdCBwYXJhbGxlbFJvdXRlcyA9IHRyZWVbMV07XG4gICAgICAgIHZhciBfcGFyYWxsZWxSb3V0ZXNfY2hpbGRyZW47XG4gICAgICAgIG5vZGUgPSAoX3BhcmFsbGVsUm91dGVzX2NoaWxkcmVuID0gcGFyYWxsZWxSb3V0ZXMuY2hpbGRyZW4pICE9IG51bGwgPyBfcGFyYWxsZWxSb3V0ZXNfY2hpbGRyZW4gOiBPYmplY3QudmFsdWVzKHBhcmFsbGVsUm91dGVzKVswXTtcbiAgICB9XG4gICAgaWYgKCFub2RlKSByZXR1cm4gc2VnbWVudFBhdGg7XG4gICAgY29uc3Qgc2VnbWVudCA9IG5vZGVbMF07XG4gICAgY29uc3Qgc2VnbWVudFZhbHVlID0gKDAsIF9nZXRzZWdtZW50dmFsdWUuZ2V0U2VnbWVudFZhbHVlKShzZWdtZW50KTtcbiAgICBpZiAoIXNlZ21lbnRWYWx1ZSB8fCBzZWdtZW50VmFsdWUuc3RhcnRzV2l0aChcIl9fUEFHRV9fXCIpKSByZXR1cm4gc2VnbWVudFBhdGg7XG4gICAgc2VnbWVudFBhdGgucHVzaChzZWdtZW50VmFsdWUpO1xuICAgIHJldHVybiBnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoKG5vZGUsIHBhcmFsbGVsUm91dGVLZXksIGZhbHNlLCBzZWdtZW50UGF0aCk7XG59XG5mdW5jdGlvbiB1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzKHBhcmFsbGVsUm91dGVLZXkpIHtcbiAgICBpZiAocGFyYWxsZWxSb3V0ZUtleSA9PT0gdm9pZCAwKSBwYXJhbGxlbFJvdXRlS2V5ID0gXCJjaGlsZHJlblwiO1xuICAgICgwLCBfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IuY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IpKFwidXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50c1wiKTtcbiAgICBjb25zdCB7IHRyZWUgfSA9ICgwLCBfcmVhY3QudXNlQ29udGV4dCkoX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lLkxheW91dFJvdXRlckNvbnRleHQpO1xuICAgIHJldHVybiBnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoKHRyZWUsIHBhcmFsbGVsUm91dGVLZXkpO1xufVxuZnVuY3Rpb24gdXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50KHBhcmFsbGVsUm91dGVLZXkpIHtcbiAgICBpZiAocGFyYWxsZWxSb3V0ZUtleSA9PT0gdm9pZCAwKSBwYXJhbGxlbFJvdXRlS2V5ID0gXCJjaGlsZHJlblwiO1xuICAgICgwLCBfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IuY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IpKFwidXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50XCIpO1xuICAgIGNvbnN0IHNlbGVjdGVkTGF5b3V0U2VnbWVudHMgPSB1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzKHBhcmFsbGVsUm91dGVLZXkpO1xuICAgIGlmIChzZWxlY3RlZExheW91dFNlZ21lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHNlbGVjdGVkTGF5b3V0U2VnbWVudHNbMF07XG59XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPW5hdmlnYXRpb24uanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwibW9kdWxlIiwiUmVhZG9ubHlVUkxTZWFyY2hQYXJhbXMiLCJ1c2VTZWFyY2hQYXJhbXMiLCJ1c2VQYXRobmFtZSIsIlNlcnZlckluc2VydGVkSFRNTENvbnRleHQiLCJ1c2VTZXJ2ZXJJbnNlcnRlZEhUTUwiLCJ1c2VSb3V0ZXIiLCJ1c2VQYXJhbXMiLCJ1c2VTZWxlY3RlZExheW91dFNlZ21lbnRzIiwidXNlU2VsZWN0ZWRMYXlvdXRTZWdtZW50IiwicmVkaXJlY3QiLCJwZXJtYW5lbnRSZWRpcmVjdCIsIlJlZGlyZWN0VHlwZSIsIm5vdEZvdW5kIiwiX2V4cG9ydCIsInRhcmdldCIsImFsbCIsIm5hbWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX3NlcnZlcmluc2VydGVkaHRtbHNoYXJlZHJ1bnRpbWUiLCJfcmVkaXJlY3QiLCJfbm90Zm91bmQiLCJfcmVhY3QiLCJyZXF1aXJlIiwiX2FwcHJvdXRlcmNvbnRleHRzaGFyZWRydW50aW1lIiwiX2hvb2tzY2xpZW50Y29udGV4dHNoYXJlZHJ1bnRpbWUiLCJfY2xpZW50aG9va2luc2VydmVyY29tcG9uZW50ZXJyb3IiLCJfZ2V0c2VnbWVudHZhbHVlIiwiSU5URVJOQUxfVVJMU0VBUkNIUEFSQU1TX0lOU1RBTkNFIiwiU3ltYm9sIiwicmVhZG9ubHlVUkxTZWFyY2hQYXJhbXNFcnJvciIsIkVycm9yIiwiaXRlcmF0b3IiLCJhcHBlbmQiLCJkZWxldGUiLCJzZXQiLCJzb3J0IiwiY29uc3RydWN0b3IiLCJ1cmxTZWFyY2hQYXJhbXMiLCJlbnRyaWVzIiwiYmluZCIsImZvckVhY2giLCJnZXRBbGwiLCJoYXMiLCJrZXlzIiwidmFsdWVzIiwidG9TdHJpbmciLCJzaXplIiwiY2xpZW50SG9va0luU2VydmVyQ29tcG9uZW50RXJyb3IiLCJzZWFyY2hQYXJhbXMiLCJ1c2VDb250ZXh0IiwiU2VhcmNoUGFyYW1zQ29udGV4dCIsInJlYWRvbmx5U2VhcmNoUGFyYW1zIiwidXNlTWVtbyIsImJhaWxvdXRUb0NsaWVudFJlbmRlcmluZyIsIlBhdGhuYW1lQ29udGV4dCIsInJvdXRlciIsIkFwcFJvdXRlckNvbnRleHQiLCJnZXRTZWxlY3RlZFBhcmFtcyIsInRyZWUiLCJwYXJhbXMiLCJwYXJhbGxlbFJvdXRlcyIsInBhcmFsbGVsUm91dGUiLCJzZWdtZW50IiwiaXNEeW5hbWljUGFyYW1ldGVyIiwiQXJyYXkiLCJpc0FycmF5Iiwic2VnbWVudFZhbHVlIiwic3RhcnRzV2l0aCIsImlzQ2F0Y2hBbGwiLCJzcGxpdCIsImdsb2JhbExheW91dFJvdXRlciIsIkdsb2JhbExheW91dFJvdXRlckNvbnRleHQiLCJwYXRoUGFyYW1zIiwiUGF0aFBhcmFtc0NvbnRleHQiLCJnZXRTZWxlY3RlZExheW91dFNlZ21lbnRQYXRoIiwicGFyYWxsZWxSb3V0ZUtleSIsImZpcnN0Iiwic2VnbWVudFBhdGgiLCJub2RlIiwiX3BhcmFsbGVsUm91dGVzX2NoaWxkcmVuIiwiY2hpbGRyZW4iLCJnZXRTZWdtZW50VmFsdWUiLCJwdXNoIiwiTGF5b3V0Um91dGVyQ29udGV4dCIsInNlbGVjdGVkTGF5b3V0U2VnbWVudHMiLCJsZW5ndGgiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/navigation.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js": /*!************************************************************************!*\ !*** ./node_modules/next/dist/client/components/not-found-boundary.js ***! \************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"NotFoundBoundary\", ({\n enumerable: true,\n get: function() {\n return NotFoundBoundary;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _navigation = __webpack_require__(/*! ./navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nclass NotFoundErrorBoundary extends _react.default.Component {\n static getDerivedStateFromError(error) {\n if ((error == null ? void 0 : error.digest) === \"NEXT_NOT_FOUND\") {\n return {\n notFoundTriggered: true\n };\n }\n // Re-throw if error is not for 404\n throw error;\n }\n static getDerivedStateFromProps(props, state) {\n /**\n * Handles reset of the error boundary when a navigation happens.\n * Ensures the error boundary does not stay enabled when navigating to a new page.\n * Approach of setState in render is safe as it checks the previous pathname and then overrides\n * it as outlined in https://react.dev/reference/react/useState#storing-information-from-previous-renders\n */ if (props.pathname !== state.previousPathname && state.notFoundTriggered) {\n return {\n notFoundTriggered: false,\n previousPathname: props.pathname\n };\n }\n return {\n notFoundTriggered: state.notFoundTriggered,\n previousPathname: props.pathname\n };\n }\n render() {\n if (this.state.notFoundTriggered) {\n return /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/ _react.default.createElement(\"meta\", {\n name: \"robots\",\n content: \"noindex\"\n }), true && /*#__PURE__*/ _react.default.createElement(\"meta\", {\n name: \"next-error\",\n content: \"not-found\"\n }), this.props.notFoundStyles, this.props.notFound);\n }\n return this.props.children;\n }\n constructor(props){\n super(props);\n this.state = {\n notFoundTriggered: !!props.asNotFound,\n previousPathname: props.pathname\n };\n }\n}\nfunction NotFoundBoundary(param) {\n let { notFound, notFoundStyles, asNotFound, children } = param;\n const pathname = (0, _navigation.usePathname)();\n return notFound ? /*#__PURE__*/ _react.default.createElement(NotFoundErrorBoundary, {\n pathname: pathname,\n notFound: notFound,\n notFoundStyles: notFoundStyles,\n asNotFound: asNotFound\n }, children) : /*#__PURE__*/ _react.default.createElement(_react.default.Fragment, null, children);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=not-found-boundary.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC1ib3VuZGFyeS5qcyIsIm1hcHBpbmdzIjoicURBRWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0ZILG9EQUFtRDtJQUMvQ0ksWUFBWTtJQUNaQyxLQUFLO1FBQ0QsT0FBT0M7SUFDWDtBQUNKLENBQUMsRUFBQztBQUNGLE1BQU1DLDJCQUEyQkMsbUJBQU9BLENBQUMsa0hBQXlDO0FBQ2xGLE1BQU1DLFNBQVMsV0FBVyxHQUFHRix5QkFBeUJHLENBQUMsQ0FBQ0YsbUJBQU9BLENBQUMsd0dBQU87QUFDdkUsTUFBTUcsY0FBY0gsbUJBQU9BLENBQUMsb0ZBQWM7QUFDMUMsTUFBTUksOEJBQThCSCxPQUFPSSxPQUFPLENBQUNDLFNBQVM7SUFDeEQsT0FBT0MseUJBQXlCQyxLQUFLLEVBQUU7UUFDbkMsSUFBSSxDQUFDQSxTQUFTLE9BQU8sS0FBSyxJQUFJQSxNQUFNQyxNQUFNLE1BQU0sa0JBQWtCO1lBQzlELE9BQU87Z0JBQ0hDLG1CQUFtQjtZQUN2QjtRQUNKO1FBQ0EsbUNBQW1DO1FBQ25DLE1BQU1GO0lBQ1Y7SUFDQSxPQUFPRyx5QkFBeUJDLEtBQUssRUFBRUMsS0FBSyxFQUFFO1FBQzFDOzs7OztLQUtILEdBQUcsSUFBSUQsTUFBTUUsUUFBUSxLQUFLRCxNQUFNRSxnQkFBZ0IsSUFBSUYsTUFBTUgsaUJBQWlCLEVBQUU7WUFDdEUsT0FBTztnQkFDSEEsbUJBQW1CO2dCQUNuQkssa0JBQWtCSCxNQUFNRSxRQUFRO1lBQ3BDO1FBQ0o7UUFDQSxPQUFPO1lBQ0hKLG1CQUFtQkcsTUFBTUgsaUJBQWlCO1lBQzFDSyxrQkFBa0JILE1BQU1FLFFBQVE7UUFDcEM7SUFDSjtJQUNBRSxTQUFTO1FBQ0wsSUFBSSxJQUFJLENBQUNILEtBQUssQ0FBQ0gsaUJBQWlCLEVBQUU7WUFDOUIsT0FBTyxXQUFXLEdBQUdULE9BQU9JLE9BQU8sQ0FBQ1ksYUFBYSxDQUFDaEIsT0FBT0ksT0FBTyxDQUFDYSxRQUFRLEVBQUUsTUFBTSxXQUFXLEdBQUdqQixPQUFPSSxPQUFPLENBQUNZLGFBQWEsQ0FBQyxRQUFRO2dCQUNoSUUsTUFBTTtnQkFDTkMsU0FBUztZQUNiLElBQUlDLEtBQXNDLElBQUksV0FBVyxHQUFHcEIsT0FBT0ksT0FBTyxDQUFDWSxhQUFhLENBQUMsUUFBUTtnQkFDN0ZFLE1BQU07Z0JBQ05DLFNBQVM7WUFDYixJQUFJLElBQUksQ0FBQ1IsS0FBSyxDQUFDVSxjQUFjLEVBQUUsSUFBSSxDQUFDVixLQUFLLENBQUNXLFFBQVE7UUFDdEQ7UUFDQSxPQUFPLElBQUksQ0FBQ1gsS0FBSyxDQUFDWSxRQUFRO0lBQzlCO0lBQ0FDLFlBQVliLEtBQUssQ0FBQztRQUNkLEtBQUssQ0FBQ0E7UUFDTixJQUFJLENBQUNDLEtBQUssR0FBRztZQUNUSCxtQkFBbUIsQ0FBQyxDQUFDRSxNQUFNYyxVQUFVO1lBQ3JDWCxrQkFBa0JILE1BQU1FLFFBQVE7UUFDcEM7SUFDSjtBQUNKO0FBQ0EsU0FBU2hCLGlCQUFpQjZCLEtBQUs7SUFDM0IsSUFBSSxFQUFFSixRQUFRLEVBQUVELGNBQWMsRUFBRUksVUFBVSxFQUFFRixRQUFRLEVBQUUsR0FBR0c7SUFDekQsTUFBTWIsV0FBVyxDQUFDLEdBQUdYLFlBQVl5QixXQUFXO0lBQzVDLE9BQU9MLFdBQVcsV0FBVyxHQUFHdEIsT0FBT0ksT0FBTyxDQUFDWSxhQUFhLENBQUNiLHVCQUF1QjtRQUNoRlUsVUFBVUE7UUFDVlMsVUFBVUE7UUFDVkQsZ0JBQWdCQTtRQUNoQkksWUFBWUE7SUFDaEIsR0FBR0YsWUFBWSxXQUFXLEdBQUd2QixPQUFPSSxPQUFPLENBQUNZLGFBQWEsQ0FBQ2hCLE9BQU9JLE9BQU8sQ0FBQ2EsUUFBUSxFQUFFLE1BQU1NO0FBQzdGO0FBRUEsSUFBSSxDQUFDLE9BQU85QixRQUFRVyxPQUFPLEtBQUssY0FBZSxPQUFPWCxRQUFRVyxPQUFPLEtBQUssWUFBWVgsUUFBUVcsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPWCxRQUFRVyxPQUFPLENBQUN3QixVQUFVLEtBQUssYUFBYTtJQUNyS3JDLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUVcsT0FBTyxFQUFFLGNBQWM7UUFBRVYsT0FBTztJQUFLO0lBQ25FSCxPQUFPc0MsTUFBTSxDQUFDcEMsUUFBUVcsT0FBTyxFQUFFWDtJQUMvQnFDLE9BQU9yQyxPQUFPLEdBQUdBLFFBQVFXLE9BQU87QUFDbEMsRUFFQSw4Q0FBOEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbm90LWZvdW5kLWJvdW5kYXJ5LmpzPzMyYzkiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2UgY2xpZW50XCI7XG5cblwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiTm90Rm91bmRCb3VuZGFyeVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gTm90Rm91bmRCb3VuZGFyeTtcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHRcIik7XG5jb25zdCBfcmVhY3QgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCJyZWFjdFwiKSk7XG5jb25zdCBfbmF2aWdhdGlvbiA9IHJlcXVpcmUoXCIuL25hdmlnYXRpb25cIik7XG5jbGFzcyBOb3RGb3VuZEVycm9yQm91bmRhcnkgZXh0ZW5kcyBfcmVhY3QuZGVmYXVsdC5Db21wb25lbnQge1xuICAgIHN0YXRpYyBnZXREZXJpdmVkU3RhdGVGcm9tRXJyb3IoZXJyb3IpIHtcbiAgICAgICAgaWYgKChlcnJvciA9PSBudWxsID8gdm9pZCAwIDogZXJyb3IuZGlnZXN0KSA9PT0gXCJORVhUX05PVF9GT1VORFwiKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIG5vdEZvdW5kVHJpZ2dlcmVkOiB0cnVlXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIC8vIFJlLXRocm93IGlmIGVycm9yIGlzIG5vdCBmb3IgNDA0XG4gICAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKHByb3BzLCBzdGF0ZSkge1xuICAgICAgICAvKipcbiAgICAgKiBIYW5kbGVzIHJlc2V0IG9mIHRoZSBlcnJvciBib3VuZGFyeSB3aGVuIGEgbmF2aWdhdGlvbiBoYXBwZW5zLlxuICAgICAqIEVuc3VyZXMgdGhlIGVycm9yIGJvdW5kYXJ5IGRvZXMgbm90IHN0YXkgZW5hYmxlZCB3aGVuIG5hdmlnYXRpbmcgdG8gYSBuZXcgcGFnZS5cbiAgICAgKiBBcHByb2FjaCBvZiBzZXRTdGF0ZSBpbiByZW5kZXIgaXMgc2FmZSBhcyBpdCBjaGVja3MgdGhlIHByZXZpb3VzIHBhdGhuYW1lIGFuZCB0aGVuIG92ZXJyaWRlc1xuICAgICAqIGl0IGFzIG91dGxpbmVkIGluIGh0dHBzOi8vcmVhY3QuZGV2L3JlZmVyZW5jZS9yZWFjdC91c2VTdGF0ZSNzdG9yaW5nLWluZm9ybWF0aW9uLWZyb20tcHJldmlvdXMtcmVuZGVyc1xuICAgICAqLyBpZiAocHJvcHMucGF0aG5hbWUgIT09IHN0YXRlLnByZXZpb3VzUGF0aG5hbWUgJiYgc3RhdGUubm90Rm91bmRUcmlnZ2VyZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgbm90Rm91bmRUcmlnZ2VyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHByZXZpb3VzUGF0aG5hbWU6IHByb3BzLnBhdGhuYW1lXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBub3RGb3VuZFRyaWdnZXJlZDogc3RhdGUubm90Rm91bmRUcmlnZ2VyZWQsXG4gICAgICAgICAgICBwcmV2aW91c1BhdGhuYW1lOiBwcm9wcy5wYXRobmFtZVxuICAgICAgICB9O1xuICAgIH1cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIGlmICh0aGlzLnN0YXRlLm5vdEZvdW5kVHJpZ2dlcmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyBfcmVhY3QuZGVmYXVsdC5jcmVhdGVFbGVtZW50KF9yZWFjdC5kZWZhdWx0LkZyYWdtZW50LCBudWxsLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoXCJtZXRhXCIsIHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcInJvYm90c1wiLFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwibm9pbmRleFwiXG4gICAgICAgICAgICB9KSwgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09IFwiZGV2ZWxvcG1lbnRcIiAmJiAvKiNfX1BVUkVfXyovIF9yZWFjdC5kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoXCJtZXRhXCIsIHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcIm5leHQtZXJyb3JcIixcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIm5vdC1mb3VuZFwiXG4gICAgICAgICAgICB9KSwgdGhpcy5wcm9wcy5ub3RGb3VuZFN0eWxlcywgdGhpcy5wcm9wcy5ub3RGb3VuZCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW47XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHByb3BzKXtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuICAgICAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgICAgICAgbm90Rm91bmRUcmlnZ2VyZWQ6ICEhcHJvcHMuYXNOb3RGb3VuZCxcbiAgICAgICAgICAgIHByZXZpb3VzUGF0aG5hbWU6IHByb3BzLnBhdGhuYW1lXG4gICAgICAgIH07XG4gICAgfVxufVxuZnVuY3Rpb24gTm90Rm91bmRCb3VuZGFyeShwYXJhbSkge1xuICAgIGxldCB7IG5vdEZvdW5kLCBub3RGb3VuZFN0eWxlcywgYXNOb3RGb3VuZCwgY2hpbGRyZW4gfSA9IHBhcmFtO1xuICAgIGNvbnN0IHBhdGhuYW1lID0gKDAsIF9uYXZpZ2F0aW9uLnVzZVBhdGhuYW1lKSgpO1xuICAgIHJldHVybiBub3RGb3VuZCA/IC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChOb3RGb3VuZEVycm9yQm91bmRhcnksIHtcbiAgICAgICAgcGF0aG5hbWU6IHBhdGhuYW1lLFxuICAgICAgICBub3RGb3VuZDogbm90Rm91bmQsXG4gICAgICAgIG5vdEZvdW5kU3R5bGVzOiBub3RGb3VuZFN0eWxlcyxcbiAgICAgICAgYXNOb3RGb3VuZDogYXNOb3RGb3VuZFxuICAgIH0sIGNoaWxkcmVuKSA6IC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfcmVhY3QuZGVmYXVsdC5GcmFnbWVudCwgbnVsbCwgY2hpbGRyZW4pO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1ub3QtZm91bmQtYm91bmRhcnkuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIk5vdEZvdW5kQm91bmRhcnkiLCJfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsIl9uYXZpZ2F0aW9uIiwiTm90Rm91bmRFcnJvckJvdW5kYXJ5IiwiZGVmYXVsdCIsIkNvbXBvbmVudCIsImdldERlcml2ZWRTdGF0ZUZyb21FcnJvciIsImVycm9yIiwiZGlnZXN0Iiwibm90Rm91bmRUcmlnZ2VyZWQiLCJnZXREZXJpdmVkU3RhdGVGcm9tUHJvcHMiLCJwcm9wcyIsInN0YXRlIiwicGF0aG5hbWUiLCJwcmV2aW91c1BhdGhuYW1lIiwicmVuZGVyIiwiY3JlYXRlRWxlbWVudCIsIkZyYWdtZW50IiwibmFtZSIsImNvbnRlbnQiLCJwcm9jZXNzIiwibm90Rm91bmRTdHlsZXMiLCJub3RGb3VuZCIsImNoaWxkcmVuIiwiY29uc3RydWN0b3IiLCJhc05vdEZvdW5kIiwicGFyYW0iLCJ1c2VQYXRobmFtZSIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iLCJtb2R1bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/not-found-boundary.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/not-found.js": /*!***************************************************************!*\ !*** ./node_modules/next/dist/client/components/not-found.js ***! \***************************************************************/ /***/ ((module, exports) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n notFound: function() {\n return notFound;\n },\n isNotFoundError: function() {\n return isNotFoundError;\n }\n});\nconst NOT_FOUND_ERROR_CODE = \"NEXT_NOT_FOUND\";\nfunction notFound() {\n // eslint-disable-next-line no-throw-literal\n const error = new Error(NOT_FOUND_ERROR_CODE);\n error.digest = NOT_FOUND_ERROR_CODE;\n throw error;\n}\nfunction isNotFoundError(error) {\n return (error == null ? void 0 : error.digest) === NOT_FOUND_ERROR_CODE;\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=not-found.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL25vdC1mb3VuZC5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRixLQUFNQyxDQUFBQSxDQUdOO0FBQ0EsU0FBU0csUUFBUUMsTUFBTSxFQUFFQyxHQUFHO0lBQ3hCLElBQUksSUFBSUMsUUFBUUQsSUFBSVQsT0FBT0MsY0FBYyxDQUFDTyxRQUFRRSxNQUFNO1FBQ3BEQyxZQUFZO1FBQ1pDLEtBQUtILEdBQUcsQ0FBQ0MsS0FBSztJQUNsQjtBQUNKO0FBQ0FILFFBQVFMLFNBQVM7SUFDYkcsVUFBVTtRQUNOLE9BQU9BO0lBQ1g7SUFDQUMsaUJBQWlCO1FBQ2IsT0FBT0E7SUFDWDtBQUNKO0FBQ0EsTUFBTU8sdUJBQXVCO0FBQzdCLFNBQVNSO0lBQ0wsNENBQTRDO0lBQzVDLE1BQU1TLFFBQVEsSUFBSUMsTUFBTUY7SUFDeEJDLE1BQU1FLE1BQU0sR0FBR0g7SUFDZixNQUFNQztBQUNWO0FBQ0EsU0FBU1IsZ0JBQWdCUSxLQUFLO0lBQzFCLE9BQU8sQ0FBQ0EsU0FBUyxPQUFPLEtBQUssSUFBSUEsTUFBTUUsTUFBTSxNQUFNSDtBQUN2RDtBQUVBLElBQUksQ0FBQyxPQUFPWCxRQUFRZSxPQUFPLEtBQUssY0FBZSxPQUFPZixRQUFRZSxPQUFPLEtBQUssWUFBWWYsUUFBUWUsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPZixRQUFRZSxPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLbEIsT0FBT0MsY0FBYyxDQUFDQyxRQUFRZSxPQUFPLEVBQUUsY0FBYztRQUFFZCxPQUFPO0lBQUs7SUFDbkVILE9BQU9tQixNQUFNLENBQUNqQixRQUFRZSxPQUFPLEVBQUVmO0lBQy9CRSxPQUFPRixPQUFPLEdBQUdBLFFBQVFlLE9BQU87QUFDbEMsRUFFQSxxQ0FBcUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbm90LWZvdW5kLmpzPzQyMDMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBub3RGb3VuZDogbnVsbCxcbiAgICBpc05vdEZvdW5kRXJyb3I6IG51bGxcbn0pO1xuZnVuY3Rpb24gX2V4cG9ydCh0YXJnZXQsIGFsbCkge1xuICAgIGZvcih2YXIgbmFtZSBpbiBhbGwpT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgbmFtZSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGFsbFtuYW1lXVxuICAgIH0pO1xufVxuX2V4cG9ydChleHBvcnRzLCB7XG4gICAgbm90Rm91bmQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gbm90Rm91bmQ7XG4gICAgfSxcbiAgICBpc05vdEZvdW5kRXJyb3I6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gaXNOb3RGb3VuZEVycm9yO1xuICAgIH1cbn0pO1xuY29uc3QgTk9UX0ZPVU5EX0VSUk9SX0NPREUgPSBcIk5FWFRfTk9UX0ZPVU5EXCI7XG5mdW5jdGlvbiBub3RGb3VuZCgpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdGhyb3ctbGl0ZXJhbFxuICAgIGNvbnN0IGVycm9yID0gbmV3IEVycm9yKE5PVF9GT1VORF9FUlJPUl9DT0RFKTtcbiAgICBlcnJvci5kaWdlc3QgPSBOT1RfRk9VTkRfRVJST1JfQ09ERTtcbiAgICB0aHJvdyBlcnJvcjtcbn1cbmZ1bmN0aW9uIGlzTm90Rm91bmRFcnJvcihlcnJvcikge1xuICAgIHJldHVybiAoZXJyb3IgPT0gbnVsbCA/IHZvaWQgMCA6IGVycm9yLmRpZ2VzdCkgPT09IE5PVF9GT1VORF9FUlJPUl9DT0RFO1xufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1ub3QtZm91bmQuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwibW9kdWxlIiwibm90Rm91bmQiLCJpc05vdEZvdW5kRXJyb3IiLCJfZXhwb3J0IiwidGFyZ2V0IiwiYWxsIiwibmFtZSIsImVudW1lcmFibGUiLCJnZXQiLCJOT1RfRk9VTkRfRVJST1JfQ09ERSIsImVycm9yIiwiRXJyb3IiLCJkaWdlc3QiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/not-found.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/promise-queue.js": /*!*******************************************************************!*\ !*** ./node_modules/next/dist/client/components/promise-queue.js ***! \*******************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/*\n This is a simple promise queue that allows you to limit the number of concurrent promises\n that are running at any given time. It's used to limit the number of concurrent\n prefetch requests that are being made to the server but could be used for other\n things as well.\n*/ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"PromiseQueue\", ({\n enumerable: true,\n get: function() {\n return PromiseQueue;\n }\n}));\nconst _class_private_field_loose_base = __webpack_require__(/*! @swc/helpers/_/_class_private_field_loose_base */ \"(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_base.js\");\nconst _class_private_field_loose_key = __webpack_require__(/*! @swc/helpers/_/_class_private_field_loose_key */ \"(ssr)/./node_modules/@swc/helpers/esm/_class_private_field_loose_key.js\");\nvar _maxConcurrency = /*#__PURE__*/ _class_private_field_loose_key._(\"_maxConcurrency\"), _runningCount = /*#__PURE__*/ _class_private_field_loose_key._(\"_runningCount\"), _queue = /*#__PURE__*/ _class_private_field_loose_key._(\"_queue\"), _processNext = /*#__PURE__*/ _class_private_field_loose_key._(\"_processNext\");\nclass PromiseQueue {\n enqueue(promiseFn) {\n let taskResolve;\n let taskReject;\n const taskPromise = new Promise((resolve, reject)=>{\n taskResolve = resolve;\n taskReject = reject;\n });\n const task = async ()=>{\n try {\n _class_private_field_loose_base._(this, _runningCount)[_runningCount]++;\n const result = await promiseFn();\n taskResolve(result);\n } catch (error) {\n taskReject(error);\n } finally{\n _class_private_field_loose_base._(this, _runningCount)[_runningCount]--;\n _class_private_field_loose_base._(this, _processNext)[_processNext]();\n }\n };\n const enqueueResult = {\n promiseFn: taskPromise,\n task\n };\n // wonder if we should take a LIFO approach here\n _class_private_field_loose_base._(this, _queue)[_queue].push(enqueueResult);\n _class_private_field_loose_base._(this, _processNext)[_processNext]();\n return taskPromise;\n }\n bump(promiseFn) {\n const index = _class_private_field_loose_base._(this, _queue)[_queue].findIndex((item)=>item.promiseFn === promiseFn);\n if (index > -1) {\n const bumpedItem = _class_private_field_loose_base._(this, _queue)[_queue].splice(index, 1)[0];\n _class_private_field_loose_base._(this, _queue)[_queue].unshift(bumpedItem);\n _class_private_field_loose_base._(this, _processNext)[_processNext](true);\n }\n }\n constructor(maxConcurrency = 5){\n Object.defineProperty(this, _processNext, {\n value: processNext\n });\n Object.defineProperty(this, _maxConcurrency, {\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, _runningCount, {\n writable: true,\n value: void 0\n });\n Object.defineProperty(this, _queue, {\n writable: true,\n value: void 0\n });\n _class_private_field_loose_base._(this, _maxConcurrency)[_maxConcurrency] = maxConcurrency;\n _class_private_field_loose_base._(this, _runningCount)[_runningCount] = 0;\n _class_private_field_loose_base._(this, _queue)[_queue] = [];\n }\n}\nfunction processNext(forced) {\n if (forced === void 0) forced = false;\n if ((_class_private_field_loose_base._(this, _runningCount)[_runningCount] < _class_private_field_loose_base._(this, _maxConcurrency)[_maxConcurrency] || forced) && _class_private_field_loose_base._(this, _queue)[_queue].length > 0) {\n var _class_private_field_loose_base__queue_shift;\n (_class_private_field_loose_base__queue_shift = _class_private_field_loose_base._(this, _queue)[_queue].shift()) == null ? void 0 : _class_private_field_loose_base__queue_shift.task();\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=promise-queue.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3Byb21pc2UtcXVldWUuanMiLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0FBS0EsR0FBZ0I7QUFDaEJBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCxnREFBK0M7SUFDM0NJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNQyxrQ0FBa0NDLG1CQUFPQSxDQUFDLGdJQUFnRDtBQUNoRyxNQUFNQyxpQ0FBaUNELG1CQUFPQSxDQUFDLDhIQUErQztBQUM5RixJQUFJRSxrQkFBa0IsV0FBVyxHQUFHRCwrQkFBK0JFLENBQUMsQ0FBQyxvQkFBb0JDLGdCQUFnQixXQUFXLEdBQUdILCtCQUErQkUsQ0FBQyxDQUFDLGtCQUFrQkUsU0FBUyxXQUFXLEdBQUdKLCtCQUErQkUsQ0FBQyxDQUFDLFdBQVdHLGVBQWUsV0FBVyxHQUFHTCwrQkFBK0JFLENBQUMsQ0FBQztBQUMzUyxNQUFNTDtJQUNGUyxRQUFRQyxTQUFTLEVBQUU7UUFDZixJQUFJQztRQUNKLElBQUlDO1FBQ0osTUFBTUMsY0FBYyxJQUFJQyxRQUFRLENBQUNDLFNBQVNDO1lBQ3RDTCxjQUFjSTtZQUNkSCxhQUFhSTtRQUNqQjtRQUNBLE1BQU1DLE9BQU87WUFDVCxJQUFJO2dCQUNBaEIsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFQyxjQUFjLENBQUNBLGNBQWM7Z0JBQ3JFLE1BQU1ZLFNBQVMsTUFBTVI7Z0JBQ3JCQyxZQUFZTztZQUNoQixFQUFFLE9BQU9DLE9BQU87Z0JBQ1pQLFdBQVdPO1lBQ2YsU0FBUztnQkFDTGxCLGdDQUFnQ0ksQ0FBQyxDQUFDLElBQUksRUFBRUMsY0FBYyxDQUFDQSxjQUFjO2dCQUNyRUwsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRyxhQUFhLENBQUNBLGFBQWE7WUFDdkU7UUFDSjtRQUNBLE1BQU1ZLGdCQUFnQjtZQUNsQlYsV0FBV0c7WUFDWEk7UUFDSjtRQUNBLGdEQUFnRDtRQUNoRGhCLGdDQUFnQ0ksQ0FBQyxDQUFDLElBQUksRUFBRUUsT0FBTyxDQUFDQSxPQUFPLENBQUNjLElBQUksQ0FBQ0Q7UUFDN0RuQixnQ0FBZ0NJLENBQUMsQ0FBQyxJQUFJLEVBQUVHLGFBQWEsQ0FBQ0EsYUFBYTtRQUNuRSxPQUFPSztJQUNYO0lBQ0FTLEtBQUtaLFNBQVMsRUFBRTtRQUNaLE1BQU1hLFFBQVF0QixnQ0FBZ0NJLENBQUMsQ0FBQyxJQUFJLEVBQUVFLE9BQU8sQ0FBQ0EsT0FBTyxDQUFDaUIsU0FBUyxDQUFDLENBQUNDLE9BQU9BLEtBQUtmLFNBQVMsS0FBS0E7UUFDM0csSUFBSWEsUUFBUSxDQUFDLEdBQUc7WUFDWixNQUFNRyxhQUFhekIsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRSxPQUFPLENBQUNBLE9BQU8sQ0FBQ29CLE1BQU0sQ0FBQ0osT0FBTyxFQUFFLENBQUMsRUFBRTtZQUM5RnRCLGdDQUFnQ0ksQ0FBQyxDQUFDLElBQUksRUFBRUUsT0FBTyxDQUFDQSxPQUFPLENBQUNxQixPQUFPLENBQUNGO1lBQ2hFekIsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRyxhQUFhLENBQUNBLGFBQWEsQ0FBQztRQUN4RTtJQUNKO0lBQ0FxQixZQUFZQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNCcEMsT0FBT0MsY0FBYyxDQUFDLElBQUksRUFBRWEsY0FBYztZQUN0Q1gsT0FBT2tDO1FBQ1g7UUFDQXJDLE9BQU9DLGNBQWMsQ0FBQyxJQUFJLEVBQUVTLGlCQUFpQjtZQUN6QzRCLFVBQVU7WUFDVm5DLE9BQU8sS0FBSztRQUNoQjtRQUNBSCxPQUFPQyxjQUFjLENBQUMsSUFBSSxFQUFFVyxlQUFlO1lBQ3ZDMEIsVUFBVTtZQUNWbkMsT0FBTyxLQUFLO1FBQ2hCO1FBQ0FILE9BQU9DLGNBQWMsQ0FBQyxJQUFJLEVBQUVZLFFBQVE7WUFDaEN5QixVQUFVO1lBQ1ZuQyxPQUFPLEtBQUs7UUFDaEI7UUFDQUksZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRCxnQkFBZ0IsQ0FBQ0EsZ0JBQWdCLEdBQUcwQjtRQUM1RTdCLGdDQUFnQ0ksQ0FBQyxDQUFDLElBQUksRUFBRUMsY0FBYyxDQUFDQSxjQUFjLEdBQUc7UUFDeEVMLGdDQUFnQ0ksQ0FBQyxDQUFDLElBQUksRUFBRUUsT0FBTyxDQUFDQSxPQUFPLEdBQUcsRUFBRTtJQUNoRTtBQUNKO0FBQ0EsU0FBU3dCLFlBQVlFLE1BQU07SUFDdkIsSUFBSUEsV0FBVyxLQUFLLEdBQUdBLFNBQVM7SUFDaEMsSUFBSSxDQUFDaEMsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFQyxjQUFjLENBQUNBLGNBQWMsR0FBR0wsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRCxnQkFBZ0IsQ0FBQ0EsZ0JBQWdCLElBQUk2QixNQUFLLEtBQU1oQyxnQ0FBZ0NJLENBQUMsQ0FBQyxJQUFJLEVBQUVFLE9BQU8sQ0FBQ0EsT0FBTyxDQUFDMkIsTUFBTSxHQUFHLEdBQUc7UUFDck8sSUFBSUM7UUFDSEEsQ0FBQUEsK0NBQStDbEMsZ0NBQWdDSSxDQUFDLENBQUMsSUFBSSxFQUFFRSxPQUFPLENBQUNBLE9BQU8sQ0FBQzZCLEtBQUssRUFBQyxLQUFNLE9BQU8sS0FBSyxJQUFJRCw2Q0FBNkNsQixJQUFJO0lBQ3pMO0FBQ0o7QUFFQSxJQUFJLENBQUMsT0FBT3JCLFFBQVF5QyxPQUFPLEtBQUssY0FBZSxPQUFPekMsUUFBUXlDLE9BQU8sS0FBSyxZQUFZekMsUUFBUXlDLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT3pDLFFBQVF5QyxPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLNUMsT0FBT0MsY0FBYyxDQUFDQyxRQUFReUMsT0FBTyxFQUFFLGNBQWM7UUFBRXhDLE9BQU87SUFBSztJQUNuRUgsT0FBTzZDLE1BQU0sQ0FBQzNDLFFBQVF5QyxPQUFPLEVBQUV6QztJQUMvQjRDLE9BQU81QyxPQUFPLEdBQUdBLFFBQVF5QyxPQUFPO0FBQ2xDLEVBRUEseUNBQXlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3Byb21pc2UtcXVldWUuanM/ODE2NyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIFRoaXMgaXMgYSBzaW1wbGUgcHJvbWlzZSBxdWV1ZSB0aGF0IGFsbG93cyB5b3UgdG8gbGltaXQgdGhlIG51bWJlciBvZiBjb25jdXJyZW50IHByb21pc2VzXG4gICAgdGhhdCBhcmUgcnVubmluZyBhdCBhbnkgZ2l2ZW4gdGltZS4gSXQncyB1c2VkIHRvIGxpbWl0IHRoZSBudW1iZXIgb2YgY29uY3VycmVudFxuICAgIHByZWZldGNoIHJlcXVlc3RzIHRoYXQgYXJlIGJlaW5nIG1hZGUgdG8gdGhlIHNlcnZlciBidXQgY291bGQgYmUgdXNlZCBmb3Igb3RoZXJcbiAgICB0aGluZ3MgYXMgd2VsbC5cbiovIFwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiUHJvbWlzZVF1ZXVlXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBQcm9taXNlUXVldWU7XG4gICAgfVxufSk7XG5jb25zdCBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2VcIik7XG5jb25zdCBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkgPSByZXF1aXJlKFwiQHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5XCIpO1xudmFyIF9tYXhDb25jdXJyZW5jeSA9IC8qI19fUFVSRV9fKi8gX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5Ll8oXCJfbWF4Q29uY3VycmVuY3lcIiksIF9ydW5uaW5nQ291bnQgPSAvKiNfX1BVUkVfXyovIF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleS5fKFwiX3J1bm5pbmdDb3VudFwiKSwgX3F1ZXVlID0gLyojX19QVVJFX18qLyBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkuXyhcIl9xdWV1ZVwiKSwgX3Byb2Nlc3NOZXh0ID0gLyojX19QVVJFX18qLyBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9rZXkuXyhcIl9wcm9jZXNzTmV4dFwiKTtcbmNsYXNzIFByb21pc2VRdWV1ZSB7XG4gICAgZW5xdWV1ZShwcm9taXNlRm4pIHtcbiAgICAgICAgbGV0IHRhc2tSZXNvbHZlO1xuICAgICAgICBsZXQgdGFza1JlamVjdDtcbiAgICAgICAgY29uc3QgdGFza1Byb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KT0+e1xuICAgICAgICAgICAgdGFza1Jlc29sdmUgPSByZXNvbHZlO1xuICAgICAgICAgICAgdGFza1JlamVjdCA9IHJlamVjdDtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHRhc2sgPSBhc3luYyAoKT0+e1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3J1bm5pbmdDb3VudClbX3J1bm5pbmdDb3VudF0rKztcbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBwcm9taXNlRm4oKTtcbiAgICAgICAgICAgICAgICB0YXNrUmVzb2x2ZShyZXN1bHQpO1xuICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0YXNrUmVqZWN0KGVycm9yKTtcbiAgICAgICAgICAgIH0gZmluYWxseXtcbiAgICAgICAgICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3J1bm5pbmdDb3VudClbX3J1bm5pbmdDb3VudF0tLTtcbiAgICAgICAgICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3Byb2Nlc3NOZXh0KVtfcHJvY2Vzc05leHRdKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGVucXVldWVSZXN1bHQgPSB7XG4gICAgICAgICAgICBwcm9taXNlRm46IHRhc2tQcm9taXNlLFxuICAgICAgICAgICAgdGFza1xuICAgICAgICB9O1xuICAgICAgICAvLyB3b25kZXIgaWYgd2Ugc2hvdWxkIHRha2UgYSBMSUZPIGFwcHJvYWNoIGhlcmVcbiAgICAgICAgX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZS5fKHRoaXMsIF9xdWV1ZSlbX3F1ZXVlXS5wdXNoKGVucXVldWVSZXN1bHQpO1xuICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3Byb2Nlc3NOZXh0KVtfcHJvY2Vzc05leHRdKCk7XG4gICAgICAgIHJldHVybiB0YXNrUHJvbWlzZTtcbiAgICB9XG4gICAgYnVtcChwcm9taXNlRm4pIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3F1ZXVlKVtfcXVldWVdLmZpbmRJbmRleCgoaXRlbSk9Pml0ZW0ucHJvbWlzZUZuID09PSBwcm9taXNlRm4pO1xuICAgICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAgICAgY29uc3QgYnVtcGVkSXRlbSA9IF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuXyh0aGlzLCBfcXVldWUpW19xdWV1ZV0uc3BsaWNlKGluZGV4LCAxKVswXTtcbiAgICAgICAgICAgIF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuXyh0aGlzLCBfcXVldWUpW19xdWV1ZV0udW5zaGlmdChidW1wZWRJdGVtKTtcbiAgICAgICAgICAgIF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuXyh0aGlzLCBfcHJvY2Vzc05leHQpW19wcm9jZXNzTmV4dF0odHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY29uc3RydWN0b3IobWF4Q29uY3VycmVuY3kgPSA1KXtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIF9wcm9jZXNzTmV4dCwge1xuICAgICAgICAgICAgdmFsdWU6IHByb2Nlc3NOZXh0XG4gICAgICAgIH0pO1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgX21heENvbmN1cnJlbmN5LCB7XG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBfcnVubmluZ0NvdW50LCB7XG4gICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZhbHVlOiB2b2lkIDBcbiAgICAgICAgfSk7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBfcXVldWUsIHtcbiAgICAgICAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmFsdWU6IHZvaWQgMFxuICAgICAgICB9KTtcbiAgICAgICAgX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZS5fKHRoaXMsIF9tYXhDb25jdXJyZW5jeSlbX21heENvbmN1cnJlbmN5XSA9IG1heENvbmN1cnJlbmN5O1xuICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3J1bm5pbmdDb3VudClbX3J1bm5pbmdDb3VudF0gPSAwO1xuICAgICAgICBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3F1ZXVlKVtfcXVldWVdID0gW107XG4gICAgfVxufVxuZnVuY3Rpb24gcHJvY2Vzc05leHQoZm9yY2VkKSB7XG4gICAgaWYgKGZvcmNlZCA9PT0gdm9pZCAwKSBmb3JjZWQgPSBmYWxzZTtcbiAgICBpZiAoKF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuXyh0aGlzLCBfcnVubmluZ0NvdW50KVtfcnVubmluZ0NvdW50XSA8IF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2UuXyh0aGlzLCBfbWF4Q29uY3VycmVuY3kpW19tYXhDb25jdXJyZW5jeV0gfHwgZm9yY2VkKSAmJiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3F1ZXVlKVtfcXVldWVdLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdmFyIF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2VfX3F1ZXVlX3NoaWZ0O1xuICAgICAgICAoX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZV9fcXVldWVfc2hpZnQgPSBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlLl8odGhpcywgX3F1ZXVlKVtfcXVldWVdLnNoaWZ0KCkpID09IG51bGwgPyB2b2lkIDAgOiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlX19xdWV1ZV9zaGlmdC50YXNrKCk7XG4gICAgfVxufVxuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1wcm9taXNlLXF1ZXVlLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJQcm9taXNlUXVldWUiLCJfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlIiwicmVxdWlyZSIsIl9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleSIsIl9tYXhDb25jdXJyZW5jeSIsIl8iLCJfcnVubmluZ0NvdW50IiwiX3F1ZXVlIiwiX3Byb2Nlc3NOZXh0IiwiZW5xdWV1ZSIsInByb21pc2VGbiIsInRhc2tSZXNvbHZlIiwidGFza1JlamVjdCIsInRhc2tQcm9taXNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJ0YXNrIiwicmVzdWx0IiwiZXJyb3IiLCJlbnF1ZXVlUmVzdWx0IiwicHVzaCIsImJ1bXAiLCJpbmRleCIsImZpbmRJbmRleCIsIml0ZW0iLCJidW1wZWRJdGVtIiwic3BsaWNlIiwidW5zaGlmdCIsImNvbnN0cnVjdG9yIiwibWF4Q29uY3VycmVuY3kiLCJwcm9jZXNzTmV4dCIsIndyaXRhYmxlIiwiZm9yY2VkIiwibGVuZ3RoIiwiX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZV9fcXVldWVfc2hpZnQiLCJzaGlmdCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/promise-queue.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/hot-reloader-client.js": /*!*******************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/hot-reloader-client.js ***! \*******************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* module decorator */ module = __webpack_require__.nmd(module);\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return HotReload;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _stripansi = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/strip-ansi */ \"(ssr)/./node_modules/next/dist/compiled/strip-ansi/index.js\"));\nconst _formatwebpackmessages = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ../../dev/error-overlay/format-webpack-messages */ \"(ssr)/./node_modules/next/dist/client/dev/error-overlay/format-webpack-messages.js\"));\nconst _navigation = __webpack_require__(/*! ../navigation */ \"(ssr)/./node_modules/next/dist/client/components/navigation.js\");\nconst _erroroverlayreducer = __webpack_require__(/*! ./internal/error-overlay-reducer */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/error-overlay-reducer.js\");\nconst _parseStack = __webpack_require__(/*! ./internal/helpers/parseStack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parseStack.js\");\nconst _ReactDevOverlay = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ./internal/ReactDevOverlay */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/ReactDevOverlay.js\"));\nconst _useerrorhandler = __webpack_require__(/*! ./internal/helpers/use-error-handler */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-error-handler.js\");\nconst _usewebsocket = __webpack_require__(/*! ./internal/helpers/use-websocket */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-websocket.js\");\nconst _parsecomponentstack = __webpack_require__(/*! ./internal/helpers/parse-component-stack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parse-component-stack.js\");\nconst _hotreloadertypes = __webpack_require__(/*! ../../../server/dev/hot-reloader-types */ \"(ssr)/./node_modules/next/dist/server/dev/hot-reloader-types.js\");\nlet mostRecentCompilationHash = null;\nlet __nextDevClientId = Math.round(Math.random() * 100 + Date.now());\nlet reloading = false;\nfunction onBeforeFastRefresh(dispatcher, hasUpdates) {\n if (hasUpdates) {\n dispatcher.onBeforeRefresh();\n }\n}\nfunction onFastRefresh(dispatcher, hasUpdates) {\n dispatcher.onBuildOk();\n if (hasUpdates) {\n dispatcher.onRefresh();\n }\n}\n// There is a newer version of the code available.\nfunction handleAvailableHash(hash) {\n // Update last known compilation hash.\n mostRecentCompilationHash = hash;\n}\n// Is there a newer version of this code available?\nfunction isUpdateAvailable() {\n /* globals __webpack_hash__ */ // __webpack_hash__ is the hash of the current compilation.\n // It's a global variable injected by Webpack.\n return mostRecentCompilationHash !== __webpack_require__.h();\n}\n// Webpack disallows updates in other states.\nfunction canApplyUpdates() {\n // @ts-expect-error module.hot exists\n return module.hot.status() === \"idle\";\n}\nfunction afterApplyUpdates(fn) {\n if (canApplyUpdates()) {\n fn();\n } else {\n function handler(status) {\n if (status === \"idle\") {\n // @ts-expect-error module.hot exists\n module.hot.removeStatusHandler(handler);\n fn();\n }\n }\n // @ts-expect-error module.hot exists\n module.hot.addStatusHandler(handler);\n }\n}\nfunction performFullReload(err, sendMessage) {\n const stackTrace = err && (err.stack && err.stack.split(\"\\n\").slice(0, 5).join(\"\\n\") || err.message || err + \"\");\n sendMessage(JSON.stringify({\n event: \"client-full-reload\",\n stackTrace,\n hadRuntimeError: !!_useerrorhandler.RuntimeErrorHandler.hadRuntimeError\n }));\n if (reloading) return;\n reloading = true;\n window.location.reload();\n}\n// Attempt to update code on the fly, fall back to a hard reload.\nfunction tryApplyUpdates(onBeforeUpdate, onHotUpdateSuccess, sendMessage, dispatcher) {\n if (!isUpdateAvailable() || !canApplyUpdates()) {\n dispatcher.onBuildOk();\n return;\n }\n function handleApplyUpdates(err, updatedModules) {\n if (err || _useerrorhandler.RuntimeErrorHandler.hadRuntimeError || !updatedModules) {\n if (err) {\n console.warn(\"[Fast Refresh] performing full reload\\n\\n\" + \"Fast Refresh will perform a full reload when you edit a file that's imported by modules outside of the React rendering tree.\\n\" + \"You might have a file which exports a React component but also exports a value that is imported by a non-React component file.\\n\" + \"Consider migrating the non-React component export to a separate file and importing it into both files.\\n\\n\" + \"It is also possible the parent component of the component you edited is a class component, which disables Fast Refresh.\\n\" + \"Fast Refresh requires at least one parent function component in your React tree.\");\n } else if (_useerrorhandler.RuntimeErrorHandler.hadRuntimeError) {\n console.warn(\"[Fast Refresh] performing full reload because your application had an unrecoverable error\");\n }\n performFullReload(err, sendMessage);\n return;\n }\n const hasUpdates = Boolean(updatedModules.length);\n if (typeof onHotUpdateSuccess === \"function\") {\n // Maybe we want to do something.\n onHotUpdateSuccess(hasUpdates);\n }\n if (isUpdateAvailable()) {\n // While we were updating, there was a new update! Do it again.\n tryApplyUpdates(hasUpdates ? ()=>{} : onBeforeUpdate, hasUpdates ? ()=>dispatcher.onBuildOk() : onHotUpdateSuccess, sendMessage, dispatcher);\n } else {\n dispatcher.onBuildOk();\n if (false) {}\n }\n }\n // https://webpack.js.org/api/hot-module-replacement/#check\n // @ts-expect-error module.hot exists\n module.hot.check(/* autoApply */ false).then((updatedModules)=>{\n if (!updatedModules) {\n return null;\n }\n if (typeof onBeforeUpdate === \"function\") {\n const hasUpdates = Boolean(updatedModules.length);\n onBeforeUpdate(hasUpdates);\n }\n // https://webpack.js.org/api/hot-module-replacement/#apply\n // @ts-expect-error module.hot exists\n return module.hot.apply();\n }).then((updatedModules)=>{\n handleApplyUpdates(null, updatedModules);\n }, (err)=>{\n handleApplyUpdates(err, null);\n });\n}\nfunction processMessage(obj, sendMessage, router, dispatcher) {\n if (!(\"action\" in obj)) {\n return;\n }\n function handleErrors(errors) {\n // \"Massage\" webpack messages.\n const formatted = (0, _formatwebpackmessages.default)({\n errors: errors,\n warnings: []\n });\n // Only show the first error.\n dispatcher.onBuildError(formatted.errors[0]);\n // Also log them to the console.\n for(let i = 0; i < formatted.errors.length; i++){\n console.error((0, _stripansi.default)(formatted.errors[i]));\n }\n // Do not attempt to reload now.\n // We will reload on next success instead.\n if (false) {}\n }\n function handleHotUpdate() {\n if (false) {} else {\n tryApplyUpdates(function onBeforeHotUpdate(hasUpdates) {\n onBeforeFastRefresh(dispatcher, hasUpdates);\n }, function onSuccessfulHotUpdate(hasUpdates) {\n // Only dismiss it when we're sure it's a hot update.\n // Otherwise it would flicker right before the reload.\n onFastRefresh(dispatcher, hasUpdates);\n }, sendMessage, dispatcher);\n }\n }\n switch(obj.action){\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.BUILDING:\n {\n console.log(\"[Fast Refresh] rebuilding\");\n break;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.FINISH_BUILDING:\n {\n break;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.BUILT:\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SYNC:\n {\n if (obj.hash) {\n handleAvailableHash(obj.hash);\n }\n const { errors, warnings } = obj;\n // Is undefined when it's a 'built' event\n if (\"versionInfo\" in obj) {\n dispatcher.onVersionInfo(obj.versionInfo);\n }\n const hasErrors = Boolean(errors && errors.length);\n // Compilation with errors (e.g. syntax error or missing modules).\n if (hasErrors) {\n sendMessage(JSON.stringify({\n event: \"client-error\",\n errorCount: errors.length,\n clientId: __nextDevClientId\n }));\n handleErrors(errors);\n return;\n }\n const hasWarnings = Boolean(warnings && warnings.length);\n if (hasWarnings) {\n sendMessage(JSON.stringify({\n event: \"client-warning\",\n warningCount: warnings.length,\n clientId: __nextDevClientId\n }));\n // Compilation with warnings (e.g. ESLint).\n const isHotUpdate = obj.action !== _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SYNC;\n // Print warnings to the console.\n const formattedMessages = (0, _formatwebpackmessages.default)({\n warnings: warnings,\n errors: []\n });\n for(let i = 0; i < formattedMessages.warnings.length; i++){\n if (i === 5) {\n console.warn(\"There were more warnings in other files.\\n\" + \"You can find a complete log in the terminal.\");\n break;\n }\n console.warn((0, _stripansi.default)(formattedMessages.warnings[i]));\n }\n // Attempt to apply hot updates or reload.\n if (isHotUpdate) {\n handleHotUpdate();\n }\n return;\n }\n sendMessage(JSON.stringify({\n event: \"client-success\",\n clientId: __nextDevClientId\n }));\n const isHotUpdate = obj.action !== _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SYNC && (!window.__NEXT_DATA__ || window.__NEXT_DATA__.page !== \"/_error\") && isUpdateAvailable();\n // Attempt to apply hot updates or reload.\n if (isHotUpdate) {\n handleHotUpdate();\n }\n return;\n }\n // TODO-APP: make server component change more granular\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SERVER_COMPONENT_CHANGES:\n {\n sendMessage(JSON.stringify({\n event: \"server-component-reload-page\",\n clientId: __nextDevClientId\n }));\n if (_useerrorhandler.RuntimeErrorHandler.hadRuntimeError) {\n if (reloading) return;\n reloading = true;\n return window.location.reload();\n }\n (0, _react.startTransition)(()=>{\n // @ts-ignore it exists, it's just hidden\n router.fastRefresh();\n dispatcher.onRefresh();\n });\n if (false) {}\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.RELOAD_PAGE:\n {\n sendMessage(JSON.stringify({\n event: \"client-reload-page\",\n clientId: __nextDevClientId\n }));\n if (reloading) return;\n reloading = true;\n return window.location.reload();\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.REMOVED_PAGE:\n {\n // TODO-APP: potentially only refresh if the currently viewed page was removed.\n // @ts-ignore it exists, it's just hidden\n router.fastRefresh();\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.ADDED_PAGE:\n {\n // TODO-APP: potentially only refresh if the currently viewed page was added.\n // @ts-ignore it exists, it's just hidden\n router.fastRefresh();\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.SERVER_ERROR:\n {\n const { errorJSON } = obj;\n if (errorJSON) {\n const { message, stack } = JSON.parse(errorJSON);\n const error = new Error(message);\n error.stack = stack;\n handleErrors([\n error\n ]);\n }\n return;\n }\n case _hotreloadertypes.HMR_ACTIONS_SENT_TO_BROWSER.DEV_PAGES_MANIFEST_UPDATE:\n {\n return;\n }\n default:\n {}\n }\n}\nfunction HotReload(param) {\n let { assetPrefix, children } = param;\n const [state, dispatch] = (0, _react.useReducer)(_erroroverlayreducer.errorOverlayReducer, _erroroverlayreducer.INITIAL_OVERLAY_STATE);\n const dispatcher = (0, _react.useMemo)(()=>{\n return {\n onBuildOk () {\n dispatch({\n type: _erroroverlayreducer.ACTION_BUILD_OK\n });\n },\n onBuildError (message) {\n dispatch({\n type: _erroroverlayreducer.ACTION_BUILD_ERROR,\n message\n });\n },\n onBeforeRefresh () {\n dispatch({\n type: _erroroverlayreducer.ACTION_BEFORE_REFRESH\n });\n },\n onRefresh () {\n dispatch({\n type: _erroroverlayreducer.ACTION_REFRESH\n });\n },\n onVersionInfo (versionInfo) {\n dispatch({\n type: _erroroverlayreducer.ACTION_VERSION_INFO,\n versionInfo\n });\n }\n };\n }, [\n dispatch\n ]);\n const handleOnUnhandledError = (0, _react.useCallback)((error)=>{\n // Component stack is added to the error in use-error-handler in case there was a hydration errror\n const componentStack = error._componentStack;\n dispatch({\n type: _erroroverlayreducer.ACTION_UNHANDLED_ERROR,\n reason: error,\n frames: (0, _parseStack.parseStack)(error.stack),\n componentStackFrames: componentStack && (0, _parsecomponentstack.parseComponentStack)(componentStack)\n });\n }, []);\n const handleOnUnhandledRejection = (0, _react.useCallback)((reason)=>{\n dispatch({\n type: _erroroverlayreducer.ACTION_UNHANDLED_REJECTION,\n reason: reason,\n frames: (0, _parseStack.parseStack)(reason.stack)\n });\n }, []);\n const handleOnReactError = (0, _react.useCallback)(()=>{\n _useerrorhandler.RuntimeErrorHandler.hadRuntimeError = true;\n }, []);\n (0, _useerrorhandler.useErrorHandler)(handleOnUnhandledError, handleOnUnhandledRejection);\n const webSocketRef = (0, _usewebsocket.useWebsocket)(assetPrefix);\n (0, _usewebsocket.useWebsocketPing)(webSocketRef);\n const sendMessage = (0, _usewebsocket.useSendMessage)(webSocketRef);\n const processTurbopackMessage = (0, _usewebsocket.useTurbopack)(sendMessage);\n const router = (0, _navigation.useRouter)();\n (0, _react.useEffect)(()=>{\n const handler = (event)=>{\n try {\n const obj = JSON.parse(event.data);\n const handledByTurbopack = processTurbopackMessage == null ? void 0 : processTurbopackMessage(obj);\n if (!handledByTurbopack) {\n processMessage(obj, sendMessage, router, dispatcher);\n }\n } catch (err) {\n var _err_stack;\n console.warn(\"[HMR] Invalid message: \" + event.data + \"\\n\" + ((_err_stack = err == null ? void 0 : err.stack) != null ? _err_stack : \"\"));\n }\n };\n const websocket = webSocketRef.current;\n if (websocket) {\n websocket.addEventListener(\"message\", handler);\n }\n return ()=>websocket && websocket.removeEventListener(\"message\", handler);\n }, [\n sendMessage,\n router,\n webSocketRef,\n dispatcher,\n processTurbopackMessage\n ]);\n return /*#__PURE__*/ _react.default.createElement(_ReactDevOverlay.default, {\n onReactError: handleOnReactError,\n state: state\n }, children);\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=hot-reloader-client.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2hvdC1yZWxvYWRlci1jbGllbnQuanMiLCJtYXBwaW5ncyI6IjtBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCwyQ0FBMEM7SUFDdENJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DO0lBQ1g7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNQywyQkFBMkJDLG1CQUFPQSxDQUFDLGtIQUF5QztBQUNsRixNQUFNQyw0QkFBNEJELG1CQUFPQSxDQUFDLG9IQUEwQztBQUNwRixNQUFNRSxTQUFTLFdBQVcsR0FBR0QsMEJBQTBCRSxDQUFDLENBQUNILG1CQUFPQSxDQUFDLHdHQUFPO0FBQ3hFLE1BQU1JLGFBQWEsV0FBVyxHQUFHTCx5QkFBeUJJLENBQUMsQ0FBQ0gsbUJBQU9BLENBQUMsa0dBQStCO0FBQ25HLE1BQU1LLHlCQUF5QixXQUFXLEdBQUdOLHlCQUF5QkksQ0FBQyxDQUFDSCxtQkFBT0EsQ0FBQywySUFBaUQ7QUFDakksTUFBTU0sY0FBY04sbUJBQU9BLENBQUMscUZBQWU7QUFDM0MsTUFBTU8sdUJBQXVCUCxtQkFBT0EsQ0FBQyw4SUFBa0M7QUFDdkUsTUFBTVEsY0FBY1IsbUJBQU9BLENBQUMsd0lBQStCO0FBQzNELE1BQU1TLG1CQUFtQixXQUFXLEdBQUdWLHlCQUF5QkksQ0FBQyxDQUFDSCxtQkFBT0EsQ0FBQyxrSUFBNEI7QUFDdEcsTUFBTVUsbUJBQW1CVixtQkFBT0EsQ0FBQyxzSkFBc0M7QUFDdkUsTUFBTVcsZ0JBQWdCWCxtQkFBT0EsQ0FBQyw4SUFBa0M7QUFDaEUsTUFBTVksdUJBQXVCWixtQkFBT0EsQ0FBQyw4SkFBMEM7QUFDL0UsTUFBTWEsb0JBQW9CYixtQkFBT0EsQ0FBQywrR0FBd0M7QUFDMUUsSUFBSWMsNEJBQTRCO0FBQ2hDLElBQUlDLG9CQUFvQkMsS0FBS0MsS0FBSyxDQUFDRCxLQUFLRSxNQUFNLEtBQUssTUFBTUMsS0FBS0MsR0FBRztBQUNqRSxJQUFJQyxZQUFZO0FBQ2hCLFNBQVNDLG9CQUFvQkMsVUFBVSxFQUFFQyxVQUFVO0lBQy9DLElBQUlBLFlBQVk7UUFDWkQsV0FBV0UsZUFBZTtJQUM5QjtBQUNKO0FBQ0EsU0FBU0MsY0FBY0gsVUFBVSxFQUFFQyxVQUFVO0lBQ3pDRCxXQUFXSSxTQUFTO0lBQ3BCLElBQUlILFlBQVk7UUFDWkQsV0FBV0ssU0FBUztJQUN4QjtBQUNKO0FBQ0Esa0RBQWtEO0FBQ2xELFNBQVNDLG9CQUFvQkMsSUFBSTtJQUM3QixzQ0FBc0M7SUFDdENoQiw0QkFBNEJnQjtBQUNoQztBQUNBLG1EQUFtRDtBQUNuRCxTQUFTQztJQUNMLDRCQUE0QixHQUFHLDJEQUEyRDtJQUMxRiw4Q0FBOEM7SUFDOUMsT0FBT2pCLDhCQUE4QmtCLHVCQUFnQkE7QUFDekQ7QUFDQSw2Q0FBNkM7QUFDN0MsU0FBU0M7SUFDTCxxQ0FBcUM7SUFDckMsT0FBT0MsT0FBT0MsR0FBRyxDQUFDQyxNQUFNLE9BQU87QUFDbkM7QUFDQSxTQUFTQyxrQkFBa0JDLEVBQUU7SUFDekIsSUFBSUwsbUJBQW1CO1FBQ25CSztJQUNKLE9BQU87UUFDSCxTQUFTQyxRQUFRSCxNQUFNO1lBQ25CLElBQUlBLFdBQVcsUUFBUTtnQkFDbkIscUNBQXFDO2dCQUNyQ0YsT0FBT0MsR0FBRyxDQUFDSyxtQkFBbUIsQ0FBQ0Q7Z0JBQy9CRDtZQUNKO1FBQ0o7UUFDQSxxQ0FBcUM7UUFDckNKLE9BQU9DLEdBQUcsQ0FBQ00sZ0JBQWdCLENBQUNGO0lBQ2hDO0FBQ0o7QUFDQSxTQUFTRyxrQkFBa0JDLEdBQUcsRUFBRUMsV0FBVztJQUN2QyxNQUFNQyxhQUFhRixPQUFRQSxDQUFBQSxJQUFJRyxLQUFLLElBQUlILElBQUlHLEtBQUssQ0FBQ0MsS0FBSyxDQUFDLE1BQU1DLEtBQUssQ0FBQyxHQUFHLEdBQUdDLElBQUksQ0FBQyxTQUFTTixJQUFJTyxPQUFPLElBQUlQLE1BQU0sRUFBQztJQUM5R0MsWUFBWU8sS0FBS0MsU0FBUyxDQUFDO1FBQ3ZCQyxPQUFPO1FBQ1BSO1FBQ0FTLGlCQUFpQixDQUFDLENBQUM1QyxpQkFBaUI2QyxtQkFBbUIsQ0FBQ0QsZUFBZTtJQUMzRTtJQUNBLElBQUlqQyxXQUFXO0lBQ2ZBLFlBQVk7SUFDWm1DLE9BQU9DLFFBQVEsQ0FBQ0MsTUFBTTtBQUMxQjtBQUNBLGlFQUFpRTtBQUNqRSxTQUFTQyxnQkFBZ0JDLGNBQWMsRUFBRUMsa0JBQWtCLEVBQUVqQixXQUFXLEVBQUVyQixVQUFVO0lBQ2hGLElBQUksQ0FBQ1EsdUJBQXVCLENBQUNFLG1CQUFtQjtRQUM1Q1YsV0FBV0ksU0FBUztRQUNwQjtJQUNKO0lBQ0EsU0FBU21DLG1CQUFtQm5CLEdBQUcsRUFBRW9CLGNBQWM7UUFDM0MsSUFBSXBCLE9BQU9qQyxpQkFBaUI2QyxtQkFBbUIsQ0FBQ0QsZUFBZSxJQUFJLENBQUNTLGdCQUFnQjtZQUNoRixJQUFJcEIsS0FBSztnQkFDTHFCLFFBQVFDLElBQUksQ0FBQyw4Q0FBOEMsbUlBQW1JLHFJQUFxSSwrR0FBK0csOEhBQThIO1lBQ3BqQixPQUFPLElBQUl2RCxpQkFBaUI2QyxtQkFBbUIsQ0FBQ0QsZUFBZSxFQUFFO2dCQUM3RFUsUUFBUUMsSUFBSSxDQUFDO1lBQ2pCO1lBQ0F2QixrQkFBa0JDLEtBQUtDO1lBQ3ZCO1FBQ0o7UUFDQSxNQUFNcEIsYUFBYTBDLFFBQVFILGVBQWVJLE1BQU07UUFDaEQsSUFBSSxPQUFPTix1QkFBdUIsWUFBWTtZQUMxQyxpQ0FBaUM7WUFDakNBLG1CQUFtQnJDO1FBQ3ZCO1FBQ0EsSUFBSU8scUJBQXFCO1lBQ3JCLCtEQUErRDtZQUMvRDRCLGdCQUFnQm5DLGFBQWEsS0FBSyxJQUFJb0MsZ0JBQWdCcEMsYUFBYSxJQUFJRCxXQUFXSSxTQUFTLEtBQUtrQyxvQkFBb0JqQixhQUFhckI7UUFDckksT0FBTztZQUNIQSxXQUFXSSxTQUFTO1lBQ3BCLElBQUl5QyxLQUE0QixFQUFFLEVBT2pDO1FBQ0w7SUFDSjtJQUNBLDJEQUEyRDtJQUMzRCxxQ0FBcUM7SUFDckNsQyxPQUFPQyxHQUFHLENBQUNzQyxLQUFLLENBQUMsYUFBYSxHQUFHLE9BQU9DLElBQUksQ0FBQyxDQUFDWDtRQUMxQyxJQUFJLENBQUNBLGdCQUFnQjtZQUNqQixPQUFPO1FBQ1g7UUFDQSxJQUFJLE9BQU9ILG1CQUFtQixZQUFZO1lBQ3RDLE1BQU1wQyxhQUFhMEMsUUFBUUgsZUFBZUksTUFBTTtZQUNoRFAsZUFBZXBDO1FBQ25CO1FBQ0EsMkRBQTJEO1FBQzNELHFDQUFxQztRQUNyQyxPQUFPVSxPQUFPQyxHQUFHLENBQUN3QyxLQUFLO0lBQzNCLEdBQUdELElBQUksQ0FBQyxDQUFDWDtRQUNMRCxtQkFBbUIsTUFBTUM7SUFDN0IsR0FBRyxDQUFDcEI7UUFDQW1CLG1CQUFtQm5CLEtBQUs7SUFDNUI7QUFDSjtBQUNBLFNBQVNpQyxlQUFlQyxHQUFHLEVBQUVqQyxXQUFXLEVBQUVrQyxNQUFNLEVBQUV2RCxVQUFVO0lBQ3hELElBQUksQ0FBRSxhQUFZc0QsR0FBRSxHQUFJO1FBQ3BCO0lBQ0o7SUFDQSxTQUFTRSxhQUFhQyxNQUFNO1FBQ3hCLDhCQUE4QjtRQUM5QixNQUFNQyxZQUFZLENBQUMsR0FBRzVFLHVCQUF1QjZFLE9BQU8sRUFBRTtZQUNsREYsUUFBUUE7WUFDUkcsVUFBVSxFQUFFO1FBQ2hCO1FBQ0EsNkJBQTZCO1FBQzdCNUQsV0FBVzZELFlBQVksQ0FBQ0gsVUFBVUQsTUFBTSxDQUFDLEVBQUU7UUFDM0MsZ0NBQWdDO1FBQ2hDLElBQUksSUFBSUssSUFBSSxHQUFHQSxJQUFJSixVQUFVRCxNQUFNLENBQUNiLE1BQU0sRUFBRWtCLElBQUk7WUFDNUNyQixRQUFRc0IsS0FBSyxDQUFDLENBQUMsR0FBR2xGLFdBQVc4RSxPQUFPLEVBQUVELFVBQVVELE1BQU0sQ0FBQ0ssRUFBRTtRQUM3RDtRQUNBLGdDQUFnQztRQUNoQywwQ0FBMEM7UUFDMUMsSUFBSWpCLEtBQTRCLEVBQUUsRUFLakM7SUFDTDtJQUNBLFNBQVNtQjtRQUNMLElBQUluQixLQUFxQixFQUFFLEVBRTFCLE1BQU07WUFDSFQsZ0JBQWdCLFNBQVM4QixrQkFBa0JqRSxVQUFVO2dCQUNqREYsb0JBQW9CQyxZQUFZQztZQUNwQyxHQUFHLFNBQVNrRSxzQkFBc0JsRSxVQUFVO2dCQUN4QyxxREFBcUQ7Z0JBQ3JELHNEQUFzRDtnQkFDdERFLGNBQWNILFlBQVlDO1lBQzlCLEdBQUdvQixhQUFhckI7UUFDcEI7SUFDSjtJQUNBLE9BQU9zRCxJQUFJYyxNQUFNO1FBQ2IsS0FBSzlFLGtCQUFrQitFLDJCQUEyQixDQUFDQyxRQUFRO1lBQ3ZEO2dCQUNJN0IsUUFBUThCLEdBQUcsQ0FBQztnQkFDWjtZQUNKO1FBQ0osS0FBS2pGLGtCQUFrQitFLDJCQUEyQixDQUFDRyxlQUFlO1lBQzlEO2dCQUNJO1lBQ0o7UUFDSixLQUFLbEYsa0JBQWtCK0UsMkJBQTJCLENBQUNJLEtBQUs7UUFDeEQsS0FBS25GLGtCQUFrQitFLDJCQUEyQixDQUFDSyxJQUFJO1lBQ25EO2dCQUNJLElBQUlwQixJQUFJL0MsSUFBSSxFQUFFO29CQUNWRCxvQkFBb0JnRCxJQUFJL0MsSUFBSTtnQkFDaEM7Z0JBQ0EsTUFBTSxFQUFFa0QsTUFBTSxFQUFFRyxRQUFRLEVBQUUsR0FBR047Z0JBQzdCLHlDQUF5QztnQkFDekMsSUFBSSxpQkFBaUJBLEtBQUs7b0JBQ3RCdEQsV0FBVzJFLGFBQWEsQ0FBQ3JCLElBQUlzQixXQUFXO2dCQUM1QztnQkFDQSxNQUFNQyxZQUFZbEMsUUFBUWMsVUFBVUEsT0FBT2IsTUFBTTtnQkFDakQsa0VBQWtFO2dCQUNsRSxJQUFJaUMsV0FBVztvQkFDWHhELFlBQVlPLEtBQUtDLFNBQVMsQ0FBQzt3QkFDdkJDLE9BQU87d0JBQ1BnRCxZQUFZckIsT0FBT2IsTUFBTTt3QkFDekJtQyxVQUFVdkY7b0JBQ2Q7b0JBQ0FnRSxhQUFhQztvQkFDYjtnQkFDSjtnQkFDQSxNQUFNdUIsY0FBY3JDLFFBQVFpQixZQUFZQSxTQUFTaEIsTUFBTTtnQkFDdkQsSUFBSW9DLGFBQWE7b0JBQ2IzRCxZQUFZTyxLQUFLQyxTQUFTLENBQUM7d0JBQ3ZCQyxPQUFPO3dCQUNQbUQsY0FBY3JCLFNBQVNoQixNQUFNO3dCQUM3Qm1DLFVBQVV2RjtvQkFDZDtvQkFDQSwyQ0FBMkM7b0JBQzNDLE1BQU0wRixjQUFjNUIsSUFBSWMsTUFBTSxLQUFLOUUsa0JBQWtCK0UsMkJBQTJCLENBQUNLLElBQUk7b0JBQ3JGLGlDQUFpQztvQkFDakMsTUFBTVMsb0JBQW9CLENBQUMsR0FBR3JHLHVCQUF1QjZFLE9BQU8sRUFBRTt3QkFDMURDLFVBQVVBO3dCQUNWSCxRQUFRLEVBQUU7b0JBQ2Q7b0JBQ0EsSUFBSSxJQUFJSyxJQUFJLEdBQUdBLElBQUlxQixrQkFBa0J2QixRQUFRLENBQUNoQixNQUFNLEVBQUVrQixJQUFJO3dCQUN0RCxJQUFJQSxNQUFNLEdBQUc7NEJBQ1RyQixRQUFRQyxJQUFJLENBQUMsK0NBQStDOzRCQUM1RDt3QkFDSjt3QkFDQUQsUUFBUUMsSUFBSSxDQUFDLENBQUMsR0FBRzdELFdBQVc4RSxPQUFPLEVBQUV3QixrQkFBa0J2QixRQUFRLENBQUNFLEVBQUU7b0JBQ3RFO29CQUNBLDBDQUEwQztvQkFDMUMsSUFBSW9CLGFBQWE7d0JBQ2JsQjtvQkFDSjtvQkFDQTtnQkFDSjtnQkFDQTNDLFlBQVlPLEtBQUtDLFNBQVMsQ0FBQztvQkFDdkJDLE9BQU87b0JBQ1BpRCxVQUFVdkY7Z0JBQ2Q7Z0JBQ0EsTUFBTTBGLGNBQWM1QixJQUFJYyxNQUFNLEtBQUs5RSxrQkFBa0IrRSwyQkFBMkIsQ0FBQ0ssSUFBSSxJQUFLLEVBQUN6QyxPQUFPbUQsYUFBYSxJQUFJbkQsT0FBT21ELGFBQWEsQ0FBQ0MsSUFBSSxLQUFLLFNBQVEsS0FBTTdFO2dCQUMvSiwwQ0FBMEM7Z0JBQzFDLElBQUkwRSxhQUFhO29CQUNibEI7Z0JBQ0o7Z0JBQ0E7WUFDSjtRQUNKLHVEQUF1RDtRQUN2RCxLQUFLMUUsa0JBQWtCK0UsMkJBQTJCLENBQUNpQix3QkFBd0I7WUFDdkU7Z0JBQ0lqRSxZQUFZTyxLQUFLQyxTQUFTLENBQUM7b0JBQ3ZCQyxPQUFPO29CQUNQaUQsVUFBVXZGO2dCQUNkO2dCQUNBLElBQUlMLGlCQUFpQjZDLG1CQUFtQixDQUFDRCxlQUFlLEVBQUU7b0JBQ3RELElBQUlqQyxXQUFXO29CQUNmQSxZQUFZO29CQUNaLE9BQU9tQyxPQUFPQyxRQUFRLENBQUNDLE1BQU07Z0JBQ2pDO2dCQUNDLElBQUd4RCxPQUFPNEcsZUFBZSxFQUFFO29CQUN4Qix5Q0FBeUM7b0JBQ3pDaEMsT0FBT2lDLFdBQVc7b0JBQ2xCeEYsV0FBV0ssU0FBUztnQkFDeEI7Z0JBQ0EsSUFBSXdDLEtBQTRCLEVBQUUsRUFLakM7Z0JBQ0Q7WUFDSjtRQUNKLEtBQUt2RCxrQkFBa0IrRSwyQkFBMkIsQ0FBQ29CLFdBQVc7WUFDMUQ7Z0JBQ0lwRSxZQUFZTyxLQUFLQyxTQUFTLENBQUM7b0JBQ3ZCQyxPQUFPO29CQUNQaUQsVUFBVXZGO2dCQUNkO2dCQUNBLElBQUlNLFdBQVc7Z0JBQ2ZBLFlBQVk7Z0JBQ1osT0FBT21DLE9BQU9DLFFBQVEsQ0FBQ0MsTUFBTTtZQUNqQztRQUNKLEtBQUs3QyxrQkFBa0IrRSwyQkFBMkIsQ0FBQ3FCLFlBQVk7WUFDM0Q7Z0JBQ0ksK0VBQStFO2dCQUMvRSx5Q0FBeUM7Z0JBQ3pDbkMsT0FBT2lDLFdBQVc7Z0JBQ2xCO1lBQ0o7UUFDSixLQUFLbEcsa0JBQWtCK0UsMkJBQTJCLENBQUNzQixVQUFVO1lBQ3pEO2dCQUNJLDZFQUE2RTtnQkFDN0UseUNBQXlDO2dCQUN6Q3BDLE9BQU9pQyxXQUFXO2dCQUNsQjtZQUNKO1FBQ0osS0FBS2xHLGtCQUFrQitFLDJCQUEyQixDQUFDdUIsWUFBWTtZQUMzRDtnQkFDSSxNQUFNLEVBQUVDLFNBQVMsRUFBRSxHQUFHdkM7Z0JBQ3RCLElBQUl1QyxXQUFXO29CQUNYLE1BQU0sRUFBRWxFLE9BQU8sRUFBRUosS0FBSyxFQUFFLEdBQUdLLEtBQUtrRSxLQUFLLENBQUNEO29CQUN0QyxNQUFNOUIsUUFBUSxJQUFJZ0MsTUFBTXBFO29CQUN4Qm9DLE1BQU14QyxLQUFLLEdBQUdBO29CQUNkaUMsYUFBYTt3QkFDVE87cUJBQ0g7Z0JBQ0w7Z0JBQ0E7WUFDSjtRQUNKLEtBQUt6RSxrQkFBa0IrRSwyQkFBMkIsQ0FBQzJCLHlCQUF5QjtZQUN4RTtnQkFDSTtZQUNKO1FBQ0o7WUFDSSxDQUFDO0lBQ1Q7QUFDSjtBQUNBLFNBQVN6SCxVQUFVMEgsS0FBSztJQUNwQixJQUFJLEVBQUVDLFdBQVcsRUFBRUMsUUFBUSxFQUFFLEdBQUdGO0lBQ2hDLE1BQU0sQ0FBQ0csT0FBT0MsU0FBUyxHQUFHLENBQUMsR0FBRzFILE9BQU8ySCxVQUFVLEVBQUV0SCxxQkFBcUJ1SCxtQkFBbUIsRUFBRXZILHFCQUFxQndILHFCQUFxQjtJQUNySSxNQUFNeEcsYUFBYSxDQUFDLEdBQUdyQixPQUFPOEgsT0FBTyxFQUFFO1FBQ25DLE9BQU87WUFDSHJHO2dCQUNJaUcsU0FBUztvQkFDTEssTUFBTTFILHFCQUFxQjJILGVBQWU7Z0JBQzlDO1lBQ0o7WUFDQTlDLGNBQWNsQyxPQUFPO2dCQUNqQjBFLFNBQVM7b0JBQ0xLLE1BQU0xSCxxQkFBcUI0SCxrQkFBa0I7b0JBQzdDakY7Z0JBQ0o7WUFDSjtZQUNBekI7Z0JBQ0ltRyxTQUFTO29CQUNMSyxNQUFNMUgscUJBQXFCNkgscUJBQXFCO2dCQUNwRDtZQUNKO1lBQ0F4RztnQkFDSWdHLFNBQVM7b0JBQ0xLLE1BQU0xSCxxQkFBcUI4SCxjQUFjO2dCQUM3QztZQUNKO1lBQ0FuQyxlQUFlQyxXQUFXO2dCQUN0QnlCLFNBQVM7b0JBQ0xLLE1BQU0xSCxxQkFBcUIrSCxtQkFBbUI7b0JBQzlDbkM7Z0JBQ0o7WUFDSjtRQUNKO0lBQ0osR0FBRztRQUNDeUI7S0FDSDtJQUNELE1BQU1XLHlCQUF5QixDQUFDLEdBQUdySSxPQUFPc0ksV0FBVyxFQUFFLENBQUNsRDtRQUNwRCxrR0FBa0c7UUFDbEcsTUFBTW1ELGlCQUFpQm5ELE1BQU1vRCxlQUFlO1FBQzVDZCxTQUFTO1lBQ0xLLE1BQU0xSCxxQkFBcUJvSSxzQkFBc0I7WUFDakRDLFFBQVF0RDtZQUNSdUQsUUFBUSxDQUFDLEdBQUdySSxZQUFZc0ksVUFBVSxFQUFFeEQsTUFBTXhDLEtBQUs7WUFDL0NpRyxzQkFBc0JOLGtCQUFrQixDQUFDLEdBQUc3SCxxQkFBcUJvSSxtQkFBbUIsRUFBRVA7UUFDMUY7SUFDSixHQUFHLEVBQUU7SUFDTCxNQUFNUSw2QkFBNkIsQ0FBQyxHQUFHL0ksT0FBT3NJLFdBQVcsRUFBRSxDQUFDSTtRQUN4RGhCLFNBQVM7WUFDTEssTUFBTTFILHFCQUFxQjJJLDBCQUEwQjtZQUNyRE4sUUFBUUE7WUFDUkMsUUFBUSxDQUFDLEdBQUdySSxZQUFZc0ksVUFBVSxFQUFFRixPQUFPOUYsS0FBSztRQUNwRDtJQUNKLEdBQUcsRUFBRTtJQUNMLE1BQU1xRyxxQkFBcUIsQ0FBQyxHQUFHakosT0FBT3NJLFdBQVcsRUFBRTtRQUMvQzlILGlCQUFpQjZDLG1CQUFtQixDQUFDRCxlQUFlLEdBQUc7SUFDM0QsR0FBRyxFQUFFO0lBQ0osSUFBRzVDLGlCQUFpQjBJLGVBQWUsRUFBRWIsd0JBQXdCVTtJQUM5RCxNQUFNSSxlQUFlLENBQUMsR0FBRzFJLGNBQWMySSxZQUFZLEVBQUU3QjtJQUNwRCxJQUFHOUcsY0FBYzRJLGdCQUFnQixFQUFFRjtJQUNwQyxNQUFNekcsY0FBYyxDQUFDLEdBQUdqQyxjQUFjNkksY0FBYyxFQUFFSDtJQUN0RCxNQUFNSSwwQkFBMEIsQ0FBQyxHQUFHOUksY0FBYytJLFlBQVksRUFBRTlHO0lBQ2hFLE1BQU1rQyxTQUFTLENBQUMsR0FBR3hFLFlBQVlxSixTQUFTO0lBQ3ZDLElBQUd6SixPQUFPMEosU0FBUyxFQUFFO1FBQ2xCLE1BQU1ySCxVQUFVLENBQUNjO1lBQ2IsSUFBSTtnQkFDQSxNQUFNd0IsTUFBTTFCLEtBQUtrRSxLQUFLLENBQUNoRSxNQUFNd0csSUFBSTtnQkFDakMsTUFBTUMscUJBQXFCTCwyQkFBMkIsT0FBTyxLQUFLLElBQUlBLHdCQUF3QjVFO2dCQUM5RixJQUFJLENBQUNpRixvQkFBb0I7b0JBQ3JCbEYsZUFBZUMsS0FBS2pDLGFBQWFrQyxRQUFRdkQ7Z0JBQzdDO1lBQ0osRUFBRSxPQUFPb0IsS0FBSztnQkFDVixJQUFJb0g7Z0JBQ0ovRixRQUFRQyxJQUFJLENBQUMsNEJBQTRCWixNQUFNd0csSUFBSSxHQUFHLE9BQVEsRUFBQ0UsYUFBYXBILE9BQU8sT0FBTyxLQUFLLElBQUlBLElBQUlHLEtBQUssS0FBSyxPQUFPaUgsYUFBYSxFQUFDO1lBQzFJO1FBQ0o7UUFDQSxNQUFNQyxZQUFZWCxhQUFhWSxPQUFPO1FBQ3RDLElBQUlELFdBQVc7WUFDWEEsVUFBVUUsZ0JBQWdCLENBQUMsV0FBVzNIO1FBQzFDO1FBQ0EsT0FBTyxJQUFJeUgsYUFBYUEsVUFBVUcsbUJBQW1CLENBQUMsV0FBVzVIO0lBQ3JFLEdBQUc7UUFDQ0s7UUFDQWtDO1FBQ0F1RTtRQUNBOUg7UUFDQWtJO0tBQ0g7SUFDRCxPQUFPLFdBQVcsR0FBR3ZKLE9BQU9nRixPQUFPLENBQUNrRixhQUFhLENBQUMzSixpQkFBaUJ5RSxPQUFPLEVBQUU7UUFDeEVtRixjQUFjbEI7UUFDZHhCLE9BQU9BO0lBQ1gsR0FBR0Q7QUFDUDtBQUVBLElBQUksQ0FBQyxPQUFPaEksUUFBUXdGLE9BQU8sS0FBSyxjQUFlLE9BQU94RixRQUFRd0YsT0FBTyxLQUFLLFlBQVl4RixRQUFRd0YsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPeEYsUUFBUXdGLE9BQU8sQ0FBQ29GLFVBQVUsS0FBSyxhQUFhO0lBQ3JLOUssT0FBT0MsY0FBYyxDQUFDQyxRQUFRd0YsT0FBTyxFQUFFLGNBQWM7UUFBRXZGLE9BQU87SUFBSztJQUNuRUgsT0FBTytLLE1BQU0sQ0FBQzdLLFFBQVF3RixPQUFPLEVBQUV4RjtJQUMvQndDLE9BQU94QyxPQUFPLEdBQUdBLFFBQVF3RixPQUFPO0FBQ2xDLEVBRUEsK0NBQStDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2hvdC1yZWxvYWRlci1jbGllbnQuanM/MDY4YiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcImRlZmF1bHRcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIEhvdFJlbG9hZDtcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHRcIik7XG5jb25zdCBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRcIik7XG5jb25zdCBfcmVhY3QgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQuXyhyZXF1aXJlKFwicmVhY3RcIikpO1xuY29uc3QgX3N0cmlwYW5zaSA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0Ll8ocmVxdWlyZShcIm5leHQvZGlzdC9jb21waWxlZC9zdHJpcC1hbnNpXCIpKTtcbmNvbnN0IF9mb3JtYXR3ZWJwYWNrbWVzc2FnZXMgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCIuLi8uLi9kZXYvZXJyb3Itb3ZlcmxheS9mb3JtYXQtd2VicGFjay1tZXNzYWdlc1wiKSk7XG5jb25zdCBfbmF2aWdhdGlvbiA9IHJlcXVpcmUoXCIuLi9uYXZpZ2F0aW9uXCIpO1xuY29uc3QgX2Vycm9yb3ZlcmxheXJlZHVjZXIgPSByZXF1aXJlKFwiLi9pbnRlcm5hbC9lcnJvci1vdmVybGF5LXJlZHVjZXJcIik7XG5jb25zdCBfcGFyc2VTdGFjayA9IHJlcXVpcmUoXCIuL2ludGVybmFsL2hlbHBlcnMvcGFyc2VTdGFja1wiKTtcbmNvbnN0IF9SZWFjdERldk92ZXJsYXkgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCIuL2ludGVybmFsL1JlYWN0RGV2T3ZlcmxheVwiKSk7XG5jb25zdCBfdXNlZXJyb3JoYW5kbGVyID0gcmVxdWlyZShcIi4vaW50ZXJuYWwvaGVscGVycy91c2UtZXJyb3ItaGFuZGxlclwiKTtcbmNvbnN0IF91c2V3ZWJzb2NrZXQgPSByZXF1aXJlKFwiLi9pbnRlcm5hbC9oZWxwZXJzL3VzZS13ZWJzb2NrZXRcIik7XG5jb25zdCBfcGFyc2Vjb21wb25lbnRzdGFjayA9IHJlcXVpcmUoXCIuL2ludGVybmFsL2hlbHBlcnMvcGFyc2UtY29tcG9uZW50LXN0YWNrXCIpO1xuY29uc3QgX2hvdHJlbG9hZGVydHlwZXMgPSByZXF1aXJlKFwiLi4vLi4vLi4vc2VydmVyL2Rldi9ob3QtcmVsb2FkZXItdHlwZXNcIik7XG5sZXQgbW9zdFJlY2VudENvbXBpbGF0aW9uSGFzaCA9IG51bGw7XG5sZXQgX19uZXh0RGV2Q2xpZW50SWQgPSBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAxMDAgKyBEYXRlLm5vdygpKTtcbmxldCByZWxvYWRpbmcgPSBmYWxzZTtcbmZ1bmN0aW9uIG9uQmVmb3JlRmFzdFJlZnJlc2goZGlzcGF0Y2hlciwgaGFzVXBkYXRlcykge1xuICAgIGlmIChoYXNVcGRhdGVzKSB7XG4gICAgICAgIGRpc3BhdGNoZXIub25CZWZvcmVSZWZyZXNoKCk7XG4gICAgfVxufVxuZnVuY3Rpb24gb25GYXN0UmVmcmVzaChkaXNwYXRjaGVyLCBoYXNVcGRhdGVzKSB7XG4gICAgZGlzcGF0Y2hlci5vbkJ1aWxkT2soKTtcbiAgICBpZiAoaGFzVXBkYXRlcykge1xuICAgICAgICBkaXNwYXRjaGVyLm9uUmVmcmVzaCgpO1xuICAgIH1cbn1cbi8vIFRoZXJlIGlzIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgY29kZSBhdmFpbGFibGUuXG5mdW5jdGlvbiBoYW5kbGVBdmFpbGFibGVIYXNoKGhhc2gpIHtcbiAgICAvLyBVcGRhdGUgbGFzdCBrbm93biBjb21waWxhdGlvbiBoYXNoLlxuICAgIG1vc3RSZWNlbnRDb21waWxhdGlvbkhhc2ggPSBoYXNoO1xufVxuLy8gSXMgdGhlcmUgYSBuZXdlciB2ZXJzaW9uIG9mIHRoaXMgY29kZSBhdmFpbGFibGU/XG5mdW5jdGlvbiBpc1VwZGF0ZUF2YWlsYWJsZSgpIHtcbiAgICAvKiBnbG9iYWxzIF9fd2VicGFja19oYXNoX18gKi8gLy8gX193ZWJwYWNrX2hhc2hfXyBpcyB0aGUgaGFzaCBvZiB0aGUgY3VycmVudCBjb21waWxhdGlvbi5cbiAgICAvLyBJdCdzIGEgZ2xvYmFsIHZhcmlhYmxlIGluamVjdGVkIGJ5IFdlYnBhY2suXG4gICAgcmV0dXJuIG1vc3RSZWNlbnRDb21waWxhdGlvbkhhc2ggIT09IF9fd2VicGFja19oYXNoX187XG59XG4vLyBXZWJwYWNrIGRpc2FsbG93cyB1cGRhdGVzIGluIG90aGVyIHN0YXRlcy5cbmZ1bmN0aW9uIGNhbkFwcGx5VXBkYXRlcygpIHtcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yIG1vZHVsZS5ob3QgZXhpc3RzXG4gICAgcmV0dXJuIG1vZHVsZS5ob3Quc3RhdHVzKCkgPT09IFwiaWRsZVwiO1xufVxuZnVuY3Rpb24gYWZ0ZXJBcHBseVVwZGF0ZXMoZm4pIHtcbiAgICBpZiAoY2FuQXBwbHlVcGRhdGVzKCkpIHtcbiAgICAgICAgZm4oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBmdW5jdGlvbiBoYW5kbGVyKHN0YXR1cykge1xuICAgICAgICAgICAgaWYgKHN0YXR1cyA9PT0gXCJpZGxlXCIpIHtcbiAgICAgICAgICAgICAgICAvLyBAdHMtZXhwZWN0LWVycm9yIG1vZHVsZS5ob3QgZXhpc3RzXG4gICAgICAgICAgICAgICAgbW9kdWxlLmhvdC5yZW1vdmVTdGF0dXNIYW5kbGVyKGhhbmRsZXIpO1xuICAgICAgICAgICAgICAgIGZuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBtb2R1bGUuaG90IGV4aXN0c1xuICAgICAgICBtb2R1bGUuaG90LmFkZFN0YXR1c0hhbmRsZXIoaGFuZGxlcik7XG4gICAgfVxufVxuZnVuY3Rpb24gcGVyZm9ybUZ1bGxSZWxvYWQoZXJyLCBzZW5kTWVzc2FnZSkge1xuICAgIGNvbnN0IHN0YWNrVHJhY2UgPSBlcnIgJiYgKGVyci5zdGFjayAmJiBlcnIuc3RhY2suc3BsaXQoXCJcXG5cIikuc2xpY2UoMCwgNSkuam9pbihcIlxcblwiKSB8fCBlcnIubWVzc2FnZSB8fCBlcnIgKyBcIlwiKTtcbiAgICBzZW5kTWVzc2FnZShKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGV2ZW50OiBcImNsaWVudC1mdWxsLXJlbG9hZFwiLFxuICAgICAgICBzdGFja1RyYWNlLFxuICAgICAgICBoYWRSdW50aW1lRXJyb3I6ICEhX3VzZWVycm9yaGFuZGxlci5SdW50aW1lRXJyb3JIYW5kbGVyLmhhZFJ1bnRpbWVFcnJvclxuICAgIH0pKTtcbiAgICBpZiAocmVsb2FkaW5nKSByZXR1cm47XG4gICAgcmVsb2FkaW5nID0gdHJ1ZTtcbiAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7XG59XG4vLyBBdHRlbXB0IHRvIHVwZGF0ZSBjb2RlIG9uIHRoZSBmbHksIGZhbGwgYmFjayB0byBhIGhhcmQgcmVsb2FkLlxuZnVuY3Rpb24gdHJ5QXBwbHlVcGRhdGVzKG9uQmVmb3JlVXBkYXRlLCBvbkhvdFVwZGF0ZVN1Y2Nlc3MsIHNlbmRNZXNzYWdlLCBkaXNwYXRjaGVyKSB7XG4gICAgaWYgKCFpc1VwZGF0ZUF2YWlsYWJsZSgpIHx8ICFjYW5BcHBseVVwZGF0ZXMoKSkge1xuICAgICAgICBkaXNwYXRjaGVyLm9uQnVpbGRPaygpO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGZ1bmN0aW9uIGhhbmRsZUFwcGx5VXBkYXRlcyhlcnIsIHVwZGF0ZWRNb2R1bGVzKSB7XG4gICAgICAgIGlmIChlcnIgfHwgX3VzZWVycm9yaGFuZGxlci5SdW50aW1lRXJyb3JIYW5kbGVyLmhhZFJ1bnRpbWVFcnJvciB8fCAhdXBkYXRlZE1vZHVsZXMpIHtcbiAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oXCJbRmFzdCBSZWZyZXNoXSBwZXJmb3JtaW5nIGZ1bGwgcmVsb2FkXFxuXFxuXCIgKyBcIkZhc3QgUmVmcmVzaCB3aWxsIHBlcmZvcm0gYSBmdWxsIHJlbG9hZCB3aGVuIHlvdSBlZGl0IGEgZmlsZSB0aGF0J3MgaW1wb3J0ZWQgYnkgbW9kdWxlcyBvdXRzaWRlIG9mIHRoZSBSZWFjdCByZW5kZXJpbmcgdHJlZS5cXG5cIiArIFwiWW91IG1pZ2h0IGhhdmUgYSBmaWxlIHdoaWNoIGV4cG9ydHMgYSBSZWFjdCBjb21wb25lbnQgYnV0IGFsc28gZXhwb3J0cyBhIHZhbHVlIHRoYXQgaXMgaW1wb3J0ZWQgYnkgYSBub24tUmVhY3QgY29tcG9uZW50IGZpbGUuXFxuXCIgKyBcIkNvbnNpZGVyIG1pZ3JhdGluZyB0aGUgbm9uLVJlYWN0IGNvbXBvbmVudCBleHBvcnQgdG8gYSBzZXBhcmF0ZSBmaWxlIGFuZCBpbXBvcnRpbmcgaXQgaW50byBib3RoIGZpbGVzLlxcblxcblwiICsgXCJJdCBpcyBhbHNvIHBvc3NpYmxlIHRoZSBwYXJlbnQgY29tcG9uZW50IG9mIHRoZSBjb21wb25lbnQgeW91IGVkaXRlZCBpcyBhIGNsYXNzIGNvbXBvbmVudCwgd2hpY2ggZGlzYWJsZXMgRmFzdCBSZWZyZXNoLlxcblwiICsgXCJGYXN0IFJlZnJlc2ggcmVxdWlyZXMgYXQgbGVhc3Qgb25lIHBhcmVudCBmdW5jdGlvbiBjb21wb25lbnQgaW4geW91ciBSZWFjdCB0cmVlLlwiKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoX3VzZWVycm9yaGFuZGxlci5SdW50aW1lRXJyb3JIYW5kbGVyLmhhZFJ1bnRpbWVFcnJvcikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihcIltGYXN0IFJlZnJlc2hdIHBlcmZvcm1pbmcgZnVsbCByZWxvYWQgYmVjYXVzZSB5b3VyIGFwcGxpY2F0aW9uIGhhZCBhbiB1bnJlY292ZXJhYmxlIGVycm9yXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcGVyZm9ybUZ1bGxSZWxvYWQoZXJyLCBzZW5kTWVzc2FnZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaGFzVXBkYXRlcyA9IEJvb2xlYW4odXBkYXRlZE1vZHVsZXMubGVuZ3RoKTtcbiAgICAgICAgaWYgKHR5cGVvZiBvbkhvdFVwZGF0ZVN1Y2Nlc3MgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgLy8gTWF5YmUgd2Ugd2FudCB0byBkbyBzb21ldGhpbmcuXG4gICAgICAgICAgICBvbkhvdFVwZGF0ZVN1Y2Nlc3MoaGFzVXBkYXRlcyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzVXBkYXRlQXZhaWxhYmxlKCkpIHtcbiAgICAgICAgICAgIC8vIFdoaWxlIHdlIHdlcmUgdXBkYXRpbmcsIHRoZXJlIHdhcyBhIG5ldyB1cGRhdGUhIERvIGl0IGFnYWluLlxuICAgICAgICAgICAgdHJ5QXBwbHlVcGRhdGVzKGhhc1VwZGF0ZXMgPyAoKT0+e30gOiBvbkJlZm9yZVVwZGF0ZSwgaGFzVXBkYXRlcyA/ICgpPT5kaXNwYXRjaGVyLm9uQnVpbGRPaygpIDogb25Ib3RVcGRhdGVTdWNjZXNzLCBzZW5kTWVzc2FnZSwgZGlzcGF0Y2hlcik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBkaXNwYXRjaGVyLm9uQnVpbGRPaygpO1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9URVNUX01PREUpIHtcbiAgICAgICAgICAgICAgICBhZnRlckFwcGx5VXBkYXRlcygoKT0+e1xuICAgICAgICAgICAgICAgICAgICBpZiAoc2VsZi5fX05FWFRfSE1SX0NCKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9fTkVYVF9ITVJfQ0IoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX19ORVhUX0hNUl9DQiA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBodHRwczovL3dlYnBhY2suanMub3JnL2FwaS9ob3QtbW9kdWxlLXJlcGxhY2VtZW50LyNjaGVja1xuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgbW9kdWxlLmhvdCBleGlzdHNcbiAgICBtb2R1bGUuaG90LmNoZWNrKC8qIGF1dG9BcHBseSAqLyBmYWxzZSkudGhlbigodXBkYXRlZE1vZHVsZXMpPT57XG4gICAgICAgIGlmICghdXBkYXRlZE1vZHVsZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2Ygb25CZWZvcmVVcGRhdGUgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgY29uc3QgaGFzVXBkYXRlcyA9IEJvb2xlYW4odXBkYXRlZE1vZHVsZXMubGVuZ3RoKTtcbiAgICAgICAgICAgIG9uQmVmb3JlVXBkYXRlKGhhc1VwZGF0ZXMpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGh0dHBzOi8vd2VicGFjay5qcy5vcmcvYXBpL2hvdC1tb2R1bGUtcmVwbGFjZW1lbnQvI2FwcGx5XG4gICAgICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgbW9kdWxlLmhvdCBleGlzdHNcbiAgICAgICAgcmV0dXJuIG1vZHVsZS5ob3QuYXBwbHkoKTtcbiAgICB9KS50aGVuKCh1cGRhdGVkTW9kdWxlcyk9PntcbiAgICAgICAgaGFuZGxlQXBwbHlVcGRhdGVzKG51bGwsIHVwZGF0ZWRNb2R1bGVzKTtcbiAgICB9LCAoZXJyKT0+e1xuICAgICAgICBoYW5kbGVBcHBseVVwZGF0ZXMoZXJyLCBudWxsKTtcbiAgICB9KTtcbn1cbmZ1bmN0aW9uIHByb2Nlc3NNZXNzYWdlKG9iaiwgc2VuZE1lc3NhZ2UsIHJvdXRlciwgZGlzcGF0Y2hlcikge1xuICAgIGlmICghKFwiYWN0aW9uXCIgaW4gb2JqKSkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9ycyhlcnJvcnMpIHtcbiAgICAgICAgLy8gXCJNYXNzYWdlXCIgd2VicGFjayBtZXNzYWdlcy5cbiAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gKDAsIF9mb3JtYXR3ZWJwYWNrbWVzc2FnZXMuZGVmYXVsdCkoe1xuICAgICAgICAgICAgZXJyb3JzOiBlcnJvcnMsXG4gICAgICAgICAgICB3YXJuaW5nczogW11cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIE9ubHkgc2hvdyB0aGUgZmlyc3QgZXJyb3IuXG4gICAgICAgIGRpc3BhdGNoZXIub25CdWlsZEVycm9yKGZvcm1hdHRlZC5lcnJvcnNbMF0pO1xuICAgICAgICAvLyBBbHNvIGxvZyB0aGVtIHRvIHRoZSBjb25zb2xlLlxuICAgICAgICBmb3IobGV0IGkgPSAwOyBpIDwgZm9ybWF0dGVkLmVycm9ycy5sZW5ndGg7IGkrKyl7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCgwLCBfc3RyaXBhbnNpLmRlZmF1bHQpKGZvcm1hdHRlZC5lcnJvcnNbaV0pKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBEbyBub3QgYXR0ZW1wdCB0byByZWxvYWQgbm93LlxuICAgICAgICAvLyBXZSB3aWxsIHJlbG9hZCBvbiBuZXh0IHN1Y2Nlc3MgaW5zdGVhZC5cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9URVNUX01PREUpIHtcbiAgICAgICAgICAgIGlmIChzZWxmLl9fTkVYVF9ITVJfQ0IpIHtcbiAgICAgICAgICAgICAgICBzZWxmLl9fTkVYVF9ITVJfQ0IoZm9ybWF0dGVkLmVycm9yc1swXSk7XG4gICAgICAgICAgICAgICAgc2VsZi5fX05FWFRfSE1SX0NCID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBoYW5kbGVIb3RVcGRhdGUoKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5UVVJCT1BBQ0spIHtcbiAgICAgICAgICAgIG9uRmFzdFJlZnJlc2goZGlzcGF0Y2hlciwgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0cnlBcHBseVVwZGF0ZXMoZnVuY3Rpb24gb25CZWZvcmVIb3RVcGRhdGUoaGFzVXBkYXRlcykge1xuICAgICAgICAgICAgICAgIG9uQmVmb3JlRmFzdFJlZnJlc2goZGlzcGF0Y2hlciwgaGFzVXBkYXRlcyk7XG4gICAgICAgICAgICB9LCBmdW5jdGlvbiBvblN1Y2Nlc3NmdWxIb3RVcGRhdGUoaGFzVXBkYXRlcykge1xuICAgICAgICAgICAgICAgIC8vIE9ubHkgZGlzbWlzcyBpdCB3aGVuIHdlJ3JlIHN1cmUgaXQncyBhIGhvdCB1cGRhdGUuXG4gICAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlIGl0IHdvdWxkIGZsaWNrZXIgcmlnaHQgYmVmb3JlIHRoZSByZWxvYWQuXG4gICAgICAgICAgICAgICAgb25GYXN0UmVmcmVzaChkaXNwYXRjaGVyLCBoYXNVcGRhdGVzKTtcbiAgICAgICAgICAgIH0sIHNlbmRNZXNzYWdlLCBkaXNwYXRjaGVyKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzd2l0Y2gob2JqLmFjdGlvbil7XG4gICAgICAgIGNhc2UgX2hvdHJlbG9hZGVydHlwZXMuSE1SX0FDVElPTlNfU0VOVF9UT19CUk9XU0VSLkJVSUxESU5HOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiW0Zhc3QgUmVmcmVzaF0gcmVidWlsZGluZ1wiKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgY2FzZSBfaG90cmVsb2FkZXJ0eXBlcy5ITVJfQUNUSU9OU19TRU5UX1RPX0JST1dTRVIuRklOSVNIX0JVSUxESU5HOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICBjYXNlIF9ob3RyZWxvYWRlcnR5cGVzLkhNUl9BQ1RJT05TX1NFTlRfVE9fQlJPV1NFUi5CVUlMVDpcbiAgICAgICAgY2FzZSBfaG90cmVsb2FkZXJ0eXBlcy5ITVJfQUNUSU9OU19TRU5UX1RPX0JST1dTRVIuU1lOQzpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZiAob2JqLmhhc2gpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlQXZhaWxhYmxlSGFzaChvYmouaGFzaCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHsgZXJyb3JzLCB3YXJuaW5ncyB9ID0gb2JqO1xuICAgICAgICAgICAgICAgIC8vIElzIHVuZGVmaW5lZCB3aGVuIGl0J3MgYSAnYnVpbHQnIGV2ZW50XG4gICAgICAgICAgICAgICAgaWYgKFwidmVyc2lvbkluZm9cIiBpbiBvYmopIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2hlci5vblZlcnNpb25JbmZvKG9iai52ZXJzaW9uSW5mbyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IGhhc0Vycm9ycyA9IEJvb2xlYW4oZXJyb3JzICYmIGVycm9ycy5sZW5ndGgpO1xuICAgICAgICAgICAgICAgIC8vIENvbXBpbGF0aW9uIHdpdGggZXJyb3JzIChlLmcuIHN5bnRheCBlcnJvciBvciBtaXNzaW5nIG1vZHVsZXMpLlxuICAgICAgICAgICAgICAgIGlmIChoYXNFcnJvcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VuZE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQ6IFwiY2xpZW50LWVycm9yXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvckNvdW50OiBlcnJvcnMubGVuZ3RoLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6IF9fbmV4dERldkNsaWVudElkXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3JzKGVycm9ycyk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgaGFzV2FybmluZ3MgPSBCb29sZWFuKHdhcm5pbmdzICYmIHdhcm5pbmdzLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgaWYgKGhhc1dhcm5pbmdzKSB7XG4gICAgICAgICAgICAgICAgICAgIHNlbmRNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50OiBcImNsaWVudC13YXJuaW5nXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nQ291bnQ6IHdhcm5pbmdzLmxlbmd0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiBfX25leHREZXZDbGllbnRJZFxuICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIC8vIENvbXBpbGF0aW9uIHdpdGggd2FybmluZ3MgKGUuZy4gRVNMaW50KS5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNIb3RVcGRhdGUgPSBvYmouYWN0aW9uICE9PSBfaG90cmVsb2FkZXJ0eXBlcy5ITVJfQUNUSU9OU19TRU5UX1RPX0JST1dTRVIuU1lOQztcbiAgICAgICAgICAgICAgICAgICAgLy8gUHJpbnQgd2FybmluZ3MgdG8gdGhlIGNvbnNvbGUuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZE1lc3NhZ2VzID0gKDAsIF9mb3JtYXR3ZWJwYWNrbWVzc2FnZXMuZGVmYXVsdCkoe1xuICAgICAgICAgICAgICAgICAgICAgICAgd2FybmluZ3M6IHdhcm5pbmdzLFxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzOiBbXVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgZm9yKGxldCBpID0gMDsgaSA8IGZvcm1hdHRlZE1lc3NhZ2VzLndhcm5pbmdzLmxlbmd0aDsgaSsrKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpID09PSA1KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFwiVGhlcmUgd2VyZSBtb3JlIHdhcm5pbmdzIGluIG90aGVyIGZpbGVzLlxcblwiICsgXCJZb3UgY2FuIGZpbmQgYSBjb21wbGV0ZSBsb2cgaW4gdGhlIHRlcm1pbmFsLlwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybigoMCwgX3N0cmlwYW5zaS5kZWZhdWx0KShmb3JtYXR0ZWRNZXNzYWdlcy53YXJuaW5nc1tpXSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIEF0dGVtcHQgdG8gYXBwbHkgaG90IHVwZGF0ZXMgb3IgcmVsb2FkLlxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNIb3RVcGRhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhvdFVwZGF0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc2VuZE1lc3NhZ2UoSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgICAgICBldmVudDogXCJjbGllbnQtc3VjY2Vzc1wiLFxuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDogX19uZXh0RGV2Q2xpZW50SWRcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgY29uc3QgaXNIb3RVcGRhdGUgPSBvYmouYWN0aW9uICE9PSBfaG90cmVsb2FkZXJ0eXBlcy5ITVJfQUNUSU9OU19TRU5UX1RPX0JST1dTRVIuU1lOQyAmJiAoIXdpbmRvdy5fX05FWFRfREFUQV9fIHx8IHdpbmRvdy5fX05FWFRfREFUQV9fLnBhZ2UgIT09IFwiL19lcnJvclwiKSAmJiBpc1VwZGF0ZUF2YWlsYWJsZSgpO1xuICAgICAgICAgICAgICAgIC8vIEF0dGVtcHQgdG8gYXBwbHkgaG90IHVwZGF0ZXMgb3IgcmVsb2FkLlxuICAgICAgICAgICAgICAgIGlmIChpc0hvdFVwZGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVIb3RVcGRhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAvLyBUT0RPLUFQUDogbWFrZSBzZXJ2ZXIgY29tcG9uZW50IGNoYW5nZSBtb3JlIGdyYW51bGFyXG4gICAgICAgIGNhc2UgX2hvdHJlbG9hZGVydHlwZXMuSE1SX0FDVElPTlNfU0VOVF9UT19CUk9XU0VSLlNFUlZFUl9DT01QT05FTlRfQ0hBTkdFUzpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBzZW5kTWVzc2FnZShKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50OiBcInNlcnZlci1jb21wb25lbnQtcmVsb2FkLXBhZ2VcIixcbiAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6IF9fbmV4dERldkNsaWVudElkXG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgIGlmIChfdXNlZXJyb3JoYW5kbGVyLlJ1bnRpbWVFcnJvckhhbmRsZXIuaGFkUnVudGltZUVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZWxvYWRpbmcpIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgcmVsb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKDAsIF9yZWFjdC5zdGFydFRyYW5zaXRpb24pKCgpPT57XG4gICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmUgaXQgZXhpc3RzLCBpdCdzIGp1c3QgaGlkZGVuXG4gICAgICAgICAgICAgICAgICAgIHJvdXRlci5mYXN0UmVmcmVzaCgpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaGVyLm9uUmVmcmVzaCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5fX05FWFRfVEVTVF9NT0RFKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzZWxmLl9fTkVYVF9ITVJfQ0IpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX19ORVhUX0hNUl9DQigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fX05FWFRfSE1SX0NCID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIGNhc2UgX2hvdHJlbG9hZGVydHlwZXMuSE1SX0FDVElPTlNfU0VOVF9UT19CUk9XU0VSLlJFTE9BRF9QQUdFOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHNlbmRNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ6IFwiY2xpZW50LXJlbG9hZC1wYWdlXCIsXG4gICAgICAgICAgICAgICAgICAgIGNsaWVudElkOiBfX25leHREZXZDbGllbnRJZFxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICBpZiAocmVsb2FkaW5nKSByZXR1cm47XG4gICAgICAgICAgICAgICAgcmVsb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICBjYXNlIF9ob3RyZWxvYWRlcnR5cGVzLkhNUl9BQ1RJT05TX1NFTlRfVE9fQlJPV1NFUi5SRU1PVkVEX1BBR0U6XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgLy8gVE9ETy1BUFA6IHBvdGVudGlhbGx5IG9ubHkgcmVmcmVzaCBpZiB0aGUgY3VycmVudGx5IHZpZXdlZCBwYWdlIHdhcyByZW1vdmVkLlxuICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmUgaXQgZXhpc3RzLCBpdCdzIGp1c3QgaGlkZGVuXG4gICAgICAgICAgICAgICAgcm91dGVyLmZhc3RSZWZyZXNoKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICBjYXNlIF9ob3RyZWxvYWRlcnR5cGVzLkhNUl9BQ1RJT05TX1NFTlRfVE9fQlJPV1NFUi5BRERFRF9QQUdFOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC8vIFRPRE8tQVBQOiBwb3RlbnRpYWxseSBvbmx5IHJlZnJlc2ggaWYgdGhlIGN1cnJlbnRseSB2aWV3ZWQgcGFnZSB3YXMgYWRkZWQuXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZSBpdCBleGlzdHMsIGl0J3MganVzdCBoaWRkZW5cbiAgICAgICAgICAgICAgICByb3V0ZXIuZmFzdFJlZnJlc2goKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIGNhc2UgX2hvdHJlbG9hZGVydHlwZXMuSE1SX0FDVElPTlNfU0VOVF9UT19CUk9XU0VSLlNFUlZFUl9FUlJPUjpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGVycm9ySlNPTiB9ID0gb2JqO1xuICAgICAgICAgICAgICAgIGlmIChlcnJvckpTT04pIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBtZXNzYWdlLCBzdGFjayB9ID0gSlNPTi5wYXJzZShlcnJvckpTT04pO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgZXJyb3Iuc3RhY2sgPSBzdGFjaztcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlRXJyb3JzKFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yXG4gICAgICAgICAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIGNhc2UgX2hvdHJlbG9hZGVydHlwZXMuSE1SX0FDVElPTlNfU0VOVF9UT19CUk9XU0VSLkRFVl9QQUdFU19NQU5JRkVTVF9VUERBVEU6XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAge31cbiAgICB9XG59XG5mdW5jdGlvbiBIb3RSZWxvYWQocGFyYW0pIHtcbiAgICBsZXQgeyBhc3NldFByZWZpeCwgY2hpbGRyZW4gfSA9IHBhcmFtO1xuICAgIGNvbnN0IFtzdGF0ZSwgZGlzcGF0Y2hdID0gKDAsIF9yZWFjdC51c2VSZWR1Y2VyKShfZXJyb3JvdmVybGF5cmVkdWNlci5lcnJvck92ZXJsYXlSZWR1Y2VyLCBfZXJyb3JvdmVybGF5cmVkdWNlci5JTklUSUFMX09WRVJMQVlfU1RBVEUpO1xuICAgIGNvbnN0IGRpc3BhdGNoZXIgPSAoMCwgX3JlYWN0LnVzZU1lbW8pKCgpPT57XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvbkJ1aWxkT2sgKCkge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogX2Vycm9yb3ZlcmxheXJlZHVjZXIuQUNUSU9OX0JVSUxEX09LXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25CdWlsZEVycm9yIChtZXNzYWdlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGF0Y2goe1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiBfZXJyb3JvdmVybGF5cmVkdWNlci5BQ1RJT05fQlVJTERfRVJST1IsXG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkJlZm9yZVJlZnJlc2ggKCkge1xuICAgICAgICAgICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogX2Vycm9yb3ZlcmxheXJlZHVjZXIuQUNUSU9OX0JFRk9SRV9SRUZSRVNIXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25SZWZyZXNoICgpIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IF9lcnJvcm92ZXJsYXlyZWR1Y2VyLkFDVElPTl9SRUZSRVNIXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25WZXJzaW9uSW5mbyAodmVyc2lvbkluZm8pIHtcbiAgICAgICAgICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IF9lcnJvcm92ZXJsYXlyZWR1Y2VyLkFDVElPTl9WRVJTSU9OX0lORk8sXG4gICAgICAgICAgICAgICAgICAgIHZlcnNpb25JbmZvXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBkaXNwYXRjaFxuICAgIF0pO1xuICAgIGNvbnN0IGhhbmRsZU9uVW5oYW5kbGVkRXJyb3IgPSAoMCwgX3JlYWN0LnVzZUNhbGxiYWNrKSgoZXJyb3IpPT57XG4gICAgICAgIC8vIENvbXBvbmVudCBzdGFjayBpcyBhZGRlZCB0byB0aGUgZXJyb3IgaW4gdXNlLWVycm9yLWhhbmRsZXIgaW4gY2FzZSB0aGVyZSB3YXMgYSBoeWRyYXRpb24gZXJycm9yXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFN0YWNrID0gZXJyb3IuX2NvbXBvbmVudFN0YWNrO1xuICAgICAgICBkaXNwYXRjaCh7XG4gICAgICAgICAgICB0eXBlOiBfZXJyb3JvdmVybGF5cmVkdWNlci5BQ1RJT05fVU5IQU5ETEVEX0VSUk9SLFxuICAgICAgICAgICAgcmVhc29uOiBlcnJvcixcbiAgICAgICAgICAgIGZyYW1lczogKDAsIF9wYXJzZVN0YWNrLnBhcnNlU3RhY2spKGVycm9yLnN0YWNrKSxcbiAgICAgICAgICAgIGNvbXBvbmVudFN0YWNrRnJhbWVzOiBjb21wb25lbnRTdGFjayAmJiAoMCwgX3BhcnNlY29tcG9uZW50c3RhY2sucGFyc2VDb21wb25lbnRTdGFjaykoY29tcG9uZW50U3RhY2spXG4gICAgICAgIH0pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVPblVuaGFuZGxlZFJlamVjdGlvbiA9ICgwLCBfcmVhY3QudXNlQ2FsbGJhY2spKChyZWFzb24pPT57XG4gICAgICAgIGRpc3BhdGNoKHtcbiAgICAgICAgICAgIHR5cGU6IF9lcnJvcm92ZXJsYXlyZWR1Y2VyLkFDVElPTl9VTkhBTkRMRURfUkVKRUNUSU9OLFxuICAgICAgICAgICAgcmVhc29uOiByZWFzb24sXG4gICAgICAgICAgICBmcmFtZXM6ICgwLCBfcGFyc2VTdGFjay5wYXJzZVN0YWNrKShyZWFzb24uc3RhY2spXG4gICAgICAgIH0pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVPblJlYWN0RXJyb3IgPSAoMCwgX3JlYWN0LnVzZUNhbGxiYWNrKSgoKT0+e1xuICAgICAgICBfdXNlZXJyb3JoYW5kbGVyLlJ1bnRpbWVFcnJvckhhbmRsZXIuaGFkUnVudGltZUVycm9yID0gdHJ1ZTtcbiAgICB9LCBbXSk7XG4gICAgKDAsIF91c2VlcnJvcmhhbmRsZXIudXNlRXJyb3JIYW5kbGVyKShoYW5kbGVPblVuaGFuZGxlZEVycm9yLCBoYW5kbGVPblVuaGFuZGxlZFJlamVjdGlvbik7XG4gICAgY29uc3Qgd2ViU29ja2V0UmVmID0gKDAsIF91c2V3ZWJzb2NrZXQudXNlV2Vic29ja2V0KShhc3NldFByZWZpeCk7XG4gICAgKDAsIF91c2V3ZWJzb2NrZXQudXNlV2Vic29ja2V0UGluZykod2ViU29ja2V0UmVmKTtcbiAgICBjb25zdCBzZW5kTWVzc2FnZSA9ICgwLCBfdXNld2Vic29ja2V0LnVzZVNlbmRNZXNzYWdlKSh3ZWJTb2NrZXRSZWYpO1xuICAgIGNvbnN0IHByb2Nlc3NUdXJib3BhY2tNZXNzYWdlID0gKDAsIF91c2V3ZWJzb2NrZXQudXNlVHVyYm9wYWNrKShzZW5kTWVzc2FnZSk7XG4gICAgY29uc3Qgcm91dGVyID0gKDAsIF9uYXZpZ2F0aW9uLnVzZVJvdXRlcikoKTtcbiAgICAoMCwgX3JlYWN0LnVzZUVmZmVjdCkoKCk9PntcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChldmVudCk9PntcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgb2JqID0gSlNPTi5wYXJzZShldmVudC5kYXRhKTtcbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVkQnlUdXJib3BhY2sgPSBwcm9jZXNzVHVyYm9wYWNrTWVzc2FnZSA9PSBudWxsID8gdm9pZCAwIDogcHJvY2Vzc1R1cmJvcGFja01lc3NhZ2Uob2JqKTtcbiAgICAgICAgICAgICAgICBpZiAoIWhhbmRsZWRCeVR1cmJvcGFjaykge1xuICAgICAgICAgICAgICAgICAgICBwcm9jZXNzTWVzc2FnZShvYmosIHNlbmRNZXNzYWdlLCByb3V0ZXIsIGRpc3BhdGNoZXIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgICAgIHZhciBfZXJyX3N0YWNrO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihcIltITVJdIEludmFsaWQgbWVzc2FnZTogXCIgKyBldmVudC5kYXRhICsgXCJcXG5cIiArICgoX2Vycl9zdGFjayA9IGVyciA9PSBudWxsID8gdm9pZCAwIDogZXJyLnN0YWNrKSAhPSBudWxsID8gX2Vycl9zdGFjayA6IFwiXCIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3Qgd2Vic29ja2V0ID0gd2ViU29ja2V0UmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICh3ZWJzb2NrZXQpIHtcbiAgICAgICAgICAgIHdlYnNvY2tldC5hZGRFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLCBoYW5kbGVyKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKCk9PndlYnNvY2tldCAmJiB3ZWJzb2NrZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgaGFuZGxlcik7XG4gICAgfSwgW1xuICAgICAgICBzZW5kTWVzc2FnZSxcbiAgICAgICAgcm91dGVyLFxuICAgICAgICB3ZWJTb2NrZXRSZWYsXG4gICAgICAgIGRpc3BhdGNoZXIsXG4gICAgICAgIHByb2Nlc3NUdXJib3BhY2tNZXNzYWdlXG4gICAgXSk7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmRlZmF1bHQuY3JlYXRlRWxlbWVudChfUmVhY3REZXZPdmVybGF5LmRlZmF1bHQsIHtcbiAgICAgICAgb25SZWFjdEVycm9yOiBoYW5kbGVPblJlYWN0RXJyb3IsXG4gICAgICAgIHN0YXRlOiBzdGF0ZVxuICAgIH0sIGNoaWxkcmVuKTtcbn1cblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aG90LXJlbG9hZGVyLWNsaWVudC5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiSG90UmVsb2FkIiwiX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0IiwicmVxdWlyZSIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJfcmVhY3QiLCJfIiwiX3N0cmlwYW5zaSIsIl9mb3JtYXR3ZWJwYWNrbWVzc2FnZXMiLCJfbmF2aWdhdGlvbiIsIl9lcnJvcm92ZXJsYXlyZWR1Y2VyIiwiX3BhcnNlU3RhY2siLCJfUmVhY3REZXZPdmVybGF5IiwiX3VzZWVycm9yaGFuZGxlciIsIl91c2V3ZWJzb2NrZXQiLCJfcGFyc2Vjb21wb25lbnRzdGFjayIsIl9ob3RyZWxvYWRlcnR5cGVzIiwibW9zdFJlY2VudENvbXBpbGF0aW9uSGFzaCIsIl9fbmV4dERldkNsaWVudElkIiwiTWF0aCIsInJvdW5kIiwicmFuZG9tIiwiRGF0ZSIsIm5vdyIsInJlbG9hZGluZyIsIm9uQmVmb3JlRmFzdFJlZnJlc2giLCJkaXNwYXRjaGVyIiwiaGFzVXBkYXRlcyIsIm9uQmVmb3JlUmVmcmVzaCIsIm9uRmFzdFJlZnJlc2giLCJvbkJ1aWxkT2siLCJvblJlZnJlc2giLCJoYW5kbGVBdmFpbGFibGVIYXNoIiwiaGFzaCIsImlzVXBkYXRlQXZhaWxhYmxlIiwiX193ZWJwYWNrX2hhc2hfXyIsImNhbkFwcGx5VXBkYXRlcyIsIm1vZHVsZSIsImhvdCIsInN0YXR1cyIsImFmdGVyQXBwbHlVcGRhdGVzIiwiZm4iLCJoYW5kbGVyIiwicmVtb3ZlU3RhdHVzSGFuZGxlciIsImFkZFN0YXR1c0hhbmRsZXIiLCJwZXJmb3JtRnVsbFJlbG9hZCIsImVyciIsInNlbmRNZXNzYWdlIiwic3RhY2tUcmFjZSIsInN0YWNrIiwic3BsaXQiLCJzbGljZSIsImpvaW4iLCJtZXNzYWdlIiwiSlNPTiIsInN0cmluZ2lmeSIsImV2ZW50IiwiaGFkUnVudGltZUVycm9yIiwiUnVudGltZUVycm9ySGFuZGxlciIsIndpbmRvdyIsImxvY2F0aW9uIiwicmVsb2FkIiwidHJ5QXBwbHlVcGRhdGVzIiwib25CZWZvcmVVcGRhdGUiLCJvbkhvdFVwZGF0ZVN1Y2Nlc3MiLCJoYW5kbGVBcHBseVVwZGF0ZXMiLCJ1cGRhdGVkTW9kdWxlcyIsImNvbnNvbGUiLCJ3YXJuIiwiQm9vbGVhbiIsImxlbmd0aCIsInByb2Nlc3MiLCJlbnYiLCJfX05FWFRfVEVTVF9NT0RFIiwic2VsZiIsIl9fTkVYVF9ITVJfQ0IiLCJjaGVjayIsInRoZW4iLCJhcHBseSIsInByb2Nlc3NNZXNzYWdlIiwib2JqIiwicm91dGVyIiwiaGFuZGxlRXJyb3JzIiwiZXJyb3JzIiwiZm9ybWF0dGVkIiwiZGVmYXVsdCIsIndhcm5pbmdzIiwib25CdWlsZEVycm9yIiwiaSIsImVycm9yIiwiaGFuZGxlSG90VXBkYXRlIiwiVFVSQk9QQUNLIiwib25CZWZvcmVIb3RVcGRhdGUiLCJvblN1Y2Nlc3NmdWxIb3RVcGRhdGUiLCJhY3Rpb24iLCJITVJfQUNUSU9OU19TRU5UX1RPX0JST1dTRVIiLCJCVUlMRElORyIsImxvZyIsIkZJTklTSF9CVUlMRElORyIsIkJVSUxUIiwiU1lOQyIsIm9uVmVyc2lvbkluZm8iLCJ2ZXJzaW9uSW5mbyIsImhhc0Vycm9ycyIsImVycm9yQ291bnQiLCJjbGllbnRJZCIsImhhc1dhcm5pbmdzIiwid2FybmluZ0NvdW50IiwiaXNIb3RVcGRhdGUiLCJmb3JtYXR0ZWRNZXNzYWdlcyIsIl9fTkVYVF9EQVRBX18iLCJwYWdlIiwiU0VSVkVSX0NPTVBPTkVOVF9DSEFOR0VTIiwic3RhcnRUcmFuc2l0aW9uIiwiZmFzdFJlZnJlc2giLCJSRUxPQURfUEFHRSIsIlJFTU9WRURfUEFHRSIsIkFEREVEX1BBR0UiLCJTRVJWRVJfRVJST1IiLCJlcnJvckpTT04iLCJwYXJzZSIsIkVycm9yIiwiREVWX1BBR0VTX01BTklGRVNUX1VQREFURSIsInBhcmFtIiwiYXNzZXRQcmVmaXgiLCJjaGlsZHJlbiIsInN0YXRlIiwiZGlzcGF0Y2giLCJ1c2VSZWR1Y2VyIiwiZXJyb3JPdmVybGF5UmVkdWNlciIsIklOSVRJQUxfT1ZFUkxBWV9TVEFURSIsInVzZU1lbW8iLCJ0eXBlIiwiQUNUSU9OX0JVSUxEX09LIiwiQUNUSU9OX0JVSUxEX0VSUk9SIiwiQUNUSU9OX0JFRk9SRV9SRUZSRVNIIiwiQUNUSU9OX1JFRlJFU0giLCJBQ1RJT05fVkVSU0lPTl9JTkZPIiwiaGFuZGxlT25VbmhhbmRsZWRFcnJvciIsInVzZUNhbGxiYWNrIiwiY29tcG9uZW50U3RhY2siLCJfY29tcG9uZW50U3RhY2siLCJBQ1RJT05fVU5IQU5ETEVEX0VSUk9SIiwicmVhc29uIiwiZnJhbWVzIiwicGFyc2VTdGFjayIsImNvbXBvbmVudFN0YWNrRnJhbWVzIiwicGFyc2VDb21wb25lbnRTdGFjayIsImhhbmRsZU9uVW5oYW5kbGVkUmVqZWN0aW9uIiwiQUNUSU9OX1VOSEFORExFRF9SRUpFQ1RJT04iLCJoYW5kbGVPblJlYWN0RXJyb3IiLCJ1c2VFcnJvckhhbmRsZXIiLCJ3ZWJTb2NrZXRSZWYiLCJ1c2VXZWJzb2NrZXQiLCJ1c2VXZWJzb2NrZXRQaW5nIiwidXNlU2VuZE1lc3NhZ2UiLCJwcm9jZXNzVHVyYm9wYWNrTWVzc2FnZSIsInVzZVR1cmJvcGFjayIsInVzZVJvdXRlciIsInVzZUVmZmVjdCIsImRhdGEiLCJoYW5kbGVkQnlUdXJib3BhY2siLCJfZXJyX3N0YWNrIiwid2Vic29ja2V0IiwiY3VycmVudCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiY3JlYXRlRWxlbWVudCIsIm9uUmVhY3RFcnJvciIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/hot-reloader-client.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/ReactDevOverlay.js": /*!************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/ReactDevOverlay.js ***! \************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return _default;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _erroroverlayreducer = __webpack_require__(/*! ./error-overlay-reducer */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/error-overlay-reducer.js\");\nconst _ShadowPortal = __webpack_require__(/*! ./components/ShadowPortal */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/ShadowPortal.js\");\nconst _BuildError = __webpack_require__(/*! ./container/BuildError */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/BuildError.js\");\nconst _Errors = __webpack_require__(/*! ./container/Errors */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/Errors.js\");\nconst _RootLayoutError = __webpack_require__(/*! ./container/RootLayoutError */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/container/RootLayoutError.js\");\nconst _parseStack = __webpack_require__(/*! ./helpers/parseStack */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/parseStack.js\");\nconst _Base = __webpack_require__(/*! ./styles/Base */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/Base.js\");\nconst _ComponentStyles = __webpack_require__(/*! ./styles/ComponentStyles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/ComponentStyles.js\");\nconst _CssReset = __webpack_require__(/*! ./styles/CssReset */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/styles/CssReset.js\");\nclass ReactDevOverlay extends _react.PureComponent {\n static getDerivedStateFromError(error) {\n const e = error;\n const event = {\n type: _erroroverlayreducer.ACTION_UNHANDLED_ERROR,\n reason: error,\n frames: (0, _parseStack.parseStack)(e.stack)\n };\n const errorEvent = {\n id: 0,\n event\n };\n return {\n reactError: errorEvent\n };\n }\n componentDidCatch(componentErr) {\n this.props.onReactError(componentErr);\n }\n render() {\n const { state, children } = this.props;\n const { reactError } = this.state;\n const hasBuildError = state.buildError != null;\n const hasRuntimeErrors = Boolean(state.errors.length);\n const rootLayoutMissingTagsError = state.rootLayoutMissingTagsError;\n const isMounted = hasBuildError || hasRuntimeErrors || reactError || rootLayoutMissingTagsError;\n return /*#__PURE__*/ _react.createElement(_react.Fragment, null, reactError ? /*#__PURE__*/ _react.createElement(\"html\", null, /*#__PURE__*/ _react.createElement(\"head\", null), /*#__PURE__*/ _react.createElement(\"body\", null)) : children, isMounted ? /*#__PURE__*/ _react.createElement(_ShadowPortal.ShadowPortal, null, /*#__PURE__*/ _react.createElement(_CssReset.CssReset, null), /*#__PURE__*/ _react.createElement(_Base.Base, null), /*#__PURE__*/ _react.createElement(_ComponentStyles.ComponentStyles, null), rootLayoutMissingTagsError ? /*#__PURE__*/ _react.createElement(_RootLayoutError.RootLayoutError, {\n missingTags: rootLayoutMissingTagsError.missingTags\n }) : hasBuildError ? /*#__PURE__*/ _react.createElement(_BuildError.BuildError, {\n message: state.buildError,\n versionInfo: state.versionInfo\n }) : reactError ? /*#__PURE__*/ _react.createElement(_Errors.Errors, {\n versionInfo: state.versionInfo,\n initialDisplayState: \"fullscreen\",\n errors: [\n reactError\n ]\n }) : hasRuntimeErrors ? /*#__PURE__*/ _react.createElement(_Errors.Errors, {\n initialDisplayState: \"minimized\",\n errors: state.errors,\n versionInfo: state.versionInfo\n }) : undefined) : undefined);\n }\n constructor(...args){\n super(...args);\n this.state = {\n reactError: null\n };\n }\n}\nconst _default = ReactDevOverlay;\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=ReactDevOverlay.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL1JlYWN0RGV2T3ZlcmxheS5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMkNBQTBDO0lBQ3RDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsNEJBQTRCQyxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLDBCQUEwQkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNRyx1QkFBdUJILG1CQUFPQSxDQUFDLHFJQUF5QjtBQUM5RCxNQUFNSSxnQkFBZ0JKLG1CQUFPQSxDQUFDLHlJQUEyQjtBQUN6RCxNQUFNSyxjQUFjTCxtQkFBT0EsQ0FBQyxtSUFBd0I7QUFDcEQsTUFBTU0sVUFBVU4sbUJBQU9BLENBQUMsMkhBQW9CO0FBQzVDLE1BQU1PLG1CQUFtQlAsbUJBQU9BLENBQUMsNklBQTZCO0FBQzlELE1BQU1RLGNBQWNSLG1CQUFPQSxDQUFDLCtIQUFzQjtBQUNsRCxNQUFNUyxRQUFRVCxtQkFBT0EsQ0FBQyxpSEFBZTtBQUNyQyxNQUFNVSxtQkFBbUJWLG1CQUFPQSxDQUFDLHVJQUEwQjtBQUMzRCxNQUFNVyxZQUFZWCxtQkFBT0EsQ0FBQyx5SEFBbUI7QUFDN0MsTUFBTVksd0JBQXdCWCxPQUFPWSxhQUFhO0lBQzlDLE9BQU9DLHlCQUF5QkMsS0FBSyxFQUFFO1FBQ25DLE1BQU1DLElBQUlEO1FBQ1YsTUFBTUUsUUFBUTtZQUNWQyxNQUFNZixxQkFBcUJnQixzQkFBc0I7WUFDakRDLFFBQVFMO1lBQ1JNLFFBQVEsQ0FBQyxHQUFHYixZQUFZYyxVQUFVLEVBQUVOLEVBQUVPLEtBQUs7UUFDL0M7UUFDQSxNQUFNQyxhQUFhO1lBQ2ZDLElBQUk7WUFDSlI7UUFDSjtRQUNBLE9BQU87WUFDSFMsWUFBWUY7UUFDaEI7SUFDSjtJQUNBRyxrQkFBa0JDLFlBQVksRUFBRTtRQUM1QixJQUFJLENBQUNDLEtBQUssQ0FBQ0MsWUFBWSxDQUFDRjtJQUM1QjtJQUNBRyxTQUFTO1FBQ0wsTUFBTSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQ0osS0FBSztRQUN0QyxNQUFNLEVBQUVILFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQ00sS0FBSztRQUNqQyxNQUFNRSxnQkFBZ0JGLE1BQU1HLFVBQVUsSUFBSTtRQUMxQyxNQUFNQyxtQkFBbUJDLFFBQVFMLE1BQU1NLE1BQU0sQ0FBQ0MsTUFBTTtRQUNwRCxNQUFNQyw2QkFBNkJSLE1BQU1RLDBCQUEwQjtRQUNuRSxNQUFNQyxZQUFZUCxpQkFBaUJFLG9CQUFvQlYsY0FBY2M7UUFDckUsT0FBTyxXQUFXLEdBQUd2QyxPQUFPeUMsYUFBYSxDQUFDekMsT0FBTzBDLFFBQVEsRUFBRSxNQUFNakIsYUFBYSxXQUFXLEdBQUd6QixPQUFPeUMsYUFBYSxDQUFDLFFBQVEsTUFBTSxXQUFXLEdBQUd6QyxPQUFPeUMsYUFBYSxDQUFDLFFBQVEsT0FBTyxXQUFXLEdBQUd6QyxPQUFPeUMsYUFBYSxDQUFDLFFBQVEsU0FBU1QsVUFBVVEsWUFBWSxXQUFXLEdBQUd4QyxPQUFPeUMsYUFBYSxDQUFDdEMsY0FBY3dDLFlBQVksRUFBRSxNQUFNLFdBQVcsR0FBRzNDLE9BQU95QyxhQUFhLENBQUMvQixVQUFVa0MsUUFBUSxFQUFFLE9BQU8sV0FBVyxHQUFHNUMsT0FBT3lDLGFBQWEsQ0FBQ2pDLE1BQU1xQyxJQUFJLEVBQUUsT0FBTyxXQUFXLEdBQUc3QyxPQUFPeUMsYUFBYSxDQUFDaEMsaUJBQWlCcUMsZUFBZSxFQUFFLE9BQU9QLDZCQUE2QixXQUFXLEdBQUd2QyxPQUFPeUMsYUFBYSxDQUFDbkMsaUJBQWlCeUMsZUFBZSxFQUFFO1lBQzlsQkMsYUFBYVQsMkJBQTJCUyxXQUFXO1FBQ3ZELEtBQUtmLGdCQUFnQixXQUFXLEdBQUdqQyxPQUFPeUMsYUFBYSxDQUFDckMsWUFBWTZDLFVBQVUsRUFBRTtZQUM1RUMsU0FBU25CLE1BQU1HLFVBQVU7WUFDekJpQixhQUFhcEIsTUFBTW9CLFdBQVc7UUFDbEMsS0FBSzFCLGFBQWEsV0FBVyxHQUFHekIsT0FBT3lDLGFBQWEsQ0FBQ3BDLFFBQVErQyxNQUFNLEVBQUU7WUFDakVELGFBQWFwQixNQUFNb0IsV0FBVztZQUM5QkUscUJBQXFCO1lBQ3JCaEIsUUFBUTtnQkFDSlo7YUFDSDtRQUNMLEtBQUtVLG1CQUFtQixXQUFXLEdBQUduQyxPQUFPeUMsYUFBYSxDQUFDcEMsUUFBUStDLE1BQU0sRUFBRTtZQUN2RUMscUJBQXFCO1lBQ3JCaEIsUUFBUU4sTUFBTU0sTUFBTTtZQUNwQmMsYUFBYXBCLE1BQU1vQixXQUFXO1FBQ2xDLEtBQUtHLGFBQWFBO0lBQ3RCO0lBQ0FDLFlBQVksR0FBR0MsSUFBSSxDQUFDO1FBQ2hCLEtBQUssSUFBSUE7UUFDVCxJQUFJLENBQUN6QixLQUFLLEdBQUc7WUFDVE4sWUFBWTtRQUNoQjtJQUNKO0FBQ0o7QUFDQSxNQUFNNUIsV0FBV2M7QUFFakIsSUFBSSxDQUFDLE9BQU9sQixRQUFRZ0UsT0FBTyxLQUFLLGNBQWUsT0FBT2hFLFFBQVFnRSxPQUFPLEtBQUssWUFBWWhFLFFBQVFnRSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9oRSxRQUFRZ0UsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS25FLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUWdFLE9BQU8sRUFBRSxjQUFjO1FBQUUvRCxPQUFPO0lBQUs7SUFDbkVILE9BQU9vRSxNQUFNLENBQUNsRSxRQUFRZ0UsT0FBTyxFQUFFaEU7SUFDL0JtRSxPQUFPbkUsT0FBTyxHQUFHQSxRQUFRZ0UsT0FBTztBQUNsQyxFQUVBLDJDQUEyQyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9SZWFjdERldk92ZXJsYXkuanM/ZDJjNyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcImRlZmF1bHRcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9kZWZhdWx0O1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkXCIpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLl8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmNvbnN0IF9lcnJvcm92ZXJsYXlyZWR1Y2VyID0gcmVxdWlyZShcIi4vZXJyb3Itb3ZlcmxheS1yZWR1Y2VyXCIpO1xuY29uc3QgX1NoYWRvd1BvcnRhbCA9IHJlcXVpcmUoXCIuL2NvbXBvbmVudHMvU2hhZG93UG9ydGFsXCIpO1xuY29uc3QgX0J1aWxkRXJyb3IgPSByZXF1aXJlKFwiLi9jb250YWluZXIvQnVpbGRFcnJvclwiKTtcbmNvbnN0IF9FcnJvcnMgPSByZXF1aXJlKFwiLi9jb250YWluZXIvRXJyb3JzXCIpO1xuY29uc3QgX1Jvb3RMYXlvdXRFcnJvciA9IHJlcXVpcmUoXCIuL2NvbnRhaW5lci9Sb290TGF5b3V0RXJyb3JcIik7XG5jb25zdCBfcGFyc2VTdGFjayA9IHJlcXVpcmUoXCIuL2hlbHBlcnMvcGFyc2VTdGFja1wiKTtcbmNvbnN0IF9CYXNlID0gcmVxdWlyZShcIi4vc3R5bGVzL0Jhc2VcIik7XG5jb25zdCBfQ29tcG9uZW50U3R5bGVzID0gcmVxdWlyZShcIi4vc3R5bGVzL0NvbXBvbmVudFN0eWxlc1wiKTtcbmNvbnN0IF9Dc3NSZXNldCA9IHJlcXVpcmUoXCIuL3N0eWxlcy9Dc3NSZXNldFwiKTtcbmNsYXNzIFJlYWN0RGV2T3ZlcmxheSBleHRlbmRzIF9yZWFjdC5QdXJlQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yKGVycm9yKSB7XG4gICAgICAgIGNvbnN0IGUgPSBlcnJvcjtcbiAgICAgICAgY29uc3QgZXZlbnQgPSB7XG4gICAgICAgICAgICB0eXBlOiBfZXJyb3JvdmVybGF5cmVkdWNlci5BQ1RJT05fVU5IQU5ETEVEX0VSUk9SLFxuICAgICAgICAgICAgcmVhc29uOiBlcnJvcixcbiAgICAgICAgICAgIGZyYW1lczogKDAsIF9wYXJzZVN0YWNrLnBhcnNlU3RhY2spKGUuc3RhY2spXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGVycm9yRXZlbnQgPSB7XG4gICAgICAgICAgICBpZDogMCxcbiAgICAgICAgICAgIGV2ZW50XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICByZWFjdEVycm9yOiBlcnJvckV2ZW50XG4gICAgICAgIH07XG4gICAgfVxuICAgIGNvbXBvbmVudERpZENhdGNoKGNvbXBvbmVudEVycikge1xuICAgICAgICB0aGlzLnByb3BzLm9uUmVhY3RFcnJvcihjb21wb25lbnRFcnIpO1xuICAgIH1cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIGNvbnN0IHsgc3RhdGUsIGNoaWxkcmVuIH0gPSB0aGlzLnByb3BzO1xuICAgICAgICBjb25zdCB7IHJlYWN0RXJyb3IgfSA9IHRoaXMuc3RhdGU7XG4gICAgICAgIGNvbnN0IGhhc0J1aWxkRXJyb3IgPSBzdGF0ZS5idWlsZEVycm9yICE9IG51bGw7XG4gICAgICAgIGNvbnN0IGhhc1J1bnRpbWVFcnJvcnMgPSBCb29sZWFuKHN0YXRlLmVycm9ycy5sZW5ndGgpO1xuICAgICAgICBjb25zdCByb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvciA9IHN0YXRlLnJvb3RMYXlvdXRNaXNzaW5nVGFnc0Vycm9yO1xuICAgICAgICBjb25zdCBpc01vdW50ZWQgPSBoYXNCdWlsZEVycm9yIHx8IGhhc1J1bnRpbWVFcnJvcnMgfHwgcmVhY3RFcnJvciB8fCByb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvcjtcbiAgICAgICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoX3JlYWN0LkZyYWdtZW50LCBudWxsLCByZWFjdEVycm9yID8gLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImh0bWxcIiwgbnVsbCwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImhlYWRcIiwgbnVsbCksIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJib2R5XCIsIG51bGwpKSA6IGNoaWxkcmVuLCBpc01vdW50ZWQgPyAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KF9TaGFkb3dQb3J0YWwuU2hhZG93UG9ydGFsLCBudWxsLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KF9Dc3NSZXNldC5Dc3NSZXNldCwgbnVsbCksIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoX0Jhc2UuQmFzZSwgbnVsbCksIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoX0NvbXBvbmVudFN0eWxlcy5Db21wb25lbnRTdHlsZXMsIG51bGwpLCByb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvciA/IC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoX1Jvb3RMYXlvdXRFcnJvci5Sb290TGF5b3V0RXJyb3IsIHtcbiAgICAgICAgICAgIG1pc3NpbmdUYWdzOiByb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvci5taXNzaW5nVGFnc1xuICAgICAgICB9KSA6IGhhc0J1aWxkRXJyb3IgPyAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KF9CdWlsZEVycm9yLkJ1aWxkRXJyb3IsIHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IHN0YXRlLmJ1aWxkRXJyb3IsXG4gICAgICAgICAgICB2ZXJzaW9uSW5mbzogc3RhdGUudmVyc2lvbkluZm9cbiAgICAgICAgfSkgOiByZWFjdEVycm9yID8gLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChfRXJyb3JzLkVycm9ycywge1xuICAgICAgICAgICAgdmVyc2lvbkluZm86IHN0YXRlLnZlcnNpb25JbmZvLFxuICAgICAgICAgICAgaW5pdGlhbERpc3BsYXlTdGF0ZTogXCJmdWxsc2NyZWVuXCIsXG4gICAgICAgICAgICBlcnJvcnM6IFtcbiAgICAgICAgICAgICAgICByZWFjdEVycm9yXG4gICAgICAgICAgICBdXG4gICAgICAgIH0pIDogaGFzUnVudGltZUVycm9ycyA/IC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoX0Vycm9ycy5FcnJvcnMsIHtcbiAgICAgICAgICAgIGluaXRpYWxEaXNwbGF5U3RhdGU6IFwibWluaW1pemVkXCIsXG4gICAgICAgICAgICBlcnJvcnM6IHN0YXRlLmVycm9ycyxcbiAgICAgICAgICAgIHZlcnNpb25JbmZvOiBzdGF0ZS52ZXJzaW9uSW5mb1xuICAgICAgICB9KSA6IHVuZGVmaW5lZCkgOiB1bmRlZmluZWQpO1xuICAgIH1cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzKXtcbiAgICAgICAgc3VwZXIoLi4uYXJncyk7XG4gICAgICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICAgICAgICByZWFjdEVycm9yOiBudWxsXG4gICAgICAgIH07XG4gICAgfVxufVxuY29uc3QgX2RlZmF1bHQgPSBSZWFjdERldk92ZXJsYXk7XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPVJlYWN0RGV2T3ZlcmxheS5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX2RlZmF1bHQiLCJfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkIiwicmVxdWlyZSIsIl9yZWFjdCIsIl8iLCJfZXJyb3JvdmVybGF5cmVkdWNlciIsIl9TaGFkb3dQb3J0YWwiLCJfQnVpbGRFcnJvciIsIl9FcnJvcnMiLCJfUm9vdExheW91dEVycm9yIiwiX3BhcnNlU3RhY2siLCJfQmFzZSIsIl9Db21wb25lbnRTdHlsZXMiLCJfQ3NzUmVzZXQiLCJSZWFjdERldk92ZXJsYXkiLCJQdXJlQ29tcG9uZW50IiwiZ2V0RGVyaXZlZFN0YXRlRnJvbUVycm9yIiwiZXJyb3IiLCJlIiwiZXZlbnQiLCJ0eXBlIiwiQUNUSU9OX1VOSEFORExFRF9FUlJPUiIsInJlYXNvbiIsImZyYW1lcyIsInBhcnNlU3RhY2siLCJzdGFjayIsImVycm9yRXZlbnQiLCJpZCIsInJlYWN0RXJyb3IiLCJjb21wb25lbnREaWRDYXRjaCIsImNvbXBvbmVudEVyciIsInByb3BzIiwib25SZWFjdEVycm9yIiwicmVuZGVyIiwic3RhdGUiLCJjaGlsZHJlbiIsImhhc0J1aWxkRXJyb3IiLCJidWlsZEVycm9yIiwiaGFzUnVudGltZUVycm9ycyIsIkJvb2xlYW4iLCJlcnJvcnMiLCJsZW5ndGgiLCJyb290TGF5b3V0TWlzc2luZ1RhZ3NFcnJvciIsImlzTW91bnRlZCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsIlNoYWRvd1BvcnRhbCIsIkNzc1Jlc2V0IiwiQmFzZSIsIkNvbXBvbmVudFN0eWxlcyIsIlJvb3RMYXlvdXRFcnJvciIsIm1pc3NpbmdUYWdzIiwiQnVpbGRFcnJvciIsIm1lc3NhZ2UiLCJ2ZXJzaW9uSW5mbyIsIkVycm9ycyIsImluaXRpYWxEaXNwbGF5U3RhdGUiLCJ1bmRlZmluZWQiLCJjb25zdHJ1Y3RvciIsImFyZ3MiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/ReactDevOverlay.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js": /*!***************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js ***! \***************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"CodeFrame\", ({\n enumerable: true,\n get: function() {\n return CodeFrame;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _anser = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/anser */ \"(ssr)/./node_modules/next/dist/compiled/anser/index.js\"));\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _stripansi = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/strip-ansi */ \"(ssr)/./node_modules/next/dist/compiled/strip-ansi/index.js\"));\nconst _stackframe = __webpack_require__(/*! ../../helpers/stack-frame */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/stack-frame.js\");\nconst _useopenineditor = __webpack_require__(/*! ../../helpers/use-open-in-editor */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/use-open-in-editor.js\");\nconst CodeFrame = function CodeFrame(param) {\n let { stackFrame, codeFrame } = param;\n // Strip leading spaces out of the code frame:\n const formattedFrame = _react.useMemo(()=>{\n const lines = codeFrame.split(/\\r?\\n/g);\n const prefixLength = lines.map((line)=>/^>? +\\d+ +\\| [ ]+/.exec((0, _stripansi.default)(line)) === null ? null : /^>? +\\d+ +\\| ( *)/.exec((0, _stripansi.default)(line))).filter(Boolean).map((v)=>v.pop()).reduce((c, n)=>isNaN(c) ? n.length : Math.min(c, n.length), NaN);\n if (prefixLength > 1) {\n const p = \" \".repeat(prefixLength);\n return lines.map((line, a)=>~(a = line.indexOf(\"|\")) ? line.substring(0, a) + line.substring(a).replace(p, \"\") : line).join(\"\\n\");\n }\n return lines.join(\"\\n\");\n }, [\n codeFrame\n ]);\n const decoded = _react.useMemo(()=>{\n return _anser.default.ansiToJson(formattedFrame, {\n json: true,\n use_classes: true,\n remove_empty: true\n });\n }, [\n formattedFrame\n ]);\n const open = (0, _useopenineditor.useOpenInEditor)({\n file: stackFrame.file,\n lineNumber: stackFrame.lineNumber,\n column: stackFrame.column\n });\n // TODO: make the caret absolute\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-codeframe\": true\n }, /*#__PURE__*/ _react.createElement(\"div\", null, /*#__PURE__*/ _react.createElement(\"p\", {\n role: \"link\",\n onClick: open,\n tabIndex: 1,\n title: \"Click to open in your editor\"\n }, /*#__PURE__*/ _react.createElement(\"span\", null, (0, _stackframe.getFrameSource)(stackFrame), \" @ \", stackFrame.methodName), /*#__PURE__*/ _react.createElement(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }, /*#__PURE__*/ _react.createElement(\"path\", {\n d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\n }), /*#__PURE__*/ _react.createElement(\"polyline\", {\n points: \"15 3 21 3 21 9\"\n }), /*#__PURE__*/ _react.createElement(\"line\", {\n x1: \"10\",\n y1: \"14\",\n x2: \"21\",\n y2: \"3\"\n })))), /*#__PURE__*/ _react.createElement(\"pre\", null, decoded.map((entry, index)=>/*#__PURE__*/ _react.createElement(\"span\", {\n key: \"frame-\" + index,\n style: {\n color: entry.fg ? \"var(--color-\" + entry.fg + \")\" : undefined,\n ...entry.decoration === \"bold\" ? {\n fontWeight: 800\n } : entry.decoration === \"italic\" ? {\n fontStyle: \"italic\"\n } : undefined\n }\n }, entry.content))));\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=CodeFrame.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL0NvZGVGcmFtZS5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsNkNBQTRDO0lBQ3hDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsMkJBQTJCQyxtQkFBT0EsQ0FBQyxrSEFBeUM7QUFDbEYsTUFBTUMsNEJBQTRCRCxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUUsU0FBUyxXQUFXLEdBQUdILHlCQUF5QkksQ0FBQyxDQUFDSCxtQkFBT0EsQ0FBQyx3RkFBMEI7QUFDMUYsTUFBTUksU0FBUyxXQUFXLEdBQUdILDBCQUEwQkUsQ0FBQyxDQUFDSCxtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNSyxhQUFhLFdBQVcsR0FBR04seUJBQXlCSSxDQUFDLENBQUNILG1CQUFPQSxDQUFDLGtHQUErQjtBQUNuRyxNQUFNTSxjQUFjTixtQkFBT0EsQ0FBQyxxSUFBMkI7QUFDdkQsTUFBTU8sbUJBQW1CUCxtQkFBT0EsQ0FBQyxtSkFBa0M7QUFDbkUsTUFBTUYsWUFBWSxTQUFTQSxVQUFVVSxLQUFLO0lBQ3RDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxTQUFTLEVBQUUsR0FBR0Y7SUFDaEMsOENBQThDO0lBQzlDLE1BQU1HLGlCQUFpQlAsT0FBT1EsT0FBTyxDQUFDO1FBQ2xDLE1BQU1DLFFBQVFILFVBQVVJLEtBQUssQ0FBQztRQUM5QixNQUFNQyxlQUFlRixNQUFNRyxHQUFHLENBQUMsQ0FBQ0MsT0FBTyxvQkFBb0JDLElBQUksQ0FBQyxDQUFDLEdBQUdiLFdBQVdjLE9BQU8sRUFBRUYsV0FBVyxPQUFPLE9BQU8sb0JBQW9CQyxJQUFJLENBQUMsQ0FBQyxHQUFH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QUFPLEtBQUssWUFBWXpCLFFBQVF5QixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU96QixRQUFReUIsT0FBTyxDQUFDNkQsVUFBVSxLQUFLLGFBQWE7SUFDckt4RixPQUFPQyxjQUFjLENBQUNDLFFBQVF5QixPQUFPLEVBQUUsY0FBYztRQUFFeEIsT0FBTztJQUFLO0lBQ25FSCxPQUFPeUYsTUFBTSxDQUFDdkYsUUFBUXlCLE9BQU8sRUFBRXpCO0lBQy9Cd0YsT0FBT3hGLE9BQU8sR0FBR0EsUUFBUXlCLE9BQU87QUFDbEMsRUFFQSxxQ0FBcUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9Db2RlRnJhbWUvQ29kZUZyYW1lLmpzP2Y2MjAiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJDb2RlRnJhbWVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIENvZGVGcmFtZTtcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHRcIik7XG5jb25zdCBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRcIik7XG5jb25zdCBfYW5zZXIgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCJuZXh0L2Rpc3QvY29tcGlsZWQvYW5zZXJcIikpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLl8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmNvbnN0IF9zdHJpcGFuc2kgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdC5fKHJlcXVpcmUoXCJuZXh0L2Rpc3QvY29tcGlsZWQvc3RyaXAtYW5zaVwiKSk7XG5jb25zdCBfc3RhY2tmcmFtZSA9IHJlcXVpcmUoXCIuLi8uLi9oZWxwZXJzL3N0YWNrLWZyYW1lXCIpO1xuY29uc3QgX3VzZW9wZW5pbmVkaXRvciA9IHJlcXVpcmUoXCIuLi8uLi9oZWxwZXJzL3VzZS1vcGVuLWluLWVkaXRvclwiKTtcbmNvbnN0IENvZGVGcmFtZSA9IGZ1bmN0aW9uIENvZGVGcmFtZShwYXJhbSkge1xuICAgIGxldCB7IHN0YWNrRnJhbWUsIGNvZGVGcmFtZSB9ID0gcGFyYW07XG4gICAgLy8gU3RyaXAgbGVhZGluZyBzcGFjZXMgb3V0IG9mIHRoZSBjb2RlIGZyYW1lOlxuICAgIGNvbnN0IGZvcm1hdHRlZEZyYW1lID0gX3JlYWN0LnVzZU1lbW8oKCk9PntcbiAgICAgICAgY29uc3QgbGluZXMgPSBjb2RlRnJhbWUuc3BsaXQoL1xccj9cXG4vZyk7XG4gICAgICAgIGNvbnN0IHByZWZpeExlbmd0aCA9IGxpbmVzLm1hcCgobGluZSk9Pi9ePj8gK1xcZCsgK1xcfCBbIF0rLy5leGVjKCgwLCBfc3RyaXBhbnNpLmRlZmF1bHQpKGxpbmUpKSA9PT0gbnVsbCA/IG51bGwgOiAvXj4/ICtcXGQrICtcXHwgKCAqKS8uZXhlYygoMCwgX3N0cmlwYW5zaS5kZWZhdWx0KShsaW5lKSkpLmZpbHRlcihCb29sZWFuKS5tYXAoKHYpPT52LnBvcCgpKS5yZWR1Y2UoKGMsIG4pPT5pc05hTihjKSA/IG4ubGVuZ3RoIDogTWF0aC5taW4oYywgbi5sZW5ndGgpLCBOYU4pO1xuICAgICAgICBpZiAocHJlZml4TGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgY29uc3QgcCA9IFwiIFwiLnJlcGVhdChwcmVmaXhMZW5ndGgpO1xuICAgICAgICAgICAgcmV0dXJuIGxpbmVzLm1hcCgobGluZSwgYSk9Pn4oYSA9IGxpbmUuaW5kZXhPZihcInxcIikpID8gbGluZS5zdWJzdHJpbmcoMCwgYSkgKyBsaW5lLnN1YnN0cmluZyhhKS5yZXBsYWNlKHAsIFwiXCIpIDogbGluZSkuam9pbihcIlxcblwiKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbGluZXMuam9pbihcIlxcblwiKTtcbiAgICB9LCBbXG4gICAgICAgIGNvZGVGcmFtZVxuICAgIF0pO1xuICAgIGNvbnN0IGRlY29kZWQgPSBfcmVhY3QudXNlTWVtbygoKT0+e1xuICAgICAgICByZXR1cm4gX2Fuc2VyLmRlZmF1bHQuYW5zaVRvSnNvbihmb3JtYXR0ZWRGcmFtZSwge1xuICAgICAgICAgICAganNvbjogdHJ1ZSxcbiAgICAgICAgICAgIHVzZV9jbGFzc2VzOiB0cnVlLFxuICAgICAgICAgICAgcmVtb3ZlX2VtcHR5OiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH0sIFtcbiAgICAgICAgZm9ybWF0dGVkRnJhbWVcbiAgICBdKTtcbiAgICBjb25zdCBvcGVuID0gKDAsIF91c2VvcGVuaW5lZGl0b3IudXNlT3BlbkluRWRpdG9yKSh7XG4gICAgICAgIGZpbGU6IHN0YWNrRnJhbWUuZmlsZSxcbiAgICAgICAgbGluZU51bWJlcjogc3RhY2tGcmFtZS5saW5lTnVtYmVyLFxuICAgICAgICBjb2x1bW46IHN0YWNrRnJhbWUuY29sdW1uXG4gICAgfSk7XG4gICAgLy8gVE9ETzogbWFrZSB0aGUgY2FyZXQgYWJzb2x1dGVcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIFwiZGF0YS1uZXh0anMtY29kZWZyYW1lXCI6IHRydWVcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIG51bGwsIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJwXCIsIHtcbiAgICAgICAgcm9sZTogXCJsaW5rXCIsXG4gICAgICAgIG9uQ2xpY2s6IG9wZW4sXG4gICAgICAgIHRhYkluZGV4OiAxLFxuICAgICAgICB0aXRsZTogXCJDbGljayB0byBvcGVuIGluIHlvdXIgZWRpdG9yXCJcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwic3BhblwiLCBudWxsLCAoMCwgX3N0YWNrZnJhbWUuZ2V0RnJhbWVTb3VyY2UpKHN0YWNrRnJhbWUpLCBcIiBAIFwiLCBzdGFja0ZyYW1lLm1ldGhvZE5hbWUpLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwic3ZnXCIsIHtcbiAgICAgICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIixcbiAgICAgICAgdmlld0JveDogXCIwIDAgMjQgMjRcIixcbiAgICAgICAgZmlsbDogXCJub25lXCIsXG4gICAgICAgIHN0cm9rZTogXCJjdXJyZW50Q29sb3JcIixcbiAgICAgICAgc3Ryb2tlV2lkdGg6IFwiMlwiLFxuICAgICAgICBzdHJva2VMaW5lY2FwOiBcInJvdW5kXCIsXG4gICAgICAgIHN0cm9rZUxpbmVqb2luOiBcInJvdW5kXCJcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgICAgIGQ6IFwiTTE4IDEzdjZhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWOGEyIDIgMCAwIDEgMi0yaDZcIlxuICAgIH0pLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwicG9seWxpbmVcIiwge1xuICAgICAgICBwb2ludHM6IFwiMTUgMyAyMSAzIDIxIDlcIlxuICAgIH0pLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwibGluZVwiLCB7XG4gICAgICAgIHgxOiBcIjEwXCIsXG4gICAgICAgIHkxOiBcIjE0XCIsXG4gICAgICAgIHgyOiBcIjIxXCIsXG4gICAgICAgIHkyOiBcIjNcIlxuICAgIH0pKSkpLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwicHJlXCIsIG51bGwsIGRlY29kZWQubWFwKChlbnRyeSwgaW5kZXgpPT4vKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwic3BhblwiLCB7XG4gICAgICAgICAgICBrZXk6IFwiZnJhbWUtXCIgKyBpbmRleCxcbiAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGVudHJ5LmZnID8gXCJ2YXIoLS1jb2xvci1cIiArIGVudHJ5LmZnICsgXCIpXCIgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgLi4uZW50cnkuZGVjb3JhdGlvbiA9PT0gXCJib2xkXCIgPyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6IDgwMFxuICAgICAgICAgICAgICAgIH0gOiBlbnRyeS5kZWNvcmF0aW9uID09PSBcIml0YWxpY1wiID8ge1xuICAgICAgICAgICAgICAgICAgICBmb250U3R5bGU6IFwiaXRhbGljXCJcbiAgICAgICAgICAgICAgICB9IDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIGVudHJ5LmNvbnRlbnQpKSkpO1xufTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Q29kZUZyYW1lLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJDb2RlRnJhbWUiLCJfaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHQiLCJyZXF1aXJlIiwiX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCIsIl9hbnNlciIsIl8iLCJfcmVhY3QiLCJfc3RyaXBhbnNpIiwiX3N0YWNrZnJhbWUiLCJfdXNlb3BlbmluZWRpdG9yIiwicGFyYW0iLCJzdGFja0ZyYW1lIiwiY29kZUZyYW1lIiwiZm9ybWF0dGVkRnJhbWUiLCJ1c2VNZW1vIiwibGluZXMiLCJzcGxpdCIsInByZWZpeExlbmd0aCIsIm1hcCIsImxpbmUiLCJleGVjIiwiZGVmYXVsdCIsImZpbHRlciIsIkJvb2xlYW4iLCJ2IiwicG9wIiwicmVkdWNlIiwiYyIsIm4iLCJpc05hTiIsImxlbmd0aCIsIk1hdGgiLCJtaW4iLCJOYU4iLCJwIiwicmVwZWF0IiwiYSIsImluZGV4T2YiLCJzdWJzdHJpbmciLCJyZXBsYWNlIiwiam9pbiIsImRlY29kZWQiLCJhbnNpVG9Kc29uIiwianNvbiIsInVzZV9jbGFzc2VzIiwicmVtb3ZlX2VtcHR5Iiwib3BlbiIsInVzZU9wZW5JbkVkaXRvciIsImZpbGUiLCJsaW5lTnVtYmVyIiwiY29sdW1uIiwiY3JlYXRlRWxlbWVudCIsInJvbGUiLCJvbkNsaWNrIiwidGFiSW5kZXgiLCJ0aXRsZSIsImdldEZyYW1lU291cmNlIiwibWV0aG9kTmFtZSIsInhtbG5zIiwidmlld0JveCIsImZpbGwiLCJzdHJva2UiLCJzdHJva2VXaWR0aCIsInN0cm9rZUxpbmVjYXAiLCJzdHJva2VMaW5lam9pbiIsImQiLCJwb2ludHMiLCJ4MSIsInkxIiwieDIiLCJ5MiIsImVudHJ5IiwiaW5kZXgiLCJrZXkiLCJzdHlsZSIsImNvbG9yIiwiZmciLCJ1bmRlZmluZWQiLCJkZWNvcmF0aW9uIiwiZm9udFdlaWdodCIsImZvbnRTdHlsZSIsImNvbnRlbnQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js": /*!***********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js ***! \***********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"CodeFrame\", ({\n enumerable: true,\n get: function() {\n return _CodeFrame.CodeFrame;\n }\n}));\nconst _CodeFrame = __webpack_require__(/*! ./CodeFrame */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/CodeFrame.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGSCw2Q0FBNEM7SUFDeENJLFlBQVk7SUFDWkMsS0FBSztRQUNELE9BQU9DLFdBQVdDLFNBQVM7SUFDL0I7QUFDSixDQUFDLEVBQUM7QUFDRixNQUFNRCxhQUFhRSxtQkFBT0EsQ0FBQyxrSUFBYTtBQUV4QyxJQUFJLENBQUMsT0FBT04sUUFBUU8sT0FBTyxLQUFLLGNBQWUsT0FBT1AsUUFBUU8sT0FBTyxLQUFLLFlBQVlQLFFBQVFPLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT1AsUUFBUU8sT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS1YsT0FBT0MsY0FBYyxDQUFDQyxRQUFRTyxPQUFPLEVBQUUsY0FBYztRQUFFTixPQUFPO0lBQUs7SUFDbkVILE9BQU9XLE1BQU0sQ0FBQ1QsUUFBUU8sT0FBTyxFQUFFUDtJQUMvQlUsT0FBT1YsT0FBTyxHQUFHQSxRQUFRTyxPQUFPO0FBQ2xDLEVBRUEsaUNBQWlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vYnp6ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL2luZGV4LmpzPzcwZjgiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJDb2RlRnJhbWVcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9Db2RlRnJhbWUuQ29kZUZyYW1lO1xuICAgIH1cbn0pO1xuY29uc3QgX0NvZGVGcmFtZSA9IHJlcXVpcmUoXCIuL0NvZGVGcmFtZVwiKTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aW5kZXguanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIl9Db2RlRnJhbWUiLCJDb2RlRnJhbWUiLCJyZXF1aXJlIiwiZGVmYXVsdCIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iLCJtb2R1bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/index.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js": /*!************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js ***! \************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-codeframe] {\\n overflow: auto;\\n border-radius: var(--size-gap-half);\\n background-color: var(--color-ansi-bg);\\n color: var(--color-ansi-fg);\\n }\\n [data-nextjs-codeframe]::selection,\\n [data-nextjs-codeframe] *::selection {\\n background-color: var(--color-ansi-selection);\\n }\\n [data-nextjs-codeframe] * {\\n color: inherit;\\n background-color: transparent;\\n font-family: var(--font-stack-monospace);\\n }\\n\\n [data-nextjs-codeframe] > * {\\n margin: 0;\\n padding: calc(var(--size-gap) + var(--size-gap-half))\\n calc(var(--size-gap-double) + var(--size-gap-half));\\n }\\n [data-nextjs-codeframe] > div {\\n display: inline-block;\\n width: auto;\\n min-width: 100%;\\n border-bottom: 1px solid var(--color-ansi-bright-black);\\n }\\n [data-nextjs-codeframe] > div > p {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n cursor: pointer;\\n margin: 0;\\n }\\n [data-nextjs-codeframe] > div > p:hover {\\n text-decoration: underline dotted;\\n }\\n [data-nextjs-codeframe] div > p > svg {\\n width: auto;\\n height: 1em;\\n margin-left: 8px;\\n }\\n [data-nextjs-codeframe] div > pre {\\n overflow: hidden;\\n display: inline-block;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvQ29kZUZyYW1lL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMENBQXlDO0lBQ3JDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsaUNBQWlDQyxtQkFBT0EsQ0FBQyw4SEFBK0M7QUFDOUYsTUFBTUMsZ0JBQWdCRCxtQkFBT0EsQ0FBQyx5SUFBNkI7QUFDM0QsU0FBU0U7SUFDTCxNQUFNQyxPQUFPSiwrQkFBK0JLLENBQUMsQ0FBQztRQUMxQztLQUNIO0lBQ0RGLGtCQUFrQjtRQUNkLE9BQU9DO0lBQ1g7SUFDQSxPQUFPQTtBQUNYO0FBQ0EsTUFBTUwsU0FBUyxDQUFDLEdBQUdHLGNBQWNJLElBQUksRUFBRUg7QUFFdkMsSUFBSSxDQUFDLE9BQU9SLFFBQVFZLE9BQU8sS0FBSyxjQUFlLE9BQU9aLFFBQVFZLE9BQU8sS0FBSyxZQUFZWixRQUFRWSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9aLFFBQVFZLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktmLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUVksT0FBTyxFQUFFLGNBQWM7UUFBRVgsT0FBTztJQUFLO0lBQ25FSCxPQUFPZ0IsTUFBTSxDQUFDZCxRQUFRWSxPQUFPLEVBQUVaO0lBQy9CZSxPQUFPZixPQUFPLEdBQUdBLFFBQVFZLE9BQU87QUFDbEMsRUFFQSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9Db2RlRnJhbWUvc3R5bGVzLmpzP2RiYWIiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJzdHlsZXNcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9XG59KTtcbmNvbnN0IF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZSA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9fdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2VcIik7XG5jb25zdCBfbm9vcHRlbXBsYXRlID0gcmVxdWlyZShcIi4uLy4uL2hlbHBlcnMvbm9vcC10ZW1wbGF0ZVwiKTtcbmZ1bmN0aW9uIF90ZW1wbGF0ZU9iamVjdCgpIHtcbiAgICBjb25zdCBkYXRhID0gX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlLl8oW1xuICAgICAgICBcIlxcbiAgW2RhdGEtbmV4dGpzLWNvZGVmcmFtZV0ge1xcbiAgICBvdmVyZmxvdzogYXV0bztcXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2l6ZS1nYXAtaGFsZik7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFuc2ktYmcpO1xcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYW5zaS1mZyk7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtY29kZWZyYW1lXTo6c2VsZWN0aW9uLFxcbiAgW2RhdGEtbmV4dGpzLWNvZGVmcmFtZV0gKjo6c2VsZWN0aW9uIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYW5zaS1zZWxlY3Rpb24pO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWNvZGVmcmFtZV0gKiB7XFxuICAgIGNvbG9yOiBpbmhlcml0O1xcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc3RhY2stbW9ub3NwYWNlKTtcXG4gIH1cXG5cXG4gIFtkYXRhLW5leHRqcy1jb2RlZnJhbWVdID4gKiB7XFxuICAgIG1hcmdpbjogMDtcXG4gICAgcGFkZGluZzogY2FsYyh2YXIoLS1zaXplLWdhcCkgKyB2YXIoLS1zaXplLWdhcC1oYWxmKSlcXG4gICAgICBjYWxjKHZhcigtLXNpemUtZ2FwLWRvdWJsZSkgKyB2YXIoLS1zaXplLWdhcC1oYWxmKSk7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtY29kZWZyYW1lXSA+IGRpdiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcXG4gICAgd2lkdGg6IGF1dG87XFxuICAgIG1pbi13aWR0aDogMTAwJTtcXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWFuc2ktYnJpZ2h0LWJsYWNrKTtcXG4gIH1cXG4gIFtkYXRhLW5leHRqcy1jb2RlZnJhbWVdID4gZGl2ID4gcCB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gICAgY3Vyc29yOiBwb2ludGVyO1xcbiAgICBtYXJnaW46IDA7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtY29kZWZyYW1lXSA+IGRpdiA+IHA6aG92ZXIge1xcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtY29kZWZyYW1lXSBkaXYgPiBwID4gc3ZnIHtcXG4gICAgd2lkdGg6IGF1dG87XFxuICAgIGhlaWdodDogMWVtO1xcbiAgICBtYXJnaW4tbGVmdDogOHB4O1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWNvZGVmcmFtZV0gZGl2ID4gcHJlIHtcXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgfVxcblwiXG4gICAgXSk7XG4gICAgX3RlbXBsYXRlT2JqZWN0ID0gZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBkYXRhO1xuICAgIH07XG4gICAgcmV0dXJuIGRhdGE7XG59XG5jb25zdCBzdHlsZXMgPSAoMCwgX25vb3B0ZW1wbGF0ZS5ub29wKShfdGVtcGxhdGVPYmplY3QoKSk7XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlcy5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0Iiwic3R5bGVzIiwiX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlIiwicmVxdWlyZSIsIl9ub29wdGVtcGxhdGUiLCJfdGVtcGxhdGVPYmplY3QiLCJkYXRhIiwiXyIsIm5vb3AiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/CodeFrame/styles.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js ***! \*********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Dialog\", ({\n enumerable: true,\n get: function() {\n return Dialog;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _useonclickoutside = __webpack_require__(/*! ../../hooks/use-on-click-outside */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/hooks/use-on-click-outside.js\");\nconst Dialog = function Dialog(param) {\n let { children, type, onClose, ...props } = param;\n const [dialog, setDialog] = _react.useState(null);\n const [role, setRole] = _react.useState(typeof document !== \"undefined\" && document.hasFocus() ? \"dialog\" : undefined);\n const onDialog = _react.useCallback((node)=>{\n setDialog(node);\n }, []);\n (0, _useonclickoutside.useOnClickOutside)(dialog, onClose);\n // Make HTMLElements with `role=link` accessible to be triggered by the\n // keyboard, i.e. [Enter].\n _react.useEffect(()=>{\n if (dialog == null) {\n return;\n }\n const root = dialog.getRootNode();\n // Always true, but we do this for TypeScript:\n if (!(root instanceof ShadowRoot)) {\n return;\n }\n const shadowRoot = root;\n function handler(e) {\n const el = shadowRoot.activeElement;\n if (e.key === \"Enter\" && el instanceof HTMLElement && el.getAttribute(\"role\") === \"link\") {\n e.preventDefault();\n e.stopPropagation();\n el.click();\n }\n }\n function handleFocus() {\n // safari will force itself as the active application when a background page triggers any sort of autofocus\n // this is a workaround to only set the dialog role if the document has focus\n setRole(document.hasFocus() ? \"dialog\" : undefined);\n }\n shadowRoot.addEventListener(\"keydown\", handler);\n window.addEventListener(\"focus\", handleFocus);\n window.addEventListener(\"blur\", handleFocus);\n return ()=>{\n shadowRoot.removeEventListener(\"keydown\", handler);\n window.removeEventListener(\"focus\", handleFocus);\n window.removeEventListener(\"blur\", handleFocus);\n };\n }, [\n dialog\n ]);\n return /*#__PURE__*/ _react.createElement(\"div\", {\n ref: onDialog,\n \"data-nextjs-dialog\": true,\n tabIndex: -1,\n role: role,\n \"aria-labelledby\": props[\"aria-labelledby\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-modal\": \"true\"\n }, /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-banner\": true,\n className: \"banner-\" + type\n }), children);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=Dialog.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMENBQXlDO0lBQ3JDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsNEJBQTRCQyxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLDBCQUEwQkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNRyxxQkFBcUJILG1CQUFPQSxDQUFDLG1KQUFrQztBQUNyRSxNQUFNRixTQUFTLFNBQVNBLE9BQU9NLEtBQUs7SUFDaEMsSUFBSSxFQUFFQyxRQUFRLEVBQUVDLElBQUksRUFBRUMsT0FBTyxFQUFFLEdBQUdDLE9BQU8sR0FBR0o7SUFDNUMsTUFBTSxDQUFDSyxRQUFRQyxVQUFVLEdBQUdULE9BQU9VLFFBQVEsQ0FBQztJQUM1QyxNQUFNLENBQUNDLE1BQU1DLFFBQVEsR0FBR1osT0FBT1UsUUFBUSxDQUFDLE9BQU9HLGFBQWEsZUFBZUEsU0FBU0MsUUFBUSxLQUFLLFdBQVdDO0lBQzVHLE1BQU1DLFdBQVdoQixPQUFPaUIsV0FBVyxDQUFDLENBQUNDO1FBQ2pDVCxVQUFVUztJQUNkLEdBQUcsRUFBRTtJQUNKLElBQUdoQixtQkFBbUJpQixpQkFBaUIsRUFBRVgsUUFBUUY7SUFDbEQsdUVBQXVFO0lBQ3ZFLDBCQUEwQjtJQUMxQk4sT0FBT29CLFNBQVMsQ0FBQztRQUNiLElBQUlaLFVBQVUsTUFBTTtZQUNoQjtRQUNKO1FBQ0EsTUFBTWEsT0FBT2IsT0FBT2MsV0FBVztRQUMvQiw4Q0FBOEM7UUFDOUMsSUFBSSxDQUFFRCxDQUFBQSxnQkFBZ0JFLFVBQVMsR0FBSTtZQUMvQjtRQUNKO1FBQ0EsTUFBTUMsYUFBYUg7UUFDbkIsU0FBU0ksUUFBUUMsQ0FBQztZQUNkLE1BQU1DLEtBQUtILFdBQVdJLGFBQWE7WUFDbkMsSUFBSUYsRUFBRUcsR0FBRyxLQUFLLFdBQVdGLGNBQWNHLGVBQWVILEdBQUdJLFlBQVksQ0FBQyxZQUFZLFFBQVE7Z0JBQ3RGTCxFQUFFTSxjQUFjO2dCQUNoQk4sRUFBRU8sZUFBZTtnQkFDakJOLEdBQUdPLEtBQUs7WUFDWjtRQUNKO1FBQ0EsU0FBU0M7WUFDTCwyR0FBMkc7WUFDM0csNkVBQTZFO1lBQzdFdkIsUUFBUUMsU0FBU0MsUUFBUSxLQUFLLFdBQVdDO1FBQzdDO1FBQ0FTLFdBQVdZLGdCQUFnQixDQUFDLFdBQVdYO1FBQ3ZDWSxPQUFPRCxnQkFBZ0IsQ0FBQyxTQUFTRDtRQUNqQ0UsT0FBT0QsZ0JBQWdCLENBQUMsUUFBUUQ7UUFDaEMsT0FBTztZQUNIWCxXQUFXYyxtQkFBbUIsQ0FBQyxXQUFXYjtZQUMxQ1ksT0FBT0MsbUJBQW1CLENBQUMsU0FBU0g7WUFDcENFLE9BQU9DLG1CQUFtQixDQUFDLFFBQVFIO1FBQ3ZDO0lBQ0osR0FBRztRQUNDM0I7S0FDSDtJQUNELE9BQU8sV0FBVyxHQUFHUixPQUFPdUMsYUFBYSxDQUFDLE9BQU87UUFDN0NDLEtBQUt4QjtRQUNMLHNCQUFzQjtRQUN0QnlCLFVBQVUsQ0FBQztRQUNYOUIsTUFBTUE7UUFDTixtQkFBbUJKLEtBQUssQ0FBQyxrQkFBa0I7UUFDM0Msb0JBQW9CQSxLQUFLLENBQUMsbUJBQW1CO1FBQzdDLGNBQWM7SUFDbEIsR0FBRyxXQUFXLEdBQUdQLE9BQU91QyxhQUFhLENBQUMsT0FBTztRQUN6Qyw2QkFBNkI7UUFDN0JHLFdBQVcsWUFBWXJDO0lBQzNCLElBQUlEO0FBQ1I7QUFFQSxJQUFJLENBQUMsT0FBT1gsUUFBUWtELE9BQU8sS0FBSyxjQUFlLE9BQU9sRCxRQUFRa0QsT0FBTyxLQUFLLFlBQVlsRCxRQUFRa0QsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPbEQsUUFBUWtELE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktyRCxPQUFPQyxjQUFjLENBQUNDLFFBQVFrRCxPQUFPLEVBQUUsY0FBYztRQUFFakQsT0FBTztJQUFLO0lBQ25FSCxPQUFPc0QsTUFBTSxDQUFDcEQsUUFBUWtELE9BQU8sRUFBRWxEO0lBQy9CcUQsT0FBT3JELE9BQU8sR0FBR0EsUUFBUWtELE9BQU87QUFDbEMsRUFFQSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvRGlhbG9nLmpzP2ZkOTMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJEaWFsb2dcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIERpYWxvZztcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQgPSByZXF1aXJlKFwiQHN3Yy9oZWxwZXJzL18vX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZFwiKTtcbmNvbnN0IF9yZWFjdCA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZC5fKHJlcXVpcmUoXCJyZWFjdFwiKSk7XG5jb25zdCBfdXNlb25jbGlja291dHNpZGUgPSByZXF1aXJlKFwiLi4vLi4vaG9va3MvdXNlLW9uLWNsaWNrLW91dHNpZGVcIik7XG5jb25zdCBEaWFsb2cgPSBmdW5jdGlvbiBEaWFsb2cocGFyYW0pIHtcbiAgICBsZXQgeyBjaGlsZHJlbiwgdHlwZSwgb25DbG9zZSwgLi4ucHJvcHMgfSA9IHBhcmFtO1xuICAgIGNvbnN0IFtkaWFsb2csIHNldERpYWxvZ10gPSBfcmVhY3QudXNlU3RhdGUobnVsbCk7XG4gICAgY29uc3QgW3JvbGUsIHNldFJvbGVdID0gX3JlYWN0LnVzZVN0YXRlKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJ1bmRlZmluZWRcIiAmJiBkb2N1bWVudC5oYXNGb2N1cygpID8gXCJkaWFsb2dcIiA6IHVuZGVmaW5lZCk7XG4gICAgY29uc3Qgb25EaWFsb2cgPSBfcmVhY3QudXNlQ2FsbGJhY2soKG5vZGUpPT57XG4gICAgICAgIHNldERpYWxvZyhub2RlKTtcbiAgICB9LCBbXSk7XG4gICAgKDAsIF91c2VvbmNsaWNrb3V0c2lkZS51c2VPbkNsaWNrT3V0c2lkZSkoZGlhbG9nLCBvbkNsb3NlKTtcbiAgICAvLyBNYWtlIEhUTUxFbGVtZW50cyB3aXRoIGByb2xlPWxpbmtgIGFjY2Vzc2libGUgdG8gYmUgdHJpZ2dlcmVkIGJ5IHRoZVxuICAgIC8vIGtleWJvYXJkLCBpLmUuIFtFbnRlcl0uXG4gICAgX3JlYWN0LnVzZUVmZmVjdCgoKT0+e1xuICAgICAgICBpZiAoZGlhbG9nID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByb290ID0gZGlhbG9nLmdldFJvb3ROb2RlKCk7XG4gICAgICAgIC8vIEFsd2F5cyB0cnVlLCBidXQgd2UgZG8gdGhpcyBmb3IgVHlwZVNjcmlwdDpcbiAgICAgICAgaWYgKCEocm9vdCBpbnN0YW5jZW9mIFNoYWRvd1Jvb3QpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2hhZG93Um9vdCA9IHJvb3Q7XG4gICAgICAgIGZ1bmN0aW9uIGhhbmRsZXIoZSkge1xuICAgICAgICAgICAgY29uc3QgZWwgPSBzaGFkb3dSb290LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAoZS5rZXkgPT09IFwiRW50ZXJcIiAmJiBlbCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmIGVsLmdldEF0dHJpYnV0ZShcInJvbGVcIikgPT09IFwibGlua1wiKSB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgZWwuY2xpY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmdW5jdGlvbiBoYW5kbGVGb2N1cygpIHtcbiAgICAgICAgICAgIC8vIHNhZmFyaSB3aWxsIGZvcmNlIGl0c2VsZiBhcyB0aGUgYWN0aXZlIGFwcGxpY2F0aW9uIHdoZW4gYSBiYWNrZ3JvdW5kIHBhZ2UgdHJpZ2dlcnMgYW55IHNvcnQgb2YgYXV0b2ZvY3VzXG4gICAgICAgICAgICAvLyB0aGlzIGlzIGEgd29ya2Fyb3VuZCB0byBvbmx5IHNldCB0aGUgZGlhbG9nIHJvbGUgaWYgdGhlIGRvY3VtZW50IGhhcyBmb2N1c1xuICAgICAgICAgICAgc2V0Um9sZShkb2N1bWVudC5oYXNGb2N1cygpID8gXCJkaWFsb2dcIiA6IHVuZGVmaW5lZCk7XG4gICAgICAgIH1cbiAgICAgICAgc2hhZG93Um9vdC5hZGRFdmVudExpc3RlbmVyKFwia2V5ZG93blwiLCBoYW5kbGVyKTtcbiAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJmb2N1c1wiLCBoYW5kbGVGb2N1cyk7XG4gICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwiYmx1clwiLCBoYW5kbGVGb2N1cyk7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgc2hhZG93Um9vdC5yZW1vdmVFdmVudExpc3RlbmVyKFwia2V5ZG93blwiLCBoYW5kbGVyKTtcbiAgICAgICAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwiZm9jdXNcIiwgaGFuZGxlRm9jdXMpO1xuICAgICAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJibHVyXCIsIGhhbmRsZUZvY3VzKTtcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIGRpYWxvZ1xuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgcmVmOiBvbkRpYWxvZyxcbiAgICAgICAgXCJkYXRhLW5leHRqcy1kaWFsb2dcIjogdHJ1ZSxcbiAgICAgICAgdGFiSW5kZXg6IC0xLFxuICAgICAgICByb2xlOiByb2xlLFxuICAgICAgICBcImFyaWEtbGFiZWxsZWRieVwiOiBwcm9wc1tcImFyaWEtbGFiZWxsZWRieVwiXSxcbiAgICAgICAgXCJhcmlhLWRlc2NyaWJlZGJ5XCI6IHByb3BzW1wiYXJpYS1kZXNjcmliZWRieVwiXSxcbiAgICAgICAgXCJhcmlhLW1vZGFsXCI6IFwidHJ1ZVwiXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIFwiZGF0YS1uZXh0anMtZGlhbG9nLWJhbm5lclwiOiB0cnVlLFxuICAgICAgICBjbGFzc05hbWU6IFwiYmFubmVyLVwiICsgdHlwZVxuICAgIH0pLCBjaGlsZHJlbik7XG59O1xuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1EaWFsb2cuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIkRpYWxvZyIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsIl91c2VvbmNsaWNrb3V0c2lkZSIsInBhcmFtIiwiY2hpbGRyZW4iLCJ0eXBlIiwib25DbG9zZSIsInByb3BzIiwiZGlhbG9nIiwic2V0RGlhbG9nIiwidXNlU3RhdGUiLCJyb2xlIiwic2V0Um9sZSIsImRvY3VtZW50IiwiaGFzRm9jdXMiLCJ1bmRlZmluZWQiLCJvbkRpYWxvZyIsInVzZUNhbGxiYWNrIiwibm9kZSIsInVzZU9uQ2xpY2tPdXRzaWRlIiwidXNlRWZmZWN0Iiwicm9vdCIsImdldFJvb3ROb2RlIiwiU2hhZG93Um9vdCIsInNoYWRvd1Jvb3QiLCJoYW5kbGVyIiwiZSIsImVsIiwiYWN0aXZlRWxlbWVudCIsImtleSIsIkhUTUxFbGVtZW50IiwiZ2V0QXR0cmlidXRlIiwicHJldmVudERlZmF1bHQiLCJzdG9wUHJvcGFnYXRpb24iLCJjbGljayIsImhhbmRsZUZvY3VzIiwiYWRkRXZlbnRMaXN0ZW5lciIsIndpbmRvdyIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjcmVhdGVFbGVtZW50IiwicmVmIiwidGFiSW5kZXgiLCJjbGFzc05hbWUiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiIsIm1vZHVsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js": /*!*************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js ***! \*************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogBody\", ({\n enumerable: true,\n get: function() {\n return DialogBody;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogBody = function DialogBody(param) {\n let { children, className } = param;\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-body\": true,\n className: className\n }, children);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogBody.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0JvZHkuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0ZILDhDQUE2QztJQUN6Q0ksWUFBWTtJQUNaQyxLQUFLO1FBQ0QsT0FBT0M7SUFDWDtBQUNKLENBQUMsRUFBQztBQUNGLE1BQU1DLDRCQUE0QkMsbUJBQU9BLENBQUMsb0hBQTBDO0FBQ3BGLE1BQU1DLFNBQVMsV0FBVyxHQUFHRiwwQkFBMEJHLENBQUMsQ0FBQ0YsbUJBQU9BLENBQUMsd0dBQU87QUFDeEUsTUFBTUYsYUFBYSxTQUFTQSxXQUFXSyxLQUFLO0lBQ3hDLElBQUksRUFBRUMsUUFBUSxFQUFFQyxTQUFTLEVBQUUsR0FBR0Y7SUFDOUIsT0FBTyxXQUFXLEdBQUdGLE9BQU9LLGFBQWEsQ0FBQyxPQUFPO1FBQzdDLDJCQUEyQjtRQUMzQkQsV0FBV0E7SUFDZixHQUFHRDtBQUNQO0FBRUEsSUFBSSxDQUFDLE9BQU9WLFFBQVFhLE9BQU8sS0FBSyxjQUFlLE9BQU9iLFFBQVFhLE9BQU8sS0FBSyxZQUFZYixRQUFRYSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9iLFFBQVFhLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktoQixPQUFPQyxjQUFjLENBQUNDLFFBQVFhLE9BQU8sRUFBRSxjQUFjO1FBQUVaLE9BQU87SUFBSztJQUNuRUgsT0FBT2lCLE1BQU0sQ0FBQ2YsUUFBUWEsT0FBTyxFQUFFYjtJQUMvQmdCLE9BQU9oQixPQUFPLEdBQUdBLFFBQVFhLE9BQU87QUFDbEMsRUFFQSxzQ0FBc0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvRGlhbG9nQm9keS5qcz9hMTBhIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiRGlhbG9nQm9keVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gRGlhbG9nQm9keTtcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQgPSByZXF1aXJlKFwiQHN3Yy9oZWxwZXJzL18vX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZFwiKTtcbmNvbnN0IF9yZWFjdCA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZC5fKHJlcXVpcmUoXCJyZWFjdFwiKSk7XG5jb25zdCBEaWFsb2dCb2R5ID0gZnVuY3Rpb24gRGlhbG9nQm9keShwYXJhbSkge1xuICAgIGxldCB7IGNoaWxkcmVuLCBjbGFzc05hbWUgfSA9IHBhcmFtO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgXCJkYXRhLW5leHRqcy1kaWFsb2ctYm9keVwiOiB0cnVlLFxuICAgICAgICBjbGFzc05hbWU6IGNsYXNzTmFtZVxuICAgIH0sIGNoaWxkcmVuKTtcbn07XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPURpYWxvZ0JvZHkuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIkRpYWxvZ0JvZHkiLCJfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkIiwicmVxdWlyZSIsIl9yZWFjdCIsIl8iLCJwYXJhbSIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwiY3JlYXRlRWxlbWVudCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js": /*!****************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js ***! \****************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogContent\", ({\n enumerable: true,\n get: function() {\n return DialogContent;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogContent = function DialogContent(param) {\n let { children, className } = param;\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-content\": true,\n className: className\n }, children);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogContent.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0NvbnRlbnQuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYkEsOENBQTZDO0lBQ3pDRyxPQUFPO0FBQ1gsQ0FBQyxFQUFDO0FBQ0ZILGlEQUFnRDtJQUM1Q0ksWUFBWTtJQUNaQyxLQUFLO1FBQ0QsT0FBT0M7SUFDWDtBQUNKLENBQUMsRUFBQztBQUNGLE1BQU1DLDRCQUE0QkMsbUJBQU9BLENBQUMsb0hBQTBDO0FBQ3BGLE1BQU1DLFNBQVMsV0FBVyxHQUFHRiwwQkFBMEJHLENBQUMsQ0FBQ0YsbUJBQU9BLENBQUMsd0dBQU87QUFDeEUsTUFBTUYsZ0JBQWdCLFNBQVNBLGNBQWNLLEtBQUs7SUFDOUMsSUFBSSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRSxHQUFHRjtJQUM5QixPQUFPLFdBQVcsR0FBR0YsT0FBT0ssYUFBYSxDQUFDLE9BQU87UUFDN0MsOEJBQThCO1FBQzlCRCxXQUFXQTtJQUNmLEdBQUdEO0FBQ1A7QUFFQSxJQUFJLENBQUMsT0FBT1YsUUFBUWEsT0FBTyxLQUFLLGNBQWUsT0FBT2IsUUFBUWEsT0FBTyxLQUFLLFlBQVliLFFBQVFhLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT2IsUUFBUWEsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS2hCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUWEsT0FBTyxFQUFFLGNBQWM7UUFBRVosT0FBTztJQUFLO0lBQ25FSCxPQUFPaUIsTUFBTSxDQUFDZixRQUFRYSxPQUFPLEVBQUViO0lBQy9CZ0IsT0FBT2hCLE9BQU8sR0FBR0EsUUFBUWEsT0FBTztBQUNsQyxFQUVBLHlDQUF5QyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0RpYWxvZy9EaWFsb2dDb250ZW50LmpzPzk1MzYiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJEaWFsb2dDb250ZW50XCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBEaWFsb2dDb250ZW50O1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkXCIpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLl8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmNvbnN0IERpYWxvZ0NvbnRlbnQgPSBmdW5jdGlvbiBEaWFsb2dDb250ZW50KHBhcmFtKSB7XG4gICAgbGV0IHsgY2hpbGRyZW4sIGNsYXNzTmFtZSB9ID0gcGFyYW07XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwge1xuICAgICAgICBcImRhdGEtbmV4dGpzLWRpYWxvZy1jb250ZW50XCI6IHRydWUsXG4gICAgICAgIGNsYXNzTmFtZTogY2xhc3NOYW1lXG4gICAgfSwgY2hpbGRyZW4pO1xufTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9RGlhbG9nQ29udGVudC5qcy5tYXAiXSwibmFtZXMiOlsiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJleHBvcnRzIiwidmFsdWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiRGlhbG9nQ29udGVudCIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsInBhcmFtIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJjcmVhdGVFbGVtZW50IiwiZGVmYXVsdCIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iLCJtb2R1bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js": /*!***************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js ***! \***************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"DialogHeader\", ({\n enumerable: true,\n get: function() {\n return DialogHeader;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst DialogHeader = function DialogHeader(param) {\n let { children, className } = param;\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-header\": true,\n className: className\n }, children);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=DialogHeader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZ0hlYWRlci5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsZ0RBQStDO0lBQzNDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsNEJBQTRCQyxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLDBCQUEwQkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNRixlQUFlLFNBQVNBLGFBQWFLLEtBQUs7SUFDNUMsSUFBSSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRSxHQUFHRjtJQUM5QixPQUFPLFdBQVcsR0FBR0YsT0FBT0ssYUFBYSxDQUFDLE9BQU87UUFDN0MsNkJBQTZCO1FBQzdCRCxXQUFXQTtJQUNmLEdBQUdEO0FBQ1A7QUFFQSxJQUFJLENBQUMsT0FBT1YsUUFBUWEsT0FBTyxLQUFLLGNBQWUsT0FBT2IsUUFBUWEsT0FBTyxLQUFLLFlBQVliLFFBQVFhLE9BQU8sS0FBSyxJQUFJLEtBQU0sT0FBT2IsUUFBUWEsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS2hCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUWEsT0FBTyxFQUFFLGNBQWM7UUFBRVosT0FBTztJQUFLO0lBQ25FSCxPQUFPaUIsTUFBTSxDQUFDZixRQUFRYSxPQUFPLEVBQUViO0lBQy9CZ0IsT0FBT2hCLE9BQU8sR0FBR0EsUUFBUWEsT0FBTztBQUNsQyxFQUVBLHdDQUF3QyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL0RpYWxvZy9EaWFsb2dIZWFkZXIuanM/ZmJlZiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIkRpYWxvZ0hlYWRlclwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gRGlhbG9nSGVhZGVyO1xuICAgIH1cbn0pO1xuY29uc3QgX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkXCIpO1xuY29uc3QgX3JlYWN0ID0gLyojX19QVVJFX18qLyBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkLl8ocmVxdWlyZShcInJlYWN0XCIpKTtcbmNvbnN0IERpYWxvZ0hlYWRlciA9IGZ1bmN0aW9uIERpYWxvZ0hlYWRlcihwYXJhbSkge1xuICAgIGxldCB7IGNoaWxkcmVuLCBjbGFzc05hbWUgfSA9IHBhcmFtO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgXCJkYXRhLW5leHRqcy1kaWFsb2ctaGVhZGVyXCI6IHRydWUsXG4gICAgICAgIGNsYXNzTmFtZTogY2xhc3NOYW1lXG4gICAgfSwgY2hpbGRyZW4pO1xufTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9RGlhbG9nSGVhZGVyLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJEaWFsb2dIZWFkZXIiLCJfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkIiwicmVxdWlyZSIsIl9yZWFjdCIsIl8iLCJwYXJhbSIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwiY3JlYXRlRWxlbWVudCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js": /*!********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js ***! \********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n Dialog: function() {\n return _Dialog.Dialog;\n },\n DialogBody: function() {\n return _DialogBody.DialogBody;\n },\n DialogContent: function() {\n return _DialogContent.DialogContent;\n },\n DialogHeader: function() {\n return _DialogHeader.DialogHeader;\n },\n styles: function() {\n return _styles.styles;\n }\n});\nconst _Dialog = __webpack_require__(/*! ./Dialog */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/Dialog.js\");\nconst _DialogBody = __webpack_require__(/*! ./DialogBody */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogBody.js\");\nconst _DialogContent = __webpack_require__(/*! ./DialogContent */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogContent.js\");\nconst _DialogHeader = __webpack_require__(/*! ./DialogHeader */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/DialogHeader.js\");\nconst _styles = __webpack_require__(/*! ./styles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGLEtBQU1DLENBQUFBLENBTU47QUFDQSxTQUFTTSxRQUFRQyxNQUFNLEVBQUVDLEdBQUc7SUFDeEIsSUFBSSxJQUFJQyxRQUFRRCxJQUFJWixPQUFPQyxjQUFjLENBQUNVLFFBQVFFLE1BQU07UUFDcERDLFlBQVk7UUFDWkMsS0FBS0gsR0FBRyxDQUFDQyxLQUFLO0lBQ2xCO0FBQ0o7QUFDQUgsUUFBUVIsU0FBUztJQUNiRyxRQUFRO1FBQ0osT0FBT1csUUFBUVgsTUFBTTtJQUN6QjtJQUNBQyxZQUFZO1FBQ1IsT0FBT1csWUFBWVgsVUFBVTtJQUNqQztJQUNBQyxlQUFlO1FBQ1gsT0FBT1csZUFBZVgsYUFBYTtJQUN2QztJQUNBQyxjQUFjO1FBQ1YsT0FBT1csY0FBY1gsWUFBWTtJQUNyQztJQUNBQyxRQUFRO1FBQ0osT0FBT1csUUFBUVgsTUFBTTtJQUN6QjtBQUNKO0FBQ0EsTUFBTU8sVUFBVUssbUJBQU9BLENBQUMseUhBQVU7QUFDbEMsTUFBTUosY0FBY0ksbUJBQU9BLENBQUMsaUlBQWM7QUFDMUMsTUFBTUgsaUJBQWlCRyxtQkFBT0EsQ0FBQyx1SUFBaUI7QUFDaEQsTUFBTUYsZ0JBQWdCRSxtQkFBT0EsQ0FBQyxxSUFBZ0I7QUFDOUMsTUFBTUQsVUFBVUMsbUJBQU9BLENBQUMseUhBQVU7QUFFbEMsSUFBSSxDQUFDLE9BQU9uQixRQUFRb0IsT0FBTyxLQUFLLGNBQWUsT0FBT3BCLFFBQVFvQixPQUFPLEtBQUssWUFBWXBCLFFBQVFvQixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9wQixRQUFRb0IsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNyS3ZCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUW9CLE9BQU8sRUFBRSxjQUFjO1FBQUVuQixPQUFPO0lBQUs7SUFDbkVILE9BQU93QixNQUFNLENBQUN0QixRQUFRb0IsT0FBTyxFQUFFcEI7SUFDL0JFLE9BQU9GLE9BQU8sR0FBR0EsUUFBUW9CLE9BQU87QUFDbEMsRUFFQSxpQ0FBaUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvaW5kZXguanM/MjM5MyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbjAgJiYgKG1vZHVsZS5leHBvcnRzID0ge1xuICAgIERpYWxvZzogbnVsbCxcbiAgICBEaWFsb2dCb2R5OiBudWxsLFxuICAgIERpYWxvZ0NvbnRlbnQ6IG51bGwsXG4gICAgRGlhbG9nSGVhZGVyOiBudWxsLFxuICAgIHN0eWxlczogbnVsbFxufSk7XG5mdW5jdGlvbiBfZXhwb3J0KHRhcmdldCwgYWxsKSB7XG4gICAgZm9yKHZhciBuYW1lIGluIGFsbClPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBuYW1lLCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGdldDogYWxsW25hbWVdXG4gICAgfSk7XG59XG5fZXhwb3J0KGV4cG9ydHMsIHtcbiAgICBEaWFsb2c6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX0RpYWxvZy5EaWFsb2c7XG4gICAgfSxcbiAgICBEaWFsb2dCb2R5OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9EaWFsb2dCb2R5LkRpYWxvZ0JvZHk7XG4gICAgfSxcbiAgICBEaWFsb2dDb250ZW50OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9EaWFsb2dDb250ZW50LkRpYWxvZ0NvbnRlbnQ7XG4gICAgfSxcbiAgICBEaWFsb2dIZWFkZXI6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX0RpYWxvZ0hlYWRlci5EaWFsb2dIZWFkZXI7XG4gICAgfSxcbiAgICBzdHlsZXM6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gX3N0eWxlcy5zdHlsZXM7XG4gICAgfVxufSk7XG5jb25zdCBfRGlhbG9nID0gcmVxdWlyZShcIi4vRGlhbG9nXCIpO1xuY29uc3QgX0RpYWxvZ0JvZHkgPSByZXF1aXJlKFwiLi9EaWFsb2dCb2R5XCIpO1xuY29uc3QgX0RpYWxvZ0NvbnRlbnQgPSByZXF1aXJlKFwiLi9EaWFsb2dDb250ZW50XCIpO1xuY29uc3QgX0RpYWxvZ0hlYWRlciA9IHJlcXVpcmUoXCIuL0RpYWxvZ0hlYWRlclwiKTtcbmNvbnN0IF9zdHlsZXMgPSByZXF1aXJlKFwiLi9zdHlsZXNcIik7XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsIm1vZHVsZSIsIkRpYWxvZyIsIkRpYWxvZ0JvZHkiLCJEaWFsb2dDb250ZW50IiwiRGlhbG9nSGVhZGVyIiwic3R5bGVzIiwiX2V4cG9ydCIsInRhcmdldCIsImFsbCIsIm5hbWUiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX0RpYWxvZyIsIl9EaWFsb2dCb2R5IiwiX0RpYWxvZ0NvbnRlbnQiLCJfRGlhbG9nSGVhZGVyIiwiX3N0eWxlcyIsInJlcXVpcmUiLCJkZWZhdWx0IiwiX19lc01vZHVsZSIsImFzc2lnbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/index.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js ***! \*********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-dialog] {\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n margin-right: auto;\\n margin-left: auto;\\n outline: none;\\n background: white;\\n border-radius: var(--size-gap);\\n box-shadow: 0 var(--size-gap-half) var(--size-gap-double)\\n rgba(0, 0, 0, 0.25);\\n max-height: calc(100% - 56px);\\n overflow-y: hidden;\\n }\\n\\n @media (max-height: 812px) {\\n [data-nextjs-dialog-overlay] {\\n max-height: calc(100% - 15px);\\n }\\n }\\n\\n @media (min-width: 576px) {\\n [data-nextjs-dialog] {\\n max-width: 540px;\\n box-shadow: 0 var(--size-gap) var(--size-gap-quad) rgba(0, 0, 0, 0.25);\\n }\\n }\\n\\n @media (min-width: 768px) {\\n [data-nextjs-dialog] {\\n max-width: 720px;\\n }\\n }\\n\\n @media (min-width: 992px) {\\n [data-nextjs-dialog] {\\n max-width: 960px;\\n }\\n }\\n\\n [data-nextjs-dialog-banner] {\\n position: relative;\\n }\\n [data-nextjs-dialog-banner].banner-warning {\\n border-color: var(--color-ansi-yellow);\\n }\\n [data-nextjs-dialog-banner].banner-error {\\n border-color: var(--color-ansi-red);\\n }\\n\\n [data-nextjs-dialog-banner]::after {\\n z-index: 2;\\n content: '';\\n position: absolute;\\n top: 0;\\n right: 0;\\n width: 100%;\\n /* banner width: */\\n border-top-width: var(--size-gap-half);\\n border-bottom-width: 0;\\n border-top-style: solid;\\n border-bottom-style: solid;\\n border-top-color: inherit;\\n border-bottom-color: transparent;\\n }\\n\\n [data-nextjs-dialog-content] {\\n overflow-y: auto;\\n border: none;\\n margin: 0;\\n /* calc(padding + banner width offset) */\\n padding: calc(var(--size-gap-double) + var(--size-gap-half))\\n var(--size-gap-double);\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n }\\n [data-nextjs-dialog-content] > [data-nextjs-dialog-header] {\\n flex-shrink: 0;\\n margin-bottom: var(--size-gap-double);\\n }\\n [data-nextjs-dialog-content] > [data-nextjs-dialog-body] {\\n position: relative;\\n flex: 1 1 auto;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvRGlhbG9nL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMENBQXlDO0lBQ3JDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsaUNBQWlDQyxtQkFBT0EsQ0FBQyw4SEFBK0M7QUFDOUYsTUFBTUMsZ0JBQWdCRCxtQkFBT0EsQ0FBQyx5SUFBNkI7QUFDM0QsU0FBU0U7SUFDTCxNQUFNQyxPQUFPSiwrQkFBK0JLLENBQUMsQ0FBQztRQUMxQztLQUNIO0lBQ0RGLGtCQUFrQjtRQUNkLE9BQU9DO0lBQ1g7SUFDQSxPQUFPQTtBQUNYO0FBQ0EsTUFBTUwsU0FBUyxDQUFDLEdBQUdHLGNBQWNJLElBQUksRUFBRUg7QUFFdkMsSUFBSSxDQUFDLE9BQU9SLFFBQVFZLE9BQU8sS0FBSyxjQUFlLE9BQU9aLFFBQVFZLE9BQU8sS0FBSyxZQUFZWixRQUFRWSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9aLFFBQVFZLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktmLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUVksT0FBTyxFQUFFLGNBQWM7UUFBRVgsT0FBTztJQUFLO0lBQ25FSCxPQUFPZ0IsTUFBTSxDQUFDZCxRQUFRWSxPQUFPLEVBQUVaO0lBQy9CZSxPQUFPZixPQUFPLEdBQUdBLFFBQVFZLE9BQU87QUFDbEMsRUFFQSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9EaWFsb2cvc3R5bGVzLmpzPzY4YjkiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJzdHlsZXNcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9XG59KTtcbmNvbnN0IF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZSA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9fdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2VcIik7XG5jb25zdCBfbm9vcHRlbXBsYXRlID0gcmVxdWlyZShcIi4uLy4uL2hlbHBlcnMvbm9vcC10ZW1wbGF0ZVwiKTtcbmZ1bmN0aW9uIF90ZW1wbGF0ZU9iamVjdCgpIHtcbiAgICBjb25zdCBkYXRhID0gX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlLl8oW1xuICAgICAgICBcIlxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZ10ge1xcbiAgICBkaXNwbGF5OiBmbGV4O1xcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xcbiAgICB3aWR0aDogMTAwJTtcXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcXG4gICAgb3V0bGluZTogbm9uZTtcXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XFxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXNpemUtZ2FwKTtcXG4gICAgYm94LXNoYWRvdzogMCB2YXIoLS1zaXplLWdhcC1oYWxmKSB2YXIoLS1zaXplLWdhcC1kb3VibGUpXFxuICAgICAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcXG4gICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gNTZweCk7XFxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcXG4gIH1cXG5cXG4gIEBtZWRpYSAobWF4LWhlaWdodDogODEycHgpIHtcXG4gICAgW2RhdGEtbmV4dGpzLWRpYWxvZy1vdmVybGF5XSB7XFxuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gMTVweCk7XFxuICAgIH1cXG4gIH1cXG5cXG4gIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xcbiAgICBbZGF0YS1uZXh0anMtZGlhbG9nXSB7XFxuICAgICAgbWF4LXdpZHRoOiA1NDBweDtcXG4gICAgICBib3gtc2hhZG93OiAwIHZhcigtLXNpemUtZ2FwKSB2YXIoLS1zaXplLWdhcC1xdWFkKSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xcbiAgICB9XFxuICB9XFxuXFxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcXG4gICAgW2RhdGEtbmV4dGpzLWRpYWxvZ10ge1xcbiAgICAgIG1heC13aWR0aDogNzIwcHg7XFxuICAgIH1cXG4gIH1cXG5cXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xcbiAgICBbZGF0YS1uZXh0anMtZGlhbG9nXSB7XFxuICAgICAgbWF4LXdpZHRoOiA5NjBweDtcXG4gICAgfVxcbiAgfVxcblxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1iYW5uZXJdIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1iYW5uZXJdLmJhbm5lci13YXJuaW5nIHtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hbnNpLXllbGxvdyk7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWJhbm5lcl0uYmFubmVyLWVycm9yIHtcXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hbnNpLXJlZCk7XFxuICB9XFxuXFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWJhbm5lcl06OmFmdGVyIHtcXG4gICAgei1pbmRleDogMjtcXG4gICAgY29udGVudDogJyc7XFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gICAgdG9wOiAwO1xcbiAgICByaWdodDogMDtcXG4gICAgd2lkdGg6IDEwMCU7XFxuICAgIC8qIGJhbm5lciB3aWR0aDogKi9cXG4gICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tc2l6ZS1nYXAtaGFsZik7XFxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XFxuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogaW5oZXJpdDtcXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICB9XFxuXFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWNvbnRlbnRdIHtcXG4gICAgb3ZlcmZsb3cteTogYXV0bztcXG4gICAgYm9yZGVyOiBub25lO1xcbiAgICBtYXJnaW46IDA7XFxuICAgIC8qIGNhbGMocGFkZGluZyArIGJhbm5lciB3aWR0aCBvZmZzZXQpICovXFxuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tc2l6ZS1nYXAtZG91YmxlKSArIHZhcigtLXNpemUtZ2FwLWhhbGYpKVxcbiAgICAgIHZhcigtLXNpemUtZ2FwLWRvdWJsZSk7XFxuICAgIGhlaWdodDogMTAwJTtcXG4gICAgZGlzcGxheTogZmxleDtcXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcXG4gIH1cXG4gIFtkYXRhLW5leHRqcy1kaWFsb2ctY29udGVudF0gPiBbZGF0YS1uZXh0anMtZGlhbG9nLWhlYWRlcl0ge1xcbiAgICBmbGV4LXNocmluazogMDtcXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS1nYXAtZG91YmxlKTtcXG4gIH1cXG4gIFtkYXRhLW5leHRqcy1kaWFsb2ctY29udGVudF0gPiBbZGF0YS1uZXh0anMtZGlhbG9nLWJvZHldIHtcXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgICBmbGV4OiAxIDEgYXV0bztcXG4gIH1cXG5cIlxuICAgIF0pO1xuICAgIF90ZW1wbGF0ZU9iamVjdCA9IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gZGF0YTtcbiAgICB9O1xuICAgIHJldHVybiBkYXRhO1xufVxuY29uc3Qgc3R5bGVzID0gKDAsIF9ub29wdGVtcGxhdGUubm9vcCkoX3RlbXBsYXRlT2JqZWN0KCkpO1xuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1zdHlsZXMuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsInN0eWxlcyIsIl90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZSIsInJlcXVpcmUiLCJfbm9vcHRlbXBsYXRlIiwiX3RlbXBsYXRlT2JqZWN0IiwiZGF0YSIsIl8iLCJub29wIiwiZGVmYXVsdCIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iLCJtb2R1bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Dialog/styles.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js": /*!***************************************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js ***! \***************************************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"LeftRightDialogHeader\", ({\n enumerable: true,\n get: function() {\n return LeftRightDialogHeader;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _CloseIcon = __webpack_require__(/*! ../../icons/CloseIcon */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/icons/CloseIcon.js\");\nconst LeftRightDialogHeader = function LeftRightDialogHeader(param) {\n let { children, className, previous, next, close } = param;\n const buttonLeft = _react.useRef(null);\n const buttonRight = _react.useRef(null);\n const buttonClose = _react.useRef(null);\n const [nav, setNav] = _react.useState(null);\n const onNav = _react.useCallback((el)=>{\n setNav(el);\n }, []);\n _react.useEffect(()=>{\n if (nav == null) {\n return;\n }\n const root = nav.getRootNode();\n const d = self.document;\n function handler(e) {\n if (e.key === \"ArrowLeft\") {\n e.stopPropagation();\n if (buttonLeft.current) {\n buttonLeft.current.focus();\n }\n previous && previous();\n } else if (e.key === \"ArrowRight\") {\n e.stopPropagation();\n if (buttonRight.current) {\n buttonRight.current.focus();\n }\n next && next();\n } else if (e.key === \"Escape\") {\n e.stopPropagation();\n if (root instanceof ShadowRoot) {\n const a = root.activeElement;\n if (a && a !== buttonClose.current && a instanceof HTMLElement) {\n a.blur();\n return;\n }\n }\n if (close) {\n close();\n }\n }\n }\n root.addEventListener(\"keydown\", handler);\n if (root !== d) {\n d.addEventListener(\"keydown\", handler);\n }\n return function() {\n root.removeEventListener(\"keydown\", handler);\n if (root !== d) {\n d.removeEventListener(\"keydown\", handler);\n }\n };\n }, [\n close,\n nav,\n next,\n previous\n ]);\n // Unlock focus for browsers like Firefox, that break all user focus if the\n // currently focused item becomes disabled.\n _react.useEffect(()=>{\n if (nav == null) {\n return;\n }\n const root = nav.getRootNode();\n // Always true, but we do this for TypeScript:\n if (root instanceof ShadowRoot) {\n const a = root.activeElement;\n if (previous == null) {\n if (buttonLeft.current && a === buttonLeft.current) {\n buttonLeft.current.blur();\n }\n } else if (next == null) {\n if (buttonRight.current && a === buttonRight.current) {\n buttonRight.current.blur();\n }\n }\n }\n }, [\n nav,\n next,\n previous\n ]);\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-left-right\": true,\n className: className\n }, /*#__PURE__*/ _react.createElement(\"nav\", {\n ref: onNav\n }, /*#__PURE__*/ _react.createElement(\"button\", {\n ref: buttonLeft,\n type: \"button\",\n disabled: previous == null ? true : undefined,\n \"aria-disabled\": previous == null ? true : undefined,\n onClick: previous != null ? previous : undefined\n }, /*#__PURE__*/ _react.createElement(\"svg\", {\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/ _react.createElement(\"title\", null, \"previous\"), /*#__PURE__*/ _react.createElement(\"path\", {\n d: \"M6.99996 1.16666L1.16663 6.99999L6.99996 12.8333M12.8333 6.99999H1.99996H12.8333Z\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }))), /*#__PURE__*/ _react.createElement(\"button\", {\n ref: buttonRight,\n type: \"button\",\n disabled: next == null ? true : undefined,\n \"aria-disabled\": next == null ? true : undefined,\n onClick: next != null ? next : undefined\n }, /*#__PURE__*/ _react.createElement(\"svg\", {\n viewBox: \"0 0 14 14\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/ _react.createElement(\"title\", null, \"next\"), /*#__PURE__*/ _react.createElement(\"path\", {\n d: \"M6.99996 1.16666L12.8333 6.99999L6.99996 12.8333M1.16663 6.99999H12H1.16663Z\",\n stroke: \"currentColor\",\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }))), \"\\xa0\", children), close ? /*#__PURE__*/ _react.createElement(\"button\", {\n \"data-nextjs-errors-dialog-left-right-close-button\": true,\n ref: buttonClose,\n type: \"button\",\n onClick: close,\n \"aria-label\": \"Close\"\n }, /*#__PURE__*/ _react.createElement(\"span\", {\n \"aria-hidden\": \"true\"\n }, /*#__PURE__*/ _react.createElement(_CloseIcon.CloseIcon, null))) : null);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=LeftRightDialogHeader.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL0xlZnRSaWdodERpYWxvZ0hlYWRlci5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgseURBQXdEO0lBQ3BESSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsNEJBQTRCQyxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUMsU0FBUyxXQUFXLEdBQUdGLDBCQUEwQkcsQ0FBQyxDQUFDRixtQkFBT0EsQ0FBQyx3R0FBTztBQUN4RSxNQUFNRyxhQUFhSCxtQkFBT0EsQ0FBQyw2SEFBdUI7QUFDbEQsTUFBTUYsd0JBQXdCLFNBQVNBLHNCQUFzQk0sS0FBSztJQUM5RCxJQUFJLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxRQUFRLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFLEdBQUdMO0lBQ3JELE1BQU1NLGFBQWFULE9BQU9VLE1BQU0sQ0FBQztJQUNqQyxNQUFNQyxjQUFjWCxPQUFPVSxNQUFNLENBQUM7SUFDbEMsTUFBTUUsY0FBY1osT0FBT1UsTUFBTSxDQUFDO0lBQ2xDLE1BQU0sQ0FBQ0csS0FBS0MsT0FBTyxHQUFHZCxPQUFPZSxRQUFRLENBQUM7SUFDdEMsTUFBTUMsUUFBUWhCLE9BQU9pQixXQUFXLENBQUMsQ0FBQ0M7UUFDOUJKLE9BQU9JO0lBQ1gsR0FBRyxFQUFFO0lBQ0xsQixPQUFPbUIsU0FBUyxDQUFDO1FBQ2IsSUFBSU4sT0FBTyxNQUFNO1lBQ2I7UUFDSjtRQUNBLE1BQU1PLE9BQU9QLElBQUlRLFdBQVc7UUFDNUIsTUFBTUMsSUFBSUMsS0FBS0MsUUFBUTtRQUN2QixTQUFTQyxRQUFRQyxDQUFDO1lBQ2QsSUFB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ei1jb25maWctdWkvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL0xlZnRSaWdodERpYWxvZ0hlYWRlci5qcz9iMzA2Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiTGVmdFJpZ2h0RGlhbG9nSGVhZGVyXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBMZWZ0UmlnaHREaWFsb2dIZWFkZXI7XG4gICAgfVxufSk7XG5jb25zdCBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRcIik7XG5jb25zdCBfcmVhY3QgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQuXyhyZXF1aXJlKFwicmVhY3RcIikpO1xuY29uc3QgX0Nsb3NlSWNvbiA9IHJlcXVpcmUoXCIuLi8uLi9pY29ucy9DbG9zZUljb25cIik7XG5jb25zdCBMZWZ0UmlnaHREaWFsb2dIZWFkZXIgPSBmdW5jdGlvbiBMZWZ0UmlnaHREaWFsb2dIZWFkZXIocGFyYW0pIHtcbiAgICBsZXQgeyBjaGlsZHJlbiwgY2xhc3NOYW1lLCBwcmV2aW91cywgbmV4dCwgY2xvc2UgfSA9IHBhcmFtO1xuICAgIGNvbnN0IGJ1dHRvbkxlZnQgPSBfcmVhY3QudXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IGJ1dHRvblJpZ2h0ID0gX3JlYWN0LnVzZVJlZihudWxsKTtcbiAgICBjb25zdCBidXR0b25DbG9zZSA9IF9yZWFjdC51c2VSZWYobnVsbCk7XG4gICAgY29uc3QgW25hdiwgc2V0TmF2XSA9IF9yZWFjdC51c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBvbk5hdiA9IF9yZWFjdC51c2VDYWxsYmFjaygoZWwpPT57XG4gICAgICAgIHNldE5hdihlbCk7XG4gICAgfSwgW10pO1xuICAgIF9yZWFjdC51c2VFZmZlY3QoKCk9PntcbiAgICAgICAgaWYgKG5hdiA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgcm9vdCA9IG5hdi5nZXRSb290Tm9kZSgpO1xuICAgICAgICBjb25zdCBkID0gc2VsZi5kb2N1bWVudDtcbiAgICAgICAgZnVuY3Rpb24gaGFuZGxlcihlKSB7XG4gICAgICAgICAgICBpZiAoZS5rZXkgPT09IFwiQXJyb3dMZWZ0XCIpIHtcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIGlmIChidXR0b25MZWZ0LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uTGVmdC5jdXJyZW50LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHByZXZpb3VzICYmIHByZXZpb3VzKCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGUua2V5ID09PSBcIkFycm93UmlnaHRcIikge1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgaWYgKGJ1dHRvblJpZ2h0LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uUmlnaHQuY3VycmVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBuZXh0ICYmIG5leHQoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZS5rZXkgPT09IFwiRXNjYXBlXCIpIHtcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIGlmIChyb290IGluc3RhbmNlb2YgU2hhZG93Um9vdCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhID0gcm9vdC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgICAgICBpZiAoYSAmJiBhICE9PSBidXR0b25DbG9zZS5jdXJyZW50ICYmIGEgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYS5ibHVyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKGNsb3NlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJvb3QuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlcik7XG4gICAgICAgIGlmIChyb290ICE9PSBkKSB7XG4gICAgICAgICAgICBkLmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsIGhhbmRsZXIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJvb3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlcik7XG4gICAgICAgICAgICBpZiAocm9vdCAhPT0gZCkge1xuICAgICAgICAgICAgICAgIGQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIiwgaGFuZGxlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBjbG9zZSxcbiAgICAgICAgbmF2LFxuICAgICAgICBuZXh0LFxuICAgICAgICBwcmV2aW91c1xuICAgIF0pO1xuICAgIC8vIFVubG9jayBmb2N1cyBmb3IgYnJvd3NlcnMgbGlrZSBGaXJlZm94LCB0aGF0IGJyZWFrIGFsbCB1c2VyIGZvY3VzIGlmIHRoZVxuICAgIC8vIGN1cnJlbnRseSBmb2N1c2VkIGl0ZW0gYmVjb21lcyBkaXNhYmxlZC5cbiAgICBfcmVhY3QudXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChuYXYgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJvb3QgPSBuYXYuZ2V0Um9vdE5vZGUoKTtcbiAgICAgICAgLy8gQWx3YXlzIHRydWUsIGJ1dCB3ZSBkbyB0aGlzIGZvciBUeXBlU2NyaXB0OlxuICAgICAgICBpZiAocm9vdCBpbnN0YW5jZW9mIFNoYWRvd1Jvb3QpIHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSByb290LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAocHJldmlvdXMgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGlmIChidXR0b25MZWZ0LmN1cnJlbnQgJiYgYSA9PT0gYnV0dG9uTGVmdC5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbkxlZnQuY3VycmVudC5ibHVyKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmIChuZXh0ID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBpZiAoYnV0dG9uUmlnaHQuY3VycmVudCAmJiBhID09PSBidXR0b25SaWdodC5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvblJpZ2h0LmN1cnJlbnQuYmx1cigpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgbmF2LFxuICAgICAgICBuZXh0LFxuICAgICAgICBwcmV2aW91c1xuICAgIF0pO1xuICAgIHJldHVybiAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgXCJkYXRhLW5leHRqcy1kaWFsb2ctbGVmdC1yaWdodFwiOiB0cnVlLFxuICAgICAgICBjbGFzc05hbWU6IGNsYXNzTmFtZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJuYXZcIiwge1xuICAgICAgICByZWY6IG9uTmF2XG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImJ1dHRvblwiLCB7XG4gICAgICAgIHJlZjogYnV0dG9uTGVmdCxcbiAgICAgICAgdHlwZTogXCJidXR0b25cIixcbiAgICAgICAgZGlzYWJsZWQ6IHByZXZpb3VzID09IG51bGwgPyB0cnVlIDogdW5kZWZpbmVkLFxuICAgICAgICBcImFyaWEtZGlzYWJsZWRcIjogcHJldmlvdXMgPT0gbnVsbCA/IHRydWUgOiB1bmRlZmluZWQsXG4gICAgICAgIG9uQ2xpY2s6IHByZXZpb3VzICE9IG51bGwgPyBwcmV2aW91cyA6IHVuZGVmaW5lZFxuICAgIH0sIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJzdmdcIiwge1xuICAgICAgICB2aWV3Qm94OiBcIjAgMCAxNCAxNFwiLFxuICAgICAgICBmaWxsOiBcIm5vbmVcIixcbiAgICAgICAgeG1sbnM6IFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgIH0sIC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJ0aXRsZVwiLCBudWxsLCBcInByZXZpb3VzXCIpLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgICAgIGQ6IFwiTTYuOTk5OTYgMS4xNjY2NkwxLjE2NjYzIDYuOTk5OTlMNi45OTk5NiAxMi44MzMzTTEyLjgzMzMgNi45OTk5OUgxLjk5OTk2SDEyLjgzMzNaXCIsXG4gICAgICAgIHN0cm9rZTogXCJjdXJyZW50Q29sb3JcIixcbiAgICAgICAgc3Ryb2tlV2lkdGg6IFwiMlwiLFxuICAgICAgICBzdHJva2VMaW5lY2FwOiBcInJvdW5kXCIsXG4gICAgICAgIHN0cm9rZUxpbmVqb2luOiBcInJvdW5kXCJcbiAgICB9KSkpLCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwiYnV0dG9uXCIsIHtcbiAgICAgICAgcmVmOiBidXR0b25SaWdodCxcbiAgICAgICAgdHlwZTogXCJidXR0b25cIixcbiAgICAgICAgZGlzYWJsZWQ6IG5leHQgPT0gbnVsbCA/IHRydWUgOiB1bmRlZmluZWQsXG4gICAgICAgIFwiYXJpYS1kaXNhYmxlZFwiOiBuZXh0ID09IG51bGwgPyB0cnVlIDogdW5kZWZpbmVkLFxuICAgICAgICBvbkNsaWNrOiBuZXh0ICE9IG51bGwgPyBuZXh0IDogdW5kZWZpbmVkXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcInN2Z1wiLCB7XG4gICAgICAgIHZpZXdCb3g6IFwiMCAwIDE0IDE0XCIsXG4gICAgICAgIGZpbGw6IFwibm9uZVwiLFxuICAgICAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcInRpdGxlXCIsIG51bGwsIFwibmV4dFwiKSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcInBhdGhcIiwge1xuICAgICAgICBkOiBcIk02Ljk5OTk2IDEuMTY2NjZMMTIuODMzMyA2Ljk5OTk5TDYuOTk5OTYgMTIuODMzM00xLjE2NjYzIDYuOTk5OTlIMTJIMS4xNjY2M1pcIixcbiAgICAgICAgc3Ryb2tlOiBcImN1cnJlbnRDb2xvclwiLFxuICAgICAgICBzdHJva2VXaWR0aDogXCIyXCIsXG4gICAgICAgIHN0cm9rZUxpbmVjYXA6IFwicm91bmRcIixcbiAgICAgICAgc3Ryb2tlTGluZWpvaW46IFwicm91bmRcIlxuICAgIH0pKSksIFwiXFx4YTBcIiwgY2hpbGRyZW4pLCBjbG9zZSA/IC8qI19fUFVSRV9fKi8gX3JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJidXR0b25cIiwge1xuICAgICAgICBcImRhdGEtbmV4dGpzLWVycm9ycy1kaWFsb2ctbGVmdC1yaWdodC1jbG9zZS1idXR0b25cIjogdHJ1ZSxcbiAgICAgICAgcmVmOiBidXR0b25DbG9zZSxcbiAgICAgICAgdHlwZTogXCJidXR0b25cIixcbiAgICAgICAgb25DbGljazogY2xvc2UsXG4gICAgICAgIFwiYXJpYS1sYWJlbFwiOiBcIkNsb3NlXCJcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KFwic3BhblwiLCB7XG4gICAgICAgIFwiYXJpYS1oaWRkZW5cIjogXCJ0cnVlXCJcbiAgICB9LCAvKiNfX1BVUkVfXyovIF9yZWFjdC5jcmVhdGVFbGVtZW50KF9DbG9zZUljb24uQ2xvc2VJY29uLCBudWxsKSkpIDogbnVsbCk7XG59O1xuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1MZWZ0UmlnaHREaWFsb2dIZWFkZXIuanMubWFwIl0sIm5hbWVzIjpbIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXhwb3J0cyIsInZhbHVlIiwiZW51bWVyYWJsZSIsImdldCIsIkxlZnRSaWdodERpYWxvZ0hlYWRlciIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiXyIsIl9DbG9zZUljb24iLCJwYXJhbSIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwicHJldmlvdXMiLCJuZXh0IiwiY2xvc2UiLCJidXR0b25MZWZ0IiwidXNlUmVmIiwiYnV0dG9uUmlnaHQiLCJidXR0b25DbG9zZSIsIm5hdiIsInNldE5hdiIsInVzZVN0YXRlIiwib25OYXYiLCJ1c2VDYWxsYmFjayIsImVsIiwidXNlRWZmZWN0Iiwicm9vdCIsImdldFJvb3ROb2RlIiwiZCIsInNlbGYiLCJkb2N1bWVudCIsImhhbmRsZXIiLCJlIiwia2V5Iiwic3RvcFByb3BhZ2F0aW9uIiwiY3VycmVudCIsImZvY3VzIiwiU2hhZG93Um9vdCIsImEiLCJhY3RpdmVFbGVtZW50IiwiSFRNTEVsZW1lbnQiLCJibHVyIiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJjcmVhdGVFbGVtZW50IiwicmVmIiwidHlwZSIsImRpc2FibGVkIiwidW5kZWZpbmVkIiwib25DbGljayIsInZpZXdCb3giLCJmaWxsIiwieG1sbnMiLCJzdHJva2UiLCJzdHJva2VXaWR0aCIsInN0cm9rZUxpbmVjYXAiLCJzdHJva2VMaW5lam9pbiIsIkNsb3NlSWNvbiIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js": /*!***********************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js ***! \***********************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n LeftRightDialogHeader: function() {\n return _LeftRightDialogHeader.LeftRightDialogHeader;\n },\n styles: function() {\n return _styles.styles;\n }\n});\nconst _LeftRightDialogHeader = __webpack_require__(/*! ./LeftRightDialogHeader */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js\");\nconst _styles = __webpack_require__(/*! ./styles */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL2luZGV4LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2JBLDhDQUE2QztJQUN6Q0csT0FBTztBQUNYLENBQUMsRUFBQztBQUNGLEtBQU1DLENBQUFBLENBR047QUFDQSxTQUFTRyxRQUFRQyxNQUFNLEVBQUVDLEdBQUc7SUFDeEIsSUFBSSxJQUFJQyxRQUFRRCxJQUFJVCxPQUFPQyxjQUFjLENBQUNPLFFBQVFFLE1BQU07UUFDcERDLFlBQVk7UUFDWkMsS0FBS0gsR0FBRyxDQUFDQyxLQUFLO0lBQ2xCO0FBQ0o7QUFDQUgsUUFBUUwsU0FBUztJQUNiRyx1QkFBdUI7UUFDbkIsT0FBT1EsdUJBQXVCUixxQkFBcUI7SUFDdkQ7SUFDQUMsUUFBUTtRQUNKLE9BQU9RLFFBQVFSLE1BQU07SUFDekI7QUFDSjtBQUNBLE1BQU1PLHlCQUF5QkUsbUJBQU9BLENBQUMsc0tBQXlCO0FBQ2hFLE1BQU1ELFVBQVVDLG1CQUFPQSxDQUFDLHdJQUFVO0FBRWxDLElBQUksQ0FBQyxPQUFPYixRQUFRYyxPQUFPLEtBQUssY0FBZSxPQUFPZCxRQUFRYyxPQUFPLEtBQUssWUFBWWQsUUFBUWMsT0FBTyxLQUFLLElBQUksS0FBTSxPQUFPZCxRQUFRYyxPQUFPLENBQUNDLFVBQVUsS0FBSyxhQUFhO0lBQ3JLakIsT0FBT0MsY0FBYyxDQUFDQyxRQUFRYyxPQUFPLEVBQUUsY0FBYztRQUFFYixPQUFPO0lBQUs7SUFDbkVILE9BQU9rQixNQUFNLENBQUNoQixRQUFRYyxPQUFPLEVBQUVkO0lBQy9CRSxPQUFPRixPQUFPLEdBQUdBLFFBQVFjLE9BQU87QUFDbEMsRUFFQSxpQ0FBaUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9MZWZ0UmlnaHREaWFsb2dIZWFkZXIvaW5kZXguanM/MmFjMiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbjAgJiYgKG1vZHVsZS5leHBvcnRzID0ge1xuICAgIExlZnRSaWdodERpYWxvZ0hlYWRlcjogbnVsbCxcbiAgICBzdHlsZXM6IG51bGxcbn0pO1xuZnVuY3Rpb24gX2V4cG9ydCh0YXJnZXQsIGFsbCkge1xuICAgIGZvcih2YXIgbmFtZSBpbiBhbGwpT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgbmFtZSwge1xuICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgICAgICBnZXQ6IGFsbFtuYW1lXVxuICAgIH0pO1xufVxuX2V4cG9ydChleHBvcnRzLCB7XG4gICAgTGVmdFJpZ2h0RGlhbG9nSGVhZGVyOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9MZWZ0UmlnaHREaWFsb2dIZWFkZXIuTGVmdFJpZ2h0RGlhbG9nSGVhZGVyO1xuICAgIH0sXG4gICAgc3R5bGVzOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9zdHlsZXMuc3R5bGVzO1xuICAgIH1cbn0pO1xuY29uc3QgX0xlZnRSaWdodERpYWxvZ0hlYWRlciA9IHJlcXVpcmUoXCIuL0xlZnRSaWdodERpYWxvZ0hlYWRlclwiKTtcbmNvbnN0IF9zdHlsZXMgPSByZXF1aXJlKFwiLi9zdHlsZXNcIik7XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsIm1vZHVsZSIsIkxlZnRSaWdodERpYWxvZ0hlYWRlciIsInN0eWxlcyIsIl9leHBvcnQiLCJ0YXJnZXQiLCJhbGwiLCJuYW1lIiwiZW51bWVyYWJsZSIsImdldCIsIl9MZWZ0UmlnaHREaWFsb2dIZWFkZXIiLCJfc3R5bGVzIiwicmVxdWlyZSIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/index.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js": /*!************************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js ***! \************************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"styles\", ({\n enumerable: true,\n get: function() {\n return styles;\n }\n}));\nconst _tagged_template_literal_loose = __webpack_require__(/*! @swc/helpers/_/_tagged_template_literal_loose */ \"(ssr)/./node_modules/@swc/helpers/esm/_tagged_template_literal_loose.js\");\nconst _nooptemplate = __webpack_require__(/*! ../../helpers/noop-template */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/helpers/noop-template.js\");\nfunction _templateObject() {\n const data = _tagged_template_literal_loose._([\n \"\\n [data-nextjs-dialog-left-right] {\\n display: flex;\\n flex-direction: row;\\n align-content: center;\\n align-items: center;\\n justify-content: space-between;\\n }\\n [data-nextjs-dialog-left-right] > nav {\\n flex: 1;\\n display: flex;\\n align-items: center;\\n margin-right: var(--size-gap);\\n }\\n [data-nextjs-dialog-left-right] > nav > button {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n\\n width: calc(var(--size-gap-double) + var(--size-gap));\\n height: calc(var(--size-gap-double) + var(--size-gap));\\n font-size: 0;\\n border: none;\\n background-color: rgba(255, 85, 85, 0.1);\\n color: var(--color-ansi-red);\\n cursor: pointer;\\n transition: background-color 0.25s ease;\\n }\\n [data-nextjs-dialog-left-right] > nav > button > svg {\\n width: auto;\\n height: calc(var(--size-gap) + var(--size-gap-half));\\n }\\n [data-nextjs-dialog-left-right] > nav > button:hover {\\n background-color: rgba(255, 85, 85, 0.2);\\n }\\n [data-nextjs-dialog-left-right] > nav > button:disabled {\\n background-color: rgba(255, 85, 85, 0.1);\\n color: rgba(255, 85, 85, 0.4);\\n cursor: not-allowed;\\n }\\n\\n [data-nextjs-dialog-left-right] > nav > button:first-of-type {\\n border-radius: var(--size-gap-half) 0 0 var(--size-gap-half);\\n margin-right: 1px;\\n }\\n [data-nextjs-dialog-left-right] > nav > button:last-of-type {\\n border-radius: 0 var(--size-gap-half) var(--size-gap-half) 0;\\n }\\n\\n [data-nextjs-dialog-left-right] > button:last-of-type {\\n border: 0;\\n padding: 0;\\n\\n background-color: transparent;\\n appearance: none;\\n\\n opacity: 0.4;\\n transition: opacity 0.25s ease;\\n }\\n [data-nextjs-dialog-left-right] > button:last-of-type:hover {\\n opacity: 0.7;\\n }\\n\"\n ]);\n _templateObject = function() {\n return data;\n };\n return data;\n}\nconst styles = (0, _nooptemplate.noop)(_templateObject());\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=styles.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvTGVmdFJpZ2h0RGlhbG9nSGVhZGVyL3N0eWxlcy5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMENBQXlDO0lBQ3JDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsaUNBQWlDQyxtQkFBT0EsQ0FBQyw4SEFBK0M7QUFDOUYsTUFBTUMsZ0JBQWdCRCxtQkFBT0EsQ0FBQyx5SUFBNkI7QUFDM0QsU0FBU0U7SUFDTCxNQUFNQyxPQUFPSiwrQkFBK0JLLENBQUMsQ0FBQztRQUMxQztLQUNIO0lBQ0RGLGtCQUFrQjtRQUNkLE9BQU9DO0lBQ1g7SUFDQSxPQUFPQTtBQUNYO0FBQ0EsTUFBTUwsU0FBUyxDQUFDLEdBQUdHLGNBQWNJLElBQUksRUFBRUg7QUFFdkMsSUFBSSxDQUFDLE9BQU9SLFFBQVFZLE9BQU8sS0FBSyxjQUFlLE9BQU9aLFFBQVFZLE9BQU8sS0FBSyxZQUFZWixRQUFRWSxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9aLFFBQVFZLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktmLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUVksT0FBTyxFQUFFLGNBQWM7UUFBRVgsT0FBTztJQUFLO0lBQ25FSCxPQUFPZ0IsTUFBTSxDQUFDZCxRQUFRWSxPQUFPLEVBQUVaO0lBQy9CZSxPQUFPZixPQUFPLEdBQUdBLFFBQVFZLE9BQU87QUFDbEMsRUFFQSxrQ0FBa0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9MZWZ0UmlnaHREaWFsb2dIZWFkZXIvc3R5bGVzLmpzP2RiNzMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJzdHlsZXNcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHN0eWxlcztcbiAgICB9XG59KTtcbmNvbnN0IF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZSA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9fdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2VcIik7XG5jb25zdCBfbm9vcHRlbXBsYXRlID0gcmVxdWlyZShcIi4uLy4uL2hlbHBlcnMvbm9vcC10ZW1wbGF0ZVwiKTtcbmZ1bmN0aW9uIF90ZW1wbGF0ZU9iamVjdCgpIHtcbiAgICBjb25zdCBkYXRhID0gX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlLl8oW1xuICAgICAgICBcIlxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSB7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XFxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IG5hdiB7XFxuICAgIGZsZXg6IDE7XFxuICAgIGRpc3BsYXk6IGZsZXg7XFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS1nYXApO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IG5hdiA+IGJ1dHRvbiB7XFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcXG5cXG4gICAgd2lkdGg6IGNhbGModmFyKC0tc2l6ZS1nYXAtZG91YmxlKSArIHZhcigtLXNpemUtZ2FwKSk7XFxuICAgIGhlaWdodDogY2FsYyh2YXIoLS1zaXplLWdhcC1kb3VibGUpICsgdmFyKC0tc2l6ZS1nYXApKTtcXG4gICAgZm9udC1zaXplOiAwO1xcbiAgICBib3JkZXI6IG5vbmU7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCA4NSwgODUsIDAuMSk7XFxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hbnNpLXJlZCk7XFxuICAgIGN1cnNvcjogcG9pbnRlcjtcXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IG5hdiA+IGJ1dHRvbiA+IHN2ZyB7XFxuICAgIHdpZHRoOiBhdXRvO1xcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tc2l6ZS1nYXApICsgdmFyKC0tc2l6ZS1nYXAtaGFsZikpO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IG5hdiA+IGJ1dHRvbjpob3ZlciB7XFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCA4NSwgODUsIDAuMik7XFxuICB9XFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWxlZnQtcmlnaHRdID4gbmF2ID4gYnV0dG9uOmRpc2FibGVkIHtcXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDg1LCA4NSwgMC4xKTtcXG4gICAgY29sb3I6IHJnYmEoMjU1LCA4NSwgODUsIDAuNCk7XFxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XFxuICB9XFxuXFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWxlZnQtcmlnaHRdID4gbmF2ID4gYnV0dG9uOmZpcnN0LW9mLXR5cGUge1xcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zaXplLWdhcC1oYWxmKSAwIDAgdmFyKC0tc2l6ZS1nYXAtaGFsZik7XFxuICAgIG1hcmdpbi1yaWdodDogMXB4O1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IG5hdiA+IGJ1dHRvbjpsYXN0LW9mLXR5cGUge1xcbiAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLXNpemUtZ2FwLWhhbGYpIHZhcigtLXNpemUtZ2FwLWhhbGYpIDA7XFxuICB9XFxuXFxuICBbZGF0YS1uZXh0anMtZGlhbG9nLWxlZnQtcmlnaHRdID4gYnV0dG9uOmxhc3Qtb2YtdHlwZSB7XFxuICAgIGJvcmRlcjogMDtcXG4gICAgcGFkZGluZzogMDtcXG5cXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XFxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XFxuXFxuICAgIG9wYWNpdHk6IDAuNDtcXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xcbiAgfVxcbiAgW2RhdGEtbmV4dGpzLWRpYWxvZy1sZWZ0LXJpZ2h0XSA+IGJ1dHRvbjpsYXN0LW9mLXR5cGU6aG92ZXIge1xcbiAgICBvcGFjaXR5OiAwLjc7XFxuICB9XFxuXCJcbiAgICBdKTtcbiAgICBfdGVtcGxhdGVPYmplY3QgPSBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfTtcbiAgICByZXR1cm4gZGF0YTtcbn1cbmNvbnN0IHN0eWxlcyA9ICgwLCBfbm9vcHRlbXBsYXRlLm5vb3ApKF90ZW1wbGF0ZU9iamVjdCgpKTtcblxuaWYgKCh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnZnVuY3Rpb24nIHx8ICh0eXBlb2YgZXhwb3J0cy5kZWZhdWx0ID09PSAnb2JqZWN0JyAmJiBleHBvcnRzLmRlZmF1bHQgIT09IG51bGwpKSAmJiB0eXBlb2YgZXhwb3J0cy5kZWZhdWx0Ll9fZXNNb2R1bGUgPT09ICd1bmRlZmluZWQnKSB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLmRlZmF1bHQsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgT2JqZWN0LmFzc2lnbihleHBvcnRzLmRlZmF1bHQsIGV4cG9ydHMpO1xuICBtb2R1bGUuZXhwb3J0cyA9IGV4cG9ydHMuZGVmYXVsdDtcbn1cblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGVzLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJzdHlsZXMiLCJfdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2UiLCJyZXF1aXJlIiwiX25vb3B0ZW1wbGF0ZSIsIl90ZW1wbGF0ZU9iamVjdCIsImRhdGEiLCJfIiwibm9vcCIsImRlZmF1bHQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/LeftRightDialogHeader/styles.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js": /*!***********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js ***! \***********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("// @ts-ignore\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Overlay\", ({\n enumerable: true,\n get: function() {\n return Overlay;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _maintaintabfocus = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ./maintain--tab-focus */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js\"));\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(ssr)/./node_modules/next/dist/server/future/route-modules/app-page/vendored/ssr/react.js\"));\nconst _bodylocker = __webpack_require__(/*! ./body-locker */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js\");\nconst Overlay = function Overlay(param) {\n let { className, children, fixed } = param;\n _react.useEffect(()=>{\n (0, _bodylocker.lock)();\n return ()=>{\n (0, _bodylocker.unlock)();\n };\n }, []);\n const [overlay, setOverlay] = _react.useState(null);\n const onOverlay = _react.useCallback((el)=>{\n setOverlay(el);\n }, []);\n _react.useEffect(()=>{\n if (overlay == null) {\n return;\n }\n const handle2 = (0, _maintaintabfocus.default)({\n context: overlay\n });\n return ()=>{\n handle2.disengage();\n };\n }, [\n overlay\n ]);\n return /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-overlay\": true,\n className: className,\n ref: onOverlay\n }, /*#__PURE__*/ _react.createElement(\"div\", {\n \"data-nextjs-dialog-backdrop\": true,\n \"data-nextjs-dialog-backdrop-fixed\": fixed ? true : undefined\n }), children);\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=Overlay.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9PdmVybGF5LmpzIiwibWFwcGluZ3MiOiJBQUFBLGFBQWE7QUFDQTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMkNBQTBDO0lBQ3RDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQztJQUNYO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUMsMkJBQTJCQyxtQkFBT0EsQ0FBQyxrSEFBeUM7QUFDbEYsTUFBTUMsNEJBQTRCRCxtQkFBT0EsQ0FBQyxvSEFBMEM7QUFDcEYsTUFBTUUsb0JBQW9CLFdBQVcsR0FBR0gseUJBQXlCSSxDQUFDLENBQUNILG1CQUFPQSxDQUFDLG9KQUF1QjtBQUNsRyxNQUFNSSxTQUFTLFdBQVcsR0FBR0gsMEJBQTBCRSxDQUFDLENBQUNILG1CQUFPQSxDQUFDLHdHQUFPO0FBQ3hFLE1BQU1LLGNBQWNMLG1CQUFPQSxDQUFDLG9JQUFlO0FBQzNDLE1BQU1GLFVBQVUsU0FBU0EsUUFBUVEsS0FBSztJQUNsQyxJQUFJLEVBQUVDLFNBQVMsRUFBRUMsUUFBUSxFQUFFQyxLQUFLLEVBQUUsR0FBR0g7SUFDckNGLE9BQU9NLFNBQVMsQ0FBQztRQUNaLElBQUdMLFlBQVlNLElBQUk7UUFDcEIsT0FBTztZQUNGLElBQUdOLFlBQVlPLE1BQU07UUFDMUI7SUFDSixHQUFHLEVBQUU7SUFDTCxNQUFNLENBQUNDLFNBQVNDLFdBQVcsR0FBR1YsT0FBT1csUUFBUSxDQUFDO0lBQzlDLE1BQU1DLFlBQVlaLE9BQU9hLFdBQVcsQ0FBQyxDQUFDQztRQUNsQ0osV0FBV0k7SUFDZixHQUFHLEVBQUU7SUFDTGQsT0FBT00sU0FBUyxDQUFDO1FBQ2IsSUFBSUcsV0FBVyxNQUFNO1lBQ2pCO1FBQ0o7UUFDQSxNQUFNTSxVQUFVLENBQUMsR0FBR2pCLGtCQUFrQmtCLE9BQU8sRUFBRTtZQUMzQ0MsU0FBU1I7UUFDYjtRQUNBLE9BQU87WUFDSE0sUUFBUUcsU0FBUztRQUNyQjtJQUNKLEdBQUc7UUFDQ1Q7S0FDSDtJQUNELE9BQU8sV0FBVyxHQUFHVCxPQUFPbUIsYUFBYSxDQUFDLE9BQU87UUFDN0MsOEJBQThCO1FBQzlCaEIsV0FBV0E7UUFDWGlCLEtBQUtSO0lBQ1QsR0FBRyxXQUFXLEdBQUdaLE9BQU9tQixhQUFhLENBQUMsT0FBTztRQUN6QywrQkFBK0I7UUFDL0IscUNBQXFDZCxRQUFRLE9BQU9nQjtJQUN4RCxJQUFJakI7QUFDUjtBQUVBLElBQUksQ0FBQyxPQUFPZCxRQUFRMEIsT0FBTyxLQUFLLGNBQWUsT0FBTzFCLFFBQVEwQixPQUFPLEtBQUssWUFBWTFCLFFBQVEwQixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU8xQixRQUFRMEIsT0FBTyxDQUFDTSxVQUFVLEtBQUssYUFBYTtJQUNyS2xDLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUTBCLE9BQU8sRUFBRSxjQUFjO1FBQUV6QixPQUFPO0lBQUs7SUFDbkVILE9BQU9tQyxNQUFNLENBQUNqQyxRQUFRMEIsT0FBTyxFQUFFMUI7SUFDL0JrQyxPQUFPbEMsT0FBTyxHQUFHQSxRQUFRMEIsT0FBTztBQUNsQyxFQUVBLG1DQUFtQyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL092ZXJsYXkvT3ZlcmxheS5qcz9hYzIzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1pZ25vcmVcblwidXNlIHN0cmljdFwiO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiX19lc01vZHVsZVwiLCB7XG4gICAgdmFsdWU6IHRydWVcbn0pO1xuT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFwiT3ZlcmxheVwiLCB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBnZXQ6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gT3ZlcmxheTtcbiAgICB9XG59KTtcbmNvbnN0IF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCA9IHJlcXVpcmUoXCJAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX2RlZmF1bHRcIik7XG5jb25zdCBfaW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkID0gcmVxdWlyZShcIkBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRcIik7XG5jb25zdCBfbWFpbnRhaW50YWJmb2N1cyA9IC8qI19fUFVSRV9fKi8gX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0Ll8ocmVxdWlyZShcIi4vbWFpbnRhaW4tLXRhYi1mb2N1c1wiKSk7XG5jb25zdCBfcmVhY3QgPSAvKiNfX1BVUkVfXyovIF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQuXyhyZXF1aXJlKFwicmVhY3RcIikpO1xuY29uc3QgX2JvZHlsb2NrZXIgPSByZXF1aXJlKFwiLi9ib2R5LWxvY2tlclwiKTtcbmNvbnN0IE92ZXJsYXkgPSBmdW5jdGlvbiBPdmVybGF5KHBhcmFtKSB7XG4gICAgbGV0IHsgY2xhc3NOYW1lLCBjaGlsZHJlbiwgZml4ZWQgfSA9IHBhcmFtO1xuICAgIF9yZWFjdC51c2VFZmZlY3QoKCk9PntcbiAgICAgICAgKDAsIF9ib2R5bG9ja2VyLmxvY2spKCk7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgKDAsIF9ib2R5bG9ja2VyLnVubG9jaykoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG4gICAgY29uc3QgW292ZXJsYXksIHNldE92ZXJsYXldID0gX3JlYWN0LnVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IG9uT3ZlcmxheSA9IF9yZWFjdC51c2VDYWxsYmFjaygoZWwpPT57XG4gICAgICAgIHNldE92ZXJsYXkoZWwpO1xuICAgIH0sIFtdKTtcbiAgICBfcmVhY3QudXNlRWZmZWN0KCgpPT57XG4gICAgICAgIGlmIChvdmVybGF5ID09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoYW5kbGUyID0gKDAsIF9tYWludGFpbnRhYmZvY3VzLmRlZmF1bHQpKHtcbiAgICAgICAgICAgIGNvbnRleHQ6IG92ZXJsYXlcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaGFuZGxlMi5kaXNlbmdhZ2UoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbXG4gICAgICAgIG92ZXJsYXlcbiAgICBdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIFwiZGF0YS1uZXh0anMtZGlhbG9nLW92ZXJsYXlcIjogdHJ1ZSxcbiAgICAgICAgY2xhc3NOYW1lOiBjbGFzc05hbWUsXG4gICAgICAgIHJlZjogb25PdmVybGF5XG4gICAgfSwgLyojX19QVVJFX18qLyBfcmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIFwiZGF0YS1uZXh0anMtZGlhbG9nLWJhY2tkcm9wXCI6IHRydWUsXG4gICAgICAgIFwiZGF0YS1uZXh0anMtZGlhbG9nLWJhY2tkcm9wLWZpeGVkXCI6IGZpeGVkID8gdHJ1ZSA6IHVuZGVmaW5lZFxuICAgIH0pLCBjaGlsZHJlbik7XG59O1xuXG5pZiAoKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdmdW5jdGlvbicgfHwgKHR5cGVvZiBleHBvcnRzLmRlZmF1bHQgPT09ICdvYmplY3QnICYmIGV4cG9ydHMuZGVmYXVsdCAhPT0gbnVsbCkpICYmIHR5cGVvZiBleHBvcnRzLmRlZmF1bHQuX19lc01vZHVsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMuZGVmYXVsdCwgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xuICBPYmplY3QuYXNzaWduKGV4cG9ydHMuZGVmYXVsdCwgZXhwb3J0cyk7XG4gIG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cy5kZWZhdWx0O1xufVxuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1PdmVybGF5LmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJPdmVybGF5IiwiX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0IiwicmVxdWlyZSIsIl9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQiLCJfbWFpbnRhaW50YWJmb2N1cyIsIl8iLCJfcmVhY3QiLCJfYm9keWxvY2tlciIsInBhcmFtIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJmaXhlZCIsInVzZUVmZmVjdCIsImxvY2siLCJ1bmxvY2siLCJvdmVybGF5Iiwic2V0T3ZlcmxheSIsInVzZVN0YXRlIiwib25PdmVybGF5IiwidXNlQ2FsbGJhY2siLCJlbCIsImhhbmRsZTIiLCJkZWZhdWx0IiwiY29udGV4dCIsImRpc2VuZ2FnZSIsImNyZWF0ZUVsZW1lbnQiLCJyZWYiLCJ1bmRlZmluZWQiLCJfX2VzTW9kdWxlIiwiYXNzaWduIiwibW9kdWxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js": /*!***************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js ***! \***************************************************************************************************************/ /***/ ((module, exports) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\n0 && (0);\nfunction _export(target, all) {\n for(var name in all)Object.defineProperty(target, name, {\n enumerable: true,\n get: all[name]\n });\n}\n_export(exports, {\n lock: function() {\n return lock;\n },\n unlock: function() {\n return unlock;\n }\n});\nlet previousBodyPaddingRight;\nlet previousBodyOverflowSetting;\nlet activeLocks = 0;\nfunction lock() {\n setTimeout(()=>{\n if (activeLocks++ > 0) {\n return;\n }\n const scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n if (scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = \"\" + scrollBarGap + \"px\";\n }\n previousBodyOverflowSetting = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n });\n}\nfunction unlock() {\n setTimeout(()=>{\n if (activeLocks === 0 || --activeLocks !== 0) {\n return;\n }\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n previousBodyPaddingRight = undefined;\n }\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n previousBodyOverflowSetting = undefined;\n }\n });\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=body-locker.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9ib2R5LWxvY2tlci5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRixLQUFNQyxDQUFBQSxDQUdOO0FBQ0EsU0FBU0csUUFBUUMsTUFBTSxFQUFFQyxHQUFHO0lBQ3hCLElBQUksSUFBSUMsUUFBUUQsSUFBSVQsT0FBT0MsY0FBYyxDQUFDTyxRQUFRRSxNQUFNO1FBQ3BEQyxZQUFZO1FBQ1pDLEtBQUtILEdBQUcsQ0FBQ0MsS0FBSztJQUNsQjtBQUNKO0FBQ0FILFFBQVFMLFNBQVM7SUFDYkcsTUFBTTtRQUNGLE9BQU9BO0lBQ1g7SUFDQUMsUUFBUTtRQUNKLE9BQU9BO0lBQ1g7QUFDSjtBQUNBLElBQUlPO0FBQ0osSUFBSUM7QUFDSixJQUFJQyxjQUFjO0FBQ2xCLFNBQVNWO0lBQ0xXLFdBQVc7UUFDUCxJQUFJRCxnQkFBZ0IsR0FBRztZQUNuQjtRQUNKO1FBQ0EsTUFBTUUsZUFBZUMsT0FBT0MsVUFBVSxHQUFHQyxTQUFTQyxlQUFlLENBQUNDLFdBQVc7UUFDN0UsSUFBSUwsZUFBZSxHQUFHO1lBQ2xCSiwyQkFBMkJPLFNBQVNHLElBQUksQ0FBQ0MsS0FBSyxDQUFDQyxZQUFZO1lBQzNETCxTQUFTRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0MsWUFBWSxHQUFHLEtBQUtSLGVBQWU7UUFDM0Q7UUFDQUgsOEJBQThCTSxTQUFTRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0UsUUFBUTtRQUMxRE4sU0FBU0csSUFBSSxDQUFDQyxLQUFLLENBQUNFLFFBQVEsR0FBRztJQUNuQztBQUNKO0FBQ0EsU0FBU3BCO0lBQ0xVLFdBQVc7UUFDUCxJQUFJRCxnQkFBZ0IsS0FBSyxFQUFFQSxnQkFBZ0IsR0FBRztZQUMxQztRQUNKO1FBQ0EsSUFBSUYsNkJBQTZCYyxXQUFXO1lBQ3hDUCxTQUFTRyxJQUFJLENBQUNDLEtBQUssQ0FBQ0MsWUFBWSxHQUFHWjtZQUNuQ0EsMkJBQTJCYztRQUMvQjtRQUNBLElBQUliLGdDQUFnQ2EsV0FBVztZQUMzQ1AsU0FBU0csSUFBSSxDQUFDQyxLQUFLLENBQUNFLFFBQVEsR0FBR1o7WUFDL0JBLDhCQUE4QmE7UUFDbEM7SUFDSjtBQUNKO0FBRUEsSUFBSSxDQUFDLE9BQU96QixRQUFRMEIsT0FBTyxLQUFLLGNBQWUsT0FBTzFCLFFBQVEwQixPQUFPLEtBQUssWUFBWTFCLFFBQVEwQixPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU8xQixRQUFRMEIsT0FBTyxDQUFDQyxVQUFVLEtBQUssYUFBYTtJQUNySzdCLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUTBCLE9BQU8sRUFBRSxjQUFjO1FBQUV6QixPQUFPO0lBQUs7SUFDbkVILE9BQU84QixNQUFNLENBQUM1QixRQUFRMEIsT0FBTyxFQUFFMUI7SUFDL0JFLE9BQU9GLE9BQU8sR0FBR0EsUUFBUTBCLE9BQU87QUFDbEMsRUFFQSx1Q0FBdUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9ienp6LWNvbmZpZy11aS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVhY3QtZGV2LW92ZXJsYXkvaW50ZXJuYWwvY29tcG9uZW50cy9PdmVybGF5L2JvZHktbG9ja2VyLmpzPzhkMWQiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHtcbiAgICB2YWx1ZTogdHJ1ZVxufSk7XG4wICYmIChtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBsb2NrOiBudWxsLFxuICAgIHVubG9jazogbnVsbFxufSk7XG5mdW5jdGlvbiBfZXhwb3J0KHRhcmdldCwgYWxsKSB7XG4gICAgZm9yKHZhciBuYW1lIGluIGFsbClPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBuYW1lLCB7XG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIGdldDogYWxsW25hbWVdXG4gICAgfSk7XG59XG5fZXhwb3J0KGV4cG9ydHMsIHtcbiAgICBsb2NrOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIGxvY2s7XG4gICAgfSxcbiAgICB1bmxvY2s6IGZ1bmN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdW5sb2NrO1xuICAgIH1cbn0pO1xubGV0IHByZXZpb3VzQm9keVBhZGRpbmdSaWdodDtcbmxldCBwcmV2aW91c0JvZHlPdmVyZmxvd1NldHRpbmc7XG5sZXQgYWN0aXZlTG9ja3MgPSAwO1xuZnVuY3Rpb24gbG9jaygpIHtcbiAgICBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgIGlmIChhY3RpdmVMb2NrcysrID4gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNjcm9sbEJhckdhcCA9IHdpbmRvdy5pbm5lcldpZHRoIC0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICBpZiAoc2Nyb2xsQmFyR2FwID4gMCkge1xuICAgICAgICAgICAgcHJldmlvdXNCb2R5UGFkZGluZ1JpZ2h0ID0gZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCA9IFwiXCIgKyBzY3JvbGxCYXJHYXAgKyBcInB4XCI7XG4gICAgICAgIH1cbiAgICAgICAgcHJldmlvdXNCb2R5T3ZlcmZsb3dTZXR0aW5nID0gZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdztcbiAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IFwiaGlkZGVuXCI7XG4gICAgfSk7XG59XG5mdW5jdGlvbiB1bmxvY2soKSB7XG4gICAgc2V0VGltZW91dCgoKT0+e1xuICAgICAgICBpZiAoYWN0aXZlTG9ja3MgPT09IDAgfHwgLS1hY3RpdmVMb2NrcyAhPT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcmV2aW91c0JvZHlQYWRkaW5nUmlnaHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQgPSBwcmV2aW91c0JvZHlQYWRkaW5nUmlnaHQ7XG4gICAgICAgICAgICBwcmV2aW91c0JvZHlQYWRkaW5nUmlnaHQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByZXZpb3VzQm9keU92ZXJmbG93U2V0dGluZyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gcHJldmlvdXNCb2R5T3ZlcmZsb3dTZXR0aW5nO1xuICAgICAgICAgICAgcHJldmlvdXNCb2R5T3ZlcmZsb3dTZXR0aW5nID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfSk7XG59XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWJvZHktbG9ja2VyLmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsIm1vZHVsZSIsImxvY2siLCJ1bmxvY2siLCJfZXhwb3J0IiwidGFyZ2V0IiwiYWxsIiwibmFtZSIsImVudW1lcmFibGUiLCJnZXQiLCJwcmV2aW91c0JvZHlQYWRkaW5nUmlnaHQiLCJwcmV2aW91c0JvZHlPdmVyZmxvd1NldHRpbmciLCJhY3RpdmVMb2NrcyIsInNldFRpbWVvdXQiLCJzY3JvbGxCYXJHYXAiLCJ3aW5kb3ciLCJpbm5lcldpZHRoIiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJjbGllbnRXaWR0aCIsImJvZHkiLCJzdHlsZSIsInBhZGRpbmdSaWdodCIsIm92ZXJmbG93IiwidW5kZWZpbmVkIiwiZGVmYXVsdCIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/body-locker.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js": /*!*********************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js ***! \*********************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"Overlay\", ({\n enumerable: true,\n get: function() {\n return _Overlay.Overlay;\n }\n}));\nconst _Overlay = __webpack_require__(/*! ./Overlay */ \"(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/Overlay.js\");\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=index.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKHNzcikvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL3JlYWN0LWRldi1vdmVybGF5L2ludGVybmFsL2NvbXBvbmVudHMvT3ZlcmxheS9pbmRleC5qcyIsIm1hcHBpbmdzIjoiQUFBYTtBQUNiQSw4Q0FBNkM7SUFDekNHLE9BQU87QUFDWCxDQUFDLEVBQUM7QUFDRkgsMkNBQTBDO0lBQ3RDSSxZQUFZO0lBQ1pDLEtBQUs7UUFDRCxPQUFPQyxTQUFTQyxPQUFPO0lBQzNCO0FBQ0osQ0FBQyxFQUFDO0FBQ0YsTUFBTUQsV0FBV0UsbUJBQU9BLENBQUMsNEhBQVc7QUFFcEMsSUFBSSxDQUFDLE9BQU9OLFFBQVFPLE9BQU8sS0FBSyxjQUFlLE9BQU9QLFFBQVFPLE9BQU8sS0FBSyxZQUFZUCxRQUFRTyxPQUFPLEtBQUssSUFBSSxLQUFNLE9BQU9QLFFBQVFPLE9BQU8sQ0FBQ0MsVUFBVSxLQUFLLGFBQWE7SUFDcktWLE9BQU9DLGNBQWMsQ0FBQ0MsUUFBUU8sT0FBTyxFQUFFLGNBQWM7UUFBRU4sT0FBTztJQUFLO0lBQ25FSCxPQUFPVyxNQUFNLENBQUNULFFBQVFPLE9BQU8sRUFBRVA7SUFDL0JVLE9BQU9WLE9BQU8sR0FBR0EsUUFBUU8sT0FBTztBQUNsQyxFQUVBLGlDQUFpQyIsInNvdXJjZXMiOlsid2VicGFjazovL2J6enotY29uZmlnLXVpLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jbGllbnQvY29tcG9uZW50cy9yZWFjdC1kZXYtb3ZlcmxheS9pbnRlcm5hbC9jb21wb25lbnRzL092ZXJsYXkvaW5kZXguanM/YTg4ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIk92ZXJsYXlcIiwge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIF9PdmVybGF5Lk92ZXJsYXk7XG4gICAgfVxufSk7XG5jb25zdCBfT3ZlcmxheSA9IHJlcXVpcmUoXCIuL092ZXJsYXlcIik7XG5cbmlmICgodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ2Z1bmN0aW9uJyB8fCAodHlwZW9mIGV4cG9ydHMuZGVmYXVsdCA9PT0gJ29iamVjdCcgJiYgZXhwb3J0cy5kZWZhdWx0ICE9PSBudWxsKSkgJiYgdHlwZW9mIGV4cG9ydHMuZGVmYXVsdC5fX2VzTW9kdWxlID09PSAndW5kZWZpbmVkJykge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cy5kZWZhdWx0LCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG4gIE9iamVjdC5hc3NpZ24oZXhwb3J0cy5kZWZhdWx0LCBleHBvcnRzKTtcbiAgbW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzLmRlZmF1bHQ7XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdLCJuYW1lcyI6WyJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImV4cG9ydHMiLCJ2YWx1ZSIsImVudW1lcmFibGUiLCJnZXQiLCJfT3ZlcmxheSIsIk92ZXJsYXkiLCJyZXF1aXJlIiwiZGVmYXVsdCIsIl9fZXNNb2R1bGUiLCJhc3NpZ24iLCJtb2R1bGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/index.js\n"); /***/ }), /***/ "(ssr)/./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js": /*!***********************************************************************************************************************!*\ !*** ./node_modules/next/dist/client/components/react-dev-overlay/internal/components/Overlay/maintain--tab-focus.js ***! \***********************************************************************************************************************/ /***/ ((module, exports, __webpack_require__) => { "use strict"; eval("/* eslint-disable */ // @ts-nocheck\n// Copied from https://github.com/medialize/ally.js\n// License: MIT\n// Copyright (c) 2015 Rodney Rehm\n//\n// Entrypoint: ally.js/maintain/tab-focus\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return _default;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(ssr)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _platform = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/platform */ \"(ssr)/./node_modules/next/dist/compiled/platform/platform.js\"));\nconst _cssescape = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/compiled/css.escape */ \"(ssr)/./node_modules/next/dist/compiled/css.escape/css.escape.js\"));\n// input may be undefined, selector-tring, Node, NodeList, HTMLCollection, array of Nodes\n// yes, to some extent this is a bad replica of jQuery's constructor function\nfunction nodeArray(input) {\n if (!input) {\n return [];\n }\n if (Array.isArray(input)) {\n return input;\n }\n // instanceof Node - does not work with iframes\n if (input.nodeType !== undefined) {\n return [\n input\n ];\n }\n if (typeof input === \"string\") {\n input = document.querySelectorAll(input);\n }\n if (input.length !== undefined) {\n return [].slice.call(input, 0);\n }\n throw new TypeError(\"unexpected input \" + String(input));\n}\nfunction contextToElement(_ref) {\n var context = _ref.context, _ref$label = _ref.label, label = _ref$label === undefined ? \"context-to-element\" : _ref$label, resolveDocument = _ref.resolveDocument, defaultToDocument = _ref.defaultToDocument;\n var element = nodeArray(context)[0];\n if (resolveDocument && element && element.nodeType === Node.DOCUMENT_NODE) {\n element = element.documentElement;\n }\n if (!element && defaultToDocument) {\n return document.documentElement;\n }\n if (!element) {\n throw new TypeError(label + \" requires valid options.context\");\n }\n if (element.nodeType !== Node.ELEMENT_NODE && element.nodeType !== Node.DOCUMENT_FRAGMENT_NODE) {\n throw new TypeError(label + \" requires options.context to be an Element\");\n }\n return element;\n}\nfunction getShadowHost() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context;\n var element = contextToElement({\n label: \"get/shadow-host\",\n context: context\n });\n // walk up to the root\n var container = null;\n while(element){\n container = element;\n element = element.parentNode;\n }\n // https://developer.mozilla.org/docs/Web/API/Node.nodeType\n // NOTE: Firefox 34 does not expose ShadowRoot.host (but 37 does)\n if (container.nodeType === container.DOCUMENT_FRAGMENT_NODE && container.host) {\n // the root is attached to a fragment node that has a host\n return container.host;\n }\n return null;\n}\nfunction getDocument(node) {\n if (!node) {\n return document;\n }\n if (node.nodeType === Node.DOCUMENT_NODE) {\n return node;\n }\n return node.ownerDocument || document;\n}\nfunction isActiveElement(context) {\n var element = contextToElement({\n label: \"is/active-element\",\n resolveDocument: true,\n context: context\n });\n var _document = getDocument(element);\n if (_document.activeElement === element) {\n return true;\n }\n var shadowHost = getShadowHost({\n context: element\n });\n if (shadowHost && shadowHost.shadowRoot.activeElement === element) {\n return true;\n }\n return false;\n}\n// [elem, elem.parent, elem.parent.parent, …, html]\n// will not contain the shadowRoot (DOCUMENT_FRAGMENT_NODE) and shadowHost\nfunction getParents() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context;\n var list = [];\n var element = contextToElement({\n label: \"get/parents\",\n context: context\n });\n while(element){\n list.push(element);\n // IE does know support parentElement on SVGElement\n element = element.parentNode;\n if (element && element.nodeType !== Node.ELEMENT_NODE) {\n element = null;\n }\n }\n return list;\n}\n// Element.prototype.matches may be available at a different name\n// https://developer.mozilla.org/en/docs/Web/API/Element/matches\nvar names = [\n \"matches\",\n \"webkitMatchesSelector\",\n \"mozMatchesSelector\",\n \"msMatchesSelector\"\n];\nvar name = null;\nfunction findMethodName(element) {\n names.some(function(_name) {\n if (!element[_name]) {\n return false;\n }\n name = _name;\n return true;\n });\n}\nfunction elementMatches(element, selector) {\n if (!name) {\n findMethodName(element);\n }\n return element[name](selector);\n}\n// deep clone of original platform\nvar platform = JSON.parse(JSON.stringify(_platform.default));\n// operating system\nvar os = platform.os.family || \"\";\nvar ANDROID = os === \"Android\";\nvar WINDOWS = os.slice(0, 7) === \"Windows\";\nvar OSX = os === \"OS X\";\nvar IOS = os === \"iOS\";\n// layout\nvar BLINK = platform.layout === \"Blink\";\nvar GECKO = platform.layout === \"Gecko\";\nvar TRIDENT = platform.layout === \"Trident\";\nvar EDGE = platform.layout === \"EdgeHTML\";\nvar WEBKIT = platform.layout === \"WebKit\";\n// browser version (not layout engine version!)\nvar version = parseFloat(platform.version);\nvar majorVersion = Math.floor(version);\nplatform.majorVersion = majorVersion;\nplatform.is = {\n // operating system\n ANDROID: ANDROID,\n WINDOWS: WINDOWS,\n OSX: OSX,\n IOS: IOS,\n // layout\n BLINK: BLINK,\n GECKO: GECKO,\n TRIDENT: TRIDENT,\n EDGE: EDGE,\n WEBKIT: WEBKIT,\n // INTERNET EXPLORERS\n IE9: TRIDENT && majorVersion === 9,\n IE10: TRIDENT && majorVersion === 10,\n IE11: TRIDENT && majorVersion === 11\n};\nfunction before() {\n var data = {\n // remember what had focus to restore after test\n activeElement: document.activeElement,\n // remember scroll positions to restore after test\n windowScrollTop: window.scrollTop,\n windowScrollLeft: window.scrollLeft,\n bodyScrollTop: document.body.scrollTop,\n bodyScrollLeft: document.body.scrollLeft\n };\n // wrap tests in an element hidden from screen readers to prevent them\n // from announcing focus, which can be quite irritating to the user\n var iframe = document.createElement(\"iframe\");\n iframe.setAttribute(\"style\", \"position:absolute; position:fixed; top:0; left:-2px; width:1px; height:1px; overflow:hidden;\");\n iframe.setAttribute(\"aria-live\", \"off\");\n iframe.setAttribute(\"aria-busy\", \"true\");\n iframe.setAttribute(\"aria-hidden\", \"true\");\n document.body.appendChild(iframe);\n var _window = iframe.contentWindow;\n var _document = _window.document;\n _document.open();\n _document.close();\n var wrapper = _document.createElement(\"div\");\n _document.body.appendChild(wrapper);\n data.iframe = iframe;\n data.wrapper = wrapper;\n data.window = _window;\n data.document = _document;\n return data;\n}\n// options.element:\n// {string} element name\n// {function} callback(wrapper, document) to generate an element\n// options.mutate: (optional)\n// {function} callback(element, wrapper, document) to manipulate element prior to focus-test.\n// Can return DOMElement to define focus target (default: element)\n// options.validate: (optional)\n// {function} callback(element, focusTarget, document) to manipulate test-result\nfunction test(data, options) {\n // make sure we operate on a clean slate\n data.wrapper.innerHTML = \"\";\n // create dummy element to test focusability of\n var element = typeof options.element === \"string\" ? data.document.createElement(options.element) : options.element(data.wrapper, data.document);\n // allow callback to further specify dummy element\n // and optionally define element to focus\n var focus = options.mutate && options.mutate(element, data.wrapper, data.document);\n if (!focus && focus !== false) {\n focus = element;\n }\n // element needs to be part of the DOM to be focusable\n !element.parentNode && data.wrapper.appendChild(element);\n // test if the element with invalid tabindex can be focused\n focus && focus.focus && focus.focus();\n // validate test's result\n return options.validate ? options.validate(element, focus, data.document) : data.document.activeElement === focus;\n}\nfunction after(data) {\n // restore focus to what it was before test and cleanup\n if (data.activeElement === document.body) {\n document.activeElement && document.activeElement.blur && document.activeElement.blur();\n if (platform.is.IE10) {\n // IE10 does not redirect focus to when the activeElement is removed\n document.body.focus();\n }\n } else {\n data.activeElement && data.activeElement.focus && data.activeElement.focus();\n }\n document.body.removeChild(data.iframe);\n // restore scroll position\n window.scrollTop = data.windowScrollTop;\n window.scrollLeft = data.windowScrollLeft;\n document.body.scrollTop = data.bodyScrollTop;\n document.body.scrollLeft = data.bodyScrollLeft;\n}\nfunction detectFocus(tests) {\n var data = before();\n var results = {};\n Object.keys(tests).map(function(key) {\n results[key] = test(data, tests[key]);\n });\n after(data);\n return results;\n}\n// this file is overwritten by `npm run build:pre`\nvar version$1 = \"1.4.1\";\n/*\n Facility to cache test results in localStorage.\n\n USAGE:\n cache.get('key');\n cache.set('key', 'value');\n */ function readLocalStorage(key) {\n // allow reading from storage to retrieve previous support results\n // even while the document does not have focus\n var data = void 0;\n try {\n data = window.localStorage && window.localStorage.getItem(key);\n data = data ? JSON.parse(data) : {};\n } catch (e) {\n data = {};\n }\n return data;\n}\nfunction writeLocalStorage(key, value) {\n if (!document.hasFocus()) {\n // if the document does not have focus when tests are executed, focus() may\n // not be handled properly and events may not be dispatched immediately.\n // This can happen when a document is reloaded while Developer Tools have focus.\n try {\n window.localStorage && window.localStorage.removeItem(key);\n } catch (e) {\n // ignore\n }\n return;\n }\n try {\n window.localStorage && window.localStorage.setItem(key, JSON.stringify(value));\n } catch (e) {\n // ignore\n }\n}\nvar userAgent = false || \"\";\nvar cacheKey = \"ally-supports-cache\";\nvar cache = readLocalStorage(cacheKey);\n// update the cache if ally or the user agent changed (newer version, etc)\nif (cache.userAgent !== userAgent || cache.version !== version$1) {\n cache = {};\n}\ncache.userAgent = userAgent;\ncache.version = version$1;\nvar cache$1 = {\n get: function get() {\n return cache;\n },\n set: function set(values) {\n Object.keys(values).forEach(function(key) {\n cache[key] = values[key];\n });\n cache.time = new Date().toISOString();\n writeLocalStorage(cacheKey, cache);\n }\n};\nfunction cssShadowPiercingDeepCombinator() {\n var combinator = void 0;\n // see https://dev.w3.org/csswg/css-scoping-1/#deep-combinator\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1117572\n // https://code.google.com/p/chromium/issues/detail?id=446051\n try {\n document.querySelector(\"html >>> :first-child\");\n combinator = \">>>\";\n } catch (noArrowArrowArrow) {\n try {\n // old syntax supported at least up to Chrome 41\n // https://code.google.com/p/chromium/issues/detail?id=446051\n document.querySelector(\"html /deep/ :first-child\");\n combinator = \"/deep/\";\n } catch (noDeep) {\n combinator = \"\";\n }\n }\n return combinator;\n}\nvar gif = \"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\";\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaImgTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return element.querySelector(\"area\");\n }\n};\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return false;\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // fixes https://github.com/medialize/ally.js/issues/35\n // Firefox loads the DataURI asynchronously, causing a false-negative\n return true;\n }\n var focus = element.querySelector(\"area\");\n focus.focus();\n return _document.activeElement === focus;\n }\n};\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusAreaWithoutHref = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '' + '\"\"';\n return element.querySelector(\"area\");\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // fixes https://github.com/medialize/ally.js/issues/35\n // Firefox loads the DataURI asynchronously, causing a false-negative\n return true;\n }\n return _document.activeElement === focusTarget;\n }\n};\nvar focusAudioWithoutControls = {\n name: \"can-focus-audio-without-controls\",\n element: \"audio\",\n mutate: function mutate(element) {\n try {\n // invalid media file can trigger warning in console, data-uri to prevent HTTP request\n element.setAttribute(\"src\", gif);\n } catch (e) {\n // IE9 may throw \"Error: Not implemented\"\n }\n }\n};\nvar invalidGif = \"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ\";\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusBrokenImageMap = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n return element.querySelector(\"area\");\n }\n};\n// Children of focusable elements with display:flex are focusable in IE10-11\nvar focusChildrenOfFocusableFlexbox = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"-1\");\n element.setAttribute(\"style\", \"display: -webkit-flex; display: -ms-flexbox; display: flex;\");\n element.innerHTML = 'hello';\n return element.querySelector(\"span\");\n }\n};\n// fieldset[tabindex=0][disabled] should not be focusable, but Blink and WebKit disagree\n// @specification https://www.w3.org/TR/html5/disabled-elements.html#concept-element-disabled\n// @browser-issue Chromium https://crbug.com/453847\n// @browser-issue WebKit https://bugs.webkit.org/show_bug.cgi?id=141086\nvar focusFieldsetDisabled = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", 0);\n element.setAttribute(\"disabled\", \"disabled\");\n }\n};\nvar focusFieldset = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.innerHTML = \"legend

content

\";\n }\n};\n// elements with display:flex are focusable in IE10-11\nvar focusFlexboxContainer = {\n element: \"span\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"display: -webkit-flex; display: -ms-flexbox; display: flex;\");\n element.innerHTML = 'hello';\n }\n};\n// form[tabindex=0][disabled] should be focusable as the\n// specification doesn't know the disabled attribute on the form element\n// @specification https://www.w3.org/TR/html5/forms.html#the-form-element\nvar focusFormDisabled = {\n element: \"form\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", 0);\n element.setAttribute(\"disabled\", \"disabled\");\n }\n};\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// fixes https://github.com/medialize/ally.js/issues/20\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-ismap\nvar focusImgIsmap = {\n element: \"a\",\n mutate: function mutate(element) {\n element.href = \"#void\";\n element.innerHTML = '\"\"';\n return element.querySelector(\"img\");\n }\n};\n// NOTE: https://github.com/medialize/ally.js/issues/35\n// https://developer.mozilla.org/docs/Web/HTML/Element/img#attr-usemap\nvar focusImgUsemapTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n return element.querySelector(\"img\");\n }\n};\nvar focusInHiddenIframe = {\n element: function element(wrapper, _document) {\n var iframe = _document.createElement(\"iframe\");\n // iframe must be part of the DOM before accessing the contentWindow is possible\n wrapper.appendChild(iframe);\n // create the iframe's default document ()\n var iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.close();\n return iframe;\n },\n mutate: function mutate(iframe) {\n iframe.style.visibility = \"hidden\";\n var iframeDocument = iframe.contentWindow.document;\n var input = iframeDocument.createElement(\"input\");\n iframeDocument.body.appendChild(input);\n return input;\n },\n validate: function validate(iframe) {\n var iframeDocument = iframe.contentWindow.document;\n var focus = iframeDocument.querySelector(\"input\");\n return iframeDocument.activeElement === focus;\n }\n};\nvar result = !platform.is.WEBKIT;\nfunction focusInZeroDimensionObject() {\n return result;\n}\n// Firefox allows *any* value and treats invalid values like tabindex=\"-1\"\n// @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\nvar focusInvalidTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"invalid-value\");\n }\n};\nvar focusLabelTabindex = {\n element: \"label\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"-1\");\n },\n validate: function validate(element, focusTarget, _document) {\n // force layout in Chrome 49, otherwise the element won't be focusable\n /* eslint-disable no-unused-vars */ var variableToPreventDeadCodeElimination = element.offsetHeight;\n /* eslint-enable no-unused-vars */ element.focus();\n return _document.activeElement === element;\n }\n};\nvar svg = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtb\" + \"G5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBpZD0ic3ZnIj48dGV4dCB4PSIxMCIgeT0iMjAiIGlkPSJ\" + \"zdmctbGluay10ZXh0Ij50ZXh0PC90ZXh0Pjwvc3ZnPg==\";\n// Note: IE10 on BrowserStack does not like this test\nvar focusObjectSvgHidden = {\n element: \"object\",\n mutate: function mutate(element) {\n element.setAttribute(\"type\", \"image/svg+xml\");\n element.setAttribute(\"data\", svg);\n element.setAttribute(\"width\", \"200\");\n element.setAttribute(\"height\", \"50\");\n element.style.visibility = \"hidden\";\n }\n};\n// Note: IE10 on BrowserStack does not like this test\nvar focusObjectSvg = {\n name: \"can-focus-object-svg\",\n element: \"object\",\n mutate: function mutate(element) {\n element.setAttribute(\"type\", \"image/svg+xml\");\n element.setAttribute(\"data\", svg);\n element.setAttribute(\"width\", \"200\");\n element.setAttribute(\"height\", \"50\");\n },\n validate: function validate(element, focusTarget, _document) {\n if (platform.is.GECKO) {\n // Firefox seems to be handling the object creation asynchronously and thereby produces a false negative test result.\n // Because we know Firefox is able to focus object elements referencing SVGs, we simply cheat by sniffing the user agent string\n return true;\n }\n return _document.activeElement === element;\n }\n};\n// Every Environment except IE9 considers SWF objects focusable\nvar result$1 = !platform.is.IE9;\nfunction focusObjectSwf() {\n return result$1;\n}\nvar focusRedirectImgUsemap = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = '' + '\"\"';\n // focus the , not the
\n return element.querySelector(\"img\");\n },\n validate: function validate(element, focusTarget, _document) {\n var target = element.querySelector(\"area\");\n return _document.activeElement === target;\n }\n};\n// see https://jsbin.com/nenirisage/edit?html,js,console,output\nvar focusRedirectLegend = {\n element: \"fieldset\",\n mutate: function mutate(element) {\n element.innerHTML = 'legend';\n // take care of focus in validate();\n return false;\n },\n validate: function validate(element, focusTarget, _document) {\n var focusable = element.querySelector('input[tabindex=\"-1\"]');\n var tabbable = element.querySelector('input[tabindex=\"0\"]');\n // Firefox requires this test to focus the
first, while this is not necessary in\n // https://jsbin.com/nenirisage/edit?html,js,console,output\n element.focus();\n element.querySelector(\"legend\").focus();\n return _document.activeElement === focusable && \"focusable\" || _document.activeElement === tabbable && \"tabbable\" || \"\";\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollBody = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px; overflow: auto;\");\n element.innerHTML = '
scrollable content
';\n return element.querySelector(\"div\");\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollContainerWithoutOverflow = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px;\");\n element.innerHTML = '
scrollable content
';\n }\n};\n// https://github.com/medialize/ally.js/issues/21\nvar focusScrollContainer = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"style\", \"width: 100px; height: 50px; overflow: auto;\");\n element.innerHTML = '
scrollable content
';\n }\n};\nvar focusSummary = {\n element: \"details\",\n mutate: function mutate(element) {\n element.innerHTML = \"foo

content

\";\n return element.firstElementChild;\n }\n};\nfunction makeFocusableForeignObject() {\n // Constructs \n // without raising a Trusted Types violation\n var foreignObject = document.createElementNS(\"http://www.w3.org/2000/svg\", \"foreignObject\");\n foreignObject.width.baseVal.value = 30;\n foreignObject.height.baseVal.value = 30;\n foreignObject.appendChild(document.createElement(\"input\"));\n foreignObject.lastChild.type = \"text\";\n return foreignObject;\n}\nfunction focusSvgForeignObjectHack(element) {\n // Edge13, Edge14: foreignObject focus hack\n // https://jsbin.com/kunehinugi/edit?html,js,output\n // https://jsbin.com/fajagi/3/edit?html,js,output\n var isSvgElement = element.ownerSVGElement || element.nodeName.toLowerCase() === \"svg\";\n if (!isSvgElement) {\n return false;\n }\n // inject and focus an element into the SVG element to receive focus\n var foreignObject = makeFocusableForeignObject();\n element.appendChild(foreignObject);\n var input = foreignObject.querySelector(\"input\");\n input.focus();\n // upon disabling the activeElement, IE and Edge\n // will not shift focus to like all the other\n // browsers, but instead find the first focusable\n // ancestor and shift focus to that\n input.disabled = true;\n // clean up\n element.removeChild(foreignObject);\n return true;\n}\nfunction generate(element) {\n return '' + element + \"\";\n}\nfunction focus(element) {\n if (element.focus) {\n return;\n }\n try {\n HTMLElement.prototype.focus.call(element);\n } catch (e) {\n focusSvgForeignObjectHack(element);\n }\n}\nfunction validate(element, focusTarget, _document) {\n focus(focusTarget);\n return _document.activeElement === focusTarget;\n}\nvar focusSvgFocusableAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgTabindexAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgNegativeTabindexAttribute = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('a');\n return element.querySelector(\"text\");\n },\n validate: validate\n};\nvar focusSvgUseTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate([\n 'link',\n ''\n ].join(\"\"));\n return element.querySelector(\"use\");\n },\n validate: validate\n};\nvar focusSvgForeignobjectTabindex = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate('');\n // Safari 8's quersSelector() can't identify foreignObject, but getElementyByTagName() can\n return element.querySelector(\"foreignObject\") || element.getElementsByTagName(\"foreignObject\")[0];\n },\n validate: validate\n};\n// Firefox seems to be handling the SVG-document-in-iframe creation asynchronously\n// and thereby produces a false negative test result. Thus the test is pointless\n// and we resort to UA sniffing once again.\n// see http://jsbin.com/vunadohoko/1/edit?js,console,output\nvar result$2 = Boolean(platform.is.GECKO && typeof SVGElement !== \"undefined\" && SVGElement.prototype.focus);\nfunction focusSvgInIframe() {\n return result$2;\n}\nvar focusSvg = {\n element: \"div\",\n mutate: function mutate(element) {\n element.innerHTML = generate(\"\");\n return element.firstChild;\n },\n validate: validate\n};\n// Firefox allows *any* value and treats invalid values like tabindex=\"-1\"\n// @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\nvar focusTabindexTrailingCharacters = {\n element: \"div\",\n mutate: function mutate(element) {\n element.setAttribute(\"tabindex\", \"3x\");\n }\n};\nvar focusTable = {\n element: \"table\",\n mutate: function mutate(element, wrapper, _document) {\n // IE9 has a problem replacing TBODY contents with innerHTML.\n // https://stackoverflow.com/a/8097055/515124\n // element.innerHTML = 'cell';\n var fragment = _document.createDocumentFragment();\n fragment.innerHTML = \"cell\";\n element.appendChild(fragment);\n }\n};\nvar focusVideoWithoutControls = {\n element: \"video\",\n mutate: function mutate(element) {\n try {\n // invalid media file can trigger warning in console, data-uri to prevent HTTP request\n element.setAttribute(\"src\", gif);\n } catch (e) {\n // IE9 may throw \"Error: Not implemented\"\n }\n }\n};\n// https://jsbin.com/vafaba/3/edit?html,js,console,output\nvar result$3 = platform.is.GECKO || platform.is.TRIDENT || platform.is.EDGE;\nfunction tabsequenceAreaAtImgPosition() {\n return result$3;\n}\nvar testCallbacks = {\n cssShadowPiercingDeepCombinator: cssShadowPiercingDeepCombinator,\n focusInZeroDimensionObject: focusInZeroDimensionObject,\n focusObjectSwf: focusObjectSwf,\n focusSvgInIframe: focusSvgInIframe,\n tabsequenceAreaAtImgPosition: tabsequenceAreaAtImgPosition\n};\nvar testDescriptions = {\n focusAreaImgTabindex: focusAreaImgTabindex,\n focusAreaTabindex: focusAreaTabindex,\n focusAreaWithoutHref: focusAreaWithoutHref,\n focusAudioWithoutControls: focusAudioWithoutControls,\n focusBrokenImageMap: focusBrokenImageMap,\n focusChildrenOfFocusableFlexbox: focusChildrenOfFocusableFlexbox,\n focusFieldsetDisabled: focusFieldsetDisabled,\n focusFieldset: focusFieldset,\n focusFlexboxContainer: focusFlexboxContainer,\n focusFormDisabled: focusFormDisabled,\n focusImgIsmap: focusImgIsmap,\n focusImgUsemapTabindex: focusImgUsemapTabindex,\n focusInHiddenIframe: focusInHiddenIframe,\n focusInvalidTabindex: focusInvalidTabindex,\n focusLabelTabindex: focusLabelTabindex,\n focusObjectSvg: focusObjectSvg,\n focusObjectSvgHidden: focusObjectSvgHidden,\n focusRedirectImgUsemap: focusRedirectImgUsemap,\n focusRedirectLegend: focusRedirectLegend,\n focusScrollBody: focusScrollBody,\n focusScrollContainerWithoutOverflow: focusScrollContainerWithoutOverflow,\n focusScrollContainer: focusScrollContainer,\n focusSummary: focusSummary,\n focusSvgFocusableAttribute: focusSvgFocusableAttribute,\n focusSvgTabindexAttribute: focusSvgTabindexAttribute,\n focusSvgNegativeTabindexAttribute: focusSvgNegativeTabindexAttribute,\n focusSvgUseTabindex: focusSvgUseTabindex,\n focusSvgForeignobjectTabindex: focusSvgForeignobjectTabindex,\n focusSvg: focusSvg,\n focusTabindexTrailingCharacters: focusTabindexTrailingCharacters,\n focusTable: focusTable,\n focusVideoWithoutControls: focusVideoWithoutControls\n};\nfunction executeTests() {\n var results = detectFocus(testDescriptions);\n Object.keys(testCallbacks).forEach(function(key) {\n results[key] = testCallbacks[key]();\n });\n return results;\n}\nvar supportsCache = null;\nfunction _supports() {\n if (supportsCache) {\n return supportsCache;\n }\n supportsCache = cache$1.get();\n if (!supportsCache.time) {\n cache$1.set(executeTests());\n supportsCache = cache$1.get();\n }\n return supportsCache;\n}\nvar supports = void 0;\n// https://www.w3.org/TR/html5/infrastructure.html#rules-for-parsing-integers\n// NOTE: all browsers agree to allow trailing spaces as well\nvar validIntegerPatternNoTrailing = /^\\s*(-|\\+)?[0-9]+\\s*$/;\nvar validIntegerPatternWithTrailing = /^\\s*(-|\\+)?[0-9]+.*$/;\nfunction isValidTabindex(context) {\n if (!supports) {\n supports = _supports();\n }\n var validIntegerPattern = supports.focusTabindexTrailingCharacters ? validIntegerPatternWithTrailing : validIntegerPatternNoTrailing;\n var element = contextToElement({\n label: \"is/valid-tabindex\",\n resolveDocument: true,\n context: context\n });\n // Edge 14 has a capitalization problem on SVG elements,\n // see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9282058/\n var hasTabindex = element.hasAttribute(\"tabindex\");\n var hasTabIndex = element.hasAttribute(\"tabIndex\");\n if (!hasTabindex && !hasTabIndex) {\n return false;\n }\n // older Firefox and Internet Explorer don't support tabindex on SVG elements\n var isSvgElement = element.ownerSVGElement || element.nodeName.toLowerCase() === \"svg\";\n if (isSvgElement && !supports.focusSvgTabindexAttribute) {\n return false;\n }\n // @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\n if (supports.focusInvalidTabindex) {\n return true;\n }\n // an element matches the tabindex selector even if its value is invalid\n var tabindex = element.getAttribute(hasTabindex ? \"tabindex\" : \"tabIndex\");\n // IE11 parses tabindex=\"\" as the value \"-32768\"\n // @browser-issue Trident https://connect.microsoft.com/IE/feedback/details/1072965\n if (tabindex === \"-32768\") {\n return false;\n }\n return Boolean(tabindex && validIntegerPattern.test(tabindex));\n}\nfunction tabindexValue(element) {\n if (!isValidTabindex(element)) {\n return null;\n }\n // Edge 14 has a capitalization problem on SVG elements,\n // see https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/9282058/\n var hasTabindex = element.hasAttribute(\"tabindex\");\n var attributeName = hasTabindex ? \"tabindex\" : \"tabIndex\";\n // @browser-issue Gecko https://bugzilla.mozilla.org/show_bug.cgi?id=1128054\n var tabindex = parseInt(element.getAttribute(attributeName), 10);\n return isNaN(tabindex) ? -1 : tabindex;\n}\n// this is a shared utility file for focus-relevant.js and tabbable.js\n// separate testing of this file's functions is not necessary,\n// as they're implicitly tested by way of the consumers\nfunction isUserModifyWritable(style) {\n // https://www.w3.org/TR/1999/WD-css3-userint-19990916#user-modify\n // https://github.com/medialize/ally.js/issues/17\n var userModify = style.webkitUserModify || \"\";\n return Boolean(userModify && userModify.indexOf(\"write\") !== -1);\n}\nfunction hasCssOverflowScroll(style) {\n return [\n style.getPropertyValue(\"overflow\"),\n style.getPropertyValue(\"overflow-x\"),\n style.getPropertyValue(\"overflow-y\")\n ].some(function(overflow) {\n return overflow === \"auto\" || overflow === \"scroll\";\n });\n}\nfunction hasCssDisplayFlex(style) {\n return style.display.indexOf(\"flex\") > -1;\n}\nfunction isScrollableContainer(element, nodeName, parentNodeName, parentStyle) {\n if (nodeName !== \"div\" && nodeName !== \"span\") {\n // Internet Explorer advances scrollable containers and bodies to focusable\n // only if the scrollable container is
or - this does *not*\n // happen for
,
, …\n return false;\n }\n if (parentNodeName && parentNodeName !== \"div\" && parentNodeName !== \"span\" && !hasCssOverflowScroll(parentStyle)) {\n return false;\n }\n return element.offsetHeight < element.scrollHeight || element.offsetWidth < element.scrollWidth;\n}\nvar supports$1 = void 0;\nfunction isFocusRelevantRules() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, context = _ref.context, _ref$except = _ref.except, except = _ref$except === undefined ? {\n flexbox: false,\n scrollable: false,\n shadow: false\n } : _ref$except;\n if (!supports$1) {\n supports$1 = _supports();\n }\n var element = contextToElement({\n label: \"is/focus-relevant\",\n resolveDocument: true,\n context: context\n });\n if (!except.shadow && element.shadowRoot) {\n // a ShadowDOM host receives focus when the focus moves to its content\n return true;\n }\n var nodeName = element.nodeName.toLowerCase();\n if (nodeName === \"input\" && element.type === \"hidden\") {\n // input[type=\"hidden\"] supports.cannot be focused\n return false;\n }\n if (nodeName === \"input\" || nodeName === \"select\" || nodeName === \"button\" || nodeName === \"textarea\") {\n return true;\n }\n if (nodeName === \"legend\" && supports$1.focusRedirectLegend) {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"label\") {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"area\") {\n // specifics filtered in is/focusable\n return true;\n }\n if (nodeName === \"a\" && element.hasAttribute(\"href\")) {\n return true;\n }\n if (nodeName === \"object\" && element.hasAttribute(\"usemap\")) {\n // object[usemap] is not focusable in any browser\n return false;\n }\n if (nodeName === \"object\") {\n var svgType = element.getAttribute(\"type\");\n if (!supports$1.focusObjectSvg && svgType === \"image/svg+xml\") {\n // object[type=\"image/svg+xml\"] is not focusable in Internet Explorer\n return false;\n } else if (!supports$1.focusObjectSwf && svgType === \"application/x-shockwave-flash\") {\n // object[type=\"application/x-shockwave-flash\"] is not focusable in Internet Explorer 9\n return false;\n }\n }\n if (nodeName === \"iframe\" || nodeName === \"object\") {\n // browsing context containers\n return true;\n }\n if (nodeName === \"embed\" || nodeName === \"keygen\") {\n // embed is considered focus-relevant but not focusable\n // see https://github.com/medialize/ally.js/issues/82\n return true;\n }\n if (element.hasAttribute(\"contenteditable\")) {\n // also see CSS property user-modify below\n return true;\n }\n if (nodeName === \"audio\" && (supports$1.focusAudioWithoutControls || element.hasAttribute(\"controls\"))) {\n return true;\n }\n if (nodeName === \"video\" && (supports$1.focusVideoWithoutControls || element.hasAttribute(\"controls\"))) {\n return true;\n }\n if (supports$1.focusSummary && nodeName === \"summary\") {\n return true;\n }\n var validTabindex = isValidTabindex(element);\n if (nodeName === \"img\" && element.hasAttribute(\"usemap\")) {\n // Gecko, Trident and Edge do not allow an image with an image map and tabindex to be focused,\n // it appears the tabindex is overruled so focus is still forwarded to the \n return validTabindex && supports$1.focusImgUsemapTabindex || supports$1.focusRedirectImgUsemap;\n }\n if (supports$1.focusTable && (nodeName === \"table\" || nodeName === \"td\")) {\n // IE10-11 supports.can focus and
\n return true;\n }\n if (supports$1.focusFieldset && nodeName === \"fieldset\") {\n // IE10-11 supports.can focus
\n return true;\n }\n var isSvgElement = nodeName === \"svg\";\n var isSvgContent = element.ownerSVGElement;\n var focusableAttribute = element.getAttribute(\"focusable\");\n var tabindex = tabindexValue(element);\n if (nodeName === \"use\" && tabindex !== null && !supports$1.focusSvgUseTabindex) {\n // cannot be made focusable by adding a tabindex attribute anywhere but Blink and WebKit\n return false;\n }\n if (nodeName === \"foreignobject\") {\n // can only be made focusable in Blink and WebKit\n return tabindex !== null && supports$1.focusSvgForeignobjectTabindex;\n }\n if (elementMatches(element, \"svg a\") && element.hasAttribute(\"xlink:href\")) {\n return true;\n }\n if ((isSvgElement || isSvgContent) && element.focus && !supports$1.focusSvgNegativeTabindexAttribute && tabindex < 0) {\n // Firefox 51 and 52 treat any natively tabbable SVG element with\n // tabindex=\"-1\" as tabbable and everything else as inert\n // see https://bugzilla.mozilla.org/show_bug.cgi?id=1302340\n return false;\n }\n if (isSvgElement) {\n return validTabindex || supports$1.focusSvg || supports$1.focusSvgInIframe || // Internet Explorer understands the focusable attribute introduced in SVG Tiny 1.2\n Boolean(supports$1.focusSvgFocusableAttribute && focusableAttribute && focusableAttribute === \"true\");\n }\n if (isSvgContent) {\n if (supports$1.focusSvgTabindexAttribute && validTabindex) {\n return true;\n }\n if (supports$1.focusSvgFocusableAttribute) {\n // Internet Explorer understands the focusable attribute introduced in SVG Tiny 1.2\n return focusableAttribute === \"true\";\n }\n }\n // https://www.w3.org/TR/html5/editing.html#sequential-focus-navigation-and-the-tabindex-attribute\n if (validTabindex) {\n return true;\n }\n var style = window.getComputedStyle(element, null);\n if (isUserModifyWritable(style)) {\n return true;\n }\n if (supports$1.focusImgIsmap && nodeName === \"img\" && element.hasAttribute(\"ismap\")) {\n // IE10-11 considers the in focusable\n // https://github.com/medialize/ally.js/issues/20\n var hasLinkParent = getParents({\n context: element\n }).some(function(parent) {\n return parent.nodeName.toLowerCase() === \"a\" && parent.hasAttribute(\"href\");\n });\n if (hasLinkParent) {\n return true;\n }\n }\n // https://github.com/medialize/ally.js/issues/21\n if (!except.scrollable && supports$1.focusScrollContainer) {\n if (supports$1.focusScrollContainerWithoutOverflow) {\n // Internet Explorer does will consider the scrollable area focusable\n // if the element is a
or a and it is in fact scrollable,\n // regardless of the CSS overflow property\n if (isScrollableContainer(element, nodeName)) {\n return true;\n }\n } else if (hasCssOverflowScroll(style)) {\n // Firefox requires proper overflow setting, IE does not necessarily\n // https://developer.mozilla.org/docs/Web/CSS/overflow\n return true;\n }\n }\n if (!except.flexbox && supports$1.focusFlexboxContainer && hasCssDisplayFlex(style)) {\n // elements with display:flex are focusable in IE10-11\n return true;\n }\n var parent = element.parentElement;\n if (!except.scrollable && parent) {\n var parentNodeName = parent.nodeName.toLowerCase();\n var parentStyle = window.getComputedStyle(parent, null);\n if (supports$1.focusScrollBody && isScrollableContainer(parent, nodeName, parentNodeName, parentStyle)) {\n // scrollable bodies are focusable Internet Explorer\n // https://github.com/medialize/ally.js/issues/21\n return true;\n }\n // Children of focusable elements with display:flex are focusable in IE10-11\n if (supports$1.focusChildrenOfFocusableFlexbox) {\n if (hasCssDisplayFlex(parentStyle)) {\n return true;\n }\n }\n }\n // NOTE: elements marked as inert are not focusable,\n // but that property is not exposed to the DOM\n // https://www.w3.org/TR/html5/editing.html#inert\n return false;\n}\n// bind exceptions to an iterator callback\nisFocusRelevantRules.except = function() {\n var except = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var isFocusRelevant = function isFocusRelevant(context) {\n return isFocusRelevantRules({\n context: context,\n except: except\n });\n };\n isFocusRelevant.rules = isFocusRelevantRules;\n return isFocusRelevant;\n};\n// provide isFocusRelevant(context) as default iterator callback\nvar isFocusRelevant = isFocusRelevantRules.except({});\nfunction findIndex(array, callback) {\n // attempt to use native or polyfilled Array#findIndex first\n if (array.findIndex) {\n return array.findIndex(callback);\n }\n var length = array.length;\n // shortcut if the array is empty\n if (length === 0) {\n return -1;\n }\n // otherwise loop over array\n for(var i = 0; i < length; i++){\n if (callback(array[i], i, array)) {\n return i;\n }\n }\n return -1;\n}\nfunction getContentDocument(node) {\n try {\n // works on and