182 lines
245 KiB
JavaScript
182 lines
245 KiB
JavaScript
/*
|
||
* 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/).
|
||
*/
|
||
(self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([["app-pages-internals"],{
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fbuiltin%2Fglobal-error.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fframework%2Fboundary-components.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fmetadata%2Fgenerate%2Ficon-mark.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fnext-devtools%2Fuserspace%2Fapp%2Fsegment-explorer-node.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!":
|
||
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
||
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fbuiltin%2Fglobal-error.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fframework%2Fboundary-components.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fmetadata%2Fgenerate%2Ficon-mark.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fnext-devtools%2Fuserspace%2Fapp%2Fsegment-explorer-node.js%22%2C%22ids%22%3A%5B%5D%7D&server=false! ***!
|
||
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
|
||
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
|
||
|
||
eval(__webpack_require__.ts("Promise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/builtin/global-error.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/builtin/global-error.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-page.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/client-segment.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/client-segment.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/layout-router.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/metadata/async-metadata.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/metadata/async-metadata.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/components/render-from-template-context.js */ \"(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/lib/framework/boundary-components.js */ \"(app-pages-browser)/./node_modules/next/dist/lib/framework/boundary-components.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./node_modules/next/dist/lib/metadata/generate/icon-mark.js */ \"(app-pages-browser)/./node_modules/next/dist/lib/metadata/generate/icon-mark.js\"));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js */ \"(app-pages-browser)/./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js\", 23));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtZmxpZ2h0LWNsaWVudC1lbnRyeS1sb2FkZXIuanM/bW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZqZXR0Y2hlbmcxMDE4JTJGY29kZSUyRmRyYW1hbGluZy12b2NhYi1sZWFybmluZyUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGYnVpbHRpbiUyRmdsb2JhbC1lcnJvci5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmpldHRjaGVuZzEwMTglMkZjb2RlJTJGZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nJTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZjbGllbnQtcGFnZS5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmpldHRjaGVuZzEwMTglMkZjb2RlJTJGZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nJTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZjbGllbnQtc2VnbWVudC5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmpldHRjaGVuZzEwMTglMkZjb2RlJTJGZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nJTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZodHRwLWFjY2Vzcy1mYWxsYmFjayUyRmVycm9yLWJvdW5kYXJ5LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGamV0dGNoZW5nMTAxOCUyRmNvZGUlMkZkcmFtYWxpbmctdm9jYWItbGVhcm5pbmclMkZmcm9udGVuZCUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGY2xpZW50JTJGY29tcG9uZW50cyUyRmxheW91dC1yb3V0ZXIuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZqZXR0Y2hlbmcxMDE4JTJGY29kZSUyRmRyYW1hbGluZy12b2NhYi1sZWFybmluZyUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZjbGllbnQlMkZjb21wb25lbnRzJTJGbWV0YWRhdGElMkZhc3luYy1tZXRhZGF0YS5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmpldHRjaGVuZzEwMTglMkZjb2RlJTJGZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nJTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmNvbXBvbmVudHMlMkZyZW5kZXItZnJvbS10ZW1wbGF0ZS1jb250ZXh0LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGamV0dGNoZW5nMTAxOCUyRmNvZGUlMkZkcmFtYWxpbmctdm9jYWItbGVhcm5pbmclMkZmcm9udGVuZCUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGbGliJTJGZnJhbWV3b3JrJTJGYm91bmRhcnktY29tcG9uZW50cy5qcyUyMiUyQyUyMmlkcyUyMiUzQSU1QiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRmpldHRjaGVuZzEwMTglMkZjb2RlJTJGZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nJTJGZnJvbnRlbmQlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmxpYiUyRm1ldGFkYXRhJTJGZ2VuZXJhdGUlMkZpY29uLW1hcmsuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlNUQlN0QmbW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZqZXR0Y2hlbmcxMDE4JTJGY29kZSUyRmRyYW1hbGluZy12b2NhYi1sZWFybmluZyUyRmZyb250ZW5kJTJGbm9kZV9tb2R1bGVzJTJGbmV4dCUyRmRpc3QlMkZuZXh0LWRldnRvb2xzJTJGdXNlcnNwYWNlJTJGYXBwJTJGc2VnbWVudC1leHBsb3Jlci1ub2RlLmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJnNlcnZlcj1mYWxzZSEiLCJtYXBwaW5ncyI6IkFBQUEsb1FBQWlLO0FBQ2pLO0FBQ0Esa1BBQXdKO0FBQ3hKO0FBQ0Esd1BBQTJKO0FBQzNKO0FBQ0Esa1NBQWdMO0FBQ2hMO0FBQ0Esc1BBQTBKO0FBQzFKO0FBQ0EsMFFBQW9LO0FBQ3BLO0FBQ0Esb1JBQXlLO0FBQ3pLO0FBQ0EsMFBBQTRKO0FBQzVKO0FBQ0EsZ1BBQTBKO0FBQzFKO0FBQ0EsMFJBQTRLIiwic291cmNlcyI6WyIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2J1aWx0aW4vZ2xvYmFsLWVycm9yLmpzXCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2NsaWVudC1wYWdlLmpzXCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2NsaWVudC1zZWdtZW50LmpzXCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2h0dHAtYWNjZXNzLWZhbGxiYWNrL2Vycm9yLWJvdW5kYXJ5LmpzXCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIgKi8gXCIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L2NvZGUvZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nL2Zyb250ZW5kL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbWV0YWRhdGEvYXN5bmMtbWV0YWRhdGEuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L2NvZGUvZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nL2Zyb250ZW5kL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVuZGVyLWZyb20tdGVtcGxhdGUtY29udGV4dC5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2pldHRjaGVuZzEwMTgvY29kZS9kcmFtYWxpbmctdm9jYWItbGVhcm5pbmcvZnJvbnRlbmQvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9saWIvZnJhbWV3b3JrL2JvdW5kYXJ5LWNvbXBvbmVudHMuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L2NvZGUvZHJhbWFsaW5nLXZvY2FiLWxlYXJuaW5nL2Zyb250ZW5kL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvbGliL21ldGFkYXRhL2dlbmVyYXRlL2ljb24tbWFyay5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL2pldHRjaGVuZzEwMTgvY29kZS9kcmFtYWxpbmctdm9jYWItbGVhcm5pbmcvZnJvbnRlbmQvbm9kZV9tb2R1bGVzL25leHQvZGlzdC9uZXh0LWRldnRvb2xzL3VzZXJzcGFjZS9hcHAvc2VnbWVudC1leHBsb3Jlci1ub2RlLmpzXCIpO1xuIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fbuiltin%2Fglobal-error.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fframework%2Fboundary-components.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fmetadata%2Fgenerate%2Ficon-mark.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fnext-devtools%2Fuserspace%2Fapp%2Fsegment-explorer-node.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/components/bfcache.js":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/components/bfcache.js ***!
|
||
\*************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"useRouterBFCache\", ({\n enumerable: true,\n get: function() {\n return useRouterBFCache;\n }\n}));\nconst _react = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n// When the flag is disabled, only track the currently active tree\nconst MAX_BF_CACHE_ENTRIES = false ? 0 : 1;\nfunction useRouterBFCache(activeTree, activeStateKey) {\n // The currently active entry. The entries form a linked list, sorted in\n // order of most recently active. This allows us to reuse parts of the list\n // without cloning, unless there's a reordering or removal.\n // TODO: Once we start tracking back/forward history at each route level,\n // we should use the history order instead. In other words, when traversing\n // to an existing entry as a result of a popstate event, we should maintain\n // the existing order instead of moving it to the front of the list. I think\n // an initial implementation of this could be to pass an incrementing id\n // to history.pushState/replaceState, then use that here for ordering.\n const [prevActiveEntry, setPrevActiveEntry] = (0, _react.useState)(()=>{\n const initialEntry = {\n tree: activeTree,\n stateKey: activeStateKey,\n next: null\n };\n return initialEntry;\n });\n if (prevActiveEntry.tree === activeTree) {\n // Fast path. The active tree hasn't changed, so we can reuse the\n // existing state.\n return prevActiveEntry;\n }\n // The route tree changed. Note that this doesn't mean that the tree changed\n // *at this level* — the change may be due to a child route. Either way, we\n // need to either add or update the router tree in the bfcache.\n //\n // The rest of the code looks more complicated than it actually is because we\n // can't mutate the state in place; we have to copy-on-write.\n // Create a new entry for the active cache key. This is the head of the new\n // linked list.\n const newActiveEntry = {\n tree: activeTree,\n stateKey: activeStateKey,\n next: null\n };\n // We need to append the old list onto the new list. If the head of the new\n // list was already present in the cache, then we'll need to clone everything\n // that came before it. Then we can reuse the rest.\n let n = 1;\n let oldEntry = prevActiveEntry;\n let clonedEntry = newActiveEntry;\n while(oldEntry !== null && n < MAX_BF_CACHE_ENTRIES){\n if (oldEntry.stateKey === activeStateKey) {\n // Fast path. This entry in the old list that corresponds to the key that\n // is now active. We've already placed a clone of this entry at the front\n // of the new list. We can reuse the rest of the old list without cloning.\n // NOTE: We don't need to worry about eviction in this case because we\n // haven't increased the size of the cache, and we assume the max size\n // is constant across renders. If we were to change it to a dynamic limit,\n // then the implementation would need to account for that.\n clonedEntry.next = oldEntry.next;\n break;\n } else {\n // Clone the entry and append it to the list.\n n++;\n const entry = {\n tree: oldEntry.tree,\n stateKey: oldEntry.stateKey,\n next: null\n };\n clonedEntry.next = entry;\n clonedEntry = entry;\n }\n oldEntry = oldEntry.next;\n }\n setPrevActiveEntry(newActiveEntry);\n return newActiveEntry;\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=bfcache.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvYmZjYWNoZS5qcyIsIm1hcHBpbmdzIjoiOzs7O29EQWlDZ0JBOzs7ZUFBQUE7OzttQ0FoQ1M7QUFFekIsa0VBQWtFO0FBQ2xFLE1BQU1DLHVCQUF1QkMsTUFBa0MsR0FBRyxDQUFDLEdBQUc7QUE2Qi9ELFNBQVNGLGlCQUNkSyxVQUE2QixFQUM3QkMsY0FBc0I7SUFFdEIsd0VBQXdFO0lBQ3hFLDJFQUEyRTtJQUMzRSwyREFBMkQ7SUFDM0QseUVBQXlFO0lBQ3pFLDJFQUEyRTtJQUMzRSwyRUFBMkU7SUFDM0UsNEVBQTRFO0lBQzVFLHdFQUF3RTtJQUN4RSxzRUFBc0U7SUFDdEUsTUFBTSxDQUFDQyxpQkFBaUJDLG1CQUFtQixHQUFHQyxDQUFBQSxHQUFBQSxPQUFBQSxRQUFBQSxFQUM1QztRQUNFLE1BQU1DLGVBQW1DO1lBQ3ZDQyxNQUFNTjtZQUNOTyxVQUFVTjtZQUNWTyxNQUFNO1FBQ1I7UUFDQSxPQUFPSDtJQUNUO0lBR0YsSUFBSUgsZ0JBQWdCSSxJQUFJLEtBQUtOLFlBQVk7UUFDdkMsaUVBQWlFO1FBQ2pFLGtCQUFrQjtRQUNsQixPQUFPRTtJQUNUO0lBRUEsNEVBQTRFO0lBQzVFLDJFQUEyRTtJQUMzRSwrREFBK0Q7SUFDL0QsRUFBRTtJQUNGLDZFQUE2RTtJQUM3RSw2REFBNkQ7SUFFN0QsMkVBQTJFO0lBQzNFLGVBQWU7SUFDZixNQUFNTyxpQkFBcUM7UUFDekNILE1BQU1OO1FBQ05PLFVBQVVOO1FBQ1ZPLE1BQU07SUFDUjtJQUVBLDJFQUEyRTtJQUMzRSw2RUFBNkU7SUFDN0UsbURBQW1EO0lBQ25ELElBQUlFLElBQUk7SUFDUixJQUFJQyxXQUFzQ1Q7SUFDMUMsSUFBSVUsY0FBa0NIO0lBQ3RDLE1BQU9FLGFBQWEsUUFBUUQsSUFBSWQscUJBQXNCO1FBQ3BELElBQUllLFNBQVNKLFFBQVEsS0FBS04sZ0JBQWdCO1lBQ3hDLHlFQUF5RTtZQUN6RSx5RUFBeUU7WUFDekUsMEVBQTBFO1lBQzFFLHNFQUFzRTtZQUN0RSxzRUFBc0U7WUFDdEUsMEVBQTBFO1lBQzFFLDBEQUEwRDtZQUMxRFcsWUFBWUosSUFBSSxHQUFHRyxTQUFTSCxJQUFJO1lBQ2hDO1FBQ0YsT0FBTztZQUNMLDZDQUE2QztZQUM3Q0U7WUFDQSxNQUFNRyxRQUE0QjtnQkFDaENQLE1BQU1LLFNBQVNMLElBQUk7Z0JBQ25CQyxVQUFVSSxTQUFTSixRQUFRO2dCQUMzQkMsTUFBTTtZQUNSO1lBQ0FJLFlBQVlKLElBQUksR0FBR0s7WUFDbkJELGNBQWNDO1FBQ2hCO1FBQ0FGLFdBQVdBLFNBQVNILElBQUk7SUFDMUI7SUFFQUwsbUJBQW1CTTtJQUNuQixPQUFPQTtBQUNUIiwic291cmNlcyI6WyIvVXNlcnMvamV0dGNoZW5nMTAxOC9zcmMvY2xpZW50L2NvbXBvbmVudHMvYmZjYWNoZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZsaWdodFJvdXRlclN0YXRlIH0gZnJvbSAnLi4vLi4vc2VydmVyL2FwcC1yZW5kZXIvdHlwZXMnXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuXG4vLyBXaGVuIHRoZSBmbGFnIGlzIGRpc2FibGVkLCBvbmx5IHRyYWNrIHRoZSBjdXJyZW50bHkgYWN0aXZlIHRyZWVcbmNvbnN0IE1BWF9CRl9DQUNIRV9FTlRSSUVTID0gcHJvY2Vzcy5lbnYuX19ORVhUX1JPVVRFUl9CRl9DQUNIRSA/IDMgOiAxXG5cbmV4cG9ydCB0eXBlIFJvdXRlckJGQ2FjaGVFbnRyeSA9IHtcbiAgdHJlZTogRmxpZ2h0Um91dGVyU3RhdGVcbiAgc3RhdGVLZXk6IHN0cmluZ1xuICAvLyBUaGUgZW50cmllcyBmb3JtIGEgbGlua2VkIGxpc3QsIHNvcnRlZCBpbiBvcmRlciBvZiBtb3N0IHJlY2VudGx5IGFjdGl2ZS5cbiAgbmV4dDogUm91dGVyQkZDYWNoZUVudHJ5IHwgbnVsbFxufVxuXG4vKipcbiAqIEtlZXBzIHRyYWNrIG9mIHRoZSBtb3N0IHJlY2VudCBOIHRyZWVzIChGbGlnaHRSb3V0ZXJTdGF0ZXMpIHRoYXQgd2VyZSBhY3RpdmVcbiAqIGF0IGEgY2VydGFpbiBzZWdtZW50IGxldmVsLiBFLmcuIGZvciBhIHNlZ21lbnQgXCIvYS9iL1twYXJhbV1cIiwgdGhpcyBob29rXG4gKiB0cmFja3MgdGhlIGxhc3QgTiBwYXJhbSB2YWx1ZXMgdGhhdCB0aGUgcm91dGVyIHJlbmRlcmVkIGZvciBOLlxuICpcbiAqIFRoZSByZXN1bHQgb2YgdGhpcyBob29rIHByZWNpc2VseSBkZXRlcm1pbmVzIHRoZSBudW1iZXIgYW5kIG9yZGVyIG9mXG4gKiB0cmVlcyB0aGF0IGFyZSByZW5kZXJlZCBpbiBwYXJhbGxlbCBhdCB0aGVpciBzZWdtZW50IGxldmVsLlxuICpcbiAqIFRoZSBwdXJwb3NlIG9mIHRoaXMgY2FjaGUgaXMgdG8gd2UgY2FuIHByZXNlcnZlIHRoZSBSZWFjdCBhbmQgRE9NIHN0YXRlIG9mXG4gKiBzb21lIG51bWJlciBvZiBpbmFjdGl2ZSB0cmVlcywgYnkgcmVuZGVyaW5nIHRoZW0gaW4gYW4gPEFjdGl2aXR5PiBib3VuZGFyeS5cbiAqIFRoYXQgbWVhbnMgaXQgd291bGQgbm90IG1ha2Ugc2Vuc2UgZm9yIHRoZSB0aGUgbGlmZXRpbWUgb2YgdGhlIGNhY2hlIHRvIGJlXG4gKiBhbnkgbG9uZ2VyIHRoYW4gdGhlIGxpZmV0aW1lIG9mIHRoZSBSZWFjdCB0cmVlOyBlLmcuIGlmIHRoZSBob29rIHdlcmVcbiAqIHVubW91bnRlZCwgdGhlbiB0aGUgUmVhY3QgdHJlZSB3b3VsZCBiZSwgdG9vLiBTbywgd2UgdXNlIFJlYWN0IHN0YXRlIHRvXG4gKiBtYW5hZ2UgaXQuXG4gKlxuICogTm90ZSB0aGF0IHdlIGRvbid0IHN0b3JlIHRoZSBSU0MgZGF0YSBmb3IgdGhlIGNhY2hlIGVudHJpZXMgaW4gdGhpcyBob29rIOKAlFxuICogdGhlIGRhdGEgZm9yIGluYWN0aXZlIHNlZ21lbnRzIGlzIHN0b3JlZCBpbiB0aGUgcGFyZW50IENhY2hlTm9kZSwgd2hpY2hcbiAqICpkb2VzKiBoYXZlIGEgbG9uZ2VyIGxpZmV0aW1lIHRoYW4gdGhlIFJlYWN0IHRyZWUuIFRoaXMgaG9vayBvbmx5IGRldGVybWluZXNcbiAqIHdoaWNoIG9mIHRob3NlIHRyZWVzIHNob3VsZCBoYXZlIHRoZWlyICpzdGF0ZSogcHJlc2VydmVkLCBieSA8QWN0aXZpdHk+LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlUm91dGVyQkZDYWNoZShcbiAgYWN0aXZlVHJlZTogRmxpZ2h0Um91dGVyU3RhdGUsXG4gIGFjdGl2ZVN0YXRlS2V5OiBzdHJpbmdcbik6IFJvdXRlckJGQ2FjaGVFbnRyeSB7XG4gIC8vIFRoZSBjdXJyZW50bHkgYWN0aXZlIGVudHJ5LiBUaGUgZW50cmllcyBmb3JtIGEgbGlua2VkIGxpc3QsIHNvcnRlZCBpblxuICAvLyBvcmRlciBvZiBtb3N0IHJlY2VudGx5IGFjdGl2ZS4gVGhpcyBhbGxvd3MgdXMgdG8gcmV1c2UgcGFydHMgb2YgdGhlIGxpc3RcbiAgLy8gd2l0aG91dCBjbG9uaW5nLCB1bmxlc3MgdGhlcmUncyBhIHJlb3JkZXJpbmcgb3IgcmVtb3ZhbC5cbiAgLy8gVE9ETzogT25jZSB3ZSBzdGFydCB0cmFja2luZyBiYWNrL2ZvcndhcmQgaGlzdG9yeSBhdCBlYWNoIHJvdXRlIGxldmVsLFxuICAvLyB3ZSBzaG91bGQgdXNlIHRoZSBoaXN0b3J5IG9yZGVyIGluc3RlYWQuIEluIG90aGVyIHdvcmRzLCB3aGVuIHRyYXZlcnNpbmdcbiAgLy8gdG8gYW4gZXhpc3RpbmcgZW50cnkgYXMgYSByZXN1bHQgb2YgYSBwb3BzdGF0ZSBldmVudCwgd2Ugc2hvdWxkIG1haW50YWluXG4gIC8vIHRoZSBleGlzdGluZyBvcmRlciBpbnN0ZWFkIG9mIG1vdmluZyBpdCB0byB0aGUgZnJvbnQgb2YgdGhlIGxpc3QuIEkgdGhpbmtcbiAgLy8gYW4gaW5pdGlhbCBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIGNvdWxkIGJlIHRvIHBhc3MgYW4gaW5jcmVtZW50aW5nIGlkXG4gIC8vIHRvIGhpc3RvcnkucHVzaFN0YXRlL3JlcGxhY2VTdGF0ZSwgdGhlbiB1c2UgdGhhdCBoZXJlIGZvciBvcmRlcmluZy5cbiAgY29uc3QgW3ByZXZBY3RpdmVFbnRyeSwgc2V0UHJldkFjdGl2ZUVudHJ5XSA9IHVzZVN0YXRlPFJvdXRlckJGQ2FjaGVFbnRyeT4oXG4gICAgKCkgPT4ge1xuICAgICAgY29uc3QgaW5pdGlhbEVudHJ5OiBSb3V0ZXJCRkNhY2hlRW50cnkgPSB7XG4gICAgICAgIHRyZWU6IGFjdGl2ZVRyZWUsXG4gICAgICAgIHN0YXRlS2V5OiBhY3RpdmVTdGF0ZUtleSxcbiAgICAgICAgbmV4dDogbnVsbCxcbiAgICAgIH1cbiAgICAgIHJldHVybiBpbml0aWFsRW50cnlcbiAgICB9XG4gIClcblxuICBpZiAocHJldkFjdGl2ZUVudHJ5LnRyZWUgPT09IGFjdGl2ZVRyZWUpIHtcbiAgICAvLyBGYXN0IHBhdGguIFRoZSBhY3RpdmUgdHJlZSBoYXNuJ3QgY2hhbmdlZCwgc28gd2UgY2FuIHJldXNlIHRoZVxuICAgIC8vIGV4aXN0aW5nIHN0YXRlLlxuICAgIHJldHVybiBwcmV2QWN0aXZlRW50cnlcbiAgfVxuXG4gIC8vIFRoZSByb3V0ZSB0cmVlIGNoYW5nZWQuIE5vdGUgdGhhdCB0aGlzIGRvZXNuJ3QgbWVhbiB0aGF0IHRoZSB0cmVlIGNoYW5nZWRcbiAgLy8gKmF0IHRoaXMgbGV2ZWwqIOKAlCB0aGUgY2hhbmdlIG1heSBiZSBkdWUgdG8gYSBjaGlsZCByb3V0ZS4gRWl0aGVyIHdheSwgd2VcbiAgLy8gbmVlZCB0byBlaXRoZXIgYWRkIG9yIHVwZGF0ZSB0aGUgcm91dGVyIHRyZWUgaW4gdGhlIGJmY2FjaGUuXG4gIC8vXG4gIC8vIFRoZSByZXN0IG9mIHRoZSBjb2RlIGxvb2tzIG1vcmUgY29tcGxpY2F0ZWQgdGhhbiBpdCBhY3R1YWxseSBpcyBiZWNhdXNlIHdlXG4gIC8vIGNhbid0IG11dGF0ZSB0aGUgc3RhdGUgaW4gcGxhY2U7IHdlIGhhdmUgdG8gY29weS1vbi13cml0ZS5cblxuICAvLyBDcmVhdGUgYSBuZXcgZW50cnkgZm9yIHRoZSBhY3RpdmUgY2FjaGUga2V5LiBUaGlzIGlzIHRoZSBoZWFkIG9mIHRoZSBuZXdcbiAgLy8gbGlua2VkIGxpc3QuXG4gIGNvbnN0IG5ld0FjdGl2ZUVudHJ5OiBSb3V0ZXJCRkNhY2hlRW50cnkgPSB7XG4gICAgdHJlZTogYWN0aXZlVHJlZSxcbiAgICBzdGF0ZUtleTogYWN0aXZlU3RhdGVLZXksXG4gICAgbmV4dDogbnVsbCxcbiAgfVxuXG4gIC8vIFdlIG5lZWQgdG8gYXBwZW5kIHRoZSBvbGQgbGlzdCBvbnRvIHRoZSBuZXcgbGlzdC4gSWYgdGhlIGhlYWQgb2YgdGhlIG5ld1xuICAvLyBsaXN0IHdhcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhlIGNhY2hlLCB0aGVuIHdlJ2xsIG5lZWQgdG8gY2xvbmUgZXZlcnl0aGluZ1xuICAvLyB0aGF0IGNhbWUgYmVmb3JlIGl0LiBUaGVuIHdlIGNhbiByZXVzZSB0aGUgcmVzdC5cbiAgbGV0IG4gPSAxXG4gIGxldCBvbGRFbnRyeTogUm91dGVyQkZDYWNoZUVudHJ5IHwgbnVsbCA9IHByZXZBY3RpdmVFbnRyeVxuICBsZXQgY2xvbmVkRW50cnk6IFJvdXRlckJGQ2FjaGVFbnRyeSA9IG5ld0FjdGl2ZUVudHJ5XG4gIHdoaWxlIChvbGRFbnRyeSAhPT0gbnVsbCAmJiBuIDwgTUFYX0JGX0NBQ0hFX0VOVFJJRVMpIHtcbiAgICBpZiAob2xkRW50cnkuc3RhdGVLZXkgPT09IGFjdGl2ZVN0YXRlS2V5KSB7XG4gICAgICAvLyBGYXN0IHBhdGguIFRoaXMgZW50cnkgaW4gdGhlIG9sZCBsaXN0IHRoYXQgY29ycmVzcG9uZHMgdG8gdGhlIGtleSB0aGF0XG4gICAgICAvLyBpcyBub3cgYWN0aXZlLiBXZSd2ZSBhbHJlYWR5IHBsYWNlZCBhIGNsb25lIG9mIHRoaXMgZW50cnkgYXQgdGhlIGZyb250XG4gICAgICAvLyBvZiB0aGUgbmV3IGxpc3QuIFdlIGNhbiByZXVzZSB0aGUgcmVzdCBvZiB0aGUgb2xkIGxpc3Qgd2l0aG91dCBjbG9uaW5nLlxuICAgICAgLy8gTk9URTogV2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBldmljdGlvbiBpbiB0aGlzIGNhc2UgYmVjYXVzZSB3ZVxuICAgICAgLy8gaGF2ZW4ndCBpbmNyZWFzZWQgdGhlIHNpemUgb2YgdGhlIGNhY2hlLCBhbmQgd2UgYXNzdW1lIHRoZSBtYXggc2l6ZVxuICAgICAgLy8gaXMgY29uc3RhbnQgYWNyb3NzIHJlbmRlcnMuIElmIHdlIHdlcmUgdG8gY2hhbmdlIGl0IHRvIGEgZHluYW1pYyBsaW1pdCxcbiAgICAgIC8vIHRoZW4gdGhlIGltcGxlbWVudGF0aW9uIHdvdWxkIG5lZWQgdG8gYWNjb3VudCBmb3IgdGhhdC5cbiAgICAgIGNsb25lZEVudHJ5Lm5leHQgPSBvbGRFbnRyeS5uZXh0XG4gICAgICBicmVha1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBDbG9uZSB0aGUgZW50cnkgYW5kIGFwcGVuZCBpdCB0byB0aGUgbGlzdC5cbiAgICAgIG4rK1xuICAgICAgY29uc3QgZW50cnk6IFJvdXRlckJGQ2FjaGVFbnRyeSA9IHtcbiAgICAgICAgdHJlZTogb2xkRW50cnkudHJlZSxcbiAgICAgICAgc3RhdGVLZXk6IG9sZEVudHJ5LnN0YXRlS2V5LFxuICAgICAgICBuZXh0OiBudWxsLFxuICAgICAgfVxuICAgICAgY2xvbmVkRW50cnkubmV4dCA9IGVudHJ5XG4gICAgICBjbG9uZWRFbnRyeSA9IGVudHJ5XG4gICAgfVxuICAgIG9sZEVudHJ5ID0gb2xkRW50cnkubmV4dFxuICB9XG5cbiAgc2V0UHJldkFjdGl2ZUVudHJ5KG5ld0FjdGl2ZUVudHJ5KVxuICByZXR1cm4gbmV3QWN0aXZlRW50cnlcbn1cbiJdLCJuYW1lcyI6WyJ1c2VSb3V0ZXJCRkNhY2hlIiwiTUFYX0JGX0NBQ0hFX0VOVFJJRVMiLCJwcm9jZXNzIiwiZW52IiwiX19ORVhUX1JPVVRFUl9CRl9DQUNIRSIsImFjdGl2ZVRyZWUiLCJhY3RpdmVTdGF0ZUtleSIsInByZXZBY3RpdmVFbnRyeSIsInNldFByZXZBY3RpdmVFbnRyeSIsInVzZVN0YXRlIiwiaW5pdGlhbEVudHJ5IiwidHJlZSIsInN0YXRlS2V5IiwibmV4dCIsIm5ld0FjdGl2ZUVudHJ5IiwibiIsIm9sZEVudHJ5IiwiY2xvbmVkRW50cnkiLCJlbnRyeSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/bfcache.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/components/client-page.js ***!
|
||
\*****************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"ClientPageRoot\", ({\n enumerable: true,\n get: function() {\n return ClientPageRoot;\n }\n}));\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst _invarianterror = __webpack_require__(/*! ../../shared/lib/invariant-error */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/invariant-error.js\");\nfunction ClientPageRoot(param) {\n let { Component, searchParams, params, promises } = param;\n if (false) {} else {\n const { createRenderSearchParamsFromClient } = __webpack_require__(/*! ../request/search-params.browser */ \"(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.js\");\n const clientSearchParams = createRenderSearchParamsFromClient(searchParams);\n const { createRenderParamsFromClient } = __webpack_require__(/*! ../request/params.browser */ \"(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.js\");\n const clientParams = createRenderParamsFromClient(params);\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(Component, {\n params: clientParams,\n searchParams: clientSearchParams\n });\n }\n}\n_c = ClientPageRoot;\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-page.js.map\nvar _c;\n$RefreshReg$(_c, \"ClientPageRoot\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXBhZ2UuanMiLCJtYXBwaW5ncyI6Ijs7OztrREFlZ0JBOzs7ZUFBQUE7Ozs7NENBWmU7QUFZeEIsd0JBQXdCLEtBVzlCO0lBWDhCLE1BQzdCQyxTQUFTLEVBQ1RDLFlBQVksRUFDWkMsTUFBTSxFQUNOLFFBQ1EsRUFNVCxHQVg4QjtJQVk3QixJQUFJLEtBQTZCLEVBQUUsRUF3QmxDLE1BQU07UUFDTCxNQUFNLEVBQUVZLGtDQUFrQyxFQUFFLEdBQzFDUixtQkFBT0EsQ0FBQyw4SEFBa0M7UUFDNUMsTUFBTUMscUJBQXFCTyxtQ0FBbUNiO1FBQzlELE1BQU0sRUFBRWMsNEJBQTRCLEVBQUUsR0FDcENULG1CQUFPQSxDQUFDLGdIQUEyQjtRQUNyQyxNQUFNRSxlQUFlTyw2QkFBNkJiO1FBRWxELHFCQUFPLHFCQUFDRixXQUFBQTtZQUFVRSxRQUFRTTtZQUFjUCxjQUFjTTs7SUFDeEQ7QUFDRjtLQTlDZ0JSIiwic291cmNlcyI6WyIvVXNlcnMvamV0dGNoZW5nMTAxOC9zcmMvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXBhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgdHlwZSB7IFBhcnNlZFVybFF1ZXJ5IH0gZnJvbSAncXVlcnlzdHJpbmcnXG5pbXBvcnQgeyBJbnZhcmlhbnRFcnJvciB9IGZyb20gJy4uLy4uL3NoYXJlZC9saWIvaW52YXJpYW50LWVycm9yJ1xuXG5pbXBvcnQgdHlwZSB7IFBhcmFtcyB9IGZyb20gJy4uLy4uL3NlcnZlci9yZXF1ZXN0L3BhcmFtcydcblxuLyoqXG4gKiBXaGVuIHRoZSBQYWdlIGlzIGEgY2xpZW50IGNvbXBvbmVudCB3ZSBzZW5kIHRoZSBwYXJhbXMgYW5kIHNlYXJjaFBhcmFtcyB0byB0aGlzIGNsaWVudCB3cmFwcGVyXG4gKiB3aGVyZSB0aGV5IGFyZSB0dXJuZWQgaW50byBkeW5hbWljYWxseSB0cmFja2VkIHZhbHVlcyBiZWZvcmUgYmVpbmcgcGFzc2VkIHRvIHRoZSBhY3R1YWwgUGFnZSBjb21wb25lbnQuXG4gKlxuICogYWRkaXRpb25hbGx5IHdlIG1heSBzZW5kIHByb21pc2VzIHJlcHJlc2VudGluZyB0aGUgcGFyYW1zIGFuZCBzZWFyY2hQYXJhbXMuIFdlIGRvbid0IGV2ZXIgdXNlIHRoZXNlIHBhc3NlZFxuICogdmFsdWVzIGJ1dCBpdCBjYW4gYmUgbmVjZXNzYXJ5IGZvciB0aGUgc2VuZGVyIHRvIHNlbmQgYSBQcm9taXNlIHRoYXQgZG9lc24ndCByZXNvbHZlIGluIGNlcnRhaW4gc2l0dWF0aW9ucy5cbiAqIEl0IGlzIHVwIHRvIHRoZSBjYWxsZXIgdG8gZGVjaWRlIGlmIHRoZSBwcm9taXNlcyBhcmUgbmVlZGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQ2xpZW50UGFnZVJvb3Qoe1xuICBDb21wb25lbnQsXG4gIHNlYXJjaFBhcmFtcyxcbiAgcGFyYW1zLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gIHByb21pc2VzLFxufToge1xuICBDb21wb25lbnQ6IFJlYWN0LkNvbXBvbmVudFR5cGU8YW55PlxuICBzZWFyY2hQYXJhbXM6IFBhcnNlZFVybFF1ZXJ5XG4gIHBhcmFtczogUGFyYW1zXG4gIHByb21pc2VzPzogQXJyYXk8UHJvbWlzZTxhbnk+PlxufSkge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zdCB7IHdvcmtBc3luY1N0b3JhZ2UgfSA9XG4gICAgICByZXF1aXJlKCcuLi8uLi9zZXJ2ZXIvYXBwLXJlbmRlci93b3JrLWFzeW5jLXN0b3JhZ2UuZXh0ZXJuYWwnKSBhcyB0eXBlb2YgaW1wb3J0KCcuLi8uLi9zZXJ2ZXIvYXBwLXJlbmRlci93b3JrLWFzeW5jLXN0b3JhZ2UuZXh0ZXJuYWwnKVxuXG4gICAgbGV0IGNsaWVudFNlYXJjaFBhcmFtczogUHJvbWlzZTxQYXJzZWRVcmxRdWVyeT5cbiAgICBsZXQgY2xpZW50UGFyYW1zOiBQcm9taXNlPFBhcmFtcz5cbiAgICAvLyBXZSBhcmUgZ29pbmcgdG8gaW5zdHJ1bWVudCB0aGUgc2VhcmNoUGFyYW1zIHByb3Agd2l0aCB0cmFja2luZyBmb3IgdGhlXG4gICAgLy8gYXBwcm9wcmlhdGUgY29udGV4dC4gV2Ugd3JhcCBkaWZmZXJlbnRseSBpbiBwcmVyZW5kZXJpbmcgdnMgcmVuZGVyaW5nXG4gICAgY29uc3Qgc3RvcmUgPSB3b3JrQXN5bmNTdG9yYWdlLmdldFN0b3JlKClcbiAgICBpZiAoIXN0b3JlKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YXJpYW50RXJyb3IoXG4gICAgICAgICdFeHBlY3RlZCB3b3JrU3RvcmUgdG8gZXhpc3Qgd2hlbiBoYW5kbGluZyBzZWFyY2hQYXJhbXMgaW4gYSBjbGllbnQgUGFnZS4nXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgeyBjcmVhdGVTZWFyY2hQYXJhbXNGcm9tQ2xpZW50IH0gPVxuICAgICAgcmVxdWlyZSgnLi4vLi4vc2VydmVyL3JlcXVlc3Qvc2VhcmNoLXBhcmFtcycpIGFzIHR5cGVvZiBpbXBvcnQoJy4uLy4uL3NlcnZlci9yZXF1ZXN0L3NlYXJjaC1wYXJhbXMnKVxuICAgIGNsaWVudFNlYXJjaFBhcmFtcyA9IGNyZWF0ZVNlYXJjaFBhcmFtc0Zyb21DbGllbnQoc2VhcmNoUGFyYW1zLCBzdG9yZSlcblxuICAgIGNvbnN0IHsgY3JlYXRlUGFyYW1zRnJvbUNsaWVudCB9ID1cbiAgICAgIHJlcXVpcmUoJy4uLy4uL3NlcnZlci9yZXF1ZXN0L3BhcmFtcycpIGFzIHR5cGVvZiBpbXBvcnQoJy4uLy4uL3NlcnZlci9yZXF1ZXN0L3BhcmFtcycpXG4gICAgY2xpZW50UGFyYW1zID0gY3JlYXRlUGFyYW1zRnJvbUNsaWVudChwYXJhbXMsIHN0b3JlKVxuXG4gICAgcmV0dXJuIDxDb21wb25lbnQgcGFyYW1zPXtjbGllbnRQYXJhbXN9IHNlYXJjaFBhcmFtcz17Y2xpZW50U2VhcmNoUGFyYW1zfSAvPlxuICB9IGVsc2Uge1xuICAgIGNvbnN0IHsgY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudCB9ID1cbiAgICAgIHJlcXVpcmUoJy4uL3JlcXVlc3Qvc2VhcmNoLXBhcmFtcy5icm93c2VyJykgYXMgdHlwZW9mIGltcG9ydCgnLi4vcmVxdWVzdC9zZWFyY2gtcGFyYW1zLmJyb3dzZXInKVxuICAgIGNvbnN0IGNsaWVudFNlYXJjaFBhcmFtcyA9IGNyZWF0ZVJlbmRlclNlYXJjaFBhcmFtc0Zyb21DbGllbnQoc2VhcmNoUGFyYW1zKVxuICAgIGNvbnN0IHsgY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCB9ID1cbiAgICAgIHJlcXVpcmUoJy4uL3JlcXVlc3QvcGFyYW1zLmJyb3dzZXInKSBhcyB0eXBlb2YgaW1wb3J0KCcuLi9yZXF1ZXN0L3BhcmFtcy5icm93c2VyJylcbiAgICBjb25zdCBjbGllbnRQYXJhbXMgPSBjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50KHBhcmFtcylcblxuICAgIHJldHVybiA8Q29tcG9uZW50IHBhcmFtcz17Y2xpZW50UGFyYW1zfSBzZWFyY2hQYXJhbXM9e2NsaWVudFNlYXJjaFBhcmFtc30gLz5cbiAgfVxufVxuIl0sIm5hbWVzIjpbIkNsaWVudFBhZ2VSb290IiwiQ29tcG9uZW50Iiwic2VhcmNoUGFyYW1zIiwicGFyYW1zIiwicHJvbWlzZXMiLCJ3aW5kb3ciLCJ3b3JrQXN5bmNTdG9yYWdlIiwicmVxdWlyZSIsImNsaWVudFNlYXJjaFBhcmFtcyIsImNsaWVudFBhcmFtcyIsInN0b3JlIiwiZ2V0U3RvcmUiLCJJbnZhcmlhbnRFcnJvciIsImNyZWF0ZVNlYXJjaFBhcmFtc0Zyb21DbGllbnQiLCJjcmVhdGVQYXJhbXNGcm9tQ2xpZW50IiwiY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudCIsImNyZWF0ZVJlbmRlclBhcmFtc0Zyb21DbGllbnQiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/client-page.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/components/client-segment.js":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/components/client-segment.js ***!
|
||
\********************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"ClientSegmentRoot\", ({\n enumerable: true,\n get: function() {\n return ClientSegmentRoot;\n }\n}));\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst _invarianterror = __webpack_require__(/*! ../../shared/lib/invariant-error */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/invariant-error.js\");\nfunction ClientSegmentRoot(param) {\n let { Component, slots, params, promise } = param;\n if (false) {} else {\n const { createRenderParamsFromClient } = __webpack_require__(/*! ../request/params.browser */ \"(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.js\");\n const clientParams = createRenderParamsFromClient(params);\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(Component, {\n ...slots,\n params: clientParams\n });\n }\n}\n_c = ClientSegmentRoot;\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-segment.js.map\nvar _c;\n$RefreshReg$(_c, \"ClientSegmentRoot\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvY2xpZW50LXNlZ21lbnQuanMiLCJtYXBwaW5ncyI6Ijs7OztxREFjZ0JBOzs7ZUFBQUE7Ozs7NENBWmU7QUFZeEIsMkJBQTJCLEtBV2pDO0lBWGlDLE1BQ2hDQyxTQUFTLEVBQ1RDLEtBQUssRUFDTEMsTUFBTSxFQUNOLE9BQ08sRUFNUixHQVhpQztJQVloQyxJQUFJLEtBQTZCLEVBQUUsRUFtQmxDLE1BQU07UUFDTCxNQUFNLEVBQUVVLDRCQUE0QixFQUFFLEdBQ3BDTixtQkFBT0EsQ0FBQyxnSEFBMkI7UUFDckMsTUFBTUMsZUFBZUssNkJBQTZCVjtRQUNsRCxxQkFBTyxxQkFBQ0YsV0FBQUE7WUFBVyxHQUFHQyxLQUFLO1lBQUVDLFFBQVFLOztJQUN2QztBQUNGO0tBckNnQlIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L3NyYy9jbGllbnQvY29tcG9uZW50cy9jbGllbnQtc2VnbWVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCB7IEludmFyaWFudEVycm9yIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2xpYi9pbnZhcmlhbnQtZXJyb3InXG5cbmltcG9ydCB0eXBlIHsgUGFyYW1zIH0gZnJvbSAnLi4vLi4vc2VydmVyL3JlcXVlc3QvcGFyYW1zJ1xuXG4vKipcbiAqIFdoZW4gdGhlIFBhZ2UgaXMgYSBjbGllbnQgY29tcG9uZW50IHdlIHNlbmQgdGhlIHBhcmFtcyB0byB0aGlzIGNsaWVudCB3cmFwcGVyXG4gKiB3aGVyZSB0aGV5IGFyZSB0dXJuZWQgaW50byBkeW5hbWljYWxseSB0cmFja2VkIHZhbHVlcyBiZWZvcmUgYmVpbmcgcGFzc2VkIHRvIHRoZSBhY3R1YWwgU2VnbWVudCBjb21wb25lbnQuXG4gKlxuICogYWRkaXRpb25hbGx5IHdlIG1heSBzZW5kIGEgcHJvbWlzZSByZXByZXNlbnRpbmcgcGFyYW1zLiBXZSBkb24ndCBldmVyIHVzZSB0aGlzIHBhc3NlZFxuICogdmFsdWUgYnV0IGl0IGNhbiBiZSBuZWNlc3NhcnkgZm9yIHRoZSBzZW5kZXIgdG8gc2VuZCBhIFByb21pc2UgdGhhdCBkb2Vzbid0IHJlc29sdmUgaW4gY2VydGFpbiBzaXR1YXRpb25zXG4gKiBzdWNoIGFzIHdoZW4gY2FjaGVDb21wb25lbnRzIGlzIGVuYWJsZWQuIEl0IGlzIHVwIHRvIHRoZSBjYWxsZXIgdG8gZGVjaWRlIGlmIHRoZSBwcm9taXNlcyBhcmUgbmVlZGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gQ2xpZW50U2VnbWVudFJvb3Qoe1xuICBDb21wb25lbnQsXG4gIHNsb3RzLFxuICBwYXJhbXMsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgcHJvbWlzZSxcbn06IHtcbiAgQ29tcG9uZW50OiBSZWFjdC5Db21wb25lbnRUeXBlPGFueT5cbiAgc2xvdHM6IHsgW2tleTogc3RyaW5nXTogUmVhY3QuUmVhY3ROb2RlIH1cbiAgcGFyYW1zOiBQYXJhbXNcbiAgcHJvbWlzZT86IFByb21pc2U8YW55PlxufSkge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zdCB7IHdvcmtBc3luY1N0b3JhZ2UgfSA9XG4gICAgICByZXF1aXJlKCcuLi8uLi9zZXJ2ZXIvYXBwLXJlbmRlci93b3JrLWFzeW5jLXN0b3JhZ2UuZXh0ZXJuYWwnKSBhcyB0eXBlb2YgaW1wb3J0KCcuLi8uLi9zZXJ2ZXIvYXBwLXJlbmRlci93b3JrLWFzeW5jLXN0b3JhZ2UuZXh0ZXJuYWwnKVxuXG4gICAgbGV0IGNsaWVudFBhcmFtczogUHJvbWlzZTxQYXJhbXM+XG4gICAgLy8gV2UgYXJlIGdvaW5nIHRvIGluc3RydW1lbnQgdGhlIHNlYXJjaFBhcmFtcyBwcm9wIHdpdGggdHJhY2tpbmcgZm9yIHRoZVxuICAgIC8vIGFwcHJvcHJpYXRlIGNvbnRleHQuIFdlIHdyYXAgZGlmZmVyZW50bHkgaW4gcHJlcmVuZGVyaW5nIHZzIHJlbmRlcmluZ1xuICAgIGNvbnN0IHN0b3JlID0gd29ya0FzeW5jU3RvcmFnZS5nZXRTdG9yZSgpXG4gICAgaWYgKCFzdG9yZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFyaWFudEVycm9yKFxuICAgICAgICAnRXhwZWN0ZWQgd29ya1N0b3JlIHRvIGV4aXN0IHdoZW4gaGFuZGxpbmcgcGFyYW1zIGluIGEgY2xpZW50IHNlZ21lbnQgc3VjaCBhcyBhIExheW91dCBvciBUZW1wbGF0ZS4nXG4gICAgICApXG4gICAgfVxuXG4gICAgY29uc3QgeyBjcmVhdGVQYXJhbXNGcm9tQ2xpZW50IH0gPVxuICAgICAgcmVxdWlyZSgnLi4vLi4vc2VydmVyL3JlcXVlc3QvcGFyYW1zJykgYXMgdHlwZW9mIGltcG9ydCgnLi4vLi4vc2VydmVyL3JlcXVlc3QvcGFyYW1zJylcbiAgICBjbGllbnRQYXJhbXMgPSBjcmVhdGVQYXJhbXNGcm9tQ2xpZW50KHBhcmFtcywgc3RvcmUpXG5cbiAgICByZXR1cm4gPENvbXBvbmVudCB7Li4uc2xvdHN9IHBhcmFtcz17Y2xpZW50UGFyYW1zfSAvPlxuICB9IGVsc2Uge1xuICAgIGNvbnN0IHsgY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCB9ID1cbiAgICAgIHJlcXVpcmUoJy4uL3JlcXVlc3QvcGFyYW1zLmJyb3dzZXInKSBhcyB0eXBlb2YgaW1wb3J0KCcuLi9yZXF1ZXN0L3BhcmFtcy5icm93c2VyJylcbiAgICBjb25zdCBjbGllbnRQYXJhbXMgPSBjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50KHBhcmFtcylcbiAgICByZXR1cm4gPENvbXBvbmVudCB7Li4uc2xvdHN9IHBhcmFtcz17Y2xpZW50UGFyYW1zfSAvPlxuICB9XG59XG4iXSwibmFtZXMiOlsiQ2xpZW50U2VnbWVudFJvb3QiLCJDb21wb25lbnQiLCJzbG90cyIsInBhcmFtcyIsInByb21pc2UiLCJ3aW5kb3ciLCJ3b3JrQXN5bmNTdG9yYWdlIiwicmVxdWlyZSIsImNsaWVudFBhcmFtcyIsInN0b3JlIiwiZ2V0U3RvcmUiLCJJbnZhcmlhbnRFcnJvciIsImNyZWF0ZVBhcmFtc0Zyb21DbGllbnQiLCJjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/client-segment.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./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(__webpack_require__.ts("/* __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 */ \"(app-pages-browser)/./node_modules/@swc/helpers/esm/_interop_require_default.js\");\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(app-pages-browser)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst _routerreducertypes = __webpack_require__(/*! ./router-reducer/router-reducer-types */ \"(app-pages-browser)/./node_modules/next/dist/client/components/router-reducer/router-reducer-types.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst _reactdom = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react-dom */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react-dom/index.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.js\");\nconst _fetchserverresponse = __webpack_require__(/*! ./router-reducer/fetch-server-response */ \"(app-pages-browser)/./node_modules/next/dist/client/components/router-reducer/fetch-server-response.js\");\nconst _unresolvedthenable = __webpack_require__(/*! ./unresolved-thenable */ \"(app-pages-browser)/./node_modules/next/dist/client/components/unresolved-thenable.js\");\nconst _errorboundary = __webpack_require__(/*! ./error-boundary */ \"(app-pages-browser)/./node_modules/next/dist/client/components/error-boundary.js\");\nconst _matchsegments = __webpack_require__(/*! ./match-segments */ \"(app-pages-browser)/./node_modules/next/dist/client/components/match-segments.js\");\nconst _disablesmoothscroll = __webpack_require__(/*! ../../shared/lib/router/utils/disable-smooth-scroll */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/disable-smooth-scroll.js\");\nconst _redirectboundary = __webpack_require__(/*! ./redirect-boundary */ \"(app-pages-browser)/./node_modules/next/dist/client/components/redirect-boundary.js\");\nconst _errorboundary1 = __webpack_require__(/*! ./http-access-fallback/error-boundary */ \"(app-pages-browser)/./node_modules/next/dist/client/components/http-access-fallback/error-boundary.js\");\nconst _createroutercachekey = __webpack_require__(/*! ./router-reducer/create-router-cache-key */ \"(app-pages-browser)/./node_modules/next/dist/client/components/router-reducer/create-router-cache-key.js\");\nconst _hasinterceptionrouteincurrenttree = __webpack_require__(/*! ./router-reducer/reducers/has-interception-route-in-current-tree */ \"(app-pages-browser)/./node_modules/next/dist/client/components/router-reducer/reducers/has-interception-route-in-current-tree.js\");\nconst _useactionqueue = __webpack_require__(/*! ./use-action-queue */ \"(app-pages-browser)/./node_modules/next/dist/client/components/use-action-queue.js\");\nconst _bfcache = __webpack_require__(/*! ./bfcache */ \"(app-pages-browser)/./node_modules/next/dist/client/components/bfcache.js\");\nconst _apppaths = __webpack_require__(/*! ../../shared/lib/router/utils/app-paths */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/app-paths.js\");\nconst Activity = false ? 0 : null;\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}\nconst __DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = _reactdom.default.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\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 (false) {}\n // __DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE.findDOMNode is null during module init.\n // We need to lazily reference it.\n const internal_reactDOMfindDOMNode = __DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE.findDOMNode;\n return internal_reactDOMfindDOMNode(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), 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 <link/> 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 if (true) {\n var _domNode_parentElement;\n if (((_domNode_parentElement = domNode.parentElement) == null ? void 0 : _domNode_parentElement.localName) === 'head') {\n // TODO: We enter this state when metadata was rendered as part of the page or via Next.js.\n // This is always a bug in Next.js and caused by React hoisting metadata.\n // We need to replace `findDOMNode` in favor of Fragment Refs (when available) so that we can skip over metadata.\n }\n }\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, _disablesmoothscroll.disableSmoothScrollDuringRouteTransition)(()=>{\n // In case of hash scroll, we only need to scroll the element into view\n if (hashFragment) {\n ;\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 `<html/>` 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 // Scroll into view doesn't scroll horizontally by default when not needed\n ;\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 `disableSmoothScrollDuringRouteTransition`\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 Object.defineProperty(new Error('invariant global layout router not mounted'), \"__NEXT_ERROR_CODE\", {\n value: \"E473\",\n enumerable: false,\n configurable: true\n });\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(InnerScrollAndFocusHandler, {\n segmentPath: segmentPath,\n focusAndScrollRef: context.focusAndScrollRef,\n children: children\n });\n}\n_c = ScrollAndFocusHandler;\n/**\n * InnerLayoutRouter handles rendering the provided segment based on the cache.\n */ function InnerLayoutRouter(param) {\n let { tree, segmentPath, cacheNode, url } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.GlobalLayoutRouterContext);\n if (!context) {\n throw Object.defineProperty(new Error('invariant global layout router not mounted'), \"__NEXT_ERROR_CODE\", {\n value: \"E473\",\n enumerable: false,\n configurable: true\n });\n }\n const { tree: fullTree } = context;\n // `rsc` represents the renderable node for this segment.\n // If this segment has a `prefetchRsc`, it's the statically prefetched data.\n // We should use that on initial render instead of `rsc`. Then we'll switch\n // to `rsc` when the dynamic response streams in.\n //\n // If no prefetch data is available, then we go straight to rendering `rsc`.\n const resolvedPrefetchRsc = cacheNode.prefetchRsc !== null ? cacheNode.prefetchRsc : cacheNode.rsc;\n // We use `useDeferredValue` to handle switching between the prefetched and\n // final values. The second argument is returned on initial render, then it\n // re-renders with the first argument.\n const rsc = (0, _react.useDeferredValue)(cacheNode.rsc, resolvedPrefetchRsc);\n // `rsc` is either a React node or a promise for a React node, except we\n // special case `null` to represent that this segment's data is missing. If\n // it's a promise, we need to unwrap it so we can determine whether or not the\n // data is missing.\n const resolvedRsc = typeof rsc === 'object' && rsc !== null && typeof rsc.then === 'function' ? (0, _react.use)(rsc) : rsc;\n if (!resolvedRsc) {\n // The data for this segment is not available, and there's no pending\n // navigation that will be able to fulfill it. We need to fetch more from\n // the server and patch the cache.\n // Check if there's already a pending request.\n let lazyData = cacheNode.lazyData;\n if (lazyData === null) {\n /**\n * Router state with refetch marker added\n */ // TODO-APP: remove ''\n const refetchTree = walkAddRefetch([\n '',\n ...segmentPath\n ], fullTree);\n const includeNextUrl = (0, _hasinterceptionrouteincurrenttree.hasInterceptionRouteInCurrentTree)(fullTree);\n const navigatedAt = Date.now();\n cacheNode.lazyData = lazyData = (0, _fetchserverresponse.fetchServerResponse)(new URL(url, location.origin), {\n flightRouterState: refetchTree,\n nextUrl: includeNextUrl ? context.nextUrl : null\n }).then((serverResponse)=>{\n (0, _react.startTransition)(()=>{\n (0, _useactionqueue.dispatchAppRouterAction)({\n type: _routerreducertypes.ACTION_SERVER_PATCH,\n previousTree: fullTree,\n serverResponse,\n navigatedAt\n });\n });\n return serverResponse;\n });\n // Suspend while waiting for lazyData to resolve\n (0, _react.use)(lazyData);\n }\n // Suspend infinitely as `changeByServerResponse` will cause a different part of the tree to be rendered.\n // A falsey `resolvedRsc` indicates missing data -- we should not commit that branch, and we need to wait for the data to arrive.\n (0, _react.use)(_unresolvedthenable.unresolvedThenable);\n }\n // If we get to this point, then we know we have something we can render.\n const subtree = /*#__PURE__*/ (0, _jsxruntime.jsx)(_approutercontextsharedruntime.LayoutRouterContext.Provider, {\n value: {\n parentTree: tree,\n parentCacheNode: cacheNode,\n parentSegmentPath: segmentPath,\n // TODO-APP: overriding of url for parallel routes\n url: url\n },\n children: resolvedRsc\n });\n // Ensure root layout is not wrapped in a div as the root layout renders `<html>`\n return subtree;\n}\n_c1 = InnerLayoutRouter;\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 { loading, children } = param;\n // If loading is a promise, unwrap it. This happens in cases where we haven't\n // yet received the loading data from the server — which includes whether or\n // not this layout has a loading component at all.\n //\n // It's OK to suspend here instead of inside the fallback because this\n // promise will resolve simultaneously with the data for the segment itself.\n // So it will never suspend for longer than it would have if we didn't use\n // a Suspense fallback at all.\n let loadingModuleData;\n if (typeof loading === 'object' && loading !== null && typeof loading.then === 'function') {\n const promiseForLoading = loading;\n loadingModuleData = (0, _react.use)(promiseForLoading);\n } else {\n loadingModuleData = loading;\n }\n if (loadingModuleData) {\n const loadingRsc = loadingModuleData[0];\n const loadingStyles = loadingModuleData[1];\n const loadingScripts = loadingModuleData[2];\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_react.Suspense, {\n fallback: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n loadingStyles,\n loadingScripts,\n loadingRsc\n ]\n }),\n children: children\n });\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: children\n });\n}\n_c2 = LoadingBoundary;\nfunction OuterLayoutRouter(param) {\n let { parallelRouterKey, error, errorStyles, errorScripts, templateStyles, templateScripts, template, notFound, forbidden, unauthorized, segmentViewBoundaries } = param;\n const context = (0, _react.useContext)(_approutercontextsharedruntime.LayoutRouterContext);\n if (!context) {\n throw Object.defineProperty(new Error('invariant expected layout router to be mounted'), \"__NEXT_ERROR_CODE\", {\n value: \"E56\",\n enumerable: false,\n configurable: true\n });\n }\n const { parentTree, parentCacheNode, parentSegmentPath, url } = context;\n // Get the CacheNode for this segment by reading it from the parent segment's\n // child map.\n const parentParallelRoutes = parentCacheNode.parallelRoutes;\n let segmentMap = parentParallelRoutes.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 (!segmentMap) {\n segmentMap = new Map();\n parentParallelRoutes.set(parallelRouterKey, segmentMap);\n }\n const parentTreeSegment = parentTree[0];\n const segmentPath = parentSegmentPath === null ? // the code. We should clean this up.\n [\n parallelRouterKey\n ] : parentSegmentPath.concat([\n parentTreeSegment,\n parallelRouterKey\n ]);\n // The \"state\" key of a segment is the one passed to React — it represents the\n // identity of the UI tree. Whenever the state key changes, the tree is\n // recreated and the state is reset. In the App Router model, search params do\n // not cause state to be lost, so two segments with the same segment path but\n // different search params should have the same state key.\n //\n // The \"cache\" key of a segment, however, *does* include the search params, if\n // it's possible that the segment accessed the search params on the server.\n // (This only applies to page segments; layout segments cannot access search\n // params on the server.)\n const activeTree = parentTree[1][parallelRouterKey];\n const activeSegment = activeTree[0];\n const activeStateKey = (0, _createroutercachekey.createRouterCacheKey)(activeSegment, true) // no search params\n ;\n // At each level of the route tree, not only do we render the currently\n // active segment — we also render the last N segments that were active at\n // this level inside a hidden <Activity> boundary, to preserve their state\n // if or when the user navigates to them again.\n //\n // bfcacheEntry is a linked list of FlightRouterStates.\n let bfcacheEntry = (0, _bfcache.useRouterBFCache)(activeTree, activeStateKey);\n let children = [];\n do {\n const tree = bfcacheEntry.tree;\n const stateKey = bfcacheEntry.stateKey;\n const segment = tree[0];\n const cacheKey = (0, _createroutercachekey.createRouterCacheKey)(segment);\n // Read segment path from the parallel router cache node.\n let cacheNode = segmentMap.get(cacheKey);\n if (cacheNode === undefined) {\n // When data is not available during rendering client-side we need to fetch\n // it from the server.\n const newLazyCacheNode = {\n lazyData: null,\n rsc: null,\n prefetchRsc: null,\n head: null,\n prefetchHead: null,\n parallelRoutes: new Map(),\n loading: null,\n navigatedAt: -1\n };\n // Flight data fetch kicked off during render and put into the cache.\n cacheNode = newLazyCacheNode;\n segmentMap.set(cacheKey, newLazyCacheNode);\n }\n /*\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 - When gracefully degrade for bots, skip rendering error boundary.\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 */ let segmentBoundaryTriggerNode = null;\n let segmentViewStateNode = null;\n if (true) {\n const { SegmentBoundaryTriggerNode, SegmentViewStateNode } = __webpack_require__(/*! ../../next-devtools/userspace/app/segment-explorer-node */ \"(app-pages-browser)/./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js\");\n const pagePrefix = (0, _apppaths.normalizeAppPath)(url);\n segmentViewStateNode = /*#__PURE__*/ (0, _jsxruntime.jsx)(SegmentViewStateNode, {\n page: pagePrefix\n }, pagePrefix);\n segmentBoundaryTriggerNode = /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(SegmentBoundaryTriggerNode, {})\n });\n }\n // TODO: The loading module data for a segment is stored on the parent, then\n // applied to each of that parent segment's parallel route slots. In the\n // simple case where there's only one parallel route (the `children` slot),\n // this is no different from if the loading module data where stored on the\n // child directly. But I'm not sure this actually makes sense when there are\n // multiple parallel routes. It's not a huge issue because you always have\n // the option to define a narrower loading boundary for a particular slot. But\n // this sort of smells like an implementation accident to me.\n const loadingModuleData = parentCacheNode.loading;\n let child = /*#__PURE__*/ (0, _jsxruntime.jsxs)(_approutercontextsharedruntime.TemplateContext.Provider, {\n value: /*#__PURE__*/ (0, _jsxruntime.jsxs)(ScrollAndFocusHandler, {\n segmentPath: segmentPath,\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(_errorboundary.ErrorBoundary, {\n errorComponent: error,\n errorStyles: errorStyles,\n errorScripts: errorScripts,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(LoadingBoundary, {\n loading: loadingModuleData,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_errorboundary1.HTTPAccessFallbackBoundary, {\n notFound: notFound,\n forbidden: forbidden,\n unauthorized: unauthorized,\n children: /*#__PURE__*/ (0, _jsxruntime.jsxs)(_redirectboundary.RedirectBoundary, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(InnerLayoutRouter, {\n url: url,\n tree: tree,\n cacheNode: cacheNode,\n segmentPath: segmentPath\n }),\n segmentBoundaryTriggerNode\n ]\n })\n })\n })\n }),\n segmentViewStateNode\n ]\n }),\n children: [\n templateStyles,\n templateScripts,\n template\n ]\n }, stateKey);\n if (true) {\n const { SegmentStateProvider } = __webpack_require__(/*! ../../next-devtools/userspace/app/segment-explorer-node */ \"(app-pages-browser)/./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js\");\n child = /*#__PURE__*/ (0, _jsxruntime.jsxs)(SegmentStateProvider, {\n children: [\n child,\n segmentViewBoundaries\n ]\n }, stateKey);\n }\n if (false) {}\n children.push(child);\n bfcacheEntry = bfcacheEntry.next;\n }while (bfcacheEntry !== null);\n return children;\n}\n_c3 = OuterLayoutRouter;\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\nvar _c, _c1, _c2, _c3;\n$RefreshReg$(_c, \"ScrollAndFocusHandler\");\n$RefreshReg$(_c1, \"InnerLayoutRouter\");\n$RefreshReg$(_c2, \"LoadingBoundary\");\n$RefreshReg$(_c3, \"OuterLayoutRouter\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbGF5b3V0LXJvdXRlci5qcyIsIm1hcHBpbmdzIjoiOzs7OzJDQThlQTs7O2VBQXdCQTs7Ozs7O2dEQS9kakI7NkVBU0E7K0VBQ2M7MkRBS2Q7aURBQzZCO2dEQUNEOzJDQUNMOzJDQUNEO2lEQUM0Qjs4Q0FDeEI7NENBQ1U7a0RBQ047K0RBQ2E7NENBQ1Y7cUNBQ2tCO3NDQUN6QjtBQUVqQyxNQUFNQyxXQUFXQyxNQUFrQyxHQUM5Q0csQ0FBNkQsR0FDOUQ7QUFFSjs7O0NBR0MsR0FDRCxTQUFTRSxlQUNQQyxpQkFBZ0QsRUFDaERDLGNBQWlDO0lBRWpDLElBQUlELG1CQUFtQjtRQUNyQixNQUFNLENBQUNFLFNBQVNDLGlCQUFpQixHQUFHSDtRQUNwQyxNQUFNSSxTQUFTSixrQkFBa0JLLE1BQU0sS0FBSztRQUU1QyxJQUFJQyxDQUFBQSxHQUFBQSxlQUFBQSxZQUFZLEVBQUNMLGNBQWMsQ0FBQyxFQUFFLEVBQUVDLFVBQVU7WUFDNUMsSUFBSUQsY0FBYyxDQUFDLEVBQUUsQ0FBQ00sY0FBYyxDQUFDSixtQkFBbUI7Z0JBQ3RELElBQUlDLFFBQVE7b0JBQ1YsTUFBTUksVUFBVVQsZUFDZFUsV0FDQVIsY0FBYyxDQUFDLEVBQUUsQ0FBQ0UsaUJBQWlCO29CQUVyQyxPQUFPO3dCQUNMRixjQUFjLENBQUMsRUFBRTt3QkFDakI7NEJBQ0UsR0FBR0EsY0FBYyxDQUFDLEVBQUU7NEJBQ3BCLENBQUNFLGlCQUFpQixFQUFFO2dDQUNsQkssT0FBTyxDQUFDLEVBQUU7Z0NBQ1ZBLE9BQU8sQ0FBQyxFQUFFO2dDQUNWQSxPQUFPLENBQUMsRUFBRTtnQ0FDVjs2QkFDRDt3QkFDSDtxQkFDRDtnQkFDSDtnQkFFQSxPQUFPO29CQUNMUCxjQUFjLENBQUMsRUFBRTtvQkFDakI7d0JBQ0UsR0FBR0EsY0FBYyxDQUFDLEVBQUU7d0JBQ3BCLENBQUNFLGlCQUFpQixFQUFF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QixhQUFhQTs7d0NBRWR1Rzs7Ozs7O29CQUtSQzs7OztnQkFJSjNCO2dCQUNBQztnQkFDQUM7O1dBaENJbUI7UUFvQ1QsSUFBSTFKLElBQW9CLEVBQW1CO1lBQ3pDLE1BQU0sRUFBRTZLLG9CQUFvQixFQUFFLEdBQzVCMUssbUJBQU9BLENBQUMsa0tBQXlEO1lBRW5Fb0ssUUFBQUEsV0FBQUEsR0FDRSxzQkFBQ00sc0JBQUFBOztvQkFDRU47b0JBQ0E1Qjs7ZUFGd0JlO1FBSy9CO1FBRUEsSUFBSTFKLEtBQWtDLEVBQUUsRUFTdkM7UUFFRHVELFNBQVN3SCxJQUFJLENBQUNSO1FBRWRmLGVBQWVBLGFBQWF3QixJQUFJO0lBQ2xDLFFBQVN4QixpQkFBaUIsTUFBSztJQUUvQixPQUFPakc7QUFDVDtNQW5Od0J6RCIsInNvdXJjZXMiOlsiL1VzZXJzL2pldHRjaGVuZzEwMTgvc3JjL2NsaWVudC9jb21wb25lbnRzL2xheW91dC1yb3V0ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgdHlwZSB7XG4gIENhY2hlTm9kZSxcbiAgTGF6eUNhY2hlTm9kZSxcbiAgTG9hZGluZ01vZHVsZURhdGEsXG59IGZyb20gJy4uLy4uL3NoYXJlZC9saWIvYXBwLXJvdXRlci1jb250ZXh0LnNoYXJlZC1ydW50aW1lJ1xuaW1wb3J0IHR5cGUge1xuICBGbGlnaHRSb3V0ZXJTdGF0ZSxcbiAgRmxpZ2h0U2VnbWVudFBhdGgsXG59IGZyb20gJy4uLy4uL3NlcnZlci9hcHAtcmVuZGVyL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBFcnJvckNvbXBvbmVudCB9IGZyb20gJy4vZXJyb3ItYm91bmRhcnknXG5pbXBvcnQge1xuICBBQ1RJT05fU0VSVkVSX1BBVENILFxuICB0eXBlIEZvY3VzQW5kU2Nyb2xsUmVmLFxufSBmcm9tICcuL3JvdXRlci1yZWR1Y2VyL3JvdXRlci1yZWR1Y2VyLXR5cGVzJ1xuXG5pbXBvcnQgUmVhY3QsIHtcbiAgdXNlQ29udGV4dCxcbiAgdXNlLFxuICBzdGFydFRyYW5zaXRpb24sXG4gIFN1c3BlbnNlLFxuICB1c2VEZWZlcnJlZFZhbHVlLFxuICB0eXBlIEpTWCxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IHtcbiAgTGF5b3V0Um91dGVyQ29udGV4dCxcbiAgR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dCxcbiAgVGVtcGxhdGVDb250ZXh0LFxufSBmcm9tICcuLi8uLi9zaGFyZWQvbGliL2FwcC1yb3V0ZXItY29udGV4dC5zaGFyZWQtcnVudGltZSdcbmltcG9ydCB7IGZldGNoU2VydmVyUmVzcG9uc2UgfSBmcm9tICcuL3JvdXRlci1yZWR1Y2VyL2ZldGNoLXNlcnZlci1yZXNwb25zZSdcbmltcG9ydCB7IHVucmVzb2x2ZWRUaGVuYWJsZSB9IGZyb20gJy4vdW5yZXNvbHZlZC10aGVuYWJsZSdcbmltcG9ydCB7IEVycm9yQm91bmRhcnkgfSBmcm9tICcuL2Vycm9yLWJvdW5kYXJ5J1xuaW1wb3J0IHsgbWF0Y2hTZWdtZW50IH0gZnJvbSAnLi9tYXRjaC1zZWdtZW50cydcbmltcG9ydCB7IGRpc2FibGVTbW9vdGhTY3JvbGxEdXJpbmdSb3V0ZVRyYW5zaXRpb24gfSBmcm9tICcuLi8uLi9zaGFyZWQvbGliL3JvdXRlci91dGlscy9kaXNhYmxlLXNtb290aC1zY3JvbGwnXG5pbXBvcnQgeyBSZWRpcmVjdEJvdW5kYXJ5IH0gZnJvbSAnLi9yZWRpcmVjdC1ib3VuZGFyeSdcbmltcG9ydCB7IEhUVFBBY2Nlc3NGYWxsYmFja0JvdW5kYXJ5IH0gZnJvbSAnLi9odHRwLWFjY2Vzcy1mYWxsYmFjay9lcnJvci1ib3VuZGFyeSdcbmltcG9ydCB7IGNyZWF0ZVJvdXRlckNhY2hlS2V5IH0gZnJvbSAnLi9yb3V0ZXItcmVkdWNlci9jcmVhdGUtcm91dGVyLWNhY2hlLWtleSdcbmltcG9ydCB7IGhhc0ludGVyY2VwdGlvblJvdXRlSW5DdXJyZW50VHJlZSB9IGZyb20gJy4vcm91dGVyLXJlZHVjZXIvcmVkdWNlcnMvaGFzLWludGVyY2VwdGlvbi1yb3V0ZS1pbi1jdXJyZW50LXRyZWUnXG5pbXBvcnQgeyBkaXNwYXRjaEFwcFJvdXRlckFjdGlvbiB9IGZyb20gJy4vdXNlLWFjdGlvbi1xdWV1ZSdcbmltcG9ydCB7IHVzZVJvdXRlckJGQ2FjaGUsIHR5cGUgUm91dGVyQkZDYWNoZUVudHJ5IH0gZnJvbSAnLi9iZmNhY2hlJ1xuaW1wb3J0IHsgbm9ybWFsaXplQXBwUGF0aCB9IGZyb20gJy4uLy4uL3NoYXJlZC9saWIvcm91dGVyL3V0aWxzL2FwcC1wYXRocydcblxuY29uc3QgQWN0aXZpdHkgPSBwcm9jZXNzLmVudi5fX05FWFRfUk9VVEVSX0JGX0NBQ0hFXG4gID8gKHJlcXVpcmUoJ3JlYWN0JykgYXMgdHlwZW9mIGltcG9ydCgncmVhY3QnKSkudW5zdGFibGVfQWN0aXZpdHlcbiAgOiBudWxsIVxuXG4vKipcbiAqIEFkZCByZWZldGNoIG1hcmtlciB0byByb3V0ZXIgc3RhdGUgYXQgdGhlIHBvaW50IG9mIHRoZSBjdXJyZW50IGxheW91dCBzZWdtZW50LlxuICogVGhpcyBlbnN1cmVzIHRoZSByZXNwb25zZSByZXR1cm5lZCBpcyBub3QgZnVydGhlciBkb3duIHRoYW4gdGhlIGN1cnJlbnQgbGF5b3V0IHNlZ21lbnQuXG4gKi9cbmZ1bmN0aW9uIHdhbGtBZGRSZWZldGNoKFxuICBzZWdtZW50UGF0aFRvV2FsazogRmxpZ2h0U2VnbWVudFBhdGggfCB1bmRlZmluZWQsXG4gIHRyZWVUb1JlY3JlYXRlOiBGbGlnaHRSb3V0ZXJTdGF0ZVxuKTogRmxpZ2h0Um91dGVyU3RhdGUge1xuICBpZiAoc2VnbWVudFBhdGhUb1dhbGspIHtcbiAgICBjb25zdCBbc2VnbWVudCwgcGFyYWxsZWxSb3V0ZUtleV0gPSBzZWdtZW50UGF0aFRvV2Fsa1xuICAgIGNvbnN0IGlzTGFzdCA9IHNlZ21lbnRQYXRoVG9XYWxrLmxlbmd0aCA9PT0gMlxuXG4gICAgaWYgKG1hdGNoU2VnbWVudCh0cmVlVG9SZWNyZWF0ZVswXSwgc2VnbWVudCkpIHtcbiAgICAgIGlmICh0cmVlVG9SZWNyZWF0ZVsxXS5oYXNPd25Qcm9wZXJ0eShwYXJhbGxlbFJvdXRlS2V5KSkge1xuICAgICAgICBpZiAoaXNMYXN0KSB7XG4gICAgICAgICAgY29uc3Qgc3ViVHJlZSA9IHdhbGtBZGRSZWZldGNoKFxuICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgdHJlZVRvUmVjcmVhdGVbMV1bcGFyYWxsZWxSb3V0ZUtleV1cbiAgICAgICAgICApXG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRyZWVUb1JlY3JlYXRlWzBdLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAuLi50cmVlVG9SZWNyZWF0ZVsxXSxcbiAgICAgICAgICAgICAgW3BhcmFsbGVsUm91dGVLZXldOiBbXG4gICAgICAgICAgICAgICAgc3ViVHJlZVswXSxcbiAgICAgICAgICAgICAgICBzdWJUcmVlWzFdLFxuICAgICAgICAgICAgICAgIHN1YlRyZWVbMl0sXG4gICAgICAgICAgICAgICAgJ3JlZmV0Y2gnLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIHRyZWVUb1JlY3JlYXRlWzBdLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIC4uLnRyZWVUb1JlY3JlYXRlWzFdLFxuICAgICAgICAgICAgW3BhcmFsbGVsUm91dGVLZXldOiB3YWxrQWRkUmVmZXRjaChcbiAgICAgICAgICAgICAgc2VnbWVudFBhdGhUb1dhbGsuc2xpY2UoMiksXG4gICAgICAgICAgICAgIHRyZWVUb1JlY3JlYXRlWzFdW3BhcmFsbGVsUm91dGVLZXldXG4gICAgICAgICAgICApLFxuICAgICAgICAgIH0sXG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJlZVRvUmVjcmVhdGVcbn1cblxuY29uc3QgX19ET01fSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFID0gKFxuICBSZWFjdERPTSBhcyBhbnlcbikuX19ET01fSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFXG5cbi8vIFRPRE8tQVBQOiBSZXBsYWNlIHdpdGggbmV3IFJlYWN0IEFQSSBmb3IgZmluZGluZyBkb20gbm9kZXMgd2l0aG91dCBhIGByZWZgIHdoZW4gYXZhaWxhYmxlXG4vKipcbiAqIFdyYXBzIFJlYWN0RE9NLmZpbmRET01Ob2RlIHdpdGggYWRkaXRpb25hbCBsb2dpYyB0byBoaWRlIFJlYWN0IFN0cmljdCBNb2RlIHdhcm5pbmdcbiAqL1xuZnVuY3Rpb24gZmluZERPTU5vZGUoXG4gIGluc3RhbmNlOiBSZWFjdC5SZWFjdEluc3RhbmNlIHwgbnVsbCB8IHVuZGVmaW5lZFxuKTogRWxlbWVudCB8IFRleHQgfCBudWxsIHtcbiAgLy8gVHJlZS1zaGFrZSBmb3Igc2VydmVyIGJ1bmRsZVxuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiBudWxsXG5cbiAgLy8gX19ET01fSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfV0FSTl9VU0VSU19USEVZX0NBTk5PVF9VUEdSQURFLmZpbmRET01Ob2RlIGlzIG51bGwgZHVyaW5nIG1vZHVsZSBpbml0LlxuICAvLyBXZSBuZWVkIHRvIGxhemlseSByZWZlcmVuY2UgaXQuXG4gIGNvbnN0IGludGVybmFsX3JlYWN0RE9NZmluZERPTU5vZGUgPVxuICAgIF9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERS5maW5kRE9NTm9kZVxuICByZXR1cm4gaW50ZXJuYWxfcmVhY3RET01maW5kRE9NTm9kZShpbnN0YW5jZSlcbn1cblxuY29uc3QgcmVjdFByb3BlcnRpZXMgPSBbXG4gICdib3R0b20nLFxuICAnaGVpZ2h0JyxcbiAgJ2xlZnQnLFxuICAncmlnaHQnLFxuICAndG9wJyxcbiAgJ3dpZHRoJyxcbiAgJ3gnLFxuICAneScsXG5dIGFzIGNvbnN0XG4vKipcbiAqIENoZWNrIGlmIGEgSFRNTEVsZW1lbnQgaXMgaGlkZGVuIG9yIGZpeGVkL3N0aWNreSBwb3NpdGlvblxuICovXG5mdW5jdGlvbiBzaG91bGRTa2lwRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAvLyB3ZSBpZ25vcmUgZml4ZWQgb3Igc3RpY2t5IHBvc2l0aW9uZWQgZWxlbWVudHMgc2luY2UgdGhleSdsbCBsaWtlbHkgcGFzcyB0aGUgXCJpbi12aWV3cG9ydFwiIGNoZWNrXG4gIC8vIGFuZCB3aWxsIHJlc3VsdCBpbiBhIHNpdHVhdGlvbiB3ZSBiYWlsIG9uIHNjcm9sbCBiZWNhdXNlIG9mIHNvbWV0aGluZyBsaWtlIGEgZml4ZWQgbmF2LFxuICAvLyBldmVuIHRob3VnaCB0aGUgYWN0dWFsIHBhZ2UgY29udGVudCBpcyBvZmZzY3JlZW5cbiAgaWYgKFsnc3RpY2t5JywgJ2ZpeGVkJ10uaW5jbHVkZXMoZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5wb3NpdGlvbikpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ1NraXBwaW5nIGF1dG8tc2Nyb2xsIGJlaGF2aW9yIGR1ZSB0byBgcG9zaXRpb246IHN0aWNreWAgb3IgYHBvc2l0aW9uOiBmaXhlZGAgb24gZWxlbWVudDonLFxuICAgICAgICBlbGVtZW50XG4gICAgICApXG4gICAgfVxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvLyBVc2VzIGBnZXRCb3VuZGluZ0NsaWVudFJlY3RgIHRvIGNoZWNrIGlmIHRoZSBlbGVtZW50IGlzIGhpZGRlbiBpbnN0ZWFkIG9mIGBvZmZzZXRQYXJlbnRgXG4gIC8vIGJlY2F1c2UgYG9mZnNldFBhcmVudGAgZG9lc24ndCBjb25zaWRlciBkb2N1bWVudC9ib2R5XG4gIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gIHJldHVybiByZWN0UHJvcGVydGllcy5ldmVyeSgoaXRlbSkgPT4gcmVjdFtpdGVtXSA9PT0gMClcbn1cblxuLyoqXG4gKiBDaGVjayBpZiB0aGUgdG9wIGNvcm5lciBvZiB0aGUgSFRNTEVsZW1lbnQgaXMgaW4gdGhlIHZpZXdwb3J0LlxuICovXG5mdW5jdGlvbiB0b3BPZkVsZW1lbnRJblZpZXdwb3J0KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCB2aWV3cG9ydEhlaWdodDogbnVtYmVyKSB7XG4gIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG4gIHJldHVybiByZWN0LnRvcCA+PSAwICYmIHJlY3QudG9wIDw9IHZpZXdwb3J0SGVpZ2h0XG59XG5cbi8qKlxuICogRmluZCB0aGUgRE9NIG5vZGUgZm9yIGEgaGFzaCBmcmFnbWVudC5cbiAqIElmIGB0b3BgIHRoZSBwYWdlIGhhcyB0byBzY3JvbGwgdG8gdGhlIHRvcCBvZiB0aGUgcGFnZS4gVGhpcyBtaXJyb3JzIHRoZSBicm93c2VyJ3MgYmVoYXZpb3IuXG4gKiBJZiB0aGUgaGFzaCBmcmFnbWVudCBpcyBhbiBpZCwgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgZWxlbWVudCB3aXRoIHRoYXQgaWQuXG4gKiBJZiB0aGUgaGFzaCBmcmFnbWVudCBpcyBhIG5hbWUsIHRoZSBwYWdlIGhhcyB0byBzY3JvbGwgdG8gdGhlIGZpcnN0IGVsZW1lbnQgd2l0aCB0aGF0IG5hbWUuXG4gKi9cbmZ1bmN0aW9uIGdldEhhc2hGcmFnbWVudERvbU5vZGUoaGFzaEZyYWdtZW50OiBzdHJpbmcpIHtcbiAgLy8gSWYgdGhlIGhhc2ggZnJhZ21lbnQgaXMgYHRvcGAgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgdG9wIG9mIHRoZSBwYWdlLlxuICBpZiAoaGFzaEZyYWdtZW50ID09PSAndG9wJykge1xuICAgIHJldHVybiBkb2N1bWVudC5ib2R5XG4gIH1cblxuICAvLyBJZiB0aGUgaGFzaCBmcmFnbWVudCBpcyBhbiBpZCwgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgZWxlbWVudCB3aXRoIHRoYXQgaWQuXG4gIHJldHVybiAoXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaGFzaEZyYWdtZW50KSA/P1xuICAgIC8vIElmIHRoZSBoYXNoIGZyYWdtZW50IGlzIGEgbmFtZSwgdGhlIHBhZ2UgaGFzIHRvIHNjcm9sbCB0byB0aGUgZmlyc3QgZWxlbWVudCB3aXRoIHRoYXQgbmFtZS5cbiAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZShoYXNoRnJhZ21lbnQpWzBdXG4gIClcbn1cbmludGVyZmFjZSBTY3JvbGxBbmRGb2N1c0hhbmRsZXJQcm9wcyB7XG4gIGZvY3VzQW5kU2Nyb2xsUmVmOiBGb2N1c0FuZFNjcm9sbFJlZlxuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlXG4gIHNlZ21lbnRQYXRoOiBGbGlnaHRTZWdtZW50UGF0aFxufVxuY2xhc3MgSW5uZXJTY3JvbGxBbmRGb2N1c0hhbmRsZXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8U2Nyb2xsQW5kRm9jdXNIYW5kbGVyUHJvcHM+IHtcbiAgaGFuZGxlUG90ZW50aWFsU2Nyb2xsID0gKCkgPT4ge1xuICAgIC8vIEhhbmRsZSBzY3JvbGwgYW5kIGZvY3VzLCBpdCdzIG9ubHkgYXBwbGllZCBvbmNlIGluIHRoZSBmaXJzdCB1c2VFZmZlY3QgdGhhdCB0cmlnZ2VycyB0aGF0IGNoYW5nZWQuXG4gICAgY29uc3QgeyBmb2N1c0FuZFNjcm9sbFJlZiwgc2VnbWVudFBhdGggfSA9IHRoaXMucHJvcHNcblxuICAgIGlmIChmb2N1c0FuZFNjcm9sbFJlZi5hcHBseSkge1xuICAgICAgLy8gc2VnbWVudFBhdGhzIGlzIGFuIGFycmF5IG9mIHNlZ21lbnQgcGF0aHMgdGhhdCBzaG91bGQgYmUgc2Nyb2xsZWQgdG9cbiAgICAgIC8vIGlmIHRoZSBjdXJyZW50IHNlZ21lbnQgcGF0aCBpcyBub3QgaW4gdGhlIGFycmF5LCB0aGUgc2Nyb2xsIGlzIG5vdCBhcHBsaWVkXG4gICAgICAvLyB1bmxlc3MgdGhlIGFycmF5IGlzIGVtcHR5LCBpbiB3aGljaCBjYXNlIHRoZSBzY3JvbGwgaXMgYWx3YXlzIGFwcGxpZWRcbiAgICAgIGlmIChcbiAgICAgICAgZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAhZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzLnNvbWUoKHNjcm9sbFJlZlNlZ21lbnRQYXRoKSA9PlxuICAgICAgICAgIHNlZ21lbnRQYXRoLmV2ZXJ5KChzZWdtZW50LCBpbmRleCkgPT5cbiAgICAgICAgICAgIG1hdGNoU2VnbWVudChzZWdtZW50LCBzY3JvbGxSZWZTZWdtZW50UGF0aFtpbmRleF0pXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIGxldCBkb21Ob2RlOlxuICAgICAgICB8IFJldHVyblR5cGU8dHlwZW9mIGdldEhhc2hGcmFnbWVudERvbU5vZGU+XG4gICAgICAgIHwgUmV0dXJuVHlwZTx0eXBlb2YgZmluZERPTU5vZGU+ID0gbnVsbFxuICAgICAgY29uc3QgaGFzaEZyYWdtZW50ID0gZm9jdXNBbmRTY3JvbGxSZWYuaGFzaEZyYWdtZW50XG5cbiAgICAgIGlmIChoYXNoRnJhZ21lbnQpIHtcbiAgICAgICAgZG9tTm9kZSA9IGdldEhhc2hGcmFnbWVudERvbU5vZGUoaGFzaEZyYWdtZW50KVxuICAgICAgfVxuXG4gICAgICAvLyBgZmluZERPTU5vZGVgIGlzIHRyaWNreSBiZWNhdXNlIGl0IHJldHVybnMganVzdCB0aGUgZmlyc3QgY2hpbGQgaWYgdGhlIGNvbXBvbmVudCBpcyBhIGZyYWdtZW50LlxuICAgICAgLy8gVGhpcyBhbHJlYWR5IGNhdXNlZCBhIGJ1ZyB3aGVyZSB0aGUgZmlyc3QgY2hpbGQgd2FzIGEgPGxpbmsvPiBpbiBoZWFkLlxuICAgICAgaWYgKCFkb21Ob2RlKSB7XG4gICAgICAgIGRvbU5vZGUgPSBmaW5kRE9NTm9kZSh0aGlzKVxuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGVyZSBpcyBubyBET00gbm9kZSB0aGlzIGxheW91dC1yb3V0ZXIgbGV2ZWwgaXMgc2tpcHBlZC4gSXQnbGwgYmUgaGFuZGxlZCBoaWdoZXItdXAgaW4gdGhlIHRyZWUuXG4gICAgICBpZiAoIShkb21Ob2RlIGluc3RhbmNlb2YgRWxlbWVudCkpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG5cbiAgICAgIC8vIFZlcmlmeSBpZiB0aGUgZWxlbWVudCBpcyBhIEhUTUxFbGVtZW50IGFuZCBpZiB3ZSB3YW50IHRvIGNvbnNpZGVyIGl0IGZvciBzY3JvbGwgYmVoYXZpb3IuXG4gICAgICAvLyBJZiB0aGUgZWxlbWVudCBpcyBza2lwcGVkLCB0cnkgdG8gc2VsZWN0IHRoZSBuZXh0IHNpYmxpbmcgYW5kIHRyeSBhZ2Fpbi5cbiAgICAgIHdoaWxlICghKGRvbU5vZGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkgfHwgc2hvdWxkU2tpcEVsZW1lbnQoZG9tTm9kZSkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICBpZiAoZG9tTm9kZS5wYXJlbnRFbGVtZW50Py5sb2NhbE5hbWUgPT09ICdoZWFkJykge1xuICAgICAgICAgICAgLy8gVE9ETzogV2UgZW50ZXIgdGhpcyBzdGF0ZSB3aGVuIG1ldGFkYXRhIHdhcyByZW5kZXJlZCBhcyBwYXJ0IG9mIHRoZSBwYWdlIG9yIHZpYSBOZXh0LmpzLlxuICAgICAgICAgICAgLy8gVGhpcyBpcyBhbHdheXMgYSBidWcgaW4gTmV4dC5qcyBhbmQgY2F1c2VkIGJ5IFJlYWN0IGhvaXN0aW5nIG1ldGFkYXRhLlxuICAgICAgICAgICAgLy8gV2UgbmVlZCB0byByZXBsYWNlIGBmaW5kRE9NTm9kZWAgaW4gZmF2b3Igb2YgRnJhZ21lbnQgUmVmcyAod2hlbiBhdmFpbGFibGUpIHNvIHRoYXQgd2UgY2FuIHNraXAgb3ZlciBtZXRhZGF0YS5cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBObyBzaWJsaW5ncyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSBhcmUgZm91bmQsIHNvIGhhbmRsZSBzY3JvbGwgaGlnaGVyIHVwIGluIHRoZSB0cmVlIGluc3RlYWQuXG4gICAgICAgIGlmIChkb21Ob2RlLm5leHRFbGVtZW50U2libGluZyA9PT0gbnVsbCkge1xuICAgICAgICAgIHJldHVyblxuICAgICAgICB9XG4gICAgICAgIGRvbU5vZGUgPSBkb21Ob2RlLm5leHRFbGVtZW50U2libGluZ1xuICAgICAgfVxuXG4gICAgICAvLyBTdGF0ZSBpcyBtdXRhdGVkIHRvIGVuc3VyZSB0aGF0IHRoZSBmb2N1cyBhbmQgc2Nyb2xsIGlzIGFwcGxpZWQgb25seSBvbmNlLlxuICAgICAgZm9jdXNBbmRTY3JvbGxSZWYuYXBwbHkgPSBmYWxzZVxuICAgICAgZm9jdXNBbmRTY3JvbGxSZWYuaGFzaEZyYWdtZW50ID0gbnVsbFxuICAgICAgZm9jdXNBbmRTY3JvbGxSZWYuc2VnbWVudFBhdGhzID0gW11cblxuICAgICAgZGlzYWJsZVNtb290aFNjcm9sbER1cmluZ1JvdXRlVHJhbnNpdGlvbihcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIC8vIEluIGNhc2Ugb2YgaGFzaCBzY3JvbGwsIHdlIG9ubHkgbmVlZCB0byBzY3JvbGwgdGhlIGVsZW1lbnQgaW50byB2aWV3XG4gICAgICAgICAgaWYgKGhhc2hGcmFnbWVudCkge1xuICAgICAgICAgICAgOyhkb21Ob2RlIGFzIEhUTUxFbGVtZW50KS5zY3JvbGxJbnRvVmlldygpXG5cbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBTdG9yZSB0aGUgY3VycmVudCB2aWV3cG9ydCBoZWlnaHQgYmVjYXVzZSByZWFkaW5nIGBjbGllbnRIZWlnaHRgIGNhdXNlcyBhIHJlZmxvdyxcbiAgICAgICAgICAvLyBhbmQgaXQgd29uJ3QgY2hhbmdlIGR1cmluZyB0aGlzIGZ1bmN0aW9uLlxuICAgICAgICAgIGNvbnN0IGh0bWxFbGVtZW50ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50XG4gICAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSBodG1sRWxlbWVudC5jbGllbnRIZWlnaHRcblxuICAgICAgICAgIC8vIElmIHRoZSBlbGVtZW50J3MgdG9wIGVkZ2UgaXMgYWxyZWFkeSBpbiB0aGUgdmlld3BvcnQsIGV4aXQgZWFybHkuXG4gICAgICAgICAgaWYgKHRvcE9mRWxlbWVudEluVmlld3BvcnQoZG9tTm9kZSBhcyBIVE1MRWxlbWVudCwgdmlld3BvcnRIZWlnaHQpKSB7XG4gICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPdGhlcndpc2UsIHRyeSBzY3JvbGxpbmcgZ28gdGhlIHRvcCBvZiB0aGUgZG9jdW1lbnQgdG8gYmUgYmFja3dhcmQgY29tcGF0aWJsZSB3aXRoIHBhZ2VzXG4gICAgICAgICAgLy8gc2Nyb2xsSW50b1ZpZXcoKSBjYWxsZWQgb24gYDxodG1sLz5gIGVsZW1lbnQgc2Nyb2xscyBob3Jpem9udGFsbHkgb24gY2hyb21lIGFuZCBmaXJlZm94ICh0aGF0IHNob3VsZG4ndCBoYXBwZW4pXG4gICAgICAgICAgLy8gV2UgY291bGQgdXNlIGl0IHRvIHNjcm9sbCBob3Jpem9udGFsbHkgZm9sbG93aW5nIFJUTCBidXQgdGhhdCBhbHNvIHNlZW1zIHRvIGJlIGJyb2tlbiAtIGl0IHdpbGwgYWx3YXlzIHNjcm9sbCBsZWZ0XG4gICAgICAgICAgLy8gc2Nyb2xsTGVmdCA9IDAgYWxzbyBzZWVtcyB0byBpZ25vcmUgUlRMIGFuZCBtYW51YWxseSBjaGVja2luZyBmb3IgUlRMIGlzIHRvbyBtdWNoIGhhc3NsZSBzbyB3ZSB3aWxsIHNjcm9sbCBqdXN0IHZlcnRpY2FsbHlcbiAgICAgICAgICBodG1sRWxlbWVudC5zY3JvbGxUb3AgPSAwXG5cbiAgICAgICAgICAvLyBTY3JvbGwgdG8gZG9tTm9kZSBpZiBkb21Ob2RlIGlzIG5vdCBpbiB2aWV3cG9ydCB3aGVuIHNjcm9sbGVkIHRvIHRvcCBvZiBkb2N1bWVudFxuICAgICAgICAgIGlmICghdG9wT2ZFbGVtZW50SW5WaWV3cG9ydChkb21Ob2RlIGFzIEhUTUxFbGVtZW50LCB2aWV3cG9ydEhlaWdodCkpIHtcbiAgICAgICAgICAgIC8vIFNjcm9sbCBpbnRvIHZpZXcgZG9lc24ndCBzY3JvbGwgaG9yaXpvbnRhbGx5IGJ5IGRlZmF1bHQgd2hlbiBub3QgbmVlZGVkXG4gICAgICAgICAgICA7KGRvbU5vZGUgYXMgSFRNTEVsZW1lbnQpLnNjcm9sbEludG9WaWV3KClcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAvLyBXZSB3aWxsIGZvcmNlIGxheW91dCBieSBxdWVyeWluZyBkb21Ob2RlIHBvc2l0aW9uXG4gICAgICAgICAgZG9udEZvcmNlTGF5b3V0OiB0cnVlLFxuICAgICAgICAgIG9ubHlIYXNoQ2hhbmdlOiBmb2N1c0FuZFNjcm9sbFJlZi5vbmx5SGFzaENoYW5nZSxcbiAgICAgICAgfVxuICAgICAgKVxuXG4gICAgICAvLyBNdXRhdGUgYWZ0ZXIgc2Nyb2xsaW5nIHNvIHRoYXQgaXQgY2FuIGJlIHJlYWQgYnkgYGRpc2FibGVTbW9vdGhTY3JvbGxEdXJpbmdSb3V0ZVRyYW5zaXRpb25gXG4gICAgICBmb2N1c0FuZFNjcm9sbFJlZi5vbmx5SGFzaENoYW5nZSA9IGZhbHNlXG5cbiAgICAgIC8vIFNldCBmb2N1cyBvbiB0aGUgZWxlbWVudFxuICAgICAgZG9tTm9kZS5mb2N1cygpXG4gICAgfVxuICB9XG5cbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgdGhpcy5oYW5kbGVQb3RlbnRpYWxTY3JvbGwoKVxuICB9XG5cbiAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgIC8vIEJlY2F1c2UgdGhpcyBwcm9wZXJ0eSBpcyBvdmVyd3JpdHRlbiBpbiBoYW5kbGVQb3RlbnRpYWxTY3JvbGwgaXQncyBmaW5lIHRvIGFsd2F5cyBydW4gaXQgd2hlbiB0cnVlIGFzIGl0J2xsIGJlIHNldCB0byBmYWxzZSBmb3Igc3Vic2VxdWVudCByZW5kZXJzLlxuICAgIGlmICh0aGlzLnByb3BzLmZvY3VzQW5kU2Nyb2xsUmVmLmFwcGx5KSB7XG4gICAgICB0aGlzLmhhbmRsZVBvdGVudGlhbFNjcm9sbCgpXG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmNoaWxkcmVuXG4gIH1cbn1cblxuZnVuY3Rpb24gU2Nyb2xsQW5kRm9jdXNIYW5kbGVyKHtcbiAgc2VnbWVudFBhdGgsXG4gIGNoaWxkcmVuLFxufToge1xuICBzZWdtZW50UGF0aDogRmxpZ2h0U2VnbWVudFBhdGhcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSkge1xuICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0KVxuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFyaWFudCBnbG9iYWwgbGF5b3V0IHJvdXRlciBub3QgbW91bnRlZCcpXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxJbm5lclNjcm9sbEFuZEZvY3VzSGFuZGxlclxuICAgICAgc2VnbWVudFBhdGg9e3NlZ21lbnRQYXRofVxuICAgICAgZm9jdXNBbmRTY3JvbGxSZWY9e2NvbnRleHQuZm9jdXNBbmRTY3JvbGxSZWZ9XG4gICAgPlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvSW5uZXJTY3JvbGxBbmRGb2N1c0hhbmRsZXI+XG4gIClcbn1cblxuLyoqXG4gKiBJbm5lckxheW91dFJvdXRlciBoYW5kbGVzIHJlbmRlcmluZyB0aGUgcHJvdmlkZWQgc2VnbWVudCBiYXNlZCBvbiB0aGUgY2FjaGUuXG4gKi9cbmZ1bmN0aW9uIElubmVyTGF5b3V0Um91dGVyKHtcbiAgdHJlZSxcbiAgc2VnbWVudFBhdGgsXG4gIGNhY2hlTm9kZSxcbiAgdXJsLFxufToge1xuICB0cmVlOiBGbGlnaHRSb3V0ZXJTdGF0ZVxuICBzZWdtZW50UGF0aDogRmxpZ2h0U2VnbWVudFBhdGhcbiAgY2FjaGVOb2RlOiBDYWNoZU5vZGVcbiAgdXJsOiBzdHJpbmdcbn0pIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoR2xvYmFsTGF5b3V0Um91dGVyQ29udGV4dClcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhcmlhbnQgZ2xvYmFsIGxheW91dCByb3V0ZXIgbm90IG1vdW50ZWQnKVxuICB9XG5cbiAgY29uc3QgeyB0cmVlOiBmdWxsVHJlZSB9ID0gY29udGV4dFxuXG4gIC8vIGByc2NgIHJlcHJlc2VudHMgdGhlIHJlbmRlcmFibGUgbm9kZSBmb3IgdGhpcyBzZWdtZW50LlxuXG4gIC8vIElmIHRoaXMgc2VnbWVudCBoYXMgYSBgcHJlZmV0Y2hSc2NgLCBpdCdzIHRoZSBzdGF0aWNhbGx5IHByZWZldGNoZWQgZGF0YS5cbiAgLy8gV2Ugc2hvdWxkIHVzZSB0aGF0IG9uIGluaXRpYWwgcmVuZGVyIGluc3RlYWQgb2YgYHJzY2AuIFRoZW4gd2UnbGwgc3dpdGNoXG4gIC8vIHRvIGByc2NgIHdoZW4gdGhlIGR5bmFtaWMgcmVzcG9uc2Ugc3RyZWFtcyBpbi5cbiAgLy9cbiAgLy8gSWYgbm8gcHJlZmV0Y2ggZGF0YSBpcyBhdmFpbGFibGUsIHRoZW4gd2UgZ28gc3RyYWlnaHQgdG8gcmVuZGVyaW5nIGByc2NgLlxuICBjb25zdCByZXNvbHZlZFByZWZldGNoUnNjID1cbiAgICBjYWNoZU5vZGUucHJlZmV0Y2hSc2MgIT09IG51bGwgPyBjYWNoZU5vZGUucHJlZmV0Y2hSc2MgOiBjYWNoZU5vZGUucnNjXG5cbiAgLy8gV2UgdXNlIGB1c2VEZWZlcnJlZFZhbHVlYCB0byBoYW5kbGUgc3dpdGNoaW5nIGJldHdlZW4gdGhlIHByZWZldGNoZWQgYW5kXG4gIC8vIGZpbmFsIHZhbHVlcy4gVGhlIHNlY29uZCBhcmd1bWVudCBpcyByZXR1cm5lZCBvbiBpbml0aWFsIHJlbmRlciwgdGhlbiBpdFxuICAvLyByZS1yZW5kZXJzIHdpdGggdGhlIGZpcnN0IGFyZ3VtZW50LlxuICBjb25zdCByc2M6IGFueSA9IHVzZURlZmVycmVkVmFsdWUoY2FjaGVOb2RlLnJzYywgcmVzb2x2ZWRQcmVmZXRjaFJzYylcblxuICAvLyBgcnNjYCBpcyBlaXRoZXIgYSBSZWFjdCBub2RlIG9yIGEgcHJvbWlzZSBmb3IgYSBSZWFjdCBub2RlLCBleGNlcHQgd2VcbiAgLy8gc3BlY2lhbCBjYXNlIGBudWxsYCB0byByZXByZXNlbnQgdGhhdCB0aGlzIHNlZ21lbnQncyBkYXRhIGlzIG1pc3NpbmcuIElmXG4gIC8vIGl0J3MgYSBwcm9taXNlLCB3ZSBuZWVkIHRvIHVud3JhcCBpdCBzbyB3ZSBjYW4gZGV0ZXJtaW5lIHdoZXRoZXIgb3Igbm90IHRoZVxuICAvLyBkYXRhIGlzIG1pc3NpbmcuXG4gIGNvbnN0IHJlc29sdmVkUnNjOiBSZWFjdC5SZWFjdE5vZGUgPVxuICAgIHR5cGVvZiByc2MgPT09ICdvYmplY3QnICYmIHJzYyAhPT0gbnVsbCAmJiB0eXBlb2YgcnNjLnRoZW4gPT09ICdmdW5jdGlvbidcbiAgICAgID8gdXNlKHJzYylcbiAgICAgIDogcnNjXG5cbiAgaWYgKCFyZXNvbHZlZFJzYykge1xuICAgIC8vIFRoZSBkYXRhIGZvciB0aGlzIHNlZ21lbnQgaXMgbm90IGF2YWlsYWJsZSwgYW5kIHRoZXJlJ3Mgbm8gcGVuZGluZ1xuICAgIC8vIG5hdmlnYXRpb24gdGhhdCB3aWxsIGJlIGFibGUgdG8gZnVsZmlsbCBpdC4gV2UgbmVlZCB0byBmZXRjaCBtb3JlIGZyb21cbiAgICAvLyB0aGUgc2VydmVyIGFuZCBwYXRjaCB0aGUgY2FjaGUuXG5cbiAgICAvLyBDaGVjayBpZiB0aGVyZSdzIGFscmVhZHkgYSBwZW5kaW5nIHJlcXVlc3QuXG4gICAgbGV0IGxhenlEYXRhID0gY2FjaGVOb2RlLmxhenlEYXRhXG4gICAgaWYgKGxhenlEYXRhID09PSBudWxsKSB7XG4gICAgICAvKipcbiAgICAgICAqIFJvdXRlciBzdGF0ZSB3aXRoIHJlZmV0Y2ggbWFya2VyIGFkZGVkXG4gICAgICAgKi9cbiAgICAgIC8vIFRPRE8tQVBQOiByZW1vdmUgJydcbiAgICAgIGNvbnN0IHJlZmV0Y2hUcmVlID0gd2Fsa0FkZFJlZmV0Y2goWycnLCAuLi5zZWdtZW50UGF0aF0sIGZ1bGxUcmVlKVxuICAgICAgY29uc3QgaW5jbHVkZU5leHRVcmwgPSBoYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUoZnVsbFRyZWUpXG4gICAgICBjb25zdCBuYXZpZ2F0ZWRBdCA9IERhdGUubm93KClcbiAgICAgIGNhY2hlTm9kZS5sYXp5RGF0YSA9IGxhenlEYXRhID0gZmV0Y2hTZXJ2ZXJSZXNwb25zZShcbiAgICAgICAgbmV3IFVSTCh1cmwsIGxvY2F0aW9uLm9yaWdpbiksXG4gICAgICAgIHtcbiAgICAgICAgICBmbGlnaHRSb3V0ZXJTdGF0ZTogcmVmZXRjaFRyZWUsXG4gICAgICAgICAgbmV4dFVybDogaW5jbHVkZU5leHRVcmwgPyBjb250ZXh0Lm5leHRVcmwgOiBudWxsLFxuICAgICAgICB9XG4gICAgICApLnRoZW4oKHNlcnZlclJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHN0YXJ0VHJhbnNpdGlvbigoKSA9PiB7XG4gICAgICAgICAgZGlzcGF0Y2hBcHBSb3V0ZXJBY3Rpb24oe1xuICAgICAgICAgICAgdHlwZTogQUNUSU9OX1NFUlZFUl9QQVRDSCxcbiAgICAgICAgICAgIHByZXZpb3VzVHJlZTogZnVsbFRyZWUsXG4gICAgICAgICAgICBzZXJ2ZXJSZXNwb25zZSxcbiAgICAgICAgICAgIG5hdmlnYXRlZEF0LFxuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG5cbiAgICAgICAgcmV0dXJuIHNlcnZlclJlc3BvbnNlXG4gICAgICB9KVxuXG4gICAgICAvLyBTdXNwZW5kIHdoaWxlIHdhaXRpbmcgZm9yIGxhenlEYXRhIHRvIHJlc29sdmVcbiAgICAgIHVzZShsYXp5RGF0YSlcbiAgICB9XG4gICAgLy8gU3VzcGVuZCBpbmZpbml0ZWx5IGFzIGBjaGFuZ2VCeVNlcnZlclJlc3BvbnNlYCB3aWxsIGNhdXNlIGEgZGlmZmVyZW50IHBhcnQgb2YgdGhlIHRyZWUgdG8gYmUgcmVuZGVyZWQuXG4gICAgLy8gQSBmYWxzZXkgYHJlc29sdmVkUnNjYCBpbmRpY2F0ZXMgbWlzc2luZyBkYXRhIC0tIHdlIHNob3VsZCBub3QgY29tbWl0IHRoYXQgYnJhbmNoLCBhbmQgd2UgbmVlZCB0byB3YWl0IGZvciB0aGUgZGF0YSB0byBhcnJpdmUuXG4gICAgdXNlKHVucmVzb2x2ZWRUaGVuYWJsZSkgYXMgbmV2ZXJcbiAgfVxuXG4gIC8vIElmIHdlIGdldCB0byB0aGlzIHBvaW50LCB0aGVuIHdlIGtub3cgd2UgaGF2ZSBzb21ldGhpbmcgd2UgY2FuIHJlbmRlci5cbiAgY29uc3Qgc3VidHJlZSA9IChcbiAgICAvLyBUaGUgbGF5b3V0IHJvdXRlciBjb250ZXh0IG5hcnJvd3MgZG93biB0cmVlIGFuZCBjaGlsZE5vZGVzIGF0IGVhY2ggbGV2ZWwuXG4gICAgPExheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXJcbiAgICAgIHZhbHVlPXt7XG4gICAgICAgIHBhcmVudFRyZWU6IHRyZWUsXG4gICAgICAgIHBhcmVudENhY2hlTm9kZTogY2FjaGVOb2RlLFxuICAgICAgICBwYXJlbnRTZWdtZW50UGF0aDogc2VnbWVudFBhdGgsXG5cbiAgICAgICAgLy8gVE9ETy1BUFA6IG92ZXJyaWRpbmcgb2YgdXJsIGZvciBwYXJhbGxlbCByb3V0ZXNcbiAgICAgICAgdXJsOiB1cmwsXG4gICAgICB9fVxuICAgID5cbiAgICAgIHtyZXNvbHZlZFJzY31cbiAgICA8L0xheW91dFJvdXRlckNvbnRleHQuUHJvdmlkZXI+XG4gIClcbiAgLy8gRW5zdXJlIHJvb3QgbGF5b3V0IGlzIG5vdCB3cmFwcGVkIGluIGEgZGl2IGFzIHRoZSByb290IGxheW91dCByZW5kZXJzIGA8aHRtbD5gXG4gIHJldHVybiBzdWJ0cmVlXG59XG5cbi8qKlxuICogUmVuZGVycyBzdXNwZW5zZSBib3VuZGFyeSB3aXRoIHRoZSBwcm92aWRlZCBcImxvYWRpbmdcIiBwcm9wZXJ0eSBhcyB0aGUgZmFsbGJhY2suXG4gKiBJZiBubyBsb2FkaW5nIHByb3BlcnR5IGlzIHByb3ZpZGVkIGl0IHJlbmRlcnMgdGhlIGNoaWxkcmVuIHdpdGhvdXQgYSBzdXNwZW5zZSBib3VuZGFyeS5cbiAqL1xuZnVuY3Rpb24gTG9hZGluZ0JvdW5kYXJ5KHtcbiAgbG9hZGluZyxcbiAgY2hpbGRyZW4sXG59OiB7XG4gIGxvYWRpbmc6IExvYWRpbmdNb2R1bGVEYXRhIHwgUHJvbWlzZTxMb2FkaW5nTW9kdWxlRGF0YT5cbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZVxufSk6IEpTWC5FbGVtZW50IHtcbiAgLy8gSWYgbG9hZGluZyBpcyBhIHByb21pc2UsIHVud3JhcCBpdC4gVGhpcyBoYXBwZW5zIGluIGNhc2VzIHdoZXJlIHdlIGhhdmVuJ3RcbiAgLy8geWV0IHJlY2VpdmVkIHRoZSBsb2FkaW5nIGRhdGEgZnJvbSB0aGUgc2VydmVyIOKAlCB3aGljaCBpbmNsdWRlcyB3aGV0aGVyIG9yXG4gIC8vIG5vdCB0aGlzIGxheW91dCBoYXMgYSBsb2FkaW5nIGNvbXBvbmVudCBhdCBhbGwuXG4gIC8vXG4gIC8vIEl0J3MgT0sgdG8gc3VzcGVuZCBoZXJlIGluc3RlYWQgb2YgaW5zaWRlIHRoZSBmYWxsYmFjayBiZWNhdXNlIHRoaXNcbiAgLy8gcHJvbWlzZSB3aWxsIHJlc29sdmUgc2ltdWx0YW5lb3VzbHkgd2l0aCB0aGUgZGF0YSBmb3IgdGhlIHNlZ21lbnQgaXRzZWxmLlxuICAvLyBTbyBpdCB3aWxsIG5ldmVyIHN1c3BlbmQgZm9yIGxvbmdlciB0aGFuIGl0IHdvdWxkIGhhdmUgaWYgd2UgZGlkbid0IHVzZVxuICAvLyBhIFN1c3BlbnNlIGZhbGxiYWNrIGF0IGFsbC5cbiAgbGV0IGxvYWRpbmdNb2R1bGVEYXRhXG4gIGlmIChcbiAgICB0eXBlb2YgbG9hZGluZyA9PT0gJ29iamVjdCcgJiZcbiAgICBsb2FkaW5nICE9PSBudWxsICYmXG4gICAgdHlwZW9mIChsb2FkaW5nIGFzIGFueSkudGhlbiA9PT0gJ2Z1bmN0aW9uJ1xuICApIHtcbiAgICBjb25zdCBwcm9taXNlRm9yTG9hZGluZyA9IGxvYWRpbmcgYXMgUHJvbWlzZTxMb2FkaW5nTW9kdWxlRGF0YT5cbiAgICBsb2FkaW5nTW9kdWxlRGF0YSA9IHVzZShwcm9taXNlRm9yTG9hZGluZylcbiAgfSBlbHNlIHtcbiAgICBsb2FkaW5nTW9kdWxlRGF0YSA9IGxvYWRpbmcgYXMgTG9hZGluZ01vZHVsZURhdGFcbiAgfVxuXG4gIGlmIChsb2FkaW5nTW9kdWxlRGF0YSkge1xuICAgIGNvbnN0IGxvYWRpbmdSc2MgPSBsb2FkaW5nTW9kdWxlRGF0YVswXVxuICAgIGNvbnN0IGxvYWRpbmdTdHlsZXMgPSBsb2FkaW5nTW9kdWxlRGF0YVsxXVxuICAgIGNvbnN0IGxvYWRpbmdTY3JpcHRzID0gbG9hZGluZ01vZHVsZURhdGFbMl1cbiAgICByZXR1cm4gKFxuICAgICAgPFN1c3BlbnNlXG4gICAgICAgIGZhbGxiYWNrPXtcbiAgICAgICAgICA8PlxuICAgICAgICAgICAge2xvYWRpbmdTdHlsZXN9XG4gICAgICAgICAgICB7bG9hZGluZ1NjcmlwdHN9XG4gICAgICAgICAgICB7bG9hZGluZ1JzY31cbiAgICAgICAgICA8Lz5cbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L1N1c3BlbnNlPlxuICAgIClcbiAgfVxuXG4gIHJldHVybiA8PntjaGlsZHJlbn08Lz5cbn1cblxuLyoqXG4gKiBPdXRlckxheW91dFJvdXRlciBoYW5kbGVzIHRoZSBjdXJyZW50IHNlZ21lbnQgYXMgd2VsbCBhcyA8T2Zmc2NyZWVuPiByZW5kZXJpbmcgb2Ygb3RoZXIgc2VnbWVudHMuXG4gKiBJdCBjYW4gYmUgcmVuZGVyZWQgbmV4dCB0byBlYWNoIG90aGVyIHdpdGggYSBkaWZmZXJlbnQgYHBhcmFsbGVsUm91dGVyS2V5YCwgYWxsb3dpbmcgZm9yIFBhcmFsbGVsIHJvdXRlcy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gT3V0ZXJMYXlvdXRSb3V0ZXIoe1xuICBwYXJhbGxlbFJvdXRlcktleSxcbiAgZXJyb3IsXG4gIGVycm9yU3R5bGVzLFxuICBlcnJvclNjcmlwdHMsXG4gIHRlbXBsYXRlU3R5bGVzLFxuICB0ZW1wbGF0ZVNjcmlwdHMsXG4gIHRlbXBsYXRlLFxuICBub3RGb3VuZCxcbiAgZm9yYmlkZGVuLFxuICB1bmF1dGhvcml6ZWQsXG4gIHNlZ21lbnRWaWV3Qm91bmRhcmllcyxcbn06IHtcbiAgcGFyYWxsZWxSb3V0ZXJLZXk6IHN0cmluZ1xuICBlcnJvcjogRXJyb3JDb21wb25lbnQgfCB1bmRlZmluZWRcbiAgZXJyb3JTdHlsZXM6IFJlYWN0LlJlYWN0Tm9kZSB8IHVuZGVmaW5lZFxuICBlcnJvclNjcmlwdHM6IFJlYWN0LlJlYWN0Tm9kZSB8IHVuZGVmaW5lZFxuICB0ZW1wbGF0ZVN0eWxlczogUmVhY3QuUmVhY3ROb2RlIHwgdW5kZWZpbmVkXG4gIHRlbXBsYXRlU2NyaXB0czogUmVhY3QuUmVhY3ROb2RlIHwgdW5kZWZpbmVkXG4gIHRlbXBsYXRlOiBSZWFjdC5SZWFjdE5vZGVcbiAgbm90Rm91bmQ6IFJlYWN0LlJlYWN0Tm9kZSB8IHVuZGVmaW5lZFxuICBmb3JiaWRkZW46IFJlYWN0LlJlYWN0Tm9kZSB8IHVuZGVmaW5lZFxuICB1bmF1dGhvcml6ZWQ6IFJlYWN0LlJlYWN0Tm9kZSB8IHVuZGVmaW5lZFxuICBzZWdtZW50Vmlld0JvdW5kYXJpZXM/OiBSZWFjdC5SZWFjdE5vZGVcbn0pIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoTGF5b3V0Um91dGVyQ29udGV4dClcbiAgaWYgKCFjb250ZXh0KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhcmlhbnQgZXhwZWN0ZWQgbGF5b3V0IHJvdXRlciB0byBiZSBtb3VudGVkJylcbiAgfVxuXG4gIGNvbnN0IHsgcGFyZW50VHJlZSwgcGFyZW50Q2FjaGVOb2RlLCBwYXJlbnRTZWdtZW50UGF0aCwgdXJsIH0gPSBjb250ZXh0XG5cbiAgLy8gR2V0IHRoZSBDYWNoZU5vZGUgZm9yIHRoaXMgc2VnbWVudCBieSByZWFkaW5nIGl0IGZyb20gdGhlIHBhcmVudCBzZWdtZW50J3NcbiAgLy8gY2hpbGQgbWFwLlxuICBjb25zdCBwYXJlbnRQYXJhbGxlbFJvdXRlcyA9IHBhcmVudENhY2hlTm9kZS5wYXJhbGxlbFJvdXRlc1xuICBsZXQgc2VnbWVudE1hcCA9IHBhcmVudFBhcmFsbGVsUm91dGVzLmdldChwYXJhbGxlbFJvdXRlcktleSlcbiAgLy8gSWYgdGhlIHBhcmFsbGVsIHJvdXRlciBjYWNoZSBub2RlIGRvZXMgbm90IGV4aXN0IHlldCwgY3JlYXRlIGl0LlxuICAvLyBUaGlzIHdyaXRlcyB0byB0aGUgY2FjaGUgd2hlbiB0aGVyZSBpcyBubyBpdGVtIGluIHRoZSBjYWNoZSB5ZXQuIEl0IG5ldmVyICpvdmVyd3JpdGVzKiBleGlzdGluZyBjYWNoZSBpdGVtcyB3aGljaCBpcyB3aHkgaXQncyBzYWZlIGluIGNvbmN1cnJlbnQgbW9kZS5cbiAgaWYgKCFzZWdtZW50TWFwKSB7XG4gICAgc2VnbWVudE1hcCA9IG5ldyBNYXAoKVxuICAgIHBhcmVudFBhcmFsbGVsUm91dGVzLnNldChwYXJhbGxlbFJvdXRlcktleSwgc2VnbWVudE1hcClcbiAgfVxuICBjb25zdCBwYXJlbnRUcmVlU2VnbWVudCA9IHBhcmVudFRyZWVbMF1cbiAgY29uc3Qgc2VnbWVudFBhdGggPVxuICAgIHBhcmVudFNlZ21lbnRQYXRoID09PSBudWxsXG4gICAgICA/IC8vIFRPRE86IFRoZSByb290IHNlZ21lbnQgdmFsdWUgaXMgY3VycmVudGx5IG9taXR0ZWQgZnJvbSB0aGUgc2VnbWVudFxuICAgICAgICAvLyBwYXRoLiBUaGlzIGhhcyBsZWQgdG8gYSBidW5jaCBvZiBzcGVjaWFsIGNhc2VzIHNjYXR0ZXJlZCB0aHJvdWdob3V0XG4gICAgICAgIC8vIHRoZSBjb2RlLiBXZSBzaG91bGQgY2xlYW4gdGhpcyB1cC5cbiAgICAgICAgW3BhcmFsbGVsUm91dGVyS2V5XVxuICAgICAgOiBwYXJlbnRTZWdtZW50UGF0aC5jb25jYXQoW3BhcmVudFRyZWVTZWdtZW50LCBwYXJhbGxlbFJvdXRlcktleV0pXG5cbiAgLy8gVGhlIFwic3RhdGVcIiBrZXkgb2YgYSBzZWdtZW50IGlzIHRoZSBvbmUgcGFzc2VkIHRvIFJlYWN0IOKAlCBpdCByZXByZXNlbnRzIHRoZVxuICAvLyBpZGVudGl0eSBvZiB0aGUgVUkgdHJlZS4gV2hlbmV2ZXIgdGhlIHN0YXRlIGtleSBjaGFuZ2VzLCB0aGUgdHJlZSBpc1xuICAvLyByZWNyZWF0ZWQgYW5kIHRoZSBzdGF0ZSBpcyByZXNldC4gSW4gdGhlIEFwcCBSb3V0ZXIgbW9kZWwsIHNlYXJjaCBwYXJhbXMgZG9cbiAgLy8gbm90IGNhdXNlIHN0YXRlIHRvIGJlIGxvc3QsIHNvIHR3byBzZWdtZW50cyB3aXRoIHRoZSBzYW1lIHNlZ21lbnQgcGF0aCBidXRcbiAgLy8gZGlmZmVyZW50IHNlYXJjaCBwYXJhbXMgc2hvdWxkIGhhdmUgdGhlIHNhbWUgc3RhdGUga2V5LlxuICAvL1xuICAvLyBUaGUgXCJjYWNoZVwiIGtleSBvZiBhIHNlZ21lbnQsIGhvd2V2ZXIsICpkb2VzKiBpbmNsdWRlIHRoZSBzZWFyY2ggcGFyYW1zLCBpZlxuICAvLyBpdCdzIHBvc3NpYmxlIHRoYXQgdGhlIHNlZ21lbnQgYWNjZXNzZWQgdGhlIHNlYXJjaCBwYXJhbXMgb24gdGhlIHNlcnZlci5cbiAgLy8gKFRoaXMgb25seSBhcHBsaWVzIHRvIHBhZ2Ugc2VnbWVudHM7IGxheW91dCBzZWdtZW50cyBjYW5ub3QgYWNjZXNzIHNlYXJjaFxuICAvLyBwYXJhbXMgb24gdGhlIHNlcnZlci4pXG4gIGNvbnN0IGFjdGl2ZVRyZWUgPSBwYXJlbnRUcmVlWzFdW3BhcmFsbGVsUm91dGVyS2V5XVxuICBjb25zdCBhY3RpdmVTZWdtZW50ID0gYWN0aXZlVHJlZVswXVxuICBjb25zdCBhY3RpdmVTdGF0ZUtleSA9IGNyZWF0ZVJvdXRlckNhY2hlS2V5KGFjdGl2ZVNlZ21lbnQsIHRydWUpIC8vIG5vIHNlYXJjaCBwYXJhbXNcblxuICAvLyBBdCBlYWNoIGxldmVsIG9mIHRoZSByb3V0ZSB0cmVlLCBub3Qgb25seSBkbyB3ZSByZW5kZXIgdGhlIGN1cnJlbnRseVxuICAvLyBhY3RpdmUgc2VnbWVudCDigJQgd2UgYWxzbyByZW5kZXIgdGhlIGxhc3QgTiBzZWdtZW50cyB0aGF0IHdlcmUgYWN0aXZlIGF0XG4gIC8vIHRoaXMgbGV2ZWwgaW5zaWRlIGEgaGlkZGVuIDxBY3Rpdml0eT4gYm91bmRhcnksIHRvIHByZXNlcnZlIHRoZWlyIHN0YXRlXG4gIC8vIGlmIG9yIHdoZW4gdGhlIHVzZXIgbmF2aWdhdGVzIHRvIHRoZW0gYWdhaW4uXG4gIC8vXG4gIC8vIGJmY2FjaGVFbnRyeSBpcyBhIGxpbmtlZCBsaXN0IG9mIEZsaWdodFJvdXRlclN0YXRlcy5cbiAgbGV0IGJmY2FjaGVFbnRyeTogUm91dGVyQkZDYWNoZUVudHJ5IHwgbnVsbCA9IHVzZVJvdXRlckJGQ2FjaGUoXG4gICAgYWN0aXZlVHJlZSxcbiAgICBhY3RpdmVTdGF0ZUtleVxuICApXG4gIGxldCBjaGlsZHJlbjogQXJyYXk8UmVhY3QuUmVhY3ROb2RlPiA9IFtdXG4gIGRvIHtcbiAgICBjb25zdCB0cmVlID0gYmZjYWNoZUVudHJ5LnRyZWVcbiAgICBjb25zdCBzdGF0ZUtleSA9IGJmY2FjaGVFbnRyeS5zdGF0ZUtleVxuICAgIGNvbnN0IHNlZ21lbnQgPSB0cmVlWzBdXG4gICAgY29uc3QgY2FjaGVLZXkgPSBjcmVhdGVSb3V0ZXJDYWNoZUtleShzZWdtZW50KVxuXG4gICAgLy8gUmVhZCBzZWdtZW50IHBhdGggZnJvbSB0aGUgcGFyYWxsZWwgcm91dGVyIGNhY2hlIG5vZGUuXG4gICAgbGV0IGNhY2hlTm9kZSA9IHNlZ21lbnRNYXAuZ2V0KGNhY2hlS2V5KVxuICAgIGlmIChjYWNoZU5vZGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgLy8gV2hlbiBkYXRhIGlzIG5vdCBhdmFpbGFibGUgZHVyaW5nIHJlbmRlcmluZyBjbGllbnQtc2lkZSB3ZSBuZWVkIHRvIGZldGNoXG4gICAgICAvLyBpdCBmcm9tIHRoZSBzZXJ2ZXIuXG4gICAgICBjb25zdCBuZXdMYXp5Q2FjaGVOb2RlOiBMYXp5Q2FjaGVOb2RlID0ge1xuICAgICAgICBsYXp5RGF0YTogbnVsbCxcbiAgICAgICAgcnNjOiBudWxsLFxuICAgICAgICBwcmVmZXRjaFJzYzogbnVsbCxcbiAgICAgICAgaGVhZDogbnVsbCxcbiAgICAgICAgcHJlZmV0Y2hIZWFkOiBudWxsLFxuICAgICAgICBwYXJhbGxlbFJvdXRlczogbmV3IE1hcCgpLFxuICAgICAgICBsb2FkaW5nOiBudWxsLFxuICAgICAgICBuYXZpZ2F0ZWRBdDogLTEsXG4gICAgICB9XG5cbiAgICAgIC8vIEZsaWdodCBkYXRhIGZldGNoIGtpY2tlZCBvZmYgZHVyaW5nIHJlbmRlciBhbmQgcHV0IGludG8gdGhlIGNhY2hlLlxuICAgICAgY2FjaGVOb2RlID0gbmV3TGF6eUNhY2hlTm9kZVxuICAgICAgc2VnbWVudE1hcC5zZXQoY2FjaGVLZXksIG5ld0xhenlDYWNoZU5vZGUpXG4gICAgfVxuXG4gICAgLypcbiAgICAtIEVycm9yIGJvdW5kYXJ5XG4gICAgICAtIE9ubHkgcmVuZGVycyBlcnJvciBib3VuZGFyeSBpZiBlcnJvciBjb21wb25lbnQgaXMgcHJvdmlkZWQuXG4gICAgICAtIFJlbmRlcmVkIGZvciBlYWNoIHNlZ21lbnQgdG8gZW5zdXJlIHRoZXkgaGF2ZSB0aGVpciBvd24gZXJyb3Igc3RhdGUuXG4gICAgICAtIFdoZW4gZ3JhY2VmdWxseSBkZWdyYWRlIGZvciBib3RzLCBza2lwIHJlbmRlcmluZyBlcnJvciBib3VuZGFyeS5cbiAgICAtIExvYWRpbmcgYm91bmRhcnlcbiAgICAgIC0gT25seSByZW5kZXJzIHN1c3BlbnNlIGJvdW5kYXJ5IGlmIGxvYWRpbmcgY29tcG9uZW50cyBpcyBwcm92aWRlZC5cbiAgICAgIC0gUmVuZGVyZWQgZm9yIGVhY2ggc2VnbWVudCB0byBlbnN1cmUgdGhleSBoYXZlIHRoZWlyIG93biBsb2FkaW5nIHN0YXRlLlxuICAgICAgLSBQYXNzZWQgdG8gdGhlIHJvdXRlciBkdXJpbmcgcmVuZGVyaW5nIHRvIGVuc3VyZSBpdCBjYW4gYmUgaW1tZWRpYXRlbHkgcmVuZGVyZWQgd2hlbiBzdXNwZW5kaW5nIG9uIGEgRmxpZ2h0IGZldGNoLlxuICAqL1xuXG4gICAgbGV0IHNlZ21lbnRCb3VuZGFyeVRyaWdnZXJOb2RlOiBSZWFjdC5SZWFjdE5vZGUgPSBudWxsXG4gICAgbGV0IHNlZ21lbnRWaWV3U3RhdGVOb2RlOiBSZWFjdC5SZWFjdE5vZGUgPSBudWxsXG4gICAgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJlxuICAgICAgcHJvY2Vzcy5lbnYuX19ORVhUX0RFVlRPT0xfU0VHTUVOVF9FWFBMT1JFUlxuICAgICkge1xuICAgICAgY29uc3QgeyBTZWdtZW50Qm91bmRhcnlUcmlnZ2VyTm9kZSwgU2VnbWVudFZpZXdTdGF0ZU5vZGUgfSA9XG4gICAgICAgIHJlcXVpcmUoJy4uLy4uL25leHQtZGV2dG9vbHMvdXNlcnNwYWNlL2FwcC9zZWdtZW50LWV4cGxvcmVyLW5vZGUnKSBhcyB0eXBlb2YgaW1wb3J0KCcuLi8uLi9uZXh0LWRldnRvb2xzL3VzZXJzcGFjZS9hcHAvc2VnbWVudC1leHBsb3Jlci1ub2RlJylcblxuICAgICAgY29uc3QgcGFnZVByZWZpeCA9IG5vcm1hbGl6ZUFwcFBhdGgodXJsKVxuICAgICAgc2VnbWVudFZpZXdTdGF0ZU5vZGUgPSAoXG4gICAgICAgIDxTZWdtZW50Vmlld1N0YXRlTm9kZSBrZXk9e3BhZ2VQcmVmaXh9IHBhZ2U9e3BhZ2VQcmVmaXh9IC8+XG4gICAgICApXG5cbiAgICAgIHNlZ21lbnRCb3VuZGFyeVRyaWdnZXJOb2RlID0gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxTZWdtZW50Qm91bmRhcnlUcmlnZ2VyTm9kZSAvPlxuICAgICAgICA8Lz5cbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBUaGUgbG9hZGluZyBtb2R1bGUgZGF0YSBmb3IgYSBzZWdtZW50IGlzIHN0b3JlZCBvbiB0aGUgcGFyZW50LCB0aGVuXG4gICAgLy8gYXBwbGllZCB0byBlYWNoIG9mIHRoYXQgcGFyZW50IHNlZ21lbnQncyBwYXJhbGxlbCByb3V0ZSBzbG90cy4gSW4gdGhlXG4gICAgLy8gc2ltcGxlIGNhc2Ugd2hlcmUgdGhlcmUncyBvbmx5IG9uZSBwYXJhbGxlbCByb3V0ZSAodGhlIGBjaGlsZHJlbmAgc2xvdCksXG4gICAgLy8gdGhpcyBpcyBubyBkaWZmZXJlbnQgZnJvbSBpZiB0aGUgbG9hZGluZyBtb2R1bGUgZGF0YSB3aGVyZSBzdG9yZWQgb24gdGhlXG4gICAgLy8gY2hpbGQgZGlyZWN0bHkuIEJ1dCBJJ20gbm90IHN1cmUgdGhpcyBhY3R1YWxseSBtYWtlcyBzZW5zZSB3aGVuIHRoZXJlIGFyZVxuICAgIC8vIG11bHRpcGxlIHBhcmFsbGVsIHJvdXRlcy4gSXQncyBub3QgYSBodWdlIGlzc3VlIGJlY2F1c2UgeW91IGFsd2F5cyBoYXZlXG4gICAgLy8gdGhlIG9wdGlvbiB0byBkZWZpbmUgYSBuYXJyb3dlciBsb2FkaW5nIGJvdW5kYXJ5IGZvciBhIHBhcnRpY3VsYXIgc2xvdC4gQnV0XG4gICAgLy8gdGhpcyBzb3J0IG9mIHNtZWxscyBsaWtlIGFuIGltcGxlbWVudGF0aW9uIGFjY2lkZW50IHRvIG1lLlxuICAgIGNvbnN0IGxvYWRpbmdNb2R1bGVEYXRhID0gcGFyZW50Q2FjaGVOb2RlLmxvYWRpbmdcbiAgICBsZXQgY2hpbGQgPSAoXG4gICAgICA8VGVtcGxhdGVDb250ZXh0LlByb3ZpZGVyXG4gICAgICAgIGtleT17c3RhdGVLZXl9XG4gICAgICAgIHZhbHVlPXtcbiAgICAgICAgICA8U2Nyb2xsQW5kRm9jdXNIYW5kbGVyIHNlZ21lbnRQYXRoPXtzZWdtZW50UGF0aH0+XG4gICAgICAgICAgICA8RXJyb3JCb3VuZGFyeVxuICAgICAgICAgICAgICBlcnJvckNvbXBvbmVudD17ZXJyb3J9XG4gICAgICAgICAgICAgIGVycm9yU3R5bGVzPXtlcnJvclN0eWxlc31cbiAgICAgICAgICAgICAgZXJyb3JTY3JpcHRzPXtlcnJvclNjcmlwdHN9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxMb2FkaW5nQm91bmRhcnkgbG9hZGluZz17bG9hZGluZ01vZHVsZURhdGF9PlxuICAgICAgICAgICAgICAgIDxIVFRQQWNjZXNzRmFsbGJhY2tCb3VuZGFyeVxuICAgICAgICAgICAgICAgICAgbm90Rm91bmQ9e25vdEZvdW5kfVxuICAgICAgICAgICAgICAgICAgZm9yYmlkZGVuPXtmb3JiaWRkZW59XG4gICAgICAgICAgICAgICAgICB1bmF1dGhvcml6ZWQ9e3VuYXV0aG9yaXplZH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8UmVkaXJlY3RCb3VuZGFyeT5cbiAgICAgICAgICAgICAgICAgICAgPElubmVyTGF5b3V0Um91dGVyXG4gICAgICAgICAgICAgICAgICAgICAgdXJsPXt1cmx9XG4gICAgICAgICAgICAgICAgICAgICAgdHJlZT17dHJlZX1cbiAgICAgICAgICAgICAgICAgICAgICBjYWNoZU5vZGU9e2NhY2hlTm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICBzZWdtZW50UGF0aD17c2VnbWVudFBhdGh9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIHtzZWdtZW50Qm91bmRhcnlUcmlnZ2VyTm9kZX1cbiAgICAgICAgICAgICAgICAgIDwvUmVkaXJlY3RCb3VuZGFyeT5cbiAgICAgICAgICAgICAgICA8L0hUVFBBY2Nlc3NGYWxsYmFja0JvdW5kYXJ5PlxuICAgICAgICAgICAgICA8L0xvYWRpbmdCb3VuZGFyeT5cbiAgICAgICAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgIHtzZWdtZW50Vmlld1N0YXRlTm9kZX1cbiAgICAgICAgICA8L1Njcm9sbEFuZEZvY3VzSGFuZGxlcj5cbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7dGVtcGxhdGVTdHlsZXN9XG4gICAgICAgIHt0ZW1wbGF0ZVNjcmlwdHN9XG4gICAgICAgIHt0ZW1wbGF0ZX1cbiAgICAgIDwvVGVtcGxhdGVDb250ZXh0LlByb3ZpZGVyPlxuICAgIClcblxuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICBjb25zdCB7IFNlZ21lbnRTdGF0ZVByb3ZpZGVyIH0gPVxuICAgICAgICByZXF1aXJlKCcuLi8uLi9uZXh0LWRldnRvb2xzL3VzZXJzcGFjZS9hcHAvc2VnbWVudC1leHBsb3Jlci1ub2RlJykgYXMgdHlwZW9mIGltcG9ydCgnLi4vLi4vbmV4dC1kZXZ0b29scy91c2Vyc3BhY2UvYXBwL3NlZ21lbnQtZXhwbG9yZXItbm9kZScpXG5cbiAgICAgIGNoaWxkID0gKFxuICAgICAgICA8U2VnbWVudFN0YXRlUHJvdmlkZXIga2V5PXtzdGF0ZUtleX0+XG4gICAgICAgICAge2NoaWxkfVxuICAgICAgICAgIHtzZWdtZW50Vmlld0JvdW5kYXJpZXN9XG4gICAgICAgIDwvU2VnbWVudFN0YXRlUHJvdmlkZXI+XG4gICAgICApXG4gICAgfVxuXG4gICAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9ST1VURVJfQkZfQ0FDSEUpIHtcbiAgICAgIGNoaWxkID0gKFxuICAgICAgICA8QWN0aXZpdHlcbiAgICAgICAgICBrZXk9e3N0YXRlS2V5fVxuICAgICAgICAgIG1vZGU9e3N0YXRlS2V5ID09PSBhY3RpdmVTdGF0ZUtleSA/ICd2aXNpYmxlJyA6ICdoaWRkZW4nfVxuICAgICAgICA+XG4gICAgICAgICAge2NoaWxkfVxuICAgICAgICA8L0FjdGl2aXR5PlxuICAgICAgKVxuICAgIH1cblxuICAgIGNoaWxkcmVuLnB1c2goY2hpbGQpXG5cbiAgICBiZmNhY2hlRW50cnkgPSBiZmNhY2hlRW50cnkubmV4dFxuICB9IHdoaWxlIChiZmNhY2hlRW50cnkgIT09IG51bGwpXG5cbiAgcmV0dXJuIGNoaWxkcmVuXG59XG4iXSwibmFtZXMiOlsiT3V0ZXJMYXlvdXRSb3V0ZXIiLCJBY3Rpdml0eSIsInByb2Nlc3MiLCJlbnYiLCJfX05FWFRfUk9VVEVSX0JGX0NBQ0hFIiwicmVxdWlyZSIsInVuc3RhYmxlX0FjdGl2aXR5Iiwid2Fsa0FkZFJlZmV0Y2giLCJzZWdtZW50UGF0aFRvV2FsayIsInRyZWVUb1JlY3JlYXRlIiwic2VnbWVudCIsInBhcmFsbGVsUm91dGVLZXkiLCJpc0xhc3QiLCJsZW5ndGgiLCJtYXRjaFNlZ21lbnQiLCJoYXNPd25Qcm9wZXJ0eSIsInN1YlRyZWUiLCJ1bmRlZmluZWQiLCJzbGljZSIsIl9fRE9NX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1dBUk5fVVNFUlNfVEhFWV9DQU5OT1RfVVBHUkFERSIsIlJlYWN0RE9NIiwiZmluZERPTU5vZGUiLCJpbnN0YW5jZSIsIndpbmRvdyIsImludGVybmFsX3JlYWN0RE9NZmluZERPTU5vZGUiLCJyZWN0UHJvcGVydGllcyIsInNob3VsZFNraXBFbGVtZW50IiwiZWxlbWVudCIsImluY2x1ZGVzIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsInBvc2l0aW9uIiwiTk9ERV9FTlYiLCJjb25zb2xlIiwid2FybiIsInJlY3QiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJldmVyeSIsIml0ZW0iLCJ0b3BPZkVsZW1lbnRJblZpZXdwb3J0Iiwidmlld3BvcnRIZWlnaHQiLCJ0b3AiLCJnZXRIYXNoRnJhZ21lbnREb21Ob2RlIiwiaGFzaEZyYWdtZW50IiwiZG9jdW1lbnQiLCJib2R5IiwiZ2V0RWxlbWVudEJ5SWQiLCJnZXRFbGVtZW50c0J5TmFtZSIsIklubmVyU2Nyb2xsQW5kRm9jdXNIYW5kbGVyIiwiUmVhY3QiLCJDb21wb25lbnQiLCJjb21wb25lbnREaWRNb3VudCIsImhhbmRsZVBvdGVudGlhbFNjcm9sbCIsImNvbXBvbmVudERpZFVwZGF0ZSIsInByb3BzIiwiZm9jdXNBbmRTY3JvbGxSZWYiLCJhcHBseSIsInJlbmRlciIsImNoaWxkcmVuIiwic2VnbWVudFBhdGgiLCJzZWdtZW50UGF0aHMiLCJzb21lIiwic2Nyb2xsUmVmU2VnbWVudFBhdGgiLCJpbmRleCIsImRvbU5vZGUiLCJFbGVtZW50IiwiSFRNTEVsZW1lbnQiLCJwYXJlbnRFbGVtZW50IiwibG9jYWxOYW1lIiwibmV4dEVsZW1lbnRTaWJsaW5nIiwiZGlzYWJsZVNtb290aFNjcm9sbER1cmluZ1JvdXRlVHJhbnNpdGlvbiIsInNjcm9sbEludG9WaWV3IiwiaHRtbEVsZW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJjbGllbnRIZWlnaHQiLCJzY3JvbGxUb3AiLCJkb250Rm9yY2VMYXlvdXQiLCJvbmx5SGFzaENoYW5nZSIsImZvY3VzIiwiU2Nyb2xsQW5kRm9jdXNIYW5kbGVyIiwiY29udGV4dCIsInVzZUNvbnRleHQiLCJHbG9iYWxMYXlvdXRSb3V0ZXJDb250ZXh0IiwiRXJyb3IiLCJJbm5lckxheW91dFJvdXRlciIsInRyZWUiLCJjYWNoZU5vZGUiLCJ1cmwiLCJmdWxsVHJlZSIsInJlc29sdmVkUHJlZmV0Y2hSc2MiLCJwcmVmZXRjaFJzYyIsInJzYyIsInVzZURlZmVycmVkVmFsdWUiLCJyZXNvbHZlZFJzYyIsInRoZW4iLCJ1c2UiLCJsYXp5RGF0YSIsInJlZmV0Y2hUcmVlIiwiaW5jbHVkZU5leHRVcmwiLCJoYXNJbnRlcmNlcHRpb25Sb3V0ZUluQ3VycmVudFRyZWUiLCJuYXZpZ2F0ZWRBdCIsIkRhdGUiLCJub3ciLCJmZXRjaFNlcnZlclJlc3BvbnNlIiwiVVJMIiwibG9jYXRpb24iLCJvcmlnaW4iLCJmbGlnaHRSb3V0ZXJTdGF0ZSIsIm5leHRVcmwiLCJzZXJ2ZXJSZXNwb25zZSIsInN0YXJ0VHJhbnNpdGlvbiIsImRpc3BhdGNoQXBwUm91dGVyQWN0aW9uIiwidHlwZSIsIkFDVElPTl9TRVJWRVJfUEFUQ0giLCJwcmV2aW91c1RyZWUiLCJ1bnJlc29sdmVkVGhlbmFibGUiLCJzdWJ0cmVlIiwiTGF5b3V0Um91dGVyQ29udGV4dCIsIlByb3ZpZGVyIiwidmFsdWUiLCJwYXJlbnRUcmVlIiwicGFyZW50Q2FjaGVOb2RlIiwicGFyZW50U2VnbWVudFBhdGgiLCJMb2FkaW5nQm91bmRhcnkiLCJsb2FkaW5nIiwibG9hZGluZ01vZHVsZURhdGEiLCJwcm9taXNlRm9yTG9hZGluZyIsImxvYWRpbmdSc2MiLCJsb2FkaW5nU3R5bGVzIiwibG9hZGluZ1NjcmlwdHMiLCJTdXNwZW5zZSIsImZhbGxiYWNrIiwicGFyYWxsZWxSb3V0ZXJLZXkiLCJlcnJvciIsImVycm9yU3R5bGVzIiwiZXJyb3JTY3JpcHRzIiwidGVtcGxhdGVTdHlsZXMiLCJ0ZW1wbGF0ZVNjcmlwdHMiLCJ0ZW1wbGF0ZSIsIm5vdEZvdW5kIiwiZm9yYmlkZGVuIiwidW5hdXRob3JpemVkIiwic2VnbWVudFZpZXdCb3VuZGFyaWVzIiwicGFyZW50UGFyYWxsZWxSb3V0ZXMiLCJwYXJhbGxlbFJvdXRlcyIsInNlZ21lbnRNYXAiLCJnZXQiLCJNYXAiLCJzZXQiLCJwYXJlbnRUcmVlU2VnbWVudCIsImNvbmNhdCIsImFjdGl2ZVRyZWUiLCJhY3RpdmVTZWdtZW50IiwiYWN0aXZlU3RhdGVLZXkiLCJjcmVhdGVSb3V0ZXJDYWNoZUtleSIsImJmY2FjaGVFbnRyeSIsInVzZVJvdXRlckJGQ2FjaGUiLCJzdGF0ZUtleSIsImNhY2hlS2V5IiwibmV3TGF6eUNhY2hlTm9kZSIsImhlYWQiLCJwcmVmZXRjaEhlYWQiLCJzZWdtZW50Qm91bmRhcnlUcmlnZ2VyTm9kZSIsInNlZ21lbnRWaWV3U3RhdGVOb2RlIiwiX19ORVhUX0RFVlRPT0xfU0VHTUVOVF9FWFBMT1JFUiIsIlNlZ21lbnRCb3VuZGFyeVRyaWdnZXJOb2RlIiwiU2VnbWVudFZpZXdTdGF0ZU5vZGUiLCJwYWdlUHJlZml4Iiwibm9ybWFsaXplQXBwUGF0aCIsInBhZ2UiLCJjaGlsZCIsIlRlbXBsYXRlQ29udGV4dCIsIkVycm9yQm91bmRhcnkiLCJlcnJvckNvbXBvbmVudCIsIkhUVFBBY2Nlc3NGYWxsYmFja0JvdW5kYXJ5IiwiUmVkaXJlY3RCb3VuZGFyeSIsIlNlZ21lbnRTdGF0ZVByb3ZpZGVyIiwibW9kZSIsInB1c2giLCJuZXh0Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/layout-router.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/components/metadata/async-metadata.js":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/components/metadata/async-metadata.js ***!
|
||
\*****************************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AsyncMetadataOutlet\", ({\n enumerable: true,\n get: function() {\n return AsyncMetadataOutlet;\n }\n}));\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst _react = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\nfunction MetadataOutlet(param) {\n let { promise } = param;\n const { error, digest } = (0, _react.use)(promise);\n if (error) {\n if (digest) {\n // The error will lose its original digest after passing from server layer to client layer;\n // We recover the digest property here to override the React created one if original digest exists.\n ;\n error.digest = digest;\n }\n throw error;\n }\n return null;\n}\n_c = MetadataOutlet;\nfunction AsyncMetadataOutlet(param) {\n let { promise } = param;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_react.Suspense, {\n fallback: null,\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(MetadataOutlet, {\n promise: promise\n })\n });\n}\n_c1 = AsyncMetadataOutlet;\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=async-metadata.js.map\nvar _c, _c1;\n$RefreshReg$(_c, \"MetadataOutlet\");\n$RefreshReg$(_c1, \"AsyncMetadataOutlet\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvbWV0YWRhdGEvYXN5bmMtbWV0YWRhdGEuanMiLCJtYXBwaW5ncyI6Ijs7Ozt1REFzQmdCQTs7O2VBQUFBOzs7O21DQXBCYztBQUc5Qix3QkFBd0IsS0FJdkI7SUFKdUIsTUFDdEJFLE9BQU8sRUFHUixHQUp1QjtJQUt0QixNQUFNLEVBQUVDLEtBQUssRUFBRUMsTUFBTSxFQUFFLEdBQUdDLENBQUFBLEdBQUFBLE9BQUFBLEdBQUFBLEVBQUlIO0lBQzlCLElBQUlDLE9BQU87UUFDVCxJQUFJQyxRQUFRO1lBQ1YsMkZBQTJGO1lBQzNGLG1HQUFtRzs7WUFDakdELE1BQWNDLE1BQU0sR0FBR0E7UUFDM0I7UUFDQSxNQUFNRDtJQUNSO0lBQ0EsT0FBTztBQUNUO0tBZlNGO0FBaUJGLDZCQUE2QixLQUluQztJQUptQyxNQUNsQ0MsT0FBTyxFQUdSLEdBSm1DO0lBS2xDLHFCQUNFLHFCQUFDSSxPQUFBQSxRQUFRO1FBQUNDLFVBQVU7a0JBQ2xCLG1DQUFDTixnQkFBQUE7WUFBZUMsU0FBU0E7OztBQUcvQjtNQVZnQkYiLCJzb3VyY2VzIjpbIi9Vc2Vycy9zcmMvY2xpZW50L2NvbXBvbmVudHMvbWV0YWRhdGEvYXN5bmMtbWV0YWRhdGEudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgeyBTdXNwZW5zZSwgdXNlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdHlwZSB7IFN0cmVhbWluZ01ldGFkYXRhUmVzb2x2ZWRTdGF0ZSB9IGZyb20gJy4vdHlwZXMnXG5cbmZ1bmN0aW9uIE1ldGFkYXRhT3V0bGV0KHtcbiAgcHJvbWlzZSxcbn06IHtcbiAgcHJvbWlzZTogUHJvbWlzZTxTdHJlYW1pbmdNZXRhZGF0YVJlc29sdmVkU3RhdGU+XG59KSB7XG4gIGNvbnN0IHsgZXJyb3IsIGRpZ2VzdCB9ID0gdXNlKHByb21pc2UpXG4gIGlmIChlcnJvcikge1xuICAgIGlmIChkaWdlc3QpIHtcbiAgICAgIC8vIFRoZSBlcnJvciB3aWxsIGxvc2UgaXRzIG9yaWdpbmFsIGRpZ2VzdCBhZnRlciBwYXNzaW5nIGZyb20gc2VydmVyIGxheWVyIHRvIGNsaWVudCBsYXllcu+8m1xuICAgICAgLy8gV2UgcmVjb3ZlciB0aGUgZGlnZXN0IHByb3BlcnR5IGhlcmUgdG8gb3ZlcnJpZGUgdGhlIFJlYWN0IGNyZWF0ZWQgb25lIGlmIG9yaWdpbmFsIGRpZ2VzdCBleGlzdHMuXG4gICAgICA7KGVycm9yIGFzIGFueSkuZGlnZXN0ID0gZGlnZXN0XG4gICAgfVxuICAgIHRocm93IGVycm9yXG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEFzeW5jTWV0YWRhdGFPdXRsZXQoe1xuICBwcm9taXNlLFxufToge1xuICBwcm9taXNlOiBQcm9taXNlPFN0cmVhbWluZ01ldGFkYXRhUmVzb2x2ZWRTdGF0ZT5cbn0pIHtcbiAgcmV0dXJuIChcbiAgICA8U3VzcGVuc2UgZmFsbGJhY2s9e251bGx9PlxuICAgICAgPE1ldGFkYXRhT3V0bGV0IHByb21pc2U9e3Byb21pc2V9IC8+XG4gICAgPC9TdXNwZW5zZT5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIkFzeW5jTWV0YWRhdGFPdXRsZXQiLCJNZXRhZGF0YU91dGxldCIsInByb21pc2UiLCJlcnJvciIsImRpZ2VzdCIsInVzZSIsIlN1c3BlbnNlIiwiZmFsbGJhY2siXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/metadata/async-metadata.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/components/render-from-template-context.js ***!
|
||
\**********************************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __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 RenderFromTemplateContext;\n }\n}));\nconst _interop_require_wildcard = __webpack_require__(/*! @swc/helpers/_/_interop_require_wildcard */ \"(app-pages-browser)/./node_modules/@swc/helpers/esm/_interop_require_wildcard.js\");\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst _approutercontextsharedruntime = __webpack_require__(/*! ../../shared/lib/app-router-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.js\");\nfunction RenderFromTemplateContext() {\n const children = (0, _react.useContext)(_approutercontextsharedruntime.TemplateContext);\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {\n children: children\n });\n}\n_c = RenderFromTemplateContext;\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=render-from-template-context.js.map\nvar _c;\n$RefreshReg$(_c, \"RenderFromTemplateContext\");\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2NvbXBvbmVudHMvcmVuZGVyLWZyb20tdGVtcGxhdGUtY29udGV4dC5qcyIsIm1hcHBpbmdzIjoiOzs7OzJDQUtBOzs7ZUFBd0JBOzs7Ozs2RUFIb0I7MkRBQ1o7QUFFakI7SUFDYixNQUFNQyxXQUFXQyxDQUFBQSxHQUFBQSxPQUFBQSxVQUFBQSxFQUFXQywrQkFBQUEsZUFBZTtJQUMzQyxxQkFBTztrQkFBR0Y7O0FBQ1o7S0FId0JEIiwic291cmNlcyI6WyIvVXNlcnMvamV0dGNoZW5nMTAxOC9zcmMvY2xpZW50L2NvbXBvbmVudHMvcmVuZGVyLWZyb20tdGVtcGxhdGUtY29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbmltcG9ydCBSZWFjdCwgeyB1c2VDb250ZXh0LCB0eXBlIEpTWCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVGVtcGxhdGVDb250ZXh0IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2xpYi9hcHAtcm91dGVyLWNvbnRleHQuc2hhcmVkLXJ1bnRpbWUnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJlbmRlckZyb21UZW1wbGF0ZUNvbnRleHQoKTogSlNYLkVsZW1lbnQge1xuICBjb25zdCBjaGlsZHJlbiA9IHVzZUNvbnRleHQoVGVtcGxhdGVDb250ZXh0KVxuICByZXR1cm4gPD57Y2hpbGRyZW59PC8+XG59XG4iXSwibmFtZXMiOlsiUmVuZGVyRnJvbVRlbXBsYXRlQ29udGV4dCIsImNoaWxkcmVuIiwidXNlQ29udGV4dCIsIlRlbXBsYXRlQ29udGV4dCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/components/render-from-template-context.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.dev.js":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/request/params.browser.dev.js ***!
|
||
\*********************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"createRenderParamsFromClient\", ({\n enumerable: true,\n get: function() {\n return createRenderParamsFromClient;\n }\n}));\nconst _reflect = __webpack_require__(/*! ../../server/web/spec-extension/adapters/reflect */ \"(app-pages-browser)/./node_modules/next/dist/server/web/spec-extension/adapters/reflect.js\");\nconst _invarianterror = __webpack_require__(/*! ../../shared/lib/invariant-error */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/invariant-error.js\");\nconst _reflectutils = __webpack_require__(/*! ../../shared/lib/utils/reflect-utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/reflect-utils.js\");\nconst CachedParams = new WeakMap();\nfunction makeDynamicallyTrackedExoticParamsWithDevWarnings(underlyingParams) {\n const cachedParams = CachedParams.get(underlyingParams);\n if (cachedParams) {\n return cachedParams;\n }\n // We don't use makeResolvedReactPromise here because params\n // supports copying with spread and we don't want to unnecessarily\n // instrument the promise with spreadable properties of ReactPromise.\n const promise = Promise.resolve(underlyingParams);\n const proxiedProperties = new Set();\n const unproxiedProperties = [];\n Object.keys(underlyingParams).forEach((prop)=>{\n if (_reflectutils.wellKnownProperties.has(prop)) {\n // These properties cannot be shadowed because they need to be the\n // true underlying value for Promises to work correctly at runtime\n } else {\n proxiedProperties.add(prop);\n promise[prop] = underlyingParams[prop];\n }\n });\n const proxiedPromise = new Proxy(promise, {\n get (target, prop, receiver) {\n if (typeof prop === 'string') {\n if (proxiedProperties.has(prop)) {\n const expression = (0, _reflectutils.describeStringPropertyAccess)('params', prop);\n warnForSyncAccess(expression);\n }\n }\n return _reflect.ReflectAdapter.get(target, prop, receiver);\n },\n set (target, prop, value, receiver) {\n if (typeof prop === 'string') {\n proxiedProperties.delete(prop);\n }\n return _reflect.ReflectAdapter.set(target, prop, value, receiver);\n },\n ownKeys (target) {\n warnForEnumeration(unproxiedProperties);\n return Reflect.ownKeys(target);\n }\n });\n CachedParams.set(underlyingParams, proxiedPromise);\n return proxiedPromise;\n}\n// Similar to `makeDynamicallyTrackedExoticParamsWithDevWarnings`, but just\n// logging the sync access without actually defining the params on the promise.\nfunction makeDynamicallyTrackedParamsWithDevWarnings(underlyingParams) {\n const cachedParams = CachedParams.get(underlyingParams);\n if (cachedParams) {\n return cachedParams;\n }\n // We don't use makeResolvedReactPromise here because params\n // supports copying with spread and we don't want to unnecessarily\n // instrument the promise with spreadable properties of ReactPromise.\n const promise = Promise.resolve(underlyingParams);\n const proxiedProperties = new Set();\n const unproxiedProperties = [];\n Object.keys(underlyingParams).forEach((prop)=>{\n if (_reflectutils.wellKnownProperties.has(prop)) {\n // These properties cannot be shadowed because they need to be the\n // true underlying value for Promises to work correctly at runtime\n } else {\n proxiedProperties.add(prop);\n }\n });\n const proxiedPromise = new Proxy(promise, {\n get (target, prop, receiver) {\n if (typeof prop === 'string') {\n if (proxiedProperties.has(prop)) {\n const expression = (0, _reflectutils.describeStringPropertyAccess)('params', prop);\n warnForSyncAccess(expression);\n }\n }\n return _reflect.ReflectAdapter.get(target, prop, receiver);\n },\n set (target, prop, value, receiver) {\n if (typeof prop === 'string') {\n proxiedProperties.delete(prop);\n }\n return _reflect.ReflectAdapter.set(target, prop, value, receiver);\n },\n ownKeys (target) {\n warnForEnumeration(unproxiedProperties);\n return Reflect.ownKeys(target);\n }\n });\n CachedParams.set(underlyingParams, proxiedPromise);\n return proxiedPromise;\n}\nfunction warnForSyncAccess(expression) {\n console.error(\"A param property was accessed directly with \" + expression + \". `params` is now a Promise and should be unwrapped with `React.use()` before accessing properties of the underlying params object. In this version of Next.js direct access to param properties is still supported to facilitate migration but in a future version you will be required to unwrap `params` with `React.use()`.\");\n}\nfunction warnForEnumeration(missingProperties) {\n if (missingProperties.length) {\n const describedMissingProperties = describeListOfPropertyNames(missingProperties);\n console.error(\"params are being enumerated incompletely missing these properties: \" + describedMissingProperties + \". \" + \"`params` should be unwrapped with `React.use()` before using its value. \" + \"Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis\");\n } else {\n console.error(\"params are being enumerated. \" + \"`params` should be unwrapped with `React.use()` before using its value. \" + \"Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis\");\n }\n}\nfunction describeListOfPropertyNames(properties) {\n switch(properties.length){\n case 0:\n throw Object.defineProperty(new _invarianterror.InvariantError('Expected describeListOfPropertyNames to be called with a non-empty list of strings.'), \"__NEXT_ERROR_CODE\", {\n value: \"E531\",\n enumerable: false,\n configurable: true\n });\n case 1:\n return \"`\" + properties[0] + \"`\";\n case 2:\n return \"`\" + properties[0] + \"` and `\" + properties[1] + \"`\";\n default:\n {\n let description = '';\n for(let i = 0; i < properties.length - 1; i++){\n description += \"`\" + properties[i] + \"`, \";\n }\n description += \", and `\" + properties[properties.length - 1] + \"`\";\n return description;\n }\n }\n}\nfunction createRenderParamsFromClient(clientParams) {\n if (false) {}\n return makeDynamicallyTrackedExoticParamsWithDevWarnings(clientParams);\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=params.browser.dev.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3JlcXVlc3QvcGFyYW1zLmJyb3dzZXIuZGV2LmpzIiwibWFwcGluZ3MiOiI7Ozs7Z0VBd0tnQkE7OztlQUFBQTs7O3FDQXRLZTs0Q0FDQTswQ0FJeEI7QUFHUCxNQUFNQyxlQUFlLElBQUlDO0FBRXpCLFNBQVNDLGtEQUNQQyxnQkFBd0I7SUFFeEIsTUFBTUMsZUFBZUosYUFBYUssR0FBRyxDQUFDRjtJQUN0QyxJQUFJQyxjQUFjO1FBQ2hCLE9BQU9BO0lBQ1Q7SUFFQSw0REFBNEQ7SUFDNUQsa0VBQWtFO0lBQ2xFLHFFQUFxRTtJQUNyRSxNQUFNRSxVQUFVQyxRQUFRQyxPQUFPLENBQUNMO0lBRWhDLE1BQU1NLG9CQUFvQixJQUFJQztJQUM5QixNQUFNQyxzQkFBcUMsRUFBRTtJQUU3Q0MsT0FBT0MsSUFBSSxDQUFDVixrQkFBa0JXLE9BQU8sQ0FBQyxDQUFDQztRQUNyQyxJQUFJQyxjQUFBQSxtQkFBbUIsQ0FBQ0MsR0FBRyxDQUFDRixPQUFPO1FBQ2pDLGtFQUFrRTtRQUNsRSxrRUFBa0U7UUFDcEUsT0FBTztZQUNMTixrQkFBa0JTLEdBQUcsQ0FBQ0g7WUFDcEJULE9BQWUsQ0FBQ1MsS0FBSyxHQUFHWixnQkFBZ0IsQ0FBQ1ksS0FBSztRQUNsRDtJQUNGO0lBRUEsTUFBTUksaUJBQWlCLElBQUlDLE1BQU1kLFNBQVM7UUFDeENELEtBQUlnQixNQUFNLEVBQUVOLElBQUksRUFBRU8sUUFBUTtZQUN4QixJQUFJLE9BQU9QLFNBQVMsVUFBVTtnQkFDNUIsSUFDRSxrQkFDa0JFLEdBQUcsQ0FBQ0YsT0FDdEI7b0JBQ0EsTUFBTVEsYUFBYUMsQ0FBQUEsR0FBQUEsY0FBQUEsNEJBQUFBLEVBQTZCLFVBQVVUO29CQUMxRFUsa0JBQWtCRjtnQkFDcEI7WUFDRjtZQUNBLE9BQU9HLFNBQUFBLGNBQWMsQ0FBQ3JCLEdBQUcsQ0FBQ2dCLFFBQVFOLE1BQU1PO1FBQzFDO1FBQ0FL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QVM7Z0JBQ1AsSUFBSUUsY0FBYztnQkFDbEIsSUFBSyxJQUFJQyxJQUFJLEdBQUdBLElBQUlILFdBQVdILE1BQU0sR0FBRyxHQUFHTSxJQUFLO29CQUM5Q0QsZUFBZ0IsTUFBSUYsVUFBVSxDQUFDRyxFQUFFLEdBQUM7Z0JBQ3BDO2dCQUNBRCxlQUFnQixZQUFVRixVQUFVLENBQUNBLFdBQVdILE1BQU0sR0FBRyxFQUFFLEdBQUM7Z0JBQzVELE9BQU9LO1lBQ1Q7SUFDRjtBQUNGO0FBRU8sU0FBUzNDLDZCQUNkNkMsWUFBb0I7SUFFcEIsSUFBSUMsS0FBbUMsRUFBRSxFQUV4QztJQUVELE9BQU8zQyxrREFBa0QwQztBQUMzRCIsInNvdXJjZXMiOlsiL1VzZXJzL2pldHRjaGVuZzEwMTgvc3JjL2NsaWVudC9yZXF1ZXN0L3BhcmFtcy5icm93c2VyLmRldi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBhcmFtcyB9IGZyb20gJy4uLy4uL3NlcnZlci9yZXF1ZXN0L3BhcmFtcydcblxuaW1wb3J0IHsgUmVmbGVjdEFkYXB0ZXIgfSBmcm9tICcuLi8uLi9zZXJ2ZXIvd2ViL3NwZWMtZXh0ZW5zaW9uL2FkYXB0ZXJzL3JlZmxlY3QnXG5pbXBvcnQgeyBJbnZhcmlhbnRFcnJvciB9IGZyb20gJy4uLy4uL3NoYXJlZC9saWIvaW52YXJpYW50LWVycm9yJ1xuaW1wb3J0IHtcbiAgZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzcyxcbiAgd2VsbEtub3duUHJvcGVydGllcyxcbn0gZnJvbSAnLi4vLi4vc2hhcmVkL2xpYi91dGlscy9yZWZsZWN0LXV0aWxzJ1xuXG5pbnRlcmZhY2UgQ2FjaGVMaWZldGltZSB7fVxuY29uc3QgQ2FjaGVkUGFyYW1zID0gbmV3IFdlYWtNYXA8Q2FjaGVMaWZldGltZSwgUHJvbWlzZTxQYXJhbXM+PigpXG5cbmZ1bmN0aW9uIG1ha2VEeW5hbWljYWxseVRyYWNrZWRFeG90aWNQYXJhbXNXaXRoRGV2V2FybmluZ3MoXG4gIHVuZGVybHlpbmdQYXJhbXM6IFBhcmFtc1xuKTogUHJvbWlzZTxQYXJhbXM+IHtcbiAgY29uc3QgY2FjaGVkUGFyYW1zID0gQ2FjaGVkUGFyYW1zLmdldCh1bmRlcmx5aW5nUGFyYW1zKVxuICBpZiAoY2FjaGVkUGFyYW1zKSB7XG4gICAgcmV0dXJuIGNhY2hlZFBhcmFtc1xuICB9XG5cbiAgLy8gV2UgZG9uJ3QgdXNlIG1ha2VSZXNvbHZlZFJlYWN0UHJvbWlzZSBoZXJlIGJlY2F1c2UgcGFyYW1zXG4gIC8vIHN1cHBvcnRzIGNvcHlpbmcgd2l0aCBzcHJlYWQgYW5kIHdlIGRvbid0IHdhbnQgdG8gdW5uZWNlc3NhcmlseVxuICAvLyBpbnN0cnVtZW50IHRoZSBwcm9taXNlIHdpdGggc3ByZWFkYWJsZSBwcm9wZXJ0aWVzIG9mIFJlYWN0UHJvbWlzZS5cbiAgY29uc3QgcHJvbWlzZSA9IFByb21pc2UucmVzb2x2ZSh1bmRlcmx5aW5nUGFyYW1zKVxuXG4gIGNvbnN0IHByb3hpZWRQcm9wZXJ0aWVzID0gbmV3IFNldDxzdHJpbmc+KClcbiAgY29uc3QgdW5wcm94aWVkUHJvcGVydGllczogQXJyYXk8c3RyaW5nPiA9IFtdXG5cbiAgT2JqZWN0LmtleXModW5kZXJseWluZ1BhcmFtcykuZm9yRWFjaCgocHJvcCkgPT4ge1xuICAgIGlmICh3ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhwcm9wKSkge1xuICAgICAgLy8gVGhlc2UgcHJvcGVydGllcyBjYW5ub3QgYmUgc2hhZG93ZWQgYmVjYXVzZSB0aGV5IG5lZWQgdG8gYmUgdGhlXG4gICAgICAvLyB0cnVlIHVuZGVybHlpbmcgdmFsdWUgZm9yIFByb21pc2VzIHRvIHdvcmsgY29ycmVjdGx5IGF0IHJ1bnRpbWVcbiAgICB9IGVsc2Uge1xuICAgICAgcHJveGllZFByb3BlcnRpZXMuYWRkKHByb3ApXG4gICAgICA7KHByb21pc2UgYXMgYW55KVtwcm9wXSA9IHVuZGVybHlpbmdQYXJhbXNbcHJvcF1cbiAgICB9XG4gIH0pXG5cbiAgY29uc3QgcHJveGllZFByb21pc2UgPSBuZXcgUHJveHkocHJvbWlzZSwge1xuICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7XG4gICAgICBpZiAodHlwZW9mIHByb3AgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAvLyBXZSBhcmUgYWNjZXNzaW5nIGEgcHJvcGVydHkgdGhhdCB3YXMgcHJveGllZCB0byB0aGUgcHJvbWlzZSBpbnN0YW5jZVxuICAgICAgICAgIHByb3hpZWRQcm9wZXJ0aWVzLmhhcyhwcm9wKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzcygncGFyYW1zJywgcHJvcClcbiAgICAgICAgICB3YXJuRm9yU3luY0FjY2VzcyhleHByZXNzaW9uKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gUmVmbGVjdEFkYXB0ZXIuZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpXG4gICAgfSxcbiAgICBzZXQodGFyZ2V0LCBwcm9wLCB2YWx1ZSwgcmVjZWl2ZXIpIHtcbiAgICAgIGlmICh0eXBlb2YgcHJvcCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcHJveGllZFByb3BlcnRpZXMuZGVsZXRlKHByb3ApXG4gICAgICB9XG4gICAgICByZXR1cm4gUmVmbGVjdEFkYXB0ZXIuc2V0KHRhcmdldCwgcHJvcCwgdmFsdWUsIHJlY2VpdmVyKVxuICAgIH0sXG4gICAgb3duS2V5cyh0YXJnZXQpIHtcbiAgICAgIHdhcm5Gb3JFbnVtZXJhdGlvbih1bnByb3hpZWRQcm9wZXJ0aWVzKVxuICAgICAgcmV0dXJuIFJlZmxlY3Qub3duS2V5cyh0YXJnZXQpXG4gICAgfSxcbiAgfSlcblxuICBDYWNoZWRQYXJhbXMuc2V0KHVuZGVybHlpbmdQYXJhbXMsIHByb3hpZWRQcm9taXNlKVxuICByZXR1cm4gcHJveGllZFByb21pc2Vcbn1cblxuLy8gU2ltaWxhciB0byBgbWFrZUR5bmFtaWNhbGx5VHJhY2tlZEV4b3RpY1BhcmFtc1dpdGhEZXZXYXJuaW5nc2AsIGJ1dCBqdXN0XG4vLyBsb2dnaW5nIHRoZSBzeW5jIGFjY2VzcyB3aXRob3V0IGFjdHVhbGx5IGRlZmluaW5nIHRoZSBwYXJhbXMgb24gdGhlIHByb21pc2UuXG5mdW5jdGlvbiBtYWtlRHluYW1pY2FsbHlUcmFja2VkUGFyYW1zV2l0aERldldhcm5pbmdzKFxuICB1bmRlcmx5aW5nUGFyYW1zOiBQYXJhbXNcbik6IFByb21pc2U8UGFyYW1zPiB7XG4gIGNvbnN0IGNhY2hlZFBhcmFtcyA9IENhY2hlZFBhcmFtcy5nZXQodW5kZXJseWluZ1BhcmFtcylcbiAgaWYgKGNhY2hlZFBhcmFtcykge1xuICAgIHJldHVybiBjYWNoZWRQYXJhbXNcbiAgfVxuXG4gIC8vIFdlIGRvbid0IHVzZSBtYWtlUmVzb2x2ZWRSZWFjdFByb21pc2UgaGVyZSBiZWNhdXNlIHBhcmFtc1xuICAvLyBzdXBwb3J0cyBjb3B5aW5nIHdpdGggc3ByZWFkIGFuZCB3ZSBkb24ndCB3YW50IHRvIHVubmVjZXNzYXJpbHlcbiAgLy8gaW5zdHJ1bWVudCB0aGUgcHJvbWlzZSB3aXRoIHNwcmVhZGFibGUgcHJvcGVydGllcyBvZiBSZWFjdFByb21pc2UuXG4gIGNvbnN0IHByb21pc2UgPSBQcm9taXNlLnJlc29sdmUodW5kZXJseWluZ1BhcmFtcylcblxuICBjb25zdCBwcm94aWVkUHJvcGVydGllcyA9IG5ldyBTZXQ8c3RyaW5nPigpXG4gIGNvbnN0IHVucHJveGllZFByb3BlcnRpZXM6IEFycmF5PHN0cmluZz4gPSBbXVxuXG4gIE9iamVjdC5rZXlzKHVuZGVybHlpbmdQYXJhbXMpLmZvckVhY2goKHByb3ApID0+IHtcbiAgICBpZiAod2VsbEtub3duUHJvcGVydGllcy5oYXMocHJvcCkpIHtcbiAgICAgIC8vIFRoZXNlIHByb3BlcnRpZXMgY2Fubm90IGJlIHNoYWRvd2VkIGJlY2F1c2UgdGhleSBuZWVkIHRvIGJlIHRoZVxuICAgICAgLy8gdHJ1ZSB1bmRlcmx5aW5nIHZhbHVlIGZvciBQcm9taXNlcyB0byB3b3JrIGNvcnJlY3RseSBhdCBydW50aW1lXG4gICAgfSBlbHNlIHtcbiAgICAgIHByb3hpZWRQcm9wZXJ0aWVzLmFkZChwcm9wKVxuICAgIH1cbiAgfSlcblxuICBjb25zdCBwcm94aWVkUHJvbWlzZSA9IG5ldyBQcm94eShwcm9taXNlLCB7XG4gICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHtcbiAgICAgIGlmICh0eXBlb2YgcHJvcCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIC8vIFdlIGFyZSBhY2Nlc3NpbmcgYSBwcm9wZXJ0eSB0aGF0IHdhcyBwcm94aWVkIHRvIHRoZSBwcm9taXNlIGluc3RhbmNlXG4gICAgICAgICAgcHJveGllZFByb3BlcnRpZXMuaGFzKHByb3ApXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBkZXNjcmliZVN0cmluZ1Byb3BlcnR5QWNjZXNzKCdwYXJhbXMnLCBwcm9wKVxuICAgICAgICAgIHdhcm5Gb3JTeW5jQWNjZXNzKGV4cHJlc3Npb24pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0QWRhcHRlci5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcilcbiAgICB9LFxuICAgIHNldCh0YXJnZXQsIHByb3AsIHZhbHVlLCByZWNlaXZlcikge1xuICAgICAgaWYgKHR5cGVvZiBwcm9wID09PSAnc3RyaW5nJykge1xuICAgICAgICBwcm94aWVkUHJvcGVydGllcy5kZWxldGUocHJvcClcbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0QWRhcHRlci5zZXQodGFyZ2V0LCBwcm9wLCB2YWx1ZSwgcmVjZWl2ZXIpXG4gICAgfSxcbiAgICBvd25LZXlzKHRhcmdldCkge1xuICAgICAgd2FybkZvckVudW1lcmF0aW9uKHVucHJveGllZFByb3BlcnRpZXMpXG4gICAgICByZXR1cm4gUmVmbGVjdC5vd25LZXlzKHRhcmdldClcbiAgICB9LFxuICB9KVxuXG4gIENhY2hlZFBhcmFtcy5zZXQodW5kZXJseWluZ1BhcmFtcywgcHJveGllZFByb21pc2UpXG4gIHJldHVybiBwcm94aWVkUHJvbWlzZVxufVxuXG5mdW5jdGlvbiB3YXJuRm9yU3luY0FjY2VzcyhleHByZXNzaW9uOiBzdHJpbmcpIHtcbiAgY29uc29sZS5lcnJvcihcbiAgICBgQSBwYXJhbSBwcm9wZXJ0eSB3YXMgYWNjZXNzZWQgZGlyZWN0bHkgd2l0aCAke2V4cHJlc3Npb259LiBcXGBwYXJhbXNcXGAgaXMgbm93IGEgUHJvbWlzZSBhbmQgc2hvdWxkIGJlIHVud3JhcHBlZCB3aXRoIFxcYFJlYWN0LnVzZSgpXFxgIGJlZm9yZSBhY2Nlc3NpbmcgcHJvcGVydGllcyBvZiB0aGUgdW5kZXJseWluZyBwYXJhbXMgb2JqZWN0LiBJbiB0aGlzIHZlcnNpb24gb2YgTmV4dC5qcyBkaXJlY3QgYWNjZXNzIHRvIHBhcmFtIHByb3BlcnRpZXMgaXMgc3RpbGwgc3VwcG9ydGVkIHRvIGZhY2lsaXRhdGUgbWlncmF0aW9uIGJ1dCBpbiBhIGZ1dHVyZSB2ZXJzaW9uIHlvdSB3aWxsIGJlIHJlcXVpcmVkIHRvIHVud3JhcCBcXGBwYXJhbXNcXGAgd2l0aCBcXGBSZWFjdC51c2UoKVxcYC5gXG4gIClcbn1cblxuZnVuY3Rpb24gd2FybkZvckVudW1lcmF0aW9uKG1pc3NpbmdQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+KSB7XG4gIGlmIChtaXNzaW5nUHJvcGVydGllcy5sZW5ndGgpIHtcbiAgICBjb25zdCBkZXNjcmliZWRNaXNzaW5nUHJvcGVydGllcyA9XG4gICAgICBkZXNjcmliZUxpc3RPZlByb3BlcnR5TmFtZXMobWlzc2luZ1Byb3BlcnRpZXMpXG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIGBwYXJhbXMgYXJlIGJlaW5nIGVudW1lcmF0ZWQgaW5jb21wbGV0ZWx5IG1pc3NpbmcgdGhlc2UgcHJvcGVydGllczogJHtkZXNjcmliZWRNaXNzaW5nUHJvcGVydGllc30uIGAgK1xuICAgICAgICBgXFxgcGFyYW1zXFxgIHNob3VsZCBiZSB1bndyYXBwZWQgd2l0aCBcXGBSZWFjdC51c2UoKVxcYCBiZWZvcmUgdXNpbmcgaXRzIHZhbHVlLiBgICtcbiAgICAgICAgYExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYFxuICAgIClcbiAgfSBlbHNlIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYHBhcmFtcyBhcmUgYmVpbmcgZW51bWVyYXRlZC4gYCArXG4gICAgICAgIGBcXGBwYXJhbXNcXGAgc2hvdWxkIGJlIHVud3JhcHBlZCB3aXRoIFxcYFJlYWN0LnVzZSgpXFxgIGJlZm9yZSB1c2luZyBpdHMgdmFsdWUuIGAgK1xuICAgICAgICBgTGVhcm4gbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvc3luYy1keW5hbWljLWFwaXNgXG4gICAgKVxuICB9XG59XG5cbmZ1bmN0aW9uIGRlc2NyaWJlTGlzdE9mUHJvcGVydHlOYW1lcyhwcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+KSB7XG4gIHN3aXRjaCAocHJvcGVydGllcy5sZW5ndGgpIHtcbiAgICBjYXNlIDA6XG4gICAgICB0aHJvdyBuZXcgSW52YXJpYW50RXJyb3IoXG4gICAgICAgICdFeHBlY3RlZCBkZXNjcmliZUxpc3RPZlByb3BlcnR5TmFtZXMgdG8gYmUgY2FsbGVkIHdpdGggYSBub24tZW1wdHkgbGlzdCBvZiBzdHJpbmdzLidcbiAgICAgIClcbiAgICBjYXNlIDE6XG4gICAgICByZXR1cm4gYFxcYCR7cHJvcGVydGllc1swXX1cXGBgXG4gICAgY2FzZSAyOlxuICAgICAgcmV0dXJuIGBcXGAke3Byb3BlcnRpZXNbMF19XFxgIGFuZCBcXGAke3Byb3BlcnRpZXNbMV19XFxgYFxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGxldCBkZXNjcmlwdGlvbiA9ICcnXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHByb3BlcnRpZXMubGVuZ3RoIC0gMTsgaSsrKSB7XG4gICAgICAgIGRlc2NyaXB0aW9uICs9IGBcXGAke3Byb3BlcnRpZXNbaV19XFxgLCBgXG4gICAgICB9XG4gICAgICBkZXNjcmlwdGlvbiArPSBgLCBhbmQgXFxgJHtwcm9wZXJ0aWVzW3Byb3BlcnRpZXMubGVuZ3RoIC0gMV19XFxgYFxuICAgICAgcmV0dXJuIGRlc2NyaXB0aW9uXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50KFxuICBjbGllbnRQYXJhbXM6IFBhcmFtc1xuKTogUHJvbWlzZTxQYXJhbXM+IHtcbiAgaWYgKHByb2Nlc3MuZW52Ll9fTkVYVF9DQUNIRV9DT01QT05FTlRTKSB7XG4gICAgcmV0dXJuIG1ha2VEeW5hbWljYWxseVRyYWNrZWRQYXJhbXNXaXRoRGV2V2FybmluZ3MoY2xpZW50UGFyYW1zKVxuICB9XG5cbiAgcmV0dXJuIG1ha2VEeW5hbWljYWxseVRyYWNrZWRFeG90aWNQYXJhbXNXaXRoRGV2V2FybmluZ3MoY2xpZW50UGFyYW1zKVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZVJlbmRlclBhcmFtc0Zyb21DbGllbnQiLCJDYWNoZWRQYXJhbXMiLCJXZWFrTWFwIiwibWFrZUR5bmFtaWNhbGx5VHJhY2tlZEV4b3RpY1BhcmFtc1dpdGhEZXZXYXJuaW5ncyIsInVuZGVybHlpbmdQYXJhbXMiLCJjYWNoZWRQYXJhbXMiLCJnZXQiLCJwcm9taXNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJwcm94aWVkUHJvcGVydGllcyIsIlNldCIsInVucHJveGllZFByb3BlcnRpZXMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsInByb3AiLCJ3ZWxsS25vd25Qcm9wZXJ0aWVzIiwiaGFzIiwiYWRkIiwicHJveGllZFByb21pc2UiLCJQcm94eSIsInRhcmdldCIsInJlY2VpdmVyIiwiZXhwcmVzc2lvbiIsImRlc2NyaWJlU3RyaW5nUHJvcGVydHlBY2Nlc3MiLCJ3YXJuRm9yU3luY0FjY2VzcyIsIlJlZmxlY3RBZGFwdGVyIiwic2V0IiwidmFsdWUiLCJkZWxldGUiLCJvd25LZXlzIiwid2FybkZvckVudW1lcmF0aW9uIiwiUmVmbGVjdCIsIm1ha2VEeW5hbWljYWxseVRyYWNrZWRQYXJhbXNXaXRoRGV2V2FybmluZ3MiLCJjb25zb2xlIiwiZXJyb3IiLCJtaXNzaW5nUHJvcGVydGllcyIsImxlbmd0aCIsImRlc2NyaWJlZE1pc3NpbmdQcm9wZXJ0aWVzIiwiZGVzY3JpYmVMaXN0T2ZQcm9wZXJ0eU5hbWVzIiwicHJvcGVydGllcyIsIkludmFyaWFudEVycm9yIiwiZGVzY3JpcHRpb24iLCJpIiwiY2xpZW50UGFyYW1zIiwicHJvY2VzcyIsImVudiIsIl9fTkVYVF9DQUNIRV9DT01QT05FTlRTIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.dev.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.js":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/request/params.browser.js ***!
|
||
\*****************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"createRenderParamsFromClient\", ({\n enumerable: true,\n get: function() {\n return createRenderParamsFromClient;\n }\n}));\nconst createRenderParamsFromClient = true ? (__webpack_require__(/*! ./params.browser.dev */ \"(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.dev.js\").createRenderParamsFromClient) : 0;\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=params.browser.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3JlcXVlc3QvcGFyYW1zLmJyb3dzZXIuanMiLCJtYXBwaW5ncyI6Ijs7OztnRUFBYUE7OztlQUFBQTs7O0FBQU4sTUFBTUEsK0JBQ1hDLEtBQW9CLEdBQ2ZHLG1LQUM4QixHQUU3QkEsQ0FDNEIiLCJzb3VyY2VzIjpbIi9Vc2Vycy9qZXR0Y2hlbmcxMDE4L3NyYy9jbGllbnQvcmVxdWVzdC9wYXJhbXMuYnJvd3Nlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCA9XG4gIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAnZGV2ZWxvcG1lbnQnXG4gICAgPyAocmVxdWlyZSgnLi9wYXJhbXMuYnJvd3Nlci5kZXYnKSBhcyB0eXBlb2YgaW1wb3J0KCcuL3BhcmFtcy5icm93c2VyLmRldicpKVxuICAgICAgICAuY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudFxuICAgIDogKFxuICAgICAgICByZXF1aXJlKCcuL3BhcmFtcy5icm93c2VyLnByb2QnKSBhcyB0eXBlb2YgaW1wb3J0KCcuL3BhcmFtcy5icm93c2VyLnByb2QnKVxuICAgICAgKS5jcmVhdGVSZW5kZXJQYXJhbXNGcm9tQ2xpZW50XG4iXSwibmFtZXMiOlsiY3JlYXRlUmVuZGVyUGFyYW1zRnJvbUNsaWVudCIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInJlcXVpcmUiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/request/params.browser.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.dev.js":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/request/search-params.browser.dev.js ***!
|
||
\****************************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"createRenderSearchParamsFromClient\", ({\n enumerable: true,\n get: function() {\n return createRenderSearchParamsFromClient;\n }\n}));\nconst _reflect = __webpack_require__(/*! ../../server/web/spec-extension/adapters/reflect */ \"(app-pages-browser)/./node_modules/next/dist/server/web/spec-extension/adapters/reflect.js\");\nconst _reflectutils = __webpack_require__(/*! ../../shared/lib/utils/reflect-utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/reflect-utils.js\");\nconst CachedSearchParams = new WeakMap();\nfunction makeUntrackedExoticSearchParamsWithDevWarnings(underlyingSearchParams) {\n const cachedSearchParams = CachedSearchParams.get(underlyingSearchParams);\n if (cachedSearchParams) {\n return cachedSearchParams;\n }\n const proxiedProperties = new Set();\n const unproxiedProperties = [];\n const promise = Promise.resolve(underlyingSearchParams);\n Object.keys(underlyingSearchParams).forEach((prop)=>{\n if (_reflectutils.wellKnownProperties.has(prop)) {\n // These properties cannot be shadowed because they need to be the\n // true underlying value for Promises to work correctly at runtime\n unproxiedProperties.push(prop);\n } else {\n proxiedProperties.add(prop);\n promise[prop] = underlyingSearchParams[prop];\n }\n });\n const proxiedPromise = new Proxy(promise, {\n get (target, prop, receiver) {\n if (typeof prop === 'string') {\n if (!_reflectutils.wellKnownProperties.has(prop) && (proxiedProperties.has(prop) || // We are accessing a property that doesn't exist on the promise nor\n // the underlying searchParams.\n Reflect.has(target, prop) === false)) {\n const expression = (0, _reflectutils.describeStringPropertyAccess)('searchParams', prop);\n warnForSyncAccess(expression);\n }\n }\n return _reflect.ReflectAdapter.get(target, prop, receiver);\n },\n set (target, prop, value, receiver) {\n if (typeof prop === 'string') {\n proxiedProperties.delete(prop);\n }\n return Reflect.set(target, prop, value, receiver);\n },\n has (target, prop) {\n if (typeof prop === 'string') {\n if (!_reflectutils.wellKnownProperties.has(prop) && (proxiedProperties.has(prop) || // We are accessing a property that doesn't exist on the promise nor\n // the underlying searchParams.\n Reflect.has(target, prop) === false)) {\n const expression = (0, _reflectutils.describeHasCheckingStringProperty)('searchParams', prop);\n warnForSyncAccess(expression);\n }\n }\n return Reflect.has(target, prop);\n },\n ownKeys (target) {\n warnForSyncSpread();\n return Reflect.ownKeys(target);\n }\n });\n CachedSearchParams.set(underlyingSearchParams, proxiedPromise);\n return proxiedPromise;\n}\n// Similar to `makeUntrackedExoticSearchParamsWithDevWarnings`, but just logging\n// the sync access without actually defining the search params on the promise.\nfunction makeUntrackedSearchParamsWithDevWarnings(underlyingSearchParams) {\n const cachedSearchParams = CachedSearchParams.get(underlyingSearchParams);\n if (cachedSearchParams) {\n return cachedSearchParams;\n }\n const proxiedProperties = new Set();\n const unproxiedProperties = [];\n const promise = Promise.resolve(underlyingSearchParams);\n Object.keys(underlyingSearchParams).forEach((prop)=>{\n if (_reflectutils.wellKnownProperties.has(prop)) {\n // These properties cannot be shadowed because they need to be the\n // true underlying value for Promises to work correctly at runtime\n unproxiedProperties.push(prop);\n } else {\n proxiedProperties.add(prop);\n }\n });\n const proxiedPromise = new Proxy(promise, {\n get (target, prop, receiver) {\n if (typeof prop === 'string') {\n if (!_reflectutils.wellKnownProperties.has(prop) && (proxiedProperties.has(prop) || // We are accessing a property that doesn't exist on the promise nor\n // the underlying searchParams.\n Reflect.has(target, prop) === false)) {\n const expression = (0, _reflectutils.describeStringPropertyAccess)('searchParams', prop);\n warnForSyncAccess(expression);\n }\n }\n return _reflect.ReflectAdapter.get(target, prop, receiver);\n },\n set (target, prop, value, receiver) {\n if (typeof prop === 'string') {\n proxiedProperties.delete(prop);\n }\n return Reflect.set(target, prop, value, receiver);\n },\n has (target, prop) {\n if (typeof prop === 'string') {\n if (!_reflectutils.wellKnownProperties.has(prop) && (proxiedProperties.has(prop) || // We are accessing a property that doesn't exist on the promise nor\n // the underlying searchParams.\n Reflect.has(target, prop) === false)) {\n const expression = (0, _reflectutils.describeHasCheckingStringProperty)('searchParams', prop);\n warnForSyncAccess(expression);\n }\n }\n return Reflect.has(target, prop);\n },\n ownKeys (target) {\n warnForSyncSpread();\n return Reflect.ownKeys(target);\n }\n });\n CachedSearchParams.set(underlyingSearchParams, proxiedPromise);\n return proxiedPromise;\n}\nfunction warnForSyncAccess(expression) {\n console.error(\"A searchParam property was accessed directly with \" + expression + \". \" + \"`searchParams` should be unwrapped with `React.use()` before accessing its properties. \" + \"Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis\");\n}\nfunction warnForSyncSpread() {\n console.error(\"The keys of `searchParams` were accessed directly. \" + \"`searchParams` should be unwrapped with `React.use()` before accessing its properties. \" + \"Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis\");\n}\nfunction createRenderSearchParamsFromClient(underlyingSearchParams) {\n if (false) {}\n return makeUntrackedExoticSearchParamsWithDevWarnings(underlyingSearchParams);\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=search-params.browser.dev.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3JlcXVlc3Qvc2VhcmNoLXBhcmFtcy5icm93c2VyLmRldi5qcyIsIm1hcHBpbmdzIjoiOzs7O3NFQWdMZ0JBOzs7ZUFBQUE7OztxQ0E5S2U7MENBS3hCO0FBR1AsTUFBTUMscUJBQXFCLElBQUlDO0FBRS9CLFNBQVNDLCtDQUNQQyxzQkFBb0M7SUFFcEMsTUFBTUMscUJBQXFCSixtQkFBbUJLLEdBQUcsQ0FBQ0Y7SUFDbEQsSUFBSUMsb0JBQW9CO1FBQ3RCLE9BQU9BO0lBQ1Q7SUFFQSxNQUFNRSxvQkFBb0IsSUFBSUM7SUFDOUIsTUFBTUMsc0JBQXFDLEVBQUU7SUFFN0MsTUFBTUMsVUFBVUMsUUFBUUMsT0FBTyxDQUFDUjtJQUVoQ1MsT0FBT0MsSUFBSSxDQUFDVix3QkFBd0JXLE9BQU8sQ0FBQyxDQUFDQztRQUMzQyxJQUFJQyxjQUFBQSxtQkFBbUIsQ0FBQ0MsR0FBRyxDQUFDRixPQUFPO1lBQ2pDLGtFQUFrRTtZQUNsRSxrRUFBa0U7WUFDbEVQLG9CQUFvQlUsSUFBSSxDQUFDSDtRQUMzQixPQUFPO1lBQ0xULGtCQUFrQmEsR0FBRyxDQUFDSjtZQUNwQk4sT0FBZSxDQUFDTSxLQUFLLEdBQUdaLHNCQUFzQixDQUFDWSxLQUFLO1FBQ3hEO0lBQ0Y7SUFFQSxNQUFNSyxpQkFBaUIsSUFBSUMsTUFBTVosU0FBUztRQUN4Q0osS0FBSWlCLE1BQU0sRUFBRVAsSUFBSSxFQUFFUSxRQUFRO1lBQ3hCLElBQUksT0FBT1IsU0FBUyxVQUFVO2dCQUM1QixJQUNFLENBQUNDLGNBQUFBLG1CQUFtQixDQUFDQyxHQUFHLENBQUNGLFNBQ3hCVCxDQUFBQSxrQkFBa0JXLEdBQUcsQ0FBQ0YsU0FDckIsb0VBQW9FO2dCQUNwRSwrQkFBK0I7Z0JBQy9CUyxRQUFRUCxHQUFHLENBQUNLLFFBQVFQLFVBQVUsTUFBSSxFQUNwQztvQkFDQSxNQUFNVSxhQUFhQyxDQUFBQSxHQUFBQSxjQUFB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LGtCQUFrQlcsR0FBRyxDQUFDRixTQUNyQixvRUFBb0U7Z0JBQ3BFLCtCQUErQjtnQkFDL0JTLFFBQVFQLEdBQUcsQ0FBQ0ssUUFBUVAsVUFBVSxNQUFJLEVBQ3BDO29CQUNBLE1BQU1VLGFBQWFPLENBQUFBLEdBQUFBLGNBQUFBLGlDQUFBQSxFQUNqQixnQkFDQWpCO29CQUVGWSxrQkFBa0JGO2dCQUNwQjtZQUNGO1lBQ0EsT0FBT0QsUUFBUVAsR0FBRyxDQUFDSyxRQUFRUDtRQUM3QjtRQUNBa0IsU0FBUVgsTUFBTTtZQUNaWTtZQUNBLE9BQU9WLFFBQVFTLE9BQU8sQ0FBQ1g7UUFDekI7SUFDRjtJQUVBdEIsbUJBQW1CNkIsR0FBRyxDQUFDMUIsd0JBQXdCaUI7SUFDL0MsT0FBT0E7QUFDVDtBQUVBLFNBQVNPLGtCQUFrQkYsVUFBa0I7SUFDM0NXLFFBQVFDLEtBQUssQ0FDVix1REFBb0RaLGFBQVcsT0FDN0QsNEZBQ0E7QUFFUDtBQUVBLFNBQVNTO0lBQ1BFLFFBQVFDLEtBQUssQ0FDVix3REFDRSw0RkFDQTtBQUVQO0FBRU8sU0FBU3RDLG1DQUNkSSxzQkFBb0M7SUFFcEMsSUFBSW1DLEtBQW1DLEVBQUUsRUFFeEM7SUFFRCxPQUFPcEMsK0NBQStDQztBQUN4RCIsInNvdXJjZXMiOlsiL1VzZXJzL2pldHRjaGVuZzEwMTgvc3JjL2NsaWVudC9yZXF1ZXN0L3NlYXJjaC1wYXJhbXMuYnJvd3Nlci5kZXYudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTZWFyY2hQYXJhbXMgfSBmcm9tICcuLi8uLi9zZXJ2ZXIvcmVxdWVzdC9zZWFyY2gtcGFyYW1zJ1xuXG5pbXBvcnQgeyBSZWZsZWN0QWRhcHRlciB9IGZyb20gJy4uLy4uL3NlcnZlci93ZWIvc3BlYy1leHRlbnNpb24vYWRhcHRlcnMvcmVmbGVjdCdcbmltcG9ydCB7XG4gIGRlc2NyaWJlU3RyaW5nUHJvcGVydHlBY2Nlc3MsXG4gIGRlc2NyaWJlSGFzQ2hlY2tpbmdTdHJpbmdQcm9wZXJ0eSxcbiAgd2VsbEtub3duUHJvcGVydGllcyxcbn0gZnJvbSAnLi4vLi4vc2hhcmVkL2xpYi91dGlscy9yZWZsZWN0LXV0aWxzJ1xuXG5pbnRlcmZhY2UgQ2FjaGVMaWZldGltZSB7fVxuY29uc3QgQ2FjaGVkU2VhcmNoUGFyYW1zID0gbmV3IFdlYWtNYXA8Q2FjaGVMaWZldGltZSwgUHJvbWlzZTxTZWFyY2hQYXJhbXM+PigpXG5cbmZ1bmN0aW9uIG1ha2VVbnRyYWNrZWRFeG90aWNTZWFyY2hQYXJhbXNXaXRoRGV2V2FybmluZ3MoXG4gIHVuZGVybHlpbmdTZWFyY2hQYXJhbXM6IFNlYXJjaFBhcmFtc1xuKTogUHJvbWlzZTxTZWFyY2hQYXJhbXM+IHtcbiAgY29uc3QgY2FjaGVkU2VhcmNoUGFyYW1zID0gQ2FjaGVkU2VhcmNoUGFyYW1zLmdldCh1bmRlcmx5aW5nU2VhcmNoUGFyYW1zKVxuICBpZiAoY2FjaGVkU2VhcmNoUGFyYW1zKSB7XG4gICAgcmV0dXJuIGNhY2hlZFNlYXJjaFBhcmFtc1xuICB9XG5cbiAgY29uc3QgcHJveGllZFByb3BlcnRpZXMgPSBuZXcgU2V0PHN0cmluZz4oKVxuICBjb25zdCB1bnByb3hpZWRQcm9wZXJ0aWVzOiBBcnJheTxzdHJpbmc+ID0gW11cblxuICBjb25zdCBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKHVuZGVybHlpbmdTZWFyY2hQYXJhbXMpXG5cbiAgT2JqZWN0LmtleXModW5kZXJseWluZ1NlYXJjaFBhcmFtcykuZm9yRWFjaCgocHJvcCkgPT4ge1xuICAgIGlmICh3ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhwcm9wKSkge1xuICAgICAgLy8gVGhlc2UgcHJvcGVydGllcyBjYW5ub3QgYmUgc2hhZG93ZWQgYmVjYXVzZSB0aGV5IG5lZWQgdG8gYmUgdGhlXG4gICAgICAvLyB0cnVlIHVuZGVybHlpbmcgdmFsdWUgZm9yIFByb21pc2VzIHRvIHdvcmsgY29ycmVjdGx5IGF0IHJ1bnRpbWVcbiAgICAgIHVucHJveGllZFByb3BlcnRpZXMucHVzaChwcm9wKVxuICAgIH0gZWxzZSB7XG4gICAgICBwcm94aWVkUHJvcGVydGllcy5hZGQocHJvcClcbiAgICAgIDsocHJvbWlzZSBhcyBhbnkpW3Byb3BdID0gdW5kZXJseWluZ1NlYXJjaFBhcmFtc1twcm9wXVxuICAgIH1cbiAgfSlcblxuICBjb25zdCBwcm94aWVkUHJvbWlzZSA9IG5ldyBQcm94eShwcm9taXNlLCB7XG4gICAgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHtcbiAgICAgIGlmICh0eXBlb2YgcHJvcCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICF3ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhwcm9wKSAmJlxuICAgICAgICAgIChwcm94aWVkUHJvcGVydGllcy5oYXMocHJvcCkgfHxcbiAgICAgICAgICAgIC8vIFdlIGFyZSBhY2Nlc3NpbmcgYSBwcm9wZXJ0eSB0aGF0IGRvZXNuJ3QgZXhpc3Qgb24gdGhlIHByb21pc2Ugbm9yXG4gICAgICAgICAgICAvLyB0aGUgdW5kZXJseWluZyBzZWFyY2hQYXJhbXMuXG4gICAgICAgICAgICBSZWZsZWN0Lmhhcyh0YXJnZXQsIHByb3ApID09PSBmYWxzZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGRlc2NyaWJlU3RyaW5nUHJvcGVydHlBY2Nlc3MoJ3NlYXJjaFBhcmFtcycsIHByb3ApXG4gICAgICAgICAgd2FybkZvclN5bmNBY2Nlc3MoZXhwcmVzc2lvbilcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIFJlZmxlY3RBZGFwdGVyLmdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKVxuICAgIH0sXG4gICAgc2V0KHRhcmdldCwgcHJvcCwgdmFsdWUsIHJlY2VpdmVyKSB7XG4gICAgICBpZiAodHlwZW9mIHByb3AgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHByb3hpZWRQcm9wZXJ0aWVzLmRlbGV0ZShwcm9wKVxuICAgICAgfVxuICAgICAgcmV0dXJuIFJlZmxlY3Quc2V0KHRhcmdldCwgcHJvcCwgdmFsdWUsIHJlY2VpdmVyKVxuICAgIH0sXG4gICAgaGFzKHRhcmdldCwgcHJvcCkge1xuICAgICAgaWYgKHR5cGVvZiBwcm9wID09PSAnc3RyaW5nJykge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIXdlbGxLbm93blByb3BlcnRpZXMuaGFzKHByb3ApICYmXG4gICAgICAgICAgKHByb3hpZWRQcm9wZXJ0aWVzLmhhcyhwcm9wKSB8fFxuICAgICAgICAgICAgLy8gV2UgYXJlIGFjY2Vzc2luZyBhIHByb3BlcnR5IHRoYXQgZG9lc24ndCBleGlzdCBvbiB0aGUgcHJvbWlzZSBub3JcbiAgICAgICAgICAgIC8vIHRoZSB1bmRlcmx5aW5nIHNlYXJjaFBhcmFtcy5cbiAgICAgICAgICAgIFJlZmxlY3QuaGFzKHRhcmdldCwgcHJvcCkgPT09IGZhbHNlKVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBleHByZXNzaW9uID0gZGVzY3JpYmVIYXNDaGVja2luZ1N0cmluZ1Byb3BlcnR5KFxuICAgICAgICAgICAgJ3NlYXJjaFBhcmFtcycsXG4gICAgICAgICAgICBwcm9wXG4gICAgICAgICAgKVxuICAgICAgICAgIHdhcm5Gb3JTeW5jQWNjZXNzKGV4cHJlc3Npb24pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0Lmhhcyh0YXJnZXQsIHByb3ApXG4gICAgfSxcbiAgICBvd25LZXlzKHRhcmdldCkge1xuICAgICAgd2FybkZvclN5bmNTcHJlYWQoKVxuICAgICAgcmV0dXJuIFJlZmxlY3Qub3duS2V5cyh0YXJnZXQpXG4gICAgfSxcbiAgfSlcblxuICBDYWNoZWRTZWFyY2hQYXJhbXMuc2V0KHVuZGVybHlpbmdTZWFyY2hQYXJhbXMsIHByb3hpZWRQcm9taXNlKVxuICByZXR1cm4gcHJveGllZFByb21pc2Vcbn1cblxuLy8gU2ltaWxhciB0byBgbWFrZVVudHJhY2tlZEV4b3RpY1NlYXJjaFBhcmFtc1dpdGhEZXZXYXJuaW5nc2AsIGJ1dCBqdXN0IGxvZ2dpbmdcbi8vIHRoZSBzeW5jIGFjY2VzcyB3aXRob3V0IGFjdHVhbGx5IGRlZmluaW5nIHRoZSBzZWFyY2ggcGFyYW1zIG9uIHRoZSBwcm9taXNlLlxuZnVuY3Rpb24gbWFrZVVudHJhY2tlZFNlYXJjaFBhcmFtc1dpdGhEZXZXYXJuaW5ncyhcbiAgdW5kZXJseWluZ1NlYXJjaFBhcmFtczogU2VhcmNoUGFyYW1zXG4pOiBQcm9taXNlPFNlYXJjaFBhcmFtcz4ge1xuICBjb25zdCBjYWNoZWRTZWFyY2hQYXJhbXMgPSBDYWNoZWRTZWFyY2hQYXJhbXMuZ2V0KHVuZGVybHlpbmdTZWFyY2hQYXJhbXMpXG4gIGlmIChjYWNoZWRTZWFyY2hQYXJhbXMpIHtcbiAgICByZXR1cm4gY2FjaGVkU2VhcmNoUGFyYW1zXG4gIH1cblxuICBjb25zdCBwcm94aWVkUHJvcGVydGllcyA9IG5ldyBTZXQ8c3RyaW5nPigpXG4gIGNvbnN0IHVucHJveGllZFByb3BlcnRpZXM6IEFycmF5PHN0cmluZz4gPSBbXVxuICBjb25zdCBwcm9taXNlID0gUHJvbWlzZS5yZXNvbHZlKHVuZGVybHlpbmdTZWFyY2hQYXJhbXMpXG5cbiAgT2JqZWN0LmtleXModW5kZXJseWluZ1NlYXJjaFBhcmFtcykuZm9yRWFjaCgocHJvcCkgPT4ge1xuICAgIGlmICh3ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhwcm9wKSkge1xuICAgICAgLy8gVGhlc2UgcHJvcGVydGllcyBjYW5ub3QgYmUgc2hhZG93ZWQgYmVjYXVzZSB0aGV5IG5lZWQgdG8gYmUgdGhlXG4gICAgICAvLyB0cnVlIHVuZGVybHlpbmcgdmFsdWUgZm9yIFByb21pc2VzIHRvIHdvcmsgY29ycmVjdGx5IGF0IHJ1bnRpbWVcbiAgICAgIHVucHJveGllZFByb3BlcnRpZXMucHVzaChwcm9wKVxuICAgIH0gZWxzZSB7XG4gICAgICBwcm94aWVkUHJvcGVydGllcy5hZGQocHJvcClcbiAgICB9XG4gIH0pXG5cbiAgY29uc3QgcHJveGllZFByb21pc2UgPSBuZXcgUHJveHkocHJvbWlzZSwge1xuICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7XG4gICAgICBpZiAodHlwZW9mIHByb3AgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAhd2VsbEtub3duUHJvcGVydGllcy5oYXMocHJvcCkgJiZcbiAgICAgICAgICAocHJveGllZFByb3BlcnRpZXMuaGFzKHByb3ApIHx8XG4gICAgICAgICAgICAvLyBXZSBhcmUgYWNjZXNzaW5nIGEgcHJvcGVydHkgdGhhdCBkb2Vzbid0IGV4aXN0IG9uIHRoZSBwcm9taXNlIG5vclxuICAgICAgICAgICAgLy8gdGhlIHVuZGVybHlpbmcgc2VhcmNoUGFyYW1zLlxuICAgICAgICAgICAgUmVmbGVjdC5oYXModGFyZ2V0LCBwcm9wKSA9PT0gZmFsc2UpXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IGV4cHJlc3Npb24gPSBkZXNjcmliZVN0cmluZ1Byb3BlcnR5QWNjZXNzKCdzZWFyY2hQYXJhbXMnLCBwcm9wKVxuICAgICAgICAgIHdhcm5Gb3JTeW5jQWNjZXNzKGV4cHJlc3Npb24pXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0QWRhcHRlci5nZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcilcbiAgICB9LFxuICAgIHNldCh0YXJnZXQsIHByb3AsIHZhbHVlLCByZWNlaXZlcikge1xuICAgICAgaWYgKHR5cGVvZiBwcm9wID09PSAnc3RyaW5nJykge1xuICAgICAgICBwcm94aWVkUHJvcGVydGllcy5kZWxldGUocHJvcClcbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0LnNldCh0YXJnZXQsIHByb3AsIHZhbHVlLCByZWNlaXZlcilcbiAgICB9LFxuICAgIGhhcyh0YXJnZXQsIHByb3ApIHtcbiAgICAgIGlmICh0eXBlb2YgcHJvcCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICF3ZWxsS25vd25Qcm9wZXJ0aWVzLmhhcyhwcm9wKSAmJlxuICAgICAgICAgIChwcm94aWVkUHJvcGVydGllcy5oYXMocHJvcCkgfHxcbiAgICAgICAgICAgIC8vIFdlIGFyZSBhY2Nlc3NpbmcgYSBwcm9wZXJ0eSB0aGF0IGRvZXNuJ3QgZXhpc3Qgb24gdGhlIHByb21pc2Ugbm9yXG4gICAgICAgICAgICAvLyB0aGUgdW5kZXJseWluZyBzZWFyY2hQYXJhbXMuXG4gICAgICAgICAgICBSZWZsZWN0Lmhhcyh0YXJnZXQsIHByb3ApID09PSBmYWxzZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgY29uc3QgZXhwcmVzc2lvbiA9IGRlc2NyaWJlSGFzQ2hlY2tpbmdTdHJpbmdQcm9wZXJ0eShcbiAgICAgICAgICAgICdzZWFyY2hQYXJhbXMnLFxuICAgICAgICAgICAgcHJvcFxuICAgICAgICAgIClcbiAgICAgICAgICB3YXJuRm9yU3luY0FjY2VzcyhleHByZXNzaW9uKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gUmVmbGVjdC5oYXModGFyZ2V0LCBwcm9wKVxuICAgIH0sXG4gICAgb3duS2V5cyh0YXJnZXQpIHtcbiAgICAgIHdhcm5Gb3JTeW5jU3ByZWFkKClcbiAgICAgIHJldHVybiBSZWZsZWN0Lm93bktleXModGFyZ2V0KVxuICAgIH0sXG4gIH0pXG5cbiAgQ2FjaGVkU2VhcmNoUGFyYW1zLnNldCh1bmRlcmx5aW5nU2VhcmNoUGFyYW1zLCBwcm94aWVkUHJvbWlzZSlcbiAgcmV0dXJuIHByb3hpZWRQcm9taXNlXG59XG5cbmZ1bmN0aW9uIHdhcm5Gb3JTeW5jQWNjZXNzKGV4cHJlc3Npb246IHN0cmluZykge1xuICBjb25zb2xlLmVycm9yKFxuICAgIGBBIHNlYXJjaFBhcmFtIHByb3BlcnR5IHdhcyBhY2Nlc3NlZCBkaXJlY3RseSB3aXRoICR7ZXhwcmVzc2lvbn0uIGAgK1xuICAgICAgYFxcYHNlYXJjaFBhcmFtc1xcYCBzaG91bGQgYmUgdW53cmFwcGVkIHdpdGggXFxgUmVhY3QudXNlKClcXGAgYmVmb3JlIGFjY2Vzc2luZyBpdHMgcHJvcGVydGllcy4gYCArXG4gICAgICBgTGVhcm4gbW9yZTogaHR0cHM6Ly9uZXh0anMub3JnL2RvY3MvbWVzc2FnZXMvc3luYy1keW5hbWljLWFwaXNgXG4gIClcbn1cblxuZnVuY3Rpb24gd2FybkZvclN5bmNTcHJlYWQoKSB7XG4gIGNvbnNvbGUuZXJyb3IoXG4gICAgYFRoZSBrZXlzIG9mIFxcYHNlYXJjaFBhcmFtc1xcYCB3ZXJlIGFjY2Vzc2VkIGRpcmVjdGx5LiBgICtcbiAgICAgIGBcXGBzZWFyY2hQYXJhbXNcXGAgc2hvdWxkIGJlIHVud3JhcHBlZCB3aXRoIFxcYFJlYWN0LnVzZSgpXFxgIGJlZm9yZSBhY2Nlc3NpbmcgaXRzIHByb3BlcnRpZXMuIGAgK1xuICAgICAgYExlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL3N5bmMtZHluYW1pYy1hcGlzYFxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZW5kZXJTZWFyY2hQYXJhbXNGcm9tQ2xpZW50KFxuICB1bmRlcmx5aW5nU2VhcmNoUGFyYW1zOiBTZWFyY2hQYXJhbXNcbik6IFByb21pc2U8U2VhcmNoUGFyYW1zPiB7XG4gIGlmIChwcm9jZXNzLmVudi5fX05FWFRfQ0FDSEVfQ09NUE9ORU5UUykge1xuICAgIHJldHVybiBtYWtlVW50cmFja2VkU2VhcmNoUGFyYW1zV2l0aERldldhcm5pbmdzKHVuZGVybHlpbmdTZWFyY2hQYXJhbXMpXG4gIH1cblxuICByZXR1cm4gbWFrZVVudHJhY2tlZEV4b3RpY1NlYXJjaFBhcmFtc1dpdGhEZXZXYXJuaW5ncyh1bmRlcmx5aW5nU2VhcmNoUGFyYW1zKVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZVJlbmRlclNlYXJjaFBhcmFtc0Zyb21DbGllbnQiLCJDYWNoZWRTZWFyY2hQYXJhbXMiLCJXZWFrTWFwIiwibWFrZVVudHJhY2tlZEV4b3RpY1NlYXJjaFBhcmFtc1dpdGhEZXZXYXJuaW5ncyIsInVuZGVybHlpbmdTZWFyY2hQYXJhbXMiLCJjYWNoZWRTZWFyY2hQYXJhbXMiLCJnZXQiLCJwcm94aWVkUHJvcGVydGllcyIsIlNldCIsInVucHJveGllZFByb3BlcnRpZXMiLCJwcm9taXNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsInByb3AiLCJ3ZWxsS25vd25Qcm9wZXJ0aWVzIiwiaGFzIiwicHVzaCIsImFkZCIsInByb3hpZWRQcm9taXNlIiwiUHJveHkiLCJ0YXJnZXQiLCJyZWNlaXZlciIsIlJlZmxlY3QiLCJleHByZXNzaW9uIiwiZGVzY3JpYmVTdHJpbmdQcm9wZXJ0eUFjY2VzcyIsIndhcm5Gb3JTeW5jQWNjZXNzIiwiUmVmbGVjdEFkYXB0ZXIiLCJzZXQiLCJ2YWx1ZSIsImRlbGV0ZSIsImRlc2NyaWJlSGFzQ2hlY2tpbmdTdHJpbmdQcm9wZXJ0eSIsIm93bktleXMiLCJ3YXJuRm9yU3luY1NwcmVhZCIsIm1ha2VVbnRyYWNrZWRTZWFyY2hQYXJhbXNXaXRoRGV2V2FybmluZ3MiLCJjb25zb2xlIiwiZXJyb3IiLCJwcm9jZXNzIiwiZW52IiwiX19ORVhUX0NBQ0hFX0NPTVBPTkVOVFMiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.dev.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.js":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/request/search-params.browser.js ***!
|
||
\************************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"createRenderSearchParamsFromClient\", ({\n enumerable: true,\n get: function() {\n return createRenderSearchParamsFromClient;\n }\n}));\nconst createRenderSearchParamsFromClient = true ? (__webpack_require__(/*! ./search-params.browser.dev */ \"(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.dev.js\").createRenderSearchParamsFromClient) : 0;\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=search-params.browser.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3JlcXVlc3Qvc2VhcmNoLXBhcmFtcy5icm93c2VyLmpzIiwibWFwcGluZ3MiOiI7Ozs7c0VBQWFBOzs7ZUFBQUE7OztBQUFOLE1BQU1BLHFDQUNYQyxLQUFvQixHQUVkRyx1TEFDa0MsR0FFbENBLENBQ2tDIiwic291cmNlcyI6WyIvVXNlcnMvamV0dGNoZW5nMTAxOC9zcmMvY2xpZW50L3JlcXVlc3Qvc2VhcmNoLXBhcmFtcy5icm93c2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBjcmVhdGVSZW5kZXJTZWFyY2hQYXJhbXNGcm9tQ2xpZW50ID1cbiAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCdcbiAgICA/IChcbiAgICAgICAgcmVxdWlyZSgnLi9zZWFyY2gtcGFyYW1zLmJyb3dzZXIuZGV2JykgYXMgdHlwZW9mIGltcG9ydCgnLi9zZWFyY2gtcGFyYW1zLmJyb3dzZXIuZGV2JylcbiAgICAgICkuY3JlYXRlUmVuZGVyU2VhcmNoUGFyYW1zRnJvbUNsaWVudFxuICAgIDogKFxuICAgICAgICByZXF1aXJlKCcuL3NlYXJjaC1wYXJhbXMuYnJvd3Nlci5wcm9kJykgYXMgdHlwZW9mIGltcG9ydCgnLi9zZWFyY2gtcGFyYW1zLmJyb3dzZXIucHJvZCcpXG4gICAgICApLmNyZWF0ZVJlbmRlclNlYXJjaFBhcmFtc0Zyb21DbGllbnRcbiJdLCJuYW1lcyI6WyJjcmVhdGVSZW5kZXJTZWFyY2hQYXJhbXNGcm9tQ2xpZW50IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwicmVxdWlyZSJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/request/search-params.browser.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/lib/metadata/generate/icon-mark.js":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/next/dist/lib/metadata/generate/icon-mark.js ***!
|
||
\*******************************************************************/
|
||
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __next_internal_client_entry_do_not_use__ cjs */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"IconMark\", ({\n enumerable: true,\n get: function() {\n return IconMark;\n }\n}));\nconst _jsxruntime = __webpack_require__(/*! react/jsx-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-runtime.js\");\nconst IconMark = ()=>{\n if (true) {\n return null;\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(\"meta\", {\n name: \"\\xabnxt-icon\\xbb\"\n });\n}; //# sourceMappingURL=icon-mark.js.map\n_c = IconMark;\nvar _c;\n$RefreshReg$(_c, \"IconMark\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvbGliL21ldGFkYXRhL2dlbmVyYXRlL2ljb24tbWFyay5qcyIsIm1hcHBpbmdzIjoiOzs7OzRDQVFhQTs7O2VBQUFBOzs7O0FBQU4saUJBQWlCO0lBQ3RCLElBQUksSUFBNkIsRUFBRTtRQUNqQyxPQUFPO0lBQ1Q7SUFDQSxxQkFBTyxxQkFBQ0UsUUFBQUE7UUFBS0MsTUFBSzs7QUFDcEI7S0FMYUgiLCJzb3VyY2VzIjpbIi9Vc2Vycy9zcmMvbGliL21ldGFkYXRhL2dlbmVyYXRlL2ljb24tbWFyay50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnXG5cbi8vIFRoaXMgaXMgYSBjbGllbnQgY29tcG9uZW50IHRoYXQgb25seSByZW5kZXJzIGR1cmluZyBTU1IsXG4vLyBidXQgd2lsbCBiZSByZXBsYWNlZCBkdXJpbmcgc3RyZWFtaW5nIHdpdGggYW4gaWNvbiBpbnNlcnRpb24gc2NyaXB0IHRhZy5cbi8vIFdlIGRvbid0IHdhbnQgaXQgdG8gYmUgcHJlc2VudGVkIGFueXdoZXJlIHNvIGl0J3Mgb25seSB2aXNpYmxlIGR1cmluZyBzdHJlYW1pbmcsXG4vLyByaWdodCBhZnRlciB0aGUgaWNvbiBtZXRhIHRhZ3Mgc28gdGhhdCBicm93c2VyIGNhbiBwaWNrIGl0IHVwIGFzIHNvb24gYXMgaXQncyByZW5kZXJlZC5cbi8vIE5vdGU6IHdlIGRvbid0IGp1c3QgZW1pdCB0aGUgc2NyaXB0IGhlcmUgYmVjYXVzZSB3ZSBvbmx5IG5lZWQgdGhlIHNjcmlwdCBpZiBpdCdzIG5vdCBpbiB0aGUgaGVhZCxcbi8vIGFuZCB3ZSBuZWVkIGl0IHRvIGJlIGhvaXN0YWJsZSBhbG9uZ3NpZGUgdGhlIG90aGVyIG1ldGFkYXRhIGJ1dCBzeW5jIHNjcmlwdHMgYXJlIG5vdCBob2lzdGFibGUuXG5leHBvcnQgY29uc3QgSWNvbk1hcmsgPSAoKSA9PiB7XG4gIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBudWxsXG4gIH1cbiAgcmV0dXJuIDxtZXRhIG5hbWU9XCLCq254dC1pY29uwrtcIiAvPlxufVxuIl0sIm5hbWVzIjpbIkljb25NYXJrIiwid2luZG93IiwibWV0YSIsIm5hbWUiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/lib/metadata/generate/icon-mark.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/server/web/spec-extension/adapters/reflect.js":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/next/dist/server/web/spec-extension/adapters/reflect.js ***!
|
||
\******************************************************************************/
|
||
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"ReflectAdapter\", ({\n enumerable: true,\n get: function() {\n return ReflectAdapter;\n }\n}));\nclass ReflectAdapter {\n static get(target, prop, receiver) {\n const value = Reflect.get(target, prop, receiver);\n if (typeof value === 'function') {\n return value.bind(target);\n }\n return value;\n }\n static set(target, prop, value, receiver) {\n return Reflect.set(target, prop, value, receiver);\n }\n static has(target, prop) {\n return Reflect.has(target, prop);\n }\n static deleteProperty(target, prop) {\n return Reflect.deleteProperty(target, prop);\n }\n}\n\n//# sourceMappingURL=reflect.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2VydmVyL3dlYi9zcGVjLWV4dGVuc2lvbi9hZGFwdGVycy9yZWZsZWN0LmpzIiwibWFwcGluZ3MiOiJBQUFhO0FBQ2IsOENBQTZDO0FBQzdDO0FBQ0EsQ0FBQyxFQUFDO0FBQ0Ysa0RBQWlEO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQyxFQUFDO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBIiwic291cmNlcyI6WyIvVXNlcnMvamV0dGNoZW5nMTAxOC9jb2RlL2RyYW1hbGluZy12b2NhYi1sZWFybmluZy9mcm9udGVuZC9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L3NlcnZlci93ZWIvc3BlYy1leHRlbnNpb24vYWRhcHRlcnMvcmVmbGVjdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIl9fZXNNb2R1bGVcIiwge1xuICAgIHZhbHVlOiB0cnVlXG59KTtcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBcIlJlZmxlY3RBZGFwdGVyXCIsIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGdldDogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0QWRhcHRlcjtcbiAgICB9XG59KTtcbmNsYXNzIFJlZmxlY3RBZGFwdGVyIHtcbiAgICBzdGF0aWMgZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKTtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmJpbmQodGFyZ2V0KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIHN0YXRpYyBzZXQodGFyZ2V0LCBwcm9wLCB2YWx1ZSwgcmVjZWl2ZXIpIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3Quc2V0KHRhcmdldCwgcHJvcCwgdmFsdWUsIHJlY2VpdmVyKTtcbiAgICB9XG4gICAgc3RhdGljIGhhcyh0YXJnZXQsIHByb3ApIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3QuaGFzKHRhcmdldCwgcHJvcCk7XG4gICAgfVxuICAgIHN0YXRpYyBkZWxldGVQcm9wZXJ0eSh0YXJnZXQsIHByb3ApIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3QuZGVsZXRlUHJvcGVydHkodGFyZ2V0LCBwcm9wKTtcbiAgICB9XG59XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXJlZmxlY3QuanMubWFwIl0sIm5hbWVzIjpbXSwiaWdub3JlTGlzdCI6WzBdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/server/web/spec-extension/adapters/reflect.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/disable-smooth-scroll.js":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/disable-smooth-scroll.js ***!
|
||
\*********************************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"disableSmoothScrollDuringRouteTransition\", ({\n enumerable: true,\n get: function() {\n return disableSmoothScrollDuringRouteTransition;\n }\n}));\nconst _warnonce = __webpack_require__(/*! ../../utils/warn-once */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/warn-once.js\");\nfunction disableSmoothScrollDuringRouteTransition(fn, options) {\n if (options === void 0) options = {};\n // if only the hash is changed, we don't need to disable smooth scrolling\n // we only care to prevent smooth scrolling when navigating to a new page to avoid jarring UX\n if (options.onlyHashChange) {\n fn();\n return;\n }\n const htmlElement = document.documentElement;\n const hasDataAttribute = htmlElement.dataset.scrollBehavior === 'smooth';\n // Since this is a breaking change, this is temporarily flagged\n // and will be false by default.\n // In the next major (v16), this will be automatically enabled\n if (false) {} else {\n // Old behavior: always manipulate styles, but warn about upcoming change\n // Warn if smooth scrolling is detected but no data attribute is present\n if ( true && !hasDataAttribute && getComputedStyle(htmlElement).scrollBehavior === 'smooth') {\n (0, _warnonce.warnOnce)('Detected `scroll-behavior: smooth` on the `<html>` element. In a future version, ' + 'Next.js will no longer automatically disable smooth scrolling during route transitions. ' + 'To prepare for this change, add `data-scroll-behavior=\"smooth\"` to your <html> element. ' + 'Learn more: https://nextjs.org/docs/messages/missing-data-scroll-behavior');\n }\n }\n // Proceed with temporarily disabling smooth scrolling\n const existing = htmlElement.style.scrollBehavior;\n htmlElement.style.scrollBehavior = 'auto';\n if (!options.dontForceLayout) {\n // In Chrome-based browsers we need to force reflow before calling `scrollTo`.\n // Otherwise it will not pickup the change in scrollBehavior\n // More info here: https://github.com/vercel/next.js/issues/40719#issuecomment-1336248042\n htmlElement.getClientRects();\n }\n fn();\n htmlElement.style.scrollBehavior = existing;\n} //# sourceMappingURL=disable-smooth-scroll.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvZGlzYWJsZS1zbW9vdGgtc2Nyb2xsLmpzIiwibWFwcGluZ3MiOiI7Ozs7NEVBTWdCQTs7O2VBQUFBOzs7c0NBTlM7QUFNbEIsU0FBU0EseUNBQ2RDLEVBQWMsRUFDZEMsT0FBcUU7SUFBckVBLElBQUFBLFlBQUFBLEtBQUFBLEdBQUFBLFVBQW1FLENBQUM7SUFFcEUseUVBQXlFO0lBQ3pFLDZGQUE2RjtJQUM3RixJQUFJQSxRQUFRQyxjQUFjLEVBQUU7UUFDMUJGO1FBQ0E7SUFDRjtJQUVBLE1BQU1HLGNBQWNDLFNBQVNDLGVBQWU7SUFDNUMsTUFBTUMsbUJBQW1CSCxZQUFZSSxPQUFPLENBQUNDLGNBQWMsS0FBSztJQUVoRSwrREFBK0Q7SUFDL0QsZ0NBQWdDO0lBQ2hDLDhEQUE4RDtJQUM5RCxJQUFJQyxLQUF5QyxFQUFFLEVBTTlDLE1BQU07UUFDTCx5RUFBeUU7UUFFekUsd0VBQXdFO1FBQ3hFLElBQ0VBLEtBQW9CLElBQ3BCLENBQUNILG9CQUNETyxpQkFBaUJWLGFBQWFLLGNBQWMsS0FBSyxVQUNqRDtZQUNBTSxDQUFBQSxHQUFBQSxVQUFBQSxRQUFBQSxFQUNFLHNGQUNFLDZGQUNBLDZGQUNBO1FBRU47SUFDRjtJQUVBLHNEQUFzRDtJQUN0RCxNQUFNQyxXQUFXWixZQUFZYSxLQUFLLENBQUNSLGNBQWM7SUFDakRMLFlBQVlhLEtBQUssQ0FBQ1IsY0FBYyxHQUFHO0lBQ25DLElBQUksQ0FBQ1AsUUFBUWdCLGVBQWUsRUFBRTtRQUM1Qiw4RUFBOEU7UUFDOUUsNERBQTREO1FBQzVELHlGQUF5RjtRQUN6RmQsWUFBWWUsY0FBYztJQUM1QjtJQUNBbEI7SUFDQUcsWUFBWWEsS0FBSyxDQUFDUixjQUFjLEdBQUdPO0FBQ3JDIiwic291cmNlcyI6WyIvc3JjL3NoYXJlZC9saWIvcm91dGVyL3V0aWxzL2Rpc2FibGUtc21vb3RoLXNjcm9sbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB3YXJuT25jZSB9IGZyb20gJy4uLy4uL3V0aWxzL3dhcm4tb25jZSdcblxuLyoqXG4gKiBSdW4gZnVuY3Rpb24gd2l0aCBgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvYCBhcHBsaWVkIHRvIGA8aHRtbC8+YC5cbiAqIFRoaXMgY3NzIGNoYW5nZSB3aWxsIGJlIHJldmVydGVkIGFmdGVyIHRoZSBmdW5jdGlvbiBmaW5pc2hlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRpc2FibGVTbW9vdGhTY3JvbGxEdXJpbmdSb3V0ZVRyYW5zaXRpb24oXG4gIGZuOiAoKSA9PiB2b2lkLFxuICBvcHRpb25zOiB7IGRvbnRGb3JjZUxheW91dD86IGJvb2xlYW47IG9ubHlIYXNoQ2hhbmdlPzogYm9vbGVhbiB9ID0ge31cbikge1xuICAvLyBpZiBvbmx5IHRoZSBoYXNoIGlzIGNoYW5nZWQsIHdlIGRvbid0IG5lZWQgdG8gZGlzYWJsZSBzbW9vdGggc2Nyb2xsaW5nXG4gIC8vIHdlIG9ubHkgY2FyZSB0byBwcmV2ZW50IHNtb290aCBzY3JvbGxpbmcgd2hlbiBuYXZpZ2F0aW5nIHRvIGEgbmV3IHBhZ2UgdG8gYXZvaWQgamFycmluZyBVWFxuICBpZiAob3B0aW9ucy5vbmx5SGFzaENoYW5nZSkge1xuICAgIGZuKClcbiAgICByZXR1cm5cbiAgfVxuXG4gIGNvbnN0IGh0bWxFbGVtZW50ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50XG4gIGNvbnN0IGhhc0RhdGFBdHRyaWJ1dGUgPSBodG1sRWxlbWVudC5kYXRhc2V0LnNjcm9sbEJlaGF2aW9yID09PSAnc21vb3RoJ1xuXG4gIC8vIFNpbmNlIHRoaXMgaXMgYSBicmVha2luZyBjaGFuZ2UsIHRoaXMgaXMgdGVtcG9yYXJpbHkgZmxhZ2dlZFxuICAvLyBhbmQgd2lsbCBiZSBmYWxzZSBieSBkZWZhdWx0LlxuICAvLyBJbiB0aGUgbmV4dCBtYWpvciAodjE2KSwgdGhpcyB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgZW5hYmxlZFxuICBpZiAocHJvY2Vzcy5lbnYuX19ORVhUX09QVElNSVpFX1JPVVRFUl9TQ1JPTEwpIHtcbiAgICBpZiAoIWhhc0RhdGFBdHRyaWJ1dGUpIHtcbiAgICAgIC8vIE5vIHNtb290aCBzY3JvbGxpbmcgY29uZmlndXJlZCwgcnVuIGRpcmVjdGx5IHdpdGhvdXQgc3R5bGUgbWFuaXB1bGF0aW9uXG4gICAgICBmbigpXG4gICAgICByZXR1cm5cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLy8gT2xkIGJlaGF2aW9yOiBhbHdheXMgbWFuaXB1bGF0ZSBzdHlsZXMsIGJ1dCB3YXJuIGFib3V0IHVwY29taW5nIGNoYW5nZVxuXG4gICAgLy8gV2FybiBpZiBzbW9vdGggc2Nyb2xsaW5nIGlzIGRldGVjdGVkIGJ1dCBubyBkYXRhIGF0dHJpYnV0ZSBpcyBwcmVzZW50XG4gICAgaWYgKFxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdkZXZlbG9wbWVudCcgJiZcbiAgICAgICFoYXNEYXRhQXR0cmlidXRlICYmXG4gICAgICBnZXRDb21wdXRlZFN0eWxlKGh0bWxFbGVtZW50KS5zY3JvbGxCZWhhdmlvciA9PT0gJ3Ntb290aCdcbiAgICApIHtcbiAgICAgIHdhcm5PbmNlKFxuICAgICAgICAnRGV0ZWN0ZWQgYHNjcm9sbC1iZWhhdmlvcjogc21vb3RoYCBvbiB0aGUgYDxodG1sPmAgZWxlbWVudC4gSW4gYSBmdXR1cmUgdmVyc2lvbiwgJyArXG4gICAgICAgICAgJ05leHQuanMgd2lsbCBubyBsb25nZXIgYXV0b21hdGljYWxseSBkaXNhYmxlIHNtb290aCBzY3JvbGxpbmcgZHVyaW5nIHJvdXRlIHRyYW5zaXRpb25zLiAnICtcbiAgICAgICAgICAnVG8gcHJlcGFyZSBmb3IgdGhpcyBjaGFuZ2UsIGFkZCBgZGF0YS1zY3JvbGwtYmVoYXZpb3I9XCJzbW9vdGhcImAgdG8geW91ciA8aHRtbD4gZWxlbWVudC4gJyArXG4gICAgICAgICAgJ0xlYXJuIG1vcmU6IGh0dHBzOi8vbmV4dGpzLm9yZy9kb2NzL21lc3NhZ2VzL21pc3NpbmctZGF0YS1zY3JvbGwtYmVoYXZpb3InXG4gICAgICApXG4gICAgfVxuICB9XG5cbiAgLy8gUHJvY2VlZCB3aXRoIHRlbXBvcmFyaWx5IGRpc2FibGluZyBzbW9vdGggc2Nyb2xsaW5nXG4gIGNvbnN0IGV4aXN0aW5nID0gaHRtbEVsZW1lbnQuc3R5bGUuc2Nyb2xsQmVoYXZpb3JcbiAgaHRtbEVsZW1lbnQuc3R5bGUuc2Nyb2xsQmVoYXZpb3IgPSAnYXV0bydcbiAgaWYgKCFvcHRpb25zLmRvbnRGb3JjZUxheW91dCkge1xuICAgIC8vIEluIENocm9tZS1iYXNlZCBicm93c2VycyB3ZSBuZWVkIHRvIGZvcmNlIHJlZmxvdyBiZWZvcmUgY2FsbGluZyBgc2Nyb2xsVG9gLlxuICAgIC8vIE90aGVyd2lzZSBpdCB3aWxsIG5vdCBwaWNrdXAgdGhlIGNoYW5nZSBpbiBzY3JvbGxCZWhhdmlvclxuICAgIC8vIE1vcmUgaW5mbyBoZXJlOiBodHRwczovL2dpdGh1Yi5jb20vdmVyY2VsL25leHQuanMvaXNzdWVzLzQwNzE5I2lzc3VlY29tbWVudC0xMzM2MjQ4MDQyXG4gICAgaHRtbEVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMoKVxuICB9XG4gIGZuKClcbiAgaHRtbEVsZW1lbnQuc3R5bGUuc2Nyb2xsQmVoYXZpb3IgPSBleGlzdGluZ1xufVxuIl0sIm5hbWVzIjpbImRpc2FibGVTbW9vdGhTY3JvbGxEdXJpbmdSb3V0ZVRyYW5zaXRpb24iLCJmbiIsIm9wdGlvbnMiLCJvbmx5SGFzaENoYW5nZSIsImh0bWxFbGVtZW50IiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJoYXNEYXRhQXR0cmlidXRlIiwiZGF0YXNldCIsInNjcm9sbEJlaGF2aW9yIiwicHJvY2VzcyIsImVudiIsIl9fTkVYVF9PUFRJTUlaRV9ST1VURVJfU0NST0xMIiwiTk9ERV9FTlYiLCJnZXRDb21wdXRlZFN0eWxlIiwid2Fybk9uY2UiLCJleGlzdGluZyIsInN0eWxlIiwiZG9udEZvcmNlTGF5b3V0IiwiZ2V0Q2xpZW50UmVjdHMiXSwiaWdub3JlTGlzdCI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/disable-smooth-scroll.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/reflect-utils.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/utils/reflect-utils.js ***!
|
||
\******************************************************************/
|
||
/***/ ((module, exports, __webpack_require__) => {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("// This regex will have fast negatives meaning valid identifiers may not pass\n// this test. However this is only used during static generation to provide hints\n// about why a page bailed out of some or all prerendering and we can use bracket notation\n// for example while `ಠ_ಠ` is a valid identifier it's ok to print `searchParams['ಠ_ಠ']`\n// even if this would have been fine too `searchParams.ಠ_ಠ`\n\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 describeHasCheckingStringProperty: function() {\n return describeHasCheckingStringProperty;\n },\n describeStringPropertyAccess: function() {\n return describeStringPropertyAccess;\n },\n wellKnownProperties: function() {\n return wellKnownProperties;\n }\n});\nconst isDefinitelyAValidIdentifier = /^[A-Za-z_$][A-Za-z0-9_$]*$/;\nfunction describeStringPropertyAccess(target, prop) {\n if (isDefinitelyAValidIdentifier.test(prop)) {\n return \"`\" + target + \".\" + prop + \"`\";\n }\n return \"`\" + target + \"[\" + JSON.stringify(prop) + \"]`\";\n}\nfunction describeHasCheckingStringProperty(target, prop) {\n const stringifiedProp = JSON.stringify(prop);\n return \"`Reflect.has(\" + target + \", \" + stringifiedProp + \")`, `\" + stringifiedProp + \" in \" + target + \"`, or similar\";\n}\nconst wellKnownProperties = new Set([\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toString',\n 'valueOf',\n 'toLocaleString',\n // Promise prototype\n // fallthrough\n 'then',\n 'catch',\n 'finally',\n // React Promise extension\n // fallthrough\n 'status',\n // React introspection\n 'displayName',\n '_debugInfo',\n // Common tested properties\n // fallthrough\n 'toJSON',\n '$$typeof',\n '__esModule'\n]); //# sourceMappingURL=reflect-utils.js.map\n\n\n;\n // Wrapped in an IIFE to avoid polluting the global scope\n ;\n (function () {\n var _a, _b;\n // Legacy CSS implementations will `eval` browser code in a Node.js context\n // to extract CSS. For backwards compatibility, we need to check we're in a\n // browser context before continuing.\n if (typeof self !== 'undefined' &&\n // AMP / No-JS mode does not inject these helpers:\n '$RefreshHelpers$' in self) {\n // @ts-ignore __webpack_module__ is global\n var currentExports = module.exports;\n // @ts-ignore __webpack_module__ is global\n var prevSignature = (_b = (_a = module.hot.data) === null || _a === void 0 ? void 0 : _a.prevSignature) !== null && _b !== void 0 ? _b : null;\n // This cannot happen in MainTemplate because the exports mismatch between\n // templating and execution.\n self.$RefreshHelpers$.registerExportsForReactRefresh(currentExports, module.id);\n // A module can be accepted automatically based on its exports, e.g. when\n // it is a Refresh Boundary.\n if (self.$RefreshHelpers$.isReactRefreshBoundary(currentExports)) {\n // Save the previous exports signature on update so we can compare the boundary\n // signatures. We avoid saving exports themselves since it causes memory leaks (https://github.com/vercel/next.js/pull/53797)\n module.hot.dispose(function (data) {\n data.prevSignature =\n self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports);\n });\n // Unconditionally accept an update to this module, we'll check if it's\n // still a Refresh Boundary later.\n // @ts-ignore importMeta is replaced in the loader\n module.hot.accept();\n // This field is set when the previous version of this module was a\n // Refresh Boundary, letting us know we need to check for invalidation or\n // enqueue an update.\n if (prevSignature !== null) {\n // A boundary can become ineligible if its exports are incompatible\n // with the previous exports.\n //\n // For example, if you add/remove/change exports, we'll want to\n // re-execute the importing modules, and force those components to\n // re-render. Similarly, if you convert a class component to a\n // function, we want to invalidate the boundary.\n if (self.$RefreshHelpers$.shouldInvalidateReactRefreshBoundary(prevSignature, self.$RefreshHelpers$.getRefreshBoundarySignature(currentExports))) {\n module.hot.invalidate();\n }\n else {\n self.$RefreshHelpers$.scheduleUpdate();\n }\n }\n }\n else {\n // Since we just executed the code for the module, it's possible that the\n // new exports made it ineligible for being a boundary.\n // We only care about the case when we were _previously_ a boundary,\n // because we already accepted this update (accidental side effect).\n var isNoLongerABoundary = prevSignature !== null;\n if (isNoLongerABoundary) {\n module.hot.invalidate();\n }\n }\n }\n })();\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi91dGlscy9yZWZsZWN0LXV0aWxzLmpzIiwibWFwcGluZ3MiOiJBQUFBLDZFQUE2RTtBQUM3RSxpRkFBaUY7QUFDakYsMEZBQTBGO0FBQzFGLHVGQUF1RjtBQUN2RiwyREFBMkQ7Ozs7Ozs7Ozs7Ozs7SUFVM0NBLGlDQUFpQztlQUFqQ0E7O0lBUEFDLDRCQUE0QjtlQUE1QkE7O0lBZUhDLG1CQUFtQjtlQUFuQkE7OztBQWpCYixNQUFNQywrQkFBK0I7QUFFOUIsU0FBU0YsNkJBQTZCRyxNQUFjLEVBQUVDLElBQVk7SUFDdkUsSUFBSUYsNkJBQTZCRyxJQUFJLENBQUNELE9BQU87UUFDM0MsT0FBUSxNQUFJRCxTQUFPLE1BQUdDLE9BQUs7SUFDN0I7SUFDQSxPQUFRLE1BQUlELFNBQU8sTUFBR0csS0FBS0MsU0FBUyxDQUFDSCxRQUFNO0FBQzdDO0FBRU8sU0FBU0wsa0NBQ2RJLE1BQWMsRUFDZEMsSUFBWTtJQUVaLE1BQU1JLGtCQUFrQkYsS0FBS0MsU0FBUyxDQUFDSDtJQUN2QyxPQUFRLGtCQUFnQkQsU0FBTyxPQUFJSyxrQkFBZ0IsVUFBU0Esa0JBQWdCLFNBQU1MLFNBQU87QUFDM0Y7QUFFTyxNQUFNRixzQkFBc0IsSUFBSVEsSUFBSTtJQUN6QztJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFFQSxvQkFBb0I7SUFDcEIsY0FBYztJQUNkO0lBQ0E7SUFDQTtJQUVBLDBCQUEwQjtJQUMxQixjQUFjO0lBQ2Q7SUFFQSxzQkFBc0I7SUFDdEI7SUFDQTtJQUVBLDJCQUEyQjtJQUMzQixjQUFjO0lBQ2Q7SUFDQTtJQUNBO0NBQ0QiLCJzb3VyY2VzIjpbIi9Vc2Vycy9zcmMvc2hhcmVkL2xpYi91dGlscy9yZWZsZWN0LXV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFRoaXMgcmVnZXggd2lsbCBoYXZlIGZhc3QgbmVnYXRpdmVzIG1lYW5pbmcgdmFsaWQgaWRlbnRpZmllcnMgbWF5IG5vdCBwYXNzXG4vLyB0aGlzIHRlc3QuIEhvd2V2ZXIgdGhpcyBpcyBvbmx5IHVzZWQgZHVyaW5nIHN0YXRpYyBnZW5lcmF0aW9uIHRvIHByb3ZpZGUgaGludHNcbi8vIGFib3V0IHdoeSBhIHBhZ2UgYmFpbGVkIG91dCBvZiBzb21lIG9yIGFsbCBwcmVyZW5kZXJpbmcgYW5kIHdlIGNhbiB1c2UgYnJhY2tldCBub3RhdGlvblxuLy8gZm9yIGV4YW1wbGUgd2hpbGUgYOCyoF/gsqBgIGlzIGEgdmFsaWQgaWRlbnRpZmllciBpdCdzIG9rIHRvIHByaW50IGBzZWFyY2hQYXJhbXNbJ+CyoF/gsqAnXWBcbi8vIGV2ZW4gaWYgdGhpcyB3b3VsZCBoYXZlIGJlZW4gZmluZSB0b28gYHNlYXJjaFBhcmFtcy7gsqBf4LKgYFxuY29uc3QgaXNEZWZpbml0ZWx5QVZhbGlkSWRlbnRpZmllciA9IC9eW0EtWmEtel8kXVtBLVphLXowLTlfJF0qJC9cblxuZXhwb3J0IGZ1bmN0aW9uIGRlc2NyaWJlU3RyaW5nUHJvcGVydHlBY2Nlc3ModGFyZ2V0OiBzdHJpbmcsIHByb3A6IHN0cmluZykge1xuICBpZiAoaXNEZWZpbml0ZWx5QVZhbGlkSWRlbnRpZmllci50ZXN0KHByb3ApKSB7XG4gICAgcmV0dXJuIGBcXGAke3RhcmdldH0uJHtwcm9wfVxcYGBcbiAgfVxuICByZXR1cm4gYFxcYCR7dGFyZ2V0fVske0pTT04uc3RyaW5naWZ5KHByb3ApfV1cXGBgXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXNjcmliZUhhc0NoZWNraW5nU3RyaW5nUHJvcGVydHkoXG4gIHRhcmdldDogc3RyaW5nLFxuICBwcm9wOiBzdHJpbmdcbikge1xuICBjb25zdCBzdHJpbmdpZmllZFByb3AgPSBKU09OLnN0cmluZ2lmeShwcm9wKVxuICByZXR1cm4gYFxcYFJlZmxlY3QuaGFzKCR7dGFyZ2V0fSwgJHtzdHJpbmdpZmllZFByb3B9KVxcYCwgXFxgJHtzdHJpbmdpZmllZFByb3B9IGluICR7dGFyZ2V0fVxcYCwgb3Igc2ltaWxhcmBcbn1cblxuZXhwb3J0IGNvbnN0IHdlbGxLbm93blByb3BlcnRpZXMgPSBuZXcgU2V0KFtcbiAgJ2hhc093blByb3BlcnR5JyxcbiAgJ2lzUHJvdG90eXBlT2YnLFxuICAncHJvcGVydHlJc0VudW1lcmFibGUnLFxuICAndG9TdHJpbmcnLFxuICAndmFsdWVPZicsXG4gICd0b0xvY2FsZVN0cmluZycsXG5cbiAgLy8gUHJvbWlzZSBwcm90b3R5cGVcbiAgLy8gZmFsbHRocm91Z2hcbiAgJ3RoZW4nLFxuICAnY2F0Y2gnLFxuICAnZmluYWxseScsXG5cbiAgLy8gUmVhY3QgUHJvbWlzZSBleHRlbnNpb25cbiAgLy8gZmFsbHRocm91Z2hcbiAgJ3N0YXR1cycsXG5cbiAgLy8gUmVhY3QgaW50cm9zcGVjdGlvblxuICAnZGlzcGxheU5hbWUnLFxuICAnX2RlYnVnSW5mbycsXG5cbiAgLy8gQ29tbW9uIHRlc3RlZCBwcm9wZXJ0aWVzXG4gIC8vIGZhbGx0aHJvdWdoXG4gICd0b0pTT04nLFxuICAnJCR0eXBlb2YnLFxuICAnX19lc01vZHVsZScsXG5dKVxuIl0sIm5hbWVzIjpbImRlc2NyaWJlSGFzQ2hlY2tpbmdTdHJpbmdQcm9wZXJ0eSIsImRlc2NyaWJlU3RyaW5nUHJvcGVydHlBY2Nlc3MiLCJ3ZWxsS25vd25Qcm9wZXJ0aWVzIiwiaXNEZWZpbml0ZWx5QVZhbGlkSWRlbnRpZmllciIsInRhcmdldCIsInByb3AiLCJ0ZXN0IiwiSlNPTiIsInN0cmluZ2lmeSIsInN0cmluZ2lmaWVkUHJvcCIsIlNldCJdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/reflect-utils.js\n"));
|
||
|
||
/***/ })
|
||
|
||
},
|
||
/******/ __webpack_require__ => { // webpackRuntimeModules
|
||
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||
/******/ __webpack_require__.O(0, ["main-app"], () => (__webpack_exec__("(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fbuiltin%2Fglobal-error.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-page.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fclient-segment.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fhttp-access-fallback%2Ferror-boundary.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Flayout-router.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Fmetadata%2Fasync-metadata.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fcomponents%2Frender-from-template-context.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fframework%2Fboundary-components.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Flib%2Fmetadata%2Fgenerate%2Ficon-mark.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fjettcheng1018%2Fcode%2Fdramaling-vocab-learning%2Ffrontend%2Fnode_modules%2Fnext%2Fdist%2Fnext-devtools%2Fuserspace%2Fapp%2Fsegment-explorer-node.js%22%2C%22ids%22%3A%5B%5D%7D&server=false!")));
|
||
/******/ var __webpack_exports__ = __webpack_require__.O();
|
||
/******/ _N_E = __webpack_exports__;
|
||
/******/ }
|
||
]); |