3590 lines
3.4 MiB
3590 lines
3.4 MiB
/*
|
||
* 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/not-found"],{
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fimage-component.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Flink.js%22%2C%22ids%22%3A%5B%22*%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FHeader.tsx%22%2C%22ids%22%3A%5B%22Header%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FNavLinks.tsx%22%2C%22ids%22%3A%5B%22NavLinks%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fimages%2Fqr-code.svg%22%2C%22ids%22%3A%5B%22*%22%5D%7D&server=false!":
|
||
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
|
||
!*** ./node_modules/next/dist/build/webpack/loaders/next-flight-client-entry-loader.js?modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fimage-component.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Flink.js%22%2C%22ids%22%3A%5B%22*%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FHeader.tsx%22%2C%22ids%22%3A%5B%22Header%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FNavLinks.tsx%22%2C%22ids%22%3A%5B%22NavLinks%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fimages%2Fqr-code.svg%22%2C%22ids%22%3A%5B%22*%22%5D%7D&server=false! ***!
|
||
\*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
|
||
/***/ (function(__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/image-component.js */ \"(app-pages-browser)/./node_modules/next/dist/client/image-component.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.t.bind(__webpack_require__, /*! ./node_modules/next/dist/client/link.js */ \"(app-pages-browser)/./node_modules/next/dist/client/link.js\", 23));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./src/components/Header.tsx */ \"(app-pages-browser)/./src/components/Header.tsx\"));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./src/components/NavLinks.tsx */ \"(app-pages-browser)/./src/components/NavLinks.tsx\"));\n;\nPromise.resolve(/*! import() eager */).then(__webpack_require__.bind(__webpack_require__, /*! ./src/images/qr-code.svg */ \"(app-pages-browser)/./src/images/qr-code.svg\"));\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvd2VicGFjay9sb2FkZXJzL25leHQtZmxpZ2h0LWNsaWVudC1lbnRyeS1sb2FkZXIuanM/bW9kdWxlcz0lN0IlMjJyZXF1ZXN0JTIyJTNBJTIyJTJGVXNlcnMlMkZzYXNoYWFzdGlhZGklMkZjb2RlJTJGZ2l0Lm91cndvcmxkLnRmJTJGd3d3X215Y2VsaXVtX2Nsb3VkMiUyRm5vZGVfbW9kdWxlcyUyRm5leHQlMkZkaXN0JTJGY2xpZW50JTJGaW1hZ2UtY29tcG9uZW50LmpzJTIyJTJDJTIyaWRzJTIyJTNBJTVCJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGc2FzaGFhc3RpYWRpJTJGY29kZSUyRmdpdC5vdXJ3b3JsZC50ZiUyRnd3d19teWNlbGl1bV9jbG91ZDIlMkZub2RlX21vZHVsZXMlMkZuZXh0JTJGZGlzdCUyRmNsaWVudCUyRmxpbmsuanMlMjIlMkMlMjJpZHMlMjIlM0ElNUIlMjIqJTIyJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGc2FzaGFhc3RpYWRpJTJGY29kZSUyRmdpdC5vdXJ3b3JsZC50ZiUyRnd3d19teWNlbGl1bV9jbG91ZDIlMkZzcmMlMkZjb21wb25lbnRzJTJGSGVhZGVyLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiUyMkhlYWRlciUyMiU1RCU3RCZtb2R1bGVzPSU3QiUyMnJlcXVlc3QlMjIlM0ElMjIlMkZVc2VycyUyRnNhc2hhYXN0aWFkaSUyRmNvZGUlMkZnaXQub3Vyd29ybGQudGYlMkZ3d3dfbXljZWxpdW1fY2xvdWQyJTJGc3JjJTJGY29tcG9uZW50cyUyRk5hdkxpbmtzLnRzeCUyMiUyQyUyMmlkcyUyMiUzQSU1QiUyMk5hdkxpbmtzJTIyJTVEJTdEJm1vZHVsZXM9JTdCJTIycmVxdWVzdCUyMiUzQSUyMiUyRlVzZXJzJTJGc2FzaGFhc3RpYWRpJTJGY29kZSUyRmdpdC5vdXJ3b3JsZC50ZiUyRnd3d19teWNlbGl1bV9jbG91ZDIlMkZzcmMlMkZpbWFnZXMlMkZxci1jb2RlLnN2ZyUyMiUyQyUyMmlkcyUyMiUzQSU1QiUyMiolMjIlNUQlN0Qmc2VydmVyPWZhbHNlISIsIm1hcHBpbmdzIjoiQUFBQSxvT0FBa0o7QUFDbEo7QUFDQSw4TUFBdUk7QUFDdkk7QUFDQSxnTEFBdUo7QUFDdko7QUFDQSxvTEFBMko7QUFDM0o7QUFDQSwwS0FBd0giLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLz81N2U3Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL3Nhc2hhYXN0aWFkaS9jb2RlL2dpdC5vdXJ3b3JsZC50Zi93d3dfbXljZWxpdW1fY2xvdWQyL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2ltYWdlLWNvbXBvbmVudC5qc1wiKTtcbjtcbmltcG9ydCgvKiB3ZWJwYWNrTW9kZTogXCJlYWdlclwiICovIFwiL1VzZXJzL3Nhc2hhYXN0aWFkaS9jb2RlL2dpdC5vdXJ3b3JsZC50Zi93d3dfbXljZWxpdW1fY2xvdWQyL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2xpbmsuanNcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiwgd2VicGFja0V4cG9ydHM6IFtcIkhlYWRlclwiXSAqLyBcIi9Vc2Vycy9zYXNoYWFzdGlhZGkvY29kZS9naXQub3Vyd29ybGQudGYvd3d3X215Y2VsaXVtX2Nsb3VkMi9zcmMvY29tcG9uZW50cy9IZWFkZXIudHN4XCIpO1xuO1xuaW1wb3J0KC8qIHdlYnBhY2tNb2RlOiBcImVhZ2VyXCIsIHdlYnBhY2tFeHBvcnRzOiBbXCJOYXZMaW5rc1wiXSAqLyBcIi9Vc2Vycy9zYXNoYWFzdGlhZGkvY29kZS9naXQub3Vyd29ybGQudGYvd3d3X215Y2VsaXVtX2Nsb3VkMi9zcmMvY29tcG9uZW50cy9OYXZMaW5rcy50c3hcIik7XG47XG5pbXBvcnQoLyogd2VicGFja01vZGU6IFwiZWFnZXJcIiAqLyBcIi9Vc2Vycy9zYXNoYWFzdGlhZGkvY29kZS9naXQub3Vyd29ybGQudGYvd3d3X215Y2VsaXVtX2Nsb3VkMi9zcmMvaW1hZ2VzL3FyLWNvZGUuc3ZnXCIpO1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\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%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fimage-component.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Flink.js%22%2C%22ids%22%3A%5B%22*%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FHeader.tsx%22%2C%22ids%22%3A%5B%22Header%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FNavLinks.tsx%22%2C%22ids%22%3A%5B%22NavLinks%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fimages%2Fqr-code.svg%22%2C%22ids%22%3A%5B%22*%22%5D%7D&server=false!\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/api/link.js":
|
||
/*!********************************************!*\
|
||
!*** ./node_modules/next/dist/api/link.js ***!
|
||
\********************************************/
|
||
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": function() { return /* reexport default from dynamic */ _client_link__WEBPACK_IMPORTED_MODULE_0___default.a; }\n/* harmony export */ });\n/* harmony import */ var _client_link__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../client/link */ \"(app-pages-browser)/./node_modules/next/dist/client/link.js\");\n/* harmony import */ var _client_link__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_client_link__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _client_link__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== \"default\") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = function(key) { return _client_link__WEBPACK_IMPORTED_MODULE_0__[key]; }.bind(0, __WEBPACK_IMPORT_KEY__)\n/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);\n\n\n\n//# sourceMappingURL=link.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYXBpL2xpbmsuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQXlDO0FBQ1Y7O0FBRS9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYXBpL2xpbmsuanM/YzJjOCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBkZWZhdWx0IH0gZnJvbSBcIi4uL2NsaWVudC9saW5rXCI7XG5leHBvcnQgKiBmcm9tIFwiLi4vY2xpZW50L2xpbmtcIjtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bGluay5qcy5tYXAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/api/link.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/build/polyfills/process.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/next/dist/build/polyfills/process.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nvar _global_process, _global_process1;\nmodule.exports = ((_global_process = __webpack_require__.g.process) == null ? void 0 : _global_process.env) && typeof ((_global_process1 = __webpack_require__.g.process) == null ? void 0 : _global_process1.env) === \"object\" ? __webpack_require__.g.process : __webpack_require__(/*! next/dist/compiled/process */ \"(app-pages-browser)/./node_modules/next/dist/compiled/process/browser.js\");\n\n//# sourceMappingURL=process.js.map//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvcG9seWZpbGxzL3Byb2Nlc3MuanMiLCJtYXBwaW5ncyI6IkFBQWE7QUFDYjtBQUNBLHFDQUFxQyxxQkFBTSxpRkFBaUYscUJBQU0sa0VBQWtFLHFCQUFNLFdBQVcsbUJBQU8sQ0FBQyw0R0FBNEI7O0FBRXpQIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvYnVpbGQvcG9seWZpbGxzL3Byb2Nlc3MuanM/MjcyZSJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcbnZhciBfZ2xvYmFsX3Byb2Nlc3MsIF9nbG9iYWxfcHJvY2VzczE7XG5tb2R1bGUuZXhwb3J0cyA9ICgoX2dsb2JhbF9wcm9jZXNzID0gZ2xvYmFsLnByb2Nlc3MpID09IG51bGwgPyB2b2lkIDAgOiBfZ2xvYmFsX3Byb2Nlc3MuZW52KSAmJiB0eXBlb2YgKChfZ2xvYmFsX3Byb2Nlc3MxID0gZ2xvYmFsLnByb2Nlc3MpID09IG51bGwgPyB2b2lkIDAgOiBfZ2xvYmFsX3Byb2Nlc3MxLmVudikgPT09IFwib2JqZWN0XCIgPyBnbG9iYWwucHJvY2VzcyA6IHJlcXVpcmUoXCJuZXh0L2Rpc3QvY29tcGlsZWQvcHJvY2Vzc1wiKTtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cHJvY2Vzcy5qcy5tYXAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/build/polyfills/process.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/compiled/picomatch/index.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/next/dist/compiled/picomatch/index.js ***!
|
||
\************************************************************/
|
||
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
||
|
||
eval(__webpack_require__.ts("var __dirname = \"/\";\n/* provided dependency */ var process = __webpack_require__(/*! process */ \"(app-pages-browser)/./node_modules/next/dist/build/polyfills/process.js\");\n(()=>{\"use strict\";var t={170:(t,e,u)=>{const n=u(510);const isWindows=()=>{if(typeof navigator!==\"undefined\"&&navigator.platform){const t=navigator.platform.toLowerCase();return t===\"win32\"||t===\"windows\"}if(typeof process!==\"undefined\"&&process.platform){return process.platform===\"win32\"}return false};function picomatch(t,e,u=false){if(e&&(e.windows===null||e.windows===undefined)){e={...e,windows:isWindows()}}return n(t,e,u)}Object.assign(picomatch,n);t.exports=picomatch},154:t=>{const e=\"\\\\\\\\/\";const u=`[^${e}]`;const n=\"\\\\.\";const o=\"\\\\+\";const s=\"\\\\?\";const r=\"\\\\/\";const a=\"(?=.)\";const i=\"[^/]\";const c=`(?:${r}|$)`;const p=`(?:^|${r})`;const l=`${n}{1,2}${c}`;const f=`(?!${n})`;const A=`(?!${p}${l})`;const _=`(?!${n}{0,1}${c})`;const R=`(?!${l})`;const E=`[^.${r}]`;const h=`${i}*?`;const g=\"/\";const b={DOT_LITERAL:n,PLUS_LITERAL:o,QMARK_LITERAL:s,SLASH_LITERAL:r,ONE_CHAR:a,QMARK:i,END_ANCHOR:c,DOTS_SLASH:l,NO_DOT:f,NO_DOTS:A,NO_DOT_SLASH:_,NO_DOTS_SLASH:R,QMARK_NO_DOT:E,STAR:h,START_ANCHOR:p,SEP:g};const C={...b,SLASH_LITERAL:`[${e}]`,QMARK:u,STAR:`${u}*?`,DOTS_SLASH:`${n}{1,2}(?:[${e}]|$)`,NO_DOT:`(?!${n})`,NO_DOTS:`(?!(?:^|[${e}])${n}{1,2}(?:[${e}]|$))`,NO_DOT_SLASH:`(?!${n}{0,1}(?:[${e}]|$))`,NO_DOTS_SLASH:`(?!${n}{1,2}(?:[${e}]|$))`,QMARK_NO_DOT:`[^.${e}]`,START_ANCHOR:`(?:^|[${e}])`,END_ANCHOR:`(?:[${e}]|$)`,SEP:\"\\\\\"};const y={alnum:\"a-zA-Z0-9\",alpha:\"a-zA-Z\",ascii:\"\\\\x00-\\\\x7F\",blank:\" \\\\t\",cntrl:\"\\\\x00-\\\\x1F\\\\x7F\",digit:\"0-9\",graph:\"\\\\x21-\\\\x7E\",lower:\"a-z\",print:\"\\\\x20-\\\\x7E \",punct:\"\\\\-!\\\"#$%&'()\\\\*+,./:;<=>?@[\\\\]^_`{|}~\",space:\" \\\\t\\\\r\\\\n\\\\v\\\\f\",upper:\"A-Z\",word:\"A-Za-z0-9_\",xdigit:\"A-Fa-f0-9\"};t.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:y,REGEX_BACKSLASH:/\\\\(?![*+?^${}(|)[\\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\\].,$*+?^{}()|\\\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\\\?)((\\W)(\\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\\[.*?[^\\\\]\\]|\\\\(?=.))/g,REPLACEMENTS:{\"***\":\"*\",\"**/**\":\"**\",\"**/**/**\":\"**\"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(t){return{\"!\":{type:\"negate\",open:\"(?:(?!(?:\",close:`))${t.STAR})`},\"?\":{type:\"qmark\",open:\"(?:\",close:\")?\"},\"+\":{type:\"plus\",open:\"(?:\",close:\")+\"},\"*\":{type:\"star\",open:\"(?:\",close:\")*\"},\"@\":{type:\"at\",open:\"(?:\",close:\")\"}}},globChars(t){return t===true?C:b}}},697:(t,e,u)=>{const n=u(154);const o=u(96);const{MAX_LENGTH:s,POSIX_REGEX_SOURCE:r,REGEX_NON_SPECIAL_CHARS:a,REGEX_SPECIAL_CHARS_BACKREF:i,REPLACEMENTS:c}=n;const expandRange=(t,e)=>{if(typeof e.expandRange===\"function\"){return e.expandRange(...t,e)}t.sort();const u=`[${t.join(\"-\")}]`;try{new RegExp(u)}catch(e){return t.map((t=>o.escapeRegex(t))).join(\"..\")}return u};const syntaxError=(t,e)=>`Missing ${t}: \"${e}\" - use \"\\\\\\\\${e}\" to match literal characters`;const parse=(t,e)=>{if(typeof t!==\"string\"){throw new TypeError(\"Expected a string\")}t=c[t]||t;const u={...e};const p=typeof u.maxLength===\"number\"?Math.min(s,u.maxLength):s;let l=t.length;if(l>p){throw new SyntaxError(`Input length: ${l}, exceeds maximum allowed length: ${p}`)}const f={type:\"bos\",value:\"\",output:u.prepend||\"\"};const A=[f];const _=u.capture?\"\":\"?:\";const R=n.globChars(u.windows);const E=n.extglobChars(R);const{DOT_LITERAL:h,PLUS_LITERAL:g,SLASH_LITERAL:b,ONE_CHAR:C,DOTS_SLASH:y,NO_DOT:$,NO_DOT_SLASH:x,NO_DOTS_SLASH:S,QMARK:H,QMARK_NO_DOT:v,STAR:d,START_ANCHOR:L}=R;const globstar=t=>`(${_}(?:(?!${L}${t.dot?y:h}).)*?)`;const T=u.dot?\"\":$;const O=u.dot?H:v;let k=u.bash===true?globstar(u):d;if(u.capture){k=`(${k})`}if(typeof u.noext===\"boolean\"){u.noextglob=u.noext}const m={input:t,index:-1,start:0,dot:u.dot===true,consumed:\"\",output:\"\",prefix:\"\",backtrack:false,negated:false,brackets:0,braces:0,parens:0,quotes:0,globstar:false,tokens:A};t=o.removePrefix(t,m);l=t.length;const w=[];const N=[];const I=[];let B=f;let G;const eos=()=>m.index===l-1;const D=m.peek=(e=1)=>t[m.index+e];const M=m.advance=()=>t[++m.index]||\"\";const remaining=()=>t.slice(m.index+1);const consume=(t=\"\",e=0)=>{m.consumed+=t;m.index+=e};const append=t=>{m.output+=t.output!=null?t.output:t.value;consume(t.value)};const negate=()=>{let t=1;while(D()===\"!\"&&(D(2)!==\"(\"||D(3)===\"?\")){M();m.start++;t++}if(t%2===0){return false}m.negated=true;m.start++;return true};const increment=t=>{m[t]++;I.push(t)};const decrement=t=>{m[t]--;I.pop()};const push=t=>{if(B.type===\"globstar\"){const e=m.braces>0&&(t.type===\"comma\"||t.type===\"brace\");const u=t.extglob===true||w.length&&(t.type===\"pipe\"||t.type===\"paren\");if(t.type!==\"slash\"&&t.type!==\"paren\"&&!e&&!u){m.output=m.output.slice(0,-B.output.length);B.type=\"star\";B.value=\"*\";B.output=k;m.output+=B.output}}if(w.length&&t.type!==\"paren\"){w[w.length-1].inner+=t.value}if(t.value||t.output)append(t);if(B&&B.type===\"text\"&&t.type===\"text\"){B.output=(B.output||B.value)+t.value;B.value+=t.value;return}t.prev=B;A.push(t);B=t};const extglobOpen=(t,e)=>{const n={...E[e],conditions:1,inner:\"\"};n.prev=B;n.parens=m.parens;n.output=m.output;const o=(u.capture?\"(\":\"\")+n.open;increment(\"parens\");push({type:t,value:e,output:m.output?\"\":C});push({type:\"paren\",extglob:true,value:M(),output:o});w.push(n)};const extglobClose=t=>{let n=t.close+(u.capture?\")\":\"\");let o;if(t.type===\"negate\"){let s=k;if(t.inner&&t.inner.length>1&&t.inner.includes(\"/\")){s=globstar(u)}if(s!==k||eos()||/^\\)+$/.test(remaining())){n=t.close=`)$))${s}`}if(t.inner.includes(\"*\")&&(o=remaining())&&/^\\.[^\\\\/.]+$/.test(o)){const u=parse(o,{...e,fastpaths:false}).output;n=t.close=`)${u})${s})`}if(t.prev.type===\"bos\"){m.negatedExtglob=true}}push({type:\"paren\",extglob:true,value:G,output:n});decrement(\"parens\")};if(u.fastpaths!==false&&!/(^[*!]|[/()[\\]{}\"])/.test(t)){let n=false;let s=t.replace(i,((t,e,u,o,s,r)=>{if(o===\"\\\\\"){n=true;return t}if(o===\"?\"){if(e){return e+o+(s?H.repeat(s.length):\"\")}if(r===0){return O+(s?H.repeat(s.length):\"\")}return H.repeat(u.length)}if(o===\".\"){return h.repeat(u.length)}if(o===\"*\"){if(e){return e+o+(s?k:\"\")}return k}return e?t:`\\\\${t}`}));if(n===true){if(u.unescape===true){s=s.replace(/\\\\/g,\"\")}else{s=s.replace(/\\\\+/g,(t=>t.length%2===0?\"\\\\\\\\\":t?\"\\\\\":\"\"))}}if(s===t&&u.contains===true){m.output=t;return m}m.output=o.wrapOutput(s,m,e);return m}while(!eos()){G=M();if(G===\"\\0\"){continue}if(G===\"\\\\\"){const t=D();if(t===\"/\"&&u.bash!==true){continue}if(t===\".\"||t===\";\"){continue}if(!t){G+=\"\\\\\";push({type:\"text\",value:G});continue}const e=/^\\\\+/.exec(remaining());let n=0;if(e&&e[0].length>2){n=e[0].length;m.index+=n;if(n%2!==0){G+=\"\\\\\"}}if(u.unescape===true){G=M()}else{G+=M()}if(m.brackets===0){push({type:\"text\",value:G});continue}}if(m.brackets>0&&(G!==\"]\"||B.value===\"[\"||B.value===\"[^\")){if(u.posix!==false&&G===\":\"){const t=B.value.slice(1);if(t.includes(\"[\")){B.posix=true;if(t.includes(\":\")){const t=B.value.lastIndexOf(\"[\");const e=B.value.slice(0,t);const u=B.value.slice(t+2);const n=r[u];if(n){B.value=e+n;m.backtrack=true;M();if(!f.output&&A.indexOf(B)===1){f.output=C}continue}}}}if(G===\"[\"&&D()!==\":\"||G===\"-\"&&D()===\"]\"){G=`\\\\${G}`}if(G===\"]\"&&(B.value===\"[\"||B.value===\"[^\")){G=`\\\\${G}`}if(u.posix===true&&G===\"!\"&&B.value===\"[\"){G=\"^\"}B.value+=G;append({value:G});continue}if(m.quotes===1&&G!=='\"'){G=o.escapeRegex(G);B.value+=G;append({value:G});continue}if(G==='\"'){m.quotes=m.quotes===1?0:1;if(u.keepQuotes===true){push({type:\"text\",value:G})}continue}if(G===\"(\"){increment(\"parens\");push({type:\"paren\",value:G});continue}if(G===\")\"){if(m.parens===0&&u.strictBrackets===true){throw new SyntaxError(syntaxError(\"opening\",\"(\"))}const t=w[w.length-1];if(t&&m.parens===t.parens+1){extglobClose(w.pop());continue}push({type:\"paren\",value:G,output:m.parens?\")\":\"\\\\)\"});decrement(\"parens\");continue}if(G===\"[\"){if(u.nobracket===true||!remaining().includes(\"]\")){if(u.nobracket!==true&&u.strictBrackets===true){throw new SyntaxError(syntaxError(\"closing\",\"]\"))}G=`\\\\${G}`}else{increment(\"brackets\")}push({type:\"bracket\",value:G});continue}if(G===\"]\"){if(u.nobracket===true||B&&B.type===\"bracket\"&&B.value.length===1){push({type:\"text\",value:G,output:`\\\\${G}`});continue}if(m.brackets===0){if(u.strictBrackets===true){throw new SyntaxError(syntaxError(\"opening\",\"[\"))}push({type:\"text\",value:G,output:`\\\\${G}`});continue}decrement(\"brackets\");const t=B.value.slice(1);if(B.posix!==true&&t[0]===\"^\"&&!t.includes(\"/\")){G=`/${G}`}B.value+=G;append({value:G});if(u.literalBrackets===false||o.hasRegexChars(t)){continue}const e=o.escapeRegex(B.value);m.output=m.output.slice(0,-B.value.length);if(u.literalBrackets===true){m.output+=e;B.value=e;continue}B.value=`(${_}${e}|${B.value})`;m.output+=B.value;continue}if(G===\"{\"&&u.nobrace!==true){increment(\"braces\");const t={type:\"brace\",value:G,output:\"(\",outputIndex:m.output.length,tokensIndex:m.tokens.length};N.push(t);push(t);continue}if(G===\"}\"){const t=N[N.length-1];if(u.nobrace===true||!t){push({type:\"text\",value:G,output:G});continue}let e=\")\";if(t.dots===true){const t=A.slice();const n=[];for(let e=t.length-1;e>=0;e--){A.pop();if(t[e].type===\"brace\"){break}if(t[e].type!==\"dots\"){n.unshift(t[e].value)}}e=expandRange(n,u);m.backtrack=true}if(t.comma!==true&&t.dots!==true){const u=m.output.slice(0,t.outputIndex);const n=m.tokens.slice(t.tokensIndex);t.value=t.output=\"\\\\{\";G=e=\"\\\\}\";m.output=u;for(const t of n){m.output+=t.output||t.value}}push({type:\"brace\",value:G,output:e});decrement(\"braces\");N.pop();continue}if(G===\"|\"){if(w.length>0){w[w.length-1].conditions++}push({type:\"text\",value:G});continue}if(G===\",\"){let t=G;const e=N[N.length-1];if(e&&I[I.length-1]===\"braces\"){e.comma=true;t=\"|\"}push({type:\"comma\",value:G,output:t});continue}if(G===\"/\"){if(B.type===\"dot\"&&m.index===m.start+1){m.start=m.index+1;m.consumed=\"\";m.output=\"\";A.pop();B=f;continue}push({type:\"slash\",value:G,output:b});continue}if(G===\".\"){if(m.braces>0&&B.type===\"dot\"){if(B.value===\".\")B.output=h;const t=N[N.length-1];B.type=\"dots\";B.output+=G;B.value+=G;t.dots=true;continue}if(m.braces+m.parens===0&&B.type!==\"bos\"&&B.type!==\"slash\"){push({type:\"text\",value:G,output:h});continue}push({type:\"dot\",value:G,output:h});continue}if(G===\"?\"){const t=B&&B.value===\"(\";if(!t&&u.noextglob!==true&&D()===\"(\"&&D(2)!==\"?\"){extglobOpen(\"qmark\",G);continue}if(B&&B.type===\"paren\"){const t=D();let e=G;if(B.value===\"(\"&&!/[!=<:]/.test(t)||t===\"<\"&&!/<([!=]|\\w+>)/.test(remaining())){e=`\\\\${G}`}push({type:\"text\",value:G,output:e});continue}if(u.dot!==true&&(B.type===\"slash\"||B.type===\"bos\")){push({type:\"qmark\",value:G,output:v});continue}push({type:\"qmark\",value:G,output:H});continue}if(G===\"!\"){if(u.noextglob!==true&&D()===\"(\"){if(D(2)!==\"?\"||!/[!=<:]/.test(D(3))){extglobOpen(\"negate\",G);continue}}if(u.nonegate!==true&&m.index===0){negate();continue}}if(G===\"+\"){if(u.noextglob!==true&&D()===\"(\"&&D(2)!==\"?\"){extglobOpen(\"plus\",G);continue}if(B&&B.value===\"(\"||u.regex===false){push({type:\"plus\",value:G,output:g});continue}if(B&&(B.type===\"bracket\"||B.type===\"paren\"||B.type===\"brace\")||m.parens>0){push({type:\"plus\",value:G});continue}push({type:\"plus\",value:g});continue}if(G===\"@\"){if(u.noextglob!==true&&D()===\"(\"&&D(2)!==\"?\"){push({type:\"at\",extglob:true,value:G,output:\"\"});continue}push({type:\"text\",value:G});continue}if(G!==\"*\"){if(G===\"$\"||G===\"^\"){G=`\\\\${G}`}const t=a.exec(remaining());if(t){G+=t[0];m.index+=t[0].length}push({type:\"text\",value:G});continue}if(B&&(B.type===\"globstar\"||B.star===true)){B.type=\"star\";B.star=true;B.value+=G;B.output=k;m.backtrack=true;m.globstar=true;consume(G);continue}let e=remaining();if(u.noextglob!==true&&/^\\([^?]/.test(e)){extglobOpen(\"star\",G);continue}if(B.type===\"star\"){if(u.noglobstar===true){consume(G);continue}const n=B.prev;const o=n.prev;const s=n.type===\"slash\"||n.type===\"bos\";const r=o&&(o.type===\"star\"||o.type===\"globstar\");if(u.bash===true&&(!s||e[0]&&e[0]!==\"/\")){push({type:\"star\",value:G,output:\"\"});continue}const a=m.braces>0&&(n.type===\"comma\"||n.type===\"brace\");const i=w.length&&(n.type===\"pipe\"||n.type===\"paren\");if(!s&&n.type!==\"paren\"&&!a&&!i){push({type:\"star\",value:G,output:\"\"});continue}while(e.slice(0,3)===\"/**\"){const u=t[m.index+4];if(u&&u!==\"/\"){break}e=e.slice(3);consume(\"/**\",3)}if(n.type===\"bos\"&&eos()){B.type=\"globstar\";B.value+=G;B.output=globstar(u);m.output=B.output;m.globstar=true;consume(G);continue}if(n.type===\"slash\"&&n.prev.type!==\"bos\"&&!r&&eos()){m.output=m.output.slice(0,-(n.output+B.output).length);n.output=`(?:${n.output}`;B.type=\"globstar\";B.output=globstar(u)+(u.strictSlashes?\")\":\"|$)\");B.value+=G;m.globstar=true;m.output+=n.output+B.output;consume(G);continue}if(n.type===\"slash\"&&n.prev.type!==\"bos\"&&e[0]===\"/\"){const t=e[1]!==void 0?\"|$\":\"\";m.output=m.output.slice(0,-(n.output+B.output).length);n.output=`(?:${n.output}`;B.type=\"globstar\";B.output=`${globstar(u)}${b}|${b}${t})`;B.value+=G;m.output+=n.output+B.output;m.globstar=true;consume(G+M());push({type:\"slash\",value:\"/\",output:\"\"});continue}if(n.type===\"bos\"&&e[0]===\"/\"){B.type=\"globstar\";B.value+=G;B.output=`(?:^|${b}|${globstar(u)}${b})`;m.output=B.output;m.globstar=true;consume(G+M());push({type:\"slash\",value:\"/\",output:\"\"});continue}m.output=m.output.slice(0,-B.output.length);B.type=\"globstar\";B.output=globstar(u);B.value+=G;m.output+=B.output;m.globstar=true;consume(G);continue}const n={type:\"star\",value:G,output:k};if(u.bash===true){n.output=\".*?\";if(B.type===\"bos\"||B.type===\"slash\"){n.output=T+n.output}push(n);continue}if(B&&(B.type===\"bracket\"||B.type===\"paren\")&&u.regex===true){n.output=G;push(n);continue}if(m.index===m.start||B.type===\"slash\"||B.type===\"dot\"){if(B.type===\"dot\"){m.output+=x;B.output+=x}else if(u.dot===true){m.output+=S;B.output+=S}else{m.output+=T;B.output+=T}if(D()!==\"*\"){m.output+=C;B.output+=C}}push(n)}while(m.brackets>0){if(u.strictBrackets===true)throw new SyntaxError(syntaxError(\"closing\",\"]\"));m.output=o.escapeLast(m.output,\"[\");decrement(\"brackets\")}while(m.parens>0){if(u.strictBrackets===true)throw new SyntaxError(syntaxError(\"closing\",\")\"));m.output=o.escapeLast(m.output,\"(\");decrement(\"parens\")}while(m.braces>0){if(u.strictBrackets===true)throw new SyntaxError(syntaxError(\"closing\",\"}\"));m.output=o.escapeLast(m.output,\"{\");decrement(\"braces\")}if(u.strictSlashes!==true&&(B.type===\"star\"||B.type===\"bracket\")){push({type:\"maybe_slash\",value:\"\",output:`${b}?`})}if(m.backtrack===true){m.output=\"\";for(const t of m.tokens){m.output+=t.output!=null?t.output:t.value;if(t.suffix){m.output+=t.suffix}}}return m};parse.fastpaths=(t,e)=>{const u={...e};const r=typeof u.maxLength===\"number\"?Math.min(s,u.maxLength):s;const a=t.length;if(a>r){throw new SyntaxError(`Input length: ${a}, exceeds maximum allowed length: ${r}`)}t=c[t]||t;const{DOT_LITERAL:i,SLASH_LITERAL:p,ONE_CHAR:l,DOTS_SLASH:f,NO_DOT:A,NO_DOTS:_,NO_DOTS_SLASH:R,STAR:E,START_ANCHOR:h}=n.globChars(u.windows);const g=u.dot?_:A;const b=u.dot?R:A;const C=u.capture?\"\":\"?:\";const y={negated:false,prefix:\"\"};let $=u.bash===true?\".*?\":E;if(u.capture){$=`(${$})`}const globstar=t=>{if(t.noglobstar===true)return $;return`(${C}(?:(?!${h}${t.dot?f:i}).)*?)`};const create=t=>{switch(t){case\"*\":return`${g}${l}${$}`;case\".*\":return`${i}${l}${$}`;case\"*.*\":return`${g}${$}${i}${l}${$}`;case\"*/*\":return`${g}${$}${p}${l}${b}${$}`;case\"**\":return g+globstar(u);case\"**/*\":return`(?:${g}${globstar(u)}${p})?${b}${l}${$}`;case\"**/*.*\":return`(?:${g}${globstar(u)}${p})?${b}${$}${i}${l}${$}`;case\"**/.*\":return`(?:${g}${globstar(u)}${p})?${i}${l}${$}`;default:{const e=/^(.*?)\\.(\\w+)$/.exec(t);if(!e)return;const u=create(e[1]);if(!u)return;return u+i+e[2]}}};const x=o.removePrefix(t,y);let S=create(x);if(S&&u.strictSlashes!==true){S+=`${p}?`}return S};t.exports=parse},510:(t,e,u)=>{const n=u(716);const o=u(697);const s=u(96);const r=u(154);const isObject=t=>t&&typeof t===\"object\"&&!Array.isArray(t);const picomatch=(t,e,u=false)=>{if(Array.isArray(t)){const n=t.map((t=>picomatch(t,e,u)));const arrayMatcher=t=>{for(const e of n){const u=e(t);if(u)return u}return false};return arrayMatcher}const n=isObject(t)&&t.tokens&&t.input;if(t===\"\"||typeof t!==\"string\"&&!n){throw new TypeError(\"Expected pattern to be a non-empty string\")}const o=e||{};const s=o.windows;const r=n?picomatch.compileRe(t,e):picomatch.makeRe(t,e,false,true);const a=r.state;delete r.state;let isIgnored=()=>false;if(o.ignore){const t={...e,ignore:null,onMatch:null,onResult:null};isIgnored=picomatch(o.ignore,t,u)}const matcher=(u,n=false)=>{const{isMatch:i,match:c,output:p}=picomatch.test(u,r,e,{glob:t,posix:s});const l={glob:t,state:a,regex:r,posix:s,input:u,output:p,match:c,isMatch:i};if(typeof o.onResult===\"function\"){o.onResult(l)}if(i===false){l.isMatch=false;return n?l:false}if(isIgnored(u)){if(typeof o.onIgnore===\"function\"){o.onIgnore(l)}l.isMatch=false;return n?l:false}if(typeof o.onMatch===\"function\"){o.onMatch(l)}return n?l:true};if(u){matcher.state=a}return matcher};picomatch.test=(t,e,u,{glob:n,posix:o}={})=>{if(typeof t!==\"string\"){throw new TypeError(\"Expected input to be a string\")}if(t===\"\"){return{isMatch:false,output:\"\"}}const r=u||{};const a=r.format||(o?s.toPosixSlashes:null);let i=t===n;let c=i&&a?a(t):t;if(i===false){c=a?a(t):t;i=c===n}if(i===false||r.capture===true){if(r.matchBase===true||r.basename===true){i=picomatch.matchBase(t,e,u,o)}else{i=e.exec(c)}}return{isMatch:Boolean(i),match:i,output:c}};picomatch.matchBase=(t,e,u)=>{const n=e instanceof RegExp?e:picomatch.makeRe(e,u);return n.test(s.basename(t))};picomatch.isMatch=(t,e,u)=>picomatch(e,u)(t);picomatch.parse=(t,e)=>{if(Array.isArray(t))return t.map((t=>picomatch.parse(t,e)));return o(t,{...e,fastpaths:false})};picomatch.scan=(t,e)=>n(t,e);picomatch.compileRe=(t,e,u=false,n=false)=>{if(u===true){return t.output}const o=e||{};const s=o.contains?\"\":\"^\";const r=o.contains?\"\":\"$\";let a=`${s}(?:${t.output})${r}`;if(t&&t.negated===true){a=`^(?!${a}).*$`}const i=picomatch.toRegex(a,e);if(n===true){i.state=t}return i};picomatch.makeRe=(t,e={},u=false,n=false)=>{if(!t||typeof t!==\"string\"){throw new TypeError(\"Expected a non-empty string\")}let s={negated:false,fastpaths:true};if(e.fastpaths!==false&&(t[0]===\".\"||t[0]===\"*\")){s.output=o.fastpaths(t,e)}if(!s.output){s=o(t,e)}return picomatch.compileRe(s,e,u,n)};picomatch.toRegex=(t,e)=>{try{const u=e||{};return new RegExp(t,u.flags||(u.nocase?\"i\":\"\"))}catch(t){if(e&&e.debug===true)throw t;return/$^/}};picomatch.constants=r;t.exports=picomatch},716:(t,e,u)=>{const n=u(96);const{CHAR_ASTERISK:o,CHAR_AT:s,CHAR_BACKWARD_SLASH:r,CHAR_COMMA:a,CHAR_DOT:i,CHAR_EXCLAMATION_MARK:c,CHAR_FORWARD_SLASH:p,CHAR_LEFT_CURLY_BRACE:l,CHAR_LEFT_PARENTHESES:f,CHAR_LEFT_SQUARE_BRACKET:A,CHAR_PLUS:_,CHAR_QUESTION_MARK:R,CHAR_RIGHT_CURLY_BRACE:E,CHAR_RIGHT_PARENTHESES:h,CHAR_RIGHT_SQUARE_BRACKET:g}=u(154);const isPathSeparator=t=>t===p||t===r;const depth=t=>{if(t.isPrefix!==true){t.depth=t.isGlobstar?Infinity:1}};const scan=(t,e)=>{const u=e||{};const b=t.length-1;const C=u.parts===true||u.scanToEnd===true;const y=[];const $=[];const x=[];let S=t;let H=-1;let v=0;let d=0;let L=false;let T=false;let O=false;let k=false;let m=false;let w=false;let N=false;let I=false;let B=false;let G=false;let D=0;let M;let P;let K={value:\"\",depth:0,isGlob:false};const eos=()=>H>=b;const peek=()=>S.charCodeAt(H+1);const advance=()=>{M=P;return S.charCodeAt(++H)};while(H<b){P=advance();let t;if(P===r){N=K.backslashes=true;P=advance();if(P===l){w=true}continue}if(w===true||P===l){D++;while(eos()!==true&&(P=advance())){if(P===r){N=K.backslashes=true;advance();continue}if(P===l){D++;continue}if(w!==true&&P===i&&(P=advance())===i){L=K.isBrace=true;O=K.isGlob=true;G=true;if(C===true){continue}break}if(w!==true&&P===a){L=K.isBrace=true;O=K.isGlob=true;G=true;if(C===true){continue}break}if(P===E){D--;if(D===0){w=false;L=K.isBrace=true;G=true;break}}}if(C===true){continue}break}if(P===p){y.push(H);$.push(K);K={value:\"\",depth:0,isGlob:false};if(G===true)continue;if(M===i&&H===v+1){v+=2;continue}d=H+1;continue}if(u.noext!==true){const t=P===_||P===s||P===o||P===R||P===c;if(t===true&&peek()===f){O=K.isGlob=true;k=K.isExtglob=true;G=true;if(P===c&&H===v){B=true}if(C===true){while(eos()!==true&&(P=advance())){if(P===r){N=K.backslashes=true;P=advance();continue}if(P===h){O=K.isGlob=true;G=true;break}}continue}break}}if(P===o){if(M===o)m=K.isGlobstar=true;O=K.isGlob=true;G=true;if(C===true){continue}break}if(P===R){O=K.isGlob=true;G=true;if(C===true){continue}break}if(P===A){while(eos()!==true&&(t=advance())){if(t===r){N=K.backslashes=true;advance();continue}if(t===g){T=K.isBracket=true;O=K.isGlob=true;G=true;break}}if(C===true){continue}break}if(u.nonegate!==true&&P===c&&H===v){I=K.negated=true;v++;continue}if(u.noparen!==true&&P===f){O=K.isGlob=true;if(C===true){while(eos()!==true&&(P=advance())){if(P===f){N=K.backslashes=true;P=advance();continue}if(P===h){G=true;break}}continue}break}if(O===true){G=true;if(C===true){continue}break}}if(u.noext===true){k=false;O=false}let U=S;let X=\"\";let F=\"\";if(v>0){X=S.slice(0,v);S=S.slice(v);d-=v}if(U&&O===true&&d>0){U=S.slice(0,d);F=S.slice(d)}else if(O===true){U=\"\";F=S}else{U=S}if(U&&U!==\"\"&&U!==\"/\"&&U!==S){if(isPathSeparator(U.charCodeAt(U.length-1))){U=U.slice(0,-1)}}if(u.unescape===true){if(F)F=n.removeBackslashes(F);if(U&&N===true){U=n.removeBackslashes(U)}}const Q={prefix:X,input:t,start:v,base:U,glob:F,isBrace:L,isBracket:T,isGlob:O,isExtglob:k,isGlobstar:m,negated:I,negatedExtglob:B};if(u.tokens===true){Q.maxDepth=0;if(!isPathSeparator(P)){$.push(K)}Q.tokens=$}if(u.parts===true||u.tokens===true){let e;for(let n=0;n<y.length;n++){const o=e?e+1:v;const s=y[n];const r=t.slice(o,s);if(u.tokens){if(n===0&&v!==0){$[n].isPrefix=true;$[n].value=X}else{$[n].value=r}depth($[n]);Q.maxDepth+=$[n].depth}if(n!==0||r!==\"\"){x.push(r)}e=s}if(e&&e+1<t.length){const n=t.slice(e+1);x.push(n);if(u.tokens){$[$.length-1].value=n;depth($[$.length-1]);Q.maxDepth+=$[$.length-1].depth}}Q.slashes=y;Q.parts=x}return Q};t.exports=scan},96:(t,e,u)=>{const{REGEX_BACKSLASH:n,REGEX_REMOVE_BACKSLASH:o,REGEX_SPECIAL_CHARS:s,REGEX_SPECIAL_CHARS_GLOBAL:r}=u(154);e.isObject=t=>t!==null&&typeof t===\"object\"&&!Array.isArray(t);e.hasRegexChars=t=>s.test(t);e.isRegexChar=t=>t.length===1&&e.hasRegexChars(t);e.escapeRegex=t=>t.replace(r,\"\\\\$1\");e.toPosixSlashes=t=>t.replace(n,\"/\");e.removeBackslashes=t=>t.replace(o,(t=>t===\"\\\\\"?\"\":t));e.escapeLast=(t,u,n)=>{const o=t.lastIndexOf(u,n);if(o===-1)return t;if(t[o-1]===\"\\\\\")return e.escapeLast(t,u,o-1);return`${t.slice(0,o)}\\\\${t.slice(o)}`};e.removePrefix=(t,e={})=>{let u=t;if(u.startsWith(\"./\")){u=u.slice(2);e.prefix=\"./\"}return u};e.wrapOutput=(t,e={},u={})=>{const n=u.contains?\"\":\"^\";const o=u.contains?\"\":\"$\";let s=`${n}(?:${t})${o}`;if(e.negated===true){s=`(?:^(?!${s}).*$)`}return s};e.basename=(t,{windows:e}={})=>{const u=t.split(e?/[\\\\/]/:\"/\");const n=u[u.length-1];if(n===\"\"){return u[u.length-2]}return n}}};var e={};function __nccwpck_require__(u){var n=e[u];if(n!==undefined){return n.exports}var o=e[u]={exports:{}};var s=true;try{t[u](o,o.exports,__nccwpck_require__);s=false}finally{if(s)delete e[u]}return o.exports}if(typeof __nccwpck_require__!==\"undefined\")__nccwpck_require__.ab=__dirname+\"/\";var u=__nccwpck_require__(170);module.exports=u})();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcGljb21hdGNoL2luZGV4LmpzIiwibWFwcGluZ3MiOiI7O0FBQUEsTUFBTSxhQUFhLE9BQU8sY0FBYyxlQUFlLHFCQUFxQix1REFBdUQseUNBQXlDLGtDQUFrQyxVQUFVLE9BQU8sZ0JBQWdCLE9BQU8sV0FBVyxPQUFPLE9BQU8sb0JBQW9CLGNBQWMsZ0NBQWdDLGlEQUFpRCxHQUFHLDBCQUEwQixnQkFBZ0IsMkJBQTJCLG9CQUFvQixTQUFTLGdCQUFnQixhQUFhLEVBQUUsR0FBRyxjQUFjLGNBQWMsY0FBYyxjQUFjLGdCQUFnQixlQUFlLGNBQWMsRUFBRSxLQUFLLGdCQUFnQixFQUFFLEdBQUcsV0FBVyxHQUFHLElBQUksRUFBRSxFQUFFLEVBQUUsY0FBYyxFQUFFLEdBQUcsY0FBYyxFQUFFLEVBQUUsRUFBRSxHQUFHLGNBQWMsR0FBRyxJQUFJLEVBQUUsRUFBRSxHQUFHLGNBQWMsRUFBRSxHQUFHLGNBQWMsRUFBRSxHQUFHLFdBQVcsRUFBRSxJQUFJLFlBQVksU0FBUyx3TUFBd00sU0FBUyx1QkFBdUIsRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsR0FBRyxJQUFJLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSx1QkFBdUIsRUFBRSxJQUFJLEdBQUcsSUFBSSxNQUFNLEVBQUUsMEJBQTBCLEdBQUcsSUFBSSxNQUFNLEVBQUUsMkJBQTJCLEdBQUcsSUFBSSxNQUFNLEVBQUUsMEJBQTBCLEVBQUUseUJBQXlCLEVBQUUsc0JBQXNCLEVBQUUsZ0JBQWdCLFNBQVMseUxBQXlMLGFBQWEsRUFBRSw4RUFBOEUsV0FBVyxzRUFBc0UscURBQXFELHlDQUF5QyxnR0FBZ0csNEVBQTRFLHVDQUF1QyxtM0JBQW0zQixPQUFPLEtBQUssMENBQTBDLE9BQU8sR0FBRyxNQUFNLG1DQUFtQyxNQUFNLGtDQUFrQyxNQUFNLGtDQUFrQyxNQUFNLGlDQUFpQyxjQUFjLHNCQUFzQixlQUFlLGVBQWUs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QUFPLGFBQWEsU0FBUyxPQUFPLG1CQUFtQixRQUFRLFFBQVEsUUFBUSxTQUFTLFNBQVMsUUFBUSxlQUFlLGFBQWEsS0FBSyxxQkFBcUIsZUFBZSxhQUFhLGtCQUFrQixLQUFLLElBQUksS0FBSyxJQUFJLDhCQUE4Qiw4Q0FBOEMsaUJBQWlCLHNCQUFzQiw4QkFBOEIsZ0JBQWdCLDBCQUEwQixTQUFTLDJIQUEySCxvQkFBb0IsYUFBYSx3QkFBd0IsVUFBVSxXQUFXLG9DQUFvQyxNQUFNLFlBQVksV0FBVyxLQUFLLGdCQUFnQixhQUFhLHFCQUFxQixhQUFhLGlCQUFpQixtQkFBbUIsYUFBYSxLQUFLLGFBQWEsWUFBWSx1QkFBdUIsa0JBQWtCLFVBQVUsSUFBSSxvQkFBb0IscUJBQXFCLFVBQVUsYUFBYSxzQkFBc0IscUJBQXFCLGlDQUFpQyxZQUFZLFVBQVUsVUFBVSxlQUFlLGNBQWMsTUFBTSw4RkFBOEYsUUFBUSwrREFBK0QsNkJBQTZCLGtEQUFrRCxxQ0FBcUMscUNBQXFDLHVEQUF1RCx1QkFBdUIsMkJBQTJCLG1CQUFtQiw4Q0FBOEMsU0FBUyxhQUFhLElBQUksV0FBVyxHQUFHLHNCQUFzQixJQUFJLFFBQVEsdUJBQXVCLGFBQWEsY0FBYyxVQUFVLG9CQUFvQixLQUFLLElBQUksMEJBQTBCLDBCQUEwQixTQUFTLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLHFCQUFxQixZQUFZLEVBQUUsT0FBTyxVQUFVLGVBQWUsVUFBVSxHQUFHLElBQUksK0JBQStCLHNCQUFzQixXQUFXLHFCQUFxQixZQUFZLFNBQVMsZ0NBQWdDLFdBQVcsa0JBQWtCLGlCQUFpQixZQUFZLFlBQVksV0FBVyxJQUFJLHNDQUFzQyxRQUFRLFFBQVEsaUJBQWlCLGlCQUFpQixtRUFBbUUsU0FBUyxLQUFLLCtCQUErQixpQkFBaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9waWNvbWF0Y2gvaW5kZXguanM/NTBiOSJdLCJzb3VyY2VzQ29udGVudCI6WyIoKCk9PntcInVzZSBzdHJpY3RcIjt2YXIgdD17MTcwOih0LGUsdSk9Pntjb25zdCBuPXUoNTEwKTtjb25zdCBpc1dpbmRvd3M9KCk9PntpZih0eXBlb2YgbmF2aWdhdG9yIT09XCJ1bmRlZmluZWRcIiYmbmF2aWdhdG9yLnBsYXRmb3JtKXtjb25zdCB0PW5hdmlnYXRvci5wbGF0Zm9ybS50b0xvd2VyQ2FzZSgpO3JldHVybiB0PT09XCJ3aW4zMlwifHx0PT09XCJ3aW5kb3dzXCJ9aWYodHlwZW9mIHByb2Nlc3MhPT1cInVuZGVmaW5lZFwiJiZwcm9jZXNzLnBsYXRmb3JtKXtyZXR1cm4gcHJvY2Vzcy5wbGF0Zm9ybT09PVwid2luMzJcIn1yZXR1cm4gZmFsc2V9O2Z1bmN0aW9uIHBpY29tYXRjaCh0LGUsdT1mYWxzZSl7aWYoZSYmKGUud2luZG93cz09PW51bGx8fGUud2luZG93cz09PXVuZGVmaW5lZCkpe2U9ey4uLmUsd2luZG93czppc1dpbmRvd3MoKX19cmV0dXJuIG4odCxlLHUpfU9iamVjdC5hc3NpZ24ocGljb21hdGNoLG4pO3QuZXhwb3J0cz1waWNvbWF0Y2h9LDE1NDp0PT57Y29uc3QgZT1cIlxcXFxcXFxcL1wiO2NvbnN0IHU9YFteJHtlfV1gO2NvbnN0IG49XCJcXFxcLlwiO2NvbnN0IG89XCJcXFxcK1wiO2NvbnN0IHM9XCJcXFxcP1wiO2NvbnN0IHI9XCJcXFxcL1wiO2NvbnN0IGE9XCIoPz0uKVwiO2NvbnN0IGk9XCJbXi9dXCI7Y29uc3QgYz1gKD86JHtyfXwkKWA7Y29uc3QgcD1gKD86Xnwke3J9KWA7Y29uc3QgbD1gJHtufXsxLDJ9JHtjfWA7Y29uc3QgZj1gKD8hJHtufSlgO2NvbnN0IEE9YCg/ISR7cH0ke2x9KWA7Y29uc3QgXz1gKD8hJHtufXswLDF9JHtjfSlgO2NvbnN0IFI9YCg/ISR7bH0pYDtjb25zdCBFPWBbXi4ke3J9XWA7Y29uc3QgaD1gJHtpfSo/YDtjb25zdCBnPVwiL1wiO2NvbnN0IGI9e0RPVF9MSVRFUkFMOm4sUExVU19MSVRFUkFMOm8sUU1BUktfTElURVJBTDpzLFNMQVNIX0xJVEVSQUw6cixPTkVfQ0hBUjphLFFNQVJLOmksRU5EX0FOQ0hPUjpjLERPVFNfU0xBU0g6bCxOT19ET1Q6ZixOT19ET1RTOkEsTk9fRE9UX1NMQVNIOl8sTk9fRE9UU19TTEFTSDpSLFFNQVJLX05PX0RPVDpFLFNUQVI6aCxTVEFSVF9BTkNIT1I6cCxTRVA6Z307Y29uc3QgQz17Li4uYixTTEFTSF9MSVRFUkFMOmBbJHtlfV1gLFFNQVJLOnUsU1RBUjpgJHt1fSo/YCxET1RTX1NMQVNIOmAke259ezEsMn0oPzpbJHtlfV18JClgLE5PX0RPVDpgKD8hJHtufSlgLE5PX0RPVFM6YCg/ISg/Ol58WyR7ZX1dKSR7bn17MSwyfSg/Olske2V9XXwkKSlgLE5PX0RPVF9TTEFTSDpgKD8hJHtufXswLDF9KD86WyR7ZX1dfCQpKWAsTk9fRE9UU19TTEFTSDpgKD8hJHtufXsxLDJ9KD86WyR7ZX1dfCQpKWAsUU1BUktfTk9fRE9UOmBbXi4ke2V9XWAsU1RBUlRfQU5DSE9SOmAoPzpefFske2V9XSlgLEVORF9BTkNIT1I6YCg/Olske2V9XXwkKWAsU0VQOlwiXFxcXFwifTtjb25zdCB5PXthbG51bTpcImEtekEtWjAtOVwiLGFscGhhOlwiYS16QS1aXCIsYXNjaWk6XCJcXFxceDAwLVxcXFx4N0ZcIixibGFuazpcIiBcXFxcdFwiLGNudHJsOlwiXFxcXHgwMC1cXFxceDFGXFxcXHg3RlwiLGRpZ2l0OlwiMC05XCIsZ3JhcGg6XCJcXFxceDIxLVxcXFx4N0VcIixsb3dlcjpcImEtelwiLHByaW50OlwiXFxcXHgyMC1cXFxceDdFIFwiLHB1bmN0OlwiXFxcXC0hXFxcIiMkJSYnKClcXFxcKissLi86Ozw9Pj9AW1xcXFxdXl9ge3x9flwiLHNwYWNlOlwiIFxcXFx0XFxcXHJcXFxcblxcXFx2XFxcXGZcIix1cHBlcjpcIkEtWlwiLHdvcmQ6XCJBLVphLXowLTlfXCIseGRpZ2l0OlwiQS1GYS1mMC05XCJ9O3QuZXhwb3J0cz17TUFYX0xFTkdUSDoxMDI0KjY0LFBPU0lYX1JFR0VYX1NPVVJDRTp5LFJFR0VYX0JBQ0tTTEFTSDovXFxcXCg/IVsqKz9eJHt9KHwpW1xcXV0pL2csUkVHRVhfTk9OX1NQRUNJQUxfQ0hBUlM6L15bXkAhW1xcXS4sJCorP157fSgpfFxcXFwvXSsvLFJFR0VYX1NQRUNJQUxfQ0hBUlM6L1stKis/Ll4ke30ofClbXFxdXS8sUkVHRVhfU1BFQ0lBTF9DSEFSU19CQUNLUkVGOi8oXFxcXD8pKChcXFcpKFxcMyopKS9nLFJFR0VYX1NQRUNJQUxfQ0hBUlNfR0xPQkFMOi8oWy0qKz8uXiR7fSh8KVtcXF1dKS9nLFJFR0VYX1JFTU9WRV9CQUNLU0xBU0g6Lyg/OlxcWy4qP1teXFxcXF1cXF18XFxcXCg/PS4pKS9nLFJFUExBQ0VNRU5UUzp7XCIqKipcIjpcIipcIixcIioqLyoqXCI6XCIqKlwiLFwiKiovKiovKipcIjpcIioqXCJ9LENIQVJfMDo0OCxDSEFSXzk6NTcsQ0hBUl9VUFBFUkNBU0VfQTo2NSxDSEFSX0xPV0VSQ0FTRV9BOjk3LENIQVJfVVBQRVJDQVNFX1o6OTAsQ0hBUl9MT1dFUkNBU0VfWjoxMjIsQ0hBUl9MRUZUX1BBUkVOVEhFU0VTOjQwLENIQVJfUklHSFRfUEFSRU5USEVTRVM6NDEsQ0hBUl9BU1RFUklTSzo0MixDSEFSX0FNUEVSU0FORDozOCxDSEFSX0FUOjY0LENIQVJfQkFDS1dBUkRfU0xBU0g6OTIsQ0hBUl9DQVJSSUFHRV9SRVRVUk46MTMsQ0hBUl9DSVJDVU1GTEVYX0FDQ0VOVDo5NCxDSEFSX0NPTE9OOjU4LENIQVJfQ09NTUE6NDQsQ0hBUl9ET1Q6NDYsQ0hBUl9ET1VCTEVfUVVPVEU6MzQsQ0hBUl9FUVVBTDo2MSxDSEFSX0VYQ0xBTUFUSU9OX01BUks6MzMsQ0hBUl9GT1JNX0ZFRUQ6MTIsQ0hBUl9GT1JXQVJEX1NMQVNIOjQ3LENIQVJfR1JBVkVfQUNDRU5UOjk2LENIQVJfSEFTSDozNSxDSEFSX0hZUEhFTl9NSU5VUzo0NSxDSEFSX0xFRlRfQU5HTEVfQlJBQ0tFVDo2MCxDSEFSX0xFRlRfQ1VSTFlfQlJBQ0U6MTIzLENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVDo5MSxDSEFSX0xJTkVfRkVFRDoxMCxDSEFSX05PX0JSRUFLX1NQQUNFOjE2MCxDSEFSX1BFUkNFTlQ6MzcsQ0hBUl9QTFVTOjQzLENIQVJfUVVFU1RJT05fTUFSSzo2MyxDSEFSX1JJR0hUX0FOR0xFX0JSQUNLRVQ6NjIsQ0hBUl9SSUdIVF9DVVJMWV9CUkFDRToxMjUsQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDo5MyxDSEFSX1NFTUlDT0xPTjo1OSxDSEFSX1NJTkdMRV9RVU9URTozOSxDSEFSX1NQQUNFOjMyLENIQVJfVEFCOjksQ0hBUl9VTkRFUlNDT1JFOjk1LENIQVJfVkVSVElDQUxfTElORToxMjQsQ0hBUl9aRVJPX1dJRFRIX05PQlJFQUtfU1BBQ0U6NjUyNzksZXh0Z2xvYkNoYXJzKHQpe3JldHVybntcIiFcIjp7dHlwZTpcIm5lZ2F0ZVwiLG9wZW46XCIoPzooPyEoPzpcIixjbG9zZTpgKSkke3QuU1RBUn0pYH0sXCI/XCI6e3R5cGU6XCJxbWFya1wiLG9wZW46XCIoPzpcIixjbG9zZTpcIik/XCJ9LFwiK1wiOnt0eXBlOlwicGx1c1wiLG9wZW46XCIoPzpcIixjbG9zZTpcIikrXCJ9LFwiKlwiOnt0eXBlOlwic3RhclwiLG9wZW46XCIoPzpcIixjbG9zZTpcIikqXCJ9LFwiQFwiOnt0eXBlOlwiYXRcIixvcGVuOlwiKD86XCIsY2xvc2U6XCIpXCJ9fX0sZ2xvYkNoYXJzKHQpe3JldHVybiB0PT09dHJ1ZT9DOmJ9fX0sNjk3Oih0LGUsdSk9Pntjb25zdCBuPXUoMTU0KTtjb25zdCBvPXUoOTYpO2NvbnN0e01BWF9MRU5HVEg6cyxQT1NJWF9SRUdFWF9TT1VSQ0U6cixSRUdFWF9OT05fU1BFQ0lBTF9DSEFSUzphLFJFR0VYX1NQRUNJQUxfQ0hBUlNfQkFDS1JFRjppLFJFUExBQ0VNRU5UUzpjfT1uO2NvbnN0IGV4cGFuZFJhbmdlPSh0LGUpPT57aWYodHlwZW9mIGUuZXhwYW5kUmFuZ2U9PT1cImZ1bmN0aW9uXCIpe3JldHVybiBlLmV4cGFuZFJhbmdlKC4uLnQsZSl9dC5zb3J0KCk7Y29uc3QgdT1gWyR7dC5qb2luKFwiLVwiKX1dYDt0cnl7bmV3IFJlZ0V4cCh1KX1jYXRjaChlKXtyZXR1cm4gdC5tYXAoKHQ9Pm8uZXNjYXBlUmVnZXgodCkpKS5qb2luKFwiLi5cIil9cmV0dXJuIHV9O2NvbnN0IHN5bnRheEVycm9yPSh0LGUpPT5gTWlzc2luZyAke3R9OiBcIiR7ZX1cIiAtIHVzZSBcIlxcXFxcXFxcJHtlfVwiIHRvIG1hdGNoIGxpdGVyYWwgY2hhcmFjdGVyc2A7Y29uc3QgcGFyc2U9KHQsZSk9PntpZih0eXBlb2YgdCE9PVwic3RyaW5nXCIpe3Rocm93IG5ldyBUeXBlRXJyb3IoXCJFeHBlY3RlZCBhIHN0cmluZ1wiKX10PWNbdF18fHQ7Y29uc3QgdT17Li4uZX07Y29uc3QgcD10eXBlb2YgdS5tYXhMZW5ndGg9PT1cIm51bWJlclwiP01hdGgubWluKHMsdS5tYXhMZW5ndGgpOnM7bGV0IGw9dC5sZW5ndGg7aWYobD5wKXt0aHJvdyBuZXcgU3ludGF4RXJyb3IoYElucHV0IGxlbmd0aDogJHtsfSwgZXhjZWVkcyBtYXhpbXVtIGFsbG93ZWQgbGVuZ3RoOiAke3B9YCl9Y29uc3QgZj17dHlwZTpcImJvc1wiLHZhbHVlOlwiXCIsb3V0cHV0OnUucHJlcGVuZHx8XCJcIn07Y29uc3QgQT1bZl07Y29uc3QgXz11LmNhcHR1cmU/XCJcIjpcIj86XCI7Y29uc3QgUj1uLmdsb2JDaGFycyh1LndpbmRvd3MpO2NvbnN0IEU9bi5leHRnbG9iQ2hhcnMoUik7Y29uc3R7RE9UX0xJVEVSQUw6aCxQTFVTX0xJVEVSQUw6ZyxTTEFTSF9MSVRFUkFMOmIsT05FX0NIQVI6QyxET1RTX1NMQVNIOnksTk9fRE9UOiQsTk9fRE9UX1NMQVNIOngsTk9fRE9UU19TTEFTSDpTLFFNQVJLOkgsUU1BUktfTk9fRE9UOnYsU1RBUjpkLFNUQVJUX0FOQ0hPUjpMfT1SO2NvbnN0IGdsb2JzdGFyPXQ9PmAoJHtffSg/Oig/ISR7TH0ke3QuZG90P3k6aH0pLikqPylgO2NvbnN0IFQ9dS5kb3Q/XCJcIjokO2NvbnN0IE89dS5kb3Q/SDp2O2xldCBrPXUuYmFzaD09PXRydWU/Z2xvYnN0YXIodSk6ZDtpZih1LmNhcHR1cmUpe2s9YCgke2t9KWB9aWYodHlwZW9mIHUubm9leHQ9PT1cImJvb2xlYW5cIil7dS5ub2V4dGdsb2I9dS5ub2V4dH1jb25zdCBtPXtpbnB1dDp0LGluZGV4Oi0xLHN0YXJ0OjAsZG90OnUuZG90PT09dHJ1ZSxjb25zdW1lZDpcIlwiLG91dHB1dDpcIlwiLHByZWZpeDpcIlwiLGJhY2t0cmFjazpmYWxzZSxuZWdhdGVkOmZhbHNlLGJyYWNrZXRzOjAsYnJhY2VzOjAscGFyZW5zOjAscXVvdGVzOjAsZ2xvYnN0YXI6ZmFsc2UsdG9rZW5zOkF9O3Q9by5yZW1vdmVQcmVmaXgodCxtKTtsPXQubGVuZ3RoO2NvbnN0IHc9W107Y29uc3QgTj1bXTtjb25zdCBJPVtdO2xldCBCPWY7bGV0IEc7Y29uc3QgZW9zPSgpPT5tLmluZGV4PT09bC0xO2NvbnN0IEQ9bS5wZWVrPShlPTEpPT50W20uaW5kZXgrZV07Y29uc3QgTT1tLmFkdmFuY2U9KCk9PnRbKyttLmluZGV4XXx8XCJcIjtjb25zdCByZW1haW5pbmc9KCk9PnQuc2xpY2UobS5pbmRleCsxKTtjb25zdCBjb25zdW1lPSh0PVwiXCIsZT0wKT0+e20uY29uc3VtZWQrPXQ7bS5pbmRleCs9ZX07Y29uc3QgYXBwZW5kPXQ9PnttLm91dHB1dCs9dC5vdXRwdXQhPW51bGw/dC5vdXRwdXQ6dC52YWx1ZTtjb25zdW1lKHQudmFsdWUpfTtjb25zdCBuZWdhdGU9KCk9PntsZXQgdD0xO3doaWxlKEQoKT09PVwiIVwiJiYoRCgyKSE9PVwiKFwifHxEKDMpPT09XCI/XCIpKXtNKCk7bS5zdGFydCsrO3QrK31pZih0JTI9PT0wKXtyZXR1cm4gZmFsc2V9bS5uZWdhdGVkPXRydWU7bS5zdGFydCsrO3JldHVybiB0cnVlfTtjb25zdCBpbmNyZW1lbnQ9dD0+e21bdF0rKztJLnB1c2godCl9O2NvbnN0IGRlY3JlbWVudD10PT57bVt0XS0tO0kucG9wKCl9O2NvbnN0IHB1c2g9dD0+e2lmKEIudHlwZT09PVwiZ2xvYnN0YXJcIil7Y29uc3QgZT1tLmJyYWNlcz4wJiYodC50eXBlPT09XCJjb21tYVwifHx0LnR5cGU9PT1cImJyYWNlXCIpO2NvbnN0IHU9dC5leHRnbG9iPT09dHJ1ZXx8dy5sZW5ndGgmJih0LnR5cGU9PT1cInBpcGVcInx8dC50eXBlPT09XCJwYXJlblwiKTtpZih0LnR5cGUhPT1cInNsYXNoXCImJnQudHlwZSE9PVwicGFyZW5cIiYmIWUmJiF1KXttLm91dHB1dD1tLm91dHB1dC5zbGljZSgwLC1CLm91dHB1dC5sZW5ndGgpO0IudHlwZT1cInN0YXJcIjtCLnZhbHVlPVwiKlwiO0Iub3V0cHV0PWs7bS5vdXRwdXQrPUIub3V0cHV0fX1pZih3Lmxlbmd0aCYmdC50eXBlIT09XCJwYXJlblwiKXt3W3cubGVuZ3RoLTFdLmlubmVyKz10LnZhbHVlfWlmKHQudmFsdWV8fHQub3V0cHV0KWFwcGVuZCh0KTtpZihCJiZCLnR5cGU9PT1cInRleHRcIiYmdC50eXBlPT09XCJ0ZXh0XCIpe0Iub3V0cHV0PShCLm91dHB1dHx8Qi52YWx1ZSkrdC52YWx1ZTtCLnZhbHVlKz10LnZhbHVlO3JldHVybn10LnByZXY9QjtBLnB1c2godCk7Qj10fTtjb25zdCBleHRnbG9iT3Blbj0odCxlKT0+e2NvbnN0IG49ey4uLkVbZV0sY29uZGl0aW9uczoxLGlubmVyOlwiXCJ9O24ucHJldj1CO24ucGFyZW5zPW0ucGFyZW5zO24ub3V0cHV0PW0ub3V0cHV0O2NvbnN0IG89KHUuY2FwdHVyZT9cIihcIjpcIlwiKStuLm9wZW47aW5jcmVtZW50KFwicGFyZW5zXCIpO3B1c2goe3R5cGU6dCx2YWx1ZTplLG91dHB1dDptLm91dHB1dD9cIlwiOkN9KTtwdXNoKHt0eXBlOlwicGFyZW5cIixleHRnbG9iOnRydWUsdmFsdWU6TSgpLG91dHB1dDpvfSk7dy5wdXNoKG4pfTtjb25zdCBleHRnbG9iQ2xvc2U9dD0+e2xldCBuPXQuY2xvc2UrKHUuY2FwdHVyZT9cIilcIjpcIlwiKTtsZXQgbztpZih0LnR5cGU9PT1cIm5lZ2F0ZVwiKXtsZXQgcz1rO2lmKHQuaW5uZXImJnQuaW5uZXIubGVuZ3RoPjEmJnQuaW5uZXIuaW5jbHVkZXMoXCIvXCIpKXtzPWdsb2JzdGFyKHUpfWlmKHMhPT1rfHxlb3MoKXx8L15cXCkrJC8udGVzdChyZW1haW5pbmcoKSkpe249dC5jbG9zZT1gKSQpKSR7c31gfWlmKHQuaW5uZXIuaW5jbHVkZXMoXCIqXCIpJiYobz1yZW1haW5pbmcoKSkmJi9eXFwuW15cXFxcLy5dKyQvLnRlc3Qobykpe2NvbnN0IHU9cGFyc2Uobyx7Li4uZSxmYXN0cGF0aHM6ZmFsc2V9KS5vdXRwdXQ7bj10LmNsb3NlPWApJHt1fSkke3N9KWB9aWYodC5wcmV2LnR5cGU9PT1cImJvc1wiKXttLm5lZ2F0ZWRFeHRnbG9iPXRydWV9fXB1c2goe3R5cGU6XCJwYXJlblwiLGV4dGdsb2I6dHJ1ZSx2YWx1ZTpHLG91dHB1dDpufSk7ZGVjcmVtZW50KFwicGFyZW5zXCIpfTtpZih1LmZhc3RwYXRocyE9PWZhbHNlJiYhLyheWyohXXxbLygpW1xcXXt9XCJdKS8udGVzdCh0KSl7bGV0IG49ZmFsc2U7bGV0IHM9dC5yZXBsYWNlKGksKCh0LGUsdSxvLHMscik9PntpZihvPT09XCJcXFxcXCIpe249dHJ1ZTtyZXR1cm4gdH1pZihvPT09XCI/XCIpe2lmKGUpe3JldHVybiBlK28rKHM/SC5yZXBlYXQocy5sZW5ndGgpOlwiXCIpfWlmKHI9PT0wKXtyZXR1cm4gTysocz9ILnJlcGVhdChzLmxlbmd0aCk6XCJcIil9cmV0dXJuIEgucmVwZWF0KHUubGVuZ3RoKX1pZihvPT09XCIuXCIpe3JldHVybiBoLnJlcGVhdCh1Lmxlbmd0aCl9aWYobz09PVwiKlwiKXtpZihlKXtyZXR1cm4gZStvKyhzP2s6XCJcIil9cmV0dXJuIGt9cmV0dXJuIGU/dDpgXFxcXCR7dH1gfSkpO2lmKG49PT10cnVlKXtpZih1LnVuZXNjYXBlPT09dHJ1ZSl7cz1zLnJlcGxhY2UoL1xcXFwvZyxcIlwiKX1lbHNle3M9cy5yZXBsYWNlKC9cXFxcKy9nLCh0PT50Lmxlbmd0aCUyPT09MD9cIlxcXFxcXFxcXCI6dD9cIlxcXFxcIjpcIlwiKSl9fWlmKHM9PT10JiZ1LmNvbnRhaW5zPT09dHJ1ZSl7bS5vdXRwdXQ9dDtyZXR1cm4gbX1tLm91dHB1dD1vLndyYXBPdXRwdXQocyxtLGUpO3JldHVybiBtfXdoaWxlKCFlb3MoKSl7Rz1NKCk7aWYoRz09PVwiXFwwXCIpe2NvbnRpbnVlfWlmKEc9PT1cIlxcXFxcIil7Y29uc3QgdD1EKCk7aWYodD09PVwiL1wiJiZ1LmJhc2ghPT10cnVlKXtjb250aW51ZX1pZih0PT09XCIuXCJ8fHQ9PT1cIjtcIil7Y29udGludWV9aWYoIXQpe0crPVwiXFxcXFwiO3B1c2goe3R5cGU6XCJ0ZXh0XCIsdmFsdWU6R30pO2NvbnRpbnVlfWNvbnN0IGU9L15cXFxcKy8uZXhlYyhyZW1haW5pbmcoKSk7bGV0IG49MDtpZihlJiZlWzBdLmxlbmd0aD4yKXtuPWVbMF0ubGVuZ3RoO20uaW5kZXgrPW47aWYobiUyIT09MCl7Rys9XCJcXFxcXCJ9fWlmKHUudW5lc2NhcGU9PT10cnVlKXtHPU0oKX1lbHNle0crPU0oKX1pZihtLmJyYWNrZXRzPT09MCl7cHVzaCh7dHlwZTpcInRleHRcIix2YWx1ZTpHfSk7Y29udGludWV9fWlmKG0uYnJhY2tldHM+MCYmKEchPT1cIl1cInx8Qi52YWx1ZT09PVwiW1wifHxCLnZhbHVlPT09XCJbXlwiKSl7aWYodS5wb3NpeCE9PWZhbHNlJiZHPT09XCI6XCIpe2NvbnN0IHQ9Qi52YWx1ZS5zbGljZSgxKTtpZih0LmluY2x1ZGVzKFwiW1wiKSl7Qi5wb3NpeD10cnVlO2lmKHQuaW5jbHVkZXMoXCI6XCIpKXtjb25zdCB0PUIudmFsdWUubGFzdEluZGV4T2YoXCJbXCIpO2NvbnN0IGU9Qi52YWx1ZS5zbGljZSgwLHQpO2NvbnN0IHU9Qi52YWx1ZS5zbGljZSh0KzIpO2NvbnN0IG49clt1XTtpZihuKXtCLnZhbHVlPWUrbjttLmJhY2t0cmFjaz10cnVlO00oKTtpZighZi5vdXRwdXQmJkEuaW5kZXhPZihCKT09PTEpe2Yub3V0cHV0PUN9Y29udGludWV9fX19aWYoRz09PVwiW1wiJiZEKCkhPT1cIjpcInx8Rz09PVwiLVwiJiZEKCk9PT1cIl1cIil7Rz1gXFxcXCR7R31gfWlmKEc9PT1cIl1cIiYmKEIudmFsdWU9PT1cIltcInx8Qi52YWx1ZT09PVwiW15cIikpe0c9YFxcXFwke0d9YH1pZih1LnBvc2l4PT09dHJ1ZSYmRz09PVwiIVwiJiZCLnZhbHVlPT09XCJbXCIpe0c9XCJeXCJ9Qi52YWx1ZSs9RzthcHBlbmQoe3ZhbHVlOkd9KTtjb250aW51ZX1pZihtLnF1b3Rlcz09PTEmJkchPT0nXCInKXtHPW8uZXNjYXBlUmVnZXgoRyk7Qi52YWx1ZSs9RzthcHBlbmQoe3ZhbHVlOkd9KTtjb250aW51ZX1pZihHPT09J1wiJyl7bS5xdW90ZXM9bS5xdW90ZXM9PT0xPzA6MTtpZih1LmtlZXBRdW90ZXM9PT10cnVlKXtwdXNoKHt0eXBlOlwidGV4dFwiLHZhbHVlOkd9KX1jb250aW51ZX1pZihHPT09XCIoXCIpe2luY3JlbWVudChcInBhcmVuc1wiKTtwdXNoKHt0eXBlOlwicGFyZW5cIix2YWx1ZTpHfSk7Y29udGludWV9aWYoRz09PVwiKVwiKXtpZihtLnBhcmVucz09PTAmJnUuc3RyaWN0QnJhY2tldHM9PT10cnVlKXt0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoXCJvcGVuaW5nXCIsXCIoXCIpKX1jb25zdCB0PXdbdy5sZW5ndGgtMV07aWYodCYmbS5wYXJlbnM9PT10LnBhcmVucysxKXtleHRnbG9iQ2xvc2Uody5wb3AoKSk7Y29udGludWV9cHVzaCh7dHlwZTpcInBhcmVuXCIsdmFsdWU6RyxvdXRwdXQ6bS5wYXJlbnM/XCIpXCI6XCJcXFxcKVwifSk7ZGVjcmVtZW50KFwicGFyZW5zXCIpO2NvbnRpbnVlfWlmKEc9PT1cIltcIil7aWYodS5ub2JyYWNrZXQ9PT10cnVlfHwhcmVtYWluaW5nKCkuaW5jbHVkZXMoXCJdXCIpKXtpZih1Lm5vYnJhY2tldCE9PXRydWUmJnUuc3RyaWN0QnJhY2tldHM9PT10cnVlKXt0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoXCJjbG9zaW5nXCIsXCJdXCIpKX1HPWBcXFxcJHtHfWB9ZWxzZXtpbmNyZW1lbnQoXCJicmFja2V0c1wiKX1wdXNoKHt0eXBlOlwiYnJhY2tldFwiLHZhbHVlOkd9KTtjb250aW51ZX1pZihHPT09XCJdXCIpe2lmKHUubm9icmFja2V0PT09dHJ1ZXx8QiYmQi50eXBlPT09XCJicmFja2V0XCImJkIudmFsdWUubGVuZ3RoPT09MSl7cHVzaCh7dHlwZTpcInRleHRcIix2YWx1ZTpHLG91dHB1dDpgXFxcXCR7R31gfSk7Y29udGludWV9aWYobS5icmFja2V0cz09PTApe2lmKHUuc3RyaWN0QnJhY2tldHM9PT10cnVlKXt0aHJvdyBuZXcgU3ludGF4RXJyb3Ioc3ludGF4RXJyb3IoXCJvcGVuaW5nXCIsXCJbXCIpKX1wdXNoKHt0eXBlOlwidGV4dFwiLHZhbHVlOkcsb3V0cHV0OmBcXFxcJHtHfWB9KTtjb250aW51ZX1kZWNyZW1lbnQoXCJicmFja2V0c1wiKTtjb25zdCB0PUIudmFsdWUuc2xpY2UoMSk7aWYoQi5wb3NpeCE9PXRydWUmJnRbMF09PT1cIl5cIiYmIXQuaW5jbHVkZXMoXCIvXCIpKXtHPWAvJHtHfWB9Qi52YWx1ZSs9RzthcHBlbmQoe3ZhbHVlOkd9KTtpZih1LmxpdGVyYWxCcmFja2V0cz09PWZhbHNlfHxvLmhhc1JlZ2V4Q2hhcnModCkpe2NvbnRpbnVlfWNvbnN0IGU9by5lc2NhcGVSZWdleChCLnZhbHVlKTttLm91dHB1dD1tLm91dHB1dC5zbGljZSgwLC1CLnZhbHVlLmxlbmd0aCk7aWYodS5saXRlcmFsQnJhY2tldHM9PT10cnVlKXttLm91dHB1dCs9ZTtCLnZhbHVlPWU7Y29udGludWV9Qi52YWx1ZT1gKCR7X30ke2V9fCR7Qi52YWx1ZX0pYDttLm91dHB1dCs9Qi52YWx1ZTtjb250aW51ZX1pZihHPT09XCJ7XCImJnUubm9icmFjZSE9PXRydWUpe2luY3JlbWVudChcImJyYWNlc1wiKTtjb25zdCB0PXt0eXBlOlwiYnJhY2VcIix2YWx1ZTpHLG91dHB1dDpcIihcIixvdXRwdXRJbmRleDptLm91dHB1dC5sZW5ndGgsdG9rZW5zSW5kZXg6bS50b2tlbnMubGVuZ3RofTtOLnB1c2godCk7cHVzaCh0KTtjb250aW51ZX1pZihHPT09XCJ9XCIpe2NvbnN0IHQ9TltOLmxlbmd0aC0xXTtpZih1Lm5vYnJhY2U9PT10cnVlfHwhdCl7cHVzaCh7dHlwZTpcInRleHRcIix2YWx1ZTpHLG91dHB1dDpHfSk7Y29udGludWV9bGV0IGU9XCIpXCI7aWYodC5kb3RzPT09dHJ1ZSl7Y29uc3QgdD1BLnNsaWNlKCk7Y29uc3Qgbj1bXTtmb3IobGV0IGU9dC5sZW5ndGgtMTtlPj0wO2UtLSl7QS5wb3AoKTtpZih0W2VdLnR5cGU9PT1cImJyYWNlXCIpe2JyZWFrfWlmKHRbZV0udHlwZSE9PVwiZG90c1wiKXtuLnVuc2hpZnQodFtlXS52YWx1ZSl9fWU9ZXhwYW5kUmFuZ2Uobix1KTttLmJhY2t0cmFjaz10cnVlfWlmKHQuY29tbWEhPT10cnVlJiZ0LmRvdHMhPT10cnVlKXtjb25zdCB1PW0ub3V0cHV0LnNsaWNlKDAsdC5vdXRwdXRJbmRleCk7Y29uc3Qgbj1tLnRva2Vucy5zbGljZSh0LnRva2Vuc0luZGV4KTt0LnZhbHVlPXQub3V0cHV0PVwiXFxcXHtcIjtHPWU9XCJcXFxcfVwiO20ub3V0cHV0PXU7Zm9yKGNvbnN0IHQgb2Ygbil7bS5vdXRwdXQrPXQub3V0cHV0fHx0LnZhbHVlfX1wdXNoKHt0eXBlOlwiYnJhY2VcIix2YWx1ZTpHLG91dHB1dDplfSk7ZGVjcmVtZW50KFwiYnJhY2VzXCIpO04ucG9wKCk7Y29udGludWV9aWYoRz09PVwifFwiKXtpZih3Lmxlbmd0aD4wKXt3W3cubGVuZ3RoLTFdLmNvbmRpdGlvbnMrK31wdXNoKHt0eXBlOlwidGV4dFwiLHZhbHVlOkd9KTtjb250aW51ZX1pZihHPT09XCIsXCIpe2xldCB0PUc7Y29uc3QgZT1OW04ubGVuZ3RoLTFdO2lmKGUmJklbSS5sZW5ndGgtMV09PT1cImJyYWNlc1wiKXtlLmNvbW1hPXRydWU7dD1cInxcIn1wdXNoKHt0eXBlOlwiY29tbWFcIix2YWx1ZTpHLG91dHB1dDp0fSk7Y29udGludWV9aWYoRz09PVwiL1wiKXtpZihCLnR5cGU9PT1cImRvdFwiJiZtLmluZGV4PT09bS5zdGFydCsxKXttLnN0YXJ0PW0uaW5kZXgrMTttLmNvbnN1bWVkPVwiXCI7bS5vdXRwdXQ9XCJcIjtBLnBvcCgpO0I9Zjtjb250aW51ZX1wdXNoKHt0eXBlOlwic2xhc2hcIix2YWx1ZTpHLG91dHB1dDpifSk7Y29udGludWV9aWYoRz09PVwiLlwiKXtpZihtLmJyYWNlcz4wJiZCLnR5cGU9PT1cImRvdFwiKXtpZihCLnZhbHVlPT09XCIuXCIpQi5vdXRwdXQ9aDtjb25zdCB0PU5bTi5sZW5ndGgtMV07Qi50eXBlPVwiZG90c1wiO0Iub3V0cHV0Kz1HO0IudmFsdWUrPUc7dC5kb3RzPXRydWU7Y29udGludWV9aWYobS5icmFjZXMrbS5wYXJlbnM9PT0wJiZCLnR5cGUhPT1cImJvc1wiJiZCLnR5cGUhPT1cInNsYXNoXCIpe3B1c2goe3R5cGU6XCJ0ZXh0XCIsdmFsdWU6RyxvdXRwdXQ6aH0pO2NvbnRpbnVlfXB1c2goe3R5cGU6XCJkb3RcIix2YWx1ZTpHLG91dHB1dDpofSk7Y29udGludWV9aWYoRz09PVwiP1wiKXtjb25zdCB0PUImJkIudmFsdWU9PT1cIihcIjtpZighdCYmdS5ub2V4dGdsb2IhPT10cnVlJiZEKCk9PT1cIihcIiYmRCgyKSE9PVwiP1wiKXtleHRnbG9iT3BlbihcInFtYXJrXCIsRyk7Y29udGludWV9aWYoQiYmQi50eXBlPT09XCJwYXJlblwiKXtjb25zdCB0PUQoKTtsZXQgZT1HO2lmKEIudmFsdWU9PT1cIihcIiYmIS9bIT08Ol0vLnRlc3QodCl8fHQ9PT1cIjxcIiYmIS88KFshPV18XFx3Kz4pLy50ZXN0KHJlbWFpbmluZygpKSl7ZT1gXFxcXCR7R31gfXB1c2goe3R5cGU6XCJ0ZXh0XCIsdmFsdWU6RyxvdXRwdXQ6ZX0pO2NvbnRpbnVlfWlmKHUuZG90IT09dHJ1ZSYmKEIudHlwZT09PVwic2xhc2hcInx8Qi50eXBlPT09XCJib3NcIikpe3B1c2goe3R5cGU6XCJxbWFya1wiLHZhbHVlOkcsb3V0cHV0OnZ9KTtjb250aW51ZX1wdXNoKHt0eXBlOlwicW1hcmtcIix2YWx1ZTpHLG91dHB1dDpIfSk7Y29udGludWV9aWYoRz09PVwiIVwiKXtpZih1Lm5vZXh0Z2xvYiE9PXRydWUmJkQoKT09PVwiKFwiKXtpZihEKDIpIT09XCI/XCJ8fCEvWyE9PDpdLy50ZXN0KEQoMykpKXtleHRnbG9iT3BlbihcIm5lZ2F0ZVwiLEcpO2NvbnRpbnVlfX1pZih1Lm5vbmVnYXRlIT09dHJ1ZSYmbS5pbmRleD09PTApe25lZ2F0ZSgpO2NvbnRpbnVlfX1pZihHPT09XCIrXCIpe2lmKHUubm9leHRnbG9iIT09dHJ1ZSYmRCgpPT09XCIoXCImJkQoMikhPT1cIj9cIil7ZXh0Z2xvYk9wZW4oXCJwbHVzXCIsRyk7Y29udGludWV9aWYoQiYmQi52YWx1ZT09PVwiKFwifHx1LnJlZ2V4PT09ZmFsc2Upe3B1c2goe3R5cGU6XCJwbHVzXCIsdmFsdWU6RyxvdXRwdXQ6Z30pO2NvbnRpbnVlfWlmKEImJihCLnR5cGU9PT1cImJyYWNrZXRcInx8Qi50eXBlPT09XCJwYXJlblwifHxCLnR5cGU9PT1cImJyYWNlXCIpfHxtLnBhcmVucz4wKXtwdXNoKHt0eXBlOlwicGx1c1wiLHZhbHVlOkd9KTtjb250aW51ZX1wdXNoKHt0eXBlOlwicGx1c1wiLHZhbHVlOmd9KTtjb250aW51ZX1pZihHPT09XCJAXCIpe2lmKHUubm9leHRnbG9iIT09dHJ1ZSYmRCgpPT09XCIoXCImJkQoMikhPT1cIj9cIil7cHVzaCh7dHlwZTpcImF0XCIsZXh0Z2xvYjp0cnVlLHZhbHVlOkcsb3V0cHV0OlwiXCJ9KTtjb250aW51ZX1wdXNoKHt0eXBlOlwidGV4dFwiLHZhbHVlOkd9KTtjb250aW51ZX1pZihHIT09XCIqXCIpe2lmKEc9PT1cIiRcInx8Rz09PVwiXlwiKXtHPWBcXFxcJHtHfWB9Y29uc3QgdD1hLmV4ZWMocmVtYWluaW5nKCkpO2lmKHQpe0crPXRbMF07bS5pbmRleCs9dFswXS5sZW5ndGh9cHVzaCh7dHlwZTpcInRleHRcIix2YWx1ZTpHfSk7Y29udGludWV9aWYoQiYmKEIudHlwZT09PVwiZ2xvYnN0YXJcInx8Qi5zdGFyPT09dHJ1ZSkpe0IudHlwZT1cInN0YXJcIjtCLnN0YXI9dHJ1ZTtCLnZhbHVlKz1HO0Iub3V0cHV0PWs7bS5iYWNrdHJhY2s9dHJ1ZTttLmdsb2JzdGFyPXRydWU7Y29uc3VtZShHKTtjb250aW51ZX1sZXQgZT1yZW1haW5pbmcoKTtpZih1Lm5vZXh0Z2xvYiE9PXRydWUmJi9eXFwoW14/XS8udGVzdChlKSl7ZXh0Z2xvYk9wZW4oXCJzdGFyXCIsRyk7Y29udGludWV9aWYoQi50eXBlPT09XCJzdGFyXCIpe2lmKHUubm9nbG9ic3Rhcj09PXRydWUpe2NvbnN1bWUoRyk7Y29udGludWV9Y29uc3Qgbj1CLnByZXY7Y29uc3Qgbz1uLnByZXY7Y29uc3Qgcz1uLnR5cGU9PT1cInNsYXNoXCJ8fG4udHlwZT09PVwiYm9zXCI7Y29uc3Qgcj1vJiYoby50eXBlPT09XCJzdGFyXCJ8fG8udHlwZT09PVwiZ2xvYnN0YXJcIik7aWYodS5iYXNoPT09dHJ1ZSYmKCFzfHxlWzBdJiZlWzBdIT09XCIvXCIpKXtwdXNoKHt0eXBlOlwic3RhclwiLHZhbHVlOkcsb3V0cHV0OlwiXCJ9KTtjb250aW51ZX1jb25zdCBhPW0uYnJhY2VzPjAmJihuLnR5cGU9PT1cImNvbW1hXCJ8fG4udHlwZT09PVwiYnJhY2VcIik7Y29uc3QgaT13Lmxlbmd0aCYmKG4udHlwZT09PVwicGlwZVwifHxuLnR5cGU9PT1cInBhcmVuXCIpO2lmKCFzJiZuLnR5cGUhPT1cInBhcmVuXCImJiFhJiYhaSl7cHVzaCh7dHlwZTpcInN0YXJcIix2YWx1ZTpHLG91dHB1dDpcIlwifSk7Y29udGludWV9d2hpbGUoZS5zbGljZSgwLDMpPT09XCIvKipcIil7Y29uc3QgdT10W20uaW5kZXgrNF07aWYodSYmdSE9PVwiL1wiKXticmVha31lPWUuc2xpY2UoMyk7Y29uc3VtZShcIi8qKlwiLDMpfWlmKG4udHlwZT09PVwiYm9zXCImJmVvcygpKXtCLnR5cGU9XCJnbG9ic3RhclwiO0IudmFsdWUrPUc7Qi5vdXRwdXQ9Z2xvYnN0YXIodSk7bS5vdXRwdXQ9Qi5vdXRwdXQ7bS5nbG9ic3Rhcj10cnVlO2NvbnN1bWUoRyk7Y29udGludWV9aWYobi50eXBlPT09XCJzbGFzaFwiJiZuLnByZXYudHlwZSE9PVwiYm9zXCImJiFyJiZlb3MoKSl7bS5vdXRwdXQ9bS5vdXRwdXQuc2xpY2UoMCwtKG4ub3V0cHV0K0Iub3V0cHV0KS5sZW5ndGgpO24ub3V0cHV0PWAoPzoke24ub3V0cHV0fWA7Qi50eXBlPVwiZ2xvYnN0YXJcIjtCLm91dHB1dD1nbG9ic3Rhcih1KSsodS5zdHJpY3RTbGFzaGVzP1wiKVwiOlwifCQpXCIpO0IudmFsdWUrPUc7bS5nbG9ic3Rhcj10cnVlO20ub3V0cHV0Kz1uLm91dHB1dCtCLm91dHB1dDtjb25zdW1lKEcpO2NvbnRpbnVlfWlmKG4udHlwZT09PVwic2xhc2hcIiYmbi5wcmV2LnR5cGUhPT1cImJvc1wiJiZlWzBdPT09XCIvXCIpe2NvbnN0IHQ9ZVsxXSE9PXZvaWQgMD9cInwkXCI6XCJcIjttLm91dHB1dD1tLm91dHB1dC5zbGljZSgwLC0obi5vdXRwdXQrQi5vdXRwdXQpLmxlbmd0aCk7bi5vdXRwdXQ9YCg/OiR7bi5vdXRwdXR9YDtCLnR5cGU9XCJnbG9ic3RhclwiO0Iub3V0cHV0PWAke2dsb2JzdGFyKHUpfSR7Yn18JHtifSR7dH0pYDtCLnZhbHVlKz1HO20ub3V0cHV0Kz1uLm91dHB1dCtCLm91dHB1dDttLmdsb2JzdGFyPXRydWU7Y29uc3VtZShHK00oKSk7cHVzaCh7dHlwZTpcInNsYXNoXCIsdmFsdWU6XCIvXCIsb3V0cHV0OlwiXCJ9KTtjb250aW51ZX1pZihuLnR5cGU9PT1cImJvc1wiJiZlWzBdPT09XCIvXCIpe0IudHlwZT1cImdsb2JzdGFyXCI7Qi52YWx1ZSs9RztCLm91dHB1dD1gKD86Xnwke2J9fCR7Z2xvYnN0YXIodSl9JHtifSlgO20ub3V0cHV0PUIub3V0cHV0O20uZ2xvYnN0YXI9dHJ1ZTtjb25zdW1lKEcrTSgpKTtwdXNoKHt0eXBlOlwic2xhc2hcIix2YWx1ZTpcIi9cIixvdXRwdXQ6XCJcIn0pO2NvbnRpbnVlfW0ub3V0cHV0PW0ub3V0cHV0LnNsaWNlKDAsLUIub3V0cHV0Lmxlbmd0aCk7Qi50eXBlPVwiZ2xvYnN0YXJcIjtCLm91dHB1dD1nbG9ic3Rhcih1KTtCLnZhbHVlKz1HO20ub3V0cHV0Kz1CLm91dHB1dDttLmdsb2JzdGFyPXRydWU7Y29uc3VtZShHKTtjb250aW51ZX1jb25zdCBuPXt0eXBlOlwic3RhclwiLHZhbHVlOkcsb3V0cHV0Omt9O2lmKHUuYmFzaD09PXRydWUpe24ub3V0cHV0PVwiLio/XCI7aWYoQi50eXBlPT09XCJib3NcInx8Qi50eXBlPT09XCJzbGFzaFwiKXtuLm91dHB1dD1UK24ub3V0cHV0fXB1c2gobik7Y29udGludWV9aWYoQiYmKEIudHlwZT09PVwiYnJhY2tldFwifHxCLnR5cGU9PT1cInBhcmVuXCIpJiZ1LnJlZ2V4PT09dHJ1ZSl7bi5vdXRwdXQ9RztwdXNoKG4pO2NvbnRpbnVlfWlmKG0uaW5kZXg9PT1tLnN0YXJ0fHxCLnR5cGU9PT1cInNsYXNoXCJ8fEIudHlwZT09PVwiZG90XCIpe2lmKEIudHlwZT09PVwiZG90XCIpe20ub3V0cHV0Kz14O0Iub3V0cHV0Kz14fWVsc2UgaWYodS5kb3Q9PT10cnVlKXttLm91dHB1dCs9UztCLm91dHB1dCs9U31lbHNle20ub3V0cHV0Kz1UO0Iub3V0cHV0Kz1UfWlmKEQoKSE9PVwiKlwiKXttLm91dHB1dCs9QztCLm91dHB1dCs9Q319cHVzaChuKX13aGlsZShtLmJyYWNrZXRzPjApe2lmKHUuc3RyaWN0QnJhY2tldHM9PT10cnVlKXRocm93IG5ldyBTeW50YXhFcnJvcihzeW50YXhFcnJvcihcImNsb3NpbmdcIixcIl1cIikpO20ub3V0cHV0PW8uZXNjYXBlTGFzdChtLm91dHB1dCxcIltcIik7ZGVjcmVtZW50KFwiYnJhY2tldHNcIil9d2hpbGUobS5wYXJlbnM+MCl7aWYodS5zdHJpY3RCcmFja2V0cz09PXRydWUpdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKFwiY2xvc2luZ1wiLFwiKVwiKSk7bS5vdXRwdXQ9by5lc2NhcGVMYXN0KG0ub3V0cHV0LFwiKFwiKTtkZWNyZW1lbnQoXCJwYXJlbnNcIil9d2hpbGUobS5icmFjZXM+MCl7aWYodS5zdHJpY3RCcmFja2V0cz09PXRydWUpdGhyb3cgbmV3IFN5bnRheEVycm9yKHN5bnRheEVycm9yKFwiY2xvc2luZ1wiLFwifVwiKSk7bS5vdXRwdXQ9by5lc2NhcGVMYXN0KG0ub3V0cHV0LFwie1wiKTtkZWNyZW1lbnQoXCJicmFjZXNcIil9aWYodS5zdHJpY3RTbGFzaGVzIT09dHJ1ZSYmKEIudHlwZT09PVwic3RhclwifHxCLnR5cGU9PT1cImJyYWNrZXRcIikpe3B1c2goe3R5cGU6XCJtYXliZV9zbGFzaFwiLHZhbHVlOlwiXCIsb3V0cHV0OmAke2J9P2B9KX1pZihtLmJhY2t0cmFjaz09PXRydWUpe20ub3V0cHV0PVwiXCI7Zm9yKGNvbnN0IHQgb2YgbS50b2tlbnMpe20ub3V0cHV0Kz10Lm91dHB1dCE9bnVsbD90Lm91dHB1dDp0LnZhbHVlO2lmKHQuc3VmZml4KXttLm91dHB1dCs9dC5zdWZmaXh9fX1yZXR1cm4gbX07cGFyc2UuZmFzdHBhdGhzPSh0LGUpPT57Y29uc3QgdT17Li4uZX07Y29uc3Qgcj10eXBlb2YgdS5tYXhMZW5ndGg9PT1cIm51bWJlclwiP01hdGgubWluKHMsdS5tYXhMZW5ndGgpOnM7Y29uc3QgYT10Lmxlbmd0aDtpZihhPnIpe3Rocm93IG5ldyBTeW50YXhFcnJvcihgSW5wdXQgbGVuZ3RoOiAke2F9LCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCBsZW5ndGg6ICR7cn1gKX10PWNbdF18fHQ7Y29uc3R7RE9UX0xJVEVSQUw6aSxTTEFTSF9MSVRFUkFMOnAsT05FX0NIQVI6bCxET1RTX1NMQVNIOmYsTk9fRE9UOkEsTk9fRE9UUzpfLE5PX0RPVFNfU0xBU0g6UixTVEFSOkUsU1RBUlRfQU5DSE9SOmh9PW4uZ2xvYkNoYXJzKHUud2luZG93cyk7Y29uc3QgZz11LmRvdD9fOkE7Y29uc3QgYj11LmRvdD9SOkE7Y29uc3QgQz11LmNhcHR1cmU/XCJcIjpcIj86XCI7Y29uc3QgeT17bmVnYXRlZDpmYWxzZSxwcmVmaXg6XCJcIn07bGV0ICQ9dS5iYXNoPT09dHJ1ZT9cIi4qP1wiOkU7aWYodS5jYXB0dXJlKXskPWAoJHskfSlgfWNvbnN0IGdsb2JzdGFyPXQ9PntpZih0Lm5vZ2xvYnN0YXI9PT10cnVlKXJldHVybiAkO3JldHVybmAoJHtDfSg/Oig/ISR7aH0ke3QuZG90P2Y6aX0pLikqPylgfTtjb25zdCBjcmVhdGU9dD0+e3N3aXRjaCh0KXtjYXNlXCIqXCI6cmV0dXJuYCR7Z30ke2x9JHskfWA7Y2FzZVwiLipcIjpyZXR1cm5gJHtpfSR7bH0keyR9YDtjYXNlXCIqLipcIjpyZXR1cm5gJHtnfSR7JH0ke2l9JHtsfSR7JH1gO2Nhc2VcIiovKlwiOnJldHVybmAke2d9JHskfSR7cH0ke2x9JHtifSR7JH1gO2Nhc2VcIioqXCI6cmV0dXJuIGcrZ2xvYnN0YXIodSk7Y2FzZVwiKiovKlwiOnJldHVybmAoPzoke2d9JHtnbG9ic3Rhcih1KX0ke3B9KT8ke2J9JHtsfSR7JH1gO2Nhc2VcIioqLyouKlwiOnJldHVybmAoPzoke2d9JHtnbG9ic3Rhcih1KX0ke3B9KT8ke2J9JHskfSR7aX0ke2x9JHskfWA7Y2FzZVwiKiovLipcIjpyZXR1cm5gKD86JHtnfSR7Z2xvYnN0YXIodSl9JHtwfSk/JHtpfSR7bH0keyR9YDtkZWZhdWx0Ontjb25zdCBlPS9eKC4qPylcXC4oXFx3KykkLy5leGVjKHQpO2lmKCFlKXJldHVybjtjb25zdCB1PWNyZWF0ZShlWzFdKTtpZighdSlyZXR1cm47cmV0dXJuIHUraStlWzJdfX19O2NvbnN0IHg9by5yZW1vdmVQcmVmaXgodCx5KTtsZXQgUz1jcmVhdGUoeCk7aWYoUyYmdS5zdHJpY3RTbGFzaGVzIT09dHJ1ZSl7Uys9YCR7cH0/YH1yZXR1cm4gU307dC5leHBvcnRzPXBhcnNlfSw1MTA6KHQsZSx1KT0+e2NvbnN0IG49dSg3MTYpO2NvbnN0IG89dSg2OTcpO2NvbnN0IHM9dSg5Nik7Y29uc3Qgcj11KDE1NCk7Y29uc3QgaXNPYmplY3Q9dD0+dCYmdHlwZW9mIHQ9PT1cIm9iamVjdFwiJiYhQXJyYXkuaXNBcnJheSh0KTtjb25zdCBwaWNvbWF0Y2g9KHQsZSx1PWZhbHNlKT0+e2lmKEFycmF5LmlzQXJyYXkodCkpe2NvbnN0IG49dC5tYXAoKHQ9PnBpY29tYXRjaCh0LGUsdSkpKTtjb25zdCBhcnJheU1hdGNoZXI9dD0+e2Zvcihjb25zdCBlIG9mIG4pe2NvbnN0IHU9ZSh0KTtpZih1KXJldHVybiB1fXJldHVybiBmYWxzZX07cmV0dXJuIGFycmF5TWF0Y2hlcn1jb25zdCBuPWlzT2JqZWN0KHQpJiZ0LnRva2VucyYmdC5pbnB1dDtpZih0PT09XCJcInx8dHlwZW9mIHQhPT1cInN0cmluZ1wiJiYhbil7dGhyb3cgbmV3IFR5cGVFcnJvcihcIkV4cGVjdGVkIHBhdHRlcm4gdG8gYmUgYSBub24tZW1wdHkgc3RyaW5nXCIpfWNvbnN0IG89ZXx8e307Y29uc3Qgcz1vLndpbmRvd3M7Y29uc3Qgcj1uP3BpY29tYXRjaC5jb21waWxlUmUodCxlKTpwaWNvbWF0Y2gubWFrZVJlKHQsZSxmYWxzZSx0cnVlKTtjb25zdCBhPXIuc3RhdGU7ZGVsZXRlIHIuc3RhdGU7bGV0IGlzSWdub3JlZD0oKT0+ZmFsc2U7aWYoby5pZ25vcmUpe2NvbnN0IHQ9ey4uLmUsaWdub3JlOm51bGwsb25NYXRjaDpudWxsLG9uUmVzdWx0Om51bGx9O2lzSWdub3JlZD1waWNvbWF0Y2goby5pZ25vcmUsdCx1KX1jb25zdCBtYXRjaGVyPSh1LG49ZmFsc2UpPT57Y29uc3R7aXNNYXRjaDppLG1hdGNoOmMsb3V0cHV0OnB9PXBpY29tYXRjaC50ZXN0KHUscixlLHtnbG9iOnQscG9zaXg6c30pO2NvbnN0IGw9e2dsb2I6dCxzdGF0ZTphLHJlZ2V4OnIscG9zaXg6cyxpbnB1dDp1LG91dHB1dDpwLG1hdGNoOmMsaXNNYXRjaDppfTtpZih0eXBlb2Ygby5vblJlc3VsdD09PVwiZnVuY3Rpb25cIil7by5vblJlc3VsdChsKX1pZihpPT09ZmFsc2Upe2wuaXNNYXRjaD1mYWxzZTtyZXR1cm4gbj9sOmZhbHNlfWlmKGlzSWdub3JlZCh1KSl7aWYodHlwZW9mIG8ub25JZ25vcmU9PT1cImZ1bmN0aW9uXCIpe28ub25JZ25vcmUobCl9bC5pc01hdGNoPWZhbHNlO3JldHVybiBuP2w6ZmFsc2V9aWYodHlwZW9mIG8ub25NYXRjaD09PVwiZnVuY3Rpb25cIil7by5vbk1hdGNoKGwpfXJldHVybiBuP2w6dHJ1ZX07aWYodSl7bWF0Y2hlci5zdGF0ZT1hfXJldHVybiBtYXRjaGVyfTtwaWNvbWF0Y2gudGVzdD0odCxlLHUse2dsb2I6bixwb3NpeDpvfT17fSk9PntpZih0eXBlb2YgdCE9PVwic3RyaW5nXCIpe3Rocm93IG5ldyBUeXBlRXJyb3IoXCJFeHBlY3RlZCBpbnB1dCB0byBiZSBhIHN0cmluZ1wiKX1pZih0PT09XCJcIil7cmV0dXJue2lzTWF0Y2g6ZmFsc2Usb3V0cHV0OlwiXCJ9fWNvbnN0IHI9dXx8e307Y29uc3QgYT1yLmZvcm1hdHx8KG8/cy50b1Bvc2l4U2xhc2hlczpudWxsKTtsZXQgaT10PT09bjtsZXQgYz1pJiZhP2EodCk6dDtpZihpPT09ZmFsc2Upe2M9YT9hKHQpOnQ7aT1jPT09bn1pZihpPT09ZmFsc2V8fHIuY2FwdHVyZT09PXRydWUpe2lmKHIubWF0Y2hCYXNlPT09dHJ1ZXx8ci5iYXNlbmFtZT09PXRydWUpe2k9cGljb21hdGNoLm1hdGNoQmFzZSh0LGUsdSxvKX1lbHNle2k9ZS5leGVjKGMpfX1yZXR1cm57aXNNYXRjaDpCb29sZWFuKGkpLG1hdGNoOmksb3V0cHV0OmN9fTtwaWNvbWF0Y2gubWF0Y2hCYXNlPSh0LGUsdSk9Pntjb25zdCBuPWUgaW5zdGFuY2VvZiBSZWdFeHA/ZTpwaWNvbWF0Y2gubWFrZVJlKGUsdSk7cmV0dXJuIG4udGVzdChzLmJhc2VuYW1lKHQpKX07cGljb21hdGNoLmlzTWF0Y2g9KHQsZSx1KT0+cGljb21hdGNoKGUsdSkodCk7cGljb21hdGNoLnBhcnNlPSh0LGUpPT57aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gdC5tYXAoKHQ9PnBpY29tYXRjaC5wYXJzZSh0LGUpKSk7cmV0dXJuIG8odCx7Li4uZSxmYXN0cGF0aHM6ZmFsc2V9KX07cGljb21hdGNoLnNjYW49KHQsZSk9Pm4odCxlKTtwaWNvbWF0Y2guY29tcGlsZVJlPSh0LGUsdT1mYWxzZSxuPWZhbHNlKT0+e2lmKHU9PT10cnVlKXtyZXR1cm4gdC5vdXRwdXR9Y29uc3Qgbz1lfHx7fTtjb25zdCBzPW8uY29udGFpbnM/XCJcIjpcIl5cIjtjb25zdCByPW8uY29udGFpbnM/XCJcIjpcIiRcIjtsZXQgYT1gJHtzfSg/OiR7dC5vdXRwdXR9KSR7cn1gO2lmKHQmJnQubmVnYXRlZD09PXRydWUpe2E9YF4oPyEke2F9KS4qJGB9Y29uc3QgaT1waWNvbWF0Y2gudG9SZWdleChhLGUpO2lmKG49PT10cnVlKXtpLnN0YXRlPXR9cmV0dXJuIGl9O3BpY29tYXRjaC5tYWtlUmU9KHQsZT17fSx1PWZhbHNlLG49ZmFsc2UpPT57aWYoIXR8fHR5cGVvZiB0IT09XCJzdHJpbmdcIil7dGhyb3cgbmV3IFR5cGVFcnJvcihcIkV4cGVjdGVkIGEgbm9uLWVtcHR5IHN0cmluZ1wiKX1sZXQgcz17bmVnYXRlZDpmYWxzZSxmYXN0cGF0aHM6dHJ1ZX07aWYoZS5mYXN0cGF0aHMhPT1mYWxzZSYmKHRbMF09PT1cIi5cInx8dFswXT09PVwiKlwiKSl7cy5vdXRwdXQ9by5mYXN0cGF0aHModCxlKX1pZighcy5vdXRwdXQpe3M9byh0LGUpfXJldHVybiBwaWNvbWF0Y2guY29tcGlsZVJlKHMsZSx1LG4pfTtwaWNvbWF0Y2gudG9SZWdleD0odCxlKT0+e3RyeXtjb25zdCB1PWV8fHt9O3JldHVybiBuZXcgUmVnRXhwKHQsdS5mbGFnc3x8KHUubm9jYXNlP1wiaVwiOlwiXCIpKX1jYXRjaCh0KXtpZihlJiZlLmRlYnVnPT09dHJ1ZSl0aHJvdyB0O3JldHVybi8kXi99fTtwaWNvbWF0Y2guY29uc3RhbnRzPXI7dC5leHBvcnRzPXBpY29tYXRjaH0sNzE2Oih0LGUsdSk9Pntjb25zdCBuPXUoOTYpO2NvbnN0e0NIQVJfQVNURVJJU0s6byxDSEFSX0FUOnMsQ0hBUl9CQUNLV0FSRF9TTEFTSDpyLENIQVJfQ09NTUE6YSxDSEFSX0RPVDppLENIQVJfRVhDTEFNQVRJT05fTUFSSzpjLENIQVJfRk9SV0FSRF9TTEFTSDpwLENIQVJfTEVGVF9DVVJMWV9CUkFDRTpsLENIQVJfTEVGVF9QQVJFTlRIRVNFUzpmLENIQVJfTEVGVF9TUVVBUkVfQlJBQ0tFVDpBLENIQVJfUExVUzpfLENIQVJfUVVFU1RJT05fTUFSSzpSLENIQVJfUklHSFRfQ1VSTFlfQlJBQ0U6RSxDSEFSX1JJR0hUX1BBUkVOVEhFU0VTOmgsQ0hBUl9SSUdIVF9TUVVBUkVfQlJBQ0tFVDpnfT11KDE1NCk7Y29uc3QgaXNQYXRoU2VwYXJhdG9yPXQ9PnQ9PT1wfHx0PT09cjtjb25zdCBkZXB0aD10PT57aWYodC5pc1ByZWZpeCE9PXRydWUpe3QuZGVwdGg9dC5pc0dsb2JzdGFyP0luZmluaXR5OjF9fTtjb25zdCBzY2FuPSh0LGUpPT57Y29uc3QgdT1lfHx7fTtjb25zdCBiPXQubGVuZ3RoLTE7Y29uc3QgQz11LnBhcnRzPT09dHJ1ZXx8dS5zY2FuVG9FbmQ9PT10cnVlO2NvbnN0IHk9W107Y29uc3QgJD1bXTtjb25zdCB4PVtdO2xldCBTPXQ7bGV0IEg9LTE7bGV0IHY9MDtsZXQgZD0wO2xldCBMPWZhbHNlO2xldCBUPWZhbHNlO2xldCBPPWZhbHNlO2xldCBrPWZhbHNlO2xldCBtPWZhbHNlO2xldCB3PWZhbHNlO2xldCBOPWZhbHNlO2xldCBJPWZhbHNlO2xldCBCPWZhbHNlO2xldCBHPWZhbHNlO2xldCBEPTA7bGV0IE07bGV0IFA7bGV0IEs9e3ZhbHVlOlwiXCIsZGVwdGg6MCxpc0dsb2I6ZmFsc2V9O2NvbnN0IGVvcz0oKT0+SD49Yjtjb25zdCBwZWVrPSgpPT5TLmNoYXJDb2RlQXQoSCsxKTtjb25zdCBhZHZhbmNlPSgpPT57TT1QO3JldHVybiBTLmNoYXJDb2RlQXQoKytIKX07d2hpbGUoSDxiKXtQPWFkdmFuY2UoKTtsZXQgdDtpZihQPT09cil7Tj1LLmJhY2tzbGFzaGVzPXRydWU7UD1hZHZhbmNlKCk7aWYoUD09PWwpe3c9dHJ1ZX1jb250aW51ZX1pZih3PT09dHJ1ZXx8UD09PWwpe0QrKzt3aGlsZShlb3MoKSE9PXRydWUmJihQPWFkdmFuY2UoKSkpe2lmKFA9PT1yKXtOPUsuYmFja3NsYXNoZXM9dHJ1ZTthZHZhbmNlKCk7Y29udGludWV9aWYoUD09PWwpe0QrKztjb250aW51ZX1pZih3IT09dHJ1ZSYmUD09PWkmJihQPWFkdmFuY2UoKSk9PT1pKXtMPUsuaXNCcmFjZT10cnVlO089Sy5pc0dsb2I9dHJ1ZTtHPXRydWU7aWYoQz09PXRydWUpe2NvbnRpbnVlfWJyZWFrfWlmKHchPT10cnVlJiZQPT09YSl7TD1LLmlzQnJhY2U9dHJ1ZTtPPUsuaXNHbG9iPXRydWU7Rz10cnVlO2lmKEM9PT10cnVlKXtjb250aW51ZX1icmVha31pZihQPT09RSl7RC0tO2lmKEQ9PT0wKXt3PWZhbHNlO0w9Sy5pc0JyYWNlPXRydWU7Rz10cnVlO2JyZWFrfX19aWYoQz09PXRydWUpe2NvbnRpbnVlfWJyZWFrfWlmKFA9PT1wKXt5LnB1c2goSCk7JC5wdXNoKEspO0s9e3ZhbHVlOlwiXCIsZGVwdGg6MCxpc0dsb2I6ZmFsc2V9O2lmKEc9PT10cnVlKWNvbnRpbnVlO2lmKE09PT1pJiZIPT09disxKXt2Kz0yO2NvbnRpbnVlfWQ9SCsxO2NvbnRpbnVlfWlmKHUubm9leHQhPT10cnVlKXtjb25zdCB0PVA9PT1ffHxQPT09c3x8UD09PW98fFA9PT1SfHxQPT09YztpZih0PT09dHJ1ZSYmcGVlaygpPT09Zil7Tz1LLmlzR2xvYj10cnVlO2s9Sy5pc0V4dGdsb2I9dHJ1ZTtHPXRydWU7aWYoUD09PWMmJkg9PT12KXtCPXRydWV9aWYoQz09PXRydWUpe3doaWxlKGVvcygpIT09dHJ1ZSYmKFA9YWR2YW5jZSgpKSl7aWYoUD09PXIpe049Sy5iYWNrc2xhc2hlcz10cnVlO1A9YWR2YW5jZSgpO2NvbnRpbnVlfWlmKFA9PT1oKXtPPUsuaXNHbG9iPXRydWU7Rz10cnVlO2JyZWFrfX1jb250aW51ZX1icmVha319aWYoUD09PW8pe2lmKE09PT1vKW09Sy5pc0dsb2JzdGFyPXRydWU7Tz1LLmlzR2xvYj10cnVlO0c9dHJ1ZTtpZihDPT09dHJ1ZSl7Y29udGludWV9YnJlYWt9aWYoUD09PVIpe089Sy5pc0dsb2I9dHJ1ZTtHPXRydWU7aWYoQz09PXRydWUpe2NvbnRpbnVlfWJyZWFrfWlmKFA9PT1BKXt3aGlsZShlb3MoKSE9PXRydWUmJih0PWFkdmFuY2UoKSkpe2lmKHQ9PT1yKXtOPUsuYmFja3NsYXNoZXM9dHJ1ZTthZHZhbmNlKCk7Y29udGludWV9aWYodD09PWcpe1Q9Sy5pc0JyYWNrZXQ9dHJ1ZTtPPUsuaXNHbG9iPXRydWU7Rz10cnVlO2JyZWFrfX1pZihDPT09dHJ1ZSl7Y29udGludWV9YnJlYWt9aWYodS5ub25lZ2F0ZSE9PXRydWUmJlA9PT1jJiZIPT09dil7ST1LLm5lZ2F0ZWQ9dHJ1ZTt2Kys7Y29udGludWV9aWYodS5ub3BhcmVuIT09dHJ1ZSYmUD09PWYpe089Sy5pc0dsb2I9dHJ1ZTtpZihDPT09dHJ1ZSl7d2hpbGUoZW9zKCkhPT10cnVlJiYoUD1hZHZhbmNlKCkpKXtpZihQPT09Zil7Tj1LLmJhY2tzbGFzaGVzPXRydWU7UD1hZHZhbmNlKCk7Y29udGludWV9aWYoUD09PWgpe0c9dHJ1ZTticmVha319Y29udGludWV9YnJlYWt9aWYoTz09PXRydWUpe0c9dHJ1ZTtpZihDPT09dHJ1ZSl7Y29udGludWV9YnJlYWt9fWlmKHUubm9leHQ9PT10cnVlKXtrPWZhbHNlO089ZmFsc2V9bGV0IFU9UztsZXQgWD1cIlwiO2xldCBGPVwiXCI7aWYodj4wKXtYPVMuc2xpY2UoMCx2KTtTPVMuc2xpY2Uodik7ZC09dn1pZihVJiZPPT09dHJ1ZSYmZD4wKXtVPVMuc2xpY2UoMCxkKTtGPVMuc2xpY2UoZCl9ZWxzZSBpZihPPT09dHJ1ZSl7VT1cIlwiO0Y9U31lbHNle1U9U31pZihVJiZVIT09XCJcIiYmVSE9PVwiL1wiJiZVIT09Uyl7aWYoaXNQYXRoU2VwYXJhdG9yKFUuY2hhckNvZGVBdChVLmxlbmd0aC0xKSkpe1U9VS5zbGljZSgwLC0xKX19aWYodS51bmVzY2FwZT09PXRydWUpe2lmKEYpRj1uLnJlbW92ZUJhY2tzbGFzaGVzKEYpO2lmKFUmJk49PT10cnVlKXtVPW4ucmVtb3ZlQmFja3NsYXNoZXMoVSl9fWNvbnN0IFE9e3ByZWZpeDpYLGlucHV0OnQsc3RhcnQ6dixiYXNlOlUsZ2xvYjpGLGlzQnJhY2U6TCxpc0JyYWNrZXQ6VCxpc0dsb2I6Tyxpc0V4dGdsb2I6ayxpc0dsb2JzdGFyOm0sbmVnYXRlZDpJLG5lZ2F0ZWRFeHRnbG9iOkJ9O2lmKHUudG9rZW5zPT09dHJ1ZSl7US5tYXhEZXB0aD0wO2lmKCFpc1BhdGhTZXBhcmF0b3IoUCkpeyQucHVzaChLKX1RLnRva2Vucz0kfWlmKHUucGFydHM9PT10cnVlfHx1LnRva2Vucz09PXRydWUpe2xldCBlO2ZvcihsZXQgbj0wO248eS5sZW5ndGg7bisrKXtjb25zdCBvPWU/ZSsxOnY7Y29uc3Qgcz15W25dO2NvbnN0IHI9dC5zbGljZShvLHMpO2lmKHUudG9rZW5zKXtpZihuPT09MCYmdiE9PTApeyRbbl0uaXNQcmVmaXg9dHJ1ZTskW25dLnZhbHVlPVh9ZWxzZXskW25dLnZhbHVlPXJ9ZGVwdGgoJFtuXSk7US5tYXhEZXB0aCs9JFtuXS5kZXB0aH1pZihuIT09MHx8ciE9PVwiXCIpe3gucHVzaChyKX1lPXN9aWYoZSYmZSsxPHQubGVuZ3RoKXtjb25zdCBuPXQuc2xpY2UoZSsxKTt4LnB1c2gobik7aWYodS50b2tlbnMpeyRbJC5sZW5ndGgtMV0udmFsdWU9bjtkZXB0aCgkWyQubGVuZ3RoLTFdKTtRLm1heERlcHRoKz0kWyQubGVuZ3RoLTFdLmRlcHRofX1RLnNsYXNoZXM9eTtRLnBhcnRzPXh9cmV0dXJuIFF9O3QuZXhwb3J0cz1zY2FufSw5NjoodCxlLHUpPT57Y29uc3R7UkVHRVhfQkFDS1NMQVNIOm4sUkVHRVhfUkVNT1ZFX0JBQ0tTTEFTSDpvLFJFR0VYX1NQRUNJQUxfQ0hBUlM6cyxSRUdFWF9TUEVDSUFMX0NIQVJTX0dMT0JBTDpyfT11KDE1NCk7ZS5pc09iamVjdD10PT50IT09bnVsbCYmdHlwZW9mIHQ9PT1cIm9iamVjdFwiJiYhQXJyYXkuaXNBcnJheSh0KTtlLmhhc1JlZ2V4Q2hhcnM9dD0+cy50ZXN0KHQpO2UuaXNSZWdleENoYXI9dD0+dC5sZW5ndGg9PT0xJiZlLmhhc1JlZ2V4Q2hhcnModCk7ZS5lc2NhcGVSZWdleD10PT50LnJlcGxhY2UocixcIlxcXFwkMVwiKTtlLnRvUG9zaXhTbGFzaGVzPXQ9PnQucmVwbGFjZShuLFwiL1wiKTtlLnJlbW92ZUJhY2tzbGFzaGVzPXQ9PnQucmVwbGFjZShvLCh0PT50PT09XCJcXFxcXCI/XCJcIjp0KSk7ZS5lc2NhcGVMYXN0PSh0LHUsbik9Pntjb25zdCBvPXQubGFzdEluZGV4T2YodSxuKTtpZihvPT09LTEpcmV0dXJuIHQ7aWYodFtvLTFdPT09XCJcXFxcXCIpcmV0dXJuIGUuZXNjYXBlTGFzdCh0LHUsby0xKTtyZXR1cm5gJHt0LnNsaWNlKDAsbyl9XFxcXCR7dC5zbGljZShvKX1gfTtlLnJlbW92ZVByZWZpeD0odCxlPXt9KT0+e2xldCB1PXQ7aWYodS5zdGFydHNXaXRoKFwiLi9cIikpe3U9dS5zbGljZSgyKTtlLnByZWZpeD1cIi4vXCJ9cmV0dXJuIHV9O2Uud3JhcE91dHB1dD0odCxlPXt9LHU9e30pPT57Y29uc3Qgbj11LmNvbnRhaW5zP1wiXCI6XCJeXCI7Y29uc3Qgbz11LmNvbnRhaW5zP1wiXCI6XCIkXCI7bGV0IHM9YCR7bn0oPzoke3R9KSR7b31gO2lmKGUubmVnYXRlZD09PXRydWUpe3M9YCg/Ol4oPyEke3N9KS4qJClgfXJldHVybiBzfTtlLmJhc2VuYW1lPSh0LHt3aW5kb3dzOmV9PXt9KT0+e2NvbnN0IHU9dC5zcGxpdChlPy9bXFxcXC9dLzpcIi9cIik7Y29uc3Qgbj11W3UubGVuZ3RoLTFdO2lmKG49PT1cIlwiKXtyZXR1cm4gdVt1Lmxlbmd0aC0yXX1yZXR1cm4gbn19fTt2YXIgZT17fTtmdW5jdGlvbiBfX25jY3dwY2tfcmVxdWlyZV9fKHUpe3ZhciBuPWVbdV07aWYobiE9PXVuZGVmaW5lZCl7cmV0dXJuIG4uZXhwb3J0c312YXIgbz1lW3VdPXtleHBvcnRzOnt9fTt2YXIgcz10cnVlO3RyeXt0W3VdKG8sby5leHBvcnRzLF9fbmNjd3Bja19yZXF1aXJlX18pO3M9ZmFsc2V9ZmluYWxseXtpZihzKWRlbGV0ZSBlW3VdfXJldHVybiBvLmV4cG9ydHN9aWYodHlwZW9mIF9fbmNjd3Bja19yZXF1aXJlX18hPT1cInVuZGVmaW5lZFwiKV9fbmNjd3Bja19yZXF1aXJlX18uYWI9X19kaXJuYW1lK1wiL1wiO3ZhciB1PV9fbmNjd3Bja19yZXF1aXJlX18oMTcwKTttb2R1bGUuZXhwb3J0cz11fSkoKTsiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/compiled/picomatch/index.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/compiled/process/browser.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/next/dist/compiled/process/browser.js ***!
|
||
\************************************************************/
|
||
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
||
|
||
eval(__webpack_require__.ts("var __dirname = \"/\";\n(function(){var e={229:function(e){var t=e.exports={};var r;var n;function defaultSetTimout(){throw new Error(\"setTimeout has not been defined\")}function defaultClearTimeout(){throw new Error(\"clearTimeout has not been defined\")}(function(){try{if(typeof setTimeout===\"function\"){r=setTimeout}else{r=defaultSetTimout}}catch(e){r=defaultSetTimout}try{if(typeof clearTimeout===\"function\"){n=clearTimeout}else{n=defaultClearTimeout}}catch(e){n=defaultClearTimeout}})();function runTimeout(e){if(r===setTimeout){return setTimeout(e,0)}if((r===defaultSetTimout||!r)&&setTimeout){r=setTimeout;return setTimeout(e,0)}try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}function runClearTimeout(e){if(n===clearTimeout){return clearTimeout(e)}if((n===defaultClearTimeout||!n)&&clearTimeout){n=clearTimeout;return clearTimeout(e)}try{return n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}var i=[];var o=false;var u;var a=-1;function cleanUpNextTick(){if(!o||!u){return}o=false;if(u.length){i=u.concat(i)}else{a=-1}if(i.length){drainQueue()}}function drainQueue(){if(o){return}var e=runTimeout(cleanUpNextTick);o=true;var t=i.length;while(t){u=i;i=[];while(++a<t){if(u){u[a].run()}}a=-1;t=i.length}u=null;o=false;runClearTimeout(e)}t.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1){for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}}i.push(new Item(e,t));if(i.length===1&&!o){runTimeout(drainQueue)}};function Item(e,t){this.fun=e;this.array=t}Item.prototype.run=function(){this.fun.apply(null,this.array)};t.title=\"browser\";t.browser=true;t.env={};t.argv=[];t.version=\"\";t.versions={};function noop(){}t.on=noop;t.addListener=noop;t.once=noop;t.off=noop;t.removeListener=noop;t.removeAllListeners=noop;t.emit=noop;t.prependListener=noop;t.prependOnceListener=noop;t.listeners=function(e){return[]};t.binding=function(e){throw new Error(\"process.binding is not supported\")};t.cwd=function(){return\"/\"};t.chdir=function(e){throw new Error(\"process.chdir is not supported\")};t.umask=function(){return 0}}};var t={};function __nccwpck_require__(r){var n=t[r];if(n!==undefined){return n.exports}var i=t[r]={exports:{}};var o=true;try{e[r](i,i.exports,__nccwpck_require__);o=false}finally{if(o)delete t[r]}return i.exports}if(typeof __nccwpck_require__!==\"undefined\")__nccwpck_require__.ab=__dirname+\"/\";var r=__nccwpck_require__(229);module.exports=r})();//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcHJvY2Vzcy9icm93c2VyLmpzIiwibWFwcGluZ3MiOiI7QUFBQSxZQUFZLE9BQU8sZ0JBQWdCLG1CQUFtQixNQUFNLE1BQU0sNEJBQTRCLG1EQUFtRCwrQkFBK0IscURBQXFELFlBQVksSUFBSSxtQ0FBbUMsYUFBYSxLQUFLLG9CQUFvQixTQUFTLG1CQUFtQixJQUFJLHFDQUFxQyxlQUFlLEtBQUssdUJBQXVCLFNBQVMsdUJBQXVCLElBQUksdUJBQXVCLG1CQUFtQix1QkFBdUIsMkNBQTJDLGFBQWEsdUJBQXVCLElBQUksY0FBYyxTQUFTLElBQUksd0JBQXdCLFNBQVMsMEJBQTBCLDRCQUE0QixxQkFBcUIsdUJBQXVCLGdEQUFnRCxlQUFlLHVCQUF1QixJQUFJLFlBQVksU0FBUyxJQUFJLHNCQUFzQixTQUFTLHdCQUF3QixTQUFTLFlBQVksTUFBTSxTQUFTLDJCQUEyQixXQUFXLE9BQU8sUUFBUSxhQUFhLGNBQWMsS0FBSyxLQUFLLGFBQWEsY0FBYyxzQkFBc0IsTUFBTSxPQUFPLGtDQUFrQyxPQUFPLGVBQWUsU0FBUyxJQUFJLEtBQUssYUFBYSxNQUFNLFlBQVksS0FBSyxXQUFXLE9BQU8sUUFBUSxtQkFBbUIsdUJBQXVCLG9DQUFvQyx1QkFBdUIsWUFBWSxtQkFBbUIsS0FBSyxxQkFBcUIsc0JBQXNCLHFCQUFxQix5QkFBeUIsbUJBQW1CLFdBQVcsYUFBYSw4QkFBOEIsaUNBQWlDLGtCQUFrQixlQUFlLFNBQVMsVUFBVSxhQUFhLGNBQWMsaUJBQWlCLFVBQVUsbUJBQW1CLFlBQVksV0FBVyxzQkFBc0IsMEJBQTBCLFlBQVksdUJBQXVCLDJCQUEyQix3QkFBd0IsVUFBVSxzQkFBc0IscURBQXFELGlCQUFpQixXQUFXLG9CQUFvQixtREFBbUQsbUJBQW1CLFlBQVksU0FBUyxnQ0FBZ0MsV0FBVyxrQkFBa0IsaUJBQWlCLFlBQVksWUFBWSxXQUFXLElBQUksc0NBQXNDLFFBQVEsUUFBUSxpQkFBaUIsaUJBQWlCLG1FQUFtRSxTQUFTLEtBQUssK0JBQStCLGlCQUFpQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvbmV4dC9kaXN0L2NvbXBpbGVkL3Byb2Nlc3MvYnJvd3Nlci5qcz85MmNjIl0sInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbigpe3ZhciBlPXsyMjk6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5leHBvcnRzPXt9O3ZhciByO3ZhciBuO2Z1bmN0aW9uIGRlZmF1bHRTZXRUaW1vdXQoKXt0aHJvdyBuZXcgRXJyb3IoXCJzZXRUaW1lb3V0IGhhcyBub3QgYmVlbiBkZWZpbmVkXCIpfWZ1bmN0aW9uIGRlZmF1bHRDbGVhclRpbWVvdXQoKXt0aHJvdyBuZXcgRXJyb3IoXCJjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWRcIil9KGZ1bmN0aW9uKCl7dHJ5e2lmKHR5cGVvZiBzZXRUaW1lb3V0PT09XCJmdW5jdGlvblwiKXtyPXNldFRpbWVvdXR9ZWxzZXtyPWRlZmF1bHRTZXRUaW1vdXR9fWNhdGNoKGUpe3I9ZGVmYXVsdFNldFRpbW91dH10cnl7aWYodHlwZW9mIGNsZWFyVGltZW91dD09PVwiZnVuY3Rpb25cIil7bj1jbGVhclRpbWVvdXR9ZWxzZXtuPWRlZmF1bHRDbGVhclRpbWVvdXR9fWNhdGNoKGUpe249ZGVmYXVsdENsZWFyVGltZW91dH19KSgpO2Z1bmN0aW9uIHJ1blRpbWVvdXQoZSl7aWYocj09PXNldFRpbWVvdXQpe3JldHVybiBzZXRUaW1lb3V0KGUsMCl9aWYoKHI9PT1kZWZhdWx0U2V0VGltb3V0fHwhcikmJnNldFRpbWVvdXQpe3I9c2V0VGltZW91dDtyZXR1cm4gc2V0VGltZW91dChlLDApfXRyeXtyZXR1cm4gcihlLDApfWNhdGNoKHQpe3RyeXtyZXR1cm4gci5jYWxsKG51bGwsZSwwKX1jYXRjaCh0KXtyZXR1cm4gci5jYWxsKHRoaXMsZSwwKX19fWZ1bmN0aW9uIHJ1bkNsZWFyVGltZW91dChlKXtpZihuPT09Y2xlYXJUaW1lb3V0KXtyZXR1cm4gY2xlYXJUaW1lb3V0KGUpfWlmKChuPT09ZGVmYXVsdENsZWFyVGltZW91dHx8IW4pJiZjbGVhclRpbWVvdXQpe249Y2xlYXJUaW1lb3V0O3JldHVybiBjbGVhclRpbWVvdXQoZSl9dHJ5e3JldHVybiBuKGUpfWNhdGNoKHQpe3RyeXtyZXR1cm4gbi5jYWxsKG51bGwsZSl9Y2F0Y2godCl7cmV0dXJuIG4uY2FsbCh0aGlzLGUpfX19dmFyIGk9W107dmFyIG89ZmFsc2U7dmFyIHU7dmFyIGE9LTE7ZnVuY3Rpb24gY2xlYW5VcE5leHRUaWNrKCl7aWYoIW98fCF1KXtyZXR1cm59bz1mYWxzZTtpZih1Lmxlbmd0aCl7aT11LmNvbmNhdChpKX1lbHNle2E9LTF9aWYoaS5sZW5ndGgpe2RyYWluUXVldWUoKX19ZnVuY3Rpb24gZHJhaW5RdWV1ZSgpe2lmKG8pe3JldHVybn12YXIgZT1ydW5UaW1lb3V0KGNsZWFuVXBOZXh0VGljayk7bz10cnVlO3ZhciB0PWkubGVuZ3RoO3doaWxlKHQpe3U9aTtpPVtdO3doaWxlKCsrYTx0KXtpZih1KXt1W2FdLnJ1bigpfX1hPS0xO3Q9aS5sZW5ndGh9dT1udWxsO289ZmFsc2U7cnVuQ2xlYXJUaW1lb3V0KGUpfXQubmV4dFRpY2s9ZnVuY3Rpb24oZSl7dmFyIHQ9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7aWYoYXJndW1lbnRzLmxlbmd0aD4xKXtmb3IodmFyIHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt0W3ItMV09YXJndW1lbnRzW3JdfX1pLnB1c2gobmV3IEl0ZW0oZSx0KSk7aWYoaS5sZW5ndGg9PT0xJiYhbyl7cnVuVGltZW91dChkcmFpblF1ZXVlKX19O2Z1bmN0aW9uIEl0ZW0oZSx0KXt0aGlzLmZ1bj1lO3RoaXMuYXJyYXk9dH1JdGVtLnByb3RvdHlwZS5ydW49ZnVuY3Rpb24oKXt0aGlzLmZ1bi5hcHBseShudWxsLHRoaXMuYXJyYXkpfTt0LnRpdGxlPVwiYnJvd3NlclwiO3QuYnJvd3Nlcj10cnVlO3QuZW52PXt9O3QuYXJndj1bXTt0LnZlcnNpb249XCJcIjt0LnZlcnNpb25zPXt9O2Z1bmN0aW9uIG5vb3AoKXt9dC5vbj1ub29wO3QuYWRkTGlzdGVuZXI9bm9vcDt0Lm9uY2U9bm9vcDt0Lm9mZj1ub29wO3QucmVtb3ZlTGlzdGVuZXI9bm9vcDt0LnJlbW92ZUFsbExpc3RlbmVycz1ub29wO3QuZW1pdD1ub29wO3QucHJlcGVuZExpc3RlbmVyPW5vb3A7dC5wcmVwZW5kT25jZUxpc3RlbmVyPW5vb3A7dC5saXN0ZW5lcnM9ZnVuY3Rpb24oZSl7cmV0dXJuW119O3QuYmluZGluZz1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoXCJwcm9jZXNzLmJpbmRpbmcgaXMgbm90IHN1cHBvcnRlZFwiKX07dC5jd2Q9ZnVuY3Rpb24oKXtyZXR1cm5cIi9cIn07dC5jaGRpcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoXCJwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWRcIil9O3QudW1hc2s9ZnVuY3Rpb24oKXtyZXR1cm4gMH19fTt2YXIgdD17fTtmdW5jdGlvbiBfX25jY3dwY2tfcmVxdWlyZV9fKHIpe3ZhciBuPXRbcl07aWYobiE9PXVuZGVmaW5lZCl7cmV0dXJuIG4uZXhwb3J0c312YXIgaT10W3JdPXtleHBvcnRzOnt9fTt2YXIgbz10cnVlO3RyeXtlW3JdKGksaS5leHBvcnRzLF9fbmNjd3Bja19yZXF1aXJlX18pO289ZmFsc2V9ZmluYWxseXtpZihvKWRlbGV0ZSB0W3JdfXJldHVybiBpLmV4cG9ydHN9aWYodHlwZW9mIF9fbmNjd3Bja19yZXF1aXJlX18hPT1cInVuZGVmaW5lZFwiKV9fbmNjd3Bja19yZXF1aXJlX18uYWI9X19kaXJuYW1lK1wiL1wiO3ZhciByPV9fbmNjd3Bja19yZXF1aXJlX18oMjI5KTttb2R1bGUuZXhwb3J0cz1yfSkoKTsiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/compiled/process/browser.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/tabbable/dist/index.esm.js":
|
||
/*!*************************************************!*\
|
||
!*** ./node_modules/tabbable/dist/index.esm.js ***!
|
||
\*************************************************/
|
||
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ focusable: function() { return /* binding */ focusable; },\n/* harmony export */ getTabIndex: function() { return /* binding */ getTabIndex; },\n/* harmony export */ isFocusable: function() { return /* binding */ isFocusable; },\n/* harmony export */ isTabbable: function() { return /* binding */ isTabbable; },\n/* harmony export */ tabbable: function() { return /* binding */ tabbable; }\n/* harmony export */ });\n/*!\n* tabbable 6.2.0\n* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE\n*/\n// NOTE: separate `:not()` selectors has broader browser support than the newer\n// `:not([inert], [inert] *)` (Feb 2023)\n// CAREFUL: JSDom does not support `:not([inert] *)` as a selector; using it causes\n// the entire query to fail, resulting in no nodes found, which will break a lot\n// of things... so we have to rely on JS to identify nodes inside an inert container\nvar candidateSelectors = ['input:not([inert])', 'select:not([inert])', 'textarea:not([inert])', 'a[href]:not([inert])', 'button:not([inert])', '[tabindex]:not(slot):not([inert])', 'audio[controls]:not([inert])', 'video[controls]:not([inert])', '[contenteditable]:not([contenteditable=\"false\"]):not([inert])', 'details>summary:first-of-type:not([inert])', 'details:not([inert])'];\nvar candidateSelector = /* #__PURE__ */candidateSelectors.join(',');\nvar NoElement = typeof Element === 'undefined';\nvar matches = NoElement ? function () {} : Element.prototype.matches || Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\nvar getRootNode = !NoElement && Element.prototype.getRootNode ? function (element) {\n var _element$getRootNode;\n return element === null || element === void 0 ? void 0 : (_element$getRootNode = element.getRootNode) === null || _element$getRootNode === void 0 ? void 0 : _element$getRootNode.call(element);\n} : function (element) {\n return element === null || element === void 0 ? void 0 : element.ownerDocument;\n};\n\n/**\n * Determines if a node is inert or in an inert ancestor.\n * @param {Element} [node]\n * @param {boolean} [lookUp] If true and `node` is not inert, looks up at ancestors to\n * see if any of them are inert. If false, only `node` itself is considered.\n * @returns {boolean} True if inert itself or by way of being in an inert ancestor.\n * False if `node` is falsy.\n */\nvar isInert = function isInert(node, lookUp) {\n var _node$getAttribute;\n if (lookUp === void 0) {\n lookUp = true;\n }\n // CAREFUL: JSDom does not support inert at all, so we can't use the `HTMLElement.inert`\n // JS API property; we have to check the attribute, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's an active element\n var inertAtt = node === null || node === void 0 ? void 0 : (_node$getAttribute = node.getAttribute) === null || _node$getAttribute === void 0 ? void 0 : _node$getAttribute.call(node, 'inert');\n var inert = inertAtt === '' || inertAtt === 'true';\n\n // NOTE: this could also be handled with `node.matches('[inert], :is([inert] *)')`\n // if it weren't for `matches()` not being a function on shadow roots; the following\n // code works for any kind of node\n // CAREFUL: JSDom does not appear to support certain selectors like `:not([inert] *)`\n // so it likely would not support `:is([inert] *)` either...\n var result = inert || lookUp && node && isInert(node.parentNode); // recursive\n\n return result;\n};\n\n/**\n * Determines if a node's content is editable.\n * @param {Element} [node]\n * @returns True if it's content-editable; false if it's not or `node` is falsy.\n */\nvar isContentEditable = function isContentEditable(node) {\n var _node$getAttribute2;\n // CAREFUL: JSDom does not support the `HTMLElement.isContentEditable` API so we have\n // to use the attribute directly to check for this, which can either be empty or 'true';\n // if it's `null` (not specified) or 'false', it's a non-editable element\n var attValue = node === null || node === void 0 ? void 0 : (_node$getAttribute2 = node.getAttribute) === null || _node$getAttribute2 === void 0 ? void 0 : _node$getAttribute2.call(node, 'contenteditable');\n return attValue === '' || attValue === 'true';\n};\n\n/**\n * @param {Element} el container to check in\n * @param {boolean} includeContainer add container to check\n * @param {(node: Element) => boolean} filter filter candidates\n * @returns {Element[]}\n */\nvar getCandidates = function getCandidates(el, includeContainer, filter) {\n // even if `includeContainer=false`, we still have to check it for inertness because\n // if it's inert, all its children are inert\n if (isInert(el)) {\n return [];\n }\n var candidates = Array.prototype.slice.apply(el.querySelectorAll(candidateSelector));\n if (includeContainer && matches.call(el, candidateSelector)) {\n candidates.unshift(el);\n }\n candidates = candidates.filter(filter);\n return candidates;\n};\n\n/**\n * @callback GetShadowRoot\n * @param {Element} element to check for shadow root\n * @returns {ShadowRoot|boolean} ShadowRoot if available or boolean indicating if a shadowRoot is attached but not available.\n */\n\n/**\n * @callback ShadowRootFilter\n * @param {Element} shadowHostNode the element which contains shadow content\n * @returns {boolean} true if a shadow root could potentially contain valid candidates.\n */\n\n/**\n * @typedef {Object} CandidateScope\n * @property {Element} scopeParent contains inner candidates\n * @property {Element[]} candidates list of candidates found in the scope parent\n */\n\n/**\n * @typedef {Object} IterativeOptions\n * @property {GetShadowRoot|boolean} getShadowRoot true if shadow support is enabled; falsy if not;\n * if a function, implies shadow support is enabled and either returns the shadow root of an element\n * or a boolean stating if it has an undisclosed shadow root\n * @property {(node: Element) => boolean} filter filter candidates\n * @property {boolean} flatten if true then result will flatten any CandidateScope into the returned list\n * @property {ShadowRootFilter} shadowRootFilter filter shadow roots;\n */\n\n/**\n * @param {Element[]} elements list of element containers to match candidates from\n * @param {boolean} includeContainer add container list to check\n * @param {IterativeOptions} options\n * @returns {Array.<Element|CandidateScope>}\n */\nvar getCandidatesIteratively = function getCandidatesIteratively(elements, includeContainer, options) {\n var candidates = [];\n var elementsToCheck = Array.from(elements);\n while (elementsToCheck.length) {\n var element = elementsToCheck.shift();\n if (isInert(element, false)) {\n // no need to look up since we're drilling down\n // anything inside this container will also be inert\n continue;\n }\n if (element.tagName === 'SLOT') {\n // add shadow dom slot scope (slot itself cannot be focusable)\n var assigned = element.assignedElements();\n var content = assigned.length ? assigned : element.children;\n var nestedCandidates = getCandidatesIteratively(content, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: nestedCandidates\n });\n }\n } else {\n // check candidate element\n var validCandidate = matches.call(element, candidateSelector);\n if (validCandidate && options.filter(element) && (includeContainer || !elements.includes(element))) {\n candidates.push(element);\n }\n\n // iterate over shadow content if possible\n var shadowRoot = element.shadowRoot ||\n // check for an undisclosed shadow\n typeof options.getShadowRoot === 'function' && options.getShadowRoot(element);\n\n // no inert look up because we're already drilling down and checking for inertness\n // on the way down, so all containers to this root node should have already been\n // vetted as non-inert\n var validShadowRoot = !isInert(shadowRoot, false) && (!options.shadowRootFilter || options.shadowRootFilter(element));\n if (shadowRoot && validShadowRoot) {\n // add shadow dom scope IIF a shadow root node was given; otherwise, an undisclosed\n // shadow exists, so look at light dom children as fallback BUT create a scope for any\n // child candidates found because they're likely slotted elements (elements that are\n // children of the web component element (which has the shadow), in the light dom, but\n // slotted somewhere _inside_ the undisclosed shadow) -- the scope is created below,\n // _after_ we return from this recursive call\n var _nestedCandidates = getCandidatesIteratively(shadowRoot === true ? element.children : shadowRoot.children, true, options);\n if (options.flatten) {\n candidates.push.apply(candidates, _nestedCandidates);\n } else {\n candidates.push({\n scopeParent: element,\n candidates: _nestedCandidates\n });\n }\n } else {\n // there's not shadow so just dig into the element's (light dom) children\n // __without__ giving the element special scope treatment\n elementsToCheck.unshift.apply(elementsToCheck, element.children);\n }\n }\n }\n return candidates;\n};\n\n/**\n * @private\n * Determines if the node has an explicitly specified `tabindex` attribute.\n * @param {HTMLElement} node\n * @returns {boolean} True if so; false if not.\n */\nvar hasTabIndex = function hasTabIndex(node) {\n return !isNaN(parseInt(node.getAttribute('tabindex'), 10));\n};\n\n/**\n * Determine the tab index of a given node.\n * @param {HTMLElement} node\n * @returns {number} Tab order (negative, 0, or positive number).\n * @throws {Error} If `node` is falsy.\n */\nvar getTabIndex = function getTabIndex(node) {\n if (!node) {\n throw new Error('No node provided');\n }\n if (node.tabIndex < 0) {\n // in Chrome, <details/>, <audio controls/> and <video controls/> elements get a default\n // `tabIndex` of -1 when the 'tabindex' attribute isn't specified in the DOM,\n // yet they are still part of the regular tab order; in FF, they get a default\n // `tabIndex` of 0; since Chrome still puts those elements in the regular tab\n // order, consider their tab index to be 0.\n // Also browsers do not return `tabIndex` correctly for contentEditable nodes;\n // so if they don't have a tabindex attribute specifically set, assume it's 0.\n if ((/^(AUDIO|VIDEO|DETAILS)$/.test(node.tagName) || isContentEditable(node)) && !hasTabIndex(node)) {\n return 0;\n }\n }\n return node.tabIndex;\n};\n\n/**\n * Determine the tab index of a given node __for sort order purposes__.\n * @param {HTMLElement} node\n * @param {boolean} [isScope] True for a custom element with shadow root or slot that, by default,\n * has tabIndex -1, but needs to be sorted by document order in order for its content to be\n * inserted into the correct sort position.\n * @returns {number} Tab order (negative, 0, or positive number).\n */\nvar getSortOrderTabIndex = function getSortOrderTabIndex(node, isScope) {\n var tabIndex = getTabIndex(node);\n if (tabIndex < 0 && isScope && !hasTabIndex(node)) {\n return 0;\n }\n return tabIndex;\n};\nvar sortOrderedTabbables = function sortOrderedTabbables(a, b) {\n return a.tabIndex === b.tabIndex ? a.documentOrder - b.documentOrder : a.tabIndex - b.tabIndex;\n};\nvar isInput = function isInput(node) {\n return node.tagName === 'INPUT';\n};\nvar isHiddenInput = function isHiddenInput(node) {\n return isInput(node) && node.type === 'hidden';\n};\nvar isDetailsWithSummary = function isDetailsWithSummary(node) {\n var r = node.tagName === 'DETAILS' && Array.prototype.slice.apply(node.children).some(function (child) {\n return child.tagName === 'SUMMARY';\n });\n return r;\n};\nvar getCheckedRadio = function getCheckedRadio(nodes, form) {\n for (var i = 0; i < nodes.length; i++) {\n if (nodes[i].checked && nodes[i].form === form) {\n return nodes[i];\n }\n }\n};\nvar isTabbableRadio = function isTabbableRadio(node) {\n if (!node.name) {\n return true;\n }\n var radioScope = node.form || getRootNode(node);\n var queryRadios = function queryRadios(name) {\n return radioScope.querySelectorAll('input[type=\"radio\"][name=\"' + name + '\"]');\n };\n var radioSet;\n if (typeof window !== 'undefined' && typeof window.CSS !== 'undefined' && typeof window.CSS.escape === 'function') {\n radioSet = queryRadios(window.CSS.escape(node.name));\n } else {\n try {\n radioSet = queryRadios(node.name);\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s', err.message);\n return false;\n }\n }\n var checked = getCheckedRadio(radioSet, node.form);\n return !checked || checked === node;\n};\nvar isRadio = function isRadio(node) {\n return isInput(node) && node.type === 'radio';\n};\nvar isNonTabbableRadio = function isNonTabbableRadio(node) {\n return isRadio(node) && !isTabbableRadio(node);\n};\n\n// determines if a node is ultimately attached to the window's document\nvar isNodeAttached = function isNodeAttached(node) {\n var _nodeRoot;\n // The root node is the shadow root if the node is in a shadow DOM; some document otherwise\n // (but NOT _the_ document; see second 'If' comment below for more).\n // If rootNode is shadow root, it'll have a host, which is the element to which the shadow\n // is attached, and the one we need to check if it's in the document or not (because the\n // shadow, and all nodes it contains, is never considered in the document since shadows\n // behave like self-contained DOMs; but if the shadow's HOST, which is part of the document,\n // is hidden, or is not in the document itself but is detached, it will affect the shadow's\n // visibility, including all the nodes it contains). The host could be any normal node,\n // or a custom element (i.e. web component). Either way, that's the one that is considered\n // part of the document, not the shadow root, nor any of its children (i.e. the node being\n // tested).\n // To further complicate things, we have to look all the way up until we find a shadow HOST\n // that is attached (or find none) because the node might be in nested shadows...\n // If rootNode is not a shadow root, it won't have a host, and so rootNode should be the\n // document (per the docs) and while it's a Document-type object, that document does not\n // appear to be the same as the node's `ownerDocument` for some reason, so it's safer\n // to ignore the rootNode at this point, and use `node.ownerDocument`. Otherwise,\n // using `rootNode.contains(node)` will _always_ be true we'll get false-positives when\n // node is actually detached.\n // NOTE: If `nodeRootHost` or `node` happens to be the `document` itself (which is possible\n // if a tabbable/focusable node was quickly added to the DOM, focused, and then removed\n // from the DOM as in https://github.com/focus-trap/focus-trap-react/issues/905), then\n // `ownerDocument` will be `null`, hence the optional chaining on it.\n var nodeRoot = node && getRootNode(node);\n var nodeRootHost = (_nodeRoot = nodeRoot) === null || _nodeRoot === void 0 ? void 0 : _nodeRoot.host;\n\n // in some cases, a detached node will return itself as the root instead of a document or\n // shadow root object, in which case, we shouldn't try to look further up the host chain\n var attached = false;\n if (nodeRoot && nodeRoot !== node) {\n var _nodeRootHost, _nodeRootHost$ownerDo, _node$ownerDocument;\n attached = !!((_nodeRootHost = nodeRootHost) !== null && _nodeRootHost !== void 0 && (_nodeRootHost$ownerDo = _nodeRootHost.ownerDocument) !== null && _nodeRootHost$ownerDo !== void 0 && _nodeRootHost$ownerDo.contains(nodeRootHost) || node !== null && node !== void 0 && (_node$ownerDocument = node.ownerDocument) !== null && _node$ownerDocument !== void 0 && _node$ownerDocument.contains(node));\n while (!attached && nodeRootHost) {\n var _nodeRoot2, _nodeRootHost2, _nodeRootHost2$ownerD;\n // since it's not attached and we have a root host, the node MUST be in a nested shadow DOM,\n // which means we need to get the host's host and check if that parent host is contained\n // in (i.e. attached to) the document\n nodeRoot = getRootNode(nodeRootHost);\n nodeRootHost = (_nodeRoot2 = nodeRoot) === null || _nodeRoot2 === void 0 ? void 0 : _nodeRoot2.host;\n attached = !!((_nodeRootHost2 = nodeRootHost) !== null && _nodeRootHost2 !== void 0 && (_nodeRootHost2$ownerD = _nodeRootHost2.ownerDocument) !== null && _nodeRootHost2$ownerD !== void 0 && _nodeRootHost2$ownerD.contains(nodeRootHost));\n }\n }\n return attached;\n};\nvar isZeroArea = function isZeroArea(node) {\n var _node$getBoundingClie = node.getBoundingClientRect(),\n width = _node$getBoundingClie.width,\n height = _node$getBoundingClie.height;\n return width === 0 && height === 0;\n};\nvar isHidden = function isHidden(node, _ref) {\n var displayCheck = _ref.displayCheck,\n getShadowRoot = _ref.getShadowRoot;\n // NOTE: visibility will be `undefined` if node is detached from the document\n // (see notes about this further down), which means we will consider it visible\n // (this is legacy behavior from a very long way back)\n // NOTE: we check this regardless of `displayCheck=\"none\"` because this is a\n // _visibility_ check, not a _display_ check\n if (getComputedStyle(node).visibility === 'hidden') {\n return true;\n }\n var isDirectSummary = matches.call(node, 'details>summary:first-of-type');\n var nodeUnderDetails = isDirectSummary ? node.parentElement : node;\n if (matches.call(nodeUnderDetails, 'details:not([open]) *')) {\n return true;\n }\n if (!displayCheck || displayCheck === 'full' || displayCheck === 'legacy-full') {\n if (typeof getShadowRoot === 'function') {\n // figure out if we should consider the node to be in an undisclosed shadow and use the\n // 'non-zero-area' fallback\n var originalNode = node;\n while (node) {\n var parentElement = node.parentElement;\n var rootNode = getRootNode(node);\n if (parentElement && !parentElement.shadowRoot && getShadowRoot(parentElement) === true // check if there's an undisclosed shadow\n ) {\n // node has an undisclosed shadow which means we can only treat it as a black box, so we\n // fall back to a non-zero-area test\n return isZeroArea(node);\n } else if (node.assignedSlot) {\n // iterate up slot\n node = node.assignedSlot;\n } else if (!parentElement && rootNode !== node.ownerDocument) {\n // cross shadow boundary\n node = rootNode.host;\n } else {\n // iterate up normal dom\n node = parentElement;\n }\n }\n node = originalNode;\n }\n // else, `getShadowRoot` might be true, but all that does is enable shadow DOM support\n // (i.e. it does not also presume that all nodes might have undisclosed shadows); or\n // it might be a falsy value, which means shadow DOM support is disabled\n\n // Since we didn't find it sitting in an undisclosed shadow (or shadows are disabled)\n // now we can just test to see if it would normally be visible or not, provided it's\n // attached to the main document.\n // NOTE: We must consider case where node is inside a shadow DOM and given directly to\n // `isTabbable()` or `isFocusable()` -- regardless of `getShadowRoot` option setting.\n\n if (isNodeAttached(node)) {\n // this works wherever the node is: if there's at least one client rect, it's\n // somehow displayed; it also covers the CSS 'display: contents' case where the\n // node itself is hidden in place of its contents; and there's no need to search\n // up the hierarchy either\n return !node.getClientRects().length;\n }\n\n // Else, the node isn't attached to the document, which means the `getClientRects()`\n // API will __always__ return zero rects (this can happen, for example, if React\n // is used to render nodes onto a detached tree, as confirmed in this thread:\n // https://github.com/facebook/react/issues/9117#issuecomment-284228870)\n //\n // It also means that even window.getComputedStyle(node).display will return `undefined`\n // because styles are only computed for nodes that are in the document.\n //\n // NOTE: THIS HAS BEEN THE CASE FOR YEARS. It is not new, nor is it caused by tabbable\n // somehow. Though it was never stated officially, anyone who has ever used tabbable\n // APIs on nodes in detached containers has actually implicitly used tabbable in what\n // was later (as of v5.2.0 on Apr 9, 2021) called `displayCheck=\"none\"` mode -- essentially\n // considering __everything__ to be visible because of the innability to determine styles.\n //\n // v6.0.0: As of this major release, the default 'full' option __no longer treats detached\n // nodes as visible with the 'none' fallback.__\n if (displayCheck !== 'legacy-full') {\n return true; // hidden\n }\n // else, fallback to 'none' mode and consider the node visible\n } else if (displayCheck === 'non-zero-area') {\n // NOTE: Even though this tests that the node's client rect is non-zero to determine\n // whether it's displayed, and that a detached node will __always__ have a zero-area\n // client rect, we don't special-case for whether the node is attached or not. In\n // this mode, we do want to consider nodes that have a zero area to be hidden at all\n // times, and that includes attached or not.\n return isZeroArea(node);\n }\n\n // visible, as far as we can tell, or per current `displayCheck=none` mode, we assume\n // it's visible\n return false;\n};\n\n// form fields (nested) inside a disabled fieldset are not focusable/tabbable\n// unless they are in the _first_ <legend> element of the top-most disabled\n// fieldset\nvar isDisabledFromFieldset = function isDisabledFromFieldset(node) {\n if (/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(node.tagName)) {\n var parentNode = node.parentElement;\n // check if `node` is contained in a disabled <fieldset>\n while (parentNode) {\n if (parentNode.tagName === 'FIELDSET' && parentNode.disabled) {\n // look for the first <legend> among the children of the disabled <fieldset>\n for (var i = 0; i < parentNode.children.length; i++) {\n var child = parentNode.children.item(i);\n // when the first <legend> (in document order) is found\n if (child.tagName === 'LEGEND') {\n // if its parent <fieldset> is not nested in another disabled <fieldset>,\n // return whether `node` is a descendant of its first <legend>\n return matches.call(parentNode, 'fieldset[disabled] *') ? true : !child.contains(node);\n }\n }\n // the disabled <fieldset> containing `node` has no <legend>\n return true;\n }\n parentNode = parentNode.parentElement;\n }\n }\n\n // else, node's tabbable/focusable state should not be affected by a fieldset's\n // enabled/disabled state\n return false;\n};\nvar isNodeMatchingSelectorFocusable = function isNodeMatchingSelectorFocusable(options, node) {\n if (node.disabled ||\n // we must do an inert look up to filter out any elements inside an inert ancestor\n // because we're limited in the type of selectors we can use in JSDom (see related\n // note related to `candidateSelectors`)\n isInert(node) || isHiddenInput(node) || isHidden(node, options) ||\n // For a details element with a summary, the summary element gets the focus\n isDetailsWithSummary(node) || isDisabledFromFieldset(node)) {\n return false;\n }\n return true;\n};\nvar isNodeMatchingSelectorTabbable = function isNodeMatchingSelectorTabbable(options, node) {\n if (isNonTabbableRadio(node) || getTabIndex(node) < 0 || !isNodeMatchingSelectorFocusable(options, node)) {\n return false;\n }\n return true;\n};\nvar isValidShadowRootTabbable = function isValidShadowRootTabbable(shadowHostNode) {\n var tabIndex = parseInt(shadowHostNode.getAttribute('tabindex'), 10);\n if (isNaN(tabIndex) || tabIndex >= 0) {\n return true;\n }\n // If a custom element has an explicit negative tabindex,\n // browsers will not allow tab targeting said element's children.\n return false;\n};\n\n/**\n * @param {Array.<Element|CandidateScope>} candidates\n * @returns Element[]\n */\nvar sortByOrder = function sortByOrder(candidates) {\n var regularTabbables = [];\n var orderedTabbables = [];\n candidates.forEach(function (item, i) {\n var isScope = !!item.scopeParent;\n var element = isScope ? item.scopeParent : item;\n var candidateTabindex = getSortOrderTabIndex(element, isScope);\n var elements = isScope ? sortByOrder(item.candidates) : element;\n if (candidateTabindex === 0) {\n isScope ? regularTabbables.push.apply(regularTabbables, elements) : regularTabbables.push(element);\n } else {\n orderedTabbables.push({\n documentOrder: i,\n tabIndex: candidateTabindex,\n item: item,\n isScope: isScope,\n content: elements\n });\n }\n });\n return orderedTabbables.sort(sortOrderedTabbables).reduce(function (acc, sortable) {\n sortable.isScope ? acc.push.apply(acc, sortable.content) : acc.push(sortable.content);\n return acc;\n }, []).concat(regularTabbables);\n};\nvar tabbable = function tabbable(container, options) {\n options = options || {};\n var candidates;\n if (options.getShadowRoot) {\n candidates = getCandidatesIteratively([container], options.includeContainer, {\n filter: isNodeMatchingSelectorTabbable.bind(null, options),\n flatten: false,\n getShadowRoot: options.getShadowRoot,\n shadowRootFilter: isValidShadowRootTabbable\n });\n } else {\n candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorTabbable.bind(null, options));\n }\n return sortByOrder(candidates);\n};\nvar focusable = function focusable(container, options) {\n options = options || {};\n var candidates;\n if (options.getShadowRoot) {\n candidates = getCandidatesIteratively([container], options.includeContainer, {\n filter: isNodeMatchingSelectorFocusable.bind(null, options),\n flatten: true,\n getShadowRoot: options.getShadowRoot\n });\n } else {\n candidates = getCandidates(container, options.includeContainer, isNodeMatchingSelectorFocusable.bind(null, options));\n }\n return candidates;\n};\nvar isTabbable = function isTabbable(node, options) {\n options = options || {};\n if (!node) {\n throw new Error('No node provided');\n }\n if (matches.call(node, candidateSelector) === false) {\n return false;\n }\n return isNodeMatchingSelectorTabbable(options, node);\n};\nvar focusableCandidateSelector = /* #__PURE__ */candidateSelectors.concat('iframe').join(',');\nvar isFocusable = function isFocusable(node, options) {\n options = options || {};\n if (!node) {\n throw new Error('No node provided');\n }\n if (matches.call(node, focusableCandidateSelector) === false) {\n return false;\n }\n return isNodeMatchingSelectorFocusable(options, node);\n};\n\n\n//# sourceMappingURL=index.esm.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy90YWJiYWJsZS9kaXN0L2luZGV4LmVzbS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRTtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLEVBQUU7QUFDRjtBQUNBOztBQUVBO0FBQ0E7QUFDQSxXQUFXLFNBQVM7QUFDcEIsV0FBVyxTQUFTO0FBQ3BCO0FBQ0EsYUFBYSxTQUFTO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUI7QUFDdkI7QUFDQTtBQUNBOztBQUVBO0FBQ0EsMEVBQTBFO0FBQzFFO0FBQ0E7QUFDQTtBQUNBLG9FQUFvRTs7QUFFcEU7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsV0FBVyxTQUFTO0FBQ3BCLDJDQUEyQztBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxXQUFXLFNBQVM7QUFDcEIsV0FBVyxTQUFTO0FBQ3BCLFdBQVcsNEJBQTRCO0FBQ3ZDLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxXQUFXLFNBQVM7QUFDcEIsYUFBYSxvQkFBb0I7QUFDakM7O0FBRUE7QUFDQTtBQUNBLFdBQVcsU0FBUztBQUNwQixhQUFhLFNBQVM7QUFDdEI7O0FBRUE7QUFDQSxhQUFhLFFBQVE7QUFDckIsY0FBYyxTQUFTO0FBQ3ZCLGNBQWMsV0FBVztBQUN6Qjs7QUFFQTtBQUNBLGFBQWEsUUFBUTtBQUNyQixjQUFjLHVCQUF1QixpREFBaUQ7QUFDdEY7QUFDQTtBQUNBLGNBQWMsNEJBQTRCO0FBQzFDLGNBQWMsU0FBUztBQUN2QixjQUFjLGtCQUFrQjtBQUNo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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixnQ0FBZ0M7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFdBQVcsZ0NBQWdDO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVxRTtBQUNyRSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvdGFiYmFibGUvZGlzdC9pbmRleC5lc20uanM/ODJkMyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiogdGFiYmFibGUgNi4yLjBcbiogQGxpY2Vuc2UgTUlULCBodHRwczovL2dpdGh1Yi5jb20vZm9jdXMtdHJhcC90YWJiYWJsZS9ibG9iL21hc3Rlci9MSUNFTlNFXG4qL1xuLy8gTk9URTogc2VwYXJhdGUgYDpub3QoKWAgc2VsZWN0b3JzIGhhcyBicm9hZGVyIGJyb3dzZXIgc3VwcG9ydCB0aGFuIHRoZSBuZXdlclxuLy8gIGA6bm90KFtpbmVydF0sIFtpbmVydF0gKilgIChGZWIgMjAyMylcbi8vIENBUkVGVUw6IEpTRG9tIGRvZXMgbm90IHN1cHBvcnQgYDpub3QoW2luZXJ0XSAqKWAgYXMgYSBzZWxlY3RvcjsgdXNpbmcgaXQgY2F1c2VzXG4vLyAgdGhlIGVudGlyZSBxdWVyeSB0byBmYWlsLCByZXN1bHRpbmcgaW4gbm8gbm9kZXMgZm91bmQsIHdoaWNoIHdpbGwgYnJlYWsgYSBsb3Rcbi8vICBvZiB0aGluZ3MuLi4gc28gd2UgaGF2ZSB0byByZWx5IG9uIEpTIHRvIGlkZW50aWZ5IG5vZGVzIGluc2lkZSBhbiBpbmVydCBjb250YWluZXJcbnZhciBjYW5kaWRhdGVTZWxlY3RvcnMgPSBbJ2lucHV0Om5vdChbaW5lcnRdKScsICdzZWxlY3Q6bm90KFtpbmVydF0pJywgJ3RleHRhcmVhOm5vdChbaW5lcnRdKScsICdhW2hyZWZdOm5vdChbaW5lcnRdKScsICdidXR0b246bm90KFtpbmVydF0pJywgJ1t0YWJpbmRleF06bm90KHNsb3QpOm5vdChbaW5lcnRdKScsICdhdWRpb1tjb250cm9sc106bm90KFtpbmVydF0pJywgJ3ZpZGVvW2NvbnRyb2xzXTpub3QoW2luZXJ0XSknLCAnW2NvbnRlbnRlZGl0YWJsZV06bm90KFtjb250ZW50ZWRpdGFibGU9XCJmYWxzZVwiXSk6bm90KFtpbmVydF0pJywgJ2RldGFpbHM+c3VtbWFyeTpmaXJzdC1vZi10eXBlOm5vdChbaW5lcnRdKScsICdkZXRhaWxzOm5vdChbaW5lcnRdKSddO1xudmFyIGNhbmRpZGF0ZVNlbGVjdG9yID0gLyogI19fUFVSRV9fICovY2FuZGlkYXRlU2VsZWN0b3JzLmpvaW4oJywnKTtcbnZhciBOb0VsZW1lbnQgPSB0eXBlb2YgRWxlbWVudCA9PT0gJ3VuZGVmaW5lZCc7XG52YXIgbWF0Y2hlcyA9IE5vRWxlbWVudCA/IGZ1bmN0aW9uICgpIHt9IDogRWxlbWVudC5wcm90b3R5cGUubWF0Y2hlcyB8fCBFbGVtZW50LnByb3RvdHlwZS5tc01hdGNoZXNTZWxlY3RvciB8fCBFbGVtZW50LnByb3RvdHlwZS53ZWJraXRNYXRjaGVzU2VsZWN0b3I7XG52YXIgZ2V0Um9vdE5vZGUgPSAhTm9FbGVtZW50ICYmIEVsZW1lbnQucHJvdG90eXBlLmdldFJvb3ROb2RlID8gZnVuY3Rpb24gKGVsZW1lbnQpIHtcbiAgdmFyIF9lbGVtZW50JGdldFJvb3ROb2RlO1xuICByZXR1cm4gZWxlbWVudCA9PT0gbnVsbCB8fCBlbGVtZW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiAoX2VsZW1lbnQkZ2V0Um9vdE5vZGUgPSBlbGVtZW50LmdldFJvb3ROb2RlKSA9PT0gbnVsbCB8fCBfZWxlbWVudCRnZXRSb290Tm9kZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2VsZW1lbnQkZ2V0Um9vdE5vZGUuY2FsbChlbGVtZW50KTtcbn0gOiBmdW5jdGlvbiAoZWxlbWVudCkge1xuICByZXR1cm4gZWxlbWVudCA9PT0gbnVsbCB8fCBlbGVtZW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlbGVtZW50Lm93bmVyRG9jdW1lbnQ7XG59O1xuXG4vKipcbiAqIERldGVybWluZXMgaWYgYSBub2RlIGlzIGluZXJ0IG9yIGluIGFuIGluZXJ0IGFuY2VzdG9yLlxuICogQHBhcmFtIHtFbGVtZW50fSBbbm9kZV1cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW2xvb2tVcF0gSWYgdHJ1ZSBhbmQgYG5vZGVgIGlzIG5vdCBpbmVydCwgbG9va3MgdXAgYXQgYW5jZXN0b3JzIHRvXG4gKiAgc2VlIGlmIGFueSBvZiB0aGVtIGFyZSBpbmVydC4gSWYgZmFsc2UsIG9ubHkgYG5vZGVgIGl0c2VsZiBpcyBjb25zaWRlcmVkLlxuICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgaW5lcnQgaXRzZWxmIG9yIGJ5IHdheSBvZiBiZWluZyBpbiBhbiBpbmVydCBhbmNlc3Rvci5cbiAqICBGYWxzZSBpZiBgbm9kZWAgaXMgZmFsc3kuXG4gKi9cbnZhciBpc0luZXJ0ID0gZnVuY3Rpb24gaXNJbmVydChub2RlLCBsb29rVXApIHtcbiAgdmFyIF9ub2RlJGdldEF0dHJpYnV0ZTtcbiAgaWYgKGxvb2tVcCA9PT0gdm9pZCAwKSB7XG4gICAgbG9va1VwID0gdHJ1ZTtcbiAgfVxuICAvLyBDQVJFRlVMOiBKU0RvbSBkb2VzIG5vdCBzdXBwb3J0IGluZXJ0IGF0IGFsbCwgc28gd2UgY2FuJ3QgdXNlIHRoZSBgSFRNTEVsZW1lbnQuaW5lcnRgXG4gIC8vICBKUyBBUEkgcHJvcGVydHk7IHdlIGhhdmUgdG8gY2hlY2sgdGhlIGF0dHJpYnV0ZSwgd2hpY2ggY2FuIGVpdGhlciBiZSBlbXB0eSBvciAndHJ1ZSc7XG4gIC8vICBpZiBpdCdzIGBudWxsYCAobm90IHNwZWNpZmllZCkgb3IgJ2ZhbHNlJywgaXQncyBhbiBhY3RpdmUgZWxlbWVudFxuICB2YXIgaW5lcnRBdHQgPSBub2RlID09PSBudWxsIHx8IG5vZGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IChfbm9kZSRnZXRBdHRyaWJ1dGUgPSBub2RlLmdldEF0dHJpYnV0ZSkgPT09IG51bGwgfHwgX25vZGUkZ2V0QXR0cmlidXRlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfbm9kZSRnZXRBdHRyaWJ1dGUuY2FsbChub2RlLCAnaW5lcnQnKTtcbiAgdmFyIGluZXJ0ID0gaW5lcnRBdHQgPT09ICcnIHx8IGluZXJ0QXR0ID09PSAndHJ1ZSc7XG5cbiAgLy8gTk9URTogdGhpcyBjb3VsZCBhbHNvIGJlIGhhbmRsZWQgd2l0aCBgbm9kZS5tYXRjaGVzKCdbaW5lcnRdLCA6aXMoW2luZXJ0XSAqKScpYFxuICAvLyAgaWYgaXQgd2VyZW4ndCBmb3IgYG1hdGNoZXMoKWAgbm90IGJlaW5nIGEgZnVuY3Rpb24gb24gc2hhZG93IHJvb3RzOyB0aGUgZm9sbG93aW5nXG4gIC8vICBjb2RlIHdvcmtzIGZvciBhbnkga2luZCBvZiBub2RlXG4gIC8vIENBUkVGVUw6IEpTRG9tIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGNlcnRhaW4gc2VsZWN0b3JzIGxpa2UgYDpub3QoW2luZXJ0XSAqKWBcbiAgLy8gIHNvIGl0IGxpa2VseSB3b3VsZCBub3Qgc3VwcG9ydCBgOmlzKFtpbmVydF0gKilgIGVpdGhlci4uLlxuICB2YXIgcmVzdWx0ID0gaW5lcnQgfHwgbG9va1VwICYmIG5vZGUgJiYgaXNJbmVydChub2RlLnBhcmVudE5vZGUpOyAvLyByZWN1cnNpdmVcblxuICByZXR1cm4gcmVzdWx0O1xufTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIGEgbm9kZSdzIGNvbnRlbnQgaXMgZWRpdGFibGUuXG4gKiBAcGFyYW0ge0VsZW1lbnR9IFtub2RlXVxuICogQHJldHVybnMgVHJ1ZSBpZiBpdCdzIGNvbnRlbnQtZWRpdGFibGU7IGZhbHNlIGlmIGl0J3Mgbm90IG9yIGBub2RlYCBpcyBmYWxzeS5cbiAqL1xudmFyIGlzQ29udGVudEVkaXRhYmxlID0gZnVuY3Rpb24gaXNDb250ZW50RWRpdGFibGUobm9kZSkge1xuICB2YXIgX25vZGUkZ2V0QXR0cmlidXRlMjtcbiAgLy8gQ0FSRUZVTDogSlNEb20gZG9lcyBub3Qgc3VwcG9ydCB0aGUgYEhUTUxFbGVtZW50LmlzQ29udGVudEVkaXRhYmxlYCBBUEkgc28gd2UgaGF2ZVxuICAvLyAgdG8gdXNlIHRoZSBhdHRyaWJ1dGUgZGlyZWN0bHkgdG8gY2hlY2sgZm9yIHRoaXMsIHdoaWNoIGNhbiBlaXRoZXIgYmUgZW1wdHkgb3IgJ3RydWUnO1xuICAvLyAgaWYgaXQncyBgbnVsbGAgKG5vdCBzcGVjaWZpZWQpIG9yICdmYWxzZScsIGl0J3MgYSBub24tZWRpdGFibGUgZWxlbWVudFxuICB2YXIgYXR0VmFsdWUgPSBub2RlID09PSBudWxsIHx8IG5vZGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IChfbm9kZSRnZXRBdHRyaWJ1dGUyID0gbm9kZS5nZXRBdHRyaWJ1dGUpID09PSBudWxsIHx8IF9ub2RlJGdldEF0dHJpYnV0ZTIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9ub2RlJGdldEF0dHJpYnV0ZTIuY2FsbChub2RlLCAnY29udGVudGVkaXRhYmxlJyk7XG4gIHJldHVybiBhdHRWYWx1ZSA9PT0gJycgfHwgYXR0VmFsdWUgPT09ICd0cnVlJztcbn07XG5cbi8qKlxuICogQHBhcmFtIHtFbGVtZW50fSBlbCBjb250YWluZXIgdG8gY2hlY2sgaW5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gaW5jbHVkZUNvbnRhaW5lciBhZGQgY29udGFpbmVyIHRvIGNoZWNrXG4gKiBAcGFyYW0geyhub2RlOiBFbGVtZW50KSA9PiBib29sZWFufSBmaWx0ZXIgZmlsdGVyIGNhbmRpZGF0ZXNcbiAqIEByZXR1cm5zIHtFbGVtZW50W119XG4gKi9cbnZhciBnZXRDYW5kaWRhdGVzID0gZnVuY3Rpb24gZ2V0Q2FuZGlkYXRlcyhlbCwgaW5jbHVkZUNvbnRhaW5lciwgZmlsdGVyKSB7XG4gIC8vIGV2ZW4gaWYgYGluY2x1ZGVDb250YWluZXI9ZmFsc2VgLCB3ZSBzdGlsbCBoYXZlIHRvIGNoZWNrIGl0IGZvciBpbmVydG5lc3MgYmVjYXVzZVxuICAvLyAgaWYgaXQncyBpbmVydCwgYWxsIGl0cyBjaGlsZHJlbiBhcmUgaW5lcnRcbiAgaWYgKGlzSW5lcnQoZWwpKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIHZhciBjYW5kaWRhdGVzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmFwcGx5KGVsLnF1ZXJ5U2VsZWN0b3JBbGwoY2FuZGlkYXRlU2VsZWN0b3IpKTtcbiAgaWYgKGluY2x1ZGVDb250YWluZXIgJiYgbWF0Y2hlcy5jYWxsKGVsLCBjYW5kaWRhdGVTZWxlY3RvcikpIHtcbiAgICBjYW5kaWRhdGVzLnVuc2hpZnQoZWwpO1xuICB9XG4gIGNhbmRpZGF0ZXMgPSBjYW5kaWRhdGVzLmZpbHRlcihmaWx0ZXIpO1xuICByZXR1cm4gY2FuZGlkYXRlcztcbn07XG5cbi8qKlxuICogQGNhbGxiYWNrIEdldFNoYWRvd1Jvb3RcbiAqIEBwYXJhbSB7RWxlbWVudH0gZWxlbWVudCB0byBjaGVjayBmb3Igc2hhZG93IHJvb3RcbiAqIEByZXR1cm5zIHtTaGFkb3dSb290fGJvb2xlYW59IFNoYWRvd1Jvb3QgaWYgYXZhaWxhYmxlIG9yIGJvb2xlYW4gaW5kaWNhdGluZyBpZiBhIHNoYWRvd1Jvb3QgaXMgYXR0YWNoZWQgYnV0IG5vdCBhdmFpbGFibGUuXG4gKi9cblxuLyoqXG4gKiBAY2FsbGJhY2sgU2hhZG93Um9vdEZpbHRlclxuICogQHBhcmFtIHtFbGVtZW50fSBzaGFkb3dIb3N0Tm9kZSB0aGUgZWxlbWVudCB3aGljaCBjb250YWlucyBzaGFkb3cgY29udGVudFxuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgYSBzaGFkb3cgcm9vdCBjb3VsZCBwb3RlbnRpYWxseSBjb250YWluIHZhbGlkIGNhbmRpZGF0ZXMuXG4gKi9cblxuLyoqXG4gKiBAdHlwZWRlZiB7T2JqZWN0fSBDYW5kaWRhdGVTY29wZVxuICogQHByb3BlcnR5IHtFbGVtZW50fSBzY29wZVBhcmVudCBjb250YWlucyBpbm5lciBjYW5kaWRhdGVzXG4gKiBAcHJvcGVydHkge0VsZW1lbnRbXX0gY2FuZGlkYXRlcyBsaXN0IG9mIGNhbmRpZGF0ZXMgZm91bmQgaW4gdGhlIHNjb3BlIHBhcmVudFxuICovXG5cbi8qKlxuICogQHR5cGVkZWYge09iamVjdH0gSXRlcmF0aXZlT3B0aW9uc1xuICogQHByb3BlcnR5IHtHZXRTaGFkb3dSb290fGJvb2xlYW59IGdldFNoYWRvd1Jvb3QgdHJ1ZSBpZiBzaGFkb3cgc3VwcG9ydCBpcyBlbmFibGVkOyBmYWxzeSBpZiBub3Q7XG4gKiAgaWYgYSBmdW5jdGlvbiwgaW1wbGllcyBzaGFkb3cgc3VwcG9ydCBpcyBlbmFibGVkIGFuZCBlaXRoZXIgcmV0dXJucyB0aGUgc2hhZG93IHJvb3Qgb2YgYW4gZWxlbWVudFxuICogIG9yIGEgYm9vbGVhbiBzdGF0aW5nIGlmIGl0IGhhcyBhbiB1bmRpc2Nsb3NlZCBzaGFkb3cgcm9vdFxuICogQHByb3BlcnR5IHsobm9kZTogRWxlbWVudCkgPT4gYm9vbGVhbn0gZmlsdGVyIGZpbHRlciBjYW5kaWRhdGVzXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IGZsYXR0ZW4gaWYgdHJ1ZSB0aGVuIHJlc3VsdCB3aWxsIGZsYXR0ZW4gYW55IENhbmRpZGF0ZVNjb3BlIGludG8gdGhlIHJldHVybmVkIGxpc3RcbiAqIEBwcm9wZXJ0eSB7U2hhZG93Um9vdEZpbHRlcn0gc2hhZG93Um9vdEZpbHRlciBmaWx0ZXIgc2hhZG93IHJvb3RzO1xuICovXG5cbi8qKlxuICogQHBhcmFtIHtFbGVtZW50W119IGVsZW1lbnRzIGxpc3Qgb2YgZWxlbWVudCBjb250YWluZXJzIHRvIG1hdGNoIGNhbmRpZGF0ZXMgZnJvbVxuICogQHBhcmFtIHtib29sZWFufSBpbmNsdWRlQ29udGFpbmVyIGFkZCBjb250YWluZXIgbGlzdCB0byBjaGVja1xuICogQHBhcmFtIHtJdGVyYXRpdmVPcHRpb25zfSBvcHRpb25zXG4gKiBAcmV0dXJucyB7QXJyYXkuPEVsZW1lbnR8Q2FuZGlkYXRlU2NvcGU+fVxuICovXG52YXIgZ2V0Q2FuZGlkYXRlc0l0ZXJhdGl2ZWx5ID0gZnVuY3Rpb24gZ2V0Q2FuZGlkYXRlc0l0ZXJhdGl2ZWx5KGVsZW1lbnRzLCBpbmNsdWRlQ29udGFpbmVyLCBvcHRpb25zKSB7XG4gIHZhciBjYW5kaWRhdGVzID0gW107XG4gIHZhciBlbGVtZW50c1RvQ2hlY2sgPSBBcnJheS5mcm9tKGVsZW1lbnRzKTtcbiAgd2hpbGUgKGVsZW1lbnRzVG9DaGVjay5sZW5ndGgpIHtcbiAgICB2YXIgZWxlbWVudCA9IGVsZW1lbnRzVG9DaGVjay5zaGlmdCgpO1xuICAgIGlmIChpc0luZXJ0KGVsZW1lbnQsIGZhbHNlKSkge1xuICAgICAgLy8gbm8gbmVlZCB0byBsb29rIHVwIHNpbmNlIHdlJ3JlIGRyaWxsaW5nIGRvd25cbiAgICAgIC8vIGFueXRoaW5nIGluc2lkZSB0aGlzIGNvbnRhaW5lciB3aWxsIGFsc28gYmUgaW5lcnRcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cbiAgICBpZiAoZWxlbWVudC50YWdOYW1lID09PSAnU0xPVCcpIHtcbiAgICAgIC8vIGFkZCBzaGFkb3cgZG9tIHNsb3Qgc2NvcGUgKHNsb3QgaXRzZWxmIGNhbm5vdCBiZSBmb2N1c2FibGUpXG4gICAgICB2YXIgYXNzaWduZWQgPSBlbGVtZW50LmFzc2lnbmVkRWxlbWVudHMoKTtcbiAgICAgIHZhciBjb250ZW50ID0gYXNzaWduZWQubGVuZ3RoID8gYXNzaWduZWQgOiBlbGVtZW50LmNoaWxkcmVuO1xuICAgICAgdmFyIG5lc3RlZENhbmRpZGF0ZXMgPSBnZXRDYW5kaWRhdGVzSXRlcmF0aXZlbHkoY29udGVudCwgdHJ1ZSwgb3B0aW9ucyk7XG4gICAgICBpZiAob3B0aW9ucy5mbGF0dGVuKSB7XG4gICAgICAgIGNhbmRpZGF0ZXMucHVzaC5hcHBseShjYW5kaWRhdGVzLCBuZXN0ZWRDYW5kaWRhdGVzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNhbmRpZGF0ZXMucHVzaCh7XG4gICAgICAgICAgc2NvcGVQYXJlbnQ6IGVsZW1lbnQsXG4gICAgICAgICAgY2FuZGlkYXRlczogbmVzdGVkQ2FuZGlkYXRlc1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gY2hlY2sgY2FuZGlkYXRlIGVsZW1lbnRcbiAgICAgIHZhciB2YWxpZENhbmRpZGF0ZSA9IG1hdGNoZXMuY2FsbChlbGVtZW50LCBjYW5kaWRhdGVTZWxlY3Rvcik7XG4gICAgICBpZiAodmFsaWRDYW5kaWRhdGUgJiYgb3B0aW9ucy5maWx0ZXIoZWxlbWVudCkgJiYgKGluY2x1ZGVDb250YWluZXIgfHwgIWVsZW1lbnRzLmluY2x1ZGVzKGVsZW1lbnQpKSkge1xuICAgICAgICBjYW5kaWRhdGVzLnB1c2goZWxlbWVudCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGl0ZXJhdGUgb3ZlciBzaGFkb3cgY29udGVudCBpZiBwb3NzaWJsZVxuICAgICAgdmFyIHNoYWRvd1Jvb3QgPSBlbGVtZW50LnNoYWRvd1Jvb3QgfHxcbiAgICAgIC8vIGNoZWNrIGZvciBhbiB1bmRpc2Nsb3NlZCBzaGFkb3dcbiAgICAgIHR5cGVvZiBvcHRpb25zLmdldFNoYWRvd1Jvb3QgPT09ICdmdW5jdGlvbicgJiYgb3B0aW9ucy5nZXRTaGFkb3dSb290KGVsZW1lbnQpO1xuXG4gICAgICAvLyBubyBpbmVydCBsb29rIHVwIGJlY2F1c2Ugd2UncmUgYWxyZWFkeSBkcmlsbGluZyBkb3duIGFuZCBjaGVja2luZyBmb3IgaW5lcnRuZXNzXG4gICAgICAvLyAgb24gdGhlIHdheSBkb3duLCBzbyBhbGwgY29udGFpbmVycyB0byB0aGlzIHJvb3Qgbm9kZSBzaG91bGQgaGF2ZSBhbHJlYWR5IGJlZW5cbiAgICAgIC8vICB2ZXR0ZWQgYXMgbm9uLWluZXJ0XG4gICAgICB2YXIgdmFsaWRTaGFkb3dSb290ID0gIWlzSW5lcnQoc2hhZG93Um9vdCwgZmFsc2UpICYmICghb3B0aW9ucy5zaGFkb3dSb290RmlsdGVyIHx8IG9wdGlvbnMuc2hhZG93Um9vdEZpbHRlcihlbGVtZW50KSk7XG4gICAgICBpZiAoc2hhZG93Um9vdCAmJiB2YWxpZFNoYWRvd1Jvb3QpIHtcbiAgICAgICAgLy8gYWRkIHNoYWRvdyBkb20gc2NvcGUgSUlGIGEgc2hhZG93IHJvb3Qgbm9kZSB3YXMgZ2l2ZW47IG90aGVyd2lzZSwgYW4gdW5kaXNjbG9zZWRcbiAgICAgICAgLy8gIHNoYWRvdyBleGlzdHMsIHNvIGxvb2sgYXQgbGlnaHQgZG9tIGNoaWxkcmVuIGFzIGZhbGxiYWNrIEJVVCBjcmVhdGUgYSBzY29wZSBmb3IgYW55XG4gICAgICAgIC8vICBjaGlsZCBjYW5kaWRhdGVzIGZvdW5kIGJlY2F1c2UgdGhleSdyZSBsaWtlbHkgc2xvdHRlZCBlbGVtZW50cyAoZWxlbWVudHMgdGhhdCBhcmVcbiAgICAgICAgLy8gIGNoaWxkcmVuIG9mIHRoZSB3ZWIgY29tcG9uZW50IGVsZW1lbnQgKHdoaWNoIGhhcyB0aGUgc2hhZG93KSwgaW4gdGhlIGxpZ2h0IGRvbSwgYnV0XG4gICAgICAgIC8vICBzbG90dGVkIHNvbWV3aGVyZSBfaW5zaWRlXyB0aGUgdW5kaXNjbG9zZWQgc2hhZG93KSAtLSB0aGUgc2NvcGUgaXMgY3JlYXRlZCBiZWxvdyxcbiAgICAgICAgLy8gIF9hZnRlcl8gd2UgcmV0dXJuIGZyb20gdGhpcyByZWN1cnNpdmUgY2FsbFxuICAgICAgICB2YXIgX25lc3RlZENhbmRpZGF0ZXMgPSBnZXRDYW5kaWRhdGVzSXRlcmF0aXZlbHkoc2hhZG93Um9vdCA9PT0gdHJ1ZSA/IGVsZW1lbnQuY2hpbGRyZW4gOiBzaGFkb3dSb290LmNoaWxkcmVuLCB0cnVlLCBvcHRpb25zKTtcbiAgICAgICAgaWYgKG9wdGlvbnMuZmxhdHRlbikge1xuICAgICAgICAgIGNhbmRpZGF0ZXMucHVzaC5hcHBseShjYW5kaWRhdGVzLCBfbmVzdGVkQ2FuZGlkYXRlcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2FuZGlkYXRlcy5wdXNoKHtcbiAgICAgICAgICAgIHNjb3BlUGFyZW50OiBlbGVtZW50LFxuICAgICAgICAgICAgY2FuZGlkYXRlczogX25lc3RlZENhbmRpZGF0ZXNcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gdGhlcmUncyBub3Qgc2hhZG93IHNvIGp1c3QgZGlnIGludG8gdGhlIGVsZW1lbnQncyAobGlnaHQgZG9tKSBjaGlsZHJlblxuICAgICAgICAvLyAgX193aXRob3V0X18gZ2l2aW5nIHRoZSBlbGVtZW50IHNwZWNpYWwgc2NvcGUgdHJlYXRtZW50XG4gICAgICAgIGVsZW1lbnRzVG9DaGVjay51bnNoaWZ0LmFwcGx5KGVsZW1lbnRzVG9DaGVjaywgZWxlbWVudC5jaGlsZHJlbik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBjYW5kaWRhdGVzO1xufTtcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICogRGV0ZXJtaW5lcyBpZiB0aGUgbm9kZSBoYXMgYW4gZXhwbGljaXRseSBzcGVjaWZpZWQgYHRhYmluZGV4YCBhdHRyaWJ1dGUuXG4gKiBAcGFyYW0ge0hUTUxFbGVtZW50fSBub2RlXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBzbzsgZmFsc2UgaWYgbm90LlxuICovXG52YXIgaGFzVGFiSW5kZXggPSBmdW5jdGlvbiBoYXNUYWJJbmRleChub2RlKSB7XG4gIHJldHVybiAhaXNOYU4ocGFyc2VJbnQobm9kZS5nZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JyksIDEwKSk7XG59O1xuXG4vKipcbiAqIERldGVybWluZSB0aGUgdGFiIGluZGV4IG9mIGEgZ2l2ZW4gbm9kZS5cbiAqIEBwYXJhbSB7SFRNTEVsZW1lbnR9IG5vZGVcbiAqIEByZXR1cm5zIHtudW1iZXJ9IFRhYiBvcmRlciAobmVnYXRpdmUsIDAsIG9yIHBvc2l0aXZlIG51bWJlcikuXG4gKiBAdGhyb3dzIHtFcnJvcn0gSWYgYG5vZGVgIGlzIGZhbHN5LlxuICovXG52YXIgZ2V0VGFiSW5kZXggPSBmdW5jdGlvbiBnZXRUYWJJbmRleChub2RlKSB7XG4gIGlmICghbm9kZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTm8gbm9kZSBwcm92aWRlZCcpO1xuICB9XG4gIGlmIChub2RlLnRhYkluZGV4IDwgMCkge1xuICAgIC8vIGluIENocm9tZSwgPGRldGFpbHMvPiwgPGF1ZGlvIGNvbnRyb2xzLz4gYW5kIDx2aWRlbyBjb250cm9scy8+IGVsZW1lbnRzIGdldCBhIGRlZmF1bHRcbiAgICAvLyBgdGFiSW5kZXhgIG9mIC0xIHdoZW4gdGhlICd0YWJpbmRleCcgYXR0cmlidXRlIGlzbid0IHNwZWNpZmllZCBpbiB0aGUgRE9NLFxuICAgIC8vIHlldCB0aGV5IGFyZSBzdGlsbCBwYXJ0IG9mIHRoZSByZWd1bGFyIHRhYiBvcmRlcjsgaW4gRkYsIHRoZXkgZ2V0IGEgZGVmYXVsdFxuICAgIC8vIGB0YWJJbmRleGAgb2YgMDsgc2luY2UgQ2hyb21lIHN0aWxsIHB1dHMgdGhvc2UgZWxlbWVudHMgaW4gdGhlIHJlZ3VsYXIgdGFiXG4gICAgLy8gb3JkZXIsIGNvbnNpZGVyIHRoZWlyIHRhYiBpbmRleCB0byBiZSAwLlxuICAgIC8vIEFsc28gYnJvd3NlcnMgZG8gbm90IHJldHVybiBgdGFiSW5kZXhgIGNvcnJlY3RseSBmb3IgY29udGVudEVkaXRhYmxlIG5vZGVzO1xuICAgIC8vIHNvIGlmIHRoZXkgZG9uJ3QgaGF2ZSBhIHRhYmluZGV4IGF0dHJpYnV0ZSBzcGVjaWZpY2FsbHkgc2V0LCBhc3N1bWUgaXQncyAwLlxuICAgIGlmICgoL14oQVVESU98VklERU98REVUQUlMUykkLy50ZXN0KG5vZGUudGFnTmFtZSkgfHwgaXNDb250ZW50RWRpdGFibGUobm9kZSkpICYmICFoYXNUYWJJbmRleChub2RlKSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICB9XG4gIHJldHVybiBub2RlLnRhYkluZGV4O1xufTtcblxuLyoqXG4gKiBEZXRlcm1pbmUgdGhlIHRhYiBpbmRleCBvZiBhIGdpdmVuIG5vZGUgX19mb3Igc29ydCBvcmRlciBwdXJwb3Nlc19fLlxuICogQHBhcmFtIHtIVE1MRWxlbWVudH0gbm9kZVxuICogQHBhcmFtIHtib29sZWFufSBbaXNTY29wZV0gVHJ1ZSBmb3IgYSBjdXN0b20gZWxlbWVudCB3aXRoIHNoYWRvdyByb290IG9yIHNsb3QgdGhhdCwgYnkgZGVmYXVsdCxcbiAqICBoYXMgdGFiSW5kZXggLTEsIGJ1dCBuZWVkcyB0byBiZSBzb3J0ZWQgYnkgZG9jdW1lbnQgb3JkZXIgaW4gb3JkZXIgZm9yIGl0cyBjb250ZW50IHRvIGJlXG4gKiAgaW5zZXJ0ZWQgaW50byB0aGUgY29ycmVjdCBzb3J0IHBvc2l0aW9uLlxuICogQHJldHVybnMge251bWJlcn0gVGFiIG9yZGVyIChuZWdhdGl2ZSwgMCwgb3IgcG9zaXRpdmUgbnVtYmVyKS5cbiAqL1xudmFyIGdldFNvcnRPcmRlclRhYkluZGV4ID0gZnVuY3Rpb24gZ2V0U29ydE9yZGVyVGFiSW5kZXgobm9kZSwgaXNTY29wZSkge1xuICB2YXIgdGFiSW5kZXggPSBnZXRUYWJJbmRleChub2RlKTtcbiAgaWYgKHRhYkluZGV4IDwgMCAmJiBpc1Njb3BlICYmICFoYXNUYWJJbmRleChub2RlKSkge1xuICAgIHJldHVybiAwO1xuICB9XG4gIHJldHVybiB0YWJJbmRleDtcbn07XG52YXIgc29ydE9yZGVyZWRUYWJiYWJsZXMgPSBmdW5jdGlvbiBzb3J0T3JkZXJlZFRhYmJhYmxlcyhhLCBiKSB7XG4gIHJldHVybiBhLnRhYkluZGV4ID09PSBiLnRhYkluZGV4ID8gYS5kb2N1bWVudE9yZGVyIC0gYi5kb2N1bWVudE9yZGVyIDogYS50YWJJbmRleCAtIGIudGFiSW5kZXg7XG59O1xudmFyIGlzSW5wdXQgPSBmdW5jdGlvbiBpc0lucHV0KG5vZGUpIHtcbiAgcmV0dXJuIG5vZGUudGFnTmFtZSA9PT0gJ0lOUFVUJztcbn07XG52YXIgaXNIaWRkZW5JbnB1dCA9IGZ1bmN0aW9uIGlzSGlkZGVuSW5wdXQobm9kZSkge1xuICByZXR1cm4gaXNJbnB1dChub2RlKSAmJiBub2RlLnR5cGUgPT09ICdoaWRkZW4nO1xufTtcbnZhciBpc0RldGFpbHNXaXRoU3VtbWFyeSA9IGZ1bmN0aW9uIGlzRGV0YWlsc1dpdGhTdW1tYXJ5KG5vZGUpIHtcbiAgdmFyIHIgPSBub2RlLnRhZ05hbWUgPT09ICdERVRBSUxTJyAmJiBBcnJheS5wcm90b3R5cGUuc2xpY2UuYXBwbHkobm9kZS5jaGlsZHJlbikuc29tZShmdW5jdGlvbiAoY2hpbGQpIHtcbiAgICByZXR1cm4gY2hpbGQudGFnTmFtZSA9PT0gJ1NVTU1BUlknO1xuICB9KTtcbiAgcmV0dXJuIHI7XG59O1xudmFyIGdldENoZWNrZWRSYWRpbyA9IGZ1bmN0aW9uIGdldENoZWNrZWRSYWRpbyhub2RlcywgZm9ybSkge1xuICBmb3IgKHZhciBpID0gMDsgaSA8IG5vZGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKG5vZGVzW2ldLmNoZWNrZWQgJiYgbm9kZXNbaV0uZm9ybSA9PT0gZm9ybSkge1xuICAgICAgcmV0dXJuIG5vZGVzW2ldO1xuICAgIH1cbiAgfVxufTtcbnZhciBpc1RhYmJhYmxlUmFkaW8gPSBmdW5jdGlvbiBpc1RhYmJhYmxlUmFkaW8obm9kZSkge1xuICBpZiAoIW5vZGUubmFtZSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIHZhciByYWRpb1Njb3BlID0gbm9kZS5mb3JtIHx8IGdldFJvb3ROb2RlKG5vZGUpO1xuICB2YXIgcXVlcnlSYWRpb3MgPSBmdW5jdGlvbiBxdWVyeVJhZGlvcyhuYW1lKSB7XG4gICAgcmV0dXJuIHJhZGlvU2NvcGUucXVlcnlTZWxlY3RvckFsbCgnaW5wdXRbdHlwZT1cInJhZGlvXCJdW25hbWU9XCInICsgbmFtZSArICdcIl0nKTtcbiAgfTtcbiAgdmFyIHJhZGlvU2V0O1xuICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHdpbmRvdy5DU1MgIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiB3aW5kb3cuQ1NTLmVzY2FwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJhZGlvU2V0ID0gcXVlcnlSYWRpb3Mod2luZG93LkNTUy5lc2NhcGUobm9kZS5uYW1lKSk7XG4gIH0gZWxzZSB7XG4gICAgdHJ5IHtcbiAgICAgIHJhZGlvU2V0ID0gcXVlcnlSYWRpb3Mobm9kZS5uYW1lKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb25zb2xlXG4gICAgICBjb25zb2xlLmVycm9yKCdMb29rcyBsaWtlIHlvdSBoYXZlIGEgcmFkaW8gYnV0dG9uIHdpdGggYSBuYW1lIGF0dHJpYnV0ZSBjb250YWluaW5nIGludmFsaWQgQ1NTIHNlbGVjdG9yIGNoYXJhY3RlcnMgYW5kIG5lZWQgdGhlIENTUy5lc2NhcGUgcG9seWZpbGw6ICVzJywgZXJyLm1lc3NhZ2UpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuICB2YXIgY2hlY2tlZCA9IGdldENoZWNrZWRSYWRpbyhyYWRpb1NldCwgbm9kZS5mb3JtKTtcbiAgcmV0dXJuICFjaGVja2VkIHx8IGNoZWNrZWQgPT09IG5vZGU7XG59O1xudmFyIGlzUmFkaW8gPSBmdW5jdGlvbiBpc1JhZGlvKG5vZGUpIHtcbiAgcmV0dXJuIGlzSW5wdXQobm9kZSkgJiYgbm9kZS50eXBlID09PSAncmFkaW8nO1xufTtcbnZhciBpc05vblRhYmJhYmxlUmFkaW8gPSBmdW5jdGlvbiBpc05vblRhYmJhYmxlUmFkaW8obm9kZSkge1xuICByZXR1cm4gaXNSYWRpbyhub2RlKSAmJiAhaXNUYWJiYWJsZVJhZGlvKG5vZGUpO1xufTtcblxuLy8gZGV0ZXJtaW5lcyBpZiBhIG5vZGUgaXMgdWx0aW1hdGVseSBhdHRhY2hlZCB0byB0aGUgd2luZG93J3MgZG9jdW1lbnRcbnZhciBpc05vZGVBdHRhY2hlZCA9IGZ1bmN0aW9uIGlzTm9kZUF0dGFjaGVkKG5vZGUpIHtcbiAgdmFyIF9ub2RlUm9vdDtcbiAgLy8gVGhlIHJvb3Qgbm9kZSBpcyB0aGUgc2hhZG93IHJvb3QgaWYgdGhlIG5vZGUgaXMgaW4gYSBzaGFkb3cgRE9NOyBzb21lIGRvY3VtZW50IG90aGVyd2lzZVxuICAvLyAgKGJ1dCBOT1QgX3RoZV8gZG9jdW1lbnQ7IHNlZSBzZWNvbmQgJ0lmJyBjb21tZW50IGJlbG93IGZvciBtb3JlKS5cbiAgLy8gSWYgcm9vdE5vZGUgaXMgc2hhZG93IHJvb3QsIGl0J2xsIGhhdmUgYSBob3N0LCB3aGljaCBpcyB0aGUgZWxlbWVudCB0byB3aGljaCB0aGUgc2hhZG93XG4gIC8vICBpcyBhdHRhY2hlZCwgYW5kIHRoZSBvbmUgd2UgbmVlZCB0byBjaGVjayBpZiBpdCdzIGluIHRoZSBkb2N1bWVudCBvciBub3QgKGJlY2F1c2UgdGhlXG4gIC8vICBzaGFkb3csIGFuZCBhbGwgbm9kZXMgaXQgY29udGFpbnMsIGlzIG5ldmVyIGNvbnNpZGVyZWQgaW4gdGhlIGRvY3VtZW50IHNpbmNlIHNoYWRvd3NcbiAgLy8gIGJlaGF2ZSBsaWtlIHNlbGYtY29udGFpbmVkIERPTXM7IGJ1dCBpZiB0aGUgc2hhZG93J3MgSE9TVCwgd2hpY2ggaXMgcGFydCBvZiB0aGUgZG9jdW1lbnQsXG4gIC8vICBpcyBoaWRkZW4sIG9yIGlzIG5vdCBpbiB0aGUgZG9jdW1lbnQgaXRzZWxmIGJ1dCBpcyBkZXRhY2hlZCwgaXQgd2lsbCBhZmZlY3QgdGhlIHNoYWRvdydzXG4gIC8vICB2aXNpYmlsaXR5LCBpbmNsdWRpbmcgYWxsIHRoZSBub2RlcyBpdCBjb250YWlucykuIFRoZSBob3N0IGNvdWxkIGJlIGFueSBub3JtYWwgbm9kZSxcbiAgLy8gIG9yIGEgY3VzdG9tIGVsZW1lbnQgKGkuZS4gd2ViIGNvbXBvbmVudCkuIEVpdGhlciB3YXksIHRoYXQncyB0aGUgb25lIHRoYXQgaXMgY29uc2lkZXJlZFxuICAvLyAgcGFydCBvZiB0aGUgZG9jdW1lbnQsIG5vdCB0aGUgc2hhZG93IHJvb3QsIG5vciBhbnkgb2YgaXRzIGNoaWxkcmVuIChpLmUuIHRoZSBub2RlIGJlaW5nXG4gIC8vICB0ZXN0ZWQpLlxuICAvLyBUbyBmdXJ0aGVyIGNvbXBsaWNhdGUgdGhpbmdzLCB3ZSBoYXZlIHRvIGxvb2sgYWxsIHRoZSB3YXkgdXAgdW50aWwgd2UgZmluZCBhIHNoYWRvdyBIT1NUXG4gIC8vICB0aGF0IGlzIGF0dGFjaGVkIChvciBmaW5kIG5vbmUpIGJlY2F1c2UgdGhlIG5vZGUgbWlnaHQgYmUgaW4gbmVzdGVkIHNoYWRvd3MuLi5cbiAgLy8gSWYgcm9vdE5vZGUgaXMgbm90IGEgc2hhZG93IHJvb3QsIGl0IHdvbid0IGhhdmUgYSBob3N0LCBhbmQgc28gcm9vdE5vZGUgc2hvdWxkIGJlIHRoZVxuICAvLyAgZG9jdW1lbnQgKHBlciB0aGUgZG9jcykgYW5kIHdoaWxlIGl0J3MgYSBEb2N1bWVudC10eXBlIG9iamVjdCwgdGhhdCBkb2N1bWVudCBkb2VzIG5vdFxuICAvLyAgYXBwZWFyIHRvIGJlIHRoZSBzYW1lIGFzIHRoZSBub2RlJ3MgYG93bmVyRG9jdW1lbnRgIGZvciBzb21lIHJlYXNvbiwgc28gaXQncyBzYWZlclxuICAvLyAgdG8gaWdub3JlIHRoZSByb290Tm9kZSBhdCB0aGlzIHBvaW50LCBhbmQgdXNlIGBub2RlLm93bmVyRG9jdW1lbnRgLiBPdGhlcndpc2UsXG4gIC8vICB1c2luZyBgcm9vdE5vZGUuY29udGFpbnMobm9kZSlgIHdpbGwgX2Fsd2F5c18gYmUgdHJ1ZSB3ZSdsbCBnZXQgZmFsc2UtcG9zaXRpdmVzIHdoZW5cbiAgLy8gIG5vZGUgaXMgYWN0dWFsbHkgZGV0YWNoZWQuXG4gIC8vIE5PVEU6IElmIGBub2RlUm9vdEhvc3RgIG9yIGBub2RlYCBoYXBwZW5zIHRvIGJlIHRoZSBgZG9jdW1lbnRgIGl0c2VsZiAod2hpY2ggaXMgcG9zc2libGVcbiAgLy8gIGlmIGEgdGFiYmFibGUvZm9jdXNhYmxlIG5vZGUgd2FzIHF1aWNrbHkgYWRkZWQgdG8gdGhlIERPTSwgZm9jdXNlZCwgYW5kIHRoZW4gcmVtb3ZlZFxuICAvLyAgZnJvbSB0aGUgRE9NIGFzIGluIGh0dHBzOi8vZ2l0aHViLmNvbS9mb2N1cy10cmFwL2ZvY3VzLXRyYXAtcmVhY3QvaXNzdWVzLzkwNSksIHRoZW5cbiAgLy8gIGBvd25lckRvY3VtZW50YCB3aWxsIGJlIGBudWxsYCwgaGVuY2UgdGhlIG9wdGlvbmFsIGNoYWluaW5nIG9uIGl0LlxuICB2YXIgbm9kZVJvb3QgPSBub2RlICYmIGdldFJvb3ROb2RlKG5vZGUpO1xuICB2YXIgbm9kZVJvb3RIb3N0ID0gKF9ub2RlUm9vdCA9IG5vZGVSb290KSA9PT0gbnVsbCB8fCBfbm9kZVJvb3QgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9ub2RlUm9vdC5ob3N0O1xuXG4gIC8vIGluIHNvbWUgY2FzZXMsIGEgZGV0YWNoZWQgbm9kZSB3aWxsIHJldHVybiBpdHNlbGYgYXMgdGhlIHJvb3QgaW5zdGVhZCBvZiBhIGRvY3VtZW50IG9yXG4gIC8vICBzaGFkb3cgcm9vdCBvYmplY3QsIGluIHdoaWNoIGNhc2UsIHdlIHNob3VsZG4ndCB0cnkgdG8gbG9vayBmdXJ0aGVyIHVwIHRoZSBob3N0IGNoYWluXG4gIHZhciBhdHRhY2hlZCA9IGZhbHNlO1xuICBpZiAobm9kZVJvb3QgJiYgbm9kZVJvb3QgIT09IG5vZGUpIHtcbiAgICB2YXIgX25vZGVSb290SG9zdCwgX25vZGVSb290SG9zdCRvd25lckRvLCBfbm9kZSRvd25lckRvY3VtZW50O1xuICAgIGF0dGFjaGVkID0gISEoKF9ub2RlUm9vdEhvc3QgPSBub2RlUm9vdEhvc3QpICE9PSBudWxsICYmIF9ub2RlUm9vdEhvc3QgIT09IHZvaWQgMCAmJiAoX25vZGVSb290SG9zdCRvd25lckRvID0gX25vZGVSb290SG9zdC5vd25lckRvY3VtZW50KSAhPT0gbnVsbCAmJiBfbm9kZVJvb3RIb3N0JG93bmVyRG8gIT09IHZvaWQgMCAmJiBfbm9kZVJvb3RIb3N0JG93bmVyRG8uY29udGFpbnMobm9kZVJvb3RIb3N0KSB8fCBub2RlICE9PSBudWxsICYmIG5vZGUgIT09IHZvaWQgMCAmJiAoX25vZGUkb3duZXJEb2N1bWVudCA9IG5vZGUub3duZXJEb2N1bWVudCkgIT09IG51bGwgJiYgX25vZGUkb3duZXJEb2N1bWVudCAhPT0gdm9pZCAwICYmIF9ub2RlJG93bmVyRG9jdW1lbnQuY29udGFpbnMobm9kZSkpO1xuICAgIHdoaWxlICghYXR0YWNoZWQgJiYgbm9kZVJvb3RIb3N0KSB7XG4gICAgICB2YXIgX25vZGVSb290MiwgX25vZGVSb290SG9zdDIsIF9ub2RlUm9vdEhvc3QyJG93bmVyRDtcbiAgICAgIC8vIHNpbmNlIGl0J3Mgbm90IGF0dGFjaGVkIGFuZCB3ZSBoYXZlIGEgcm9vdCBob3N0LCB0aGUgbm9kZSBNVVNUIGJlIGluIGEgbmVzdGVkIHNoYWRvdyBET00sXG4gICAgICAvLyAgd2hpY2ggbWVhbnMgd2UgbmVlZCB0byBnZXQgdGhlIGhvc3QncyBob3N0IGFuZCBjaGVjayBpZiB0aGF0IHBhcmVudCBob3N0IGlzIGNvbnRhaW5lZFxuICAgICAgLy8gIGluIChpLmUuIGF0dGFjaGVkIHRvKSB0aGUgZG9jdW1lbnRcbiAgICAgIG5vZGVSb290ID0gZ2V0Um9vdE5vZGUobm9kZVJvb3RIb3N0KTtcbiAgICAgIG5vZGVSb290SG9zdCA9IChfbm9kZVJvb3QyID0gbm9kZVJvb3QpID09PSBudWxsIHx8IF9ub2RlUm9vdDIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9ub2RlUm9vdDIuaG9zdDtcbiAgICAgIGF0dGFjaGVkID0gISEoKF9ub2RlUm9vdEhvc3QyID0gbm9kZVJvb3RIb3N0KSAhPT0gbnVsbCAmJiBfbm9kZVJvb3RIb3N0MiAhPT0gdm9pZCAwICYmIChfbm9kZVJvb3RIb3N0MiRvd25lckQgPSBfbm9kZVJvb3RIb3N0Mi5vd25lckRvY3VtZW50KSAhPT0gbnVsbCAmJiBfbm9kZVJvb3RIb3N0MiRvd25lckQgIT09IHZvaWQgMCAmJiBfbm9kZVJvb3RIb3N0MiRvd25lckQuY29udGFpbnMobm9kZVJvb3RIb3N0KSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBhdHRhY2hlZDtcbn07XG52YXIgaXNaZXJvQXJlYSA9IGZ1bmN0aW9uIGlzWmVyb0FyZWEobm9kZSkge1xuICB2YXIgX25vZGUkZ2V0Qm91bmRpbmdDbGllID0gbm9kZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxcbiAgICB3aWR0aCA9IF9ub2RlJGdldEJvdW5kaW5nQ2xpZS53aWR0aCxcbiAgICBoZWlnaHQgPSBfbm9kZSRnZXRCb3VuZGluZ0NsaWUuaGVpZ2h0O1xuICByZXR1cm4gd2lkdGggPT09IDAgJiYgaGVpZ2h0ID09PSAwO1xufTtcbnZhciBpc0hpZGRlbiA9IGZ1bmN0aW9uIGlzSGlkZGVuKG5vZGUsIF9yZWYpIHtcbiAgdmFyIGRpc3BsYXlDaGVjayA9IF9yZWYuZGlzcGxheUNoZWNrLFxuICAgIGdldFNoYWRvd1Jvb3QgPSBfcmVmLmdldFNoYWRvd1Jvb3Q7XG4gIC8vIE5PVEU6IHZpc2liaWxpdHkgd2lsbCBiZSBgdW5kZWZpbmVkYCBpZiBub2RlIGlzIGRldGFjaGVkIGZyb20gdGhlIGRvY3VtZW50XG4gIC8vICAoc2VlIG5vdGVzIGFib3V0IHRoaXMgZnVydGhlciBkb3duKSwgd2hpY2ggbWVhbnMgd2Ugd2lsbCBjb25zaWRlciBpdCB2aXNpYmxlXG4gIC8vICAodGhpcyBpcyBsZWdhY3kgYmVoYXZpb3IgZnJvbSBhIHZlcnkgbG9uZyB3YXkgYmFjaylcbiAgLy8gTk9URTogd2UgY2hlY2sgdGhpcyByZWdhcmRsZXNzIG9mIGBkaXNwbGF5Q2hlY2s9XCJub25lXCJgIGJlY2F1c2UgdGhpcyBpcyBhXG4gIC8vICBfdmlzaWJpbGl0eV8gY2hlY2ssIG5vdCBhIF9kaXNwbGF5XyBjaGVja1xuICBpZiAoZ2V0Q29tcHV0ZWRTdHlsZShub2RlKS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIHZhciBpc0RpcmVjdFN1bW1hcnkgPSBtYXRjaGVzLmNhbGwobm9kZSwgJ2RldGFpbHM+c3VtbWFyeTpmaXJzdC1vZi10eXBlJyk7XG4gIHZhciBub2RlVW5kZXJEZXRhaWxzID0gaXNEaXJlY3RTdW1tYXJ5ID8gbm9kZS5wYXJlbnRFbGVtZW50IDogbm9kZTtcbiAgaWYgKG1hdGNoZXMuY2FsbChub2RlVW5kZXJEZXRhaWxzLCAnZGV0YWlsczpub3QoW29wZW5dKSAqJykpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAoIWRpc3BsYXlDaGVjayB8fCBkaXNwbGF5Q2hlY2sgPT09ICdmdWxsJyB8fCBkaXNwbGF5Q2hlY2sgPT09ICdsZWdhY3ktZnVsbCcpIHtcbiAgICBpZiAodHlwZW9mIGdldFNoYWRvd1Jvb3QgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIC8vIGZpZ3VyZSBvdXQgaWYgd2Ugc2hvdWxkIGNvbnNpZGVyIHRoZSBub2RlIHRvIGJlIGluIGFuIHVuZGlzY2xvc2VkIHNoYWRvdyBhbmQgdXNlIHRoZVxuICAgICAgLy8gICdub24temVyby1hcmVhJyBmYWxsYmFja1xuICAgICAgdmFyIG9yaWdpbmFsTm9kZSA9IG5vZGU7XG4gICAgICB3aGlsZSAobm9kZSkge1xuICAgICAgICB2YXIgcGFyZW50RWxlbWVudCA9IG5vZGUucGFyZW50RWxlbWVudDtcbiAgICAgICAgdmFyIHJvb3ROb2RlID0gZ2V0Um9vdE5vZGUobm9kZSk7XG4gICAgICAgIGlmIChwYXJlbnRFbGVtZW50ICYmICFwYXJlbnRFbGVtZW50LnNoYWRvd1Jvb3QgJiYgZ2V0U2hhZG93Um9vdChwYXJlbnRFbGVtZW50KSA9PT0gdHJ1ZSAvLyBjaGVjayBpZiB0aGVyZSdzIGFuIHVuZGlzY2xvc2VkIHNoYWRvd1xuICAgICAgICApIHtcbiAgICAgICAgICAvLyBub2RlIGhhcyBhbiB1bmRpc2Nsb3NlZCBzaGFkb3cgd2hpY2ggbWVhbnMgd2UgY2FuIG9ubHkgdHJlYXQgaXQgYXMgYSBibGFjayBib3gsIHNvIHdlXG4gICAgICAgICAgLy8gIGZhbGwgYmFjayB0byBhIG5vbi16ZXJvLWFyZWEgdGVzdFxuICAgICAgICAgIHJldHVybiBpc1plcm9BcmVhKG5vZGUpO1xuICAgICAgICB9IGVsc2UgaWYgKG5vZGUuYXNzaWduZWRTbG90KSB7XG4gICAgICAgICAgLy8gaXRlcmF0ZSB1cCBzbG90XG4gICAgICAgICAgbm9kZSA9IG5vZGUuYXNzaWduZWRTbG90O1xuICAgICAgICB9IGVsc2UgaWYgKCFwYXJlbnRFbGVtZW50ICYmIHJvb3ROb2RlICE9PSBub2RlLm93bmVyRG9jdW1lbnQpIHtcbiAgICAgICAgICAvLyBjcm9zcyBzaGFkb3cgYm91bmRhcnlcbiAgICAgICAgICBub2RlID0gcm9vdE5vZGUuaG9zdDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAvLyBpdGVyYXRlIHVwIG5vcm1hbCBkb21cbiAgICAgICAgICBub2RlID0gcGFyZW50RWxlbWVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbm9kZSA9IG9yaWdpbmFsTm9kZTtcbiAgICB9XG4gICAgLy8gZWxzZSwgYGdldFNoYWRvd1Jvb3RgIG1pZ2h0IGJlIHRydWUsIGJ1dCBhbGwgdGhhdCBkb2VzIGlzIGVuYWJsZSBzaGFkb3cgRE9NIHN1cHBvcnRcbiAgICAvLyAgKGkuZS4gaXQgZG9lcyBub3QgYWxzbyBwcmVzdW1lIHRoYXQgYWxsIG5vZGVzIG1pZ2h0IGhhdmUgdW5kaXNjbG9zZWQgc2hhZG93cyk7IG9yXG4gICAgLy8gIGl0IG1pZ2h0IGJlIGEgZmFsc3kgdmFsdWUsIHdoaWNoIG1lYW5zIHNoYWRvdyBET00gc3VwcG9ydCBpcyBkaXNhYmxlZFxuXG4gICAgLy8gU2luY2Ugd2UgZGlkbid0IGZpbmQgaXQgc2l0dGluZyBpbiBhbiB1bmRpc2Nsb3NlZCBzaGFkb3cgKG9yIHNoYWRvd3MgYXJlIGRpc2FibGVkKVxuICAgIC8vICBub3cgd2UgY2FuIGp1c3QgdGVzdCB0byBzZWUgaWYgaXQgd291bGQgbm9ybWFsbHkgYmUgdmlzaWJsZSBvciBub3QsIHByb3ZpZGVkIGl0J3NcbiAgICAvLyAgYXR0YWNoZWQgdG8gdGhlIG1haW4gZG9jdW1lbnQuXG4gICAgLy8gTk9URTogV2UgbXVzdCBjb25zaWRlciBjYXNlIHdoZXJlIG5vZGUgaXMgaW5zaWRlIGEgc2hhZG93IERPTSBhbmQgZ2l2ZW4gZGlyZWN0bHkgdG9cbiAgICAvLyAgYGlzVGFiYmFibGUoKWAgb3IgYGlzRm9jdXNhYmxlKClgIC0tIHJlZ2FyZGxlc3Mgb2YgYGdldFNoYWRvd1Jvb3RgIG9wdGlvbiBzZXR0aW5nLlxuXG4gICAgaWYgKGlzTm9kZUF0dGFjaGVkKG5vZGUpKSB7XG4gICAgICAvLyB0aGlzIHdvcmtzIHdoZXJldmVyIHRoZSBub2RlIGlzOiBpZiB0aGVyZSdzIGF0IGxlYXN0IG9uZSBjbGllbnQgcmVjdCwgaXQnc1xuICAgICAgLy8gIHNvbWVob3cgZGlzcGxheWVkOyBpdCBhbHNvIGNvdmVycyB0aGUgQ1NTICdkaXNwbGF5OiBjb250ZW50cycgY2FzZSB3aGVyZSB0aGVcbiAgICAgIC8vICBub2RlIGl0c2VsZiBpcyBoaWRkZW4gaW4gcGxhY2Ugb2YgaXRzIGNvbnRlbnRzOyBhbmQgdGhlcmUncyBubyBuZWVkIHRvIHNlYXJjaFxuICAgICAgLy8gIHVwIHRoZSBoaWVyYXJjaHkgZWl0aGVyXG4gICAgICByZXR1cm4gIW5vZGUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGg7XG4gICAgfVxuXG4gICAgLy8gRWxzZSwgdGhlIG5vZGUgaXNuJ3QgYXR0YWNoZWQgdG8gdGhlIGRvY3VtZW50LCB3aGljaCBtZWFucyB0aGUgYGdldENsaWVudFJlY3RzKClgXG4gICAgLy8gIEFQSSB3aWxsIF9fYWx3YXlzX18gcmV0dXJuIHplcm8gcmVjdHMgKHRoaXMgY2FuIGhhcHBlbiwgZm9yIGV4YW1wbGUsIGlmIFJlYWN0XG4gICAgLy8gIGlzIHVzZWQgdG8gcmVuZGVyIG5vZGVzIG9udG8gYSBkZXRhY2hlZCB0cmVlLCBhcyBjb25maXJtZWQgaW4gdGhpcyB0aHJlYWQ6XG4gICAgLy8gIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvOTExNyNpc3N1ZWNvbW1lbnQtMjg0MjI4ODcwKVxuICAgIC8vXG4gICAgLy8gSXQgYWxzbyBtZWFucyB0aGF0IGV2ZW4gd2luZG93LmdldENvbXB1dGVkU3R5bGUobm9kZSkuZGlzcGxheSB3aWxsIHJldHVybiBgdW5kZWZpbmVkYFxuICAgIC8vICBiZWNhdXNlIHN0eWxlcyBhcmUgb25seSBjb21wdXRlZCBmb3Igbm9kZXMgdGhhdCBhcmUgaW4gdGhlIGRvY3VtZW50LlxuICAgIC8vXG4gICAgLy8gTk9URTogVEhJUyBIQVMgQkVFTiBUSEUgQ0FTRSBGT1IgWUVBUlMuIEl0IGlzIG5vdCBuZXcsIG5vciBpcyBpdCBjYXVzZWQgYnkgdGFiYmFibGVcbiAgICAvLyAgc29tZWhvdy4gVGhvdWdoIGl0IHdhcyBuZXZlciBzdGF0ZWQgb2ZmaWNpYWxseSwgYW55b25lIHdobyBoYXMgZXZlciB1c2VkIHRhYmJhYmxlXG4gICAgLy8gIEFQSXMgb24gbm9kZXMgaW4gZGV0YWNoZWQgY29udGFpbmVycyBoYXMgYWN0dWFsbHkgaW1wbGljaXRseSB1c2VkIHRhYmJhYmxlIGluIHdoYXRcbiAgICAvLyAgd2FzIGxhdGVyIChhcyBvZiB2NS4yLjAgb24gQXByIDksIDIwMjEpIGNhbGxlZCBgZGlzcGxheUNoZWNrPVwibm9uZVwiYCBtb2RlIC0tIGVzc2VudGlhbGx5XG4gICAgLy8gIGNvbnNpZGVyaW5nIF9fZXZlcnl0aGluZ19fIHRvIGJlIHZpc2libGUgYmVjYXVzZSBvZiB0aGUgaW5uYWJpbGl0eSB0byBkZXRlcm1pbmUgc3R5bGVzLlxuICAgIC8vXG4gICAgLy8gdjYuMC4wOiBBcyBvZiB0aGlzIG1ham9yIHJlbGVhc2UsIHRoZSBkZWZhdWx0ICdmdWxsJyBvcHRpb24gX19ubyBsb25nZXIgdHJlYXRzIGRldGFjaGVkXG4gICAgLy8gIG5vZGVzIGFzIHZpc2libGUgd2l0aCB0aGUgJ25vbmUnIGZhbGxiYWNrLl9fXG4gICAgaWYgKGRpc3BsYXlDaGVjayAhPT0gJ2xlZ2FjeS1mdWxsJykge1xuICAgICAgcmV0dXJuIHRydWU7IC8vIGhpZGRlblxuICAgIH1cbiAgICAvLyBlbHNlLCBmYWxsYmFjayB0byAnbm9uZScgbW9kZSBhbmQgY29uc2lkZXIgdGhlIG5vZGUgdmlzaWJsZVxuICB9IGVsc2UgaWYgKGRpc3BsYXlDaGVjayA9PT0gJ25vbi16ZXJvLWFyZWEnKSB7XG4gICAgLy8gTk9URTogRXZlbiB0aG91Z2ggdGhpcyB0ZXN0cyB0aGF0IHRoZSBub2RlJ3MgY2xpZW50IHJlY3QgaXMgbm9uLXplcm8gdG8gZGV0ZXJtaW5lXG4gICAgLy8gIHdoZXRoZXIgaXQncyBkaXNwbGF5ZWQsIGFuZCB0aGF0IGEgZGV0YWNoZWQgbm9kZSB3aWxsIF9fYWx3YXlzX18gaGF2ZSBhIHplcm8tYXJlYVxuICAgIC8vICBjbGllbnQgcmVjdCwgd2UgZG9uJ3Qgc3BlY2lhbC1jYXNlIGZvciB3aGV0aGVyIHRoZSBub2RlIGlzIGF0dGFjaGVkIG9yIG5vdC4gSW5cbiAgICAvLyAgdGhpcyBtb2RlLCB3ZSBkbyB3YW50IHRvIGNvbnNpZGVyIG5vZGVzIHRoYXQgaGF2ZSBhIHplcm8gYXJlYSB0byBiZSBoaWRkZW4gYXQgYWxsXG4gICAgLy8gIHRpbWVzLCBhbmQgdGhhdCBpbmNsdWRlcyBhdHRhY2hlZCBvciBub3QuXG4gICAgcmV0dXJuIGlzWmVyb0FyZWEobm9kZSk7XG4gIH1cblxuICAvLyB2aXNpYmxlLCBhcyBmYXIgYXMgd2UgY2FuIHRlbGwsIG9yIHBlciBjdXJyZW50IGBkaXNwbGF5Q2hlY2s9bm9uZWAgbW9kZSwgd2UgYXNzdW1lXG4gIC8vICBpdCdzIHZpc2libGVcbiAgcmV0dXJuIGZhbHNlO1xufTtcblxuLy8gZm9ybSBmaWVsZHMgKG5lc3RlZCkgaW5zaWRlIGEgZGlzYWJsZWQgZmllbGRzZXQgYXJlIG5vdCBmb2N1c2FibGUvdGFiYmFibGVcbi8vICB1bmxlc3MgdGhleSBhcmUgaW4gdGhlIF9maXJzdF8gPGxlZ2VuZD4gZWxlbWVudCBvZiB0aGUgdG9wLW1vc3QgZGlzYWJsZWRcbi8vICBmaWVsZHNldFxudmFyIGlzRGlzYWJsZWRGcm9tRmllbGRzZXQgPSBmdW5jdGlvbiBpc0Rpc2FibGVkRnJvbUZpZWxkc2V0KG5vZGUpIHtcbiAgaWYgKC9eKElOUFVUfEJVVFRPTnxTRUxFQ1R8VEVYVEFSRUEpJC8udGVzdChub2RlLnRhZ05hbWUpKSB7XG4gICAgdmFyIHBhcmVudE5vZGUgPSBub2RlLnBhcmVudEVsZW1lbnQ7XG4gICAgLy8gY2hlY2sgaWYgYG5vZGVgIGlzIGNvbnRhaW5lZCBpbiBhIGRpc2FibGVkIDxmaWVsZHNldD5cbiAgICB3aGlsZSAocGFyZW50Tm9kZSkge1xuICAgICAgaWYgKHBhcmVudE5vZGUudGFnTmFtZSA9PT0gJ0ZJRUxEU0VUJyAmJiBwYXJlbnROb2RlLmRpc2FibGVkKSB7XG4gICAgICAgIC8vIGxvb2sgZm9yIHRoZSBmaXJzdCA8bGVnZW5kPiBhbW9uZyB0aGUgY2hpbGRyZW4gb2YgdGhlIGRpc2FibGVkIDxmaWVsZHNldD5cbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwYXJlbnROb2RlLmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgdmFyIGNoaWxkID0gcGFyZW50Tm9kZS5jaGlsZHJlbi5pdGVtKGkpO1xuICAgICAgICAgIC8vIHdoZW4gdGhlIGZpcnN0IDxsZWdlbmQ+IChpbiBkb2N1bWVudCBvcmRlcikgaXMgZm91bmRcbiAgICAgICAgICBpZiAoY2hpbGQudGFnTmFtZSA9PT0gJ0xFR0VORCcpIHtcbiAgICAgICAgICAgIC8vIGlmIGl0cyBwYXJlbnQgPGZpZWxkc2V0PiBpcyBub3QgbmVzdGVkIGluIGFub3RoZXIgZGlzYWJsZWQgPGZpZWxkc2V0PixcbiAgICAgICAgICAgIC8vIHJldHVybiB3aGV0aGVyIGBub2RlYCBpcyBhIGRlc2NlbmRhbnQgb2YgaXRzIGZpcnN0IDxsZWdlbmQ+XG4gICAgICAgICAgICByZXR1cm4gbWF0Y2hlcy5jYWxsKHBhcmVudE5vZGUsICdmaWVsZHNldFtkaXNhYmxlZF0gKicpID8gdHJ1ZSA6ICFjaGlsZC5jb250YWlucyhub2RlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gdGhlIGRpc2FibGVkIDxmaWVsZHNldD4gY29udGFpbmluZyBgbm9kZWAgaGFzIG5vIDxsZWdlbmQ+XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgcGFyZW50Tm9kZSA9IHBhcmVudE5vZGUucGFyZW50RWxlbWVudDtcbiAgICB9XG4gIH1cblxuICAvLyBlbHNlLCBub2RlJ3MgdGFiYmFibGUvZm9jdXNhYmxlIHN0YXRlIHNob3VsZCBub3QgYmUgYWZmZWN0ZWQgYnkgYSBmaWVsZHNldCdzXG4gIC8vICBlbmFibGVkL2Rpc2FibGVkIHN0YXRlXG4gIHJldHVybiBmYWxzZTtcbn07XG52YXIgaXNOb2RlTWF0Y2hpbmdTZWxlY3RvckZvY3VzYWJsZSA9IGZ1bmN0aW9uIGlzTm9kZU1hdGNoaW5nU2VsZWN0b3JGb2N1c2FibGUob3B0aW9ucywgbm9kZSkge1xuICBpZiAobm9kZS5kaXNhYmxlZCB8fFxuICAvLyB3ZSBtdXN0IGRvIGFuIGluZXJ0IGxvb2sgdXAgdG8gZmlsdGVyIG91dCBhbnkgZWxlbWVudHMgaW5zaWRlIGFuIGluZXJ0IGFuY2VzdG9yXG4gIC8vICBiZWNhdXNlIHdlJ3JlIGxpbWl0ZWQgaW4gdGhlIHR5cGUgb2Ygc2VsZWN0b3JzIHdlIGNhbiB1c2UgaW4gSlNEb20gKHNlZSByZWxhdGVkXG4gIC8vICBub3RlIHJlbGF0ZWQgdG8gYGNhbmRpZGF0ZVNlbGVjdG9yc2ApXG4gIGlzSW5lcnQobm9kZSkgfHwgaXNIaWRkZW5JbnB1dChub2RlKSB8fCBpc0hpZGRlbihub2RlLCBvcHRpb25zKSB8fFxuICAvLyBGb3IgYSBkZXRhaWxzIGVsZW1lbnQgd2l0aCBhIHN1bW1hcnksIHRoZSBzdW1tYXJ5IGVsZW1lbnQgZ2V0cyB0aGUgZm9jdXNcbiAgaXNEZXRhaWxzV2l0aFN1bW1hcnkobm9kZSkgfHwgaXNEaXNhYmxlZEZyb21GaWVsZHNldChub2RlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn07XG52YXIgaXNOb2RlTWF0Y2hpbmdTZWxlY3RvclRhYmJhYmxlID0gZnVuY3Rpb24gaXNOb2RlTWF0Y2hpbmdTZWxlY3RvclRhYmJhYmxlKG9wdGlvbnMsIG5vZGUpIHtcbiAgaWYgKGlzTm9uVGFiYmFibGVSYWRpbyhub2RlKSB8fCBnZXRUYWJJbmRleChub2RlKSA8IDAgfHwgIWlzTm9kZU1hdGNoaW5nU2VsZWN0b3JGb2N1c2FibGUob3B0aW9ucywgbm9kZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59O1xudmFyIGlzVmFsaWRTaGFkb3dSb290VGFiYmFibGUgPSBmdW5jdGlvbiBpc1ZhbGlkU2hhZG93Um9vdFRhYmJhYmxlKHNoYWRvd0hvc3ROb2RlKSB7XG4gIHZhciB0YWJJbmRleCA9IHBhcnNlSW50KHNoYWRvd0hvc3ROb2RlLmdldEF0dHJpYnV0ZSgndGFiaW5kZXgnKSwgMTApO1xuICBpZiAoaXNOYU4odGFiSW5kZXgpIHx8IHRhYkluZGV4ID49IDApIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBJZiBhIGN1c3RvbSBlbGVtZW50IGhhcyBhbiBleHBsaWNpdCBuZWdhdGl2ZSB0YWJpbmRleCxcbiAgLy8gYnJvd3NlcnMgd2lsbCBub3QgYWxsb3cgdGFiIHRhcmdldGluZyBzYWlkIGVsZW1lbnQncyBjaGlsZHJlbi5cbiAgcmV0dXJuIGZhbHNlO1xufTtcblxuLyoqXG4gKiBAcGFyYW0ge0FycmF5LjxFbGVtZW50fENhbmRpZGF0ZVNjb3BlPn0gY2FuZGlkYXRlc1xuICogQHJldHVybnMgRWxlbWVudFtdXG4gKi9cbnZhciBzb3J0QnlPcmRlciA9IGZ1bmN0aW9uIHNvcnRCeU9yZGVyKGNhbmRpZGF0ZXMpIHtcbiAgdmFyIHJlZ3VsYXJUYWJiYWJsZXMgPSBbXTtcbiAgdmFyIG9yZGVyZWRUYWJiYWJsZXMgPSBbXTtcbiAgY2FuZGlkYXRlcy5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpKSB7XG4gICAgdmFyIGlzU2NvcGUgPSAhIWl0ZW0uc2NvcGVQYXJlbnQ7XG4gICAgdmFyIGVsZW1lbnQgPSBpc1Njb3BlID8gaXRlbS5zY29wZVBhcmVudCA6IGl0ZW07XG4gICAgdmFyIGNhbmRpZGF0ZVRhYmluZGV4ID0gZ2V0U29ydE9yZGVyVGFiSW5kZXgoZWxlbWVudCwgaXNTY29wZSk7XG4gICAgdmFyIGVsZW1lbnRzID0gaXNTY29wZSA/IHNvcnRCeU9yZGVyKGl0ZW0uY2FuZGlkYXRlcykgOiBlbGVtZW50O1xuICAgIGlmIChjYW5kaWRhdGVUYWJpbmRleCA9PT0gMCkge1xuICAgICAgaXNTY29wZSA/IHJlZ3VsYXJUYWJiYWJsZXMucHVzaC5hcHBseShyZWd1bGFyVGFiYmFibGVzLCBlbGVtZW50cykgOiByZWd1bGFyVGFiYmFibGVzLnB1c2goZWxlbWVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG9yZGVyZWRUYWJiYWJsZXMucHVzaCh7XG4gICAgICAgIGRvY3VtZW50T3JkZXI6IGksXG4gICAgICAgIHRhYkluZGV4OiBjYW5kaWRhdGVUYWJpbmRleCxcbiAgICAgICAgaXRlbTogaXRlbSxcbiAgICAgICAgaXNTY29wZTogaXNTY29wZSxcbiAgICAgICAgY29udGVudDogZWxlbWVudHNcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG4gIHJldHVybiBvcmRlcmVkVGFiYmFibGVzLnNvcnQoc29ydE9yZGVyZWRUYWJiYWJsZXMpLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBzb3J0YWJsZSkge1xuICAgIHNvcnRhYmxlLmlzU2NvcGUgPyBhY2MucHVzaC5hcHBseShhY2MsIHNvcnRhYmxlLmNvbnRlbnQpIDogYWNjLnB1c2goc29ydGFibGUuY29udGVudCk7XG4gICAgcmV0dXJuIGFjYztcbiAgfSwgW10pLmNvbmNhdChyZWd1bGFyVGFiYmFibGVzKTtcbn07XG52YXIgdGFiYmFibGUgPSBmdW5jdGlvbiB0YWJiYWJsZShjb250YWluZXIsIG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIHZhciBjYW5kaWRhdGVzO1xuICBpZiAob3B0aW9ucy5nZXRTaGFkb3dSb290KSB7XG4gICAgY2FuZGlkYXRlcyA9IGdldENhbmRpZGF0ZXNJdGVyYXRpdmVseShbY29udGFpbmVyXSwgb3B0aW9ucy5pbmNsdWRlQ29udGFpbmVyLCB7XG4gICAgICBmaWx0ZXI6IGlzTm9kZU1hdGNoaW5nU2VsZWN0b3JUYWJiYWJsZS5iaW5kKG51bGwsIG9wdGlvbnMpLFxuICAgICAgZmxhdHRlbjogZmFsc2UsXG4gICAgICBnZXRTaGFkb3dSb290OiBvcHRpb25zLmdldFNoYWRvd1Jvb3QsXG4gICAgICBzaGFkb3dSb290RmlsdGVyOiBpc1ZhbGlkU2hhZG93Um9vdFRhYmJhYmxlXG4gICAgfSk7XG4gIH0gZWxzZSB7XG4gICAgY2FuZGlkYXRlcyA9IGdldENhbmRpZGF0ZXMoY29udGFpbmVyLCBvcHRpb25zLmluY2x1ZGVDb250YWluZXIsIGlzTm9kZU1hdGNoaW5nU2VsZWN0b3JUYWJiYWJsZS5iaW5kKG51bGwsIG9wdGlvbnMpKTtcbiAgfVxuICByZXR1cm4gc29ydEJ5T3JkZXIoY2FuZGlkYXRlcyk7XG59O1xudmFyIGZvY3VzYWJsZSA9IGZ1bmN0aW9uIGZvY3VzYWJsZShjb250YWluZXIsIG9wdGlvbnMpIHtcbiAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG4gIHZhciBjYW5kaWRhdGVzO1xuICBpZiAob3B0aW9ucy5nZXRTaGFkb3dSb290KSB7XG4gICAgY2FuZGlkYXRlcyA9IGdldENhbmRpZGF0ZXNJdGVyYXRpdmVseShbY29udGFpbmVyXSwgb3B0aW9ucy5pbmNsdWRlQ29udGFpbmVyLCB7XG4gICAgICBmaWx0ZXI6IGlzTm9kZU1hdGNoaW5nU2VsZWN0b3JGb2N1c2FibGUuYmluZChudWxsLCBvcHRpb25zKSxcbiAgICAgIGZsYXR0ZW46IHRydWUsXG4gICAgICBnZXRTaGFkb3dSb290OiBvcHRpb25zLmdldFNoYWRvd1Jvb3RcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBjYW5kaWRhdGVzID0gZ2V0Q2FuZGlkYXRlcyhjb250YWluZXIsIG9wdGlvbnMuaW5jbHVkZUNvbnRhaW5lciwgaXNOb2RlTWF0Y2hpbmdTZWxlY3RvckZvY3VzYWJsZS5iaW5kKG51bGwsIG9wdGlvbnMpKTtcbiAgfVxuICByZXR1cm4gY2FuZGlkYXRlcztcbn07XG52YXIgaXNUYWJiYWJsZSA9IGZ1bmN0aW9uIGlzVGFiYmFibGUobm9kZSwgb3B0aW9ucykge1xuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgaWYgKCFub2RlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdObyBub2RlIHByb3ZpZGVkJyk7XG4gIH1cbiAgaWYgKG1hdGNoZXMuY2FsbChub2RlLCBjYW5kaWRhdGVTZWxlY3RvcikgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiBpc05vZGVNYXRjaGluZ1NlbGVjdG9yVGFiYmFibGUob3B0aW9ucywgbm9kZSk7XG59O1xudmFyIGZvY3VzYWJsZUNhbmRpZGF0ZVNlbGVjdG9yID0gLyogI19fUFVSRV9fICovY2FuZGlkYXRlU2VsZWN0b3JzLmNvbmNhdCgnaWZyYW1lJykuam9pbignLCcpO1xudmFyIGlzRm9jdXNhYmxlID0gZnVuY3Rpb24gaXNGb2N1c2FibGUobm9kZSwgb3B0aW9ucykge1xuICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcbiAgaWYgKCFub2RlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdObyBub2RlIHByb3ZpZGVkJyk7XG4gIH1cbiAgaWYgKG1hdGNoZXMuY2FsbChub2RlLCBmb2N1c2FibGVDYW5kaWRhdGVTZWxlY3RvcikgPT09IGZhbHNlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiBpc05vZGVNYXRjaGluZ1NlbGVjdG9yRm9jdXNhYmxlKG9wdGlvbnMsIG5vZGUpO1xufTtcblxuZXhwb3J0IHsgZm9jdXNhYmxlLCBnZXRUYWJJbmRleCwgaXNGb2N1c2FibGUsIGlzVGFiYmFibGUsIHRhYmJhYmxlIH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1pbmRleC5lc20uanMubWFwXG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/tabbable/dist/index.esm.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/images/qr-code.svg":
|
||
/*!********************************!*\
|
||
!*** ./src/images/qr-code.svg ***!
|
||
\********************************/
|
||
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\"src\":\"/_next/static/media/qr-code.9c4a9a95.svg\",\"height\":80,\"width\":80,\"blurWidth\":0,\"blurHeight\":0});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9pbWFnZXMvcXItY29kZS5zdmciLCJtYXBwaW5ncyI6IjtBQUFBLCtEQUFlLENBQUMscUdBQXFHIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9pbWFnZXMvcXItY29kZS5zdmc/NzYyMiJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB7XCJzcmNcIjpcIi9fbmV4dC9zdGF0aWMvbWVkaWEvcXItY29kZS45YzRhOWE5NS5zdmdcIixcImhlaWdodFwiOjgwLFwid2lkdGhcIjo4MCxcImJsdXJXaWR0aFwiOjAsXCJibHVySGVpZ2h0XCI6MH07Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/images/qr-code.svg\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/add-locale.js":
|
||
/*!*****************************************************!*\
|
||
!*** ./node_modules/next/dist/client/add-locale.js ***!
|
||
\*****************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"addLocale\", ({\n enumerable: true,\n get: function() {\n return addLocale;\n }\n}));\nconst _normalizetrailingslash = __webpack_require__(/*! ./normalize-trailing-slash */ \"(app-pages-browser)/./node_modules/next/dist/client/normalize-trailing-slash.js\");\nconst addLocale = function(path) {\n for(var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){\n args[_key - 1] = arguments[_key];\n }\n if (false) {}\n return path;\n};\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=add-locale.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2FkZC1sb2NhbGUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs2Q0FHYUE7OztlQUFBQTs7O29EQUY4QjtBQUVwQyxNQUFNQSxZQUF1QixTQUFDQyxJQUFBQTtxQ0FBU0MsT0FBQUEsSUFBQUEsTUFBQUEsT0FBQUEsSUFBQUEsT0FBQUEsSUFBQUEsSUFBQUEsT0FBQUEsR0FBQUEsT0FBQUEsTUFBQUEsT0FBQUE7UUFBQUEsSUFBQUEsQ0FBQUEsT0FBQUEsRUFBQUEsR0FBQUEsU0FBQUEsQ0FBQUEsS0FBQUE7O0lBQzVDLElBQUlDLEtBQStCLEVBQUUsRUFJckM7SUFDQSxPQUFPRjtBQUNUIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9zcmMvY2xpZW50L2FkZC1sb2NhbGUudHM/ZmFhZSJdLCJuYW1lcyI6WyJhZGRMb2NhbGUiLCJwYXRoIiwiYXJncyIsInByb2Nlc3MiLCJlbnYiLCJfX05FWFRfSTE4Tl9TVVBQT1JUIiwibm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2giLCJyZXF1aXJlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/add-locale.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/get-domain-locale.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/get-domain-locale.js ***!
|
||
\************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"getDomainLocale\", ({\n enumerable: true,\n get: function() {\n return getDomainLocale;\n }\n}));\nconst _normalizetrailingslash = __webpack_require__(/*! ./normalize-trailing-slash */ \"(app-pages-browser)/./node_modules/next/dist/client/normalize-trailing-slash.js\");\nconst basePath = false || \"\";\nfunction getDomainLocale(path, locale, locales, domainLocales) {\n if (false) {} else {\n return false;\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=get-domain-locale.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2dldC1kb21haW4tbG9jYWxlLmpzIiwibWFwcGluZ3MiOiI7Ozs7bURBT2dCQTs7O2VBQUFBOzs7b0RBSjJCO0FBRTNDLE1BQU1DLFdBQVdDLE1BQW1DLElBQWU7QUFFNUQsU0FBU0YsZ0JBQ2RLLElBQVksRUFDWkMsTUFBdUIsRUFDdkJDLE9BQWtCLEVBQ2xCQyxhQUE4QjtJQUU5QixJQUFJTixLQUErQixFQUFFLEVBZ0JyQyxNQUFPO1FBQ0wsT0FBTztJQUNUO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uL3NyYy9jbGllbnQvZ2V0LWRvbWFpbi1sb2NhbGUudHM/MWQ0ZSJdLCJuYW1lcyI6WyJnZXREb21haW5Mb2NhbGUiLCJiYXNlUGF0aCIsInByb2Nlc3MiLCJlbnYiLCJfX05FWFRfUk9VVEVSX0JBU0VQQVRIIiwicGF0aCIsImxvY2FsZSIsImxvY2FsZXMiLCJkb21haW5Mb2NhbGVzIiwiX19ORVhUX0kxOE5fU1VQUE9SVCIsIm5vcm1hbGl6ZUxvY2FsZVBhdGgiLCJyZXF1aXJlIiwiZGV0ZWN0RG9tYWluTG9jYWxlIiwidGFyZ2V0IiwiZGV0ZWN0ZWRMb2NhbGUiLCJkb21haW4iLCJ1bmRlZmluZWQiLCJwcm90byIsImh0dHAiLCJmaW5hbExvY2FsZSIsImRlZmF1bHRMb2NhbGUiLCJub3JtYWxpemVQYXRoVHJhaWxpbmdTbGFzaCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/get-domain-locale.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/image-component.js":
|
||
/*!**********************************************************!*\
|
||
!*** ./node_modules/next/dist/client/image-component.js ***!
|
||
\**********************************************************/
|
||
/***/ (function(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, \"Image\", ({\n enumerable: true,\n get: function() {\n return Image;\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 _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 _head = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ../shared/lib/head */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/head.js\"));\nconst _getimgprops = __webpack_require__(/*! ../shared/lib/get-img-props */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/get-img-props.js\");\nconst _imageconfig = __webpack_require__(/*! ../shared/lib/image-config */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config.js\");\nconst _imageconfigcontextsharedruntime = __webpack_require__(/*! ../shared/lib/image-config-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js\");\nconst _warnonce = __webpack_require__(/*! ../shared/lib/utils/warn-once */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/warn-once.js\");\nconst _routercontextsharedruntime = __webpack_require__(/*! ../shared/lib/router-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router-context.shared-runtime.js\");\nconst _imageloader = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! next/dist/shared/lib/image-loader */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-loader.js\"));\n// This is replaced by webpack define plugin\nconst configEnv = {\"deviceSizes\":[640,750,828,1080,1200,1920,2048,3840],\"imageSizes\":[16,32,48,64,96,128,256,384],\"path\":\"/_next/image\",\"loader\":\"default\",\"dangerouslyAllowSVG\":false,\"unoptimized\":false,\"domains\":[],\"remotePatterns\":[]};\nif (typeof window === \"undefined\") {\n globalThis.__NEXT_IMAGE_IMPORTED = true;\n}\n// See https://stackoverflow.com/q/39777833/266535 for why we use this ref\n// handler instead of the img's onLoad attribute.\nfunction handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput) {\n const src = img == null ? void 0 : img.src;\n if (!img || img[\"data-loaded-src\"] === src) {\n return;\n }\n img[\"data-loaded-src\"] = src;\n const p = \"decode\" in img ? img.decode() : Promise.resolve();\n p.catch(()=>{}).then(()=>{\n if (!img.parentElement || !img.isConnected) {\n // Exit early in case of race condition:\n // - onload() is called\n // - decode() is called but incomplete\n // - unmount is called\n // - decode() completes\n return;\n }\n if (placeholder !== \"empty\") {\n setBlurComplete(true);\n }\n if (onLoadRef == null ? void 0 : onLoadRef.current) {\n // Since we don't have the SyntheticEvent here,\n // we must create one with the same shape.\n // See https://reactjs.org/docs/events.html\n const event = new Event(\"load\");\n Object.defineProperty(event, \"target\", {\n writable: false,\n value: img\n });\n let prevented = false;\n let stopped = false;\n onLoadRef.current({\n ...event,\n nativeEvent: event,\n currentTarget: img,\n target: img,\n isDefaultPrevented: ()=>prevented,\n isPropagationStopped: ()=>stopped,\n persist: ()=>{},\n preventDefault: ()=>{\n prevented = true;\n event.preventDefault();\n },\n stopPropagation: ()=>{\n stopped = true;\n event.stopPropagation();\n }\n });\n }\n if (onLoadingCompleteRef == null ? void 0 : onLoadingCompleteRef.current) {\n onLoadingCompleteRef.current(img);\n }\n if (true) {\n const origSrc = new URL(src, \"http://n\").searchParams.get(\"url\") || src;\n if (img.getAttribute(\"data-nimg\") === \"fill\") {\n if (!unoptimized && (!sizesInput || sizesInput === \"100vw\")) {\n let widthViewportRatio = img.getBoundingClientRect().width / window.innerWidth;\n if (widthViewportRatio < 0.6) {\n if (sizesInput === \"100vw\") {\n (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has \"fill\" prop and \"sizes\" prop of \"100vw\", but image is not rendered at full viewport width. Please adjust \"sizes\" to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes');\n } else {\n (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has \"fill\" but is missing \"sizes\" prop. Please add it to improve page performance. Read more: https://nextjs.org/docs/api-reference/next/image#sizes');\n }\n }\n }\n if (img.parentElement) {\n const { position } = window.getComputedStyle(img.parentElement);\n const valid = [\n \"absolute\",\n \"fixed\",\n \"relative\"\n ];\n if (!valid.includes(position)) {\n (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has \"fill\" and parent element with invalid \"position\". Provided \"' + position + '\" should be one of ' + valid.map(String).join(\",\") + \".\");\n }\n }\n if (img.height === 0) {\n (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has \"fill\" and a height value of 0. This is likely because the parent element of the image has not been styled to have a set height.');\n }\n }\n const heightModified = img.height.toString() !== img.getAttribute(\"height\");\n const widthModified = img.width.toString() !== img.getAttribute(\"width\");\n if (heightModified && !widthModified || !heightModified && widthModified) {\n (0, _warnonce.warnOnce)('Image with src \"' + origSrc + '\" has either width or height modified, but not the other. If you use CSS to change the size of your image, also include the styles \\'width: \"auto\"\\' or \\'height: \"auto\"\\' to maintain the aspect ratio.');\n }\n }\n });\n}\nfunction getDynamicProps(fetchPriority) {\n const [majorStr, minorStr] = _react.version.split(\".\", 2);\n const major = parseInt(majorStr, 10);\n const minor = parseInt(minorStr, 10);\n if (major > 18 || major === 18 && minor >= 3) {\n // In React 18.3.0 or newer, we must use camelCase\n // prop to avoid \"Warning: Invalid DOM property\".\n // See https://github.com/facebook/react/pull/25927\n return {\n fetchPriority\n };\n }\n // In React 18.2.0 or older, we must use lowercase prop\n // to avoid \"Warning: Invalid DOM property\".\n return {\n fetchpriority: fetchPriority\n };\n}\nconst ImageElement = /*#__PURE__*/ (0, _react.forwardRef)((param, forwardedRef)=>{\n let { src, srcSet, sizes, height, width, decoding, className, style, fetchPriority, placeholder, loading, unoptimized, fill, onLoadRef, onLoadingCompleteRef, setBlurComplete, setShowAltText, sizesInput, onLoad, onError, ...rest } = param;\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(\"img\", {\n ...rest,\n ...getDynamicProps(fetchPriority),\n // It's intended to keep `loading` before `src` because React updates\n // props in order which causes Safari/Firefox to not lazy load properly.\n // See https://github.com/facebook/react/issues/25883\n loading: loading,\n width: width,\n height: height,\n decoding: decoding,\n \"data-nimg\": fill ? \"fill\" : \"1\",\n className: className,\n style: style,\n // It's intended to keep `src` the last attribute because React updates\n // attributes in order. If we keep `src` the first one, Safari will\n // immediately start to fetch `src`, before `sizes` and `srcSet` are even\n // updated by React. That causes multiple unnecessary requests if `srcSet`\n // and `sizes` are defined.\n // This bug cannot be reproduced in Chrome or Firefox.\n sizes: sizes,\n srcSet: srcSet,\n src: src,\n ref: (0, _react.useCallback)((img)=>{\n if (forwardedRef) {\n if (typeof forwardedRef === \"function\") forwardedRef(img);\n else if (typeof forwardedRef === \"object\") {\n // @ts-ignore - .current is read only it's usually assigned by react internally\n forwardedRef.current = img;\n }\n }\n if (!img) {\n return;\n }\n if (onError) {\n // If the image has an error before react hydrates, then the error is lost.\n // The workaround is to wait until the image is mounted which is after hydration,\n // then we set the src again to trigger the error handler (if there was an error).\n // eslint-disable-next-line no-self-assign\n img.src = img.src;\n }\n if (true) {\n if (!src) {\n console.error('Image is missing required \"src\" property:', img);\n }\n if (img.getAttribute(\"alt\") === null) {\n console.error('Image is missing required \"alt\" property. Please add Alternative Text to describe the image for screen readers and search engines.');\n }\n }\n if (img.complete) {\n handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);\n }\n }, [\n src,\n placeholder,\n onLoadRef,\n onLoadingCompleteRef,\n setBlurComplete,\n onError,\n unoptimized,\n sizesInput,\n forwardedRef\n ]),\n onLoad: (event)=>{\n const img = event.currentTarget;\n handleLoading(img, placeholder, onLoadRef, onLoadingCompleteRef, setBlurComplete, unoptimized, sizesInput);\n },\n onError: (event)=>{\n // if the real image fails to load, this will ensure \"alt\" is visible\n setShowAltText(true);\n if (placeholder !== \"empty\") {\n // If the real image fails to load, this will still remove the placeholder.\n setBlurComplete(true);\n }\n if (onError) {\n onError(event);\n }\n }\n });\n});\nfunction ImagePreload(param) {\n let { isAppRouter, imgAttributes } = param;\n const opts = {\n as: \"image\",\n imageSrcSet: imgAttributes.srcSet,\n imageSizes: imgAttributes.sizes,\n crossOrigin: imgAttributes.crossOrigin,\n referrerPolicy: imgAttributes.referrerPolicy,\n ...getDynamicProps(imgAttributes.fetchPriority)\n };\n if (isAppRouter && _reactdom.default.preload) {\n // See https://github.com/facebook/react/pull/26940\n _reactdom.default.preload(imgAttributes.src, opts);\n return null;\n }\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_head.default, {\n children: /*#__PURE__*/ (0, _jsxruntime.jsx)(\"link\", {\n rel: \"preload\",\n // Note how we omit the `href` attribute, as it would only be relevant\n // for browsers that do not support `imagesrcset`, and in those cases\n // it would cause the incorrect image to be preloaded.\n //\n // https://html.spec.whatwg.org/multipage/semantics.html#attr-link-imagesrcset\n href: imgAttributes.srcSet ? undefined : imgAttributes.src,\n ...opts\n }, \"__nimg-\" + imgAttributes.src + imgAttributes.srcSet + imgAttributes.sizes)\n });\n}\n_c = ImagePreload;\nconst Image = /*#__PURE__*/ (0, _react.forwardRef)((props, forwardedRef)=>{\n const pagesRouter = (0, _react.useContext)(_routercontextsharedruntime.RouterContext);\n // We're in the app directory if there is no pages router.\n const isAppRouter = !pagesRouter;\n const configContext = (0, _react.useContext)(_imageconfigcontextsharedruntime.ImageConfigContext);\n const config = (0, _react.useMemo)(()=>{\n const c = configEnv || configContext || _imageconfig.imageConfigDefault;\n const allSizes = [\n ...c.deviceSizes,\n ...c.imageSizes\n ].sort((a, b)=>a - b);\n const deviceSizes = c.deviceSizes.sort((a, b)=>a - b);\n return {\n ...c,\n allSizes,\n deviceSizes\n };\n }, [\n configContext\n ]);\n const { onLoad, onLoadingComplete } = props;\n const onLoadRef = (0, _react.useRef)(onLoad);\n (0, _react.useEffect)(()=>{\n onLoadRef.current = onLoad;\n }, [\n onLoad\n ]);\n const onLoadingCompleteRef = (0, _react.useRef)(onLoadingComplete);\n (0, _react.useEffect)(()=>{\n onLoadingCompleteRef.current = onLoadingComplete;\n }, [\n onLoadingComplete\n ]);\n const [blurComplete, setBlurComplete] = (0, _react.useState)(false);\n const [showAltText, setShowAltText] = (0, _react.useState)(false);\n const { props: imgAttributes, meta: imgMeta } = (0, _getimgprops.getImgProps)(props, {\n defaultLoader: _imageloader.default,\n imgConf: config,\n blurComplete,\n showAltText\n });\n return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {\n children: [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(ImageElement, {\n ...imgAttributes,\n unoptimized: imgMeta.unoptimized,\n placeholder: imgMeta.placeholder,\n fill: imgMeta.fill,\n onLoadRef: onLoadRef,\n onLoadingCompleteRef: onLoadingCompleteRef,\n setBlurComplete: setBlurComplete,\n setShowAltText: setShowAltText,\n sizesInput: props.sizes,\n ref: forwardedRef\n }),\n imgMeta.priority ? /*#__PURE__*/ (0, _jsxruntime.jsx)(ImagePreload, {\n isAppRouter: isAppRouter,\n imgAttributes: imgAttributes\n }) : null\n ]\n });\n});\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=image-component.js.map\nvar _c;\n$RefreshReg$(_c, \"ImagePreload\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2ltYWdlLWNvbXBvbmVudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OzsrRUFhaUI7cURBQ1dBLENBQUEsQ0FBQUMsbUJBQUFBLENBQUE7eUNBWU87O3lDQUVWQSxtQkFBQUEsQ0FBQTs7O0FBTXpCLE1BQUFDLGVBQUEsY0FBQUMseUJBQTRDSCxDQUFBLENBQUFDLG1CQUFBQSxDQUFBO0FBQzVDLDRDQUE4Qkc7QUFFOUIsTUFBSUMsWUFBT0MsME5BQXdCO0lBQy9CRSxPQUFBQSxXQUFtQkMsYUFBQUE7SUFDdkJELFdBQUFDLHFCQUFBO0FBbUJBO0FBQ0EsMEVBQWlEO0FBQ2pELGlEQUdFQztTQU1BQyxjQUFZQyxHQUFBQSxFQUFBQSxXQUFBQSxFQUFBQSxTQUFRLEVBQUFDLG9CQUFBLEVBQUFDLGVBQUEsRUFBQUMsV0FBQSxFQUFBQyxVQUFBO0lBQ3BCLE1BQUtKLE1BQU9BLE9BQUksZ0JBQWtCQSxJQUFLSyxHQUFBQTtRQUNyQyxDQUFBTCxPQUFBQSxHQUFBLHdCQUFBSyxLQUFBO1FBQ0Y7SUFDQUw7SUFDQUEsR0FBQSxtQkFBc0JBLEdBQUFBO0lBQ3RCTSxNQUFFQyxJQUFNLFlBQWVQLE1BQUFBLElBQUFRLE1BQUEsS0FBQUMsUUFBQUMsT0FBQTtXQUNyQixDQUFJLEtBQUtDLEdBQUFBLElBQUFBLENBQUFBO1lBQ1AsQ0FBQVgsSUFBQVcsYUFBQSxLQUFBWCxJQUFBWSxXQUFBLEVBQXdDO1lBQ3hDLHdDQUF1QjtZQUN2QjtZQUNBLHNDQUFzQjtZQUN0QjtZQUNBO1lBQ0Y7UUFDQTtZQUNFVixnQkFBZ0I7WUFDbEJBLGdCQUFBO1FBQ0E7WUFDRUosYUFBQSxnQkFBQUEsVUFBQWUsT0FBQSxFQUErQztZQUMvQywrQ0FBMEM7WUFDMUM7WUFDQSwyQ0FBd0I7WUFDeEJDLE1BQUFBLFFBQU9DLElBQUFBLE1BQWVDO21CQUFtQkMsY0FBVSxDQUFBRCxPQUFBO2dCQUFP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YSxTQUFBQyxhQUFBRixXQUFBLEVBQUFHLE9BQUE7UUFDYkMsZUFBU3ZCLGFBQUFBLE9BQUFBO1FBQ1R3QixTQUFBQTtRQUNBVDtRQUNGQTtJQUVBOzs7dUJBSVl2QyxHQUFBQSxDQUFBQSxHQUFBQSxZQUFhZCxHQUFBLEVBQUErRCxjQUFBO2dCQUNqQmhJLEdBQUFBLGFBQWF5SDtnQkFDYi9DLGFBQWErQyxRQUFRL0MsV0FBVztnQkFDaEN1RCxhQUFNUixRQUFZL0MsV0FBQTtnQkFDbEIvRSxNQUFBQSxRQUFXQSxJQUFBQTtnQkFDWEcsV0FBQUE7Z0JBQ0FDLHNCQUFpQkE7Z0JBQ2pCNkUsaUJBQWdCQTtnQkFDaEIzRSxnQkFBWTRIO2dCQUNaekQsWUFBS0UsTUFBQUEsS0FBQUE7O1lBR1JtRDtvQkFFR25DLFFBQUFBLEdBQWFBLFdBQUFBLEdBQUFBLENBQUFBLEdBQUFBLFlBQUFBLEdBQUFBLEVBQUFBLGNBQUFBO2dCQUNiUCxhQUFBQTsrQkFFQUE7OztJQUdWIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9zcmMvY2xpZW50L2ltYWdlLWNvbXBvbmVudC50c3g/NTFlMSJdLCJuYW1lcyI6WyJfIiwicmVxdWlyZSIsIl9pbWFnZWxvYWRlciIsIl9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCIsIl9fTkVYVF9JTUFHRV9PUFRTIiwiY29uZmlnRW52Iiwid2luZG93IiwiZW52IiwiZ2xvYmFsVGhpcyIsIl9fTkVYVF9JTUFHRV9JTVBPUlRFRCIsIm9uTG9hZFJlZiIsImhhbmRsZUxvYWRpbmciLCJpbWciLCJvbkxvYWRpbmdDb21wbGV0ZVJlZiIsInNldEJsdXJDb21wbGV0ZSIsInVub3B0aW1pemVkIiwic2l6ZXNJbnB1dCIsInNyYyIsInAiLCJjYXRjaCIsImRlY29kZSIsIlByb21pc2UiLCJyZXNvbHZlIiwicGFyZW50RWxlbWVudCIsImlzQ29ubmVjdGVkIiwiY3VycmVudCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZXZlbnQiLCJ3cml0YWJsZSIsInZhbHVlIiwic3RvcHBlZCIsIm5hdGl2ZUV2ZW50IiwiY3VycmVudFRhcmdldCIsInRhcmdldCIsImlzRGVmYXVsdFByZXZlbnRlZCIsImlzUHJvcGFnYXRpb25TdG9wcGVkIiwicHJldmVudGVkIiwicGVyc2lzdCIsInByZXZlbnREZWZhdWx0Iiwic3RvcFByb3BhZ2F0aW9uIiwicHJvY2VzcyIsImdldEF0dHJpYnV0ZSIsIlVSTCIsInNlYXJjaFBhcmFtcyIsImdldCIsIndpZHRoVmlld3BvcnRSYXRpbyIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsIndpZHRoIiwiaW5uZXJXaWR0aCIsIndhcm5PbmNlIiwiX3dhcm5vbmNlIiwib3JpZ1NyYyIsInZhbGlkIiwiZ2V0Q29tcHV0ZWRTdHlsZSIsInBvc2l0aW9uIiwibWFwIiwiU3RyaW5nIiwiam9pbiIsIndpZHRoTW9kaWZpZWQiLCJ0b1N0cmluZyIsImhlaWdodE1vZGlmaWVkIiwiZ2V0RHluYW1pY1Byb3BzIiwibWlub3JTdHIiLCJ2ZXJzaW9uIiwibWFqb3IiLCJwYXJzZUludCIsIm1ham9yU3RyIiwic3BsaXQiLCJtaW5vciIsImZldGNoUHJpb3JpdHkiLCJmZXRjaHByaW9yaXR5IiwiaGVpZ2h0IiwiZGVjb2RpbmciLCJjbGFzc05hbWUiLCJzdHlsZSIsInNyY1NldCIsInNpemVzIiwicmVzdCIsIl9qc3hydW50aW1lIiwianN4IiwibG9hZGluZyIsImRhdGEtbmltZyIsInJlZiIsInVzZUNhbGxiYWNrIiwiZm9yd2FyZGVkUmVmIiwib25FcnJvciIsImNvbnNvbGUiLCJlcnJvciIsInBsYWNlaG9sZGVyIiwib25Mb2FkIiwic2V0U2hvd0FsdFRleHQiLCJJbWFnZVByZWxvYWQiLCJwYXJhbSIsImltZ0F0dHJpYnV0ZXMiLCJvcHRzIiwiYXMiLCJpbWFnZVNyY1NldCIsImltYWdlU2l6ZXMiLCJjcm9zc09yaWdpbiIsInJlZmVycmVyUG9saWN5IiwiaXNBcHBSb3V0ZXIiLCJfcmVhY3Rkb20iLCJkZWZhdWx0IiwicHJlbG9hZCIsIlJlYWN0RE9NIiwiX2hlYWQiLCJsaW5rIiwicmVsIiwiaHJlZiIsInVuZGVmaW5lZCIsIkltYWdlIiwidXNlQ29udGV4dCIsInBhZ2VzUm91dGVyIiwiUm91dGVyQ29udGV4dCIsIl9yZWFjdCIsIl9yb3V0ZXJjb250ZXh0c2hhcmVkcnVudGltZSIsImNvbmZpZ0NvbnRleHQiLCJjb25maWciLCJ1c2VNZW1vIiwiX2ltYWdlY29uZmlnY29udGV4dHNoYXJlZHJ1bnRpbWUiLCJJbWFnZUNvbmZpZ0NvbnRleHQiLCJhbGxTaXplcyIsIl9pbWFnZWNvbmZpZyIsImltYWdlQ29uZmlnRGVmYXVsdCIsImRldmljZVNpemVzIiwiYyIsImEiLCJiIiwic29ydCIsInVzZVJlZiIsInVzZUVmZmVjdCIsIm9uTG9hZGluZ0NvbXBsZXRlIiwic2hvd0FsdFRleHQiLCJ1c2VTdGF0ZSIsIm1ldGEiLCJpbWdNZXRhIiwiZ2V0SW1nUHJvcHMiLCJkZWZhdWx0TG9hZGVyIiwiX2dldGltZ3Byb3BzIiwicHJvcHMiLCJpbWdDb25mIiwiYmx1ckNvbXBsZXRlIiwiSW1hZ2VFbGVtZW50IiwiZmlsbCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/image-component.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/link.js":
|
||
/*!***********************************************!*\
|
||
!*** ./node_modules/next/dist/client/link.js ***!
|
||
\***********************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/* __next_internal_client_entry_do_not_use__ cjs */ \nvar _s = $RefreshSig$();\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return _default;\n }\n}));\nconst _interop_require_default = __webpack_require__(/*! @swc/helpers/_/_interop_require_default */ \"(app-pages-browser)/./node_modules/@swc/helpers/esm/_interop_require_default.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_default._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst _resolvehref = __webpack_require__(/*! ./resolve-href */ \"(app-pages-browser)/./node_modules/next/dist/client/resolve-href.js\");\nconst _islocalurl = __webpack_require__(/*! ../shared/lib/router/utils/is-local-url */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-local-url.js\");\nconst _formaturl = __webpack_require__(/*! ../shared/lib/router/utils/format-url */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/format-url.js\");\nconst _utils = __webpack_require__(/*! ../shared/lib/utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js\");\nconst _addlocale = __webpack_require__(/*! ./add-locale */ \"(app-pages-browser)/./node_modules/next/dist/client/add-locale.js\");\nconst _routercontextsharedruntime = __webpack_require__(/*! ../shared/lib/router-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router-context.shared-runtime.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 _useintersection = __webpack_require__(/*! ./use-intersection */ \"(app-pages-browser)/./node_modules/next/dist/client/use-intersection.js\");\nconst _getdomainlocale = __webpack_require__(/*! ./get-domain-locale */ \"(app-pages-browser)/./node_modules/next/dist/client/get-domain-locale.js\");\nconst _addbasepath = __webpack_require__(/*! ./add-base-path */ \"(app-pages-browser)/./node_modules/next/dist/client/add-base-path.js\");\nconst _routerreducertypes = __webpack_require__(/*! ./components/router-reducer/router-reducer-types */ \"(app-pages-browser)/./node_modules/next/dist/client/components/router-reducer/router-reducer-types.js\");\nconst prefetched = new Set();\nfunction prefetch(router, href, as, options, appOptions, isAppRouter) {\n if (typeof window === \"undefined\") {\n return;\n }\n // app-router supports external urls out of the box so it shouldn't short-circuit here as support for e.g. `replace` is added in the app-router.\n if (!isAppRouter && !(0, _islocalurl.isLocalURL)(href)) {\n return;\n }\n // We should only dedupe requests when experimental.optimisticClientCache is\n // disabled.\n if (!options.bypassPrefetchedCheck) {\n const locale = typeof options.locale !== \"undefined\" ? options.locale : \"locale\" in router ? router.locale : undefined;\n const prefetchedKey = href + \"%\" + as + \"%\" + locale;\n // If we've already fetched the key, then don't prefetch it again!\n if (prefetched.has(prefetchedKey)) {\n return;\n }\n // Mark this URL as prefetched.\n prefetched.add(prefetchedKey);\n }\n const prefetchPromise = isAppRouter ? router.prefetch(href, appOptions) : router.prefetch(href, as, options);\n // Prefetch the JSON page if asked (only in the client)\n // We need to handle a prefetch error here since we may be\n // loading with priority which can reject but we don't\n // want to force navigation since this is only a prefetch\n Promise.resolve(prefetchPromise).catch((err)=>{\n if (true) {\n // rethrow to show invalid URL errors\n throw err;\n }\n });\n}\nfunction isModifiedEvent(event) {\n const eventTarget = event.currentTarget;\n const target = eventTarget.getAttribute(\"target\");\n return target && target !== \"_self\" || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey || // triggers resource download\n event.nativeEvent && event.nativeEvent.which === 2;\n}\nfunction linkClicked(e, router, href, as, replace, shallow, scroll, locale, isAppRouter) {\n const { nodeName } = e.currentTarget;\n // anchors inside an svg have a lowercase nodeName\n const isAnchorNodeName = nodeName.toUpperCase() === \"A\";\n if (isAnchorNodeName && (isModifiedEvent(e) || // app-router supports external urls out of the box so it shouldn't short-circuit here as support for e.g. `replace` is added in the app-router.\n !isAppRouter && !(0, _islocalurl.isLocalURL)(href))) {\n // ignore click for browser’s default behavior\n return;\n }\n e.preventDefault();\n const navigate = ()=>{\n // If the router is an NextRouter instance it will have `beforePopState`\n const routerScroll = scroll != null ? scroll : true;\n if (\"beforePopState\" in router) {\n router[replace ? \"replace\" : \"push\"](href, as, {\n shallow,\n locale,\n scroll: routerScroll\n });\n } else {\n router[replace ? \"replace\" : \"push\"](as || href, {\n scroll: routerScroll\n });\n }\n };\n if (isAppRouter) {\n _react.default.startTransition(navigate);\n } else {\n navigate();\n }\n}\nfunction formatStringOrUrl(urlObjOrString) {\n if (typeof urlObjOrString === \"string\") {\n return urlObjOrString;\n }\n return (0, _formaturl.formatUrl)(urlObjOrString);\n}\n/**\n * A React component that extends the HTML `<a>` element to provide [prefetching](https://nextjs.org/docs/app/building-your-application/routing/linking-and-navigating#2-prefetching)\n * and client-side navigation between routes.\n *\n * It is the primary way to navigate between routes in Next.js.\n *\n * Read more: [Next.js docs: `<Link>`](https://nextjs.org/docs/app/api-reference/components/link)\n */ const Link = /*#__PURE__*/ _s(_react.default.forwardRef(_c = _s(function LinkComponent(props, forwardedRef) {\n _s();\n let children;\n const { href: hrefProp, as: asProp, children: childrenProp, prefetch: prefetchProp = null, passHref, replace, shallow, scroll, locale, onClick, onMouseEnter: onMouseEnterProp, onTouchStart: onTouchStartProp, legacyBehavior = false, ...restProps } = props;\n children = childrenProp;\n if (legacyBehavior && (typeof children === \"string\" || typeof children === \"number\")) {\n children = /*#__PURE__*/ (0, _jsxruntime.jsx)(\"a\", {\n children: children\n });\n }\n const pagesRouter = _react.default.useContext(_routercontextsharedruntime.RouterContext);\n const appRouter = _react.default.useContext(_approutercontextsharedruntime.AppRouterContext);\n const router = pagesRouter != null ? pagesRouter : appRouter;\n // We're in the app directory if there is no pages router.\n const isAppRouter = !pagesRouter;\n const prefetchEnabled = prefetchProp !== false;\n /**\n * The possible states for prefetch are:\n * - null: this is the default \"auto\" mode, where we will prefetch partially if the link is in the viewport\n * - true: we will prefetch if the link is visible and prefetch the full page, not just partially\n * - false: we will not prefetch if in the viewport at all\n */ const appPrefetchKind = prefetchProp === null ? _routerreducertypes.PrefetchKind.AUTO : _routerreducertypes.PrefetchKind.FULL;\n if (true) {\n function createPropError(args) {\n return new Error(\"Failed prop type: The prop `\" + args.key + \"` expects a \" + args.expected + \" in `<Link>`, but got `\" + args.actual + \"` instead.\" + (typeof window !== \"undefined\" ? \"\\nOpen your browser's console to view the Component stack trace.\" : \"\"));\n }\n // TypeScript trick for type-guarding:\n const requiredPropsGuard = {\n href: true\n };\n const requiredProps = Object.keys(requiredPropsGuard);\n requiredProps.forEach((key)=>{\n if (key === \"href\") {\n if (props[key] == null || typeof props[key] !== \"string\" && typeof props[key] !== \"object\") {\n throw createPropError({\n key,\n expected: \"`string` or `object`\",\n actual: props[key] === null ? \"null\" : typeof props[key]\n });\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _ = key;\n }\n });\n // TypeScript trick for type-guarding:\n const optionalPropsGuard = {\n as: true,\n replace: true,\n scroll: true,\n shallow: true,\n passHref: true,\n prefetch: true,\n locale: true,\n onClick: true,\n onMouseEnter: true,\n onTouchStart: true,\n legacyBehavior: true\n };\n const optionalProps = Object.keys(optionalPropsGuard);\n optionalProps.forEach((key)=>{\n const valType = typeof props[key];\n if (key === \"as\") {\n if (props[key] && valType !== \"string\" && valType !== \"object\") {\n throw createPropError({\n key,\n expected: \"`string` or `object`\",\n actual: valType\n });\n }\n } else if (key === \"locale\") {\n if (props[key] && valType !== \"string\") {\n throw createPropError({\n key,\n expected: \"`string`\",\n actual: valType\n });\n }\n } else if (key === \"onClick\" || key === \"onMouseEnter\" || key === \"onTouchStart\") {\n if (props[key] && valType !== \"function\") {\n throw createPropError({\n key,\n expected: \"`function`\",\n actual: valType\n });\n }\n } else if (key === \"replace\" || key === \"scroll\" || key === \"shallow\" || key === \"passHref\" || key === \"prefetch\" || key === \"legacyBehavior\") {\n if (props[key] != null && valType !== \"boolean\") {\n throw createPropError({\n key,\n expected: \"`boolean`\",\n actual: valType\n });\n }\n } else {\n // TypeScript trick for type-guarding:\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _ = key;\n }\n });\n // This hook is in a conditional but that is ok because `process.env.NODE_ENV` never changes\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const hasWarned = _react.default.useRef(false);\n if (props.prefetch && !hasWarned.current && !isAppRouter) {\n hasWarned.current = true;\n console.warn(\"Next.js auto-prefetches automatically based on viewport. The prefetch attribute is no longer needed. More: https://nextjs.org/docs/messages/prefetch-true-deprecated\");\n }\n }\n if (true) {\n if (isAppRouter && !asProp) {\n let href;\n if (typeof hrefProp === \"string\") {\n href = hrefProp;\n } else if (typeof hrefProp === \"object\" && typeof hrefProp.pathname === \"string\") {\n href = hrefProp.pathname;\n }\n if (href) {\n const hasDynamicSegment = href.split(\"/\").some((segment)=>segment.startsWith(\"[\") && segment.endsWith(\"]\"));\n if (hasDynamicSegment) {\n throw new Error(\"Dynamic href `\" + href + \"` found in <Link> while using the `/app` router, this is not supported. Read more: https://nextjs.org/docs/messages/app-dir-dynamic-href\");\n }\n }\n }\n }\n const { href, as } = _react.default.useMemo(()=>{\n if (!pagesRouter) {\n const resolvedHref = formatStringOrUrl(hrefProp);\n return {\n href: resolvedHref,\n as: asProp ? formatStringOrUrl(asProp) : resolvedHref\n };\n }\n const [resolvedHref, resolvedAs] = (0, _resolvehref.resolveHref)(pagesRouter, hrefProp, true);\n return {\n href: resolvedHref,\n as: asProp ? (0, _resolvehref.resolveHref)(pagesRouter, asProp) : resolvedAs || resolvedHref\n };\n }, [\n pagesRouter,\n hrefProp,\n asProp\n ]);\n const previousHref = _react.default.useRef(href);\n const previousAs = _react.default.useRef(as);\n // This will return the first child, if multiple are provided it will throw an error\n let child;\n if (legacyBehavior) {\n if (true) {\n if (onClick) {\n console.warn('\"onClick\" was passed to <Link> with `href` of `' + hrefProp + '` but \"legacyBehavior\" was set. The legacy behavior requires onClick be set on the child of next/link');\n }\n if (onMouseEnterProp) {\n console.warn('\"onMouseEnter\" was passed to <Link> with `href` of `' + hrefProp + '` but \"legacyBehavior\" was set. The legacy behavior requires onMouseEnter be set on the child of next/link');\n }\n try {\n child = _react.default.Children.only(children);\n } catch (err) {\n if (!children) {\n throw new Error(\"No children were passed to <Link> with `href` of `\" + hrefProp + \"` but one child is required https://nextjs.org/docs/messages/link-no-children\");\n }\n throw new Error(\"Multiple children were passed to <Link> with `href` of `\" + hrefProp + \"` but only one child is supported https://nextjs.org/docs/messages/link-multiple-children\" + (typeof window !== \"undefined\" ? \" \\nOpen your browser's console to view the Component stack trace.\" : \"\"));\n }\n } else {}\n } else {\n if (true) {\n if ((children == null ? void 0 : children.type) === \"a\") {\n throw new Error(\"Invalid <Link> with <a> child. Please remove <a> or use <Link legacyBehavior>.\\nLearn more: https://nextjs.org/docs/messages/invalid-new-link-with-extra-anchor\");\n }\n }\n }\n const childRef = legacyBehavior ? child && typeof child === \"object\" && child.ref : forwardedRef;\n const [setIntersectionRef, isVisible, resetVisible] = (0, _useintersection.useIntersection)({\n rootMargin: \"200px\"\n });\n const setRef = _react.default.useCallback((el)=>{\n // Before the link getting observed, check if visible state need to be reset\n if (previousAs.current !== as || previousHref.current !== href) {\n resetVisible();\n previousAs.current = as;\n previousHref.current = href;\n }\n setIntersectionRef(el);\n if (childRef) {\n if (typeof childRef === \"function\") childRef(el);\n else if (typeof childRef === \"object\") {\n childRef.current = el;\n }\n }\n }, [\n as,\n childRef,\n href,\n resetVisible,\n setIntersectionRef\n ]);\n // Prefetch the URL if we haven't already and it's visible.\n _react.default.useEffect(()=>{\n // in dev, we only prefetch on hover to avoid wasting resources as the prefetch will trigger compiling the page.\n if (true) {\n return;\n }\n if (!router) {\n return;\n }\n // If we don't need to prefetch the URL, don't do prefetch.\n if (!isVisible || !prefetchEnabled) {\n return;\n }\n // Prefetch the URL.\n prefetch(router, href, as, {\n locale\n }, {\n kind: appPrefetchKind\n }, isAppRouter);\n }, [\n as,\n href,\n isVisible,\n locale,\n prefetchEnabled,\n pagesRouter == null ? void 0 : pagesRouter.locale,\n router,\n isAppRouter,\n appPrefetchKind\n ]);\n const childProps = {\n ref: setRef,\n onClick (e) {\n if (true) {\n if (!e) {\n throw new Error('Component rendered inside next/link has to pass click event to \"onClick\" prop.');\n }\n }\n if (!legacyBehavior && typeof onClick === \"function\") {\n onClick(e);\n }\n if (legacyBehavior && child.props && typeof child.props.onClick === \"function\") {\n child.props.onClick(e);\n }\n if (!router) {\n return;\n }\n if (e.defaultPrevented) {\n return;\n }\n linkClicked(e, router, href, as, replace, shallow, scroll, locale, isAppRouter);\n },\n onMouseEnter (e) {\n if (!legacyBehavior && typeof onMouseEnterProp === \"function\") {\n onMouseEnterProp(e);\n }\n if (legacyBehavior && child.props && typeof child.props.onMouseEnter === \"function\") {\n child.props.onMouseEnter(e);\n }\n if (!router) {\n return;\n }\n if ((!prefetchEnabled || \"development\" === \"development\") && isAppRouter) {\n return;\n }\n prefetch(router, href, as, {\n locale,\n priority: true,\n // @see {https://github.com/vercel/next.js/discussions/40268?sort=top#discussioncomment-3572642}\n bypassPrefetchedCheck: true\n }, {\n kind: appPrefetchKind\n }, isAppRouter);\n },\n onTouchStart: false ? 0 : function onTouchStart(e) {\n if (!legacyBehavior && typeof onTouchStartProp === \"function\") {\n onTouchStartProp(e);\n }\n if (legacyBehavior && child.props && typeof child.props.onTouchStart === \"function\") {\n child.props.onTouchStart(e);\n }\n if (!router) {\n return;\n }\n if (!prefetchEnabled && isAppRouter) {\n return;\n }\n prefetch(router, href, as, {\n locale,\n priority: true,\n // @see {https://github.com/vercel/next.js/discussions/40268?sort=top#discussioncomment-3572642}\n bypassPrefetchedCheck: true\n }, {\n kind: appPrefetchKind\n }, isAppRouter);\n }\n };\n // If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is\n // defined, we specify the current 'href', so that repetition is not needed by the user.\n // If the url is absolute, we can bypass the logic to prepend the domain and locale.\n if ((0, _utils.isAbsoluteUrl)(as)) {\n childProps.href = as;\n } else if (!legacyBehavior || passHref || child.type === \"a\" && !(\"href\" in child.props)) {\n const curLocale = typeof locale !== \"undefined\" ? locale : pagesRouter == null ? void 0 : pagesRouter.locale;\n // we only render domain locales if we are currently on a domain locale\n // so that locale links are still visitable in development/preview envs\n const localeDomain = (pagesRouter == null ? void 0 : pagesRouter.isLocaleDomain) && (0, _getdomainlocale.getDomainLocale)(as, curLocale, pagesRouter == null ? void 0 : pagesRouter.locales, pagesRouter == null ? void 0 : pagesRouter.domainLocales);\n childProps.href = localeDomain || (0, _addbasepath.addBasePath)((0, _addlocale.addLocale)(as, curLocale, pagesRouter == null ? void 0 : pagesRouter.defaultLocale));\n }\n return legacyBehavior ? /*#__PURE__*/ _react.default.cloneElement(child, childProps) : /*#__PURE__*/ (0, _jsxruntime.jsx)(\"a\", {\n ...restProps,\n ...childProps,\n children: children\n });\n}, \"wKD5mb5mk47bkaStGb/Fvd6RWZE=\")), \"wKD5mb5mk47bkaStGb/Fvd6RWZE=\");\n_c1 = Link;\nconst _default = Link;\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=link.js.map\nvar _c, _c1;\n$RefreshReg$(_c, \"Link$_react.default.forwardRef\");\n$RefreshReg$(_c1, \"Link\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L2xpbmsuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7NkJBUzRCQSx5QkFBQUMsQ0FBQSxDQUFBQyxtQkFBQUEsQ0FBQTt5Q0FDRDt3Q0FDRDt1Q0FDSTs7Ozt1Q0FRRUEsbUJBQUFBLENBQUE7NkNBQ0E7NkNBQ0o7O0FBMkY1QixNQUFNQyxzQkFBaUJDLG1CQUFBQSxDQUFBQSwrSkFBQUE7QUFVdkIsTUFBQUQsYUFDRUUsSUFBQUE7U0FPSUMsU0FBT0MsTUFBQUEsRUFBV0MsSUFBQSxFQUFBQyxFQUFBLEVBQUFDLE9BQWEsRUFBQUMsVUFBQSxFQUFBQyxXQUFBO1FBQ2pDLE9BQUFMLFdBQUE7UUFDRjtJQUVBO0lBQ0EsZ0pBQXVDO1FBQ3JDLENBQUFLLGVBQUEsS0FBQUMsWUFBQUMsVUFBQSxFQUFBTixPQUFBO1FBQ0Y7SUFFQTtJQUNBLDRFQUFZO0lBQ1osWUFBS0U7UUFDSCxDQUFBQSxRQUFNSyxxQkFDSjtRQUNBLE1BQUFBLFNBT0YsT0FBTUMsUUFBQUEsTUFBQUEsS0FBZ0JSLGNBQWtCRSxRQUFNSyxNQUFBQSxHQUFBQSxZQUFBQSxTQUFBQSxPQUFBQSxNQUFBQSxHQUFBQTtRQUU5QyxNQUFBQyxnQkFBQVIsT0FBQSxNQUFBQyxLQUFBLE1BQUFNO1FBQ0Esa0VBQW1DO1lBQ2pDWixXQUFBYyxHQUFBLENBQUFELGdCQUFBO1lBQ0Y7UUFFQTtRQUNBYiwrQkFBZWE7UUFDakJiLFdBQUFlLEdBQUEsQ0FBQUY7SUFFQTtJQUlBLE1BQUFHLGtCQUFBUCxjQUFBUCxPQUFBQyxRQUFBLENBQUFFLE1BQXVERyxjQUFBTixPQUFBQyxRQUFBLENBQUFFLE1BQUFDLElBQUFDO0lBQ3ZEO0lBQ0EsMERBQXNEO0lBQ3REO0lBQ0FVLHlEQUF3Q0M7WUFDbENDLE9BQUFBLENBQVFDLGlCQUFpQkMsS0FBQSxFQUFBSDtZQUMzQkMsSUFBQSxFQUFxQztZQUNyQyxxQ0FBTUQ7WUFD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QUFBdEMsT0FBQXlCLGNBQUEsa0JBQUFjLFlBQUFDLEdBQUE7UUFBRyxHQUFHZixTQUFBQTtxQkFDbkIxRTs7SUFHUCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vc3JjL2NsaWVudC9saW5rLnRzeD9hY2YwIl0sIm5hbWVzIjpbIl9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdCIsIl8iLCJyZXF1aXJlIiwicHJlZmV0Y2hlZCIsIlNldCIsInJvdXRlciIsInByZWZldGNoIiwid2luZG93IiwiaHJlZiIsImFzIiwib3B0aW9ucyIsImFwcE9wdGlvbnMiLCJpc0FwcFJvdXRlciIsIl9pc2xvY2FsdXJsIiwiaXNMb2NhbFVSTCIsImxvY2FsZSIsInByZWZldGNoZWRLZXkiLCJoYXMiLCJhZGQiLCJwcmVmZXRjaFByb21pc2UiLCJQcm9taXNlIiwiZXJyIiwicHJvY2VzcyIsImVudiIsImNhdGNoIiwiaXNNb2RpZmllZEV2ZW50IiwiZXZlbnQiLCJjdXJyZW50VGFyZ2V0IiwidGFyZ2V0IiwiZXZlbnRUYXJnZXQiLCJuYXRpdmVFdmVudCIsIndoaWNoIiwibWV0YUtleSIsImN0cmxLZXkiLCJzaGlmdEtleSIsImFsdEtleSIsImxpbmtDbGlja2VkIiwiZSIsInJlcGxhY2UiLCJzaGFsbG93Iiwic2Nyb2xsIiwibm9kZU5hbWUiLCJpc0FuY2hvck5vZGVOYW1lIiwicHJldmVudERlZmF1bHQiLCJuYXZpZ2F0ZSIsInJvdXRlclNjcm9sbCIsIlJlYWN0IiwiX3JlYWN0IiwiZGVmYXVsdCIsInN0YXJ0VHJhbnNpdGlvbiIsImZvcm1hdFN0cmluZ09yVXJsIiwidXJsT2JqT3JTdHJpbmciLCJfZm9ybWF0dXJsIiwiZm9ybWF0VXJsIiwiY2hpbGRyZW4iLCJjaGlsZHJlblByb3AiLCJsZWdhY3lCZWhhdmlvciIsImEiLCJhcHBSb3V0ZXIiLCJ1c2VDb250ZXh0IiwiQXBwUm91dGVyQ29udGV4dCIsInBhZ2VzUm91dGVyIiwicHJlZmV0Y2hFbmFibGVkIiwicHJlZmV0Y2hQcm9wIiwiX3JvdXRlcnJlZHVjZXJ0eXBlcyIsIlByZWZldGNoS2luZCIsIkFVVE8iLCJGVUxMIiwiYXJncyIsImNyZWF0ZVByb3BFcnJvciIsIkVycm9yIiwia2V5IiwiZXhwZWN0ZWQiLCJhY3R1YWwiLCJyZXF1aXJlZFByb3BzIiwiT2JqZWN0IiwicHJvcHMiLCJwYXNzSHJlZiIsIm9uQ2xpY2siLCJvbk1vdXNlRW50ZXIiLCJvblRvdWNoU3RhcnQiLCJvcHRpb25hbFByb3BzIiwidmFsVHlwZSIsImhhc1dhcm5lZCIsImN1cnJlbnQiLCJjb25zb2xlIiwid2FybiIsImFzUHJvcCIsImhyZWZQcm9wIiwicGF0aG5hbWUiLCJoYXNEeW5hbWljU2VnbWVudCIsInNwbGl0Iiwic29tZSIsInNlZ21lbnQiLCJzdGFydHNXaXRoIiwiZW5kc1dpdGgiLCJ1c2VNZW1vIiwicmVzb2x2ZWRIcmVmIiwicmVzb2x2ZWRBcyIsIl9yZXNvbHZlaHJlZiIsInJlc29sdmVIcmVmIiwicHJldmlvdXNBcyIsInVzZVJlZiIsImNoaWxkIiwiTk9ERV9FTlYiLCJDaGlsZHJlbiIsIm9ubHkiLCJ0eXBlIiwiY2hpbGRSZWYiLCJzZXRJbnRlcnNlY3Rpb25SZWYiLCJpc1Zpc2libGUiLCJyZXNldFZpc2libGUiLCJ1c2VJbnRlcnNlY3Rpb24iLCJyb290TWFyZ2luIiwiX3VzZWludGVyc2VjdGlvbiIsInNldFJlZiIsInVzZUNhbGxiYWNrIiwiZWwiLCJwcmV2aW91c0hyZWYiLCJ1c2VFZmZlY3QiLCJhcHBQcmVmZXRjaEtpbmQiLCJyZWYiLCJkZWZhdWx0UHJldmVudGVkIiwib25Nb3VzZUVudGVyUHJvcCIsInByaW9yaXR5IiwiYnlwYXNzUHJlZmV0Y2hlZENoZWNrIiwib25Ub3VjaFN0YXJ0UHJvcCIsInVuZGVmaW5lZCIsImNoaWxkUHJvcHMiLCJjdXJMb2NhbGUiLCJpc0xvY2FsZURvbWFpbiIsImxvY2FsZURvbWFpbiIsImFkZEJhc2VQYXRoIiwiYWRkTG9jYWxlIiwiX2dldGRvbWFpbmxvY2FsZSIsImRlZmF1bHRMb2NhbGUiLCJsb2NhbGVzIiwiZG9tYWluTG9jYWxlcyIsIl9hZGRiYXNlcGF0aCIsIl9hZGRsb2NhbGUiLCJyZXN0UHJvcHMiLCJjbG9uZUVsZW1lbnQiLCJfanN4cnVudGltZSIsImpzeCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/link.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/request-idle-callback.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/next/dist/client/request-idle-callback.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 cancelIdleCallback: function() {\n return cancelIdleCallback;\n },\n requestIdleCallback: function() {\n return requestIdleCallback;\n }\n});\nconst requestIdleCallback = typeof self !== \"undefined\" && self.requestIdleCallback && self.requestIdleCallback.bind(window) || function(cb) {\n let start = Date.now();\n return self.setTimeout(function() {\n cb({\n didTimeout: false,\n timeRemaining: function() {\n return Math.max(0, 50 - (Date.now() - start));\n }\n });\n }, 1);\n};\nconst cancelIdleCallback = typeof self !== \"undefined\" && self.cancelIdleCallback && self.cancelIdleCallback.bind(window) || function(id) {\n return clearTimeout(id);\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=request-idle-callback.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3JlcXVlc3QtaWRsZS1jYWxsYmFjay5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFnQmFBLG9CQUFrQjtlQUFsQkE7O0lBaEJBQyxxQkFBbUI7ZUFBbkJBOzs7QUFBTixNQUFNQSxzQkFDWCxPQUFRQyxTQUFTLGVBQ2ZBLEtBQUtELG1CQUFtQixJQUN4QkMsS0FBS0QsbUJBQW1CLENBQUNFLElBQUksQ0FBQ0MsV0FDaEMsU0FBVUMsRUFBdUI7SUFDL0IsSUFBSUMsUUFBUUMsS0FBS0MsR0FBRztJQUNwQixPQUFPTixLQUFLTyxVQUFVLENBQUM7UUFDckJKLEdBQUc7WUFDREssWUFBWTtZQUNaQyxlQUFlO2dCQUNiLE9BQU9DLEtBQUtDLEdBQUcsQ0FBQyxHQUFHLEtBQU1OLENBQUFBLEtBQUtDLEdBQUcsS0FBS0YsS0FBQUE7WUFDeEM7UUFDRjtJQUNGLEdBQUc7QUFDTDtBQUVLLE1BQU1OLHFCQUNYLE9BQVFFLFNBQVMsZUFDZkEsS0FBS0Ysa0JBQWtCLElBQ3ZCRSxLQUFLRixrQkFBa0IsQ0FBQ0csSUFBSSxDQUFDQyxXQUMvQixTQUFVVSxFQUFVO0lBQ2xCLE9BQU9DLGFBQWFEO0FBQ3RCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9zcmMvY2xpZW50L3JlcXVlc3QtaWRsZS1jYWxsYmFjay50cz8wNWY0Il0sIm5hbWVzIjpbImNhbmNlbElkbGVDYWxsYmFjayIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJzZWxmIiwiYmluZCIsIndpbmRvdyIsImNiIiwic3RhcnQiLCJEYXRlIiwibm93Iiwic2V0VGltZW91dCIsImRpZFRpbWVvdXQiLCJ0aW1lUmVtYWluaW5nIiwiTWF0aCIsIm1heCIsImlkIiwiY2xlYXJUaW1lb3V0Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/request-idle-callback.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/resolve-href.js":
|
||
/*!*******************************************************!*\
|
||
!*** ./node_modules/next/dist/client/resolve-href.js ***!
|
||
\*******************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"resolveHref\", ({\n enumerable: true,\n get: function() {\n return resolveHref;\n }\n}));\nconst _querystring = __webpack_require__(/*! ../shared/lib/router/utils/querystring */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/querystring.js\");\nconst _formaturl = __webpack_require__(/*! ../shared/lib/router/utils/format-url */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/format-url.js\");\nconst _omit = __webpack_require__(/*! ../shared/lib/router/utils/omit */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/omit.js\");\nconst _utils = __webpack_require__(/*! ../shared/lib/utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js\");\nconst _normalizetrailingslash = __webpack_require__(/*! ./normalize-trailing-slash */ \"(app-pages-browser)/./node_modules/next/dist/client/normalize-trailing-slash.js\");\nconst _islocalurl = __webpack_require__(/*! ../shared/lib/router/utils/is-local-url */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-local-url.js\");\nconst _utils1 = __webpack_require__(/*! ../shared/lib/router/utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/index.js\");\nconst _interpolateas = __webpack_require__(/*! ../shared/lib/router/utils/interpolate-as */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/interpolate-as.js\");\nfunction resolveHref(router, href, resolveAs) {\n // we use a dummy base url for relative urls\n let base;\n let urlAsString = typeof href === \"string\" ? href : (0, _formaturl.formatWithValidation)(href);\n // repeated slashes and backslashes in the URL are considered\n // invalid and will never match a Next.js page/file\n const urlProtoMatch = urlAsString.match(/^[a-zA-Z]{1,}:\\/\\//);\n const urlAsStringNoProto = urlProtoMatch ? urlAsString.slice(urlProtoMatch[0].length) : urlAsString;\n const urlParts = urlAsStringNoProto.split(\"?\", 1);\n if ((urlParts[0] || \"\").match(/(\\/\\/|\\\\)/)) {\n console.error(\"Invalid href '\" + urlAsString + \"' passed to next/router in page: '\" + router.pathname + \"'. Repeated forward-slashes (//) or backslashes \\\\ are not valid in the href.\");\n const normalizedUrl = (0, _utils.normalizeRepeatedSlashes)(urlAsStringNoProto);\n urlAsString = (urlProtoMatch ? urlProtoMatch[0] : \"\") + normalizedUrl;\n }\n // Return because it cannot be routed by the Next.js router\n if (!(0, _islocalurl.isLocalURL)(urlAsString)) {\n return resolveAs ? [\n urlAsString\n ] : urlAsString;\n }\n try {\n base = new URL(urlAsString.startsWith(\"#\") ? router.asPath : router.pathname, \"http://n\");\n } catch (_) {\n // fallback to / for invalid asPath values e.g. //\n base = new URL(\"/\", \"http://n\");\n }\n try {\n const finalUrl = new URL(urlAsString, base);\n finalUrl.pathname = (0, _normalizetrailingslash.normalizePathTrailingSlash)(finalUrl.pathname);\n let interpolatedAs = \"\";\n if ((0, _utils1.isDynamicRoute)(finalUrl.pathname) && finalUrl.searchParams && resolveAs) {\n const query = (0, _querystring.searchParamsToUrlQuery)(finalUrl.searchParams);\n const { result, params } = (0, _interpolateas.interpolateAs)(finalUrl.pathname, finalUrl.pathname, query);\n if (result) {\n interpolatedAs = (0, _formaturl.formatWithValidation)({\n pathname: result,\n hash: finalUrl.hash,\n query: (0, _omit.omit)(query, params)\n });\n }\n }\n // if the origin didn't change, it means we received a relative href\n const resolvedHref = finalUrl.origin === base.origin ? finalUrl.href.slice(finalUrl.origin.length) : finalUrl.href;\n return resolveAs ? [\n resolvedHref,\n interpolatedAs || resolvedHref\n ] : resolvedHref;\n } catch (_) {\n return resolveAs ? [\n urlAsString\n ] : urlAsString;\n }\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=resolve-href.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3Jlc29sdmUtaHJlZi5qcyIsIm1hcHBpbmdzIjoiOzs7OytDQXlCZ0JBOzs7ZUFBQUE7Ozt5Q0F2QnVCO3VDQUNGO2tDQUNoQjttQ0FDb0I7b0RBQ0U7d0NBQ2hCO29DQUNJOzJDQUNEO0FBZ0J2QixTQUFTQSxZQUNkQyxNQUFrQixFQUNsQkMsSUFBUyxFQUNUQyxTQUFtQjtJQUVuQiw0Q0FBNEM7SUFDNUMsSUFBSUM7SUFDSixJQUFJQyxjQUFjLE9BQU9ILFNBQVMsV0FBV0EsT0FBT0ksQ0FBQUEsR0FBQUEsV0FBQUEsb0JBQW9CLEVBQUNKO0lBRXpFLDZEQUE2RDtJQUM3RCxtREFBbUQ7SUFDbkQsTUFBTUssZ0JBQWdCRixZQUFZRyxLQUFLLENBQUM7SUFDeEMsTUFBTUMscUJBQXFCRixnQkFDdkJGLFlBQVlLLEtBQUssQ0FBQ0gsYUFBYSxDQUFDLEVBQUUsQ0FBQ0ksTUFBTSxJQUN6Q047SUFFSixNQUFNTyxXQUFXSCxtQkFBbUJJLEtBQUssQ0FBQyxLQUFLO0lBRS9DLElBQUksQ0FBQ0QsUUFBUSxDQUFDLEVBQUUsSUFBSSxJQUFJSixLQUFLLENBQUMsY0FBYztRQUMxQ00sUUFBUUMsS0FBSyxDQUNYLG1CQUFpQlYsY0FBWSx1Q0FBb0NKLE9BQU9lLFFBQVEsR0FBQztRQUVuRixNQUFNQyxnQkFBZ0JDLENBQUFBLEdBQUFBLE9BQUFBLHdCQUF3QixFQUFDVDtRQUMvQ0osY0FBYyxDQUFDRSxnQkFBZ0JBLGFBQWEsQ0FBQyxFQUFFLEdBQUcsTUFBTVU7SUFDMUQ7SUFFQSwyREFBMkQ7SUFDM0QsSUFBSSxDQUFDRSxDQUFBQSxHQUFBQSxZQUFBQSxVQUFVLEVBQUNkLGNBQWM7UUFDNUIsT0FBUUYsWUFBWTtZQUFDRTtTQUFZLEdBQUdBO0lBQ3RDO0lBRUEsSUFBSTtRQUNGRCxPQUFPLElBQUlnQixJQUNUZixZQUFZZ0IsVUFBVSxDQUFDLE9BQU9wQixPQUFPcUIsTUFBTSxHQUFHckIsT0FBT2UsUUFBUSxFQUM3RDtJQUVKLEVBQUUsT0FBT08sR0FBRztRQUNWLGtEQUFrRDtRQUNsRG5CLE9BQU8sSUFBSWdCLElBQUksS0FBSztJQUN0QjtJQUVBLElBQUk7UUFDRixNQUFNSSxXQUFXLElBQUlKLElBQUlmLGFBQWFEO1FBQ3RDb0IsU0FBU1IsUUFBUSxHQUFHUyxDQUFBQSxHQUFBQSx3QkFBQUEsMEJBQTBCLEVBQUNELFNBQVNSLFFBQVE7UUFDaEUsSUFBSVUsaUJBQWlCO1FBRXJCLElBQ0VDLENBQUFBLEdBQUFBLFFBQUFBLGNBQWMsRUFBQ0gsU0FBU1IsUUFBUSxLQUNoQ1EsU0FBU0ksWUFBWSxJQUNyQnpCLFdBQ0E7WUFDQSxNQUFNMEIsUUFBUUMsQ0FBQUEsR0FBQUEsYUFBQUEsc0JBQXNCLEVBQUNOLFNBQVNJLFlBQVk7WUFFMUQsTUFBTSxFQUFFRyxNQUFNLEVBQUVDLE1BQU0sRUFBRSxHQUFHQyxDQUFBQSxHQUFBQSxlQUFBQSxhQUFhLEVBQ3RDVCxTQUFTUixRQUFRLEVBQ2pCUSxTQUFTUixRQUFRLEVBQ2pCYTtZQUdGLElBQUlFLFFBQVE7Z0JBQ1ZMLGlCQUFpQnBCLENBQUFBLEdBQUFBLFdBQUFBLG9CQUFvQixFQUFDO29CQUNwQ1UsVUFBVWU7b0JBQ1ZHLE1BQU1WLFNBQVNVLElBQUk7b0JBQ25CTCxPQUFPTSxDQUFBQSxHQUFBQSxNQUFBQSxJQUFJLEVBQUNOLE9BQU9HO2dCQUNyQjtZQUNGO1FBQ0Y7UUFFQSxvRUFBb0U7UUFDcEUsTUFBTUksZUFDSlosU0FBU2EsTUFBTSxLQUFLakMsS0FBS2lDLE1BQU0sR0FDM0JiLFNBQVN0QixJQUFJLENBQUNRLEtBQUssQ0FBQ2MsU0FBU2EsTUFBTSxDQUFDMUIsTUFBTSxJQUMxQ2EsU0FBU3RCLElBQUk7UUFFbkIsT0FBT0MsWUFDSDtZQUFDaUM7WUFBY1Ysa0JBQWtCVTtTQUFhLEdBQzlDQTtJQUNOLEVBQUUsT0FBT2IsR0FBRztRQUNWLE9BQU9wQixZQUFZO1lBQUNFO1NBQVksR0FBR0E7SUFDckM7QUFDRiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vc3JjL2NsaWVudC9yZXNvbHZlLWhyZWYudHM/ZTZkMiJdLCJuYW1lcyI6WyJyZXNvbHZlSHJlZiIsInJvdXRlciIsImhyZWYiLCJyZXNvbHZlQXMiLCJiYXNlIiwidXJsQXNTdHJpbmciLCJmb3JtYXRXaXRoVmFsaWRhdGlvbiIsInVybFByb3RvTWF0Y2giLCJtYXRjaCIsInVybEFzU3RyaW5nTm9Qcm90byIsInNsaWNlIiwibGVuZ3RoIiwidXJsUGFydHMiLCJzcGxpdCIsImNvbnNvbGUiLCJlcnJvciIsInBhdGhuYW1lIiwibm9ybWFsaXplZFVybCIsIm5vcm1hbGl6ZVJlcGVhdGVkU2xhc2hlcyIsImlzTG9jYWxVUkwiLCJVUkwiLCJzdGFydHNXaXRoIiwiYXNQYXRoIiwiXyIsImZpbmFsVXJsIiwibm9ybWFsaXplUGF0aFRyYWlsaW5nU2xhc2giLCJpbnRlcnBvbGF0ZWRBcyIsImlzRHluYW1pY1JvdXRlIiwic2VhcmNoUGFyYW1zIiwicXVlcnkiLCJzZWFyY2hQYXJhbXNUb1VybFF1ZXJ5IiwicmVzdWx0IiwicGFyYW1zIiwiaW50ZXJwb2xhdGVBcyIsImhhc2giLCJvbWl0IiwicmVzb2x2ZWRIcmVmIiwib3JpZ2luIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/resolve-href.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/client/use-intersection.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/next/dist/client/use-intersection.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"useIntersection\", ({\n enumerable: true,\n get: function() {\n return useIntersection;\n }\n}));\nconst _react = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\nconst _requestidlecallback = __webpack_require__(/*! ./request-idle-callback */ \"(app-pages-browser)/./node_modules/next/dist/client/request-idle-callback.js\");\nconst hasIntersectionObserver = typeof IntersectionObserver === \"function\";\nconst observers = new Map();\nconst idList = [];\nfunction createObserver(options) {\n const id = {\n root: options.root || null,\n margin: options.rootMargin || \"\"\n };\n const existing = idList.find((obj)=>obj.root === id.root && obj.margin === id.margin);\n let instance;\n if (existing) {\n instance = observers.get(existing);\n if (instance) {\n return instance;\n }\n }\n const elements = new Map();\n const observer = new IntersectionObserver((entries)=>{\n entries.forEach((entry)=>{\n const callback = elements.get(entry.target);\n const isVisible = entry.isIntersecting || entry.intersectionRatio > 0;\n if (callback && isVisible) {\n callback(isVisible);\n }\n });\n }, options);\n instance = {\n id,\n observer,\n elements\n };\n idList.push(id);\n observers.set(id, instance);\n return instance;\n}\nfunction observe(element, callback, options) {\n const { id, observer, elements } = createObserver(options);\n elements.set(element, callback);\n observer.observe(element);\n return function unobserve() {\n elements.delete(element);\n observer.unobserve(element);\n // Destroy observer when there's nothing left to watch:\n if (elements.size === 0) {\n observer.disconnect();\n observers.delete(id);\n const index = idList.findIndex((obj)=>obj.root === id.root && obj.margin === id.margin);\n if (index > -1) {\n idList.splice(index, 1);\n }\n }\n };\n}\nfunction useIntersection(param) {\n let { rootRef, rootMargin, disabled } = param;\n const isDisabled = disabled || !hasIntersectionObserver;\n const [visible, setVisible] = (0, _react.useState)(false);\n const elementRef = (0, _react.useRef)(null);\n const setElement = (0, _react.useCallback)((element)=>{\n elementRef.current = element;\n }, []);\n (0, _react.useEffect)(()=>{\n if (hasIntersectionObserver) {\n if (isDisabled || visible) return;\n const element = elementRef.current;\n if (element && element.tagName) {\n const unobserve = observe(element, (isVisible)=>isVisible && setVisible(isVisible), {\n root: rootRef == null ? void 0 : rootRef.current,\n rootMargin\n });\n return unobserve;\n }\n } else {\n if (!visible) {\n const idleCallback = (0, _requestidlecallback.requestIdleCallback)(()=>setVisible(true));\n return ()=>(0, _requestidlecallback.cancelIdleCallback)(idleCallback);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isDisabled,\n rootMargin,\n rootRef,\n visible,\n elementRef.current\n ]);\n const resetVisible = (0, _react.useCallback)(()=>{\n setVisible(false);\n }, []);\n return [\n setElement,\n visible,\n resetVisible\n ];\n}\nif ((typeof exports.default === \"function\" || typeof exports.default === \"object\" && exports.default !== null) && typeof exports.default.__esModule === \"undefined\") {\n Object.defineProperty(exports.default, \"__esModule\", {\n value: true\n });\n Object.assign(exports.default, exports);\n module.exports = exports.default;\n} //# sourceMappingURL=use-intersection.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY2xpZW50L3VzZS1pbnRlcnNlY3Rpb24uanMiLCJtYXBwaW5ncyI6Ijs7OzttREErRmdCQTs7O2VBQUFBOzs7bUNBL0Z5QztpREFJbEQ7QUFxQlAsTUFBTUMsMEJBQTBCLE9BQU9DLHlCQUF5QjtBQUVoRSxNQUFNQyxZQUFZLElBQUlDO0FBQ3RCLE1BQU1DLFNBQXVCLEVBQUU7QUFFL0IsU0FBU0MsZUFBZUMsT0FBb0M7SUFDMUQsTUFBTUMsS0FBSztRQUNUQyxNQUFNRixRQUFRRSxJQUFJLElBQUk7UUFDdEJDLFFBQVFILFFBQVFJLFVBQVUsSUFBSTtJQUNoQztJQUNBLE1BQU1DLFdBQVdQLE9BQU9RLElBQUksQ0FDMUIsQ0FBQ0MsTUFBUUEsSUFBSUwsSUFBSSxLQUFLRCxHQUFHQyxJQUFJLElBQUlLLElBQUlKLE1BQU0sS0FBS0YsR0FBR0UsTUFBTTtJQUUzRCxJQUFJSztJQUVKLElBQUlILFVBQVU7UUFDWkcsV0FBV1osVUFBVWEsR0FBRyxDQUFDSjtRQUN6QixJQUFJRyxVQUFVO1lBQ1osT0FBT0E7UUFDVDtJQUNGO0lBRUEsTUFBTUUsV0FBVyxJQUFJYjtJQUNyQixNQUFNYyxXQUFXLElBQUloQixxQkFBcUIsQ0FBQ2lCO1FBQ3pDQSxRQUFRQyxPQUFPLENBQUMsQ0FBQ0M7WUFDZixNQUFNQyxXQUFXTCxTQUFTRCxHQUFHLENBQUNLLE1BQU1FLE1BQU07WUFDMUMsTUFBTUMsWUFBWUgsTUFBTUksY0FBYyxJQUFJSixNQUFNSyxpQkFBaUIsR0FBRztZQUNwRSxJQUFJSixZQUFZRSxXQUFXO2dCQUN6QkYsU0FBU0U7WUFDWDtRQUNGO0lBQ0YsR0FBR2pCO0lBQ0hRLFdBQVc7UUFDVFA7UUFDQVU7UUFDQUQ7SUFDRjtJQUVBWixPQUFPc0IsSUFBSSxDQUFDbkI7SUFDWkwsVUFBVXlCLEdBQUcsQ0FBQ3BCLElBQUlPO0lBQ2xCLE9BQU9BO0FBQ1Q7QUFFQSxTQUFTYyxRQUNQQyxPQUFnQixFQUNoQlIsUUFBeUIsRUFDekJmLE9BQW9DO0lBRXBDLE1BQU0sRUFBRUMsRUFBRSxFQUFFVSxRQUFRLEVBQUVELFFBQVEsRUFBRSxHQUFHWCxlQUFlQztJQUNsRFUsU0FBU1csR0FBRyxDQUFDRSxTQUFTUjtJQUV0QkosU0FBU1csT0FBTyxDQUFDQztJQUNqQixPQUFPLFNBQVNDO1FBQ2RkLFNBQVNlLE1BQU0sQ0FBQ0Y7UUFDaEJaLFNBQVNhLFNBQVMsQ0FBQ0Q7UUFFbkIsdURBQXVEO1FBQ3ZELElBQUliLFNBQVNnQixJQUFJLEtBQUssR0FBRztZQUN2QmYsU0FBU2dCLFVBQVU7WUFDbkIvQixVQUFVNkIsTUFBTSxDQUFDeEI7WUFDakIsTUFBTTJCLFFBQVE5QixPQUFPK0IsU0FBUyxDQUM1QixDQUFDdEIsTUFBUUEsSUFBSUwsSUFBSSxLQUFLRCxHQUFHQyxJQUFJLElBQUlLLElBQUlKLE1BQU0sS0FBS0YsR0FBR0UsTUFBTTtZQUUzRCxJQUFJeUIsUUFBUSxDQUFDLEdBQUc7Z0JBQ2Q5QixPQUFPZ0MsTUFBTSxDQUFDRixPQUFPO1lBQ3ZCO1FBQ0Y7SUFDRjtBQUNGO0FBRU8sU0FBU25DLGdCQUFtQ3NDLEtBSWpDO0lBSmlDLE1BQ2pEQyxPQUFPLEVBQ1A1QixVQUFVLEVBQ1Y2QixRQUFRLEVBQ1EsR0FKaUNGO0lBS2pELE1BQU1HLGFBQXNCRCxZQUFZLENBQUN2QztJQUV6QyxNQUFNLENBQUN5QyxTQUFTQyxXQUFXLEdBQUdDLENBQUFBLEdBQUFBLE9BQUFBLFFBQVEsRUFBQztJQUN2QyxNQUFNQyxhQUFhQyxDQUFBQSxHQUFBQSxPQUFBQSxNQUFNLEVBQVc7SUFDcEMsTUFBTUMsYUFBYUMsQ0FBQUEsR0FBQUEsT0FBQUEsV0FBVyxFQUFDLENBQUNsQjtRQUM5QmUsV0FBV0ksT0FBTyxHQUFHbkI7SUFDdkIsR0FBRyxFQUFFO0lBRUxvQixDQUFBQSxHQUFBQSxPQUFBQSxTQUFTLEVBQUM7UUFDUixJQUFJakQseUJBQXlCO1lBQzNCLElBQUl3QyxjQUFjQyxTQUFTO1lBRTNCLE1BQU1aLFVBQVVlLFdBQVdJLE9BQU87WUFDbEMsSUFBSW5CLFdBQVdBLFFBQVFxQixPQUFPLEVBQUU7Z0JBQzlCLE1BQU1wQixZQUFZRixRQUNoQkMsU0FDQSxDQUFDTixZQUFjQSxhQUFhbUIsV0FBV25CLFlBQ3ZDO29CQUFFZixNQUFNOEIsV0FBQUEsT0FBQUEsS0FBQUEsSUFBQUEsUUFBU1UsT0FBTztvQkFBRXRDO2dCQUFXO2dCQUd2QyxPQUFPb0I7WUFDVDtRQUNGLE9BQU87WUFDTCxJQUFJLENBQUNXLFNBQVM7Z0JBQ1osTUFBTVUsZUFBZUMsQ0FBQUEsR0FBQUEscUJBQUFBLG1CQUFtQixFQUFDLElBQU1WLFdBQVc7Z0JBQzFELE9BQU8sSUFBTVcsQ0FBQUEsR0FBQUEscUJBQUFBLGtCQUFrQixFQUFDRjtZQUNsQztRQUNGO0lBQ0EsdURBQXVEO0lBQ3pELEdBQUc7UUFBQ1g7UUFBWTlCO1FBQVk0QjtRQUFTRztRQUFTRyxXQUFXSSxPQUFPO0tBQUM7SUFFakUsTUFBTU0sZUFBZVAsQ0FBQUEsR0FBQUEsT0FBQUEsV0FBVyxFQUFDO1FBQy9CTCxXQUFXO0lBQ2IsR0FBRyxFQUFFO0lBRUwsT0FBTztRQUFDSTtRQUFZTDtRQUFTYTtLQUFhO0FBQzVDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi9zcmMvY2xpZW50L3VzZS1pbnRlcnNlY3Rpb24udHN4PzU3ZWUiXSwibmFtZXMiOlsidXNlSW50ZXJzZWN0aW9uIiwiaGFzSW50ZXJzZWN0aW9uT2JzZXJ2ZXIiLCJJbnRlcnNlY3Rpb25PYnNlcnZlciIsIm9ic2VydmVycyIsIk1hcCIsImlkTGlzdCIsImNyZWF0ZU9ic2VydmVyIiwib3B0aW9ucyIsImlkIiwicm9vdCIsIm1hcmdpbiIsInJvb3RNYXJnaW4iLCJleGlzdGluZyIsImZpbmQiLCJvYmoiLCJpbnN0YW5jZSIsImdldCIsImVsZW1lbnRzIiwib2JzZXJ2ZXIiLCJlbnRyaWVzIiwiZm9yRWFjaCIsImVudHJ5IiwiY2FsbGJhY2siLCJ0YXJnZXQiLCJpc1Zpc2libGUiLCJpc0ludGVyc2VjdGluZyIsImludGVyc2VjdGlvblJhdGlvIiwicHVzaCIsInNldCIsIm9ic2VydmUiLCJlbGVtZW50IiwidW5vYnNlcnZlIiwiZGVsZXRlIiwic2l6ZSIsImRpc2Nvbm5lY3QiLCJpbmRleCIsImZpbmRJbmRleCIsInNwbGljZSIsInBhcmFtIiwicm9vdFJlZiIsImRpc2FibGVkIiwiaXNEaXNhYmxlZCIsInZpc2libGUiLCJzZXRWaXNpYmxlIiwidXNlU3RhdGUiLCJlbGVtZW50UmVmIiwidXNlUmVmIiwic2V0RWxlbWVudCIsInVzZUNhbGxiYWNrIiwiY3VycmVudCIsInVzZUVmZmVjdCIsInRhZ05hbWUiLCJpZGxlQ2FsbGJhY2siLCJyZXF1ZXN0SWRsZUNhbGxiYWNrIiwiY2FuY2VsSWRsZUNhbGxiYWNrIiwicmVzZXRWaXNpYmxlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/client/use-intersection.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-context.shared-runtime.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/amp-context.shared-runtime.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"AmpStateContext\", ({\n enumerable: true,\n get: function() {\n return AmpStateContext;\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 _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst AmpStateContext = _react.default.createContext({});\nif (true) {\n AmpStateContext.displayName = \"AmpStateContext\";\n} //# sourceMappingURL=amp-context.shared-runtime.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9hbXAtY29udGV4dC5zaGFyZWQtcnVudGltZS5qcyIsIm1hcHBpbmdzIjoiOzs7O21EQUVhQTs7O2VBQUFBOzs7OzRFQUZLO0FBRVgsTUFBTUEsa0JBQXNDQyxPQUFBQSxPQUFLLENBQUNDLGFBQWEsQ0FBQyxDQUFDO0FBRXhFLElBQUlDLElBQXlCLEVBQWM7SUFDekNILGdCQUFnQkksV0FBVyxHQUFHO0FBQ2hDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9hbXAtY29udGV4dC5zaGFyZWQtcnVudGltZS50cz85NjQxIl0sIm5hbWVzIjpbIkFtcFN0YXRlQ29udGV4dCIsIlJlYWN0IiwiY3JlYXRlQ29udGV4dCIsInByb2Nlc3MiLCJkaXNwbGF5TmFtZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-context.shared-runtime.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-mode.js":
|
||
/*!*******************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/amp-mode.js ***!
|
||
\*******************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isInAmpMode\", ({\n enumerable: true,\n get: function() {\n return isInAmpMode;\n }\n}));\nfunction isInAmpMode(param) {\n let { ampFirst = false, hybrid = false, hasQuery = false } = param === void 0 ? {} : param;\n return ampFirst || hybrid && hasQuery;\n} //# sourceMappingURL=amp-mode.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9hbXAtbW9kZS5qcyIsIm1hcHBpbmdzIjoiOzs7OytDQUFnQkE7OztlQUFBQTs7O0FBQVQsU0FBU0EsWUFBWUMsS0FBQTtJQUFBLE1BQzFCQyxXQUFXLEtBQUssRUFDaEJDLFNBQVMsS0FBSyxFQUNkQyxXQUFXLEtBQUssRUFDakIsR0FKMkJILFVBQUEsU0FJeEIsQ0FBQyxJQUp1QkE7SUFLMUIsT0FBT0MsWUFBYUMsVUFBVUM7QUFDaEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL2FtcC1tb2RlLnRzP2NlMDQiXSwibmFtZXMiOlsiaXNJbkFtcE1vZGUiLCJwYXJhbSIsImFtcEZpcnN0IiwiaHlicmlkIiwiaGFzUXVlcnkiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-mode.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/escape-regexp.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/escape-regexp.js ***!
|
||
\************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("// regexp is based on https://github.com/sindresorhus/escape-string-regexp\n\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"escapeStringRegexp\", ({\n enumerable: true,\n get: function() {\n return escapeStringRegexp;\n }\n}));\nconst reHasRegExp = /[|\\\\{}()[\\]^$+*?.-]/;\nconst reReplaceRegExp = /[|\\\\{}()[\\]^$+*?.-]/g;\nfunction escapeStringRegexp(str) {\n // see also: https://github.com/lodash/lodash/blob/2da024c3b4f9947a48517639de7560457cd4ec6c/escapeRegExp.js#L23\n if (reHasRegExp.test(str)) {\n return str.replace(reReplaceRegExp, \"\\\\$&\");\n }\n return str;\n} //# sourceMappingURL=escape-regexp.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9lc2NhcGUtcmVnZXhwLmpzIiwibWFwcGluZ3MiOiJBQUFBLDBFQUEwRTs7Ozs7c0RBSTFEQTs7O2VBQUFBOzs7QUFIaEIsTUFBTUMsY0FBYztBQUNwQixNQUFNQyxrQkFBa0I7QUFFakIsU0FBU0YsbUJBQW1CRyxHQUFXO0lBQzVDLCtHQUErRztJQUMvRyxJQUFJRixZQUFZRyxJQUFJLENBQUNELE1BQU07UUFDekIsT0FBT0EsSUFBSUUsT0FBTyxDQUFDSCxpQkFBaUI7SUFDdEM7SUFDQSxPQUFPQztBQUNUIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9lc2NhcGUtcmVnZXhwLnRzP2RjYjEiXSwibmFtZXMiOlsiZXNjYXBlU3RyaW5nUmVnZXhwIiwicmVIYXNSZWdFeHAiLCJyZVJlcGxhY2VSZWdFeHAiLCJzdHIiLCJ0ZXN0IiwicmVwbGFjZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/escape-regexp.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/get-img-props.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/get-img-props.js ***!
|
||
\************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"getImgProps\", ({\n enumerable: true,\n get: function() {\n return getImgProps;\n }\n}));\nconst _warnonce = __webpack_require__(/*! ./utils/warn-once */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/warn-once.js\");\nconst _imageblursvg = __webpack_require__(/*! ./image-blur-svg */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-blur-svg.js\");\nconst _imageconfig = __webpack_require__(/*! ./image-config */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config.js\");\nconst VALID_LOADING_VALUES = [\n \"lazy\",\n \"eager\",\n undefined\n];\nfunction isStaticRequire(src) {\n return src.default !== undefined;\n}\nfunction isStaticImageData(src) {\n return src.src !== undefined;\n}\nfunction isStaticImport(src) {\n return typeof src === \"object\" && (isStaticRequire(src) || isStaticImageData(src));\n}\nconst allImgs = new Map();\nlet perfObserver;\nfunction getInt(x) {\n if (typeof x === \"undefined\") {\n return x;\n }\n if (typeof x === \"number\") {\n return Number.isFinite(x) ? x : NaN;\n }\n if (typeof x === \"string\" && /^[0-9]+$/.test(x)) {\n return parseInt(x, 10);\n }\n return NaN;\n}\nfunction getWidths(param, width, sizes) {\n let { deviceSizes, allSizes } = param;\n if (sizes) {\n // Find all the \"vw\" percent sizes used in the sizes prop\n const viewportWidthRe = /(^|\\s)(1?\\d?\\d)vw/g;\n const percentSizes = [];\n for(let match; match = viewportWidthRe.exec(sizes); match){\n percentSizes.push(parseInt(match[2]));\n }\n if (percentSizes.length) {\n const smallestRatio = Math.min(...percentSizes) * 0.01;\n return {\n widths: allSizes.filter((s)=>s >= deviceSizes[0] * smallestRatio),\n kind: \"w\"\n };\n }\n return {\n widths: allSizes,\n kind: \"w\"\n };\n }\n if (typeof width !== \"number\") {\n return {\n widths: deviceSizes,\n kind: \"w\"\n };\n }\n const widths = [\n ...new Set(// > are actually 3x in the green color, but only 1.5x in the red and\n // > blue colors. Showing a 3x resolution image in the app vs a 2x\n // > resolution image will be visually the same, though the 3x image\n // > takes significantly more data. Even true 3x resolution screens are\n // > wasteful as the human eye cannot see that level of detail without\n // > something like a magnifying glass.\n // https://blog.twitter.com/engineering/en_us/topics/infrastructure/2019/capping-image-fidelity-on-ultra-high-resolution-devices.html\n [\n width,\n width * 2 /*, width * 3*/ \n ].map((w)=>allSizes.find((p)=>p >= w) || allSizes[allSizes.length - 1]))\n ];\n return {\n widths,\n kind: \"x\"\n };\n}\nfunction generateImgAttrs(param) {\n let { config, src, unoptimized, width, quality, sizes, loader } = param;\n if (unoptimized) {\n return {\n src,\n srcSet: undefined,\n sizes: undefined\n };\n }\n const { widths, kind } = getWidths(config, width, sizes);\n const last = widths.length - 1;\n return {\n sizes: !sizes && kind === \"w\" ? \"100vw\" : sizes,\n srcSet: widths.map((w, i)=>loader({\n config,\n src,\n quality,\n width: w\n }) + \" \" + (kind === \"w\" ? w : i + 1) + kind).join(\", \"),\n // It's intended to keep `src` the last attribute because React updates\n // attributes in order. If we keep `src` the first one, Safari will\n // immediately start to fetch `src`, before `sizes` and `srcSet` are even\n // updated by React. That causes multiple unnecessary requests if `srcSet`\n // and `sizes` are defined.\n // This bug cannot be reproduced in Chrome or Firefox.\n src: loader({\n config,\n src,\n quality,\n width: widths[last]\n })\n };\n}\nfunction getImgProps(param, _state) {\n let { src, sizes, unoptimized = false, priority = false, loading, className, quality, width, height, fill = false, style, overrideSrc, onLoad, onLoadingComplete, placeholder = \"empty\", blurDataURL, fetchPriority, layout, objectFit, objectPosition, lazyBoundary, lazyRoot, ...rest } = param;\n const { imgConf, showAltText, blurComplete, defaultLoader } = _state;\n let config;\n let c = imgConf || _imageconfig.imageConfigDefault;\n if (\"allSizes\" in c) {\n config = c;\n } else {\n const allSizes = [\n ...c.deviceSizes,\n ...c.imageSizes\n ].sort((a, b)=>a - b);\n const deviceSizes = c.deviceSizes.sort((a, b)=>a - b);\n config = {\n ...c,\n allSizes,\n deviceSizes\n };\n }\n if (typeof defaultLoader === \"undefined\") {\n throw new Error(\"images.loaderFile detected but the file is missing default export.\\nRead more: https://nextjs.org/docs/messages/invalid-images-config\");\n }\n let loader = rest.loader || defaultLoader;\n // Remove property so it's not spread on <img> element\n delete rest.loader;\n delete rest.srcSet;\n // This special value indicates that the user\n // didn't define a \"loader\" prop or \"loader\" config.\n const isDefaultLoader = \"__next_img_default\" in loader;\n if (isDefaultLoader) {\n if (config.loader === \"custom\") {\n throw new Error('Image with src \"' + src + '\" is missing \"loader\" prop.' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader\");\n }\n } else {\n // The user defined a \"loader\" prop or config.\n // Since the config object is internal only, we\n // must not pass it to the user-defined \"loader\".\n const customImageLoader = loader;\n loader = (obj)=>{\n const { config: _, ...opts } = obj;\n return customImageLoader(opts);\n };\n }\n if (layout) {\n if (layout === \"fill\") {\n fill = true;\n }\n const layoutToStyle = {\n intrinsic: {\n maxWidth: \"100%\",\n height: \"auto\"\n },\n responsive: {\n width: \"100%\",\n height: \"auto\"\n }\n };\n const layoutToSizes = {\n responsive: \"100vw\",\n fill: \"100vw\"\n };\n const layoutStyle = layoutToStyle[layout];\n if (layoutStyle) {\n style = {\n ...style,\n ...layoutStyle\n };\n }\n const layoutSizes = layoutToSizes[layout];\n if (layoutSizes && !sizes) {\n sizes = layoutSizes;\n }\n }\n let staticSrc = \"\";\n let widthInt = getInt(width);\n let heightInt = getInt(height);\n let blurWidth;\n let blurHeight;\n if (isStaticImport(src)) {\n const staticImageData = isStaticRequire(src) ? src.default : src;\n if (!staticImageData.src) {\n throw new Error(\"An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received \" + JSON.stringify(staticImageData));\n }\n if (!staticImageData.height || !staticImageData.width) {\n throw new Error(\"An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received \" + JSON.stringify(staticImageData));\n }\n blurWidth = staticImageData.blurWidth;\n blurHeight = staticImageData.blurHeight;\n blurDataURL = blurDataURL || staticImageData.blurDataURL;\n staticSrc = staticImageData.src;\n if (!fill) {\n if (!widthInt && !heightInt) {\n widthInt = staticImageData.width;\n heightInt = staticImageData.height;\n } else if (widthInt && !heightInt) {\n const ratio = widthInt / staticImageData.width;\n heightInt = Math.round(staticImageData.height * ratio);\n } else if (!widthInt && heightInt) {\n const ratio = heightInt / staticImageData.height;\n widthInt = Math.round(staticImageData.width * ratio);\n }\n }\n }\n src = typeof src === \"string\" ? src : staticSrc;\n let isLazy = !priority && (loading === \"lazy\" || typeof loading === \"undefined\");\n if (!src || src.startsWith(\"data:\") || src.startsWith(\"blob:\")) {\n // https://developer.mozilla.org/docs/Web/HTTP/Basics_of_HTTP/Data_URIs\n unoptimized = true;\n isLazy = false;\n }\n if (config.unoptimized) {\n unoptimized = true;\n }\n if (isDefaultLoader && src.endsWith(\".svg\") && !config.dangerouslyAllowSVG) {\n // Special case to make svg serve as-is to avoid proxying\n // through the built-in Image Optimization API.\n unoptimized = true;\n }\n if (priority) {\n fetchPriority = \"high\";\n }\n const qualityInt = getInt(quality);\n if (true) {\n if (config.output === \"export\" && isDefaultLoader && !unoptimized) {\n throw new Error(\"Image Optimization using the default loader is not compatible with `{ output: 'export' }`.\\n Possible solutions:\\n - Remove `{ output: 'export' }` and run \\\"next start\\\" to run server mode including the Image Optimization API.\\n - Configure `{ images: { unoptimized: true } }` in `next.config.js` to disable the Image Optimization API.\\n Read more: https://nextjs.org/docs/messages/export-image-api\");\n }\n if (!src) {\n // React doesn't show the stack trace and there's\n // no `src` to help identify which image, so we\n // instead console.error(ref) during mount.\n unoptimized = true;\n } else {\n if (fill) {\n if (width) {\n throw new Error('Image with src \"' + src + '\" has both \"width\" and \"fill\" properties. Only one should be used.');\n }\n if (height) {\n throw new Error('Image with src \"' + src + '\" has both \"height\" and \"fill\" properties. Only one should be used.');\n }\n if ((style == null ? void 0 : style.position) && style.position !== \"absolute\") {\n throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.position\" properties. Images with \"fill\" always use position absolute - it cannot be modified.');\n }\n if ((style == null ? void 0 : style.width) && style.width !== \"100%\") {\n throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.width\" properties. Images with \"fill\" always use width 100% - it cannot be modified.');\n }\n if ((style == null ? void 0 : style.height) && style.height !== \"100%\") {\n throw new Error('Image with src \"' + src + '\" has both \"fill\" and \"style.height\" properties. Images with \"fill\" always use height 100% - it cannot be modified.');\n }\n } else {\n if (typeof widthInt === \"undefined\") {\n throw new Error('Image with src \"' + src + '\" is missing required \"width\" property.');\n } else if (isNaN(widthInt)) {\n throw new Error('Image with src \"' + src + '\" has invalid \"width\" property. Expected a numeric value in pixels but received \"' + width + '\".');\n }\n if (typeof heightInt === \"undefined\") {\n throw new Error('Image with src \"' + src + '\" is missing required \"height\" property.');\n } else if (isNaN(heightInt)) {\n throw new Error('Image with src \"' + src + '\" has invalid \"height\" property. Expected a numeric value in pixels but received \"' + height + '\".');\n }\n }\n }\n if (!VALID_LOADING_VALUES.includes(loading)) {\n throw new Error('Image with src \"' + src + '\" has invalid \"loading\" property. Provided \"' + loading + '\" should be one of ' + VALID_LOADING_VALUES.map(String).join(\",\") + \".\");\n }\n if (priority && loading === \"lazy\") {\n throw new Error('Image with src \"' + src + '\" has both \"priority\" and \"loading=\\'lazy\\'\" properties. Only one should be used.');\n }\n if (placeholder !== \"empty\" && placeholder !== \"blur\" && !placeholder.startsWith(\"data:image/\")) {\n throw new Error('Image with src \"' + src + '\" has invalid \"placeholder\" property \"' + placeholder + '\".');\n }\n if (placeholder !== \"empty\") {\n if (widthInt && heightInt && widthInt * heightInt < 1600) {\n (0, _warnonce.warnOnce)('Image with src \"' + src + '\" is smaller than 40x40. Consider removing the \"placeholder\" property to improve performance.');\n }\n }\n if (placeholder === \"blur\" && !blurDataURL) {\n const VALID_BLUR_EXT = [\n \"jpeg\",\n \"png\",\n \"webp\",\n \"avif\"\n ] // should match next-image-loader\n ;\n throw new Error('Image with src \"' + src + '\" has \"placeholder=\\'blur\\'\" property but is missing the \"blurDataURL\" property.\\n Possible solutions:\\n - Add a \"blurDataURL\" property, the contents should be a small Data URL to represent the image\\n - Change the \"src\" property to a static import with one of the supported file types: ' + VALID_BLUR_EXT.join(\",\") + ' (animated images not supported)\\n - Remove the \"placeholder\" property, effectively no blur effect\\n Read more: https://nextjs.org/docs/messages/placeholder-blur-data-url');\n }\n if (\"ref\" in rest) {\n (0, _warnonce.warnOnce)('Image with src \"' + src + '\" is using unsupported \"ref\" property. Consider using the \"onLoad\" property instead.');\n }\n if (!unoptimized && !isDefaultLoader) {\n const urlStr = loader({\n config,\n src,\n width: widthInt || 400,\n quality: qualityInt || 75\n });\n let url;\n try {\n url = new URL(urlStr);\n } catch (err) {}\n if (urlStr === src || url && url.pathname === src && !url.search) {\n (0, _warnonce.warnOnce)('Image with src \"' + src + '\" has a \"loader\" property that does not implement width. Please implement it or use the \"unoptimized\" property instead.' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-missing-loader-width\");\n }\n }\n if (onLoadingComplete) {\n (0, _warnonce.warnOnce)('Image with src \"' + src + '\" is using deprecated \"onLoadingComplete\" property. Please use the \"onLoad\" property instead.');\n }\n for (const [legacyKey, legacyValue] of Object.entries({\n layout,\n objectFit,\n objectPosition,\n lazyBoundary,\n lazyRoot\n })){\n if (legacyValue) {\n (0, _warnonce.warnOnce)('Image with src \"' + src + '\" has legacy prop \"' + legacyKey + '\". Did you forget to run the codemod?' + \"\\nRead more: https://nextjs.org/docs/messages/next-image-upgrade-to-13\");\n }\n }\n if (typeof window !== \"undefined\" && !perfObserver && window.PerformanceObserver) {\n perfObserver = new PerformanceObserver((entryList)=>{\n for (const entry of entryList.getEntries()){\n var _entry_element;\n // @ts-ignore - missing \"LargestContentfulPaint\" class with \"element\" prop\n const imgSrc = (entry == null ? void 0 : (_entry_element = entry.element) == null ? void 0 : _entry_element.src) || \"\";\n const lcpImage = allImgs.get(imgSrc);\n if (lcpImage && !lcpImage.priority && lcpImage.placeholder === \"empty\" && !lcpImage.src.startsWith(\"data:\") && !lcpImage.src.startsWith(\"blob:\")) {\n // https://web.dev/lcp/#measure-lcp-in-javascript\n (0, _warnonce.warnOnce)('Image with src \"' + lcpImage.src + '\" was detected as the Largest Contentful Paint (LCP). Please add the \"priority\" property if this image is above the fold.' + \"\\nRead more: https://nextjs.org/docs/api-reference/next/image#priority\");\n }\n }\n });\n try {\n perfObserver.observe({\n type: \"largest-contentful-paint\",\n buffered: true\n });\n } catch (err) {\n // Log error but don't crash the app\n console.error(err);\n }\n }\n }\n const imgStyle = Object.assign(fill ? {\n position: \"absolute\",\n height: \"100%\",\n width: \"100%\",\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n objectFit,\n objectPosition\n } : {}, showAltText ? {} : {\n color: \"transparent\"\n }, style);\n const backgroundImage = !blurComplete && placeholder !== \"empty\" ? placeholder === \"blur\" ? 'url(\"data:image/svg+xml;charset=utf-8,' + (0, _imageblursvg.getImageBlurSvg)({\n widthInt,\n heightInt,\n blurWidth,\n blurHeight,\n blurDataURL: blurDataURL || \"\",\n objectFit: imgStyle.objectFit\n }) + '\")' : 'url(\"' + placeholder + '\")' // assume `data:image/`\n : null;\n let placeholderStyle = backgroundImage ? {\n backgroundSize: imgStyle.objectFit || \"cover\",\n backgroundPosition: imgStyle.objectPosition || \"50% 50%\",\n backgroundRepeat: \"no-repeat\",\n backgroundImage\n } : {};\n if (true) {\n if (placeholderStyle.backgroundImage && placeholder === \"blur\" && (blurDataURL == null ? void 0 : blurDataURL.startsWith(\"/\"))) {\n // During `next dev`, we don't want to generate blur placeholders with webpack\n // because it can delay starting the dev server. Instead, `next-image-loader.js`\n // will inline a special url to lazily generate the blur placeholder at request time.\n placeholderStyle.backgroundImage = 'url(\"' + blurDataURL + '\")';\n }\n }\n const imgAttributes = generateImgAttrs({\n config,\n src,\n unoptimized,\n width: widthInt,\n quality: qualityInt,\n sizes,\n loader\n });\n if (true) {\n if (typeof window !== \"undefined\") {\n let fullUrl;\n try {\n fullUrl = new URL(imgAttributes.src);\n } catch (e) {\n fullUrl = new URL(imgAttributes.src, window.location.href);\n }\n allImgs.set(fullUrl.href, {\n src,\n priority,\n placeholder\n });\n }\n }\n const props = {\n ...rest,\n loading: isLazy ? \"lazy\" : loading,\n fetchPriority,\n width: widthInt,\n height: heightInt,\n decoding: \"async\",\n className,\n style: {\n ...imgStyle,\n ...placeholderStyle\n },\n sizes: imgAttributes.sizes,\n srcSet: imgAttributes.srcSet,\n src: overrideSrc || imgAttributes.src\n };\n const meta = {\n unoptimized,\n priority,\n placeholder,\n fill\n };\n return {\n props,\n meta\n };\n} //# sourceMappingURL=get-img-props.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9nZXQtaW1nLXByb3BzLmpzIiwibWFwcGluZ3MiOiI7Ozs7K0NBMk9nQkE7OztlQUFBQTs7O3NDQTNPUzswQ0FDTzt5Q0FDRztBQTZFbkMsTUFBTUMsdUJBQXVCO0lBQUM7SUFBUTtJQUFTQztDQUFVO0FBa0J6RCxTQUFTQyxnQkFDUEMsR0FBb0M7SUFFcEMsT0FBT0EsSUFBdUJDLE9BQU8sS0FBS0g7QUFDNUM7QUFFQSxTQUFTSSxrQkFDUEYsR0FBb0M7SUFFcEMsT0FBT0EsSUFBeUJBLEdBQUcsS0FBS0Y7QUFDMUM7QUFFQSxTQUFTSyxlQUFlSCxHQUEwQjtJQUNoRCxPQUNFLE9BQU9BLFFBQVEsWUFDZEQsQ0FBQUEsZ0JBQWdCQyxRQUNmRSxrQkFBa0JGLElBQUFBO0FBRXhCO0FBRUEsTUFBTUksVUFBVSxJQUFJQztBQUlwQixJQUFJQztBQUVKLFNBQVNDLE9BQU9DLENBQVU7SUFDeEIsSUFBSSxPQUFPQSxNQUFNLGFBQWE7UUFDNUIsT0FBT0E7SUFDVDtJQUNBLElBQUksT0FBT0EsTUFBTSxVQUFVO1FBQ3pCLE9BQU9DLE9BQU9DLFFBQVEsQ0FBQ0YsS0FBS0EsSUFBSUc7SUFDbEM7SUFDQSxJQUFJLE9BQU9ILE1BQU0sWUFBWSxXQUFXSSxJQUFJLENBQUNKLElBQUk7UUFDL0MsT0FBT0ssU0FBU0wsR0FBRztJQUNyQjtJQUNBLE9BQU9HO0FBQ1Q7QUFFQSxTQUFTRyxVQUNQQyxLQUFzQyxFQUN0Q0MsS0FBeUIsRUFDekJDLEtBQXlCO0lBRnpCLE1BQUVDLFdBQVcsRUFBRUMsUUFBUSxFQUFlLEdBQXRDSjtJQUlBLElBQUlFLE9BQU87UUFDVCx5REFBeUQ7UUFDekQsTUFBTUcsa0JBQWtCO1FBQ3hCLE1BQU1DLGVBQWUsRUFBRTtRQUN2QixJQUFLLElBQUlDLE9BQVFBLFFBQVFGLGdCQUFnQkcsSUFBSSxDQUFDTixRQUFTSyxNQUFPO1lBQzVERCxhQUFhRyxJQUFJLENBQUNYLFNBQVNTLEtBQUssQ0FBQyxFQUFFO1FBQ3JDO1FBQ0EsSUFBSUQsYUFBYUksTUFBTSxFQUFFO1lBQ3ZCLE1BQU1DLGdCQUFnQkMsS0FBS0MsR0FBRyxJQUFJUCxnQkFBZ0I7WUFDbEQsT0FBTztnQkFDTFEsUUFBUVYsU0FBU1csTUFBTSxDQUFDLENBQUNDLElBQU1BLEtBQUtiLFdBQVcsQ0FBQyxFQUFFLEdBQUdRO2dCQUNyRE0sTUFBTTtZQUNSO1FBQ0Y7UUFDQSxPQUFPO1lBQUVILFFBQVFWO1lBQVVhLE1BQU07UUFBSTtJQUN2QztJQUNBLElBQUksT0FBT2hCLFVBQVUsVUFBVTtRQUM3QixPQUFPO1lBQUVhLFFBQVFYO1lBQWFjLE1BQU07UUFBSTtJQUMxQztJQUVBLE1BQU1ILFNBQVM7V0FDVixJQUFJSSxJQUVMLHFFQUFxRTtRQUNyRSxrRUFBa0U7UUFDbEUsb0VBQW9FO1FBQ3BFLHVFQUF1RTtRQUN2RSxzRUFBc0U7UUFDdEUsdUNBQXVDO1FBQ3ZDLHFJQUFxSTtRQUNySTtZQUFDakI7WUFBT0EsUUFBUSxFQUFFLGFBQWE7U0FBRyxDQUFDa0IsR0FBRyxDQUNwQyxDQUFDQyxJQUFNaEIsU0FBU2lCLElBQUksQ0FBQyxDQUFDQyxJQUFNQSxLQUFLRixNQUFNaEIsUUFBUSxDQUFDQSxTQUFTTSxNQUFNLEdBQUcsRUFBRTtLQUd6RTtJQUNELE9BQU87UUFBRUk7UUFBUUcsTUFBTTtJQUFJO0FBQzdCO0FBa0JBLFNBQVNNLGlCQUFpQnZCLEtBUVI7SUFSUSxNQUN4QndCLE1BQU0sRUFDTnZDLEdBQUcsRUFDSHdDLFdBQVcsRUFDWHhCLEtBQUssRUFDTHlCLE9BQU8sRUFDUHhCLEtBQUssRUFDTHlCLE1BQU0sRUFDVSxHQVJRM0I7SUFTeEIsSUFBSXlCLGFBQWE7UUFDZixPQUFPO1lBQUV4QztZQUFLMkMsUUFBUTdDO1lBQVdtQixPQUFPbkI7UUFBVTtJQUNwRDtJQUVBLE1BQU0sRUFBRStCLE1BQU0sRUFBRUcsSUFBSSxFQUFFLEdBQUdsQixVQUFVeUIsUUFBUXZCLE9BQU9DO0lBQ2xELE1BQU0yQixPQUFPZixPQUFPSixNQUFNLEdBQUc7SUFFN0IsT0FBTztRQUNMUixPQUFPLENBQUNBLFNBQVNlLFNBQVMsTUFBTSxVQUFVZjtRQUMxQzBCLFFBQVFkLE9BQ0xLLEdBQUcsQ0FDRixDQUFDQyxHQUFHVSxJQUNGSCxPQUFVO2dCQUFFSDtnQkFBUXZDO2dCQUFLeUM7Z0JBQVN6QixPQUFPbUI7WUFBRSxLQUFHLE1BQzVDSCxDQUFBQSxTQUFTLE1BQU1HLElBQUlVLElBQUksS0FDdEJiLE1BRU5jLElBQUksQ0FBQztRQUVSLHVFQUF1RTtRQUN2RSxtRUFBbUU7UUFDbkUseUVBQXlFO1FBQ3pFLDBFQUEwRTtRQUMxRSwyQkFBMkI7UUFDM0Isc0RBQXNEO1FBQ3REOUMsS0FBSzBDLE9BQU87WUFBRUg7WUFBUXZDO1lBQUt5QztZQUFTekIsT0FBT2EsTUFBTSxDQUFDZSxLQUFLO1FBQUM7SUFDMUQ7QUFDRjtBQUtPLFNBQVNoRCxZQUNkbUIsS0F3QmEsRUFDYmdDLE1BS0M7SUE5QkQsTUFDRS9DLEdBQUcsRUFDSGlCLEtBQUssRUFDTHVCLGNBQWMsS0FBSyxFQUNuQlEsV0FBVyxLQUFLLEVBQ2hCQyxPQUFPLEVBQ1BDLFNBQVMsRUFDVFQsT0FBTyxFQUNQekIsS0FBSyxFQUNMbUMsTUFBTSxFQUNOQyxPQUFPLEtBQUssRUFDWkMsS0FBSyxFQUNMQyxXQUFXLEVBQ1hDLE1BQU0sRUFDTkMsaUJBQWlCLEVBQ2pCQyxjQUFjLE9BQU8sRUFDckJDLFdBQVcsRUFDWEMsYUFBYSxFQUNiQyxNQUFNLEVBQ05DLFNBQVMsRUFDVEMsY0FBYyxFQUNkQyxZQUFZLEVBQ1pDLFFBQVEsRUFDUixHQUFHQyxNQUNRLEdBeEJibEQ7SUF3Q0EsTUFBTSxFQUFFbUQsT0FBTyxFQUFFQyxXQUFXLEVBQUVDLFlBQVksRUFBRUMsYUFBYSxFQUFFLEdBQUd0QjtJQUM5RCxJQUFJUjtJQUNKLElBQUkrQixJQUFJSixXQUFXSyxhQUFBQSxrQkFBa0I7SUFDckMsSUFBSSxjQUFjRCxHQUFHO1FBQ25CL0IsU0FBUytCO0lBQ1gsT0FBTztRQUNMLE1BQU1uRCxXQUFXO2VBQUltRCxFQUFFcEQsV0FBVztlQUFLb0QsRUFBRUUsVUFBVTtTQUFDLENBQUNDLElBQUksQ0FBQyxDQUFDQyxHQUFHQyxJQUFNRCxJQUFJQztRQUN4RSxNQUFNekQsY0FBY29ELEVBQUVwRCxXQUFXLENBQUN1RCxJQUFJLENBQUMsQ0FBQ0MsR0FBR0MsSUFBTUQsSUFBSUM7UUFDckRwQyxTQUFTO1lBQUUsR0FBRytCLENBQUM7WUFBRW5EO1lBQVVEO1FBQVk7SUFDekM7SUFFQSxJQUFJLE9BQU9tRCxrQkFBa0IsYUFBYTtRQUN4QyxNQUFNLElBQUlPLE1BQ1I7SUFFSjtJQUNBLElBQUlsQyxTQUFnQ3VCLEtBQUt2QixNQUFNLElBQUkyQjtJQUVuRCxzREFBc0Q7SUFDdEQsT0FBT0osS0FBS3ZCLE1BQU07SUFDbEIsT0FBT3VCLEtBQWN0QixNQUFNO0lBRTNCLDZDQUE2QztJQUM3QyxvREFBb0Q7SUFDcEQsTUFBTWtDLGtCQUFrQix3QkFBd0JuQztJQUVoRCxJQUFJbUMsaUJBQWlCO1FBQ25CLElBQUl0QyxPQUFPRyxNQUFNLEtBQUssVUFBVTtZQUM5QixNQUFNLElBQUlrQyxNQUNSLHFCQUFtQjVFLE1BQUksZ0NBQ3BCO1FBRVA7SUFDRixPQUFPO1FBQ0wsOENBQThDO1FBQzlDLCtDQUErQztRQUMvQyxpREFBaUQ7UUFDakQsTUFBTThFLG9CQUFvQnBDO1FBQzFCQSxTQUFTLENBQUNxQztZQUNSLE1BQU0sRUFBRXhDLFFBQVF5QyxDQUFDLEVBQUUsR0FBR0MsTUFBTSxHQUFHRjtZQUMvQixPQUFPRCxrQkFBa0JHO1FBQzNCO0lBQ0Y7SUFFQSxJQUFJckIsUUFBUTtRQUNWLElBQUlBLFdBQVcsUUFBUTtZQUNyQlIsT0FBTztRQUNUO1FBQ0EsTUFBTThCLGdCQUFvRTtZQUN4RUMsV0FBVztnQkFBRUMsVUFBVTtnQkFBUWpDLFFBQVE7WUFBTztZQUM5Q2tDLFlBQVk7Z0JBQUVyRSxPQUFPO2dCQUFRbUMsUUFBUTtZQUFPO1FBQzlDO1FBQ0EsTUFBTW1DLGdCQUFvRDtZQUN4REQsWUFBWTtZQUNaakMsTUFBTTtRQUNSO1FBQ0EsTUFBTW1DLGNBQWNMLGFBQWEsQ0FBQ3RCLE9BQU87UUFDekMsSUFBSTJCLGFBQWE7WUFDZmxDLFFBQVE7Z0JBQUUsR0FBR0EsS0FBSztnQkFBRSxHQUFHa0MsV0FBVztZQUFDO1FBQ3JDO1FBQ0EsTUFBTUMsY0FBY0YsYUFBYSxDQUFDMUIsT0FBTztRQUN6QyxJQUFJNEIsZUFBZSxDQUFDdkUsT0FBTztZQUN6QkEsUUFBUXVFO1FBQ1Y7SUFDRjtJQUVBLElBQUlDLFlBQVk7SUFDaEIsSUFBSUMsV0FBV25GLE9BQU9TO0lBQ3RCLElBQUkyRSxZQUFZcEYsT0FBTzRDO0lBQ3ZCLElBQUl5QztJQUNKLElBQUlDO0lBQ0osSUFBSTFGLGVBQWVILE1BQU07UUFDdkIsTUFBTThGLGtCQUFrQi9GLGdCQUFnQkMsT0FBT0EsSUFBSUMsT0FBTyxHQUFHRDtRQUU3RCxJQUFJLENBQUM4RixnQkFBZ0I5RixHQUFHLEVBQUU7WUFDeEIsTUFBTSxJQUFJNEUsTUFDUixnSkFBOEltQixLQUFLQyxTQUFTLENBQzFKRjtRQUdOO1FBQ0EsSUFBSSxDQUFDQSxnQkFBZ0IzQyxNQUFNLElBQUksQ0FBQzJDLGdCQUFnQjlFLEtBQUssRUFBRTtZQUNyRCxNQUFNLElBQUk0RCxNQUNSLDZKQUEySm1CLEtBQUtDLFNBQVMsQ0FDdktGO1FBR047UUFFQUYsWUFBWUUsZ0JBQWdCRixTQUFTO1FBQ3JDQyxhQUFhQyxnQkFBZ0JELFVBQVU7UUFDdkNuQyxjQUFjQSxlQUFlb0MsZ0JBQWdCcEMsV0FBVztRQUN4RCtCLFlBQVlLLGdCQUFnQjlGLEdBQUc7UUFFL0IsSUFBSSxDQUFDb0QsTUFBTTtZQUNULElBQUksQ0FBQ3NDLFlBQVksQ0FBQ0MsV0FBVztnQkFDM0JELFdBQVdJLGdCQUFnQjlFLEtBQUs7Z0JBQ2hDMkUsWUFBWUcsZ0JBQWdCM0MsTUFBTTtZQUNwQyxPQUFPLElBQUl1QyxZQUFZLENBQUNDLFdBQVc7Z0JBQ2pDLE1BQU1NLFFBQVFQLFdBQVdJLGdCQUFnQjlFLEtBQUs7Z0JBQzlDMkUsWUFBWWhFLEtBQUt1RSxLQUFLLENBQUNKLGdCQUFnQjNDLE1BQU0sR0FBRzhDO1lBQ2xELE9BQU8sSUFBSSxDQUFDUCxZQUFZQyxXQUFXO2dCQUNqQyxNQUFNTSxRQUFRTixZQUFZRyxnQkFBZ0IzQyxNQUFNO2dCQUNoRHVDLFdBQVcvRCxLQUFLdUUsS0FBSyxDQUFDSixnQkFBZ0I5RSxLQUFLLEdBQUdpRjtZQUNoRDtRQUNGO0lBQ0Y7SUFDQWpHLE1BQU0sT0FBT0EsUUFBUSxXQUFXQSxNQUFNeUY7SUFFdEMsSUFBSVUsU0FDRixDQUFDbkQsWUFBYUMsQ0FBQUEsWUFBWSxVQUFVLE9BQU9BLFlBQVk7SUFDekQsSUFBSSxDQUFDakQsT0FBT0EsSUFBSW9HLFVBQVUsQ0FBQyxZQUFZcEcsSUFBSW9HLFVBQVUsQ0FBQyxVQUFVO1FBQzlELHVFQUF1RTtRQUN2RTVELGNBQWM7UUFDZDJELFNBQVM7SUFDWDtJQUNBLElBQUk1RCxPQUFPQyxXQUFXLEVBQUU7UUFDdEJBLGNBQWM7SUFDaEI7SUFDQSxJQUFJcUMsbUJBQW1CN0UsSUFBSXFHLFFBQVEsQ0FBQyxXQUFXLENBQUM5RCxPQUFPK0QsbUJBQW1CLEVBQUU7UUFDMUUseURBQXlEO1FBQ3pELCtDQUErQztRQUMvQzlELGNBQWM7SUFDaEI7SUFDQSxJQUFJUSxVQUFVO1FBQ1pXLGdCQUFnQjtJQUNsQjtJQUVBLE1BQU00QyxhQUFhaEcsT0FBT2tDO0lBRTFCLElBQUkrRCxJQUF5QixFQUFjO1FBQ3pDLElBQUlqRSxPQUFPa0UsTUFBTSxLQUFLLFlBQVk1QixtQkFBbUIsQ0FBQ3JDLGFBQWE7WUFDakUsTUFBTSxJQUFJb0MsTUFDUDtRQU1MO1FBQ0EsSUFBSSxDQUFDNUUsS0FBSztZQUNSLGlEQUFpRDtZQUNqRCwrQ0FBK0M7WUFDL0MsMkNBQTJDO1lBQzNDd0MsY0FBYztRQUNoQixPQUFPO1lBQ0wsSUFBSVksTUFBTTtnQkFDUixJQUFJcEMsT0FBTztvQkFDVCxNQUFNLElBQUk0RCxNQUNSLHFCQUFtQjVFLE1BQUk7Z0JBRTNCO2dCQUNBLElBQUltRCxRQUFRO29CQUNWLE1BQU0sSUFBSXlCLE1BQ1IscUJBQW1CNUUsTUFBSTtnQkFFM0I7Z0JBQ0EsSUFBSXFELENBQUFBLFNBQUFBLE9BQUFBLEtBQUFBLElBQUFBLE1BQU9xRCxRQUFRLEtBQUlyRCxNQUFNcUQsUUFBUSxLQUFLLFlBQVk7b0JBQ3BELE1BQU0sSUFBSTlCLE1BQ1IscUJBQW1CNUUsTUFBSTtnQkFFM0I7Z0JBQ0EsSUFBSXFELENBQUFBLFNBQUFBLE9BQUFBLEtBQUFBLElBQUFBLE1BQU9yQyxLQUFLLEtBQUlxQyxNQUFNckMsS0FBSyxLQUFLLFFBQVE7b0JBQzFDLE1BQU0sSUFBSTRELE1BQ1IscUJBQW1CNUUsTUFBSTtnQkFFM0I7Z0JBQ0EsSUFBSXFELENBQUFBLFNBQUFBLE9BQUFBLEtBQUFBLElBQUFBLE1BQU9GLE1BQU0sS0FBSUUsTUFBTUYsTUFBTSxLQUFLLFFBQVE7b0JBQzVDLE1BQU0sSUFBSXlCLE1BQ1IscUJBQW1CNUUsTUFBSTtnQkFFM0I7WUFDRixPQUFPO2dCQUNMLElBQUksT0FBTzBGLGFBQWEsYUFBYTtvQkFDbkMsTUFBTSxJQUFJZCxNQUNSLHFCQUFtQjVFLE1BQUk7Z0JBRTNCLE9BQU8sSUFBSTJHLE1BQU1qQixXQUFXO29CQUMxQixNQUFNLElBQUlkLE1BQ1IscUJBQW1CNUUsTUFBSSxzRkFBbUZnQixRQUFNO2dCQUVwSDtnQkFDQSxJQUFJLE9BQU8yRSxjQUFjLGFBQWE7b0JBQ3BDLE1BQU0sSUFBSWYsTUFDUixxQkFBbUI1RSxNQUFJO2dCQUUzQixPQUFPLElBQUkyRyxNQUFNaEIsWUFBWTtvQkFDM0IsTUFBTSxJQUFJZixNQUNSLHFCQUFtQjVFLE1BQUksdUZBQW9GbUQsU0FBTztnQkFFdEg7WUFDRjtRQUNGO1FBQ0EsSUFBSSxDQUFDdEQscUJBQXFCK0csUUFBUSxDQUFDM0QsVUFBVTtZQUMzQyxNQUFNLElBQUkyQixNQUNSLHFCQUFtQjVFLE1BQUksaURBQThDaUQsVUFBUSx3QkFBcUJwRCxxQkFBcUJxQyxHQUFHLENBQ3hIMkUsUUFDQS9ELElBQUksQ0FBQyxPQUFLO1FBRWhCO1FBQ0EsSUFBSUUsWUFBWUMsWUFBWSxRQUFRO1lBQ2xDLE1BQU0sSUFBSTJCLE1BQ1IscUJBQW1CNUUsTUFBSTtRQUUzQjtRQUNBLElBQ0V5RCxnQkFBZ0IsV0FDaEJBLGdCQUFnQixVQUNoQixDQUFDQSxZQUFZMkMsVUFBVSxDQUFDLGdCQUN4QjtZQUNBLE1BQU0sSUFBSXhCLE1BQ1IscUJBQW1CNUUsTUFBSSwyQ0FBd0N5RCxjQUFZO1FBRS9FO1FBQ0EsSUFBSUEsZ0JBQWdCLFNBQVM7WUFDM0IsSUFBSWlDLFlBQVlDLGFBQWFELFdBQVdDLFlBQVksTUFBTTtnQkFDeERtQixDQUFBQSxHQUFBQSxVQUFBQSxRQUFRLEVBQ04scUJBQW1COUcsTUFBSTtZQUUzQjtRQUNGO1FBQ0EsSUFBSXlELGdCQUFnQixVQUFVLENBQUNDLGFBQWE7WUFDMUMsTUFBTXFELGlCQUFpQjtnQkFBQztnQkFBUTtnQkFBTztnQkFBUTthQUFPLENBQUMsaUNBQWlDOztZQUV4RixNQUFNLElBQUluQyxNQUNSLHFCQUFtQjVFLE1BQUksNlRBR2tFK0csZUFBZWpFLElBQUksQ0FDeEcsT0FDQTtRQUlSO1FBQ0EsSUFBSSxTQUFTbUIsTUFBTTtZQUNqQjZDLENBQUFBLEdBQUFBLFVBQUFBLFFBQVEsRUFDTixxQkFBbUI5RyxNQUFJO1FBRTNCO1FBRUEsSUFBSSxDQUFDd0MsZUFBZSxDQUFDcUMsaUJBQWlCO1lBQ3BDLE1BQU1tQyxTQUFTdEUsT0FBTztnQkFDcEJIO2dCQUNBdkM7Z0JBQ0FnQixPQUFPMEUsWUFBWTtnQkFDbkJqRCxTQUFTOEQsY0FBYztZQUN6QjtZQUNBLElBQUlVO1lBQ0osSUFBSTtnQkFDRkEsTUFBTSxJQUFJQyxJQUFJRjtZQUNoQixFQUFFLE9BQU9HLEtBQUssQ0FBQztZQUNmLElBQUlILFdBQVdoSCxPQUFRaUgsT0FBT0EsSUFBSUcsUUFBUSxLQUFLcEgsT0FBTyxDQUFDaUgsSUFBSUksTUFBTSxFQUFHO2dCQUNsRVAsQ0FBQUEsR0FBQUEsVUFBQUEsUUFBUSxFQUNOLHFCQUFtQjlHLE1BQUksNEhBQ3BCO1lBRVA7UUFDRjtRQUVBLElBQUl3RCxtQkFBbUI7WUFDckJzRCxDQUFBQSxHQUFBQSxVQUFBQSxRQUFRLEVBQ04scUJBQW1COUcsTUFBSTtRQUUzQjtRQUVBLEtBQUssTUFBTSxDQUFDc0gsV0FBV0MsWUFBWSxJQUFJQyxPQUFPQyxPQUFPLENBQUM7WUFDcEQ3RDtZQUNBQztZQUNBQztZQUNBQztZQUNBQztRQUNGLEdBQUk7WUFDRixJQUFJdUQsYUFBYTtnQkFDZlQsQ0FBQUEsR0FBQUEsVUFBQUEsUUFBUSxFQUNOLHFCQUFtQjlHLE1BQUksd0JBQXFCc0gsWUFBVSwwQ0FDbkQ7WUFFUDtRQUNGO1FBRUEsSUFDRSxPQUFPSSxXQUFXLGVBQ2xCLENBQUNwSCxnQkFDRG9ILE9BQU9DLG1CQUFtQixFQUMxQjtZQUNBckgsZUFBZSxJQUFJcUgsb0JBQW9CLENBQUNDO2dCQUN0QyxLQUFLLE1BQU1DLFNBQVNELFVBQVVFLFVBQVUsR0FBSTt3QkFFM0JEO29CQURmLDBFQUEwRTtvQkFDMUUsTUFBTUUsU0FBU0YsQ0FBQUEsU0FBQUEsT0FBQUEsS0FBQUEsSUFBQUEsQ0FBQUEsaUJBQUFBLE1BQU9HLE9BQU8scUJBQWRILGVBQWdCN0gsR0FBRyxLQUFJO29CQUN0QyxNQUFNaUksV0FBVzdILFFBQVE4SCxHQUFHLENBQUNIO29CQUM3QixJQUNFRSxZQUNBLENBQUNBLFNBQVNqRixRQUFRLElBQ2xCaUYsU0FBU3hFLFdBQVcsS0FBSyxXQUN6QixDQUFDd0UsU0FBU2pJLEdBQUcsQ0FBQ29HLFVBQVUsQ0FBQyxZQUN6QixDQUFDNkIsU0FBU2pJLEdBQUcsQ0FBQ29HLFVBQVUsQ0FBQyxVQUN6Qjt3QkFDQSxpREFBaUQ7d0JBQ2pEVSxDQUFBQSxHQUFBQSxVQUFBQSxRQUFRLEVBQ04scUJBQW1CbUIsU0FBU2pJLEdBQUcsR0FBQyw4SEFDN0I7b0JBRVA7Z0JBQ0Y7WUFDRjtZQUNBLElBQUk7Z0JBQ0ZNLGFBQWE2SCxPQUFPLENBQUM7b0JBQ25CQyxNQUFNO29CQUNOQyxVQUFVO2dCQUNaO1lBQ0YsRUFBRSxPQUFPbEIsS0FBSztnQkFDWixvQ0FBb0M7Z0JBQ3BDbUIsUUFBUUMsS0FBSyxDQUFDcEI7WUFDaEI7UUFDRjtJQUNGO0lBQ0EsTUFBTXFCLFdBQVdoQixPQUFPaUIsTUFBTSxDQUM1QnJGLE9BQ0k7UUFDRXNELFVBQVU7UUFDVnZELFFBQVE7UUFDUm5DLE9BQU87UUFDUDBILE1BQU07UUFDTkMsS0FBSztRQUNMQyxPQUFPO1FBQ1BDLFFBQVE7UUFDUmhGO1FBQ0FDO0lBQ0YsSUFDQSxDQUFDLEdBQ0xLLGNBQWMsQ0FBQyxJQUFJO1FBQUUyRSxPQUFPO0lBQWMsR0FDMUN6RjtJQUdGLE1BQU0wRixrQkFDSixDQUFDM0UsZ0JBQWdCWCxnQkFBZ0IsVUFDN0JBLGdCQUFnQixTQUNkLDJDQUF5Q3VGLENBQUFBLEdBQUFBLGNBQUFBLGVBQWUsRUFBQztRQUN2RHREO1FBQ0FDO1FBQ0FDO1FBQ0FDO1FBQ0FuQyxhQUFhQSxlQUFlO1FBQzVCRyxXQUFXMkUsU0FBUzNFLFNBQVM7SUFDL0IsS0FBRyxPQUNILFVBQVFKLGNBQVksS0FBSSx1QkFBdUI7T0FDakQ7SUFFTixJQUFJd0YsbUJBQW1CRixrQkFDbkI7UUFDRUcsZ0JBQWdCVixTQUFTM0UsU0FBUyxJQUFJO1FBQ3RDc0Ysb0JBQW9CWCxTQUFTMUUsY0FBYyxJQUFJO1FBQy9Dc0Ysa0JBQWtCO1FBQ2xCTDtJQUNGLElBQ0EsQ0FBQztJQUVMLElBQUl2QyxJQUF5QixFQUFlO1FBQzFDLElBQ0V5QyxpQkFBaUJGLGVBQWUsSUFDaEN0RixnQkFBZ0IsVUFDaEJDLENBQUFBLGVBQUFBLE9BQUFBLEtBQUFBLElBQUFBLFlBQWEwQyxVQUFVLENBQUMsT0FDeEI7WUFDQSw4RUFBOEU7WUFDOUUsZ0ZBQWdGO1lBQ2hGLHFGQUFxRjtZQUNyRjZDLGlCQUFpQkYsZUFBZSxHQUFHLFVBQVFyRixjQUFZO1FBQ3pEO0lBQ0Y7SUFFQSxNQUFNMkYsZ0JBQWdCL0csaUJBQWlCO1FBQ3JDQztRQUNBdkM7UUFDQXdDO1FBQ0F4QixPQUFPMEU7UUFDUGpELFNBQVM4RDtRQUNUdEY7UUFDQXlCO0lBQ0Y7SUFFQSxJQUFJOEQsSUFBeUIsRUFBYztRQUN6QyxJQUFJLE9BQU9rQixXQUFXLGFBQWE7WUFDakMsSUFBSTRCO1lBQ0osSUFBSTtnQkFDRkEsVUFBVSxJQUFJcEMsSUFBSW1DLGNBQWNySixHQUFHO1lBQ3JDLEVBQUUsT0FBT3VKLEdBQUc7Z0JBQ1ZELFVBQVUsSUFBSXBDLElBQUltQyxjQUFjckosR0FBRyxFQUFFMEgsT0FBTzhCLFFBQVEsQ0FBQ0MsSUFBSTtZQUMzRDtZQUNBckosUUFBUXNKLEdBQUcsQ0FBQ0osUUFBUUcsSUFBSSxFQUFFO2dCQUFFeko7Z0JBQUtnRDtnQkFBVVM7WUFBWTtRQUN6RDtJQUNGO0lBRUEsTUFBTWtHLFFBQWtCO1FBQ3RCLEdBQUcxRixJQUFJO1FBQ1BoQixTQUFTa0QsU0FBUyxTQUFTbEQ7UUFDM0JVO1FBQ0EzQyxPQUFPMEU7UUFDUHZDLFFBQVF3QztRQUNSaUUsVUFBVTtRQUNWMUc7UUFDQUcsT0FBTztZQUFFLEdBQUdtRixRQUFRO1lBQUUsR0FBR1MsZ0JBQWdCO1FBQUM7UUFDMUNoSSxPQUFPb0ksY0FBY3BJLEtBQUs7UUFDMUIwQixRQUFRMEcsY0FBYzFHLE1BQU07UUFDNUIzQyxLQUFLc0QsZUFBZStGLGNBQWNySixHQUFHO0lBQ3ZDO0lBQ0EsTUFBTTZKLE9BQU87UUFBRXJIO1FBQWFRO1FBQVVTO1FBQWFMO0lBQUs7SUFDeEQsT0FBTztRQUFFdUc7UUFBT0U7SUFBSztBQUN2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvZ2V0LWltZy1wcm9wcy50cz9lYzkxIl0sIm5hbWVzIjpbImdldEltZ1Byb3BzIiwiVkFMSURfTE9BRElOR19WQUxVRVMiLCJ1bmRlZmluZWQiLCJpc1N0YXRpY1JlcXVpcmUiLCJzcmMiLCJkZWZhdWx0IiwiaXNTdGF0aWNJbWFnZURhdGEiLCJpc1N0YXRpY0ltcG9ydCIsImFsbEltZ3MiLCJNYXAiLCJwZXJmT2JzZXJ2ZXIiLCJnZXRJbnQiLCJ4IiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJOYU4iLCJ0ZXN0IiwicGFyc2VJbnQiLCJnZXRXaWR0aHMiLCJwYXJhbSIsIndpZHRoIiwic2l6ZXMiLCJkZXZpY2VTaXplcyIsImFsbFNpemVzIiwidmlld3BvcnRXaWR0aFJlIiwicGVyY2VudFNpemVzIiwibWF0Y2giLCJleGVjIiwicHVzaCIsImxlbmd0aCIsInNtYWxsZXN0UmF0aW8iLCJNYXRoIiwibWluIiwid2lkdGhzIiwiZmlsdGVyIiwicyIsImtpbmQiLCJTZXQiLCJtYXAiLCJ3IiwiZmluZCIsInAiLCJnZW5lcmF0ZUltZ0F0dHJzIiwiY29uZmlnIiwidW5vcHRpbWl6ZWQiLCJxdWFsaXR5IiwibG9hZGVyIiwic3JjU2V0IiwibGFzdCIsImkiLCJqb2luIiwiX3N0YXRlIiwicHJpb3JpdHkiLCJsb2FkaW5nIiwiY2xhc3NOYW1lIiwiaGVpZ2h0IiwiZmlsbCIsInN0eWxlIiwib3ZlcnJpZGVTcmMiLCJvbkxvYWQiLCJvbkxvYWRpbmdDb21wbGV0ZSIsInBsYWNlaG9sZGVyIiwiYmx1ckRhdGFVUkwiLCJmZXRjaFByaW9yaXR5IiwibGF5b3V0Iiwib2JqZWN0Rml0Iiwib2JqZWN0UG9zaXRpb24iLCJsYXp5Qm91bmRhcnkiLCJsYXp5Um9vdCIsInJlc3QiLCJpbWdDb25mIiwic2hvd0FsdFRleHQiLCJibHVyQ29tcGxldGUiLCJkZWZhdWx0TG9hZGVyIiwiYyIsImltYWdlQ29uZmlnRGVmYXVsdCIsImltYWdlU2l6ZXMiLCJzb3J0IiwiYSIsImIiLCJFcnJvciIsImlzRGVmYXVsdExvYWRlciIsImN1c3RvbUltYWdlTG9hZGVyIiwib2JqIiwiXyIsIm9wdHMiLCJsYXlvdXRUb1N0eWxlIiwiaW50cmluc2ljIiwibWF4V2lkdGgiLCJyZXNwb25zaXZlIiwibGF5b3V0VG9TaXplcyIsImxheW91dFN0eWxlIiwibGF5b3V0U2l6ZXMiLCJzdGF0aWNTcmMiLCJ3aWR0aEludCIsImhlaWdodEludCIsImJsdXJXaWR0aCIsImJsdXJIZWlnaHQiLCJzdGF0aWNJbWFnZURhdGEiLCJKU09OIiwic3RyaW5naWZ5IiwicmF0aW8iLCJyb3VuZCIsImlzTGF6eSIsInN0YXJ0c1dpdGgiLCJlbmRzV2l0aCIsImRhbmdlcm91c2x5QWxsb3dTVkciLCJxdWFsaXR5SW50IiwicHJvY2VzcyIsIm91dHB1dCIsInBvc2l0aW9uIiwiaXNOYU4iLCJpbmNsdWRlcyIsIlN0cmluZyIsIndhcm5PbmNlIiwiVkFMSURfQkxVUl9FWFQiLCJ1cmxTdHIiLCJ1cmwiLCJVUkwiLCJlcnIiLCJwYXRobmFtZSIsInNlYXJjaCIsImxlZ2FjeUtleSIsImxlZ2FjeVZhbHVlIiwiT2JqZWN0IiwiZW50cmllcyIsIndpbmRvdyIsIlBlcmZvcm1hbmNlT2JzZXJ2ZXIiLCJlbnRyeUxpc3QiLCJlbnRyeSIsImdldEVudHJpZXMiLCJpbWdTcmMiLCJlbGVtZW50IiwibGNwSW1hZ2UiLCJnZXQiLCJvYnNlcnZlIiwidHlwZSIsImJ1ZmZlcmVkIiwiY29uc29sZSIsImVycm9yIiwiaW1nU3R5bGUiLCJhc3NpZ24iLCJsZWZ0IiwidG9wIiwicmlnaHQiLCJib3R0b20iLCJjb2xvciIsImJhY2tncm91bmRJbWFnZSIsImdldEltYWdlQmx1clN2ZyIsInBsYWNlaG9sZGVyU3R5bGUiLCJiYWNrZ3JvdW5kU2l6ZSIsImJhY2tncm91bmRQb3NpdGlvbiIsImJhY2tncm91bmRSZXBlYXQiLCJpbWdBdHRyaWJ1dGVzIiwiZnVsbFVybCIsImUiLCJsb2NhdGlvbiIsImhyZWYiLCJzZXQiLCJwcm9wcyIsImRlY29kaW5nIiwibWV0YSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/get-img-props.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/head.js":
|
||
/*!***************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/head.js ***!
|
||
\***************************************************/
|
||
/***/ (function(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}));\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 default: function() {\n return _default;\n },\n defaultHead: function() {\n return defaultHead;\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 _react = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst _sideeffect = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! ./side-effect */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/side-effect.js\"));\nconst _ampcontextsharedruntime = __webpack_require__(/*! ./amp-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-context.shared-runtime.js\");\nconst _headmanagercontextsharedruntime = __webpack_require__(/*! ./head-manager-context.shared-runtime */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js\");\nconst _ampmode = __webpack_require__(/*! ./amp-mode */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/amp-mode.js\");\nconst _warnonce = __webpack_require__(/*! ./utils/warn-once */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils/warn-once.js\");\nfunction defaultHead(inAmpMode) {\n if (inAmpMode === void 0) inAmpMode = false;\n const head = [\n /*#__PURE__*/ (0, _jsxruntime.jsx)(\"meta\", {\n charSet: \"utf-8\"\n })\n ];\n if (!inAmpMode) {\n head.push(/*#__PURE__*/ (0, _jsxruntime.jsx)(\"meta\", {\n name: \"viewport\",\n content: \"width=device-width\"\n }));\n }\n return head;\n}\nfunction onlyReactElement(list, child) {\n // React children can be \"string\" or \"number\" in this case we ignore them for backwards compat\n if (typeof child === \"string\" || typeof child === \"number\") {\n return list;\n }\n // Adds support for React.Fragment\n if (child.type === _react.default.Fragment) {\n return list.concat(_react.default.Children.toArray(child.props.children).reduce((fragmentList, fragmentChild)=>{\n if (typeof fragmentChild === \"string\" || typeof fragmentChild === \"number\") {\n return fragmentList;\n }\n return fragmentList.concat(fragmentChild);\n }, []));\n }\n return list.concat(child);\n}\nconst METATYPES = [\n \"name\",\n \"httpEquiv\",\n \"charSet\",\n \"itemProp\"\n];\n/*\n returns a function for filtering head child elements\n which shouldn't be duplicated, like <title/>\n Also adds support for deduplicated `key` properties\n*/ function unique() {\n const keys = new Set();\n const tags = new Set();\n const metaTypes = new Set();\n const metaCategories = {};\n return (h)=>{\n let isUnique = true;\n let hasKey = false;\n if (h.key && typeof h.key !== \"number\" && h.key.indexOf(\"$\") > 0) {\n hasKey = true;\n const key = h.key.slice(h.key.indexOf(\"$\") + 1);\n if (keys.has(key)) {\n isUnique = false;\n } else {\n keys.add(key);\n }\n }\n // eslint-disable-next-line default-case\n switch(h.type){\n case \"title\":\n case \"base\":\n if (tags.has(h.type)) {\n isUnique = false;\n } else {\n tags.add(h.type);\n }\n break;\n case \"meta\":\n for(let i = 0, len = METATYPES.length; i < len; i++){\n const metatype = METATYPES[i];\n if (!h.props.hasOwnProperty(metatype)) continue;\n if (metatype === \"charSet\") {\n if (metaTypes.has(metatype)) {\n isUnique = false;\n } else {\n metaTypes.add(metatype);\n }\n } else {\n const category = h.props[metatype];\n const categories = metaCategories[metatype] || new Set();\n if ((metatype !== \"name\" || !hasKey) && categories.has(category)) {\n isUnique = false;\n } else {\n categories.add(category);\n metaCategories[metatype] = categories;\n }\n }\n }\n break;\n }\n return isUnique;\n };\n}\n/**\n *\n * @param headChildrenElements List of children of <Head>\n */ function reduceComponents(headChildrenElements, props) {\n const { inAmpMode } = props;\n return headChildrenElements.reduce(onlyReactElement, []).reverse().concat(defaultHead(inAmpMode).reverse()).filter(unique()).reverse().map((c, i)=>{\n const key = c.key || i;\n if (false) {}\n if (true) {\n // omit JSON-LD structured data snippets from the warning\n if (c.type === \"script\" && c.props[\"type\"] !== \"application/ld+json\") {\n const srcMessage = c.props[\"src\"] ? '<script> tag with src=\"' + c.props[\"src\"] + '\"' : \"inline <script>\";\n (0, _warnonce.warnOnce)(\"Do not add <script> tags using next/head (see \" + srcMessage + \"). Use next/script instead. \\nSee more info here: https://nextjs.org/docs/messages/no-script-tags-in-head-component\");\n } else if (c.type === \"link\" && c.props[\"rel\"] === \"stylesheet\") {\n (0, _warnonce.warnOnce)('Do not add stylesheets using next/head (see <link rel=\"stylesheet\"> tag with href=\"' + c.props[\"href\"] + '\"). Use Document instead. \\nSee more info here: https://nextjs.org/docs/messages/no-stylesheets-in-head-component');\n }\n }\n return /*#__PURE__*/ _react.default.cloneElement(c, {\n key\n });\n });\n}\n/**\n * This component injects elements to `<head>` of your page.\n * To avoid duplicated `tags` in `<head>` you can use the `key` property, which will make sure every tag is only rendered once.\n */ function Head(param) {\n let { children } = param;\n const ampState = (0, _react.useContext)(_ampcontextsharedruntime.AmpStateContext);\n const headManager = (0, _react.useContext)(_headmanagercontextsharedruntime.HeadManagerContext);\n return /*#__PURE__*/ (0, _jsxruntime.jsx)(_sideeffect.default, {\n reduceComponentsToState: reduceComponents,\n headManager: headManager,\n inAmpMode: (0, _ampmode.isInAmpMode)(ampState),\n children: children\n });\n}\n_c = Head;\nconst _default = Head;\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=head.js.map\nvar _c;\n$RefreshReg$(_c, \"Head\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9oZWFkLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O1FBcU1BQSxTQUFtQjs7O0lBeExIQztpQkFBQUE7Ozs7Ozs7OzJEQVRnQkMsQ0FBQSxDQUFBQyxtQkFBQUEsQ0FBQTs7eUNBRUpBLG1CQUFBQSxDQUFBOztBQU9yQixNQUFBQyxZQUFTSCxtQkFBQUEsQ0FBWUkscUdBQUFBO1NBQUFBLFlBQUFBLFNBQUFBO0lBQzFCLElBQUFBLGNBQWEsUUFBQUEsWUFBQTs7bUJBQU9DLEdBQVEsSUFBQUMsWUFBQUMsR0FBQTs7UUFBVztLQUN2QztRQUNFQyxDQUFBQSxXQUFTO2FBQU9DLElBQUFBLENBQUssa0JBQUFILFlBQUFDLEdBQUE7WUFBV0csTUFBQUE7O1FBQ2xDO0lBQ0E7SUFDRixPQUFBRjtBQUVBO1NBSUVHLGlCQUFBQyxJQUFBLEVBQUFDLEtBQUE7SUFDQSw4RkFBNEQ7UUFDMUQsT0FBT0QsVUFBQUEsWUFBQUEsT0FBQUEsVUFBQUEsVUFBQUE7UUFDVCxPQUFBQTtJQUNBO0lBQ0Esa0NBQXlCRTtRQUN2QkQsTUFBQUUsSUFBT0gsS0FBS0ksT0FDVkMsT0FBQSxDQUFBSCxRQUFBO1FBQ0FJLE9BQUFBLEtBQUFBLE1BQU1DLENBRUpDLE9BQ0VDLE9BQUFBLENBQ0FDLFFBQUFBLENBQUFBLE9BQUFBLENBQUFBLE1BQUFBLEtBQUFBLENBQUFBLFFBQUFBLEVBQUFBLE1BQUFBLGdCQUdTQTtnQkFHUCxPQUFPRCxrQkFBQUEsWUFBQUEsT0FBQUEsa0JBQUFBLFVBQUFBO2dCQUNULE9BQUFBO1lBQ0E7WUFFRixPQUFFQSxhQUFBTCxNQUFBLENBQUFNO1FBR1I7SUFDQTtJQUNGLE9BQUFWLEtBQUFJLE1BQUEsQ0FBQUg7QUFFQTtNQUFtQlUsWUFBQTtJQUFRO0lBQWE7SUFBVztJQUFXO0NBRTlEOzs7OztZQU1RQztJQUNOLE1BQU1DLE9BQU8sSUFBSUM7SUFDakIsTUFB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QSxDQUNFLEdBQUF6QyxPQUFBd0MsVUFBQSxFQUFDRyxpQ0FBTUQsa0JBQUE7V0FDTEUsV0FBQUEsR0FBQUEsQ0FBQUEsR0FBQUEsWUFBeUJDLEdBQUFBLEVBQUFBLFlBQUFBLE9BQUFBLEVBQUFBO1FBQ3pCSix5QkFBYUE7UUFDYnpELGFBQVc4RDttQkFFVlQsQ0FBQUEsR0FBQUEsU0FBQUEsV0FBQUEsRUFBQUE7O0lBR1A7O0tBWmdCQSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvaGVhZC50c3g/MzY3MCJdLCJuYW1lcyI6WyJleHBvcnRzIiwiZGVmYXVsdEhlYWQiLCJfIiwicmVxdWlyZSIsIl93YXJub25jZSIsImluQW1wTW9kZSIsImNoYXJTZXQiLCJfanN4cnVudGltZSIsImpzeCIsImhlYWQiLCJuYW1lIiwiY29udGVudCIsIm9ubHlSZWFjdEVsZW1lbnQiLCJsaXN0IiwiY2hpbGQiLCJGcmFnbWVudCIsInR5cGUiLCJjb25jYXQiLCJkZWZhdWx0IiwiUmVhY3QiLCJDaGlsZHJlbiIsIl9yZWFjdCIsImZyYWdtZW50TGlzdCIsImZyYWdtZW50Q2hpbGQiLCJNRVRBVFlQRVMiLCJrZXlzIiwidGFncyIsIlNldCIsIm1ldGFUeXBlcyIsIm1ldGFDYXRlZ29yaWVzIiwiaCIsImlzVW5pcXVlIiwiaGFzS2V5Iiwia2V5IiwiaW5kZXhPZiIsImFkZCIsImkiLCJtZXRhdHlwZSIsImxlbiIsImhhc093blByb3BlcnR5IiwiY2F0ZWdvcmllcyIsImhhcyIsImNhdGVnb3J5IiwicHJvcHMiLCJoZWFkQ2hpbGRyZW5FbGVtZW50cyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImMiLCJfX05FWFRfT1BUSU1JWkVfRk9OVFMiLCJzb21lIiwidXJsIiwibmV3UHJvcHMiLCJzdGFydHNXaXRoIiwidW5kZWZpbmVkIiwiY2xvbmVFbGVtZW50Iiwic3JjTWVzc2FnZSIsIndhcm5PbmNlIiwiY2hpbGRyZW4iLCJwYXJhbSIsImFtcFN0YXRlIiwidXNlQ29udGV4dCIsImhlYWRNYW5hZ2VyIiwiSGVhZE1hbmFnZXJDb250ZXh0IiwiRWZmZWN0IiwicmVkdWNlQ29tcG9uZW50c1RvU3RhdGUiLCJyZWR1Y2VDb21wb25lbnRzIiwiaXNJbkFtcE1vZGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/head.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/image-blur-svg.js":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/image-blur-svg.js ***!
|
||
\*************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/**\n * A shared function, used on both client and server, to generate a SVG blur placeholder.\n */ \nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"getImageBlurSvg\", ({\n enumerable: true,\n get: function() {\n return getImageBlurSvg;\n }\n}));\nfunction getImageBlurSvg(param) {\n let { widthInt, heightInt, blurWidth, blurHeight, blurDataURL, objectFit } = param;\n const std = 20;\n const svgWidth = blurWidth ? blurWidth * 40 : widthInt;\n const svgHeight = blurHeight ? blurHeight * 40 : heightInt;\n const viewBox = svgWidth && svgHeight ? \"viewBox='0 0 \" + svgWidth + \" \" + svgHeight + \"'\" : \"\";\n const preserveAspectRatio = viewBox ? \"none\" : objectFit === \"contain\" ? \"xMidYMid\" : objectFit === \"cover\" ? \"xMidYMid slice\" : \"none\";\n return \"%3Csvg xmlns='http://www.w3.org/2000/svg' \" + viewBox + \"%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='\" + std + \"'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='\" + std + \"'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='\" + preserveAspectRatio + \"' style='filter: url(%23b);' href='\" + blurDataURL + \"'/%3E%3C/svg%3E\";\n} //# sourceMappingURL=image-blur-svg.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9pbWFnZS1ibHVyLXN2Zy5qcyIsIm1hcHBpbmdzIjoiQUFBQTs7Q0FFQzs7OzttREFDZUE7OztlQUFBQTs7O0FBQVQsU0FBU0EsZ0JBQWdCQyxLQWMvQjtJQWQrQixNQUM5QkMsUUFBUSxFQUNSQyxTQUFTLEVBQ1RDLFNBQVMsRUFDVEMsVUFBVSxFQUNWQyxXQUFXLEVBQ1hDLFNBQVMsRUFRVixHQWQrQk47SUFlOUIsTUFBTU8sTUFBTTtJQUNaLE1BQU1DLFdBQVdMLFlBQVlBLFlBQVksS0FBS0Y7SUFDOUMsTUFBTVEsWUFBWUwsYUFBYUEsYUFBYSxLQUFLRjtJQUVqRCxNQUFNUSxVQUNKRixZQUFZQyxZQUFZLGtCQUFnQkQsV0FBUyxNQUFHQyxZQUFVLE1BQUs7SUFDckUsTUFBTUUsc0JBQXNCRCxVQUN4QixTQUNBSixjQUFjLFlBQ2QsYUFDQUEsY0FBYyxVQUNkLG1CQUNBO0lBRUosT0FBTywrQ0FBNkNJLFVBQVEsOEZBQTJGSCxNQUFJLG9RQUFpUUEsTUFBSSxnR0FBNkZJLHNCQUFvQix3Q0FBcUNOLGNBQVk7QUFDcGtCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9pbWFnZS1ibHVyLXN2Zy50cz9jNzljIl0sIm5hbWVzIjpbImdldEltYWdlQmx1clN2ZyIsInBhcmFtIiwid2lkdGhJbnQiLCJoZWlnaHRJbnQiLCJibHVyV2lkdGgiLCJibHVySGVpZ2h0IiwiYmx1ckRhdGFVUkwiLCJvYmplY3RGaXQiLCJzdGQiLCJzdmdXaWR0aCIsInN2Z0hlaWdodCIsInZpZXdCb3giLCJwcmVzZXJ2ZUFzcGVjdFJhdGlvIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/image-blur-svg.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"ImageConfigContext\", ({\n enumerable: true,\n get: function() {\n return ImageConfigContext;\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 _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst _imageconfig = __webpack_require__(/*! ./image-config */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config.js\");\nconst ImageConfigContext = _react.default.createContext(_imageconfig.imageConfigDefault);\nif (true) {\n ImageConfigContext.displayName = \"ImageConfigContext\";\n} //# sourceMappingURL=image-config-context.shared-runtime.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9pbWFnZS1jb25maWctY29udGV4dC5zaGFyZWQtcnVudGltZS5qcyIsIm1hcHBpbmdzIjoiOzs7O3NEQUlhQTs7O2VBQUFBOzs7OzRFQUpLO3lDQUVpQjtBQUU1QixNQUFNQSxxQkFDWEMsT0FBQUEsT0FBSyxDQUFDQyxhQUFhLENBQXNCQyxhQUFBQSxrQkFBa0I7QUFFN0QsSUFBSUMsSUFBeUIsRUFBYztJQUN6Q0osbUJBQW1CSyxXQUFXLEdBQUc7QUFDbkMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL2ltYWdlLWNvbmZpZy1jb250ZXh0LnNoYXJlZC1ydW50aW1lLnRzPzNkNzUiXSwibmFtZXMiOlsiSW1hZ2VDb25maWdDb250ZXh0IiwiUmVhY3QiLCJjcmVhdGVDb250ZXh0IiwiaW1hZ2VDb25maWdEZWZhdWx0IiwicHJvY2VzcyIsImRpc3BsYXlOYW1lIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/image-config.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 VALID_LOADERS: function() {\n return VALID_LOADERS;\n },\n imageConfigDefault: function() {\n return imageConfigDefault;\n }\n});\nconst VALID_LOADERS = [\n \"default\",\n \"imgix\",\n \"cloudinary\",\n \"akamai\",\n \"custom\"\n];\nconst imageConfigDefault = {\n deviceSizes: [\n 640,\n 750,\n 828,\n 1080,\n 1200,\n 1920,\n 2048,\n 3840\n ],\n imageSizes: [\n 16,\n 32,\n 48,\n 64,\n 96,\n 128,\n 256,\n 384\n ],\n path: \"/_next/image\",\n loader: \"default\",\n loaderFile: \"\",\n domains: [],\n disableStaticImages: false,\n minimumCacheTTL: 60,\n formats: [\n \"image/webp\"\n ],\n dangerouslyAllowSVG: false,\n contentSecurityPolicy: \"script-src 'none'; frame-src 'none'; sandbox;\",\n contentDispositionType: \"inline\",\n remotePatterns: [],\n unoptimized: false\n}; //# sourceMappingURL=image-config.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9pbWFnZS1jb25maWcuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBQWFBLGVBQWE7ZUFBYkE7O0lBc0dBQyxvQkFBa0I7ZUFBbEJBOzs7QUF0R04sTUFBTUQsZ0JBQWdCO0lBQzNCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7Q0FDRDtBQWdHTSxNQUFNQyxxQkFBMEM7SUFDckRDLGFBQWE7UUFBQztRQUFLO1FBQUs7UUFBSztRQUFNO1FBQU07UUFBTTtRQUFNO0tBQUs7SUFDMURDLFlBQVk7UUFBQztRQUFJO1FBQUk7UUFBSTtRQUFJO1FBQUk7UUFBSztRQUFLO0tBQUk7SUFDL0NDLE1BQU07SUFDTkMsUUFBUTtJQUNSQyxZQUFZO0lBQ1pDLFNBQVMsRUFBRTtJQUNYQyxxQkFBcUI7SUFDckJDLGlCQUFpQjtJQUNqQkMsU0FBUztRQUFDO0tBQWE7SUFDdkJDLHFCQUFxQjtJQUNyQkMsdUJBQXdCO0lBQ3hCQyx3QkFBd0I7SUFDeEJDLGdCQUFnQixFQUFFO0lBQ2xCQyxhQUFhO0FBQ2YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL2ltYWdlLWNvbmZpZy50cz8xMzRhIl0sIm5hbWVzIjpbIlZBTElEX0xPQURFUlMiLCJpbWFnZUNvbmZpZ0RlZmF1bHQiLCJkZXZpY2VTaXplcyIsImltYWdlU2l6ZXMiLCJwYXRoIiwibG9hZGVyIiwibG9hZGVyRmlsZSIsImRvbWFpbnMiLCJkaXNhYmxlU3RhdGljSW1hZ2VzIiwibWluaW11bUNhY2hlVFRMIiwiZm9ybWF0cyIsImRhbmdlcm91c2x5QWxsb3dTVkciLCJjb250ZW50U2VjdXJpdHlQb2xpY3kiLCJjb250ZW50RGlzcG9zaXRpb25UeXBlIiwicmVtb3RlUGF0dGVybnMiLCJ1bm9wdGltaXplZCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/image-config.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/image-loader.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/image-loader.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return _default;\n }\n}));\nfunction defaultLoader(param) {\n let { config, src, width, quality } = param;\n if (true) {\n const missingValues = [];\n // these should always be provided but make sure they are\n if (!src) missingValues.push(\"src\");\n if (!width) missingValues.push(\"width\");\n if (missingValues.length > 0) {\n throw new Error(\"Next Image Optimization requires \" + missingValues.join(\", \") + \" to be provided. Make sure you pass them as props to the `next/image` component. Received: \" + JSON.stringify({\n src,\n width,\n quality\n }));\n }\n if (src.startsWith(\"//\")) {\n throw new Error('Failed to parse src \"' + src + '\" on `next/image`, protocol-relative URL (//) must be changed to an absolute URL (http:// or https://)');\n }\n if (!src.startsWith(\"/\") && (config.domains || config.remotePatterns)) {\n let parsedSrc;\n try {\n parsedSrc = new URL(src);\n } catch (err) {\n console.error(err);\n throw new Error('Failed to parse src \"' + src + '\" on `next/image`, if using relative image it must start with a leading slash \"/\" or be an absolute URL (http:// or https://)');\n }\n if (true) {\n // We use dynamic require because this should only error in development\n const { hasMatch } = __webpack_require__(/*! ./match-remote-pattern */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/match-remote-pattern.js\");\n if (!hasMatch(config.domains, config.remotePatterns, parsedSrc)) {\n throw new Error(\"Invalid src prop (\" + src + ') on `next/image`, hostname \"' + parsedSrc.hostname + '\" is not configured under images in your `next.config.js`\\n' + \"See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host\");\n }\n }\n }\n }\n return config.path + \"?url=\" + encodeURIComponent(src) + \"&w=\" + width + \"&q=\" + (quality || 75) + ( false ? 0 : \"\");\n}\n// We use this to determine if the import is the default loader\n// or a custom loader defined by the user in next.config.js\ndefaultLoader.__next_img_default = true;\nconst _default = defaultLoader; //# sourceMappingURL=image-loader.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9pbWFnZS1sb2FkZXIuanMiLCJtYXBwaW5ncyI6Ijs7OzsyQ0F3RUE7OztlQUFBQTs7O0FBdEVBLFNBQVNDLGNBQWNDLEtBS007SUFMTixNQUNyQkMsTUFBTSxFQUNOQyxHQUFHLEVBQ0hDLEtBQUssRUFDTEMsT0FBTyxFQUNvQixHQUxOSjtJQU1yQixJQUFJSyxJQUF5QixFQUFjO1FBQ3pDLE1BQU1DLGdCQUFnQixFQUFFO1FBRXhCLHlEQUF5RDtRQUN6RCxJQUFJLENBQUNKLEtBQUtJLGNBQWNDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUNKLE9BQU9HLGNBQWNDLElBQUksQ0FBQztRQUUvQixJQUFJRCxjQUFjRSxNQUFNLEdBQUcsR0FBRztZQUM1QixNQUFNLElBQUlDLE1BQ1Isc0NBQW9DSCxjQUFjSSxJQUFJLENBQ3BELFFBQ0EsZ0dBQStGQyxLQUFLQyxTQUFTLENBQzdHO2dCQUFFVjtnQkFBS0M7Z0JBQU9DO1lBQVE7UUFHNUI7UUFFQSxJQUFJRixJQUFJVyxVQUFVLENBQUMsT0FBTztZQUN4QixNQUFNLElBQUlKLE1BQ1IsMEJBQXdCUCxNQUFJO1FBRWhDO1FBRUEsSUFBSSxDQUFDQSxJQUFJVyxVQUFVLENBQUMsUUFBU1osQ0FBQUEsT0FBT2EsT0FBTyxJQUFJYixPQUFPYyxjQUFjLEdBQUc7WUFDckUsSUFBSUM7WUFDSixJQUFJO2dCQUNGQSxZQUFZLElBQUlDLElBQUlmO1lBQ3RCLEVBQUUsT0FBT2dCLEtBQUs7Z0JBQ1pDLFFBQVFDLEtBQUssQ0FBQ0Y7Z0JBQ2QsTUFBTSxJQUFJVCxNQUNSLDBCQUF3QlAsTUFBSTtZQUVoQztZQUVBLElBQ0VHLElBRTZCLEVBQzdCO2dCQUNBLHVFQUF1RTtnQkFDdkUsTUFBTSxFQUFFa0IsUUFBUSxFQUFFLEdBQUdDLG1CQUFBQSxDQUFRO2dCQUM3QixJQUFJLENBQUNELFNBQVN0QixPQUFPYSxPQUFPLEVBQUViLE9BQU9jLGNBQWMsRUFBRUMsWUFBWTtvQkFDL0QsTUFBTSxJQUFJUCxNQUNSLHVCQUFxQlAsTUFBSSxrQ0FBaUNjLFVBQVVTLFFBQVEsR0FBQyxnRUFDMUU7Z0JBRVA7WUFDRjtRQUNGO0lBQ0Y7SUFFQSxPQUFPeEIsT0FBVXlCLElBQUksR0FBQyxVQUFPQyxtQkFBbUJ6QixPQUFLLFFBQUtDLFFBQU0sUUFDOURDLENBQUFBLFdBQVcsTUFFWEMsQ0FBQUEsTUFBOEIsR0FDMUIsQ0FBc0MsR0FDdEM7QUFFUjtBQUVBLCtEQUErRDtBQUMvRCwyREFBMkQ7QUFDM0ROLGNBQWM4QixrQkFBa0IsR0FBRztNQUVuQy9CLFdBQWVDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9pbWFnZS1sb2FkZXIudHM/ZDI4MCJdLCJuYW1lcyI6WyJfZGVmYXVsdCIsImRlZmF1bHRMb2FkZXIiLCJwYXJhbSIsImNvbmZpZyIsInNyYyIsIndpZHRoIiwicXVhbGl0eSIsInByb2Nlc3MiLCJtaXNzaW5nVmFsdWVzIiwicHVzaCIsImxlbmd0aCIsIkVycm9yIiwiam9pbiIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGFydHNXaXRoIiwiZG9tYWlucyIsInJlbW90ZVBhdHRlcm5zIiwicGFyc2VkU3JjIiwiVVJMIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwiZW52IiwiTkVYVF9SVU5USU1FIiwiaGFzTWF0Y2giLCJyZXF1aXJlIiwiaG9zdG5hbWUiLCJwYXRoIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwiTkVYVF9ERVBMT1lNRU5UX0lEIiwiX19uZXh0X2ltZ19kZWZhdWx0Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/image-loader.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/match-remote-pattern.js":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/match-remote-pattern.js ***!
|
||
\*******************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 hasMatch: function() {\n return hasMatch;\n },\n matchRemotePattern: function() {\n return matchRemotePattern;\n }\n});\nconst _picomatch = __webpack_require__(/*! next/dist/compiled/picomatch */ \"(app-pages-browser)/./node_modules/next/dist/compiled/picomatch/index.js\");\nfunction matchRemotePattern(pattern, url) {\n if (pattern.protocol !== undefined) {\n const actualProto = url.protocol.slice(0, -1);\n if (pattern.protocol !== actualProto) {\n return false;\n }\n }\n if (pattern.port !== undefined) {\n if (pattern.port !== url.port) {\n return false;\n }\n }\n if (pattern.hostname === undefined) {\n throw new Error(\"Pattern should define hostname but found\\n\" + JSON.stringify(pattern));\n } else {\n if (!(0, _picomatch.makeRe)(pattern.hostname).test(url.hostname)) {\n return false;\n }\n }\n var _pattern_pathname;\n if (!(0, _picomatch.makeRe)((_pattern_pathname = pattern.pathname) != null ? _pattern_pathname : \"**\", {\n dot: true\n }).test(url.pathname)) {\n return false;\n }\n return true;\n}\nfunction hasMatch(domains, remotePatterns, url) {\n return domains.some((domain)=>url.hostname === domain) || remotePatterns.some((p)=>matchRemotePattern(p, url));\n} //# sourceMappingURL=match-remote-pattern.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9tYXRjaC1yZW1vdGUtcGF0dGVybi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFpQ2dCQSxVQUFRO2VBQVJBOztJQTlCQUMsb0JBQWtCO2VBQWxCQTs7O3VDQUZPO0FBRWhCLFNBQVNBLG1CQUFtQkMsT0FBc0IsRUFBRUMsR0FBUTtJQUNqRSxJQUFJRCxRQUFRRSxRQUFRLEtBQUtDLFdBQVc7UUFDbEMsTUFBTUMsY0FBY0gsSUFBSUMsUUFBUSxDQUFDRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQzNDLElBQUlMLFFBQVFFLFFBQVEsS0FBS0UsYUFBYTtZQUNwQyxPQUFPO1FBQ1Q7SUFDRjtJQUNBLElBQUlKLFFBQVFNLElBQUksS0FBS0gsV0FBVztRQUM5QixJQUFJSCxRQUFRTSxJQUFJLEtBQUtMLElBQUlLLElBQUksRUFBRTtZQUM3QixPQUFPO1FBQ1Q7SUFDRjtJQUVBLElBQUlOLFFBQVFPLFFBQVEsS0FBS0osV0FBVztRQUNsQyxNQUFNLElBQUlLLE1BQ1IsK0NBQTZDQyxLQUFLQyxTQUFTLENBQUNWO0lBRWhFLE9BQU87UUFDTCxJQUFJLENBQUNXLENBQUFBLEdBQUFBLFdBQUFBLE1BQU0sRUFBQ1gsUUFBUU8sUUFBUSxFQUFFSyxJQUFJLENBQUNYLElBQUlNLFFBQVEsR0FBRztZQUNoRCxPQUFPO1FBQ1Q7SUFDRjtRQUVZUDtJQUFaLElBQUksQ0FBQ1csQ0FBQUEsR0FBQUEsV0FBQUEsTUFBTSxFQUFDWCxDQUFBQSxvQkFBQUEsUUFBUWEsUUFBUSxZQUFoQmIsb0JBQW9CLE1BQU07UUFBRWMsS0FBSztJQUFLLEdBQUdGLElBQUksQ0FBQ1gsSUFBSVksUUFBUSxHQUFHO1FBQ3ZFLE9BQU87SUFDVDtJQUVBLE9BQU87QUFDVDtBQUVPLFNBQVNmLFNBQ2RpQixPQUFpQixFQUNqQkMsY0FBK0IsRUFDL0JmLEdBQVE7SUFFUixPQUNFYyxRQUFRRSxJQUFJLENBQUMsQ0FBQ0MsU0FBV2pCLElBQUlNLFFBQVEsS0FBS1csV0FDMUNGLGVBQWVDLElBQUksQ0FBQyxDQUFDRSxJQUFNcEIsbUJBQW1Cb0IsR0FBR2xCO0FBRXJEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9tYXRjaC1yZW1vdGUtcGF0dGVybi50cz9kNjFkIl0sIm5hbWVzIjpbImhhc01hdGNoIiwibWF0Y2hSZW1vdGVQYXR0ZXJuIiwicGF0dGVybiIsInVybCIsInByb3RvY29sIiwidW5kZWZpbmVkIiwiYWN0dWFsUHJvdG8iLCJzbGljZSIsInBvcnQiLCJob3N0bmFtZSIsIkVycm9yIiwiSlNPTiIsInN0cmluZ2lmeSIsIm1ha2VSZSIsInRlc3QiLCJwYXRobmFtZSIsImRvdCIsImRvbWFpbnMiLCJyZW1vdGVQYXR0ZXJucyIsInNvbWUiLCJkb21haW4iLCJwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/match-remote-pattern.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router-context.shared-runtime.js":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router-context.shared-runtime.js ***!
|
||
\****************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"RouterContext\", ({\n enumerable: true,\n get: function() {\n return RouterContext;\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 _react = /*#__PURE__*/ _interop_require_default._(__webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\"));\nconst RouterContext = _react.default.createContext(null);\nif (true) {\n RouterContext.displayName = \"RouterContext\";\n} //# sourceMappingURL=router-context.shared-runtime.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXItY29udGV4dC5zaGFyZWQtcnVudGltZS5qcyIsIm1hcHBpbmdzIjoiOzs7O2lEQUdhQTs7O2VBQUFBOzs7OzRFQUhLO0FBR1gsTUFBTUEsZ0JBQWdCQyxPQUFBQSxPQUFLLENBQUNDLGFBQWEsQ0FBb0I7QUFFcEUsSUFBSUMsSUFBeUIsRUFBYztJQUN6Q0gsY0FBY0ksV0FBVyxHQUFHO0FBQzlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9yb3V0ZXItY29udGV4dC5zaGFyZWQtcnVudGltZS50cz82MzZjIl0sIm5hbWVzIjpbIlJvdXRlckNvbnRleHQiLCJSZWFjdCIsImNyZWF0ZUNvbnRleHQiLCJwcm9jZXNzIiwiZGlzcGxheU5hbWUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router-context.shared-runtime.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/format-url.js":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/format-url.js ***!
|
||
\**********************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("// Format function modified from nodejs\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\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 formatUrl: function() {\n return formatUrl;\n },\n formatWithValidation: function() {\n return formatWithValidation;\n },\n urlObjectKeys: function() {\n return urlObjectKeys;\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 _querystring = /*#__PURE__*/ _interop_require_wildcard._(__webpack_require__(/*! ./querystring */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/querystring.js\"));\nconst slashedProtocols = /https?|ftp|gopher|file/;\nfunction formatUrl(urlObj) {\n let { auth, hostname } = urlObj;\n let protocol = urlObj.protocol || \"\";\n let pathname = urlObj.pathname || \"\";\n let hash = urlObj.hash || \"\";\n let query = urlObj.query || \"\";\n let host = false;\n auth = auth ? encodeURIComponent(auth).replace(/%3A/i, \":\") + \"@\" : \"\";\n if (urlObj.host) {\n host = auth + urlObj.host;\n } else if (hostname) {\n host = auth + (~hostname.indexOf(\":\") ? \"[\" + hostname + \"]\" : hostname);\n if (urlObj.port) {\n host += \":\" + urlObj.port;\n }\n }\n if (query && typeof query === \"object\") {\n query = String(_querystring.urlQueryToSearchParams(query));\n }\n let search = urlObj.search || query && \"?\" + query || \"\";\n if (protocol && !protocol.endsWith(\":\")) protocol += \":\";\n if (urlObj.slashes || (!protocol || slashedProtocols.test(protocol)) && host !== false) {\n host = \"//\" + (host || \"\");\n if (pathname && pathname[0] !== \"/\") pathname = \"/\" + pathname;\n } else if (!host) {\n host = \"\";\n }\n if (hash && hash[0] !== \"#\") hash = \"#\" + hash;\n if (search && search[0] !== \"?\") search = \"?\" + search;\n pathname = pathname.replace(/[?#]/g, encodeURIComponent);\n search = search.replace(\"#\", \"%23\");\n return \"\" + protocol + host + pathname + search + hash;\n}\nconst urlObjectKeys = [\n \"auth\",\n \"hash\",\n \"host\",\n \"hostname\",\n \"href\",\n \"path\",\n \"pathname\",\n \"port\",\n \"protocol\",\n \"query\",\n \"search\",\n \"slashes\"\n];\nfunction formatWithValidation(url) {\n if (true) {\n if (url !== null && typeof url === \"object\") {\n Object.keys(url).forEach((key)=>{\n if (!urlObjectKeys.includes(key)) {\n console.warn(\"Unknown key passed via urlObject into url.format: \" + key);\n }\n });\n }\n }\n return formatUrl(url);\n} //# sourceMappingURL=format-url.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvZm9ybWF0LXVybC5qcyIsIm1hcHBpbmdzIjoiQUFBQSx1Q0FBdUM7QUFDdkMsc0RBQXNEO0FBQ3RELEVBQUU7QUFDRiwwRUFBMEU7QUFDMUUsZ0VBQWdFO0FBQ2hFLHNFQUFzRTtBQUN0RSxzRUFBc0U7QUFDdEUsNEVBQTRFO0FBQzVFLHFFQUFxRTtBQUNyRSx3QkFBd0I7QUFDeEIsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSx5REFBeUQ7QUFDekQsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSw2REFBNkQ7QUFDN0QsNEVBQTRFO0FBQzVFLDJFQUEyRTtBQUMzRSx3RUFBd0U7QUFDeEUsNEVBQTRFO0FBQzVFLHlDQUF5Qzs7Ozs7Ozs7Ozs7OztJQVF6QkEsV0FBUztlQUFUQTs7SUE2REFDLHNCQUFvQjtlQUFwQkE7O0lBZkhDLGVBQWE7ZUFBYkE7Ozs7bUZBbERnQjtBQUU3QixNQUFNQyxtQkFBbUI7QUFFbEIsU0FBU0gsVUFBVUksTUFBaUI7SUFDekMsSUFBSSxFQUFFQyxJQUFJLEVBQUVDLFFBQVEsRUFBRSxHQUFHRjtJQUN6QixJQUFJRyxXQUFXSCxPQUFPRyxRQUFRLElBQUk7SUFDbEMsSUFBSUMsV0FBV0osT0FBT0ksUUFBUSxJQUFJO0lBQ2xDLElBQUlDLE9BQU9MLE9BQU9LLElBQUksSUFBSTtJQUMxQixJQUFJQyxRQUFRTixPQUFPTSxLQUFLLElBQUk7SUFDNUIsSUFBSUMsT0FBdUI7SUFFM0JOLE9BQU9BLE9BQU9PLG1CQUFtQlAsTUFBTVEsT0FBTyxDQUFDLFFBQVEsT0FBTyxNQUFNO0lBRXBFLElBQUlULE9BQU9PLElBQUksRUFBRTtRQUNmQSxPQUFPTixPQUFPRCxPQUFPTyxJQUFJO0lBQzNCLE9BQU8sSUFBSUwsVUFBVTtRQUNuQkssT0FBT04sT0FBUSxFQUFDQyxTQUFTUSxPQUFPLENBQUMsT0FBTyxNQUFJUixXQUFTLE1BQUtBLFFBQUFBO1FBQzFELElBQUlGLE9BQU9XLElBQUksRUFBRTtZQUNmSixRQUFRLE1BQU1QLE9BQU9XLElBQUk7UUFDM0I7SUFDRjtJQUVBLElBQUlMLFNBQVMsT0FBT0EsVUFBVSxVQUFVO1FBQ3RDQSxRQUFRTSxPQUFPQyxhQUFZQyxzQkFBc0IsQ0FBQ1I7SUFDcEQ7SUFFQSxJQUFJUyxTQUFTZixPQUFPZSxNQUFNLElBQUtULFNBQVMsTUFBSUEsU0FBWTtJQUV4RCxJQUFJSCxZQUFZLENBQUNBLFNBQVNhLFFBQVEsQ0FBQyxNQUFNYixZQUFZO0lBRXJELElBQ0VILE9BQU9pQixPQUFPLElBQ2IsQ0FBQyxDQUFDZCxZQUFZSixpQkFBaUJtQixJQUFJLENBQUNmLFNBQUFBLEtBQWNJLFNBQVMsT0FDNUQ7UUFDQUEsT0FBTyxPQUFRQSxDQUFBQSxRQUFRO1FBQ3ZCLElBQUlILFlBQVlBLFFBQVEsQ0FBQyxFQUFFLEtBQUssS0FBS0EsV0FBVyxNQUFNQTtJQUN4RCxPQUFPLElBQUksQ0FBQ0csTUFBTTtRQUNoQkEsT0FBTztJQUNUO0lBRUEsSUFBSUYsUUFBUUEsSUFBSSxDQUFDLEVBQUUsS0FBSyxLQUFLQSxPQUFPLE1BQU1BO0lBQzFDLElBQUlVLFVBQVVBLE1BQU0sQ0FBQyxFQUFFLEtBQUssS0FBS0EsU0FBUyxNQUFNQTtJQUVoRFgsV0FBV0EsU0FBU0ssT0FBTyxDQUFDLFNBQVNEO0lBQ3JDTyxTQUFTQSxPQUFPTixPQUFPLENBQUMsS0FBSztJQUU3QixPQUFPLEtBQUdOLFdBQVdJLE9BQU9ILFdBQVdXLFNBQVNWO0FBQ2xEO0FBRU8sTUFBTVAsZ0JBQWdCO0lBQzNCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtDQUNEO0FBRU0sU0FBU0QscUJBQXFCc0IsR0FBYztJQUNqRCxJQUFJQyxJQUF5QixFQUFlO1FBQzFDLElBQUlELFFBQVEsUUFBUSxPQUFPQSxRQUFRLFVBQVU7WUFDM0NFLE9BQU9DLElBQUksQ0FBQ0gsS0FBS0ksT0FBTyxDQUFDLENBQUNDO2dCQUN4QixJQUFJLENBQUMxQixjQUFjMkIsUUFBUSxDQUFDRCxNQUFNO29CQUNoQ0UsUUFBUUMsSUFBSSxDQUNWLHVEQUFxREg7Z0JBRXpEO1lBQ0Y7UUFDRjtJQUNGO0lBRUEsT0FBTzVCLFVBQVV1QjtBQUNuQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvcm91dGVyL3V0aWxzL2Zvcm1hdC11cmwudHM/MWI4NyJdLCJuYW1lcyI6WyJmb3JtYXRVcmwiLCJmb3JtYXRXaXRoVmFsaWRhdGlvbiIsInVybE9iamVjdEtleXMiLCJzbGFzaGVkUHJvdG9jb2xzIiwidXJsT2JqIiwiYXV0aCIsImhvc3RuYW1lIiwicHJvdG9jb2wiLCJwYXRobmFtZSIsImhhc2giLCJxdWVyeSIsImhvc3QiLCJlbmNvZGVVUklDb21wb25lbnQiLCJyZXBsYWNlIiwiaW5kZXhPZiIsInBvcnQiLCJTdHJpbmciLCJxdWVyeXN0cmluZyIsInVybFF1ZXJ5VG9TZWFyY2hQYXJhbXMiLCJzZWFyY2giLCJlbmRzV2l0aCIsInNsYXNoZXMiLCJ0ZXN0IiwidXJsIiwicHJvY2VzcyIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwia2V5IiwiaW5jbHVkZXMiLCJjb25zb2xlIiwid2FybiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/format-url.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/index.js":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/index.js ***!
|
||
\*****************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 getSortedRoutes: function() {\n return _sortedroutes.getSortedRoutes;\n },\n isDynamicRoute: function() {\n return _isdynamic.isDynamicRoute;\n }\n});\nconst _sortedroutes = __webpack_require__(/*! ./sorted-routes */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/sorted-routes.js\");\nconst _isdynamic = __webpack_require__(/*! ./is-dynamic */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-dynamic.js\"); //# sourceMappingURL=index.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaW5kZXguanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBQVNBLGlCQUFlO2VBQWZBLGNBQUFBLGVBQWU7O0lBQ2ZDLGdCQUFjO2VBQWRBLFdBQUFBLGNBQWM7OzswQ0FEUzt1Q0FDRCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvcm91dGVyL3V0aWxzL2luZGV4LnRzPzcyZDUiXSwibmFtZXMiOlsiZ2V0U29ydGVkUm91dGVzIiwiaXNEeW5hbWljUm91dGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/index.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/interpolate-as.js":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/interpolate-as.js ***!
|
||
\**************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"interpolateAs\", ({\n enumerable: true,\n get: function() {\n return interpolateAs;\n }\n}));\nconst _routematcher = __webpack_require__(/*! ./route-matcher */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-matcher.js\");\nconst _routeregex = __webpack_require__(/*! ./route-regex */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-regex.js\");\nfunction interpolateAs(route, asPathname, query) {\n let interpolatedRoute = \"\";\n const dynamicRegex = (0, _routeregex.getRouteRegex)(route);\n const dynamicGroups = dynamicRegex.groups;\n const dynamicMatches = (asPathname !== route ? (0, _routematcher.getRouteMatcher)(dynamicRegex)(asPathname) : \"\") || // Fall back to reading the values from the href\n // TODO: should this take priority; also need to change in the router.\n query;\n interpolatedRoute = route;\n const params = Object.keys(dynamicGroups);\n if (!params.every((param)=>{\n let value = dynamicMatches[param] || \"\";\n const { repeat, optional } = dynamicGroups[param];\n // support single-level catch-all\n // TODO: more robust handling for user-error (passing `/`)\n let replaced = \"[\" + (repeat ? \"...\" : \"\") + param + \"]\";\n if (optional) {\n replaced = (!value ? \"/\" : \"\") + \"[\" + replaced + \"]\";\n }\n if (repeat && !Array.isArray(value)) value = [\n value\n ];\n return (optional || param in dynamicMatches) && // Interpolate group into data URL if present\n (interpolatedRoute = interpolatedRoute.replace(replaced, repeat ? value.map(// path delimiter escaped since they are being inserted\n // into the URL and we expect URL encoded segments\n // when parsing dynamic route params\n (segment)=>encodeURIComponent(segment)).join(\"/\") : encodeURIComponent(value)) || \"/\");\n })) {\n interpolatedRoute = \"\" // did not satisfy all requirements\n ;\n // n.b. We ignore this error because we handle warning for this case in\n // development in the `<Link>` component directly.\n }\n return {\n params,\n result: interpolatedRoute\n };\n} //# sourceMappingURL=interpolate-as.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaW50ZXJwb2xhdGUtYXMuanMiLCJtYXBwaW5ncyI6Ijs7OztpREFLZ0JBOzs7ZUFBQUE7OzswQ0FIZ0I7d0NBQ0Y7QUFFdkIsU0FBU0EsY0FDZEMsS0FBYSxFQUNiQyxVQUFrQixFQUNsQkMsS0FBcUI7SUFFckIsSUFBSUMsb0JBQW9CO0lBRXhCLE1BQU1DLGVBQWVDLENBQUFBLEdBQUFBLFlBQUFBLGFBQWEsRUFBQ0w7SUFDbkMsTUFBTU0sZ0JBQWdCRixhQUFhRyxNQUFNO0lBQ3pDLE1BQU1DLGlCQUVIUCxDQUFBQSxlQUFlRCxRQUFRUyxDQUFBQSxHQUFBQSxjQUFBQSxlQUFlLEVBQUNMLGNBQWNILGNBQWMsT0FDcEUsZ0RBQWdEO0lBQ2hELHNFQUFzRTtJQUN0RUM7SUFFRkMsb0JBQW9CSDtJQUNwQixNQUFNVSxTQUFTQyxPQUFPQyxJQUFJLENBQUNOO0lBRTNCLElBQ0UsQ0FBQ0ksT0FBT0csS0FBSyxDQUFDLENBQUNDO1FBQ2IsSUFBSUMsUUFBUVAsY0FBYyxDQUFDTSxNQUFNLElBQUk7UUFDckMsTUFBTSxFQUFFRSxNQUFNLEVBQUVDLFFBQVEsRUFBRSxHQUFHWCxhQUFhLENBQUNRLE1BQU07UUFFakQsaUNBQWlDO1FBQ2pDLDBEQUEwRDtRQUMxRCxJQUFJSSxXQUFXLE1BQUlGLENBQUFBLFNBQVMsUUFBUSxNQUFLRixRQUFNO1FBQy9DLElBQUlHLFVBQVU7WUFDWkMsV0FBVyxDQUFHLENBQUNILFFBQVEsTUFBTSxNQUFHLE1BQUdHLFdBQVM7UUFDOUM7UUFDQSxJQUFJRixVQUFVLENBQUNHLE1BQU1DLE9BQU8sQ0FBQ0wsUUFBUUEsUUFBUTtZQUFDQTtTQUFNO1FBRXBELE9BQ0UsQ0FBQ0UsWUFBWUgsU0FBU04sY0FBQUEsS0FDdEIsNkNBQTZDO1FBQzVDTCxDQUFBQSxvQkFDQ0Esa0JBQW1Ca0IsT0FBTyxDQUN4QkgsVUFDQUYsU0FDSUQsTUFDR08sR0FBRyxDQUVGLHVEQUF1RDtRQUN2RCxrREFBa0Q7UUFDbEQsb0NBQW9DO1FBQ3BDLENBQUNDLFVBQVlDLG1CQUFtQkQsVUFFakNFLElBQUksQ0FBQyxPQUNSRCxtQkFBbUJULFdBQ3BCO0lBRVgsSUFDQTtRQUNBWixvQkFBb0IsR0FBRyxtQ0FBbUM7O0lBRTFELHVFQUF1RTtJQUN2RSxrREFBa0Q7SUFDcEQ7SUFDQSxPQUFPO1FBQ0xPO1FBQ0FnQixRQUFRdkI7SUFDVjtBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaW50ZXJwb2xhdGUtYXMudHM/OWUzMSJdLCJuYW1lcyI6WyJpbnRlcnBvbGF0ZUFzIiwicm91dGUiLCJhc1BhdGhuYW1lIiwicXVlcnkiLCJpbnRlcnBvbGF0ZWRSb3V0ZSIsImR5bmFtaWNSZWdleCIsImdldFJvdXRlUmVnZXgiLCJkeW5hbWljR3JvdXBzIiwiZ3JvdXBzIiwiZHluYW1pY01hdGNoZXMiLCJnZXRSb3V0ZU1hdGNoZXIiLCJwYXJhbXMiLCJPYmplY3QiLCJrZXlzIiwiZXZlcnkiLCJwYXJhbSIsInZhbHVlIiwicmVwZWF0Iiwib3B0aW9uYWwiLCJyZXBsYWNlZCIsIkFycmF5IiwiaXNBcnJheSIsInJlcGxhY2UiLCJtYXAiLCJzZWdtZW50IiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwiam9pbiIsInJlc3VsdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/interpolate-as.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-dynamic.js":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/is-dynamic.js ***!
|
||
\**********************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isDynamicRoute\", ({\n enumerable: true,\n get: function() {\n return isDynamicRoute;\n }\n}));\nconst _interceptionroutes = __webpack_require__(/*! ../../../../server/future/helpers/interception-routes */ \"(app-pages-browser)/./node_modules/next/dist/server/future/helpers/interception-routes.js\");\n// Identify /[param]/ in route string\nconst TEST_ROUTE = /\\/\\[[^/]+?\\](?=\\/|$)/;\nfunction isDynamicRoute(route) {\n if ((0, _interceptionroutes.isInterceptionRouteAppPath)(route)) {\n route = (0, _interceptionroutes.extractInterceptionRouteInformation)(route).interceptedRoute;\n }\n return TEST_ROUTE.test(route);\n} //# sourceMappingURL=is-dynamic.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaXMtZHluYW1pYy5qcyIsIm1hcHBpbmdzIjoiOzs7O2tEQVFnQkE7OztlQUFBQTs7O2dEQUxUO0FBRVAscUNBQXFDO0FBQ3JDLE1BQU1DLGFBQWE7QUFFWixTQUFTRCxlQUFlRSxLQUFhO0lBQzFDLElBQUlDLENBQUFBLEdBQUFBLG9CQUFBQSwwQkFBMEIsRUFBQ0QsUUFBUTtRQUNyQ0EsUUFBUUUsQ0FBQUEsR0FBQUEsb0JBQUFBLG1DQUFtQyxFQUFDRixPQUFPRyxnQkFBZ0I7SUFDckU7SUFFQSxPQUFPSixXQUFXSyxJQUFJLENBQUNKO0FBQ3pCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaXMtZHluYW1pYy50cz84MmRjIl0sIm5hbWVzIjpbImlzRHluYW1pY1JvdXRlIiwiVEVTVF9ST1VURSIsInJvdXRlIiwiaXNJbnRlcmNlcHRpb25Sb3V0ZUFwcFBhdGgiLCJleHRyYWN0SW50ZXJjZXB0aW9uUm91dGVJbmZvcm1hdGlvbiIsImludGVyY2VwdGVkUm91dGUiLCJ0ZXN0Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-dynamic.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-local-url.js":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/is-local-url.js ***!
|
||
\************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"isLocalURL\", ({\n enumerable: true,\n get: function() {\n return isLocalURL;\n }\n}));\nconst _utils = __webpack_require__(/*! ../../utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js\");\nconst _hasbasepath = __webpack_require__(/*! ../../../../client/has-base-path */ \"(app-pages-browser)/./node_modules/next/dist/client/has-base-path.js\");\nfunction isLocalURL(url) {\n // prevent a hydration mismatch on href for url with anchor refs\n if (!(0, _utils.isAbsoluteUrl)(url)) return true;\n try {\n // absolute urls can be local if they are on the same origin\n const locationOrigin = (0, _utils.getLocationOrigin)();\n const resolved = new URL(url, locationOrigin);\n return resolved.origin === locationOrigin && (0, _hasbasepath.hasBasePath)(resolved.pathname);\n } catch (_) {\n return false;\n }\n} //# sourceMappingURL=is-local-url.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaXMtbG9jYWwtdXJsLmpzIiwibWFwcGluZ3MiOiI7Ozs7OENBTWdCQTs7O2VBQUFBOzs7bUNBTmlDO3lDQUNyQjtBQUtyQixTQUFTQSxXQUFXQyxHQUFXO0lBQ3BDLGdFQUFnRTtJQUNoRSxJQUFJLENBQUNDLENBQUFBLEdBQUFBLE9BQUFBLGFBQWEsRUFBQ0QsTUFBTSxPQUFPO0lBQ2hDLElBQUk7UUFDRiw0REFBNEQ7UUFDNUQsTUFBTUUsaUJBQWlCQyxDQUFBQSxHQUFBQSxPQUFBQSxpQkFBaUI7UUFDeEMsTUFBTUMsV0FBVyxJQUFJQyxJQUFJTCxLQUFLRTtRQUM5QixPQUFPRSxTQUFTRSxNQUFNLEtBQUtKLGtCQUFrQkssQ0FBQUEsR0FBQUEsYUFBQUEsV0FBVyxFQUFDSCxTQUFTSSxRQUFRO0lBQzVFLEVBQUUsT0FBT0MsR0FBRztRQUNWLE9BQU87SUFDVDtBQUNGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvaXMtbG9jYWwtdXJsLnRzPzA0ZTUiXSwibmFtZXMiOlsiaXNMb2NhbFVSTCIsInVybCIsImlzQWJzb2x1dGVVcmwiLCJsb2NhdGlvbk9yaWdpbiIsImdldExvY2F0aW9uT3JpZ2luIiwicmVzb2x2ZWQiLCJVUkwiLCJvcmlnaW4iLCJoYXNCYXNlUGF0aCIsInBhdGhuYW1lIiwiXyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/is-local-url.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/omit.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/omit.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"omit\", ({\n enumerable: true,\n get: function() {\n return omit;\n }\n}));\nfunction omit(object, keys) {\n const omitted = {};\n Object.keys(object).forEach((key)=>{\n if (!keys.includes(key)) {\n omitted[key] = object[key];\n }\n });\n return omitted;\n} //# sourceMappingURL=omit.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvb21pdC5qcyIsIm1hcHBpbmdzIjoiOzs7O3dDQUFnQkE7OztlQUFBQTs7O0FBQVQsU0FBU0EsS0FDZEMsTUFBUyxFQUNUQyxJQUFTO0lBRVQsTUFBTUMsVUFBc0MsQ0FBQztJQUM3Q0MsT0FBT0YsSUFBSSxDQUFDRCxRQUFRSSxPQUFPLENBQUMsQ0FBQ0M7UUFDM0IsSUFBSSxDQUFDSixLQUFLSyxRQUFRLENBQUNELE1BQVc7WUFDNUJILE9BQU8sQ0FBQ0csSUFBSSxHQUFHTCxNQUFNLENBQUNLLElBQUk7UUFDNUI7SUFDRjtJQUNBLE9BQU9IO0FBQ1QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL3JvdXRlci91dGlscy9vbWl0LnRzP2I3YTgiXSwibmFtZXMiOlsib21pdCIsIm9iamVjdCIsImtleXMiLCJvbWl0dGVkIiwiT2JqZWN0IiwiZm9yRWFjaCIsImtleSIsImluY2x1ZGVzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/omit.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/querystring.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/querystring.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 assign: function() {\n return assign;\n },\n searchParamsToUrlQuery: function() {\n return searchParamsToUrlQuery;\n },\n urlQueryToSearchParams: function() {\n return urlQueryToSearchParams;\n }\n});\nfunction searchParamsToUrlQuery(searchParams) {\n const query = {};\n searchParams.forEach((value, key)=>{\n if (typeof query[key] === \"undefined\") {\n query[key] = value;\n } else if (Array.isArray(query[key])) {\n query[key].push(value);\n } else {\n query[key] = [\n query[key],\n value\n ];\n }\n });\n return query;\n}\nfunction stringifyUrlQueryParam(param) {\n if (typeof param === \"string\" || typeof param === \"number\" && !isNaN(param) || typeof param === \"boolean\") {\n return String(param);\n } else {\n return \"\";\n }\n}\nfunction urlQueryToSearchParams(urlQuery) {\n const result = new URLSearchParams();\n Object.entries(urlQuery).forEach((param)=>{\n let [key, value] = param;\n if (Array.isArray(value)) {\n value.forEach((item)=>result.append(key, stringifyUrlQueryParam(item)));\n } else {\n result.set(key, stringifyUrlQueryParam(value));\n }\n });\n return result;\n}\nfunction assign(target) {\n for(var _len = arguments.length, searchParamsList = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){\n searchParamsList[_key - 1] = arguments[_key];\n }\n searchParamsList.forEach((searchParams)=>{\n Array.from(searchParams.keys()).forEach((key)=>target.delete(key));\n searchParams.forEach((value, key)=>target.append(key, value));\n });\n return target;\n} //# sourceMappingURL=querystring.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvcXVlcnlzdHJpbmcuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBNENnQkEsUUFBTTtlQUFOQTs7SUExQ0FDLHdCQUFzQjtlQUF0QkE7O0lBNEJBQyx3QkFBc0I7ZUFBdEJBOzs7QUE1QlQsU0FBU0QsdUJBQ2RFLFlBQTZCO0lBRTdCLE1BQU1DLFFBQXdCLENBQUM7SUFDL0JELGFBQWFFLE9BQU8sQ0FBQyxDQUFDQyxPQUFPQztRQUMzQixJQUFJLE9BQU9ILEtBQUssQ0FBQ0csSUFBSSxLQUFLLGFBQWE7WUFDckNILEtBQUssQ0FBQ0csSUFBSSxHQUFHRDtRQUNmLE9BQU8sSUFBSUUsTUFBTUMsT0FBTyxDQUFDTCxLQUFLLENBQUNHLElBQUksR0FBRztZQUNsQ0gsS0FBSyxDQUFDRyxJQUFJLENBQWNHLElBQUksQ0FBQ0o7UUFDakMsT0FBTztZQUNMRixLQUFLLENBQUNHLElBQUksR0FBRztnQkFBQ0gsS0FBSyxDQUFDRyxJQUFJO2dCQUFZRDthQUFNO1FBQzVDO0lBQ0Y7SUFDQSxPQUFPRjtBQUNUO0FBRUEsU0FBU08sdUJBQXVCQyxLQUFjO0lBQzVDLElBQ0UsT0FBT0EsVUFBVSxZQUNoQixPQUFPQSxVQUFVLFlBQVksQ0FBQ0MsTUFBTUQsVUFDckMsT0FBT0EsVUFBVSxXQUNqQjtRQUNBLE9BQU9FLE9BQU9GO0lBQ2hCLE9BQU87UUFDTCxPQUFPO0lBQ1Q7QUFDRjtBQUVPLFNBQVNWLHVCQUNkYSxRQUF3QjtJQUV4QixNQUFNQyxTQUFTLElBQUlDO0lBQ25CQyxPQUFPQyxPQUFPLENBQUNKLFVBQVVWLE9BQU8sQ0FBQyxDQUFBTztZQUFDLENBQUNMLEtBQUtELE1BQU0sR0FBQU07UUFDNUMsSUFBSUosTUFBTUMsT0FBTyxDQUFDSCxRQUFRO1lBQ3hCQSxNQUFNRCxPQUFPLENBQUMsQ0FBQ2UsT0FBU0osT0FBT0ssTUFBTSxDQUFDZCxLQUFLSSx1QkFBdUJTO1FBQ3BFLE9BQU87WUFDTEosT0FBT00sR0FBRyxDQUFDZixLQUFLSSx1QkFBdUJMO1FBQ3pDO0lBQ0Y7SUFDQSxPQUFPVTtBQUNUO0FBRU8sU0FBU2hCLE9BQ2R1QixNQUF1QjtJQUN2QixRQUFBQyxPQUFBQyxVQUFBQyxNQUFBLEVBQUFDLG1CQUFBLElBQUFuQixNQUFBZ0IsT0FBQSxJQUFBQSxPQUFBLFFBQUFJLE9BQUEsR0FBQUEsT0FBQUosTUFBQUksT0FBQTtRQUFHRCxnQkFBQUEsQ0FBSEMsT0FBQSxLQUFBSCxTQUFBLENBQUFHLEtBQXNDOztJQUV0Q0QsaUJBQWlCdEIsT0FBTyxDQUFDLENBQUNGO1FBQ3hCSyxNQUFNcUIsSUFBSSxDQUFDMUIsYUFBYTJCLElBQUksSUFBSXpCLE9BQU8sQ0FBQyxDQUFDRSxNQUFRZ0IsT0FBT1EsTUFBTSxDQUFDeEI7UUFDL0RKLGFBQWFFLE9BQU8sQ0FBQyxDQUFDQyxPQUFPQyxNQUFRZ0IsT0FBT0YsTUFBTSxDQUFDZCxLQUFLRDtJQUMxRDtJQUNBLE9BQU9pQjtBQUNUIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvcXVlcnlzdHJpbmcudHM/ODJmYSJdLCJuYW1lcyI6WyJhc3NpZ24iLCJzZWFyY2hQYXJhbXNUb1VybFF1ZXJ5IiwidXJsUXVlcnlUb1NlYXJjaFBhcmFtcyIsInNlYXJjaFBhcmFtcyIsInF1ZXJ5IiwiZm9yRWFjaCIsInZhbHVlIiwia2V5IiwiQXJyYXkiLCJpc0FycmF5IiwicHVzaCIsInN0cmluZ2lmeVVybFF1ZXJ5UGFyYW0iLCJwYXJhbSIsImlzTmFOIiwiU3RyaW5nIiwidXJsUXVlcnkiLCJyZXN1bHQiLCJVUkxTZWFyY2hQYXJhbXMiLCJPYmplY3QiLCJlbnRyaWVzIiwiaXRlbSIsImFwcGVuZCIsInNldCIsInRhcmdldCIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzZWFyY2hQYXJhbXNMaXN0IiwiX2tleSIsImZyb20iLCJrZXlzIiwiZGVsZXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/querystring.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-matcher.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/route-matcher.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"getRouteMatcher\", ({\n enumerable: true,\n get: function() {\n return getRouteMatcher;\n }\n}));\nconst _utils = __webpack_require__(/*! ../../utils */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js\");\nfunction getRouteMatcher(param) {\n let { re, groups } = param;\n return (pathname)=>{\n const routeMatch = re.exec(pathname);\n if (!routeMatch) {\n return false;\n }\n const decode = (param)=>{\n try {\n return decodeURIComponent(param);\n } catch (_) {\n throw new _utils.DecodeError(\"failed to decode param\");\n }\n };\n const params = {};\n Object.keys(groups).forEach((slugName)=>{\n const g = groups[slugName];\n const m = routeMatch[g.pos];\n if (m !== undefined) {\n params[slugName] = ~m.indexOf(\"/\") ? m.split(\"/\").map((entry)=>decode(entry)) : g.repeat ? [\n decode(m)\n ] : decode(m);\n }\n });\n return params;\n };\n} //# sourceMappingURL=route-matcher.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvcm91dGUtbWF0Y2hlci5qcyIsIm1hcHBpbmdzIjoiOzs7O21EQVdnQkE7OztlQUFBQTs7O21DQVZZO0FBVXJCLFNBQVNBLGdCQUFnQkMsS0FBMEI7SUFBMUIsTUFBRUMsRUFBRSxFQUFFQyxNQUFNLEVBQWMsR0FBMUJGO0lBQzlCLE9BQU8sQ0FBQ0c7UUFDTixNQUFNQyxhQUFhSCxHQUFHSSxJQUFJLENBQUNGO1FBQzNCLElBQUksQ0FBQ0MsWUFBWTtZQUNmLE9BQU87UUFDVDtRQUVBLE1BQU1FLFNBQVMsQ0FBQ047WUFDZCxJQUFJO2dCQUNGLE9BQU9PLG1CQUFtQlA7WUFDNUIsRUFBRSxPQUFPUSxHQUFHO2dCQUNWLE1BQU0sSUFBSUMsT0FBQUEsV0FBVyxDQUFDO1lBQ3hCO1FBQ0Y7UUFDQSxNQUFNQyxTQUFxRCxDQUFDO1FBRTVEQyxPQUFPQyxJQUFJLENBQUNWLFFBQVFXLE9BQU8sQ0FBQyxDQUFDQztZQUMzQixNQUFNQyxJQUFJYixNQUFNLENBQUNZLFNBQVM7WUFDMUIsTUFBTUUsSUFBSVosVUFBVSxDQUFDVyxFQUFFRSxHQUFHLENBQUM7WUFDM0IsSUFBSUQsTUFBTUUsV0FBVztnQkFDbkJSLE1BQU0sQ0FBQ0ksU0FBUyxHQUFHLENBQUNFLEVBQUVHLE9BQU8sQ0FBQyxPQUMxQkgsRUFBRUksS0FBSyxDQUFDLEtBQUtDLEdBQUcsQ0FBQyxDQUFDQyxRQUFVaEIsT0FBT2dCLFVBQ25DUCxFQUFFUSxNQUFNLEdBQ1I7b0JBQUNqQixPQUFPVTtpQkFBRyxHQUNYVixPQUFPVTtZQUNiO1FBQ0Y7UUFDQSxPQUFPTjtJQUNUO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL3JvdXRlci91dGlscy9yb3V0ZS1tYXRjaGVyLnRzPzMxNzkiXSwibmFtZXMiOlsiZ2V0Um91dGVNYXRjaGVyIiwicGFyYW0iLCJyZSIsImdyb3VwcyIsInBhdGhuYW1lIiwicm91dGVNYXRjaCIsImV4ZWMiLCJkZWNvZGUiLCJkZWNvZGVVUklDb21wb25lbnQiLCJfIiwiRGVjb2RlRXJyb3IiLCJwYXJhbXMiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsInNsdWdOYW1lIiwiZyIsIm0iLCJwb3MiLCJ1bmRlZmluZWQiLCJpbmRleE9mIiwic3BsaXQiLCJtYXAiLCJlbnRyeSIsInJlcGVhdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-matcher.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-regex.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/route-regex.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 getNamedMiddlewareRegex: function() {\n return getNamedMiddlewareRegex;\n },\n getNamedRouteRegex: function() {\n return getNamedRouteRegex;\n },\n getRouteRegex: function() {\n return getRouteRegex;\n }\n});\nconst _interceptionroutes = __webpack_require__(/*! ../../../../server/future/helpers/interception-routes */ \"(app-pages-browser)/./node_modules/next/dist/server/future/helpers/interception-routes.js\");\nconst _escaperegexp = __webpack_require__(/*! ../../escape-regexp */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/escape-regexp.js\");\nconst _removetrailingslash = __webpack_require__(/*! ./remove-trailing-slash */ \"(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js\");\nconst NEXT_QUERY_PARAM_PREFIX = \"nxtP\";\nconst NEXT_INTERCEPTION_MARKER_PREFIX = \"nxtI\";\n/**\n * Parses a given parameter from a route to a data structure that can be used\n * to generate the parametrized route. Examples:\n * - `[...slug]` -> `{ key: 'slug', repeat: true, optional: true }`\n * - `...slug` -> `{ key: 'slug', repeat: true, optional: false }`\n * - `[foo]` -> `{ key: 'foo', repeat: false, optional: true }`\n * - `bar` -> `{ key: 'bar', repeat: false, optional: false }`\n */ function parseParameter(param) {\n const optional = param.startsWith(\"[\") && param.endsWith(\"]\");\n if (optional) {\n param = param.slice(1, -1);\n }\n const repeat = param.startsWith(\"...\");\n if (repeat) {\n param = param.slice(3);\n }\n return {\n key: param,\n repeat,\n optional\n };\n}\nfunction getParametrizedRoute(route) {\n const segments = (0, _removetrailingslash.removeTrailingSlash)(route).slice(1).split(\"/\");\n const groups = {};\n let groupIndex = 1;\n return {\n parameterizedRoute: segments.map((segment)=>{\n const markerMatch = _interceptionroutes.INTERCEPTION_ROUTE_MARKERS.find((m)=>segment.startsWith(m));\n const paramMatches = segment.match(/\\[((?:\\[.*\\])|.+)\\]/) // Check for parameters\n ;\n if (markerMatch && paramMatches) {\n const { key, optional, repeat } = parseParameter(paramMatches[1]);\n groups[key] = {\n pos: groupIndex++,\n repeat,\n optional\n };\n return \"/\" + (0, _escaperegexp.escapeStringRegexp)(markerMatch) + \"([^/]+?)\";\n } else if (paramMatches) {\n const { key, repeat, optional } = parseParameter(paramMatches[1]);\n groups[key] = {\n pos: groupIndex++,\n repeat,\n optional\n };\n return repeat ? optional ? \"(?:/(.+?))?\" : \"/(.+?)\" : \"/([^/]+?)\";\n } else {\n return \"/\" + (0, _escaperegexp.escapeStringRegexp)(segment);\n }\n }).join(\"\"),\n groups\n };\n}\nfunction getRouteRegex(normalizedRoute) {\n const { parameterizedRoute, groups } = getParametrizedRoute(normalizedRoute);\n return {\n re: new RegExp(\"^\" + parameterizedRoute + \"(?:/)?$\"),\n groups: groups\n };\n}\n/**\n * Builds a function to generate a minimal routeKey using only a-z and minimal\n * number of characters.\n */ function buildGetSafeRouteKey() {\n let i = 0;\n return ()=>{\n let routeKey = \"\";\n let j = ++i;\n while(j > 0){\n routeKey += String.fromCharCode(97 + (j - 1) % 26);\n j = Math.floor((j - 1) / 26);\n }\n return routeKey;\n };\n}\nfunction getSafeKeyFromSegment(param) {\n let { interceptionMarker, getSafeRouteKey, segment, routeKeys, keyPrefix } = param;\n const { key, optional, repeat } = parseParameter(segment);\n // replace any non-word characters since they can break\n // the named regex\n let cleanedKey = key.replace(/\\W/g, \"\");\n if (keyPrefix) {\n cleanedKey = \"\" + keyPrefix + cleanedKey;\n }\n let invalidKey = false;\n // check if the key is still invalid and fallback to using a known\n // safe key\n if (cleanedKey.length === 0 || cleanedKey.length > 30) {\n invalidKey = true;\n }\n if (!isNaN(parseInt(cleanedKey.slice(0, 1)))) {\n invalidKey = true;\n }\n if (invalidKey) {\n cleanedKey = getSafeRouteKey();\n }\n if (keyPrefix) {\n routeKeys[cleanedKey] = \"\" + keyPrefix + key;\n } else {\n routeKeys[cleanedKey] = key;\n }\n // if the segment has an interception marker, make sure that's part of the regex pattern\n // this is to ensure that the route with the interception marker doesn't incorrectly match\n // the non-intercepted route (ie /app/(.)[username] should not match /app/[username])\n const interceptionPrefix = interceptionMarker ? (0, _escaperegexp.escapeStringRegexp)(interceptionMarker) : \"\";\n return repeat ? optional ? \"(?:/\" + interceptionPrefix + \"(?<\" + cleanedKey + \">.+?))?\" : \"/\" + interceptionPrefix + \"(?<\" + cleanedKey + \">.+?)\" : \"/\" + interceptionPrefix + \"(?<\" + cleanedKey + \">[^/]+?)\";\n}\nfunction getNamedParametrizedRoute(route, prefixRouteKeys) {\n const segments = (0, _removetrailingslash.removeTrailingSlash)(route).slice(1).split(\"/\");\n const getSafeRouteKey = buildGetSafeRouteKey();\n const routeKeys = {};\n return {\n namedParameterizedRoute: segments.map((segment)=>{\n const hasInterceptionMarker = _interceptionroutes.INTERCEPTION_ROUTE_MARKERS.some((m)=>segment.startsWith(m));\n const paramMatches = segment.match(/\\[((?:\\[.*\\])|.+)\\]/) // Check for parameters\n ;\n if (hasInterceptionMarker && paramMatches) {\n const [usedMarker] = segment.split(paramMatches[0]);\n return getSafeKeyFromSegment({\n getSafeRouteKey,\n interceptionMarker: usedMarker,\n segment: paramMatches[1],\n routeKeys,\n keyPrefix: prefixRouteKeys ? NEXT_INTERCEPTION_MARKER_PREFIX : undefined\n });\n } else if (paramMatches) {\n return getSafeKeyFromSegment({\n getSafeRouteKey,\n segment: paramMatches[1],\n routeKeys,\n keyPrefix: prefixRouteKeys ? NEXT_QUERY_PARAM_PREFIX : undefined\n });\n } else {\n return \"/\" + (0, _escaperegexp.escapeStringRegexp)(segment);\n }\n }).join(\"\"),\n routeKeys\n };\n}\nfunction getNamedRouteRegex(normalizedRoute, prefixRouteKey) {\n const result = getNamedParametrizedRoute(normalizedRoute, prefixRouteKey);\n return {\n ...getRouteRegex(normalizedRoute),\n namedRegex: \"^\" + result.namedParameterizedRoute + \"(?:/)?$\",\n routeKeys: result.routeKeys\n };\n}\nfunction getNamedMiddlewareRegex(normalizedRoute, options) {\n const { parameterizedRoute } = getParametrizedRoute(normalizedRoute);\n const { catchAll = true } = options;\n if (parameterizedRoute === \"/\") {\n let catchAllRegex = catchAll ? \".*\" : \"\";\n return {\n namedRegex: \"^/\" + catchAllRegex + \"$\"\n };\n }\n const { namedParameterizedRoute } = getNamedParametrizedRoute(normalizedRoute, false);\n let catchAllGroupedRegex = catchAll ? \"(?:(/.*)?)\" : \"\";\n return {\n namedRegex: \"^\" + namedParameterizedRoute + catchAllGroupedRegex + \"$\"\n };\n} //# sourceMappingURL=route-regex.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvcm91dGUtcmVnZXguanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0lBMk5nQkEseUJBQXVCO2VBQXZCQTs7SUFoQkFDLG9CQUFrQjtlQUFsQkE7O0lBbklBQyxlQUFhO2VBQWJBOzs7Z0RBeEUyQjswQ0FDUjtpREFDQztBQUVwQyxNQUFNQywwQkFBMEI7QUFDaEMsTUFBTUMsa0NBQWtDO0FBYXhDOzs7Ozs7O0NBT0MsR0FDRCxTQUFTQyxlQUFlQyxLQUFhO0lBQ25DLE1BQU1DLFdBQVdELE1BQU1FLFVBQVUsQ0FBQyxRQUFRRixNQUFNRyxRQUFRLENBQUM7SUFDekQsSUFBSUYsVUFBVTtRQUNaRCxRQUFRQSxNQUFNSSxLQUFLLENBQUMsR0FBRyxDQUFDO0lBQzFCO0lBQ0EsTUFBTUMsU0FBU0wsTUFBTUUsVUFBVSxDQUFDO0lBQ2hDLElBQUlHLFFBQVE7UUFDVkwsUUFBUUEsTUFBTUksS0FBSyxDQUFDO0lBQ3RCO0lBQ0EsT0FBTztRQUFFRSxLQUFLTjtRQUFPSztRQUFRSjtJQUFTO0FBQ3hDO0FBRUEsU0FBU00scUJBQXFCQyxLQUFhO0lBQ3pDLE1BQU1DLFdBQVdDLENBQUFBLEdBQUFBLHFCQUFBQSxtQkFBbUIsRUFBQ0YsT0FBT0osS0FBSyxDQUFDLEdBQUdPLEtBQUssQ0FBQztJQUMzRCxNQUFNQyxTQUF5QyxDQUFDO0lBQ2hELElBQUlDLGFBQWE7SUFDakIsT0FBTztRQUNMQyxvQkFBb0JMLFNBQ2pCTSxHQUFHLENBQUMsQ0FBQ0M7WUFDSixNQUFNQyxjQUFjQyxvQkFBQUEsMEJBQTBCLENBQUNDLElBQUksQ0FBQyxDQUFDQyxJQUNuREosUUFBUWQsVUFBVSxDQUFDa0I7WUFFckIsTUFBTUMsZUFBZUwsUUFBUU0sS0FBSyxDQUFDLHVCQUF1Qix1QkFBdUI7O1lBRWpGLElBQUlMLGVBQWVJLGNBQWM7Z0JBQy9CLE1BQU0sRUFBRWYs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TSxFQUFFN0Msa0JBQWtCLEVBQUUsR0FBR1AscUJBQXFCbUI7SUFDcEQsTUFBTSxFQUFFa0MsV0FBVyxJQUFJLEVBQUUsR0FBR0Q7SUFDNUIsSUFBSTdDLHVCQUF1QixLQUFLO1FBQzlCLElBQUkrQyxnQkFBZ0JELFdBQVcsT0FBTztRQUN0QyxPQUFPO1lBQ0xGLFlBQVksT0FBS0csZ0JBQWM7UUFDakM7SUFDRjtJQUVBLE1BQU0sRUFBRVYsdUJBQXVCLEVBQUUsR0FBR0YsMEJBQ2xDdkIsaUJBQ0E7SUFFRixJQUFJb0MsdUJBQXVCRixXQUFXLGVBQWU7SUFDckQsT0FBTztRQUNMRixZQUFZLE1BQUlQLDBCQUEwQlcsdUJBQXFCO0lBQ2pFO0FBQ0YiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL3JvdXRlci91dGlscy9yb3V0ZS1yZWdleC50cz8xNmExIl0sIm5hbWVzIjpbImdldE5hbWVkTWlkZGxld2FyZVJlZ2V4IiwiZ2V0TmFtZWRSb3V0ZVJlZ2V4IiwiZ2V0Um91dGVSZWdleCIsIk5FWFRfUVVFUllfUEFSQU1fUFJFRklYIiwiTkVYVF9JTlRFUkNFUFRJT05fTUFSS0VSX1BSRUZJWCIsInBhcnNlUGFyYW1ldGVyIiwicGFyYW0iLCJvcHRpb25hbCIsInN0YXJ0c1dpdGgiLCJlbmRzV2l0aCIsInNsaWNlIiwicmVwZWF0Iiwia2V5IiwiZ2V0UGFyYW1ldHJpemVkUm91dGUiLCJyb3V0ZSIsInNlZ21lbnRzIiwicmVtb3ZlVHJhaWxpbmdTbGFzaCIsInNwbGl0IiwiZ3JvdXBzIiwiZ3JvdXBJbmRleCIsInBhcmFtZXRlcml6ZWRSb3V0ZSIsIm1hcCIsInNlZ21lbnQiLCJtYXJrZXJNYXRjaCIsIklOVEVSQ0VQVElPTl9ST1VURV9NQVJLRVJTIiwiZmluZCIsIm0iLCJwYXJhbU1hdGNoZXMiLCJtYXRjaCIsInBvcyIsImVzY2FwZVN0cmluZ1JlZ2V4cCIsImpvaW4iLCJub3JtYWxpemVkUm91dGUiLCJyZSIsIlJlZ0V4cCIsImJ1aWxkR2V0U2FmZVJvdXRlS2V5IiwiaSIsInJvdXRlS2V5IiwiaiIsIlN0cmluZyIsImZyb21DaGFyQ29kZSIsIk1hdGgiLCJmbG9vciIsImdldFNhZmVLZXlGcm9tU2VnbWVudCIsImludGVyY2VwdGlvbk1hcmtlciIsImdldFNhZmVSb3V0ZUtleSIsInJvdXRlS2V5cyIsImtleVByZWZpeCIsImNsZWFuZWRLZXkiLCJyZXBsYWNlIiwiaW52YWxpZEtleSIsImxlbmd0aCIsImlzTmFOIiwicGFyc2VJbnQiLCJpbnRlcmNlcHRpb25QcmVmaXgiLCJnZXROYW1lZFBhcmFtZXRyaXplZFJvdXRlIiwicHJlZml4Um91dGVLZXlzIiwibmFtZWRQYXJhbWV0ZXJpemVkUm91dGUiLCJoYXNJbnRlcmNlcHRpb25NYXJrZXIiLCJzb21lIiwidXNlZE1hcmtlciIsInVuZGVmaW5lZCIsInByZWZpeFJvdXRlS2V5IiwicmVzdWx0IiwibmFtZWRSZWdleCIsIm9wdGlvbnMiLCJjYXRjaEFsbCIsImNhdGNoQWxsUmVnZXgiLCJjYXRjaEFsbEdyb3VwZWRSZWdleCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/route-regex.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/sorted-routes.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/router/utils/sorted-routes.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"getSortedRoutes\", ({\n enumerable: true,\n get: function() {\n return getSortedRoutes;\n }\n}));\nclass UrlNode {\n insert(urlPath) {\n this._insert(urlPath.split(\"/\").filter(Boolean), [], false);\n }\n smoosh() {\n return this._smoosh();\n }\n _smoosh(prefix) {\n if (prefix === void 0) prefix = \"/\";\n const childrenPaths = [\n ...this.children.keys()\n ].sort();\n if (this.slugName !== null) {\n childrenPaths.splice(childrenPaths.indexOf(\"[]\"), 1);\n }\n if (this.restSlugName !== null) {\n childrenPaths.splice(childrenPaths.indexOf(\"[...]\"), 1);\n }\n if (this.optionalRestSlugName !== null) {\n childrenPaths.splice(childrenPaths.indexOf(\"[[...]]\"), 1);\n }\n const routes = childrenPaths.map((c)=>this.children.get(c)._smoosh(\"\" + prefix + c + \"/\")).reduce((prev, curr)=>[\n ...prev,\n ...curr\n ], []);\n if (this.slugName !== null) {\n routes.push(...this.children.get(\"[]\")._smoosh(prefix + \"[\" + this.slugName + \"]/\"));\n }\n if (!this.placeholder) {\n const r = prefix === \"/\" ? \"/\" : prefix.slice(0, -1);\n if (this.optionalRestSlugName != null) {\n throw new Error('You cannot define a route with the same specificity as a optional catch-all route (\"' + r + '\" and \"' + r + \"[[...\" + this.optionalRestSlugName + ']]\").');\n }\n routes.unshift(r);\n }\n if (this.restSlugName !== null) {\n routes.push(...this.children.get(\"[...]\")._smoosh(prefix + \"[...\" + this.restSlugName + \"]/\"));\n }\n if (this.optionalRestSlugName !== null) {\n routes.push(...this.children.get(\"[[...]]\")._smoosh(prefix + \"[[...\" + this.optionalRestSlugName + \"]]/\"));\n }\n return routes;\n }\n _insert(urlPaths, slugNames, isCatchAll) {\n if (urlPaths.length === 0) {\n this.placeholder = false;\n return;\n }\n if (isCatchAll) {\n throw new Error(\"Catch-all must be the last part of the URL.\");\n }\n // The next segment in the urlPaths list\n let nextSegment = urlPaths[0];\n // Check if the segment matches `[something]`\n if (nextSegment.startsWith(\"[\") && nextSegment.endsWith(\"]\")) {\n // Strip `[` and `]`, leaving only `something`\n let segmentName = nextSegment.slice(1, -1);\n let isOptional = false;\n if (segmentName.startsWith(\"[\") && segmentName.endsWith(\"]\")) {\n // Strip optional `[` and `]`, leaving only `something`\n segmentName = segmentName.slice(1, -1);\n isOptional = true;\n }\n if (segmentName.startsWith(\"...\")) {\n // Strip `...`, leaving only `something`\n segmentName = segmentName.substring(3);\n isCatchAll = true;\n }\n if (segmentName.startsWith(\"[\") || segmentName.endsWith(\"]\")) {\n throw new Error(\"Segment names may not start or end with extra brackets ('\" + segmentName + \"').\");\n }\n if (segmentName.startsWith(\".\")) {\n throw new Error(\"Segment names may not start with erroneous periods ('\" + segmentName + \"').\");\n }\n function handleSlug(previousSlug, nextSlug) {\n if (previousSlug !== null) {\n // If the specific segment already has a slug but the slug is not `something`\n // This prevents collisions like:\n // pages/[post]/index.js\n // pages/[id]/index.js\n // Because currently multiple dynamic params on the same segment level are not supported\n if (previousSlug !== nextSlug) {\n // TODO: This error seems to be confusing for users, needs an error link, the description can be based on above comment.\n throw new Error(\"You cannot use different slug names for the same dynamic path ('\" + previousSlug + \"' !== '\" + nextSlug + \"').\");\n }\n }\n slugNames.forEach((slug)=>{\n if (slug === nextSlug) {\n throw new Error('You cannot have the same slug name \"' + nextSlug + '\" repeat within a single dynamic path');\n }\n if (slug.replace(/\\W/g, \"\") === nextSegment.replace(/\\W/g, \"\")) {\n throw new Error('You cannot have the slug names \"' + slug + '\" and \"' + nextSlug + '\" differ only by non-word symbols within a single dynamic path');\n }\n });\n slugNames.push(nextSlug);\n }\n if (isCatchAll) {\n if (isOptional) {\n if (this.restSlugName != null) {\n throw new Error('You cannot use both an required and optional catch-all route at the same level (\"[...' + this.restSlugName + ']\" and \"' + urlPaths[0] + '\" ).');\n }\n handleSlug(this.optionalRestSlugName, segmentName);\n // slugName is kept as it can only be one particular slugName\n this.optionalRestSlugName = segmentName;\n // nextSegment is overwritten to [[...]] so that it can later be sorted specifically\n nextSegment = \"[[...]]\";\n } else {\n if (this.optionalRestSlugName != null) {\n throw new Error('You cannot use both an optional and required catch-all route at the same level (\"[[...' + this.optionalRestSlugName + ']]\" and \"' + urlPaths[0] + '\").');\n }\n handleSlug(this.restSlugName, segmentName);\n // slugName is kept as it can only be one particular slugName\n this.restSlugName = segmentName;\n // nextSegment is overwritten to [...] so that it can later be sorted specifically\n nextSegment = \"[...]\";\n }\n } else {\n if (isOptional) {\n throw new Error('Optional route parameters are not yet supported (\"' + urlPaths[0] + '\").');\n }\n handleSlug(this.slugName, segmentName);\n // slugName is kept as it can only be one particular slugName\n this.slugName = segmentName;\n // nextSegment is overwritten to [] so that it can later be sorted specifically\n nextSegment = \"[]\";\n }\n }\n // If this UrlNode doesn't have the nextSegment yet we create a new child UrlNode\n if (!this.children.has(nextSegment)) {\n this.children.set(nextSegment, new UrlNode());\n }\n this.children.get(nextSegment)._insert(urlPaths.slice(1), slugNames, isCatchAll);\n }\n constructor(){\n this.placeholder = true;\n this.children = new Map();\n this.slugName = null;\n this.restSlugName = null;\n this.optionalRestSlugName = null;\n }\n}\nfunction getSortedRoutes(normalizedPages) {\n // First the UrlNode is created, and every UrlNode can have only 1 dynamic segment\n // Eg you can't have pages/[post]/abc.js and pages/[hello]/something-else.js\n // Only 1 dynamic segment per nesting level\n // So in the case that is test/integration/dynamic-routing it'll be this:\n // pages/[post]/comments.js\n // pages/blog/[post]/comment/[id].js\n // Both are fine because `pages/[post]` and `pages/blog` are on the same level\n // So in this case `UrlNode` created here has `this.slugName === 'post'`\n // And since your PR passed through `slugName` as an array basically it'd including it in too many possibilities\n // Instead what has to be passed through is the upwards path's dynamic names\n const root = new UrlNode();\n // Here the `root` gets injected multiple paths, and insert will break them up into sublevels\n normalizedPages.forEach((pagePath)=>root.insert(pagePath));\n // Smoosh will then sort those sublevels up to the point where you get the correct route definition priority\n return root.smoosh();\n} //# sourceMappingURL=sorted-routes.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9yb3V0ZXIvdXRpbHMvc29ydGVkLXJvdXRlcy5qcyIsIm1hcHBpbmdzIjoiOzs7O21EQXFNZ0JBOzs7ZUFBQUE7OztBQXJNaEIsTUFBTUM7SUFPSkMsT0FBT0MsT0FBZSxFQUFRO1FBQzVCLElBQUksQ0FBQ0MsT0FBTyxDQUFDRCxRQUFRRSxLQUFLLENBQUMsS0FBS0MsTUFBTSxDQUFDQyxVQUFVLEVBQUUsRUFBRTtJQUN2RDtJQUVBQyxTQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQ0MsT0FBTztJQUNyQjtJQUVRQSxRQUFRQyxNQUFvQixFQUFZO1FBQWhDQSxJQUFBQSxXQUFBQSxLQUFBQSxHQUFBQSxTQUFpQjtRQUMvQixNQUFNQyxnQkFBZ0I7ZUFBSSxJQUFJLENBQUNDLFFBQVEsQ0FBQ0MsSUFBSTtTQUFHLENBQUNDLElBQUk7UUFDcEQsSUFBSSxJQUFJLENBQUNDLFFBQVEsS0FBSyxNQUFNO1lBQzFCSixjQUFjSyxNQUFNLENBQUNMLGNBQWNNLE9BQU8sQ0FBQyxPQUFPO1FBQ3BEO1FBQ0EsSUFBSSxJQUFJLENBQUNDLFlBQVksS0FBSyxNQUFNO1lBQzlCUCxjQUFjSyxNQUFNLENBQUNMLGNBQWNNLE9BQU8sQ0FBQyxVQUFVO1FBQ3ZEO1FBQ0EsSUFBSSxJQUFJLENBQUNFLG9CQUFvQixLQUFLLE1BQU07WUFDdENSLGNBQWNLLE1BQU0sQ0FBQ0wsY0FBY00sT0FBTyxDQUFDLFlBQVk7UUFDekQ7UUFFQSxNQUFNRyxTQUFTVCxjQUNaVSxHQUFHLENBQUMsQ0FBQ0MsSUFBTSxJQUFJLENBQUNWLFFBQVEsQ0FBQ1csR0FBRyxDQUFDRCxHQUFJYixPQUFPLENBQUMsS0FBR0MsU0FBU1ksSUFBRSxNQUN2REUsTUFBTSxDQUFDLENBQUNDLE1BQU1DLE9BQVM7bUJBQUlEO21CQUFTQzthQUFLLEVBQUUsRUFBRTtRQUVoRCxJQUFJLElBQUksQ0FBQ1gsUUFBUSxLQUFL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Q0FBQ3pCLFFBQVEsQ0FBQ3NDLEdBQUcsQ0FBQ2IsYUFBYSxJQUFJcEM7UUFDckM7UUFFQSxJQUFJLENBQUNXLFFBQVEsQ0FDVlcsR0FBRyxDQUFDYyxhQUNKakMsT0FBTyxDQUFDNkIsU0FBU0gsS0FBSyxDQUFDLElBQUlJLFdBQVdDO0lBQzNDOzthQWpNQVAsV0FBQUEsR0FBdUI7YUFDdkJoQixRQUFBQSxHQUFpQyxJQUFJdUM7YUFDckNwQyxRQUFBQSxHQUEwQjthQUMxQkcsWUFBQUEsR0FBOEI7YUFDOUJDLG9CQUFBQSxHQUFzQzs7QUE4THhDO0FBRU8sU0FBU25CLGdCQUNkb0QsZUFBc0M7SUFFdEMsa0ZBQWtGO0lBQ2xGLDRFQUE0RTtJQUM1RSwyQ0FBMkM7SUFFM0MseUVBQXlFO0lBQ3pFLDJCQUEyQjtJQUMzQixvQ0FBb0M7SUFDcEMsOEVBQThFO0lBQzlFLHdFQUF3RTtJQUN4RSxnSEFBZ0g7SUFDaEgsNEVBQTRFO0lBQzVFLE1BQU1DLE9BQU8sSUFBSXBEO0lBRWpCLDZGQUE2RjtJQUM3Rm1ELGdCQUFnQk4sT0FBTyxDQUFDLENBQUNRLFdBQWFELEtBQUtuRCxNQUFNLENBQUNvRDtJQUNsRCw0R0FBNEc7SUFDNUcsT0FBT0QsS0FBSzdDLE1BQU07QUFDcEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4uLy4uLy4uLy4uLy4uL3NyYy9zaGFyZWQvbGliL3JvdXRlci91dGlscy9zb3J0ZWQtcm91dGVzLnRzP2Q1M2IiXSwibmFtZXMiOlsiZ2V0U29ydGVkUm91dGVzIiwiVXJsTm9kZSIsImluc2VydCIsInVybFBhdGgiLCJfaW5zZXJ0Iiwic3BsaXQiLCJmaWx0ZXIiLCJCb29sZWFuIiwic21vb3NoIiwiX3Ntb29zaCIsInByZWZpeCIsImNoaWxkcmVuUGF0aHMiLCJjaGlsZHJlbiIsImtleXMiLCJzb3J0Iiwic2x1Z05hbWUiLCJzcGxpY2UiLCJpbmRleE9mIiwicmVzdFNsdWdOYW1lIiwib3B0aW9uYWxSZXN0U2x1Z05hbWUiLCJyb3V0ZXMiLCJtYXAiLCJjIiwiZ2V0IiwicmVkdWNlIiwicHJldiIsImN1cnIiLCJwdXNoIiwicGxhY2Vob2xkZXIiLCJyIiwic2xpY2UiLCJFcnJvciIsInVuc2hpZnQiLCJ1cmxQYXRocyIsInNsdWdOYW1lcyIsImlzQ2F0Y2hBbGwiLCJsZW5ndGgiLCJuZXh0U2VnbWVudCIsInN0YXJ0c1dpdGgiLCJlbmRzV2l0aCIsInNlZ21lbnROYW1lIiwiaXNPcHRpb25hbCIsInN1YnN0cmluZyIsImhhbmRsZVNsdWciLCJwcmV2aW91c1NsdWciLCJuZXh0U2x1ZyIsImZvckVhY2giLCJzbHVnIiwicmVwbGFjZSIsImhhcyIsInNldCIsIk1hcCIsIm5vcm1hbGl6ZWRQYWdlcyIsInJvb3QiLCJwYWdlUGF0aCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/router/utils/sorted-routes.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/side-effect.js":
|
||
/*!**********************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/side-effect.js ***!
|
||
\**********************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\nvar _s = $RefreshSig$();\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", ({\n value: true\n}));\nObject.defineProperty(exports, \"default\", ({\n enumerable: true,\n get: function() {\n return SideEffect;\n }\n}));\nconst _react = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\nconst isServer = typeof window === \"undefined\";\nconst useClientOnlyLayoutEffect = isServer ? ()=>{} : _react.useLayoutEffect;\nconst useClientOnlyEffect = isServer ? ()=>{} : _react.useEffect;\nfunction SideEffect(props) {\n _s();\n const { headManager, reduceComponentsToState } = props;\n function emitChange() {\n if (headManager && headManager.mountedInstances) {\n const headElements = _react.Children.toArray(Array.from(headManager.mountedInstances).filter(Boolean));\n headManager.updateHead(reduceComponentsToState(headElements, props));\n }\n }\n if (isServer) {\n var _headManager_mountedInstances;\n headManager == null ? void 0 : (_headManager_mountedInstances = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances.add(props.children);\n emitChange();\n }\n useClientOnlyLayoutEffect(()=>{\n var _headManager_mountedInstances;\n headManager == null ? void 0 : (_headManager_mountedInstances = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances.add(props.children);\n return ()=>{\n var _headManager_mountedInstances;\n headManager == null ? void 0 : (_headManager_mountedInstances = headManager.mountedInstances) == null ? void 0 : _headManager_mountedInstances.delete(props.children);\n };\n });\n // We need to call `updateHead` method whenever the `SideEffect` is trigger in all\n // life-cycles: mount, update, unmount. However, if there are multiple `SideEffect`s\n // being rendered, we only trigger the method from the last one.\n // This is ensured by keeping the last unflushed `updateHead` in the `_pendingUpdate`\n // singleton in the layout effect pass, and actually trigger it in the effect pass.\n useClientOnlyLayoutEffect(()=>{\n if (headManager) {\n headManager._pendingUpdate = emitChange;\n }\n return ()=>{\n if (headManager) {\n headManager._pendingUpdate = emitChange;\n }\n };\n });\n useClientOnlyEffect(()=>{\n if (headManager && headManager._pendingUpdate) {\n headManager._pendingUpdate();\n headManager._pendingUpdate = null;\n }\n return ()=>{\n if (headManager && headManager._pendingUpdate) {\n headManager._pendingUpdate();\n headManager._pendingUpdate = null;\n }\n };\n });\n return null;\n} //# sourceMappingURL=side-effect.js.map\n_s(SideEffect, \"gHVkikNHNxjVdD11eJBzaqkCiPY=\", false, function() {\n return [\n useClientOnlyLayoutEffect,\n useClientOnlyLayoutEffect,\n useClientOnlyEffect\n ];\n});\n_c = SideEffect;\nvar _c;\n$RefreshReg$(_c, \"SideEffect\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi9zaWRlLWVmZmVjdC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7MkNBb0JBOzs7ZUFBd0JBOzs7bUNBbkI2QjtBQWVyRCxNQUFNQyxXQUFXLE9BQU9DLFdBQVc7QUFDbkMsTUFBTUMsNEJBQTRCRixXQUFXLEtBQU8sSUFBSUcsT0FBQUEsZUFBZTtBQUN2RSxNQUFNQyxzQkFBc0JKLFdBQVcsS0FBTyxJQUFJSyxPQUFBQSxTQUFTO0FBRTVDLFNBQVNOLFdBQVdPLEtBQXNCOztJQUN2RCxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsdUJBQXVCLEVBQUUsR0FBR0Y7SUFFakQsU0FBU0c7UUFDUCxJQUFJRixlQUFlQSxZQUFZRyxnQkFBZ0IsRUFBRTtZQUMvQyxNQUFNQyxlQUFlQyxPQUFBQSxRQUFRLENBQUNDLE9BQU8sQ0FDbkNDLE1BQU1DLElBQUksQ0FBQ1IsWUFBWUcsZ0JBQWdCLEVBQTBCTSxNQUFNLENBQ3JFQztZQUdKVixZQUFZVyxVQUFVLENBQUNWLHdCQUF3QkcsY0FBY0w7UUFDL0Q7SUFDRjtJQUVBLElBQUlOLFVBQVU7WUFDWk87UUFBQUEsZUFBQUEsT0FBQUEsS0FBQUEsSUFBQUEsQ0FBQUEsZ0NBQUFBLFlBQWFHLGdCQUFnQixxQkFBN0JILDhCQUErQlksR0FBRyxDQUFDYixNQUFNYyxRQUFRO1FBQ2pEWDtJQUNGO0lBRUFQLDBCQUEwQjtZQUN4Qks7UUFBQUEsZUFBQUEsT0FBQUEsS0FBQUEsSUFBQUEsQ0FBQUEsZ0NBQUFBLFlBQWFHLGdCQUFnQixxQkFBN0JILDhCQUErQlksR0FBRyxDQUFDYixNQUFNYyxRQUFRO1FBQ2pELE9BQU87Z0JBQ0xiO1lBQUFBLGVBQUFBLE9BQUFBLEtBQUFBLElBQUFBLENBQUFBLGdDQUFBQSxZQUFhRyxnQkFBZ0IscUJBQTdCSCw4QkFBK0JjLE1BQU0sQ0FBQ2YsTUFBTWMsUUFBUTtRQUN0RDtJQUNGO0lBRUEsa0ZBQWtGO0lBQ2xGLG9GQUFvRjtJQUNwRixnRUFBZ0U7SUFDaEUscUZBQXFGO0lBQ3JGLG1GQUFtRjtJQUNuRmxCLDBCQUEwQjtRQUN4QixJQUFJSyxhQUFhO1lBQ2ZBLFlBQVllLGNBQWMsR0FBR2I7UUFDL0I7UUFDQSxPQUFPO1lBQ0wsSUFBSUYsYUFBYTtnQkFDZkEsWUFBWWUsY0FBYyxHQUFHYjtZQUMvQjtRQUNGO0lBQ0Y7SUFFQUwsb0JBQW9CO1FBQ2xCLElBQUlHLGVBQWVBLFlBQVllLGNBQWMsRUFBRTtZQUM3Q2YsWUFBWWUsY0FBYztZQUMxQmYsWUFBWWUsY0FBYyxHQUFHO1FBQy9CO1FBQ0EsT0FBTztZQUNMLElBQUlmLGVBQWVBLFlBQVllLGNBQWMsRUFBRTtnQkFDN0NmLFlBQVllLGNBQWM7Z0JBQzFCZixZQUFZZSxjQUFjLEdBQUc7WUFDL0I7UUFDRjtJQUNGO0lBRUEsT0FBTztBQUNUO0dBeER3QnZCOztRQW1CdEJHO1FBWUFBO1FBV0FFOzs7S0ExQ3NCTCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi4vLi4vLi4vc3JjL3NoYXJlZC9saWIvc2lkZS1lZmZlY3QudHN4P2U4ZGQiXSwibmFtZXMiOlsiU2lkZUVmZmVjdCIsImlzU2VydmVyIiwid2luZG93IiwidXNlQ2xpZW50T25seUxheW91dEVmZmVjdCIsInVzZUxheW91dEVmZmVjdCIsInVzZUNsaWVudE9ubHlFZmZlY3QiLCJ1c2VFZmZlY3QiLCJwcm9wcyIsImhlYWRNYW5hZ2VyIiwicmVkdWNlQ29tcG9uZW50c1RvU3RhdGUiLCJlbWl0Q2hhbmdlIiwibW91bnRlZEluc3RhbmNlcyIsImhlYWRFbGVtZW50cyIsIkNoaWxkcmVuIiwidG9BcnJheSIsIkFycmF5IiwiZnJvbSIsImZpbHRlciIsIkJvb2xlYW4iLCJ1cGRhdGVIZWFkIiwiYWRkIiwiY2hpbGRyZW4iLCJkZWxldGUiLCJfcGVuZGluZ1VwZGF0ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/side-effect.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js":
|
||
/*!****************************************************!*\
|
||
!*** ./node_modules/next/dist/shared/lib/utils.js ***!
|
||
\****************************************************/
|
||
/***/ (function(module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\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 DecodeError: function() {\n return DecodeError;\n },\n MiddlewareNotFoundError: function() {\n return MiddlewareNotFoundError;\n },\n MissingStaticPage: function() {\n return MissingStaticPage;\n },\n NormalizeError: function() {\n return NormalizeError;\n },\n PageNotFoundError: function() {\n return PageNotFoundError;\n },\n SP: function() {\n return SP;\n },\n ST: function() {\n return ST;\n },\n WEB_VITALS: function() {\n return WEB_VITALS;\n },\n execOnce: function() {\n return execOnce;\n },\n getDisplayName: function() {\n return getDisplayName;\n },\n getLocationOrigin: function() {\n return getLocationOrigin;\n },\n getURL: function() {\n return getURL;\n },\n isAbsoluteUrl: function() {\n return isAbsoluteUrl;\n },\n isResSent: function() {\n return isResSent;\n },\n loadGetInitialProps: function() {\n return loadGetInitialProps;\n },\n normalizeRepeatedSlashes: function() {\n return normalizeRepeatedSlashes;\n },\n stringifyError: function() {\n return stringifyError;\n }\n});\nconst WEB_VITALS = [\n \"CLS\",\n \"FCP\",\n \"FID\",\n \"INP\",\n \"LCP\",\n \"TTFB\"\n];\nfunction execOnce(fn) {\n let used = false;\n let result;\n return function() {\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n if (!used) {\n used = true;\n result = fn(...args);\n }\n return result;\n };\n}\n// Scheme: https://tools.ietf.org/html/rfc3986#section-3.1\n// Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\nconst ABSOLUTE_URL_REGEX = /^[a-zA-Z][a-zA-Z\\d+\\-.]*?:/;\nconst isAbsoluteUrl = (url)=>ABSOLUTE_URL_REGEX.test(url);\nfunction getLocationOrigin() {\n const { protocol, hostname, port } = window.location;\n return protocol + \"//\" + hostname + (port ? \":\" + port : \"\");\n}\nfunction getURL() {\n const { href } = window.location;\n const origin = getLocationOrigin();\n return href.substring(origin.length);\n}\nfunction getDisplayName(Component) {\n return typeof Component === \"string\" ? Component : Component.displayName || Component.name || \"Unknown\";\n}\nfunction isResSent(res) {\n return res.finished || res.headersSent;\n}\nfunction normalizeRepeatedSlashes(url) {\n const urlParts = url.split(\"?\");\n const urlNoQuery = urlParts[0];\n return urlNoQuery // first we replace any non-encoded backslashes with forward\n // then normalize repeated forward slashes\n .replace(/\\\\/g, \"/\").replace(/\\/\\/+/g, \"/\") + (urlParts[1] ? \"?\" + urlParts.slice(1).join(\"?\") : \"\");\n}\nasync function loadGetInitialProps(App, ctx) {\n if (true) {\n var _App_prototype;\n if ((_App_prototype = App.prototype) == null ? void 0 : _App_prototype.getInitialProps) {\n const message = '\"' + getDisplayName(App) + '.getInitialProps()\" is defined as an instance method - visit https://nextjs.org/docs/messages/get-initial-props-as-an-instance-method for more information.';\n throw new Error(message);\n }\n }\n // when called from _app `ctx` is nested in `ctx`\n const res = ctx.res || ctx.ctx && ctx.ctx.res;\n if (!App.getInitialProps) {\n if (ctx.ctx && ctx.Component) {\n // @ts-ignore pageProps default\n return {\n pageProps: await loadGetInitialProps(ctx.Component, ctx.ctx)\n };\n }\n return {};\n }\n const props = await App.getInitialProps(ctx);\n if (res && isResSent(res)) {\n return props;\n }\n if (!props) {\n const message = '\"' + getDisplayName(App) + '.getInitialProps()\" should resolve to an object. But found \"' + props + '\" instead.';\n throw new Error(message);\n }\n if (true) {\n if (Object.keys(props).length === 0 && !ctx.ctx) {\n console.warn(\"\" + getDisplayName(App) + \" returned an empty object from `getInitialProps`. This de-optimizes and prevents automatic static optimization. https://nextjs.org/docs/messages/empty-object-getInitialProps\");\n }\n }\n return props;\n}\nconst SP = typeof performance !== \"undefined\";\nconst ST = SP && [\n \"mark\",\n \"measure\",\n \"getEntriesByName\"\n].every((method)=>typeof performance[method] === \"function\");\nclass DecodeError extends Error {\n}\nclass NormalizeError extends Error {\n}\nclass PageNotFoundError extends Error {\n constructor(page){\n super();\n this.code = \"ENOENT\";\n this.name = \"PageNotFoundError\";\n this.message = \"Cannot find module for page: \" + page;\n }\n}\nclass MissingStaticPage extends Error {\n constructor(page, message){\n super();\n this.message = \"Failed to load static file for page: \" + page + \" \" + message;\n }\n}\nclass MiddlewareNotFoundError extends Error {\n constructor(){\n super();\n this.code = \"ENOENT\";\n this.message = \"Cannot find the middleware module\";\n }\n}\nfunction stringifyError(error) {\n return JSON.stringify({\n message: error.message,\n stack: error.stack\n });\n} //# sourceMappingURL=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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3Qvc2hhcmVkL2xpYi91dGlscy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFvYWFBLGFBQVc7ZUFBWEE7O0lBb0JBQyx5QkFBdUI7ZUFBdkJBOztJQVBBQyxtQkFBaUI7ZUFBakJBOztJQVpBQyxnQkFBYztlQUFkQTs7SUFDQUMsbUJBQWlCO2VBQWpCQTs7SUFUQUMsSUFBRTtlQUFGQTs7SUFDQUMsSUFBRTtlQUFGQTs7SUFsWEFDLFlBQVU7ZUFBVkE7O0lBc1FHQyxVQUFRO2VBQVJBOztJQStCQUMsZ0JBQWM7ZUFBZEE7O0lBWEFDLG1CQUFpQjtlQUFqQkE7O0lBS0FDLFFBQU07ZUFBTkE7O0lBUEhDLGVBQWE7ZUFBYkE7O0lBbUJHQyxXQUFTO2VBQVRBOztJQWtCTUMscUJBQW1CO2VBQW5CQTs7SUFkTkMsMEJBQXdCO2VBQXhCQTs7SUErR0FDLGdCQUFjO2VBQWRBOzs7QUE5WlQsTUFBTVQsYUFBYTtJQUFDO0lBQU87SUFBTztJQUFPO0lBQU87SUFBTztDQUFPO0FBc1E5RCxTQUFTQyxTQUNkUyxFQUFLO0lBRUwsSUFBSUMsT0FBTztJQUNYLElBQUlDO0lBRUosT0FBUTt5Q0FBSUMsT0FBQUEsSUFBQUEsTUFBQUEsT0FBQUEsT0FBQUEsR0FBQUEsT0FBQUEsTUFBQUEsT0FBQUE7WUFBQUEsSUFBQUEsQ0FBQUEsS0FBQUEsR0FBQUEsU0FBQUEsQ0FBQUEsS0FBQUE7O1FBQ1YsSUFBSSxDQUFDRixNQUFNO1lBQ1RBLE9BQU87WUFDUEMsU0FBU0YsTUFBTUc7UUFDakI7UUFDQSxPQUFPRDtJQUNUO0FBQ0Y7QUFFQSwwREFBMEQ7QUFDMUQsZ0VBQWdFO0FBQ2hFLE1BQU1FLHFCQUFxQjtBQUNwQixNQUFNVCxnQkFBZ0IsQ0FBQ1UsTUFBZ0JELG1CQUFtQkUsSUFBSSxDQUFDRDtBQUUvRCxTQUFTWjtJQUNkLE1BQU0sRUFBRWMsUUFBUSxFQUFFQyxRQUFRLEVBQUVDLElBQUksRUFB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O0lBQ3JDVSxZQUFZQyxJQUFZLEVBQUVaLE9BQWUsQ0FBRTtRQUN6QyxLQUFLO1FBQ0wsSUFBSSxDQUFDQSxPQUFPLEdBQUcsMENBQXdDWSxPQUFLLE1BQUdaO0lBQ2pFO0FBQ0Y7QUFFTyxNQUFNakQsZ0NBQWdDa0Q7SUFFM0NVLGFBQWM7UUFDWixLQUFLO1FBQ0wsSUFBSSxDQUFDRSxJQUFJLEdBQUc7UUFDWixJQUFJLENBQUNiLE9BQU8sR0FBSTtJQUNsQjtBQUNGO0FBV08sU0FBU2xDLGVBQWVnRCxLQUFZO0lBQ3pDLE9BQU9DLEtBQUtDLFNBQVMsQ0FBQztRQUFFaEIsU0FBU2MsTUFBTWQsT0FBTztRQUFFaUIsT0FBT0gsTUFBTUcsS0FBSztJQUFDO0FBQ3JFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uLi8uLi8uLi9zcmMvc2hhcmVkL2xpYi91dGlscy50cz8xYmQ1Il0sIm5hbWVzIjpbIkRlY29kZUVycm9yIiwiTWlkZGxld2FyZU5vdEZvdW5kRXJyb3IiLCJNaXNzaW5nU3RhdGljUGFnZSIsIk5vcm1hbGl6ZUVycm9yIiwiUGFnZU5vdEZvdW5kRXJyb3IiLCJTUCIsIlNUIiwiV0VCX1ZJVEFMUyIsImV4ZWNPbmNlIiwiZ2V0RGlzcGxheU5hbWUiLCJnZXRMb2NhdGlvbk9yaWdpbiIsImdldFVSTCIsImlzQWJzb2x1dGVVcmwiLCJpc1Jlc1NlbnQiLCJsb2FkR2V0SW5pdGlhbFByb3BzIiwibm9ybWFsaXplUmVwZWF0ZWRTbGFzaGVzIiwic3RyaW5naWZ5RXJyb3IiLCJmbiIsInVzZWQiLCJyZXN1bHQiLCJhcmdzIiwiQUJTT0xVVEVfVVJMX1JFR0VYIiwidXJsIiwidGVzdCIsInByb3RvY29sIiwiaG9zdG5hbWUiLCJwb3J0Iiwid2luZG93IiwibG9jYXRpb24iLCJocmVmIiwib3JpZ2luIiwic3Vic3RyaW5nIiwibGVuZ3RoIiwiQ29tcG9uZW50IiwiZGlzcGxheU5hbWUiLCJuYW1lIiwicmVzIiwiZmluaXNoZWQiLCJoZWFkZXJzU2VudCIsInVybFBhcnRzIiwic3BsaXQiLCJ1cmxOb1F1ZXJ5IiwicmVwbGFjZSIsInNsaWNlIiwiam9pbiIsIkFwcCIsImN0eCIsInByb2Nlc3MiLCJwcm90b3R5cGUiLCJnZXRJbml0aWFsUHJvcHMiLCJtZXNzYWdlIiwiRXJyb3IiLCJwYWdlUHJvcHMiLCJwcm9wcyIsIk9iamVjdCIsImtleXMiLCJjb25zb2xlIiwid2FybiIsInBlcmZvcm1hbmNlIiwiZXZlcnkiLCJtZXRob2QiLCJjb25zdHJ1Y3RvciIsInBhZ2UiLCJjb2RlIiwiZXJyb3IiLCJKU09OIiwic3RyaW5naWZ5Iiwic3RhY2siXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/shared/lib/utils.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/components/Button.tsx":
|
||
/*!***********************************!*\
|
||
!*** ./src/components/Button.tsx ***!
|
||
\***********************************/
|
||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Button: function() { return /* binding */ Button; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/link */ \"(app-pages-browser)/./node_modules/next/dist/api/link.js\");\n/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! clsx */ \"(app-pages-browser)/./node_modules/clsx/dist/clsx.mjs\");\n\n\n\nconst baseStyles = {\n solid: \"inline-flex justify-center rounded-lg py-2 px-3 text-sm font-semibold transition-colors\",\n outline: \"inline-flex justify-center rounded-lg border py-[calc(--spacing(2)-1px)] px-[calc(--spacing(3)-1px)] text-sm transition-colors\"\n};\nconst variantStyles = {\n solid: {\n cyan: \"relative overflow-hidden bg-cyan-500 text-white before:absolute before:inset-0 active:before:bg-transparent hover:before:bg-white/10 active:bg-cyan-600 active:text-white/80 before:transition-colors\",\n white: \"bg-white text-cyan-900 hover:bg-white/90 active:bg-white/90 active:text-cyan-900/70\",\n gray: \"bg-gray-800 text-white hover:bg-gray-900 active:bg-gray-800 active:text-white/80\"\n },\n outline: {\n gray: \"border-gray-300 text-gray-700 hover:border-gray-400 active:bg-gray-100 active:text-gray-700/80\"\n }\n};\nfunction Button(param) {\n let { className, ...props } = param;\n props.variant ??= \"solid\";\n props.color ??= \"gray\";\n className = (0,clsx__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(baseStyles[props.variant], props.variant === \"outline\" ? variantStyles.outline[props.color] : props.variant === \"solid\" ? variantStyles.solid[props.color] : undefined, className);\n return typeof props.href === \"undefined\" ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"button\", {\n className: className,\n ...props\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Button.tsx\",\n lineNumber: 55,\n columnNumber: 5\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_link__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n className: className,\n ...props\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Button.tsx\",\n lineNumber: 57,\n columnNumber: 5\n }, this);\n}\n_c = Button;\nvar _c;\n$RefreshReg$(_c, \"Button\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL0J1dHRvbi50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBNEI7QUFDTDtBQUV2QixNQUFNRSxhQUFhO0lBQ2pCQyxPQUNFO0lBQ0ZDLFNBQ0U7QUFDSjtBQUVBLE1BQU1DLGdCQUFnQjtJQUNwQkYsT0FBTztRQUNMRyxNQUFNO1FBQ05DLE9BQ0U7UUFDRkMsTUFBTTtJQUNSO0lBQ0FKLFNBQVM7UUFDUEksTUFBTTtJQUNSO0FBQ0Y7QUFtQk8sU0FBU0MsT0FBTyxLQUFvQztRQUFwQyxFQUFFQyxTQUFTLEVBQUUsR0FBR0MsT0FBb0IsR0FBcEM7SUFDckJBLE1BQU1DLE9BQU8sS0FBSztJQUNsQkQsTUFBTUUsS0FBSyxLQUFLO0lBRWhCSCxZQUFZVCxnREFBSUEsQ0FDZEMsVUFBVSxDQUFDUyxNQUFNQyxPQUFPLENBQUMsRUFDekJELE1BQU1DLE9BQU8sS0FBSyxZQUNkUCxjQUFjRCxPQUFPLENBQUNPLE1BQU1FLEtBQUssQ0FBQyxHQUNsQ0YsTUFBTUMsT0FBTyxLQUFLLFVBQ2hCUCxjQUFjRixLQUFLLENBQUNRLE1BQU1FLEtBQUssQ0FBQyxHQUNoQ0MsV0FDTko7SUFHRixPQUFPLE9BQU9DLE1BQU1JLElBQUksS0FBSyw0QkFDM0IsOERBQUNDO1FBQU9OLFdBQVdBO1FBQVksR0FBR0MsS0FBSzs7Ozs7NkJBRXZDLDhEQUFDWCxpREFBSUE7UUFBQ1UsV0FBV0E7UUFBWSxHQUFHQyxLQUFLOzs7Ozs7QUFFekM7S0FuQmdCRiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9zcmMvY29tcG9uZW50cy9CdXR0b24udHN4P2U0NjEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExpbmsgZnJvbSAnbmV4dC9saW5rJ1xuaW1wb3J0IGNsc3ggZnJvbSAnY2xzeCdcblxuY29uc3QgYmFzZVN0eWxlcyA9IHtcbiAgc29saWQ6XG4gICAgJ2lubGluZS1mbGV4IGp1c3RpZnktY2VudGVyIHJvdW5kZWQtbGcgcHktMiBweC0zIHRleHQtc20gZm9udC1zZW1pYm9sZCB0cmFuc2l0aW9uLWNvbG9ycycsXG4gIG91dGxpbmU6XG4gICAgJ2lubGluZS1mbGV4IGp1c3RpZnktY2VudGVyIHJvdW5kZWQtbGcgYm9yZGVyIHB5LVtjYWxjKC0tc3BhY2luZygyKS0xcHgpXSBweC1bY2FsYygtLXNwYWNpbmcoMyktMXB4KV0gdGV4dC1zbSB0cmFuc2l0aW9uLWNvbG9ycycsXG59XG5cbmNvbnN0IHZhcmlhbnRTdHlsZXMgPSB7XG4gIHNvbGlkOiB7XG4gICAgY3lhbjogJ3JlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiBiZy1jeWFuLTUwMCB0ZXh0LXdoaXRlIGJlZm9yZTphYnNvbHV0ZSBiZWZvcmU6aW5zZXQtMCBhY3RpdmU6YmVmb3JlOmJnLXRyYW5zcGFyZW50IGhvdmVyOmJlZm9yZTpiZy13aGl0ZS8xMCBhY3RpdmU6YmctY3lhbi02MDAgYWN0aXZlOnRleHQtd2hpdGUvODAgYmVmb3JlOnRyYW5zaXRpb24tY29sb3JzJyxcbiAgICB3aGl0ZTpcbiAgICAgICdiZy13aGl0ZSB0ZXh0LWN5YW4tOTAwIGhvdmVyOmJnLXdoaXRlLzkwIGFjdGl2ZTpiZy13aGl0ZS85MCBhY3RpdmU6dGV4dC1jeWFuLTkwMC83MCcsXG4gICAgZ3JheTogJ2JnLWdyYXktODAwIHRleHQtd2hpdGUgaG92ZXI6YmctZ3JheS05MDAgYWN0aXZlOmJnLWdyYXktODAwIGFjdGl2ZTp0ZXh0LXdoaXRlLzgwJyxcbiAgfSxcbiAgb3V0bGluZToge1xuICAgIGdyYXk6ICdib3JkZXItZ3JheS0zMDAgdGV4dC1ncmF5LTcwMCBob3Zlcjpib3JkZXItZ3JheS00MDAgYWN0aXZlOmJnLWdyYXktMTAwIGFjdGl2ZTp0ZXh0LWdyYXktNzAwLzgwJyxcbiAgfSxcbn1cblxudHlwZSBCdXR0b25Qcm9wcyA9IChcbiAgfCB7XG4gICAgICB2YXJpYW50PzogJ3NvbGlkJ1xuICAgICAgY29sb3I/OiBrZXlvZiB0eXBlb2YgdmFyaWFudFN0eWxlcy5zb2xpZFxuICAgIH1cbiAgfCB7XG4gICAgICB2YXJpYW50OiAnb3V0bGluZSdcbiAgICAgIGNvbG9yPzoga2V5b2YgdHlwZW9mIHZhcmlhbnRTdHlsZXMub3V0bGluZVxuICAgIH1cbikgJlxuICAoXG4gICAgfCBPbWl0PFJlYWN0LkNvbXBvbmVudFByb3BzV2l0aG91dFJlZjx0eXBlb2YgTGluaz4sICdjb2xvcic+XG4gICAgfCAoT21pdDxSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8J2J1dHRvbic+LCAnY29sb3InPiAmIHtcbiAgICAgICAgaHJlZj86IHVuZGVmaW5lZFxuICAgICAgfSlcbiAgKVxuXG5leHBvcnQgZnVuY3Rpb24gQnV0dG9uKHsgY2xhc3NOYW1lLCAuLi5wcm9wcyB9OiBCdXR0b25Qcm9wcykge1xuICBwcm9wcy52YXJpYW50ID8/PSAnc29saWQnXG4gIHByb3BzLmNvbG9yID8/PSAnZ3JheSdcblxuICBjbGFzc05hbWUgPSBjbHN4KFxuICAgIGJhc2VTdHlsZXNbcHJvcHMudmFyaWFudF0sXG4gICAgcHJvcHMudmFyaWFudCA9PT0gJ291dGxpbmUnXG4gICAgICA/IHZhcmlhbnRTdHlsZXMub3V0bGluZVtwcm9wcy5jb2xvcl1cbiAgICAgIDogcHJvcHMudmFyaWFudCA9PT0gJ3NvbGlkJ1xuICAgICAgICA/IHZhcmlhbnRTdHlsZXMuc29saWRbcHJvcHMuY29sb3JdXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgIGNsYXNzTmFtZSxcbiAgKVxuXG4gIHJldHVybiB0eXBlb2YgcHJvcHMuaHJlZiA9PT0gJ3VuZGVmaW5lZCcgPyAoXG4gICAgPGJ1dHRvbiBjbGFzc05hbWU9e2NsYXNzTmFtZX0gey4uLnByb3BzfSAvPlxuICApIDogKFxuICAgIDxMaW5rIGNsYXNzTmFtZT17Y2xhc3NOYW1lfSB7Li4ucHJvcHN9IC8+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJMaW5rIiwiY2xzeCIsImJhc2VTdHlsZXMiLCJzb2xpZCIsIm91dGxpbmUiLCJ2YXJpYW50U3R5bGVzIiwiY3lhbiIsIndoaXRlIiwiZ3JheSIsIkJ1dHRvbiIsImNsYXNzTmFtZSIsInByb3BzIiwidmFyaWFudCIsImNvbG9yIiwidW5kZWZpbmVkIiwiaHJlZiIsImJ1dHRvbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/Button.tsx\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/components/Container.tsx":
|
||
/*!**************************************!*\
|
||
!*** ./src/components/Container.tsx ***!
|
||
\**************************************/
|
||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Container: function() { return /* binding */ Container; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var clsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! clsx */ \"(app-pages-browser)/./node_modules/clsx/dist/clsx.mjs\");\n\n\nfunction Container(param) {\n let { className, ...props } = param;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: (0,clsx__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(\"mx-auto max-w-7xl px-4 sm:px-6 lg:px-8\", className),\n ...props\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Container.tsx\",\n lineNumber: 8,\n columnNumber: 5\n }, this);\n}\n_c = Container;\nvar _c;\n$RefreshReg$(_c, \"Container\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL0NvbnRhaW5lci50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF1QjtBQUVoQixTQUFTQyxVQUFVLEtBR2M7UUFIZCxFQUN4QkMsU0FBUyxFQUNULEdBQUdDLE9BQ21DLEdBSGQ7SUFJeEIscUJBQ0UsOERBQUNDO1FBQ0NGLFdBQVdGLGdEQUFJQSxDQUFDLDBDQUEwQ0U7UUFDekQsR0FBR0MsS0FBSzs7Ozs7O0FBR2Y7S0FWZ0JGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL3NyYy9jb21wb25lbnRzL0NvbnRhaW5lci50c3g/YjMzYSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2xzeCBmcm9tICdjbHN4J1xuXG5leHBvcnQgZnVuY3Rpb24gQ29udGFpbmVyKHtcbiAgY2xhc3NOYW1lLFxuICAuLi5wcm9wc1xufTogUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPCdkaXYnPikge1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17Y2xzeCgnbXgtYXV0byBtYXgtdy03eGwgcHgtNCBzbTpweC02IGxnOnB4LTgnLCBjbGFzc05hbWUpfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJjbHN4IiwiQ29udGFpbmVyIiwiY2xhc3NOYW1lIiwicHJvcHMiLCJkaXYiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/Container.tsx\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/components/Header.tsx":
|
||
/*!***********************************!*\
|
||
!*** ./src/components/Header.tsx ***!
|
||
\***********************************/
|
||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Header: function() { return /* binding */ Header; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! next/link */ \"(app-pages-browser)/./node_modules/next/dist/api/link.js\");\n/* harmony import */ var _barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! __barrel_optimize__?names=Popover,PopoverBackdrop,PopoverButton,PopoverPanel!=!@headlessui/react */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/components/popover/popover.js\");\n/* harmony import */ var framer_motion__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! framer-motion */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs\");\n/* harmony import */ var framer_motion__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! framer-motion */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion.mjs\");\n/* harmony import */ var _components_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/Button */ \"(app-pages-browser)/./src/components/Button.tsx\");\n/* harmony import */ var _components_Container__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/Container */ \"(app-pages-browser)/./src/components/Container.tsx\");\n/* harmony import */ var _components_Logo__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/Logo */ \"(app-pages-browser)/./src/components/Logo.tsx\");\n/* harmony import */ var _components_NavLinks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/components/NavLinks */ \"(app-pages-browser)/./src/components/NavLinks.tsx\");\n/* __next_internal_client_entry_do_not_use__ Header auto */ \n\n\n\n\n\n\n\nfunction MenuIcon(props) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n \"aria-hidden\": \"true\",\n ...props,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M5 6h14M5 18h14M5 12h14\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 20,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 19,\n columnNumber: 5\n }, this);\n}\n_c = MenuIcon;\nfunction ChevronUpIcon(props) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n \"aria-hidden\": \"true\",\n ...props,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M17 14l-5-5-5 5\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 33,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 32,\n columnNumber: 5\n }, this);\n}\n_c1 = ChevronUpIcon;\nfunction MobileNavLink(props) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__.PopoverButton, {\n as: next_link__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n className: \"block text-base/7 tracking-tight text-gray-700\",\n ...props\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 50,\n columnNumber: 5\n }, this);\n}\n_c2 = MobileNavLink;\nfunction Header() {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"header\", {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"nav\", {\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Container__WEBPACK_IMPORTED_MODULE_3__.Container, {\n className: \"relative z-50 flex justify-between py-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"relative z-10 flex items-center gap-16\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_link__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n href: \"/\",\n \"aria-label\": \"Home\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Logo__WEBPACK_IMPORTED_MODULE_4__.Logo, {\n className: \"h-10 w-auto\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 65,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 64,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"hidden lg:flex lg:gap-10\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_NavLinks__WEBPACK_IMPORTED_MODULE_5__.NavLinks, {}, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 68,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 67,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 63,\n columnNumber: 11\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-6\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__.Popover, {\n className: \"lg:hidden\",\n children: (param)=>{\n let { open } = param;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__.PopoverButton, {\n className: \"relative z-10 -m-2 inline-flex items-center rounded-lg stroke-gray-900 p-2 hover:bg-gray-200/50 hover:stroke-gray-600 focus:not-data-focus:outline-hidden active:stroke-gray-900\",\n \"aria-label\": \"Toggle site navigation\",\n children: (param)=>{\n let { open } = param;\n return open ? /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(ChevronUpIcon, {\n className: \"h-6 w-6\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 81,\n columnNumber: 25\n }, this) : /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MenuIcon, {\n className: \"h-6 w-6\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 83,\n columnNumber: 25\n }, this);\n }\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 75,\n columnNumber: 19\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(framer_motion__WEBPACK_IMPORTED_MODULE_7__.AnimatePresence, {\n initial: false,\n children: open && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__.PopoverBackdrop, {\n static: true,\n as: framer_motion__WEBPACK_IMPORTED_MODULE_8__.motion.div,\n initial: {\n opacity: 0\n },\n animate: {\n opacity: 1\n },\n exit: {\n opacity: 0\n },\n className: \"fixed inset-0 z-0 bg-gray-300/60 backdrop-blur-sm\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 90,\n columnNumber: 25\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_barrel_optimize_names_Popover_PopoverBackdrop_PopoverButton_PopoverPanel_headlessui_react__WEBPACK_IMPORTED_MODULE_6__.PopoverPanel, {\n static: true,\n as: framer_motion__WEBPACK_IMPORTED_MODULE_8__.motion.div,\n initial: {\n opacity: 0,\n y: -32\n },\n animate: {\n opacity: 1,\n y: 0\n },\n exit: {\n opacity: 0,\n y: -32,\n transition: {\n duration: 0.2\n }\n },\n className: \"absolute inset-x-0 top-0 z-0 origin-top rounded-b-2xl bg-gray-50 px-6 pt-32 pb-6 shadow-2xl shadow-gray-900/20\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"space-y-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavLink, {\n href: \"/#about\",\n children: \"About\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 111,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavLink, {\n href: \"/#benefits\",\n children: \"Benefits\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 114,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavLink, {\n href: \"/#features\",\n children: \"Features\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 117,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavLink, {\n href: \"/#usecases\",\n children: \"Use Cases\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 120,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(MobileNavLink, {\n href: \"/#faqs\",\n children: \"FAQs\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 123,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 110,\n columnNumber: 27\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"mt-8 flex flex-col gap-4\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n href: \"https://docs.ourworld.tf/mycelium_cloud/docs/\",\n variant: \"outline\",\n children: \"Docs\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 126,\n columnNumber: 29\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n href: \"https://www.mycelium.threefold.io/download/\",\n children: \"Get Mycelium\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 129,\n columnNumber: 29\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 125,\n columnNumber: 27\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 98,\n columnNumber: 25\n }, this)\n ]\n }, void 0, true)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 87,\n columnNumber: 19\n }, this)\n ]\n }, void 0, true);\n }\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 72,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"div\", {\n className: \"flex items-center gap-6 max-lg:hidden\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n href: \"https://docs.ourworld.tf/mycelium_cloud/docs/\",\n variant: \"outline\",\n children: \"Docs\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 139,\n columnNumber: 15\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(_components_Button__WEBPACK_IMPORTED_MODULE_2__.Button, {\n href: \"https://www.mycelium.threefold.io/download/\",\n children: \"Get Mycelium\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 142,\n columnNumber: 15\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 138,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 71,\n columnNumber: 11\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 62,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 61,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Header.tsx\",\n lineNumber: 60,\n columnNumber: 5\n }, this);\n}\n_c3 = Header;\nvar _c, _c1, _c2, _c3;\n$RefreshReg$(_c, \"MenuIcon\");\n$RefreshReg$(_c1, \"ChevronUpIcon\");\n$RefreshReg$(_c2, \"MobileNavLink\");\n$RefreshReg$(_c3, \"Header\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL0hlYWRlci50c3giLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFFNEI7QUFNRjtBQUM2QjtBQUVYO0FBQ007QUFDVjtBQUNRO0FBRWhELFNBQVNXLFNBQVNDLEtBQTRDO0lBQzVELHFCQUNFLDhEQUFDQztRQUFJQyxTQUFRO1FBQVlDLE1BQUs7UUFBT0MsZUFBWTtRQUFRLEdBQUdKLEtBQUs7a0JBQy9ELDRFQUFDSztZQUNDQyxHQUFFO1lBQ0ZDLGFBQWE7WUFDYkMsZUFBYztZQUNkQyxnQkFBZTs7Ozs7Ozs7Ozs7QUFJdkI7S0FYU1Y7QUFhVCxTQUFTVyxjQUFjVixLQUE0QztJQUNqRSxxQkFDRSw4REFBQ0M7UUFBSUMsU0FBUTtRQUFZQyxNQUFLO1FBQU9DLGVBQVk7UUFBUSxHQUFHSixLQUFLO2tCQUMvRCw0RUFBQ0s7WUFDQ0MsR0FBRTtZQUNGQyxhQUFhO1lBQ2JDLGVBQWM7WUFDZEMsZ0JBQWU7Ozs7Ozs7Ozs7O0FBSXZCO01BWFNDO0FBYVQsU0FBU0MsY0FDUFgsS0FHQztJQUVELHFCQUNFLDhEQUFDVixxSUFBYUE7UUFDWnNCLElBQUl4QixpREFBSUE7UUFDUnlCLFdBQVU7UUFDVCxHQUFHYixLQUFLOzs7Ozs7QUFHZjtNQWJTVztBQWVGLFNBQVNHO0lBQ2QscUJBQ0UsOERBQUNDO2tCQUNDLDRFQUFDQztzQkFDQyw0RUFBQ3BCLDREQUFTQTtnQkFBQ2lCLFdBQVU7O2tDQUNuQiw4REFBQ0k7d0JBQUlKLFdBQVU7OzBDQUNiLDhEQUFDekIsaURBQUlBO2dDQUFDOEIsTUFBSztnQ0FBSUMsY0FBVzswQ0FDeEIsNEVBQUN0QixrREFBSUE7b0NBQUNnQixXQUFVOzs7Ozs7Ozs7OzswQ0FFbEIsOERBQUNJO2dDQUFJSixXQUFVOzBDQUNiLDRFQUFDZiwwREFBUUE7Ozs7Ozs7Ozs7Ozs7Ozs7a0NBR2IsOERBQUNtQjt3QkFBSUosV0FBVTs7MENBQ2IsOERBQUN4QiwrSEFBT0E7Z0NBQUN3QixXQUFVOzBDQUNoQjt3Q0FBQyxFQUFFTyxJQUFJLEVBQUU7eURBQ1I7OzBEQUNFLDhEQUFDOUIscUlBQWFBO2dEQUNadUIsV0FBVTtnREFDVk0sY0FBVzswREFFVjt3REFBQyxFQUFFQyxJQUFJLEVBQUU7MkRBQ1JBLHFCQUNFLDhEQUFDVjt3REFBY0csV0FBVTs7Ozs7NkVBRXpCLDhEQUFDZDt3REFBU2MsV0FBVTs7Ozs7Ozs7Ozs7OzBEQUkxQiw4REFBQ3BCLDBEQUFlQTtnREFBQzRCLFNBQVM7MERBQ3ZCRCxzQkFDQzs7c0VBQ0UsOERBQUM3Qix1SUFBZUE7NERBQ2QrQixNQUFNOzREQUNOVixJQUFJbEIsaURBQU1BLENBQUN1QixHQUFHOzREQUNkSSxTQUFTO2dFQUFFRSxTQUFTOzREQUFFOzREQUN0QkMsU0FBUztnRUFBRUQsU0FBUzs0REFBRTs0REFDdEJFLE1BQU07Z0VBQUVGLFNBQVM7NERBQUU7NERBQ25CVixXQUFVOzs7Ozs7c0VBRVosOERBQUNyQixvSUFBWUE7NERBQ1g4QixNQUFNOzREQUNOVixJQUFJbEIsaURBQU1BLENBQUN1QixHQUFHOzREQUNkSSxTQUFTO2dFQUFFRSxTQUFTO2dFQUFHRyxHQUFHLENBQUM7NERBQUc7NERBQzlCRixTQUFTO2dFQUFFRCxTQUFTO2dFQUFHRyxHQUFHOzREQUFFOzREQUM1QkQsTUFBTTtnRUFDSkYsU0FBUztnRUFDVEcsR0FBRyxDQUFDO2dFQUNKQyxZQUFZO29FQUFFQyxVQUFVO2dFQUFJOzREQUM5Qjs0REFDQWYsV0FBVTs7OEVBRVYsOERBQUNJO29FQUFJSixXQUFVOztzRkFDYiw4REFBQ0Y7NEVBQWNPLE1BQUs7c0ZBQVU7Ozs7OztzRkFHOUIsOERBQUNQOzRFQUFjTyxNQUFLO3NGQUFhOzs7Ozs7c0ZBR2pDLDhEQUFDUDs0RUFBY08sTUFBSztzRkFBYTs7Ozs7O3NGQUdqQyw4REFBQ1A7NEVBQWNPLE1BQUs7c0ZBQWE7Ozs7OztzRkFHakMsOERBQUNQOzRFQUFjTyxNQUFLO3NGQUFTOzs7Ozs7Ozs7Ozs7OEVBRS9CLDhEQUFDRDtvRUFBSUosV0FBVTs7c0ZBQ2IsOERBQUNsQixzREFBTUE7NEVBQUN1QixNQUFLOzRFQUFnRFcsU0FBUTtzRkFBVTs7Ozs7O3NGQUcvRSw4REFBQ2xDLHNEQUFNQTs0RUFBQ3VCLE1BQUs7c0ZBQThDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7MENBUzNFLDhEQUFDRDtnQ0FBSUosV0FBVTs7a0RBQ2IsOERBQUNsQixzREFBTUE7d0NBQUN1QixNQUFLO3dDQUFnRFcsU0FBUTtrREFBVTs7Ozs7O2tEQUcvRSw4REFBQ2xDLHNEQUFNQTt3Q0FBQ3VCLE1BQUs7a0RBQThDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT3pFO01BM0ZnQkoiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vc3JjL2NvbXBvbmVudHMvSGVhZGVyLnRzeD9hNjk2Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgTGluayBmcm9tICduZXh0L2xpbmsnXG5pbXBvcnQge1xuICBQb3BvdmVyLFxuICBQb3BvdmVyQnV0dG9uLFxuICBQb3BvdmVyQmFja2Ryb3AsXG4gIFBvcG92ZXJQYW5lbCxcbn0gZnJvbSAnQGhlYWRsZXNzdWkvcmVhY3QnXG5pbXBvcnQgeyBBbmltYXRlUHJlc2VuY2UsIG1vdGlvbiB9IGZyb20gJ2ZyYW1lci1tb3Rpb24nXG5cbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJ0AvY29tcG9uZW50cy9CdXR0b24nXG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tICdAL2NvbXBvbmVudHMvQ29udGFpbmVyJ1xuaW1wb3J0IHsgTG9nbyB9IGZyb20gJ0AvY29tcG9uZW50cy9Mb2dvJ1xuaW1wb3J0IHsgTmF2TGlua3MgfSBmcm9tICdAL2NvbXBvbmVudHMvTmF2TGlua3MnXG5cbmZ1bmN0aW9uIE1lbnVJY29uKHByb3BzOiBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8J3N2Zyc+KSB7XG4gIHJldHVybiAoXG4gICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB7Li4ucHJvcHN9PlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk01IDZoMTRNNSAxOGgxNE01IDEyaDE0XCJcbiAgICAgICAgc3Ryb2tlV2lkdGg9ezJ9XG4gICAgICAgIHN0cm9rZUxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgIHN0cm9rZUxpbmVqb2luPVwicm91bmRcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgKVxufVxuXG5mdW5jdGlvbiBDaGV2cm9uVXBJY29uKHByb3BzOiBSZWFjdC5Db21wb25lbnRQcm9wc1dpdGhvdXRSZWY8J3N2Zyc+KSB7XG4gIHJldHVybiAoXG4gICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiB7Li4ucHJvcHN9PlxuICAgICAgPHBhdGhcbiAgICAgICAgZD1cIk0xNyAxNGwtNS01LTUgNVwiXG4gICAgICAgIHN0cm9rZVdpZHRoPXsyfVxuICAgICAgICBzdHJva2VMaW5lY2FwPVwicm91bmRcIlxuICAgICAgICBzdHJva2VMaW5lam9pbj1cInJvdW5kXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gIClcbn1cblxuZnVuY3Rpb24gTW9iaWxlTmF2TGluayhcbiAgcHJvcHM6IE9taXQ8XG4gICAgUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPHR5cGVvZiBQb3BvdmVyQnV0dG9uPHR5cGVvZiBMaW5rPj4sXG4gICAgJ2FzJyB8ICdjbGFzc05hbWUnXG4gID4sXG4pIHtcbiAgcmV0dXJuIChcbiAgICA8UG9wb3ZlckJ1dHRvblxuICAgICAgYXM9e0xpbmt9XG4gICAgICBjbGFzc05hbWU9XCJibG9jayB0ZXh0LWJhc2UvNyB0cmFja2luZy10aWdodCB0ZXh0LWdyYXktNzAwXCJcbiAgICAgIHsuLi5wcm9wc31cbiAgICAvPlxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBIZWFkZXIoKSB7XG4gIHJldHVybiAoXG4gICAgPGhlYWRlcj5cbiAgICAgIDxuYXY+XG4gICAgICAgIDxDb250YWluZXIgY2xhc3NOYW1lPVwicmVsYXRpdmUgei01MCBmbGV4IGp1c3RpZnktYmV0d2VlbiBweS00XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJyZWxhdGl2ZSB6LTEwIGZsZXggaXRlbXMtY2VudGVyIGdhcC0xNlwiPlxuICAgICAgICAgICAgPExpbmsgaHJlZj1cIi9cIiBhcmlhLWxhYmVsPVwiSG9tZVwiPlxuICAgICAgICAgICAgICA8TG9nbyBjbGFzc05hbWU9XCJoLTEwIHctYXV0b1wiIC8+XG4gICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImhpZGRlbiBsZzpmbGV4IGxnOmdhcC0xMFwiPlxuICAgICAgICAgICAgICA8TmF2TGlua3MgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTZcIj5cbiAgICAgICAgICAgIDxQb3BvdmVyIGNsYXNzTmFtZT1cImxnOmhpZGRlblwiPlxuICAgICAgICAgICAgICB7KHsgb3BlbiB9KSA9PiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxQb3BvdmVyQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInJlbGF0aXZlIHotMTAgLW0tMiBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgcm91bmRlZC1sZyBzdHJva2UtZ3JheS05MDAgcC0yIGhvdmVyOmJnLWdyYXktMjAwLzUwIGhvdmVyOnN0cm9rZS1ncmF5LTYwMCBmb2N1czpub3QtZGF0YS1mb2N1czpvdXRsaW5lLWhpZGRlbiBhY3RpdmU6c3Ryb2tlLWdyYXktOTAwXCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlRvZ2dsZSBzaXRlIG5hdmlnYXRpb25cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7KHsgb3BlbiB9KSA9PlxuICAgICAgICAgICAgICAgICAgICAgIG9wZW4gPyAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8Q2hldnJvblVwSWNvbiBjbGFzc05hbWU9XCJoLTYgdy02XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgPE1lbnVJY29uIGNsYXNzTmFtZT1cImgtNiB3LTZcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9Qb3BvdmVyQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPEFuaW1hdGVQcmVzZW5jZSBpbml0aWFsPXtmYWxzZX0+XG4gICAgICAgICAgICAgICAgICAgIHtvcGVuICYmIChcbiAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgPFBvcG92ZXJCYWNrZHJvcFxuICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXM9e21vdGlvbi5kaXZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWw9e3sgb3BhY2l0eTogMCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlPXt7IG9wYWNpdHk6IDEgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgZXhpdD17eyBvcGFjaXR5OiAwIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZpeGVkIGluc2V0LTAgei0wIGJnLWdyYXktMzAwLzYwIGJhY2tkcm9wLWJsdXItc21cIlxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxQb3BvdmVyUGFuZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGljXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGFzPXttb3Rpb24uZGl2fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsPXt7IG9wYWNpdHk6IDAsIHk6IC0zMiB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRlPXt7IG9wYWNpdHk6IDEsIHk6IDAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgZXhpdD17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeTogLTMyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHsgZHVyYXRpb246IDAuMiB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJhYnNvbHV0ZSBpbnNldC14LTAgdG9wLTAgei0wIG9yaWdpbi10b3Agcm91bmRlZC1iLTJ4bCBiZy1ncmF5LTUwIHB4LTYgcHQtMzIgcGItNiBzaGFkb3ctMnhsIHNoYWRvdy1ncmF5LTkwMC8yMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic3BhY2UteS00XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZU5hdkxpbmsgaHJlZj1cIi8jYWJvdXRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFib3V0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Nb2JpbGVOYXZMaW5rPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNb2JpbGVOYXZMaW5rIGhyZWY9XCIvI2JlbmVmaXRzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZW5lZml0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTW9iaWxlTmF2TGluaz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TW9iaWxlTmF2TGluayBocmVmPVwiLyNmZWF0dXJlc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmVhdHVyZXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L01vYmlsZU5hdkxpbms+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1vYmlsZU5hdkxpbmsgaHJlZj1cIi8jdXNlY2FzZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzZSBDYXNlc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTW9iaWxlTmF2TGluaz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TW9iaWxlTmF2TGluayBocmVmPVwiLyNmYXFzXCI+RkFRczwvTW9iaWxlTmF2TGluaz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXQtOCBmbGV4IGZsZXgtY29sIGdhcC00XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbiBocmVmPVwiaHR0cHM6Ly9kb2NzLm91cndvcmxkLnRmL215Y2VsaXVtX2Nsb3VkL2RvY3MvXCIgdmFyaWFudD1cIm91dGxpbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERvY3NcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIGhyZWY9XCJodHRwczovL3d3dy5teWNlbGl1bS50aHJlZWZvbGQuaW8vZG93bmxvYWQvXCI+R2V0IE15Y2VsaXVtPC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9Qb3BvdmVyUGFuZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICA8L0FuaW1hdGVQcmVzZW5jZT5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvUG9wb3Zlcj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTYgbWF4LWxnOmhpZGRlblwiPlxuICAgICAgICAgICAgICA8QnV0dG9uIGhyZWY9XCJodHRwczovL2RvY3Mub3Vyd29ybGQudGYvbXljZWxpdW1fY2xvdWQvZG9jcy9cIiB2YXJpYW50PVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICAgIERvY3NcbiAgICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICAgIDxCdXR0b24gaHJlZj1cImh0dHBzOi8vd3d3Lm15Y2VsaXVtLnRocmVlZm9sZC5pby9kb3dubG9hZC9cIj5HZXQgTXljZWxpdW08L0J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvbmF2PlxuICAgIDwvaGVhZGVyPlxuICApXG59XG4iXSwibmFtZXMiOlsiTGluayIsIlBvcG92ZXIiLCJQb3BvdmVyQnV0dG9uIiwiUG9wb3ZlckJhY2tkcm9wIiwiUG9wb3ZlclBhbmVsIiwiQW5pbWF0ZVByZXNlbmNlIiwibW90aW9uIiwiQnV0dG9uIiwiQ29udGFpbmVyIiwiTG9nbyIsIk5hdkxpbmtzIiwiTWVudUljb24iLCJwcm9wcyIsInN2ZyIsInZpZXdCb3giLCJmaWxsIiwiYXJpYS1oaWRkZW4iLCJwYXRoIiwiZCIsInN0cm9rZVdpZHRoIiwic3Ryb2tlTGluZWNhcCIsInN0cm9rZUxpbmVqb2luIiwiQ2hldnJvblVwSWNvbiIsIk1vYmlsZU5hdkxpbmsiLCJhcyIsImNsYXNzTmFtZSIsIkhlYWRlciIsImhlYWRlciIsIm5hdiIsImRpdiIsImhyZWYiLCJhcmlhLWxhYmVsIiwib3BlbiIsImluaXRpYWwiLCJzdGF0aWMiLCJvcGFjaXR5IiwiYW5pbWF0ZSIsImV4aXQiLCJ5IiwidHJhbnNpdGlvbiIsImR1cmF0aW9uIiwidmFyaWFudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/Header.tsx\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/components/Logo.tsx":
|
||
/*!*********************************!*\
|
||
!*** ./src/components/Logo.tsx ***!
|
||
\*********************************/
|
||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Logo: function() { return /* binding */ Logo; },\n/* harmony export */ Logomark: function() { return /* binding */ Logomark; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n\nfunction Logomark(props) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n viewBox: \"0 0 40 40\",\n \"aria-hidden\": \"true\",\n ...props,\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M20 40C8.954 40 0 31.046 0 20S8.954 0 20 0s20 8.954 20 20-8.954 20-20 20ZM4 20c0 7.264 5.163 13.321 12.02 14.704C17.642 35.03 19 33.657 19 32V8c0-1.657-1.357-3.031-2.98-2.704C9.162 6.68 4 12.736 4 20Z\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 4,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 3,\n columnNumber: 5\n }, this);\n}\n_c = Logomark;\nfunction Logo(props) {\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"svg\", {\n xmlns: \"http://www.w3.org/2000/svg\",\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: \"160\",\n height: \"40\",\n version: \"1\",\n viewBox: \"0 0 120 30\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"defs\", {\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"clipPath\", {\n id: \"c\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M1.934 3H116v23H1.934Zm0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 25,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 24,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"clipPath\", {\n id: \"f\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M39 .95h75.277V22H39Zm0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 28,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 27,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"clipPath\", {\n id: \"h\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M15 8h10v13.852H15Zm0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 31,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 30,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"clipPath\", {\n id: \"g\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M0 0h76v22H0z\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 34,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 33,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"clipPath\", {\n id: \"d\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n d: \"M0 0h115v23H0z\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 37,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 36,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"filter\", {\n id: \"a\",\n width: \"100%\",\n height: \"100%\",\n x: \"0%\",\n y: \"0%\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"feColorMatrix\", {\n colorInterpolationFilters: \"sRGB\",\n values: \"0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 40,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 39,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"filter\", {\n id: \"b\",\n width: \"100%\",\n height: \"100%\",\n x: \"0%\",\n y: \"0%\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"feColorMatrix\", {\n colorInterpolationFilters: \"sRGB\",\n values: \"0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.2126 0.7152 0.0722 0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 46,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 45,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"mask\", {\n id: \"e\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n filter: \"url(#a)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n filter: \"url(#b)\",\n transform: \"matrix(.04957 0 0 .04997 .935 1.128)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"image\", {\n xlinkHref: \"data:image/png;base64,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\",\n width: \"684\",\n height: \"420\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 54,\n columnNumber: 13\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 53,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 52,\n columnNumber: 9\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 51,\n columnNumber: 7\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 23,\n columnNumber: 5\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#c)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#d)\",\n transform: \"translate(1 3)\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#06595800e9)\",\n mask: \"url(#e)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"image\", {\n xlinkHref: \"data:image/png;base64,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\",\n width: \"684\",\n height: \"420\",\n transform: \"matrix(.04957 0 0 .04997 .935 1.128)\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 66,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 65,\n columnNumber: 9\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#f)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#g)\",\n transform: \"translate(39)\",\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n fill: \"#333\",\n d: \"M1.765 5.062H4.53l3.718 9.063h.157l3.703-9.063h2.78v12.516h-2.17V8.984h-.126L9.14 17.547H7.515L4.062 8.969h-.125v8.61H1.765Zm0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 75,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"g\", {\n clipPath: \"url(#h)\",\n children: /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n fill: \"#333\",\n d: \"M17.894 21.094q-.456-.002-.844-.078a3 3 0 0 1-.609-.157l.516-1.718c.32.093.61.132.86.125q.387 0 .671-.235.294-.222.5-.75l.187-.5-3.406-9.594h2.344l2.172 7.094h.094l2.171-7.094h2.344l-3.75 10.532a4.4 4.4 0 0 1-.703 1.265q-.44.546-1.062.828-.628.282-1.485.282m0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 80,\n columnNumber: 15\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 79,\n columnNumber: 13\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"path\", {\n fill: \"#333\",\n d: \"M29.78 17.766q-1.407 0-2.421-.61a4.15 4.15 0 0 1-1.547-1.719q-.533-1.09-.531-2.515-.002-1.42.546-2.516a4.06 4.06 0 0 1 1.547-1.719q1.014-.609 2.39-.609 1.137 0 2.017.422a3.35 3.35 0 0 1 1.406 1.172q.526.768.61 1.765h-2.11a2.12 2.12 0 0 0-.625-1.125q-.47-.451-1.266-.453-.69 0-1.203.36-.504.362-.797 1.047-.28.675-.281 1.625 0 .954.281 1.64.281.69.797 1.063c.344.242.742.36 1.203.36q.481.001.875-.173.388-.186.64-.547.265-.356.376-.86h2.11a3.7 3.7 0 0 1-.595 1.767 3.44 3.44 0 0 1-1.375 1.203c-.586.28-1.265.422-2.046.422M39.035 17.766q-1.424.002-2.453-.594a3.94 3.94 0 0 1-1.563-1.672c-.367-.727-.546-1.582-.546-2.563q-.002-1.435.546-2.53.563-1.11 1.547-1.72.996-.609 2.344-.609.873 0 1.64.281.779.269 1.376.86.591.579.937 1.468c.227.594.344 1.305.344 2.125v.672h-7.703V12h5.578q0-.638-.281-1.125a2 2 0 0 0-.75-.781 2.06 2.06 0 0 0-1.11-.297q-.672 0-1.187.328-.516.33-.797.86c-.188.343-.29.73-.297 1.156v1.296q0 .814.297 1.407.31.58.844.89.527.298 1.265.297c.313 0 .598-.039.86-.125a1.9 1.9 0 0 0 .672-.406q.293-.28.453-.672l2.062.234a3.3 3.3 0 0 1-.75 1.422 3.7 3.7 0 0 1-1.39.953q-.846.33-1.938.329M46.537 5.062v12.516h-2.204V5.062ZM48.077 17.578v-9.39h2.203v9.39Zm1.11-10.719q-.533.001-.907-.343a1.13 1.13 0 0 1-.375-.844q0-.498.375-.844.373-.359.906-.36c.352 0 .657.122.907.36q.375.346.375.844 0 .486-.375.844-.377.344-.907.343M57.79 13.625V8.187h2.218v9.391h-2.14v-1.672h-.094q-.33.798-1.047 1.297-.72.502-1.781.5c-.618 0-1.157-.133-1.625-.406a2.93 2.93 0 0 1-1.11-1.203q-.39-.797-.39-1.922V8.187h2.203v5.641q-.001.892.484 1.422.5.516 1.297.516.48 0 .937-.235.47-.234.75-.703.295-.482.297-1.203M61.544 17.578v-9.39h2.11v1.609h.109q.294-.81.968-1.266.687-.451 1.625-.453.951 0 1.61.469.654.455.922 1.25h.093a2.5 2.5 0 0 1 1.047-1.25q.75-.47 1.782-.469 1.277.002 2.093.813.827.815.828 2.39v6.297h-2.218v-5.953q0-.872-.469-1.281-.458-.406-1.125-.407-.798.001-1.25.5c-.305.336-.453.762-.453 1.282v5.86h-2.172V11.53q-.001-.733-.438-1.156-.438-.436-1.125-.438c-.324 0-.617.086-.875.25a1.7 1.7 0 0 0-.625.672 2.1 2.1 0 0 0-.234 1.016v5.703Zm0 0\"\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 85,\n columnNumber: 13\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 74,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 73,\n columnNumber: 9\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 64,\n columnNumber: 7\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 63,\n columnNumber: 5\n }, this)\n ]\n }, void 0, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/Logo.tsx\",\n lineNumber: 15,\n columnNumber: 3\n }, this);\n}\n_c1 = Logo;\nvar _c, _c1;\n$RefreshReg$(_c, \"Logomark\");\n$RefreshReg$(_c1, \"Logo\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL0xvZ28udHN4IiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBTyxTQUFTQSxTQUFTQyxLQUE0QztJQUNuRSxxQkFDRSw4REFBQ0M7UUFBSUMsU0FBUTtRQUFZQyxlQUFZO1FBQVEsR0FBR0gsS0FBSztrQkFDbkQsNEVBQUNJO1lBQ0NDLFVBQVM7WUFDVEMsVUFBUztZQUNUQyxHQUFFOzs7Ozs7Ozs7OztBQUlWO0tBVmdCUjtBQVlULFNBQVNTLEtBQUtSLEtBQTRDO0lBQy9ELHFCQUNBLDhEQUFDQztRQUNDUSxPQUFNO1FBQ05DLFlBQVc7UUFDWEMsT0FBTTtRQUNOQyxRQUFPO1FBQ1BDLFNBQVE7UUFDUlgsU0FBUTs7MEJBRVIsOERBQUNZOztrQ0FDQyw4REFBQ0M7d0JBQVNDLElBQUc7a0NBQ1gsNEVBQUNaOzRCQUFLRyxHQUFFOzs7Ozs7Ozs7OztrQ0FFViw4REFBQ1E7d0JBQVNDLElBQUc7a0NBQ1gsNEVBQUNaOzRCQUFLRyxHQUFFOzs7Ozs7Ozs7OztrQ0FFViw4REFBQ1E7d0JBQVNDLElBQUc7a0NBQ1gsNEVBQUNaOzRCQUFLRyxHQUFFOzs7Ozs7Ozs7OztrQ0FFViw4REFBQ1E7d0JBQVNDLElBQUc7a0NBQ1gsNEVBQUNaOzRCQUFLRyxHQUFFOzs7Ozs7Ozs7OztrQ0FFViw4REFBQ1E7d0JBQVNDLElBQUc7a0NBQ1gsNEVBQUNaOzRCQUFLRyxHQUFFOzs7Ozs7Ozs7OztrQ0FFViw4REFBQ1U7d0JBQU9ELElBQUc7d0JBQUlMLE9BQU07d0JBQU9DLFFBQU87d0JBQU9NLEdBQUU7d0JBQUtDLEdBQUU7a0NBQ2pELDRFQUFDQzs0QkFDQ0MsMkJBQTBCOzRCQUMxQkMsUUFBTzs7Ozs7Ozs7Ozs7a0NBR1gsOERBQUNMO3dCQUFPRCxJQUFHO3dCQUFJTCxPQUFNO3dCQUFPQyxRQUFPO3dCQUFPTSxHQUFFO3dCQUFLQyxHQUFFO2tDQUNqRCw0RUFBQ0M7NEJBQ0NDLDJCQUEwQjs0QkFDMUJDLFFBQU87Ozs7Ozs7Ozs7O2tDQUdYLDhEQUFDQzt3QkFBS1AsSUFBRztrQ0FDUCw0RUFBQ1E7NEJBQUVQLFFBQU87c0NBQ1IsNEVBQUNPO2dDQUFFUCxRQUFPO2dDQUFVUSxXQUFVOzBDQUM1Qiw0RUFBQ0M7b0NBQ0NDLFdBQVU7b0NBQ1ZoQixPQUFNO29DQUNOQyxRQUFPOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7MEJBTWpCLDhEQUFDWTtnQkFBRVQsVUFBUzswQkFDViw0RUFBQ1M7b0JBQUVULFVBQVM7b0JBQVVVLFdBQVU7O3NDQUM5Qiw4REFBQ0Q7NEJBQUVULFVBQVM7NEJBQW1CUSxNQUFLO3NDQUNsQyw0RUFBQ0c7Z0NBQ0NDLFdBQVU7Z0NBQ1ZoQixPQUFNO2dDQUNOQyxRQUFPO2dDQUNQYSxXQUFVOzs7Ozs7Ozs7OztzQ0FHZCw4REFBQ0Q7NEJBQUVULFVBQVM7c0NBQ1YsNEVBQUNTO2dDQUFFVCxVQUFTO2dDQUFVVSxXQUFVOztrREFDOUIsOERBQUNyQjt3Q0FDQ3dCLE1BQUs7d0NBQ0xyQixHQUFFOzs7Ozs7a0RBRUosOERBQUNpQjt3Q0FBRVQsVUFBUztrREFDViw0RUFBQ1g7NENBQ0N3QixNQUFLOzRDQUNMckIsR0FBRTs7Ozs7Ozs7Ozs7a0RBR04sOERBQUNIO3dDQUNDd0IsTUFBSzt3Q0FDTHJCLEdBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRaEI7TUFsRmdCQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9zcmMvY29tcG9uZW50cy9Mb2dvLnRzeD82NzVjIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBMb2dvbWFyayhwcm9wczogUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPCdzdmcnPikge1xuICByZXR1cm4gKFxuICAgIDxzdmcgdmlld0JveD1cIjAgMCA0MCA0MFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHsuLi5wcm9wc30+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBjbGlwUnVsZT1cImV2ZW5vZGRcIlxuICAgICAgICBkPVwiTTIwIDQwQzguOTU0IDQwIDAgMzEuMDQ2IDAgMjBTOC45NTQgMCAyMCAwczIwIDguOTU0IDIwIDIwLTguOTU0IDIwLTIwIDIwWk00IDIwYzAgNy4yNjQgNS4xNjMgMTMuMzIxIDEyLjAyIDE0LjcwNEMxNy42NDIgMzUuMDMgMTkgMzMuNjU3IDE5IDMyVjhjMC0xLjY1Ny0xLjM1Ny0zLjAzMS0yLjk4LTIuNzA0QzkuMTYyIDYuNjggNCAxMi43MzYgNCAyMFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gTG9nbyhwcm9wczogUmVhY3QuQ29tcG9uZW50UHJvcHNXaXRob3V0UmVmPCdzdmcnPikge1xuICByZXR1cm4gKFxuICA8c3ZnXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgeG1sbnNYbGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIlxuICAgIHdpZHRoPVwiMTYwXCJcbiAgICBoZWlnaHQ9XCI0MFwiXG4gICAgdmVyc2lvbj1cIjFcIlxuICAgIHZpZXdCb3g9XCIwIDAgMTIwIDMwXCJcbiAgPlxuICAgIDxkZWZzPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiY1wiPlxuICAgICAgICA8cGF0aCBkPVwiTTEuOTM0IDNIMTE2djIzSDEuOTM0Wm0wIDBcIj48L3BhdGg+XG4gICAgICA8L2NsaXBQYXRoPlxuICAgICAgPGNsaXBQYXRoIGlkPVwiZlwiPlxuICAgICAgICA8cGF0aCBkPVwiTTM5IC45NWg3NS4yNzdWMjJIMzlabTAgMFwiPjwvcGF0aD5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJoXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMTUgOGgxMHYxMy44NTJIMTVabTAgMFwiPjwvcGF0aD5cbiAgICAgIDwvY2xpcFBhdGg+XG4gICAgICA8Y2xpcFBhdGggaWQ9XCJnXCI+XG4gICAgICAgIDxwYXRoIGQ9XCJNMCAwaDc2djIySDB6XCI+PC9wYXRoPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxjbGlwUGF0aCBpZD1cImRcIj5cbiAgICAgICAgPHBhdGggZD1cIk0wIDBoMTE1djIzSDB6XCI+PC9wYXRoPlxuICAgICAgPC9jbGlwUGF0aD5cbiAgICAgIDxmaWx0ZXIgaWQ9XCJhXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIHg9XCIwJVwiIHk9XCIwJVwiPlxuICAgICAgICA8ZmVDb2xvck1hdHJpeFxuICAgICAgICAgIGNvbG9ySW50ZXJwb2xhdGlvbkZpbHRlcnM9XCJzUkdCXCJcbiAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAxIDBcIlxuICAgICAgICA+PC9mZUNvbG9yTWF0cml4PlxuICAgICAgPC9maWx0ZXI+XG4gICAgICA8ZmlsdGVyIGlkPVwiYlwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIiB4PVwiMCVcIiB5PVwiMCVcIj5cbiAgICAgICAgPGZlQ29sb3JNYXRyaXhcbiAgICAgICAgICBjb2xvckludGVycG9sYXRpb25GaWx0ZXJzPVwic1JHQlwiXG4gICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMC4yMTI2IDAuNzE1MiAwLjA3MjIgMCAwXCJcbiAgICAgICAgPjwvZmVDb2xvck1hdHJpeD5cbiAgICAgIDwvZmlsdGVyPlxuICAgICAgPG1hc2sgaWQ9XCJlXCI+XG4gICAgICAgIDxnIGZpbHRlcj1cInVybCgjYSlcIj5cbiAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2IpXCIgdHJhbnNmb3JtPVwibWF0cml4KC4wNDk1NyAwIDAgLjA0OTk3IC45MzUgMS4xMjgpXCI+XG4gICAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgICAgeGxpbmtIcmVmPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFxd0FBQUdrQ0FBQUFBRFJFaWdjQUFBQUFtSkxSMFFBLzRlUHpMOEFBQ0FBU1VSQlZIaWM3WjEzdUI1RjljZS9aMlkySktFalZjQUFJdkpMRHlra0lVQklLSkdTS0VVSVNKT3VVb3lpcUNDS0ZGRTBBaGFhMGlXQUVHa2lKVUJvSVNHRkpOS2tKWFFNSkpUUTdzN00rZjB4N3kxdmJudjc3dXpPNStHQmh3dTVkL2J1OXoxN3Z1Zk16aUdVZ0NDMkFMRGhKbC9ldk0vNm02KzEvcnFyS1NJR2xmS0hLNFFCL2RxTEMyZk5lUU9RN3NjSDZvWmtDM3hsNVBiOXQ5NVlvTjczRlZaLyt0NktGYTh0ZTNYcHkyKzlEd0NDTEpmd1o3dGZseUFEWUsxQnc3YnJ0K21HYlg5cVBTK3BsWTltMy9MUHR5RVE1Rm8vcEFHMjJYL1NrS2poUDVuZmZHM1IvQ2VmK1F3ZzBiMWV1MU9jWkF2MDMzV1hFUnNEQUZ0bUloQUJvUHFxbFFHd0JVbmcvVnYvTkQvSXRXNUl5OWpqaEQwalFJUGNyYTNqVHlzb2tobVdRQklBOE1xc0dROHNxZm9CS2dGc2M5b2N5OHkyS2RiR1dtdlpXbTRNMXJLMVZzZk1mTnRJUURVbWxPY01rc0NrV2N3Y2Eyc3ROK3JlRm02dU5UcU9tWmsvdWUvWVRkQXMza3FRQUgzOTdpWm1qbU9uMHdTd2JFMXNtVy9jeG4xMkFqVkZBVHZPWk5aeGd2ZlhtamhtNWcrdTJ4R1YzbU1KOURoMk1UUEgybkpDVitJdXg3S05EVGVkMHhNeUJOZWFJZ2liWE1Pc2RRT2ZseDNkWU12dUFmclFSRUNJc2krREpIRFlDMGwrNUlxdWhtM00vT0tlSWJqV0ZBVWMvd0diT0ZHcEZtNHhXeE1iNWxtN0Fxck15NURBeU1lYWcyckMxOEhzNU5yRWZQbnFaVjlKb0ROSVlNdDdtWnRTZEl1MVpyNXBTMUJad1ZWQlRXV09kVG91ZzVtWnJXV3RlY2w0b1B6SFJLQURKSERVeHh5YjlOempRcjczeVVubEJGY1NHUFlzMjVqVGN4M2NFbHpQS2Y4eEVlZ0FoVFdtTWFmekh0Lzd4Wkx2c1FCT1NNL1RvUTNXc2piOHlKZEM0bG8xUkJpOUpGVmh0WUMxYkpyNHZWMUxmSDRLNENMbU9IV1h3YzBmdlBjbmhsU2dTaVF3SlpYeHlBWDZKdWJ2dU01VHUyVVhJeXltSDY0aDY5djVyd3dpSmhuM25yemFESmFsOUpJREhhTk1yNzkvSDBhaEkwVWtEQkZER3JGWHovdTdGNkNBdUMrZEh6bUhTd1h1WFM4a3JoVkRFdjJmNXpUVXF6ckJXamFhTCtxMjdVdkFmZnc1TjY3clZqWXVGWGg5SkVUcWdvSWZDT0RnSm01Szh6MW15emJtQzl1SnRUZ05JTVl0ZXpYMVNHTUswSXhMQmRZNStxMjVDS2xBQlNpREN5NlFPa3J6UFFZeGtSbEZEM1Y1aHlXbWNsUHlIYXR1c0pZMTg2V2hobFVCQ3V2UFlKMitLc0NxV0xhR2oranFEaXNjdzdxQk8yOHF4U1UxYy9vRXRaWUpDWXg1TTgyV3BCWExobmxrOFpPLzdiTkFtdTNta2hVTjJsVmRGVXlzb3crK2RTZEUyT1ZhT3RMZ2xLbUlvMFp0bks4S0pxMWVIL0ErdGNrRTJpaVhiSS83TnREU2h3c0JNYVR1ZmJCOGtGVlFhNmtvczlxMVA0UlJxVTVYMnlEamRiZTVTWFFzVnNsVDk0clRuWGkzUW9BMEdMdjlYWjhFdFpZR1NkTjN4cmlVVnRBN2dBQ3AreTFkME9iK3RxNWJtcDBmc2xUZmR4cHFDWU5ZUjY4ZitMamdVQlhvSG1GeHlOOTZ4S3JPYnlQVkVpWXIzdS83Vm1zaTBCcFpHYmR0YklVM1dpM1VzTlk5YXZuc1VNUHFIbVZ3OGErbGp2d0pSZ0N4aUZmZmFIb0hkMWZoWkc1S2Z5R2dDRmZEdXE1SHFBcDBoOEptai90UXNTckdXbXQ0Ykd0QWJmNmNFYS8zM0FhV1BQcmNBUUNEckZWUEgvQ3NMT205ODd3aW1DZGN2NTVYS1lDRFNhdkh4clQ4cTJqNTU1UU5ZbytTQUFlQmhZejdMWmhzT096RDZoUnArZWQzcjZmOXFGZ1ZRU3pORHZ1MWhGWnEvdXBHejYzalhXQUZBQVpwaFF0UGdkSkpMeVdsS0wzMjlYdXg5YVVLVUFTVGtYT0hOLytiYVA3SENldjRGMWdCZ01ES21wTWYzVlNIeExValNPaVJpL2FLdmFsWUZVTXN6TEJKemFIVmlaWE1tc2ZBajNaQU93Z3NSTHpEd3QxMWVlK1o1UVBKOW9SWlg0b2o0dlJ0WFMwRklzWkp6WWZ4aU1MZkozOVJlM2t4Y05jVHhWKzQ1M1MyNFgyWFZWQkdYZjFubUlqOURFUUFXUEs0a1FWSDRtNHY0OCtiZXZyUkF3cnRMQm8zOUs3UFFqdXJMU1ROVjJmczdrL1Rxa1BJQ056aG1xNEVBTUtPZXR4TGQ5V0NhMmN0UGVESjBNNXFSVmdjZUdXdldOWDVjTkk2d3l6ZTIvWmRZaFRTQU1JaHNQNEdWcmgyVmhUM21YT0M1WkFLRkZBV3Y1L1dTMGZ3K0prSkFFSi9ZYUxUcVFBQTAzc2loT2NSaVpnamd6OWZLVTJvQ2dBQWxONTQ1dmVOOVdhUFZXY1FBd2M2aXlVQVNJemQzUGg5UlFBSUxLMCtZdDVYZElpdGdDQzk2K0tkWWlGODF5b0FpWjIyWkVKek5lQWJ2ajhxZ09aMjFxQ0ZCNWh3cklDMC9OUDcxbys5VHdFY3V1Y0VDRGl4bXA3anZjOENnRUlOUy9lNjZRTFluS2NDeXF6NXozUFkrTEk1dVd1SWdIM0FBQWdRZHN3amZ0Y0NXbUdRaFhqb29IZnkzSHdsc3R2ZHZKWHZWWUJXbU1XS2JmOUhEQUVJN0FxYmpjc0NFUXVLeHk0YXA3UHcrS3NNeWZhWUo3Znl0Mm5WRGlLejdraW5WQmlNelloVUFZQVlVYnpoakI5elhtdFl5b2dyTGhQYTQ2WlZleGk3QW9BQThVYURNeVJXRURneS9PdGJWODluRFV2cUw4ODlTdnRmc1NxQ01Cb0dFQkFZdXJiTjBJV0J3Qkw2RzR1MjAva2JRU0JnOWxzNEpKWlpxRmkxUWFCdkh4QUVnT0V3R2NsdUhFUk1LdDVxemxFbWI2bUFzdmoxUDFiM3YybTFDZ1RUYXdnRUJCaWpNbEc0YWdzeFIxcGVjUm5sS3hWUWVvTVpQN1laU3dFQWdDeUdBeEN3YTJ5YnRXc3JiTW5XeDh6ZEtrZGJzb24wMk1YalloTFpDcXNBd0FJandCQUNXL1JKNFpteTFlTGFXZHN0L0liT1N6dExNcC82NEVhZW5BMVVMb1N2ckdFaENIMWhrbDVMSFhEdHJEVnVQVGNuN1N4bGV0MzhHMlNrYWJVcVJQaFNId2hCR0lTTVphd0ZDS3lNL2NsOTYrY2dGU0NwQnkzY1g3UFgyNnk3d3RBMklHR3hyVStuZEpRRGdTWEZ1eTdlU1dmOWxHeko1c2k1WDRsVlpwcFc3V0FNQkFrcnRnWmxNN1FXdG1SdlBQTUhHZCtTclF3dStadktWdE9xR0FLMkFRdXMweWVqZ1JWbzNwSjl3YlNlV2E1aEtkMW56bkVaMkdiZEJVellDa2FnejVvWkxBYTA0TFprSC9qVWdNeTJzd1QwUG91R1oyT2JkZWNRdGx3ZEFuMUVGb3NCTFJDeFVQRlg1eDJlMFJPR2xNV3ZibDhyYzAyclZTREN1bCtFd09iSTFNNkE5aEJ6cEtPci9wekpHcGJTNjkxenV2WG5OT3VLNFI2YlFXREx6UHFyWnR3SlF5Zk03cE81R2hZSlBXYng3akZsdG1MVmlzRm1FUGhTMHN1b1ArNkVvUkVMOThwWU8wdXlQZm1STDJab20zWG5FR016Q0d5YVpYOVZ3TFd6MXI3enJFeWxBc3FzOXZjL2VIMDJVT2t3WVRPSTFiNlErU2NJME56T091UHVkVE9UQ3BEVS9aNmFyUDA4eXJJU05vZFlhODJrRjlFWWlGaFNQR0h4Nkl5MHN3U2JRK2R2RzZzTTdySHFDQ0pzQ0xIT09qbjVZSUtZb25qVHgwN01SRHRMV1Z4MFRZOHNONjNhc1U0azF1aVptNFAzWER2cm91dDYrTi9PVW5xengwL01kdE5xRlFocnJTWFd5ZWllcTQ1dzdheERGdlQxdkowbFNIOXQ4YWlzTjYxV3BYZHZzVm5TYTJna1JDeGszSGYrd1Y2M3M1VGxNLysxVHRhYlZxdEF2UFo2b2xlT0lpdmNzUUo2dGV2LzRIRU5TK20xNy93RjU2QnBWUXdqRXVzbnZZZ0c0L3ZBREJKNmV6ZlFJa2RoRlFBWTY0c044eFZaV3dabUxOckR5NEVaa3UxM24zQURMWkplU3NQWlFLeVc5Qklhamh1WXNkNi96L0J3WUlZeTBUVi96RW5UcWgwOVJlOGNkRnRYeFowd2ROWWRhM2xXd3lLcHQ1MS9hSTZhVm0xaDlCSWJJRzk1QUFvbkRNVjdMeHJ1VlR0THNEbHdmdjlZNXFScDFZNE5SYWJmRStpVTVvRVp4M3ZVem1vejBDTHBwU1FCWXczUkkrbEZKQVF4UnhwL3VWTDVrZ29vdmNuRFdSaG9VVG1yQ1E4ZGNXMXdKd3dkTVc4Ykw5cFpndlJ1aTNmTVc5T3FHQ0Y2NS9iaVhUdHI0SUlEUEdoblNjcy91ZmNMV1Jsb1VSR0UzbUx0cEJlUklNU0lkTytiZnB2NmRwWXlhL3p6M0t3TXRLaVl0WE1jV2RIY3p2cmhReHVsdXAxRlFnOWJOTW56RWF6VlFvUmV1VFZZRHRmTzJubngrQlMzc3lUYlkrZHNtZVd6Z1Vxa2gwaHpTR2tBcnAyMXdmMC9TVzA3U3huNTEwc3BWOXVzT3lFU0tiMUZqY08xczg2OUphVURNNlQrOHR4dloyMmdSV1dJL0phdVdpQmlpWGpmaFVOU1dNTVNNUHN0SEp6ZnBsVVJ3cWQyWTkwZ3Bpais4dHlqVXpjd1ExbWNYeGhva2ZSU1VrQjZiVVZESWVaSWk4c3ZGK2xLQlpUZThJRWZaWEdnUllXSVBHNk1iSTlyWngwOVo2c1V6WDhuMG1NWDdSSlRucHRXUlpEZ3JKOTBWUnF1blRWMDRkZFRNLys5ZWFCRjdpdFdyYVRrenFRQU56QmorbmtwYVdjcDA5c050QWhQdmhaRVJtYTMxd0FDSzJ0UHUzK0RGTFN6V2dkYWhMRGFTb2lzclJCWVVEeCs0VTZKejMrWGJJNmN1M1dzZ3FFb0lvaTFEVzVMOWlZenB5UTgvejM3QXkwcVEzQU8zMnJwSEhmQzBPOXU3SlZrRFV2cExiSSswS0l5UXVtcUdBSkwxdDk4YW1CaTdTd0JQZEVOdEVnNkdVa2RvWFMxQ203Kyt6Ynpqa2lvbmFVc3pybHR6ZEMwNm9pUXM3YURtQ090cnZ3VGtrZ0ZsRjd2bnAvbVlhQkZCYVQvaFk0RWNGdXl2elA3U3cydlllVm9vRVVsaUpBRXRJZUloWWhITE5xN3dRTXpKTnRUY2pMUW9oSTRpTFZEM01DTU94bzdNRU9abmpkTURVMnJUbUdSbTNPdnk2UHhBek5JNm43ekQ4cnAyVUFsRVNKclo3ajU3eE1XTldwZ2htRHpyZm4vRjdaWmQ0SE45dURXYW5EdHJNMGVPNmtoSnd3cGk0dXY3UkVxVmwxaFF4clFPYTZkZGVIMXE5Vy9ocVgwNXJPK0Y1cFdYV05DWk8wQ056RGo0SG4vVitkMmxpRDl0WVVqODMwMlVBa1lvWk5lUXBvaHNKQnh2d1gxSFpnaExaLzVyM1Z6ZlRaUVNZVEkyalZVR0poeFlSMXJXTXFzZmRjdmJON1BCaW9CTFhUWWRkVWxycDExMG1QMUdwaEJRbzljdkdkb1duVUxRNHM0NlVXa0hkZk9HcjE0UWwxT0dKSnN2emRyODlDMEtvVTQ1S3pkUTR3b1h2ZnVlZ3pNVUNhNit1TFF0Q29OSFhMV0Vxalh3QXlTK3F2ekR3dE5xeElKMVlDU2FCNllNYUttN1N6QjVxQ24rc2N5Vkt4S0kxUURTcU13TUdQMmQycll6bElXVTIvb21iTVJyTldnUTJRdEVUY3c0MCsxRzVpaDlDWVBueEthVmlYRE1NS0UwbFZwMUhaZ2hpQzlhOTRIV3BTTERtOEtsRXhoWU1aVDM2eEJPMHRhL3RsOStSNW9VUUZCckdWQWpFajN1dkdDcXR0WnlxeDUyOW01SDJoUkZvendXa3Q1dUhiV0QyWnVYRlU3aTRRZXRtaGluTytCRnBVUUltdFp1SUVaT3kycVptQ0daSHZzbkMxQzA2cHN3dHV0WmRJOE1PTzBpdHRaeW9ndzBLSXlnbGpMeGJXenpwdStSbVUxTEttM25oY0dXbFJHRUd2WnVIYlcxeGNPcmFDR0pXRDJleW9NdEtpUUlOYnljZTJzcmVhVVB6QWpETFNvaWlEV1NxaHdZRVlZYUZFZFFhd1ZVUmlZOGVSV1pkU3dpUFF1WWFCRk5RU3hWb1o3TzJ1N2hmdVdmTUtRWlA3UkEyR2dSVFVFc1ZhSWV6dHJqVnRLSFppaFRPK2J6dy9icktzaWlMVmkzQWxEcDkyL2ZnbXBRT3RBaTVBQ1ZFNFFhK1c0RTRiR0w5NjUyeTNaa3MyMzUyMGRwckJYU1JCckZiZ2Exc1lQL2JDYkxkbkswQ1YvbGFGcFZTMUJyRlhoVGhqNjdVMjl1NnBoS2IzbGs4ZUZwbFgxQkxGV2h6dGg2SUFGQXpwdFp3bm9pVThORFc5YTFZQWcxaW9oWXFIaWJlWWYza2s3UzFtY2M5dGE0VTJyV2hERVdqVnVZTVpWZitsd1lJYlNYN2czRExTb0VVR3MxZU8yWkI4L3AwKzdHaFlKdmVQaTNjTFpRRFVpaUxVR3VCT0doaTljZFdDR1pIdkt3NXVFcGxXdENHS3RDUjBPekFnRExXcE1FR3R0S0F6TStQZDZMYWtBU2QxdlFSaG9VVXVDV0d1RWEyZnRzV2lIUWp0THNEbDB3YmF4Q2hXcjJoSEVXaXRjTzJ2VFIwKzBMTjFBaTJzaUhYRklWMnRIRUd2dGNPMnNpNjd2WVpUVW16OGVCbHJVbWlEV0dsSVltTEdnbnpaN0xob1ZwckRYbWdRR1AyY1lZaFlpN2p2LzhDM09ROWkzVW5PQ1dHc0tnUkhwSGpjQW9XbFZlNEpZYXd3eEt3c1dvV0pWZTRKWWF3MHhDeVlLS1VEdENXS3RPZFQ4VjZER2hHcEF3QnVDV0FQZUVNUWE4SVlnMW9BM0JMRUd2Q0dJTmVBTlFhd0Jid2hpRFhoREVHdkFHNEpZQTk0UXhCcndoaURXZ0RjRXNRYThJWWcxNEExQnJBRnZDR0lOZUVNUWE4QWJnbGdEM2hERUd2Q0dJTmFBTDFBUWE4QWJnbGdEM2hERUd2Q0dJTmFBTndTeEJyd2hpRFhnRFVHc0FXOElZZzE0UXhCcndCdUNXQVBlRU1RYThJWWcxb0EzQkxFR3ZDR0lOZUFOUWF3QmIwaXRXQm5NREU1NkdmbUNrZXJmZVdvSFlCQVR3R0hvU1NOaFlrS0tmK1BwamF6RTF2M3lrbDVKWG1EM1M2ZjAvc0pUSzFZQVRaYUpPY1cvdkV6QnhDQ09kZExyNklJMGkxVklZNG1ZT01pMTdqQ0lpWXlWU1Mra0s5SXNWb1ppN1Q3d1NTOGw2N2hIbUtaVWF6VzlCZ3NBd05JYUlZTFBxak1NWW9KaG1mTGZjcG9qS3dBV2lnMkN6Nm9yVEdCaURaWDJKMWk2SXl1SVNWb3R5WDMyQTNYQS9XcXRsV21YYXVyRnlzUVFaRWc2czVyMGNqS0lxNndhS0tULzhaWHlOTUNGVkFVVGZGWjlhSFZXSGxSZFVoNVpRV0JpU0E0K3F4NjBPaXYyd1Jpa1BMSUNJQ1ppQ2o2ckRyUnhWcWx1c3phVDlzaUtsdUFhZkZhdFlXS1FjMVorL0ZvOUVDdEFUTXpCWjlVV0ptcHhWdXlGVmoxSUE0QldueFg2V1RXanlGbDU4dm4zSXJJR24xVnJWblZXZnVCSFpFVkxjQTArcXhiNDVxd0tlQkpaVVFpdUpLMFd3cWRva0VMYTlxeTgra1g2STFibnN5RElzRTk1VnZvbzdsbjU5RnYwSmcwQWdzK3FDY1U5SzUrMDZsVmtEVDZyZXZ4MFZnVzhpcXhvMDg4SzcyZFZncWZPcW9CZmtSV3RQc3Q0R1J1U3hWdG5WY0E3c2JiNkxLL3EyV21ncmJQeUxGdDErSllHQUMwK2k0TFBLb3NXWjhWTVRCNXExY2ZJMnV5ekJCVjhWZ2l1SmVDMXN5cmdZMlJGbTM0V0UxTUlydDFUY0Zha2lBbStmcnE5akt4bzNUZG9RaityQkh4M1ZnVjhGV3ZydnNIUXorb1c1NmQ4N0ZrVjQya2FBQVNmVlRKdWszWEJXWG1zVlk4amF6dWY1ZkZkcUNkWmNGWUZQSTZzQ1Ayc0VpaHlWbjVyMWV2SWlqYjlyT0N6T2lRanpxcUE1Mkp0NldkWkUzeFdlMXdmd1ByYnN5ckc3elFBYVBaWk12aXM5amhuWlR6dVdSWGpmV1FOL2F6T2FPT3N2TTlXSGY1SFZoVDdyQkJjQzdSMVZobjVCR2Nnc3FLNG54V0tXRURXbkZXQlRFUld1T0V1TENTYmNLNDcwQnhXRFdlaFlOVktWc1FhZkZaYnN1YXNDbVFqRFFCQ1A2dVY1b09CTXBVQ0FCbUtyRmhsMzJCKysxa3RtNnd6bFFJQVdZcXNDUHNHZ1l3NnF3SlppcXdJUGl1anpxcEF4c1NhZDUrVlVXZFZJRk5wQUpEdmZsWWJaNVc5c0lyc1JWYTA5ck55RjF6Yk9xdE1ma296RjFuUnJwK1Z4ZHZXQVZsMlZnVXlHRm14aXMvS1IzRE50TE1xa0UyeEZ2bXNYQXlCejdhektwREZOQURJbTg4cTdBYk1yTE1xa05ISWl0WitWZzU4VnZOdVFFbVplQ0dnVTdJYVdWRjBtR3VtOXcxbTZQWFZic2h1WkVWekVTdmovYXlDcy9MMHlOV3l5TFJZUWN4WjcyZmx3bGtWeUhBYUFMVHhXUms5ekRYclBhdGlzaDFaa2ZFaDhKbnZXUldUOGNpS1FpcVF5WDVXRG5wV3hXUmZyQ0F3Z1lVd1JucCtpbDR4R1R2Qm9nUXlud1lBTGNFMVcvMnNQRG1yQWptSXJNaGlQNnU1WjVXZnNJcWNSRlprcnAvVjByUEt5R2V2TlBJUldkRnVPS0hYTnpnL1BhdGk4aEpaMGVhUUlkK0h3UHM5SnJBS1JJNnV0UkJjZmU5bkZaeVZ6Skd6S3BDYk5BQkFKb1lUTnZlc2ZCOW1VUWs1U2dPQURBeUJMeHJBN3VXbnJRcnlGVmw5OTFsNWRWWUZjaFpac1lyUDhpdTQ1dFpaRmNoYlpFWEwrMWxXZXhhZmNyY1ZvQjA1Rkt1bit3YmJEbURQWTFoRkh0TUF3RXVmbFd0blZTQ1BrUlgrK2F5Y082c0MrWXlzOEd4b1J0NmRWWUhjaXRYdEcyUkpodG1tZk44Z0V4dmtzbWRWVEg3RkNuS0hEQ2t0cExVcGZ2bVZtUXdVVytVZUJra3ZKMEZ5TEZhNHA3K0pYcnhGQ3AzYXJTMU1GRXU2WnFXeThDQzVyaXU1RmlzSVpDV08yLzhrcldLa01yZ3lrOVhSMi9zYy9rdllOSzZ2b2VSYnJFeHNjY29ENnVMQjh5TTJLUXl1RE5KQ1RlOTNwL3I5bFNxOTBiOUI1RnFzREdqMXh3dUZWazhQKzcyUU1hVXN1RElUWXFXL3UrOXlaZkR0aDZJNDUyck5zMWdaRkVmVFR3UkRTLzdCMTk2T3RFMlZHaGhrT0pvLytNOUNhQmJZNTltOHF6WEhZbVZRSEQyeVB3UURodVMvKzkycTB1U3ptSWxpS1M0WStyU3lGckJ5NVc1dlJpbGFYd0xrVjZ3TWlxT0ZFNnl3QU1CR0xkL3YrS2IwK0N3R1dSMjl1Y2Vwa0JvQVlOUWI0ei9JZDk2YVc3RXlLSTVlM1BVVGFRdGYwRUpjT25oZVdueVdjMWEzOXI5WGtTbDhTYXZuZHZzczEyck5xMWdaRkVldmozMVhtcFl2V2F1ZUhmWmJJZVBrdTYvT1dUVWR2OThLcFZ2WG90V1RFNHd5K1MyMTVsU3NESXFqZDNaK1E1bTJYOVVTUDlyOWpjZ2szYzlpa0VIMDVLQkxCZW0yWDlkcTVwNlFKaVdKU3VQSnAxZ1pwS1AzZG5wWjZlS3ZHNmo3K3QrY3RNOWlRaXpwL0JIUEtidktLclM2ZHgvSTNNYldYSXFWUVZvdDMrbS9xMm9WZ0ZidmYvT1l6NVAwV2N4a1RmVDZycWMxTzZ1MmFIWG5OL0liVy9Nb1ZnWnA5ZjdPejNTZ1ZVQ1R1R0xnbk9SOGxuTldOL1dmb1dBNitNOWEvWFAvM01iV0hJclZhWFduLzNTb1ZZQ3QrdS8yNXptZjFYQzVPbWYxMlRFSGZ0REo2cURWTFFma05iYm1UNndNMG1yRmpvczdVd09nQlg0Ni9yWElOTDZmNVp6VkV3T3ZXTVZadFVXcmY3alltaisxNWs2c0RJclZlenQyRmxjQkFCYnFnWDQzTk54bnNYTlc1NHg2b1oyemFvdFd0K3liVDdYbVRhd01pcU5sWTU3dVNxc0F0UHpvNEtNK2E2elBZcEExMGF2alQ0Zm9abkZxK3FSY3FqVm5ZbVZRSEwyOXczUGRhQlV3SlA0MllGYUV4a25DT2FzYitqK2dZTHY1WDdXNmZVK1crZXRsNVV1c0RJcWoxMGE5MEsxV0FiYnF4ZEZuVTZQNldjNVpmWExrd1I5MVVMQnFoMVozNzZiejEzbk5sVmdaRkVjdmoxcFNnbFlCYUlFenhpNXRURC9MT2F2SEJsNGxxS09DVmZ1MXFSbmo4cmRQSUU5aVpWQWNQVGY2amRLMENsaW9tZjJ2VjBMWCswaXNnclA2MVppWHVuUldiZEhxa2JFZjUwMnRPUklyZytMb3FkSHZsS3BWQUZxdS9OWVJuNmk0dnBOZm5iTmFNdmJuM1Rtcm9xV3AyVHVzVVBuYWpaMGZzVEpSSEQweFprVXBPV0VMaHNUVi9SK3RyODlpSWkzVXRmMW5kdStzMnFMVnd0SHY1T3ZkZ2R5SWxZbmo2SUdkUDVZbDVZU3RmOHlxVjNiOEJkV3ZuOFZNSEt1Vmh4MzJjVm1mSWdCYVBUZHlhYTdVbWhleE1yR083aGpmVktaV0FXaUJYNDU1T2JMMTZXYzVaelZ6d0xXeU5HZFZ0REsxWlB2Y3ZKZEZ5STFZbWRoRU4wNkVLRnNSZ0lWNmJNQTFzaDQrcStDc2ZqRjJpVElWZkcrdDN0bGhmaFI3ZGlSeTVlUkNyTXpFVmwxK0VFUTVTV0VyV241eStMZFcxdDVuTWNqYTZLVXh2eXpIV1JVdmJNV1loNk00NVVkMTFZdzhpSlZCbHVVRngxYXFWY0NRdkw3L3pJaHE2ck9ZUVZySXF3WThWcDZ6S2xxWS9IU1h1eUtkRTdYbVFLd01zaVRPT0JWVXFTUUFObXJwMkROUXkzNFdneENyanc0NTh0TnluVlZiakxCNzN4Q1pmS2cxKzJKbGtCRjAwdG1pdXZ1cEJjN2U0YVdvWnVjTk1zaFE5TkNBdjFmZ3JOcGlCUTYrVktYNkdNU2FrWG14TXNoSUhIYXhMTFUzMUJrVzZ2RUJWOWJJWnpsbmhkTjNXVnFSc3lwYUYrSDRYMHVrNnpDWitwQjFzVEpJU3p2eFdsVlYrSEpvK2VtM0ozOVlDNS9sbk5VTG84K3AxRmtWZlRPaW4veFlpSXh2R1dSa1hxd01pdFhIWSs4b284WGFCWWJrdFA0UFJGUnRTNTZKWWlIL09uQlc1YzZxNk50Qi9PYVlyRzl3SmFCeWcrd0Y3bmlBVVkvVVJxc0FHL1hhK0oraXVrM1p6TVJ4OU1HQlIzOVdqYk1xK281V1hyRXZzcjNCbFFHdXBFcnVEVXdVUnk5dDM4WHJWbVdqQmM0YitkOXErbGtNMGhUTkdIQlRsYzZxQ0tPbWovczA2OXRhZEpZakt4UEgwZndSUzJ1b1ZjQkN6UjU0aFJRVjlvM2NKbXY4Wk5mWHFuWldSV2oxNE9oM005NTY1UXpuckV5c28vdEdMNi9WdzdZWkxUOC81cHZ2UjNFbDFTTG5ySjdiL3RlMWNGYkZxMUpQRFg4cDQ2M1h6SXFWbWRoRTAzYi92UHl0SzkxaFNON2M3NzZvL0pkZjJUbXJTd2ZOcVkyektrS3JKU1BtWmJ2MW1sV3hNc2l5K3VQa2lyYXVkUHZOalhwejk5T2N6eXB2VFJ4SDd4OXdmRk90Z3owQVFLdmxPOXlmNmRaclJzWEtJQ1BFR1NkVzAyTHRDaTNvL09IUGx0ZlBjczdxM243L3FLV3pLbHFVL0h5M3YwZTJ2cTgxSkVrMnhjb2dMWEZzdFMzV0xyQ3M1ZzY2cEF5ZlZYQldwKzd4Wm0yZFZWdU13Q0ZUSldlMm1aVkpzVEpJSy9QMXk2dHVzWGFGbHZFSit5MlBkR25CMVRtclo0WmRRTFYyVm0yeGhDbW5aYmVabFVXeE1paFdIK3gwV3kxYXJGMWdTTjdhLzU3U0RobHl6dW92ZytjcHJtdXRrRW1jZjJSbTJ3TVpGQ3NUeGRIU0VZL1h0THphNFE4eTZxMEpQK1R1KzFsdVRPRHlmYjhUMThWWkZmMG9LNi82V2xORzJ3UFpFNnRyQlF6djZLVGdtcU1GL1c3b2Z5TGI5WFBYSFF4MGQ3L3A5WEpXUlJqMTcxRVpiUTlrVGF5dXZIcjNxR1dOMENwZ1dTMFkvQ2ZaMVhCQzU2eDR5cDV2MTg5WkZhSFYvR0gveldSN0lHTmlkZVhWdisxWm4wcG1SMmhwdmpkcFdlZkRDZDJZd01WRHB0YlZXUlV2U1MwZC9tZ1cyd1BaRXFzcnI1NTlWRjFhQVoxZ1NONCs0SzdPZkpZYkUvakhJUXZyN0t5SzBQTERuZjZSL05DWm1wTXBzYnJ5NmdsblVKMWFBWjM4VktQZTJmc1UyNUhQY3M1cTJjUVRUY01pUFFEQUNEN2dJa1ZaSzdobVNhd01pbFU4OFJMWjZJQ2lCVjI0M2FMMlF6T2NzN3FqM3gwTmNWWnRzUUlubjBwWks3aG1TS3hNRkVmTFJ0MVI1L0pxUjFoV0M0ZGM2SWJBdDY2SENiRXlKMDFjMWlCblZiUWlFaGRNemxyQk5UdGlaZUk0ZW03WXZNYVVBVlpGUzN2S1B2OXIyODl5em1yaGRoYzN6bG0xaGEyYU52YkRiQlZjTXlOV0pqYlJnOE5mVFVhcmdDRjVaNy9iVzMyV2MxWi9HTEtva2M2cUNLMW1qbmdsVXlXc2pJaVZtYXhWMTR4YjJWZ2pVN1FFbzk2ZGRLSjJQc3M1cTNmMitqNG50eUJvOWZ5d1dWa3FZV1ZEckF3eVFwNTllQ05MVnUzUlF2eHh5SUtJRFFHa2hmcG52MzgxM0ZrVkwwZ3UzK0htMnAzTGtUaVpFS3NyV1IzWDRKSlZlNnhWL3hrNlZjaVlFQ3Y5dlcrOGw0Q3pLc0pJL3VaVVdkc2p1aElrQzJKbFVLdytuWEJadzB0VzdkR1NwK3o1ZGhSenRHRHduNUp4VmtVWWdTa25VMWFLQWhrUUt4UEYwV3NqN2ttZ1pOVWVRK3J1L3RNajhidnRuazdNV2JYRmtyaG9VbFoyWWFta0YxQXRER0lkemQ3NzNhVEtBS3ZBV3IyMzc0bHYzTnJSQVBZa1lGYTNqL3pYeG5FRTluNlV0dStSMWUzQS84Zm90R2dWZ0NhNitOWmtuVlVSV2kzWWJrRlU1NGt6RGNGenNib3l3QVVIMkpURU1RQUFzeFFKTzZzaXRIcHI1TzMxR29yUVNQd1dhMkhueXFuSmxxemFZMUtRcmJaQnk2WkpGMHIvZHdwNExWWUd4ZXFUQ1pmSTJoOFprUzJNd0NrbitiOVR3R2V4TWlHT2xneFBSeGtnM1ZnU0YrL3ptZTlGQVgvRjZsNWdlV1RvTStteFZpbUdyYnB6KzFlakJzMzRyaFBlaXRXOXdITE5UalUvZHkycmFMVm91OGNqNDNOUndGZXhNa2dMY1ViQ3V3RzhRcXYzZHJoTytYeGVpNmRpWlZDc3pFRm5KNzBid0N1MHdLRm5pdklQUDB3TmZvcVZDWEgwMXNnYlU3QWJ3Q2NzMFZtVGpiODJ5MGV4TWhQcmFPN1F1YUVNVUNiTWN0cm9kN3pka08yaFdCbGtPYnB4NUZ1aERGQSs1Z1V2YndBQUNmMUpSRUZVUnMwWk1qZlNmdG9zLzhUcXJOVlpCelg0N2Vhc29OVmJJNmQ1YXJPOEU2dXpWZ2VmU2VuWktlSVhXcHJKdi9EVFp2a21WbWV0UnQwUXJGWEZHS0pmK21tei9CS3I2MW85TWVUSllLMnFnRmxPRy9tbWg5MHNyOFRLSUFOMTlhaDNncldxRHFQbURuN012OE93ZkJJcmc3U2tIeDFSOHhsUytVT3JaV1ArcW54N2s5QWpzVEpSckQ2WitGc1J1bGJWb3dXTy9xRnZieEo2STFZM252ZUZvWGVvZWs2MXlBK1d4Ty8yWEttODZnLzRJbGIzcnRWZFE1NEw2V3FOWUt2dUh2S01Wd2UyZUNKV0Jta2h6OS83NDlBSnFCMWF2VGgwZXNUKzJDdy94TXBFc1RLSG5oWTJCTllVTFQvYjkxY2U5UWU4RUNzVHg5SHJJNjhMNzFyVkdDUG81d2MxZVpPNGVpQldackkyZW5CUTJHUlZleXpMRzRlLzdFdmltbjZ4dXFNQkxocTNQRmlyZW1EVW9zSC84dVNrd2RTTGxZbGl5VWVkSERvQmRVTExqL1k2WDNxUnVLWmNySzY2K3Nib3Y4blFDYWdYUnVDMFEySWZFdGVVaXhWa2JmVGc0Q2VTUHVnMDAxakl2dzk3S1lwVGYzSmJ5c1ZLV3NpcDQxSjA2bG8yTVdyUjREdmRrZDFwSnQxaXBWanB3NmFFZExYdWFMbHluN05GMmpzdXFSWXJ4OUVyMjE4YjB0VUdZQVRPMlA5VEZTZTlqaTVKczFndG9yc0d6US9wYWtPd2tMY00rVTlrR09tdENxUlZyQXpvSG5UVzNoK2wvZEdVSFl4NmZ1aTBIbWtlK0pwU3NUSWhqdDcvK3BsaE0wQUQwYkpwOHZjamtkNlhzMUlwVm1heUpsb3cvRFlWTmdNMEVrUGlEK1ArRjNVdzNqc2RwRkdzRERKQ1hUbjhsVkN4YWpCczFVT0RIazd0aWU0cEZDc1R4UkxmK1hZNHhTSUJ0SHA3NTZscGJiNm1UcXl1d2Jways3K0ljSXBGRW1pQktRZDlxbEw1bm5iYXhNb2dnK2oyUVhQQ3ExWUpZVW5lT0dSUkt0L1RUcGxZbVNpV2RQcWtEME1La0JoczFQUERybFlwVEFWU0pWYVhBaXpiN1J3S0Zhc2swVEkrNG5oV01hVXN1S1pKckF3eUhEMDQ4UDVVVEQzTk00YkVwY05maW5US3FnSXBFaXVEdEJUbmpYczdWS3dTaDYyYU4rZ21sYkk1YjZrUkt6TWhWaXYyK1duWVk1VUt0UHo0d085RHBtcExkbHJFNmxLQVJ3ZmRHZDVnVFFtR3hCOUdMNDEwaXFvQ0tSRXJFOFZTL0diSDE4SWJyS21CclpvMTROWTBwUUtwRUt1ckFxeVk5T09RQXFRS0xUL2Fid3BrYXZZS3BFR3NyaEh3MElEYlF3cVFNZ3pSMUpFdlJTWWxWWUVVaU5VMUFzN2Q1WTJRQXFRT1pqVjc4STFwYVJBa0xsYVhBdnh2d3M5Q0NwQkt0Rng1MEhlTVNrVXFrTFJZR1dRb3Vydi9QV0hyYWtveEpQNHk5T2xVYkJ0TVdLeE1pQ1ZPMjNOWmFBU2tGclpxNFpETHBkQ0psMXdURmF0N0krRGwwZWRUU0FIU2pKYnhzWWVzVkhIU2N3bVRGQ3VEdEZEWEQ1d1Y5Z0trSEVQeTd3TWZpNUJ3eVRVNXNicis2cWRIZml1Y1pwMSsyS2hYeHB4RENaZGNFeE9ySzY0K01laXE4RWFBRjJpQjA4ZTlsbXpKTlNHeE1oTmlTZWVPZWlHOEVlQUpGdXJCL3NtV1hKTVJLNE9zaVY3Yk5SUlhmVUxMRHc4NjVyTUVTNjZKaUpXSnRGRFRCc3dJeFZXdk1DU3VHRFFyT1orVmdGaVppV1AxOFJHVFB3ak95alBZcXYrT1Bpc3huOVY0c1RKSVUvVFFnS3VEcy9JUUxYRG1qaTlHTnBIZzJtaXh1b0lWZnJyTEs4RlplWW1GZW5UZ0ZWSW1jYkJBZzhYcVhnajR6N0R6Z3JQeUZpMC9QV2EvWlVrY0xOQlFzYnFDbGZqOTRIbkJXWG1NSVhsci8xdFY0emNMTkZLc0RESTJlbVg4RDhJcFZuN0RSdjF2djZOV3FrYS9uOVZBc1RJaGx2S0tBUS9JNEt4OFJ3dnh0d0gzTnpxNE5reXNicWpsbTVPTytWaUdjOWY5eDFxMVpMZVRtMVRjeU9EYUlMRXlFMklocisxL2V3aXJHVUVMdW1qZ3cxRWpnMnRqeE9xeTFiZjNQMnhGR0dlUkdTeXI1M2YrWWR6QXpMVWhZblhaNm5YOWJwRVVuRldHMEFLL0cvUnc0ekxYQm9pVm1ZeU4zdHIvME9VaHJHWU1DL1hzemo5b2FsUndyYnRZWFcxVlhoWENhaWJSQXI4ZjhJQVN1aEc3QmVvdFZ0ZXlXckwza1NGYnpTWVc2ci9qdjd0U05XSlhkbjNGV21oWi9iSC9YU0dzWmhZdDZNLzk3MUNpL2x1eDZpbFdaaUpOMGROalR3eTExU3hqV1MyZGVPaXlpT3U5RmF1T1ltV1ExY3FlTldobXFLMW1IQzNFZFgydkZ2WGU1MW8zc2JvMmdIcG8wSmttaE5YTVk2MTY5NGdKejBlazZ6bUhvRjVpZGNacStYRzcvRWNoaE5VY29FbmVNK0JjcStvNWg2QStZbVVtanFXNHB1OWw0YXlWdk1CR3hqOGIvR0E5alZaZHhNb0VMYUpuOWpqOG5YRFdTbzR3cEJhUE8zcFpoSHAxdE9vZ1ZtWXlWbjEyK3NCN1E3MHFYN0FXOU5lK2wxRzlPbG8xRjZ2TEFPVDAvdWNFWTVVL0xLdDNqeHN6dTA2NVFJM0Z5aTREZUhhZmZWOEt4aXFYYUpLUGpUemhYWmNMMUZpdU5SVXJNNUZtOWZIUEJ0MHBnckhLS1d3a0x1bDdDU2xkOHg1QkRjWEtyZ3NncnV0N2JpeHRNRmE1eFVBdE8ySDRnMHJXK2tEWDJvbVZRUndMOWZqT2g3NGFNb0NjbzBuT0hUZjVwYWpHcWFzQWFoS3JYY01xV25yNERnL0xrQUhrSGphQ3B2WDcyWWNSMVhEdklJdWFoRlptZ3Fib296UDdYUU5wUWdZUWdHWDUrYm45TG9kaVU2dXpXNFI0cS9yQXlrelFyUGl5dm1kOUxFTUdFSEFZVXE4ZnU5MmRRaHBEWEgxMEpieUZVem0yWEJXV3JkYk10dzRFRk5YaUtnTlpnU1N3MitQTXNXWmJyY28wajhjb050VjhIMnVadFdhZXNUTWdnMVFEcXlBRWNPQmk1dGl3clVwbmh0L2RBTDFlWmxQNU43RnNkY3o4eEY1dVdZSEFxa2lBam42eElOZksxUnJ6dndCY3hqRlg5azFzUWFvTERuQUJQeERvQ0FuMFBPblZxcUtydFRFZkQyQjhoWG1BTGVTcUN3NTI2d2tFT2tNQ3EwOTVsVG5XdHJMQWFDMS91Q2tBTEdCZHZscXRaUnNiNXJrSElVZzEwQzBLV1AyVVZ3cHlMVjl0SFBPMWtKQTR1dnc4d0ZxMnNXVis1T3NJVWcyVWhBSjZIdmNzczQ3TGxxdTExdklJQ0FEcUdkYmxxTlZheXlabTVydDJSNUJxb0ZSSUFlcVEyVngrOG1xNWlXK0dBQ0F4aVhYcGY3YlpWWDE4NVRBRXFRYktRZ0tZY0NlWG1RMVlOdno1Tm00Ymk4QzEvSGxwZjlSYWEwMXNtVjg5cXc4Z2dsUURaU0lCREw1a1JYTTJVSnJvdUlsL1VJaUxoTjdQY1ZNSmFyVnNiUnd6ODh4RFZ3ZGtxS3NHS2tBS1lPTXBpNWc1MXJZRXVWckxuL04wTkRlY0pMWityenUxMnViSFA3LzFweEVJM2FwQTVRZ0owQjdUUHVMbWRLQUw0Vm5MOW5OK3NtZUxXQ0hSN3gzK3ZQTXN3bHEyVHFtZjNmMnRkVUlISUZBbEpBRnNkdElzWnJheHRwMFhYNjFsMDhTejEycTc3MXBoczluTVRSMnAzTEsxMXNReE04ZVBmdi9MQ00vL1FDMlFBc0Rnc3hZeE04ZXhzUjFrQk5aSmxXK0lpbzI4Qkg0Vk16ZHAyemErV3JiVzZEaG1abDQ1WThxMkFFUjQvZ2RxZzNzK0QvL2xuSmlaVFJ4cjJ6YkV0anpOM3oycTNmc3NBdGoybXMrWU9ZNWo3WFJ1ZEJ3WHRnOCtmK1hCbXdPZ29OUkFMWEgxcEcyUHYrVlZacWZZTnVKcjBzejgzbTgyQURXcnJsVjkwbURyeVpNRzlGamwrMzM0NHNJblpqL2JCSkFJcDZzRWFvNGJONzFtLzFFakJtN1JhNVgvdHZMSlcyNytIMlRMZHY0Mm9WTEFBdHNNRzdqdGx6WmFweWVhVmk1LysvVlhYbnp4aFhjQVFDS01CUTdVQ1VGc0FjZ3ZmblhyTDIreDZVYnJycTc0a3hWdkwzbG00ZHpYQWRsR2VQOFBRRGhrcjBLUXBnMEFBQUFBU1VWT1JLNUNZSUk9XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCI2ODRcIlxuICAgICAgICAgICAgICBoZWlnaHQ9XCI0MjBcIlxuICAgICAgICAgICAgPjwvaW1hZ2U+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICA8L21hc2s+XG4gICAgPC9kZWZzPlxuICAgIDxnIGNsaXBQYXRoPVwidXJsKCNjKVwiPlxuICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2QpXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDEgMylcIj5cbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoIzA2NTk1ODAwZTkpXCIgbWFzaz1cInVybCgjZSlcIj5cbiAgICAgICAgICA8aW1hZ2VcbiAgICAgICAgICAgIHhsaW5rSHJlZj1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBcXdBQUFHa0NBSUFBQUI3RytDWEFBQUFCbUpMUjBRQS93RC9BUCtndmFlVEFBQWdBRWxFUVZSNG5PeTllMndsWjNuNC83NXpPVFBuZm56c1kzdlg5dHFiM1VEaVRiaTBaQnRvSVE1RnBCUkNVT2xHSmVXeXFDMnFpdmlqLzFUOW95SmVDVlZRQ1ZxazBpSUVrYUNsb3Q1VXJlaFhQMEFVN1M0dGtEVFFrR1R0a096TnUzWjhPN2JQWmM3Y0wrL3ZqMmZQbTlsejgvRjFabzdmajlEaW5NdWNkMmFlZWQ3bmZXNHZSdnZNOVBSMG9WQ0F2NHZGNHVUazVKa3paNzcvL2U4dkxTM2xjamxCRUF6RHVIWHIxdGpZR00vemdpQVFRZ1JCOER3dkZvdDVudWU2THNhWTR6aU80M2lleHhnVFFoQkNHT1A5SG5tRW9OZkU4enpIY2VEaU9JN2pPRTZ0Vmt1bjA2N3JPbzdEOC96YzNOems1R1NoVUxoMDZkTDA5SFRBNDJZd0dPRmdabWFHL24zbXpKbG5uMzEyZVhrWlk2eXFxaXpMZ2lDQWNzWVlDNExBOUhCTC9IcVlBak1hUXNpeUxFRVFUTk1VQk1HeUxNL3pmdldyWDczaERXOUlKcE8yYmIvMjJtdEhqeDc5L2QvLy9mUG56NTg1YzJaaFlRRWhWSzFXVDUwNnRkOFhlUitQUGpNek16azV1Ymk0K013enoweE9UcFpLSlZFVSsvdjdlWjcvK2M5Ly9zWTN2akVlajlNSkhtUE04L3p0TVdIY0lHVHdOL3pCeEs0ZGNISG9wWU4vd1pDeUxLdFNxWWlpbU12bDN2Lys5NTg3ZDQ2WkFnd0dBOVVWZGJWYVhWeGNSQWdORHc5YmxyVyt2cDVJSkhpZUIvMk03cHp2bVI3dUFMMDQ5Qkw1alFQNk1kZDFDU0hVVUZBVTVVYy8rdEZqanowMk5EUWtDTUlERHp3QTFzQVBmdkNEYTlldUZZdkYvVlBVKzNJakc0eks3MzczdTVWS0pabE1xcXFhVENZRlFZQkZQOHhZelYrblV6NWpOelE4dElRUTI3WlZWVTJsVW4xOWZlOTR4enZPblR2MzBFTVBUVXhNVEV4TXNFZWF3VGhzRUVKbVoyZGgrajl6NXN5UGYvemp6YzFOMTNWbFdZYnB2MEdIQkRqVTNxQ2RtZ1Zyd0hWZHovTXN5MUlVWldSa0pKbE1WcXRWUlZIbTV1WWVmUERCMGRIUnVibTV4eDkvZk85SHRiZUg4MC8vczdPekl5TWo0K1BqS3lzcnlXUlNraVJCRURvSUZwdUg5b01HcjUzbmVXQUtKQklKUVJEaThmalUxTlRzN093K2lSZUR3UWduRnk1Y2dBWEErZlBuOC9rOElhUmNMc3V5TElvaUxQMVJrL1pnN0JVTkZsWERuQWhSWFYzWFM2VlNQQjdQNVhLUFB2cm8rZlBuNldmMlZsZnYyZDMxVC85cmEydUxpNHVmLy96bi8vVmYvelVlajhQU3Y4R3h6d2dFdUF1dTY5cTJYU3FWQmdZR09JNVRGR1YwZERTVHlSeEEvSW5CWUFUTDlQVDBRdzg5QkgvRHFxQlVLcVhUYVZpa0lhYWxBOFcvWUlPN1U2MVdCd2NISlVsYVhWM0ZHR2N5R1VtUzlqQ1N5KzMrRUlTUXk1Y3ZqNDZPd3QvcjYrdVhMbDM2dFYvN3RlOSs5N3N3WEFqMjArQUhJMERnTG5BY0owbFNvVkF3VGZQWlo1ODFUWE54Y2ZIVXFWT3pzN04rWTQ3QllQUVlGeTVjR0I4ZnYzVHAwdFRVRkNIazZ0V3JobUhrY2psUkZDRm9UWmdGRUNoVVMwT2VuQ3pML2YzOWhtRXNMeS96UEY4b0ZCNTU1SkZMbHk2Tmo0OWZ1SEJoVDM1eHQ4cytTQ281ZGVvVU9DczRqbk1jSjVWS1FjZ2ZNYU15eEVBS29lTTRxcXFtMDJtRVVLMVdTeVFTeVdUeTRZY2ZEbnAwREFaakx3RlZ2TGEyTmpjM3ArczZoSjhoU291WW9nNHhNSk5DakdCemN6T2J6WXFpbUVnazROM2R1d1IyWlFSY3VIQkJWVlZOMHh6SG9kTy9KRW5VcDhSOHkyR0czaUJ3T3IzeXlpdkhqaDBiSEJ5Y241Ky9lZk1tUW9nVkRqQVl2UUZkclNHRUxsMjZkT3ZXclZ3dUY0dkY2RktONmVyUVFueVpHVkRxVlN3V1Q1dzQ4ZkRERDU4N2QyNThmSHhpWW1JM3k3WWQzbmkvVVhubHlwVi8rWmQvK2N4blBoT1B4M21lWnhabDVLQXVBVVZSSUNYMTZ0V3J1NWN0Qm9NUkJ1aHE3ZWpSbzRTUXRiVTFLUDFudWpweTBCNHd0Vm9OSmx6cUV0aXhydDZKRVFCNUpWTlRVd2loSC8vNHgwdExTOGxrRWtKS1RLcWlDMFFFRGNOUVZaVVFNalkyQm9xRFZRMHdHQkhGdjFwYldWbDU1WlZYM3ZLV3QwaVN4SFIxcEFGZGJkdjIrdnI2d01CQUpwUFpUYVgzdHI5RFhjVHZmLy83UlZHOGV2VXEyQ09JK1pRaUR0dytRb2h0Mjh2THkvMzkvWjduRll2RllyR0lXR2lBd1lnYS9oQUFyTlpTcVpRb2lvanA2b2hEYng5a2RBMFBENy9yWGUraTcyNzN6bTd2MDNRbXlHYXpnNE9EaVVSQ2xtWFdRckpuOE11V3Btazh6NWZMNVlXRmhVS2hVQ2dVbUV1QXdZZ0tOQVF3TkRSRUNGbGZYL2VIYTVtdWpqcjBQcnF1cTJuYXlaTW4zL0tXdDlCM3QzVi90L0ZSYWdHc3I2OFBEdytmT25WS2x1WHV2ODZJRmhBYVVCVEZOTTIrdmo1V05jQmdSQUpDeU96c3JHbWExV3AxWVdIaCtlZWZmK2loaDJnT0lLUDNJSVJvbW5iaXhJblIwZEdCZ1FGNHNmdmJMWFQvTXhjdlhyeDA2ZEw2K3ZyZi8vM2YvOGQvL0lja1NZZ1ZsdlF1SE1mRjQzR080MjdjdUpITDVaTEo1T1RrSkZ0R01CaGhabnA2K3VMRmkxTlRVK2ZQbjRmYXY2bXBxVmdzaHBpdTdsMHd4b2xFWW41K0h0SzU2STU5M1g2OW13OVI2Zm5oRDMvNHYvLzd2L2ZmZnorVktqWWY5Q3IrMEVDbFVoa2RIWVV1WTZ6SE1JTVJUaTVjdUFEMXZRODg4SUFzeXhzYkc3QUpVTkRqWXV3dk5KM0xNSXpqeDQrLzVTMXZXVmhZZU9hWlo3clUwbDFONFpjdlh6NTE2dFRjM0Z5cFZDb1dpK0FEWUJ3Uy9HRW5TWkptWjJkWmFJREJDQnUwZjl5Tkd6ZWd1YXdzeXh6SE1RZkE0UUhpQXZsOEh1eS9MclgwMWtiQWhRc1hNcG5NdFd2WCt2djdZWWNKVmw1eTJLQm1KclFjenVmejhEcXpBeGlNd1BIWEFXNXVidDY0Y2VQRWlST1FCTUFVOWFFQ1NnYzFUUk1Fb2ErdnI4c2E3eTJNZ0ptWkdUQW9TcVdTYmR2SlpCSk1TeFlGT0ZUUU8yNmE1c2JHeHNEQVFEYWJaWTBGR1l6QWFXZ0ZDSFdBdEJNd1U5U0hDcmpqcnV0V0toWG8zQU95MFZrTU9yMEhXYVp6YzNPS29zUmlzVnd1QnhVbVlHQXk4VG9rTk54eHgzR3ExV282blZZVWhUVVdaREFDaE5ZQkRnNE9lcDYzc2JFaHk3Sy9EcEFwNnNPRFgxSGJ0bjM5K3ZVSEgzend3UWNmUkZ1bGNuZmFSWEIyZGhZTXpPOS8vL3VaVElaWkFJY1Rlc2RoSDBKQkVISzVuT000anVPQUJZQjg4VWdHZzNFQUVFSXVYNzZjeVdTU3lhU3U2Ly8yYi85V0xwY2hEWkJaQUljV3VQV0VFRkVVSnlZbVhOZEZDSzJ0clhYV3oyMUZaR1ptWm5SMGRIRnhFV01NMVdLSUZaa3dFRUoxL1dKWjF2ejgvTEZqeC9MNS9PVGs1T0RnSUdMVmd3ekcva01idDU4L2Y1N24rVXFsMHQvZjcyOEZ5QlQxSVFka1FGWFYvdjUranVNNk54WHUxQ2RnY1hFUklXVGJkaWFUUVN6Q3hLZ0RraUJKMGwxMzNWV3RWdlA1UEZnQXM3T3pNek16ckhxUXdkZy9vQTd3MHFWTG1xYjE5L2NYaThWQ29kRFF1SjBwNmtNT1NJSXN5MWV2WGoxeDRzVEV4TVRzN0d5N0Q3ZVdGUWcxdWE1cjI3WW9pcUlvTXRPUzBRd2tvUmlHa2MxbU1jYWxVb2xWRHpJWSt3ZjE2eTRzTENDRW9IRTdxd05rdEFSamJCaUdMTXUxV2czOCtpMVhhQzF5QWdnaEV4TVR5V1RTTkUzUDg5anV3SXgyUU1WZ1BCNVhGT1ZyWC90YXBWSkpKcE9aVE9ieTVjdE1aaGlNUFdSNmVwcGFBSlZLeFRUTmREb2RqOGVoS2l6WXNURkNDS1J3aWFLNHNiRkJDQUcvZmt0YU5KTTZjK2JNRzk3d2hpdFhybHk5ZWhVY1RVeWhNem9qQ01MazVLU3U2NTduYlc1dVRrMU5YYng0OGZqeDR4Y3ZYZ3g2YUF4RzVKbVptVUVJemMzTm5UMTc5dWJObTV1Ym0vbDhuamxvR1Z2Q2NSdzRpanpQd3hpZk9YUG0vUG56RFo5cERBY1FRcURqWUN3V2N4eEhraVNXQ3NEWUVrSUl4M0d1NjZxcU9qZzRhSnJtYzg4OXg2b0hHWXpkUStzQU9ZNkRBQndMQVRDNkJCeEZ0Vm9OV2tjZ2hKb2pBbzJ6TzNRSS90NzN2dmZxcTY4ZVAzNmNsZ1VleEhnWmtZVldKWG1lWjFsV3JWYkRHQjg3ZGd6ZVpYWUFnN0VEL0swQWw1ZVhiOTI2ZGZmZGQ5TldnRXd0TTdhRXRnMndiUnVpdDZqSkR1QWF2cERKWk02ZlAyK2E1c2pJQ0h5QmlScGpTekRHb0pnNGpwTWtLWlBKYUpwV0twWGczUXNYTHJDdWdnekd0cGlabVlHTWJtZ0VaSnJtRzkvNFJrbVNtQVhBMkM0OHo5dTJEVFZjazVPVGplLzYvK1BNbVRNblQ1NmNuNS8vMWE5K1ZTZ1V3QWhnTUxZRklZVG4rVVFpb1dsYUpwT1ptcHI2NWplL1dTZ1V6cDQ5Mnh5T1lqQVl6VUFPNE5MUzBzTEN3cXV2dmxvcWxkTHB0Q0FJTEFUQTJBR3dTT041L29NZi9PRHp6ejkvOHVSSmY3YldIZWJrNWN1WDUrYm1Fb2xFclZaTEpCS3M2UVJqeDBCb3dEQU1HcnhrMVlNTXhwWkFzM2JUTkt2VjZzc3Z2end6TS9QcFQzK2FPZ0NDSGgwamtvQTJWaFFsblU0Ly8venpoVUxoMDUvKzlPdnYwcittcDZjTGhRSTBoUlVFQWZwUE1SaTdnUkJpbXViYzNOekpreWRIUmtaWVkwRUdvd1ArVm9BWTQycTFtczFtWTdGWTBPTmk5QUpnV2FiVDZVd204OGdqajFBbC9Ickh3RUtoVUN3V3g4YkdvUGNMWWsyQ0dic0d1bGJkZi8vOTFXclY4enpXV0pEQmFBZHRCYWlxYWk2WFcxdGJ5K2Z6ckVLYnNTZEFPS0JVS2cwTkRUM3l5Q1ArQm9Ldkw4aSs4cFd2RkFxRlNxV1N5K1VrU1FwaW5JeGVnMVlOdUs2cmFScFVObU9NV1dpQXdmQkRHd0hOejg4VFFwTEpwQ1JKYk45MnhoNUNDTkUwN2VqUm82dXJxdzgrK0NDdDNyb3RYdENNb2xhcjNicDE2MDF2ZWhQTFFHSHNMUkRSMUhYOUQvN2dENzd3aFMrY1BuMGFTcCtaUDRCeHlJRVFBUHk5dWJtNXNySlNLQlJZRWdCano4RVlXNWFWU0NUZTk3NzNMU3dzakkyTmdYMTVSLzQveDNGMzMzMDMzVFEyb0tFeWVoRG9iQnFQeDU5Kyt1bHNOcnUydHFacFdyRlluSjZlWnRXRGpFUEx6TXhNb1ZDNGRPblMxTlFVTkhVWkhoNEdSeXhyQnN6WVEyQk81emp1dGRkZWUvYlpaOGZHeG1oRTRBNVBnR0VZa2lUSnNzd3NBTVorQUlhbjY3cTFXaTBXaXltSzh0cHJyN0hHZ296RGliOFZJT3pOblVna1dDdEF4ajRCeTN2RE1FWkdScGFYbDJsRUFLTjZYWURydXB1Ym0vZmZmei9FQWc0Z0VOVWc2LzVmWkdHdzNlTjM1NFRuZW9Kb1FmTVRWVlV4eHNlUEg0ZTNtQjNBT0NUNFd3RXVMUzB0TGk0ZVAzNDhiSzBBRzdSSFNFWVZhZWdsN1REMzdldXYwNGpBNy83dTc5S0lnSUFRR2g4ZnYzbno1c2pJeVBIangya2c2bUNzVVNwZWRNYnlQTS96UE5qd2dQZzRnTUgwQmhoamp1UDRPaUVNN3RDOXJqbU9XMXBhV2w5Zkh4Z1ltSnljcEZtRVFRK1F3ZGhIb0JYZ3FWT25CZ2NIWDNycEpkTTBUNXc0QWEzZEQxTDNkZ004aktDTlhkZDFYUmZVY3REamlnWjBkZ09kRFAvQ0gvNkpEeDNzSGNjWTM3cDE2MmMvKzluYjMvNTJpQWhnVkU5TVZSUkZWVlZabHZkN0JQUmZFQ3pIY1J6SG9STG1uL3YzZFNTOURRaWNJQWl4V0N3V2k0bWlDRzdHOEZ4VmtBSEhjYXJWNnJGangzNzd0MzhiSVRRN096czNOOGV5QlJtOUNnMEJ3Sk5vMjNZOEhnOWJIU0RNVXJBUENNQ20vMTNTWUJEUVJab2dDSUlnZ0hHQTduVGY3dE13UE0rREdsUmQxMGRIUjkveGpuZGdRc2phMnRyZzRPRDN2Ly85V3ExR2k3ajI1Q2Y5RGlVNjhUdU9ZMW1XYmRzdzk3ZjBXclBsNE82aEZ4WmpMSXFpSkVueGVCeGlQV0ZZYy92M0hOSjFmWGg0V0JDRTFkVlZWajNJNkZWbVptWkF2Sjk5OXRtLy9NdS8vTTUzdmhPZXZRRGdlWVNsZ20zYmhtRVloZ0g2bVlVRDlvcm1jQURNakdBS2lLSVlpOFVFUWFBT21IMVMxSVpoSUlUb1prSVl0ZzM4NlU5Lyt0eHp6NDJOamUyNVRRb242YnF1YmR1bWFWcVc1VGlPLzl4YW5pRXpPWGVQLzhMUzFGQlpsaE9KUkN3V0M0OVhBSlNnWlZuUFBmZmNmZmZkTno0K25zbGtKRWs2ZGVvVTB6dU0zZ0JLWUFxRlFxRlFJSVNVeStXK3ZqNW9CUmlTeHhDbWY5TTBOVTB6VFJQbS9nWWRFdUR3ZW9NT2t4MDF3c0I5SzBuU1BybHZZVk5CeTdLT0hqMWFLQlJPblRyRmYvU2pIMzNtbVdkczI4WVlRMmJLN24vR0wwQzJiZGRxTlVWUk5FMnpMTXZ6UEZ4bjl6L0U2QjQ2MXhxRzRUZ09PS05RL1dZRk9EQVlBTS96UjQ0Y3FkVnFydXVXU3FXcHFhbloyVm5vbnhyZzJCaU0zUVB4VnVqREpvcWlZUmpRbWozb2NTSGswOVhRVTdaV3E4RmN3UFR6QVVPdnVldTZwbW5xdWc2ZUdJZ2RVTi9BWGszUTYrdnIyV3dXMGdMdzE3Lys5VXdtbytzNldCKzcvd0dFRU1keGtQNE5Fejh6S2tPQzM4dkVjUng0Sm5tZUQwbEZNbTBzYUJpRzUzbjVmSjZGQmhoUmg3WUN2SEhqaHVkNThYZ2NVbUxEb0FOQkxjTTZ6VEFNVUF2d1ZoaUdkd2hwNmI2VkpBbmN0eEE4M2YxUGVKNm5hVm8ybXpVTVkzUjBGSC9sSzE4cEZvc2pJeU9aVEFhOHhEdXpOZndoSlYzWFZWVzFiUnZWQXcrTXNBRVNKZ2hDS3BXS3grTW9OQzRCOEVsKzVDTWYrZnpuUC84YnYvRWI4QmF6QXhpUmcvanFBSXZGNHNyS3l0RFFrQ2lLZ1NjQlVGME5PV0txcW5xZXh4UjFPQUZGRFg1NmFDYU5mQWxWT3o2c1lSaVdaY1hqOFdxMXlwOCtmVnFTSk5oWFlEZHlRSDFLbFVvRnBJcjVsRUlPYUFHSURvaWlHSjVlMFlJZy9ON3YvUjRvcGtRaU1UOC8vOWEzdm5WcWFzcS9CemFERVdhZy9kcmc0R0F5bWJ4NjllcnE2dXJBd0VCNDlnUGtPTTQwelhLNXJPczZxaS9lZ2g0VW96VlFWZWc0am1FWXRtMURGdUV1N3hjaFJOTzA2OWV2UzVJa0lJVFM2WFNoVUVBK28yTmJ4NEpST282aktJcmZwOFNrS3VUUU1JMnU2NlpwcHRQcFJDS0JnbllKd0srTG9sZ29GRlJWUlhWbjB2ajQrSVVMRjVoTGdCRitvQTRRSEFDTzQ2eXNyUFQxOVlITmpZSkxzNmZMUjBJSUxOV29yZzVKUUpEUkVuODhIWElGa3Nsa0twWGFtVVRCMGFCL2NDd1dLeGFMZUdabVJ0ZDFRa2c2bmQ3WkVHRVdVUlFGc2hoMmRoQkdzSUQ5RjQvSE01bE1TSllGRUxzeURBUDZxcDQ0Y1FKZVozWUFJN1FRUW1ablp5SEo3c2FOR3krOTlOSUREendRbnQyQU9JNnpiYnRTcVZpV3haWnFrY09mMUNXS0lsUlI3Y0NBZyt5clVxbGtXZGI2K2pxK2NPR0NhWm9iR3hzN2tGVDRQR1QrTStkL0QrQjVuaUFJTzVhdFBZZFdOQ3d0TFkyTmpRME9EazVPVGc0T0RpSld0Y3dJSHpNek01T1RrNmRPblRwLy9yem5lZVZ5R2NvQlVBam1XdERQbXFZcGlzSXlBSG9Ba0toVUtwVk1KdEUyQlF6MEt2aFo0L0U0Sm9RODlkUlR0SGE4UzkwS2ZpVEhjY3JsTWpVcUdUMEFsYTFVS29YQ0VScEFDRUd3YVh4OC9EM3ZlUTlpalFVWjRZTzJBdXp2NzdkdGUyVmxKWkZJMExZcndZWUF3RzljclZaMVhXZldjeThCOVNiWmJMYjdiRk4vL2pWRVhmSG5QdmU1di9xcnYvck9kNzdUZmE5QXNBQXN5eXFWU2hBQ0NOek9aZXdWdUw3WGdDekwyV3lXRmhBR0hzaUV4b0tEZzRPQ0lHeHVickxxUVVaNG9IV0FxNnVyVUdjdlNSSW94akJVQVZpV1ZhbFViTnRtSVlCZUF0ZWI4TVppTWVnOEFmbjRXMzZSMUhjU0VrWFI4eno4eVU5Kzh2Nzc3eDhaR1lIV01kMThuMmFXQmw1VXh0Zy9JRFNReldiQlJSVDBjQkJDQ0VJRFAvemhEMy96TjMvejVNbVRyTEVnSTNDZ0ZTQnNoMTBzRnRmVzF2cjYrdmFxNGNydWdZU3RhclhLZEhVUEE3cTZyNit2ZXpzQUlRVDkrdzNENEQvMXFVK0pvcGhJSkxwTUNPQTR6akNNY3JtTWZKc2dNWG9QY0NHQy96QWsvVTB4eG9JZ1RFeE1tS1lKb1Npb0d6eCsvRGlySG1RY1BMUVZZRjlmbjJWWmlxTGtjcm1RR00wd0V5aUtvaWdLWXJxNnArRTR6blZkeTdLby8ybkxyNEJ2ZFdscHlYRWMvTlJUVDJHTUU0bkVsbkY5ZnhTQXhoV1lkZG1yMEZ0TUNFa2tFdWwwT2p4M0hCb0xIamx5eExidC8vdS8vNE4xR0FzTk1BNFNHZ0s0ZHUyYTY3cnhlRHdNSVFCVVY5U3U2MVlxRmRNMFdjTFdJWUVRd3ZOOFBwL3ZVZ2c5ejF0WldlRTREbi9yVzkvaU9BNWFFcmF6SUtqMmR4eW5WQ3FCdzRIWmxZY0JmOWdwbTgyQ3V5bm9RZDBXU05qb1RCQ0U0OGVQdyt2TURtQWNBUDVXZ0t1cnEwdExTLzVXZ0VHUDduWWpvRXFsUW11Mnd6QXF4bjREaTN0UkZQUDUvSmFpQ0IrR3ZWcjREMy80dzFCMHVLVUZBRVV2cnV1R1JOWVpCd01VRnptT1k1b216L05VVklKYTdsQ0JGQVNCNTNsRlVUREd5V1NTTlJaa0hBRCtWb0N2dnZvcXRBSU12Qmt3cnUvSXluR2NxcXFWU2dYOEFVeFJIeEpBL01BRDVMcXVMTXYwOVE2Zmg2OEl5TmZldjdNRVY2dFZtbDhhQnA4dzR5Q0JGSUZ5dWV5dlRBM2NEb2pGWXYzOS9mNjhKOVpZa0xGLzBGYUFhMnRyVUFlWXkrWG9YRXRuNG9NZkdBM2VWU29WeU9NSmNEQ01RSUI3RFVsN3RWb3RuVTUzS095aXpTSTVqaFBXMXRhR2hvYUliMHZqWmppT2cyMm1tR2w1bUtHOW9XemJEa05qUWZoMVFSRFM2YlJoR0xxdUh6MTZkR0ppQWlIRTdBREcza0piQVNLRVZsWlcvdnUvLy92MDZkUHhlTnp2Rmczd2NhQ3RBR0dkQm91OG9BYkRDQmFNc2FxcW9paktzdHc1ZWd1aUl2endoei84Mk1jK2h0cExNR3dMQkNtbVRMWU9NLzY5Qm16Ymh1cEJhbXdHSlJnd0t0aWVkWEZ4TVoxT0R3OFBUMDVPQmh1ellQUVMwOVBURnk5ZW5KcWFPbi8rdk91NmhtRTgrT0NEMEFvd3dCUVo2ZytEVm9EVUg4YTA5Q0VIWktCYXJRcUMwSG1wZG5zZDliNzN2WThxeWdhTlNVV3FXcTJpUUJVOUl5VFE5aU91NjI1dWJxYlQ2V1F5Q1VvbjhNYUNraVNOajQ4cmlwTFA1NkcxOE96czdNek1ER3NzeU5nTkZ5NWNtSitmdjNUcGtxSW9xVlJxZFhXMXY3OGZ1cXFFUWV3UlF0VnFWVlZWc0FhWWltYlFMSDZvV1cwcHBYU050TGk0aUwvNjFhOW1NcGwyV3hPQ1kwRlJGRlpud21pZ3VYb3c2QkhkM2hqRE1JeENvU0NLWXFWU1lZMEZHYnVCMWdGZXYzN2RjUnhabHJzdnhkNXZRTnFyMVNxckEyUzBoQkNTeStVa1NXbzN1VHVPODhVdmZsRVFCQUcxOGZOampHM2JCaHN6REVMUENCdmdoNFFVQWVoQWlZSU9EWEFjRjQvSE56YzMvL00vLy9QZDczNTNvVkRJWkRLWEwxOW1qUVVaMjJKNmV2cWhoeDZDdjlmVzFsUlZ6ZWZ6Z2lCQW5WUlFRazUvRi9LL1lPOVdwcDhaTFlFVXJzN0ZxeC8rOElmNXh4NTdEUHJCTllNeFZoVEZzaXdtWkl4MmdEbHBHQVpVRHdZOW5OdndQSC8zM1hlcnFnb3RVMWhqUWNhMmdHYkFOMi9lUEh2MkxOUUJRcE9Nb01mMWVsNk9xcXIrSklDZ3g4VUlJK0FyZ2o1QTdZSUNoQkQ4ai8vNGo3bGNybG1Td0ExUUtwWFkrb25SQWI4YVNpUVNkTy9Cb01kMSt3SFFkZjNJa1NPdTY3TEdnb3d1Z1NTQW16ZHZIanQyVEpLa2JYVmozVy9BRDZFb0N0UnFvYUR6RWhnaEI1eWp0STJnL3kxWXYyMXViZ3BRODQxOFdZSDBvNXFtTVV1VHNTVlVEYW1xNmpoT0pwTUp3OTZEMEVRemtVaXNyYTBaaGpFeU1zS3FCeG1kb2EwQUVVS2FwcjN5eWl1blRwMlNaVG53aHRrMEJHQlpWclZhZFJ6SDN3cVE2V2RHTytoYUtKVksrV1dZU2xRdWwrTS8rTUVQTnV3ZlNPcDdCTlJxTldaak1yb0h2RWNRR29CVTA4QWJDVUJqUVk3anl1VXl4aGdjRldmUG5tV2hBVVlEL2xhQUw3LzhjcWxVT25ic1dCZ2lYQTExZ04xdkU4ZGdBSTdqU0pMVVVteHF0UnIrK3RlLzNyeUZJTWE0VXFtdzdrQ003VUlGS1psTTBzYUNnUThKSVFRcHJoTVRFNy96Tzc5ejd0eTVRcUZRS0JSWTlTQURnRmFBbXFibDgzbkxzbDU3N2JWNFBNN3pmT0RTaTN4TnVtZ3J3RENNaWhFVklJU1VTcVZTcVpTL3JRVnRNWW0vOWExdlFjb3J2RUY4R3dVRk5HWkdMK0I1bml6TDZYUWFRZ1BCcmwxSWZmTUx3ekJrV2VaNW51TTRWajNJUUw1V2dOVnE5Y3FWS3ovLytjL2YvdmEzdzdJcEpDRUEyN2I5TGRzWmpPMUM2aHNNTmtnMUljUTBUZnhQLy9SUERlRUFqdU9xMWFxbWFjd053Tmd4TU9rS2dwREpaR2hqd2NDSFJBaXhMR3QrZm41aVltSjhmQnhlbjVxYVl2N1Z3d25VQVVJclFOZ2tQU1JWQUFESGNicXVLNHJpZVI3VHhvemRRQWpKWnJQeGVMeEJGVHVPd3ovNjZLUCtUa0dRUjFDcjFWaktDV00zK0JmZnNOTVBDbHFjWUVnOHoyZXoyVnF0cGlqS2l5KytlUGJzMmRuWldaZ0dBaHdiNCtDaGRZRFZhalVXaTIxc2JIUm9tM2JBZ0ZXcUtBcW9ZaFlDWU93RzJremEzemdJMXpka3gwODk5UlJZQjdpK0Y2R3U2NVZLaGJtZUdMdkUzOGtjcWdmOXpxZ0Q5clg2TlNuTm1JVy9zOWtzQ3cwY05tZ2RJQ1N2eEdJeDJINkNTc2hCeXFmL1IxRzlMYmUvRlNDckEyVHNFaENodnI0K2F1YUN2T202empWNG1TQklFTnhRR2IwRDl1MXhybWxhdVZ5R3poV0I3RFZBQndPaXovTjhNcGtVUmZIYjMvNzI4dkp5TXBtRXhvSnN2ZFh6VEU5UFF6UGdpWW1KbzBlUENvS1FTQ1RpOFRoSUprZ0lPdGpxVm4rNkg4ZHhwbWx1Ym03Nm13RXpDNEN4UzhBdmE1cG1nM2p6UE05LytNTWY5a3VZNjdxcXFnWXpURWJ2UXJ2NmN4d1hocklyZ09mNU43M3BUZEJZc0ZxdHNzYUNQUS9VQWM3TnpaMDllL2JsbDE5ZVgxL1A1WEpoRU1pV3JRQ0RIaFNqMTRCOGJmOHJHR1A4clc5OWkxYkN3SXF0V3EyeUpCVEduaFB5eG9KSGp4NzFQTy81NTUrSDF5Rmd6T2dsYUIyZzY3cGdrb2F6RlNDckEyVHNIMzE5ZmFJbzBvaUE0emlDNjdxME9zQWZDMkIyS0dQUENYTmp3ZFhWVlYzWFpWazJER044Zkp3MUZ1d2xDQ0hnM1VrbWs4VmlFVm9DaDdrVklHSWFtTEVQUUVRQXRoS0FWMXpYNVI5NzdESElGQUJUVk5PMFlFZko2SGs0am5NY3h6Uk5RUkJDVW80RlZRTTh6MWVyMWNIQndaTW5UeUxXV0xCWGdCREE2ZE9udi9uTmJ6cU9vMm5hME5CUXFFSUF1cTVESzhDUXVDVVlQUW5OeUlhSUFJaWZaVmtjN2UwS1BWOGR4d2w0cEl4ZUIwcFJYTmN0bFVvMEFZVUVEVUlvRm91TmpJekFQREUxTlhYcDBxVkNvUUJUQ0NPaVRFOVBGNHZGdWJtNUwzM3BTK2wwMm5WZFdnY1lPT0NIcUZhcmxVb0ZYR0poYUtmQjZGVkE2aHpIb2JNOENDSCt4amUrQWM0Qmp1TVVSV0U5Z2hnSEE2MGVoTWFDSVhITTBoeGFTWklFUVJCRmtWVVBScGVabVpsaXNWZ3NGalZOKzV1LytadXZmZTFyb1FvQk9JN2pid1hJdEM1anZ3SDlsc2xrYUY4QTB6UmZieGpzZVo1dDJ3ZGZIc000dElBdjFEQU0xM1hUNmJRb2lnR21DRkJmR2NkeHNpeGJsdlhTU3kvZGM4ODloVUlCcWdkUG5UckZub3VvQUhtZHhXS3hVQ2dRUWpSTmUrcXBweUFFRUxnRlFNVytWcXRCQ0FEZVl0TEZPQmhzMjQ3SDQvQTN4cGgvN0xISGVKNEg5eXhMQ0dBY1BMUjZFR01jaGtndHdQTjhmMysvcXFyUXVYMXFhb28xRm93S3RMSWpsVXE1cm12YnRqOGpPbGhvYnF5aUtFR1BoWEY0Z2JRQWNBendIL3JRaDhBeU5VMFRGSEVZSGhYR29RS2t6alJOUW9nb2lpRVJRcDduUlZGVVZiVldxLzNpRjc5UVZiVllMSjQrZlpxbENvWVphQVJVcVZRa1NhSTdSWVZrUDBEYUNoRGF0Q0VXQW1BRUFTRWtGb3VCQkhxZTkzbzRnQ1lMTUs4VTQ0QWh2aDNUSGNkSnA5T0NJQVJiUFlqcVcyOGxrMG5Mc3Y3a1QvN2tMLzdpTHhLSkJLUUtzajJJUXdoTXFHdHJhd2doWGRmWDF0WUtoUUsxS2NPUUJBQjFnTkEzRTk1aXlwWng4SGllNXpnTytNWTRqcnZ0Q1VBSWFab1crSmF2ak1NSlZkTVFHb0NHcWY2T0ZzR09TaENFUng5OTFIWGRYQzQzT0RnSS9nQm9MeGpJd0JqTlFCSEg0T0JnTXBtY25aM2QzTndNandYZ3J3TUV0UnZza0JpSEhGamUwTTJFK0E5OTZFTUlJZWdRd0h4VGpEQUErZm5nczBMaGNKbUNWOW0yYmMvemFQWU1zd05DQWlRQmFKcTJ2THc4TnplM3NMQ1FUQ1liZGtnUEJFTytuSFVBQUNBQVNVUkJWSmp5UGMrclZxdXFxcktKbnhFZUpFbUNQMjYzYW5GZGwyNGtHTnlvR0F5RTdtd3NtRTZuYVdQQllPRjVQcFZLR1liaE9BNXJMQmdTQ0NHenM3T0xpNHZQUFBPTXBtbi85Vi8vOWJhM3ZTMlJTSVJFbFhFY1o5dTJvaWlzRHBBUkVrQzd3b3dQTWltZ2VubzI4ZTJneFdBRURteW5CdFdEc1Znc2NEc0FWblh4ZUZ3UUJGVlZCd2NISnlZbUppY25nNDFaSEdabVptWm1aMmRQblRvMU56ZFhLQlFNd3poOStqU3RBd3hxVlA3WWxxN3J0Vm9OSkllK0c5VEFHQXdBaWdKb2Jnci8yR09QUWRFcU5BbGdoaW9qUElBcjFUQU1oQkFORFFTdVJubWVqOGZqdXE2blVxbTN2dld0Q0NGV1BYancrRU1BaEJCRlVWS3BWQmk2VUZNUlZSU0Y3Y2pLQ0NkUWh3VjVWN2R6QW5SZGR4eUhHUUdNVUVGYnE0SkxJQmFMaFVSRWVaNlB4V0tibTV0cmEydUxpNHUzYnQxaTFZTUhDZFFCTGkwdHVhNWJxOVZxdFJvVUJLSVErTnRwSFNCc25CMkdJVEVZZmtDTENvSUFIdGJiUGJSZDF3MThnY1ZnTk9QdnNPYTZiaXFWQ3JheElBQUpOTElzTHk0dXZ2TEtLNk9qbzRxaVBQamdnNnl4NEg0RERvRDUrZm1KaVFuRE1NcmxzaXpMNENVS3RyaUoxZ0ZDSzBEcWEyVVdBQ09jT0k0RGlsUkFDQkZDYU1BMXdFMWRHMTVobW5RMytLOW5iMXhKNkxWZXFWUlNxWlFzeTNRTGxrQUdBNlkweDNHU0pFMU9UcGJMNWY3Ky9tcTFldXJVcWRuWldkWklZSitnclFCZDE3MTE2NWJqT0lWQ2dUb0FBcThEUkFpcHFncVZJejJUQk5CN21pUW9RalhIUVZyQTdiKy84WTF2dUs1YnFWU0NHZzJGWHBHR2krWC96ekNFaE1PUGZ3T0kzbHVJRUVMaThYZ3ltVVNoa1Flb3NCMGJHMHNtaytWeUdUYXRvVE1XWTArZzF6TVdpOFhqY1VtU2FOZXpZS0YxZ0lxaVdKWVZCb0hjVy95YXBQZjB5WDdUSUE4aFVjc2d0SDE5ZllRUUFXSUJCN3lWdGYrNndJOTZudWQ1SHZnazZGYWJ5SGV4QXI5cVVRR2M1eHpIY1J3SGJWT3BvdXlCYStodkxBaUpZSUZYRFNDRU9JNUxKcE1yS3l2UUZXNWpZNE5WRCs0aGhKQ0xGeS9DanNCUW5KblA1OFBUWGhwdWVxMVdjeHluWjdaZzlXOHM1N291ekJGK3pjem9qSCtPbzZzeWp1UDgrcm01SE84Z3J5M011UWdoL1BXdmY5MDB6VnF0dG44MmRYTU5GVXoyVExZT0FJd3g5TUFIZ3dDMXVoMVJCQ3paVkNvRmZhL0M0QTBHZTNwemN6T1R5ZHg3NzczejgvTTNiOTVFdmlVc1l3Zk16TXhNVGs2ZU9uWHEzTGx6WVBZbEVnbW9BZ2pEVFVjSTZib09WUUE5OEV5aCtsbEFaMW5IY2FCNlBPaWg5U0F0VjJ2Tjd2RDlFeXBDU0RhYjVUaU9mL1RSUjIzYjN0ZjZRR3J2dUs3ck9JNXBtcFpsV1pabDJ6WklHQXM3N1N2d1BOdTJEV29MUkMzcUR6YXRHa0FJaFdmdlFkaUcyREFNNkNrRU84V3h4b0k3aHRZQlB2ZmNjNmxVQ21NY2o4ZkQwQW9RMWFPcXRWcE4welJRY1Qzd1RHR01IY2N4RE1NMFRkQVlRUStxUjhCM0FpL1N4VERvWjJweStYMEcremNwUTB0V2pESC9nUTk4d0xJc3FBL2NxeDlvV0d0Nm5tZFpGaFVzV1AxMy9pNWp6NkdtQU9RdFI5MHJRTmRocG1uQ1poZ2gwY0t3NjRHbWFhcXEwbFVVc3dPMkN5SGt6Smt6bVV6bTFWZGZWUlRsRjcvNHhaRWpSeVJKQ3RiZlRtV010Z0tFZlM2Q0dzL3U4V3NBeDNGMFhZY3luSkJrMi9RTTVFNWFmZ1lNQXR1MllVWW1kN2J2Mi9NN0FxMENlSjRYL0tVQmUvVjAwZHdIYXVBME96ZkNvSzhQRmZTbWdPTW5Gb3VCU2tXUnZSZlVaSVl1QWxBOUdQaTV3S2hnd2JxK3ZwNU9wMjNibnB5Y3ZIRGh3dFRVRkZPczNUQTlQWDN4NHNXcHFhbTV1Ymw4UHE5cDJ0dmYvdll3dEFHZ1V5YlVBWkw2YmtBQkRtbVgwT2tmakduRVZIUncrSzg4eEdJd3h0RFNSeENFdlYzaytJTSsrQi8rNFI5b3A2QmRIcGVhS2pEVFdKYmx1aTZLNWtLejU0R2JCU25XT09pZDFuWVBqRCtSU01peWpFSVRMWFljUjFWVnovTlVWWDN5eVNkbloyZm41dVpZOVdCbmFBckZtOS84WmtMSXJWdTN3S0tpRTNBZ2s1UC9HVkZWRmJwWVJ2ZVJvUmNUTnV1eUxBdEYrWFI2RlNycTBOakgzeEo3OXpmTDh6eFpsa1ZSNU4vM3Z2ZlJwZ0c3Qko0VDI3WjFYYmNzaTIxTUhIN0FUd09aS1QxZytJUFVoU2MwQUNtWkNLRjBPdjNMWC81U1VSVFdXTEF6L2pyQVdxMm1xcXJmQWdnV2pMSHJ1aEFDaUxwbUF6K3paVmxRYUJQMTArbDVJRXhBZGZWZTZUZWU1d1dvc0FJTFlEY0hCUm15YlJ2eW9aRFAyN0Q3Z1RMMkQ4Z0RncTZyc2l5SFpPN2NHYURYd0swVmt1cEJjQmZMc214WjFyLy8rNysvNHgzdmNGMlhOUlpzeWZUMDlFTVBQVVRyQUdHclJ2Q0NCbjRma2E4T3NBZDJXd1ZyUnRkMTI3WlJmZkVXNlRQcWVlZ01DNUZjV1paM0dZZUNtdzVaQ1BqTFgvNnlZUmc3ZHAvUzRpakkrMFBNcHhSTkNDR3dMMDRZbXZMdUVwREpaRElaZUdOQjVBc05RQjVaUEI0ZkhoNCtjK2JNeFlzWEwxMjZ4S29IZ1ptWkdlaXc5T1NUVDM3NzI5OWVXVmxKcFZMK1ZvQ0Jod0IwWFlkV2dCRzFBUHpuWWxtV3J1dFJqd0FlV3VER3liSXNTUkxhNlFPQzY5c0hpS0tJLys3di9zNDB6UjBJQk0yU2RSeUgrWlI2QmxtV3d4QlczekgrUnlJZWp5Y1NDUlQwdWRCZmQxM1hOTTNSMFZHTThZc3Z2Z2p2TWp0Z2VucTZVQ2dVQ2dXb0hGWlZGVm9CQmk2QlZKWnF0Vm9QVkFIQXVlaTYzZ1BoREFiazlpY1NpUjAvS2JEd2k4VmkvSHZmKzE1STM5c0JHR1BUTkNIMUthSUdNb05DVXpvY3h4RUVBVHFoQmoyb1hRR1ZOcUlvaHVSY01NYUNJSlJLcFkyTkRZUVFQSGVIdVhxUUVESTFOWlZNSm0vZXZHa1l4bzBiTnhLSkJHU3FCajAwaEJEQ0dOdTJYYTFXb1kxSzBNUFpGUkQ0VTFYVnNxeW9WelF3VVAyRzJyYk44L3pPa21iQWRPQjVubi92ZTk4TFBmdTJPd0tFa0s3cnpLM1VZMEM4MExadGp1TUVRWWkwc2dBM2xXVlprUDhTOUhBUXF0c0JITWZwdWg2THhSekhtWnljL0xNLys3UGp4NDhmTmxOZ1ptWUdJWFQ2OU9tbm4zNGFGalNGUWdHU09vTWVHa0lJUVg2Sm9pZ0J4aVAyQk5wT2c2N1dnaDRSWTIrQWRCbllybUpudXZwMlY2SXZmdkdMMjlyMHdsOG5FM1VYR2FNZDFKMGU2ZEFBQU9lU1NDVENFQnFndUs2cmFkcmc0T0FmL3VFZm5qdDNEdnpoaDZkNmtJWUExdGZYb1RvcEhvK0hRWm5RS1Y5VlZWM1gvZDFhSWdjOUYwM1RXQkZncitMWDFkdXFIZ1R4RUVXUmY4OTczck1EQ3dMY1NreWtlaHRvTHhpZWlydWRRWk9oNEZ4Q0ZScFFGT1h5NWN2OS9mM1piUGFRVkEvNld3R3VyS3pNek15ODlhMXZoY3FVb0lkMnU1b0QrajMzd0FvSHZIcTFXcTBId2htTXprQ1A1MWdzdHExdmdTZEFvT25UM1doNWtLUmFyY1lDUzRjQnlQbHdYVGVSU0VTM2FzRGY1UTJxQi8zbkVxQU1RN01tWGRkZmVPR0ZzYkV4VGRONnZyR2d2eFZnTHBkVEZPWHMyYk9ndVFMTUs2S1o4OWpYQ2pDNmhpODlGOU0wTlUyTDlMa3d1Z1NpVndpaGVEemVwYk1UUk1KMTNkdWVnTTdmb2U5aWpGa1U0RkRSRUhhS3REWUJId0NjQzNWdkJEWGQwbC9uZVQ2ZnoxdVdKWXJpOHZMeTJiTm5aMmRucDZhbXpwOC9IOGpBOWcrb2c3aDU4MmFwVkVJSWxjdmxUQ1lUZUtkbnZ4akFqZzhvYU90d2wvaHJHcWtGMEt0bUpZT0NNWWJGZVN3VzYxSjZ3VmpFWC9qQ0YxelgzVkpFd0ZHbWFacW1hY3dDT0d5QVNNbXlIS3F3K3M0QTE1Y3N5OGxrTWp6NjBmTThYZGVoVDNnK240ZWkrVjZxSHFUbnd2TThOS3VtemFrQ3J3UGtPQTdjNXFCREF4ek1MdkhYTkViOVhCZzdneEFDRzZ4dm1RUktINzF1Y3dKb05XQVlOQ1lqRUtEaURwTGJvN3RPUXI3cUdrRVFRdEtTRm1veGJOdCsrdW1uazhta3Bta0xDd3NuVDU2Y201c0xlbWk3WlhwNitza25uMHdtazhWaUVmWlg3T3ZyZ3o0bllRRFdUNHFpOUVDbkU2aHA3STF6WWV3TUtQT0c3UUc3bk5ueFgvLzFYMi81VVZDYTFXcVZoWmNPTXhBYTRIaytsVXJGWXJFd3BOZnRHTG9HaGNhQ1lUZ1htc0JZcTlVU2ljVFJvMGNmZi96eHFhbXBxYW1wNkxvRS9LMEEvL21mLzNsbFpTVWVqME81WnVCcXhPODJSejBSQWpBTWd5VUJISExnMXZNOG44MW11MDMxKzl6blB0ZWg1UkNWcDJxMUN0Wmw0TzQ3UmxENGxVc2lrWWpINHlpeW9ZR1FOeGJVTkcxalkwUFR0SHcrRCs5RzBRNmdkWUNtYVpxbXFTZ0s3RjRkdU15MGJBVVkrS2gyaHIrbTBUQU1DUEpHOUZ3WXV3ZHVQZXdRbUVxbE9rc0NLRUQrM2U5K2Q3c1B3ZXVRQ2tBZkZTWmJoeGE0OWFCbG9PS09ia01jOU5CMkNEMFgybGd3RE9mQ2Nad29pdkY0SEo1aDhGSkVxN0dndnhXZ3Fxcno4L1B4ZUp4YUFFR1A3clpyVTFFVWFJcUZRdUNXMkM3MHVZT0VCa1ZSSUFtQVBxUkJENUFSREZRQUhNZUJYVXpiZVliZ2s0U1EyeVdDTFEvbmVSN3NuUVh1c2pDNFRCa2hvYm5pTG9wNmgxWVBXcFpWTHBlVHlXVDNpYlg3UFNvd3NGUlZGVVhSdG0yb0hvekVua016TXpOUTRIRHUzRGxKa2l6TEdoMGRoWTVtd1Y1YldqdlhrRGtmNEpCMkRCVmRYZGVoRldCSUdtQXd3b09xcWgxU3VPQkZ6L1A0cWFtcHp1WTVUVE9KNk5QQzJBK28wd2sySXhGRkVVVndPVVVCOGFhVmtDZ0U1d0xWZzdJc3U2NDdOamIyeEJOUGZQT2IzeXdVQ21mUG5nMXo5U0RZS0pxbWZlOTczd09YQnV3SEdQajFSUFc3cktwcXp5UUJxS3FxcW1xa3JSbkdQb0V4aHQxSkpFbnFJQnVlNStGejU4NkJrZDZ3a29QS0dlaWV6VXBOR08yQTVWMDhIZzlWeGQyTzhUeFBrcVNRbkF1MXRBekRTS2ZUa2lRbEVva3dWdy9TTk1CcXRmcWxMMzNwYi8vMmIybkFLUEFyQ2EwQVZWV2xJWUNJUW1zYWFRZ2c2QkV4d2dzaEpKdk4wcUJBODd1dTZ3cisvMjc0QkNRb01SdVQwUm53U1RxT2swNm5RN0xtMnpFY3gwR1R4R1F5R1liOWswRGp4K054YUN4NDdOZ3h3ekFlZlBEQnk1Y3ZuenAxS2p6MkZoZ2x4V0lSMGdBUlFsLys4cGY5UHBYQU93TFJIWFJDa3Bld1kwQkVhN1dhNjdwUlB4Zkdma01JMFRRdG04Mmk5czhnLy9EREQ3ZWM1bWsrSURNQ0dGc0NyaWZETU1BRFRBT1drWk1jdXZodUNBMEVlQzdFMTFqUXR1MTBPaDJMeGFhbXBzTFRXSkM2SldSWmh1M3EwK2wwZUtJcUNDSG9jaFpkdDNsRFc4TWUyTnVRY1RDQVpoWUVvWGxKQS9MamVSNy84TU1QTnp1VVFBL1dhalhFRWswWjNVSEQ2b1NRa0RpQmR3d00zclp0ei9QQ3MzOFM1UHBDTjVoZi9PSVh1cTZIWWM4aGFnRUlndUI1SHRRbWhjUWhSUFVZRkRlRjVEN3VERnJUQ043WlNKOEw0OEFBRFF4UnpwWnZFVUtFaHBkUWZlVUJUbEZXRnNqb0hycFNvYUdCaUZZTklGLzNGUm9hQ1B4Y0lEUWd5N0pwbXAvNXpHZisvTS8vSEx4ODA5UFRnYVFJd0NRME96djc5Tk5QQzRJQXBTSjBnNGxnT3k0Z2hLQ3lpWVlBNEszSVNTTTlGOW9LTUxybndnZ0VqTEZ0MjVabHRlc2x6TGZjc2d6TVoyWnBNbllBT0tBc3krSjVQZ3hoOWQxQXp3VWM4aVJRRUczdXdmUHZmZTk3RVVKME8wUm9MSGlRTG9HWm1SbUUwT0RnNE9EZzRQejhmSzFXeTJReS9qckFZQytVdjNZdTZwTWxuSXVpS0Qxd0xveEFnT2VpWmE5dVFraUxFa0dPNHd6RGdPWlRCemhPUms4QjFZTUlvWjZwSGlTRWhPZGNZQnNlT3FRRGJpaEU2d0FYRnhkZmZQSEZ4Y1hGUkNJUm5oQUFJVVJWVmRoWk5kSnVjeG9DZ0wwTkdZd2RBNzNkbWpOSlNYTTRBRXdHd3pEb0p3NXlvSXllZ2VvdkNBMEU3aUxlRGJqZVpONTEzVVFpRVpMR3Q5QkZ3TFp0cUFZR0RpQTBjT2JNbVlXRkJZUlFwVktabjUrLzU1NTd3ckFmSUttN3phRU9NTkp1Yy8rNStPc0FtVFptN0F4L3BiSC9PUVdKYWl3UmhQaUJiZHVJeVJ4akYxQkZCbzBGWWVmNFNIYzBneGd6MkFGaDJEK0pFQUo3aDNNY3Q3R3hrY2xrQ0NIUVdMQmxqRy8zek16TW5EOS8vdno1OHpNek13c0xDNnFxM252dnZhR3FBelFNUTlkMXVES1JWbC93NEVBSUlPcm53Z2dEa09kSDF6RCt0L2lISG5xSVd2SHdyNjdyRUFRTmFyaU1Yb0lhb2Y3R2doR1ZMbG85aUJEeVZ3OEdOUjc0ZFk3ak1wa01iUEM0c3JKeTl1elovYWdlQkFmREF3ODhrRWdrcmwrL25zdmxvQlhnSHY3RXppQysyam13QUNJcVhjaDNMclZhRGJLeW9uc3VqTERoZVI2dEZhU09md1NKZ1g2L0diaHdBMS9sTUhvUDB6UTl6K3VCUFljUVFtR3JIdVE0VGhBRTEzWDcrL3N2WDc1Y3FWVDJ0bnFRSmdGY3UzYnRxMS85NmhOUFBDSExja2hXcUpDOHFhb3EzVUVuREtQYUdkRC92MUtwc0pRc3hwNER6d1ZORDZRQ2hwOTg4a21hMFFPOXFNcmxNcE0veGg1Q0RVOHdBaUNOSEF6TjZFb2FST1ZEVWoxSWgyVGI5cXV2dmpveE1XRloxc0xDUXJWYTNhVS93SjloQUdzSU9PWGRqblhYa1BwdVFGQUhHT2xGTTFXL2xtWEJwdTJSM3QyWUVVNGdUTmJYMXdjelBwakx0eE1EcWVGTUNERk5NN3AyTkNPMDBJd1R5N0kyTnpjem1Rd2t0MGRhMkJ6SHFWYXJrQ0lRaG5PQmdNc2IzL2hHVlZWVHFkUWpqenp5K09PUG56bHo1c3laTTQ4Ly92Z09Ea2d0QU5vSUVob0JoY0ZUQ0NwTTEvWGV5R0xHR0t1cVNrTUFmcDBjN01BWXZRUVVQTWZqY2VUZlJmQ2hoeDZpMmM1UVdnUExHaVo4alAwQVJBc1VkeXdXUTFGV2M3U3hJSGdGQW45cXdCQ0JDZHMwemF0WHI3N3puZTk4ejN2ZXM3UFFRSU1QZ09NNFNaTENFd0x3UEUvVE5PbzJEOE9vZGdhSVRiVmFoVHJBd0tXSTBhdlF0RC8vdm9LRUVQelp6MzZXT2dkczJ5NlZTc3dCeFRnQW9KTmxKcE9oSzh2SUNaNC92MFlRQkgvbWJlRFpndERiQUNveW9QODN1bk5lNzN5RWl4Y3ZGb3ZGdWJrNVNMbnY2K3VqQ1JCaHFBTzBiVnZUdEpCRVlYYUcvMXlxMVdyVTl6WmtSQUpZSk9UemVhcXBYdmNFb0hwUkN0c3hpSEV3UUJtMGFacUNJRFRzT1JRVnpVNUhTNnNHL0UwU2czcU82S2dnVmJCVUt0SEwyMDFqUVdnRmVQcjBhV2dHakJESzVYSitDeURZazRKS0ovOXVRRkdSRnNBL2JOaXJ2Vktwc0RwQXhzRUFzaGVMeGFpYUlvVGNMaEdFLzRBbUc5RjZxQmpSeFY4OVNFTUQwUlUvVW04c0dJYThPUUI4K0k3aitLdjVPOWdCdEFyZzJXZWZqY1ZpRUQ0TXd3cVZ6cDMrRUVCRW9VSmVyVllWUlVFUjlJRXhvZ3RZbktCdlVZTVI0SGtlQzBveERoaVFQZGl0cWdlcUJ5R21Cdlc0SVRrWHFCNkUvZjFjMTRVTDN0SU9PSFBtRERobU5qYzNmL25MWDJhejJWQWxBVUFkSUhXYmgyRlVPNFBqT05kMW9RNHc2aldOakdoQnpVMVpsbEZEeDBDTXNlTTROTWJHTEZQR2dRRnpwNjdyRFkwRkl5cUVFT1dGeG9KaHFCNkVBVUJqd1ZLcGxNbGtNTWJRVFlqYUFkUFQweGN2WG9SV2dQUHo4NHFpVEU1T2d2TWcyUEhUUmJObFdiUVZJTHdWT2ZHZzRReG9CVWozYUVVUlBCZEdwSEZkMTNWZDJ1a0xmL2F6bjRYb0ZQU29Db25oenpoc1FHaUE0N2hVS3BWSUpNSlFoTFpqNk5wT2xtVi9JbTZ3Z0tFUHZuVFhkYWVucDZGNmNHNXVEajZ3dnI0dVNWSmZYNThrU2FIYURjZ3dET2pTR0dsb0swQlZWY0VhQ01NVlpoeENDQ0c1WEU2V1pmQU84dTk4NXp2QklJVnQ0SmxOeWdnRUd2UTFEQU1LQi93dkJqMjY3VUdIRGQ2MWtJUUdZQmtOem9uWFhudnRiVzk3MndjKzhJRnF0WW9RZ25UZ1RDYVRTcVVDRHdIUWEwWHJBRzNiam5vZElBMEI2THJPR2dFeGdnWHlsbWgzRS81ZDczb1hQUFBRSVNEbzRURU9POUJReUxLc1dDeEcxNk5SVkpldzJuTmQxM0VjbnVkRDR2dmxPSTduK1hRNmZlUEdEWXh4dFZvOWNlS0VxcXFhcGtIOElsaDd4VzhCd0g2QU5CNFJPUXVBM21ob0JWZ3VsK2wrZ0F4R3NHQ000L0g0NngwRDRYbnpiMGpLWUFRSUtFMW9MQWcrcStndW0yaEdXendlRDhQK1NiUmJ5Sy8vK3E5RFk4SDUrWG5UTkxQWkxNUUl3ekE4aEpCcG10QlJpZzRtY2dKQWt3QlVWWVVxZ0RCc1FzMWdJSVJjMTZYbTllM0NJWm9WR0Rsem05R1R3TnhaS3BWU3FWUXFsUXBEVTk3ZEFKNDJTWkw4U2JrQkRnWWhKQWhDT3AwMkRFTVFCRm1XL2M5K3NKNEF6L04wWGUrQkVBQ2NpNklvdXE3N3p5VzZaOFRvR1dEWkQ0M2FibmNNZ05hbnpBaGdoQWZRbTRxaTJMYnRieXdZUldoYXVPdTZVSGtmaGdlTjR6am9JaDZTQng4S0xIVmQ3NEVGQ1JTSlZDcVZIcWhwWlBRWVlKNUNtQkxSRWtFYUMyQ3VLa2FvZ0VhV2p1TmtzOWxZTEJiMTZrR0ljOHV5VEx2NEJVZ1lsdjUrVE5PRURjeWlXNmhNUXdDNnJsZXIxVWpYTkRKNkc4ZHh3REY1T3crSWRoRUppVHBnTUNpUVdiMjV1WmxPcDVQSlpLUkRBelRqWFpJa1dnRVI5S0FDaGxhRjJMYU5RdU9XMkJtMEZTQ3JBd3dRWm05MUExMzVDNFFROEF3d1lXV0VFeHBKQmVkcU9wM21PQzd3Smp3N2d6NWxFQnFnd2Znb25zdnVnUk4zWFZmWDlhaXZRMkRSRDd0TG02YkpRZ0FCd2k1N04wQWlJSUp3Z091NjdLb3h3Z3oxc2tMVmVEYWJwWTBGb3dodE1Bd3BBaUhwekhQQTBJdGdHRVlQSkNSQjNLcGFyZEpXZ0lmV3RndVdTRXZSd1FCaVNlZDlBZnlUUFpDSncraHRhUG00YmRzYkd4dlpiSmJXdVVaVTFmcERBejJ3ZjFMMzBOT2tyUUNqbmdTQUVGSVVCYlpzRGttZEJZUFJEaEJMcUJKRTRBa0F0d0RyWXNHSUNvU1FVcWxrV1ZZNm5ZNjY4VW9JQVdkNEdLb0hEd1phQjBoYmxFYjNyT0ZjWURlZ3FKOEw0N0FCVllJQ1pBWENTMHg4R1pFQVBNbTFXZzFDQTlBS04raEI3UkE0Rjh1eXdBNElTZlhnL3RGaklRQm9CZWc0RGtzQ1lFUUlNRjV2R3dFSUlhcEFvK2lPWXh4YU9JNHpUUk5DQTlCWUVFVXd0NXltTzdpdXEybWFMTXV3ZlIrZEkzdmpxZlR2QjJpYUpvcmduUUxvVFlGV2dMRDVBbTBGMkJzM2kzRVlnSm9BanVOdUp3YlNWd01kRllPeFBhQk1nRFlXUkZFT3E4UHNvdXQ2TEJhVEpLbjNMQUNvQS9UdlVoYkZzNlBuVXFsVU5FM3oxd0V5L2NtSUNpQzNrQTRvd1AvUk40SWRHWU94TGZ4cFdSQWE2QUYzdW1tYVBSWWF3Qmc3amdQbkZWRUhBQVhPcFZLcDBOMkFlc1pXWXh3MllQMHYrSGRuaWZURHlUaWNnUFMyYkN3WVVYQjlBejBJRFVUNnFhUWhBTG9iVUtSUGgrTTRhQVVJZmxSV0JjQ0lLUEJnd3V4LzJ4UEFoSmdSWGZ5Ynp6WTBGb3pvRW8yR0JpUkpncjBISXdvaHhEUk4yZ29RUmRQZFNBVUpXZ0dpNkZzempFTU9xTWZiSllMMHJ4Nlc2V2E5UTF2UGJobk04MnV1RG9rL1BYejFJZ1FOMXNLZVE1SFcxREI0Y0tIVEZJR2dCN1VOSU9KSVF3QW95czhJdEFLc1ZDcXNGV0I0NktDS0c3UjZ1NXZWa0p2U1RyMzM1TDJtbmdESGNRUm9HeFRkTmRPV2dKVkRKUU5PVXhBRVFSQjRudWM0anY2TDY4QW53VWNDSFJYb3Y3VEJBajBhS0lWZXZYclJndDRVVlZVYkdndEc3Z1pSMVFPTkJXbUtRTWhQaEk3UXRtMjZHMUJFMVNnTUd5Sk5sVW9GNmdBamVpNjlCN2tUVkgvR2VaNEgzVTRWTy94QjUzaTZDS1lxbmVJNERycFR0NGY4Y2RzeDFFNjZIUTd3dnhwZC9IZUxUdndJSVVFUVJGR1U2OERHTFZSSzZOemY3ckMwdVJJRnRKc2YySnVaMWdnMUhERHFGemFLUUFFM2JTd1k2WUFYYmEwVGk4VWdOQkRtYzZGSkFMUVZZSmhIMnhrNGwxcXRwaWdLcXRjQkJqMm9RMGM3eFE0VHZDaUtvTkpCdDhkaU1mOENiOHNWR3N5QzFBS0E5RlhETUF6RGdEOUF0Nk5XTmtFUENNUHJub0NJN3NYU0FEWHVNTWF4V0N5WlRLWlNxV1F5R1kvSFpWbUcrWjUra3RwQnREeXlNeGhqa0syR0NSNUV4N0lzWGRkMVhWZFZGYVFITm1UcWJWc3l6TURGaCtwQjJITUkrUmFwa1lPR0JqelBpOFZpNGF3ZTlOY0IwaEFBaXFBUEJ0VjNBM0pkdDFLcDZMck9RZ0FCUXJQV01NYWlLTWJqOFVRaWtVZ2s0dkY0UEI0WFJSSG1lL2l3ZjRGTENJR1ZmV2RBcFl1aUNLMjdxYmlDYmpjTVE5TTBWVlZydFJyWUJDQWJQZEJnbDg2RFVmVUUwRnRGYlVPZTU1UEpaQ2FUeVdReWlVUkNraVQ2Nk1JSElEdXAzWEU2MHk3YkhHTU12MHVMMU1HVzFEUk5VUlJWVmFFM0tzZ044eEFjTUEzVmd6MndUMCtZR3d2U09zQWUySWdFK2xCQmNnbXpBQTZHbGl0K2p1TkVVVXdtazZCajQvRTRLSFovY2p1czR6c2ZzQU4wTG16K3VpQUk2WFE2azhrZ2hGelhOUXdEMmtNcGlxTHJPbFNJTk5nZjBRS3VIdjdUUC8xVDB6U2pZcTM3RjBCZ0lmSThuMHFsY3JsY05wdE5KQkt3M1BjbkFhRDlYNHY0Yjc5LzllKzZybW1hNEU2czFXcDB2MVRtSGpnWXFMU0FuT1J5T1VtU29sNDlDQ2NGYnMrUTZCMmFCTkFiSVFESUtWRVVKWVR1bHQ2R05xMFJSVEdSU0tUVGFhajBnZVYrUTNZWE9oQW5rLyszcU42MmJWdFYxVXFsVWk2WE5VMXJ0Z1lpSVRZd1RsbVc4YWMrOVNuYnRpUHgzTkswRGhDVVJDS1J6K2Y3K3ZwZzd2ZUhpOElERlE3SGNjQTlVS2xVVkZXMUxLc25nMHpoaElvMzZCUVVuUWUxSlhBdTFJRVo0TG5RRUlCbFdmNVdnRkdFbmt1MVdtMW9CY2pZYy95aVFzTzRraVNsMCtsc05wdEtwU0NHRzA2dFRsVzM0emkxV20xemM3TlVLc0VPVXY2Z2M3Q0Q3QVpZVHVBLy91TS85Z2Z3d2d6NExnUkJ5R2F6QXdNRGtQdmRFTmNQMVltMDlCQjRuZ2Y3anBmTFpVVlJXbG9EakgzQzg3eDRQSjdKWkhpZWo2NUxnRnJEUE04SFd6Mkk2M1dBTks4b0VyclBENzE2SE1mWnR1MXZCY2pZVjI3N29qR1daVG1UeWVSeXVYUTZEU2t2L2o2MlFLalVZN043d0RUTmNybGNMQmJCZ1VSTmdUQURWcThnQ1BpUC91aVBRbTRFNFBwK1I3RllyTCsvZjNCd01KbE1Zb3doSVIrRlRENDZRRVVIM0FPUVFsV3RWa3VsRWxnRDhEcGJmK3dybnVlSm9wakw1V2hqd2FqSVR6TVFOSTNGWXJCbU9yQVRvYjhGV2JGUmQ2dkFvbC9YOVVxbDBodFowcUhGUDhGTGtwVE5adnY2K21EdVI3NXdBSXJPVTBrdFNOakhwRnF0cnEydGxVb2wyS0F2L01wY0VBVDh5VTkrTXJTamhDdm91cTRvaW9WQ1lXaG9LQjZQMDZYL2JxU2s1U2szdjlqdUozWXZvSDdSSVlUb3VsNHVsemMzTjJ1MW1qL0NGTnBiRTJsQTcwTVNTVzljWVZFVUQ3NnhvR1ZaRUVrODROL2RXMERKUU5aTzFNOGx0TUJGdnQya1ZoQXltVXcrbjg5bXM1SWtJZC9jdjFkNnRadlhXLzdXTHVjVUNBY1FRbXExMnNyS3l1Ym1admhOQVl3eC9zUW5QaEgwTUZwQUUrdDRuaDhZR0JnZUhrNGtFanVRRlhycC9UNERtcWhQMC9VN0g1Q1duU0JmOFVsRG04V2RGVVExK0FaYzE2VVJKdGh1TlZvUnBxZ0F6eVFoQk1wSnd2eUliZ2tkUFBURHdBZFNQUWhKQUQyd0d4QThkT1Z5MlRBTVpuYnZPVFJDQktLU1RDWnBGcGZmbFl0MnFqYjlYMittbXlNM2FQVUd4YjREclE1ZkJMMnRLTXJ5OG5LcFZLSUJnaEJLRjhkeCtCT2YrRVFJN1Yrd0dmdjYra1pHUnRMcHRILzY3M3dkNlFmb1hhVGRBRkZkSEUzVGhFVU0xUFRidG0zYnR1TTREZHNvd01RTS9TZ0FXWmFoWVF2a1pOSERvcm94UzcvdWw1NHVCd3pBTVNIQ3RMR3hvU2dLdFNWM2VpMFpqZmlyQm1LeFdDNlhpMjVqUVFvTkRleHI5U0RvN2g0SUFhQjZIV0M1WElaV2dFRVBxZ2NCbFNpS0ltUnhaVElaUWJoajMxcTBUUTFKYnh3b2RyL2RCcEVwVU9iUXc0MHFkdWlGNHc4MGdHSUh1eGwyN29aTk91QnZmd21pdjB0Qk53UDJ2d3NUZjdsY1hseGNWQlFsbkdxY0VCSXVUd0FOTkNZU2lkSFIwWHcrRDBxbnk2LzdmZXcwSngvcWZSVkZxVmFya1BkTFJjUS81YmU3cjlSVkFFRGRLc2hLUEI1UDFZRktWaWpjUXUxdGd1NnZBMlN1YkkwaHRBQUFJQUJKUkVGVTFXcTFZckZZS3BWb3hrQ0hvVEsyQzBRb2VaNm5qUVdESHRIT29UNEFVUlJCQ1BkV1RuQzlPSXJ1QmhSZE9ZUm51VmFyVmF0VkZQRnpDUlZVMGNFcVB4NlA5L2YzOS9mM0p4SUpWRi9hYmV1QVZIL1NEb0RRNU00MFRWVlZvWWNQZEdTQkZSM1lBWFExNzE4UXRoc3FWZXl4V0N3V2k4bXlUUHZOUUpNQVdvNExxV25iTlg5Qms2K3VyaTR0TFZtV3RSL1A1aTdCSC8vNHg4Tmpuc0ROR3g0ZVBucjBhQ3dXZzM1UDNmaHpVTDJMSkVMSXR1MWFyVllxbFVxbFVxVlNBUXVBQmkrcEZia3RWNC8vbnRGYVZRcDRDMkt4R05TMzBHd1gycmZBYjRyNlhWVmIvaHdZajdxdWIyNXVGb3RGWGRlUkwwYkEyQlBnYXFkU3FhZzNGa1QxY3hFRVlRK3JCNG12RGpEa1NjUmJBdjRTei9NcWxZcW1hY3dCc09lQWhLUlNxVUtoME5mWEIrbTNYYnJaNkp3TlNwSzJBclJ0VzlNMHlLRUdsUTVWMWpEZiswTUFEV1ZXMjlMdG9Oajlsa29zRnN0a01xRFNJWWtobFVxQlFVQTNrZG55VjJpdWdLN3JDd3NMR3hzYm9hb0Y4endQZi96akh3OTZHSGM0QU1iSHgzTzVISzBjN2ZBdHV1Nkh1NkpwMnNiR3h0cmEydWJtSnN6Nk1EMUQ5OGY5Nk90RWgwZURTZkF2M1BKNFBKNU9wL1A1Zkg5L2Z6NmZUNlZTa0xvRjB0T2xoOER2MjdCdHUxUXFRUlVLWXVrQ2V3ZDEvY215bk12bGVxTjZjQTlEQXcwaGdFakxHMndxVVM2WFdTdkF2Y0lmYVFXbldxRlFnQWFkM2FoeG9HSEZqeEF5VFJObS9mWDE5VktwQkYxNzRjRnNUdXJhRDZjWHFvY0w0UTk0b0RLWnpNREFBTmczc2l5anVqNUhYWmdDTU94aXNiaXdzR0RiZGtpeUJBZ2hvZkFFd054WktCVEd4c1pFVWR6Uy93OFhGRmJKcXFxdXJhMnRyS3lzcjYvcnV1NS9DejVNYzVpM0RPUjBLYXp0UGt3REIvU01xTzhJbW1DQTlQVDM5NE01NmRVM0owVGRXYXp3aEVBLzg3VzF0VXFsUWlKU2tCb1ZQTThUQk1IZldERHdSMlBIa0hwalFhcHJ0bnN1eEZjSENDWjExSzhHeGxqVE5IaHdvbnN1WVlQVTI3ZjA5ZlVORGc2Q082M0xHQzVOb3dPTmJkdDJ0VnBkWDErSHRWeXRWb01lbEp4dmwxZmtjeGcwSDIwSG1yemRCK0JkMkcwT1hxRXFuZU80VkNvMU1EQnc1TWlSZ1lFQldaWUpJWFMvbU02L0t3aUNwbWszYjk0c2w4djB5QUVTdkNjQUZoazh6NCtOalEwT0RtNXBPY0sweC9POGJkdkZZdkcxMTE1YlcxdlROQTBoUlBlTDlJZjVNY1lOMjVuc2hnWWhhejVtc3hEUVZTYmRxRW1XWlhoYWhvYUcrdnI2b0VnRzBoSmJIck1acUVLQmd0UktwUkwrS3BTb0FDa0NHT04wT3AxS3BYcmpldElVZ2UzaUR3SHMrYWdPR0Z4dkJhaXFLcHYrOXdSY3I5OFdCS0cvdjc5UUtDU1RTVkxQcnUrTWYrNUhDT202dnJHeHNiS3lVaXdXSzVVS0xZeHFsd1hWY3E3MWh4SjJiK1RSNDBDY3R6a3hFRlE2QkQ2R2g0ZEhSa2J5K1R6UDg2REp0NXpDQ0NGTFMwdExTMHNRd2doUTFSQkM4TWMrOXJHZ2ZoNWpEQ0dBNDhlUHA5UHB6anMrRVVJRVFlQTRUbFhWeGNYRnhjVkY2T3pSTVBmN3J5YXU3Mm0yc3dZZzdVU05XZ0ROZDQ2KzZJOFVORWdQalNmQjdoUkRRME5Iang3dDcrK1B4K09vYmcxMGFRb2doQlJGV1YxZExaZkxjQ2xRS3dPWjBUMzBIaVVTaVd3MkMvSGpvQWUxUTZnMDhqeFA5eDdzL3J1ZTUxbVc1ZlhFYmtDTzQ1VExaZE0wV1FoZ2wvaWQvNklvUXZjMmFOK3k1Wk5DcFJFQ3VKRDF2TFMwVkN3V2FYOFVHZzVvV012NWo5Qlo5M2JXMjlzQ0poMUpraHAremo4RlFLSWlXRUpqWTJOSGpoeVJaUm4yTk9yOGk0SWdiR3hzM0x4NUUwSURBY29rL3RqSFByWW5wbFAzK04yTWZYMTl4NDhmYnhjQ29Cb1pwdjlLcFRJL1A3KzR1QWliZXpZdmY1dHZsZWQ1aG1GczkrdzZpeHA5cS9rREhhNWt3K3ZVam5aZGwrTTRzQVpHUjBjSEJnWWdUYjNMTFo3Ym1RS01uVUZ2azlkempRWHBMaXlvL2JuMFdBZ0FJY1J4SExRQ2hBY05SVHp4TXlqb1JhUFRmejZmSHhvYThyZHY2ZngxU041Q0NLbXF1cnE2U3AyNDFMbmJwYTNaV2ZHMml4UTBMOCs2UEd1TzQyQjUxdElPOEI4Y3dnR1pUT2JZc1dQSGpoMUxKcE5RblFoUmpPYlZLVUpJRUFSVlZhOWZ2NjVwMm83RGRydmg5alVCSStBZ2Z4WFhHd0VORGc0ZU8zWU1RVmlpbGUxRzVhTlNxVnkvZm4xeGNkRTBUVUVRcUM3cmNNbmdMZGovY1dmUjBIWUg5d3RjbDBmMlAwSU4wZ04vVUdzZ2s4a2NPWEprZEhTMHY3OGZiQ05xSHJXekxWQ1RLVUJZcnNCZVFPNXNMQmpweVFQa2hKYXdkbDR0d1c1QUtPSjJEd3dlV2dHaUtKOUxlSURJWS9QMDMwRTFJWVJnQ1djWUJ1VEVyYTZ1cXFwS2wzWU5IMGJ0dFdVSC9BcTVwU1d4c3pBQmZENGVqM2YrcnY4dDBOakpaSEo4Zkh4aVlpS1pUSFl3cGtGUjI3Wjk0OGFOb0ZJRUFnc0h1SzQ3T2pwNjlPalJkdUZHVXE5NHJ0VnExNjVkdTNYckZsUllRdmhreTN0SmpUNm9LTjNCalNmMVRLSU9IMEJkYTVZdGo0bnU5QTFBbHMzWTJOakl5QWpzWnQwNTY4UnZDbFNyMVpXVkZTaUFaaFZRdTRmNEdndnVMSzRVSGtEelFtUEJkaC9vbVRwQVNLRUZyMkhRSTRvOHNFVHA2K3NiSGg2RzJIOEhJYUUrR0VFUVhOY3RsVW9Rd0sxV3F4QUc3Unk0cEJwK1cwWUEyc29SdXdNN0FBNGJqOGRoM3RueWkxVERRMGxhTXBtODY2NjdKaVltWXJFWTdhN1IvQldRei9uNStmWDE5VUFXYi9pakgvM29BZitrNTNuajQrT0RnNE1kTEFCUkZCM0htWitmdjNyMXFxN3IzVS8vL29OZ2pEdTNOKy9zdXFmV2FNTzdYVm9BRFFmdmZFeDZaT1J6TGtIUjJ2RHdNRnl1V0N4R0hRTWRmaG91VkxsY1hsbFpxZFZxZEh1Q0RrTmxkTWJ6UEVtUyt2cjZvS1lqNk9Ic0hCQXRDQTAwVDQydTY5SlZTNlFGeHQ4S01OTFdUT0RnZXErMmJEWTdQRHljeVdTNm1mNUJYZXU2dnJ5OGZQUG16V0t4Q0dGdnY4Ky9zdzVzVnZYZEwveGFhdXlXeCt6bTRLUmVJTERkcVFjdW5ldTYyV3oyRFc5NHc4aklDRUtvZzBCeUhMZXdzTEN5c2dLLzFjMFA3Ulg0aVNlZU9Kam5CTmNEL0JNVEU0VkNvYVcvRVVMYVBNK3ZycTYrL1BMTHBWSUovaE8rdUlOZk5FMFRybnZ6TGZRN25acS9pSGJrOW04NE9Ma3pEdFR1bUIwK0RGa25HT044UGo4Mk5qWTJOZ1paNnpTSnNxVnBpZXB0cWlEblZ0ZDFmK1BrYlowSUEva2FDK1p5T2RwWU1McXpDM1d6K2ZjZWhBYXJLUHJuaFRHdTFXcVZTZ1d4Vm9BN0JkZlRZZ2doa1AyZXkrV29RZEJTNThERkI0ZDJ1VnkrZGVzV0xQMVIzU1pvMXVIdDFHQkxRMkdYZXJpRDhkRTU5RUFJZ1ZieE81dUF3QnROQ0JrZUhyN25ubnR5dVZ4TG55NVYycSs5OXRyUzB0SkJwbmhqakEvQ0UwRHZBU0hrK1BIai9mMzlMUTBpY0FDWXB2bktLNi9jdkhrVFhKZTd2QkR0NmdQOUZrRExlNzhuRmtEREZ6dGJBQjNDQk1nWGFob1pHWm1ZbU1qbjg2aGpqQUJlaDREVDJ0cGFzVmlrSFNzWjI4V3ZSTkxwdEwreFlEYytvVkRoSDdZZ0NDQVN0bTNUeDJRSEFoOGcvdE9CVW81eXVheHBHdWpmYUoxTDRQaTFvdXU2NEliczcrK0g5aVNkVlEwa01LMnRyYzNQenk4dkwwUHlWdWRhak03S3NPRmJlNktOVzQ2azgxd0FzMUp6Z1VEM1VDTTdGb3VkUEhueXJydnVnbktWbGlmU2JBY2NnQURqajM3MG8vdG5jZml2UGlGa2ZIeWMrZ0NhRVVWeGRYVjFkblpXVVpROTJSZVZFS0xyZW5NY3QrR3VkNURzWGZvQUdnNitwUVhRK2Jkd1BkUVVpOFdHaDRmdnV1dXV3Y0ZCNkNUWTJZYUFqcFd3dGFXL2twQ3RrN3JFZjQ4OHo0dkg0LzdHZ3BHYmJQenlEMnFhUGlNUk9oRnlwL3VYdGdLRVhUWVFrL0R0UTljYmdpQVVDZ1VJUVhhbzNDYjFuSC9idHBlV2xtN2N1RkVzRmlIcXYyVUlrcTdMV3o0K0RhOVFMMElINGV3Z3VwMlZPWFZqdFB1dUlBalFISEEzVUxmdXdNREFmZmZkbDgxbUlVdWdHWjduRnhjWGw1ZVhEMmFYQVl3eGZ1S0pKL1l2Y1laZVhOZDFqeDA3TmpnNDJHd0JFVUpBbjE2NWN1WGF0V3NJSVhBQTdFWWZ3WGM5ejRNZWdoMm0rWFpxb3JObTd6dzJ2d1hRNE5IcWNLaVdJMm4rQ2hVbWp1TUdCd2RQbkRneFBEd01LLzZXbjZjcUVtT3NLQXJrREdLTVdiblVkdkhiQVpDNTZXOHNHTVhKeG0rdFJuZjg4S0NwcWdxTlExZ2E0SGJ4Q3paQ0NMTC9Fb2xFTjZ0LzB6UVhGeGV2WDcrK3VibUpNUllFZ1M3NXFGblo4a2VweUhYNGlZWVA3NGtkMEc0a0hZWUJWWUs3ZjBaQVVHM2JGa1h4bm52dUdSOGZiNzdDcEI0WGdES0tnL0hkN205T0FMVUFqaDQ5ZXVUSWtaWVdBSlFBdlBUU1MrdnI2K0FBMkJOOUJPdG1YZGZieWFKL2t0N1dZcTZiRlFZOXVQL1hPMHp6RFE2cnpzZW40NFFRM2NEQXdNbVRKNDhjT1FKZUFkVGUyb0FZOE9ibTV1cnFLazBVaUtMMkR4WjYwV0JEa1YwYXJJd2RReTk3cFZLcDFXb2RiSHBHTzZpQzhqd3ZtVXdlT1hJRXN2L2FGY0kwVFAvWHJsMnJWQ3JRdFlWTzZoMStxMEhmdHZ0S2cxK3E4NGNianI4RE5lNDNNbG9la0JZSWRIUGt6dUI2M3ZmWTJOams1Q1Nrd0RlUG1lTzQrZm41alkyTi9jNFR2TzBKMkZmOUJmMEF4c2JHV3RZQ2lLSzR0cmIyMGtzdjZicStzK1NMZG9ETjFhRkpRSU40YmN2QTNGTFV1dkZ4ZGZod042Sk1Qd0QrdWtLaGNQZmRkdzhORGFHT09hZ0lJWCtpQUJUK2R2NGhSanRBYjlMR2dzd09PR0F3eG83amxFb2wyZ3FRc1FPZytjL1EwTkRBd0FDRS85dDlFdFpzcnVzdUxpNWV2WHExWEM3VC9kdFFGNHUzbGxxdTViZmFLYy9PUDdGZFJlMVgvdTJPVEkyQVBXenFoK3RaQXJsYzdrMXZlbE02blc0dVlZUC92SGJ0V3JWYTNWY1ZUUWpCVHp6eHhENGRIUjVSNkFuWXNGb2k5YlMxbXpkdi91cFh2MEwxZnZoNzlkTndmTmhlbWk2MW16K0R1akFlMi9tMVlOblI0VnZOTDdiN1Nrc3A3SHo4aHJHaCtzUVBPYWo5L2YzUWY3dkR6L0U4cjZycTB0SVNHUEpzQXRzWnNNOFkzVEkxNk9FY0lxQUlyVlFxMFZhQWpHMEJ2bEtNY1Q2Zkh4NGVobWEzYmIzaUhzRWNGa1Z4YVducGxWZGVnZjF3YWR3V2RaRWIyN3pVN3FCN1c2N0xPLzlLeStPajdkZ0JMZCtGZitQeCtMYXFCTHNCbHFtU0pOMTMzMzFEUTBNTmRnQ0VJUnpIZ1NMNWZlMHJqRC95a1kvc3kzRXhkbDAza1VpY1BIbXk0UVJJZlZQRlYxNTVaWDUrZnArYzBoaGp3ekRneXJZN2ZwY1dRRXNwNzlKajMveGlCNmRUOThkdk9PRHJwb0RyR0pweGF2TFVtOS82NW9ZOWxKdFBEUXpNemMzTjVlVmx3ekFPSmcrbHg4QVlReHc2bDh0QkV4VVdHdGhYNk9WVkZBVXEwRmdJWUx2Z2VsK3laREo1OU9qUnp2NS9WTGQwSGNkNTltZlAzbHE0bFVnbS9Hbi83ZFJheXgvMXY5THVLeDBPMkUyc29lSEQyMUx5TFk5SkNKRWtDYllSYW5lUW5RRXRyUkJDOTk1Nzc3Rmp4eHB5TUVGRjY3cCs1Y3FWL2R2Q2d4QWk3TG5Db3RkVUZNWHg4ZkhtM2RraHVQTFNTeTh0TFMzUkpJQTlIQWE5VXVUTzFMOTJjMjNuRTJuNXNlWmpiaGxXYUk0KytIME1XeDYvdy9uNm41bFlMS1pXMVlzL3VyQzh0UFJiNzNwbktwM3EwREFSNUMrZno2ZlQ2ZFhWMWZYMWRWSlBGMmN6V1pmQUZTT0ViRzV1MnJhZHpXYlpuTFN2Z040c2xVcTBGU0NUMVM2aEZ3cnkvNGVIaHd1Rmd0Ly8zMDV1WlZsZVhWMzk4WVZMaXd1dkhSazlBbjBBMFoxYXNkMHRvTHF1ZWE1dDFvSCtmMXMrUiswKzNPSDRhQ3N0MnV3cWJqaG13NVhaUTJHRDlRTWhaSFoyMWpUTmt5ZFBOdGdCcnV2RzQvRmp4NDdkdUhHakc5L3dEc0FZOC9mZGQ5K2VIeFFoUkFnNWR1eFlLcFh5bCttVGVqdlBGMTU0WVhWMU5SYUxvZjE1aHVFVyttdm5Pc3RCeTdmOEF0Y0FmUkg1Wk1qL1c4MzRqK24vdDkzeFc0NTVhMUZHMkRKTjEzV0x4ZUwxYTljem1VeWhVT2k4RjVGL0lXdWFKaGdOYkNiYkZuREY0T3BKa3VSdndzUFlFMGk5eU1VMHpZMk5EWDhkWU5CRGl3YjBvZlk4TDV2TmpvK1A5L1gxYmVrQWdGNXRMNzd3NG85KzhGK1ZTa1dTcEhnaUxzVEVidGJXOUhjYi9yTkJLN2JVcFMwLzdQK1lYOW42ejY3ejhUdU1zK0ZhTlI4ZjFxdDcrMURUSCtJNER2b3FGZ3FGQm0raTUzbUpSQUloVksxVzk2UDM2NzU0QWhCQ3J1c09EUTFCZHlRNm5ZQnp3M0djRjE1NFlXTmp3eDlEM1NjdkJ6MXM4MnphOE1rT2MxN0xHYkhsNS8wQzJ2MDQyODI0N1N5QXpnZkhHQk9FQ0NHU0xLdTEydmYrMy8vMzVyZSsrWUhmT0MyS0l0V2J6WURCQkoydTE5ZlgxOWJXSE1kaENZUGJCYWFvWXJIWTE5Y255ekpMRWRoRDRER2hyUUNwSkROTHEzdGMxNFVXSTlCcWpBYWhXenZlUFJLVHBacWkvT1RILzNQbDFTdXhXQXphbGhPRU1OckMvOTg4OGZ2WDFnMmY3SHlvRGdkdnB6TzdQMzZIZWFIaExUcnlmWnFxd01pNGVmT201M24zM250dnc0VnlIR2R3Y0ZEVHRFcWxzdWRxR1dPOHgrVUhHR1BYZFdGalhQQnMrQzBBMjdaZmVPR0ZVcWtFOFpWOWZZQWI3S2t0TFlCMkg4QytkZm1Xbi9jTGFPZkR0angrdytkYldnRGRYVFJDdk50cC8vLzM4MThzTHkyL2MrcGRRME5EaG1HZzlwY0NYSHlEZzRQcGRIcDVlWm0yRTJDTHJlNkJNb0gxOWZWTUp1TnZMQmowdUNJTXVBODl6eXVWU3RBS0VERUh3SGJBR0lNOUNnbUFNSmZEVzYybmYwSTRqb3ZKc1J2WHJ2L1BqLys3V3E3SXNrUUlJY1JENlBWbFZZZGZiRlpXRFV2OFpuOTdaNXFWYXNzdk5yeTE1ZkczVk9iK1QyNTUxcnNuRm9zdExDd1FRdTY5OTk3bUpjVEl5SWl1NjdadDc2MU9Kb1R3OTk5Ly8xNGRFUzZvSUFqajQrTzBiZ1JlaENqQWl5KytXQzZYcVFXd1Q2QzZMYkxsOWlFTlF0RHlhQjBzZ0pZZnhuY2FxbHVPdHAwRnNOMXgwcmRNdzdETTI0dCtqSkVvaXRWcTllcVZxd0xQRHg4ZHh2VUc0TzN3UEU4VXhWd3VKNHFpcG1rMHRaQ3AzVzZnOXdpU1VtVlpabGJVTG9GV2dCc2JHNFpoTUZIY0ZyaWVBU0JKMHVqbzZPRGdJSzRiQk8wZ2hJZ3gwWFhkWjMvNnpFLy81eWVPYmNla0dQRVZLeVdTQ2JHakFrZE5hNkdXQTJzd0VUclEvSzJXdjk3eUF4Mk8zODA0L1Q5Tjk5enFQTm9kQTBjV0JBRzZYaFlLQmYrZGdvbFZrcVJTcVlUMzJnN2U0NXdBMTNWSFJrYlM2WFJESzNKQ3lPenM3T2JtcGlpS0IxQlJqZXM3T0RYL1VFcy9GZjI3NWFHNi8zekRXL0RkTGUvV2xyTFl6VGpwSjAzRHNDQ3Vqd2hDdDgweTRubnoxMitVTmt0RFI0WVRpVVRucldKZzR4Q29nSGNjUjlmMURoOW10QVJqYkZtV1lSaWlLQjc4dG1BOUE4ZHhtcVp0Ykd4MHFITmh0QU5ta1lHQmdiR3hzWGc4M3FFQ0VOVW5GVW1TMXRiV2Z2U0RIMTY5Y2pVV2k5M2VRaGMrZ1RFaEpGNDNBdHI5YU1QODJ1NjN1cGw2L1Fkc1BuZzN2OXRCQTdjYlovT29jSDF4UzQyQUxjZThBK2c0ZVo0dmw4dXU2dzRNRFBqM0tvTk5aVjNYVlJSbGI4ZXdaMVZoTU8vMjlmWGw4M2xZYTlMRFlveGZmdm5sWXJGSTh3QU9RQ2UyTkhqOWEzUTZOdFFtem9UYkI3RTZmTjcvbnp1d0FOcDl2c1B2dG9QVVV3VTk0bUdNSlZtNmZ1M2Flckg0OW5mKzV2Rzc3ckl0aSthbXR2dzZ0QkFaSHgvUFpETEx5OHVXWlIzazNsWTlBSlQ1cnErdnM4YUMyNFZlcUhLNURDcVBPVlM2QjljZEFQRjQvT2pSbytsMDJ2TzhMVU1BMFBIM3hSZGUrUG16ejFtMkpjZGw0aEZTVHpQcVVtcTcxMmJkZkl5T2phNG4vWE5Lcys3dGNNRHVQOS9PT3FHZjJWYzVKUFg4Z0Z1M2JnbUNjUHo0Y2RnbER0NzFQRzlvYUtoV3EwRnB6RjVOM0FMYUk5T0dFQUpaSjdDT3BMZE5FSVNyVjY4dUx5OGZRQjVBdzNqb0h3MCtpWmFHWHZOeWZNdDFlZWZQZDNPb2xnZmMyY2Z1RUFnTTJUdUUvaGRCaENBaXlaS3FxVC84L2cvdXUvLytYMy9nYloyekJWRTlTeUNYeXlVU2laV1ZsVktweE5vS2JRdTRXYVZTeWJLc1hDN0hHZ3QyQTZtM1NTbVZTalFFZ0pndnFtdEF4Z3FGd3REUUVPUmlvNDVKVVlRUVNaSVVSZm5aVDM5NjQrbzFNUmFMeGNCZmUzdnU5eW0xTFNybFdpckd6aC9yUExaMityT2xWdStzSHJ2OGZMdUQwRXI5ZzVGRFFSQnUzTGdoU2RMUm8wZHBDaWZVYXh3NWN1VEdqUnRvNzU2SVBYTlVncEVDVFNYcEdsb1V4WVdGaFlXRkJhZ0dQSURMUjIraDMyWnMrQU8xbWFIOS81STdvMG9OZFBQNWJpUzQ0WUROWTJ0NWF1MkdWSCtMM1A3Zm5WWUJRc2dqTHM5ekNLRVhmdm44eXNyeU8zN3J0NGFHaGpyMEZnUWN4eEVFWVd4c0RCSUdxVXVBMFNVWTQxcXRadHQyWDEvZndZVERJZzF0QlFnaEFPWUEyQlorQjRBL0w2cWRBd0JqTEVuU2pldlhmL2FUbnlpS0lza1NJY1R6Q0VZSU5YeWpPNW5kY2ladTFzd05IM2o5QjMzUi9YWmF0RmtWZHpZcEdqN1piQngwR0J1Nk16cThmOEJnZUo2L2N1VktMQmJMNS9QMFBqcU9rMHFsK3Z2NzE5Ylc5aXJPeU45MzMzMjdQQkRHMkhYZGJEWUxiZ0I2R3FJb3JxK3Z2L3JxcTdCOFBMQ0hHUzZXWlZrdFowMHFVZzB2dHZ3WXVqT28wZUVVT255K3BleTJQRlRMc1RVUHNzTlRqYUZac21saHpJRS93UDgvZk51emgwVlJyQ25LdGF2WGVKNGZIaDdHWGFRTEVVSVNpVVEybTNWZDE3OWZlNGR2TVNpd3RJWDJuL3ZSZXF3M0FNR3VWcXVsVW9uVXV6QUZQYWhvQUk4d0lhUlFLSXlPamtMd2VNdHZDWUxnZXQ2enp6eno3TStlZ1QzS3Zkc2FwbEYxd0V1RW9IaWliVTZBZjRMc3JNZFFlL1hWMGc1b09HQ3pzbTEzcU02ZmI1N09PM3lNNDdnOTJlQytlM0RkajVqUDUvMUtBMVN4b2lqZ0lkajk5QzNRdjNaOEZQRDVEdzBOd1ZRQnc0TFc5RmV1WE1IMWVONUJybjVhZWdMb2Y3YTBBRm9PcjJGRzczQUs3WVN5blFYUThsRGQzTkYyM29VN2ZnNmUyMWFtZTkwbDRJbXhtT2Q1UC92cFQ1ZVhseDk4Kzl2VDZmU1d1N0JRbDBBcWxWcFpXYkZ0bTJZSnNLVnRaMGk5em0xalk4TzI3VXdtZzloMXEwUHFqWUJjMXkyWHk1cW1zVmFBWFVJdmtldTZzaXdmT1hJRU1nQzZLWXlTSkdsMWRmVm5QL25KNnVxcUpFa0lJVWdlNnZSN29GM2FySWI5cS9adXh0enVyWFoyUVBNUGJma3JwRjZnM3RKSjBMd2U2enkyNWlQc056elBXNWIxNnF1djNuZmZmZlRLUUZCZ2FHam8xcTFiZXpLay81KzlOK21TNnpqT2hpUHZXRlBQQXhvRHdTWUppbVJESXVsQm56KyszdkRZUjdZWFBzZmFjT0dGWlh0bisxZmdSL2g0NVVFYnI3QzE1TmVEVE1peUxKTTBSVkVnbWhTSW9UR2poNnJxcm5tOCtTNENsWWpLcVc0M3VtdnEreHdjbk9xOG1YSHpaa1pHUkVaR1pyN1FkY1dpVGlzcks2bFVpaDROMU8xMmI5NjhpWHBpbUlPWkxnZG9HVVdhVEZPZXN5aHNVeDVUZmt5eFd3Q1d1bG1jYVdBZUEvTFlzNXJKNkpRT3czRHI3dDM4N3U1di9aLy84OG9ycjdUYmJSRXRxQjNNNHNieFRDYURad2tJTjA4aXJ5MFFUY1FZSzVWS3JWWnJZV0hCOHp3Ui9YdmFHbENhM3VFNVM4VmlFYmRCUTJJQkRBTFZ1Snp6eGNYRk0yZk9lSjVuOHY4L1Z5SGRydXQ1anV2Kzh2UFBmLzdwcDUxT0o1VktDWUZwRkJxaUx3ekNUYTJWU1lJOWY1ZmhxZFlPQUozUWptTk1tT1pkMnFlbXVrRlA5QTE1cUhMT2NZLzNuVHQzWG4vOWRYR29jTGZibloyZG5aMmR4ZU9EWHJCSzdzYkd4cEhMb3k1SnBWTG56cDNySStxNmQrN2NHY0pkeUtaYWljVXc3ZFNjS21tcWttbG1rYzJTUjZVczZXbHRCa0ZjUzBwbE1zbG9zSnZiakxGR2I0c2dXUDRSYXI3dk4xdXR1M2Z1TkJxTnRiV3p2dS9SVTU2MGlLTEk4N3k1dVRuUDgycTFHdG9OOWlJSkVOaDNlTW0xNy92aSttektHNk91NDRsRE1uWWR4NmxVS3NWaTBiNWRKUUVGNnprQWZOOC9mLzc4eXNvS0dMWkVJYkJWb3lnS3c3QmFyZjdreHorKzhjVVhlQk1nemdlZU1aNVpZaUNSZENaaldzL1NUbEdrU1pGRlhhbGFYLzBFYW1IWVJURW9vaHY2QlpTYUI4eUx4ZmhESEJVd1pEaU9VeXFWZk4vSDFWaFJxMVFxZFhCd01MQTE3R0JpT2VCb1FMdHBlWGtaWFhsWUZjL3pkbloybmo1OWlyZlNEVk9vaVlZUVAyanJDQ09VRnBGWVFaTElwandXUHRaU2tQS29yMU9ySkQ1RWE1MW8vUm1tMXJBRG5Vc0E4TVgxNnp2YjIvLy9lKyt0eG9zV0JJQ0ZoWVYwT3YzMDZkTktwWkpFQzhhQjZMaE9wN083dXpzM040ZDN1TkZKMHFqck9DUndjaFJncFZLeG1MWUpWRVJSaExjQW5EbHpKZ2lDZHJzTk1meVV2dS9mdVgzbjQ0LytwMUtwaENIR0FNYmRzMjJhMWFoemFFbGVTVm9XRkJHbkphV3RBSlY3RmtOQitsOUx3WlJIeWtuL1ZKWENFTUI3UVlMMzd0M0xaclBpT2g2TTRWaFlXTmpkM1gxQjJldUJZZG9hQjFFVTVYSzUyZGxaY1RBQUh1Nnh0YlUxV3ArZVpCRmJadWRnc0FCVXhUelFBcUN2R0dnb3hKbjVhZDlvc2dERXdKREdXM3lrMCtsOFB2OHYvL2YvdnZ0cnY3WngrVExubkI0WHFEVk44REN5aXhjdjd1M3QwVXNJRTlnaDJoTlBCMXRZV01ETE5rY3lXSVlQM2xzQ2FMZmJoVUpoWURCS0FnbG91Syt0cmVFbFFOcFQwYURmL2U3N2ZydmQvcCtmL2V5ckw3OTBIQ2NNVTV3L1A0Z21QbGgvbkowUVB1SkZFc0dZRTZlVGtLNHFRZG9nZHBHdU5Xam9mTkxjUXNjTVVjTnV0M3YzN2wzMDNQT2VYMmR4Y2JGVUtvazloRWVEZS9ueTVSZXA0dG16WjZsM2lERjI2OVl0RE8wWmxRWEFHTU8xYmNtNlpBWm9mUUNtUFBGNTFQNDZVVlU3TlVtNzJ5MEFFTXNCclpiak9QWUZBZlVmeDdNRk9YL3c0RUd4V0Z3OWN5YWRUa3RYVzJyckNRQXpNelBwZEJyUHlrMDh1dkdCYStHTlJpTUlBckUwY0JxQXM0Vzl2YjFrSDJCODRHQ1BvaWlielY2NGNHRjJkbmJnSlZVb0hNSXczTjNkL2M4Zlg3dS90Zlg4SE1CRHlnY1VNdWxzVmdoOFNUQlNLU1QrakNNOHFZaXpDRThnb2pXK0hVQ0wwOWZSbkRIZjVib3V1cmRoRkhhQTR6aU5Sb056dnJDd0lDWU1XSjl5dVh6a1FjUTVkeTlmdm55RXdvd3hqRTFZWGw2bUN3RlBuanpCaFlDUldBQ0NtY1QrUUtrN1FSY3ZJN0dnOUZ0azB4cVY2dHN0NzVKSTJkdUg5VnNBa21taXpRUFBZd0lhVXYxakFxbDVubGZNNSs5djNjdGtNa3ZMeStoNHROUVdCVk1ZaHVnVEVzY01KNUo5SUhqdllCeTBtekZJZTdyYmpmVmNJTVZpRVJJK2lRM1cyOGU3dkx4ODd0dzV6L1BRLzJvWm1CaTd3MXozeGhmWGYvYlQvNnBXcTBFWW9MdjlTQlhBbUlBc1BmYU5LWk1RS3ZxMGVVeGZCekcyVDBPL2dLV1FxcUdTa3V3QUtqWk5Ta0Y2bHpBQ1JxWGFITWNwbDh2WmJEYVR5WWgxbkRBTThSaVNvdzBsZHVRdGdweHoxM1dYbHBhRVg4SjEzVXFsOHZEaFE3RStNWkt4emZvWGI2anVCR1hGU0Z0SnlmcVR0S3dnYTFMejJuZlJESmF5S2lub1oyanQ2OEFnU1kvS3FEeUtlQkNHaldialAvL3p4MCszdDMvdDEzOGRmWWwySnNFcDNibHo1N0xaN1BiMmRyS0JNQ1o0YjBOOG9WREFnd1hqQ00ySkErOHRBZUJSZ0hqdUtTVHNNUWlpZlhEcGJXMXREVThCa2tTY3RtQVFCT1Z5K1pPUFAzcHcvejVHb2ZiRkFCNUh4ZXhxZTJBZUtiOUZZTm9uVjJwWjFmNmdQK0pVV0xWbUJyYjVTUU9yZ2NFQnVDa0FOZS9pNHVLalI0L2dxTmJKODhEQStCK0dOaWtHaGRFanFSODhlSUIxR3VIQVptVFNERHJOSGNjM1JUdmJZbkphaU1TeEFPSTBVZndLRTk0Vjd6cDZGMkNjdHVNNFgzMjV1YnV6OC8vOTFtK3Ruam5UYXJVR2xnS0F1Ym01VkNvbG9nWGpTNEhUQ1NwMDBLSmZYRnhFZVEyam1IT2NCSVFGMEdnMENvV0NGR3VTTUlZV2RPQVY3dHdiQUFBZ0FFbEVRVlJFVVRRL1B5ODJBZG9Mb2xrWkJNSGR1M2MvL2VUaldyVktZZ0Raa1JzYk9aSHBKaWRhTG8wcGI2WDhhbWFWaUVrbWExK2t0UU1zRlRDOWEweE1jOWQxNi9YNjQ4ZVBYMzc1WmVRRWRNa0x3L3BRb3drL3g3TzByQW5vQnBpZm44Y3pxZ0RBODd6dDdXM2NzM2dvVXNjTGsvTUhkQjFzMGQ5ZzduS0pud1p5LzJITFdrakZOamhZcndGZVJMWStlMWVZU3UzdkYzLzA3Ly8yclhmZWVmT3REU0RSZ2laME9oM2Y5eTljdUpEUDUvUDVQQ2ZSZ2lNZlF1TUowWDBZSXJDenM0TW5NWWp4TmRFUTNGc3FsUTRPRGdCQUJBd2RWdktjSGdncGhPYjQyYk5uY1NWNDRDbEFVUlQ1UWRCdXRYNys2YWMzZi9VcngzR0NvOFlBS21BQVRKd1hGRWU3eDdjQWFQNDRka0Q4c2xMeEk5Z0I0dEhBNHNNQjdyK2JuNTlIbnhBQU9JNnpzTEJ3dE90ZW95aHlOelkyRGxVRytYSnVibTVoWVFHakFSaGpyVlpyYTJ2cnNGMStFc0RxdFZvdGFZWWhXYS9pdDRtSXlYaVV0TGpkclNSU0pQK1NxYXo2WG1vQmlQeUNzc3IzN0ZsZ1lOTngyTEdBOTZJRkh6MThXQ3dXbGxkV3hFM0VGbUJWczlrc2pSYTBOSGdDQVZTUXRWcU5jejRkSVFKaUh5RGVCNWl3UVJ5dzNoSkFKcE01Zi81OExwZUxFd01Jd01NdzNOM1orZWxQL3ZQQmcvdEI0RHVPTGRUdWtBQ0F2cGdBclpDVXhKU2F4K1QrWWYxeVR5TExpRzQyTlpkMnNtUXhEbFFLektBZ1JJcnYrd05KblNqdzFWRVVOWnZOeGNWRmtSZ0VRYlZhUFZwa3dLR05BQVRlVDRXV2tlTTRqeDQ5S3BWS21ISUVhc2NJUms0S0Vnd2hXQVFNbmEweXU4cTQwbHRFVzZ0RW9OOGNrM2hYS3F2bVY3OUllcGNwRHp3UERHd3laajc4NnpCZzdIbTA0SDZ4K09EKy9YUTZ2YkMwRkhXN2NhSUZneUNZbVpuQlkvTXQ5VThnQWZ1eDNXNkhZU2lHbFVrMmp5ZndReHpIYWJWYStYeWUzZ2VZWUNCdytDd3NMSnc5ZXhaakFPMmlGZGRoR1dOZmJtNSs5RDgvcTlWcWVHY2I1NXd4a0s4Q09nSVlBREN1QkFaYVZETDBDMTVUTnNvdFVuNW1XT2FuUEdaL0YyYVQzRTRxb3pLZDdsZGZBYU03TDBnQ3JxeDVuaWNDUkxCV2VON0dZYWtkK3B3QVhJRklwVkpvbWJxdVd5Nlg4WEJBR0FNcHp4UTdTREFIWlJlVHcwZXF2MXBXZW91SmxDbXo5TDlVSDFOeDZHZHhOYWY2MVFEQTQxNENiZ1VIQU9EOG1iSFpiRFovK3RQLzJ0N2VmdWZkZDBXMG9MYm1tQ2ljbWVsMGVuZDNWNXd0bUdBZzhESTlEQkhBNFVhdHlaRVBOQzJrUWNFWXExUXErL3Y3U2I4ZkNoalZ2N3E2aXBzQUIxcmJBQkNHWWFsVSt2bi8vdStqUnc5OTMvYzhQNHBRSUJ3OUNLRC9OWEtnc1Vsa1NUNXplODNWYk9MSFlWMzMyc3hhMzRENmFva1VGZnRTTnZzWERST080K0NpQU1ZUFJWRTBNek5UTEJhUGNPckdzOERBK0RONHh0amMzQncyT2dCRVVmVDA2Vk0rSHFmRVNITnUrbEcwT3kwV2dNbXdsVHBlYXdIWTIxQ3FnUG9VRE95bHRXMXRlUmh3WUJ3WWY2R1lBQTI2bkRQSDlWejM1czJiZS9tOTMvek4zMXhaV1JXN01VMmwwRmljbjUvSEMwc2FqY1k0ZUl3bUFoaExienBZY0V5RWtZRHE3eFZIQVNZbkFjUUI2OFVBWnJOWlBBZlFmaEV3OUpyYTgvMnRyYnVmL2Z5eldxMFdoQ25PZVhSTVV3Q3BnaEpSdXgzd3ZKZ2hqMVptU25MU3dqYXErRFhaQVpheVdsTGFzbEpIakh6ME1jWmFyZGJPenM2RkN4ZncyMTNYbloyZDNkblpnVU91SVhyMmhwYmVHa1ZSSnBNUjkxUzZyb3RMZmVNajF1bm5xTE50K2x0ckFaZ210VnBtMWRxUEprZ1ZpSi9CNUlTd3ZLb1h3WE1TYk1vQldKZ0tEL2IzUC96d3c4dVhMNy94eHBzQU1EQmVxZFBwaEdGNDRjS0YzZDNkZzRNREhPcGp3ak5qQzZwTlc2M1c0dUlpcnErTHA2T3RuZ1RSb1hnVVlENmZGNU9TZ2V2WkNSaGpHR0sxdExTRWE3MERyL0RndlhNQVAvdnNzOXUzYnptT0U0UUJqL2lKalgyZ1ZJWGVWVC9FUXNBaWhOVU05cnFvNGxldGo0bUlLclRWdVp4OVNqYnkwWWUyZFQ2Zm41K2ZUNmZUVVJSMXU5MWNMbGNzRmszMzVwam9QRDhuWU9CRUZuL016czZLbXdLNjNlN096azRjejg4UVFMdEgwakYybDQ3YTkxb3pWdVZhTGQvWURVOHQzNnMycHAyT1dwbStDZ1BnQVYvSHNSS29xUUlBOElqN25oOXgvdmt2UHQvZDJmMjFYLy8xbVptWmdhZVhvMWR6YlcwTmx3YTYzVzV5N2RCQUNHYkdxSi9GeGNVd0RNZHo5NkN3QUdxMVdxRlFTUG8zSmxodjRjejMvZFhWVll3QnRFOHFlRzhKWUdkbjUrYy8vN1JZS0Q2TEFJajRTVElGZTM2VlVIL2xnVWhSaTF1VUNqcnFONUx5U0hwZFM0Y1NFYVRVeW9CT25tdkxna0ZOU0Vwa2ZEd0JXUE51dDd1N3Uvdnl5eTlEenlpY21abko1L014YnhQQXIzaStrQi9IOGdxQ0lKUEppRWlFZkQ1ZnI5ZEhlekFBaFRwcHhoK1M0bFIxdWZoaDhnalJkQlBmV1B3QjlMMm1ocUlaTEhTMEgvdWNRY2s0NVM5d1RzQkFSSnd6eHNJd2ZQTGt5ZjUvL01jNzc3NTc4ZUxGVHFlRG90ODBkSEh0YW5aMk5naUNuWjBkWko1eDRKenhCMGJZNGU1Qm9TZEdYYWsrWUQvdTcrK1hTaVVBU1BhRnhnZk80VlpYVjhVeEFLeDNQaUNGMExJWWdIWGp4bzB2TnplamJqY01ReDV4RHZ6WUlnQjBlTmFOUklKcHBTaFlsd2tzSWxUTkdZZU85dFdTRGFHdG0vcEllcThwZzFxZmtRQXI1cnJ1d2NFQkhpT0kwaldYeSszdjd4OUtJN3R2dmZWV3pGZmlnUlg0TXJSQkhqMTZORmEzbm1EUGlWVnExUUNVZExsVWR1QThYa3F4bE5XU0VoYUExa1MxMTBIS3B0WWZnVkdqeldZVFgzV1MveGdBY09DZTUzVzZuWWNQSHRUcnRlWGxGZC8zVFJzSVJZVXg3aW1YeTNITzYvVjZ6SzlPSUhZUGRydmRWQ28xVm8yRzRRdDdlM3RIaTA4K25SQ2FmbWxwYVdWbGhTcCtiYytpQlJBRVFhVlMrZmpqajI3ZnZ1VzZydE9iZzUzMGtNY0taS3hYQ2NmcGVwUDRGVkxSSk45VUdRdTZlWkg0MzZJSTdTcEFXeGIvZEJ6SDkvMkIzemcwSU05MHUxMFJxT2Q1WHJQWnhKVzRPUEtCNFhKQUhLMkRXMUJRY0FNQXVnR2F6ZVpvVHdmU3d1U3hZWWJaUEgwS0J1NFJmNXA4Q2FyWFNHMFQ2ZEZoNjJBdjIvOG1BQWI4UkpZRFpFVHc3R3pCMjdkdkZ3cUZkOS85dGRYVlZUeGIwRkpEdEIxWFYxZkRNTnpiMjdQNER4SUlDRmxmTHBmSDVHQkJJUTBhalVZK242ZEhBWTZrUHBNQzdDKzhEWFoxZFRXYnpRNjhDQUI3My9mOSsvZnYvL0tYbjlmcmRUd0hrQU1mem1DbmtRYVdDYnBkZHFHaUdpalpMUFJCV1ZCUVh5RlpBNGVxZzBwQnltUDYvRkVCRCt5dlZDcmk3S0NabVpseXVZeWZHWWRDM0pnQVlRTmlORUM3M1M0V2krTjJBb3k5TWlxZlVjMHRhVitUbHRWYUFOSnZsVDRZTEFEVmV0QytZbUQ5dGQvT1RuSTVRQVo3dGtucHYvN3JKMisrK2RZM3Z2RU5BRERkY0lyZ25PTjJVMXpheEtVQlNQU0hGZGoxcUhTM3Q3Y1hGeGZGd1lKREhvbUNTeGxqcFZKcGYzOGZlcjZLb2RWaFFvR0RBcGNBVmxhZU9jOU0wMThFNTl6My9WYXI5Zm5ubjkrOWU4ZDEzQ0FJZU1RQlRpd0dVRlB2L3IvTThzMDBqNkpjYXBvNFViNnkwMWVyWVpIYjBHOGlDRHZBWGdjdEVSZ3pJd0FBb2lqSzUvUFpiQlovcDlQcE1BempPQVB3UXc0UkU0QUxBWnh6eDNIMjkvZkh6UTBnekVNcGtTcFg2TGMweFNPdEJXQnFQbTF6VVZJcWZacE44bnFwZFRCOW9LWCtmZG1nRnhnNDNHN2h2Yk1GdjdoK2ZXOXY5KzIzMzRrVExZaG5ESjg5ZXphZno1ZEtKZkZwQ2V6QWJRSjdlM3V6czdQb0NSenl3aHh1L2NlakFLdlZxcDBuRTFEZ1NGOWFXbHBZV09DYzIyTzVNVDBJZ3QyZG5jOC8vM3ovWUQvdzhSU2dFVFMxRkJpb2xZR1dxYnpJcHNvNmFnTkpFbnNnZlVuMld1UzIxZzRZU0o5bUU4VEh4TmpGaWdsblFDNlg2M2E3cnV0bXM5bEdvd0h4eHFQNzFsdHZEZndlem5rUUJJdUxpNWdUendaQW9UTW1iWUZnNU14Z01QQ0VhbU9LZElsRm1BRkErRmhiQjRzWlFlbG9uNXFxUGJEKzRtbXoyV2kybXN4aHcxa09lUDVxQUk0clRMNVhMcFVlUFg0VWhpa1VjL1lkWXZndHVWek84N3g2dlQ2R2ZEWE93QU9GNk1HQ3d3RUdLdTd1N2dvWFRvS0JZSXgxdTEzUDg4NmNPWU1IQWRuemM4NHhjdlpYdi9yVkwzN3hpMmFyK1d3WHdIQ0hOb0l4eG9Gbk1sbmY5KzBUcElGcVdEOTdJVWFrUlQ3YjZVTy9qSlhrcmZSL3pQcEwrWU1naUtOWmh3bFVmSnh6UEUwRWVtWkJISUhBR1BNR01pTHJIUStBSEl6aGlLMVdDeGYveHFvNUpPV2g3V3hHN0ZDSnExVGxiZm82eTZ6OVVIeW1ackNYcFVWTVpZWGJidmhkZysrTEl1NEhRYnZkL3ZUVC85M2IyOXZZMktBT1R4TzYzZTdNekV3UUJMdTd1M2lnRUl5TnVUMjJZSXpobGp4NnNDQ2NaTmNMSVY2cFZJckZvdkFIbk5EcnBnYXNGd1NReldhWGw1ZmpqQWpldXd2NCt2VmZibTl2ZTU3dk9sNFVjY1pHTEhXcHRxWVk2TXVVNWxmU0l5cU5qeUFZMVptOVdqZVZpRFR2c3J4YVNod3J4UWM5clYrcjFmQVVIOC96VXFsVXRWcU5zeUl3K0t4ZnRFWXptWXh3QTRqRFhvNzNNMTRRS2crWnVBM01xMGZVUkRETlIya3B1eDJnelVBdERKT05ZaXBMdjlUYS9neGdsSlBwS09LTzR6cU91N1cxVlNnVXZ2V3R0MWRXbHNYU2dLbGkzVzQzQ0FKY0doQ1h6UXkzNGhNSmpNekgzWU16TXpNbnVuc1F1dy8zQWFJSkF1TW5FTWNRcUdBV0Z4Zm41K2NCQUFPNExFc0FqdU40bm4vLy92MGJOMjQwbTgwZ0NKRUNBSXhxV0VzVERHMm5XMFNUUll0VEhRem02VTBjb1FxR1ZoVWF3U0wyNDlnQklvUEY0QmdWb2lqYTM5OWZXMXZEUDdQWmJMVmFoUmpEYy9EdUFBdzBDSUlBTndpVXkyVzhDMlE4WjJtaVZwUWRMZTRkYWhQUURKTERRSDJGeFVvQVlpeWIvRnBBT0R0K1dWbzk5YnVVYkphSFE4Q3p0Y3hLcGZMUlJ6OTcvZlZ2WExwMGlURm12NGtZMXdKV1ZsYkNNTXpuODJPMUFYWDhnUnQyRmhZV1RtaDJqa2NCRmdvRmNSdlFlQXFCc1FMckxRRXNMeS9uY3Jtb0czRVlNSjNGR01EcjE2L2Z2My9mZFIzZjkzdDNBUSszNmxhb1F0VXVsSmppWjVVZXFiL2psQlVab05kNjJyS1NGcGZlSllRNXRVWFU3NUtlamhYem8wVmVyVlpiclJidTRVeW4wM2pzeE1CSi9nQWpBRDg3bTgyeTNra3ZlQ000akovNXozdVFyRVhLUFNKUitpR1pkWklGTUhDNlA5QzYxRDQxRmJTL2wzNnZhczMwaXFPOEdIMEg4V2NIbS9DdnZ2b3luODkvNjF2Znl1VnllTzJRcFFqbmZIWjIxdmY5dmIyOVpxdnBPc25Td0dDZ0ZLaFVLcTFXYTJscENhMTJPSTV4eW52N0FPdjFlajZmVC9aenhnVHJMUUZrTXBubDVlVWdDRHJkRHNicmFsc1B4ekt1aUgzeHhmVlNxZVQ3QVE2SU1SRzJ0QmFxZ0RWTjA3WFoxRWVnVzFDZ3BkU3lkZ2tzVWJBVXAxK2tUZzVOM3pVbW5ZTEFlblk2blZLcHRMeThqRFAyZERwOWNIQmdqeFppOU5oZ0UyblA4L0JvWW9jNWpVYWpWcXZGbVlhT0N0UUJBUDNkYlBjS1NKd0hnemhBNVQ4dGgybGJpUmJVdHZ5TGpDaDhBNXprMldHSEFvWXhCMEc0dDdmMzA1LytkR05qNDhLRkM5MXVGem5LRk9LRTUrR2NQWHMydjVldlZDdlVWQjl5L1NjTEdLK0h1d2V6MmF5UWZVZG9PcW5nd2NFQlRnRFFBa2c2d2dLcWVPYm41L0V1Z0dkTEFBYUc1NXg3cnNlQmYvWFZWN2R1M2VLYzk1WUFVRllNcy9wNm1PWVY5dGtPSW1ZR2l6QTBxWEQ3YkUyeUliUkVEQjlycER5ZW5nQ0U0empsY25sK2Z0NWhEdWM4azhuZzhaMzIwZXJaaVhMT3d6RDBQRStzQmVDUGdYU0hEOTYvUlpBYWxWcG5nTWhHSFQ2WXFHcDN0YjhsNjBITlkzcWo1YjJnV0I1MkhwWE1XS1VDWThTalVjUjkzKzkydTcvNHhTL3krZnliYjc0WkJFR24zV0hNdUpVUmp4bFlXVjBKRG9KaXNXanB4QVFDbkhOVTBudDdlNjFXYTM1K1huSVh4V2s2bWg4dkNpa1VDclZhVFN3QkpPMXZnaGpYS0NjWEZ4Y3hTZ080MFRHSExPMzdmcmxjdm5Ianh1N3VMcDVKaDJ0aFl6T0tiVDFPRmUzQURGSTJLZ2ExczIxcXlHcHBRcitFdDd3WCtvVzhoWTFwS2NrZ09MSlZQUVF3eHRydGRxVlNtWnViaTdwUkdJU1dFRlR4Q1I1TlVpa0NRRHFkeGovYjdYYTFXc1V0SzJOb0JOSGVBck8zU2kwbHNvbEVxbWxNL0MzNUdFd3FTbFh6dExicUk4a0NzTnN1RmpjRGpNZnNnUUtGbXVkNTkrL2ZMeGFMbHk5ZlhsNVo3clE3UEJxd1JEbzNOK2Y3Zm5JZ1hVd0l5VlVxbGZEdVFYcXdZSnltRTlud1ZLSkNvZEJ1dDJuTEorMXZBbkp5RkVWaEdDNHRMWVZoaUE0QUFOQzZBTkRNY2wzM3dZTUhYMzc1cFZqUUhiOTIxaXl6MHNkYUdTdE5waTJDMUM0bnBSa2RITWtDTUwzWDlDR1NIVUNmZ2lLUXh3UllWVHc5TU9MUFZnUXdodGZDU3g0dEx6M2puTHV1aS91T0dHUFZhbFZJNFRGc0F1MUhTaGFBeVNEQ0h5WTdkS0FOb2MwVFovcGxJV3Q1citXUmFuK01JWUlncU5WcW4zenl5V3V2dmZiYWE2OWhjTHVsdHQxdU41MU9yNjJ0NFlWVjRwektzZjNBTVlFNFdIQnBhUWxYOUE3bENXQ01sY3ZsWXJFSXlXMUFNU0JHSmVkOFptWUd3ek9mV3dEOVlNQTRjTjZMQWZ6aWl5OGVQbnpvdXE3WWdqL083YXlkUTJ1Rmtpb2VMUUlORERwSXFHcWFSNW9nRFpTVEpnTkZtNjYxQTdUdFlHMm4wUUJIZmFQUndGT2xVNm5Vd0JXQlowYUF5WXdLZ2dDUGdRTUEzRytnelR3T0VDTlFwRWdHb0dYcWJMSUR0TWFnbEFFTVhFaVoxVlRXenZweExBREo3QkN2SGs4R1JhQnhDUUJmZi8xMXNWamMyTmlnWnd0cSt3aWRxNnVycS92NysyS0g2bmp5NFZnQnR3bnM3T3pNejgvUHpzNUN2TUdMcGZMNXZEZ0tNR25xZ1dDTTRha0p1QVRBeldka2lmWU1nbUJ2YjI5emM3TmNMdU1Td0ppYnRxWTVobDFsSG5sS1F6Tm9hZElNbHJKMkMwRGxiWnF1bHJWZjhqUnlJQjlXS2hXY3ZZZmg4eFVCay9yelVIRnErd2J0Q1B3VGpZdnhkd1BRNzZTbTRrQ1RVQlYydEpUZGdEQng0VUNQRXhqVW50Mzh0SmNkZjRoUENJSWduODkvOU5GSGI3enh4dm56NTd2ZHJ1VzZBZnpTK2ZsNTMvZnBkZlVKTE9pdEs3TmlzZGhzTmhjWEYxM1hOVzI4NUwwbGdHYXpXU2dVOE94eEdGZGhOMjdvZHJ1Kzd5OHRMZUZwTFphY2FORnl6bS9ldkhubnpoMmNhMW5FeUhoQ2xiUnhwSlpGMXBrRUxQUjdWVVU2RmU4RHk2b1NHSG82anRJQnhXNllySDdCZW9vRHhQQnF0eUFJeE9GK0txSW9NaDRXeERsM0hDY01ReFFadFZyTjBsVmpBc2tOZ0Q5VUMwRExpQ3BMcWNhQmljc3RYR2d4RHNBOGVPeE5MWExhKzJLY2V3cDZvOHZ6dkc2M2UvMzY5WHcrLzhZYmJ3UkJZTjlBMk8xMk01a00yZ0hDS2sxZ2dtaEpJUmR3b1ZvS0VhREdiclZhTFJRS09La2RaZFVuQjhqSjJXeDJZV0hCZFYzakVrQ3Z0VEVHOE1zdnY4em44eUlHVUpBYVdyVVBDeUd5MUVkVTJGcWtsa25LMmVXelpBZlFOMHI2V3lKTEZibkU2cEtPVjJsS3RaV3NoUGlOTm1TSVVkenBkT3IxT3Q3Nm0wcWxLcFdLcFpUeG5BQzBUM0dOS29vaXZQY2R4dElOZ0ZCTlJmRkRLSFV0MDBBL2c4YVpnZ3RZYUVwNUxBUXRGb0NsdFUwMDdSbkdFSXd4My9jZlAzNWNLcFhlZlBQTnBhV2xUcWRqeVI5RmtlZDVLeXNyKy92NzRtREJjUjZaWXdJODZtZDdleHNQRmxTbEpBQVVpMFZ4RkdEU3BBUEJHTU01RWpZcEVIV3VBdTBxMTNVZlBuejQ5ZGRmaXhoQW1KQ2hLcVkwbHJrTm1LMEVWZFpwTFFEUWFYVFFtU0JhbWhKWmtRS0tNYUVWeTVKdndDU2ZUWjg1SnNBT3F0ZnJlSzhnWGl4aTRVeVBta0tVQ3VjOERFUDhzOUZvaVBEZzhZUnBJZzc5blUwbjkxSnhTZS9HbkpmVFVwWkp2K1dSeW90SHBrbVpmcHg1VklzZ0NPcjErbWVmZmJhK3ZyNit2czRZRzdnMHNMQ3c0UHQrc1ZoTWpxK0pBOEZ2ZUxEZzR1S2kwR0ZvSCtUemVlRmNTYTREc0FNNUU0OENYRnhjeExoTFMzNTBlclZhcmMzTnpTZFBub2dZd0lrYnB3SVcwYVROVDQxT1NzUWtCbzlNazVheXo2L3Nkb0QwZHRVL01jN2R4eGhEcmUyNkxxNEk0QlpmK2hXY2N4enN4c09DR0dOaUxhQmVyNHRpUS9tRUY0TFE0cXA3QjNSci82RDBxSlNCcG9QaXhUTFJGRVcwUENTOTlMaG9Va3hFWndrSWpyeDkrM2F4V0h6ampUZHl1WnpkSmREdGRyUFpMQzROaUVXdmNSNlpJNGN3SHl1VkN0NDVoTGZTMVdxMVFxRkFkMkFtYldpQ2FCdzhUMzFoWVFHWHRPeWw4UGpMbXpkdlZpb1ZhUWxnVXFCT25LU25GcUVrSHFsVGY2Wk0zTFUwdFVMYlRoTjBrbHdWdWRwSDBsUEpQV0JxaFBFQjJ2ZjFlaDBkVkdFWTFtbzFNQVNTeStjRWlGYndQQStadGR2dE5wdk5pUkFLMGlldzN2S1B5S0RsT2RyOXFrb1dsQ1dlVUduU21sQjIxQkk4ZHByYUlYUzQ1aHNQQkVHd3Y3Ly84NS8vL05LbFMrZk9uY1BEcWszZkVrVlJFQVNycTZ2MFZudUw1K2FVUXpRT1J2L3Q3T3dzTGk1Mk9wMzkvWDBnUndFbXJhZEMxUnh6YzNPNDRjTENuNXh6OU1UZXVuWHIzcjE3QURCWlN3QVdxTExSb3JOVk1VVVZxa1UydmpoTms3U1VCSVZGbkVxUDFOcU9MUnFOUmk2WEE0QXdETVhvVnRsUFBqRlE1UE45SDZjRnpXWlR1RnZIK2N1bHVxbGRKUmhDK3dpSTJhak5vUDE4UVZOYkFmeWh0UUNPaFNaTkVaWEhiZlNUSzhmUkFJMmk2TXN2dnl3V2k1Y3VYUXFDd0hLUUFNNm9jRks3djc4dk1mcUVOc0lKZ2NvNDNBZTR0N2MzY0VLV2dHb1VqTzFmV0ZqSVpETDJnRDZVb3BWSzVlYk5tNFZDWVNJMkFRNkVWbDZCYmlvbEtYWG9GMWFVZ2tVMkhoZE5pYjFWeW1BUXFpcTFTYkhoY0kydjNXNzd2dTk1bnVkNXBtM1l4c09DTUNDQWM5NW9OTFFaeGdyU1Y0bCtVamtEZjZnc0JmMFdwZHBTS3NmWTN5V1Iwb3BYU2xQMU10bHBxbCt0SlQ2SndBLzBQTy9wMDZlbFV1bjExMThmR0MzSU9jL2xjcmcwa0xpMUIwSVZncW9FVENBZ0dnYzNYbU13aW1VSmdQZk9BWHowNk5IdDI3YzduYzY0bmdONENKaWtwWGhxbnlLYnBKOUZOcHFtVDVZNmlIU3RBSmNrdkVTS1psRGZxTzIxTVI4c1VSUTFHZzNmOXhsanVGR1FqbkVSNU9kcCtaSXhobkVyM1c1WGxCeC8zbFYxdk5ZMUpQSm9lY2pDZVJZdU1VMmhCckt5dG00RGFZS0JqOVhNa3dqeFhiN3ZOeHFONjlldnYvVFNTeSsvL0RJZXdXWWFlTjF1TndnQzNEVkFEN29mWHIwbkRWclRPWUVXZU43aXpNek0zTndjOUM2MlVMTmhHMklNNEsxYnQ3YTN0MTNYRldjempMbk9PQlMwU3RRdXNsUllaS045K3FTbFNZV3pSYzFyMVpsYXhPUTgxNzV4RElGMWJqYWJlQWt3TlVNUjRuczlVTlFKZXJId29NQldxelhPUndVTDBPNVhmVGhhemEzbFA3czlTSXRvRmJDRm9HbWFOZEQybEJpWC90RGFEUUxqektBeHdYdG5DOTY3ZDY5VUtsMjZkTWwrRTdFNHNzMzNmWEZZWnVJUFNQQ0NRTDVhV0ZqSVpyT1dKUURod1NvVUNyZHUzYXJWYXRPeEJJQmdqSW1sUnEzd29YYUFOS0V5cVhrd05JNWtBV2dsNnNDQ3BuZEp3dFAwRmxEa0xYMGsybVJ3dzQwT2pMRjJ1OTNwZEREQ1R4aWpFdXZLeHdhelhrQUEvbWcybThPdStBdkE0djlSOWFKV1RWTFRUK1VNeWtBVy81VXAwY1JxRnAwdG1RNTJDMEJiZGpvUUJNSEJ3Y0hubjMvK3lpdXZySzJ0V2FJRnNSbG5abWFTM1lNSlhoeU1NUXcramJNRWdPY0Ezcmx6NStIRGh3QXdFUmNCSEJlMG9vbktQYTNBeENLV2laTkZvcW8wVllWTkNXcmZKYjFSV3pkUWVuQlM1QWx5YjdQWjlEelBjUnpQODZRWS8yZG1LK2k4Z3VnNm1LeTFBQXAxZXEzdFl6VmRKSXAwbGMrMFE1cXlwdnFJdmtoTDBHUUJtTkpOanlnbXE4dnM0TDBvNjVzM2IrN3Y3Ny95eWl0aEdHS1VnSFpJZDd2ZE1BeVhsNWYzOS9mRjN2ZHBhcEFFSncwY1lsRVVaYlBadWJrNVpqNjRndmVXQUtyVjZxMWJ0dzRPRGp6UGd3bmNCR2lCYVI2djVva3Z5aVRkckQ2eVNGUzdzRDNVdStqRVR6elN6dFpnMHF3QnJHMnIxVXFuMDR3eFhGMVY2L3o4bkFEUnJJN2pvQmVyMCtrSXZoOS9ZMWFhOTlOMDBEbDJUSllta05Zd3ZVc3FLd3hNVTZtQmo2UThkbXJxTjlKYVdUSk1OSGpQMTdxenMxTXVsMTk3N2JYRnhjVnV0NnVkSzBEdmhQYWxwYVZ5dVZ3dWw4RnNWQ1ZJUUNINHgzR2MrZm41YkRacm1rRkNMd2FRTWZia3laT3RyUzEwdmNLMExBRm9ZZGNJcGxiU3lqZExLMWxrSUxVQXRBTFRVZ2Y3aTlSS2FndE9VT2N5eHRydE5wNXFoWWVDZ0dMVGFIWUhlSjZIQzdGaVI4RXdLMzAwaUM0RWc3R21aUnFSeDJUZnhXUm82RmZoRnZWc01xaTFJOFJVQjYySFNsdFBlNGFKZzVoeU5adk56YzNOOCtmUFg3eDQwUkl0aVBsbloyZDkzOS9mMzAvdUhFb1FFN2dFTUQ4L0h3U0JmUitnNjdxdFZ1dnUzYnM3T3pzWUEwaG5rOE9yOGNsREVwang1Wkx3Z0txNjFtUUh4TEVBYUhHYVloRUZXblV1dm9pU0FrVmxhSnRpL0pVamZnWGFwcWpaMVlYVXZwZ0FMSUNXTEYwTG1DQlF4U3hTVkZhajZsYkxPcFFiMUZmUS9CSXBOVCsxQUV3RVFjZFkycnBaNnF5bE5wVkFJL1hodzRmbGN2bVZWMTdKWnJPV2d3VG8wc0NrSEh1VllDUVFzaUtUeWN6T3pqcU9ZK0lySEgydTZ4WUtoYnQzNzlicjlXbUtBZFNDOWFCOWFwazNTNU1sbWlnYVhIMlhTYW1MUDFXUkxrMmZUSFV3MVZrVjZkQXZ0T21ydFkwd251Q2M0MFVWdUcxVmltdGhqSG00OVlVV3dLaEFYQXVBaWZwZ2s3SUhBeE5RVFMvWkRRTXRBQzBwOVJYUXorN2FncVlYMmV1bUxVZ3RnR2tWUmdLNEJlREdqUnNYTDE0OGMrYU14TWtVbkhQY05WQXVsL0ZDTFZPekp6aTFZSXlocjJoK2ZqNlR5WERPMFFlZzVST01OcjEzNzk3ang0OEJBQ2RPY0FvR0haaGxxZVFjSFZpRUZ0U1Nza2c1ZXgzVUlxYTZtZEtwK0xYSWl2R1hJZmdoN1hZYmw3ZEViS0Q0dEdkWENRUHBKQXdJUUFmQzVGcTE2dFFaekNZcUtFTlg2bjZWbXNYcFpKcWRxd1h0cEV5S25Gb0c5dDRaZndaOVFmQmV0T0R0MjdjUERnN1cxOWVESURERmIvUGUwZ0FlTENpV0JpYVh5Uk1jQ3dRRDRCTEEzTndjWFFMUXd2TzhTcVZ5OSs3ZFVxa2tJZ0NHVk4zUlFUdTVFbENueTViaVVrR0xZTlFPVCtwYnRaT2lpU1pTcHMraDB5MnRITloremhnQ05YMjMyOFZycTBTaTZETDUyR0RIY2RESXhkM1lrL0twRmxGT0xRQkxaMHVKWUZERGxNbTBMS2ltbXg1WlNFbVZ0NlJMN0c1Nk5NVmdqUG0rbjgvbnE5WHErdnI2d3NLQ05sb1FJWllHRGc0T2NOZUF4UTVMTVBXZ0dpS2J6YzdNek5oRFRKQmhuajU5ZXYvKy9XNjNlNm8yQVVxd1RMUU9xMnUxN2x1N0JhQStzaThmMk8yQStLcUJrcDBndVlFS0hZLy9VVzhBOEtTc21LbmI3WXBUV2lmVXlJM3ByaGZtbmxTY21xWGFSMm9wVTdxcFNyU2d5ZVZsY3FCWkNnTDUyTk1EUEtQdDVzMmJhMnRyNTgrZnQ0aHljZkJMcFZJUlN3TXdzWHllNEFpZ016emtoN201dVhRNmJWa0M0TDI3Z08vZnY3KzN0NGN4Z0hESzFMODY1UkRwZHMrNTBNSGFkRENMV1ZNUnJmaTFMQjlvcTIxL2l5a3pwVE1SUWdPcjNlbDBjTU1VeWthYVFmWUVlSjdIR0tOenFVbmtjcE05YUZrUjBDWU9kTytiMGswTWFxcndvVHdCV2dORmZlbEVNT2d4QXQzN2p4OC9McGZMNit2ckdDMm96WWt0ZzNjTmxFb2xQQk56c2t6N0JDOEN1Z1FRaHVIczdDemVXV1hLenhqelBLOVlMTjY3ZDYvUmFKeWVKUUFLclU5VStuRW9DdmIwd3k0VERGdytvRStwbEQ2czM4TCtMZU1KMU9tNEl1QjVIb2E3aWsrUTd3N0EwNExSVXBpZzcxUWRTakhkTzk5TGtUUUFBQ0FBU1VSQlZCYjJ0YmlERHJzaWNGenBVcDFWeTVRbVRsRDNIU053dmZhcnI3NDZmLzc4NnVvcXp1MjBUWUYzRFN3dUxwWktwWHE5Ym5HOUpKZytvTXJQWnJONDE2cGxDUURqVHU3ZnYvLzA2Vk00WlRHQUt0QmNCcDFHSENoTDQydnV3eTRUV0N3QW1rR3FzTjBPTUFsL1FXR3k1Z3lvMXRFSW9GNFpKazRNRkorRUhEL3Bhd0VtWjQ0cFhacStpeFJ0ZmxCNHlQSmV5aXVtL1BIVHRXOVJXZm1VNnpQazhudjM3cFhMNVpkZWVzbHlFekZxQW93Rks1Zkw2Qm1HaVdYN0JBUEJlZzRBei9ObVptYkNNQlI5cmUxMDEzVnJ0ZHI5Ky9mTDVmTHBkQUFJU0VvVUZZa2tOc0c2QlVBcjZBYW1TMCsxd3MxRUIvckZ2bGJJUytzVUZqV2hacDRVWnNBdlFnYy9MbU5CcjBHZTd3NUE0SUlCSHN4T0M0ODVURjBvS2k5cGRLcVlKVmFtZVZRNjlFOFRtMHI2V00ydlRSZVZOOUducFZUclZkdE5FOUYzSndGc0pmVGYxbXExbDE1NmFYNStIZ2VBS1g4Nm5mWThyMXd1dDFxdFpHbGdLa0VsZmpxZHp1VnlPT0V4NVdlTU9ZNnpzN1B6Nk5FalBIQU5GR2x3bWlITnFvR0lQcTNJMGdwTU5kMVVTcVJMSGdnVGZWRlByVEMzaUgyVDhCZnBBd1h2MkVJWUFWSnM0SE1qUUR6R0NJTEorandKRWg5b2VZcyt0ZWVubEMwYVdxczVUQndqNklDaSswMzB0WlczZk1Xa1dLa25BZngyUE0zdDl1M2JxNnVyWjgrZVJRTlgyM280TmNSb3dWcXRCcE0ydkJNTUJPdkZBTTdNekloakFOUmVwcHp6OE9IRFlyR0lSNnpZSFFhbkFaTFdwN01YbWk2SktaT0dOdjJXM3FYOUxlbHZpd1dndnNoRVJ5V2x2cHJhQjVNSW5ONWpUQ3VObC9MRTNZTENVV0M1S1d0U29PMHF1d1ZneXEvdGNpMVhIWllPOVN4SkdleGNDQVlWSlI1Tk5LY2VMMUI4YjI5dlY2dlZsMTU2S1pQSjJBOFN3R2pCY3Jrc2J0Qk9NQjNBWXdEd0RPbUJKd0VmSEJ3OGVQQUFyMTlUSFcrbkUxU3dtS1NRU2NhQ2VTMWZ5cVlsYUUrMzBEOFVIZERaQVZwTUlqT3czbWtCdnU5TEY2djIrYmhRWWdvcE9YRTJyMnJvU1UrcE93Z1V6YTNtMTZaVHZBZ2RsZmxNOUVHeEFDeWs3SW1uRUl3eHovTnF0ZHJYWDM5OTl1elo1ZVZsYW41SjRKemp2YkdWU2lXSkZwd0NpTzdMWnJQWmJKWXhacG5rb0svbzRjT0h1N3U3MElzQlRNYVJCU1lacTA2eTFmd1dnd0FHcmMyRFlXMVVIYXFIcGFOV251YVhIRUlUSkJsWUx5d0FMeEZvTkJxaTBaN2ZIWUJlcjRrTENFQ29VMnFMT3gzNjNVR1VnamI5dU9pbzZaYW5Lbk5yRFY2TFpUQkJERG9Fb1BINzhPSERTcVZ5L3Z4NWNUZTh5dVRvRzhNcFk2VlNvWWJqQkkySVV3N1JXYmpRazh2bE1BYlFzZ1NBbGlKeXlLVEVBSTZRSWJXVFpwTm5YcG9zZ2JLNkx4V2hUMk9tZzBFMkhpOGRLcGtuVVNEZzJlb2lOaERSZDRzZ0dzSXdVZW9mb2VwVU8wTklwZXpweDBWSG15NGxhdWxMSHppUVZBSVYyS1N1Nis3djc5ZHF0ZlBuejgvTnpabWlCVkZHcEZJcDNIQklvd1dIWC9NRVJ3RHJMWEdtVXFsY0xpY2tHeWlxbmZmT0FkeloyWG42OUNrYURXcTI4Y1F3S3lsSnBDTklRbFdiMHNrYkxXSVNob2RLbHdUNGNkRkJxQTB5L2hCdExzNEZ4ay93eERQWGRWbi9NVUVUQkpYbkxDbGFiamFsSHhjZFN6cUZpYjdnUDlQbnE0a1QxNG5EQVFiRmJHMXRMUzh2bnpsenhtVDQ0bWh4WFhkdWJxNVdxeVhSZ3BNRkhDKzVYRTZjQTZqMkhTY3hnSThmUHo0NE9FRGhpRStUdnJaajRGUlllbXJTdU5yTTJ2eEhTTmRhQUM5Q0ovN25qeUZRcG1Gc0lKM1NlT0labXNQMmtKbEpnY1c5bzg3bkxPbkhSY2VTTGprRFRQU0Y3YXgrck5hU01HVk9BTDJ6QmZmMjltcTEycmx6NXpCYTBPUVNBSUJNSm9NdUFkT1JNZ25HQ3B4ejMvZHp1Unc5QjFEYnZ4Z0QrT1RKazFhck5VRU9BSUVoYzZPa3RzSGNYQmJocGhiUnlpdFQvaEdtMHovdG56K2V3SStTRGc5bWVGZ1FBT0NraC9lT3pvWkpNNFNGa3NZL1JSY0tYcFEwcXpaZE11NG9LNWp5MDV5SG9rOTV5RVNIRXBFK2pmNnZXaW9pNTRtMDliVEFkZDE2dlg3Mzd0M1YxZFdscFNYb25SMmtnbk1lQk1IOC9IeWxVc0dBbXNUR0drT0lUc2xrTXBsTUJzd2RDcjBZd01lUEgrZnplY1lZU2o4NjBDWUZ3K0ZEN1V3RGxObVJLak9sSXRyWnMrVDdsRWpGbk1HYjZGc0UrNkhvU3o0TVV4M0dIOElJRUYvNi9BaE1zUmQyRWovTTBtSGlxZHB0YXJyMFZKdmY5UHRROUxVOFJQT291bHdpb2c0MlNZUWxXbW9nY0NROGVmS2tWcXV0cmEySi9XQXEwSjg4TXpQaiszNjFXcFZNdEtTcFJ3VTZqa1FNNE1DN2dCbGo5WG9kK3gyRHBDWnhZamRNVU9FajVJd1lBbHJScExXVnRZTkZFb2JhaVpCS3dUVHVwUFE0WXRtVTMrS21CU0o0SndYMG8wUnNJS1BIQm91OWd4UDNiYUNiTGtQL040T2lSS1d5b0JNQmtyb1ZpVlF4YS9PcjlFMU9NRXBrSUcvRjk2VFo2U1FRWUl4NW5sY3FsUnFOeG11dnZXYXg3bEhZWWJSZ3RWb1YwWUtRTlBWSUlmZy9sVXBsczFuTEJaTFFHNHp0ZHZ2ZXZYdG9ORXl1MEJzeXBEa0c5RXRPclQ0MmpTYXR2TElZQjlMY1JwdGZLNU1abWZGclA0ZlNWNTBaS2gyVmlQcDFZdzdzTEF3THdEK2ZHUUVpSUdDaVp6YVNIYUQxNzVtK3pzU3ZKaWx2SWc0NjdyUU1Cb2xJSEV2WlZEMHF6aWFSTzBjSVhCb29GQW9MQ3d0MjVrZG4yc3pNVEwxZXI5ZnJFK29TbkNhZytNcGtNcWxVaXB2dkFoWmdqSlZLSlN3MW9ZSnUrTERvUDd1OVpacFpTVGxONmRvWk9lakV0V21PWnhLZVd1SUQxd2lrVDVncy9oSGZTeTlKWVl3OU40UVpPVVpqNHVTYWNFbEpaaDJZNStXcTlhZk5qRDlpTXB6a3A2S3ZpR2xHVUFyUy8rcnJCQVlPeUFSMmNNNDduVTZqMGFqVmFwbE1ocEVJV1cxbTZFVUxWcXRWY2JiZ1pFbUVTUWZyQmNRRVFaRE5adTEzQVlzaW5VNW5iMitQYzk1b05OTHBkREplRGd0R0FJUDB0L1ovdTByV3BsT0pxbjJqUlhtTGF0dXJaeWNpcFUrdXZLVmRnRktPTWViaEwrRWNtQTVRcmFrVnpiUVhWWThRSlRJdzNVUld6YXpXVUsyZVJFR3lBTlJxcU45SWgyaUNPT0NjNyszdDNidDNyMWFycmErdmwwcWxEei84OEkvLytJL3RwZkFZV3JRRG1zMG1XQjAyQ1k0ZHdoUVRNWUFEV3o2WHkzVzczZDNkM1d2WHJyMzAwa3VkVG1kbVppYnByL2lnYlNWcFpWVTBhU2N3RnJHcGpoM3RKTW91ZUxVU011WnZtaWdSTjlrSEV3cmVPeW9BN2VabmdZSDR0K2pPVVZid0JXRFNvSktPdERBUTZJeEhpeTlJc2t5MXZpK3RJV0l5YjAzZU16cll0Titvdm4xeSszRm9RQXQ0YjIrdlVDZ0FRTFZheldReTJXejJOMzdqTis3ZHUvZnl5eStqMVd3cWptdlBPQTJ0MVdyU2xHSjRuM0ZxSUJvV2wvTXptY3pBaXdDZ045WWN4emwvL2p3QTNMbHpaMlZsNWNHREI5Lzg1amVGNHljWkxIYW8vS3pPbm1rYm10SkZXU3J4VEJJTXJISVYrZzBSZFVaa1NnZkNTRnAxb09vTDZWdE01c0trQUMxbThSWFBsZ01tT2lvUUlVMS8xVzZ6V0hQMmROQnROMUNKZzJHb21DaXJQMHpLZ3hyUnB1cVpTaVd3NDlOUFA4M2xjcFZLQlFCMmQzZXoyZXlOR3pjMk56Yy8rT0NEWnJNcDl0S1lpdU9qTUF6eDR2bDJ1NTNjUkh3U2tBWmFHSVlEVjIwb21zMW1zVmljbTV0YlhWMTkvLzMzcjEyN3RyR3g4ZFpiYnoxNThxVGI3YmJiN2FTekRnc3hLSTRnVjJNS1R6RGIwNm9Ob1ZhRGltNlZUcHgwRTNHVFFKNGdjTTVkMTIyMzJ5Qk9ERlIxMG1SQm1ETGlXK3dXZ0xiajFYVFFhV3N0Y1ZDc0VKcFRteTVvRHF5YldnRzFlcUNZQWhOcXBRNE4yRDZ2di83NjExOS9MUkt2WHIwS0FCc2JHN2R1M1pxYm0zdjExVmNkeHltWHkyQ2QzNHRvd1VhalVhL1h3VHlEU1hBMDBKR1N5V1NDSUFCcmp3aHNiMiszV3EzejU4OW5NcG5OemMyLytadS93ZlRMbHk5WHExWFA4MHpuUkNXUUlEVzEvVTg0ekhyOGtlMEFyYXFPVS9tWUZvRFdEaEJhWm5JTmZheTVtTjQ4TXdLbTlkWlU3VHhiTlJqVmRPM1VYeUpMQmIzS3ltcTZ0bUl2WGpkS1oyb00xWk1HWTZ6YjdjN016THo2NnF1KzcyOXVidEtubTV1Yjc3Ly8vdnI2K3NXTEZ3SGc1czJiNlBtM3REdytTcWZUdURTQTBZSkpGeHdqb2lqeWZUK2J6ZUk5WnpDSXcxM1hSUWZQZi8vM2YyOXNiRnkrZlBtSFAveWhlSHIxNnRYMzMzOGZBUEJpb1NtNFAzMElZQVRhREpLTTBzN090ZWttbzFtU3BlcHZpWWdrcGVtZlI2dmI5QTFoNFNCNXZzUDU5My8vOXhsanM3T3pNT0VURnhUcjVYS1pkcmFVQWN3eEFSWTFENHBWcTFJd2FYcHFHVWcvRGxzM3ljaFF1UlA3dFZRcWxjdmxhYlhxamd1dTYvcStmK2JNR2Z3VEhRQVNybHk1QWdBN096dWJtNXZ6OC9OQkVHajdUZ0xtcWRWcXJWWUxETjJkSUQ1RUE2WlNxWFE2RFRIRUZHT3MwV2kwV3ExNnZiNnpzMU9yMWJhMnRyUTUwUTRBZ0dhejJlbDBway9pSHkraUtGcFlXTWhrTXBhN0dGVG5LK2dFcGpZZGRISlNUTWUxT2JVQ1UzVkNxSzg3Yk4wRVpmVDVUZnE0ZGh5bjArbWdwbUMvOTN1LzV6ak9kRVRKUmxHRU80Qk5relpMdWtxTmRyUEVURkorVTlOSmFsdFFzT1NQV1EyVHpVdU5nSW5tMFJNRjV6d0lnaUFJTUF4UWF3RUl2UC8rKzVpdDJXdzZqdVA3L2tEaTJFMm9oQ2JYWnpnbVFMR2JUcWQ5MzVkbWZscmdybzAzM25qanlwVXI2K3ZyNit2cjE2NWRzK1FYZGtDcjFlcDJ1ekdEREU0aEdHUFVDQURyekp1S0xLMGdNa2tucVg4dEV5Y3RIVW5lSHFFYTFIYlJwcnV1aTNQbVNRZk9tUUdBZmVjNzMwRW5tOFhKTS83QUhrSWpnRnFwMGhkcG5Ud216NDlXM0hEREdyOWFYRXZCVkh5Zzkwa3FxQTRWL05OeG5JT0RnOFFUUUtFYWhhN3JobUdJdiswYUF2SEJCeDhBUUxWYXJkVnEyV3pXOS8wZ0NLaEMwb3BDWkVpTUZqVDVpaEtZSUpvckNBTGMwSy9WQjZMOVJYcTczVDQ0T01DbmNUb1grdTJBVHFjRHVyRHpCQUFRUmRIaTRxSXdBa3hTQ0JSSHZRUXgxZFpLUXBQWTFCS0pVMXhMUVZzSFU4V29jZU41M3V6czdLUXpCdWM4aWlKMG5QY0ZCazY2a0pMMHE5MjdiazhFSWwvVVY4UXBicUpweW1raVlpcW8xaUdCQ21vQmNNNGR4M0ZkRjhQS0lMYVNRRmNCcW9wcXRScUdZYmZiRGNQUU5HTVFQeHpIeWVWeWpVYWowV2hNdXRRWU1uZ3Z4a0xFQUlwMEtSdjBCazY3M1k2aUtKVktaVEtaV3EwV3MzTUI0TnExYTlpNStDNnhMbUR4S1NZQW5ieVNmSllXYVdhYWNKdWtya1c2YW8xQ0thZFdGS3QxTUZXTXBxaHVoZ2tGWTh4eG5IYTcvY3dJZ0tsUUpJd0FEUGFqZGxTcmZXK2hBRXBiU2NYcG4zRnNVbFBGdEgvYXF6UUZuWGk4b0gyQld2bXdGb0FBcW9xdHJhMnRyYTByVjY3ODZsZS9pcUxJSGxDR1RxbFVLb1hIRWljM0VjY0U1OXozL1hRNmpUR0FjUnF0MFdoVUtoVThPQ2liemRJWXdEaWdkZ0RhRTBKekpGMG13UzVnSlVsSUU5VThwdm05MWhNUVg4WnFpMHZpWFZ2Y1JKUDYvS1ltNEZkOEZQdmQzLzNkVENhVFRxZkYzWUtqcnRzUmdaVXZsVXBveUQvL3dzT3NDS2c1NHhnQmRrNVNINm5GdFY5RWk4ZWhpUXk2djcrZkxBZlFRWXN0ZzdIbHFWUUtNeHpXQXFBUTN1Tno1ODZoZGg4NEoyQ01SVkdFMFdxUVJBc2FJSm9sbFVxWkhDMXFrV2F6Mlc2M0c0MEdwaHhMenlMTnhBNlFnTXNCMld3V0xUUFY5MDdkNlhRTXdpQXBSeW5Fb1NrZXhaR2xLazF0Y2ZvaWxTYnZyVGluMCtsTUpqUHBYSUVpRVM5Q2N5OWR1dVQ3dnVkNUUvMUpDTVpZdTkwVzh5MXEvUWtHRW85VUp4SUZ6YXdxWU5WWkpQMnBacVlWVUZPMDBCWWZTQk0xelJUMDVvdUFkaHowWnBiSFlnRUF3TmJXRmthY3ZmYmFhNFZDb1Y2djQyVjBGbzJGTmZGOTMzWGRUcWRqNy9kVEM4NjU2N29ZZFdGdlQ5SEZ2dSsvL2ZiYmYvdTNmd3NBOC9Qeng5S3pBSUFkU2owMzdIUVBLQVRuSEJkbzZIeGRuZm96dzI0bUxiUVVMRFJwZlpoWkZGT2h6ZnFsZ2FtNGVKRzJBaUkveGhSUHVoR1AzOUx0ZGp1ZER2dk9kNzZUeVdUQ01Kem9Rd05GemF2VmFxUFJ3SGx3ekQ1V2M0SjVHVW5pYjIxWjZHZmNnY1cxRFg1WW12aG40Z25RQ2hUUDh3NFZDUmdIdUlFUVZ3Zm01dWJRemhoWU43em90bDZ2WXdDYVZyU2RIbEJiRmdDQ0lFaWxVdlkyRVk5U3FWUVVSVStlUE1IMDQrcFc2UGNINEhLUGFvaWZUbEJQQUthd25qOUE1Qkc5YVpKZ0VtaHhLaDdqMHh4WVhGdFBVMWtnVTM4MVp4UkZ1VndPZWMvMFJXTU93Y3hSRk9GVnFCNVZqVENaWHlYQUdLUEhPWUZoamc3OTdHS3hNVTJKOXJJaXMxUUJyVW1yTlRVT1MxUE5rNEQxVmdHQ0lEaDJDd0I2UmdCdUlBeUNvRnF0ZHJ0ZHZNM1dNa3ZBeVdVbWsyazJtODFtazhxZDA5WngwcmVuVWlucUFEQzFJWTd4WnJPWlNxWGVlT09OTUF5M3RyYU9zVnVCeEFlRVlZanJBdlRlMVZQWVUxcVlaQ3lZSlpnMC94R1pwUXhIbzJrWHlQSExXdDRsOUl0YTg0bkc4M04ySnhyaUU4UU1XREFUaGVSZkFyTlAzcEk0c0t3SldERktSRXZoQ0RUcDc5TU1hVHhqR09CSldBQUMxNjVkdytzR2Z2akRIMzc3Mjk5R2h6LzA1amRhUkZHRXBra21rNkh1TjB1UnFZVDRaTHdLQ084Q3R1VEhCdTkwT3MxbXMxUXFvZDlsZmRBeEFFZnVWdndSaGlIZVVjUVZWWkZBa2o5eHdNM2lEcFNwK2FGb3dqR0pkQ0Jyd1FMUXIySW1tZ0VZMFJUUFB1MFAvdUFQY0ptSFRUNXpNOFphclZhMVdsVlpTbVFBM1FZU0xTbHQ4U09YbFlvTXpIQzAraVRMQVVKTTQ5MC9SOTRMY0ZnSUgvTFpzMmNkeDhGb1FhNmJUMGoxeExrbVROSEVJaWF3QlhDRkZheStFQ0dVMFhlU3pXYnh6SWFoOVNtZUp3aUtML0JFM3o2R1VKY0RFQ2JScEJWeEZybkhCem1CWXRKOGtmcVlkSVFZempNek02N3JUb0d1NUp3M0dvMW1zOWwzVHNCRXN6WDJDdlVFU01OVmNKajZtZG9Vcmd0VWlWbFdUYWRsV2IvQnEzN0wwZXBETTV4T2lHYkJRTmVoV1FEUTh5Rmp3T0RYWDMvZDZYVENNTVFZUUV0dEFRQTNFS0o2TytsS2poVWN4OEZ2Rng5dWwvNUJFTHo5OXR0WHJseFJMd0k0SWRCMUFRREFxNFpPdVIxQWhaaElWQ1d0cVhHMDZWUXlVeUp4aEswMjU0dlVSL0lOU0tTbVExY2l4TGM4M3gwdzZpcTlLTVFuaVhtVjFGdmFjYXZ0VVpIenlHVzExVk5MYWJuY1lsVU1ySS9qT0dqY1RRR1BIZ3JDQU9LY080NHpUQitBd05iVzFuZS8rMTBBS0pmTDI5dmJRUkQ0dmk5dUhqS1ZRcWNGT3NPMXA3Rk9FOFNuNFdhTmdaNVZaR084bG1sN2V4dWo5ei81NUJQcHdxZVRBOTB2RUVVUmJqOGVxS3VtRlp4emNZVWpoU1NPTEpyU0x0OUFFZGRxSGVMTW1yVDFNZlhVd0xJMGordTZHTHVxMHBrNE1NWTZuVTZuMDNHLzhZMXZpSVhNU1FmMlRhdlZrbWIvVWdhMWxBUmgvUjIyckphYWx1OUJOeDVNRk5RUE1kWG50QmtCdEtmd1J4aUdRUkFJbzNab0ZvQjQzYlZyMStibjV6T1pUQ3FWcXRWcVVSU0pEWVNtVHNGSDZMMFF5ODlUMW9OMFpLVlNxWmgzQWVNMUp4Z0RDQUQ3Ky90RDdsRG90d09BVEN1bnNwdnN3TFVZN1FZNXJjNDJTVUt0M0l0ZlhIcGtLcXQxNmNjVXJTYmhqeWVPVDRlTnpoanJkcnZkYnRmUk52U0VBZ0JvOUthMnk4R3NaUVdZZ1YxTVphSGZGVytxMjhCRUlJdFBBdG9QTVdGNEhEUUdFSTBEdlhack5wdSs3Nit1cnVMSmNjTlhHQWdSTGZpREgvemcyOS8rdGxqMkJwM0VBZlA4T0dhblR3U2d0MWNUWXdEdEhscjhkanlodlZLcFlPdXRuMHdNWUJ6UU9FRTh4SkJhbjlPaEV1SWpmcWVMOXBHa0sramtuc293SmtaaS9jcGJtMGRORjExR1JXdjhzdERiNG12NjJBa0ZBTEEvL01NL0ZNT1NUYmdXd1U4b2w4dDQyaGNtMG8vU0d1OVVmNnNyUUFQTHF2bE5nbDdidkNhQ1VwVmlsblZkdDFnc0hod2NUSDFnb09vRHFGYXJ5OHZMOXR1Qmh3d1JXYmEydHVZNERqb0c0aFFVSjlhZFlPV0dDTjZMQVJ4NGxBTENjWnhxdGNvNVgxaFlHRTRNWUJ6UU9FSE91WFNKemhUSXo0R0lvbWg1ZVRtWHk2a0hZR3VGSHRYNmRLakdMNnVtVTJxUytOVytsNzVDeWsvRjdNQ3krUG5wZEZvY21LaldiWUtBQmcxZWErSys4Y1lidnU5UGpjN0FHeEhFRlNCU2w2TTJWVjA5MUdLZ0dqMU9XVFcveHRUcS9aQlVsMFRRbE45ZVZucnZLVmtPa0Q2L1hDNTdub2R1V3hnUEN3REkyWUtYTGwzSzUvUDFlbDNzTndQcnFxZm5lWGlzRU8zMGlZUGdXNHdCeEptR0thZG9FL3p3WEM3M1QvLzBUd0J3L3Z6NUljUUF4b0VVSDRCMndFU2ZzWFpZOFA2WUFPMk1CWlNZS2lxZFFEZFRzcFFGM1pLcktuSlZzUXc2KzR6MVd3d21rYTR0aTBCRGRrTEhvd3FNUTNMZmVPT05JQWlteGdoZ3ZXQUg5TnVvS3BZcVVUQXYvNWpVTXhDbVZQTnI1YlZXT29qS1VLMS8yTEpxdHROZ0JLam1Qd2JpM2J0M0R3QldWMWZIeEFKQTBHakJuWjBkWEZlT3M5VllqUmFjT1BCNE1ZRFVyNXZKWkZ6WExSUUtUNTQ4V1Z4YzNOemNIRm9NWUJ3SU93QjdCdytCRmsvWjlBNDZoREFDdEZhczZmT1pRYkl4bldLT1dWYlM2OUEvUUlEb2NxbDZLa0ZHSkRCTjBlb09YQS9TdDg2a2dUSDJMTmIxai83b2ovRDJvRkZYNlhqQUdHczJtK0tvQU9rUktDYWVpZitrUkJNdnFrOU43MVVUYVJIVFpDSk8zU2dSeDNGT3czSUE3Y1JTcWJTenMxTXNGa2RkcVFIQXN3V3oyZXplM2g1akxKZkxtUnllQXZpTjdYYTczVzVQaXR0WnFpY0dhY2FaT1dFTTRQejgvRGUrOFEwOGpIa2NsZ0MwRUYxWkxCYXIxZXJwdVhwWUxBZUlDNFNrREFQdFBDbEZLd1pqbHBXS21HeUZnZFZUMXdoVUkwRDhPVHM3RzVPZnh4K01zWGE3WGEvWEhlZ0YwMDBCOE51RXBTWTlwWXM5VXNkTFJOUkV1NTlmUzBmTkpoRVVsZFRXMWxMVzlIVkQ0WnhSZ3ZjdjdPRXF3RVJZQUVDaUJULzg4TU9scFNYT3VlLzd6S290OEJ2eDRnUHBiTUZoMWZwd29GMkRtNmt3ak02U0h3QVlZK2wwbW5OZXE5VkdIZ01ZQjlpVkFMQ3dzRkFvRkQ3NTVCUHhqUk85ZkhNb3FDSVJEaVBFcUJ3ekVSeElreTRjcUhra2dxQVQ3SlFPSFYvYXI4Tzl4NkxhRXczOGltZVg3SHozdTkvTlpESnNXaGlYTWRidGRzdmxzam9hV2IvQTFTNFVtVmFibUNLc3BmeUNhU1JKVFJQdE5aSEtXdW9HaWlZUUdhYmVFMEJiWTJkbnAxQW9sTXZsVVZmcWNOalkyQWpEY0c1dURtTVlxOVVxRElvd3grN0dZQmNZVnp1QWNxbm5lWEdPSG1HTXVhNWJxVlE0NTB0TFMrTVRBeGdISDN6d3dZMGJOelkzTjJkbVpwYVdsbFpYVnpGOWl2MEJraWNBekV2NzZuUkwrczM2WjJVQ3FxZ1VEak5UV1ZOVFN3VXQxZEFTa1Q0TjdWcmNzWExrQmh3cm9LNnMxV29ldFFzbW5XdXhlOUJldyt1L1ZFWVVvRm9XeUtSRW02aTJqT1NHa3BTOTFwaVF5RW8xVWNzQ0dWRzBialJGSWpqcFBXaUMxSWFNc1U2bmcwRUFFNGZOelUxeHR1Q3ZmdldyYnJjYkJFR2Nzd1V4Z0pjdURZd2IwQXpGZWc0MGF4aGpRUkMwMiszRnhjV3JWNjhPN1J6QTQ0SUlQU21YeXhqM2dCcENZdFRSVnZMWUlZU2hxaU8xR2hmNnBaTXFOclY4b20xRFZVTGFxWWs4a3U1WEJiVkpRVWc5U0dkV2s5NnpWS2Q0YW85T05MRGJoQkVBL2Qwc1phWnFsU1pLczMrVnQxUnFGbElEaGNLaEVxVVJOZW04T0JDcVpPR2NwMUtwbDE5K2VYZDM5K0hEaDZPdTRGRnc3ZG8xdklRd0RNTjZ2WTY3NStOY040QVhJclRiYmNIZVl3VjBBTmc1VTR4UVBNdWhVQ2c4ZlBod1kyTmozR0lBRDRWQ29kQnV0eHVOeHNyS0NzVHdJMDRCNkVlcFVrN0xBUEhsVlJ5Q0Z2cmF5YjBZWERIbHNPb3dtSnFRUUFIR21PZDU3amUvK1UyNmlEN2FPaDBMME11QjI2eWxYbWNFb0ZzaW9vcGZQS0p6ZlVGTmdpWFJVZ2Rha3poUUhReTBMQURnMVRWVHRqdUE5WXRVMy9keHUvbXJyNzQ2dVdxRG5pMll5V1R5K1h5NzNSNTRFekVDQjZ3NHNnWkdaOFNMdHpQR1JMOE1MTUlZNjNhNzZYVDZ6VGZmQklCR28vSEpKNStjZUYxUEdLMVdhMzkvSHdBa2Z3Qk1pMXdGZ0NpS2Nya2NIcGtuaVM5VjFzVVJkR3BLVElKZ0NFcVFLaWJvZzBIYW14N1JPZ2hTWVJoT3g0RTZDUHlLYnJmYkYra3cwaW9kQTBUbmlYTURtYUk0SlNOUkpGb2VVVDZnZjRyOElsRWlOYkFPb3RwcVFhN0FUbkJxV0ZOQXN0eDViN0VaYjNPcDFXcGp0Ulh3YUJEUmd2L3hILyt4dExTRVp3eWpMOTBPei9Od1p5OGYzVnhUOEI2ZXBTcU8wak1CaTZ5c3JMaXVXNi9Yc1IvWHh6c0c4TEI0L1BpeE92M2cwK0puaGY0QUppcDJtR0wwcUF5Z3BsTzVDbVRJRHlSSTZ3REVYMGhibSthaE5MVjFrQjZwaVRENWx3aFRpSlozSE1lVHVtRUt3SHQrRzY3NDhFVUdsYytBckI3UlJ6UVJkR3YvTkpFU2xFcVo2cURtRk5uVUVTSVJwQlU0WW1PTksyZ3pZb05FVVJRRUFXb09HTjJSd01jT05HVTJOalp1M2JvMU56ZUg4V1cxV2syY0ZLUXRoWkZaR0V3Z29nV0hXVzBnTVlEQ00yR3FBK1owWGJkV3F6MTgrSEJoWVNHVHlXeHRiWDMvKzk4ZmFvMVBIaGN1WExoMDZkTDI5bmFqMGVDS0NUdnEyaDBQcU14UlphYVVXWkt1a216VWx1VUcrMGtTQ0ZJRnBGcEpkYURVVk9tcXZrNTlPOTBhTURXNkV0QUl3QUU4TlF5S3dLVlRsUldrUHlYbEtqSllodTdBUkZXRlUrSnFPMnV6Z2NLajlsSmdHSUdUQzlxTW5ITzhtWGY2TEFBQmJiUWdYb1ZsS29LUGNBM2VIbGQ0UW5BY1IvZ3RhSlZVNE5FNm5VNW5RbU1BNCtPOTk5NnJWcXZZTXQxdVYreW5ueVk3UUR1RE1tR2dZQVREVEVhbFQ3T1ozbTVKMUZLelpLQWZDOFFJbUk1T0ZIZ1d4VFBxYWh3L2NOcUJoM2hRTGxTemFWT0VjWUR6Y3ByQmxBajlYQ1hsVWUwTVV4MjBObktjbWsrTkJhQmErcDduNFk1enpEQjlGZ0JDaWhhVStNZGs1UEZlUUg2bjB4RTdZazZPR1FSeGRBQXd4clRIQUZDSmp6R0FqTEdEZzRQSGp4OVBlZ3lnSFZldlhzVXJCb0lnYURhYjBsVkRVd0E2ZDRxcE95UjFDekgwcUVsZ1NuN1pROWtCOUZHY21aWGtJVUI3ZHdwdURWRGh2djMyMjZPdXd6RUR4U0s2U1lVR3BlT1FHUUJLaEFqbzdGUHRrTlpTbzA5amtqSlZUTXFqTFFXOXdNQjZ2VDZoNXdSUWlZay9pc1hpd3NJQ2JxbHZ0OXZUYWdFZ2FMUmdOcHZkMzkvSGFFSDd5Y0hDMmM2VUtKWmpFVmgwVUNEeElBakU2MHhWQWdEWGRkRVd6MlF5YjczMUZreExES0FkMHRYRGpER3FPWTZsUjBZRnpqa05EQVREYm1jMVJjc2VORTlNZ1NtUlVtdG9hbDYxaUVuU1N2YUhLREpsVVlFVUU2a3E3TUJPUWljSEl4YUFKTXNvUUdjYmF2bU1LY1lFR0poVld5dUpqdEIySnBGdHFnRE5QeDN5QlVIMUN1ZThWQ3FGWVlqTDVObHNkcm90QUFFUkxmampILy80ekprem5ITnhZcUFXMEpzaHVhNUw5K2hibFBTaElDd3pOSzlGUUNKOXRWb2wxM1h4V0wxbXM1bEtwV0RxWWdBdEVKK0piWVYzUUlqR0hHblZYZ2hVaEVvcFlIYlJtMUlFSFdHNTJrdXBpV3A5VEJYUWlsOVF1SmVLWWtsbENKUE8wajRUaWlsY0RoQXlTT3BPcWwya3I1YlVxb0RhT0ZKWnlqY21PbEtlT0hRc2RhQ3ZrRjQzMGZLRjloR21pQ09CT2VlWEwxK2VncjBBOFNGRkM2SXJVb1RmbTByeFhxUmV0OXM5cnFVQk9tUndaZzhBOWd1UkdXTjRiM0s5WGw5ZVhvNmlhQ3BqQU8yNGR1MmFXQmZBM1lNTEN3dGluRTZCMUtYZm9oVktBcWJ2TlFsUFMxbFZTaHdqSFpxTlprRGJkNXEyMFZFd3hxWndPUUI2L1NTZHJTWk5hOVQ4VEpubDB6KzF3bFROcG1hVzhvQ09qZFE4VXFLMkF0cHExK3YxUnFNeFFjc0JhQ0h1R1FBQUlBQkpSRUZVMHJRVi85emQzZDNlM2o0NE9NRGYwN3FFYk1mdTd1NmJiNzY1dnI3Kzl0dHYvOTNmL2QzeThuSTJtNVZZVkFLMkljb3NPcms1TXFDM3ZvWkJBSno0cnRTYytHcDBGOC9Qei8vZ0J6K0FjYm9MZU1qQWRZRk1Kck8wdEZRc0ZzV3VTTlkvTFJsMU5ROEJ6bmsybXhXM0NJSkI0b2xIZ2x2QXNIQ2dKcXB5VWsxaGlzZzFDV2RUTmxPMWFhZlF5dU5GR0JNOXl6S0JjODcrNUUvK1pOVFZPSDVnUjViTFpYSEJGd3dhZTFLS2xKa3loS1dVaFJSTmorLzdraXhUKzdzNDU2N3I1dlA1UXFFd2NZZGIwWFp1dDl1LytNVXZSbDJqY2NHVksxZUVleGx2SEhqdzRFR2NFd001NStnU2VFRk5neFpBbkp5dTYySklmS2ZUT1RnNGFEYWJwOU42b3hCWERHQm95K3pzTEtaUG9oM1E3WGJYMXRabVptWWtwdEpxUjNWV3JjMmpMUUw5Y3dOTEVWT2lPcldJUTBxYk9ZcWlkRHFkeVdTbU1pcVFNZWErODg0N282N0c4UU5uSkZFVTRjRWRZRjIxRXZNWW1pSnhnNW9IWWxzQTBvOURXUUNIZlpkd3cwNktKMEJxWjg1NU9wMSsrZVdYUzZWU3FWUWFkZTNHQXRldVhSTnp5blE2L2ZUcDAwNm5nekZLOXFrSjY1MmFKVndDOGFjeW9sT29BOEFDM0tGUUtCUisvT01mZis5NzM0UFRFUU1ZQjV1Ym03dTd1d0RRYURTYXpTWk9wbFh4TXVwcXhnTG5mR1ptUnAwVEg2TUVveXNMWUJET0ErbUlndloydGtoK2lTYmRuVFJsWUl4TnlTWENFcUMzdFV6Y2tzejdvLytrekZKeG1zMVNSQzJvUXVzRGlFTkhtelBPbjhObW9xTkNNdFV4MGZkOTEzV3IxZXA3NzcwMzB0cU5IVVMwNEwvOTI3OHRMaTQ2anBQTDVleW1IdXArdXB0L0lMc0tGaElGbWRWMHdFZU80N3o4OHN1NGsvUDk5OSsvZHUzYStxbUpBVHdVeXVYeTF0Wld1OTNHUDlsRVdRQVVoeFZLcWtDamVkU2M0aTMwZFhhT05WVkFhMVhZNnl4VkFNTnhZdFprNGdCVHVVVVFnVitJeDYydy91azRNNi85QStFOGlkVEFwU2twRzlOSlR6V1BTa2VscWEyQVNnY0FKc2dUd0JRTFNSd0ozRzYzVCtjcXNoMDRwOXpZMkNpVlNyajFEbnBIbWNhWnFZUGlZcVdzTGpsdlJReWdIWml6M1c3djcrL25jam5vYmVOTUxBQVRMbHk0OE00Nzd6UWFEZWxXYUZYc2pDSFFFNEF4SDZDYjY2c2VBcUZwdE5sVUFhaWxJMEhRSEVobjRCZlo2ZUNmYU4wT0pEV2hZRlBwQ2NCdnc2bU1aTUZCRE1OVGE3SEdtY0VMV1d5aEk1VUN4VmFWU2xINUxoVlg2UXlGWjQ0Qndpc0R2VTl1dDl0NC9qeG1TRlNJQlp1Ym0zTnpjK3ZyNjcvOTI3LzlyLy82ci92NysySytiZ2ZxZGNwamdyVlVDMkRnL1FVQXdCakRHNE9XbHBiKy9kLy8vY2FORzZkbkcrZVJnVWNLNGhHS2RLL0hRRE51M0tBS1FLMnNRMjVSWlNtWS9hd21Va0JFYXh5QnJDVkw2Y0FnMXl6bUVhTW1UajBuQmJRZHBqQW1RSHdraGdWME9oM1Q3ZzZtYzZRelJadlNweTlJUjV2Q2xDRWgvbFJMaWJ1UkpEcTg1NWdkYzA4QVY3WnJWcXRWbkY1Z2hrU0xETVRXMXRaM3YvdGQ5THI3dmgrRzRjek1ETzZGQWJPY1FyT1lrYWtQNVRIQlAvUXVZSlA0WUl5aGxkRHBkTnJ0OXBNblR4WVhGNmY0SE1CanhPYm01dm56NXdFQW96cmE3VFlkMFpJUUdEZFFUNERFRDlBdkp5VmhTSit5ZnQydkZnUkZvcXBrVFFXbGQybEx4YVFqRWxPcDFQUWRHRXcvZVdxWEF3Um9iS0FFMWZxV3VBZjZtWkxtT1RJZGlSM2p2TXRDUktJejVrWUF0UUI0YndlSDUzbXZ2dm9xbklJREFZOFJORm93bTgzdTdlMjEyMjJVemdQbmxJSm5xQ25HZWc2QWdhOUdCOXYrL3Y1UGZ2S1RQLzNUUDRVa0J2Q1FvRWNLK3I1UGo0T2tRMlBFdGRTQjl5OEhJTFJTUzNLdlNyRExUUEcvK2haVEtXMmp2VGdkL0oxS3BjYXpPNDRGYkNxWEF3U2dkM0FwRlhhcVMxTXRKZjBwR2t2Z2FIU2tncFpxbS81VWlVZ20rVGhEc2dBQVlHZG41OUdqUjlldlgwODh5VWVEaUJiODhNTVBWMWRYR1dONFNqOFlEdklUd0lNRUJDK3gvbjBFSmdDQTR6ano4L091NjJZeW1TUUc4TWpBRnN0a01tdHJhOFZpOGVPUFB3YkQvclN4aFVrWWFrVldIRmlJbU9oQS85b2lWM3o3VWxVUFJRZkxZbEJ0L0srWU9BQUErOTczdnNmR1huOGNEZGlYdFZxdDFXb3hjNkMrV2tUYklMU2doUTd2OTNTcHhMVTAxVDlOZEZRaVFNeGIxM1YzZDNmeitmeDRibWloWXE3ZGJuLzIyV2VqcnRHVVlHTmpJd3pEdWJrNVhMOWtqTmx2SWhZUXg5bkdlWXZuZVhnTzFjcktTclZhcmRWcWlmcC9FWWdqQkdabVpwYVdsbFpXVnNSQVptUHBEK2gydStmT25adWRuUlhuQktqR2lscHRWYk9xQmRVL3RmSlRla1F0QnRCSlp2VVRwQ0oyT3B6emREcU5sM2VNVzE4Y0k5eDMzbmxuaWorUDllTE9xT0VET21YUHlZU2VEa0lCM2ovajE5S2htcHYzKzZBa3BTNUtxZS9WMGxIVEpXdE9UTlRHYlRtQWppanhPYWxVNnVMRmk4bGhBTWNGY2JiZ08rKzg4L2QvLy9maWJNR0JFOHFZWXgvUEFRU0FwYVVsM0xoeGFzOEJQRWFJSXdSYXJSWWFiWmxNQnZvSHkxZ0paOTQ3SjhCMG94WDB5em9xdTdUeVRSV3FVbWF1ZVBKVldTcEpSUzFacVQwbGMwRkxoL2V2Qll4VlJ4d3ZwakF3a0FLN1U3MlhuZXAxbXFMbUFVVlBTM25VUDFVMk5iMVUrMTZWam1RS3FFUkVLY2R4cXRYcVdCa0JkS1R4M3BZTmpDcC85ZFZYazFDeTQ0SVVMVGcvUC8vdGIzLzd3WU1IY1V3QkN4aGp1S0RXN1hZN25VNFNBM2hDd1BzRkZoY1h4VVUxNDJZQmdQbXdJQUZKUUZGdENqckJkV1NocWs2eFRHUWxNVzU2cjVTSDlWYVRSY0R5RkdOcWIwWVN3TjA0SWp5UVFzdHQwcC9haWJpcENDaFdQQzFpR3RqYTltYzZ3L213UkVZTGFzdmpqeWlLeEdFQXRWb3RtVW9lTDY1Y3VRSUE3Ny8vZmlhVGNSem5vNDgrUXBPcjAra2MxcDhaUlJGR0NRUkJrTS9uUC9ua2t5dFhybXh0YlcxdGJTVkxBQ2VFbFpXVjVlWGxaclBaNlhTa3NUUHFxc25RS20vUVRiaXBIV0J5OGt1SjZzS0JSYWhxUWQrck9uMU43d1dscWVtZG5GTU1SNXlwTjVVQUFNYVk3L3RxT2d5SzlaQVlTRm9kb1BTbFVreGhWdkVvem5zcEhmVzlwaFVCa1RnQ0p0SkJXbEtKb3FoYXJhWlNxV1FyNEVsRFJBdis4ei8vOC96OHZPTTQyV3hXSERNY0UyZzkvT2hIUDdwMDZWSTJtMDFpQUllQXk1Y3ZBN20zWHZKZGo0a3FNc2s5a2FqS0syMjZDZmdXS25pWlRxaXE3NVVndVNJR3ZwMStuUUE2TExYMHB3WUF3UDdzei81c3VGdzBQQWcraUtLb1hDNUx4alZUdUFvVWx4RWxKZkpBLytxUjVFR1NpcWg1N085bC9YWnV6UGVLUDEzWDNkN2VIcFBBUUZIYktJb3FsWXJuZVcrOTlWWVNVRFkwMEdoQkFFQlBUQnhkZ3FjRnJLeXNwRktwY3JtY2ROblFnTGNQQXdEZWV5THVQeHM0OXgwT01EQndmbjZlWGxRdHlTNFlGTHVueWt5UlIveHZweWxJeFg4djZHUzc2YjM0MjNYZFhDNG5DZVRwQStkOCtzOEpBQURIY2ZCeU0wYk1Sa21KZ2pXd1gwcGhpdG1ydmpRT0VkWnZnUTRrb3FWSjJYVGtNUUdTcFlVL2RuZDNkM1oySGo1OENFbEEyUkJCb3dYLzRSLytZV2xwS1pmTFlVaVhWcTVob3V1NktPVTl6L3ZIZi94SFNMcHNpQkJuUHl3c0xCd2NISHo4OGNmbnpwMkRzUWtWNUNRbXdGSVpLbDNWUDBVaWxYNWdub0FOSktLZEdtbUxhT1cyT292RERHRVkrcjQvSmc2WUU4VTBld0lFR0dPdFZxdGFyVXBzUnpPb0hpY3BnMHBUVW5qYTk4WWhZczh3a0NhbDRMcnV6czdPM3Q3ZWFEMEIxQWZRNlhTU2U0RkhDSG9UOGVYTGwvLzZyLy82ZDM3bmQ5QWxRS2ROQU1BWUUxY0dkN3ZkNUM3Z1VlR0REejdBSDU5Kytta1VSYXVycS9qbnlPMkFicmQ3L3Z6NXViazVlcE8xcW10VnhXbFAwU3I0Z1RTQjhLM2tZTEFRVVVXOUtYOHVsOE4xR2ZXOTB3VE9PZnZ6UC8velVWZGpHT0NjbDh0bEdoNGxlWXBVQzhDdXdyWDJvL1RTZ1NuU2VCNW9OSmlxSVV4YXovTzJ0N2RIYUFSSXd6SU13N1cxdFovOTdHZm9Ca2d3S21DMFlEYWJUYVZTalVZam44OUhVWVJlQVFSdUFpd1VDa2tNNERoQVBVSUF4c0FmZ0ViQS9QdzhYYWNBczJ5MEpOSS9MYTcrT0NtcUtMYThVVjJiMEJMMFBBOHZ4RG9OY045OTk5MVIxMkVZWUl4RlVkVHRkcVhMaGFFLzFFWHJXVkx6MC84RlJGbHBqY0JFazZaYjhsTm5nOWJ4UU91UHl3RzFXbTNJeXdIcUtnQU9wR1FyNEpoZ2EydnIzWGZmdlhIanhvOSs5S1BWMVZVOCtBK3Z0d2NBei9Qd3lnREhjZGJYMXpIejk3Ly8vVkhYK3ZTQ0hpRXdQbHNIT2VlenM3TmlPY0JVRGNuTkRrUmVTVUpWRll5Vy9DcE5XZ2NURVZWdVM5TTh0VXFjODFRcWhUdGo0emZPaElKejdsRzlOZXI2bkJTd0wzM2ZiN1ZhTkVXb0s1SFR4S3phL0pKeFFNbHFqUVpxSlpqV3NkUTZTRFMxZFRpV1Zqb3kxTmxKRkVWNHNRMGtXd0hIQmxldlhnV0E5ZlgxbloyZDFkWFZyNzc2Q3FQL09PZlZhdFh6dkhQbnpva1l3TVFITUQ0UVd3ZmI3VFlRaVRIYWdTLzVJRVc2Sk9oRVptbEtvMDZISklKcWZwV21vS0N0Z3pUcHQ2d0MwUHljYzl4VlRwOGVUNU9ORTZoYTBWK3ZOMzNBaWFsWTQ2RTZsUUtJUFVnTlEyMStwS3ptbCtpQU1qRFU5SUYxc09lM0crWW5EZFkvdEQ3KytHTTBwZkZwb2s3R0NsdGJXNnVycTF0YlcxOSsrZVgxNjljZHgxbGVYcjU0OGVKUGYvclQ1QWFIOFFUZE9paUNPWmlpVFllRGdRSlFkWEJTOFRVd1A1MXVhUVdwdXFkZHJZWWtzWUZNbGl4MUVLVHd2b0RSQ3RXVEJ2MjAwN0ljQUwzdXg5VXNhblV5SzFRL2djUi9VbjRUajFJaUV2TU5yQU90QmxNR0JtVld4M0VxbGNxUWx3T29CYkM3dTd1NHVJaGlLN2tWY0R5eHRiVzF2NzhQQUJjdVhIajk5ZGN2WDc1OCsvYnRNQXlUY3dESEUvVFdRY2R4U3FVU3JySXhZbnlyY3VZa0lDMEhnSEtLaWFnVjVsZmxHT2prSnlVQ2lsbWpKUUtLY1dDcWcwckJVZ2NzbFU2bngrZkUxWlBHOCtXQVV3SmNFUkMzWDhDZ1lIdHRCdnVmV2c0MkZSRXNlQ2dpOVBjSXpWWEp2Y1lZQzhOd2RuYjJsNy84WlNxVnVuejVjcklLTU9aNDc3MzNWbFpXZG5aMjNudnZ2WC81bDM4WmRYVVNHSEh0MmpVUjJsa3FsY3JsOHN6TURJdzZWSkFSTzBDa1NEWFJPdDZsUDAzQ1RTTEMraWR2OFdrZXFnNis3NHVMWndkOC8xU0FNZVlOempWRmNCd25DSUo2dmE0ZE5wSTlxREpCSElPQUtiTjJTeEV0RWRYM1lNbFBMZFloV3dPU0FFcWxVbWZPbk1ubjh3Q1F6Q2tuQWhnbGtHQWljTzNhTlduTHdPcnFxbXFJRDZFbTZuUmMxYW4wVDlBRkI1anlXMUlrOTYzOXBhWTZTRUpleW84em1WT2kvZ1ZPa1NlQWsvQkE3UTJxNmxnU1A2UUp0MlgrclMxTzArMUVWUHNqZmgxTXRzdEpnSTRvUEdJV055WmN2bnc1VWY4SkVwd0VoTkZXTHBmUkdaQk9weVdwTlV4VGdQNnBUcjRsU1NWK2EydW81amQ5aUNwSUQxVUhDM0VhTjNhcTFPTDBINFpBZ1JyTDkvMW1zMG10UDhsUUZld2lMVzVKZjRJdUtvY2FxdHA0QXBXbWFwWktZOFpTaHlGM24rUXA0YjE5Z09pUVNEWUNKRWd3SEt5c3JDd3RMZUhpSms1cGhqa0hBTjBPUU1rRGF2Sm9TaktOcW1jcFVlc1AwQW85VlNCYjZzRDdkMTNSSDBFUXFGODM5VGhGbmdDQklBamE3YmJGZGxZbjJWcmIwN1Iyb00yc3VnY29UMnVuL25ISTBrY255cmlTTXcwQW9paXExK3UrNzErNGNDRTVYajVCZ21FQ1kyK0RJTUI3MHVQTWRJOEZraHd6YVhyVDIwMGkxQ1F0MWVMUy9GNUt0TmRCbGRXMDNjUzVKcWRLSjNMT3AvOHFZUW1jYzlkMWd5Qm9OcHVnTzIxSzYzVUhBL3VLc2hKZnF2bFZYcGNHZ0wwQ0EvdklZaUljRnlSTGZIZDN0MUFvbE12bFZxdVZoQUVtU0RCTVlLZ2dBQVJCZ0hzOXN0a3NEQ1ZVa1BWZ3NnQkVpdVQ4Vi84MDFkYmtybGZmcGRvQkVoSDdHZ0ZOd1dpQVU3VVdBQUJNbkJOdzJoQ0dJZDBKS2hqYVlnR292aWw3ZmlDT3I1Z1dnQmdrYW4yMHMzeEIzSlRoV0NCcVJTMkFkcnQ5Nzk2OWNya01BSnVibTBtSVdZSUVRd1k2M3JhMnRqWTNOeDg4ZUxDenN3TzZZM1pPQ0ZUMG1hU1RTWlRSR2JtMnRsUTJhdk9MYk9KUDB5VE5sRjhTL3VnR09GV3JBQUllbkxMMUQraDFmeGlHOVhvZENKZW9HbGRpSTdXaHRQbWgzMmcxRlZkdFVqVy9wYmkyQXNjT01UNnBjQW5EY0gxOWZXOXZMN2tSSUVHQ0VVSXN3R0dvNE1MQ3dqQlBGMWIxdENXREpmOUFDV25LRDlhVlVLMDlwTllIZitQeHBxTGdvZHRpWXNGUDRYS0FBRVlHaUl1eE1aSE95MFdLMXRLMDVKY3kyRWVqbWwrdGorbnRVbjVMUFk4R09randSeFJGUVJDNHJsdXRWdDk3NzczRUFaQWd3WmdBajM1Nit2U3BOTGM1WG9OQXpQNEhpaVl3U0NRMXY2VjYya2RTb3FXczVIQTE1UStDUUJoUHBtK1pWakRHdk5Oek5CSUY3MjF0cjlWcVFvT3FHbDBDZmFSNjhyWEZWU2VCaWFhMHNpQzlhR0E2L25tTXZTbU5IODc1K3ZwNm9WQkFzeW5aQ0pBZ3dWamh2ZmZlcTFhcmVPNTl1OTNHbzB2aEJFSUZWVHNBeklyY0xyN3NMNUw4QnlZSzJnK1VQQWRxUWZHLzR6aXBWR280dnBNeEJHUHNGQjBick1KMVhieGFrTEkxTlo5RlR0WHJycklMelNNNW9MUWVleWxkMHVpV1Yyc3JnTmtjeHltWHk5VnE5VVdzQVdrQ2dYK1d5K1ZDb1hEeDRrVkl6Z05Pa0dEOHNMbTVlZjc4ZVFEd1BDK1R5Wnc5ZTNaL2YxOUlqMk5SY3B6enViazVlamlCZUdTUlVhcllsTkxWYkRSZGZZWDJLK0xJWjFwY1pFaWxVdUpzZ0ZPMUVJQjR0aHh3Q3NISVVsQzMyNVUwdDJuQTJQMWFwdUphM3FWUHBSK3E4eXBPWlk0TGtuMk5QenFkemxkZmZRVUFVUlFsR3dFU0pCaFAwTk9Gdi96eXkwNm5rOHZsMENWdzdQNEFpQ0dDMU5lWlBLYnFWRWM0ODZXeWFycnBYZEpiMU9KUkZIbWVkenJQQnFBNDFjc0I2QXNLdzdEUmFFaXViNjBMeTI0RXFCWUF0WEFsZ2lZbVZnZUoxdTJ2SFg0dnpzUnFFQUFBcE5QcHRiVTFEQU5NemdOT2tHQ2NRVThYQm9CMzMzM1g4enpKSHdESE1ZVXdUYlcxbXB2K2ptK09VR3BTMllIRkxZYUNXR1ZBNFErSzdEMVZZS2QyaTZCUXRKeHozL2ZwVVpHbXRTWEJmRlJIU2ltU0ZsZFhCTFJsQlU5TFpVVTZaVnc2b3FBM1RvN0ZocVYxRUJhUzUza2lEUERGWDVFZ1FZS1R4dFdyVjlFQ3dGREJkRHF0V2dCSGxoaVNiQlRDUjVLVG9Pd0psSVNiU1FZQzBmMnFjNVFLS0ZvQnFhd3FKMm5keENPTWNhYkVqOVlta3c0UGo1d2NkVFZHREl3UWxDNFU0UDBtczZyUktRVjFVS2tqd1ZSVzVMZS9TMnNCU0s5N2thNmtJNFJ6WHF2VkFHQmxaUVdTTU1BRUNTWVFJbFRRY1p4bXM0a3VBWGpoaWE4Z0lsTHNkb0FsZ3dUVkRsRExnazdZeG4rWHlJTUxBU3J4MHdiTytTbGREcENBQWFLNHRRWmlyUDFyMCtOa3RwYzFGYWVKOW5GTGpaaERnVTRST09maU5NRDE5ZlgxOWZVa0REQkJnb25EMWF0WDhWVEJWQ3AxY0hBQUFObHNWbkpZSGdFRGhZeEVYTTFzZXJzNmsxRm5UUllESXVhN2VHOUhnRGIvYVFOajdEVGVIYUFDRGNNd0RQRmlJY2tOWldJc3V4RncyTEttZEpvU245RmpRdXNrYkRRYTkrN2R3d3hiVzF0YlcxdEhvSndnUVlLUkEwTUZjUlRQek13c0xpN1NDNGpCSEhkc0FwMldhQXVxTXNxVXpXUUhXTVNqdlc1eHltTDFVcW1VT0RIV1R2TTA0SFRkSW1nQjV6d0lnaWlLT3AwTzlFZnphVmVWSk1jYXpjejZWOVl0WmJYcFFMaVc5YnZvN1dVUDI1V1NWNUQzemdKYVhsNWVXVm5aM2QwOVNqc21TSkJnbkNDZEtqZ3pNNFBiNG9YYjcyaUtVQldBUUp3RWt0U1NWZ2ZpbE5YNjhLbUFsWXlZT0dVeEpRekQwN3duVUFJN3RZR0JKb1JoS0VKRkJHT3BWaTNsUXRWY2tEUzZwTnBwV1pvT1NsUUxKYWkxQUtTeWgvcFNhVVJGVWRSc05sT3BGSWJMNGgxbENSSWttQ2Fzckt3c0x5OTdudGZwZEV5TDZERWh1UStsUkVsQ1VvRW02VzlhVnAzUFVDbXFGYkNxaEZRdEFKclo5LzBrRkVCQ3NoelFCMXdyYWpRYTRvcHVPbGVta0ZKVWN3SE1BVGoyUDBXaUdDb3F6VU9SVXFINkFDcVZpdS83NTg2ZFN5NEZUcEJnV29IR1BkcjZqTEZxdGFwT3NnY1NvVE1jME9seVNSZ0tEYTJWaEZwTkxFMmNWSnBnbG5YcW5BMFQ4VlFBbk9Ra1dvOGlNUUw2d0hzeEk1SWRBTW8yQVhWK3I1SlNXVFptV1NEY2I4cXZsbzFqMkZKN1dkQlBwOVBOWnZQNjlldmRiamM1Q3loQmdta0ZQVTBJeC92OC9Eem9saDB0UkN3VEh1MXZpYjRLYlg0Z0FzMVMzRlFXK2cwSXpybm5lYWY1ZUdBTGtwaUFQckRlL25qY0xLQjY1c0d3OWc4R28xVnlVc1VwSytscFMzNnA3TUN2a3d3TC9ETU13N1cxdFh3K0R3REpXVUFKRWt3M3hHbENlQWJvdSsrK2kxZm9xcExCUklINjVBY0tKY213MEFvNmJYNVFSS2g0ZTV5eTlFTTQ1NjdyVWdzZzBYb1VTVXhBSHdSL080NkRoMnlBd1FJQXc5SVVrS1Y5a3dVQS9jYUJWRlpRVVBPcmoyaXBnWjlHQnc4Nng4UlpRRWtRUUlJRXB3VHFhVUkwVlA1UWt3b3dTS1FYRkhSTW1VRUpTQlJNWllISVRHb0JRRHhwZWFxUUxBY1k0YnB1SnBOcE5CclVMbVprbGk5Z01weTFwV2hPaThVdGxZMzVVaTAxMWFNQUFQVjZ2VjZ2SjJjQkpVaHdhb0duQ2FIanM5UHB0TnR0MVE1UTVSVlZ0UFFSR09RUFdBOUowNWFWZnB2S0NobG9LZ3NBR0FkQVhRVUpKSGhvQTQ2Nkd1TUk0UTlvTnB0NDB5Q21TNk5DeTRoU1RtMGV5VzQxcFd1em1STFZha2pqR1N2YzZYVHE5ZnFkTzNmVzE5ZlhrN09BRWlRNGxjRFRoREJFNE5hdFc2MVdDOTJmZHBWcEVuZFNFU0Z0NGt4N3RObnNhdHR1cWVBUEVRbVlXQUFtY002VDVRQWpCQmVLdXlhQmNEWjFSb0hWQWdBeWJOU3k0aythV1d2WWFzdHFYeXJTVlFzQXpaclhYMy85enAwN0FMQzF0WlZZQUFrU25GcGN1M1l0bTgzZXVISGpzODgrRTJ1Z1FtNm8vbk83cnhINnhSVG81dlJTUVczWmdmTjdJRUpWVzVaekhnUUJXZ0NtYWlkQU9KQTBrQm1DejhRR2VzcWdKdld2SmtvNm0vVkEveFMvcFlPY1RXVlZaNEQwSjdXbUdXTlJGRVZSNURpTzY3cTNidDNhMk5oNGtaWkprQ0RCZEVDRUNIUzczYlcxTmVrMFBYVU9qWGNUaXo4bGNVUW5MYXJXcDJWVkdXZ3ZhNUcwakVETTNNUWR3UW5zOE1TdnhCUXdBUld3Ny91TzQ3UmFMWHJQa0txTUxhc0RDQXV2MncwTDZEY0kxRHFvbWFrZFVLdlZPT2N6TXpNQU1EYzNsemdBRWlSSVFISDU4bVVNRWZBOHIxZ3M0a1VEb0xNRHBIVHhwL1NiWmxiTDJ1bW9aYlZyQkxRc2VnSmMxdzJDUUN4ekozck5BbXdpOXpkLzh6ZEhYWk54aDJBakhCNEFFRVVSR0xRdjVVZ3RLZFkvclRjOXNwYzEwWEVjNStEZ29GS3BDRnNlQjBhNzNhNVdxMTkvL1RVQXpNL1BKeFpBZ2dRSkpHeHVicDQvZno2VHlTd3RMUlVLaFhxOWpwTnBJVjZpS0ZwY1hNeG1zMVFBNGlOSmxObGZKQ2w3RXgxdEtVbElTbE1kMy9kRkdPRGhQdjcwUVRSMTRna1lETHFtemhqRFc2amI3YlowOWJDQVpUWXZQWkpHamoxNmhaYlYwbEg5Q3B6ektJb3ltY3phMnRyVnExY2h1UkFvUVlJRVpvaFRCRFkzTjk5KysrMHdEQnVOQmd5S2VWSlQ3Tm9ranFBelBkS1dSUWNBT211cHVCNVlrMU1MYWlSNWxud0pFR0krTFJnTHIranVkcnZkYmxkaU5aTUZhdkVCQUdGdXJRMGJ4d2VnMG95aUNLOUNjQndIZ3dDU2c0QVNKRWhnQjg0V0FLRFQ2Wnc5ZS9icDA2ZDR4N3FZZUVnekRTQkNEM1V3L2tsL1U5QVppeVRIdEhSVVNNTFc3UUdVQ2RzTE44YlVnbW9jVHlTTnRrNWpEdTJjRzAvYW9hWUFHQ0pnUlNKdGVrc2ViVG9scnFWRHh4VmpyTkZvZEx2ZFM1Y3VWYXRWSUplSkpVaVFJTUZBWUlpQTY3cGhHQmFMUlF3bk1rMWo3UEVCNnB4SG02NmxvODJEUHpETUdZTU5wY2xZb3RFR29tODVJRmsrT1FJRXp3bFRBTVB2b1grakt1Z1d3Q2dGa1JqSEI2Q2xReFBSTGRab05CekhhYmZiWDN6eFJiUFpUSzREU0pBZ3dXRkJUeEZ3WGJkZXIzYzZIYkYzU1ZXNjZsSTlLRktMWmdCRkJ0cnBTQk10cXY2cEFEeStCamdWNEp5enYvaUx2eGgxTmFZSFVROTBBS2cyYVh5NzFlTHQxOUxobkhlNzNYdjM3clhiN1dUNVAwR0NCQzhJRVNKdzVjcVZHemR1ek0zTllYQTBRdFhRMGlQMXR6YlBRRHBpWnVYMDhJTGZsVUNBL2VWZi91V282ekFOb0c0ckRNY1Rwb0NBVnROVHI1ZldhV1pLMFpvUmUzdDdqdU5zYjI5allySUVrQ0JCZ2hmSCsrKy9qejh1WGJvVUJJRzRZUlVUMVJBOHUwMEEvV2V0YWswRUtSRVZQeFdTeWFyL3NZQXhsbXdSUEg0d3hzUmlGV1ZjaTAwZ0xRZllyUUhoWUtBL09PZkZZckhWYXFHTjNHNjNFd3NnUVlJRXg0S3RyYTMxOWZYMTlmV0xGeStpL3NhVDFDVlpCRHBsanorMHE1a1did0ZLVVJTa0NOT2FhWUlYQWVjOHVVRG9CTUY2RUI0dDhVUGtvZmFzZHZuQXRLWkF3VGxQcDlOcmEydFhybHpaMk5oSWdnQVNKRWh3dkxoMjdkcVZLMWNBSUpmTGZmMzExNHl4YytmT21ZTCtRT2ZoVjZjNldtY25sWGlxMWs4VTF2R0NNY2IrNnEvK2F0VFZtR2FvampMMXFRVURPWjV6N25sZXQ5dGRYVjI5Y2VQRzd1NXU0Z0JJa0NEQkNlSEtsU3ZYcmwzRDR3U1dsNWN4TVk2WXNtZXdTOGhFOFo4b2t1V0FVWUlOZ24zd01NYitYM3YzRXR0RzFjVUIvTjRaUDhhUE9DU1ZUUjlKbW9Tb1NUMnJMZ3FFYnJ3ckVxc3NuQld3WTFVSkJBVFllcytDRGNxNm9QS1FMRW9ySVNGV0hSYW9pQ3lRRUI1YXlpUGdOSFptNGpnWng4NTRQRFAzVzl4MmFrTHAxNmFOWnhML2Y0dUlPbTQ1VFZMZjYzdnVPYWZSYUd4dGJiVmFMVUxJeE1URXhZc1hleFE2QVBRZlJWR1dsNWV6MmF3a1NUTXpNODFtczN2QzZuOTV6QmM2MkQrVVV0eXg5QlA3Zis3N3U3eC9jaHNiRzVjdVhaSmxPWjFPNjdyT0Qrc0FBUGFWcXFxenM3T2FwcTJ2cjI5c2JHeHRiVDE0RmQvYkN4MzBCdElCQjVVa1NhbFVpcWNBY3JrY2RnQUEwRXZkMVlPR1lYUTNGb1FEaEY2NGNNSHZHT0RSOEI1ZWlVU0MveExMUHdENEpaZkxwZE5wV1paMVhZL0ZZbndyQUFjRnBWUThlL2FzMzJIQXc2S1VXcFpGS1IwYUd1S1BZQWNBQUQ1YVhsNmVuNS9YTkUzWDlVYWo0VGhPTkJyRkNmOUJjYTlFRUkwWGdvYjljM2kyVjF1NHVibVpUcWY1YzdBREFBRGZGUXFGN3RSQW85RXdUWlA5YzVRSjd2a0hTdmZLZ2ltQ2dkUDk3ZkgrOFlSQ0lTOEZvT3Y2NHVLaXoxRUNBTnpGWncvbWNybFNxY1FuRDFtV0pVblNyamVaZUxjWlFIZXFBL0NOQ1E3YU5TR1FYNTIxTE11MmJiNER5R1F5M3F4UEFJRGdVQlJGbG1WTjAycTEyaSsvL0hMcjFpMnZQVEJPQWdMRiswWUlnb0E3QVFGRktlWFRCeWlsOVhvOWtVandUUUJTQUFBUVdJcWlqSStQbDBxbEgzLzg4WTgvL3BpYW1vckg0NjdyQ29LQWl3SUJoSFJBRVBFOW11dTZQQVdRVENZcHBVZ0JBTUNCNEIxVlpyUFo2ZWxwVGRQK2ZiMEpnZ096QTRLSVVocU5SaVZKa2lTSkVKTEpaTEFEQUlDRHhhc2FJSVJFbzlIQndVR0NqRURBb0dOZ3NQRDlzaUFJa2lROTlkUlRmQWRBa0FJQWdBT29VQ2pvdWw0cWxZckY0dFRVbENSSmZNWXA5Z0dCUWk5Y3VJQnZTVUF3eGd6RG9KUk9Uazd5UjdEOEE4QkI1elVVMGpUTnR1MUlKT0ozUkhCUGlHL053Ri84RG0yOVh2LzAwMCs5aFI4N0FBQTRCUGdZWXA0YTJOblppY1ZpVHovOU5ONThCb1Q0M0hQUCtSMURuL0lxWnhoanNWak1jWnpSMGRGME9xMnE2dmo0T0hZQUFIQm9lRlVEMzMzM25TekxYdGR6RC9ZRWZrR0pvTThvcFlaaGJHeHNiRzl2azdzN05MTlVBQUFMbkVsRVFWVGpnQlZGOFRzdUFJQW5TVlZWWGRmNUdPTHA2V2xDQ0dQTWRWMi80K3AzU0FmNGlWSWFpVVFtSnljTGhVSTJtNVZsR1ZVQUFIQ0lxYW82UHo5UENJbkg0NklvbXFicE9BN3FCbjFFWDMvOWRiOWo2RWVNc1ZBb0ZBNkg0L0U0SHdlTWQvOEEwQ2U2MDUzcjYrczhGNENNUU84eHhyQUo2SjN1bVVDOEVWQTBHdVdmd2cwQUFPZzMzbTFCU2ltdmk5NDFPQTMyRzJOTWZQYlpaLzBPbzQvd1FRQ0VrT0hoNFZEb1RydEc3QUFBb0E5NXR3VVZSWm1ibTNNY3A5UHBZUG52TVhRTTdLbDZ2VzZhSnYrYVp6SVpMUDhBME05MmpSOFVCTUd5TE1keHNERDF4cDEwQUw3Y1BlQTRqaVJKeVdUU3V3T0lZWUFBQUp6M2pxamRicmZiYmR1MnNURDFnT3U2NkJQUUM2SW9TcEtVU0NSS3BWSW1rMWxhV2xKVjFlK2dBQUNDUWxHVVhDNUhDT0gzcFZxdGxpaUtLQ0RzQWZyR0cyLzRIY05oeHFzQUpFbnlPbVVpQlFBQThGKzgyNEx0ZGpzV2kyVXlHZFN4NzZzUXhqenZFOWQxSzVYSzhQRHc4UEN3OXlCMkFBQUFEMUFvRlBMNWZLbFVVbFUxbjg4VFFzTGhNQzRNN2hOS2FRam5MZnVCVXJxNnV0cHNOZ2tob2lqaURpQUF3RVBpOTZXeTJheGhHTElzVzVaRktlMTBPbmkvK3NReHhrSUVMUm9lZzFmVlN1NE9BbWFNUlNLUnJhMHRTdW5YWDMrTlBvQUFBSHZnOVJhTVJDS1JTS1RWYWxtVzVib3VwWFRYcXk2V3NFZlYvZFVUbjMvK2VYd0Y5NmE3cjRYM1E2bHAydHJhV3FmVEtaZkxxVlJLVlZYY0FRUUEyQVB2dGlBaEpCd09WeXFWZHJzdFNSSWh4SHZWeFQ1Z3ovZ1hUY0NkaXozci9oRWtoUER5VnNkeHJsNjlXaXFWUmtkSHNmd0RBRHlPUXFIZzVWSW5KaVkrK3VpaldxMUc3bzVmeHc1Z2IvZ1dpaEFpQ0FKS0JCK0x0d09vVnF1dFZ1dmt5Wk8vLy81N05CckZBUUFBd0pQQ2p3UVVSVGw3OXV6TXpBeTV1d2tnWFMvQ3NBZU1NVlFIN0lXMzkyU01DWUpnMjdicnVzVmlNWmZMNVhLNWI3NzV4dThBQVFBT0ZYNGV3RC9HWWpGUkZOdnROcDlBNkwwYTQwamdVVkZLeGRuWldiL0RPSGk4bjdtMXRiVkdvekUyTnNZUEFKYVdsakFNRUFCZ24zaTNCRVJSakVhai9CMnNkeVRnYjJ3SEVhVVUxUUY3d1JpVEpHbG5aOGR4SEJ3QUFBRDB6SzRqQWN1eWVOVUFMeHp3TjdhRFNKeWRuVVU2NEZGcG1yYTV1VGt5TW9JREFBQ0EzdXMrRW9oRUlwVkt4VFROV0N5RzVleVI0Q1Rnb1hTbm1rUlJOQXlqMCtuZ0FBQUF3RWZkUndMajQrT0ZRdUdWVjE3SlpESVlRdmhJNkp0dnZ1bDNEQWZHMnRwYXM5bU1SQ0xsY3Rrd0ROei9Cd0R3WGFGUVVCUWxuVTd6OW9LMmJkdTJqU09CaDRTTGdRL2liU2RYVmxZY3h6Rk44L0xseTRTUXFhbXBiNy85MXRmUUFBQ0FFRUlVUlZsZVh1YnRCVVZSRElmRHJ1dDZOWVR3WVBTdHQ5N3lPNGJnWW96eEVwUjJ1MTJ2MTNFQUFBQVFXTjBqV203Y3VFRXB6V1F5b1ZBSXU0RUhvRysvL2JiZk1RUlhyVlpqakUxTVRQRFJsdVR1WkFzQUFBZ21uaDFRRkNXZno2ZFNLVkVVQndZRy9BNHFvQmhqNGdzdnZPQjNHSUd3YTZ2b09NNzYrdnJISDM4OE56ZEhDRWtrRW91TGl6Z0RBQUFJT0o0ZHlHYXpmTkJBdTkzdWREcDg0b0FITndjOXVCTndqOWNDcUZxdE5ocU5VNmRPcGROcFZWWDV2Vk8vb3dNQWdJZWw2L3JzN0d5cFZGSVVaVzV1cmxxdG1xWXBTVkwzdkRjZ1NBZDBZNHlWeStWRUl0RnNOcjBLUUN6L0FBQUhWeTZYNDRVRGhVTGgxVmRmVGFmVGZrY1VJSXd4dXJDdzRIY1lnVUFwdFN6TE5NMk5qUTFjQUFRQU9EUzZhd2h2M0xnaGl1THg0OGZSWVpEcnh6bkNyQXNoeEhWZDNuTnFhR2hJRkVWQ0NLWUFBd0FjR253VElNdXlvaWlmZi82NVpWbjFldDJ5TFBaUGZvZnBqejZ0bmZCeVFvWmhSS1BSVkNyRkg4OWtNb3VMaTc2R0JnQUFUeDdQN1dhejJYSzVUQWlKeFdLVTBuYTdIWWxFK0JQNmNEVmtqSVg2OWp3a0ZBclp0aDBPaDZ2VmFpZ1VHaHdjSlA4c013VUFnRU5HVmRWOFBrOEljUndubVV5V3kyVkJFSTRlUFNvSVFoK3VocFJTdXJDdzBGZC9jMzdzNDdxdUlBZ0RBd05vQUFBQTBJZTYyd21Jb2hpUHg0ZUhoL3RxTlNSOTFTZUFuLy96MjMvYjI5dTZybytNakJBMEFBQUE2RXRlT3dGSmtzNmNPZlBCQngrY09IRkNraVJCRUVoWHl2aHc2N3Qwd003T1RxUFJhTFZhcVZSSzA3Uk1Kb1B6ZndDQXZxV3E2dno4dktJbzU4K2ZKNFJvbWhhUHgvdW5qSkJTU3Q5Nzc3MSsyTy9VYXJWV3EyWGJ0dmNJenY4QkFJREw1L09sVWtsVjFVS2hjUFBtVFZFVStkd0J2K1BhZCtLNWMrY08zeWJBTzhsaGpGVXFsYzNOemNuSnlROC8vSkFRa3Nsa2lzVWl6djhCQU1DanFxcXU2N2xjN29jZmZyaDI3ZHIwOVBUZzRDQWZQc1JYazBPV0lQQlM1S0ZEMWpEQmEvMUxDQkZGMGJLc2RydGRMQmF6Mld3dWwxTVVCY3MvQUFEY2w2SW9oSkJzTm1zWUJpOGQzOXpjZEYwM0dvM3lKWk1jbGtwQ2I1VU1PWTRURG9mOWp1ZUo0ZCtrMWRWVngzR21wNmNsU1RJTUk1dk5xcXFLNVI4QUFQNHZmbEdBRUxLMXRYWDc5dTE0UEw2NXVYbjE2dFYzM25tSGp4N3dPOEFueG5FY3VyQ3djRGpxSS9taGpXVlpmLzMxMTVVclYvTDUvTWpJQ0tyL0FRQmdiM2hIQWM0d2pPSGg0ZW5wNlZhclJRN0ZIRUplTFUvZmZmZGR2eU41QWlpbHBtbDJPcDFtczlscXRYanpmMW1XY2ZzUEFBQWVSL2RXWUhSME5CcU5kam9kVVJRUGVsNmcwK21ZcGtsZmUrMjFSQ0lSalViOWptY3ZlTThmMHpSdDIyNDJtODFtMC9zVWxuOEFBSGhTK0ZZZ25VNW5NaG5Mc2h6SGNSekhheXJnZDNTUHpIVmQyN1pYVmxZb1B6Ym50eDc4anVyUk1NYmE3VGFXZndBQTZJM3U1UExmZi84dGl1S0pFeWQyZG5iOGkyaVBHR09PNHd3TUROQjhQbi9reUpHalI0L3U3T3djaU8yTTkrNmZILzVqK1FjQWdGN3lXZzRYQ29WR28wRUlHUmdZYUxWYUIrWGFJR09Nejg0bGhGQit4REUyTmhiWXJnamQxWm1NTWR1MlhkZmQzTnpFOGc4QUFIN0o1WEtFa0d3MnErdjZrU05ISkVraWhFaVNGUHhqZFVFUU9wMU9NcGtraElRSUlZWmhEQXdNcks2dURnME5CWEFYdzkvNmR6b2RYcWFaU3FWS3BaTDNXU3ovQUFEUWU3eXBBTzh4WEt2VkNDR0pSSUl2bzZJb0J2bTZ3UEx5c20zYi9INERKWVR3TGpvdnYvenkxTlNVYVpyRTc3aTd0MUdVMGs2blU2MVdtODFtS0JTU1pYbHJhNnZkYnV1Nmp1VWZBQUNDb0x1Q1FKYmxScVBCajl4NXowRWZBOXVGTWZicnI3OSsrZVdYSXlNanM3T3p4V0pSSklUd1NVcDhpbUkwR2cxSWMwVFhkU3VWU3ExV1k0dzFtODB2dnZpQzEyWWNPWExrL2ZmZlIrY2ZBQUFJQ042UFRwYmxkRHB0MjNZcWxmcnR0OS9XMTlkWFZsWXVYcng0N3R5NUlCd0pVRW9sU1NxWHk3ZHUzVElNZ3krakl2OGN6MjAwbTgxa011bHY3eUIrNTk5eG5FcWxjdW5TcGRPblQ1dW1XU3FWMHVuMDk5OS92N1MweEU5Z0FBQUFBa1ZWMWFXbHBSZGZmRkhUdEdxMSt0VlhYNTA1YzJac2JLelQ2Y1RqY2E5ZHZ5K3hVVXEzdDdkdDI1NmNuQ1NFTEM4djMzbmNlMFkrbitjWkFzTXdRcUdRS0lvOWpvL2YrZGMwelRDTWNEZ3N5L0wxNjlmTDVUSjYvZ0FBd0lHVHpXWUpJYklzODQ4M2I5NWtqQjA3ZGl3V2k1R2V6eUNvMVdyUmFMUmFyZktGM3F0MXZMZlNxNnI2MGtzdmFacFdxVlNTeVNRdkZ0anZLTDFXLzMvKythZHBtc2VPSFZ0ZFhiMTgrVEkvK1orWm1jSEVQd0FBT0loMFhkZDFuZWNJZnZycHB5dFhycHcrZlRxWlRMcXU2emdPYnp2WWcvdzdwZlRubjMrdTFXclQwOU04cXNYRnhYdWYzZlZzN3p5Z1hxOFRRdUx4K0g1TVVXU01oVUtoY3JsTUtiVnQrNU5QUHNubjg4Vmk4Zno1ODRTUWNybU1oUjhBQUE0VGZqQ1F5K1V5bVV5cFZEcCsvRGhQdmpQR2VHR2hseXg0ekhHRlhzYUIvNEhMeTh1ZmZmWVovMS9uY3JsZHczVHVrNXpnejlBMFRkZjFreWRQUmlJUjEzWEo0NVVNOElIRmpMRllMRmFyMVhSZFgxdGJ1M2J0V2o2ZjU4ZitwVklwbFVwaDdRY0FnRU9zVUNob21zYi91M3Mzd0ljUmlLTG81ZUlmNTcwM3BkU3lyTFcxdFdhektZcmk5ZXZYVjFaVzd2L00vL29qdkNNQlFvaGxXZDQrd05zSzNEZStYYmNlK0hQNDcrVi92ZTN0N1VxbFFnZ3BGb3NqSXlPeUxEL3p6RFBkK1FrQUFJQkQ3OSs3QVZtVytXcExLZDNaMmJsOSsvYXBVNmU4cGRiNytJQTM1THdac0NBSWpMSHQ3VzFOMDRyRllqYWJmY0RWdXY4Qk4yOFlRdi92Q3dJQUFBQUFTVVZPUks1Q1lJST1cIlxuICAgICAgICAgICAgd2lkdGg9XCI2ODRcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiNDIwXCJcbiAgICAgICAgICAgIHRyYW5zZm9ybT1cIm1hdHJpeCguMDQ5NTcgMCAwIC4wNDk5NyAuOTM1IDEuMTI4KVwiXG4gICAgICAgICAgPjwvaW1hZ2U+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2YpXCI+XG4gICAgICAgICAgPGcgY2xpcFBhdGg9XCJ1cmwoI2cpXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDM5KVwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgZmlsbD1cIiMzMzNcIlxuICAgICAgICAgICAgICBkPVwiTTEuNzY1IDUuMDYySDQuNTNsMy43MTggOS4wNjNoLjE1N2wzLjcwMy05LjA2M2gyLjc4djEyLjUxNmgtMi4xN1Y4Ljk4NGgtLjEyNkw5LjE0IDE3LjU0N0g3LjUxNUw0LjA2MiA4Ljk2OWgtLjEyNXY4LjYxSDEuNzY1Wm0wIDBcIlxuICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgIDxnIGNsaXBQYXRoPVwidXJsKCNoKVwiPlxuICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgIGZpbGw9XCIjMzMzXCJcbiAgICAgICAgICAgICAgICBkPVwiTTE3Ljg5NCAyMS4wOTRxLS40NTYtLjAwMi0uODQ0LS4wNzhhMyAzIDAgMCAxLS42MDktLjE1N2wuNTE2LTEuNzE4Yy4zMi4wOTMuNjEuMTMyLjg2LjEyNXEuMzg3IDAgLjY3MS0uMjM1LjI5NC0uMjIyLjUtLjc1bC4xODctLjUtMy40MDYtOS41OTRoMi4zNDRsMi4xNzIgNy4wOTRoLjA5NGwyLjE3MS03LjA5NGgyLjM0NGwtMy43NSAxMC41MzJhNC40IDQuNCAwIDAgMS0uNzAzIDEuMjY1cS0uNDQuNTQ2LTEuMDYyLjgyOC0uNjI4LjI4Mi0xLjQ4NS4yODJtMCAwXCJcbiAgICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICAgIDwvZz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGZpbGw9XCIjMzMzXCJcbiAgICAgICAgICAgICAgZD1cIk0yOS43OCAxNy43NjZxLTEuNDA3IDAtMi40MjEtLjYxYTQuMTUgNC4xNSAwIDAgMS0xLjU0Ny0xLjcxOXEtLjUzMy0xLjA5LS41MzEtMi41MTUtLjAwMi0xLjQyLjU0Ni0yLjUxNmE0LjA2IDQuMDYgMCAwIDEgMS41NDctMS43MTlxMS4wMTQtLjYwOSAyLjM5LS42MDkgMS4xMzcgMCAyLjAxNy40MjJhMy4zNSAzLjM1IDAgMCAxIDEuNDA2IDEuMTcycS41MjYuNzY4LjYxIDEuNzY1aC0yLjExYTIuMTIgMi4xMiAwIDAgMC0uNjI1LTEuMTI1cS0uNDctLjQ1MS0xLjI2Ni0uNDUzLS42OSAwLTEuMjAzLjM2LS41MDQuMzYyLS43OTcgMS4wNDctLjI4LjY3NS0uMjgxIDEuNjI1IDAgLjk1NC4yODEgMS42NC4yODEuNjkuNzk3IDEuMDYzYy4zNDQuMjQyLjc0Mi4zNiAxLjIwMy4zNnEuNDgxLjAwMS44NzUtLjE3My4zODgtLjE4Ni42NC0uNTQ3LjI2NS0uMzU2LjM3Ni0uODZoMi4xMWEzLjcgMy43IDAgMCAxLS41OTUgMS43NjcgMy40NCAzLjQ0IDAgMCAxLTEuMzc1IDEuMjAzYy0uNTg2LjI4LTEuMjY1LjQyMi0yLjA0Ni40MjJNMzkuMDM1IDE3Ljc2NnEtMS40MjQuMDAyLTIuNDUzLS41OTRhMy45NCAzLjk0IDAgMCAxLTEuNTYzLTEuNjcyYy0uMzY3LS43MjctLjU0Ni0xLjU4Mi0uNTQ2LTIuNTYzcS0uMDAyLTEuNDM1LjU0Ni0yLjUzLjU2My0xLjExIDEuNTQ3LTEuNzIuOTk2LS42MDkgMi4zNDQtLjYwOS44NzMgMCAxLjY0LjI4MS43NzkuMjY5IDEuMzc2Ljg2LjU5MS41NzkuOTM3IDEuNDY4Yy4yMjcuNTk0LjM0NCAxLjMwNS4zNDQgMi4xMjV2LjY3MmgtNy43MDNWMTJoNS41NzhxMC0uNjM4LS4yODEtMS4xMjVhMiAyIDAgMCAwLS43NS0uNzgxIDIuMDYgMi4wNiAwIDAgMC0xLjExLS4yOTdxLS42NzIgMC0xLjE4Ny4zMjgtLjUxNi4zMy0uNzk3Ljg2Yy0uMTg4LjM0My0uMjkuNzMtLjI5NyAxLjE1NnYxLjI5NnEwIC44MTQuMjk3IDEuNDA3LjMxLjU4Ljg0NC44OS41MjcuMjk4IDEuMjY1LjI5N2MuMzEzIDAgLjU5OC0uMDM5Ljg2LS4xMjVhMS45IDEuOSAwIDAgMCAuNjcyLS40MDZxLjI5My0uMjguNDUzLS42NzJsMi4wNjIuMjM0YTMuMyAzLjMgMCAwIDEtLjc1IDEuNDIyIDMuNyAzLjcgMCAwIDEtMS4zOS45NTNxLS44NDYuMzMtMS45MzguMzI5TTQ2LjUzNyA1LjA2MnYxMi41MTZoLTIuMjA0VjUuMDYyWk00OC4wNzcgMTcuNTc4di05LjM5aDIuMjAzdjkuMzlabTEuMTEtMTAuNzE5cS0uNTMzLjAwMS0uOTA3LS4zNDNhMS4xMyAxLjEzIDAgMCAxLS4zNzUtLjg0NHEwLS40OTguMzc1LS44NDQuMzczLS4zNTkuOTA2LS4zNmMuMzUyIDAgLjY1Ny4xMjIuOTA3LjM2cS4zNzUuMzQ2LjM3NS44NDQgMCAuNDg2LS4zNzUuODQ0LS4zNzcuMzQ0LS45MDcuMzQzTTU3Ljc5IDEzLjYyNVY4LjE4N2gyLjIxOHY5LjM5MWgtMi4xNHYtMS42NzJoLS4wOTRxLS4zMy43OTgtMS4wNDcgMS4yOTctLjcyLjUwMi0xLjc4MS41Yy0uNjE4IDAtMS4xNTctLjEzMy0xLjYyNS0uNDA2YTIuOTMgMi45MyAwIDAgMS0xLjExLTEuMjAzcS0uMzktLjc5Ny0uMzktMS45MjJWOC4xODdoMi4yMDN2NS42NDFxLS4wMDEuODkyLjQ4NCAxLjQyMi41LjUxNiAxLjI5Ny41MTYuNDggMCAuOTM3LS4yMzUuNDctLjIzNC43NS0uNzAzLjI5NS0uNDgyLjI5Ny0xLjIwM002MS41NDQgMTcuNTc4di05LjM5aDIuMTF2MS42MDloLjEwOXEuMjk0LS44MS45NjgtMS4yNjYuNjg3LS40NTEgMS42MjUtLjQ1My45NTEgMCAxLjYxLjQ2OS42NTQuNDU1LjkyMiAxLjI1aC4wOTNhMi41IDIuNSAwIDAgMSAxLjA0Ny0xLjI1cS43NS0uNDcgMS43ODItLjQ2OSAxLjI3Ny4wMDIgMi4wOTMuODEzLjgyNy44MTUuODI4IDIuMzl2Ni4yOTdoLTIuMjE4di01Ljk1M3EwLS44NzItLjQ2OS0xLjI4MS0uNDU4LS40MDYtMS4xMjUtLjQwNy0uNzk4LjAwMS0xLjI1LjVjLS4zMDUuMzM2LS40NTMuNzYyLS40NTMgMS4yODJ2NS44NmgtMi4xNzJWMTEuNTNxLS4wMDEtLjczMy0uNDM4LTEuMTU2LS40MzgtLjQzNi0xLjEyNS0uNDM4Yy0uMzI0IDAtLjYxNy4wODYtLjg3NS4yNWExLjcgMS43IDAgMCAwLS42MjUuNjcyIDIuMSAyLjEgMCAwIDAtLjIzNCAxLjAxNnY1LjcwM1ptMCAwXCJcbiAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgPC9nPlxuICAgICAgICA8L2c+XG4gICAgICA8L2c+XG4gICAgPC9nPlxuICA8L3N2Zz5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIkxvZ29tYXJrIiwicHJvcHMiLCJzdmciLCJ2aWV3Qm94IiwiYXJpYS1oaWRkZW4iLCJwYXRoIiwiZmlsbFJ1bGUiLCJjbGlwUnVsZSIsImQiLCJMb2dvIiwieG1sbnMiLCJ4bWxuc1hsaW5rIiwid2lkdGgiLCJoZWlnaHQiLCJ2ZXJzaW9uIiwiZGVmcyIsImNsaXBQYXRoIiwiaWQiLCJmaWx0ZXIiLCJ4IiwieSIsImZlQ29sb3JNYXRyaXgiLCJjb2xvckludGVycG9sYXRpb25GaWx0ZXJzIiwidmFsdWVzIiwibWFzayIsImciLCJ0cmFuc2Zvcm0iLCJpbWFnZSIsInhsaW5rSHJlZiIsImZpbGwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/Logo.tsx\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./src/components/NavLinks.tsx":
|
||
/*!*************************************!*\
|
||
!*** ./src/components/NavLinks.tsx ***!
|
||
\*************************************/
|
||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NavLinks: function() { return /* binding */ NavLinks; }\n/* harmony export */ });\n/* harmony import */ var react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react/jsx-dev-runtime */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! next/link */ \"(app-pages-browser)/./node_modules/next/dist/api/link.js\");\n/* harmony import */ var framer_motion__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! framer-motion */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs\");\n/* harmony import */ var framer_motion__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! framer-motion */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion.mjs\");\n/* __next_internal_client_entry_do_not_use__ NavLinks auto */ \nvar _s = $RefreshSig$();\n\n\n\nfunction NavLinks() {\n _s();\n let [hoveredIndex, setHoveredIndex] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);\n let timeoutRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);\n return [\n [\n \"About\",\n \"/#about\"\n ],\n [\n \"Benefits\",\n \"/#benefits\"\n ],\n [\n \"Features\",\n \"/#features\"\n ],\n [\n \"Use Cases\",\n \"/#usecases\"\n ],\n [\n \"FAQs\",\n \"/#faqs\"\n ]\n ].map((param, index)=>{\n let [label, href] = param;\n return /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(next_link__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n href: href,\n className: \"relative -mx-3 -my-2 rounded-lg px-3 py-2 text-sm text-gray-700 transition-colors delay-150 hover:text-gray-900 hover:delay-0\",\n onMouseEnter: ()=>{\n if (timeoutRef.current) {\n window.clearTimeout(timeoutRef.current);\n }\n setHoveredIndex(index);\n },\n onMouseLeave: ()=>{\n timeoutRef.current = window.setTimeout(()=>{\n setHoveredIndex(null);\n }, 200);\n },\n children: [\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(framer_motion__WEBPACK_IMPORTED_MODULE_3__.AnimatePresence, {\n children: hoveredIndex === index && /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(framer_motion__WEBPACK_IMPORTED_MODULE_4__.motion.span, {\n className: \"absolute inset-0 rounded-lg bg-gray-100\",\n layoutId: \"hoverBackground\",\n initial: {\n opacity: 0\n },\n animate: {\n opacity: 1,\n transition: {\n duration: 0.15\n }\n },\n exit: {\n opacity: 0,\n transition: {\n duration: 0.15\n }\n }\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/NavLinks.tsx\",\n lineNumber: 36,\n columnNumber: 11\n }, this)\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/NavLinks.tsx\",\n lineNumber: 34,\n columnNumber: 7\n }, this),\n /*#__PURE__*/ (0,react_jsx_dev_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxDEV)(\"span\", {\n className: \"relative z-10\",\n children: label\n }, void 0, false, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/NavLinks.tsx\",\n lineNumber: 48,\n columnNumber: 7\n }, this)\n ]\n }, label, true, {\n fileName: \"/Users/sashaastiadi/code/git.ourworld.tf/www_mycelium_cloud2/src/components/NavLinks.tsx\",\n lineNumber: 18,\n columnNumber: 5\n }, this);\n });\n}\n_s(NavLinks, \"VMhfsb/ltMw71IynPV/dha60PjI=\");\n_c = NavLinks;\nvar _c;\n$RefreshReg$(_c, \"NavLinks\");\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL3NyYy9jb21wb25lbnRzL05hdkxpbmtzLnRzeCIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFFd0M7QUFDWjtBQUMyQjtBQUVoRCxTQUFTSzs7SUFDZCxJQUFJLENBQUNDLGNBQWNDLGdCQUFnQixHQUFHTiwrQ0FBUUEsQ0FBZ0I7SUFDOUQsSUFBSU8sYUFBYVIsNkNBQU1BLENBQWdCO0lBRXZDLE9BQU87UUFDTDtZQUFDO1lBQVM7U0FBVTtRQUNwQjtZQUFDO1lBQVk7U0FBYTtRQUMxQjtZQUFDO1lBQVk7U0FBYTtRQUMxQjtZQUFDO1lBQWE7U0FBYTtRQUMzQjtZQUFDO1lBQVE7U0FBUztLQUNuQixDQUFDUyxHQUFHLENBQUMsUUFBZ0JDO1lBQWYsQ0FBQ0MsT0FBT0MsS0FBSzs2QkFDbEIsOERBQUNWLGlEQUFJQTtZQUVIVSxNQUFNQTtZQUNOQyxXQUFVO1lBQ1ZDLGNBQWM7Z0JBQ1osSUFBSU4sV0FBV08sT0FBTyxFQUFFO29CQUN0QkMsT0FBT0MsWUFBWSxDQUFDVCxXQUFXTyxPQUFPO2dCQUN4QztnQkFDQVIsZ0JBQWdCRztZQUNsQjtZQUNBUSxjQUFjO2dCQUNaVixXQUFXTyxPQUFPLEdBQUdDLE9BQU9HLFVBQVUsQ0FBQztvQkFDckNaLGdCQUFnQjtnQkFDbEIsR0FBRztZQUNMOzs4QkFFQSw4REFBQ0osMERBQWVBOzhCQUNiRyxpQkFBaUJJLHVCQUNoQiw4REFBQ04saURBQU1BLENBQUNnQixJQUFJO3dCQUNWUCxXQUFVO3dCQUNWUSxVQUFTO3dCQUNUQyxTQUFTOzRCQUFFQyxTQUFTO3dCQUFFO3dCQUN0QkMsU0FBUzs0QkFBRUQsU0FBUzs0QkFBR0UsWUFBWTtnQ0FBRUMsVUFBVTs0QkFBSzt3QkFBRTt3QkFDdERDLE1BQU07NEJBQ0pKLFNBQVM7NEJBQ1RFLFlBQVk7Z0NBQUVDLFVBQVU7NEJBQUs7d0JBQy9COzs7Ozs7Ozs7Ozs4QkFJTiw4REFBQ047b0JBQUtQLFdBQVU7OEJBQWlCRjs7Ozs7OztXQTdCNUJBOzs7Ozs7QUFnQ1g7R0E1Q2dCTjtLQUFBQSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9zcmMvY29tcG9uZW50cy9OYXZMaW5rcy50c3g/MWUwOCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHsgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IExpbmsgZnJvbSAnbmV4dC9saW5rJ1xuaW1wb3J0IHsgQW5pbWF0ZVByZXNlbmNlLCBtb3Rpb24gfSBmcm9tICdmcmFtZXItbW90aW9uJ1xuXG5leHBvcnQgZnVuY3Rpb24gTmF2TGlua3MoKSB7XG4gIGxldCBbaG92ZXJlZEluZGV4LCBzZXRIb3ZlcmVkSW5kZXhdID0gdXNlU3RhdGU8bnVtYmVyIHwgbnVsbD4obnVsbClcbiAgbGV0IHRpbWVvdXRSZWYgPSB1c2VSZWY8bnVtYmVyIHwgbnVsbD4obnVsbClcblxuICByZXR1cm4gW1xuICAgIFsnQWJvdXQnLCAnLyNhYm91dCddLFxuICAgIFsnQmVuZWZpdHMnLCAnLyNiZW5lZml0cyddLFxuICAgIFsnRmVhdHVyZXMnLCAnLyNmZWF0dXJlcyddLFxuICAgIFsnVXNlIENhc2VzJywgJy8jdXNlY2FzZXMnXSxcbiAgICBbJ0ZBUXMnLCAnLyNmYXFzJ10sXG4gIF0ubWFwKChbbGFiZWwsIGhyZWZdLCBpbmRleCkgPT4gKFxuICAgIDxMaW5rXG4gICAgICBrZXk9e2xhYmVsfVxuICAgICAgaHJlZj17aHJlZn1cbiAgICAgIGNsYXNzTmFtZT1cInJlbGF0aXZlIC1teC0zIC1teS0yIHJvdW5kZWQtbGcgcHgtMyBweS0yIHRleHQtc20gdGV4dC1ncmF5LTcwMCB0cmFuc2l0aW9uLWNvbG9ycyBkZWxheS0xNTAgaG92ZXI6dGV4dC1ncmF5LTkwMCBob3ZlcjpkZWxheS0wXCJcbiAgICAgIG9uTW91c2VFbnRlcj17KCkgPT4ge1xuICAgICAgICBpZiAodGltZW91dFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lb3V0UmVmLmN1cnJlbnQpXG4gICAgICAgIH1cbiAgICAgICAgc2V0SG92ZXJlZEluZGV4KGluZGV4KVxuICAgICAgfX1cbiAgICAgIG9uTW91c2VMZWF2ZT17KCkgPT4ge1xuICAgICAgICB0aW1lb3V0UmVmLmN1cnJlbnQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgc2V0SG92ZXJlZEluZGV4KG51bGwpXG4gICAgICAgIH0sIDIwMClcbiAgICAgIH19XG4gICAgPlxuICAgICAgPEFuaW1hdGVQcmVzZW5jZT5cbiAgICAgICAge2hvdmVyZWRJbmRleCA9PT0gaW5kZXggJiYgKFxuICAgICAgICAgIDxtb3Rpb24uc3BhblxuICAgICAgICAgICAgY2xhc3NOYW1lPVwiYWJzb2x1dGUgaW5zZXQtMCByb3VuZGVkLWxnIGJnLWdyYXktMTAwXCJcbiAgICAgICAgICAgIGxheW91dElkPVwiaG92ZXJCYWNrZ3JvdW5kXCJcbiAgICAgICAgICAgIGluaXRpYWw9e3sgb3BhY2l0eTogMCB9fVxuICAgICAgICAgICAgYW5pbWF0ZT17eyBvcGFjaXR5OiAxLCB0cmFuc2l0aW9uOiB7IGR1cmF0aW9uOiAwLjE1IH0gfX1cbiAgICAgICAgICAgIGV4aXQ9e3tcbiAgICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogeyBkdXJhdGlvbjogMC4xNSB9LFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9BbmltYXRlUHJlc2VuY2U+XG4gICAgICA8c3BhbiBjbGFzc05hbWU9XCJyZWxhdGl2ZSB6LTEwXCI+e2xhYmVsfTwvc3Bhbj5cbiAgICA8L0xpbms+XG4gICkpXG59XG4iXSwibmFtZXMiOlsidXNlUmVmIiwidXNlU3RhdGUiLCJMaW5rIiwiQW5pbWF0ZVByZXNlbmNlIiwibW90aW9uIiwiTmF2TGlua3MiLCJob3ZlcmVkSW5kZXgiLCJzZXRIb3ZlcmVkSW5kZXgiLCJ0aW1lb3V0UmVmIiwibWFwIiwiaW5kZXgiLCJsYWJlbCIsImhyZWYiLCJjbGFzc05hbWUiLCJvbk1vdXNlRW50ZXIiLCJjdXJyZW50Iiwid2luZG93IiwiY2xlYXJUaW1lb3V0Iiwib25Nb3VzZUxlYXZlIiwic2V0VGltZW91dCIsInNwYW4iLCJsYXlvdXRJZCIsImluaXRpYWwiLCJvcGFjaXR5IiwiYW5pbWF0ZSIsInRyYW5zaXRpb24iLCJkdXJhdGlvbiIsImV4aXQiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./src/components/NavLinks.tsx\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.development.js":
|
||
/*!****************************************************************************************!*\
|
||
!*** ./node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.development.js ***!
|
||
\****************************************************************************************/
|
||
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("/**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\n\nif (true) {\n (function() {\n'use strict';\n\nvar React = __webpack_require__(/*! next/dist/compiled/react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n// ATTENTION\n// When adding new symbols to this file,\n// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'\n// The Symbol used to tag the ReactElement-like types.\nvar REACT_ELEMENT_TYPE = Symbol.for('react.element');\nvar REACT_PORTAL_TYPE = Symbol.for('react.portal');\nvar REACT_FRAGMENT_TYPE = Symbol.for('react.fragment');\nvar REACT_STRICT_MODE_TYPE = Symbol.for('react.strict_mode');\nvar REACT_PROFILER_TYPE = Symbol.for('react.profiler');\nvar REACT_PROVIDER_TYPE = Symbol.for('react.provider'); // TODO: Delete with enableRenderableContext\n\nvar REACT_CONSUMER_TYPE = Symbol.for('react.consumer');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_FORWARD_REF_TYPE = Symbol.for('react.forward_ref');\nvar REACT_SUSPENSE_TYPE = Symbol.for('react.suspense');\nvar REACT_SUSPENSE_LIST_TYPE = Symbol.for('react.suspense_list');\nvar REACT_MEMO_TYPE = Symbol.for('react.memo');\nvar REACT_LAZY_TYPE = Symbol.for('react.lazy');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar REACT_CACHE_TYPE = Symbol.for('react.cache');\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\nfunction getIteratorFn(maybeIterable) {\n if (maybeIterable === null || typeof maybeIterable !== 'object') {\n return null;\n }\n\n var maybeIterator = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL];\n\n if (typeof maybeIterator === 'function') {\n return maybeIterator;\n }\n\n return null;\n}\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nfunction error(format) {\n {\n {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n printWarning('error', format, args);\n }\n }\n}\n\nfunction printWarning(level, format, args) {\n // When changing this logic, you might want to also\n // update consoleWithStackDev.www.js as well.\n {\n var ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n var stack = ReactDebugCurrentFrame.getStackAddendum();\n\n if (stack !== '') {\n format += '%s';\n args = args.concat([stack]);\n } // eslint-disable-next-line react-internal/safe-string-coercion\n\n\n var argsWithFormat = args.map(function (item) {\n return String(item);\n }); // Careful: RN currently depends on this prefix\n\n argsWithFormat.unshift('Warning: ' + format); // We intentionally don't use spread (or .apply) directly because it\n // breaks IE9: https://github.com/facebook/react/issues/13610\n // eslint-disable-next-line react-internal/no-production-logging\n\n Function.prototype.apply.call(console[level], console, argsWithFormat);\n }\n}\n\n// -----------------------------------------------------------------------------\n\nvar enableScopeAPI = false; // Experimental Create Event Handle API.\nvar enableCacheElement = false;\nvar enableTransitionTracing = false; // No known bugs, but needs performance testing\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\nvar enableRenderableContext = false;\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false;\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var displayName = outerType.displayName;\n\n if (displayName) {\n return displayName;\n }\n\n var functionName = innerType.displayName || innerType.name || '';\n return functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName;\n} // Keep in sync with react-reconciler/getComponentNameFromFiber\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n}\n\nvar REACT_CLIENT_REFERENCE$2 = Symbol.for('react.client.reference'); // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\n if (typeof type === 'function') {\n if (type.$$typeof === REACT_CLIENT_REFERENCE$2) {\n // TODO: Create a convention for naming client references with debug info.\n return null;\n }\n\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return 'Fragment';\n\n case REACT_PORTAL_TYPE:\n return 'Portal';\n\n case REACT_PROFILER_TYPE:\n return 'Profiler';\n\n case REACT_STRICT_MODE_TYPE:\n return 'StrictMode';\n\n case REACT_SUSPENSE_TYPE:\n return 'Suspense';\n\n case REACT_SUSPENSE_LIST_TYPE:\n return 'SuspenseList';\n\n case REACT_CACHE_TYPE:\n {\n return 'Cache';\n }\n\n }\n\n if (typeof type === 'object') {\n {\n if (typeof type.tag === 'number') {\n error('Received an unexpected object in getComponentNameFromType(). ' + 'This is likely a bug in React. Please file an issue.');\n }\n }\n\n switch (type.$$typeof) {\n case REACT_PROVIDER_TYPE:\n {\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n }\n\n case REACT_CONTEXT_TYPE:\n var context = type;\n\n {\n return getContextName(context) + '.Consumer';\n }\n\n case REACT_CONSUMER_TYPE:\n {\n return null;\n }\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case REACT_MEMO_TYPE:\n var outerName = type.displayName || null;\n\n if (outerName !== null) {\n return outerName;\n }\n\n return getComponentNameFromType(type.type) || 'Memo';\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n return getComponentNameFromType(init(payload));\n } catch (x) {\n return null;\n }\n }\n }\n }\n\n return null;\n}\n\n// $FlowFixMe[method-unbinding]\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar assign = Object.assign;\n\n/*\n * The `'' + value` pattern (used in perf-sensitive code) throws for Symbol\n * and Temporal.* types. See https://github.com/facebook/react/pull/22064.\n *\n * The functions in this module will throw an easier-to-understand,\n * easier-to-debug exception with a clear errors message message explaining the\n * problem. (Instead of a confusing exception thrown inside the implementation\n * of the `value` object).\n */\n// $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible.\nfunction typeName(value) {\n {\n // toStringTag is needed for namespaced types like Temporal.Instant\n var hasToStringTag = typeof Symbol === 'function' && Symbol.toStringTag;\n var type = hasToStringTag && value[Symbol.toStringTag] || value.constructor.name || 'Object'; // $FlowFixMe[incompatible-return]\n\n return type;\n }\n} // $FlowFixMe[incompatible-return] only called in DEV, so void return is not possible.\n\n\nfunction willCoercionThrow(value) {\n {\n try {\n testStringCoercion(value);\n return false;\n } catch (e) {\n return true;\n }\n }\n}\n\nfunction testStringCoercion(value) {\n // If you ended up here by following an exception call stack, here's what's\n // happened: you supplied an object or symbol value to React (as a prop, key,\n // DOM attribute, CSS property, string ref, etc.) and when React tried to\n // coerce it to a string using `'' + value`, an exception was thrown.\n //\n // The most common types that will cause this exception are `Symbol` instances\n // and Temporal objects like `Temporal.Instant`. But any object that has a\n // `valueOf` or `[Symbol.toPrimitive]` method that throws will also cause this\n // exception. (Library authors do this to prevent users from using built-in\n // numeric operators like `+` or comparison operators like `>=` because custom\n // methods are needed to perform accurate arithmetic or comparison.)\n //\n // To fix the problem, coerce this object or symbol value to a string before\n // passing it to React. The most reliable way is usually `String(value)`.\n //\n // To find which value is throwing, check the browser or debugger console.\n // Before this exception was thrown, there should be `console.error` output\n // that shows the type (Symbol, Temporal.PlainDate, etc.) that caused the\n // problem and how that type was used: key, atrribute, input value prop, etc.\n // In most cases, this console output also shows the component and its\n // ancestor components where the exception happened.\n //\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction checkKeyStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided key is an unsupported type %s.' + ' This value must be coerced to a string before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nvar REACT_CLIENT_REFERENCE$1 = Symbol.for('react.client.reference');\nfunction isValidElementType(type) {\n if (typeof type === 'string' || typeof type === 'function') {\n return true;\n } // Note: typeof might be other than 'symbol' or 'number' (e.g. if it's a polyfill).\n\n\n if (type === REACT_FRAGMENT_TYPE || type === REACT_PROFILER_TYPE || enableDebugTracing || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || enableLegacyHidden || type === REACT_OFFSCREEN_TYPE || enableScopeAPI || enableCacheElement || enableTransitionTracing ) {\n return true;\n }\n\n if (typeof type === 'object' && type !== null) {\n if (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || enableRenderableContext || type.$$typeof === REACT_FORWARD_REF_TYPE || // This needs to include all possible module reference object\n // types supported by any Flight configuration anywhere since\n // we don't know which Flight build this will end up being used\n // with.\n type.$$typeof === REACT_CLIENT_REFERENCE$1 || type.getModuleId !== undefined) {\n return true;\n }\n }\n\n return false;\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\n\n// Helpers to patch console.logs to avoid logging during side-effect free\n// replaying on render function. This currently only patches the object\n// lazily which won't cover if the log function was extracted eagerly.\n// We could also eagerly patch the method.\nvar disabledDepth = 0;\nvar prevLog;\nvar prevInfo;\nvar prevWarn;\nvar prevError;\nvar prevGroup;\nvar prevGroupCollapsed;\nvar prevGroupEnd;\n\nfunction disabledLog() {}\n\ndisabledLog.__reactDisabledLog = true;\nfunction disableLogs() {\n {\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n prevLog = console.log;\n prevInfo = console.info;\n prevWarn = console.warn;\n prevError = console.error;\n prevGroup = console.group;\n prevGroupCollapsed = console.groupCollapsed;\n prevGroupEnd = console.groupEnd; // https://github.com/facebook/react/issues/19099\n\n var props = {\n configurable: true,\n enumerable: true,\n value: disabledLog,\n writable: true\n }; // $FlowFixMe[cannot-write] Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n info: props,\n log: props,\n warn: props,\n error: props,\n group: props,\n groupCollapsed: props,\n groupEnd: props\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n disabledDepth++;\n }\n}\nfunction reenableLogs() {\n {\n disabledDepth--;\n\n if (disabledDepth === 0) {\n /* eslint-disable react-internal/no-production-logging */\n var props = {\n configurable: true,\n enumerable: true,\n writable: true\n }; // $FlowFixMe[cannot-write] Flow thinks console is immutable.\n\n Object.defineProperties(console, {\n log: assign({}, props, {\n value: prevLog\n }),\n info: assign({}, props, {\n value: prevInfo\n }),\n warn: assign({}, props, {\n value: prevWarn\n }),\n error: assign({}, props, {\n value: prevError\n }),\n group: assign({}, props, {\n value: prevGroup\n }),\n groupCollapsed: assign({}, props, {\n value: prevGroupCollapsed\n }),\n groupEnd: assign({}, props, {\n value: prevGroupEnd\n })\n });\n /* eslint-enable react-internal/no-production-logging */\n }\n\n if (disabledDepth < 0) {\n error('disabledDepth fell below zero. ' + 'This is a bug in React. Please file an issue.');\n }\n }\n}\n\nvar ReactCurrentDispatcher = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, ownerFn) {\n {\n if (prefix === undefined) {\n // Extract the VM specific prefix used by each line.\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = match && match[1] || '';\n }\n } // We use the prefix to ensure our stacks line up with native stack frames.\n\n\n return '\\n' + prefix + name;\n }\n}\nvar reentry = false;\nvar componentFrameCache;\n\n{\n var PossiblyWeakMap = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap();\n}\n/**\n * Leverages native browser/VM stack frames to get proper details (e.g.\n * filename, line + col number) for a single component in a component stack. We\n * do this by:\n * (1) throwing and catching an error in the function - this will be our\n * control error.\n * (2) calling the component which will eventually throw an error that we'll\n * catch - this will be our sample error.\n * (3) diffing the control and sample error stacks to find the stack frame\n * which represents our component.\n */\n\n\nfunction describeNativeComponentFrame(fn, construct) {\n // If something asked for a stack inside a fake render, it should get ignored.\n if (!fn || reentry) {\n return '';\n }\n\n {\n var frame = componentFrameCache.get(fn);\n\n if (frame !== undefined) {\n return frame;\n }\n }\n\n reentry = true;\n var previousPrepareStackTrace = Error.prepareStackTrace; // $FlowFixMe[incompatible-type] It does accept undefined.\n\n Error.prepareStackTrace = undefined;\n var previousDispatcher;\n\n {\n previousDispatcher = ReactCurrentDispatcher.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher.current = null;\n disableLogs();\n }\n /**\n * Finding a common stack frame between sample and control errors can be\n * tricky given the different types and levels of stack trace truncation from\n * different JS VMs. So instead we'll attempt to control what that common\n * frame should be through this object method:\n * Having both the sample and control errors be in the function under the\n * `DescribeNativeComponentFrameRoot` property, + setting the `name` and\n * `displayName` properties of the function ensures that a stack\n * frame exists that has the method name `DescribeNativeComponentFrameRoot` in\n * it for both control and sample stacks.\n */\n\n\n var RunInRootFrame = {\n DetermineComponentFrameRoot: function () {\n var control;\n\n try {\n // This should throw.\n if (construct) {\n // Something should be setting the props in the constructor.\n var Fake = function () {\n throw Error();\n }; // $FlowFixMe[prop-missing]\n\n\n Object.defineProperty(Fake.prototype, 'props', {\n set: function () {\n // We use a throwing setter instead of frozen or non-writable props\n // because that won't throw in a non-strict mode function.\n throw Error();\n }\n });\n\n if (typeof Reflect === 'object' && Reflect.construct) {\n // We construct a different control for this case to include any extra\n // frames added by the construct call.\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n control = x;\n }\n\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x) {\n control = x;\n } // $FlowFixMe[prop-missing] found when upgrading Flow\n\n\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x) {\n control = x;\n } // TODO(luna): This will currently only throw if the function component\n // tries to access React/ReactDOM/props. We should probably make this throw\n // in simple components too\n\n\n var maybePromise = fn(); // If the function component returns a promise, it's likely an async\n // component, which we don't yet support. Attach a noop catch handler to\n // silence the error.\n // TODO: Implement component stacks for async client components?\n\n if (maybePromise && typeof maybePromise.catch === 'function') {\n maybePromise.catch(function () {});\n }\n }\n } catch (sample) {\n // This is inlined manually because closure doesn't do it for us.\n if (sample && control && typeof sample.stack === 'string') {\n return [sample.stack, control.stack];\n }\n }\n\n return [null, null];\n }\n }; // $FlowFixMe[prop-missing]\n\n RunInRootFrame.DetermineComponentFrameRoot.displayName = 'DetermineComponentFrameRoot';\n var namePropDescriptor = Object.getOwnPropertyDescriptor(RunInRootFrame.DetermineComponentFrameRoot, 'name'); // Before ES6, the `name` property was not configurable.\n\n if (namePropDescriptor && namePropDescriptor.configurable) {\n // V8 utilizes a function's `name` property when generating a stack trace.\n Object.defineProperty(RunInRootFrame.DetermineComponentFrameRoot, // Configurable properties can be updated even if its writable descriptor\n // is set to `false`.\n // $FlowFixMe[cannot-write]\n 'name', {\n value: 'DetermineComponentFrameRoot'\n });\n }\n\n try {\n var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(),\n sampleStack = _RunInRootFrame$Deter[0],\n controlStack = _RunInRootFrame$Deter[1];\n\n if (sampleStack && controlStack) {\n // This extracts the first frame from the sample that isn't also in the control.\n // Skipping one frame that we assume is the frame that calls the two.\n var sampleLines = sampleStack.split('\\n');\n var controlLines = controlStack.split('\\n');\n var s = 0;\n var c = 0;\n\n while (s < sampleLines.length && !sampleLines[s].includes('DetermineComponentFrameRoot')) {\n s++;\n }\n\n while (c < controlLines.length && !controlLines[c].includes('DetermineComponentFrameRoot')) {\n c++;\n } // We couldn't find our intentionally injected common root frame, attempt\n // to find another common root frame by search from the bottom of the\n // control stack...\n\n\n if (s === sampleLines.length || c === controlLines.length) {\n s = sampleLines.length - 1;\n c = controlLines.length - 1;\n\n while (s >= 1 && c >= 0 && sampleLines[s] !== controlLines[c]) {\n // We expect at least one stack frame to be shared.\n // Typically this will be the root most one. However, stack frames may be\n // cut off due to maximum stack limits. In this case, one maybe cut off\n // earlier than the other. We assume that the sample is longer or the same\n // and there for cut off earlier. So we should find the root most frame in\n // the sample somewhere in the control.\n c--;\n }\n }\n\n for (; s >= 1 && c >= 0; s--, c--) {\n // Next we find the first one that isn't the same which should be the\n // frame that called our sample function and the control.\n if (sampleLines[s] !== controlLines[c]) {\n // In V8, the first line is describing the message but other VMs don't.\n // If we're about to return the first line, and the control is also on the same\n // line, that's a pretty good indicator that our sample threw at same line as\n // the control. I.e. before we entered the sample frame. So we ignore this result.\n // This can happen if you passed a class to function component, or non-function.\n if (s !== 1 || c !== 1) {\n do {\n s--;\n c--; // We may still have similar intermediate frames from the construct call.\n // The next one that isn't the same should be our match though.\n\n if (c < 0 || sampleLines[s] !== controlLines[c]) {\n // V8 adds a \"new\" prefix for native classes. Let's remove it to make it prettier.\n var _frame = '\\n' + sampleLines[s].replace(' at new ', ' at '); // If our component frame is labeled \"<anonymous>\"\n // but we have a user-provided \"displayName\"\n // splice it in to make the stack more readable.\n\n\n if (fn.displayName && _frame.includes('<anonymous>')) {\n _frame = _frame.replace('<anonymous>', fn.displayName);\n }\n\n if (true) {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, _frame);\n }\n } // Return the line we found.\n\n\n return _frame;\n }\n } while (s >= 1 && c >= 0);\n }\n\n break;\n }\n }\n }\n } finally {\n reentry = false;\n\n {\n ReactCurrentDispatcher.current = previousDispatcher;\n reenableLogs();\n }\n\n Error.prepareStackTrace = previousPrepareStackTrace;\n } // Fallback to just using the name if we couldn't make it throw.\n\n\n var name = fn ? fn.displayName || fn.name : '';\n var syntheticFrame = name ? describeBuiltInComponentFrame(name) : '';\n\n {\n if (typeof fn === 'function') {\n componentFrameCache.set(fn, syntheticFrame);\n }\n }\n\n return syntheticFrame;\n}\nfunction describeFunctionComponentFrame(fn, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct(type));\n }\n }\n\n if (typeof type === 'string') {\n return describeBuiltInComponentFrame(type);\n }\n\n switch (type) {\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame('Suspense');\n\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame('SuspenseList');\n }\n\n if (typeof type === 'object') {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeFunctionComponentFrame(type.render);\n\n case REACT_MEMO_TYPE:\n // Memo may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(type.type, ownerFn);\n\n case REACT_LAZY_TYPE:\n {\n var lazyComponent = type;\n var payload = lazyComponent._payload;\n var init = lazyComponent._init;\n\n try {\n // Lazy may contain any component type so we recursively resolve it.\n return describeUnknownElementTypeFrameInDEV(init(payload), ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\nvar REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference');\nvar specialPropKeyWarningShown;\nvar specialPropRefWarningShown;\nvar didWarnAboutStringRefs;\n\n{\n didWarnAboutStringRefs = {};\n}\n\nfunction hasValidRef(config) {\n {\n if (hasOwnProperty.call(config, 'ref')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'ref').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.ref !== undefined;\n}\n\nfunction hasValidKey(config) {\n {\n if (hasOwnProperty.call(config, 'key')) {\n var getter = Object.getOwnPropertyDescriptor(config, 'key').get;\n\n if (getter && getter.isReactWarning) {\n return false;\n }\n }\n }\n\n return config.key !== undefined;\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config, self) {\n {\n if (typeof config.ref === 'string' && ReactCurrentOwner.current && self && ReactCurrentOwner.current.stateNode !== self) {\n var componentName = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (!didWarnAboutStringRefs[componentName]) {\n error('Component \"%s\" contains the string ref \"%s\". ' + 'Support for string refs will be removed in a future major release. ' + 'This case cannot be automatically converted to an arrow function. ' + 'We ask you to manually fix this case by using useRef() or createRef() instead. ' + 'Learn more about using refs safely here: ' + 'https://reactjs.org/link/strict-mode-string-ref', getComponentNameFromType(ReactCurrentOwner.current.type), config.ref);\n\n didWarnAboutStringRefs[componentName] = true;\n }\n }\n }\n}\n\nfunction defineKeyPropWarningGetter(props, displayName) {\n {\n var warnAboutAccessingKey = function () {\n if (!specialPropKeyWarningShown) {\n specialPropKeyWarningShown = true;\n\n error('%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingKey.isReactWarning = true;\n Object.defineProperty(props, 'key', {\n get: warnAboutAccessingKey,\n configurable: true\n });\n }\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n {\n {\n var warnAboutAccessingRef = function () {\n if (!specialPropRefWarningShown) {\n specialPropRefWarningShown = true;\n\n error('%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://reactjs.org/link/special-props)', displayName);\n }\n };\n\n warnAboutAccessingRef.isReactWarning = true;\n Object.defineProperty(props, 'ref', {\n get: warnAboutAccessingRef,\n configurable: true\n });\n }\n }\n}\n/**\n * Factory method to create a new React element. This no longer adheres to\n * the class pattern, so do not use new to call it. Also, instanceof check\n * will not work. Instead test $$typeof field against Symbol.for('react.element') to check\n * if something is a React Element.\n *\n * @param {*} type\n * @param {*} props\n * @param {*} key\n * @param {string|object} ref\n * @param {*} owner\n * @param {*} self A *temporary* helper to detect places where `this` is\n * different from the `owner` when React.createElement is called, so that we\n * can warn. We want to get rid of owner and replace string `ref`s with arrow\n * functions, and as long as `this` and owner are the same, there will be no\n * change in behavior.\n * @param {*} source An annotation object (added by a transpiler or otherwise)\n * indicating filename, line number, and/or other information.\n * @internal\n */\n\n\nfunction ReactElement(type, key, _ref, self, source, owner, props) {\n var ref;\n\n {\n ref = _ref;\n }\n\n var element;\n\n {\n // In prod, `ref` is a regular property. It will be removed in a\n // future release.\n element = {\n // This tag allows us to uniquely identify this as a React Element\n $$typeof: REACT_ELEMENT_TYPE,\n // Built-in properties that belong on the element\n type: type,\n key: key,\n ref: ref,\n props: props,\n // Record the component responsible for creating this element.\n _owner: owner\n };\n }\n\n {\n // The validation flag is currently mutative. We put it on\n // an external backing store so that we can freeze the whole object.\n // This can be replaced with a WeakMap once they are implemented in\n // commonly used development environments.\n element._store = {}; // To make comparing ReactElements easier for testing purposes, we make\n // the validation flag non-enumerable (where possible, which should\n // include every environment we run tests in), so the test framework\n // ignores it.\n\n Object.defineProperty(element._store, 'validated', {\n configurable: false,\n enumerable: false,\n writable: true,\n value: false\n }); // debugInfo contains Server Component debug information.\n\n Object.defineProperty(element, '_debugInfo', {\n configurable: false,\n enumerable: false,\n writable: true,\n value: null\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n}\nvar didWarnAboutKeySpread = {};\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV$1(type, config, maybeKey, isStaticChildren, source, self) {\n {\n if (!isValidElementType(type)) {\n // This is an invalid element type.\n //\n // We warn in this case but don't throw. We expect the element creation to\n // succeed and there will likely be errors in render.\n var info = '';\n\n if (type === undefined || typeof type === 'object' && type !== null && Object.keys(type).length === 0) {\n info += ' You likely forgot to export your component from the file ' + \"it's defined in, or you might have mixed up default and named imports.\";\n }\n\n var typeString;\n\n if (type === null) {\n typeString = 'null';\n } else if (isArray(type)) {\n typeString = 'array';\n } else if (type !== undefined && type.$$typeof === REACT_ELEMENT_TYPE) {\n typeString = \"<\" + (getComponentNameFromType(type.type) || 'Unknown') + \" />\";\n info = ' Did you accidentally export a JSX literal instead of a component?';\n } else {\n typeString = typeof type;\n }\n\n error('React.jsx: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n } else {\n // This is a valid element type.\n // Skip key warning if the type isn't valid since our key validation logic\n // doesn't expect a non-string/function type and can throw confusing\n // errors. We don't want exception behavior to differ between dev and\n // prod. (Rendering will throw with a helpful message and as soon as the\n // type is fixed, the key warnings will appear.)\n var children = config.children;\n\n if (children !== undefined) {\n if (isStaticChildren) {\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n validateChildKeys(children[i], type);\n }\n\n if (Object.freeze) {\n Object.freeze(children);\n }\n } else {\n error('React.jsx: Static children should always be an array. ' + 'You are likely explicitly calling React.jsxs or React.jsxDEV. ' + 'Use the Babel transform instead.');\n }\n } else {\n validateChildKeys(children, type);\n }\n }\n } // Warn about key spread regardless of whether the type is valid.\n\n\n if (hasOwnProperty.call(config, 'key')) {\n var componentName = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return k !== 'key';\n });\n var beforeExample = keys.length > 0 ? '{key: someKey, ' + keys.join(': ..., ') + ': ...}' : '{key: someKey}';\n\n if (!didWarnAboutKeySpread[componentName + beforeExample]) {\n var afterExample = keys.length > 0 ? '{' + keys.join(': ..., ') + ': ...}' : '{}';\n\n error('A props object containing a \"key\" prop is being spread into JSX:\\n' + ' let props = %s;\\n' + ' <%s {...props} />\\n' + 'React keys must be passed directly to JSX without using spread:\\n' + ' let props = %s;\\n' + ' <%s key={someKey} {...props} />', beforeExample, componentName, afterExample, componentName);\n\n didWarnAboutKeySpread[componentName + beforeExample] = true;\n }\n }\n\n var propName; // Reserved names are extracted\n\n var props = {};\n var key = null;\n var ref = null; // Currently, key can be spread in as a prop. This causes a potential\n // issue if key is also explicitly declared (ie. <div {...props} key=\"Hi\" />\n // or <div key=\"Hi\" {...props} /> ). We want to deprecate key spread,\n // but as an intermediary step, we will use jsxDEV for everything except\n // <div {...props} key=\"Hi\" />, because we aren't currently able to tell if\n // key is explicitly declared to be undefined or not.\n\n if (maybeKey !== undefined) {\n {\n checkKeyStringCoercion(maybeKey);\n }\n\n key = '' + maybeKey;\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n }\n\n if (hasValidRef(config)) {\n {\n ref = config.ref;\n }\n\n warnIfStringRefCannotBeAutoConverted(config, self);\n } // Remaining properties are added to a new props object\n\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && // Skip over reserved prop names\n propName !== 'key' && (propName !== 'ref')) {\n props[propName] = config[propName];\n }\n } // Resolve default props\n\n\n if (type && type.defaultProps) {\n var defaultProps = type.defaultProps;\n\n for (propName in defaultProps) {\n if (props[propName] === undefined) {\n props[propName] = defaultProps[propName];\n }\n }\n }\n\n if (key || ref) {\n var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type;\n\n if (key) {\n defineKeyPropWarningGetter(props, displayName);\n }\n\n if (ref) {\n defineRefPropWarningGetter(props, displayName);\n }\n }\n\n var element = ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n\n if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n }\n\n return element;\n }\n}\n\nfunction getDeclarationErrorAddendum() {\n {\n if (ReactCurrentOwner.current) {\n var name = getComponentNameFromType(ReactCurrentOwner.current.type);\n\n if (name) {\n return '\\n\\nCheck the render method of `' + name + '`.';\n }\n }\n\n return '';\n }\n}\n/**\n * Ensure that every element either is passed in a static location, in an\n * array with an explicit keys property defined, or in an object literal\n * with valid key property.\n *\n * @internal\n * @param {ReactNode} node Statically passed child of any type.\n * @param {*} parentType node's parent's type.\n */\n\n\nfunction validateChildKeys(node, parentType) {\n {\n if (typeof node !== 'object' || !node) {\n return;\n }\n\n if (node.$$typeof === REACT_CLIENT_REFERENCE) ; else if (isArray(node)) {\n for (var i = 0; i < node.length; i++) {\n var child = node[i];\n\n if (isValidElement(child)) {\n validateExplicitKey(child, parentType);\n }\n }\n } else if (isValidElement(node)) {\n // This element was passed in a valid location.\n if (node._store) {\n node._store.validated = true;\n }\n } else {\n var iteratorFn = getIteratorFn(node);\n\n if (typeof iteratorFn === 'function') {\n // Entry iterators used to provide implicit keys,\n // but now we print a separate warning for them later.\n if (iteratorFn !== node.entries) {\n var iterator = iteratorFn.call(node);\n var step;\n\n while (!(step = iterator.next()).done) {\n if (isValidElement(step.value)) {\n validateExplicitKey(step.value, parentType);\n }\n }\n }\n }\n }\n }\n}\n/**\n * Verifies the object is a ReactElement.\n * See https://reactjs.org/docs/react-api.html#isvalidelement\n * @param {?object} object\n * @return {boolean} True if `object` is a ReactElement.\n * @final\n */\n\n\nfunction isValidElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nvar ownerHasKeyUseWarning = {};\n/**\n * Warn if the element doesn't have an explicit key assigned to it.\n * This element is in an array. The array could grow and shrink or be\n * reordered. All children that haven't already been validated are required to\n * have a \"key\" property assigned to it. Error statuses are cached so a warning\n * will only be shown once.\n *\n * @internal\n * @param {ReactElement} element Element that requires a key.\n * @param {*} parentType element's parent's type.\n */\n\nfunction validateExplicitKey(element, parentType) {\n {\n if (!element._store || element._store.validated || element.key != null) {\n return;\n }\n\n element._store.validated = true;\n var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType);\n\n if (ownerHasKeyUseWarning[currentComponentErrorInfo]) {\n return;\n }\n\n ownerHasKeyUseWarning[currentComponentErrorInfo] = true; // Usually the current owner is the offender, but if it accepts children as a\n // property, it may be the creator of the child that's responsible for\n // assigning it a key.\n\n var childOwner = '';\n\n if (element && element._owner && element._owner !== ReactCurrentOwner.current) {\n // Give the component that originally created this child.\n childOwner = \" It was passed a child from \" + getComponentNameFromType(element._owner.type) + \".\";\n }\n\n setCurrentlyValidatingElement(element);\n\n error('Each child in a list should have a unique \"key\" prop.' + '%s%s See https://reactjs.org/link/warning-keys for more information.', currentComponentErrorInfo, childOwner);\n\n setCurrentlyValidatingElement(null);\n }\n}\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, owner ? owner.type : null);\n ReactDebugCurrentFrame.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame.setExtraStackFrame(null);\n }\n }\n}\n\nfunction getCurrentComponentErrorInfo(parentType) {\n {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = getComponentNameFromType(parentType);\n\n if (parentName) {\n info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n }\n }\n\n return info;\n }\n}\n/**\n * Given a fragment, validate that it can only be provided with fragment props\n * @param {ReactElement} fragment\n */\n\n\nfunction validateFragmentProps(fragment) {\n // TODO: Move this to render phase instead of at element creation.\n {\n var keys = Object.keys(fragment.props);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n\n if (key !== 'children' && key !== 'key') {\n setCurrentlyValidatingElement(fragment);\n\n error('Invalid prop `%s` supplied to `React.Fragment`. ' + 'React.Fragment can only have `key` and `children` props.', key);\n\n setCurrentlyValidatingElement(null);\n break;\n }\n }\n\n if (fragment.ref !== null) {\n setCurrentlyValidatingElement(fragment);\n\n error('Invalid attribute `ref` supplied to `React.Fragment`.');\n\n setCurrentlyValidatingElement(null);\n }\n }\n}\n\nvar jsxDEV = jsxDEV$1 ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsxDEV = jsxDEV;\n })();\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcmVhY3QvY2pzL3JlYWN0LWpzeC1kZXYtcnVudGltZS5kZXZlbG9wbWVudC5qcyIsIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRWE7O0FBRWIsSUFBSSxJQUFxQztBQUN6QztBQUNBOztBQUVBLFlBQVksbUJBQU8sQ0FBQyxzR0FBMEI7O0FBRTlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdEQUF3RDs7QUFFeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLGlHQUFpRyxlQUFlO0FBQ2hIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLE1BQU07OztBQUdOO0FBQ0E7QUFDQSxLQUFLLEdBQUc7O0FBRVIsa0RBQWtEO0FBQ2xEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBLDRCQUE0QjtBQUM1QjtBQUNBLHFDQUFxQzs7QUFFckMsZ0NBQWdDO0FBQ2hDO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsRUFBRTs7O0FBR0Y7QUFDQTtBQUNBOztBQUVBLHFFQUFxRTs7QUFFckU7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0dBQWtHOztBQUVsRztBQUNBO0FBQ0EsRUFBRTs7O0FBR0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsd0NBQXdDO0FBQ3hDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7OztBQUdKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQSxpQ0FBaUM7O0FBRWpDO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVDQUF1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O0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLFlBQVk7QUFDWjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEdBQUc7QUFDZCxXQUFXLEdBQUc7QUFDZCxXQUFXLEdBQUc7QUFDZCxXQUFXLGVBQWU7QUFDMUIsV0FBVyxHQUFHO0FBQ2QsV0FBVyxHQUFHO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLEdBQUc7QUFDZDtBQUNBO0FBQ0E7OztBQUdBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtB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QUFXLGNBQWM7QUFDekI7OztBQUdBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLG9CQUFvQixpQkFBaUI7QUFDckM7O0FBRUE7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBLGdCQUFnQjtBQUNoQixjQUFjO0FBQ2QsR0FBRztBQUNIIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcmVhY3QvY2pzL3JlYWN0LWpzeC1kZXYtcnVudGltZS5kZXZlbG9wbWVudC5qcz8xMGQ4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2UgUmVhY3RcbiAqIHJlYWN0LWpzeC1kZXYtcnVudGltZS5kZXZlbG9wbWVudC5qc1xuICpcbiAqIENvcHlyaWdodCAoYykgTWV0YSBQbGF0Zm9ybXMsIEluYy4gYW5kIGFmZmlsaWF0ZXMuXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuJ3VzZSBzdHJpY3QnO1xuXG5pZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gIChmdW5jdGlvbigpIHtcbid1c2Ugc3RyaWN0JztcblxudmFyIFJlYWN0ID0gcmVxdWlyZShcIm5leHQvZGlzdC9jb21waWxlZC9yZWFjdFwiKTtcblxuLy8gQVRURU5USU9OXG4vLyBXaGVuIGFkZGluZyBuZXcgc3ltYm9scyB0byB0aGlzIGZpbGUsXG4vLyBQbGVhc2UgY29uc2lkZXIgYWxzbyBhZGRpbmcgdG8gJ3JlYWN0LWRldnRvb2xzLXNoYXJlZC9zcmMvYmFja2VuZC9SZWFjdFN5bWJvbHMnXG4vLyBUaGUgU3ltYm9sIHVzZWQgdG8gdGFnIHRoZSBSZWFjdEVsZW1lbnQtbGlrZSB0eXBlcy5cbnZhciBSRUFDVF9FTEVNRU5UX1RZUEUgPSBTeW1ib2wuZm9yKCdyZWFjdC5lbGVtZW50Jyk7XG52YXIgUkVBQ1RfUE9SVEFMX1RZUEUgPSBTeW1ib2wuZm9yKCdyZWFjdC5wb3J0YWwnKTtcbnZhciBSRUFDVF9GUkFHTUVOVF9UWVBFID0gU3ltYm9sLmZvcigncmVhY3QuZnJhZ21lbnQnKTtcbnZhciBSRUFDVF9TVFJJQ1RfTU9ERV9UWVBFID0gU3ltYm9sLmZvcigncmVhY3Quc3RyaWN0X21vZGUnKTtcbnZhciBSRUFDVF9QUk9GSUxFUl9UWVBFID0gU3ltYm9sLmZvcigncmVhY3QucHJvZmlsZXInKTtcbnZhciBSRUFDVF9QUk9WSURFUl9UWVBFID0gU3ltYm9sLmZvcigncmVhY3QucHJvdmlkZXInKTsgLy8gVE9ETzogRGVsZXRlIHdpdGggZW5hYmxlUmVuZGVyYWJsZUNvbnRleHRcblxudmFyIFJFQUNUX0NPTlNVTUVSX1RZUEUgPSBTeW1ib2wuZm9yKCdyZWFjdC5jb25zdW1lcicpO1xudmFyIFJFQUNUX0NPTlRFWFRfVFlQRSA9IFN5bWJvbC5mb3IoJ3JlYWN0LmNvbnRleHQnKTtcbnZhciBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFID0gU3ltYm9sLmZvcigncmVhY3QuZm9yd2FyZF9yZWYnKTtcbnZhciBSRUFDVF9TVVNQRU5TRV9UWVBFID0gU3ltYm9sLmZvcigncmVhY3Quc3VzcGVuc2UnKTtcbnZhciBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEUgPSBTeW1ib2wuZm9yKCdyZWFjdC5zdXNwZW5zZV9saXN0Jyk7XG52YXIgUkVBQ1RfTUVNT19UWVBFID0gU3ltYm9sLmZvcigncmVhY3QubWVtbycpO1xudmFyIFJFQUNUX0xBWllfVFlQRSA9IFN5bWJvbC5mb3IoJ3JlYWN0LmxhenknKTtcbnZhciBSRUFDVF9PRkZTQ1JFRU5fVFlQRSA9IFN5bWJvbC5mb3IoJ3JlYWN0Lm9mZnNjcmVlbicpO1xudmFyIFJFQUNUX0NBQ0hFX1RZUEUgPSBTeW1ib2wuZm9yKCdyZWFjdC5jYWNoZScpO1xudmFyIE1BWUJFX0lURVJBVE9SX1NZTUJPTCA9IFN5bWJvbC5pdGVyYXRvcjtcbnZhciBGQVVYX0lURVJBVE9SX1NZTUJPTCA9ICdAQGl0ZXJhdG9yJztcbmZ1bmN0aW9uIGdldEl0ZXJhdG9yRm4obWF5YmVJdGVyYWJsZSkge1xuICBpZiAobWF5YmVJdGVyYWJsZSA9PT0gbnVsbCB8fCB0eXBlb2YgbWF5YmVJdGVyYWJsZSAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHZhciBtYXliZUl0ZXJhdG9yID0gTUFZQkVfSVRFUkFUT1JfU1lNQk9MICYmIG1heWJlSXRlcmFibGVbTUFZQkVfSVRFUkFUT1JfU1lNQk9MXSB8fCBtYXliZUl0ZXJhYmxlW0ZBVVhfSVRFUkFUT1JfU1lNQk9MXTtcblxuICBpZiAodHlwZW9mIG1heWJlSXRlcmF0b3IgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gbWF5YmVJdGVyYXRvcjtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG52YXIgUmVhY3RTaGFyZWRJbnRlcm5hbHMgPSBSZWFjdC5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRDtcblxuZnVuY3Rpb24gZXJyb3IoZm9ybWF0KSB7XG4gIHtcbiAgICB7XG4gICAgICBmb3IgKHZhciBfbGVuMiA9IGFyZ3VtZW50cy5sZW5ndGgsIGFyZ3MgPSBuZXcgQXJyYXkoX2xlbjIgPiAxID8gX2xlbjIgLSAxIDogMCksIF9rZXkyID0gMTsgX2tleTIgPCBfbGVuMjsgX2tleTIrKykge1xuICAgICAgICBhcmdzW19rZXkyIC0gMV0gPSBhcmd1bWVudHNbX2tleTJdO1xuICAgICAgfVxuXG4gICAgICBwcmludFdhcm5pbmcoJ2Vycm9yJywgZm9ybWF0LCBhcmdzKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gcHJpbnRXYXJuaW5nKGxldmVsLCBmb3JtYXQsIGFyZ3MpIHtcbiAgLy8gV2hlbiBjaGFuZ2luZyB0aGlzIGxvZ2ljLCB5b3UgbWlnaHQgd2FudCB0byBhbHNvXG4gIC8vIHVwZGF0ZSBjb25zb2xlV2l0aFN0YWNrRGV2Lnd3dy5qcyBhcyB3ZWxsLlxuICB7XG4gICAgdmFyIFJlYWN0RGVidWdDdXJyZW50RnJhbWUgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdERlYnVnQ3VycmVudEZyYW1lO1xuICAgIHZhciBzdGFjayA9IFJlYWN0RGVidWdDdXJyZW50RnJhbWUuZ2V0U3RhY2tBZGRlbmR1bSgpO1xuXG4gICAgaWYgKHN0YWNrICE9PSAnJykge1xuICAgICAgZm9ybWF0ICs9ICclcyc7XG4gICAgICBhcmdzID0gYXJncy5jb25jYXQoW3N0YWNrXSk7XG4gICAgfSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaW50ZXJuYWwvc2FmZS1zdHJpbmctY29lcmNpb25cblxuXG4gICAgdmFyIGFyZ3NXaXRoRm9ybWF0ID0gYXJncy5tYXAoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIHJldHVybiBTdHJpbmcoaXRlbSk7XG4gICAgfSk7IC8vIENhcmVmdWw6IFJOIGN1cnJlbnRseSBkZXBlbmRzIG9uIHRoaXMgcHJlZml4XG5cbiAgICBhcmdzV2l0aEZvcm1hdC51bnNoaWZ0KCdXYXJuaW5nOiAnICsgZm9ybWF0KTsgLy8gV2UgaW50ZW50aW9uYWxseSBkb24ndCB1c2Ugc3ByZWFkIChvciAuYXBwbHkpIGRpcmVjdGx5IGJlY2F1c2UgaXRcbiAgICAvLyBicmVha3MgSUU5OiBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzEzNjEwXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZ1xuXG4gICAgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwoY29uc29sZVtsZXZlbF0sIGNvbnNvbGUsIGFyZ3NXaXRoRm9ybWF0KTtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG52YXIgZW5hYmxlU2NvcGVBUEkgPSBmYWxzZTsgLy8gRXhwZXJpbWVudGFsIENyZWF0ZSBFdmVudCBIYW5kbGUgQVBJLlxudmFyIGVuYWJsZUNhY2hlRWxlbWVudCA9IGZhbHNlO1xudmFyIGVuYWJsZVRyYW5zaXRpb25UcmFjaW5nID0gZmFsc2U7IC8vIE5vIGtub3duIGJ1Z3MsIGJ1dCBuZWVkcyBwZXJmb3JtYW5jZSB0ZXN0aW5nXG5cbnZhciBlbmFibGVMZWdhY3lIaWRkZW4gPSBmYWxzZTsgLy8gRW5hYmxlcyB1bnN0YWJsZV9hdm9pZFRoaXNGYWxsYmFjayBmZWF0dXJlIGluIEZpYmVyXG52YXIgZW5hYmxlUmVuZGVyYWJsZUNvbnRleHQgPSBmYWxzZTtcbi8vIHN0dWZmLiBJbnRlbmRlZCB0byBlbmFibGUgUmVhY3QgY29yZSBtZW1iZXJzIHRvIG1vcmUgZWFzaWx5IGRlYnVnIHNjaGVkdWxpbmdcbi8vIGlzc3VlcyBpbiBERVYgYnVpbGRzLlxuXG52YXIgZW5hYmxlRGVidWdUcmFjaW5nID0gZmFsc2U7XG5cbmZ1bmN0aW9uIGdldFdyYXBwZWROYW1lKG91dGVyVHlwZSwgaW5uZXJUeXBlLCB3cmFwcGVyTmFtZSkge1xuICB2YXIgZGlzcGxheU5hbWUgPSBvdXRlclR5cGUuZGlzcGxheU5hbWU7XG5cbiAgaWYgKGRpc3BsYXlOYW1lKSB7XG4gICAgcmV0dXJuIGRpc3BsYXlOYW1lO1xuICB9XG5cbiAgdmFyIGZ1bmN0aW9uTmFtZSA9IGlubmVyVHlwZS5kaXNwbGF5TmFtZSB8fCBpbm5lclR5cGUubmFtZSB8fCAnJztcbiAgcmV0dXJuIGZ1bmN0aW9uTmFtZSAhPT0gJycgPyB3cmFwcGVyTmFtZSArIFwiKFwiICsgZnVuY3Rpb25OYW1lICsgXCIpXCIgOiB3cmFwcGVyTmFtZTtcbn0gLy8gS2VlcCBpbiBzeW5jIHdpdGggcmVhY3QtcmVjb25jaWxlci9nZXRDb21wb25lbnROYW1lRnJvbUZpYmVyXG5cblxuZnVuY3Rpb24gZ2V0Q29udGV4dE5hbWUodHlwZSkge1xuICByZXR1cm4gdHlwZS5kaXNwbGF5TmFtZSB8fCAnQ29udGV4dCc7XG59XG5cbnZhciBSRUFDVF9DTElFTlRfUkVGRVJFTkNFJDIgPSBTeW1ib2wuZm9yKCdyZWFjdC5jbGllbnQucmVmZXJlbmNlJyk7IC8vIE5vdGUgdGhhdCB0aGUgcmVjb25jaWxlciBwYWNrYWdlIHNob3VsZCBnZW5lcmFsbHkgcHJlZmVyIHRvIHVzZSBnZXRDb21wb25lbnROYW1lRnJvbUZpYmVyKCkgaW5zdGVhZC5cblxuZnVuY3Rpb24gZ2V0Q29tcG9uZW50TmFtZUZyb21UeXBlKHR5cGUpIHtcbiAgaWYgKHR5cGUgPT0gbnVsbCkge1xuICAgIC8vIEhvc3Qgcm9vdCwgdGV4dCBub2RlIG9yIGp1c3QgaW52YWxpZCB0eXBlLlxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgaWYgKHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0NMSUVOVF9SRUZFUkVOQ0UkMikge1xuICAgICAgLy8gVE9ETzogQ3JlYXRlIGEgY29udmVudGlvbiBmb3IgbmFtaW5nIGNsaWVudCByZWZlcmVuY2VzIHdpdGggZGVidWcgaW5mby5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlLmRpc3BsYXlOYW1lIHx8IHR5cGUubmFtZSB8fCBudWxsO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBSRUFDVF9GUkFHTUVOVF9UWVBFOlxuICAgICAgcmV0dXJuICdGcmFnbWVudCc7XG5cbiAgICBjYXNlIFJFQUNUX1BPUlRBTF9UWVBFOlxuICAgICAgcmV0dXJuICdQb3J0YWwnO1xuXG4gICAgY2FzZSBSRUFDVF9QUk9GSUxFUl9UWVBFOlxuICAgICAgcmV0dXJuICdQcm9maWxlcic7XG5cbiAgICBjYXNlIFJFQUNUX1NUUklDVF9NT0RFX1RZUEU6XG4gICAgICByZXR1cm4gJ1N0cmljdE1vZGUnO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9UWVBFOlxuICAgICAgcmV0dXJuICdTdXNwZW5zZSc7XG5cbiAgICBjYXNlIFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRTpcbiAgICAgIHJldHVybiAnU3VzcGVuc2VMaXN0JztcblxuICAgIGNhc2UgUkVBQ1RfQ0FDSEVfVFlQRTpcbiAgICAgIHtcbiAgICAgICAgcmV0dXJuICdDYWNoZSc7XG4gICAgICB9XG5cbiAgfVxuXG4gIGlmICh0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcpIHtcbiAgICB7XG4gICAgICBpZiAodHlwZW9mIHR5cGUudGFnID09PSAnbnVtYmVyJykge1xuICAgICAgICBlcnJvcignUmVjZWl2ZWQgYW4gdW5leHBlY3RlZCBvYmplY3QgaW4gZ2V0Q29tcG9uZW50TmFtZUZyb21UeXBlKCkuICcgKyAnVGhpcyBpcyBsaWtlbHkgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHN3aXRjaCAodHlwZS4kJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9QUk9WSURFUl9UWVBFOlxuICAgICAgICB7XG4gICAgICAgICAgdmFyIHByb3ZpZGVyID0gdHlwZTtcbiAgICAgICAgICByZXR1cm4gZ2V0Q29udGV4dE5hbWUocHJvdmlkZXIuX2NvbnRleHQpICsgJy5Qcm92aWRlcic7XG4gICAgICAgIH1cblxuICAgICAgY2FzZSBSRUFDVF9DT05URVhUX1RZUEU6XG4gICAgICAgIHZhciBjb250ZXh0ID0gdHlwZTtcblxuICAgICAgICB7XG4gICAgICAgICAgcmV0dXJuIGdldENvbnRleHROYW1lKGNvbnRleHQpICsgJy5Db25zdW1lcic7XG4gICAgICAgIH1cblxuICAgICAgY2FzZSBSRUFDVF9DT05TVU1FUl9UWVBFOlxuICAgICAgICB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICByZXR1cm4gZ2V0V3JhcHBlZE5hbWUodHlwZSwgdHlwZS5yZW5kZXIsICdGb3J3YXJkUmVmJyk7XG5cbiAgICAgIGNhc2UgUkVBQ1RfTUVNT19UWVBFOlxuICAgICAgICB2YXIgb3V0ZXJOYW1lID0gdHlwZS5kaXNwbGF5TmFtZSB8fCBudWxsO1xuXG4gICAgICAgIGlmIChvdXRlck5hbWUgIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gb3V0ZXJOYW1lO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdldENvbXBvbmVudE5hbWVGcm9tVHlwZSh0eXBlLnR5cGUpIHx8ICdNZW1vJztcblxuICAgICAgY2FzZSBSRUFDVF9MQVpZX1RZUEU6XG4gICAgICAgIHtcbiAgICAgICAgICB2YXIgbGF6eUNvbXBvbmVudCA9IHR5cGU7XG4gICAgICAgICAgdmFyIHBheWxvYWQgPSBsYXp5Q29tcG9uZW50Ll9wYXlsb2FkO1xuICAgICAgICAgIHZhciBpbml0ID0gbGF6eUNvbXBvbmVudC5faW5pdDtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gZ2V0Q29tcG9uZW50TmFtZUZyb21UeXBlKGluaXQocGF5bG9hZCkpO1xuICAgICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vLyAkRmxvd0ZpeE1lW21ldGhvZC11bmJpbmRpbmddXG52YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xuXG52YXIgYXNzaWduID0gT2JqZWN0LmFzc2lnbjtcblxuLypcbiAqIFRoZSBgJycgKyB2YWx1ZWAgcGF0dGVybiAodXNlZCBpbiBwZXJmLXNlbnNpdGl2ZSBjb2RlKSB0aHJvd3MgZm9yIFN5bWJvbFxuICogYW5kIFRlbXBvcmFsLiogdHlwZXMuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvcHVsbC8yMjA2NC5cbiAqXG4gKiBUaGUgZnVuY3Rpb25zIGluIHRoaXMgbW9kdWxlIHdpbGwgdGhyb3cgYW4gZWFzaWVyLXRvLXVuZGVyc3RhbmQsXG4gKiBlYXNpZXItdG8tZGVidWcgZXhjZXB0aW9uIHdpdGggYSBjbGVhciBlcnJvcnMgbWVzc2FnZSBtZXNzYWdlIGV4cGxhaW5pbmcgdGhlXG4gKiBwcm9ibGVtLiAoSW5zdGVhZCBvZiBhIGNvbmZ1c2luZyBleGNlcHRpb24gdGhyb3duIGluc2lkZSB0aGUgaW1wbGVtZW50YXRpb25cbiAqIG9mIHRoZSBgdmFsdWVgIG9iamVjdCkuXG4gKi9cbi8vICRGbG93Rml4TWVbaW5jb21wYXRpYmxlLXJldHVybl0gb25seSBjYWxsZWQgaW4gREVWLCBzbyB2b2lkIHJldHVybiBpcyBub3QgcG9zc2libGUuXG5mdW5jdGlvbiB0eXBlTmFtZSh2YWx1ZSkge1xuICB7XG4gICAgLy8gdG9TdHJpbmdUYWcgaXMgbmVlZGVkIGZvciBuYW1lc3BhY2VkIHR5cGVzIGxpa2UgVGVtcG9yYWwuSW5zdGFudFxuICAgIHZhciBoYXNUb1N0cmluZ1RhZyA9IHR5cGVvZiBTeW1ib2wgPT09ICdmdW5jdGlvbicgJiYgU3ltYm9sLnRvU3RyaW5nVGFnO1xuICAgIHZhciB0eXBlID0gaGFzVG9TdHJpbmdUYWcgJiYgdmFsdWVbU3ltYm9sLnRvU3RyaW5nVGFnXSB8fCB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lIHx8ICdPYmplY3QnOyAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS1yZXR1cm5dXG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfVxufSAvLyAkRmxvd0ZpeE1lW2luY29tcGF0aWJsZS1yZXR1cm5dIG9ubHkgY2FsbGVkIGluIERFViwgc28gdm9pZCByZXR1cm4gaXMgbm90IHBvc3NpYmxlLlxuXG5cbmZ1bmN0aW9uIHdpbGxDb2VyY2lvblRocm93KHZhbHVlKSB7XG4gIHtcbiAgICB0cnkge1xuICAgICAgdGVzdFN0cmluZ0NvZXJjaW9uKHZhbHVlKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gdGVzdFN0cmluZ0NvZXJjaW9uKHZhbHVlKSB7XG4gIC8vIElmIHlvdSBlbmRlZCB1cCBoZXJlIGJ5IGZvbGxvd2luZyBhbiBleGNlcHRpb24gY2FsbCBzdGFjaywgaGVyZSdzIHdoYXQnc1xuICAvLyBoYXBwZW5lZDogeW91IHN1cHBsaWVkIGFuIG9iamVjdCBvciBzeW1ib2wgdmFsdWUgdG8gUmVhY3QgKGFzIGEgcHJvcCwga2V5LFxuICAvLyBET00gYXR0cmlidXRlLCBDU1MgcHJvcGVydHksIHN0cmluZyByZWYsIGV0Yy4pIGFuZCB3aGVuIFJlYWN0IHRyaWVkIHRvXG4gIC8vIGNvZXJjZSBpdCB0byBhIHN0cmluZyB1c2luZyBgJycgKyB2YWx1ZWAsIGFuIGV4Y2VwdGlvbiB3YXMgdGhyb3duLlxuICAvL1xuICAvLyBUaGUgbW9zdCBjb21tb24gdHlwZXMgdGhhdCB3aWxsIGNhdXNlIHRoaXMgZXhjZXB0aW9uIGFyZSBgU3ltYm9sYCBpbnN0YW5jZXNcbiAgLy8gYW5kIFRlbXBvcmFsIG9iamVjdHMgbGlrZSBgVGVtcG9yYWwuSW5zdGFudGAuIEJ1dCBhbnkgb2JqZWN0IHRoYXQgaGFzIGFcbiAgLy8gYHZhbHVlT2ZgIG9yIGBbU3ltYm9sLnRvUHJpbWl0aXZlXWAgbWV0aG9kIHRoYXQgdGhyb3dzIHdpbGwgYWxzbyBjYXVzZSB0aGlzXG4gIC8vIGV4Y2VwdGlvbi4gKExpYnJhcnkgYXV0aG9ycyBkbyB0aGlzIHRvIHByZXZlbnQgdXNlcnMgZnJvbSB1c2luZyBidWlsdC1pblxuICAvLyBudW1lcmljIG9wZXJhdG9ycyBsaWtlIGArYCBvciBjb21wYXJpc29uIG9wZXJhdG9ycyBsaWtlIGA+PWAgYmVjYXVzZSBjdXN0b21cbiAgLy8gbWV0aG9kcyBhcmUgbmVlZGVkIHRvIHBlcmZvcm0gYWNjdXJhdGUgYXJpdGhtZXRpYyBvciBjb21wYXJpc29uLilcbiAgLy9cbiAgLy8gVG8gZml4IHRoZSBwcm9ibGVtLCBjb2VyY2UgdGhpcyBvYmplY3Qgb3Igc3ltYm9sIHZhbHVlIHRvIGEgc3RyaW5nIGJlZm9yZVxuICAvLyBwYXNzaW5nIGl0IHRvIFJlYWN0LiBUaGUgbW9zdCByZWxpYWJsZSB3YXkgaXMgdXN1YWxseSBgU3RyaW5nKHZhbHVlKWAuXG4gIC8vXG4gIC8vIFRvIGZpbmQgd2hpY2ggdmFsdWUgaXMgdGhyb3dpbmcsIGNoZWNrIHRoZSBicm93c2VyIG9yIGRlYnVnZ2VyIGNvbnNvbGUuXG4gIC8vIEJlZm9yZSB0aGlzIGV4Y2VwdGlvbiB3YXMgdGhyb3duLCB0aGVyZSBzaG91bGQgYmUgYGNvbnNvbGUuZXJyb3JgIG91dHB1dFxuICAvLyB0aGF0IHNob3dzIHRoZSB0eXBlIChTeW1ib2wsIFRlbXBvcmFsLlBsYWluRGF0ZSwgZXRjLikgdGhhdCBjYXVzZWQgdGhlXG4gIC8vIHByb2JsZW0gYW5kIGhvdyB0aGF0IHR5cGUgd2FzIHVzZWQ6IGtleSwgYXRycmlidXRlLCBpbnB1dCB2YWx1ZSBwcm9wLCBldGMuXG4gIC8vIEluIG1vc3QgY2FzZXMsIHRoaXMgY29uc29sZSBvdXRwdXQgYWxzbyBzaG93cyB0aGUgY29tcG9uZW50IGFuZCBpdHNcbiAgLy8gYW5jZXN0b3IgY29tcG9uZW50cyB3aGVyZSB0aGUgZXhjZXB0aW9uIGhhcHBlbmVkLlxuICAvL1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaW50ZXJuYWwvc2FmZS1zdHJpbmctY29lcmNpb25cbiAgcmV0dXJuICcnICsgdmFsdWU7XG59XG5mdW5jdGlvbiBjaGVja0tleVN0cmluZ0NvZXJjaW9uKHZhbHVlKSB7XG4gIHtcbiAgICBpZiAod2lsbENvZXJjaW9uVGhyb3codmFsdWUpKSB7XG4gICAgICBlcnJvcignVGhlIHByb3ZpZGVkIGtleSBpcyBhbiB1bnN1cHBvcnRlZCB0eXBlICVzLicgKyAnIFRoaXMgdmFsdWUgbXVzdCBiZSBjb2VyY2VkIHRvIGEgc3RyaW5nIGJlZm9yZSB1c2luZyBpdCBoZXJlLicsIHR5cGVOYW1lKHZhbHVlKSk7XG5cbiAgICAgIHJldHVybiB0ZXN0U3RyaW5nQ29lcmNpb24odmFsdWUpOyAvLyB0aHJvdyAodG8gaGVscCBjYWxsZXJzIGZpbmQgdHJvdWJsZXNob290aW5nIGNvbW1lbnRzKVxuICAgIH1cbiAgfVxufVxuXG52YXIgUkVBQ1RfQ0xJRU5UX1JFRkVSRU5DRSQxID0gU3ltYm9sLmZvcigncmVhY3QuY2xpZW50LnJlZmVyZW5jZScpO1xuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpIHtcbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgdHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiB0cnVlO1xuICB9IC8vIE5vdGU6IHR5cGVvZiBtaWdodCBiZSBvdGhlciB0aGFuICdzeW1ib2wnIG9yICdudW1iZXInIChlLmcuIGlmIGl0J3MgYSBwb2x5ZmlsbCkuXG5cblxuICBpZiAodHlwZSA9PT0gUkVBQ1RfRlJBR01FTlRfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9QUk9GSUxFUl9UWVBFIHx8IGVuYWJsZURlYnVnVHJhY2luZyAgfHwgdHlwZSA9PT0gUkVBQ1RfU1RSSUNUX01PREVfVFlQRSB8fCB0eXBlID09PSBSRUFDVF9TVVNQRU5TRV9UWVBFIHx8IHR5cGUgPT09IFJFQUNUX1NVU1BFTlNFX0xJU1RfVFlQRSB8fCBlbmFibGVMZWdhY3lIaWRkZW4gIHx8IHR5cGUgPT09IFJFQUNUX09GRlNDUkVFTl9UWVBFIHx8IGVuYWJsZVNjb3BlQVBJICB8fCBlbmFibGVDYWNoZUVsZW1lbnQgIHx8IGVuYWJsZVRyYW5zaXRpb25UcmFjaW5nICkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0JyAmJiB0eXBlICE9PSBudWxsKSB7XG4gICAgaWYgKHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0xBWllfVFlQRSB8fCB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9NRU1PX1RZUEUgfHwgdHlwZS4kJHR5cGVvZiA9PT0gUkVBQ1RfQ09OVEVYVF9UWVBFIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX1BST1ZJREVSX1RZUEUgfHwgZW5hYmxlUmVuZGVyYWJsZUNvbnRleHQgIHx8IHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0ZPUldBUkRfUkVGX1RZUEUgfHwgLy8gVGhpcyBuZWVkcyB0byBpbmNsdWRlIGFsbCBwb3NzaWJsZSBtb2R1bGUgcmVmZXJlbmNlIG9iamVjdFxuICAgIC8vIHR5cGVzIHN1cHBvcnRlZCBieSBhbnkgRmxpZ2h0IGNvbmZpZ3VyYXRpb24gYW55d2hlcmUgc2luY2VcbiAgICAvLyB3ZSBkb24ndCBrbm93IHdoaWNoIEZsaWdodCBidWlsZCB0aGlzIHdpbGwgZW5kIHVwIGJlaW5nIHVzZWRcbiAgICAvLyB3aXRoLlxuICAgIHR5cGUuJCR0eXBlb2YgPT09IFJFQUNUX0NMSUVOVF9SRUZFUkVOQ0UkMSB8fCB0eXBlLmdldE1vZHVsZUlkICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn1cblxudmFyIGlzQXJyYXlJbXBsID0gQXJyYXkuaXNBcnJheTsgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlZGVjbGFyZVxuXG5mdW5jdGlvbiBpc0FycmF5KGEpIHtcbiAgcmV0dXJuIGlzQXJyYXlJbXBsKGEpO1xufVxuXG4vLyBIZWxwZXJzIHRvIHBhdGNoIGNvbnNvbGUubG9ncyB0byBhdm9pZCBsb2dnaW5nIGR1cmluZyBzaWRlLWVmZmVjdCBmcmVlXG4vLyByZXBsYXlpbmcgb24gcmVuZGVyIGZ1bmN0aW9uLiBUaGlzIGN1cnJlbnRseSBvbmx5IHBhdGNoZXMgdGhlIG9iamVjdFxuLy8gbGF6aWx5IHdoaWNoIHdvbid0IGNvdmVyIGlmIHRoZSBsb2cgZnVuY3Rpb24gd2FzIGV4dHJhY3RlZCBlYWdlcmx5LlxuLy8gV2UgY291bGQgYWxzbyBlYWdlcmx5IHBhdGNoIHRoZSBtZXRob2QuXG52YXIgZGlzYWJsZWREZXB0aCA9IDA7XG52YXIgcHJldkxvZztcbnZhciBwcmV2SW5mbztcbnZhciBwcmV2V2FybjtcbnZhciBwcmV2RXJyb3I7XG52YXIgcHJldkdyb3VwO1xudmFyIHByZXZHcm91cENvbGxhcHNlZDtcbnZhciBwcmV2R3JvdXBFbmQ7XG5cbmZ1bmN0aW9uIGRpc2FibGVkTG9nKCkge31cblxuZGlzYWJsZWRMb2cuX19yZWFjdERpc2FibGVkTG9nID0gdHJ1ZTtcbmZ1bmN0aW9uIGRpc2FibGVMb2dzKCkge1xuICB7XG4gICAgaWYgKGRpc2FibGVkRGVwdGggPT09IDApIHtcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgICAgcHJldkxvZyA9IGNvbnNvbGUubG9nO1xuICAgICAgcHJldkluZm8gPSBjb25zb2xlLmluZm87XG4gICAgICBwcmV2V2FybiA9IGNvbnNvbGUud2FybjtcbiAgICAgIHByZXZFcnJvciA9IGNvbnNvbGUuZXJyb3I7XG4gICAgICBwcmV2R3JvdXAgPSBjb25zb2xlLmdyb3VwO1xuICAgICAgcHJldkdyb3VwQ29sbGFwc2VkID0gY29uc29sZS5ncm91cENvbGxhcHNlZDtcbiAgICAgIHByZXZHcm91cEVuZCA9IGNvbnNvbGUuZ3JvdXBFbmQ7IC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC9pc3N1ZXMvMTkwOTlcblxuICAgICAgdmFyIHByb3BzID0ge1xuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHZhbHVlOiBkaXNhYmxlZExvZyxcbiAgICAgICAgd3JpdGFibGU6IHRydWVcbiAgICAgIH07IC8vICRGbG93Rml4TWVbY2Fubm90LXdyaXRlXSBGbG93IHRoaW5rcyBjb25zb2xlIGlzIGltbXV0YWJsZS5cblxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoY29uc29sZSwge1xuICAgICAgICBpbmZvOiBwcm9wcyxcbiAgICAgICAgbG9nOiBwcm9wcyxcbiAgICAgICAgd2FybjogcHJvcHMsXG4gICAgICAgIGVycm9yOiBwcm9wcyxcbiAgICAgICAgZ3JvdXA6IHByb3BzLFxuICAgICAgICBncm91cENvbGxhcHNlZDogcHJvcHMsXG4gICAgICAgIGdyb3VwRW5kOiBwcm9wc1xuICAgICAgfSk7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgIH1cblxuICAgIGRpc2FibGVkRGVwdGgrKztcbiAgfVxufVxuZnVuY3Rpb24gcmVlbmFibGVMb2dzKCkge1xuICB7XG4gICAgZGlzYWJsZWREZXB0aC0tO1xuXG4gICAgaWYgKGRpc2FibGVkRGVwdGggPT09IDApIHtcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgICAgdmFyIHByb3BzID0ge1xuICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgIHdyaXRhYmxlOiB0cnVlXG4gICAgICB9OyAvLyAkRmxvd0ZpeE1lW2Nhbm5vdC13cml0ZV0gRmxvdyB0aGlua3MgY29uc29sZSBpcyBpbW11dGFibGUuXG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKGNvbnNvbGUsIHtcbiAgICAgICAgbG9nOiBhc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZMb2dcbiAgICAgICAgfSksXG4gICAgICAgIGluZm86IGFzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkluZm9cbiAgICAgICAgfSksXG4gICAgICAgIHdhcm46IGFzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldldhcm5cbiAgICAgICAgfSksXG4gICAgICAgIGVycm9yOiBhc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZFcnJvclxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXA6IGFzc2lnbih7fSwgcHJvcHMsIHtcbiAgICAgICAgICB2YWx1ZTogcHJldkdyb3VwXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cENvbGxhcHNlZDogYXNzaWduKHt9LCBwcm9wcywge1xuICAgICAgICAgIHZhbHVlOiBwcmV2R3JvdXBDb2xsYXBzZWRcbiAgICAgICAgfSksXG4gICAgICAgIGdyb3VwRW5kOiBhc3NpZ24oe30sIHByb3BzLCB7XG4gICAgICAgICAgdmFsdWU6IHByZXZHcm91cEVuZFxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICAvKiBlc2xpbnQtZW5hYmxlIHJlYWN0LWludGVybmFsL25vLXByb2R1Y3Rpb24tbG9nZ2luZyAqL1xuICAgIH1cblxuICAgIGlmIChkaXNhYmxlZERlcHRoIDwgMCkge1xuICAgICAgZXJyb3IoJ2Rpc2FibGVkRGVwdGggZmVsbCBiZWxvdyB6ZXJvLiAnICsgJ1RoaXMgaXMgYSBidWcgaW4gUmVhY3QuIFBsZWFzZSBmaWxlIGFuIGlzc3VlLicpO1xuICAgIH1cbiAgfVxufVxuXG52YXIgUmVhY3RDdXJyZW50RGlzcGF0Y2hlciA9IFJlYWN0U2hhcmVkSW50ZXJuYWxzLlJlYWN0Q3VycmVudERpc3BhdGNoZXI7XG52YXIgcHJlZml4O1xuZnVuY3Rpb24gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUobmFtZSwgb3duZXJGbikge1xuICB7XG4gICAgaWYgKHByZWZpeCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBFeHRyYWN0IHRoZSBWTSBzcGVjaWZpYyBwcmVmaXggdXNlZCBieSBlYWNoIGxpbmUuXG4gICAgICB0cnkge1xuICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICB2YXIgbWF0Y2ggPSB4LnN0YWNrLnRyaW0oKS5tYXRjaCgvXFxuKCAqKGF0ICk/KS8pO1xuICAgICAgICBwcmVmaXggPSBtYXRjaCAmJiBtYXRjaFsxXSB8fCAnJztcbiAgICAgIH1cbiAgICB9IC8vIFdlIHVzZSB0aGUgcHJlZml4IHRvIGVuc3VyZSBvdXIgc3RhY2tzIGxpbmUgdXAgd2l0aCBuYXRpdmUgc3RhY2sgZnJhbWVzLlxuXG5cbiAgICByZXR1cm4gJ1xcbicgKyBwcmVmaXggKyBuYW1lO1xuICB9XG59XG52YXIgcmVlbnRyeSA9IGZhbHNlO1xudmFyIGNvbXBvbmVudEZyYW1lQ2FjaGU7XG5cbntcbiAgdmFyIFBvc3NpYmx5V2Vha01hcCA9IHR5cGVvZiBXZWFrTWFwID09PSAnZnVuY3Rpb24nID8gV2Vha01hcCA6IE1hcDtcbiAgY29tcG9uZW50RnJhbWVDYWNoZSA9IG5ldyBQb3NzaWJseVdlYWtNYXAoKTtcbn1cbi8qKlxuICogTGV2ZXJhZ2VzIG5hdGl2ZSBicm93c2VyL1ZNIHN0YWNrIGZyYW1lcyB0byBnZXQgcHJvcGVyIGRldGFpbHMgKGUuZy5cbiAqIGZpbGVuYW1lLCBsaW5lICsgY29sIG51bWJlcikgZm9yIGEgc2luZ2xlIGNvbXBvbmVudCBpbiBhIGNvbXBvbmVudCBzdGFjay4gV2VcbiAqIGRvIHRoaXMgYnk6XG4gKiAgICgxKSB0aHJvd2luZyBhbmQgY2F0Y2hpbmcgYW4gZXJyb3IgaW4gdGhlIGZ1bmN0aW9uIC0gdGhpcyB3aWxsIGJlIG91clxuICogICAgICAgY29udHJvbCBlcnJvci5cbiAqICAgKDIpIGNhbGxpbmcgdGhlIGNvbXBvbmVudCB3aGljaCB3aWxsIGV2ZW50dWFsbHkgdGhyb3cgYW4gZXJyb3IgdGhhdCB3ZSdsbFxuICogICAgICAgY2F0Y2ggLSB0aGlzIHdpbGwgYmUgb3VyIHNhbXBsZSBlcnJvci5cbiAqICAgKDMpIGRpZmZpbmcgdGhlIGNvbnRyb2wgYW5kIHNhbXBsZSBlcnJvciBzdGFja3MgdG8gZmluZCB0aGUgc3RhY2sgZnJhbWVcbiAqICAgICAgIHdoaWNoIHJlcHJlc2VudHMgb3VyIGNvbXBvbmVudC5cbiAqL1xuXG5cbmZ1bmN0aW9uIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGNvbnN0cnVjdCkge1xuICAvLyBJZiBzb21ldGhpbmcgYXNrZWQgZm9yIGEgc3RhY2sgaW5zaWRlIGEgZmFrZSByZW5kZXIsIGl0IHNob3VsZCBnZXQgaWdub3JlZC5cbiAgaWYgKCFmbiB8fCByZWVudHJ5KSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAge1xuICAgIHZhciBmcmFtZSA9IGNvbXBvbmVudEZyYW1lQ2FjaGUuZ2V0KGZuKTtcblxuICAgIGlmIChmcmFtZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZnJhbWU7XG4gICAgfVxuICB9XG5cbiAgcmVlbnRyeSA9IHRydWU7XG4gIHZhciBwcmV2aW91c1ByZXBhcmVTdGFja1RyYWNlID0gRXJyb3IucHJlcGFyZVN0YWNrVHJhY2U7IC8vICRGbG93Rml4TWVbaW5jb21wYXRpYmxlLXR5cGVdIEl0IGRvZXMgYWNjZXB0IHVuZGVmaW5lZC5cblxuICBFcnJvci5wcmVwYXJlU3RhY2tUcmFjZSA9IHVuZGVmaW5lZDtcbiAgdmFyIHByZXZpb3VzRGlzcGF0Y2hlcjtcblxuICB7XG4gICAgcHJldmlvdXNEaXNwYXRjaGVyID0gUmVhY3RDdXJyZW50RGlzcGF0Y2hlci5jdXJyZW50OyAvLyBTZXQgdGhlIGRpc3BhdGNoZXIgaW4gREVWIGJlY2F1c2UgdGhpcyBtaWdodCBiZSBjYWxsIGluIHRoZSByZW5kZXIgZnVuY3Rpb25cbiAgICAvLyBmb3Igd2FybmluZ3MuXG5cbiAgICBSZWFjdEN1cnJlbnREaXNwYXRjaGVyLmN1cnJlbnQgPSBudWxsO1xuICAgIGRpc2FibGVMb2dzKCk7XG4gIH1cbiAgLyoqXG4gICAqIEZpbmRpbmcgYSBjb21tb24gc3RhY2sgZnJhbWUgYmV0d2VlbiBzYW1wbGUgYW5kIGNvbnRyb2wgZXJyb3JzIGNhbiBiZVxuICAgKiB0cmlja3kgZ2l2ZW4gdGhlIGRpZmZlcmVudCB0eXBlcyBhbmQgbGV2ZWxzIG9mIHN0YWNrIHRyYWNlIHRydW5jYXRpb24gZnJvbVxuICAgKiBkaWZmZXJlbnQgSlMgVk1zLiBTbyBpbnN0ZWFkIHdlJ2xsIGF0dGVtcHQgdG8gY29udHJvbCB3aGF0IHRoYXQgY29tbW9uXG4gICAqIGZyYW1lIHNob3VsZCBiZSB0aHJvdWdoIHRoaXMgb2JqZWN0IG1ldGhvZDpcbiAgICogSGF2aW5nIGJvdGggdGhlIHNhbXBsZSBhbmQgY29udHJvbCBlcnJvcnMgYmUgaW4gdGhlIGZ1bmN0aW9uIHVuZGVyIHRoZVxuICAgKiBgRGVzY3JpYmVOYXRpdmVDb21wb25lbnRGcmFtZVJvb3RgIHByb3BlcnR5LCArIHNldHRpbmcgdGhlIGBuYW1lYCBhbmRcbiAgICogYGRpc3BsYXlOYW1lYCBwcm9wZXJ0aWVzIG9mIHRoZSBmdW5jdGlvbiBlbnN1cmVzIHRoYXQgYSBzdGFja1xuICAgKiBmcmFtZSBleGlzdHMgdGhhdCBoYXMgdGhlIG1ldGhvZCBuYW1lIGBEZXNjcmliZU5hdGl2ZUNvbXBvbmVudEZyYW1lUm9vdGAgaW5cbiAgICogaXQgZm9yIGJvdGggY29udHJvbCBhbmQgc2FtcGxlIHN0YWNrcy5cbiAgICovXG5cblxuICB2YXIgUnVuSW5Sb290RnJhbWUgPSB7XG4gICAgRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290OiBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgY29udHJvbDtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gVGhpcyBzaG91bGQgdGhyb3cuXG4gICAgICAgIGlmIChjb25zdHJ1Y3QpIHtcbiAgICAgICAgICAvLyBTb21ldGhpbmcgc2hvdWxkIGJlIHNldHRpbmcgdGhlIHByb3BzIGluIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICAgICAgICB2YXIgRmFrZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICAgICAgfTsgLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddXG5cblxuICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShGYWtlLnByb3RvdHlwZSwgJ3Byb3BzJywge1xuICAgICAgICAgICAgc2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgIC8vIFdlIHVzZSBhIHRocm93aW5nIHNldHRlciBpbnN0ZWFkIG9mIGZyb3plbiBvciBub24td3JpdGFibGUgcHJvcHNcbiAgICAgICAgICAgICAgLy8gYmVjYXVzZSB0aGF0IHdvbid0IHRocm93IGluIGEgbm9uLXN0cmljdCBtb2RlIGZ1bmN0aW9uLlxuICAgICAgICAgICAgICB0aHJvdyBFcnJvcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSAnb2JqZWN0JyAmJiBSZWZsZWN0LmNvbnN0cnVjdCkge1xuICAgICAgICAgICAgLy8gV2UgY29uc3RydWN0IGEgZGlmZmVyZW50IGNvbnRyb2wgZm9yIHRoaXMgY2FzZSB0byBpbmNsdWRlIGFueSBleHRyYVxuICAgICAgICAgICAgLy8gZnJhbWVzIGFkZGVkIGJ5IHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIFJlZmxlY3QuY29uc3RydWN0KEZha2UsIFtdKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFJlZmxlY3QuY29uc3RydWN0KGZuLCBbXSwgRmFrZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIEZha2UuY2FsbCgpO1xuICAgICAgICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICAgICAgICBjb250cm9sID0geDtcbiAgICAgICAgICAgIH0gLy8gJEZsb3dGaXhNZVtwcm9wLW1pc3NpbmddIGZvdW5kIHdoZW4gdXBncmFkaW5nIEZsb3dcblxuXG4gICAgICAgICAgICBmbi5jYWxsKEZha2UucHJvdG90eXBlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCk7XG4gICAgICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICAgICAgY29udHJvbCA9IHg7XG4gICAgICAgICAgfSAvLyBUT0RPKGx1bmEpOiBUaGlzIHdpbGwgY3VycmVudGx5IG9ubHkgdGhyb3cgaWYgdGhlIGZ1bmN0aW9uIGNvbXBvbmVudFxuICAgICAgICAgIC8vIHRyaWVzIHRvIGFjY2VzcyBSZWFjdC9SZWFjdERPTS9wcm9wcy4gV2Ugc2hvdWxkIHByb2JhYmx5IG1ha2UgdGhpcyB0aHJvd1xuICAgICAgICAgIC8vIGluIHNpbXBsZSBjb21wb25lbnRzIHRvb1xuXG5cbiAgICAgICAgICB2YXIgbWF5YmVQcm9taXNlID0gZm4oKTsgLy8gSWYgdGhlIGZ1bmN0aW9uIGNvbXBvbmVudCByZXR1cm5zIGEgcHJvbWlzZSwgaXQncyBsaWtlbHkgYW4gYXN5bmNcbiAgICAgICAgICAvLyBjb21wb25lbnQsIHdoaWNoIHdlIGRvbid0IHlldCBzdXBwb3J0LiBBdHRhY2ggYSBub29wIGNhdGNoIGhhbmRsZXIgdG9cbiAgICAgICAgICAvLyBzaWxlbmNlIHRoZSBlcnJvci5cbiAgICAgICAgICAvLyBUT0RPOiBJbXBsZW1lbnQgY29tcG9uZW50IHN0YWNrcyBmb3IgYXN5bmMgY2xpZW50IGNvbXBvbmVudHM/XG5cbiAgICAgICAgICBpZiAobWF5YmVQcm9taXNlICYmIHR5cGVvZiBtYXliZVByb21pc2UuY2F0Y2ggPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIG1heWJlUHJvbWlzZS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChzYW1wbGUpIHtcbiAgICAgICAgLy8gVGhpcyBpcyBpbmxpbmVkIG1hbnVhbGx5IGJlY2F1c2UgY2xvc3VyZSBkb2Vzbid0IGRvIGl0IGZvciB1cy5cbiAgICAgICAgaWYgKHNhbXBsZSAmJiBjb250cm9sICYmIHR5cGVvZiBzYW1wbGUuc3RhY2sgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgcmV0dXJuIFtzYW1wbGUuc3RhY2ssIGNvbnRyb2wuc3RhY2tdO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBbbnVsbCwgbnVsbF07XG4gICAgfVxuICB9OyAvLyAkRmxvd0ZpeE1lW3Byb3AtbWlzc2luZ11cblxuICBSdW5JblJvb3RGcmFtZS5EZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QuZGlzcGxheU5hbWUgPSAnRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290JztcbiAgdmFyIG5hbWVQcm9wRGVzY3JpcHRvciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoUnVuSW5Sb290RnJhbWUuRGV0ZXJtaW5lQ29tcG9uZW50RnJhbWVSb290LCAnbmFtZScpOyAvLyBCZWZvcmUgRVM2LCB0aGUgYG5hbWVgIHByb3BlcnR5IHdhcyBub3QgY29uZmlndXJhYmxlLlxuXG4gIGlmIChuYW1lUHJvcERlc2NyaXB0b3IgJiYgbmFtZVByb3BEZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSkge1xuICAgIC8vIFY4IHV0aWxpemVzIGEgZnVuY3Rpb24ncyBgbmFtZWAgcHJvcGVydHkgd2hlbiBnZW5lcmF0aW5nIGEgc3RhY2sgdHJhY2UuXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFJ1bkluUm9vdEZyYW1lLkRldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdCwgLy8gQ29uZmlndXJhYmxlIHByb3BlcnRpZXMgY2FuIGJlIHVwZGF0ZWQgZXZlbiBpZiBpdHMgd3JpdGFibGUgZGVzY3JpcHRvclxuICAgIC8vIGlzIHNldCB0byBgZmFsc2VgLlxuICAgIC8vICRGbG93Rml4TWVbY2Fubm90LXdyaXRlXVxuICAgICduYW1lJywge1xuICAgICAgdmFsdWU6ICdEZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QnXG4gICAgfSk7XG4gIH1cblxuICB0cnkge1xuICAgIHZhciBfUnVuSW5Sb290RnJhbWUkRGV0ZXIgPSBSdW5JblJvb3RGcmFtZS5EZXRlcm1pbmVDb21wb25lbnRGcmFtZVJvb3QoKSxcbiAgICAgICAgc2FtcGxlU3RhY2sgPSBfUnVuSW5Sb290RnJhbWUkRGV0ZXJbMF0sXG4gICAgICAgIGNvbnRyb2xTdGFjayA9IF9SdW5JblJvb3RGcmFtZSREZXRlclsxXTtcblxuICAgIGlmIChzYW1wbGVTdGFjayAmJiBjb250cm9sU3RhY2spIHtcbiAgICAgIC8vIFRoaXMgZXh0cmFjdHMgdGhlIGZpcnN0IGZyYW1lIGZyb20gdGhlIHNhbXBsZSB0aGF0IGlzbid0IGFsc28gaW4gdGhlIGNvbnRyb2wuXG4gICAgICAvLyBTa2lwcGluZyBvbmUgZnJhbWUgdGhhdCB3ZSBhc3N1bWUgaXMgdGhlIGZyYW1lIHRoYXQgY2FsbHMgdGhlIHR3by5cbiAgICAgIHZhciBzYW1wbGVMaW5lcyA9IHNhbXBsZVN0YWNrLnNwbGl0KCdcXG4nKTtcbiAgICAgIHZhciBjb250cm9sTGluZXMgPSBjb250cm9sU3RhY2suc3BsaXQoJ1xcbicpO1xuICAgICAgdmFyIHMgPSAwO1xuICAgICAgdmFyIGMgPSAwO1xuXG4gICAgICB3aGlsZSAocyA8IHNhbXBsZUxpbmVzLmxlbmd0aCAmJiAhc2FtcGxlTGluZXNbc10uaW5jbHVkZXMoJ0RldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdCcpKSB7XG4gICAgICAgIHMrKztcbiAgICAgIH1cblxuICAgICAgd2hpbGUgKGMgPCBjb250cm9sTGluZXMubGVuZ3RoICYmICFjb250cm9sTGluZXNbY10uaW5jbHVkZXMoJ0RldGVybWluZUNvbXBvbmVudEZyYW1lUm9vdCcpKSB7XG4gICAgICAgIGMrKztcbiAgICAgIH0gLy8gV2UgY291bGRuJ3QgZmluZCBvdXIgaW50ZW50aW9uYWxseSBpbmplY3RlZCBjb21tb24gcm9vdCBmcmFtZSwgYXR0ZW1wdFxuICAgICAgLy8gdG8gZmluZCBhbm90aGVyIGNvbW1vbiByb290IGZyYW1lIGJ5IHNlYXJjaCBmcm9tIHRoZSBib3R0b20gb2YgdGhlXG4gICAgICAvLyBjb250cm9sIHN0YWNrLi4uXG5cblxuICAgICAgaWYgKHMgPT09IHNhbXBsZUxpbmVzLmxlbmd0aCB8fCBjID09PSBjb250cm9sTGluZXMubGVuZ3RoKSB7XG4gICAgICAgIHMgPSBzYW1wbGVMaW5lcy5sZW5ndGggLSAxO1xuICAgICAgICBjID0gY29udHJvbExpbmVzLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgd2hpbGUgKHMgPj0gMSAmJiBjID49IDAgJiYgc2FtcGxlTGluZXNbc10gIT09IGNvbnRyb2xMaW5lc1tjXSkge1xuICAgICAgICAgIC8vIFdlIGV4cGVjdCBhdCBsZWFzdCBvbmUgc3RhY2sgZnJhbWUgdG8gYmUgc2hhcmVkLlxuICAgICAgICAgIC8vIFR5cGljYWxseSB0aGlzIHdpbGwgYmUgdGhlIHJvb3QgbW9zdCBvbmUuIEhvd2V2ZXIsIHN0YWNrIGZyYW1lcyBtYXkgYmVcbiAgICAgICAgICAvLyBjdXQgb2ZmIGR1ZSB0byBtYXhpbXVtIHN0YWNrIGxpbWl0cy4gSW4gdGhpcyBjYXNlLCBvbmUgbWF5YmUgY3V0IG9mZlxuICAgICAgICAgIC8vIGVhcmxpZXIgdGhhbiB0aGUgb3RoZXIuIFdlIGFzc3VtZSB0aGF0IHRoZSBzYW1wbGUgaXMgbG9uZ2VyIG9yIHRoZSBzYW1lXG4gICAgICAgICAgLy8gYW5kIHRoZXJlIGZvciBjdXQgb2ZmIGVhcmxpZXIuIFNvIHdlIHNob3VsZCBmaW5kIHRoZSByb290IG1vc3QgZnJhbWUgaW5cbiAgICAgICAgICAvLyB0aGUgc2FtcGxlIHNvbWV3aGVyZSBpbiB0aGUgY29udHJvbC5cbiAgICAgICAgICBjLS07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZm9yICg7IHMgPj0gMSAmJiBjID49IDA7IHMtLSwgYy0tKSB7XG4gICAgICAgIC8vIE5leHQgd2UgZmluZCB0aGUgZmlyc3Qgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgd2hpY2ggc2hvdWxkIGJlIHRoZVxuICAgICAgICAvLyBmcmFtZSB0aGF0IGNhbGxlZCBvdXIgc2FtcGxlIGZ1bmN0aW9uIGFuZCB0aGUgY29udHJvbC5cbiAgICAgICAgaWYgKHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAvLyBJbiBWOCwgdGhlIGZpcnN0IGxpbmUgaXMgZGVzY3JpYmluZyB0aGUgbWVzc2FnZSBidXQgb3RoZXIgVk1zIGRvbid0LlxuICAgICAgICAgIC8vIElmIHdlJ3JlIGFib3V0IHRvIHJldHVybiB0aGUgZmlyc3QgbGluZSwgYW5kIHRoZSBjb250cm9sIGlzIGFsc28gb24gdGhlIHNhbWVcbiAgICAgICAgICAvLyBsaW5lLCB0aGF0J3MgYSBwcmV0dHkgZ29vZCBpbmRpY2F0b3IgdGhhdCBvdXIgc2FtcGxlIHRocmV3IGF0IHNhbWUgbGluZSBhc1xuICAgICAgICAgIC8vIHRoZSBjb250cm9sLiBJLmUuIGJlZm9yZSB3ZSBlbnRlcmVkIHRoZSBzYW1wbGUgZnJhbWUuIFNvIHdlIGlnbm9yZSB0aGlzIHJlc3VsdC5cbiAgICAgICAgICAvLyBUaGlzIGNhbiBoYXBwZW4gaWYgeW91IHBhc3NlZCBhIGNsYXNzIHRvIGZ1bmN0aW9uIGNvbXBvbmVudCwgb3Igbm9uLWZ1bmN0aW9uLlxuICAgICAgICAgIGlmIChzICE9PSAxIHx8IGMgIT09IDEpIHtcbiAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgcy0tO1xuICAgICAgICAgICAgICBjLS07IC8vIFdlIG1heSBzdGlsbCBoYXZlIHNpbWlsYXIgaW50ZXJtZWRpYXRlIGZyYW1lcyBmcm9tIHRoZSBjb25zdHJ1Y3QgY2FsbC5cbiAgICAgICAgICAgICAgLy8gVGhlIG5leHQgb25lIHRoYXQgaXNuJ3QgdGhlIHNhbWUgc2hvdWxkIGJlIG91ciBtYXRjaCB0aG91Z2guXG5cbiAgICAgICAgICAgICAgaWYgKGMgPCAwIHx8IHNhbXBsZUxpbmVzW3NdICE9PSBjb250cm9sTGluZXNbY10pIHtcbiAgICAgICAgICAgICAgICAvLyBWOCBhZGRzIGEgXCJuZXdcIiBwcmVmaXggZm9yIG5hdGl2ZSBjbGFzc2VzLiBMZXQncyByZW1vdmUgaXQgdG8gbWFrZSBpdCBwcmV0dGllci5cbiAgICAgICAgICAgICAgICB2YXIgX2ZyYW1lID0gJ1xcbicgKyBzYW1wbGVMaW5lc1tzXS5yZXBsYWNlKCcgYXQgbmV3ICcsICcgYXQgJyk7IC8vIElmIG91ciBjb21wb25lbnQgZnJhbWUgaXMgbGFiZWxlZCBcIjxhbm9ueW1vdXM+XCJcbiAgICAgICAgICAgICAgICAvLyBidXQgd2UgaGF2ZSBhIHVzZXItcHJvdmlkZWQgXCJkaXNwbGF5TmFtZVwiXG4gICAgICAgICAgICAgICAgLy8gc3BsaWNlIGl0IGluIHRvIG1ha2UgdGhlIHN0YWNrIG1vcmUgcmVhZGFibGUuXG5cblxuICAgICAgICAgICAgICAgIGlmIChmbi5kaXNwbGF5TmFtZSAmJiBfZnJhbWUuaW5jbHVkZXMoJzxhbm9ueW1vdXM+JykpIHtcbiAgICAgICAgICAgICAgICAgIF9mcmFtZSA9IF9mcmFtZS5yZXBsYWNlKCc8YW5vbnltb3VzPicsIGZuLmRpc3BsYXlOYW1lKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAodHJ1ZSkge1xuICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRGcmFtZUNhY2hlLnNldChmbiwgX2ZyYW1lKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IC8vIFJldHVybiB0aGUgbGluZSB3ZSBmb3VuZC5cblxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIF9mcmFtZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSB3aGlsZSAocyA+PSAxICYmIGMgPj0gMCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gZmluYWxseSB7XG4gICAgcmVlbnRyeSA9IGZhbHNlO1xuXG4gICAge1xuICAgICAgUmVhY3RDdXJyZW50RGlzcGF0Y2hlci5jdXJyZW50ID0gcHJldmlvdXNEaXNwYXRjaGVyO1xuICAgICAgcmVlbmFibGVMb2dzKCk7XG4gICAgfVxuXG4gICAgRXJyb3IucHJlcGFyZVN0YWNrVHJhY2UgPSBwcmV2aW91c1ByZXBhcmVTdGFja1RyYWNlO1xuICB9IC8vIEZhbGxiYWNrIHRvIGp1c3QgdXNpbmcgdGhlIG5hbWUgaWYgd2UgY291bGRuJ3QgbWFrZSBpdCB0aHJvdy5cblxuXG4gIHZhciBuYW1lID0gZm4gPyBmbi5kaXNwbGF5TmFtZSB8fCBmbi5uYW1lIDogJyc7XG4gIHZhciBzeW50aGV0aWNGcmFtZSA9IG5hbWUgPyBkZXNjcmliZUJ1aWx0SW5Db21wb25lbnRGcmFtZShuYW1lKSA6ICcnO1xuXG4gIHtcbiAgICBpZiAodHlwZW9mIGZuID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb21wb25lbnRGcmFtZUNhY2hlLnNldChmbiwgc3ludGhldGljRnJhbWUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzeW50aGV0aWNGcmFtZTtcbn1cbmZ1bmN0aW9uIGRlc2NyaWJlRnVuY3Rpb25Db21wb25lbnRGcmFtZShmbiwgb3duZXJGbikge1xuICB7XG4gICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUoZm4sIGZhbHNlKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzaG91bGRDb25zdHJ1Y3QoQ29tcG9uZW50KSB7XG4gIHZhciBwcm90b3R5cGUgPSBDb21wb25lbnQucHJvdG90eXBlO1xuICByZXR1cm4gISEocHJvdG90eXBlICYmIHByb3RvdHlwZS5pc1JlYWN0Q29tcG9uZW50KTtcbn1cblxuZnVuY3Rpb24gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKHR5cGUsIG93bmVyRm4pIHtcblxuICBpZiAodHlwZSA9PSBudWxsKSB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nKSB7XG4gICAge1xuICAgICAgcmV0dXJuIGRlc2NyaWJlTmF0aXZlQ29tcG9uZW50RnJhbWUodHlwZSwgc2hvdWxkQ29uc3RydWN0KHR5cGUpKTtcbiAgICB9XG4gIH1cblxuICBpZiAodHlwZW9mIHR5cGUgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKHR5cGUpO1xuICB9XG5cbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9UWVBFOlxuICAgICAgcmV0dXJuIGRlc2NyaWJlQnVpbHRJbkNvbXBvbmVudEZyYW1lKCdTdXNwZW5zZScpO1xuXG4gICAgY2FzZSBSRUFDVF9TVVNQRU5TRV9MSVNUX1RZUEU6XG4gICAgICByZXR1cm4gZGVzY3JpYmVCdWlsdEluQ29tcG9uZW50RnJhbWUoJ1N1c3BlbnNlTGlzdCcpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB0eXBlID09PSAnb2JqZWN0Jykge1xuICAgIHN3aXRjaCAodHlwZS4kJHR5cGVvZikge1xuICAgICAgY2FzZSBSRUFDVF9GT1JXQVJEX1JFRl9UWVBFOlxuICAgICAgICByZXR1cm4gZGVzY3JpYmVGdW5jdGlvbkNvbXBvbmVudEZyYW1lKHR5cGUucmVuZGVyKTtcblxuICAgICAgY2FzZSBSRUFDVF9NRU1PX1RZUEU6XG4gICAgICAgIC8vIE1lbW8gbWF5IGNvbnRhaW4gYW55IGNvbXBvbmVudCB0eXBlIHNvIHdlIHJlY3Vyc2l2ZWx5IHJlc29sdmUgaXQuXG4gICAgICAgIHJldHVybiBkZXNjcmliZVVua25vd25FbGVtZW50VHlwZUZyYW1lSW5ERVYodHlwZS50eXBlLCBvd25lckZuKTtcblxuICAgICAgY2FzZSBSRUFDVF9MQVpZX1RZUEU6XG4gICAgICAgIHtcbiAgICAgICAgICB2YXIgbGF6eUNvbXBvbmVudCA9IHR5cGU7XG4gICAgICAgICAgdmFyIHBheWxvYWQgPSBsYXp5Q29tcG9uZW50Ll9wYXlsb2FkO1xuICAgICAgICAgIHZhciBpbml0ID0gbGF6eUNvbXBvbmVudC5faW5pdDtcblxuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBMYXp5IG1heSBjb250YWluIGFueSBjb21wb25lbnQgdHlwZSBzbyB3ZSByZWN1cnNpdmVseSByZXNvbHZlIGl0LlxuICAgICAgICAgICAgcmV0dXJuIGRlc2NyaWJlVW5rbm93bkVsZW1lbnRUeXBlRnJhbWVJbkRFVihpbml0KHBheWxvYWQpLCBvd25lckZuKTtcbiAgICAgICAgICB9IGNhdGNoICh4KSB7fVxuICAgICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuICcnO1xufVxuXG52YXIgUmVhY3RDdXJyZW50T3duZXIgPSBSZWFjdFNoYXJlZEludGVybmFscy5SZWFjdEN1cnJlbnRPd25lcjtcbnZhciBSZWFjdERlYnVnQ3VycmVudEZyYW1lID0gUmVhY3RTaGFyZWRJbnRlcm5hbHMuUmVhY3REZWJ1Z0N1cnJlbnRGcmFtZTtcbnZhciBSRUFDVF9DTElFTlRfUkVGRVJFTkNFID0gU3ltYm9sLmZvcigncmVhY3QuY2xpZW50LnJlZmVyZW5jZScpO1xudmFyIHNwZWNpYWxQcm9wS2V5V2FybmluZ1Nob3duO1xudmFyIHNwZWNpYWxQcm9wUmVmV2FybmluZ1Nob3duO1xudmFyIGRpZFdhcm5BYm91dFN0cmluZ1JlZnM7XG5cbntcbiAgZGlkV2FybkFib3V0U3RyaW5nUmVmcyA9IHt9O1xufVxuXG5mdW5jdGlvbiBoYXNWYWxpZFJlZihjb25maWcpIHtcbiAge1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgJ3JlZicpKSB7XG4gICAgICB2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihjb25maWcsICdyZWYnKS5nZXQ7XG5cbiAgICAgIGlmIChnZXR0ZXIgJiYgZ2V0dGVyLmlzUmVhY3RXYXJuaW5nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uZmlnLnJlZiAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBoYXNWYWxpZEtleShjb25maWcpIHtcbiAge1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgJ2tleScpKSB7XG4gICAgICB2YXIgZ2V0dGVyID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihjb25maWcsICdrZXknKS5nZXQ7XG5cbiAgICAgIGlmIChnZXR0ZXIgJiYgZ2V0dGVyLmlzUmVhY3RXYXJuaW5nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY29uZmlnLmtleSAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiB3YXJuSWZTdHJpbmdSZWZDYW5ub3RCZUF1dG9Db252ZXJ0ZWQoY29uZmlnLCBzZWxmKSB7XG4gIHtcbiAgICBpZiAodHlwZW9mIGNvbmZpZy5yZWYgPT09ICdzdHJpbmcnICYmIFJlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQgJiYgc2VsZiAmJiBSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnN0YXRlTm9kZSAhPT0gc2VsZikge1xuICAgICAgdmFyIGNvbXBvbmVudE5hbWUgPSBnZXRDb21wb25lbnROYW1lRnJvbVR5cGUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKTtcblxuICAgICAgaWYgKCFkaWRXYXJuQWJvdXRTdHJpbmdSZWZzW2NvbXBvbmVudE5hbWVdKSB7XG4gICAgICAgIGVycm9yKCdDb21wb25lbnQgXCIlc1wiIGNvbnRhaW5zIHRoZSBzdHJpbmcgcmVmIFwiJXNcIi4gJyArICdTdXBwb3J0IGZvciBzdHJpbmcgcmVmcyB3aWxsIGJlIHJlbW92ZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gJyArICdUaGlzIGNhc2UgY2Fubm90IGJlIGF1dG9tYXRpY2FsbHkgY29udmVydGVkIHRvIGFuIGFycm93IGZ1bmN0aW9uLiAnICsgJ1dlIGFzayB5b3UgdG8gbWFudWFsbHkgZml4IHRoaXMgY2FzZSBieSB1c2luZyB1c2VSZWYoKSBvciBjcmVhdGVSZWYoKSBpbnN0ZWFkLiAnICsgJ0xlYXJuIG1vcmUgYWJvdXQgdXNpbmcgcmVmcyBzYWZlbHkgaGVyZTogJyArICdodHRwczovL3JlYWN0anMub3JnL2xpbmsvc3RyaWN0LW1vZGUtc3RyaW5nLXJlZicsIGdldENvbXBvbmVudE5hbWVGcm9tVHlwZShSZWFjdEN1cnJlbnRPd25lci5jdXJyZW50LnR5cGUpLCBjb25maWcucmVmKTtcblxuICAgICAgICBkaWRXYXJuQWJvdXRTdHJpbmdSZWZzW2NvbXBvbmVudE5hbWVdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmaW5lS2V5UHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKSB7XG4gIHtcbiAgICB2YXIgd2FybkFib3V0QWNjZXNzaW5nS2V5ID0gZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKCFzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93bikge1xuICAgICAgICBzcGVjaWFsUHJvcEtleVdhcm5pbmdTaG93biA9IHRydWU7XG5cbiAgICAgICAgZXJyb3IoJyVzOiBga2V5YCBpcyBub3QgYSBwcm9wLiBUcnlpbmcgdG8gYWNjZXNzIGl0IHdpbGwgcmVzdWx0ICcgKyAnaW4gYHVuZGVmaW5lZGAgYmVpbmcgcmV0dXJuZWQuIElmIHlvdSBuZWVkIHRvIGFjY2VzcyB0aGUgc2FtZSAnICsgJ3ZhbHVlIHdpdGhpbiB0aGUgY2hpbGQgY29tcG9uZW50LCB5b3Ugc2hvdWxkIHBhc3MgaXQgYXMgYSBkaWZmZXJlbnQgJyArICdwcm9wLiAoaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3NwZWNpYWwtcHJvcHMpJywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICB3YXJuQWJvdXRBY2Nlc3NpbmdLZXkuaXNSZWFjdFdhcm5pbmcgPSB0cnVlO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm9wcywgJ2tleScsIHtcbiAgICAgIGdldDogd2FybkFib3V0QWNjZXNzaW5nS2V5LFxuICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZGVmaW5lUmVmUHJvcFdhcm5pbmdHZXR0ZXIocHJvcHMsIGRpc3BsYXlOYW1lKSB7XG4gIHtcbiAgICB7XG4gICAgICB2YXIgd2FybkFib3V0QWNjZXNzaW5nUmVmID0gZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoIXNwZWNpYWxQcm9wUmVmV2FybmluZ1Nob3duKSB7XG4gICAgICAgICAgc3BlY2lhbFByb3BSZWZXYXJuaW5nU2hvd24gPSB0cnVlO1xuXG4gICAgICAgICAgZXJyb3IoJyVzOiBgcmVmYCBpcyBub3QgYSBwcm9wLiBUcnlpbmcgdG8gYWNjZXNzIGl0IHdpbGwgcmVzdWx0ICcgKyAnaW4gYHVuZGVmaW5lZGAgYmVpbmcgcmV0dXJuZWQuIElmIHlvdSBuZWVkIHRvIGFjY2VzcyB0aGUgc2FtZSAnICsgJ3ZhbHVlIHdpdGhpbiB0aGUgY2hpbGQgY29tcG9uZW50LCB5b3Ugc2hvdWxkIHBhc3MgaXQgYXMgYSBkaWZmZXJlbnQgJyArICdwcm9wLiAoaHR0cHM6Ly9yZWFjdGpzLm9yZy9saW5rL3NwZWNpYWwtcHJvcHMpJywgZGlzcGxheU5hbWUpO1xuICAgICAgICB9XG4gICAgICB9O1xuXG4gICAgICB3YXJuQWJvdXRBY2Nlc3NpbmdSZWYuaXNSZWFjdFdhcm5pbmcgPSB0cnVlO1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHByb3BzLCAncmVmJywge1xuICAgICAgICBnZXQ6IHdhcm5BYm91dEFjY2Vzc2luZ1JlZixcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbi8qKlxuICogRmFjdG9yeSBtZXRob2QgdG8gY3JlYXRlIGEgbmV3IFJlYWN0IGVsZW1lbnQuIFRoaXMgbm8gbG9uZ2VyIGFkaGVyZXMgdG9cbiAqIHRoZSBjbGFzcyBwYXR0ZXJuLCBzbyBkbyBub3QgdXNlIG5ldyB0byBjYWxsIGl0LiBBbHNvLCBpbnN0YW5jZW9mIGNoZWNrXG4gKiB3aWxsIG5vdCB3b3JrLiBJbnN0ZWFkIHRlc3QgJCR0eXBlb2YgZmllbGQgYWdhaW5zdCBTeW1ib2wuZm9yKCdyZWFjdC5lbGVtZW50JykgdG8gY2hlY2tcbiAqIGlmIHNvbWV0aGluZyBpcyBhIFJlYWN0IEVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHsqfSB0eXBlXG4gKiBAcGFyYW0geyp9IHByb3BzXG4gKiBAcGFyYW0geyp9IGtleVxuICogQHBhcmFtIHtzdHJpbmd8b2JqZWN0fSByZWZcbiAqIEBwYXJhbSB7Kn0gb3duZXJcbiAqIEBwYXJhbSB7Kn0gc2VsZiBBICp0ZW1wb3JhcnkqIGhlbHBlciB0byBkZXRlY3QgcGxhY2VzIHdoZXJlIGB0aGlzYCBpc1xuICogZGlmZmVyZW50IGZyb20gdGhlIGBvd25lcmAgd2hlbiBSZWFjdC5jcmVhdGVFbGVtZW50IGlzIGNhbGxlZCwgc28gdGhhdCB3ZVxuICogY2FuIHdhcm4uIFdlIHdhbnQgdG8gZ2V0IHJpZCBvZiBvd25lciBhbmQgcmVwbGFjZSBzdHJpbmcgYHJlZmBzIHdpdGggYXJyb3dcbiAqIGZ1bmN0aW9ucywgYW5kIGFzIGxvbmcgYXMgYHRoaXNgIGFuZCBvd25lciBhcmUgdGhlIHNhbWUsIHRoZXJlIHdpbGwgYmUgbm9cbiAqIGNoYW5nZSBpbiBiZWhhdmlvci5cbiAqIEBwYXJhbSB7Kn0gc291cmNlIEFuIGFubm90YXRpb24gb2JqZWN0IChhZGRlZCBieSBhIHRyYW5zcGlsZXIgb3Igb3RoZXJ3aXNlKVxuICogaW5kaWNhdGluZyBmaWxlbmFtZSwgbGluZSBudW1iZXIsIGFuZC9vciBvdGhlciBpbmZvcm1hdGlvbi5cbiAqIEBpbnRlcm5hbFxuICovXG5cblxuZnVuY3Rpb24gUmVhY3RFbGVtZW50KHR5cGUsIGtleSwgX3JlZiwgc2VsZiwgc291cmNlLCBvd25lciwgcHJvcHMpIHtcbiAgdmFyIHJlZjtcblxuICB7XG4gICAgcmVmID0gX3JlZjtcbiAgfVxuXG4gIHZhciBlbGVtZW50O1xuXG4gIHtcbiAgICAvLyBJbiBwcm9kLCBgcmVmYCBpcyBhIHJlZ3VsYXIgcHJvcGVydHkuIEl0IHdpbGwgYmUgcmVtb3ZlZCBpbiBhXG4gICAgLy8gZnV0dXJlIHJlbGVhc2UuXG4gICAgZWxlbWVudCA9IHtcbiAgICAgIC8vIFRoaXMgdGFnIGFsbG93cyB1cyB0byB1bmlxdWVseSBpZGVudGlmeSB0aGlzIGFzIGEgUmVhY3QgRWxlbWVudFxuICAgICAgJCR0eXBlb2Y6IFJFQUNUX0VMRU1FTlRfVFlQRSxcbiAgICAgIC8vIEJ1aWx0LWluIHByb3BlcnRpZXMgdGhhdCBiZWxvbmcgb24gdGhlIGVsZW1lbnRcbiAgICAgIHR5cGU6IHR5cGUsXG4gICAgICBrZXk6IGtleSxcbiAgICAgIHJlZjogcmVmLFxuICAgICAgcHJvcHM6IHByb3BzLFxuICAgICAgLy8gUmVjb3JkIHRoZSBjb21wb25lbnQgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoaXMgZWxlbWVudC5cbiAgICAgIF9vd25lcjogb3duZXJcbiAgICB9O1xuICB9XG5cbiAge1xuICAgIC8vIFRoZSB2YWxpZGF0aW9uIGZsYWcgaXMgY3VycmVudGx5IG11dGF0aXZlLiBXZSBwdXQgaXQgb25cbiAgICAvLyBhbiBleHRlcm5hbCBiYWNraW5nIHN0b3JlIHNvIHRoYXQgd2UgY2FuIGZyZWV6ZSB0aGUgd2hvbGUgb2JqZWN0LlxuICAgIC8vIFRoaXMgY2FuIGJlIHJlcGxhY2VkIHdpdGggYSBXZWFrTWFwIG9uY2UgdGhleSBhcmUgaW1wbGVtZW50ZWQgaW5cbiAgICAvLyBjb21tb25seSB1c2VkIGRldmVsb3BtZW50IGVudmlyb25tZW50cy5cbiAgICBlbGVtZW50Ll9zdG9yZSA9IHt9OyAvLyBUbyBtYWtlIGNvbXBhcmluZyBSZWFjdEVsZW1lbnRzIGVhc2llciBmb3IgdGVzdGluZyBwdXJwb3Nlcywgd2UgbWFrZVxuICAgIC8vIHRoZSB2YWxpZGF0aW9uIGZsYWcgbm9uLWVudW1lcmFibGUgKHdoZXJlIHBvc3NpYmxlLCB3aGljaCBzaG91bGRcbiAgICAvLyBpbmNsdWRlIGV2ZXJ5IGVudmlyb25tZW50IHdlIHJ1biB0ZXN0cyBpbiksIHNvIHRoZSB0ZXN0IGZyYW1ld29ya1xuICAgIC8vIGlnbm9yZXMgaXQuXG5cbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZWxlbWVudC5fc3RvcmUsICd2YWxpZGF0ZWQnLCB7XG4gICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgZW51bWVyYWJsZTogZmFsc2UsXG4gICAgICB3cml0YWJsZTogdHJ1ZSxcbiAgICAgIHZhbHVlOiBmYWxzZVxuICAgIH0pOyAvLyBkZWJ1Z0luZm8gY29udGFpbnMgU2VydmVyIENvbXBvbmVudCBkZWJ1ZyBpbmZvcm1hdGlvbi5cblxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlbGVtZW50LCAnX2RlYnVnSW5mbycsIHtcbiAgICAgIGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgIHdyaXRhYmxlOiB0cnVlLFxuICAgICAgdmFsdWU6IG51bGxcbiAgICB9KTtcblxuICAgIGlmIChPYmplY3QuZnJlZXplKSB7XG4gICAgICBPYmplY3QuZnJlZXplKGVsZW1lbnQucHJvcHMpO1xuICAgICAgT2JqZWN0LmZyZWV6ZShlbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZWxlbWVudDtcbn1cbnZhciBkaWRXYXJuQWJvdXRLZXlTcHJlYWQgPSB7fTtcbi8qKlxuICogaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0anMvcmZjcy9wdWxsLzEwN1xuICogQHBhcmFtIHsqfSB0eXBlXG4gKiBAcGFyYW0ge29iamVjdH0gcHJvcHNcbiAqIEBwYXJhbSB7c3RyaW5nfSBrZXlcbiAqL1xuXG5mdW5jdGlvbiBqc3hERVYkMSh0eXBlLCBjb25maWcsIG1heWJlS2V5LCBpc1N0YXRpY0NoaWxkcmVuLCBzb3VyY2UsIHNlbGYpIHtcbiAge1xuICAgIGlmICghaXNWYWxpZEVsZW1lbnRUeXBlKHR5cGUpKSB7XG4gICAgICAvLyBUaGlzIGlzIGFuIGludmFsaWQgZWxlbWVudCB0eXBlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIHdhcm4gaW4gdGhpcyBjYXNlIGJ1dCBkb24ndCB0aHJvdy4gV2UgZXhwZWN0IHRoZSBlbGVtZW50IGNyZWF0aW9uIHRvXG4gICAgICAvLyBzdWNjZWVkIGFuZCB0aGVyZSB3aWxsIGxpa2VseSBiZSBlcnJvcnMgaW4gcmVuZGVyLlxuICAgICAgdmFyIGluZm8gPSAnJztcblxuICAgICAgaWYgKHR5cGUgPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgdHlwZSA9PT0gJ29iamVjdCcgJiYgdHlwZSAhPT0gbnVsbCAmJiBPYmplY3Qua2V5cyh0eXBlKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgaW5mbyArPSAnIFlvdSBsaWtlbHkgZm9yZ290IHRvIGV4cG9ydCB5b3VyIGNvbXBvbmVudCBmcm9tIHRoZSBmaWxlICcgKyBcIml0J3MgZGVmaW5lZCBpbiwgb3IgeW91IG1pZ2h0IGhhdmUgbWl4ZWQgdXAgZGVmYXVsdCBhbmQgbmFtZWQgaW1wb3J0cy5cIjtcbiAgICAgIH1cblxuICAgICAgdmFyIHR5cGVTdHJpbmc7XG5cbiAgICAgIGlmICh0eXBlID09PSBudWxsKSB7XG4gICAgICAgIHR5cGVTdHJpbmcgPSAnbnVsbCc7XG4gICAgICB9IGVsc2UgaWYgKGlzQXJyYXkodHlwZSkpIHtcbiAgICAgICAgdHlwZVN0cmluZyA9ICdhcnJheSc7XG4gICAgICB9IGVsc2UgaWYgKHR5cGUgIT09IHVuZGVmaW5lZCAmJiB0eXBlLiQkdHlwZW9mID09PSBSRUFDVF9FTEVNRU5UX1RZUEUpIHtcbiAgICAgICAgdHlwZVN0cmluZyA9IFwiPFwiICsgKGdldENvbXBvbmVudE5hbWVGcm9tVHlwZSh0eXBlLnR5cGUpIHx8ICdVbmtub3duJykgKyBcIiAvPlwiO1xuICAgICAgICBpbmZvID0gJyBEaWQgeW91IGFjY2lkZW50YWxseSBleHBvcnQgYSBKU1ggbGl0ZXJhbCBpbnN0ZWFkIG9mIGEgY29tcG9uZW50Pyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0eXBlU3RyaW5nID0gdHlwZW9mIHR5cGU7XG4gICAgICB9XG5cbiAgICAgIGVycm9yKCdSZWFjdC5qc3g6IHR5cGUgaXMgaW52YWxpZCAtLSBleHBlY3RlZCBhIHN0cmluZyAoZm9yICcgKyAnYnVpbHQtaW4gY29tcG9uZW50cykgb3IgYSBjbGFzcy9mdW5jdGlvbiAoZm9yIGNvbXBvc2l0ZSAnICsgJ2NvbXBvbmVudHMpIGJ1dCBnb3Q6ICVzLiVzJywgdHlwZVN0cmluZywgaW5mbyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRoaXMgaXMgYSB2YWxpZCBlbGVtZW50IHR5cGUuXG4gICAgICAvLyBTa2lwIGtleSB3YXJuaW5nIGlmIHRoZSB0eXBlIGlzbid0IHZhbGlkIHNpbmNlIG91ciBrZXkgdmFsaWRhdGlvbiBsb2dpY1xuICAgICAgLy8gZG9lc24ndCBleHBlY3QgYSBub24tc3RyaW5nL2Z1bmN0aW9uIHR5cGUgYW5kIGNhbiB0aHJvdyBjb25mdXNpbmdcbiAgICAgIC8vIGVycm9ycy4gV2UgZG9uJ3Qgd2FudCBleGNlcHRpb24gYmVoYXZpb3IgdG8gZGlmZmVyIGJldHdlZW4gZGV2IGFuZFxuICAgICAgLy8gcHJvZC4gKFJlbmRlcmluZyB3aWxsIHRocm93IHdpdGggYSBoZWxwZnVsIG1lc3NhZ2UgYW5kIGFzIHNvb24gYXMgdGhlXG4gICAgICAvLyB0eXBlIGlzIGZpeGVkLCB0aGUga2V5IHdhcm5pbmdzIHdpbGwgYXBwZWFyLilcbiAgICAgIHZhciBjaGlsZHJlbiA9IGNvbmZpZy5jaGlsZHJlbjtcblxuICAgICAgaWYgKGNoaWxkcmVuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKGlzU3RhdGljQ2hpbGRyZW4pIHtcbiAgICAgICAgICBpZiAoaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgdmFsaWRhdGVDaGlsZEtleXMoY2hpbGRyZW5baV0sIHR5cGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoT2JqZWN0LmZyZWV6ZSkge1xuICAgICAgICAgICAgICBPYmplY3QuZnJlZXplKGNoaWxkcmVuKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXJyb3IoJ1JlYWN0LmpzeDogU3RhdGljIGNoaWxkcmVuIHNob3VsZCBhbHdheXMgYmUgYW4gYXJyYXkuICcgKyAnWW91IGFyZSBsaWtlbHkgZXhwbGljaXRseSBjYWxsaW5nIFJlYWN0LmpzeHMgb3IgUmVhY3QuanN4REVWLiAnICsgJ1VzZSB0aGUgQmFiZWwgdHJhbnNmb3JtIGluc3RlYWQuJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHZhbGlkYXRlQ2hpbGRLZXlzKGNoaWxkcmVuLCB0eXBlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gLy8gV2FybiBhYm91dCBrZXkgc3ByZWFkIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciB0aGUgdHlwZSBpcyB2YWxpZC5cblxuXG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoY29uZmlnLCAna2V5JykpIHtcbiAgICAgIHZhciBjb21wb25lbnROYW1lID0gZ2V0Q29tcG9uZW50TmFtZUZyb21UeXBlKHR5cGUpO1xuICAgICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhjb25maWcpLmZpbHRlcihmdW5jdGlvbiAoaykge1xuICAgICAgICByZXR1cm4gayAhPT0gJ2tleSc7XG4gICAgICB9KTtcbiAgICAgIHZhciBiZWZvcmVFeGFtcGxlID0ga2V5cy5sZW5ndGggPiAwID8gJ3trZXk6IHNvbWVLZXksICcgKyBrZXlzLmpvaW4oJzogLi4uLCAnKSArICc6IC4uLn0nIDogJ3trZXk6IHNvbWVLZXl9JztcblxuICAgICAgaWYgKCFkaWRXYXJuQWJvdXRLZXlTcHJlYWRbY29tcG9uZW50TmFtZSArIGJlZm9yZUV4YW1wbGVdKSB7XG4gICAgICAgIHZhciBhZnRlckV4YW1wbGUgPSBrZXlzLmxlbmd0aCA+IDAgPyAneycgKyBrZXlzLmpvaW4oJzogLi4uLCAnKSArICc6IC4uLn0nIDogJ3t9JztcblxuICAgICAgICBlcnJvcignQSBwcm9wcyBvYmplY3QgY29udGFpbmluZyBhIFwia2V5XCIgcHJvcCBpcyBiZWluZyBzcHJlYWQgaW50byBKU1g6XFxuJyArICcgIGxldCBwcm9wcyA9ICVzO1xcbicgKyAnICA8JXMgey4uLnByb3BzfSAvPlxcbicgKyAnUmVhY3Qga2V5cyBtdXN0IGJlIHBhc3NlZCBkaXJlY3RseSB0byBKU1ggd2l0aG91dCB1c2luZyBzcHJlYWQ6XFxuJyArICcgIGxldCBwcm9wcyA9ICVzO1xcbicgKyAnICA8JXMga2V5PXtzb21lS2V5fSB7Li4ucHJvcHN9IC8+JywgYmVmb3JlRXhhbXBsZSwgY29tcG9uZW50TmFtZSwgYWZ0ZXJFeGFtcGxlLCBjb21wb25lbnROYW1lKTtcblxuICAgICAgICBkaWRXYXJuQWJvdXRLZXlTcHJlYWRbY29tcG9uZW50TmFtZSArIGJlZm9yZUV4YW1wbGVdID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2YXIgcHJvcE5hbWU7IC8vIFJlc2VydmVkIG5hbWVzIGFyZSBleHRyYWN0ZWRcblxuICAgIHZhciBwcm9wcyA9IHt9O1xuICAgIHZhciBrZXkgPSBudWxsO1xuICAgIHZhciByZWYgPSBudWxsOyAvLyBDdXJyZW50bHksIGtleSBjYW4gYmUgc3ByZWFkIGluIGFzIGEgcHJvcC4gVGhpcyBjYXVzZXMgYSBwb3RlbnRpYWxcbiAgICAvLyBpc3N1ZSBpZiBrZXkgaXMgYWxzbyBleHBsaWNpdGx5IGRlY2xhcmVkIChpZS4gPGRpdiB7Li4ucHJvcHN9IGtleT1cIkhpXCIgLz5cbiAgICAvLyBvciA8ZGl2IGtleT1cIkhpXCIgey4uLnByb3BzfSAvPiApLiBXZSB3YW50IHRvIGRlcHJlY2F0ZSBrZXkgc3ByZWFkLFxuICAgIC8vIGJ1dCBhcyBhbiBpbnRlcm1lZGlhcnkgc3RlcCwgd2Ugd2lsbCB1c2UganN4REVWIGZvciBldmVyeXRoaW5nIGV4Y2VwdFxuICAgIC8vIDxkaXYgey4uLnByb3BzfSBrZXk9XCJIaVwiIC8+LCBiZWNhdXNlIHdlIGFyZW4ndCBjdXJyZW50bHkgYWJsZSB0byB0ZWxsIGlmXG4gICAgLy8ga2V5IGlzIGV4cGxpY2l0bHkgZGVjbGFyZWQgdG8gYmUgdW5kZWZpbmVkIG9yIG5vdC5cblxuICAgIGlmIChtYXliZUtleSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB7XG4gICAgICAgIGNoZWNrS2V5U3RyaW5nQ29lcmNpb24obWF5YmVLZXkpO1xuICAgICAgfVxuXG4gICAgICBrZXkgPSAnJyArIG1heWJlS2V5O1xuICAgIH1cblxuICAgIGlmIChoYXNWYWxpZEtleShjb25maWcpKSB7XG4gICAgICB7XG4gICAgICAgIGNoZWNrS2V5U3RyaW5nQ29lcmNpb24oY29uZmlnLmtleSk7XG4gICAgICB9XG5cbiAgICAgIGtleSA9ICcnICsgY29uZmlnLmtleTtcbiAgICB9XG5cbiAgICBpZiAoaGFzVmFsaWRSZWYoY29uZmlnKSkge1xuICAgICAge1xuICAgICAgICByZWYgPSBjb25maWcucmVmO1xuICAgICAgfVxuXG4gICAgICB3YXJuSWZTdHJpbmdSZWZDYW5ub3RCZUF1dG9Db252ZXJ0ZWQoY29uZmlnLCBzZWxmKTtcbiAgICB9IC8vIFJlbWFpbmluZyBwcm9wZXJ0aWVzIGFyZSBhZGRlZCB0byBhIG5ldyBwcm9wcyBvYmplY3RcblxuXG4gICAgZm9yIChwcm9wTmFtZSBpbiBjb25maWcpIHtcbiAgICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbmZpZywgcHJvcE5hbWUpICYmIC8vIFNraXAgb3ZlciByZXNlcnZlZCBwcm9wIG5hbWVzXG4gICAgICBwcm9wTmFtZSAhPT0gJ2tleScgJiYgKHByb3BOYW1lICE9PSAncmVmJykpIHtcbiAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gY29uZmlnW3Byb3BOYW1lXTtcbiAgICAgIH1cbiAgICB9IC8vIFJlc29sdmUgZGVmYXVsdCBwcm9wc1xuXG5cbiAgICBpZiAodHlwZSAmJiB0eXBlLmRlZmF1bHRQcm9wcykge1xuICAgICAgdmFyIGRlZmF1bHRQcm9wcyA9IHR5cGUuZGVmYXVsdFByb3BzO1xuXG4gICAgICBmb3IgKHByb3BOYW1lIGluIGRlZmF1bHRQcm9wcykge1xuICAgICAgICBpZiAocHJvcHNbcHJvcE5hbWVdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBkZWZhdWx0UHJvcHNbcHJvcE5hbWVdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGtleSB8fCByZWYpIHtcbiAgICAgIHZhciBkaXNwbGF5TmFtZSA9IHR5cGVvZiB0eXBlID09PSAnZnVuY3Rpb24nID8gdHlwZS5kaXNwbGF5TmFtZSB8fCB0eXBlLm5hbWUgfHwgJ1Vua25vd24nIDogdHlwZTtcblxuICAgICAgaWYgKGtleSkge1xuICAgICAgICBkZWZpbmVLZXlQcm9wV2FybmluZ0dldHRlcihwcm9wcywgZGlzcGxheU5hbWUpO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVmKSB7XG4gICAgICAgIGRlZmluZVJlZlByb3BXYXJuaW5nR2V0dGVyKHByb3BzLCBkaXNwbGF5TmFtZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdmFyIGVsZW1lbnQgPSBSZWFjdEVsZW1lbnQodHlwZSwga2V5LCByZWYsIHNlbGYsIHNvdXJjZSwgUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCwgcHJvcHMpO1xuXG4gICAgaWYgKHR5cGUgPT09IFJFQUNUX0ZSQUdNRU5UX1RZUEUpIHtcbiAgICAgIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhlbGVtZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudDtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXREZWNsYXJhdGlvbkVycm9yQWRkZW5kdW0oKSB7XG4gIHtcbiAgICBpZiAoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCkge1xuICAgICAgdmFyIG5hbWUgPSBnZXRDb21wb25lbnROYW1lRnJvbVR5cGUoUmVhY3RDdXJyZW50T3duZXIuY3VycmVudC50eXBlKTtcblxuICAgICAgaWYgKG5hbWUpIHtcbiAgICAgICAgcmV0dXJuICdcXG5cXG5DaGVjayB0aGUgcmVuZGVyIG1ldGhvZCBvZiBgJyArIG5hbWUgKyAnYC4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxufVxuLyoqXG4gKiBFbnN1cmUgdGhhdCBldmVyeSBlbGVtZW50IGVpdGhlciBpcyBwYXNzZWQgaW4gYSBzdGF0aWMgbG9jYXRpb24sIGluIGFuXG4gKiBhcnJheSB3aXRoIGFuIGV4cGxpY2l0IGtleXMgcHJvcGVydHkgZGVmaW5lZCwgb3IgaW4gYW4gb2JqZWN0IGxpdGVyYWxcbiAqIHdpdGggdmFsaWQga2V5IHByb3BlcnR5LlxuICpcbiAqIEBpbnRlcm5hbFxuICogQHBhcmFtIHtSZWFjdE5vZGV9IG5vZGUgU3RhdGljYWxseSBwYXNzZWQgY2hpbGQgb2YgYW55IHR5cGUuXG4gKiBAcGFyYW0geyp9IHBhcmVudFR5cGUgbm9kZSdzIHBhcmVudCdzIHR5cGUuXG4gKi9cblxuXG5mdW5jdGlvbiB2YWxpZGF0ZUNoaWxkS2V5cyhub2RlLCBwYXJlbnRUeXBlKSB7XG4gIHtcbiAgICBpZiAodHlwZW9mIG5vZGUgIT09ICdvYmplY3QnIHx8ICFub2RlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG5vZGUuJCR0eXBlb2YgPT09IFJFQUNUX0NMSUVOVF9SRUZFUkVOQ0UpIDsgZWxzZSBpZiAoaXNBcnJheShub2RlKSkge1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHZhciBjaGlsZCA9IG5vZGVbaV07XG5cbiAgICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KGNoaWxkKSkge1xuICAgICAgICAgIHZhbGlkYXRlRXhwbGljaXRLZXkoY2hpbGQsIHBhcmVudFR5cGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChpc1ZhbGlkRWxlbWVudChub2RlKSkge1xuICAgICAgLy8gVGhpcyBlbGVtZW50IHdhcyBwYXNzZWQgaW4gYSB2YWxpZCBsb2NhdGlvbi5cbiAgICAgIGlmIChub2RlLl9zdG9yZSkge1xuICAgICAgICBub2RlLl9zdG9yZS52YWxpZGF0ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgaXRlcmF0b3JGbiA9IGdldEl0ZXJhdG9yRm4obm9kZSk7XG5cbiAgICAgIGlmICh0eXBlb2YgaXRlcmF0b3JGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAvLyBFbnRyeSBpdGVyYXRvcnMgdXNlZCB0byBwcm92aWRlIGltcGxpY2l0IGtleXMsXG4gICAgICAgIC8vIGJ1dCBub3cgd2UgcHJpbnQgYSBzZXBhcmF0ZSB3YXJuaW5nIGZvciB0aGVtIGxhdGVyLlxuICAgICAgICBpZiAoaXRlcmF0b3JGbiAhPT0gbm9kZS5lbnRyaWVzKSB7XG4gICAgICAgICAgdmFyIGl0ZXJhdG9yID0gaXRlcmF0b3JGbi5jYWxsKG5vZGUpO1xuICAgICAgICAgIHZhciBzdGVwO1xuXG4gICAgICAgICAgd2hpbGUgKCEoc3RlcCA9IGl0ZXJhdG9yLm5leHQoKSkuZG9uZSkge1xuICAgICAgICAgICAgaWYgKGlzVmFsaWRFbGVtZW50KHN0ZXAudmFsdWUpKSB7XG4gICAgICAgICAgICAgIHZhbGlkYXRlRXhwbGljaXRLZXkoc3RlcC52YWx1ZSwgcGFyZW50VHlwZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKipcbiAqIFZlcmlmaWVzIHRoZSBvYmplY3QgaXMgYSBSZWFjdEVsZW1lbnQuXG4gKiBTZWUgaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL3JlYWN0LWFwaS5odG1sI2lzdmFsaWRlbGVtZW50XG4gKiBAcGFyYW0gez9vYmplY3R9IG9iamVjdFxuICogQHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiBgb2JqZWN0YCBpcyBhIFJlYWN0RWxlbWVudC5cbiAqIEBmaW5hbFxuICovXG5cblxuZnVuY3Rpb24gaXNWYWxpZEVsZW1lbnQob2JqZWN0KSB7XG4gIHJldHVybiB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJiBvYmplY3QgIT09IG51bGwgJiYgb2JqZWN0LiQkdHlwZW9mID09PSBSRUFDVF9FTEVNRU5UX1RZUEU7XG59XG52YXIgb3duZXJIYXNLZXlVc2VXYXJuaW5nID0ge307XG4vKipcbiAqIFdhcm4gaWYgdGhlIGVsZW1lbnQgZG9lc24ndCBoYXZlIGFuIGV4cGxpY2l0IGtleSBhc3NpZ25lZCB0byBpdC5cbiAqIFRoaXMgZWxlbWVudCBpcyBpbiBhbiBhcnJheS4gVGhlIGFycmF5IGNvdWxkIGdyb3cgYW5kIHNocmluayBvciBiZVxuICogcmVvcmRlcmVkLiBBbGwgY2hpbGRyZW4gdGhhdCBoYXZlbid0IGFscmVhZHkgYmVlbiB2YWxpZGF0ZWQgYXJlIHJlcXVpcmVkIHRvXG4gKiBoYXZlIGEgXCJrZXlcIiBwcm9wZXJ0eSBhc3NpZ25lZCB0byBpdC4gRXJyb3Igc3RhdHVzZXMgYXJlIGNhY2hlZCBzbyBhIHdhcm5pbmdcbiAqIHdpbGwgb25seSBiZSBzaG93biBvbmNlLlxuICpcbiAqIEBpbnRlcm5hbFxuICogQHBhcmFtIHtSZWFjdEVsZW1lbnR9IGVsZW1lbnQgRWxlbWVudCB0aGF0IHJlcXVpcmVzIGEga2V5LlxuICogQHBhcmFtIHsqfSBwYXJlbnRUeXBlIGVsZW1lbnQncyBwYXJlbnQncyB0eXBlLlxuICovXG5cbmZ1bmN0aW9uIHZhbGlkYXRlRXhwbGljaXRLZXkoZWxlbWVudCwgcGFyZW50VHlwZSkge1xuICB7XG4gICAgaWYgKCFlbGVtZW50Ll9zdG9yZSB8fCBlbGVtZW50Ll9zdG9yZS52YWxpZGF0ZWQgfHwgZWxlbWVudC5rZXkgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGVsZW1lbnQuX3N0b3JlLnZhbGlkYXRlZCA9IHRydWU7XG4gICAgdmFyIGN1cnJlbnRDb21wb25lbnRFcnJvckluZm8gPSBnZXRDdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvKHBhcmVudFR5cGUpO1xuXG4gICAgaWYgKG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIG93bmVySGFzS2V5VXNlV2FybmluZ1tjdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvXSA9IHRydWU7IC8vIFVzdWFsbHkgdGhlIGN1cnJlbnQgb3duZXIgaXMgdGhlIG9mZmVuZGVyLCBidXQgaWYgaXQgYWNjZXB0cyBjaGlsZHJlbiBhcyBhXG4gICAgLy8gcHJvcGVydHksIGl0IG1heSBiZSB0aGUgY3JlYXRvciBvZiB0aGUgY2hpbGQgdGhhdCdzIHJlc3BvbnNpYmxlIGZvclxuICAgIC8vIGFzc2lnbmluZyBpdCBhIGtleS5cblxuICAgIHZhciBjaGlsZE93bmVyID0gJyc7XG5cbiAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50Ll9vd25lciAmJiBlbGVtZW50Ll9vd25lciAhPT0gUmVhY3RDdXJyZW50T3duZXIuY3VycmVudCkge1xuICAgICAgLy8gR2l2ZSB0aGUgY29tcG9uZW50IHRoYXQgb3JpZ2luYWxseSBjcmVhdGVkIHRoaXMgY2hpbGQuXG4gICAgICBjaGlsZE93bmVyID0gXCIgSXQgd2FzIHBhc3NlZCBhIGNoaWxkIGZyb20gXCIgKyBnZXRDb21wb25lbnROYW1lRnJvbVR5cGUoZWxlbWVudC5fb3duZXIudHlwZSkgKyBcIi5cIjtcbiAgICB9XG5cbiAgICBzZXRDdXJyZW50bHlWYWxpZGF0aW5nRWxlbWVudChlbGVtZW50KTtcblxuICAgIGVycm9yKCdFYWNoIGNoaWxkIGluIGEgbGlzdCBzaG91bGQgaGF2ZSBhIHVuaXF1ZSBcImtleVwiIHByb3AuJyArICclcyVzIFNlZSBodHRwczovL3JlYWN0anMub3JnL2xpbmsvd2FybmluZy1rZXlzIGZvciBtb3JlIGluZm9ybWF0aW9uLicsIGN1cnJlbnRDb21wb25lbnRFcnJvckluZm8sIGNoaWxkT3duZXIpO1xuXG4gICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQoZWxlbWVudCkge1xuICB7XG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIHZhciBvd25lciA9IGVsZW1lbnQuX293bmVyO1xuICAgICAgdmFyIHN0YWNrID0gZGVzY3JpYmVVbmtub3duRWxlbWVudFR5cGVGcmFtZUluREVWKGVsZW1lbnQudHlwZSwgb3duZXIgPyBvd25lci50eXBlIDogbnVsbCk7XG4gICAgICBSZWFjdERlYnVnQ3VycmVudEZyYW1lLnNldEV4dHJhU3RhY2tGcmFtZShzdGFjayk7XG4gICAgfSBlbHNlIHtcbiAgICAgIFJlYWN0RGVidWdDdXJyZW50RnJhbWUuc2V0RXh0cmFTdGFja0ZyYW1lKG51bGwpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRDdXJyZW50Q29tcG9uZW50RXJyb3JJbmZvKHBhcmVudFR5cGUpIHtcbiAge1xuICAgIHZhciBpbmZvID0gZ2V0RGVjbGFyYXRpb25FcnJvckFkZGVuZHVtKCk7XG5cbiAgICBpZiAoIWluZm8pIHtcbiAgICAgIHZhciBwYXJlbnROYW1lID0gZ2V0Q29tcG9uZW50TmFtZUZyb21UeXBlKHBhcmVudFR5cGUpO1xuXG4gICAgICBpZiAocGFyZW50TmFtZSkge1xuICAgICAgICBpbmZvID0gXCJcXG5cXG5DaGVjayB0aGUgdG9wLWxldmVsIHJlbmRlciBjYWxsIHVzaW5nIDxcIiArIHBhcmVudE5hbWUgKyBcIj4uXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cbi8qKlxuICogR2l2ZW4gYSBmcmFnbWVudCwgdmFsaWRhdGUgdGhhdCBpdCBjYW4gb25seSBiZSBwcm92aWRlZCB3aXRoIGZyYWdtZW50IHByb3BzXG4gKiBAcGFyYW0ge1JlYWN0RWxlbWVudH0gZnJhZ21lbnRcbiAqL1xuXG5cbmZ1bmN0aW9uIHZhbGlkYXRlRnJhZ21lbnRQcm9wcyhmcmFnbWVudCkge1xuICAvLyBUT0RPOiBNb3ZlIHRoaXMgdG8gcmVuZGVyIHBoYXNlIGluc3RlYWQgb2YgYXQgZWxlbWVudCBjcmVhdGlvbi5cbiAge1xuICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZnJhZ21lbnQucHJvcHMpO1xuXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIga2V5ID0ga2V5c1tpXTtcblxuICAgICAgaWYgKGtleSAhPT0gJ2NoaWxkcmVuJyAmJiBrZXkgIT09ICdrZXknKSB7XG4gICAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGZyYWdtZW50KTtcblxuICAgICAgICBlcnJvcignSW52YWxpZCBwcm9wIGAlc2Agc3VwcGxpZWQgdG8gYFJlYWN0LkZyYWdtZW50YC4gJyArICdSZWFjdC5GcmFnbWVudCBjYW4gb25seSBoYXZlIGBrZXlgIGFuZCBgY2hpbGRyZW5gIHByb3BzLicsIGtleSk7XG5cbiAgICAgICAgc2V0Q3VycmVudGx5VmFsaWRhdGluZ0VsZW1lbnQobnVsbCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChmcmFnbWVudC5yZWYgIT09IG51bGwpIHtcbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KGZyYWdtZW50KTtcblxuICAgICAgZXJyb3IoJ0ludmFsaWQgYXR0cmlidXRlIGByZWZgIHN1cHBsaWVkIHRvIGBSZWFjdC5GcmFnbWVudGAuJyk7XG5cbiAgICAgIHNldEN1cnJlbnRseVZhbGlkYXRpbmdFbGVtZW50KG51bGwpO1xuICAgIH1cbiAgfVxufVxuXG52YXIganN4REVWID0ganN4REVWJDEgO1xuXG5leHBvcnRzLkZyYWdtZW50ID0gUkVBQ1RfRlJBR01FTlRfVFlQRTtcbmV4cG9ydHMuanN4REVWID0ganN4REVWO1xuICB9KSgpO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.development.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/next/dist/compiled/react/jsx-dev-runtime.js ***!
|
||
\******************************************************************/
|
||
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("\n\nif (false) {} else {\n module.exports = __webpack_require__(/*! ./cjs/react-jsx-dev-runtime.development.js */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/cjs/react-jsx-dev-runtime.development.js\");\n}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9uZXh0L2Rpc3QvY29tcGlsZWQvcmVhY3QvanN4LWRldi1ydW50aW1lLmpzIiwibWFwcGluZ3MiOiJBQUFhOztBQUViLElBQUksS0FBcUMsRUFBRSxFQUUxQyxDQUFDO0FBQ0YsRUFBRSw4TEFBc0U7QUFDeEUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL25leHQvZGlzdC9jb21waWxlZC9yZWFjdC9qc3gtZGV2LXJ1bnRpbWUuanM/MmRkZiJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIHN0cmljdCc7XG5cbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZSgnLi9janMvcmVhY3QtanN4LWRldi1ydW50aW1lLnByb2R1Y3Rpb24ubWluLmpzJyk7XG59IGVsc2Uge1xuICBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoJy4vY2pzL3JlYWN0LWpzeC1kZXYtcnVudGltZS5kZXZlbG9wbWVudC5qcycpO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/next/dist/compiled/react/jsx-dev-runtime.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/core/dist/floating-ui.core.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrow: function() { return /* binding */ arrow; },\n/* harmony export */ autoPlacement: function() { return /* binding */ autoPlacement; },\n/* harmony export */ computePosition: function() { return /* binding */ computePosition; },\n/* harmony export */ detectOverflow: function() { return /* binding */ detectOverflow; },\n/* harmony export */ flip: function() { return /* binding */ flip; },\n/* harmony export */ hide: function() { return /* binding */ hide; },\n/* harmony export */ inline: function() { return /* binding */ inline; },\n/* harmony export */ limitShift: function() { return /* binding */ limitShift; },\n/* harmony export */ offset: function() { return /* binding */ offset; },\n/* harmony export */ rectToClientRect: function() { return /* reexport safe */ _floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.rectToClientRect; },\n/* harmony export */ shift: function() { return /* binding */ shift; },\n/* harmony export */ size: function() { return /* binding */ size; }\n/* harmony export */ });\n/* harmony import */ var _floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @floating-ui/utils */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs\");\n\n\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)(placement);\n const alignmentAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignmentAxis)(placement);\n const alignLength = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAxisLength)(alignmentAxis);\n const side = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch ((0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const paddingObject = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getPaddingObject)(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.rectToClientRect)(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n x,\n y,\n width: rects.floating.width,\n height: rects.floating.height\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.rectToClientRect)(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n elements,\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getPaddingObject)(padding);\n const coords = {\n x,\n y\n };\n const axis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignmentAxis)(placement);\n const length = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAxisLength)(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.clamp)(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement) === alignment), ...allowedPlacements.filter(placement => (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement) !== alignment)] : allowedPlacements.filter(placement => (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement) === alignment || (autoAlignment ? (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getOppositeAlignmentPlacement)(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = _floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === _floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignmentSides)(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[(0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement);\n const isBasePlacement = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [(0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getOppositePlacement)(initialPlacement)] : (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getExpandedPlacements)(initialPlacement));\n if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {\n fallbackPlacements.push(...(0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getOppositeAxisPlacements)(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignmentSides)(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$map$so;\n const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return _floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(...rects.map(rect => rect.left));\n const minY = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(...rects.map(rect => rect.top));\n const maxX = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(...rects.map(rect => rect.right));\n const maxY = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.rectToClientRect)(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.rectToClientRect)(getBoundingRect(nativeClientRects));\n const paddingObject = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getPaddingObject)(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if ((0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement) === 'left';\n const maxRight = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(...clientRects.map(rect => rect.right));\n const minLeft = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\n\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement);\n const alignment = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement);\n const isVertical = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)(placement) === 'y';\n const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: 0,\n crossAxis: 0,\n alignmentAxis: null,\n ...rawValue\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n var _middlewareData$offse, _middlewareData$arrow;\n const {\n x,\n y,\n placement,\n middlewareData\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n\n // If the placement is the same and the arrow caused an alignment offset\n // then we don't need to change the positioning coordinates.\n if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: {\n ...diffCoords,\n placement\n }\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)((0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement));\n const mainAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getOppositeAxis)(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.clamp)(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.clamp)(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)(placement);\n const mainAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getOppositeAxis)(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = ['top', 'left'].includes((0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.evaluate)(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSide)(placement);\n const alignment = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getAlignment)(placement);\n const isYAxis = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.getSideAxis)(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n const maximumClippingWidth = width - overflow.left - overflow.right;\n const overflowAvailableHeight = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(height - overflow[heightSide], maximumClippingHeight);\n const overflowAvailableWidth = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(width - overflow[widthSide], maximumClippingWidth);\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if (isYAxis) {\n availableWidth = alignment || noShift ? (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;\n } else {\n availableHeight = alignment || noShift ? (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.min)(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.left, 0);\n const xMax = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.right, 0);\n const yMin = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.top, 0);\n const yMax = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_0__.max)(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvY29yZS9kaXN0L2Zsb2F0aW5nLXVpLmNvcmUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBc1U7QUFDaFI7O0FBRXREO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKLG1CQUFtQiwrREFBVztBQUM5Qix3QkFBd0Isb0VBQWdCO0FBQ3hDLHNCQUFzQixpRUFBYTtBQUNuQyxlQUFlLDJEQUFPO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVUsZ0VBQVk7QUFDdEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLDRCQUE0QjtBQUM5QztBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLEVBQUUsNERBQVE7QUFDZCx3QkFBd0Isb0VBQWdCO0FBQ3hDO0FBQ0E7QUFDQSw2QkFBNkIsb0VBQWdCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9FQUFnQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTSxFQUFFLDREQUFRO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixvRUFBZ0I7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUIsb0VBQWdCO0FBQ2pDLG1CQUFtQixpRUFBYTtBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsdURBQUc7QUFDMUIsdUJBQXVCLHVEQUFHOztBQUUxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHlEQUFLOztBQUV4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFEQUFxRCxnRUFBWTtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQSxDQUFDOztBQUVEO0FBQ0EsbUdBQW1HLGdFQUFZLHFFQUFxRSxnRUFBWSxvRUFBb0UsMkRBQU87QUFDM1E7QUFDQTtBQUNBLGFBQWEsZ0VBQVksOENBQThDLGlGQUE2QjtBQUNwRztBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QiwwREFBVTtBQUN0QztBQUNBO0FBQ0EsUUFBUSxFQUFFLDREQUFRO0FBQ2xCLDRFQUE0RSwwREFBVTtBQUN0RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIscUVBQWlCOztBQUU5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLDJEQUFPO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLGdFQUFZO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsTUFBTSxnRUFBWTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEVBQUUsNERBQVE7O0FBRWxCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLDJEQUFPO0FBQzFCLDhCQUE4QiwyREFBTztBQUNyQztBQUNBLHNHQUFzRyx3RUFBb0Isc0JBQXNCLHlFQUFxQjtBQUNySztBQUNBLG1DQUFtQyw2RUFBeUI7QUFDNUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHFFQUFpQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTzs7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUyxxREFBSztBQUNkO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBLFFBQVEsRUFBRSw0REFBUTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxlQUFlLHVEQUFHO0FBQ2xCLGVBQWUsdURBQUc7QUFDbEIsZUFBZSx1REFBRztBQUNsQixlQUFlLHVEQUFHO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isd0JBQXdCO0FBQzFDO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QixvRUFBZ0I7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUiwrQkFBK0IsS0FBSztBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEVBQUUsNERBQVE7QUFDbEI7QUFDQTtBQUNBLHVCQUF1QixvRUFBZ0I7QUFDdkMsNEJBQTRCLG9FQUFnQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLGNBQWMsK0RBQVc7QUFDekI7QUFDQTtBQUNBLDBCQUEwQiwyREFBTztBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLDJEQUFPO0FBQ3BDLDJCQUEyQix1REFBRztBQUM5QiwwQkFBMEIsdURBQUc7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0EsZUFBZSwyREFBTztBQUN0QixvQkFBb0IsZ0VBQVk7QUFDaEMscUJBQXFCLCtEQUFXO0FBQ2hDO0FBQ0E7QUFDQSxtQkFBbUIsNERBQVE7O0FBRTNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWM7QUFDZDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsUUFBUSxFQUFFLDREQUFRO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsK0RBQVcsQ0FBQywyREFBTztBQUMzQyx1QkFBdUIsbUVBQWU7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IseURBQUs7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLHlEQUFLO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVE7QUFDUjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsRUFBRSw0REFBUTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QiwrREFBVztBQUNuQyx1QkFBdUIsbUVBQWU7QUFDdEM7QUFDQTtBQUNBLHdCQUF3Qiw0REFBUTtBQUNoQztBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0RBQXNELDJEQUFPO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0Esd0JBQXdCO0FBQ3hCO0FBQ0EsUUFBUSxFQUFFLDREQUFRO0FBQ2xCO0FBQ0EsbUJBQW1CLDJEQUFPO0FBQzFCLHdCQUF3QixnRUFBWTtBQUNwQyxzQkFBc0IsK0RBQVc7QUFDakM7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyx1REFBRztBQUN6QyxxQ0FBcUMsdURBQUc7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnREFBZ0QsdURBQUc7QUFDbkQsUUFBUTtBQUNSLGlEQUFpRCx1REFBRztBQUNwRDtBQUNBO0FBQ0EscUJBQXFCLHVEQUFHO0FBQ3hCLHFCQUFxQix1REFBRztBQUN4QixxQkFBcUIsdURBQUc7QUFDeEIscUJBQXFCLHVEQUFHO0FBQ3hCO0FBQ0EsaUZBQWlGLHVEQUFHO0FBQ3BGLFVBQVU7QUFDVixtRkFBbUYsdURBQUc7QUFDdEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFc0giLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BmbG9hdGluZy11aS9jb3JlL2Rpc3QvZmxvYXRpbmctdWkuY29yZS5tanM/NDlhNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRTaWRlQXhpcywgZ2V0QWxpZ25tZW50QXhpcywgZ2V0QXhpc0xlbmd0aCwgZ2V0U2lkZSwgZ2V0QWxpZ25tZW50LCBldmFsdWF0ZSwgZ2V0UGFkZGluZ09iamVjdCwgcmVjdFRvQ2xpZW50UmVjdCwgbWluLCBjbGFtcCwgcGxhY2VtZW50cywgZ2V0QWxpZ25tZW50U2lkZXMsIGdldE9wcG9zaXRlQWxpZ25tZW50UGxhY2VtZW50LCBnZXRPcHBvc2l0ZVBsYWNlbWVudCwgZ2V0RXhwYW5kZWRQbGFjZW1lbnRzLCBnZXRPcHBvc2l0ZUF4aXNQbGFjZW1lbnRzLCBzaWRlcywgbWF4LCBnZXRPcHBvc2l0ZUF4aXMgfSBmcm9tICdAZmxvYXRpbmctdWkvdXRpbHMnO1xuZXhwb3J0IHsgcmVjdFRvQ2xpZW50UmVjdCB9IGZyb20gJ0BmbG9hdGluZy11aS91dGlscyc7XG5cbmZ1bmN0aW9uIGNvbXB1dGVDb29yZHNGcm9tUGxhY2VtZW50KF9yZWYsIHBsYWNlbWVudCwgcnRsKSB7XG4gIGxldCB7XG4gICAgcmVmZXJlbmNlLFxuICAgIGZsb2F0aW5nXG4gIH0gPSBfcmVmO1xuICBjb25zdCBzaWRlQXhpcyA9IGdldFNpZGVBeGlzKHBsYWNlbWVudCk7XG4gIGNvbnN0IGFsaWdubWVudEF4aXMgPSBnZXRBbGlnbm1lbnRBeGlzKHBsYWNlbWVudCk7XG4gIGNvbnN0IGFsaWduTGVuZ3RoID0gZ2V0QXhpc0xlbmd0aChhbGlnbm1lbnRBeGlzKTtcbiAgY29uc3Qgc2lkZSA9IGdldFNpZGUocGxhY2VtZW50KTtcbiAgY29uc3QgaXNWZXJ0aWNhbCA9IHNpZGVBeGlzID09PSAneSc7XG4gIGNvbnN0IGNvbW1vblggPSByZWZlcmVuY2UueCArIHJlZmVyZW5jZS53aWR0aCAvIDIgLSBmbG9hdGluZy53aWR0aCAvIDI7XG4gIGNvbnN0IGNvbW1vblkgPSByZWZlcmVuY2UueSArIHJlZmVyZW5jZS5oZWlnaHQgLyAyIC0gZmxvYXRpbmcuaGVpZ2h0IC8gMjtcbiAgY29uc3QgY29tbW9uQWxpZ24gPSByZWZlcmVuY2VbYWxpZ25MZW5ndGhdIC8gMiAtIGZsb2F0aW5nW2FsaWduTGVuZ3RoXSAvIDI7XG4gIGxldCBjb29yZHM7XG4gIHN3aXRjaCAoc2lkZSkge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgICBjb29yZHMgPSB7XG4gICAgICAgIHg6IGNvbW1vblgsXG4gICAgICAgIHk6IHJlZmVyZW5jZS55IC0gZmxvYXRpbmcuaGVpZ2h0XG4gICAgICB9O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnYm90dG9tJzpcbiAgICAgIGNvb3JkcyA9IHtcbiAgICAgICAgeDogY29tbW9uWCxcbiAgICAgICAgeTogcmVmZXJlbmNlLnkgKyByZWZlcmVuY2UuaGVpZ2h0XG4gICAgICB9O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAncmlnaHQnOlxuICAgICAgY29vcmRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCArIHJlZmVyZW5jZS53aWR0aCxcbiAgICAgICAgeTogY29tbW9uWVxuICAgICAgfTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgY29vcmRzID0ge1xuICAgICAgICB4OiByZWZlcmVuY2UueCAtIGZsb2F0aW5nLndpZHRoLFxuICAgICAgICB5OiBjb21tb25ZXG4gICAgICB9O1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIGNvb3JkcyA9IHtcbiAgICAgICAgeDogcmVmZXJlbmNlLngsXG4gICAgICAgIHk6IHJlZmVyZW5jZS55XG4gICAgICB9O1xuICB9XG4gIHN3aXRjaCAoZ2V0QWxpZ25tZW50KHBsYWNlbWVudCkpIHtcbiAgICBjYXNlICdzdGFydCc6XG4gICAgICBjb29yZHNbYWxpZ25tZW50QXhpc10gLT0gY29tbW9uQWxpZ24gKiAocnRsICYmIGlzVmVydGljYWwgPyAtMSA6IDEpO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnZW5kJzpcbiAgICAgIGNvb3Jkc1thbGlnbm1lbnRBeGlzXSArPSBjb21tb25BbGlnbiAqIChydGwgJiYgaXNWZXJ0aWNhbCA/IC0xIDogMSk7XG4gICAgICBicmVhaztcbiAgfVxuICByZXR1cm4gY29vcmRzO1xufVxuXG4vKipcbiAqIENvbXB1dGVzIHRoZSBgeGAgYW5kIGB5YCBjb29yZGluYXRlcyB0aGF0IHdpbGwgcGxhY2UgdGhlIGZsb2F0aW5nIGVsZW1lbnRcbiAqIG5leHQgdG8gYSBnaXZlbiByZWZlcmVuY2UgZWxlbWVudC5cbiAqXG4gKiBUaGlzIGV4cG9ydCBkb2VzIG5vdCBoYXZlIGFueSBgcGxhdGZvcm1gIGludGVyZmFjZSBsb2dpYy4gWW91IHdpbGwgbmVlZCB0b1xuICogd3JpdGUgb25lIGZvciB0aGUgcGxhdGZvcm0geW91IGFyZSB1c2luZyBGbG9hdGluZyBVSSB3aXRoLlxuICovXG5jb25zdCBjb21wdXRlUG9zaXRpb24gPSBhc3luYyAocmVmZXJlbmNlLCBmbG9hdGluZywgY29uZmlnKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBwbGFjZW1lbnQgPSAnYm90dG9tJyxcbiAgICBzdHJhdGVneSA9ICdhYnNvbHV0ZScsXG4gICAgbWlkZGxld2FyZSA9IFtdLFxuICAgIHBsYXRmb3JtXG4gIH0gPSBjb25maWc7XG4gIGNvbnN0IHZhbGlkTWlkZGxld2FyZSA9IG1pZGRsZXdhcmUuZmlsdGVyKEJvb2xlYW4pO1xuICBjb25zdCBydGwgPSBhd2FpdCAocGxhdGZvcm0uaXNSVEwgPT0gbnVsbCA/IHZvaWQgMCA6IHBsYXRmb3JtLmlzUlRMKGZsb2F0aW5nKSk7XG4gIGxldCByZWN0cyA9IGF3YWl0IHBsYXRmb3JtLmdldEVsZW1lbnRSZWN0cyh7XG4gICAgcmVmZXJlbmNlLFxuICAgIGZsb2F0aW5nLFxuICAgIHN0cmF0ZWd5XG4gIH0pO1xuICBsZXQge1xuICAgIHgsXG4gICAgeVxuICB9ID0gY29tcHV0ZUNvb3Jkc0Zyb21QbGFjZW1lbnQocmVjdHMsIHBsYWNlbWVudCwgcnRsKTtcbiAgbGV0IHN0YXRlZnVsUGxhY2VtZW50ID0gcGxhY2VtZW50O1xuICBsZXQgbWlkZGxld2FyZURhdGEgPSB7fTtcbiAgbGV0IHJlc2V0Q291bnQgPSAwO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbGlkTWlkZGxld2FyZS5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IHtcbiAgICAgIG5hbWUsXG4gICAgICBmblxuICAgIH0gPSB2YWxpZE1pZGRsZXdhcmVbaV07XG4gICAgY29uc3Qge1xuICAgICAgeDogbmV4dFgsXG4gICAgICB5OiBuZXh0WSxcbiAgICAgIGRhdGEsXG4gICAgICByZXNldFxuICAgIH0gPSBhd2FpdCBmbih7XG4gICAgICB4LFxuICAgICAgeSxcbiAgICAgIGluaXRpYWxQbGFjZW1lbnQ6IHBsYWNlbWVudCxcbiAgICAgIHBsYWNlbWVudDogc3RhdGVmdWxQbGFjZW1lbnQsXG4gICAgICBzdHJhdGVneSxcbiAgICAgIG1pZGRsZXdhcmVEYXRhLFxuICAgICAgcmVjdHMsXG4gICAgICBwbGF0Zm9ybSxcbiAgICAgIGVsZW1lbnRzOiB7XG4gICAgICAgIHJlZmVyZW5jZSxcbiAgICAgICAgZmxvYXRpbmdcbiAgICAgIH1cbiAgICB9KTtcbiAgICB4ID0gbmV4dFggIT0gbnVsbCA/IG5leHRYIDogeDtcbiAgICB5ID0gbmV4dFkgIT0gbnVsbCA/IG5leHRZIDogeTtcbiAgICBtaWRkbGV3YXJlRGF0YSA9IHtcbiAgICAgIC4uLm1pZGRsZXdhcmVEYXRhLFxuICAgICAgW25hbWVdOiB7XG4gICAgICAgIC4uLm1pZGRsZXdhcmVEYXRhW25hbWVdLFxuICAgICAgICAuLi5kYXRhXG4gICAgICB9XG4gICAgfTtcbiAgICBpZiAocmVzZXQgJiYgcmVzZXRDb3VudCA8PSA1MCkge1xuICAgICAgcmVzZXRDb3VudCsrO1xuICAgICAgaWYgKHR5cGVvZiByZXNldCA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgaWYgKHJlc2V0LnBsYWNlbWVudCkge1xuICAgICAgICAgIHN0YXRlZnVsUGxhY2VtZW50ID0gcmVzZXQucGxhY2VtZW50O1xuICAgICAgICB9XG4gICAgICAgIGlmIChyZXNldC5yZWN0cykge1xuICAgICAgICAgIHJlY3RzID0gcmVzZXQucmVjdHMgPT09IHRydWUgPyBhd2FpdCBwbGF0Zm9ybS5nZXRFbGVtZW50UmVjdHMoe1xuICAgICAgICAgICAgcmVmZXJlbmNlLFxuICAgICAgICAgICAgZmxvYXRpbmcsXG4gICAgICAgICAgICBzdHJhdGVneVxuICAgICAgICAgIH0pIDogcmVzZXQucmVjdHM7XG4gICAgICAgIH1cbiAgICAgICAgKHtcbiAgICAgICAgICB4LFxuICAgICAgICAgIHlcbiAgICAgICAgfSA9IGNvbXB1dGVDb29yZHNGcm9tUGxhY2VtZW50KHJlY3RzLCBzdGF0ZWZ1bFBsYWNlbWVudCwgcnRsKSk7XG4gICAgICB9XG4gICAgICBpID0gLTE7XG4gICAgfVxuICB9XG4gIHJldHVybiB7XG4gICAgeCxcbiAgICB5LFxuICAgIHBsYWNlbWVudDogc3RhdGVmdWxQbGFjZW1lbnQsXG4gICAgc3RyYXRlZ3ksXG4gICAgbWlkZGxld2FyZURhdGFcbiAgfTtcbn07XG5cbi8qKlxuICogUmVzb2x2ZXMgd2l0aCBhbiBvYmplY3Qgb2Ygb3ZlcmZsb3cgc2lkZSBvZmZzZXRzIHRoYXQgZGV0ZXJtaW5lIGhvdyBtdWNoIHRoZVxuICogZWxlbWVudCBpcyBvdmVyZmxvd2luZyBhIGdpdmVuIGNsaXBwaW5nIGJvdW5kYXJ5IG9uIGVhY2ggc2lkZS5cbiAqIC0gcG9zaXRpdmUgPSBvdmVyZmxvd2luZyB0aGUgYm91bmRhcnkgYnkgdGhhdCBudW1iZXIgb2YgcGl4ZWxzXG4gKiAtIG5lZ2F0aXZlID0gaG93IG1hbnkgcGl4ZWxzIGxlZnQgYmVmb3JlIGl0IHdpbGwgb3ZlcmZsb3dcbiAqIC0gMCA9IGxpZXMgZmx1c2ggd2l0aCB0aGUgYm91bmRhcnlcbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9kZXRlY3RPdmVyZmxvd1xuICovXG5hc3luYyBmdW5jdGlvbiBkZXRlY3RPdmVyZmxvdyhzdGF0ZSwgb3B0aW9ucykge1xuICB2YXIgX2F3YWl0JHBsYXRmb3JtJGlzRWxlO1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIGNvbnN0IHtcbiAgICB4LFxuICAgIHksXG4gICAgcGxhdGZvcm0sXG4gICAgcmVjdHMsXG4gICAgZWxlbWVudHMsXG4gICAgc3RyYXRlZ3lcbiAgfSA9IHN0YXRlO1xuICBjb25zdCB7XG4gICAgYm91bmRhcnkgPSAnY2xpcHBpbmdBbmNlc3RvcnMnLFxuICAgIHJvb3RCb3VuZGFyeSA9ICd2aWV3cG9ydCcsXG4gICAgZWxlbWVudENvbnRleHQgPSAnZmxvYXRpbmcnLFxuICAgIGFsdEJvdW5kYXJ5ID0gZmFsc2UsXG4gICAgcGFkZGluZyA9IDBcbiAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKTtcbiAgY29uc3QgcGFkZGluZ09iamVjdCA9IGdldFBhZGRpbmdPYmplY3QocGFkZGluZyk7XG4gIGNvbnN0IGFsdENvbnRleHQgPSBlbGVtZW50Q29udGV4dCA9PT0gJ2Zsb2F0aW5nJyA/ICdyZWZlcmVuY2UnIDogJ2Zsb2F0aW5nJztcbiAgY29uc3QgZWxlbWVudCA9IGVsZW1lbnRzW2FsdEJvdW5kYXJ5ID8gYWx0Q29udGV4dCA6IGVsZW1lbnRDb250ZXh0XTtcbiAgY29uc3QgY2xpcHBpbmdDbGllbnRSZWN0ID0gcmVjdFRvQ2xpZW50UmVjdChhd2FpdCBwbGF0Zm9ybS5nZXRDbGlwcGluZ1JlY3Qoe1xuICAgIGVsZW1lbnQ6ICgoX2F3YWl0JHBsYXRmb3JtJGlzRWxlID0gYXdhaXQgKHBsYXRmb3JtLmlzRWxlbWVudCA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uaXNFbGVtZW50KGVsZW1lbnQpKSkgIT0gbnVsbCA/IF9hd2FpdCRwbGF0Zm9ybSRpc0VsZSA6IHRydWUpID8gZWxlbWVudCA6IGVsZW1lbnQuY29udGV4dEVsZW1lbnQgfHwgKGF3YWl0IChwbGF0Zm9ybS5nZXREb2N1bWVudEVsZW1lbnQgPT0gbnVsbCA/IHZvaWQgMCA6IHBsYXRmb3JtLmdldERvY3VtZW50RWxlbWVudChlbGVtZW50cy5mbG9hdGluZykpKSxcbiAgICBib3VuZGFyeSxcbiAgICByb290Qm91bmRhcnksXG4gICAgc3RyYXRlZ3lcbiAgfSkpO1xuICBjb25zdCByZWN0ID0gZWxlbWVudENvbnRleHQgPT09ICdmbG9hdGluZycgPyB7XG4gICAgeCxcbiAgICB5LFxuICAgIHdpZHRoOiByZWN0cy5mbG9hdGluZy53aWR0aCxcbiAgICBoZWlnaHQ6IHJlY3RzLmZsb2F0aW5nLmhlaWdodFxuICB9IDogcmVjdHMucmVmZXJlbmNlO1xuICBjb25zdCBvZmZzZXRQYXJlbnQgPSBhd2FpdCAocGxhdGZvcm0uZ2V0T2Zmc2V0UGFyZW50ID09IG51bGwgPyB2b2lkIDAgOiBwbGF0Zm9ybS5nZXRPZmZzZXRQYXJlbnQoZWxlbWVudHMuZmxvYXRpbmcpKTtcbiAgY29uc3Qgb2Zmc2V0U2NhbGUgPSAoYXdhaXQgKHBsYXRmb3JtLmlzRWxlbWVudCA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uaXNFbGVtZW50KG9mZnNldFBhcmVudCkpKSA/IChhd2FpdCAocGxhdGZvcm0uZ2V0U2NhbGUgPT0gbnVsbCA/IHZvaWQgMCA6IHBsYXRmb3JtLmdldFNjYWxlKG9mZnNldFBhcmVudCkpKSB8fCB7XG4gICAgeDogMSxcbiAgICB5OiAxXG4gIH0gOiB7XG4gICAgeDogMSxcbiAgICB5OiAxXG4gIH07XG4gIGNvbnN0IGVsZW1lbnRDbGllbnRSZWN0ID0gcmVjdFRvQ2xpZW50UmVjdChwbGF0Zm9ybS5jb252ZXJ0T2Zmc2V0UGFyZW50UmVsYXRpdmVSZWN0VG9WaWV3cG9ydFJlbGF0aXZlUmVjdCA/IGF3YWl0IHBsYXRmb3JtLmNvbnZlcnRPZmZzZXRQYXJlbnRSZWxhdGl2ZVJlY3RUb1ZpZXdwb3J0UmVsYXRpdmVSZWN0KHtcbiAgICBlbGVtZW50cyxcbiAgICByZWN0LFxuICAgIG9mZnNldFBhcmVudCxcbiAgICBzdHJhdGVneVxuICB9KSA6IHJlY3QpO1xuICByZXR1cm4ge1xuICAgIHRvcDogKGNsaXBwaW5nQ2xpZW50UmVjdC50b3AgLSBlbGVtZW50Q2xpZW50UmVjdC50b3AgKyBwYWRkaW5nT2JqZWN0LnRvcCkgLyBvZmZzZXRTY2FsZS55LFxuICAgIGJvdHRvbTogKGVsZW1lbnRDbGllbnRSZWN0LmJvdHRvbSAtIGNsaXBwaW5nQ2xpZW50UmVjdC5ib3R0b20gKyBwYWRkaW5nT2JqZWN0LmJvdHRvbSkgLyBvZmZzZXRTY2FsZS55LFxuICAgIGxlZnQ6IChjbGlwcGluZ0NsaWVudFJlY3QubGVmdCAtIGVsZW1lbnRDbGllbnRSZWN0LmxlZnQgKyBwYWRkaW5nT2JqZWN0LmxlZnQpIC8gb2Zmc2V0U2NhbGUueCxcbiAgICByaWdodDogKGVsZW1lbnRDbGllbnRSZWN0LnJpZ2h0IC0gY2xpcHBpbmdDbGllbnRSZWN0LnJpZ2h0ICsgcGFkZGluZ09iamVjdC5yaWdodCkgLyBvZmZzZXRTY2FsZS54XG4gIH07XG59XG5cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0byBwb3NpdGlvbiBhbiBpbm5lciBlbGVtZW50IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IHNvIHRoYXQgaXRcbiAqIGFwcGVhcnMgY2VudGVyZWQgdG8gdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2Fycm93XG4gKi9cbmNvbnN0IGFycm93ID0gb3B0aW9ucyA9PiAoe1xuICBuYW1lOiAnYXJyb3cnLFxuICBvcHRpb25zLFxuICBhc3luYyBmbihzdGF0ZSkge1xuICAgIGNvbnN0IHtcbiAgICAgIHgsXG4gICAgICB5LFxuICAgICAgcGxhY2VtZW50LFxuICAgICAgcmVjdHMsXG4gICAgICBwbGF0Zm9ybSxcbiAgICAgIGVsZW1lbnRzLFxuICAgICAgbWlkZGxld2FyZURhdGFcbiAgICB9ID0gc3RhdGU7XG4gICAgLy8gU2luY2UgYGVsZW1lbnRgIGlzIHJlcXVpcmVkLCB3ZSBkb24ndCBQYXJ0aWFsPD4gdGhlIHR5cGUuXG4gICAgY29uc3Qge1xuICAgICAgZWxlbWVudCxcbiAgICAgIHBhZGRpbmcgPSAwXG4gICAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKSB8fCB7fTtcbiAgICBpZiAoZWxlbWVudCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IHBhZGRpbmdPYmplY3QgPSBnZXRQYWRkaW5nT2JqZWN0KHBhZGRpbmcpO1xuICAgIGNvbnN0IGNvb3JkcyA9IHtcbiAgICAgIHgsXG4gICAgICB5XG4gICAgfTtcbiAgICBjb25zdCBheGlzID0gZ2V0QWxpZ25tZW50QXhpcyhwbGFjZW1lbnQpO1xuICAgIGNvbnN0IGxlbmd0aCA9IGdldEF4aXNMZW5ndGgoYXhpcyk7XG4gICAgY29uc3QgYXJyb3dEaW1lbnNpb25zID0gYXdhaXQgcGxhdGZvcm0uZ2V0RGltZW5zaW9ucyhlbGVtZW50KTtcbiAgICBjb25zdCBpc1lBeGlzID0gYXhpcyA9PT0gJ3knO1xuICAgIGNvbnN0IG1pblByb3AgPSBpc1lBeGlzID8gJ3RvcCcgOiAnbGVmdCc7XG4gICAgY29uc3QgbWF4UHJvcCA9IGlzWUF4aXMgPyAnYm90dG9tJyA6ICdyaWdodCc7XG4gICAgY29uc3QgY2xpZW50UHJvcCA9IGlzWUF4aXMgPyAnY2xpZW50SGVpZ2h0JyA6ICdjbGllbnRXaWR0aCc7XG4gICAgY29uc3QgZW5kRGlmZiA9IHJlY3RzLnJlZmVyZW5jZVtsZW5ndGhdICsgcmVjdHMucmVmZXJlbmNlW2F4aXNdIC0gY29vcmRzW2F4aXNdIC0gcmVjdHMuZmxvYXRpbmdbbGVuZ3RoXTtcbiAgICBjb25zdCBzdGFydERpZmYgPSBjb29yZHNbYXhpc10gLSByZWN0cy5yZWZlcmVuY2VbYXhpc107XG4gICAgY29uc3QgYXJyb3dPZmZzZXRQYXJlbnQgPSBhd2FpdCAocGxhdGZvcm0uZ2V0T2Zmc2V0UGFyZW50ID09IG51bGwgPyB2b2lkIDAgOiBwbGF0Zm9ybS5nZXRPZmZzZXRQYXJlbnQoZWxlbWVudCkpO1xuICAgIGxldCBjbGllbnRTaXplID0gYXJyb3dPZmZzZXRQYXJlbnQgPyBhcnJvd09mZnNldFBhcmVudFtjbGllbnRQcm9wXSA6IDA7XG5cbiAgICAvLyBET00gcGxhdGZvcm0gY2FuIHJldHVybiBgd2luZG93YCBhcyB0aGUgYG9mZnNldFBhcmVudGAuXG4gICAgaWYgKCFjbGllbnRTaXplIHx8ICEoYXdhaXQgKHBsYXRmb3JtLmlzRWxlbWVudCA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uaXNFbGVtZW50KGFycm93T2Zmc2V0UGFyZW50KSkpKSB7XG4gICAgICBjbGllbnRTaXplID0gZWxlbWVudHMuZmxvYXRpbmdbY2xpZW50UHJvcF0gfHwgcmVjdHMuZmxvYXRpbmdbbGVuZ3RoXTtcbiAgICB9XG4gICAgY29uc3QgY2VudGVyVG9SZWZlcmVuY2UgPSBlbmREaWZmIC8gMiAtIHN0YXJ0RGlmZiAvIDI7XG5cbiAgICAvLyBJZiB0aGUgcGFkZGluZyBpcyBsYXJnZSBlbm91Z2ggdGhhdCBpdCBjYXVzZXMgdGhlIGFycm93IHRvIG5vIGxvbmdlciBiZVxuICAgIC8vIGNlbnRlcmVkLCBtb2RpZnkgdGhlIHBhZGRpbmcgc28gdGhhdCBpdCBpcyBjZW50ZXJlZC5cbiAgICBjb25zdCBsYXJnZXN0UG9zc2libGVQYWRkaW5nID0gY2xpZW50U2l6ZSAvIDIgLSBhcnJvd0RpbWVuc2lvbnNbbGVuZ3RoXSAvIDIgLSAxO1xuICAgIGNvbnN0IG1pblBhZGRpbmcgPSBtaW4ocGFkZGluZ09iamVjdFttaW5Qcm9wXSwgbGFyZ2VzdFBvc3NpYmxlUGFkZGluZyk7XG4gICAgY29uc3QgbWF4UGFkZGluZyA9IG1pbihwYWRkaW5nT2JqZWN0W21heFByb3BdLCBsYXJnZXN0UG9zc2libGVQYWRkaW5nKTtcblxuICAgIC8vIE1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lc24ndCBvdmVyZmxvdyB0aGUgZmxvYXRpbmcgZWxlbWVudCBpZiB0aGUgY2VudGVyXG4gICAgLy8gcG9pbnQgaXMgb3V0c2lkZSB0aGUgZmxvYXRpbmcgZWxlbWVudCdzIGJvdW5kcy5cbiAgICBjb25zdCBtaW4kMSA9IG1pblBhZGRpbmc7XG4gICAgY29uc3QgbWF4ID0gY2xpZW50U2l6ZSAtIGFycm93RGltZW5zaW9uc1tsZW5ndGhdIC0gbWF4UGFkZGluZztcbiAgICBjb25zdCBjZW50ZXIgPSBjbGllbnRTaXplIC8gMiAtIGFycm93RGltZW5zaW9uc1tsZW5ndGhdIC8gMiArIGNlbnRlclRvUmVmZXJlbmNlO1xuICAgIGNvbnN0IG9mZnNldCA9IGNsYW1wKG1pbiQxLCBjZW50ZXIsIG1heCk7XG5cbiAgICAvLyBJZiB0aGUgcmVmZXJlbmNlIGlzIHNtYWxsIGVub3VnaCB0aGF0IHRoZSBhcnJvdydzIHBhZGRpbmcgY2F1c2VzIGl0IHRvXG4gICAgLy8gdG8gcG9pbnQgdG8gbm90aGluZyBmb3IgYW4gYWxpZ25lZCBwbGFjZW1lbnQsIGFkanVzdCB0aGUgb2Zmc2V0IG9mIHRoZVxuICAgIC8vIGZsb2F0aW5nIGVsZW1lbnQgaXRzZWxmLiBUbyBlbnN1cmUgYHNoaWZ0KClgIGNvbnRpbnVlcyB0byB0YWtlIGFjdGlvbixcbiAgICAvLyBhIHNpbmdsZSByZXNldCBpcyBwZXJmb3JtZWQgd2hlbiB0aGlzIGlzIHRydWUuXG4gICAgY29uc3Qgc2hvdWxkQWRkT2Zmc2V0ID0gIW1pZGRsZXdhcmVEYXRhLmFycm93ICYmIGdldEFsaWdubWVudChwbGFjZW1lbnQpICE9IG51bGwgJiYgY2VudGVyICE9PSBvZmZzZXQgJiYgcmVjdHMucmVmZXJlbmNlW2xlbmd0aF0gLyAyIC0gKGNlbnRlciA8IG1pbiQxID8gbWluUGFkZGluZyA6IG1heFBhZGRpbmcpIC0gYXJyb3dEaW1lbnNpb25zW2xlbmd0aF0gLyAyIDwgMDtcbiAgICBjb25zdCBhbGlnbm1lbnRPZmZzZXQgPSBzaG91bGRBZGRPZmZzZXQgPyBjZW50ZXIgPCBtaW4kMSA/IGNlbnRlciAtIG1pbiQxIDogY2VudGVyIC0gbWF4IDogMDtcbiAgICByZXR1cm4ge1xuICAgICAgW2F4aXNdOiBjb29yZHNbYXhpc10gKyBhbGlnbm1lbnRPZmZzZXQsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIFtheGlzXTogb2Zmc2V0LFxuICAgICAgICBjZW50ZXJPZmZzZXQ6IGNlbnRlciAtIG9mZnNldCAtIGFsaWdubWVudE9mZnNldCxcbiAgICAgICAgLi4uKHNob3VsZEFkZE9mZnNldCAmJiB7XG4gICAgICAgICAgYWxpZ25tZW50T2Zmc2V0XG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgcmVzZXQ6IHNob3VsZEFkZE9mZnNldFxuICAgIH07XG4gIH1cbn0pO1xuXG5mdW5jdGlvbiBnZXRQbGFjZW1lbnRMaXN0KGFsaWdubWVudCwgYXV0b0FsaWdubWVudCwgYWxsb3dlZFBsYWNlbWVudHMpIHtcbiAgY29uc3QgYWxsb3dlZFBsYWNlbWVudHNTb3J0ZWRCeUFsaWdubWVudCA9IGFsaWdubWVudCA/IFsuLi5hbGxvd2VkUGxhY2VtZW50cy5maWx0ZXIocGxhY2VtZW50ID0+IGdldEFsaWdubWVudChwbGFjZW1lbnQpID09PSBhbGlnbm1lbnQpLCAuLi5hbGxvd2VkUGxhY2VtZW50cy5maWx0ZXIocGxhY2VtZW50ID0+IGdldEFsaWdubWVudChwbGFjZW1lbnQpICE9PSBhbGlnbm1lbnQpXSA6IGFsbG93ZWRQbGFjZW1lbnRzLmZpbHRlcihwbGFjZW1lbnQgPT4gZ2V0U2lkZShwbGFjZW1lbnQpID09PSBwbGFjZW1lbnQpO1xuICByZXR1cm4gYWxsb3dlZFBsYWNlbWVudHNTb3J0ZWRCeUFsaWdubWVudC5maWx0ZXIocGxhY2VtZW50ID0+IHtcbiAgICBpZiAoYWxpZ25tZW50KSB7XG4gICAgICByZXR1cm4gZ2V0QWxpZ25tZW50KHBsYWNlbWVudCkgPT09IGFsaWdubWVudCB8fCAoYXV0b0FsaWdubWVudCA/IGdldE9wcG9zaXRlQWxpZ25tZW50UGxhY2VtZW50KHBsYWNlbWVudCkgIT09IHBsYWNlbWVudCA6IGZhbHNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH0pO1xufVxuLyoqXG4gKiBPcHRpbWl6ZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGZsb2F0aW5nIGVsZW1lbnQgYnkgY2hvb3NpbmcgdGhlIHBsYWNlbWVudFxuICogdGhhdCBoYXMgdGhlIG1vc3Qgc3BhY2UgYXZhaWxhYmxlIGF1dG9tYXRpY2FsbHksIHdpdGhvdXQgbmVlZGluZyB0byBzcGVjaWZ5IGFcbiAqIHByZWZlcnJlZCBwbGFjZW1lbnQuIEFsdGVybmF0aXZlIHRvIGBmbGlwYC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9hdXRvUGxhY2VtZW50XG4gKi9cbmNvbnN0IGF1dG9QbGFjZW1lbnQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ2F1dG9QbGFjZW1lbnQnLFxuICAgIG9wdGlvbnMsXG4gICAgYXN5bmMgZm4oc3RhdGUpIHtcbiAgICAgIHZhciBfbWlkZGxld2FyZURhdGEkYXV0b1AsIF9taWRkbGV3YXJlRGF0YSRhdXRvUDIsIF9wbGFjZW1lbnRzVGhhdEZpdE9uRTtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcmVjdHMsXG4gICAgICAgIG1pZGRsZXdhcmVEYXRhLFxuICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgIHBsYXRmb3JtLFxuICAgICAgICBlbGVtZW50c1xuICAgICAgfSA9IHN0YXRlO1xuICAgICAgY29uc3Qge1xuICAgICAgICBjcm9zc0F4aXMgPSBmYWxzZSxcbiAgICAgICAgYWxpZ25tZW50LFxuICAgICAgICBhbGxvd2VkUGxhY2VtZW50cyA9IHBsYWNlbWVudHMsXG4gICAgICAgIGF1dG9BbGlnbm1lbnQgPSB0cnVlLFxuICAgICAgICAuLi5kZXRlY3RPdmVyZmxvd09wdGlvbnNcbiAgICAgIH0gPSBldmFsdWF0ZShvcHRpb25zLCBzdGF0ZSk7XG4gICAgICBjb25zdCBwbGFjZW1lbnRzJDEgPSBhbGlnbm1lbnQgIT09IHVuZGVmaW5lZCB8fCBhbGxvd2VkUGxhY2VtZW50cyA9PT0gcGxhY2VtZW50cyA/IGdldFBsYWNlbWVudExpc3QoYWxpZ25tZW50IHx8IG51bGwsIGF1dG9BbGlnbm1lbnQsIGFsbG93ZWRQbGFjZW1lbnRzKSA6IGFsbG93ZWRQbGFjZW1lbnRzO1xuICAgICAgY29uc3Qgb3ZlcmZsb3cgPSBhd2FpdCBkZXRlY3RPdmVyZmxvdyhzdGF0ZSwgZGV0ZWN0T3ZlcmZsb3dPcHRpb25zKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9ICgoX21pZGRsZXdhcmVEYXRhJGF1dG9QID0gbWlkZGxld2FyZURhdGEuYXV0b1BsYWNlbWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9taWRkbGV3YXJlRGF0YSRhdXRvUC5pbmRleCkgfHwgMDtcbiAgICAgIGNvbnN0IGN1cnJlbnRQbGFjZW1lbnQgPSBwbGFjZW1lbnRzJDFbY3VycmVudEluZGV4XTtcbiAgICAgIGlmIChjdXJyZW50UGxhY2VtZW50ID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgfVxuICAgICAgY29uc3QgYWxpZ25tZW50U2lkZXMgPSBnZXRBbGlnbm1lbnRTaWRlcyhjdXJyZW50UGxhY2VtZW50LCByZWN0cywgYXdhaXQgKHBsYXRmb3JtLmlzUlRMID09IG51bGwgPyB2b2lkIDAgOiBwbGF0Zm9ybS5pc1JUTChlbGVtZW50cy5mbG9hdGluZykpKTtcblxuICAgICAgLy8gTWFrZSBgY29tcHV0ZUNvb3Jkc2Agc3RhcnQgZnJvbSB0aGUgcmlnaHQgcGxhY2UuXG4gICAgICBpZiAocGxhY2VtZW50ICE9PSBjdXJyZW50UGxhY2VtZW50KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVzZXQ6IHtcbiAgICAgICAgICAgIHBsYWNlbWVudDogcGxhY2VtZW50cyQxWzBdXG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3QgY3VycmVudE92ZXJmbG93cyA9IFtvdmVyZmxvd1tnZXRTaWRlKGN1cnJlbnRQbGFjZW1lbnQpXSwgb3ZlcmZsb3dbYWxpZ25tZW50U2lkZXNbMF1dLCBvdmVyZmxvd1thbGlnbm1lbnRTaWRlc1sxXV1dO1xuICAgICAgY29uc3QgYWxsT3ZlcmZsb3dzID0gWy4uLigoKF9taWRkbGV3YXJlRGF0YSRhdXRvUDIgPSBtaWRkbGV3YXJlRGF0YS5hdXRvUGxhY2VtZW50KSA9PSBudWxsID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJGF1dG9QMi5vdmVyZmxvd3MpIHx8IFtdKSwge1xuICAgICAgICBwbGFjZW1lbnQ6IGN1cnJlbnRQbGFjZW1lbnQsXG4gICAgICAgIG92ZXJmbG93czogY3VycmVudE92ZXJmbG93c1xuICAgICAgfV07XG4gICAgICBjb25zdCBuZXh0UGxhY2VtZW50ID0gcGxhY2VtZW50cyQxW2N1cnJlbnRJbmRleCArIDFdO1xuXG4gICAgICAvLyBUaGVyZSBhcmUgbW9yZSBwbGFjZW1lbnRzIHRvIGNoZWNrLlxuICAgICAgaWYgKG5leHRQbGFjZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBpbmRleDogY3VycmVudEluZGV4ICsgMSxcbiAgICAgICAgICAgIG92ZXJmbG93czogYWxsT3ZlcmZsb3dzXG4gICAgICAgICAgfSxcbiAgICAgICAgICByZXNldDoge1xuICAgICAgICAgICAgcGxhY2VtZW50OiBuZXh0UGxhY2VtZW50XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3QgcGxhY2VtZW50c1NvcnRlZEJ5TW9zdFNwYWNlID0gYWxsT3ZlcmZsb3dzLm1hcChkID0+IHtcbiAgICAgICAgY29uc3QgYWxpZ25tZW50ID0gZ2V0QWxpZ25tZW50KGQucGxhY2VtZW50KTtcbiAgICAgICAgcmV0dXJuIFtkLnBsYWNlbWVudCwgYWxpZ25tZW50ICYmIGNyb3NzQXhpcyA/XG4gICAgICAgIC8vIENoZWNrIGFsb25nIHRoZSBtYWluQXhpcyBhbmQgbWFpbiBjcm9zc0F4aXMgc2lkZS5cbiAgICAgICAgZC5vdmVyZmxvd3Muc2xpY2UoMCwgMikucmVkdWNlKChhY2MsIHYpID0+IGFjYyArIHYsIDApIDpcbiAgICAgICAgLy8gQ2hlY2sgb25seSB0aGUgbWFpbkF4aXMuXG4gICAgICAgIGQub3ZlcmZsb3dzWzBdLCBkLm92ZXJmbG93c107XG4gICAgICB9KS5zb3J0KChhLCBiKSA9PiBhWzFdIC0gYlsxXSk7XG4gICAgICBjb25zdCBwbGFjZW1lbnRzVGhhdEZpdE9uRWFjaFNpZGUgPSBwbGFjZW1lbnRzU29ydGVkQnlNb3N0U3BhY2UuZmlsdGVyKGQgPT4gZFsyXS5zbGljZSgwLFxuICAgICAgLy8gQWxpZ25lZCBwbGFjZW1lbnRzIHNob3VsZCBub3QgY2hlY2sgdGhlaXIgb3Bwb3NpdGUgY3Jvc3NBeGlzXG4gICAgICAvLyBzaWRlLlxuICAgICAgZ2V0QWxpZ25tZW50KGRbMF0pID8gMiA6IDMpLmV2ZXJ5KHYgPT4gdiA8PSAwKSk7XG4gICAgICBjb25zdCByZXNldFBsYWNlbWVudCA9ICgoX3BsYWNlbWVudHNUaGF0Rml0T25FID0gcGxhY2VtZW50c1RoYXRGaXRPbkVhY2hTaWRlWzBdKSA9PSBudWxsID8gdm9pZCAwIDogX3BsYWNlbWVudHNUaGF0Rml0T25FWzBdKSB8fCBwbGFjZW1lbnRzU29ydGVkQnlNb3N0U3BhY2VbMF1bMF07XG4gICAgICBpZiAocmVzZXRQbGFjZW1lbnQgIT09IHBsYWNlbWVudCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGluZGV4OiBjdXJyZW50SW5kZXggKyAxLFxuICAgICAgICAgICAgb3ZlcmZsb3dzOiBhbGxPdmVyZmxvd3NcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlc2V0OiB7XG4gICAgICAgICAgICBwbGFjZW1lbnQ6IHJlc2V0UGxhY2VtZW50XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgfTtcbn07XG5cbi8qKlxuICogT3B0aW1pemVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IGJ5IGZsaXBwaW5nIHRoZSBgcGxhY2VtZW50YFxuICogaW4gb3JkZXIgdG8ga2VlcCBpdCBpbiB2aWV3IHdoZW4gdGhlIHByZWZlcnJlZCBwbGFjZW1lbnQocykgd2lsbCBvdmVyZmxvdyB0aGVcbiAqIGNsaXBwaW5nIGJvdW5kYXJ5LiBBbHRlcm5hdGl2ZSB0byBgYXV0b1BsYWNlbWVudGAuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvZmxpcFxuICovXG5jb25zdCBmbGlwID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdmbGlwJyxcbiAgICBvcHRpb25zLFxuICAgIGFzeW5jIGZuKHN0YXRlKSB7XG4gICAgICB2YXIgX21pZGRsZXdhcmVEYXRhJGFycm93LCBfbWlkZGxld2FyZURhdGEkZmxpcDtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICBtaWRkbGV3YXJlRGF0YSxcbiAgICAgICAgcmVjdHMsXG4gICAgICAgIGluaXRpYWxQbGFjZW1lbnQsXG4gICAgICAgIHBsYXRmb3JtLFxuICAgICAgICBlbGVtZW50c1xuICAgICAgfSA9IHN0YXRlO1xuICAgICAgY29uc3Qge1xuICAgICAgICBtYWluQXhpczogY2hlY2tNYWluQXhpcyA9IHRydWUsXG4gICAgICAgIGNyb3NzQXhpczogY2hlY2tDcm9zc0F4aXMgPSB0cnVlLFxuICAgICAgICBmYWxsYmFja1BsYWNlbWVudHM6IHNwZWNpZmllZEZhbGxiYWNrUGxhY2VtZW50cyxcbiAgICAgICAgZmFsbGJhY2tTdHJhdGVneSA9ICdiZXN0Rml0JyxcbiAgICAgICAgZmFsbGJhY2tBeGlzU2lkZURpcmVjdGlvbiA9ICdub25lJyxcbiAgICAgICAgZmxpcEFsaWdubWVudCA9IHRydWUsXG4gICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9uc1xuICAgICAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKTtcblxuICAgICAgLy8gSWYgYSByZXNldCBieSB0aGUgYXJyb3cgd2FzIGNhdXNlZCBkdWUgdG8gYW4gYWxpZ25tZW50IG9mZnNldCBiZWluZ1xuICAgICAgLy8gYWRkZWQsIHdlIHNob3VsZCBza2lwIGFueSBsb2dpYyBub3cgc2luY2UgYGZsaXAoKWAgaGFzIGFscmVhZHkgZG9uZSBpdHNcbiAgICAgIC8vIHdvcmsuXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZmxvYXRpbmctdWkvZmxvYXRpbmctdWkvaXNzdWVzLzI1NDkjaXNzdWVjb21tZW50LTE3MTk2MDE2NDNcbiAgICAgIGlmICgoX21pZGRsZXdhcmVEYXRhJGFycm93ID0gbWlkZGxld2FyZURhdGEuYXJyb3cpICE9IG51bGwgJiYgX21pZGRsZXdhcmVEYXRhJGFycm93LmFsaWdubWVudE9mZnNldCkge1xuICAgICAgICByZXR1cm4ge307XG4gICAgICB9XG4gICAgICBjb25zdCBzaWRlID0gZ2V0U2lkZShwbGFjZW1lbnQpO1xuICAgICAgY29uc3QgaXNCYXNlUGxhY2VtZW50ID0gZ2V0U2lkZShpbml0aWFsUGxhY2VtZW50KSA9PT0gaW5pdGlhbFBsYWNlbWVudDtcbiAgICAgIGNvbnN0IHJ0bCA9IGF3YWl0IChwbGF0Zm9ybS5pc1JUTCA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uaXNSVEwoZWxlbWVudHMuZmxvYXRpbmcpKTtcbiAgICAgIGNvbnN0IGZhbGxiYWNrUGxhY2VtZW50cyA9IHNwZWNpZmllZEZhbGxiYWNrUGxhY2VtZW50cyB8fCAoaXNCYXNlUGxhY2VtZW50IHx8ICFmbGlwQWxpZ25tZW50ID8gW2dldE9wcG9zaXRlUGxhY2VtZW50KGluaXRpYWxQbGFjZW1lbnQpXSA6IGdldEV4cGFuZGVkUGxhY2VtZW50cyhpbml0aWFsUGxhY2VtZW50KSk7XG4gICAgICBpZiAoIXNwZWNpZmllZEZhbGxiYWNrUGxhY2VtZW50cyAmJiBmYWxsYmFja0F4aXNTaWRlRGlyZWN0aW9uICE9PSAnbm9uZScpIHtcbiAgICAgICAgZmFsbGJhY2tQbGFjZW1lbnRzLnB1c2goLi4uZ2V0T3Bwb3NpdGVBeGlzUGxhY2VtZW50cyhpbml0aWFsUGxhY2VtZW50LCBmbGlwQWxpZ25tZW50LCBmYWxsYmFja0F4aXNTaWRlRGlyZWN0aW9uLCBydGwpKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBsYWNlbWVudHMgPSBbaW5pdGlhbFBsYWNlbWVudCwgLi4uZmFsbGJhY2tQbGFjZW1lbnRzXTtcbiAgICAgIGNvbnN0IG92ZXJmbG93ID0gYXdhaXQgZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIGRldGVjdE92ZXJmbG93T3B0aW9ucyk7XG4gICAgICBjb25zdCBvdmVyZmxvd3MgPSBbXTtcbiAgICAgIGxldCBvdmVyZmxvd3NEYXRhID0gKChfbWlkZGxld2FyZURhdGEkZmxpcCA9IG1pZGRsZXdhcmVEYXRhLmZsaXApID09IG51bGwgPyB2b2lkIDAgOiBfbWlkZGxld2FyZURhdGEkZmxpcC5vdmVyZmxvd3MpIHx8IFtdO1xuICAgICAgaWYgKGNoZWNrTWFpbkF4aXMpIHtcbiAgICAgICAgb3ZlcmZsb3dzLnB1c2gob3ZlcmZsb3dbc2lkZV0pO1xuICAgICAgfVxuICAgICAgaWYgKGNoZWNrQ3Jvc3NBeGlzKSB7XG4gICAgICAgIGNvbnN0IHNpZGVzID0gZ2V0QWxpZ25tZW50U2lkZXMocGxhY2VtZW50LCByZWN0cywgcnRsKTtcbiAgICAgICAgb3ZlcmZsb3dzLnB1c2gob3ZlcmZsb3dbc2lkZXNbMF1dLCBvdmVyZmxvd1tzaWRlc1sxXV0pO1xuICAgICAgfVxuICAgICAgb3ZlcmZsb3dzRGF0YSA9IFsuLi5vdmVyZmxvd3NEYXRhLCB7XG4gICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgb3ZlcmZsb3dzXG4gICAgICB9XTtcblxuICAgICAgLy8gT25lIG9yIG1vcmUgc2lkZXMgaXMgb3ZlcmZsb3dpbmcuXG4gICAgICBpZiAoIW92ZXJmbG93cy5ldmVyeShzaWRlID0+IHNpZGUgPD0gMCkpIHtcbiAgICAgICAgdmFyIF9taWRkbGV3YXJlRGF0YSRmbGlwMiwgX292ZXJmbG93c0RhdGEkZmlsdGVyO1xuICAgICAgICBjb25zdCBuZXh0SW5kZXggPSAoKChfbWlkZGxld2FyZURhdGEkZmxpcDIgPSBtaWRkbGV3YXJlRGF0YS5mbGlwKSA9PSBudWxsID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJGZsaXAyLmluZGV4KSB8fCAwKSArIDE7XG4gICAgICAgIGNvbnN0IG5leHRQbGFjZW1lbnQgPSBwbGFjZW1lbnRzW25leHRJbmRleF07XG4gICAgICAgIGlmIChuZXh0UGxhY2VtZW50KSB7XG4gICAgICAgICAgLy8gVHJ5IG5leHQgcGxhY2VtZW50IGFuZCByZS1ydW4gdGhlIGxpZmVjeWNsZS5cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICBpbmRleDogbmV4dEluZGV4LFxuICAgICAgICAgICAgICBvdmVyZmxvd3M6IG92ZXJmbG93c0RhdGFcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZXNldDoge1xuICAgICAgICAgICAgICBwbGFjZW1lbnQ6IG5leHRQbGFjZW1lbnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRmlyc3QsIGZpbmQgdGhlIGNhbmRpZGF0ZXMgdGhhdCBmaXQgb24gdGhlIG1haW5BeGlzIHNpZGUgb2Ygb3ZlcmZsb3csXG4gICAgICAgIC8vIHRoZW4gZmluZCB0aGUgcGxhY2VtZW50IHRoYXQgZml0cyB0aGUgYmVzdCBvbiB0aGUgbWFpbiBjcm9zc0F4aXMgc2lkZS5cbiAgICAgICAgbGV0IHJlc2V0UGxhY2VtZW50ID0gKF9vdmVyZmxvd3NEYXRhJGZpbHRlciA9IG92ZXJmbG93c0RhdGEuZmlsdGVyKGQgPT4gZC5vdmVyZmxvd3NbMF0gPD0gMCkuc29ydCgoYSwgYikgPT4gYS5vdmVyZmxvd3NbMV0gLSBiLm92ZXJmbG93c1sxXSlbMF0pID09IG51bGwgPyB2b2lkIDAgOiBfb3ZlcmZsb3dzRGF0YSRmaWx0ZXIucGxhY2VtZW50O1xuXG4gICAgICAgIC8vIE90aGVyd2lzZSBmYWxsYmFjay5cbiAgICAgICAgaWYgKCFyZXNldFBsYWNlbWVudCkge1xuICAgICAgICAgIHN3aXRjaCAoZmFsbGJhY2tTdHJhdGVneSkge1xuICAgICAgICAgICAgY2FzZSAnYmVzdEZpdCc6XG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YXIgX292ZXJmbG93c0RhdGEkbWFwJHNvO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBsYWNlbWVudCA9IChfb3ZlcmZsb3dzRGF0YSRtYXAkc28gPSBvdmVyZmxvd3NEYXRhLm1hcChkID0+IFtkLnBsYWNlbWVudCwgZC5vdmVyZmxvd3MuZmlsdGVyKG92ZXJmbG93ID0+IG92ZXJmbG93ID4gMCkucmVkdWNlKChhY2MsIG92ZXJmbG93KSA9PiBhY2MgKyBvdmVyZmxvdywgMCldKS5zb3J0KChhLCBiKSA9PiBhWzFdIC0gYlsxXSlbMF0pID09IG51bGwgPyB2b2lkIDAgOiBfb3ZlcmZsb3dzRGF0YSRtYXAkc29bMF07XG4gICAgICAgICAgICAgICAgaWYgKHBsYWNlbWVudCkge1xuICAgICAgICAgICAgICAgICAgcmVzZXRQbGFjZW1lbnQgPSBwbGFjZW1lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXNlICdpbml0aWFsUGxhY2VtZW50JzpcbiAgICAgICAgICAgICAgcmVzZXRQbGFjZW1lbnQgPSBpbml0aWFsUGxhY2VtZW50O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBsYWNlbWVudCAhPT0gcmVzZXRQbGFjZW1lbnQpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcmVzZXQ6IHtcbiAgICAgICAgICAgICAgcGxhY2VtZW50OiByZXNldFBsYWNlbWVudFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH07XG59O1xuXG5mdW5jdGlvbiBnZXRTaWRlT2Zmc2V0cyhvdmVyZmxvdywgcmVjdCkge1xuICByZXR1cm4ge1xuICAgIHRvcDogb3ZlcmZsb3cudG9wIC0gcmVjdC5oZWlnaHQsXG4gICAgcmlnaHQ6IG92ZXJmbG93LnJpZ2h0IC0gcmVjdC53aWR0aCxcbiAgICBib3R0b206IG92ZXJmbG93LmJvdHRvbSAtIHJlY3QuaGVpZ2h0LFxuICAgIGxlZnQ6IG92ZXJmbG93LmxlZnQgLSByZWN0LndpZHRoXG4gIH07XG59XG5mdW5jdGlvbiBpc0FueVNpZGVGdWxseUNsaXBwZWQob3ZlcmZsb3cpIHtcbiAgcmV0dXJuIHNpZGVzLnNvbWUoc2lkZSA9PiBvdmVyZmxvd1tzaWRlXSA+PSAwKTtcbn1cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0byBoaWRlIHRoZSBmbG9hdGluZyBlbGVtZW50IGluIGFwcGxpY2FibGUgc2l0dWF0aW9ucywgc3VjaCBhc1xuICogd2hlbiBpdCBpcyBub3QgaW4gdGhlIHNhbWUgY2xpcHBpbmcgY29udGV4dCBhcyB0aGUgcmVmZXJlbmNlIGVsZW1lbnQuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvaGlkZVxuICovXG5jb25zdCBoaWRlID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuICByZXR1cm4ge1xuICAgIG5hbWU6ICdoaWRlJyxcbiAgICBvcHRpb25zLFxuICAgIGFzeW5jIGZuKHN0YXRlKSB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIHJlY3RzXG4gICAgICB9ID0gc3RhdGU7XG4gICAgICBjb25zdCB7XG4gICAgICAgIHN0cmF0ZWd5ID0gJ3JlZmVyZW5jZUhpZGRlbicsXG4gICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9uc1xuICAgICAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKTtcbiAgICAgIHN3aXRjaCAoc3RyYXRlZ3kpIHtcbiAgICAgICAgY2FzZSAncmVmZXJlbmNlSGlkZGVuJzpcbiAgICAgICAgICB7XG4gICAgICAgICAgICBjb25zdCBvdmVyZmxvdyA9IGF3YWl0IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICAgICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9ucyxcbiAgICAgICAgICAgICAgZWxlbWVudENvbnRleHQ6ICdyZWZlcmVuY2UnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IG9mZnNldHMgPSBnZXRTaWRlT2Zmc2V0cyhvdmVyZmxvdywgcmVjdHMucmVmZXJlbmNlKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VIaWRkZW5PZmZzZXRzOiBvZmZzZXRzLFxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZUhpZGRlbjogaXNBbnlTaWRlRnVsbHlDbGlwcGVkKG9mZnNldHMpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICBjYXNlICdlc2NhcGVkJzpcbiAgICAgICAgICB7XG4gICAgICAgICAgICBjb25zdCBvdmVyZmxvdyA9IGF3YWl0IGRldGVjdE92ZXJmbG93KHN0YXRlLCB7XG4gICAgICAgICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9ucyxcbiAgICAgICAgICAgICAgYWx0Qm91bmRhcnk6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3Qgb2Zmc2V0cyA9IGdldFNpZGVPZmZzZXRzKG92ZXJmbG93LCByZWN0cy5mbG9hdGluZyk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgZXNjYXBlZE9mZnNldHM6IG9mZnNldHMsXG4gICAgICAgICAgICAgICAgZXNjYXBlZDogaXNBbnlTaWRlRnVsbHlDbGlwcGVkKG9mZnNldHMpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9O1xufTtcblxuZnVuY3Rpb24gZ2V0Qm91bmRpbmdSZWN0KHJlY3RzKSB7XG4gIGNvbnN0IG1pblggPSBtaW4oLi4ucmVjdHMubWFwKHJlY3QgPT4gcmVjdC5sZWZ0KSk7XG4gIGNvbnN0IG1pblkgPSBtaW4oLi4ucmVjdHMubWFwKHJlY3QgPT4gcmVjdC50b3ApKTtcbiAgY29uc3QgbWF4WCA9IG1heCguLi5yZWN0cy5tYXAocmVjdCA9PiByZWN0LnJpZ2h0KSk7XG4gIGNvbnN0IG1heFkgPSBtYXgoLi4ucmVjdHMubWFwKHJlY3QgPT4gcmVjdC5ib3R0b20pKTtcbiAgcmV0dXJuIHtcbiAgICB4OiBtaW5YLFxuICAgIHk6IG1pblksXG4gICAgd2lkdGg6IG1heFggLSBtaW5YLFxuICAgIGhlaWdodDogbWF4WSAtIG1pbllcbiAgfTtcbn1cbmZ1bmN0aW9uIGdldFJlY3RzQnlMaW5lKHJlY3RzKSB7XG4gIGNvbnN0IHNvcnRlZFJlY3RzID0gcmVjdHMuc2xpY2UoKS5zb3J0KChhLCBiKSA9PiBhLnkgLSBiLnkpO1xuICBjb25zdCBncm91cHMgPSBbXTtcbiAgbGV0IHByZXZSZWN0ID0gbnVsbDtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzb3J0ZWRSZWN0cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IHJlY3QgPSBzb3J0ZWRSZWN0c1tpXTtcbiAgICBpZiAoIXByZXZSZWN0IHx8IHJlY3QueSAtIHByZXZSZWN0LnkgPiBwcmV2UmVjdC5oZWlnaHQgLyAyKSB7XG4gICAgICBncm91cHMucHVzaChbcmVjdF0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBncm91cHNbZ3JvdXBzLmxlbmd0aCAtIDFdLnB1c2gocmVjdCk7XG4gICAgfVxuICAgIHByZXZSZWN0ID0gcmVjdDtcbiAgfVxuICByZXR1cm4gZ3JvdXBzLm1hcChyZWN0ID0+IHJlY3RUb0NsaWVudFJlY3QoZ2V0Qm91bmRpbmdSZWN0KHJlY3QpKSk7XG59XG4vKipcbiAqIFByb3ZpZGVzIGltcHJvdmVkIHBvc2l0aW9uaW5nIGZvciBpbmxpbmUgcmVmZXJlbmNlIGVsZW1lbnRzIHRoYXQgY2FuIHNwYW5cbiAqIG92ZXIgbXVsdGlwbGUgbGluZXMsIHN1Y2ggYXMgaHlwZXJsaW5rcyBvciByYW5nZSBzZWxlY3Rpb25zLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2lubGluZVxuICovXG5jb25zdCBpbmxpbmUgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ2lubGluZScsXG4gICAgb3B0aW9ucyxcbiAgICBhc3luYyBmbihzdGF0ZSkge1xuICAgICAgY29uc3Qge1xuICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgIGVsZW1lbnRzLFxuICAgICAgICByZWN0cyxcbiAgICAgICAgcGxhdGZvcm0sXG4gICAgICAgIHN0cmF0ZWd5XG4gICAgICB9ID0gc3RhdGU7XG4gICAgICAvLyBBIE1vdXNlRXZlbnQncyBjbGllbnR7WCxZfSBjb29yZHMgY2FuIGJlIHVwIHRvIDIgcGl4ZWxzIG9mZiBhXG4gICAgICAvLyBDbGllbnRSZWN0J3MgYm91bmRzLCBkZXNwaXRlIHRoZSBldmVudCBsaXN0ZW5lciBiZWluZyB0cmlnZ2VyZWQuIEFcbiAgICAgIC8vIHBhZGRpbmcgb2YgMiBzZWVtcyB0byBoYW5kbGUgdGhpcyBpc3N1ZS5cbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcGFkZGluZyA9IDIsXG4gICAgICAgIHgsXG4gICAgICAgIHlcbiAgICAgIH0gPSBldmFsdWF0ZShvcHRpb25zLCBzdGF0ZSk7XG4gICAgICBjb25zdCBuYXRpdmVDbGllbnRSZWN0cyA9IEFycmF5LmZyb20oKGF3YWl0IChwbGF0Zm9ybS5nZXRDbGllbnRSZWN0cyA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uZ2V0Q2xpZW50UmVjdHMoZWxlbWVudHMucmVmZXJlbmNlKSkpIHx8IFtdKTtcbiAgICAgIGNvbnN0IGNsaWVudFJlY3RzID0gZ2V0UmVjdHNCeUxpbmUobmF0aXZlQ2xpZW50UmVjdHMpO1xuICAgICAgY29uc3QgZmFsbGJhY2sgPSByZWN0VG9DbGllbnRSZWN0KGdldEJvdW5kaW5nUmVjdChuYXRpdmVDbGllbnRSZWN0cykpO1xuICAgICAgY29uc3QgcGFkZGluZ09iamVjdCA9IGdldFBhZGRpbmdPYmplY3QocGFkZGluZyk7XG4gICAgICBmdW5jdGlvbiBnZXRCb3VuZGluZ0NsaWVudFJlY3QoKSB7XG4gICAgICAgIC8vIFRoZXJlIGFyZSB0d28gcmVjdHMgYW5kIHRoZXkgYXJlIGRpc2pvaW5lZC5cbiAgICAgICAgaWYgKGNsaWVudFJlY3RzLmxlbmd0aCA9PT0gMiAmJiBjbGllbnRSZWN0c1swXS5sZWZ0ID4gY2xpZW50UmVjdHNbMV0ucmlnaHQgJiYgeCAhPSBudWxsICYmIHkgIT0gbnVsbCkge1xuICAgICAgICAgIC8vIEZpbmQgdGhlIGZpcnN0IHJlY3QgaW4gd2hpY2ggdGhlIHBvaW50IGlzIGZ1bGx5IGluc2lkZS5cbiAgICAgICAgICByZXR1cm4gY2xpZW50UmVjdHMuZmluZChyZWN0ID0+IHggPiByZWN0LmxlZnQgLSBwYWRkaW5nT2JqZWN0LmxlZnQgJiYgeCA8IHJlY3QucmlnaHQgKyBwYWRkaW5nT2JqZWN0LnJpZ2h0ICYmIHkgPiByZWN0LnRvcCAtIHBhZGRpbmdPYmplY3QudG9wICYmIHkgPCByZWN0LmJvdHRvbSArIHBhZGRpbmdPYmplY3QuYm90dG9tKSB8fCBmYWxsYmFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoZXJlIGFyZSAyIG9yIG1vcmUgY29ubmVjdGVkIHJlY3RzLlxuICAgICAgICBpZiAoY2xpZW50UmVjdHMubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICBpZiAoZ2V0U2lkZUF4aXMocGxhY2VtZW50KSA9PT0gJ3knKSB7XG4gICAgICAgICAgICBjb25zdCBmaXJzdFJlY3QgPSBjbGllbnRSZWN0c1swXTtcbiAgICAgICAgICAgIGNvbnN0IGxhc3RSZWN0ID0gY2xpZW50UmVjdHNbY2xpZW50UmVjdHMubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICBjb25zdCBpc1RvcCA9IGdldFNpZGUocGxhY2VtZW50KSA9PT0gJ3RvcCc7XG4gICAgICAgICAgICBjb25zdCB0b3AgPSBmaXJzdFJlY3QudG9wO1xuICAgICAgICAgICAgY29uc3QgYm90dG9tID0gbGFzdFJlY3QuYm90dG9tO1xuICAgICAgICAgICAgY29uc3QgbGVmdCA9IGlzVG9wID8gZmlyc3RSZWN0LmxlZnQgOiBsYXN0UmVjdC5sZWZ0O1xuICAgICAgICAgICAgY29uc3QgcmlnaHQgPSBpc1RvcCA/IGZpcnN0UmVjdC5yaWdodCA6IGxhc3RSZWN0LnJpZ2h0O1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSByaWdodCAtIGxlZnQ7XG4gICAgICAgICAgICBjb25zdCBoZWlnaHQgPSBib3R0b20gLSB0b3A7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICB0b3AsXG4gICAgICAgICAgICAgIGJvdHRvbSxcbiAgICAgICAgICAgICAgbGVmdCxcbiAgICAgICAgICAgICAgcmlnaHQsXG4gICAgICAgICAgICAgIHdpZHRoLFxuICAgICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICAgIHg6IGxlZnQsXG4gICAgICAgICAgICAgIHk6IHRvcFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgaXNMZWZ0U2lkZSA9IGdldFNpZGUocGxhY2VtZW50KSA9PT0gJ2xlZnQnO1xuICAgICAgICAgIGNvbnN0IG1heFJpZ2h0ID0gbWF4KC4uLmNsaWVudFJlY3RzLm1hcChyZWN0ID0+IHJlY3QucmlnaHQpKTtcbiAgICAgICAgICBjb25zdCBtaW5MZWZ0ID0gbWluKC4uLmNsaWVudFJlY3RzLm1hcChyZWN0ID0+IHJlY3QubGVmdCkpO1xuICAgICAgICAgIGNvbnN0IG1lYXN1cmVSZWN0cyA9IGNsaWVudFJlY3RzLmZpbHRlcihyZWN0ID0+IGlzTGVmdFNpZGUgPyByZWN0LmxlZnQgPT09IG1pbkxlZnQgOiByZWN0LnJpZ2h0ID09PSBtYXhSaWdodCk7XG4gICAgICAgICAgY29uc3QgdG9wID0gbWVhc3VyZVJlY3RzWzBdLnRvcDtcbiAgICAgICAgICBjb25zdCBib3R0b20gPSBtZWFzdXJlUmVjdHNbbWVhc3VyZVJlY3RzLmxlbmd0aCAtIDFdLmJvdHRvbTtcbiAgICAgICAgICBjb25zdCBsZWZ0ID0gbWluTGVmdDtcbiAgICAgICAgICBjb25zdCByaWdodCA9IG1heFJpZ2h0O1xuICAgICAgICAgIGNvbnN0IHdpZHRoID0gcmlnaHQgLSBsZWZ0O1xuICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGJvdHRvbSAtIHRvcDtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdG9wLFxuICAgICAgICAgICAgYm90dG9tLFxuICAgICAgICAgICAgbGVmdCxcbiAgICAgICAgICAgIHJpZ2h0LFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICB4OiBsZWZ0LFxuICAgICAgICAgICAgeTogdG9wXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsbGJhY2s7XG4gICAgICB9XG4gICAgICBjb25zdCByZXNldFJlY3RzID0gYXdhaXQgcGxhdGZvcm0uZ2V0RWxlbWVudFJlY3RzKHtcbiAgICAgICAgcmVmZXJlbmNlOiB7XG4gICAgICAgICAgZ2V0Qm91bmRpbmdDbGllbnRSZWN0XG4gICAgICAgIH0sXG4gICAgICAgIGZsb2F0aW5nOiBlbGVtZW50cy5mbG9hdGluZyxcbiAgICAgICAgc3RyYXRlZ3lcbiAgICAgIH0pO1xuICAgICAgaWYgKHJlY3RzLnJlZmVyZW5jZS54ICE9PSByZXNldFJlY3RzLnJlZmVyZW5jZS54IHx8IHJlY3RzLnJlZmVyZW5jZS55ICE9PSByZXNldFJlY3RzLnJlZmVyZW5jZS55IHx8IHJlY3RzLnJlZmVyZW5jZS53aWR0aCAhPT0gcmVzZXRSZWN0cy5yZWZlcmVuY2Uud2lkdGggfHwgcmVjdHMucmVmZXJlbmNlLmhlaWdodCAhPT0gcmVzZXRSZWN0cy5yZWZlcmVuY2UuaGVpZ2h0KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcmVzZXQ6IHtcbiAgICAgICAgICAgIHJlY3RzOiByZXNldFJlY3RzXG4gICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgfTtcbn07XG5cbi8vIEZvciB0eXBlIGJhY2t3YXJkcy1jb21wYXRpYmlsaXR5LCB0aGUgYE9mZnNldE9wdGlvbnNgIHR5cGUgd2FzIGFsc29cbi8vIERlcml2YWJsZS5cblxuYXN5bmMgZnVuY3Rpb24gY29udmVydFZhbHVlVG9Db29yZHMoc3RhdGUsIG9wdGlvbnMpIHtcbiAgY29uc3Qge1xuICAgIHBsYWNlbWVudCxcbiAgICBwbGF0Zm9ybSxcbiAgICBlbGVtZW50c1xuICB9ID0gc3RhdGU7XG4gIGNvbnN0IHJ0bCA9IGF3YWl0IChwbGF0Zm9ybS5pc1JUTCA9PSBudWxsID8gdm9pZCAwIDogcGxhdGZvcm0uaXNSVEwoZWxlbWVudHMuZmxvYXRpbmcpKTtcbiAgY29uc3Qgc2lkZSA9IGdldFNpZGUocGxhY2VtZW50KTtcbiAgY29uc3QgYWxpZ25tZW50ID0gZ2V0QWxpZ25tZW50KHBsYWNlbWVudCk7XG4gIGNvbnN0IGlzVmVydGljYWwgPSBnZXRTaWRlQXhpcyhwbGFjZW1lbnQpID09PSAneSc7XG4gIGNvbnN0IG1haW5BeGlzTXVsdGkgPSBbJ2xlZnQnLCAndG9wJ10uaW5jbHVkZXMoc2lkZSkgPyAtMSA6IDE7XG4gIGNvbnN0IGNyb3NzQXhpc011bHRpID0gcnRsICYmIGlzVmVydGljYWwgPyAtMSA6IDE7XG4gIGNvbnN0IHJhd1ZhbHVlID0gZXZhbHVhdGUob3B0aW9ucywgc3RhdGUpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgbGV0IHtcbiAgICBtYWluQXhpcyxcbiAgICBjcm9zc0F4aXMsXG4gICAgYWxpZ25tZW50QXhpc1xuICB9ID0gdHlwZW9mIHJhd1ZhbHVlID09PSAnbnVtYmVyJyA/IHtcbiAgICBtYWluQXhpczogcmF3VmFsdWUsXG4gICAgY3Jvc3NBeGlzOiAwLFxuICAgIGFsaWdubWVudEF4aXM6IG51bGxcbiAgfSA6IHtcbiAgICBtYWluQXhpczogMCxcbiAgICBjcm9zc0F4aXM6IDAsXG4gICAgYWxpZ25tZW50QXhpczogbnVsbCxcbiAgICAuLi5yYXdWYWx1ZVxuICB9O1xuICBpZiAoYWxpZ25tZW50ICYmIHR5cGVvZiBhbGlnbm1lbnRBeGlzID09PSAnbnVtYmVyJykge1xuICAgIGNyb3NzQXhpcyA9IGFsaWdubWVudCA9PT0gJ2VuZCcgPyBhbGlnbm1lbnRBeGlzICogLTEgOiBhbGlnbm1lbnRBeGlzO1xuICB9XG4gIHJldHVybiBpc1ZlcnRpY2FsID8ge1xuICAgIHg6IGNyb3NzQXhpcyAqIGNyb3NzQXhpc011bHRpLFxuICAgIHk6IG1haW5BeGlzICogbWFpbkF4aXNNdWx0aVxuICB9IDoge1xuICAgIHg6IG1haW5BeGlzICogbWFpbkF4aXNNdWx0aSxcbiAgICB5OiBjcm9zc0F4aXMgKiBjcm9zc0F4aXNNdWx0aVxuICB9O1xufVxuXG4vKipcbiAqIE1vZGlmaWVzIHRoZSBwbGFjZW1lbnQgYnkgdHJhbnNsYXRpbmcgdGhlIGZsb2F0aW5nIGVsZW1lbnQgYWxvbmcgdGhlXG4gKiBzcGVjaWZpZWQgYXhlcy5cbiAqIEEgbnVtYmVyIChzaG9ydGhhbmQgZm9yIGBtYWluQXhpc2Agb3IgZGlzdGFuY2UpLCBvciBhbiBheGVzIGNvbmZpZ3VyYXRpb25cbiAqIG9iamVjdCBtYXkgYmUgcGFzc2VkLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL29mZnNldFxuICovXG5jb25zdCBvZmZzZXQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IDA7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnb2Zmc2V0JyxcbiAgICBvcHRpb25zLFxuICAgIGFzeW5jIGZuKHN0YXRlKSB7XG4gICAgICB2YXIgX21pZGRsZXdhcmVEYXRhJG9mZnNlLCBfbWlkZGxld2FyZURhdGEkYXJyb3c7XG4gICAgICBjb25zdCB7XG4gICAgICAgIHgsXG4gICAgICAgIHksXG4gICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgbWlkZGxld2FyZURhdGFcbiAgICAgIH0gPSBzdGF0ZTtcbiAgICAgIGNvbnN0IGRpZmZDb29yZHMgPSBhd2FpdCBjb252ZXJ0VmFsdWVUb0Nvb3JkcyhzdGF0ZSwgb3B0aW9ucyk7XG5cbiAgICAgIC8vIElmIHRoZSBwbGFjZW1lbnQgaXMgdGhlIHNhbWUgYW5kIHRoZSBhcnJvdyBjYXVzZWQgYW4gYWxpZ25tZW50IG9mZnNldFxuICAgICAgLy8gdGhlbiB3ZSBkb24ndCBuZWVkIHRvIGNoYW5nZSB0aGUgcG9zaXRpb25pbmcgY29vcmRpbmF0ZXMuXG4gICAgICBpZiAocGxhY2VtZW50ID09PSAoKF9taWRkbGV3YXJlRGF0YSRvZmZzZSA9IG1pZGRsZXdhcmVEYXRhLm9mZnNldCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9taWRkbGV3YXJlRGF0YSRvZmZzZS5wbGFjZW1lbnQpICYmIChfbWlkZGxld2FyZURhdGEkYXJyb3cgPSBtaWRkbGV3YXJlRGF0YS5hcnJvdykgIT0gbnVsbCAmJiBfbWlkZGxld2FyZURhdGEkYXJyb3cuYWxpZ25tZW50T2Zmc2V0KSB7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHg6IHggKyBkaWZmQ29vcmRzLngsXG4gICAgICAgIHk6IHkgKyBkaWZmQ29vcmRzLnksXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAuLi5kaWZmQ29vcmRzLFxuICAgICAgICAgIHBsYWNlbWVudFxuICAgICAgICB9XG4gICAgICB9O1xuICAgIH1cbiAgfTtcbn07XG5cbi8qKlxuICogT3B0aW1pemVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IGJ5IHNoaWZ0aW5nIGl0IGluIG9yZGVyIHRvXG4gKiBrZWVwIGl0IGluIHZpZXcgd2hlbiBpdCB3aWxsIG92ZXJmbG93IHRoZSBjbGlwcGluZyBib3VuZGFyeS5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9zaGlmdFxuICovXG5jb25zdCBzaGlmdCA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICBvcHRpb25zID0ge307XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBuYW1lOiAnc2hpZnQnLFxuICAgIG9wdGlvbnMsXG4gICAgYXN5bmMgZm4oc3RhdGUpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgeCxcbiAgICAgICAgeSxcbiAgICAgICAgcGxhY2VtZW50XG4gICAgICB9ID0gc3RhdGU7XG4gICAgICBjb25zdCB7XG4gICAgICAgIG1haW5BeGlzOiBjaGVja01haW5BeGlzID0gdHJ1ZSxcbiAgICAgICAgY3Jvc3NBeGlzOiBjaGVja0Nyb3NzQXhpcyA9IGZhbHNlLFxuICAgICAgICBsaW1pdGVyID0ge1xuICAgICAgICAgIGZuOiBfcmVmID0+IHtcbiAgICAgICAgICAgIGxldCB7XG4gICAgICAgICAgICAgIHgsXG4gICAgICAgICAgICAgIHlcbiAgICAgICAgICAgIH0gPSBfcmVmO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgeCxcbiAgICAgICAgICAgICAgeVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9uc1xuICAgICAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKTtcbiAgICAgIGNvbnN0IGNvb3JkcyA9IHtcbiAgICAgICAgeCxcbiAgICAgICAgeVxuICAgICAgfTtcbiAgICAgIGNvbnN0IG92ZXJmbG93ID0gYXdhaXQgZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIGRldGVjdE92ZXJmbG93T3B0aW9ucyk7XG4gICAgICBjb25zdCBjcm9zc0F4aXMgPSBnZXRTaWRlQXhpcyhnZXRTaWRlKHBsYWNlbWVudCkpO1xuICAgICAgY29uc3QgbWFpbkF4aXMgPSBnZXRPcHBvc2l0ZUF4aXMoY3Jvc3NBeGlzKTtcbiAgICAgIGxldCBtYWluQXhpc0Nvb3JkID0gY29vcmRzW21haW5BeGlzXTtcbiAgICAgIGxldCBjcm9zc0F4aXNDb29yZCA9IGNvb3Jkc1tjcm9zc0F4aXNdO1xuICAgICAgaWYgKGNoZWNrTWFpbkF4aXMpIHtcbiAgICAgICAgY29uc3QgbWluU2lkZSA9IG1haW5BeGlzID09PSAneScgPyAndG9wJyA6ICdsZWZ0JztcbiAgICAgICAgY29uc3QgbWF4U2lkZSA9IG1haW5BeGlzID09PSAneScgPyAnYm90dG9tJyA6ICdyaWdodCc7XG4gICAgICAgIGNvbnN0IG1pbiA9IG1haW5BeGlzQ29vcmQgKyBvdmVyZmxvd1ttaW5TaWRlXTtcbiAgICAgICAgY29uc3QgbWF4ID0gbWFpbkF4aXNDb29yZCAtIG92ZXJmbG93W21heFNpZGVdO1xuICAgICAgICBtYWluQXhpc0Nvb3JkID0gY2xhbXAobWluLCBtYWluQXhpc0Nvb3JkLCBtYXgpO1xuICAgICAgfVxuICAgICAgaWYgKGNoZWNrQ3Jvc3NBeGlzKSB7XG4gICAgICAgIGNvbnN0IG1pblNpZGUgPSBjcm9zc0F4aXMgPT09ICd5JyA/ICd0b3AnIDogJ2xlZnQnO1xuICAgICAgICBjb25zdCBtYXhTaWRlID0gY3Jvc3NBeGlzID09PSAneScgPyAnYm90dG9tJyA6ICdyaWdodCc7XG4gICAgICAgIGNvbnN0IG1pbiA9IGNyb3NzQXhpc0Nvb3JkICsgb3ZlcmZsb3dbbWluU2lkZV07XG4gICAgICAgIGNvbnN0IG1heCA9IGNyb3NzQXhpc0Nvb3JkIC0gb3ZlcmZsb3dbbWF4U2lkZV07XG4gICAgICAgIGNyb3NzQXhpc0Nvb3JkID0gY2xhbXAobWluLCBjcm9zc0F4aXNDb29yZCwgbWF4KTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGxpbWl0ZWRDb29yZHMgPSBsaW1pdGVyLmZuKHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIFttYWluQXhpc106IG1haW5BeGlzQ29vcmQsXG4gICAgICAgIFtjcm9zc0F4aXNdOiBjcm9zc0F4aXNDb29yZFxuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5saW1pdGVkQ29vcmRzLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgeDogbGltaXRlZENvb3Jkcy54IC0geCxcbiAgICAgICAgICB5OiBsaW1pdGVkQ29vcmRzLnkgLSB5XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgfVxuICB9O1xufTtcbi8qKlxuICogQnVpbHQtaW4gYGxpbWl0ZXJgIHRoYXQgd2lsbCBzdG9wIGBzaGlmdCgpYCBhdCBhIGNlcnRhaW4gcG9pbnQuXG4gKi9cbmNvbnN0IGxpbWl0U2hpZnQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIHJldHVybiB7XG4gICAgb3B0aW9ucyxcbiAgICBmbihzdGF0ZSkge1xuICAgICAgY29uc3Qge1xuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgIHJlY3RzLFxuICAgICAgICBtaWRkbGV3YXJlRGF0YVxuICAgICAgfSA9IHN0YXRlO1xuICAgICAgY29uc3Qge1xuICAgICAgICBvZmZzZXQgPSAwLFxuICAgICAgICBtYWluQXhpczogY2hlY2tNYWluQXhpcyA9IHRydWUsXG4gICAgICAgIGNyb3NzQXhpczogY2hlY2tDcm9zc0F4aXMgPSB0cnVlXG4gICAgICB9ID0gZXZhbHVhdGUob3B0aW9ucywgc3RhdGUpO1xuICAgICAgY29uc3QgY29vcmRzID0ge1xuICAgICAgICB4LFxuICAgICAgICB5XG4gICAgICB9O1xuICAgICAgY29uc3QgY3Jvc3NBeGlzID0gZ2V0U2lkZUF4aXMocGxhY2VtZW50KTtcbiAgICAgIGNvbnN0IG1haW5BeGlzID0gZ2V0T3Bwb3NpdGVBeGlzKGNyb3NzQXhpcyk7XG4gICAgICBsZXQgbWFpbkF4aXNDb29yZCA9IGNvb3Jkc1ttYWluQXhpc107XG4gICAgICBsZXQgY3Jvc3NBeGlzQ29vcmQgPSBjb29yZHNbY3Jvc3NBeGlzXTtcbiAgICAgIGNvbnN0IHJhd09mZnNldCA9IGV2YWx1YXRlKG9mZnNldCwgc3RhdGUpO1xuICAgICAgY29uc3QgY29tcHV0ZWRPZmZzZXQgPSB0eXBlb2YgcmF3T2Zmc2V0ID09PSAnbnVtYmVyJyA/IHtcbiAgICAgICAgbWFpbkF4aXM6IHJhd09mZnNldCxcbiAgICAgICAgY3Jvc3NBeGlzOiAwXG4gICAgICB9IDoge1xuICAgICAgICBtYWluQXhpczogMCxcbiAgICAgICAgY3Jvc3NBeGlzOiAwLFxuICAgICAgICAuLi5yYXdPZmZzZXRcbiAgICAgIH07XG4gICAgICBpZiAoY2hlY2tNYWluQXhpcykge1xuICAgICAgICBjb25zdCBsZW4gPSBtYWluQXhpcyA9PT0gJ3knID8gJ2hlaWdodCcgOiAnd2lkdGgnO1xuICAgICAgICBjb25zdCBsaW1pdE1pbiA9IHJlY3RzLnJlZmVyZW5jZVttYWluQXhpc10gLSByZWN0cy5mbG9hdGluZ1tsZW5dICsgY29tcHV0ZWRPZmZzZXQubWFpbkF4aXM7XG4gICAgICAgIGNvbnN0IGxpbWl0TWF4ID0gcmVjdHMucmVmZXJlbmNlW21haW5BeGlzXSArIHJlY3RzLnJlZmVyZW5jZVtsZW5dIC0gY29tcHV0ZWRPZmZzZXQubWFpbkF4aXM7XG4gICAgICAgIGlmIChtYWluQXhpc0Nvb3JkIDwgbGltaXRNaW4pIHtcbiAgICAgICAgICBtYWluQXhpc0Nvb3JkID0gbGltaXRNaW47XG4gICAgICAgIH0gZWxzZSBpZiAobWFpbkF4aXNDb29yZCA+IGxpbWl0TWF4KSB7XG4gICAgICAgICAgbWFpbkF4aXNDb29yZCA9IGxpbWl0TWF4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoY2hlY2tDcm9zc0F4aXMpIHtcbiAgICAgICAgdmFyIF9taWRkbGV3YXJlRGF0YSRvZmZzZSwgX21pZGRsZXdhcmVEYXRhJG9mZnNlMjtcbiAgICAgICAgY29uc3QgbGVuID0gbWFpbkF4aXMgPT09ICd5JyA/ICd3aWR0aCcgOiAnaGVpZ2h0JztcbiAgICAgICAgY29uc3QgaXNPcmlnaW5TaWRlID0gWyd0b3AnLCAnbGVmdCddLmluY2x1ZGVzKGdldFNpZGUocGxhY2VtZW50KSk7XG4gICAgICAgIGNvbnN0IGxpbWl0TWluID0gcmVjdHMucmVmZXJlbmNlW2Nyb3NzQXhpc10gLSByZWN0cy5mbG9hdGluZ1tsZW5dICsgKGlzT3JpZ2luU2lkZSA/ICgoX21pZGRsZXdhcmVEYXRhJG9mZnNlID0gbWlkZGxld2FyZURhdGEub2Zmc2V0KSA9PSBudWxsID8gdm9pZCAwIDogX21pZGRsZXdhcmVEYXRhJG9mZnNlW2Nyb3NzQXhpc10pIHx8IDAgOiAwKSArIChpc09yaWdpblNpZGUgPyAwIDogY29tcHV0ZWRPZmZzZXQuY3Jvc3NBeGlzKTtcbiAgICAgICAgY29uc3QgbGltaXRNYXggPSByZWN0cy5yZWZlcmVuY2VbY3Jvc3NBeGlzXSArIHJlY3RzLnJlZmVyZW5jZVtsZW5dICsgKGlzT3JpZ2luU2lkZSA/IDAgOiAoKF9taWRkbGV3YXJlRGF0YSRvZmZzZTIgPSBtaWRkbGV3YXJlRGF0YS5vZmZzZXQpID09IG51bGwgPyB2b2lkIDAgOiBfbWlkZGxld2FyZURhdGEkb2Zmc2UyW2Nyb3NzQXhpc10pIHx8IDApIC0gKGlzT3JpZ2luU2lkZSA/IGNvbXB1dGVkT2Zmc2V0LmNyb3NzQXhpcyA6IDApO1xuICAgICAgICBpZiAoY3Jvc3NBeGlzQ29vcmQgPCBsaW1pdE1pbikge1xuICAgICAgICAgIGNyb3NzQXhpc0Nvb3JkID0gbGltaXRNaW47XG4gICAgICAgIH0gZWxzZSBpZiAoY3Jvc3NBeGlzQ29vcmQgPiBsaW1pdE1heCkge1xuICAgICAgICAgIGNyb3NzQXhpc0Nvb3JkID0gbGltaXRNYXg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIFttYWluQXhpc106IG1haW5BeGlzQ29vcmQsXG4gICAgICAgIFtjcm9zc0F4aXNdOiBjcm9zc0F4aXNDb29yZFxuICAgICAgfTtcbiAgICB9XG4gIH07XG59O1xuXG4vKipcbiAqIFByb3ZpZGVzIGRhdGEgdGhhdCBhbGxvd3MgeW91IHRvIGNoYW5nZSB0aGUgc2l6ZSBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudCDigJRcbiAqIGZvciBpbnN0YW5jZSwgcHJldmVudCBpdCBmcm9tIG92ZXJmbG93aW5nIHRoZSBjbGlwcGluZyBib3VuZGFyeSBvciBtYXRjaCB0aGVcbiAqIHdpZHRoIG9mIHRoZSByZWZlcmVuY2UgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9zaXplXG4gKi9cbmNvbnN0IHNpemUgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ3NpemUnLFxuICAgIG9wdGlvbnMsXG4gICAgYXN5bmMgZm4oc3RhdGUpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICByZWN0cyxcbiAgICAgICAgcGxhdGZvcm0sXG4gICAgICAgIGVsZW1lbnRzXG4gICAgICB9ID0gc3RhdGU7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGFwcGx5ID0gKCkgPT4ge30sXG4gICAgICAgIC4uLmRldGVjdE92ZXJmbG93T3B0aW9uc1xuICAgICAgfSA9IGV2YWx1YXRlKG9wdGlvbnMsIHN0YXRlKTtcbiAgICAgIGNvbnN0IG92ZXJmbG93ID0gYXdhaXQgZGV0ZWN0T3ZlcmZsb3coc3RhdGUsIGRldGVjdE92ZXJmbG93T3B0aW9ucyk7XG4gICAgICBjb25zdCBzaWRlID0gZ2V0U2lkZShwbGFjZW1lbnQpO1xuICAgICAgY29uc3QgYWxpZ25tZW50ID0gZ2V0QWxpZ25tZW50KHBsYWNlbWVudCk7XG4gICAgICBjb25zdCBpc1lBeGlzID0gZ2V0U2lkZUF4aXMocGxhY2VtZW50KSA9PT0gJ3knO1xuICAgICAgY29uc3Qge1xuICAgICAgICB3aWR0aCxcbiAgICAgICAgaGVpZ2h0XG4gICAgICB9ID0gcmVjdHMuZmxvYXRpbmc7XG4gICAgICBsZXQgaGVpZ2h0U2lkZTtcbiAgICAgIGxldCB3aWR0aFNpZGU7XG4gICAgICBpZiAoc2lkZSA9PT0gJ3RvcCcgfHwgc2lkZSA9PT0gJ2JvdHRvbScpIHtcbiAgICAgICAgaGVpZ2h0U2lkZSA9IHNpZGU7XG4gICAgICAgIHdpZHRoU2lkZSA9IGFsaWdubWVudCA9PT0gKChhd2FpdCAocGxhdGZvcm0uaXNSVEwgPT0gbnVsbCA/IHZvaWQgMCA6IHBsYXRmb3JtLmlzUlRMKGVsZW1lbnRzLmZsb2F0aW5nKSkpID8gJ3N0YXJ0JyA6ICdlbmQnKSA/ICdsZWZ0JyA6ICdyaWdodCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3aWR0aFNpZGUgPSBzaWRlO1xuICAgICAgICBoZWlnaHRTaWRlID0gYWxpZ25tZW50ID09PSAnZW5kJyA/ICd0b3AnIDogJ2JvdHRvbSc7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXhpbXVtQ2xpcHBpbmdIZWlnaHQgPSBoZWlnaHQgLSBvdmVyZmxvdy50b3AgLSBvdmVyZmxvdy5ib3R0b207XG4gICAgICBjb25zdCBtYXhpbXVtQ2xpcHBpbmdXaWR0aCA9IHdpZHRoIC0gb3ZlcmZsb3cubGVmdCAtIG92ZXJmbG93LnJpZ2h0O1xuICAgICAgY29uc3Qgb3ZlcmZsb3dBdmFpbGFibGVIZWlnaHQgPSBtaW4oaGVpZ2h0IC0gb3ZlcmZsb3dbaGVpZ2h0U2lkZV0sIG1heGltdW1DbGlwcGluZ0hlaWdodCk7XG4gICAgICBjb25zdCBvdmVyZmxvd0F2YWlsYWJsZVdpZHRoID0gbWluKHdpZHRoIC0gb3ZlcmZsb3dbd2lkdGhTaWRlXSwgbWF4aW11bUNsaXBwaW5nV2lkdGgpO1xuICAgICAgY29uc3Qgbm9TaGlmdCA9ICFzdGF0ZS5taWRkbGV3YXJlRGF0YS5zaGlmdDtcbiAgICAgIGxldCBhdmFpbGFibGVIZWlnaHQgPSBvdmVyZmxvd0F2YWlsYWJsZUhlaWdodDtcbiAgICAgIGxldCBhdmFpbGFibGVXaWR0aCA9IG92ZXJmbG93QXZhaWxhYmxlV2lkdGg7XG4gICAgICBpZiAoaXNZQXhpcykge1xuICAgICAgICBhdmFpbGFibGVXaWR0aCA9IGFsaWdubWVudCB8fCBub1NoaWZ0ID8gbWluKG92ZXJmbG93QXZhaWxhYmxlV2lkdGgsIG1heGltdW1DbGlwcGluZ1dpZHRoKSA6IG1heGltdW1DbGlwcGluZ1dpZHRoO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXZhaWxhYmxlSGVpZ2h0ID0gYWxpZ25tZW50IHx8IG5vU2hpZnQgPyBtaW4ob3ZlcmZsb3dBdmFpbGFibGVIZWlnaHQsIG1heGltdW1DbGlwcGluZ0hlaWdodCkgOiBtYXhpbXVtQ2xpcHBpbmdIZWlnaHQ7XG4gICAgICB9XG4gICAgICBpZiAobm9TaGlmdCAmJiAhYWxpZ25tZW50KSB7XG4gICAgICAgIGNvbnN0IHhNaW4gPSBtYXgob3ZlcmZsb3cubGVmdCwgMCk7XG4gICAgICAgIGNvbnN0IHhNYXggPSBtYXgob3ZlcmZsb3cucmlnaHQsIDApO1xuICAgICAgICBjb25zdCB5TWluID0gbWF4KG92ZXJmbG93LnRvcCwgMCk7XG4gICAgICAgIGNvbnN0IHlNYXggPSBtYXgob3ZlcmZsb3cuYm90dG9tLCAwKTtcbiAgICAgICAgaWYgKGlzWUF4aXMpIHtcbiAgICAgICAgICBhdmFpbGFibGVXaWR0aCA9IHdpZHRoIC0gMiAqICh4TWluICE9PSAwIHx8IHhNYXggIT09IDAgPyB4TWluICsgeE1heCA6IG1heChvdmVyZmxvdy5sZWZ0LCBvdmVyZmxvdy5yaWdodCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGF2YWlsYWJsZUhlaWdodCA9IGhlaWdodCAtIDIgKiAoeU1pbiAhPT0gMCB8fCB5TWF4ICE9PSAwID8geU1pbiArIHlNYXggOiBtYXgob3ZlcmZsb3cudG9wLCBvdmVyZmxvdy5ib3R0b20pKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYXdhaXQgYXBwbHkoe1xuICAgICAgICAuLi5zdGF0ZSxcbiAgICAgICAgYXZhaWxhYmxlV2lkdGgsXG4gICAgICAgIGF2YWlsYWJsZUhlaWdodFxuICAgICAgfSk7XG4gICAgICBjb25zdCBuZXh0RGltZW5zaW9ucyA9IGF3YWl0IHBsYXRmb3JtLmdldERpbWVuc2lvbnMoZWxlbWVudHMuZmxvYXRpbmcpO1xuICAgICAgaWYgKHdpZHRoICE9PSBuZXh0RGltZW5zaW9ucy53aWR0aCB8fCBoZWlnaHQgIT09IG5leHREaW1lbnNpb25zLmhlaWdodCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHJlc2V0OiB7XG4gICAgICAgICAgICByZWN0czogdHJ1ZVxuICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgeyBhcnJvdywgYXV0b1BsYWNlbWVudCwgY29tcHV0ZVBvc2l0aW9uLCBkZXRlY3RPdmVyZmxvdywgZmxpcCwgaGlkZSwgaW5saW5lLCBsaW1pdFNoaWZ0LCBvZmZzZXQsIHNoaWZ0LCBzaXplIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrow: function() { return /* binding */ arrow; },\n/* harmony export */ autoPlacement: function() { return /* binding */ autoPlacement; },\n/* harmony export */ autoUpdate: function() { return /* binding */ autoUpdate; },\n/* harmony export */ computePosition: function() { return /* binding */ computePosition; },\n/* harmony export */ detectOverflow: function() { return /* binding */ detectOverflow; },\n/* harmony export */ flip: function() { return /* binding */ flip; },\n/* harmony export */ getOverflowAncestors: function() { return /* reexport safe */ _floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getOverflowAncestors; },\n/* harmony export */ hide: function() { return /* binding */ hide; },\n/* harmony export */ inline: function() { return /* binding */ inline; },\n/* harmony export */ limitShift: function() { return /* binding */ limitShift; },\n/* harmony export */ offset: function() { return /* binding */ offset; },\n/* harmony export */ platform: function() { return /* binding */ platform; },\n/* harmony export */ shift: function() { return /* binding */ shift; },\n/* harmony export */ size: function() { return /* binding */ size; }\n/* harmony export */ });\n/* harmony import */ var _floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @floating-ui/utils */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs\");\n/* harmony import */ var _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @floating-ui/core */ \"(app-pages-browser)/./node_modules/@floating-ui/core/dist/floating-ui.core.mjs\");\n/* harmony import */ var _floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @floating-ui/utils/dom */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\");\n\n\n\n\n\nfunction getCssDimensions(element) {\n const css = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.round)(width) !== offsetWidth || (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.round)(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(domElement)) {\n return (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.round)(rect.width) : rect.width) / width;\n let y = ($ ? (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.round)(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/(0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(0);\nfunction getVisualOffsets(element) {\n const win = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(element);\n if (!(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isWebKit)() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(1);\n if (includeScale) {\n if (offsetParent) {\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(domElement);\n const offsetWin = offsetParent && (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(offsetParent) ? (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(offsetParent) : offsetParent;\n let currentWin = win;\n let currentIFrame = currentWin.frameElement;\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentWin = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(currentIFrame);\n currentIFrame = currentWin.frameElement;\n }\n }\n return (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.rectToClientRect)({\n width,\n height,\n x,\n y\n });\n}\n\nconst topLayerSelectors = [':popover-open', ':modal'];\nfunction isTopLayer(element) {\n return topLayerSelectors.some(selector => {\n try {\n return element.matches(selector);\n } catch (e) {\n return false;\n }\n });\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(1);\n const offsets = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(0);\n const isOffsetParentAnElement = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeName)(offsetParent) !== 'body' || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isOverflowElement)(documentElement)) {\n scroll = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeScroll)(offsetParent);\n }\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\nfunction getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n return getBoundingClientRect((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(element)).left + (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeScroll)(element).scrollLeft;\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(element);\n const scroll = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeScroll)(element);\n const body = element.ownerDocument.body;\n const width = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(body).direction === 'rtl') {\n x += (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nfunction getViewportRect(element, strategy) {\n const win = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(element);\n const html = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isWebKit)();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) ? getScale(element) : (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(element));\n } else if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n ...clippingAncestor,\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y\n };\n }\n return (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.rectToClientRect)(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getParentNode)(element);\n if (parentNode === stopNode || !(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(parentNode) || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isLastTraversableNode)(parentNode)) {\n return false;\n }\n return (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getOverflowAncestors)(element, [], false).filter(el => (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(el) && (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeName)(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(element).position === 'fixed';\n let currentNode = elementIsFixed ? (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getParentNode)(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(currentNode) && !(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isLastTraversableNode)(currentNode)) {\n const computedStyle = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(currentNode);\n const currentNodeIsContaining = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isContainingBlock)(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isOverflowElement)(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getParentNode)(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(rect.top, accRect.top);\n accRect.right = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.min)(rect.right, accRect.right);\n accRect.bottom = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.min)(rect.bottom, accRect.bottom);\n accRect.left = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(offsetParent);\n const documentElement = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.createCoords)(0);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeName)(offsetParent) !== 'body' || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isOverflowElement)(documentElement)) {\n scroll = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getNodeScroll)(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n const x = rect.left + scroll.scrollLeft - offsets.x;\n const y = rect.top + scroll.scrollTop - offsets.y;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction isStaticPositioned(element) {\n return (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(element).position === 'static';\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n return element.offsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const win = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getWindow)(element);\n if (isTopLayer(element)) {\n return win;\n }\n if (!(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element)) {\n let svgOffsetParent = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getParentNode)(element);\n while (svgOffsetParent && !(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isLastTraversableNode)(svgOffsetParent)) {\n if ((0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement)(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n return svgOffsetParent;\n }\n svgOffsetParent = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getParentNode)(svgOffsetParent);\n }\n return win;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isTableElement)(offsetParent) && isStaticPositioned(offsetParent)) {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isLastTraversableNode)(offsetParent) && isStaticPositioned(offsetParent) && !(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isContainingBlock)(offsetParent)) {\n return win;\n }\n return offsetParent || (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getContainingBlock)(element) || win;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n const floatingDimensions = await getDimensionsFn(data.floating);\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n width: floatingDimensions.width,\n height: floatingDimensions.height\n }\n };\n};\n\nfunction isRTL(element) {\n return (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getComputedStyle)(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement: _floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement: _floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isElement,\n isRTL\n};\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getDocumentElement)(element);\n function cleanup() {\n var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const {\n left,\n top,\n width,\n height\n } = element.getBoundingClientRect();\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.floor)(top);\n const insetRight = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.floor)(root.clientWidth - (left + width));\n const insetBottom = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.floor)(root.clientHeight - (top + height));\n const insetLeft = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.floor)(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.max)(0, (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_1__.min)(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n // If the reference is clipped, the ratio is 0. Throttle the refresh\n // to prevent an infinite loop of updates.\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 1000);\n } else {\n refresh(false, ratio);\n }\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle <iframe>s\n root: root.ownerDocument\n });\n } catch (e) {\n io = new IntersectionObserver(handleObserve, options);\n }\n io.observe(element);\n }\n refresh(true);\n return cleanup;\n}\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n ancestorScroll = true,\n ancestorResize = true,\n elementResize = typeof ResizeObserver === 'function',\n layoutShift = typeof IntersectionObserver === 'function',\n animationFrame = false\n } = options;\n const referenceEl = unwrapElement(reference);\n const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getOverflowAncestors)(referenceEl) : []), ...(0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.getOverflowAncestors)(floating)] : [];\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.addEventListener('scroll', update, {\n passive: true\n });\n ancestorResize && ancestor.addEventListener('resize', update);\n });\n const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;\n let reobserveFrame = -1;\n let resizeObserver = null;\n if (elementResize) {\n resizeObserver = new ResizeObserver(_ref => {\n let [firstEntry] = _ref;\n if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {\n // Prevent update loops when using the `size` middleware.\n // https://github.com/floating-ui/floating-ui/issues/1740\n resizeObserver.unobserve(floating);\n cancelAnimationFrame(reobserveFrame);\n reobserveFrame = requestAnimationFrame(() => {\n var _resizeObserver;\n (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);\n });\n }\n update();\n });\n if (referenceEl && !animationFrame) {\n resizeObserver.observe(referenceEl);\n }\n resizeObserver.observe(floating);\n }\n let frameId;\n let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n if (animationFrame) {\n frameLoop();\n }\n function frameLoop() {\n const nextRefRect = getBoundingClientRect(reference);\n if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n var _resizeObserver2;\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n cleanupIo == null || cleanupIo();\n (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();\n resizeObserver = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\n };\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nconst detectOverflow = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.detectOverflow;\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.offset;\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.autoPlacement;\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.shift;\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.flip;\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.size;\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.hide;\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.arrow;\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.inline;\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = _floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.limitShift;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n */\nconst computePosition = (reference, floating, options) => {\n // This caches the expensive `getClippingElementAncestors` function so that\n // multiple lifecycle resets re-use the same result. It only lives for a\n // single call. If other functions become expensive, we can add them as well.\n const cache = new Map();\n const mergedOptions = {\n platform,\n ...options\n };\n const platformWithCache = {\n ...mergedOptions.platform,\n _c: cache\n };\n return (0,_floating_ui_core__WEBPACK_IMPORTED_MODULE_2__.computePosition)(reference, floating, {\n ...mergedOptions,\n platform: platformWithCache\n });\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvZG9tL2Rpc3QvZmxvYXRpbmctdWkuZG9tLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUF5VDtBQUMvTztBQUNxTjtBQUNqTzs7QUFFOUQ7QUFDQSxjQUFjLHdFQUFnQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixxRUFBYTtBQUNqQztBQUNBO0FBQ0EseUJBQXlCLHlEQUFLLDJCQUEyQix5REFBSztBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLFVBQVUsaUVBQVM7QUFDbkI7O0FBRUE7QUFDQTtBQUNBLE9BQU8scUVBQWE7QUFDcEIsV0FBVyxnRUFBWTtBQUN2QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0osZUFBZSx5REFBSztBQUNwQixlQUFlLHlEQUFLOztBQUVwQjs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLCtCQUErQixnRUFBWTtBQUMzQztBQUNBLGNBQWMsaUVBQVM7QUFDdkIsT0FBTyxnRUFBUTtBQUNmO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtRUFBbUUsaUVBQVM7QUFDNUU7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxnRUFBWTtBQUMxQjtBQUNBO0FBQ0EsVUFBVSxpRUFBUztBQUNuQjtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBLDJIQUEySCxnRUFBWTtBQUN2STtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlFQUFTO0FBQ3pCLHNDQUFzQyxpRUFBUyxpQkFBaUIsaUVBQVM7QUFDekU7QUFD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QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsNkRBQWdCOztBQUV2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUscURBQVE7O0FBRXZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQiw0REFBZTs7QUFFckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGNBQWMsb0RBQU87O0FBRXJCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsbURBQU07O0FBRW5CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsbURBQU07O0FBRW5CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLG1EQUFNOztBQUVuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxvREFBTzs7QUFFckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUscURBQVE7O0FBRXZCO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQix5REFBWTs7QUFFL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsa0VBQWlCO0FBQzFCO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRTRJIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvZG9tL2Rpc3QvZmxvYXRpbmctdWkuZG9tLm1qcz8zYjRlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlY3RUb0NsaWVudFJlY3QsIGRldGVjdE92ZXJmbG93IGFzIGRldGVjdE92ZXJmbG93JDEsIG9mZnNldCBhcyBvZmZzZXQkMSwgYXV0b1BsYWNlbWVudCBhcyBhdXRvUGxhY2VtZW50JDEsIHNoaWZ0IGFzIHNoaWZ0JDEsIGZsaXAgYXMgZmxpcCQxLCBzaXplIGFzIHNpemUkMSwgaGlkZSBhcyBoaWRlJDEsIGFycm93IGFzIGFycm93JDEsIGlubGluZSBhcyBpbmxpbmUkMSwgbGltaXRTaGlmdCBhcyBsaW1pdFNoaWZ0JDEsIGNvbXB1dGVQb3NpdGlvbiBhcyBjb21wdXRlUG9zaXRpb24kMSB9IGZyb20gJ0BmbG9hdGluZy11aS9jb3JlJztcbmltcG9ydCB7IHJvdW5kLCBjcmVhdGVDb29yZHMsIG1heCwgbWluLCBmbG9vciB9IGZyb20gJ0BmbG9hdGluZy11aS91dGlscyc7XG5pbXBvcnQgeyBnZXRDb21wdXRlZFN0eWxlLCBpc0hUTUxFbGVtZW50LCBpc0VsZW1lbnQsIGdldFdpbmRvdywgaXNXZWJLaXQsIGdldERvY3VtZW50RWxlbWVudCwgZ2V0Tm9kZU5hbWUsIGlzT3ZlcmZsb3dFbGVtZW50LCBnZXROb2RlU2Nyb2xsLCBnZXRPdmVyZmxvd0FuY2VzdG9ycywgZ2V0UGFyZW50Tm9kZSwgaXNMYXN0VHJhdmVyc2FibGVOb2RlLCBpc0NvbnRhaW5pbmdCbG9jaywgaXNUYWJsZUVsZW1lbnQsIGdldENvbnRhaW5pbmdCbG9jayB9IGZyb20gJ0BmbG9hdGluZy11aS91dGlscy9kb20nO1xuZXhwb3J0IHsgZ2V0T3ZlcmZsb3dBbmNlc3RvcnMgfSBmcm9tICdAZmxvYXRpbmctdWkvdXRpbHMvZG9tJztcblxuZnVuY3Rpb24gZ2V0Q3NzRGltZW5zaW9ucyhlbGVtZW50KSB7XG4gIGNvbnN0IGNzcyA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gIC8vIEluIHRlc3RpbmcgZW52aXJvbm1lbnRzLCB0aGUgYHdpZHRoYCBhbmQgYGhlaWdodGAgcHJvcGVydGllcyBhcmUgZW1wdHlcbiAgLy8gc3RyaW5ncyBmb3IgU1ZHIGVsZW1lbnRzLCByZXR1cm5pbmcgTmFOLiBGYWxsYmFjayB0byBgMGAgaW4gdGhpcyBjYXNlLlxuICBsZXQgd2lkdGggPSBwYXJzZUZsb2F0KGNzcy53aWR0aCkgfHwgMDtcbiAgbGV0IGhlaWdodCA9IHBhcnNlRmxvYXQoY3NzLmhlaWdodCkgfHwgMDtcbiAgY29uc3QgaGFzT2Zmc2V0ID0gaXNIVE1MRWxlbWVudChlbGVtZW50KTtcbiAgY29uc3Qgb2Zmc2V0V2lkdGggPSBoYXNPZmZzZXQgPyBlbGVtZW50Lm9mZnNldFdpZHRoIDogd2lkdGg7XG4gIGNvbnN0IG9mZnNldEhlaWdodCA9IGhhc09mZnNldCA/IGVsZW1lbnQub2Zmc2V0SGVpZ2h0IDogaGVpZ2h0O1xuICBjb25zdCBzaG91bGRGYWxsYmFjayA9IHJvdW5kKHdpZHRoKSAhPT0gb2Zmc2V0V2lkdGggfHwgcm91bmQoaGVpZ2h0KSAhPT0gb2Zmc2V0SGVpZ2h0O1xuICBpZiAoc2hvdWxkRmFsbGJhY2spIHtcbiAgICB3aWR0aCA9IG9mZnNldFdpZHRoO1xuICAgIGhlaWdodCA9IG9mZnNldEhlaWdodDtcbiAgfVxuICByZXR1cm4ge1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICAkOiBzaG91bGRGYWxsYmFja1xuICB9O1xufVxuXG5mdW5jdGlvbiB1bndyYXBFbGVtZW50KGVsZW1lbnQpIHtcbiAgcmV0dXJuICFpc0VsZW1lbnQoZWxlbWVudCkgPyBlbGVtZW50LmNvbnRleHRFbGVtZW50IDogZWxlbWVudDtcbn1cblxuZnVuY3Rpb24gZ2V0U2NhbGUoZWxlbWVudCkge1xuICBjb25zdCBkb21FbGVtZW50ID0gdW53cmFwRWxlbWVudChlbGVtZW50KTtcbiAgaWYgKCFpc0hUTUxFbGVtZW50KGRvbUVsZW1lbnQpKSB7XG4gICAgcmV0dXJuIGNyZWF0ZUNvb3JkcygxKTtcbiAgfVxuICBjb25zdCByZWN0ID0gZG9tRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgY29uc3Qge1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICAkXG4gIH0gPSBnZXRDc3NEaW1lbnNpb25zKGRvbUVsZW1lbnQpO1xuICBsZXQgeCA9ICgkID8gcm91bmQocmVjdC53aWR0aCkgOiByZWN0LndpZHRoKSAvIHdpZHRoO1xuICBsZXQgeSA9ICgkID8gcm91bmQocmVjdC5oZWlnaHQpIDogcmVjdC5oZWlnaHQpIC8gaGVpZ2h0O1xuXG4gIC8vIDAsIE5hTiwgb3IgSW5maW5pdHkgc2hvdWxkIGFsd2F5cyBmYWxsYmFjayB0byAxLlxuXG4gIGlmICgheCB8fCAhTnVtYmVyLmlzRmluaXRlKHgpKSB7XG4gICAgeCA9IDE7XG4gIH1cbiAgaWYgKCF5IHx8ICFOdW1iZXIuaXNGaW5pdGUoeSkpIHtcbiAgICB5ID0gMTtcbiAgfVxuICByZXR1cm4ge1xuICAgIHgsXG4gICAgeVxuICB9O1xufVxuXG5jb25zdCBub09mZnNldHMgPSAvKiNfX1BVUkVfXyovY3JlYXRlQ29vcmRzKDApO1xuZnVuY3Rpb24gZ2V0VmlzdWFsT2Zmc2V0cyhlbGVtZW50KSB7XG4gIGNvbnN0IHdpbiA9IGdldFdpbmRvdyhlbGVtZW50KTtcbiAgaWYgKCFpc1dlYktpdCgpIHx8ICF3aW4udmlzdWFsVmlld3BvcnQpIHtcbiAgICByZXR1cm4gbm9PZmZzZXRzO1xuICB9XG4gIHJldHVybiB7XG4gICAgeDogd2luLnZpc3VhbFZpZXdwb3J0Lm9mZnNldExlZnQsXG4gICAgeTogd2luLnZpc3VhbFZpZXdwb3J0Lm9mZnNldFRvcFxuICB9O1xufVxuZnVuY3Rpb24gc2hvdWxkQWRkVmlzdWFsT2Zmc2V0cyhlbGVtZW50LCBpc0ZpeGVkLCBmbG9hdGluZ09mZnNldFBhcmVudCkge1xuICBpZiAoaXNGaXhlZCA9PT0gdm9pZCAwKSB7XG4gICAgaXNGaXhlZCA9IGZhbHNlO1xuICB9XG4gIGlmICghZmxvYXRpbmdPZmZzZXRQYXJlbnQgfHwgaXNGaXhlZCAmJiBmbG9hdGluZ09mZnNldFBhcmVudCAhPT0gZ2V0V2luZG93KGVsZW1lbnQpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiBpc0ZpeGVkO1xufVxuXG5mdW5jdGlvbiBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudCwgaW5jbHVkZVNjYWxlLCBpc0ZpeGVkU3RyYXRlZ3ksIG9mZnNldFBhcmVudCkge1xuICBpZiAoaW5jbHVkZVNjYWxlID09PSB2b2lkIDApIHtcbiAgICBpbmNsdWRlU2NhbGUgPSBmYWxzZTtcbiAgfVxuICBpZiAoaXNGaXhlZFN0cmF0ZWd5ID09PSB2b2lkIDApIHtcbiAgICBpc0ZpeGVkU3RyYXRlZ3kgPSBmYWxzZTtcbiAgfVxuICBjb25zdCBjbGllbnRSZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgY29uc3QgZG9tRWxlbWVudCA9IHVud3JhcEVsZW1lbnQoZWxlbWVudCk7XG4gIGxldCBzY2FsZSA9IGNyZWF0ZUNvb3JkcygxKTtcbiAgaWYgKGluY2x1ZGVTY2FsZSkge1xuICAgIGlmIChvZmZzZXRQYXJlbnQpIHtcbiAgICAgIGlmIChpc0VsZW1lbnQob2Zmc2V0UGFyZW50KSkge1xuICAgICAgICBzY2FsZSA9IGdldFNjYWxlKG9mZnNldFBhcmVudCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHNjYWxlID0gZ2V0U2NhbGUoZWxlbWVudCk7XG4gICAgfVxuICB9XG4gIGNvbnN0IHZpc3VhbE9mZnNldHMgPSBzaG91bGRBZGRWaXN1YWxPZmZzZXRzKGRvbUVsZW1lbnQsIGlzRml4ZWRTdHJhdGVneSwgb2Zmc2V0UGFyZW50KSA/IGdldFZpc3VhbE9mZnNldHMoZG9tRWxlbWVudCkgOiBjcmVhdGVDb29yZHMoMCk7XG4gIGxldCB4ID0gKGNsaWVudFJlY3QubGVmdCArIHZpc3VhbE9mZnNldHMueCkgLyBzY2FsZS54O1xuICBsZXQgeSA9IChjbGllbnRSZWN0LnRvcCArIHZpc3VhbE9mZnNldHMueSkgLyBzY2FsZS55O1xuICBsZXQgd2lkdGggPSBjbGllbnRSZWN0LndpZHRoIC8gc2NhbGUueDtcbiAgbGV0IGhlaWdodCA9IGNsaWVudFJlY3QuaGVpZ2h0IC8gc2NhbGUueTtcbiAgaWYgKGRvbUVsZW1lbnQpIHtcbiAgICBjb25zdCB3aW4gPSBnZXRXaW5kb3coZG9tRWxlbWVudCk7XG4gICAgY29uc3Qgb2Zmc2V0V2luID0gb2Zmc2V0UGFyZW50ICYmIGlzRWxlbWVudChvZmZzZXRQYXJlbnQpID8gZ2V0V2luZG93KG9mZnNldFBhcmVudCkgOiBvZmZzZXRQYXJlbnQ7XG4gICAgbGV0IGN1cnJlbnRXaW4gPSB3aW47XG4gICAgbGV0IGN1cnJlbnRJRnJhbWUgPSBjdXJyZW50V2luLmZyYW1lRWxlbWVudDtcbiAgICB3aGlsZSAoY3VycmVudElGcmFtZSAmJiBvZmZzZXRQYXJlbnQgJiYgb2Zmc2V0V2luICE9PSBjdXJyZW50V2luKSB7XG4gICAgICBjb25zdCBpZnJhbWVTY2FsZSA9IGdldFNjYWxlKGN1cnJlbnRJRnJhbWUpO1xuICAgICAgY29uc3QgaWZyYW1lUmVjdCA9IGN1cnJlbnRJRnJhbWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCBjc3MgPSBnZXRDb21wdXRlZFN0eWxlKGN1cnJlbnRJRnJhbWUpO1xuICAgICAgY29uc3QgbGVmdCA9IGlmcmFtZVJlY3QubGVmdCArIChjdXJyZW50SUZyYW1lLmNsaWVudExlZnQgKyBwYXJzZUZsb2F0KGNzcy5wYWRkaW5nTGVmdCkpICogaWZyYW1lU2NhbGUueDtcbiAgICAgIGNvbnN0IHRvcCA9IGlmcmFtZVJlY3QudG9wICsgKGN1cnJlbnRJRnJhbWUuY2xpZW50VG9wICsgcGFyc2VGbG9hdChjc3MucGFkZGluZ1RvcCkpICogaWZyYW1lU2NhbGUueTtcbiAgICAgIHggKj0gaWZyYW1lU2NhbGUueDtcbiAgICAgIHkgKj0gaWZyYW1lU2NhbGUueTtcbiAgICAgIHdpZHRoICo9IGlmcmFtZVNjYWxlLng7XG4gICAgICBoZWlnaHQgKj0gaWZyYW1lU2NhbGUueTtcbiAgICAgIHggKz0gbGVmdDtcbiAgICAgIHkgKz0gdG9wO1xuICAgICAgY3VycmVudFdpbiA9IGdldFdpbmRvdyhjdXJyZW50SUZyYW1lKTtcbiAgICAgIGN1cnJlbnRJRnJhbWUgPSBjdXJyZW50V2luLmZyYW1lRWxlbWVudDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlY3RUb0NsaWVudFJlY3Qoe1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICB4LFxuICAgIHlcbiAgfSk7XG59XG5cbmNvbnN0IHRvcExheWVyU2VsZWN0b3JzID0gWyc6cG9wb3Zlci1vcGVuJywgJzptb2RhbCddO1xuZnVuY3Rpb24gaXNUb3BMYXllcihlbGVtZW50KSB7XG4gIHJldHVybiB0b3BMYXllclNlbGVjdG9ycy5zb21lKHNlbGVjdG9yID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGVsZW1lbnQubWF0Y2hlcyhzZWxlY3Rvcik7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRPZmZzZXRQYXJlbnRSZWxhdGl2ZVJlY3RUb1ZpZXdwb3J0UmVsYXRpdmVSZWN0KF9yZWYpIHtcbiAgbGV0IHtcbiAgICBlbGVtZW50cyxcbiAgICByZWN0LFxuICAgIG9mZnNldFBhcmVudCxcbiAgICBzdHJhdGVneVxuICB9ID0gX3JlZjtcbiAgY29uc3QgaXNGaXhlZCA9IHN0cmF0ZWd5ID09PSAnZml4ZWQnO1xuICBjb25zdCBkb2N1bWVudEVsZW1lbnQgPSBnZXREb2N1bWVudEVsZW1lbnQob2Zmc2V0UGFyZW50KTtcbiAgY29uc3QgdG9wTGF5ZXIgPSBlbGVtZW50cyA/IGlzVG9wTGF5ZXIoZWxlbWVudHMuZmxvYXRpbmcpIDogZmFsc2U7XG4gIGlmIChvZmZzZXRQYXJlbnQgPT09IGRvY3VtZW50RWxlbWVudCB8fCB0b3BMYXllciAmJiBpc0ZpeGVkKSB7XG4gICAgcmV0dXJuIHJlY3Q7XG4gIH1cbiAgbGV0IHNjcm9sbCA9IHtcbiAgICBzY3JvbGxMZWZ0OiAwLFxuICAgIHNjcm9sbFRvcDogMFxuICB9O1xuICBsZXQgc2NhbGUgPSBjcmVhdGVDb29yZHMoMSk7XG4gIGNvbnN0IG9mZnNldHMgPSBjcmVhdGVDb29yZHMoMCk7XG4gIGNvbnN0IGlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ID0gaXNIVE1MRWxlbWVudChvZmZzZXRQYXJlbnQpO1xuICBpZiAoaXNPZmZzZXRQYXJlbnRBbkVsZW1lbnQgfHwgIWlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ICYmICFpc0ZpeGVkKSB7XG4gICAgaWYgKGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgIT09ICdib2R5JyB8fCBpc092ZXJmbG93RWxlbWVudChkb2N1bWVudEVsZW1lbnQpKSB7XG4gICAgICBzY3JvbGwgPSBnZXROb2RlU2Nyb2xsKG9mZnNldFBhcmVudCk7XG4gICAgfVxuICAgIGlmIChpc0hUTUxFbGVtZW50KG9mZnNldFBhcmVudCkpIHtcbiAgICAgIGNvbnN0IG9mZnNldFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3Qob2Zmc2V0UGFyZW50KTtcbiAgICAgIHNjYWxlID0gZ2V0U2NhbGUob2Zmc2V0UGFyZW50KTtcbiAgICAgIG9mZnNldHMueCA9IG9mZnNldFJlY3QueCArIG9mZnNldFBhcmVudC5jbGllbnRMZWZ0O1xuICAgICAgb2Zmc2V0cy55ID0gb2Zmc2V0UmVjdC55ICsgb2Zmc2V0UGFyZW50LmNsaWVudFRvcDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHtcbiAgICB3aWR0aDogcmVjdC53aWR0aCAqIHNjYWxlLngsXG4gICAgaGVpZ2h0OiByZWN0LmhlaWdodCAqIHNjYWxlLnksXG4gICAgeDogcmVjdC54ICogc2NhbGUueCAtIHNjcm9sbC5zY3JvbGxMZWZ0ICogc2NhbGUueCArIG9mZnNldHMueCxcbiAgICB5OiByZWN0LnkgKiBzY2FsZS55IC0gc2Nyb2xsLnNjcm9sbFRvcCAqIHNjYWxlLnkgKyBvZmZzZXRzLnlcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0Q2xpZW50UmVjdHMoZWxlbWVudCkge1xuICByZXR1cm4gQXJyYXkuZnJvbShlbGVtZW50LmdldENsaWVudFJlY3RzKCkpO1xufVxuXG5mdW5jdGlvbiBnZXRXaW5kb3dTY3JvbGxCYXJYKGVsZW1lbnQpIHtcbiAgLy8gSWYgPGh0bWw+IGhhcyBhIENTUyB3aWR0aCBncmVhdGVyIHRoYW4gdGhlIHZpZXdwb3J0LCB0aGVuIHRoaXMgd2lsbCBiZVxuICAvLyBpbmNvcnJlY3QgZm9yIFJUTC5cbiAgcmV0dXJuIGdldEJvdW5kaW5nQ2xpZW50UmVjdChnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCkpLmxlZnQgKyBnZXROb2RlU2Nyb2xsKGVsZW1lbnQpLnNjcm9sbExlZnQ7XG59XG5cbi8vIEdldHMgdGhlIGVudGlyZSBzaXplIG9mIHRoZSBzY3JvbGxhYmxlIGRvY3VtZW50IGFyZWEsIGV2ZW4gZXh0ZW5kaW5nIG91dHNpZGVcbi8vIG9mIHRoZSBgPGh0bWw+YCBhbmQgYDxib2R5PmAgcmVjdCBib3VuZHMgaWYgaG9yaXpvbnRhbGx5IHNjcm9sbGFibGUuXG5mdW5jdGlvbiBnZXREb2N1bWVudFJlY3QoZWxlbWVudCkge1xuICBjb25zdCBodG1sID0gZ2V0RG9jdW1lbnRFbGVtZW50KGVsZW1lbnQpO1xuICBjb25zdCBzY3JvbGwgPSBnZXROb2RlU2Nyb2xsKGVsZW1lbnQpO1xuICBjb25zdCBib2R5ID0gZWxlbWVudC5vd25lckRvY3VtZW50LmJvZHk7XG4gIGNvbnN0IHdpZHRoID0gbWF4KGh0bWwuc2Nyb2xsV2lkdGgsIGh0bWwuY2xpZW50V2lkdGgsIGJvZHkuc2Nyb2xsV2lkdGgsIGJvZHkuY2xpZW50V2lkdGgpO1xuICBjb25zdCBoZWlnaHQgPSBtYXgoaHRtbC5zY3JvbGxIZWlnaHQsIGh0bWwuY2xpZW50SGVpZ2h0LCBib2R5LnNjcm9sbEhlaWdodCwgYm9keS5jbGllbnRIZWlnaHQpO1xuICBsZXQgeCA9IC1zY3JvbGwuc2Nyb2xsTGVmdCArIGdldFdpbmRvd1Njcm9sbEJhclgoZWxlbWVudCk7XG4gIGNvbnN0IHkgPSAtc2Nyb2xsLnNjcm9sbFRvcDtcbiAgaWYgKGdldENvbXB1dGVkU3R5bGUoYm9keSkuZGlyZWN0aW9uID09PSAncnRsJykge1xuICAgIHggKz0gbWF4KGh0bWwuY2xpZW50V2lkdGgsIGJvZHkuY2xpZW50V2lkdGgpIC0gd2lkdGg7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICB3aWR0aCxcbiAgICBoZWlnaHQsXG4gICAgeCxcbiAgICB5XG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldFZpZXdwb3J0UmVjdChlbGVtZW50LCBzdHJhdGVneSkge1xuICBjb25zdCB3aW4gPSBnZXRXaW5kb3coZWxlbWVudCk7XG4gIGNvbnN0IGh0bWwgPSBnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCk7XG4gIGNvbnN0IHZpc3VhbFZpZXdwb3J0ID0gd2luLnZpc3VhbFZpZXdwb3J0O1xuICBsZXQgd2lkdGggPSBodG1sLmNsaWVudFdpZHRoO1xuICBsZXQgaGVpZ2h0ID0gaHRtbC5jbGllbnRIZWlnaHQ7XG4gIGxldCB4ID0gMDtcbiAgbGV0IHkgPSAwO1xuICBpZiAodmlzdWFsVmlld3BvcnQpIHtcbiAgICB3aWR0aCA9IHZpc3VhbFZpZXdwb3J0LndpZHRoO1xuICAgIGhlaWdodCA9IHZpc3VhbFZpZXdwb3J0LmhlaWdodDtcbiAgICBjb25zdCB2aXN1YWxWaWV3cG9ydEJhc2VkID0gaXNXZWJLaXQoKTtcbiAgICBpZiAoIXZpc3VhbFZpZXdwb3J0QmFzZWQgfHwgdmlzdWFsVmlld3BvcnRCYXNlZCAmJiBzdHJhdGVneSA9PT0gJ2ZpeGVkJykge1xuICAgICAgeCA9IHZpc3VhbFZpZXdwb3J0Lm9mZnNldExlZnQ7XG4gICAgICB5ID0gdmlzdWFsVmlld3BvcnQub2Zmc2V0VG9wO1xuICAgIH1cbiAgfVxuICByZXR1cm4ge1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICB4LFxuICAgIHlcbiAgfTtcbn1cblxuLy8gUmV0dXJucyB0aGUgaW5uZXIgY2xpZW50IHJlY3QsIHN1YnRyYWN0aW5nIHNjcm9sbGJhcnMgaWYgcHJlc2VudC5cbmZ1bmN0aW9uIGdldElubmVyQm91bmRpbmdDbGllbnRSZWN0KGVsZW1lbnQsIHN0cmF0ZWd5KSB7XG4gIGNvbnN0IGNsaWVudFJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudCwgdHJ1ZSwgc3RyYXRlZ3kgPT09ICdmaXhlZCcpO1xuICBjb25zdCB0b3AgPSBjbGllbnRSZWN0LnRvcCArIGVsZW1lbnQuY2xpZW50VG9wO1xuICBjb25zdCBsZWZ0ID0gY2xpZW50UmVjdC5sZWZ0ICsgZWxlbWVudC5jbGllbnRMZWZ0O1xuICBjb25zdCBzY2FsZSA9IGlzSFRNTEVsZW1lbnQoZWxlbWVudCkgPyBnZXRTY2FsZShlbGVtZW50KSA6IGNyZWF0ZUNvb3JkcygxKTtcbiAgY29uc3Qgd2lkdGggPSBlbGVtZW50LmNsaWVudFdpZHRoICogc2NhbGUueDtcbiAgY29uc3QgaGVpZ2h0ID0gZWxlbWVudC5jbGllbnRIZWlnaHQgKiBzY2FsZS55O1xuICBjb25zdCB4ID0gbGVmdCAqIHNjYWxlLng7XG4gIGNvbnN0IHkgPSB0b3AgKiBzY2FsZS55O1xuICByZXR1cm4ge1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICB4LFxuICAgIHlcbiAgfTtcbn1cbmZ1bmN0aW9uIGdldENsaWVudFJlY3RGcm9tQ2xpcHBpbmdBbmNlc3RvcihlbGVtZW50LCBjbGlwcGluZ0FuY2VzdG9yLCBzdHJhdGVneSkge1xuICBsZXQgcmVjdDtcbiAgaWYgKGNsaXBwaW5nQW5jZXN0b3IgPT09ICd2aWV3cG9ydCcpIHtcbiAgICByZWN0ID0gZ2V0Vmlld3BvcnRSZWN0KGVsZW1lbnQsIHN0cmF0ZWd5KTtcbiAgfSBlbHNlIGlmIChjbGlwcGluZ0FuY2VzdG9yID09PSAnZG9jdW1lbnQnKSB7XG4gICAgcmVjdCA9IGdldERvY3VtZW50UmVjdChnZXREb2N1bWVudEVsZW1lbnQoZWxlbWVudCkpO1xuICB9IGVsc2UgaWYgKGlzRWxlbWVudChjbGlwcGluZ0FuY2VzdG9yKSkge1xuICAgIHJlY3QgPSBnZXRJbm5lckJvdW5kaW5nQ2xpZW50UmVjdChjbGlwcGluZ0FuY2VzdG9yLCBzdHJhdGVneSk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdmlzdWFsT2Zmc2V0cyA9IGdldFZpc3VhbE9mZnNldHMoZWxlbWVudCk7XG4gICAgcmVjdCA9IHtcbiAgICAgIC4uLmNsaXBwaW5nQW5jZXN0b3IsXG4gICAgICB4OiBjbGlwcGluZ0FuY2VzdG9yLnggLSB2aXN1YWxPZmZzZXRzLngsXG4gICAgICB5OiBjbGlwcGluZ0FuY2VzdG9yLnkgLSB2aXN1YWxPZmZzZXRzLnlcbiAgICB9O1xuICB9XG4gIHJldHVybiByZWN0VG9DbGllbnRSZWN0KHJlY3QpO1xufVxuZnVuY3Rpb24gaGFzRml4ZWRQb3NpdGlvbkFuY2VzdG9yKGVsZW1lbnQsIHN0b3BOb2RlKSB7XG4gIGNvbnN0IHBhcmVudE5vZGUgPSBnZXRQYXJlbnROb2RlKGVsZW1lbnQpO1xuICBpZiAocGFyZW50Tm9kZSA9PT0gc3RvcE5vZGUgfHwgIWlzRWxlbWVudChwYXJlbnROb2RlKSB8fCBpc0xhc3RUcmF2ZXJzYWJsZU5vZGUocGFyZW50Tm9kZSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUocGFyZW50Tm9kZSkucG9zaXRpb24gPT09ICdmaXhlZCcgfHwgaGFzRml4ZWRQb3NpdGlvbkFuY2VzdG9yKHBhcmVudE5vZGUsIHN0b3BOb2RlKTtcbn1cblxuLy8gQSBcImNsaXBwaW5nIGFuY2VzdG9yXCIgaXMgYW4gYG92ZXJmbG93YCBlbGVtZW50IHdpdGggdGhlIGNoYXJhY3RlcmlzdGljIG9mXG4vLyBjbGlwcGluZyAob3IgaGlkaW5nKSBjaGlsZCBlbGVtZW50cy4gVGhpcyByZXR1cm5zIGFsbCBjbGlwcGluZyBhbmNlc3RvcnNcbi8vIG9mIHRoZSBnaXZlbiBlbGVtZW50IHVwIHRoZSB0cmVlLlxuZnVuY3Rpb24gZ2V0Q2xpcHBpbmdFbGVtZW50QW5jZXN0b3JzKGVsZW1lbnQsIGNhY2hlKSB7XG4gIGNvbnN0IGNhY2hlZFJlc3VsdCA9IGNhY2hlLmdldChlbGVtZW50KTtcbiAgaWYgKGNhY2hlZFJlc3VsdCkge1xuICAgIHJldHVybiBjYWNoZWRSZXN1bHQ7XG4gIH1cbiAgbGV0IHJlc3VsdCA9IGdldE92ZXJmbG93QW5jZXN0b3JzKGVsZW1lbnQsIFtdLCBmYWxzZSkuZmlsdGVyKGVsID0+IGlzRWxlbWVudChlbCkgJiYgZ2V0Tm9kZU5hbWUoZWwpICE9PSAnYm9keScpO1xuICBsZXQgY3VycmVudENvbnRhaW5pbmdCbG9ja0NvbXB1dGVkU3R5bGUgPSBudWxsO1xuICBjb25zdCBlbGVtZW50SXNGaXhlZCA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkucG9zaXRpb24gPT09ICdmaXhlZCc7XG4gIGxldCBjdXJyZW50Tm9kZSA9IGVsZW1lbnRJc0ZpeGVkID8gZ2V0UGFyZW50Tm9kZShlbGVtZW50KSA6IGVsZW1lbnQ7XG5cbiAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0NvbnRhaW5pbmdfYmxvY2sjaWRlbnRpZnlpbmdfdGhlX2NvbnRhaW5pbmdfYmxvY2tcbiAgd2hpbGUgKGlzRWxlbWVudChjdXJyZW50Tm9kZSkgJiYgIWlzTGFzdFRyYXZlcnNhYmxlTm9kZShjdXJyZW50Tm9kZSkpIHtcbiAgICBjb25zdCBjb21wdXRlZFN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShjdXJyZW50Tm9kZSk7XG4gICAgY29uc3QgY3VycmVudE5vZGVJc0NvbnRhaW5pbmcgPSBpc0NvbnRhaW5pbmdCbG9jayhjdXJyZW50Tm9kZSk7XG4gICAgaWYgKCFjdXJyZW50Tm9kZUlzQ29udGFpbmluZyAmJiBjb21wdXRlZFN0eWxlLnBvc2l0aW9uID09PSAnZml4ZWQnKSB7XG4gICAgICBjdXJyZW50Q29udGFpbmluZ0Jsb2NrQ29tcHV0ZWRTdHlsZSA9IG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHNob3VsZERyb3BDdXJyZW50Tm9kZSA9IGVsZW1lbnRJc0ZpeGVkID8gIWN1cnJlbnROb2RlSXNDb250YWluaW5nICYmICFjdXJyZW50Q29udGFpbmluZ0Jsb2NrQ29tcHV0ZWRTdHlsZSA6ICFjdXJyZW50Tm9kZUlzQ29udGFpbmluZyAmJiBjb21wdXRlZFN0eWxlLnBvc2l0aW9uID09PSAnc3RhdGljJyAmJiAhIWN1cnJlbnRDb250YWluaW5nQmxvY2tDb21wdXRlZFN0eWxlICYmIFsnYWJzb2x1dGUnLCAnZml4ZWQnXS5pbmNsdWRlcyhjdXJyZW50Q29udGFpbmluZ0Jsb2NrQ29tcHV0ZWRTdHlsZS5wb3NpdGlvbikgfHwgaXNPdmVyZmxvd0VsZW1lbnQoY3VycmVudE5vZGUpICYmICFjdXJyZW50Tm9kZUlzQ29udGFpbmluZyAmJiBoYXNGaXhlZFBvc2l0aW9uQW5jZXN0b3IoZWxlbWVudCwgY3VycmVudE5vZGUpO1xuICAgIGlmIChzaG91bGREcm9wQ3VycmVudE5vZGUpIHtcbiAgICAgIC8vIERyb3Agbm9uLWNvbnRhaW5pbmcgYmxvY2tzLlxuICAgICAgcmVzdWx0ID0gcmVzdWx0LmZpbHRlcihhbmNlc3RvciA9PiBhbmNlc3RvciAhPT0gY3VycmVudE5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZWNvcmQgbGFzdCBjb250YWluaW5nIGJsb2NrIGZvciBuZXh0IGl0ZXJhdGlvbi5cbiAgICAgIGN1cnJlbnRDb250YWluaW5nQmxvY2tDb21wdXRlZFN0eWxlID0gY29tcHV0ZWRTdHlsZTtcbiAgICB9XG4gICAgY3VycmVudE5vZGUgPSBnZXRQYXJlbnROb2RlKGN1cnJlbnROb2RlKTtcbiAgfVxuICBjYWNoZS5zZXQoZWxlbWVudCwgcmVzdWx0KTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLy8gR2V0cyB0aGUgbWF4aW11bSBhcmVhIHRoYXQgdGhlIGVsZW1lbnQgaXMgdmlzaWJsZSBpbiBkdWUgdG8gYW55IG51bWJlciBvZlxuLy8gY2xpcHBpbmcgYW5jZXN0b3JzLlxuZnVuY3Rpb24gZ2V0Q2xpcHBpbmdSZWN0KF9yZWYpIHtcbiAgbGV0IHtcbiAgICBlbGVtZW50LFxuICAgIGJvdW5kYXJ5LFxuICAgIHJvb3RCb3VuZGFyeSxcbiAgICBzdHJhdGVneVxuICB9ID0gX3JlZjtcbiAgY29uc3QgZWxlbWVudENsaXBwaW5nQW5jZXN0b3JzID0gYm91bmRhcnkgPT09ICdjbGlwcGluZ0FuY2VzdG9ycycgPyBpc1RvcExheWVyKGVsZW1lbnQpID8gW10gOiBnZXRDbGlwcGluZ0VsZW1lbnRBbmNlc3RvcnMoZWxlbWVudCwgdGhpcy5fYykgOiBbXS5jb25jYXQoYm91bmRhcnkpO1xuICBjb25zdCBjbGlwcGluZ0FuY2VzdG9ycyA9IFsuLi5lbGVtZW50Q2xpcHBpbmdBbmNlc3RvcnMsIHJvb3RCb3VuZGFyeV07XG4gIGNvbnN0IGZpcnN0Q2xpcHBpbmdBbmNlc3RvciA9IGNsaXBwaW5nQW5jZXN0b3JzWzBdO1xuICBjb25zdCBjbGlwcGluZ1JlY3QgPSBjbGlwcGluZ0FuY2VzdG9ycy5yZWR1Y2UoKGFjY1JlY3QsIGNsaXBwaW5nQW5jZXN0b3IpID0+IHtcbiAgICBjb25zdCByZWN0ID0gZ2V0Q2xpZW50UmVjdEZyb21DbGlwcGluZ0FuY2VzdG9yKGVsZW1lbnQsIGNsaXBwaW5nQW5jZXN0b3IsIHN0cmF0ZWd5KTtcbiAgICBhY2NSZWN0LnRvcCA9IG1heChyZWN0LnRvcCwgYWNjUmVjdC50b3ApO1xuICAgIGFjY1JlY3QucmlnaHQgPSBtaW4ocmVjdC5yaWdodCwgYWNjUmVjdC5yaWdodCk7XG4gICAgYWNjUmVjdC5ib3R0b20gPSBtaW4ocmVjdC5ib3R0b20sIGFjY1JlY3QuYm90dG9tKTtcbiAgICBhY2NSZWN0LmxlZnQgPSBtYXgocmVjdC5sZWZ0LCBhY2NSZWN0LmxlZnQpO1xuICAgIHJldHVybiBhY2NSZWN0O1xuICB9LCBnZXRDbGllbnRSZWN0RnJvbUNsaXBwaW5nQW5jZXN0b3IoZWxlbWVudCwgZmlyc3RDbGlwcGluZ0FuY2VzdG9yLCBzdHJhdGVneSkpO1xuICByZXR1cm4ge1xuICAgIHdpZHRoOiBjbGlwcGluZ1JlY3QucmlnaHQgLSBjbGlwcGluZ1JlY3QubGVmdCxcbiAgICBoZWlnaHQ6IGNsaXBwaW5nUmVjdC5ib3R0b20gLSBjbGlwcGluZ1JlY3QudG9wLFxuICAgIHg6IGNsaXBwaW5nUmVjdC5sZWZ0LFxuICAgIHk6IGNsaXBwaW5nUmVjdC50b3BcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGltZW5zaW9ucyhlbGVtZW50KSB7XG4gIGNvbnN0IHtcbiAgICB3aWR0aCxcbiAgICBoZWlnaHRcbiAgfSA9IGdldENzc0RpbWVuc2lvbnMoZWxlbWVudCk7XG4gIHJldHVybiB7XG4gICAgd2lkdGgsXG4gICAgaGVpZ2h0XG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldFJlY3RSZWxhdGl2ZVRvT2Zmc2V0UGFyZW50KGVsZW1lbnQsIG9mZnNldFBhcmVudCwgc3RyYXRlZ3kpIHtcbiAgY29uc3QgaXNPZmZzZXRQYXJlbnRBbkVsZW1lbnQgPSBpc0hUTUxFbGVtZW50KG9mZnNldFBhcmVudCk7XG4gIGNvbnN0IGRvY3VtZW50RWxlbWVudCA9IGdldERvY3VtZW50RWxlbWVudChvZmZzZXRQYXJlbnQpO1xuICBjb25zdCBpc0ZpeGVkID0gc3RyYXRlZ3kgPT09ICdmaXhlZCc7XG4gIGNvbnN0IHJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QoZWxlbWVudCwgdHJ1ZSwgaXNGaXhlZCwgb2Zmc2V0UGFyZW50KTtcbiAgbGV0IHNjcm9sbCA9IHtcbiAgICBzY3JvbGxMZWZ0OiAwLFxuICAgIHNjcm9sbFRvcDogMFxuICB9O1xuICBjb25zdCBvZmZzZXRzID0gY3JlYXRlQ29vcmRzKDApO1xuICBpZiAoaXNPZmZzZXRQYXJlbnRBbkVsZW1lbnQgfHwgIWlzT2Zmc2V0UGFyZW50QW5FbGVtZW50ICYmICFpc0ZpeGVkKSB7XG4gICAgaWYgKGdldE5vZGVOYW1lKG9mZnNldFBhcmVudCkgIT09ICdib2R5JyB8fCBpc092ZXJmbG93RWxlbWVudChkb2N1bWVudEVsZW1lbnQpKSB7XG4gICAgICBzY3JvbGwgPSBnZXROb2RlU2Nyb2xsKG9mZnNldFBhcmVudCk7XG4gICAgfVxuICAgIGlmIChpc09mZnNldFBhcmVudEFuRWxlbWVudCkge1xuICAgICAgY29uc3Qgb2Zmc2V0UmVjdCA9IGdldEJvdW5kaW5nQ2xpZW50UmVjdChvZmZzZXRQYXJlbnQsIHRydWUsIGlzRml4ZWQsIG9mZnNldFBhcmVudCk7XG4gICAgICBvZmZzZXRzLnggPSBvZmZzZXRSZWN0LnggKyBvZmZzZXRQYXJlbnQuY2xpZW50TGVmdDtcbiAgICAgIG9mZnNldHMueSA9IG9mZnNldFJlY3QueSArIG9mZnNldFBhcmVudC5jbGllbnRUb3A7XG4gICAgfSBlbHNlIGlmIChkb2N1bWVudEVsZW1lbnQpIHtcbiAgICAgIG9mZnNldHMueCA9IGdldFdpbmRvd1Njcm9sbEJhclgoZG9jdW1lbnRFbGVtZW50KTtcbiAgICB9XG4gIH1cbiAgY29uc3QgeCA9IHJlY3QubGVmdCArIHNjcm9sbC5zY3JvbGxMZWZ0IC0gb2Zmc2V0cy54O1xuICBjb25zdCB5ID0gcmVjdC50b3AgKyBzY3JvbGwuc2Nyb2xsVG9wIC0gb2Zmc2V0cy55O1xuICByZXR1cm4ge1xuICAgIHgsXG4gICAgeSxcbiAgICB3aWR0aDogcmVjdC53aWR0aCxcbiAgICBoZWlnaHQ6IHJlY3QuaGVpZ2h0XG4gIH07XG59XG5cbmZ1bmN0aW9uIGlzU3RhdGljUG9zaXRpb25lZChlbGVtZW50KSB7XG4gIHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLnBvc2l0aW9uID09PSAnc3RhdGljJztcbn1cblxuZnVuY3Rpb24gZ2V0VHJ1ZU9mZnNldFBhcmVudChlbGVtZW50LCBwb2x5ZmlsbCkge1xuICBpZiAoIWlzSFRNTEVsZW1lbnQoZWxlbWVudCkgfHwgZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5wb3NpdGlvbiA9PT0gJ2ZpeGVkJykge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGlmIChwb2x5ZmlsbCkge1xuICAgIHJldHVybiBwb2x5ZmlsbChlbGVtZW50KTtcbiAgfVxuICByZXR1cm4gZWxlbWVudC5vZmZzZXRQYXJlbnQ7XG59XG5cbi8vIEdldHMgdGhlIGNsb3Nlc3QgYW5jZXN0b3IgcG9zaXRpb25lZCBlbGVtZW50LiBIYW5kbGVzIHNvbWUgZWRnZSBjYXNlcyxcbi8vIHN1Y2ggYXMgdGFibGUgYW5jZXN0b3JzIGFuZCBjcm9zcyBicm93c2VyIGJ1Z3MuXG5mdW5jdGlvbiBnZXRPZmZzZXRQYXJlbnQoZWxlbWVudCwgcG9seWZpbGwpIHtcbiAgY29uc3Qgd2luID0gZ2V0V2luZG93KGVsZW1lbnQpO1xuICBpZiAoaXNUb3BMYXllcihlbGVtZW50KSkge1xuICAgIHJldHVybiB3aW47XG4gIH1cbiAgaWYgKCFpc0hUTUxFbGVtZW50KGVsZW1lbnQpKSB7XG4gICAgbGV0IHN2Z09mZnNldFBhcmVudCA9IGdldFBhcmVudE5vZGUoZWxlbWVudCk7XG4gICAgd2hpbGUgKHN2Z09mZnNldFBhcmVudCAmJiAhaXNMYXN0VHJhdmVyc2FibGVOb2RlKHN2Z09mZnNldFBhcmVudCkpIHtcbiAgICAgIGlmIChpc0VsZW1lbnQoc3ZnT2Zmc2V0UGFyZW50KSAmJiAhaXNTdGF0aWNQb3NpdGlvbmVkKHN2Z09mZnNldFBhcmVudCkpIHtcbiAgICAgICAgcmV0dXJuIHN2Z09mZnNldFBhcmVudDtcbiAgICAgIH1cbiAgICAgIHN2Z09mZnNldFBhcmVudCA9IGdldFBhcmVudE5vZGUoc3ZnT2Zmc2V0UGFyZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIHdpbjtcbiAgfVxuICBsZXQgb2Zmc2V0UGFyZW50ID0gZ2V0VHJ1ZU9mZnNldFBhcmVudChlbGVtZW50LCBwb2x5ZmlsbCk7XG4gIHdoaWxlIChvZmZzZXRQYXJlbnQgJiYgaXNUYWJsZUVsZW1lbnQob2Zmc2V0UGFyZW50KSAmJiBpc1N0YXRpY1Bvc2l0aW9uZWQob2Zmc2V0UGFyZW50KSkge1xuICAgIG9mZnNldFBhcmVudCA9IGdldFRydWVPZmZzZXRQYXJlbnQob2Zmc2V0UGFyZW50LCBwb2x5ZmlsbCk7XG4gIH1cbiAgaWYgKG9mZnNldFBhcmVudCAmJiBpc0xhc3RUcmF2ZXJzYWJsZU5vZGUob2Zmc2V0UGFyZW50KSAmJiBpc1N0YXRpY1Bvc2l0aW9uZWQob2Zmc2V0UGFyZW50KSAmJiAhaXNDb250YWluaW5nQmxvY2sob2Zmc2V0UGFyZW50KSkge1xuICAgIHJldHVybiB3aW47XG4gIH1cbiAgcmV0dXJuIG9mZnNldFBhcmVudCB8fCBnZXRDb250YWluaW5nQmxvY2soZWxlbWVudCkgfHwgd2luO1xufVxuXG5jb25zdCBnZXRFbGVtZW50UmVjdHMgPSBhc3luYyBmdW5jdGlvbiAoZGF0YSkge1xuICBjb25zdCBnZXRPZmZzZXRQYXJlbnRGbiA9IHRoaXMuZ2V0T2Zmc2V0UGFyZW50IHx8IGdldE9mZnNldFBhcmVudDtcbiAgY29uc3QgZ2V0RGltZW5zaW9uc0ZuID0gdGhpcy5nZXREaW1lbnNpb25zO1xuICBjb25zdCBmbG9hdGluZ0RpbWVuc2lvbnMgPSBhd2FpdCBnZXREaW1lbnNpb25zRm4oZGF0YS5mbG9hdGluZyk7XG4gIHJldHVybiB7XG4gICAgcmVmZXJlbmNlOiBnZXRSZWN0UmVsYXRpdmVUb09mZnNldFBhcmVudChkYXRhLnJlZmVyZW5jZSwgYXdhaXQgZ2V0T2Zmc2V0UGFyZW50Rm4oZGF0YS5mbG9hdGluZyksIGRhdGEuc3RyYXRlZ3kpLFxuICAgIGZsb2F0aW5nOiB7XG4gICAgICB4OiAwLFxuICAgICAgeTogMCxcbiAgICAgIHdpZHRoOiBmbG9hdGluZ0RpbWVuc2lvbnMud2lkdGgsXG4gICAgICBoZWlnaHQ6IGZsb2F0aW5nRGltZW5zaW9ucy5oZWlnaHRcbiAgICB9XG4gIH07XG59O1xuXG5mdW5jdGlvbiBpc1JUTChlbGVtZW50KSB7XG4gIHJldHVybiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLmRpcmVjdGlvbiA9PT0gJ3J0bCc7XG59XG5cbmNvbnN0IHBsYXRmb3JtID0ge1xuICBjb252ZXJ0T2Zmc2V0UGFyZW50UmVsYXRpdmVSZWN0VG9WaWV3cG9ydFJlbGF0aXZlUmVjdCxcbiAgZ2V0RG9jdW1lbnRFbGVtZW50LFxuICBnZXRDbGlwcGluZ1JlY3QsXG4gIGdldE9mZnNldFBhcmVudCxcbiAgZ2V0RWxlbWVudFJlY3RzLFxuICBnZXRDbGllbnRSZWN0cyxcbiAgZ2V0RGltZW5zaW9ucyxcbiAgZ2V0U2NhbGUsXG4gIGlzRWxlbWVudCxcbiAgaXNSVExcbn07XG5cbi8vIGh0dHBzOi8vc2FtdGhvci5hdS8yMDIxL29ic2VydmluZy1kb20vXG5mdW5jdGlvbiBvYnNlcnZlTW92ZShlbGVtZW50LCBvbk1vdmUpIHtcbiAgbGV0IGlvID0gbnVsbDtcbiAgbGV0IHRpbWVvdXRJZDtcbiAgY29uc3Qgcm9vdCA9IGdldERvY3VtZW50RWxlbWVudChlbGVtZW50KTtcbiAgZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICB2YXIgX2lvO1xuICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgIChfaW8gPSBpbykgPT0gbnVsbCB8fCBfaW8uZGlzY29ubmVjdCgpO1xuICAgIGlvID0gbnVsbDtcbiAgfVxuICBmdW5jdGlvbiByZWZyZXNoKHNraXAsIHRocmVzaG9sZCkge1xuICAgIGlmIChza2lwID09PSB2b2lkIDApIHtcbiAgICAgIHNraXAgPSBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRocmVzaG9sZCA9PT0gdm9pZCAwKSB7XG4gICAgICB0aHJlc2hvbGQgPSAxO1xuICAgIH1cbiAgICBjbGVhbnVwKCk7XG4gICAgY29uc3Qge1xuICAgICAgbGVmdCxcbiAgICAgIHRvcCxcbiAgICAgIHdpZHRoLFxuICAgICAgaGVpZ2h0XG4gICAgfSA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgaWYgKCFza2lwKSB7XG4gICAgICBvbk1vdmUoKTtcbiAgICB9XG4gICAgaWYgKCF3aWR0aCB8fCAhaGVpZ2h0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGluc2V0VG9wID0gZmxvb3IodG9wKTtcbiAgICBjb25zdCBpbnNldFJpZ2h0ID0gZmxvb3Iocm9vdC5jbGllbnRXaWR0aCAtIChsZWZ0ICsgd2lkdGgpKTtcbiAgICBjb25zdCBpbnNldEJvdHRvbSA9IGZsb29yKHJvb3QuY2xpZW50SGVpZ2h0IC0gKHRvcCArIGhlaWdodCkpO1xuICAgIGNvbnN0IGluc2V0TGVmdCA9IGZsb29yKGxlZnQpO1xuICAgIGNvbnN0IHJvb3RNYXJnaW4gPSAtaW5zZXRUb3AgKyBcInB4IFwiICsgLWluc2V0UmlnaHQgKyBcInB4IFwiICsgLWluc2V0Qm90dG9tICsgXCJweCBcIiArIC1pbnNldExlZnQgKyBcInB4XCI7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIHJvb3RNYXJnaW4sXG4gICAgICB0aHJlc2hvbGQ6IG1heCgwLCBtaW4oMSwgdGhyZXNob2xkKSkgfHwgMVxuICAgIH07XG4gICAgbGV0IGlzRmlyc3RVcGRhdGUgPSB0cnVlO1xuICAgIGZ1bmN0aW9uIGhhbmRsZU9ic2VydmUoZW50cmllcykge1xuICAgICAgY29uc3QgcmF0aW8gPSBlbnRyaWVzWzBdLmludGVyc2VjdGlvblJhdGlvO1xuICAgICAgaWYgKHJhdGlvICE9PSB0aHJlc2hvbGQpIHtcbiAgICAgICAgaWYgKCFpc0ZpcnN0VXBkYXRlKSB7XG4gICAgICAgICAgcmV0dXJuIHJlZnJlc2goKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXJhdGlvKSB7XG4gICAgICAgICAgLy8gSWYgdGhlIHJlZmVyZW5jZSBpcyBjbGlwcGVkLCB0aGUgcmF0aW8gaXMgMC4gVGhyb3R0bGUgdGhlIHJlZnJlc2hcbiAgICAgICAgICAvLyB0byBwcmV2ZW50IGFuIGluZmluaXRlIGxvb3Agb2YgdXBkYXRlcy5cbiAgICAgICAgICB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHJlZnJlc2goZmFsc2UsIDFlLTcpO1xuICAgICAgICAgIH0sIDEwMDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlZnJlc2goZmFsc2UsIHJhdGlvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaXNGaXJzdFVwZGF0ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIE9sZGVyIGJyb3dzZXJzIGRvbid0IHN1cHBvcnQgYSBgZG9jdW1lbnRgIGFzIHRoZSByb290IGFuZCB3aWxsIHRocm93IGFuXG4gICAgLy8gZXJyb3IuXG4gICAgdHJ5IHtcbiAgICAgIGlvID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGhhbmRsZU9ic2VydmUsIHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgLy8gSGFuZGxlIDxpZnJhbWU+c1xuICAgICAgICByb290OiByb290Lm93bmVyRG9jdW1lbnRcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlvID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGhhbmRsZU9ic2VydmUsIG9wdGlvbnMpO1xuICAgIH1cbiAgICBpby5vYnNlcnZlKGVsZW1lbnQpO1xuICB9XG4gIHJlZnJlc2godHJ1ZSk7XG4gIHJldHVybiBjbGVhbnVwO1xufVxuXG4vKipcbiAqIEF1dG9tYXRpY2FsbHkgdXBkYXRlcyB0aGUgcG9zaXRpb24gb2YgdGhlIGZsb2F0aW5nIGVsZW1lbnQgd2hlbiBuZWNlc3NhcnkuXG4gKiBTaG91bGQgb25seSBiZSBjYWxsZWQgd2hlbiB0aGUgZmxvYXRpbmcgZWxlbWVudCBpcyBtb3VudGVkIG9uIHRoZSBET00gb3JcbiAqIHZpc2libGUgb24gdGhlIHNjcmVlbi5cbiAqIEByZXR1cm5zIGNsZWFudXAgZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgaW52b2tlZCB3aGVuIHRoZSBmbG9hdGluZyBlbGVtZW50IGlzXG4gKiByZW1vdmVkIGZyb20gdGhlIERPTSBvciBoaWRkZW4gZnJvbSB0aGUgc2NyZWVuLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2F1dG9VcGRhdGVcbiAqL1xuZnVuY3Rpb24gYXV0b1VwZGF0ZShyZWZlcmVuY2UsIGZsb2F0aW5nLCB1cGRhdGUsIG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgYW5jZXN0b3JTY3JvbGwgPSB0cnVlLFxuICAgIGFuY2VzdG9yUmVzaXplID0gdHJ1ZSxcbiAgICBlbGVtZW50UmVzaXplID0gdHlwZW9mIFJlc2l6ZU9ic2VydmVyID09PSAnZnVuY3Rpb24nLFxuICAgIGxheW91dFNoaWZ0ID0gdHlwZW9mIEludGVyc2VjdGlvbk9ic2VydmVyID09PSAnZnVuY3Rpb24nLFxuICAgIGFuaW1hdGlvbkZyYW1lID0gZmFsc2VcbiAgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IHJlZmVyZW5jZUVsID0gdW53cmFwRWxlbWVudChyZWZlcmVuY2UpO1xuICBjb25zdCBhbmNlc3RvcnMgPSBhbmNlc3RvclNjcm9sbCB8fCBhbmNlc3RvclJlc2l6ZSA/IFsuLi4ocmVmZXJlbmNlRWwgPyBnZXRPdmVyZmxvd0FuY2VzdG9ycyhyZWZlcmVuY2VFbCkgOiBbXSksIC4uLmdldE92ZXJmbG93QW5jZXN0b3JzKGZsb2F0aW5nKV0gOiBbXTtcbiAgYW5jZXN0b3JzLmZvckVhY2goYW5jZXN0b3IgPT4ge1xuICAgIGFuY2VzdG9yU2Nyb2xsICYmIGFuY2VzdG9yLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHVwZGF0ZSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZVxuICAgIH0pO1xuICAgIGFuY2VzdG9yUmVzaXplICYmIGFuY2VzdG9yLmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHVwZGF0ZSk7XG4gIH0pO1xuICBjb25zdCBjbGVhbnVwSW8gPSByZWZlcmVuY2VFbCAmJiBsYXlvdXRTaGlmdCA/IG9ic2VydmVNb3ZlKHJlZmVyZW5jZUVsLCB1cGRhdGUpIDogbnVsbDtcbiAgbGV0IHJlb2JzZXJ2ZUZyYW1lID0gLTE7XG4gIGxldCByZXNpemVPYnNlcnZlciA9IG51bGw7XG4gIGlmIChlbGVtZW50UmVzaXplKSB7XG4gICAgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoX3JlZiA9PiB7XG4gICAgICBsZXQgW2ZpcnN0RW50cnldID0gX3JlZjtcbiAgICAgIGlmIChmaXJzdEVudHJ5ICYmIGZpcnN0RW50cnkudGFyZ2V0ID09PSByZWZlcmVuY2VFbCAmJiByZXNpemVPYnNlcnZlcikge1xuICAgICAgICAvLyBQcmV2ZW50IHVwZGF0ZSBsb29wcyB3aGVuIHVzaW5nIHRoZSBgc2l6ZWAgbWlkZGxld2FyZS5cbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2Zsb2F0aW5nLXVpL2Zsb2F0aW5nLXVpL2lzc3Vlcy8xNzQwXG4gICAgICAgIHJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZShmbG9hdGluZyk7XG4gICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHJlb2JzZXJ2ZUZyYW1lKTtcbiAgICAgICAgcmVvYnNlcnZlRnJhbWUgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgIHZhciBfcmVzaXplT2JzZXJ2ZXI7XG4gICAgICAgICAgKF9yZXNpemVPYnNlcnZlciA9IHJlc2l6ZU9ic2VydmVyKSA9PSBudWxsIHx8IF9yZXNpemVPYnNlcnZlci5vYnNlcnZlKGZsb2F0aW5nKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICB1cGRhdGUoKTtcbiAgICB9KTtcbiAgICBpZiAocmVmZXJlbmNlRWwgJiYgIWFuaW1hdGlvbkZyYW1lKSB7XG4gICAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKHJlZmVyZW5jZUVsKTtcbiAgICB9XG4gICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShmbG9hdGluZyk7XG4gIH1cbiAgbGV0IGZyYW1lSWQ7XG4gIGxldCBwcmV2UmVmUmVjdCA9IGFuaW1hdGlvbkZyYW1lID8gZ2V0Qm91bmRpbmdDbGllbnRSZWN0KHJlZmVyZW5jZSkgOiBudWxsO1xuICBpZiAoYW5pbWF0aW9uRnJhbWUpIHtcbiAgICBmcmFtZUxvb3AoKTtcbiAgfVxuICBmdW5jdGlvbiBmcmFtZUxvb3AoKSB7XG4gICAgY29uc3QgbmV4dFJlZlJlY3QgPSBnZXRCb3VuZGluZ0NsaWVudFJlY3QocmVmZXJlbmNlKTtcbiAgICBpZiAocHJldlJlZlJlY3QgJiYgKG5leHRSZWZSZWN0LnggIT09IHByZXZSZWZSZWN0LnggfHwgbmV4dFJlZlJlY3QueSAhPT0gcHJldlJlZlJlY3QueSB8fCBuZXh0UmVmUmVjdC53aWR0aCAhPT0gcHJldlJlZlJlY3Qud2lkdGggfHwgbmV4dFJlZlJlY3QuaGVpZ2h0ICE9PSBwcmV2UmVmUmVjdC5oZWlnaHQpKSB7XG4gICAgICB1cGRhdGUoKTtcbiAgICB9XG4gICAgcHJldlJlZlJlY3QgPSBuZXh0UmVmUmVjdDtcbiAgICBmcmFtZUlkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZyYW1lTG9vcCk7XG4gIH1cbiAgdXBkYXRlKCk7XG4gIHJldHVybiAoKSA9PiB7XG4gICAgdmFyIF9yZXNpemVPYnNlcnZlcjI7XG4gICAgYW5jZXN0b3JzLmZvckVhY2goYW5jZXN0b3IgPT4ge1xuICAgICAgYW5jZXN0b3JTY3JvbGwgJiYgYW5jZXN0b3IucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdXBkYXRlKTtcbiAgICAgIGFuY2VzdG9yUmVzaXplICYmIGFuY2VzdG9yLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIHVwZGF0ZSk7XG4gICAgfSk7XG4gICAgY2xlYW51cElvID09IG51bGwgfHwgY2xlYW51cElvKCk7XG4gICAgKF9yZXNpemVPYnNlcnZlcjIgPSByZXNpemVPYnNlcnZlcikgPT0gbnVsbCB8fCBfcmVzaXplT2JzZXJ2ZXIyLmRpc2Nvbm5lY3QoKTtcbiAgICByZXNpemVPYnNlcnZlciA9IG51bGw7XG4gICAgaWYgKGFuaW1hdGlvbkZyYW1lKSB7XG4gICAgICBjYW5jZWxBbmltYXRpb25GcmFtZShmcmFtZUlkKTtcbiAgICB9XG4gIH07XG59XG5cbi8qKlxuICogUmVzb2x2ZXMgd2l0aCBhbiBvYmplY3Qgb2Ygb3ZlcmZsb3cgc2lkZSBvZmZzZXRzIHRoYXQgZGV0ZXJtaW5lIGhvdyBtdWNoIHRoZVxuICogZWxlbWVudCBpcyBvdmVyZmxvd2luZyBhIGdpdmVuIGNsaXBwaW5nIGJvdW5kYXJ5IG9uIGVhY2ggc2lkZS5cbiAqIC0gcG9zaXRpdmUgPSBvdmVyZmxvd2luZyB0aGUgYm91bmRhcnkgYnkgdGhhdCBudW1iZXIgb2YgcGl4ZWxzXG4gKiAtIG5lZ2F0aXZlID0gaG93IG1hbnkgcGl4ZWxzIGxlZnQgYmVmb3JlIGl0IHdpbGwgb3ZlcmZsb3dcbiAqIC0gMCA9IGxpZXMgZmx1c2ggd2l0aCB0aGUgYm91bmRhcnlcbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9kZXRlY3RPdmVyZmxvd1xuICovXG5jb25zdCBkZXRlY3RPdmVyZmxvdyA9IGRldGVjdE92ZXJmbG93JDE7XG5cbi8qKlxuICogTW9kaWZpZXMgdGhlIHBsYWNlbWVudCBieSB0cmFuc2xhdGluZyB0aGUgZmxvYXRpbmcgZWxlbWVudCBhbG9uZyB0aGVcbiAqIHNwZWNpZmllZCBheGVzLlxuICogQSBudW1iZXIgKHNob3J0aGFuZCBmb3IgYG1haW5BeGlzYCBvciBkaXN0YW5jZSksIG9yIGFuIGF4ZXMgY29uZmlndXJhdGlvblxuICogb2JqZWN0IG1heSBiZSBwYXNzZWQuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3Mvb2Zmc2V0XG4gKi9cbmNvbnN0IG9mZnNldCA9IG9mZnNldCQxO1xuXG4vKipcbiAqIE9wdGltaXplcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBieSBjaG9vc2luZyB0aGUgcGxhY2VtZW50XG4gKiB0aGF0IGhhcyB0aGUgbW9zdCBzcGFjZSBhdmFpbGFibGUgYXV0b21hdGljYWxseSwgd2l0aG91dCBuZWVkaW5nIHRvIHNwZWNpZnkgYVxuICogcHJlZmVycmVkIHBsYWNlbWVudC4gQWx0ZXJuYXRpdmUgdG8gYGZsaXBgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2F1dG9QbGFjZW1lbnRcbiAqL1xuY29uc3QgYXV0b1BsYWNlbWVudCA9IGF1dG9QbGFjZW1lbnQkMTtcblxuLyoqXG4gKiBPcHRpbWl6ZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGZsb2F0aW5nIGVsZW1lbnQgYnkgc2hpZnRpbmcgaXQgaW4gb3JkZXIgdG9cbiAqIGtlZXAgaXQgaW4gdmlldyB3aGVuIGl0IHdpbGwgb3ZlcmZsb3cgdGhlIGNsaXBwaW5nIGJvdW5kYXJ5LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3NoaWZ0XG4gKi9cbmNvbnN0IHNoaWZ0ID0gc2hpZnQkMTtcblxuLyoqXG4gKiBPcHRpbWl6ZXMgdGhlIHZpc2liaWxpdHkgb2YgdGhlIGZsb2F0aW5nIGVsZW1lbnQgYnkgZmxpcHBpbmcgdGhlIGBwbGFjZW1lbnRgXG4gKiBpbiBvcmRlciB0byBrZWVwIGl0IGluIHZpZXcgd2hlbiB0aGUgcHJlZmVycmVkIHBsYWNlbWVudChzKSB3aWxsIG92ZXJmbG93IHRoZVxuICogY2xpcHBpbmcgYm91bmRhcnkuIEFsdGVybmF0aXZlIHRvIGBhdXRvUGxhY2VtZW50YC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9mbGlwXG4gKi9cbmNvbnN0IGZsaXAgPSBmbGlwJDE7XG5cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0aGF0IGFsbG93cyB5b3UgdG8gY2hhbmdlIHRoZSBzaXplIG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IOKAlFxuICogZm9yIGluc3RhbmNlLCBwcmV2ZW50IGl0IGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNsaXBwaW5nIGJvdW5kYXJ5IG9yIG1hdGNoIHRoZVxuICogd2lkdGggb2YgdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3NpemVcbiAqL1xuY29uc3Qgc2l6ZSA9IHNpemUkMTtcblxuLyoqXG4gKiBQcm92aWRlcyBkYXRhIHRvIGhpZGUgdGhlIGZsb2F0aW5nIGVsZW1lbnQgaW4gYXBwbGljYWJsZSBzaXR1YXRpb25zLCBzdWNoIGFzXG4gKiB3aGVuIGl0IGlzIG5vdCBpbiB0aGUgc2FtZSBjbGlwcGluZyBjb250ZXh0IGFzIHRoZSByZWZlcmVuY2UgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9oaWRlXG4gKi9cbmNvbnN0IGhpZGUgPSBoaWRlJDE7XG5cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0byBwb3NpdGlvbiBhbiBpbm5lciBlbGVtZW50IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IHNvIHRoYXQgaXRcbiAqIGFwcGVhcnMgY2VudGVyZWQgdG8gdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2Fycm93XG4gKi9cbmNvbnN0IGFycm93ID0gYXJyb3ckMTtcblxuLyoqXG4gKiBQcm92aWRlcyBpbXByb3ZlZCBwb3NpdGlvbmluZyBmb3IgaW5saW5lIHJlZmVyZW5jZSBlbGVtZW50cyB0aGF0IGNhbiBzcGFuXG4gKiBvdmVyIG11bHRpcGxlIGxpbmVzLCBzdWNoIGFzIGh5cGVybGlua3Mgb3IgcmFuZ2Ugc2VsZWN0aW9ucy5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9pbmxpbmVcbiAqL1xuY29uc3QgaW5saW5lID0gaW5saW5lJDE7XG5cbi8qKlxuICogQnVpbHQtaW4gYGxpbWl0ZXJgIHRoYXQgd2lsbCBzdG9wIGBzaGlmdCgpYCBhdCBhIGNlcnRhaW4gcG9pbnQuXG4gKi9cbmNvbnN0IGxpbWl0U2hpZnQgPSBsaW1pdFNoaWZ0JDE7XG5cbi8qKlxuICogQ29tcHV0ZXMgdGhlIGB4YCBhbmQgYHlgIGNvb3JkaW5hdGVzIHRoYXQgd2lsbCBwbGFjZSB0aGUgZmxvYXRpbmcgZWxlbWVudFxuICogbmV4dCB0byBhIGdpdmVuIHJlZmVyZW5jZSBlbGVtZW50LlxuICovXG5jb25zdCBjb21wdXRlUG9zaXRpb24gPSAocmVmZXJlbmNlLCBmbG9hdGluZywgb3B0aW9ucykgPT4ge1xuICAvLyBUaGlzIGNhY2hlcyB0aGUgZXhwZW5zaXZlIGBnZXRDbGlwcGluZ0VsZW1lbnRBbmNlc3RvcnNgIGZ1bmN0aW9uIHNvIHRoYXRcbiAgLy8gbXVsdGlwbGUgbGlmZWN5Y2xlIHJlc2V0cyByZS11c2UgdGhlIHNhbWUgcmVzdWx0LiBJdCBvbmx5IGxpdmVzIGZvciBhXG4gIC8vIHNpbmdsZSBjYWxsLiBJZiBvdGhlciBmdW5jdGlvbnMgYmVjb21lIGV4cGVuc2l2ZSwgd2UgY2FuIGFkZCB0aGVtIGFzIHdlbGwuXG4gIGNvbnN0IGNhY2hlID0gbmV3IE1hcCgpO1xuICBjb25zdCBtZXJnZWRPcHRpb25zID0ge1xuICAgIHBsYXRmb3JtLFxuICAgIC4uLm9wdGlvbnNcbiAgfTtcbiAgY29uc3QgcGxhdGZvcm1XaXRoQ2FjaGUgPSB7XG4gICAgLi4ubWVyZ2VkT3B0aW9ucy5wbGF0Zm9ybSxcbiAgICBfYzogY2FjaGVcbiAgfTtcbiAgcmV0dXJuIGNvbXB1dGVQb3NpdGlvbiQxKHJlZmVyZW5jZSwgZmxvYXRpbmcsIHtcbiAgICAuLi5tZXJnZWRPcHRpb25zLFxuICAgIHBsYXRmb3JtOiBwbGF0Zm9ybVdpdGhDYWNoZVxuICB9KTtcbn07XG5cbmV4cG9ydCB7IGFycm93LCBhdXRvUGxhY2VtZW50LCBhdXRvVXBkYXRlLCBjb21wdXRlUG9zaXRpb24sIGRldGVjdE92ZXJmbG93LCBmbGlwLCBoaWRlLCBpbmxpbmUsIGxpbWl0U2hpZnQsIG9mZnNldCwgcGxhdGZvcm0sIHNoaWZ0LCBzaXplIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ arrow: function() { return /* binding */ arrow; },\n/* harmony export */ autoPlacement: function() { return /* binding */ autoPlacement; },\n/* harmony export */ autoUpdate: function() { return /* reexport safe */ _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.autoUpdate; },\n/* harmony export */ computePosition: function() { return /* reexport safe */ _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.computePosition; },\n/* harmony export */ detectOverflow: function() { return /* reexport safe */ _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.detectOverflow; },\n/* harmony export */ flip: function() { return /* binding */ flip; },\n/* harmony export */ getOverflowAncestors: function() { return /* reexport safe */ _floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__.getOverflowAncestors; },\n/* harmony export */ hide: function() { return /* binding */ hide; },\n/* harmony export */ inline: function() { return /* binding */ inline; },\n/* harmony export */ limitShift: function() { return /* binding */ limitShift; },\n/* harmony export */ offset: function() { return /* binding */ offset; },\n/* harmony export */ platform: function() { return /* reexport safe */ _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.platform; },\n/* harmony export */ shift: function() { return /* binding */ shift; },\n/* harmony export */ size: function() { return /* binding */ size; },\n/* harmony export */ useFloating: function() { return /* binding */ useFloating; }\n/* harmony export */ });\n/* harmony import */ var _floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @floating-ui/dom */ \"(app-pages-browser)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\");\n/* harmony import */ var _floating_ui_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @floating-ui/dom */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-dom */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react-dom/index.js\");\n\n\n\n\n\n\nvar index = typeof document !== 'undefined' ? react__WEBPACK_IMPORTED_MODULE_2__.useLayoutEffect : react__WEBPACK_IMPORTED_MODULE_2__.useEffect;\n\n// Fork of `fast-deep-equal` that only does the comparisons we need and compares\n// functions\nfunction deepEqual(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (typeof a === 'function' && a.toString() === b.toString()) {\n return true;\n }\n let length;\n let i;\n let keys;\n if (a && b && typeof a === 'object') {\n if (Array.isArray(a)) {\n length = a.length;\n if (length !== b.length) return false;\n for (i = length; i-- !== 0;) {\n if (!deepEqual(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) {\n return false;\n }\n for (i = length; i-- !== 0;) {\n if (!{}.hasOwnProperty.call(b, keys[i])) {\n return false;\n }\n }\n for (i = length; i-- !== 0;) {\n const key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n continue;\n }\n if (!deepEqual(a[key], b[key])) {\n return false;\n }\n }\n return true;\n }\n return a !== a && b !== b;\n}\n\nfunction getDPR(element) {\n if (typeof window === 'undefined') {\n return 1;\n }\n const win = element.ownerDocument.defaultView || window;\n return win.devicePixelRatio || 1;\n}\n\nfunction roundByDPR(element, value) {\n const dpr = getDPR(element);\n return Math.round(value * dpr) / dpr;\n}\n\nfunction useLatestRef(value) {\n const ref = react__WEBPACK_IMPORTED_MODULE_2__.useRef(value);\n index(() => {\n ref.current = value;\n });\n return ref;\n}\n\n/**\n * Provides data to position a floating element.\n * @see https://floating-ui.com/docs/useFloating\n */\nfunction useFloating(options) {\n if (options === void 0) {\n options = {};\n }\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform,\n elements: {\n reference: externalReference,\n floating: externalFloating\n } = {},\n transform = true,\n whileElementsMounted,\n open\n } = options;\n const [data, setData] = react__WEBPACK_IMPORTED_MODULE_2__.useState({\n x: 0,\n y: 0,\n strategy,\n placement,\n middlewareData: {},\n isPositioned: false\n });\n const [latestMiddleware, setLatestMiddleware] = react__WEBPACK_IMPORTED_MODULE_2__.useState(middleware);\n if (!deepEqual(latestMiddleware, middleware)) {\n setLatestMiddleware(middleware);\n }\n const [_reference, _setReference] = react__WEBPACK_IMPORTED_MODULE_2__.useState(null);\n const [_floating, _setFloating] = react__WEBPACK_IMPORTED_MODULE_2__.useState(null);\n const setReference = react__WEBPACK_IMPORTED_MODULE_2__.useCallback(node => {\n if (node !== referenceRef.current) {\n referenceRef.current = node;\n _setReference(node);\n }\n }, []);\n const setFloating = react__WEBPACK_IMPORTED_MODULE_2__.useCallback(node => {\n if (node !== floatingRef.current) {\n floatingRef.current = node;\n _setFloating(node);\n }\n }, []);\n const referenceEl = externalReference || _reference;\n const floatingEl = externalFloating || _floating;\n const referenceRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(null);\n const floatingRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(null);\n const dataRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(data);\n const hasWhileElementsMounted = whileElementsMounted != null;\n const whileElementsMountedRef = useLatestRef(whileElementsMounted);\n const platformRef = useLatestRef(platform);\n const update = react__WEBPACK_IMPORTED_MODULE_2__.useCallback(() => {\n if (!referenceRef.current || !floatingRef.current) {\n return;\n }\n const config = {\n placement,\n strategy,\n middleware: latestMiddleware\n };\n if (platformRef.current) {\n config.platform = platformRef.current;\n }\n (0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.computePosition)(referenceRef.current, floatingRef.current, config).then(data => {\n const fullData = {\n ...data,\n isPositioned: true\n };\n if (isMountedRef.current && !deepEqual(dataRef.current, fullData)) {\n dataRef.current = fullData;\n react_dom__WEBPACK_IMPORTED_MODULE_3__.flushSync(() => {\n setData(fullData);\n });\n }\n });\n }, [latestMiddleware, placement, strategy, platformRef]);\n index(() => {\n if (open === false && dataRef.current.isPositioned) {\n dataRef.current.isPositioned = false;\n setData(data => ({\n ...data,\n isPositioned: false\n }));\n }\n }, [open]);\n const isMountedRef = react__WEBPACK_IMPORTED_MODULE_2__.useRef(false);\n index(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n };\n }, []);\n index(() => {\n if (referenceEl) referenceRef.current = referenceEl;\n if (floatingEl) floatingRef.current = floatingEl;\n if (referenceEl && floatingEl) {\n if (whileElementsMountedRef.current) {\n return whileElementsMountedRef.current(referenceEl, floatingEl, update);\n }\n update();\n }\n }, [referenceEl, floatingEl, update, whileElementsMountedRef, hasWhileElementsMounted]);\n const refs = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => ({\n reference: referenceRef,\n floating: floatingRef,\n setReference,\n setFloating\n }), [setReference, setFloating]);\n const elements = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => ({\n reference: referenceEl,\n floating: floatingEl\n }), [referenceEl, floatingEl]);\n const floatingStyles = react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => {\n const initialStyles = {\n position: strategy,\n left: 0,\n top: 0\n };\n if (!elements.floating) {\n return initialStyles;\n }\n const x = roundByDPR(elements.floating, data.x);\n const y = roundByDPR(elements.floating, data.y);\n if (transform) {\n return {\n ...initialStyles,\n transform: \"translate(\" + x + \"px, \" + y + \"px)\",\n ...(getDPR(elements.floating) >= 1.5 && {\n willChange: 'transform'\n })\n };\n }\n return {\n position: strategy,\n left: x,\n top: y\n };\n }, [strategy, transform, elements.floating, data.x, data.y]);\n return react__WEBPACK_IMPORTED_MODULE_2__.useMemo(() => ({\n ...data,\n update,\n refs,\n elements,\n floatingStyles\n }), [data, update, refs, elements, floatingStyles]);\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * This wraps the core `arrow` middleware to allow React refs as the element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow$1 = options => {\n function isRef(value) {\n return {}.hasOwnProperty.call(value, 'current');\n }\n return {\n name: 'arrow',\n options,\n fn(state) {\n const {\n element,\n padding\n } = typeof options === 'function' ? options(state) : options;\n if (element && isRef(element)) {\n if (element.current != null) {\n return (0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.arrow)({\n element: element.current,\n padding\n }).fn(state);\n }\n return {};\n }\n if (element) {\n return (0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.arrow)({\n element,\n padding\n }).fn(state);\n }\n return {};\n }\n };\n};\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.offset)(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.shift)(options),\n options: [options, deps]\n});\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.limitShift)(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.flip)(options),\n options: [options, deps]\n});\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.size)(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.autoPlacement)(options),\n options: [options, deps]\n});\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.hide)(options),\n options: [options, deps]\n});\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = (options, deps) => ({\n ...(0,_floating_ui_dom__WEBPACK_IMPORTED_MODULE_0__.inline)(options),\n options: [options, deps]\n});\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * This wraps the core `arrow` middleware to allow React refs as the element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = (options, deps) => ({\n ...arrow$1(options),\n options: [options, deps]\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvcmVhY3QtZG9tL2Rpc3QvZmxvYXRpbmctdWkucmVhY3QtZG9tLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQTZPO0FBQzlIO0FBQ2hGO0FBQ29CO0FBQ2I7O0FBRXRDLDhDQUE4QyxrREFBZSxHQUFHLDRDQUFTOztBQUV6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixVQUFVO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsVUFBVTtBQUMvQixhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLFVBQVU7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsY0FBYyx5Q0FBWTtBQUMxQjtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNLElBQUk7QUFDVjtBQUNBO0FBQ0E7QUFDQSxJQUFJO0FBQ0osMEJBQTBCLDJDQUFjO0FBQ3hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCO0FBQ3RCO0FBQ0EsR0FBRztBQUNILGtEQUFrRCwyQ0FBYztBQUNoRTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsMkNBQWM7QUFDcEQsb0NBQW9DLDJDQUFjO0FBQ2xELHVCQUF1Qiw4Q0FBaUI7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0gsc0JBQXNCLDhDQUFpQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0EsdUJBQXVCLHlDQUFZO0FBQ25DLHNCQUFzQix5Q0FBWTtBQUNsQyxrQkFBa0IseUNBQVk7QUFDOUI7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLDhDQUFpQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSxpRUFBZTtBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLGdEQUFrQjtBQUMxQjtBQUNBLFNBQVM7QUFDVDtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0EsR0FBRztBQUNILHVCQUF1Qix5Q0FBWTtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxlQUFlLDBDQUFhO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNILG1CQUFtQiwwQ0FBYTtBQUNoQztBQUNBO0FBQ0EsR0FBRztBQUNILHlCQUF5QiwwQ0FBYTtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSCxTQUFTLDBDQUFhO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0E7QUFDQSxpQkFBaUIsdURBQU87QUFDeEI7QUFDQTtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsdURBQU87QUFDdEI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLHdEQUFRO0FBQ2I7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssdURBQU87QUFDWjtBQUNBLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssNERBQVk7QUFDakI7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxzREFBTTtBQUNYO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssc0RBQU07QUFDWDtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLCtEQUFlO0FBQ3BCO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLHNEQUFNO0FBQ1g7QUFDQSxDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUssd0RBQVE7QUFDYjtBQUNBLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFaUciLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BmbG9hdGluZy11aS9yZWFjdC1kb20vZGlzdC9mbG9hdGluZy11aS5yZWFjdC1kb20ubWpzP2Y5MjQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZVBvc2l0aW9uLCBhcnJvdyBhcyBhcnJvdyQyLCBvZmZzZXQgYXMgb2Zmc2V0JDEsIHNoaWZ0IGFzIHNoaWZ0JDEsIGxpbWl0U2hpZnQgYXMgbGltaXRTaGlmdCQxLCBmbGlwIGFzIGZsaXAkMSwgc2l6ZSBhcyBzaXplJDEsIGF1dG9QbGFjZW1lbnQgYXMgYXV0b1BsYWNlbWVudCQxLCBoaWRlIGFzIGhpZGUkMSwgaW5saW5lIGFzIGlubGluZSQxIH0gZnJvbSAnQGZsb2F0aW5nLXVpL2RvbSc7XG5leHBvcnQgeyBhdXRvVXBkYXRlLCBjb21wdXRlUG9zaXRpb24sIGRldGVjdE92ZXJmbG93LCBnZXRPdmVyZmxvd0FuY2VzdG9ycywgcGxhdGZvcm0gfSBmcm9tICdAZmxvYXRpbmctdWkvZG9tJztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcblxudmFyIGluZGV4ID0gdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyA/IHVzZUxheW91dEVmZmVjdCA6IHVzZUVmZmVjdDtcblxuLy8gRm9yayBvZiBgZmFzdC1kZWVwLWVxdWFsYCB0aGF0IG9ubHkgZG9lcyB0aGUgY29tcGFyaXNvbnMgd2UgbmVlZCBhbmQgY29tcGFyZXNcbi8vIGZ1bmN0aW9uc1xuZnVuY3Rpb24gZGVlcEVxdWFsKGEsIGIpIHtcbiAgaWYgKGEgPT09IGIpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAodHlwZW9mIGEgIT09IHR5cGVvZiBiKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmICh0eXBlb2YgYSA9PT0gJ2Z1bmN0aW9uJyAmJiBhLnRvU3RyaW5nKCkgPT09IGIudG9TdHJpbmcoKSkge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIGxldCBsZW5ndGg7XG4gIGxldCBpO1xuICBsZXQga2V5cztcbiAgaWYgKGEgJiYgYiAmJiB0eXBlb2YgYSA9PT0gJ29iamVjdCcpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShhKSkge1xuICAgICAgbGVuZ3RoID0gYS5sZW5ndGg7XG4gICAgICBpZiAobGVuZ3RoICE9PSBiLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuICAgICAgZm9yIChpID0gbGVuZ3RoOyBpLS0gIT09IDA7KSB7XG4gICAgICAgIGlmICghZGVlcEVxdWFsKGFbaV0sIGJbaV0pKSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAga2V5cyA9IE9iamVjdC5rZXlzKGEpO1xuICAgIGxlbmd0aCA9IGtleXMubGVuZ3RoO1xuICAgIGlmIChsZW5ndGggIT09IE9iamVjdC5rZXlzKGIpLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBmb3IgKGkgPSBsZW5ndGg7IGktLSAhPT0gMDspIHtcbiAgICAgIGlmICghe30uaGFzT3duUHJvcGVydHkuY2FsbChiLCBrZXlzW2ldKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIGZvciAoaSA9IGxlbmd0aDsgaS0tICE9PSAwOykge1xuICAgICAgY29uc3Qga2V5ID0ga2V5c1tpXTtcbiAgICAgIGlmIChrZXkgPT09ICdfb3duZXInICYmIGEuJCR0eXBlb2YpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBpZiAoIWRlZXBFcXVhbChhW2tleV0sIGJba2V5XSkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICByZXR1cm4gYSAhPT0gYSAmJiBiICE9PSBiO1xufVxuXG5mdW5jdGlvbiBnZXREUFIoZWxlbWVudCkge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gMTtcbiAgfVxuICBjb25zdCB3aW4gPSBlbGVtZW50Lm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcgfHwgd2luZG93O1xuICByZXR1cm4gd2luLmRldmljZVBpeGVsUmF0aW8gfHwgMTtcbn1cblxuZnVuY3Rpb24gcm91bmRCeURQUihlbGVtZW50LCB2YWx1ZSkge1xuICBjb25zdCBkcHIgPSBnZXREUFIoZWxlbWVudCk7XG4gIHJldHVybiBNYXRoLnJvdW5kKHZhbHVlICogZHByKSAvIGRwcjtcbn1cblxuZnVuY3Rpb24gdXNlTGF0ZXN0UmVmKHZhbHVlKSB7XG4gIGNvbnN0IHJlZiA9IFJlYWN0LnVzZVJlZih2YWx1ZSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICByZWYuY3VycmVudCA9IHZhbHVlO1xuICB9KTtcbiAgcmV0dXJuIHJlZjtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBkYXRhIHRvIHBvc2l0aW9uIGEgZmxvYXRpbmcgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy91c2VGbG9hdGluZ1xuICovXG5mdW5jdGlvbiB1c2VGbG9hdGluZyhvcHRpb25zKSB7XG4gIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICBvcHRpb25zID0ge307XG4gIH1cbiAgY29uc3Qge1xuICAgIHBsYWNlbWVudCA9ICdib3R0b20nLFxuICAgIHN0cmF0ZWd5ID0gJ2Fic29sdXRlJyxcbiAgICBtaWRkbGV3YXJlID0gW10sXG4gICAgcGxhdGZvcm0sXG4gICAgZWxlbWVudHM6IHtcbiAgICAgIHJlZmVyZW5jZTogZXh0ZXJuYWxSZWZlcmVuY2UsXG4gICAgICBmbG9hdGluZzogZXh0ZXJuYWxGbG9hdGluZ1xuICAgIH0gPSB7fSxcbiAgICB0cmFuc2Zvcm0gPSB0cnVlLFxuICAgIHdoaWxlRWxlbWVudHNNb3VudGVkLFxuICAgIG9wZW5cbiAgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IFJlYWN0LnVzZVN0YXRlKHtcbiAgICB4OiAwLFxuICAgIHk6IDAsXG4gICAgc3RyYXRlZ3ksXG4gICAgcGxhY2VtZW50LFxuICAgIG1pZGRsZXdhcmVEYXRhOiB7fSxcbiAgICBpc1Bvc2l0aW9uZWQ6IGZhbHNlXG4gIH0pO1xuICBjb25zdCBbbGF0ZXN0TWlkZGxld2FyZSwgc2V0TGF0ZXN0TWlkZGxld2FyZV0gPSBSZWFjdC51c2VTdGF0ZShtaWRkbGV3YXJlKTtcbiAgaWYgKCFkZWVwRXF1YWwobGF0ZXN0TWlkZGxld2FyZSwgbWlkZGxld2FyZSkpIHtcbiAgICBzZXRMYXRlc3RNaWRkbGV3YXJlKG1pZGRsZXdhcmUpO1xuICB9XG4gIGNvbnN0IFtfcmVmZXJlbmNlLCBfc2V0UmVmZXJlbmNlXSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBbX2Zsb2F0aW5nLCBfc2V0RmxvYXRpbmddID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG4gIGNvbnN0IHNldFJlZmVyZW5jZSA9IFJlYWN0LnVzZUNhbGxiYWNrKG5vZGUgPT4ge1xuICAgIGlmIChub2RlICE9PSByZWZlcmVuY2VSZWYuY3VycmVudCkge1xuICAgICAgcmVmZXJlbmNlUmVmLmN1cnJlbnQgPSBub2RlO1xuICAgICAgX3NldFJlZmVyZW5jZShub2RlKTtcbiAgICB9XG4gIH0sIFtdKTtcbiAgY29uc3Qgc2V0RmxvYXRpbmcgPSBSZWFjdC51c2VDYWxsYmFjayhub2RlID0+IHtcbiAgICBpZiAobm9kZSAhPT0gZmxvYXRpbmdSZWYuY3VycmVudCkge1xuICAgICAgZmxvYXRpbmdSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICBfc2V0RmxvYXRpbmcobm9kZSk7XG4gICAgfVxuICB9LCBbXSk7XG4gIGNvbnN0IHJlZmVyZW5jZUVsID0gZXh0ZXJuYWxSZWZlcmVuY2UgfHwgX3JlZmVyZW5jZTtcbiAgY29uc3QgZmxvYXRpbmdFbCA9IGV4dGVybmFsRmxvYXRpbmcgfHwgX2Zsb2F0aW5nO1xuICBjb25zdCByZWZlcmVuY2VSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IGZsb2F0aW5nUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICBjb25zdCBkYXRhUmVmID0gUmVhY3QudXNlUmVmKGRhdGEpO1xuICBjb25zdCBoYXNXaGlsZUVsZW1lbnRzTW91bnRlZCA9IHdoaWxlRWxlbWVudHNNb3VudGVkICE9IG51bGw7XG4gIGNvbnN0IHdoaWxlRWxlbWVudHNNb3VudGVkUmVmID0gdXNlTGF0ZXN0UmVmKHdoaWxlRWxlbWVudHNNb3VudGVkKTtcbiAgY29uc3QgcGxhdGZvcm1SZWYgPSB1c2VMYXRlc3RSZWYocGxhdGZvcm0pO1xuICBjb25zdCB1cGRhdGUgPSBSZWFjdC51c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKCFyZWZlcmVuY2VSZWYuY3VycmVudCB8fCAhZmxvYXRpbmdSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICBwbGFjZW1lbnQsXG4gICAgICBzdHJhdGVneSxcbiAgICAgIG1pZGRsZXdhcmU6IGxhdGVzdE1pZGRsZXdhcmVcbiAgICB9O1xuICAgIGlmIChwbGF0Zm9ybVJlZi5jdXJyZW50KSB7XG4gICAgICBjb25maWcucGxhdGZvcm0gPSBwbGF0Zm9ybVJlZi5jdXJyZW50O1xuICAgIH1cbiAgICBjb21wdXRlUG9zaXRpb24ocmVmZXJlbmNlUmVmLmN1cnJlbnQsIGZsb2F0aW5nUmVmLmN1cnJlbnQsIGNvbmZpZykudGhlbihkYXRhID0+IHtcbiAgICAgIGNvbnN0IGZ1bGxEYXRhID0ge1xuICAgICAgICAuLi5kYXRhLFxuICAgICAgICBpc1Bvc2l0aW9uZWQ6IHRydWVcbiAgICAgIH07XG4gICAgICBpZiAoaXNNb3VudGVkUmVmLmN1cnJlbnQgJiYgIWRlZXBFcXVhbChkYXRhUmVmLmN1cnJlbnQsIGZ1bGxEYXRhKSkge1xuICAgICAgICBkYXRhUmVmLmN1cnJlbnQgPSBmdWxsRGF0YTtcbiAgICAgICAgUmVhY3RET00uZmx1c2hTeW5jKCgpID0+IHtcbiAgICAgICAgICBzZXREYXRhKGZ1bGxEYXRhKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0sIFtsYXRlc3RNaWRkbGV3YXJlLCBwbGFjZW1lbnQsIHN0cmF0ZWd5LCBwbGF0Zm9ybVJlZl0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKG9wZW4gPT09IGZhbHNlICYmIGRhdGFSZWYuY3VycmVudC5pc1Bvc2l0aW9uZWQpIHtcbiAgICAgIGRhdGFSZWYuY3VycmVudC5pc1Bvc2l0aW9uZWQgPSBmYWxzZTtcbiAgICAgIHNldERhdGEoZGF0YSA9PiAoe1xuICAgICAgICAuLi5kYXRhLFxuICAgICAgICBpc1Bvc2l0aW9uZWQ6IGZhbHNlXG4gICAgICB9KSk7XG4gICAgfVxuICB9LCBbb3Blbl0pO1xuICBjb25zdCBpc01vdW50ZWRSZWYgPSBSZWFjdC51c2VSZWYoZmFsc2UpO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaXNNb3VudGVkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpc01vdW50ZWRSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgIH07XG4gIH0sIFtdKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmIChyZWZlcmVuY2VFbCkgcmVmZXJlbmNlUmVmLmN1cnJlbnQgPSByZWZlcmVuY2VFbDtcbiAgICBpZiAoZmxvYXRpbmdFbCkgZmxvYXRpbmdSZWYuY3VycmVudCA9IGZsb2F0aW5nRWw7XG4gICAgaWYgKHJlZmVyZW5jZUVsICYmIGZsb2F0aW5nRWwpIHtcbiAgICAgIGlmICh3aGlsZUVsZW1lbnRzTW91bnRlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgIHJldHVybiB3aGlsZUVsZW1lbnRzTW91bnRlZFJlZi5jdXJyZW50KHJlZmVyZW5jZUVsLCBmbG9hdGluZ0VsLCB1cGRhdGUpO1xuICAgICAgfVxuICAgICAgdXBkYXRlKCk7XG4gICAgfVxuICB9LCBbcmVmZXJlbmNlRWwsIGZsb2F0aW5nRWwsIHVwZGF0ZSwgd2hpbGVFbGVtZW50c01vdW50ZWRSZWYsIGhhc1doaWxlRWxlbWVudHNNb3VudGVkXSk7XG4gIGNvbnN0IHJlZnMgPSBSZWFjdC51c2VNZW1vKCgpID0+ICh7XG4gICAgcmVmZXJlbmNlOiByZWZlcmVuY2VSZWYsXG4gICAgZmxvYXRpbmc6IGZsb2F0aW5nUmVmLFxuICAgIHNldFJlZmVyZW5jZSxcbiAgICBzZXRGbG9hdGluZ1xuICB9KSwgW3NldFJlZmVyZW5jZSwgc2V0RmxvYXRpbmddKTtcbiAgY29uc3QgZWxlbWVudHMgPSBSZWFjdC51c2VNZW1vKCgpID0+ICh7XG4gICAgcmVmZXJlbmNlOiByZWZlcmVuY2VFbCxcbiAgICBmbG9hdGluZzogZmxvYXRpbmdFbFxuICB9KSwgW3JlZmVyZW5jZUVsLCBmbG9hdGluZ0VsXSk7XG4gIGNvbnN0IGZsb2F0aW5nU3R5bGVzID0gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgaW5pdGlhbFN0eWxlcyA9IHtcbiAgICAgIHBvc2l0aW9uOiBzdHJhdGVneSxcbiAgICAgIGxlZnQ6IDAsXG4gICAgICB0b3A6IDBcbiAgICB9O1xuICAgIGlmICghZWxlbWVudHMuZmxvYXRpbmcpIHtcbiAgICAgIHJldHVybiBpbml0aWFsU3R5bGVzO1xuICAgIH1cbiAgICBjb25zdCB4ID0gcm91bmRCeURQUihlbGVtZW50cy5mbG9hdGluZywgZGF0YS54KTtcbiAgICBjb25zdCB5ID0gcm91bmRCeURQUihlbGVtZW50cy5mbG9hdGluZywgZGF0YS55KTtcbiAgICBpZiAodHJhbnNmb3JtKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5pbml0aWFsU3R5bGVzLFxuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKFwiICsgeCArIFwicHgsIFwiICsgeSArIFwicHgpXCIsXG4gICAgICAgIC4uLihnZXREUFIoZWxlbWVudHMuZmxvYXRpbmcpID49IDEuNSAmJiB7XG4gICAgICAgICAgd2lsbENoYW5nZTogJ3RyYW5zZm9ybSdcbiAgICAgICAgfSlcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogc3RyYXRlZ3ksXG4gICAgICBsZWZ0OiB4LFxuICAgICAgdG9wOiB5XG4gICAgfTtcbiAgfSwgW3N0cmF0ZWd5LCB0cmFuc2Zvcm0sIGVsZW1lbnRzLmZsb2F0aW5nLCBkYXRhLngsIGRhdGEueV0pO1xuICByZXR1cm4gUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgIC4uLmRhdGEsXG4gICAgdXBkYXRlLFxuICAgIHJlZnMsXG4gICAgZWxlbWVudHMsXG4gICAgZmxvYXRpbmdTdHlsZXNcbiAgfSksIFtkYXRhLCB1cGRhdGUsIHJlZnMsIGVsZW1lbnRzLCBmbG9hdGluZ1N0eWxlc10pO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGRhdGEgdG8gcG9zaXRpb24gYW4gaW5uZXIgZWxlbWVudCBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBzbyB0aGF0IGl0XG4gKiBhcHBlYXJzIGNlbnRlcmVkIHRvIHRoZSByZWZlcmVuY2UgZWxlbWVudC5cbiAqIFRoaXMgd3JhcHMgdGhlIGNvcmUgYGFycm93YCBtaWRkbGV3YXJlIHRvIGFsbG93IFJlYWN0IHJlZnMgYXMgdGhlIGVsZW1lbnQuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvYXJyb3dcbiAqL1xuY29uc3QgYXJyb3ckMSA9IG9wdGlvbnMgPT4ge1xuICBmdW5jdGlvbiBpc1JlZih2YWx1ZSkge1xuICAgIHJldHVybiB7fS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbHVlLCAnY3VycmVudCcpO1xuICB9XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ2Fycm93JyxcbiAgICBvcHRpb25zLFxuICAgIGZuKHN0YXRlKSB7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGVsZW1lbnQsXG4gICAgICAgIHBhZGRpbmdcbiAgICAgIH0gPSB0eXBlb2Ygb3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJyA/IG9wdGlvbnMoc3RhdGUpIDogb3B0aW9ucztcbiAgICAgIGlmIChlbGVtZW50ICYmIGlzUmVmKGVsZW1lbnQpKSB7XG4gICAgICAgIGlmIChlbGVtZW50LmN1cnJlbnQgIT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiBhcnJvdyQyKHtcbiAgICAgICAgICAgIGVsZW1lbnQ6IGVsZW1lbnQuY3VycmVudCxcbiAgICAgICAgICAgIHBhZGRpbmdcbiAgICAgICAgICB9KS5mbihzdGF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHt9O1xuICAgICAgfVxuICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgcmV0dXJuIGFycm93JDIoe1xuICAgICAgICAgIGVsZW1lbnQsXG4gICAgICAgICAgcGFkZGluZ1xuICAgICAgICB9KS5mbihzdGF0ZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICB9O1xufTtcblxuLyoqXG4gKiBNb2RpZmllcyB0aGUgcGxhY2VtZW50IGJ5IHRyYW5zbGF0aW5nIHRoZSBmbG9hdGluZyBlbGVtZW50IGFsb25nIHRoZVxuICogc3BlY2lmaWVkIGF4ZXMuXG4gKiBBIG51bWJlciAoc2hvcnRoYW5kIGZvciBgbWFpbkF4aXNgIG9yIGRpc3RhbmNlKSwgb3IgYW4gYXhlcyBjb25maWd1cmF0aW9uXG4gKiBvYmplY3QgbWF5IGJlIHBhc3NlZC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9vZmZzZXRcbiAqL1xuY29uc3Qgb2Zmc2V0ID0gKG9wdGlvbnMsIGRlcHMpID0+ICh7XG4gIC4uLm9mZnNldCQxKG9wdGlvbnMpLFxuICBvcHRpb25zOiBbb3B0aW9ucywgZGVwc11cbn0pO1xuXG4vKipcbiAqIE9wdGltaXplcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBieSBzaGlmdGluZyBpdCBpbiBvcmRlciB0b1xuICoga2VlcCBpdCBpbiB2aWV3IHdoZW4gaXQgd2lsbCBvdmVyZmxvdyB0aGUgY2xpcHBpbmcgYm91bmRhcnkuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3Mvc2hpZnRcbiAqL1xuY29uc3Qgc2hpZnQgPSAob3B0aW9ucywgZGVwcykgPT4gKHtcbiAgLi4uc2hpZnQkMShvcHRpb25zKSxcbiAgb3B0aW9uczogW29wdGlvbnMsIGRlcHNdXG59KTtcbi8qKlxuICogQnVpbHQtaW4gYGxpbWl0ZXJgIHRoYXQgd2lsbCBzdG9wIGBzaGlmdCgpYCBhdCBhIGNlcnRhaW4gcG9pbnQuXG4gKi9cbmNvbnN0IGxpbWl0U2hpZnQgPSAob3B0aW9ucywgZGVwcykgPT4gKHtcbiAgLi4ubGltaXRTaGlmdCQxKG9wdGlvbnMpLFxuICBvcHRpb25zOiBbb3B0aW9ucywgZGVwc11cbn0pO1xuXG4vKipcbiAqIE9wdGltaXplcyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBieSBmbGlwcGluZyB0aGUgYHBsYWNlbWVudGBcbiAqIGluIG9yZGVyIHRvIGtlZXAgaXQgaW4gdmlldyB3aGVuIHRoZSBwcmVmZXJyZWQgcGxhY2VtZW50KHMpIHdpbGwgb3ZlcmZsb3cgdGhlXG4gKiBjbGlwcGluZyBib3VuZGFyeS4gQWx0ZXJuYXRpdmUgdG8gYGF1dG9QbGFjZW1lbnRgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2ZsaXBcbiAqL1xuY29uc3QgZmxpcCA9IChvcHRpb25zLCBkZXBzKSA9PiAoe1xuICAuLi5mbGlwJDEob3B0aW9ucyksXG4gIG9wdGlvbnM6IFtvcHRpb25zLCBkZXBzXVxufSk7XG5cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0aGF0IGFsbG93cyB5b3UgdG8gY2hhbmdlIHRoZSBzaXplIG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IOKAlFxuICogZm9yIGluc3RhbmNlLCBwcmV2ZW50IGl0IGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNsaXBwaW5nIGJvdW5kYXJ5IG9yIG1hdGNoIHRoZVxuICogd2lkdGggb2YgdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3NpemVcbiAqL1xuY29uc3Qgc2l6ZSA9IChvcHRpb25zLCBkZXBzKSA9PiAoe1xuICAuLi5zaXplJDEob3B0aW9ucyksXG4gIG9wdGlvbnM6IFtvcHRpb25zLCBkZXBzXVxufSk7XG5cbi8qKlxuICogT3B0aW1pemVzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IGJ5IGNob29zaW5nIHRoZSBwbGFjZW1lbnRcbiAqIHRoYXQgaGFzIHRoZSBtb3N0IHNwYWNlIGF2YWlsYWJsZSBhdXRvbWF0aWNhbGx5LCB3aXRob3V0IG5lZWRpbmcgdG8gc3BlY2lmeSBhXG4gKiBwcmVmZXJyZWQgcGxhY2VtZW50LiBBbHRlcm5hdGl2ZSB0byBgZmxpcGAuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvYXV0b1BsYWNlbWVudFxuICovXG5jb25zdCBhdXRvUGxhY2VtZW50ID0gKG9wdGlvbnMsIGRlcHMpID0+ICh7XG4gIC4uLmF1dG9QbGFjZW1lbnQkMShvcHRpb25zKSxcbiAgb3B0aW9uczogW29wdGlvbnMsIGRlcHNdXG59KTtcblxuLyoqXG4gKiBQcm92aWRlcyBkYXRhIHRvIGhpZGUgdGhlIGZsb2F0aW5nIGVsZW1lbnQgaW4gYXBwbGljYWJsZSBzaXR1YXRpb25zLCBzdWNoIGFzXG4gKiB3aGVuIGl0IGlzIG5vdCBpbiB0aGUgc2FtZSBjbGlwcGluZyBjb250ZXh0IGFzIHRoZSByZWZlcmVuY2UgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9oaWRlXG4gKi9cbmNvbnN0IGhpZGUgPSAob3B0aW9ucywgZGVwcykgPT4gKHtcbiAgLi4uaGlkZSQxKG9wdGlvbnMpLFxuICBvcHRpb25zOiBbb3B0aW9ucywgZGVwc11cbn0pO1xuXG4vKipcbiAqIFByb3ZpZGVzIGltcHJvdmVkIHBvc2l0aW9uaW5nIGZvciBpbmxpbmUgcmVmZXJlbmNlIGVsZW1lbnRzIHRoYXQgY2FuIHNwYW5cbiAqIG92ZXIgbXVsdGlwbGUgbGluZXMsIHN1Y2ggYXMgaHlwZXJsaW5rcyBvciByYW5nZSBzZWxlY3Rpb25zLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL2lubGluZVxuICovXG5jb25zdCBpbmxpbmUgPSAob3B0aW9ucywgZGVwcykgPT4gKHtcbiAgLi4uaW5saW5lJDEob3B0aW9ucyksXG4gIG9wdGlvbnM6IFtvcHRpb25zLCBkZXBzXVxufSk7XG5cbi8qKlxuICogUHJvdmlkZXMgZGF0YSB0byBwb3NpdGlvbiBhbiBpbm5lciBlbGVtZW50IG9mIHRoZSBmbG9hdGluZyBlbGVtZW50IHNvIHRoYXQgaXRcbiAqIGFwcGVhcnMgY2VudGVyZWQgdG8gdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogVGhpcyB3cmFwcyB0aGUgY29yZSBgYXJyb3dgIG1pZGRsZXdhcmUgdG8gYWxsb3cgUmVhY3QgcmVmcyBhcyB0aGUgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9hcnJvd1xuICovXG5jb25zdCBhcnJvdyA9IChvcHRpb25zLCBkZXBzKSA9PiAoe1xuICAuLi5hcnJvdyQxKG9wdGlvbnMpLFxuICBvcHRpb25zOiBbb3B0aW9ucywgZGVwc11cbn0pO1xuXG5leHBvcnQgeyBhcnJvdywgYXV0b1BsYWNlbWVudCwgZmxpcCwgaGlkZSwgaW5saW5lLCBsaW1pdFNoaWZ0LCBvZmZzZXQsIHNoaWZ0LCBzaXplLCB1c2VGbG9hdGluZyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/react/dist/floating-ui.react.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("var react__WEBPACK_IMPORTED_MODULE_0___namespace_cache;\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Composite: function() { return /* binding */ Composite; },\n/* harmony export */ CompositeItem: function() { return /* binding */ CompositeItem; },\n/* harmony export */ FloatingArrow: function() { return /* binding */ FloatingArrow; },\n/* harmony export */ FloatingDelayGroup: function() { return /* binding */ FloatingDelayGroup; },\n/* harmony export */ FloatingFocusManager: function() { return /* binding */ FloatingFocusManager; },\n/* harmony export */ FloatingList: function() { return /* binding */ FloatingList; },\n/* harmony export */ FloatingNode: function() { return /* binding */ FloatingNode; },\n/* harmony export */ FloatingOverlay: function() { return /* binding */ FloatingOverlay; },\n/* harmony export */ FloatingPortal: function() { return /* binding */ FloatingPortal; },\n/* harmony export */ FloatingTree: function() { return /* binding */ FloatingTree; },\n/* harmony export */ arrow: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.arrow; },\n/* harmony export */ autoPlacement: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.autoPlacement; },\n/* harmony export */ autoUpdate: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.autoUpdate; },\n/* harmony export */ computePosition: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.computePosition; },\n/* harmony export */ detectOverflow: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.detectOverflow; },\n/* harmony export */ flip: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.flip; },\n/* harmony export */ getOverflowAncestors: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getOverflowAncestors; },\n/* harmony export */ hide: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.hide; },\n/* harmony export */ inline: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.inline; },\n/* harmony export */ inner: function() { return /* binding */ inner; },\n/* harmony export */ limitShift: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.limitShift; },\n/* harmony export */ offset: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.offset; },\n/* harmony export */ platform: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.platform; },\n/* harmony export */ safePolygon: function() { return /* binding */ safePolygon; },\n/* harmony export */ shift: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.shift; },\n/* harmony export */ size: function() { return /* reexport safe */ _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.size; },\n/* harmony export */ useClick: function() { return /* binding */ useClick; },\n/* harmony export */ useClientPoint: function() { return /* binding */ useClientPoint; },\n/* harmony export */ useDelayGroup: function() { return /* binding */ useDelayGroup; },\n/* harmony export */ useDelayGroupContext: function() { return /* binding */ useDelayGroupContext; },\n/* harmony export */ useDismiss: function() { return /* binding */ useDismiss; },\n/* harmony export */ useFloating: function() { return /* binding */ useFloating; },\n/* harmony export */ useFloatingNodeId: function() { return /* binding */ useFloatingNodeId; },\n/* harmony export */ useFloatingParentNodeId: function() { return /* binding */ useFloatingParentNodeId; },\n/* harmony export */ useFloatingPortalNode: function() { return /* binding */ useFloatingPortalNode; },\n/* harmony export */ useFloatingRootContext: function() { return /* binding */ useFloatingRootContext; },\n/* harmony export */ useFloatingTree: function() { return /* binding */ useFloatingTree; },\n/* harmony export */ useFocus: function() { return /* binding */ useFocus; },\n/* harmony export */ useHover: function() { return /* binding */ useHover; },\n/* harmony export */ useId: function() { return /* binding */ useId; },\n/* harmony export */ useInnerOffset: function() { return /* binding */ useInnerOffset; },\n/* harmony export */ useInteractions: function() { return /* binding */ useInteractions; },\n/* harmony export */ useListItem: function() { return /* binding */ useListItem; },\n/* harmony export */ useListNavigation: function() { return /* binding */ useListNavigation; },\n/* harmony export */ useMergeRefs: function() { return /* binding */ useMergeRefs; },\n/* harmony export */ useRole: function() { return /* binding */ useRole; },\n/* harmony export */ useTransitionStatus: function() { return /* binding */ useTransitionStatus; },\n/* harmony export */ useTransitionStyles: function() { return /* binding */ useTransitionStyles; },\n/* harmony export */ useTypeahead: function() { return /* binding */ useTypeahead; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @floating-ui/react/utils */ \"(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs\");\n/* harmony import */ var _floating_ui_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @floating-ui/utils */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @floating-ui/react-dom */ \"(app-pages-browser)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @floating-ui/utils/dom */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\");\n/* harmony import */ var _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @floating-ui/react-dom */ \"(app-pages-browser)/./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs\");\n/* harmony import */ var tabbable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! tabbable */ \"(app-pages-browser)/./node_modules/tabbable/dist/index.esm.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-dom */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react-dom/index.js\");\n\n\n\n\n\n\n\n\n\n\n/**\n * Merges an array of refs into a single memoized callback ref or `null`.\n * @see https://floating-ui.com/docs/react-utils#usemergerefs\n */\nfunction useMergeRefs(refs) {\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (refs.every(ref => ref == null)) {\n return null;\n }\n return value => {\n refs.forEach(ref => {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref != null) {\n ref.current = value;\n }\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, refs);\n}\n\n// https://github.com/mui/material-ui/issues/41190#issuecomment-2040873379\nconst SafeReact = {\n .../*#__PURE__*/ (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react__WEBPACK_IMPORTED_MODULE_0__, 2)))\n};\n\nconst useInsertionEffect = SafeReact.useInsertionEffect;\nconst useSafeInsertionEffect = useInsertionEffect || (fn => fn());\nfunction useEffectEvent(callback) {\n const ref = react__WEBPACK_IMPORTED_MODULE_0__.useRef(() => {\n if (true) {\n throw new Error('Cannot call an event handler while rendering.');\n }\n });\n useSafeInsertionEffect(() => {\n ref.current = callback;\n });\n return react__WEBPACK_IMPORTED_MODULE_0__.useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return ref.current == null ? void 0 : ref.current(...args);\n }, []);\n}\n\nconst ARROW_UP = 'ArrowUp';\nconst ARROW_DOWN = 'ArrowDown';\nconst ARROW_LEFT = 'ArrowLeft';\nconst ARROW_RIGHT = 'ArrowRight';\nfunction isDifferentRow(index, cols, prevRow) {\n return Math.floor(index / cols) !== prevRow;\n}\nfunction isIndexOutOfBounds(listRef, index) {\n return index < 0 || index >= listRef.current.length;\n}\nfunction getMinIndex(listRef, disabledIndices) {\n return findNonDisabledIndex(listRef, {\n disabledIndices\n });\n}\nfunction getMaxIndex(listRef, disabledIndices) {\n return findNonDisabledIndex(listRef, {\n decrement: true,\n startingIndex: listRef.current.length,\n disabledIndices\n });\n}\nfunction findNonDisabledIndex(listRef, _temp) {\n let {\n startingIndex = -1,\n decrement = false,\n disabledIndices,\n amount = 1\n } = _temp === void 0 ? {} : _temp;\n const list = listRef.current;\n let index = startingIndex;\n do {\n index += decrement ? -amount : amount;\n } while (index >= 0 && index <= list.length - 1 && isDisabled(list, index, disabledIndices));\n return index;\n}\nfunction getGridNavigatedIndex(elementsRef, _ref) {\n let {\n event,\n orientation,\n loop,\n cols,\n disabledIndices,\n minIndex,\n maxIndex,\n prevIndex,\n stopEvent: stop = false\n } = _ref;\n let nextIndex = prevIndex;\n if (event.key === ARROW_UP) {\n stop && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (prevIndex === -1) {\n nextIndex = maxIndex;\n } else {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: nextIndex,\n amount: cols,\n decrement: true,\n disabledIndices\n });\n if (loop && (prevIndex - cols < minIndex || nextIndex < 0)) {\n const col = prevIndex % cols;\n const maxCol = maxIndex % cols;\n const offset = maxIndex - (maxCol - col);\n if (maxCol === col) {\n nextIndex = maxIndex;\n } else {\n nextIndex = maxCol > col ? offset : offset - cols;\n }\n }\n }\n if (isIndexOutOfBounds(elementsRef, nextIndex)) {\n nextIndex = prevIndex;\n }\n }\n if (event.key === ARROW_DOWN) {\n stop && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (prevIndex === -1) {\n nextIndex = minIndex;\n } else {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex,\n amount: cols,\n disabledIndices\n });\n if (loop && prevIndex + cols > maxIndex) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex % cols - cols,\n amount: cols,\n disabledIndices\n });\n }\n }\n if (isIndexOutOfBounds(elementsRef, nextIndex)) {\n nextIndex = prevIndex;\n }\n }\n\n // Remains on the same row/column.\n if (orientation === 'both') {\n const prevRow = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_6__.floor)(prevIndex / cols);\n if (event.key === ARROW_RIGHT) {\n stop && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (prevIndex % cols !== cols - 1) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex,\n disabledIndices\n });\n if (loop && isDifferentRow(nextIndex, cols, prevRow)) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex - prevIndex % cols - 1,\n disabledIndices\n });\n }\n } else if (loop) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex - prevIndex % cols - 1,\n disabledIndices\n });\n }\n if (isDifferentRow(nextIndex, cols, prevRow)) {\n nextIndex = prevIndex;\n }\n }\n if (event.key === ARROW_LEFT) {\n stop && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (prevIndex % cols !== 0) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex,\n decrement: true,\n disabledIndices\n });\n if (loop && isDifferentRow(nextIndex, cols, prevRow)) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex + (cols - prevIndex % cols),\n decrement: true,\n disabledIndices\n });\n }\n } else if (loop) {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex + (cols - prevIndex % cols),\n decrement: true,\n disabledIndices\n });\n }\n if (isDifferentRow(nextIndex, cols, prevRow)) {\n nextIndex = prevIndex;\n }\n }\n const lastRow = (0,_floating_ui_utils__WEBPACK_IMPORTED_MODULE_6__.floor)(maxIndex / cols) === prevRow;\n if (isIndexOutOfBounds(elementsRef, nextIndex)) {\n if (loop && lastRow) {\n nextIndex = event.key === ARROW_LEFT ? maxIndex : findNonDisabledIndex(elementsRef, {\n startingIndex: prevIndex - prevIndex % cols - 1,\n disabledIndices\n });\n } else {\n nextIndex = prevIndex;\n }\n }\n }\n return nextIndex;\n}\n\n/** For each cell index, gets the item index that occupies that cell */\nfunction buildCellMap(sizes, cols, dense) {\n const cellMap = [];\n let startIndex = 0;\n sizes.forEach((_ref2, index) => {\n let {\n width,\n height\n } = _ref2;\n if (width > cols) {\n if (true) {\n throw new Error(\"[Floating UI]: Invalid grid - item width at index \" + index + \" is greater than grid columns\");\n }\n }\n let itemPlaced = false;\n if (dense) {\n startIndex = 0;\n }\n while (!itemPlaced) {\n const targetCells = [];\n for (let i = 0; i < width; i++) {\n for (let j = 0; j < height; j++) {\n targetCells.push(startIndex + i + j * cols);\n }\n }\n if (startIndex % cols + width <= cols && targetCells.every(cell => cellMap[cell] == null)) {\n targetCells.forEach(cell => {\n cellMap[cell] = index;\n });\n itemPlaced = true;\n } else {\n startIndex++;\n }\n }\n });\n\n // convert into a non-sparse array\n return [...cellMap];\n}\n\n/** Gets cell index of an item's corner or -1 when index is -1. */\nfunction getCellIndexOfCorner(index, sizes, cellMap, cols, corner) {\n if (index === -1) return -1;\n const firstCellIndex = cellMap.indexOf(index);\n const sizeItem = sizes[index];\n switch (corner) {\n case 'tl':\n return firstCellIndex;\n case 'tr':\n if (!sizeItem) {\n return firstCellIndex;\n }\n return firstCellIndex + sizeItem.width - 1;\n case 'bl':\n if (!sizeItem) {\n return firstCellIndex;\n }\n return firstCellIndex + (sizeItem.height - 1) * cols;\n case 'br':\n return cellMap.lastIndexOf(index);\n }\n}\n\n/** Gets all cell indices that correspond to the specified indices */\nfunction getCellIndices(indices, cellMap) {\n return cellMap.flatMap((index, cellIndex) => indices.includes(index) ? [cellIndex] : []);\n}\nfunction isDisabled(list, index, disabledIndices) {\n if (disabledIndices) {\n return disabledIndices.includes(index);\n }\n const element = list[index];\n return element == null || element.hasAttribute('disabled') || element.getAttribute('aria-disabled') === 'true';\n}\n\nlet rafId = 0;\nfunction enqueueFocus(el, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n preventScroll = false,\n cancelPrevious = true,\n sync = false\n } = options;\n cancelPrevious && cancelAnimationFrame(rafId);\n const exec = () => el == null ? void 0 : el.focus({\n preventScroll\n });\n if (sync) {\n exec();\n } else {\n rafId = requestAnimationFrame(exec);\n }\n}\n\nvar index = typeof document !== 'undefined' ? react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect : react__WEBPACK_IMPORTED_MODULE_0__.useEffect;\n\nfunction sortByDocumentPosition(a, b) {\n const position = a.compareDocumentPosition(b);\n if (position & Node.DOCUMENT_POSITION_FOLLOWING || position & Node.DOCUMENT_POSITION_CONTAINED_BY) {\n return -1;\n }\n if (position & Node.DOCUMENT_POSITION_PRECEDING || position & Node.DOCUMENT_POSITION_CONTAINS) {\n return 1;\n }\n return 0;\n}\nfunction areMapsEqual(map1, map2) {\n if (map1.size !== map2.size) {\n return false;\n }\n for (const [key, value] of map1.entries()) {\n if (value !== map2.get(key)) {\n return false;\n }\n }\n return true;\n}\nconst FloatingListContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext({\n register: () => {},\n unregister: () => {},\n map: /*#__PURE__*/new Map(),\n elementsRef: {\n current: []\n }\n});\n/**\n * Provides context for a list of items within the floating element.\n * @see https://floating-ui.com/docs/FloatingList\n */\nfunction FloatingList(props) {\n const {\n children,\n elementsRef,\n labelsRef\n } = props;\n const [map, setMap] = react__WEBPACK_IMPORTED_MODULE_0__.useState(() => new Map());\n const register = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n setMap(prevMap => new Map(prevMap).set(node, null));\n }, []);\n const unregister = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n setMap(prevMap => {\n const map = new Map(prevMap);\n map.delete(node);\n return map;\n });\n }, []);\n index(() => {\n const newMap = new Map(map);\n const nodes = Array.from(newMap.keys()).sort(sortByDocumentPosition);\n nodes.forEach((node, index) => {\n newMap.set(node, index);\n });\n if (!areMapsEqual(map, newMap)) {\n setMap(newMap);\n }\n }, [map]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FloatingListContext.Provider, {\n value: react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n register,\n unregister,\n map,\n elementsRef,\n labelsRef\n }), [register, unregister, map, elementsRef, labelsRef])\n }, children);\n}\n/**\n * Used to register a list item and its index (DOM position) in the\n * `FloatingList`.\n * @see https://floating-ui.com/docs/FloatingList#uselistitem\n */\nfunction useListItem(props) {\n if (props === void 0) {\n props = {};\n }\n const {\n label\n } = props;\n const {\n register,\n unregister,\n map,\n elementsRef,\n labelsRef\n } = react__WEBPACK_IMPORTED_MODULE_0__.useContext(FloatingListContext);\n const [index$1, setIndex] = react__WEBPACK_IMPORTED_MODULE_0__.useState(null);\n const componentRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const ref = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n componentRef.current = node;\n if (index$1 !== null) {\n elementsRef.current[index$1] = node;\n if (labelsRef) {\n var _node$textContent;\n const isLabelDefined = label !== undefined;\n labelsRef.current[index$1] = isLabelDefined ? label : (_node$textContent = node == null ? void 0 : node.textContent) != null ? _node$textContent : null;\n }\n }\n }, [index$1, elementsRef, labelsRef, label]);\n index(() => {\n const node = componentRef.current;\n if (node) {\n register(node);\n return () => {\n unregister(node);\n };\n }\n }, [register, unregister]);\n index(() => {\n const index = componentRef.current ? map.get(componentRef.current) : null;\n if (index != null) {\n setIndex(index);\n }\n }, [map]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ref,\n index: index$1 == null ? -1 : index$1\n }), [index$1, ref]);\n}\n\nfunction renderJsx(render, computedProps) {\n if (typeof render === 'function') {\n return render(computedProps);\n }\n if (render) {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.cloneElement(render, computedProps);\n }\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", computedProps);\n}\nconst CompositeContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext({\n activeIndex: 0,\n onNavigate: () => {}\n});\nconst horizontalKeys = [ARROW_LEFT, ARROW_RIGHT];\nconst verticalKeys = [ARROW_UP, ARROW_DOWN];\nconst allKeys = [...horizontalKeys, ...verticalKeys];\n\n/**\n * Creates a single tab stop whose items are navigated by arrow keys, which\n * provides list navigation outside of floating element contexts.\n *\n * This is useful to enable navigation of a list of items that aren’t part of a\n * floating element. A menubar is an example of a composite, with each reference\n * element being an item.\n * @see https://floating-ui.com/docs/Composite\n */\nconst Composite = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function Composite(props, forwardedRef) {\n const {\n render,\n orientation = 'both',\n loop = true,\n cols = 1,\n disabledIndices,\n activeIndex: externalActiveIndex,\n onNavigate: externalSetActiveIndex,\n itemSizes,\n dense = false,\n ...domProps\n } = props;\n const [internalActiveIndex, internalSetActiveIndex] = react__WEBPACK_IMPORTED_MODULE_0__.useState(0);\n const activeIndex = externalActiveIndex != null ? externalActiveIndex : internalActiveIndex;\n const onNavigate = useEffectEvent(externalSetActiveIndex != null ? externalSetActiveIndex : internalSetActiveIndex);\n const elementsRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef([]);\n const renderElementProps = render && typeof render !== 'function' ? render.props : {};\n const contextValue = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n activeIndex,\n onNavigate\n }), [activeIndex, onNavigate]);\n const isGrid = cols > 1;\n function handleKeyDown(event) {\n if (!allKeys.includes(event.key)) return;\n let nextIndex = activeIndex;\n const minIndex = getMinIndex(elementsRef, disabledIndices);\n const maxIndex = getMaxIndex(elementsRef, disabledIndices);\n if (isGrid) {\n const sizes = itemSizes || Array.from({\n length: elementsRef.current.length\n }, () => ({\n width: 1,\n height: 1\n }));\n // To calculate movements on the grid, we use hypothetical cell indices\n // as if every item was 1x1, then convert back to real indices.\n const cellMap = buildCellMap(sizes, cols, dense);\n const minGridIndex = cellMap.findIndex(index => index != null && !isDisabled(elementsRef.current, index, disabledIndices));\n // last enabled index\n const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !isDisabled(elementsRef.current, index, disabledIndices) ? cellIndex : foundIndex, -1);\n nextIndex = cellMap[getGridNavigatedIndex({\n current: cellMap.map(itemIndex => itemIndex ? elementsRef.current[itemIndex] : null)\n }, {\n event,\n orientation,\n loop,\n cols,\n // treat undefined (empty grid spaces) as disabled indices so we\n // don't end up in them\n disabledIndices: getCellIndices([...(disabledIndices || elementsRef.current.map((_, index) => isDisabled(elementsRef.current, index) ? index : undefined)), undefined], cellMap),\n minIndex: minGridIndex,\n maxIndex: maxGridIndex,\n prevIndex: getCellIndexOfCorner(activeIndex > maxIndex ? minIndex : activeIndex, sizes, cellMap, cols,\n // use a corner matching the edge closest to the direction we're\n // moving in so we don't end up in the same item. Prefer\n // top/left over bottom/right.\n event.key === ARROW_DOWN ? 'bl' : event.key === ARROW_RIGHT ? 'tr' : 'tl')\n })]; // navigated cell will never be nullish\n }\n const toEndKeys = {\n horizontal: [ARROW_RIGHT],\n vertical: [ARROW_DOWN],\n both: [ARROW_RIGHT, ARROW_DOWN]\n }[orientation];\n const toStartKeys = {\n horizontal: [ARROW_LEFT],\n vertical: [ARROW_UP],\n both: [ARROW_LEFT, ARROW_UP]\n }[orientation];\n const preventedKeys = isGrid ? allKeys : {\n horizontal: horizontalKeys,\n vertical: verticalKeys,\n both: allKeys\n }[orientation];\n if (nextIndex === activeIndex && [...toEndKeys, ...toStartKeys].includes(event.key)) {\n if (loop && nextIndex === maxIndex && toEndKeys.includes(event.key)) {\n nextIndex = minIndex;\n } else if (loop && nextIndex === minIndex && toStartKeys.includes(event.key)) {\n nextIndex = maxIndex;\n } else {\n nextIndex = findNonDisabledIndex(elementsRef, {\n startingIndex: nextIndex,\n decrement: toStartKeys.includes(event.key),\n disabledIndices\n });\n }\n }\n if (nextIndex !== activeIndex && !isIndexOutOfBounds(elementsRef, nextIndex)) {\n event.stopPropagation();\n if (preventedKeys.includes(event.key)) {\n event.preventDefault();\n }\n onNavigate(nextIndex);\n\n // Wait for FocusManager `returnFocus` to execute.\n queueMicrotask(() => {\n enqueueFocus(elementsRef.current[nextIndex]);\n });\n }\n }\n const computedProps = {\n ...domProps,\n ...renderElementProps,\n ref: forwardedRef,\n 'aria-orientation': orientation === 'both' ? undefined : orientation,\n onKeyDown(e) {\n domProps.onKeyDown == null || domProps.onKeyDown(e);\n renderElementProps.onKeyDown == null || renderElementProps.onKeyDown(e);\n handleKeyDown(e);\n }\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(CompositeContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FloatingList, {\n elementsRef: elementsRef\n }, renderJsx(render, computedProps)));\n});\n/**\n * @see https://floating-ui.com/docs/Composite\n */\nconst CompositeItem = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function CompositeItem(props, forwardedRef) {\n const {\n render,\n ...domProps\n } = props;\n const renderElementProps = render && typeof render !== 'function' ? render.props : {};\n const {\n activeIndex,\n onNavigate\n } = react__WEBPACK_IMPORTED_MODULE_0__.useContext(CompositeContext);\n const {\n ref,\n index\n } = useListItem();\n const mergedRef = useMergeRefs([ref, forwardedRef, renderElementProps.ref]);\n const isActive = activeIndex === index;\n const computedProps = {\n ...domProps,\n ...renderElementProps,\n ref: mergedRef,\n tabIndex: isActive ? 0 : -1,\n 'data-active': isActive ? '' : undefined,\n onFocus(e) {\n domProps.onFocus == null || domProps.onFocus(e);\n renderElementProps.onFocus == null || renderElementProps.onFocus(e);\n onNavigate(index);\n }\n };\n return renderJsx(render, computedProps);\n});\n\nfunction _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nlet serverHandoffComplete = false;\nlet count = 0;\nconst genId = () => // Ensure the id is unique with multiple independent versions of Floating UI\n// on <React 18\n\"floating-ui-\" + Math.random().toString(36).slice(2, 6) + count++;\nfunction useFloatingId() {\n const [id, setId] = react__WEBPACK_IMPORTED_MODULE_0__.useState(() => serverHandoffComplete ? genId() : undefined);\n index(() => {\n if (id == null) {\n setId(genId());\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n serverHandoffComplete = true;\n }, []);\n return id;\n}\nconst useReactId = SafeReact.useId;\n\n/**\n * Uses React 18's built-in `useId()` when available, or falls back to a\n * slightly less performant (requiring a double render) implementation for\n * earlier React versions.\n * @see https://floating-ui.com/docs/react-utils#useid\n */\nconst useId = useReactId || useFloatingId;\n\nlet devMessageSet;\nif (true) {\n devMessageSet = /*#__PURE__*/new Set();\n}\nfunction warn() {\n var _devMessageSet;\n for (var _len = arguments.length, messages = new Array(_len), _key = 0; _key < _len; _key++) {\n messages[_key] = arguments[_key];\n }\n const message = \"Floating UI: \" + messages.join(' ');\n if (!((_devMessageSet = devMessageSet) != null && _devMessageSet.has(message))) {\n var _devMessageSet2;\n (_devMessageSet2 = devMessageSet) == null || _devMessageSet2.add(message);\n console.warn(message);\n }\n}\nfunction error() {\n var _devMessageSet3;\n for (var _len2 = arguments.length, messages = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n messages[_key2] = arguments[_key2];\n }\n const message = \"Floating UI: \" + messages.join(' ');\n if (!((_devMessageSet3 = devMessageSet) != null && _devMessageSet3.has(message))) {\n var _devMessageSet4;\n (_devMessageSet4 = devMessageSet) == null || _devMessageSet4.add(message);\n console.error(message);\n }\n}\n\n/**\n * Renders a pointing arrow triangle.\n * @see https://floating-ui.com/docs/FloatingArrow\n */\nconst FloatingArrow = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function FloatingArrow(props, ref) {\n const {\n context: {\n placement,\n elements: {\n floating\n },\n middlewareData: {\n arrow\n }\n },\n width = 14,\n height = 7,\n tipRadius = 0,\n strokeWidth = 0,\n staticOffset,\n stroke,\n d,\n style: {\n transform,\n ...restStyle\n } = {},\n ...rest\n } = props;\n if (true) {\n if (!ref) {\n warn('The `ref` prop is required for `FloatingArrow`.');\n }\n }\n const clipPathId = useId();\n if (!floating) {\n return null;\n }\n\n // Strokes must be double the border width, this ensures the stroke's width\n // works as you'd expect.\n const computedStrokeWidth = strokeWidth * 2;\n const halfStrokeWidth = computedStrokeWidth / 2;\n const svgX = width / 2 * (tipRadius / -8 + 1);\n const svgY = height / 2 * tipRadius / 4;\n const [side, alignment] = placement.split('-');\n const isRTL = _floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.platform.isRTL(floating);\n const isCustomShape = !!d;\n const isVerticalSide = side === 'top' || side === 'bottom';\n const yOffsetProp = staticOffset && alignment === 'end' ? 'bottom' : 'top';\n let xOffsetProp = staticOffset && alignment === 'end' ? 'right' : 'left';\n if (staticOffset && isRTL) {\n xOffsetProp = alignment === 'end' ? 'left' : 'right';\n }\n const arrowX = (arrow == null ? void 0 : arrow.x) != null ? staticOffset || arrow.x : '';\n const arrowY = (arrow == null ? void 0 : arrow.y) != null ? staticOffset || arrow.y : '';\n const dValue = d || 'M0,0' + (\" H\" + width) + (\" L\" + (width - svgX) + \",\" + (height - svgY)) + (\" Q\" + width / 2 + \",\" + height + \" \" + svgX + \",\" + (height - svgY)) + ' Z';\n const rotation = {\n top: isCustomShape ? 'rotate(180deg)' : '',\n left: isCustomShape ? 'rotate(90deg)' : 'rotate(-90deg)',\n bottom: isCustomShape ? '' : 'rotate(180deg)',\n right: isCustomShape ? 'rotate(-90deg)' : 'rotate(90deg)'\n }[side];\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"svg\", _extends({}, rest, {\n \"aria-hidden\": true,\n ref: ref,\n width: isCustomShape ? width : width + computedStrokeWidth,\n height: width,\n viewBox: \"0 0 \" + width + \" \" + (height > width ? height : width),\n style: {\n position: 'absolute',\n pointerEvents: 'none',\n [xOffsetProp]: arrowX,\n [yOffsetProp]: arrowY,\n [side]: isVerticalSide || isCustomShape ? '100%' : \"calc(100% - \" + computedStrokeWidth / 2 + \"px)\",\n transform: \"\" + rotation + (transform != null ? transform : ''),\n ...restStyle\n }\n }), computedStrokeWidth > 0 && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"path\", {\n clipPath: \"url(#\" + clipPathId + \")\",\n fill: \"none\",\n stroke: stroke\n // Account for the stroke on the fill path rendered below.\n ,\n strokeWidth: computedStrokeWidth + (d ? 0 : 1),\n d: dValue\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"path\", {\n stroke: computedStrokeWidth && !d ? rest.fill : 'none',\n d: dValue\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"clipPath\", {\n id: clipPathId\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"rect\", {\n x: -halfStrokeWidth,\n y: halfStrokeWidth * (isCustomShape ? -1 : 1),\n width: width + computedStrokeWidth,\n height: width\n })));\n});\n\nfunction createPubSub() {\n const map = new Map();\n return {\n emit(event, data) {\n var _map$get;\n (_map$get = map.get(event)) == null || _map$get.forEach(handler => handler(data));\n },\n on(event, listener) {\n map.set(event, [...(map.get(event) || []), listener]);\n },\n off(event, listener) {\n var _map$get2;\n map.set(event, ((_map$get2 = map.get(event)) == null ? void 0 : _map$get2.filter(l => l !== listener)) || []);\n }\n };\n}\n\nconst FloatingNodeContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext(null);\nconst FloatingTreeContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext(null);\n\n/**\n * Returns the parent node id for nested floating elements, if available.\n * Returns `null` for top-level floating elements.\n */\nconst useFloatingParentNodeId = () => {\n var _React$useContext;\n return ((_React$useContext = react__WEBPACK_IMPORTED_MODULE_0__.useContext(FloatingNodeContext)) == null ? void 0 : _React$useContext.id) || null;\n};\n\n/**\n * Returns the nearest floating tree context, if available.\n */\nconst useFloatingTree = () => react__WEBPACK_IMPORTED_MODULE_0__.useContext(FloatingTreeContext);\n\n/**\n * Registers a node into the `FloatingTree`, returning its id.\n * @see https://floating-ui.com/docs/FloatingTree\n */\nfunction useFloatingNodeId(customParentId) {\n const id = useId();\n const tree = useFloatingTree();\n const reactParentId = useFloatingParentNodeId();\n const parentId = customParentId || reactParentId;\n index(() => {\n const node = {\n id,\n parentId\n };\n tree == null || tree.addNode(node);\n return () => {\n tree == null || tree.removeNode(node);\n };\n }, [tree, id, parentId]);\n return id;\n}\n\n/**\n * Provides parent node context for nested floating elements.\n * @see https://floating-ui.com/docs/FloatingTree\n */\nfunction FloatingNode(props) {\n const {\n children,\n id\n } = props;\n const parentId = useFloatingParentNodeId();\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FloatingNodeContext.Provider, {\n value: react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n id,\n parentId\n }), [id, parentId])\n }, children);\n}\n\n/**\n * Provides context for nested floating elements when they are not children of\n * each other on the DOM.\n * This is not necessary in all cases, except when there must be explicit communication between parent and child floating elements. It is necessary for:\n * - The `bubbles` option in the `useDismiss()` Hook\n * - Nested virtual list navigation\n * - Nested floating elements that each open on hover\n * - Custom communication between parent and child floating elements\n * @see https://floating-ui.com/docs/FloatingTree\n */\nfunction FloatingTree(props) {\n const {\n children\n } = props;\n const nodesRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef([]);\n const addNode = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n nodesRef.current = [...nodesRef.current, node];\n }, []);\n const removeNode = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n nodesRef.current = nodesRef.current.filter(n => n !== node);\n }, []);\n const events = react__WEBPACK_IMPORTED_MODULE_0__.useState(() => createPubSub())[0];\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FloatingTreeContext.Provider, {\n value: react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n nodesRef,\n addNode,\n removeNode,\n events\n }), [addNode, removeNode, events])\n }, children);\n}\n\nfunction createAttribute(name) {\n return \"data-floating-ui-\" + name;\n}\n\nfunction useLatestRef(value) {\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(value);\n index(() => {\n ref.current = value;\n });\n return ref;\n}\n\nconst safePolygonIdentifier = /*#__PURE__*/createAttribute('safe-polygon');\nfunction getDelay(value, prop, pointerType) {\n if (pointerType && !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerType)) {\n return 0;\n }\n if (typeof value === 'number') {\n return value;\n }\n return value == null ? void 0 : value[prop];\n}\n/**\n * Opens the floating element while hovering over the reference element, like\n * CSS `:hover`.\n * @see https://floating-ui.com/docs/useHover\n */\nfunction useHover(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n onOpenChange,\n dataRef,\n events,\n elements: {\n domReference,\n floating\n }\n } = context;\n const {\n enabled = true,\n delay = 0,\n handleClose = null,\n mouseOnly = false,\n restMs = 0,\n move = true\n } = props;\n const tree = useFloatingTree();\n const parentId = useFloatingParentNodeId();\n const handleCloseRef = useLatestRef(handleClose);\n const delayRef = useLatestRef(delay);\n const pointerTypeRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef();\n const timeoutRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(-1);\n const handlerRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef();\n const restTimeoutRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(-1);\n const blockMouseMoveRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(true);\n const performedPointerEventsMutationRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const unbindMouseMoveRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(() => {});\n const isHoverOpen = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(() => {\n var _dataRef$current$open;\n const type = (_dataRef$current$open = dataRef.current.openEvent) == null ? void 0 : _dataRef$current$open.type;\n return (type == null ? void 0 : type.includes('mouse')) && type !== 'mousedown';\n }, [dataRef]);\n\n // When closing before opening, clear the delay timeouts to cancel it\n // from showing.\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled) {\n return;\n }\n function onOpenChange(_ref) {\n let {\n open\n } = _ref;\n if (!open) {\n clearTimeout(timeoutRef.current);\n clearTimeout(restTimeoutRef.current);\n blockMouseMoveRef.current = true;\n }\n }\n events.on('openchange', onOpenChange);\n return () => {\n events.off('openchange', onOpenChange);\n };\n }, [enabled, events]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled || !handleCloseRef.current || !open) {\n return;\n }\n function onLeave(event) {\n if (isHoverOpen()) {\n onOpenChange(false, event, 'hover');\n }\n }\n const html = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating).documentElement;\n html.addEventListener('mouseleave', onLeave);\n return () => {\n html.removeEventListener('mouseleave', onLeave);\n };\n }, [floating, open, onOpenChange, enabled, handleCloseRef, isHoverOpen]);\n const closeWithDelay = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(function (event, runElseBranch, reason) {\n if (runElseBranch === void 0) {\n runElseBranch = true;\n }\n if (reason === void 0) {\n reason = 'hover';\n }\n const closeDelay = getDelay(delayRef.current, 'close', pointerTypeRef.current);\n if (closeDelay && !handlerRef.current) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = window.setTimeout(() => onOpenChange(false, event, reason), closeDelay);\n } else if (runElseBranch) {\n clearTimeout(timeoutRef.current);\n onOpenChange(false, event, reason);\n }\n }, [delayRef, onOpenChange]);\n const cleanupMouseMoveHandler = useEffectEvent(() => {\n unbindMouseMoveRef.current();\n handlerRef.current = undefined;\n });\n const clearPointerEvents = useEffectEvent(() => {\n if (performedPointerEventsMutationRef.current) {\n const body = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating).body;\n body.style.pointerEvents = '';\n body.removeAttribute(safePolygonIdentifier);\n performedPointerEventsMutationRef.current = false;\n }\n });\n\n // Registering the mouse events on the reference directly to bypass React's\n // delegation system. If the cursor was on a disabled element and then entered\n // the reference (no gap), `mouseenter` doesn't fire in the delegation system.\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled) {\n return;\n }\n function isClickLikeOpenEvent() {\n return dataRef.current.openEvent ? ['click', 'mousedown'].includes(dataRef.current.openEvent.type) : false;\n }\n function onMouseEnter(event) {\n clearTimeout(timeoutRef.current);\n blockMouseMoveRef.current = false;\n if (mouseOnly && !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerTypeRef.current) || restMs > 0 && !getDelay(delayRef.current, 'open')) {\n return;\n }\n const openDelay = getDelay(delayRef.current, 'open', pointerTypeRef.current);\n if (openDelay) {\n timeoutRef.current = window.setTimeout(() => {\n onOpenChange(true, event, 'hover');\n }, openDelay);\n } else {\n onOpenChange(true, event, 'hover');\n }\n }\n function onMouseLeave(event) {\n if (isClickLikeOpenEvent()) return;\n unbindMouseMoveRef.current();\n const doc = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating);\n clearTimeout(restTimeoutRef.current);\n if (handleCloseRef.current && dataRef.current.floatingContext) {\n // Prevent clearing `onScrollMouseLeave` timeout.\n if (!open) {\n clearTimeout(timeoutRef.current);\n }\n handlerRef.current = handleCloseRef.current({\n ...dataRef.current.floatingContext,\n tree,\n x: event.clientX,\n y: event.clientY,\n onClose() {\n clearPointerEvents();\n cleanupMouseMoveHandler();\n closeWithDelay(event, true, 'safe-polygon');\n }\n });\n const handler = handlerRef.current;\n doc.addEventListener('mousemove', handler);\n unbindMouseMoveRef.current = () => {\n doc.removeEventListener('mousemove', handler);\n };\n return;\n }\n\n // Allow interactivity without `safePolygon` on touch devices. With a\n // pointer, a short close delay is an alternative, so it should work\n // consistently.\n const shouldClose = pointerTypeRef.current === 'touch' ? !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floating, event.relatedTarget) : true;\n if (shouldClose) {\n closeWithDelay(event);\n }\n }\n\n // Ensure the floating element closes after scrolling even if the pointer\n // did not move.\n // https://github.com/floating-ui/floating-ui/discussions/1692\n function onScrollMouseLeave(event) {\n if (isClickLikeOpenEvent()) return;\n if (!dataRef.current.floatingContext) return;\n handleCloseRef.current == null || handleCloseRef.current({\n ...dataRef.current.floatingContext,\n tree,\n x: event.clientX,\n y: event.clientY,\n onClose() {\n clearPointerEvents();\n cleanupMouseMoveHandler();\n closeWithDelay(event);\n }\n })(event);\n }\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(domReference)) {\n const ref = domReference;\n open && ref.addEventListener('mouseleave', onScrollMouseLeave);\n floating == null || floating.addEventListener('mouseleave', onScrollMouseLeave);\n move && ref.addEventListener('mousemove', onMouseEnter, {\n once: true\n });\n ref.addEventListener('mouseenter', onMouseEnter);\n ref.addEventListener('mouseleave', onMouseLeave);\n return () => {\n open && ref.removeEventListener('mouseleave', onScrollMouseLeave);\n floating == null || floating.removeEventListener('mouseleave', onScrollMouseLeave);\n move && ref.removeEventListener('mousemove', onMouseEnter);\n ref.removeEventListener('mouseenter', onMouseEnter);\n ref.removeEventListener('mouseleave', onMouseLeave);\n };\n }\n }, [domReference, floating, enabled, context, mouseOnly, restMs, move, closeWithDelay, cleanupMouseMoveHandler, clearPointerEvents, onOpenChange, open, tree, delayRef, handleCloseRef, dataRef]);\n\n // Block pointer-events of every element other than the reference and floating\n // while the floating element is open and has a `handleClose` handler. Also\n // handles nested floating elements.\n // https://github.com/floating-ui/floating-ui/issues/1722\n index(() => {\n var _handleCloseRef$curre;\n if (!enabled) {\n return;\n }\n if (open && (_handleCloseRef$curre = handleCloseRef.current) != null && _handleCloseRef$curre.__options.blockPointerEvents && isHoverOpen()) {\n const body = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating).body;\n body.setAttribute(safePolygonIdentifier, '');\n body.style.pointerEvents = 'none';\n performedPointerEventsMutationRef.current = true;\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(domReference) && floating) {\n var _tree$nodesRef$curren;\n const ref = domReference;\n const parentFloating = tree == null || (_tree$nodesRef$curren = tree.nodesRef.current.find(node => node.id === parentId)) == null || (_tree$nodesRef$curren = _tree$nodesRef$curren.context) == null ? void 0 : _tree$nodesRef$curren.elements.floating;\n if (parentFloating) {\n parentFloating.style.pointerEvents = '';\n }\n ref.style.pointerEvents = 'auto';\n floating.style.pointerEvents = 'auto';\n return () => {\n ref.style.pointerEvents = '';\n floating.style.pointerEvents = '';\n };\n }\n }\n }, [enabled, open, parentId, floating, domReference, tree, handleCloseRef, isHoverOpen]);\n index(() => {\n if (!open) {\n pointerTypeRef.current = undefined;\n cleanupMouseMoveHandler();\n clearPointerEvents();\n }\n }, [open, cleanupMouseMoveHandler, clearPointerEvents]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n return () => {\n cleanupMouseMoveHandler();\n clearTimeout(timeoutRef.current);\n clearTimeout(restTimeoutRef.current);\n clearPointerEvents();\n };\n }, [enabled, domReference, cleanupMouseMoveHandler, clearPointerEvents]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n function setPointerRef(event) {\n pointerTypeRef.current = event.pointerType;\n }\n return {\n reference: {\n onPointerDown: setPointerRef,\n onPointerEnter: setPointerRef,\n onMouseMove(event) {\n const {\n nativeEvent\n } = event;\n function handleMouseMove() {\n if (!blockMouseMoveRef.current) {\n onOpenChange(true, nativeEvent, 'hover');\n }\n }\n if (mouseOnly && !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerTypeRef.current)) {\n return;\n }\n if (open || restMs === 0) {\n return;\n }\n clearTimeout(restTimeoutRef.current);\n if (pointerTypeRef.current === 'touch') {\n handleMouseMove();\n } else {\n restTimeoutRef.current = window.setTimeout(handleMouseMove, restMs);\n }\n }\n },\n floating: {\n onMouseEnter() {\n clearTimeout(timeoutRef.current);\n },\n onMouseLeave(event) {\n closeWithDelay(event.nativeEvent, false);\n }\n }\n };\n }, [enabled, mouseOnly, open, restMs, onOpenChange, closeWithDelay]);\n}\n\nconst NOOP = () => {};\nconst FloatingDelayGroupContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext({\n delay: 0,\n initialDelay: 0,\n timeoutMs: 0,\n currentId: null,\n setCurrentId: NOOP,\n setState: NOOP,\n isInstantPhase: false\n});\n\n/**\n * @deprecated\n * Use the return value of `useDelayGroup()` instead.\n */\nconst useDelayGroupContext = () => react__WEBPACK_IMPORTED_MODULE_0__.useContext(FloatingDelayGroupContext);\n/**\n * Provides context for a group of floating elements that should share a\n * `delay`.\n * @see https://floating-ui.com/docs/FloatingDelayGroup\n */\nfunction FloatingDelayGroup(props) {\n const {\n children,\n delay,\n timeoutMs = 0\n } = props;\n const [state, setState] = react__WEBPACK_IMPORTED_MODULE_0__.useReducer((prev, next) => ({\n ...prev,\n ...next\n }), {\n delay,\n timeoutMs,\n initialDelay: delay,\n currentId: null,\n isInstantPhase: false\n });\n const initialCurrentIdRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const setCurrentId = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(currentId => {\n setState({\n currentId\n });\n }, []);\n index(() => {\n if (state.currentId) {\n if (initialCurrentIdRef.current === null) {\n initialCurrentIdRef.current = state.currentId;\n } else if (!state.isInstantPhase) {\n setState({\n isInstantPhase: true\n });\n }\n } else {\n if (state.isInstantPhase) {\n setState({\n isInstantPhase: false\n });\n }\n initialCurrentIdRef.current = null;\n }\n }, [state.currentId, state.isInstantPhase]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FloatingDelayGroupContext.Provider, {\n value: react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ...state,\n setState,\n setCurrentId\n }), [state, setCurrentId])\n }, children);\n}\n/**\n * Enables grouping when called inside a component that's a child of a\n * `FloatingDelayGroup`.\n * @see https://floating-ui.com/docs/FloatingDelayGroup\n */\nfunction useDelayGroup(context, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n open,\n onOpenChange,\n floatingId\n } = context;\n const {\n id: optionId\n } = options;\n const id = optionId != null ? optionId : floatingId;\n const groupContext = useDelayGroupContext();\n const {\n currentId,\n setCurrentId,\n initialDelay,\n setState,\n timeoutMs\n } = groupContext;\n index(() => {\n if (!currentId) return;\n setState({\n delay: {\n open: 1,\n close: getDelay(initialDelay, 'close')\n }\n });\n if (currentId !== id) {\n onOpenChange(false);\n }\n }, [id, onOpenChange, setState, currentId, initialDelay]);\n index(() => {\n function unset() {\n onOpenChange(false);\n setState({\n delay: initialDelay,\n currentId: null\n });\n }\n if (!currentId) return;\n if (!open && currentId === id) {\n if (timeoutMs) {\n const timeout = window.setTimeout(unset, timeoutMs);\n return () => {\n clearTimeout(timeout);\n };\n }\n unset();\n }\n }, [open, setState, currentId, id, onOpenChange, initialDelay, timeoutMs]);\n index(() => {\n if (setCurrentId === NOOP || !open) return;\n setCurrentId(id);\n }, [open, setCurrentId, id]);\n return groupContext;\n}\n\nfunction getAncestors(nodes, id) {\n var _nodes$find;\n let allAncestors = [];\n let currentParentId = (_nodes$find = nodes.find(node => node.id === id)) == null ? void 0 : _nodes$find.parentId;\n while (currentParentId) {\n const currentNode = nodes.find(node => node.id === currentParentId);\n currentParentId = currentNode == null ? void 0 : currentNode.parentId;\n if (currentNode) {\n allAncestors = allAncestors.concat(currentNode);\n }\n }\n return allAncestors;\n}\n\nfunction getChildren(nodes, id) {\n let allChildren = nodes.filter(node => {\n var _node$context;\n return node.parentId === id && ((_node$context = node.context) == null ? void 0 : _node$context.open);\n });\n let currentChildren = allChildren;\n while (currentChildren.length) {\n currentChildren = nodes.filter(node => {\n var _currentChildren;\n return (_currentChildren = currentChildren) == null ? void 0 : _currentChildren.some(n => {\n var _node$context2;\n return node.parentId === n.id && ((_node$context2 = node.context) == null ? void 0 : _node$context2.open);\n });\n });\n allChildren = allChildren.concat(currentChildren);\n }\n return allChildren;\n}\nfunction getDeepestNode(nodes, id) {\n let deepestNodeId;\n let maxDepth = -1;\n function findDeepest(nodeId, depth) {\n if (depth > maxDepth) {\n deepestNodeId = nodeId;\n maxDepth = depth;\n }\n const children = getChildren(nodes, nodeId);\n children.forEach(child => {\n findDeepest(child.id, depth + 1);\n });\n }\n findDeepest(id, 0);\n return nodes.find(node => node.id === deepestNodeId);\n}\n\n// Modified to add conditional `aria-hidden` support:\n// https://github.com/theKashey/aria-hidden/blob/9220c8f4a4fd35f63bee5510a9f41a37264382d4/src/index.ts\nlet counterMap = /*#__PURE__*/new WeakMap();\nlet uncontrolledElementsSet = /*#__PURE__*/new WeakSet();\nlet markerMap = {};\nlet lockCount = 0;\nconst supportsInert = () => typeof HTMLElement !== 'undefined' && 'inert' in HTMLElement.prototype;\nconst unwrapHost = node => node && (node.host || unwrapHost(node.parentNode));\nconst correctElements = (parent, targets) => targets.map(target => {\n if (parent.contains(target)) {\n return target;\n }\n const correctedTarget = unwrapHost(target);\n if (parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n return null;\n}).filter(x => x != null);\nfunction applyAttributeToOthers(uncorrectedAvoidElements, body, ariaHidden, inert) {\n const markerName = 'data-floating-ui-inert';\n const controlAttribute = inert ? 'inert' : ariaHidden ? 'aria-hidden' : null;\n const avoidElements = correctElements(body, uncorrectedAvoidElements);\n const elementsToKeep = new Set();\n const elementsToStop = new Set(avoidElements);\n const hiddenElements = [];\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n const markerCounter = markerMap[markerName];\n avoidElements.forEach(keep);\n deep(body);\n elementsToKeep.clear();\n function keep(el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n el.parentNode && keep(el.parentNode);\n }\n function deep(parent) {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n [].forEach.call(parent.children, node => {\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getNodeName)(node) === 'script') return;\n if (elementsToKeep.has(node)) {\n deep(node);\n } else {\n const attr = controlAttribute ? node.getAttribute(controlAttribute) : null;\n const alreadyHidden = attr !== null && attr !== 'false';\n const counterValue = (counterMap.get(node) || 0) + 1;\n const markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenElements.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledElementsSet.add(node);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, '');\n }\n if (!alreadyHidden && controlAttribute) {\n node.setAttribute(controlAttribute, 'true');\n }\n }\n });\n }\n lockCount++;\n return () => {\n hiddenElements.forEach(element => {\n const counterValue = (counterMap.get(element) || 0) - 1;\n const markerValue = (markerCounter.get(element) || 0) - 1;\n counterMap.set(element, counterValue);\n markerCounter.set(element, markerValue);\n if (!counterValue) {\n if (!uncontrolledElementsSet.has(element) && controlAttribute) {\n element.removeAttribute(controlAttribute);\n }\n uncontrolledElementsSet.delete(element);\n }\n if (!markerValue) {\n element.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledElementsSet = new WeakSet();\n markerMap = {};\n }\n };\n}\nfunction markOthers(avoidElements, ariaHidden, inert) {\n if (ariaHidden === void 0) {\n ariaHidden = false;\n }\n if (inert === void 0) {\n inert = false;\n }\n const body = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(avoidElements[0]).body;\n return applyAttributeToOthers(avoidElements.concat(Array.from(body.querySelectorAll('[aria-live]'))), body, ariaHidden, inert);\n}\n\nconst getTabbableOptions = () => ({\n getShadowRoot: true,\n displayCheck:\n // JSDOM does not support the `tabbable` library. To solve this we can\n // check if `ResizeObserver` is a real function (not polyfilled), which\n // determines if the current environment is JSDOM-like.\n typeof ResizeObserver === 'function' && ResizeObserver.toString().includes('[native code]') ? 'full' : 'none'\n});\nfunction getTabbableIn(container, direction) {\n const allTabbable = (0,tabbable__WEBPACK_IMPORTED_MODULE_7__.tabbable)(container, getTabbableOptions());\n if (direction === 'prev') {\n allTabbable.reverse();\n }\n const activeIndex = allTabbable.indexOf((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(container)));\n const nextTabbableElements = allTabbable.slice(activeIndex + 1);\n return nextTabbableElements[0];\n}\nfunction getNextTabbable() {\n return getTabbableIn(document.body, 'next');\n}\nfunction getPreviousTabbable() {\n return getTabbableIn(document.body, 'prev');\n}\nfunction isOutsideEvent(event, container) {\n const containerElement = container || event.currentTarget;\n const relatedTarget = event.relatedTarget;\n return !relatedTarget || !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(containerElement, relatedTarget);\n}\nfunction disableFocusInside(container) {\n const tabbableElements = (0,tabbable__WEBPACK_IMPORTED_MODULE_7__.tabbable)(container, getTabbableOptions());\n tabbableElements.forEach(element => {\n element.dataset.tabindex = element.getAttribute('tabindex') || '';\n element.setAttribute('tabindex', '-1');\n });\n}\nfunction enableFocusInside(container) {\n const elements = container.querySelectorAll('[data-tabindex]');\n elements.forEach(element => {\n const tabindex = element.dataset.tabindex;\n delete element.dataset.tabindex;\n if (tabindex) {\n element.setAttribute('tabindex', tabindex);\n } else {\n element.removeAttribute('tabindex');\n }\n });\n}\n\n// See Diego Haz's Sandbox for making this logic work well on Safari/iOS:\n// https://codesandbox.io/s/tabbable-portal-f4tng?file=/src/FocusTrap.tsx\n\nconst HIDDEN_STYLES = {\n border: 0,\n clip: 'rect(0 0 0 0)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'fixed',\n whiteSpace: 'nowrap',\n width: '1px',\n top: 0,\n left: 0\n};\nlet timeoutId;\nfunction setActiveElementOnTab(event) {\n if (event.key === 'Tab') {\n event.target;\n clearTimeout(timeoutId);\n }\n}\nconst FocusGuard = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function FocusGuard(props, ref) {\n const [role, setRole] = react__WEBPACK_IMPORTED_MODULE_0__.useState();\n index(() => {\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isSafari)()) {\n // Unlike other screen readers such as NVDA and JAWS, the virtual cursor\n // on VoiceOver does trigger the onFocus event, so we can use the focus\n // trap element. On Safari, only buttons trigger the onFocus event.\n // NB: \"group\" role in the Sandbox no longer appears to work, must be a\n // button role.\n setRole('button');\n }\n document.addEventListener('keydown', setActiveElementOnTab);\n return () => {\n document.removeEventListener('keydown', setActiveElementOnTab);\n };\n }, []);\n const restProps = {\n ref,\n tabIndex: 0,\n // Role is only for VoiceOver\n role,\n 'aria-hidden': role ? undefined : true,\n [createAttribute('focus-guard')]: '',\n style: HIDDEN_STYLES\n };\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"span\", _extends({}, props, restProps));\n});\n\nconst PortalContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createContext(null);\nconst attr = /*#__PURE__*/createAttribute('portal');\n\n/**\n * @see https://floating-ui.com/docs/FloatingPortal#usefloatingportalnode\n */\nfunction useFloatingPortalNode(props) {\n if (props === void 0) {\n props = {};\n }\n const {\n id,\n root\n } = props;\n const uniqueId = useId();\n const portalContext = usePortalContext();\n const [portalNode, setPortalNode] = react__WEBPACK_IMPORTED_MODULE_0__.useState(null);\n const portalNodeRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n index(() => {\n return () => {\n portalNode == null || portalNode.remove();\n // Allow the subsequent layout effects to create a new node on updates.\n // The portal node will still be cleaned up on unmount.\n // https://github.com/floating-ui/floating-ui/issues/2454\n queueMicrotask(() => {\n portalNodeRef.current = null;\n });\n };\n }, [portalNode]);\n index(() => {\n // Wait for the uniqueId to be generated before creating the portal node in\n // React <18 (using `useFloatingId` instead of the native `useId`).\n // https://github.com/floating-ui/floating-ui/issues/2778\n if (!uniqueId) return;\n if (portalNodeRef.current) return;\n const existingIdRoot = id ? document.getElementById(id) : null;\n if (!existingIdRoot) return;\n const subRoot = document.createElement('div');\n subRoot.id = uniqueId;\n subRoot.setAttribute(attr, '');\n existingIdRoot.appendChild(subRoot);\n portalNodeRef.current = subRoot;\n setPortalNode(subRoot);\n }, [id, uniqueId]);\n index(() => {\n if (!uniqueId) return;\n if (portalNodeRef.current) return;\n let container = root || (portalContext == null ? void 0 : portalContext.portalNode);\n if (container && !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(container)) container = container.current;\n container = container || document.body;\n let idWrapper = null;\n if (id) {\n idWrapper = document.createElement('div');\n idWrapper.id = id;\n container.appendChild(idWrapper);\n }\n const subRoot = document.createElement('div');\n subRoot.id = uniqueId;\n subRoot.setAttribute(attr, '');\n container = idWrapper || container;\n container.appendChild(subRoot);\n portalNodeRef.current = subRoot;\n setPortalNode(subRoot);\n }, [id, root, uniqueId, portalContext]);\n return portalNode;\n}\n/**\n * Portals the floating element into a given container element — by default,\n * outside of the app root and into the body.\n * This is necessary to ensure the floating element can appear outside any\n * potential parent containers that cause clipping (such as `overflow: hidden`),\n * while retaining its location in the React tree.\n * @see https://floating-ui.com/docs/FloatingPortal\n */\nfunction FloatingPortal(props) {\n const {\n children,\n id,\n root = null,\n preserveTabOrder = true\n } = props;\n const portalNode = useFloatingPortalNode({\n id,\n root\n });\n const [focusManagerState, setFocusManagerState] = react__WEBPACK_IMPORTED_MODULE_0__.useState(null);\n const beforeOutsideRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const afterOutsideRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const beforeInsideRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const afterInsideRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const shouldRenderGuards =\n // The FocusManager and therefore floating element are currently open/\n // rendered.\n !!focusManagerState &&\n // Guards are only for non-modal focus management.\n !focusManagerState.modal &&\n // Don't render if unmount is transitioning.\n focusManagerState.open && preserveTabOrder && !!(root || portalNode);\n\n // https://codesandbox.io/s/tabbable-portal-f4tng?file=/src/TabbablePortal.tsx\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!portalNode || !preserveTabOrder || focusManagerState != null && focusManagerState.modal) {\n return;\n }\n\n // Make sure elements inside the portal element are tabbable only when the\n // portal has already been focused, either by tabbing into a focus trap\n // element outside or using the mouse.\n function onFocus(event) {\n if (portalNode && isOutsideEvent(event)) {\n const focusing = event.type === 'focusin';\n const manageFocus = focusing ? enableFocusInside : disableFocusInside;\n manageFocus(portalNode);\n }\n }\n // Listen to the event on the capture phase so they run before the focus\n // trap elements onFocus prop is called.\n portalNode.addEventListener('focusin', onFocus, true);\n portalNode.addEventListener('focusout', onFocus, true);\n return () => {\n portalNode.removeEventListener('focusin', onFocus, true);\n portalNode.removeEventListener('focusout', onFocus, true);\n };\n }, [portalNode, preserveTabOrder, focusManagerState == null ? void 0 : focusManagerState.modal]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(PortalContext.Provider, {\n value: react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n preserveTabOrder,\n beforeOutsideRef,\n afterOutsideRef,\n beforeInsideRef,\n afterInsideRef,\n portalNode,\n setFocusManagerState\n }), [preserveTabOrder, portalNode])\n }, shouldRenderGuards && portalNode && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FocusGuard, {\n \"data-type\": \"outside\",\n ref: beforeOutsideRef,\n onFocus: event => {\n if (isOutsideEvent(event, portalNode)) {\n var _beforeInsideRef$curr;\n (_beforeInsideRef$curr = beforeInsideRef.current) == null || _beforeInsideRef$curr.focus();\n } else {\n const prevTabbable = getPreviousTabbable() || (focusManagerState == null ? void 0 : focusManagerState.refs.domReference.current);\n prevTabbable == null || prevTabbable.focus();\n }\n }\n }), shouldRenderGuards && portalNode && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"span\", {\n \"aria-owns\": portalNode.id,\n style: HIDDEN_STYLES\n }), portalNode && /*#__PURE__*/(0,react_dom__WEBPACK_IMPORTED_MODULE_4__.createPortal)(children, portalNode), shouldRenderGuards && portalNode && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FocusGuard, {\n \"data-type\": \"outside\",\n ref: afterOutsideRef,\n onFocus: event => {\n if (isOutsideEvent(event, portalNode)) {\n var _afterInsideRef$curre;\n (_afterInsideRef$curre = afterInsideRef.current) == null || _afterInsideRef$curre.focus();\n } else {\n const nextTabbable = getNextTabbable() || (focusManagerState == null ? void 0 : focusManagerState.refs.domReference.current);\n nextTabbable == null || nextTabbable.focus();\n (focusManagerState == null ? void 0 : focusManagerState.closeOnFocusOut) && (focusManagerState == null ? void 0 : focusManagerState.onOpenChange(false, event.nativeEvent));\n }\n }\n }));\n}\nconst usePortalContext = () => react__WEBPACK_IMPORTED_MODULE_0__.useContext(PortalContext);\n\nconst LIST_LIMIT = 20;\nlet previouslyFocusedElements = [];\nfunction addPreviouslyFocusedElement(element) {\n previouslyFocusedElements = previouslyFocusedElements.filter(el => el.isConnected);\n let tabbableEl = element;\n if (!tabbableEl || (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getNodeName)(tabbableEl) === 'body') return;\n if (!(0,tabbable__WEBPACK_IMPORTED_MODULE_7__.isTabbable)(tabbableEl, getTabbableOptions())) {\n const tabbableChild = (0,tabbable__WEBPACK_IMPORTED_MODULE_7__.tabbable)(tabbableEl, getTabbableOptions())[0];\n if (tabbableChild) {\n tabbableEl = tabbableChild;\n }\n }\n previouslyFocusedElements.push(tabbableEl);\n if (previouslyFocusedElements.length > LIST_LIMIT) {\n previouslyFocusedElements = previouslyFocusedElements.slice(-LIST_LIMIT);\n }\n}\nfunction getPreviouslyFocusedElement() {\n return previouslyFocusedElements.slice().reverse().find(el => el.isConnected);\n}\nconst VisuallyHiddenDismiss = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function VisuallyHiddenDismiss(props, ref) {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"button\", _extends({}, props, {\n type: \"button\",\n ref: ref,\n tabIndex: -1,\n style: HIDDEN_STYLES\n }));\n});\n/**\n * Provides focus management for the floating element.\n * @see https://floating-ui.com/docs/FloatingFocusManager\n */\nfunction FloatingFocusManager(props) {\n const {\n context,\n children,\n disabled = false,\n order = ['content'],\n guards: _guards = true,\n initialFocus = 0,\n returnFocus = true,\n restoreFocus = false,\n modal = true,\n visuallyHiddenDismiss = false,\n closeOnFocusOut = true\n } = props;\n const {\n open,\n refs,\n nodeId,\n onOpenChange,\n events,\n dataRef,\n floatingId,\n elements: {\n domReference,\n floating\n }\n } = context;\n const ignoreInitialFocus = typeof initialFocus === 'number' && initialFocus < 0;\n // If the reference is a combobox and is typeable (e.g. input/textarea),\n // there are different focus semantics. The guards should not be rendered, but\n // aria-hidden should be applied to all nodes still. Further, the visually\n // hidden dismiss button should only appear at the end of the list, not the\n // start.\n const isUntrappedTypeableCombobox = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isTypeableCombobox)(domReference) && ignoreInitialFocus;\n\n // Force the guards to be rendered if the `inert` attribute is not supported.\n const guards = supportsInert() ? _guards : true;\n const orderRef = useLatestRef(order);\n const initialFocusRef = useLatestRef(initialFocus);\n const returnFocusRef = useLatestRef(returnFocus);\n const tree = useFloatingTree();\n const portalContext = usePortalContext();\n const startDismissButtonRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const endDismissButtonRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const preventReturnFocusRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const isPointerDownRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const tabbableIndexRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(-1);\n const isInsidePortal = portalContext != null;\n const firstElementChild = floating == null ? void 0 : floating.firstElementChild;\n // If the floating element is acting as a positioning wrapper rather than the\n // element that receives aria props, use it as the focus root instead.\n const floatingFocusNode = (firstElementChild == null ? void 0 : firstElementChild.id) === floatingId ? firstElementChild : floating;\n const getTabbableContent = useEffectEvent(function (container) {\n if (container === void 0) {\n container = floatingFocusNode;\n }\n return container ? (0,tabbable__WEBPACK_IMPORTED_MODULE_7__.tabbable)(container, getTabbableOptions()) : [];\n });\n const getTabbableElements = useEffectEvent(container => {\n const content = getTabbableContent(container);\n return orderRef.current.map(type => {\n if (domReference && type === 'reference') {\n return domReference;\n }\n if (floatingFocusNode && type === 'floating') {\n return floatingFocusNode;\n }\n return content;\n }).filter(Boolean).flat();\n });\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (disabled) return;\n if (!modal) return;\n function onKeyDown(event) {\n if (event.key === 'Tab') {\n // The focus guards have nothing to focus, so we need to stop the event.\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floatingFocusNode, (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode))) && getTabbableContent().length === 0 && !isUntrappedTypeableCombobox) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n }\n const els = getTabbableElements();\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event);\n if (orderRef.current[0] === 'reference' && target === domReference) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (event.shiftKey) {\n enqueueFocus(els[els.length - 1]);\n } else {\n enqueueFocus(els[1]);\n }\n }\n if (orderRef.current[1] === 'floating' && target === floatingFocusNode && event.shiftKey) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n enqueueFocus(els[0]);\n }\n }\n }\n const doc = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode);\n doc.addEventListener('keydown', onKeyDown);\n return () => {\n doc.removeEventListener('keydown', onKeyDown);\n };\n }, [disabled, domReference, floatingFocusNode, modal, orderRef, isUntrappedTypeableCombobox, getTabbableContent, getTabbableElements]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (disabled) return;\n if (!floating) return;\n function handleFocusIn(event) {\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event);\n const tabbableContent = getTabbableContent();\n const tabbableIndex = tabbableContent.indexOf(target);\n if (tabbableIndex !== -1) {\n tabbableIndexRef.current = tabbableIndex;\n }\n }\n floating.addEventListener('focusin', handleFocusIn);\n return () => {\n floating.removeEventListener('focusin', handleFocusIn);\n };\n }, [disabled, floating, getTabbableContent]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (disabled) return;\n if (!closeOnFocusOut) return;\n\n // In Safari, buttons lose focus when pressing them.\n function handlePointerDown() {\n isPointerDownRef.current = true;\n setTimeout(() => {\n isPointerDownRef.current = false;\n });\n }\n function handleFocusOutside(event) {\n const relatedTarget = event.relatedTarget;\n queueMicrotask(() => {\n const movedToUnrelatedNode = !((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(domReference, relatedTarget) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floating, relatedTarget) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(relatedTarget, floating) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(portalContext == null ? void 0 : portalContext.portalNode, relatedTarget) || relatedTarget != null && relatedTarget.hasAttribute(createAttribute('focus-guard')) || tree && (getChildren(tree.nodesRef.current, nodeId).find(node => {\n var _node$context, _node$context2;\n return (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)((_node$context = node.context) == null ? void 0 : _node$context.elements.floating, relatedTarget) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)((_node$context2 = node.context) == null ? void 0 : _node$context2.elements.domReference, relatedTarget);\n }) || getAncestors(tree.nodesRef.current, nodeId).find(node => {\n var _node$context3, _node$context4;\n return ((_node$context3 = node.context) == null ? void 0 : _node$context3.elements.floating) === relatedTarget || ((_node$context4 = node.context) == null ? void 0 : _node$context4.elements.domReference) === relatedTarget;\n })));\n\n // Restore focus to the previous tabbable element index to prevent\n // focus from being lost outside the floating tree.\n if (restoreFocus && movedToUnrelatedNode && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode)) === (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode).body) {\n // Let `FloatingPortal` effect knows that focus is still inside the\n // floating tree.\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(floatingFocusNode)) {\n floatingFocusNode == null || floatingFocusNode.focus();\n }\n const prevTabbableIndex = tabbableIndexRef.current;\n const tabbableContent = getTabbableContent();\n const nodeToFocus = tabbableContent[prevTabbableIndex] || tabbableContent[tabbableContent.length - 1] || floatingFocusNode;\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(nodeToFocus)) {\n nodeToFocus.focus();\n }\n }\n\n // Focus did not move inside the floating tree, and there are no tabbable\n // portal guards to handle closing.\n if (!modal && relatedTarget && movedToUnrelatedNode && !isPointerDownRef.current &&\n // Fix React 18 Strict Mode returnFocus due to double rendering.\n relatedTarget !== getPreviouslyFocusedElement()) {\n preventReturnFocusRef.current = true;\n onOpenChange(false, event);\n }\n });\n }\n if (floating && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(domReference)) {\n domReference.addEventListener('focusout', handleFocusOutside);\n domReference.addEventListener('pointerdown', handlePointerDown);\n floating.addEventListener('focusout', handleFocusOutside);\n return () => {\n domReference.removeEventListener('focusout', handleFocusOutside);\n domReference.removeEventListener('pointerdown', handlePointerDown);\n floating.removeEventListener('focusout', handleFocusOutside);\n };\n }\n }, [disabled, domReference, floating, floatingFocusNode, modal, nodeId, tree, portalContext, onOpenChange, closeOnFocusOut, restoreFocus, getTabbableContent]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n var _portalContext$portal;\n if (disabled) return;\n\n // Don't hide portals nested within the parent portal.\n const portalNodes = Array.from((portalContext == null || (_portalContext$portal = portalContext.portalNode) == null ? void 0 : _portalContext$portal.querySelectorAll(\"[\" + createAttribute('portal') + \"]\")) || []);\n if (floating) {\n const insideElements = [floating, ...portalNodes, startDismissButtonRef.current, endDismissButtonRef.current, orderRef.current.includes('reference') || isUntrappedTypeableCombobox ? domReference : null].filter(x => x != null);\n const cleanup = modal || isUntrappedTypeableCombobox ? markOthers(insideElements, guards, !guards) : markOthers(insideElements);\n return () => {\n cleanup();\n };\n }\n }, [disabled, domReference, floating, modal, orderRef, portalContext, isUntrappedTypeableCombobox, guards]);\n index(() => {\n if (disabled || !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(floatingFocusNode)) return;\n const doc = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode);\n const previouslyFocusedElement = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)(doc);\n\n // Wait for any layout effect state setters to execute to set `tabIndex`.\n queueMicrotask(() => {\n const focusableElements = getTabbableElements(floatingFocusNode);\n const initialFocusValue = initialFocusRef.current;\n const elToFocus = (typeof initialFocusValue === 'number' ? focusableElements[initialFocusValue] : initialFocusValue.current) || floatingFocusNode;\n const focusAlreadyInsideFloatingEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floatingFocusNode, previouslyFocusedElement);\n if (!ignoreInitialFocus && !focusAlreadyInsideFloatingEl && open) {\n enqueueFocus(elToFocus, {\n preventScroll: elToFocus === floatingFocusNode\n });\n }\n });\n }, [disabled, open, floatingFocusNode, ignoreInitialFocus, getTabbableElements, initialFocusRef]);\n index(() => {\n if (disabled || !floatingFocusNode) return;\n let preventReturnFocusScroll = false;\n const doc = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floatingFocusNode);\n const previouslyFocusedElement = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)(doc);\n const contextData = dataRef.current;\n let openEvent = contextData.openEvent;\n addPreviouslyFocusedElement(previouslyFocusedElement);\n\n // Dismissing via outside press should always ignore `returnFocus` to\n // prevent unwanted scrolling.\n function onOpenChange(_ref) {\n let {\n open,\n reason,\n event,\n nested\n } = _ref;\n if (open) {\n openEvent = event;\n }\n if (reason === 'escape-key' && refs.domReference.current) {\n addPreviouslyFocusedElement(refs.domReference.current);\n }\n if (reason === 'hover' && event.type === 'mouseleave') {\n preventReturnFocusRef.current = true;\n }\n if (reason !== 'outside-press') return;\n if (nested) {\n preventReturnFocusRef.current = false;\n preventReturnFocusScroll = true;\n } else {\n preventReturnFocusRef.current = !((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isVirtualClick)(event) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isVirtualPointerEvent)(event));\n }\n }\n events.on('openchange', onOpenChange);\n return () => {\n events.off('openchange', onOpenChange);\n const activeEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)(doc);\n const isFocusInsideFloatingTree = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floating, activeEl) || tree && getChildren(tree.nodesRef.current, nodeId).some(node => {\n var _node$context5;\n return (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)((_node$context5 = node.context) == null ? void 0 : _node$context5.elements.floating, activeEl);\n });\n const shouldFocusReference = isFocusInsideFloatingTree || openEvent && ['click', 'mousedown'].includes(openEvent.type);\n if (shouldFocusReference && refs.domReference.current) {\n addPreviouslyFocusedElement(refs.domReference.current);\n }\n const returnElement = getPreviouslyFocusedElement();\n if (\n // eslint-disable-next-line react-hooks/exhaustive-deps\n returnFocusRef.current && !preventReturnFocusRef.current && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(returnElement) && (\n // If the focus moved somewhere else after mount, avoid returning focus\n // since it likely entered a different element which should be\n // respected: https://github.com/floating-ui/floating-ui/issues/2607\n returnElement !== activeEl && activeEl !== doc.body ? isFocusInsideFloatingTree : true)) {\n enqueueFocus(returnElement, {\n // When dismissing nested floating elements, by the time the rAF has\n // executed, the menus will all have been unmounted. When they try\n // to get focused, the calls get ignored — leaving the root\n // reference focused as desired.\n cancelPrevious: false,\n preventScroll: preventReturnFocusScroll\n });\n }\n };\n }, [disabled, floating, floatingFocusNode, returnFocusRef, dataRef, refs, events, tree, nodeId]);\n\n // Synchronize the `context` & `modal` value to the FloatingPortal context.\n // It will decide whether or not it needs to render its own guards.\n index(() => {\n if (disabled) return;\n if (!portalContext) return;\n portalContext.setFocusManagerState({\n modal,\n closeOnFocusOut,\n open,\n onOpenChange,\n refs\n });\n return () => {\n portalContext.setFocusManagerState(null);\n };\n }, [disabled, portalContext, modal, open, onOpenChange, refs, closeOnFocusOut]);\n index(() => {\n if (disabled) return;\n if (!floatingFocusNode) return;\n if (typeof MutationObserver !== 'function') return;\n if (ignoreInitialFocus) return;\n const handleMutation = () => {\n const tabIndex = floatingFocusNode.getAttribute('tabindex');\n const tabbableContent = getTabbableContent();\n const activeEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating));\n const tabbableIndex = tabbableContent.indexOf(activeEl);\n if (tabbableIndex !== -1) {\n tabbableIndexRef.current = tabbableIndex;\n }\n if (orderRef.current.includes('floating') || activeEl !== refs.domReference.current && tabbableContent.length === 0) {\n if (tabIndex !== '0') {\n floatingFocusNode.setAttribute('tabindex', '0');\n }\n } else if (tabIndex !== '-1') {\n floatingFocusNode.setAttribute('tabindex', '-1');\n }\n };\n handleMutation();\n const observer = new MutationObserver(handleMutation);\n observer.observe(floatingFocusNode, {\n childList: true,\n subtree: true,\n attributes: true\n });\n return () => {\n observer.disconnect();\n };\n }, [disabled, floating, floatingFocusNode, refs, orderRef, getTabbableContent, ignoreInitialFocus]);\n function renderDismissButton(location) {\n if (disabled || !visuallyHiddenDismiss || !modal) {\n return null;\n }\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(VisuallyHiddenDismiss, {\n ref: location === 'start' ? startDismissButtonRef : endDismissButtonRef,\n onClick: event => onOpenChange(false, event.nativeEvent)\n }, typeof visuallyHiddenDismiss === 'string' ? visuallyHiddenDismiss : 'Dismiss');\n }\n const shouldRenderGuards = !disabled && guards && (isInsidePortal || modal);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, shouldRenderGuards && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FocusGuard, {\n \"data-type\": \"inside\",\n ref: portalContext == null ? void 0 : portalContext.beforeInsideRef,\n onFocus: event => {\n if (modal) {\n const els = getTabbableElements();\n enqueueFocus(order[0] === 'reference' ? els[0] : els[els.length - 1]);\n } else if (portalContext != null && portalContext.preserveTabOrder && portalContext.portalNode) {\n preventReturnFocusRef.current = false;\n if (isOutsideEvent(event, portalContext.portalNode)) {\n const nextTabbable = getNextTabbable() || domReference;\n nextTabbable == null || nextTabbable.focus();\n } else {\n var _portalContext$before;\n (_portalContext$before = portalContext.beforeOutsideRef.current) == null || _portalContext$before.focus();\n }\n }\n }\n }), !isUntrappedTypeableCombobox && renderDismissButton('start'), children, renderDismissButton('end'), shouldRenderGuards && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(FocusGuard, {\n \"data-type\": \"inside\",\n ref: portalContext == null ? void 0 : portalContext.afterInsideRef,\n onFocus: event => {\n if (modal) {\n enqueueFocus(getTabbableElements()[0]);\n } else if (portalContext != null && portalContext.preserveTabOrder && portalContext.portalNode) {\n if (closeOnFocusOut) {\n preventReturnFocusRef.current = true;\n }\n if (isOutsideEvent(event, portalContext.portalNode)) {\n const prevTabbable = getPreviousTabbable() || domReference;\n prevTabbable == null || prevTabbable.focus();\n } else {\n var _portalContext$afterO;\n (_portalContext$afterO = portalContext.afterOutsideRef.current) == null || _portalContext$afterO.focus();\n }\n }\n }\n }));\n}\n\nconst activeLocks = /*#__PURE__*/new Set();\n/**\n * Provides base styling for a fixed overlay element to dim content or block\n * pointer events behind a floating element.\n * It's a regular `<div>`, so it can be styled via any CSS solution you prefer.\n * @see https://floating-ui.com/docs/FloatingOverlay\n */\nconst FloatingOverlay = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.forwardRef(function FloatingOverlay(props, ref) {\n const {\n lockScroll = false,\n ...rest\n } = props;\n const lockId = useId();\n index(() => {\n if (!lockScroll) return;\n activeLocks.add(lockId);\n const isIOS = /iP(hone|ad|od)|iOS/.test((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getPlatform)());\n const bodyStyle = document.body.style;\n // RTL <body> scrollbar\n const scrollbarX = Math.round(document.documentElement.getBoundingClientRect().left) + document.documentElement.scrollLeft;\n const paddingProp = scrollbarX ? 'paddingLeft' : 'paddingRight';\n const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n const scrollX = bodyStyle.left ? parseFloat(bodyStyle.left) : window.pageXOffset;\n const scrollY = bodyStyle.top ? parseFloat(bodyStyle.top) : window.pageYOffset;\n bodyStyle.overflow = 'hidden';\n if (scrollbarWidth) {\n bodyStyle[paddingProp] = scrollbarWidth + \"px\";\n }\n\n // Only iOS doesn't respect `overflow: hidden` on document.body, and this\n // technique has fewer side effects.\n if (isIOS) {\n var _window$visualViewpor, _window$visualViewpor2;\n // iOS 12 does not support `visualViewport`.\n const offsetLeft = ((_window$visualViewpor = window.visualViewport) == null ? void 0 : _window$visualViewpor.offsetLeft) || 0;\n const offsetTop = ((_window$visualViewpor2 = window.visualViewport) == null ? void 0 : _window$visualViewpor2.offsetTop) || 0;\n Object.assign(bodyStyle, {\n position: 'fixed',\n top: -(scrollY - Math.floor(offsetTop)) + \"px\",\n left: -(scrollX - Math.floor(offsetLeft)) + \"px\",\n right: '0'\n });\n }\n return () => {\n activeLocks.delete(lockId);\n if (activeLocks.size === 0) {\n Object.assign(bodyStyle, {\n overflow: '',\n [paddingProp]: ''\n });\n if (isIOS) {\n Object.assign(bodyStyle, {\n position: '',\n top: '',\n left: '',\n right: ''\n });\n window.scrollTo(scrollX, scrollY);\n }\n }\n };\n }, [lockId, lockScroll]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(\"div\", _extends({\n ref: ref\n }, rest, {\n style: {\n position: 'fixed',\n overflow: 'auto',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...rest.style\n }\n }));\n});\n\nfunction isButtonTarget(event) {\n return (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(event.target) && event.target.tagName === 'BUTTON';\n}\nfunction isSpaceIgnored(element) {\n return (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isTypeableElement)(element);\n}\n/**\n * Opens or closes the floating element when clicking the reference element.\n * @see https://floating-ui.com/docs/useClick\n */\nfunction useClick(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n onOpenChange,\n dataRef,\n elements: {\n domReference\n }\n } = context;\n const {\n enabled = true,\n event: eventOption = 'click',\n toggle = true,\n ignoreMouse = false,\n keyboardHandlers = true\n } = props;\n const pointerTypeRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef();\n const didKeyDownRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) return {};\n return {\n reference: {\n onPointerDown(event) {\n pointerTypeRef.current = event.pointerType;\n },\n onMouseDown(event) {\n // Ignore all buttons except for the \"main\" button.\n // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button\n if (event.button !== 0) {\n return;\n }\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerTypeRef.current, true) && ignoreMouse) {\n return;\n }\n if (eventOption === 'click') {\n return;\n }\n if (open && toggle && (dataRef.current.openEvent ? dataRef.current.openEvent.type === 'mousedown' : true)) {\n onOpenChange(false, event.nativeEvent, 'click');\n } else {\n // Prevent stealing focus from the floating element\n event.preventDefault();\n onOpenChange(true, event.nativeEvent, 'click');\n }\n },\n onClick(event) {\n if (eventOption === 'mousedown' && pointerTypeRef.current) {\n pointerTypeRef.current = undefined;\n return;\n }\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerTypeRef.current, true) && ignoreMouse) {\n return;\n }\n if (open && toggle && (dataRef.current.openEvent ? dataRef.current.openEvent.type === 'click' : true)) {\n onOpenChange(false, event.nativeEvent, 'click');\n } else {\n onOpenChange(true, event.nativeEvent, 'click');\n }\n },\n onKeyDown(event) {\n pointerTypeRef.current = undefined;\n if (event.defaultPrevented || !keyboardHandlers || isButtonTarget(event)) {\n return;\n }\n if (event.key === ' ' && !isSpaceIgnored(domReference)) {\n // Prevent scrolling\n event.preventDefault();\n didKeyDownRef.current = true;\n }\n if (event.key === 'Enter') {\n if (open && toggle) {\n onOpenChange(false, event.nativeEvent, 'click');\n } else {\n onOpenChange(true, event.nativeEvent, 'click');\n }\n }\n },\n onKeyUp(event) {\n if (event.defaultPrevented || !keyboardHandlers || isButtonTarget(event) || isSpaceIgnored(domReference)) {\n return;\n }\n if (event.key === ' ' && didKeyDownRef.current) {\n didKeyDownRef.current = false;\n if (open && toggle) {\n onOpenChange(false, event.nativeEvent, 'click');\n } else {\n onOpenChange(true, event.nativeEvent, 'click');\n }\n }\n }\n }\n };\n }, [enabled, dataRef, eventOption, ignoreMouse, keyboardHandlers, domReference, toggle, open, onOpenChange]);\n}\n\nfunction createVirtualElement(domElement, data) {\n let offsetX = null;\n let offsetY = null;\n let isAutoUpdateEvent = false;\n return {\n contextElement: domElement || undefined,\n getBoundingClientRect() {\n var _data$dataRef$current;\n const domRect = (domElement == null ? void 0 : domElement.getBoundingClientRect()) || {\n width: 0,\n height: 0,\n x: 0,\n y: 0\n };\n const isXAxis = data.axis === 'x' || data.axis === 'both';\n const isYAxis = data.axis === 'y' || data.axis === 'both';\n const canTrackCursorOnAutoUpdate = ['mouseenter', 'mousemove'].includes(((_data$dataRef$current = data.dataRef.current.openEvent) == null ? void 0 : _data$dataRef$current.type) || '') && data.pointerType !== 'touch';\n let width = domRect.width;\n let height = domRect.height;\n let x = domRect.x;\n let y = domRect.y;\n if (offsetX == null && data.x && isXAxis) {\n offsetX = domRect.x - data.x;\n }\n if (offsetY == null && data.y && isYAxis) {\n offsetY = domRect.y - data.y;\n }\n x -= offsetX || 0;\n y -= offsetY || 0;\n width = 0;\n height = 0;\n if (!isAutoUpdateEvent || canTrackCursorOnAutoUpdate) {\n width = data.axis === 'y' ? domRect.width : 0;\n height = data.axis === 'x' ? domRect.height : 0;\n x = isXAxis && data.x != null ? data.x : x;\n y = isYAxis && data.y != null ? data.y : y;\n } else if (isAutoUpdateEvent && !canTrackCursorOnAutoUpdate) {\n height = data.axis === 'x' ? domRect.height : height;\n width = data.axis === 'y' ? domRect.width : width;\n }\n isAutoUpdateEvent = true;\n return {\n width,\n height,\n x,\n y,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x\n };\n }\n };\n}\nfunction isMouseBasedEvent(event) {\n return event != null && event.clientX != null;\n}\n/**\n * Positions the floating element relative to a client point (in the viewport),\n * such as the mouse position. By default, it follows the mouse cursor.\n * @see https://floating-ui.com/docs/useClientPoint\n */\nfunction useClientPoint(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n dataRef,\n elements: {\n floating,\n domReference\n },\n refs\n } = context;\n const {\n enabled = true,\n axis = 'both',\n x = null,\n y = null\n } = props;\n const initialRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const cleanupListenerRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const [pointerType, setPointerType] = react__WEBPACK_IMPORTED_MODULE_0__.useState();\n const [reactive, setReactive] = react__WEBPACK_IMPORTED_MODULE_0__.useState([]);\n const setReference = useEffectEvent((x, y) => {\n if (initialRef.current) return;\n\n // Prevent setting if the open event was not a mouse-like one\n // (e.g. focus to open, then hover over the reference element).\n // Only apply if the event exists.\n if (dataRef.current.openEvent && !isMouseBasedEvent(dataRef.current.openEvent)) {\n return;\n }\n refs.setPositionReference(createVirtualElement(domReference, {\n x,\n y,\n axis,\n dataRef,\n pointerType\n }));\n });\n const handleReferenceEnterOrMove = useEffectEvent(event => {\n if (x != null || y != null) return;\n if (!open) {\n setReference(event.clientX, event.clientY);\n } else if (!cleanupListenerRef.current) {\n // If there's no cleanup, there's no listener, but we want to ensure\n // we add the listener if the cursor landed on the floating element and\n // then back on the reference (i.e. it's interactive).\n setReactive([]);\n }\n });\n\n // If the pointer is a mouse-like pointer, we want to continue following the\n // mouse even if the floating element is transitioning out. On touch\n // devices, this is undesirable because the floating element will move to\n // the dismissal touch point.\n const openCheck = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMouseLikePointerType)(pointerType) ? floating : open;\n const addListener = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(() => {\n // Explicitly specified `x`/`y` coordinates shouldn't add a listener.\n if (!openCheck || !enabled || x != null || y != null) return;\n const win = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getWindow)(floating);\n function handleMouseMove(event) {\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event);\n if (!(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(floating, target)) {\n setReference(event.clientX, event.clientY);\n } else {\n win.removeEventListener('mousemove', handleMouseMove);\n cleanupListenerRef.current = null;\n }\n }\n if (!dataRef.current.openEvent || isMouseBasedEvent(dataRef.current.openEvent)) {\n win.addEventListener('mousemove', handleMouseMove);\n const cleanup = () => {\n win.removeEventListener('mousemove', handleMouseMove);\n cleanupListenerRef.current = null;\n };\n cleanupListenerRef.current = cleanup;\n return cleanup;\n }\n refs.setPositionReference(domReference);\n }, [openCheck, enabled, x, y, floating, dataRef, refs, domReference, setReference]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n return addListener();\n }, [addListener, reactive]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (enabled && !floating) {\n initialRef.current = false;\n }\n }, [enabled, floating]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled && open) {\n initialRef.current = true;\n }\n }, [enabled, open]);\n index(() => {\n if (enabled && (x != null || y != null)) {\n initialRef.current = false;\n setReference(x, y);\n }\n }, [enabled, x, y, setReference]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) return {};\n function setPointerTypeRef(_ref) {\n let {\n pointerType\n } = _ref;\n setPointerType(pointerType);\n }\n return {\n reference: {\n onPointerDown: setPointerTypeRef,\n onPointerEnter: setPointerTypeRef,\n onMouseMove: handleReferenceEnterOrMove,\n onMouseEnter: handleReferenceEnterOrMove\n }\n };\n }, [enabled, handleReferenceEnterOrMove]);\n}\n\nconst bubbleHandlerKeys = {\n pointerdown: 'onPointerDown',\n mousedown: 'onMouseDown',\n click: 'onClick'\n};\nconst captureHandlerKeys = {\n pointerdown: 'onPointerDownCapture',\n mousedown: 'onMouseDownCapture',\n click: 'onClickCapture'\n};\nconst normalizeProp = normalizable => {\n var _normalizable$escapeK, _normalizable$outside;\n return {\n escapeKey: typeof normalizable === 'boolean' ? normalizable : (_normalizable$escapeK = normalizable == null ? void 0 : normalizable.escapeKey) != null ? _normalizable$escapeK : false,\n outsidePress: typeof normalizable === 'boolean' ? normalizable : (_normalizable$outside = normalizable == null ? void 0 : normalizable.outsidePress) != null ? _normalizable$outside : true\n };\n};\n/**\n * Closes the floating element when a dismissal is requested — by default, when\n * the user presses the `escape` key or outside of the floating element.\n * @see https://floating-ui.com/docs/useDismiss\n */\nfunction useDismiss(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n onOpenChange,\n elements: {\n reference,\n domReference,\n floating\n },\n dataRef\n } = context;\n const {\n enabled = true,\n escapeKey = true,\n outsidePress: unstable_outsidePress = true,\n outsidePressEvent = 'pointerdown',\n referencePress = false,\n referencePressEvent = 'pointerdown',\n ancestorScroll = false,\n bubbles,\n capture\n } = props;\n const tree = useFloatingTree();\n const outsidePressFn = useEffectEvent(typeof unstable_outsidePress === 'function' ? unstable_outsidePress : () => false);\n const outsidePress = typeof unstable_outsidePress === 'function' ? outsidePressFn : unstable_outsidePress;\n const insideReactTreeRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const endedOrStartedInsideRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const {\n escapeKey: escapeKeyBubbles,\n outsidePress: outsidePressBubbles\n } = normalizeProp(bubbles);\n const {\n escapeKey: escapeKeyCapture,\n outsidePress: outsidePressCapture\n } = normalizeProp(capture);\n const closeOnEscapeKeyDown = useEffectEvent(event => {\n var _dataRef$current$floa;\n if (!open || !enabled || !escapeKey || event.key !== 'Escape') {\n return;\n }\n const nodeId = (_dataRef$current$floa = dataRef.current.floatingContext) == null ? void 0 : _dataRef$current$floa.nodeId;\n const children = tree ? getChildren(tree.nodesRef.current, nodeId) : [];\n if (!escapeKeyBubbles) {\n event.stopPropagation();\n if (children.length > 0) {\n let shouldDismiss = true;\n children.forEach(child => {\n var _child$context;\n if ((_child$context = child.context) != null && _child$context.open && !child.context.dataRef.current.__escapeKeyBubbles) {\n shouldDismiss = false;\n return;\n }\n });\n if (!shouldDismiss) {\n return;\n }\n }\n }\n onOpenChange(false, (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isReactEvent)(event) ? event.nativeEvent : event, 'escape-key');\n });\n const closeOnEscapeKeyDownCapture = useEffectEvent(event => {\n var _getTarget2;\n const callback = () => {\n var _getTarget;\n closeOnEscapeKeyDown(event);\n (_getTarget = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event)) == null || _getTarget.removeEventListener('keydown', callback);\n };\n (_getTarget2 = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event)) == null || _getTarget2.addEventListener('keydown', callback);\n });\n const closeOnPressOutside = useEffectEvent(event => {\n var _dataRef$current$floa2;\n // Given developers can stop the propagation of the synthetic event,\n // we can only be confident with a positive value.\n const insideReactTree = insideReactTreeRef.current;\n insideReactTreeRef.current = false;\n\n // When click outside is lazy (`click` event), handle dragging.\n // Don't close if:\n // - The click started inside the floating element.\n // - The click ended inside the floating element.\n const endedOrStartedInside = endedOrStartedInsideRef.current;\n endedOrStartedInsideRef.current = false;\n if (outsidePressEvent === 'click' && endedOrStartedInside) {\n return;\n }\n if (insideReactTree) {\n return;\n }\n if (typeof outsidePress === 'function' && !outsidePress(event)) {\n return;\n }\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event);\n const inertSelector = \"[\" + createAttribute('inert') + \"]\";\n const markers = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating).querySelectorAll(inertSelector);\n let targetRootAncestor = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(target) ? target : null;\n while (targetRootAncestor && !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isLastTraversableNode)(targetRootAncestor)) {\n const nextParent = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getParentNode)(targetRootAncestor);\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isLastTraversableNode)(nextParent) || !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(nextParent)) {\n break;\n }\n targetRootAncestor = nextParent;\n }\n\n // Check if the click occurred on a third-party element injected after the\n // floating element rendered.\n if (markers.length && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(target) && !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isRootElement)(target) &&\n // Clicked on a direct ancestor (e.g. FloatingOverlay).\n !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(target, floating) &&\n // If the target root element contains none of the markers, then the\n // element was injected after the floating element rendered.\n Array.from(markers).every(marker => !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(targetRootAncestor, marker))) {\n return;\n }\n\n // Check if the click occurred on the scrollbar\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(target) && floating) {\n // In Firefox, `target.scrollWidth > target.clientWidth` for inline\n // elements.\n const canScrollX = target.clientWidth > 0 && target.scrollWidth > target.clientWidth;\n const canScrollY = target.clientHeight > 0 && target.scrollHeight > target.clientHeight;\n let xCond = canScrollY && event.offsetX > target.clientWidth;\n\n // In some browsers it is possible to change the <body> (or window)\n // scrollbar to the left side, but is very rare and is difficult to\n // check for. Plus, for modal dialogs with backdrops, it is more\n // important that the backdrop is checked but not so much the window.\n if (canScrollY) {\n const isRTL = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getComputedStyle)(target).direction === 'rtl';\n if (isRTL) {\n xCond = event.offsetX <= target.offsetWidth - target.clientWidth;\n }\n }\n if (xCond || canScrollX && event.offsetY > target.clientHeight) {\n return;\n }\n }\n const nodeId = (_dataRef$current$floa2 = dataRef.current.floatingContext) == null ? void 0 : _dataRef$current$floa2.nodeId;\n const targetIsInsideChildren = tree && getChildren(tree.nodesRef.current, nodeId).some(node => {\n var _node$context;\n return (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isEventTargetWithin)(event, (_node$context = node.context) == null ? void 0 : _node$context.elements.floating);\n });\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isEventTargetWithin)(event, floating) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isEventTargetWithin)(event, domReference) || targetIsInsideChildren) {\n return;\n }\n const children = tree ? getChildren(tree.nodesRef.current, nodeId) : [];\n if (children.length > 0) {\n let shouldDismiss = true;\n children.forEach(child => {\n var _child$context2;\n if ((_child$context2 = child.context) != null && _child$context2.open && !child.context.dataRef.current.__outsidePressBubbles) {\n shouldDismiss = false;\n return;\n }\n });\n if (!shouldDismiss) {\n return;\n }\n }\n onOpenChange(false, event, 'outside-press');\n });\n const closeOnPressOutsideCapture = useEffectEvent(event => {\n var _getTarget4;\n const callback = () => {\n var _getTarget3;\n closeOnPressOutside(event);\n (_getTarget3 = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event)) == null || _getTarget3.removeEventListener(outsidePressEvent, callback);\n };\n (_getTarget4 = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event)) == null || _getTarget4.addEventListener(outsidePressEvent, callback);\n });\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!open || !enabled) {\n return;\n }\n dataRef.current.__escapeKeyBubbles = escapeKeyBubbles;\n dataRef.current.__outsidePressBubbles = outsidePressBubbles;\n function onScroll(event) {\n onOpenChange(false, event, 'ancestor-scroll');\n }\n const doc = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating);\n escapeKey && doc.addEventListener('keydown', escapeKeyCapture ? closeOnEscapeKeyDownCapture : closeOnEscapeKeyDown, escapeKeyCapture);\n outsidePress && doc.addEventListener(outsidePressEvent, outsidePressCapture ? closeOnPressOutsideCapture : closeOnPressOutside, outsidePressCapture);\n let ancestors = [];\n if (ancestorScroll) {\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(domReference)) {\n ancestors = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getOverflowAncestors)(domReference);\n }\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(floating)) {\n ancestors = ancestors.concat((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getOverflowAncestors)(floating));\n }\n if (!(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(reference) && reference && reference.contextElement) {\n ancestors = ancestors.concat((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getOverflowAncestors)(reference.contextElement));\n }\n }\n\n // Ignore the visual viewport for scrolling dismissal (allow pinch-zoom)\n ancestors = ancestors.filter(ancestor => {\n var _doc$defaultView;\n return ancestor !== ((_doc$defaultView = doc.defaultView) == null ? void 0 : _doc$defaultView.visualViewport);\n });\n ancestors.forEach(ancestor => {\n ancestor.addEventListener('scroll', onScroll, {\n passive: true\n });\n });\n return () => {\n escapeKey && doc.removeEventListener('keydown', escapeKeyCapture ? closeOnEscapeKeyDownCapture : closeOnEscapeKeyDown, escapeKeyCapture);\n outsidePress && doc.removeEventListener(outsidePressEvent, outsidePressCapture ? closeOnPressOutsideCapture : closeOnPressOutside, outsidePressCapture);\n ancestors.forEach(ancestor => {\n ancestor.removeEventListener('scroll', onScroll);\n });\n };\n }, [dataRef, floating, domReference, reference, escapeKey, outsidePress, outsidePressEvent, open, onOpenChange, ancestorScroll, enabled, escapeKeyBubbles, outsidePressBubbles, closeOnEscapeKeyDown, escapeKeyCapture, closeOnEscapeKeyDownCapture, closeOnPressOutside, outsidePressCapture, closeOnPressOutsideCapture]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n insideReactTreeRef.current = false;\n }, [outsidePress, outsidePressEvent]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n return {\n reference: {\n onKeyDown: closeOnEscapeKeyDown,\n [bubbleHandlerKeys[referencePressEvent]]: event => {\n if (referencePress) {\n onOpenChange(false, event.nativeEvent, 'reference-press');\n }\n }\n },\n floating: {\n onKeyDown: closeOnEscapeKeyDown,\n onMouseDown() {\n endedOrStartedInsideRef.current = true;\n },\n onMouseUp() {\n endedOrStartedInsideRef.current = true;\n },\n [captureHandlerKeys[outsidePressEvent]]: () => {\n insideReactTreeRef.current = true;\n }\n }\n };\n }, [enabled, referencePress, outsidePressEvent, referencePressEvent, onOpenChange, closeOnEscapeKeyDown]);\n}\n\nfunction useFloatingRootContext(options) {\n const {\n open = false,\n onOpenChange: onOpenChangeProp,\n elements: elementsProp\n } = options;\n const floatingId = useId();\n const dataRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef({});\n const [events] = react__WEBPACK_IMPORTED_MODULE_0__.useState(() => createPubSub());\n const nested = useFloatingParentNodeId() != null;\n if (true) {\n const optionDomReference = elementsProp.reference;\n if (optionDomReference && !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(optionDomReference)) {\n error('Cannot pass a virtual element to the `elements.reference` option,', 'as it must be a real DOM element. Use `refs.setPositionReference()`', 'instead.');\n }\n }\n const [positionReference, setPositionReference] = react__WEBPACK_IMPORTED_MODULE_0__.useState(elementsProp.reference);\n const onOpenChange = useEffectEvent((open, event, reason) => {\n dataRef.current.openEvent = open ? event : undefined;\n events.emit('openchange', {\n open,\n event,\n reason,\n nested\n });\n onOpenChangeProp == null || onOpenChangeProp(open, event, reason);\n });\n const refs = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n setPositionReference\n }), []);\n const elements = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n reference: positionReference || elementsProp.reference || null,\n floating: elementsProp.floating || null,\n domReference: elementsProp.reference\n }), [positionReference, elementsProp.reference, elementsProp.floating]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n dataRef,\n open,\n onOpenChange,\n elements,\n events,\n floatingId,\n refs\n }), [open, onOpenChange, elements, events, floatingId, refs]);\n}\n\n/**\n * Provides data to position a floating element and context to add interactions.\n * @see https://floating-ui.com/docs/useFloating\n */\nfunction useFloating(options) {\n if (options === void 0) {\n options = {};\n }\n const {\n nodeId\n } = options;\n const internalRootContext = useFloatingRootContext({\n ...options,\n elements: {\n reference: null,\n floating: null,\n ...options.elements\n }\n });\n const rootContext = options.rootContext || internalRootContext;\n const computedElements = rootContext.elements;\n const [_domReference, setDomReference] = react__WEBPACK_IMPORTED_MODULE_0__.useState(null);\n const [positionReference, _setPositionReference] = react__WEBPACK_IMPORTED_MODULE_0__.useState(null);\n const optionDomReference = computedElements == null ? void 0 : computedElements.reference;\n const domReference = optionDomReference || _domReference;\n const domReferenceRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const tree = useFloatingTree();\n index(() => {\n if (domReference) {\n domReferenceRef.current = domReference;\n }\n }, [domReference]);\n const position = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.useFloating)({\n ...options,\n elements: {\n ...computedElements,\n ...(positionReference && {\n reference: positionReference\n })\n }\n });\n const setPositionReference = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n const computedPositionReference = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(node) ? {\n getBoundingClientRect: () => node.getBoundingClientRect(),\n contextElement: node\n } : node;\n // Store the positionReference in state if the DOM reference is specified externally via the\n // `elements.reference` option. This ensures that it won't be overridden on future renders.\n _setPositionReference(computedPositionReference);\n position.refs.setReference(computedPositionReference);\n }, [position.refs]);\n const setReference = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(node => {\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(node) || node === null) {\n domReferenceRef.current = node;\n setDomReference(node);\n }\n\n // Backwards-compatibility for passing a virtual element to `reference`\n // after it has set the DOM reference.\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(position.refs.reference.current) || position.refs.reference.current === null ||\n // Don't allow setting virtual elements using the old technique back to\n // `null` to support `positionReference` + an unstable `reference`\n // callback ref.\n node !== null && !(0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(node)) {\n position.refs.setReference(node);\n }\n }, [position.refs]);\n const refs = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ...position.refs,\n setReference,\n setPositionReference,\n domReference: domReferenceRef\n }), [position.refs, setReference, setPositionReference]);\n const elements = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ...position.elements,\n domReference: domReference\n }), [position.elements, domReference]);\n const context = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ...position,\n ...rootContext,\n refs,\n elements,\n nodeId\n }), [position, refs, elements, nodeId, rootContext]);\n index(() => {\n rootContext.dataRef.current.floatingContext = context;\n const node = tree == null ? void 0 : tree.nodesRef.current.find(node => node.id === nodeId);\n if (node) {\n node.context = context;\n }\n });\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n ...position,\n context,\n refs,\n elements\n }), [position, refs, elements, context]);\n}\n\n/**\n * Opens the floating element while the reference element has focus, like CSS\n * `:focus`.\n * @see https://floating-ui.com/docs/useFocus\n */\nfunction useFocus(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n onOpenChange,\n events,\n dataRef,\n elements: {\n domReference\n }\n } = context;\n const {\n enabled = true,\n visibleOnly = true\n } = props;\n const blockFocusRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const timeoutRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef();\n const keyboardModalityRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(true);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled) {\n return;\n }\n const win = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.getWindow)(domReference);\n\n // If the reference was focused and the user left the tab/window, and the\n // floating element was not open, the focus should be blocked when they\n // return to the tab/window.\n function onBlur() {\n if (!open && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(domReference) && domReference === (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(domReference))) {\n blockFocusRef.current = true;\n }\n }\n function onKeyDown() {\n keyboardModalityRef.current = true;\n }\n win.addEventListener('blur', onBlur);\n win.addEventListener('keydown', onKeyDown, true);\n return () => {\n win.removeEventListener('blur', onBlur);\n win.removeEventListener('keydown', onKeyDown, true);\n };\n }, [domReference, open, enabled]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled) {\n return;\n }\n function onOpenChange(_ref) {\n let {\n reason\n } = _ref;\n if (reason === 'reference-press' || reason === 'escape-key') {\n blockFocusRef.current = true;\n }\n }\n events.on('openchange', onOpenChange);\n return () => {\n events.off('openchange', onOpenChange);\n };\n }, [events, enabled]);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n return () => {\n clearTimeout(timeoutRef.current);\n };\n }, []);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n return {\n reference: {\n onPointerDown(event) {\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isVirtualPointerEvent)(event.nativeEvent)) return;\n keyboardModalityRef.current = false;\n },\n onMouseLeave() {\n blockFocusRef.current = false;\n },\n onFocus(event) {\n if (blockFocusRef.current) return;\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event.nativeEvent);\n if (visibleOnly && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(target)) {\n try {\n // Mac Safari unreliably matches `:focus-visible` on the reference\n // if focus was outside the page initially - use the fallback\n // instead.\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isSafari)() && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMac)()) throw Error();\n if (!target.matches(':focus-visible')) return;\n } catch (e) {\n // Old browsers will throw an error when using `:focus-visible`.\n if (!keyboardModalityRef.current && !(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isTypeableElement)(target)) {\n return;\n }\n }\n }\n onOpenChange(true, event.nativeEvent, 'focus');\n },\n onBlur(event) {\n blockFocusRef.current = false;\n const relatedTarget = event.relatedTarget;\n\n // Hit the non-modal focus management portal guard. Focus will be\n // moved into the floating element immediately after.\n const movedToFocusGuard = (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(relatedTarget) && relatedTarget.hasAttribute(createAttribute('focus-guard')) && relatedTarget.getAttribute('data-type') === 'outside';\n\n // Wait for the window blur listener to fire.\n timeoutRef.current = window.setTimeout(() => {\n var _dataRef$current$floa;\n const activeEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)(domReference ? domReference.ownerDocument : document);\n\n // Focus left the page, keep it open.\n if (!relatedTarget && activeEl === domReference) return;\n\n // When focusing the reference element (e.g. regular click), then\n // clicking into the floating element, prevent it from hiding.\n // Note: it must be focusable, e.g. `tabindex=\"-1\"`.\n // We can not rely on relatedTarget to point to the correct element\n // as it will only point to the shadow host of the newly focused element\n // and not the element that actually has received focus if it is located\n // inside a shadow root.\n if ((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)((_dataRef$current$floa = dataRef.current.floatingContext) == null ? void 0 : _dataRef$current$floa.refs.floating.current, activeEl) || (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(domReference, activeEl) || movedToFocusGuard) {\n return;\n }\n onOpenChange(false, event.nativeEvent, 'focus');\n });\n }\n }\n };\n }, [enabled, visibleOnly, dataRef, domReference, onOpenChange]);\n}\n\nconst ACTIVE_KEY = 'active';\nconst SELECTED_KEY = 'selected';\nfunction mergeProps(userProps, propsList, elementKey) {\n const map = new Map();\n const isItem = elementKey === 'item';\n let domUserProps = userProps;\n if (isItem && userProps) {\n const {\n [ACTIVE_KEY]: _,\n [SELECTED_KEY]: __,\n ...validProps\n } = userProps;\n domUserProps = validProps;\n }\n return {\n ...(elementKey === 'floating' && {\n tabIndex: -1\n }),\n ...domUserProps,\n ...propsList.map(value => {\n const propsOrGetProps = value ? value[elementKey] : null;\n if (typeof propsOrGetProps === 'function') {\n return userProps ? propsOrGetProps(userProps) : null;\n }\n return propsOrGetProps;\n }).concat(userProps).reduce((acc, props) => {\n if (!props) {\n return acc;\n }\n Object.entries(props).forEach(_ref => {\n let [key, value] = _ref;\n if (isItem && [ACTIVE_KEY, SELECTED_KEY].includes(key)) {\n return;\n }\n if (key.indexOf('on') === 0) {\n if (!map.has(key)) {\n map.set(key, []);\n }\n if (typeof value === 'function') {\n var _map$get;\n (_map$get = map.get(key)) == null || _map$get.push(value);\n acc[key] = function () {\n var _map$get2;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_map$get2 = map.get(key)) == null ? void 0 : _map$get2.map(fn => fn(...args)).find(val => val !== undefined);\n };\n }\n } else {\n acc[key] = value;\n }\n });\n return acc;\n }, {})\n };\n}\n/**\n * Merges an array of interaction hooks' props into prop getters, allowing\n * event handler functions to be composed together without overwriting one\n * another.\n * @see https://floating-ui.com/docs/useInteractions\n */\nfunction useInteractions(propsList) {\n if (propsList === void 0) {\n propsList = [];\n }\n // The dependencies are a dynamic array, so we can't use the linter's\n // suggestion to add it to the deps array.\n const deps = propsList;\n const getReferenceProps = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(userProps => mergeProps(userProps, propsList, 'reference'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n deps);\n const getFloatingProps = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(userProps => mergeProps(userProps, propsList, 'floating'),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n deps);\n const getItemProps = react__WEBPACK_IMPORTED_MODULE_0__.useCallback(userProps => mergeProps(userProps, propsList, 'item'),\n // Granularly check for `item` changes, because the `getItemProps` getter\n // should be as referentially stable as possible since it may be passed as\n // a prop to many components. All `item` key values must therefore be\n // memoized.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n propsList.map(key => key == null ? void 0 : key.item));\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n getReferenceProps,\n getFloatingProps,\n getItemProps\n }), [getReferenceProps, getFloatingProps, getItemProps]);\n}\n\nlet isPreventScrollSupported = false;\nfunction doSwitch(orientation, vertical, horizontal) {\n switch (orientation) {\n case 'vertical':\n return vertical;\n case 'horizontal':\n return horizontal;\n default:\n return vertical || horizontal;\n }\n}\nfunction isMainOrientationKey(key, orientation) {\n const vertical = key === ARROW_UP || key === ARROW_DOWN;\n const horizontal = key === ARROW_LEFT || key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isMainOrientationToEndKey(key, orientation, rtl) {\n const vertical = key === ARROW_DOWN;\n const horizontal = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal) || key === 'Enter' || key === ' ' || key === '';\n}\nfunction isCrossOrientationOpenKey(key, orientation, rtl) {\n const vertical = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n const horizontal = key === ARROW_DOWN;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isCrossOrientationCloseKey(key, orientation, rtl) {\n const vertical = rtl ? key === ARROW_RIGHT : key === ARROW_LEFT;\n const horizontal = key === ARROW_UP;\n return doSwitch(orientation, vertical, horizontal);\n}\n/**\n * Adds arrow key-based navigation of a list of items, either using real DOM\n * focus or virtual focus.\n * @see https://floating-ui.com/docs/useListNavigation\n */\nfunction useListNavigation(context, props) {\n const {\n open,\n onOpenChange,\n elements: {\n domReference,\n floating\n }\n } = context;\n const {\n listRef,\n activeIndex,\n onNavigate: unstable_onNavigate = () => {},\n enabled = true,\n selectedIndex = null,\n allowEscape = false,\n loop = false,\n nested = false,\n rtl = false,\n virtual = false,\n focusItemOnOpen = 'auto',\n focusItemOnHover = true,\n openOnArrowKeyDown = true,\n disabledIndices = undefined,\n orientation = 'vertical',\n cols = 1,\n scrollItemIntoView = true,\n virtualItemRef,\n itemSizes,\n dense = false\n } = props;\n if (true) {\n if (allowEscape) {\n if (!loop) {\n warn('`useListNavigation` looping must be enabled to allow escaping.');\n }\n if (!virtual) {\n warn('`useListNavigation` must be virtual to allow escaping.');\n }\n }\n if (orientation === 'vertical' && cols > 1) {\n warn('In grid list navigation mode (`cols` > 1), the `orientation` should', 'be either \"horizontal\" or \"both\".');\n }\n }\n const parentId = useFloatingParentNodeId();\n const tree = useFloatingTree();\n const onNavigate = useEffectEvent(unstable_onNavigate);\n const focusItemOnOpenRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(focusItemOnOpen);\n const indexRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(selectedIndex != null ? selectedIndex : -1);\n const keyRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const isPointerModalityRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(true);\n const previousOnNavigateRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(onNavigate);\n const previousMountedRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(!!floating);\n const forceSyncFocus = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const forceScrollIntoViewRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const disabledIndicesRef = useLatestRef(disabledIndices);\n const latestOpenRef = useLatestRef(open);\n const scrollItemIntoViewRef = useLatestRef(scrollItemIntoView);\n const floatingRef = useLatestRef(floating);\n const selectedIndexRef = useLatestRef(selectedIndex);\n const [activeId, setActiveId] = react__WEBPACK_IMPORTED_MODULE_0__.useState();\n const [virtualId, setVirtualId] = react__WEBPACK_IMPORTED_MODULE_0__.useState();\n const focusItem = useEffectEvent(function (listRef, indexRef, forceScrollIntoView) {\n if (forceScrollIntoView === void 0) {\n forceScrollIntoView = false;\n }\n function runFocus(item) {\n if (virtual) {\n setActiveId(item.id);\n tree == null || tree.events.emit('virtualfocus', item);\n if (virtualItemRef) {\n virtualItemRef.current = item;\n }\n } else {\n enqueueFocus(item, {\n preventScroll: true,\n // Mac Safari does not move the virtual cursor unless the focus call\n // is sync. However, for the very first focus call, we need to wait\n // for the position to be ready in order to prevent unwanted\n // scrolling. This means the virtual cursor will not move to the first\n // item when first opening the floating element, but will on\n // subsequent calls. `preventScroll` is supported in modern Safari,\n // so we can use that instead.\n // iOS Safari must be async or the first item will not be focused.\n sync: (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isMac)() && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isSafari)() ? isPreventScrollSupported || forceSyncFocus.current : false\n });\n }\n }\n const initialItem = listRef.current[indexRef.current];\n if (initialItem) {\n runFocus(initialItem);\n }\n requestAnimationFrame(() => {\n const waitedItem = listRef.current[indexRef.current] || initialItem;\n if (!waitedItem) return;\n if (!initialItem) {\n runFocus(waitedItem);\n }\n const scrollIntoViewOptions = scrollItemIntoViewRef.current;\n const shouldScrollIntoView = scrollIntoViewOptions && item && (forceScrollIntoView || !isPointerModalityRef.current);\n if (shouldScrollIntoView) {\n // JSDOM doesn't support `.scrollIntoView()` but it's widely supported\n // by all browsers.\n waitedItem.scrollIntoView == null || waitedItem.scrollIntoView(typeof scrollIntoViewOptions === 'boolean' ? {\n block: 'nearest',\n inline: 'nearest'\n } : scrollIntoViewOptions);\n }\n });\n });\n index(() => {\n document.createElement('div').focus({\n get preventScroll() {\n isPreventScrollSupported = true;\n return false;\n }\n });\n }, []);\n\n // Sync `selectedIndex` to be the `activeIndex` upon opening the floating\n // element. Also, reset `activeIndex` upon closing the floating element.\n index(() => {\n if (!enabled) {\n return;\n }\n if (open && floating) {\n if (focusItemOnOpenRef.current && selectedIndex != null) {\n // Regardless of the pointer modality, we want to ensure the selected\n // item comes into view when the floating element is opened.\n forceScrollIntoViewRef.current = true;\n indexRef.current = selectedIndex;\n onNavigate(selectedIndex);\n }\n } else if (previousMountedRef.current) {\n // Since the user can specify `onNavigate` conditionally\n // (onNavigate: open ? setActiveIndex : setSelectedIndex),\n // we store and call the previous function.\n indexRef.current = -1;\n previousOnNavigateRef.current(null);\n }\n }, [enabled, open, floating, selectedIndex, onNavigate]);\n\n // Sync `activeIndex` to be the focused item while the floating element is\n // open.\n index(() => {\n if (!enabled) {\n return;\n }\n if (open && floating) {\n if (activeIndex == null) {\n forceSyncFocus.current = false;\n if (selectedIndexRef.current != null) {\n return;\n }\n\n // Reset while the floating element was open (e.g. the list changed).\n if (previousMountedRef.current) {\n indexRef.current = -1;\n focusItem(listRef, indexRef);\n }\n\n // Initial sync.\n if (!previousMountedRef.current && focusItemOnOpenRef.current && (keyRef.current != null || focusItemOnOpenRef.current === true && keyRef.current == null)) {\n let runs = 0;\n const waitForListPopulated = () => {\n if (listRef.current[0] == null) {\n // Avoid letting the browser paint if possible on the first try,\n // otherwise use rAF. Don't try more than twice, since something\n // is wrong otherwise.\n if (runs < 2) {\n const scheduler = runs ? requestAnimationFrame : queueMicrotask;\n scheduler(waitForListPopulated);\n }\n runs++;\n } else {\n indexRef.current = keyRef.current == null || isMainOrientationToEndKey(keyRef.current, orientation, rtl) || nested ? getMinIndex(listRef, disabledIndicesRef.current) : getMaxIndex(listRef, disabledIndicesRef.current);\n keyRef.current = null;\n onNavigate(indexRef.current);\n }\n };\n waitForListPopulated();\n }\n } else if (!isIndexOutOfBounds(listRef, activeIndex)) {\n indexRef.current = activeIndex;\n focusItem(listRef, indexRef, forceScrollIntoViewRef.current);\n forceScrollIntoViewRef.current = false;\n }\n }\n }, [enabled, open, floating, activeIndex, selectedIndexRef, nested, listRef, orientation, rtl, onNavigate, focusItem, disabledIndicesRef]);\n\n // Ensure the parent floating element has focus when a nested child closes\n // to allow arrow key navigation to work after the pointer leaves the child.\n index(() => {\n var _nodes$find;\n if (!enabled || floating || !tree || virtual || !previousMountedRef.current) {\n return;\n }\n const nodes = tree.nodesRef.current;\n const parent = (_nodes$find = nodes.find(node => node.id === parentId)) == null || (_nodes$find = _nodes$find.context) == null ? void 0 : _nodes$find.elements.floating;\n const activeEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getDocument)(floating));\n const treeContainsActiveEl = nodes.some(node => node.context && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(node.context.elements.floating, activeEl));\n if (parent && !treeContainsActiveEl && isPointerModalityRef.current) {\n parent.focus({\n preventScroll: true\n });\n }\n }, [enabled, floating, tree, parentId, virtual]);\n index(() => {\n if (!enabled || !tree || !virtual || parentId) return;\n function handleVirtualFocus(item) {\n setVirtualId(item.id);\n if (virtualItemRef) {\n virtualItemRef.current = item;\n }\n }\n tree.events.on('virtualfocus', handleVirtualFocus);\n return () => {\n tree.events.off('virtualfocus', handleVirtualFocus);\n };\n }, [enabled, tree, virtual, parentId, virtualItemRef]);\n index(() => {\n previousOnNavigateRef.current = onNavigate;\n previousMountedRef.current = !!floating;\n });\n index(() => {\n if (!open) {\n keyRef.current = null;\n }\n }, [open]);\n const hasActiveIndex = activeIndex != null;\n const item = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n function syncCurrentTarget(currentTarget) {\n if (!open) return;\n const index = listRef.current.indexOf(currentTarget);\n if (index !== -1) {\n onNavigate(index);\n }\n }\n const props = {\n onFocus(_ref) {\n let {\n currentTarget\n } = _ref;\n syncCurrentTarget(currentTarget);\n },\n onClick: _ref2 => {\n let {\n currentTarget\n } = _ref2;\n return currentTarget.focus({\n preventScroll: true\n });\n },\n // Safari\n ...(focusItemOnHover && {\n onMouseMove(_ref3) {\n let {\n currentTarget\n } = _ref3;\n syncCurrentTarget(currentTarget);\n },\n onPointerLeave(_ref4) {\n let {\n pointerType\n } = _ref4;\n if (!isPointerModalityRef.current || pointerType === 'touch') {\n return;\n }\n indexRef.current = -1;\n focusItem(listRef, indexRef);\n onNavigate(null);\n if (!virtual) {\n enqueueFocus(floatingRef.current, {\n preventScroll: true\n });\n }\n }\n })\n };\n return props;\n }, [open, floatingRef, focusItem, focusItemOnHover, listRef, onNavigate, virtual]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n const disabledIndices = disabledIndicesRef.current;\n function onKeyDown(event) {\n isPointerModalityRef.current = false;\n forceSyncFocus.current = true;\n\n // If the floating element is animating out, ignore navigation. Otherwise,\n // the `activeIndex` gets set to 0 despite not being open so the next time\n // the user ArrowDowns, the first item won't be focused.\n if (!latestOpenRef.current && event.currentTarget === floatingRef.current) {\n return;\n }\n if (nested && isCrossOrientationCloseKey(event.key, orientation, rtl)) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n onOpenChange(false, event.nativeEvent, 'list-navigation');\n if ((0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isHTMLElement)(domReference) && !virtual) {\n domReference.focus();\n }\n return;\n }\n const currentIndex = indexRef.current;\n const minIndex = getMinIndex(listRef, disabledIndices);\n const maxIndex = getMaxIndex(listRef, disabledIndices);\n if (event.key === 'Home') {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n indexRef.current = minIndex;\n onNavigate(indexRef.current);\n }\n if (event.key === 'End') {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n indexRef.current = maxIndex;\n onNavigate(indexRef.current);\n }\n\n // Grid navigation.\n if (cols > 1) {\n const sizes = itemSizes || Array.from({\n length: listRef.current.length\n }, () => ({\n width: 1,\n height: 1\n }));\n // To calculate movements on the grid, we use hypothetical cell indices\n // as if every item was 1x1, then convert back to real indices.\n const cellMap = buildCellMap(sizes, cols, dense);\n const minGridIndex = cellMap.findIndex(index => index != null && !isDisabled(listRef.current, index, disabledIndices));\n // last enabled index\n const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !isDisabled(listRef.current, index, disabledIndices) ? cellIndex : foundIndex, -1);\n indexRef.current = cellMap[getGridNavigatedIndex({\n current: cellMap.map(itemIndex => itemIndex != null ? listRef.current[itemIndex] : null)\n }, {\n event,\n orientation,\n loop,\n cols,\n // treat undefined (empty grid spaces) as disabled indices so we\n // don't end up in them\n disabledIndices: getCellIndices([...(disabledIndices || listRef.current.map((_, index) => isDisabled(listRef.current, index) ? index : undefined)), undefined], cellMap),\n minIndex: minGridIndex,\n maxIndex: maxGridIndex,\n prevIndex: getCellIndexOfCorner(indexRef.current > maxIndex ? minIndex : indexRef.current, sizes, cellMap, cols,\n // use a corner matching the edge closest to the direction\n // we're moving in so we don't end up in the same item. Prefer\n // top/left over bottom/right.\n event.key === ARROW_DOWN ? 'bl' : event.key === ARROW_RIGHT ? 'tr' : 'tl'),\n stopEvent: true\n })]; // navigated cell will never be nullish\n\n onNavigate(indexRef.current);\n if (orientation === 'both') {\n return;\n }\n }\n if (isMainOrientationKey(event.key, orientation)) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n\n // Reset the index if no item is focused.\n if (open && !virtual && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.activeElement)(event.currentTarget.ownerDocument) === event.currentTarget) {\n indexRef.current = isMainOrientationToEndKey(event.key, orientation, rtl) ? minIndex : maxIndex;\n onNavigate(indexRef.current);\n return;\n }\n if (isMainOrientationToEndKey(event.key, orientation, rtl)) {\n if (loop) {\n indexRef.current = currentIndex >= maxIndex ? allowEscape && currentIndex !== listRef.current.length ? -1 : minIndex : findNonDisabledIndex(listRef, {\n startingIndex: currentIndex,\n disabledIndices\n });\n } else {\n indexRef.current = Math.min(maxIndex, findNonDisabledIndex(listRef, {\n startingIndex: currentIndex,\n disabledIndices\n }));\n }\n } else {\n if (loop) {\n indexRef.current = currentIndex <= minIndex ? allowEscape && currentIndex !== -1 ? listRef.current.length : maxIndex : findNonDisabledIndex(listRef, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n });\n } else {\n indexRef.current = Math.max(minIndex, findNonDisabledIndex(listRef, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n }));\n }\n }\n if (isIndexOutOfBounds(listRef, indexRef.current)) {\n onNavigate(null);\n } else {\n onNavigate(indexRef.current);\n }\n }\n }\n function checkVirtualMouse(event) {\n if (focusItemOnOpen === 'auto' && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isVirtualClick)(event.nativeEvent)) {\n focusItemOnOpenRef.current = true;\n }\n }\n function checkVirtualPointer(event) {\n // `pointerdown` fires first, reset the state then perform the checks.\n focusItemOnOpenRef.current = focusItemOnOpen;\n if (focusItemOnOpen === 'auto' && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isVirtualPointerEvent)(event.nativeEvent)) {\n focusItemOnOpenRef.current = true;\n }\n }\n const ariaActiveDescendantProp = virtual && open && hasActiveIndex && {\n 'aria-activedescendant': virtualId || activeId\n };\n const activeItem = listRef.current.find(item => (item == null ? void 0 : item.id) === activeId);\n return {\n reference: {\n ...ariaActiveDescendantProp,\n onKeyDown(event) {\n isPointerModalityRef.current = false;\n const isArrowKey = event.key.indexOf('Arrow') === 0;\n const isCrossOpenKey = isCrossOrientationOpenKey(event.key, orientation, rtl);\n const isCrossCloseKey = isCrossOrientationCloseKey(event.key, orientation, rtl);\n const isMainKey = isMainOrientationKey(event.key, orientation);\n const isNavigationKey = (nested ? isCrossOpenKey : isMainKey) || event.key === 'Enter' || event.key.trim() === '';\n if (virtual && open) {\n const rootNode = tree == null ? void 0 : tree.nodesRef.current.find(node => node.parentId == null);\n const deepestNode = tree && rootNode ? getDeepestNode(tree.nodesRef.current, rootNode.id) : null;\n if (isArrowKey && deepestNode && virtualItemRef) {\n const eventObject = new KeyboardEvent('keydown', {\n key: event.key,\n bubbles: true\n });\n if (isCrossOpenKey || isCrossCloseKey) {\n var _deepestNode$context, _deepestNode$context2;\n const isCurrentTarget = ((_deepestNode$context = deepestNode.context) == null ? void 0 : _deepestNode$context.elements.domReference) === event.currentTarget;\n const dispatchItem = isCrossCloseKey && !isCurrentTarget ? (_deepestNode$context2 = deepestNode.context) == null ? void 0 : _deepestNode$context2.elements.domReference : isCrossOpenKey ? activeItem : null;\n if (dispatchItem) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n dispatchItem.dispatchEvent(eventObject);\n setVirtualId(undefined);\n }\n }\n if (isMainKey && deepestNode.context) {\n if (deepestNode.context.open && deepestNode.parentId && event.currentTarget !== deepestNode.context.elements.domReference) {\n var _deepestNode$context$;\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n (_deepestNode$context$ = deepestNode.context.elements.domReference) == null || _deepestNode$context$.dispatchEvent(eventObject);\n return;\n }\n }\n }\n return onKeyDown(event);\n }\n\n // If a floating element should not open on arrow key down, avoid\n // setting `activeIndex` while it's closed.\n if (!open && !openOnArrowKeyDown && isArrowKey) {\n return;\n }\n if (isNavigationKey) {\n keyRef.current = nested && isMainKey ? null : event.key;\n }\n if (nested) {\n if (isCrossOpenKey) {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (open) {\n indexRef.current = getMinIndex(listRef, disabledIndices);\n onNavigate(indexRef.current);\n } else {\n onOpenChange(true, event.nativeEvent, 'list-navigation');\n }\n }\n return;\n }\n if (isMainKey) {\n if (selectedIndex != null) {\n indexRef.current = selectedIndex;\n }\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n if (!open && openOnArrowKeyDown) {\n onOpenChange(true, event.nativeEvent, 'list-navigation');\n } else {\n onKeyDown(event);\n }\n if (open) {\n onNavigate(indexRef.current);\n }\n }\n },\n onFocus() {\n if (open && !virtual) {\n onNavigate(null);\n }\n },\n onPointerDown: checkVirtualPointer,\n onMouseDown: checkVirtualMouse,\n onClick: checkVirtualMouse\n },\n floating: {\n 'aria-orientation': orientation === 'both' ? undefined : orientation,\n ...(!(0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.isTypeableCombobox)(domReference) && ariaActiveDescendantProp),\n onKeyDown,\n onPointerMove() {\n isPointerModalityRef.current = true;\n }\n },\n item\n };\n }, [domReference, floatingRef, activeId, virtualId, disabledIndicesRef, latestOpenRef, listRef, enabled, orientation, rtl, virtual, open, hasActiveIndex, nested, selectedIndex, openOnArrowKeyDown, allowEscape, cols, loop, focusItemOnOpen, onNavigate, onOpenChange, item, tree, virtualItemRef, itemSizes, dense]);\n}\n\nconst componentRoleToAriaRoleMap = /*#__PURE__*/new Map([['select', 'listbox'], ['combobox', 'listbox'], ['label', false]]);\n\n/**\n * Adds base screen reader props to the reference and floating elements for a\n * given floating element `role`.\n * @see https://floating-ui.com/docs/useRole\n */\nfunction useRole(context, props) {\n var _componentRoleToAriaR;\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n floatingId\n } = context;\n const {\n enabled = true,\n role = 'dialog'\n } = props;\n const ariaRole = (_componentRoleToAriaR = componentRoleToAriaRoleMap.get(role)) != null ? _componentRoleToAriaR : role;\n const referenceId = useId();\n const parentId = useFloatingParentNodeId();\n const isNested = parentId != null;\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) return {};\n const floatingProps = {\n id: floatingId,\n ...(ariaRole && {\n role: ariaRole\n })\n };\n if (ariaRole === 'tooltip' || role === 'label') {\n return {\n reference: {\n [\"aria-\" + (role === 'label' ? 'labelledby' : 'describedby')]: open ? floatingId : undefined\n },\n floating: floatingProps\n };\n }\n return {\n reference: {\n 'aria-expanded': open ? 'true' : 'false',\n 'aria-haspopup': ariaRole === 'alertdialog' ? 'dialog' : ariaRole,\n 'aria-controls': open ? floatingId : undefined,\n ...(ariaRole === 'listbox' && {\n role: 'combobox'\n }),\n ...(ariaRole === 'menu' && {\n id: referenceId\n }),\n ...(ariaRole === 'menu' && isNested && {\n role: 'menuitem'\n }),\n ...(role === 'select' && {\n 'aria-autocomplete': 'none'\n }),\n ...(role === 'combobox' && {\n 'aria-autocomplete': 'list'\n })\n },\n floating: {\n ...floatingProps,\n ...(ariaRole === 'menu' && {\n 'aria-labelledby': referenceId\n })\n },\n item(_ref) {\n let {\n active,\n selected\n } = _ref;\n const commonProps = {\n role: 'option',\n ...(active && {\n id: floatingId + \"-option\"\n })\n };\n\n // For `menu`, we are unable to tell if the item is a `menuitemradio`\n // or `menuitemcheckbox`. For backwards-compatibility reasons, also\n // avoid defaulting to `menuitem` as it may overwrite custom role props.\n switch (role) {\n case 'select':\n return {\n ...commonProps,\n 'aria-selected': active && selected\n };\n case 'combobox':\n {\n return {\n ...commonProps,\n ...(active && {\n 'aria-selected': true\n })\n };\n }\n }\n return {};\n }\n };\n }, [enabled, role, ariaRole, open, floatingId, referenceId, isNested]);\n}\n\n// Converts a JS style key like `backgroundColor` to a CSS transition-property\n// like `background-color`.\nconst camelCaseToKebabCase = str => str.replace(/[A-Z]+(?![a-z])|[A-Z]/g, ($, ofs) => (ofs ? '-' : '') + $.toLowerCase());\nfunction execWithArgsOrReturn(valueOrFn, args) {\n return typeof valueOrFn === 'function' ? valueOrFn(args) : valueOrFn;\n}\nfunction useDelayUnmount(open, durationMs) {\n const [isMounted, setIsMounted] = react__WEBPACK_IMPORTED_MODULE_0__.useState(open);\n if (open && !isMounted) {\n setIsMounted(true);\n }\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!open && isMounted) {\n const timeout = setTimeout(() => setIsMounted(false), durationMs);\n return () => clearTimeout(timeout);\n }\n }, [open, isMounted, durationMs]);\n return isMounted;\n}\n/**\n * Provides a status string to apply CSS transitions to a floating element,\n * correctly handling placement-aware transitions.\n * @see https://floating-ui.com/docs/useTransition#usetransitionstatus\n */\nfunction useTransitionStatus(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n open,\n elements: {\n floating\n }\n } = context;\n const {\n duration = 250\n } = props;\n const isNumberDuration = typeof duration === 'number';\n const closeDuration = (isNumberDuration ? duration : duration.close) || 0;\n const [status, setStatus] = react__WEBPACK_IMPORTED_MODULE_0__.useState('unmounted');\n const isMounted = useDelayUnmount(open, closeDuration);\n if (!isMounted && status === 'close') {\n setStatus('unmounted');\n }\n index(() => {\n if (!floating) return;\n if (open) {\n setStatus('initial');\n const frame = requestAnimationFrame(() => {\n setStatus('open');\n });\n return () => {\n cancelAnimationFrame(frame);\n };\n }\n setStatus('close');\n }, [open, floating]);\n return {\n isMounted,\n status\n };\n}\n/**\n * Provides styles to apply CSS transitions to a floating element, correctly\n * handling placement-aware transitions. Wrapper around `useTransitionStatus`.\n * @see https://floating-ui.com/docs/useTransition#usetransitionstyles\n */\nfunction useTransitionStyles(context, props) {\n if (props === void 0) {\n props = {};\n }\n const {\n initial: unstable_initial = {\n opacity: 0\n },\n open: unstable_open,\n close: unstable_close,\n common: unstable_common,\n duration = 250\n } = props;\n const placement = context.placement;\n const side = placement.split('-')[0];\n const fnArgs = react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => ({\n side,\n placement\n }), [side, placement]);\n const isNumberDuration = typeof duration === 'number';\n const openDuration = (isNumberDuration ? duration : duration.open) || 0;\n const closeDuration = (isNumberDuration ? duration : duration.close) || 0;\n const [styles, setStyles] = react__WEBPACK_IMPORTED_MODULE_0__.useState(() => ({\n ...execWithArgsOrReturn(unstable_common, fnArgs),\n ...execWithArgsOrReturn(unstable_initial, fnArgs)\n }));\n const {\n isMounted,\n status\n } = useTransitionStatus(context, {\n duration\n });\n const initialRef = useLatestRef(unstable_initial);\n const openRef = useLatestRef(unstable_open);\n const closeRef = useLatestRef(unstable_close);\n const commonRef = useLatestRef(unstable_common);\n index(() => {\n const initialStyles = execWithArgsOrReturn(initialRef.current, fnArgs);\n const closeStyles = execWithArgsOrReturn(closeRef.current, fnArgs);\n const commonStyles = execWithArgsOrReturn(commonRef.current, fnArgs);\n const openStyles = execWithArgsOrReturn(openRef.current, fnArgs) || Object.keys(initialStyles).reduce((acc, key) => {\n acc[key] = '';\n return acc;\n }, {});\n if (status === 'initial') {\n setStyles(styles => ({\n transitionProperty: styles.transitionProperty,\n ...commonStyles,\n ...initialStyles\n }));\n }\n if (status === 'open') {\n setStyles({\n transitionProperty: Object.keys(openStyles).map(camelCaseToKebabCase).join(','),\n transitionDuration: openDuration + \"ms\",\n ...commonStyles,\n ...openStyles\n });\n }\n if (status === 'close') {\n const styles = closeStyles || initialStyles;\n setStyles({\n transitionProperty: Object.keys(styles).map(camelCaseToKebabCase).join(','),\n transitionDuration: closeDuration + \"ms\",\n ...commonStyles,\n ...styles\n });\n }\n }, [closeDuration, closeRef, initialRef, openRef, commonRef, openDuration, status, fnArgs]);\n return {\n isMounted,\n styles\n };\n}\n\n/**\n * Provides a matching callback that can be used to focus an item as the user\n * types, often used in tandem with `useListNavigation()`.\n * @see https://floating-ui.com/docs/useTypeahead\n */\nfunction useTypeahead(context, props) {\n var _ref;\n const {\n open,\n dataRef\n } = context;\n const {\n listRef,\n activeIndex,\n onMatch: unstable_onMatch,\n onTypingChange: unstable_onTypingChange,\n enabled = true,\n findMatch = null,\n resetMs = 750,\n ignoreKeys = [],\n selectedIndex = null\n } = props;\n const timeoutIdRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef();\n const stringRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef('');\n const prevIndexRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef((_ref = selectedIndex != null ? selectedIndex : activeIndex) != null ? _ref : -1);\n const matchIndexRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const onMatch = useEffectEvent(unstable_onMatch);\n const onTypingChange = useEffectEvent(unstable_onTypingChange);\n const findMatchRef = useLatestRef(findMatch);\n const ignoreKeysRef = useLatestRef(ignoreKeys);\n index(() => {\n if (open) {\n clearTimeout(timeoutIdRef.current);\n matchIndexRef.current = null;\n stringRef.current = '';\n }\n }, [open]);\n index(() => {\n // Sync arrow key navigation but not typeahead navigation.\n if (open && stringRef.current === '') {\n var _ref2;\n prevIndexRef.current = (_ref2 = selectedIndex != null ? selectedIndex : activeIndex) != null ? _ref2 : -1;\n }\n }, [open, selectedIndex, activeIndex]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n function setTypingChange(value) {\n if (value) {\n if (!dataRef.current.typing) {\n dataRef.current.typing = value;\n onTypingChange(value);\n }\n } else {\n if (dataRef.current.typing) {\n dataRef.current.typing = value;\n onTypingChange(value);\n }\n }\n }\n function getMatchingIndex(list, orderedList, string) {\n const str = findMatchRef.current ? findMatchRef.current(orderedList, string) : orderedList.find(text => (text == null ? void 0 : text.toLocaleLowerCase().indexOf(string.toLocaleLowerCase())) === 0);\n return str ? list.indexOf(str) : -1;\n }\n function onKeyDown(event) {\n const listContent = listRef.current;\n if (stringRef.current.length > 0 && stringRef.current[0] !== ' ') {\n if (getMatchingIndex(listContent, listContent, stringRef.current) === -1) {\n setTypingChange(false);\n } else if (event.key === ' ') {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n }\n }\n if (listContent == null || ignoreKeysRef.current.includes(event.key) ||\n // Character key.\n event.key.length !== 1 ||\n // Modifier key.\n event.ctrlKey || event.metaKey || event.altKey) {\n return;\n }\n if (open && event.key !== ' ') {\n (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.stopEvent)(event);\n setTypingChange(true);\n }\n\n // Bail out if the list contains a word like \"llama\" or \"aaron\". TODO:\n // allow it in this case, too.\n const allowRapidSuccessionOfFirstLetter = listContent.every(text => {\n var _text$, _text$2;\n return text ? ((_text$ = text[0]) == null ? void 0 : _text$.toLocaleLowerCase()) !== ((_text$2 = text[1]) == null ? void 0 : _text$2.toLocaleLowerCase()) : true;\n });\n\n // Allows the user to cycle through items that start with the same letter\n // in rapid succession.\n if (allowRapidSuccessionOfFirstLetter && stringRef.current === event.key) {\n stringRef.current = '';\n prevIndexRef.current = matchIndexRef.current;\n }\n stringRef.current += event.key;\n clearTimeout(timeoutIdRef.current);\n timeoutIdRef.current = setTimeout(() => {\n stringRef.current = '';\n prevIndexRef.current = matchIndexRef.current;\n setTypingChange(false);\n }, resetMs);\n const prevIndex = prevIndexRef.current;\n const index = getMatchingIndex(listContent, [...listContent.slice((prevIndex || 0) + 1), ...listContent.slice(0, (prevIndex || 0) + 1)], stringRef.current);\n if (index !== -1) {\n onMatch(index);\n matchIndexRef.current = index;\n } else if (event.key !== ' ') {\n stringRef.current = '';\n setTypingChange(false);\n }\n }\n return {\n reference: {\n onKeyDown\n },\n floating: {\n onKeyDown,\n onKeyUp(event) {\n if (event.key === ' ') {\n setTypingChange(false);\n }\n }\n }\n };\n }, [enabled, open, dataRef, listRef, resetMs, ignoreKeysRef, findMatchRef, onMatch, onTypingChange]);\n}\n\nfunction getArgsWithCustomFloatingHeight(state, height) {\n return {\n ...state,\n rects: {\n ...state.rects,\n floating: {\n ...state.rects.floating,\n height\n }\n }\n };\n}\n/**\n * Positions the floating element such that an inner element inside\n * of it is anchored to the reference element.\n * @see https://floating-ui.com/docs/inner\n */\nconst inner = props => ({\n name: 'inner',\n options: props,\n async fn(state) {\n const {\n listRef,\n overflowRef,\n onFallbackChange,\n offset: innerOffset = 0,\n index = 0,\n minItemsVisible = 4,\n referenceOverflowThreshold = 0,\n scrollRef,\n ...detectOverflowOptions\n } = props;\n const {\n rects,\n elements: {\n floating\n }\n } = state;\n const item = listRef.current[index];\n if (true) {\n if (!state.placement.startsWith('bottom')) {\n warn('`placement` side must be \"bottom\" when using the `inner`', 'middleware.');\n }\n }\n if (!item) {\n return {};\n }\n const nextArgs = {\n ...state,\n ...(await (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_1__.offset)(-item.offsetTop - floating.clientTop - rects.reference.height / 2 - item.offsetHeight / 2 - innerOffset).fn(state))\n };\n const el = (scrollRef == null ? void 0 : scrollRef.current) || floating;\n const overflow = await (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.detectOverflow)(getArgsWithCustomFloatingHeight(nextArgs, el.scrollHeight), detectOverflowOptions);\n const refOverflow = await (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.detectOverflow)(nextArgs, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const diffY = Math.max(0, overflow.top);\n const nextY = nextArgs.y + diffY;\n const maxHeight = Math.max(0, el.scrollHeight - diffY - Math.max(0, overflow.bottom));\n el.style.maxHeight = maxHeight + \"px\";\n el.scrollTop = diffY;\n\n // There is not enough space, fallback to standard anchored positioning\n if (onFallbackChange) {\n if (el.offsetHeight < item.offsetHeight * Math.min(minItemsVisible, listRef.current.length - 1) - 1 || refOverflow.top >= -referenceOverflowThreshold || refOverflow.bottom >= -referenceOverflowThreshold) {\n (0,react_dom__WEBPACK_IMPORTED_MODULE_4__.flushSync)(() => onFallbackChange(true));\n } else {\n (0,react_dom__WEBPACK_IMPORTED_MODULE_4__.flushSync)(() => onFallbackChange(false));\n }\n }\n if (overflowRef) {\n overflowRef.current = await (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_2__.detectOverflow)(getArgsWithCustomFloatingHeight({\n ...nextArgs,\n y: nextY\n }, el.offsetHeight), detectOverflowOptions);\n }\n return {\n y: nextY\n };\n }\n});\n/**\n * Changes the `inner` middleware's `offset` upon a `wheel` event to\n * expand the floating element's height, revealing more list items.\n * @see https://floating-ui.com/docs/inner\n */\nfunction useInnerOffset(context, props) {\n const {\n open,\n elements\n } = context;\n const {\n enabled = true,\n overflowRef,\n scrollRef,\n onChange: unstable_onChange\n } = props;\n const onChange = useEffectEvent(unstable_onChange);\n const controlledScrollingRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(false);\n const prevScrollTopRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n const initialOverflowRef = react__WEBPACK_IMPORTED_MODULE_0__.useRef(null);\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n if (!enabled) {\n return;\n }\n function onWheel(e) {\n if (e.ctrlKey || !el || overflowRef.current == null) {\n return;\n }\n const dY = e.deltaY;\n const isAtTop = overflowRef.current.top >= -0.5;\n const isAtBottom = overflowRef.current.bottom >= -0.5;\n const remainingScroll = el.scrollHeight - el.clientHeight;\n const sign = dY < 0 ? -1 : 1;\n const method = dY < 0 ? 'max' : 'min';\n if (el.scrollHeight <= el.clientHeight) {\n return;\n }\n if (!isAtTop && dY > 0 || !isAtBottom && dY < 0) {\n e.preventDefault();\n (0,react_dom__WEBPACK_IMPORTED_MODULE_4__.flushSync)(() => {\n onChange(d => d + Math[method](dY, remainingScroll * sign));\n });\n } else if (/firefox/i.test((0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getUserAgent)())) {\n // Needed to propagate scrolling during momentum scrolling phase once\n // it gets limited by the boundary. UX improvement, not critical.\n el.scrollTop += dY;\n }\n }\n const el = (scrollRef == null ? void 0 : scrollRef.current) || elements.floating;\n if (open && el) {\n el.addEventListener('wheel', onWheel);\n\n // Wait for the position to be ready.\n requestAnimationFrame(() => {\n prevScrollTopRef.current = el.scrollTop;\n if (overflowRef.current != null) {\n initialOverflowRef.current = {\n ...overflowRef.current\n };\n }\n });\n return () => {\n prevScrollTopRef.current = null;\n initialOverflowRef.current = null;\n el.removeEventListener('wheel', onWheel);\n };\n }\n }, [enabled, open, elements.floating, overflowRef, scrollRef, onChange]);\n return react__WEBPACK_IMPORTED_MODULE_0__.useMemo(() => {\n if (!enabled) {\n return {};\n }\n return {\n floating: {\n onKeyDown() {\n controlledScrollingRef.current = true;\n },\n onWheel() {\n controlledScrollingRef.current = false;\n },\n onPointerMove() {\n controlledScrollingRef.current = false;\n },\n onScroll() {\n const el = (scrollRef == null ? void 0 : scrollRef.current) || elements.floating;\n if (!overflowRef.current || !el || !controlledScrollingRef.current) {\n return;\n }\n if (prevScrollTopRef.current !== null) {\n const scrollDiff = el.scrollTop - prevScrollTopRef.current;\n if (overflowRef.current.bottom < -0.5 && scrollDiff < -1 || overflowRef.current.top < -0.5 && scrollDiff > 1) {\n (0,react_dom__WEBPACK_IMPORTED_MODULE_4__.flushSync)(() => onChange(d => d + scrollDiff));\n }\n }\n\n // [Firefox] Wait for the height change to have been applied.\n requestAnimationFrame(() => {\n prevScrollTopRef.current = el.scrollTop;\n });\n }\n }\n };\n }, [enabled, overflowRef, elements.floating, scrollRef, onChange]);\n}\n\nfunction isPointInPolygon(point, polygon) {\n const [x, y] = point;\n let isInside = false;\n const length = polygon.length;\n for (let i = 0, j = length - 1; i < length; j = i++) {\n const [xi, yi] = polygon[i] || [0, 0];\n const [xj, yj] = polygon[j] || [0, 0];\n const intersect = yi >= y !== yj >= y && x <= (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) {\n isInside = !isInside;\n }\n }\n return isInside;\n}\nfunction isInside(point, rect) {\n return point[0] >= rect.x && point[0] <= rect.x + rect.width && point[1] >= rect.y && point[1] <= rect.y + rect.height;\n}\n/**\n * Generates a safe polygon area that the user can traverse without closing the\n * floating element once leaving the reference element.\n * @see https://floating-ui.com/docs/useHover#safepolygon\n */\nfunction safePolygon(options) {\n if (options === void 0) {\n options = {};\n }\n const {\n buffer = 0.5,\n blockPointerEvents = false,\n requireIntent = true\n } = options;\n let timeoutId;\n let hasLanded = false;\n let lastX = null;\n let lastY = null;\n let lastCursorTime = performance.now();\n function getCursorSpeed(x, y) {\n const currentTime = performance.now();\n const elapsedTime = currentTime - lastCursorTime;\n if (lastX === null || lastY === null || elapsedTime === 0) {\n lastX = x;\n lastY = y;\n lastCursorTime = currentTime;\n return null;\n }\n const deltaX = x - lastX;\n const deltaY = y - lastY;\n const distance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);\n const speed = distance / elapsedTime; // px / ms\n\n lastX = x;\n lastY = y;\n lastCursorTime = currentTime;\n return speed;\n }\n const fn = _ref => {\n let {\n x,\n y,\n placement,\n elements,\n onClose,\n nodeId,\n tree\n } = _ref;\n return function onMouseMove(event) {\n function close() {\n clearTimeout(timeoutId);\n onClose();\n }\n clearTimeout(timeoutId);\n if (!elements.domReference || !elements.floating || placement == null || x == null || y == null) {\n return;\n }\n const {\n clientX,\n clientY\n } = event;\n const clientPoint = [clientX, clientY];\n const target = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.getTarget)(event);\n const isLeave = event.type === 'mouseleave';\n const isOverFloatingEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(elements.floating, target);\n const isOverReferenceEl = (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(elements.domReference, target);\n const refRect = elements.domReference.getBoundingClientRect();\n const rect = elements.floating.getBoundingClientRect();\n const side = placement.split('-')[0];\n const cursorLeaveFromRight = x > rect.right - rect.width / 2;\n const cursorLeaveFromBottom = y > rect.bottom - rect.height / 2;\n const isOverReferenceRect = isInside(clientPoint, refRect);\n const isFloatingWider = rect.width > refRect.width;\n const isFloatingTaller = rect.height > refRect.height;\n const left = (isFloatingWider ? refRect : rect).left;\n const right = (isFloatingWider ? refRect : rect).right;\n const top = (isFloatingTaller ? refRect : rect).top;\n const bottom = (isFloatingTaller ? refRect : rect).bottom;\n if (isOverFloatingEl) {\n hasLanded = true;\n if (!isLeave) {\n return;\n }\n }\n if (isOverReferenceEl) {\n hasLanded = false;\n }\n if (isOverReferenceEl && !isLeave) {\n hasLanded = true;\n return;\n }\n\n // Prevent overlapping floating element from being stuck in an open-close\n // loop: https://github.com/floating-ui/floating-ui/issues/1910\n if (isLeave && (0,_floating_ui_react_dom__WEBPACK_IMPORTED_MODULE_3__.isElement)(event.relatedTarget) && (0,_floating_ui_react_utils__WEBPACK_IMPORTED_MODULE_5__.contains)(elements.floating, event.relatedTarget)) {\n return;\n }\n\n // If any nested child is open, abort.\n if (tree && getChildren(tree.nodesRef.current, nodeId).some(_ref2 => {\n let {\n context\n } = _ref2;\n return context == null ? void 0 : context.open;\n })) {\n return;\n }\n\n // If the pointer is leaving from the opposite side, the \"buffer\" logic\n // creates a point where the floating element remains open, but should be\n // ignored.\n // A constant of 1 handles floating point rounding errors.\n if (side === 'top' && y >= refRect.bottom - 1 || side === 'bottom' && y <= refRect.top + 1 || side === 'left' && x >= refRect.right - 1 || side === 'right' && x <= refRect.left + 1) {\n return close();\n }\n\n // Ignore when the cursor is within the rectangular trough between the\n // two elements. Since the triangle is created from the cursor point,\n // which can start beyond the ref element's edge, traversing back and\n // forth from the ref to the floating element can cause it to close. This\n // ensures it always remains open in that case.\n let rectPoly = [];\n switch (side) {\n case 'top':\n rectPoly = [[left, refRect.top + 1], [left, rect.bottom - 1], [right, rect.bottom - 1], [right, refRect.top + 1]];\n break;\n case 'bottom':\n rectPoly = [[left, rect.top + 1], [left, refRect.bottom - 1], [right, refRect.bottom - 1], [right, rect.top + 1]];\n break;\n case 'left':\n rectPoly = [[rect.right - 1, bottom], [rect.right - 1, top], [refRect.left + 1, top], [refRect.left + 1, bottom]];\n break;\n case 'right':\n rectPoly = [[refRect.right - 1, bottom], [refRect.right - 1, top], [rect.left + 1, top], [rect.left + 1, bottom]];\n break;\n }\n function getPolygon(_ref3) {\n let [x, y] = _ref3;\n switch (side) {\n case 'top':\n {\n const cursorPointOne = [isFloatingWider ? x + buffer / 2 : cursorLeaveFromRight ? x + buffer * 4 : x - buffer * 4, y + buffer + 1];\n const cursorPointTwo = [isFloatingWider ? x - buffer / 2 : cursorLeaveFromRight ? x + buffer * 4 : x - buffer * 4, y + buffer + 1];\n const commonPoints = [[rect.left, cursorLeaveFromRight ? rect.bottom - buffer : isFloatingWider ? rect.bottom - buffer : rect.top], [rect.right, cursorLeaveFromRight ? isFloatingWider ? rect.bottom - buffer : rect.top : rect.bottom - buffer]];\n return [cursorPointOne, cursorPointTwo, ...commonPoints];\n }\n case 'bottom':\n {\n const cursorPointOne = [isFloatingWider ? x + buffer / 2 : cursorLeaveFromRight ? x + buffer * 4 : x - buffer * 4, y - buffer];\n const cursorPointTwo = [isFloatingWider ? x - buffer / 2 : cursorLeaveFromRight ? x + buffer * 4 : x - buffer * 4, y - buffer];\n const commonPoints = [[rect.left, cursorLeaveFromRight ? rect.top + buffer : isFloatingWider ? rect.top + buffer : rect.bottom], [rect.right, cursorLeaveFromRight ? isFloatingWider ? rect.top + buffer : rect.bottom : rect.top + buffer]];\n return [cursorPointOne, cursorPointTwo, ...commonPoints];\n }\n case 'left':\n {\n const cursorPointOne = [x + buffer + 1, isFloatingTaller ? y + buffer / 2 : cursorLeaveFromBottom ? y + buffer * 4 : y - buffer * 4];\n const cursorPointTwo = [x + buffer + 1, isFloatingTaller ? y - buffer / 2 : cursorLeaveFromBottom ? y + buffer * 4 : y - buffer * 4];\n const commonPoints = [[cursorLeaveFromBottom ? rect.right - buffer : isFloatingTaller ? rect.right - buffer : rect.left, rect.top], [cursorLeaveFromBottom ? isFloatingTaller ? rect.right - buffer : rect.left : rect.right - buffer, rect.bottom]];\n return [...commonPoints, cursorPointOne, cursorPointTwo];\n }\n case 'right':\n {\n const cursorPointOne = [x - buffer, isFloatingTaller ? y + buffer / 2 : cursorLeaveFromBottom ? y + buffer * 4 : y - buffer * 4];\n const cursorPointTwo = [x - buffer, isFloatingTaller ? y - buffer / 2 : cursorLeaveFromBottom ? y + buffer * 4 : y - buffer * 4];\n const commonPoints = [[cursorLeaveFromBottom ? rect.left + buffer : isFloatingTaller ? rect.left + buffer : rect.right, rect.top], [cursorLeaveFromBottom ? isFloatingTaller ? rect.left + buffer : rect.right : rect.left + buffer, rect.bottom]];\n return [cursorPointOne, cursorPointTwo, ...commonPoints];\n }\n }\n }\n if (isPointInPolygon([clientX, clientY], rectPoly)) {\n return;\n }\n if (hasLanded && !isOverReferenceRect) {\n return close();\n }\n if (!isLeave && requireIntent) {\n const cursorSpeed = getCursorSpeed(event.clientX, event.clientY);\n const cursorSpeedThreshold = 0.1;\n if (cursorSpeed !== null && cursorSpeed < cursorSpeedThreshold) {\n return close();\n }\n }\n if (!isPointInPolygon([clientX, clientY], getPolygon([x, y]))) {\n close();\n } else if (!hasLanded && requireIntent) {\n timeoutId = window.setTimeout(close, 40);\n }\n };\n };\n fn.__options = {\n blockPointerEvents\n };\n return fn;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvcmVhY3QvZGlzdC9mbG9hdGluZy11aS5yZWFjdC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUErQjtBQUM0QjtBQUMrTztBQUMvUDtBQUNtRjtBQUNrRTtBQUM5QztBQUNsRztBQUNJOztBQUVwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUywwQ0FBYTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBLEtBQUsseUxBQUs7QUFDVjs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLHlDQUFZO0FBQzFCLFFBQVEsSUFBcUM7QUFDN0M7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0EsR0FBRztBQUNILFNBQVMsOENBQWlCO0FBQzFCLHdFQUF3RSxhQUFhO0FBQ3JGO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLHdCQUF3QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0EsWUFBWSxtRUFBUztBQUNyQjtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFD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QTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRO0FBQ1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUyaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BmbG9hdGluZy11aS9yZWFjdC9kaXN0L2Zsb2F0aW5nLXVpLnJlYWN0Lm1qcz84Y2Q0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzdG9wRXZlbnQsIGdldERvY3VtZW50LCBpc01vdXNlTGlrZVBvaW50ZXJUeXBlLCBjb250YWlucywgYWN0aXZlRWxlbWVudCwgaXNTYWZhcmksIGlzVHlwZWFibGVDb21ib2JveCwgaXNWaXJ0dWFsQ2xpY2ssIGlzVmlydHVhbFBvaW50ZXJFdmVudCwgZ2V0VGFyZ2V0LCBnZXRQbGF0Zm9ybSwgaXNUeXBlYWJsZUVsZW1lbnQsIGlzUmVhY3RFdmVudCwgaXNSb290RWxlbWVudCwgaXNFdmVudFRhcmdldFdpdGhpbiwgaXNNYWMsIGdldFVzZXJBZ2VudCB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdC91dGlscyc7XG5pbXBvcnQgeyBmbG9vciB9IGZyb20gJ0BmbG9hdGluZy11aS91dGlscyc7XG5pbXBvcnQgeyBwbGF0Zm9ybSwgZ2V0T3ZlcmZsb3dBbmNlc3RvcnMsIHVzZUZsb2F0aW5nIGFzIHVzZUZsb2F0aW5nJDEsIG9mZnNldCwgZGV0ZWN0T3ZlcmZsb3cgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QtZG9tJztcbmV4cG9ydCB7IGFycm93LCBhdXRvUGxhY2VtZW50LCBhdXRvVXBkYXRlLCBjb21wdXRlUG9zaXRpb24sIGRldGVjdE92ZXJmbG93LCBmbGlwLCBnZXRPdmVyZmxvd0FuY2VzdG9ycywgaGlkZSwgaW5saW5lLCBsaW1pdFNoaWZ0LCBvZmZzZXQsIHBsYXRmb3JtLCBzaGlmdCwgc2l6ZSB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdC1kb20nO1xuaW1wb3J0IHsgaXNFbGVtZW50LCBnZXROb2RlTmFtZSwgaXNIVE1MRWxlbWVudCwgZ2V0V2luZG93LCBpc0xhc3RUcmF2ZXJzYWJsZU5vZGUsIGdldFBhcmVudE5vZGUsIGdldENvbXB1dGVkU3R5bGUgfSBmcm9tICdAZmxvYXRpbmctdWkvdXRpbHMvZG9tJztcbmltcG9ydCB7IHRhYmJhYmxlLCBpc1RhYmJhYmxlIH0gZnJvbSAndGFiYmFibGUnO1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsLCBmbHVzaFN5bmMgfSBmcm9tICdyZWFjdC1kb20nO1xuXG4vKipcbiAqIE1lcmdlcyBhbiBhcnJheSBvZiByZWZzIGludG8gYSBzaW5nbGUgbWVtb2l6ZWQgY2FsbGJhY2sgcmVmIG9yIGBudWxsYC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9yZWFjdC11dGlscyN1c2VtZXJnZXJlZnNcbiAqL1xuZnVuY3Rpb24gdXNlTWVyZ2VSZWZzKHJlZnMpIHtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChyZWZzLmV2ZXJ5KHJlZiA9PiByZWYgPT0gbnVsbCkpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPT4ge1xuICAgICAgcmVmcy5mb3JFYWNoKHJlZiA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgcmVmID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgcmVmKHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmIChyZWYgIT0gbnVsbCkge1xuICAgICAgICAgIHJlZi5jdXJyZW50ID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICB9LCByZWZzKTtcbn1cblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL211aS9tYXRlcmlhbC11aS9pc3N1ZXMvNDExOTAjaXNzdWVjb21tZW50LTIwNDA4NzMzNzlcbmNvbnN0IFNhZmVSZWFjdCA9IHtcbiAgLi4uUmVhY3Rcbn07XG5cbmNvbnN0IHVzZUluc2VydGlvbkVmZmVjdCA9IFNhZmVSZWFjdC51c2VJbnNlcnRpb25FZmZlY3Q7XG5jb25zdCB1c2VTYWZlSW5zZXJ0aW9uRWZmZWN0ID0gdXNlSW5zZXJ0aW9uRWZmZWN0IHx8IChmbiA9PiBmbigpKTtcbmZ1bmN0aW9uIHVzZUVmZmVjdEV2ZW50KGNhbGxiYWNrKSB7XG4gIGNvbnN0IHJlZiA9IFJlYWN0LnVzZVJlZigoKSA9PiB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgY2FsbCBhbiBldmVudCBoYW5kbGVyIHdoaWxlIHJlbmRlcmluZy4nKTtcbiAgICB9XG4gIH0pO1xuICB1c2VTYWZlSW5zZXJ0aW9uRWZmZWN0KCgpID0+IHtcbiAgICByZWYuY3VycmVudCA9IGNhbGxiYWNrO1xuICB9KTtcbiAgcmV0dXJuIFJlYWN0LnVzZUNhbGxiYWNrKGZ1bmN0aW9uICgpIHtcbiAgICBmb3IgKHZhciBfbGVuID0gYXJndW1lbnRzLmxlbmd0aCwgYXJncyA9IG5ldyBBcnJheShfbGVuKSwgX2tleSA9IDA7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICAgIGFyZ3NbX2tleV0gPSBhcmd1bWVudHNbX2tleV07XG4gICAgfVxuICAgIHJldHVybiByZWYuY3VycmVudCA9PSBudWxsID8gdm9pZCAwIDogcmVmLmN1cnJlbnQoLi4uYXJncyk7XG4gIH0sIFtdKTtcbn1cblxuY29uc3QgQVJST1dfVVAgPSAnQXJyb3dVcCc7XG5jb25zdCBBUlJPV19ET1dOID0gJ0Fycm93RG93bic7XG5jb25zdCBBUlJPV19MRUZUID0gJ0Fycm93TGVmdCc7XG5jb25zdCBBUlJPV19SSUdIVCA9ICdBcnJvd1JpZ2h0JztcbmZ1bmN0aW9uIGlzRGlmZmVyZW50Um93KGluZGV4LCBjb2xzLCBwcmV2Um93KSB7XG4gIHJldHVybiBNYXRoLmZsb29yKGluZGV4IC8gY29scykgIT09IHByZXZSb3c7XG59XG5mdW5jdGlvbiBpc0luZGV4T3V0T2ZCb3VuZHMobGlzdFJlZiwgaW5kZXgpIHtcbiAgcmV0dXJuIGluZGV4IDwgMCB8fCBpbmRleCA+PSBsaXN0UmVmLmN1cnJlbnQubGVuZ3RoO1xufVxuZnVuY3Rpb24gZ2V0TWluSW5kZXgobGlzdFJlZiwgZGlzYWJsZWRJbmRpY2VzKSB7XG4gIHJldHVybiBmaW5kTm9uRGlzYWJsZWRJbmRleChsaXN0UmVmLCB7XG4gICAgZGlzYWJsZWRJbmRpY2VzXG4gIH0pO1xufVxuZnVuY3Rpb24gZ2V0TWF4SW5kZXgobGlzdFJlZiwgZGlzYWJsZWRJbmRpY2VzKSB7XG4gIHJldHVybiBmaW5kTm9uRGlzYWJsZWRJbmRleChsaXN0UmVmLCB7XG4gICAgZGVjcmVtZW50OiB0cnVlLFxuICAgIHN0YXJ0aW5nSW5kZXg6IGxpc3RSZWYuY3VycmVudC5sZW5ndGgsXG4gICAgZGlzYWJsZWRJbmRpY2VzXG4gIH0pO1xufVxuZnVuY3Rpb24gZmluZE5vbkRpc2FibGVkSW5kZXgobGlzdFJlZiwgX3RlbXApIHtcbiAgbGV0IHtcbiAgICBzdGFydGluZ0luZGV4ID0gLTEsXG4gICAgZGVjcmVtZW50ID0gZmFsc2UsXG4gICAgZGlzYWJsZWRJbmRpY2VzLFxuICAgIGFtb3VudCA9IDFcbiAgfSA9IF90ZW1wID09PSB2b2lkIDAgPyB7fSA6IF90ZW1wO1xuICBjb25zdCBsaXN0ID0gbGlzdFJlZi5jdXJyZW50O1xuICBsZXQgaW5kZXggPSBzdGFydGluZ0luZGV4O1xuICBkbyB7XG4gICAgaW5kZXggKz0gZGVjcmVtZW50ID8gLWFtb3VudCA6IGFtb3VudDtcbiAgfSB3aGlsZSAoaW5kZXggPj0gMCAmJiBpbmRleCA8PSBsaXN0Lmxlbmd0aCAtIDEgJiYgaXNEaXNhYmxlZChsaXN0LCBpbmRleCwgZGlzYWJsZWRJbmRpY2VzKSk7XG4gIHJldHVybiBpbmRleDtcbn1cbmZ1bmN0aW9uIGdldEdyaWROYXZpZ2F0ZWRJbmRleChlbGVtZW50c1JlZiwgX3JlZikge1xuICBsZXQge1xuICAgIGV2ZW50LFxuICAgIG9yaWVudGF0aW9uLFxuICAgIGxvb3AsXG4gICAgY29scyxcbiAgICBkaXNhYmxlZEluZGljZXMsXG4gICAgbWluSW5kZXgsXG4gICAgbWF4SW5kZXgsXG4gICAgcHJldkluZGV4LFxuICAgIHN0b3BFdmVudDogc3RvcCA9IGZhbHNlXG4gIH0gPSBfcmVmO1xuICBsZXQgbmV4dEluZGV4ID0gcHJldkluZGV4O1xuICBpZiAoZXZlbnQua2V5ID09PSBBUlJPV19VUCkge1xuICAgIHN0b3AgJiYgc3RvcEV2ZW50KGV2ZW50KTtcbiAgICBpZiAocHJldkluZGV4ID09PSAtMSkge1xuICAgICAgbmV4dEluZGV4ID0gbWF4SW5kZXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5leHRJbmRleCA9IGZpbmROb25EaXNhYmxlZEluZGV4KGVsZW1lbnRzUmVmLCB7XG4gICAgICAgIHN0YXJ0aW5nSW5kZXg6IG5leHRJbmRleCxcbiAgICAgICAgYW1vdW50OiBjb2xzLFxuICAgICAgICBkZWNyZW1lbnQ6IHRydWUsXG4gICAgICAgIGRpc2FibGVkSW5kaWNlc1xuICAgICAgfSk7XG4gICAgICBpZiAobG9vcCAmJiAocHJldkluZGV4IC0gY29scyA8IG1pbkluZGV4IHx8IG5leHRJbmRleCA8IDApKSB7XG4gICAgICAgIGNvbnN0IGNvbCA9IHByZXZJbmRleCAlIGNvbHM7XG4gICAgICAgIGNvbnN0IG1heENvbCA9IG1heEluZGV4ICUgY29scztcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gbWF4SW5kZXggLSAobWF4Q29sIC0gY29sKTtcbiAgICAgICAgaWYgKG1heENvbCA9PT0gY29sKSB7XG4gICAgICAgICAgbmV4dEluZGV4ID0gbWF4SW5kZXg7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV4dEluZGV4ID0gbWF4Q29sID4gY29sID8gb2Zmc2V0IDogb2Zmc2V0IC0gY29scztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAoaXNJbmRleE91dE9mQm91bmRzKGVsZW1lbnRzUmVmLCBuZXh0SW5kZXgpKSB7XG4gICAgICBuZXh0SW5kZXggPSBwcmV2SW5kZXg7XG4gICAgfVxuICB9XG4gIGlmIChldmVudC5rZXkgPT09IEFSUk9XX0RPV04pIHtcbiAgICBzdG9wICYmIHN0b3BFdmVudChldmVudCk7XG4gICAgaWYgKHByZXZJbmRleCA9PT0gLTEpIHtcbiAgICAgIG5leHRJbmRleCA9IG1pbkluZGV4O1xuICAgIH0gZWxzZSB7XG4gICAgICBuZXh0SW5kZXggPSBmaW5kTm9uRGlzYWJsZWRJbmRleChlbGVtZW50c1JlZiwge1xuICAgICAgICBzdGFydGluZ0luZGV4OiBwcmV2SW5kZXgsXG4gICAgICAgIGFtb3VudDogY29scyxcbiAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICB9KTtcbiAgICAgIGlmIChsb29wICYmIHByZXZJbmRleCArIGNvbHMgPiBtYXhJbmRleCkge1xuICAgICAgICBuZXh0SW5kZXggPSBmaW5kTm9uRGlzYWJsZWRJbmRleChlbGVtZW50c1JlZiwge1xuICAgICAgICAgIHN0YXJ0aW5nSW5kZXg6IHByZXZJbmRleCAlIGNvbHMgLSBjb2xzLFxuICAgICAgICAgIGFtb3VudDogY29scyxcbiAgICAgICAgICBkaXNhYmxlZEluZGljZXNcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChpc0luZGV4T3V0T2ZCb3VuZHMoZWxlbWVudHNSZWYsIG5leHRJbmRleCkpIHtcbiAgICAgIG5leHRJbmRleCA9IHByZXZJbmRleDtcbiAgICB9XG4gIH1cblxuICAvLyBSZW1haW5zIG9uIHRoZSBzYW1lIHJvdy9jb2x1bW4uXG4gIGlmIChvcmllbnRhdGlvbiA9PT0gJ2JvdGgnKSB7XG4gICAgY29uc3QgcHJldlJvdyA9IGZsb29yKHByZXZJbmRleCAvIGNvbHMpO1xuICAgIGlmIChldmVudC5rZXkgPT09IEFSUk9XX1JJR0hUKSB7XG4gICAgICBzdG9wICYmIHN0b3BFdmVudChldmVudCk7XG4gICAgICBpZiAocHJldkluZGV4ICUgY29scyAhPT0gY29scyAtIDEpIHtcbiAgICAgICAgbmV4dEluZGV4ID0gZmluZE5vbkRpc2FibGVkSW5kZXgoZWxlbWVudHNSZWYsIHtcbiAgICAgICAgICBzdGFydGluZ0luZGV4OiBwcmV2SW5kZXgsXG4gICAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAobG9vcCAmJiBpc0RpZmZlcmVudFJvdyhuZXh0SW5kZXgsIGNvbHMsIHByZXZSb3cpKSB7XG4gICAgICAgICAgbmV4dEluZGV4ID0gZmluZE5vbkRpc2FibGVkSW5kZXgoZWxlbWVudHNSZWYsIHtcbiAgICAgICAgICAgIHN0YXJ0aW5nSW5kZXg6IHByZXZJbmRleCAtIHByZXZJbmRleCAlIGNvbHMgLSAxLFxuICAgICAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAobG9vcCkge1xuICAgICAgICBuZXh0SW5kZXggPSBmaW5kTm9uRGlzYWJsZWRJbmRleChlbGVtZW50c1JlZiwge1xuICAgICAgICAgIHN0YXJ0aW5nSW5kZXg6IHByZXZJbmRleCAtIHByZXZJbmRleCAlIGNvbHMgLSAxLFxuICAgICAgICAgIGRpc2FibGVkSW5kaWNlc1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmIChpc0RpZmZlcmVudFJvdyhuZXh0SW5kZXgsIGNvbHMsIHByZXZSb3cpKSB7XG4gICAgICAgIG5leHRJbmRleCA9IHByZXZJbmRleDtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gQVJST1dfTEVGVCkge1xuICAgICAgc3RvcCAmJiBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgaWYgKHByZXZJbmRleCAlIGNvbHMgIT09IDApIHtcbiAgICAgICAgbmV4dEluZGV4ID0gZmluZE5vbkRpc2FibGVkSW5kZXgoZWxlbWVudHNSZWYsIHtcbiAgICAgICAgICBzdGFydGluZ0luZGV4OiBwcmV2SW5kZXgsXG4gICAgICAgICAgZGVjcmVtZW50OiB0cnVlLFxuICAgICAgICAgIGRpc2FibGVkSW5kaWNlc1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGxvb3AgJiYgaXNEaWZmZXJlbnRSb3cobmV4dEluZGV4LCBjb2xzLCBwcmV2Um93KSkge1xuICAgICAgICAgIG5leHRJbmRleCA9IGZpbmROb25EaXNhYmxlZEluZGV4KGVsZW1lbnRzUmVmLCB7XG4gICAgICAgICAgICBzdGFydGluZ0luZGV4OiBwcmV2SW5kZXggKyAoY29scyAtIHByZXZJbmRleCAlIGNvbHMpLFxuICAgICAgICAgICAgZGVjcmVtZW50OiB0cnVlLFxuICAgICAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAobG9vcCkge1xuICAgICAgICBuZXh0SW5kZXggPSBmaW5kTm9uRGlzYWJsZWRJbmRleChlbGVtZW50c1JlZiwge1xuICAgICAgICAgIHN0YXJ0aW5nSW5kZXg6IHByZXZJbmRleCArIChjb2xzIC0gcHJldkluZGV4ICUgY29scyksXG4gICAgICAgICAgZGVjcmVtZW50OiB0cnVlLFxuICAgICAgICAgIGRpc2FibGVkSW5kaWNlc1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGlmIChpc0RpZmZlcmVudFJvdyhuZXh0SW5kZXgsIGNvbHMsIHByZXZSb3cpKSB7XG4gICAgICAgIG5leHRJbmRleCA9IHByZXZJbmRleDtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgbGFzdFJvdyA9IGZsb29yKG1heEluZGV4IC8gY29scykgPT09IHByZXZSb3c7XG4gICAgaWYgKGlzSW5kZXhPdXRPZkJvdW5kcyhlbGVtZW50c1JlZiwgbmV4dEluZGV4KSkge1xuICAgICAgaWYgKGxvb3AgJiYgbGFzdFJvdykge1xuICAgICAgICBuZXh0SW5kZXggPSBldmVudC5rZXkgPT09IEFSUk9XX0xFRlQgPyBtYXhJbmRleCA6IGZpbmROb25EaXNhYmxlZEluZGV4KGVsZW1lbnRzUmVmLCB7XG4gICAgICAgICAgc3RhcnRpbmdJbmRleDogcHJldkluZGV4IC0gcHJldkluZGV4ICUgY29scyAtIDEsXG4gICAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV4dEluZGV4ID0gcHJldkluZGV4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gbmV4dEluZGV4O1xufVxuXG4vKiogRm9yIGVhY2ggY2VsbCBpbmRleCwgZ2V0cyB0aGUgaXRlbSBpbmRleCB0aGF0IG9jY3VwaWVzIHRoYXQgY2VsbCAqL1xuZnVuY3Rpb24gYnVpbGRDZWxsTWFwKHNpemVzLCBjb2xzLCBkZW5zZSkge1xuICBjb25zdCBjZWxsTWFwID0gW107XG4gIGxldCBzdGFydEluZGV4ID0gMDtcbiAgc2l6ZXMuZm9yRWFjaCgoX3JlZjIsIGluZGV4KSA9PiB7XG4gICAgbGV0IHtcbiAgICAgIHdpZHRoLFxuICAgICAgaGVpZ2h0XG4gICAgfSA9IF9yZWYyO1xuICAgIGlmICh3aWR0aCA+IGNvbHMpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiW0Zsb2F0aW5nIFVJXTogSW52YWxpZCBncmlkIC0gaXRlbSB3aWR0aCBhdCBpbmRleCBcIiArIGluZGV4ICsgXCIgaXMgZ3JlYXRlciB0aGFuIGdyaWQgY29sdW1uc1wiKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IGl0ZW1QbGFjZWQgPSBmYWxzZTtcbiAgICBpZiAoZGVuc2UpIHtcbiAgICAgIHN0YXJ0SW5kZXggPSAwO1xuICAgIH1cbiAgICB3aGlsZSAoIWl0ZW1QbGFjZWQpIHtcbiAgICAgIGNvbnN0IHRhcmdldENlbGxzID0gW107XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdpZHRoOyBpKyspIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBoZWlnaHQ7IGorKykge1xuICAgICAgICAgIHRhcmdldENlbGxzLnB1c2goc3RhcnRJbmRleCArIGkgKyBqICogY29scyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChzdGFydEluZGV4ICUgY29scyArIHdpZHRoIDw9IGNvbHMgJiYgdGFyZ2V0Q2VsbHMuZXZlcnkoY2VsbCA9PiBjZWxsTWFwW2NlbGxdID09IG51bGwpKSB7XG4gICAgICAgIHRhcmdldENlbGxzLmZvckVhY2goY2VsbCA9PiB7XG4gICAgICAgICAgY2VsbE1hcFtjZWxsXSA9IGluZGV4O1xuICAgICAgICB9KTtcbiAgICAgICAgaXRlbVBsYWNlZCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGFydEluZGV4Kys7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICAvLyBjb252ZXJ0IGludG8gYSBub24tc3BhcnNlIGFycmF5XG4gIHJldHVybiBbLi4uY2VsbE1hcF07XG59XG5cbi8qKiBHZXRzIGNlbGwgaW5kZXggb2YgYW4gaXRlbSdzIGNvcm5lciBvciAtMSB3aGVuIGluZGV4IGlzIC0xLiAqL1xuZnVuY3Rpb24gZ2V0Q2VsbEluZGV4T2ZDb3JuZXIoaW5kZXgsIHNpemVzLCBjZWxsTWFwLCBjb2xzLCBjb3JuZXIpIHtcbiAgaWYgKGluZGV4ID09PSAtMSkgcmV0dXJuIC0xO1xuICBjb25zdCBmaXJzdENlbGxJbmRleCA9IGNlbGxNYXAuaW5kZXhPZihpbmRleCk7XG4gIGNvbnN0IHNpemVJdGVtID0gc2l6ZXNbaW5kZXhdO1xuICBzd2l0Y2ggKGNvcm5lcikge1xuICAgIGNhc2UgJ3RsJzpcbiAgICAgIHJldHVybiBmaXJzdENlbGxJbmRleDtcbiAgICBjYXNlICd0cic6XG4gICAgICBpZiAoIXNpemVJdGVtKSB7XG4gICAgICAgIHJldHVybiBmaXJzdENlbGxJbmRleDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmaXJzdENlbGxJbmRleCArIHNpemVJdGVtLndpZHRoIC0gMTtcbiAgICBjYXNlICdibCc6XG4gICAgICBpZiAoIXNpemVJdGVtKSB7XG4gICAgICAgIHJldHVybiBmaXJzdENlbGxJbmRleDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmaXJzdENlbGxJbmRleCArIChzaXplSXRlbS5oZWlnaHQgLSAxKSAqIGNvbHM7XG4gICAgY2FzZSAnYnInOlxuICAgICAgcmV0dXJuIGNlbGxNYXAubGFzdEluZGV4T2YoaW5kZXgpO1xuICB9XG59XG5cbi8qKiBHZXRzIGFsbCBjZWxsIGluZGljZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSBzcGVjaWZpZWQgaW5kaWNlcyAqL1xuZnVuY3Rpb24gZ2V0Q2VsbEluZGljZXMoaW5kaWNlcywgY2VsbE1hcCkge1xuICByZXR1cm4gY2VsbE1hcC5mbGF0TWFwKChpbmRleCwgY2VsbEluZGV4KSA9PiBpbmRpY2VzLmluY2x1ZGVzKGluZGV4KSA/IFtjZWxsSW5kZXhdIDogW10pO1xufVxuZnVuY3Rpb24gaXNEaXNhYmxlZChsaXN0LCBpbmRleCwgZGlzYWJsZWRJbmRpY2VzKSB7XG4gIGlmIChkaXNhYmxlZEluZGljZXMpIHtcbiAgICByZXR1cm4gZGlzYWJsZWRJbmRpY2VzLmluY2x1ZGVzKGluZGV4KTtcbiAgfVxuICBjb25zdCBlbGVtZW50ID0gbGlzdFtpbmRleF07XG4gIHJldHVybiBlbGVtZW50ID09IG51bGwgfHwgZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgfHwgZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2FyaWEtZGlzYWJsZWQnKSA9PT0gJ3RydWUnO1xufVxuXG5sZXQgcmFmSWQgPSAwO1xuZnVuY3Rpb24gZW5xdWV1ZUZvY3VzKGVsLCBvcHRpb25zKSB7XG4gIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICBvcHRpb25zID0ge307XG4gIH1cbiAgY29uc3Qge1xuICAgIHByZXZlbnRTY3JvbGwgPSBmYWxzZSxcbiAgICBjYW5jZWxQcmV2aW91cyA9IHRydWUsXG4gICAgc3luYyA9IGZhbHNlXG4gIH0gPSBvcHRpb25zO1xuICBjYW5jZWxQcmV2aW91cyAmJiBjYW5jZWxBbmltYXRpb25GcmFtZShyYWZJZCk7XG4gIGNvbnN0IGV4ZWMgPSAoKSA9PiBlbCA9PSBudWxsID8gdm9pZCAwIDogZWwuZm9jdXMoe1xuICAgIHByZXZlbnRTY3JvbGxcbiAgfSk7XG4gIGlmIChzeW5jKSB7XG4gICAgZXhlYygpO1xuICB9IGVsc2Uge1xuICAgIHJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGV4ZWMpO1xuICB9XG59XG5cbnZhciBpbmRleCA9IHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCcgPyB1c2VMYXlvdXRFZmZlY3QgOiB1c2VFZmZlY3Q7XG5cbmZ1bmN0aW9uIHNvcnRCeURvY3VtZW50UG9zaXRpb24oYSwgYikge1xuICBjb25zdCBwb3NpdGlvbiA9IGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYik7XG4gIGlmIChwb3NpdGlvbiAmIE5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRk9MTE9XSU5HIHx8IHBvc2l0aW9uICYgTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9DT05UQUlORURfQlkpIHtcbiAgICByZXR1cm4gLTE7XG4gIH1cbiAgaWYgKHBvc2l0aW9uICYgTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9QUkVDRURJTkcgfHwgcG9zaXRpb24gJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0NPTlRBSU5TKSB7XG4gICAgcmV0dXJuIDE7XG4gIH1cbiAgcmV0dXJuIDA7XG59XG5mdW5jdGlvbiBhcmVNYXBzRXF1YWwobWFwMSwgbWFwMikge1xuICBpZiAobWFwMS5zaXplICE9PSBtYXAyLnNpemUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgbWFwMS5lbnRyaWVzKCkpIHtcbiAgICBpZiAodmFsdWUgIT09IG1hcDIuZ2V0KGtleSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5jb25zdCBGbG9hdGluZ0xpc3RDb250ZXh0ID0gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUNvbnRleHQoe1xuICByZWdpc3RlcjogKCkgPT4ge30sXG4gIHVucmVnaXN0ZXI6ICgpID0+IHt9LFxuICBtYXA6IC8qI19fUFVSRV9fKi9uZXcgTWFwKCksXG4gIGVsZW1lbnRzUmVmOiB7XG4gICAgY3VycmVudDogW11cbiAgfVxufSk7XG4vKipcbiAqIFByb3ZpZGVzIGNvbnRleHQgZm9yIGEgbGlzdCBvZiBpdGVtcyB3aXRoaW4gdGhlIGZsb2F0aW5nIGVsZW1lbnQuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvRmxvYXRpbmdMaXN0XG4gKi9cbmZ1bmN0aW9uIEZsb2F0aW5nTGlzdChwcm9wcykge1xuICBjb25zdCB7XG4gICAgY2hpbGRyZW4sXG4gICAgZWxlbWVudHNSZWYsXG4gICAgbGFiZWxzUmVmXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgW21hcCwgc2V0TWFwXSA9IFJlYWN0LnVzZVN0YXRlKCgpID0+IG5ldyBNYXAoKSk7XG4gIGNvbnN0IHJlZ2lzdGVyID0gUmVhY3QudXNlQ2FsbGJhY2sobm9kZSA9PiB7XG4gICAgc2V0TWFwKHByZXZNYXAgPT4gbmV3IE1hcChwcmV2TWFwKS5zZXQobm9kZSwgbnVsbCkpO1xuICB9LCBbXSk7XG4gIGNvbnN0IHVucmVnaXN0ZXIgPSBSZWFjdC51c2VDYWxsYmFjayhub2RlID0+IHtcbiAgICBzZXRNYXAocHJldk1hcCA9PiB7XG4gICAgICBjb25zdCBtYXAgPSBuZXcgTWFwKHByZXZNYXApO1xuICAgICAgbWFwLmRlbGV0ZShub2RlKTtcbiAgICAgIHJldHVybiBtYXA7XG4gICAgfSk7XG4gIH0sIFtdKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGNvbnN0IG5ld01hcCA9IG5ldyBNYXAobWFwKTtcbiAgICBjb25zdCBub2RlcyA9IEFycmF5LmZyb20obmV3TWFwLmtleXMoKSkuc29ydChzb3J0QnlEb2N1bWVudFBvc2l0aW9uKTtcbiAgICBub2Rlcy5mb3JFYWNoKChub2RlLCBpbmRleCkgPT4ge1xuICAgICAgbmV3TWFwLnNldChub2RlLCBpbmRleCk7XG4gICAgfSk7XG4gICAgaWYgKCFhcmVNYXBzRXF1YWwobWFwLCBuZXdNYXApKSB7XG4gICAgICBzZXRNYXAobmV3TWFwKTtcbiAgICB9XG4gIH0sIFttYXBdKTtcbiAgcmV0dXJuIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KEZsb2F0aW5nTGlzdENvbnRleHQuUHJvdmlkZXIsIHtcbiAgICB2YWx1ZTogUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgICAgcmVnaXN0ZXIsXG4gICAgICB1bnJlZ2lzdGVyLFxuICAgICAgbWFwLFxuICAgICAgZWxlbWVudHNSZWYsXG4gICAgICBsYWJlbHNSZWZcbiAgICB9KSwgW3JlZ2lzdGVyLCB1bnJlZ2lzdGVyLCBtYXAsIGVsZW1lbnRzUmVmLCBsYWJlbHNSZWZdKVxuICB9LCBjaGlsZHJlbik7XG59XG4vKipcbiAqIFVzZWQgdG8gcmVnaXN0ZXIgYSBsaXN0IGl0ZW0gYW5kIGl0cyBpbmRleCAoRE9NIHBvc2l0aW9uKSBpbiB0aGVcbiAqIGBGbG9hdGluZ0xpc3RgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL0Zsb2F0aW5nTGlzdCN1c2VsaXN0aXRlbVxuICovXG5mdW5jdGlvbiB1c2VMaXN0SXRlbShwcm9wcykge1xuICBpZiAocHJvcHMgPT09IHZvaWQgMCkge1xuICAgIHByb3BzID0ge307XG4gIH1cbiAgY29uc3Qge1xuICAgIGxhYmVsXG4gIH0gPSBwcm9wcztcbiAgY29uc3Qge1xuICAgIHJlZ2lzdGVyLFxuICAgIHVucmVnaXN0ZXIsXG4gICAgbWFwLFxuICAgIGVsZW1lbnRzUmVmLFxuICAgIGxhYmVsc1JlZlxuICB9ID0gUmVhY3QudXNlQ29udGV4dChGbG9hdGluZ0xpc3RDb250ZXh0KTtcbiAgY29uc3QgW2luZGV4JDEsIHNldEluZGV4XSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBjb21wb25lbnRSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IHJlZiA9IFJlYWN0LnVzZUNhbGxiYWNrKG5vZGUgPT4ge1xuICAgIGNvbXBvbmVudFJlZi5jdXJyZW50ID0gbm9kZTtcbiAgICBpZiAoaW5kZXgkMSAhPT0gbnVsbCkge1xuICAgICAgZWxlbWVudHNSZWYuY3VycmVudFtpbmRleCQxXSA9IG5vZGU7XG4gICAgICBpZiAobGFiZWxzUmVmKSB7XG4gICAgICAgIHZhciBfbm9kZSR0ZXh0Q29udGVudDtcbiAgICAgICAgY29uc3QgaXNMYWJlbERlZmluZWQgPSBsYWJlbCAhPT0gdW5kZWZpbmVkO1xuICAgICAgICBsYWJlbHNSZWYuY3VycmVudFtpbmRleCQxXSA9IGlzTGFiZWxEZWZpbmVkID8gbGFiZWwgOiAoX25vZGUkdGV4dENvbnRlbnQgPSBub2RlID09IG51bGwgPyB2b2lkIDAgOiBub2RlLnRleHRDb250ZW50KSAhPSBudWxsID8gX25vZGUkdGV4dENvbnRlbnQgOiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2luZGV4JDEsIGVsZW1lbnRzUmVmLCBsYWJlbHNSZWYsIGxhYmVsXSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBjb25zdCBub2RlID0gY29tcG9uZW50UmVmLmN1cnJlbnQ7XG4gICAgaWYgKG5vZGUpIHtcbiAgICAgIHJlZ2lzdGVyKG5vZGUpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgdW5yZWdpc3Rlcihub2RlKTtcbiAgICAgIH07XG4gICAgfVxuICB9LCBbcmVnaXN0ZXIsIHVucmVnaXN0ZXJdKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGNvbnN0IGluZGV4ID0gY29tcG9uZW50UmVmLmN1cnJlbnQgPyBtYXAuZ2V0KGNvbXBvbmVudFJlZi5jdXJyZW50KSA6IG51bGw7XG4gICAgaWYgKGluZGV4ICE9IG51bGwpIHtcbiAgICAgIHNldEluZGV4KGluZGV4KTtcbiAgICB9XG4gIH0sIFttYXBdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICByZWYsXG4gICAgaW5kZXg6IGluZGV4JDEgPT0gbnVsbCA/IC0xIDogaW5kZXgkMVxuICB9KSwgW2luZGV4JDEsIHJlZl0pO1xufVxuXG5mdW5jdGlvbiByZW5kZXJKc3gocmVuZGVyLCBjb21wdXRlZFByb3BzKSB7XG4gIGlmICh0eXBlb2YgcmVuZGVyID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIHJlbmRlcihjb21wdXRlZFByb3BzKTtcbiAgfVxuICBpZiAocmVuZGVyKSB7XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi9SZWFjdC5jbG9uZUVsZW1lbnQocmVuZGVyLCBjb21wdXRlZFByb3BzKTtcbiAgfVxuICByZXR1cm4gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgY29tcHV0ZWRQcm9wcyk7XG59XG5jb25zdCBDb21wb3NpdGVDb250ZXh0ID0gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUNvbnRleHQoe1xuICBhY3RpdmVJbmRleDogMCxcbiAgb25OYXZpZ2F0ZTogKCkgPT4ge31cbn0pO1xuY29uc3QgaG9yaXpvbnRhbEtleXMgPSBbQVJST1dfTEVGVCwgQVJST1dfUklHSFRdO1xuY29uc3QgdmVydGljYWxLZXlzID0gW0FSUk9XX1VQLCBBUlJPV19ET1dOXTtcbmNvbnN0IGFsbEtleXMgPSBbLi4uaG9yaXpvbnRhbEtleXMsIC4uLnZlcnRpY2FsS2V5c107XG5cbi8qKlxuICogQ3JlYXRlcyBhIHNpbmdsZSB0YWIgc3RvcCB3aG9zZSBpdGVtcyBhcmUgbmF2aWdhdGVkIGJ5IGFycm93IGtleXMsIHdoaWNoXG4gKiBwcm92aWRlcyBsaXN0IG5hdmlnYXRpb24gb3V0c2lkZSBvZiBmbG9hdGluZyBlbGVtZW50IGNvbnRleHRzLlxuICpcbiAqIFRoaXMgaXMgdXNlZnVsIHRvIGVuYWJsZSBuYXZpZ2F0aW9uIG9mIGEgbGlzdCBvZiBpdGVtcyB0aGF0IGFyZW7igJl0IHBhcnQgb2YgYVxuICogZmxvYXRpbmcgZWxlbWVudC4gQSBtZW51YmFyIGlzIGFuIGV4YW1wbGUgb2YgYSBjb21wb3NpdGUsIHdpdGggZWFjaCByZWZlcmVuY2VcbiAqIGVsZW1lbnQgYmVpbmcgYW4gaXRlbS5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9Db21wb3NpdGVcbiAqL1xuY29uc3QgQ29tcG9zaXRlID0gLyojX19QVVJFX18qL1JlYWN0LmZvcndhcmRSZWYoZnVuY3Rpb24gQ29tcG9zaXRlKHByb3BzLCBmb3J3YXJkZWRSZWYpIHtcbiAgY29uc3Qge1xuICAgIHJlbmRlcixcbiAgICBvcmllbnRhdGlvbiA9ICdib3RoJyxcbiAgICBsb29wID0gdHJ1ZSxcbiAgICBjb2xzID0gMSxcbiAgICBkaXNhYmxlZEluZGljZXMsXG4gICAgYWN0aXZlSW5kZXg6IGV4dGVybmFsQWN0aXZlSW5kZXgsXG4gICAgb25OYXZpZ2F0ZTogZXh0ZXJuYWxTZXRBY3RpdmVJbmRleCxcbiAgICBpdGVtU2l6ZXMsXG4gICAgZGVuc2UgPSBmYWxzZSxcbiAgICAuLi5kb21Qcm9wc1xuICB9ID0gcHJvcHM7XG4gIGNvbnN0IFtpbnRlcm5hbEFjdGl2ZUluZGV4LCBpbnRlcm5hbFNldEFjdGl2ZUluZGV4XSA9IFJlYWN0LnVzZVN0YXRlKDApO1xuICBjb25zdCBhY3RpdmVJbmRleCA9IGV4dGVybmFsQWN0aXZlSW5kZXggIT0gbnVsbCA/IGV4dGVybmFsQWN0aXZlSW5kZXggOiBpbnRlcm5hbEFjdGl2ZUluZGV4O1xuICBjb25zdCBvbk5hdmlnYXRlID0gdXNlRWZmZWN0RXZlbnQoZXh0ZXJuYWxTZXRBY3RpdmVJbmRleCAhPSBudWxsID8gZXh0ZXJuYWxTZXRBY3RpdmVJbmRleCA6IGludGVybmFsU2V0QWN0aXZlSW5kZXgpO1xuICBjb25zdCBlbGVtZW50c1JlZiA9IFJlYWN0LnVzZVJlZihbXSk7XG4gIGNvbnN0IHJlbmRlckVsZW1lbnRQcm9wcyA9IHJlbmRlciAmJiB0eXBlb2YgcmVuZGVyICE9PSAnZnVuY3Rpb24nID8gcmVuZGVyLnByb3BzIDoge307XG4gIGNvbnN0IGNvbnRleHRWYWx1ZSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICBhY3RpdmVJbmRleCxcbiAgICBvbk5hdmlnYXRlXG4gIH0pLCBbYWN0aXZlSW5kZXgsIG9uTmF2aWdhdGVdKTtcbiAgY29uc3QgaXNHcmlkID0gY29scyA+IDE7XG4gIGZ1bmN0aW9uIGhhbmRsZUtleURvd24oZXZlbnQpIHtcbiAgICBpZiAoIWFsbEtleXMuaW5jbHVkZXMoZXZlbnQua2V5KSkgcmV0dXJuO1xuICAgIGxldCBuZXh0SW5kZXggPSBhY3RpdmVJbmRleDtcbiAgICBjb25zdCBtaW5JbmRleCA9IGdldE1pbkluZGV4KGVsZW1lbnRzUmVmLCBkaXNhYmxlZEluZGljZXMpO1xuICAgIGNvbnN0IG1heEluZGV4ID0gZ2V0TWF4SW5kZXgoZWxlbWVudHNSZWYsIGRpc2FibGVkSW5kaWNlcyk7XG4gICAgaWYgKGlzR3JpZCkge1xuICAgICAgY29uc3Qgc2l6ZXMgPSBpdGVtU2l6ZXMgfHwgQXJyYXkuZnJvbSh7XG4gICAgICAgIGxlbmd0aDogZWxlbWVudHNSZWYuY3VycmVudC5sZW5ndGhcbiAgICAgIH0sICgpID0+ICh7XG4gICAgICAgIHdpZHRoOiAxLFxuICAgICAgICBoZWlnaHQ6IDFcbiAgICAgIH0pKTtcbiAgICAgIC8vIFRvIGNhbGN1bGF0ZSBtb3ZlbWVudHMgb24gdGhlIGdyaWQsIHdlIHVzZSBoeXBvdGhldGljYWwgY2VsbCBpbmRpY2VzXG4gICAgICAvLyBhcyBpZiBldmVyeSBpdGVtIHdhcyAxeDEsIHRoZW4gY29udmVydCBiYWNrIHRvIHJlYWwgaW5kaWNlcy5cbiAgICAgIGNvbnN0IGNlbGxNYXAgPSBidWlsZENlbGxNYXAoc2l6ZXMsIGNvbHMsIGRlbnNlKTtcbiAgICAgIGNvbnN0IG1pbkdyaWRJbmRleCA9IGNlbGxNYXAuZmluZEluZGV4KGluZGV4ID0+IGluZGV4ICE9IG51bGwgJiYgIWlzRGlzYWJsZWQoZWxlbWVudHNSZWYuY3VycmVudCwgaW5kZXgsIGRpc2FibGVkSW5kaWNlcykpO1xuICAgICAgLy8gbGFzdCBlbmFibGVkIGluZGV4XG4gICAgICBjb25zdCBtYXhHcmlkSW5kZXggPSBjZWxsTWFwLnJlZHVjZSgoZm91bmRJbmRleCwgaW5kZXgsIGNlbGxJbmRleCkgPT4gaW5kZXggIT0gbnVsbCAmJiAhaXNEaXNhYmxlZChlbGVtZW50c1JlZi5jdXJyZW50LCBpbmRleCwgZGlzYWJsZWRJbmRpY2VzKSA/IGNlbGxJbmRleCA6IGZvdW5kSW5kZXgsIC0xKTtcbiAgICAgIG5leHRJbmRleCA9IGNlbGxNYXBbZ2V0R3JpZE5hdmlnYXRlZEluZGV4KHtcbiAgICAgICAgY3VycmVudDogY2VsbE1hcC5tYXAoaXRlbUluZGV4ID0+IGl0ZW1JbmRleCA/IGVsZW1lbnRzUmVmLmN1cnJlbnRbaXRlbUluZGV4XSA6IG51bGwpXG4gICAgICB9LCB7XG4gICAgICAgIGV2ZW50LFxuICAgICAgICBvcmllbnRhdGlvbixcbiAgICAgICAgbG9vcCxcbiAgICAgICAgY29scyxcbiAgICAgICAgLy8gdHJlYXQgdW5kZWZpbmVkIChlbXB0eSBncmlkIHNwYWNlcykgYXMgZGlzYWJsZWQgaW5kaWNlcyBzbyB3ZVxuICAgICAgICAvLyBkb24ndCBlbmQgdXAgaW4gdGhlbVxuICAgICAgICBkaXNhYmxlZEluZGljZXM6IGdldENlbGxJbmRpY2VzKFsuLi4oZGlzYWJsZWRJbmRpY2VzIHx8IGVsZW1lbnRzUmVmLmN1cnJlbnQubWFwKChfLCBpbmRleCkgPT4gaXNEaXNhYmxlZChlbGVtZW50c1JlZi5jdXJyZW50LCBpbmRleCkgPyBpbmRleCA6IHVuZGVmaW5lZCkpLCB1bmRlZmluZWRdLCBjZWxsTWFwKSxcbiAgICAgICAgbWluSW5kZXg6IG1pbkdyaWRJbmRleCxcbiAgICAgICAgbWF4SW5kZXg6IG1heEdyaWRJbmRleCxcbiAgICAgICAgcHJldkluZGV4OiBnZXRDZWxsSW5kZXhPZkNvcm5lcihhY3RpdmVJbmRleCA+IG1heEluZGV4ID8gbWluSW5kZXggOiBhY3RpdmVJbmRleCwgc2l6ZXMsIGNlbGxNYXAsIGNvbHMsXG4gICAgICAgIC8vIHVzZSBhIGNvcm5lciBtYXRjaGluZyB0aGUgZWRnZSBjbG9zZXN0IHRvIHRoZSBkaXJlY3Rpb24gd2UncmVcbiAgICAgICAgLy8gbW92aW5nIGluIHNvIHdlIGRvbid0IGVuZCB1cCBpbiB0aGUgc2FtZSBpdGVtLiBQcmVmZXJcbiAgICAgICAgLy8gdG9wL2xlZnQgb3ZlciBib3R0b20vcmlnaHQuXG4gICAgICAgIGV2ZW50LmtleSA9PT0gQVJST1dfRE9XTiA/ICdibCcgOiBldmVudC5rZXkgPT09IEFSUk9XX1JJR0hUID8gJ3RyJyA6ICd0bCcpXG4gICAgICB9KV07IC8vIG5hdmlnYXRlZCBjZWxsIHdpbGwgbmV2ZXIgYmUgbnVsbGlzaFxuICAgIH1cbiAgICBjb25zdCB0b0VuZEtleXMgPSB7XG4gICAgICBob3Jpem9udGFsOiBbQVJST1dfUklHSFRdLFxuICAgICAgdmVydGljYWw6IFtBUlJPV19ET1dOXSxcbiAgICAgIGJvdGg6IFtBUlJPV19SSUdIVCwgQVJST1dfRE9XTl1cbiAgICB9W29yaWVudGF0aW9uXTtcbiAgICBjb25zdCB0b1N0YXJ0S2V5cyA9IHtcbiAgICAgIGhvcml6b250YWw6IFtBUlJPV19MRUZUXSxcbiAgICAgIHZlcnRpY2FsOiBbQVJST1dfVVBdLFxuICAgICAgYm90aDogW0FSUk9XX0xFRlQsIEFSUk9XX1VQXVxuICAgIH1bb3JpZW50YXRpb25dO1xuICAgIGNvbnN0IHByZXZlbnRlZEtleXMgPSBpc0dyaWQgPyBhbGxLZXlzIDoge1xuICAgICAgaG9yaXpvbnRhbDogaG9yaXpvbnRhbEtleXMsXG4gICAgICB2ZXJ0aWNhbDogdmVydGljYWxLZXlzLFxuICAgICAgYm90aDogYWxsS2V5c1xuICAgIH1bb3JpZW50YXRpb25dO1xuICAgIGlmIChuZXh0SW5kZXggPT09IGFjdGl2ZUluZGV4ICYmIFsuLi50b0VuZEtleXMsIC4uLnRvU3RhcnRLZXlzXS5pbmNsdWRlcyhldmVudC5rZXkpKSB7XG4gICAgICBpZiAobG9vcCAmJiBuZXh0SW5kZXggPT09IG1heEluZGV4ICYmIHRvRW5kS2V5cy5pbmNsdWRlcyhldmVudC5rZXkpKSB7XG4gICAgICAgIG5leHRJbmRleCA9IG1pbkluZGV4O1xuICAgICAgfSBlbHNlIGlmIChsb29wICYmIG5leHRJbmRleCA9PT0gbWluSW5kZXggJiYgdG9TdGFydEtleXMuaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgICBuZXh0SW5kZXggPSBtYXhJbmRleDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5leHRJbmRleCA9IGZpbmROb25EaXNhYmxlZEluZGV4KGVsZW1lbnRzUmVmLCB7XG4gICAgICAgICAgc3RhcnRpbmdJbmRleDogbmV4dEluZGV4LFxuICAgICAgICAgIGRlY3JlbWVudDogdG9TdGFydEtleXMuaW5jbHVkZXMoZXZlbnQua2V5KSxcbiAgICAgICAgICBkaXNhYmxlZEluZGljZXNcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChuZXh0SW5kZXggIT09IGFjdGl2ZUluZGV4ICYmICFpc0luZGV4T3V0T2ZCb3VuZHMoZWxlbWVudHNSZWYsIG5leHRJbmRleCkpIHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgaWYgKHByZXZlbnRlZEtleXMuaW5jbHVkZXMoZXZlbnQua2V5KSkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgb25OYXZpZ2F0ZShuZXh0SW5kZXgpO1xuXG4gICAgICAvLyBXYWl0IGZvciBGb2N1c01hbmFnZXIgYHJldHVybkZvY3VzYCB0byBleGVjdXRlLlxuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICBlbnF1ZXVlRm9jdXMoZWxlbWVudHNSZWYuY3VycmVudFtuZXh0SW5kZXhdKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuICBjb25zdCBjb21wdXRlZFByb3BzID0ge1xuICAgIC4uLmRvbVByb3BzLFxuICAgIC4uLnJlbmRlckVsZW1lbnRQcm9wcyxcbiAgICByZWY6IGZvcndhcmRlZFJlZixcbiAgICAnYXJpYS1vcmllbnRhdGlvbic6IG9yaWVudGF0aW9uID09PSAnYm90aCcgPyB1bmRlZmluZWQgOiBvcmllbnRhdGlvbixcbiAgICBvbktleURvd24oZSkge1xuICAgICAgZG9tUHJvcHMub25LZXlEb3duID09IG51bGwgfHwgZG9tUHJvcHMub25LZXlEb3duKGUpO1xuICAgICAgcmVuZGVyRWxlbWVudFByb3BzLm9uS2V5RG93biA9PSBudWxsIHx8IHJlbmRlckVsZW1lbnRQcm9wcy5vbktleURvd24oZSk7XG4gICAgICBoYW5kbGVLZXlEb3duKGUpO1xuICAgIH1cbiAgfTtcbiAgcmV0dXJuIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KENvbXBvc2l0ZUNvbnRleHQuUHJvdmlkZXIsIHtcbiAgICB2YWx1ZTogY29udGV4dFZhbHVlXG4gIH0sIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KEZsb2F0aW5nTGlzdCwge1xuICAgIGVsZW1lbnRzUmVmOiBlbGVtZW50c1JlZlxuICB9LCByZW5kZXJKc3gocmVuZGVyLCBjb21wdXRlZFByb3BzKSkpO1xufSk7XG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9Db21wb3NpdGVcbiAqL1xuY29uc3QgQ29tcG9zaXRlSXRlbSA9IC8qI19fUFVSRV9fKi9SZWFjdC5mb3J3YXJkUmVmKGZ1bmN0aW9uIENvbXBvc2l0ZUl0ZW0ocHJvcHMsIGZvcndhcmRlZFJlZikge1xuICBjb25zdCB7XG4gICAgcmVuZGVyLFxuICAgIC4uLmRvbVByb3BzXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgcmVuZGVyRWxlbWVudFByb3BzID0gcmVuZGVyICYmIHR5cGVvZiByZW5kZXIgIT09ICdmdW5jdGlvbicgPyByZW5kZXIucHJvcHMgOiB7fTtcbiAgY29uc3Qge1xuICAgIGFjdGl2ZUluZGV4LFxuICAgIG9uTmF2aWdhdGVcbiAgfSA9IFJlYWN0LnVzZUNvbnRleHQoQ29tcG9zaXRlQ29udGV4dCk7XG4gIGNvbnN0IHtcbiAgICByZWYsXG4gICAgaW5kZXhcbiAgfSA9IHVzZUxpc3RJdGVtKCk7XG4gIGNvbnN0IG1lcmdlZFJlZiA9IHVzZU1lcmdlUmVmcyhbcmVmLCBmb3J3YXJkZWRSZWYsIHJlbmRlckVsZW1lbnRQcm9wcy5yZWZdKTtcbiAgY29uc3QgaXNBY3RpdmUgPSBhY3RpdmVJbmRleCA9PT0gaW5kZXg7XG4gIGNvbnN0IGNvbXB1dGVkUHJvcHMgPSB7XG4gICAgLi4uZG9tUHJvcHMsXG4gICAgLi4ucmVuZGVyRWxlbWVudFByb3BzLFxuICAgIHJlZjogbWVyZ2VkUmVmLFxuICAgIHRhYkluZGV4OiBpc0FjdGl2ZSA/IDAgOiAtMSxcbiAgICAnZGF0YS1hY3RpdmUnOiBpc0FjdGl2ZSA/ICcnIDogdW5kZWZpbmVkLFxuICAgIG9uRm9jdXMoZSkge1xuICAgICAgZG9tUHJvcHMub25Gb2N1cyA9PSBudWxsIHx8IGRvbVByb3BzLm9uRm9jdXMoZSk7XG4gICAgICByZW5kZXJFbGVtZW50UHJvcHMub25Gb2N1cyA9PSBudWxsIHx8IHJlbmRlckVsZW1lbnRQcm9wcy5vbkZvY3VzKGUpO1xuICAgICAgb25OYXZpZ2F0ZShpbmRleCk7XG4gICAgfVxuICB9O1xuICByZXR1cm4gcmVuZGVySnN4KHJlbmRlciwgY29tcHV0ZWRQcm9wcyk7XG59KTtcblxuZnVuY3Rpb24gX2V4dGVuZHMoKSB7XG4gIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiA/IE9iamVjdC5hc3NpZ24uYmluZCgpIDogZnVuY3Rpb24gKHRhcmdldCkge1xuICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldO1xuICAgICAgZm9yICh2YXIga2V5IGluIHNvdXJjZSkge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkge1xuICAgICAgICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRhcmdldDtcbiAgfTtcbiAgcmV0dXJuIF9leHRlbmRzLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XG59XG5cbmxldCBzZXJ2ZXJIYW5kb2ZmQ29tcGxldGUgPSBmYWxzZTtcbmxldCBjb3VudCA9IDA7XG5jb25zdCBnZW5JZCA9ICgpID0+IC8vIEVuc3VyZSB0aGUgaWQgaXMgdW5pcXVlIHdpdGggbXVsdGlwbGUgaW5kZXBlbmRlbnQgdmVyc2lvbnMgb2YgRmxvYXRpbmcgVUlcbi8vIG9uIDxSZWFjdCAxOFxuXCJmbG9hdGluZy11aS1cIiArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDYpICsgY291bnQrKztcbmZ1bmN0aW9uIHVzZUZsb2F0aW5nSWQoKSB7XG4gIGNvbnN0IFtpZCwgc2V0SWRdID0gUmVhY3QudXNlU3RhdGUoKCkgPT4gc2VydmVySGFuZG9mZkNvbXBsZXRlID8gZ2VuSWQoKSA6IHVuZGVmaW5lZCk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoaWQgPT0gbnVsbCkge1xuICAgICAgc2V0SWQoZ2VuSWQoKSk7XG4gICAgfVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgfSwgW10pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNlcnZlckhhbmRvZmZDb21wbGV0ZSA9IHRydWU7XG4gIH0sIFtdKTtcbiAgcmV0dXJuIGlkO1xufVxuY29uc3QgdXNlUmVhY3RJZCA9IFNhZmVSZWFjdC51c2VJZDtcblxuLyoqXG4gKiBVc2VzIFJlYWN0IDE4J3MgYnVpbHQtaW4gYHVzZUlkKClgIHdoZW4gYXZhaWxhYmxlLCBvciBmYWxscyBiYWNrIHRvIGFcbiAqIHNsaWdodGx5IGxlc3MgcGVyZm9ybWFudCAocmVxdWlyaW5nIGEgZG91YmxlIHJlbmRlcikgaW1wbGVtZW50YXRpb24gZm9yXG4gKiBlYXJsaWVyIFJlYWN0IHZlcnNpb25zLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3JlYWN0LXV0aWxzI3VzZWlkXG4gKi9cbmNvbnN0IHVzZUlkID0gdXNlUmVhY3RJZCB8fCB1c2VGbG9hdGluZ0lkO1xuXG5sZXQgZGV2TWVzc2FnZVNldDtcbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgZGV2TWVzc2FnZVNldCA9IC8qI19fUFVSRV9fKi9uZXcgU2V0KCk7XG59XG5mdW5jdGlvbiB3YXJuKCkge1xuICB2YXIgX2Rldk1lc3NhZ2VTZXQ7XG4gIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBtZXNzYWdlcyA9IG5ldyBBcnJheShfbGVuKSwgX2tleSA9IDA7IF9rZXkgPCBfbGVuOyBfa2V5KyspIHtcbiAgICBtZXNzYWdlc1tfa2V5XSA9IGFyZ3VtZW50c1tfa2V5XTtcbiAgfVxuICBjb25zdCBtZXNzYWdlID0gXCJGbG9hdGluZyBVSTogXCIgKyBtZXNzYWdlcy5qb2luKCcgJyk7XG4gIGlmICghKChfZGV2TWVzc2FnZVNldCA9IGRldk1lc3NhZ2VTZXQpICE9IG51bGwgJiYgX2Rldk1lc3NhZ2VTZXQuaGFzKG1lc3NhZ2UpKSkge1xuICAgIHZhciBfZGV2TWVzc2FnZVNldDI7XG4gICAgKF9kZXZNZXNzYWdlU2V0MiA9IGRldk1lc3NhZ2VTZXQpID09IG51bGwgfHwgX2Rldk1lc3NhZ2VTZXQyLmFkZChtZXNzYWdlKTtcbiAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7XG4gIH1cbn1cbmZ1bmN0aW9uIGVycm9yKCkge1xuICB2YXIgX2Rldk1lc3NhZ2VTZXQzO1xuICBmb3IgKHZhciBfbGVuMiA9IGFyZ3VtZW50cy5sZW5ndGgsIG1lc3NhZ2VzID0gbmV3IEFycmF5KF9sZW4yKSwgX2tleTIgPSAwOyBfa2V5MiA8IF9sZW4yOyBfa2V5MisrKSB7XG4gICAgbWVzc2FnZXNbX2tleTJdID0gYXJndW1lbnRzW19rZXkyXTtcbiAgfVxuICBjb25zdCBtZXNzYWdlID0gXCJGbG9hdGluZyBVSTogXCIgKyBtZXNzYWdlcy5qb2luKCcgJyk7XG4gIGlmICghKChfZGV2TWVzc2FnZVNldDMgPSBkZXZNZXNzYWdlU2V0KSAhPSBudWxsICYmIF9kZXZNZXNzYWdlU2V0My5oYXMobWVzc2FnZSkpKSB7XG4gICAgdmFyIF9kZXZNZXNzYWdlU2V0NDtcbiAgICAoX2Rldk1lc3NhZ2VTZXQ0ID0gZGV2TWVzc2FnZVNldCkgPT0gbnVsbCB8fCBfZGV2TWVzc2FnZVNldDQuYWRkKG1lc3NhZ2UpO1xuICAgIGNvbnNvbGUuZXJyb3IobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZW5kZXJzIGEgcG9pbnRpbmcgYXJyb3cgdHJpYW5nbGUuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvRmxvYXRpbmdBcnJvd1xuICovXG5jb25zdCBGbG9hdGluZ0Fycm93ID0gLyojX19QVVJFX18qL1JlYWN0LmZvcndhcmRSZWYoZnVuY3Rpb24gRmxvYXRpbmdBcnJvdyhwcm9wcywgcmVmKSB7XG4gIGNvbnN0IHtcbiAgICBjb250ZXh0OiB7XG4gICAgICBwbGFjZW1lbnQsXG4gICAgICBlbGVtZW50czoge1xuICAgICAgICBmbG9hdGluZ1xuICAgICAgfSxcbiAgICAgIG1pZGRsZXdhcmVEYXRhOiB7XG4gICAgICAgIGFycm93XG4gICAgICB9XG4gICAgfSxcbiAgICB3aWR0aCA9IDE0LFxuICAgIGhlaWdodCA9IDcsXG4gICAgdGlwUmFkaXVzID0gMCxcbiAgICBzdHJva2VXaWR0aCA9IDAsXG4gICAgc3RhdGljT2Zmc2V0LFxuICAgIHN0cm9rZSxcbiAgICBkLFxuICAgIHN0eWxlOiB7XG4gICAgICB0cmFuc2Zvcm0sXG4gICAgICAuLi5yZXN0U3R5bGVcbiAgICB9ID0ge30sXG4gICAgLi4ucmVzdFxuICB9ID0gcHJvcHM7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICBpZiAoIXJlZikge1xuICAgICAgd2FybignVGhlIGByZWZgIHByb3AgaXMgcmVxdWlyZWQgZm9yIGBGbG9hdGluZ0Fycm93YC4nKTtcbiAgICB9XG4gIH1cbiAgY29uc3QgY2xpcFBhdGhJZCA9IHVzZUlkKCk7XG4gIGlmICghZmxvYXRpbmcpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIFN0cm9rZXMgbXVzdCBiZSBkb3VibGUgdGhlIGJvcmRlciB3aWR0aCwgdGhpcyBlbnN1cmVzIHRoZSBzdHJva2UncyB3aWR0aFxuICAvLyB3b3JrcyBhcyB5b3UnZCBleHBlY3QuXG4gIGNvbnN0IGNvbXB1dGVkU3Ryb2tlV2lkdGggPSBzdHJva2VXaWR0aCAqIDI7XG4gIGNvbnN0IGhhbGZTdHJva2VXaWR0aCA9IGNvbXB1dGVkU3Ryb2tlV2lkdGggLyAyO1xuICBjb25zdCBzdmdYID0gd2lkdGggLyAyICogKHRpcFJhZGl1cyAvIC04ICsgMSk7XG4gIGNvbnN0IHN2Z1kgPSBoZWlnaHQgLyAyICogdGlwUmFkaXVzIC8gNDtcbiAgY29uc3QgW3NpZGUsIGFsaWdubWVudF0gPSBwbGFjZW1lbnQuc3BsaXQoJy0nKTtcbiAgY29uc3QgaXNSVEwgPSBwbGF0Zm9ybS5pc1JUTChmbG9hdGluZyk7XG4gIGNvbnN0IGlzQ3VzdG9tU2hhcGUgPSAhIWQ7XG4gIGNvbnN0IGlzVmVydGljYWxTaWRlID0gc2lkZSA9PT0gJ3RvcCcgfHwgc2lkZSA9PT0gJ2JvdHRvbSc7XG4gIGNvbnN0IHlPZmZzZXRQcm9wID0gc3RhdGljT2Zmc2V0ICYmIGFsaWdubWVudCA9PT0gJ2VuZCcgPyAnYm90dG9tJyA6ICd0b3AnO1xuICBsZXQgeE9mZnNldFByb3AgPSBzdGF0aWNPZmZzZXQgJiYgYWxpZ25tZW50ID09PSAnZW5kJyA/ICdyaWdodCcgOiAnbGVmdCc7XG4gIGlmIChzdGF0aWNPZmZzZXQgJiYgaXNSVEwpIHtcbiAgICB4T2Zmc2V0UHJvcCA9IGFsaWdubWVudCA9PT0gJ2VuZCcgPyAnbGVmdCcgOiAncmlnaHQnO1xuICB9XG4gIGNvbnN0IGFycm93WCA9IChhcnJvdyA9PSBudWxsID8gdm9pZCAwIDogYXJyb3cueCkgIT0gbnVsbCA/IHN0YXRpY09mZnNldCB8fCBhcnJvdy54IDogJyc7XG4gIGNvbnN0IGFycm93WSA9IChhcnJvdyA9PSBudWxsID8gdm9pZCAwIDogYXJyb3cueSkgIT0gbnVsbCA/IHN0YXRpY09mZnNldCB8fCBhcnJvdy55IDogJyc7XG4gIGNvbnN0IGRWYWx1ZSA9IGQgfHwgJ00wLDAnICsgKFwiIEhcIiArIHdpZHRoKSArIChcIiBMXCIgKyAod2lkdGggLSBzdmdYKSArIFwiLFwiICsgKGhlaWdodCAtIHN2Z1kpKSArIChcIiBRXCIgKyB3aWR0aCAvIDIgKyBcIixcIiArIGhlaWdodCArIFwiIFwiICsgc3ZnWCArIFwiLFwiICsgKGhlaWdodCAtIHN2Z1kpKSArICcgWic7XG4gIGNvbnN0IHJvdGF0aW9uID0ge1xuICAgIHRvcDogaXNDdXN0b21TaGFwZSA/ICdyb3RhdGUoMTgwZGVnKScgOiAnJyxcbiAgICBsZWZ0OiBpc0N1c3RvbVNoYXBlID8gJ3JvdGF0ZSg5MGRlZyknIDogJ3JvdGF0ZSgtOTBkZWcpJyxcbiAgICBib3R0b206IGlzQ3VzdG9tU2hhcGUgPyAnJyA6ICdyb3RhdGUoMTgwZGVnKScsXG4gICAgcmlnaHQ6IGlzQ3VzdG9tU2hhcGUgPyAncm90YXRlKC05MGRlZyknIDogJ3JvdGF0ZSg5MGRlZyknXG4gIH1bc2lkZV07XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChcInN2Z1wiLCBfZXh0ZW5kcyh7fSwgcmVzdCwge1xuICAgIFwiYXJpYS1oaWRkZW5cIjogdHJ1ZSxcbiAgICByZWY6IHJlZixcbiAgICB3aWR0aDogaXNDdXN0b21TaGFwZSA/IHdpZHRoIDogd2lkdGggKyBjb21wdXRlZFN0cm9rZVdpZHRoLFxuICAgIGhlaWdodDogd2lkdGgsXG4gICAgdmlld0JveDogXCIwIDAgXCIgKyB3aWR0aCArIFwiIFwiICsgKGhlaWdodCA+IHdpZHRoID8gaGVpZ2h0IDogd2lkdGgpLFxuICAgIHN0eWxlOiB7XG4gICAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICAgIFt4T2Zmc2V0UHJvcF06IGFycm93WCxcbiAgICAgIFt5T2Zmc2V0UHJvcF06IGFycm93WSxcbiAgICAgIFtzaWRlXTogaXNWZXJ0aWNhbFNpZGUgfHwgaXNDdXN0b21TaGFwZSA/ICcxMDAlJyA6IFwiY2FsYygxMDAlIC0gXCIgKyBjb21wdXRlZFN0cm9rZVdpZHRoIC8gMiArIFwicHgpXCIsXG4gICAgICB0cmFuc2Zvcm06IFwiXCIgKyByb3RhdGlvbiArICh0cmFuc2Zvcm0gIT0gbnVsbCA/IHRyYW5zZm9ybSA6ICcnKSxcbiAgICAgIC4uLnJlc3RTdHlsZVxuICAgIH1cbiAgfSksIGNvbXB1dGVkU3Ryb2tlV2lkdGggPiAwICYmIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgY2xpcFBhdGg6IFwidXJsKCNcIiArIGNsaXBQYXRoSWQgKyBcIilcIixcbiAgICBmaWxsOiBcIm5vbmVcIixcbiAgICBzdHJva2U6IHN0cm9rZVxuICAgIC8vIEFjY291bnQgZm9yIHRoZSBzdHJva2Ugb24gdGhlIGZpbGwgcGF0aCByZW5kZXJlZCBiZWxvdy5cbiAgICAsXG4gICAgc3Ryb2tlV2lkdGg6IGNvbXB1dGVkU3Ryb2tlV2lkdGggKyAoZCA/IDAgOiAxKSxcbiAgICBkOiBkVmFsdWVcbiAgfSksIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KFwicGF0aFwiLCB7XG4gICAgc3Ryb2tlOiBjb21wdXRlZFN0cm9rZVdpZHRoICYmICFkID8gcmVzdC5maWxsIDogJ25vbmUnLFxuICAgIGQ6IGRWYWx1ZVxuICB9KSwgLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJjbGlwUGF0aFwiLCB7XG4gICAgaWQ6IGNsaXBQYXRoSWRcbiAgfSwgLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJyZWN0XCIsIHtcbiAgICB4OiAtaGFsZlN0cm9rZVdpZHRoLFxuICAgIHk6IGhhbGZTdHJva2VXaWR0aCAqIChpc0N1c3RvbVNoYXBlID8gLTEgOiAxKSxcbiAgICB3aWR0aDogd2lkdGggKyBjb21wdXRlZFN0cm9rZVdpZHRoLFxuICAgIGhlaWdodDogd2lkdGhcbiAgfSkpKTtcbn0pO1xuXG5mdW5jdGlvbiBjcmVhdGVQdWJTdWIoKSB7XG4gIGNvbnN0IG1hcCA9IG5ldyBNYXAoKTtcbiAgcmV0dXJuIHtcbiAgICBlbWl0KGV2ZW50LCBkYXRhKSB7XG4gICAgICB2YXIgX21hcCRnZXQ7XG4gICAgICAoX21hcCRnZXQgPSBtYXAuZ2V0KGV2ZW50KSkgPT0gbnVsbCB8fCBfbWFwJGdldC5mb3JFYWNoKGhhbmRsZXIgPT4gaGFuZGxlcihkYXRhKSk7XG4gICAgfSxcbiAgICBvbihldmVudCwgbGlzdGVuZXIpIHtcbiAgICAgIG1hcC5zZXQoZXZlbnQsIFsuLi4obWFwLmdldChldmVudCkgfHwgW10pLCBsaXN0ZW5lcl0pO1xuICAgIH0sXG4gICAgb2ZmKGV2ZW50LCBsaXN0ZW5lcikge1xuICAgICAgdmFyIF9tYXAkZ2V0MjtcbiAgICAgIG1hcC5zZXQoZXZlbnQsICgoX21hcCRnZXQyID0gbWFwLmdldChldmVudCkpID09IG51bGwgPyB2b2lkIDAgOiBfbWFwJGdldDIuZmlsdGVyKGwgPT4gbCAhPT0gbGlzdGVuZXIpKSB8fCBbXSk7XG4gICAgfVxuICB9O1xufVxuXG5jb25zdCBGbG9hdGluZ05vZGVDb250ZXh0ID0gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUNvbnRleHQobnVsbCk7XG5jb25zdCBGbG9hdGluZ1RyZWVDb250ZXh0ID0gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUNvbnRleHQobnVsbCk7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgcGFyZW50IG5vZGUgaWQgZm9yIG5lc3RlZCBmbG9hdGluZyBlbGVtZW50cywgaWYgYXZhaWxhYmxlLlxuICogUmV0dXJucyBgbnVsbGAgZm9yIHRvcC1sZXZlbCBmbG9hdGluZyBlbGVtZW50cy5cbiAqL1xuY29uc3QgdXNlRmxvYXRpbmdQYXJlbnROb2RlSWQgPSAoKSA9PiB7XG4gIHZhciBfUmVhY3QkdXNlQ29udGV4dDtcbiAgcmV0dXJuICgoX1JlYWN0JHVzZUNvbnRleHQgPSBSZWFjdC51c2VDb250ZXh0KEZsb2F0aW5nTm9kZUNvbnRleHQpKSA9PSBudWxsID8gdm9pZCAwIDogX1JlYWN0JHVzZUNvbnRleHQuaWQpIHx8IG51bGw7XG59O1xuXG4vKipcbiAqIFJldHVybnMgdGhlIG5lYXJlc3QgZmxvYXRpbmcgdHJlZSBjb250ZXh0LCBpZiBhdmFpbGFibGUuXG4gKi9cbmNvbnN0IHVzZUZsb2F0aW5nVHJlZSA9ICgpID0+IFJlYWN0LnVzZUNvbnRleHQoRmxvYXRpbmdUcmVlQ29udGV4dCk7XG5cbi8qKlxuICogUmVnaXN0ZXJzIGEgbm9kZSBpbnRvIHRoZSBgRmxvYXRpbmdUcmVlYCwgcmV0dXJuaW5nIGl0cyBpZC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ1RyZWVcbiAqL1xuZnVuY3Rpb24gdXNlRmxvYXRpbmdOb2RlSWQoY3VzdG9tUGFyZW50SWQpIHtcbiAgY29uc3QgaWQgPSB1c2VJZCgpO1xuICBjb25zdCB0cmVlID0gdXNlRmxvYXRpbmdUcmVlKCk7XG4gIGNvbnN0IHJlYWN0UGFyZW50SWQgPSB1c2VGbG9hdGluZ1BhcmVudE5vZGVJZCgpO1xuICBjb25zdCBwYXJlbnRJZCA9IGN1c3RvbVBhcmVudElkIHx8IHJlYWN0UGFyZW50SWQ7XG4gIGluZGV4KCgpID0+IHtcbiAgICBjb25zdCBub2RlID0ge1xuICAgICAgaWQsXG4gICAgICBwYXJlbnRJZFxuICAgIH07XG4gICAgdHJlZSA9PSBudWxsIHx8IHRyZWUuYWRkTm9kZShub2RlKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgdHJlZSA9PSBudWxsIHx8IHRyZWUucmVtb3ZlTm9kZShub2RlKTtcbiAgICB9O1xuICB9LCBbdHJlZSwgaWQsIHBhcmVudElkXSk7XG4gIHJldHVybiBpZDtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBwYXJlbnQgbm9kZSBjb250ZXh0IGZvciBuZXN0ZWQgZmxvYXRpbmcgZWxlbWVudHMuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvRmxvYXRpbmdUcmVlXG4gKi9cbmZ1bmN0aW9uIEZsb2F0aW5nTm9kZShwcm9wcykge1xuICBjb25zdCB7XG4gICAgY2hpbGRyZW4sXG4gICAgaWRcbiAgfSA9IHByb3BzO1xuICBjb25zdCBwYXJlbnRJZCA9IHVzZUZsb2F0aW5nUGFyZW50Tm9kZUlkKCk7XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChGbG9hdGluZ05vZGVDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgdmFsdWU6IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAgIGlkLFxuICAgICAgcGFyZW50SWRcbiAgICB9KSwgW2lkLCBwYXJlbnRJZF0pXG4gIH0sIGNoaWxkcmVuKTtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBjb250ZXh0IGZvciBuZXN0ZWQgZmxvYXRpbmcgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBub3QgY2hpbGRyZW4gb2ZcbiAqIGVhY2ggb3RoZXIgb24gdGhlIERPTS5cbiAqIFRoaXMgaXMgbm90IG5lY2Vzc2FyeSBpbiBhbGwgY2FzZXMsIGV4Y2VwdCB3aGVuIHRoZXJlIG11c3QgYmUgZXhwbGljaXQgY29tbXVuaWNhdGlvbiBiZXR3ZWVuIHBhcmVudCBhbmQgY2hpbGQgZmxvYXRpbmcgZWxlbWVudHMuIEl0IGlzIG5lY2Vzc2FyeSBmb3I6XG4gKiAtIFRoZSBgYnViYmxlc2Agb3B0aW9uIGluIHRoZSBgdXNlRGlzbWlzcygpYCBIb29rXG4gKiAtIE5lc3RlZCB2aXJ0dWFsIGxpc3QgbmF2aWdhdGlvblxuICogLSBOZXN0ZWQgZmxvYXRpbmcgZWxlbWVudHMgdGhhdCBlYWNoIG9wZW4gb24gaG92ZXJcbiAqIC0gQ3VzdG9tIGNvbW11bmljYXRpb24gYmV0d2VlbiBwYXJlbnQgYW5kIGNoaWxkIGZsb2F0aW5nIGVsZW1lbnRzXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvRmxvYXRpbmdUcmVlXG4gKi9cbmZ1bmN0aW9uIEZsb2F0aW5nVHJlZShwcm9wcykge1xuICBjb25zdCB7XG4gICAgY2hpbGRyZW5cbiAgfSA9IHByb3BzO1xuICBjb25zdCBub2Rlc1JlZiA9IFJlYWN0LnVzZVJlZihbXSk7XG4gIGNvbnN0IGFkZE5vZGUgPSBSZWFjdC51c2VDYWxsYmFjayhub2RlID0+IHtcbiAgICBub2Rlc1JlZi5jdXJyZW50ID0gWy4uLm5vZGVzUmVmLmN1cnJlbnQsIG5vZGVdO1xuICB9LCBbXSk7XG4gIGNvbnN0IHJlbW92ZU5vZGUgPSBSZWFjdC51c2VDYWxsYmFjayhub2RlID0+IHtcbiAgICBub2Rlc1JlZi5jdXJyZW50ID0gbm9kZXNSZWYuY3VycmVudC5maWx0ZXIobiA9PiBuICE9PSBub2RlKTtcbiAgfSwgW10pO1xuICBjb25zdCBldmVudHMgPSBSZWFjdC51c2VTdGF0ZSgoKSA9PiBjcmVhdGVQdWJTdWIoKSlbMF07XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChGbG9hdGluZ1RyZWVDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgdmFsdWU6IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAgIG5vZGVzUmVmLFxuICAgICAgYWRkTm9kZSxcbiAgICAgIHJlbW92ZU5vZGUsXG4gICAgICBldmVudHNcbiAgICB9KSwgW2FkZE5vZGUsIHJlbW92ZU5vZGUsIGV2ZW50c10pXG4gIH0sIGNoaWxkcmVuKTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlQXR0cmlidXRlKG5hbWUpIHtcbiAgcmV0dXJuIFwiZGF0YS1mbG9hdGluZy11aS1cIiArIG5hbWU7XG59XG5cbmZ1bmN0aW9uIHVzZUxhdGVzdFJlZih2YWx1ZSkge1xuICBjb25zdCByZWYgPSB1c2VSZWYodmFsdWUpO1xuICBpbmRleCgoKSA9PiB7XG4gICAgcmVmLmN1cnJlbnQgPSB2YWx1ZTtcbiAgfSk7XG4gIHJldHVybiByZWY7XG59XG5cbmNvbnN0IHNhZmVQb2x5Z29uSWRlbnRpZmllciA9IC8qI19fUFVSRV9fKi9jcmVhdGVBdHRyaWJ1dGUoJ3NhZmUtcG9seWdvbicpO1xuZnVuY3Rpb24gZ2V0RGVsYXkodmFsdWUsIHByb3AsIHBvaW50ZXJUeXBlKSB7XG4gIGlmIChwb2ludGVyVHlwZSAmJiAhaXNNb3VzZUxpa2VQb2ludGVyVHlwZShwb2ludGVyVHlwZSkpIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gdmFsdWUgPT0gbnVsbCA/IHZvaWQgMCA6IHZhbHVlW3Byb3BdO1xufVxuLyoqXG4gKiBPcGVucyB0aGUgZmxvYXRpbmcgZWxlbWVudCB3aGlsZSBob3ZlcmluZyBvdmVyIHRoZSByZWZlcmVuY2UgZWxlbWVudCwgbGlrZVxuICogQ1NTIGA6aG92ZXJgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZUhvdmVyXG4gKi9cbmZ1bmN0aW9uIHVzZUhvdmVyKGNvbnRleHQsIHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgb3BlbixcbiAgICBvbk9wZW5DaGFuZ2UsXG4gICAgZGF0YVJlZixcbiAgICBldmVudHMsXG4gICAgZWxlbWVudHM6IHtcbiAgICAgIGRvbVJlZmVyZW5jZSxcbiAgICAgIGZsb2F0aW5nXG4gICAgfVxuICB9ID0gY29udGV4dDtcbiAgY29uc3Qge1xuICAgIGVuYWJsZWQgPSB0cnVlLFxuICAgIGRlbGF5ID0gMCxcbiAgICBoYW5kbGVDbG9zZSA9IG51bGwsXG4gICAgbW91c2VPbmx5ID0gZmFsc2UsXG4gICAgcmVzdE1zID0gMCxcbiAgICBtb3ZlID0gdHJ1ZVxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IHRyZWUgPSB1c2VGbG9hdGluZ1RyZWUoKTtcbiAgY29uc3QgcGFyZW50SWQgPSB1c2VGbG9hdGluZ1BhcmVudE5vZGVJZCgpO1xuICBjb25zdCBoYW5kbGVDbG9zZVJlZiA9IHVzZUxhdGVzdFJlZihoYW5kbGVDbG9zZSk7XG4gIGNvbnN0IGRlbGF5UmVmID0gdXNlTGF0ZXN0UmVmKGRlbGF5KTtcbiAgY29uc3QgcG9pbnRlclR5cGVSZWYgPSBSZWFjdC51c2VSZWYoKTtcbiAgY29uc3QgdGltZW91dFJlZiA9IFJlYWN0LnVzZVJlZigtMSk7XG4gIGNvbnN0IGhhbmRsZXJSZWYgPSBSZWFjdC51c2VSZWYoKTtcbiAgY29uc3QgcmVzdFRpbWVvdXRSZWYgPSBSZWFjdC51c2VSZWYoLTEpO1xuICBjb25zdCBibG9ja01vdXNlTW92ZVJlZiA9IFJlYWN0LnVzZVJlZih0cnVlKTtcbiAgY29uc3QgcGVyZm9ybWVkUG9pbnRlckV2ZW50c011dGF0aW9uUmVmID0gUmVhY3QudXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgdW5iaW5kTW91c2VNb3ZlUmVmID0gUmVhY3QudXNlUmVmKCgpID0+IHt9KTtcbiAgY29uc3QgaXNIb3Zlck9wZW4gPSBSZWFjdC51c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgdmFyIF9kYXRhUmVmJGN1cnJlbnQkb3BlbjtcbiAgICBjb25zdCB0eXBlID0gKF9kYXRhUmVmJGN1cnJlbnQkb3BlbiA9IGRhdGFSZWYuY3VycmVudC5vcGVuRXZlbnQpID09IG51bGwgPyB2b2lkIDAgOiBfZGF0YVJlZiRjdXJyZW50JG9wZW4udHlwZTtcbiAgICByZXR1cm4gKHR5cGUgPT0gbnVsbCA/IHZvaWQgMCA6IHR5cGUuaW5jbHVkZXMoJ21vdXNlJykpICYmIHR5cGUgIT09ICdtb3VzZWRvd24nO1xuICB9LCBbZGF0YVJlZl0pO1xuXG4gIC8vIFdoZW4gY2xvc2luZyBiZWZvcmUgb3BlbmluZywgY2xlYXIgdGhlIGRlbGF5IHRpbWVvdXRzIHRvIGNhbmNlbCBpdFxuICAvLyBmcm9tIHNob3dpbmcuXG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFlbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZ1bmN0aW9uIG9uT3BlbkNoYW5nZShfcmVmKSB7XG4gICAgICBsZXQge1xuICAgICAgICBvcGVuXG4gICAgICB9ID0gX3JlZjtcbiAgICAgIGlmICghb3Blbikge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHJlc3RUaW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgICAgICBibG9ja01vdXNlTW92ZVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgZXZlbnRzLm9uKCdvcGVuY2hhbmdlJywgb25PcGVuQ2hhbmdlKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZXZlbnRzLm9mZignb3BlbmNoYW5nZScsIG9uT3BlbkNoYW5nZSk7XG4gICAgfTtcbiAgfSwgW2VuYWJsZWQsIGV2ZW50c10pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCB8fCAhaGFuZGxlQ2xvc2VSZWYuY3VycmVudCB8fCAhb3Blbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBmdW5jdGlvbiBvbkxlYXZlKGV2ZW50KSB7XG4gICAgICBpZiAoaXNIb3Zlck9wZW4oKSkge1xuICAgICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50LCAnaG92ZXInKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgaHRtbCA9IGdldERvY3VtZW50KGZsb2F0aW5nKS5kb2N1bWVudEVsZW1lbnQ7XG4gICAgaHRtbC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgb25MZWF2ZSk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGh0bWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIG9uTGVhdmUpO1xuICAgIH07XG4gIH0sIFtmbG9hdGluZywgb3Blbiwgb25PcGVuQ2hhbmdlLCBlbmFibGVkLCBoYW5kbGVDbG9zZVJlZiwgaXNIb3Zlck9wZW5dKTtcbiAgY29uc3QgY2xvc2VXaXRoRGVsYXkgPSBSZWFjdC51c2VDYWxsYmFjayhmdW5jdGlvbiAoZXZlbnQsIHJ1bkVsc2VCcmFuY2gsIHJlYXNvbikge1xuICAgIGlmIChydW5FbHNlQnJhbmNoID09PSB2b2lkIDApIHtcbiAgICAgIHJ1bkVsc2VCcmFuY2ggPSB0cnVlO1xuICAgIH1cbiAgICBpZiAocmVhc29uID09PSB2b2lkIDApIHtcbiAgICAgIHJlYXNvbiA9ICdob3Zlcic7XG4gICAgfVxuICAgIGNvbnN0IGNsb3NlRGVsYXkgPSBnZXREZWxheShkZWxheVJlZi5jdXJyZW50LCAnY2xvc2UnLCBwb2ludGVyVHlwZVJlZi5jdXJyZW50KTtcbiAgICBpZiAoY2xvc2VEZWxheSAmJiAhaGFuZGxlclJlZi5jdXJyZW50KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgIHRpbWVvdXRSZWYuY3VycmVudCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IG9uT3BlbkNoYW5nZShmYWxzZSwgZXZlbnQsIHJlYXNvbiksIGNsb3NlRGVsYXkpO1xuICAgIH0gZWxzZSBpZiAocnVuRWxzZUJyYW5jaCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRSZWYuY3VycmVudCk7XG4gICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50LCByZWFzb24pO1xuICAgIH1cbiAgfSwgW2RlbGF5UmVmLCBvbk9wZW5DaGFuZ2VdKTtcbiAgY29uc3QgY2xlYW51cE1vdXNlTW92ZUhhbmRsZXIgPSB1c2VFZmZlY3RFdmVudCgoKSA9PiB7XG4gICAgdW5iaW5kTW91c2VNb3ZlUmVmLmN1cnJlbnQoKTtcbiAgICBoYW5kbGVyUmVmLmN1cnJlbnQgPSB1bmRlZmluZWQ7XG4gIH0pO1xuICBjb25zdCBjbGVhclBvaW50ZXJFdmVudHMgPSB1c2VFZmZlY3RFdmVudCgoKSA9PiB7XG4gICAgaWYgKHBlcmZvcm1lZFBvaW50ZXJFdmVudHNNdXRhdGlvblJlZi5jdXJyZW50KSB7XG4gICAgICBjb25zdCBib2R5ID0gZ2V0RG9jdW1lbnQoZmxvYXRpbmcpLmJvZHk7XG4gICAgICBib2R5LnN0eWxlLnBvaW50ZXJFdmVudHMgPSAnJztcbiAgICAgIGJvZHkucmVtb3ZlQXR0cmlidXRlKHNhZmVQb2x5Z29uSWRlbnRpZmllcik7XG4gICAgICBwZXJmb3JtZWRQb2ludGVyRXZlbnRzTXV0YXRpb25SZWYuY3VycmVudCA9IGZhbHNlO1xuICAgIH1cbiAgfSk7XG5cbiAgLy8gUmVnaXN0ZXJpbmcgdGhlIG1vdXNlIGV2ZW50cyBvbiB0aGUgcmVmZXJlbmNlIGRpcmVjdGx5IHRvIGJ5cGFzcyBSZWFjdCdzXG4gIC8vIGRlbGVnYXRpb24gc3lzdGVtLiBJZiB0aGUgY3Vyc29yIHdhcyBvbiBhIGRpc2FibGVkIGVsZW1lbnQgYW5kIHRoZW4gZW50ZXJlZFxuICAvLyB0aGUgcmVmZXJlbmNlIChubyBnYXApLCBgbW91c2VlbnRlcmAgZG9lc24ndCBmaXJlIGluIHRoZSBkZWxlZ2F0aW9uIHN5c3RlbS5cbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZnVuY3Rpb24gaXNDbGlja0xpa2VPcGVuRXZlbnQoKSB7XG4gICAgICByZXR1cm4gZGF0YVJlZi5jdXJyZW50Lm9wZW5FdmVudCA/IFsnY2xpY2snLCAnbW91c2Vkb3duJ10uaW5jbHVkZXMoZGF0YVJlZi5jdXJyZW50Lm9wZW5FdmVudC50eXBlKSA6IGZhbHNlO1xuICAgIH1cbiAgICBmdW5jdGlvbiBvbk1vdXNlRW50ZXIoZXZlbnQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgICAgYmxvY2tNb3VzZU1vdmVSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgaWYgKG1vdXNlT25seSAmJiAhaXNNb3VzZUxpa2VQb2ludGVyVHlwZShwb2ludGVyVHlwZVJlZi5jdXJyZW50KSB8fCByZXN0TXMgPiAwICYmICFnZXREZWxheShkZWxheVJlZi5jdXJyZW50LCAnb3BlbicpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG9wZW5EZWxheSA9IGdldERlbGF5KGRlbGF5UmVmLmN1cnJlbnQsICdvcGVuJywgcG9pbnRlclR5cGVSZWYuY3VycmVudCk7XG4gICAgICBpZiAob3BlbkRlbGF5KSB7XG4gICAgICAgIHRpbWVvdXRSZWYuY3VycmVudCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBvbk9wZW5DaGFuZ2UodHJ1ZSwgZXZlbnQsICdob3ZlcicpO1xuICAgICAgICB9LCBvcGVuRGVsYXkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb25PcGVuQ2hhbmdlKHRydWUsIGV2ZW50LCAnaG92ZXInKTtcbiAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gb25Nb3VzZUxlYXZlKGV2ZW50KSB7XG4gICAgICBpZiAoaXNDbGlja0xpa2VPcGVuRXZlbnQoKSkgcmV0dXJuO1xuICAgICAgdW5iaW5kTW91c2VNb3ZlUmVmLmN1cnJlbnQoKTtcbiAgICAgIGNvbnN0IGRvYyA9IGdldERvY3VtZW50KGZsb2F0aW5nKTtcbiAgICAgIGNsZWFyVGltZW91dChyZXN0VGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgIGlmIChoYW5kbGVDbG9zZVJlZi5jdXJyZW50ICYmIGRhdGFSZWYuY3VycmVudC5mbG9hdGluZ0NvbnRleHQpIHtcbiAgICAgICAgLy8gUHJldmVudCBjbGVhcmluZyBgb25TY3JvbGxNb3VzZUxlYXZlYCB0aW1lb3V0LlxuICAgICAgICBpZiAoIW9wZW4pIHtcbiAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgfVxuICAgICAgICBoYW5kbGVyUmVmLmN1cnJlbnQgPSBoYW5kbGVDbG9zZVJlZi5jdXJyZW50KHtcbiAgICAgICAgICAuLi5kYXRhUmVmLmN1cnJlbnQuZmxvYXRpbmdDb250ZXh0LFxuICAgICAgICAgIHRyZWUsXG4gICAgICAgICAgeDogZXZlbnQuY2xpZW50WCxcbiAgICAgICAgICB5OiBldmVudC5jbGllbnRZLFxuICAgICAgICAgIG9uQ2xvc2UoKSB7XG4gICAgICAgICAgICBjbGVhclBvaW50ZXJFdmVudHMoKTtcbiAgICAgICAgICAgIGNsZWFudXBNb3VzZU1vdmVIYW5kbGVyKCk7XG4gICAgICAgICAgICBjbG9zZVdpdGhEZWxheShldmVudCwgdHJ1ZSwgJ3NhZmUtcG9seWdvbicpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSBoYW5kbGVyUmVmLmN1cnJlbnQ7XG4gICAgICAgIGRvYy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCBoYW5kbGVyKTtcbiAgICAgICAgdW5iaW5kTW91c2VNb3ZlUmVmLmN1cnJlbnQgPSAoKSA9PiB7XG4gICAgICAgICAgZG9jLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIGhhbmRsZXIpO1xuICAgICAgICB9O1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIEFsbG93IGludGVyYWN0aXZpdHkgd2l0aG91dCBgc2FmZVBvbHlnb25gIG9uIHRvdWNoIGRldmljZXMuIFdpdGggYVxuICAgICAgLy8gcG9pbnRlciwgYSBzaG9ydCBjbG9zZSBkZWxheSBpcyBhbiBhbHRlcm5hdGl2ZSwgc28gaXQgc2hvdWxkIHdvcmtcbiAgICAgIC8vIGNvbnNpc3RlbnRseS5cbiAgICAgIGNvbnN0IHNob3VsZENsb3NlID0gcG9pbnRlclR5cGVSZWYuY3VycmVudCA9PT0gJ3RvdWNoJyA/ICFjb250YWlucyhmbG9hdGluZywgZXZlbnQucmVsYXRlZFRhcmdldCkgOiB0cnVlO1xuICAgICAgaWYgKHNob3VsZENsb3NlKSB7XG4gICAgICAgIGNsb3NlV2l0aERlbGF5KGV2ZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgdGhlIGZsb2F0aW5nIGVsZW1lbnQgY2xvc2VzIGFmdGVyIHNjcm9sbGluZyBldmVuIGlmIHRoZSBwb2ludGVyXG4gICAgLy8gZGlkIG5vdCBtb3ZlLlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mbG9hdGluZy11aS9mbG9hdGluZy11aS9kaXNjdXNzaW9ucy8xNjkyXG4gICAgZnVuY3Rpb24gb25TY3JvbGxNb3VzZUxlYXZlKGV2ZW50KSB7XG4gICAgICBpZiAoaXNDbGlja0xpa2VPcGVuRXZlbnQoKSkgcmV0dXJuO1xuICAgICAgaWYgKCFkYXRhUmVmLmN1cnJlbnQuZmxvYXRpbmdDb250ZXh0KSByZXR1cm47XG4gICAgICBoYW5kbGVDbG9zZVJlZi5jdXJyZW50ID09IG51bGwgfHwgaGFuZGxlQ2xvc2VSZWYuY3VycmVudCh7XG4gICAgICAgIC4uLmRhdGFSZWYuY3VycmVudC5mbG9hdGluZ0NvbnRleHQsXG4gICAgICAgIHRyZWUsXG4gICAgICAgIHg6IGV2ZW50LmNsaWVudFgsXG4gICAgICAgIHk6IGV2ZW50LmNsaWVudFksXG4gICAgICAgIG9uQ2xvc2UoKSB7XG4gICAgICAgICAgY2xlYXJQb2ludGVyRXZlbnRzKCk7XG4gICAgICAgICAgY2xlYW51cE1vdXNlTW92ZUhhbmRsZXIoKTtcbiAgICAgICAgICBjbG9zZVdpdGhEZWxheShldmVudCk7XG4gICAgICAgIH1cbiAgICAgIH0pKGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKGlzRWxlbWVudChkb21SZWZlcmVuY2UpKSB7XG4gICAgICBjb25zdCByZWYgPSBkb21SZWZlcmVuY2U7XG4gICAgICBvcGVuICYmIHJlZi5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgb25TY3JvbGxNb3VzZUxlYXZlKTtcbiAgICAgIGZsb2F0aW5nID09IG51bGwgfHwgZmxvYXRpbmcuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIG9uU2Nyb2xsTW91c2VMZWF2ZSk7XG4gICAgICBtb3ZlICYmIHJlZi5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCBvbk1vdXNlRW50ZXIsIHtcbiAgICAgICAgb25jZTogdHJ1ZVxuICAgICAgfSk7XG4gICAgICByZWYuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VlbnRlcicsIG9uTW91c2VFbnRlcik7XG4gICAgICByZWYuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIG9uTW91c2VMZWF2ZSk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBvcGVuICYmIHJlZi5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgb25TY3JvbGxNb3VzZUxlYXZlKTtcbiAgICAgICAgZmxvYXRpbmcgPT0gbnVsbCB8fCBmbG9hdGluZy5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgb25TY3JvbGxNb3VzZUxlYXZlKTtcbiAgICAgICAgbW92ZSAmJiByZWYucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgb25Nb3VzZUVudGVyKTtcbiAgICAgICAgcmVmLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZW50ZXInLCBvbk1vdXNlRW50ZXIpO1xuICAgICAgICByZWYucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2VsZWF2ZScsIG9uTW91c2VMZWF2ZSk7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2RvbVJlZmVyZW5jZSwgZmxvYXRpbmcsIGVuYWJsZWQsIGNvbnRleHQsIG1vdXNlT25seSwgcmVzdE1zLCBtb3ZlLCBjbG9zZVdpdGhEZWxheSwgY2xlYW51cE1vdXNlTW92ZUhhbmRsZXIsIGNsZWFyUG9pbnRlckV2ZW50cywgb25PcGVuQ2hhbmdlLCBvcGVuLCB0cmVlLCBkZWxheVJlZiwgaGFuZGxlQ2xvc2VSZWYsIGRhdGFSZWZdKTtcblxuICAvLyBCbG9jayBwb2ludGVyLWV2ZW50cyBvZiBldmVyeSBlbGVtZW50IG90aGVyIHRoYW4gdGhlIHJlZmVyZW5jZSBhbmQgZmxvYXRpbmdcbiAgLy8gd2hpbGUgdGhlIGZsb2F0aW5nIGVsZW1lbnQgaXMgb3BlbiBhbmQgaGFzIGEgYGhhbmRsZUNsb3NlYCBoYW5kbGVyLiBBbHNvXG4gIC8vIGhhbmRsZXMgbmVzdGVkIGZsb2F0aW5nIGVsZW1lbnRzLlxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZmxvYXRpbmctdWkvZmxvYXRpbmctdWkvaXNzdWVzLzE3MjJcbiAgaW5kZXgoKCkgPT4ge1xuICAgIHZhciBfaGFuZGxlQ2xvc2VSZWYkY3VycmU7XG4gICAgaWYgKCFlbmFibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChvcGVuICYmIChfaGFuZGxlQ2xvc2VSZWYkY3VycmUgPSBoYW5kbGVDbG9zZVJlZi5jdXJyZW50KSAhPSBudWxsICYmIF9oYW5kbGVDbG9zZVJlZiRjdXJyZS5fX29wdGlvbnMuYmxvY2tQb2ludGVyRXZlbnRzICYmIGlzSG92ZXJPcGVuKCkpIHtcbiAgICAgIGNvbnN0IGJvZHkgPSBnZXREb2N1bWVudChmbG9hdGluZykuYm9keTtcbiAgICAgIGJvZHkuc2V0QXR0cmlidXRlKHNhZmVQb2x5Z29uSWRlbnRpZmllciwgJycpO1xuICAgICAgYm9keS5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnO1xuICAgICAgcGVyZm9ybWVkUG9pbnRlckV2ZW50c011dGF0aW9uUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgaWYgKGlzRWxlbWVudChkb21SZWZlcmVuY2UpICYmIGZsb2F0aW5nKSB7XG4gICAgICAgIHZhciBfdHJlZSRub2Rlc1JlZiRjdXJyZW47XG4gICAgICAgIGNvbnN0IHJlZiA9IGRvbVJlZmVyZW5jZTtcbiAgICAgICAgY29uc3QgcGFyZW50RmxvYXRpbmcgPSB0cmVlID09IG51bGwgfHwgKF90cmVlJG5vZGVzUmVmJGN1cnJlbiA9IHRyZWUubm9kZXNSZWYuY3VycmVudC5maW5kKG5vZGUgPT4gbm9kZS5pZCA9PT0gcGFyZW50SWQpKSA9PSBudWxsIHx8IChfdHJlZSRub2Rlc1JlZiRjdXJyZW4gPSBfdHJlZSRub2Rlc1JlZiRjdXJyZW4uY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF90cmVlJG5vZGVzUmVmJGN1cnJlbi5lbGVtZW50cy5mbG9hdGluZztcbiAgICAgICAgaWYgKHBhcmVudEZsb2F0aW5nKSB7XG4gICAgICAgICAgcGFyZW50RmxvYXRpbmcuc3R5bGUucG9pbnRlckV2ZW50cyA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIHJlZi5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ2F1dG8nO1xuICAgICAgICBmbG9hdGluZy5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ2F1dG8nO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIHJlZi5zdHlsZS5wb2ludGVyRXZlbnRzID0gJyc7XG4gICAgICAgICAgZmxvYXRpbmcuc3R5bGUucG9pbnRlckV2ZW50cyA9ICcnO1xuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2VuYWJsZWQsIG9wZW4sIHBhcmVudElkLCBmbG9hdGluZywgZG9tUmVmZXJlbmNlLCB0cmVlLCBoYW5kbGVDbG9zZVJlZiwgaXNIb3Zlck9wZW5dKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmICghb3Blbikge1xuICAgICAgcG9pbnRlclR5cGVSZWYuY3VycmVudCA9IHVuZGVmaW5lZDtcbiAgICAgIGNsZWFudXBNb3VzZU1vdmVIYW5kbGVyKCk7XG4gICAgICBjbGVhclBvaW50ZXJFdmVudHMoKTtcbiAgICB9XG4gIH0sIFtvcGVuLCBjbGVhbnVwTW91c2VNb3ZlSGFuZGxlciwgY2xlYXJQb2ludGVyRXZlbnRzXSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNsZWFudXBNb3VzZU1vdmVIYW5kbGVyKCk7XG4gICAgICBjbGVhclRpbWVvdXQodGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgIGNsZWFyVGltZW91dChyZXN0VGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgIGNsZWFyUG9pbnRlckV2ZW50cygpO1xuICAgIH07XG4gIH0sIFtlbmFibGVkLCBkb21SZWZlcmVuY2UsIGNsZWFudXBNb3VzZU1vdmVIYW5kbGVyLCBjbGVhclBvaW50ZXJFdmVudHNdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBmdW5jdGlvbiBzZXRQb2ludGVyUmVmKGV2ZW50KSB7XG4gICAgICBwb2ludGVyVHlwZVJlZi5jdXJyZW50ID0gZXZlbnQucG9pbnRlclR5cGU7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICByZWZlcmVuY2U6IHtcbiAgICAgICAgb25Qb2ludGVyRG93bjogc2V0UG9pbnRlclJlZixcbiAgICAgICAgb25Qb2ludGVyRW50ZXI6IHNldFBvaW50ZXJSZWYsXG4gICAgICAgIG9uTW91c2VNb3ZlKGV2ZW50KSB7XG4gICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgbmF0aXZlRXZlbnRcbiAgICAgICAgICB9ID0gZXZlbnQ7XG4gICAgICAgICAgZnVuY3Rpb24gaGFuZGxlTW91c2VNb3ZlKCkge1xuICAgICAgICAgICAgaWYgKCFibG9ja01vdXNlTW92ZVJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgIG9uT3BlbkNoYW5nZSh0cnVlLCBuYXRpdmVFdmVudCwgJ2hvdmVyJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChtb3VzZU9ubHkgJiYgIWlzTW91c2VMaWtlUG9pbnRlclR5cGUocG9pbnRlclR5cGVSZWYuY3VycmVudCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKG9wZW4gfHwgcmVzdE1zID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGNsZWFyVGltZW91dChyZXN0VGltZW91dFJlZi5jdXJyZW50KTtcbiAgICAgICAgICBpZiAocG9pbnRlclR5cGVSZWYuY3VycmVudCA9PT0gJ3RvdWNoJykge1xuICAgICAgICAgICAgaGFuZGxlTW91c2VNb3ZlKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3RUaW1lb3V0UmVmLmN1cnJlbnQgPSB3aW5kb3cuc2V0VGltZW91dChoYW5kbGVNb3VzZU1vdmUsIHJlc3RNcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZmxvYXRpbmc6IHtcbiAgICAgICAgb25Nb3VzZUVudGVyKCkge1xuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgICAgICB9LFxuICAgICAgICBvbk1vdXNlTGVhdmUoZXZlbnQpIHtcbiAgICAgICAgICBjbG9zZVdpdGhEZWxheShldmVudC5uYXRpdmVFdmVudCwgZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfSwgW2VuYWJsZWQsIG1vdXNlT25seSwgb3BlbiwgcmVzdE1zLCBvbk9wZW5DaGFuZ2UsIGNsb3NlV2l0aERlbGF5XSk7XG59XG5cbmNvbnN0IE5PT1AgPSAoKSA9PiB7fTtcbmNvbnN0IEZsb2F0aW5nRGVsYXlHcm91cENvbnRleHQgPSAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlQ29udGV4dCh7XG4gIGRlbGF5OiAwLFxuICBpbml0aWFsRGVsYXk6IDAsXG4gIHRpbWVvdXRNczogMCxcbiAgY3VycmVudElkOiBudWxsLFxuICBzZXRDdXJyZW50SWQ6IE5PT1AsXG4gIHNldFN0YXRlOiBOT09QLFxuICBpc0luc3RhbnRQaGFzZTogZmFsc2Vcbn0pO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKiBVc2UgdGhlIHJldHVybiB2YWx1ZSBvZiBgdXNlRGVsYXlHcm91cCgpYCBpbnN0ZWFkLlxuICovXG5jb25zdCB1c2VEZWxheUdyb3VwQ29udGV4dCA9ICgpID0+IFJlYWN0LnVzZUNvbnRleHQoRmxvYXRpbmdEZWxheUdyb3VwQ29udGV4dCk7XG4vKipcbiAqIFByb3ZpZGVzIGNvbnRleHQgZm9yIGEgZ3JvdXAgb2YgZmxvYXRpbmcgZWxlbWVudHMgdGhhdCBzaG91bGQgc2hhcmUgYVxuICogYGRlbGF5YC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ0RlbGF5R3JvdXBcbiAqL1xuZnVuY3Rpb24gRmxvYXRpbmdEZWxheUdyb3VwKHByb3BzKSB7XG4gIGNvbnN0IHtcbiAgICBjaGlsZHJlbixcbiAgICBkZWxheSxcbiAgICB0aW1lb3V0TXMgPSAwXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgW3N0YXRlLCBzZXRTdGF0ZV0gPSBSZWFjdC51c2VSZWR1Y2VyKChwcmV2LCBuZXh0KSA9PiAoe1xuICAgIC4uLnByZXYsXG4gICAgLi4ubmV4dFxuICB9KSwge1xuICAgIGRlbGF5LFxuICAgIHRpbWVvdXRNcyxcbiAgICBpbml0aWFsRGVsYXk6IGRlbGF5LFxuICAgIGN1cnJlbnRJZDogbnVsbCxcbiAgICBpc0luc3RhbnRQaGFzZTogZmFsc2VcbiAgfSk7XG4gIGNvbnN0IGluaXRpYWxDdXJyZW50SWRSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNldEN1cnJlbnRJZCA9IFJlYWN0LnVzZUNhbGxiYWNrKGN1cnJlbnRJZCA9PiB7XG4gICAgc2V0U3RhdGUoe1xuICAgICAgY3VycmVudElkXG4gICAgfSk7XG4gIH0sIFtdKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmIChzdGF0ZS5jdXJyZW50SWQpIHtcbiAgICAgIGlmIChpbml0aWFsQ3VycmVudElkUmVmLmN1cnJlbnQgPT09IG51bGwpIHtcbiAgICAgICAgaW5pdGlhbEN1cnJlbnRJZFJlZi5jdXJyZW50ID0gc3RhdGUuY3VycmVudElkO1xuICAgICAgfSBlbHNlIGlmICghc3RhdGUuaXNJbnN0YW50UGhhc2UpIHtcbiAgICAgICAgc2V0U3RhdGUoe1xuICAgICAgICAgIGlzSW5zdGFudFBoYXNlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoc3RhdGUuaXNJbnN0YW50UGhhc2UpIHtcbiAgICAgICAgc2V0U3RhdGUoe1xuICAgICAgICAgIGlzSW5zdGFudFBoYXNlOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIGluaXRpYWxDdXJyZW50SWRSZWYuY3VycmVudCA9IG51bGw7XG4gICAgfVxuICB9LCBbc3RhdGUuY3VycmVudElkLCBzdGF0ZS5pc0luc3RhbnRQaGFzZV0pO1xuICByZXR1cm4gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoRmxvYXRpbmdEZWxheUdyb3VwQ29udGV4dC5Qcm92aWRlciwge1xuICAgIHZhbHVlOiBSZWFjdC51c2VNZW1vKCgpID0+ICh7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIHNldFN0YXRlLFxuICAgICAgc2V0Q3VycmVudElkXG4gICAgfSksIFtzdGF0ZSwgc2V0Q3VycmVudElkXSlcbiAgfSwgY2hpbGRyZW4pO1xufVxuLyoqXG4gKiBFbmFibGVzIGdyb3VwaW5nIHdoZW4gY2FsbGVkIGluc2lkZSBhIGNvbXBvbmVudCB0aGF0J3MgYSBjaGlsZCBvZiBhXG4gKiBgRmxvYXRpbmdEZWxheUdyb3VwYC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ0RlbGF5R3JvdXBcbiAqL1xuZnVuY3Rpb24gdXNlRGVsYXlHcm91cChjb250ZXh0LCBvcHRpb25zKSB7XG4gIGlmIChvcHRpb25zID09PSB2b2lkIDApIHtcbiAgICBvcHRpb25zID0ge307XG4gIH1cbiAgY29uc3Qge1xuICAgIG9wZW4sXG4gICAgb25PcGVuQ2hhbmdlLFxuICAgIGZsb2F0aW5nSWRcbiAgfSA9IGNvbnRleHQ7XG4gIGNvbnN0IHtcbiAgICBpZDogb3B0aW9uSWRcbiAgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IGlkID0gb3B0aW9uSWQgIT0gbnVsbCA/IG9wdGlvbklkIDogZmxvYXRpbmdJZDtcbiAgY29uc3QgZ3JvdXBDb250ZXh0ID0gdXNlRGVsYXlHcm91cENvbnRleHQoKTtcbiAgY29uc3Qge1xuICAgIGN1cnJlbnRJZCxcbiAgICBzZXRDdXJyZW50SWQsXG4gICAgaW5pdGlhbERlbGF5LFxuICAgIHNldFN0YXRlLFxuICAgIHRpbWVvdXRNc1xuICB9ID0gZ3JvdXBDb250ZXh0O1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKCFjdXJyZW50SWQpIHJldHVybjtcbiAgICBzZXRTdGF0ZSh7XG4gICAgICBkZWxheToge1xuICAgICAgICBvcGVuOiAxLFxuICAgICAgICBjbG9zZTogZ2V0RGVsYXkoaW5pdGlhbERlbGF5LCAnY2xvc2UnKVxuICAgICAgfVxuICAgIH0pO1xuICAgIGlmIChjdXJyZW50SWQgIT09IGlkKSB7XG4gICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UpO1xuICAgIH1cbiAgfSwgW2lkLCBvbk9wZW5DaGFuZ2UsIHNldFN0YXRlLCBjdXJyZW50SWQsIGluaXRpYWxEZWxheV0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgZnVuY3Rpb24gdW5zZXQoKSB7XG4gICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UpO1xuICAgICAgc2V0U3RhdGUoe1xuICAgICAgICBkZWxheTogaW5pdGlhbERlbGF5LFxuICAgICAgICBjdXJyZW50SWQ6IG51bGxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoIWN1cnJlbnRJZCkgcmV0dXJuO1xuICAgIGlmICghb3BlbiAmJiBjdXJyZW50SWQgPT09IGlkKSB7XG4gICAgICBpZiAodGltZW91dE1zKSB7XG4gICAgICAgIGNvbnN0IHRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCh1bnNldCwgdGltZW91dE1zKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICB1bnNldCgpO1xuICAgIH1cbiAgfSwgW29wZW4sIHNldFN0YXRlLCBjdXJyZW50SWQsIGlkLCBvbk9wZW5DaGFuZ2UsIGluaXRpYWxEZWxheSwgdGltZW91dE1zXSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoc2V0Q3VycmVudElkID09PSBOT09QIHx8ICFvcGVuKSByZXR1cm47XG4gICAgc2V0Q3VycmVudElkKGlkKTtcbiAgfSwgW29wZW4sIHNldEN1cnJlbnRJZCwgaWRdKTtcbiAgcmV0dXJuIGdyb3VwQ29udGV4dDtcbn1cblxuZnVuY3Rpb24gZ2V0QW5jZXN0b3JzKG5vZGVzLCBpZCkge1xuICB2YXIgX25vZGVzJGZpbmQ7XG4gIGxldCBhbGxBbmNlc3RvcnMgPSBbXTtcbiAgbGV0IGN1cnJlbnRQYXJlbnRJZCA9IChfbm9kZXMkZmluZCA9IG5vZGVzLmZpbmQobm9kZSA9PiBub2RlLmlkID09PSBpZCkpID09IG51bGwgPyB2b2lkIDAgOiBfbm9kZXMkZmluZC5wYXJlbnRJZDtcbiAgd2hpbGUgKGN1cnJlbnRQYXJlbnRJZCkge1xuICAgIGNvbnN0IGN1cnJlbnROb2RlID0gbm9kZXMuZmluZChub2RlID0+IG5vZGUuaWQgPT09IGN1cnJlbnRQYXJlbnRJZCk7XG4gICAgY3VycmVudFBhcmVudElkID0gY3VycmVudE5vZGUgPT0gbnVsbCA/IHZvaWQgMCA6IGN1cnJlbnROb2RlLnBhcmVudElkO1xuICAgIGlmIChjdXJyZW50Tm9kZSkge1xuICAgICAgYWxsQW5jZXN0b3JzID0gYWxsQW5jZXN0b3JzLmNvbmNhdChjdXJyZW50Tm9kZSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbGxBbmNlc3RvcnM7XG59XG5cbmZ1bmN0aW9uIGdldENoaWxkcmVuKG5vZGVzLCBpZCkge1xuICBsZXQgYWxsQ2hpbGRyZW4gPSBub2Rlcy5maWx0ZXIobm9kZSA9PiB7XG4gICAgdmFyIF9ub2RlJGNvbnRleHQ7XG4gICAgcmV0dXJuIG5vZGUucGFyZW50SWQgPT09IGlkICYmICgoX25vZGUkY29udGV4dCA9IG5vZGUuY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJGNvbnRleHQub3Blbik7XG4gIH0pO1xuICBsZXQgY3VycmVudENoaWxkcmVuID0gYWxsQ2hpbGRyZW47XG4gIHdoaWxlIChjdXJyZW50Q2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgY3VycmVudENoaWxkcmVuID0gbm9kZXMuZmlsdGVyKG5vZGUgPT4ge1xuICAgICAgdmFyIF9jdXJyZW50Q2hpbGRyZW47XG4gICAgICByZXR1cm4gKF9jdXJyZW50Q2hpbGRyZW4gPSBjdXJyZW50Q2hpbGRyZW4pID09IG51bGwgPyB2b2lkIDAgOiBfY3VycmVudENoaWxkcmVuLnNvbWUobiA9PiB7XG4gICAgICAgIHZhciBfbm9kZSRjb250ZXh0MjtcbiAgICAgICAgcmV0dXJuIG5vZGUucGFyZW50SWQgPT09IG4uaWQgJiYgKChfbm9kZSRjb250ZXh0MiA9IG5vZGUuY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJGNvbnRleHQyLm9wZW4pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgYWxsQ2hpbGRyZW4gPSBhbGxDaGlsZHJlbi5jb25jYXQoY3VycmVudENoaWxkcmVuKTtcbiAgfVxuICByZXR1cm4gYWxsQ2hpbGRyZW47XG59XG5mdW5jdGlvbiBnZXREZWVwZXN0Tm9kZShub2RlcywgaWQpIHtcbiAgbGV0IGRlZXBlc3ROb2RlSWQ7XG4gIGxldCBtYXhEZXB0aCA9IC0xO1xuICBmdW5jdGlvbiBmaW5kRGVlcGVzdChub2RlSWQsIGRlcHRoKSB7XG4gICAgaWYgKGRlcHRoID4gbWF4RGVwdGgpIHtcbiAgICAgIGRlZXBlc3ROb2RlSWQgPSBub2RlSWQ7XG4gICAgICBtYXhEZXB0aCA9IGRlcHRoO1xuICAgIH1cbiAgICBjb25zdCBjaGlsZHJlbiA9IGdldENoaWxkcmVuKG5vZGVzLCBub2RlSWQpO1xuICAgIGNoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4ge1xuICAgICAgZmluZERlZXBlc3QoY2hpbGQuaWQsIGRlcHRoICsgMSk7XG4gICAgfSk7XG4gIH1cbiAgZmluZERlZXBlc3QoaWQsIDApO1xuICByZXR1cm4gbm9kZXMuZmluZChub2RlID0+IG5vZGUuaWQgPT09IGRlZXBlc3ROb2RlSWQpO1xufVxuXG4vLyBNb2RpZmllZCB0byBhZGQgY29uZGl0aW9uYWwgYGFyaWEtaGlkZGVuYCBzdXBwb3J0OlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3RoZUthc2hleS9hcmlhLWhpZGRlbi9ibG9iLzkyMjBjOGY0YTRmZDM1ZjYzYmVlNTUxMGE5ZjQxYTM3MjY0MzgyZDQvc3JjL2luZGV4LnRzXG5sZXQgY291bnRlck1hcCA9IC8qI19fUFVSRV9fKi9uZXcgV2Vha01hcCgpO1xubGV0IHVuY29udHJvbGxlZEVsZW1lbnRzU2V0ID0gLyojX19QVVJFX18qL25ldyBXZWFrU2V0KCk7XG5sZXQgbWFya2VyTWFwID0ge307XG5sZXQgbG9ja0NvdW50ID0gMDtcbmNvbnN0IHN1cHBvcnRzSW5lcnQgPSAoKSA9PiB0eXBlb2YgSFRNTEVsZW1lbnQgIT09ICd1bmRlZmluZWQnICYmICdpbmVydCcgaW4gSFRNTEVsZW1lbnQucHJvdG90eXBlO1xuY29uc3QgdW53cmFwSG9zdCA9IG5vZGUgPT4gbm9kZSAmJiAobm9kZS5ob3N0IHx8IHVud3JhcEhvc3Qobm9kZS5wYXJlbnROb2RlKSk7XG5jb25zdCBjb3JyZWN0RWxlbWVudHMgPSAocGFyZW50LCB0YXJnZXRzKSA9PiB0YXJnZXRzLm1hcCh0YXJnZXQgPT4ge1xuICBpZiAocGFyZW50LmNvbnRhaW5zKHRhcmdldCkpIHtcbiAgICByZXR1cm4gdGFyZ2V0O1xuICB9XG4gIGNvbnN0IGNvcnJlY3RlZFRhcmdldCA9IHVud3JhcEhvc3QodGFyZ2V0KTtcbiAgaWYgKHBhcmVudC5jb250YWlucyhjb3JyZWN0ZWRUYXJnZXQpKSB7XG4gICAgcmV0dXJuIGNvcnJlY3RlZFRhcmdldDtcbiAgfVxuICByZXR1cm4gbnVsbDtcbn0pLmZpbHRlcih4ID0+IHggIT0gbnVsbCk7XG5mdW5jdGlvbiBhcHBseUF0dHJpYnV0ZVRvT3RoZXJzKHVuY29ycmVjdGVkQXZvaWRFbGVtZW50cywgYm9keSwgYXJpYUhpZGRlbiwgaW5lcnQpIHtcbiAgY29uc3QgbWFya2VyTmFtZSA9ICdkYXRhLWZsb2F0aW5nLXVpLWluZXJ0JztcbiAgY29uc3QgY29udHJvbEF0dHJpYnV0ZSA9IGluZXJ0ID8gJ2luZXJ0JyA6IGFyaWFIaWRkZW4gPyAnYXJpYS1oaWRkZW4nIDogbnVsbDtcbiAgY29uc3QgYXZvaWRFbGVtZW50cyA9IGNvcnJlY3RFbGVtZW50cyhib2R5LCB1bmNvcnJlY3RlZEF2b2lkRWxlbWVudHMpO1xuICBjb25zdCBlbGVtZW50c1RvS2VlcCA9IG5ldyBTZXQoKTtcbiAgY29uc3QgZWxlbWVudHNUb1N0b3AgPSBuZXcgU2V0KGF2b2lkRWxlbWVudHMpO1xuICBjb25zdCBoaWRkZW5FbGVtZW50cyA9IFtdO1xuICBpZiAoIW1hcmtlck1hcFttYXJrZXJOYW1lXSkge1xuICAgIG1hcmtlck1hcFttYXJrZXJOYW1lXSA9IG5ldyBXZWFrTWFwKCk7XG4gIH1cbiAgY29uc3QgbWFya2VyQ291bnRlciA9IG1hcmtlck1hcFttYXJrZXJOYW1lXTtcbiAgYXZvaWRFbGVtZW50cy5mb3JFYWNoKGtlZXApO1xuICBkZWVwKGJvZHkpO1xuICBlbGVtZW50c1RvS2VlcC5jbGVhcigpO1xuICBmdW5jdGlvbiBrZWVwKGVsKSB7XG4gICAgaWYgKCFlbCB8fCBlbGVtZW50c1RvS2VlcC5oYXMoZWwpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGVsZW1lbnRzVG9LZWVwLmFkZChlbCk7XG4gICAgZWwucGFyZW50Tm9kZSAmJiBrZWVwKGVsLnBhcmVudE5vZGUpO1xuICB9XG4gIGZ1bmN0aW9uIGRlZXAocGFyZW50KSB7XG4gICAgaWYgKCFwYXJlbnQgfHwgZWxlbWVudHNUb1N0b3AuaGFzKHBhcmVudCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgW10uZm9yRWFjaC5jYWxsKHBhcmVudC5jaGlsZHJlbiwgbm9kZSA9PiB7XG4gICAgICBpZiAoZ2V0Tm9kZU5hbWUobm9kZSkgPT09ICdzY3JpcHQnKSByZXR1cm47XG4gICAgICBpZiAoZWxlbWVudHNUb0tlZXAuaGFzKG5vZGUpKSB7XG4gICAgICAgIGRlZXAobm9kZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBhdHRyID0gY29udHJvbEF0dHJpYnV0ZSA/IG5vZGUuZ2V0QXR0cmlidXRlKGNvbnRyb2xBdHRyaWJ1dGUpIDogbnVsbDtcbiAgICAgICAgY29uc3QgYWxyZWFkeUhpZGRlbiA9IGF0dHIgIT09IG51bGwgJiYgYXR0ciAhPT0gJ2ZhbHNlJztcbiAgICAgICAgY29uc3QgY291bnRlclZhbHVlID0gKGNvdW50ZXJNYXAuZ2V0KG5vZGUpIHx8IDApICsgMTtcbiAgICAgICAgY29uc3QgbWFya2VyVmFsdWUgPSAobWFya2VyQ291bnRlci5nZXQobm9kZSkgfHwgMCkgKyAxO1xuICAgICAgICBjb3VudGVyTWFwLnNldChub2RlLCBjb3VudGVyVmFsdWUpO1xuICAgICAgICBtYXJrZXJDb3VudGVyLnNldChub2RlLCBtYXJrZXJWYWx1ZSk7XG4gICAgICAgIGhpZGRlbkVsZW1lbnRzLnB1c2gobm9kZSk7XG4gICAgICAgIGlmIChjb3VudGVyVmFsdWUgPT09IDEgJiYgYWxyZWFkeUhpZGRlbikge1xuICAgICAgICAgIHVuY29udHJvbGxlZEVsZW1lbnRzU2V0LmFkZChub2RlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobWFya2VyVmFsdWUgPT09IDEpIHtcbiAgICAgICAgICBub2RlLnNldEF0dHJpYnV0ZShtYXJrZXJOYW1lLCAnJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFhbHJlYWR5SGlkZGVuICYmIGNvbnRyb2xBdHRyaWJ1dGUpIHtcbiAgICAgICAgICBub2RlLnNldEF0dHJpYnV0ZShjb250cm9sQXR0cmlidXRlLCAndHJ1ZScpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgbG9ja0NvdW50Kys7XG4gIHJldHVybiAoKSA9PiB7XG4gICAgaGlkZGVuRWxlbWVudHMuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgIGNvbnN0IGNvdW50ZXJWYWx1ZSA9IChjb3VudGVyTWFwLmdldChlbGVtZW50KSB8fCAwKSAtIDE7XG4gICAgICBjb25zdCBtYXJrZXJWYWx1ZSA9IChtYXJrZXJDb3VudGVyLmdldChlbGVtZW50KSB8fCAwKSAtIDE7XG4gICAgICBjb3VudGVyTWFwLnNldChlbGVtZW50LCBjb3VudGVyVmFsdWUpO1xuICAgICAgbWFya2VyQ291bnRlci5zZXQoZWxlbWVudCwgbWFya2VyVmFsdWUpO1xuICAgICAgaWYgKCFjb3VudGVyVmFsdWUpIHtcbiAgICAgICAgaWYgKCF1bmNvbnRyb2xsZWRFbGVtZW50c1NldC5oYXMoZWxlbWVudCkgJiYgY29udHJvbEF0dHJpYnV0ZSkge1xuICAgICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKGNvbnRyb2xBdHRyaWJ1dGUpO1xuICAgICAgICB9XG4gICAgICAgIHVuY29udHJvbGxlZEVsZW1lbnRzU2V0LmRlbGV0ZShlbGVtZW50KTtcbiAgICAgIH1cbiAgICAgIGlmICghbWFya2VyVmFsdWUpIHtcbiAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUobWFya2VyTmFtZSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgbG9ja0NvdW50LS07XG4gICAgaWYgKCFsb2NrQ291bnQpIHtcbiAgICAgIGNvdW50ZXJNYXAgPSBuZXcgV2Vha01hcCgpO1xuICAgICAgY291bnRlck1hcCA9IG5ldyBXZWFrTWFwKCk7XG4gICAgICB1bmNvbnRyb2xsZWRFbGVtZW50c1NldCA9IG5ldyBXZWFrU2V0KCk7XG4gICAgICBtYXJrZXJNYXAgPSB7fTtcbiAgICB9XG4gIH07XG59XG5mdW5jdGlvbiBtYXJrT3RoZXJzKGF2b2lkRWxlbWVudHMsIGFyaWFIaWRkZW4sIGluZXJ0KSB7XG4gIGlmIChhcmlhSGlkZGVuID09PSB2b2lkIDApIHtcbiAgICBhcmlhSGlkZGVuID0gZmFsc2U7XG4gIH1cbiAgaWYgKGluZXJ0ID09PSB2b2lkIDApIHtcbiAgICBpbmVydCA9IGZhbHNlO1xuICB9XG4gIGNvbnN0IGJvZHkgPSBnZXREb2N1bWVudChhdm9pZEVsZW1lbnRzWzBdKS5ib2R5O1xuICByZXR1cm4gYXBwbHlBdHRyaWJ1dGVUb090aGVycyhhdm9pZEVsZW1lbnRzLmNvbmNhdChBcnJheS5mcm9tKGJvZHkucXVlcnlTZWxlY3RvckFsbCgnW2FyaWEtbGl2ZV0nKSkpLCBib2R5LCBhcmlhSGlkZGVuLCBpbmVydCk7XG59XG5cbmNvbnN0IGdldFRhYmJhYmxlT3B0aW9ucyA9ICgpID0+ICh7XG4gIGdldFNoYWRvd1Jvb3Q6IHRydWUsXG4gIGRpc3BsYXlDaGVjazpcbiAgLy8gSlNET00gZG9lcyBub3Qgc3VwcG9ydCB0aGUgYHRhYmJhYmxlYCBsaWJyYXJ5LiBUbyBzb2x2ZSB0aGlzIHdlIGNhblxuICAvLyBjaGVjayBpZiBgUmVzaXplT2JzZXJ2ZXJgIGlzIGEgcmVhbCBmdW5jdGlvbiAobm90IHBvbHlmaWxsZWQpLCB3aGljaFxuICAvLyBkZXRlcm1pbmVzIGlmIHRoZSBjdXJyZW50IGVudmlyb25tZW50IGlzIEpTRE9NLWxpa2UuXG4gIHR5cGVvZiBSZXNpemVPYnNlcnZlciA9PT0gJ2Z1bmN0aW9uJyAmJiBSZXNpemVPYnNlcnZlci50b1N0cmluZygpLmluY2x1ZGVzKCdbbmF0aXZlIGNvZGVdJykgPyAnZnVsbCcgOiAnbm9uZSdcbn0pO1xuZnVuY3Rpb24gZ2V0VGFiYmFibGVJbihjb250YWluZXIsIGRpcmVjdGlvbikge1xuICBjb25zdCBhbGxUYWJiYWJsZSA9IHRhYmJhYmxlKGNvbnRhaW5lciwgZ2V0VGFiYmFibGVPcHRpb25zKCkpO1xuICBpZiAoZGlyZWN0aW9uID09PSAncHJldicpIHtcbiAgICBhbGxUYWJiYWJsZS5yZXZlcnNlKCk7XG4gIH1cbiAgY29uc3QgYWN0aXZlSW5kZXggPSBhbGxUYWJiYWJsZS5pbmRleE9mKGFjdGl2ZUVsZW1lbnQoZ2V0RG9jdW1lbnQoY29udGFpbmVyKSkpO1xuICBjb25zdCBuZXh0VGFiYmFibGVFbGVtZW50cyA9IGFsbFRhYmJhYmxlLnNsaWNlKGFjdGl2ZUluZGV4ICsgMSk7XG4gIHJldHVybiBuZXh0VGFiYmFibGVFbGVtZW50c1swXTtcbn1cbmZ1bmN0aW9uIGdldE5leHRUYWJiYWJsZSgpIHtcbiAgcmV0dXJuIGdldFRhYmJhYmxlSW4oZG9jdW1lbnQuYm9keSwgJ25leHQnKTtcbn1cbmZ1bmN0aW9uIGdldFByZXZpb3VzVGFiYmFibGUoKSB7XG4gIHJldHVybiBnZXRUYWJiYWJsZUluKGRvY3VtZW50LmJvZHksICdwcmV2Jyk7XG59XG5mdW5jdGlvbiBpc091dHNpZGVFdmVudChldmVudCwgY29udGFpbmVyKSB7XG4gIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSBjb250YWluZXIgfHwgZXZlbnQuY3VycmVudFRhcmdldDtcbiAgY29uc3QgcmVsYXRlZFRhcmdldCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQ7XG4gIHJldHVybiAhcmVsYXRlZFRhcmdldCB8fCAhY29udGFpbnMoY29udGFpbmVyRWxlbWVudCwgcmVsYXRlZFRhcmdldCk7XG59XG5mdW5jdGlvbiBkaXNhYmxlRm9jdXNJbnNpZGUoY29udGFpbmVyKSB7XG4gIGNvbnN0IHRhYmJhYmxlRWxlbWVudHMgPSB0YWJiYWJsZShjb250YWluZXIsIGdldFRhYmJhYmxlT3B0aW9ucygpKTtcbiAgdGFiYmFibGVFbGVtZW50cy5mb3JFYWNoKGVsZW1lbnQgPT4ge1xuICAgIGVsZW1lbnQuZGF0YXNldC50YWJpbmRleCA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0YWJpbmRleCcpIHx8ICcnO1xuICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICctMScpO1xuICB9KTtcbn1cbmZ1bmN0aW9uIGVuYWJsZUZvY3VzSW5zaWRlKGNvbnRhaW5lcikge1xuICBjb25zdCBlbGVtZW50cyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS10YWJpbmRleF0nKTtcbiAgZWxlbWVudHMuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICBjb25zdCB0YWJpbmRleCA9IGVsZW1lbnQuZGF0YXNldC50YWJpbmRleDtcbiAgICBkZWxldGUgZWxlbWVudC5kYXRhc2V0LnRhYmluZGV4O1xuICAgIGlmICh0YWJpbmRleCkge1xuICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgdGFiaW5kZXgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBlbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgndGFiaW5kZXgnKTtcbiAgICB9XG4gIH0pO1xufVxuXG4vLyBTZWUgRGllZ28gSGF6J3MgU2FuZGJveCBmb3IgbWFraW5nIHRoaXMgbG9naWMgd29yayB3ZWxsIG9uIFNhZmFyaS9pT1M6XG4vLyBodHRwczovL2NvZGVzYW5kYm94LmlvL3MvdGFiYmFibGUtcG9ydGFsLWY0dG5nP2ZpbGU9L3NyYy9Gb2N1c1RyYXAudHN4XG5cbmNvbnN0IEhJRERFTl9TVFlMRVMgPSB7XG4gIGJvcmRlcjogMCxcbiAgY2xpcDogJ3JlY3QoMCAwIDAgMCknLFxuICBoZWlnaHQ6ICcxcHgnLFxuICBtYXJnaW46ICctMXB4JyxcbiAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICBwYWRkaW5nOiAwLFxuICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gIHdpZHRoOiAnMXB4JyxcbiAgdG9wOiAwLFxuICBsZWZ0OiAwXG59O1xubGV0IHRpbWVvdXRJZDtcbmZ1bmN0aW9uIHNldEFjdGl2ZUVsZW1lbnRPblRhYihldmVudCkge1xuICBpZiAoZXZlbnQua2V5ID09PSAnVGFiJykge1xuICAgIGV2ZW50LnRhcmdldDtcbiAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcbiAgfVxufVxuY29uc3QgRm9jdXNHdWFyZCA9IC8qI19fUFVSRV9fKi9SZWFjdC5mb3J3YXJkUmVmKGZ1bmN0aW9uIEZvY3VzR3VhcmQocHJvcHMsIHJlZikge1xuICBjb25zdCBbcm9sZSwgc2V0Um9sZV0gPSBSZWFjdC51c2VTdGF0ZSgpO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKGlzU2FmYXJpKCkpIHtcbiAgICAgIC8vIFVubGlrZSBvdGhlciBzY3JlZW4gcmVhZGVycyBzdWNoIGFzIE5WREEgYW5kIEpBV1MsIHRoZSB2aXJ0dWFsIGN1cnNvclxuICAgICAgLy8gb24gVm9pY2VPdmVyIGRvZXMgdHJpZ2dlciB0aGUgb25Gb2N1cyBldmVudCwgc28gd2UgY2FuIHVzZSB0aGUgZm9jdXNcbiAgICAgIC8vIHRyYXAgZWxlbWVudC4gT24gU2FmYXJpLCBvbmx5IGJ1dHRvbnMgdHJpZ2dlciB0aGUgb25Gb2N1cyBldmVudC5cbiAgICAgIC8vIE5COiBcImdyb3VwXCIgcm9sZSBpbiB0aGUgU2FuZGJveCBubyBsb25nZXIgYXBwZWFycyB0byB3b3JrLCBtdXN0IGJlIGFcbiAgICAgIC8vIGJ1dHRvbiByb2xlLlxuICAgICAgc2V0Um9sZSgnYnV0dG9uJyk7XG4gICAgfVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBzZXRBY3RpdmVFbGVtZW50T25UYWIpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgc2V0QWN0aXZlRWxlbWVudE9uVGFiKTtcbiAgICB9O1xuICB9LCBbXSk7XG4gIGNvbnN0IHJlc3RQcm9wcyA9IHtcbiAgICByZWYsXG4gICAgdGFiSW5kZXg6IDAsXG4gICAgLy8gUm9sZSBpcyBvbmx5IGZvciBWb2ljZU92ZXJcbiAgICByb2xlLFxuICAgICdhcmlhLWhpZGRlbic6IHJvbGUgPyB1bmRlZmluZWQgOiB0cnVlLFxuICAgIFtjcmVhdGVBdHRyaWJ1dGUoJ2ZvY3VzLWd1YXJkJyldOiAnJyxcbiAgICBzdHlsZTogSElEREVOX1NUWUxFU1xuICB9O1xuICByZXR1cm4gLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIF9leHRlbmRzKHt9LCBwcm9wcywgcmVzdFByb3BzKSk7XG59KTtcblxuY29uc3QgUG9ydGFsQ29udGV4dCA9IC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVDb250ZXh0KG51bGwpO1xuY29uc3QgYXR0ciA9IC8qI19fUFVSRV9fKi9jcmVhdGVBdHRyaWJ1dGUoJ3BvcnRhbCcpO1xuXG4vKipcbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ1BvcnRhbCN1c2VmbG9hdGluZ3BvcnRhbG5vZGVcbiAqL1xuZnVuY3Rpb24gdXNlRmxvYXRpbmdQb3J0YWxOb2RlKHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgaWQsXG4gICAgcm9vdFxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IHVuaXF1ZUlkID0gdXNlSWQoKTtcbiAgY29uc3QgcG9ydGFsQ29udGV4dCA9IHVzZVBvcnRhbENvbnRleHQoKTtcbiAgY29uc3QgW3BvcnRhbE5vZGUsIHNldFBvcnRhbE5vZGVdID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG4gIGNvbnN0IHBvcnRhbE5vZGVSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGluZGV4KCgpID0+IHtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgcG9ydGFsTm9kZSA9PSBudWxsIHx8IHBvcnRhbE5vZGUucmVtb3ZlKCk7XG4gICAgICAvLyBBbGxvdyB0aGUgc3Vic2VxdWVudCBsYXlvdXQgZWZmZWN0cyB0byBjcmVhdGUgYSBuZXcgbm9kZSBvbiB1cGRhdGVzLlxuICAgICAgLy8gVGhlIHBvcnRhbCBub2RlIHdpbGwgc3RpbGwgYmUgY2xlYW5lZCB1cCBvbiB1bm1vdW50LlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2Zsb2F0aW5nLXVpL2Zsb2F0aW5nLXVpL2lzc3Vlcy8yNDU0XG4gICAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICAgIHBvcnRhbE5vZGVSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9O1xuICB9LCBbcG9ydGFsTm9kZV0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgLy8gV2FpdCBmb3IgdGhlIHVuaXF1ZUlkIHRvIGJlIGdlbmVyYXRlZCBiZWZvcmUgY3JlYXRpbmcgdGhlIHBvcnRhbCBub2RlIGluXG4gICAgLy8gUmVhY3QgPDE4ICh1c2luZyBgdXNlRmxvYXRpbmdJZGAgaW5zdGVhZCBvZiB0aGUgbmF0aXZlIGB1c2VJZGApLlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mbG9hdGluZy11aS9mbG9hdGluZy11aS9pc3N1ZXMvMjc3OFxuICAgIGlmICghdW5pcXVlSWQpIHJldHVybjtcbiAgICBpZiAocG9ydGFsTm9kZVJlZi5jdXJyZW50KSByZXR1cm47XG4gICAgY29uc3QgZXhpc3RpbmdJZFJvb3QgPSBpZCA/IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKSA6IG51bGw7XG4gICAgaWYgKCFleGlzdGluZ0lkUm9vdCkgcmV0dXJuO1xuICAgIGNvbnN0IHN1YlJvb3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBzdWJSb290LmlkID0gdW5pcXVlSWQ7XG4gICAgc3ViUm9vdC5zZXRBdHRyaWJ1dGUoYXR0ciwgJycpO1xuICAgIGV4aXN0aW5nSWRSb290LmFwcGVuZENoaWxkKHN1YlJvb3QpO1xuICAgIHBvcnRhbE5vZGVSZWYuY3VycmVudCA9IHN1YlJvb3Q7XG4gICAgc2V0UG9ydGFsTm9kZShzdWJSb290KTtcbiAgfSwgW2lkLCB1bmlxdWVJZF0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKCF1bmlxdWVJZCkgcmV0dXJuO1xuICAgIGlmIChwb3J0YWxOb2RlUmVmLmN1cnJlbnQpIHJldHVybjtcbiAgICBsZXQgY29udGFpbmVyID0gcm9vdCB8fCAocG9ydGFsQ29udGV4dCA9PSBudWxsID8gdm9pZCAwIDogcG9ydGFsQ29udGV4dC5wb3J0YWxOb2RlKTtcbiAgICBpZiAoY29udGFpbmVyICYmICFpc0VsZW1lbnQoY29udGFpbmVyKSkgY29udGFpbmVyID0gY29udGFpbmVyLmN1cnJlbnQ7XG4gICAgY29udGFpbmVyID0gY29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHk7XG4gICAgbGV0IGlkV3JhcHBlciA9IG51bGw7XG4gICAgaWYgKGlkKSB7XG4gICAgICBpZFdyYXBwZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgIGlkV3JhcHBlci5pZCA9IGlkO1xuICAgICAgY29udGFpbmVyLmFwcGVuZENoaWxkKGlkV3JhcHBlcik7XG4gICAgfVxuICAgIGNvbnN0IHN1YlJvb3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBzdWJSb290LmlkID0gdW5pcXVlSWQ7XG4gICAgc3ViUm9vdC5zZXRBdHRyaWJ1dGUoYXR0ciwgJycpO1xuICAgIGNvbnRhaW5lciA9IGlkV3JhcHBlciB8fCBjb250YWluZXI7XG4gICAgY29udGFpbmVyLmFwcGVuZENoaWxkKHN1YlJvb3QpO1xuICAgIHBvcnRhbE5vZGVSZWYuY3VycmVudCA9IHN1YlJvb3Q7XG4gICAgc2V0UG9ydGFsTm9kZShzdWJSb290KTtcbiAgfSwgW2lkLCByb290LCB1bmlxdWVJZCwgcG9ydGFsQ29udGV4dF0pO1xuICByZXR1cm4gcG9ydGFsTm9kZTtcbn1cbi8qKlxuICogUG9ydGFscyB0aGUgZmxvYXRpbmcgZWxlbWVudCBpbnRvIGEgZ2l2ZW4gY29udGFpbmVyIGVsZW1lbnQg4oCUIGJ5IGRlZmF1bHQsXG4gKiBvdXRzaWRlIG9mIHRoZSBhcHAgcm9vdCBhbmQgaW50byB0aGUgYm9keS5cbiAqIFRoaXMgaXMgbmVjZXNzYXJ5IHRvIGVuc3VyZSB0aGUgZmxvYXRpbmcgZWxlbWVudCBjYW4gYXBwZWFyIG91dHNpZGUgYW55XG4gKiBwb3RlbnRpYWwgcGFyZW50IGNvbnRhaW5lcnMgdGhhdCBjYXVzZSBjbGlwcGluZyAoc3VjaCBhcyBgb3ZlcmZsb3c6IGhpZGRlbmApLFxuICogd2hpbGUgcmV0YWluaW5nIGl0cyBsb2NhdGlvbiBpbiB0aGUgUmVhY3QgdHJlZS5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ1BvcnRhbFxuICovXG5mdW5jdGlvbiBGbG9hdGluZ1BvcnRhbChwcm9wcykge1xuICBjb25zdCB7XG4gICAgY2hpbGRyZW4sXG4gICAgaWQsXG4gICAgcm9vdCA9IG51bGwsXG4gICAgcHJlc2VydmVUYWJPcmRlciA9IHRydWVcbiAgfSA9IHByb3BzO1xuICBjb25zdCBwb3J0YWxOb2RlID0gdXNlRmxvYXRpbmdQb3J0YWxOb2RlKHtcbiAgICBpZCxcbiAgICByb290XG4gIH0pO1xuICBjb25zdCBbZm9jdXNNYW5hZ2VyU3RhdGUsIHNldEZvY3VzTWFuYWdlclN0YXRlXSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpO1xuICBjb25zdCBiZWZvcmVPdXRzaWRlUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICBjb25zdCBhZnRlck91dHNpZGVSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IGJlZm9yZUluc2lkZVJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgY29uc3QgYWZ0ZXJJbnNpZGVSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNob3VsZFJlbmRlckd1YXJkcyA9XG4gIC8vIFRoZSBGb2N1c01hbmFnZXIgYW5kIHRoZXJlZm9yZSBmbG9hdGluZyBlbGVtZW50IGFyZSBjdXJyZW50bHkgb3Blbi9cbiAgLy8gcmVuZGVyZWQuXG4gICEhZm9jdXNNYW5hZ2VyU3RhdGUgJiZcbiAgLy8gR3VhcmRzIGFyZSBvbmx5IGZvciBub24tbW9kYWwgZm9jdXMgbWFuYWdlbWVudC5cbiAgIWZvY3VzTWFuYWdlclN0YXRlLm1vZGFsICYmXG4gIC8vIERvbid0IHJlbmRlciBpZiB1bm1vdW50IGlzIHRyYW5zaXRpb25pbmcuXG4gIGZvY3VzTWFuYWdlclN0YXRlLm9wZW4gJiYgcHJlc2VydmVUYWJPcmRlciAmJiAhIShyb290IHx8IHBvcnRhbE5vZGUpO1xuXG4gIC8vIGh0dHBzOi8vY29kZXNhbmRib3guaW8vcy90YWJiYWJsZS1wb3J0YWwtZjR0bmc/ZmlsZT0vc3JjL1RhYmJhYmxlUG9ydGFsLnRzeFxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghcG9ydGFsTm9kZSB8fCAhcHJlc2VydmVUYWJPcmRlciB8fCBmb2N1c01hbmFnZXJTdGF0ZSAhPSBudWxsICYmIGZvY3VzTWFuYWdlclN0YXRlLm1vZGFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdXJlIGVsZW1lbnRzIGluc2lkZSB0aGUgcG9ydGFsIGVsZW1lbnQgYXJlIHRhYmJhYmxlIG9ubHkgd2hlbiB0aGVcbiAgICAvLyBwb3J0YWwgaGFzIGFscmVhZHkgYmVlbiBmb2N1c2VkLCBlaXRoZXIgYnkgdGFiYmluZyBpbnRvIGEgZm9jdXMgdHJhcFxuICAgIC8vIGVsZW1lbnQgb3V0c2lkZSBvciB1c2luZyB0aGUgbW91c2UuXG4gICAgZnVuY3Rpb24gb25Gb2N1cyhldmVudCkge1xuICAgICAgaWYgKHBvcnRhbE5vZGUgJiYgaXNPdXRzaWRlRXZlbnQoZXZlbnQpKSB7XG4gICAgICAgIGNvbnN0IGZvY3VzaW5nID0gZXZlbnQudHlwZSA9PT0gJ2ZvY3VzaW4nO1xuICAgICAgICBjb25zdCBtYW5hZ2VGb2N1cyA9IGZvY3VzaW5nID8gZW5hYmxlRm9jdXNJbnNpZGUgOiBkaXNhYmxlRm9jdXNJbnNpZGU7XG4gICAgICAgIG1hbmFnZUZvY3VzKHBvcnRhbE5vZGUpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBMaXN0ZW4gdG8gdGhlIGV2ZW50IG9uIHRoZSBjYXB0dXJlIHBoYXNlIHNvIHRoZXkgcnVuIGJlZm9yZSB0aGUgZm9jdXNcbiAgICAvLyB0cmFwIGVsZW1lbnRzIG9uRm9jdXMgcHJvcCBpcyBjYWxsZWQuXG4gICAgcG9ydGFsTm9kZS5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgb25Gb2N1cywgdHJ1ZSk7XG4gICAgcG9ydGFsTm9kZS5hZGRFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIG9uRm9jdXMsIHRydWUpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBwb3J0YWxOb2RlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCBvbkZvY3VzLCB0cnVlKTtcbiAgICAgIHBvcnRhbE5vZGUucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCBvbkZvY3VzLCB0cnVlKTtcbiAgICB9O1xuICB9LCBbcG9ydGFsTm9kZSwgcHJlc2VydmVUYWJPcmRlciwgZm9jdXNNYW5hZ2VyU3RhdGUgPT0gbnVsbCA/IHZvaWQgMCA6IGZvY3VzTWFuYWdlclN0YXRlLm1vZGFsXSk7XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChQb3J0YWxDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgdmFsdWU6IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAgIHByZXNlcnZlVGFiT3JkZXIsXG4gICAgICBiZWZvcmVPdXRzaWRlUmVmLFxuICAgICAgYWZ0ZXJPdXRzaWRlUmVmLFxuICAgICAgYmVmb3JlSW5zaWRlUmVmLFxuICAgICAgYWZ0ZXJJbnNpZGVSZWYsXG4gICAgICBwb3J0YWxOb2RlLFxuICAgICAgc2V0Rm9jdXNNYW5hZ2VyU3RhdGVcbiAgICB9KSwgW3ByZXNlcnZlVGFiT3JkZXIsIHBvcnRhbE5vZGVdKVxuICB9LCBzaG91bGRSZW5kZXJHdWFyZHMgJiYgcG9ydGFsTm9kZSAmJiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChGb2N1c0d1YXJkLCB7XG4gICAgXCJkYXRhLXR5cGVcIjogXCJvdXRzaWRlXCIsXG4gICAgcmVmOiBiZWZvcmVPdXRzaWRlUmVmLFxuICAgIG9uRm9jdXM6IGV2ZW50ID0+IHtcbiAgICAgIGlmIChpc091dHNpZGVFdmVudChldmVudCwgcG9ydGFsTm9kZSkpIHtcbiAgICAgICAgdmFyIF9iZWZvcmVJbnNpZGVSZWYkY3VycjtcbiAgICAgICAgKF9iZWZvcmVJbnNpZGVSZWYkY3VyciA9IGJlZm9yZUluc2lkZVJlZi5jdXJyZW50KSA9PSBudWxsIHx8IF9iZWZvcmVJbnNpZGVSZWYkY3Vyci5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcHJldlRhYmJhYmxlID0gZ2V0UHJldmlvdXNUYWJiYWJsZSgpIHx8IChmb2N1c01hbmFnZXJTdGF0ZSA9PSBudWxsID8gdm9pZCAwIDogZm9jdXNNYW5hZ2VyU3RhdGUucmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCk7XG4gICAgICAgIHByZXZUYWJiYWJsZSA9PSBudWxsIHx8IHByZXZUYWJiYWJsZS5mb2N1cygpO1xuICAgICAgfVxuICAgIH1cbiAgfSksIHNob3VsZFJlbmRlckd1YXJkcyAmJiBwb3J0YWxOb2RlICYmIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KFwic3BhblwiLCB7XG4gICAgXCJhcmlhLW93bnNcIjogcG9ydGFsTm9kZS5pZCxcbiAgICBzdHlsZTogSElEREVOX1NUWUxFU1xuICB9KSwgcG9ydGFsTm9kZSAmJiAvKiNfX1BVUkVfXyovY3JlYXRlUG9ydGFsKGNoaWxkcmVuLCBwb3J0YWxOb2RlKSwgc2hvdWxkUmVuZGVyR3VhcmRzICYmIHBvcnRhbE5vZGUgJiYgLyojX19QVVJFX18qL1JlYWN0LmNyZWF0ZUVsZW1lbnQoRm9jdXNHdWFyZCwge1xuICAgIFwiZGF0YS10eXBlXCI6IFwib3V0c2lkZVwiLFxuICAgIHJlZjogYWZ0ZXJPdXRzaWRlUmVmLFxuICAgIG9uRm9jdXM6IGV2ZW50ID0+IHtcbiAgICAgIGlmIChpc091dHNpZGVFdmVudChldmVudCwgcG9ydGFsTm9kZSkpIHtcbiAgICAgICAgdmFyIF9hZnRlckluc2lkZVJlZiRjdXJyZTtcbiAgICAgICAgKF9hZnRlckluc2lkZVJlZiRjdXJyZSA9IGFmdGVySW5zaWRlUmVmLmN1cnJlbnQpID09IG51bGwgfHwgX2FmdGVySW5zaWRlUmVmJGN1cnJlLmZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuZXh0VGFiYmFibGUgPSBnZXROZXh0VGFiYmFibGUoKSB8fCAoZm9jdXNNYW5hZ2VyU3RhdGUgPT0gbnVsbCA/IHZvaWQgMCA6IGZvY3VzTWFuYWdlclN0YXRlLnJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpO1xuICAgICAgICBuZXh0VGFiYmFibGUgPT0gbnVsbCB8fCBuZXh0VGFiYmFibGUuZm9jdXMoKTtcbiAgICAgICAgKGZvY3VzTWFuYWdlclN0YXRlID09IG51bGwgPyB2b2lkIDAgOiBmb2N1c01hbmFnZXJTdGF0ZS5jbG9zZU9uRm9jdXNPdXQpICYmIChmb2N1c01hbmFnZXJTdGF0ZSA9PSBudWxsID8gdm9pZCAwIDogZm9jdXNNYW5hZ2VyU3RhdGUub25PcGVuQ2hhbmdlKGZhbHNlLCBldmVudC5uYXRpdmVFdmVudCkpO1xuICAgICAgfVxuICAgIH1cbiAgfSkpO1xufVxuY29uc3QgdXNlUG9ydGFsQ29udGV4dCA9ICgpID0+IFJlYWN0LnVzZUNvbnRleHQoUG9ydGFsQ29udGV4dCk7XG5cbmNvbnN0IExJU1RfTElNSVQgPSAyMDtcbmxldCBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnRzID0gW107XG5mdW5jdGlvbiBhZGRQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoZWxlbWVudCkge1xuICBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnRzID0gcHJldmlvdXNseUZvY3VzZWRFbGVtZW50cy5maWx0ZXIoZWwgPT4gZWwuaXNDb25uZWN0ZWQpO1xuICBsZXQgdGFiYmFibGVFbCA9IGVsZW1lbnQ7XG4gIGlmICghdGFiYmFibGVFbCB8fCBnZXROb2RlTmFtZSh0YWJiYWJsZUVsKSA9PT0gJ2JvZHknKSByZXR1cm47XG4gIGlmICghaXNUYWJiYWJsZSh0YWJiYWJsZUVsLCBnZXRUYWJiYWJsZU9wdGlvbnMoKSkpIHtcbiAgICBjb25zdCB0YWJiYWJsZUNoaWxkID0gdGFiYmFibGUodGFiYmFibGVFbCwgZ2V0VGFiYmFibGVPcHRpb25zKCkpWzBdO1xuICAgIGlmICh0YWJiYWJsZUNoaWxkKSB7XG4gICAgICB0YWJiYWJsZUVsID0gdGFiYmFibGVDaGlsZDtcbiAgICB9XG4gIH1cbiAgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50cy5wdXNoKHRhYmJhYmxlRWwpO1xuICBpZiAocHJldmlvdXNseUZvY3VzZWRFbGVtZW50cy5sZW5ndGggPiBMSVNUX0xJTUlUKSB7XG4gICAgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50cyA9IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudHMuc2xpY2UoLUxJU1RfTElNSVQpO1xuICB9XG59XG5mdW5jdGlvbiBnZXRQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKSB7XG4gIHJldHVybiBwcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnRzLnNsaWNlKCkucmV2ZXJzZSgpLmZpbmQoZWwgPT4gZWwuaXNDb25uZWN0ZWQpO1xufVxuY29uc3QgVmlzdWFsbHlIaWRkZW5EaXNtaXNzID0gLyojX19QVVJFX18qL1JlYWN0LmZvcndhcmRSZWYoZnVuY3Rpb24gVmlzdWFsbHlIaWRkZW5EaXNtaXNzKHByb3BzLCByZWYpIHtcbiAgcmV0dXJuIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KFwiYnV0dG9uXCIsIF9leHRlbmRzKHt9LCBwcm9wcywge1xuICAgIHR5cGU6IFwiYnV0dG9uXCIsXG4gICAgcmVmOiByZWYsXG4gICAgdGFiSW5kZXg6IC0xLFxuICAgIHN0eWxlOiBISURERU5fU1RZTEVTXG4gIH0pKTtcbn0pO1xuLyoqXG4gKiBQcm92aWRlcyBmb2N1cyBtYW5hZ2VtZW50IGZvciB0aGUgZmxvYXRpbmcgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ0ZvY3VzTWFuYWdlclxuICovXG5mdW5jdGlvbiBGbG9hdGluZ0ZvY3VzTWFuYWdlcihwcm9wcykge1xuICBjb25zdCB7XG4gICAgY29udGV4dCxcbiAgICBjaGlsZHJlbixcbiAgICBkaXNhYmxlZCA9IGZhbHNlLFxuICAgIG9yZGVyID0gWydjb250ZW50J10sXG4gICAgZ3VhcmRzOiBfZ3VhcmRzID0gdHJ1ZSxcbiAgICBpbml0aWFsRm9jdXMgPSAwLFxuICAgIHJldHVybkZvY3VzID0gdHJ1ZSxcbiAgICByZXN0b3JlRm9jdXMgPSBmYWxzZSxcbiAgICBtb2RhbCA9IHRydWUsXG4gICAgdmlzdWFsbHlIaWRkZW5EaXNtaXNzID0gZmFsc2UsXG4gICAgY2xvc2VPbkZvY3VzT3V0ID0gdHJ1ZVxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IHtcbiAgICBvcGVuLFxuICAgIHJlZnMsXG4gICAgbm9kZUlkLFxuICAgIG9uT3BlbkNoYW5nZSxcbiAgICBldmVudHMsXG4gICAgZGF0YVJlZixcbiAgICBmbG9hdGluZ0lkLFxuICAgIGVsZW1lbnRzOiB7XG4gICAgICBkb21SZWZlcmVuY2UsXG4gICAgICBmbG9hdGluZ1xuICAgIH1cbiAgfSA9IGNvbnRleHQ7XG4gIGNvbnN0IGlnbm9yZUluaXRpYWxGb2N1cyA9IHR5cGVvZiBpbml0aWFsRm9jdXMgPT09ICdudW1iZXInICYmIGluaXRpYWxGb2N1cyA8IDA7XG4gIC8vIElmIHRoZSByZWZlcmVuY2UgaXMgYSBjb21ib2JveCBhbmQgaXMgdHlwZWFibGUgKGUuZy4gaW5wdXQvdGV4dGFyZWEpLFxuICAvLyB0aGVyZSBhcmUgZGlmZmVyZW50IGZvY3VzIHNlbWFudGljcy4gVGhlIGd1YXJkcyBzaG91bGQgbm90IGJlIHJlbmRlcmVkLCBidXRcbiAgLy8gYXJpYS1oaWRkZW4gc2hvdWxkIGJlIGFwcGxpZWQgdG8gYWxsIG5vZGVzIHN0aWxsLiBGdXJ0aGVyLCB0aGUgdmlzdWFsbHlcbiAgLy8gaGlkZGVuIGRpc21pc3MgYnV0dG9uIHNob3VsZCBvbmx5IGFwcGVhciBhdCB0aGUgZW5kIG9mIHRoZSBsaXN0LCBub3QgdGhlXG4gIC8vIHN0YXJ0LlxuICBjb25zdCBpc1VudHJhcHBlZFR5cGVhYmxlQ29tYm9ib3ggPSBpc1R5cGVhYmxlQ29tYm9ib3goZG9tUmVmZXJlbmNlKSAmJiBpZ25vcmVJbml0aWFsRm9jdXM7XG5cbiAgLy8gRm9yY2UgdGhlIGd1YXJkcyB0byBiZSByZW5kZXJlZCBpZiB0aGUgYGluZXJ0YCBhdHRyaWJ1dGUgaXMgbm90IHN1cHBvcnRlZC5cbiAgY29uc3QgZ3VhcmRzID0gc3VwcG9ydHNJbmVydCgpID8gX2d1YXJkcyA6IHRydWU7XG4gIGNvbnN0IG9yZGVyUmVmID0gdXNlTGF0ZXN0UmVmKG9yZGVyKTtcbiAgY29uc3QgaW5pdGlhbEZvY3VzUmVmID0gdXNlTGF0ZXN0UmVmKGluaXRpYWxGb2N1cyk7XG4gIGNvbnN0IHJldHVybkZvY3VzUmVmID0gdXNlTGF0ZXN0UmVmKHJldHVybkZvY3VzKTtcbiAgY29uc3QgdHJlZSA9IHVzZUZsb2F0aW5nVHJlZSgpO1xuICBjb25zdCBwb3J0YWxDb250ZXh0ID0gdXNlUG9ydGFsQ29udGV4dCgpO1xuICBjb25zdCBzdGFydERpc21pc3NCdXR0b25SZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IGVuZERpc21pc3NCdXR0b25SZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IHByZXZlbnRSZXR1cm5Gb2N1c1JlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IGlzUG9pbnRlckRvd25SZWYgPSBSZWFjdC51c2VSZWYoZmFsc2UpO1xuICBjb25zdCB0YWJiYWJsZUluZGV4UmVmID0gUmVhY3QudXNlUmVmKC0xKTtcbiAgY29uc3QgaXNJbnNpZGVQb3J0YWwgPSBwb3J0YWxDb250ZXh0ICE9IG51bGw7XG4gIGNvbnN0IGZpcnN0RWxlbWVudENoaWxkID0gZmxvYXRpbmcgPT0gbnVsbCA/IHZvaWQgMCA6IGZsb2F0aW5nLmZpcnN0RWxlbWVudENoaWxkO1xuICAvLyBJZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBpcyBhY3RpbmcgYXMgYSBwb3NpdGlvbmluZyB3cmFwcGVyIHJhdGhlciB0aGFuIHRoZVxuICAvLyBlbGVtZW50IHRoYXQgcmVjZWl2ZXMgYXJpYSBwcm9wcywgdXNlIGl0IGFzIHRoZSBmb2N1cyByb290IGluc3RlYWQuXG4gIGNvbnN0IGZsb2F0aW5nRm9jdXNOb2RlID0gKGZpcnN0RWxlbWVudENoaWxkID09IG51bGwgPyB2b2lkIDAgOiBmaXJzdEVsZW1lbnRDaGlsZC5pZCkgPT09IGZsb2F0aW5nSWQgPyBmaXJzdEVsZW1lbnRDaGlsZCA6IGZsb2F0aW5nO1xuICBjb25zdCBnZXRUYWJiYWJsZUNvbnRlbnQgPSB1c2VFZmZlY3RFdmVudChmdW5jdGlvbiAoY29udGFpbmVyKSB7XG4gICAgaWYgKGNvbnRhaW5lciA9PT0gdm9pZCAwKSB7XG4gICAgICBjb250YWluZXIgPSBmbG9hdGluZ0ZvY3VzTm9kZTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnRhaW5lciA/IHRhYmJhYmxlKGNvbnRhaW5lciwgZ2V0VGFiYmFibGVPcHRpb25zKCkpIDogW107XG4gIH0pO1xuICBjb25zdCBnZXRUYWJiYWJsZUVsZW1lbnRzID0gdXNlRWZmZWN0RXZlbnQoY29udGFpbmVyID0+IHtcbiAgICBjb25zdCBjb250ZW50ID0gZ2V0VGFiYmFibGVDb250ZW50KGNvbnRhaW5lcik7XG4gICAgcmV0dXJuIG9yZGVyUmVmLmN1cnJlbnQubWFwKHR5cGUgPT4ge1xuICAgICAgaWYgKGRvbVJlZmVyZW5jZSAmJiB0eXBlID09PSAncmVmZXJlbmNlJykge1xuICAgICAgICByZXR1cm4gZG9tUmVmZXJlbmNlO1xuICAgICAgfVxuICAgICAgaWYgKGZsb2F0aW5nRm9jdXNOb2RlICYmIHR5cGUgPT09ICdmbG9hdGluZycpIHtcbiAgICAgICAgcmV0dXJuIGZsb2F0aW5nRm9jdXNOb2RlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgfSkuZmlsdGVyKEJvb2xlYW4pLmZsYXQoKTtcbiAgfSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGRpc2FibGVkKSByZXR1cm47XG4gICAgaWYgKCFtb2RhbCkgcmV0dXJuO1xuICAgIGZ1bmN0aW9uIG9uS2V5RG93bihldmVudCkge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ1RhYicpIHtcbiAgICAgICAgLy8gVGhlIGZvY3VzIGd1YXJkcyBoYXZlIG5vdGhpbmcgdG8gZm9jdXMsIHNvIHdlIG5lZWQgdG8gc3RvcCB0aGUgZXZlbnQuXG4gICAgICAgIGlmIChjb250YWlucyhmbG9hdGluZ0ZvY3VzTm9kZSwgYWN0aXZlRWxlbWVudChnZXREb2N1bWVudChmbG9hdGluZ0ZvY3VzTm9kZSkpKSAmJiBnZXRUYWJiYWJsZUNvbnRlbnQoKS5sZW5ndGggPT09IDAgJiYgIWlzVW50cmFwcGVkVHlwZWFibGVDb21ib2JveCkge1xuICAgICAgICAgIHN0b3BFdmVudChldmVudCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZWxzID0gZ2V0VGFiYmFibGVFbGVtZW50cygpO1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBnZXRUYXJnZXQoZXZlbnQpO1xuICAgICAgICBpZiAob3JkZXJSZWYuY3VycmVudFswXSA9PT0gJ3JlZmVyZW5jZScgJiYgdGFyZ2V0ID09PSBkb21SZWZlcmVuY2UpIHtcbiAgICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgICAgZW5xdWV1ZUZvY3VzKGVsc1tlbHMubGVuZ3RoIC0gMV0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBlbnF1ZXVlRm9jdXMoZWxzWzFdKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9yZGVyUmVmLmN1cnJlbnRbMV0gPT09ICdmbG9hdGluZycgJiYgdGFyZ2V0ID09PSBmbG9hdGluZ0ZvY3VzTm9kZSAmJiBldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgIHN0b3BFdmVudChldmVudCk7XG4gICAgICAgICAgZW5xdWV1ZUZvY3VzKGVsc1swXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgZG9jID0gZ2V0RG9jdW1lbnQoZmxvYXRpbmdGb2N1c05vZGUpO1xuICAgIGRvYy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25LZXlEb3duKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbktleURvd24pO1xuICAgIH07XG4gIH0sIFtkaXNhYmxlZCwgZG9tUmVmZXJlbmNlLCBmbG9hdGluZ0ZvY3VzTm9kZSwgbW9kYWwsIG9yZGVyUmVmLCBpc1VudHJhcHBlZFR5cGVhYmxlQ29tYm9ib3gsIGdldFRhYmJhYmxlQ29udGVudCwgZ2V0VGFiYmFibGVFbGVtZW50c10pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChkaXNhYmxlZCkgcmV0dXJuO1xuICAgIGlmICghZmxvYXRpbmcpIHJldHVybjtcbiAgICBmdW5jdGlvbiBoYW5kbGVGb2N1c0luKGV2ZW50KSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBnZXRUYXJnZXQoZXZlbnQpO1xuICAgICAgY29uc3QgdGFiYmFibGVDb250ZW50ID0gZ2V0VGFiYmFibGVDb250ZW50KCk7XG4gICAgICBjb25zdCB0YWJiYWJsZUluZGV4ID0gdGFiYmFibGVDb250ZW50LmluZGV4T2YodGFyZ2V0KTtcbiAgICAgIGlmICh0YWJiYWJsZUluZGV4ICE9PSAtMSkge1xuICAgICAgICB0YWJiYWJsZUluZGV4UmVmLmN1cnJlbnQgPSB0YWJiYWJsZUluZGV4O1xuICAgICAgfVxuICAgIH1cbiAgICBmbG9hdGluZy5hZGRFdmVudExpc3RlbmVyKCdmb2N1c2luJywgaGFuZGxlRm9jdXNJbik7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGZsb2F0aW5nLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCBoYW5kbGVGb2N1c0luKTtcbiAgICB9O1xuICB9LCBbZGlzYWJsZWQsIGZsb2F0aW5nLCBnZXRUYWJiYWJsZUNvbnRlbnRdKTtcbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZGlzYWJsZWQpIHJldHVybjtcbiAgICBpZiAoIWNsb3NlT25Gb2N1c091dCkgcmV0dXJuO1xuXG4gICAgLy8gSW4gU2FmYXJpLCBidXR0b25zIGxvc2UgZm9jdXMgd2hlbiBwcmVzc2luZyB0aGVtLlxuICAgIGZ1bmN0aW9uIGhhbmRsZVBvaW50ZXJEb3duKCkge1xuICAgICAgaXNQb2ludGVyRG93blJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpc1BvaW50ZXJEb3duUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBmdW5jdGlvbiBoYW5kbGVGb2N1c091dHNpZGUoZXZlbnQpIHtcbiAgICAgIGNvbnN0IHJlbGF0ZWRUYXJnZXQgPSBldmVudC5yZWxhdGVkVGFyZ2V0O1xuICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICBjb25zdCBtb3ZlZFRvVW5yZWxhdGVkTm9kZSA9ICEoY29udGFpbnMoZG9tUmVmZXJlbmNlLCByZWxhdGVkVGFyZ2V0KSB8fCBjb250YWlucyhmbG9hdGluZywgcmVsYXRlZFRhcmdldCkgfHwgY29udGFpbnMocmVsYXRlZFRhcmdldCwgZmxvYXRpbmcpIHx8IGNvbnRhaW5zKHBvcnRhbENvbnRleHQgPT0gbnVsbCA/IHZvaWQgMCA6IHBvcnRhbENvbnRleHQucG9ydGFsTm9kZSwgcmVsYXRlZFRhcmdldCkgfHwgcmVsYXRlZFRhcmdldCAhPSBudWxsICYmIHJlbGF0ZWRUYXJnZXQuaGFzQXR0cmlidXRlKGNyZWF0ZUF0dHJpYnV0ZSgnZm9jdXMtZ3VhcmQnKSkgfHwgdHJlZSAmJiAoZ2V0Q2hpbGRyZW4odHJlZS5ub2Rlc1JlZi5jdXJyZW50LCBub2RlSWQpLmZpbmQobm9kZSA9PiB7XG4gICAgICAgICAgdmFyIF9ub2RlJGNvbnRleHQsIF9ub2RlJGNvbnRleHQyO1xuICAgICAgICAgIHJldHVybiBjb250YWlucygoX25vZGUkY29udGV4dCA9IG5vZGUuY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJGNvbnRleHQuZWxlbWVudHMuZmxvYXRpbmcsIHJlbGF0ZWRUYXJnZXQpIHx8IGNvbnRhaW5zKChfbm9kZSRjb250ZXh0MiA9IG5vZGUuY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJGNvbnRleHQyLmVsZW1lbnRzLmRvbVJlZmVyZW5jZSwgcmVsYXRlZFRhcmdldCk7XG4gICAgICAgIH0pIHx8IGdldEFuY2VzdG9ycyh0cmVlLm5vZGVzUmVmLmN1cnJlbnQsIG5vZGVJZCkuZmluZChub2RlID0+IHtcbiAgICAgICAgICB2YXIgX25vZGUkY29udGV4dDMsIF9ub2RlJGNvbnRleHQ0O1xuICAgICAgICAgIHJldHVybiAoKF9ub2RlJGNvbnRleHQzID0gbm9kZS5jb250ZXh0KSA9PSBudWxsID8gdm9pZCAwIDogX25vZGUkY29udGV4dDMuZWxlbWVudHMuZmxvYXRpbmcpID09PSByZWxhdGVkVGFyZ2V0IHx8ICgoX25vZGUkY29udGV4dDQgPSBub2RlLmNvbnRleHQpID09IG51bGwgPyB2b2lkIDAgOiBfbm9kZSRjb250ZXh0NC5lbGVtZW50cy5kb21SZWZlcmVuY2UpID09PSByZWxhdGVkVGFyZ2V0O1xuICAgICAgICB9KSkpO1xuXG4gICAgICAgIC8vIFJlc3RvcmUgZm9jdXMgdG8gdGhlIHByZXZpb3VzIHRhYmJhYmxlIGVsZW1lbnQgaW5kZXggdG8gcHJldmVudFxuICAgICAgICAvLyBmb2N1cyBmcm9tIGJlaW5nIGxvc3Qgb3V0c2lkZSB0aGUgZmxvYXRpbmcgdHJlZS5cbiAgICAgICAgaWYgKHJlc3RvcmVGb2N1cyAmJiBtb3ZlZFRvVW5yZWxhdGVkTm9kZSAmJiBhY3RpdmVFbGVtZW50KGdldERvY3VtZW50KGZsb2F0aW5nRm9jdXNOb2RlKSkgPT09IGdldERvY3VtZW50KGZsb2F0aW5nRm9jdXNOb2RlKS5ib2R5KSB7XG4gICAgICAgICAgLy8gTGV0IGBGbG9hdGluZ1BvcnRhbGAgZWZmZWN0IGtub3dzIHRoYXQgZm9jdXMgaXMgc3RpbGwgaW5zaWRlIHRoZVxuICAgICAgICAgIC8vIGZsb2F0aW5nIHRyZWUuXG4gICAgICAgICAgaWYgKGlzSFRNTEVsZW1lbnQoZmxvYXRpbmdGb2N1c05vZGUpKSB7XG4gICAgICAgICAgICBmbG9hdGluZ0ZvY3VzTm9kZSA9PSBudWxsIHx8IGZsb2F0aW5nRm9jdXNOb2RlLmZvY3VzKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IHByZXZUYWJiYWJsZUluZGV4ID0gdGFiYmFibGVJbmRleFJlZi5jdXJyZW50O1xuICAgICAgICAgIGNvbnN0IHRhYmJhYmxlQ29udGVudCA9IGdldFRhYmJhYmxlQ29udGVudCgpO1xuICAgICAgICAgIGNvbnN0IG5vZGVUb0ZvY3VzID0gdGFiYmFibGVDb250ZW50W3ByZXZUYWJiYWJsZUluZGV4XSB8fCB0YWJiYWJsZUNvbnRlbnRbdGFiYmFibGVDb250ZW50Lmxlbmd0aCAtIDFdIHx8IGZsb2F0aW5nRm9jdXNOb2RlO1xuICAgICAgICAgIGlmIChpc0hUTUxFbGVtZW50KG5vZGVUb0ZvY3VzKSkge1xuICAgICAgICAgICAgbm9kZVRvRm9jdXMuZm9jdXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGb2N1cyBkaWQgbm90IG1vdmUgaW5zaWRlIHRoZSBmbG9hdGluZyB0cmVlLCBhbmQgdGhlcmUgYXJlIG5vIHRhYmJhYmxlXG4gICAgICAgIC8vIHBvcnRhbCBndWFyZHMgdG8gaGFuZGxlIGNsb3NpbmcuXG4gICAgICAgIGlmICghbW9kYWwgJiYgcmVsYXRlZFRhcmdldCAmJiBtb3ZlZFRvVW5yZWxhdGVkTm9kZSAmJiAhaXNQb2ludGVyRG93blJlZi5jdXJyZW50ICYmXG4gICAgICAgIC8vIEZpeCBSZWFjdCAxOCBTdHJpY3QgTW9kZSByZXR1cm5Gb2N1cyBkdWUgdG8gZG91YmxlIHJlbmRlcmluZy5cbiAgICAgICAgcmVsYXRlZFRhcmdldCAhPT0gZ2V0UHJldmlvdXNseUZvY3VzZWRFbGVtZW50KCkpIHtcbiAgICAgICAgICBwcmV2ZW50UmV0dXJuRm9jdXNSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgb25PcGVuQ2hhbmdlKGZhbHNlLCBldmVudCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoZmxvYXRpbmcgJiYgaXNIVE1MRWxlbWVudChkb21SZWZlcmVuY2UpKSB7XG4gICAgICBkb21SZWZlcmVuY2UuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCBoYW5kbGVGb2N1c091dHNpZGUpO1xuICAgICAgZG9tUmVmZXJlbmNlLmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgaGFuZGxlUG9pbnRlckRvd24pO1xuICAgICAgZmxvYXRpbmcuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNvdXQnLCBoYW5kbGVGb2N1c091dHNpZGUpO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgZG9tUmVmZXJlbmNlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgaGFuZGxlRm9jdXNPdXRzaWRlKTtcbiAgICAgICAgZG9tUmVmZXJlbmNlLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgaGFuZGxlUG9pbnRlckRvd24pO1xuICAgICAgICBmbG9hdGluZy5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIGhhbmRsZUZvY3VzT3V0c2lkZSk7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2Rpc2FibGVkLCBkb21SZWZlcmVuY2UsIGZsb2F0aW5nLCBmbG9hdGluZ0ZvY3VzTm9kZSwgbW9kYWwsIG5vZGVJZCwgdHJlZSwgcG9ydGFsQ29udGV4dCwgb25PcGVuQ2hhbmdlLCBjbG9zZU9uRm9jdXNPdXQsIHJlc3RvcmVGb2N1cywgZ2V0VGFiYmFibGVDb250ZW50XSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgdmFyIF9wb3J0YWxDb250ZXh0JHBvcnRhbDtcbiAgICBpZiAoZGlzYWJsZWQpIHJldHVybjtcblxuICAgIC8vIERvbid0IGhpZGUgcG9ydGFscyBuZXN0ZWQgd2l0aGluIHRoZSBwYXJlbnQgcG9ydGFsLlxuICAgIGNvbnN0IHBvcnRhbE5vZGVzID0gQXJyYXkuZnJvbSgocG9ydGFsQ29udGV4dCA9PSBudWxsIHx8IChfcG9ydGFsQ29udGV4dCRwb3J0YWwgPSBwb3J0YWxDb250ZXh0LnBvcnRhbE5vZGUpID09IG51bGwgPyB2b2lkIDAgOiBfcG9ydGFsQ29udGV4dCRwb3J0YWwucXVlcnlTZWxlY3RvckFsbChcIltcIiArIGNyZWF0ZUF0dHJpYnV0ZSgncG9ydGFsJykgKyBcIl1cIikpIHx8IFtdKTtcbiAgICBpZiAoZmxvYXRpbmcpIHtcbiAgICAgIGNvbnN0IGluc2lkZUVsZW1lbnRzID0gW2Zsb2F0aW5nLCAuLi5wb3J0YWxOb2Rlcywgc3RhcnREaXNtaXNzQnV0dG9uUmVmLmN1cnJlbnQsIGVuZERpc21pc3NCdXR0b25SZWYuY3VycmVudCwgb3JkZXJSZWYuY3VycmVudC5pbmNsdWRlcygncmVmZXJlbmNlJykgfHwgaXNVbnRyYXBwZWRUeXBlYWJsZUNvbWJvYm94ID8gZG9tUmVmZXJlbmNlIDogbnVsbF0uZmlsdGVyKHggPT4geCAhPSBudWxsKTtcbiAgICAgIGNvbnN0IGNsZWFudXAgPSBtb2RhbCB8fCBpc1VudHJhcHBlZFR5cGVhYmxlQ29tYm9ib3ggPyBtYXJrT3RoZXJzKGluc2lkZUVsZW1lbnRzLCBndWFyZHMsICFndWFyZHMpIDogbWFya090aGVycyhpbnNpZGVFbGVtZW50cyk7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjbGVhbnVwKCk7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2Rpc2FibGVkLCBkb21SZWZlcmVuY2UsIGZsb2F0aW5nLCBtb2RhbCwgb3JkZXJSZWYsIHBvcnRhbENvbnRleHQsIGlzVW50cmFwcGVkVHlwZWFibGVDb21ib2JveCwgZ3VhcmRzXSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoZGlzYWJsZWQgfHwgIWlzSFRNTEVsZW1lbnQoZmxvYXRpbmdGb2N1c05vZGUpKSByZXR1cm47XG4gICAgY29uc3QgZG9jID0gZ2V0RG9jdW1lbnQoZmxvYXRpbmdGb2N1c05vZGUpO1xuICAgIGNvbnN0IHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQoZG9jKTtcblxuICAgIC8vIFdhaXQgZm9yIGFueSBsYXlvdXQgZWZmZWN0IHN0YXRlIHNldHRlcnMgdG8gZXhlY3V0ZSB0byBzZXQgYHRhYkluZGV4YC5cbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICBjb25zdCBmb2N1c2FibGVFbGVtZW50cyA9IGdldFRhYmJhYmxlRWxlbWVudHMoZmxvYXRpbmdGb2N1c05vZGUpO1xuICAgICAgY29uc3QgaW5pdGlhbEZvY3VzVmFsdWUgPSBpbml0aWFsRm9jdXNSZWYuY3VycmVudDtcbiAgICAgIGNvbnN0IGVsVG9Gb2N1cyA9ICh0eXBlb2YgaW5pdGlhbEZvY3VzVmFsdWUgPT09ICdudW1iZXInID8gZm9jdXNhYmxlRWxlbWVudHNbaW5pdGlhbEZvY3VzVmFsdWVdIDogaW5pdGlhbEZvY3VzVmFsdWUuY3VycmVudCkgfHwgZmxvYXRpbmdGb2N1c05vZGU7XG4gICAgICBjb25zdCBmb2N1c0FscmVhZHlJbnNpZGVGbG9hdGluZ0VsID0gY29udGFpbnMoZmxvYXRpbmdGb2N1c05vZGUsIHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCk7XG4gICAgICBpZiAoIWlnbm9yZUluaXRpYWxGb2N1cyAmJiAhZm9jdXNBbHJlYWR5SW5zaWRlRmxvYXRpbmdFbCAmJiBvcGVuKSB7XG4gICAgICAgIGVucXVldWVGb2N1cyhlbFRvRm9jdXMsIHtcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiBlbFRvRm9jdXMgPT09IGZsb2F0aW5nRm9jdXNOb2RlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbZGlzYWJsZWQsIG9wZW4sIGZsb2F0aW5nRm9jdXNOb2RlLCBpZ25vcmVJbml0aWFsRm9jdXMsIGdldFRhYmJhYmxlRWxlbWVudHMsIGluaXRpYWxGb2N1c1JlZl0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKGRpc2FibGVkIHx8ICFmbG9hdGluZ0ZvY3VzTm9kZSkgcmV0dXJuO1xuICAgIGxldCBwcmV2ZW50UmV0dXJuRm9jdXNTY3JvbGwgPSBmYWxzZTtcbiAgICBjb25zdCBkb2MgPSBnZXREb2N1bWVudChmbG9hdGluZ0ZvY3VzTm9kZSk7XG4gICAgY29uc3QgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50ID0gYWN0aXZlRWxlbWVudChkb2MpO1xuICAgIGNvbnN0IGNvbnRleHREYXRhID0gZGF0YVJlZi5jdXJyZW50O1xuICAgIGxldCBvcGVuRXZlbnQgPSBjb250ZXh0RGF0YS5vcGVuRXZlbnQ7XG4gICAgYWRkUHJldmlvdXNseUZvY3VzZWRFbGVtZW50KHByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCk7XG5cbiAgICAvLyBEaXNtaXNzaW5nIHZpYSBvdXRzaWRlIHByZXNzIHNob3VsZCBhbHdheXMgaWdub3JlIGByZXR1cm5Gb2N1c2AgdG9cbiAgICAvLyBwcmV2ZW50IHVud2FudGVkIHNjcm9sbGluZy5cbiAgICBmdW5jdGlvbiBvbk9wZW5DaGFuZ2UoX3JlZikge1xuICAgICAgbGV0IHtcbiAgICAgICAgb3BlbixcbiAgICAgICAgcmVhc29uLFxuICAgICAgICBldmVudCxcbiAgICAgICAgbmVzdGVkXG4gICAgICB9ID0gX3JlZjtcbiAgICAgIGlmIChvcGVuKSB7XG4gICAgICAgIG9wZW5FdmVudCA9IGV2ZW50O1xuICAgICAgfVxuICAgICAgaWYgKHJlYXNvbiA9PT0gJ2VzY2FwZS1rZXknICYmIHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpIHtcbiAgICAgICAgYWRkUHJldmlvdXNseUZvY3VzZWRFbGVtZW50KHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpO1xuICAgICAgfVxuICAgICAgaWYgKHJlYXNvbiA9PT0gJ2hvdmVyJyAmJiBldmVudC50eXBlID09PSAnbW91c2VsZWF2ZScpIHtcbiAgICAgICAgcHJldmVudFJldHVybkZvY3VzUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHJlYXNvbiAhPT0gJ291dHNpZGUtcHJlc3MnKSByZXR1cm47XG4gICAgICBpZiAobmVzdGVkKSB7XG4gICAgICAgIHByZXZlbnRSZXR1cm5Gb2N1c1JlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIHByZXZlbnRSZXR1cm5Gb2N1c1Njcm9sbCA9IHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwcmV2ZW50UmV0dXJuRm9jdXNSZWYuY3VycmVudCA9ICEoaXNWaXJ0dWFsQ2xpY2soZXZlbnQpIHx8IGlzVmlydHVhbFBvaW50ZXJFdmVudChldmVudCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBldmVudHMub24oJ29wZW5jaGFuZ2UnLCBvbk9wZW5DaGFuZ2UpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBldmVudHMub2ZmKCdvcGVuY2hhbmdlJywgb25PcGVuQ2hhbmdlKTtcbiAgICAgIGNvbnN0IGFjdGl2ZUVsID0gYWN0aXZlRWxlbWVudChkb2MpO1xuICAgICAgY29uc3QgaXNGb2N1c0luc2lkZUZsb2F0aW5nVHJlZSA9IGNvbnRhaW5zKGZsb2F0aW5nLCBhY3RpdmVFbCkgfHwgdHJlZSAmJiBnZXRDaGlsZHJlbih0cmVlLm5vZGVzUmVmLmN1cnJlbnQsIG5vZGVJZCkuc29tZShub2RlID0+IHtcbiAgICAgICAgdmFyIF9ub2RlJGNvbnRleHQ1O1xuICAgICAgICByZXR1cm4gY29udGFpbnMoKF9ub2RlJGNvbnRleHQ1ID0gbm9kZS5jb250ZXh0KSA9PSBudWxsID8gdm9pZCAwIDogX25vZGUkY29udGV4dDUuZWxlbWVudHMuZmxvYXRpbmcsIGFjdGl2ZUVsKTtcbiAgICAgIH0pO1xuICAgICAgY29uc3Qgc2hvdWxkRm9jdXNSZWZlcmVuY2UgPSBpc0ZvY3VzSW5zaWRlRmxvYXRpbmdUcmVlIHx8IG9wZW5FdmVudCAmJiBbJ2NsaWNrJywgJ21vdXNlZG93biddLmluY2x1ZGVzKG9wZW5FdmVudC50eXBlKTtcbiAgICAgIGlmIChzaG91bGRGb2N1c1JlZmVyZW5jZSAmJiByZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KSB7XG4gICAgICAgIGFkZFByZXZpb3VzbHlGb2N1c2VkRWxlbWVudChyZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJldHVybkVsZW1lbnQgPSBnZXRQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKTtcbiAgICAgIGlmIChcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICAgIHJldHVybkZvY3VzUmVmLmN1cnJlbnQgJiYgIXByZXZlbnRSZXR1cm5Gb2N1c1JlZi5jdXJyZW50ICYmIGlzSFRNTEVsZW1lbnQocmV0dXJuRWxlbWVudCkgJiYgKFxuICAgICAgLy8gSWYgdGhlIGZvY3VzIG1vdmVkIHNvbWV3aGVyZSBlbHNlIGFmdGVyIG1vdW50LCBhdm9pZCByZXR1cm5pbmcgZm9jdXNcbiAgICAgIC8vIHNpbmNlIGl0IGxpa2VseSBlbnRlcmVkIGEgZGlmZmVyZW50IGVsZW1lbnQgd2hpY2ggc2hvdWxkIGJlXG4gICAgICAvLyByZXNwZWN0ZWQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9mbG9hdGluZy11aS9mbG9hdGluZy11aS9pc3N1ZXMvMjYwN1xuICAgICAgcmV0dXJuRWxlbWVudCAhPT0gYWN0aXZlRWwgJiYgYWN0aXZlRWwgIT09IGRvYy5ib2R5ID8gaXNGb2N1c0luc2lkZUZsb2F0aW5nVHJlZSA6IHRydWUpKSB7XG4gICAgICAgIGVucXVldWVGb2N1cyhyZXR1cm5FbGVtZW50LCB7XG4gICAgICAgICAgLy8gV2hlbiBkaXNtaXNzaW5nIG5lc3RlZCBmbG9hdGluZyBlbGVtZW50cywgYnkgdGhlIHRpbWUgdGhlIHJBRiBoYXNcbiAgICAgICAgICAvLyBleGVjdXRlZCwgdGhlIG1lbnVzIHdpbGwgYWxsIGhhdmUgYmVlbiB1bm1vdW50ZWQuIFdoZW4gdGhleSB0cnlcbiAgICAgICAgICAvLyB0byBnZXQgZm9jdXNlZCwgdGhlIGNhbGxzIGdldCBpZ25vcmVkIOKAlCBsZWF2aW5nIHRoZSByb290XG4gICAgICAgICAgLy8gcmVmZXJlbmNlIGZvY3VzZWQgYXMgZGVzaXJlZC5cbiAgICAgICAgICBjYW5jZWxQcmV2aW91czogZmFsc2UsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogcHJldmVudFJldHVybkZvY3VzU2Nyb2xsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtkaXNhYmxlZCwgZmxvYXRpbmcsIGZsb2F0aW5nRm9jdXNOb2RlLCByZXR1cm5Gb2N1c1JlZiwgZGF0YVJlZiwgcmVmcywgZXZlbnRzLCB0cmVlLCBub2RlSWRdKTtcblxuICAvLyBTeW5jaHJvbml6ZSB0aGUgYGNvbnRleHRgICYgYG1vZGFsYCB2YWx1ZSB0byB0aGUgRmxvYXRpbmdQb3J0YWwgY29udGV4dC5cbiAgLy8gSXQgd2lsbCBkZWNpZGUgd2hldGhlciBvciBub3QgaXQgbmVlZHMgdG8gcmVuZGVyIGl0cyBvd24gZ3VhcmRzLlxuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKGRpc2FibGVkKSByZXR1cm47XG4gICAgaWYgKCFwb3J0YWxDb250ZXh0KSByZXR1cm47XG4gICAgcG9ydGFsQ29udGV4dC5zZXRGb2N1c01hbmFnZXJTdGF0ZSh7XG4gICAgICBtb2RhbCxcbiAgICAgIGNsb3NlT25Gb2N1c091dCxcbiAgICAgIG9wZW4sXG4gICAgICBvbk9wZW5DaGFuZ2UsXG4gICAgICByZWZzXG4gICAgfSk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHBvcnRhbENvbnRleHQuc2V0Rm9jdXNNYW5hZ2VyU3RhdGUobnVsbCk7XG4gICAgfTtcbiAgfSwgW2Rpc2FibGVkLCBwb3J0YWxDb250ZXh0LCBtb2RhbCwgb3Blbiwgb25PcGVuQ2hhbmdlLCByZWZzLCBjbG9zZU9uRm9jdXNPdXRdKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmIChkaXNhYmxlZCkgcmV0dXJuO1xuICAgIGlmICghZmxvYXRpbmdGb2N1c05vZGUpIHJldHVybjtcbiAgICBpZiAodHlwZW9mIE11dGF0aW9uT2JzZXJ2ZXIgIT09ICdmdW5jdGlvbicpIHJldHVybjtcbiAgICBpZiAoaWdub3JlSW5pdGlhbEZvY3VzKSByZXR1cm47XG4gICAgY29uc3QgaGFuZGxlTXV0YXRpb24gPSAoKSA9PiB7XG4gICAgICBjb25zdCB0YWJJbmRleCA9IGZsb2F0aW5nRm9jdXNOb2RlLmdldEF0dHJpYnV0ZSgndGFiaW5kZXgnKTtcbiAgICAgIGNvbnN0IHRhYmJhYmxlQ29udGVudCA9IGdldFRhYmJhYmxlQ29udGVudCgpO1xuICAgICAgY29uc3QgYWN0aXZlRWwgPSBhY3RpdmVFbGVtZW50KGdldERvY3VtZW50KGZsb2F0aW5nKSk7XG4gICAgICBjb25zdCB0YWJiYWJsZUluZGV4ID0gdGFiYmFibGVDb250ZW50LmluZGV4T2YoYWN0aXZlRWwpO1xuICAgICAgaWYgKHRhYmJhYmxlSW5kZXggIT09IC0xKSB7XG4gICAgICAgIHRhYmJhYmxlSW5kZXhSZWYuY3VycmVudCA9IHRhYmJhYmxlSW5kZXg7XG4gICAgICB9XG4gICAgICBpZiAob3JkZXJSZWYuY3VycmVudC5pbmNsdWRlcygnZmxvYXRpbmcnKSB8fCBhY3RpdmVFbCAhPT0gcmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCAmJiB0YWJiYWJsZUNvbnRlbnQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGlmICh0YWJJbmRleCAhPT0gJzAnKSB7XG4gICAgICAgICAgZmxvYXRpbmdGb2N1c05vZGUuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJyk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodGFiSW5kZXggIT09ICctMScpIHtcbiAgICAgICAgZmxvYXRpbmdGb2N1c05vZGUuc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICctMScpO1xuICAgICAgfVxuICAgIH07XG4gICAgaGFuZGxlTXV0YXRpb24oKTtcbiAgICBjb25zdCBvYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKGhhbmRsZU11dGF0aW9uKTtcbiAgICBvYnNlcnZlci5vYnNlcnZlKGZsb2F0aW5nRm9jdXNOb2RlLCB7XG4gICAgICBjaGlsZExpc3Q6IHRydWUsXG4gICAgICBzdWJ0cmVlOiB0cnVlLFxuICAgICAgYXR0cmlidXRlczogdHJ1ZVxuICAgIH0pO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgfTtcbiAgfSwgW2Rpc2FibGVkLCBmbG9hdGluZywgZmxvYXRpbmdGb2N1c05vZGUsIHJlZnMsIG9yZGVyUmVmLCBnZXRUYWJiYWJsZUNvbnRlbnQsIGlnbm9yZUluaXRpYWxGb2N1c10pO1xuICBmdW5jdGlvbiByZW5kZXJEaXNtaXNzQnV0dG9uKGxvY2F0aW9uKSB7XG4gICAgaWYgKGRpc2FibGVkIHx8ICF2aXN1YWxseUhpZGRlbkRpc21pc3MgfHwgIW1vZGFsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KFZpc3VhbGx5SGlkZGVuRGlzbWlzcywge1xuICAgICAgcmVmOiBsb2NhdGlvbiA9PT0gJ3N0YXJ0JyA/IHN0YXJ0RGlzbWlzc0J1dHRvblJlZiA6IGVuZERpc21pc3NCdXR0b25SZWYsXG4gICAgICBvbkNsaWNrOiBldmVudCA9PiBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50Lm5hdGl2ZUV2ZW50KVxuICAgIH0sIHR5cGVvZiB2aXN1YWxseUhpZGRlbkRpc21pc3MgPT09ICdzdHJpbmcnID8gdmlzdWFsbHlIaWRkZW5EaXNtaXNzIDogJ0Rpc21pc3MnKTtcbiAgfVxuICBjb25zdCBzaG91bGRSZW5kZXJHdWFyZHMgPSAhZGlzYWJsZWQgJiYgZ3VhcmRzICYmIChpc0luc2lkZVBvcnRhbCB8fCBtb2RhbCk7XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChSZWFjdC5GcmFnbWVudCwgbnVsbCwgc2hvdWxkUmVuZGVyR3VhcmRzICYmIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KEZvY3VzR3VhcmQsIHtcbiAgICBcImRhdGEtdHlwZVwiOiBcImluc2lkZVwiLFxuICAgIHJlZjogcG9ydGFsQ29udGV4dCA9PSBudWxsID8gdm9pZCAwIDogcG9ydGFsQ29udGV4dC5iZWZvcmVJbnNpZGVSZWYsXG4gICAgb25Gb2N1czogZXZlbnQgPT4ge1xuICAgICAgaWYgKG1vZGFsKSB7XG4gICAgICAgIGNvbnN0IGVscyA9IGdldFRhYmJhYmxlRWxlbWVudHMoKTtcbiAgICAgICAgZW5xdWV1ZUZvY3VzKG9yZGVyWzBdID09PSAncmVmZXJlbmNlJyA/IGVsc1swXSA6IGVsc1tlbHMubGVuZ3RoIC0gMV0pO1xuICAgICAgfSBlbHNlIGlmIChwb3J0YWxDb250ZXh0ICE9IG51bGwgJiYgcG9ydGFsQ29udGV4dC5wcmVzZXJ2ZVRhYk9yZGVyICYmIHBvcnRhbENvbnRleHQucG9ydGFsTm9kZSkge1xuICAgICAgICBwcmV2ZW50UmV0dXJuRm9jdXNSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgICBpZiAoaXNPdXRzaWRlRXZlbnQoZXZlbnQsIHBvcnRhbENvbnRleHQucG9ydGFsTm9kZSkpIHtcbiAgICAgICAgICBjb25zdCBuZXh0VGFiYmFibGUgPSBnZXROZXh0VGFiYmFibGUoKSB8fCBkb21SZWZlcmVuY2U7XG4gICAgICAgICAgbmV4dFRhYmJhYmxlID09IG51bGwgfHwgbmV4dFRhYmJhYmxlLmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFyIF9wb3J0YWxDb250ZXh0JGJlZm9yZTtcbiAgICAgICAgICAoX3BvcnRhbENvbnRleHQkYmVmb3JlID0gcG9ydGFsQ29udGV4dC5iZWZvcmVPdXRzaWRlUmVmLmN1cnJlbnQpID09IG51bGwgfHwgX3BvcnRhbENvbnRleHQkYmVmb3JlLmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pLCAhaXNVbnRyYXBwZWRUeXBlYWJsZUNvbWJvYm94ICYmIHJlbmRlckRpc21pc3NCdXR0b24oJ3N0YXJ0JyksIGNoaWxkcmVuLCByZW5kZXJEaXNtaXNzQnV0dG9uKCdlbmQnKSwgc2hvdWxkUmVuZGVyR3VhcmRzICYmIC8qI19fUFVSRV9fKi9SZWFjdC5jcmVhdGVFbGVtZW50KEZvY3VzR3VhcmQsIHtcbiAgICBcImRhdGEtdHlwZVwiOiBcImluc2lkZVwiLFxuICAgIHJlZjogcG9ydGFsQ29udGV4dCA9PSBudWxsID8gdm9pZCAwIDogcG9ydGFsQ29udGV4dC5hZnRlckluc2lkZVJlZixcbiAgICBvbkZvY3VzOiBldmVudCA9PiB7XG4gICAgICBpZiAobW9kYWwpIHtcbiAgICAgICAgZW5xdWV1ZUZvY3VzKGdldFRhYmJhYmxlRWxlbWVudHMoKVswXSk7XG4gICAgICB9IGVsc2UgaWYgKHBvcnRhbENvbnRleHQgIT0gbnVsbCAmJiBwb3J0YWxDb250ZXh0LnByZXNlcnZlVGFiT3JkZXIgJiYgcG9ydGFsQ29udGV4dC5wb3J0YWxOb2RlKSB7XG4gICAgICAgIGlmIChjbG9zZU9uRm9jdXNPdXQpIHtcbiAgICAgICAgICBwcmV2ZW50UmV0dXJuRm9jdXNSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzT3V0c2lkZUV2ZW50KGV2ZW50LCBwb3J0YWxDb250ZXh0LnBvcnRhbE5vZGUpKSB7XG4gICAgICAgICAgY29uc3QgcHJldlRhYmJhYmxlID0gZ2V0UHJldmlvdXNUYWJiYWJsZSgpIHx8IGRvbVJlZmVyZW5jZTtcbiAgICAgICAgICBwcmV2VGFiYmFibGUgPT0gbnVsbCB8fCBwcmV2VGFiYmFibGUuZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB2YXIgX3BvcnRhbENvbnRleHQkYWZ0ZXJPO1xuICAgICAgICAgIChfcG9ydGFsQ29udGV4dCRhZnRlck8gPSBwb3J0YWxDb250ZXh0LmFmdGVyT3V0c2lkZVJlZi5jdXJyZW50KSA9PSBudWxsIHx8IF9wb3J0YWxDb250ZXh0JGFmdGVyTy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9KSk7XG59XG5cbmNvbnN0IGFjdGl2ZUxvY2tzID0gLyojX19QVVJFX18qL25ldyBTZXQoKTtcbi8qKlxuICogUHJvdmlkZXMgYmFzZSBzdHlsaW5nIGZvciBhIGZpeGVkIG92ZXJsYXkgZWxlbWVudCB0byBkaW0gY29udGVudCBvciBibG9ja1xuICogcG9pbnRlciBldmVudHMgYmVoaW5kIGEgZmxvYXRpbmcgZWxlbWVudC5cbiAqIEl0J3MgYSByZWd1bGFyIGA8ZGl2PmAsIHNvIGl0IGNhbiBiZSBzdHlsZWQgdmlhIGFueSBDU1Mgc29sdXRpb24geW91IHByZWZlci5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9GbG9hdGluZ092ZXJsYXlcbiAqL1xuY29uc3QgRmxvYXRpbmdPdmVybGF5ID0gLyojX19QVVJFX18qL1JlYWN0LmZvcndhcmRSZWYoZnVuY3Rpb24gRmxvYXRpbmdPdmVybGF5KHByb3BzLCByZWYpIHtcbiAgY29uc3Qge1xuICAgIGxvY2tTY3JvbGwgPSBmYWxzZSxcbiAgICAuLi5yZXN0XG4gIH0gPSBwcm9wcztcbiAgY29uc3QgbG9ja0lkID0gdXNlSWQoKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmICghbG9ja1Njcm9sbCkgcmV0dXJuO1xuICAgIGFjdGl2ZUxvY2tzLmFkZChsb2NrSWQpO1xuICAgIGNvbnN0IGlzSU9TID0gL2lQKGhvbmV8YWR8b2QpfGlPUy8udGVzdChnZXRQbGF0Zm9ybSgpKTtcbiAgICBjb25zdCBib2R5U3R5bGUgPSBkb2N1bWVudC5ib2R5LnN0eWxlO1xuICAgIC8vIFJUTCA8Ym9keT4gc2Nyb2xsYmFyXG4gICAgY29uc3Qgc2Nyb2xsYmFyWCA9IE1hdGgucm91bmQoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQpICsgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQ7XG4gICAgY29uc3QgcGFkZGluZ1Byb3AgPSBzY3JvbGxiYXJYID8gJ3BhZGRpbmdMZWZ0JyA6ICdwYWRkaW5nUmlnaHQnO1xuICAgIGNvbnN0IHNjcm9sbGJhcldpZHRoID0gd2luZG93LmlubmVyV2lkdGggLSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgY29uc3Qgc2Nyb2xsWCA9IGJvZHlTdHlsZS5sZWZ0ID8gcGFyc2VGbG9hdChib2R5U3R5bGUubGVmdCkgOiB3aW5kb3cucGFnZVhPZmZzZXQ7XG4gICAgY29uc3Qgc2Nyb2xsWSA9IGJvZHlTdHlsZS50b3AgPyBwYXJzZUZsb2F0KGJvZHlTdHlsZS50b3ApIDogd2luZG93LnBhZ2VZT2Zmc2V0O1xuICAgIGJvZHlTdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICAgIGlmIChzY3JvbGxiYXJXaWR0aCkge1xuICAgICAgYm9keVN0eWxlW3BhZGRpbmdQcm9wXSA9IHNjcm9sbGJhcldpZHRoICsgXCJweFwiO1xuICAgIH1cblxuICAgIC8vIE9ubHkgaU9TIGRvZXNuJ3QgcmVzcGVjdCBgb3ZlcmZsb3c6IGhpZGRlbmAgb24gZG9jdW1lbnQuYm9keSwgYW5kIHRoaXNcbiAgICAvLyB0ZWNobmlxdWUgaGFzIGZld2VyIHNpZGUgZWZmZWN0cy5cbiAgICBpZiAoaXNJT1MpIHtcbiAgICAgIHZhciBfd2luZG93JHZpc3VhbFZpZXdwb3IsIF93aW5kb3ckdmlzdWFsVmlld3BvcjI7XG4gICAgICAvLyBpT1MgMTIgZG9lcyBub3Qgc3VwcG9ydCBgdmlzdWFsVmlld3BvcnRgLlxuICAgICAgY29uc3Qgb2Zmc2V0TGVmdCA9ICgoX3dpbmRvdyR2aXN1YWxWaWV3cG9yID0gd2luZG93LnZpc3VhbFZpZXdwb3J0KSA9PSBudWxsID8gdm9pZCAwIDogX3dpbmRvdyR2aXN1YWxWaWV3cG9yLm9mZnNldExlZnQpIHx8IDA7XG4gICAgICBjb25zdCBvZmZzZXRUb3AgPSAoKF93aW5kb3ckdmlzdWFsVmlld3BvcjIgPSB3aW5kb3cudmlzdWFsVmlld3BvcnQpID09IG51bGwgPyB2b2lkIDAgOiBfd2luZG93JHZpc3VhbFZpZXdwb3IyLm9mZnNldFRvcCkgfHwgMDtcbiAgICAgIE9iamVjdC5hc3NpZ24oYm9keVN0eWxlLCB7XG4gICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICB0b3A6IC0oc2Nyb2xsWSAtIE1hdGguZmxvb3Iob2Zmc2V0VG9wKSkgKyBcInB4XCIsXG4gICAgICAgIGxlZnQ6IC0oc2Nyb2xsWCAtIE1hdGguZmxvb3Iob2Zmc2V0TGVmdCkpICsgXCJweFwiLFxuICAgICAgICByaWdodDogJzAnXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGFjdGl2ZUxvY2tzLmRlbGV0ZShsb2NrSWQpO1xuICAgICAgaWYgKGFjdGl2ZUxvY2tzLnNpemUgPT09IDApIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbihib2R5U3R5bGUsIHtcbiAgICAgICAgICBvdmVyZmxvdzogJycsXG4gICAgICAgICAgW3BhZGRpbmdQcm9wXTogJydcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChpc0lPUykge1xuICAgICAgICAgIE9iamVjdC5hc3NpZ24oYm9keVN0eWxlLCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogJycsXG4gICAgICAgICAgICB0b3A6ICcnLFxuICAgICAgICAgICAgbGVmdDogJycsXG4gICAgICAgICAgICByaWdodDogJydcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB3aW5kb3cuc2Nyb2xsVG8oc2Nyb2xsWCwgc2Nyb2xsWSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbbG9ja0lkLCBsb2NrU2Nyb2xsXSk7XG4gIHJldHVybiAvKiNfX1BVUkVfXyovUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCBfZXh0ZW5kcyh7XG4gICAgcmVmOiByZWZcbiAgfSwgcmVzdCwge1xuICAgIHN0eWxlOiB7XG4gICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgIG92ZXJmbG93OiAnYXV0bycsXG4gICAgICB0b3A6IDAsXG4gICAgICByaWdodDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIGxlZnQ6IDAsXG4gICAgICAuLi5yZXN0LnN0eWxlXG4gICAgfVxuICB9KSk7XG59KTtcblxuZnVuY3Rpb24gaXNCdXR0b25UYXJnZXQoZXZlbnQpIHtcbiAgcmV0dXJuIGlzSFRNTEVsZW1lbnQoZXZlbnQudGFyZ2V0KSAmJiBldmVudC50YXJnZXQudGFnTmFtZSA9PT0gJ0JVVFRPTic7XG59XG5mdW5jdGlvbiBpc1NwYWNlSWdub3JlZChlbGVtZW50KSB7XG4gIHJldHVybiBpc1R5cGVhYmxlRWxlbWVudChlbGVtZW50KTtcbn1cbi8qKlxuICogT3BlbnMgb3IgY2xvc2VzIHRoZSBmbG9hdGluZyBlbGVtZW50IHdoZW4gY2xpY2tpbmcgdGhlIHJlZmVyZW5jZSBlbGVtZW50LlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZUNsaWNrXG4gKi9cbmZ1bmN0aW9uIHVzZUNsaWNrKGNvbnRleHQsIHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgb3BlbixcbiAgICBvbk9wZW5DaGFuZ2UsXG4gICAgZGF0YVJlZixcbiAgICBlbGVtZW50czoge1xuICAgICAgZG9tUmVmZXJlbmNlXG4gICAgfVxuICB9ID0gY29udGV4dDtcbiAgY29uc3Qge1xuICAgIGVuYWJsZWQgPSB0cnVlLFxuICAgIGV2ZW50OiBldmVudE9wdGlvbiA9ICdjbGljaycsXG4gICAgdG9nZ2xlID0gdHJ1ZSxcbiAgICBpZ25vcmVNb3VzZSA9IGZhbHNlLFxuICAgIGtleWJvYXJkSGFuZGxlcnMgPSB0cnVlXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgcG9pbnRlclR5cGVSZWYgPSBSZWFjdC51c2VSZWYoKTtcbiAgY29uc3QgZGlkS2V5RG93blJlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIHJldHVybiBSZWFjdC51c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHJldHVybiB7fTtcbiAgICByZXR1cm4ge1xuICAgICAgcmVmZXJlbmNlOiB7XG4gICAgICAgIG9uUG9pbnRlckRvd24oZXZlbnQpIHtcbiAgICAgICAgICBwb2ludGVyVHlwZVJlZi5jdXJyZW50ID0gZXZlbnQucG9pbnRlclR5cGU7XG4gICAgICAgIH0sXG4gICAgICAgIG9uTW91c2VEb3duKGV2ZW50KSB7XG4gICAgICAgICAgLy8gSWdub3JlIGFsbCBidXR0b25zIGV4Y2VwdCBmb3IgdGhlIFwibWFpblwiIGJ1dHRvbi5cbiAgICAgICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvTW91c2VFdmVudC9idXR0b25cbiAgICAgICAgICBpZiAoZXZlbnQuYnV0dG9uICE9PSAwKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChpc01vdXNlTGlrZVBvaW50ZXJUeXBlKHBvaW50ZXJUeXBlUmVmLmN1cnJlbnQsIHRydWUpICYmIGlnbm9yZU1vdXNlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChldmVudE9wdGlvbiA9PT0gJ2NsaWNrJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAob3BlbiAmJiB0b2dnbGUgJiYgKGRhdGFSZWYuY3VycmVudC5vcGVuRXZlbnQgPyBkYXRhUmVmLmN1cnJlbnQub3BlbkV2ZW50LnR5cGUgPT09ICdtb3VzZWRvd24nIDogdHJ1ZSkpIHtcbiAgICAgICAgICAgIG9uT3BlbkNoYW5nZShmYWxzZSwgZXZlbnQubmF0aXZlRXZlbnQsICdjbGljaycpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBQcmV2ZW50IHN0ZWFsaW5nIGZvY3VzIGZyb20gdGhlIGZsb2F0aW5nIGVsZW1lbnRcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBvbk9wZW5DaGFuZ2UodHJ1ZSwgZXZlbnQubmF0aXZlRXZlbnQsICdjbGljaycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25DbGljayhldmVudCkge1xuICAgICAgICAgIGlmIChldmVudE9wdGlvbiA9PT0gJ21vdXNlZG93bicgJiYgcG9pbnRlclR5cGVSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgcG9pbnRlclR5cGVSZWYuY3VycmVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGlzTW91c2VMaWtlUG9pbnRlclR5cGUocG9pbnRlclR5cGVSZWYuY3VycmVudCwgdHJ1ZSkgJiYgaWdub3JlTW91c2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKG9wZW4gJiYgdG9nZ2xlICYmIChkYXRhUmVmLmN1cnJlbnQub3BlbkV2ZW50ID8gZGF0YVJlZi5jdXJyZW50Lm9wZW5FdmVudC50eXBlID09PSAnY2xpY2snIDogdHJ1ZSkpIHtcbiAgICAgICAgICAgIG9uT3BlbkNoYW5nZShmYWxzZSwgZXZlbnQubmF0aXZlRXZlbnQsICdjbGljaycpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvbk9wZW5DaGFuZ2UodHJ1ZSwgZXZlbnQubmF0aXZlRXZlbnQsICdjbGljaycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25LZXlEb3duKGV2ZW50KSB7XG4gICAgICAgICAgcG9pbnRlclR5cGVSZWYuY3VycmVudCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICBpZiAoZXZlbnQuZGVmYXVsdFByZXZlbnRlZCB8fCAha2V5Ym9hcmRIYW5kbGVycyB8fCBpc0J1dHRvblRhcmdldChldmVudCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnICYmICFpc1NwYWNlSWdub3JlZChkb21SZWZlcmVuY2UpKSB7XG4gICAgICAgICAgICAvLyBQcmV2ZW50IHNjcm9sbGluZ1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGRpZEtleURvd25SZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGlmIChvcGVuICYmIHRvZ2dsZSkge1xuICAgICAgICAgICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50Lm5hdGl2ZUV2ZW50LCAnY2xpY2snKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG9uT3BlbkNoYW5nZSh0cnVlLCBldmVudC5uYXRpdmVFdmVudCwgJ2NsaWNrJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBvbktleVVwKGV2ZW50KSB7XG4gICAgICAgICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQgfHwgIWtleWJvYXJkSGFuZGxlcnMgfHwgaXNCdXR0b25UYXJnZXQoZXZlbnQpIHx8IGlzU3BhY2VJZ25vcmVkKGRvbVJlZmVyZW5jZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnICYmIGRpZEtleURvd25SZWYuY3VycmVudCkge1xuICAgICAgICAgICAgZGlkS2V5RG93blJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAob3BlbiAmJiB0b2dnbGUpIHtcbiAgICAgICAgICAgICAgb25PcGVuQ2hhbmdlKGZhbHNlLCBldmVudC5uYXRpdmVFdmVudCwgJ2NsaWNrJyk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvbk9wZW5DaGFuZ2UodHJ1ZSwgZXZlbnQubmF0aXZlRXZlbnQsICdjbGljaycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH0sIFtlbmFibGVkLCBkYXRhUmVmLCBldmVudE9wdGlvbiwgaWdub3JlTW91c2UsIGtleWJvYXJkSGFuZGxlcnMsIGRvbVJlZmVyZW5jZSwgdG9nZ2xlLCBvcGVuLCBvbk9wZW5DaGFuZ2VdKTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlVmlydHVhbEVsZW1lbnQoZG9tRWxlbWVudCwgZGF0YSkge1xuICBsZXQgb2Zmc2V0WCA9IG51bGw7XG4gIGxldCBvZmZzZXRZID0gbnVsbDtcbiAgbGV0IGlzQXV0b1VwZGF0ZUV2ZW50ID0gZmFsc2U7XG4gIHJldHVybiB7XG4gICAgY29udGV4dEVsZW1lbnQ6IGRvbUVsZW1lbnQgfHwgdW5kZWZpbmVkLFxuICAgIGdldEJvdW5kaW5nQ2xpZW50UmVjdCgpIHtcbiAgICAgIHZhciBfZGF0YSRkYXRhUmVmJGN1cnJlbnQ7XG4gICAgICBjb25zdCBkb21SZWN0ID0gKGRvbUVsZW1lbnQgPT0gbnVsbCA/IHZvaWQgMCA6IGRvbUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpIHx8IHtcbiAgICAgICAgd2lkdGg6IDAsXG4gICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgeDogMCxcbiAgICAgICAgeTogMFxuICAgICAgfTtcbiAgICAgIGNvbnN0IGlzWEF4aXMgPSBkYXRhLmF4aXMgPT09ICd4JyB8fCBkYXRhLmF4aXMgPT09ICdib3RoJztcbiAgICAgIGNvbnN0IGlzWUF4aXMgPSBkYXRhLmF4aXMgPT09ICd5JyB8fCBkYXRhLmF4aXMgPT09ICdib3RoJztcbiAgICAgIGNvbnN0IGNhblRyYWNrQ3Vyc29yT25BdXRvVXBkYXRlID0gWydtb3VzZWVudGVyJywgJ21vdXNlbW92ZSddLmluY2x1ZGVzKCgoX2RhdGEkZGF0YVJlZiRjdXJyZW50ID0gZGF0YS5kYXRhUmVmLmN1cnJlbnQub3BlbkV2ZW50KSA9PSBudWxsID8gdm9pZCAwIDogX2RhdGEkZGF0YVJlZiRjdXJyZW50LnR5cGUpIHx8ICcnKSAmJiBkYXRhLnBvaW50ZXJUeXBlICE9PSAndG91Y2gnO1xuICAgICAgbGV0IHdpZHRoID0gZG9tUmVjdC53aWR0aDtcbiAgICAgIGxldCBoZWlnaHQgPSBkb21SZWN0LmhlaWdodDtcbiAgICAgIGxldCB4ID0gZG9tUmVjdC54O1xuICAgICAgbGV0IHkgPSBkb21SZWN0Lnk7XG4gICAgICBpZiAob2Zmc2V0WCA9PSBudWxsICYmIGRhdGEueCAmJiBpc1hBeGlzKSB7XG4gICAgICAgIG9mZnNldFggPSBkb21SZWN0LnggLSBkYXRhLng7XG4gICAgICB9XG4gICAgICBpZiAob2Zmc2V0WSA9PSBudWxsICYmIGRhdGEueSAmJiBpc1lBeGlzKSB7XG4gICAgICAgIG9mZnNldFkgPSBkb21SZWN0LnkgLSBkYXRhLnk7XG4gICAgICB9XG4gICAgICB4IC09IG9mZnNldFggfHwgMDtcbiAgICAgIHkgLT0gb2Zmc2V0WSB8fCAwO1xuICAgICAgd2lkdGggPSAwO1xuICAgICAgaGVpZ2h0ID0gMDtcbiAgICAgIGlmICghaXNBdXRvVXBkYXRlRXZlbnQgfHwgY2FuVHJhY2tDdXJzb3JPbkF1dG9VcGRhdGUpIHtcbiAgICAgICAgd2lkdGggPSBkYXRhLmF4aXMgPT09ICd5JyA/IGRvbVJlY3Qud2lkdGggOiAwO1xuICAgICAgICBoZWlnaHQgPSBkYXRhLmF4aXMgPT09ICd4JyA/IGRvbVJlY3QuaGVpZ2h0IDogMDtcbiAgICAgICAgeCA9IGlzWEF4aXMgJiYgZGF0YS54ICE9IG51bGwgPyBkYXRhLnggOiB4O1xuICAgICAgICB5ID0gaXNZQXhpcyAmJiBkYXRhLnkgIT0gbnVsbCA/IGRhdGEueSA6IHk7XG4gICAgICB9IGVsc2UgaWYgKGlzQXV0b1VwZGF0ZUV2ZW50ICYmICFjYW5UcmFja0N1cnNvck9uQXV0b1VwZGF0ZSkge1xuICAgICAgICBoZWlnaHQgPSBkYXRhLmF4aXMgPT09ICd4JyA/IGRvbVJlY3QuaGVpZ2h0IDogaGVpZ2h0O1xuICAgICAgICB3aWR0aCA9IGRhdGEuYXhpcyA9PT0gJ3knID8gZG9tUmVjdC53aWR0aCA6IHdpZHRoO1xuICAgICAgfVxuICAgICAgaXNBdXRvVXBkYXRlRXZlbnQgPSB0cnVlO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgd2lkdGgsXG4gICAgICAgIGhlaWdodCxcbiAgICAgICAgeCxcbiAgICAgICAgeSxcbiAgICAgICAgdG9wOiB5LFxuICAgICAgICByaWdodDogeCArIHdpZHRoLFxuICAgICAgICBib3R0b206IHkgKyBoZWlnaHQsXG4gICAgICAgIGxlZnQ6IHhcbiAgICAgIH07XG4gICAgfVxuICB9O1xufVxuZnVuY3Rpb24gaXNNb3VzZUJhc2VkRXZlbnQoZXZlbnQpIHtcbiAgcmV0dXJuIGV2ZW50ICE9IG51bGwgJiYgZXZlbnQuY2xpZW50WCAhPSBudWxsO1xufVxuLyoqXG4gKiBQb3NpdGlvbnMgdGhlIGZsb2F0aW5nIGVsZW1lbnQgcmVsYXRpdmUgdG8gYSBjbGllbnQgcG9pbnQgKGluIHRoZSB2aWV3cG9ydCksXG4gKiBzdWNoIGFzIHRoZSBtb3VzZSBwb3NpdGlvbi4gQnkgZGVmYXVsdCwgaXQgZm9sbG93cyB0aGUgbW91c2UgY3Vyc29yLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZUNsaWVudFBvaW50XG4gKi9cbmZ1bmN0aW9uIHVzZUNsaWVudFBvaW50KGNvbnRleHQsIHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgb3BlbixcbiAgICBkYXRhUmVmLFxuICAgIGVsZW1lbnRzOiB7XG4gICAgICBmbG9hdGluZyxcbiAgICAgIGRvbVJlZmVyZW5jZVxuICAgIH0sXG4gICAgcmVmc1xuICB9ID0gY29udGV4dDtcbiAgY29uc3Qge1xuICAgIGVuYWJsZWQgPSB0cnVlLFxuICAgIGF4aXMgPSAnYm90aCcsXG4gICAgeCA9IG51bGwsXG4gICAgeSA9IG51bGxcbiAgfSA9IHByb3BzO1xuICBjb25zdCBpbml0aWFsUmVmID0gUmVhY3QudXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgY2xlYW51cExpc3RlbmVyUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICBjb25zdCBbcG9pbnRlclR5cGUsIHNldFBvaW50ZXJUeXBlXSA9IFJlYWN0LnVzZVN0YXRlKCk7XG4gIGNvbnN0IFtyZWFjdGl2ZSwgc2V0UmVhY3RpdmVdID0gUmVhY3QudXNlU3RhdGUoW10pO1xuICBjb25zdCBzZXRSZWZlcmVuY2UgPSB1c2VFZmZlY3RFdmVudCgoeCwgeSkgPT4ge1xuICAgIGlmIChpbml0aWFsUmVmLmN1cnJlbnQpIHJldHVybjtcblxuICAgIC8vIFByZXZlbnQgc2V0dGluZyBpZiB0aGUgb3BlbiBldmVudCB3YXMgbm90IGEgbW91c2UtbGlrZSBvbmVcbiAgICAvLyAoZS5nLiBmb2N1cyB0byBvcGVuLCB0aGVuIGhvdmVyIG92ZXIgdGhlIHJlZmVyZW5jZSBlbGVtZW50KS5cbiAgICAvLyBPbmx5IGFwcGx5IGlmIHRoZSBldmVudCBleGlzdHMuXG4gICAgaWYgKGRhdGFSZWYuY3VycmVudC5vcGVuRXZlbnQgJiYgIWlzTW91c2VCYXNlZEV2ZW50KGRhdGFSZWYuY3VycmVudC5vcGVuRXZlbnQpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJlZnMuc2V0UG9zaXRpb25SZWZlcmVuY2UoY3JlYXRlVmlydHVhbEVsZW1lbnQoZG9tUmVmZXJlbmNlLCB7XG4gICAgICB4LFxuICAgICAgeSxcbiAgICAgIGF4aXMsXG4gICAgICBkYXRhUmVmLFxuICAgICAgcG9pbnRlclR5cGVcbiAgICB9KSk7XG4gIH0pO1xuICBjb25zdCBoYW5kbGVSZWZlcmVuY2VFbnRlck9yTW92ZSA9IHVzZUVmZmVjdEV2ZW50KGV2ZW50ID0+IHtcbiAgICBpZiAoeCAhPSBudWxsIHx8IHkgIT0gbnVsbCkgcmV0dXJuO1xuICAgIGlmICghb3Blbikge1xuICAgICAgc2V0UmVmZXJlbmNlKGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpO1xuICAgIH0gZWxzZSBpZiAoIWNsZWFudXBMaXN0ZW5lclJlZi5jdXJyZW50KSB7XG4gICAgICAvLyBJZiB0aGVyZSdzIG5vIGNsZWFudXAsIHRoZXJlJ3Mgbm8gbGlzdGVuZXIsIGJ1dCB3ZSB3YW50IHRvIGVuc3VyZVxuICAgICAgLy8gd2UgYWRkIHRoZSBsaXN0ZW5lciBpZiB0aGUgY3Vyc29yIGxhbmRlZCBvbiB0aGUgZmxvYXRpbmcgZWxlbWVudCBhbmRcbiAgICAgIC8vIHRoZW4gYmFjayBvbiB0aGUgcmVmZXJlbmNlIChpLmUuIGl0J3MgaW50ZXJhY3RpdmUpLlxuICAgICAgc2V0UmVhY3RpdmUoW10pO1xuICAgIH1cbiAgfSk7XG5cbiAgLy8gSWYgdGhlIHBvaW50ZXIgaXMgYSBtb3VzZS1saWtlIHBvaW50ZXIsIHdlIHdhbnQgdG8gY29udGludWUgZm9sbG93aW5nIHRoZVxuICAvLyBtb3VzZSBldmVuIGlmIHRoZSBmbG9hdGluZyBlbGVtZW50IGlzIHRyYW5zaXRpb25pbmcgb3V0LiBPbiB0b3VjaFxuICAvLyBkZXZpY2VzLCB0aGlzIGlzIHVuZGVzaXJhYmxlIGJlY2F1c2UgdGhlIGZsb2F0aW5nIGVsZW1lbnQgd2lsbCBtb3ZlIHRvXG4gIC8vIHRoZSBkaXNtaXNzYWwgdG91Y2ggcG9pbnQuXG4gIGNvbnN0IG9wZW5DaGVjayA9IGlzTW91c2VMaWtlUG9pbnRlclR5cGUocG9pbnRlclR5cGUpID8gZmxvYXRpbmcgOiBvcGVuO1xuICBjb25zdCBhZGRMaXN0ZW5lciA9IFJlYWN0LnVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAvLyBFeHBsaWNpdGx5IHNwZWNpZmllZCBgeGAvYHlgIGNvb3JkaW5hdGVzIHNob3VsZG4ndCBhZGQgYSBsaXN0ZW5lci5cbiAgICBpZiAoIW9wZW5DaGVjayB8fCAhZW5hYmxlZCB8fCB4ICE9IG51bGwgfHwgeSAhPSBudWxsKSByZXR1cm47XG4gICAgY29uc3Qgd2luID0gZ2V0V2luZG93KGZsb2F0aW5nKTtcbiAgICBmdW5jdGlvbiBoYW5kbGVNb3VzZU1vdmUoZXZlbnQpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGdldFRhcmdldChldmVudCk7XG4gICAgICBpZiAoIWNvbnRhaW5zKGZsb2F0aW5nLCB0YXJnZXQpKSB7XG4gICAgICAgIHNldFJlZmVyZW5jZShldmVudC5jbGllbnRYLCBldmVudC5jbGllbnRZKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHdpbi5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCBoYW5kbGVNb3VzZU1vdmUpO1xuICAgICAgICBjbGVhbnVwTGlzdGVuZXJSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICghZGF0YVJlZi5jdXJyZW50Lm9wZW5FdmVudCB8fCBpc01vdXNlQmFzZWRFdmVudChkYXRhUmVmLmN1cnJlbnQub3BlbkV2ZW50KSkge1xuICAgICAgd2luLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsIGhhbmRsZU1vdXNlTW92ZSk7XG4gICAgICBjb25zdCBjbGVhbnVwID0gKCkgPT4ge1xuICAgICAgICB3aW4ucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vtb3ZlJywgaGFuZGxlTW91c2VNb3ZlKTtcbiAgICAgICAgY2xlYW51cExpc3RlbmVyUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgfTtcbiAgICAgIGNsZWFudXBMaXN0ZW5lclJlZi5jdXJyZW50ID0gY2xlYW51cDtcbiAgICAgIHJldHVybiBjbGVhbnVwO1xuICAgIH1cbiAgICByZWZzLnNldFBvc2l0aW9uUmVmZXJlbmNlKGRvbVJlZmVyZW5jZSk7XG4gIH0sIFtvcGVuQ2hlY2ssIGVuYWJsZWQsIHgsIHksIGZsb2F0aW5nLCBkYXRhUmVmLCByZWZzLCBkb21SZWZlcmVuY2UsIHNldFJlZmVyZW5jZV0pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiBhZGRMaXN0ZW5lcigpO1xuICB9LCBbYWRkTGlzdGVuZXIsIHJlYWN0aXZlXSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGVuYWJsZWQgJiYgIWZsb2F0aW5nKSB7XG4gICAgICBpbml0aWFsUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICB9XG4gIH0sIFtlbmFibGVkLCBmbG9hdGluZ10pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCAmJiBvcGVuKSB7XG4gICAgICBpbml0aWFsUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgIH1cbiAgfSwgW2VuYWJsZWQsIG9wZW5dKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmIChlbmFibGVkICYmICh4ICE9IG51bGwgfHwgeSAhPSBudWxsKSkge1xuICAgICAgaW5pdGlhbFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICBzZXRSZWZlcmVuY2UoeCwgeSk7XG4gICAgfVxuICB9LCBbZW5hYmxlZCwgeCwgeSwgc2V0UmVmZXJlbmNlXSk7XG4gIHJldHVybiBSZWFjdC51c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHJldHVybiB7fTtcbiAgICBmdW5jdGlvbiBzZXRQb2ludGVyVHlwZVJlZihfcmVmKSB7XG4gICAgICBsZXQge1xuICAgICAgICBwb2ludGVyVHlwZVxuICAgICAgfSA9IF9yZWY7XG4gICAgICBzZXRQb2ludGVyVHlwZShwb2ludGVyVHlwZSk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICByZWZlcmVuY2U6IHtcbiAgICAgICAgb25Qb2ludGVyRG93bjogc2V0UG9pbnRlclR5cGVSZWYsXG4gICAgICAgIG9uUG9pbnRlckVudGVyOiBzZXRQb2ludGVyVHlwZVJlZixcbiAgICAgICAgb25Nb3VzZU1vdmU6IGhhbmRsZVJlZmVyZW5jZUVudGVyT3JNb3ZlLFxuICAgICAgICBvbk1vdXNlRW50ZXI6IGhhbmRsZVJlZmVyZW5jZUVudGVyT3JNb3ZlXG4gICAgICB9XG4gICAgfTtcbiAgfSwgW2VuYWJsZWQsIGhhbmRsZVJlZmVyZW5jZUVudGVyT3JNb3ZlXSk7XG59XG5cbmNvbnN0IGJ1YmJsZUhhbmRsZXJLZXlzID0ge1xuICBwb2ludGVyZG93bjogJ29uUG9pbnRlckRvd24nLFxuICBtb3VzZWRvd246ICdvbk1vdXNlRG93bicsXG4gIGNsaWNrOiAnb25DbGljaydcbn07XG5jb25zdCBjYXB0dXJlSGFuZGxlcktleXMgPSB7XG4gIHBvaW50ZXJkb3duOiAnb25Qb2ludGVyRG93bkNhcHR1cmUnLFxuICBtb3VzZWRvd246ICdvbk1vdXNlRG93bkNhcHR1cmUnLFxuICBjbGljazogJ29uQ2xpY2tDYXB0dXJlJ1xufTtcbmNvbnN0IG5vcm1hbGl6ZVByb3AgPSBub3JtYWxpemFibGUgPT4ge1xuICB2YXIgX25vcm1hbGl6YWJsZSRlc2NhcGVLLCBfbm9ybWFsaXphYmxlJG91dHNpZGU7XG4gIHJldHVybiB7XG4gICAgZXNjYXBlS2V5OiB0eXBlb2Ygbm9ybWFsaXphYmxlID09PSAnYm9vbGVhbicgPyBub3JtYWxpemFibGUgOiAoX25vcm1hbGl6YWJsZSRlc2NhcGVLID0gbm9ybWFsaXphYmxlID09IG51bGwgPyB2b2lkIDAgOiBub3JtYWxpemFibGUuZXNjYXBlS2V5KSAhPSBudWxsID8gX25vcm1hbGl6YWJsZSRlc2NhcGVLIDogZmFsc2UsXG4gICAgb3V0c2lkZVByZXNzOiB0eXBlb2Ygbm9ybWFsaXphYmxlID09PSAnYm9vbGVhbicgPyBub3JtYWxpemFibGUgOiAoX25vcm1hbGl6YWJsZSRvdXRzaWRlID0gbm9ybWFsaXphYmxlID09IG51bGwgPyB2b2lkIDAgOiBub3JtYWxpemFibGUub3V0c2lkZVByZXNzKSAhPSBudWxsID8gX25vcm1hbGl6YWJsZSRvdXRzaWRlIDogdHJ1ZVxuICB9O1xufTtcbi8qKlxuICogQ2xvc2VzIHRoZSBmbG9hdGluZyBlbGVtZW50IHdoZW4gYSBkaXNtaXNzYWwgaXMgcmVxdWVzdGVkIOKAlCBieSBkZWZhdWx0LCB3aGVuXG4gKiB0aGUgdXNlciBwcmVzc2VzIHRoZSBgZXNjYXBlYCBrZXkgb3Igb3V0c2lkZSBvZiB0aGUgZmxvYXRpbmcgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy91c2VEaXNtaXNzXG4gKi9cbmZ1bmN0aW9uIHVzZURpc21pc3MoY29udGV4dCwgcHJvcHMpIHtcbiAgaWYgKHByb3BzID09PSB2b2lkIDApIHtcbiAgICBwcm9wcyA9IHt9O1xuICB9XG4gIGNvbnN0IHtcbiAgICBvcGVuLFxuICAgIG9uT3BlbkNoYW5nZSxcbiAgICBlbGVtZW50czoge1xuICAgICAgcmVmZXJlbmNlLFxuICAgICAgZG9tUmVmZXJlbmNlLFxuICAgICAgZmxvYXRpbmdcbiAgICB9LFxuICAgIGRhdGFSZWZcbiAgfSA9IGNvbnRleHQ7XG4gIGNvbnN0IHtcbiAgICBlbmFibGVkID0gdHJ1ZSxcbiAgICBlc2NhcGVLZXkgPSB0cnVlLFxuICAgIG91dHNpZGVQcmVzczogdW5zdGFibGVfb3V0c2lkZVByZXNzID0gdHJ1ZSxcbiAgICBvdXRzaWRlUHJlc3NFdmVudCA9ICdwb2ludGVyZG93bicsXG4gICAgcmVmZXJlbmNlUHJlc3MgPSBmYWxzZSxcbiAgICByZWZlcmVuY2VQcmVzc0V2ZW50ID0gJ3BvaW50ZXJkb3duJyxcbiAgICBhbmNlc3RvclNjcm9sbCA9IGZhbHNlLFxuICAgIGJ1YmJsZXMsXG4gICAgY2FwdHVyZVxuICB9ID0gcHJvcHM7XG4gIGNvbnN0IHRyZWUgPSB1c2VGbG9hdGluZ1RyZWUoKTtcbiAgY29uc3Qgb3V0c2lkZVByZXNzRm4gPSB1c2VFZmZlY3RFdmVudCh0eXBlb2YgdW5zdGFibGVfb3V0c2lkZVByZXNzID09PSAnZnVuY3Rpb24nID8gdW5zdGFibGVfb3V0c2lkZVByZXNzIDogKCkgPT4gZmFsc2UpO1xuICBjb25zdCBvdXRzaWRlUHJlc3MgPSB0eXBlb2YgdW5zdGFibGVfb3V0c2lkZVByZXNzID09PSAnZnVuY3Rpb24nID8gb3V0c2lkZVByZXNzRm4gOiB1bnN0YWJsZV9vdXRzaWRlUHJlc3M7XG4gIGNvbnN0IGluc2lkZVJlYWN0VHJlZVJlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IGVuZGVkT3JTdGFydGVkSW5zaWRlUmVmID0gUmVhY3QudXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qge1xuICAgIGVzY2FwZUtleTogZXNjYXBlS2V5QnViYmxlcyxcbiAgICBvdXRzaWRlUHJlc3M6IG91dHNpZGVQcmVzc0J1YmJsZXNcbiAgfSA9IG5vcm1hbGl6ZVByb3AoYnViYmxlcyk7XG4gIGNvbnN0IHtcbiAgICBlc2NhcGVLZXk6IGVzY2FwZUtleUNhcHR1cmUsXG4gICAgb3V0c2lkZVByZXNzOiBvdXRzaWRlUHJlc3NDYXB0dXJlXG4gIH0gPSBub3JtYWxpemVQcm9wKGNhcHR1cmUpO1xuICBjb25zdCBjbG9zZU9uRXNjYXBlS2V5RG93biA9IHVzZUVmZmVjdEV2ZW50KGV2ZW50ID0+IHtcbiAgICB2YXIgX2RhdGFSZWYkY3VycmVudCRmbG9hO1xuICAgIGlmICghb3BlbiB8fCAhZW5hYmxlZCB8fCAhZXNjYXBlS2V5IHx8IGV2ZW50LmtleSAhPT0gJ0VzY2FwZScpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgbm9kZUlkID0gKF9kYXRhUmVmJGN1cnJlbnQkZmxvYSA9IGRhdGFSZWYuY3VycmVudC5mbG9hdGluZ0NvbnRleHQpID09IG51bGwgPyB2b2lkIDAgOiBfZGF0YVJlZiRjdXJyZW50JGZsb2Eubm9kZUlkO1xuICAgIGNvbnN0IGNoaWxkcmVuID0gdHJlZSA/IGdldENoaWxkcmVuKHRyZWUubm9kZXNSZWYuY3VycmVudCwgbm9kZUlkKSA6IFtdO1xuICAgIGlmICghZXNjYXBlS2V5QnViYmxlcykge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICBsZXQgc2hvdWxkRGlzbWlzcyA9IHRydWU7XG4gICAgICAgIGNoaWxkcmVuLmZvckVhY2goY2hpbGQgPT4ge1xuICAgICAgICAgIHZhciBfY2hpbGQkY29udGV4dDtcbiAgICAgICAgICBpZiAoKF9jaGlsZCRjb250ZXh0ID0gY2hpbGQuY29udGV4dCkgIT0gbnVsbCAmJiBfY2hpbGQkY29udGV4dC5vcGVuICYmICFjaGlsZC5jb250ZXh0LmRhdGFSZWYuY3VycmVudC5fX2VzY2FwZUtleUJ1YmJsZXMpIHtcbiAgICAgICAgICAgIHNob3VsZERpc21pc3MgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAoIXNob3VsZERpc21pc3MpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgb25PcGVuQ2hhbmdlKGZhbHNlLCBpc1JlYWN0RXZlbnQoZXZlbnQpID8gZXZlbnQubmF0aXZlRXZlbnQgOiBldmVudCwgJ2VzY2FwZS1rZXknKTtcbiAgfSk7XG4gIGNvbnN0IGNsb3NlT25Fc2NhcGVLZXlEb3duQ2FwdHVyZSA9IHVzZUVmZmVjdEV2ZW50KGV2ZW50ID0+IHtcbiAgICB2YXIgX2dldFRhcmdldDI7XG4gICAgY29uc3QgY2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICB2YXIgX2dldFRhcmdldDtcbiAgICAgIGNsb3NlT25Fc2NhcGVLZXlEb3duKGV2ZW50KTtcbiAgICAgIChfZ2V0VGFyZ2V0ID0gZ2V0VGFyZ2V0KGV2ZW50KSkgPT0gbnVsbCB8fCBfZ2V0VGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBjYWxsYmFjayk7XG4gICAgfTtcbiAgICAoX2dldFRhcmdldDIgPSBnZXRUYXJnZXQoZXZlbnQpKSA9PSBudWxsIHx8IF9nZXRUYXJnZXQyLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBjYWxsYmFjayk7XG4gIH0pO1xuICBjb25zdCBjbG9zZU9uUHJlc3NPdXRzaWRlID0gdXNlRWZmZWN0RXZlbnQoZXZlbnQgPT4ge1xuICAgIHZhciBfZGF0YVJlZiRjdXJyZW50JGZsb2EyO1xuICAgIC8vIEdpdmVuIGRldmVsb3BlcnMgY2FuIHN0b3AgdGhlIHByb3BhZ2F0aW9uIG9mIHRoZSBzeW50aGV0aWMgZXZlbnQsXG4gICAgLy8gd2UgY2FuIG9ubHkgYmUgY29uZmlkZW50IHdpdGggYSBwb3NpdGl2ZSB2YWx1ZS5cbiAgICBjb25zdCBpbnNpZGVSZWFjdFRyZWUgPSBpbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudDtcbiAgICBpbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IGZhbHNlO1xuXG4gICAgLy8gV2hlbiBjbGljayBvdXRzaWRlIGlzIGxhenkgKGBjbGlja2AgZXZlbnQpLCBoYW5kbGUgZHJhZ2dpbmcuXG4gICAgLy8gRG9uJ3QgY2xvc2UgaWY6XG4gICAgLy8gLSBUaGUgY2xpY2sgc3RhcnRlZCBpbnNpZGUgdGhlIGZsb2F0aW5nIGVsZW1lbnQuXG4gICAgLy8gLSBUaGUgY2xpY2sgZW5kZWQgaW5zaWRlIHRoZSBmbG9hdGluZyBlbGVtZW50LlxuICAgIGNvbnN0IGVuZGVkT3JTdGFydGVkSW5zaWRlID0gZW5kZWRPclN0YXJ0ZWRJbnNpZGVSZWYuY3VycmVudDtcbiAgICBlbmRlZE9yU3RhcnRlZEluc2lkZVJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgaWYgKG91dHNpZGVQcmVzc0V2ZW50ID09PSAnY2xpY2snICYmIGVuZGVkT3JTdGFydGVkSW5zaWRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChpbnNpZGVSZWFjdFRyZWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBvdXRzaWRlUHJlc3MgPT09ICdmdW5jdGlvbicgJiYgIW91dHNpZGVQcmVzcyhldmVudCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdGFyZ2V0ID0gZ2V0VGFyZ2V0KGV2ZW50KTtcbiAgICBjb25zdCBpbmVydFNlbGVjdG9yID0gXCJbXCIgKyBjcmVhdGVBdHRyaWJ1dGUoJ2luZXJ0JykgKyBcIl1cIjtcbiAgICBjb25zdCBtYXJrZXJzID0gZ2V0RG9jdW1lbnQoZmxvYXRpbmcpLnF1ZXJ5U2VsZWN0b3JBbGwoaW5lcnRTZWxlY3Rvcik7XG4gICAgbGV0IHRhcmdldFJvb3RBbmNlc3RvciA9IGlzRWxlbWVudCh0YXJnZXQpID8gdGFyZ2V0IDogbnVsbDtcbiAgICB3aGlsZSAodGFyZ2V0Um9vdEFuY2VzdG9yICYmICFpc0xhc3RUcmF2ZXJzYWJsZU5vZGUodGFyZ2V0Um9vdEFuY2VzdG9yKSkge1xuICAgICAgY29uc3QgbmV4dFBhcmVudCA9IGdldFBhcmVudE5vZGUodGFyZ2V0Um9vdEFuY2VzdG9yKTtcbiAgICAgIGlmIChpc0xhc3RUcmF2ZXJzYWJsZU5vZGUobmV4dFBhcmVudCkgfHwgIWlzRWxlbWVudChuZXh0UGFyZW50KSkge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIHRhcmdldFJvb3RBbmNlc3RvciA9IG5leHRQYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrIG9jY3VycmVkIG9uIGEgdGhpcmQtcGFydHkgZWxlbWVudCBpbmplY3RlZCBhZnRlciB0aGVcbiAgICAvLyBmbG9hdGluZyBlbGVtZW50IHJlbmRlcmVkLlxuICAgIGlmIChtYXJrZXJzLmxlbmd0aCAmJiBpc0VsZW1lbnQodGFyZ2V0KSAmJiAhaXNSb290RWxlbWVudCh0YXJnZXQpICYmXG4gICAgLy8gQ2xpY2tlZCBvbiBhIGRpcmVjdCBhbmNlc3RvciAoZS5nLiBGbG9hdGluZ092ZXJsYXkpLlxuICAgICFjb250YWlucyh0YXJnZXQsIGZsb2F0aW5nKSAmJlxuICAgIC8vIElmIHRoZSB0YXJnZXQgcm9vdCBlbGVtZW50IGNvbnRhaW5zIG5vbmUgb2YgdGhlIG1hcmtlcnMsIHRoZW4gdGhlXG4gICAgLy8gZWxlbWVudCB3YXMgaW5qZWN0ZWQgYWZ0ZXIgdGhlIGZsb2F0aW5nIGVsZW1lbnQgcmVuZGVyZWQuXG4gICAgQXJyYXkuZnJvbShtYXJrZXJzKS5ldmVyeShtYXJrZXIgPT4gIWNvbnRhaW5zKHRhcmdldFJvb3RBbmNlc3RvciwgbWFya2VyKSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgb2NjdXJyZWQgb24gdGhlIHNjcm9sbGJhclxuICAgIGlmIChpc0hUTUxFbGVtZW50KHRhcmdldCkgJiYgZmxvYXRpbmcpIHtcbiAgICAgIC8vIEluIEZpcmVmb3gsIGB0YXJnZXQuc2Nyb2xsV2lkdGggPiB0YXJnZXQuY2xpZW50V2lkdGhgIGZvciBpbmxpbmVcbiAgICAgIC8vIGVsZW1lbnRzLlxuICAgICAgY29uc3QgY2FuU2Nyb2xsWCA9IHRhcmdldC5jbGllbnRXaWR0aCA+IDAgJiYgdGFyZ2V0LnNjcm9sbFdpZHRoID4gdGFyZ2V0LmNsaWVudFdpZHRoO1xuICAgICAgY29uc3QgY2FuU2Nyb2xsWSA9IHRhcmdldC5jbGllbnRIZWlnaHQgPiAwICYmIHRhcmdldC5zY3JvbGxIZWlnaHQgPiB0YXJnZXQuY2xpZW50SGVpZ2h0O1xuICAgICAgbGV0IHhDb25kID0gY2FuU2Nyb2xsWSAmJiBldmVudC5vZmZzZXRYID4gdGFyZ2V0LmNsaWVudFdpZHRoO1xuXG4gICAgICAvLyBJbiBzb21lIGJyb3dzZXJzIGl0IGlzIHBvc3NpYmxlIHRvIGNoYW5nZSB0aGUgPGJvZHk+IChvciB3aW5kb3cpXG4gICAgICAvLyBzY3JvbGxiYXIgdG8gdGhlIGxlZnQgc2lkZSwgYnV0IGlzIHZlcnkgcmFyZSBhbmQgaXMgZGlmZmljdWx0IHRvXG4gICAgICAvLyBjaGVjayBmb3IuIFBsdXMsIGZvciBtb2RhbCBkaWFsb2dzIHdpdGggYmFja2Ryb3BzLCBpdCBpcyBtb3JlXG4gICAgICAvLyBpbXBvcnRhbnQgdGhhdCB0aGUgYmFja2Ryb3AgaXMgY2hlY2tlZCBidXQgbm90IHNvIG11Y2ggdGhlIHdpbmRvdy5cbiAgICAgIGlmIChjYW5TY3JvbGxZKSB7XG4gICAgICAgIGNvbnN0IGlzUlRMID0gZ2V0Q29tcHV0ZWRTdHlsZSh0YXJnZXQpLmRpcmVjdGlvbiA9PT0gJ3J0bCc7XG4gICAgICAgIGlmIChpc1JUTCkge1xuICAgICAgICAgIHhDb25kID0gZXZlbnQub2Zmc2V0WCA8PSB0YXJnZXQub2Zmc2V0V2lkdGggLSB0YXJnZXQuY2xpZW50V2lkdGg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmICh4Q29uZCB8fCBjYW5TY3JvbGxYICYmIGV2ZW50Lm9mZnNldFkgPiB0YXJnZXQuY2xpZW50SGVpZ2h0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3Qgbm9kZUlkID0gKF9kYXRhUmVmJGN1cnJlbnQkZmxvYTIgPSBkYXRhUmVmLmN1cnJlbnQuZmxvYXRpbmdDb250ZXh0KSA9PSBudWxsID8gdm9pZCAwIDogX2RhdGFSZWYkY3VycmVudCRmbG9hMi5ub2RlSWQ7XG4gICAgY29uc3QgdGFyZ2V0SXNJbnNpZGVDaGlsZHJlbiA9IHRyZWUgJiYgZ2V0Q2hpbGRyZW4odHJlZS5ub2Rlc1JlZi5jdXJyZW50LCBub2RlSWQpLnNvbWUobm9kZSA9PiB7XG4gICAgICB2YXIgX25vZGUkY29udGV4dDtcbiAgICAgIHJldHVybiBpc0V2ZW50VGFyZ2V0V2l0aGluKGV2ZW50LCAoX25vZGUkY29udGV4dCA9IG5vZGUuY29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJGNvbnRleHQuZWxlbWVudHMuZmxvYXRpbmcpO1xuICAgIH0pO1xuICAgIGlmIChpc0V2ZW50VGFyZ2V0V2l0aGluKGV2ZW50LCBmbG9hdGluZykgfHwgaXNFdmVudFRhcmdldFdpdGhpbihldmVudCwgZG9tUmVmZXJlbmNlKSB8fCB0YXJnZXRJc0luc2lkZUNoaWxkcmVuKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNoaWxkcmVuID0gdHJlZSA/IGdldENoaWxkcmVuKHRyZWUubm9kZXNSZWYuY3VycmVudCwgbm9kZUlkKSA6IFtdO1xuICAgIGlmIChjaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICBsZXQgc2hvdWxkRGlzbWlzcyA9IHRydWU7XG4gICAgICBjaGlsZHJlbi5mb3JFYWNoKGNoaWxkID0+IHtcbiAgICAgICAgdmFyIF9jaGlsZCRjb250ZXh0MjtcbiAgICAgICAgaWYgKChfY2hpbGQkY29udGV4dDIgPSBjaGlsZC5jb250ZXh0KSAhPSBudWxsICYmIF9jaGlsZCRjb250ZXh0Mi5vcGVuICYmICFjaGlsZC5jb250ZXh0LmRhdGFSZWYuY3VycmVudC5fX291dHNpZGVQcmVzc0J1YmJsZXMpIHtcbiAgICAgICAgICBzaG91bGREaXNtaXNzID0gZmFsc2U7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGlmICghc2hvdWxkRGlzbWlzcykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuICAgIG9uT3BlbkNoYW5nZShmYWxzZSwgZXZlbnQsICdvdXRzaWRlLXByZXNzJyk7XG4gIH0pO1xuICBjb25zdCBjbG9zZU9uUHJlc3NPdXRzaWRlQ2FwdHVyZSA9IHVzZUVmZmVjdEV2ZW50KGV2ZW50ID0+IHtcbiAgICB2YXIgX2dldFRhcmdldDQ7XG4gICAgY29uc3QgY2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICB2YXIgX2dldFRhcmdldDM7XG4gICAgICBjbG9zZU9uUHJlc3NPdXRzaWRlKGV2ZW50KTtcbiAgICAgIChfZ2V0VGFyZ2V0MyA9IGdldFRhcmdldChldmVudCkpID09IG51bGwgfHwgX2dldFRhcmdldDMucmVtb3ZlRXZlbnRMaXN0ZW5lcihvdXRzaWRlUHJlc3NFdmVudCwgY2FsbGJhY2spO1xuICAgIH07XG4gICAgKF9nZXRUYXJnZXQ0ID0gZ2V0VGFyZ2V0KGV2ZW50KSkgPT0gbnVsbCB8fCBfZ2V0VGFyZ2V0NC5hZGRFdmVudExpc3RlbmVyKG91dHNpZGVQcmVzc0V2ZW50LCBjYWxsYmFjayk7XG4gIH0pO1xuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghb3BlbiB8fCAhZW5hYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBkYXRhUmVmLmN1cnJlbnQuX19lc2NhcGVLZXlCdWJibGVzID0gZXNjYXBlS2V5QnViYmxlcztcbiAgICBkYXRhUmVmLmN1cnJlbnQuX19vdXRzaWRlUHJlc3NCdWJibGVzID0gb3V0c2lkZVByZXNzQnViYmxlcztcbiAgICBmdW5jdGlvbiBvblNjcm9sbChldmVudCkge1xuICAgICAgb25PcGVuQ2hhbmdlKGZhbHNlLCBldmVudCwgJ2FuY2VzdG9yLXNjcm9sbCcpO1xuICAgIH1cbiAgICBjb25zdCBkb2MgPSBnZXREb2N1bWVudChmbG9hdGluZyk7XG4gICAgZXNjYXBlS2V5ICYmIGRvYy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgZXNjYXBlS2V5Q2FwdHVyZSA/IGNsb3NlT25Fc2NhcGVLZXlEb3duQ2FwdHVyZSA6IGNsb3NlT25Fc2NhcGVLZXlEb3duLCBlc2NhcGVLZXlDYXB0dXJlKTtcbiAgICBvdXRzaWRlUHJlc3MgJiYgZG9jLmFkZEV2ZW50TGlzdGVuZXIob3V0c2lkZVByZXNzRXZlbnQsIG91dHNpZGVQcmVzc0NhcHR1cmUgPyBjbG9zZU9uUHJlc3NPdXRzaWRlQ2FwdHVyZSA6IGNsb3NlT25QcmVzc091dHNpZGUsIG91dHNpZGVQcmVzc0NhcHR1cmUpO1xuICAgIGxldCBhbmNlc3RvcnMgPSBbXTtcbiAgICBpZiAoYW5jZXN0b3JTY3JvbGwpIHtcbiAgICAgIGlmIChpc0VsZW1lbnQoZG9tUmVmZXJlbmNlKSkge1xuICAgICAgICBhbmNlc3RvcnMgPSBnZXRPdmVyZmxvd0FuY2VzdG9ycyhkb21SZWZlcmVuY2UpO1xuICAgICAgfVxuICAgICAgaWYgKGlzRWxlbWVudChmbG9hdGluZykpIHtcbiAgICAgICAgYW5jZXN0b3JzID0gYW5jZXN0b3JzLmNvbmNhdChnZXRPdmVyZmxvd0FuY2VzdG9ycyhmbG9hdGluZykpO1xuICAgICAgfVxuICAgICAgaWYgKCFpc0VsZW1lbnQocmVmZXJlbmNlKSAmJiByZWZlcmVuY2UgJiYgcmVmZXJlbmNlLmNvbnRleHRFbGVtZW50KSB7XG4gICAgICAgIGFuY2VzdG9ycyA9IGFuY2VzdG9ycy5jb25jYXQoZ2V0T3ZlcmZsb3dBbmNlc3RvcnMocmVmZXJlbmNlLmNvbnRleHRFbGVtZW50KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWdub3JlIHRoZSB2aXN1YWwgdmlld3BvcnQgZm9yIHNjcm9sbGluZyBkaXNtaXNzYWwgKGFsbG93IHBpbmNoLXpvb20pXG4gICAgYW5jZXN0b3JzID0gYW5jZXN0b3JzLmZpbHRlcihhbmNlc3RvciA9PiB7XG4gICAgICB2YXIgX2RvYyRkZWZhdWx0VmlldztcbiAgICAgIHJldHVybiBhbmNlc3RvciAhPT0gKChfZG9jJGRlZmF1bHRWaWV3ID0gZG9jLmRlZmF1bHRWaWV3KSA9PSBudWxsID8gdm9pZCAwIDogX2RvYyRkZWZhdWx0Vmlldy52aXN1YWxWaWV3cG9ydCk7XG4gICAgfSk7XG4gICAgYW5jZXN0b3JzLmZvckVhY2goYW5jZXN0b3IgPT4ge1xuICAgICAgYW5jZXN0b3IuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgb25TY3JvbGwsIHtcbiAgICAgICAgcGFzc2l2ZTogdHJ1ZVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGVzY2FwZUtleSAmJiBkb2MucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIGVzY2FwZUtleUNhcHR1cmUgPyBjbG9zZU9uRXNjYXBlS2V5RG93bkNhcHR1cmUgOiBjbG9zZU9uRXNjYXBlS2V5RG93biwgZXNjYXBlS2V5Q2FwdHVyZSk7XG4gICAgICBvdXRzaWRlUHJlc3MgJiYgZG9jLnJlbW92ZUV2ZW50TGlzdGVuZXIob3V0c2lkZVByZXNzRXZlbnQsIG91dHNpZGVQcmVzc0NhcHR1cmUgPyBjbG9zZU9uUHJlc3NPdXRzaWRlQ2FwdHVyZSA6IGNsb3NlT25QcmVzc091dHNpZGUsIG91dHNpZGVQcmVzc0NhcHR1cmUpO1xuICAgICAgYW5jZXN0b3JzLmZvckVhY2goYW5jZXN0b3IgPT4ge1xuICAgICAgICBhbmNlc3Rvci5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBvblNjcm9sbCk7XG4gICAgICB9KTtcbiAgICB9O1xuICB9LCBbZGF0YVJlZiwgZmxvYXRpbmcsIGRvbVJlZmVyZW5jZSwgcmVmZXJlbmNlLCBlc2NhcGVLZXksIG91dHNpZGVQcmVzcywgb3V0c2lkZVByZXNzRXZlbnQsIG9wZW4sIG9uT3BlbkNoYW5nZSwgYW5jZXN0b3JTY3JvbGwsIGVuYWJsZWQsIGVzY2FwZUtleUJ1YmJsZXMsIG91dHNpZGVQcmVzc0J1YmJsZXMsIGNsb3NlT25Fc2NhcGVLZXlEb3duLCBlc2NhcGVLZXlDYXB0dXJlLCBjbG9zZU9uRXNjYXBlS2V5RG93bkNhcHR1cmUsIGNsb3NlT25QcmVzc091dHNpZGUsIG91dHNpZGVQcmVzc0NhcHR1cmUsIGNsb3NlT25QcmVzc091dHNpZGVDYXB0dXJlXSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaW5zaWRlUmVhY3RUcmVlUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgfSwgW291dHNpZGVQcmVzcywgb3V0c2lkZVByZXNzRXZlbnRdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgcmVmZXJlbmNlOiB7XG4gICAgICAgIG9uS2V5RG93bjogY2xvc2VPbkVzY2FwZUtleURvd24sXG4gICAgICAgIFtidWJibGVIYW5kbGVyS2V5c1tyZWZlcmVuY2VQcmVzc0V2ZW50XV06IGV2ZW50ID0+IHtcbiAgICAgICAgICBpZiAocmVmZXJlbmNlUHJlc3MpIHtcbiAgICAgICAgICAgIG9uT3BlbkNoYW5nZShmYWxzZSwgZXZlbnQubmF0aXZlRXZlbnQsICdyZWZlcmVuY2UtcHJlc3MnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBmbG9hdGluZzoge1xuICAgICAgICBvbktleURvd246IGNsb3NlT25Fc2NhcGVLZXlEb3duLFxuICAgICAgICBvbk1vdXNlRG93bigpIHtcbiAgICAgICAgICBlbmRlZE9yU3RhcnRlZEluc2lkZVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgfSxcbiAgICAgICAgb25Nb3VzZVVwKCkge1xuICAgICAgICAgIGVuZGVkT3JTdGFydGVkSW5zaWRlUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICB9LFxuICAgICAgICBbY2FwdHVyZUhhbmRsZXJLZXlzW291dHNpZGVQcmVzc0V2ZW50XV06ICgpID0+IHtcbiAgICAgICAgICBpbnNpZGVSZWFjdFRyZWVSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZW5hYmxlZCwgcmVmZXJlbmNlUHJlc3MsIG91dHNpZGVQcmVzc0V2ZW50LCByZWZlcmVuY2VQcmVzc0V2ZW50LCBvbk9wZW5DaGFuZ2UsIGNsb3NlT25Fc2NhcGVLZXlEb3duXSk7XG59XG5cbmZ1bmN0aW9uIHVzZUZsb2F0aW5nUm9vdENvbnRleHQob3B0aW9ucykge1xuICBjb25zdCB7XG4gICAgb3BlbiA9IGZhbHNlLFxuICAgIG9uT3BlbkNoYW5nZTogb25PcGVuQ2hhbmdlUHJvcCxcbiAgICBlbGVtZW50czogZWxlbWVudHNQcm9wXG4gIH0gPSBvcHRpb25zO1xuICBjb25zdCBmbG9hdGluZ0lkID0gdXNlSWQoKTtcbiAgY29uc3QgZGF0YVJlZiA9IFJlYWN0LnVzZVJlZih7fSk7XG4gIGNvbnN0IFtldmVudHNdID0gUmVhY3QudXNlU3RhdGUoKCkgPT4gY3JlYXRlUHViU3ViKCkpO1xuICBjb25zdCBuZXN0ZWQgPSB1c2VGbG9hdGluZ1BhcmVudE5vZGVJZCgpICE9IG51bGw7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICBjb25zdCBvcHRpb25Eb21SZWZlcmVuY2UgPSBlbGVtZW50c1Byb3AucmVmZXJlbmNlO1xuICAgIGlmIChvcHRpb25Eb21SZWZlcmVuY2UgJiYgIWlzRWxlbWVudChvcHRpb25Eb21SZWZlcmVuY2UpKSB7XG4gICAgICBlcnJvcignQ2Fubm90IHBhc3MgYSB2aXJ0dWFsIGVsZW1lbnQgdG8gdGhlIGBlbGVtZW50cy5yZWZlcmVuY2VgIG9wdGlvbiwnLCAnYXMgaXQgbXVzdCBiZSBhIHJlYWwgRE9NIGVsZW1lbnQuIFVzZSBgcmVmcy5zZXRQb3NpdGlvblJlZmVyZW5jZSgpYCcsICdpbnN0ZWFkLicpO1xuICAgIH1cbiAgfVxuICBjb25zdCBbcG9zaXRpb25SZWZlcmVuY2UsIHNldFBvc2l0aW9uUmVmZXJlbmNlXSA9IFJlYWN0LnVzZVN0YXRlKGVsZW1lbnRzUHJvcC5yZWZlcmVuY2UpO1xuICBjb25zdCBvbk9wZW5DaGFuZ2UgPSB1c2VFZmZlY3RFdmVudCgob3BlbiwgZXZlbnQsIHJlYXNvbikgPT4ge1xuICAgIGRhdGFSZWYuY3VycmVudC5vcGVuRXZlbnQgPSBvcGVuID8gZXZlbnQgOiB1bmRlZmluZWQ7XG4gICAgZXZlbnRzLmVtaXQoJ29wZW5jaGFuZ2UnLCB7XG4gICAgICBvcGVuLFxuICAgICAgZXZlbnQsXG4gICAgICByZWFzb24sXG4gICAgICBuZXN0ZWRcbiAgICB9KTtcbiAgICBvbk9wZW5DaGFuZ2VQcm9wID09IG51bGwgfHwgb25PcGVuQ2hhbmdlUHJvcChvcGVuLCBldmVudCwgcmVhc29uKTtcbiAgfSk7XG4gIGNvbnN0IHJlZnMgPSBSZWFjdC51c2VNZW1vKCgpID0+ICh7XG4gICAgc2V0UG9zaXRpb25SZWZlcmVuY2VcbiAgfSksIFtdKTtcbiAgY29uc3QgZWxlbWVudHMgPSBSZWFjdC51c2VNZW1vKCgpID0+ICh7XG4gICAgcmVmZXJlbmNlOiBwb3NpdGlvblJlZmVyZW5jZSB8fCBlbGVtZW50c1Byb3AucmVmZXJlbmNlIHx8IG51bGwsXG4gICAgZmxvYXRpbmc6IGVsZW1lbnRzUHJvcC5mbG9hdGluZyB8fCBudWxsLFxuICAgIGRvbVJlZmVyZW5jZTogZWxlbWVudHNQcm9wLnJlZmVyZW5jZVxuICB9KSwgW3Bvc2l0aW9uUmVmZXJlbmNlLCBlbGVtZW50c1Byb3AucmVmZXJlbmNlLCBlbGVtZW50c1Byb3AuZmxvYXRpbmddKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICBkYXRhUmVmLFxuICAgIG9wZW4sXG4gICAgb25PcGVuQ2hhbmdlLFxuICAgIGVsZW1lbnRzLFxuICAgIGV2ZW50cyxcbiAgICBmbG9hdGluZ0lkLFxuICAgIHJlZnNcbiAgfSksIFtvcGVuLCBvbk9wZW5DaGFuZ2UsIGVsZW1lbnRzLCBldmVudHMsIGZsb2F0aW5nSWQsIHJlZnNdKTtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBkYXRhIHRvIHBvc2l0aW9uIGEgZmxvYXRpbmcgZWxlbWVudCBhbmQgY29udGV4dCB0byBhZGQgaW50ZXJhY3Rpb25zLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZUZsb2F0aW5nXG4gKi9cbmZ1bmN0aW9uIHVzZUZsb2F0aW5nKG9wdGlvbnMpIHtcbiAgaWYgKG9wdGlvbnMgPT09IHZvaWQgMCkge1xuICAgIG9wdGlvbnMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgbm9kZUlkXG4gIH0gPSBvcHRpb25zO1xuICBjb25zdCBpbnRlcm5hbFJvb3RDb250ZXh0ID0gdXNlRmxvYXRpbmdSb290Q29udGV4dCh7XG4gICAgLi4ub3B0aW9ucyxcbiAgICBlbGVtZW50czoge1xuICAgICAgcmVmZXJlbmNlOiBudWxsLFxuICAgICAgZmxvYXRpbmc6IG51bGwsXG4gICAgICAuLi5vcHRpb25zLmVsZW1lbnRzXG4gICAgfVxuICB9KTtcbiAgY29uc3Qgcm9vdENvbnRleHQgPSBvcHRpb25zLnJvb3RDb250ZXh0IHx8IGludGVybmFsUm9vdENvbnRleHQ7XG4gIGNvbnN0IGNvbXB1dGVkRWxlbWVudHMgPSByb290Q29udGV4dC5lbGVtZW50cztcbiAgY29uc3QgW19kb21SZWZlcmVuY2UsIHNldERvbVJlZmVyZW5jZV0gPSBSZWFjdC51c2VTdGF0ZShudWxsKTtcbiAgY29uc3QgW3Bvc2l0aW9uUmVmZXJlbmNlLCBfc2V0UG9zaXRpb25SZWZlcmVuY2VdID0gUmVhY3QudXNlU3RhdGUobnVsbCk7XG4gIGNvbnN0IG9wdGlvbkRvbVJlZmVyZW5jZSA9IGNvbXB1dGVkRWxlbWVudHMgPT0gbnVsbCA/IHZvaWQgMCA6IGNvbXB1dGVkRWxlbWVudHMucmVmZXJlbmNlO1xuICBjb25zdCBkb21SZWZlcmVuY2UgPSBvcHRpb25Eb21SZWZlcmVuY2UgfHwgX2RvbVJlZmVyZW5jZTtcbiAgY29uc3QgZG9tUmVmZXJlbmNlUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICBjb25zdCB0cmVlID0gdXNlRmxvYXRpbmdUcmVlKCk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoZG9tUmVmZXJlbmNlKSB7XG4gICAgICBkb21SZWZlcmVuY2VSZWYuY3VycmVudCA9IGRvbVJlZmVyZW5jZTtcbiAgICB9XG4gIH0sIFtkb21SZWZlcmVuY2VdKTtcbiAgY29uc3QgcG9zaXRpb24gPSB1c2VGbG9hdGluZyQxKHtcbiAgICAuLi5vcHRpb25zLFxuICAgIGVsZW1lbnRzOiB7XG4gICAgICAuLi5jb21wdXRlZEVsZW1lbnRzLFxuICAgICAgLi4uKHBvc2l0aW9uUmVmZXJlbmNlICYmIHtcbiAgICAgICAgcmVmZXJlbmNlOiBwb3NpdGlvblJlZmVyZW5jZVxuICAgICAgfSlcbiAgICB9XG4gIH0pO1xuICBjb25zdCBzZXRQb3NpdGlvblJlZmVyZW5jZSA9IFJlYWN0LnVzZUNhbGxiYWNrKG5vZGUgPT4ge1xuICAgIGNvbnN0IGNvbXB1dGVkUG9zaXRpb25SZWZlcmVuY2UgPSBpc0VsZW1lbnQobm9kZSkgPyB7XG4gICAgICBnZXRCb3VuZGluZ0NsaWVudFJlY3Q6ICgpID0+IG5vZGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksXG4gICAgICBjb250ZXh0RWxlbWVudDogbm9kZVxuICAgIH0gOiBub2RlO1xuICAgIC8vIFN0b3JlIHRoZSBwb3NpdGlvblJlZmVyZW5jZSBpbiBzdGF0ZSBpZiB0aGUgRE9NIHJlZmVyZW5jZSBpcyBzcGVjaWZpZWQgZXh0ZXJuYWxseSB2aWEgdGhlXG4gICAgLy8gYGVsZW1lbnRzLnJlZmVyZW5jZWAgb3B0aW9uLiBUaGlzIGVuc3VyZXMgdGhhdCBpdCB3b24ndCBiZSBvdmVycmlkZGVuIG9uIGZ1dHVyZSByZW5kZXJzLlxuICAgIF9zZXRQb3NpdGlvblJlZmVyZW5jZShjb21wdXRlZFBvc2l0aW9uUmVmZXJlbmNlKTtcbiAgICBwb3NpdGlvbi5yZWZzLnNldFJlZmVyZW5jZShjb21wdXRlZFBvc2l0aW9uUmVmZXJlbmNlKTtcbiAgfSwgW3Bvc2l0aW9uLnJlZnNdKTtcbiAgY29uc3Qgc2V0UmVmZXJlbmNlID0gUmVhY3QudXNlQ2FsbGJhY2sobm9kZSA9PiB7XG4gICAgaWYgKGlzRWxlbWVudChub2RlKSB8fCBub2RlID09PSBudWxsKSB7XG4gICAgICBkb21SZWZlcmVuY2VSZWYuY3VycmVudCA9IG5vZGU7XG4gICAgICBzZXREb21SZWZlcmVuY2Uobm9kZSk7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmRzLWNvbXBhdGliaWxpdHkgZm9yIHBhc3NpbmcgYSB2aXJ0dWFsIGVsZW1lbnQgdG8gYHJlZmVyZW5jZWBcbiAgICAvLyBhZnRlciBpdCBoYXMgc2V0IHRoZSBET00gcmVmZXJlbmNlLlxuICAgIGlmIChpc0VsZW1lbnQocG9zaXRpb24ucmVmcy5yZWZlcmVuY2UuY3VycmVudCkgfHwgcG9zaXRpb24ucmVmcy5yZWZlcmVuY2UuY3VycmVudCA9PT0gbnVsbCB8fFxuICAgIC8vIERvbid0IGFsbG93IHNldHRpbmcgdmlydHVhbCBlbGVtZW50cyB1c2luZyB0aGUgb2xkIHRlY2huaXF1ZSBiYWNrIHRvXG4gICAgLy8gYG51bGxgIHRvIHN1cHBvcnQgYHBvc2l0aW9uUmVmZXJlbmNlYCArIGFuIHVuc3RhYmxlIGByZWZlcmVuY2VgXG4gICAgLy8gY2FsbGJhY2sgcmVmLlxuICAgIG5vZGUgIT09IG51bGwgJiYgIWlzRWxlbWVudChub2RlKSkge1xuICAgICAgcG9zaXRpb24ucmVmcy5zZXRSZWZlcmVuY2Uobm9kZSk7XG4gICAgfVxuICB9LCBbcG9zaXRpb24ucmVmc10pO1xuICBjb25zdCByZWZzID0gUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgIC4uLnBvc2l0aW9uLnJlZnMsXG4gICAgc2V0UmVmZXJlbmNlLFxuICAgIHNldFBvc2l0aW9uUmVmZXJlbmNlLFxuICAgIGRvbVJlZmVyZW5jZTogZG9tUmVmZXJlbmNlUmVmXG4gIH0pLCBbcG9zaXRpb24ucmVmcywgc2V0UmVmZXJlbmNlLCBzZXRQb3NpdGlvblJlZmVyZW5jZV0pO1xuICBjb25zdCBlbGVtZW50cyA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAuLi5wb3NpdGlvbi5lbGVtZW50cyxcbiAgICBkb21SZWZlcmVuY2U6IGRvbVJlZmVyZW5jZVxuICB9KSwgW3Bvc2l0aW9uLmVsZW1lbnRzLCBkb21SZWZlcmVuY2VdKTtcbiAgY29uc3QgY29udGV4dCA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICAuLi5wb3NpdGlvbixcbiAgICAuLi5yb290Q29udGV4dCxcbiAgICByZWZzLFxuICAgIGVsZW1lbnRzLFxuICAgIG5vZGVJZFxuICB9KSwgW3Bvc2l0aW9uLCByZWZzLCBlbGVtZW50cywgbm9kZUlkLCByb290Q29udGV4dF0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgcm9vdENvbnRleHQuZGF0YVJlZi5jdXJyZW50LmZsb2F0aW5nQ29udGV4dCA9IGNvbnRleHQ7XG4gICAgY29uc3Qgbm9kZSA9IHRyZWUgPT0gbnVsbCA/IHZvaWQgMCA6IHRyZWUubm9kZXNSZWYuY3VycmVudC5maW5kKG5vZGUgPT4gbm9kZS5pZCA9PT0gbm9kZUlkKTtcbiAgICBpZiAobm9kZSkge1xuICAgICAgbm9kZS5jb250ZXh0ID0gY29udGV4dDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgIC4uLnBvc2l0aW9uLFxuICAgIGNvbnRleHQsXG4gICAgcmVmcyxcbiAgICBlbGVtZW50c1xuICB9KSwgW3Bvc2l0aW9uLCByZWZzLCBlbGVtZW50cywgY29udGV4dF0pO1xufVxuXG4vKipcbiAqIE9wZW5zIHRoZSBmbG9hdGluZyBlbGVtZW50IHdoaWxlIHRoZSByZWZlcmVuY2UgZWxlbWVudCBoYXMgZm9jdXMsIGxpa2UgQ1NTXG4gKiBgOmZvY3VzYC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy91c2VGb2N1c1xuICovXG5mdW5jdGlvbiB1c2VGb2N1cyhjb250ZXh0LCBwcm9wcykge1xuICBpZiAocHJvcHMgPT09IHZvaWQgMCkge1xuICAgIHByb3BzID0ge307XG4gIH1cbiAgY29uc3Qge1xuICAgIG9wZW4sXG4gICAgb25PcGVuQ2hhbmdlLFxuICAgIGV2ZW50cyxcbiAgICBkYXRhUmVmLFxuICAgIGVsZW1lbnRzOiB7XG4gICAgICBkb21SZWZlcmVuY2VcbiAgICB9XG4gIH0gPSBjb250ZXh0O1xuICBjb25zdCB7XG4gICAgZW5hYmxlZCA9IHRydWUsXG4gICAgdmlzaWJsZU9ubHkgPSB0cnVlXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgYmxvY2tGb2N1c1JlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHRpbWVvdXRSZWYgPSBSZWFjdC51c2VSZWYoKTtcbiAgY29uc3Qga2V5Ym9hcmRNb2RhbGl0eVJlZiA9IFJlYWN0LnVzZVJlZih0cnVlKTtcbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgd2luID0gZ2V0V2luZG93KGRvbVJlZmVyZW5jZSk7XG5cbiAgICAvLyBJZiB0aGUgcmVmZXJlbmNlIHdhcyBmb2N1c2VkIGFuZCB0aGUgdXNlciBsZWZ0IHRoZSB0YWIvd2luZG93LCBhbmQgdGhlXG4gICAgLy8gZmxvYXRpbmcgZWxlbWVudCB3YXMgbm90IG9wZW4sIHRoZSBmb2N1cyBzaG91bGQgYmUgYmxvY2tlZCB3aGVuIHRoZXlcbiAgICAvLyByZXR1cm4gdG8gdGhlIHRhYi93aW5kb3cuXG4gICAgZnVuY3Rpb24gb25CbHVyKCkge1xuICAgICAgaWYgKCFvcGVuICYmIGlzSFRNTEVsZW1lbnQoZG9tUmVmZXJlbmNlKSAmJiBkb21SZWZlcmVuY2UgPT09IGFjdGl2ZUVsZW1lbnQoZ2V0RG9jdW1lbnQoZG9tUmVmZXJlbmNlKSkpIHtcbiAgICAgICAgYmxvY2tGb2N1c1JlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gb25LZXlEb3duKCkge1xuICAgICAga2V5Ym9hcmRNb2RhbGl0eVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICB9XG4gICAgd2luLmFkZEV2ZW50TGlzdGVuZXIoJ2JsdXInLCBvbkJsdXIpO1xuICAgIHdpbi5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgb25LZXlEb3duLCB0cnVlKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgd2luLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2JsdXInLCBvbkJsdXIpO1xuICAgICAgd2luLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBvbktleURvd24sIHRydWUpO1xuICAgIH07XG4gIH0sIFtkb21SZWZlcmVuY2UsIG9wZW4sIGVuYWJsZWRdKTtcbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZnVuY3Rpb24gb25PcGVuQ2hhbmdlKF9yZWYpIHtcbiAgICAgIGxldCB7XG4gICAgICAgIHJlYXNvblxuICAgICAgfSA9IF9yZWY7XG4gICAgICBpZiAocmVhc29uID09PSAncmVmZXJlbmNlLXByZXNzJyB8fCByZWFzb24gPT09ICdlc2NhcGUta2V5Jykge1xuICAgICAgICBibG9ja0ZvY3VzUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBldmVudHMub24oJ29wZW5jaGFuZ2UnLCBvbk9wZW5DaGFuZ2UpO1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBldmVudHMub2ZmKCdvcGVuY2hhbmdlJywgb25PcGVuQ2hhbmdlKTtcbiAgICB9O1xuICB9LCBbZXZlbnRzLCBlbmFibGVkXSk7XG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0UmVmLmN1cnJlbnQpO1xuICAgIH07XG4gIH0sIFtdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgcmVmZXJlbmNlOiB7XG4gICAgICAgIG9uUG9pbnRlckRvd24oZXZlbnQpIHtcbiAgICAgICAgICBpZiAoaXNWaXJ0dWFsUG9pbnRlckV2ZW50KGV2ZW50Lm5hdGl2ZUV2ZW50KSkgcmV0dXJuO1xuICAgICAgICAgIGtleWJvYXJkTW9kYWxpdHlSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBvbk1vdXNlTGVhdmUoKSB7XG4gICAgICAgICAgYmxvY2tGb2N1c1JlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIG9uRm9jdXMoZXZlbnQpIHtcbiAgICAgICAgICBpZiAoYmxvY2tGb2N1c1JlZi5jdXJyZW50KSByZXR1cm47XG4gICAgICAgICAgY29uc3QgdGFyZ2V0ID0gZ2V0VGFyZ2V0KGV2ZW50Lm5hdGl2ZUV2ZW50KTtcbiAgICAgICAgICBpZiAodmlzaWJsZU9ubHkgJiYgaXNFbGVtZW50KHRhcmdldCkpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIC8vIE1hYyBTYWZhcmkgdW5yZWxpYWJseSBtYXRjaGVzIGA6Zm9jdXMtdmlzaWJsZWAgb24gdGhlIHJlZmVyZW5jZVxuICAgICAgICAgICAgICAvLyBpZiBmb2N1cyB3YXMgb3V0c2lkZSB0aGUgcGFnZSBpbml0aWFsbHkgLSB1c2UgdGhlIGZhbGxiYWNrXG4gICAgICAgICAgICAgIC8vIGluc3RlYWQuXG4gICAgICAgICAgICAgIGlmIChpc1NhZmFyaSgpICYmIGlzTWFjKCkpIHRocm93IEVycm9yKCk7XG4gICAgICAgICAgICAgIGlmICghdGFyZ2V0Lm1hdGNoZXMoJzpmb2N1cy12aXNpYmxlJykpIHJldHVybjtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgLy8gT2xkIGJyb3dzZXJzIHdpbGwgdGhyb3cgYW4gZXJyb3Igd2hlbiB1c2luZyBgOmZvY3VzLXZpc2libGVgLlxuICAgICAgICAgICAgICBpZiAoIWtleWJvYXJkTW9kYWxpdHlSZWYuY3VycmVudCAmJiAhaXNUeXBlYWJsZUVsZW1lbnQodGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBvbk9wZW5DaGFuZ2UodHJ1ZSwgZXZlbnQubmF0aXZlRXZlbnQsICdmb2N1cycpO1xuICAgICAgICB9LFxuICAgICAgICBvbkJsdXIoZXZlbnQpIHtcbiAgICAgICAgICBibG9ja0ZvY3VzUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICBjb25zdCByZWxhdGVkVGFyZ2V0ID0gZXZlbnQucmVsYXRlZFRhcmdldDtcblxuICAgICAgICAgIC8vIEhpdCB0aGUgbm9uLW1vZGFsIGZvY3VzIG1hbmFnZW1lbnQgcG9ydGFsIGd1YXJkLiBGb2N1cyB3aWxsIGJlXG4gICAgICAgICAgLy8gbW92ZWQgaW50byB0aGUgZmxvYXRpbmcgZWxlbWVudCBpbW1lZGlhdGVseSBhZnRlci5cbiAgICAgICAgICBjb25zdCBtb3ZlZFRvRm9jdXNHdWFyZCA9IGlzRWxlbWVudChyZWxhdGVkVGFyZ2V0KSAmJiByZWxhdGVkVGFyZ2V0Lmhhc0F0dHJpYnV0ZShjcmVhdGVBdHRyaWJ1dGUoJ2ZvY3VzLWd1YXJkJykpICYmIHJlbGF0ZWRUYXJnZXQuZ2V0QXR0cmlidXRlKCdkYXRhLXR5cGUnKSA9PT0gJ291dHNpZGUnO1xuXG4gICAgICAgICAgLy8gV2FpdCBmb3IgdGhlIHdpbmRvdyBibHVyIGxpc3RlbmVyIHRvIGZpcmUuXG4gICAgICAgICAgdGltZW91dFJlZi5jdXJyZW50ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdmFyIF9kYXRhUmVmJGN1cnJlbnQkZmxvYTtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUVsID0gYWN0aXZlRWxlbWVudChkb21SZWZlcmVuY2UgPyBkb21SZWZlcmVuY2Uub3duZXJEb2N1bWVudCA6IGRvY3VtZW50KTtcblxuICAgICAgICAgICAgLy8gRm9jdXMgbGVmdCB0aGUgcGFnZSwga2VlcCBpdCBvcGVuLlxuICAgICAgICAgICAgaWYgKCFyZWxhdGVkVGFyZ2V0ICYmIGFjdGl2ZUVsID09PSBkb21SZWZlcmVuY2UpIHJldHVybjtcblxuICAgICAgICAgICAgLy8gV2hlbiBmb2N1c2luZyB0aGUgcmVmZXJlbmNlIGVsZW1lbnQgKGUuZy4gcmVndWxhciBjbGljayksIHRoZW5cbiAgICAgICAgICAgIC8vIGNsaWNraW5nIGludG8gdGhlIGZsb2F0aW5nIGVsZW1lbnQsIHByZXZlbnQgaXQgZnJvbSBoaWRpbmcuXG4gICAgICAgICAgICAvLyBOb3RlOiBpdCBtdXN0IGJlIGZvY3VzYWJsZSwgZS5nLiBgdGFiaW5kZXg9XCItMVwiYC5cbiAgICAgICAgICAgIC8vIFdlIGNhbiBub3QgcmVseSBvbiByZWxhdGVkVGFyZ2V0IHRvIHBvaW50IHRvIHRoZSBjb3JyZWN0IGVsZW1lbnRcbiAgICAgICAgICAgIC8vIGFzIGl0IHdpbGwgb25seSBwb2ludCB0byB0aGUgc2hhZG93IGhvc3Qgb2YgdGhlIG5ld2x5IGZvY3VzZWQgZWxlbWVudFxuICAgICAgICAgICAgLy8gYW5kIG5vdCB0aGUgZWxlbWVudCB0aGF0IGFjdHVhbGx5IGhhcyByZWNlaXZlZCBmb2N1cyBpZiBpdCBpcyBsb2NhdGVkXG4gICAgICAgICAgICAvLyBpbnNpZGUgYSBzaGFkb3cgcm9vdC5cbiAgICAgICAgICAgIGlmIChjb250YWlucygoX2RhdGFSZWYkY3VycmVudCRmbG9hID0gZGF0YVJlZi5jdXJyZW50LmZsb2F0aW5nQ29udGV4dCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9kYXRhUmVmJGN1cnJlbnQkZmxvYS5yZWZzLmZsb2F0aW5nLmN1cnJlbnQsIGFjdGl2ZUVsKSB8fCBjb250YWlucyhkb21SZWZlcmVuY2UsIGFjdGl2ZUVsKSB8fCBtb3ZlZFRvRm9jdXNHdWFyZCkge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50Lm5hdGl2ZUV2ZW50LCAnZm9jdXMnKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH0sIFtlbmFibGVkLCB2aXNpYmxlT25seSwgZGF0YVJlZiwgZG9tUmVmZXJlbmNlLCBvbk9wZW5DaGFuZ2VdKTtcbn1cblxuY29uc3QgQUNUSVZFX0tFWSA9ICdhY3RpdmUnO1xuY29uc3QgU0VMRUNURURfS0VZID0gJ3NlbGVjdGVkJztcbmZ1bmN0aW9uIG1lcmdlUHJvcHModXNlclByb3BzLCBwcm9wc0xpc3QsIGVsZW1lbnRLZXkpIHtcbiAgY29uc3QgbWFwID0gbmV3IE1hcCgpO1xuICBjb25zdCBpc0l0ZW0gPSBlbGVtZW50S2V5ID09PSAnaXRlbSc7XG4gIGxldCBkb21Vc2VyUHJvcHMgPSB1c2VyUHJvcHM7XG4gIGlmIChpc0l0ZW0gJiYgdXNlclByb3BzKSB7XG4gICAgY29uc3Qge1xuICAgICAgW0FDVElWRV9LRVldOiBfLFxuICAgICAgW1NFTEVDVEVEX0tFWV06IF9fLFxuICAgICAgLi4udmFsaWRQcm9wc1xuICAgIH0gPSB1c2VyUHJvcHM7XG4gICAgZG9tVXNlclByb3BzID0gdmFsaWRQcm9wcztcbiAgfVxuICByZXR1cm4ge1xuICAgIC4uLihlbGVtZW50S2V5ID09PSAnZmxvYXRpbmcnICYmIHtcbiAgICAgIHRhYkluZGV4OiAtMVxuICAgIH0pLFxuICAgIC4uLmRvbVVzZXJQcm9wcyxcbiAgICAuLi5wcm9wc0xpc3QubWFwKHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHByb3BzT3JHZXRQcm9wcyA9IHZhbHVlID8gdmFsdWVbZWxlbWVudEtleV0gOiBudWxsO1xuICAgICAgaWYgKHR5cGVvZiBwcm9wc09yR2V0UHJvcHMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuIHVzZXJQcm9wcyA/IHByb3BzT3JHZXRQcm9wcyh1c2VyUHJvcHMpIDogbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwcm9wc09yR2V0UHJvcHM7XG4gICAgfSkuY29uY2F0KHVzZXJQcm9wcykucmVkdWNlKChhY2MsIHByb3BzKSA9PiB7XG4gICAgICBpZiAoIXByb3BzKSB7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9XG4gICAgICBPYmplY3QuZW50cmllcyhwcm9wcykuZm9yRWFjaChfcmVmID0+IHtcbiAgICAgICAgbGV0IFtrZXksIHZhbHVlXSA9IF9yZWY7XG4gICAgICAgIGlmIChpc0l0ZW0gJiYgW0FDVElWRV9LRVksIFNFTEVDVEVEX0tFWV0uaW5jbHVkZXMoa2V5KSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoa2V5LmluZGV4T2YoJ29uJykgPT09IDApIHtcbiAgICAgICAgICBpZiAoIW1hcC5oYXMoa2V5KSkge1xuICAgICAgICAgICAgbWFwLnNldChrZXksIFtdKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdmFyIF9tYXAkZ2V0O1xuICAgICAgICAgICAgKF9tYXAkZ2V0ID0gbWFwLmdldChrZXkpKSA9PSBudWxsIHx8IF9tYXAkZ2V0LnB1c2godmFsdWUpO1xuICAgICAgICAgICAgYWNjW2tleV0gPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgIHZhciBfbWFwJGdldDI7XG4gICAgICAgICAgICAgIGZvciAodmFyIF9sZW4gPSBhcmd1bWVudHMubGVuZ3RoLCBhcmdzID0gbmV3IEFycmF5KF9sZW4pLCBfa2V5ID0gMDsgX2tleSA8IF9sZW47IF9rZXkrKykge1xuICAgICAgICAgICAgICAgIGFyZ3NbX2tleV0gPSBhcmd1bWVudHNbX2tleV07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuIChfbWFwJGdldDIgPSBtYXAuZ2V0KGtleSkpID09IG51bGwgPyB2b2lkIDAgOiBfbWFwJGdldDIubWFwKGZuID0+IGZuKC4uLmFyZ3MpKS5maW5kKHZhbCA9PiB2YWwgIT09IHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pXG4gIH07XG59XG4vKipcbiAqIE1lcmdlcyBhbiBhcnJheSBvZiBpbnRlcmFjdGlvbiBob29rcycgcHJvcHMgaW50byBwcm9wIGdldHRlcnMsIGFsbG93aW5nXG4gKiBldmVudCBoYW5kbGVyIGZ1bmN0aW9ucyB0byBiZSBjb21wb3NlZCB0b2dldGhlciB3aXRob3V0IG92ZXJ3cml0aW5nIG9uZVxuICogYW5vdGhlci5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy91c2VJbnRlcmFjdGlvbnNcbiAqL1xuZnVuY3Rpb24gdXNlSW50ZXJhY3Rpb25zKHByb3BzTGlzdCkge1xuICBpZiAocHJvcHNMaXN0ID09PSB2b2lkIDApIHtcbiAgICBwcm9wc0xpc3QgPSBbXTtcbiAgfVxuICAvLyBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhIGR5bmFtaWMgYXJyYXksIHNvIHdlIGNhbid0IHVzZSB0aGUgbGludGVyJ3NcbiAgLy8gc3VnZ2VzdGlvbiB0byBhZGQgaXQgdG8gdGhlIGRlcHMgYXJyYXkuXG4gIGNvbnN0IGRlcHMgPSBwcm9wc0xpc3Q7XG4gIGNvbnN0IGdldFJlZmVyZW5jZVByb3BzID0gUmVhY3QudXNlQ2FsbGJhY2sodXNlclByb3BzID0+IG1lcmdlUHJvcHModXNlclByb3BzLCBwcm9wc0xpc3QsICdyZWZlcmVuY2UnKSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICBkZXBzKTtcbiAgY29uc3QgZ2V0RmxvYXRpbmdQcm9wcyA9IFJlYWN0LnVzZUNhbGxiYWNrKHVzZXJQcm9wcyA9PiBtZXJnZVByb3BzKHVzZXJQcm9wcywgcHJvcHNMaXN0LCAnZmxvYXRpbmcnKSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICBkZXBzKTtcbiAgY29uc3QgZ2V0SXRlbVByb3BzID0gUmVhY3QudXNlQ2FsbGJhY2sodXNlclByb3BzID0+IG1lcmdlUHJvcHModXNlclByb3BzLCBwcm9wc0xpc3QsICdpdGVtJyksXG4gIC8vIEdyYW51bGFybHkgY2hlY2sgZm9yIGBpdGVtYCBjaGFuZ2VzLCBiZWNhdXNlIHRoZSBgZ2V0SXRlbVByb3BzYCBnZXR0ZXJcbiAgLy8gc2hvdWxkIGJlIGFzIHJlZmVyZW50aWFsbHkgc3RhYmxlIGFzIHBvc3NpYmxlIHNpbmNlIGl0IG1heSBiZSBwYXNzZWQgYXNcbiAgLy8gYSBwcm9wIHRvIG1hbnkgY29tcG9uZW50cy4gQWxsIGBpdGVtYCBrZXkgdmFsdWVzIG11c3QgdGhlcmVmb3JlIGJlXG4gIC8vIG1lbW9pemVkLlxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaG9va3MvZXhoYXVzdGl2ZS1kZXBzXG4gIHByb3BzTGlzdC5tYXAoa2V5ID0+IGtleSA9PSBudWxsID8gdm9pZCAwIDoga2V5Lml0ZW0pKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4gKHtcbiAgICBnZXRSZWZlcmVuY2VQcm9wcyxcbiAgICBnZXRGbG9hdGluZ1Byb3BzLFxuICAgIGdldEl0ZW1Qcm9wc1xuICB9KSwgW2dldFJlZmVyZW5jZVByb3BzLCBnZXRGbG9hdGluZ1Byb3BzLCBnZXRJdGVtUHJvcHNdKTtcbn1cblxubGV0IGlzUHJldmVudFNjcm9sbFN1cHBvcnRlZCA9IGZhbHNlO1xuZnVuY3Rpb24gZG9Td2l0Y2gob3JpZW50YXRpb24sIHZlcnRpY2FsLCBob3Jpem9udGFsKSB7XG4gIHN3aXRjaCAob3JpZW50YXRpb24pIHtcbiAgICBjYXNlICd2ZXJ0aWNhbCc6XG4gICAgICByZXR1cm4gdmVydGljYWw7XG4gICAgY2FzZSAnaG9yaXpvbnRhbCc6XG4gICAgICByZXR1cm4gaG9yaXpvbnRhbDtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHZlcnRpY2FsIHx8IGhvcml6b250YWw7XG4gIH1cbn1cbmZ1bmN0aW9uIGlzTWFpbk9yaWVudGF0aW9uS2V5KGtleSwgb3JpZW50YXRpb24pIHtcbiAgY29uc3QgdmVydGljYWwgPSBrZXkgPT09IEFSUk9XX1VQIHx8IGtleSA9PT0gQVJST1dfRE9XTjtcbiAgY29uc3QgaG9yaXpvbnRhbCA9IGtleSA9PT0gQVJST1dfTEVGVCB8fCBrZXkgPT09IEFSUk9XX1JJR0hUO1xuICByZXR1cm4gZG9Td2l0Y2gob3JpZW50YXRpb24sIHZlcnRpY2FsLCBob3Jpem9udGFsKTtcbn1cbmZ1bmN0aW9uIGlzTWFpbk9yaWVudGF0aW9uVG9FbmRLZXkoa2V5LCBvcmllbnRhdGlvbiwgcnRsKSB7XG4gIGNvbnN0IHZlcnRpY2FsID0ga2V5ID09PSBBUlJPV19ET1dOO1xuICBjb25zdCBob3Jpem9udGFsID0gcnRsID8ga2V5ID09PSBBUlJPV19MRUZUIDoga2V5ID09PSBBUlJPV19SSUdIVDtcbiAgcmV0dXJuIGRvU3dpdGNoKG9yaWVudGF0aW9uLCB2ZXJ0aWNhbCwgaG9yaXpvbnRhbCkgfHwga2V5ID09PSAnRW50ZXInIHx8IGtleSA9PT0gJyAnIHx8IGtleSA9PT0gJyc7XG59XG5mdW5jdGlvbiBpc0Nyb3NzT3JpZW50YXRpb25PcGVuS2V5KGtleSwgb3JpZW50YXRpb24sIHJ0bCkge1xuICBjb25zdCB2ZXJ0aWNhbCA9IHJ0bCA/IGtleSA9PT0gQVJST1dfTEVGVCA6IGtleSA9PT0gQVJST1dfUklHSFQ7XG4gIGNvbnN0IGhvcml6b250YWwgPSBrZXkgPT09IEFSUk9XX0RPV047XG4gIHJldHVybiBkb1N3aXRjaChvcmllbnRhdGlvbiwgdmVydGljYWwsIGhvcml6b250YWwpO1xufVxuZnVuY3Rpb24gaXNDcm9zc09yaWVudGF0aW9uQ2xvc2VLZXkoa2V5LCBvcmllbnRhdGlvbiwgcnRsKSB7XG4gIGNvbnN0IHZlcnRpY2FsID0gcnRsID8ga2V5ID09PSBBUlJPV19SSUdIVCA6IGtleSA9PT0gQVJST1dfTEVGVDtcbiAgY29uc3QgaG9yaXpvbnRhbCA9IGtleSA9PT0gQVJST1dfVVA7XG4gIHJldHVybiBkb1N3aXRjaChvcmllbnRhdGlvbiwgdmVydGljYWwsIGhvcml6b250YWwpO1xufVxuLyoqXG4gKiBBZGRzIGFycm93IGtleS1iYXNlZCBuYXZpZ2F0aW9uIG9mIGEgbGlzdCBvZiBpdGVtcywgZWl0aGVyIHVzaW5nIHJlYWwgRE9NXG4gKiBmb2N1cyBvciB2aXJ0dWFsIGZvY3VzLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZUxpc3ROYXZpZ2F0aW9uXG4gKi9cbmZ1bmN0aW9uIHVzZUxpc3ROYXZpZ2F0aW9uKGNvbnRleHQsIHByb3BzKSB7XG4gIGNvbnN0IHtcbiAgICBvcGVuLFxuICAgIG9uT3BlbkNoYW5nZSxcbiAgICBlbGVtZW50czoge1xuICAgICAgZG9tUmVmZXJlbmNlLFxuICAgICAgZmxvYXRpbmdcbiAgICB9XG4gIH0gPSBjb250ZXh0O1xuICBjb25zdCB7XG4gICAgbGlzdFJlZixcbiAgICBhY3RpdmVJbmRleCxcbiAgICBvbk5hdmlnYXRlOiB1bnN0YWJsZV9vbk5hdmlnYXRlID0gKCkgPT4ge30sXG4gICAgZW5hYmxlZCA9IHRydWUsXG4gICAgc2VsZWN0ZWRJbmRleCA9IG51bGwsXG4gICAgYWxsb3dFc2NhcGUgPSBmYWxzZSxcbiAgICBsb29wID0gZmFsc2UsXG4gICAgbmVzdGVkID0gZmFsc2UsXG4gICAgcnRsID0gZmFsc2UsXG4gICAgdmlydHVhbCA9IGZhbHNlLFxuICAgIGZvY3VzSXRlbU9uT3BlbiA9ICdhdXRvJyxcbiAgICBmb2N1c0l0ZW1PbkhvdmVyID0gdHJ1ZSxcbiAgICBvcGVuT25BcnJvd0tleURvd24gPSB0cnVlLFxuICAgIGRpc2FibGVkSW5kaWNlcyA9IHVuZGVmaW5lZCxcbiAgICBvcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCcsXG4gICAgY29scyA9IDEsXG4gICAgc2Nyb2xsSXRlbUludG9WaWV3ID0gdHJ1ZSxcbiAgICB2aXJ0dWFsSXRlbVJlZixcbiAgICBpdGVtU2l6ZXMsXG4gICAgZGVuc2UgPSBmYWxzZVxuICB9ID0gcHJvcHM7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICBpZiAoYWxsb3dFc2NhcGUpIHtcbiAgICAgIGlmICghbG9vcCkge1xuICAgICAgICB3YXJuKCdgdXNlTGlzdE5hdmlnYXRpb25gIGxvb3BpbmcgbXVzdCBiZSBlbmFibGVkIHRvIGFsbG93IGVzY2FwaW5nLicpO1xuICAgICAgfVxuICAgICAgaWYgKCF2aXJ0dWFsKSB7XG4gICAgICAgIHdhcm4oJ2B1c2VMaXN0TmF2aWdhdGlvbmAgbXVzdCBiZSB2aXJ0dWFsIHRvIGFsbG93IGVzY2FwaW5nLicpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAob3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCcgJiYgY29scyA+IDEpIHtcbiAgICAgIHdhcm4oJ0luIGdyaWQgbGlzdCBuYXZpZ2F0aW9uIG1vZGUgKGBjb2xzYCA+IDEpLCB0aGUgYG9yaWVudGF0aW9uYCBzaG91bGQnLCAnYmUgZWl0aGVyIFwiaG9yaXpvbnRhbFwiIG9yIFwiYm90aFwiLicpO1xuICAgIH1cbiAgfVxuICBjb25zdCBwYXJlbnRJZCA9IHVzZUZsb2F0aW5nUGFyZW50Tm9kZUlkKCk7XG4gIGNvbnN0IHRyZWUgPSB1c2VGbG9hdGluZ1RyZWUoKTtcbiAgY29uc3Qgb25OYXZpZ2F0ZSA9IHVzZUVmZmVjdEV2ZW50KHVuc3RhYmxlX29uTmF2aWdhdGUpO1xuICBjb25zdCBmb2N1c0l0ZW1Pbk9wZW5SZWYgPSBSZWFjdC51c2VSZWYoZm9jdXNJdGVtT25PcGVuKTtcbiAgY29uc3QgaW5kZXhSZWYgPSBSZWFjdC51c2VSZWYoc2VsZWN0ZWRJbmRleCAhPSBudWxsID8gc2VsZWN0ZWRJbmRleCA6IC0xKTtcbiAgY29uc3Qga2V5UmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICBjb25zdCBpc1BvaW50ZXJNb2RhbGl0eVJlZiA9IFJlYWN0LnVzZVJlZih0cnVlKTtcbiAgY29uc3QgcHJldmlvdXNPbk5hdmlnYXRlUmVmID0gUmVhY3QudXNlUmVmKG9uTmF2aWdhdGUpO1xuICBjb25zdCBwcmV2aW91c01vdW50ZWRSZWYgPSBSZWFjdC51c2VSZWYoISFmbG9hdGluZyk7XG4gIGNvbnN0IGZvcmNlU3luY0ZvY3VzID0gUmVhY3QudXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgZm9yY2VTY3JvbGxJbnRvVmlld1JlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IGRpc2FibGVkSW5kaWNlc1JlZiA9IHVzZUxhdGVzdFJlZihkaXNhYmxlZEluZGljZXMpO1xuICBjb25zdCBsYXRlc3RPcGVuUmVmID0gdXNlTGF0ZXN0UmVmKG9wZW4pO1xuICBjb25zdCBzY3JvbGxJdGVtSW50b1ZpZXdSZWYgPSB1c2VMYXRlc3RSZWYoc2Nyb2xsSXRlbUludG9WaWV3KTtcbiAgY29uc3QgZmxvYXRpbmdSZWYgPSB1c2VMYXRlc3RSZWYoZmxvYXRpbmcpO1xuICBjb25zdCBzZWxlY3RlZEluZGV4UmVmID0gdXNlTGF0ZXN0UmVmKHNlbGVjdGVkSW5kZXgpO1xuICBjb25zdCBbYWN0aXZlSWQsIHNldEFjdGl2ZUlkXSA9IFJlYWN0LnVzZVN0YXRlKCk7XG4gIGNvbnN0IFt2aXJ0dWFsSWQsIHNldFZpcnR1YWxJZF0gPSBSZWFjdC51c2VTdGF0ZSgpO1xuICBjb25zdCBmb2N1c0l0ZW0gPSB1c2VFZmZlY3RFdmVudChmdW5jdGlvbiAobGlzdFJlZiwgaW5kZXhSZWYsIGZvcmNlU2Nyb2xsSW50b1ZpZXcpIHtcbiAgICBpZiAoZm9yY2VTY3JvbGxJbnRvVmlldyA9PT0gdm9pZCAwKSB7XG4gICAgICBmb3JjZVNjcm9sbEludG9WaWV3ID0gZmFsc2U7XG4gICAgfVxuICAgIGZ1bmN0aW9uIHJ1bkZvY3VzKGl0ZW0pIHtcbiAgICAgIGlmICh2aXJ0dWFsKSB7XG4gICAgICAgIHNldEFjdGl2ZUlkKGl0ZW0uaWQpO1xuICAgICAgICB0cmVlID09IG51bGwgfHwgdHJlZS5ldmVudHMuZW1pdCgndmlydHVhbGZvY3VzJywgaXRlbSk7XG4gICAgICAgIGlmICh2aXJ0dWFsSXRlbVJlZikge1xuICAgICAgICAgIHZpcnR1YWxJdGVtUmVmLmN1cnJlbnQgPSBpdGVtO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlbnF1ZXVlRm9jdXMoaXRlbSwge1xuICAgICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWUsXG4gICAgICAgICAgLy8gTWFjIFNhZmFyaSBkb2VzIG5vdCBtb3ZlIHRoZSB2aXJ0dWFsIGN1cnNvciB1bmxlc3MgdGhlIGZvY3VzIGNhbGxcbiAgICAgICAgICAvLyBpcyBzeW5jLiBIb3dldmVyLCBmb3IgdGhlIHZlcnkgZmlyc3QgZm9jdXMgY2FsbCwgd2UgbmVlZCB0byB3YWl0XG4gICAgICAgICAgLy8gZm9yIHRoZSBwb3NpdGlvbiB0byBiZSByZWFkeSBpbiBvcmRlciB0byBwcmV2ZW50IHVud2FudGVkXG4gICAgICAgICAgLy8gc2Nyb2xsaW5nLiBUaGlzIG1lYW5zIHRoZSB2aXJ0dWFsIGN1cnNvciB3aWxsIG5vdCBtb3ZlIHRvIHRoZSBmaXJzdFxuICAgICAgICAgIC8vIGl0ZW0gd2hlbiBmaXJzdCBvcGVuaW5nIHRoZSBmbG9hdGluZyBlbGVtZW50LCBidXQgd2lsbCBvblxuICAgICAgICAgIC8vIHN1YnNlcXVlbnQgY2FsbHMuIGBwcmV2ZW50U2Nyb2xsYCBpcyBzdXBwb3J0ZWQgaW4gbW9kZXJuIFNhZmFyaSxcbiAgICAgICAgICAvLyBzbyB3ZSBjYW4gdXNlIHRoYXQgaW5zdGVhZC5cbiAgICAgICAgICAvLyBpT1MgU2FmYXJpIG11c3QgYmUgYXN5bmMgb3IgdGhlIGZpcnN0IGl0ZW0gd2lsbCBub3QgYmUgZm9jdXNlZC5cbiAgICAgICAgICBzeW5jOiBpc01hYygpICYmIGlzU2FmYXJpKCkgPyBpc1ByZXZlbnRTY3JvbGxTdXBwb3J0ZWQgfHwgZm9yY2VTeW5jRm9jdXMuY3VycmVudCA6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBpbml0aWFsSXRlbSA9IGxpc3RSZWYuY3VycmVudFtpbmRleFJlZi5jdXJyZW50XTtcbiAgICBpZiAoaW5pdGlhbEl0ZW0pIHtcbiAgICAgIHJ1bkZvY3VzKGluaXRpYWxJdGVtKTtcbiAgICB9XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGNvbnN0IHdhaXRlZEl0ZW0gPSBsaXN0UmVmLmN1cnJlbnRbaW5kZXhSZWYuY3VycmVudF0gfHwgaW5pdGlhbEl0ZW07XG4gICAgICBpZiAoIXdhaXRlZEl0ZW0pIHJldHVybjtcbiAgICAgIGlmICghaW5pdGlhbEl0ZW0pIHtcbiAgICAgICAgcnVuRm9jdXMod2FpdGVkSXRlbSk7XG4gICAgICB9XG4gICAgICBjb25zdCBzY3JvbGxJbnRvVmlld09wdGlvbnMgPSBzY3JvbGxJdGVtSW50b1ZpZXdSZWYuY3VycmVudDtcbiAgICAgIGNvbnN0IHNob3VsZFNjcm9sbEludG9WaWV3ID0gc2Nyb2xsSW50b1ZpZXdPcHRpb25zICYmIGl0ZW0gJiYgKGZvcmNlU2Nyb2xsSW50b1ZpZXcgfHwgIWlzUG9pbnRlck1vZGFsaXR5UmVmLmN1cnJlbnQpO1xuICAgICAgaWYgKHNob3VsZFNjcm9sbEludG9WaWV3KSB7XG4gICAgICAgIC8vIEpTRE9NIGRvZXNuJ3Qgc3VwcG9ydCBgLnNjcm9sbEludG9WaWV3KClgIGJ1dCBpdCdzIHdpZGVseSBzdXBwb3J0ZWRcbiAgICAgICAgLy8gYnkgYWxsIGJyb3dzZXJzLlxuICAgICAgICB3YWl0ZWRJdGVtLnNjcm9sbEludG9WaWV3ID09IG51bGwgfHwgd2FpdGVkSXRlbS5zY3JvbGxJbnRvVmlldyh0eXBlb2Ygc2Nyb2xsSW50b1ZpZXdPcHRpb25zID09PSAnYm9vbGVhbicgPyB7XG4gICAgICAgICAgYmxvY2s6ICduZWFyZXN0JyxcbiAgICAgICAgICBpbmxpbmU6ICduZWFyZXN0J1xuICAgICAgICB9IDogc2Nyb2xsSW50b1ZpZXdPcHRpb25zKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKS5mb2N1cyh7XG4gICAgICBnZXQgcHJldmVudFNjcm9sbCgpIHtcbiAgICAgICAgaXNQcmV2ZW50U2Nyb2xsU3VwcG9ydGVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbXSk7XG5cbiAgLy8gU3luYyBgc2VsZWN0ZWRJbmRleGAgdG8gYmUgdGhlIGBhY3RpdmVJbmRleGAgdXBvbiBvcGVuaW5nIHRoZSBmbG9hdGluZ1xuICAvLyBlbGVtZW50LiBBbHNvLCByZXNldCBgYWN0aXZlSW5kZXhgIHVwb24gY2xvc2luZyB0aGUgZmxvYXRpbmcgZWxlbWVudC5cbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAob3BlbiAmJiBmbG9hdGluZykge1xuICAgICAgaWYgKGZvY3VzSXRlbU9uT3BlblJlZi5jdXJyZW50ICYmIHNlbGVjdGVkSW5kZXggIT0gbnVsbCkge1xuICAgICAgICAvLyBSZWdhcmRsZXNzIG9mIHRoZSBwb2ludGVyIG1vZGFsaXR5LCB3ZSB3YW50IHRvIGVuc3VyZSB0aGUgc2VsZWN0ZWRcbiAgICAgICAgLy8gaXRlbSBjb21lcyBpbnRvIHZpZXcgd2hlbiB0aGUgZmxvYXRpbmcgZWxlbWVudCBpcyBvcGVuZWQuXG4gICAgICAgIGZvcmNlU2Nyb2xsSW50b1ZpZXdSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBzZWxlY3RlZEluZGV4O1xuICAgICAgICBvbk5hdmlnYXRlKHNlbGVjdGVkSW5kZXgpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAocHJldmlvdXNNb3VudGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgIC8vIFNpbmNlIHRoZSB1c2VyIGNhbiBzcGVjaWZ5IGBvbk5hdmlnYXRlYCBjb25kaXRpb25hbGx5XG4gICAgICAvLyAob25OYXZpZ2F0ZTogb3BlbiA/IHNldEFjdGl2ZUluZGV4IDogc2V0U2VsZWN0ZWRJbmRleCksXG4gICAgICAvLyB3ZSBzdG9yZSBhbmQgY2FsbCB0aGUgcHJldmlvdXMgZnVuY3Rpb24uXG4gICAgICBpbmRleFJlZi5jdXJyZW50ID0gLTE7XG4gICAgICBwcmV2aW91c09uTmF2aWdhdGVSZWYuY3VycmVudChudWxsKTtcbiAgICB9XG4gIH0sIFtlbmFibGVkLCBvcGVuLCBmbG9hdGluZywgc2VsZWN0ZWRJbmRleCwgb25OYXZpZ2F0ZV0pO1xuXG4gIC8vIFN5bmMgYGFjdGl2ZUluZGV4YCB0byBiZSB0aGUgZm9jdXNlZCBpdGVtIHdoaWxlIHRoZSBmbG9hdGluZyBlbGVtZW50IGlzXG4gIC8vIG9wZW4uXG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKG9wZW4gJiYgZmxvYXRpbmcpIHtcbiAgICAgIGlmIChhY3RpdmVJbmRleCA9PSBudWxsKSB7XG4gICAgICAgIGZvcmNlU3luY0ZvY3VzLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgaWYgKHNlbGVjdGVkSW5kZXhSZWYuY3VycmVudCAhPSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUmVzZXQgd2hpbGUgdGhlIGZsb2F0aW5nIGVsZW1lbnQgd2FzIG9wZW4gKGUuZy4gdGhlIGxpc3QgY2hhbmdlZCkuXG4gICAgICAgIGlmIChwcmV2aW91c01vdW50ZWRSZWYuY3VycmVudCkge1xuICAgICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSAtMTtcbiAgICAgICAgICBmb2N1c0l0ZW0obGlzdFJlZiwgaW5kZXhSZWYpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5pdGlhbCBzeW5jLlxuICAgICAgICBpZiAoIXByZXZpb3VzTW91bnRlZFJlZi5jdXJyZW50ICYmIGZvY3VzSXRlbU9uT3BlblJlZi5jdXJyZW50ICYmIChrZXlSZWYuY3VycmVudCAhPSBudWxsIHx8IGZvY3VzSXRlbU9uT3BlblJlZi5jdXJyZW50ID09PSB0cnVlICYmIGtleVJlZi5jdXJyZW50ID09IG51bGwpKSB7XG4gICAgICAgICAgbGV0IHJ1bnMgPSAwO1xuICAgICAgICAgIGNvbnN0IHdhaXRGb3JMaXN0UG9wdWxhdGVkID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGxpc3RSZWYuY3VycmVudFswXSA9PSBudWxsKSB7XG4gICAgICAgICAgICAgIC8vIEF2b2lkIGxldHRpbmcgdGhlIGJyb3dzZXIgcGFpbnQgaWYgcG9zc2libGUgb24gdGhlIGZpcnN0IHRyeSxcbiAgICAgICAgICAgICAgLy8gb3RoZXJ3aXNlIHVzZSByQUYuIERvbid0IHRyeSBtb3JlIHRoYW4gdHdpY2UsIHNpbmNlIHNvbWV0aGluZ1xuICAgICAgICAgICAgICAvLyBpcyB3cm9uZyBvdGhlcndpc2UuXG4gICAgICAgICAgICAgIGlmIChydW5zIDwgMikge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjaGVkdWxlciA9IHJ1bnMgPyByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgOiBxdWV1ZU1pY3JvdGFzaztcbiAgICAgICAgICAgICAgICBzY2hlZHVsZXIod2FpdEZvckxpc3RQb3B1bGF0ZWQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJ1bnMrKztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBrZXlSZWYuY3VycmVudCA9PSBudWxsIHx8IGlzTWFpbk9yaWVudGF0aW9uVG9FbmRLZXkoa2V5UmVmLmN1cnJlbnQsIG9yaWVudGF0aW9uLCBydGwpIHx8IG5lc3RlZCA/IGdldE1pbkluZGV4KGxpc3RSZWYsIGRpc2FibGVkSW5kaWNlc1JlZi5jdXJyZW50KSA6IGdldE1heEluZGV4KGxpc3RSZWYsIGRpc2FibGVkSW5kaWNlc1JlZi5jdXJyZW50KTtcbiAgICAgICAgICAgICAga2V5UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgICBvbk5hdmlnYXRlKGluZGV4UmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH07XG4gICAgICAgICAgd2FpdEZvckxpc3RQb3B1bGF0ZWQoKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICghaXNJbmRleE91dE9mQm91bmRzKGxpc3RSZWYsIGFjdGl2ZUluZGV4KSkge1xuICAgICAgICBpbmRleFJlZi5jdXJyZW50ID0gYWN0aXZlSW5kZXg7XG4gICAgICAgIGZvY3VzSXRlbShsaXN0UmVmLCBpbmRleFJlZiwgZm9yY2VTY3JvbGxJbnRvVmlld1JlZi5jdXJyZW50KTtcbiAgICAgICAgZm9yY2VTY3JvbGxJbnRvVmlld1JlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9LCBbZW5hYmxlZCwgb3BlbiwgZmxvYXRpbmcsIGFjdGl2ZUluZGV4LCBzZWxlY3RlZEluZGV4UmVmLCBuZXN0ZWQsIGxpc3RSZWYsIG9yaWVudGF0aW9uLCBydGwsIG9uTmF2aWdhdGUsIGZvY3VzSXRlbSwgZGlzYWJsZWRJbmRpY2VzUmVmXSk7XG5cbiAgLy8gRW5zdXJlIHRoZSBwYXJlbnQgZmxvYXRpbmcgZWxlbWVudCBoYXMgZm9jdXMgd2hlbiBhIG5lc3RlZCBjaGlsZCBjbG9zZXNcbiAgLy8gdG8gYWxsb3cgYXJyb3cga2V5IG5hdmlnYXRpb24gdG8gd29yayBhZnRlciB0aGUgcG9pbnRlciBsZWF2ZXMgdGhlIGNoaWxkLlxuICBpbmRleCgoKSA9PiB7XG4gICAgdmFyIF9ub2RlcyRmaW5kO1xuICAgIGlmICghZW5hYmxlZCB8fCBmbG9hdGluZyB8fCAhdHJlZSB8fCB2aXJ0dWFsIHx8ICFwcmV2aW91c01vdW50ZWRSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub2RlcyA9IHRyZWUubm9kZXNSZWYuY3VycmVudDtcbiAgICBjb25zdCBwYXJlbnQgPSAoX25vZGVzJGZpbmQgPSBub2Rlcy5maW5kKG5vZGUgPT4gbm9kZS5pZCA9PT0gcGFyZW50SWQpKSA9PSBudWxsIHx8IChfbm9kZXMkZmluZCA9IF9ub2RlcyRmaW5kLmNvbnRleHQpID09IG51bGwgPyB2b2lkIDAgOiBfbm9kZXMkZmluZC5lbGVtZW50cy5mbG9hdGluZztcbiAgICBjb25zdCBhY3RpdmVFbCA9IGFjdGl2ZUVsZW1lbnQoZ2V0RG9jdW1lbnQoZmxvYXRpbmcpKTtcbiAgICBjb25zdCB0cmVlQ29udGFpbnNBY3RpdmVFbCA9IG5vZGVzLnNvbWUobm9kZSA9PiBub2RlLmNvbnRleHQgJiYgY29udGFpbnMobm9kZS5jb250ZXh0LmVsZW1lbnRzLmZsb2F0aW5nLCBhY3RpdmVFbCkpO1xuICAgIGlmIChwYXJlbnQgJiYgIXRyZWVDb250YWluc0FjdGl2ZUVsICYmIGlzUG9pbnRlck1vZGFsaXR5UmVmLmN1cnJlbnQpIHtcbiAgICAgIHBhcmVudC5mb2N1cyh7XG4gICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWVcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW2VuYWJsZWQsIGZsb2F0aW5nLCB0cmVlLCBwYXJlbnRJZCwgdmlydHVhbF0pO1xuICBpbmRleCgoKSA9PiB7XG4gICAgaWYgKCFlbmFibGVkIHx8ICF0cmVlIHx8ICF2aXJ0dWFsIHx8IHBhcmVudElkKSByZXR1cm47XG4gICAgZnVuY3Rpb24gaGFuZGxlVmlydHVhbEZvY3VzKGl0ZW0pIHtcbiAgICAgIHNldFZpcnR1YWxJZChpdGVtLmlkKTtcbiAgICAgIGlmICh2aXJ0dWFsSXRlbVJlZikge1xuICAgICAgICB2aXJ0dWFsSXRlbVJlZi5jdXJyZW50ID0gaXRlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgdHJlZS5ldmVudHMub24oJ3ZpcnR1YWxmb2N1cycsIGhhbmRsZVZpcnR1YWxGb2N1cyk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHRyZWUuZXZlbnRzLm9mZigndmlydHVhbGZvY3VzJywgaGFuZGxlVmlydHVhbEZvY3VzKTtcbiAgICB9O1xuICB9LCBbZW5hYmxlZCwgdHJlZSwgdmlydHVhbCwgcGFyZW50SWQsIHZpcnR1YWxJdGVtUmVmXSk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBwcmV2aW91c09uTmF2aWdhdGVSZWYuY3VycmVudCA9IG9uTmF2aWdhdGU7XG4gICAgcHJldmlvdXNNb3VudGVkUmVmLmN1cnJlbnQgPSAhIWZsb2F0aW5nO1xuICB9KTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIGlmICghb3Blbikge1xuICAgICAga2V5UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH1cbiAgfSwgW29wZW5dKTtcbiAgY29uc3QgaGFzQWN0aXZlSW5kZXggPSBhY3RpdmVJbmRleCAhPSBudWxsO1xuICBjb25zdCBpdGVtID0gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgZnVuY3Rpb24gc3luY0N1cnJlbnRUYXJnZXQoY3VycmVudFRhcmdldCkge1xuICAgICAgaWYgKCFvcGVuKSByZXR1cm47XG4gICAgICBjb25zdCBpbmRleCA9IGxpc3RSZWYuY3VycmVudC5pbmRleE9mKGN1cnJlbnRUYXJnZXQpO1xuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICBvbk5hdmlnYXRlKGluZGV4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgcHJvcHMgPSB7XG4gICAgICBvbkZvY3VzKF9yZWYpIHtcbiAgICAgICAgbGV0IHtcbiAgICAgICAgICBjdXJyZW50VGFyZ2V0XG4gICAgICAgIH0gPSBfcmVmO1xuICAgICAgICBzeW5jQ3VycmVudFRhcmdldChjdXJyZW50VGFyZ2V0KTtcbiAgICAgIH0sXG4gICAgICBvbkNsaWNrOiBfcmVmMiA9PiB7XG4gICAgICAgIGxldCB7XG4gICAgICAgICAgY3VycmVudFRhcmdldFxuICAgICAgICB9ID0gX3JlZjI7XG4gICAgICAgIHJldHVybiBjdXJyZW50VGFyZ2V0LmZvY3VzKHtcbiAgICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIC8vIFNhZmFyaVxuICAgICAgLi4uKGZvY3VzSXRlbU9uSG92ZXIgJiYge1xuICAgICAgICBvbk1vdXNlTW92ZShfcmVmMykge1xuICAgICAgICAgIGxldCB7XG4gICAgICAgICAgICBjdXJyZW50VGFyZ2V0XG4gICAgICAgICAgfSA9IF9yZWYzO1xuICAgICAgICAgIHN5bmNDdXJyZW50VGFyZ2V0KGN1cnJlbnRUYXJnZXQpO1xuICAgICAgICB9LFxuICAgICAgICBvblBvaW50ZXJMZWF2ZShfcmVmNCkge1xuICAgICAgICAgIGxldCB7XG4gICAgICAgICAgICBwb2ludGVyVHlwZVxuICAgICAgICAgIH0gPSBfcmVmNDtcbiAgICAgICAgICBpZiAoIWlzUG9pbnRlck1vZGFsaXR5UmVmLmN1cnJlbnQgfHwgcG9pbnRlclR5cGUgPT09ICd0b3VjaCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5kZXhSZWYuY3VycmVudCA9IC0xO1xuICAgICAgICAgIGZvY3VzSXRlbShsaXN0UmVmLCBpbmRleFJlZik7XG4gICAgICAgICAgb25OYXZpZ2F0ZShudWxsKTtcbiAgICAgICAgICBpZiAoIXZpcnR1YWwpIHtcbiAgICAgICAgICAgIGVucXVldWVGb2N1cyhmbG9hdGluZ1JlZi5jdXJyZW50LCB7XG4gICAgICAgICAgICAgIHByZXZlbnRTY3JvbGw6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9O1xuICAgIHJldHVybiBwcm9wcztcbiAgfSwgW29wZW4sIGZsb2F0aW5nUmVmLCBmb2N1c0l0ZW0sIGZvY3VzSXRlbU9uSG92ZXIsIGxpc3RSZWYsIG9uTmF2aWdhdGUsIHZpcnR1YWxdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCBkaXNhYmxlZEluZGljZXMgPSBkaXNhYmxlZEluZGljZXNSZWYuY3VycmVudDtcbiAgICBmdW5jdGlvbiBvbktleURvd24oZXZlbnQpIHtcbiAgICAgIGlzUG9pbnRlck1vZGFsaXR5UmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgIGZvcmNlU3luY0ZvY3VzLmN1cnJlbnQgPSB0cnVlO1xuXG4gICAgICAvLyBJZiB0aGUgZmxvYXRpbmcgZWxlbWVudCBpcyBhbmltYXRpbmcgb3V0LCBpZ25vcmUgbmF2aWdhdGlvbi4gT3RoZXJ3aXNlLFxuICAgICAgLy8gdGhlIGBhY3RpdmVJbmRleGAgZ2V0cyBzZXQgdG8gMCBkZXNwaXRlIG5vdCBiZWluZyBvcGVuIHNvIHRoZSBuZXh0IHRpbWVcbiAgICAgIC8vIHRoZSB1c2VyIEFycm93RG93bnMsIHRoZSBmaXJzdCBpdGVtIHdvbid0IGJlIGZvY3VzZWQuXG4gICAgICBpZiAoIWxhdGVzdE9wZW5SZWYuY3VycmVudCAmJiBldmVudC5jdXJyZW50VGFyZ2V0ID09PSBmbG9hdGluZ1JlZi5jdXJyZW50KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChuZXN0ZWQgJiYgaXNDcm9zc09yaWVudGF0aW9uQ2xvc2VLZXkoZXZlbnQua2V5LCBvcmllbnRhdGlvbiwgcnRsKSkge1xuICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICBvbk9wZW5DaGFuZ2UoZmFsc2UsIGV2ZW50Lm5hdGl2ZUV2ZW50LCAnbGlzdC1uYXZpZ2F0aW9uJyk7XG4gICAgICAgIGlmIChpc0hUTUxFbGVtZW50KGRvbVJlZmVyZW5jZSkgJiYgIXZpcnR1YWwpIHtcbiAgICAgICAgICBkb21SZWZlcmVuY2UuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBjdXJyZW50SW5kZXggPSBpbmRleFJlZi5jdXJyZW50O1xuICAgICAgY29uc3QgbWluSW5kZXggPSBnZXRNaW5JbmRleChsaXN0UmVmLCBkaXNhYmxlZEluZGljZXMpO1xuICAgICAgY29uc3QgbWF4SW5kZXggPSBnZXRNYXhJbmRleChsaXN0UmVmLCBkaXNhYmxlZEluZGljZXMpO1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0hvbWUnKSB7XG4gICAgICAgIHN0b3BFdmVudChldmVudCk7XG4gICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBtaW5JbmRleDtcbiAgICAgICAgb25OYXZpZ2F0ZShpbmRleFJlZi5jdXJyZW50KTtcbiAgICAgIH1cbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbmQnKSB7XG4gICAgICAgIHN0b3BFdmVudChldmVudCk7XG4gICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBtYXhJbmRleDtcbiAgICAgICAgb25OYXZpZ2F0ZShpbmRleFJlZi5jdXJyZW50KTtcbiAgICAgIH1cblxuICAgICAgLy8gR3JpZCBuYXZpZ2F0aW9uLlxuICAgICAgaWYgKGNvbHMgPiAxKSB7XG4gICAgICAgIGNvbnN0IHNpemVzID0gaXRlbVNpemVzIHx8IEFycmF5LmZyb20oe1xuICAgICAgICAgIGxlbmd0aDogbGlzdFJlZi5jdXJyZW50Lmxlbmd0aFxuICAgICAgICB9LCAoKSA9PiAoe1xuICAgICAgICAgIHdpZHRoOiAxLFxuICAgICAgICAgIGhlaWdodDogMVxuICAgICAgICB9KSk7XG4gICAgICAgIC8vIFRvIGNhbGN1bGF0ZSBtb3ZlbWVudHMgb24gdGhlIGdyaWQsIHdlIHVzZSBoeXBvdGhldGljYWwgY2VsbCBpbmRpY2VzXG4gICAgICAgIC8vIGFzIGlmIGV2ZXJ5IGl0ZW0gd2FzIDF4MSwgdGhlbiBjb252ZXJ0IGJhY2sgdG8gcmVhbCBpbmRpY2VzLlxuICAgICAgICBjb25zdCBjZWxsTWFwID0gYnVpbGRDZWxsTWFwKHNpemVzLCBjb2xzLCBkZW5zZSk7XG4gICAgICAgIGNvbnN0IG1pbkdyaWRJbmRleCA9IGNlbGxNYXAuZmluZEluZGV4KGluZGV4ID0+IGluZGV4ICE9IG51bGwgJiYgIWlzRGlzYWJsZWQobGlzdFJlZi5jdXJyZW50LCBpbmRleCwgZGlzYWJsZWRJbmRpY2VzKSk7XG4gICAgICAgIC8vIGxhc3QgZW5hYmxlZCBpbmRleFxuICAgICAgICBjb25zdCBtYXhHcmlkSW5kZXggPSBjZWxsTWFwLnJlZHVjZSgoZm91bmRJbmRleCwgaW5kZXgsIGNlbGxJbmRleCkgPT4gaW5kZXggIT0gbnVsbCAmJiAhaXNEaXNhYmxlZChsaXN0UmVmLmN1cnJlbnQsIGluZGV4LCBkaXNhYmxlZEluZGljZXMpID8gY2VsbEluZGV4IDogZm91bmRJbmRleCwgLTEpO1xuICAgICAgICBpbmRleFJlZi5jdXJyZW50ID0gY2VsbE1hcFtnZXRHcmlkTmF2aWdhdGVkSW5kZXgoe1xuICAgICAgICAgIGN1cnJlbnQ6IGNlbGxNYXAubWFwKGl0ZW1JbmRleCA9PiBpdGVtSW5kZXggIT0gbnVsbCA/IGxpc3RSZWYuY3VycmVudFtpdGVtSW5kZXhdIDogbnVsbClcbiAgICAgICAgfSwge1xuICAgICAgICAgIGV2ZW50LFxuICAgICAgICAgIG9yaWVudGF0aW9uLFxuICAgICAgICAgIGxvb3AsXG4gICAgICAgICAgY29scyxcbiAgICAgICAgICAvLyB0cmVhdCB1bmRlZmluZWQgKGVtcHR5IGdyaWQgc3BhY2VzKSBhcyBkaXNhYmxlZCBpbmRpY2VzIHNvIHdlXG4gICAgICAgICAgLy8gZG9uJ3QgZW5kIHVwIGluIHRoZW1cbiAgICAgICAgICBkaXNhYmxlZEluZGljZXM6IGdldENlbGxJbmRpY2VzKFsuLi4oZGlzYWJsZWRJbmRpY2VzIHx8IGxpc3RSZWYuY3VycmVudC5tYXAoKF8sIGluZGV4KSA9PiBpc0Rpc2FibGVkKGxpc3RSZWYuY3VycmVudCwgaW5kZXgpID8gaW5kZXggOiB1bmRlZmluZWQpKSwgdW5kZWZpbmVkXSwgY2VsbE1hcCksXG4gICAgICAgICAgbWluSW5kZXg6IG1pbkdyaWRJbmRleCxcbiAgICAgICAgICBtYXhJbmRleDogbWF4R3JpZEluZGV4LFxuICAgICAgICAgIHByZXZJbmRleDogZ2V0Q2VsbEluZGV4T2ZDb3JuZXIoaW5kZXhSZWYuY3VycmVudCA+IG1heEluZGV4ID8gbWluSW5kZXggOiBpbmRleFJlZi5jdXJyZW50LCBzaXplcywgY2VsbE1hcCwgY29scyxcbiAgICAgICAgICAvLyB1c2UgYSBjb3JuZXIgbWF0Y2hpbmcgdGhlIGVkZ2UgY2xvc2VzdCB0byB0aGUgZGlyZWN0aW9uXG4gICAgICAgICAgLy8gd2UncmUgbW92aW5nIGluIHNvIHdlIGRvbid0IGVuZCB1cCBpbiB0aGUgc2FtZSBpdGVtLiBQcmVmZXJcbiAgICAgICAgICAvLyB0b3AvbGVmdCBvdmVyIGJvdHRvbS9yaWdodC5cbiAgICAgICAgICBldmVudC5rZXkgPT09IEFSUk9XX0RPV04gPyAnYmwnIDogZXZlbnQua2V5ID09PSBBUlJPV19SSUdIVCA/ICd0cicgOiAndGwnKSxcbiAgICAgICAgICBzdG9wRXZlbnQ6IHRydWVcbiAgICAgICAgfSldOyAvLyBuYXZpZ2F0ZWQgY2VsbCB3aWxsIG5ldmVyIGJlIG51bGxpc2hcblxuICAgICAgICBvbk5hdmlnYXRlKGluZGV4UmVmLmN1cnJlbnQpO1xuICAgICAgICBpZiAob3JpZW50YXRpb24gPT09ICdib3RoJykge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGlzTWFpbk9yaWVudGF0aW9uS2V5KGV2ZW50LmtleSwgb3JpZW50YXRpb24pKSB7XG4gICAgICAgIHN0b3BFdmVudChldmVudCk7XG5cbiAgICAgICAgLy8gUmVzZXQgdGhlIGluZGV4IGlmIG5vIGl0ZW0gaXMgZm9jdXNlZC5cbiAgICAgICAgaWYgKG9wZW4gJiYgIXZpcnR1YWwgJiYgYWN0aXZlRWxlbWVudChldmVudC5jdXJyZW50VGFyZ2V0Lm93bmVyRG9jdW1lbnQpID09PSBldmVudC5jdXJyZW50VGFyZ2V0KSB7XG4gICAgICAgICAgaW5kZXhSZWYuY3VycmVudCA9IGlzTWFpbk9yaWVudGF0aW9uVG9FbmRLZXkoZXZlbnQua2V5LCBvcmllbnRhdGlvbiwgcnRsKSA/IG1pbkluZGV4IDogbWF4SW5kZXg7XG4gICAgICAgICAgb25OYXZpZ2F0ZShpbmRleFJlZi5jdXJyZW50KTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzTWFpbk9yaWVudGF0aW9uVG9FbmRLZXkoZXZlbnQua2V5LCBvcmllbnRhdGlvbiwgcnRsKSkge1xuICAgICAgICAgIGlmIChsb29wKSB7XG4gICAgICAgICAgICBpbmRleFJlZi5jdXJyZW50ID0gY3VycmVudEluZGV4ID49IG1heEluZGV4ID8gYWxsb3dFc2NhcGUgJiYgY3VycmVudEluZGV4ICE9PSBsaXN0UmVmLmN1cnJlbnQubGVuZ3RoID8gLTEgOiBtaW5JbmRleCA6IGZpbmROb25EaXNhYmxlZEluZGV4KGxpc3RSZWYsIHtcbiAgICAgICAgICAgICAgc3RhcnRpbmdJbmRleDogY3VycmVudEluZGV4LFxuICAgICAgICAgICAgICBkaXNhYmxlZEluZGljZXNcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpbmRleFJlZi5jdXJyZW50ID0gTWF0aC5taW4obWF4SW5kZXgsIGZpbmROb25EaXNhYmxlZEluZGV4KGxpc3RSZWYsIHtcbiAgICAgICAgICAgICAgc3RhcnRpbmdJbmRleDogY3VycmVudEluZGV4LFxuICAgICAgICAgICAgICBkaXNhYmxlZEluZGljZXNcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKGxvb3ApIHtcbiAgICAgICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBjdXJyZW50SW5kZXggPD0gbWluSW5kZXggPyBhbGxvd0VzY2FwZSAmJiBjdXJyZW50SW5kZXggIT09IC0xID8gbGlzdFJlZi5jdXJyZW50Lmxlbmd0aCA6IG1heEluZGV4IDogZmluZE5vbkRpc2FibGVkSW5kZXgobGlzdFJlZiwge1xuICAgICAgICAgICAgICBzdGFydGluZ0luZGV4OiBjdXJyZW50SW5kZXgsXG4gICAgICAgICAgICAgIGRlY3JlbWVudDogdHJ1ZSxcbiAgICAgICAgICAgICAgZGlzYWJsZWRJbmRpY2VzXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaW5kZXhSZWYuY3VycmVudCA9IE1hdGgubWF4KG1pbkluZGV4LCBmaW5kTm9uRGlzYWJsZWRJbmRleChsaXN0UmVmLCB7XG4gICAgICAgICAgICAgIHN0YXJ0aW5nSW5kZXg6IGN1cnJlbnRJbmRleCxcbiAgICAgICAgICAgICAgZGVjcmVtZW50OiB0cnVlLFxuICAgICAgICAgICAgICBkaXNhYmxlZEluZGljZXNcbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzSW5kZXhPdXRPZkJvdW5kcyhsaXN0UmVmLCBpbmRleFJlZi5jdXJyZW50KSkge1xuICAgICAgICAgIG9uTmF2aWdhdGUobnVsbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25OYXZpZ2F0ZShpbmRleFJlZi5jdXJyZW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBjaGVja1ZpcnR1YWxNb3VzZShldmVudCkge1xuICAgICAgaWYgKGZvY3VzSXRlbU9uT3BlbiA9PT0gJ2F1dG8nICYmIGlzVmlydHVhbENsaWNrKGV2ZW50Lm5hdGl2ZUV2ZW50KSkge1xuICAgICAgICBmb2N1c0l0ZW1Pbk9wZW5SZWYuY3VycmVudCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIGZ1bmN0aW9uIGNoZWNrVmlydHVhbFBvaW50ZXIoZXZlbnQpIHtcbiAgICAgIC8vIGBwb2ludGVyZG93bmAgZmlyZXMgZmlyc3QsIHJlc2V0IHRoZSBzdGF0ZSB0aGVuIHBlcmZvcm0gdGhlIGNoZWNrcy5cbiAgICAgIGZvY3VzSXRlbU9uT3BlblJlZi5jdXJyZW50ID0gZm9jdXNJdGVtT25PcGVuO1xuICAgICAgaWYgKGZvY3VzSXRlbU9uT3BlbiA9PT0gJ2F1dG8nICYmIGlzVmlydHVhbFBvaW50ZXJFdmVudChldmVudC5uYXRpdmVFdmVudCkpIHtcbiAgICAgICAgZm9jdXNJdGVtT25PcGVuUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBhcmlhQWN0aXZlRGVzY2VuZGFudFByb3AgPSB2aXJ0dWFsICYmIG9wZW4gJiYgaGFzQWN0aXZlSW5kZXggJiYge1xuICAgICAgJ2FyaWEtYWN0aXZlZGVzY2VuZGFudCc6IHZpcnR1YWxJZCB8fCBhY3RpdmVJZFxuICAgIH07XG4gICAgY29uc3QgYWN0aXZlSXRlbSA9IGxpc3RSZWYuY3VycmVudC5maW5kKGl0ZW0gPT4gKGl0ZW0gPT0gbnVsbCA/IHZvaWQgMCA6IGl0ZW0uaWQpID09PSBhY3RpdmVJZCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHJlZmVyZW5jZToge1xuICAgICAgICAuLi5hcmlhQWN0aXZlRGVzY2VuZGFudFByb3AsXG4gICAgICAgIG9uS2V5RG93bihldmVudCkge1xuICAgICAgICAgIGlzUG9pbnRlck1vZGFsaXR5UmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICBjb25zdCBpc0Fycm93S2V5ID0gZXZlbnQua2V5LmluZGV4T2YoJ0Fycm93JykgPT09IDA7XG4gICAgICAgICAgY29uc3QgaXNDcm9zc09wZW5LZXkgPSBpc0Nyb3NzT3JpZW50YXRpb25PcGVuS2V5KGV2ZW50LmtleSwgb3JpZW50YXRpb24sIHJ0bCk7XG4gICAgICAgICAgY29uc3QgaXNDcm9zc0Nsb3NlS2V5ID0gaXNDcm9zc09yaWVudGF0aW9uQ2xvc2VLZXkoZXZlbnQua2V5LCBvcmllbnRhdGlvbiwgcnRsKTtcbiAgICAgICAgICBjb25zdCBpc01haW5LZXkgPSBpc01haW5PcmllbnRhdGlvbktleShldmVudC5rZXksIG9yaWVudGF0aW9uKTtcbiAgICAgICAgICBjb25zdCBpc05hdmlnYXRpb25LZXkgPSAobmVzdGVkID8gaXNDcm9zc09wZW5LZXkgOiBpc01haW5LZXkpIHx8IGV2ZW50LmtleSA9PT0gJ0VudGVyJyB8fCBldmVudC5rZXkudHJpbSgpID09PSAnJztcbiAgICAgICAgICBpZiAodmlydHVhbCAmJiBvcGVuKSB7XG4gICAgICAgICAgICBjb25zdCByb290Tm9kZSA9IHRyZWUgPT0gbnVsbCA/IHZvaWQgMCA6IHRyZWUubm9kZXNSZWYuY3VycmVudC5maW5kKG5vZGUgPT4gbm9kZS5wYXJlbnRJZCA9PSBudWxsKTtcbiAgICAgICAgICAgIGNvbnN0IGRlZXBlc3ROb2RlID0gdHJlZSAmJiByb290Tm9kZSA/IGdldERlZXBlc3ROb2RlKHRyZWUubm9kZXNSZWYuY3VycmVudCwgcm9vdE5vZGUuaWQpIDogbnVsbDtcbiAgICAgICAgICAgIGlmIChpc0Fycm93S2V5ICYmIGRlZXBlc3ROb2RlICYmIHZpcnR1YWxJdGVtUmVmKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGV2ZW50T2JqZWN0ID0gbmV3IEtleWJvYXJkRXZlbnQoJ2tleWRvd24nLCB7XG4gICAgICAgICAgICAgICAga2V5OiBldmVudC5rZXksXG4gICAgICAgICAgICAgICAgYnViYmxlczogdHJ1ZVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgaWYgKGlzQ3Jvc3NPcGVuS2V5IHx8IGlzQ3Jvc3NDbG9zZUtleSkge1xuICAgICAgICAgICAgICAgIHZhciBfZGVlcGVzdE5vZGUkY29udGV4dCwgX2RlZXBlc3ROb2RlJGNvbnRleHQyO1xuICAgICAgICAgICAgICAgIGNvbnN0IGlzQ3VycmVudFRhcmdldCA9ICgoX2RlZXBlc3ROb2RlJGNvbnRleHQgPSBkZWVwZXN0Tm9kZS5jb250ZXh0KSA9PSBudWxsID8gdm9pZCAwIDogX2RlZXBlc3ROb2RlJGNvbnRleHQuZWxlbWVudHMuZG9tUmVmZXJlbmNlKSA9PT0gZXZlbnQuY3VycmVudFRhcmdldDtcbiAgICAgICAgICAgICAgICBjb25zdCBkaXNwYXRjaEl0ZW0gPSBpc0Nyb3NzQ2xvc2VLZXkgJiYgIWlzQ3VycmVudFRhcmdldCA/IChfZGVlcGVzdE5vZGUkY29udGV4dDIgPSBkZWVwZXN0Tm9kZS5jb250ZXh0KSA9PSBudWxsID8gdm9pZCAwIDogX2RlZXBlc3ROb2RlJGNvbnRleHQyLmVsZW1lbnRzLmRvbVJlZmVyZW5jZSA6IGlzQ3Jvc3NPcGVuS2V5ID8gYWN0aXZlSXRlbSA6IG51bGw7XG4gICAgICAgICAgICAgICAgaWYgKGRpc3BhdGNoSXRlbSkge1xuICAgICAgICAgICAgICAgICAgc3RvcEV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoSXRlbS5kaXNwYXRjaEV2ZW50KGV2ZW50T2JqZWN0KTtcbiAgICAgICAgICAgICAgICAgIHNldFZpcnR1YWxJZCh1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoaXNNYWluS2V5ICYmIGRlZXBlc3ROb2RlLmNvbnRleHQpIHtcbiAgICAgICAgICAgICAgICBpZiAoZGVlcGVzdE5vZGUuY29udGV4dC5vcGVuICYmIGRlZXBlc3ROb2RlLnBhcmVudElkICYmIGV2ZW50LmN1cnJlbnRUYXJnZXQgIT09IGRlZXBlc3ROb2RlLmNvbnRleHQuZWxlbWVudHMuZG9tUmVmZXJlbmNlKSB7XG4gICAgICAgICAgICAgICAgICB2YXIgX2RlZXBlc3ROb2RlJGNvbnRleHQkO1xuICAgICAgICAgICAgICAgICAgc3RvcEV2ZW50KGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgIChfZGVlcGVzdE5vZGUkY29udGV4dCQgPSBkZWVwZXN0Tm9kZS5jb250ZXh0LmVsZW1lbnRzLmRvbVJlZmVyZW5jZSkgPT0gbnVsbCB8fCBfZGVlcGVzdE5vZGUkY29udGV4dCQuZGlzcGF0Y2hFdmVudChldmVudE9iamVjdCk7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb25LZXlEb3duKGV2ZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBJZiBhIGZsb2F0aW5nIGVsZW1lbnQgc2hvdWxkIG5vdCBvcGVuIG9uIGFycm93IGtleSBkb3duLCBhdm9pZFxuICAgICAgICAgIC8vIHNldHRpbmcgYGFjdGl2ZUluZGV4YCB3aGlsZSBpdCdzIGNsb3NlZC5cbiAgICAgICAgICBpZiAoIW9wZW4gJiYgIW9wZW5PbkFycm93S2V5RG93biAmJiBpc0Fycm93S2V5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChpc05hdmlnYXRpb25LZXkpIHtcbiAgICAgICAgICAgIGtleVJlZi5jdXJyZW50ID0gbmVzdGVkICYmIGlzTWFpbktleSA/IG51bGwgOiBldmVudC5rZXk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChuZXN0ZWQpIHtcbiAgICAgICAgICAgIGlmIChpc0Nyb3NzT3BlbktleSkge1xuICAgICAgICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgICAgIGluZGV4UmVmLmN1cnJlbnQgPSBnZXRNaW5JbmRleChsaXN0UmVmLCBkaXNhYmxlZEluZGljZXMpO1xuICAgICAgICAgICAgICAgIG9uTmF2aWdhdGUoaW5kZXhSZWYuY3VycmVudCk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgb25PcGVuQ2hhbmdlKHRydWUsIGV2ZW50Lm5hdGl2ZUV2ZW50LCAnbGlzdC1uYXZpZ2F0aW9uJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGlzTWFpbktleSkge1xuICAgICAgICAgICAgaWYgKHNlbGVjdGVkSW5kZXggIT0gbnVsbCkge1xuICAgICAgICAgICAgICBpbmRleFJlZi5jdXJyZW50ID0gc2VsZWN0ZWRJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0b3BFdmVudChldmVudCk7XG4gICAgICAgICAgICBpZiAoIW9wZW4gJiYgb3Blbk9uQXJyb3dLZXlEb3duKSB7XG4gICAgICAgICAgICAgIG9uT3BlbkNoYW5nZSh0cnVlLCBldmVudC5uYXRpdmVFdmVudCwgJ2xpc3QtbmF2aWdhdGlvbicpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgb25LZXlEb3duKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChvcGVuKSB7XG4gICAgICAgICAgICAgIG9uTmF2aWdhdGUoaW5kZXhSZWYuY3VycmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBvbkZvY3VzKCkge1xuICAgICAgICAgIGlmIChvcGVuICYmICF2aXJ0dWFsKSB7XG4gICAgICAgICAgICBvbk5hdmlnYXRlKG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgb25Qb2ludGVyRG93bjogY2hlY2tWaXJ0dWFsUG9pbnRlcixcbiAgICAgICAgb25Nb3VzZURvd246IGNoZWNrVmlydHVhbE1vdXNlLFxuICAgICAgICBvbkNsaWNrOiBjaGVja1ZpcnR1YWxNb3VzZVxuICAgICAgfSxcbiAgICAgIGZsb2F0aW5nOiB7XG4gICAgICAgICdhcmlhLW9yaWVudGF0aW9uJzogb3JpZW50YXRpb24gPT09ICdib3RoJyA/IHVuZGVmaW5lZCA6IG9yaWVudGF0aW9uLFxuICAgICAgICAuLi4oIWlzVHlwZWFibGVDb21ib2JveChkb21SZWZlcmVuY2UpICYmIGFyaWFBY3RpdmVEZXNjZW5kYW50UHJvcCksXG4gICAgICAgIG9uS2V5RG93bixcbiAgICAgICAgb25Qb2ludGVyTW92ZSgpIHtcbiAgICAgICAgICBpc1BvaW50ZXJNb2RhbGl0eVJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGl0ZW1cbiAgICB9O1xuICB9LCBbZG9tUmVmZXJlbmNlLCBmbG9hdGluZ1JlZiwgYWN0aXZlSWQsIHZpcnR1YWxJZCwgZGlzYWJsZWRJbmRpY2VzUmVmLCBsYXRlc3RPcGVuUmVmLCBsaXN0UmVmLCBlbmFibGVkLCBvcmllbnRhdGlvbiwgcnRsLCB2aXJ0dWFsLCBvcGVuLCBoYXNBY3RpdmVJbmRleCwgbmVzdGVkLCBzZWxlY3RlZEluZGV4LCBvcGVuT25BcnJvd0tleURvd24sIGFsbG93RXNjYXBlLCBjb2xzLCBsb29wLCBmb2N1c0l0ZW1Pbk9wZW4sIG9uTmF2aWdhdGUsIG9uT3BlbkNoYW5nZSwgaXRlbSwgdHJlZSwgdmlydHVhbEl0ZW1SZWYsIGl0ZW1TaXplcywgZGVuc2VdKTtcbn1cblxuY29uc3QgY29tcG9uZW50Um9sZVRvQXJpYVJvbGVNYXAgPSAvKiNfX1BVUkVfXyovbmV3IE1hcChbWydzZWxlY3QnLCAnbGlzdGJveCddLCBbJ2NvbWJvYm94JywgJ2xpc3Rib3gnXSwgWydsYWJlbCcsIGZhbHNlXV0pO1xuXG4vKipcbiAqIEFkZHMgYmFzZSBzY3JlZW4gcmVhZGVyIHByb3BzIHRvIHRoZSByZWZlcmVuY2UgYW5kIGZsb2F0aW5nIGVsZW1lbnRzIGZvciBhXG4gKiBnaXZlbiBmbG9hdGluZyBlbGVtZW50IGByb2xlYC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy91c2VSb2xlXG4gKi9cbmZ1bmN0aW9uIHVzZVJvbGUoY29udGV4dCwgcHJvcHMpIHtcbiAgdmFyIF9jb21wb25lbnRSb2xlVG9BcmlhUjtcbiAgaWYgKHByb3BzID09PSB2b2lkIDApIHtcbiAgICBwcm9wcyA9IHt9O1xuICB9XG4gIGNvbnN0IHtcbiAgICBvcGVuLFxuICAgIGZsb2F0aW5nSWRcbiAgfSA9IGNvbnRleHQ7XG4gIGNvbnN0IHtcbiAgICBlbmFibGVkID0gdHJ1ZSxcbiAgICByb2xlID0gJ2RpYWxvZydcbiAgfSA9IHByb3BzO1xuICBjb25zdCBhcmlhUm9sZSA9IChfY29tcG9uZW50Um9sZVRvQXJpYVIgPSBjb21wb25lbnRSb2xlVG9BcmlhUm9sZU1hcC5nZXQocm9sZSkpICE9IG51bGwgPyBfY29tcG9uZW50Um9sZVRvQXJpYVIgOiByb2xlO1xuICBjb25zdCByZWZlcmVuY2VJZCA9IHVzZUlkKCk7XG4gIGNvbnN0IHBhcmVudElkID0gdXNlRmxvYXRpbmdQYXJlbnROb2RlSWQoKTtcbiAgY29uc3QgaXNOZXN0ZWQgPSBwYXJlbnRJZCAhPSBudWxsO1xuICByZXR1cm4gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKCFlbmFibGVkKSByZXR1cm4ge307XG4gICAgY29uc3QgZmxvYXRpbmdQcm9wcyA9IHtcbiAgICAgIGlkOiBmbG9hdGluZ0lkLFxuICAgICAgLi4uKGFyaWFSb2xlICYmIHtcbiAgICAgICAgcm9sZTogYXJpYVJvbGVcbiAgICAgIH0pXG4gICAgfTtcbiAgICBpZiAoYXJpYVJvbGUgPT09ICd0b29sdGlwJyB8fCByb2xlID09PSAnbGFiZWwnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICByZWZlcmVuY2U6IHtcbiAgICAgICAgICBbXCJhcmlhLVwiICsgKHJvbGUgPT09ICdsYWJlbCcgPyAnbGFiZWxsZWRieScgOiAnZGVzY3JpYmVkYnknKV06IG9wZW4gPyBmbG9hdGluZ0lkIDogdW5kZWZpbmVkXG4gICAgICAgIH0sXG4gICAgICAgIGZsb2F0aW5nOiBmbG9hdGluZ1Byb3BzXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgcmVmZXJlbmNlOiB7XG4gICAgICAgICdhcmlhLWV4cGFuZGVkJzogb3BlbiA/ICd0cnVlJyA6ICdmYWxzZScsXG4gICAgICAgICdhcmlhLWhhc3BvcHVwJzogYXJpYVJvbGUgPT09ICdhbGVydGRpYWxvZycgPyAnZGlhbG9nJyA6IGFyaWFSb2xlLFxuICAgICAgICAnYXJpYS1jb250cm9scyc6IG9wZW4gPyBmbG9hdGluZ0lkIDogdW5kZWZpbmVkLFxuICAgICAgICAuLi4oYXJpYVJvbGUgPT09ICdsaXN0Ym94JyAmJiB7XG4gICAgICAgICAgcm9sZTogJ2NvbWJvYm94J1xuICAgICAgICB9KSxcbiAgICAgICAgLi4uKGFyaWFSb2xlID09PSAnbWVudScgJiYge1xuICAgICAgICAgIGlkOiByZWZlcmVuY2VJZFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKGFyaWFSb2xlID09PSAnbWVudScgJiYgaXNOZXN0ZWQgJiYge1xuICAgICAgICAgIHJvbGU6ICdtZW51aXRlbSdcbiAgICAgICAgfSksXG4gICAgICAgIC4uLihyb2xlID09PSAnc2VsZWN0JyAmJiB7XG4gICAgICAgICAgJ2FyaWEtYXV0b2NvbXBsZXRlJzogJ25vbmUnXG4gICAgICAgIH0pLFxuICAgICAgICAuLi4ocm9sZSA9PT0gJ2NvbWJvYm94JyAmJiB7XG4gICAgICAgICAgJ2FyaWEtYXV0b2NvbXBsZXRlJzogJ2xpc3QnXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgZmxvYXRpbmc6IHtcbiAgICAgICAgLi4uZmxvYXRpbmdQcm9wcyxcbiAgICAgICAgLi4uKGFyaWFSb2xlID09PSAnbWVudScgJiYge1xuICAgICAgICAgICdhcmlhLWxhYmVsbGVkYnknOiByZWZlcmVuY2VJZFxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIGl0ZW0oX3JlZikge1xuICAgICAgICBsZXQge1xuICAgICAgICAgIGFjdGl2ZSxcbiAgICAgICAgICBzZWxlY3RlZFxuICAgICAgICB9ID0gX3JlZjtcbiAgICAgICAgY29uc3QgY29tbW9uUHJvcHMgPSB7XG4gICAgICAgICAgcm9sZTogJ29wdGlvbicsXG4gICAgICAgICAgLi4uKGFjdGl2ZSAmJiB7XG4gICAgICAgICAgICBpZDogZmxvYXRpbmdJZCArIFwiLW9wdGlvblwiXG4gICAgICAgICAgfSlcbiAgICAgICAgfTtcblxuICAgICAgICAvLyBGb3IgYG1lbnVgLCB3ZSBhcmUgdW5hYmxlIHRvIHRlbGwgaWYgdGhlIGl0ZW0gaXMgYSBgbWVudWl0ZW1yYWRpb2BcbiAgICAgICAgLy8gb3IgYG1lbnVpdGVtY2hlY2tib3hgLiBGb3IgYmFja3dhcmRzLWNvbXBhdGliaWxpdHkgcmVhc29ucywgYWxzb1xuICAgICAgICAvLyBhdm9pZCBkZWZhdWx0aW5nIHRvIGBtZW51aXRlbWAgYXMgaXQgbWF5IG92ZXJ3cml0ZSBjdXN0b20gcm9sZSBwcm9wcy5cbiAgICAgICAgc3dpdGNoIChyb2xlKSB7XG4gICAgICAgICAgY2FzZSAnc2VsZWN0JzpcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLmNvbW1vblByb3BzLFxuICAgICAgICAgICAgICAnYXJpYS1zZWxlY3RlZCc6IGFjdGl2ZSAmJiBzZWxlY3RlZFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICBjYXNlICdjb21ib2JveCc6XG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uY29tbW9uUHJvcHMsXG4gICAgICAgICAgICAgICAgLi4uKGFjdGl2ZSAmJiB7XG4gICAgICAgICAgICAgICAgICAnYXJpYS1zZWxlY3RlZCc6IHRydWVcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7fTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZW5hYmxlZCwgcm9sZSwgYXJpYVJvbGUsIG9wZW4sIGZsb2F0aW5nSWQsIHJlZmVyZW5jZUlkLCBpc05lc3RlZF0pO1xufVxuXG4vLyBDb252ZXJ0cyBhIEpTIHN0eWxlIGtleSBsaWtlIGBiYWNrZ3JvdW5kQ29sb3JgIHRvIGEgQ1NTIHRyYW5zaXRpb24tcHJvcGVydHlcbi8vIGxpa2UgYGJhY2tncm91bmQtY29sb3JgLlxuY29uc3QgY2FtZWxDYXNlVG9LZWJhYkNhc2UgPSBzdHIgPT4gc3RyLnJlcGxhY2UoL1tBLVpdKyg/IVthLXpdKXxbQS1aXS9nLCAoJCwgb2ZzKSA9PiAob2ZzID8gJy0nIDogJycpICsgJC50b0xvd2VyQ2FzZSgpKTtcbmZ1bmN0aW9uIGV4ZWNXaXRoQXJnc09yUmV0dXJuKHZhbHVlT3JGbiwgYXJncykge1xuICByZXR1cm4gdHlwZW9mIHZhbHVlT3JGbiA9PT0gJ2Z1bmN0aW9uJyA/IHZhbHVlT3JGbihhcmdzKSA6IHZhbHVlT3JGbjtcbn1cbmZ1bmN0aW9uIHVzZURlbGF5VW5tb3VudChvcGVuLCBkdXJhdGlvbk1zKSB7XG4gIGNvbnN0IFtpc01vdW50ZWQsIHNldElzTW91bnRlZF0gPSBSZWFjdC51c2VTdGF0ZShvcGVuKTtcbiAgaWYgKG9wZW4gJiYgIWlzTW91bnRlZCkge1xuICAgIHNldElzTW91bnRlZCh0cnVlKTtcbiAgfVxuICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghb3BlbiAmJiBpc01vdW50ZWQpIHtcbiAgICAgIGNvbnN0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHNldElzTW91bnRlZChmYWxzZSksIGR1cmF0aW9uTXMpO1xuICAgICAgcmV0dXJuICgpID0+IGNsZWFyVGltZW91dCh0aW1lb3V0KTtcbiAgICB9XG4gIH0sIFtvcGVuLCBpc01vdW50ZWQsIGR1cmF0aW9uTXNdKTtcbiAgcmV0dXJuIGlzTW91bnRlZDtcbn1cbi8qKlxuICogUHJvdmlkZXMgYSBzdGF0dXMgc3RyaW5nIHRvIGFwcGx5IENTUyB0cmFuc2l0aW9ucyB0byBhIGZsb2F0aW5nIGVsZW1lbnQsXG4gKiBjb3JyZWN0bHkgaGFuZGxpbmcgcGxhY2VtZW50LWF3YXJlIHRyYW5zaXRpb25zLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZVRyYW5zaXRpb24jdXNldHJhbnNpdGlvbnN0YXR1c1xuICovXG5mdW5jdGlvbiB1c2VUcmFuc2l0aW9uU3RhdHVzKGNvbnRleHQsIHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgb3BlbixcbiAgICBlbGVtZW50czoge1xuICAgICAgZmxvYXRpbmdcbiAgICB9XG4gIH0gPSBjb250ZXh0O1xuICBjb25zdCB7XG4gICAgZHVyYXRpb24gPSAyNTBcbiAgfSA9IHByb3BzO1xuICBjb25zdCBpc051bWJlckR1cmF0aW9uID0gdHlwZW9mIGR1cmF0aW9uID09PSAnbnVtYmVyJztcbiAgY29uc3QgY2xvc2VEdXJhdGlvbiA9IChpc051bWJlckR1cmF0aW9uID8gZHVyYXRpb24gOiBkdXJhdGlvbi5jbG9zZSkgfHwgMDtcbiAgY29uc3QgW3N0YXR1cywgc2V0U3RhdHVzXSA9IFJlYWN0LnVzZVN0YXRlKCd1bm1vdW50ZWQnKTtcbiAgY29uc3QgaXNNb3VudGVkID0gdXNlRGVsYXlVbm1vdW50KG9wZW4sIGNsb3NlRHVyYXRpb24pO1xuICBpZiAoIWlzTW91bnRlZCAmJiBzdGF0dXMgPT09ICdjbG9zZScpIHtcbiAgICBzZXRTdGF0dXMoJ3VubW91bnRlZCcpO1xuICB9XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAoIWZsb2F0aW5nKSByZXR1cm47XG4gICAgaWYgKG9wZW4pIHtcbiAgICAgIHNldFN0YXR1cygnaW5pdGlhbCcpO1xuICAgICAgY29uc3QgZnJhbWUgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICBzZXRTdGF0dXMoJ29wZW4nKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgY2FuY2VsQW5pbWF0aW9uRnJhbWUoZnJhbWUpO1xuICAgICAgfTtcbiAgICB9XG4gICAgc2V0U3RhdHVzKCdjbG9zZScpO1xuICB9LCBbb3BlbiwgZmxvYXRpbmddKTtcbiAgcmV0dXJuIHtcbiAgICBpc01vdW50ZWQsXG4gICAgc3RhdHVzXG4gIH07XG59XG4vKipcbiAqIFByb3ZpZGVzIHN0eWxlcyB0byBhcHBseSBDU1MgdHJhbnNpdGlvbnMgdG8gYSBmbG9hdGluZyBlbGVtZW50LCBjb3JyZWN0bHlcbiAqIGhhbmRsaW5nIHBsYWNlbWVudC1hd2FyZSB0cmFuc2l0aW9ucy4gV3JhcHBlciBhcm91bmQgYHVzZVRyYW5zaXRpb25TdGF0dXNgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZVRyYW5zaXRpb24jdXNldHJhbnNpdGlvbnN0eWxlc1xuICovXG5mdW5jdGlvbiB1c2VUcmFuc2l0aW9uU3R5bGVzKGNvbnRleHQsIHByb3BzKSB7XG4gIGlmIChwcm9wcyA9PT0gdm9pZCAwKSB7XG4gICAgcHJvcHMgPSB7fTtcbiAgfVxuICBjb25zdCB7XG4gICAgaW5pdGlhbDogdW5zdGFibGVfaW5pdGlhbCA9IHtcbiAgICAgIG9wYWNpdHk6IDBcbiAgICB9LFxuICAgIG9wZW46IHVuc3RhYmxlX29wZW4sXG4gICAgY2xvc2U6IHVuc3RhYmxlX2Nsb3NlLFxuICAgIGNvbW1vbjogdW5zdGFibGVfY29tbW9uLFxuICAgIGR1cmF0aW9uID0gMjUwXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgcGxhY2VtZW50ID0gY29udGV4dC5wbGFjZW1lbnQ7XG4gIGNvbnN0IHNpZGUgPSBwbGFjZW1lbnQuc3BsaXQoJy0nKVswXTtcbiAgY29uc3QgZm5BcmdzID0gUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgIHNpZGUsXG4gICAgcGxhY2VtZW50XG4gIH0pLCBbc2lkZSwgcGxhY2VtZW50XSk7XG4gIGNvbnN0IGlzTnVtYmVyRHVyYXRpb24gPSB0eXBlb2YgZHVyYXRpb24gPT09ICdudW1iZXInO1xuICBjb25zdCBvcGVuRHVyYXRpb24gPSAoaXNOdW1iZXJEdXJhdGlvbiA/IGR1cmF0aW9uIDogZHVyYXRpb24ub3BlbikgfHwgMDtcbiAgY29uc3QgY2xvc2VEdXJhdGlvbiA9IChpc051bWJlckR1cmF0aW9uID8gZHVyYXRpb24gOiBkdXJhdGlvbi5jbG9zZSkgfHwgMDtcbiAgY29uc3QgW3N0eWxlcywgc2V0U3R5bGVzXSA9IFJlYWN0LnVzZVN0YXRlKCgpID0+ICh7XG4gICAgLi4uZXhlY1dpdGhBcmdzT3JSZXR1cm4odW5zdGFibGVfY29tbW9uLCBmbkFyZ3MpLFxuICAgIC4uLmV4ZWNXaXRoQXJnc09yUmV0dXJuKHVuc3RhYmxlX2luaXRpYWwsIGZuQXJncylcbiAgfSkpO1xuICBjb25zdCB7XG4gICAgaXNNb3VudGVkLFxuICAgIHN0YXR1c1xuICB9ID0gdXNlVHJhbnNpdGlvblN0YXR1cyhjb250ZXh0LCB7XG4gICAgZHVyYXRpb25cbiAgfSk7XG4gIGNvbnN0IGluaXRpYWxSZWYgPSB1c2VMYXRlc3RSZWYodW5zdGFibGVfaW5pdGlhbCk7XG4gIGNvbnN0IG9wZW5SZWYgPSB1c2VMYXRlc3RSZWYodW5zdGFibGVfb3Blbik7XG4gIGNvbnN0IGNsb3NlUmVmID0gdXNlTGF0ZXN0UmVmKHVuc3RhYmxlX2Nsb3NlKTtcbiAgY29uc3QgY29tbW9uUmVmID0gdXNlTGF0ZXN0UmVmKHVuc3RhYmxlX2NvbW1vbik7XG4gIGluZGV4KCgpID0+IHtcbiAgICBjb25zdCBpbml0aWFsU3R5bGVzID0gZXhlY1dpdGhBcmdzT3JSZXR1cm4oaW5pdGlhbFJlZi5jdXJyZW50LCBmbkFyZ3MpO1xuICAgIGNvbnN0IGNsb3NlU3R5bGVzID0gZXhlY1dpdGhBcmdzT3JSZXR1cm4oY2xvc2VSZWYuY3VycmVudCwgZm5BcmdzKTtcbiAgICBjb25zdCBjb21tb25TdHlsZXMgPSBleGVjV2l0aEFyZ3NPclJldHVybihjb21tb25SZWYuY3VycmVudCwgZm5BcmdzKTtcbiAgICBjb25zdCBvcGVuU3R5bGVzID0gZXhlY1dpdGhBcmdzT3JSZXR1cm4ob3BlblJlZi5jdXJyZW50LCBmbkFyZ3MpIHx8IE9iamVjdC5rZXlzKGluaXRpYWxTdHlsZXMpLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgIGFjY1trZXldID0gJyc7XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sIHt9KTtcbiAgICBpZiAoc3RhdHVzID09PSAnaW5pdGlhbCcpIHtcbiAgICAgIHNldFN0eWxlcyhzdHlsZXMgPT4gKHtcbiAgICAgICAgdHJhbnNpdGlvblByb3BlcnR5OiBzdHlsZXMudHJhbnNpdGlvblByb3BlcnR5LFxuICAgICAgICAuLi5jb21tb25TdHlsZXMsXG4gICAgICAgIC4uLmluaXRpYWxTdHlsZXNcbiAgICAgIH0pKTtcbiAgICB9XG4gICAgaWYgKHN0YXR1cyA9PT0gJ29wZW4nKSB7XG4gICAgICBzZXRTdHlsZXMoe1xuICAgICAgICB0cmFuc2l0aW9uUHJvcGVydHk6IE9iamVjdC5rZXlzKG9wZW5TdHlsZXMpLm1hcChjYW1lbENhc2VUb0tlYmFiQ2FzZSkuam9pbignLCcpLFxuICAgICAgICB0cmFuc2l0aW9uRHVyYXRpb246IG9wZW5EdXJhdGlvbiArIFwibXNcIixcbiAgICAgICAgLi4uY29tbW9uU3R5bGVzLFxuICAgICAgICAuLi5vcGVuU3R5bGVzXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHN0YXR1cyA9PT0gJ2Nsb3NlJykge1xuICAgICAgY29uc3Qgc3R5bGVzID0gY2xvc2VTdHlsZXMgfHwgaW5pdGlhbFN0eWxlcztcbiAgICAgIHNldFN0eWxlcyh7XG4gICAgICAgIHRyYW5zaXRpb25Qcm9wZXJ0eTogT2JqZWN0LmtleXMoc3R5bGVzKS5tYXAoY2FtZWxDYXNlVG9LZWJhYkNhc2UpLmpvaW4oJywnKSxcbiAgICAgICAgdHJhbnNpdGlvbkR1cmF0aW9uOiBjbG9zZUR1cmF0aW9uICsgXCJtc1wiLFxuICAgICAgICAuLi5jb21tb25TdHlsZXMsXG4gICAgICAgIC4uLnN0eWxlc1xuICAgICAgfSk7XG4gICAgfVxuICB9LCBbY2xvc2VEdXJhdGlvbiwgY2xvc2VSZWYsIGluaXRpYWxSZWYsIG9wZW5SZWYsIGNvbW1vblJlZiwgb3BlbkR1cmF0aW9uLCBzdGF0dXMsIGZuQXJnc10pO1xuICByZXR1cm4ge1xuICAgIGlzTW91bnRlZCxcbiAgICBzdHlsZXNcbiAgfTtcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBhIG1hdGNoaW5nIGNhbGxiYWNrIHRoYXQgY2FuIGJlIHVzZWQgdG8gZm9jdXMgYW4gaXRlbSBhcyB0aGUgdXNlclxuICogdHlwZXMsIG9mdGVuIHVzZWQgaW4gdGFuZGVtIHdpdGggYHVzZUxpc3ROYXZpZ2F0aW9uKClgLlxuICogQHNlZSBodHRwczovL2Zsb2F0aW5nLXVpLmNvbS9kb2NzL3VzZVR5cGVhaGVhZFxuICovXG5mdW5jdGlvbiB1c2VUeXBlYWhlYWQoY29udGV4dCwgcHJvcHMpIHtcbiAgdmFyIF9yZWY7XG4gIGNvbnN0IHtcbiAgICBvcGVuLFxuICAgIGRhdGFSZWZcbiAgfSA9IGNvbnRleHQ7XG4gIGNvbnN0IHtcbiAgICBsaXN0UmVmLFxuICAgIGFjdGl2ZUluZGV4LFxuICAgIG9uTWF0Y2g6IHVuc3RhYmxlX29uTWF0Y2gsXG4gICAgb25UeXBpbmdDaGFuZ2U6IHVuc3RhYmxlX29uVHlwaW5nQ2hhbmdlLFxuICAgIGVuYWJsZWQgPSB0cnVlLFxuICAgIGZpbmRNYXRjaCA9IG51bGwsXG4gICAgcmVzZXRNcyA9IDc1MCxcbiAgICBpZ25vcmVLZXlzID0gW10sXG4gICAgc2VsZWN0ZWRJbmRleCA9IG51bGxcbiAgfSA9IHByb3BzO1xuICBjb25zdCB0aW1lb3V0SWRSZWYgPSBSZWFjdC51c2VSZWYoKTtcbiAgY29uc3Qgc3RyaW5nUmVmID0gUmVhY3QudXNlUmVmKCcnKTtcbiAgY29uc3QgcHJldkluZGV4UmVmID0gUmVhY3QudXNlUmVmKChfcmVmID0gc2VsZWN0ZWRJbmRleCAhPSBudWxsID8gc2VsZWN0ZWRJbmRleCA6IGFjdGl2ZUluZGV4KSAhPSBudWxsID8gX3JlZiA6IC0xKTtcbiAgY29uc3QgbWF0Y2hJbmRleFJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgY29uc3Qgb25NYXRjaCA9IHVzZUVmZmVjdEV2ZW50KHVuc3RhYmxlX29uTWF0Y2gpO1xuICBjb25zdCBvblR5cGluZ0NoYW5nZSA9IHVzZUVmZmVjdEV2ZW50KHVuc3RhYmxlX29uVHlwaW5nQ2hhbmdlKTtcbiAgY29uc3QgZmluZE1hdGNoUmVmID0gdXNlTGF0ZXN0UmVmKGZpbmRNYXRjaCk7XG4gIGNvbnN0IGlnbm9yZUtleXNSZWYgPSB1c2VMYXRlc3RSZWYoaWdub3JlS2V5cyk7XG4gIGluZGV4KCgpID0+IHtcbiAgICBpZiAob3Blbikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZFJlZi5jdXJyZW50KTtcbiAgICAgIG1hdGNoSW5kZXhSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICBzdHJpbmdSZWYuY3VycmVudCA9ICcnO1xuICAgIH1cbiAgfSwgW29wZW5dKTtcbiAgaW5kZXgoKCkgPT4ge1xuICAgIC8vIFN5bmMgYXJyb3cga2V5IG5hdmlnYXRpb24gYnV0IG5vdCB0eXBlYWhlYWQgbmF2aWdhdGlvbi5cbiAgICBpZiAob3BlbiAmJiBzdHJpbmdSZWYuY3VycmVudCA9PT0gJycpIHtcbiAgICAgIHZhciBfcmVmMjtcbiAgICAgIHByZXZJbmRleFJlZi5jdXJyZW50ID0gKF9yZWYyID0gc2VsZWN0ZWRJbmRleCAhPSBudWxsID8gc2VsZWN0ZWRJbmRleCA6IGFjdGl2ZUluZGV4KSAhPSBudWxsID8gX3JlZjIgOiAtMTtcbiAgICB9XG4gIH0sIFtvcGVuLCBzZWxlY3RlZEluZGV4LCBhY3RpdmVJbmRleF0pO1xuICByZXR1cm4gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKCFlbmFibGVkKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGZ1bmN0aW9uIHNldFR5cGluZ0NoYW5nZSh2YWx1ZSkge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGlmICghZGF0YVJlZi5jdXJyZW50LnR5cGluZykge1xuICAgICAgICAgIGRhdGFSZWYuY3VycmVudC50eXBpbmcgPSB2YWx1ZTtcbiAgICAgICAgICBvblR5cGluZ0NoYW5nZSh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChkYXRhUmVmLmN1cnJlbnQudHlwaW5nKSB7XG4gICAgICAgICAgZGF0YVJlZi5jdXJyZW50LnR5cGluZyA9IHZhbHVlO1xuICAgICAgICAgIG9uVHlwaW5nQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBnZXRNYXRjaGluZ0luZGV4KGxpc3QsIG9yZGVyZWRMaXN0LCBzdHJpbmcpIHtcbiAgICAgIGNvbnN0IHN0ciA9IGZpbmRNYXRjaFJlZi5jdXJyZW50ID8gZmluZE1hdGNoUmVmLmN1cnJlbnQob3JkZXJlZExpc3QsIHN0cmluZykgOiBvcmRlcmVkTGlzdC5maW5kKHRleHQgPT4gKHRleHQgPT0gbnVsbCA/IHZvaWQgMCA6IHRleHQudG9Mb2NhbGVMb3dlckNhc2UoKS5pbmRleE9mKHN0cmluZy50b0xvY2FsZUxvd2VyQ2FzZSgpKSkgPT09IDApO1xuICAgICAgcmV0dXJuIHN0ciA/IGxpc3QuaW5kZXhPZihzdHIpIDogLTE7XG4gICAgfVxuICAgIGZ1bmN0aW9uIG9uS2V5RG93bihldmVudCkge1xuICAgICAgY29uc3QgbGlzdENvbnRlbnQgPSBsaXN0UmVmLmN1cnJlbnQ7XG4gICAgICBpZiAoc3RyaW5nUmVmLmN1cnJlbnQubGVuZ3RoID4gMCAmJiBzdHJpbmdSZWYuY3VycmVudFswXSAhPT0gJyAnKSB7XG4gICAgICAgIGlmIChnZXRNYXRjaGluZ0luZGV4KGxpc3RDb250ZW50LCBsaXN0Q29udGVudCwgc3RyaW5nUmVmLmN1cnJlbnQpID09PSAtMSkge1xuICAgICAgICAgIHNldFR5cGluZ0NoYW5nZShmYWxzZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAobGlzdENvbnRlbnQgPT0gbnVsbCB8fCBpZ25vcmVLZXlzUmVmLmN1cnJlbnQuaW5jbHVkZXMoZXZlbnQua2V5KSB8fFxuICAgICAgLy8gQ2hhcmFjdGVyIGtleS5cbiAgICAgIGV2ZW50LmtleS5sZW5ndGggIT09IDEgfHxcbiAgICAgIC8vIE1vZGlmaWVyIGtleS5cbiAgICAgIGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSB8fCBldmVudC5hbHRLZXkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgaWYgKG9wZW4gJiYgZXZlbnQua2V5ICE9PSAnICcpIHtcbiAgICAgICAgc3RvcEV2ZW50KGV2ZW50KTtcbiAgICAgICAgc2V0VHlwaW5nQ2hhbmdlKHRydWUpO1xuICAgICAgfVxuXG4gICAgICAvLyBCYWlsIG91dCBpZiB0aGUgbGlzdCBjb250YWlucyBhIHdvcmQgbGlrZSBcImxsYW1hXCIgb3IgXCJhYXJvblwiLiBUT0RPOlxuICAgICAgLy8gYWxsb3cgaXQgaW4gdGhpcyBjYXNlLCB0b28uXG4gICAgICBjb25zdCBhbGxvd1JhcGlkU3VjY2Vzc2lvbk9mRmlyc3RMZXR0ZXIgPSBsaXN0Q29udGVudC5ldmVyeSh0ZXh0ID0+IHtcbiAgICAgICAgdmFyIF90ZXh0JCwgX3RleHQkMjtcbiAgICAgICAgcmV0dXJuIHRleHQgPyAoKF90ZXh0JCA9IHRleHRbMF0pID09IG51bGwgPyB2b2lkIDAgOiBfdGV4dCQudG9Mb2NhbGVMb3dlckNhc2UoKSkgIT09ICgoX3RleHQkMiA9IHRleHRbMV0pID09IG51bGwgPyB2b2lkIDAgOiBfdGV4dCQyLnRvTG9jYWxlTG93ZXJDYXNlKCkpIDogdHJ1ZTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBBbGxvd3MgdGhlIHVzZXIgdG8gY3ljbGUgdGhyb3VnaCBpdGVtcyB0aGF0IHN0YXJ0IHdpdGggdGhlIHNhbWUgbGV0dGVyXG4gICAgICAvLyBpbiByYXBpZCBzdWNjZXNzaW9uLlxuICAgICAgaWYgKGFsbG93UmFwaWRTdWNjZXNzaW9uT2ZGaXJzdExldHRlciAmJiBzdHJpbmdSZWYuY3VycmVudCA9PT0gZXZlbnQua2V5KSB7XG4gICAgICAgIHN0cmluZ1JlZi5jdXJyZW50ID0gJyc7XG4gICAgICAgIHByZXZJbmRleFJlZi5jdXJyZW50ID0gbWF0Y2hJbmRleFJlZi5jdXJyZW50O1xuICAgICAgfVxuICAgICAgc3RyaW5nUmVmLmN1cnJlbnQgKz0gZXZlbnQua2V5O1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZFJlZi5jdXJyZW50KTtcbiAgICAgIHRpbWVvdXRJZFJlZi5jdXJyZW50ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHN0cmluZ1JlZi5jdXJyZW50ID0gJyc7XG4gICAgICAgIHByZXZJbmRleFJlZi5jdXJyZW50ID0gbWF0Y2hJbmRleFJlZi5jdXJyZW50O1xuICAgICAgICBzZXRUeXBpbmdDaGFuZ2UoZmFsc2UpO1xuICAgICAgfSwgcmVzZXRNcyk7XG4gICAgICBjb25zdCBwcmV2SW5kZXggPSBwcmV2SW5kZXhSZWYuY3VycmVudDtcbiAgICAgIGNvbnN0IGluZGV4ID0gZ2V0TWF0Y2hpbmdJbmRleChsaXN0Q29udGVudCwgWy4uLmxpc3RDb250ZW50LnNsaWNlKChwcmV2SW5kZXggfHwgMCkgKyAxKSwgLi4ubGlzdENvbnRlbnQuc2xpY2UoMCwgKHByZXZJbmRleCB8fCAwKSArIDEpXSwgc3RyaW5nUmVmLmN1cnJlbnQpO1xuICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICBvbk1hdGNoKGluZGV4KTtcbiAgICAgICAgbWF0Y2hJbmRleFJlZi5jdXJyZW50ID0gaW5kZXg7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50LmtleSAhPT0gJyAnKSB7XG4gICAgICAgIHN0cmluZ1JlZi5jdXJyZW50ID0gJyc7XG4gICAgICAgIHNldFR5cGluZ0NoYW5nZShmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICByZWZlcmVuY2U6IHtcbiAgICAgICAgb25LZXlEb3duXG4gICAgICB9LFxuICAgICAgZmxvYXRpbmc6IHtcbiAgICAgICAgb25LZXlEb3duLFxuICAgICAgICBvbktleVVwKGV2ZW50KSB7XG4gICAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnKSB7XG4gICAgICAgICAgICBzZXRUeXBpbmdDaGFuZ2UoZmFsc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH0sIFtlbmFibGVkLCBvcGVuLCBkYXRhUmVmLCBsaXN0UmVmLCByZXNldE1zLCBpZ25vcmVLZXlzUmVmLCBmaW5kTWF0Y2hSZWYsIG9uTWF0Y2gsIG9uVHlwaW5nQ2hhbmdlXSk7XG59XG5cbmZ1bmN0aW9uIGdldEFyZ3NXaXRoQ3VzdG9tRmxvYXRpbmdIZWlnaHQoc3RhdGUsIGhlaWdodCkge1xuICByZXR1cm4ge1xuICAgIC4uLnN0YXRlLFxuICAgIHJlY3RzOiB7XG4gICAgICAuLi5zdGF0ZS5yZWN0cyxcbiAgICAgIGZsb2F0aW5nOiB7XG4gICAgICAgIC4uLnN0YXRlLnJlY3RzLmZsb2F0aW5nLFxuICAgICAgICBoZWlnaHRcbiAgICAgIH1cbiAgICB9XG4gIH07XG59XG4vKipcbiAqIFBvc2l0aW9ucyB0aGUgZmxvYXRpbmcgZWxlbWVudCBzdWNoIHRoYXQgYW4gaW5uZXIgZWxlbWVudCBpbnNpZGVcbiAqIG9mIGl0IGlzIGFuY2hvcmVkIHRvIHRoZSByZWZlcmVuY2UgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9pbm5lclxuICovXG5jb25zdCBpbm5lciA9IHByb3BzID0+ICh7XG4gIG5hbWU6ICdpbm5lcicsXG4gIG9wdGlvbnM6IHByb3BzLFxuICBhc3luYyBmbihzdGF0ZSkge1xuICAgIGNvbnN0IHtcbiAgICAgIGxpc3RSZWYsXG4gICAgICBvdmVyZmxvd1JlZixcbiAgICAgIG9uRmFsbGJhY2tDaGFuZ2UsXG4gICAgICBvZmZzZXQ6IGlubmVyT2Zmc2V0ID0gMCxcbiAgICAgIGluZGV4ID0gMCxcbiAgICAgIG1pbkl0ZW1zVmlzaWJsZSA9IDQsXG4gICAgICByZWZlcmVuY2VPdmVyZmxvd1RocmVzaG9sZCA9IDAsXG4gICAgICBzY3JvbGxSZWYsXG4gICAgICAuLi5kZXRlY3RPdmVyZmxvd09wdGlvbnNcbiAgICB9ID0gcHJvcHM7XG4gICAgY29uc3Qge1xuICAgICAgcmVjdHMsXG4gICAgICBlbGVtZW50czoge1xuICAgICAgICBmbG9hdGluZ1xuICAgICAgfVxuICAgIH0gPSBzdGF0ZTtcbiAgICBjb25zdCBpdGVtID0gbGlzdFJlZi5jdXJyZW50W2luZGV4XTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiKSB7XG4gICAgICBpZiAoIXN0YXRlLnBsYWNlbWVudC5zdGFydHNXaXRoKCdib3R0b20nKSkge1xuICAgICAgICB3YXJuKCdgcGxhY2VtZW50YCBzaWRlIG11c3QgYmUgXCJib3R0b21cIiB3aGVuIHVzaW5nIHRoZSBgaW5uZXJgJywgJ21pZGRsZXdhcmUuJyk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICghaXRlbSkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCBuZXh0QXJncyA9IHtcbiAgICAgIC4uLnN0YXRlLFxuICAgICAgLi4uKGF3YWl0IG9mZnNldCgtaXRlbS5vZmZzZXRUb3AgLSBmbG9hdGluZy5jbGllbnRUb3AgLSByZWN0cy5yZWZlcmVuY2UuaGVpZ2h0IC8gMiAtIGl0ZW0ub2Zmc2V0SGVpZ2h0IC8gMiAtIGlubmVyT2Zmc2V0KS5mbihzdGF0ZSkpXG4gICAgfTtcbiAgICBjb25zdCBlbCA9IChzY3JvbGxSZWYgPT0gbnVsbCA/IHZvaWQgMCA6IHNjcm9sbFJlZi5jdXJyZW50KSB8fCBmbG9hdGluZztcbiAgICBjb25zdCBvdmVyZmxvdyA9IGF3YWl0IGRldGVjdE92ZXJmbG93KGdldEFyZ3NXaXRoQ3VzdG9tRmxvYXRpbmdIZWlnaHQobmV4dEFyZ3MsIGVsLnNjcm9sbEhlaWdodCksIGRldGVjdE92ZXJmbG93T3B0aW9ucyk7XG4gICAgY29uc3QgcmVmT3ZlcmZsb3cgPSBhd2FpdCBkZXRlY3RPdmVyZmxvdyhuZXh0QXJncywge1xuICAgICAgLi4uZGV0ZWN0T3ZlcmZsb3dPcHRpb25zLFxuICAgICAgZWxlbWVudENvbnRleHQ6ICdyZWZlcmVuY2UnXG4gICAgfSk7XG4gICAgY29uc3QgZGlmZlkgPSBNYXRoLm1heCgwLCBvdmVyZmxvdy50b3ApO1xuICAgIGNvbnN0IG5leHRZID0gbmV4dEFyZ3MueSArIGRpZmZZO1xuICAgIGNvbnN0IG1heEhlaWdodCA9IE1hdGgubWF4KDAsIGVsLnNjcm9sbEhlaWdodCAtIGRpZmZZIC0gTWF0aC5tYXgoMCwgb3ZlcmZsb3cuYm90dG9tKSk7XG4gICAgZWwuc3R5bGUubWF4SGVpZ2h0ID0gbWF4SGVpZ2h0ICsgXCJweFwiO1xuICAgIGVsLnNjcm9sbFRvcCA9IGRpZmZZO1xuXG4gICAgLy8gVGhlcmUgaXMgbm90IGVub3VnaCBzcGFjZSwgZmFsbGJhY2sgdG8gc3RhbmRhcmQgYW5jaG9yZWQgcG9zaXRpb25pbmdcbiAgICBpZiAob25GYWxsYmFja0NoYW5nZSkge1xuICAgICAgaWYgKGVsLm9mZnNldEhlaWdodCA8IGl0ZW0ub2Zmc2V0SGVpZ2h0ICogTWF0aC5taW4obWluSXRlbXNWaXNpYmxlLCBsaXN0UmVmLmN1cnJlbnQubGVuZ3RoIC0gMSkgLSAxIHx8IHJlZk92ZXJmbG93LnRvcCA+PSAtcmVmZXJlbmNlT3ZlcmZsb3dUaHJlc2hvbGQgfHwgcmVmT3ZlcmZsb3cuYm90dG9tID49IC1yZWZlcmVuY2VPdmVyZmxvd1RocmVzaG9sZCkge1xuICAgICAgICBmbHVzaFN5bmMoKCkgPT4gb25GYWxsYmFja0NoYW5nZSh0cnVlKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmbHVzaFN5bmMoKCkgPT4gb25GYWxsYmFja0NoYW5nZShmYWxzZSkpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAob3ZlcmZsb3dSZWYpIHtcbiAgICAgIG92ZXJmbG93UmVmLmN1cnJlbnQgPSBhd2FpdCBkZXRlY3RPdmVyZmxvdyhnZXRBcmdzV2l0aEN1c3RvbUZsb2F0aW5nSGVpZ2h0KHtcbiAgICAgICAgLi4ubmV4dEFyZ3MsXG4gICAgICAgIHk6IG5leHRZXG4gICAgICB9LCBlbC5vZmZzZXRIZWlnaHQpLCBkZXRlY3RPdmVyZmxvd09wdGlvbnMpO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgeTogbmV4dFlcbiAgICB9O1xuICB9XG59KTtcbi8qKlxuICogQ2hhbmdlcyB0aGUgYGlubmVyYCBtaWRkbGV3YXJlJ3MgYG9mZnNldGAgdXBvbiBhIGB3aGVlbGAgZXZlbnQgdG9cbiAqIGV4cGFuZCB0aGUgZmxvYXRpbmcgZWxlbWVudCdzIGhlaWdodCwgcmV2ZWFsaW5nIG1vcmUgbGlzdCBpdGVtcy5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy9pbm5lclxuICovXG5mdW5jdGlvbiB1c2VJbm5lck9mZnNldChjb250ZXh0LCBwcm9wcykge1xuICBjb25zdCB7XG4gICAgb3BlbixcbiAgICBlbGVtZW50c1xuICB9ID0gY29udGV4dDtcbiAgY29uc3Qge1xuICAgIGVuYWJsZWQgPSB0cnVlLFxuICAgIG92ZXJmbG93UmVmLFxuICAgIHNjcm9sbFJlZixcbiAgICBvbkNoYW5nZTogdW5zdGFibGVfb25DaGFuZ2VcbiAgfSA9IHByb3BzO1xuICBjb25zdCBvbkNoYW5nZSA9IHVzZUVmZmVjdEV2ZW50KHVuc3RhYmxlX29uQ2hhbmdlKTtcbiAgY29uc3QgY29udHJvbGxlZFNjcm9sbGluZ1JlZiA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IHByZXZTY3JvbGxUb3BSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gIGNvbnN0IGluaXRpYWxPdmVyZmxvd1JlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWVuYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZnVuY3Rpb24gb25XaGVlbChlKSB7XG4gICAgICBpZiAoZS5jdHJsS2V5IHx8ICFlbCB8fCBvdmVyZmxvd1JlZi5jdXJyZW50ID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgZFkgPSBlLmRlbHRhWTtcbiAgICAgIGNvbnN0IGlzQXRUb3AgPSBvdmVyZmxvd1JlZi5jdXJyZW50LnRvcCA+PSAtMC41O1xuICAgICAgY29uc3QgaXNBdEJvdHRvbSA9IG92ZXJmbG93UmVmLmN1cnJlbnQuYm90dG9tID49IC0wLjU7XG4gICAgICBjb25zdCByZW1haW5pbmdTY3JvbGwgPSBlbC5zY3JvbGxIZWlnaHQgLSBlbC5jbGllbnRIZWlnaHQ7XG4gICAgICBjb25zdCBzaWduID0gZFkgPCAwID8gLTEgOiAxO1xuICAgICAgY29uc3QgbWV0aG9kID0gZFkgPCAwID8gJ21heCcgOiAnbWluJztcbiAgICAgIGlmIChlbC5zY3JvbGxIZWlnaHQgPD0gZWwuY2xpZW50SGVpZ2h0KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmICghaXNBdFRvcCAmJiBkWSA+IDAgfHwgIWlzQXRCb3R0b20gJiYgZFkgPCAwKSB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZmx1c2hTeW5jKCgpID0+IHtcbiAgICAgICAgICBvbkNoYW5nZShkID0+IGQgKyBNYXRoW21ldGhvZF0oZFksIHJlbWFpbmluZ1Njcm9sbCAqIHNpZ24pKTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKC9maXJlZm94L2kudGVzdChnZXRVc2VyQWdlbnQoKSkpIHtcbiAgICAgICAgLy8gTmVlZGVkIHRvIHByb3BhZ2F0ZSBzY3JvbGxpbmcgZHVyaW5nIG1vbWVudHVtIHNjcm9sbGluZyBwaGFzZSBvbmNlXG4gICAgICAgIC8vIGl0IGdldHMgbGltaXRlZCBieSB0aGUgYm91bmRhcnkuIFVYIGltcHJvdmVtZW50LCBub3QgY3JpdGljYWwuXG4gICAgICAgIGVsLnNjcm9sbFRvcCArPSBkWTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgZWwgPSAoc2Nyb2xsUmVmID09IG51bGwgPyB2b2lkIDAgOiBzY3JvbGxSZWYuY3VycmVudCkgfHwgZWxlbWVudHMuZmxvYXRpbmc7XG4gICAgaWYgKG9wZW4gJiYgZWwpIHtcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ3doZWVsJywgb25XaGVlbCk7XG5cbiAgICAgIC8vIFdhaXQgZm9yIHRoZSBwb3NpdGlvbiB0byBiZSByZWFkeS5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIHByZXZTY3JvbGxUb3BSZWYuY3VycmVudCA9IGVsLnNjcm9sbFRvcDtcbiAgICAgICAgaWYgKG92ZXJmbG93UmVmLmN1cnJlbnQgIT0gbnVsbCkge1xuICAgICAgICAgIGluaXRpYWxPdmVyZmxvd1JlZi5jdXJyZW50ID0ge1xuICAgICAgICAgICAgLi4ub3ZlcmZsb3dSZWYuY3VycmVudFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgcHJldlNjcm9sbFRvcFJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICAgICAgaW5pdGlhbE92ZXJmbG93UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCd3aGVlbCcsIG9uV2hlZWwpO1xuICAgICAgfTtcbiAgICB9XG4gIH0sIFtlbmFibGVkLCBvcGVuLCBlbGVtZW50cy5mbG9hdGluZywgb3ZlcmZsb3dSZWYsIHNjcm9sbFJlZiwgb25DaGFuZ2VdKTtcbiAgcmV0dXJuIFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghZW5hYmxlZCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgZmxvYXRpbmc6IHtcbiAgICAgICAgb25LZXlEb3duKCkge1xuICAgICAgICAgIGNvbnRyb2xsZWRTY3JvbGxpbmdSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgIH0sXG4gICAgICAgIG9uV2hlZWwoKSB7XG4gICAgICAgICAgY29udHJvbGxlZFNjcm9sbGluZ1JlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIG9uUG9pbnRlck1vdmUoKSB7XG4gICAgICAgICAgY29udHJvbGxlZFNjcm9sbGluZ1JlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIG9uU2Nyb2xsKCkge1xuICAgICAgICAgIGNvbnN0IGVsID0gKHNjcm9sbFJlZiA9PSBudWxsID8gdm9pZCAwIDogc2Nyb2xsUmVmLmN1cnJlbnQpIHx8IGVsZW1lbnRzLmZsb2F0aW5nO1xuICAgICAgICAgIGlmICghb3ZlcmZsb3dSZWYuY3VycmVudCB8fCAhZWwgfHwgIWNvbnRyb2xsZWRTY3JvbGxpbmdSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocHJldlNjcm9sbFRvcFJlZi5jdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxEaWZmID0gZWwuc2Nyb2xsVG9wIC0gcHJldlNjcm9sbFRvcFJlZi5jdXJyZW50O1xuICAgICAgICAgICAgaWYgKG92ZXJmbG93UmVmLmN1cnJlbnQuYm90dG9tIDwgLTAuNSAmJiBzY3JvbGxEaWZmIDwgLTEgfHwgb3ZlcmZsb3dSZWYuY3VycmVudC50b3AgPCAtMC41ICYmIHNjcm9sbERpZmYgPiAxKSB7XG4gICAgICAgICAgICAgIGZsdXNoU3luYygoKSA9PiBvbkNoYW5nZShkID0+IGQgKyBzY3JvbGxEaWZmKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gW0ZpcmVmb3hdIFdhaXQgZm9yIHRoZSBoZWlnaHQgY2hhbmdlIHRvIGhhdmUgYmVlbiBhcHBsaWVkLlxuICAgICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgICBwcmV2U2Nyb2xsVG9wUmVmLmN1cnJlbnQgPSBlbC5zY3JvbGxUb3A7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZW5hYmxlZCwgb3ZlcmZsb3dSZWYsIGVsZW1lbnRzLmZsb2F0aW5nLCBzY3JvbGxSZWYsIG9uQ2hhbmdlXSk7XG59XG5cbmZ1bmN0aW9uIGlzUG9pbnRJblBvbHlnb24ocG9pbnQsIHBvbHlnb24pIHtcbiAgY29uc3QgW3gsIHldID0gcG9pbnQ7XG4gIGxldCBpc0luc2lkZSA9IGZhbHNlO1xuICBjb25zdCBsZW5ndGggPSBwb2x5Z29uLmxlbmd0aDtcbiAgZm9yIChsZXQgaSA9IDAsIGogPSBsZW5ndGggLSAxOyBpIDwgbGVuZ3RoOyBqID0gaSsrKSB7XG4gICAgY29uc3QgW3hpLCB5aV0gPSBwb2x5Z29uW2ldIHx8IFswLCAwXTtcbiAgICBjb25zdCBbeGosIHlqXSA9IHBvbHlnb25bal0gfHwgWzAsIDBdO1xuICAgIGNvbnN0IGludGVyc2VjdCA9IHlpID49IHkgIT09IHlqID49IHkgJiYgeCA8PSAoeGogLSB4aSkgKiAoeSAtIHlpKSAvICh5aiAtIHlpKSArIHhpO1xuICAgIGlmIChpbnRlcnNlY3QpIHtcbiAgICAgIGlzSW5zaWRlID0gIWlzSW5zaWRlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gaXNJbnNpZGU7XG59XG5mdW5jdGlvbiBpc0luc2lkZShwb2ludCwgcmVjdCkge1xuICByZXR1cm4gcG9pbnRbMF0gPj0gcmVjdC54ICYmIHBvaW50WzBdIDw9IHJlY3QueCArIHJlY3Qud2lkdGggJiYgcG9pbnRbMV0gPj0gcmVjdC55ICYmIHBvaW50WzFdIDw9IHJlY3QueSArIHJlY3QuaGVpZ2h0O1xufVxuLyoqXG4gKiBHZW5lcmF0ZXMgYSBzYWZlIHBvbHlnb24gYXJlYSB0aGF0IHRoZSB1c2VyIGNhbiB0cmF2ZXJzZSB3aXRob3V0IGNsb3NpbmcgdGhlXG4gKiBmbG9hdGluZyBlbGVtZW50IG9uY2UgbGVhdmluZyB0aGUgcmVmZXJlbmNlIGVsZW1lbnQuXG4gKiBAc2VlIGh0dHBzOi8vZmxvYXRpbmctdWkuY29tL2RvY3MvdXNlSG92ZXIjc2FmZXBvbHlnb25cbiAqL1xuZnVuY3Rpb24gc2FmZVBvbHlnb24ob3B0aW9ucykge1xuICBpZiAob3B0aW9ucyA9PT0gdm9pZCAwKSB7XG4gICAgb3B0aW9ucyA9IHt9O1xuICB9XG4gIGNvbnN0IHtcbiAgICBidWZmZXIgPSAwLjUsXG4gICAgYmxvY2tQb2ludGVyRXZlbnRzID0gZmFsc2UsXG4gICAgcmVxdWlyZUludGVudCA9IHRydWVcbiAgfSA9IG9wdGlvbnM7XG4gIGxldCB0aW1lb3V0SWQ7XG4gIGxldCBoYXNMYW5kZWQgPSBmYWxzZTtcbiAgbGV0IGxhc3RYID0gbnVsbDtcbiAgbGV0IGxhc3RZID0gbnVsbDtcbiAgbGV0IGxhc3RDdXJzb3JUaW1lID0gcGVyZm9ybWFuY2Uubm93KCk7XG4gIGZ1bmN0aW9uIGdldEN1cnNvclNwZWVkKHgsIHkpIHtcbiAgICBjb25zdCBjdXJyZW50VGltZSA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgIGNvbnN0IGVsYXBzZWRUaW1lID0gY3VycmVudFRpbWUgLSBsYXN0Q3Vyc29yVGltZTtcbiAgICBpZiAobGFzdFggPT09IG51bGwgfHwgbGFzdFkgPT09IG51bGwgfHwgZWxhcHNlZFRpbWUgPT09IDApIHtcbiAgICAgIGxhc3RYID0geDtcbiAgICAgIGxhc3RZID0geTtcbiAgICAgIGxhc3RDdXJzb3JUaW1lID0gY3VycmVudFRpbWU7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgZGVsdGFYID0geCAtIGxhc3RYO1xuICAgIGNvbnN0IGRlbHRhWSA9IHkgLSBsYXN0WTtcbiAgICBjb25zdCBkaXN0YW5jZSA9IE1hdGguc3FydChkZWx0YVggKiBkZWx0YVggKyBkZWx0YVkgKiBkZWx0YVkpO1xuICAgIGNvbnN0IHNwZWVkID0gZGlzdGFuY2UgLyBlbGFwc2VkVGltZTsgLy8gcHggLyBtc1xuXG4gICAgbGFzdFggPSB4O1xuICAgIGxhc3RZID0geTtcbiAgICBsYXN0Q3Vyc29yVGltZSA9IGN1cnJlbnRUaW1lO1xuICAgIHJldHVybiBzcGVlZDtcbiAgfVxuICBjb25zdCBmbiA9IF9yZWYgPT4ge1xuICAgIGxldCB7XG4gICAgICB4LFxuICAgICAgeSxcbiAgICAgIHBsYWNlbWVudCxcbiAgICAgIGVsZW1lbnRzLFxuICAgICAgb25DbG9zZSxcbiAgICAgIG5vZGVJZCxcbiAgICAgIHRyZWVcbiAgICB9ID0gX3JlZjtcbiAgICByZXR1cm4gZnVuY3Rpb24gb25Nb3VzZU1vdmUoZXZlbnQpIHtcbiAgICAgIGZ1bmN0aW9uIGNsb3NlKCkge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcbiAgICAgICAgb25DbG9zZSgpO1xuICAgICAgfVxuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRJZCk7XG4gICAgICBpZiAoIWVsZW1lbnRzLmRvbVJlZmVyZW5jZSB8fCAhZWxlbWVudHMuZmxvYXRpbmcgfHwgcGxhY2VtZW50ID09IG51bGwgfHwgeCA9PSBudWxsIHx8IHkgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCB7XG4gICAgICAgIGNsaWVudFgsXG4gICAgICAgIGNsaWVudFlcbiAgICAgIH0gPSBldmVudDtcbiAgICAgIGNvbnN0IGNsaWVudFBvaW50ID0gW2NsaWVudFgsIGNsaWVudFldO1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZ2V0VGFyZ2V0KGV2ZW50KTtcbiAgICAgIGNvbnN0IGlzTGVhdmUgPSBldmVudC50eXBlID09PSAnbW91c2VsZWF2ZSc7XG4gICAgICBjb25zdCBpc092ZXJGbG9hdGluZ0VsID0gY29udGFpbnMoZWxlbWVudHMuZmxvYXRpbmcsIHRhcmdldCk7XG4gICAgICBjb25zdCBpc092ZXJSZWZlcmVuY2VFbCA9IGNvbnRhaW5zKGVsZW1lbnRzLmRvbVJlZmVyZW5jZSwgdGFyZ2V0KTtcbiAgICAgIGNvbnN0IHJlZlJlY3QgPSBlbGVtZW50cy5kb21SZWZlcmVuY2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCByZWN0ID0gZWxlbWVudHMuZmxvYXRpbmcuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCBzaWRlID0gcGxhY2VtZW50LnNwbGl0KCctJylbMF07XG4gICAgICBjb25zdCBjdXJzb3JMZWF2ZUZyb21SaWdodCA9IHggPiByZWN0LnJpZ2h0IC0gcmVjdC53aWR0aCAvIDI7XG4gICAgICBjb25zdCBjdXJzb3JMZWF2ZUZyb21Cb3R0b20gPSB5ID4gcmVjdC5ib3R0b20gLSByZWN0LmhlaWdodCAvIDI7XG4gICAgICBjb25zdCBpc092ZXJSZWZlcmVuY2VSZWN0ID0gaXNJbnNpZGUoY2xpZW50UG9pbnQsIHJlZlJlY3QpO1xuICAgICAgY29uc3QgaXNGbG9hdGluZ1dpZGVyID0gcmVjdC53aWR0aCA+IHJlZlJlY3Qud2lkdGg7XG4gICAgICBjb25zdCBpc0Zsb2F0aW5nVGFsbGVyID0gcmVjdC5oZWlnaHQgPiByZWZSZWN0LmhlaWdodDtcbiAgICAgIGNvbnN0IGxlZnQgPSAoaXNGbG9hdGluZ1dpZGVyID8gcmVmUmVjdCA6IHJlY3QpLmxlZnQ7XG4gICAgICBjb25zdCByaWdodCA9IChpc0Zsb2F0aW5nV2lkZXIgPyByZWZSZWN0IDogcmVjdCkucmlnaHQ7XG4gICAgICBjb25zdCB0b3AgPSAoaXNGbG9hdGluZ1RhbGxlciA/IHJlZlJlY3QgOiByZWN0KS50b3A7XG4gICAgICBjb25zdCBib3R0b20gPSAoaXNGbG9hdGluZ1RhbGxlciA/IHJlZlJlY3QgOiByZWN0KS5ib3R0b207XG4gICAgICBpZiAoaXNPdmVyRmxvYXRpbmdFbCkge1xuICAgICAgICBoYXNMYW5kZWQgPSB0cnVlO1xuICAgICAgICBpZiAoIWlzTGVhdmUpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChpc092ZXJSZWZlcmVuY2VFbCkge1xuICAgICAgICBoYXNMYW5kZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmIChpc092ZXJSZWZlcmVuY2VFbCAmJiAhaXNMZWF2ZSkge1xuICAgICAgICBoYXNMYW5kZWQgPSB0cnVlO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFByZXZlbnQgb3ZlcmxhcHBpbmcgZmxvYXRpbmcgZWxlbWVudCBmcm9tIGJlaW5nIHN0dWNrIGluIGFuIG9wZW4tY2xvc2VcbiAgICAgIC8vIGxvb3A6IGh0dHBzOi8vZ2l0aHViLmNvbS9mbG9hdGluZy11aS9mbG9hdGluZy11aS9pc3N1ZXMvMTkxMFxuICAgICAgaWYgKGlzTGVhdmUgJiYgaXNFbGVtZW50KGV2ZW50LnJlbGF0ZWRUYXJnZXQpICYmIGNvbnRhaW5zKGVsZW1lbnRzLmZsb2F0aW5nLCBldmVudC5yZWxhdGVkVGFyZ2V0KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIElmIGFueSBuZXN0ZWQgY2hpbGQgaXMgb3BlbiwgYWJvcnQuXG4gICAgICBpZiAodHJlZSAmJiBnZXRDaGlsZHJlbih0cmVlLm5vZGVzUmVmLmN1cnJlbnQsIG5vZGVJZCkuc29tZShfcmVmMiA9PiB7XG4gICAgICAgIGxldCB7XG4gICAgICAgICAgY29udGV4dFxuICAgICAgICB9ID0gX3JlZjI7XG4gICAgICAgIHJldHVybiBjb250ZXh0ID09IG51bGwgPyB2b2lkIDAgOiBjb250ZXh0Lm9wZW47XG4gICAgICB9KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHRoZSBwb2ludGVyIGlzIGxlYXZpbmcgZnJvbSB0aGUgb3Bwb3NpdGUgc2lkZSwgdGhlIFwiYnVmZmVyXCIgbG9naWNcbiAgICAgIC8vIGNyZWF0ZXMgYSBwb2ludCB3aGVyZSB0aGUgZmxvYXRpbmcgZWxlbWVudCByZW1haW5zIG9wZW4sIGJ1dCBzaG91bGQgYmVcbiAgICAgIC8vIGlnbm9yZWQuXG4gICAgICAvLyBBIGNvbnN0YW50IG9mIDEgaGFuZGxlcyBmbG9hdGluZyBwb2ludCByb3VuZGluZyBlcnJvcnMuXG4gICAgICBpZiAoc2lkZSA9PT0gJ3RvcCcgJiYgeSA+PSByZWZSZWN0LmJvdHRvbSAtIDEgfHwgc2lkZSA9PT0gJ2JvdHRvbScgJiYgeSA8PSByZWZSZWN0LnRvcCArIDEgfHwgc2lkZSA9PT0gJ2xlZnQnICYmIHggPj0gcmVmUmVjdC5yaWdodCAtIDEgfHwgc2lkZSA9PT0gJ3JpZ2h0JyAmJiB4IDw9IHJlZlJlY3QubGVmdCArIDEpIHtcbiAgICAgICAgcmV0dXJuIGNsb3NlKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIElnbm9yZSB3aGVuIHRoZSBjdXJzb3IgaXMgd2l0aGluIHRoZSByZWN0YW5ndWxhciB0cm91Z2ggYmV0d2VlbiB0aGVcbiAgICAgIC8vIHR3byBlbGVtZW50cy4gU2luY2UgdGhlIHRyaWFuZ2xlIGlzIGNyZWF0ZWQgZnJvbSB0aGUgY3Vyc29yIHBvaW50LFxuICAgICAgLy8gd2hpY2ggY2FuIHN0YXJ0IGJleW9uZCB0aGUgcmVmIGVsZW1lbnQncyBlZGdlLCB0cmF2ZXJzaW5nIGJhY2sgYW5kXG4gICAgICAvLyBmb3J0aCBmcm9tIHRoZSByZWYgdG8gdGhlIGZsb2F0aW5nIGVsZW1lbnQgY2FuIGNhdXNlIGl0IHRvIGNsb3NlLiBUaGlzXG4gICAgICAvLyBlbnN1cmVzIGl0IGFsd2F5cyByZW1haW5zIG9wZW4gaW4gdGhhdCBjYXNlLlxuICAgICAgbGV0IHJlY3RQb2x5ID0gW107XG4gICAgICBzd2l0Y2ggKHNpZGUpIHtcbiAgICAgICAgY2FzZSAndG9wJzpcbiAgICAgICAgICByZWN0UG9seSA9IFtbbGVmdCwgcmVmUmVjdC50b3AgKyAxXSwgW2xlZnQsIHJlY3QuYm90dG9tIC0gMV0sIFtyaWdodCwgcmVjdC5ib3R0b20gLSAxXSwgW3JpZ2h0LCByZWZSZWN0LnRvcCArIDFdXTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgICByZWN0UG9seSA9IFtbbGVmdCwgcmVjdC50b3AgKyAxXSwgW2xlZnQsIHJlZlJlY3QuYm90dG9tIC0gMV0sIFtyaWdodCwgcmVmUmVjdC5ib3R0b20gLSAxXSwgW3JpZ2h0LCByZWN0LnRvcCArIDFdXTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgcmVjdFBvbHkgPSBbW3JlY3QucmlnaHQgLSAxLCBib3R0b21dLCBbcmVjdC5yaWdodCAtIDEsIHRvcF0sIFtyZWZSZWN0LmxlZnQgKyAxLCB0b3BdLCBbcmVmUmVjdC5sZWZ0ICsgMSwgYm90dG9tXV07XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICByZWN0UG9seSA9IFtbcmVmUmVjdC5yaWdodCAtIDEsIGJvdHRvbV0sIFtyZWZSZWN0LnJpZ2h0IC0gMSwgdG9wXSwgW3JlY3QubGVmdCArIDEsIHRvcF0sIFtyZWN0LmxlZnQgKyAxLCBib3R0b21dXTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGZ1bmN0aW9uIGdldFBvbHlnb24oX3JlZjMpIHtcbiAgICAgICAgbGV0IFt4LCB5XSA9IF9yZWYzO1xuICAgICAgICBzd2l0Y2ggKHNpZGUpIHtcbiAgICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBjb25zdCBjdXJzb3JQb2ludE9uZSA9IFtpc0Zsb2F0aW5nV2lkZXIgPyB4ICsgYnVmZmVyIC8gMiA6IGN1cnNvckxlYXZlRnJvbVJpZ2h0ID8geCArIGJ1ZmZlciAqIDQgOiB4IC0gYnVmZmVyICogNCwgeSArIGJ1ZmZlciArIDFdO1xuICAgICAgICAgICAgICBjb25zdCBjdXJzb3JQb2ludFR3byA9IFtpc0Zsb2F0aW5nV2lkZXIgPyB4IC0gYnVmZmVyIC8gMiA6IGN1cnNvckxlYXZlRnJvbVJpZ2h0ID8geCArIGJ1ZmZlciAqIDQgOiB4IC0gYnVmZmVyICogNCwgeSArIGJ1ZmZlciArIDFdO1xuICAgICAgICAgICAgICBjb25zdCBjb21tb25Qb2ludHMgPSBbW3JlY3QubGVmdCwgY3Vyc29yTGVhdmVGcm9tUmlnaHQgPyByZWN0LmJvdHRvbSAtIGJ1ZmZlciA6IGlzRmxvYXRpbmdXaWRlciA/IHJlY3QuYm90dG9tIC0gYnVmZmVyIDogcmVjdC50b3BdLCBbcmVjdC5yaWdodCwgY3Vyc29yTGVhdmVGcm9tUmlnaHQgPyBpc0Zsb2F0aW5nV2lkZXIgPyByZWN0LmJvdHRvbSAtIGJ1ZmZlciA6IHJlY3QudG9wIDogcmVjdC5ib3R0b20gLSBidWZmZXJdXTtcbiAgICAgICAgICAgICAgcmV0dXJuIFtjdXJzb3JQb2ludE9uZSwgY3Vyc29yUG9pbnRUd28sIC4uLmNvbW1vblBvaW50c107XG4gICAgICAgICAgICB9XG4gICAgICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY29uc3QgY3Vyc29yUG9pbnRPbmUgPSBbaXNGbG9hdGluZ1dpZGVyID8geCArIGJ1ZmZlciAvIDIgOiBjdXJzb3JMZWF2ZUZyb21SaWdodCA/IHggKyBidWZmZXIgKiA0IDogeCAtIGJ1ZmZlciAqIDQsIHkgLSBidWZmZXJdO1xuICAgICAgICAgICAgICBjb25zdCBjdXJzb3JQb2ludFR3byA9IFtpc0Zsb2F0aW5nV2lkZXIgPyB4IC0gYnVmZmVyIC8gMiA6IGN1cnNvckxlYXZlRnJvbVJpZ2h0ID8geCArIGJ1ZmZlciAqIDQgOiB4IC0gYnVmZmVyICogNCwgeSAtIGJ1ZmZlcl07XG4gICAgICAgICAgICAgIGNvbnN0IGNvbW1vblBvaW50cyA9IFtbcmVjdC5sZWZ0LCBjdXJzb3JMZWF2ZUZyb21SaWdodCA/IHJlY3QudG9wICsgYnVmZmVyIDogaXNGbG9hdGluZ1dpZGVyID8gcmVjdC50b3AgKyBidWZmZXIgOiByZWN0LmJvdHRvbV0sIFtyZWN0LnJpZ2h0LCBjdXJzb3JMZWF2ZUZyb21SaWdodCA/IGlzRmxvYXRpbmdXaWRlciA/IHJlY3QudG9wICsgYnVmZmVyIDogcmVjdC5ib3R0b20gOiByZWN0LnRvcCArIGJ1ZmZlcl1dO1xuICAgICAgICAgICAgICByZXR1cm4gW2N1cnNvclBvaW50T25lLCBjdXJzb3JQb2ludFR3bywgLi4uY29tbW9uUG9pbnRzXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY29uc3QgY3Vyc29yUG9pbnRPbmUgPSBbeCArIGJ1ZmZlciArIDEsIGlzRmxvYXRpbmdUYWxsZXIgPyB5ICsgYnVmZmVyIC8gMiA6IGN1cnNvckxlYXZlRnJvbUJvdHRvbSA/IHkgKyBidWZmZXIgKiA0IDogeSAtIGJ1ZmZlciAqIDRdO1xuICAgICAgICAgICAgICBjb25zdCBjdXJzb3JQb2ludFR3byA9IFt4ICsgYnVmZmVyICsgMSwgaXNGbG9hdGluZ1RhbGxlciA/IHkgLSBidWZmZXIgLyAyIDogY3Vyc29yTGVhdmVGcm9tQm90dG9tID8geSArIGJ1ZmZlciAqIDQgOiB5IC0gYnVmZmVyICogNF07XG4gICAgICAgICAgICAgIGNvbnN0IGNvbW1vblBvaW50cyA9IFtbY3Vyc29yTGVhdmVGcm9tQm90dG9tID8gcmVjdC5yaWdodCAtIGJ1ZmZlciA6IGlzRmxvYXRpbmdUYWxsZXIgPyByZWN0LnJpZ2h0IC0gYnVmZmVyIDogcmVjdC5sZWZ0LCByZWN0LnRvcF0sIFtjdXJzb3JMZWF2ZUZyb21Cb3R0b20gPyBpc0Zsb2F0aW5nVGFsbGVyID8gcmVjdC5yaWdodCAtIGJ1ZmZlciA6IHJlY3QubGVmdCA6IHJlY3QucmlnaHQgLSBidWZmZXIsIHJlY3QuYm90dG9tXV07XG4gICAgICAgICAgICAgIHJldHVybiBbLi4uY29tbW9uUG9pbnRzLCBjdXJzb3JQb2ludE9uZSwgY3Vyc29yUG9pbnRUd29dO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY29uc3QgY3Vyc29yUG9pbnRPbmUgPSBbeCAtIGJ1ZmZlciwgaXNGbG9hdGluZ1RhbGxlciA/IHkgKyBidWZmZXIgLyAyIDogY3Vyc29yTGVhdmVGcm9tQm90dG9tID8geSArIGJ1ZmZlciAqIDQgOiB5IC0gYnVmZmVyICogNF07XG4gICAgICAgICAgICAgIGNvbnN0IGN1cnNvclBvaW50VHdvID0gW3ggLSBidWZmZXIsIGlzRmxvYXRpbmdUYWxsZXIgPyB5IC0gYnVmZmVyIC8gMiA6IGN1cnNvckxlYXZlRnJvbUJvdHRvbSA/IHkgKyBidWZmZXIgKiA0IDogeSAtIGJ1ZmZlciAqIDRdO1xuICAgICAgICAgICAgICBjb25zdCBjb21tb25Qb2ludHMgPSBbW2N1cnNvckxlYXZlRnJvbUJvdHRvbSA/IHJlY3QubGVmdCArIGJ1ZmZlciA6IGlzRmxvYXRpbmdUYWxsZXIgPyByZWN0LmxlZnQgKyBidWZmZXIgOiByZWN0LnJpZ2h0LCByZWN0LnRvcF0sIFtjdXJzb3JMZWF2ZUZyb21Cb3R0b20gPyBpc0Zsb2F0aW5nVGFsbGVyID8gcmVjdC5sZWZ0ICsgYnVmZmVyIDogcmVjdC5yaWdodCA6IHJlY3QubGVmdCArIGJ1ZmZlciwgcmVjdC5ib3R0b21dXTtcbiAgICAgICAgICAgICAgcmV0dXJuIFtjdXJzb3JQb2ludE9uZSwgY3Vyc29yUG9pbnRUd28sIC4uLmNvbW1vblBvaW50c107XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChpc1BvaW50SW5Qb2x5Z29uKFtjbGllbnRYLCBjbGllbnRZXSwgcmVjdFBvbHkpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChoYXNMYW5kZWQgJiYgIWlzT3ZlclJlZmVyZW5jZVJlY3QpIHtcbiAgICAgICAgcmV0dXJuIGNsb3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoIWlzTGVhdmUgJiYgcmVxdWlyZUludGVudCkge1xuICAgICAgICBjb25zdCBjdXJzb3JTcGVlZCA9IGdldEN1cnNvclNwZWVkKGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpO1xuICAgICAgICBjb25zdCBjdXJzb3JTcGVlZFRocmVzaG9sZCA9IDAuMTtcbiAgICAgICAgaWYgKGN1cnNvclNwZWVkICE9PSBudWxsICYmIGN1cnNvclNwZWVkIDwgY3Vyc29yU3BlZWRUaHJlc2hvbGQpIHtcbiAgICAgICAgICByZXR1cm4gY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCFpc1BvaW50SW5Qb2x5Z29uKFtjbGllbnRYLCBjbGllbnRZXSwgZ2V0UG9seWdvbihbeCwgeV0pKSkge1xuICAgICAgICBjbG9zZSgpO1xuICAgICAgfSBlbHNlIGlmICghaGFzTGFuZGVkICYmIHJlcXVpcmVJbnRlbnQpIHtcbiAgICAgICAgdGltZW91dElkID0gd2luZG93LnNldFRpbWVvdXQoY2xvc2UsIDQwKTtcbiAgICAgIH1cbiAgICB9O1xuICB9O1xuICBmbi5fX29wdGlvbnMgPSB7XG4gICAgYmxvY2tQb2ludGVyRXZlbnRzXG4gIH07XG4gIHJldHVybiBmbjtcbn1cblxuZXhwb3J0IHsgQ29tcG9zaXRlLCBDb21wb3NpdGVJdGVtLCBGbG9hdGluZ0Fycm93LCBGbG9hdGluZ0RlbGF5R3JvdXAsIEZsb2F0aW5nRm9jdXNNYW5hZ2VyLCBGbG9hdGluZ0xpc3QsIEZsb2F0aW5nTm9kZSwgRmxvYXRpbmdPdmVybGF5LCBGbG9hdGluZ1BvcnRhbCwgRmxvYXRpbmdUcmVlLCBpbm5lciwgc2FmZVBvbHlnb24sIHVzZUNsaWNrLCB1c2VDbGllbnRQb2ludCwgdXNlRGVsYXlHcm91cCwgdXNlRGVsYXlHcm91cENvbnRleHQsIHVzZURpc21pc3MsIHVzZUZsb2F0aW5nLCB1c2VGbG9hdGluZ05vZGVJZCwgdXNlRmxvYXRpbmdQYXJlbnROb2RlSWQsIHVzZUZsb2F0aW5nUG9ydGFsTm9kZSwgdXNlRmxvYXRpbmdSb290Q29udGV4dCwgdXNlRmxvYXRpbmdUcmVlLCB1c2VGb2N1cywgdXNlSG92ZXIsIHVzZUlkLCB1c2VJbm5lck9mZnNldCwgdXNlSW50ZXJhY3Rpb25zLCB1c2VMaXN0SXRlbSwgdXNlTGlzdE5hdmlnYXRpb24sIHVzZU1lcmdlUmVmcywgdXNlUm9sZSwgdXNlVHJhbnNpdGlvblN0YXR1cywgdXNlVHJhbnNpdGlvblN0eWxlcywgdXNlVHlwZWFoZWFkIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ TYPEABLE_SELECTOR: function() { return /* binding */ TYPEABLE_SELECTOR; },\n/* harmony export */ activeElement: function() { return /* binding */ activeElement; },\n/* harmony export */ contains: function() { return /* binding */ contains; },\n/* harmony export */ getDocument: function() { return /* binding */ getDocument; },\n/* harmony export */ getPlatform: function() { return /* binding */ getPlatform; },\n/* harmony export */ getTarget: function() { return /* binding */ getTarget; },\n/* harmony export */ getUserAgent: function() { return /* binding */ getUserAgent; },\n/* harmony export */ isAndroid: function() { return /* binding */ isAndroid; },\n/* harmony export */ isEventTargetWithin: function() { return /* binding */ isEventTargetWithin; },\n/* harmony export */ isJSDOM: function() { return /* binding */ isJSDOM; },\n/* harmony export */ isMac: function() { return /* binding */ isMac; },\n/* harmony export */ isMouseLikePointerType: function() { return /* binding */ isMouseLikePointerType; },\n/* harmony export */ isReactEvent: function() { return /* binding */ isReactEvent; },\n/* harmony export */ isRootElement: function() { return /* binding */ isRootElement; },\n/* harmony export */ isSafari: function() { return /* binding */ isSafari; },\n/* harmony export */ isTypeableCombobox: function() { return /* binding */ isTypeableCombobox; },\n/* harmony export */ isTypeableElement: function() { return /* binding */ isTypeableElement; },\n/* harmony export */ isVirtualClick: function() { return /* binding */ isVirtualClick; },\n/* harmony export */ isVirtualPointerEvent: function() { return /* binding */ isVirtualPointerEvent; },\n/* harmony export */ stopEvent: function() { return /* binding */ stopEvent; }\n/* harmony export */ });\n/* harmony import */ var _floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @floating-ui/utils/dom */ \"(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\");\n\n\nfunction activeElement(doc) {\n let activeElement = doc.activeElement;\n while (((_activeElement = activeElement) == null || (_activeElement = _activeElement.shadowRoot) == null ? void 0 : _activeElement.activeElement) != null) {\n var _activeElement;\n activeElement = activeElement.shadowRoot.activeElement;\n }\n return activeElement;\n}\nfunction contains(parent, child) {\n if (!parent || !child) {\n return false;\n }\n const rootNode = child.getRootNode == null ? void 0 : child.getRootNode();\n\n // First, attempt with faster native method\n if (parent.contains(child)) {\n return true;\n }\n\n // then fallback to custom implementation with Shadow DOM support\n if (rootNode && (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isShadowRoot)(rootNode)) {\n let next = child;\n while (next) {\n if (parent === next) {\n return true;\n }\n // @ts-ignore\n next = next.parentNode || next.host;\n }\n }\n\n // Give up, the result is false\n return false;\n}\n// Avoid Chrome DevTools blue warning.\nfunction getPlatform() {\n const uaData = navigator.userAgentData;\n if (uaData != null && uaData.platform) {\n return uaData.platform;\n }\n return navigator.platform;\n}\nfunction getUserAgent() {\n const uaData = navigator.userAgentData;\n if (uaData && Array.isArray(uaData.brands)) {\n return uaData.brands.map(_ref => {\n let {\n brand,\n version\n } = _ref;\n return brand + \"/\" + version;\n }).join(' ');\n }\n return navigator.userAgent;\n}\n\n// License: https://github.com/adobe/react-spectrum/blob/b35d5c02fe900badccd0cf1a8f23bb593419f238/packages/@react-aria/utils/src/isVirtualEvent.ts\nfunction isVirtualClick(event) {\n // FIXME: Firefox is now emitting a deprecation warning for `mozInputSource`.\n // Try to find a workaround for this. `react-aria` source still has the check.\n if (event.mozInputSource === 0 && event.isTrusted) {\n return true;\n }\n if (isAndroid() && event.pointerType) {\n return event.type === 'click' && event.buttons === 1;\n }\n return event.detail === 0 && !event.pointerType;\n}\nfunction isVirtualPointerEvent(event) {\n if (isJSDOM()) return false;\n return !isAndroid() && event.width === 0 && event.height === 0 || isAndroid() && event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse' ||\n // iOS VoiceOver returns 0.333• for width/height.\n event.width < 1 && event.height < 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'touch';\n}\nfunction isSafari() {\n // Chrome DevTools does not complain about navigator.vendor\n return /apple/i.test(navigator.vendor);\n}\nfunction isAndroid() {\n const re = /android/i;\n return re.test(getPlatform()) || re.test(getUserAgent());\n}\nfunction isMac() {\n return getPlatform().toLowerCase().startsWith('mac') && !navigator.maxTouchPoints;\n}\nfunction isJSDOM() {\n return getUserAgent().includes('jsdom/');\n}\nfunction isMouseLikePointerType(pointerType, strict) {\n // On some Linux machines with Chromium, mouse inputs return a `pointerType`\n // of \"pen\": https://github.com/floating-ui/floating-ui/issues/2015\n const values = ['mouse', 'pen'];\n if (!strict) {\n values.push('', undefined);\n }\n return values.includes(pointerType);\n}\nfunction isReactEvent(event) {\n return 'nativeEvent' in event;\n}\nfunction isRootElement(element) {\n return element.matches('html,body');\n}\nfunction getDocument(node) {\n return (node == null ? void 0 : node.ownerDocument) || document;\n}\nfunction isEventTargetWithin(event, node) {\n if (node == null) {\n return false;\n }\n if ('composedPath' in event) {\n return event.composedPath().includes(node);\n }\n\n // TS thinks `event` is of type never as it assumes all browsers support composedPath, but browsers without shadow dom don't\n const e = event;\n return e.target != null && node.contains(e.target);\n}\nfunction getTarget(event) {\n if ('composedPath' in event) {\n return event.composedPath()[0];\n }\n\n // TS thinks `event` is of type never as it assumes all browsers support\n // `composedPath()`, but browsers without shadow DOM don't.\n return event.target;\n}\nconst TYPEABLE_SELECTOR = \"input:not([type='hidden']):not([disabled]),\" + \"[contenteditable]:not([contenteditable='false']),textarea:not([disabled])\";\nfunction isTypeableElement(element) {\n return (0,_floating_ui_utils_dom__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) && element.matches(TYPEABLE_SELECTOR);\n}\nfunction stopEvent(event) {\n event.preventDefault();\n event.stopPropagation();\n}\nfunction isTypeableCombobox(element) {\n if (!element) return false;\n return element.getAttribute('role') === 'combobox' && isTypeableElement(element);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvcmVhY3QvZGlzdC9mbG9hdGluZy11aS5yZWFjdC51dGlscy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXFFOztBQUVyRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGtCQUFrQixvRUFBWTtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUTtBQUNSO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLHFFQUFhO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFaVQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BmbG9hdGluZy11aS9yZWFjdC9kaXN0L2Zsb2F0aW5nLXVpLnJlYWN0LnV0aWxzLm1qcz83OTUyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU2hhZG93Um9vdCwgaXNIVE1MRWxlbWVudCB9IGZyb20gJ0BmbG9hdGluZy11aS91dGlscy9kb20nO1xuXG5mdW5jdGlvbiBhY3RpdmVFbGVtZW50KGRvYykge1xuICBsZXQgYWN0aXZlRWxlbWVudCA9IGRvYy5hY3RpdmVFbGVtZW50O1xuICB3aGlsZSAoKChfYWN0aXZlRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQpID09IG51bGwgfHwgKF9hY3RpdmVFbGVtZW50ID0gX2FjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hY3RpdmVFbGVtZW50LmFjdGl2ZUVsZW1lbnQpICE9IG51bGwpIHtcbiAgICB2YXIgX2FjdGl2ZUVsZW1lbnQ7XG4gICAgYWN0aXZlRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdC5hY3RpdmVFbGVtZW50O1xuICB9XG4gIHJldHVybiBhY3RpdmVFbGVtZW50O1xufVxuZnVuY3Rpb24gY29udGFpbnMocGFyZW50LCBjaGlsZCkge1xuICBpZiAoIXBhcmVudCB8fCAhY2hpbGQpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgY29uc3Qgcm9vdE5vZGUgPSBjaGlsZC5nZXRSb290Tm9kZSA9PSBudWxsID8gdm9pZCAwIDogY2hpbGQuZ2V0Um9vdE5vZGUoKTtcblxuICAvLyBGaXJzdCwgYXR0ZW1wdCB3aXRoIGZhc3RlciBuYXRpdmUgbWV0aG9kXG4gIGlmIChwYXJlbnQuY29udGFpbnMoY2hpbGQpKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyB0aGVuIGZhbGxiYWNrIHRvIGN1c3RvbSBpbXBsZW1lbnRhdGlvbiB3aXRoIFNoYWRvdyBET00gc3VwcG9ydFxuICBpZiAocm9vdE5vZGUgJiYgaXNTaGFkb3dSb290KHJvb3ROb2RlKSkge1xuICAgIGxldCBuZXh0ID0gY2hpbGQ7XG4gICAgd2hpbGUgKG5leHQpIHtcbiAgICAgIGlmIChwYXJlbnQgPT09IG5leHQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBuZXh0ID0gbmV4dC5wYXJlbnROb2RlIHx8IG5leHQuaG9zdDtcbiAgICB9XG4gIH1cblxuICAvLyBHaXZlIHVwLCB0aGUgcmVzdWx0IGlzIGZhbHNlXG4gIHJldHVybiBmYWxzZTtcbn1cbi8vIEF2b2lkIENocm9tZSBEZXZUb29scyBibHVlIHdhcm5pbmcuXG5mdW5jdGlvbiBnZXRQbGF0Zm9ybSgpIHtcbiAgY29uc3QgdWFEYXRhID0gbmF2aWdhdG9yLnVzZXJBZ2VudERhdGE7XG4gIGlmICh1YURhdGEgIT0gbnVsbCAmJiB1YURhdGEucGxhdGZvcm0pIHtcbiAgICByZXR1cm4gdWFEYXRhLnBsYXRmb3JtO1xuICB9XG4gIHJldHVybiBuYXZpZ2F0b3IucGxhdGZvcm07XG59XG5mdW5jdGlvbiBnZXRVc2VyQWdlbnQoKSB7XG4gIGNvbnN0IHVhRGF0YSA9IG5hdmlnYXRvci51c2VyQWdlbnREYXRhO1xuICBpZiAodWFEYXRhICYmIEFycmF5LmlzQXJyYXkodWFEYXRhLmJyYW5kcykpIHtcbiAgICByZXR1cm4gdWFEYXRhLmJyYW5kcy5tYXAoX3JlZiA9PiB7XG4gICAgICBsZXQge1xuICAgICAgICBicmFuZCxcbiAgICAgICAgdmVyc2lvblxuICAgICAgfSA9IF9yZWY7XG4gICAgICByZXR1cm4gYnJhbmQgKyBcIi9cIiArIHZlcnNpb247XG4gICAgfSkuam9pbignICcpO1xuICB9XG4gIHJldHVybiBuYXZpZ2F0b3IudXNlckFnZW50O1xufVxuXG4vLyBMaWNlbnNlOiBodHRwczovL2dpdGh1Yi5jb20vYWRvYmUvcmVhY3Qtc3BlY3RydW0vYmxvYi9iMzVkNWMwMmZlOTAwYmFkY2NkMGNmMWE4ZjIzYmI1OTM0MTlmMjM4L3BhY2thZ2VzL0ByZWFjdC1hcmlhL3V0aWxzL3NyYy9pc1ZpcnR1YWxFdmVudC50c1xuZnVuY3Rpb24gaXNWaXJ0dWFsQ2xpY2soZXZlbnQpIHtcbiAgLy8gRklYTUU6IEZpcmVmb3ggaXMgbm93IGVtaXR0aW5nIGEgZGVwcmVjYXRpb24gd2FybmluZyBmb3IgYG1veklucHV0U291cmNlYC5cbiAgLy8gVHJ5IHRvIGZpbmQgYSB3b3JrYXJvdW5kIGZvciB0aGlzLiBgcmVhY3QtYXJpYWAgc291cmNlIHN0aWxsIGhhcyB0aGUgY2hlY2suXG4gIGlmIChldmVudC5tb3pJbnB1dFNvdXJjZSA9PT0gMCAmJiBldmVudC5pc1RydXN0ZWQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAoaXNBbmRyb2lkKCkgJiYgZXZlbnQucG9pbnRlclR5cGUpIHtcbiAgICByZXR1cm4gZXZlbnQudHlwZSA9PT0gJ2NsaWNrJyAmJiBldmVudC5idXR0b25zID09PSAxO1xuICB9XG4gIHJldHVybiBldmVudC5kZXRhaWwgPT09IDAgJiYgIWV2ZW50LnBvaW50ZXJUeXBlO1xufVxuZnVuY3Rpb24gaXNWaXJ0dWFsUG9pbnRlckV2ZW50KGV2ZW50KSB7XG4gIGlmIChpc0pTRE9NKCkpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuICFpc0FuZHJvaWQoKSAmJiBldmVudC53aWR0aCA9PT0gMCAmJiBldmVudC5oZWlnaHQgPT09IDAgfHwgaXNBbmRyb2lkKCkgJiYgZXZlbnQud2lkdGggPT09IDEgJiYgZXZlbnQuaGVpZ2h0ID09PSAxICYmIGV2ZW50LnByZXNzdXJlID09PSAwICYmIGV2ZW50LmRldGFpbCA9PT0gMCAmJiBldmVudC5wb2ludGVyVHlwZSA9PT0gJ21vdXNlJyB8fFxuICAvLyBpT1MgVm9pY2VPdmVyIHJldHVybnMgMC4zMzPigKIgZm9yIHdpZHRoL2hlaWdodC5cbiAgZXZlbnQud2lkdGggPCAxICYmIGV2ZW50LmhlaWdodCA8IDEgJiYgZXZlbnQucHJlc3N1cmUgPT09IDAgJiYgZXZlbnQuZGV0YWlsID09PSAwICYmIGV2ZW50LnBvaW50ZXJUeXBlID09PSAndG91Y2gnO1xufVxuZnVuY3Rpb24gaXNTYWZhcmkoKSB7XG4gIC8vIENocm9tZSBEZXZUb29scyBkb2VzIG5vdCBjb21wbGFpbiBhYm91dCBuYXZpZ2F0b3IudmVuZG9yXG4gIHJldHVybiAvYXBwbGUvaS50ZXN0KG5hdmlnYXRvci52ZW5kb3IpO1xufVxuZnVuY3Rpb24gaXNBbmRyb2lkKCkge1xuICBjb25zdCByZSA9IC9hbmRyb2lkL2k7XG4gIHJldHVybiByZS50ZXN0KGdldFBsYXRmb3JtKCkpIHx8IHJlLnRlc3QoZ2V0VXNlckFnZW50KCkpO1xufVxuZnVuY3Rpb24gaXNNYWMoKSB7XG4gIHJldHVybiBnZXRQbGF0Zm9ybSgpLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aCgnbWFjJykgJiYgIW5hdmlnYXRvci5tYXhUb3VjaFBvaW50cztcbn1cbmZ1bmN0aW9uIGlzSlNET00oKSB7XG4gIHJldHVybiBnZXRVc2VyQWdlbnQoKS5pbmNsdWRlcygnanNkb20vJyk7XG59XG5mdW5jdGlvbiBpc01vdXNlTGlrZVBvaW50ZXJUeXBlKHBvaW50ZXJUeXBlLCBzdHJpY3QpIHtcbiAgLy8gT24gc29tZSBMaW51eCBtYWNoaW5lcyB3aXRoIENocm9taXVtLCBtb3VzZSBpbnB1dHMgcmV0dXJuIGEgYHBvaW50ZXJUeXBlYFxuICAvLyBvZiBcInBlblwiOiBodHRwczovL2dpdGh1Yi5jb20vZmxvYXRpbmctdWkvZmxvYXRpbmctdWkvaXNzdWVzLzIwMTVcbiAgY29uc3QgdmFsdWVzID0gWydtb3VzZScsICdwZW4nXTtcbiAgaWYgKCFzdHJpY3QpIHtcbiAgICB2YWx1ZXMucHVzaCgnJywgdW5kZWZpbmVkKTtcbiAgfVxuICByZXR1cm4gdmFsdWVzLmluY2x1ZGVzKHBvaW50ZXJUeXBlKTtcbn1cbmZ1bmN0aW9uIGlzUmVhY3RFdmVudChldmVudCkge1xuICByZXR1cm4gJ25hdGl2ZUV2ZW50JyBpbiBldmVudDtcbn1cbmZ1bmN0aW9uIGlzUm9vdEVsZW1lbnQoZWxlbWVudCkge1xuICByZXR1cm4gZWxlbWVudC5tYXRjaGVzKCdodG1sLGJvZHknKTtcbn1cbmZ1bmN0aW9uIGdldERvY3VtZW50KG5vZGUpIHtcbiAgcmV0dXJuIChub2RlID09IG51bGwgPyB2b2lkIDAgOiBub2RlLm93bmVyRG9jdW1lbnQpIHx8IGRvY3VtZW50O1xufVxuZnVuY3Rpb24gaXNFdmVudFRhcmdldFdpdGhpbihldmVudCwgbm9kZSkge1xuICBpZiAobm9kZSA9PSBudWxsKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmICgnY29tcG9zZWRQYXRoJyBpbiBldmVudCkge1xuICAgIHJldHVybiBldmVudC5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyhub2RlKTtcbiAgfVxuXG4gIC8vIFRTIHRoaW5rcyBgZXZlbnRgIGlzIG9mIHR5cGUgbmV2ZXIgYXMgaXQgYXNzdW1lcyBhbGwgYnJvd3NlcnMgc3VwcG9ydCBjb21wb3NlZFBhdGgsIGJ1dCBicm93c2VycyB3aXRob3V0IHNoYWRvdyBkb20gZG9uJ3RcbiAgY29uc3QgZSA9IGV2ZW50O1xuICByZXR1cm4gZS50YXJnZXQgIT0gbnVsbCAmJiBub2RlLmNvbnRhaW5zKGUudGFyZ2V0KTtcbn1cbmZ1bmN0aW9uIGdldFRhcmdldChldmVudCkge1xuICBpZiAoJ2NvbXBvc2VkUGF0aCcgaW4gZXZlbnQpIHtcbiAgICByZXR1cm4gZXZlbnQuY29tcG9zZWRQYXRoKClbMF07XG4gIH1cblxuICAvLyBUUyB0aGlua3MgYGV2ZW50YCBpcyBvZiB0eXBlIG5ldmVyIGFzIGl0IGFzc3VtZXMgYWxsIGJyb3dzZXJzIHN1cHBvcnRcbiAgLy8gYGNvbXBvc2VkUGF0aCgpYCwgYnV0IGJyb3dzZXJzIHdpdGhvdXQgc2hhZG93IERPTSBkb24ndC5cbiAgcmV0dXJuIGV2ZW50LnRhcmdldDtcbn1cbmNvbnN0IFRZUEVBQkxFX1NFTEVDVE9SID0gXCJpbnB1dDpub3QoW3R5cGU9J2hpZGRlbiddKTpub3QoW2Rpc2FibGVkXSksXCIgKyBcIltjb250ZW50ZWRpdGFibGVdOm5vdChbY29udGVudGVkaXRhYmxlPSdmYWxzZSddKSx0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSlcIjtcbmZ1bmN0aW9uIGlzVHlwZWFibGVFbGVtZW50KGVsZW1lbnQpIHtcbiAgcmV0dXJuIGlzSFRNTEVsZW1lbnQoZWxlbWVudCkgJiYgZWxlbWVudC5tYXRjaGVzKFRZUEVBQkxFX1NFTEVDVE9SKTtcbn1cbmZ1bmN0aW9uIHN0b3BFdmVudChldmVudCkge1xuICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbmZ1bmN0aW9uIGlzVHlwZWFibGVDb21ib2JveChlbGVtZW50KSB7XG4gIGlmICghZWxlbWVudCkgcmV0dXJuIGZhbHNlO1xuICByZXR1cm4gZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3JvbGUnKSA9PT0gJ2NvbWJvYm94JyAmJiBpc1R5cGVhYmxlRWxlbWVudChlbGVtZW50KTtcbn1cblxuZXhwb3J0IHsgVFlQRUFCTEVfU0VMRUNUT1IsIGFjdGl2ZUVsZW1lbnQsIGNvbnRhaW5zLCBnZXREb2N1bWVudCwgZ2V0UGxhdGZvcm0sIGdldFRhcmdldCwgZ2V0VXNlckFnZW50LCBpc0FuZHJvaWQsIGlzRXZlbnRUYXJnZXRXaXRoaW4sIGlzSlNET00sIGlzTWFjLCBpc01vdXNlTGlrZVBvaW50ZXJUeXBlLCBpc1JlYWN0RXZlbnQsIGlzUm9vdEVsZW1lbnQsIGlzU2FmYXJpLCBpc1R5cGVhYmxlQ29tYm9ib3gsIGlzVHlwZWFibGVFbGVtZW50LCBpc1ZpcnR1YWxDbGljaywgaXNWaXJ0dWFsUG9pbnRlckV2ZW50LCBzdG9wRXZlbnQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getComputedStyle: function() { return /* binding */ getComputedStyle; },\n/* harmony export */ getContainingBlock: function() { return /* binding */ getContainingBlock; },\n/* harmony export */ getDocumentElement: function() { return /* binding */ getDocumentElement; },\n/* harmony export */ getNearestOverflowAncestor: function() { return /* binding */ getNearestOverflowAncestor; },\n/* harmony export */ getNodeName: function() { return /* binding */ getNodeName; },\n/* harmony export */ getNodeScroll: function() { return /* binding */ getNodeScroll; },\n/* harmony export */ getOverflowAncestors: function() { return /* binding */ getOverflowAncestors; },\n/* harmony export */ getParentNode: function() { return /* binding */ getParentNode; },\n/* harmony export */ getWindow: function() { return /* binding */ getWindow; },\n/* harmony export */ isContainingBlock: function() { return /* binding */ isContainingBlock; },\n/* harmony export */ isElement: function() { return /* binding */ isElement; },\n/* harmony export */ isHTMLElement: function() { return /* binding */ isHTMLElement; },\n/* harmony export */ isLastTraversableNode: function() { return /* binding */ isLastTraversableNode; },\n/* harmony export */ isNode: function() { return /* binding */ isNode; },\n/* harmony export */ isOverflowElement: function() { return /* binding */ isOverflowElement; },\n/* harmony export */ isShadowRoot: function() { return /* binding */ isShadowRoot; },\n/* harmony export */ isTableElement: function() { return /* binding */ isTableElement; },\n/* harmony export */ isWebKit: function() { return /* binding */ isWebKit; }\n/* harmony export */ });\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n // Browsers without `ShadowRoot` support.\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);\n}\nfunction isTableElement(element) {\n return ['table', 'td', 'th'].includes(getNodeName(element));\n}\nfunction isContainingBlock(element) {\n const webkit = isWebKit();\n const css = getComputedStyle(element);\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n }\n currentNode = getParentNode(currentNode);\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nfunction isLastTraversableNode(node) {\n return ['html', 'body', '#document'].includes(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.pageXOffset,\n scrollTop: element.pageYOffset\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvdXRpbHMvZGlzdC9mbG9hdGluZy11aS51dGlscy5kb20ubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVtVCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGZsb2F0aW5nLXVpL3V0aWxzL2Rpc3QvZmxvYXRpbmctdWkudXRpbHMuZG9tLm1qcz80ZWQxIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGdldE5vZGVOYW1lKG5vZGUpIHtcbiAgaWYgKGlzTm9kZShub2RlKSkge1xuICAgIHJldHVybiAobm9kZS5ub2RlTmFtZSB8fCAnJykudG9Mb3dlckNhc2UoKTtcbiAgfVxuICAvLyBNb2NrZWQgbm9kZXMgaW4gdGVzdGluZyBlbnZpcm9ubWVudHMgbWF5IG5vdCBiZSBpbnN0YW5jZXMgb2YgTm9kZS4gQnlcbiAgLy8gcmV0dXJuaW5nIGAjZG9jdW1lbnRgIGFuIGluZmluaXRlIGxvb3Agd29uJ3Qgb2NjdXIuXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mbG9hdGluZy11aS9mbG9hdGluZy11aS9pc3N1ZXMvMjMxN1xuICByZXR1cm4gJyNkb2N1bWVudCc7XG59XG5mdW5jdGlvbiBnZXRXaW5kb3cobm9kZSkge1xuICB2YXIgX25vZGUkb3duZXJEb2N1bWVudDtcbiAgcmV0dXJuIChub2RlID09IG51bGwgfHwgKF9ub2RlJG93bmVyRG9jdW1lbnQgPSBub2RlLm93bmVyRG9jdW1lbnQpID09IG51bGwgPyB2b2lkIDAgOiBfbm9kZSRvd25lckRvY3VtZW50LmRlZmF1bHRWaWV3KSB8fCB3aW5kb3c7XG59XG5mdW5jdGlvbiBnZXREb2N1bWVudEVsZW1lbnQobm9kZSkge1xuICB2YXIgX3JlZjtcbiAgcmV0dXJuIChfcmVmID0gKGlzTm9kZShub2RlKSA/IG5vZGUub3duZXJEb2N1bWVudCA6IG5vZGUuZG9jdW1lbnQpIHx8IHdpbmRvdy5kb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9yZWYuZG9jdW1lbnRFbGVtZW50O1xufVxuZnVuY3Rpb24gaXNOb2RlKHZhbHVlKSB7XG4gIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIE5vZGUgfHwgdmFsdWUgaW5zdGFuY2VvZiBnZXRXaW5kb3codmFsdWUpLk5vZGU7XG59XG5mdW5jdGlvbiBpc0VsZW1lbnQodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRWxlbWVudCB8fCB2YWx1ZSBpbnN0YW5jZW9mIGdldFdpbmRvdyh2YWx1ZSkuRWxlbWVudDtcbn1cbmZ1bmN0aW9uIGlzSFRNTEVsZW1lbnQodmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgfHwgdmFsdWUgaW5zdGFuY2VvZiBnZXRXaW5kb3codmFsdWUpLkhUTUxFbGVtZW50O1xufVxuZnVuY3Rpb24gaXNTaGFkb3dSb290KHZhbHVlKSB7XG4gIC8vIEJyb3dzZXJzIHdpdGhvdXQgYFNoYWRvd1Jvb3RgIHN1cHBvcnQuXG4gIGlmICh0eXBlb2YgU2hhZG93Um9vdCA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgU2hhZG93Um9vdCB8fCB2YWx1ZSBpbnN0YW5jZW9mIGdldFdpbmRvdyh2YWx1ZSkuU2hhZG93Um9vdDtcbn1cbmZ1bmN0aW9uIGlzT3ZlcmZsb3dFbGVtZW50KGVsZW1lbnQpIHtcbiAgY29uc3Qge1xuICAgIG92ZXJmbG93LFxuICAgIG92ZXJmbG93WCxcbiAgICBvdmVyZmxvd1ksXG4gICAgZGlzcGxheVxuICB9ID0gZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcbiAgcmV0dXJuIC9hdXRvfHNjcm9sbHxvdmVybGF5fGhpZGRlbnxjbGlwLy50ZXN0KG92ZXJmbG93ICsgb3ZlcmZsb3dZICsgb3ZlcmZsb3dYKSAmJiAhWydpbmxpbmUnLCAnY29udGVudHMnXS5pbmNsdWRlcyhkaXNwbGF5KTtcbn1cbmZ1bmN0aW9uIGlzVGFibGVFbGVtZW50KGVsZW1lbnQpIHtcbiAgcmV0dXJuIFsndGFibGUnLCAndGQnLCAndGgnXS5pbmNsdWRlcyhnZXROb2RlTmFtZShlbGVtZW50KSk7XG59XG5mdW5jdGlvbiBpc0NvbnRhaW5pbmdCbG9jayhlbGVtZW50KSB7XG4gIGNvbnN0IHdlYmtpdCA9IGlzV2ViS2l0KCk7XG4gIGNvbnN0IGNzcyA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG5cbiAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0NvbnRhaW5pbmdfYmxvY2sjaWRlbnRpZnlpbmdfdGhlX2NvbnRhaW5pbmdfYmxvY2tcbiAgcmV0dXJuIGNzcy50cmFuc2Zvcm0gIT09ICdub25lJyB8fCBjc3MucGVyc3BlY3RpdmUgIT09ICdub25lJyB8fCAoY3NzLmNvbnRhaW5lclR5cGUgPyBjc3MuY29udGFpbmVyVHlwZSAhPT0gJ25vcm1hbCcgOiBmYWxzZSkgfHwgIXdlYmtpdCAmJiAoY3NzLmJhY2tkcm9wRmlsdGVyID8gY3NzLmJhY2tkcm9wRmlsdGVyICE9PSAnbm9uZScgOiBmYWxzZSkgfHwgIXdlYmtpdCAmJiAoY3NzLmZpbHRlciA/IGNzcy5maWx0ZXIgIT09ICdub25lJyA6IGZhbHNlKSB8fCBbJ3RyYW5zZm9ybScsICdwZXJzcGVjdGl2ZScsICdmaWx0ZXInXS5zb21lKHZhbHVlID0+IChjc3Mud2lsbENoYW5nZSB8fCAnJykuaW5jbHVkZXModmFsdWUpKSB8fCBbJ3BhaW50JywgJ2xheW91dCcsICdzdHJpY3QnLCAnY29udGVudCddLnNvbWUodmFsdWUgPT4gKGNzcy5jb250YWluIHx8ICcnKS5pbmNsdWRlcyh2YWx1ZSkpO1xufVxuZnVuY3Rpb24gZ2V0Q29udGFpbmluZ0Jsb2NrKGVsZW1lbnQpIHtcbiAgbGV0IGN1cnJlbnROb2RlID0gZ2V0UGFyZW50Tm9kZShlbGVtZW50KTtcbiAgd2hpbGUgKGlzSFRNTEVsZW1lbnQoY3VycmVudE5vZGUpICYmICFpc0xhc3RUcmF2ZXJzYWJsZU5vZGUoY3VycmVudE5vZGUpKSB7XG4gICAgaWYgKGlzQ29udGFpbmluZ0Jsb2NrKGN1cnJlbnROb2RlKSkge1xuICAgICAgcmV0dXJuIGN1cnJlbnROb2RlO1xuICAgIH1cbiAgICBjdXJyZW50Tm9kZSA9IGdldFBhcmVudE5vZGUoY3VycmVudE5vZGUpO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuZnVuY3Rpb24gaXNXZWJLaXQoKSB7XG4gIGlmICh0eXBlb2YgQ1NTID09PSAndW5kZWZpbmVkJyB8fCAhQ1NTLnN1cHBvcnRzKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiBDU1Muc3VwcG9ydHMoJy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyJywgJ25vbmUnKTtcbn1cbmZ1bmN0aW9uIGlzTGFzdFRyYXZlcnNhYmxlTm9kZShub2RlKSB7XG4gIHJldHVybiBbJ2h0bWwnLCAnYm9keScsICcjZG9jdW1lbnQnXS5pbmNsdWRlcyhnZXROb2RlTmFtZShub2RlKSk7XG59XG5mdW5jdGlvbiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpIHtcbiAgcmV0dXJuIGdldFdpbmRvdyhlbGVtZW50KS5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xufVxuZnVuY3Rpb24gZ2V0Tm9kZVNjcm9sbChlbGVtZW50KSB7XG4gIGlmIChpc0VsZW1lbnQoZWxlbWVudCkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgc2Nyb2xsTGVmdDogZWxlbWVudC5zY3JvbGxMZWZ0LFxuICAgICAgc2Nyb2xsVG9wOiBlbGVtZW50LnNjcm9sbFRvcFxuICAgIH07XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBzY3JvbGxMZWZ0OiBlbGVtZW50LnBhZ2VYT2Zmc2V0LFxuICAgIHNjcm9sbFRvcDogZWxlbWVudC5wYWdlWU9mZnNldFxuICB9O1xufVxuZnVuY3Rpb24gZ2V0UGFyZW50Tm9kZShub2RlKSB7XG4gIGlmIChnZXROb2RlTmFtZShub2RlKSA9PT0gJ2h0bWwnKSB7XG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID1cbiAgLy8gU3RlcCBpbnRvIHRoZSBzaGFkb3cgRE9NIG9mIHRoZSBwYXJlbnQgb2YgYSBzbG90dGVkIG5vZGUuXG4gIG5vZGUuYXNzaWduZWRTbG90IHx8XG4gIC8vIERPTSBFbGVtZW50IGRldGVjdGVkLlxuICBub2RlLnBhcmVudE5vZGUgfHxcbiAgLy8gU2hhZG93Um9vdCBkZXRlY3RlZC5cbiAgaXNTaGFkb3dSb290KG5vZGUpICYmIG5vZGUuaG9zdCB8fFxuICAvLyBGYWxsYmFjay5cbiAgZ2V0RG9jdW1lbnRFbGVtZW50KG5vZGUpO1xuICByZXR1cm4gaXNTaGFkb3dSb290KHJlc3VsdCkgPyByZXN1bHQuaG9zdCA6IHJlc3VsdDtcbn1cbmZ1bmN0aW9uIGdldE5lYXJlc3RPdmVyZmxvd0FuY2VzdG9yKG5vZGUpIHtcbiAgY29uc3QgcGFyZW50Tm9kZSA9IGdldFBhcmVudE5vZGUobm9kZSk7XG4gIGlmIChpc0xhc3RUcmF2ZXJzYWJsZU5vZGUocGFyZW50Tm9kZSkpIHtcbiAgICByZXR1cm4gbm9kZS5vd25lckRvY3VtZW50ID8gbm9kZS5vd25lckRvY3VtZW50LmJvZHkgOiBub2RlLmJvZHk7XG4gIH1cbiAgaWYgKGlzSFRNTEVsZW1lbnQocGFyZW50Tm9kZSkgJiYgaXNPdmVyZmxvd0VsZW1lbnQocGFyZW50Tm9kZSkpIHtcbiAgICByZXR1cm4gcGFyZW50Tm9kZTtcbiAgfVxuICByZXR1cm4gZ2V0TmVhcmVzdE92ZXJmbG93QW5jZXN0b3IocGFyZW50Tm9kZSk7XG59XG5mdW5jdGlvbiBnZXRPdmVyZmxvd0FuY2VzdG9ycyhub2RlLCBsaXN0LCB0cmF2ZXJzZUlmcmFtZXMpIHtcbiAgdmFyIF9ub2RlJG93bmVyRG9jdW1lbnQyO1xuICBpZiAobGlzdCA9PT0gdm9pZCAwKSB7XG4gICAgbGlzdCA9IFtdO1xuICB9XG4gIGlmICh0cmF2ZXJzZUlmcmFtZXMgPT09IHZvaWQgMCkge1xuICAgIHRyYXZlcnNlSWZyYW1lcyA9IHRydWU7XG4gIH1cbiAgY29uc3Qgc2Nyb2xsYWJsZUFuY2VzdG9yID0gZ2V0TmVhcmVzdE92ZXJmbG93QW5jZXN0b3Iobm9kZSk7XG4gIGNvbnN0IGlzQm9keSA9IHNjcm9sbGFibGVBbmNlc3RvciA9PT0gKChfbm9kZSRvd25lckRvY3VtZW50MiA9IG5vZGUub3duZXJEb2N1bWVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9ub2RlJG93bmVyRG9jdW1lbnQyLmJvZHkpO1xuICBjb25zdCB3aW4gPSBnZXRXaW5kb3coc2Nyb2xsYWJsZUFuY2VzdG9yKTtcbiAgaWYgKGlzQm9keSkge1xuICAgIHJldHVybiBsaXN0LmNvbmNhdCh3aW4sIHdpbi52aXN1YWxWaWV3cG9ydCB8fCBbXSwgaXNPdmVyZmxvd0VsZW1lbnQoc2Nyb2xsYWJsZUFuY2VzdG9yKSA/IHNjcm9sbGFibGVBbmNlc3RvciA6IFtdLCB3aW4uZnJhbWVFbGVtZW50ICYmIHRyYXZlcnNlSWZyYW1lcyA/IGdldE92ZXJmbG93QW5jZXN0b3JzKHdpbi5mcmFtZUVsZW1lbnQpIDogW10pO1xuICB9XG4gIHJldHVybiBsaXN0LmNvbmNhdChzY3JvbGxhYmxlQW5jZXN0b3IsIGdldE92ZXJmbG93QW5jZXN0b3JzKHNjcm9sbGFibGVBbmNlc3RvciwgW10sIHRyYXZlcnNlSWZyYW1lcykpO1xufVxuXG5leHBvcnQgeyBnZXRDb21wdXRlZFN0eWxlLCBnZXRDb250YWluaW5nQmxvY2ssIGdldERvY3VtZW50RWxlbWVudCwgZ2V0TmVhcmVzdE92ZXJmbG93QW5jZXN0b3IsIGdldE5vZGVOYW1lLCBnZXROb2RlU2Nyb2xsLCBnZXRPdmVyZmxvd0FuY2VzdG9ycywgZ2V0UGFyZW50Tm9kZSwgZ2V0V2luZG93LCBpc0NvbnRhaW5pbmdCbG9jaywgaXNFbGVtZW50LCBpc0hUTUxFbGVtZW50LCBpc0xhc3RUcmF2ZXJzYWJsZU5vZGUsIGlzTm9kZSwgaXNPdmVyZmxvd0VsZW1lbnQsIGlzU2hhZG93Um9vdCwgaXNUYWJsZUVsZW1lbnQsIGlzV2ViS2l0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ alignments: function() { return /* binding */ alignments; },\n/* harmony export */ clamp: function() { return /* binding */ clamp; },\n/* harmony export */ createCoords: function() { return /* binding */ createCoords; },\n/* harmony export */ evaluate: function() { return /* binding */ evaluate; },\n/* harmony export */ expandPaddingObject: function() { return /* binding */ expandPaddingObject; },\n/* harmony export */ floor: function() { return /* binding */ floor; },\n/* harmony export */ getAlignment: function() { return /* binding */ getAlignment; },\n/* harmony export */ getAlignmentAxis: function() { return /* binding */ getAlignmentAxis; },\n/* harmony export */ getAlignmentSides: function() { return /* binding */ getAlignmentSides; },\n/* harmony export */ getAxisLength: function() { return /* binding */ getAxisLength; },\n/* harmony export */ getExpandedPlacements: function() { return /* binding */ getExpandedPlacements; },\n/* harmony export */ getOppositeAlignmentPlacement: function() { return /* binding */ getOppositeAlignmentPlacement; },\n/* harmony export */ getOppositeAxis: function() { return /* binding */ getOppositeAxis; },\n/* harmony export */ getOppositeAxisPlacements: function() { return /* binding */ getOppositeAxisPlacements; },\n/* harmony export */ getOppositePlacement: function() { return /* binding */ getOppositePlacement; },\n/* harmony export */ getPaddingObject: function() { return /* binding */ getPaddingObject; },\n/* harmony export */ getSide: function() { return /* binding */ getSide; },\n/* harmony export */ getSideAxis: function() { return /* binding */ getSideAxis; },\n/* harmony export */ max: function() { return /* binding */ max; },\n/* harmony export */ min: function() { return /* binding */ min; },\n/* harmony export */ placements: function() { return /* binding */ placements; },\n/* harmony export */ rectToClientRect: function() { return /* binding */ rectToClientRect; },\n/* harmony export */ round: function() { return /* binding */ round; },\n/* harmony export */ sides: function() { return /* binding */ sides; }\n/* harmony export */ });\n/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvdXRpbHMvZGlzdC9mbG9hdGluZy11aS51dGlscy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxDQUFDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXlXIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AZmxvYXRpbmctdWkvdXRpbHMvZGlzdC9mbG9hdGluZy11aS51dGlscy5tanM/ZTQzYiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEN1c3RvbSBwb3NpdGlvbmluZyByZWZlcmVuY2UgZWxlbWVudC5cbiAqIEBzZWUgaHR0cHM6Ly9mbG9hdGluZy11aS5jb20vZG9jcy92aXJ0dWFsLWVsZW1lbnRzXG4gKi9cblxuY29uc3Qgc2lkZXMgPSBbJ3RvcCcsICdyaWdodCcsICdib3R0b20nLCAnbGVmdCddO1xuY29uc3QgYWxpZ25tZW50cyA9IFsnc3RhcnQnLCAnZW5kJ107XG5jb25zdCBwbGFjZW1lbnRzID0gLyojX19QVVJFX18qL3NpZGVzLnJlZHVjZSgoYWNjLCBzaWRlKSA9PiBhY2MuY29uY2F0KHNpZGUsIHNpZGUgKyBcIi1cIiArIGFsaWdubWVudHNbMF0sIHNpZGUgKyBcIi1cIiArIGFsaWdubWVudHNbMV0pLCBbXSk7XG5jb25zdCBtaW4gPSBNYXRoLm1pbjtcbmNvbnN0IG1heCA9IE1hdGgubWF4O1xuY29uc3Qgcm91bmQgPSBNYXRoLnJvdW5kO1xuY29uc3QgZmxvb3IgPSBNYXRoLmZsb29yO1xuY29uc3QgY3JlYXRlQ29vcmRzID0gdiA9PiAoe1xuICB4OiB2LFxuICB5OiB2XG59KTtcbmNvbnN0IG9wcG9zaXRlU2lkZU1hcCA9IHtcbiAgbGVmdDogJ3JpZ2h0JyxcbiAgcmlnaHQ6ICdsZWZ0JyxcbiAgYm90dG9tOiAndG9wJyxcbiAgdG9wOiAnYm90dG9tJ1xufTtcbmNvbnN0IG9wcG9zaXRlQWxpZ25tZW50TWFwID0ge1xuICBzdGFydDogJ2VuZCcsXG4gIGVuZDogJ3N0YXJ0J1xufTtcbmZ1bmN0aW9uIGNsYW1wKHN0YXJ0LCB2YWx1ZSwgZW5kKSB7XG4gIHJldHVybiBtYXgoc3RhcnQsIG1pbih2YWx1ZSwgZW5kKSk7XG59XG5mdW5jdGlvbiBldmFsdWF0ZSh2YWx1ZSwgcGFyYW0pIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJyA/IHZhbHVlKHBhcmFtKSA6IHZhbHVlO1xufVxuZnVuY3Rpb24gZ2V0U2lkZShwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5zcGxpdCgnLScpWzBdO1xufVxuZnVuY3Rpb24gZ2V0QWxpZ25tZW50KHBsYWNlbWVudCkge1xuICByZXR1cm4gcGxhY2VtZW50LnNwbGl0KCctJylbMV07XG59XG5mdW5jdGlvbiBnZXRPcHBvc2l0ZUF4aXMoYXhpcykge1xuICByZXR1cm4gYXhpcyA9PT0gJ3gnID8gJ3knIDogJ3gnO1xufVxuZnVuY3Rpb24gZ2V0QXhpc0xlbmd0aChheGlzKSB7XG4gIHJldHVybiBheGlzID09PSAneScgPyAnaGVpZ2h0JyA6ICd3aWR0aCc7XG59XG5mdW5jdGlvbiBnZXRTaWRlQXhpcyhwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIFsndG9wJywgJ2JvdHRvbSddLmluY2x1ZGVzKGdldFNpZGUocGxhY2VtZW50KSkgPyAneScgOiAneCc7XG59XG5mdW5jdGlvbiBnZXRBbGlnbm1lbnRBeGlzKHBsYWNlbWVudCkge1xuICByZXR1cm4gZ2V0T3Bwb3NpdGVBeGlzKGdldFNpZGVBeGlzKHBsYWNlbWVudCkpO1xufVxuZnVuY3Rpb24gZ2V0QWxpZ25tZW50U2lkZXMocGxhY2VtZW50LCByZWN0cywgcnRsKSB7XG4gIGlmIChydGwgPT09IHZvaWQgMCkge1xuICAgIHJ0bCA9IGZhbHNlO1xuICB9XG4gIGNvbnN0IGFsaWdubWVudCA9IGdldEFsaWdubWVudChwbGFjZW1lbnQpO1xuICBjb25zdCBhbGlnbm1lbnRBeGlzID0gZ2V0QWxpZ25tZW50QXhpcyhwbGFjZW1lbnQpO1xuICBjb25zdCBsZW5ndGggPSBnZXRBeGlzTGVuZ3RoKGFsaWdubWVudEF4aXMpO1xuICBsZXQgbWFpbkFsaWdubWVudFNpZGUgPSBhbGlnbm1lbnRBeGlzID09PSAneCcgPyBhbGlnbm1lbnQgPT09IChydGwgPyAnZW5kJyA6ICdzdGFydCcpID8gJ3JpZ2h0JyA6ICdsZWZ0JyA6IGFsaWdubWVudCA9PT0gJ3N0YXJ0JyA/ICdib3R0b20nIDogJ3RvcCc7XG4gIGlmIChyZWN0cy5yZWZlcmVuY2VbbGVuZ3RoXSA+IHJlY3RzLmZsb2F0aW5nW2xlbmd0aF0pIHtcbiAgICBtYWluQWxpZ25tZW50U2lkZSA9IGdldE9wcG9zaXRlUGxhY2VtZW50KG1haW5BbGlnbm1lbnRTaWRlKTtcbiAgfVxuICByZXR1cm4gW21haW5BbGlnbm1lbnRTaWRlLCBnZXRPcHBvc2l0ZVBsYWNlbWVudChtYWluQWxpZ25tZW50U2lkZSldO1xufVxuZnVuY3Rpb24gZ2V0RXhwYW5kZWRQbGFjZW1lbnRzKHBsYWNlbWVudCkge1xuICBjb25zdCBvcHBvc2l0ZVBsYWNlbWVudCA9IGdldE9wcG9zaXRlUGxhY2VtZW50KHBsYWNlbWVudCk7XG4gIHJldHVybiBbZ2V0T3Bwb3NpdGVBbGlnbm1lbnRQbGFjZW1lbnQocGxhY2VtZW50KSwgb3Bwb3NpdGVQbGFjZW1lbnQsIGdldE9wcG9zaXRlQWxpZ25tZW50UGxhY2VtZW50KG9wcG9zaXRlUGxhY2VtZW50KV07XG59XG5mdW5jdGlvbiBnZXRPcHBvc2l0ZUFsaWdubWVudFBsYWNlbWVudChwbGFjZW1lbnQpIHtcbiAgcmV0dXJuIHBsYWNlbWVudC5yZXBsYWNlKC9zdGFydHxlbmQvZywgYWxpZ25tZW50ID0+IG9wcG9zaXRlQWxpZ25tZW50TWFwW2FsaWdubWVudF0pO1xufVxuZnVuY3Rpb24gZ2V0U2lkZUxpc3Qoc2lkZSwgaXNTdGFydCwgcnRsKSB7XG4gIGNvbnN0IGxyID0gWydsZWZ0JywgJ3JpZ2h0J107XG4gIGNvbnN0IHJsID0gWydyaWdodCcsICdsZWZ0J107XG4gIGNvbnN0IHRiID0gWyd0b3AnLCAnYm90dG9tJ107XG4gIGNvbnN0IGJ0ID0gWydib3R0b20nLCAndG9wJ107XG4gIHN3aXRjaCAoc2lkZSkge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgY2FzZSAnYm90dG9tJzpcbiAgICAgIGlmIChydGwpIHJldHVybiBpc1N0YXJ0ID8gcmwgOiBscjtcbiAgICAgIHJldHVybiBpc1N0YXJ0ID8gbHIgOiBybDtcbiAgICBjYXNlICdsZWZ0JzpcbiAgICBjYXNlICdyaWdodCc6XG4gICAgICByZXR1cm4gaXNTdGFydCA/IHRiIDogYnQ7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBbXTtcbiAgfVxufVxuZnVuY3Rpb24gZ2V0T3Bwb3NpdGVBeGlzUGxhY2VtZW50cyhwbGFjZW1lbnQsIGZsaXBBbGlnbm1lbnQsIGRpcmVjdGlvbiwgcnRsKSB7XG4gIGNvbnN0IGFsaWdubWVudCA9IGdldEFsaWdubWVudChwbGFjZW1lbnQpO1xuICBsZXQgbGlzdCA9IGdldFNpZGVMaXN0KGdldFNpZGUocGxhY2VtZW50KSwgZGlyZWN0aW9uID09PSAnc3RhcnQnLCBydGwpO1xuICBpZiAoYWxpZ25tZW50KSB7XG4gICAgbGlzdCA9IGxpc3QubWFwKHNpZGUgPT4gc2lkZSArIFwiLVwiICsgYWxpZ25tZW50KTtcbiAgICBpZiAoZmxpcEFsaWdubWVudCkge1xuICAgICAgbGlzdCA9IGxpc3QuY29uY2F0KGxpc3QubWFwKGdldE9wcG9zaXRlQWxpZ25tZW50UGxhY2VtZW50KSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBsaXN0O1xufVxuZnVuY3Rpb24gZ2V0T3Bwb3NpdGVQbGFjZW1lbnQocGxhY2VtZW50KSB7XG4gIHJldHVybiBwbGFjZW1lbnQucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csIHNpZGUgPT4gb3Bwb3NpdGVTaWRlTWFwW3NpZGVdKTtcbn1cbmZ1bmN0aW9uIGV4cGFuZFBhZGRpbmdPYmplY3QocGFkZGluZykge1xuICByZXR1cm4ge1xuICAgIHRvcDogMCxcbiAgICByaWdodDogMCxcbiAgICBib3R0b206IDAsXG4gICAgbGVmdDogMCxcbiAgICAuLi5wYWRkaW5nXG4gIH07XG59XG5mdW5jdGlvbiBnZXRQYWRkaW5nT2JqZWN0KHBhZGRpbmcpIHtcbiAgcmV0dXJuIHR5cGVvZiBwYWRkaW5nICE9PSAnbnVtYmVyJyA/IGV4cGFuZFBhZGRpbmdPYmplY3QocGFkZGluZykgOiB7XG4gICAgdG9wOiBwYWRkaW5nLFxuICAgIHJpZ2h0OiBwYWRkaW5nLFxuICAgIGJvdHRvbTogcGFkZGluZyxcbiAgICBsZWZ0OiBwYWRkaW5nXG4gIH07XG59XG5mdW5jdGlvbiByZWN0VG9DbGllbnRSZWN0KHJlY3QpIHtcbiAgY29uc3Qge1xuICAgIHgsXG4gICAgeSxcbiAgICB3aWR0aCxcbiAgICBoZWlnaHRcbiAgfSA9IHJlY3Q7XG4gIHJldHVybiB7XG4gICAgd2lkdGgsXG4gICAgaGVpZ2h0LFxuICAgIHRvcDogeSxcbiAgICBsZWZ0OiB4LFxuICAgIHJpZ2h0OiB4ICsgd2lkdGgsXG4gICAgYm90dG9tOiB5ICsgaGVpZ2h0LFxuICAgIHgsXG4gICAgeVxuICB9O1xufVxuXG5leHBvcnQgeyBhbGlnbm1lbnRzLCBjbGFtcCwgY3JlYXRlQ29vcmRzLCBldmFsdWF0ZSwgZXhwYW5kUGFkZGluZ09iamVjdCwgZmxvb3IsIGdldEFsaWdubWVudCwgZ2V0QWxpZ25tZW50QXhpcywgZ2V0QWxpZ25tZW50U2lkZXMsIGdldEF4aXNMZW5ndGgsIGdldEV4cGFuZGVkUGxhY2VtZW50cywgZ2V0T3Bwb3NpdGVBbGlnbm1lbnRQbGFjZW1lbnQsIGdldE9wcG9zaXRlQXhpcywgZ2V0T3Bwb3NpdGVBeGlzUGxhY2VtZW50cywgZ2V0T3Bwb3NpdGVQbGFjZW1lbnQsIGdldFBhZGRpbmdPYmplY3QsIGdldFNpZGUsIGdldFNpZGVBeGlzLCBtYXgsIG1pbiwgcGxhY2VtZW50cywgcmVjdFRvQ2xpZW50UmVjdCwgcm91bmQsIHNpZGVzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/components/keyboard.js":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/components/keyboard.js ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Keys: function() { return /* binding */ o; }\n/* harmony export */ });\nvar o = ((r)=>(r.Space = \" \", r.Enter = \"Enter\", r.Escape = \"Escape\", r.Backspace = \"Backspace\", r.Delete = \"Delete\", r.ArrowLeft = \"ArrowLeft\", r.ArrowUp = \"ArrowUp\", r.ArrowRight = \"ArrowRight\", r.ArrowDown = \"ArrowDown\", r.Home = \"Home\", r.End = \"End\", r.PageUp = \"PageUp\", r.PageDown = \"PageDown\", r.Tab = \"Tab\", r))(o || {});\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2NvbXBvbmVudHMva2V5Ym9hcmQuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQUlBLElBQUUsQ0FBQ0MsQ0FBQUEsSUFBSUEsQ0FBQUEsRUFBRUMsS0FBSyxHQUFDLEtBQUlELEVBQUVFLEtBQUssR0FBQyxTQUFRRixFQUFFRyxNQUFNLEdBQUMsVUFBU0gsRUFBRUksU0FBUyxHQUFDLGFBQVlKLEVBQUVLLE1BQU0sR0FBQyxVQUFTTCxFQUFFTSxTQUFTLEdBQUMsYUFBWU4sRUFBRU8sT0FBTyxHQUFDLFdBQVVQLEVBQUVRLFVBQVUsR0FBQyxjQUFhUixFQUFFUyxTQUFTLEdBQUMsYUFBWVQsRUFBRVUsSUFBSSxHQUFDLFFBQU9WLEVBQUVXLEdBQUcsR0FBQyxPQUFNWCxFQUFFWSxNQUFNLEdBQUMsVUFBU1osRUFBRWEsUUFBUSxHQUFDLFlBQVdiLEVBQUVjLEdBQUcsR0FBQyxPQUFNZCxDQUFBQSxDQUFDLEVBQUdELEtBQUcsQ0FBQztBQUFxQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9jb21wb25lbnRzL2tleWJvYXJkLmpzPzZlNTQiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIG89KHI9PihyLlNwYWNlPVwiIFwiLHIuRW50ZXI9XCJFbnRlclwiLHIuRXNjYXBlPVwiRXNjYXBlXCIsci5CYWNrc3BhY2U9XCJCYWNrc3BhY2VcIixyLkRlbGV0ZT1cIkRlbGV0ZVwiLHIuQXJyb3dMZWZ0PVwiQXJyb3dMZWZ0XCIsci5BcnJvd1VwPVwiQXJyb3dVcFwiLHIuQXJyb3dSaWdodD1cIkFycm93UmlnaHRcIixyLkFycm93RG93bj1cIkFycm93RG93blwiLHIuSG9tZT1cIkhvbWVcIixyLkVuZD1cIkVuZFwiLHIuUGFnZVVwPVwiUGFnZVVwXCIsci5QYWdlRG93bj1cIlBhZ2VEb3duXCIsci5UYWI9XCJUYWJcIixyKSkob3x8e30pO2V4cG9ydHtvIGFzIEtleXN9O1xuIl0sIm5hbWVzIjpbIm8iLCJyIiwiU3BhY2UiLCJFbnRlciIsIkVzY2FwZSIsIkJhY2tzcGFjZSIsIkRlbGV0ZSIsIkFycm93TGVmdCIsIkFycm93VXAiLCJBcnJvd1JpZ2h0IiwiQXJyb3dEb3duIiwiSG9tZSIsIkVuZCIsIlBhZ2VVcCIsIlBhZ2VEb3duIiwiVGFiIiwiS2V5cyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/components/keyboard.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/components/popover/popover.js":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/components/popover/popover.js ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Popover: function() { return /* binding */ no; },\n/* harmony export */ PopoverBackdrop: function() { return /* binding */ At; },\n/* harmony export */ PopoverButton: function() { return /* binding */ gt; },\n/* harmony export */ PopoverGroup: function() { return /* binding */ Ct; },\n/* harmony export */ PopoverOverlay: function() { return /* binding */ St; },\n/* harmony export */ PopoverPanel: function() { return /* binding */ Rt; }\n/* harmony export */ });\n/* harmony import */ var _react_aria_focus__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @react-aria/focus */ \"(app-pages-browser)/./node_modules/@react-aria/focus/dist/useFocusRing.mjs\");\n/* harmony import */ var _react_aria_interactions__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @react-aria/interactions */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useHover.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../hooks/use-id.js */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _hooks_use_active_press_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../../hooks/use-active-press.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-active-press.js\");\n/* harmony import */ var _hooks_use_element_size_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../../hooks/use-element-size.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-element-size.js\");\n/* harmony import */ var _hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../hooks/use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n/* harmony import */ var _hooks_use_event_listener_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../hooks/use-event-listener.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event-listener.js\");\n/* harmony import */ var _hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../hooks/use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n/* harmony import */ var _hooks_use_latest_value_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../hooks/use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n/* harmony import */ var _hooks_use_on_disappear_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../../hooks/use-on-disappear.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-disappear.js\");\n/* harmony import */ var _hooks_use_outside_click_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../hooks/use-outside-click.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-outside-click.js\");\n/* harmony import */ var _hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../hooks/use-owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-owner.js\");\n/* harmony import */ var _hooks_use_resolve_button_type_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../hooks/use-resolve-button-type.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js\");\n/* harmony import */ var _hooks_use_root_containers_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../hooks/use-root-containers.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-root-containers.js\");\n/* harmony import */ var _hooks_use_scroll_lock_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../../hooks/use-scroll-lock.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js\");\n/* harmony import */ var _hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../hooks/use-sync-refs.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js\");\n/* harmony import */ var _hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../../hooks/use-tab-direction.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-tab-direction.js\");\n/* harmony import */ var _hooks_use_transition_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../hooks/use-transition.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-transition.js\");\n/* harmony import */ var _internal_close_provider_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../internal/close-provider.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/close-provider.js\");\n/* harmony import */ var _internal_floating_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../internal/floating.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/floating.js\");\n/* harmony import */ var _internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../../internal/hidden.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/hidden.js\");\n/* harmony import */ var _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../internal/open-closed.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/open-closed.js\");\n/* harmony import */ var _utils_bugs_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../utils/bugs.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/bugs.js\");\n/* harmony import */ var _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/focus-management.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/focus-management.js\");\n/* harmony import */ var _utils_match_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/match.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/match.js\");\n/* harmony import */ var _utils_owner_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../../utils/owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js\");\n/* harmony import */ var _utils_render_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../utils/render.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/render.js\");\n/* harmony import */ var _keyboard_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../keyboard.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/components/keyboard.js\");\n/* harmony import */ var _portal_portal_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../portal/portal.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/components/portal/portal.js\");\n/* __next_internal_client_entry_do_not_use__ Popover,PopoverBackdrop,PopoverButton,PopoverGroup,PopoverOverlay,PopoverPanel auto */ \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar nt = ((f)=>(f[f.Open = 0] = \"Open\", f[f.Closed = 1] = \"Closed\", f))(nt || {}), lt = ((u)=>(u[u.TogglePopover = 0] = \"TogglePopover\", u[u.ClosePopover = 1] = \"ClosePopover\", u[u.SetButton = 2] = \"SetButton\", u[u.SetButtonId = 3] = \"SetButtonId\", u[u.SetPanel = 4] = \"SetPanel\", u[u.SetPanelId = 5] = \"SetPanelId\", u))(lt || {});\nlet at = {\n [0]: (t)=>({\n ...t,\n popoverState: (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(t.popoverState, {\n [0]: 1,\n [1]: 0\n }),\n __demoMode: !1\n }),\n [1] (t) {\n return t.popoverState === 1 ? t : {\n ...t,\n popoverState: 1,\n __demoMode: !1\n };\n },\n [2] (t, a) {\n return t.button === a.button ? t : {\n ...t,\n button: a.button\n };\n },\n [3] (t, a) {\n return t.buttonId === a.buttonId ? t : {\n ...t,\n buttonId: a.buttonId\n };\n },\n [4] (t, a) {\n return t.panel === a.panel ? t : {\n ...t,\n panel: a.panel\n };\n },\n [5] (t, a) {\n return t.panelId === a.panelId ? t : {\n ...t,\n panelId: a.panelId\n };\n }\n}, Te = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nTe.displayName = \"PopoverContext\";\nfunction le(t) {\n let a = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(Te);\n if (a === null) {\n let f = new Error(`<${t} /> is missing a parent <Popover /> component.`);\n throw Error.captureStackTrace && Error.captureStackTrace(f, le), f;\n }\n return a;\n}\nlet ae = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nae.displayName = \"PopoverAPIContext\";\nfunction me(t) {\n let a = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(ae);\n if (a === null) {\n let f = new Error(`<${t} /> is missing a parent <Popover /> component.`);\n throw Error.captureStackTrace && Error.captureStackTrace(f, me), f;\n }\n return a;\n}\nlet ye = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nye.displayName = \"PopoverGroupContext\";\nfunction Fe() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(ye);\n}\n_c = Fe;\nlet pe = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\npe.displayName = \"PopoverPanelContext\";\nfunction pt() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(pe);\n}\nfunction st(t, a) {\n return (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(a.type, at, t, a);\n}\nlet ut = \"div\";\nfunction it(t, a) {\n var J;\n let { __demoMode: f = !1, ...C } = t, m = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), R = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(a, (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.optionalRef)((e)=>{\n m.current = e;\n })), u = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]), l = (0,react__WEBPACK_IMPORTED_MODULE_0__.useReducer)(st, {\n __demoMode: f,\n popoverState: f ? 0 : 1,\n buttons: u,\n button: null,\n buttonId: null,\n panel: null,\n panelId: null,\n beforePanelSentinel: /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)(),\n afterPanelSentinel: /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)(),\n afterButtonSentinel: /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)()\n }), [{ popoverState: c, button: P, buttonId: r, panel: i, panelId: B, beforePanelSentinel: y, afterPanelSentinel: I, afterButtonSentinel: d }, n] = l, v = (0,_hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__.useOwnerDocument)((J = m.current) != null ? J : P), _ = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>{\n if (!P || !i) return !1;\n for (let g of document.querySelectorAll(\"body > *\"))if (Number(g == null ? void 0 : g.contains(P)) ^ Number(g == null ? void 0 : g.contains(i))) return !0;\n let e = (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.getFocusableElements)(), s = e.indexOf(P), o = (s + e.length - 1) % e.length, p = (s + 1) % e.length, S = e[o], b = e[p];\n return !i.contains(S) && !i.contains(b);\n }, [\n P,\n i\n ]), F = (0,_hooks_use_latest_value_js__WEBPACK_IMPORTED_MODULE_5__.useLatestValue)(r), x = (0,_hooks_use_latest_value_js__WEBPACK_IMPORTED_MODULE_5__.useLatestValue)(B), W = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n buttonId: F,\n panelId: x,\n close: ()=>n({\n type: 1\n })\n }), [\n F,\n x,\n n\n ]), T = Fe(), D = T == null ? void 0 : T.registerPopover, N = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)(()=>{\n var e;\n return (e = T == null ? void 0 : T.isFocusWithinPopoverGroup()) != null ? e : (v == null ? void 0 : v.activeElement) && ((P == null ? void 0 : P.contains(v.activeElement)) || (i == null ? void 0 : i.contains(v.activeElement)));\n });\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>D == null ? void 0 : D(W), [\n D,\n W\n ]);\n let [M, j] = (0,_portal_portal_js__WEBPACK_IMPORTED_MODULE_7__.useNestedPortals)(), h = (0,_hooks_use_root_containers_js__WEBPACK_IMPORTED_MODULE_8__.useRootContainers)({\n mainTreeNodeRef: T == null ? void 0 : T.mainTreeNodeRef,\n portals: M,\n defaultContainers: [\n P,\n i\n ]\n });\n (0,_hooks_use_event_listener_js__WEBPACK_IMPORTED_MODULE_9__.useEventListener)(v == null ? void 0 : v.defaultView, \"focus\", (e)=>{\n var s, o, p, S, b, g;\n e.target !== window && e.target instanceof HTMLElement && c === 0 && (N() || P && i && (h.contains(e.target) || (o = (s = y.current) == null ? void 0 : s.contains) != null && o.call(s, e.target) || (S = (p = I.current) == null ? void 0 : p.contains) != null && S.call(p, e.target) || (g = (b = d.current) == null ? void 0 : b.contains) != null && g.call(b, e.target) || n({\n type: 1\n })));\n }, !0), (0,_hooks_use_outside_click_js__WEBPACK_IMPORTED_MODULE_10__.useOutsideClick)(c === 0, h.resolveContainers, (e, s)=>{\n n({\n type: 1\n }), (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.isFocusableElement)(s, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.FocusableMode.Loose) || (e.preventDefault(), P == null || P.focus());\n });\n let O = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((e)=>{\n n({\n type: 1\n });\n let s = (()=>e ? e instanceof HTMLElement ? e : \"current\" in e && e.current instanceof HTMLElement ? e.current : P : P)();\n s == null || s.focus();\n }), k = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n close: O,\n isPortalled: _\n }), [\n O,\n _\n ]), V = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n open: c === 0,\n close: O\n }), [\n c,\n O\n ]), $ = {\n ref: R\n };\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_floating_js__WEBPACK_IMPORTED_MODULE_11__.FloatingProvider, null, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(pe.Provider, {\n value: null\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(Te.Provider, {\n value: l\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(ae.Provider, {\n value: k\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_close_provider_js__WEBPACK_IMPORTED_MODULE_12__.CloseProvider, {\n value: O\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.OpenClosedProvider, {\n value: (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(c, {\n [0]: _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Open,\n [1]: _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Closed\n })\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(j, null, (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.render)({\n ourProps: $,\n theirProps: C,\n slot: V,\n defaultTag: ut,\n name: \"Popover\"\n }), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(h.MainTreeNode, null))))))));\n}\nlet dt = \"button\";\nfunction ft(t, a) {\n let f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)(), { id: C = `headlessui-popover-button-${f}`, disabled: m = !1, autoFocus: R = !1, ...u } = t, [l, c] = le(\"Popover.Button\"), { isPortalled: P } = me(\"Popover.Button\"), r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), i = `headlessui-focus-sentinel-${(0,react__WEBPACK_IMPORTED_MODULE_0__.useId)()}`, B = Fe(), y = B == null ? void 0 : B.closeOthers, d = pt() !== null;\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (!d) return c({\n type: 3,\n buttonId: C\n }), ()=>{\n c({\n type: 3,\n buttonId: null\n });\n };\n }, [\n d,\n C,\n c\n ]);\n let [n] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(()=>Symbol()), v = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(r, a, (0,_internal_floating_js__WEBPACK_IMPORTED_MODULE_11__.useFloatingReference)(), d ? null : (o)=>{\n if (o) l.buttons.current.push(n);\n else {\n let p = l.buttons.current.indexOf(n);\n p !== -1 && l.buttons.current.splice(p, 1);\n }\n l.buttons.current.length > 1 && console.warn(\"You are already using a <Popover.Button /> but only 1 <Popover.Button /> is supported.\"), o && c({\n type: 2,\n button: o\n });\n }), _ = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(r, a), F = (0,_hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__.useOwnerDocument)(r), x = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((o)=>{\n var p, S, b;\n if (d) {\n if (l.popoverState === 1) return;\n switch(o.key){\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Space:\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Enter:\n o.preventDefault(), (S = (p = o.target).click) == null || S.call(p), c({\n type: 1\n }), (b = l.button) == null || b.focus();\n break;\n }\n } else switch(o.key){\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Space:\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Enter:\n o.preventDefault(), o.stopPropagation(), l.popoverState === 1 && (y == null || y(l.buttonId)), c({\n type: 0\n });\n break;\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Escape:\n if (l.popoverState !== 0) return y == null ? void 0 : y(l.buttonId);\n if (!r.current || F != null && F.activeElement && !r.current.contains(F.activeElement)) return;\n o.preventDefault(), o.stopPropagation(), c({\n type: 1\n });\n break;\n }\n }), W = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((o)=>{\n d || o.key === _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Space && o.preventDefault();\n }), T = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((o)=>{\n var p, S;\n (0,_utils_bugs_js__WEBPACK_IMPORTED_MODULE_16__.isDisabledReactIssue7711)(o.currentTarget) || m || (d ? (c({\n type: 1\n }), (p = l.button) == null || p.focus()) : (o.preventDefault(), o.stopPropagation(), l.popoverState === 1 && (y == null || y(l.buttonId)), c({\n type: 0\n }), (S = l.button) == null || S.focus()));\n }), D = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((o)=>{\n o.preventDefault(), o.stopPropagation();\n }), { isFocusVisible: N, focusProps: M } = (0,_react_aria_focus__WEBPACK_IMPORTED_MODULE_17__.useFocusRing)({\n autoFocus: R\n }), { isHovered: j, hoverProps: h } = (0,_react_aria_interactions__WEBPACK_IMPORTED_MODULE_18__.useHover)({\n isDisabled: m\n }), { pressed: Q, pressProps: O } = (0,_hooks_use_active_press_js__WEBPACK_IMPORTED_MODULE_19__.useActivePress)({\n disabled: m\n }), k = l.popoverState === 0, V = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n open: k,\n active: Q || k,\n disabled: m,\n hover: j,\n focus: N,\n autofocus: R\n }), [\n k,\n j,\n N,\n Q,\n m,\n R\n ]), $ = (0,_hooks_use_resolve_button_type_js__WEBPACK_IMPORTED_MODULE_20__.useResolveButtonType)(t, r), J = d ? (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.mergeProps)({\n ref: _,\n type: $,\n onKeyDown: x,\n onClick: T,\n disabled: m || void 0,\n autoFocus: R\n }, M, h, O) : (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.mergeProps)({\n ref: v,\n id: l.buttonId,\n type: $,\n \"aria-expanded\": l.popoverState === 0,\n \"aria-controls\": l.panel ? l.panelId : void 0,\n disabled: m || void 0,\n autoFocus: R,\n onKeyDown: x,\n onKeyUp: W,\n onClick: T,\n onMouseDown: D\n }, M, h, O), e = (0,_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.useTabDirection)(), s = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)(()=>{\n let o = l.panel;\n if (!o) return;\n function p() {\n (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(e.current, {\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Forwards]: ()=>(0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(o, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.First),\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Backwards]: ()=>(0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(o, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.Last)\n }) === _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.FocusResult.Error && (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)((0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.getFocusableElements)().filter((b)=>b.dataset.headlessuiFocusGuard !== \"true\"), (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(e.current, {\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Forwards]: _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.Next,\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Backwards]: _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.Previous\n }), {\n relativeTo: l.button\n });\n }\n p();\n });\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.render)({\n ourProps: J,\n theirProps: u,\n slot: V,\n defaultTag: dt,\n name: \"Popover.Button\"\n }), k && !d && P && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.Hidden, {\n id: i,\n ref: l.afterButtonSentinel,\n features: _internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.HiddenFeatures.Focusable,\n \"data-headlessui-focus-guard\": !0,\n as: \"button\",\n type: \"button\",\n onFocus: s\n }));\n}\nlet Pt = \"div\", ct = _utils_render_js__WEBPACK_IMPORTED_MODULE_14__.RenderFeatures.RenderStrategy | _utils_render_js__WEBPACK_IMPORTED_MODULE_14__.RenderFeatures.Static;\nfunction Me(t, a) {\n let f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)(), { id: C = `headlessui-popover-backdrop-${f}`, transition: m = !1, ...R } = t, [{ popoverState: u }, l] = le(\"Popover.Backdrop\"), c = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), P = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(a, c), r = (0,_internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.useOpenClosed)(), [i, B] = (0,_hooks_use_transition_js__WEBPACK_IMPORTED_MODULE_23__.useTransition)(m, c, r !== null ? (r & _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Open) === _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Open : u === 0), y = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((n)=>{\n if ((0,_utils_bugs_js__WEBPACK_IMPORTED_MODULE_16__.isDisabledReactIssue7711)(n.currentTarget)) return n.preventDefault();\n l({\n type: 1\n });\n }), I = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n open: u === 0\n }), [\n u\n ]), d = {\n ref: P,\n id: C,\n \"aria-hidden\": !0,\n onClick: y,\n ...(0,_hooks_use_transition_js__WEBPACK_IMPORTED_MODULE_23__.transitionDataAttributes)(B)\n };\n return (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.render)({\n ourProps: d,\n theirProps: R,\n slot: I,\n defaultTag: Pt,\n features: ct,\n visible: i,\n name: \"Popover.Backdrop\"\n });\n}\n_c1 = Me;\nlet vt = \"div\", Tt = _utils_render_js__WEBPACK_IMPORTED_MODULE_14__.RenderFeatures.RenderStrategy | _utils_render_js__WEBPACK_IMPORTED_MODULE_14__.RenderFeatures.Static;\nfunction mt(t, a) {\n let f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)(), { id: C = `headlessui-popover-panel-${f}`, focus: m = !1, anchor: R, portal: u = !1, modal: l = !1, transition: c = !1, ...P } = t, [r, i] = le(\"Popover.Panel\"), { close: B, isPortalled: y } = me(\"Popover.Panel\"), I = `headlessui-focus-sentinel-before-${f}`, d = `headlessui-focus-sentinel-after-${f}`, n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), v = (0,_internal_floating_js__WEBPACK_IMPORTED_MODULE_11__.useResolvedAnchor)(R), [_, F] = (0,_internal_floating_js__WEBPACK_IMPORTED_MODULE_11__.useFloatingPanel)(v), x = (0,_internal_floating_js__WEBPACK_IMPORTED_MODULE_11__.useFloatingPanelProps)();\n v && (u = !0);\n let W = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(n, a, v ? _ : null, (e)=>{\n i({\n type: 4,\n panel: e\n });\n }), T = (0,_hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__.useOwnerDocument)(n), D = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.useMergeRefsFn)();\n (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_24__.useIsoMorphicEffect)(()=>(i({\n type: 5,\n panelId: C\n }), ()=>{\n i({\n type: 5,\n panelId: null\n });\n }), [\n C,\n i\n ]);\n let N = (0,_internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.useOpenClosed)(), [M, j] = (0,_hooks_use_transition_js__WEBPACK_IMPORTED_MODULE_23__.useTransition)(c, n, N !== null ? (N & _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Open) === _internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.State.Open : r.popoverState === 0);\n (0,_hooks_use_on_disappear_js__WEBPACK_IMPORTED_MODULE_25__.useOnDisappear)(M, r.button, ()=>{\n i({\n type: 1\n });\n });\n let h = r.__demoMode ? !1 : l && M;\n (0,_hooks_use_scroll_lock_js__WEBPACK_IMPORTED_MODULE_26__.useScrollLock)(h, T);\n let Q = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((e)=>{\n var s;\n switch(e.key){\n case _keyboard_js__WEBPACK_IMPORTED_MODULE_15__.Keys.Escape:\n if (r.popoverState !== 0 || !n.current || T != null && T.activeElement && !n.current.contains(T.activeElement)) return;\n e.preventDefault(), e.stopPropagation(), i({\n type: 1\n }), (s = r.button) == null || s.focus();\n break;\n }\n });\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n var e;\n t.static || r.popoverState === 1 && ((e = t.unmount) == null || e) && i({\n type: 4,\n panel: null\n });\n }, [\n r.popoverState,\n t.unmount,\n t.static,\n i\n ]), (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (r.__demoMode || !m || r.popoverState !== 0 || !n.current) return;\n let e = T == null ? void 0 : T.activeElement;\n n.current.contains(e) || (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(n.current, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.First);\n }, [\n r.__demoMode,\n m,\n n,\n r.popoverState\n ]);\n let O = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n open: r.popoverState === 0,\n close: B\n }), [\n r.popoverState,\n B\n ]), k = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.mergeProps)(v ? x() : {}, {\n ref: W,\n id: C,\n onKeyDown: Q,\n onBlur: m && r.popoverState === 0 ? (e)=>{\n var o, p, S, b, g;\n let s = e.relatedTarget;\n s && n.current && ((o = n.current) != null && o.contains(s) || (i({\n type: 1\n }), ((S = (p = r.beforePanelSentinel.current) == null ? void 0 : p.contains) != null && S.call(p, s) || (g = (b = r.afterPanelSentinel.current) == null ? void 0 : b.contains) != null && g.call(b, s)) && s.focus({\n preventScroll: !0\n })));\n } : void 0,\n tabIndex: -1,\n style: {\n ...P.style,\n ...F,\n \"--button-width\": (0,_hooks_use_element_size_js__WEBPACK_IMPORTED_MODULE_27__.useElementSize)(r.button, !0).width\n },\n ...(0,_hooks_use_transition_js__WEBPACK_IMPORTED_MODULE_23__.transitionDataAttributes)(j)\n }), V = (0,_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.useTabDirection)(), $ = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)(()=>{\n let e = n.current;\n if (!e) return;\n function s() {\n (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(V.current, {\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Forwards]: ()=>{\n var p;\n (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(e, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.First) === _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.FocusResult.Error && ((p = r.afterPanelSentinel.current) == null || p.focus());\n },\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Backwards]: ()=>{\n var o;\n (o = r.button) == null || o.focus({\n preventScroll: !0\n });\n }\n });\n }\n s();\n }), J = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)(()=>{\n let e = n.current;\n if (!e) return;\n function s() {\n (0,_utils_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(V.current, {\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Forwards]: ()=>{\n var Ee;\n if (!r.button) return;\n let o = (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.getFocusableElements)(), p = o.indexOf(r.button), S = o.slice(0, p + 1), g = [\n ...o.slice(p + 1),\n ...S\n ];\n for (let se of g.slice())if (se.dataset.headlessuiFocusGuard === \"true\" || (Ee = r.panel) != null && Ee.contains(se)) {\n let be = g.indexOf(se);\n be !== -1 && g.splice(be, 1);\n }\n (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(g, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.First, {\n sorted: !1\n });\n },\n [_hooks_use_tab_direction_js__WEBPACK_IMPORTED_MODULE_21__.Direction.Backwards]: ()=>{\n var p;\n (0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.focusIn)(e, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.Focus.Previous) === _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_4__.FocusResult.Error && ((p = r.button) == null || p.focus());\n }\n });\n }\n s();\n });\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_open_closed_js__WEBPACK_IMPORTED_MODULE_13__.ResetOpenClosedProvider, null, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(pe.Provider, {\n value: C\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(ae.Provider, {\n value: {\n close: B,\n isPortalled: y\n }\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_portal_portal_js__WEBPACK_IMPORTED_MODULE_7__.Portal, {\n enabled: u ? t.static || M : !1\n }, M && y && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.Hidden, {\n id: I,\n ref: r.beforePanelSentinel,\n features: _internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.HiddenFeatures.Focusable,\n \"data-headlessui-focus-guard\": !0,\n as: \"button\",\n type: \"button\",\n onFocus: $\n }), (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.render)({\n mergeRefs: D,\n ourProps: k,\n theirProps: P,\n slot: O,\n defaultTag: vt,\n features: Tt,\n visible: M,\n name: \"Popover.Panel\"\n }), M && y && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.Hidden, {\n id: d,\n ref: r.afterPanelSentinel,\n features: _internal_hidden_js__WEBPACK_IMPORTED_MODULE_22__.HiddenFeatures.Focusable,\n \"data-headlessui-focus-guard\": !0,\n as: \"button\",\n type: \"button\",\n onFocus: J\n })))));\n}\nlet yt = \"div\";\nfunction Et(t, a) {\n let f = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), C = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_2__.useSyncRefs)(f, a), [m, R] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]), u = (0,_hooks_use_root_containers_js__WEBPACK_IMPORTED_MODULE_8__.useMainTreeNode)(), l = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((d)=>{\n R((n)=>{\n let v = n.indexOf(d);\n if (v !== -1) {\n let _ = n.slice();\n return _.splice(v, 1), _;\n }\n return n;\n });\n }), c = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((d)=>(R((n)=>[\n ...n,\n d\n ]), ()=>l(d))), P = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)(()=>{\n var v;\n let d = (0,_utils_owner_js__WEBPACK_IMPORTED_MODULE_28__.getOwnerDocument)(f);\n if (!d) return !1;\n let n = d.activeElement;\n return (v = f.current) != null && v.contains(n) ? !0 : m.some((_)=>{\n var F, x;\n return ((F = d.getElementById(_.buttonId.current)) == null ? void 0 : F.contains(n)) || ((x = d.getElementById(_.panelId.current)) == null ? void 0 : x.contains(n));\n });\n }), r = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_6__.useEvent)((d)=>{\n for (let n of m)n.buttonId.current !== d && n.close();\n }), i = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n registerPopover: c,\n unregisterPopover: l,\n isFocusWithinPopoverGroup: P,\n closeOthers: r,\n mainTreeNodeRef: u.mainTreeNodeRef\n }), [\n c,\n l,\n P,\n r,\n u.mainTreeNodeRef\n ]), B = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({}), []), y = t, I = {\n ref: C\n };\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(ye.Provider, {\n value: i\n }, (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.render)({\n ourProps: I,\n theirProps: y,\n slot: B,\n defaultTag: yt,\n name: \"Popover.Group\"\n }), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(u.MainTreeNode, null));\n}\n_c2 = Et;\nlet bt = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(it), gt = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(ft), St = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(Me), At = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(Me), Rt = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(mt), Ct = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_14__.forwardRefWithAs)(Et), no = Object.assign(bt, {\n Button: gt,\n Backdrop: At,\n Overlay: St,\n Panel: Rt,\n Group: Ct\n});\n\nvar _c, _c1, _c2;\n$RefreshReg$(_c, \"Fe\");\n$RefreshReg$(_c1, \"Me\");\n$RefreshReg$(_c2, \"Et\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O29JQUErRDtBQUFxRDtBQUFvSjtBQUFrRTtBQUFrRTtBQUFvRDtBQUFzRTtBQUErQztBQUE2RTtBQUFrRTtBQUFrRTtBQUFvRTtBQUE2RDtBQUErRTtBQUE4RjtBQUFnRTtBQUE2RTtBQUFtRjtBQUE4RjtBQUFrRTtBQUFxSztBQUF3RTtBQUFpSTtBQUFnRTtBQUErSjtBQUE2QztBQUFrQztBQUF5RDtBQUFnSTtBQUFzQztBQUFxRTtBQUFBLElBQUl1SCxLQUFHLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsSUFBSSxHQUFDLEVBQUUsR0FBQyxRQUFPRCxDQUFDLENBQUNBLEVBQUVFLE1BQU0sR0FBQyxFQUFFLEdBQUMsVUFBU0YsQ0FBQUEsQ0FBQyxFQUFHRCxNQUFJLENBQUMsSUFBR0ksS0FBRyxDQUFDQyxDQUFBQSxJQUFJQSxDQUFBQSxDQUFDLENBQUNBLEVBQUVDLGFBQWEsR0FBQyxFQUFFLEdBQUMsaUJBQWdCRCxDQUFDLENBQUNBLEVBQUVFLFlBQVksR0FBQyxFQUFFLEdBQUMsZ0JBQWVGLENBQUMsQ0FBQ0EsRUFBRUcsU0FBUyxHQUFDLEVBQUUsR0FBQyxhQUFZSCxDQUFDLENBQUNBLEVBQUVJLFdBQVcsR0FBQyxFQUFFLEdBQUMsZUFBY0osQ0FBQyxDQUFDQSxFQUFFSyxRQUFRLEdBQUMsRUFBRSxHQUFDLFlBQVdMLENBQUMsQ0FBQ0EsRUFBRU0sVUFBVSxHQUFDLEVBQUUsR0FBQyxjQUFhTixDQUFBQSxDQUFDLEVBQUdELE1BQUksQ0FBQztBQUFHLElBQUlRLEtBQUc7SUFBQyxDQUFDLEVBQUUsRUFBQ0MsQ0FBQUEsSUFBSTtZQUFDLEdBQUdBLENBQUM7WUFBQ0MsY0FBYWpDLHNEQUFDQSxDQUFDZ0MsRUFBRUMsWUFBWSxFQUFDO2dCQUFDLENBQUMsRUFBRSxFQUFDO2dCQUFFLENBQUMsRUFBRSxFQUFDO1lBQUM7WUFBR0MsWUFBVyxDQUFDO1FBQUM7SUFBRyxDQUFDLEVBQUUsRUFBQ0YsQ0FBQztRQUFFLE9BQU9BLEVBQUVDLFlBQVksS0FBRyxJQUFFRCxJQUFFO1lBQUMsR0FBR0EsQ0FBQztZQUFDQyxjQUFhO1lBQUVDLFlBQVcsQ0FBQztRQUFDO0lBQUM7SUFBRSxDQUFDLEVBQUUsRUFBQ0YsQ0FBQyxFQUFDRyxDQUFDO1FBQUUsT0FBT0gsRUFBRUksTUFBTSxLQUFHRCxFQUFFQyxNQUFNLEdBQUNKLElBQUU7WUFBQyxHQUFHQSxDQUFDO1lBQUNJLFFBQU9ELEVBQUVDLE1BQU07UUFBQTtJQUFDO0lBQUUsQ0FBQyxFQUFFLEVBQUNKLENBQUMsRUFBQ0csQ0FBQztRQUFFLE9BQU9ILEVBQUVLLFFBQVEsS0FBR0YsRUFBRUUsUUFBUSxHQUFDTCxJQUFFO1lBQUMsR0FBR0EsQ0FBQztZQUFDSyxVQUFTRixFQUFFRSxRQUFRO1FBQUE7SUFBQztJQUFFLENBQUMsRUFBRSxFQUFDTCxDQUFDLEVBQUNHLENBQUM7UUFBRSxPQUFPSCxFQUFFTSxLQUFLLEtBQUdILEVBQUVHLEtBQUssR0FBQ04sSUFBRTtZQUFDLEdBQUdBLENBQUM7WUFBQ00sT0FBTUgsRUFBRUcsS0FBSztRQUFBO0lBQUM7SUFBRSxDQUFDLEVBQUUsRUFBQ04sQ0FBQyxFQUFDRyxDQUFDO1FBQUUsT0FBT0gsRUFBRU8sT0FBTyxLQUFHSixFQUFFSSxPQUFPLEdBQUNQLElBQUU7WUFBQyxHQUFHQSxDQUFDO1lBQUNPLFNBQVFKLEVBQUVJLE9BQU87UUFBQTtJQUFDO0FBQUMsR0FBRUMsbUJBQUd0SSxvREFBRUEsQ0FBQztBQUFNc0ksR0FBR0MsV0FBVyxHQUFDO0FBQWlCLFNBQVNDLEdBQUdWLENBQUM7SUFBRSxJQUFJRyxJQUFFN0gsaURBQUVBLENBQUNrSTtJQUFJLElBQUdMLE1BQUksTUFBSztRQUFDLElBQUlmLElBQUUsSUFBSXVCLE1BQU0sQ0FBQyxDQUFDLEVBQUVYLEVBQUUsOENBQThDLENBQUM7UUFBRSxNQUFNVyxNQUFNQyxpQkFBaUIsSUFBRUQsTUFBTUMsaUJBQWlCLENBQUN4QixHQUFFc0IsS0FBSXRCO0lBQUM7SUFBQyxPQUFPZTtBQUFDO0FBQUMsSUFBSVUsbUJBQUczSSxvREFBRUEsQ0FBQztBQUFNMkksR0FBR0osV0FBVyxHQUFDO0FBQW9CLFNBQVNLLEdBQUdkLENBQUM7SUFBRSxJQUFJRyxJQUFFN0gsaURBQUVBLENBQUN1STtJQUFJLElBQUdWLE1BQUksTUFBSztRQUFDLElBQUlmLElBQUUsSUFBSXVCLE1BQU0sQ0FBQyxDQUFDLEVBQUVYLEVBQUUsOENBQThDLENBQUM7UUFBRSxNQUFNVyxNQUFNQyxpQkFBaUIsSUFBRUQsTUFBTUMsaUJBQWlCLENBQUN4QixHQUFFMEIsS0FBSTFCO0lBQUM7SUFBQyxPQUFPZTtBQUFDO0FBQUMsSUFBSVksbUJBQUc3SSxvREFBRUEsQ0FBQztBQUFNNkksR0FBR04sV0FBVyxHQUFDO0FBQXNCLFNBQVNPO0lBQUssT0FBTzFJLGlEQUFFQSxDQUFDeUk7QUFBRztLQUFsQkM7QUFBbUIsSUFBSUMsbUJBQUcvSSxvREFBRUEsQ0FBQztBQUFNK0ksR0FBR1IsV0FBVyxHQUFDO0FBQXNCLFNBQVNTO0lBQUssT0FBTzVJLGlEQUFFQSxDQUFDMkk7QUFBRztBQUFDLFNBQVNFLEdBQUduQixDQUFDLEVBQUNHLENBQUM7SUFBRSxPQUFPbkMsc0RBQUNBLENBQUNtQyxFQUFFaUIsSUFBSSxFQUFDckIsSUFBR0MsR0FBRUc7QUFBRTtBQUFDLElBQUlrQixLQUFHO0FBQU0sU0FBU0MsR0FBR3RCLENBQUMsRUFBQ0csQ0FBQztJQUFFLElBQUlvQjtJQUFFLElBQUcsRUFBQ3JCLFlBQVdkLElBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBR29DLEdBQUUsR0FBQ3hCLEdBQUV5QixJQUFFM0ksNkNBQUNBLENBQUMsT0FBTTRJLElBQUUxRyxvRUFBQ0EsQ0FBQ21GLEdBQUVyRixvRUFBRUEsQ0FBQzZHLENBQUFBO1FBQUlGLEVBQUVHLE9BQU8sR0FBQ0Q7SUFBQyxLQUFJbkMsSUFBRTFHLDZDQUFDQSxDQUFDLEVBQUUsR0FBRStJLElBQUVqSixpREFBRUEsQ0FBQ3VJLElBQUc7UUFBQ2pCLFlBQVdkO1FBQUVhLGNBQWFiLElBQUUsSUFBRTtRQUFFMEMsU0FBUXRDO1FBQUVZLFFBQU87UUFBS0MsVUFBUztRQUFLQyxPQUFNO1FBQUtDLFNBQVE7UUFBS3dCLG1DQUFvQjNKLGdEQUFFQTtRQUFHNEosa0NBQW1CNUosZ0RBQUVBO1FBQUc2SixtQ0FBb0I3SixnREFBRUE7SUFBRSxJQUFHLENBQUMsRUFBQzZILGNBQWFpQyxDQUFDLEVBQUM5QixRQUFPK0IsQ0FBQyxFQUFDOUIsVUFBUytCLENBQUMsRUFBQzlCLE9BQU0rQixDQUFDLEVBQUM5QixTQUFRK0IsQ0FBQyxFQUFDUCxxQkFBb0JRLENBQUMsRUFBQ1Asb0JBQW1CUSxDQUFDLEVBQUNQLHFCQUFvQlEsQ0FBQyxFQUFDLEVBQUNDLEVBQUUsR0FBQ2IsR0FBRWMsSUFBRXZJLHFFQUFFQSxDQUFDLENBQUNtSCxJQUFFRSxFQUFFRyxPQUFPLEtBQUcsT0FBS0wsSUFBRVksSUFBR1MsSUFBRWxLLDhDQUFDQSxDQUFDO1FBQUssSUFBRyxDQUFDeUosS0FBRyxDQUFDRSxHQUFFLE9BQU0sQ0FBQztRQUFFLEtBQUksSUFBSVEsS0FBS0MsU0FBU0MsZ0JBQWdCLENBQUMsWUFBWSxJQUFHQyxPQUFPSCxLQUFHLE9BQUssS0FBSyxJQUFFQSxFQUFFSSxRQUFRLENBQUNkLE1BQUlhLE9BQU9ILEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVJLFFBQVEsQ0FBQ1osS0FBSSxPQUFNLENBQUM7UUFBRSxJQUFJVixJQUFFL0QsZ0ZBQUVBLElBQUdzRixJQUFFdkIsRUFBRXdCLE9BQU8sQ0FBQ2hCLElBQUdpQixJQUFFLENBQUNGLElBQUV2QixFQUFFMEIsTUFBTSxHQUFDLEtBQUcxQixFQUFFMEIsTUFBTSxFQUFDQyxJQUFFLENBQUNKLElBQUUsS0FBR3ZCLEVBQUUwQixNQUFNLEVBQUNFLElBQUU1QixDQUFDLENBQUN5QixFQUFFLEVBQUNJLElBQUU3QixDQUFDLENBQUMyQixFQUFFO1FBQUMsT0FBTSxDQUFDakIsRUFBRVksUUFBUSxDQUFDTSxNQUFJLENBQUNsQixFQUFFWSxRQUFRLENBQUNPO0lBQUUsR0FBRTtRQUFDckI7UUFBRUU7S0FBRSxHQUFFb0IsSUFBRTNKLDBFQUFFQSxDQUFDc0ksSUFBR3NCLElBQUU1SiwwRUFBRUEsQ0FBQ3dJLElBQUdxQixJQUFFakwsOENBQUNBLENBQUMsSUFBSztZQUFDMkgsVUFBU29EO1lBQUVsRCxTQUFRbUQ7WUFBRUUsT0FBTSxJQUFJbEIsRUFBRTtvQkFBQ3RCLE1BQUs7Z0JBQUM7UUFBRSxJQUFHO1FBQUNxQztRQUFFQztRQUFFaEI7S0FBRSxHQUFFbUIsSUFBRTdDLE1BQUs4QyxJQUFFRCxLQUFHLE9BQUssS0FBSyxJQUFFQSxFQUFFRSxlQUFlLEVBQUNDLElBQUUxSyw2REFBQ0EsQ0FBQztRQUFLLElBQUlxSTtRQUFFLE9BQU0sQ0FBQ0EsSUFBRWtDLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVJLHlCQUF5QixFQUFDLEtBQUksT0FBS3RDLElBQUUsQ0FBQ2dCLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUV1QixhQUFhLEtBQUksRUFBQy9CLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVjLFFBQVEsQ0FBQ04sRUFBRXVCLGFBQWEsTUFBSzdCLENBQUFBLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVZLFFBQVEsQ0FBQ04sRUFBRXVCLGFBQWEsRUFBQztJQUFFO0lBQUcxTCxnREFBRUEsQ0FBQyxJQUFJc0wsS0FBRyxPQUFLLEtBQUssSUFBRUEsRUFBRUgsSUFBRztRQUFDRztRQUFFSDtLQUFFO0lBQUUsSUFBRyxDQUFDUSxHQUFFQyxFQUFFLEdBQUNsRixtRUFBRUEsSUFBR21GLElBQUUzSixnRkFBRUEsQ0FBQztRQUFDNEosaUJBQWdCVCxLQUFHLE9BQUssS0FBSyxJQUFFQSxFQUFFUyxlQUFlO1FBQUNDLFNBQVFKO1FBQUVLLG1CQUFrQjtZQUFDckM7WUFBRUU7U0FBRTtJQUFBO0lBQUc3SSw4RUFBRUEsQ0FBQ21KLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUU4QixXQUFXLEVBQUMsU0FBUTlDLENBQUFBO1FBQUksSUFBSXVCLEdBQUVFLEdBQUVFLEdBQUVDLEdBQUVDLEdBQUVYO1FBQUVsQixFQUFFK0MsTUFBTSxLQUFHQyxVQUFRaEQsRUFBRStDLE1BQU0sWUFBWUUsZUFBYTFDLE1BQUksS0FBSThCLENBQUFBLE9BQUs3QixLQUFHRSxLQUFJZ0MsQ0FBQUEsRUFBRXBCLFFBQVEsQ0FBQ3RCLEVBQUUrQyxNQUFNLEtBQUcsQ0FBQ3RCLElBQUUsQ0FBQ0YsSUFBRVgsRUFBRVgsT0FBTyxLQUFHLE9BQUssS0FBSyxJQUFFc0IsRUFBRUQsUUFBUSxLQUFHLFFBQU1HLEVBQUV5QixJQUFJLENBQUMzQixHQUFFdkIsRUFBRStDLE1BQU0sS0FBRyxDQUFDbkIsSUFBRSxDQUFDRCxJQUFFZCxFQUFFWixPQUFPLEtBQUcsT0FBSyxLQUFLLElBQUUwQixFQUFFTCxRQUFRLEtBQUcsUUFBTU0sRUFBRXNCLElBQUksQ0FBQ3ZCLEdBQUUzQixFQUFFK0MsTUFBTSxLQUFHLENBQUM3QixJQUFFLENBQUNXLElBQUVmLEVBQUViLE9BQU8sS0FBRyxPQUFLLEtBQUssSUFBRTRCLEVBQUVQLFFBQVEsS0FBRyxRQUFNSixFQUFFZ0MsSUFBSSxDQUFDckIsR0FBRTdCLEVBQUUrQyxNQUFNLEtBQUdoQyxFQUFFO1lBQUN0QixNQUFLO1FBQUMsRUFBQyxDQUFDO0lBQUUsR0FBRSxDQUFDLElBQUdsSCw2RUFBRUEsQ0FBQ2dJLE1BQUksR0FBRW1DLEVBQUVTLGlCQUFpQixFQUFDLENBQUNuRCxHQUFFdUI7UUFBS1IsRUFBRTtZQUFDdEIsTUFBSztRQUFDLElBQUd0RCw4RUFBRUEsQ0FBQ29GLEdBQUUxRixxRUFBRUEsQ0FBQ3VILEtBQUssS0FBSXBELENBQUFBLEVBQUVxRCxjQUFjLElBQUc3QyxLQUFHLFFBQU1BLEVBQUU4QyxLQUFLLEVBQUM7SUFBRTtJQUFHLElBQUlDLElBQUU1TCw2REFBQ0EsQ0FBQ3FJLENBQUFBO1FBQUllLEVBQUU7WUFBQ3RCLE1BQUs7UUFBQztRQUFHLElBQUk4QixJQUFFLENBQUMsSUFBSXZCLElBQUVBLGFBQWFpRCxjQUFZakQsSUFBRSxhQUFZQSxLQUFHQSxFQUFFQyxPQUFPLFlBQVlnRCxjQUFZakQsRUFBRUMsT0FBTyxHQUFDTyxJQUFFQSxDQUFBQTtRQUFLZSxLQUFHLFFBQU1BLEVBQUUrQixLQUFLO0lBQUUsSUFBR0UsSUFBRXpNLDhDQUFDQSxDQUFDLElBQUs7WUFBQ2tMLE9BQU1zQjtZQUFFRSxhQUFZeEM7UUFBQyxJQUFHO1FBQUNzQztRQUFFdEM7S0FBRSxHQUFFeUMsSUFBRTNNLDhDQUFDQSxDQUFDLElBQUs7WUFBQzRNLE1BQUtwRCxNQUFJO1lBQUUwQixPQUFNc0I7UUFBQyxJQUFHO1FBQUNoRDtRQUFFZ0Q7S0FBRSxHQUFFSyxJQUFFO1FBQUNDLEtBQUk5RDtJQUFDO0lBQUUscUJBQU8xSixnREFBZSxDQUFDNEQsb0VBQUVBLEVBQUMsb0JBQUs1RCxnREFBZSxDQUFDaUosR0FBR3lFLFFBQVEsRUFBQztRQUFDQyxPQUFNO0lBQUksaUJBQUUzTixnREFBZSxDQUFDd0ksR0FBR2tGLFFBQVEsRUFBQztRQUFDQyxPQUFNOUQ7SUFBQyxpQkFBRTdKLGdEQUFlLENBQUM2SSxHQUFHNkUsUUFBUSxFQUFDO1FBQUNDLE9BQU1SO0lBQUMsaUJBQUVuTixnREFBZSxDQUFDMEQsdUVBQUVBLEVBQUM7UUFBQ2lLLE9BQU1UO0lBQUMsaUJBQUVsTixnREFBZSxDQUFDMEUseUVBQUVBLEVBQUM7UUFBQ2lKLE9BQU0zSCxzREFBQ0EsQ0FBQ2tFLEdBQUU7WUFBQyxDQUFDLEVBQUUsRUFBQ3BGLDREQUFDQSxDQUFDdUMsSUFBSTtZQUFDLENBQUMsRUFBRSxFQUFDdkMsNERBQUNBLENBQUN3QyxNQUFNO1FBQUE7SUFBRSxpQkFBRXRILGdEQUFlLENBQUNvTSxHQUFFLE1BQUsxRix5REFBQ0EsQ0FBQztRQUFDa0gsVUFBU0w7UUFBRU0sWUFBV3JFO1FBQUVzRSxNQUFLVDtRQUFFVSxZQUFXMUU7UUFBRzJFLE1BQUs7SUFBUyxrQkFBR2hPLGdEQUFlLENBQUNxTSxFQUFFNEIsWUFBWSxFQUFDO0FBQVk7QUFBQyxJQUFJQyxLQUFHO0FBQVMsU0FBU0MsR0FBR25HLENBQUMsRUFBQ0csQ0FBQztJQUFFLElBQUlmLElBQUUxRiw0Q0FBRUEsSUFBRyxFQUFDME0sSUFBRzVFLElBQUUsQ0FBQywwQkFBMEIsRUFBRXBDLEVBQUUsQ0FBQyxFQUFDaUgsVUFBUzVFLElBQUUsQ0FBQyxDQUFDLEVBQUM2RSxXQUFVNUUsSUFBRSxDQUFDLENBQUMsRUFBQyxHQUFHbEMsR0FBRSxHQUFDUSxHQUFFLENBQUM2QixHQUFFSyxFQUFFLEdBQUN4QixHQUFHLG1CQUFrQixFQUFDMEUsYUFBWWpELENBQUMsRUFBQyxHQUFDckIsR0FBRyxtQkFBa0JzQixJQUFFdEosNkNBQUNBLENBQUMsT0FBTXVKLElBQUUsQ0FBQywwQkFBMEIsRUFBRTNJLDRDQUFFQSxHQUFHLENBQUMsRUFBQzRJLElBQUV0QixNQUFLdUIsSUFBRUQsS0FBRyxPQUFLLEtBQUssSUFBRUEsRUFBRWlFLFdBQVcsRUFBQzlELElBQUV2QixTQUFPO0lBQUsxSSxnREFBRUEsQ0FBQztRQUFLLElBQUcsQ0FBQ2lLLEdBQUUsT0FBT1AsRUFBRTtZQUFDZCxNQUFLO1lBQUVmLFVBQVNtQjtRQUFDLElBQUc7WUFBS1UsRUFBRTtnQkFBQ2QsTUFBSztnQkFBRWYsVUFBUztZQUFJO1FBQUU7SUFBQyxHQUFFO1FBQUNvQztRQUFFakI7UUFBRVU7S0FBRTtJQUFFLElBQUcsQ0FBQ1EsRUFBRSxHQUFDMUosK0NBQUVBLENBQUMsSUFBSXdOLFdBQVU3RCxJQUFFM0gsb0VBQUNBLENBQUNvSCxHQUFFakMsR0FBRWpFLDRFQUFFQSxJQUFHdUcsSUFBRSxPQUFLVyxDQUFBQTtRQUFJLElBQUdBLEdBQUV2QixFQUFFQyxPQUFPLENBQUNGLE9BQU8sQ0FBQzZFLElBQUksQ0FBQy9EO2FBQU87WUFBQyxJQUFJWSxJQUFFekIsRUFBRUMsT0FBTyxDQUFDRixPQUFPLENBQUN1QixPQUFPLENBQUNUO1lBQUdZLE1BQUksQ0FBQyxLQUFHekIsRUFBRUMsT0FBTyxDQUFDRixPQUFPLENBQUM4RSxNQUFNLENBQUNwRCxHQUFFO1FBQUU7UUFBQ3pCLEVBQUVDLE9BQU8sQ0FBQ0YsT0FBTyxDQUFDeUIsTUFBTSxHQUFDLEtBQUdzRCxRQUFRQyxJQUFJLENBQUMsMkZBQTBGeEQsS0FBR2xCLEVBQUU7WUFBQ2QsTUFBSztZQUFFaEIsUUFBT2dEO1FBQUM7SUFBRSxJQUFHUixJQUFFNUgsb0VBQUNBLENBQUNvSCxHQUFFakMsSUFBR3NELElBQUVySixxRUFBRUEsQ0FBQ2dJLElBQUdzQixJQUFFcEssNkRBQUNBLENBQUM4SixDQUFBQTtRQUFJLElBQUlFLEdBQUVDLEdBQUVDO1FBQUUsSUFBR2YsR0FBRTtZQUFDLElBQUdaLEVBQUU1QixZQUFZLEtBQUcsR0FBRTtZQUFPLE9BQU9tRCxFQUFFeUQsR0FBRztnQkFBRSxLQUFLL0gsK0NBQUNBLENBQUNnSSxLQUFLO2dCQUFDLEtBQUtoSSwrQ0FBQ0EsQ0FBQ2lJLEtBQUs7b0JBQUMzRCxFQUFFNEIsY0FBYyxJQUFHLENBQUN6QixJQUFFLENBQUNELElBQUVGLEVBQUVzQixNQUFNLEVBQUVzQyxLQUFLLEtBQUcsUUFBTXpELEVBQUVzQixJQUFJLENBQUN2QixJQUFHcEIsRUFBRTt3QkFBQ2QsTUFBSztvQkFBQyxJQUFHLENBQUNvQyxJQUFFM0IsRUFBRXpCLE1BQU0sS0FBRyxRQUFNb0QsRUFBRXlCLEtBQUs7b0JBQUc7WUFBSztRQUFDLE9BQU0sT0FBTzdCLEVBQUV5RCxHQUFHO1lBQUUsS0FBSy9ILCtDQUFDQSxDQUFDZ0ksS0FBSztZQUFDLEtBQUtoSSwrQ0FBQ0EsQ0FBQ2lJLEtBQUs7Z0JBQUMzRCxFQUFFNEIsY0FBYyxJQUFHNUIsRUFBRTZELGVBQWUsSUFBR3BGLEVBQUU1QixZQUFZLEtBQUcsS0FBSXNDLENBQUFBLEtBQUcsUUFBTUEsRUFBRVYsRUFBRXhCLFFBQVEsSUFBRzZCLEVBQUU7b0JBQUNkLE1BQUs7Z0JBQUM7Z0JBQUc7WUFBTSxLQUFLdEMsK0NBQUNBLENBQUNvSSxNQUFNO2dCQUFDLElBQUdyRixFQUFFNUIsWUFBWSxLQUFHLEdBQUUsT0FBT3NDLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVWLEVBQUV4QixRQUFRO2dCQUFFLElBQUcsQ0FBQytCLEVBQUVSLE9BQU8sSUFBRTZCLEtBQUcsUUFBTUEsRUFBRVMsYUFBYSxJQUFFLENBQUM5QixFQUFFUixPQUFPLENBQUNxQixRQUFRLENBQUNRLEVBQUVTLGFBQWEsR0FBRTtnQkFBT2QsRUFBRTRCLGNBQWMsSUFBRzVCLEVBQUU2RCxlQUFlLElBQUcvRSxFQUFFO29CQUFDZCxNQUFLO2dCQUFDO2dCQUFHO1FBQUs7SUFBQyxJQUFHdUMsSUFBRXJLLDZEQUFDQSxDQUFDOEosQ0FBQUE7UUFBSVgsS0FBR1csRUFBRXlELEdBQUcsS0FBRy9ILCtDQUFDQSxDQUFDZ0ksS0FBSyxJQUFFMUQsRUFBRTRCLGNBQWM7SUFBRSxJQUFHbkIsSUFBRXZLLDZEQUFDQSxDQUFDOEosQ0FBQUE7UUFBSSxJQUFJRSxHQUFFQztRQUFFckcseUVBQUVBLENBQUNrRyxFQUFFK0QsYUFBYSxLQUFHMUYsS0FBSWdCLENBQUFBLElBQUdQLENBQUFBLEVBQUU7WUFBQ2QsTUFBSztRQUFDLElBQUcsQ0FBQ2tDLElBQUV6QixFQUFFekIsTUFBTSxLQUFHLFFBQU1rRCxFQUFFMkIsS0FBSyxFQUFDLElBQUk3QixDQUFBQSxFQUFFNEIsY0FBYyxJQUFHNUIsRUFBRTZELGVBQWUsSUFBR3BGLEVBQUU1QixZQUFZLEtBQUcsS0FBSXNDLENBQUFBLEtBQUcsUUFBTUEsRUFBRVYsRUFBRXhCLFFBQVEsSUFBRzZCLEVBQUU7WUFBQ2QsTUFBSztRQUFDLElBQUcsQ0FBQ21DLElBQUUxQixFQUFFekIsTUFBTSxLQUFHLFFBQU1tRCxFQUFFMEIsS0FBSyxFQUFDLENBQUM7SUFBRSxJQUFHbkIsSUFBRXhLLDZEQUFDQSxDQUFDOEosQ0FBQUE7UUFBSUEsRUFBRTRCLGNBQWMsSUFBRzVCLEVBQUU2RCxlQUFlO0lBQUUsSUFBRyxFQUFDRyxnQkFBZXBELENBQUMsRUFBQ3FELFlBQVdsRCxDQUFDLEVBQUMsR0FBQ3RNLGdFQUFFQSxDQUFDO1FBQUN5TyxXQUFVNUU7SUFBQyxJQUFHLEVBQUM0RixXQUFVbEQsQ0FBQyxFQUFDbUQsWUFBV2xELENBQUMsRUFBQyxHQUFDdE0sbUVBQUVBLENBQUM7UUFBQ3lQLFlBQVcvRjtJQUFDLElBQUcsRUFBQ2dHLFNBQVFDLENBQUMsRUFBQ0MsWUFBV3pDLENBQUMsRUFBQyxHQUFDaE0sMkVBQUVBLENBQUM7UUFBQ21OLFVBQVM1RTtJQUFDLElBQUcwRCxJQUFFdEQsRUFBRTVCLFlBQVksS0FBRyxHQUFFb0YsSUFBRTNNLDhDQUFDQSxDQUFDLElBQUs7WUFBQzRNLE1BQUtIO1lBQUV5QyxRQUFPRixLQUFHdkM7WUFBRWtCLFVBQVM1RTtZQUFFb0csT0FBTXpEO1lBQUVhLE9BQU1qQjtZQUFFOEQsV0FBVXBHO1FBQUMsSUFBRztRQUFDeUQ7UUFBRWY7UUFBRUo7UUFBRTBEO1FBQUVqRztRQUFFQztLQUFFLEdBQUU2RCxJQUFFakwsd0ZBQUVBLENBQUMwRixHQUFFb0MsSUFBR2IsSUFBRWtCLElBQUVqRSw2REFBRUEsQ0FBQztRQUFDZ0gsS0FBSTVDO1FBQUV4QixNQUFLbUU7UUFBRXdDLFdBQVVyRTtRQUFFc0UsU0FBUW5FO1FBQUV3QyxVQUFTNUUsS0FBRyxLQUFLO1FBQUU2RSxXQUFVNUU7SUFBQyxHQUFFeUMsR0FBRUUsR0FBRWEsS0FBRzFHLDZEQUFFQSxDQUFDO1FBQUNnSCxLQUFJN0M7UUFBRXlELElBQUd2RSxFQUFFeEIsUUFBUTtRQUFDZSxNQUFLbUU7UUFBRSxpQkFBZ0IxRCxFQUFFNUIsWUFBWSxLQUFHO1FBQUUsaUJBQWdCNEIsRUFBRXZCLEtBQUssR0FBQ3VCLEVBQUV0QixPQUFPLEdBQUMsS0FBSztRQUFFOEYsVUFBUzVFLEtBQUcsS0FBSztRQUFFNkUsV0FBVTVFO1FBQUVxRyxXQUFVckU7UUFBRXVFLFNBQVF0RTtRQUFFcUUsU0FBUW5FO1FBQUVxRSxhQUFZcEU7SUFBQyxHQUFFSyxHQUFFRSxHQUFFYSxJQUFHdkQsSUFBRXZHLDZFQUFFQSxJQUFHOEgsSUFBRTVKLDZEQUFDQSxDQUFDO1FBQUssSUFBSThKLElBQUV2QixFQUFFdkIsS0FBSztRQUFDLElBQUcsQ0FBQzhDLEdBQUU7UUFBTyxTQUFTRTtZQUFJdEYsc0RBQUNBLENBQUMyRCxFQUFFQyxPQUFPLEVBQUM7Z0JBQUMsQ0FBQzFHLG1FQUFDQSxDQUFDaU4sUUFBUSxDQUFDLEVBQUMsSUFBSXpLLG1FQUFDQSxDQUFDMEYsR0FBRWhHLDZEQUFDQSxDQUFDZ0wsS0FBSztnQkFBRSxDQUFDbE4sbUVBQUNBLENBQUNtTixTQUFTLENBQUMsRUFBQyxJQUFJM0ssbUVBQUNBLENBQUMwRixHQUFFaEcsNkRBQUNBLENBQUNrTCxJQUFJO1lBQUMsT0FBS2hMLG1FQUFFQSxDQUFDcUQsS0FBSyxJQUFFakQsbUVBQUNBLENBQUNFLGdGQUFFQSxHQUFHMkssTUFBTSxDQUFDL0UsQ0FBQUEsSUFBR0EsRUFBRWdGLE9BQU8sQ0FBQ0Msb0JBQW9CLEtBQUcsU0FBUXpLLHNEQUFDQSxDQUFDMkQsRUFBRUMsT0FBTyxFQUFDO2dCQUFDLENBQUMxRyxtRUFBQ0EsQ0FBQ2lOLFFBQVEsQ0FBQyxFQUFDL0ssNkRBQUNBLENBQUNzTCxJQUFJO2dCQUFDLENBQUN4TixtRUFBQ0EsQ0FBQ21OLFNBQVMsQ0FBQyxFQUFDakwsNkRBQUNBLENBQUN1TCxRQUFRO1lBQUEsSUFBRztnQkFBQ0MsWUFBVy9HLEVBQUV6QixNQUFNO1lBQUE7UUFBRTtRQUFDa0Q7SUFBRztJQUFHLHFCQUFPdEwsZ0RBQWUsQ0FBQ0EsMkNBQVUsRUFBQyxNQUFLMEcseURBQUNBLENBQUM7UUFBQ2tILFVBQVNyRTtRQUFFc0UsWUFBV3JHO1FBQUVzRyxNQUFLVDtRQUFFVSxZQUFXRztRQUFHRixNQUFLO0lBQWdCLElBQUdiLEtBQUcsQ0FBQzFDLEtBQUdOLG1CQUFHbkssZ0RBQWUsQ0FBQ3NFLHdEQUFFQSxFQUFDO1FBQUM4SixJQUFHL0Q7UUFBRW1ELEtBQUkzRCxFQUFFSSxtQkFBbUI7UUFBQzZHLFVBQVN0TSxnRUFBRUEsQ0FBQ3VNLFNBQVM7UUFBQywrQkFBOEIsQ0FBQztRQUFFQyxJQUFHO1FBQVM1SCxNQUFLO1FBQVM2SCxTQUFRL0Y7SUFBQztBQUFHO0FBQUMsSUFBSWdHLEtBQUcsT0FBTUMsS0FBRy9LLDZEQUFFQSxDQUFDZ0wsY0FBYyxHQUFDaEwsNkRBQUVBLENBQUNpTCxNQUFNO0FBQUMsU0FBU0MsR0FBR3RKLENBQUMsRUFBQ0csQ0FBQztJQUFFLElBQUlmLElBQUUxRiw0Q0FBRUEsSUFBRyxFQUFDME0sSUFBRzVFLElBQUUsQ0FBQyw0QkFBNEIsRUFBRXBDLEVBQUUsQ0FBQyxFQUFDbUssWUFBVzlILElBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBR0MsR0FBRSxHQUFDMUIsR0FBRSxDQUFDLEVBQUNDLGNBQWFULENBQUMsRUFBQyxFQUFDcUMsRUFBRSxHQUFDbkIsR0FBRyxxQkFBb0J3QixJQUFFcEosNkNBQUNBLENBQUMsT0FBTXFKLElBQUVuSCxvRUFBQ0EsQ0FBQ21GLEdBQUUrQixJQUFHRSxJQUFFcEYsd0VBQUVBLElBQUcsQ0FBQ3FGLEdBQUVDLEVBQUUsR0FBQzlHLHdFQUFFQSxDQUFDaUcsR0FBRVMsR0FBRUUsTUFBSSxPQUFLLENBQUNBLElBQUV0Riw0REFBQ0EsQ0FBQ3VDLElBQUksTUFBSXZDLDREQUFDQSxDQUFDdUMsSUFBSSxHQUFDRyxNQUFJLElBQUcrQyxJQUFFakosNkRBQUNBLENBQUNvSixDQUFBQTtRQUFJLElBQUd4Rix5RUFBRUEsQ0FBQ3dGLEVBQUV5RSxhQUFhLEdBQUUsT0FBT3pFLEVBQUVzQyxjQUFjO1FBQUduRCxFQUFFO1lBQUNULE1BQUs7UUFBQztJQUFFLElBQUdvQixJQUFFOUosOENBQUNBLENBQUMsSUFBSztZQUFDNE0sTUFBSzlGLE1BQUk7UUFBQyxJQUFHO1FBQUNBO0tBQUUsR0FBRWlELElBQUU7UUFBQytDLEtBQUlyRDtRQUFFaUUsSUFBRzVFO1FBQUUsZUFBYyxDQUFDO1FBQUV3RyxTQUFRekY7UUFBRSxHQUFHakgsbUZBQUVBLENBQUNnSCxFQUFFO0lBQUE7SUFBRSxPQUFPNUQseURBQUNBLENBQUM7UUFBQ2tILFVBQVNuRDtRQUFFb0QsWUFBV25FO1FBQUVvRSxNQUFLdEQ7UUFBRXVELFlBQVdtRDtRQUFHSixVQUFTSztRQUFHSyxTQUFRbkg7UUFBRTJELE1BQUs7SUFBa0I7QUFBRTtNQUF2Y3NEO0FBQXdjLElBQUlHLEtBQUcsT0FBTUMsS0FBR3RMLDZEQUFFQSxDQUFDZ0wsY0FBYyxHQUFDaEwsNkRBQUVBLENBQUNpTCxNQUFNO0FBQUMsU0FBU00sR0FBRzNKLENBQUMsRUFBQ0csQ0FBQztJQUFFLElBQUlmLElBQUUxRiw0Q0FBRUEsSUFBRyxFQUFDME0sSUFBRzVFLElBQUUsQ0FBQyx5QkFBeUIsRUFBRXBDLEVBQUUsQ0FBQyxFQUFDNkYsT0FBTXhELElBQUUsQ0FBQyxDQUFDLEVBQUNtSSxRQUFPbEksQ0FBQyxFQUFDbUksUUFBT3JLLElBQUUsQ0FBQyxDQUFDLEVBQUNzSyxPQUFNakksSUFBRSxDQUFDLENBQUMsRUFBQzBILFlBQVdySCxJQUFFLENBQUMsQ0FBQyxFQUFDLEdBQUdDLEdBQUUsR0FBQ25DLEdBQUUsQ0FBQ29DLEdBQUVDLEVBQUUsR0FBQzNCLEdBQUcsa0JBQWlCLEVBQUNrRCxPQUFNdEIsQ0FBQyxFQUFDOEMsYUFBWTdDLENBQUMsRUFBQyxHQUFDekIsR0FBRyxrQkFBaUIwQixJQUFFLENBQUMsaUNBQWlDLEVBQUVwRCxFQUFFLENBQUMsRUFBQ3FELElBQUUsQ0FBQyxnQ0FBZ0MsRUFBRXJELEVBQUUsQ0FBQyxFQUFDc0QsSUFBRTVKLDZDQUFDQSxDQUFDLE9BQU02SixJQUFFdkcseUVBQUVBLENBQUNzRixJQUFHLENBQUNrQixHQUFFYSxFQUFFLEdBQUMzSCx3RUFBRUEsQ0FBQzZHLElBQUdlLElBQUUxSCw2RUFBRUE7SUFBRzJHLEtBQUluRCxDQUFBQSxJQUFFLENBQUM7SUFBRyxJQUFJbUUsSUFBRTNJLG9FQUFDQSxDQUFDMEgsR0FBRXZDLEdBQUV3QyxJQUFFQyxJQUFFLE1BQUtqQixDQUFBQTtRQUFJVSxFQUFFO1lBQUNqQixNQUFLO1lBQUVkLE9BQU1xQjtRQUFDO0lBQUUsSUFBR2tDLElBQUV6SixxRUFBRUEsQ0FBQ3NJLElBQUdvQixJQUFFbEYsaUVBQUVBO0lBQUdoRixzRkFBRUEsQ0FBQyxJQUFLeUksQ0FBQUEsRUFBRTtZQUFDakIsTUFBSztZQUFFYixTQUFRaUI7UUFBQyxJQUFHO1lBQUthLEVBQUU7Z0JBQUNqQixNQUFLO2dCQUFFYixTQUFRO1lBQUk7UUFBRSxJQUFHO1FBQUNpQjtRQUFFYTtLQUFFO0lBQUUsSUFBSTJCLElBQUVoSCx3RUFBRUEsSUFBRyxDQUFDbUgsR0FBRUMsRUFBRSxHQUFDNUksd0VBQUVBLENBQUMwRyxHQUFFUSxHQUFFc0IsTUFBSSxPQUFLLENBQUNBLElBQUVsSCw0REFBQ0EsQ0FBQ3VDLElBQUksTUFBSXZDLDREQUFDQSxDQUFDdUMsSUFBSSxHQUFDK0MsRUFBRW5DLFlBQVksS0FBRztJQUFHakcsMkVBQUVBLENBQUNtSyxHQUFFL0IsRUFBRWhDLE1BQU0sRUFBQztRQUFLaUMsRUFBRTtZQUFDakIsTUFBSztRQUFDO0lBQUU7SUFBRyxJQUFJaUQsSUFBRWpDLEVBQUVsQyxVQUFVLEdBQUMsQ0FBQyxJQUFFMkIsS0FBR3NDO0lBQUV2Six5RUFBRUEsQ0FBQ3lKLEdBQUVSO0lBQUcsSUFBSTZELElBQUVwTyw2REFBQ0EsQ0FBQ3FJLENBQUFBO1FBQUksSUFBSXVCO1FBQUUsT0FBT3ZCLEVBQUVrRixHQUFHO1lBQUUsS0FBSy9ILCtDQUFDQSxDQUFDb0ksTUFBTTtnQkFBQyxJQUFHOUUsRUFBRW5DLFlBQVksS0FBRyxLQUFHLENBQUN5QyxFQUFFZCxPQUFPLElBQUVpQyxLQUFHLFFBQU1BLEVBQUVLLGFBQWEsSUFBRSxDQUFDeEIsRUFBRWQsT0FBTyxDQUFDcUIsUUFBUSxDQUFDWSxFQUFFSyxhQUFhLEdBQUU7Z0JBQU92QyxFQUFFcUQsY0FBYyxJQUFHckQsRUFBRXNGLGVBQWUsSUFBRzVFLEVBQUU7b0JBQUNqQixNQUFLO2dCQUFDLElBQUcsQ0FBQzhCLElBQUVkLEVBQUVoQyxNQUFNLEtBQUcsUUFBTThDLEVBQUUrQixLQUFLO2dCQUFHO1FBQUs7SUFBQztJQUFHek0sZ0RBQUVBLENBQUM7UUFBSyxJQUFJbUo7UUFBRTNCLEVBQUUrSixNQUFNLElBQUUzSCxFQUFFbkMsWUFBWSxLQUFHLEtBQUksRUFBQzBCLElBQUUzQixFQUFFZ0ssT0FBTyxLQUFHLFFBQU1ySSxDQUFBQSxLQUFJVSxFQUFFO1lBQUNqQixNQUFLO1lBQUVkLE9BQU07UUFBSTtJQUFFLEdBQUU7UUFBQzhCLEVBQUVuQyxZQUFZO1FBQUNELEVBQUVnSyxPQUFPO1FBQUNoSyxFQUFFK0osTUFBTTtRQUFDMUg7S0FBRSxHQUFFN0osZ0RBQUVBLENBQUM7UUFBSyxJQUFHNEosRUFBRWxDLFVBQVUsSUFBRSxDQUFDdUIsS0FBR1csRUFBRW5DLFlBQVksS0FBRyxLQUFHLENBQUN5QyxFQUFFZCxPQUFPLEVBQUM7UUFBTyxJQUFJRCxJQUFFa0MsS0FBRyxPQUFLLEtBQUssSUFBRUEsRUFBRUssYUFBYTtRQUFDeEIsRUFBRWQsT0FBTyxDQUFDcUIsUUFBUSxDQUFDdEIsTUFBSWpFLG1FQUFDQSxDQUFDZ0YsRUFBRWQsT0FBTyxFQUFDeEUsNkRBQUNBLENBQUNnTCxLQUFLO0lBQUMsR0FBRTtRQUFDaEcsRUFBRWxDLFVBQVU7UUFBQ3VCO1FBQUVpQjtRQUFFTixFQUFFbkMsWUFBWTtLQUFDO0lBQUUsSUFBSWlGLElBQUV4TSw4Q0FBQ0EsQ0FBQyxJQUFLO1lBQUM0TSxNQUFLbEQsRUFBRW5DLFlBQVksS0FBRztZQUFFMkQsT0FBTXRCO1FBQUMsSUFBRztRQUFDRixFQUFFbkMsWUFBWTtRQUFDcUM7S0FBRSxHQUFFNkMsSUFBRTNHLDZEQUFFQSxDQUFDbUUsSUFBRWUsTUFBSSxDQUFDLEdBQUU7UUFBQzhCLEtBQUk3QjtRQUFFeUMsSUFBRzVFO1FBQUV1RyxXQUFVTDtRQUFFdUMsUUFBT3hJLEtBQUdXLEVBQUVuQyxZQUFZLEtBQUcsSUFBRTBCLENBQUFBO1lBQUksSUFBSXlCLEdBQUVFLEdBQUVDLEdBQUVDLEdBQUVYO1lBQUUsSUFBSUssSUFBRXZCLEVBQUV1SSxhQUFhO1lBQUNoSCxLQUFHUixFQUFFZCxPQUFPLElBQUcsRUFBQ3dCLElBQUVWLEVBQUVkLE9BQU8sS0FBRyxRQUFNd0IsRUFBRUgsUUFBUSxDQUFDQyxNQUFLYixDQUFBQSxFQUFFO2dCQUFDakIsTUFBSztZQUFDLElBQUcsQ0FBQyxDQUFDbUMsSUFBRSxDQUFDRCxJQUFFbEIsRUFBRUwsbUJBQW1CLENBQUNILE9BQU8sS0FBRyxPQUFLLEtBQUssSUFBRTBCLEVBQUVMLFFBQVEsS0FBRyxRQUFNTSxFQUFFc0IsSUFBSSxDQUFDdkIsR0FBRUosTUFBSSxDQUFDTCxJQUFFLENBQUNXLElBQUVwQixFQUFFSixrQkFBa0IsQ0FBQ0osT0FBTyxLQUFHLE9BQUssS0FBSyxJQUFFNEIsRUFBRVAsUUFBUSxLQUFHLFFBQU1KLEVBQUVnQyxJQUFJLENBQUNyQixHQUFFTixFQUFDLEtBQUlBLEVBQUUrQixLQUFLLENBQUM7Z0JBQUNrRixlQUFjLENBQUM7WUFBQyxFQUFDLENBQUM7UUFBRSxJQUFFLEtBQUs7UUFBRUMsVUFBUyxDQUFDO1FBQUVDLE9BQU07WUFBQyxHQUFHbEksRUFBRWtJLEtBQUs7WUFBQyxHQUFHNUcsQ0FBQztZQUFDLGtCQUFpQnJLLDJFQUFFQSxDQUFDZ0osRUFBRWhDLE1BQU0sRUFBQyxDQUFDLEdBQUdrSyxLQUFLO1FBQUE7UUFBRSxHQUFHaFAsbUZBQUVBLENBQUM4SSxFQUFFO0lBQUEsSUFBR2lCLElBQUVqSyw2RUFBRUEsSUFBR21LLElBQUVqTSw2REFBQ0EsQ0FBQztRQUFLLElBQUlxSSxJQUFFZSxFQUFFZCxPQUFPO1FBQUMsSUFBRyxDQUFDRCxHQUFFO1FBQU8sU0FBU3VCO1lBQUlsRixzREFBQ0EsQ0FBQ3FILEVBQUV6RCxPQUFPLEVBQUM7Z0JBQUMsQ0FBQzFHLG1FQUFDQSxDQUFDaU4sUUFBUSxDQUFDLEVBQUM7b0JBQUssSUFBSTdFO29CQUFFNUYsbUVBQUNBLENBQUNpRSxHQUFFdkUsNkRBQUNBLENBQUNnTCxLQUFLLE1BQUk5SyxtRUFBRUEsQ0FBQ3FELEtBQUssSUFBRyxFQUFDMkMsSUFBRWxCLEVBQUVKLGtCQUFrQixDQUFDSixPQUFPLEtBQUcsUUFBTTBCLEVBQUUyQixLQUFLLEVBQUM7Z0JBQUU7Z0JBQUUsQ0FBQy9KLG1FQUFDQSxDQUFDbU4sU0FBUyxDQUFDLEVBQUM7b0JBQUssSUFBSWpGO29CQUFHQSxDQUFBQSxJQUFFaEIsRUFBRWhDLE1BQU0sS0FBRyxRQUFNZ0QsRUFBRTZCLEtBQUssQ0FBQzt3QkFBQ2tGLGVBQWMsQ0FBQztvQkFBQztnQkFBRTtZQUFDO1FBQUU7UUFBQ2pIO0lBQUcsSUFBRzNCLElBQUVqSSw2REFBQ0EsQ0FBQztRQUFLLElBQUlxSSxJQUFFZSxFQUFFZCxPQUFPO1FBQUMsSUFBRyxDQUFDRCxHQUFFO1FBQU8sU0FBU3VCO1lBQUlsRixzREFBQ0EsQ0FBQ3FILEVBQUV6RCxPQUFPLEVBQUM7Z0JBQUMsQ0FBQzFHLG1FQUFDQSxDQUFDaU4sUUFBUSxDQUFDLEVBQUM7b0JBQUssSUFBSW9DO29CQUFHLElBQUcsQ0FBQ25JLEVBQUVoQyxNQUFNLEVBQUM7b0JBQU8sSUFBSWdELElBQUV4RixnRkFBRUEsSUFBRzBGLElBQUVGLEVBQUVELE9BQU8sQ0FBQ2YsRUFBRWhDLE1BQU0sR0FBRW1ELElBQUVILEVBQUVvSCxLQUFLLENBQUMsR0FBRWxILElBQUUsSUFBR1QsSUFBRTsyQkFBSU8sRUFBRW9ILEtBQUssQ0FBQ2xILElBQUU7MkJBQU1DO3FCQUFFO29CQUFDLEtBQUksSUFBSWtILE1BQU01SCxFQUFFMkgsS0FBSyxHQUFHLElBQUdDLEdBQUdqQyxPQUFPLENBQUNDLG9CQUFvQixLQUFHLFVBQVEsQ0FBQzhCLEtBQUduSSxFQUFFOUIsS0FBSyxLQUFHLFFBQU1pSyxHQUFHdEgsUUFBUSxDQUFDd0gsS0FBSTt3QkFBQyxJQUFJQyxLQUFHN0gsRUFBRU0sT0FBTyxDQUFDc0g7d0JBQUlDLE9BQUssQ0FBQyxLQUFHN0gsRUFBRTZELE1BQU0sQ0FBQ2dFLElBQUc7b0JBQUU7b0JBQUNoTixtRUFBQ0EsQ0FBQ21GLEdBQUV6Riw2REFBQ0EsQ0FBQ2dMLEtBQUssRUFBQzt3QkFBQ3VDLFFBQU8sQ0FBQztvQkFBQztnQkFBRTtnQkFBRSxDQUFDelAsbUVBQUNBLENBQUNtTixTQUFTLENBQUMsRUFBQztvQkFBSyxJQUFJL0U7b0JBQUU1RixtRUFBQ0EsQ0FBQ2lFLEdBQUV2RSw2REFBQ0EsQ0FBQ3VMLFFBQVEsTUFBSXJMLG1FQUFFQSxDQUFDcUQsS0FBSyxJQUFHLEVBQUMyQyxJQUFFbEIsRUFBRWhDLE1BQU0sS0FBRyxRQUFNa0QsRUFBRTJCLEtBQUssRUFBQztnQkFBRTtZQUFDO1FBQUU7UUFBQy9CO0lBQUc7SUFBRyxxQkFBT2xMLGdEQUFlLENBQUM0RSw4RUFBRUEsRUFBQyxvQkFBSzVFLGdEQUFlLENBQUNpSixHQUFHeUUsUUFBUSxFQUFDO1FBQUNDLE9BQU1uRTtJQUFDLGlCQUFFeEosZ0RBQWUsQ0FBQzZJLEdBQUc2RSxRQUFRLEVBQUM7UUFBQ0MsT0FBTTtZQUFDL0IsT0FBTXRCO1lBQUU4QyxhQUFZN0M7UUFBQztJQUFDLGlCQUFFdkssZ0RBQWUsQ0FBQ2dILHFEQUFFQSxFQUFDO1FBQUM0TCxTQUFRcEwsSUFBRVEsRUFBRStKLE1BQU0sSUFBRTVGLElBQUUsQ0FBQztJQUFDLEdBQUVBLEtBQUc1QixtQkFBR3ZLLGdEQUFlLENBQUNzRSx3REFBRUEsRUFBQztRQUFDOEosSUFBRzVEO1FBQUVnRCxLQUFJcEQsRUFBRUwsbUJBQW1CO1FBQUMrRyxVQUFTdE0sZ0VBQUVBLENBQUN1TSxTQUFTO1FBQUMsK0JBQThCLENBQUM7UUFBRUMsSUFBRztRQUFTNUgsTUFBSztRQUFTNkgsU0FBUTFEO0lBQUMsSUFBRzdHLHlEQUFDQSxDQUFDO1FBQUNtTSxXQUFVL0c7UUFBRThCLFVBQVNUO1FBQUVVLFlBQVcxRDtRQUFFMkQsTUFBS1o7UUFBRWEsWUFBVzBEO1FBQUdYLFVBQVNZO1FBQUdGLFNBQVFyRjtRQUFFNkIsTUFBSztJQUFlLElBQUc3QixLQUFHNUIsbUJBQUd2SyxnREFBZSxDQUFDc0Usd0RBQUVBLEVBQUM7UUFBQzhKLElBQUczRDtRQUFFK0MsS0FBSXBELEVBQUVKLGtCQUFrQjtRQUFDOEcsVUFBU3RNLGdFQUFFQSxDQUFDdU0sU0FBUztRQUFDLCtCQUE4QixDQUFDO1FBQUVDLElBQUc7UUFBUzVILE1BQUs7UUFBUzZILFNBQVExSDtJQUFDO0FBQU07QUFBQyxJQUFJdUosS0FBRztBQUFNLFNBQVNDLEdBQUcvSyxDQUFDLEVBQUNHLENBQUM7SUFBRSxJQUFJZixJQUFFdEcsNkNBQUNBLENBQUMsT0FBTTBJLElBQUV4RyxvRUFBQ0EsQ0FBQ29FLEdBQUVlLElBQUcsQ0FBQ3NCLEdBQUVDLEVBQUUsR0FBQzFJLCtDQUFFQSxDQUFDLEVBQUUsR0FBRXdHLElBQUVoRiw4RUFBRUEsSUFBR3FILElBQUV2SSw2REFBQ0EsQ0FBQ21KLENBQUFBO1FBQUlmLEVBQUVnQixDQUFBQTtZQUFJLElBQUlDLElBQUVELEVBQUVTLE9BQU8sQ0FBQ1Y7WUFBRyxJQUFHRSxNQUFJLENBQUMsR0FBRTtnQkFBQyxJQUFJQyxJQUFFRixFQUFFOEgsS0FBSztnQkFBRyxPQUFPNUgsRUFBRThELE1BQU0sQ0FBQy9ELEdBQUUsSUFBR0M7WUFBQztZQUFDLE9BQU9GO1FBQUM7SUFBRSxJQUFHUixJQUFFNUksNkRBQUNBLENBQUNtSixDQUFBQSxJQUFJZixDQUFBQSxFQUFFZ0IsQ0FBQUEsSUFBRzttQkFBSUE7Z0JBQUVEO2FBQUUsR0FBRSxJQUFJWixFQUFFWSxFQUFDLElBQUlOLElBQUU3SSw2REFBQ0EsQ0FBQztRQUFLLElBQUlxSjtRQUFFLElBQUlGLElBQUV2RSxrRUFBRUEsQ0FBQ2tCO1FBQUcsSUFBRyxDQUFDcUQsR0FBRSxPQUFNLENBQUM7UUFBRSxJQUFJQyxJQUFFRCxFQUFFeUIsYUFBYTtRQUFDLE9BQU0sQ0FBQ3ZCLElBQUV2RCxFQUFFd0MsT0FBTyxLQUFHLFFBQU1lLEVBQUVNLFFBQVEsQ0FBQ1AsS0FBRyxDQUFDLElBQUVqQixFQUFFdUosSUFBSSxDQUFDcEksQ0FBQUE7WUFBSSxJQUFJYSxHQUFFQztZQUFFLE9BQU0sQ0FBQyxDQUFDRCxJQUFFaEIsRUFBRXdJLGNBQWMsQ0FBQ3JJLEVBQUV2QyxRQUFRLENBQUN1QixPQUFPLE1BQUksT0FBSyxLQUFLLElBQUU2QixFQUFFUixRQUFRLENBQUNQLEVBQUMsS0FBSyxFQUFDZ0IsSUFBRWpCLEVBQUV3SSxjQUFjLENBQUNySSxFQUFFckMsT0FBTyxDQUFDcUIsT0FBTyxNQUFJLE9BQUssS0FBSyxJQUFFOEIsRUFBRVQsUUFBUSxDQUFDUCxFQUFDO1FBQUU7SUFBRSxJQUFHTixJQUFFOUksNkRBQUNBLENBQUNtSixDQUFBQTtRQUFJLEtBQUksSUFBSUMsS0FBS2pCLEVBQUVpQixFQUFFckMsUUFBUSxDQUFDdUIsT0FBTyxLQUFHYSxLQUFHQyxFQUFFa0IsS0FBSztJQUFFLElBQUd2QixJQUFFM0osOENBQUNBLENBQUMsSUFBSztZQUFDcUwsaUJBQWdCN0I7WUFBRWdKLG1CQUFrQnJKO1lBQUVvQywyQkFBMEI5QjtZQUFFb0UsYUFBWW5FO1lBQUVrQyxpQkFBZ0I5RSxFQUFFOEUsZUFBZTtRQUFBLElBQUc7UUFBQ3BDO1FBQUVMO1FBQUVNO1FBQUVDO1FBQUU1QyxFQUFFOEUsZUFBZTtLQUFDLEdBQUVoQyxJQUFFNUosOENBQUNBLENBQUMsSUFBSyxFQUFDLElBQUcsRUFBRSxHQUFFNkosSUFBRXZDLEdBQUV3QyxJQUFFO1FBQUNnRCxLQUFJaEU7SUFBQztJQUFFLHFCQUFPeEosZ0RBQWUsQ0FBQytJLEdBQUcyRSxRQUFRLEVBQUM7UUFBQ0MsT0FBTXREO0lBQUMsR0FBRTNELHlEQUFDQSxDQUFDO1FBQUNrSCxVQUFTcEQ7UUFBRXFELFlBQVd0RDtRQUFFdUQsTUFBS3hEO1FBQUV5RCxZQUFXK0U7UUFBRzlFLE1BQUs7SUFBZSxrQkFBR2hPLGdEQUFlLENBQUN3SCxFQUFFeUcsWUFBWSxFQUFDO0FBQU07TUFBeDFCOEU7QUFBeTFCLElBQUlJLEtBQUc3TSxtRUFBQ0EsQ0FBQ2dELEtBQUk4SixLQUFHOU0sbUVBQUNBLENBQUM2SCxLQUFJa0YsS0FBRy9NLG1FQUFDQSxDQUFDZ0wsS0FBSWdDLEtBQUdoTixtRUFBQ0EsQ0FBQ2dMLEtBQUlpQyxLQUFHak4sbUVBQUNBLENBQUNxTCxLQUFJNkIsS0FBR2xOLG1FQUFDQSxDQUFDeU0sS0FBSVUsS0FBR0MsT0FBT0MsTUFBTSxDQUFDUixJQUFHO0lBQUNTLFFBQU9SO0lBQUdTLFVBQVNQO0lBQUdRLFNBQVFUO0lBQUdVLE9BQU1SO0lBQUdTLE9BQU1SO0FBQUU7QUFBOEgiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuanM/MzllNCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtpbXBvcnR7dXNlRm9jdXNSaW5nIGFzIHhlfWZyb21cIkByZWFjdC1hcmlhL2ZvY3VzXCI7aW1wb3J0e3VzZUhvdmVyIGFzIE9lfWZyb21cIkByZWFjdC1hcmlhL2ludGVyYWN0aW9uc1wiO2ltcG9ydCBFLHtjcmVhdGVDb250ZXh0IGFzIGVlLGNyZWF0ZVJlZiBhcyB1ZSx1c2VDb250ZXh0IGFzIHRlLHVzZUVmZmVjdCBhcyBvZSx1c2VNZW1vIGFzIEwsdXNlUmVkdWNlciBhcyBMZSx1c2VSZWYgYXMgWCx1c2VTdGF0ZSBhcyBnZX1mcm9tXCJyZWFjdFwiO2ltcG9ydHt1c2VBY3RpdmVQcmVzcyBhcyBJZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1hY3RpdmUtcHJlc3MuanMnO2ltcG9ydHt1c2VFbGVtZW50U2l6ZSBhcyBEZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1lbGVtZW50LXNpemUuanMnO2ltcG9ydHt1c2VFdmVudCBhcyBBfWZyb20nLi4vLi4vaG9va3MvdXNlLWV2ZW50LmpzJztpbXBvcnR7dXNlRXZlbnRMaXN0ZW5lciBhcyBoZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1ldmVudC1saXN0ZW5lci5qcyc7aW1wb3J0e3VzZUlkIGFzIHJlfWZyb20nLi4vLi4vaG9va3MvdXNlLWlkLmpzJztpbXBvcnR7dXNlSXNvTW9ycGhpY0VmZmVjdCBhcyBrZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1pc28tbW9ycGhpYy1lZmZlY3QuanMnO2ltcG9ydHt1c2VMYXRlc3RWYWx1ZSBhcyBTZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1sYXRlc3QtdmFsdWUuanMnO2ltcG9ydHt1c2VPbkRpc2FwcGVhciBhcyBHZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1vbi1kaXNhcHBlYXIuanMnO2ltcG9ydHt1c2VPdXRzaWRlQ2xpY2sgYXMgSGV9ZnJvbScuLi8uLi9ob29rcy91c2Utb3V0c2lkZS1jbGljay5qcyc7aW1wb3J0e3VzZU93bmVyRG9jdW1lbnQgYXMgaWV9ZnJvbScuLi8uLi9ob29rcy91c2Utb3duZXIuanMnO2ltcG9ydHt1c2VSZXNvbHZlQnV0dG9uVHlwZSBhcyBOZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS1yZXNvbHZlLWJ1dHRvbi10eXBlLmpzJztpbXBvcnR7dXNlTWFpblRyZWVOb2RlIGFzIFVlLHVzZVJvb3RDb250YWluZXJzIGFzIHdlfWZyb20nLi4vLi4vaG9va3MvdXNlLXJvb3QtY29udGFpbmVycy5qcyc7aW1wb3J0e3VzZVNjcm9sbExvY2sgYXMgS2V9ZnJvbScuLi8uLi9ob29rcy91c2Utc2Nyb2xsLWxvY2suanMnO2ltcG9ydHtvcHRpb25hbFJlZiBhcyBXZSx1c2VTeW5jUmVmcyBhcyBxfWZyb20nLi4vLi4vaG9va3MvdXNlLXN5bmMtcmVmcy5qcyc7aW1wb3J0e0RpcmVjdGlvbiBhcyBHLHVzZVRhYkRpcmVjdGlvbiBhcyBBZX1mcm9tJy4uLy4uL2hvb2tzL3VzZS10YWItZGlyZWN0aW9uLmpzJztpbXBvcnR7dHJhbnNpdGlvbkRhdGFBdHRyaWJ1dGVzIGFzIFJlLHVzZVRyYW5zaXRpb24gYXMgQ2V9ZnJvbScuLi8uLi9ob29rcy91c2UtdHJhbnNpdGlvbi5qcyc7aW1wb3J0e0Nsb3NlUHJvdmlkZXIgYXMgamV9ZnJvbScuLi8uLi9pbnRlcm5hbC9jbG9zZS1wcm92aWRlci5qcyc7aW1wb3J0e0Zsb2F0aW5nUHJvdmlkZXIgYXMgVmUsdXNlRmxvYXRpbmdQYW5lbCBhcyAkZSx1c2VGbG9hdGluZ1BhbmVsUHJvcHMgYXMgSmUsdXNlRmxvYXRpbmdSZWZlcmVuY2UgYXMgWGUsdXNlUmVzb2x2ZWRBbmNob3IgYXMgcWV9ZnJvbScuLi8uLi9pbnRlcm5hbC9mbG9hdGluZy5qcyc7aW1wb3J0e0hpZGRlbiBhcyBkZSxIaWRkZW5GZWF0dXJlcyBhcyBmZX1mcm9tJy4uLy4uL2ludGVybmFsL2hpZGRlbi5qcyc7aW1wb3J0e09wZW5DbG9zZWRQcm92aWRlciBhcyB6ZSxSZXNldE9wZW5DbG9zZWRQcm92aWRlciBhcyBZZSxTdGF0ZSBhcyB6LHVzZU9wZW5DbG9zZWQgYXMgQmV9ZnJvbScuLi8uLi9pbnRlcm5hbC9vcGVuLWNsb3NlZC5qcyc7aW1wb3J0e2lzRGlzYWJsZWRSZWFjdElzc3VlNzcxMSBhcyBfZX1mcm9tJy4uLy4uL3V0aWxzL2J1Z3MuanMnO2ltcG9ydHtGb2N1cyBhcyBILEZvY3VzUmVzdWx0IGFzIFBlLEZvY3VzYWJsZU1vZGUgYXMgUWUsZm9jdXNJbiBhcyBVLGdldEZvY3VzYWJsZUVsZW1lbnRzIGFzIGNlLGlzRm9jdXNhYmxlRWxlbWVudCBhcyBaZX1mcm9tJy4uLy4uL3V0aWxzL2ZvY3VzLW1hbmFnZW1lbnQuanMnO2ltcG9ydHttYXRjaCBhcyB3fWZyb20nLi4vLi4vdXRpbHMvbWF0Y2guanMnO2ltcG9ydCcuLi8uLi91dGlscy9taWNyby10YXNrLmpzJztpbXBvcnR7Z2V0T3duZXJEb2N1bWVudCBhcyBldH1mcm9tJy4uLy4uL3V0aWxzL293bmVyLmpzJztpbXBvcnR7UmVuZGVyRmVhdHVyZXMgYXMgbmUsZm9yd2FyZFJlZldpdGhBcyBhcyBZLG1lcmdlUHJvcHMgYXMgdmUscmVuZGVyIGFzIFosdXNlTWVyZ2VSZWZzRm4gYXMgdHR9ZnJvbScuLi8uLi91dGlscy9yZW5kZXIuanMnO2ltcG9ydHtLZXlzIGFzIEt9ZnJvbScuLi9rZXlib2FyZC5qcyc7aW1wb3J0e1BvcnRhbCBhcyBvdCx1c2VOZXN0ZWRQb3J0YWxzIGFzIHJ0fWZyb20nLi4vcG9ydGFsL3BvcnRhbC5qcyc7dmFyIG50PShmPT4oZltmLk9wZW49MF09XCJPcGVuXCIsZltmLkNsb3NlZD0xXT1cIkNsb3NlZFwiLGYpKShudHx8e30pLGx0PSh1PT4odVt1LlRvZ2dsZVBvcG92ZXI9MF09XCJUb2dnbGVQb3BvdmVyXCIsdVt1LkNsb3NlUG9wb3Zlcj0xXT1cIkNsb3NlUG9wb3ZlclwiLHVbdS5TZXRCdXR0b249Ml09XCJTZXRCdXR0b25cIix1W3UuU2V0QnV0dG9uSWQ9M109XCJTZXRCdXR0b25JZFwiLHVbdS5TZXRQYW5lbD00XT1cIlNldFBhbmVsXCIsdVt1LlNldFBhbmVsSWQ9NV09XCJTZXRQYW5lbElkXCIsdSkpKGx0fHx7fSk7bGV0IGF0PXtbMF06dD0+KHsuLi50LHBvcG92ZXJTdGF0ZTp3KHQucG9wb3ZlclN0YXRlLHtbMF06MSxbMV06MH0pLF9fZGVtb01vZGU6ITF9KSxbMV0odCl7cmV0dXJuIHQucG9wb3ZlclN0YXRlPT09MT90OnsuLi50LHBvcG92ZXJTdGF0ZToxLF9fZGVtb01vZGU6ITF9fSxbMl0odCxhKXtyZXR1cm4gdC5idXR0b249PT1hLmJ1dHRvbj90OnsuLi50LGJ1dHRvbjphLmJ1dHRvbn19LFszXSh0LGEpe3JldHVybiB0LmJ1dHRvbklkPT09YS5idXR0b25JZD90OnsuLi50LGJ1dHRvbklkOmEuYnV0dG9uSWR9fSxbNF0odCxhKXtyZXR1cm4gdC5wYW5lbD09PWEucGFuZWw/dDp7Li4udCxwYW5lbDphLnBhbmVsfX0sWzVdKHQsYSl7cmV0dXJuIHQucGFuZWxJZD09PWEucGFuZWxJZD90OnsuLi50LHBhbmVsSWQ6YS5wYW5lbElkfX19LFRlPWVlKG51bGwpO1RlLmRpc3BsYXlOYW1lPVwiUG9wb3ZlckNvbnRleHRcIjtmdW5jdGlvbiBsZSh0KXtsZXQgYT10ZShUZSk7aWYoYT09PW51bGwpe2xldCBmPW5ldyBFcnJvcihgPCR7dH0gLz4gaXMgbWlzc2luZyBhIHBhcmVudCA8UG9wb3ZlciAvPiBjb21wb25lbnQuYCk7dGhyb3cgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UmJkVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGYsbGUpLGZ9cmV0dXJuIGF9bGV0IGFlPWVlKG51bGwpO2FlLmRpc3BsYXlOYW1lPVwiUG9wb3ZlckFQSUNvbnRleHRcIjtmdW5jdGlvbiBtZSh0KXtsZXQgYT10ZShhZSk7aWYoYT09PW51bGwpe2xldCBmPW5ldyBFcnJvcihgPCR7dH0gLz4gaXMgbWlzc2luZyBhIHBhcmVudCA8UG9wb3ZlciAvPiBjb21wb25lbnQuYCk7dGhyb3cgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UmJkVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGYsbWUpLGZ9cmV0dXJuIGF9bGV0IHllPWVlKG51bGwpO3llLmRpc3BsYXlOYW1lPVwiUG9wb3Zlckdyb3VwQ29udGV4dFwiO2Z1bmN0aW9uIEZlKCl7cmV0dXJuIHRlKHllKX1sZXQgcGU9ZWUobnVsbCk7cGUuZGlzcGxheU5hbWU9XCJQb3BvdmVyUGFuZWxDb250ZXh0XCI7ZnVuY3Rpb24gcHQoKXtyZXR1cm4gdGUocGUpfWZ1bmN0aW9uIHN0KHQsYSl7cmV0dXJuIHcoYS50eXBlLGF0LHQsYSl9bGV0IHV0PVwiZGl2XCI7ZnVuY3Rpb24gaXQodCxhKXt2YXIgSjtsZXR7X19kZW1vTW9kZTpmPSExLC4uLkN9PXQsbT1YKG51bGwpLFI9cShhLFdlKGU9PnttLmN1cnJlbnQ9ZX0pKSx1PVgoW10pLGw9TGUoc3Qse19fZGVtb01vZGU6Zixwb3BvdmVyU3RhdGU6Zj8wOjEsYnV0dG9uczp1LGJ1dHRvbjpudWxsLGJ1dHRvbklkOm51bGwscGFuZWw6bnVsbCxwYW5lbElkOm51bGwsYmVmb3JlUGFuZWxTZW50aW5lbDp1ZSgpLGFmdGVyUGFuZWxTZW50aW5lbDp1ZSgpLGFmdGVyQnV0dG9uU2VudGluZWw6dWUoKX0pLFt7cG9wb3ZlclN0YXRlOmMsYnV0dG9uOlAsYnV0dG9uSWQ6cixwYW5lbDppLHBhbmVsSWQ6QixiZWZvcmVQYW5lbFNlbnRpbmVsOnksYWZ0ZXJQYW5lbFNlbnRpbmVsOkksYWZ0ZXJCdXR0b25TZW50aW5lbDpkfSxuXT1sLHY9aWUoKEo9bS5jdXJyZW50KSE9bnVsbD9KOlApLF89TCgoKT0+e2lmKCFQfHwhaSlyZXR1cm4hMTtmb3IobGV0IGcgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcImJvZHkgPiAqXCIpKWlmKE51bWJlcihnPT1udWxsP3ZvaWQgMDpnLmNvbnRhaW5zKFApKV5OdW1iZXIoZz09bnVsbD92b2lkIDA6Zy5jb250YWlucyhpKSkpcmV0dXJuITA7bGV0IGU9Y2UoKSxzPWUuaW5kZXhPZihQKSxvPShzK2UubGVuZ3RoLTEpJWUubGVuZ3RoLHA9KHMrMSklZS5sZW5ndGgsUz1lW29dLGI9ZVtwXTtyZXR1cm4haS5jb250YWlucyhTKSYmIWkuY29udGFpbnMoYil9LFtQLGldKSxGPVNlKHIpLHg9U2UoQiksVz1MKCgpPT4oe2J1dHRvbklkOkYscGFuZWxJZDp4LGNsb3NlOigpPT5uKHt0eXBlOjF9KX0pLFtGLHgsbl0pLFQ9RmUoKSxEPVQ9PW51bGw/dm9pZCAwOlQucmVnaXN0ZXJQb3BvdmVyLE49QSgoKT0+e3ZhciBlO3JldHVybihlPVQ9PW51bGw/dm9pZCAwOlQuaXNGb2N1c1dpdGhpblBvcG92ZXJHcm91cCgpKSE9bnVsbD9lOih2PT1udWxsP3ZvaWQgMDp2LmFjdGl2ZUVsZW1lbnQpJiYoKFA9PW51bGw/dm9pZCAwOlAuY29udGFpbnModi5hY3RpdmVFbGVtZW50KSl8fChpPT1udWxsP3ZvaWQgMDppLmNvbnRhaW5zKHYuYWN0aXZlRWxlbWVudCkpKX0pO29lKCgpPT5EPT1udWxsP3ZvaWQgMDpEKFcpLFtELFddKTtsZXRbTSxqXT1ydCgpLGg9d2Uoe21haW5UcmVlTm9kZVJlZjpUPT1udWxsP3ZvaWQgMDpULm1haW5UcmVlTm9kZVJlZixwb3J0YWxzOk0sZGVmYXVsdENvbnRhaW5lcnM6W1AsaV19KTtoZSh2PT1udWxsP3ZvaWQgMDp2LmRlZmF1bHRWaWV3LFwiZm9jdXNcIixlPT57dmFyIHMsbyxwLFMsYixnO2UudGFyZ2V0IT09d2luZG93JiZlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZjPT09MCYmKE4oKXx8UCYmaSYmKGguY29udGFpbnMoZS50YXJnZXQpfHwobz0ocz15LmN1cnJlbnQpPT1udWxsP3ZvaWQgMDpzLmNvbnRhaW5zKSE9bnVsbCYmby5jYWxsKHMsZS50YXJnZXQpfHwoUz0ocD1JLmN1cnJlbnQpPT1udWxsP3ZvaWQgMDpwLmNvbnRhaW5zKSE9bnVsbCYmUy5jYWxsKHAsZS50YXJnZXQpfHwoZz0oYj1kLmN1cnJlbnQpPT1udWxsP3ZvaWQgMDpiLmNvbnRhaW5zKSE9bnVsbCYmZy5jYWxsKGIsZS50YXJnZXQpfHxuKHt0eXBlOjF9KSkpfSwhMCksSGUoYz09PTAsaC5yZXNvbHZlQ29udGFpbmVycywoZSxzKT0+e24oe3R5cGU6MX0pLFplKHMsUWUuTG9vc2UpfHwoZS5wcmV2ZW50RGVmYXVsdCgpLFA9PW51bGx8fFAuZm9jdXMoKSl9KTtsZXQgTz1BKGU9PntuKHt0eXBlOjF9KTtsZXQgcz0oKCk9PmU/ZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P2U6XCJjdXJyZW50XCJpbiBlJiZlLmN1cnJlbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9lLmN1cnJlbnQ6UDpQKSgpO3M9PW51bGx8fHMuZm9jdXMoKX0pLGs9TCgoKT0+KHtjbG9zZTpPLGlzUG9ydGFsbGVkOl99KSxbTyxfXSksVj1MKCgpPT4oe29wZW46Yz09PTAsY2xvc2U6T30pLFtjLE9dKSwkPXtyZWY6Un07cmV0dXJuIEUuY3JlYXRlRWxlbWVudChWZSxudWxsLEUuY3JlYXRlRWxlbWVudChwZS5Qcm92aWRlcix7dmFsdWU6bnVsbH0sRS5jcmVhdGVFbGVtZW50KFRlLlByb3ZpZGVyLHt2YWx1ZTpsfSxFLmNyZWF0ZUVsZW1lbnQoYWUuUHJvdmlkZXIse3ZhbHVlOmt9LEUuY3JlYXRlRWxlbWVudChqZSx7dmFsdWU6T30sRS5jcmVhdGVFbGVtZW50KHplLHt2YWx1ZTp3KGMse1swXTp6Lk9wZW4sWzFdOnouQ2xvc2VkfSl9LEUuY3JlYXRlRWxlbWVudChqLG51bGwsWih7b3VyUHJvcHM6JCx0aGVpclByb3BzOkMsc2xvdDpWLGRlZmF1bHRUYWc6dXQsbmFtZTpcIlBvcG92ZXJcIn0pLEUuY3JlYXRlRWxlbWVudChoLk1haW5UcmVlTm9kZSxudWxsKSkpKSkpKSl9bGV0IGR0PVwiYnV0dG9uXCI7ZnVuY3Rpb24gZnQodCxhKXtsZXQgZj1yZSgpLHtpZDpDPWBoZWFkbGVzc3VpLXBvcG92ZXItYnV0dG9uLSR7Zn1gLGRpc2FibGVkOm09ITEsYXV0b0ZvY3VzOlI9ITEsLi4udX09dCxbbCxjXT1sZShcIlBvcG92ZXIuQnV0dG9uXCIpLHtpc1BvcnRhbGxlZDpQfT1tZShcIlBvcG92ZXIuQnV0dG9uXCIpLHI9WChudWxsKSxpPWBoZWFkbGVzc3VpLWZvY3VzLXNlbnRpbmVsLSR7cmUoKX1gLEI9RmUoKSx5PUI9PW51bGw/dm9pZCAwOkIuY2xvc2VPdGhlcnMsZD1wdCgpIT09bnVsbDtvZSgoKT0+e2lmKCFkKXJldHVybiBjKHt0eXBlOjMsYnV0dG9uSWQ6Q30pLCgpPT57Yyh7dHlwZTozLGJ1dHRvbklkOm51bGx9KX19LFtkLEMsY10pO2xldFtuXT1nZSgoKT0+U3ltYm9sKCkpLHY9cShyLGEsWGUoKSxkP251bGw6bz0+e2lmKG8pbC5idXR0b25zLmN1cnJlbnQucHVzaChuKTtlbHNle2xldCBwPWwuYnV0dG9ucy5jdXJyZW50LmluZGV4T2Yobik7cCE9PS0xJiZsLmJ1dHRvbnMuY3VycmVudC5zcGxpY2UocCwxKX1sLmJ1dHRvbnMuY3VycmVudC5sZW5ndGg+MSYmY29uc29sZS53YXJuKFwiWW91IGFyZSBhbHJlYWR5IHVzaW5nIGEgPFBvcG92ZXIuQnV0dG9uIC8+IGJ1dCBvbmx5IDEgPFBvcG92ZXIuQnV0dG9uIC8+IGlzIHN1cHBvcnRlZC5cIiksbyYmYyh7dHlwZToyLGJ1dHRvbjpvfSl9KSxfPXEocixhKSxGPWllKHIpLHg9QShvPT57dmFyIHAsUyxiO2lmKGQpe2lmKGwucG9wb3ZlclN0YXRlPT09MSlyZXR1cm47c3dpdGNoKG8ua2V5KXtjYXNlIEsuU3BhY2U6Y2FzZSBLLkVudGVyOm8ucHJldmVudERlZmF1bHQoKSwoUz0ocD1vLnRhcmdldCkuY2xpY2spPT1udWxsfHxTLmNhbGwocCksYyh7dHlwZToxfSksKGI9bC5idXR0b24pPT1udWxsfHxiLmZvY3VzKCk7YnJlYWt9fWVsc2Ugc3dpdGNoKG8ua2V5KXtjYXNlIEsuU3BhY2U6Y2FzZSBLLkVudGVyOm8ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLGwucG9wb3ZlclN0YXRlPT09MSYmKHk9PW51bGx8fHkobC5idXR0b25JZCkpLGMoe3R5cGU6MH0pO2JyZWFrO2Nhc2UgSy5Fc2NhcGU6aWYobC5wb3BvdmVyU3RhdGUhPT0wKXJldHVybiB5PT1udWxsP3ZvaWQgMDp5KGwuYnV0dG9uSWQpO2lmKCFyLmN1cnJlbnR8fEYhPW51bGwmJkYuYWN0aXZlRWxlbWVudCYmIXIuY3VycmVudC5jb250YWlucyhGLmFjdGl2ZUVsZW1lbnQpKXJldHVybjtvLnByZXZlbnREZWZhdWx0KCksby5zdG9wUHJvcGFnYXRpb24oKSxjKHt0eXBlOjF9KTticmVha319KSxXPUEobz0+e2R8fG8ua2V5PT09Sy5TcGFjZSYmby5wcmV2ZW50RGVmYXVsdCgpfSksVD1BKG89Pnt2YXIgcCxTO19lKG8uY3VycmVudFRhcmdldCl8fG18fChkPyhjKHt0eXBlOjF9KSwocD1sLmJ1dHRvbik9PW51bGx8fHAuZm9jdXMoKSk6KG8ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLGwucG9wb3ZlclN0YXRlPT09MSYmKHk9PW51bGx8fHkobC5idXR0b25JZCkpLGMoe3R5cGU6MH0pLChTPWwuYnV0dG9uKT09bnVsbHx8Uy5mb2N1cygpKSl9KSxEPUEobz0+e28ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpfSkse2lzRm9jdXNWaXNpYmxlOk4sZm9jdXNQcm9wczpNfT14ZSh7YXV0b0ZvY3VzOlJ9KSx7aXNIb3ZlcmVkOmosaG92ZXJQcm9wczpofT1PZSh7aXNEaXNhYmxlZDptfSkse3ByZXNzZWQ6USxwcmVzc1Byb3BzOk99PUllKHtkaXNhYmxlZDptfSksaz1sLnBvcG92ZXJTdGF0ZT09PTAsVj1MKCgpPT4oe29wZW46ayxhY3RpdmU6UXx8ayxkaXNhYmxlZDptLGhvdmVyOmosZm9jdXM6TixhdXRvZm9jdXM6Un0pLFtrLGosTixRLG0sUl0pLCQ9TmUodCxyKSxKPWQ/dmUoe3JlZjpfLHR5cGU6JCxvbktleURvd246eCxvbkNsaWNrOlQsZGlzYWJsZWQ6bXx8dm9pZCAwLGF1dG9Gb2N1czpSfSxNLGgsTyk6dmUoe3JlZjp2LGlkOmwuYnV0dG9uSWQsdHlwZTokLFwiYXJpYS1leHBhbmRlZFwiOmwucG9wb3ZlclN0YXRlPT09MCxcImFyaWEtY29udHJvbHNcIjpsLnBhbmVsP2wucGFuZWxJZDp2b2lkIDAsZGlzYWJsZWQ6bXx8dm9pZCAwLGF1dG9Gb2N1czpSLG9uS2V5RG93bjp4LG9uS2V5VXA6VyxvbkNsaWNrOlQsb25Nb3VzZURvd246RH0sTSxoLE8pLGU9QWUoKSxzPUEoKCk9PntsZXQgbz1sLnBhbmVsO2lmKCFvKXJldHVybjtmdW5jdGlvbiBwKCl7dyhlLmN1cnJlbnQse1tHLkZvcndhcmRzXTooKT0+VShvLEguRmlyc3QpLFtHLkJhY2t3YXJkc106KCk9PlUobyxILkxhc3QpfSk9PT1QZS5FcnJvciYmVShjZSgpLmZpbHRlcihiPT5iLmRhdGFzZXQuaGVhZGxlc3N1aUZvY3VzR3VhcmQhPT1cInRydWVcIiksdyhlLmN1cnJlbnQse1tHLkZvcndhcmRzXTpILk5leHQsW0cuQmFja3dhcmRzXTpILlByZXZpb3VzfSkse3JlbGF0aXZlVG86bC5idXR0b259KX1wKCl9KTtyZXR1cm4gRS5jcmVhdGVFbGVtZW50KEUuRnJhZ21lbnQsbnVsbCxaKHtvdXJQcm9wczpKLHRoZWlyUHJvcHM6dSxzbG90OlYsZGVmYXVsdFRhZzpkdCxuYW1lOlwiUG9wb3Zlci5CdXR0b25cIn0pLGsmJiFkJiZQJiZFLmNyZWF0ZUVsZW1lbnQoZGUse2lkOmkscmVmOmwuYWZ0ZXJCdXR0b25TZW50aW5lbCxmZWF0dXJlczpmZS5Gb2N1c2FibGUsXCJkYXRhLWhlYWRsZXNzdWktZm9jdXMtZ3VhcmRcIjohMCxhczpcImJ1dHRvblwiLHR5cGU6XCJidXR0b25cIixvbkZvY3VzOnN9KSl9bGV0IFB0PVwiZGl2XCIsY3Q9bmUuUmVuZGVyU3RyYXRlZ3l8bmUuU3RhdGljO2Z1bmN0aW9uIE1lKHQsYSl7bGV0IGY9cmUoKSx7aWQ6Qz1gaGVhZGxlc3N1aS1wb3BvdmVyLWJhY2tkcm9wLSR7Zn1gLHRyYW5zaXRpb246bT0hMSwuLi5SfT10LFt7cG9wb3ZlclN0YXRlOnV9LGxdPWxlKFwiUG9wb3Zlci5CYWNrZHJvcFwiKSxjPVgobnVsbCksUD1xKGEsYykscj1CZSgpLFtpLEJdPUNlKG0sYyxyIT09bnVsbD8ociZ6Lk9wZW4pPT09ei5PcGVuOnU9PT0wKSx5PUEobj0+e2lmKF9lKG4uY3VycmVudFRhcmdldCkpcmV0dXJuIG4ucHJldmVudERlZmF1bHQoKTtsKHt0eXBlOjF9KX0pLEk9TCgoKT0+KHtvcGVuOnU9PT0wfSksW3VdKSxkPXtyZWY6UCxpZDpDLFwiYXJpYS1oaWRkZW5cIjohMCxvbkNsaWNrOnksLi4uUmUoQil9O3JldHVybiBaKHtvdXJQcm9wczpkLHRoZWlyUHJvcHM6UixzbG90OkksZGVmYXVsdFRhZzpQdCxmZWF0dXJlczpjdCx2aXNpYmxlOmksbmFtZTpcIlBvcG92ZXIuQmFja2Ryb3BcIn0pfWxldCB2dD1cImRpdlwiLFR0PW5lLlJlbmRlclN0cmF0ZWd5fG5lLlN0YXRpYztmdW5jdGlvbiBtdCh0LGEpe2xldCBmPXJlKCkse2lkOkM9YGhlYWRsZXNzdWktcG9wb3Zlci1wYW5lbC0ke2Z9YCxmb2N1czptPSExLGFuY2hvcjpSLHBvcnRhbDp1PSExLG1vZGFsOmw9ITEsdHJhbnNpdGlvbjpjPSExLC4uLlB9PXQsW3IsaV09bGUoXCJQb3BvdmVyLlBhbmVsXCIpLHtjbG9zZTpCLGlzUG9ydGFsbGVkOnl9PW1lKFwiUG9wb3Zlci5QYW5lbFwiKSxJPWBoZWFkbGVzc3VpLWZvY3VzLXNlbnRpbmVsLWJlZm9yZS0ke2Z9YCxkPWBoZWFkbGVzc3VpLWZvY3VzLXNlbnRpbmVsLWFmdGVyLSR7Zn1gLG49WChudWxsKSx2PXFlKFIpLFtfLEZdPSRlKHYpLHg9SmUoKTt2JiYodT0hMCk7bGV0IFc9cShuLGEsdj9fOm51bGwsZT0+e2koe3R5cGU6NCxwYW5lbDplfSl9KSxUPWllKG4pLEQ9dHQoKTtrZSgoKT0+KGkoe3R5cGU6NSxwYW5lbElkOkN9KSwoKT0+e2koe3R5cGU6NSxwYW5lbElkOm51bGx9KX0pLFtDLGldKTtsZXQgTj1CZSgpLFtNLGpdPUNlKGMsbixOIT09bnVsbD8oTiZ6Lk9wZW4pPT09ei5PcGVuOnIucG9wb3ZlclN0YXRlPT09MCk7R2UoTSxyLmJ1dHRvbiwoKT0+e2koe3R5cGU6MX0pfSk7bGV0IGg9ci5fX2RlbW9Nb2RlPyExOmwmJk07S2UoaCxUKTtsZXQgUT1BKGU9Pnt2YXIgcztzd2l0Y2goZS5rZXkpe2Nhc2UgSy5Fc2NhcGU6aWYoci5wb3BvdmVyU3RhdGUhPT0wfHwhbi5jdXJyZW50fHxUIT1udWxsJiZULmFjdGl2ZUVsZW1lbnQmJiFuLmN1cnJlbnQuY29udGFpbnMoVC5hY3RpdmVFbGVtZW50KSlyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksaSh7dHlwZToxfSksKHM9ci5idXR0b24pPT1udWxsfHxzLmZvY3VzKCk7YnJlYWt9fSk7b2UoKCk9Pnt2YXIgZTt0LnN0YXRpY3x8ci5wb3BvdmVyU3RhdGU9PT0xJiYoKGU9dC51bm1vdW50KT09bnVsbHx8ZSkmJmkoe3R5cGU6NCxwYW5lbDpudWxsfSl9LFtyLnBvcG92ZXJTdGF0ZSx0LnVubW91bnQsdC5zdGF0aWMsaV0pLG9lKCgpPT57aWYoci5fX2RlbW9Nb2RlfHwhbXx8ci5wb3BvdmVyU3RhdGUhPT0wfHwhbi5jdXJyZW50KXJldHVybjtsZXQgZT1UPT1udWxsP3ZvaWQgMDpULmFjdGl2ZUVsZW1lbnQ7bi5jdXJyZW50LmNvbnRhaW5zKGUpfHxVKG4uY3VycmVudCxILkZpcnN0KX0sW3IuX19kZW1vTW9kZSxtLG4sci5wb3BvdmVyU3RhdGVdKTtsZXQgTz1MKCgpPT4oe29wZW46ci5wb3BvdmVyU3RhdGU9PT0wLGNsb3NlOkJ9KSxbci5wb3BvdmVyU3RhdGUsQl0pLGs9dmUodj94KCk6e30se3JlZjpXLGlkOkMsb25LZXlEb3duOlEsb25CbHVyOm0mJnIucG9wb3ZlclN0YXRlPT09MD9lPT57dmFyIG8scCxTLGIsZztsZXQgcz1lLnJlbGF0ZWRUYXJnZXQ7cyYmbi5jdXJyZW50JiYoKG89bi5jdXJyZW50KSE9bnVsbCYmby5jb250YWlucyhzKXx8KGkoe3R5cGU6MX0pLCgoUz0ocD1yLmJlZm9yZVBhbmVsU2VudGluZWwuY3VycmVudCk9PW51bGw/dm9pZCAwOnAuY29udGFpbnMpIT1udWxsJiZTLmNhbGwocCxzKXx8KGc9KGI9ci5hZnRlclBhbmVsU2VudGluZWwuY3VycmVudCk9PW51bGw/dm9pZCAwOmIuY29udGFpbnMpIT1udWxsJiZnLmNhbGwoYixzKSkmJnMuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KSkpfTp2b2lkIDAsdGFiSW5kZXg6LTEsc3R5bGU6ey4uLlAuc3R5bGUsLi4uRixcIi0tYnV0dG9uLXdpZHRoXCI6RGUoci5idXR0b24sITApLndpZHRofSwuLi5SZShqKX0pLFY9QWUoKSwkPUEoKCk9PntsZXQgZT1uLmN1cnJlbnQ7aWYoIWUpcmV0dXJuO2Z1bmN0aW9uIHMoKXt3KFYuY3VycmVudCx7W0cuRm9yd2FyZHNdOigpPT57dmFyIHA7VShlLEguRmlyc3QpPT09UGUuRXJyb3ImJigocD1yLmFmdGVyUGFuZWxTZW50aW5lbC5jdXJyZW50KT09bnVsbHx8cC5mb2N1cygpKX0sW0cuQmFja3dhcmRzXTooKT0+e3ZhciBvOyhvPXIuYnV0dG9uKT09bnVsbHx8by5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pfX0pfXMoKX0pLEo9QSgoKT0+e2xldCBlPW4uY3VycmVudDtpZighZSlyZXR1cm47ZnVuY3Rpb24gcygpe3coVi5jdXJyZW50LHtbRy5Gb3J3YXJkc106KCk9Pnt2YXIgRWU7aWYoIXIuYnV0dG9uKXJldHVybjtsZXQgbz1jZSgpLHA9by5pbmRleE9mKHIuYnV0dG9uKSxTPW8uc2xpY2UoMCxwKzEpLGc9Wy4uLm8uc2xpY2UocCsxKSwuLi5TXTtmb3IobGV0IHNlIG9mIGcuc2xpY2UoKSlpZihzZS5kYXRhc2V0LmhlYWRsZXNzdWlGb2N1c0d1YXJkPT09XCJ0cnVlXCJ8fChFZT1yLnBhbmVsKSE9bnVsbCYmRWUuY29udGFpbnMoc2UpKXtsZXQgYmU9Zy5pbmRleE9mKHNlKTtiZSE9PS0xJiZnLnNwbGljZShiZSwxKX1VKGcsSC5GaXJzdCx7c29ydGVkOiExfSl9LFtHLkJhY2t3YXJkc106KCk9Pnt2YXIgcDtVKGUsSC5QcmV2aW91cyk9PT1QZS5FcnJvciYmKChwPXIuYnV0dG9uKT09bnVsbHx8cC5mb2N1cygpKX19KX1zKCl9KTtyZXR1cm4gRS5jcmVhdGVFbGVtZW50KFllLG51bGwsRS5jcmVhdGVFbGVtZW50KHBlLlByb3ZpZGVyLHt2YWx1ZTpDfSxFLmNyZWF0ZUVsZW1lbnQoYWUuUHJvdmlkZXIse3ZhbHVlOntjbG9zZTpCLGlzUG9ydGFsbGVkOnl9fSxFLmNyZWF0ZUVsZW1lbnQob3Qse2VuYWJsZWQ6dT90LnN0YXRpY3x8TTohMX0sTSYmeSYmRS5jcmVhdGVFbGVtZW50KGRlLHtpZDpJLHJlZjpyLmJlZm9yZVBhbmVsU2VudGluZWwsZmVhdHVyZXM6ZmUuRm9jdXNhYmxlLFwiZGF0YS1oZWFkbGVzc3VpLWZvY3VzLWd1YXJkXCI6ITAsYXM6XCJidXR0b25cIix0eXBlOlwiYnV0dG9uXCIsb25Gb2N1czokfSksWih7bWVyZ2VSZWZzOkQsb3VyUHJvcHM6ayx0aGVpclByb3BzOlAsc2xvdDpPLGRlZmF1bHRUYWc6dnQsZmVhdHVyZXM6VHQsdmlzaWJsZTpNLG5hbWU6XCJQb3BvdmVyLlBhbmVsXCJ9KSxNJiZ5JiZFLmNyZWF0ZUVsZW1lbnQoZGUse2lkOmQscmVmOnIuYWZ0ZXJQYW5lbFNlbnRpbmVsLGZlYXR1cmVzOmZlLkZvY3VzYWJsZSxcImRhdGEtaGVhZGxlc3N1aS1mb2N1cy1ndWFyZFwiOiEwLGFzOlwiYnV0dG9uXCIsdHlwZTpcImJ1dHRvblwiLG9uRm9jdXM6Sn0pKSkpKX1sZXQgeXQ9XCJkaXZcIjtmdW5jdGlvbiBFdCh0LGEpe2xldCBmPVgobnVsbCksQz1xKGYsYSksW20sUl09Z2UoW10pLHU9VWUoKSxsPUEoZD0+e1Iobj0+e2xldCB2PW4uaW5kZXhPZihkKTtpZih2IT09LTEpe2xldCBfPW4uc2xpY2UoKTtyZXR1cm4gXy5zcGxpY2UodiwxKSxffXJldHVybiBufSl9KSxjPUEoZD0+KFIobj0+Wy4uLm4sZF0pLCgpPT5sKGQpKSksUD1BKCgpPT57dmFyIHY7bGV0IGQ9ZXQoZik7aWYoIWQpcmV0dXJuITE7bGV0IG49ZC5hY3RpdmVFbGVtZW50O3JldHVybih2PWYuY3VycmVudCkhPW51bGwmJnYuY29udGFpbnMobik/ITA6bS5zb21lKF89Pnt2YXIgRix4O3JldHVybigoRj1kLmdldEVsZW1lbnRCeUlkKF8uYnV0dG9uSWQuY3VycmVudCkpPT1udWxsP3ZvaWQgMDpGLmNvbnRhaW5zKG4pKXx8KCh4PWQuZ2V0RWxlbWVudEJ5SWQoXy5wYW5lbElkLmN1cnJlbnQpKT09bnVsbD92b2lkIDA6eC5jb250YWlucyhuKSl9KX0pLHI9QShkPT57Zm9yKGxldCBuIG9mIG0pbi5idXR0b25JZC5jdXJyZW50IT09ZCYmbi5jbG9zZSgpfSksaT1MKCgpPT4oe3JlZ2lzdGVyUG9wb3ZlcjpjLHVucmVnaXN0ZXJQb3BvdmVyOmwsaXNGb2N1c1dpdGhpblBvcG92ZXJHcm91cDpQLGNsb3NlT3RoZXJzOnIsbWFpblRyZWVOb2RlUmVmOnUubWFpblRyZWVOb2RlUmVmfSksW2MsbCxQLHIsdS5tYWluVHJlZU5vZGVSZWZdKSxCPUwoKCk9Pih7fSksW10pLHk9dCxJPXtyZWY6Q307cmV0dXJuIEUuY3JlYXRlRWxlbWVudCh5ZS5Qcm92aWRlcix7dmFsdWU6aX0sWih7b3VyUHJvcHM6SSx0aGVpclByb3BzOnksc2xvdDpCLGRlZmF1bHRUYWc6eXQsbmFtZTpcIlBvcG92ZXIuR3JvdXBcIn0pLEUuY3JlYXRlRWxlbWVudCh1Lk1haW5UcmVlTm9kZSxudWxsKSl9bGV0IGJ0PVkoaXQpLGd0PVkoZnQpLFN0PVkoTWUpLEF0PVkoTWUpLFJ0PVkobXQpLEN0PVkoRXQpLG5vPU9iamVjdC5hc3NpZ24oYnQse0J1dHRvbjpndCxCYWNrZHJvcDpBdCxPdmVybGF5OlN0LFBhbmVsOlJ0LEdyb3VwOkN0fSk7ZXhwb3J0e25vIGFzIFBvcG92ZXIsQXQgYXMgUG9wb3ZlckJhY2tkcm9wLGd0IGFzIFBvcG92ZXJCdXR0b24sQ3QgYXMgUG9wb3Zlckdyb3VwLFN0IGFzIFBvcG92ZXJPdmVybGF5LFJ0IGFzIFBvcG92ZXJQYW5lbH07XG4iXSwibmFtZXMiOlsidXNlRm9jdXNSaW5nIiwieGUiLCJ1c2VIb3ZlciIsIk9lIiwiRSIsImNyZWF0ZUNvbnRleHQiLCJlZSIsImNyZWF0ZVJlZiIsInVlIiwidXNlQ29udGV4dCIsInRlIiwidXNlRWZmZWN0Iiwib2UiLCJ1c2VNZW1vIiwiTCIsInVzZVJlZHVjZXIiLCJMZSIsInVzZVJlZiIsIlgiLCJ1c2VTdGF0ZSIsImdlIiwidXNlQWN0aXZlUHJlc3MiLCJJZSIsInVzZUVsZW1lbnRTaXplIiwiRGUiLCJ1c2VFdmVudCIsIkEiLCJ1c2VFdmVudExpc3RlbmVyIiwiaGUiLCJ1c2VJZCIsInJlIiwidXNlSXNvTW9ycGhpY0VmZmVjdCIsImtlIiwidXNlTGF0ZXN0VmFsdWUiLCJTZSIsInVzZU9uRGlzYXBwZWFyIiwiR2UiLCJ1c2VPdXRzaWRlQ2xpY2siLCJIZSIsInVzZU93bmVyRG9jdW1lbnQiLCJpZSIsInVzZVJlc29sdmVCdXR0b25UeXBlIiwiTmUiLCJ1c2VNYWluVHJlZU5vZGUiLCJVZSIsInVzZVJvb3RDb250YWluZXJzIiwid2UiLCJ1c2VTY3JvbGxMb2NrIiwiS2UiLCJvcHRpb25hbFJlZiIsIldlIiwidXNlU3luY1JlZnMiLCJxIiwiRGlyZWN0aW9uIiwiRyIsInVzZVRhYkRpcmVjdGlvbiIsIkFlIiwidHJhbnNpdGlvbkRhdGFBdHRyaWJ1dGVzIiwiUmUiLCJ1c2VUcmFuc2l0aW9uIiwiQ2UiLCJDbG9zZVByb3ZpZGVyIiwiamUiLCJGbG9hdGluZ1Byb3ZpZGVyIiwiVmUiLCJ1c2VGbG9hdGluZ1BhbmVsIiwiJGUiLCJ1c2VGbG9hdGluZ1BhbmVsUHJvcHMiLCJKZSIsInVzZUZsb2F0aW5nUmVmZXJlbmNlIiwiWGUiLCJ1c2VSZXNvbHZlZEFuY2hvciIsInFlIiwiSGlkZGVuIiwiZGUiLCJIaWRkZW5GZWF0dXJlcyIsImZlIiwiT3BlbkNsb3NlZFByb3ZpZGVyIiwiemUiLCJSZXNldE9wZW5DbG9zZWRQcm92aWRlciIsIlllIiwiU3RhdGUiLCJ6IiwidXNlT3BlbkNsb3NlZCIsIkJlIiwiaXNEaXNhYmxlZFJlYWN0SXNzdWU3NzExIiwiX2UiLCJGb2N1cyIsIkgiLCJGb2N1c1Jlc3VsdCIsIlBlIiwiRm9jdXNhYmxlTW9kZSIsIlFlIiwiZm9jdXNJbiIsIlUiLCJnZXRGb2N1c2FibGVFbGVtZW50cyIsImNlIiwiaXNGb2N1c2FibGVFbGVtZW50IiwiWmUiLCJtYXRjaCIsInciLCJnZXRPd25lckRvY3VtZW50IiwiZXQiLCJSZW5kZXJGZWF0dXJlcyIsIm5lIiwiZm9yd2FyZFJlZldpdGhBcyIsIlkiLCJtZXJnZVByb3BzIiwidmUiLCJyZW5kZXIiLCJaIiwidXNlTWVyZ2VSZWZzRm4iLCJ0dCIsIktleXMiLCJLIiwiUG9ydGFsIiwib3QiLCJ1c2VOZXN0ZWRQb3J0YWxzIiwicnQiLCJudCIsImYiLCJPcGVuIiwiQ2xvc2VkIiwibHQiLCJ1IiwiVG9nZ2xlUG9wb3ZlciIsIkNsb3NlUG9wb3ZlciIsIlNldEJ1dHRvbiIsIlNldEJ1dHRvbklkIiwiU2V0UGFuZWwiLCJTZXRQYW5lbElkIiwiYXQiLCJ0IiwicG9wb3ZlclN0YXRlIiwiX19kZW1vTW9kZSIsImEiLCJidXR0b24iLCJidXR0b25JZCIsInBhbmVsIiwicGFuZWxJZCIsIlRlIiwiZGlzcGxheU5hbWUiLCJsZSIsIkVycm9yIiwiY2FwdHVyZVN0YWNrVHJhY2UiLCJhZSIsIm1lIiwieWUiLCJGZSIsInBlIiwicHQiLCJzdCIsInR5cGUiLCJ1dCIsIml0IiwiSiIsIkMiLCJtIiwiUiIsImUiLCJjdXJyZW50IiwibCIsImJ1dHRvbnMiLCJiZWZvcmVQYW5lbFNlbnRpbmVsIiwiYWZ0ZXJQYW5lbFNlbnRpbmVsIiwiYWZ0ZXJCdXR0b25TZW50aW5lbCIsImMiLCJQIiwiciIsImkiLCJCIiwieSIsIkkiLCJkIiwibiIsInYiLCJfIiwiZyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsIk51bWJlciIsImNvbnRhaW5zIiwicyIsImluZGV4T2YiLCJvIiwibGVuZ3RoIiwicCIsIlMiLCJiIiwiRiIsIngiLCJXIiwiY2xvc2UiLCJUIiwiRCIsInJlZ2lzdGVyUG9wb3ZlciIsIk4iLCJpc0ZvY3VzV2l0aGluUG9wb3Zlckdyb3VwIiwiYWN0aXZlRWxlbWVudCIsIk0iLCJqIiwiaCIsIm1haW5UcmVlTm9kZVJlZiIsInBvcnRhbHMiLCJkZWZhdWx0Q29udGFpbmVycyIsImRlZmF1bHRWaWV3IiwidGFyZ2V0Iiwid2luZG93IiwiSFRNTEVsZW1lbnQiLCJjYWxsIiwicmVzb2x2ZUNvbnRhaW5lcnMiLCJMb29zZSIsInByZXZlbnREZWZhdWx0IiwiZm9jdXMiLCJPIiwiayIsImlzUG9ydGFsbGVkIiwiViIsIm9wZW4iLCIkIiwicmVmIiwiY3JlYXRlRWxlbWVudCIsIlByb3ZpZGVyIiwidmFsdWUiLCJvdXJQcm9wcyIsInRoZWlyUHJvcHMiLCJzbG90IiwiZGVmYXVsdFRhZyIsIm5hbWUiLCJNYWluVHJlZU5vZGUiLCJkdCIsImZ0IiwiaWQiLCJkaXNhYmxlZCIsImF1dG9Gb2N1cyIsImNsb3NlT3RoZXJzIiwiU3ltYm9sIiwicHVzaCIsInNwbGljZSIsImNvbnNvbGUiLCJ3YXJuIiwia2V5IiwiU3BhY2UiLCJFbnRlciIsImNsaWNrIiwic3RvcFByb3BhZ2F0aW9uIiwiRXNjYXBlIiwiY3VycmVudFRhcmdldCIsImlzRm9jdXNWaXNpYmxlIiwiZm9jdXNQcm9wcyIsImlzSG92ZXJlZCIsImhvdmVyUHJvcHMiLCJpc0Rpc2FibGVkIiwicHJlc3NlZCIsIlEiLCJwcmVzc1Byb3BzIiwiYWN0aXZlIiwiaG92ZXIiLCJhdXRvZm9jdXMiLCJvbktleURvd24iLCJvbkNsaWNrIiwib25LZXlVcCIsIm9uTW91c2VEb3duIiwiRm9yd2FyZHMiLCJGaXJzdCIsIkJhY2t3YXJkcyIsIkxhc3QiLCJmaWx0ZXIiLCJkYXRhc2V0IiwiaGVhZGxlc3N1aUZvY3VzR3VhcmQiLCJOZXh0IiwiUHJldmlvdXMiLCJyZWxhdGl2ZVRvIiwiRnJhZ21lbnQiLCJmZWF0dXJlcyIsIkZvY3VzYWJsZSIsImFzIiwib25Gb2N1cyIsIlB0IiwiY3QiLCJSZW5kZXJTdHJhdGVneSIsIlN0YXRpYyIsIk1lIiwidHJhbnNpdGlvbiIsInZpc2libGUiLCJ2dCIsIlR0IiwibXQiLCJhbmNob3IiLCJwb3J0YWwiLCJtb2RhbCIsInN0YXRpYyIsInVubW91bnQiLCJvbkJsdXIiLCJyZWxhdGVkVGFyZ2V0IiwicHJldmVudFNjcm9sbCIsInRhYkluZGV4Iiwic3R5bGUiLCJ3aWR0aCIsIkVlIiwic2xpY2UiLCJzZSIsImJlIiwic29ydGVkIiwiZW5hYmxlZCIsIm1lcmdlUmVmcyIsInl0IiwiRXQiLCJzb21lIiwiZ2V0RWxlbWVudEJ5SWQiLCJ1bnJlZ2lzdGVyUG9wb3ZlciIsImJ0IiwiZ3QiLCJTdCIsIkF0IiwiUnQiLCJDdCIsIm5vIiwiT2JqZWN0IiwiYXNzaWduIiwiQnV0dG9uIiwiQmFja2Ryb3AiLCJPdmVybGF5IiwiUGFuZWwiLCJHcm91cCIsIlBvcG92ZXIiLCJQb3BvdmVyQmFja2Ryb3AiLCJQb3BvdmVyQnV0dG9uIiwiUG9wb3Zlckdyb3VwIiwiUG9wb3Zlck92ZXJsYXkiLCJQb3BvdmVyUGFuZWwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/components/popover/popover.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/components/portal/portal.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/components/portal/portal.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Portal: function() { return /* binding */ te; },\n/* harmony export */ PortalGroup: function() { return /* binding */ J; },\n/* harmony export */ useNestedPortals: function() { return /* binding */ ee; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react-dom/index.js\");\n/* harmony import */ var _hooks_use_event_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../hooks/use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n/* harmony import */ var _hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../hooks/use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n/* harmony import */ var _hooks_use_on_unmount_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../hooks/use-on-unmount.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-unmount.js\");\n/* harmony import */ var _hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../hooks/use-owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-owner.js\");\n/* harmony import */ var _hooks_use_server_handoff_complete_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../hooks/use-server-handoff-complete.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js\");\n/* harmony import */ var _hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../hooks/use-sync-refs.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js\");\n/* harmony import */ var _internal_portal_force_root_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../internal/portal-force-root.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/portal-force-root.js\");\n/* harmony import */ var _utils_env_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/env.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js\");\n/* harmony import */ var _utils_render_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/render.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/render.js\");\n/* __next_internal_client_entry_do_not_use__ Portal,PortalGroup,useNestedPortals auto */ \n\n\n\n\n\n\n\n\n\n\nfunction D(p) {\n let r = (0,_internal_portal_force_root_js__WEBPACK_IMPORTED_MODULE_2__.usePortalRoot)(), l = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(v), e = (0,_hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__.useOwnerDocument)(p), [o, n] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(()=>{\n var t;\n if (!r && l !== null) return (t = l.current) != null ? t : null;\n if (_utils_env_js__WEBPACK_IMPORTED_MODULE_4__.env.isServer) return null;\n let u = e == null ? void 0 : e.getElementById(\"headlessui-portal-root\");\n if (u) return u;\n if (e === null) return null;\n let a = e.createElement(\"div\");\n return a.setAttribute(\"id\", \"headlessui-portal-root\"), e.body.appendChild(a);\n });\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n o !== null && (e != null && e.body.contains(o) || e == null || e.body.appendChild(o));\n }, [\n o,\n e\n ]), (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n r || l !== null && n(l.current);\n }, [\n l,\n n,\n r\n ]), o;\n}\n_c = D;\nlet M = react__WEBPACK_IMPORTED_MODULE_0__.Fragment, N = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.forwardRefWithAs)(function(r, l) {\n let e = r, o = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), n = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_6__.useSyncRefs)((0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_6__.optionalRef)((i)=>{\n o.current = i;\n }), l), u = (0,_hooks_use_owner_js__WEBPACK_IMPORTED_MODULE_3__.useOwnerDocument)(o), a = D(o), [t] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(()=>{\n var i;\n return _utils_env_js__WEBPACK_IMPORTED_MODULE_4__.env.isServer ? null : (i = u == null ? void 0 : u.createElement(\"div\")) != null ? i : null;\n }), s = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y), b = (0,_hooks_use_server_handoff_complete_js__WEBPACK_IMPORTED_MODULE_7__.useServerHandoffComplete)();\n return (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_8__.useIsoMorphicEffect)(()=>{\n !a || !t || a.contains(t) || (t.setAttribute(\"data-headlessui-portal\", \"\"), a.appendChild(t));\n }, [\n a,\n t\n ]), (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_8__.useIsoMorphicEffect)(()=>{\n if (t && s) return s.register(t);\n }, [\n s,\n t\n ]), (0,_hooks_use_on_unmount_js__WEBPACK_IMPORTED_MODULE_9__.useOnUnmount)(()=>{\n var i;\n !a || !t || (t instanceof Node && a.contains(t) && a.removeChild(t), a.childNodes.length <= 0 && ((i = a.parentElement) == null || i.removeChild(a)));\n }), b ? !a || !t ? null : /*#__PURE__*/ (0,react_dom__WEBPACK_IMPORTED_MODULE_1__.createPortal)((0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.render)({\n ourProps: {\n ref: n\n },\n theirProps: e,\n slot: {},\n defaultTag: M,\n name: \"Portal\"\n }), t) : null;\n});\nfunction S(p, r) {\n let l = (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_6__.useSyncRefs)(r), { enabled: e = !0, ...o } = p;\n return e ? /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(N, {\n ...o,\n ref: l\n }) : (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.render)({\n ourProps: {\n ref: l\n },\n theirProps: o,\n slot: {},\n defaultTag: M,\n name: \"Portal\"\n });\n}\n_c1 = S;\nlet j = react__WEBPACK_IMPORTED_MODULE_0__.Fragment, v = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nfunction W(p, r) {\n let { target: l, ...e } = p, n = {\n ref: (0,_hooks_use_sync_refs_js__WEBPACK_IMPORTED_MODULE_6__.useSyncRefs)(r)\n };\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(v.Provider, {\n value: l\n }, (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.render)({\n ourProps: n,\n theirProps: e,\n defaultTag: j,\n name: \"Popover.Group\"\n }));\n}\n_c2 = W;\nlet y = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nfunction ee() {\n let p = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y), r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]), l = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_10__.useEvent)((n)=>(r.current.push(n), p && p.register(n), ()=>e(n))), e = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_10__.useEvent)((n)=>{\n let u = r.current.indexOf(n);\n u !== -1 && r.current.splice(u, 1), p && p.unregister(n);\n }), o = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n register: l,\n unregister: e,\n portals: r\n }), [\n l,\n e,\n r\n ]);\n return [\n r,\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>function(param) {\n let { children: u } = param;\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(y.Provider, {\n value: o\n }, u);\n }, [\n o\n ])\n ];\n}\nlet I = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.forwardRefWithAs)(S), J = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_5__.forwardRefWithAs)(W), te = Object.assign(I, {\n Group: J\n});\n\nvar _c, _c1, _c2;\n$RefreshReg$(_c, \"D\");\n$RefreshReg$(_c1, \"S\");\n$RefreshReg$(_c2, \"W\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2NvbXBvbmVudHMvcG9ydGFsL3BvcnRhbC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozt5RkFBMEk7QUFBeUM7QUFBb0Q7QUFBNEU7QUFBNkQ7QUFBNEQ7QUFBc0Y7QUFBNEU7QUFBb0U7QUFBeUM7QUFBcUU7QUFBQSxTQUFTdUMsRUFBRUMsQ0FBQztJQUFFLElBQUlDLElBQUVULDZFQUFDQSxJQUFHVSxJQUFFcEMsaURBQUNBLENBQUNxQyxJQUFHQyxJQUFFcEIscUVBQUNBLENBQUNnQixJQUFHLENBQUNLLEdBQUVDLEVBQUUsR0FBQ2hDLCtDQUFDQSxDQUFDO1FBQUssSUFBSWlDO1FBQUUsSUFBRyxDQUFDTixLQUFHQyxNQUFJLE1BQUssT0FBTSxDQUFDSyxJQUFFTCxFQUFFTSxPQUFPLEtBQUcsT0FBS0QsSUFBRTtRQUFLLElBQUdiLDhDQUFDQSxDQUFDZSxRQUFRLEVBQUMsT0FBTztRQUFLLElBQUlDLElBQUVOLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVPLGNBQWMsQ0FBQztRQUEwQixJQUFHRCxHQUFFLE9BQU9BO1FBQUUsSUFBR04sTUFBSSxNQUFLLE9BQU87UUFBSyxJQUFJUSxJQUFFUixFQUFFUyxhQUFhLENBQUM7UUFBTyxPQUFPRCxFQUFFRSxZQUFZLENBQUMsTUFBSywyQkFBMEJWLEVBQUVXLElBQUksQ0FBQ0MsV0FBVyxDQUFDSjtJQUFFO0lBQUcsT0FBTzVDLGdEQUFDQSxDQUFDO1FBQUtxQyxNQUFJLFFBQU9ELENBQUFBLEtBQUcsUUFBTUEsRUFBRVcsSUFBSSxDQUFDRSxRQUFRLENBQUNaLE1BQUlELEtBQUcsUUFBTUEsRUFBRVcsSUFBSSxDQUFDQyxXQUFXLENBQUNYLEVBQUM7SUFBRSxHQUFFO1FBQUNBO1FBQUVEO0tBQUUsR0FBRXBDLGdEQUFDQSxDQUFDO1FBQUtpQyxLQUFHQyxNQUFJLFFBQU1JLEVBQUVKLEVBQUVN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QXBKSTtBQUFxSixJQUFJakIsa0JBQUUxRCxvREFBQ0EsQ0FBQztBQUFNLFNBQVMrRTtJQUFLLElBQUkzQyxJQUFFbEMsaURBQUNBLENBQUN3RCxJQUFHckIsSUFBRTdCLDZDQUFDQSxDQUFDLEVBQUUsR0FBRThCLElBQUV4Qiw4REFBQ0EsQ0FBQzRCLENBQUFBLElBQUlMLENBQUFBLEVBQUVPLE9BQU8sQ0FBQ29DLElBQUksQ0FBQ3RDLElBQUdOLEtBQUdBLEVBQUV3QixRQUFRLENBQUNsQixJQUFHLElBQUlGLEVBQUVFLEVBQUMsSUFBSUYsSUFBRTFCLDhEQUFDQSxDQUFDNEIsQ0FBQUE7UUFBSSxJQUFJSSxJQUFFVCxFQUFFTyxPQUFPLENBQUNxQyxPQUFPLENBQUN2QztRQUFHSSxNQUFJLENBQUMsS0FBR1QsRUFBRU8sT0FBTyxDQUFDc0MsTUFBTSxDQUFDcEMsR0FBRSxJQUFHVixLQUFHQSxFQUFFK0MsVUFBVSxDQUFDekM7SUFBRSxJQUFHRCxJQUFFbkMsOENBQUNBLENBQUMsSUFBSztZQUFDc0QsVUFBU3RCO1lBQUU2QyxZQUFXM0M7WUFBRTRDLFNBQVEvQztRQUFDLElBQUc7UUFBQ0M7UUFBRUU7UUFBRUg7S0FBRTtJQUFFLE9BQU07UUFBQ0E7UUFBRS9CLDhDQUFDQSxDQUFDLElBQUksU0FBUyxLQUFZO29CQUFaLEVBQUMrRSxVQUFTdkMsQ0FBQyxFQUFDLEdBQVo7Z0JBQWMscUJBQU9sRCxnREFBZSxDQUFDOEQsRUFBRW1CLFFBQVEsRUFBQztvQkFBQ0MsT0FBTXJDO2dCQUFDLEdBQUVLO1lBQUUsR0FBRTtZQUFDTDtTQUFFO0tBQUU7QUFBQTtBQUFDLElBQUk2QyxJQUFFdEQsa0VBQUNBLENBQUN3QyxJQUFHZSxJQUFFdkQsa0VBQUNBLENBQUMyQyxJQUFHYSxLQUFHQyxPQUFPQyxNQUFNLENBQUNKLEdBQUU7SUFBQ0ssT0FBTUo7QUFBQztBQUFnRSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9jb21wb25lbnRzL3BvcnRhbC9wb3J0YWwuanM/YmVlMyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtpbXBvcnQgZix7RnJhZ21lbnQgYXMgZyxjcmVhdGVDb250ZXh0IGFzIEUsdXNlQ29udGV4dCBhcyBULHVzZUVmZmVjdCBhcyBSLHVzZU1lbW8gYXMgYyx1c2VSZWYgYXMgQSx1c2VTdGF0ZSBhcyBHfWZyb21cInJlYWN0XCI7aW1wb3J0e2NyZWF0ZVBvcnRhbCBhcyBIfWZyb21cInJlYWN0LWRvbVwiO2ltcG9ydHt1c2VFdmVudCBhcyBMfWZyb20nLi4vLi4vaG9va3MvdXNlLWV2ZW50LmpzJztpbXBvcnR7dXNlSXNvTW9ycGhpY0VmZmVjdCBhcyB4fWZyb20nLi4vLi4vaG9va3MvdXNlLWlzby1tb3JwaGljLWVmZmVjdC5qcyc7aW1wb3J0e3VzZU9uVW5tb3VudCBhcyBPfWZyb20nLi4vLi4vaG9va3MvdXNlLW9uLXVubW91bnQuanMnO2ltcG9ydHt1c2VPd25lckRvY3VtZW50IGFzIF99ZnJvbScuLi8uLi9ob29rcy91c2Utb3duZXIuanMnO2ltcG9ydHt1c2VTZXJ2ZXJIYW5kb2ZmQ29tcGxldGUgYXMgaH1mcm9tJy4uLy4uL2hvb2tzL3VzZS1zZXJ2ZXItaGFuZG9mZi1jb21wbGV0ZS5qcyc7aW1wb3J0e29wdGlvbmFsUmVmIGFzIEYsdXNlU3luY1JlZnMgYXMgUH1mcm9tJy4uLy4uL2hvb2tzL3VzZS1zeW5jLXJlZnMuanMnO2ltcG9ydHt1c2VQb3J0YWxSb290IGFzIFV9ZnJvbScuLi8uLi9pbnRlcm5hbC9wb3J0YWwtZm9yY2Utcm9vdC5qcyc7aW1wb3J0e2VudiBhcyBDfWZyb20nLi4vLi4vdXRpbHMvZW52LmpzJztpbXBvcnR7Zm9yd2FyZFJlZldpdGhBcyBhcyBtLHJlbmRlciBhcyBkfWZyb20nLi4vLi4vdXRpbHMvcmVuZGVyLmpzJztmdW5jdGlvbiBEKHApe2xldCByPVUoKSxsPVQodiksZT1fKHApLFtvLG5dPUcoKCk9Pnt2YXIgdDtpZighciYmbCE9PW51bGwpcmV0dXJuKHQ9bC5jdXJyZW50KSE9bnVsbD90Om51bGw7aWYoQy5pc1NlcnZlcilyZXR1cm4gbnVsbDtsZXQgdT1lPT1udWxsP3ZvaWQgMDplLmdldEVsZW1lbnRCeUlkKFwiaGVhZGxlc3N1aS1wb3J0YWwtcm9vdFwiKTtpZih1KXJldHVybiB1O2lmKGU9PT1udWxsKXJldHVybiBudWxsO2xldCBhPWUuY3JlYXRlRWxlbWVudChcImRpdlwiKTtyZXR1cm4gYS5zZXRBdHRyaWJ1dGUoXCJpZFwiLFwiaGVhZGxlc3N1aS1wb3J0YWwtcm9vdFwiKSxlLmJvZHkuYXBwZW5kQ2hpbGQoYSl9KTtyZXR1cm4gUigoKT0+e28hPT1udWxsJiYoZSE9bnVsbCYmZS5ib2R5LmNvbnRhaW5zKG8pfHxlPT1udWxsfHxlLmJvZHkuYXBwZW5kQ2hpbGQobykpfSxbbyxlXSksUigoKT0+e3J8fGwhPT1udWxsJiZuKGwuY3VycmVudCl9LFtsLG4scl0pLG99bGV0IE09ZyxOPW0oZnVuY3Rpb24ocixsKXtsZXQgZT1yLG89QShudWxsKSxuPVAoRihpPT57by5jdXJyZW50PWl9KSxsKSx1PV8obyksYT1EKG8pLFt0XT1HKCgpPT57dmFyIGk7cmV0dXJuIEMuaXNTZXJ2ZXI/bnVsbDooaT11PT1udWxsP3ZvaWQgMDp1LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIikpIT1udWxsP2k6bnVsbH0pLHM9VCh5KSxiPWgoKTtyZXR1cm4geCgoKT0+eyFhfHwhdHx8YS5jb250YWlucyh0KXx8KHQuc2V0QXR0cmlidXRlKFwiZGF0YS1oZWFkbGVzc3VpLXBvcnRhbFwiLFwiXCIpLGEuYXBwZW5kQ2hpbGQodCkpfSxbYSx0XSkseCgoKT0+e2lmKHQmJnMpcmV0dXJuIHMucmVnaXN0ZXIodCl9LFtzLHRdKSxPKCgpPT57dmFyIGk7IWF8fCF0fHwodCBpbnN0YW5jZW9mIE5vZGUmJmEuY29udGFpbnModCkmJmEucmVtb3ZlQ2hpbGQodCksYS5jaGlsZE5vZGVzLmxlbmd0aDw9MCYmKChpPWEucGFyZW50RWxlbWVudCk9PW51bGx8fGkucmVtb3ZlQ2hpbGQoYSkpKX0pLGI/IWF8fCF0P251bGw6SChkKHtvdXJQcm9wczp7cmVmOm59LHRoZWlyUHJvcHM6ZSxzbG90Ont9LGRlZmF1bHRUYWc6TSxuYW1lOlwiUG9ydGFsXCJ9KSx0KTpudWxsfSk7ZnVuY3Rpb24gUyhwLHIpe2xldCBsPVAocikse2VuYWJsZWQ6ZT0hMCwuLi5vfT1wO3JldHVybiBlP2YuY3JlYXRlRWxlbWVudChOLHsuLi5vLHJlZjpsfSk6ZCh7b3VyUHJvcHM6e3JlZjpsfSx0aGVpclByb3BzOm8sc2xvdDp7fSxkZWZhdWx0VGFnOk0sbmFtZTpcIlBvcnRhbFwifSl9bGV0IGo9Zyx2PUUobnVsbCk7ZnVuY3Rpb24gVyhwLHIpe2xldHt0YXJnZXQ6bCwuLi5lfT1wLG49e3JlZjpQKHIpfTtyZXR1cm4gZi5jcmVhdGVFbGVtZW50KHYuUHJvdmlkZXIse3ZhbHVlOmx9LGQoe291clByb3BzOm4sdGhlaXJQcm9wczplLGRlZmF1bHRUYWc6aixuYW1lOlwiUG9wb3Zlci5Hcm91cFwifSkpfWxldCB5PUUobnVsbCk7ZnVuY3Rpb24gZWUoKXtsZXQgcD1UKHkpLHI9QShbXSksbD1MKG49PihyLmN1cnJlbnQucHVzaChuKSxwJiZwLnJlZ2lzdGVyKG4pLCgpPT5lKG4pKSksZT1MKG49PntsZXQgdT1yLmN1cnJlbnQuaW5kZXhPZihuKTt1IT09LTEmJnIuY3VycmVudC5zcGxpY2UodSwxKSxwJiZwLnVucmVnaXN0ZXIobil9KSxvPWMoKCk9Pih7cmVnaXN0ZXI6bCx1bnJlZ2lzdGVyOmUscG9ydGFsczpyfSksW2wsZSxyXSk7cmV0dXJuW3IsYygoKT0+ZnVuY3Rpb24oe2NoaWxkcmVuOnV9KXtyZXR1cm4gZi5jcmVhdGVFbGVtZW50KHkuUHJvdmlkZXIse3ZhbHVlOm99LHUpfSxbb10pXX1sZXQgST1tKFMpLEo9bShXKSx0ZT1PYmplY3QuYXNzaWduKEkse0dyb3VwOkp9KTtleHBvcnR7dGUgYXMgUG9ydGFsLEogYXMgUG9ydGFsR3JvdXAsZWUgYXMgdXNlTmVzdGVkUG9ydGFsc307XG4iXSwibmFtZXMiOlsiZiIsIkZyYWdtZW50IiwiZyIsImNyZWF0ZUNvbnRleHQiLCJFIiwidXNlQ29udGV4dCIsIlQiLCJ1c2VFZmZlY3QiLCJSIiwidXNlTWVtbyIsImMiLCJ1c2VSZWYiLCJBIiwidXNlU3RhdGUiLCJHIiwiY3JlYXRlUG9ydGFsIiwiSCIsInVzZUV2ZW50IiwiTCIsInVzZUlzb01vcnBoaWNFZmZlY3QiLCJ4IiwidXNlT25Vbm1vdW50IiwiTyIsInVzZU93bmVyRG9jdW1lbnQiLCJfIiwidXNlU2VydmVySGFuZG9mZkNvbXBsZXRlIiwiaCIsIm9wdGlvbmFsUmVmIiwiRiIsInVzZVN5bmNSZWZzIiwiUCIsInVzZVBvcnRhbFJvb3QiLCJVIiwiZW52IiwiQyIsImZvcndhcmRSZWZXaXRoQXMiLCJtIiwicmVuZGVyIiwiZCIsIkQiLCJwIiwiciIsImwiLCJ2IiwiZSIsIm8iLCJuIiwidCIsImN1cnJlbnQiLCJpc1NlcnZlciIsInUiLCJnZXRFbGVtZW50QnlJZCIsImEiLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwiYm9keSIsImFwcGVuZENoaWxkIiwiY29udGFpbnMiLCJNIiwiTiIsImkiLCJzIiwieSIsImIiLCJyZWdpc3RlciIsIk5vZGUiLCJyZW1vdmVDaGlsZCIsImNoaWxkTm9kZXMiLCJsZW5ndGgiLCJwYXJlbnRFbGVtZW50Iiwib3VyUHJvcHMiLCJyZWYiLCJ0aGVpclByb3BzIiwic2xvdCIsImRlZmF1bHRUYWciLCJuYW1lIiwiUyIsImVuYWJsZWQiLCJqIiwiVyIsInRhcmdldCIsIlByb3ZpZGVyIiwidmFsdWUiLCJlZSIsInB1c2giLCJpbmRleE9mIiwic3BsaWNlIiwidW5yZWdpc3RlciIsInBvcnRhbHMiLCJjaGlsZHJlbiIsIkkiLCJKIiwidGUiLCJPYmplY3QiLCJhc3NpZ24iLCJHcm91cCIsIlBvcnRhbCIsIlBvcnRhbEdyb3VwIiwidXNlTmVzdGVkUG9ydGFscyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/components/portal/portal.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/adjust-scrollbar-padding.js":
|
||
/*!*************************************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/document-overflow/adjust-scrollbar-padding.js ***!
|
||
\*************************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ adjustScrollbarPadding: function() { return /* binding */ d; }\n/* harmony export */ });\nfunction d() {\n let r;\n return {\n before (param) {\n let { doc: e } = param;\n var l;\n let o = e.documentElement, t = (l = e.defaultView) != null ? l : window;\n r = Math.max(0, t.innerWidth - o.clientWidth);\n },\n after (param) {\n let { doc: e, d: o } = param;\n let t = e.documentElement, l = Math.max(0, t.clientWidth - t.offsetWidth), n = Math.max(0, r - l);\n o.style(t, \"paddingRight\", `${n}px`);\n }\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L2FkanVzdC1zY3JvbGxiYXItcGFkZGluZy5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsU0FBU0E7SUFBSSxJQUFJQztJQUFFLE9BQU07UUFBQ0MsUUFBTyxLQUFPO2dCQUFQLEVBQUNDLEtBQUlDLENBQUMsRUFBQyxHQUFQO1lBQVMsSUFBSUM7WUFBRSxJQUFJQyxJQUFFRixFQUFFRyxlQUFlLEVBQUNDLElBQUUsQ0FBQ0gsSUFBRUQsRUFBRUssV0FBVyxLQUFHLE9BQUtKLElBQUVLO1lBQU9ULElBQUVVLEtBQUtDLEdBQUcsQ0FBQyxHQUFFSixFQUFFSyxVQUFVLEdBQUNQLEVBQUVRLFdBQVc7UUFBQztRQUFFQyxPQUFNLEtBQVc7Z0JBQVgsRUFBQ1osS0FBSUMsQ0FBQyxFQUFDSixHQUFFTSxDQUFDLEVBQUMsR0FBWDtZQUFhLElBQUlFLElBQUVKLEVBQUVHLGVBQWUsRUFBQ0YsSUFBRU0sS0FBS0MsR0FBRyxDQUFDLEdBQUVKLEVBQUVNLFdBQVcsR0FBQ04sRUFBRVEsV0FBVyxHQUFFQyxJQUFFTixLQUFLQyxHQUFHLENBQUMsR0FBRVgsSUFBRUk7WUFBR0MsRUFBRVksS0FBSyxDQUFDVixHQUFFLGdCQUFlLENBQUMsRUFBRVMsRUFBRSxFQUFFLENBQUM7UUFBQztJQUFDO0FBQUM7QUFBcUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvZG9jdW1lbnQtb3ZlcmZsb3cvYWRqdXN0LXNjcm9sbGJhci1wYWRkaW5nLmpzP2JkNjciXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gZCgpe2xldCByO3JldHVybntiZWZvcmUoe2RvYzplfSl7dmFyIGw7bGV0IG89ZS5kb2N1bWVudEVsZW1lbnQsdD0obD1lLmRlZmF1bHRWaWV3KSE9bnVsbD9sOndpbmRvdztyPU1hdGgubWF4KDAsdC5pbm5lcldpZHRoLW8uY2xpZW50V2lkdGgpfSxhZnRlcih7ZG9jOmUsZDpvfSl7bGV0IHQ9ZS5kb2N1bWVudEVsZW1lbnQsbD1NYXRoLm1heCgwLHQuY2xpZW50V2lkdGgtdC5vZmZzZXRXaWR0aCksbj1NYXRoLm1heCgwLHItbCk7by5zdHlsZSh0LFwicGFkZGluZ1JpZ2h0XCIsYCR7bn1weGApfX19ZXhwb3J0e2QgYXMgYWRqdXN0U2Nyb2xsYmFyUGFkZGluZ307XG4iXSwibmFtZXMiOlsiZCIsInIiLCJiZWZvcmUiLCJkb2MiLCJlIiwibCIsIm8iLCJkb2N1bWVudEVsZW1lbnQiLCJ0IiwiZGVmYXVsdFZpZXciLCJ3aW5kb3ciLCJNYXRoIiwibWF4IiwiaW5uZXJXaWR0aCIsImNsaWVudFdpZHRoIiwiYWZ0ZXIiLCJvZmZzZXRXaWR0aCIsIm4iLCJzdHlsZSIsImFkanVzdFNjcm9sbGJhclBhZGRpbmciXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/adjust-scrollbar-padding.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js":
|
||
/*!*******************************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js ***!
|
||
\*******************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ handleIOSLocking: function() { return /* binding */ d; }\n/* harmony export */ });\n/* harmony import */ var _utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n/* harmony import */ var _utils_platform_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/platform.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/platform.js\");\n\n\nfunction d() {\n return (0,_utils_platform_js__WEBPACK_IMPORTED_MODULE_0__.isIOS)() ? {\n before (param) {\n let { doc: r, d: n, meta: c } = param;\n function o(a) {\n return c.containers.flatMap((l)=>l()).some((l)=>l.contains(a));\n }\n n.microTask(()=>{\n var s;\n if (window.getComputedStyle(r.documentElement).scrollBehavior !== \"auto\") {\n let t = (0,_utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__.disposables)();\n t.style(r.documentElement, \"scrollBehavior\", \"auto\"), n.add(()=>n.microTask(()=>t.dispose()));\n }\n let a = (s = window.scrollY) != null ? s : window.pageYOffset, l = null;\n n.addEventListener(r, \"click\", (t)=>{\n if (t.target instanceof HTMLElement) try {\n let e = t.target.closest(\"a\");\n if (!e) return;\n let { hash: f } = new URL(e.href), i = r.querySelector(f);\n i && !o(i) && (l = i);\n } catch {}\n }, !0), n.addEventListener(r, \"touchstart\", (t)=>{\n if (t.target instanceof HTMLElement) if (o(t.target)) {\n let e = t.target;\n for(; e.parentElement && o(e.parentElement);)e = e.parentElement;\n n.style(e, \"overscrollBehavior\", \"contain\");\n } else n.style(t.target, \"touchAction\", \"none\");\n }), n.addEventListener(r, \"touchmove\", (t)=>{\n if (t.target instanceof HTMLElement) {\n if (t.target.tagName === \"INPUT\") return;\n if (o(t.target)) {\n let e = t.target;\n for(; e.parentElement && e.dataset.headlessuiPortal !== \"\" && !(e.scrollHeight > e.clientHeight || e.scrollWidth > e.clientWidth);)e = e.parentElement;\n e.dataset.headlessuiPortal === \"\" && t.preventDefault();\n } else t.preventDefault();\n }\n }, {\n passive: !1\n }), n.add(()=>{\n var e;\n let t = (e = window.scrollY) != null ? e : window.pageYOffset;\n a !== t && window.scrollTo(0, a), l && l.isConnected && (l.scrollIntoView({\n block: \"nearest\"\n }), l = null);\n });\n });\n }\n } : {};\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L2hhbmRsZS1pb3MtbG9ja2luZy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBeUQ7QUFBZ0Q7QUFBQSxTQUFTSTtJQUFJLE9BQU9ELHlEQUFDQSxLQUFHO1FBQUNFLFFBQU8sS0FBa0I7Z0JBQWxCLEVBQUNDLEtBQUlDLENBQUMsRUFBQ0gsR0FBRUksQ0FBQyxFQUFDQyxNQUFLQyxDQUFDLEVBQUMsR0FBbEI7WUFBb0IsU0FBU0MsRUFBRUMsQ0FBQztnQkFBRSxPQUFPRixFQUFFRyxVQUFVLENBQUNDLE9BQU8sQ0FBQ0MsQ0FBQUEsSUFBR0EsS0FBS0MsSUFBSSxDQUFDRCxDQUFBQSxJQUFHQSxFQUFFRSxRQUFRLENBQUNMO1lBQUc7WUFBQ0osRUFBRVUsU0FBUyxDQUFDO2dCQUFLLElBQUlDO2dCQUFFLElBQUdDLE9BQU9DLGdCQUFnQixDQUFDZCxFQUFFZSxlQUFlLEVBQUVDLGNBQWMsS0FBRyxRQUFPO29CQUFDLElBQUlDLElBQUV2QixrRUFBQ0E7b0JBQUd1QixFQUFFQyxLQUFLLENBQUNsQixFQUFFZSxlQUFlLEVBQUMsa0JBQWlCLFNBQVFkLEVBQUVrQixHQUFHLENBQUMsSUFBSWxCLEVBQUVVLFNBQVMsQ0FBQyxJQUFJTSxFQUFFRyxPQUFPO2dCQUFJO2dCQUFDLElBQUlmLElBQUUsQ0FBQ08sSUFBRUMsT0FBT1EsT0FBTyxLQUFHLE9BQUtULElBQUVDLE9BQU9TLFdBQVcsRUFBQ2QsSUFBRTtnQkFBS1AsRUFBRXNCLGdCQUFnQixDQUFDdkIsR0FBRSxTQUFRaUIsQ0FBQUE7b0JBQUksSUFBR0EsRUFBRU8sTUFBTSxZQUFZQyxhQUFZLElBQUc7d0JBQUMsSUFBSUMsSUFBRVQsRUFBRU8sTUFBTSxDQUFDRyxPQUFPLENBQUM7d0JBQUssSUFBRyxDQUFDRCxHQUFFO3dCQUFPLElBQUcsRUFBQ0UsTUFBS0MsQ0FBQyxFQUFDLEdBQUMsSUFBSUMsSUFBSUosRUFBRUssSUFBSSxHQUFFQyxJQUFFaEMsRUFBRWlDLGFBQWEsQ0FBQ0o7d0JBQUdHLEtBQUcsQ0FBQzVCLEVBQUU0QixNQUFLeEIsQ0FBQUEsSUFBRXdCLENBQUFBO29CQUFFLEVBQUMsT0FBSyxDQUFDO2dCQUFDLEdBQUUsQ0FBQyxJQUFHL0IsRUFBRXNCLGdCQUFnQixDQUFDdkIsR0FBRSxjQUFhaUIsQ0FBQUE7b0JBQUksSUFBR0EsRUFBRU8sTUFBTSxZQUFZQyxhQUFZLElBQUdyQixFQUFFYSxFQUFFTyxNQUFNLEdBQUU7d0JBQUMsSUFBSUUsSUFBRVQsRUFBRU8sTUFBTTt3QkFBQyxNQUFLRSxFQUFFUSxhQUFhLElBQUU5QixFQUFFc0IsRUFBRVEsYUFBYSxHQUFHUixJQUFFQSxFQUFFUSxhQUFhO3dCQUFDakMsRUFBRWlCLEtBQUssQ0FBQ1EsR0FBRSxzQkFBcUI7b0JBQVUsT0FBTXpCLEVBQUVpQixLQUFLLENBQUNELEVBQUVPLE1BQU0sRUFBQyxlQUFjO2dCQUFPLElBQUd2QixFQUFFc0IsZ0JBQWdCLENBQUN2QixHQUFFLGFBQVlpQixDQUFBQTtvQkFBSSxJQUFHQSxFQUFFTyxNQUFNLFlBQVlDLGFBQVk7d0JBQUMsSUFBR1IsRUFBRU8sTUFBTSxDQUFDVyxPQUFPLEtBQUcsU0FBUTt3QkFBTyxJQUFHL0IsRUFBRWEsRUFBRU8sTUFBTSxHQUFFOzRCQUFDLElBQUlFLElBQUVULEVBQUVPLE1BQU07NEJBQUMsTUFBS0UsRUFBRVEsYUFBYSxJQUFFUixFQUFFVSxPQUFPLENBQUNDLGdCQUFnQixLQUFHLE1BQUksQ0FBRVgsQ0FBQUEsRUFBRVksWUFBWSxHQUFDWixFQUFFYSxZQUFZLElBQUViLEVBQUVjLFdBQVcsR0FBQ2QsRUFBRWUsV0FBVyxHQUFHZixJQUFFQSxFQUFFUSxhQUFhOzRCQUFDUixFQUFFVSxPQUFPLENBQUNDLGdCQUFnQixLQUFHLE1BQUlwQixFQUFFeUIsY0FBYzt3QkFBRSxPQUFNekIsRUFBRXlCLGNBQWM7b0JBQUU7Z0JBQUMsR0FBRTtvQkFBQ0MsU0FBUSxDQUFDO2dCQUFDLElBQUcxQyxFQUFFa0IsR0FBRyxDQUFDO29CQUFLLElBQUlPO29CQUFFLElBQUlULElBQUUsQ0FBQ1MsSUFBRWIsT0FBT1EsT0FBTyxLQUFHLE9BQUtLLElBQUViLE9BQU9TLFdBQVc7b0JBQUNqQixNQUFJWSxLQUFHSixPQUFPK0IsUUFBUSxDQUFDLEdBQUV2QyxJQUFHRyxLQUFHQSxFQUFFcUMsV0FBVyxJQUFHckMsQ0FBQUEsRUFBRXNDLGNBQWMsQ0FBQzt3QkFBQ0MsT0FBTTtvQkFBUyxJQUFHdkMsSUFBRSxJQUFHO2dCQUFFO1lBQUU7UUFBRTtJQUFDLElBQUUsQ0FBQztBQUFDO0FBQStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L2hhbmRsZS1pb3MtbG9ja2luZy5qcz9iZGFiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHtkaXNwb3NhYmxlcyBhcyBtfWZyb20nLi4vLi4vdXRpbHMvZGlzcG9zYWJsZXMuanMnO2ltcG9ydHtpc0lPUyBhcyB1fWZyb20nLi4vLi4vdXRpbHMvcGxhdGZvcm0uanMnO2Z1bmN0aW9uIGQoKXtyZXR1cm4gdSgpP3tiZWZvcmUoe2RvYzpyLGQ6bixtZXRhOmN9KXtmdW5jdGlvbiBvKGEpe3JldHVybiBjLmNvbnRhaW5lcnMuZmxhdE1hcChsPT5sKCkpLnNvbWUobD0+bC5jb250YWlucyhhKSl9bi5taWNyb1Rhc2soKCk9Pnt2YXIgcztpZih3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShyLmRvY3VtZW50RWxlbWVudCkuc2Nyb2xsQmVoYXZpb3IhPT1cImF1dG9cIil7bGV0IHQ9bSgpO3Quc3R5bGUoci5kb2N1bWVudEVsZW1lbnQsXCJzY3JvbGxCZWhhdmlvclwiLFwiYXV0b1wiKSxuLmFkZCgoKT0+bi5taWNyb1Rhc2soKCk9PnQuZGlzcG9zZSgpKSl9bGV0IGE9KHM9d2luZG93LnNjcm9sbFkpIT1udWxsP3M6d2luZG93LnBhZ2VZT2Zmc2V0LGw9bnVsbDtuLmFkZEV2ZW50TGlzdGVuZXIocixcImNsaWNrXCIsdD0+e2lmKHQudGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpdHJ5e2xldCBlPXQudGFyZ2V0LmNsb3Nlc3QoXCJhXCIpO2lmKCFlKXJldHVybjtsZXR7aGFzaDpmfT1uZXcgVVJMKGUuaHJlZiksaT1yLnF1ZXJ5U2VsZWN0b3IoZik7aSYmIW8oaSkmJihsPWkpfWNhdGNoe319LCEwKSxuLmFkZEV2ZW50TGlzdGVuZXIocixcInRvdWNoc3RhcnRcIix0PT57aWYodC50YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudClpZihvKHQudGFyZ2V0KSl7bGV0IGU9dC50YXJnZXQ7Zm9yKDtlLnBhcmVudEVsZW1lbnQmJm8oZS5wYXJlbnRFbGVtZW50KTspZT1lLnBhcmVudEVsZW1lbnQ7bi5zdHlsZShlLFwib3ZlcnNjcm9sbEJlaGF2aW9yXCIsXCJjb250YWluXCIpfWVsc2Ugbi5zdHlsZSh0LnRhcmdldCxcInRvdWNoQWN0aW9uXCIsXCJub25lXCIpfSksbi5hZGRFdmVudExpc3RlbmVyKHIsXCJ0b3VjaG1vdmVcIix0PT57aWYodC50YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl7aWYodC50YXJnZXQudGFnTmFtZT09PVwiSU5QVVRcIilyZXR1cm47aWYobyh0LnRhcmdldCkpe2xldCBlPXQudGFyZ2V0O2Zvcig7ZS5wYXJlbnRFbGVtZW50JiZlLmRhdGFzZXQuaGVhZGxlc3N1aVBvcnRhbCE9PVwiXCImJiEoZS5zY3JvbGxIZWlnaHQ+ZS5jbGllbnRIZWlnaHR8fGUuc2Nyb2xsV2lkdGg+ZS5jbGllbnRXaWR0aCk7KWU9ZS5wYXJlbnRFbGVtZW50O2UuZGF0YXNldC5oZWFkbGVzc3VpUG9ydGFsPT09XCJcIiYmdC5wcmV2ZW50RGVmYXVsdCgpfWVsc2UgdC5wcmV2ZW50RGVmYXVsdCgpfX0se3Bhc3NpdmU6ITF9KSxuLmFkZCgoKT0+e3ZhciBlO2xldCB0PShlPXdpbmRvdy5zY3JvbGxZKSE9bnVsbD9lOndpbmRvdy5wYWdlWU9mZnNldDthIT09dCYmd2luZG93LnNjcm9sbFRvKDAsYSksbCYmbC5pc0Nvbm5lY3RlZCYmKGwuc2Nyb2xsSW50b1ZpZXcoe2Jsb2NrOlwibmVhcmVzdFwifSksbD1udWxsKX0pfSl9fTp7fX1leHBvcnR7ZCBhcyBoYW5kbGVJT1NMb2NraW5nfTtcbiJdLCJuYW1lcyI6WyJkaXNwb3NhYmxlcyIsIm0iLCJpc0lPUyIsInUiLCJkIiwiYmVmb3JlIiwiZG9jIiwiciIsIm4iLCJtZXRhIiwiYyIsIm8iLCJhIiwiY29udGFpbmVycyIsImZsYXRNYXAiLCJsIiwic29tZSIsImNvbnRhaW5zIiwibWljcm9UYXNrIiwicyIsIndpbmRvdyIsImdldENvbXB1dGVkU3R5bGUiLCJkb2N1bWVudEVsZW1lbnQiLCJzY3JvbGxCZWhhdmlvciIsInQiLCJzdHlsZSIsImFkZCIsImRpc3Bvc2UiLCJzY3JvbGxZIiwicGFnZVlPZmZzZXQiLCJhZGRFdmVudExpc3RlbmVyIiwidGFyZ2V0IiwiSFRNTEVsZW1lbnQiLCJlIiwiY2xvc2VzdCIsImhhc2giLCJmIiwiVVJMIiwiaHJlZiIsImkiLCJxdWVyeVNlbGVjdG9yIiwicGFyZW50RWxlbWVudCIsInRhZ05hbWUiLCJkYXRhc2V0IiwiaGVhZGxlc3N1aVBvcnRhbCIsInNjcm9sbEhlaWdodCIsImNsaWVudEhlaWdodCIsInNjcm9sbFdpZHRoIiwiY2xpZW50V2lkdGgiLCJwcmV2ZW50RGVmYXVsdCIsInBhc3NpdmUiLCJzY3JvbGxUbyIsImlzQ29ubmVjdGVkIiwic2Nyb2xsSW50b1ZpZXciLCJibG9jayIsImhhbmRsZUlPU0xvY2tpbmciXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ overflows: function() { return /* binding */ a; }\n/* harmony export */ });\n/* harmony import */ var _utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n/* harmony import */ var _utils_store_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/store.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/store.js\");\n/* harmony import */ var _adjust_scrollbar_padding_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./adjust-scrollbar-padding.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/adjust-scrollbar-padding.js\");\n/* harmony import */ var _handle_ios_locking_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./handle-ios-locking.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js\");\n/* harmony import */ var _prevent_scroll_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./prevent-scroll.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/prevent-scroll.js\");\n\n\n\n\n\nfunction m(e) {\n let n = {};\n for (let t of e)Object.assign(n, t(n));\n return n;\n}\nlet a = (0,_utils_store_js__WEBPACK_IMPORTED_MODULE_0__.createStore)(()=>new Map, {\n PUSH (e, n) {\n var o;\n let t = (o = this.get(e)) != null ? o : {\n doc: e,\n count: 0,\n d: (0,_utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__.disposables)(),\n meta: new Set\n };\n return t.count++, t.meta.add(n), this.set(e, t), this;\n },\n POP (e, n) {\n let t = this.get(e);\n return t && (t.count--, t.meta.delete(n)), this;\n },\n SCROLL_PREVENT (param) {\n let { doc: e, d: n, meta: t } = param;\n let o = {\n doc: e,\n d: n,\n meta: m(t)\n }, c = [\n (0,_handle_ios_locking_js__WEBPACK_IMPORTED_MODULE_2__.handleIOSLocking)(),\n (0,_adjust_scrollbar_padding_js__WEBPACK_IMPORTED_MODULE_3__.adjustScrollbarPadding)(),\n (0,_prevent_scroll_js__WEBPACK_IMPORTED_MODULE_4__.preventScroll)()\n ];\n c.forEach((param)=>{\n let { before: r } = param;\n return r == null ? void 0 : r(o);\n }), c.forEach((param)=>{\n let { after: r } = param;\n return r == null ? void 0 : r(o);\n });\n },\n SCROLL_ALLOW (param) {\n let { d: e } = param;\n e.dispose();\n },\n TEARDOWN (param) {\n let { doc: e } = param;\n this.delete(e);\n }\n});\na.subscribe(()=>{\n let e = a.getSnapshot(), n = new Map;\n for (let [t] of e)n.set(t, t.documentElement.style.overflow);\n for (let t of e.values()){\n let o = n.get(t.doc) === \"hidden\", c = t.count !== 0;\n (c && !o || !c && o) && a.dispatch(t.count > 0 ? \"SCROLL_PREVENT\" : \"SCROLL_ALLOW\", t), t.count === 0 && a.dispatch(\"TEARDOWN\", t);\n }\n});\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L292ZXJmbG93LXN0b3JlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUF5RDtBQUFtRDtBQUF1RTtBQUEyRDtBQUFvRDtBQUFBLFNBQVNVLEVBQUVDLENBQUM7SUFBRSxJQUFJQyxJQUFFLENBQUM7SUFBRSxLQUFJLElBQUlDLEtBQUtGLEVBQUVHLE9BQU9DLE1BQU0sQ0FBQ0gsR0FBRUMsRUFBRUQ7SUFBSSxPQUFPQTtBQUFDO0FBQUMsSUFBSUksSUFBRWIsNERBQUNBLENBQUMsSUFBSSxJQUFJYyxLQUFJO0lBQUNDLE1BQUtQLENBQUMsRUFBQ0MsQ0FBQztRQUFFLElBQUlPO1FBQUUsSUFBSU4sSUFBRSxDQUFDTSxJQUFFLElBQUksQ0FBQ0MsR0FBRyxDQUFDVCxFQUFDLEtBQUksT0FBS1EsSUFBRTtZQUFDRSxLQUFJVjtZQUFFVyxPQUFNO1lBQUVmLEdBQUVOLGtFQUFDQTtZQUFHc0IsTUFBSyxJQUFJQztRQUFHO1FBQUUsT0FBT1gsRUFBRVMsS0FBSyxJQUFHVCxFQUFFVSxJQUFJLENBQUNFLEdBQUcsQ0FBQ2IsSUFBRyxJQUFJLENBQUNjLEdBQUcsQ0FBQ2YsR0FBRUUsSUFBRyxJQUFJO0lBQUE7SUFBRWMsS0FBSWhCLENBQUMsRUFBQ0MsQ0FBQztRQUFFLElBQUlDLElBQUUsSUFBSSxDQUFDTyxHQUFHLENBQUNUO1FBQUcsT0FBT0UsS0FBSUEsQ0FBQUEsRUFBRVMsS0FBSyxJQUFHVCxFQUFFVSxJQUFJLENBQUNLLE1BQU0sQ0FBQ2hCLEVBQUMsR0FBRyxJQUFJO0lBQUE7SUFBRWlCLGdCQUFlLEtBQWtCO1lBQWxCLEVBQUNSLEtBQUlWLENBQUMsRUFBQ0osR0FBRUssQ0FBQyxFQUFDVyxNQUFLVixDQUFDLEVBQUMsR0FBbEI7UUFBb0IsSUFBSU0sSUFBRTtZQUFDRSxLQUFJVjtZQUFFSixHQUFFSztZQUFFVyxNQUFLYixFQUFFRztRQUFFLEdBQUVpQixJQUFFO1lBQUN2Qix3RUFBQ0E7WUFBR0Ysb0ZBQUNBO1lBQUdJLGlFQUFDQTtTQUFHO1FBQUNxQixFQUFFQyxPQUFPLENBQUM7Z0JBQUMsRUFBQ0MsUUFBT0MsQ0FBQyxFQUFDO21CQUFHQSxLQUFHLE9BQUssS0FBSyxJQUFFQSxFQUFFZDtZQUFJVyxFQUFFQyxPQUFPLENBQUM7Z0JBQUMsRUFBQ0csT0FBTUQsQ0FBQyxFQUFDO21CQUFHQSxLQUFHLE9BQUssS0FBSyxJQUFFQSxFQUFFZDs7SUFBRztJQUFFZ0IsY0FBYSxLQUFLO1lBQUwsRUFBQzVCLEdBQUVJLENBQUMsRUFBQyxHQUFMO1FBQU9BLEVBQUV5QixPQUFPO0lBQUU7SUFBRUMsVUFBUyxLQUFPO1lBQVAsRUFBQ2hCLEtBQUlWLENBQUMsRUFBQyxHQUFQO1FBQVMsSUFBSSxDQUFDaUIsTUFBTSxDQUFDakI7SUFBRTtBQUFDO0FBQUdLLEVBQUVzQixTQUFTLENBQUM7SUFBSyxJQUFJM0IsSUFBRUssRUFBRXVCLFdBQVcsSUFBRzNCLElBQUUsSUFBSUs7SUFBSSxLQUFJLElBQUcsQ0FBQ0osRUFBRSxJQUFHRixFQUFFQyxFQUFFYyxHQUFHLENBQUNiLEdBQUVBLEVBQUUyQixlQUFlLENBQUNDLEtBQUssQ0FBQ0MsUUFBUTtJQUFFLEtBQUksSUFBSTdCLEtBQUtGLEVBQUVnQyxNQUFNLEdBQUc7UUFBQyxJQUFJeEIsSUFBRVAsRUFBRVEsR0FBRyxDQUFDUCxFQUFFUSxHQUFHLE1BQUksVUFBU1MsSUFBRWpCLEVBQUVTLEtBQUssS0FBRztRQUFHUSxDQUFBQSxLQUFHLENBQUNYLEtBQUcsQ0FBQ1csS0FBR1gsQ0FBQUEsS0FBSUgsRUFBRTRCLFFBQVEsQ0FBQy9CLEVBQUVTLEtBQUssR0FBQyxJQUFFLG1CQUFpQixnQkFBZVQsSUFBR0EsRUFBRVMsS0FBSyxLQUFHLEtBQUdOLEVBQUU0QixRQUFRLENBQUMsWUFBVy9CO0lBQUU7QUFBQztBQUEwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy9kb2N1bWVudC1vdmVyZmxvdy9vdmVyZmxvdy1zdG9yZS5qcz8zNWFmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHtkaXNwb3NhYmxlcyBhcyBzfWZyb20nLi4vLi4vdXRpbHMvZGlzcG9zYWJsZXMuanMnO2ltcG9ydHtjcmVhdGVTdG9yZSBhcyBpfWZyb20nLi4vLi4vdXRpbHMvc3RvcmUuanMnO2ltcG9ydHthZGp1c3RTY3JvbGxiYXJQYWRkaW5nIGFzIGx9ZnJvbScuL2FkanVzdC1zY3JvbGxiYXItcGFkZGluZy5qcyc7aW1wb3J0e2hhbmRsZUlPU0xvY2tpbmcgYXMgZH1mcm9tJy4vaGFuZGxlLWlvcy1sb2NraW5nLmpzJztpbXBvcnR7cHJldmVudFNjcm9sbCBhcyBwfWZyb20nLi9wcmV2ZW50LXNjcm9sbC5qcyc7ZnVuY3Rpb24gbShlKXtsZXQgbj17fTtmb3IobGV0IHQgb2YgZSlPYmplY3QuYXNzaWduKG4sdChuKSk7cmV0dXJuIG59bGV0IGE9aSgoKT0+bmV3IE1hcCx7UFVTSChlLG4pe3ZhciBvO2xldCB0PShvPXRoaXMuZ2V0KGUpKSE9bnVsbD9vOntkb2M6ZSxjb3VudDowLGQ6cygpLG1ldGE6bmV3IFNldH07cmV0dXJuIHQuY291bnQrKyx0Lm1ldGEuYWRkKG4pLHRoaXMuc2V0KGUsdCksdGhpc30sUE9QKGUsbil7bGV0IHQ9dGhpcy5nZXQoZSk7cmV0dXJuIHQmJih0LmNvdW50LS0sdC5tZXRhLmRlbGV0ZShuKSksdGhpc30sU0NST0xMX1BSRVZFTlQoe2RvYzplLGQ6bixtZXRhOnR9KXtsZXQgbz17ZG9jOmUsZDpuLG1ldGE6bSh0KX0sYz1bZCgpLGwoKSxwKCldO2MuZm9yRWFjaCgoe2JlZm9yZTpyfSk9PnI9PW51bGw/dm9pZCAwOnIobykpLGMuZm9yRWFjaCgoe2FmdGVyOnJ9KT0+cj09bnVsbD92b2lkIDA6cihvKSl9LFNDUk9MTF9BTExPVyh7ZDplfSl7ZS5kaXNwb3NlKCl9LFRFQVJET1dOKHtkb2M6ZX0pe3RoaXMuZGVsZXRlKGUpfX0pO2Euc3Vic2NyaWJlKCgpPT57bGV0IGU9YS5nZXRTbmFwc2hvdCgpLG49bmV3IE1hcDtmb3IobGV0W3Rdb2YgZSluLnNldCh0LHQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLm92ZXJmbG93KTtmb3IobGV0IHQgb2YgZS52YWx1ZXMoKSl7bGV0IG89bi5nZXQodC5kb2MpPT09XCJoaWRkZW5cIixjPXQuY291bnQhPT0wOyhjJiYhb3x8IWMmJm8pJiZhLmRpc3BhdGNoKHQuY291bnQ+MD9cIlNDUk9MTF9QUkVWRU5UXCI6XCJTQ1JPTExfQUxMT1dcIix0KSx0LmNvdW50PT09MCYmYS5kaXNwYXRjaChcIlRFQVJET1dOXCIsdCl9fSk7ZXhwb3J0e2EgYXMgb3ZlcmZsb3dzfTtcbiJdLCJuYW1lcyI6WyJkaXNwb3NhYmxlcyIsInMiLCJjcmVhdGVTdG9yZSIsImkiLCJhZGp1c3RTY3JvbGxiYXJQYWRkaW5nIiwibCIsImhhbmRsZUlPU0xvY2tpbmciLCJkIiwicHJldmVudFNjcm9sbCIsInAiLCJtIiwiZSIsIm4iLCJ0IiwiT2JqZWN0IiwiYXNzaWduIiwiYSIsIk1hcCIsIlBVU0giLCJvIiwiZ2V0IiwiZG9jIiwiY291bnQiLCJtZXRhIiwiU2V0IiwiYWRkIiwic2V0IiwiUE9QIiwiZGVsZXRlIiwiU0NST0xMX1BSRVZFTlQiLCJjIiwiZm9yRWFjaCIsImJlZm9yZSIsInIiLCJhZnRlciIsIlNDUk9MTF9BTExPVyIsImRpc3Bvc2UiLCJURUFSRE9XTiIsInN1YnNjcmliZSIsImdldFNuYXBzaG90IiwiZG9jdW1lbnRFbGVtZW50Iiwic3R5bGUiLCJvdmVyZmxvdyIsInZhbHVlcyIsImRpc3BhdGNoIiwib3ZlcmZsb3dzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/prevent-scroll.js":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/document-overflow/prevent-scroll.js ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ preventScroll: function() { return /* binding */ r; }\n/* harmony export */ });\nfunction r() {\n return {\n before (param) {\n let { doc: e, d: o } = param;\n o.style(e.documentElement, \"overflow\", \"hidden\");\n }\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L3ByZXZlbnQtc2Nyb2xsLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxTQUFTQTtJQUFJLE9BQU07UUFBQ0MsUUFBTyxLQUFXO2dCQUFYLEVBQUNDLEtBQUlDLENBQUMsRUFBQ0MsR0FBRUMsQ0FBQyxFQUFDLEdBQVg7WUFBYUEsRUFBRUMsS0FBSyxDQUFDSCxFQUFFSSxlQUFlLEVBQUMsWUFBVztRQUFTO0lBQUM7QUFBQztBQUE0QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy9kb2N1bWVudC1vdmVyZmxvdy9wcmV2ZW50LXNjcm9sbC5qcz85OTdkIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHIoKXtyZXR1cm57YmVmb3JlKHtkb2M6ZSxkOm99KXtvLnN0eWxlKGUuZG9jdW1lbnRFbGVtZW50LFwib3ZlcmZsb3dcIixcImhpZGRlblwiKX19fWV4cG9ydHtyIGFzIHByZXZlbnRTY3JvbGx9O1xuIl0sIm5hbWVzIjpbInIiLCJiZWZvcmUiLCJkb2MiLCJlIiwiZCIsIm8iLCJzdHlsZSIsImRvY3VtZW50RWxlbWVudCIsInByZXZlbnRTY3JvbGwiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/prevent-scroll.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js":
|
||
/*!**********************************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js ***!
|
||
\**********************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useDocumentOverflowLockedEffect: function() { return /* binding */ a; }\n/* harmony export */ });\n/* harmony import */ var _hooks_use_store_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../hooks/use-store.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-store.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n/* harmony import */ var _overflow_store_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./overflow-store.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js\");\n\n\n\nfunction a(r, e) {\n let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : ()=>({\n containers: []\n });\n let f = (0,_hooks_use_store_js__WEBPACK_IMPORTED_MODULE_0__.useStore)(_overflow_store_js__WEBPACK_IMPORTED_MODULE_1__.overflows), o = e ? f.get(e) : void 0, i = o ? o.count > 0 : !1;\n return (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_2__.useIsoMorphicEffect)(()=>{\n if (!(!e || !r)) return _overflow_store_js__WEBPACK_IMPORTED_MODULE_1__.overflows.dispatch(\"PUSH\", e, n), ()=>_overflow_store_js__WEBPACK_IMPORTED_MODULE_1__.overflows.dispatch(\"POP\", e, n);\n }, [\n r,\n e\n ]), i;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL2RvY3VtZW50LW92ZXJmbG93L3VzZS1kb2N1bWVudC1vdmVyZmxvdy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQW9EO0FBQW1FO0FBQWdEO0FBQUEsU0FBU00sRUFBRUMsQ0FBQyxFQUFDQyxDQUFDO1FBQUNDLElBQUFBLGlFQUFFLElBQUs7WUFBQ0MsWUFBVyxFQUFFO1FBQUE7SUFBSSxJQUFJQyxJQUFFViw2REFBQ0EsQ0FBQ0kseURBQUNBLEdBQUVPLElBQUVKLElBQUVHLEVBQUVFLEdBQUcsQ0FBQ0wsS0FBRyxLQUFLLEdBQUVNLElBQUVGLElBQUVBLEVBQUVHLEtBQUssR0FBQyxJQUFFLENBQUM7SUFBRSxPQUFPWiwrRUFBQ0EsQ0FBQztRQUFLLElBQUcsQ0FBRSxFQUFDSyxLQUFHLENBQUNELENBQUFBLEdBQUcsT0FBT0YseURBQUNBLENBQUNXLFFBQVEsQ0FBQyxRQUFPUixHQUFFQyxJQUFHLElBQUlKLHlEQUFDQSxDQUFDVyxRQUFRLENBQUMsT0FBTVIsR0FBRUM7SUFBRSxHQUFFO1FBQUNGO1FBQUVDO0tBQUUsR0FBRU07QUFBQztBQUE4QyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy9kb2N1bWVudC1vdmVyZmxvdy91c2UtZG9jdW1lbnQtb3ZlcmZsb3cuanM/MTljNiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlU3RvcmUgYXMgc31mcm9tJy4uLy4uL2hvb2tzL3VzZS1zdG9yZS5qcyc7aW1wb3J0e3VzZUlzb01vcnBoaWNFZmZlY3QgYXMgdX1mcm9tJy4uL3VzZS1pc28tbW9ycGhpYy1lZmZlY3QuanMnO2ltcG9ydHtvdmVyZmxvd3MgYXMgdH1mcm9tJy4vb3ZlcmZsb3ctc3RvcmUuanMnO2Z1bmN0aW9uIGEocixlLG49KCk9Pih7Y29udGFpbmVyczpbXX0pKXtsZXQgZj1zKHQpLG89ZT9mLmdldChlKTp2b2lkIDAsaT1vP28uY291bnQ+MDohMTtyZXR1cm4gdSgoKT0+e2lmKCEoIWV8fCFyKSlyZXR1cm4gdC5kaXNwYXRjaChcIlBVU0hcIixlLG4pLCgpPT50LmRpc3BhdGNoKFwiUE9QXCIsZSxuKX0sW3IsZV0pLGl9ZXhwb3J0e2EgYXMgdXNlRG9jdW1lbnRPdmVyZmxvd0xvY2tlZEVmZmVjdH07XG4iXSwibmFtZXMiOlsidXNlU3RvcmUiLCJzIiwidXNlSXNvTW9ycGhpY0VmZmVjdCIsInUiLCJvdmVyZmxvd3MiLCJ0IiwiYSIsInIiLCJlIiwibiIsImNvbnRhaW5lcnMiLCJmIiwibyIsImdldCIsImkiLCJjb3VudCIsImRpc3BhdGNoIiwidXNlRG9jdW1lbnRPdmVyZmxvd0xvY2tlZEVmZmVjdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-active-press.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-active-press.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useActivePress: function() { return /* binding */ w; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_owner_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js\");\n/* harmony import */ var _use_disposables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-disposables.js\");\n/* harmony import */ var _use_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n\n\n\n\nfunction E(e) {\n let t = e.width / 2, n = e.height / 2;\n return {\n top: e.clientY - n,\n right: e.clientX + t,\n bottom: e.clientY + n,\n left: e.clientX - t\n };\n}\n_c = E;\nfunction P(e, t) {\n return !(!e || !t || e.right < t.left || e.left > t.right || e.bottom < t.top || e.top > t.bottom);\n}\n_c1 = P;\nfunction w() {\n let { disabled: e = !1 } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n let t = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), [n, l] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(!1), r = (0,_use_disposables_js__WEBPACK_IMPORTED_MODULE_1__.useDisposables)(), o = (0,_use_event_js__WEBPACK_IMPORTED_MODULE_2__.useEvent)(()=>{\n t.current = null, l(!1), r.dispose();\n }), f = (0,_use_event_js__WEBPACK_IMPORTED_MODULE_2__.useEvent)((s)=>{\n if (r.dispose(), t.current === null) {\n t.current = s.currentTarget, l(!0);\n {\n let i = (0,_utils_owner_js__WEBPACK_IMPORTED_MODULE_3__.getOwnerDocument)(s.currentTarget);\n r.addEventListener(i, \"pointerup\", o, !1), r.addEventListener(i, \"pointermove\", (c)=>{\n if (t.current) {\n let p = E(c);\n l(P(p, t.current.getBoundingClientRect()));\n }\n }, !1), r.addEventListener(i, \"pointercancel\", o, !1);\n }\n }\n });\n return {\n pressed: n,\n pressProps: e ? {} : {\n onPointerDown: f,\n onPointerUp: o,\n onClick: o\n }\n };\n}\n\nvar _c, _c1;\n$RefreshReg$(_c, \"E\");\n$RefreshReg$(_c1, \"P\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1hY3RpdmUtcHJlc3MuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBNkM7QUFBcUQ7QUFBc0Q7QUFBMEM7QUFBQSxTQUFTVSxFQUFFQyxDQUFDO0lBQUUsSUFBSUMsSUFBRUQsRUFBRUUsS0FBSyxHQUFDLEdBQUVDLElBQUVILEVBQUVJLE1BQU0sR0FBQztJQUFFLE9BQU07UUFBQ0MsS0FBSUwsRUFBRU0sT0FBTyxHQUFDSDtRQUFFSSxPQUFNUCxFQUFFUSxPQUFPLEdBQUNQO1FBQUVRLFFBQU9ULEVBQUVNLE9BQU8sR0FBQ0g7UUFBRU8sTUFBS1YsRUFBRVEsT0FBTyxHQUFDUDtJQUFDO0FBQUM7S0FBL0dGO0FBQWdILFNBQVNZLEVBQUVYLENBQUMsRUFBQ0MsQ0FBQztJQUFFLE9BQU0sQ0FBRSxFQUFDRCxLQUFHLENBQUNDLEtBQUdELEVBQUVPLEtBQUssR0FBQ04sRUFBRVMsSUFBSSxJQUFFVixFQUFFVSxJQUFJLEdBQUNULEVBQUVNLEtBQUssSUFBRVAsRUFBRVMsTUFBTSxHQUFDUixFQUFFSSxHQUFHLElBQUVMLEVBQUVLLEdBQUcsR0FBQ0osRUFBRVEsTUFBTTtBQUFDO01BQXRGRTtBQUF1RixTQUFTQztRQUFFLEVBQUNDLFVBQVNiLElBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBZixpRUFBZ0IsQ0FBQztJQUFHLElBQUlDLElBQUVYLDZDQUFDQSxDQUFDLE9BQU0sQ0FBQ2EsR0FBRVcsRUFBRSxHQUFDdEIsK0NBQUNBLENBQUMsQ0FBQyxJQUFHdUIsSUFBRW5CLG1FQUFDQSxJQUFHb0IsSUFBRWxCLHVEQUFDQSxDQUFDO1FBQUtHLEVBQUVnQixPQUFPLEdBQUMsTUFBS0gsRUFBRSxDQUFDLElBQUdDLEVBQUVHLE9BQU87SUFBRSxJQUFHQyxJQUFFckIsdURBQUNBLENBQUNzQixDQUFBQTtRQUFJLElBQUdMLEVBQUVHLE9BQU8sSUFBR2pCLEVBQUVnQixPQUFPLEtBQUcsTUFBSztZQUFDaEIsRUFBRWdCLE9BQU8sR0FBQ0csRUFBRUMsYUFBYSxFQUFDUCxFQUFFLENBQUM7WUFBRztnQkFBQyxJQUFJUSxJQUFFNUIsaUVBQUNBLENBQUMwQixFQUFFQyxhQUFhO2dCQUFFTixFQUFFUSxnQkFBZ0IsQ0FBQ0QsR0FBRSxhQUFZTixHQUFFLENBQUMsSUFBR0QsRUFBRVEsZ0JBQWdCLENBQUNELEdBQUUsZUFBY0UsQ0FBQUE7b0JBQUksSUFBR3ZCLEVBQUVnQixPQUFPLEVBQUM7d0JBQUMsSUFBSVEsSUFBRTFCLEVBQUV5Qjt3QkFBR1YsRUFBRUgsRUFBRWMsR0FBRXhCLEVBQUVnQixPQUFPLENBQUNTLHFCQUFxQjtvQkFBSTtnQkFBQyxHQUFFLENBQUMsSUFBR1gsRUFBRVEsZ0JBQWdCLENBQUNELEdBQUUsaUJBQWdCTixHQUFFLENBQUM7WUFBRTtRQUFDO0lBQUM7SUFBRyxPQUFNO1FBQUNXLFNBQVF4QjtRQUFFeUIsWUFBVzVCLElBQUUsQ0FBQyxJQUFFO1lBQUM2QixlQUFjVjtZQUFFVyxhQUFZZDtZQUFFZSxTQUFRZjtRQUFDO0lBQUM7QUFBQztBQUE2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2UtYWN0aXZlLXByZXNzLmpzP2VlZGQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e3VzZVJlZiBhcyBhLHVzZVN0YXRlIGFzIG19ZnJvbVwicmVhY3RcIjtpbXBvcnR7Z2V0T3duZXJEb2N1bWVudCBhcyBkfWZyb20nLi4vdXRpbHMvb3duZXIuanMnO2ltcG9ydHt1c2VEaXNwb3NhYmxlcyBhcyBnfWZyb20nLi91c2UtZGlzcG9zYWJsZXMuanMnO2ltcG9ydHt1c2VFdmVudCBhcyB1fWZyb20nLi91c2UtZXZlbnQuanMnO2Z1bmN0aW9uIEUoZSl7bGV0IHQ9ZS53aWR0aC8yLG49ZS5oZWlnaHQvMjtyZXR1cm57dG9wOmUuY2xpZW50WS1uLHJpZ2h0OmUuY2xpZW50WCt0LGJvdHRvbTplLmNsaWVudFkrbixsZWZ0OmUuY2xpZW50WC10fX1mdW5jdGlvbiBQKGUsdCl7cmV0dXJuISghZXx8IXR8fGUucmlnaHQ8dC5sZWZ0fHxlLmxlZnQ+dC5yaWdodHx8ZS5ib3R0b208dC50b3B8fGUudG9wPnQuYm90dG9tKX1mdW5jdGlvbiB3KHtkaXNhYmxlZDplPSExfT17fSl7bGV0IHQ9YShudWxsKSxbbixsXT1tKCExKSxyPWcoKSxvPXUoKCk9Pnt0LmN1cnJlbnQ9bnVsbCxsKCExKSxyLmRpc3Bvc2UoKX0pLGY9dShzPT57aWYoci5kaXNwb3NlKCksdC5jdXJyZW50PT09bnVsbCl7dC5jdXJyZW50PXMuY3VycmVudFRhcmdldCxsKCEwKTt7bGV0IGk9ZChzLmN1cnJlbnRUYXJnZXQpO3IuYWRkRXZlbnRMaXN0ZW5lcihpLFwicG9pbnRlcnVwXCIsbywhMSksci5hZGRFdmVudExpc3RlbmVyKGksXCJwb2ludGVybW92ZVwiLGM9PntpZih0LmN1cnJlbnQpe2xldCBwPUUoYyk7bChQKHAsdC5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKSl9fSwhMSksci5hZGRFdmVudExpc3RlbmVyKGksXCJwb2ludGVyY2FuY2VsXCIsbywhMSl9fX0pO3JldHVybntwcmVzc2VkOm4scHJlc3NQcm9wczplP3t9OntvblBvaW50ZXJEb3duOmYsb25Qb2ludGVyVXA6byxvbkNsaWNrOm99fX1leHBvcnR7dyBhcyB1c2VBY3RpdmVQcmVzc307XG4iXSwibmFtZXMiOlsidXNlUmVmIiwiYSIsInVzZVN0YXRlIiwibSIsImdldE93bmVyRG9jdW1lbnQiLCJkIiwidXNlRGlzcG9zYWJsZXMiLCJnIiwidXNlRXZlbnQiLCJ1IiwiRSIsImUiLCJ0Iiwid2lkdGgiLCJuIiwiaGVpZ2h0IiwidG9wIiwiY2xpZW50WSIsInJpZ2h0IiwiY2xpZW50WCIsImJvdHRvbSIsImxlZnQiLCJQIiwidyIsImRpc2FibGVkIiwibCIsInIiLCJvIiwiY3VycmVudCIsImRpc3Bvc2UiLCJmIiwicyIsImN1cnJlbnRUYXJnZXQiLCJpIiwiYWRkRXZlbnRMaXN0ZW5lciIsImMiLCJwIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwicHJlc3NlZCIsInByZXNzUHJvcHMiLCJvblBvaW50ZXJEb3duIiwib25Qb2ludGVyVXAiLCJvbkNsaWNrIiwidXNlQWN0aXZlUHJlc3MiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-active-press.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-disposables.js":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-disposables.js ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useDisposables: function() { return /* binding */ p; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n\n\nfunction p() {\n let [e] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(_utils_disposables_js__WEBPACK_IMPORTED_MODULE_1__.disposables);\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>()=>e.dispose(), [\n e\n ]), e;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1kaXNwb3NhYmxlcy5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBZ0Q7QUFBc0Q7QUFBQSxTQUFTTTtJQUFJLElBQUcsQ0FBQ0MsRUFBRSxHQUFDSiwrQ0FBQ0EsQ0FBQ0UsOERBQUNBO0lBQUUsT0FBT0osZ0RBQUNBLENBQUMsSUFBSSxJQUFJTSxFQUFFQyxPQUFPLElBQUc7UUFBQ0Q7S0FBRSxHQUFFQTtBQUFDO0FBQTZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1kaXNwb3NhYmxlcy5qcz82YzZkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VFZmZlY3QgYXMgcyx1c2VTdGF0ZSBhcyBvfWZyb21cInJlYWN0XCI7aW1wb3J0e2Rpc3Bvc2FibGVzIGFzIHR9ZnJvbScuLi91dGlscy9kaXNwb3NhYmxlcy5qcyc7ZnVuY3Rpb24gcCgpe2xldFtlXT1vKHQpO3JldHVybiBzKCgpPT4oKT0+ZS5kaXNwb3NlKCksW2VdKSxlfWV4cG9ydHtwIGFzIHVzZURpc3Bvc2FibGVzfTtcbiJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJzIiwidXNlU3RhdGUiLCJvIiwiZGlzcG9zYWJsZXMiLCJ0IiwicCIsImUiLCJkaXNwb3NlIiwidXNlRGlzcG9zYWJsZXMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-disposables.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-document-event.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-document-event.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useDocumentEvent: function() { return /* binding */ i; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n\n\nfunction i(t, e, o, n) {\n let u = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__.useLatestValue)(o);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (!t) return;\n function r(m) {\n u.current(m);\n }\n return document.addEventListener(e, r, n), ()=>document.removeEventListener(e, r, n);\n }, [\n t,\n e,\n n\n ]);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1kb2N1bWVudC1ldmVudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0M7QUFBdUQ7QUFBQSxTQUFTSSxFQUFFQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0MsQ0FBQyxFQUFDQyxDQUFDO0lBQUUsSUFBSUMsSUFBRU4sb0VBQUNBLENBQUNJO0lBQUdOLGdEQUFDQSxDQUFDO1FBQUssSUFBRyxDQUFDSSxHQUFFO1FBQU8sU0FBU0ssRUFBRUMsQ0FBQztZQUFFRixFQUFFRyxPQUFPLENBQUNEO1FBQUU7UUFBQyxPQUFPRSxTQUFTQyxnQkFBZ0IsQ0FBQ1IsR0FBRUksR0FBRUYsSUFBRyxJQUFJSyxTQUFTRSxtQkFBbUIsQ0FBQ1QsR0FBRUksR0FBRUY7SUFBRSxHQUFFO1FBQUNIO1FBQUVDO1FBQUVFO0tBQUU7QUFBQztBQUErQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2UtZG9jdW1lbnQtZXZlbnQuanM/NDg4NiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlRWZmZWN0IGFzIGN9ZnJvbVwicmVhY3RcIjtpbXBvcnR7dXNlTGF0ZXN0VmFsdWUgYXMgYX1mcm9tJy4vdXNlLWxhdGVzdC12YWx1ZS5qcyc7ZnVuY3Rpb24gaSh0LGUsbyxuKXtsZXQgdT1hKG8pO2MoKCk9PntpZighdClyZXR1cm47ZnVuY3Rpb24gcihtKXt1LmN1cnJlbnQobSl9cmV0dXJuIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoZSxyLG4pLCgpPT5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGUscixuKX0sW3QsZSxuXSl9ZXhwb3J0e2kgYXMgdXNlRG9jdW1lbnRFdmVudH07XG4iXSwibmFtZXMiOlsidXNlRWZmZWN0IiwiYyIsInVzZUxhdGVzdFZhbHVlIiwiYSIsImkiLCJ0IiwiZSIsIm8iLCJuIiwidSIsInIiLCJtIiwiY3VycmVudCIsImRvY3VtZW50IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJ1c2VEb2N1bWVudEV2ZW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-document-event.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-element-size.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-element-size.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useElementSize: function() { return /* binding */ f; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n\n\nfunction s(e) {\n if (e === null) return {\n width: 0,\n height: 0\n };\n let { width: n, height: t } = e.getBoundingClientRect();\n return {\n width: n,\n height: t\n };\n}\nfunction f(e) {\n let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1;\n let t = e === null ? null : \"current\" in e ? e.current : e, [l, u] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useReducer)(()=>({}), {}), r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>s(t), [\n t,\n l\n ]);\n return (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n if (!t) return;\n let i = new ResizeObserver(u);\n return i.observe(t), ()=>{\n i.disconnect();\n };\n }, [\n t\n ]), n ? {\n width: `${r.width}px`,\n height: `${r.height}px`\n } : r;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1lbGVtZW50LXNpemUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWdEO0FBQWtFO0FBQUEsU0FBU00sRUFBRUMsQ0FBQztJQUFFLElBQUdBLE1BQUksTUFBSyxPQUFNO1FBQUNDLE9BQU07UUFBRUMsUUFBTztJQUFDO0lBQUUsSUFBRyxFQUFDRCxPQUFNRSxDQUFDLEVBQUNELFFBQU9FLENBQUMsRUFBQyxHQUFDSixFQUFFSyxxQkFBcUI7SUFBRyxPQUFNO1FBQUNKLE9BQU1FO1FBQUVELFFBQU9FO0lBQUM7QUFBQztBQUFDLFNBQVNFLEVBQUVOLENBQUM7UUFBQ0csSUFBQUEsaUVBQUUsQ0FBQztJQUFHLElBQUlDLElBQUVKLE1BQUksT0FBSyxPQUFLLGFBQVlBLElBQUVBLEVBQUVPLE9BQU8sR0FBQ1AsR0FBRSxDQUFDUSxHQUFFQyxFQUFFLEdBQUNiLGlEQUFDQSxDQUFDLElBQUssRUFBQyxJQUFHLENBQUMsSUFBR2MsSUFBRWhCLDhDQUFDQSxDQUFDLElBQUlLLEVBQUVLLElBQUc7UUFBQ0E7UUFBRUk7S0FBRTtJQUFFLE9BQU9WLCtFQUFDQSxDQUFDO1FBQUssSUFBRyxDQUFDTSxHQUFFO1FBQU8sSUFBSU8sSUFBRSxJQUFJQyxlQUFlSDtRQUFHLE9BQU9FLEVBQUVFLE9BQU8sQ0FBQ1QsSUFBRztZQUFLTyxFQUFFRyxVQUFVO1FBQUU7SUFBQyxHQUFFO1FBQUNWO0tBQUUsR0FBRUQsSUFBRTtRQUFDRixPQUFNLENBQUMsRUFBRVMsRUFBRVQsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUFDQyxRQUFPLENBQUMsRUFBRVEsRUFBRVIsTUFBTSxDQUFDLEVBQUUsQ0FBQztJQUFBLElBQUVRO0FBQUM7QUFBNkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLWVsZW1lbnQtc2l6ZS5qcz82YWZmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VNZW1vIGFzIG8sdXNlUmVkdWNlciBhcyBjfWZyb21cInJlYWN0XCI7aW1wb3J0e3VzZUlzb01vcnBoaWNFZmZlY3QgYXMgaH1mcm9tJy4vdXNlLWlzby1tb3JwaGljLWVmZmVjdC5qcyc7ZnVuY3Rpb24gcyhlKXtpZihlPT09bnVsbClyZXR1cm57d2lkdGg6MCxoZWlnaHQ6MH07bGV0e3dpZHRoOm4saGVpZ2h0OnR9PWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7cmV0dXJue3dpZHRoOm4saGVpZ2h0OnR9fWZ1bmN0aW9uIGYoZSxuPSExKXtsZXQgdD1lPT09bnVsbD9udWxsOlwiY3VycmVudFwiaW4gZT9lLmN1cnJlbnQ6ZSxbbCx1XT1jKCgpPT4oe30pLHt9KSxyPW8oKCk9PnModCksW3QsbF0pO3JldHVybiBoKCgpPT57aWYoIXQpcmV0dXJuO2xldCBpPW5ldyBSZXNpemVPYnNlcnZlcih1KTtyZXR1cm4gaS5vYnNlcnZlKHQpLCgpPT57aS5kaXNjb25uZWN0KCl9fSxbdF0pLG4/e3dpZHRoOmAke3Iud2lkdGh9cHhgLGhlaWdodDpgJHtyLmhlaWdodH1weGB9OnJ9ZXhwb3J0e2YgYXMgdXNlRWxlbWVudFNpemV9O1xuIl0sIm5hbWVzIjpbInVzZU1lbW8iLCJvIiwidXNlUmVkdWNlciIsImMiLCJ1c2VJc29Nb3JwaGljRWZmZWN0IiwiaCIsInMiLCJlIiwid2lkdGgiLCJoZWlnaHQiLCJuIiwidCIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsImYiLCJjdXJyZW50IiwibCIsInUiLCJyIiwiaSIsIlJlc2l6ZU9ic2VydmVyIiwib2JzZXJ2ZSIsImRpc2Nvbm5lY3QiLCJ1c2VFbGVtZW50U2l6ZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-element-size.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event-listener.js":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-event-listener.js ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useEventListener: function() { return /* binding */ E; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n\n\nfunction E(n, e, a, t) {\n let i = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__.useLatestValue)(a);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n n = n != null ? n : window;\n function r(o) {\n i.current(o);\n }\n return n.addEventListener(e, r, t), ()=>n.removeEventListener(e, r, t);\n }, [\n n,\n e,\n t\n ]);\n}\n_c = E;\n\nvar _c;\n$RefreshReg$(_c, \"E\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1ldmVudC1saXN0ZW5lci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0M7QUFBdUQ7QUFBQSxTQUFTSSxFQUFFQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0MsQ0FBQyxFQUFDQyxDQUFDO0lBQUUsSUFBSUMsSUFBRU4sb0VBQUNBLENBQUNJO0lBQUdOLGdEQUFDQSxDQUFDO1FBQUtJLElBQUVBLEtBQUcsT0FBS0EsSUFBRUs7UUFBTyxTQUFTQyxFQUFFQyxDQUFDO1lBQUVILEVBQUVJLE9BQU8sQ0FBQ0Q7UUFBRTtRQUFDLE9BQU9QLEVBQUVTLGdCQUFnQixDQUFDUixHQUFFSyxHQUFFSCxJQUFHLElBQUlILEVBQUVVLG1CQUFtQixDQUFDVCxHQUFFSyxHQUFFSDtJQUFFLEdBQUU7UUFBQ0g7UUFBRUM7UUFBRUU7S0FBRTtBQUFDO0tBQXRKSjtBQUFxTCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2UtZXZlbnQtbGlzdGVuZXIuanM/ODNkMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlRWZmZWN0IGFzIGR9ZnJvbVwicmVhY3RcIjtpbXBvcnR7dXNlTGF0ZXN0VmFsdWUgYXMgc31mcm9tJy4vdXNlLWxhdGVzdC12YWx1ZS5qcyc7ZnVuY3Rpb24gRShuLGUsYSx0KXtsZXQgaT1zKGEpO2QoKCk9PntuPW4hPW51bGw/bjp3aW5kb3c7ZnVuY3Rpb24gcihvKXtpLmN1cnJlbnQobyl9cmV0dXJuIG4uYWRkRXZlbnRMaXN0ZW5lcihlLHIsdCksKCk9Pm4ucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLHIsdCl9LFtuLGUsdF0pfWV4cG9ydHtFIGFzIHVzZUV2ZW50TGlzdGVuZXJ9O1xuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsImQiLCJ1c2VMYXRlc3RWYWx1ZSIsInMiLCJFIiwibiIsImUiLCJhIiwidCIsImkiLCJ3aW5kb3ciLCJyIiwibyIsImN1cnJlbnQiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInVzZUV2ZW50TGlzdGVuZXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event-listener.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-event.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useEvent: function() { return /* binding */ o; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\nvar _s = $RefreshSig$();\n\n\nlet o = function(t) {\n _s();\n let e = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__.useLatestValue)(t);\n return react__WEBPACK_IMPORTED_MODULE_0__.useCallback(function() {\n for(var _len = arguments.length, r = new Array(_len), _key = 0; _key < _len; _key++){\n r[_key] = arguments[_key];\n }\n return e.current(...r);\n }, [\n e\n ]);\n};\n_s(o, \"epj4qY15NHsef74wNqHIp5fdZmg=\");\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1ldmVudC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQXFCO0FBQXVEO0FBQUEsSUFBSUcsSUFBRSxTQUFTQyxDQUFDOztJQUFFLElBQUlDLElBQUVILG9FQUFDQSxDQUFDRTtJQUFHLE9BQU9KLDhDQUFhLENBQUM7eUNBQUlPO1lBQUFBOztlQUFJRixFQUFFRyxPQUFPLElBQUlEO09BQUc7UUFBQ0Y7S0FBRTtBQUFDO0dBQTFFRjtBQUFrRyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2UtZXZlbnQuanM/NGFmYyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYSBmcm9tXCJyZWFjdFwiO2ltcG9ydHt1c2VMYXRlc3RWYWx1ZSBhcyBufWZyb20nLi91c2UtbGF0ZXN0LXZhbHVlLmpzJztsZXQgbz1mdW5jdGlvbih0KXtsZXQgZT1uKHQpO3JldHVybiBhLnVzZUNhbGxiYWNrKCguLi5yKT0+ZS5jdXJyZW50KC4uLnIpLFtlXSl9O2V4cG9ydHtvIGFzIHVzZUV2ZW50fTtcbiJdLCJuYW1lcyI6WyJhIiwidXNlTGF0ZXN0VmFsdWUiLCJuIiwibyIsInQiLCJlIiwidXNlQ2FsbGJhY2siLCJyIiwiY3VycmVudCIsInVzZUV2ZW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-flags.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-flags.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useFlags: function() { return /* binding */ c; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\nfunction c() {\n let u = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;\n let [t, l] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(u), g = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>l(e), [\n t\n ]), s = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>l((a)=>a | e), [\n t\n ]), m = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>(t & e) === e, [\n t\n ]), n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>l((a)=>a & ~e), [\n l\n ]), F = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>l((a)=>a ^ e), [\n l\n ]);\n return {\n flags: t,\n setFlag: g,\n addFlag: s,\n hasFlag: m,\n removeFlag: n,\n toggleFlag: F\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1mbGFncy5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFrRDtBQUFBLFNBQVNJO1FBQUVDLElBQUFBLGlFQUFFO0lBQUcsSUFBRyxDQUFDQyxHQUFFQyxFQUFFLEdBQUNKLCtDQUFDQSxDQUFDRSxJQUFHRyxJQUFFUCxrREFBQ0EsQ0FBQ1EsQ0FBQUEsSUFBR0YsRUFBRUUsSUFBRztRQUFDSDtLQUFFLEdBQUVJLElBQUVULGtEQUFDQSxDQUFDUSxDQUFBQSxJQUFHRixFQUFFSSxDQUFBQSxJQUFHQSxJQUFFRixJQUFHO1FBQUNIO0tBQUUsR0FBRU0sSUFBRVgsa0RBQUNBLENBQUNRLENBQUFBLElBQUcsQ0FBQ0gsSUFBRUcsQ0FBQUEsTUFBS0EsR0FBRTtRQUFDSDtLQUFFLEdBQUVPLElBQUVaLGtEQUFDQSxDQUFDUSxDQUFBQSxJQUFHRixFQUFFSSxDQUFBQSxJQUFHQSxJQUFFLENBQUNGLElBQUc7UUFBQ0Y7S0FBRSxHQUFFTyxJQUFFYixrREFBQ0EsQ0FBQ1EsQ0FBQUEsSUFBR0YsRUFBRUksQ0FBQUEsSUFBR0EsSUFBRUYsSUFBRztRQUFDRjtLQUFFO0lBQUUsT0FBTTtRQUFDUSxPQUFNVDtRQUFFVSxTQUFRUjtRQUFFUyxTQUFRUDtRQUFFUSxTQUFRTjtRQUFFTyxZQUFXTjtRQUFFTyxZQUFXTjtJQUFDO0FBQUM7QUFBdUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLWZsYWdzLmpzPzgwZmQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e3VzZUNhbGxiYWNrIGFzIHIsdXNlU3RhdGUgYXMgYn1mcm9tXCJyZWFjdFwiO2Z1bmN0aW9uIGModT0wKXtsZXRbdCxsXT1iKHUpLGc9cihlPT5sKGUpLFt0XSkscz1yKGU9PmwoYT0+YXxlKSxbdF0pLG09cihlPT4odCZlKT09PWUsW3RdKSxuPXIoZT0+bChhPT5hJn5lKSxbbF0pLEY9cihlPT5sKGE9PmFeZSksW2xdKTtyZXR1cm57ZmxhZ3M6dCxzZXRGbGFnOmcsYWRkRmxhZzpzLGhhc0ZsYWc6bSxyZW1vdmVGbGFnOm4sdG9nZ2xlRmxhZzpGfX1leHBvcnR7YyBhcyB1c2VGbGFnc307XG4iXSwibmFtZXMiOlsidXNlQ2FsbGJhY2siLCJyIiwidXNlU3RhdGUiLCJiIiwiYyIsInUiLCJ0IiwibCIsImciLCJlIiwicyIsImEiLCJtIiwibiIsIkYiLCJmbGFncyIsInNldEZsYWciLCJhZGRGbGFnIiwiaGFzRmxhZyIsInJlbW92ZUZsYWciLCJ0b2dnbGVGbGFnIiwidXNlRmxhZ3MiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-flags.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useIsTopLayer: function() { return /* binding */ x; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_default_map_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/default-map.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/default-map.js\");\n/* harmony import */ var _utils_store_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/store.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/store.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n/* harmony import */ var _use_store_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./use-store.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-store.js\");\n\n\n\n\n\nlet p = new _utils_default_map_js__WEBPACK_IMPORTED_MODULE_1__.DefaultMap(()=>(0,_utils_store_js__WEBPACK_IMPORTED_MODULE_2__.createStore)(()=>[], {\n ADD (r) {\n return this.includes(r) ? this : [\n ...this,\n r\n ];\n },\n REMOVE (r) {\n let e = this.indexOf(r);\n if (e === -1) return this;\n let t = this.slice();\n return t.splice(e, 1), t;\n }\n }));\nfunction x(r, e) {\n let t = p.get(e), i = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)(), h = (0,_use_store_js__WEBPACK_IMPORTED_MODULE_3__.useStore)(t);\n if ((0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_4__.useIsoMorphicEffect)(()=>{\n if (r) return t.dispatch(\"ADD\", i), ()=>t.dispatch(\"REMOVE\", i);\n }, [\n t,\n r\n ]), !r) return !1;\n let s = h.indexOf(i), o = h.length;\n return s === -1 && (s = o, o += 1), s === o - 1;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1pcy10b3AtbGF5ZXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQThCO0FBQXFEO0FBQWdEO0FBQWtFO0FBQTBDO0FBQUEsSUFBSVUsSUFBRSxJQUFJUCw2REFBQ0EsQ0FBQyxJQUFJRSw0REFBQ0EsQ0FBQyxJQUFJLEVBQUUsRUFBQztRQUFDTSxLQUFJQyxDQUFDO1lBQUUsT0FBTyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0QsS0FBRyxJQUFJLEdBQUM7bUJBQUksSUFBSTtnQkFBQ0E7YUFBRTtRQUFBO1FBQUVFLFFBQU9GLENBQUM7WUFBRSxJQUFJRyxJQUFFLElBQUksQ0FBQ0MsT0FBTyxDQUFDSjtZQUFHLElBQUdHLE1BQUksQ0FBQyxHQUFFLE9BQU8sSUFBSTtZQUFDLElBQUlFLElBQUUsSUFBSSxDQUFDQyxLQUFLO1lBQUcsT0FBT0QsRUFBRUUsTUFBTSxDQUFDSixHQUFFLElBQUdFO1FBQUM7SUFBQztBQUFJLFNBQVNHLEVBQUVSLENBQUMsRUFBQ0csQ0FBQztJQUFFLElBQUlFLElBQUVQLEVBQUVXLEdBQUcsQ0FBQ04sSUFBR08sSUFBRXJCLDRDQUFDQSxJQUFHc0IsSUFBRWQsdURBQUNBLENBQUNRO0lBQUcsSUFBR1YsK0VBQUNBLENBQUM7UUFBSyxJQUFHSyxHQUFFLE9BQU9LLEVBQUVPLFFBQVEsQ0FBQyxPQUFNRixJQUFHLElBQUlMLEVBQUVPLFFBQVEsQ0FBQyxVQUFTRjtJQUFFLEdBQUU7UUFBQ0w7UUFBRUw7S0FBRSxHQUFFLENBQUNBLEdBQUUsT0FBTSxDQUFDO0lBQUUsSUFBSWEsSUFBRUYsRUFBRVAsT0FBTyxDQUFDTSxJQUFHSSxJQUFFSCxFQUFFSSxNQUFNO0lBQUMsT0FBT0YsTUFBSSxDQUFDLEtBQUlBLENBQUFBLElBQUVDLEdBQUVBLEtBQUcsSUFBR0QsTUFBSUMsSUFBRTtBQUFDO0FBQTRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1pcy10b3AtbGF5ZXIuanM/MzliZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlSWQgYXMgbn1mcm9tXCJyZWFjdFwiO2ltcG9ydHtEZWZhdWx0TWFwIGFzIGZ9ZnJvbScuLi91dGlscy9kZWZhdWx0LW1hcC5qcyc7aW1wb3J0e2NyZWF0ZVN0b3JlIGFzIHV9ZnJvbScuLi91dGlscy9zdG9yZS5qcyc7aW1wb3J0e3VzZUlzb01vcnBoaWNFZmZlY3QgYXMgY31mcm9tJy4vdXNlLWlzby1tb3JwaGljLWVmZmVjdC5qcyc7aW1wb3J0e3VzZVN0b3JlIGFzIGx9ZnJvbScuL3VzZS1zdG9yZS5qcyc7bGV0IHA9bmV3IGYoKCk9PnUoKCk9PltdLHtBREQocil7cmV0dXJuIHRoaXMuaW5jbHVkZXMocik/dGhpczpbLi4udGhpcyxyXX0sUkVNT1ZFKHIpe2xldCBlPXRoaXMuaW5kZXhPZihyKTtpZihlPT09LTEpcmV0dXJuIHRoaXM7bGV0IHQ9dGhpcy5zbGljZSgpO3JldHVybiB0LnNwbGljZShlLDEpLHR9fSkpO2Z1bmN0aW9uIHgocixlKXtsZXQgdD1wLmdldChlKSxpPW4oKSxoPWwodCk7aWYoYygoKT0+e2lmKHIpcmV0dXJuIHQuZGlzcGF0Y2goXCJBRERcIixpKSwoKT0+dC5kaXNwYXRjaChcIlJFTU9WRVwiLGkpfSxbdCxyXSksIXIpcmV0dXJuITE7bGV0IHM9aC5pbmRleE9mKGkpLG89aC5sZW5ndGg7cmV0dXJuIHM9PT0tMSYmKHM9byxvKz0xKSxzPT09by0xfWV4cG9ydHt4IGFzIHVzZUlzVG9wTGF5ZXJ9O1xuIl0sIm5hbWVzIjpbInVzZUlkIiwibiIsIkRlZmF1bHRNYXAiLCJmIiwiY3JlYXRlU3RvcmUiLCJ1IiwidXNlSXNvTW9ycGhpY0VmZmVjdCIsImMiLCJ1c2VTdG9yZSIsImwiLCJwIiwiQUREIiwiciIsImluY2x1ZGVzIiwiUkVNT1ZFIiwiZSIsImluZGV4T2YiLCJ0Iiwic2xpY2UiLCJzcGxpY2UiLCJ4IiwiZ2V0IiwiaSIsImgiLCJkaXNwYXRjaCIsInMiLCJvIiwibGVuZ3RoIiwidXNlSXNUb3BMYXllciJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useIsoMorphicEffect: function() { return /* binding */ n; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_env_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/env.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js\");\n\n\nlet n = (e, t)=>{\n _utils_env_js__WEBPACK_IMPORTED_MODULE_1__.env.isServer ? (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(e, t) : (0,react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect)(e, t);\n};\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1pc28tbW9ycGhpYy1lZmZlY3QuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXVEO0FBQXNDO0FBQUEsSUFBSU0sSUFBRSxDQUFDQyxHQUFFQztJQUFLSCw4Q0FBQ0EsQ0FBQ0ksUUFBUSxHQUFDUixnREFBQ0EsQ0FBQ00sR0FBRUMsS0FBR0wsc0RBQUNBLENBQUNJLEdBQUVDO0FBQUU7QUFBbUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLWlzby1tb3JwaGljLWVmZmVjdC5qcz9mNWFmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VFZmZlY3QgYXMgZix1c2VMYXlvdXRFZmZlY3QgYXMgY31mcm9tXCJyZWFjdFwiO2ltcG9ydHtlbnYgYXMgaX1mcm9tJy4uL3V0aWxzL2Vudi5qcyc7bGV0IG49KGUsdCk9PntpLmlzU2VydmVyP2YoZSx0KTpjKGUsdCl9O2V4cG9ydHtuIGFzIHVzZUlzb01vcnBoaWNFZmZlY3R9O1xuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsImYiLCJ1c2VMYXlvdXRFZmZlY3QiLCJjIiwiZW52IiwiaSIsIm4iLCJlIiwidCIsImlzU2VydmVyIiwidXNlSXNvTW9ycGhpY0VmZmVjdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-latest-value.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useLatestValue: function() { return /* binding */ s; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n\n\nfunction s(e) {\n let r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(e);\n return (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n r.current = e;\n }, [\n e\n ]), r;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1sYXRlc3QtdmFsdWUuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQStCO0FBQWtFO0FBQUEsU0FBU0ksRUFBRUMsQ0FBQztJQUFFLElBQUlDLElBQUVMLDZDQUFDQSxDQUFDSTtJQUFHLE9BQU9GLCtFQUFDQSxDQUFDO1FBQUtHLEVBQUVDLE9BQU8sR0FBQ0Y7SUFBQyxHQUFFO1FBQUNBO0tBQUUsR0FBRUM7QUFBQztBQUE2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2UtbGF0ZXN0LXZhbHVlLmpzPzdiOGYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e3VzZVJlZiBhcyB0fWZyb21cInJlYWN0XCI7aW1wb3J0e3VzZUlzb01vcnBoaWNFZmZlY3QgYXMgb31mcm9tJy4vdXNlLWlzby1tb3JwaGljLWVmZmVjdC5qcyc7ZnVuY3Rpb24gcyhlKXtsZXQgcj10KGUpO3JldHVybiBvKCgpPT57ci5jdXJyZW50PWV9LFtlXSkscn1leHBvcnR7cyBhcyB1c2VMYXRlc3RWYWx1ZX07XG4iXSwibmFtZXMiOlsidXNlUmVmIiwidCIsInVzZUlzb01vcnBoaWNFZmZlY3QiLCJvIiwicyIsImUiLCJyIiwiY3VycmVudCIsInVzZUxhdGVzdFZhbHVlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-disappear.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-on-disappear.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useOnDisappear: function() { return /* binding */ m; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_disposables_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n\n\n\nfunction m(s, n, l) {\n let i = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__.useLatestValue)((t)=>{\n let e = t.getBoundingClientRect();\n e.x === 0 && e.y === 0 && e.width === 0 && e.height === 0 && l();\n });\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (!s) return;\n let t = n === null ? null : n instanceof HTMLElement ? n : n.current;\n if (!t) return;\n let e = (0,_utils_disposables_js__WEBPACK_IMPORTED_MODULE_2__.disposables)();\n if (typeof ResizeObserver != \"undefined\") {\n let r = new ResizeObserver(()=>i.current(t));\n r.observe(t), e.add(()=>r.disconnect());\n }\n if (typeof IntersectionObserver != \"undefined\") {\n let r = new IntersectionObserver(()=>i.current(t));\n r.observe(t), e.add(()=>r.disconnect());\n }\n return ()=>e.dispose();\n }, [\n n,\n i,\n s\n ]);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1vbi1kaXNhcHBlYXIuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFrQztBQUFzRDtBQUF1RDtBQUFBLFNBQVNNLEVBQUVDLENBQUMsRUFBQ0MsQ0FBQyxFQUFDQyxDQUFDO0lBQUUsSUFBSUMsSUFBRUwsb0VBQUNBLENBQUNNLENBQUFBO1FBQUksSUFBSUMsSUFBRUQsRUFBRUUscUJBQXFCO1FBQUdELEVBQUVFLENBQUMsS0FBRyxLQUFHRixFQUFFRyxDQUFDLEtBQUcsS0FBR0gsRUFBRUksS0FBSyxLQUFHLEtBQUdKLEVBQUVLLE1BQU0sS0FBRyxLQUFHUjtJQUFHO0lBQUdSLGdEQUFDQSxDQUFDO1FBQUssSUFBRyxDQUFDTSxHQUFFO1FBQU8sSUFBSUksSUFBRUgsTUFBSSxPQUFLLE9BQUtBLGFBQWFVLGNBQVlWLElBQUVBLEVBQUVXLE9BQU87UUFBQyxJQUFHLENBQUNSLEdBQUU7UUFBTyxJQUFJQyxJQUFFVCxrRUFBQ0E7UUFBRyxJQUFHLE9BQU9pQixrQkFBZ0IsYUFBWTtZQUFDLElBQUlDLElBQUUsSUFBSUQsZUFBZSxJQUFJVixFQUFFUyxPQUFPLENBQUNSO1lBQUlVLEVBQUVDLE9BQU8sQ0FBQ1gsSUFBR0MsRUFBRVcsR0FBRyxDQUFDLElBQUlGLEVBQUVHLFVBQVU7UUFBRztRQUFDLElBQUcsT0FBT0Msd0JBQXNCLGFBQVk7WUFBQyxJQUFJSixJQUFFLElBQUlJLHFCQUFxQixJQUFJZixFQUFFUyxPQUFPLENBQUNSO1lBQUlVLEVBQUVDLE9BQU8sQ0FBQ1gsSUFBR0MsRUFBRVcsR0FBRyxDQUFDLElBQUlGLEVBQUVHLFVBQVU7UUFBRztRQUFDLE9BQU0sSUFBSVosRUFBRWMsT0FBTztJQUFFLEdBQUU7UUFBQ2xCO1FBQUVFO1FBQUVIO0tBQUU7QUFBQztBQUE2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2Utb24tZGlzYXBwZWFyLmpzPzkyZDEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e3VzZUVmZmVjdCBhcyBvfWZyb21cInJlYWN0XCI7aW1wb3J0e2Rpc3Bvc2FibGVzIGFzIHV9ZnJvbScuLi91dGlscy9kaXNwb3NhYmxlcy5qcyc7aW1wb3J0e3VzZUxhdGVzdFZhbHVlIGFzIGN9ZnJvbScuL3VzZS1sYXRlc3QtdmFsdWUuanMnO2Z1bmN0aW9uIG0ocyxuLGwpe2xldCBpPWModD0+e2xldCBlPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ZS54PT09MCYmZS55PT09MCYmZS53aWR0aD09PTAmJmUuaGVpZ2h0PT09MCYmbCgpfSk7bygoKT0+e2lmKCFzKXJldHVybjtsZXQgdD1uPT09bnVsbD9udWxsOm4gaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9uOm4uY3VycmVudDtpZighdClyZXR1cm47bGV0IGU9dSgpO2lmKHR5cGVvZiBSZXNpemVPYnNlcnZlciE9XCJ1bmRlZmluZWRcIil7bGV0IHI9bmV3IFJlc2l6ZU9ic2VydmVyKCgpPT5pLmN1cnJlbnQodCkpO3Iub2JzZXJ2ZSh0KSxlLmFkZCgoKT0+ci5kaXNjb25uZWN0KCkpfWlmKHR5cGVvZiBJbnRlcnNlY3Rpb25PYnNlcnZlciE9XCJ1bmRlZmluZWRcIil7bGV0IHI9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKCgpPT5pLmN1cnJlbnQodCkpO3Iub2JzZXJ2ZSh0KSxlLmFkZCgoKT0+ci5kaXNjb25uZWN0KCkpfXJldHVybigpPT5lLmRpc3Bvc2UoKX0sW24saSxzXSl9ZXhwb3J0e20gYXMgdXNlT25EaXNhcHBlYXJ9O1xuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsIm8iLCJkaXNwb3NhYmxlcyIsInUiLCJ1c2VMYXRlc3RWYWx1ZSIsImMiLCJtIiwicyIsIm4iLCJsIiwiaSIsInQiLCJlIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwieCIsInkiLCJ3aWR0aCIsImhlaWdodCIsIkhUTUxFbGVtZW50IiwiY3VycmVudCIsIlJlc2l6ZU9ic2VydmVyIiwiciIsIm9ic2VydmUiLCJhZGQiLCJkaXNjb25uZWN0IiwiSW50ZXJzZWN0aW9uT2JzZXJ2ZXIiLCJkaXNwb3NlIiwidXNlT25EaXNhcHBlYXIiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-disappear.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-unmount.js":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-on-unmount.js ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useOnUnmount: function() { return /* binding */ c; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_micro_task_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/micro-task.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/micro-task.js\");\n/* harmony import */ var _use_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n\n\n\nfunction c(t) {\n let r = (0,_use_event_js__WEBPACK_IMPORTED_MODULE_1__.useEvent)(t), e = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(!1);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>(e.current = !1, ()=>{\n e.current = !0, (0,_utils_micro_task_js__WEBPACK_IMPORTED_MODULE_2__.microTask)(()=>{\n e.current && r();\n });\n }), [\n r\n ]);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1vbi11bm1vdW50LmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBOEM7QUFBbUQ7QUFBMEM7QUFBQSxTQUFTUSxFQUFFQyxDQUFDO0lBQUUsSUFBSUMsSUFBRUgsdURBQUNBLENBQUNFLElBQUdFLElBQUVSLDZDQUFDQSxDQUFDLENBQUM7SUFBR0YsZ0RBQUNBLENBQUMsSUFBS1UsQ0FBQUEsRUFBRUMsT0FBTyxHQUFDLENBQUMsR0FBRTtZQUFLRCxFQUFFQyxPQUFPLEdBQUMsQ0FBQyxHQUFFUCwrREFBQ0EsQ0FBQztnQkFBS00sRUFBRUMsT0FBTyxJQUFFRjtZQUFHO1FBQUUsSUFBRztRQUFDQTtLQUFFO0FBQUM7QUFBMkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLW9uLXVubW91bnQuanM/NWYyZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlRWZmZWN0IGFzIHUsdXNlUmVmIGFzIG59ZnJvbVwicmVhY3RcIjtpbXBvcnR7bWljcm9UYXNrIGFzIG99ZnJvbScuLi91dGlscy9taWNyby10YXNrLmpzJztpbXBvcnR7dXNlRXZlbnQgYXMgZn1mcm9tJy4vdXNlLWV2ZW50LmpzJztmdW5jdGlvbiBjKHQpe2xldCByPWYodCksZT1uKCExKTt1KCgpPT4oZS5jdXJyZW50PSExLCgpPT57ZS5jdXJyZW50PSEwLG8oKCk9PntlLmN1cnJlbnQmJnIoKX0pfSksW3JdKX1leHBvcnR7YyBhcyB1c2VPblVubW91bnR9O1xuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsInUiLCJ1c2VSZWYiLCJuIiwibWljcm9UYXNrIiwibyIsInVzZUV2ZW50IiwiZiIsImMiLCJ0IiwiciIsImUiLCJjdXJyZW50IiwidXNlT25Vbm1vdW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-on-unmount.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-outside-click.js":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-outside-click.js ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useOutsideClick: function() { return /* binding */ F; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/focus-management.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/focus-management.js\");\n/* harmony import */ var _utils_platform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/platform.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/platform.js\");\n/* harmony import */ var _use_document_event_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./use-document-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-document-event.js\");\n/* harmony import */ var _use_is_top_layer_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-is-top-layer.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n/* harmony import */ var _use_window_event_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./use-window-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-window-event.js\");\n\n\n\n\n\n\n\nconst d = 30;\nfunction F(E, p, C) {\n let u = (0,_use_is_top_layer_js__WEBPACK_IMPORTED_MODULE_1__.useIsTopLayer)(E, \"outside-click\"), f = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_2__.useLatestValue)(C), s = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function(e, o) {\n if (e.defaultPrevented) return;\n let r = o(e);\n if (r === null || !r.getRootNode().contains(r) || !r.isConnected) return;\n let T = function i(n) {\n return typeof n == \"function\" ? i(n()) : Array.isArray(n) || n instanceof Set ? n : [\n n\n ];\n }(p);\n for (let i of T){\n if (i === null) continue;\n let n = i instanceof HTMLElement ? i : i.current;\n if (n != null && n.contains(r) || e.composed && e.composedPath().includes(n)) return;\n }\n return !(0,_utils_focus_management_js__WEBPACK_IMPORTED_MODULE_3__.isFocusableElement)(r, _utils_focus_management_js__WEBPACK_IMPORTED_MODULE_3__.FocusableMode.Loose) && r.tabIndex !== -1 && e.preventDefault(), f.current(e, r);\n }, [\n f\n ]), l = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0,_use_document_event_js__WEBPACK_IMPORTED_MODULE_4__.useDocumentEvent)(u, \"pointerdown\", (t)=>{\n var e, o;\n l.current = ((o = (e = t.composedPath) == null ? void 0 : e.call(t)) == null ? void 0 : o[0]) || t.target;\n }, !0), (0,_use_document_event_js__WEBPACK_IMPORTED_MODULE_4__.useDocumentEvent)(u, \"mousedown\", (t)=>{\n var e, o;\n l.current = ((o = (e = t.composedPath) == null ? void 0 : e.call(t)) == null ? void 0 : o[0]) || t.target;\n }, !0), (0,_use_document_event_js__WEBPACK_IMPORTED_MODULE_4__.useDocumentEvent)(u, \"click\", (t)=>{\n (0,_utils_platform_js__WEBPACK_IMPORTED_MODULE_5__.isMobile)() || l.current && (s(t, ()=>l.current), l.current = null);\n }, !0);\n let a = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n x: 0,\n y: 0\n });\n (0,_use_document_event_js__WEBPACK_IMPORTED_MODULE_4__.useDocumentEvent)(u, \"touchstart\", (t)=>{\n a.current.x = t.touches[0].clientX, a.current.y = t.touches[0].clientY;\n }, !0), (0,_use_document_event_js__WEBPACK_IMPORTED_MODULE_4__.useDocumentEvent)(u, \"touchend\", (t)=>{\n let e = {\n x: t.changedTouches[0].clientX,\n y: t.changedTouches[0].clientY\n };\n if (!(Math.abs(e.x - a.current.x) >= d || Math.abs(e.y - a.current.y) >= d)) return s(t, ()=>t.target instanceof HTMLElement ? t.target : null);\n }, !0), (0,_use_window_event_js__WEBPACK_IMPORTED_MODULE_6__.useWindowEvent)(u, \"blur\", (t)=>s(t, ()=>window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null), !0);\n}\n_c = F;\n\nvar _c;\n$RefreshReg$(_c, \"F\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1vdXRzaWRlLWNsaWNrLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQWdEO0FBQXFGO0FBQWdEO0FBQTJEO0FBQXNEO0FBQXVEO0FBQXVEO0FBQUEsTUFBTWtCLElBQUU7QUFBRyxTQUFTQyxFQUFFQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0MsQ0FBQztJQUFFLElBQUlDLElBQUVWLG1FQUFDQSxDQUFDTyxHQUFFLGtCQUFpQkksSUFBRVQsb0VBQUNBLENBQUNPLElBQUdHLElBQUV4QixrREFBQ0EsQ0FBQyxTQUFTeUIsQ0FBQyxFQUFDQyxDQUFDO1FBQUUsSUFBR0QsRUFBRUUsZ0JBQWdCLEVBQUM7UUFBTyxJQUFJQyxJQUFFRixFQUFFRDtRQUFHLElBQUdHLE1BQUksUUFBTSxDQUFDQSxFQUFFQyxXQUFXLEdBQUdDLFFBQVEsQ0FBQ0YsTUFBSSxDQUFDQSxFQUFFRyxXQUFXLEVBQUM7UUFBTyxJQUFJQyxJQUFFLFNBQVNDLEVBQUVDLENBQUM7WUFBRSxPQUFPLE9BQU9BLEtBQUcsYUFBV0QsRUFBRUMsT0FBS0MsTUFBTUMsT0FBTyxDQUFDRixNQUFJQSxhQUFhRyxNQUFJSCxJQUFFO2dCQUFDQTthQUFFO1FBQUEsRUFBRWQ7UUFBRyxLQUFJLElBQUlhLEtBQUtELEVBQUU7WUFBQyxJQUFHQyxNQUFJLE1BQUs7WUFBUyxJQUFJQyxJQUFFRCxhQUFhSyxjQUFZTCxJQUFFQSxFQUFFTSxPQUFPO1lBQUMsSUFBR0wsS0FBRyxRQUFNQSxFQUFFSixRQUFRLENBQUNGLE1BQUlILEVBQUVlLFFBQVEsSUFBRWYsRUFBRWdCLFlBQVksR0FBR0MsUUFBUSxDQUFDUixJQUFHO1FBQU07UUFBQyxPQUFNLENBQUM1Qiw4RUFBQ0EsQ0FBQ3NCLEdBQUV4QixxRUFBQ0EsQ0FBQ3VDLEtBQUssS0FBR2YsRUFBRWdCLFFBQVEsS0FBRyxDQUFDLEtBQUduQixFQUFFb0IsY0FBYyxJQUFHdEIsRUFBRWdCLE9BQU8sQ0FBQ2QsR0FBRUc7SUFBRSxHQUFFO1FBQUNMO0tBQUUsR0FBRXVCLElBQUU1Qyw2Q0FBQ0EsQ0FBQztJQUFNUSx3RUFBQ0EsQ0FBQ1ksR0FBRSxlQUFjeUIsQ0FBQUE7UUFBSSxJQUFJdEIsR0FBRUM7UUFBRW9CLEVBQUVQLE9BQU8sR0FBQyxDQUFDLENBQUNiLElBQUUsQ0FBQ0QsSUFBRXNCLEVBQUVOLFlBQVksS0FBRyxPQUFLLEtBQUssSUFBRWhCLEVBQUV1QixJQUFJLENBQUNELEVBQUMsS0FBSSxPQUFLLEtBQUssSUFBRXJCLENBQUMsQ0FBQyxFQUFFLEtBQUdxQixFQUFFRSxNQUFNO0lBQUEsR0FBRSxDQUFDLElBQUd2Qyx3RUFBQ0EsQ0FBQ1ksR0FBRSxhQUFZeUIsQ0FBQUE7UUFBSSxJQUFJdEIsR0FBRUM7UUFBRW9CLEVBQUVQLE9BQU8sR0FBQyxDQUFDLENBQUNiLElBQUUsQ0FBQ0QsSUFBRXNCLEVBQUVOLFlBQVksS0FBRyxPQUFLLEtBQUssSUFBRWhCLEVBQUV1QixJQUFJLENBQUNELEVBQUMsS0FBSSxPQUFLLEtBQUssSUFBRXJCLENBQUMsQ0FBQyxFQUFFLEtBQUdxQixFQUFFRSxNQUFNO0lBQUEsR0FBRSxDQUFDLElBQUd2Qyx3RUFBQ0EsQ0FBQ1ksR0FBRSxTQUFReUIsQ0FBQUE7UUFBSXZDLDREQUFDQSxNQUFJc0MsRUFBRVAsT0FBTyxJQUFHZixDQUFBQSxFQUFFdUIsR0FBRSxJQUFJRCxFQUFFUCxPQUFPLEdBQUVPLEVBQUVQLE9BQU8sR0FBQyxJQUFHO0lBQUUsR0FBRSxDQUFDO0lBQUcsSUFBSVcsSUFBRWhELDZDQUFDQSxDQUFDO1FBQUNpRCxHQUFFO1FBQUUzQyxHQUFFO0lBQUM7SUFBR0Usd0VBQUNBLENBQUNZLEdBQUUsY0FBYXlCLENBQUFBO1FBQUlHLEVBQUVYLE9BQU8sQ0FBQ1ksQ0FBQyxHQUFDSixFQUFFSyxPQUFPLENBQUMsRUFBRSxDQUFDQyxPQUFPLEVBQUNILEVBQUVYLE9BQU8sQ0FBQy9CLENBQUMsR0FBQ3VDLEVBQUVLLE9BQU8sQ0FBQyxFQUFFLENBQUNFLE9BQU87SUFBQSxHQUFFLENBQUMsSUFBRzVDLHdFQUFDQSxDQUFDWSxHQUFFLFlBQVd5QixDQUFBQTtRQUFJLElBQUl0QixJQUFFO1lBQUMwQixHQUFFSixFQUFFUSxjQUFjLENBQUMsRUFBRSxDQUFDRixPQUFPO1lBQUM3QyxHQUFFdUMsRUFBRVEsY0FBYyxDQUFDLEVBQUUsQ0FBQ0QsT0FBTztRQUFBO1FBQUUsSUFBRyxDQUFFRSxDQUFBQSxLQUFLQyxHQUFHLENBQUNoQyxFQUFFMEIsQ0FBQyxHQUFDRCxFQUFFWCxPQUFPLENBQUNZLENBQUMsS0FBR2xDLEtBQUd1QyxLQUFLQyxHQUFHLENBQUNoQyxFQUFFakIsQ0FBQyxHQUFDMEMsRUFBRVgsT0FBTyxDQUFDL0IsQ0FBQyxLQUFHUyxDQUFBQSxHQUFHLE9BQU9PLEVBQUV1QixHQUFFLElBQUlBLEVBQUVFLE1BQU0sWUFBWVgsY0FBWVMsRUFBRUUsTUFBTSxHQUFDO0lBQUssR0FBRSxDQUFDLElBQUdqQyxvRUFBQ0EsQ0FBQ00sR0FBRSxRQUFPeUIsQ0FBQUEsSUFBR3ZCLEVBQUV1QixHQUFFLElBQUlXLE9BQU9DLFFBQVEsQ0FBQ0MsYUFBYSxZQUFZQyxvQkFBa0JILE9BQU9DLFFBQVEsQ0FBQ0MsYUFBYSxHQUFDLE9BQU0sQ0FBQztBQUFFO0tBQXh2QzFDO0FBQXN4QyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2Utb3V0c2lkZS1jbGljay5qcz8yMTExIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VDYWxsYmFjayBhcyBoLHVzZVJlZiBhcyBtfWZyb21cInJlYWN0XCI7aW1wb3J0e0ZvY3VzYWJsZU1vZGUgYXMgTSxpc0ZvY3VzYWJsZUVsZW1lbnQgYXMgYn1mcm9tJy4uL3V0aWxzL2ZvY3VzLW1hbmFnZW1lbnQuanMnO2ltcG9ydHtpc01vYmlsZSBhcyB5fWZyb20nLi4vdXRpbHMvcGxhdGZvcm0uanMnO2ltcG9ydHt1c2VEb2N1bWVudEV2ZW50IGFzIGN9ZnJvbScuL3VzZS1kb2N1bWVudC1ldmVudC5qcyc7aW1wb3J0e3VzZUlzVG9wTGF5ZXIgYXMgTH1mcm9tJy4vdXNlLWlzLXRvcC1sYXllci5qcyc7aW1wb3J0e3VzZUxhdGVzdFZhbHVlIGFzIGd9ZnJvbScuL3VzZS1sYXRlc3QtdmFsdWUuanMnO2ltcG9ydHt1c2VXaW5kb3dFdmVudCBhcyBIfWZyb20nLi91c2Utd2luZG93LWV2ZW50LmpzJztjb25zdCBkPTMwO2Z1bmN0aW9uIEYoRSxwLEMpe2xldCB1PUwoRSxcIm91dHNpZGUtY2xpY2tcIiksZj1nKEMpLHM9aChmdW5jdGlvbihlLG8pe2lmKGUuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47bGV0IHI9byhlKTtpZihyPT09bnVsbHx8IXIuZ2V0Um9vdE5vZGUoKS5jb250YWlucyhyKXx8IXIuaXNDb25uZWN0ZWQpcmV0dXJuO2xldCBUPWZ1bmN0aW9uIGkobil7cmV0dXJuIHR5cGVvZiBuPT1cImZ1bmN0aW9uXCI/aShuKCkpOkFycmF5LmlzQXJyYXkobil8fG4gaW5zdGFuY2VvZiBTZXQ/bjpbbl19KHApO2ZvcihsZXQgaSBvZiBUKXtpZihpPT09bnVsbCljb250aW51ZTtsZXQgbj1pIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/aTppLmN1cnJlbnQ7aWYobiE9bnVsbCYmbi5jb250YWlucyhyKXx8ZS5jb21wb3NlZCYmZS5jb21wb3NlZFBhdGgoKS5pbmNsdWRlcyhuKSlyZXR1cm59cmV0dXJuIWIocixNLkxvb3NlKSYmci50YWJJbmRleCE9PS0xJiZlLnByZXZlbnREZWZhdWx0KCksZi5jdXJyZW50KGUscil9LFtmXSksbD1tKG51bGwpO2ModSxcInBvaW50ZXJkb3duXCIsdD0+e3ZhciBlLG87bC5jdXJyZW50PSgobz0oZT10LmNvbXBvc2VkUGF0aCk9PW51bGw/dm9pZCAwOmUuY2FsbCh0KSk9PW51bGw/dm9pZCAwOm9bMF0pfHx0LnRhcmdldH0sITApLGModSxcIm1vdXNlZG93blwiLHQ9Pnt2YXIgZSxvO2wuY3VycmVudD0oKG89KGU9dC5jb21wb3NlZFBhdGgpPT1udWxsP3ZvaWQgMDplLmNhbGwodCkpPT1udWxsP3ZvaWQgMDpvWzBdKXx8dC50YXJnZXR9LCEwKSxjKHUsXCJjbGlja1wiLHQ9Pnt5KCl8fGwuY3VycmVudCYmKHModCwoKT0+bC5jdXJyZW50KSxsLmN1cnJlbnQ9bnVsbCl9LCEwKTtsZXQgYT1tKHt4OjAseTowfSk7Yyh1LFwidG91Y2hzdGFydFwiLHQ9PnthLmN1cnJlbnQueD10LnRvdWNoZXNbMF0uY2xpZW50WCxhLmN1cnJlbnQueT10LnRvdWNoZXNbMF0uY2xpZW50WX0sITApLGModSxcInRvdWNoZW5kXCIsdD0+e2xldCBlPXt4OnQuY2hhbmdlZFRvdWNoZXNbMF0uY2xpZW50WCx5OnQuY2hhbmdlZFRvdWNoZXNbMF0uY2xpZW50WX07aWYoIShNYXRoLmFicyhlLngtYS5jdXJyZW50LngpPj1kfHxNYXRoLmFicyhlLnktYS5jdXJyZW50LnkpPj1kKSlyZXR1cm4gcyh0LCgpPT50LnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50P3QudGFyZ2V0Om51bGwpfSwhMCksSCh1LFwiYmx1clwiLHQ9PnModCwoKT0+d2luZG93LmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MSUZyYW1lRWxlbWVudD93aW5kb3cuZG9jdW1lbnQuYWN0aXZlRWxlbWVudDpudWxsKSwhMCl9ZXhwb3J0e0YgYXMgdXNlT3V0c2lkZUNsaWNrfTtcbiJdLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsImgiLCJ1c2VSZWYiLCJtIiwiRm9jdXNhYmxlTW9kZSIsIk0iLCJpc0ZvY3VzYWJsZUVsZW1lbnQiLCJiIiwiaXNNb2JpbGUiLCJ5IiwidXNlRG9jdW1lbnRFdmVudCIsImMiLCJ1c2VJc1RvcExheWVyIiwiTCIsInVzZUxhdGVzdFZhbHVlIiwiZyIsInVzZVdpbmRvd0V2ZW50IiwiSCIsImQiLCJGIiwiRSIsInAiLCJDIiwidSIsImYiLCJzIiwiZSIsIm8iLCJkZWZhdWx0UHJldmVudGVkIiwiciIsImdldFJvb3ROb2RlIiwiY29udGFpbnMiLCJpc0Nvbm5lY3RlZCIsIlQiLCJpIiwibiIsIkFycmF5IiwiaXNBcnJheSIsIlNldCIsIkhUTUxFbGVtZW50IiwiY3VycmVudCIsImNvbXBvc2VkIiwiY29tcG9zZWRQYXRoIiwiaW5jbHVkZXMiLCJMb29zZSIsInRhYkluZGV4IiwicHJldmVudERlZmF1bHQiLCJsIiwidCIsImNhbGwiLCJ0YXJnZXQiLCJhIiwieCIsInRvdWNoZXMiLCJjbGllbnRYIiwiY2xpZW50WSIsImNoYW5nZWRUb3VjaGVzIiwiTWF0aCIsImFicyIsIndpbmRvdyIsImRvY3VtZW50IiwiYWN0aXZlRWxlbWVudCIsIkhUTUxJRnJhbWVFbGVtZW50IiwidXNlT3V0c2lkZUNsaWNrIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-outside-click.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-owner.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-owner.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useOwnerDocument: function() { return /* binding */ n; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_owner_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js\");\n\n\nfunction n() {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>(0,_utils_owner_js__WEBPACK_IMPORTED_MODULE_1__.getOwnerDocument)(...e), [\n ...e\n ]);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1vd25lci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBZ0M7QUFBcUQ7QUFBQSxTQUFTSTtJQUFFO1FBQUdDLEVBQUgsdUJBQUk7O0lBQUUsT0FBT0osOENBQUNBLENBQUMsSUFBSUUsaUVBQUNBLElBQUlFLElBQUc7V0FBSUE7S0FBRTtBQUFDO0FBQStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1vd25lci5qcz9lYWU2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VNZW1vIGFzIHR9ZnJvbVwicmVhY3RcIjtpbXBvcnR7Z2V0T3duZXJEb2N1bWVudCBhcyBvfWZyb20nLi4vdXRpbHMvb3duZXIuanMnO2Z1bmN0aW9uIG4oLi4uZSl7cmV0dXJuIHQoKCk9Pm8oLi4uZSksWy4uLmVdKX1leHBvcnR7biBhcyB1c2VPd25lckRvY3VtZW50fTtcbiJdLCJuYW1lcyI6WyJ1c2VNZW1vIiwidCIsImdldE93bmVyRG9jdW1lbnQiLCJvIiwibiIsImUiLCJ1c2VPd25lckRvY3VtZW50Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-owner.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useResolveButtonType: function() { return /* binding */ T; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n\n\nfunction i(t) {\n var n;\n if (t.type) return t.type;\n let e = (n = t.as) != null ? n : \"button\";\n if (typeof e == \"string\" && e.toLowerCase() === \"button\") return \"button\";\n}\nfunction T(t, e) {\n let [n, u] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(()=>i(t));\n return (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n u(i(t));\n }, [\n t.type,\n t.as\n ]), (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n n || e.current && e.current instanceof HTMLButtonElement && !e.current.hasAttribute(\"type\") && u(\"button\");\n }, [\n n,\n e\n ]), n;\n}\n_c = T;\n\nvar _c;\n$RefreshReg$(_c, \"T\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1yZXNvbHZlLWJ1dHRvbi10eXBlLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFpQztBQUFrRTtBQUFBLFNBQVNJLEVBQUVDLENBQUM7SUFBRSxJQUFJQztJQUFFLElBQUdELEVBQUVFLElBQUksRUFBQyxPQUFPRixFQUFFRSxJQUFJO0lBQUMsSUFBSUMsSUFBRSxDQUFDRixJQUFFRCxFQUFFSSxFQUFFLEtBQUcsT0FBS0gsSUFBRTtJQUFTLElBQUcsT0FBT0UsS0FBRyxZQUFVQSxFQUFFRSxXQUFXLE9BQUssVUFBUyxPQUFNO0FBQVE7QUFBQyxTQUFTQyxFQUFFTixDQUFDLEVBQUNHLENBQUM7SUFBRSxJQUFHLENBQUNGLEdBQUVNLEVBQUUsR0FBQ1gsK0NBQUNBLENBQUMsSUFBSUcsRUFBRUM7SUFBSSxPQUFPRiwrRUFBQ0EsQ0FBQztRQUFLUyxFQUFFUixFQUFFQztJQUFHLEdBQUU7UUFBQ0EsRUFBRUUsSUFBSTtRQUFDRixFQUFFSSxFQUFFO0tBQUMsR0FBRU4sK0VBQUNBLENBQUM7UUFBS0csS0FBR0UsRUFBRUssT0FBTyxJQUFFTCxFQUFFSyxPQUFPLFlBQVlDLHFCQUFtQixDQUFDTixFQUFFSyxPQUFPLENBQUNFLFlBQVksQ0FBQyxXQUFTSCxFQUFFO0lBQVMsR0FBRTtRQUFDTjtRQUFFRTtLQUFFLEdBQUVGO0FBQUM7S0FBckxLO0FBQXdOIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1yZXNvbHZlLWJ1dHRvbi10eXBlLmpzP2E0NTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e3VzZVN0YXRlIGFzIG99ZnJvbVwicmVhY3RcIjtpbXBvcnR7dXNlSXNvTW9ycGhpY0VmZmVjdCBhcyByfWZyb20nLi91c2UtaXNvLW1vcnBoaWMtZWZmZWN0LmpzJztmdW5jdGlvbiBpKHQpe3ZhciBuO2lmKHQudHlwZSlyZXR1cm4gdC50eXBlO2xldCBlPShuPXQuYXMpIT1udWxsP246XCJidXR0b25cIjtpZih0eXBlb2YgZT09XCJzdHJpbmdcIiYmZS50b0xvd2VyQ2FzZSgpPT09XCJidXR0b25cIilyZXR1cm5cImJ1dHRvblwifWZ1bmN0aW9uIFQodCxlKXtsZXRbbix1XT1vKCgpPT5pKHQpKTtyZXR1cm4gcigoKT0+e3UoaSh0KSl9LFt0LnR5cGUsdC5hc10pLHIoKCk9PntufHxlLmN1cnJlbnQmJmUuY3VycmVudCBpbnN0YW5jZW9mIEhUTUxCdXR0b25FbGVtZW50JiYhZS5jdXJyZW50Lmhhc0F0dHJpYnV0ZShcInR5cGVcIikmJnUoXCJidXR0b25cIil9LFtuLGVdKSxufWV4cG9ydHtUIGFzIHVzZVJlc29sdmVCdXR0b25UeXBlfTtcbiJdLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsIm8iLCJ1c2VJc29Nb3JwaGljRWZmZWN0IiwiciIsImkiLCJ0IiwibiIsInR5cGUiLCJlIiwiYXMiLCJ0b0xvd2VyQ2FzZSIsIlQiLCJ1IiwiY3VycmVudCIsIkhUTUxCdXR0b25FbGVtZW50IiwiaGFzQXR0cmlidXRlIiwidXNlUmVzb2x2ZUJ1dHRvblR5cGUiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-root-containers.js":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-root-containers.js ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useMainTreeNode: function() { return /* binding */ y; },\n/* harmony export */ useRootContainers: function() { return /* binding */ j; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _internal_hidden_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../internal/hidden.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/hidden.js\");\n/* harmony import */ var _use_event_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n/* harmony import */ var _use_owner_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-owner.js\");\n\n\n\n\nfunction j() {\n let { defaultContainers: o = [], portals: r, mainTreeNodeRef: u } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var f;\n let t = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)((f = u == null ? void 0 : u.current) != null ? f : null), l = (0,_use_owner_js__WEBPACK_IMPORTED_MODULE_1__.useOwnerDocument)(t), c = (0,_use_event_js__WEBPACK_IMPORTED_MODULE_2__.useEvent)(()=>{\n var i, s, a;\n let n = [];\n for (let e of o)e !== null && (e instanceof HTMLElement ? n.push(e) : \"current\" in e && e.current instanceof HTMLElement && n.push(e.current));\n if (r != null && r.current) for (let e of r.current)n.push(e);\n for (let e of (i = l == null ? void 0 : l.querySelectorAll(\"html > *, body > *\")) != null ? i : [])e !== document.body && e !== document.head && e instanceof HTMLElement && e.id !== \"headlessui-portal-root\" && (e.contains(t.current) || e.contains((a = (s = t.current) == null ? void 0 : s.getRootNode()) == null ? void 0 : a.host) || n.some((L)=>e.contains(L)) || n.push(e));\n return n;\n });\n return {\n resolveContainers: c,\n contains: (0,_use_event_js__WEBPACK_IMPORTED_MODULE_2__.useEvent)((n)=>c().some((i)=>i.contains(n))),\n mainTreeNodeRef: t,\n MainTreeNode: (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>function() {\n return u != null ? null : /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_hidden_js__WEBPACK_IMPORTED_MODULE_3__.Hidden, {\n features: _internal_hidden_js__WEBPACK_IMPORTED_MODULE_3__.HiddenFeatures.Hidden,\n ref: t\n });\n }, [\n t,\n u\n ])\n };\n}\nfunction y() {\n let o = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n return {\n mainTreeNodeRef: o,\n MainTreeNode: (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>function() {\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_internal_hidden_js__WEBPACK_IMPORTED_MODULE_3__.Hidden, {\n features: _internal_hidden_js__WEBPACK_IMPORTED_MODULE_3__.HiddenFeatures.Hidden,\n ref: o\n });\n }, [\n o\n ])\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1yb290LWNvbnRhaW5lcnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQStDO0FBQW1FO0FBQTBDO0FBQWtEO0FBQUEsU0FBU2E7UUFBRSxFQUFDQyxtQkFBa0JDLElBQUUsRUFBRSxFQUFDQyxTQUFRQyxDQUFDLEVBQUNDLGlCQUFnQkMsQ0FBQyxFQUFDLEdBQXBELGlFQUFxRCxDQUFDO0lBQUcsSUFBSUM7SUFBRSxJQUFJQyxJQUFFakIsNkNBQUNBLENBQUMsQ0FBQ2dCLElBQUVELEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVHLE9BQU8sS0FBRyxPQUFLRixJQUFFLE9BQU1HLElBQUVYLCtEQUFDQSxDQUFDUyxJQUFHRyxJQUFFZCx1REFBQ0EsQ0FBQztRQUFLLElBQUllLEdBQUVDLEdBQUVDO1FBQUUsSUFBSUMsSUFBRSxFQUFFO1FBQUMsS0FBSSxJQUFJQyxLQUFLZCxFQUFFYyxNQUFJLFFBQU9BLENBQUFBLGFBQWFDLGNBQVlGLEVBQUVHLElBQUksQ0FBQ0YsS0FBRyxhQUFZQSxLQUFHQSxFQUFFUCxPQUFPLFlBQVlRLGVBQWFGLEVBQUVHLElBQUksQ0FBQ0YsRUFBRVAsT0FBTztRQUFHLElBQUdMLEtBQUcsUUFBTUEsRUFBRUssT0FBTyxFQUFDLEtBQUksSUFBSU8sS0FBS1osRUFBRUssT0FBTyxDQUFDTSxFQUFFRyxJQUFJLENBQUNGO1FBQUcsS0FBSSxJQUFJQSxLQUFJLENBQUNKLElBQUVGLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVTLGdCQUFnQixDQUFDLHFCQUFvQixLQUFJLE9BQUtQLElBQUUsRUFBRSxDQUFDSSxNQUFJSSxTQUFTQyxJQUFJLElBQUVMLE1BQUlJLFNBQVNFLElBQUksSUFBRU4sYUFBYUMsZUFBYUQsRUFBRU8sRUFBRSxLQUFHLDRCQUEyQlAsQ0FBQUEsRUFBRVEsUUFBUSxDQUFDaEIsRUFBRUMsT0FBTyxLQUFHTyxFQUFFUSxRQUFRLENBQUMsQ0FBQ1YsSUFBRSxDQUFDRCxJQUFFTCxFQUFFQyxPQUFPLEtBQUcsT0FBSyxLQUFLLElBQUVJLEVBQUVZLFdBQVcsRUFBQyxLQUFJLE9BQUssS0FBSyxJQUFFWCxFQUFFWSxJQUFJLEtBQUdYLEVBQUVZLElBQUksQ0FBQ0MsQ0FBQUEsSUFBR1osRUFBRVEsUUFBUSxDQUFDSSxPQUFLYixFQUFFRyxJQUFJLENBQUNGLEVBQUM7UUFBRyxPQUFPRDtJQUFDO0lBQUcsT0FBTTtRQUFDYyxtQkFBa0JsQjtRQUFFYSxVQUFTM0IsdURBQUNBLENBQUNrQixDQUFBQSxJQUFHSixJQUFJZ0IsSUFBSSxDQUFDZixDQUFBQSxJQUFHQSxFQUFFWSxRQUFRLENBQUNUO1FBQUtWLGlCQUFnQkc7UUFBRXNCLGNBQWF6Qyw4Q0FBQ0EsQ0FBQyxJQUFJO2dCQUFXLE9BQU9pQixLQUFHLE9BQUsscUJBQUtuQixnREFBZSxDQUFDTSx1REFBQ0EsRUFBQztvQkFBQ3VDLFVBQVNyQywrREFBQ0EsQ0FBQ0gsTUFBTTtvQkFBQ3lDLEtBQUl6QjtnQkFBQztZQUFFLEdBQUU7WUFBQ0E7WUFBRUY7U0FBRTtJQUFDO0FBQUM7QUFBQyxTQUFTNEI7SUFBSSxJQUFJaEMsSUFBRVgsNkNBQUNBLENBQUM7SUFBTSxPQUFNO1FBQUNjLGlCQUFnQkg7UUFBRTRCLGNBQWF6Qyw4Q0FBQ0EsQ0FBQyxJQUFJO2dCQUFXLHFCQUFPRixnREFBZSxDQUFDTSx1REFBQ0EsRUFBQztvQkFBQ3VDLFVBQVNyQywrREFBQ0EsQ0FBQ0gsTUFBTTtvQkFBQ3lDLEtBQUkvQjtnQkFBQztZQUFFLEdBQUU7WUFBQ0E7U0FBRTtJQUFDO0FBQUM7QUFBcUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLXJvb3QtY29udGFpbmVycy5qcz8wMzM0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtLHt1c2VNZW1vIGFzIGQsdXNlUmVmIGFzIE19ZnJvbVwicmVhY3RcIjtpbXBvcnR7SGlkZGVuIGFzIEgsSGlkZGVuRmVhdHVyZXMgYXMgVH1mcm9tJy4uL2ludGVybmFsL2hpZGRlbi5qcyc7aW1wb3J0e3VzZUV2ZW50IGFzIEV9ZnJvbScuL3VzZS1ldmVudC5qcyc7aW1wb3J0e3VzZU93bmVyRG9jdW1lbnQgYXMgYn1mcm9tJy4vdXNlLW93bmVyLmpzJztmdW5jdGlvbiBqKHtkZWZhdWx0Q29udGFpbmVyczpvPVtdLHBvcnRhbHM6cixtYWluVHJlZU5vZGVSZWY6dX09e30pe3ZhciBmO2xldCB0PU0oKGY9dT09bnVsbD92b2lkIDA6dS5jdXJyZW50KSE9bnVsbD9mOm51bGwpLGw9Yih0KSxjPUUoKCk9Pnt2YXIgaSxzLGE7bGV0IG49W107Zm9yKGxldCBlIG9mIG8pZSE9PW51bGwmJihlIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/bi5wdXNoKGUpOlwiY3VycmVudFwiaW4gZSYmZS5jdXJyZW50IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJm4ucHVzaChlLmN1cnJlbnQpKTtpZihyIT1udWxsJiZyLmN1cnJlbnQpZm9yKGxldCBlIG9mIHIuY3VycmVudCluLnB1c2goZSk7Zm9yKGxldCBlIG9mKGk9bD09bnVsbD92b2lkIDA6bC5xdWVyeVNlbGVjdG9yQWxsKFwiaHRtbCA+ICosIGJvZHkgPiAqXCIpKSE9bnVsbD9pOltdKWUhPT1kb2N1bWVudC5ib2R5JiZlIT09ZG9jdW1lbnQuaGVhZCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZlLmlkIT09XCJoZWFkbGVzc3VpLXBvcnRhbC1yb290XCImJihlLmNvbnRhaW5zKHQuY3VycmVudCl8fGUuY29udGFpbnMoKGE9KHM9dC5jdXJyZW50KT09bnVsbD92b2lkIDA6cy5nZXRSb290Tm9kZSgpKT09bnVsbD92b2lkIDA6YS5ob3N0KXx8bi5zb21lKEw9PmUuY29udGFpbnMoTCkpfHxuLnB1c2goZSkpO3JldHVybiBufSk7cmV0dXJue3Jlc29sdmVDb250YWluZXJzOmMsY29udGFpbnM6RShuPT5jKCkuc29tZShpPT5pLmNvbnRhaW5zKG4pKSksbWFpblRyZWVOb2RlUmVmOnQsTWFpblRyZWVOb2RlOmQoKCk9PmZ1bmN0aW9uKCl7cmV0dXJuIHUhPW51bGw/bnVsbDptLmNyZWF0ZUVsZW1lbnQoSCx7ZmVhdHVyZXM6VC5IaWRkZW4scmVmOnR9KX0sW3QsdV0pfX1mdW5jdGlvbiB5KCl7bGV0IG89TShudWxsKTtyZXR1cm57bWFpblRyZWVOb2RlUmVmOm8sTWFpblRyZWVOb2RlOmQoKCk9PmZ1bmN0aW9uKCl7cmV0dXJuIG0uY3JlYXRlRWxlbWVudChILHtmZWF0dXJlczpULkhpZGRlbixyZWY6b30pfSxbb10pfX1leHBvcnR7eSBhcyB1c2VNYWluVHJlZU5vZGUsaiBhcyB1c2VSb290Q29udGFpbmVyc307XG4iXSwibmFtZXMiOlsibSIsInVzZU1lbW8iLCJkIiwidXNlUmVmIiwiTSIsIkhpZGRlbiIsIkgiLCJIaWRkZW5GZWF0dXJlcyIsIlQiLCJ1c2VFdmVudCIsIkUiLCJ1c2VPd25lckRvY3VtZW50IiwiYiIsImoiLCJkZWZhdWx0Q29udGFpbmVycyIsIm8iLCJwb3J0YWxzIiwiciIsIm1haW5UcmVlTm9kZVJlZiIsInUiLCJmIiwidCIsImN1cnJlbnQiLCJsIiwiYyIsImkiLCJzIiwiYSIsIm4iLCJlIiwiSFRNTEVsZW1lbnQiLCJwdXNoIiwicXVlcnlTZWxlY3RvckFsbCIsImRvY3VtZW50IiwiYm9keSIsImhlYWQiLCJpZCIsImNvbnRhaW5zIiwiZ2V0Um9vdE5vZGUiLCJob3N0Iiwic29tZSIsIkwiLCJyZXNvbHZlQ29udGFpbmVycyIsIk1haW5UcmVlTm9kZSIsImNyZWF0ZUVsZW1lbnQiLCJmZWF0dXJlcyIsInJlZiIsInkiLCJ1c2VNYWluVHJlZU5vZGUiLCJ1c2VSb290Q29udGFpbmVycyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-root-containers.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useScrollLock: function() { return /* binding */ f; }\n/* harmony export */ });\n/* harmony import */ var _document_overflow_use_document_overflow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./document-overflow/use-document-overflow.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js\");\n/* harmony import */ var _use_is_top_layer_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./use-is-top-layer.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js\");\n\n\nfunction f(e, c) {\n let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : ()=>[\n document.body\n ];\n let r = (0,_use_is_top_layer_js__WEBPACK_IMPORTED_MODULE_0__.useIsTopLayer)(e, \"scroll-lock\");\n (0,_document_overflow_use_document_overflow_js__WEBPACK_IMPORTED_MODULE_1__.useDocumentOverflowLockedEffect)(r, c, (t)=>{\n var o;\n return {\n containers: [\n ...(o = t.containers) != null ? o : [],\n n\n ]\n };\n });\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zY3JvbGwtbG9jay5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBK0Y7QUFBc0Q7QUFBQSxTQUFTSSxFQUFFQyxDQUFDLEVBQUNDLENBQUM7UUFBQ0MsSUFBQUEsaUVBQUUsSUFBSTtZQUFDQyxTQUFTQyxJQUFJO1NBQUM7SUFBRSxJQUFJQyxJQUFFUCxtRUFBQ0EsQ0FBQ0UsR0FBRTtJQUFlSiw0R0FBQ0EsQ0FBQ1MsR0FBRUosR0FBRUssQ0FBQUE7UUFBSSxJQUFJQztRQUFFLE9BQU07WUFBQ0MsWUFBVzttQkFBSSxDQUFDRCxJQUFFRCxFQUFFRSxVQUFVLEtBQUcsT0FBS0QsSUFBRSxFQUFFO2dCQUFDTDthQUFFO1FBQUE7SUFBQztBQUFFO0FBQTRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zY3JvbGwtbG9jay5qcz8zYzUzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VEb2N1bWVudE92ZXJmbG93TG9ja2VkRWZmZWN0IGFzIGx9ZnJvbScuL2RvY3VtZW50LW92ZXJmbG93L3VzZS1kb2N1bWVudC1vdmVyZmxvdy5qcyc7aW1wb3J0e3VzZUlzVG9wTGF5ZXIgYXMgbX1mcm9tJy4vdXNlLWlzLXRvcC1sYXllci5qcyc7ZnVuY3Rpb24gZihlLGMsbj0oKT0+W2RvY3VtZW50LmJvZHldKXtsZXQgcj1tKGUsXCJzY3JvbGwtbG9ja1wiKTtsKHIsYyx0PT57dmFyIG87cmV0dXJue2NvbnRhaW5lcnM6Wy4uLihvPXQuY29udGFpbmVycykhPW51bGw/bzpbXSxuXX19KX1leHBvcnR7ZiBhcyB1c2VTY3JvbGxMb2NrfTtcbiJdLCJuYW1lcyI6WyJ1c2VEb2N1bWVudE92ZXJmbG93TG9ja2VkRWZmZWN0IiwibCIsInVzZUlzVG9wTGF5ZXIiLCJtIiwiZiIsImUiLCJjIiwibiIsImRvY3VtZW50IiwiYm9keSIsInIiLCJ0IiwibyIsImNvbnRhaW5lcnMiLCJ1c2VTY3JvbGxMb2NrIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("var react__WEBPACK_IMPORTED_MODULE_0___namespace_cache;\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useServerHandoffComplete: function() { return /* binding */ l; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_env_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/env.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js\");\nvar _s = $RefreshSig$();\n\n\nfunction s() {\n let r = typeof document == \"undefined\";\n return \"useSyncExternalStore\" in /*#__PURE__*/ (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react__WEBPACK_IMPORTED_MODULE_0__, 2))) ? ((o)=>o.useSyncExternalStore)(/*#__PURE__*/ (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react__WEBPACK_IMPORTED_MODULE_0__, 2))))(()=>()=>{}, ()=>!1, ()=>!r) : !1;\n}\nfunction l() {\n _s();\n let r = s(), [e, n] = react__WEBPACK_IMPORTED_MODULE_0__.useState(_utils_env_js__WEBPACK_IMPORTED_MODULE_1__.env.isHandoffComplete);\n return e && _utils_env_js__WEBPACK_IMPORTED_MODULE_1__.env.isHandoffComplete === !1 && n(!1), react__WEBPACK_IMPORTED_MODULE_0__.useEffect(()=>{\n e !== !0 && n(!0);\n }, [\n e\n ]), react__WEBPACK_IMPORTED_MODULE_0__.useEffect(()=>_utils_env_js__WEBPACK_IMPORTED_MODULE_1__.env.handoff(), []), r ? !1 : e;\n}\n_s(l, \"XDn800CXgxu2ybVrj0od3/iCwpE=\");\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zZXJ2ZXItaGFuZG9mZi1jb21wbGV0ZS5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF3QjtBQUFzQztBQUFBLFNBQVNHO0lBQUksSUFBSUMsSUFBRSxPQUFPQyxZQUFVO0lBQVksT0FBTSxtTkFBMEJMLEdBQUMsQ0FBQ00sQ0FBQUEsSUFBR0EsRUFBRUMsb0JBQW9CLEVBQUVQLHlMQUFDQSxFQUFFLElBQUksS0FBSyxHQUFFLElBQUksQ0FBQyxHQUFFLElBQUksQ0FBQ0ksS0FBRyxDQUFDO0FBQUM7QUFBQyxTQUFTSTs7SUFBSSxJQUFJSixJQUFFRCxLQUFJLENBQUNNLEdBQUVDLEVBQUUsR0FBQ1YsMkNBQVUsQ0FBQ0UsOENBQUNBLENBQUNVLGlCQUFpQjtJQUFFLE9BQU9ILEtBQUdQLDhDQUFDQSxDQUFDVSxpQkFBaUIsS0FBRyxDQUFDLEtBQUdGLEVBQUUsQ0FBQyxJQUFHViw0Q0FBVyxDQUFDO1FBQUtTLE1BQUksQ0FBQyxLQUFHQyxFQUFFLENBQUM7SUFBRSxHQUFFO1FBQUNEO0tBQUUsR0FBRVQsNENBQVcsQ0FBQyxJQUFJRSw4Q0FBQ0EsQ0FBQ1ksT0FBTyxJQUFHLEVBQUUsR0FBRVYsSUFBRSxDQUFDLElBQUVLO0FBQUM7R0FBektEO0FBQWdOIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zZXJ2ZXItaGFuZG9mZi1jb21wbGV0ZS5qcz9hOGI4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCphcyB0IGZyb21cInJlYWN0XCI7aW1wb3J0e2VudiBhcyBmfWZyb20nLi4vdXRpbHMvZW52LmpzJztmdW5jdGlvbiBzKCl7bGV0IHI9dHlwZW9mIGRvY3VtZW50PT1cInVuZGVmaW5lZFwiO3JldHVyblwidXNlU3luY0V4dGVybmFsU3RvcmVcImluIHQ/KG89Pm8udXNlU3luY0V4dGVybmFsU3RvcmUpKHQpKCgpPT4oKT0+e30sKCk9PiExLCgpPT4hcik6ITF9ZnVuY3Rpb24gbCgpe2xldCByPXMoKSxbZSxuXT10LnVzZVN0YXRlKGYuaXNIYW5kb2ZmQ29tcGxldGUpO3JldHVybiBlJiZmLmlzSGFuZG9mZkNvbXBsZXRlPT09ITEmJm4oITEpLHQudXNlRWZmZWN0KCgpPT57ZSE9PSEwJiZuKCEwKX0sW2VdKSx0LnVzZUVmZmVjdCgoKT0+Zi5oYW5kb2ZmKCksW10pLHI/ITE6ZX1leHBvcnR7bCBhcyB1c2VTZXJ2ZXJIYW5kb2ZmQ29tcGxldGV9O1xuIl0sIm5hbWVzIjpbInQiLCJlbnYiLCJmIiwicyIsInIiLCJkb2N1bWVudCIsIm8iLCJ1c2VTeW5jRXh0ZXJuYWxTdG9yZSIsImwiLCJlIiwibiIsInVzZVN0YXRlIiwiaXNIYW5kb2ZmQ29tcGxldGUiLCJ1c2VFZmZlY3QiLCJoYW5kb2ZmIiwidXNlU2VydmVySGFuZG9mZkNvbXBsZXRlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-store.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-store.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useStore: function() { return /* binding */ o; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\nfunction o(t) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useSyncExternalStore)(t.subscribe, t.getSnapshot, t.getSnapshot);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zdG9yZS5qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE2QztBQUFBLFNBQVNFLEVBQUVDLENBQUM7SUFBRSxPQUFPRiwyREFBQ0EsQ0FBQ0UsRUFBRUMsU0FBUyxFQUFDRCxFQUFFRSxXQUFXLEVBQUNGLEVBQUVFLFdBQVc7QUFBQztBQUF1QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9ob29rcy91c2Utc3RvcmUuanM/MzFhNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlU3luY0V4dGVybmFsU3RvcmUgYXMgZX1mcm9tXCJyZWFjdFwiO2Z1bmN0aW9uIG8odCl7cmV0dXJuIGUodC5zdWJzY3JpYmUsdC5nZXRTbmFwc2hvdCx0LmdldFNuYXBzaG90KX1leHBvcnR7byBhcyB1c2VTdG9yZX07XG4iXSwibmFtZXMiOlsidXNlU3luY0V4dGVybmFsU3RvcmUiLCJlIiwibyIsInQiLCJzdWJzY3JpYmUiLCJnZXRTbmFwc2hvdCIsInVzZVN0b3JlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-store.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ optionalRef: function() { return /* binding */ T; },\n/* harmony export */ useSyncRefs: function() { return /* binding */ y; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n\n\nlet u = Symbol();\nfunction T(t) {\n let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;\n return Object.assign(t, {\n [u]: n\n });\n}\n_c = T;\nfunction y() {\n for(var _len = arguments.length, t = new Array(_len), _key = 0; _key < _len; _key++){\n t[_key] = arguments[_key];\n }\n let n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(t);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n n.current = t;\n }, [\n t\n ]);\n let c = (0,_use_event_js__WEBPACK_IMPORTED_MODULE_1__.useEvent)((e)=>{\n for (let o of n.current)o != null && (typeof o == \"function\" ? o(e) : o.current = e);\n });\n return t.every((e)=>e == null || (e == null ? void 0 : e[u])) ? void 0 : c;\n}\n\nvar _c;\n$RefreshReg$(_c, \"T\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zeW5jLXJlZnMuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE4QztBQUEwQztBQUFBLElBQUlNLElBQUVDO0FBQVMsU0FBU0MsRUFBRUMsQ0FBQztRQUFDQyxJQUFBQSxpRUFBRSxDQUFDO0lBQUcsT0FBT0MsT0FBT0MsTUFBTSxDQUFDSCxHQUFFO1FBQUMsQ0FBQ0gsRUFBRSxFQUFDSTtJQUFDO0FBQUU7S0FBekNGO0FBQTBDLFNBQVNLO0lBQUU7UUFBR0osRUFBSCx1QkFBSTs7SUFBRSxJQUFJQyxJQUFFUCw2Q0FBQ0EsQ0FBQ007SUFBR1IsZ0RBQUNBLENBQUM7UUFBS1MsRUFBRUksT0FBTyxHQUFDTDtJQUFDLEdBQUU7UUFBQ0E7S0FBRTtJQUFFLElBQUlNLElBQUVWLHVEQUFDQSxDQUFDVyxDQUFBQTtRQUFJLEtBQUksSUFBSUMsS0FBS1AsRUFBRUksT0FBTyxDQUFDRyxLQUFHLFFBQU8sUUFBT0EsS0FBRyxhQUFXQSxFQUFFRCxLQUFHQyxFQUFFSCxPQUFPLEdBQUNFLENBQUFBO0lBQUU7SUFBRyxPQUFPUCxFQUFFUyxLQUFLLENBQUNGLENBQUFBLElBQUdBLEtBQUcsUUFBT0EsQ0FBQUEsS0FBRyxPQUFLLEtBQUssSUFBRUEsQ0FBQyxDQUFDVixFQUFFLEtBQUcsS0FBSyxJQUFFUztBQUFDO0FBQTJDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS1zeW5jLXJlZnMuanM/ZWY1OCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlRWZmZWN0IGFzIGwsdXNlUmVmIGFzIGl9ZnJvbVwicmVhY3RcIjtpbXBvcnR7dXNlRXZlbnQgYXMgcn1mcm9tJy4vdXNlLWV2ZW50LmpzJztsZXQgdT1TeW1ib2woKTtmdW5jdGlvbiBUKHQsbj0hMCl7cmV0dXJuIE9iamVjdC5hc3NpZ24odCx7W3VdOm59KX1mdW5jdGlvbiB5KC4uLnQpe2xldCBuPWkodCk7bCgoKT0+e24uY3VycmVudD10fSxbdF0pO2xldCBjPXIoZT0+e2ZvcihsZXQgbyBvZiBuLmN1cnJlbnQpbyE9bnVsbCYmKHR5cGVvZiBvPT1cImZ1bmN0aW9uXCI/byhlKTpvLmN1cnJlbnQ9ZSl9KTtyZXR1cm4gdC5ldmVyeShlPT5lPT1udWxsfHwoZT09bnVsbD92b2lkIDA6ZVt1XSkpP3ZvaWQgMDpjfWV4cG9ydHtUIGFzIG9wdGlvbmFsUmVmLHkgYXMgdXNlU3luY1JlZnN9O1xuIl0sIm5hbWVzIjpbInVzZUVmZmVjdCIsImwiLCJ1c2VSZWYiLCJpIiwidXNlRXZlbnQiLCJyIiwidSIsIlN5bWJvbCIsIlQiLCJ0IiwibiIsIk9iamVjdCIsImFzc2lnbiIsInkiLCJjdXJyZW50IiwiYyIsImUiLCJvIiwiZXZlcnkiLCJvcHRpb25hbFJlZiIsInVzZVN5bmNSZWZzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-sync-refs.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-tab-direction.js":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-tab-direction.js ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Direction: function() { return /* binding */ a; },\n/* harmony export */ useTabDirection: function() { return /* binding */ u; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_window_event_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-window-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-window-event.js\");\n\n\nvar a = ((r)=>(r[r.Forwards = 0] = \"Forwards\", r[r.Backwards = 1] = \"Backwards\", r))(a || {});\nfunction u() {\n let e = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(0);\n return (0,_use_window_event_js__WEBPACK_IMPORTED_MODULE_1__.useWindowEvent)(!0, \"keydown\", (r)=>{\n r.key === \"Tab\" && (e.current = r.shiftKey ? 1 : 0);\n }, !0), e;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS10YWItZGlyZWN0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBK0I7QUFBdUQ7QUFBQSxJQUFJSSxJQUFFLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsUUFBUSxHQUFDLEVBQUUsR0FBQyxZQUFXRCxDQUFDLENBQUNBLEVBQUVFLFNBQVMsR0FBQyxFQUFFLEdBQUMsYUFBWUYsQ0FBQUEsQ0FBQyxFQUFHRCxLQUFHLENBQUM7QUFBRyxTQUFTSTtJQUFJLElBQUlDLElBQUVSLDZDQUFDQSxDQUFDO0lBQUcsT0FBT0Usb0VBQUNBLENBQUMsQ0FBQyxHQUFFLFdBQVVFLENBQUFBO1FBQUlBLEVBQUVLLEdBQUcsS0FBRyxTQUFRRCxDQUFBQSxFQUFFRSxPQUFPLEdBQUNOLEVBQUVPLFFBQVEsR0FBQyxJQUFFO0lBQUUsR0FBRSxDQUFDLElBQUdIO0FBQUM7QUFBNkMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLXRhYi1kaXJlY3Rpb24uanM/M2Q3ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlUmVmIGFzIG99ZnJvbVwicmVhY3RcIjtpbXBvcnR7dXNlV2luZG93RXZlbnQgYXMgdH1mcm9tJy4vdXNlLXdpbmRvdy1ldmVudC5qcyc7dmFyIGE9KHI9PihyW3IuRm9yd2FyZHM9MF09XCJGb3J3YXJkc1wiLHJbci5CYWNrd2FyZHM9MV09XCJCYWNrd2FyZHNcIixyKSkoYXx8e30pO2Z1bmN0aW9uIHUoKXtsZXQgZT1vKDApO3JldHVybiB0KCEwLFwia2V5ZG93blwiLHI9PntyLmtleT09PVwiVGFiXCImJihlLmN1cnJlbnQ9ci5zaGlmdEtleT8xOjApfSwhMCksZX1leHBvcnR7YSBhcyBEaXJlY3Rpb24sdSBhcyB1c2VUYWJEaXJlY3Rpb259O1xuIl0sIm5hbWVzIjpbInVzZVJlZiIsIm8iLCJ1c2VXaW5kb3dFdmVudCIsInQiLCJhIiwiciIsIkZvcndhcmRzIiwiQmFja3dhcmRzIiwidSIsImUiLCJrZXkiLCJjdXJyZW50Iiwic2hpZnRLZXkiLCJEaXJlY3Rpb24iLCJ1c2VUYWJEaXJlY3Rpb24iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-tab-direction.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-transition.js":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-transition.js ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ transitionDataAttributes: function() { return /* binding */ A; },\n/* harmony export */ useTransition: function() { return /* binding */ V; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_disposables_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n/* harmony import */ var _utils_once_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/once.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/once.js\");\n/* harmony import */ var _use_disposables_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-disposables.js\");\n/* harmony import */ var _use_flags_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-flags.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-flags.js\");\n/* harmony import */ var _use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n\n\n\n\n\n\nvar D = ((i)=>(i[i.None = 0] = \"None\", i[i.Closed = 1] = \"Closed\", i[i.Enter = 2] = \"Enter\", i[i.Leave = 4] = \"Leave\", i))(D || {});\nfunction A(e) {\n let a = {};\n for(let t in e)e[t] === !0 && (a[`data-${t}`] = \"\");\n return a;\n}\n_c = A;\nfunction V(e, a, t, r) {\n let [i, u] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(t), { hasFlag: d, addFlag: f, removeFlag: s } = (0,_use_flags_js__WEBPACK_IMPORTED_MODULE_1__.useFlags)(e && i ? 3 : 0), l = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(!1), n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(!1), o = (0,_use_disposables_js__WEBPACK_IMPORTED_MODULE_2__.useDisposables)();\n return (0,_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_3__.useIsoMorphicEffect)(function p() {\n var T;\n if (!e) return;\n t && u(!0);\n let c = a.current;\n return c ? ((T = r == null ? void 0 : r.start) == null || T.call(r, t), M(c, {\n inFlight: l,\n prepare () {\n n.current ? n.current = !1 : n.current = l.current, l.current = !0, !n.current && (t ? (f(3), s(4)) : (f(4), s(2)));\n },\n run () {\n n.current ? t ? (s(3), f(4)) : (s(4), f(3)) : t ? s(1) : f(1);\n },\n done () {\n var m;\n n.current && typeof c.getAnimations == \"function\" && c.getAnimations().length > 0 || (l.current = !1, s(7), t || u(!1), (m = r == null ? void 0 : r.end) == null || m.call(r, t));\n }\n })) : t ? (f(3), o.nextFrame(()=>p())) : void 0;\n }, [\n e,\n t,\n a,\n o\n ]), e ? [\n i,\n {\n closed: d(1),\n enter: d(2),\n leave: d(4),\n transition: d(2) || d(4)\n }\n ] : [\n t,\n {\n closed: void 0,\n enter: void 0,\n leave: void 0,\n transition: void 0\n }\n ];\n}\n_c1 = V;\nfunction M(e, param) {\n let { prepare: a, run: t, done: r, inFlight: i } = param;\n let u = (0,_utils_disposables_js__WEBPACK_IMPORTED_MODULE_4__.disposables)();\n return R(e, {\n prepare: a,\n inFlight: i\n }), u.nextFrame(()=>{\n u.add(F(e, r)), t();\n }), u.dispose;\n}\n_c2 = M;\nfunction F(e, a) {\n let t = (0,_utils_once_js__WEBPACK_IMPORTED_MODULE_5__.once)(a), r = (0,_utils_disposables_js__WEBPACK_IMPORTED_MODULE_4__.disposables)();\n if (!e) return r.dispose;\n let { transitionDuration: i, transitionDelay: u } = getComputedStyle(e), [d, f] = [\n i,\n u\n ].map((l)=>{\n let [n = 0] = l.split(\",\").filter(Boolean).map((o)=>o.includes(\"ms\") ? parseFloat(o) : parseFloat(o) * 1e3).sort((o, p)=>p - o);\n return n;\n }), s = d + f;\n if (s !== 0) {\n let l = r.group((n)=>{\n let o = n.setTimeout(()=>{\n t(), n.dispose();\n }, s);\n n.addEventListener(e, \"transitionrun\", (p)=>{\n p.target === p.currentTarget && (o(), n.addEventListener(e, \"transitioncancel\", (c)=>{\n c.target === c.currentTarget && (t(), l());\n }));\n });\n });\n r.addEventListener(e, \"transitionend\", (n)=>{\n n.target === n.currentTarget && (t(), r.dispose());\n });\n } else t();\n return r.dispose;\n}\n_c3 = F;\nfunction R(e, param) {\n let { inFlight: a, prepare: t } = param;\n if (a != null && a.current) {\n t();\n return;\n }\n let r = e.style.transition;\n e.style.transition = \"none\", t(), e.offsetHeight, e.style.transition = r;\n}\n_c4 = R;\n\nvar _c, _c1, _c2, _c3, _c4;\n$RefreshReg$(_c, \"A\");\n$RefreshReg$(_c1, \"V\");\n$RefreshReg$(_c2, \"M\");\n$RefreshReg$(_c3, \"F\");\n$RefreshReg$(_c4, \"R\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS10cmFuc2l0aW9uLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQTZDO0FBQXNEO0FBQXdDO0FBQXNEO0FBQTBDO0FBQWtFO0FBQUEsSUFBSWMsSUFBRSxDQUFDQyxDQUFBQSxJQUFJQSxDQUFBQSxDQUFDLENBQUNBLEVBQUVDLElBQUksR0FBQyxFQUFFLEdBQUMsUUFBT0QsQ0FBQyxDQUFDQSxFQUFFRSxNQUFNLEdBQUMsRUFBRSxHQUFDLFVBQVNGLENBQUMsQ0FBQ0EsRUFBRUcsS0FBSyxHQUFDLEVBQUUsR0FBQyxTQUFRSCxDQUFDLENBQUNBLEVBQUVJLEtBQUssR0FBQyxFQUFFLEdBQUMsU0FBUUosQ0FBQUEsQ0FBQyxFQUFHRCxLQUFHLENBQUM7QUFBRyxTQUFTTSxFQUFFQyxDQUFDO0lBQUUsSUFBSUMsSUFBRSxDQUFDO0lBQUUsSUFBSSxJQUFJQyxLQUFLRixFQUFFQSxDQUFDLENBQUNFLEVBQUUsS0FBRyxDQUFDLEtBQUlELENBQUFBLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRUMsRUFBRSxDQUFDLENBQUMsR0FBQyxFQUFDO0lBQUcsT0FBT0Q7QUFBQztLQUFwRUY7QUFBcUUsU0FBU0ksRUFBRUgsQ0FBQyxFQUFDQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0UsQ0FBQztJQUFFLElBQUcsQ0FBQ1YsR0FBRVcsRUFBRSxHQUFDdkIsK0NBQUNBLENBQUNvQixJQUFHLEVBQUNJLFNBQVFDLENBQUMsRUFBQ0MsU0FBUUMsQ0FBQyxFQUFDQyxZQUFXQyxDQUFDLEVBQUMsR0FBQ3JCLHVEQUFDQSxDQUFDVSxLQUFHTixJQUFFLElBQUUsSUFBR2tCLElBQUVoQyw2Q0FBQ0EsQ0FBQyxDQUFDLElBQUdpQyxJQUFFakMsNkNBQUNBLENBQUMsQ0FBQyxJQUFHa0MsSUFBRTFCLG1FQUFDQTtJQUFHLE9BQU9JLCtFQUFDQSxDQUFDLFNBQVN1QjtR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bEMsRUFBRXNELEtBQUssQ0FBQ3BCLFVBQVUsR0FBQyxRQUFPaEMsS0FBSUYsRUFBRXVELFlBQVksRUFBQ3ZELEVBQUVzRCxLQUFLLENBQUNwQixVQUFVLEdBQUM5QjtBQUFDO01BQXhKK0I7QUFBa04iLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLXRyYW5zaXRpb24uanM/NmE3NiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7dXNlUmVmIGFzIGIsdXNlU3RhdGUgYXMgU31mcm9tXCJyZWFjdFwiO2ltcG9ydHtkaXNwb3NhYmxlcyBhcyBFfWZyb20nLi4vdXRpbHMvZGlzcG9zYWJsZXMuanMnO2ltcG9ydHtvbmNlIGFzIGd9ZnJvbScuLi91dGlscy9vbmNlLmpzJztpbXBvcnR7dXNlRGlzcG9zYWJsZXMgYXMgTH1mcm9tJy4vdXNlLWRpc3Bvc2FibGVzLmpzJztpbXBvcnR7dXNlRmxhZ3MgYXMgeX1mcm9tJy4vdXNlLWZsYWdzLmpzJztpbXBvcnR7dXNlSXNvTW9ycGhpY0VmZmVjdCBhcyBDfWZyb20nLi91c2UtaXNvLW1vcnBoaWMtZWZmZWN0LmpzJzt2YXIgRD0oaT0+KGlbaS5Ob25lPTBdPVwiTm9uZVwiLGlbaS5DbG9zZWQ9MV09XCJDbG9zZWRcIixpW2kuRW50ZXI9Ml09XCJFbnRlclwiLGlbaS5MZWF2ZT00XT1cIkxlYXZlXCIsaSkpKER8fHt9KTtmdW5jdGlvbiBBKGUpe2xldCBhPXt9O2ZvcihsZXQgdCBpbiBlKWVbdF09PT0hMCYmKGFbYGRhdGEtJHt0fWBdPVwiXCIpO3JldHVybiBhfWZ1bmN0aW9uIFYoZSxhLHQscil7bGV0W2ksdV09Uyh0KSx7aGFzRmxhZzpkLGFkZEZsYWc6ZixyZW1vdmVGbGFnOnN9PXkoZSYmaT8zOjApLGw9YighMSksbj1iKCExKSxvPUwoKTtyZXR1cm4gQyhmdW5jdGlvbiBwKCl7dmFyIFQ7aWYoIWUpcmV0dXJuO3QmJnUoITApO2xldCBjPWEuY3VycmVudDtyZXR1cm4gYz8oKFQ9cj09bnVsbD92b2lkIDA6ci5zdGFydCk9PW51bGx8fFQuY2FsbChyLHQpLE0oYyx7aW5GbGlnaHQ6bCxwcmVwYXJlKCl7bi5jdXJyZW50P24uY3VycmVudD0hMTpuLmN1cnJlbnQ9bC5jdXJyZW50LGwuY3VycmVudD0hMCwhbi5jdXJyZW50JiYodD8oZigzKSxzKDQpKTooZig0KSxzKDIpKSl9LHJ1bigpe24uY3VycmVudD90PyhzKDMpLGYoNCkpOihzKDQpLGYoMykpOnQ/cygxKTpmKDEpfSxkb25lKCl7dmFyIG07bi5jdXJyZW50JiZ0eXBlb2YgYy5nZXRBbmltYXRpb25zPT1cImZ1bmN0aW9uXCImJmMuZ2V0QW5pbWF0aW9ucygpLmxlbmd0aD4wfHwobC5jdXJyZW50PSExLHMoNyksdHx8dSghMSksKG09cj09bnVsbD92b2lkIDA6ci5lbmQpPT1udWxsfHxtLmNhbGwocix0KSl9fSkpOnQ/KGYoMyksby5uZXh0RnJhbWUoKCk9PnAoKSkpOnZvaWQgMH0sW2UsdCxhLG9dKSxlP1tpLHtjbG9zZWQ6ZCgxKSxlbnRlcjpkKDIpLGxlYXZlOmQoNCksdHJhbnNpdGlvbjpkKDIpfHxkKDQpfV06W3Qse2Nsb3NlZDp2b2lkIDAsZW50ZXI6dm9pZCAwLGxlYXZlOnZvaWQgMCx0cmFuc2l0aW9uOnZvaWQgMH1dfWZ1bmN0aW9uIE0oZSx7cHJlcGFyZTphLHJ1bjp0LGRvbmU6cixpbkZsaWdodDppfSl7bGV0IHU9RSgpO3JldHVybiBSKGUse3ByZXBhcmU6YSxpbkZsaWdodDppfSksdS5uZXh0RnJhbWUoKCk9Pnt1LmFkZChGKGUscikpLHQoKX0pLHUuZGlzcG9zZX1mdW5jdGlvbiBGKGUsYSl7bGV0IHQ9ZyhhKSxyPUUoKTtpZighZSlyZXR1cm4gci5kaXNwb3NlO2xldHt0cmFuc2l0aW9uRHVyYXRpb246aSx0cmFuc2l0aW9uRGVsYXk6dX09Z2V0Q29tcHV0ZWRTdHlsZShlKSxbZCxmXT1baSx1XS5tYXAobD0+e2xldFtuPTBdPWwuc3BsaXQoXCIsXCIpLmZpbHRlcihCb29sZWFuKS5tYXAobz0+by5pbmNsdWRlcyhcIm1zXCIpP3BhcnNlRmxvYXQobyk6cGFyc2VGbG9hdChvKSoxZTMpLnNvcnQoKG8scCk9PnAtbyk7cmV0dXJuIG59KSxzPWQrZjtpZihzIT09MCl7bGV0IGw9ci5ncm91cChuPT57bGV0IG89bi5zZXRUaW1lb3V0KCgpPT57dCgpLG4uZGlzcG9zZSgpfSxzKTtuLmFkZEV2ZW50TGlzdGVuZXIoZSxcInRyYW5zaXRpb25ydW5cIixwPT57cC50YXJnZXQ9PT1wLmN1cnJlbnRUYXJnZXQmJihvKCksbi5hZGRFdmVudExpc3RlbmVyKGUsXCJ0cmFuc2l0aW9uY2FuY2VsXCIsYz0+e2MudGFyZ2V0PT09Yy5jdXJyZW50VGFyZ2V0JiYodCgpLGwoKSl9KSl9KX0pO3IuYWRkRXZlbnRMaXN0ZW5lcihlLFwidHJhbnNpdGlvbmVuZFwiLG49PntuLnRhcmdldD09PW4uY3VycmVudFRhcmdldCYmKHQoKSxyLmRpc3Bvc2UoKSl9KX1lbHNlIHQoKTtyZXR1cm4gci5kaXNwb3NlfWZ1bmN0aW9uIFIoZSx7aW5GbGlnaHQ6YSxwcmVwYXJlOnR9KXtpZihhIT1udWxsJiZhLmN1cnJlbnQpe3QoKTtyZXR1cm59bGV0IHI9ZS5zdHlsZS50cmFuc2l0aW9uO2Uuc3R5bGUudHJhbnNpdGlvbj1cIm5vbmVcIix0KCksZS5vZmZzZXRIZWlnaHQsZS5zdHlsZS50cmFuc2l0aW9uPXJ9ZXhwb3J0e0EgYXMgdHJhbnNpdGlvbkRhdGFBdHRyaWJ1dGVzLFYgYXMgdXNlVHJhbnNpdGlvbn07XG4iXSwibmFtZXMiOlsidXNlUmVmIiwiYiIsInVzZVN0YXRlIiwiUyIsImRpc3Bvc2FibGVzIiwiRSIsIm9uY2UiLCJnIiwidXNlRGlzcG9zYWJsZXMiLCJMIiwidXNlRmxhZ3MiLCJ5IiwidXNlSXNvTW9ycGhpY0VmZmVjdCIsIkMiLCJEIiwiaSIsIk5vbmUiLCJDbG9zZWQiLCJFbnRlciIsIkxlYXZlIiwiQSIsImUiLCJhIiwidCIsIlYiLCJyIiwidSIsImhhc0ZsYWciLCJkIiwiYWRkRmxhZyIsImYiLCJyZW1vdmVGbGFnIiwicyIsImwiLCJuIiwibyIsInAiLCJUIiwiYyIsImN1cnJlbnQiLCJzdGFydCIsImNhbGwiLCJNIiwiaW5GbGlnaHQiLCJwcmVwYXJlIiwicnVuIiwiZG9uZSIsIm0iLCJnZXRBbmltYXRpb25zIiwibGVuZ3RoIiwiZW5kIiwibmV4dEZyYW1lIiwiY2xvc2VkIiwiZW50ZXIiLCJsZWF2ZSIsInRyYW5zaXRpb24iLCJSIiwiYWRkIiwiRiIsImRpc3Bvc2UiLCJ0cmFuc2l0aW9uRHVyYXRpb24iLCJ0cmFuc2l0aW9uRGVsYXkiLCJnZXRDb21wdXRlZFN0eWxlIiwibWFwIiwic3BsaXQiLCJmaWx0ZXIiLCJCb29sZWFuIiwiaW5jbHVkZXMiLCJwYXJzZUZsb2F0Iiwic29ydCIsImdyb3VwIiwic2V0VGltZW91dCIsImFkZEV2ZW50TGlzdGVuZXIiLCJ0YXJnZXQiLCJjdXJyZW50VGFyZ2V0Iiwic3R5bGUiLCJvZmZzZXRIZWlnaHQiLCJ0cmFuc2l0aW9uRGF0YUF0dHJpYnV0ZXMiLCJ1c2VUcmFuc2l0aW9uIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-transition.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-window-event.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/hooks/use-window-event.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useWindowEvent: function() { return /* binding */ s; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-latest-value.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-latest-value.js\");\n\n\nfunction s(t, e, o, n) {\n let i = (0,_use_latest_value_js__WEBPACK_IMPORTED_MODULE_1__.useLatestValue)(o);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n if (!t) return;\n function r(d) {\n i.current(d);\n }\n return window.addEventListener(e, r, n), ()=>window.removeEventListener(e, r, n);\n }, [\n t,\n e,\n n\n ]);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2hvb2tzL3VzZS13aW5kb3ctZXZlbnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWtDO0FBQXVEO0FBQUEsU0FBU0ksRUFBRUMsQ0FBQyxFQUFDQyxDQUFDLEVBQUNDLENBQUMsRUFBQ0MsQ0FBQztJQUFFLElBQUlDLElBQUVOLG9FQUFDQSxDQUFDSTtJQUFHTixnREFBQ0EsQ0FBQztRQUFLLElBQUcsQ0FBQ0ksR0FBRTtRQUFPLFNBQVNLLEVBQUVDLENBQUM7WUFBRUYsRUFBRUcsT0FBTyxDQUFDRDtRQUFFO1FBQUMsT0FBT0UsT0FBT0MsZ0JBQWdCLENBQUNSLEdBQUVJLEdBQUVGLElBQUcsSUFBSUssT0FBT0UsbUJBQW1CLENBQUNULEdBQUVJLEdBQUVGO0lBQUUsR0FBRTtRQUFDSDtRQUFFQztRQUFFRTtLQUFFO0FBQUM7QUFBNkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaG9va3MvdXNlLXdpbmRvdy1ldmVudC5qcz9mYjVlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHt1c2VFZmZlY3QgYXMgYX1mcm9tXCJyZWFjdFwiO2ltcG9ydHt1c2VMYXRlc3RWYWx1ZSBhcyBmfWZyb20nLi91c2UtbGF0ZXN0LXZhbHVlLmpzJztmdW5jdGlvbiBzKHQsZSxvLG4pe2xldCBpPWYobyk7YSgoKT0+e2lmKCF0KXJldHVybjtmdW5jdGlvbiByKGQpe2kuY3VycmVudChkKX1yZXR1cm4gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoZSxyLG4pLCgpPT53aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLHIsbil9LFt0LGUsbl0pfWV4cG9ydHtzIGFzIHVzZVdpbmRvd0V2ZW50fTtcbiJdLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJhIiwidXNlTGF0ZXN0VmFsdWUiLCJmIiwicyIsInQiLCJlIiwibyIsIm4iLCJpIiwiciIsImQiLCJjdXJyZW50Iiwid2luZG93IiwiYWRkRXZlbnRMaXN0ZW5lciIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJ1c2VXaW5kb3dFdmVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-window-event.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/close-provider.js":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/internal/close-provider.js ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ CloseProvider: function() { return /* binding */ u; },\n/* harmony export */ useClose: function() { return /* binding */ l; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\nlet e = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(()=>{});\nfunction l() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(e);\n}\nfunction u(param) {\n let { value: o, children: t } = param;\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(e.Provider, {\n value: o\n }, t);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL2Nsb3NlLXByb3ZpZGVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF5RDtBQUFBLElBQUlLLGtCQUFFSCxvREFBQ0EsQ0FBQyxLQUFLO0FBQUcsU0FBU0k7SUFBSSxPQUFPRixpREFBQ0EsQ0FBQ0M7QUFBRTtBQUFDLFNBQVNFLEVBQUUsS0FBb0I7UUFBcEIsRUFBQ0MsT0FBTUMsQ0FBQyxFQUFDQyxVQUFTQyxDQUFDLEVBQUMsR0FBcEI7SUFBc0IscUJBQU9YLGdEQUFlLENBQUNLLEVBQUVRLFFBQVEsRUFBQztRQUFDTCxPQUFNQztJQUFDLEdBQUVFO0FBQUU7QUFBMEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaW50ZXJuYWwvY2xvc2UtcHJvdmlkZXIuanM/N2E4ZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcix7Y3JlYXRlQ29udGV4dCBhcyBuLHVzZUNvbnRleHQgYXMgaX1mcm9tXCJyZWFjdFwiO2xldCBlPW4oKCk9Pnt9KTtmdW5jdGlvbiBsKCl7cmV0dXJuIGkoZSl9ZnVuY3Rpb24gdSh7dmFsdWU6byxjaGlsZHJlbjp0fSl7cmV0dXJuIHIuY3JlYXRlRWxlbWVudChlLlByb3ZpZGVyLHt2YWx1ZTpvfSx0KX1leHBvcnR7dSBhcyBDbG9zZVByb3ZpZGVyLGwgYXMgdXNlQ2xvc2V9O1xuIl0sIm5hbWVzIjpbInIiLCJjcmVhdGVDb250ZXh0IiwibiIsInVzZUNvbnRleHQiLCJpIiwiZSIsImwiLCJ1IiwidmFsdWUiLCJvIiwiY2hpbGRyZW4iLCJ0IiwiY3JlYXRlRWxlbWVudCIsIlByb3ZpZGVyIiwiQ2xvc2VQcm92aWRlciIsInVzZUNsb3NlIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/close-provider.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/floating.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/internal/floating.js ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FloatingProvider: function() { return /* binding */ ve; },\n/* harmony export */ useFloatingPanel: function() { return /* binding */ Re; },\n/* harmony export */ useFloatingPanelProps: function() { return /* binding */ be; },\n/* harmony export */ useFloatingReference: function() { return /* binding */ ye; },\n/* harmony export */ useFloatingReferenceProps: function() { return /* binding */ Fe; },\n/* harmony export */ useResolvedAnchor: function() { return /* binding */ xe; }\n/* harmony export */ });\n/* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @floating-ui/react */ \"(app-pages-browser)/./node_modules/@floating-ui/react/dist/floating-ui.react.mjs\");\n/* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @floating-ui/react */ \"(app-pages-browser)/./node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs\");\n/* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @floating-ui/react */ \"(app-pages-browser)/./node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _hooks_use_disposables_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../hooks/use-disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-disposables.js\");\n/* harmony import */ var _hooks_use_event_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../hooks/use-event.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-event.js\");\n/* harmony import */ var _hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../hooks/use-iso-morphic-effect.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js\");\n\n\n\n\n\n\nlet y = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({\n styles: void 0,\n setReference: ()=>{},\n setFloating: ()=>{},\n getReferenceProps: ()=>({}),\n getFloatingProps: ()=>({}),\n slot: {}\n});\ny.displayName = \"FloatingContext\";\nlet S = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nS.displayName = \"PlacementContext\";\nfunction xe(e) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>e ? typeof e == \"string\" ? {\n to: e\n } : e : null, [\n e\n ]);\n}\nfunction ye() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y).setReference;\n}\nfunction Fe() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y).getReferenceProps;\n}\n_c = Fe;\nfunction be() {\n let { getFloatingProps: e, slot: t } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y);\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function() {\n for(var _len = arguments.length, n = new Array(_len), _key = 0; _key < _len; _key++){\n n[_key] = arguments[_key];\n }\n return Object.assign({}, e(...n), {\n \"data-anchor\": t.anchor\n });\n }, [\n e,\n t\n ]);\n}\nfunction Re() {\n let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;\n e === !1 && (e = null), typeof e == \"string\" && (e = {\n to: e\n });\n let t = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(S), n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>e, [\n JSON.stringify(e, typeof HTMLElement != \"undefined\" ? (a, r)=>r instanceof HTMLElement ? r.outerHTML : r : void 0)\n ]);\n (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n t == null || t(n != null ? n : null);\n }, [\n t,\n n\n ]);\n let l = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(y);\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>[\n l.setFloating,\n e ? l.styles : {}\n ], [\n l.setFloating,\n e,\n l.styles\n ]);\n}\n_c1 = Re;\nlet q = 4;\nfunction ve(param) {\n let { children: e, enabled: t = !0 } = param;\n let [n, l] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null), [a, r] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0), c = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null), [u, i] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null);\n pe(u);\n let o = t && n !== null && u !== null, { to: F = \"bottom\", gap: C = 0, offset: M = 0, padding: p = 0, inner: P } = ce(n, u), [s, f = \"center\"] = F.split(\" \");\n (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n o && r(0);\n }, [\n o\n ]);\n let { refs: b, floatingStyles: $, context: g } = (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_2__.useFloating)({\n open: o,\n placement: s === \"selection\" ? f === \"center\" ? \"bottom\" : `bottom-${f}` : f === \"center\" ? `${s}` : `${s}-${f}`,\n strategy: \"absolute\",\n transform: !1,\n middleware: [\n (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_3__.offset)({\n mainAxis: s === \"selection\" ? 0 : C,\n crossAxis: M\n }),\n (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_3__.shift)({\n padding: p\n }),\n s !== \"selection\" && (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_3__.flip)({\n padding: p\n }),\n s === \"selection\" && P ? (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_2__.inner)({\n ...P,\n padding: p,\n overflowRef: c,\n offset: a,\n minItemsVisible: q,\n referenceOverflowThreshold: p,\n onFallbackChange (h) {\n var W, k;\n if (!h) return;\n let d = g.elements.floating;\n if (!d) return;\n let T = parseFloat(getComputedStyle(d).scrollPaddingBottom) || 0, w = Math.min(q, d.childElementCount), B = 0, O = 0;\n for (let m of (k = (W = g.elements.floating) == null ? void 0 : W.childNodes) != null ? k : [])if (m instanceof HTMLElement) {\n let x = m.offsetTop, N = x + m.clientHeight + T, H = d.scrollTop, U = H + d.clientHeight;\n if (x >= H && N <= U) w--;\n else {\n O = Math.max(0, Math.min(N, U) - Math.max(x, H)), B = m.clientHeight;\n break;\n }\n }\n w >= 1 && r((m)=>{\n let x = B * w - O + T;\n return m >= x ? m : x;\n });\n }\n }) : null,\n (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_3__.size)({\n padding: p,\n apply (param) {\n let { availableWidth: h, availableHeight: d, elements: T } = param;\n Object.assign(T.floating.style, {\n overflow: \"auto\",\n maxWidth: `${h}px`,\n maxHeight: `min(var(--anchor-max-height, 100vh), ${d}px)`\n });\n }\n })\n ].filter(Boolean),\n whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_4__.autoUpdate\n }), [I = s, V = f] = g.placement.split(\"-\");\n s === \"selection\" && (I = \"selection\");\n let G = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n anchor: [\n I,\n V\n ].filter(Boolean).join(\" \")\n }), [\n I,\n V\n ]), K = (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_2__.useInnerOffset)(g, {\n overflowRef: c,\n onChange: r\n }), { getReferenceProps: Q, getFloatingProps: X } = (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_2__.useInteractions)([\n K\n ]), Y = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_5__.useEvent)((h)=>{\n i(h), b.setFloating(h);\n });\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(S.Provider, {\n value: l\n }, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(y.Provider, {\n value: {\n setFloating: Y,\n setReference: b.setReference,\n styles: $,\n getReferenceProps: Q,\n getFloatingProps: X,\n slot: G\n }\n }, e));\n}\nfunction pe(e) {\n (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n if (!e) return;\n let t = new MutationObserver(()=>{\n let n = e.style.maxHeight;\n parseFloat(n) !== parseInt(n) && (e.style.maxHeight = `${Math.ceil(parseFloat(n))}px`);\n });\n return t.observe(e, {\n attributes: !0,\n attributeFilter: [\n \"style\"\n ]\n }), ()=>{\n t.disconnect();\n };\n }, [\n e\n ]);\n}\nfunction ce(e, t) {\n var r, c, u;\n let n = L((r = e == null ? void 0 : e.gap) != null ? r : \"var(--anchor-gap, 0)\", t), l = L((c = e == null ? void 0 : e.offset) != null ? c : \"var(--anchor-offset, 0)\", t), a = L((u = e == null ? void 0 : e.padding) != null ? u : \"var(--anchor-padding, 0)\", t);\n return {\n ...e,\n gap: n,\n offset: l,\n padding: a\n };\n}\nfunction L(e, t) {\n let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : void 0;\n let l = (0,_hooks_use_disposables_js__WEBPACK_IMPORTED_MODULE_6__.useDisposables)(), a = (0,_hooks_use_event_js__WEBPACK_IMPORTED_MODULE_5__.useEvent)((i, o)=>{\n if (i == null) return [\n n,\n null\n ];\n if (typeof i == \"number\") return [\n i,\n null\n ];\n if (typeof i == \"string\") {\n if (!o) return [\n n,\n null\n ];\n let F = J(i, o);\n return [\n F,\n (C)=>{\n let M = D(i);\n {\n let p = M.map((P)=>window.getComputedStyle(o).getPropertyValue(P));\n l.requestAnimationFrame(function P() {\n l.nextFrame(P);\n let s = !1;\n for (let [b, $] of M.entries()){\n let g = window.getComputedStyle(o).getPropertyValue($);\n if (p[b] !== g) {\n p[b] = g, s = !0;\n break;\n }\n }\n if (!s) return;\n let f = J(i, o);\n F !== f && (C(f), F = f);\n });\n }\n return l.dispose;\n }\n ];\n }\n return [\n n,\n null\n ];\n }), r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>a(e, t)[0], [\n e,\n t\n ]), [c = r, u] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();\n return (0,_hooks_use_iso_morphic_effect_js__WEBPACK_IMPORTED_MODULE_1__.useIsoMorphicEffect)(()=>{\n let [i, o] = a(e, t);\n if (u(i), !!o) return o(u);\n }, [\n e,\n t\n ]), c;\n}\n_c2 = L;\nfunction D(e) {\n let t = /var\\((.*)\\)/.exec(e);\n if (t) {\n let n = t[1].indexOf(\",\");\n if (n === -1) return [\n t[1]\n ];\n let l = t[1].slice(0, n).trim(), a = t[1].slice(n + 1).trim();\n return a ? [\n l,\n ...D(a)\n ] : [\n l\n ];\n }\n return [];\n}\n_c3 = D;\nfunction J(e, t) {\n let n = document.createElement(\"div\");\n t.appendChild(n), n.style.setProperty(\"margin-top\", \"0px\", \"important\"), n.style.setProperty(\"margin-top\", e, \"important\");\n let l = parseFloat(window.getComputedStyle(n).marginTop) || 0;\n return t.removeChild(n), l;\n}\n_c4 = J;\n\nvar _c, _c1, _c2, _c3, _c4;\n$RefreshReg$(_c, \"Fe\");\n$RefreshReg$(_c1, \"Re\");\n$RefreshReg$(_c2, \"L\");\n$RefreshReg$(_c3, \"D\");\n$RefreshReg$(_c4, \"J\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL2Zsb2F0aW5nLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBd0s7QUFBd0I7QUFBZ0g7QUFBOEQ7QUFBaUQ7QUFBeUU7QUFBQSxJQUFJcUMsa0JBQUVqQixvREFBQ0EsQ0FBQztJQUFDa0IsUUFBTyxLQUFLO0lBQUVDLGNBQWEsS0FBSztJQUFFQyxhQUFZLEtBQUs7SUFBRUMsbUJBQWtCLElBQUssRUFBQztJQUFHQyxrQkFBaUIsSUFBSyxFQUFDO0lBQUdDLE1BQUssQ0FBQztBQUFDO0FBQUdOLEVBQUVPLFdBQVcsR0FBQztBQUFrQixJQUFJQyxrQkFBRXpCLG9EQUFDQSxDQUFDO0FBQU15QixFQUFFRCxXQUFXLEdBQUM7QUFBbUIsU0FBU0UsR0FBR0MsQ0FBQztJQUFFLE9BQU9yQiw4Q0FBQ0EsQ0FBQyxJQUFJcUIsSUFBRSxPQUFPQSxLQUFHLFdBQVM7WUFBQ0MsSUFBR0Q7UUFBQyxJQUFFQSxJQUFFLE1BQUs7UUFBQ0E7S0FBRTtBQUFDO0FBQUMsU0FBU0U7SUFBSyxPQUFPekIsaURBQUNBLENBQUNhLEdBQUdFLFlBQVk7QUFBQTtBQUFDLFNBQVNXO0lBQUssT0FBTzFCLGlEQUFDQSxDQUFDYSxHQUFHSSxpQkFBaUI7QUFBQTtLQUFsQ1M7QUFBbUMsU0FBU0M7SUFBSyxJQUFHLEVBQUNULGtCQUFpQkssQ0FBQyxFQUFDSixNQUFLUyxDQUFDLEVBQUMsR0FBQzVCLGlEQUFDQSxDQUFDYTtJQUFHLE9BQU9mLGtEQUFFQSxDQUFDO3lDQUFJK0I7WUFBQUE7O2VBQUlDLE9BQU9DLE1BQU0sQ0FBQyxDQUFDLEdBQUVSLEtBQUtNLElBQUc7WUFBQyxlQUFjRCxFQUFFSSxNQUFNO1FBQUE7T0FBRztRQUFDVDtRQUFFSztLQUFFO0FBQUM7QUFBQyxTQUFTSztRQUFHVixJQUFBQSxpRUFBRTtJQUFNQSxNQUFJLENBQUMsS0FBSUEsQ0FB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RS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL2Zsb2F0aW5nLmpzPzg5ZjUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e2F1dG9VcGRhdGUgYXMgWixmbGlwIGFzIGVlLGlubmVyIGFzIHRlLG9mZnNldCBhcyBuZSxzaGlmdCBhcyBsZSxzaXplIGFzIHJlLHVzZUZsb2F0aW5nIGFzIG9lLHVzZUlubmVyT2Zmc2V0IGFzIGllLHVzZUludGVyYWN0aW9ucyBhcyBzZX1mcm9tXCJAZmxvYXRpbmctdWkvcmVhY3RcIjtpbXBvcnQqYXMgaiBmcm9tXCJyZWFjdFwiO2ltcG9ydHtjcmVhdGVDb250ZXh0IGFzIF8sdXNlQ2FsbGJhY2sgYXMgYWUsdXNlQ29udGV4dCBhcyBSLHVzZU1lbW8gYXMgdix1c2VSZWYgYXMgdWUsdXNlU3RhdGUgYXMgRX1mcm9tXCJyZWFjdFwiO2ltcG9ydHt1c2VEaXNwb3NhYmxlcyBhcyBmZX1mcm9tJy4uL2hvb2tzL3VzZS1kaXNwb3NhYmxlcy5qcyc7aW1wb3J0e3VzZUV2ZW50IGFzIHp9ZnJvbScuLi9ob29rcy91c2UtZXZlbnQuanMnO2ltcG9ydHt1c2VJc29Nb3JwaGljRWZmZWN0IGFzIEF9ZnJvbScuLi9ob29rcy91c2UtaXNvLW1vcnBoaWMtZWZmZWN0LmpzJztsZXQgeT1fKHtzdHlsZXM6dm9pZCAwLHNldFJlZmVyZW5jZTooKT0+e30sc2V0RmxvYXRpbmc6KCk9Pnt9LGdldFJlZmVyZW5jZVByb3BzOigpPT4oe30pLGdldEZsb2F0aW5nUHJvcHM6KCk9Pih7fSksc2xvdDp7fX0pO3kuZGlzcGxheU5hbWU9XCJGbG9hdGluZ0NvbnRleHRcIjtsZXQgUz1fKG51bGwpO1MuZGlzcGxheU5hbWU9XCJQbGFjZW1lbnRDb250ZXh0XCI7ZnVuY3Rpb24geGUoZSl7cmV0dXJuIHYoKCk9PmU/dHlwZW9mIGU9PVwic3RyaW5nXCI/e3RvOmV9OmU6bnVsbCxbZV0pfWZ1bmN0aW9uIHllKCl7cmV0dXJuIFIoeSkuc2V0UmVmZXJlbmNlfWZ1bmN0aW9uIEZlKCl7cmV0dXJuIFIoeSkuZ2V0UmVmZXJlbmNlUHJvcHN9ZnVuY3Rpb24gYmUoKXtsZXR7Z2V0RmxvYXRpbmdQcm9wczplLHNsb3Q6dH09Uih5KTtyZXR1cm4gYWUoKC4uLm4pPT5PYmplY3QuYXNzaWduKHt9LGUoLi4ubikse1wiZGF0YS1hbmNob3JcIjp0LmFuY2hvcn0pLFtlLHRdKX1mdW5jdGlvbiBSZShlPW51bGwpe2U9PT0hMSYmKGU9bnVsbCksdHlwZW9mIGU9PVwic3RyaW5nXCImJihlPXt0bzplfSk7bGV0IHQ9UihTKSxuPXYoKCk9PmUsW0pTT04uc3RyaW5naWZ5KGUsdHlwZW9mIEhUTUxFbGVtZW50IT1cInVuZGVmaW5lZFwiPyhhLHIpPT5yIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/ci5vdXRlckhUTUw6cjp2b2lkIDApXSk7QSgoKT0+e3Q9PW51bGx8fHQobiE9bnVsbD9uOm51bGwpfSxbdCxuXSk7bGV0IGw9Uih5KTtyZXR1cm4gdigoKT0+W2wuc2V0RmxvYXRpbmcsZT9sLnN0eWxlczp7fV0sW2wuc2V0RmxvYXRpbmcsZSxsLnN0eWxlc10pfWxldCBxPTQ7ZnVuY3Rpb24gdmUoe2NoaWxkcmVuOmUsZW5hYmxlZDp0PSEwfSl7bGV0W24sbF09RShudWxsKSxbYSxyXT1FKDApLGM9dWUobnVsbCksW3UsaV09RShudWxsKTtwZSh1KTtsZXQgbz10JiZuIT09bnVsbCYmdSE9PW51bGwse3RvOkY9XCJib3R0b21cIixnYXA6Qz0wLG9mZnNldDpNPTAscGFkZGluZzpwPTAsaW5uZXI6UH09Y2Uobix1KSxbcyxmPVwiY2VudGVyXCJdPUYuc3BsaXQoXCIgXCIpO0EoKCk9PntvJiZyKDApfSxbb10pO2xldHtyZWZzOmIsZmxvYXRpbmdTdHlsZXM6JCxjb250ZXh0Omd9PW9lKHtvcGVuOm8scGxhY2VtZW50OnM9PT1cInNlbGVjdGlvblwiP2Y9PT1cImNlbnRlclwiP1wiYm90dG9tXCI6YGJvdHRvbS0ke2Z9YDpmPT09XCJjZW50ZXJcIj9gJHtzfWA6YCR7c30tJHtmfWAsc3RyYXRlZ3k6XCJhYnNvbHV0ZVwiLHRyYW5zZm9ybTohMSxtaWRkbGV3YXJlOltuZSh7bWFpbkF4aXM6cz09PVwic2VsZWN0aW9uXCI/MDpDLGNyb3NzQXhpczpNfSksbGUoe3BhZGRpbmc6cH0pLHMhPT1cInNlbGVjdGlvblwiJiZlZSh7cGFkZGluZzpwfSkscz09PVwic2VsZWN0aW9uXCImJlA/dGUoey4uLlAscGFkZGluZzpwLG92ZXJmbG93UmVmOmMsb2Zmc2V0OmEsbWluSXRlbXNWaXNpYmxlOnEscmVmZXJlbmNlT3ZlcmZsb3dUaHJlc2hvbGQ6cCxvbkZhbGxiYWNrQ2hhbmdlKGgpe3ZhciBXLGs7aWYoIWgpcmV0dXJuO2xldCBkPWcuZWxlbWVudHMuZmxvYXRpbmc7aWYoIWQpcmV0dXJuO2xldCBUPXBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShkKS5zY3JvbGxQYWRkaW5nQm90dG9tKXx8MCx3PU1hdGgubWluKHEsZC5jaGlsZEVsZW1lbnRDb3VudCksQj0wLE89MDtmb3IobGV0IG0gb2Yoaz0oVz1nLmVsZW1lbnRzLmZsb2F0aW5nKT09bnVsbD92b2lkIDA6Vy5jaGlsZE5vZGVzKSE9bnVsbD9rOltdKWlmKG0gaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl7bGV0IHg9bS5vZmZzZXRUb3AsTj14K20uY2xpZW50SGVpZ2h0K1QsSD1kLnNjcm9sbFRvcCxVPUgrZC5jbGllbnRIZWlnaHQ7aWYoeD49SCYmTjw9VSl3LS07ZWxzZXtPPU1hdGgubWF4KDAsTWF0aC5taW4oTixVKS1NYXRoLm1heCh4LEgpKSxCPW0uY2xpZW50SGVpZ2h0O2JyZWFrfX13Pj0xJiZyKG09PntsZXQgeD1CKnctTytUO3JldHVybiBtPj14P206eH0pfX0pOm51bGwscmUoe3BhZGRpbmc6cCxhcHBseSh7YXZhaWxhYmxlV2lkdGg6aCxhdmFpbGFibGVIZWlnaHQ6ZCxlbGVtZW50czpUfSl7T2JqZWN0LmFzc2lnbihULmZsb2F0aW5nLnN0eWxlLHtvdmVyZmxvdzpcImF1dG9cIixtYXhXaWR0aDpgJHtofXB4YCxtYXhIZWlnaHQ6YG1pbih2YXIoLS1hbmNob3ItbWF4LWhlaWdodCwgMTAwdmgpLCAke2R9cHgpYH0pfX0pXS5maWx0ZXIoQm9vbGVhbiksd2hpbGVFbGVtZW50c01vdW50ZWQ6Wn0pLFtJPXMsVj1mXT1nLnBsYWNlbWVudC5zcGxpdChcIi1cIik7cz09PVwic2VsZWN0aW9uXCImJihJPVwic2VsZWN0aW9uXCIpO2xldCBHPXYoKCk9Pih7YW5jaG9yOltJLFZdLmZpbHRlcihCb29sZWFuKS5qb2luKFwiIFwiKX0pLFtJLFZdKSxLPWllKGcse292ZXJmbG93UmVmOmMsb25DaGFuZ2U6cn0pLHtnZXRSZWZlcmVuY2VQcm9wczpRLGdldEZsb2F0aW5nUHJvcHM6WH09c2UoW0tdKSxZPXooaD0+e2koaCksYi5zZXRGbG9hdGluZyhoKX0pO3JldHVybiBqLmNyZWF0ZUVsZW1lbnQoUy5Qcm92aWRlcix7dmFsdWU6bH0sai5jcmVhdGVFbGVtZW50KHkuUHJvdmlkZXIse3ZhbHVlOntzZXRGbG9hdGluZzpZLHNldFJlZmVyZW5jZTpiLnNldFJlZmVyZW5jZSxzdHlsZXM6JCxnZXRSZWZlcmVuY2VQcm9wczpRLGdldEZsb2F0aW5nUHJvcHM6WCxzbG90Okd9fSxlKSl9ZnVuY3Rpb24gcGUoZSl7QSgoKT0+e2lmKCFlKXJldHVybjtsZXQgdD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKT0+e2xldCBuPWUuc3R5bGUubWF4SGVpZ2h0O3BhcnNlRmxvYXQobikhPT1wYXJzZUludChuKSYmKGUuc3R5bGUubWF4SGVpZ2h0PWAke01hdGguY2VpbChwYXJzZUZsb2F0KG4pKX1weGApfSk7cmV0dXJuIHQub2JzZXJ2ZShlLHthdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbXCJzdHlsZVwiXX0pLCgpPT57dC5kaXNjb25uZWN0KCl9fSxbZV0pfWZ1bmN0aW9uIGNlKGUsdCl7dmFyIHIsYyx1O2xldCBuPUwoKHI9ZT09bnVsbD92b2lkIDA6ZS5nYXApIT1udWxsP3I6XCJ2YXIoLS1hbmNob3ItZ2FwLCAwKVwiLHQpLGw9TCgoYz1lPT1udWxsP3ZvaWQgMDplLm9mZnNldCkhPW51bGw/YzpcInZhcigtLWFuY2hvci1vZmZzZXQsIDApXCIsdCksYT1MKCh1PWU9PW51bGw/dm9pZCAwOmUucGFkZGluZykhPW51bGw/dTpcInZhcigtLWFuY2hvci1wYWRkaW5nLCAwKVwiLHQpO3JldHVybnsuLi5lLGdhcDpuLG9mZnNldDpsLHBhZGRpbmc6YX19ZnVuY3Rpb24gTChlLHQsbj12b2lkIDApe2xldCBsPWZlKCksYT16KChpLG8pPT57aWYoaT09bnVsbClyZXR1cm5bbixudWxsXTtpZih0eXBlb2YgaT09XCJudW1iZXJcIilyZXR1cm5baSxudWxsXTtpZih0eXBlb2YgaT09XCJzdHJpbmdcIil7aWYoIW8pcmV0dXJuW24sbnVsbF07bGV0IEY9SihpLG8pO3JldHVybltGLEM9PntsZXQgTT1EKGkpO3tsZXQgcD1NLm1hcChQPT53aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShvKS5nZXRQcm9wZXJ0eVZhbHVlKFApKTtsLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiBQKCl7bC5uZXh0RnJhbWUoUCk7bGV0IHM9ITE7Zm9yKGxldFtiLCRdb2YgTS5lbnRyaWVzKCkpe2xldCBnPXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKG8pLmdldFByb3BlcnR5VmFsdWUoJCk7aWYocFtiXSE9PWcpe3BbYl09ZyxzPSEwO2JyZWFrfX1pZighcylyZXR1cm47bGV0IGY9SihpLG8pO0YhPT1mJiYoQyhmKSxGPWYpfSl9cmV0dXJuIGwuZGlzcG9zZX1dfXJldHVybltuLG51bGxdfSkscj12KCgpPT5hKGUsdClbMF0sW2UsdF0pLFtjPXIsdV09RSgpO3JldHVybiBBKCgpPT57bGV0W2ksb109YShlLHQpO2lmKHUoaSksISFvKXJldHVybiBvKHUpfSxbZSx0XSksY31mdW5jdGlvbiBEKGUpe2xldCB0PS92YXJcXCgoLiopXFwpLy5leGVjKGUpO2lmKHQpe2xldCBuPXRbMV0uaW5kZXhPZihcIixcIik7aWYobj09PS0xKXJldHVyblt0WzFdXTtsZXQgbD10WzFdLnNsaWNlKDAsbikudHJpbSgpLGE9dFsxXS5zbGljZShuKzEpLnRyaW0oKTtyZXR1cm4gYT9bbCwuLi5EKGEpXTpbbF19cmV0dXJuW119ZnVuY3Rpb24gSihlLHQpe2xldCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7dC5hcHBlbmRDaGlsZChuKSxuLnN0eWxlLnNldFByb3BlcnR5KFwibWFyZ2luLXRvcFwiLFwiMHB4XCIsXCJpbXBvcnRhbnRcIiksbi5zdHlsZS5zZXRQcm9wZXJ0eShcIm1hcmdpbi10b3BcIixlLFwiaW1wb3J0YW50XCIpO2xldCBsPXBhcnNlRmxvYXQod2luZG93LmdldENvbXB1dGVkU3R5bGUobikubWFyZ2luVG9wKXx8MDtyZXR1cm4gdC5yZW1vdmVDaGlsZChuKSxsfWV4cG9ydHt2ZSBhcyBGbG9hdGluZ1Byb3ZpZGVyLFJlIGFzIHVzZUZsb2F0aW5nUGFuZWwsYmUgYXMgdXNlRmxvYXRpbmdQYW5lbFByb3BzLHllIGFzIHVzZUZsb2F0aW5nUmVmZXJlbmNlLEZlIGFzIHVzZUZsb2F0aW5nUmVmZXJlbmNlUHJvcHMseGUgYXMgdXNlUmVzb2x2ZWRBbmNob3J9O1xuIl0sIm5hbWVzIjpbImF1dG9VcGRhdGUiLCJaIiwiZmxpcCIsImVlIiwiaW5uZXIiLCJ0ZSIsIm9mZnNldCIsIm5lIiwic2hpZnQiLCJsZSIsInNpemUiLCJyZSIsInVzZUZsb2F0aW5nIiwib2UiLCJ1c2VJbm5lck9mZnNldCIsImllIiwidXNlSW50ZXJhY3Rpb25zIiwic2UiLCJqIiwiY3JlYXRlQ29udGV4dCIsIl8iLCJ1c2VDYWxsYmFjayIsImFlIiwidXNlQ29udGV4dCIsIlIiLCJ1c2VNZW1vIiwidiIsInVzZVJlZiIsInVlIiwidXNlU3RhdGUiLCJFIiwidXNlRGlzcG9zYWJsZXMiLCJmZSIsInVzZUV2ZW50IiwieiIsInVzZUlzb01vcnBoaWNFZmZlY3QiLCJBIiwieSIsInN0eWxlcyIsInNldFJlZmVyZW5jZSIsInNldEZsb2F0aW5nIiwiZ2V0UmVmZXJlbmNlUHJvcHMiLCJnZXRGbG9hdGluZ1Byb3BzIiwic2xvdCIsImRpc3BsYXlOYW1lIiwiUyIsInhlIiwiZSIsInRvIiwieWUiLCJGZSIsImJlIiwidCIsIm4iLCJPYmplY3QiLCJhc3NpZ24iLCJhbmNob3IiLCJSZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJIVE1MRWxlbWVudCIsImEiLCJyIiwib3V0ZXJIVE1MIiwibCIsInEiLCJ2ZSIsImNoaWxkcmVuIiwiZW5hYmxlZCIsImMiLCJ1IiwiaSIsInBlIiwibyIsIkYiLCJnYXAiLCJDIiwiTSIsInBhZGRpbmciLCJwIiwiUCIsImNlIiwicyIsImYiLCJzcGxpdCIsInJlZnMiLCJiIiwiZmxvYXRpbmdTdHlsZXMiLCIkIiwiY29udGV4dCIsImciLCJvcGVuIiwicGxhY2VtZW50Iiwic3RyYXRlZ3kiLCJ0cmFuc2Zvcm0iLCJtaWRkbGV3YXJlIiwibWFpbkF4aXMiLCJjcm9zc0F4aXMiLCJvdmVyZmxvd1JlZiIsIm1pbkl0ZW1zVmlzaWJsZSIsInJlZmVyZW5jZU92ZXJmbG93VGhyZXNob2xkIiwib25GYWxsYmFja0NoYW5nZSIsImgiLCJXIiwiayIsImQiLCJlbGVtZW50cyIsImZsb2F0aW5nIiwiVCIsInBhcnNlRmxvYXQiLCJnZXRDb21wdXRlZFN0eWxlIiwic2Nyb2xsUGFkZGluZ0JvdHRvbSIsInciLCJNYXRoIiwibWluIiwiY2hpbGRFbGVtZW50Q291bnQiLCJCIiwiTyIsIm0iLCJjaGlsZE5vZGVzIiwieCIsIm9mZnNldFRvcCIsIk4iLCJjbGllbnRIZWlnaHQiLCJIIiwic2Nyb2xsVG9wIiwiVSIsIm1heCIsImFwcGx5IiwiYXZhaWxhYmxlV2lkdGgiLCJhdmFpbGFibGVIZWlnaHQiLCJzdHlsZSIsIm92ZXJmbG93IiwibWF4V2lkdGgiLCJtYXhIZWlnaHQiLCJmaWx0ZXIiLCJCb29sZWFuIiwid2hpbGVFbGVtZW50c01vdW50ZWQiLCJJIiwiViIsIkciLCJqb2luIiwiSyIsIm9uQ2hhbmdlIiwiUSIsIlgiLCJZIiwiY3JlYXRlRWxlbWVudCIsIlByb3ZpZGVyIiwidmFsdWUiLCJNdXRhdGlvbk9ic2VydmVyIiwicGFyc2VJbnQiLCJjZWlsIiwib2JzZXJ2ZSIsImF0dHJpYnV0ZXMiLCJhdHRyaWJ1dGVGaWx0ZXIiLCJkaXNjb25uZWN0IiwiTCIsIkoiLCJEIiwibWFwIiwid2luZG93IiwiZ2V0UHJvcGVydHlWYWx1ZSIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIm5leHRGcmFtZSIsImVudHJpZXMiLCJkaXNwb3NlIiwiZXhlYyIsImluZGV4T2YiLCJzbGljZSIsInRyaW0iLCJkb2N1bWVudCIsImFwcGVuZENoaWxkIiwic2V0UHJvcGVydHkiLCJtYXJnaW5Ub3AiLCJyZW1vdmVDaGlsZCIsIkZsb2F0aW5nUHJvdmlkZXIiLCJ1c2VGbG9hdGluZ1BhbmVsIiwidXNlRmxvYXRpbmdQYW5lbFByb3BzIiwidXNlRmxvYXRpbmdSZWZlcmVuY2UiLCJ1c2VGbG9hdGluZ1JlZmVyZW5jZVByb3BzIiwidXNlUmVzb2x2ZWRBbmNob3IiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/floating.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/hidden.js":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/internal/hidden.js ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Hidden: function() { return /* binding */ T; },\n/* harmony export */ HiddenFeatures: function() { return /* binding */ s; }\n/* harmony export */ });\n/* harmony import */ var _utils_render_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/render.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/render.js\");\n\nlet a = \"div\";\nvar s = ((e)=>(e[e.None = 1] = \"None\", e[e.Focusable = 2] = \"Focusable\", e[e.Hidden = 4] = \"Hidden\", e))(s || {});\nfunction l(t, r) {\n var n;\n let { features: d = 1, ...e } = t, o = {\n ref: r,\n \"aria-hidden\": (d & 2) === 2 ? !0 : (n = e[\"aria-hidden\"]) != null ? n : void 0,\n hidden: (d & 4) === 4 ? !0 : void 0,\n style: {\n position: \"fixed\",\n top: 1,\n left: 1,\n width: 1,\n height: 0,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n borderWidth: \"0\",\n ...(d & 4) === 4 && (d & 2) !== 2 && {\n display: \"none\"\n }\n }\n };\n return (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_0__.render)({\n ourProps: o,\n theirProps: e,\n slot: {},\n defaultTag: a,\n name: \"Hidden\"\n });\n}\nlet T = (0,_utils_render_js__WEBPACK_IMPORTED_MODULE_0__.forwardRefWithAs)(l);\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL2hpZGRlbi5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0U7QUFBQSxJQUFJSSxJQUFFO0FBQU0sSUFBSUMsSUFBRSxDQUFDQyxDQUFBQSxJQUFJQSxDQUFBQSxDQUFDLENBQUNBLEVBQUVDLElBQUksR0FBQyxFQUFFLEdBQUMsUUFBT0QsQ0FBQyxDQUFDQSxFQUFFRSxTQUFTLEdBQUMsRUFBRSxHQUFDLGFBQVlGLENBQUMsQ0FBQ0EsRUFBRUcsTUFBTSxHQUFDLEVBQUUsR0FBQyxVQUFTSCxDQUFBQSxDQUFDLEVBQUdELEtBQUcsQ0FBQztBQUFHLFNBQVNLLEVBQUVDLENBQUMsRUFBQ0MsQ0FBQztJQUFFLElBQUlDO0lBQUUsSUFBRyxFQUFDQyxVQUFTQyxJQUFFLENBQUMsRUFBQyxHQUFHVCxHQUFFLEdBQUNLLEdBQUVLLElBQUU7UUFBQ0MsS0FBSUw7UUFBRSxlQUFjLENBQUNHLElBQUUsT0FBSyxJQUFFLENBQUMsSUFBRSxDQUFDRixJQUFFUCxDQUFDLENBQUMsY0FBYyxLQUFHLE9BQUtPLElBQUUsS0FBSztRQUFFSyxRQUFPLENBQUNILElBQUUsT0FBSyxJQUFFLENBQUMsSUFBRSxLQUFLO1FBQUVJLE9BQU07WUFBQ0MsVUFBUztZQUFRQyxLQUFJO1lBQUVDLE1BQUs7WUFBRUMsT0FBTTtZQUFFQyxRQUFPO1lBQUVDLFNBQVE7WUFBRUMsUUFBTyxDQUFDO1lBQUVDLFVBQVM7WUFBU0MsTUFBSztZQUFtQkMsWUFBVztZQUFTQyxhQUFZO1lBQUksR0FBRyxDQUFDZixJQUFFLE9BQUssS0FBRyxDQUFDQSxJQUFFLE9BQUssS0FBRztnQkFBQ2dCLFNBQVE7WUFBTSxDQUFDO1FBQUE7SUFBQztJQUFFLE9BQU81Qix3REFBQ0EsQ0FBQztRQUFDNkIsVUFBU2hCO1FBQUVpQixZQUFXM0I7UUFBRTRCLE1BQUssQ0FBQztRQUFFQyxZQUFXL0I7UUFBRWdDLE1BQUs7SUFBUTtBQUFFO0FBQUMsSUFBSUMsSUFBRXBDLGtFQUFDQSxDQUFDUztBQUEyQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC9pbnRlcm5hbC9oaWRkZW4uanM/MzBlYSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnR7Zm9yd2FyZFJlZldpdGhBcyBhcyBpLHJlbmRlciBhcyBwfWZyb20nLi4vdXRpbHMvcmVuZGVyLmpzJztsZXQgYT1cImRpdlwiO3ZhciBzPShlPT4oZVtlLk5vbmU9MV09XCJOb25lXCIsZVtlLkZvY3VzYWJsZT0yXT1cIkZvY3VzYWJsZVwiLGVbZS5IaWRkZW49NF09XCJIaWRkZW5cIixlKSkoc3x8e30pO2Z1bmN0aW9uIGwodCxyKXt2YXIgbjtsZXR7ZmVhdHVyZXM6ZD0xLC4uLmV9PXQsbz17cmVmOnIsXCJhcmlhLWhpZGRlblwiOihkJjIpPT09Mj8hMDoobj1lW1wiYXJpYS1oaWRkZW5cIl0pIT1udWxsP246dm9pZCAwLGhpZGRlbjooZCY0KT09PTQ/ITA6dm9pZCAwLHN0eWxlOntwb3NpdGlvbjpcImZpeGVkXCIsdG9wOjEsbGVmdDoxLHdpZHRoOjEsaGVpZ2h0OjAscGFkZGluZzowLG1hcmdpbjotMSxvdmVyZmxvdzpcImhpZGRlblwiLGNsaXA6XCJyZWN0KDAsIDAsIDAsIDApXCIsd2hpdGVTcGFjZTpcIm5vd3JhcFwiLGJvcmRlcldpZHRoOlwiMFwiLC4uLihkJjQpPT09NCYmKGQmMikhPT0yJiZ7ZGlzcGxheTpcIm5vbmVcIn19fTtyZXR1cm4gcCh7b3VyUHJvcHM6byx0aGVpclByb3BzOmUsc2xvdDp7fSxkZWZhdWx0VGFnOmEsbmFtZTpcIkhpZGRlblwifSl9bGV0IFQ9aShsKTtleHBvcnR7VCBhcyBIaWRkZW4scyBhcyBIaWRkZW5GZWF0dXJlc307XG4iXSwibmFtZXMiOlsiZm9yd2FyZFJlZldpdGhBcyIsImkiLCJyZW5kZXIiLCJwIiwiYSIsInMiLCJlIiwiTm9uZSIsIkZvY3VzYWJsZSIsIkhpZGRlbiIsImwiLCJ0IiwiciIsIm4iLCJmZWF0dXJlcyIsImQiLCJvIiwicmVmIiwiaGlkZGVuIiwic3R5bGUiLCJwb3NpdGlvbiIsInRvcCIsImxlZnQiLCJ3aWR0aCIsImhlaWdodCIsInBhZGRpbmciLCJtYXJnaW4iLCJvdmVyZmxvdyIsImNsaXAiLCJ3aGl0ZVNwYWNlIiwiYm9yZGVyV2lkdGgiLCJkaXNwbGF5Iiwib3VyUHJvcHMiLCJ0aGVpclByb3BzIiwic2xvdCIsImRlZmF1bHRUYWciLCJuYW1lIiwiVCIsIkhpZGRlbkZlYXR1cmVzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/hidden.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/open-closed.js":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/internal/open-closed.js ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ OpenClosedProvider: function() { return /* binding */ c; },\n/* harmony export */ ResetOpenClosedProvider: function() { return /* binding */ s; },\n/* harmony export */ State: function() { return /* binding */ i; },\n/* harmony export */ useOpenClosed: function() { return /* binding */ u; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\nlet n = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\nn.displayName = \"OpenClosedContext\";\nvar i = ((e)=>(e[e.Open = 1] = \"Open\", e[e.Closed = 2] = \"Closed\", e[e.Closing = 4] = \"Closing\", e[e.Opening = 8] = \"Opening\", e))(i || {});\nfunction u() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(n);\n}\nfunction c(param) {\n let { value: o, children: t } = param;\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(n.Provider, {\n value: o\n }, t);\n}\nfunction s(param) {\n let { children: o } = param;\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(n.Provider, {\n value: null\n }, o);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL29wZW4tY2xvc2VkLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXlEO0FBQUEsSUFBSUssa0JBQUVILG9EQUFDQSxDQUFDO0FBQU1HLEVBQUVDLFdBQVcsR0FBQztBQUFvQixJQUFJQyxJQUFFLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsSUFBSSxHQUFDLEVBQUUsR0FBQyxRQUFPRCxDQUFDLENBQUNBLEVBQUVFLE1BQU0sR0FBQyxFQUFFLEdBQUMsVUFBU0YsQ0FBQyxDQUFDQSxFQUFFRyxPQUFPLEdBQUMsRUFBRSxHQUFDLFdBQVVILENBQUMsQ0FBQ0EsRUFBRUksT0FBTyxHQUFDLEVBQUUsR0FBQyxXQUFVSixDQUFBQSxDQUFDLEVBQUdELEtBQUcsQ0FBQztBQUFHLFNBQVNNO0lBQUksT0FBT1QsaURBQUNBLENBQUNDO0FBQUU7QUFBQyxTQUFTUyxFQUFFLEtBQW9CO1FBQXBCLEVBQUNDLE9BQU1DLENBQUMsRUFBQ0MsVUFBU0MsQ0FBQyxFQUFDLEdBQXBCO0lBQXNCLHFCQUFPbEIsZ0RBQWUsQ0FBQ0ssRUFBRWUsUUFBUSxFQUFDO1FBQUNMLE9BQU1DO0lBQUMsR0FBRUU7QUFBRTtBQUFDLFNBQVNHLEVBQUUsS0FBWTtRQUFaLEVBQUNKLFVBQVNELENBQUMsRUFBQyxHQUFaO0lBQWMscUJBQU9oQixnREFBZSxDQUFDSyxFQUFFZSxRQUFRLEVBQUM7UUFBQ0wsT0FBTTtJQUFJLEdBQUVDO0FBQUU7QUFBNEYiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaW50ZXJuYWwvb3Blbi1jbG9zZWQuanM/ZGE5MSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcix7Y3JlYXRlQ29udGV4dCBhcyBsLHVzZUNvbnRleHQgYXMgZH1mcm9tXCJyZWFjdFwiO2xldCBuPWwobnVsbCk7bi5kaXNwbGF5TmFtZT1cIk9wZW5DbG9zZWRDb250ZXh0XCI7dmFyIGk9KGU9PihlW2UuT3Blbj0xXT1cIk9wZW5cIixlW2UuQ2xvc2VkPTJdPVwiQ2xvc2VkXCIsZVtlLkNsb3Npbmc9NF09XCJDbG9zaW5nXCIsZVtlLk9wZW5pbmc9OF09XCJPcGVuaW5nXCIsZSkpKGl8fHt9KTtmdW5jdGlvbiB1KCl7cmV0dXJuIGQobil9ZnVuY3Rpb24gYyh7dmFsdWU6byxjaGlsZHJlbjp0fSl7cmV0dXJuIHIuY3JlYXRlRWxlbWVudChuLlByb3ZpZGVyLHt2YWx1ZTpvfSx0KX1mdW5jdGlvbiBzKHtjaGlsZHJlbjpvfSl7cmV0dXJuIHIuY3JlYXRlRWxlbWVudChuLlByb3ZpZGVyLHt2YWx1ZTpudWxsfSxvKX1leHBvcnR7YyBhcyBPcGVuQ2xvc2VkUHJvdmlkZXIscyBhcyBSZXNldE9wZW5DbG9zZWRQcm92aWRlcixpIGFzIFN0YXRlLHUgYXMgdXNlT3BlbkNsb3NlZH07XG4iXSwibmFtZXMiOlsiciIsImNyZWF0ZUNvbnRleHQiLCJsIiwidXNlQ29udGV4dCIsImQiLCJuIiwiZGlzcGxheU5hbWUiLCJpIiwiZSIsIk9wZW4iLCJDbG9zZWQiLCJDbG9zaW5nIiwiT3BlbmluZyIsInUiLCJjIiwidmFsdWUiLCJvIiwiY2hpbGRyZW4iLCJ0IiwiY3JlYXRlRWxlbWVudCIsIlByb3ZpZGVyIiwicyIsIk9wZW5DbG9zZWRQcm92aWRlciIsIlJlc2V0T3BlbkNsb3NlZFByb3ZpZGVyIiwiU3RhdGUiLCJ1c2VPcGVuQ2xvc2VkIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/open-closed.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/portal-force-root.js":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/internal/portal-force-root.js ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ForcePortalRoot: function() { return /* binding */ l; },\n/* harmony export */ usePortalRoot: function() { return /* binding */ a; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\nlet e = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(!1);\nfunction a() {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(e);\n}\nfunction l(o) {\n return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(e.Provider, {\n value: o.force\n }, o.children);\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L2ludGVybmFsL3BvcnRhbC1mb3JjZS1yb290LmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF5RDtBQUFBLElBQUlLLGtCQUFFSCxvREFBQ0EsQ0FBQyxDQUFDO0FBQUcsU0FBU0k7SUFBSSxPQUFPRixpREFBQ0EsQ0FBQ0M7QUFBRTtBQUFDLFNBQVNFLEVBQUVDLENBQUM7SUFBRSxxQkFBT1IsZ0RBQWUsQ0FBQ0ssRUFBRUssUUFBUSxFQUFDO1FBQUNDLE9BQU1ILEVBQUVJLEtBQUs7SUFBQSxHQUFFSixFQUFFSyxRQUFRO0FBQUM7QUFBaUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvaW50ZXJuYWwvcG9ydGFsLWZvcmNlLXJvb3QuanM/YTUyMyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdCx7Y3JlYXRlQ29udGV4dCBhcyByLHVzZUNvbnRleHQgYXMgY31mcm9tXCJyZWFjdFwiO2xldCBlPXIoITEpO2Z1bmN0aW9uIGEoKXtyZXR1cm4gYyhlKX1mdW5jdGlvbiBsKG8pe3JldHVybiB0LmNyZWF0ZUVsZW1lbnQoZS5Qcm92aWRlcix7dmFsdWU6by5mb3JjZX0sby5jaGlsZHJlbil9ZXhwb3J0e2wgYXMgRm9yY2VQb3J0YWxSb290LGEgYXMgdXNlUG9ydGFsUm9vdH07XG4iXSwibmFtZXMiOlsidCIsImNyZWF0ZUNvbnRleHQiLCJyIiwidXNlQ29udGV4dCIsImMiLCJlIiwiYSIsImwiLCJvIiwiY3JlYXRlRWxlbWVudCIsIlByb3ZpZGVyIiwidmFsdWUiLCJmb3JjZSIsImNoaWxkcmVuIiwiRm9yY2VQb3J0YWxSb290IiwidXNlUG9ydGFsUm9vdCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/internal/portal-force-root.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/bugs.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/bugs.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isDisabledReactIssue7711: function() { return /* binding */ r; }\n/* harmony export */ });\nfunction r(n) {\n let e = n.parentElement, l = null;\n for(; e && !(e instanceof HTMLFieldSetElement);)e instanceof HTMLLegendElement && (l = e), e = e.parentElement;\n let t = (e == null ? void 0 : e.getAttribute(\"disabled\")) === \"\";\n return t && i(l) ? !1 : t;\n}\nfunction i(n) {\n if (!n) return !1;\n let e = n.previousElementSibling;\n for(; e !== null;){\n if (e instanceof HTMLLegendElement) return !1;\n e = e.previousElementSibling;\n }\n return !0;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2J1Z3MuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLFNBQVNBLEVBQUVDLENBQUM7SUFBRSxJQUFJQyxJQUFFRCxFQUFFRSxhQUFhLEVBQUNDLElBQUU7SUFBSyxNQUFLRixLQUFHLENBQUVBLENBQUFBLGFBQWFHLG1CQUFrQixHQUFJSCxhQUFhSSxxQkFBb0JGLENBQUFBLElBQUVGLENBQUFBLEdBQUdBLElBQUVBLEVBQUVDLGFBQWE7SUFBQyxJQUFJSSxJQUFFLENBQUNMLEtBQUcsT0FBSyxLQUFLLElBQUVBLEVBQUVNLFlBQVksQ0FBQyxXQUFVLE1BQUs7SUFBRyxPQUFPRCxLQUFHRSxFQUFFTCxLQUFHLENBQUMsSUFBRUc7QUFBQztBQUFDLFNBQVNFLEVBQUVSLENBQUM7SUFBRSxJQUFHLENBQUNBLEdBQUUsT0FBTSxDQUFDO0lBQUUsSUFBSUMsSUFBRUQsRUFBRVMsc0JBQXNCO0lBQUMsTUFBS1IsTUFBSSxNQUFNO1FBQUMsSUFBR0EsYUFBYUksbUJBQWtCLE9BQU0sQ0FBQztRQUFFSixJQUFFQSxFQUFFUSxzQkFBc0I7SUFBQTtJQUFDLE9BQU0sQ0FBQztBQUFDO0FBQXVDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2J1Z3MuanM/NzE1MSJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiByKG4pe2xldCBlPW4ucGFyZW50RWxlbWVudCxsPW51bGw7Zm9yKDtlJiYhKGUgaW5zdGFuY2VvZiBIVE1MRmllbGRTZXRFbGVtZW50KTspZSBpbnN0YW5jZW9mIEhUTUxMZWdlbmRFbGVtZW50JiYobD1lKSxlPWUucGFyZW50RWxlbWVudDtsZXQgdD0oZT09bnVsbD92b2lkIDA6ZS5nZXRBdHRyaWJ1dGUoXCJkaXNhYmxlZFwiKSk9PT1cIlwiO3JldHVybiB0JiZpKGwpPyExOnR9ZnVuY3Rpb24gaShuKXtpZighbilyZXR1cm4hMTtsZXQgZT1uLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7Zm9yKDtlIT09bnVsbDspe2lmKGUgaW5zdGFuY2VvZiBIVE1MTGVnZW5kRWxlbWVudClyZXR1cm4hMTtlPWUucHJldmlvdXNFbGVtZW50U2libGluZ31yZXR1cm4hMH1leHBvcnR7ciBhcyBpc0Rpc2FibGVkUmVhY3RJc3N1ZTc3MTF9O1xuIl0sIm5hbWVzIjpbInIiLCJuIiwiZSIsInBhcmVudEVsZW1lbnQiLCJsIiwiSFRNTEZpZWxkU2V0RWxlbWVudCIsIkhUTUxMZWdlbmRFbGVtZW50IiwidCIsImdldEF0dHJpYnV0ZSIsImkiLCJwcmV2aW91c0VsZW1lbnRTaWJsaW5nIiwiaXNEaXNhYmxlZFJlYWN0SXNzdWU3NzExIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/bugs.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/class-names.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/class-names.js ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ classNames: function() { return /* binding */ t; }\n/* harmony export */ });\nfunction t() {\n for(var _len = arguments.length, r = new Array(_len), _key = 0; _key < _len; _key++){\n r[_key] = arguments[_key];\n }\n return Array.from(new Set(r.flatMap((n)=>typeof n == \"string\" ? n.split(\" \") : []))).filter(Boolean).join(\" \");\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2NsYXNzLW5hbWVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxTQUFTQTtJQUFFO1FBQUdDLEVBQUgsdUJBQUk7O0lBQUUsT0FBT0MsTUFBTUMsSUFBSSxDQUFDLElBQUlDLElBQUlILEVBQUVJLE9BQU8sQ0FBQ0MsQ0FBQUEsSUFBRyxPQUFPQSxLQUFHLFdBQVNBLEVBQUVDLEtBQUssQ0FBQyxPQUFLLEVBQUUsSUFBSUMsTUFBTSxDQUFDQyxTQUFTQyxJQUFJLENBQUM7QUFBSTtBQUF5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC91dGlscy9jbGFzcy1uYW1lcy5qcz9jMmQ1Il0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHQoLi4ucil7cmV0dXJuIEFycmF5LmZyb20obmV3IFNldChyLmZsYXRNYXAobj0+dHlwZW9mIG49PVwic3RyaW5nXCI/bi5zcGxpdChcIiBcIik6W10pKSkuZmlsdGVyKEJvb2xlYW4pLmpvaW4oXCIgXCIpfWV4cG9ydHt0IGFzIGNsYXNzTmFtZXN9O1xuIl0sIm5hbWVzIjpbInQiLCJyIiwiQXJyYXkiLCJmcm9tIiwiU2V0IiwiZmxhdE1hcCIsIm4iLCJzcGxpdCIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwiY2xhc3NOYW1lcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/class-names.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/default-map.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/default-map.js ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DefaultMap: function() { return /* binding */ a; }\n/* harmony export */ });\nclass a extends Map {\n constructor(t){\n super();\n this.factory = t;\n }\n get(t) {\n let e = super.get(t);\n return e === void 0 && (e = this.factory(t), this.set(t, e)), e;\n }\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2RlZmF1bHQtbWFwLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxNQUFNQSxVQUFVQztJQUFJQyxZQUFZQyxDQUFDLENBQUM7UUFBQyxLQUFLO1FBQUcsSUFBSSxDQUFDQyxPQUFPLEdBQUNEO0lBQUM7SUFBQ0UsSUFBSUYsQ0FBQyxFQUFDO1FBQUMsSUFBSUcsSUFBRSxLQUFLLENBQUNELElBQUlGO1FBQUcsT0FBT0csTUFBSSxLQUFLLEtBQUlBLENBQUFBLElBQUUsSUFBSSxDQUFDRixPQUFPLENBQUNELElBQUcsSUFBSSxDQUFDSSxHQUFHLENBQUNKLEdBQUVHLEVBQUMsR0FBR0E7SUFBQztBQUFDO0FBQXlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2RlZmF1bHQtbWFwLmpzP2RkZjUiXSwic291cmNlc0NvbnRlbnQiOlsiY2xhc3MgYSBleHRlbmRzIE1hcHtjb25zdHJ1Y3Rvcih0KXtzdXBlcigpO3RoaXMuZmFjdG9yeT10fWdldCh0KXtsZXQgZT1zdXBlci5nZXQodCk7cmV0dXJuIGU9PT12b2lkIDAmJihlPXRoaXMuZmFjdG9yeSh0KSx0aGlzLnNldCh0LGUpKSxlfX1leHBvcnR7YSBhcyBEZWZhdWx0TWFwfTtcbiJdLCJuYW1lcyI6WyJhIiwiTWFwIiwiY29uc3RydWN0b3IiLCJ0IiwiZmFjdG9yeSIsImdldCIsImUiLCJzZXQiLCJEZWZhdWx0TWFwIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/default-map.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/disposables.js ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ disposables: function() { return /* binding */ o; }\n/* harmony export */ });\n/* harmony import */ var _micro_task_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./micro-task.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/micro-task.js\");\n\nfunction o() {\n let n = [], r = {\n addEventListener (e, t, s, a) {\n return e.addEventListener(t, s, a), r.add(()=>e.removeEventListener(t, s, a));\n },\n requestAnimationFrame () {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n let t = requestAnimationFrame(...e);\n return r.add(()=>cancelAnimationFrame(t));\n },\n nextFrame () {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n return r.requestAnimationFrame(()=>r.requestAnimationFrame(...e));\n },\n setTimeout () {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n let t = setTimeout(...e);\n return r.add(()=>clearTimeout(t));\n },\n microTask () {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n let t = {\n current: !0\n };\n return (0,_micro_task_js__WEBPACK_IMPORTED_MODULE_0__.microTask)(()=>{\n t.current && e[0]();\n }), r.add(()=>{\n t.current = !1;\n });\n },\n style (e, t, s) {\n let a = e.style.getPropertyValue(t);\n return Object.assign(e.style, {\n [t]: s\n }), this.add(()=>{\n Object.assign(e.style, {\n [t]: a\n });\n });\n },\n group (e) {\n let t = o();\n return e(t), this.add(()=>t.dispose());\n },\n add (e) {\n return n.includes(e) || n.push(e), ()=>{\n let t = n.indexOf(e);\n if (t >= 0) for (let s of n.splice(t, 1))s();\n };\n },\n dispose () {\n for (let e of n.splice(0))e();\n }\n };\n return r;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2Rpc3Bvc2FibGVzLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTRDO0FBQUEsU0FBU0U7SUFBSSxJQUFJQyxJQUFFLEVBQUUsRUFBQ0MsSUFBRTtRQUFDQyxrQkFBaUJDLENBQUMsRUFBQ0MsQ0FBQyxFQUFDQyxDQUFDLEVBQUNDLENBQUM7WUFBRSxPQUFPSCxFQUFFRCxnQkFBZ0IsQ0FBQ0UsR0FBRUMsR0FBRUMsSUFBR0wsRUFBRU0sR0FBRyxDQUFDLElBQUlKLEVBQUVLLG1CQUFtQixDQUFDSixHQUFFQyxHQUFFQztRQUFHO1FBQUVHO1lBQXNCO2dCQUFHTixFQUFILHVCQUFJOztZQUFFLElBQUlDLElBQUVLLHlCQUF5Qk47WUFBRyxPQUFPRixFQUFFTSxHQUFHLENBQUMsSUFBSUcscUJBQXFCTjtRQUFHO1FBQUVPO1lBQVU7Z0JBQUdSLEVBQUgsdUJBQUk7O1lBQUUsT0FBT0YsRUFBRVEscUJBQXFCLENBQUMsSUFBSVIsRUFBRVEscUJBQXFCLElBQUlOO1FBQUc7UUFBRVM7WUFBVztnQkFBR1QsRUFBSCx1QkFBSTs7WUFBRSxJQUFJQyxJQUFFUSxjQUFjVDtZQUFHLE9BQU9GLEVBQUVNLEdBQUcsQ0FBQyxJQUFJTSxhQUFhVDtRQUFHO1FBQUVQO1lBQVU7Z0JBQUdNLEVBQUgsdUJBQUk7O1lBQUUsSUFBSUMsSUFBRTtnQkFBQ1UsU0FBUSxDQUFDO1lBQUM7WUFBRSxPQUFPaEIseURBQUNBLENBQUM7Z0JBQUtNLEVBQUVVLE9BQU8sSUFBRVgsQ0FBQyxDQUFDLEVBQUU7WUFBRSxJQUFHRixFQUFFTSxHQUFHLENBQUM7Z0JBQUtILEVBQUVVLE9BQU8sR0FBQyxDQUFDO1lBQUM7UUFBRTtRQUFFQyxPQUFNWixDQUFDLEVBQUNDLENBQUMsRUFBQ0MsQ0FBQztZQUFFLElBQUlDLElBQUVILEVBQUVZLEtBQUssQ0FBQ0MsZ0JBQWdCLENBQUNaO1lBQUcsT0FBT2EsT0FBT0MsTUFBTSxDQUFDZixFQUFFWSxLQUFLLEVBQUM7Z0JBQUMsQ0FBQ1gsRUFBRSxFQUFDQztZQUFDLElBQUcsSUFBSSxDQUFDRSxHQUFHLENBQUM7Z0JBQUtVLE9BQU9DLE1BQU0sQ0FBQ2YsRUFBRVksS0FBSyxFQUFDO29CQUFDLENBQUNYLEVBQUUsRUFBQ0U7Z0JBQUM7WUFBRTtRQUFFO1FBQUVhLE9BQU1oQixDQUFDO1lBQUUsSUFBSUMsSUFBRUw7WUFBSSxPQUFPSSxFQUFFQyxJQUFHLElBQUksQ0FBQ0csR0FBRyxDQUFDLElBQUlILEVBQUVnQixPQUFPO1FBQUc7UUFBRWIsS0FBSUosQ0FBQztZQUFFLE9BQU9ILEVBQUVxQixRQUFRLENBQUNsQixNQUFJSCxFQUFFc0IsSUFBSSxDQUFDbkIsSUFBRztnQkFBSyxJQUFJQyxJQUFFSixFQUFFdUIsT0FBTyxDQUFDcEI7Z0JBQUcsSUFBR0MsS0FBRyxHQUFFLEtBQUksSUFBSUMsS0FBS0wsRUFBRXdCLE1BQU0sQ0FBQ3BCLEdBQUUsR0FBR0M7WUFBRztRQUFDO1FBQUVlO1lBQVUsS0FBSSxJQUFJakIsS0FBS0gsRUFBRXdCLE1BQU0sQ0FBQyxHQUFHckI7UUFBRztJQUFDO0lBQUUsT0FBT0Y7QUFBQztBQUEwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC91dGlscy9kaXNwb3NhYmxlcy5qcz8yYTk0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHttaWNyb1Rhc2sgYXMgaX1mcm9tJy4vbWljcm8tdGFzay5qcyc7ZnVuY3Rpb24gbygpe2xldCBuPVtdLHI9e2FkZEV2ZW50TGlzdGVuZXIoZSx0LHMsYSl7cmV0dXJuIGUuYWRkRXZlbnRMaXN0ZW5lcih0LHMsYSksci5hZGQoKCk9PmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LHMsYSkpfSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoLi4uZSl7bGV0IHQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKC4uLmUpO3JldHVybiByLmFkZCgoKT0+Y2FuY2VsQW5pbWF0aW9uRnJhbWUodCkpfSxuZXh0RnJhbWUoLi4uZSl7cmV0dXJuIHIucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT5yLnJlcXVlc3RBbmltYXRpb25GcmFtZSguLi5lKSl9LHNldFRpbWVvdXQoLi4uZSl7bGV0IHQ9c2V0VGltZW91dCguLi5lKTtyZXR1cm4gci5hZGQoKCk9PmNsZWFyVGltZW91dCh0KSl9LG1pY3JvVGFzayguLi5lKXtsZXQgdD17Y3VycmVudDohMH07cmV0dXJuIGkoKCk9Pnt0LmN1cnJlbnQmJmVbMF0oKX0pLHIuYWRkKCgpPT57dC5jdXJyZW50PSExfSl9LHN0eWxlKGUsdCxzKXtsZXQgYT1lLnN0eWxlLmdldFByb3BlcnR5VmFsdWUodCk7cmV0dXJuIE9iamVjdC5hc3NpZ24oZS5zdHlsZSx7W3RdOnN9KSx0aGlzLmFkZCgoKT0+e09iamVjdC5hc3NpZ24oZS5zdHlsZSx7W3RdOmF9KX0pfSxncm91cChlKXtsZXQgdD1vKCk7cmV0dXJuIGUodCksdGhpcy5hZGQoKCk9PnQuZGlzcG9zZSgpKX0sYWRkKGUpe3JldHVybiBuLmluY2x1ZGVzKGUpfHxuLnB1c2goZSksKCk9PntsZXQgdD1uLmluZGV4T2YoZSk7aWYodD49MClmb3IobGV0IHMgb2Ygbi5zcGxpY2UodCwxKSlzKCl9fSxkaXNwb3NlKCl7Zm9yKGxldCBlIG9mIG4uc3BsaWNlKDApKWUoKX19O3JldHVybiByfWV4cG9ydHtvIGFzIGRpc3Bvc2FibGVzfTtcbiJdLCJuYW1lcyI6WyJtaWNyb1Rhc2siLCJpIiwibyIsIm4iLCJyIiwiYWRkRXZlbnRMaXN0ZW5lciIsImUiLCJ0IiwicyIsImEiLCJhZGQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiY2FuY2VsQW5pbWF0aW9uRnJhbWUiLCJuZXh0RnJhbWUiLCJzZXRUaW1lb3V0IiwiY2xlYXJUaW1lb3V0IiwiY3VycmVudCIsInN0eWxlIiwiZ2V0UHJvcGVydHlWYWx1ZSIsIk9iamVjdCIsImFzc2lnbiIsImdyb3VwIiwiZGlzcG9zZSIsImluY2x1ZGVzIiwicHVzaCIsImluZGV4T2YiLCJzcGxpY2UiLCJkaXNwb3NhYmxlcyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js":
|
||
/*!**********************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/env.js ***!
|
||
\**********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ env: function() { return /* binding */ s; }\n/* harmony export */ });\nvar i = Object.defineProperty;\nvar d = (t, e, n)=>e in t ? i(t, e, {\n enumerable: !0,\n configurable: !0,\n writable: !0,\n value: n\n }) : t[e] = n;\nvar r = (t, e, n)=>(d(t, typeof e != \"symbol\" ? e + \"\" : e, n), n);\nclass o {\n constructor(){\n r(this, \"current\", this.detect());\n r(this, \"handoffState\", \"pending\");\n r(this, \"currentId\", 0);\n }\n set(e) {\n this.current !== e && (this.handoffState = \"pending\", this.currentId = 0, this.current = e);\n }\n reset() {\n this.set(this.detect());\n }\n nextId() {\n return ++this.currentId;\n }\n get isServer() {\n return this.current === \"server\";\n }\n get isClient() {\n return this.current === \"client\";\n }\n detect() {\n return typeof window == \"undefined\" || typeof document == \"undefined\" ? \"server\" : \"client\";\n }\n handoff() {\n this.handoffState === \"pending\" && (this.handoffState = \"complete\");\n }\n get isHandoffComplete() {\n return this.handoffState === \"complete\";\n }\n}\nlet s = new o;\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2Vudi5qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBSUEsSUFBRUMsT0FBT0MsY0FBYztBQUFDLElBQUlDLElBQUUsQ0FBQ0MsR0FBRUMsR0FBRUMsSUFBSUQsS0FBS0QsSUFBRUosRUFBRUksR0FBRUMsR0FBRTtRQUFDRSxZQUFXLENBQUM7UUFBRUMsY0FBYSxDQUFDO1FBQUVDLFVBQVMsQ0FBQztRQUFFQyxPQUFNSjtJQUFDLEtBQUdGLENBQUMsQ0FBQ0MsRUFBRSxHQUFDQztBQUFFLElBQUlLLElBQUUsQ0FBQ1AsR0FBRUMsR0FBRUMsSUFBS0gsQ0FBQUEsRUFBRUMsR0FBRSxPQUFPQyxLQUFHLFdBQVNBLElBQUUsS0FBR0EsR0FBRUMsSUFBR0EsQ0FBQUE7QUFBRyxNQUFNTTtJQUFFQyxhQUFhO1FBQUNGLEVBQUUsSUFBSSxFQUFDLFdBQVUsSUFBSSxDQUFDRyxNQUFNO1FBQUlILEVBQUUsSUFBSSxFQUFDLGdCQUFlO1FBQVdBLEVBQUUsSUFBSSxFQUFDLGFBQVk7SUFBRTtJQUFDSSxJQUFJVixDQUFDLEVBQUM7UUFBQyxJQUFJLENBQUNXLE9BQU8sS0FBR1gsS0FBSSxLQUFJLENBQUNZLFlBQVksR0FBQyxXQUFVLElBQUksQ0FBQ0MsU0FBUyxHQUFDLEdBQUUsSUFBSSxDQUFDRixPQUFPLEdBQUNYLENBQUFBO0lBQUU7SUFBQ2MsUUFBTztRQUFDLElBQUksQ0FBQ0osR0FBRyxDQUFDLElBQUksQ0FBQ0QsTUFBTTtJQUFHO0lBQUNNLFNBQVE7UUFBQyxPQUFNLEVBQUUsSUFBSSxDQUFDRixTQUFTO0lBQUE7SUFBQyxJQUFJRyxXQUFVO1FBQUMsT0FBTyxJQUFJLENBQUNMLE9BQU8sS0FBRztJQUFRO0lBQUMsSUFBSU0sV0FBVTtRQUFDLE9BQU8sSUFBSSxDQUFDTixPQUFPLEtBQUc7SUFBUTtJQUFDRixTQUFRO1FBQUMsT0FBTyxPQUFPUyxVQUFRLGVBQWEsT0FBT0MsWUFBVSxjQUFZLFdBQVM7SUFBUTtJQUFDQyxVQUFTO1FBQUMsSUFBSSxDQUFDUixZQUFZLEtBQUcsYUFBWSxLQUFJLENBQUNBLFlBQVksR0FBQyxVQUFTO0lBQUU7SUFBQyxJQUFJUyxvQkFBbUI7UUFBQyxPQUFPLElBQUksQ0FBQ1QsWUFBWSxLQUFHO0lBQVU7QUFBQztBQUFDLElBQUlVLElBQUUsSUFBSWY7QUFBbUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvdXRpbHMvZW52LmpzPzM4NTIiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIGk9T2JqZWN0LmRlZmluZVByb3BlcnR5O3ZhciBkPSh0LGUsbik9PmUgaW4gdD9pKHQsZSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6bn0pOnRbZV09bjt2YXIgcj0odCxlLG4pPT4oZCh0LHR5cGVvZiBlIT1cInN5bWJvbFwiP2UrXCJcIjplLG4pLG4pO2NsYXNzIG97Y29uc3RydWN0b3IoKXtyKHRoaXMsXCJjdXJyZW50XCIsdGhpcy5kZXRlY3QoKSk7cih0aGlzLFwiaGFuZG9mZlN0YXRlXCIsXCJwZW5kaW5nXCIpO3IodGhpcyxcImN1cnJlbnRJZFwiLDApfXNldChlKXt0aGlzLmN1cnJlbnQhPT1lJiYodGhpcy5oYW5kb2ZmU3RhdGU9XCJwZW5kaW5nXCIsdGhpcy5jdXJyZW50SWQ9MCx0aGlzLmN1cnJlbnQ9ZSl9cmVzZXQoKXt0aGlzLnNldCh0aGlzLmRldGVjdCgpKX1uZXh0SWQoKXtyZXR1cm4rK3RoaXMuY3VycmVudElkfWdldCBpc1NlcnZlcigpe3JldHVybiB0aGlzLmN1cnJlbnQ9PT1cInNlcnZlclwifWdldCBpc0NsaWVudCgpe3JldHVybiB0aGlzLmN1cnJlbnQ9PT1cImNsaWVudFwifWRldGVjdCgpe3JldHVybiB0eXBlb2Ygd2luZG93PT1cInVuZGVmaW5lZFwifHx0eXBlb2YgZG9jdW1lbnQ9PVwidW5kZWZpbmVkXCI/XCJzZXJ2ZXJcIjpcImNsaWVudFwifWhhbmRvZmYoKXt0aGlzLmhhbmRvZmZTdGF0ZT09PVwicGVuZGluZ1wiJiYodGhpcy5oYW5kb2ZmU3RhdGU9XCJjb21wbGV0ZVwiKX1nZXQgaXNIYW5kb2ZmQ29tcGxldGUoKXtyZXR1cm4gdGhpcy5oYW5kb2ZmU3RhdGU9PT1cImNvbXBsZXRlXCJ9fWxldCBzPW5ldyBvO2V4cG9ydHtzIGFzIGVudn07XG4iXSwibmFtZXMiOlsiaSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZCIsInQiLCJlIiwibiIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsInZhbHVlIiwiciIsIm8iLCJjb25zdHJ1Y3RvciIsImRldGVjdCIsInNldCIsImN1cnJlbnQiLCJoYW5kb2ZmU3RhdGUiLCJjdXJyZW50SWQiLCJyZXNldCIsIm5leHRJZCIsImlzU2VydmVyIiwiaXNDbGllbnQiLCJ3aW5kb3ciLCJkb2N1bWVudCIsImhhbmRvZmYiLCJpc0hhbmRvZmZDb21wbGV0ZSIsInMiLCJlbnYiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/focus-management.js":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/focus-management.js ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Focus: function() { return /* binding */ F; },\n/* harmony export */ FocusResult: function() { return /* binding */ T; },\n/* harmony export */ FocusableMode: function() { return /* binding */ h; },\n/* harmony export */ focusElement: function() { return /* binding */ I; },\n/* harmony export */ focusFrom: function() { return /* binding */ j; },\n/* harmony export */ focusIn: function() { return /* binding */ P; },\n/* harmony export */ getAutoFocusableElements: function() { return /* binding */ S; },\n/* harmony export */ getFocusableElements: function() { return /* binding */ b; },\n/* harmony export */ isFocusableElement: function() { return /* binding */ A; },\n/* harmony export */ restoreFocusIfNecessary: function() { return /* binding */ G; },\n/* harmony export */ sortByDomNode: function() { return /* binding */ _; }\n/* harmony export */ });\n/* harmony import */ var _disposables_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./disposables.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/disposables.js\");\n/* harmony import */ var _match_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./match.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/match.js\");\n/* harmony import */ var _owner_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./owner.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js\");\n\n\n\nlet f = [\n \"[contentEditable=true]\",\n \"[tabindex]\",\n \"a[href]\",\n \"area[href]\",\n \"button:not([disabled])\",\n \"iframe\",\n \"input:not([disabled])\",\n \"select:not([disabled])\",\n \"textarea:not([disabled])\"\n].map((e)=>`${e}:not([tabindex='-1'])`).join(\",\"), p = [\n \"[data-autofocus]\"\n].map((e)=>`${e}:not([tabindex='-1'])`).join(\",\");\nvar F = ((n)=>(n[n.First = 1] = \"First\", n[n.Previous = 2] = \"Previous\", n[n.Next = 4] = \"Next\", n[n.Last = 8] = \"Last\", n[n.WrapAround = 16] = \"WrapAround\", n[n.NoScroll = 32] = \"NoScroll\", n[n.AutoFocus = 64] = \"AutoFocus\", n))(F || {}), T = ((o)=>(o[o.Error = 0] = \"Error\", o[o.Overflow = 1] = \"Overflow\", o[o.Success = 2] = \"Success\", o[o.Underflow = 3] = \"Underflow\", o))(T || {}), y = ((t)=>(t[t.Previous = -1] = \"Previous\", t[t.Next = 1] = \"Next\", t))(y || {});\nfunction b() {\n let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : document.body;\n return e == null ? [] : Array.from(e.querySelectorAll(f)).sort((r, t)=>Math.sign((r.tabIndex || Number.MAX_SAFE_INTEGER) - (t.tabIndex || Number.MAX_SAFE_INTEGER)));\n}\nfunction S() {\n let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : document.body;\n return e == null ? [] : Array.from(e.querySelectorAll(p)).sort((r, t)=>Math.sign((r.tabIndex || Number.MAX_SAFE_INTEGER) - (t.tabIndex || Number.MAX_SAFE_INTEGER)));\n}\n_c = S;\nvar h = ((t)=>(t[t.Strict = 0] = \"Strict\", t[t.Loose = 1] = \"Loose\", t))(h || {});\nfunction A(e) {\n let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;\n var t;\n return e === ((t = (0,_owner_js__WEBPACK_IMPORTED_MODULE_0__.getOwnerDocument)(e)) == null ? void 0 : t.body) ? !1 : (0,_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(r, {\n [0] () {\n return e.matches(f);\n },\n [1] () {\n let u = e;\n for(; u !== null;){\n if (u.matches(f)) return !0;\n u = u.parentElement;\n }\n return !1;\n }\n });\n}\n_c1 = A;\nfunction G(e) {\n let r = (0,_owner_js__WEBPACK_IMPORTED_MODULE_0__.getOwnerDocument)(e);\n (0,_disposables_js__WEBPACK_IMPORTED_MODULE_2__.disposables)().nextFrame(()=>{\n r && !A(r.activeElement, 0) && I(e);\n });\n}\n_c2 = G;\nvar H = ((t)=>(t[t.Keyboard = 0] = \"Keyboard\", t[t.Mouse = 1] = \"Mouse\", t))(H || {});\ntypeof window != \"undefined\" && typeof document != \"undefined\" && (document.addEventListener(\"keydown\", (e)=>{\n e.metaKey || e.altKey || e.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = \"\");\n}, !0), document.addEventListener(\"click\", (e)=>{\n e.detail === 1 ? delete document.documentElement.dataset.headlessuiFocusVisible : e.detail === 0 && (document.documentElement.dataset.headlessuiFocusVisible = \"\");\n}, !0));\nfunction I(e) {\n e == null || e.focus({\n preventScroll: !0\n });\n}\n_c3 = I;\nlet w = [\n \"textarea\",\n \"input\"\n].join(\",\");\nfunction O(e) {\n var r, t;\n return (t = (r = e == null ? void 0 : e.matches) == null ? void 0 : r.call(e, w)) != null ? t : !1;\n}\n_c4 = O;\nfunction _(e) {\n let r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : (t)=>t;\n return e.slice().sort((t, u)=>{\n let o = r(t), c = r(u);\n if (o === null || c === null) return 0;\n let l = o.compareDocumentPosition(c);\n return l & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : l & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;\n });\n}\nfunction j(e, r) {\n return P(b(), r, {\n relativeTo: e\n });\n}\nfunction P(e, r) {\n let { sorted: t = !0, relativeTo: u = null, skipElements: o = [] } = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n let c = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e.ownerDocument, l = Array.isArray(e) ? t ? _(e) : e : r & 64 ? S(e) : b(e);\n o.length > 0 && l.length > 1 && (l = l.filter((s)=>!o.some((a)=>a != null && \"current\" in a ? (a == null ? void 0 : a.current) === s : a === s))), u = u != null ? u : c.activeElement;\n let n = (()=>{\n if (r & 5) return 1;\n if (r & 10) return -1;\n throw new Error(\"Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last\");\n })(), x = (()=>{\n if (r & 1) return 0;\n if (r & 2) return Math.max(0, l.indexOf(u)) - 1;\n if (r & 4) return Math.max(0, l.indexOf(u)) + 1;\n if (r & 8) return l.length - 1;\n throw new Error(\"Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last\");\n })(), M = r & 32 ? {\n preventScroll: !0\n } : {}, m = 0, d = l.length, i;\n do {\n if (m >= d || m + d <= 0) return 0;\n let s = x + m;\n if (r & 16) s = (s + d) % d;\n else {\n if (s < 0) return 3;\n if (s >= d) return 1;\n }\n i = l[s], i == null || i.focus(M), m += n;\n }while (i !== c.activeElement);\n return r & 6 && O(i) && i.select(), 2;\n}\n_c5 = P;\n\nvar _c, _c1, _c2, _c3, _c4, _c5;\n$RefreshReg$(_c, \"S\");\n$RefreshReg$(_c1, \"A\");\n$RefreshReg$(_c2, \"G\");\n$RefreshReg$(_c3, \"I\");\n$RefreshReg$(_c4, \"O\");\n$RefreshReg$(_c5, \"P\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL2ZvY3VzLW1hbmFnZW1lbnQuanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBK0M7QUFBbUM7QUFBOEM7QUFBQSxJQUFJTSxJQUFFO0lBQUM7SUFBeUI7SUFBYTtJQUFVO0lBQWE7SUFBeUI7SUFBUztJQUF3QjtJQUF5QjtDQUEyQixDQUFDQyxHQUFHLENBQUNDLENBQUFBLElBQUcsQ0FBQyxFQUFFQSxFQUFFLHFCQUFxQixDQUFDLEVBQUVDLElBQUksQ0FBQyxNQUFLQyxJQUFFO0lBQUM7Q0FBbUIsQ0FBQ0gsR0FBRyxDQUFDQyxDQUFBQSxJQUFHLENBQUMsRUFBRUEsRUFBRSxxQkFBcUIsQ0FBQyxFQUFFQyxJQUFJLENBQUM7QUFBSyxJQUFJRSxJQUFFLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsS0FBSyxHQUFDLEVBQUUsR0FBQyxTQUFRRCxDQUFDLENBQUNBLEVBQUVFLFFBQVEsR0FBQyxFQUFFLEdBQUMsWUFBV0YsQ0FBQyxDQUFDQSxFQUFFRyxJQUFJLEdBQUMsRUFBRSxHQUFDLFFBQU9ILENBQUMsQ0FBQ0EsRUFBRUksSUFBSSxHQUFDLEVBQUUsR0FBQyxRQUFPSixDQUFDLENBQUNBLEVBQUVLLFVBQVUsR0FBQyxHQUFHLEdBQUMsY0FBYUwsQ0FBQyxDQUFDQSxFQUFFTSxRQUFRLEdBQUMsR0FBRyxHQUFDLFlBQVdOLENBQUMsQ0FBQ0EsRUFBRU8sU0FBUyxHQUFDLEdBQUcsR0FBQyxhQUFZUCxDQUFBQSxDQUFDLEVBQUdELEtBQUcsQ0FBQyxJQUFHUyxJQUFFLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsS0FBSyxHQUFDLEVBQUUsR0FBQyxTQUFRRCxDQUFDLENBQUNBLEVBQUVFLFFBQVEsR0FBQyxFQUFFLEdBQUMsWUFBV0YsQ0FBQyxDQUFDQSxFQUFFRyxPQUFP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QUFPLENBQUM5QyxNQUFJO1FBQUUsSUFBR1osSUFBRSxHQUFFLE9BQU9DLEtBQUt3RCxHQUFHLENBQUMsR0FBRW5CLEVBQUVvQixPQUFPLENBQUM5QyxNQUFJO1FBQUUsSUFBR1osSUFBRSxHQUFFLE9BQU9zQyxFQUFFVyxNQUFNLEdBQUM7UUFBRSxNQUFNLElBQUk5RCxNQUFNO0lBQWdFLE1BQUt3RSxJQUFFM0QsSUFBRSxLQUFHO1FBQUMrQixlQUFjLENBQUM7SUFBQyxJQUFFLENBQUMsR0FBRTZCLElBQUUsR0FBRUMsSUFBRXZCLEVBQUVXLE1BQU0sRUFBQ2E7SUFBRSxHQUFFO1FBQUMsSUFBR0YsS0FBR0MsS0FBR0QsSUFBRUMsS0FBRyxHQUFFLE9BQU87UUFBRSxJQUFJVCxJQUFFSSxJQUFFSTtRQUFFLElBQUc1RCxJQUFFLElBQUdvRCxJQUFFLENBQUNBLElBQUVTLENBQUFBLElBQUdBO2FBQU07WUFBQyxJQUFHVCxJQUFFLEdBQUUsT0FBTztZQUFFLElBQUdBLEtBQUdTLEdBQUUsT0FBTztRQUFDO1FBQUNDLElBQUV4QixDQUFDLENBQUNjLEVBQUUsRUFBQ1UsS0FBRyxRQUFNQSxFQUFFaEMsS0FBSyxDQUFDNkIsSUFBR0MsS0FBR25GO0lBQUMsUUFBT3FGLE1BQUl6QixFQUFFckIsYUFBYSxFQUFFO0lBQUEsT0FBT2hCLElBQUUsS0FBR2lDLEVBQUU2QixNQUFJQSxFQUFFQyxNQUFNLElBQUc7QUFBQztNQUFqNEJuQjtBQUF1bUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0BoZWFkbGVzc3VpL3JlYWN0L2Rpc3QvdXRpbHMvZm9jdXMtbWFuYWdlbWVudC5qcz9jMDk4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHtkaXNwb3NhYmxlcyBhcyBOfWZyb20nLi9kaXNwb3NhYmxlcy5qcyc7aW1wb3J0e21hdGNoIGFzIEx9ZnJvbScuL21hdGNoLmpzJztpbXBvcnR7Z2V0T3duZXJEb2N1bWVudCBhcyBFfWZyb20nLi9vd25lci5qcyc7bGV0IGY9W1wiW2NvbnRlbnRFZGl0YWJsZT10cnVlXVwiLFwiW3RhYmluZGV4XVwiLFwiYVtocmVmXVwiLFwiYXJlYVtocmVmXVwiLFwiYnV0dG9uOm5vdChbZGlzYWJsZWRdKVwiLFwiaWZyYW1lXCIsXCJpbnB1dDpub3QoW2Rpc2FibGVkXSlcIixcInNlbGVjdDpub3QoW2Rpc2FibGVkXSlcIixcInRleHRhcmVhOm5vdChbZGlzYWJsZWRdKVwiXS5tYXAoZT0+YCR7ZX06bm90KFt0YWJpbmRleD0nLTEnXSlgKS5qb2luKFwiLFwiKSxwPVtcIltkYXRhLWF1dG9mb2N1c11cIl0ubWFwKGU9PmAke2V9Om5vdChbdGFiaW5kZXg9Jy0xJ10pYCkuam9pbihcIixcIik7dmFyIEY9KG49PihuW24uRmlyc3Q9MV09XCJGaXJzdFwiLG5bbi5QcmV2aW91cz0yXT1cIlByZXZpb3VzXCIsbltuLk5leHQ9NF09XCJOZXh0XCIsbltuLkxhc3Q9OF09XCJMYXN0XCIsbltuLldyYXBBcm91bmQ9MTZdPVwiV3JhcEFyb3VuZFwiLG5bbi5Ob1Njcm9sbD0zMl09XCJOb1Njcm9sbFwiLG5bbi5BdXRvRm9jdXM9NjRdPVwiQXV0b0ZvY3VzXCIsbikpKEZ8fHt9KSxUPShvPT4ob1tvLkVycm9yPTBdPVwiRXJyb3JcIixvW28uT3ZlcmZsb3c9MV09XCJPdmVyZmxvd1wiLG9bby5TdWNjZXNzPTJdPVwiU3VjY2Vzc1wiLG9bby5VbmRlcmZsb3c9M109XCJVbmRlcmZsb3dcIixvKSkoVHx8e30pLHk9KHQ9Pih0W3QuUHJldmlvdXM9LTFdPVwiUHJldmlvdXNcIix0W3QuTmV4dD0xXT1cIk5leHRcIix0KSkoeXx8e30pO2Z1bmN0aW9uIGIoZT1kb2N1bWVudC5ib2R5KXtyZXR1cm4gZT09bnVsbD9bXTpBcnJheS5mcm9tKGUucXVlcnlTZWxlY3RvckFsbChmKSkuc29ydCgocix0KT0+TWF0aC5zaWduKChyLnRhYkluZGV4fHxOdW1iZXIuTUFYX1NBRkVfSU5URUdFUiktKHQudGFiSW5kZXh8fE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSkpfWZ1bmN0aW9uIFMoZT1kb2N1bWVudC5ib2R5KXtyZXR1cm4gZT09bnVsbD9bXTpBcnJheS5mcm9tKGUucXVlcnlTZWxlY3RvckFsbChwKSkuc29ydCgocix0KT0+TWF0aC5zaWduKChyLnRhYkluZGV4fHxOdW1iZXIuTUFYX1NBRkVfSU5URUdFUiktKHQudGFiSW5kZXh8fE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSkpfXZhciBoPSh0PT4odFt0LlN0cmljdD0wXT1cIlN0cmljdFwiLHRbdC5Mb29zZT0xXT1cIkxvb3NlXCIsdCkpKGh8fHt9KTtmdW5jdGlvbiBBKGUscj0wKXt2YXIgdDtyZXR1cm4gZT09PSgodD1FKGUpKT09bnVsbD92b2lkIDA6dC5ib2R5KT8hMTpMKHIse1swXSgpe3JldHVybiBlLm1hdGNoZXMoZil9LFsxXSgpe2xldCB1PWU7Zm9yKDt1IT09bnVsbDspe2lmKHUubWF0Y2hlcyhmKSlyZXR1cm4hMDt1PXUucGFyZW50RWxlbWVudH1yZXR1cm4hMX19KX1mdW5jdGlvbiBHKGUpe2xldCByPUUoZSk7TigpLm5leHRGcmFtZSgoKT0+e3ImJiFBKHIuYWN0aXZlRWxlbWVudCwwKSYmSShlKX0pfXZhciBIPSh0PT4odFt0LktleWJvYXJkPTBdPVwiS2V5Ym9hcmRcIix0W3QuTW91c2U9MV09XCJNb3VzZVwiLHQpKShIfHx7fSk7dHlwZW9mIHdpbmRvdyE9XCJ1bmRlZmluZWRcIiYmdHlwZW9mIGRvY3VtZW50IT1cInVuZGVmaW5lZFwiJiYoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIixlPT57ZS5tZXRhS2V5fHxlLmFsdEtleXx8ZS5jdHJsS2V5fHwoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQuaGVhZGxlc3N1aUZvY3VzVmlzaWJsZT1cIlwiKX0sITApLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGU9PntlLmRldGFpbD09PTE/ZGVsZXRlIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LmhlYWRsZXNzdWlGb2N1c1Zpc2libGU6ZS5kZXRhaWw9PT0wJiYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQuaGVhZGxlc3N1aUZvY3VzVmlzaWJsZT1cIlwiKX0sITApKTtmdW5jdGlvbiBJKGUpe2U9PW51bGx8fGUuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KX1sZXQgdz1bXCJ0ZXh0YXJlYVwiLFwiaW5wdXRcIl0uam9pbihcIixcIik7ZnVuY3Rpb24gTyhlKXt2YXIgcix0O3JldHVybih0PShyPWU9PW51bGw/dm9pZCAwOmUubWF0Y2hlcyk9PW51bGw/dm9pZCAwOnIuY2FsbChlLHcpKSE9bnVsbD90OiExfWZ1bmN0aW9uIF8oZSxyPXQ9PnQpe3JldHVybiBlLnNsaWNlKCkuc29ydCgodCx1KT0+e2xldCBvPXIodCksYz1yKHUpO2lmKG89PT1udWxsfHxjPT09bnVsbClyZXR1cm4gMDtsZXQgbD1vLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGMpO3JldHVybiBsJk5vZGUuRE9DVU1FTlRfUE9TSVRJT05fRk9MTE9XSU5HPy0xOmwmTm9kZS5ET0NVTUVOVF9QT1NJVElPTl9QUkVDRURJTkc/MTowfSl9ZnVuY3Rpb24gaihlLHIpe3JldHVybiBQKGIoKSxyLHtyZWxhdGl2ZVRvOmV9KX1mdW5jdGlvbiBQKGUscix7c29ydGVkOnQ9ITAscmVsYXRpdmVUbzp1PW51bGwsc2tpcEVsZW1lbnRzOm89W119PXt9KXtsZXQgYz1BcnJheS5pc0FycmF5KGUpP2UubGVuZ3RoPjA/ZVswXS5vd25lckRvY3VtZW50OmRvY3VtZW50OmUub3duZXJEb2N1bWVudCxsPUFycmF5LmlzQXJyYXkoZSk/dD9fKGUpOmU6ciY2ND9TKGUpOmIoZSk7by5sZW5ndGg+MCYmbC5sZW5ndGg+MSYmKGw9bC5maWx0ZXIocz0+IW8uc29tZShhPT5hIT1udWxsJiZcImN1cnJlbnRcImluIGE/KGE9PW51bGw/dm9pZCAwOmEuY3VycmVudCk9PT1zOmE9PT1zKSkpLHU9dSE9bnVsbD91OmMuYWN0aXZlRWxlbWVudDtsZXQgbj0oKCk9PntpZihyJjUpcmV0dXJuIDE7aWYociYxMClyZXR1cm4tMTt0aHJvdyBuZXcgRXJyb3IoXCJNaXNzaW5nIEZvY3VzLkZpcnN0LCBGb2N1cy5QcmV2aW91cywgRm9jdXMuTmV4dCBvciBGb2N1cy5MYXN0XCIpfSkoKSx4PSgoKT0+e2lmKHImMSlyZXR1cm4gMDtpZihyJjIpcmV0dXJuIE1hdGgubWF4KDAsbC5pbmRleE9mKHUpKS0xO2lmKHImNClyZXR1cm4gTWF0aC5tYXgoMCxsLmluZGV4T2YodSkpKzE7aWYociY4KXJldHVybiBsLmxlbmd0aC0xO3Rocm93IG5ldyBFcnJvcihcIk1pc3NpbmcgRm9jdXMuRmlyc3QsIEZvY3VzLlByZXZpb3VzLCBGb2N1cy5OZXh0IG9yIEZvY3VzLkxhc3RcIil9KSgpLE09ciYzMj97cHJldmVudFNjcm9sbDohMH06e30sbT0wLGQ9bC5sZW5ndGgsaTtkb3tpZihtPj1kfHxtK2Q8PTApcmV0dXJuIDA7bGV0IHM9eCttO2lmKHImMTYpcz0ocytkKSVkO2Vsc2V7aWYoczwwKXJldHVybiAzO2lmKHM+PWQpcmV0dXJuIDF9aT1sW3NdLGk9PW51bGx8fGkuZm9jdXMoTSksbSs9bn13aGlsZShpIT09Yy5hY3RpdmVFbGVtZW50KTtyZXR1cm4gciY2JiZPKGkpJiZpLnNlbGVjdCgpLDJ9ZXhwb3J0e0YgYXMgRm9jdXMsVCBhcyBGb2N1c1Jlc3VsdCxoIGFzIEZvY3VzYWJsZU1vZGUsSSBhcyBmb2N1c0VsZW1lbnQsaiBhcyBmb2N1c0Zyb20sUCBhcyBmb2N1c0luLFMgYXMgZ2V0QXV0b0ZvY3VzYWJsZUVsZW1lbnRzLGIgYXMgZ2V0Rm9jdXNhYmxlRWxlbWVudHMsQSBhcyBpc0ZvY3VzYWJsZUVsZW1lbnQsRyBhcyByZXN0b3JlRm9jdXNJZk5lY2Vzc2FyeSxfIGFzIHNvcnRCeURvbU5vZGV9O1xuIl0sIm5hbWVzIjpbImRpc3Bvc2FibGVzIiwiTiIsIm1hdGNoIiwiTCIsImdldE93bmVyRG9jdW1lbnQiLCJFIiwiZiIsIm1hcCIsImUiLCJqb2luIiwicCIsIkYiLCJuIiwiRmlyc3QiLCJQcmV2aW91cyIsIk5leHQiLCJMYXN0IiwiV3JhcEFyb3VuZCIsIk5vU2Nyb2xsIiwiQXV0b0ZvY3VzIiwiVCIsIm8iLCJFcnJvciIsIk92ZXJmbG93IiwiU3VjY2VzcyIsIlVuZGVyZmxvdyIsInkiLCJ0IiwiYiIsImRvY3VtZW50IiwiYm9keSIsIkFycmF5IiwiZnJvbSIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJzb3J0IiwiciIsIk1hdGgiLCJzaWduIiwidGFiSW5kZXgiLCJOdW1iZXIiLCJNQVhfU0FGRV9JTlRFR0VSIiwiUyIsImgiLCJTdHJpY3QiLCJMb29zZSIsIkEiLCJtYXRjaGVzIiwidSIsInBhcmVudEVsZW1lbnQiLCJHIiwibmV4dEZyYW1lIiwiYWN0aXZlRWxlbWVudCIsIkkiLCJIIiwiS2V5Ym9hcmQiLCJNb3VzZSIsIndpbmRvdyIsImFkZEV2ZW50TGlzdGVuZXIiLCJtZXRhS2V5IiwiYWx0S2V5IiwiY3RybEtleSIsImRvY3VtZW50RWxlbWVudCIsImRhdGFzZXQiLCJoZWFkbGVzc3VpRm9jdXNWaXNpYmxlIiwiZGV0YWlsIiwiZm9jdXMiLCJwcmV2ZW50U2Nyb2xsIiwidyIsIk8iLCJjYWxsIiwiXyIsInNsaWNlIiwiYyIsImwiLCJjb21wYXJlRG9jdW1lbnRQb3NpdGlvbiIsIk5vZGUiLCJET0NVTUVOVF9QT1NJVElPTl9GT0xMT1dJTkciLCJET0NVTUVOVF9QT1NJVElPTl9QUkVDRURJTkciLCJqIiwiUCIsInJlbGF0aXZlVG8iLCJzb3J0ZWQiLCJza2lwRWxlbWVudHMiLCJpc0FycmF5IiwibGVuZ3RoIiwib3duZXJEb2N1bWVudCIsImZpbHRlciIsInMiLCJzb21lIiwiYSIsImN1cnJlbnQiLCJ4IiwibWF4IiwiaW5kZXhPZiIsIk0iLCJtIiwiZCIsImkiLCJzZWxlY3QiLCJGb2N1cyIsIkZvY3VzUmVzdWx0IiwiRm9jdXNhYmxlTW9kZSIsImZvY3VzRWxlbWVudCIsImZvY3VzRnJvbSIsImZvY3VzSW4iLCJnZXRBdXRvRm9jdXNhYmxlRWxlbWVudHMiLCJnZXRGb2N1c2FibGVFbGVtZW50cyIsImlzRm9jdXNhYmxlRWxlbWVudCIsInJlc3RvcmVGb2N1c0lmTmVjZXNzYXJ5Iiwic29ydEJ5RG9tTm9kZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/focus-management.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/match.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/match.js ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ match: function() { return /* binding */ u; }\n/* harmony export */ });\nfunction u(r, n) {\n for(var _len = arguments.length, a = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){\n a[_key - 2] = arguments[_key];\n }\n if (r in n) {\n let e = n[r];\n return typeof e == \"function\" ? e(...a) : e;\n }\n let t = new Error(`Tried to handle \"${r}\" but there is no handler defined. Only defined handlers are: ${Object.keys(n).map((e)=>`\"${e}\"`).join(\", \")}.`);\n throw Error.captureStackTrace && Error.captureStackTrace(t, u), t;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL21hdGNoLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxTQUFTQSxFQUFFQyxDQUFDLEVBQUNDLENBQUM7SUFBQztRQUFHQyxFQUFILDJCQUFJOztJQUFFLElBQUdGLEtBQUtDLEdBQUU7UUFBQyxJQUFJRSxJQUFFRixDQUFDLENBQUNELEVBQUU7UUFBQyxPQUFPLE9BQU9HLEtBQUcsYUFBV0EsS0FBS0QsS0FBR0M7SUFBQztJQUFDLElBQUlDLElBQUUsSUFBSUMsTUFBTSxDQUFDLGlCQUFpQixFQUFFTCxFQUFFLDhEQUE4RCxFQUFFTSxPQUFPQyxJQUFJLENBQUNOLEdBQUdPLEdBQUcsQ0FBQ0wsQ0FBQUEsSUFBRyxDQUFDLENBQUMsRUFBRUEsRUFBRSxDQUFDLENBQUMsRUFBRU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQUUsTUFBTUosTUFBTUssaUJBQWlCLElBQUVMLE1BQU1LLGlCQUFpQixDQUFDTixHQUFFTCxJQUFHSztBQUFDO0FBQW9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL21hdGNoLmpzPzVmZTQiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gdShyLG4sLi4uYSl7aWYociBpbiBuKXtsZXQgZT1uW3JdO3JldHVybiB0eXBlb2YgZT09XCJmdW5jdGlvblwiP2UoLi4uYSk6ZX1sZXQgdD1uZXcgRXJyb3IoYFRyaWVkIHRvIGhhbmRsZSBcIiR7cn1cIiBidXQgdGhlcmUgaXMgbm8gaGFuZGxlciBkZWZpbmVkLiBPbmx5IGRlZmluZWQgaGFuZGxlcnMgYXJlOiAke09iamVjdC5rZXlzKG4pLm1hcChlPT5gXCIke2V9XCJgKS5qb2luKFwiLCBcIil9LmApO3Rocm93IEVycm9yLmNhcHR1cmVTdGFja1RyYWNlJiZFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0LHUpLHR9ZXhwb3J0e3UgYXMgbWF0Y2h9O1xuIl0sIm5hbWVzIjpbInUiLCJyIiwibiIsImEiLCJlIiwidCIsIkVycm9yIiwiT2JqZWN0Iiwia2V5cyIsIm1hcCIsImpvaW4iLCJjYXB0dXJlU3RhY2tUcmFjZSIsIm1hdGNoIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/match.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/micro-task.js":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/micro-task.js ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ microTask: function() { return /* binding */ t; }\n/* harmony export */ });\nfunction t(e) {\n typeof queueMicrotask == \"function\" ? queueMicrotask(e) : Promise.resolve().then(e).catch((o)=>setTimeout(()=>{\n throw o;\n }));\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL21pY3JvLXRhc2suanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLFNBQVNBLEVBQUVDLENBQUM7SUFBRSxPQUFPQyxrQkFBZ0IsYUFBV0EsZUFBZUQsS0FBR0UsUUFBUUMsT0FBTyxHQUFHQyxJQUFJLENBQUNKLEdBQUdLLEtBQUssQ0FBQ0MsQ0FBQUEsSUFBR0MsV0FBVztZQUFLLE1BQU1EO1FBQUM7QUFBRztBQUF3QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC91dGlscy9taWNyby10YXNrLmpzP2U3YjgiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gdChlKXt0eXBlb2YgcXVldWVNaWNyb3Rhc2s9PVwiZnVuY3Rpb25cIj9xdWV1ZU1pY3JvdGFzayhlKTpQcm9taXNlLnJlc29sdmUoKS50aGVuKGUpLmNhdGNoKG89PnNldFRpbWVvdXQoKCk9Pnt0aHJvdyBvfSkpfWV4cG9ydHt0IGFzIG1pY3JvVGFza307XG4iXSwibmFtZXMiOlsidCIsImUiLCJxdWV1ZU1pY3JvdGFzayIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImNhdGNoIiwibyIsInNldFRpbWVvdXQiLCJtaWNyb1Rhc2siXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/micro-task.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/once.js":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/once.js ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ once: function() { return /* binding */ l; }\n/* harmony export */ });\nfunction l(r) {\n let e = {\n called: !1\n };\n return function() {\n for(var _len = arguments.length, t = new Array(_len), _key = 0; _key < _len; _key++){\n t[_key] = arguments[_key];\n }\n if (!e.called) return e.called = !0, r(...t);\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL29uY2UuanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLFNBQVNBLEVBQUVDLENBQUM7SUFBRSxJQUFJQyxJQUFFO1FBQUNDLFFBQU8sQ0FBQztJQUFDO0lBQUUsT0FBTTt5Q0FBSUM7WUFBQUE7O1FBQUssSUFBRyxDQUFDRixFQUFFQyxNQUFNLEVBQUMsT0FBT0QsRUFBRUMsTUFBTSxHQUFDLENBQUMsR0FBRUYsS0FBS0c7SUFBRTtBQUFDO0FBQW1CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL29uY2UuanM/NTY2ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBsKHIpe2xldCBlPXtjYWxsZWQ6ITF9O3JldHVybiguLi50KT0+e2lmKCFlLmNhbGxlZClyZXR1cm4gZS5jYWxsZWQ9ITAsciguLi50KX19ZXhwb3J0e2wgYXMgb25jZX07XG4iXSwibmFtZXMiOlsibCIsInIiLCJlIiwiY2FsbGVkIiwidCIsIm9uY2UiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/once.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/owner.js ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getOwnerDocument: function() { return /* binding */ u; }\n/* harmony export */ });\n/* harmony import */ var _env_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./env.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/env.js\");\n\nfunction u(r) {\n return _env_js__WEBPACK_IMPORTED_MODULE_0__.env.isServer ? null : r instanceof Node ? r.ownerDocument : r != null && r.hasOwnProperty(\"current\") && r.current instanceof Node ? r.current.ownerDocument : document;\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL293bmVyLmpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQStCO0FBQUEsU0FBU0UsRUFBRUMsQ0FBQztJQUFFLE9BQU9GLHdDQUFDQSxDQUFDRyxRQUFRLEdBQUMsT0FBS0QsYUFBYUUsT0FBS0YsRUFBRUcsYUFBYSxHQUFDSCxLQUFHLFFBQU1BLEVBQUVJLGNBQWMsQ0FBQyxjQUFZSixFQUFFSyxPQUFPLFlBQVlILE9BQUtGLEVBQUVLLE9BQU8sQ0FBQ0YsYUFBYSxHQUFDRztBQUFRO0FBQStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL293bmVyLmpzP2ZhNWYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0e2VudiBhcyBufWZyb20nLi9lbnYuanMnO2Z1bmN0aW9uIHUocil7cmV0dXJuIG4uaXNTZXJ2ZXI/bnVsbDpyIGluc3RhbmNlb2YgTm9kZT9yLm93bmVyRG9jdW1lbnQ6ciE9bnVsbCYmci5oYXNPd25Qcm9wZXJ0eShcImN1cnJlbnRcIikmJnIuY3VycmVudCBpbnN0YW5jZW9mIE5vZGU/ci5jdXJyZW50Lm93bmVyRG9jdW1lbnQ6ZG9jdW1lbnR9ZXhwb3J0e3UgYXMgZ2V0T3duZXJEb2N1bWVudH07XG4iXSwibmFtZXMiOlsiZW52IiwibiIsInUiLCJyIiwiaXNTZXJ2ZXIiLCJOb2RlIiwib3duZXJEb2N1bWVudCIsImhhc093blByb3BlcnR5IiwiY3VycmVudCIsImRvY3VtZW50IiwiZ2V0T3duZXJEb2N1bWVudCJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/owner.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/platform.js":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/platform.js ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isAndroid: function() { return /* binding */ i; },\n/* harmony export */ isIOS: function() { return /* binding */ t; },\n/* harmony export */ isMobile: function() { return /* binding */ n; }\n/* harmony export */ });\nfunction t() {\n return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0;\n}\nfunction i() {\n return /Android/gi.test(window.navigator.userAgent);\n}\nfunction n() {\n return t() || i();\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL3BsYXRmb3JtLmpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLFNBQVNBO0lBQUksT0FBTSxXQUFXQyxJQUFJLENBQUNDLE9BQU9DLFNBQVMsQ0FBQ0MsUUFBUSxLQUFHLFFBQVFILElBQUksQ0FBQ0MsT0FBT0MsU0FBUyxDQUFDQyxRQUFRLEtBQUdGLE9BQU9DLFNBQVMsQ0FBQ0UsY0FBYyxHQUFDO0FBQUM7QUFBQyxTQUFTQztJQUFJLE9BQU0sWUFBWUwsSUFBSSxDQUFDQyxPQUFPQyxTQUFTLENBQUNJLFNBQVM7QUFBQztBQUFDLFNBQVNDO0lBQUksT0FBT1IsT0FBS007QUFBRztBQUFpRCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC91dGlscy9wbGF0Zm9ybS5qcz9kODZkIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHQoKXtyZXR1cm4vaVBob25lL2dpLnRlc3Qod2luZG93Lm5hdmlnYXRvci5wbGF0Zm9ybSl8fC9NYWMvZ2kudGVzdCh3aW5kb3cubmF2aWdhdG9yLnBsYXRmb3JtKSYmd2luZG93Lm5hdmlnYXRvci5tYXhUb3VjaFBvaW50cz4wfWZ1bmN0aW9uIGkoKXtyZXR1cm4vQW5kcm9pZC9naS50ZXN0KHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KX1mdW5jdGlvbiBuKCl7cmV0dXJuIHQoKXx8aSgpfWV4cG9ydHtpIGFzIGlzQW5kcm9pZCx0IGFzIGlzSU9TLG4gYXMgaXNNb2JpbGV9O1xuIl0sIm5hbWVzIjpbInQiLCJ0ZXN0Iiwid2luZG93IiwibmF2aWdhdG9yIiwicGxhdGZvcm0iLCJtYXhUb3VjaFBvaW50cyIsImkiLCJ1c2VyQWdlbnQiLCJuIiwiaXNBbmRyb2lkIiwiaXNJT1MiLCJpc01vYmlsZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/platform.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/render.js":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/render.js ***!
|
||
\*************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RenderFeatures: function() { return /* binding */ O; },\n/* harmony export */ RenderStrategy: function() { return /* binding */ M; },\n/* harmony export */ compact: function() { return /* binding */ m; },\n/* harmony export */ forwardRefWithAs: function() { return /* binding */ I; },\n/* harmony export */ mergeProps: function() { return /* binding */ D; },\n/* harmony export */ render: function() { return /* binding */ H; },\n/* harmony export */ useMergeRefsFn: function() { return /* binding */ U; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _class_names_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./class-names.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/class-names.js\");\n/* harmony import */ var _match_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./match.js */ \"(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/match.js\");\n\n\n\nvar O = ((a)=>(a[a.None = 0] = \"None\", a[a.RenderStrategy = 1] = \"RenderStrategy\", a[a.Static = 2] = \"Static\", a))(O || {}), M = ((e)=>(e[e.Unmount = 0] = \"Unmount\", e[e.Hidden = 1] = \"Hidden\", e))(M || {});\nfunction H(param) {\n let { ourProps: r, theirProps: n, slot: e, defaultTag: a, features: s, visible: t = !0, name: l, mergeRefs: i } = param;\n i = i != null ? i : A;\n let o = N(n, r);\n if (t) return b(o, e, a, l, i);\n let y = s != null ? s : 0;\n if (y & 2) {\n let { static: f = !1, ...u } = o;\n if (f) return b(u, e, a, l, i);\n }\n if (y & 1) {\n let { unmount: f = !0, ...u } = o;\n return (0,_match_js__WEBPACK_IMPORTED_MODULE_1__.match)(f ? 0 : 1, {\n [0] () {\n return null;\n },\n [1] () {\n return b({\n ...u,\n hidden: !0,\n style: {\n display: \"none\"\n }\n }, e, a, l, i);\n }\n });\n }\n return b(o, e, a, l, i);\n}\n_c = H;\nfunction b(r) {\n let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, e = arguments.length > 2 ? arguments[2] : void 0, a = arguments.length > 3 ? arguments[3] : void 0, s = arguments.length > 4 ? arguments[4] : void 0;\n let { as: t = e, children: l, refName: i = \"ref\", ...o } = h(r, [\n \"unmount\",\n \"static\"\n ]), y = r.ref !== void 0 ? {\n [i]: r.ref\n } : {}, f = typeof l == \"function\" ? l(n) : l;\n \"className\" in o && o.className && typeof o.className == \"function\" && (o.className = o.className(n)), o[\"aria-labelledby\"] && o[\"aria-labelledby\"] === o.id && (o[\"aria-labelledby\"] = void 0);\n let u = {};\n if (n) {\n let d = !1, p = [];\n for (let [c, T] of Object.entries(n))typeof T == \"boolean\" && (d = !0), T === !0 && p.push(c.replace(/([A-Z])/g, (g)=>`-${g.toLowerCase()}`));\n if (d) {\n u[\"data-headlessui-state\"] = p.join(\" \");\n for (let c of p)u[`data-${c}`] = \"\";\n }\n }\n if (t === react__WEBPACK_IMPORTED_MODULE_0__.Fragment && (Object.keys(m(o)).length > 0 || Object.keys(m(u)).length > 0)) if (!/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(f) || Array.isArray(f) && f.length > 1) {\n if (Object.keys(m(o)).length > 0) throw new Error([\n 'Passing props on \"Fragment\"!',\n \"\",\n `The current component <${a} /> is rendering a \"Fragment\".`,\n \"However we need to passthrough the following props:\",\n Object.keys(m(o)).concat(Object.keys(m(u))).map((d)=>` - ${d}`).join(`\n`),\n \"\",\n \"You can apply a few solutions:\",\n [\n 'Add an `as=\"...\"` prop, to ensure that we render an actual element instead of a \"Fragment\".',\n \"Render a single element as the child so that we can forward the props onto that element.\"\n ].map((d)=>` - ${d}`).join(`\n`)\n ].join(`\n`));\n } else {\n let d = f.props, p = d == null ? void 0 : d.className, c = typeof p == \"function\" ? function() {\n for(var _len = arguments.length, F = new Array(_len), _key = 0; _key < _len; _key++){\n F[_key] = arguments[_key];\n }\n return (0,_class_names_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(p(...F), o.className);\n } : (0,_class_names_js__WEBPACK_IMPORTED_MODULE_2__.classNames)(p, o.className), T = c ? {\n className: c\n } : {}, g = N(f.props, m(h(o, [\n \"ref\"\n ])));\n for(let F in u)F in g && delete u[F];\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(f, Object.assign({}, g, u, y, {\n ref: s(f.ref, y.ref)\n }, T));\n }\n return /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(t, Object.assign({}, h(o, [\n \"ref\"\n ]), t !== react__WEBPACK_IMPORTED_MODULE_0__.Fragment && y, t !== react__WEBPACK_IMPORTED_MODULE_0__.Fragment && u), f);\n}\nfunction U() {\n let r = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)([]), n = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n for (let a of r.current)a != null && (typeof a == \"function\" ? a(e) : a.current = e);\n }, []);\n return function() {\n for(var _len = arguments.length, e = new Array(_len), _key = 0; _key < _len; _key++){\n e[_key] = arguments[_key];\n }\n if (!e.every((a)=>a == null)) return r.current = e, n;\n };\n}\n_c1 = U;\nfunction A() {\n for(var _len = arguments.length, r = new Array(_len), _key = 0; _key < _len; _key++){\n r[_key] = arguments[_key];\n }\n return r.every((n)=>n == null) ? void 0 : (n)=>{\n for (let e of r)e != null && (typeof e == \"function\" ? e(n) : e.current = n);\n };\n}\n_c2 = A;\nfunction N() {\n for(var _len = arguments.length, r = new Array(_len), _key = 0; _key < _len; _key++){\n r[_key] = arguments[_key];\n }\n var a;\n if (r.length === 0) return {};\n if (r.length === 1) return r[0];\n let n = {}, e = {};\n for (let s of r)for(let t in s)t.startsWith(\"on\") && typeof s[t] == \"function\" ? ((a = e[t]) != null || (e[t] = []), e[t].push(s[t])) : n[t] = s[t];\n if (n.disabled || n[\"aria-disabled\"]) for(let s in e)/^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(s) && (e[s] = [\n (t)=>{\n var l;\n return (l = t == null ? void 0 : t.preventDefault) == null ? void 0 : l.call(t);\n }\n ]);\n for(let s in e)Object.assign(n, {\n [s] (t) {\n for(var _len = arguments.length, l = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){\n l[_key - 1] = arguments[_key];\n }\n let i = e[s];\n for (let o of i){\n if ((t instanceof Event || (t == null ? void 0 : t.nativeEvent) instanceof Event) && t.defaultPrevented) return;\n o(t, ...l);\n }\n }\n });\n return n;\n}\n_c3 = N;\nfunction D() {\n for(var _len = arguments.length, r = new Array(_len), _key = 0; _key < _len; _key++){\n r[_key] = arguments[_key];\n }\n var a;\n if (r.length === 0) return {};\n if (r.length === 1) return r[0];\n let n = {}, e = {};\n for (let s of r)for(let t in s)t.startsWith(\"on\") && typeof s[t] == \"function\" ? ((a = e[t]) != null || (e[t] = []), e[t].push(s[t])) : n[t] = s[t];\n for(let s in e)Object.assign(n, {\n [s] () {\n for(var _len = arguments.length, t = new Array(_len), _key = 0; _key < _len; _key++){\n t[_key] = arguments[_key];\n }\n let l = e[s];\n for (let i of l)i == null || i(...t);\n }\n });\n return n;\n}\n_c4 = D;\nfunction I(r) {\n var n;\n return Object.assign(/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(r), {\n displayName: (n = r.displayName) != null ? n : r.name\n });\n}\n_c5 = I;\nfunction m(r) {\n let n = Object.assign({}, r);\n for(let e in n)n[e] === void 0 && delete n[e];\n return n;\n}\nfunction h(r) {\n let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : [];\n let e = Object.assign({}, r);\n for (let a of n)a in e && delete e[a];\n return e;\n}\n\nvar _c, _c1, _c2, _c3, _c4, _c5;\n$RefreshReg$(_c, \"H\");\n$RefreshReg$(_c1, \"U\");\n$RefreshReg$(_c2, \"A\");\n$RefreshReg$(_c3, \"N\");\n$RefreshReg$(_c4, \"D\");\n$RefreshReg$(_c5, \"I\");\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL3JlbmRlci5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQXVJO0FBQThDO0FBQW1DO0FBQUEsSUFBSWtCLElBQUUsQ0FBQ0MsQ0FBQUEsSUFBSUEsQ0FBQUEsQ0FBQyxDQUFDQSxFQUFFQyxJQUFJLEdBQUMsRUFBRSxHQUFDLFFBQU9ELENBQUMsQ0FBQ0EsRUFBRUUsY0FBYyxHQUFDLEVBQUUsR0FBQyxrQkFBaUJGLENBQUMsQ0FBQ0EsRUFBRUcsTUFBTSxHQUFDLEVBQUUsR0FBQyxVQUFTSCxDQUFBQSxDQUFDLEVBQUdELEtBQUcsQ0FBQyxJQUFHSyxJQUFFLENBQUNDLENBQUFBLElBQUlBLENBQUFBLENBQUMsQ0FBQ0EsRUFBRUMsT0FBTyxHQUFDLEVBQUUsR0FBQyxXQUFVRCxDQUFDLENBQUNBLEVBQUVFLE1BQU0sR0FBQyxFQUFFLEdBQUMsVUFBU0YsQ0FBQUEsQ0FBQyxFQUFHRCxLQUFHLENBQUM7QUFBRyxTQUFTSSxFQUFFLEtBQXdGO1FBQXhGLEVBQUNDLFVBQVNDLENBQUMsRUFBQ0MsWUFBV0MsQ0FBQyxFQUFDQyxNQUFLUixDQUFDLEVBQUNTLFlBQVdkLENBQUMsRUFBQ2UsVUFBU0MsQ0FBQyxFQUFDQyxTQUFRQyxJQUFFLENBQUMsQ0FBQyxFQUFDQyxNQUFLQyxDQUFDLEVBQUNDLFdBQVVDLENBQUMsRUFBQyxHQUF4RjtJQUEwRkEsSUFBRUEsS0FBRyxPQUFLQSxJQUFFQztJQUFFLElBQUlDLElBQUVDLEVBQUViLEdBQUVGO0lBQUcsSUFBR1EsR0FBRSxPQUFPUSxFQUFFRixHQUFFbkIsR0FBRUwsR0FBRW9CLEdBQUVFO0lBQUcsSUFBSUssSUFBRVgsS0FBRyxPQUFLQSxJQUFFO0lBQUUsSUFBR1csSUFBRSxHQUFFO1FBQUMsSUFBRyxFQUFDQyxRQUFPQyxJQUFFLENBQUMsQ0FBQyxFQUFDLEdBQUdDLEdBQUUsR0FBQ047UUFB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QUFDLEdBQUVyRDtJQUFHLEtBQUksSUFBSVYsS0FBS1ksRUFBRVosS0FBS0ssS0FBRyxPQUFPQSxDQUFDLENBQUNMLEVBQUU7SUFBQyxPQUFPSztBQUFDO0FBQW9JIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL3JlbmRlci5qcz9kZjM2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydHtGcmFnbWVudCBhcyBSLGNsb25lRWxlbWVudCBhcyB4LGNyZWF0ZUVsZW1lbnQgYXMgRSxmb3J3YXJkUmVmIGFzIGosaXNWYWxpZEVsZW1lbnQgYXMgUyx1c2VDYWxsYmFjayBhcyB2LHVzZVJlZiBhcyB3fWZyb21cInJlYWN0XCI7aW1wb3J0e2NsYXNzTmFtZXMgYXMgUH1mcm9tJy4vY2xhc3MtbmFtZXMuanMnO2ltcG9ydHttYXRjaCBhcyBrfWZyb20nLi9tYXRjaC5qcyc7dmFyIE89KGE9PihhW2EuTm9uZT0wXT1cIk5vbmVcIixhW2EuUmVuZGVyU3RyYXRlZ3k9MV09XCJSZW5kZXJTdHJhdGVneVwiLGFbYS5TdGF0aWM9Ml09XCJTdGF0aWNcIixhKSkoT3x8e30pLE09KGU9PihlW2UuVW5tb3VudD0wXT1cIlVubW91bnRcIixlW2UuSGlkZGVuPTFdPVwiSGlkZGVuXCIsZSkpKE18fHt9KTtmdW5jdGlvbiBIKHtvdXJQcm9wczpyLHRoZWlyUHJvcHM6bixzbG90OmUsZGVmYXVsdFRhZzphLGZlYXR1cmVzOnMsdmlzaWJsZTp0PSEwLG5hbWU6bCxtZXJnZVJlZnM6aX0pe2k9aSE9bnVsbD9pOkE7bGV0IG89TihuLHIpO2lmKHQpcmV0dXJuIGIobyxlLGEsbCxpKTtsZXQgeT1zIT1udWxsP3M6MDtpZih5JjIpe2xldHtzdGF0aWM6Zj0hMSwuLi51fT1vO2lmKGYpcmV0dXJuIGIodSxlLGEsbCxpKX1pZih5JjEpe2xldHt1bm1vdW50OmY9ITAsLi4udX09bztyZXR1cm4gayhmPzA6MSx7WzBdKCl7cmV0dXJuIG51bGx9LFsxXSgpe3JldHVybiBiKHsuLi51LGhpZGRlbjohMCxzdHlsZTp7ZGlzcGxheTpcIm5vbmVcIn19LGUsYSxsLGkpfX0pfXJldHVybiBiKG8sZSxhLGwsaSl9ZnVuY3Rpb24gYihyLG49e30sZSxhLHMpe2xldHthczp0PWUsY2hpbGRyZW46bCxyZWZOYW1lOmk9XCJyZWZcIiwuLi5vfT1oKHIsW1widW5tb3VudFwiLFwic3RhdGljXCJdKSx5PXIucmVmIT09dm9pZCAwP3tbaV06ci5yZWZ9Ont9LGY9dHlwZW9mIGw9PVwiZnVuY3Rpb25cIj9sKG4pOmw7XCJjbGFzc05hbWVcImluIG8mJm8uY2xhc3NOYW1lJiZ0eXBlb2Ygby5jbGFzc05hbWU9PVwiZnVuY3Rpb25cIiYmKG8uY2xhc3NOYW1lPW8uY2xhc3NOYW1lKG4pKSxvW1wiYXJpYS1sYWJlbGxlZGJ5XCJdJiZvW1wiYXJpYS1sYWJlbGxlZGJ5XCJdPT09by5pZCYmKG9bXCJhcmlhLWxhYmVsbGVkYnlcIl09dm9pZCAwKTtsZXQgdT17fTtpZihuKXtsZXQgZD0hMSxwPVtdO2ZvcihsZXRbYyxUXW9mIE9iamVjdC5lbnRyaWVzKG4pKXR5cGVvZiBUPT1cImJvb2xlYW5cIiYmKGQ9ITApLFQ9PT0hMCYmcC5wdXNoKGMucmVwbGFjZSgvKFtBLVpdKS9nLGc9PmAtJHtnLnRvTG93ZXJDYXNlKCl9YCkpO2lmKGQpe3VbXCJkYXRhLWhlYWRsZXNzdWktc3RhdGVcIl09cC5qb2luKFwiIFwiKTtmb3IobGV0IGMgb2YgcCl1W2BkYXRhLSR7Y31gXT1cIlwifX1pZih0PT09UiYmKE9iamVjdC5rZXlzKG0obykpLmxlbmd0aD4wfHxPYmplY3Qua2V5cyhtKHUpKS5sZW5ndGg+MCkpaWYoIVMoZil8fEFycmF5LmlzQXJyYXkoZikmJmYubGVuZ3RoPjEpe2lmKE9iamVjdC5rZXlzKG0obykpLmxlbmd0aD4wKXRocm93IG5ldyBFcnJvcihbJ1Bhc3NpbmcgcHJvcHMgb24gXCJGcmFnbWVudFwiIScsXCJcIixgVGhlIGN1cnJlbnQgY29tcG9uZW50IDwke2F9IC8+IGlzIHJlbmRlcmluZyBhIFwiRnJhZ21lbnRcIi5gLFwiSG93ZXZlciB3ZSBuZWVkIHRvIHBhc3N0aHJvdWdoIHRoZSBmb2xsb3dpbmcgcHJvcHM6XCIsT2JqZWN0LmtleXMobShvKSkuY29uY2F0KE9iamVjdC5rZXlzKG0odSkpKS5tYXAoZD0+YCAgLSAke2R9YCkuam9pbihgXG5gKSxcIlwiLFwiWW91IGNhbiBhcHBseSBhIGZldyBzb2x1dGlvbnM6XCIsWydBZGQgYW4gYGFzPVwiLi4uXCJgIHByb3AsIHRvIGVuc3VyZSB0aGF0IHdlIHJlbmRlciBhbiBhY3R1YWwgZWxlbWVudCBpbnN0ZWFkIG9mIGEgXCJGcmFnbWVudFwiLicsXCJSZW5kZXIgYSBzaW5nbGUgZWxlbWVudCBhcyB0aGUgY2hpbGQgc28gdGhhdCB3ZSBjYW4gZm9yd2FyZCB0aGUgcHJvcHMgb250byB0aGF0IGVsZW1lbnQuXCJdLm1hcChkPT5gICAtICR7ZH1gKS5qb2luKGBcbmApXS5qb2luKGBcbmApKX1lbHNle2xldCBkPWYucHJvcHMscD1kPT1udWxsP3ZvaWQgMDpkLmNsYXNzTmFtZSxjPXR5cGVvZiBwPT1cImZ1bmN0aW9uXCI/KC4uLkYpPT5QKHAoLi4uRiksby5jbGFzc05hbWUpOlAocCxvLmNsYXNzTmFtZSksVD1jP3tjbGFzc05hbWU6Y306e30sZz1OKGYucHJvcHMsbShoKG8sW1wicmVmXCJdKSkpO2ZvcihsZXQgRiBpbiB1KUYgaW4gZyYmZGVsZXRlIHVbRl07cmV0dXJuIHgoZixPYmplY3QuYXNzaWduKHt9LGcsdSx5LHtyZWY6cyhmLnJlZix5LnJlZil9LFQpKX1yZXR1cm4gRSh0LE9iamVjdC5hc3NpZ24oe30saChvLFtcInJlZlwiXSksdCE9PVImJnksdCE9PVImJnUpLGYpfWZ1bmN0aW9uIFUoKXtsZXQgcj13KFtdKSxuPXYoZT0+e2ZvcihsZXQgYSBvZiByLmN1cnJlbnQpYSE9bnVsbCYmKHR5cGVvZiBhPT1cImZ1bmN0aW9uXCI/YShlKTphLmN1cnJlbnQ9ZSl9LFtdKTtyZXR1cm4oLi4uZSk9PntpZighZS5ldmVyeShhPT5hPT1udWxsKSlyZXR1cm4gci5jdXJyZW50PWUsbn19ZnVuY3Rpb24gQSguLi5yKXtyZXR1cm4gci5ldmVyeShuPT5uPT1udWxsKT92b2lkIDA6bj0+e2ZvcihsZXQgZSBvZiByKWUhPW51bGwmJih0eXBlb2YgZT09XCJmdW5jdGlvblwiP2Uobik6ZS5jdXJyZW50PW4pfX1mdW5jdGlvbiBOKC4uLnIpe3ZhciBhO2lmKHIubGVuZ3RoPT09MClyZXR1cm57fTtpZihyLmxlbmd0aD09PTEpcmV0dXJuIHJbMF07bGV0IG49e30sZT17fTtmb3IobGV0IHMgb2Ygcilmb3IobGV0IHQgaW4gcyl0LnN0YXJ0c1dpdGgoXCJvblwiKSYmdHlwZW9mIHNbdF09PVwiZnVuY3Rpb25cIj8oKGE9ZVt0XSkhPW51bGx8fChlW3RdPVtdKSxlW3RdLnB1c2goc1t0XSkpOm5bdF09c1t0XTtpZihuLmRpc2FibGVkfHxuW1wiYXJpYS1kaXNhYmxlZFwiXSlmb3IobGV0IHMgaW4gZSkvXihvbig/OkNsaWNrfFBvaW50ZXJ8TW91c2V8S2V5KSg/OkRvd258VXB8UHJlc3MpPykkLy50ZXN0KHMpJiYoZVtzXT1bdD0+e3ZhciBsO3JldHVybihsPXQ9PW51bGw/dm9pZCAwOnQucHJldmVudERlZmF1bHQpPT1udWxsP3ZvaWQgMDpsLmNhbGwodCl9XSk7Zm9yKGxldCBzIGluIGUpT2JqZWN0LmFzc2lnbihuLHtbc10odCwuLi5sKXtsZXQgaT1lW3NdO2ZvcihsZXQgbyBvZiBpKXtpZigodCBpbnN0YW5jZW9mIEV2ZW50fHwodD09bnVsbD92b2lkIDA6dC5uYXRpdmVFdmVudClpbnN0YW5jZW9mIEV2ZW50KSYmdC5kZWZhdWx0UHJldmVudGVkKXJldHVybjtvKHQsLi4ubCl9fX0pO3JldHVybiBufWZ1bmN0aW9uIEQoLi4ucil7dmFyIGE7aWYoci5sZW5ndGg9PT0wKXJldHVybnt9O2lmKHIubGVuZ3RoPT09MSlyZXR1cm4gclswXTtsZXQgbj17fSxlPXt9O2ZvcihsZXQgcyBvZiByKWZvcihsZXQgdCBpbiBzKXQuc3RhcnRzV2l0aChcIm9uXCIpJiZ0eXBlb2Ygc1t0XT09XCJmdW5jdGlvblwiPygoYT1lW3RdKSE9bnVsbHx8KGVbdF09W10pLGVbdF0ucHVzaChzW3RdKSk6blt0XT1zW3RdO2ZvcihsZXQgcyBpbiBlKU9iamVjdC5hc3NpZ24obix7W3NdKC4uLnQpe2xldCBsPWVbc107Zm9yKGxldCBpIG9mIGwpaT09bnVsbHx8aSguLi50KX19KTtyZXR1cm4gbn1mdW5jdGlvbiBJKHIpe3ZhciBuO3JldHVybiBPYmplY3QuYXNzaWduKGoocikse2Rpc3BsYXlOYW1lOihuPXIuZGlzcGxheU5hbWUpIT1udWxsP246ci5uYW1lfSl9ZnVuY3Rpb24gbShyKXtsZXQgbj1PYmplY3QuYXNzaWduKHt9LHIpO2ZvcihsZXQgZSBpbiBuKW5bZV09PT12b2lkIDAmJmRlbGV0ZSBuW2VdO3JldHVybiBufWZ1bmN0aW9uIGgocixuPVtdKXtsZXQgZT1PYmplY3QuYXNzaWduKHt9LHIpO2ZvcihsZXQgYSBvZiBuKWEgaW4gZSYmZGVsZXRlIGVbYV07cmV0dXJuIGV9ZXhwb3J0e08gYXMgUmVuZGVyRmVhdHVyZXMsTSBhcyBSZW5kZXJTdHJhdGVneSxtIGFzIGNvbXBhY3QsSSBhcyBmb3J3YXJkUmVmV2l0aEFzLEQgYXMgbWVyZ2VQcm9wcyxIIGFzIHJlbmRlcixVIGFzIHVzZU1lcmdlUmVmc0ZufTtcbiJdLCJuYW1lcyI6WyJGcmFnbWVudCIsIlIiLCJjbG9uZUVsZW1lbnQiLCJ4IiwiY3JlYXRlRWxlbWVudCIsIkUiLCJmb3J3YXJkUmVmIiwiaiIsImlzVmFsaWRFbGVtZW50IiwiUyIsInVzZUNhbGxiYWNrIiwidiIsInVzZVJlZiIsInciLCJjbGFzc05hbWVzIiwiUCIsIm1hdGNoIiwiayIsIk8iLCJhIiwiTm9uZSIsIlJlbmRlclN0cmF0ZWd5IiwiU3RhdGljIiwiTSIsImUiLCJVbm1vdW50IiwiSGlkZGVuIiwiSCIsIm91clByb3BzIiwiciIsInRoZWlyUHJvcHMiLCJuIiwic2xvdCIsImRlZmF1bHRUYWciLCJmZWF0dXJlcyIsInMiLCJ2aXNpYmxlIiwidCIsIm5hbWUiLCJsIiwibWVyZ2VSZWZzIiwiaSIsIkEiLCJvIiwiTiIsImIiLCJ5Iiwic3RhdGljIiwiZiIsInUiLCJ1bm1vdW50IiwiaGlkZGVuIiwic3R5bGUiLCJkaXNwbGF5IiwiYXMiLCJjaGlsZHJlbiIsInJlZk5hbWUiLCJoIiwicmVmIiwiY2xhc3NOYW1lIiwiaWQiLCJkIiwicCIsImMiLCJUIiwiT2JqZWN0IiwiZW50cmllcyIsInB1c2giLCJyZXBsYWNlIiwiZyIsInRvTG93ZXJDYXNlIiwiam9pbiIsImtleXMiLCJtIiwibGVuZ3RoIiwiQXJyYXkiLCJpc0FycmF5IiwiRXJyb3IiLCJjb25jYXQiLCJtYXAiLCJwcm9wcyIsIkYiLCJhc3NpZ24iLCJVIiwiY3VycmVudCIsImV2ZXJ5Iiwic3RhcnRzV2l0aCIsImRpc2FibGVkIiwidGVzdCIsInByZXZlbnREZWZhdWx0IiwiY2FsbCIsIkV2ZW50IiwibmF0aXZlRXZlbnQiLCJkZWZhdWx0UHJldmVudGVkIiwiRCIsIkkiLCJkaXNwbGF5TmFtZSIsIlJlbmRlckZlYXR1cmVzIiwiY29tcGFjdCIsImZvcndhcmRSZWZXaXRoQXMiLCJtZXJnZVByb3BzIiwicmVuZGVyIiwidXNlTWVyZ2VSZWZzRm4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/render.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/store.js":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/@headlessui/react/dist/utils/store.js ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createStore: function() { return /* binding */ a; }\n/* harmony export */ });\nfunction a(o, r) {\n let t = o(), n = new Set;\n return {\n getSnapshot () {\n return t;\n },\n subscribe (e) {\n return n.add(e), ()=>n.delete(e);\n },\n dispatch (e) {\n for(var _len = arguments.length, s = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){\n s[_key - 1] = arguments[_key];\n }\n let i = r[e].call(t, ...s);\n i && (t = i, n.forEach((c)=>c()));\n }\n };\n}\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AaGVhZGxlc3N1aS9yZWFjdC9kaXN0L3V0aWxzL3N0b3JlLmpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSxTQUFTQSxFQUFFQyxDQUFDLEVBQUNDLENBQUM7SUFBRSxJQUFJQyxJQUFFRixLQUFJRyxJQUFFLElBQUlDO0lBQUksT0FBTTtRQUFDQztZQUFjLE9BQU9IO1FBQUM7UUFBRUksV0FBVUMsQ0FBQztZQUFFLE9BQU9KLEVBQUVLLEdBQUcsQ0FBQ0QsSUFBRyxJQUFJSixFQUFFTSxNQUFNLENBQUNGO1FBQUU7UUFBRUcsVUFBU0gsQ0FBQztZQUFDO2dCQUFHSSxFQUFILDJCQUFJOztZQUFFLElBQUlDLElBQUVYLENBQUMsQ0FBQ00sRUFBRSxDQUFDTSxJQUFJLENBQUNYLE1BQUtTO1lBQUdDLEtBQUlWLENBQUFBLElBQUVVLEdBQUVULEVBQUVXLE9BQU8sQ0FBQ0MsQ0FBQUEsSUFBR0EsSUFBRztRQUFFO0lBQUM7QUFBQztBQUEwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQGhlYWRsZXNzdWkvcmVhY3QvZGlzdC91dGlscy9zdG9yZS5qcz9hNmNiIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGEobyxyKXtsZXQgdD1vKCksbj1uZXcgU2V0O3JldHVybntnZXRTbmFwc2hvdCgpe3JldHVybiB0fSxzdWJzY3JpYmUoZSl7cmV0dXJuIG4uYWRkKGUpLCgpPT5uLmRlbGV0ZShlKX0sZGlzcGF0Y2goZSwuLi5zKXtsZXQgaT1yW2VdLmNhbGwodCwuLi5zKTtpJiYodD1pLG4uZm9yRWFjaChjPT5jKCkpKX19fWV4cG9ydHthIGFzIGNyZWF0ZVN0b3JlfTtcbiJdLCJuYW1lcyI6WyJhIiwibyIsInIiLCJ0IiwibiIsIlNldCIsImdldFNuYXBzaG90Iiwic3Vic2NyaWJlIiwiZSIsImFkZCIsImRlbGV0ZSIsImRpc3BhdGNoIiwicyIsImkiLCJjYWxsIiwiZm9yRWFjaCIsImMiLCJjcmVhdGVTdG9yZSJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@headlessui/react/dist/utils/store.js\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/focus/dist/useFocusRing.mjs":
|
||
/*!**************************************************************!*\
|
||
!*** ./node_modules/@react-aria/focus/dist/useFocusRing.mjs ***!
|
||
\**************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useFocusRing: function() { return /* binding */ $f7dceffc5ad7768b$export$4e328f61c538687f; }\n/* harmony export */ });\n/* harmony import */ var _react_aria_interactions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @react-aria/interactions */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusVisible.mjs\");\n/* harmony import */ var _react_aria_interactions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @react-aria/interactions */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocus.mjs\");\n/* harmony import */ var _react_aria_interactions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @react-aria/interactions */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusWithin.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n\n\n\nfunction $f7dceffc5ad7768b$export$4e328f61c538687f(props = {}) {\n let { autoFocus: autoFocus = false, isTextInput: isTextInput, within: within } = props;\n let state = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n isFocused: false,\n isFocusVisible: autoFocus || (0, _react_aria_interactions__WEBPACK_IMPORTED_MODULE_1__.isFocusVisible)()\n });\n let [isFocused, setFocused] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n let [isFocusVisibleState, setFocusVisible] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)(()=>state.current.isFocused && state.current.isFocusVisible);\n let updateState = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(()=>setFocusVisible(state.current.isFocused && state.current.isFocusVisible), []);\n let onFocusChange = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((isFocused)=>{\n state.current.isFocused = isFocused;\n setFocused(isFocused);\n updateState();\n }, [\n updateState\n ]);\n (0, _react_aria_interactions__WEBPACK_IMPORTED_MODULE_1__.useFocusVisibleListener)((isFocusVisible)=>{\n state.current.isFocusVisible = isFocusVisible;\n updateState();\n }, [], {\n isTextInput: isTextInput\n });\n let { focusProps: focusProps } = (0, _react_aria_interactions__WEBPACK_IMPORTED_MODULE_2__.useFocus)({\n isDisabled: within,\n onFocusChange: onFocusChange\n });\n let { focusWithinProps: focusWithinProps } = (0, _react_aria_interactions__WEBPACK_IMPORTED_MODULE_3__.useFocusWithin)({\n isDisabled: !within,\n onFocusWithinChange: onFocusChange\n });\n return {\n isFocused: isFocused,\n isFocusVisible: isFocusVisibleState,\n focusProps: within ? focusWithinProps : focusProps\n };\n}\n\n\n\n//# sourceMappingURL=useFocusRing.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9mb2N1cy9kaXN0L3VzZUZvY3VzUmluZy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBa047QUFDcEc7Ozs7QUFJOUcsNkRBQTZEO0FBQzdELFVBQVUseUVBQXlFO0FBQ25GLG9CQUFvQix5Q0FBYTtBQUNqQztBQUNBLHlDQUF5QyxvRUFBcUI7QUFDOUQsS0FBSztBQUNMLHNDQUFzQywyQ0FBZTtBQUNyRCxxREFBcUQsMkNBQWU7QUFDcEUsMEJBQTBCLDhDQUFrQjtBQUM1Qyw0QkFBNEIsOENBQWtCO0FBQzlDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsUUFBUSw2RUFBOEI7QUFDdEM7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLEtBQUs7QUFDTCxVQUFVLHlCQUF5QixNQUFNLDhEQUFlO0FBQ3hEO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsVUFBVSxxQ0FBcUMsTUFBTSxvRUFBcUI7QUFDMUU7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdtRTtBQUNuRSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQHJlYWN0LWFyaWEvZm9jdXMvZGlzdC91c2VGb2N1c1JpbmcubWpzP2FjNWMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc0ZvY3VzVmlzaWJsZSBhcyAkaXNXRTUkaXNGb2N1c1Zpc2libGUsIHVzZUZvY3VzVmlzaWJsZUxpc3RlbmVyIGFzICRpc1dFNSR1c2VGb2N1c1Zpc2libGVMaXN0ZW5lciwgdXNlRm9jdXMgYXMgJGlzV0U1JHVzZUZvY3VzLCB1c2VGb2N1c1dpdGhpbiBhcyAkaXNXRTUkdXNlRm9jdXNXaXRoaW59IGZyb20gXCJAcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnNcIjtcbmltcG9ydCB7dXNlUmVmIGFzICRpc1dFNSR1c2VSZWYsIHVzZVN0YXRlIGFzICRpc1dFNSR1c2VTdGF0ZSwgdXNlQ2FsbGJhY2sgYXMgJGlzV0U1JHVzZUNhbGxiYWNrfSBmcm9tIFwicmVhY3RcIjtcblxuXG5cbmZ1bmN0aW9uICRmN2RjZWZmYzVhZDc3NjhiJGV4cG9ydCQ0ZTMyOGY2MWM1Mzg2ODdmKHByb3BzID0ge30pIHtcbiAgICBsZXQgeyBhdXRvRm9jdXM6IGF1dG9Gb2N1cyA9IGZhbHNlLCBpc1RleHRJbnB1dDogaXNUZXh0SW5wdXQsIHdpdGhpbjogd2l0aGluIH0gPSBwcm9wcztcbiAgICBsZXQgc3RhdGUgPSAoMCwgJGlzV0U1JHVzZVJlZikoe1xuICAgICAgICBpc0ZvY3VzZWQ6IGZhbHNlLFxuICAgICAgICBpc0ZvY3VzVmlzaWJsZTogYXV0b0ZvY3VzIHx8ICgwLCAkaXNXRTUkaXNGb2N1c1Zpc2libGUpKClcbiAgICB9KTtcbiAgICBsZXQgW2lzRm9jdXNlZCwgc2V0Rm9jdXNlZF0gPSAoMCwgJGlzV0U1JHVzZVN0YXRlKShmYWxzZSk7XG4gICAgbGV0IFtpc0ZvY3VzVmlzaWJsZVN0YXRlLCBzZXRGb2N1c1Zpc2libGVdID0gKDAsICRpc1dFNSR1c2VTdGF0ZSkoKCk9PnN0YXRlLmN1cnJlbnQuaXNGb2N1c2VkICYmIHN0YXRlLmN1cnJlbnQuaXNGb2N1c1Zpc2libGUpO1xuICAgIGxldCB1cGRhdGVTdGF0ZSA9ICgwLCAkaXNXRTUkdXNlQ2FsbGJhY2spKCgpPT5zZXRGb2N1c1Zpc2libGUoc3RhdGUuY3VycmVudC5pc0ZvY3VzZWQgJiYgc3RhdGUuY3VycmVudC5pc0ZvY3VzVmlzaWJsZSksIFtdKTtcbiAgICBsZXQgb25Gb2N1c0NoYW5nZSA9ICgwLCAkaXNXRTUkdXNlQ2FsbGJhY2spKChpc0ZvY3VzZWQpPT57XG4gICAgICAgIHN0YXRlLmN1cnJlbnQuaXNGb2N1c2VkID0gaXNGb2N1c2VkO1xuICAgICAgICBzZXRGb2N1c2VkKGlzRm9jdXNlZCk7XG4gICAgICAgIHVwZGF0ZVN0YXRlKCk7XG4gICAgfSwgW1xuICAgICAgICB1cGRhdGVTdGF0ZVxuICAgIF0pO1xuICAgICgwLCAkaXNXRTUkdXNlRm9jdXNWaXNpYmxlTGlzdGVuZXIpKChpc0ZvY3VzVmlzaWJsZSk9PntcbiAgICAgICAgc3RhdGUuY3VycmVudC5pc0ZvY3VzVmlzaWJsZSA9IGlzRm9jdXNWaXNpYmxlO1xuICAgICAgICB1cGRhdGVTdGF0ZSgpO1xuICAgIH0sIFtdLCB7XG4gICAgICAgIGlzVGV4dElucHV0OiBpc1RleHRJbnB1dFxuICAgIH0pO1xuICAgIGxldCB7IGZvY3VzUHJvcHM6IGZvY3VzUHJvcHMgfSA9ICgwLCAkaXNXRTUkdXNlRm9jdXMpKHtcbiAgICAgICAgaXNEaXNhYmxlZDogd2l0aGluLFxuICAgICAgICBvbkZvY3VzQ2hhbmdlOiBvbkZvY3VzQ2hhbmdlXG4gICAgfSk7XG4gICAgbGV0IHsgZm9jdXNXaXRoaW5Qcm9wczogZm9jdXNXaXRoaW5Qcm9wcyB9ID0gKDAsICRpc1dFNSR1c2VGb2N1c1dpdGhpbikoe1xuICAgICAgICBpc0Rpc2FibGVkOiAhd2l0aGluLFxuICAgICAgICBvbkZvY3VzV2l0aGluQ2hhbmdlOiBvbkZvY3VzQ2hhbmdlXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaXNGb2N1c2VkOiBpc0ZvY3VzZWQsXG4gICAgICAgIGlzRm9jdXNWaXNpYmxlOiBpc0ZvY3VzVmlzaWJsZVN0YXRlLFxuICAgICAgICBmb2N1c1Byb3BzOiB3aXRoaW4gPyBmb2N1c1dpdGhpblByb3BzIDogZm9jdXNQcm9wc1xuICAgIH07XG59XG5cblxuZXhwb3J0IHskZjdkY2VmZmM1YWQ3NzY4YiRleHBvcnQkNGUzMjhmNjFjNTM4Njg3ZiBhcyB1c2VGb2N1c1Jpbmd9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlRm9jdXNSaW5nLm1vZHVsZS5qcy5tYXBcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/focus/dist/useFocusRing.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocus.mjs":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/@react-aria/interactions/dist/useFocus.mjs ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useFocus: function() { return /* binding */ $a1ea59d68270f0dd$export$f8168d8dd8fd66e6; }\n/* harmony export */ });\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/utils.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/domHelpers.mjs\");\n\n\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nfunction $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {\n let { isDisabled: isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange: onFocusChange } = props;\n const onBlur = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n if (e.target === e.currentTarget) {\n if (onBlurProp) onBlurProp(e);\n if (onFocusChange) onFocusChange(false);\n return true;\n }\n }, [\n onBlurProp,\n onFocusChange\n ]);\n const onSyntheticFocus = (0, _utils_mjs__WEBPACK_IMPORTED_MODULE_1__.useSyntheticBlurEvent)(onBlur);\n const onFocus = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n const ownerDocument = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__.getOwnerDocument)(e.target);\n if (e.target === e.currentTarget && ownerDocument.activeElement === e.target) {\n if (onFocusProp) onFocusProp(e);\n if (onFocusChange) onFocusChange(true);\n onSyntheticFocus(e);\n }\n }, [\n onFocusChange,\n onFocusProp,\n onSyntheticFocus\n ]);\n return {\n focusProps: {\n onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : undefined,\n onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : undefined\n }\n };\n}\n\n\n\n//# sourceMappingURL=useFocus.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VGb2N1cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUErRjtBQUN2QztBQUNzQjs7QUFFOUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7OztBQUlBO0FBQ0EsVUFBVSxpR0FBaUc7QUFDM0csdUJBQXVCLDhDQUFrQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLGlDQUFpQyw2REFBeUM7QUFDMUUsd0JBQXdCLDhDQUFrQjtBQUMxQztBQUNBO0FBQ0Esa0NBQWtDLCtEQUF1QjtBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUcrRDtBQUMvRCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQHJlYWN0LWFyaWEvaW50ZXJhY3Rpb25zL2Rpc3QvdXNlRm9jdXMubWpzPzY5YmMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt1c2VTeW50aGV0aWNCbHVyRXZlbnQgYXMgJDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDcxNWM2ODJkMDlkNjM5Y2N9IGZyb20gXCIuL3V0aWxzLm1qc1wiO1xuaW1wb3J0IHt1c2VDYWxsYmFjayBhcyAkaGYwbGokdXNlQ2FsbGJhY2t9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtnZXRPd25lckRvY3VtZW50IGFzICRoZjBsaiRnZXRPd25lckRvY3VtZW50fSBmcm9tIFwiQHJlYWN0LWFyaWEvdXRpbHNcIjtcblxuLypcbiAqIENvcHlyaWdodCAyMDIwIEFkb2JlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogVGhpcyBmaWxlIGlzIGxpY2Vuc2VkIHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHlcbiAqIG9mIHRoZSBMaWNlbnNlIGF0IGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXJcbiAqIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OU1xuICogT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovIC8vIFBvcnRpb25zIG9mIHRoZSBjb2RlIGluIHRoaXMgZmlsZSBhcmUgYmFzZWQgb24gY29kZSBmcm9tIHJlYWN0LlxuLy8gT3JpZ2luYWwgbGljZW5zaW5nIGZvciB0aGUgZm9sbG93aW5nIGNhbiBiZSBmb3VuZCBpbiB0aGVcbi8vIE5PVElDRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC90cmVlL2NjN2MxYWVjZTQ2YTZiNjliNDE5NThkNzMxZTBmZDI3Yzk0YmZjNmMvcGFja2FnZXMvcmVhY3QtaW50ZXJhY3Rpb25zXG5cblxuXG5mdW5jdGlvbiAkYTFlYTU5ZDY4MjcwZjBkZCRleHBvcnQkZjgxNjhkOGRkOGZkNjZlNihwcm9wcykge1xuICAgIGxldCB7IGlzRGlzYWJsZWQ6IGlzRGlzYWJsZWQsIG9uRm9jdXM6IG9uRm9jdXNQcm9wLCBvbkJsdXI6IG9uQmx1clByb3AsIG9uRm9jdXNDaGFuZ2U6IG9uRm9jdXNDaGFuZ2UgfSA9IHByb3BzO1xuICAgIGNvbnN0IG9uQmx1ciA9ICgwLCAkaGYwbGokdXNlQ2FsbGJhY2spKChlKT0+e1xuICAgICAgICBpZiAoZS50YXJnZXQgPT09IGUuY3VycmVudFRhcmdldCkge1xuICAgICAgICAgICAgaWYgKG9uQmx1clByb3ApIG9uQmx1clByb3AoZSk7XG4gICAgICAgICAgICBpZiAob25Gb2N1c0NoYW5nZSkgb25Gb2N1c0NoYW5nZShmYWxzZSk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgb25CbHVyUHJvcCxcbiAgICAgICAgb25Gb2N1c0NoYW5nZVxuICAgIF0pO1xuICAgIGNvbnN0IG9uU3ludGhldGljRm9jdXMgPSAoMCwgJDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDcxNWM2ODJkMDlkNjM5Y2MpKG9uQmx1cik7XG4gICAgY29uc3Qgb25Gb2N1cyA9ICgwLCAkaGYwbGokdXNlQ2FsbGJhY2spKChlKT0+e1xuICAgICAgICAvLyBEb3VibGUgY2hlY2sgdGhhdCBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFjdHVhbGx5IG1hdGNoZXMgZS50YXJnZXQgaW4gY2FzZSBhIHByZXZpb3VzbHkgY2hhaW5lZFxuICAgICAgICAvLyBmb2N1cyBoYW5kbGVyIGFscmVhZHkgbW92ZWQgZm9jdXMgc29tZXdoZXJlIGVsc2UuXG4gICAgICAgIGNvbnN0IG93bmVyRG9jdW1lbnQgPSAoMCwgJGhmMGxqJGdldE93bmVyRG9jdW1lbnQpKGUudGFyZ2V0KTtcbiAgICAgICAgaWYgKGUudGFyZ2V0ID09PSBlLmN1cnJlbnRUYXJnZXQgJiYgb3duZXJEb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBlLnRhcmdldCkge1xuICAgICAgICAgICAgaWYgKG9uRm9jdXNQcm9wKSBvbkZvY3VzUHJvcChlKTtcbiAgICAgICAgICAgIGlmIChvbkZvY3VzQ2hhbmdlKSBvbkZvY3VzQ2hhbmdlKHRydWUpO1xuICAgICAgICAgICAgb25TeW50aGV0aWNGb2N1cyhlKTtcbiAgICAgICAgfVxuICAgIH0sIFtcbiAgICAgICAgb25Gb2N1c0NoYW5nZSxcbiAgICAgICAgb25Gb2N1c1Byb3AsXG4gICAgICAgIG9uU3ludGhldGljRm9jdXNcbiAgICBdKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBmb2N1c1Byb3BzOiB7XG4gICAgICAgICAgICBvbkZvY3VzOiAhaXNEaXNhYmxlZCAmJiAob25Gb2N1c1Byb3AgfHwgb25Gb2N1c0NoYW5nZSB8fCBvbkJsdXJQcm9wKSA/IG9uRm9jdXMgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBvbkJsdXI6ICFpc0Rpc2FibGVkICYmIChvbkJsdXJQcm9wIHx8IG9uRm9jdXNDaGFuZ2UpID8gb25CbHVyIDogdW5kZWZpbmVkXG4gICAgICAgIH1cbiAgICB9O1xufVxuXG5cbmV4cG9ydCB7JGExZWE1OWQ2ODI3MGYwZGQkZXhwb3J0JGY4MTY4ZDhkZDhmZDY2ZTYgYXMgdXNlRm9jdXN9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlRm9jdXMubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocus.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusVisible.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/@react-aria/interactions/dist/useFocusVisible.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addWindowFocusTracking: function() { return /* binding */ $507fabe10e71c6fb$export$2f1888112f558a7d; },\n/* harmony export */ getInteractionModality: function() { return /* binding */ $507fabe10e71c6fb$export$630ff653c5ada6a9; },\n/* harmony export */ hasSetupGlobalListeners: function() { return /* binding */ $507fabe10e71c6fb$export$d90243b58daecda7; },\n/* harmony export */ isFocusVisible: function() { return /* binding */ $507fabe10e71c6fb$export$b9b3dfddab17db27; },\n/* harmony export */ setInteractionModality: function() { return /* binding */ $507fabe10e71c6fb$export$8397ddfc504fdb9a; },\n/* harmony export */ useFocusVisible: function() { return /* binding */ $507fabe10e71c6fb$export$ffd9e5021c1fb2d6; },\n/* harmony export */ useFocusVisibleListener: function() { return /* binding */ $507fabe10e71c6fb$export$ec71b4b83ac08ec3; },\n/* harmony export */ useInteractionModality: function() { return /* binding */ $507fabe10e71c6fb$export$98e20ec92f614cfe; }\n/* harmony export */ });\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/platform.mjs\");\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/isVirtualEvent.mjs\");\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/domHelpers.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _react_aria_ssr__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @react-aria/ssr */ \"(app-pages-browser)/./node_modules/@react-aria/ssr/dist/SSRProvider.mjs\");\n\n\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nlet $507fabe10e71c6fb$var$currentModality = null;\nlet $507fabe10e71c6fb$var$changeHandlers = new Set();\nlet $507fabe10e71c6fb$export$d90243b58daecda7 = new Map(); // We use a map here to support setting event listeners across multiple document objects.\nlet $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\nlet $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n// Only Tab or Esc keys will make focus visible on text input elements\nconst $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = {\n Tab: true,\n Escape: true\n};\nfunction $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {\n for (let handler of $507fabe10e71c6fb$var$changeHandlers)handler(modality, e);\n}\n/**\n * Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.\n */ function $507fabe10e71c6fb$var$isValidKey(e) {\n // Control and Shift keys trigger when navigating back to the tab with keyboard.\n return !(e.metaKey || !(0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_1__.isMac)() && e.altKey || e.ctrlKey || e.key === 'Control' || e.key === 'Shift' || e.key === 'Meta');\n}\nfunction $507fabe10e71c6fb$var$handleKeyboardEvent(e) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n if ($507fabe10e71c6fb$var$isValidKey(e)) {\n $507fabe10e71c6fb$var$currentModality = 'keyboard';\n $507fabe10e71c6fb$var$triggerChangeHandlers('keyboard', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handlePointerEvent(e) {\n $507fabe10e71c6fb$var$currentModality = 'pointer';\n if (e.type === 'mousedown' || e.type === 'pointerdown') {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$triggerChangeHandlers('pointer', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handleClickEvent(e) {\n if ((0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__.isVirtualClick)(e)) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n }\n}\nfunction $507fabe10e71c6fb$var$handleFocusEvent(e) {\n // Firefox fires two extra focus events when the user first clicks into an iframe:\n // first on the window, then on the document. We ignore these events so they don't\n // cause keyboard focus rings to appear.\n if (e.target === window || e.target === document) return;\n // If a focus event occurs without a preceding keyboard or pointer event, switch to virtual modality.\n // This occurs, for example, when navigating a form with the next/previous buttons on iOS.\n if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n $507fabe10e71c6fb$var$triggerChangeHandlers('virtual', e);\n }\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n}\nfunction $507fabe10e71c6fb$var$handleWindowBlur() {\n // When the window is blurred, reset state. This is necessary when tabbing out of the window,\n // for example, since a subsequent focus event won't be fired.\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;\n}\n/**\n * Setup global event listeners to control when keyboard focus style should be visible.\n */ function $507fabe10e71c6fb$var$setupGlobalFocusEvents(element) {\n if (typeof window === 'undefined' || $507fabe10e71c6fb$export$d90243b58daecda7.get((0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(element))) return;\n const windowObject = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(element);\n const documentObject = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerDocument)(element);\n // Programmatic focus() calls shouldn't affect the current input modality.\n // However, we need to detect other cases when a focus event occurs without\n // a preceding user event (e.g. screen reader focus). Overriding the focus\n // method on HTMLElement.prototype is a bit hacky, but works.\n let focus = windowObject.HTMLElement.prototype.focus;\n windowObject.HTMLElement.prototype.focus = function() {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n focus.apply(this, arguments);\n };\n documentObject.addEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n // Register focus events on the window so they are sure to happen\n // before React's event listeners (registered on the document).\n windowObject.addEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.addEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.addEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else {\n documentObject.addEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n // Add unmount handler\n windowObject.addEventListener('beforeunload', ()=>{\n $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element);\n }, {\n once: true\n });\n $507fabe10e71c6fb$export$d90243b58daecda7.set(windowObject, {\n focus: focus\n });\n}\nconst $507fabe10e71c6fb$var$tearDownWindowFocusTracking = (element, loadListener)=>{\n const windowObject = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(element);\n const documentObject = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerDocument)(element);\n if (loadListener) documentObject.removeEventListener('DOMContentLoaded', loadListener);\n if (!$507fabe10e71c6fb$export$d90243b58daecda7.has(windowObject)) return;\n windowObject.HTMLElement.prototype.focus = $507fabe10e71c6fb$export$d90243b58daecda7.get(windowObject).focus;\n documentObject.removeEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n windowObject.removeEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.removeEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.removeEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else {\n documentObject.removeEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n $507fabe10e71c6fb$export$d90243b58daecda7.delete(windowObject);\n};\nfunction $507fabe10e71c6fb$export$2f1888112f558a7d(element) {\n const documentObject = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerDocument)(element);\n let loadListener;\n if (documentObject.readyState !== 'loading') $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n else {\n loadListener = ()=>{\n $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n };\n documentObject.addEventListener('DOMContentLoaded', loadListener);\n }\n return ()=>$507fabe10e71c6fb$var$tearDownWindowFocusTracking(element, loadListener);\n}\n// Server-side rendering does not have the document object defined\n// eslint-disable-next-line no-restricted-globals\nif (typeof document !== 'undefined') $507fabe10e71c6fb$export$2f1888112f558a7d();\nfunction $507fabe10e71c6fb$export$b9b3dfddab17db27() {\n return $507fabe10e71c6fb$var$currentModality !== 'pointer';\n}\nfunction $507fabe10e71c6fb$export$630ff653c5ada6a9() {\n return $507fabe10e71c6fb$var$currentModality;\n}\nfunction $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {\n $507fabe10e71c6fb$var$currentModality = modality;\n $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);\n}\nfunction $507fabe10e71c6fb$export$98e20ec92f614cfe() {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n let [modality, setModality] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)($507fabe10e71c6fb$var$currentModality);\n (0, react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n let handler = ()=>{\n setModality($507fabe10e71c6fb$var$currentModality);\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, []);\n return (0, _react_aria_ssr__WEBPACK_IMPORTED_MODULE_4__.useIsSSR)() ? null : modality;\n}\nconst $507fabe10e71c6fb$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\n/**\n * If this is attached to text input component, return if the event is a focus event (Tab/Escape keys pressed) so that\n * focus visible style can be properly set.\n */ function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {\n var _e_target;\n const IHTMLInputElement = typeof window !== 'undefined' ? (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLInputElement : HTMLInputElement;\n const IHTMLTextAreaElement = typeof window !== 'undefined' ? (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLTextAreaElement : HTMLTextAreaElement;\n const IHTMLElement = typeof window !== 'undefined' ? (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLElement : HTMLElement;\n const IKeyboardEvent = typeof window !== 'undefined' ? (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_3__.getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).KeyboardEvent : KeyboardEvent;\n isTextInput = isTextInput || (e === null || e === void 0 ? void 0 : e.target) instanceof IHTMLInputElement && !$507fabe10e71c6fb$var$nonTextInputTypes.has(e === null || e === void 0 ? void 0 : (_e_target = e.target) === null || _e_target === void 0 ? void 0 : _e_target.type) || (e === null || e === void 0 ? void 0 : e.target) instanceof IHTMLTextAreaElement || (e === null || e === void 0 ? void 0 : e.target) instanceof IHTMLElement && (e === null || e === void 0 ? void 0 : e.target.isContentEditable);\n return !(isTextInput && modality === 'keyboard' && e instanceof IKeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);\n}\nfunction $507fabe10e71c6fb$export$ffd9e5021c1fb2d6(props = {}) {\n let { isTextInput: isTextInput, autoFocus: autoFocus } = props;\n let [isFocusVisibleState, setFocusVisible] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)(autoFocus || $507fabe10e71c6fb$export$b9b3dfddab17db27());\n $507fabe10e71c6fb$export$ec71b4b83ac08ec3((isFocusVisible)=>{\n setFocusVisible(isFocusVisible);\n }, [\n isTextInput\n ], {\n isTextInput: isTextInput\n });\n return {\n isFocusVisible: isFocusVisibleState\n };\n}\nfunction $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n (0, react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n let handler = (modality, e)=>{\n if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(!!(opts === null || opts === void 0 ? void 0 : opts.isTextInput), modality, e)) return;\n fn($507fabe10e71c6fb$export$b9b3dfddab17db27());\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n}\n\n\n\n//# sourceMappingURL=useFocusVisible.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VGb2N1c1Zpc2libGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBdUw7QUFDdEc7QUFDckI7O0FBRTVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7QUFJQTtBQUNBO0FBQ0EsMkRBQTJEO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0Isb0RBQVk7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDZEQUFxQjtBQUNqQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyRkFBMkYsNkRBQXFCO0FBQ2hILDZCQUE2Qiw2REFBcUI7QUFDbEQsK0JBQStCLCtEQUF1QjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTTtBQUNOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLDZCQUE2Qiw2REFBcUI7QUFDbEQsK0JBQStCLCtEQUF1QjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0IsK0RBQXVCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLDJDQUFlO0FBQ3JELFFBQVEsNENBQWdCO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMLGVBQWUscURBQWU7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtFQUFrRSw2REFBcUI7QUFDdkYscUVBQXFFLDZEQUFxQjtBQUMxRiw2REFBNkQsNkRBQXFCO0FBQ2xGLCtEQUErRCw2REFBcUI7QUFDcEY7QUFDQTtBQUNBO0FBQ0EsNkRBQTZEO0FBQzdELFVBQVUsaURBQWlEO0FBQzNELHFEQUFxRCwyQ0FBZTtBQUNwRTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDRDQUFnQjtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7OztBQUdtaUI7QUFDbmlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VGb2N1c1Zpc2libGUubWpzPzFiMjUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc01hYyBhcyAkMjhBblIkaXNNYWMsIGlzVmlydHVhbENsaWNrIGFzICQyOEFuUiRpc1ZpcnR1YWxDbGljaywgZ2V0T3duZXJXaW5kb3cgYXMgJDI4QW5SJGdldE93bmVyV2luZG93LCBnZXRPd25lckRvY3VtZW50IGFzICQyOEFuUiRnZXRPd25lckRvY3VtZW50fSBmcm9tIFwiQHJlYWN0LWFyaWEvdXRpbHNcIjtcbmltcG9ydCB7dXNlU3RhdGUgYXMgJDI4QW5SJHVzZVN0YXRlLCB1c2VFZmZlY3QgYXMgJDI4QW5SJHVzZUVmZmVjdH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQge3VzZUlzU1NSIGFzICQyOEFuUiR1c2VJc1NTUn0gZnJvbSBcIkByZWFjdC1hcmlhL3NzclwiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjAgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi8gLy8gUG9ydGlvbnMgb2YgdGhlIGNvZGUgaW4gdGhpcyBmaWxlIGFyZSBiYXNlZCBvbiBjb2RlIGZyb20gcmVhY3QuXG4vLyBPcmlnaW5hbCBsaWNlbnNpbmcgZm9yIHRoZSBmb2xsb3dpbmcgY2FuIGJlIGZvdW5kIGluIHRoZVxuLy8gTk9USUNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvY2M3YzFhZWNlNDZhNmI2OWI0MTk1OGQ3MzFlMGZkMjdjOTRiZmM2Yy9wYWNrYWdlcy9yZWFjdC1pbnRlcmFjdGlvbnNcblxuXG5cbmxldCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY3VycmVudE1vZGFsaXR5ID0gbnVsbDtcbmxldCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY2hhbmdlSGFuZGxlcnMgPSBuZXcgU2V0KCk7XG5sZXQgJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGQ5MDI0M2I1OGRhZWNkYTcgPSBuZXcgTWFwKCk7IC8vIFdlIHVzZSBhIG1hcCBoZXJlIHRvIHN1cHBvcnQgc2V0dGluZyBldmVudCBsaXN0ZW5lcnMgYWNyb3NzIG11bHRpcGxlIGRvY3VtZW50IG9iamVjdHMuXG5sZXQgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhc0V2ZW50QmVmb3JlRm9jdXMgPSBmYWxzZTtcbmxldCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFzQmx1cnJlZFdpbmRvd1JlY2VudGx5ID0gZmFsc2U7XG4vLyBPbmx5IFRhYiBvciBFc2Mga2V5cyB3aWxsIG1ha2UgZm9jdXMgdmlzaWJsZSBvbiB0ZXh0IGlucHV0IGVsZW1lbnRzXG5jb25zdCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkRk9DVVNfVklTSUJMRV9JTlBVVF9LRVlTID0ge1xuICAgIFRhYjogdHJ1ZSxcbiAgICBFc2NhcGU6IHRydWVcbn07XG5mdW5jdGlvbiAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkdHJpZ2dlckNoYW5nZUhhbmRsZXJzKG1vZGFsaXR5LCBlKSB7XG4gICAgZm9yIChsZXQgaGFuZGxlciBvZiAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY2hhbmdlSGFuZGxlcnMpaGFuZGxlcihtb2RhbGl0eSwgZSk7XG59XG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiB0byBkZXRlcm1pbmUgaWYgYSBLZXlib2FyZEV2ZW50IGlzIHVubW9kaWZpZWQgYW5kIGNvdWxkIG1ha2Uga2V5Ym9hcmQgZm9jdXMgc3R5bGVzIHZpc2libGUuXG4gKi8gZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGlzVmFsaWRLZXkoZSkge1xuICAgIC8vIENvbnRyb2wgYW5kIFNoaWZ0IGtleXMgdHJpZ2dlciB3aGVuIG5hdmlnYXRpbmcgYmFjayB0byB0aGUgdGFiIHdpdGgga2V5Ym9hcmQuXG4gICAgcmV0dXJuICEoZS5tZXRhS2V5IHx8ICEoMCwgJDI4QW5SJGlzTWFjKSgpICYmIGUuYWx0S2V5IHx8IGUuY3RybEtleSB8fCBlLmtleSA9PT0gJ0NvbnRyb2wnIHx8IGUua2V5ID09PSAnU2hpZnQnIHx8IGUua2V5ID09PSAnTWV0YScpO1xufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZUtleWJvYXJkRXZlbnQoZSkge1xuICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYXNFdmVudEJlZm9yZUZvY3VzID0gdHJ1ZTtcbiAgICBpZiAoJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGlzVmFsaWRLZXkoZSkpIHtcbiAgICAgICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGN1cnJlbnRNb2RhbGl0eSA9ICdrZXlib2FyZCc7XG4gICAgICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciR0cmlnZ2VyQ2hhbmdlSGFuZGxlcnMoJ2tleWJvYXJkJywgZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudChlKSB7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGN1cnJlbnRNb2RhbGl0eSA9ICdwb2ludGVyJztcbiAgICBpZiAoZS50eXBlID09PSAnbW91c2Vkb3duJyB8fCBlLnR5cGUgPT09ICdwb2ludGVyZG93bicpIHtcbiAgICAgICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhc0V2ZW50QmVmb3JlRm9jdXMgPSB0cnVlO1xuICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkdHJpZ2dlckNoYW5nZUhhbmRsZXJzKCdwb2ludGVyJywgZSk7XG4gICAgfVxufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZUNsaWNrRXZlbnQoZSkge1xuICAgIGlmICgoMCwgJDI4QW5SJGlzVmlydHVhbENsaWNrKShlKSkge1xuICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFzRXZlbnRCZWZvcmVGb2N1cyA9IHRydWU7XG4gICAgICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRjdXJyZW50TW9kYWxpdHkgPSAndmlydHVhbCc7XG4gICAgfVxufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZUZvY3VzRXZlbnQoZSkge1xuICAgIC8vIEZpcmVmb3ggZmlyZXMgdHdvIGV4dHJhIGZvY3VzIGV2ZW50cyB3aGVuIHRoZSB1c2VyIGZpcnN0IGNsaWNrcyBpbnRvIGFuIGlmcmFtZTpcbiAgICAvLyBmaXJzdCBvbiB0aGUgd2luZG93LCB0aGVuIG9uIHRoZSBkb2N1bWVudC4gV2UgaWdub3JlIHRoZXNlIGV2ZW50cyBzbyB0aGV5IGRvbid0XG4gICAgLy8gY2F1c2Uga2V5Ym9hcmQgZm9jdXMgcmluZ3MgdG8gYXBwZWFyLlxuICAgIGlmIChlLnRhcmdldCA9PT0gd2luZG93IHx8IGUudGFyZ2V0ID09PSBkb2N1bWVudCkgcmV0dXJuO1xuICAgIC8vIElmIGEgZm9jdXMgZXZlbnQgb2NjdXJzIHdpdGhvdXQgYSBwcmVjZWRpbmcga2V5Ym9hcmQgb3IgcG9pbnRlciBldmVudCwgc3dpdGNoIHRvIHZpcnR1YWwgbW9kYWxpdHkuXG4gICAgLy8gVGhpcyBvY2N1cnMsIGZvciBleGFtcGxlLCB3aGVuIG5hdmlnYXRpbmcgYSBmb3JtIHdpdGggdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBvbiBpT1MuXG4gICAgaWYgKCEkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFzRXZlbnRCZWZvcmVGb2N1cyAmJiAhJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhc0JsdXJyZWRXaW5kb3dSZWNlbnRseSkge1xuICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY3VycmVudE1vZGFsaXR5ID0gJ3ZpcnR1YWwnO1xuICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkdHJpZ2dlckNoYW5nZUhhbmRsZXJzKCd2aXJ0dWFsJywgZSk7XG4gICAgfVxuICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYXNFdmVudEJlZm9yZUZvY3VzID0gZmFsc2U7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhc0JsdXJyZWRXaW5kb3dSZWNlbnRseSA9IGZhbHNlO1xufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVdpbmRvd0JsdXIoKSB7XG4gICAgLy8gV2hlbiB0aGUgd2luZG93IGlzIGJsdXJyZWQsIHJlc2V0IHN0YXRlLiBUaGlzIGlzIG5lY2Vzc2FyeSB3aGVuIHRhYmJpbmcgb3V0IG9mIHRoZSB3aW5kb3csXG4gICAgLy8gZm9yIGV4YW1wbGUsIHNpbmNlIGEgc3Vic2VxdWVudCBmb2N1cyBldmVudCB3b24ndCBiZSBmaXJlZC5cbiAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFzRXZlbnRCZWZvcmVGb2N1cyA9IGZhbHNlO1xuICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYXNCbHVycmVkV2luZG93UmVjZW50bHkgPSB0cnVlO1xufVxuLyoqXG4gKiBTZXR1cCBnbG9iYWwgZXZlbnQgbGlzdGVuZXJzIHRvIGNvbnRyb2wgd2hlbiBrZXlib2FyZCBmb2N1cyBzdHlsZSBzaG91bGQgYmUgdmlzaWJsZS5cbiAqLyBmdW5jdGlvbiAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkc2V0dXBHbG9iYWxGb2N1c0V2ZW50cyhlbGVtZW50KSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnIHx8ICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRkOTAyNDNiNThkYWVjZGE3LmdldCgoMCwgJDI4QW5SJGdldE93bmVyV2luZG93KShlbGVtZW50KSkpIHJldHVybjtcbiAgICBjb25zdCB3aW5kb3dPYmplY3QgPSAoMCwgJDI4QW5SJGdldE93bmVyV2luZG93KShlbGVtZW50KTtcbiAgICBjb25zdCBkb2N1bWVudE9iamVjdCA9ICgwLCAkMjhBblIkZ2V0T3duZXJEb2N1bWVudCkoZWxlbWVudCk7XG4gICAgLy8gUHJvZ3JhbW1hdGljIGZvY3VzKCkgY2FsbHMgc2hvdWxkbid0IGFmZmVjdCB0aGUgY3VycmVudCBpbnB1dCBtb2RhbGl0eS5cbiAgICAvLyBIb3dldmVyLCB3ZSBuZWVkIHRvIGRldGVjdCBvdGhlciBjYXNlcyB3aGVuIGEgZm9jdXMgZXZlbnQgb2NjdXJzIHdpdGhvdXRcbiAgICAvLyBhIHByZWNlZGluZyB1c2VyIGV2ZW50IChlLmcuIHNjcmVlbiByZWFkZXIgZm9jdXMpLiBPdmVycmlkaW5nIHRoZSBmb2N1c1xuICAgIC8vIG1ldGhvZCBvbiBIVE1MRWxlbWVudC5wcm90b3R5cGUgaXMgYSBiaXQgaGFja3ksIGJ1dCB3b3Jrcy5cbiAgICBsZXQgZm9jdXMgPSB3aW5kb3dPYmplY3QuSFRNTEVsZW1lbnQucHJvdG90eXBlLmZvY3VzO1xuICAgIHdpbmRvd09iamVjdC5IVE1MRWxlbWVudC5wcm90b3R5cGUuZm9jdXMgPSBmdW5jdGlvbigpIHtcbiAgICAgICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhc0V2ZW50QmVmb3JlRm9jdXMgPSB0cnVlO1xuICAgICAgICBmb2N1cy5hcHBseSh0aGlzLCBhcmd1bWVudHMpO1xuICAgIH07XG4gICAgZG9jdW1lbnRPYmplY3QuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVLZXlib2FyZEV2ZW50LCB0cnVlKTtcbiAgICBkb2N1bWVudE9iamVjdC5hZGRFdmVudExpc3RlbmVyKCdrZXl1cCcsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVLZXlib2FyZEV2ZW50LCB0cnVlKTtcbiAgICBkb2N1bWVudE9iamVjdC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVDbGlja0V2ZW50LCB0cnVlKTtcbiAgICAvLyBSZWdpc3RlciBmb2N1cyBldmVudHMgb24gdGhlIHdpbmRvdyBzbyB0aGV5IGFyZSBzdXJlIHRvIGhhcHBlblxuICAgIC8vIGJlZm9yZSBSZWFjdCdzIGV2ZW50IGxpc3RlbmVycyAocmVnaXN0ZXJlZCBvbiB0aGUgZG9jdW1lbnQpLlxuICAgIHdpbmRvd09iamVjdC5hZGRFdmVudExpc3RlbmVyKCdmb2N1cycsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVGb2N1c0V2ZW50LCB0cnVlKTtcbiAgICB3aW5kb3dPYmplY3QuYWRkRXZlbnRMaXN0ZW5lcignYmx1cicsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVXaW5kb3dCbHVyLCBmYWxzZSk7XG4gICAgaWYgKHR5cGVvZiBQb2ludGVyRXZlbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGRvY3VtZW50T2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudCwgdHJ1ZSk7XG4gICAgICAgIGRvY3VtZW50T2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudCwgdHJ1ZSk7XG4gICAgICAgIGRvY3VtZW50T2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJ1cCcsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVQb2ludGVyRXZlbnQsIHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGRvY3VtZW50T2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVQb2ludGVyRXZlbnQsIHRydWUpO1xuICAgICAgICBkb2N1bWVudE9iamVjdC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW1vdmUnLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlUG9pbnRlckV2ZW50LCB0cnVlKTtcbiAgICAgICAgZG9jdW1lbnRPYmplY3QuYWRkRXZlbnRMaXN0ZW5lcignbW91c2V1cCcsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVQb2ludGVyRXZlbnQsIHRydWUpO1xuICAgIH1cbiAgICAvLyBBZGQgdW5tb3VudCBoYW5kbGVyXG4gICAgd2luZG93T2JqZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ2JlZm9yZXVubG9hZCcsICgpPT57XG4gICAgICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciR0ZWFyRG93bldpbmRvd0ZvY3VzVHJhY2tpbmcoZWxlbWVudCk7XG4gICAgfSwge1xuICAgICAgICBvbmNlOiB0cnVlXG4gICAgfSk7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGQ5MDI0M2I1OGRhZWNkYTcuc2V0KHdpbmRvd09iamVjdCwge1xuICAgICAgICBmb2N1czogZm9jdXNcbiAgICB9KTtcbn1cbmNvbnN0ICQ1MDdmYWJlMTBlNzFjNmZiJHZhciR0ZWFyRG93bldpbmRvd0ZvY3VzVHJhY2tpbmcgPSAoZWxlbWVudCwgbG9hZExpc3RlbmVyKT0+e1xuICAgIGNvbnN0IHdpbmRvd09iamVjdCA9ICgwLCAkMjhBblIkZ2V0T3duZXJXaW5kb3cpKGVsZW1lbnQpO1xuICAgIGNvbnN0IGRvY3VtZW50T2JqZWN0ID0gKDAsICQyOEFuUiRnZXRPd25lckRvY3VtZW50KShlbGVtZW50KTtcbiAgICBpZiAobG9hZExpc3RlbmVyKSBkb2N1bWVudE9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgbG9hZExpc3RlbmVyKTtcbiAgICBpZiAoISQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRkOTAyNDNiNThkYWVjZGE3Lmhhcyh3aW5kb3dPYmplY3QpKSByZXR1cm47XG4gICAgd2luZG93T2JqZWN0LkhUTUxFbGVtZW50LnByb3RvdHlwZS5mb2N1cyA9ICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRkOTAyNDNiNThkYWVjZGE3LmdldCh3aW5kb3dPYmplY3QpLmZvY3VzO1xuICAgIGRvY3VtZW50T2JqZWN0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlS2V5Ym9hcmRFdmVudCwgdHJ1ZSk7XG4gICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigna2V5dXAnLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlS2V5Ym9hcmRFdmVudCwgdHJ1ZSk7XG4gICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlQ2xpY2tFdmVudCwgdHJ1ZSk7XG4gICAgd2luZG93T2JqZWN0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZUZvY3VzRXZlbnQsIHRydWUpO1xuICAgIHdpbmRvd09iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKCdibHVyJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVdpbmRvd0JsdXIsIGZhbHNlKTtcbiAgICBpZiAodHlwZW9mIFBvaW50ZXJFdmVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlUG9pbnRlckV2ZW50LCB0cnVlKTtcbiAgICAgICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcm1vdmUnLCAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaGFuZGxlUG9pbnRlckV2ZW50LCB0cnVlKTtcbiAgICAgICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudCwgdHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZG9jdW1lbnRPYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudCwgdHJ1ZSk7XG4gICAgICAgIGRvY3VtZW50T2JqZWN0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlbW92ZScsICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRoYW5kbGVQb2ludGVyRXZlbnQsIHRydWUpO1xuICAgICAgICBkb2N1bWVudE9iamVjdC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGhhbmRsZVBvaW50ZXJFdmVudCwgdHJ1ZSk7XG4gICAgfVxuICAgICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRkOTAyNDNiNThkYWVjZGE3LmRlbGV0ZSh3aW5kb3dPYmplY3QpO1xufTtcbmZ1bmN0aW9uICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCQyZjE4ODgxMTJmNTU4YTdkKGVsZW1lbnQpIHtcbiAgICBjb25zdCBkb2N1bWVudE9iamVjdCA9ICgwLCAkMjhBblIkZ2V0T3duZXJEb2N1bWVudCkoZWxlbWVudCk7XG4gICAgbGV0IGxvYWRMaXN0ZW5lcjtcbiAgICBpZiAoZG9jdW1lbnRPYmplY3QucmVhZHlTdGF0ZSAhPT0gJ2xvYWRpbmcnKSAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkc2V0dXBHbG9iYWxGb2N1c0V2ZW50cyhlbGVtZW50KTtcbiAgICBlbHNlIHtcbiAgICAgICAgbG9hZExpc3RlbmVyID0gKCk9PntcbiAgICAgICAgICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRzZXR1cEdsb2JhbEZvY3VzRXZlbnRzKGVsZW1lbnQpO1xuICAgICAgICB9O1xuICAgICAgICBkb2N1bWVudE9iamVjdC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgbG9hZExpc3RlbmVyKTtcbiAgICB9XG4gICAgcmV0dXJuICgpPT4kNTA3ZmFiZTEwZTcxYzZmYiR2YXIkdGVhckRvd25XaW5kb3dGb2N1c1RyYWNraW5nKGVsZW1lbnQsIGxvYWRMaXN0ZW5lcik7XG59XG4vLyBTZXJ2ZXItc2lkZSByZW5kZXJpbmcgZG9lcyBub3QgaGF2ZSB0aGUgZG9jdW1lbnQgb2JqZWN0IGRlZmluZWRcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLWdsb2JhbHNcbmlmICh0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnKSAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkMmYxODg4MTEyZjU1OGE3ZCgpO1xuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGI5YjNkZmRkYWIxN2RiMjcoKSB7XG4gICAgcmV0dXJuICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRjdXJyZW50TW9kYWxpdHkgIT09ICdwb2ludGVyJztcbn1cbmZ1bmN0aW9uICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCQ2MzBmZjY1M2M1YWRhNmE5KCkge1xuICAgIHJldHVybiAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY3VycmVudE1vZGFsaXR5O1xufVxuZnVuY3Rpb24gJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JDgzOTdkZGZjNTA0ZmRiOWEobW9kYWxpdHkpIHtcbiAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY3VycmVudE1vZGFsaXR5ID0gbW9kYWxpdHk7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJHRyaWdnZXJDaGFuZ2VIYW5kbGVycyhtb2RhbGl0eSwgbnVsbCk7XG59XG5mdW5jdGlvbiAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkOThlMjBlYzkyZjYxNGNmZSgpIHtcbiAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkc2V0dXBHbG9iYWxGb2N1c0V2ZW50cygpO1xuICAgIGxldCBbbW9kYWxpdHksIHNldE1vZGFsaXR5XSA9ICgwLCAkMjhBblIkdXNlU3RhdGUpKCQ1MDdmYWJlMTBlNzFjNmZiJHZhciRjdXJyZW50TW9kYWxpdHkpO1xuICAgICgwLCAkMjhBblIkdXNlRWZmZWN0KSgoKT0+e1xuICAgICAgICBsZXQgaGFuZGxlciA9ICgpPT57XG4gICAgICAgICAgICBzZXRNb2RhbGl0eSgkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY3VycmVudE1vZGFsaXR5KTtcbiAgICAgICAgfTtcbiAgICAgICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJGNoYW5nZUhhbmRsZXJzLmFkZChoYW5kbGVyKTtcbiAgICAgICAgcmV0dXJuICgpPT57XG4gICAgICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY2hhbmdlSGFuZGxlcnMuZGVsZXRlKGhhbmRsZXIpO1xuICAgICAgICB9O1xuICAgIH0sIFtdKTtcbiAgICByZXR1cm4gKDAsICQyOEFuUiR1c2VJc1NTUikoKSA/IG51bGwgOiBtb2RhbGl0eTtcbn1cbmNvbnN0ICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRub25UZXh0SW5wdXRUeXBlcyA9IG5ldyBTZXQoW1xuICAgICdjaGVja2JveCcsXG4gICAgJ3JhZGlvJyxcbiAgICAncmFuZ2UnLFxuICAgICdjb2xvcicsXG4gICAgJ2ZpbGUnLFxuICAgICdpbWFnZScsXG4gICAgJ2J1dHRvbicsXG4gICAgJ3N1Ym1pdCcsXG4gICAgJ3Jlc2V0J1xuXSk7XG4vKipcbiAqIElmIHRoaXMgaXMgYXR0YWNoZWQgdG8gdGV4dCBpbnB1dCBjb21wb25lbnQsIHJldHVybiBpZiB0aGUgZXZlbnQgaXMgYSBmb2N1cyBldmVudCAoVGFiL0VzY2FwZSBrZXlzIHByZXNzZWQpIHNvIHRoYXRcbiAqIGZvY3VzIHZpc2libGUgc3R5bGUgY2FuIGJlIHByb3Blcmx5IHNldC5cbiAqLyBmdW5jdGlvbiAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkaXNLZXlib2FyZEZvY3VzRXZlbnQoaXNUZXh0SW5wdXQsIG1vZGFsaXR5LCBlKSB7XG4gICAgdmFyIF9lX3RhcmdldDtcbiAgICBjb25zdCBJSFRNTElucHV0RWxlbWVudCA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gKDAsICQyOEFuUiRnZXRPd25lcldpbmRvdykoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRhcmdldCkuSFRNTElucHV0RWxlbWVudCA6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgY29uc3QgSUhUTUxUZXh0QXJlYUVsZW1lbnQgPSB0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyA/ICgwLCAkMjhBblIkZ2V0T3duZXJXaW5kb3cpKGUgPT09IG51bGwgfHwgZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZS50YXJnZXQpLkhUTUxUZXh0QXJlYUVsZW1lbnQgOiBIVE1MVGV4dEFyZWFFbGVtZW50O1xuICAgIGNvbnN0IElIVE1MRWxlbWVudCA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gKDAsICQyOEFuUiRnZXRPd25lcldpbmRvdykoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRhcmdldCkuSFRNTEVsZW1lbnQgOiBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBJS2V5Ym9hcmRFdmVudCA9IHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gKDAsICQyOEFuUiRnZXRPd25lcldpbmRvdykoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRhcmdldCkuS2V5Ym9hcmRFdmVudCA6IEtleWJvYXJkRXZlbnQ7XG4gICAgaXNUZXh0SW5wdXQgPSBpc1RleHRJbnB1dCB8fCAoZSA9PT0gbnVsbCB8fCBlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlLnRhcmdldCkgaW5zdGFuY2VvZiBJSFRNTElucHV0RWxlbWVudCAmJiAhJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJG5vblRleHRJbnB1dFR5cGVzLmhhcyhlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IChfZV90YXJnZXQgPSBlLnRhcmdldCkgPT09IG51bGwgfHwgX2VfdGFyZ2V0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZV90YXJnZXQudHlwZSkgfHwgKGUgPT09IG51bGwgfHwgZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZS50YXJnZXQpIGluc3RhbmNlb2YgSUhUTUxUZXh0QXJlYUVsZW1lbnQgfHwgKGUgPT09IG51bGwgfHwgZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZS50YXJnZXQpIGluc3RhbmNlb2YgSUhUTUxFbGVtZW50ICYmIChlID09PSBudWxsIHx8IGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGUudGFyZ2V0LmlzQ29udGVudEVkaXRhYmxlKTtcbiAgICByZXR1cm4gIShpc1RleHRJbnB1dCAmJiBtb2RhbGl0eSA9PT0gJ2tleWJvYXJkJyAmJiBlIGluc3RhbmNlb2YgSUtleWJvYXJkRXZlbnQgJiYgISQ1MDdmYWJlMTBlNzFjNmZiJHZhciRGT0NVU19WSVNJQkxFX0lOUFVUX0tFWVNbZS5rZXldKTtcbn1cbmZ1bmN0aW9uICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRmZmQ5ZTUwMjFjMWZiMmQ2KHByb3BzID0ge30pIHtcbiAgICBsZXQgeyBpc1RleHRJbnB1dDogaXNUZXh0SW5wdXQsIGF1dG9Gb2N1czogYXV0b0ZvY3VzIH0gPSBwcm9wcztcbiAgICBsZXQgW2lzRm9jdXNWaXNpYmxlU3RhdGUsIHNldEZvY3VzVmlzaWJsZV0gPSAoMCwgJDI4QW5SJHVzZVN0YXRlKShhdXRvRm9jdXMgfHwgJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGI5YjNkZmRkYWIxN2RiMjcoKSk7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGVjNzFiNGI4M2FjMDhlYzMoKGlzRm9jdXNWaXNpYmxlKT0+e1xuICAgICAgICBzZXRGb2N1c1Zpc2libGUoaXNGb2N1c1Zpc2libGUpO1xuICAgIH0sIFtcbiAgICAgICAgaXNUZXh0SW5wdXRcbiAgICBdLCB7XG4gICAgICAgIGlzVGV4dElucHV0OiBpc1RleHRJbnB1dFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGlzRm9jdXNWaXNpYmxlOiBpc0ZvY3VzVmlzaWJsZVN0YXRlXG4gICAgfTtcbn1cbmZ1bmN0aW9uICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRlYzcxYjRiODNhYzA4ZWMzKGZuLCBkZXBzLCBvcHRzKSB7XG4gICAgJDUwN2ZhYmUxMGU3MWM2ZmIkdmFyJHNldHVwR2xvYmFsRm9jdXNFdmVudHMoKTtcbiAgICAoMCwgJDI4QW5SJHVzZUVmZmVjdCkoKCk9PntcbiAgICAgICAgbGV0IGhhbmRsZXIgPSAobW9kYWxpdHksIGUpPT57XG4gICAgICAgICAgICBpZiAoISQ1MDdmYWJlMTBlNzFjNmZiJHZhciRpc0tleWJvYXJkRm9jdXNFdmVudCghIShvcHRzID09PSBudWxsIHx8IG9wdHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdHMuaXNUZXh0SW5wdXQpLCBtb2RhbGl0eSwgZSkpIHJldHVybjtcbiAgICAgICAgICAgIGZuKCQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRiOWIzZGZkZGFiMTdkYjI3KCkpO1xuICAgICAgICB9O1xuICAgICAgICAkNTA3ZmFiZTEwZTcxYzZmYiR2YXIkY2hhbmdlSGFuZGxlcnMuYWRkKGhhbmRsZXIpO1xuICAgICAgICByZXR1cm4gKCk9PntcbiAgICAgICAgICAgICQ1MDdmYWJlMTBlNzFjNmZiJHZhciRjaGFuZ2VIYW5kbGVycy5kZWxldGUoaGFuZGxlcik7XG4gICAgICAgIH07XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIH0sIGRlcHMpO1xufVxuXG5cbmV4cG9ydCB7JDUwN2ZhYmUxMGU3MWM2ZmIkZXhwb3J0JGQ5MDI0M2I1OGRhZWNkYTcgYXMgaGFzU2V0dXBHbG9iYWxMaXN0ZW5lcnMsICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCQyZjE4ODgxMTJmNTU4YTdkIGFzIGFkZFdpbmRvd0ZvY3VzVHJhY2tpbmcsICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRiOWIzZGZkZGFiMTdkYjI3IGFzIGlzRm9jdXNWaXNpYmxlLCAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkNjMwZmY2NTNjNWFkYTZhOSBhcyBnZXRJbnRlcmFjdGlvbk1vZGFsaXR5LCAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkODM5N2RkZmM1MDRmZGI5YSBhcyBzZXRJbnRlcmFjdGlvbk1vZGFsaXR5LCAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkOThlMjBlYzkyZjYxNGNmZSBhcyB1c2VJbnRlcmFjdGlvbk1vZGFsaXR5LCAkNTA3ZmFiZTEwZTcxYzZmYiRleHBvcnQkZmZkOWU1MDIxYzFmYjJkNiBhcyB1c2VGb2N1c1Zpc2libGUsICQ1MDdmYWJlMTBlNzFjNmZiJGV4cG9ydCRlYzcxYjRiODNhYzA4ZWMzIGFzIHVzZUZvY3VzVmlzaWJsZUxpc3RlbmVyfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVzZUZvY3VzVmlzaWJsZS5tb2R1bGUuanMubWFwXG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusVisible.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusWithin.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/@react-aria/interactions/dist/useFocusWithin.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useFocusWithin: function() { return /* binding */ $9ab94262bd0047c7$export$420e68273165f4ec; }\n/* harmony export */ });\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/@react-aria/interactions/dist/utils.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\nfunction $9ab94262bd0047c7$export$420e68273165f4ec(props) {\n let { isDisabled: isDisabled, onBlurWithin: onBlurWithin, onFocusWithin: onFocusWithin, onFocusWithinChange: onFocusWithinChange } = props;\n let state = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n isFocusWithin: false\n });\n let onBlur = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n // We don't want to trigger onBlurWithin and then immediately onFocusWithin again\n // when moving focus inside the element. Only trigger if the currentTarget doesn't\n // include the relatedTarget (where focus is moving).\n if (state.current.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {\n state.current.isFocusWithin = false;\n if (onBlurWithin) onBlurWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(false);\n }\n }, [\n onBlurWithin,\n onFocusWithinChange,\n state\n ]);\n let onSyntheticFocus = (0, _utils_mjs__WEBPACK_IMPORTED_MODULE_1__.useSyntheticBlurEvent)(onBlur);\n let onFocus = (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n if (!state.current.isFocusWithin && document.activeElement === e.target) {\n if (onFocusWithin) onFocusWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(true);\n state.current.isFocusWithin = true;\n onSyntheticFocus(e);\n }\n }, [\n onFocusWithin,\n onFocusWithinChange,\n onSyntheticFocus\n ]);\n if (isDisabled) return {\n focusWithinProps: {\n // These should not have been null, that would conflict in mergeProps\n onFocus: undefined,\n onBlur: undefined\n }\n };\n return {\n focusWithinProps: {\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n\n\n//# sourceMappingURL=useFocusWithin.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VGb2N1c1dpdGhpbi5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQStGO0FBQ2Q7O0FBRWpGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUdBO0FBQ0EsVUFBVSw2SEFBNkg7QUFDdkksb0JBQW9CLHlDQUFhO0FBQ2pDO0FBQ0EsS0FBSztBQUNMLHFCQUFxQiw4Q0FBa0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQiw2REFBeUM7QUFDeEUsc0JBQXNCLDhDQUFrQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBR3FFO0FBQ3JFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VGb2N1c1dpdGhpbi5tanM/YTZkMiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3VzZVN5bnRoZXRpY0JsdXJFdmVudCBhcyAkOGE5Y2IyNzlkYzg3ZTEzMCRleHBvcnQkNzE1YzY4MmQwOWQ2MzljY30gZnJvbSBcIi4vdXRpbHMubWpzXCI7XG5pbXBvcnQge3VzZVJlZiBhcyAkM2I5UTAkdXNlUmVmLCB1c2VDYWxsYmFjayBhcyAkM2I5UTAkdXNlQ2FsbGJhY2t9IGZyb20gXCJyZWFjdFwiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjAgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi8gLy8gUG9ydGlvbnMgb2YgdGhlIGNvZGUgaW4gdGhpcyBmaWxlIGFyZSBiYXNlZCBvbiBjb2RlIGZyb20gcmVhY3QuXG4vLyBPcmlnaW5hbCBsaWNlbnNpbmcgZm9yIHRoZSBmb2xsb3dpbmcgY2FuIGJlIGZvdW5kIGluIHRoZVxuLy8gTk9USUNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvY2M3YzFhZWNlNDZhNmI2OWI0MTk1OGQ3MzFlMGZkMjdjOTRiZmM2Yy9wYWNrYWdlcy9yZWFjdC1pbnRlcmFjdGlvbnNcblxuXG5mdW5jdGlvbiAkOWFiOTQyNjJiZDAwNDdjNyRleHBvcnQkNDIwZTY4MjczMTY1ZjRlYyhwcm9wcykge1xuICAgIGxldCB7IGlzRGlzYWJsZWQ6IGlzRGlzYWJsZWQsIG9uQmx1cldpdGhpbjogb25CbHVyV2l0aGluLCBvbkZvY3VzV2l0aGluOiBvbkZvY3VzV2l0aGluLCBvbkZvY3VzV2l0aGluQ2hhbmdlOiBvbkZvY3VzV2l0aGluQ2hhbmdlIH0gPSBwcm9wcztcbiAgICBsZXQgc3RhdGUgPSAoMCwgJDNiOVEwJHVzZVJlZikoe1xuICAgICAgICBpc0ZvY3VzV2l0aGluOiBmYWxzZVxuICAgIH0pO1xuICAgIGxldCBvbkJsdXIgPSAoMCwgJDNiOVEwJHVzZUNhbGxiYWNrKSgoZSk9PntcbiAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byB0cmlnZ2VyIG9uQmx1cldpdGhpbiBhbmQgdGhlbiBpbW1lZGlhdGVseSBvbkZvY3VzV2l0aGluIGFnYWluXG4gICAgICAgIC8vIHdoZW4gbW92aW5nIGZvY3VzIGluc2lkZSB0aGUgZWxlbWVudC4gT25seSB0cmlnZ2VyIGlmIHRoZSBjdXJyZW50VGFyZ2V0IGRvZXNuJ3RcbiAgICAgICAgLy8gaW5jbHVkZSB0aGUgcmVsYXRlZFRhcmdldCAod2hlcmUgZm9jdXMgaXMgbW92aW5nKS5cbiAgICAgICAgaWYgKHN0YXRlLmN1cnJlbnQuaXNGb2N1c1dpdGhpbiAmJiAhZS5jdXJyZW50VGFyZ2V0LmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCkpIHtcbiAgICAgICAgICAgIHN0YXRlLmN1cnJlbnQuaXNGb2N1c1dpdGhpbiA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKG9uQmx1cldpdGhpbikgb25CbHVyV2l0aGluKGUpO1xuICAgICAgICAgICAgaWYgKG9uRm9jdXNXaXRoaW5DaGFuZ2UpIG9uRm9jdXNXaXRoaW5DaGFuZ2UoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBvbkJsdXJXaXRoaW4sXG4gICAgICAgIG9uRm9jdXNXaXRoaW5DaGFuZ2UsXG4gICAgICAgIHN0YXRlXG4gICAgXSk7XG4gICAgbGV0IG9uU3ludGhldGljRm9jdXMgPSAoMCwgJDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDcxNWM2ODJkMDlkNjM5Y2MpKG9uQmx1cik7XG4gICAgbGV0IG9uRm9jdXMgPSAoMCwgJDNiOVEwJHVzZUNhbGxiYWNrKSgoZSk9PntcbiAgICAgICAgLy8gRG91YmxlIGNoZWNrIHRoYXQgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhY3R1YWxseSBtYXRjaGVzIGUudGFyZ2V0IGluIGNhc2UgYSBwcmV2aW91c2x5IGNoYWluZWRcbiAgICAgICAgLy8gZm9jdXMgaGFuZGxlciBhbHJlYWR5IG1vdmVkIGZvY3VzIHNvbWV3aGVyZSBlbHNlLlxuICAgICAgICBpZiAoIXN0YXRlLmN1cnJlbnQuaXNGb2N1c1dpdGhpbiAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBlLnRhcmdldCkge1xuICAgICAgICAgICAgaWYgKG9uRm9jdXNXaXRoaW4pIG9uRm9jdXNXaXRoaW4oZSk7XG4gICAgICAgICAgICBpZiAob25Gb2N1c1dpdGhpbkNoYW5nZSkgb25Gb2N1c1dpdGhpbkNoYW5nZSh0cnVlKTtcbiAgICAgICAgICAgIHN0YXRlLmN1cnJlbnQuaXNGb2N1c1dpdGhpbiA9IHRydWU7XG4gICAgICAgICAgICBvblN5bnRoZXRpY0ZvY3VzKGUpO1xuICAgICAgICB9XG4gICAgfSwgW1xuICAgICAgICBvbkZvY3VzV2l0aGluLFxuICAgICAgICBvbkZvY3VzV2l0aGluQ2hhbmdlLFxuICAgICAgICBvblN5bnRoZXRpY0ZvY3VzXG4gICAgXSk7XG4gICAgaWYgKGlzRGlzYWJsZWQpIHJldHVybiB7XG4gICAgICAgIGZvY3VzV2l0aGluUHJvcHM6IHtcbiAgICAgICAgICAgIC8vIFRoZXNlIHNob3VsZCBub3QgaGF2ZSBiZWVuIG51bGwsIHRoYXQgd291bGQgY29uZmxpY3QgaW4gbWVyZ2VQcm9wc1xuICAgICAgICAgICAgb25Gb2N1czogdW5kZWZpbmVkLFxuICAgICAgICAgICAgb25CbHVyOiB1bmRlZmluZWRcbiAgICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIHtcbiAgICAgICAgZm9jdXNXaXRoaW5Qcm9wczoge1xuICAgICAgICAgICAgb25Gb2N1czogb25Gb2N1cyxcbiAgICAgICAgICAgIG9uQmx1cjogb25CbHVyXG4gICAgICAgIH1cbiAgICB9O1xufVxuXG5cbmV4cG9ydCB7JDlhYjk0MjYyYmQwMDQ3YzckZXhwb3J0JDQyMGU2ODI3MzE2NWY0ZWMgYXMgdXNlRm9jdXNXaXRoaW59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9dXNlRm9jdXNXaXRoaW4ubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useFocusWithin.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useHover.mjs":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/@react-aria/interactions/dist/useHover.mjs ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useHover: function() { return /* binding */ $6179b936705e76d3$export$ae780daf29e6d456; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n// iOS fires onPointerEnter twice: once with pointerType=\"touch\" and again with pointerType=\"mouse\".\n// We want to ignore these emulated events so they do not trigger hover behavior.\n// See https://bugs.webkit.org/show_bug.cgi?id=214609.\nlet $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\nlet $6179b936705e76d3$var$hoverCount = 0;\nfunction $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;\n // Clear globalIgnoreEmulatedMouseEvents after a short timeout. iOS fires onPointerEnter\n // with pointerType=\"mouse\" immediately after onPointerUp and before onFocus. On other\n // devices that don't have this quirk, we don't want to ignore a mouse hover sometime in\n // the distant future because a user previously touched the element.\n setTimeout(()=>{\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\n }, 50);\n}\nfunction $6179b936705e76d3$var$handleGlobalPointerEvent(e) {\n if (e.pointerType === 'touch') $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();\n}\nfunction $6179b936705e76d3$var$setupGlobalTouchEvents() {\n if (typeof document === 'undefined') return;\n if (typeof PointerEvent !== 'undefined') document.addEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.addEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n $6179b936705e76d3$var$hoverCount++;\n return ()=>{\n $6179b936705e76d3$var$hoverCount--;\n if ($6179b936705e76d3$var$hoverCount > 0) return;\n if (typeof PointerEvent !== 'undefined') document.removeEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.removeEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n };\n}\nfunction $6179b936705e76d3$export$ae780daf29e6d456(props) {\n let { onHoverStart: onHoverStart, onHoverChange: onHoverChange, onHoverEnd: onHoverEnd, isDisabled: isDisabled } = props;\n let [isHovered, setHovered] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n let state = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n isHovered: false,\n ignoreEmulatedMouseEvents: false,\n pointerType: '',\n target: null\n }).current;\n (0, react__WEBPACK_IMPORTED_MODULE_0__.useEffect)($6179b936705e76d3$var$setupGlobalTouchEvents, []);\n let { hoverProps: hoverProps, triggerHoverEnd: triggerHoverEnd } = (0, react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>{\n let triggerHoverStart = (event, pointerType)=>{\n state.pointerType = pointerType;\n if (isDisabled || pointerType === 'touch' || state.isHovered || !event.currentTarget.contains(event.target)) return;\n state.isHovered = true;\n let target = event.currentTarget;\n state.target = target;\n if (onHoverStart) onHoverStart({\n type: 'hoverstart',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(true);\n setHovered(true);\n };\n let triggerHoverEnd = (event, pointerType)=>{\n state.pointerType = '';\n state.target = null;\n if (pointerType === 'touch' || !state.isHovered) return;\n state.isHovered = false;\n let target = event.currentTarget;\n if (onHoverEnd) onHoverEnd({\n type: 'hoverend',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(false);\n setHovered(false);\n };\n let hoverProps = {};\n if (typeof PointerEvent !== 'undefined') {\n hoverProps.onPointerEnter = (e)=>{\n if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === 'mouse') return;\n triggerHoverStart(e, e.pointerType);\n };\n hoverProps.onPointerLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, e.pointerType);\n };\n } else {\n hoverProps.onTouchStart = ()=>{\n state.ignoreEmulatedMouseEvents = true;\n };\n hoverProps.onMouseEnter = (e)=>{\n if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, 'mouse');\n state.ignoreEmulatedMouseEvents = false;\n };\n hoverProps.onMouseLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, 'mouse');\n };\n }\n return {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n };\n }, [\n onHoverStart,\n onHoverChange,\n onHoverEnd,\n isDisabled,\n state\n ]);\n (0, react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{\n // Call the triggerHoverEnd as soon as isDisabled changes to true\n // Safe to call triggerHoverEnd, it will early return if we aren't currently hovering\n if (isDisabled) triggerHoverEnd({\n currentTarget: state.target\n }, state.pointerType);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n isDisabled\n ]);\n return {\n hoverProps: hoverProps,\n isHovered: isHovered\n };\n}\n\n\n\n//# sourceMappingURL=useHover.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91c2VIb3Zlci5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBcUk7O0FBRXJJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVUsMkdBQTJHO0FBQ3JILHNDQUFzQywyQ0FBZTtBQUNyRCxvQkFBb0IseUNBQWE7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsUUFBUSw0Q0FBZ0I7QUFDeEIsVUFBVSwyREFBMkQsTUFBTSwwQ0FBYztBQUN6RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVO0FBQ1Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsNENBQWdCO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHK0Q7QUFDL0QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0ByZWFjdC1hcmlhL2ludGVyYWN0aW9ucy9kaXN0L3VzZUhvdmVyLm1qcz82MjJkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlU3RhdGUgYXMgJEFXeG5UJHVzZVN0YXRlLCB1c2VSZWYgYXMgJEFXeG5UJHVzZVJlZiwgdXNlRWZmZWN0IGFzICRBV3huVCR1c2VFZmZlY3QsIHVzZU1lbW8gYXMgJEFXeG5UJHVzZU1lbW99IGZyb20gXCJyZWFjdFwiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjAgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi8gLy8gUG9ydGlvbnMgb2YgdGhlIGNvZGUgaW4gdGhpcyBmaWxlIGFyZSBiYXNlZCBvbiBjb2RlIGZyb20gcmVhY3QuXG4vLyBPcmlnaW5hbCBsaWNlbnNpbmcgZm9yIHRoZSBmb2xsb3dpbmcgY2FuIGJlIGZvdW5kIGluIHRoZVxuLy8gTk9USUNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvY2M3YzFhZWNlNDZhNmI2OWI0MTk1OGQ3MzFlMGZkMjdjOTRiZmM2Yy9wYWNrYWdlcy9yZWFjdC1pbnRlcmFjdGlvbnNcblxuLy8gaU9TIGZpcmVzIG9uUG9pbnRlckVudGVyIHR3aWNlOiBvbmNlIHdpdGggcG9pbnRlclR5cGU9XCJ0b3VjaFwiIGFuZCBhZ2FpbiB3aXRoIHBvaW50ZXJUeXBlPVwibW91c2VcIi5cbi8vIFdlIHdhbnQgdG8gaWdub3JlIHRoZXNlIGVtdWxhdGVkIGV2ZW50cyBzbyB0aGV5IGRvIG5vdCB0cmlnZ2VyIGhvdmVyIGJlaGF2aW9yLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQ2MDkuXG5sZXQgJDYxNzliOTM2NzA1ZTc2ZDMkdmFyJGdsb2JhbElnbm9yZUVtdWxhdGVkTW91c2VFdmVudHMgPSBmYWxzZTtcbmxldCAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkaG92ZXJDb3VudCA9IDA7XG5mdW5jdGlvbiAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkc2V0R2xvYmFsSWdub3JlRW11bGF0ZWRNb3VzZUV2ZW50cygpIHtcbiAgICAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkZ2xvYmFsSWdub3JlRW11bGF0ZWRNb3VzZUV2ZW50cyA9IHRydWU7XG4gICAgLy8gQ2xlYXIgZ2xvYmFsSWdub3JlRW11bGF0ZWRNb3VzZUV2ZW50cyBhZnRlciBhIHNob3J0IHRpbWVvdXQuIGlPUyBmaXJlcyBvblBvaW50ZXJFbnRlclxuICAgIC8vIHdpdGggcG9pbnRlclR5cGU9XCJtb3VzZVwiIGltbWVkaWF0ZWx5IGFmdGVyIG9uUG9pbnRlclVwIGFuZCBiZWZvcmUgb25Gb2N1cy4gT24gb3RoZXJcbiAgICAvLyBkZXZpY2VzIHRoYXQgZG9uJ3QgaGF2ZSB0aGlzIHF1aXJrLCB3ZSBkb24ndCB3YW50IHRvIGlnbm9yZSBhIG1vdXNlIGhvdmVyIHNvbWV0aW1lIGluXG4gICAgLy8gdGhlIGRpc3RhbnQgZnV0dXJlIGJlY2F1c2UgYSB1c2VyIHByZXZpb3VzbHkgdG91Y2hlZCB0aGUgZWxlbWVudC5cbiAgICBzZXRUaW1lb3V0KCgpPT57XG4gICAgICAgICQ2MTc5YjkzNjcwNWU3NmQzJHZhciRnbG9iYWxJZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzID0gZmFsc2U7XG4gICAgfSwgNTApO1xufVxuZnVuY3Rpb24gJDYxNzliOTM2NzA1ZTc2ZDMkdmFyJGhhbmRsZUdsb2JhbFBvaW50ZXJFdmVudChlKSB7XG4gICAgaWYgKGUucG9pbnRlclR5cGUgPT09ICd0b3VjaCcpICQ2MTc5YjkzNjcwNWU3NmQzJHZhciRzZXRHbG9iYWxJZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzKCk7XG59XG5mdW5jdGlvbiAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkc2V0dXBHbG9iYWxUb3VjaEV2ZW50cygpIHtcbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJykgcmV0dXJuO1xuICAgIGlmICh0eXBlb2YgUG9pbnRlckV2ZW50ICE9PSAndW5kZWZpbmVkJykgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgJDYxNzliOTM2NzA1ZTc2ZDMkdmFyJGhhbmRsZUdsb2JhbFBvaW50ZXJFdmVudCk7XG4gICAgZWxzZSBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsICQ2MTc5YjkzNjcwNWU3NmQzJHZhciRzZXRHbG9iYWxJZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzKTtcbiAgICAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkaG92ZXJDb3VudCsrO1xuICAgIHJldHVybiAoKT0+e1xuICAgICAgICAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkaG92ZXJDb3VudC0tO1xuICAgICAgICBpZiAoJDYxNzliOTM2NzA1ZTc2ZDMkdmFyJGhvdmVyQ291bnQgPiAwKSByZXR1cm47XG4gICAgICAgIGlmICh0eXBlb2YgUG9pbnRlckV2ZW50ICE9PSAndW5kZWZpbmVkJykgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgJDYxNzliOTM2NzA1ZTc2ZDMkdmFyJGhhbmRsZUdsb2JhbFBvaW50ZXJFdmVudCk7XG4gICAgICAgIGVsc2UgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCAkNjE3OWI5MzY3MDVlNzZkMyR2YXIkc2V0R2xvYmFsSWdub3JlRW11bGF0ZWRNb3VzZUV2ZW50cyk7XG4gICAgfTtcbn1cbmZ1bmN0aW9uICQ2MTc5YjkzNjcwNWU3NmQzJGV4cG9ydCRhZTc4MGRhZjI5ZTZkNDU2KHByb3BzKSB7XG4gICAgbGV0IHsgb25Ib3ZlclN0YXJ0OiBvbkhvdmVyU3RhcnQsIG9uSG92ZXJDaGFuZ2U6IG9uSG92ZXJDaGFuZ2UsIG9uSG92ZXJFbmQ6IG9uSG92ZXJFbmQsIGlzRGlzYWJsZWQ6IGlzRGlzYWJsZWQgfSA9IHByb3BzO1xuICAgIGxldCBbaXNIb3ZlcmVkLCBzZXRIb3ZlcmVkXSA9ICgwLCAkQVd4blQkdXNlU3RhdGUpKGZhbHNlKTtcbiAgICBsZXQgc3RhdGUgPSAoMCwgJEFXeG5UJHVzZVJlZikoe1xuICAgICAgICBpc0hvdmVyZWQ6IGZhbHNlLFxuICAgICAgICBpZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzOiBmYWxzZSxcbiAgICAgICAgcG9pbnRlclR5cGU6ICcnLFxuICAgICAgICB0YXJnZXQ6IG51bGxcbiAgICB9KS5jdXJyZW50O1xuICAgICgwLCAkQVd4blQkdXNlRWZmZWN0KSgkNjE3OWI5MzY3MDVlNzZkMyR2YXIkc2V0dXBHbG9iYWxUb3VjaEV2ZW50cywgW10pO1xuICAgIGxldCB7IGhvdmVyUHJvcHM6IGhvdmVyUHJvcHMsIHRyaWdnZXJIb3ZlckVuZDogdHJpZ2dlckhvdmVyRW5kIH0gPSAoMCwgJEFXeG5UJHVzZU1lbW8pKCgpPT57XG4gICAgICAgIGxldCB0cmlnZ2VySG92ZXJTdGFydCA9IChldmVudCwgcG9pbnRlclR5cGUpPT57XG4gICAgICAgICAgICBzdGF0ZS5wb2ludGVyVHlwZSA9IHBvaW50ZXJUeXBlO1xuICAgICAgICAgICAgaWYgKGlzRGlzYWJsZWQgfHwgcG9pbnRlclR5cGUgPT09ICd0b3VjaCcgfHwgc3RhdGUuaXNIb3ZlcmVkIHx8ICFldmVudC5jdXJyZW50VGFyZ2V0LmNvbnRhaW5zKGV2ZW50LnRhcmdldCkpIHJldHVybjtcbiAgICAgICAgICAgIHN0YXRlLmlzSG92ZXJlZCA9IHRydWU7XG4gICAgICAgICAgICBsZXQgdGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldDtcbiAgICAgICAgICAgIHN0YXRlLnRhcmdldCA9IHRhcmdldDtcbiAgICAgICAgICAgIGlmIChvbkhvdmVyU3RhcnQpIG9uSG92ZXJTdGFydCh7XG4gICAgICAgICAgICAgICAgdHlwZTogJ2hvdmVyc3RhcnQnLFxuICAgICAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAgICAgIHBvaW50ZXJUeXBlOiBwb2ludGVyVHlwZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAob25Ib3ZlckNoYW5nZSkgb25Ib3ZlckNoYW5nZSh0cnVlKTtcbiAgICAgICAgICAgIHNldEhvdmVyZWQodHJ1ZSk7XG4gICAgICAgIH07XG4gICAgICAgIGxldCB0cmlnZ2VySG92ZXJFbmQgPSAoZXZlbnQsIHBvaW50ZXJUeXBlKT0+e1xuICAgICAgICAgICAgc3RhdGUucG9pbnRlclR5cGUgPSAnJztcbiAgICAgICAgICAgIHN0YXRlLnRhcmdldCA9IG51bGw7XG4gICAgICAgICAgICBpZiAocG9pbnRlclR5cGUgPT09ICd0b3VjaCcgfHwgIXN0YXRlLmlzSG92ZXJlZCkgcmV0dXJuO1xuICAgICAgICAgICAgc3RhdGUuaXNIb3ZlcmVkID0gZmFsc2U7XG4gICAgICAgICAgICBsZXQgdGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldDtcbiAgICAgICAgICAgIGlmIChvbkhvdmVyRW5kKSBvbkhvdmVyRW5kKHtcbiAgICAgICAgICAgICAgICB0eXBlOiAnaG92ZXJlbmQnLFxuICAgICAgICAgICAgICAgIHRhcmdldDogdGFyZ2V0LFxuICAgICAgICAgICAgICAgIHBvaW50ZXJUeXBlOiBwb2ludGVyVHlwZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBpZiAob25Ib3ZlckNoYW5nZSkgb25Ib3ZlckNoYW5nZShmYWxzZSk7XG4gICAgICAgICAgICBzZXRIb3ZlcmVkKGZhbHNlKTtcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGhvdmVyUHJvcHMgPSB7fTtcbiAgICAgICAgaWYgKHR5cGVvZiBQb2ludGVyRXZlbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBob3ZlclByb3BzLm9uUG9pbnRlckVudGVyID0gKGUpPT57XG4gICAgICAgICAgICAgICAgaWYgKCQ2MTc5YjkzNjcwNWU3NmQzJHZhciRnbG9iYWxJZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzICYmIGUucG9pbnRlclR5cGUgPT09ICdtb3VzZScpIHJldHVybjtcbiAgICAgICAgICAgICAgICB0cmlnZ2VySG92ZXJTdGFydChlLCBlLnBvaW50ZXJUeXBlKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBob3ZlclByb3BzLm9uUG9pbnRlckxlYXZlID0gKGUpPT57XG4gICAgICAgICAgICAgICAgaWYgKCFpc0Rpc2FibGVkICYmIGUuY3VycmVudFRhcmdldC5jb250YWlucyhlLnRhcmdldCkpIHRyaWdnZXJIb3ZlckVuZChlLCBlLnBvaW50ZXJUeXBlKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBob3ZlclByb3BzLm9uVG91Y2hTdGFydCA9ICgpPT57XG4gICAgICAgICAgICAgICAgc3RhdGUuaWdub3JlRW11bGF0ZWRNb3VzZUV2ZW50cyA9IHRydWU7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaG92ZXJQcm9wcy5vbk1vdXNlRW50ZXIgPSAoZSk9PntcbiAgICAgICAgICAgICAgICBpZiAoIXN0YXRlLmlnbm9yZUVtdWxhdGVkTW91c2VFdmVudHMgJiYgISQ2MTc5YjkzNjcwNWU3NmQzJHZhciRnbG9iYWxJZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzKSB0cmlnZ2VySG92ZXJTdGFydChlLCAnbW91c2UnKTtcbiAgICAgICAgICAgICAgICBzdGF0ZS5pZ25vcmVFbXVsYXRlZE1vdXNlRXZlbnRzID0gZmFsc2U7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgaG92ZXJQcm9wcy5vbk1vdXNlTGVhdmUgPSAoZSk9PntcbiAgICAgICAgICAgICAgICBpZiAoIWlzRGlzYWJsZWQgJiYgZS5jdXJyZW50VGFyZ2V0LmNvbnRhaW5zKGUudGFyZ2V0KSkgdHJpZ2dlckhvdmVyRW5kKGUsICdtb3VzZScpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaG92ZXJQcm9wczogaG92ZXJQcm9wcyxcbiAgICAgICAgICAgIHRyaWdnZXJIb3ZlckVuZDogdHJpZ2dlckhvdmVyRW5kXG4gICAgICAgIH07XG4gICAgfSwgW1xuICAgICAgICBvbkhvdmVyU3RhcnQsXG4gICAgICAgIG9uSG92ZXJDaGFuZ2UsXG4gICAgICAgIG9uSG92ZXJFbmQsXG4gICAgICAgIGlzRGlzYWJsZWQsXG4gICAgICAgIHN0YXRlXG4gICAgXSk7XG4gICAgKDAsICRBV3huVCR1c2VFZmZlY3QpKCgpPT57XG4gICAgICAgIC8vIENhbGwgdGhlIHRyaWdnZXJIb3ZlckVuZCBhcyBzb29uIGFzIGlzRGlzYWJsZWQgY2hhbmdlcyB0byB0cnVlXG4gICAgICAgIC8vIFNhZmUgdG8gY2FsbCB0cmlnZ2VySG92ZXJFbmQsIGl0IHdpbGwgZWFybHkgcmV0dXJuIGlmIHdlIGFyZW4ndCBjdXJyZW50bHkgaG92ZXJpbmdcbiAgICAgICAgaWYgKGlzRGlzYWJsZWQpIHRyaWdnZXJIb3ZlckVuZCh7XG4gICAgICAgICAgICBjdXJyZW50VGFyZ2V0OiBzdGF0ZS50YXJnZXRcbiAgICAgICAgfSwgc3RhdGUucG9pbnRlclR5cGUpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9leGhhdXN0aXZlLWRlcHNcbiAgICB9LCBbXG4gICAgICAgIGlzRGlzYWJsZWRcbiAgICBdKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBob3ZlclByb3BzOiBob3ZlclByb3BzLFxuICAgICAgICBpc0hvdmVyZWQ6IGlzSG92ZXJlZFxuICAgIH07XG59XG5cblxuZXhwb3J0IHskNjE3OWI5MzY3MDVlNzZkMyRleHBvcnQkYWU3ODBkYWYyOWU2ZDQ1NiBhcyB1c2VIb3Zlcn07XG4vLyMgc291cmNlTWFwcGluZ1VSTD11c2VIb3Zlci5tb2R1bGUuanMubWFwXG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/interactions/dist/useHover.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/interactions/dist/utils.mjs":
|
||
/*!**************************************************************!*\
|
||
!*** ./node_modules/@react-aria/interactions/dist/utils.mjs ***!
|
||
\**************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SyntheticFocusEvent: function() { return /* binding */ $8a9cb279dc87e130$export$905e7fc544a71f36; },\n/* harmony export */ useSyntheticBlurEvent: function() { return /* binding */ $8a9cb279dc87e130$export$715c682d09d639cc; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/useLayoutEffect.mjs\");\n/* harmony import */ var _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @react-aria/utils */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/useEffectEvent.mjs\");\n\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nclass $8a9cb279dc87e130$export$905e7fc544a71f36 {\n isDefaultPrevented() {\n return this.nativeEvent.defaultPrevented;\n }\n preventDefault() {\n this.defaultPrevented = true;\n this.nativeEvent.preventDefault();\n }\n stopPropagation() {\n this.nativeEvent.stopPropagation();\n this.isPropagationStopped = ()=>true;\n }\n isPropagationStopped() {\n return false;\n }\n persist() {}\n constructor(type, nativeEvent){\n this.nativeEvent = nativeEvent;\n this.target = nativeEvent.target;\n this.currentTarget = nativeEvent.currentTarget;\n this.relatedTarget = nativeEvent.relatedTarget;\n this.bubbles = nativeEvent.bubbles;\n this.cancelable = nativeEvent.cancelable;\n this.defaultPrevented = nativeEvent.defaultPrevented;\n this.eventPhase = nativeEvent.eventPhase;\n this.isTrusted = nativeEvent.isTrusted;\n this.timeStamp = nativeEvent.timeStamp;\n this.type = type;\n }\n}\nfunction $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {\n let stateRef = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n isFocused: false,\n observer: null\n });\n // Clean up MutationObserver on unmount. See below.\n // eslint-disable-next-line arrow-body-style\n (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_1__.useLayoutEffect)(()=>{\n const state = stateRef.current;\n return ()=>{\n if (state.observer) {\n state.observer.disconnect();\n state.observer = null;\n }\n };\n }, []);\n let dispatchBlur = (0, _react_aria_utils__WEBPACK_IMPORTED_MODULE_2__.useEffectEvent)((e)=>{\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n });\n // This function is called during a React onFocus event.\n return (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((e)=>{\n // React does not fire onBlur when an element is disabled. https://github.com/facebook/react/issues/9142\n // Most browsers fire a native focusout event in this case, except for Firefox. In that case, we use a\n // MutationObserver to watch for the disabled attribute, and dispatch these events ourselves.\n // For browsers that do, focusout fires before the MutationObserver, so onBlur should not fire twice.\n if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {\n stateRef.current.isFocused = true;\n let target = e.target;\n let onBlurHandler = (e)=>{\n stateRef.current.isFocused = false;\n if (target.disabled) // For backward compatibility, dispatch a (fake) React synthetic event.\n dispatchBlur(new $8a9cb279dc87e130$export$905e7fc544a71f36('blur', e));\n // We no longer need the MutationObserver once the target is blurred.\n if (stateRef.current.observer) {\n stateRef.current.observer.disconnect();\n stateRef.current.observer = null;\n }\n };\n target.addEventListener('focusout', onBlurHandler, {\n once: true\n });\n stateRef.current.observer = new MutationObserver(()=>{\n if (stateRef.current.isFocused && target.disabled) {\n var _stateRef_current_observer;\n (_stateRef_current_observer = stateRef.current.observer) === null || _stateRef_current_observer === void 0 ? void 0 : _stateRef_current_observer.disconnect();\n let relatedTargetEl = target === document.activeElement ? null : document.activeElement;\n target.dispatchEvent(new FocusEvent('blur', {\n relatedTarget: relatedTargetEl\n }));\n target.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true,\n relatedTarget: relatedTargetEl\n }));\n }\n });\n stateRef.current.observer.observe(target, {\n attributes: true,\n attributeFilter: [\n 'disabled'\n ]\n });\n }\n }, [\n dispatchBlur\n ]);\n}\n\n\n\n//# sourceMappingURL=utils.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91dGlscy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBaUY7QUFDb0M7O0FBRXJIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIseUNBQWE7QUFDcEM7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsUUFBUSw4REFBc0I7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsMkJBQTJCLDZEQUFxQjtBQUNoRDtBQUNBLEtBQUs7QUFDTDtBQUNBLGVBQWUsOENBQWtCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTs7O0FBRzhJO0FBQzlJIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9pbnRlcmFjdGlvbnMvZGlzdC91dGlscy5tanM/NTM0YyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3VzZVJlZiBhcyAkNmRmSWUkdXNlUmVmLCB1c2VDYWxsYmFjayBhcyAkNmRmSWUkdXNlQ2FsbGJhY2t9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHt1c2VMYXlvdXRFZmZlY3QgYXMgJDZkZkllJHVzZUxheW91dEVmZmVjdCwgdXNlRWZmZWN0RXZlbnQgYXMgJDZkZkllJHVzZUVmZmVjdEV2ZW50fSBmcm9tIFwiQHJlYWN0LWFyaWEvdXRpbHNcIjtcblxuLypcbiAqIENvcHlyaWdodCAyMDIwIEFkb2JlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogVGhpcyBmaWxlIGlzIGxpY2Vuc2VkIHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHlcbiAqIG9mIHRoZSBMaWNlbnNlIGF0IGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXJcbiAqIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OU1xuICogT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovIFxuXG5jbGFzcyAkOGE5Y2IyNzlkYzg3ZTEzMCRleHBvcnQkOTA1ZTdmYzU0NGE3MWYzNiB7XG4gICAgaXNEZWZhdWx0UHJldmVudGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5uYXRpdmVFdmVudC5kZWZhdWx0UHJldmVudGVkO1xuICAgIH1cbiAgICBwcmV2ZW50RGVmYXVsdCgpIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0UHJldmVudGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5uYXRpdmVFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgICBzdG9wUHJvcGFnYXRpb24oKSB7XG4gICAgICAgIHRoaXMubmF0aXZlRXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMuaXNQcm9wYWdhdGlvblN0b3BwZWQgPSAoKT0+dHJ1ZTtcbiAgICB9XG4gICAgaXNQcm9wYWdhdGlvblN0b3BwZWQoKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcGVyc2lzdCgpIHt9XG4gICAgY29uc3RydWN0b3IodHlwZSwgbmF0aXZlRXZlbnQpe1xuICAgICAgICB0aGlzLm5hdGl2ZUV2ZW50ID0gbmF0aXZlRXZlbnQ7XG4gICAgICAgIHRoaXMudGFyZ2V0ID0gbmF0aXZlRXZlbnQudGFyZ2V0O1xuICAgICAgICB0aGlzLmN1cnJlbnRUYXJnZXQgPSBuYXRpdmVFdmVudC5jdXJyZW50VGFyZ2V0O1xuICAgICAgICB0aGlzLnJlbGF0ZWRUYXJnZXQgPSBuYXRpdmVFdmVudC5yZWxhdGVkVGFyZ2V0O1xuICAgICAgICB0aGlzLmJ1YmJsZXMgPSBuYXRpdmVFdmVudC5idWJibGVzO1xuICAgICAgICB0aGlzLmNhbmNlbGFibGUgPSBuYXRpdmVFdmVudC5jYW5jZWxhYmxlO1xuICAgICAgICB0aGlzLmRlZmF1bHRQcmV2ZW50ZWQgPSBuYXRpdmVFdmVudC5kZWZhdWx0UHJldmVudGVkO1xuICAgICAgICB0aGlzLmV2ZW50UGhhc2UgPSBuYXRpdmVFdmVudC5ldmVudFBoYXNlO1xuICAgICAgICB0aGlzLmlzVHJ1c3RlZCA9IG5hdGl2ZUV2ZW50LmlzVHJ1c3RlZDtcbiAgICAgICAgdGhpcy50aW1lU3RhbXAgPSBuYXRpdmVFdmVudC50aW1lU3RhbXA7XG4gICAgICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgfVxufVxuZnVuY3Rpb24gJDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDcxNWM2ODJkMDlkNjM5Y2Mob25CbHVyKSB7XG4gICAgbGV0IHN0YXRlUmVmID0gKDAsICQ2ZGZJZSR1c2VSZWYpKHtcbiAgICAgICAgaXNGb2N1c2VkOiBmYWxzZSxcbiAgICAgICAgb2JzZXJ2ZXI6IG51bGxcbiAgICB9KTtcbiAgICAvLyBDbGVhbiB1cCBNdXRhdGlvbk9ic2VydmVyIG9uIHVubW91bnQuIFNlZSBiZWxvdy5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYXJyb3ctYm9keS1zdHlsZVxuICAgICgwLCAkNmRmSWUkdXNlTGF5b3V0RWZmZWN0KSgoKT0+e1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHN0YXRlUmVmLmN1cnJlbnQ7XG4gICAgICAgIHJldHVybiAoKT0+e1xuICAgICAgICAgICAgaWYgKHN0YXRlLm9ic2VydmVyKSB7XG4gICAgICAgICAgICAgICAgc3RhdGUub2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgICAgIHN0YXRlLm9ic2VydmVyID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG4gICAgbGV0IGRpc3BhdGNoQmx1ciA9ICgwLCAkNmRmSWUkdXNlRWZmZWN0RXZlbnQpKChlKT0+e1xuICAgICAgICBvbkJsdXIgPT09IG51bGwgfHwgb25CbHVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkJsdXIoZSk7XG4gICAgfSk7XG4gICAgLy8gVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgZHVyaW5nIGEgUmVhY3Qgb25Gb2N1cyBldmVudC5cbiAgICByZXR1cm4gKDAsICQ2ZGZJZSR1c2VDYWxsYmFjaykoKGUpPT57XG4gICAgICAgIC8vIFJlYWN0IGRvZXMgbm90IGZpcmUgb25CbHVyIHdoZW4gYW4gZWxlbWVudCBpcyBkaXNhYmxlZC4gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L2lzc3Vlcy85MTQyXG4gICAgICAgIC8vIE1vc3QgYnJvd3NlcnMgZmlyZSBhIG5hdGl2ZSBmb2N1c291dCBldmVudCBpbiB0aGlzIGNhc2UsIGV4Y2VwdCBmb3IgRmlyZWZveC4gSW4gdGhhdCBjYXNlLCB3ZSB1c2UgYVxuICAgICAgICAvLyBNdXRhdGlvbk9ic2VydmVyIHRvIHdhdGNoIGZvciB0aGUgZGlzYWJsZWQgYXR0cmlidXRlLCBhbmQgZGlzcGF0Y2ggdGhlc2UgZXZlbnRzIG91cnNlbHZlcy5cbiAgICAgICAgLy8gRm9yIGJyb3dzZXJzIHRoYXQgZG8sIGZvY3Vzb3V0IGZpcmVzIGJlZm9yZSB0aGUgTXV0YXRpb25PYnNlcnZlciwgc28gb25CbHVyIHNob3VsZCBub3QgZmlyZSB0d2ljZS5cbiAgICAgICAgaWYgKGUudGFyZ2V0IGluc3RhbmNlb2YgSFRNTEJ1dHRvbkVsZW1lbnQgfHwgZS50YXJnZXQgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50IHx8IGUudGFyZ2V0IGluc3RhbmNlb2YgSFRNTFRleHRBcmVhRWxlbWVudCB8fCBlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxTZWxlY3RFbGVtZW50KSB7XG4gICAgICAgICAgICBzdGF0ZVJlZi5jdXJyZW50LmlzRm9jdXNlZCA9IHRydWU7XG4gICAgICAgICAgICBsZXQgdGFyZ2V0ID0gZS50YXJnZXQ7XG4gICAgICAgICAgICBsZXQgb25CbHVySGFuZGxlciA9IChlKT0+e1xuICAgICAgICAgICAgICAgIHN0YXRlUmVmLmN1cnJlbnQuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgaWYgKHRhcmdldC5kaXNhYmxlZCkgLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIGRpc3BhdGNoIGEgKGZha2UpIFJlYWN0IHN5bnRoZXRpYyBldmVudC5cbiAgICAgICAgICAgICAgICBkaXNwYXRjaEJsdXIobmV3ICQ4YTljYjI3OWRjODdlMTMwJGV4cG9ydCQ5MDVlN2ZjNTQ0YTcxZjM2KCdibHVyJywgZSkpO1xuICAgICAgICAgICAgICAgIC8vIFdlIG5vIGxvbmdlciBuZWVkIHRoZSBNdXRhdGlvbk9ic2VydmVyIG9uY2UgdGhlIHRhcmdldCBpcyBibHVycmVkLlxuICAgICAgICAgICAgICAgIGlmIChzdGF0ZVJlZi5jdXJyZW50Lm9ic2VydmVyKSB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXRlUmVmLmN1cnJlbnQub2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICBzdGF0ZVJlZi5jdXJyZW50Lm9ic2VydmVyID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0Jywgb25CbHVySGFuZGxlciwge1xuICAgICAgICAgICAgICAgIG9uY2U6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgc3RhdGVSZWYuY3VycmVudC5vYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKCgpPT57XG4gICAgICAgICAgICAgICAgaWYgKHN0YXRlUmVmLmN1cnJlbnQuaXNGb2N1c2VkICYmIHRhcmdldC5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgICAgICB2YXIgX3N0YXRlUmVmX2N1cnJlbnRfb2JzZXJ2ZXI7XG4gICAgICAgICAgICAgICAgICAgIChfc3RhdGVSZWZfY3VycmVudF9vYnNlcnZlciA9IHN0YXRlUmVmLmN1cnJlbnQub2JzZXJ2ZXIpID09PSBudWxsIHx8IF9zdGF0ZVJlZl9jdXJyZW50X29ic2VydmVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfc3RhdGVSZWZfY3VycmVudF9vYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCByZWxhdGVkVGFyZ2V0RWwgPSB0YXJnZXQgPT09IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPyBudWxsIDogZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LmRpc3BhdGNoRXZlbnQobmV3IEZvY3VzRXZlbnQoJ2JsdXInLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZWxhdGVkVGFyZ2V0OiByZWxhdGVkVGFyZ2V0RWxcbiAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXQuZGlzcGF0Y2hFdmVudChuZXcgRm9jdXNFdmVudCgnZm9jdXNvdXQnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBidWJibGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZFRhcmdldDogcmVsYXRlZFRhcmdldEVsXG4gICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHN0YXRlUmVmLmN1cnJlbnQub2JzZXJ2ZXIub2JzZXJ2ZSh0YXJnZXQsIHtcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiB0cnVlLFxuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZUZpbHRlcjogW1xuICAgICAgICAgICAgICAgICAgICAnZGlzYWJsZWQnXG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9LCBbXG4gICAgICAgIGRpc3BhdGNoQmx1clxuICAgIF0pO1xufVxuXG5cbmV4cG9ydCB7JDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDkwNWU3ZmM1NDRhNzFmMzYgYXMgU3ludGhldGljRm9jdXNFdmVudCwgJDhhOWNiMjc5ZGM4N2UxMzAkZXhwb3J0JDcxNWM2ODJkMDlkNjM5Y2MgYXMgdXNlU3ludGhldGljQmx1ckV2ZW50fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXV0aWxzLm1vZHVsZS5qcy5tYXBcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/interactions/dist/utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/ssr/dist/SSRProvider.mjs":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/@react-aria/ssr/dist/SSRProvider.mjs ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SSRProvider: function() { return /* binding */ $b5e257d569688ac6$export$9f8ac96af4b1b2ae; },\n/* harmony export */ useIsSSR: function() { return /* binding */ $b5e257d569688ac6$export$535bd6ca7f90a273; },\n/* harmony export */ useSSRSafeId: function() { return /* binding */ $b5e257d569688ac6$export$619500959fc48b26; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $b5e257d569688ac6$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $b5e257d569688ac6$var$SSRContext = /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createContext($b5e257d569688ac6$var$defaultContext);\nconst $b5e257d569688ac6$var$IsSSRContext = /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createContext(false);\n// This is only used in React < 18.\nfunction $b5e257d569688ac6$var$LegacySSRProvider(props) {\n let cur = (0, react__WEBPACK_IMPORTED_MODULE_0__.useContext)($b5e257d569688ac6$var$SSRContext);\n let counter = $b5e257d569688ac6$var$useCounter(cur === $b5e257d569688ac6$var$defaultContext);\n let [isSSR, setIsSSR] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)(true);\n let value = (0, react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $b5e257d569688ac6$var$defaultContext ? '' : `${cur.prefix}-${counter}`,\n current: 0\n }), [\n cur,\n counter\n ]);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof document !== 'undefined') // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect)(()=>{\n setIsSSR(false);\n }, []);\n return /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createElement($b5e257d569688ac6$var$SSRContext.Provider, {\n value: value\n }, /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createElement($b5e257d569688ac6$var$IsSSRContext.Provider, {\n value: isSSR\n }, props.children));\n}\nlet $b5e257d569688ac6$var$warnedAboutSSRProvider = false;\nfunction $b5e257d569688ac6$export$9f8ac96af4b1b2ae(props) {\n if (typeof (0, react__WEBPACK_IMPORTED_MODULE_0__)['useId'] === 'function') {\n if ( true && !$b5e257d569688ac6$var$warnedAboutSSRProvider) {\n console.warn('In React 18, SSRProvider is not necessary and is a noop. You can remove it from your app.');\n $b5e257d569688ac6$var$warnedAboutSSRProvider = true;\n }\n return /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createElement((0, react__WEBPACK_IMPORTED_MODULE_0__).Fragment, null, props.children);\n }\n return /*#__PURE__*/ (0, react__WEBPACK_IMPORTED_MODULE_0__).createElement($b5e257d569688ac6$var$LegacySSRProvider, props);\n}\nlet $b5e257d569688ac6$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nlet $b5e257d569688ac6$var$componentIds = new WeakMap();\nfunction $b5e257d569688ac6$var$useCounter(isDisabled = false) {\n let ctx = (0, react__WEBPACK_IMPORTED_MODULE_0__.useContext)($b5e257d569688ac6$var$SSRContext);\n let ref = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n // eslint-disable-next-line rulesdir/pure-render\n if (ref.current === null && !isDisabled) {\n var _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner, _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n // In strict mode, React renders components twice, and the ref will be reset to null on the second render.\n // This means our id counter will be incremented twice instead of once. This is a problem because on the\n // server, components are only rendered once and so ids generated on the server won't match the client.\n // In React 18, useId was introduced to solve this, but it is not available in older versions. So to solve this\n // we need to use some React internals to access the underlying Fiber instance, which is stable between renders.\n // This is exposed as ReactCurrentOwner in development, which is all we need since StrictMode only runs in development.\n // To ensure that we only increment the global counter once, we store the starting id for this component in\n // a weak map associated with the Fiber. On the second render, we reset the global counter to this value.\n // Since React runs the second render immediately after the first, this is safe.\n // @ts-ignore\n let currentOwner = (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = (0, react__WEBPACK_IMPORTED_MODULE_0__).__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED === void 0 ? void 0 : (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner = _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner === void 0 ? void 0 : _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner.current;\n if (currentOwner) {\n let prevComponentValue = $b5e257d569688ac6$var$componentIds.get(currentOwner);\n if (prevComponentValue == null) // On the first render, and first call to useId, store the id and state in our weak map.\n $b5e257d569688ac6$var$componentIds.set(currentOwner, {\n id: ctx.current,\n state: currentOwner.memoizedState\n });\n else if (currentOwner.memoizedState !== prevComponentValue.state) {\n // On the second render, the memoizedState gets reset by React.\n // Reset the counter, and remove from the weak map so we don't\n // do this for subsequent useId calls.\n ctx.current = prevComponentValue.id;\n $b5e257d569688ac6$var$componentIds.delete(currentOwner);\n }\n }\n // eslint-disable-next-line rulesdir/pure-render\n ref.current = ++ctx.current;\n }\n // eslint-disable-next-line rulesdir/pure-render\n return ref.current;\n}\nfunction $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {\n let ctx = (0, react__WEBPACK_IMPORTED_MODULE_0__.useContext)($b5e257d569688ac6$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $b5e257d569688ac6$var$defaultContext && !$b5e257d569688ac6$var$canUseDOM) console.warn('When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.');\n let counter = $b5e257d569688ac6$var$useCounter(!!defaultId);\n let prefix = ctx === $b5e257d569688ac6$var$defaultContext && \"development\" === 'test' ? 0 : `react-aria${ctx.prefix}`;\n return defaultId || `${prefix}-${counter}`;\n}\nfunction $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {\n // @ts-ignore\n let id = (0, react__WEBPACK_IMPORTED_MODULE_0__).useId();\n let [didSSR] = (0, react__WEBPACK_IMPORTED_MODULE_0__.useState)($b5e257d569688ac6$export$535bd6ca7f90a273());\n let prefix = didSSR || \"development\" === 'test' ? 'react-aria' : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;\n return defaultId || `${prefix}-${id}`;\n}\nconst $b5e257d569688ac6$export$619500959fc48b26 = typeof (0, react__WEBPACK_IMPORTED_MODULE_0__)['useId'] === 'function' ? $b5e257d569688ac6$var$useModernSSRSafeId : $b5e257d569688ac6$var$useLegacySSRSafeId;\nfunction $b5e257d569688ac6$var$getSnapshot() {\n return false;\n}\nfunction $b5e257d569688ac6$var$getServerSnapshot() {\n return true;\n}\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction $b5e257d569688ac6$var$subscribe(onStoreChange) {\n // noop\n return ()=>{};\n}\nfunction $b5e257d569688ac6$export$535bd6ca7f90a273() {\n // In React 18, we can use useSyncExternalStore to detect if we're server rendering or hydrating.\n if (typeof (0, react__WEBPACK_IMPORTED_MODULE_0__)['useSyncExternalStore'] === 'function') return (0, react__WEBPACK_IMPORTED_MODULE_0__)['useSyncExternalStore']($b5e257d569688ac6$var$subscribe, $b5e257d569688ac6$var$getSnapshot, $b5e257d569688ac6$var$getServerSnapshot);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return (0, react__WEBPACK_IMPORTED_MODULE_0__.useContext)($b5e257d569688ac6$var$IsSSRContext);\n}\n\n\n\n//# sourceMappingURL=SSRProvider.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS9zc3IvZGlzdC9TU1JQcm92aWRlci5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFnTTs7QUFFaE07QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkRBQTJELGtDQUFZO0FBQ3ZFLDZEQUE2RCxrQ0FBWTtBQUN6RTtBQUNBO0FBQ0Esa0JBQWtCLDZDQUFpQjtBQUNuQztBQUNBLGdDQUFnQywyQ0FBZTtBQUMvQyxvQkFBb0IsMENBQWM7QUFDbEM7QUFDQTtBQUNBLDJFQUEyRSxXQUFXLEdBQUcsUUFBUTtBQUNqRztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSxrREFBc0I7QUFDOUI7QUFDQSxLQUFLO0FBQ0wsNkJBQTZCLGtDQUFZO0FBQ3pDO0FBQ0EsS0FBSyxvQkFBb0Isa0NBQVk7QUFDckM7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGtDQUFZO0FBQy9CLFlBQVksS0FBK0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLGtDQUFZLG9CQUFvQixrQ0FBWTtBQUM3RTtBQUNBLDZCQUE2QixrQ0FBWTtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiw2Q0FBaUI7QUFDbkMsa0JBQWtCLHlDQUFhO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEZBQTRGLGtDQUFZO0FBQ3hHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsNkNBQWlCO0FBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFLGFBQW9CLGNBQWMsQ0FBWSxnQkFBZ0IsV0FBVztBQUMxSSwyQkFBMkIsT0FBTyxHQUFHLFFBQVE7QUFDN0M7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCLGtDQUFZO0FBQzdCLHVCQUF1QiwyQ0FBZTtBQUN0QywyQkFBMkIsYUFBb0IsMENBQTBDLDRDQUE0QztBQUNySSwyQkFBMkIsT0FBTyxHQUFHLEdBQUc7QUFDeEM7QUFDQSw2REFBNkQsa0NBQVk7QUFDekU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsa0NBQVkscURBQXFELGtDQUFZO0FBQ2hHO0FBQ0EsZUFBZSw2Q0FBaUI7QUFDaEM7OztBQUdvTDtBQUNwTCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQHJlYWN0LWFyaWEvc3NyL2Rpc3QvU1NSUHJvdmlkZXIubWpzP2UyNjYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICQ2NzBnQiRyZWFjdCwge3VzZUNvbnRleHQgYXMgJDY3MGdCJHVzZUNvbnRleHQsIHVzZVN0YXRlIGFzICQ2NzBnQiR1c2VTdGF0ZSwgdXNlTWVtbyBhcyAkNjcwZ0IkdXNlTWVtbywgdXNlTGF5b3V0RWZmZWN0IGFzICQ2NzBnQiR1c2VMYXlvdXRFZmZlY3QsIHVzZVJlZiBhcyAkNjcwZ0IkdXNlUmVmfSBmcm9tIFwicmVhY3RcIjtcblxuLypcbiAqIENvcHlyaWdodCAyMDIwIEFkb2JlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogVGhpcyBmaWxlIGlzIGxpY2Vuc2VkIHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHlcbiAqIG9mIHRoZSBMaWNlbnNlIGF0IGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXJcbiAqIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OU1xuICogT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovIC8vIFdlIG11c3QgYXZvaWQgYSBjaXJjdWxhciBkZXBlbmRlbmN5IHdpdGggQHJlYWN0LWFyaWEvdXRpbHMsIGFuZCB0aGlzIHVzZUxheW91dEVmZmVjdCBpc1xuLy8gZ3VhcmRlZCBieSBhIGNoZWNrIHRoYXQgaXQgb25seSBydW5zIG9uIHRoZSBjbGllbnQgc2lkZS5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBydWxlc2Rpci91c2VMYXlvdXRFZmZlY3RSdWxlXG5cbi8vIERlZmF1bHQgY29udGV4dCB2YWx1ZSB0byB1c2UgaW4gY2FzZSB0aGVyZSBpcyBubyBTU1JQcm92aWRlci4gVGhpcyBpcyBmaW5lIGZvclxuLy8gY2xpZW50LW9ubHkgYXBwcy4gSW4gb3JkZXIgdG8gc3VwcG9ydCBtdWx0aXBsZSBjb3BpZXMgb2YgUmVhY3QgQXJpYSBwb3RlbnRpYWxseVxuLy8gYmVpbmcgb24gdGhlIHBhZ2UgYXQgb25jZSwgdGhlIHByZWZpeCBpcyBzZXQgdG8gYSByYW5kb20gbnVtYmVyLiBTU1JQcm92aWRlclxuLy8gd2lsbCByZXNldCB0aGlzIHRvIHplcm8gZm9yIGNvbnNpc3RlbmN5IGJldHdlZW4gc2VydmVyIGFuZCBjbGllbnQsIHNvIGluIHRoZVxuLy8gU1NSIGNhc2UgbXVsdGlwbGUgY29waWVzIG9mIFJlYWN0IEFyaWEgaXMgbm90IHN1cHBvcnRlZC5cbmNvbnN0ICRiNWUyNTdkNTY5Njg4YWM2JHZhciRkZWZhdWx0Q29udGV4dCA9IHtcbiAgICBwcmVmaXg6IFN0cmluZyhNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAxMDAwMDAwMDAwMCkpLFxuICAgIGN1cnJlbnQ6IDBcbn07XG5jb25zdCAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkU1NSQ29udGV4dCA9IC8qI19fUFVSRV9fKi8gKDAsICQ2NzBnQiRyZWFjdCkuY3JlYXRlQ29udGV4dCgkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkZGVmYXVsdENvbnRleHQpO1xuY29uc3QgJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJElzU1NSQ29udGV4dCA9IC8qI19fUFVSRV9fKi8gKDAsICQ2NzBnQiRyZWFjdCkuY3JlYXRlQ29udGV4dChmYWxzZSk7XG4vLyBUaGlzIGlzIG9ubHkgdXNlZCBpbiBSZWFjdCA8IDE4LlxuZnVuY3Rpb24gJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJExlZ2FjeVNTUlByb3ZpZGVyKHByb3BzKSB7XG4gICAgbGV0IGN1ciA9ICgwLCAkNjcwZ0IkdXNlQ29udGV4dCkoJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJFNTUkNvbnRleHQpO1xuICAgIGxldCBjb3VudGVyID0gJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJHVzZUNvdW50ZXIoY3VyID09PSAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkZGVmYXVsdENvbnRleHQpO1xuICAgIGxldCBbaXNTU1IsIHNldElzU1NSXSA9ICgwLCAkNjcwZ0IkdXNlU3RhdGUpKHRydWUpO1xuICAgIGxldCB2YWx1ZSA9ICgwLCAkNjcwZ0IkdXNlTWVtbykoKCk9Pih7XG4gICAgICAgICAgICAvLyBJZiB0aGlzIGlzIHRoZSBmaXJzdCBTU1JQcm92aWRlciwgc3RhcnQgd2l0aCBhbiBlbXB0eSBzdHJpbmcgcHJlZml4LCBvdGhlcndpc2VcbiAgICAgICAgICAgIC8vIGFwcGVuZCBhbmQgaW5jcmVtZW50IHRoZSBjb3VudGVyLlxuICAgICAgICAgICAgcHJlZml4OiBjdXIgPT09ICRiNWUyNTdkNTY5Njg4YWM2JHZhciRkZWZhdWx0Q29udGV4dCA/ICcnIDogYCR7Y3VyLnByZWZpeH0tJHtjb3VudGVyfWAsXG4gICAgICAgICAgICBjdXJyZW50OiAwXG4gICAgICAgIH0pLCBbXG4gICAgICAgIGN1cixcbiAgICAgICAgY291bnRlclxuICAgIF0pO1xuICAgIC8vIElmIG9uIHRoZSBjbGllbnQsIGFuZCB0aGUgY29tcG9uZW50IHdhcyBpbml0aWFsbHkgc2VydmVyIHJlbmRlcmVkLFxuICAgIC8vIHRoZW4gc2NoZWR1bGUgYSBsYXlvdXQgZWZmZWN0IHRvIHVwZGF0ZSB0aGUgY29tcG9uZW50IGFmdGVyIGh5ZHJhdGlvbi5cbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJykgLy8gVGhpcyBpZiBzdGF0ZW1lbnQgdGVjaG5pY2FsbHkgYnJlYWtzIHRoZSBydWxlcyBvZiBob29rcywgYnV0IGlzIHNhZmVcbiAgICAvLyBiZWNhdXNlIHRoZSBjb25kaXRpb24gbmV2ZXIgY2hhbmdlcyBhZnRlciBtb3VudGluZy5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QtaG9va3MvcnVsZXMtb2YtaG9va3NcbiAgICAoMCwgJDY3MGdCJHVzZUxheW91dEVmZmVjdCkoKCk9PntcbiAgICAgICAgc2V0SXNTU1IoZmFsc2UpO1xuICAgIH0sIFtdKTtcbiAgICByZXR1cm4gLyojX19QVVJFX18qLyAoMCwgJDY3MGdCJHJlYWN0KS5jcmVhdGVFbGVtZW50KCRiNWUyNTdkNTY5Njg4YWM2JHZhciRTU1JDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgIHZhbHVlOiB2YWx1ZVxuICAgIH0sIC8qI19fUFVSRV9fKi8gKDAsICQ2NzBnQiRyZWFjdCkuY3JlYXRlRWxlbWVudCgkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkSXNTU1JDb250ZXh0LlByb3ZpZGVyLCB7XG4gICAgICAgIHZhbHVlOiBpc1NTUlxuICAgIH0sIHByb3BzLmNoaWxkcmVuKSk7XG59XG5sZXQgJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJHdhcm5lZEFib3V0U1NSUHJvdmlkZXIgPSBmYWxzZTtcbmZ1bmN0aW9uICRiNWUyNTdkNTY5Njg4YWM2JGV4cG9ydCQ5ZjhhYzk2YWY0YjFiMmFlKHByb3BzKSB7XG4gICAgaWYgKHR5cGVvZiAoMCwgJDY3MGdCJHJlYWN0KVsndXNlSWQnXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICd0ZXN0JyAmJiAhJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJHdhcm5lZEFib3V0U1NSUHJvdmlkZXIpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignSW4gUmVhY3QgMTgsIFNTUlByb3ZpZGVyIGlzIG5vdCBuZWNlc3NhcnkgYW5kIGlzIGEgbm9vcC4gWW91IGNhbiByZW1vdmUgaXQgZnJvbSB5b3VyIGFwcC4nKTtcbiAgICAgICAgICAgICRiNWUyNTdkNTY5Njg4YWM2JHZhciR3YXJuZWRBYm91dFNTUlByb3ZpZGVyID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gLyojX19QVVJFX18qLyAoMCwgJDY3MGdCJHJlYWN0KS5jcmVhdGVFbGVtZW50KCgwLCAkNjcwZ0IkcmVhY3QpLkZyYWdtZW50LCBudWxsLCBwcm9wcy5jaGlsZHJlbik7XG4gICAgfVxuICAgIHJldHVybiAvKiNfX1BVUkVfXyovICgwLCAkNjcwZ0IkcmVhY3QpLmNyZWF0ZUVsZW1lbnQoJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJExlZ2FjeVNTUlByb3ZpZGVyLCBwcm9wcyk7XG59XG5sZXQgJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJGNhblVzZURPTSA9IEJvb2xlYW4odHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LmRvY3VtZW50ICYmIHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KTtcbmxldCAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkY29tcG9uZW50SWRzID0gbmV3IFdlYWtNYXAoKTtcbmZ1bmN0aW9uICRiNWUyNTdkNTY5Njg4YWM2JHZhciR1c2VDb3VudGVyKGlzRGlzYWJsZWQgPSBmYWxzZSkge1xuICAgIGxldCBjdHggPSAoMCwgJDY3MGdCJHVzZUNvbnRleHQpKCRiNWUyNTdkNTY5Njg4YWM2JHZhciRTU1JDb250ZXh0KTtcbiAgICBsZXQgcmVmID0gKDAsICQ2NzBnQiR1c2VSZWYpKG51bGwpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBydWxlc2Rpci9wdXJlLXJlbmRlclxuICAgIGlmIChyZWYuY3VycmVudCA9PT0gbnVsbCAmJiAhaXNEaXNhYmxlZCkge1xuICAgICAgICB2YXIgX1JlYWN0X19fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEX1JlYWN0Q3VycmVudE93bmVyLCBfUmVhY3RfX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQ7XG4gICAgICAgIC8vIEluIHN0cmljdCBtb2RlLCBSZWFjdCByZW5kZXJzIGNvbXBvbmVudHMgdHdpY2UsIGFuZCB0aGUgcmVmIHdpbGwgYmUgcmVzZXQgdG8gbnVsbCBvbiB0aGUgc2Vjb25kIHJlbmRlci5cbiAgICAgICAgLy8gVGhpcyBtZWFucyBvdXIgaWQgY291bnRlciB3aWxsIGJlIGluY3JlbWVudGVkIHR3aWNlIGluc3RlYWQgb2Ygb25jZS4gVGhpcyBpcyBhIHByb2JsZW0gYmVjYXVzZSBvbiB0aGVcbiAgICAgICAgLy8gc2VydmVyLCBjb21wb25lbnRzIGFyZSBvbmx5IHJlbmRlcmVkIG9uY2UgYW5kIHNvIGlkcyBnZW5lcmF0ZWQgb24gdGhlIHNlcnZlciB3b24ndCBtYXRjaCB0aGUgY2xpZW50LlxuICAgICAgICAvLyBJbiBSZWFjdCAxOCwgdXNlSWQgd2FzIGludHJvZHVjZWQgdG8gc29sdmUgdGhpcywgYnV0IGl0IGlzIG5vdCBhdmFpbGFibGUgaW4gb2xkZXIgdmVyc2lvbnMuIFNvIHRvIHNvbHZlIHRoaXNcbiAgICAgICAgLy8gd2UgbmVlZCB0byB1c2Ugc29tZSBSZWFjdCBpbnRlcm5hbHMgdG8gYWNjZXNzIHRoZSB1bmRlcmx5aW5nIEZpYmVyIGluc3RhbmNlLCB3aGljaCBpcyBzdGFibGUgYmV0d2VlbiByZW5kZXJzLlxuICAgICAgICAvLyBUaGlzIGlzIGV4cG9zZWQgYXMgUmVhY3RDdXJyZW50T3duZXIgaW4gZGV2ZWxvcG1lbnQsIHdoaWNoIGlzIGFsbCB3ZSBuZWVkIHNpbmNlIFN0cmljdE1vZGUgb25seSBydW5zIGluIGRldmVsb3BtZW50LlxuICAgICAgICAvLyBUbyBlbnN1cmUgdGhhdCB3ZSBvbmx5IGluY3JlbWVudCB0aGUgZ2xvYmFsIGNvdW50ZXIgb25jZSwgd2Ugc3RvcmUgdGhlIHN0YXJ0aW5nIGlkIGZvciB0aGlzIGNvbXBvbmVudCBpblxuICAgICAgICAvLyBhIHdlYWsgbWFwIGFzc29jaWF0ZWQgd2l0aCB0aGUgRmliZXIuIE9uIHRoZSBzZWNvbmQgcmVuZGVyLCB3ZSByZXNldCB0aGUgZ2xvYmFsIGNvdW50ZXIgdG8gdGhpcyB2YWx1ZS5cbiAgICAgICAgLy8gU2luY2UgUmVhY3QgcnVucyB0aGUgc2Vjb25kIHJlbmRlciBpbW1lZGlhdGVseSBhZnRlciB0aGUgZmlyc3QsIHRoaXMgaXMgc2FmZS5cbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBsZXQgY3VycmVudE93bmVyID0gKF9SZWFjdF9fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRCA9ICgwLCAkNjcwZ0IkcmVhY3QpLl9fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEKSA9PT0gbnVsbCB8fCBfUmVhY3RfX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IChfUmVhY3RfX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRURfUmVhY3RDdXJyZW50T3duZXIgPSBfUmVhY3RfX19TRUNSRVRfSU5URVJOQUxTX0RPX05PVF9VU0VfT1JfWU9VX1dJTExfQkVfRklSRUQuUmVhY3RDdXJyZW50T3duZXIpID09PSBudWxsIHx8IF9SZWFjdF9fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRF9SZWFjdEN1cnJlbnRPd25lciA9PT0gdm9pZCAwID8gdm9pZCAwIDogX1JlYWN0X19fU0VDUkVUX0lOVEVSTkFMU19ET19OT1RfVVNFX09SX1lPVV9XSUxMX0JFX0ZJUkVEX1JlYWN0Q3VycmVudE93bmVyLmN1cnJlbnQ7XG4gICAgICAgIGlmIChjdXJyZW50T3duZXIpIHtcbiAgICAgICAgICAgIGxldCBwcmV2Q29tcG9uZW50VmFsdWUgPSAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkY29tcG9uZW50SWRzLmdldChjdXJyZW50T3duZXIpO1xuICAgICAgICAgICAgaWYgKHByZXZDb21wb25lbnRWYWx1ZSA9PSBudWxsKSAvLyBPbiB0aGUgZmlyc3QgcmVuZGVyLCBhbmQgZmlyc3QgY2FsbCB0byB1c2VJZCwgc3RvcmUgdGhlIGlkIGFuZCBzdGF0ZSBpbiBvdXIgd2VhayBtYXAuXG4gICAgICAgICAgICAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkY29tcG9uZW50SWRzLnNldChjdXJyZW50T3duZXIsIHtcbiAgICAgICAgICAgICAgICBpZDogY3R4LmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgc3RhdGU6IGN1cnJlbnRPd25lci5tZW1vaXplZFN0YXRlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGVsc2UgaWYgKGN1cnJlbnRPd25lci5tZW1vaXplZFN0YXRlICE9PSBwcmV2Q29tcG9uZW50VmFsdWUuc3RhdGUpIHtcbiAgICAgICAgICAgICAgICAvLyBPbiB0aGUgc2Vjb25kIHJlbmRlciwgdGhlIG1lbW9pemVkU3RhdGUgZ2V0cyByZXNldCBieSBSZWFjdC5cbiAgICAgICAgICAgICAgICAvLyBSZXNldCB0aGUgY291bnRlciwgYW5kIHJlbW92ZSBmcm9tIHRoZSB3ZWFrIG1hcCBzbyB3ZSBkb24ndFxuICAgICAgICAgICAgICAgIC8vIGRvIHRoaXMgZm9yIHN1YnNlcXVlbnQgdXNlSWQgY2FsbHMuXG4gICAgICAgICAgICAgICAgY3R4LmN1cnJlbnQgPSBwcmV2Q29tcG9uZW50VmFsdWUuaWQ7XG4gICAgICAgICAgICAgICAgJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJGNvbXBvbmVudElkcy5kZWxldGUoY3VycmVudE93bmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnVsZXNkaXIvcHVyZS1yZW5kZXJcbiAgICAgICAgcmVmLmN1cnJlbnQgPSArK2N0eC5jdXJyZW50O1xuICAgIH1cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcnVsZXNkaXIvcHVyZS1yZW5kZXJcbiAgICByZXR1cm4gcmVmLmN1cnJlbnQ7XG59XG5mdW5jdGlvbiAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkdXNlTGVnYWN5U1NSU2FmZUlkKGRlZmF1bHRJZCkge1xuICAgIGxldCBjdHggPSAoMCwgJDY3MGdCJHVzZUNvbnRleHQpKCRiNWUyNTdkNTY5Njg4YWM2JHZhciRTU1JDb250ZXh0KTtcbiAgICAvLyBJZiB3ZSBhcmUgcmVuZGVyaW5nIGluIGEgbm9uLURPTSBlbnZpcm9ubWVudCwgYW5kIHRoZXJlJ3Mgbm8gU1NSUHJvdmlkZXIsXG4gICAgLy8gcHJvdmlkZSBhIHdhcm5pbmcgdG8gaGludCB0byB0aGUgZGV2ZWxvcGVyIHRvIGFkZCBvbmUuXG4gICAgaWYgKGN0eCA9PT0gJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJGRlZmF1bHRDb250ZXh0ICYmICEkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkY2FuVXNlRE9NKSBjb25zb2xlLndhcm4oJ1doZW4gc2VydmVyIHJlbmRlcmluZywgeW91IG11c3Qgd3JhcCB5b3VyIGFwcGxpY2F0aW9uIGluIGFuIDxTU1JQcm92aWRlcj4gdG8gZW5zdXJlIGNvbnNpc3RlbnQgaWRzIGFyZSBnZW5lcmF0ZWQgYmV0d2VlbiB0aGUgY2xpZW50IGFuZCBzZXJ2ZXIuJyk7XG4gICAgbGV0IGNvdW50ZXIgPSAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkdXNlQ291bnRlcighIWRlZmF1bHRJZCk7XG4gICAgbGV0IHByZWZpeCA9IGN0eCA9PT0gJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJGRlZmF1bHRDb250ZXh0ICYmIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAndGVzdCcgPyAncmVhY3QtYXJpYScgOiBgcmVhY3QtYXJpYSR7Y3R4LnByZWZpeH1gO1xuICAgIHJldHVybiBkZWZhdWx0SWQgfHwgYCR7cHJlZml4fS0ke2NvdW50ZXJ9YDtcbn1cbmZ1bmN0aW9uICRiNWUyNTdkNTY5Njg4YWM2JHZhciR1c2VNb2Rlcm5TU1JTYWZlSWQoZGVmYXVsdElkKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGxldCBpZCA9ICgwLCAkNjcwZ0IkcmVhY3QpLnVzZUlkKCk7XG4gICAgbGV0IFtkaWRTU1JdID0gKDAsICQ2NzBnQiR1c2VTdGF0ZSkoJGI1ZTI1N2Q1Njk2ODhhYzYkZXhwb3J0JDUzNWJkNmNhN2Y5MGEyNzMoKSk7XG4gICAgbGV0IHByZWZpeCA9IGRpZFNTUiB8fCBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Rlc3QnID8gJ3JlYWN0LWFyaWEnIDogYHJlYWN0LWFyaWEkeyRiNWUyNTdkNTY5Njg4YWM2JHZhciRkZWZhdWx0Q29udGV4dC5wcmVmaXh9YDtcbiAgICByZXR1cm4gZGVmYXVsdElkIHx8IGAke3ByZWZpeH0tJHtpZH1gO1xufVxuY29uc3QgJGI1ZTI1N2Q1Njk2ODhhYzYkZXhwb3J0JDYxOTUwMDk1OWZjNDhiMjYgPSB0eXBlb2YgKDAsICQ2NzBnQiRyZWFjdClbJ3VzZUlkJ10gPT09ICdmdW5jdGlvbicgPyAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkdXNlTW9kZXJuU1NSU2FmZUlkIDogJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJHVzZUxlZ2FjeVNTUlNhZmVJZDtcbmZ1bmN0aW9uICRiNWUyNTdkNTY5Njg4YWM2JHZhciRnZXRTbmFwc2hvdCgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG59XG5mdW5jdGlvbiAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkZ2V0U2VydmVyU25hcHNob3QoKSB7XG4gICAgcmV0dXJuIHRydWU7XG59XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5mdW5jdGlvbiAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkc3Vic2NyaWJlKG9uU3RvcmVDaGFuZ2UpIHtcbiAgICAvLyBub29wXG4gICAgcmV0dXJuICgpPT57fTtcbn1cbmZ1bmN0aW9uICRiNWUyNTdkNTY5Njg4YWM2JGV4cG9ydCQ1MzViZDZjYTdmOTBhMjczKCkge1xuICAgIC8vIEluIFJlYWN0IDE4LCB3ZSBjYW4gdXNlIHVzZVN5bmNFeHRlcm5hbFN0b3JlIHRvIGRldGVjdCBpZiB3ZSdyZSBzZXJ2ZXIgcmVuZGVyaW5nIG9yIGh5ZHJhdGluZy5cbiAgICBpZiAodHlwZW9mICgwLCAkNjcwZ0IkcmVhY3QpWyd1c2VTeW5jRXh0ZXJuYWxTdG9yZSddID09PSAnZnVuY3Rpb24nKSByZXR1cm4gKDAsICQ2NzBnQiRyZWFjdClbJ3VzZVN5bmNFeHRlcm5hbFN0b3JlJ10oJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJHN1YnNjcmliZSwgJGI1ZTI1N2Q1Njk2ODhhYzYkdmFyJGdldFNuYXBzaG90LCAkYjVlMjU3ZDU2OTY4OGFjNiR2YXIkZ2V0U2VydmVyU25hcHNob3QpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC1ob29rcy9ydWxlcy1vZi1ob29rc1xuICAgIHJldHVybiAoMCwgJDY3MGdCJHVzZUNvbnRleHQpKCRiNWUyNTdkNTY5Njg4YWM2JHZhciRJc1NTUkNvbnRleHQpO1xufVxuXG5cbmV4cG9ydCB7JGI1ZTI1N2Q1Njk2ODhhYzYkZXhwb3J0JDlmOGFjOTZhZjRiMWIyYWUgYXMgU1NSUHJvdmlkZXIsICRiNWUyNTdkNTY5Njg4YWM2JGV4cG9ydCQ1MzViZDZjYTdmOTBhMjczIGFzIHVzZUlzU1NSLCAkYjVlMjU3ZDU2OTY4OGFjNiRleHBvcnQkNjE5NTAwOTU5ZmM0OGIyNiBhcyB1c2VTU1JTYWZlSWR9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9U1NSUHJvdmlkZXIubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/ssr/dist/SSRProvider.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/utils/dist/domHelpers.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/@react-aria/utils/dist/domHelpers.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getOwnerDocument: function() { return /* binding */ $431fbd86ca7dc216$export$b204af158042fbac; },\n/* harmony export */ getOwnerWindow: function() { return /* binding */ $431fbd86ca7dc216$export$f21a1ffae260145a; }\n/* harmony export */ });\nconst $431fbd86ca7dc216$export$b204af158042fbac = (el)=>{\n var _el_ownerDocument;\n return (_el_ownerDocument = el === null || el === void 0 ? void 0 : el.ownerDocument) !== null && _el_ownerDocument !== void 0 ? _el_ownerDocument : document;\n};\nconst $431fbd86ca7dc216$export$f21a1ffae260145a = (el)=>{\n if (el && 'window' in el && el.window === el) return el;\n const doc = $431fbd86ca7dc216$export$b204af158042fbac(el);\n return doc.defaultView || window;\n};\n\n\n\n//# sourceMappingURL=domHelpers.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L2RvbUhlbHBlcnMubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHb0k7QUFDcEkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0ByZWFjdC1hcmlhL3V0aWxzL2Rpc3QvZG9tSGVscGVycy5tanM/MGIxMiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCAkNDMxZmJkODZjYTdkYzIxNiRleHBvcnQkYjIwNGFmMTU4MDQyZmJhYyA9IChlbCk9PntcbiAgICB2YXIgX2VsX293bmVyRG9jdW1lbnQ7XG4gICAgcmV0dXJuIChfZWxfb3duZXJEb2N1bWVudCA9IGVsID09PSBudWxsIHx8IGVsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBlbC5vd25lckRvY3VtZW50KSAhPT0gbnVsbCAmJiBfZWxfb3duZXJEb2N1bWVudCAhPT0gdm9pZCAwID8gX2VsX293bmVyRG9jdW1lbnQgOiBkb2N1bWVudDtcbn07XG5jb25zdCAkNDMxZmJkODZjYTdkYzIxNiRleHBvcnQkZjIxYTFmZmFlMjYwMTQ1YSA9IChlbCk9PntcbiAgICBpZiAoZWwgJiYgJ3dpbmRvdycgaW4gZWwgJiYgZWwud2luZG93ID09PSBlbCkgcmV0dXJuIGVsO1xuICAgIGNvbnN0IGRvYyA9ICQ0MzFmYmQ4NmNhN2RjMjE2JGV4cG9ydCRiMjA0YWYxNTgwNDJmYmFjKGVsKTtcbiAgICByZXR1cm4gZG9jLmRlZmF1bHRWaWV3IHx8IHdpbmRvdztcbn07XG5cblxuZXhwb3J0IHskNDMxZmJkODZjYTdkYzIxNiRleHBvcnQkYjIwNGFmMTU4MDQyZmJhYyBhcyBnZXRPd25lckRvY3VtZW50LCAkNDMxZmJkODZjYTdkYzIxNiRleHBvcnQkZjIxYTFmZmFlMjYwMTQ1YSBhcyBnZXRPd25lcldpbmRvd307XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kb21IZWxwZXJzLm1vZHVsZS5qcy5tYXBcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/utils/dist/domHelpers.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/utils/dist/isVirtualEvent.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@react-aria/utils/dist/isVirtualEvent.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isVirtualClick: function() { return /* binding */ $6a7db85432448f7f$export$60278871457622de; },\n/* harmony export */ isVirtualPointerEvent: function() { return /* binding */ $6a7db85432448f7f$export$29bf1b5f2c56cf63; }\n/* harmony export */ });\n/* harmony import */ var _platform_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./platform.mjs */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/platform.mjs\");\n\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $6a7db85432448f7f$export$60278871457622de(event) {\n // JAWS/NVDA with Firefox.\n if (event.mozInputSource === 0 && event.isTrusted) return true;\n // Android TalkBack's detail value varies depending on the event listener providing the event so we have specific logic here instead\n // If pointerType is defined, event is from a click listener. For events from mousedown listener, detail === 0 is a sufficient check\n // to detect TalkBack virtual clicks.\n if ((0, _platform_mjs__WEBPACK_IMPORTED_MODULE_0__.isAndroid)() && event.pointerType) return event.type === 'click' && event.buttons === 1;\n return event.detail === 0 && !event.pointerType;\n}\nfunction $6a7db85432448f7f$export$29bf1b5f2c56cf63(event) {\n // If the pointer size is zero, then we assume it's from a screen reader.\n // Android TalkBack double tap will sometimes return a event with width and height of 1\n // and pointerType === 'mouse' so we need to check for a specific combination of event attributes.\n // Cannot use \"event.pressure === 0\" as the sole check due to Safari pointer events always returning pressure === 0\n // instead of .5, see https://bugs.webkit.org/show_bug.cgi?id=206216. event.pointerType === 'mouse' is to distingush\n // Talkback double tap from Windows Firefox touch screen press\n return !(0, _platform_mjs__WEBPACK_IMPORTED_MODULE_0__.isAndroid)() && event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse';\n}\n\n\n\n//# sourceMappingURL=isVirtualEvent.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L2lzVmlydHVhbEV2ZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBc0Y7O0FBRXRGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLG9EQUF5QztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isb0RBQXlDO0FBQ3pEOzs7QUFHeUk7QUFDekkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0ByZWFjdC1hcmlhL3V0aWxzL2Rpc3QvaXNWaXJ0dWFsRXZlbnQubWpzPzVkYzYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc0FuZHJvaWQgYXMgJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGExMWIwMDU5OTAwY2VlYzh9IGZyb20gXCIuL3BsYXRmb3JtLm1qc1wiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjIgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi8gXG5mdW5jdGlvbiAkNmE3ZGI4NTQzMjQ0OGY3ZiRleHBvcnQkNjAyNzg4NzE0NTc2MjJkZShldmVudCkge1xuICAgIC8vIEpBV1MvTlZEQSB3aXRoIEZpcmVmb3guXG4gICAgaWYgKGV2ZW50Lm1veklucHV0U291cmNlID09PSAwICYmIGV2ZW50LmlzVHJ1c3RlZCkgcmV0dXJuIHRydWU7XG4gICAgLy8gQW5kcm9pZCBUYWxrQmFjaydzIGRldGFpbCB2YWx1ZSB2YXJpZXMgZGVwZW5kaW5nIG9uIHRoZSBldmVudCBsaXN0ZW5lciBwcm92aWRpbmcgdGhlIGV2ZW50IHNvIHdlIGhhdmUgc3BlY2lmaWMgbG9naWMgaGVyZSBpbnN0ZWFkXG4gICAgLy8gSWYgcG9pbnRlclR5cGUgaXMgZGVmaW5lZCwgZXZlbnQgaXMgZnJvbSBhIGNsaWNrIGxpc3RlbmVyLiBGb3IgZXZlbnRzIGZyb20gbW91c2Vkb3duIGxpc3RlbmVyLCBkZXRhaWwgPT09IDAgaXMgYSBzdWZmaWNpZW50IGNoZWNrXG4gICAgLy8gdG8gZGV0ZWN0IFRhbGtCYWNrIHZpcnR1YWwgY2xpY2tzLlxuICAgIGlmICgoMCwgJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGExMWIwMDU5OTAwY2VlYzgpKCkgJiYgZXZlbnQucG9pbnRlclR5cGUpIHJldHVybiBldmVudC50eXBlID09PSAnY2xpY2snICYmIGV2ZW50LmJ1dHRvbnMgPT09IDE7XG4gICAgcmV0dXJuIGV2ZW50LmRldGFpbCA9PT0gMCAmJiAhZXZlbnQucG9pbnRlclR5cGU7XG59XG5mdW5jdGlvbiAkNmE3ZGI4NTQzMjQ0OGY3ZiRleHBvcnQkMjliZjFiNWYyYzU2Y2Y2MyhldmVudCkge1xuICAgIC8vIElmIHRoZSBwb2ludGVyIHNpemUgaXMgemVybywgdGhlbiB3ZSBhc3N1bWUgaXQncyBmcm9tIGEgc2NyZWVuIHJlYWRlci5cbiAgICAvLyBBbmRyb2lkIFRhbGtCYWNrIGRvdWJsZSB0YXAgd2lsbCBzb21ldGltZXMgcmV0dXJuIGEgZXZlbnQgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0IG9mIDFcbiAgICAvLyBhbmQgcG9pbnRlclR5cGUgPT09ICdtb3VzZScgc28gd2UgbmVlZCB0byBjaGVjayBmb3IgYSBzcGVjaWZpYyBjb21iaW5hdGlvbiBvZiBldmVudCBhdHRyaWJ1dGVzLlxuICAgIC8vIENhbm5vdCB1c2UgXCJldmVudC5wcmVzc3VyZSA9PT0gMFwiIGFzIHRoZSBzb2xlIGNoZWNrIGR1ZSB0byBTYWZhcmkgcG9pbnRlciBldmVudHMgYWx3YXlzIHJldHVybmluZyBwcmVzc3VyZSA9PT0gMFxuICAgIC8vIGluc3RlYWQgb2YgLjUsIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2MjE2LiBldmVudC5wb2ludGVyVHlwZSA9PT0gJ21vdXNlJyBpcyB0byBkaXN0aW5ndXNoXG4gICAgLy8gVGFsa2JhY2sgZG91YmxlIHRhcCBmcm9tIFdpbmRvd3MgRmlyZWZveCB0b3VjaCBzY3JlZW4gcHJlc3NcbiAgICByZXR1cm4gISgwLCAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkYTExYjAwNTk5MDBjZWVjOCkoKSAmJiBldmVudC53aWR0aCA9PT0gMCAmJiBldmVudC5oZWlnaHQgPT09IDAgfHwgZXZlbnQud2lkdGggPT09IDEgJiYgZXZlbnQuaGVpZ2h0ID09PSAxICYmIGV2ZW50LnByZXNzdXJlID09PSAwICYmIGV2ZW50LmRldGFpbCA9PT0gMCAmJiBldmVudC5wb2ludGVyVHlwZSA9PT0gJ21vdXNlJztcbn1cblxuXG5leHBvcnQgeyQ2YTdkYjg1NDMyNDQ4ZjdmJGV4cG9ydCQ2MDI3ODg3MTQ1NzYyMmRlIGFzIGlzVmlydHVhbENsaWNrLCAkNmE3ZGI4NTQzMjQ0OGY3ZiRleHBvcnQkMjliZjFiNWYyYzU2Y2Y2MyBhcyBpc1ZpcnR1YWxQb2ludGVyRXZlbnR9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9aXNWaXJ0dWFsRXZlbnQubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/utils/dist/isVirtualEvent.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/utils/dist/platform.mjs":
|
||
/*!**********************************************************!*\
|
||
!*** ./node_modules/@react-aria/utils/dist/platform.mjs ***!
|
||
\**********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isAndroid: function() { return /* binding */ $c87311424ea30a05$export$a11b0059900ceec8; },\n/* harmony export */ isAppleDevice: function() { return /* binding */ $c87311424ea30a05$export$e1865c3bedcd822b; },\n/* harmony export */ isChrome: function() { return /* binding */ $c87311424ea30a05$export$6446a186d09e379e; },\n/* harmony export */ isFirefox: function() { return /* binding */ $c87311424ea30a05$export$b7d78993b74f766d; },\n/* harmony export */ isIOS: function() { return /* binding */ $c87311424ea30a05$export$fedb369cb70207f1; },\n/* harmony export */ isIPad: function() { return /* binding */ $c87311424ea30a05$export$7bef049ce92e4224; },\n/* harmony export */ isIPhone: function() { return /* binding */ $c87311424ea30a05$export$186c6964ca17d99; },\n/* harmony export */ isMac: function() { return /* binding */ $c87311424ea30a05$export$9ac100e40613ea10; },\n/* harmony export */ isWebKit: function() { return /* binding */ $c87311424ea30a05$export$78551043582a6a98; }\n/* harmony export */ });\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $c87311424ea30a05$var$testUserAgent(re) {\n var _window_navigator_userAgentData;\n if (typeof window === 'undefined' || window.navigator == null) return false;\n return ((_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.brands.some((brand)=>re.test(brand.brand))) || re.test(window.navigator.userAgent);\n}\nfunction $c87311424ea30a05$var$testPlatform(re) {\n var _window_navigator_userAgentData;\n return typeof window !== 'undefined' && window.navigator != null ? re.test(((_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.platform) || window.navigator.platform) : false;\n}\nfunction $c87311424ea30a05$export$9ac100e40613ea10() {\n return $c87311424ea30a05$var$testPlatform(/^Mac/i);\n}\nfunction $c87311424ea30a05$export$186c6964ca17d99() {\n return $c87311424ea30a05$var$testPlatform(/^iPhone/i);\n}\nfunction $c87311424ea30a05$export$7bef049ce92e4224() {\n return $c87311424ea30a05$var$testPlatform(/^iPad/i) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.\n $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1;\n}\nfunction $c87311424ea30a05$export$fedb369cb70207f1() {\n return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224();\n}\nfunction $c87311424ea30a05$export$e1865c3bedcd822b() {\n return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1();\n}\nfunction $c87311424ea30a05$export$78551043582a6a98() {\n return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e();\n}\nfunction $c87311424ea30a05$export$6446a186d09e379e() {\n return $c87311424ea30a05$var$testUserAgent(/Chrome/i);\n}\nfunction $c87311424ea30a05$export$a11b0059900ceec8() {\n return $c87311424ea30a05$var$testUserAgent(/Android/i);\n}\nfunction $c87311424ea30a05$export$b7d78993b74f766d() {\n return $c87311424ea30a05$var$testUserAgent(/Firefox/i);\n}\n\n\n\n//# sourceMappingURL=platform.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L3BsYXRmb3JtLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFHcWY7QUFDcmYiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL0ByZWFjdC1hcmlhL3V0aWxzL2Rpc3QvcGxhdGZvcm0ubWpzPzU5ZTciXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIwIEFkb2JlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogVGhpcyBmaWxlIGlzIGxpY2Vuc2VkIHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHlcbiAqIG9mIHRoZSBMaWNlbnNlIGF0IGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXJcbiAqIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OU1xuICogT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovIGZ1bmN0aW9uICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0VXNlckFnZW50KHJlKSB7XG4gICAgdmFyIF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGE7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnIHx8IHdpbmRvdy5uYXZpZ2F0b3IgPT0gbnVsbCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiAoKF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEgPSB3aW5kb3cubmF2aWdhdG9yWyd1c2VyQWdlbnREYXRhJ10pID09PSBudWxsIHx8IF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEuYnJhbmRzLnNvbWUoKGJyYW5kKT0+cmUudGVzdChicmFuZC5icmFuZCkpKSB8fCByZS50ZXN0KHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KTtcbn1cbmZ1bmN0aW9uICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0UGxhdGZvcm0ocmUpIHtcbiAgICB2YXIgX3dpbmRvd19uYXZpZ2F0b3JfdXNlckFnZW50RGF0YTtcbiAgICByZXR1cm4gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93Lm5hdmlnYXRvciAhPSBudWxsID8gcmUudGVzdCgoKF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEgPSB3aW5kb3cubmF2aWdhdG9yWyd1c2VyQWdlbnREYXRhJ10pID09PSBudWxsIHx8IF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF93aW5kb3dfbmF2aWdhdG9yX3VzZXJBZ2VudERhdGEucGxhdGZvcm0pIHx8IHdpbmRvdy5uYXZpZ2F0b3IucGxhdGZvcm0pIDogZmFsc2U7XG59XG5mdW5jdGlvbiAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkOWFjMTAwZTQwNjEzZWExMCgpIHtcbiAgICByZXR1cm4gJGM4NzMxMTQyNGVhMzBhMDUkdmFyJHRlc3RQbGF0Zm9ybSgvXk1hYy9pKTtcbn1cbmZ1bmN0aW9uICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQxODZjNjk2NGNhMTdkOTkoKSB7XG4gICAgcmV0dXJuICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0UGxhdGZvcm0oL15pUGhvbmUvaSk7XG59XG5mdW5jdGlvbiAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkN2JlZjA0OWNlOTJlNDIyNCgpIHtcbiAgICByZXR1cm4gJGM4NzMxMTQyNGVhMzBhMDUkdmFyJHRlc3RQbGF0Zm9ybSgvXmlQYWQvaSkgfHwgLy8gaVBhZE9TIDEzIGxpZXMgYW5kIHNheXMgaXQncyBhIE1hYywgYnV0IHdlIGNhbiBkaXN0aW5ndWlzaCBieSBkZXRlY3RpbmcgdG91Y2ggc3VwcG9ydC5cbiAgICAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkOWFjMTAwZTQwNjEzZWExMCgpICYmIG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyA+IDE7XG59XG5mdW5jdGlvbiAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkZmVkYjM2OWNiNzAyMDdmMSgpIHtcbiAgICByZXR1cm4gJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JDE4NmM2OTY0Y2ExN2Q5OSgpIHx8ICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQ3YmVmMDQ5Y2U5MmU0MjI0KCk7XG59XG5mdW5jdGlvbiAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkZTE4NjVjM2JlZGNkODIyYigpIHtcbiAgICByZXR1cm4gJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JDlhYzEwMGU0MDYxM2VhMTAoKSB8fCAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkZmVkYjM2OWNiNzAyMDdmMSgpO1xufVxuZnVuY3Rpb24gJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JDc4NTUxMDQzNTgyYTZhOTgoKSB7XG4gICAgcmV0dXJuICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0VXNlckFnZW50KC9BcHBsZVdlYktpdC9pKSAmJiAhJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JDY0NDZhMTg2ZDA5ZTM3OWUoKTtcbn1cbmZ1bmN0aW9uICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQ2NDQ2YTE4NmQwOWUzNzllKCkge1xuICAgIHJldHVybiAkYzg3MzExNDI0ZWEzMGEwNSR2YXIkdGVzdFVzZXJBZ2VudCgvQ2hyb21lL2kpO1xufVxuZnVuY3Rpb24gJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGExMWIwMDU5OTAwY2VlYzgoKSB7XG4gICAgcmV0dXJuICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0VXNlckFnZW50KC9BbmRyb2lkL2kpO1xufVxuZnVuY3Rpb24gJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGI3ZDc4OTkzYjc0Zjc2NmQoKSB7XG4gICAgcmV0dXJuICRjODczMTE0MjRlYTMwYTA1JHZhciR0ZXN0VXNlckFnZW50KC9GaXJlZm94L2kpO1xufVxuXG5cbmV4cG9ydCB7JGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JDlhYzEwMGU0MDYxM2VhMTAgYXMgaXNNYWMsICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQxODZjNjk2NGNhMTdkOTkgYXMgaXNJUGhvbmUsICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQ3YmVmMDQ5Y2U5MmU0MjI0IGFzIGlzSVBhZCwgJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGZlZGIzNjljYjcwMjA3ZjEgYXMgaXNJT1MsICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCRlMTg2NWMzYmVkY2Q4MjJiIGFzIGlzQXBwbGVEZXZpY2UsICRjODczMTE0MjRlYTMwYTA1JGV4cG9ydCQ3ODU1MTA0MzU4MmE2YTk4IGFzIGlzV2ViS2l0LCAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkNjQ0NmExODZkMDllMzc5ZSBhcyBpc0Nocm9tZSwgJGM4NzMxMTQyNGVhMzBhMDUkZXhwb3J0JGExMWIwMDU5OTAwY2VlYzggYXMgaXNBbmRyb2lkLCAkYzg3MzExNDI0ZWEzMGEwNSRleHBvcnQkYjdkNzg5OTNiNzRmNzY2ZCBhcyBpc0ZpcmVmb3h9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9cGxhdGZvcm0ubW9kdWxlLmpzLm1hcFxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/utils/dist/platform.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/utils/dist/useEffectEvent.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/@react-aria/utils/dist/useEffectEvent.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useEffectEvent: function() { return /* binding */ $8ae05eaa5c114e9c$export$7f54fc3180508a52; }\n/* harmony export */ });\n/* harmony import */ var _useLayoutEffect_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./useLayoutEffect.mjs */ \"(app-pages-browser)/./node_modules/@react-aria/utils/dist/useLayoutEffect.mjs\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $8ae05eaa5c114e9c$export$7f54fc3180508a52(fn) {\n const ref = (0, react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n (0, _useLayoutEffect_mjs__WEBPACK_IMPORTED_MODULE_1__.useLayoutEffect)(()=>{\n ref.current = fn;\n }, [\n fn\n ]);\n // @ts-ignore\n return (0, react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((...args)=>{\n const f = ref.current;\n return f === null || f === void 0 ? void 0 : f(...args);\n }, []);\n}\n\n\n\n//# sourceMappingURL=useEffectEvent.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L3VzZUVmZmVjdEV2ZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBbUc7QUFDbEI7O0FBRWpGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQkFBb0IseUNBQWE7QUFDakMsUUFBUSxpRUFBeUM7QUFDakQ7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0EsZUFBZSw4Q0FBa0I7QUFDakM7QUFDQTtBQUNBLEtBQUs7QUFDTDs7O0FBR3FFO0FBQ3JFIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L3VzZUVmZmVjdEV2ZW50Lm1qcz80NzdmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dXNlTGF5b3V0RWZmZWN0IGFzICRmMGEwNGNjZDhkYmRkODNiJGV4cG9ydCRlNWM1YTVmOTE3YTU4NzFjfSBmcm9tIFwiLi91c2VMYXlvdXRFZmZlY3QubWpzXCI7XG5pbXBvcnQge3VzZVJlZiBhcyAkbG1hWXIkdXNlUmVmLCB1c2VDYWxsYmFjayBhcyAkbG1hWXIkdXNlQ2FsbGJhY2t9IGZyb20gXCJyZWFjdFwiO1xuXG4vKlxuICogQ29weXJpZ2h0IDIwMjMgQWRvYmUuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBUaGlzIGZpbGUgaXMgbGljZW5zZWQgdG8geW91IHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weVxuICogb2YgdGhlIExpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZSBkaXN0cmlidXRlZCB1bmRlclxuICogdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgUkVQUkVTRU5UQVRJT05TXG4gKiBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2VcbiAqIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi8gXG5cbmZ1bmN0aW9uICQ4YWUwNWVhYTVjMTE0ZTljJGV4cG9ydCQ3ZjU0ZmMzMTgwNTA4YTUyKGZuKSB7XG4gICAgY29uc3QgcmVmID0gKDAsICRsbWFZciR1c2VSZWYpKG51bGwpO1xuICAgICgwLCAkZjBhMDRjY2Q4ZGJkZDgzYiRleHBvcnQkZTVjNWE1ZjkxN2E1ODcxYykoKCk9PntcbiAgICAgICAgcmVmLmN1cnJlbnQgPSBmbjtcbiAgICB9LCBbXG4gICAgICAgIGZuXG4gICAgXSk7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHJldHVybiAoMCwgJGxtYVlyJHVzZUNhbGxiYWNrKSgoLi4uYXJncyk9PntcbiAgICAgICAgY29uc3QgZiA9IHJlZi5jdXJyZW50O1xuICAgICAgICByZXR1cm4gZiA9PT0gbnVsbCB8fCBmID09PSB2b2lkIDAgPyB2b2lkIDAgOiBmKC4uLmFyZ3MpO1xuICAgIH0sIFtdKTtcbn1cblxuXG5leHBvcnQgeyQ4YWUwNWVhYTVjMTE0ZTljJGV4cG9ydCQ3ZjU0ZmMzMTgwNTA4YTUyIGFzIHVzZUVmZmVjdEV2ZW50fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVzZUVmZmVjdEV2ZW50Lm1vZHVsZS5qcy5tYXBcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/utils/dist/useEffectEvent.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/@react-aria/utils/dist/useLayoutEffect.mjs":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/@react-aria/utils/dist/useLayoutEffect.mjs ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useLayoutEffect: function() { return /* binding */ $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof document !== 'undefined' ? (0, react__WEBPACK_IMPORTED_MODULE_0__).useLayoutEffect : ()=>{};\n\n\n\n//# sourceMappingURL=useLayoutEffect.module.js.map\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9AcmVhY3QtYXJpYS91dGlscy9kaXN0L3VzZUxheW91dEVmZmVjdC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBaUM7O0FBRWpDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3RkFBd0Ysa0NBQVk7OztBQUc5QjtBQUN0RSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvQHJlYWN0LWFyaWEvdXRpbHMvZGlzdC91c2VMYXlvdXRFZmZlY3QubWpzPzUxYzIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICRIZ0FOZCRyZWFjdCBmcm9tIFwicmVhY3RcIjtcblxuLypcbiAqIENvcHlyaWdodCAyMDIwIEFkb2JlLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogVGhpcyBmaWxlIGlzIGxpY2Vuc2VkIHRvIHlvdSB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHlcbiAqIG9mIHRoZSBMaWNlbnNlIGF0IGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUgZGlzdHJpYnV0ZWQgdW5kZXJcbiAqIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIFJFUFJFU0VOVEFUSU9OU1xuICogT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlXG4gKiBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovIFxuY29uc3QgJGYwYTA0Y2NkOGRiZGQ4M2IkZXhwb3J0JGU1YzVhNWY5MTdhNTg3MWMgPSB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnID8gKDAsICRIZ0FOZCRyZWFjdCkudXNlTGF5b3V0RWZmZWN0IDogKCk9Pnt9O1xuXG5cbmV4cG9ydCB7JGYwYTA0Y2NkOGRiZGQ4M2IkZXhwb3J0JGU1YzVhNWY5MTdhNTg3MWMgYXMgdXNlTGF5b3V0RWZmZWN0fTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPXVzZUxheW91dEVmZmVjdC5tb2R1bGUuanMubWFwXG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/@react-aria/utils/dist/useLayoutEffect.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/clsx/dist/clsx.mjs":
|
||
/*!*****************************************!*\
|
||
!*** ./node_modules/clsx/dist/clsx.mjs ***!
|
||
\*****************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clsx: function() { return /* binding */ clsx; }\n/* harmony export */ });\nfunction r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}/* harmony default export */ __webpack_exports__[\"default\"] = (clsx);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9jbHN4L2Rpc3QvY2xzeC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGNBQWMsYUFBYSwrQ0FBK0MsZ0RBQWdELGVBQWUsUUFBUSxJQUFJLDBDQUEwQyx5Q0FBeUMsU0FBZ0IsZ0JBQWdCLHdDQUF3QyxJQUFJLG1EQUFtRCxTQUFTLCtEQUFlLElBQUkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2Nsc3gvZGlzdC9jbHN4Lm1qcz8xODYwIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIHIoZSl7dmFyIHQsZixuPVwiXCI7aWYoXCJzdHJpbmdcIj09dHlwZW9mIGV8fFwibnVtYmVyXCI9PXR5cGVvZiBlKW4rPWU7ZWxzZSBpZihcIm9iamVjdFwiPT10eXBlb2YgZSlpZihBcnJheS5pc0FycmF5KGUpKXt2YXIgbz1lLmxlbmd0aDtmb3IodD0wO3Q8bzt0KyspZVt0XSYmKGY9cihlW3RdKSkmJihuJiYobis9XCIgXCIpLG4rPWYpfWVsc2UgZm9yKGYgaW4gZSllW2ZdJiYobiYmKG4rPVwiIFwiKSxuKz1mKTtyZXR1cm4gbn1leHBvcnQgZnVuY3Rpb24gY2xzeCgpe2Zvcih2YXIgZSx0LGY9MCxuPVwiXCIsbz1hcmd1bWVudHMubGVuZ3RoO2Y8bztmKyspKGU9YXJndW1lbnRzW2ZdKSYmKHQ9cihlKSkmJihuJiYobis9XCIgXCIpLG4rPXQpO3JldHVybiBufWV4cG9ydCBkZWZhdWx0IGNsc3g7Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/clsx/dist/clsx.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/instant.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/instant.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createInstantAnimation: function() { return /* binding */ createInstantAnimation; }\n/* harmony export */ });\n/* harmony import */ var _js_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./js/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n\n\n\nfunction createInstantAnimation({ keyframes, delay, onUpdate, onComplete, }) {\n const setValue = () => {\n onUpdate && onUpdate(keyframes[keyframes.length - 1]);\n onComplete && onComplete();\n /**\n * TODO: As this API grows it could make sense to always return\n * animateValue. This will be a bigger project as animateValue\n * is frame-locked whereas this function resolves instantly.\n * This is a behavioural change and also has ramifications regarding\n * assumptions within tests.\n */\n return {\n time: 0,\n speed: 1,\n duration: 0,\n play: (_utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop),\n pause: (_utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop),\n stop: (_utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop),\n then: (resolve) => {\n resolve();\n return Promise.resolve();\n },\n cancel: (_utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop),\n complete: (_utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop),\n };\n };\n return delay\n ? (0,_js_index_mjs__WEBPACK_IMPORTED_MODULE_1__.animateValue)({\n keyframes: [0, 1],\n duration: 0,\n delay,\n onComplete: setValue,\n })\n : setValue();\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy9pbnN0YW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBOEM7QUFDRjs7QUFFNUMsa0NBQWtDLHlDQUF5QztBQUMzRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGlEQUFJO0FBQ3ZCLG9CQUFvQixpREFBSTtBQUN4QixtQkFBbUIsaURBQUk7QUFDdkI7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLHFCQUFxQixpREFBSTtBQUN6Qix1QkFBdUIsaURBQUk7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsVUFBVSwyREFBWTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVrQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9hbmltYXRvcnMvaW5zdGFudC5tanM/MDNlMiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlVmFsdWUgfSBmcm9tICcuL2pzL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vLi4vdXRpbHMvbm9vcC5tanMnO1xuXG5mdW5jdGlvbiBjcmVhdGVJbnN0YW50QW5pbWF0aW9uKHsga2V5ZnJhbWVzLCBkZWxheSwgb25VcGRhdGUsIG9uQ29tcGxldGUsIH0pIHtcbiAgICBjb25zdCBzZXRWYWx1ZSA9ICgpID0+IHtcbiAgICAgICAgb25VcGRhdGUgJiYgb25VcGRhdGUoa2V5ZnJhbWVzW2tleWZyYW1lcy5sZW5ndGggLSAxXSk7XG4gICAgICAgIG9uQ29tcGxldGUgJiYgb25Db21wbGV0ZSgpO1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETzogQXMgdGhpcyBBUEkgZ3Jvd3MgaXQgY291bGQgbWFrZSBzZW5zZSB0byBhbHdheXMgcmV0dXJuXG4gICAgICAgICAqIGFuaW1hdGVWYWx1ZS4gVGhpcyB3aWxsIGJlIGEgYmlnZ2VyIHByb2plY3QgYXMgYW5pbWF0ZVZhbHVlXG4gICAgICAgICAqIGlzIGZyYW1lLWxvY2tlZCB3aGVyZWFzIHRoaXMgZnVuY3Rpb24gcmVzb2x2ZXMgaW5zdGFudGx5LlxuICAgICAgICAgKiBUaGlzIGlzIGEgYmVoYXZpb3VyYWwgY2hhbmdlIGFuZCBhbHNvIGhhcyByYW1pZmljYXRpb25zIHJlZ2FyZGluZ1xuICAgICAgICAgKiBhc3N1bXB0aW9ucyB3aXRoaW4gdGVzdHMuXG4gICAgICAgICAqL1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdGltZTogMCxcbiAgICAgICAgICAgIHNwZWVkOiAxLFxuICAgICAgICAgICAgZHVyYXRpb246IDAsXG4gICAgICAgICAgICBwbGF5OiAobm9vcCksXG4gICAgICAgICAgICBwYXVzZTogKG5vb3ApLFxuICAgICAgICAgICAgc3RvcDogKG5vb3ApLFxuICAgICAgICAgICAgdGhlbjogKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNhbmNlbDogKG5vb3ApLFxuICAgICAgICAgICAgY29tcGxldGU6IChub29wKSxcbiAgICAgICAgfTtcbiAgICB9O1xuICAgIHJldHVybiBkZWxheVxuICAgICAgICA/IGFuaW1hdGVWYWx1ZSh7XG4gICAgICAgICAgICBrZXlmcmFtZXM6IFswLCAxXSxcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwLFxuICAgICAgICAgICAgZGVsYXksXG4gICAgICAgICAgICBvbkNvbXBsZXRlOiBzZXRWYWx1ZSxcbiAgICAgICAgfSlcbiAgICAgICAgOiBzZXRWYWx1ZSgpO1xufVxuXG5leHBvcnQgeyBjcmVhdGVJbnN0YW50QW5pbWF0aW9uIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/instant.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs":
|
||
/*!****************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs ***!
|
||
\****************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ frameloopDriver: function() { return /* binding */ frameloopDriver; }\n/* harmony export */ });\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\nconst frameloopDriver = (update) => {\n const passTimestamp = ({ timestamp }) => update(timestamp);\n return {\n start: () => _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.update(passTimestamp, true),\n stop: () => (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.cancelFrame)(passTimestamp),\n /**\n * If we're processing this frame we can use the\n * framelocked timestamp to keep things in sync.\n */\n now: () => _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frameData.isProcessing ? _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frameData.timestamp : performance.now(),\n };\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy9qcy9kcml2ZXItZnJhbWVsb29wLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE2RTs7QUFFN0U7QUFDQSw2QkFBNkIsV0FBVztBQUN4QztBQUNBLHFCQUFxQix1REFBSztBQUMxQixvQkFBb0IsaUVBQVc7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsMkRBQVMsZ0JBQWdCLDJEQUFTO0FBQ3JEO0FBQ0E7O0FBRTJCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy9qcy9kcml2ZXItZnJhbWVsb29wLm1qcz84MWE1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZyYW1lLCBjYW5jZWxGcmFtZSwgZnJhbWVEYXRhIH0gZnJvbSAnLi4vLi4vLi4vZnJhbWVsb29wL2ZyYW1lLm1qcyc7XG5cbmNvbnN0IGZyYW1lbG9vcERyaXZlciA9ICh1cGRhdGUpID0+IHtcbiAgICBjb25zdCBwYXNzVGltZXN0YW1wID0gKHsgdGltZXN0YW1wIH0pID0+IHVwZGF0ZSh0aW1lc3RhbXApO1xuICAgIHJldHVybiB7XG4gICAgICAgIHN0YXJ0OiAoKSA9PiBmcmFtZS51cGRhdGUocGFzc1RpbWVzdGFtcCwgdHJ1ZSksXG4gICAgICAgIHN0b3A6ICgpID0+IGNhbmNlbEZyYW1lKHBhc3NUaW1lc3RhbXApLFxuICAgICAgICAvKipcbiAgICAgICAgICogSWYgd2UncmUgcHJvY2Vzc2luZyB0aGlzIGZyYW1lIHdlIGNhbiB1c2UgdGhlXG4gICAgICAgICAqIGZyYW1lbG9ja2VkIHRpbWVzdGFtcCB0byBrZWVwIHRoaW5ncyBpbiBzeW5jLlxuICAgICAgICAgKi9cbiAgICAgICAgbm93OiAoKSA9PiBmcmFtZURhdGEuaXNQcm9jZXNzaW5nID8gZnJhbWVEYXRhLnRpbWVzdGFtcCA6IHBlcmZvcm1hbmNlLm5vdygpLFxuICAgIH07XG59O1xuXG5leHBvcnQgeyBmcmFtZWxvb3BEcml2ZXIgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateValue: function() { return /* binding */ animateValue; }\n/* harmony export */ });\n/* harmony import */ var _generators_keyframes_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../generators/keyframes.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs\");\n/* harmony import */ var _generators_spring_index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../generators/spring/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs\");\n/* harmony import */ var _generators_inertia_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../generators/inertia.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/inertia.mjs\");\n/* harmony import */ var _driver_frameloop_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./driver-frameloop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs\");\n/* harmony import */ var _utils_interpolate_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../utils/interpolate.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/interpolate.mjs\");\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n/* harmony import */ var _generators_utils_calc_duration_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../generators/utils/calc-duration.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs\");\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n\n\n\n\n\n\n\n\n\n\nconst types = {\n decay: _generators_inertia_mjs__WEBPACK_IMPORTED_MODULE_0__.inertia,\n inertia: _generators_inertia_mjs__WEBPACK_IMPORTED_MODULE_0__.inertia,\n tween: _generators_keyframes_mjs__WEBPACK_IMPORTED_MODULE_1__.keyframes,\n keyframes: _generators_keyframes_mjs__WEBPACK_IMPORTED_MODULE_1__.keyframes,\n spring: _generators_spring_index_mjs__WEBPACK_IMPORTED_MODULE_2__.spring,\n};\n/**\n * Animate a single value on the main thread.\n *\n * This function is written, where functionality overlaps,\n * to be largely spec-compliant with WAAPI to allow fungibility\n * between the two.\n */\nfunction animateValue({ autoplay = true, delay = 0, driver = _driver_frameloop_mjs__WEBPACK_IMPORTED_MODULE_3__.frameloopDriver, keyframes: keyframes$1, type = \"keyframes\", repeat = 0, repeatDelay = 0, repeatType = \"loop\", onPlay, onStop, onComplete, onUpdate, ...options }) {\n let speed = 1;\n let hasStopped = false;\n let resolveFinishedPromise;\n let currentFinishedPromise;\n /**\n * Resolve the current Promise every time we enter the\n * finished state. This is WAAPI-compatible behaviour.\n */\n const updateFinishedPromise = () => {\n currentFinishedPromise = new Promise((resolve) => {\n resolveFinishedPromise = resolve;\n });\n };\n // Create the first finished promise\n updateFinishedPromise();\n let animationDriver;\n const generatorFactory = types[type] || _generators_keyframes_mjs__WEBPACK_IMPORTED_MODULE_1__.keyframes;\n /**\n * If this isn't the keyframes generator and we've been provided\n * strings as keyframes, we need to interpolate these.\n */\n let mapNumbersToKeyframes;\n if (generatorFactory !== _generators_keyframes_mjs__WEBPACK_IMPORTED_MODULE_1__.keyframes &&\n typeof keyframes$1[0] !== \"number\") {\n if (true) {\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_4__.invariant)(keyframes$1.length === 2, `Only two keyframes currently supported with spring and inertia animations. Trying to animate ${keyframes$1}`);\n }\n mapNumbersToKeyframes = (0,_utils_interpolate_mjs__WEBPACK_IMPORTED_MODULE_5__.interpolate)([0, 100], keyframes$1, {\n clamp: false,\n });\n keyframes$1 = [0, 100];\n }\n const generator = generatorFactory({ ...options, keyframes: keyframes$1 });\n let mirroredGenerator;\n if (repeatType === \"mirror\") {\n mirroredGenerator = generatorFactory({\n ...options,\n keyframes: [...keyframes$1].reverse(),\n velocity: -(options.velocity || 0),\n });\n }\n let playState = \"idle\";\n let holdTime = null;\n let startTime = null;\n let cancelTime = null;\n /**\n * If duration is undefined and we have repeat options,\n * we need to calculate a duration from the generator.\n *\n * We set it to the generator itself to cache the duration.\n * Any timeline resolver will need to have already precalculated\n * the duration by this step.\n */\n if (generator.calculatedDuration === null && repeat) {\n generator.calculatedDuration = (0,_generators_utils_calc_duration_mjs__WEBPACK_IMPORTED_MODULE_6__.calcGeneratorDuration)(generator);\n }\n const { calculatedDuration } = generator;\n let resolvedDuration = Infinity;\n let totalDuration = Infinity;\n if (calculatedDuration !== null) {\n resolvedDuration = calculatedDuration + repeatDelay;\n totalDuration = resolvedDuration * (repeat + 1) - repeatDelay;\n }\n let currentTime = 0;\n const tick = (timestamp) => {\n if (startTime === null)\n return;\n /**\n * requestAnimationFrame timestamps can come through as lower than\n * the startTime as set by performance.now(). Here we prevent this,\n * though in the future it could be possible to make setting startTime\n * a pending operation that gets resolved here.\n */\n if (speed > 0)\n startTime = Math.min(startTime, timestamp);\n if (speed < 0)\n startTime = Math.min(timestamp - totalDuration / speed, startTime);\n if (holdTime !== null) {\n currentTime = holdTime;\n }\n else {\n // Rounding the time because floating point arithmetic is not always accurate, e.g. 3000.367 - 1000.367 =\n // 2000.0000000000002. This is a problem when we are comparing the currentTime with the duration, for\n // example.\n currentTime = Math.round(timestamp - startTime) * speed;\n }\n // Rebase on delay\n const timeWithoutDelay = currentTime - delay * (speed >= 0 ? 1 : -1);\n const isInDelayPhase = speed >= 0 ? timeWithoutDelay < 0 : timeWithoutDelay > totalDuration;\n currentTime = Math.max(timeWithoutDelay, 0);\n /**\n * If this animation has finished, set the current time\n * to the total duration.\n */\n if (playState === \"finished\" && holdTime === null) {\n currentTime = totalDuration;\n }\n let elapsed = currentTime;\n let frameGenerator = generator;\n if (repeat) {\n /**\n * Get the current progress (0-1) of the animation. If t is >\n * than duration we'll get values like 2.5 (midway through the\n * third iteration)\n */\n const progress = Math.min(currentTime, totalDuration) / resolvedDuration;\n /**\n * Get the current iteration (0 indexed). For instance the floor of\n * 2.5 is 2.\n */\n let currentIteration = Math.floor(progress);\n /**\n * Get the current progress of the iteration by taking the remainder\n * so 2.5 is 0.5 through iteration 2\n */\n let iterationProgress = progress % 1.0;\n /**\n * If iteration progress is 1 we count that as the end\n * of the previous iteration.\n */\n if (!iterationProgress && progress >= 1) {\n iterationProgress = 1;\n }\n iterationProgress === 1 && currentIteration--;\n currentIteration = Math.min(currentIteration, repeat + 1);\n /**\n * Reverse progress if we're not running in \"normal\" direction\n */\n const isOddIteration = Boolean(currentIteration % 2);\n if (isOddIteration) {\n if (repeatType === \"reverse\") {\n iterationProgress = 1 - iterationProgress;\n if (repeatDelay) {\n iterationProgress -= repeatDelay / resolvedDuration;\n }\n }\n else if (repeatType === \"mirror\") {\n frameGenerator = mirroredGenerator;\n }\n }\n elapsed = (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_7__.clamp)(0, 1, iterationProgress) * resolvedDuration;\n }\n /**\n * If we're in negative time, set state as the initial keyframe.\n * This prevents delay: x, duration: 0 animations from finishing\n * instantly.\n */\n const state = isInDelayPhase\n ? { done: false, value: keyframes$1[0] }\n : frameGenerator.next(elapsed);\n if (mapNumbersToKeyframes) {\n state.value = mapNumbersToKeyframes(state.value);\n }\n let { done } = state;\n if (!isInDelayPhase && calculatedDuration !== null) {\n done = speed >= 0 ? currentTime >= totalDuration : currentTime <= 0;\n }\n const isAnimationFinished = holdTime === null &&\n (playState === \"finished\" || (playState === \"running\" && done));\n if (onUpdate) {\n onUpdate(state.value);\n }\n if (isAnimationFinished) {\n finish();\n }\n return state;\n };\n const stopAnimationDriver = () => {\n animationDriver && animationDriver.stop();\n animationDriver = undefined;\n };\n const cancel = () => {\n playState = \"idle\";\n stopAnimationDriver();\n resolveFinishedPromise();\n updateFinishedPromise();\n startTime = cancelTime = null;\n };\n const finish = () => {\n playState = \"finished\";\n onComplete && onComplete();\n stopAnimationDriver();\n resolveFinishedPromise();\n };\n const play = () => {\n if (hasStopped)\n return;\n if (!animationDriver)\n animationDriver = driver(tick);\n const now = animationDriver.now();\n onPlay && onPlay();\n if (holdTime !== null) {\n startTime = now - holdTime;\n }\n else if (!startTime || playState === \"finished\") {\n startTime = now;\n }\n if (playState === \"finished\") {\n updateFinishedPromise();\n }\n cancelTime = startTime;\n holdTime = null;\n /**\n * Set playState to running only after we've used it in\n * the previous logic.\n */\n playState = \"running\";\n animationDriver.start();\n };\n if (autoplay) {\n play();\n }\n const controls = {\n then(resolve, reject) {\n return currentFinishedPromise.then(resolve, reject);\n },\n get time() {\n return (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_8__.millisecondsToSeconds)(currentTime);\n },\n set time(newTime) {\n newTime = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_8__.secondsToMilliseconds)(newTime);\n currentTime = newTime;\n if (holdTime !== null || !animationDriver || speed === 0) {\n holdTime = newTime;\n }\n else {\n startTime = animationDriver.now() - newTime / speed;\n }\n },\n get duration() {\n const duration = generator.calculatedDuration === null\n ? (0,_generators_utils_calc_duration_mjs__WEBPACK_IMPORTED_MODULE_6__.calcGeneratorDuration)(generator)\n : generator.calculatedDuration;\n return (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_8__.millisecondsToSeconds)(duration);\n },\n get speed() {\n return speed;\n },\n set speed(newSpeed) {\n if (newSpeed === speed || !animationDriver)\n return;\n speed = newSpeed;\n controls.time = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_8__.millisecondsToSeconds)(currentTime);\n },\n get state() {\n return playState;\n },\n play,\n pause: () => {\n playState = \"paused\";\n holdTime = currentTime;\n },\n stop: () => {\n hasStopped = true;\n if (playState === \"idle\")\n return;\n playState = \"idle\";\n onStop && onStop();\n cancel();\n },\n cancel: () => {\n if (cancelTime !== null)\n tick(cancelTime);\n cancel();\n },\n complete: () => {\n playState = \"finished\";\n },\n sample: (elapsed) => {\n startTime = 0;\n return tick(elapsed);\n },\n };\n return controls;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy9qcy9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUEyRDtBQUNBO0FBQ0o7QUFDRTtBQUNJO0FBQ1o7QUFDaUQ7QUFDakI7QUFDM0I7O0FBRXREO0FBQ0EsV0FBVyw0REFBTztBQUNsQixXQUFXO0FBQ1gsV0FBVyxnRUFBUztBQUNwQixlQUFlLGdFQUFTO0FBQ3hCLFVBQVU7QUFDVjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHFDQUFxQyxrRUFBZSxrSkFBa0o7QUFDOU47QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QyxnRUFBUztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGdFQUFTO0FBQ3RDO0FBQ0EsWUFBWSxJQUFxQztBQUNqRCxZQUFZLDREQUFTLDJIQUEySCxZQUFZO0FBQzVKO0FBQ0EsZ0NBQWdDLG1FQUFXO0FBQzNDO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQSx5Q0FBeUMsb0NBQW9DO0FBQzdFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLDBGQUFxQjtBQUM1RDtBQUNBLFlBQVkscUJBQXFCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdURBQUs7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0I7QUFDaEI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLE9BQU87QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQSxtQkFBbUIsaUZBQXFCO0FBQ3hDLFNBQVM7QUFDVDtBQUNBLHNCQUFzQixpRkFBcUI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLGtCQUFrQiwwRkFBcUI7QUFDdkM7QUFDQSxtQkFBbUIsaUZBQXFCO0FBQ3hDLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLGlGQUFxQjtBQUNqRCxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy9qcy9pbmRleC5tanM/ZjY3NCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBrZXlmcmFtZXMgfSBmcm9tICcuLi8uLi9nZW5lcmF0b3JzL2tleWZyYW1lcy5tanMnO1xuaW1wb3J0IHsgc3ByaW5nIH0gZnJvbSAnLi4vLi4vZ2VuZXJhdG9ycy9zcHJpbmcvaW5kZXgubWpzJztcbmltcG9ydCB7IGluZXJ0aWEgfSBmcm9tICcuLi8uLi9nZW5lcmF0b3JzL2luZXJ0aWEubWpzJztcbmltcG9ydCB7IGZyYW1lbG9vcERyaXZlciB9IGZyb20gJy4vZHJpdmVyLWZyYW1lbG9vcC5tanMnO1xuaW1wb3J0IHsgaW50ZXJwb2xhdGUgfSBmcm9tICcuLi8uLi8uLi91dGlscy9pbnRlcnBvbGF0ZS5tanMnO1xuaW1wb3J0IHsgY2xhbXAgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFtcC5tanMnO1xuaW1wb3J0IHsgbWlsbGlzZWNvbmRzVG9TZWNvbmRzLCBzZWNvbmRzVG9NaWxsaXNlY29uZHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy90aW1lLWNvbnZlcnNpb24ubWpzJztcbmltcG9ydCB7IGNhbGNHZW5lcmF0b3JEdXJhdGlvbiB9IGZyb20gJy4uLy4uL2dlbmVyYXRvcnMvdXRpbHMvY2FsYy1kdXJhdGlvbi5tanMnO1xuaW1wb3J0IHsgaW52YXJpYW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZXJyb3JzLm1qcyc7XG5cbmNvbnN0IHR5cGVzID0ge1xuICAgIGRlY2F5OiBpbmVydGlhLFxuICAgIGluZXJ0aWEsXG4gICAgdHdlZW46IGtleWZyYW1lcyxcbiAgICBrZXlmcmFtZXM6IGtleWZyYW1lcyxcbiAgICBzcHJpbmcsXG59O1xuLyoqXG4gKiBBbmltYXRlIGEgc2luZ2xlIHZhbHVlIG9uIHRoZSBtYWluIHRocmVhZC5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIGlzIHdyaXR0ZW4sIHdoZXJlIGZ1bmN0aW9uYWxpdHkgb3ZlcmxhcHMsXG4gKiB0byBiZSBsYXJnZWx5IHNwZWMtY29tcGxpYW50IHdpdGggV0FBUEkgdG8gYWxsb3cgZnVuZ2liaWxpdHlcbiAqIGJldHdlZW4gdGhlIHR3by5cbiAqL1xuZnVuY3Rpb24gYW5pbWF0ZVZhbHVlKHsgYXV0b3BsYXkgPSB0cnVlLCBkZWxheSA9IDAsIGRyaXZlciA9IGZyYW1lbG9vcERyaXZlciwga2V5ZnJhbWVzOiBrZXlmcmFtZXMkMSwgdHlwZSA9IFwia2V5ZnJhbWVzXCIsIHJlcGVhdCA9IDAsIHJlcGVhdERlbGF5ID0gMCwgcmVwZWF0VHlwZSA9IFwibG9vcFwiLCBvblBsYXksIG9uU3RvcCwgb25Db21wbGV0ZSwgb25VcGRhdGUsIC4uLm9wdGlvbnMgfSkge1xuICAgIGxldCBzcGVlZCA9IDE7XG4gICAgbGV0IGhhc1N0b3BwZWQgPSBmYWxzZTtcbiAgICBsZXQgcmVzb2x2ZUZpbmlzaGVkUHJvbWlzZTtcbiAgICBsZXQgY3VycmVudEZpbmlzaGVkUHJvbWlzZTtcbiAgICAvKipcbiAgICAgKiBSZXNvbHZlIHRoZSBjdXJyZW50IFByb21pc2UgZXZlcnkgdGltZSB3ZSBlbnRlciB0aGVcbiAgICAgKiBmaW5pc2hlZCBzdGF0ZS4gVGhpcyBpcyBXQUFQSS1jb21wYXRpYmxlIGJlaGF2aW91ci5cbiAgICAgKi9cbiAgICBjb25zdCB1cGRhdGVGaW5pc2hlZFByb21pc2UgPSAoKSA9PiB7XG4gICAgICAgIGN1cnJlbnRGaW5pc2hlZFByb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgcmVzb2x2ZUZpbmlzaGVkUHJvbWlzZSA9IHJlc29sdmU7XG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgLy8gQ3JlYXRlIHRoZSBmaXJzdCBmaW5pc2hlZCBwcm9taXNlXG4gICAgdXBkYXRlRmluaXNoZWRQcm9taXNlKCk7XG4gICAgbGV0IGFuaW1hdGlvbkRyaXZlcjtcbiAgICBjb25zdCBnZW5lcmF0b3JGYWN0b3J5ID0gdHlwZXNbdHlwZV0gfHwga2V5ZnJhbWVzO1xuICAgIC8qKlxuICAgICAqIElmIHRoaXMgaXNuJ3QgdGhlIGtleWZyYW1lcyBnZW5lcmF0b3IgYW5kIHdlJ3ZlIGJlZW4gcHJvdmlkZWRcbiAgICAgKiBzdHJpbmdzIGFzIGtleWZyYW1lcywgd2UgbmVlZCB0byBpbnRlcnBvbGF0ZSB0aGVzZS5cbiAgICAgKi9cbiAgICBsZXQgbWFwTnVtYmVyc1RvS2V5ZnJhbWVzO1xuICAgIGlmIChnZW5lcmF0b3JGYWN0b3J5ICE9PSBrZXlmcmFtZXMgJiZcbiAgICAgICAgdHlwZW9mIGtleWZyYW1lcyQxWzBdICE9PSBcIm51bWJlclwiKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICAgICAgICAgIGludmFyaWFudChrZXlmcmFtZXMkMS5sZW5ndGggPT09IDIsIGBPbmx5IHR3byBrZXlmcmFtZXMgY3VycmVudGx5IHN1cHBvcnRlZCB3aXRoIHNwcmluZyBhbmQgaW5lcnRpYSBhbmltYXRpb25zLiBUcnlpbmcgdG8gYW5pbWF0ZSAke2tleWZyYW1lcyQxfWApO1xuICAgICAgICB9XG4gICAgICAgIG1hcE51bWJlcnNUb0tleWZyYW1lcyA9IGludGVycG9sYXRlKFswLCAxMDBdLCBrZXlmcmFtZXMkMSwge1xuICAgICAgICAgICAgY2xhbXA6IGZhbHNlLFxuICAgICAgICB9KTtcbiAgICAgICAga2V5ZnJhbWVzJDEgPSBbMCwgMTAwXTtcbiAgICB9XG4gICAgY29uc3QgZ2VuZXJhdG9yID0gZ2VuZXJhdG9yRmFjdG9yeSh7IC4uLm9wdGlvbnMsIGtleWZyYW1lczoga2V5ZnJhbWVzJDEgfSk7XG4gICAgbGV0IG1pcnJvcmVkR2VuZXJhdG9yO1xuICAgIGlmIChyZXBlYXRUeXBlID09PSBcIm1pcnJvclwiKSB7XG4gICAgICAgIG1pcnJvcmVkR2VuZXJhdG9yID0gZ2VuZXJhdG9yRmFjdG9yeSh7XG4gICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgICAga2V5ZnJhbWVzOiBbLi4ua2V5ZnJhbWVzJDFdLnJldmVyc2UoKSxcbiAgICAgICAgICAgIHZlbG9jaXR5OiAtKG9wdGlvbnMudmVsb2NpdHkgfHwgMCksXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBsZXQgcGxheVN0YXRlID0gXCJpZGxlXCI7XG4gICAgbGV0IGhvbGRUaW1lID0gbnVsbDtcbiAgICBsZXQgc3RhcnRUaW1lID0gbnVsbDtcbiAgICBsZXQgY2FuY2VsVGltZSA9IG51bGw7XG4gICAgLyoqXG4gICAgICogSWYgZHVyYXRpb24gaXMgdW5kZWZpbmVkIGFuZCB3ZSBoYXZlIHJlcGVhdCBvcHRpb25zLFxuICAgICAqIHdlIG5lZWQgdG8gY2FsY3VsYXRlIGEgZHVyYXRpb24gZnJvbSB0aGUgZ2VuZXJhdG9yLlxuICAgICAqXG4gICAgICogV2Ugc2V0IGl0IHRvIHRoZSBnZW5lcmF0b3IgaXRzZWxmIHRvIGNhY2hlIHRoZSBkdXJhdGlvbi5cbiAgICAgKiBBbnkgdGltZWxpbmUgcmVzb2x2ZXIgd2lsbCBuZWVkIHRvIGhhdmUgYWxyZWFkeSBwcmVjYWxjdWxhdGVkXG4gICAgICogdGhlIGR1cmF0aW9uIGJ5IHRoaXMgc3RlcC5cbiAgICAgKi9cbiAgICBpZiAoZ2VuZXJhdG9yLmNhbGN1bGF0ZWREdXJhdGlvbiA9PT0gbnVsbCAmJiByZXBlYXQpIHtcbiAgICAgICAgZ2VuZXJhdG9yLmNhbGN1bGF0ZWREdXJhdGlvbiA9IGNhbGNHZW5lcmF0b3JEdXJhdGlvbihnZW5lcmF0b3IpO1xuICAgIH1cbiAgICBjb25zdCB7IGNhbGN1bGF0ZWREdXJhdGlvbiB9ID0gZ2VuZXJhdG9yO1xuICAgIGxldCByZXNvbHZlZER1cmF0aW9uID0gSW5maW5pdHk7XG4gICAgbGV0IHRvdGFsRHVyYXRpb24gPSBJbmZpbml0eTtcbiAgICBpZiAoY2FsY3VsYXRlZER1cmF0aW9uICE9PSBudWxsKSB7XG4gICAgICAgIHJlc29sdmVkRHVyYXRpb24gPSBjYWxjdWxhdGVkRHVyYXRpb24gKyByZXBlYXREZWxheTtcbiAgICAgICAgdG90YWxEdXJhdGlvbiA9IHJlc29sdmVkRHVyYXRpb24gKiAocmVwZWF0ICsgMSkgLSByZXBlYXREZWxheTtcbiAgICB9XG4gICAgbGV0IGN1cnJlbnRUaW1lID0gMDtcbiAgICBjb25zdCB0aWNrID0gKHRpbWVzdGFtcCkgPT4ge1xuICAgICAgICBpZiAoc3RhcnRUaW1lID09PSBudWxsKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvKipcbiAgICAgICAgICogcmVxdWVzdEFuaW1hdGlvbkZyYW1lIHRpbWVzdGFtcHMgY2FuIGNvbWUgdGhyb3VnaCBhcyBsb3dlciB0aGFuXG4gICAgICAgICAqIHRoZSBzdGFydFRpbWUgYXMgc2V0IGJ5IHBlcmZvcm1hbmNlLm5vdygpLiBIZXJlIHdlIHByZXZlbnQgdGhpcyxcbiAgICAgICAgICogdGhvdWdoIGluIHRoZSBmdXR1cmUgaXQgY291bGQgYmUgcG9zc2libGUgdG8gbWFrZSBzZXR0aW5nIHN0YXJ0VGltZVxuICAgICAgICAgKiBhIHBlbmRpbmcgb3BlcmF0aW9uIHRoYXQgZ2V0cyByZXNvbHZlZCBoZXJlLlxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKHNwZWVkID4gMClcbiAgICAgICAgICAgIHN0YXJ0VGltZSA9IE1hdGgubWluKHN0YXJ0VGltZSwgdGltZXN0YW1wKTtcbiAgICAgICAgaWYgKHNwZWVkIDwgMClcbiAgICAgICAgICAgIHN0YXJ0VGltZSA9IE1hdGgubWluKHRpbWVzdGFtcCAtIHRvdGFsRHVyYXRpb24gLyBzcGVlZCwgc3RhcnRUaW1lKTtcbiAgICAgICAgaWYgKGhvbGRUaW1lICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjdXJyZW50VGltZSA9IGhvbGRUaW1lO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgLy8gUm91bmRpbmcgdGhlIHRpbWUgYmVjYXVzZSBmbG9hdGluZyBwb2ludCBhcml0aG1ldGljIGlzIG5vdCBhbHdheXMgYWNjdXJhdGUsIGUuZy4gMzAwMC4zNjcgLSAxMDAwLjM2NyA9XG4gICAgICAgICAgICAvLyAyMDAwLjAwMDAwMDAwMDAwMDIuIFRoaXMgaXMgYSBwcm9ibGVtIHdoZW4gd2UgYXJlIGNvbXBhcmluZyB0aGUgY3VycmVudFRpbWUgd2l0aCB0aGUgZHVyYXRpb24sIGZvclxuICAgICAgICAgICAgLy8gZXhhbXBsZS5cbiAgICAgICAgICAgIGN1cnJlbnRUaW1lID0gTWF0aC5yb3VuZCh0aW1lc3RhbXAgLSBzdGFydFRpbWUpICogc3BlZWQ7XG4gICAgICAgIH1cbiAgICAgICAgLy8gUmViYXNlIG9uIGRlbGF5XG4gICAgICAgIGNvbnN0IHRpbWVXaXRob3V0RGVsYXkgPSBjdXJyZW50VGltZSAtIGRlbGF5ICogKHNwZWVkID49IDAgPyAxIDogLTEpO1xuICAgICAgICBjb25zdCBpc0luRGVsYXlQaGFzZSA9IHNwZWVkID49IDAgPyB0aW1lV2l0aG91dERlbGF5IDwgMCA6IHRpbWVXaXRob3V0RGVsYXkgPiB0b3RhbER1cmF0aW9uO1xuICAgICAgICBjdXJyZW50VGltZSA9IE1hdGgubWF4KHRpbWVXaXRob3V0RGVsYXksIDApO1xuICAgICAgICAvKipcbiAgICAgICAgICogSWYgdGhpcyBhbmltYXRpb24gaGFzIGZpbmlzaGVkLCBzZXQgdGhlIGN1cnJlbnQgdGltZVxuICAgICAgICAgKiB0byB0aGUgdG90YWwgZHVyYXRpb24uXG4gICAgICAgICAqL1xuICAgICAgICBpZiAocGxheVN0YXRlID09PSBcImZpbmlzaGVkXCIgJiYgaG9sZFRpbWUgPT09IG51bGwpIHtcbiAgICAgICAgICAgIGN1cnJlbnRUaW1lID0gdG90YWxEdXJhdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgZWxhcHNlZCA9IGN1cnJlbnRUaW1lO1xuICAgICAgICBsZXQgZnJhbWVHZW5lcmF0b3IgPSBnZW5lcmF0b3I7XG4gICAgICAgIGlmIChyZXBlYXQpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogR2V0IHRoZSBjdXJyZW50IHByb2dyZXNzICgwLTEpIG9mIHRoZSBhbmltYXRpb24uIElmIHQgaXMgPlxuICAgICAgICAgICAgICogdGhhbiBkdXJhdGlvbiB3ZSdsbCBnZXQgdmFsdWVzIGxpa2UgMi41IChtaWR3YXkgdGhyb3VnaCB0aGVcbiAgICAgICAgICAgICAqIHRoaXJkIGl0ZXJhdGlvbilcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBNYXRoLm1pbihjdXJyZW50VGltZSwgdG90YWxEdXJhdGlvbikgLyByZXNvbHZlZER1cmF0aW9uO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBHZXQgdGhlIGN1cnJlbnQgaXRlcmF0aW9uICgwIGluZGV4ZWQpLiBGb3IgaW5zdGFuY2UgdGhlIGZsb29yIG9mXG4gICAgICAgICAgICAgKiAyLjUgaXMgMi5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgbGV0IGN1cnJlbnRJdGVyYXRpb24gPSBNYXRoLmZsb29yKHByb2dyZXNzKTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogR2V0IHRoZSBjdXJyZW50IHByb2dyZXNzIG9mIHRoZSBpdGVyYXRpb24gYnkgdGFraW5nIHRoZSByZW1haW5kZXJcbiAgICAgICAgICAgICAqIHNvIDIuNSBpcyAwLjUgdGhyb3VnaCBpdGVyYXRpb24gMlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBsZXQgaXRlcmF0aW9uUHJvZ3Jlc3MgPSBwcm9ncmVzcyAlIDEuMDtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgaXRlcmF0aW9uIHByb2dyZXNzIGlzIDEgd2UgY291bnQgdGhhdCBhcyB0aGUgZW5kXG4gICAgICAgICAgICAgKiBvZiB0aGUgcHJldmlvdXMgaXRlcmF0aW9uLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAoIWl0ZXJhdGlvblByb2dyZXNzICYmIHByb2dyZXNzID49IDEpIHtcbiAgICAgICAgICAgICAgICBpdGVyYXRpb25Qcm9ncmVzcyA9IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpdGVyYXRpb25Qcm9ncmVzcyA9PT0gMSAmJiBjdXJyZW50SXRlcmF0aW9uLS07XG4gICAgICAgICAgICBjdXJyZW50SXRlcmF0aW9uID0gTWF0aC5taW4oY3VycmVudEl0ZXJhdGlvbiwgcmVwZWF0ICsgMSk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFJldmVyc2UgcHJvZ3Jlc3MgaWYgd2UncmUgbm90IHJ1bm5pbmcgaW4gXCJub3JtYWxcIiBkaXJlY3Rpb25cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgaXNPZGRJdGVyYXRpb24gPSBCb29sZWFuKGN1cnJlbnRJdGVyYXRpb24gJSAyKTtcbiAgICAgICAgICAgIGlmIChpc09kZEl0ZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIGlmIChyZXBlYXRUeXBlID09PSBcInJldmVyc2VcIikge1xuICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb25Qcm9ncmVzcyA9IDEgLSBpdGVyYXRpb25Qcm9ncmVzcztcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcGVhdERlbGF5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb25Qcm9ncmVzcyAtPSByZXBlYXREZWxheSAvIHJlc29sdmVkRHVyYXRpb247XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAocmVwZWF0VHlwZSA9PT0gXCJtaXJyb3JcIikge1xuICAgICAgICAgICAgICAgICAgICBmcmFtZUdlbmVyYXRvciA9IG1pcnJvcmVkR2VuZXJhdG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsYXBzZWQgPSBjbGFtcCgwLCAxLCBpdGVyYXRpb25Qcm9ncmVzcykgKiByZXNvbHZlZER1cmF0aW9uO1xuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB3ZSdyZSBpbiBuZWdhdGl2ZSB0aW1lLCBzZXQgc3RhdGUgYXMgdGhlIGluaXRpYWwga2V5ZnJhbWUuXG4gICAgICAgICAqIFRoaXMgcHJldmVudHMgZGVsYXk6IHgsIGR1cmF0aW9uOiAwIGFuaW1hdGlvbnMgZnJvbSBmaW5pc2hpbmdcbiAgICAgICAgICogaW5zdGFudGx5LlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3Qgc3RhdGUgPSBpc0luRGVsYXlQaGFzZVxuICAgICAgICAgICAgPyB7IGRvbmU6IGZhbHNlLCB2YWx1ZToga2V5ZnJhbWVzJDFbMF0gfVxuICAgICAgICAgICAgOiBmcmFtZUdlbmVyYXRvci5uZXh0KGVsYXBzZWQpO1xuICAgICAgICBpZiAobWFwTnVtYmVyc1RvS2V5ZnJhbWVzKSB7XG4gICAgICAgICAgICBzdGF0ZS52YWx1ZSA9IG1hcE51bWJlcnNUb0tleWZyYW1lcyhzdGF0ZS52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHsgZG9uZSB9ID0gc3RhdGU7XG4gICAgICAgIGlmICghaXNJbkRlbGF5UGhhc2UgJiYgY2FsY3VsYXRlZER1cmF0aW9uICE9PSBudWxsKSB7XG4gICAgICAgICAgICBkb25lID0gc3BlZWQgPj0gMCA/IGN1cnJlbnRUaW1lID49IHRvdGFsRHVyYXRpb24gOiBjdXJyZW50VGltZSA8PSAwO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzQW5pbWF0aW9uRmluaXNoZWQgPSBob2xkVGltZSA9PT0gbnVsbCAmJlxuICAgICAgICAgICAgKHBsYXlTdGF0ZSA9PT0gXCJmaW5pc2hlZFwiIHx8IChwbGF5U3RhdGUgPT09IFwicnVubmluZ1wiICYmIGRvbmUpKTtcbiAgICAgICAgaWYgKG9uVXBkYXRlKSB7XG4gICAgICAgICAgICBvblVwZGF0ZShzdGF0ZS52YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzQW5pbWF0aW9uRmluaXNoZWQpIHtcbiAgICAgICAgICAgIGZpbmlzaCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICB9O1xuICAgIGNvbnN0IHN0b3BBbmltYXRpb25Ecml2ZXIgPSAoKSA9PiB7XG4gICAgICAgIGFuaW1hdGlvbkRyaXZlciAmJiBhbmltYXRpb25Ecml2ZXIuc3RvcCgpO1xuICAgICAgICBhbmltYXRpb25Ecml2ZXIgPSB1bmRlZmluZWQ7XG4gICAgfTtcbiAgICBjb25zdCBjYW5jZWwgPSAoKSA9PiB7XG4gICAgICAgIHBsYXlTdGF0ZSA9IFwiaWRsZVwiO1xuICAgICAgICBzdG9wQW5pbWF0aW9uRHJpdmVyKCk7XG4gICAgICAgIHJlc29sdmVGaW5pc2hlZFByb21pc2UoKTtcbiAgICAgICAgdXBkYXRlRmluaXNoZWRQcm9taXNlKCk7XG4gICAgICAgIHN0YXJ0VGltZSA9IGNhbmNlbFRpbWUgPSBudWxsO1xuICAgIH07XG4gICAgY29uc3QgZmluaXNoID0gKCkgPT4ge1xuICAgICAgICBwbGF5U3RhdGUgPSBcImZpbmlzaGVkXCI7XG4gICAgICAgIG9uQ29tcGxldGUgJiYgb25Db21wbGV0ZSgpO1xuICAgICAgICBzdG9wQW5pbWF0aW9uRHJpdmVyKCk7XG4gICAgICAgIHJlc29sdmVGaW5pc2hlZFByb21pc2UoKTtcbiAgICB9O1xuICAgIGNvbnN0IHBsYXkgPSAoKSA9PiB7XG4gICAgICAgIGlmIChoYXNTdG9wcGVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIWFuaW1hdGlvbkRyaXZlcilcbiAgICAgICAgICAgIGFuaW1hdGlvbkRyaXZlciA9IGRyaXZlcih0aWNrKTtcbiAgICAgICAgY29uc3Qgbm93ID0gYW5pbWF0aW9uRHJpdmVyLm5vdygpO1xuICAgICAgICBvblBsYXkgJiYgb25QbGF5KCk7XG4gICAgICAgIGlmIChob2xkVGltZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgc3RhcnRUaW1lID0gbm93IC0gaG9sZFRpbWU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoIXN0YXJ0VGltZSB8fCBwbGF5U3RhdGUgPT09IFwiZmluaXNoZWRcIikge1xuICAgICAgICAgICAgc3RhcnRUaW1lID0gbm93O1xuICAgICAgICB9XG4gICAgICAgIGlmIChwbGF5U3RhdGUgPT09IFwiZmluaXNoZWRcIikge1xuICAgICAgICAgICAgdXBkYXRlRmluaXNoZWRQcm9taXNlKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2FuY2VsVGltZSA9IHN0YXJ0VGltZTtcbiAgICAgICAgaG9sZFRpbWUgPSBudWxsO1xuICAgICAgICAvKipcbiAgICAgICAgICogU2V0IHBsYXlTdGF0ZSB0byBydW5uaW5nIG9ubHkgYWZ0ZXIgd2UndmUgdXNlZCBpdCBpblxuICAgICAgICAgKiB0aGUgcHJldmlvdXMgbG9naWMuXG4gICAgICAgICAqL1xuICAgICAgICBwbGF5U3RhdGUgPSBcInJ1bm5pbmdcIjtcbiAgICAgICAgYW5pbWF0aW9uRHJpdmVyLnN0YXJ0KCk7XG4gICAgfTtcbiAgICBpZiAoYXV0b3BsYXkpIHtcbiAgICAgICAgcGxheSgpO1xuICAgIH1cbiAgICBjb25zdCBjb250cm9scyA9IHtcbiAgICAgICAgdGhlbihyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50RmluaXNoZWRQcm9taXNlLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTtcbiAgICAgICAgfSxcbiAgICAgICAgZ2V0IHRpbWUoKSB7XG4gICAgICAgICAgICByZXR1cm4gbWlsbGlzZWNvbmRzVG9TZWNvbmRzKGN1cnJlbnRUaW1lKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHRpbWUobmV3VGltZSkge1xuICAgICAgICAgICAgbmV3VGltZSA9IHNlY29uZHNUb01pbGxpc2Vjb25kcyhuZXdUaW1lKTtcbiAgICAgICAgICAgIGN1cnJlbnRUaW1lID0gbmV3VGltZTtcbiAgICAgICAgICAgIGlmIChob2xkVGltZSAhPT0gbnVsbCB8fCAhYW5pbWF0aW9uRHJpdmVyIHx8IHNwZWVkID09PSAwKSB7XG4gICAgICAgICAgICAgICAgaG9sZFRpbWUgPSBuZXdUaW1lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgc3RhcnRUaW1lID0gYW5pbWF0aW9uRHJpdmVyLm5vdygpIC0gbmV3VGltZSAvIHNwZWVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBnZXQgZHVyYXRpb24oKSB7XG4gICAgICAgICAgICBjb25zdCBkdXJhdGlvbiA9IGdlbmVyYXRvci5jYWxjdWxhdGVkRHVyYXRpb24gPT09IG51bGxcbiAgICAgICAgICAgICAgICA/IGNhbGNHZW5lcmF0b3JEdXJhdGlvbihnZW5lcmF0b3IpXG4gICAgICAgICAgICAgICAgOiBnZW5lcmF0b3IuY2FsY3VsYXRlZER1cmF0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIG1pbGxpc2Vjb25kc1RvU2Vjb25kcyhkdXJhdGlvbik7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBzcGVlZCgpIHtcbiAgICAgICAgICAgIHJldHVybiBzcGVlZDtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHNwZWVkKG5ld1NwZWVkKSB7XG4gICAgICAgICAgICBpZiAobmV3U3BlZWQgPT09IHNwZWVkIHx8ICFhbmltYXRpb25Ecml2ZXIpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgc3BlZWQgPSBuZXdTcGVlZDtcbiAgICAgICAgICAgIGNvbnRyb2xzLnRpbWUgPSBtaWxsaXNlY29uZHNUb1NlY29uZHMoY3VycmVudFRpbWUpO1xuICAgICAgICB9LFxuICAgICAgICBnZXQgc3RhdGUoKSB7XG4gICAgICAgICAgICByZXR1cm4gcGxheVN0YXRlO1xuICAgICAgICB9LFxuICAgICAgICBwbGF5LFxuICAgICAgICBwYXVzZTogKCkgPT4ge1xuICAgICAgICAgICAgcGxheVN0YXRlID0gXCJwYXVzZWRcIjtcbiAgICAgICAgICAgIGhvbGRUaW1lID0gY3VycmVudFRpbWU7XG4gICAgICAgIH0sXG4gICAgICAgIHN0b3A6ICgpID0+IHtcbiAgICAgICAgICAgIGhhc1N0b3BwZWQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHBsYXlTdGF0ZSA9PT0gXCJpZGxlXCIpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgcGxheVN0YXRlID0gXCJpZGxlXCI7XG4gICAgICAgICAgICBvblN0b3AgJiYgb25TdG9wKCk7XG4gICAgICAgICAgICBjYW5jZWwoKTtcbiAgICAgICAgfSxcbiAgICAgICAgY2FuY2VsOiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoY2FuY2VsVGltZSAhPT0gbnVsbClcbiAgICAgICAgICAgICAgICB0aWNrKGNhbmNlbFRpbWUpO1xuICAgICAgICAgICAgY2FuY2VsKCk7XG4gICAgICAgIH0sXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBwbGF5U3RhdGUgPSBcImZpbmlzaGVkXCI7XG4gICAgICAgIH0sXG4gICAgICAgIHNhbXBsZTogKGVsYXBzZWQpID0+IHtcbiAgICAgICAgICAgIHN0YXJ0VGltZSA9IDA7XG4gICAgICAgICAgICByZXR1cm4gdGljayhlbGFwc2VkKTtcbiAgICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBjb250cm9scztcbn1cblxuZXhwb3J0IHsgYW5pbWF0ZVZhbHVlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs":
|
||
/*!*******************************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs ***!
|
||
\*******************************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createAcceleratedAnimation: function() { return /* binding */ createAcceleratedAnimation; }\n/* harmony export */ });\n/* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs\");\n/* harmony import */ var _easing_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./easing.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs\");\n/* harmony import */ var _utils_get_final_keyframe_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/get-final-keyframe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs\");\n/* harmony import */ var _js_index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../js/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs\");\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n/* harmony import */ var _utils_memo_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/memo.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/memo.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n\nconst supportsWaapi = (0,_utils_memo_mjs__WEBPACK_IMPORTED_MODULE_0__.memo)(() => Object.hasOwnProperty.call(Element.prototype, \"animate\"));\n/**\n * A list of values that can be hardware-accelerated.\n */\nconst acceleratedValues = new Set([\n \"opacity\",\n \"clipPath\",\n \"filter\",\n \"transform\",\n \"backgroundColor\",\n]);\n/**\n * 10ms is chosen here as it strikes a balance between smooth\n * results (more than one keyframe per frame at 60fps) and\n * keyframe quantity.\n */\nconst sampleDelta = 10; //ms\n/**\n * Implement a practical max duration for keyframe generation\n * to prevent infinite loops\n */\nconst maxDuration = 20000;\nconst requiresPregeneratedKeyframes = (valueName, options) => options.type === \"spring\" ||\n valueName === \"backgroundColor\" ||\n !(0,_easing_mjs__WEBPACK_IMPORTED_MODULE_1__.isWaapiSupportedEasing)(options.ease);\nfunction createAcceleratedAnimation(value, valueName, { onUpdate, onComplete, ...options }) {\n const canAccelerateAnimation = supportsWaapi() &&\n acceleratedValues.has(valueName) &&\n !options.repeatDelay &&\n options.repeatType !== \"mirror\" &&\n options.damping !== 0 &&\n options.type !== \"inertia\";\n if (!canAccelerateAnimation)\n return false;\n /**\n * TODO: Unify with js/index\n */\n let hasStopped = false;\n let resolveFinishedPromise;\n let currentFinishedPromise;\n /**\n * Cancelling an animation will write to the DOM. For safety we want to defer\n * this until the next `update` frame lifecycle. This flag tracks whether we\n * have a pending cancel, if so we shouldn't allow animations to finish.\n */\n let pendingCancel = false;\n /**\n * Resolve the current Promise every time we enter the\n * finished state. This is WAAPI-compatible behaviour.\n */\n const updateFinishedPromise = () => {\n currentFinishedPromise = new Promise((resolve) => {\n resolveFinishedPromise = resolve;\n });\n };\n // Create the first finished promise\n updateFinishedPromise();\n let { keyframes, duration = 300, ease, times } = options;\n /**\n * If this animation needs pre-generated keyframes then generate.\n */\n if (requiresPregeneratedKeyframes(valueName, options)) {\n const sampleAnimation = (0,_js_index_mjs__WEBPACK_IMPORTED_MODULE_2__.animateValue)({\n ...options,\n repeat: 0,\n delay: 0,\n });\n let state = { done: false, value: keyframes[0] };\n const pregeneratedKeyframes = [];\n /**\n * Bail after 20 seconds of pre-generated keyframes as it's likely\n * we're heading for an infinite loop.\n */\n let t = 0;\n while (!state.done && t < maxDuration) {\n state = sampleAnimation.sample(t);\n pregeneratedKeyframes.push(state.value);\n t += sampleDelta;\n }\n times = undefined;\n keyframes = pregeneratedKeyframes;\n duration = t - sampleDelta;\n ease = \"linear\";\n }\n const animation = (0,_index_mjs__WEBPACK_IMPORTED_MODULE_3__.animateStyle)(value.owner.current, valueName, keyframes, {\n ...options,\n duration,\n /**\n * This function is currently not called if ease is provided\n * as a function so the cast is safe.\n *\n * However it would be possible for a future refinement to port\n * in easing pregeneration from Motion One for browsers that\n * support the upcoming `linear()` easing function.\n */\n ease: ease,\n times,\n });\n const cancelAnimation = () => {\n pendingCancel = false;\n animation.cancel();\n };\n const safeCancel = () => {\n pendingCancel = true;\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_4__.frame.update(cancelAnimation);\n resolveFinishedPromise();\n updateFinishedPromise();\n };\n /**\n * Prefer the `onfinish` prop as it's more widely supported than\n * the `finished` promise.\n *\n * Here, we synchronously set the provided MotionValue to the end\n * keyframe. If we didn't, when the WAAPI animation is finished it would\n * be removed from the element which would then revert to its old styles.\n */\n animation.onfinish = () => {\n if (pendingCancel)\n return;\n value.set((0,_utils_get_final_keyframe_mjs__WEBPACK_IMPORTED_MODULE_5__.getFinalKeyframe)(keyframes, options));\n onComplete && onComplete();\n safeCancel();\n };\n /**\n * Animation interrupt callback.\n */\n const controls = {\n then(resolve, reject) {\n return currentFinishedPromise.then(resolve, reject);\n },\n attachTimeline(timeline) {\n animation.timeline = timeline;\n animation.onfinish = null;\n return _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_6__.noop;\n },\n get time() {\n return (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_7__.millisecondsToSeconds)(animation.currentTime || 0);\n },\n set time(newTime) {\n animation.currentTime = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_7__.secondsToMilliseconds)(newTime);\n },\n get speed() {\n return animation.playbackRate;\n },\n set speed(newSpeed) {\n animation.playbackRate = newSpeed;\n },\n get duration() {\n return (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_7__.millisecondsToSeconds)(duration);\n },\n play: () => {\n if (hasStopped)\n return;\n animation.play();\n /**\n * Cancel any pending cancel tasks\n */\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_4__.cancelFrame)(cancelAnimation);\n },\n pause: () => animation.pause(),\n stop: () => {\n hasStopped = true;\n if (animation.playState === \"idle\")\n return;\n /**\n * WAAPI doesn't natively have any interruption capabilities.\n *\n * Rather than read commited styles back out of the DOM, we can\n * create a renderless JS animation and sample it twice to calculate\n * its current value, \"previous\" value, and therefore allow\n * Motion to calculate velocity for any subsequent animation.\n */\n const { currentTime } = animation;\n if (currentTime) {\n const sampleAnimation = (0,_js_index_mjs__WEBPACK_IMPORTED_MODULE_2__.animateValue)({\n ...options,\n autoplay: false,\n });\n value.setWithVelocity(sampleAnimation.sample(currentTime - sampleDelta).value, sampleAnimation.sample(currentTime).value, sampleDelta);\n }\n safeCancel();\n },\n complete: () => {\n if (pendingCancel)\n return;\n animation.finish();\n },\n cancel: safeCancel,\n };\n return controls;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS9jcmVhdGUtYWNjZWxlcmF0ZWQtYW5pbWF0aW9uLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBMkM7QUFDVztBQUNZO0FBQ25CO0FBQ21EO0FBQ25EO0FBQ0E7QUFDbUI7O0FBRWxFLHNCQUFzQixxREFBSTtBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0I7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLG1FQUFzQjtBQUMzQix3REFBd0Qsa0NBQWtDO0FBQzFGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxVQUFVLHlDQUF5QztBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQywyREFBWTtBQUM1QztBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Qsc0JBQXNCO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHdEQUFZO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLHVEQUFLO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtCQUFrQiwrRUFBZ0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixpREFBSTtBQUN2QixTQUFTO0FBQ1Q7QUFDQSxtQkFBbUIsaUZBQXFCO0FBQ3hDLFNBQVM7QUFDVDtBQUNBLG9DQUFvQyxpRkFBcUI7QUFDekQsU0FBUztBQUNUO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLG1CQUFtQixpRkFBcUI7QUFDeEMsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxpRUFBVztBQUN2QixTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsY0FBYztBQUNsQztBQUNBLHdDQUF3QywyREFBWTtBQUNwRDtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTs7QUFFc0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9hbmltYXRpb24vYW5pbWF0b3JzL3dhYXBpL2NyZWF0ZS1hY2NlbGVyYXRlZC1hbmltYXRpb24ubWpzPzI2ZTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZVN0eWxlIH0gZnJvbSAnLi9pbmRleC5tanMnO1xuaW1wb3J0IHsgaXNXYWFwaVN1cHBvcnRlZEVhc2luZyB9IGZyb20gJy4vZWFzaW5nLm1qcyc7XG5pbXBvcnQgeyBnZXRGaW5hbEtleWZyYW1lIH0gZnJvbSAnLi91dGlscy9nZXQtZmluYWwta2V5ZnJhbWUubWpzJztcbmltcG9ydCB7IGFuaW1hdGVWYWx1ZSB9IGZyb20gJy4uL2pzL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBtaWxsaXNlY29uZHNUb1NlY29uZHMsIHNlY29uZHNUb01pbGxpc2Vjb25kcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL3RpbWUtY29udmVyc2lvbi5tanMnO1xuaW1wb3J0IHsgbWVtbyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL21lbW8ubWpzJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ub29wLm1qcyc7XG5pbXBvcnQgeyBmcmFtZSwgY2FuY2VsRnJhbWUgfSBmcm9tICcuLi8uLi8uLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuY29uc3Qgc3VwcG9ydHNXYWFwaSA9IG1lbW8oKCkgPT4gT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwoRWxlbWVudC5wcm90b3R5cGUsIFwiYW5pbWF0ZVwiKSk7XG4vKipcbiAqIEEgbGlzdCBvZiB2YWx1ZXMgdGhhdCBjYW4gYmUgaGFyZHdhcmUtYWNjZWxlcmF0ZWQuXG4gKi9cbmNvbnN0IGFjY2VsZXJhdGVkVmFsdWVzID0gbmV3IFNldChbXG4gICAgXCJvcGFjaXR5XCIsXG4gICAgXCJjbGlwUGF0aFwiLFxuICAgIFwiZmlsdGVyXCIsXG4gICAgXCJ0cmFuc2Zvcm1cIixcbiAgICBcImJhY2tncm91bmRDb2xvclwiLFxuXSk7XG4vKipcbiAqIDEwbXMgaXMgY2hvc2VuIGhlcmUgYXMgaXQgc3RyaWtlcyBhIGJhbGFuY2UgYmV0d2VlbiBzbW9vdGhcbiAqIHJlc3VsdHMgKG1vcmUgdGhhbiBvbmUga2V5ZnJhbWUgcGVyIGZyYW1lIGF0IDYwZnBzKSBhbmRcbiAqIGtleWZyYW1lIHF1YW50aXR5LlxuICovXG5jb25zdCBzYW1wbGVEZWx0YSA9IDEwOyAvL21zXG4vKipcbiAqIEltcGxlbWVudCBhIHByYWN0aWNhbCBtYXggZHVyYXRpb24gZm9yIGtleWZyYW1lIGdlbmVyYXRpb25cbiAqIHRvIHByZXZlbnQgaW5maW5pdGUgbG9vcHNcbiAqL1xuY29uc3QgbWF4RHVyYXRpb24gPSAyMDAwMDtcbmNvbnN0IHJlcXVpcmVzUHJlZ2VuZXJhdGVkS2V5ZnJhbWVzID0gKHZhbHVlTmFtZSwgb3B0aW9ucykgPT4gb3B0aW9ucy50eXBlID09PSBcInNwcmluZ1wiIHx8XG4gICAgdmFsdWVOYW1lID09PSBcImJhY2tncm91bmRDb2xvclwiIHx8XG4gICAgIWlzV2FhcGlTdXBwb3J0ZWRFYXNpbmcob3B0aW9ucy5lYXNlKTtcbmZ1bmN0aW9uIGNyZWF0ZUFjY2VsZXJhdGVkQW5pbWF0aW9uKHZhbHVlLCB2YWx1ZU5hbWUsIHsgb25VcGRhdGUsIG9uQ29tcGxldGUsIC4uLm9wdGlvbnMgfSkge1xuICAgIGNvbnN0IGNhbkFjY2VsZXJhdGVBbmltYXRpb24gPSBzdXBwb3J0c1dhYXBpKCkgJiZcbiAgICAgICAgYWNjZWxlcmF0ZWRWYWx1ZXMuaGFzKHZhbHVlTmFtZSkgJiZcbiAgICAgICAgIW9wdGlvbnMucmVwZWF0RGVsYXkgJiZcbiAgICAgICAgb3B0aW9ucy5yZXBlYXRUeXBlICE9PSBcIm1pcnJvclwiICYmXG4gICAgICAgIG9wdGlvbnMuZGFtcGluZyAhPT0gMCAmJlxuICAgICAgICBvcHRpb25zLnR5cGUgIT09IFwiaW5lcnRpYVwiO1xuICAgIGlmICghY2FuQWNjZWxlcmF0ZUFuaW1hdGlvbilcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFRPRE86IFVuaWZ5IHdpdGgganMvaW5kZXhcbiAgICAgKi9cbiAgICBsZXQgaGFzU3RvcHBlZCA9IGZhbHNlO1xuICAgIGxldCByZXNvbHZlRmluaXNoZWRQcm9taXNlO1xuICAgIGxldCBjdXJyZW50RmluaXNoZWRQcm9taXNlO1xuICAgIC8qKlxuICAgICAqIENhbmNlbGxpbmcgYW4gYW5pbWF0aW9uIHdpbGwgd3JpdGUgdG8gdGhlIERPTS4gRm9yIHNhZmV0eSB3ZSB3YW50IHRvIGRlZmVyXG4gICAgICogdGhpcyB1bnRpbCB0aGUgbmV4dCBgdXBkYXRlYCBmcmFtZSBsaWZlY3ljbGUuIFRoaXMgZmxhZyB0cmFja3Mgd2hldGhlciB3ZVxuICAgICAqIGhhdmUgYSBwZW5kaW5nIGNhbmNlbCwgaWYgc28gd2Ugc2hvdWxkbid0IGFsbG93IGFuaW1hdGlvbnMgdG8gZmluaXNoLlxuICAgICAqL1xuICAgIGxldCBwZW5kaW5nQ2FuY2VsID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogUmVzb2x2ZSB0aGUgY3VycmVudCBQcm9taXNlIGV2ZXJ5IHRpbWUgd2UgZW50ZXIgdGhlXG4gICAgICogZmluaXNoZWQgc3RhdGUuIFRoaXMgaXMgV0FBUEktY29tcGF0aWJsZSBiZWhhdmlvdXIuXG4gICAgICovXG4gICAgY29uc3QgdXBkYXRlRmluaXNoZWRQcm9taXNlID0gKCkgPT4ge1xuICAgICAgICBjdXJyZW50RmluaXNoZWRQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmVGaW5pc2hlZFByb21pc2UgPSByZXNvbHZlO1xuICAgICAgICB9KTtcbiAgICB9O1xuICAgIC8vIENyZWF0ZSB0aGUgZmlyc3QgZmluaXNoZWQgcHJvbWlzZVxuICAgIHVwZGF0ZUZpbmlzaGVkUHJvbWlzZSgpO1xuICAgIGxldCB7IGtleWZyYW1lcywgZHVyYXRpb24gPSAzMDAsIGVhc2UsIHRpbWVzIH0gPSBvcHRpb25zO1xuICAgIC8qKlxuICAgICAqIElmIHRoaXMgYW5pbWF0aW9uIG5lZWRzIHByZS1nZW5lcmF0ZWQga2V5ZnJhbWVzIHRoZW4gZ2VuZXJhdGUuXG4gICAgICovXG4gICAgaWYgKHJlcXVpcmVzUHJlZ2VuZXJhdGVkS2V5ZnJhbWVzKHZhbHVlTmFtZSwgb3B0aW9ucykpIHtcbiAgICAgICAgY29uc3Qgc2FtcGxlQW5pbWF0aW9uID0gYW5pbWF0ZVZhbHVlKHtcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICByZXBlYXQ6IDAsXG4gICAgICAgICAgICBkZWxheTogMCxcbiAgICAgICAgfSk7XG4gICAgICAgIGxldCBzdGF0ZSA9IHsgZG9uZTogZmFsc2UsIHZhbHVlOiBrZXlmcmFtZXNbMF0gfTtcbiAgICAgICAgY29uc3QgcHJlZ2VuZXJhdGVkS2V5ZnJhbWVzID0gW107XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBCYWlsIGFmdGVyIDIwIHNlY29uZHMgb2YgcHJlLWdlbmVyYXRlZCBrZXlmcmFtZXMgYXMgaXQncyBsaWtlbHlcbiAgICAgICAgICogd2UncmUgaGVhZGluZyBmb3IgYW4gaW5maW5pdGUgbG9vcC5cbiAgICAgICAgICovXG4gICAgICAgIGxldCB0ID0gMDtcbiAgICAgICAgd2hpbGUgKCFzdGF0ZS5kb25lICYmIHQgPCBtYXhEdXJhdGlvbikge1xuICAgICAgICAgICAgc3RhdGUgPSBzYW1wbGVBbmltYXRpb24uc2FtcGxlKHQpO1xuICAgICAgICAgICAgcHJlZ2VuZXJhdGVkS2V5ZnJhbWVzLnB1c2goc3RhdGUudmFsdWUpO1xuICAgICAgICAgICAgdCArPSBzYW1wbGVEZWx0YTtcbiAgICAgICAgfVxuICAgICAgICB0aW1lcyA9IHVuZGVmaW5lZDtcbiAgICAgICAga2V5ZnJhbWVzID0gcHJlZ2VuZXJhdGVkS2V5ZnJhbWVzO1xuICAgICAgICBkdXJhdGlvbiA9IHQgLSBzYW1wbGVEZWx0YTtcbiAgICAgICAgZWFzZSA9IFwibGluZWFyXCI7XG4gICAgfVxuICAgIGNvbnN0IGFuaW1hdGlvbiA9IGFuaW1hdGVTdHlsZSh2YWx1ZS5vd25lci5jdXJyZW50LCB2YWx1ZU5hbWUsIGtleWZyYW1lcywge1xuICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICBkdXJhdGlvbixcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFRoaXMgZnVuY3Rpb24gaXMgY3VycmVudGx5IG5vdCBjYWxsZWQgaWYgZWFzZSBpcyBwcm92aWRlZFxuICAgICAgICAgKiBhcyBhIGZ1bmN0aW9uIHNvIHRoZSBjYXN0IGlzIHNhZmUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEhvd2V2ZXIgaXQgd291bGQgYmUgcG9zc2libGUgZm9yIGEgZnV0dXJlIHJlZmluZW1lbnQgdG8gcG9ydFxuICAgICAgICAgKiBpbiBlYXNpbmcgcHJlZ2VuZXJhdGlvbiBmcm9tIE1vdGlvbiBPbmUgZm9yIGJyb3dzZXJzIHRoYXRcbiAgICAgICAgICogc3VwcG9ydCB0aGUgdXBjb21pbmcgYGxpbmVhcigpYCBlYXNpbmcgZnVuY3Rpb24uXG4gICAgICAgICAqL1xuICAgICAgICBlYXNlOiBlYXNlLFxuICAgICAgICB0aW1lcyxcbiAgICB9KTtcbiAgICBjb25zdCBjYW5jZWxBbmltYXRpb24gPSAoKSA9PiB7XG4gICAgICAgIHBlbmRpbmdDYW5jZWwgPSBmYWxzZTtcbiAgICAgICAgYW5pbWF0aW9uLmNhbmNlbCgpO1xuICAgIH07XG4gICAgY29uc3Qgc2FmZUNhbmNlbCA9ICgpID0+IHtcbiAgICAgICAgcGVuZGluZ0NhbmNlbCA9IHRydWU7XG4gICAgICAgIGZyYW1lLnVwZGF0ZShjYW5jZWxBbmltYXRpb24pO1xuICAgICAgICByZXNvbHZlRmluaXNoZWRQcm9taXNlKCk7XG4gICAgICAgIHVwZGF0ZUZpbmlzaGVkUHJvbWlzZSgpO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogUHJlZmVyIHRoZSBgb25maW5pc2hgIHByb3AgYXMgaXQncyBtb3JlIHdpZGVseSBzdXBwb3J0ZWQgdGhhblxuICAgICAqIHRoZSBgZmluaXNoZWRgIHByb21pc2UuXG4gICAgICpcbiAgICAgKiBIZXJlLCB3ZSBzeW5jaHJvbm91c2x5IHNldCB0aGUgcHJvdmlkZWQgTW90aW9uVmFsdWUgdG8gdGhlIGVuZFxuICAgICAqIGtleWZyYW1lLiBJZiB3ZSBkaWRuJ3QsIHdoZW4gdGhlIFdBQVBJIGFuaW1hdGlvbiBpcyBmaW5pc2hlZCBpdCB3b3VsZFxuICAgICAqIGJlIHJlbW92ZWQgZnJvbSB0aGUgZWxlbWVudCB3aGljaCB3b3VsZCB0aGVuIHJldmVydCB0byBpdHMgb2xkIHN0eWxlcy5cbiAgICAgKi9cbiAgICBhbmltYXRpb24ub25maW5pc2ggPSAoKSA9PiB7XG4gICAgICAgIGlmIChwZW5kaW5nQ2FuY2VsKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB2YWx1ZS5zZXQoZ2V0RmluYWxLZXlmcmFtZShrZXlmcmFtZXMsIG9wdGlvbnMpKTtcbiAgICAgICAgb25Db21wbGV0ZSAmJiBvbkNvbXBsZXRlKCk7XG4gICAgICAgIHNhZmVDYW5jZWwoKTtcbiAgICB9O1xuICAgIC8qKlxuICAgICAqIEFuaW1hdGlvbiBpbnRlcnJ1cHQgY2FsbGJhY2suXG4gICAgICovXG4gICAgY29uc3QgY29udHJvbHMgPSB7XG4gICAgICAgIHRoZW4ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgICByZXR1cm4gY3VycmVudEZpbmlzaGVkUHJvbWlzZS50aGVuKHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgIH0sXG4gICAgICAgIGF0dGFjaFRpbWVsaW5lKHRpbWVsaW5lKSB7XG4gICAgICAgICAgICBhbmltYXRpb24udGltZWxpbmUgPSB0aW1lbGluZTtcbiAgICAgICAgICAgIGFuaW1hdGlvbi5vbmZpbmlzaCA9IG51bGw7XG4gICAgICAgICAgICByZXR1cm4gbm9vcDtcbiAgICAgICAgfSxcbiAgICAgICAgZ2V0IHRpbWUoKSB7XG4gICAgICAgICAgICByZXR1cm4gbWlsbGlzZWNvbmRzVG9TZWNvbmRzKGFuaW1hdGlvbi5jdXJyZW50VGltZSB8fCAwKTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHRpbWUobmV3VGltZSkge1xuICAgICAgICAgICAgYW5pbWF0aW9uLmN1cnJlbnRUaW1lID0gc2Vjb25kc1RvTWlsbGlzZWNvbmRzKG5ld1RpbWUpO1xuICAgICAgICB9LFxuICAgICAgICBnZXQgc3BlZWQoKSB7XG4gICAgICAgICAgICByZXR1cm4gYW5pbWF0aW9uLnBsYXliYWNrUmF0ZTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0IHNwZWVkKG5ld1NwZWVkKSB7XG4gICAgICAgICAgICBhbmltYXRpb24ucGxheWJhY2tSYXRlID0gbmV3U3BlZWQ7XG4gICAgICAgIH0sXG4gICAgICAgIGdldCBkdXJhdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiBtaWxsaXNlY29uZHNUb1NlY29uZHMoZHVyYXRpb24pO1xuICAgICAgICB9LFxuICAgICAgICBwbGF5OiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoaGFzU3RvcHBlZClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBhbmltYXRpb24ucGxheSgpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBDYW5jZWwgYW55IHBlbmRpbmcgY2FuY2VsIHRhc2tzXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNhbmNlbEZyYW1lKGNhbmNlbEFuaW1hdGlvbik7XG4gICAgICAgIH0sXG4gICAgICAgIHBhdXNlOiAoKSA9PiBhbmltYXRpb24ucGF1c2UoKSxcbiAgICAgICAgc3RvcDogKCkgPT4ge1xuICAgICAgICAgICAgaGFzU3RvcHBlZCA9IHRydWU7XG4gICAgICAgICAgICBpZiAoYW5pbWF0aW9uLnBsYXlTdGF0ZSA9PT0gXCJpZGxlXCIpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXQUFQSSBkb2Vzbid0IG5hdGl2ZWx5IGhhdmUgYW55IGludGVycnVwdGlvbiBjYXBhYmlsaXRpZXMuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogUmF0aGVyIHRoYW4gcmVhZCBjb21taXRlZCBzdHlsZXMgYmFjayBvdXQgb2YgdGhlIERPTSwgd2UgY2FuXG4gICAgICAgICAgICAgKiBjcmVhdGUgYSByZW5kZXJsZXNzIEpTIGFuaW1hdGlvbiBhbmQgc2FtcGxlIGl0IHR3aWNlIHRvIGNhbGN1bGF0ZVxuICAgICAgICAgICAgICogaXRzIGN1cnJlbnQgdmFsdWUsIFwicHJldmlvdXNcIiB2YWx1ZSwgYW5kIHRoZXJlZm9yZSBhbGxvd1xuICAgICAgICAgICAgICogTW90aW9uIHRvIGNhbGN1bGF0ZSB2ZWxvY2l0eSBmb3IgYW55IHN1YnNlcXVlbnQgYW5pbWF0aW9uLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB7IGN1cnJlbnRUaW1lIH0gPSBhbmltYXRpb247XG4gICAgICAgICAgICBpZiAoY3VycmVudFRpbWUpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzYW1wbGVBbmltYXRpb24gPSBhbmltYXRlVmFsdWUoe1xuICAgICAgICAgICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgICAgICAgICAgICBhdXRvcGxheTogZmFsc2UsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdmFsdWUuc2V0V2l0aFZlbG9jaXR5KHNhbXBsZUFuaW1hdGlvbi5zYW1wbGUoY3VycmVudFRpbWUgLSBzYW1wbGVEZWx0YSkudmFsdWUsIHNhbXBsZUFuaW1hdGlvbi5zYW1wbGUoY3VycmVudFRpbWUpLnZhbHVlLCBzYW1wbGVEZWx0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzYWZlQ2FuY2VsKCk7XG4gICAgICAgIH0sXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAocGVuZGluZ0NhbmNlbClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBhbmltYXRpb24uZmluaXNoKCk7XG4gICAgICAgIH0sXG4gICAgICAgIGNhbmNlbDogc2FmZUNhbmNlbCxcbiAgICB9O1xuICAgIHJldHVybiBjb250cm9scztcbn1cblxuZXhwb3J0IHsgY3JlYXRlQWNjZWxlcmF0ZWRBbmltYXRpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cubicBezierAsString: function() { return /* binding */ cubicBezierAsString; },\n/* harmony export */ isWaapiSupportedEasing: function() { return /* binding */ isWaapiSupportedEasing; },\n/* harmony export */ mapEasingToNativeEasing: function() { return /* binding */ mapEasingToNativeEasing; },\n/* harmony export */ supportedWaapiEasing: function() { return /* binding */ supportedWaapiEasing; }\n/* harmony export */ });\n/* harmony import */ var _easing_utils_is_bezier_definition_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../easing/utils/is-bezier-definition.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs\");\n\n\nfunction isWaapiSupportedEasing(easing) {\n return Boolean(!easing ||\n (typeof easing === \"string\" && supportedWaapiEasing[easing]) ||\n (0,_easing_utils_is_bezier_definition_mjs__WEBPACK_IMPORTED_MODULE_0__.isBezierDefinition)(easing) ||\n (Array.isArray(easing) && easing.every(isWaapiSupportedEasing)));\n}\nconst cubicBezierAsString = ([a, b, c, d]) => `cubic-bezier(${a}, ${b}, ${c}, ${d})`;\nconst supportedWaapiEasing = {\n linear: \"linear\",\n ease: \"ease\",\n easeIn: \"ease-in\",\n easeOut: \"ease-out\",\n easeInOut: \"ease-in-out\",\n circIn: cubicBezierAsString([0, 0.65, 0.55, 1]),\n circOut: cubicBezierAsString([0.55, 0, 1, 0.45]),\n backIn: cubicBezierAsString([0.31, 0.01, 0.66, -0.59]),\n backOut: cubicBezierAsString([0.33, 1.53, 0.69, 0.99]),\n};\nfunction mapEasingToNativeEasing(easing) {\n if (!easing)\n return undefined;\n return (0,_easing_utils_is_bezier_definition_mjs__WEBPACK_IMPORTED_MODULE_0__.isBezierDefinition)(easing)\n ? cubicBezierAsString(easing)\n : Array.isArray(easing)\n ? easing.map(mapEasingToNativeEasing)\n : supportedWaapiEasing[easing];\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS9lYXNpbmcubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQW9GOztBQUVwRjtBQUNBO0FBQ0E7QUFDQSxRQUFRLDBGQUFrQjtBQUMxQjtBQUNBO0FBQ0EsOERBQThELEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7QUFDbEY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsMEZBQWtCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXNHIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS9lYXNpbmcubWpzPzczZDYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNCZXppZXJEZWZpbml0aW9uIH0gZnJvbSAnLi4vLi4vLi4vZWFzaW5nL3V0aWxzL2lzLWJlemllci1kZWZpbml0aW9uLm1qcyc7XG5cbmZ1bmN0aW9uIGlzV2FhcGlTdXBwb3J0ZWRFYXNpbmcoZWFzaW5nKSB7XG4gICAgcmV0dXJuIEJvb2xlYW4oIWVhc2luZyB8fFxuICAgICAgICAodHlwZW9mIGVhc2luZyA9PT0gXCJzdHJpbmdcIiAmJiBzdXBwb3J0ZWRXYWFwaUVhc2luZ1tlYXNpbmddKSB8fFxuICAgICAgICBpc0JlemllckRlZmluaXRpb24oZWFzaW5nKSB8fFxuICAgICAgICAoQXJyYXkuaXNBcnJheShlYXNpbmcpICYmIGVhc2luZy5ldmVyeShpc1dhYXBpU3VwcG9ydGVkRWFzaW5nKSkpO1xufVxuY29uc3QgY3ViaWNCZXppZXJBc1N0cmluZyA9IChbYSwgYiwgYywgZF0pID0+IGBjdWJpYy1iZXppZXIoJHthfSwgJHtifSwgJHtjfSwgJHtkfSlgO1xuY29uc3Qgc3VwcG9ydGVkV2FhcGlFYXNpbmcgPSB7XG4gICAgbGluZWFyOiBcImxpbmVhclwiLFxuICAgIGVhc2U6IFwiZWFzZVwiLFxuICAgIGVhc2VJbjogXCJlYXNlLWluXCIsXG4gICAgZWFzZU91dDogXCJlYXNlLW91dFwiLFxuICAgIGVhc2VJbk91dDogXCJlYXNlLWluLW91dFwiLFxuICAgIGNpcmNJbjogY3ViaWNCZXppZXJBc1N0cmluZyhbMCwgMC42NSwgMC41NSwgMV0pLFxuICAgIGNpcmNPdXQ6IGN1YmljQmV6aWVyQXNTdHJpbmcoWzAuNTUsIDAsIDEsIDAuNDVdKSxcbiAgICBiYWNrSW46IGN1YmljQmV6aWVyQXNTdHJpbmcoWzAuMzEsIDAuMDEsIDAuNjYsIC0wLjU5XSksXG4gICAgYmFja091dDogY3ViaWNCZXppZXJBc1N0cmluZyhbMC4zMywgMS41MywgMC42OSwgMC45OV0pLFxufTtcbmZ1bmN0aW9uIG1hcEVhc2luZ1RvTmF0aXZlRWFzaW5nKGVhc2luZykge1xuICAgIGlmICghZWFzaW5nKVxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBpc0JlemllckRlZmluaXRpb24oZWFzaW5nKVxuICAgICAgICA/IGN1YmljQmV6aWVyQXNTdHJpbmcoZWFzaW5nKVxuICAgICAgICA6IEFycmF5LmlzQXJyYXkoZWFzaW5nKVxuICAgICAgICAgICAgPyBlYXNpbmcubWFwKG1hcEVhc2luZ1RvTmF0aXZlRWFzaW5nKVxuICAgICAgICAgICAgOiBzdXBwb3J0ZWRXYWFwaUVhc2luZ1tlYXNpbmddO1xufVxuXG5leHBvcnQgeyBjdWJpY0JlemllckFzU3RyaW5nLCBpc1dhYXBpU3VwcG9ydGVkRWFzaW5nLCBtYXBFYXNpbmdUb05hdGl2ZUVhc2luZywgc3VwcG9ydGVkV2FhcGlFYXNpbmcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateStyle: function() { return /* binding */ animateStyle; }\n/* harmony export */ });\n/* harmony import */ var _easing_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./easing.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs\");\n\n\nfunction animateStyle(element, valueName, keyframes, { delay = 0, duration, repeat = 0, repeatType = \"loop\", ease, times, } = {}) {\n const keyframeOptions = { [valueName]: keyframes };\n if (times)\n keyframeOptions.offset = times;\n const easing = (0,_easing_mjs__WEBPACK_IMPORTED_MODULE_0__.mapEasingToNativeEasing)(ease);\n /**\n * If this is an easing array, apply to keyframes, not animation as a whole\n */\n if (Array.isArray(easing))\n keyframeOptions.easing = easing;\n return element.animate(keyframeOptions, {\n delay,\n duration,\n easing: !Array.isArray(easing) ? easing : \"linear\",\n fill: \"both\",\n iterations: repeat + 1,\n direction: repeatType === \"reverse\" ? \"alternate\" : \"normal\",\n });\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBdUQ7O0FBRXZELHVEQUF1RCxxRUFBcUUsSUFBSTtBQUNoSSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBLG1CQUFtQixvRUFBdUI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMOztBQUV3QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9hbmltYXRvcnMvd2FhcGkvaW5kZXgubWpzPzI1YjMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFwRWFzaW5nVG9OYXRpdmVFYXNpbmcgfSBmcm9tICcuL2Vhc2luZy5tanMnO1xuXG5mdW5jdGlvbiBhbmltYXRlU3R5bGUoZWxlbWVudCwgdmFsdWVOYW1lLCBrZXlmcmFtZXMsIHsgZGVsYXkgPSAwLCBkdXJhdGlvbiwgcmVwZWF0ID0gMCwgcmVwZWF0VHlwZSA9IFwibG9vcFwiLCBlYXNlLCB0aW1lcywgfSA9IHt9KSB7XG4gICAgY29uc3Qga2V5ZnJhbWVPcHRpb25zID0geyBbdmFsdWVOYW1lXToga2V5ZnJhbWVzIH07XG4gICAgaWYgKHRpbWVzKVxuICAgICAgICBrZXlmcmFtZU9wdGlvbnMub2Zmc2V0ID0gdGltZXM7XG4gICAgY29uc3QgZWFzaW5nID0gbWFwRWFzaW5nVG9OYXRpdmVFYXNpbmcoZWFzZSk7XG4gICAgLyoqXG4gICAgICogSWYgdGhpcyBpcyBhbiBlYXNpbmcgYXJyYXksIGFwcGx5IHRvIGtleWZyYW1lcywgbm90IGFuaW1hdGlvbiBhcyBhIHdob2xlXG4gICAgICovXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZWFzaW5nKSlcbiAgICAgICAga2V5ZnJhbWVPcHRpb25zLmVhc2luZyA9IGVhc2luZztcbiAgICByZXR1cm4gZWxlbWVudC5hbmltYXRlKGtleWZyYW1lT3B0aW9ucywge1xuICAgICAgICBkZWxheSxcbiAgICAgICAgZHVyYXRpb24sXG4gICAgICAgIGVhc2luZzogIUFycmF5LmlzQXJyYXkoZWFzaW5nKSA/IGVhc2luZyA6IFwibGluZWFyXCIsXG4gICAgICAgIGZpbGw6IFwiYm90aFwiLFxuICAgICAgICBpdGVyYXRpb25zOiByZXBlYXQgKyAxLFxuICAgICAgICBkaXJlY3Rpb246IHJlcGVhdFR5cGUgPT09IFwicmV2ZXJzZVwiID8gXCJhbHRlcm5hdGVcIiA6IFwibm9ybWFsXCIsXG4gICAgfSk7XG59XG5cbmV4cG9ydCB7IGFuaW1hdGVTdHlsZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs":
|
||
/*!***************************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs ***!
|
||
\***************************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getFinalKeyframe: function() { return /* binding */ getFinalKeyframe; }\n/* harmony export */ });\nfunction getFinalKeyframe(keyframes, { repeat, repeatType = \"loop\" }) {\n const index = repeat && repeatType !== \"loop\" && repeat % 2 === 1\n ? 0\n : keyframes.length - 1;\n return keyframes[index];\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS91dGlscy9nZXQtZmluYWwta2V5ZnJhbWUubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSx1Q0FBdUMsNkJBQTZCO0FBQ3BFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2FuaW1hdG9ycy93YWFwaS91dGlscy9nZXQtZmluYWwta2V5ZnJhbWUubWpzPzA5YTgiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gZ2V0RmluYWxLZXlmcmFtZShrZXlmcmFtZXMsIHsgcmVwZWF0LCByZXBlYXRUeXBlID0gXCJsb29wXCIgfSkge1xuICAgIGNvbnN0IGluZGV4ID0gcmVwZWF0ICYmIHJlcGVhdFR5cGUgIT09IFwibG9vcFwiICYmIHJlcGVhdCAlIDIgPT09IDFcbiAgICAgICAgPyAwXG4gICAgICAgIDoga2V5ZnJhbWVzLmxlbmd0aCAtIDE7XG4gICAgcmV0dXJuIGtleWZyYW1lc1tpbmRleF07XG59XG5cbmV4cG9ydCB7IGdldEZpbmFsS2V5ZnJhbWUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/inertia.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/inertia.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ inertia: function() { return /* binding */ inertia; }\n/* harmony export */ });\n/* harmony import */ var _spring_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./spring/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs\");\n/* harmony import */ var _utils_velocity_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/velocity.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs\");\n\n\n\nfunction inertia({ keyframes, velocity = 0.0, power = 0.8, timeConstant = 325, bounceDamping = 10, bounceStiffness = 500, modifyTarget, min, max, restDelta = 0.5, restSpeed, }) {\n const origin = keyframes[0];\n const state = {\n done: false,\n value: origin,\n };\n const isOutOfBounds = (v) => (min !== undefined && v < min) || (max !== undefined && v > max);\n const nearestBoundary = (v) => {\n if (min === undefined)\n return max;\n if (max === undefined)\n return min;\n return Math.abs(min - v) < Math.abs(max - v) ? min : max;\n };\n let amplitude = power * velocity;\n const ideal = origin + amplitude;\n const target = modifyTarget === undefined ? ideal : modifyTarget(ideal);\n /**\n * If the target has changed we need to re-calculate the amplitude, otherwise\n * the animation will start from the wrong position.\n */\n if (target !== ideal)\n amplitude = target - origin;\n const calcDelta = (t) => -amplitude * Math.exp(-t / timeConstant);\n const calcLatest = (t) => target + calcDelta(t);\n const applyFriction = (t) => {\n const delta = calcDelta(t);\n const latest = calcLatest(t);\n state.done = Math.abs(delta) <= restDelta;\n state.value = state.done ? target : latest;\n };\n /**\n * Ideally this would resolve for t in a stateless way, we could\n * do that by always precalculating the animation but as we know\n * this will be done anyway we can assume that spring will\n * be discovered during that.\n */\n let timeReachedBoundary;\n let spring$1;\n const checkCatchBoundary = (t) => {\n if (!isOutOfBounds(state.value))\n return;\n timeReachedBoundary = t;\n spring$1 = (0,_spring_index_mjs__WEBPACK_IMPORTED_MODULE_0__.spring)({\n keyframes: [state.value, nearestBoundary(state.value)],\n velocity: (0,_utils_velocity_mjs__WEBPACK_IMPORTED_MODULE_1__.calcGeneratorVelocity)(calcLatest, t, state.value),\n damping: bounceDamping,\n stiffness: bounceStiffness,\n restDelta,\n restSpeed,\n });\n };\n checkCatchBoundary(0);\n return {\n calculatedDuration: null,\n next: (t) => {\n /**\n * We need to resolve the friction to figure out if we need a\n * spring but we don't want to do this twice per frame. So here\n * we flag if we updated for this frame and later if we did\n * we can skip doing it again.\n */\n let hasUpdatedFrame = false;\n if (!spring$1 && timeReachedBoundary === undefined) {\n hasUpdatedFrame = true;\n applyFriction(t);\n checkCatchBoundary(t);\n }\n /**\n * If we have a spring and the provided t is beyond the moment the friction\n * animation crossed the min/max boundary, use the spring.\n */\n if (timeReachedBoundary !== undefined && t > timeReachedBoundary) {\n return spring$1.next(t - timeReachedBoundary);\n }\n else {\n !hasUpdatedFrame && applyFriction(t);\n return state;\n }\n },\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvaW5lcnRpYS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTRDO0FBQ2lCOztBQUU3RCxtQkFBbUIsNEpBQTRKO0FBQy9LO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQix5REFBTTtBQUN6QjtBQUNBLHNCQUFzQiwwRUFBcUI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFbUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9hbmltYXRpb24vZ2VuZXJhdG9ycy9pbmVydGlhLm1qcz8wYzM1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNwcmluZyB9IGZyb20gJy4vc3ByaW5nL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBjYWxjR2VuZXJhdG9yVmVsb2NpdHkgfSBmcm9tICcuL3V0aWxzL3ZlbG9jaXR5Lm1qcyc7XG5cbmZ1bmN0aW9uIGluZXJ0aWEoeyBrZXlmcmFtZXMsIHZlbG9jaXR5ID0gMC4wLCBwb3dlciA9IDAuOCwgdGltZUNvbnN0YW50ID0gMzI1LCBib3VuY2VEYW1waW5nID0gMTAsIGJvdW5jZVN0aWZmbmVzcyA9IDUwMCwgbW9kaWZ5VGFyZ2V0LCBtaW4sIG1heCwgcmVzdERlbHRhID0gMC41LCByZXN0U3BlZWQsIH0pIHtcbiAgICBjb25zdCBvcmlnaW4gPSBrZXlmcmFtZXNbMF07XG4gICAgY29uc3Qgc3RhdGUgPSB7XG4gICAgICAgIGRvbmU6IGZhbHNlLFxuICAgICAgICB2YWx1ZTogb3JpZ2luLFxuICAgIH07XG4gICAgY29uc3QgaXNPdXRPZkJvdW5kcyA9ICh2KSA9PiAobWluICE9PSB1bmRlZmluZWQgJiYgdiA8IG1pbikgfHwgKG1heCAhPT0gdW5kZWZpbmVkICYmIHYgPiBtYXgpO1xuICAgIGNvbnN0IG5lYXJlc3RCb3VuZGFyeSA9ICh2KSA9PiB7XG4gICAgICAgIGlmIChtaW4gPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHJldHVybiBtYXg7XG4gICAgICAgIGlmIChtYXggPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHJldHVybiBtaW47XG4gICAgICAgIHJldHVybiBNYXRoLmFicyhtaW4gLSB2KSA8IE1hdGguYWJzKG1heCAtIHYpID8gbWluIDogbWF4O1xuICAgIH07XG4gICAgbGV0IGFtcGxpdHVkZSA9IHBvd2VyICogdmVsb2NpdHk7XG4gICAgY29uc3QgaWRlYWwgPSBvcmlnaW4gKyBhbXBsaXR1ZGU7XG4gICAgY29uc3QgdGFyZ2V0ID0gbW9kaWZ5VGFyZ2V0ID09PSB1bmRlZmluZWQgPyBpZGVhbCA6IG1vZGlmeVRhcmdldChpZGVhbCk7XG4gICAgLyoqXG4gICAgICogSWYgdGhlIHRhcmdldCBoYXMgY2hhbmdlZCB3ZSBuZWVkIHRvIHJlLWNhbGN1bGF0ZSB0aGUgYW1wbGl0dWRlLCBvdGhlcndpc2VcbiAgICAgKiB0aGUgYW5pbWF0aW9uIHdpbGwgc3RhcnQgZnJvbSB0aGUgd3JvbmcgcG9zaXRpb24uXG4gICAgICovXG4gICAgaWYgKHRhcmdldCAhPT0gaWRlYWwpXG4gICAgICAgIGFtcGxpdHVkZSA9IHRhcmdldCAtIG9yaWdpbjtcbiAgICBjb25zdCBjYWxjRGVsdGEgPSAodCkgPT4gLWFtcGxpdHVkZSAqIE1hdGguZXhwKC10IC8gdGltZUNvbnN0YW50KTtcbiAgICBjb25zdCBjYWxjTGF0ZXN0ID0gKHQpID0+IHRhcmdldCArIGNhbGNEZWx0YSh0KTtcbiAgICBjb25zdCBhcHBseUZyaWN0aW9uID0gKHQpID0+IHtcbiAgICAgICAgY29uc3QgZGVsdGEgPSBjYWxjRGVsdGEodCk7XG4gICAgICAgIGNvbnN0IGxhdGVzdCA9IGNhbGNMYXRlc3QodCk7XG4gICAgICAgIHN0YXRlLmRvbmUgPSBNYXRoLmFicyhkZWx0YSkgPD0gcmVzdERlbHRhO1xuICAgICAgICBzdGF0ZS52YWx1ZSA9IHN0YXRlLmRvbmUgPyB0YXJnZXQgOiBsYXRlc3Q7XG4gICAgfTtcbiAgICAvKipcbiAgICAgKiBJZGVhbGx5IHRoaXMgd291bGQgcmVzb2x2ZSBmb3IgdCBpbiBhIHN0YXRlbGVzcyB3YXksIHdlIGNvdWxkXG4gICAgICogZG8gdGhhdCBieSBhbHdheXMgcHJlY2FsY3VsYXRpbmcgdGhlIGFuaW1hdGlvbiBidXQgYXMgd2Uga25vd1xuICAgICAqIHRoaXMgd2lsbCBiZSBkb25lIGFueXdheSB3ZSBjYW4gYXNzdW1lIHRoYXQgc3ByaW5nIHdpbGxcbiAgICAgKiBiZSBkaXNjb3ZlcmVkIGR1cmluZyB0aGF0LlxuICAgICAqL1xuICAgIGxldCB0aW1lUmVhY2hlZEJvdW5kYXJ5O1xuICAgIGxldCBzcHJpbmckMTtcbiAgICBjb25zdCBjaGVja0NhdGNoQm91bmRhcnkgPSAodCkgPT4ge1xuICAgICAgICBpZiAoIWlzT3V0T2ZCb3VuZHMoc3RhdGUudmFsdWUpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB0aW1lUmVhY2hlZEJvdW5kYXJ5ID0gdDtcbiAgICAgICAgc3ByaW5nJDEgPSBzcHJpbmcoe1xuICAgICAgICAgICAga2V5ZnJhbWVzOiBbc3RhdGUudmFsdWUsIG5lYXJlc3RCb3VuZGFyeShzdGF0ZS52YWx1ZSldLFxuICAgICAgICAgICAgdmVsb2NpdHk6IGNhbGNHZW5lcmF0b3JWZWxvY2l0eShjYWxjTGF0ZXN0LCB0LCBzdGF0ZS52YWx1ZSksXG4gICAgICAgICAgICBkYW1waW5nOiBib3VuY2VEYW1waW5nLFxuICAgICAgICAgICAgc3RpZmZuZXNzOiBib3VuY2VTdGlmZm5lc3MsXG4gICAgICAgICAgICByZXN0RGVsdGEsXG4gICAgICAgICAgICByZXN0U3BlZWQsXG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgY2hlY2tDYXRjaEJvdW5kYXJ5KDApO1xuICAgIHJldHVybiB7XG4gICAgICAgIGNhbGN1bGF0ZWREdXJhdGlvbjogbnVsbCxcbiAgICAgICAgbmV4dDogKHQpID0+IHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV2UgbmVlZCB0byByZXNvbHZlIHRoZSBmcmljdGlvbiB0byBmaWd1cmUgb3V0IGlmIHdlIG5lZWQgYVxuICAgICAgICAgICAgICogc3ByaW5nIGJ1dCB3ZSBkb24ndCB3YW50IHRvIGRvIHRoaXMgdHdpY2UgcGVyIGZyYW1lLiBTbyBoZXJlXG4gICAgICAgICAgICAgKiB3ZSBmbGFnIGlmIHdlIHVwZGF0ZWQgZm9yIHRoaXMgZnJhbWUgYW5kIGxhdGVyIGlmIHdlIGRpZFxuICAgICAgICAgICAgICogd2UgY2FuIHNraXAgZG9pbmcgaXQgYWdhaW4uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGxldCBoYXNVcGRhdGVkRnJhbWUgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICghc3ByaW5nJDEgJiYgdGltZVJlYWNoZWRCb3VuZGFyeSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgaGFzVXBkYXRlZEZyYW1lID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBhcHBseUZyaWN0aW9uKHQpO1xuICAgICAgICAgICAgICAgIGNoZWNrQ2F0Y2hCb3VuZGFyeSh0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgd2UgaGF2ZSBhIHNwcmluZyBhbmQgdGhlIHByb3ZpZGVkIHQgaXMgYmV5b25kIHRoZSBtb21lbnQgdGhlIGZyaWN0aW9uXG4gICAgICAgICAgICAgKiBhbmltYXRpb24gY3Jvc3NlZCB0aGUgbWluL21heCBib3VuZGFyeSwgdXNlIHRoZSBzcHJpbmcuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICh0aW1lUmVhY2hlZEJvdW5kYXJ5ICE9PSB1bmRlZmluZWQgJiYgdCA+IHRpbWVSZWFjaGVkQm91bmRhcnkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3ByaW5nJDEubmV4dCh0IC0gdGltZVJlYWNoZWRCb3VuZGFyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAhaGFzVXBkYXRlZEZyYW1lICYmIGFwcGx5RnJpY3Rpb24odCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgIH07XG59XG5cbmV4cG9ydCB7IGluZXJ0aWEgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/inertia.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ defaultEasing: function() { return /* binding */ defaultEasing; },\n/* harmony export */ keyframes: function() { return /* binding */ keyframes; }\n/* harmony export */ });\n/* harmony import */ var _easing_ease_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../easing/ease.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/ease.mjs\");\n/* harmony import */ var _easing_utils_is_easing_array_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../easing/utils/is-easing-array.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs\");\n/* harmony import */ var _easing_utils_map_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../easing/utils/map.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/map.mjs\");\n/* harmony import */ var _utils_interpolate_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/interpolate.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/interpolate.mjs\");\n/* harmony import */ var _utils_offsets_default_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/offsets/default.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/default.mjs\");\n/* harmony import */ var _utils_offsets_time_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/offsets/time.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/time.mjs\");\n\n\n\n\n\n\n\nfunction defaultEasing(values, easing) {\n return values.map(() => easing || _easing_ease_mjs__WEBPACK_IMPORTED_MODULE_0__.easeInOut).splice(0, values.length - 1);\n}\nfunction keyframes({ duration = 300, keyframes: keyframeValues, times, ease = \"easeInOut\", }) {\n /**\n * Easing functions can be externally defined as strings. Here we convert them\n * into actual functions.\n */\n const easingFunctions = (0,_easing_utils_is_easing_array_mjs__WEBPACK_IMPORTED_MODULE_1__.isEasingArray)(ease)\n ? ease.map(_easing_utils_map_mjs__WEBPACK_IMPORTED_MODULE_2__.easingDefinitionToFunction)\n : (0,_easing_utils_map_mjs__WEBPACK_IMPORTED_MODULE_2__.easingDefinitionToFunction)(ease);\n /**\n * This is the Iterator-spec return value. We ensure it's mutable rather than using a generator\n * to reduce GC during animation.\n */\n const state = {\n done: false,\n value: keyframeValues[0],\n };\n /**\n * Create a times array based on the provided 0-1 offsets\n */\n const absoluteTimes = (0,_utils_offsets_time_mjs__WEBPACK_IMPORTED_MODULE_3__.convertOffsetToTimes)(\n // Only use the provided offsets if they're the correct length\n // TODO Maybe we should warn here if there's a length mismatch\n times && times.length === keyframeValues.length\n ? times\n : (0,_utils_offsets_default_mjs__WEBPACK_IMPORTED_MODULE_4__.defaultOffset)(keyframeValues), duration);\n const mapTimeToKeyframe = (0,_utils_interpolate_mjs__WEBPACK_IMPORTED_MODULE_5__.interpolate)(absoluteTimes, keyframeValues, {\n ease: Array.isArray(easingFunctions)\n ? easingFunctions\n : defaultEasing(keyframeValues, easingFunctions),\n });\n return {\n calculatedDuration: duration,\n next: (t) => {\n state.value = mapTimeToKeyframe(t);\n state.done = t >= duration;\n return state;\n },\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMva2V5ZnJhbWVzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFrRDtBQUNxQjtBQUNDO0FBQ2Q7QUFDTTtBQUNJOztBQUVwRTtBQUNBLHNDQUFzQyx1REFBUztBQUMvQztBQUNBLHFCQUFxQix1RUFBdUU7QUFDNUY7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsZ0ZBQWE7QUFDekMsbUJBQW1CLDZFQUEwQjtBQUM3QyxVQUFVLGlGQUEwQjtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLDZFQUFvQjtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVUseUVBQWE7QUFDdkIsOEJBQThCLG1FQUFXO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTs7QUFFb0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9hbmltYXRpb24vZ2VuZXJhdG9ycy9rZXlmcmFtZXMubWpzPzNjYTUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZWFzZUluT3V0IH0gZnJvbSAnLi4vLi4vZWFzaW5nL2Vhc2UubWpzJztcbmltcG9ydCB7IGlzRWFzaW5nQXJyYXkgfSBmcm9tICcuLi8uLi9lYXNpbmcvdXRpbHMvaXMtZWFzaW5nLWFycmF5Lm1qcyc7XG5pbXBvcnQgeyBlYXNpbmdEZWZpbml0aW9uVG9GdW5jdGlvbiB9IGZyb20gJy4uLy4uL2Vhc2luZy91dGlscy9tYXAubWpzJztcbmltcG9ydCB7IGludGVycG9sYXRlIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW50ZXJwb2xhdGUubWpzJztcbmltcG9ydCB7IGRlZmF1bHRPZmZzZXQgfSBmcm9tICcuLi8uLi91dGlscy9vZmZzZXRzL2RlZmF1bHQubWpzJztcbmltcG9ydCB7IGNvbnZlcnRPZmZzZXRUb1RpbWVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvb2Zmc2V0cy90aW1lLm1qcyc7XG5cbmZ1bmN0aW9uIGRlZmF1bHRFYXNpbmcodmFsdWVzLCBlYXNpbmcpIHtcbiAgICByZXR1cm4gdmFsdWVzLm1hcCgoKSA9PiBlYXNpbmcgfHwgZWFzZUluT3V0KS5zcGxpY2UoMCwgdmFsdWVzLmxlbmd0aCAtIDEpO1xufVxuZnVuY3Rpb24ga2V5ZnJhbWVzKHsgZHVyYXRpb24gPSAzMDAsIGtleWZyYW1lczoga2V5ZnJhbWVWYWx1ZXMsIHRpbWVzLCBlYXNlID0gXCJlYXNlSW5PdXRcIiwgfSkge1xuICAgIC8qKlxuICAgICAqIEVhc2luZyBmdW5jdGlvbnMgY2FuIGJlIGV4dGVybmFsbHkgZGVmaW5lZCBhcyBzdHJpbmdzLiBIZXJlIHdlIGNvbnZlcnQgdGhlbVxuICAgICAqIGludG8gYWN0dWFsIGZ1bmN0aW9ucy5cbiAgICAgKi9cbiAgICBjb25zdCBlYXNpbmdGdW5jdGlvbnMgPSBpc0Vhc2luZ0FycmF5KGVhc2UpXG4gICAgICAgID8gZWFzZS5tYXAoZWFzaW5nRGVmaW5pdGlvblRvRnVuY3Rpb24pXG4gICAgICAgIDogZWFzaW5nRGVmaW5pdGlvblRvRnVuY3Rpb24oZWFzZSk7XG4gICAgLyoqXG4gICAgICogVGhpcyBpcyB0aGUgSXRlcmF0b3Itc3BlYyByZXR1cm4gdmFsdWUuIFdlIGVuc3VyZSBpdCdzIG11dGFibGUgcmF0aGVyIHRoYW4gdXNpbmcgYSBnZW5lcmF0b3JcbiAgICAgKiB0byByZWR1Y2UgR0MgZHVyaW5nIGFuaW1hdGlvbi5cbiAgICAgKi9cbiAgICBjb25zdCBzdGF0ZSA9IHtcbiAgICAgICAgZG9uZTogZmFsc2UsXG4gICAgICAgIHZhbHVlOiBrZXlmcmFtZVZhbHVlc1swXSxcbiAgICB9O1xuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIHRpbWVzIGFycmF5IGJhc2VkIG9uIHRoZSBwcm92aWRlZCAwLTEgb2Zmc2V0c1xuICAgICAqL1xuICAgIGNvbnN0IGFic29sdXRlVGltZXMgPSBjb252ZXJ0T2Zmc2V0VG9UaW1lcyhcbiAgICAvLyBPbmx5IHVzZSB0aGUgcHJvdmlkZWQgb2Zmc2V0cyBpZiB0aGV5J3JlIHRoZSBjb3JyZWN0IGxlbmd0aFxuICAgIC8vIFRPRE8gTWF5YmUgd2Ugc2hvdWxkIHdhcm4gaGVyZSBpZiB0aGVyZSdzIGEgbGVuZ3RoIG1pc21hdGNoXG4gICAgdGltZXMgJiYgdGltZXMubGVuZ3RoID09PSBrZXlmcmFtZVZhbHVlcy5sZW5ndGhcbiAgICAgICAgPyB0aW1lc1xuICAgICAgICA6IGRlZmF1bHRPZmZzZXQoa2V5ZnJhbWVWYWx1ZXMpLCBkdXJhdGlvbik7XG4gICAgY29uc3QgbWFwVGltZVRvS2V5ZnJhbWUgPSBpbnRlcnBvbGF0ZShhYnNvbHV0ZVRpbWVzLCBrZXlmcmFtZVZhbHVlcywge1xuICAgICAgICBlYXNlOiBBcnJheS5pc0FycmF5KGVhc2luZ0Z1bmN0aW9ucylcbiAgICAgICAgICAgID8gZWFzaW5nRnVuY3Rpb25zXG4gICAgICAgICAgICA6IGRlZmF1bHRFYXNpbmcoa2V5ZnJhbWVWYWx1ZXMsIGVhc2luZ0Z1bmN0aW9ucyksXG4gICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgY2FsY3VsYXRlZER1cmF0aW9uOiBkdXJhdGlvbixcbiAgICAgICAgbmV4dDogKHQpID0+IHtcbiAgICAgICAgICAgIHN0YXRlLnZhbHVlID0gbWFwVGltZVRvS2V5ZnJhbWUodCk7XG4gICAgICAgICAgICBzdGF0ZS5kb25lID0gdCA+PSBkdXJhdGlvbjtcbiAgICAgICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuXG5leHBvcnQgeyBkZWZhdWx0RWFzaW5nLCBrZXlmcmFtZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ calcAngularFreq: function() { return /* binding */ calcAngularFreq; },\n/* harmony export */ findSpring: function() { return /* binding */ findSpring; },\n/* harmony export */ maxDamping: function() { return /* binding */ maxDamping; },\n/* harmony export */ maxDuration: function() { return /* binding */ maxDuration; },\n/* harmony export */ minDamping: function() { return /* binding */ minDamping; },\n/* harmony export */ minDuration: function() { return /* binding */ minDuration; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n\n\n\n\nconst safeMin = 0.001;\nconst minDuration = 0.01;\nconst maxDuration = 10.0;\nconst minDamping = 0.05;\nconst maxDamping = 1;\nfunction findSpring({ duration = 800, bounce = 0.25, velocity = 0, mass = 1, }) {\n let envelope;\n let derivative;\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_0__.warning)(duration <= (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.secondsToMilliseconds)(maxDuration), \"Spring duration must be 10 seconds or less\");\n let dampingRatio = 1 - bounce;\n /**\n * Restrict dampingRatio and duration to within acceptable ranges.\n */\n dampingRatio = (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_2__.clamp)(minDamping, maxDamping, dampingRatio);\n duration = (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_2__.clamp)(minDuration, maxDuration, (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.millisecondsToSeconds)(duration));\n if (dampingRatio < 1) {\n /**\n * Underdamped spring\n */\n envelope = (undampedFreq) => {\n const exponentialDecay = undampedFreq * dampingRatio;\n const delta = exponentialDecay * duration;\n const a = exponentialDecay - velocity;\n const b = calcAngularFreq(undampedFreq, dampingRatio);\n const c = Math.exp(-delta);\n return safeMin - (a / b) * c;\n };\n derivative = (undampedFreq) => {\n const exponentialDecay = undampedFreq * dampingRatio;\n const delta = exponentialDecay * duration;\n const d = delta * velocity + velocity;\n const e = Math.pow(dampingRatio, 2) * Math.pow(undampedFreq, 2) * duration;\n const f = Math.exp(-delta);\n const g = calcAngularFreq(Math.pow(undampedFreq, 2), dampingRatio);\n const factor = -envelope(undampedFreq) + safeMin > 0 ? -1 : 1;\n return (factor * ((d - e) * f)) / g;\n };\n }\n else {\n /**\n * Critically-damped spring\n */\n envelope = (undampedFreq) => {\n const a = Math.exp(-undampedFreq * duration);\n const b = (undampedFreq - velocity) * duration + 1;\n return -safeMin + a * b;\n };\n derivative = (undampedFreq) => {\n const a = Math.exp(-undampedFreq * duration);\n const b = (velocity - undampedFreq) * (duration * duration);\n return a * b;\n };\n }\n const initialGuess = 5 / duration;\n const undampedFreq = approximateRoot(envelope, derivative, initialGuess);\n duration = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.secondsToMilliseconds)(duration);\n if (isNaN(undampedFreq)) {\n return {\n stiffness: 100,\n damping: 10,\n duration,\n };\n }\n else {\n const stiffness = Math.pow(undampedFreq, 2) * mass;\n return {\n stiffness,\n damping: dampingRatio * 2 * Math.sqrt(mass * stiffness),\n duration,\n };\n }\n}\nconst rootIterations = 12;\nfunction approximateRoot(envelope, derivative, initialGuess) {\n let result = initialGuess;\n for (let i = 1; i < rootIterations; i++) {\n result = result - envelope(result) / derivative(result);\n }\n return result;\n}\nfunction calcAngularFreq(undampedFreq, dampingRatio) {\n return undampedFreq * Math.sqrt(1 - dampingRatio * dampingRatio);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvc3ByaW5nL2ZpbmQubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFvRDtBQUNIO0FBQ2lEOztBQUVsRztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLHdEQUF3RDtBQUM5RTtBQUNBO0FBQ0EsSUFBSSwwREFBTyxhQUFhLGlGQUFxQjtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQix1REFBSztBQUN4QixlQUFlLHVEQUFLLDJCQUEyQixpRkFBcUI7QUFDcEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGlGQUFxQjtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixvQkFBb0I7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXlGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvc3ByaW5nL2ZpbmQubWpzPzJjNmEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd2FybmluZyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2Vycm9ycy5tanMnO1xuaW1wb3J0IHsgY2xhbXAgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFtcC5tanMnO1xuaW1wb3J0IHsgc2Vjb25kc1RvTWlsbGlzZWNvbmRzLCBtaWxsaXNlY29uZHNUb1NlY29uZHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy90aW1lLWNvbnZlcnNpb24ubWpzJztcblxuY29uc3Qgc2FmZU1pbiA9IDAuMDAxO1xuY29uc3QgbWluRHVyYXRpb24gPSAwLjAxO1xuY29uc3QgbWF4RHVyYXRpb24gPSAxMC4wO1xuY29uc3QgbWluRGFtcGluZyA9IDAuMDU7XG5jb25zdCBtYXhEYW1waW5nID0gMTtcbmZ1bmN0aW9uIGZpbmRTcHJpbmcoeyBkdXJhdGlvbiA9IDgwMCwgYm91bmNlID0gMC4yNSwgdmVsb2NpdHkgPSAwLCBtYXNzID0gMSwgfSkge1xuICAgIGxldCBlbnZlbG9wZTtcbiAgICBsZXQgZGVyaXZhdGl2ZTtcbiAgICB3YXJuaW5nKGR1cmF0aW9uIDw9IHNlY29uZHNUb01pbGxpc2Vjb25kcyhtYXhEdXJhdGlvbiksIFwiU3ByaW5nIGR1cmF0aW9uIG11c3QgYmUgMTAgc2Vjb25kcyBvciBsZXNzXCIpO1xuICAgIGxldCBkYW1waW5nUmF0aW8gPSAxIC0gYm91bmNlO1xuICAgIC8qKlxuICAgICAqIFJlc3RyaWN0IGRhbXBpbmdSYXRpbyBhbmQgZHVyYXRpb24gdG8gd2l0aGluIGFjY2VwdGFibGUgcmFuZ2VzLlxuICAgICAqL1xuICAgIGRhbXBpbmdSYXRpbyA9IGNsYW1wKG1pbkRhbXBpbmcsIG1heERhbXBpbmcsIGRhbXBpbmdSYXRpbyk7XG4gICAgZHVyYXRpb24gPSBjbGFtcChtaW5EdXJhdGlvbiwgbWF4RHVyYXRpb24sIG1pbGxpc2Vjb25kc1RvU2Vjb25kcyhkdXJhdGlvbikpO1xuICAgIGlmIChkYW1waW5nUmF0aW8gPCAxKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVbmRlcmRhbXBlZCBzcHJpbmdcbiAgICAgICAgICovXG4gICAgICAgIGVudmVsb3BlID0gKHVuZGFtcGVkRnJlcSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZXhwb25lbnRpYWxEZWNheSA9IHVuZGFtcGVkRnJlcSAqIGRhbXBpbmdSYXRpbztcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhID0gZXhwb25lbnRpYWxEZWNheSAqIGR1cmF0aW9uO1xuICAgICAgICAgICAgY29uc3QgYSA9IGV4cG9uZW50aWFsRGVjYXkgLSB2ZWxvY2l0eTtcbiAgICAgICAgICAgIGNvbnN0IGIgPSBjYWxjQW5ndWxhckZyZXEodW5kYW1wZWRGcmVxLCBkYW1waW5nUmF0aW8pO1xuICAgICAgICAgICAgY29uc3QgYyA9IE1hdGguZXhwKC1kZWx0YSk7XG4gICAgICAgICAgICByZXR1cm4gc2FmZU1pbiAtIChhIC8gYikgKiBjO1xuICAgICAgICB9O1xuICAgICAgICBkZXJpdmF0aXZlID0gKHVuZGFtcGVkRnJlcSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZXhwb25lbnRpYWxEZWNheSA9IHVuZGFtcGVkRnJlcSAqIGRhbXBpbmdSYXRpbztcbiAgICAgICAgICAgIGNvbnN0IGRlbHRhID0gZXhwb25lbnRpYWxEZWNheSAqIGR1cmF0aW9uO1xuICAgICAgICAgICAgY29uc3QgZCA9IGRlbHRhICogdmVsb2NpdHkgKyB2ZWxvY2l0eTtcbiAgICAgICAgICAgIGNvbnN0IGUgPSBNYXRoLnBvdyhkYW1waW5nUmF0aW8sIDIpICogTWF0aC5wb3codW5kYW1wZWRGcmVxLCAyKSAqIGR1cmF0aW9uO1xuICAgICAgICAgICAgY29uc3QgZiA9IE1hdGguZXhwKC1kZWx0YSk7XG4gICAgICAgICAgICBjb25zdCBnID0gY2FsY0FuZ3VsYXJGcmVxKE1hdGgucG93KHVuZGFtcGVkRnJlcSwgMiksIGRhbXBpbmdSYXRpbyk7XG4gICAgICAgICAgICBjb25zdCBmYWN0b3IgPSAtZW52ZWxvcGUodW5kYW1wZWRGcmVxKSArIHNhZmVNaW4gPiAwID8gLTEgOiAxO1xuICAgICAgICAgICAgcmV0dXJuIChmYWN0b3IgKiAoKGQgLSBlKSAqIGYpKSAvIGc7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICAvKipcbiAgICAgICAgICogQ3JpdGljYWxseS1kYW1wZWQgc3ByaW5nXG4gICAgICAgICAqL1xuICAgICAgICBlbnZlbG9wZSA9ICh1bmRhbXBlZEZyZXEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBNYXRoLmV4cCgtdW5kYW1wZWRGcmVxICogZHVyYXRpb24pO1xuICAgICAgICAgICAgY29uc3QgYiA9ICh1bmRhbXBlZEZyZXEgLSB2ZWxvY2l0eSkgKiBkdXJhdGlvbiArIDE7XG4gICAgICAgICAgICByZXR1cm4gLXNhZmVNaW4gKyBhICogYjtcbiAgICAgICAgfTtcbiAgICAgICAgZGVyaXZhdGl2ZSA9ICh1bmRhbXBlZEZyZXEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGEgPSBNYXRoLmV4cCgtdW5kYW1wZWRGcmVxICogZHVyYXRpb24pO1xuICAgICAgICAgICAgY29uc3QgYiA9ICh2ZWxvY2l0eSAtIHVuZGFtcGVkRnJlcSkgKiAoZHVyYXRpb24gKiBkdXJhdGlvbik7XG4gICAgICAgICAgICByZXR1cm4gYSAqIGI7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IGluaXRpYWxHdWVzcyA9IDUgLyBkdXJhdGlvbjtcbiAgICBjb25zdCB1bmRhbXBlZEZyZXEgPSBhcHByb3hpbWF0ZVJvb3QoZW52ZWxvcGUsIGRlcml2YXRpdmUsIGluaXRpYWxHdWVzcyk7XG4gICAgZHVyYXRpb24gPSBzZWNvbmRzVG9NaWxsaXNlY29uZHMoZHVyYXRpb24pO1xuICAgIGlmIChpc05hTih1bmRhbXBlZEZyZXEpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGlmZm5lc3M6IDEwMCxcbiAgICAgICAgICAgIGRhbXBpbmc6IDEwLFxuICAgICAgICAgICAgZHVyYXRpb24sXG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBjb25zdCBzdGlmZm5lc3MgPSBNYXRoLnBvdyh1bmRhbXBlZEZyZXEsIDIpICogbWFzcztcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHN0aWZmbmVzcyxcbiAgICAgICAgICAgIGRhbXBpbmc6IGRhbXBpbmdSYXRpbyAqIDIgKiBNYXRoLnNxcnQobWFzcyAqIHN0aWZmbmVzcyksXG4gICAgICAgICAgICBkdXJhdGlvbixcbiAgICAgICAgfTtcbiAgICB9XG59XG5jb25zdCByb290SXRlcmF0aW9ucyA9IDEyO1xuZnVuY3Rpb24gYXBwcm94aW1hdGVSb290KGVudmVsb3BlLCBkZXJpdmF0aXZlLCBpbml0aWFsR3Vlc3MpIHtcbiAgICBsZXQgcmVzdWx0ID0gaW5pdGlhbEd1ZXNzO1xuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgcm9vdEl0ZXJhdGlvbnM7IGkrKykge1xuICAgICAgICByZXN1bHQgPSByZXN1bHQgLSBlbnZlbG9wZShyZXN1bHQpIC8gZGVyaXZhdGl2ZShyZXN1bHQpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuZnVuY3Rpb24gY2FsY0FuZ3VsYXJGcmVxKHVuZGFtcGVkRnJlcSwgZGFtcGluZ1JhdGlvKSB7XG4gICAgcmV0dXJuIHVuZGFtcGVkRnJlcSAqIE1hdGguc3FydCgxIC0gZGFtcGluZ1JhdGlvICogZGFtcGluZ1JhdGlvKTtcbn1cblxuZXhwb3J0IHsgY2FsY0FuZ3VsYXJGcmVxLCBmaW5kU3ByaW5nLCBtYXhEYW1waW5nLCBtYXhEdXJhdGlvbiwgbWluRGFtcGluZywgbWluRHVyYXRpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ spring: function() { return /* binding */ spring; }\n/* harmony export */ });\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n/* harmony import */ var _utils_velocity_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/velocity.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs\");\n/* harmony import */ var _find_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./find.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs\");\n\n\n\n\nconst durationKeys = [\"duration\", \"bounce\"];\nconst physicsKeys = [\"stiffness\", \"damping\", \"mass\"];\nfunction isSpringType(options, keys) {\n return keys.some((key) => options[key] !== undefined);\n}\nfunction getSpringOptions(options) {\n let springOptions = {\n velocity: 0.0,\n stiffness: 100,\n damping: 10,\n mass: 1.0,\n isResolvedFromDuration: false,\n ...options,\n };\n // stiffness/damping/mass overrides duration/bounce\n if (!isSpringType(options, physicsKeys) &&\n isSpringType(options, durationKeys)) {\n const derived = (0,_find_mjs__WEBPACK_IMPORTED_MODULE_0__.findSpring)(options);\n springOptions = {\n ...springOptions,\n ...derived,\n mass: 1.0,\n };\n springOptions.isResolvedFromDuration = true;\n }\n return springOptions;\n}\nfunction spring({ keyframes, restDelta, restSpeed, ...options }) {\n const origin = keyframes[0];\n const target = keyframes[keyframes.length - 1];\n /**\n * This is the Iterator-spec return value. We ensure it's mutable rather than using a generator\n * to reduce GC during animation.\n */\n const state = { done: false, value: origin };\n const { stiffness, damping, mass, duration, velocity, isResolvedFromDuration, } = getSpringOptions({\n ...options,\n velocity: -(0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.millisecondsToSeconds)(options.velocity || 0),\n });\n const initialVelocity = velocity || 0.0;\n const dampingRatio = damping / (2 * Math.sqrt(stiffness * mass));\n const initialDelta = target - origin;\n const undampedAngularFreq = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.millisecondsToSeconds)(Math.sqrt(stiffness / mass));\n /**\n * If we're working on a granular scale, use smaller defaults for determining\n * when the spring is finished.\n *\n * These defaults have been selected emprically based on what strikes a good\n * ratio between feeling good and finishing as soon as changes are imperceptible.\n */\n const isGranularScale = Math.abs(initialDelta) < 5;\n restSpeed || (restSpeed = isGranularScale ? 0.01 : 2);\n restDelta || (restDelta = isGranularScale ? 0.005 : 0.5);\n let resolveSpring;\n if (dampingRatio < 1) {\n const angularFreq = (0,_find_mjs__WEBPACK_IMPORTED_MODULE_0__.calcAngularFreq)(undampedAngularFreq, dampingRatio);\n // Underdamped spring\n resolveSpring = (t) => {\n const envelope = Math.exp(-dampingRatio * undampedAngularFreq * t);\n return (target -\n envelope *\n (((initialVelocity +\n dampingRatio * undampedAngularFreq * initialDelta) /\n angularFreq) *\n Math.sin(angularFreq * t) +\n initialDelta * Math.cos(angularFreq * t)));\n };\n }\n else if (dampingRatio === 1) {\n // Critically damped spring\n resolveSpring = (t) => target -\n Math.exp(-undampedAngularFreq * t) *\n (initialDelta +\n (initialVelocity + undampedAngularFreq * initialDelta) * t);\n }\n else {\n // Overdamped spring\n const dampedAngularFreq = undampedAngularFreq * Math.sqrt(dampingRatio * dampingRatio - 1);\n resolveSpring = (t) => {\n const envelope = Math.exp(-dampingRatio * undampedAngularFreq * t);\n // When performing sinh or cosh values can hit Infinity so we cap them here\n const freqForT = Math.min(dampedAngularFreq * t, 300);\n return (target -\n (envelope *\n ((initialVelocity +\n dampingRatio * undampedAngularFreq * initialDelta) *\n Math.sinh(freqForT) +\n dampedAngularFreq *\n initialDelta *\n Math.cosh(freqForT))) /\n dampedAngularFreq);\n };\n }\n return {\n calculatedDuration: isResolvedFromDuration ? duration || null : null,\n next: (t) => {\n const current = resolveSpring(t);\n if (!isResolvedFromDuration) {\n let currentVelocity = initialVelocity;\n if (t !== 0) {\n /**\n * We only need to calculate velocity for under-damped springs\n * as over- and critically-damped springs can't overshoot, so\n * checking only for displacement is enough.\n */\n if (dampingRatio < 1) {\n currentVelocity = (0,_utils_velocity_mjs__WEBPACK_IMPORTED_MODULE_2__.calcGeneratorVelocity)(resolveSpring, t, current);\n }\n else {\n currentVelocity = 0;\n }\n }\n const isBelowVelocityThreshold = Math.abs(currentVelocity) <= restSpeed;\n const isBelowDisplacementThreshold = Math.abs(target - current) <= restDelta;\n state.done =\n isBelowVelocityThreshold && isBelowDisplacementThreshold;\n }\n else {\n state.done = t >= duration;\n }\n state.value = state.done ? target : current;\n return state;\n },\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvc3ByaW5nL2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQTJFO0FBQ2I7QUFDTDs7QUFFekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixxREFBVTtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsNkNBQTZDO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQjtBQUNwQixZQUFZLHdFQUF3RTtBQUNwRjtBQUNBLG1CQUFtQixpRkFBcUI7QUFDeEMsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxpRkFBcUI7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLDBEQUFlO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwwQ0FBMEMsMEVBQXFCO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBOztBQUVrQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9nZW5lcmF0b3JzL3NwcmluZy9pbmRleC5tanM/NDExOCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaWxsaXNlY29uZHNUb1NlY29uZHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy90aW1lLWNvbnZlcnNpb24ubWpzJztcbmltcG9ydCB7IGNhbGNHZW5lcmF0b3JWZWxvY2l0eSB9IGZyb20gJy4uL3V0aWxzL3ZlbG9jaXR5Lm1qcyc7XG5pbXBvcnQgeyBmaW5kU3ByaW5nLCBjYWxjQW5ndWxhckZyZXEgfSBmcm9tICcuL2ZpbmQubWpzJztcblxuY29uc3QgZHVyYXRpb25LZXlzID0gW1wiZHVyYXRpb25cIiwgXCJib3VuY2VcIl07XG5jb25zdCBwaHlzaWNzS2V5cyA9IFtcInN0aWZmbmVzc1wiLCBcImRhbXBpbmdcIiwgXCJtYXNzXCJdO1xuZnVuY3Rpb24gaXNTcHJpbmdUeXBlKG9wdGlvbnMsIGtleXMpIHtcbiAgICByZXR1cm4ga2V5cy5zb21lKChrZXkpID0+IG9wdGlvbnNba2V5XSAhPT0gdW5kZWZpbmVkKTtcbn1cbmZ1bmN0aW9uIGdldFNwcmluZ09wdGlvbnMob3B0aW9ucykge1xuICAgIGxldCBzcHJpbmdPcHRpb25zID0ge1xuICAgICAgICB2ZWxvY2l0eTogMC4wLFxuICAgICAgICBzdGlmZm5lc3M6IDEwMCxcbiAgICAgICAgZGFtcGluZzogMTAsXG4gICAgICAgIG1hc3M6IDEuMCxcbiAgICAgICAgaXNSZXNvbHZlZEZyb21EdXJhdGlvbjogZmFsc2UsXG4gICAgICAgIC4uLm9wdGlvbnMsXG4gICAgfTtcbiAgICAvLyBzdGlmZm5lc3MvZGFtcGluZy9tYXNzIG92ZXJyaWRlcyBkdXJhdGlvbi9ib3VuY2VcbiAgICBpZiAoIWlzU3ByaW5nVHlwZShvcHRpb25zLCBwaHlzaWNzS2V5cykgJiZcbiAgICAgICAgaXNTcHJpbmdUeXBlKG9wdGlvbnMsIGR1cmF0aW9uS2V5cykpIHtcbiAgICAgICAgY29uc3QgZGVyaXZlZCA9IGZpbmRTcHJpbmcob3B0aW9ucyk7XG4gICAgICAgIHNwcmluZ09wdGlvbnMgPSB7XG4gICAgICAgICAgICAuLi5zcHJpbmdPcHRpb25zLFxuICAgICAgICAgICAgLi4uZGVyaXZlZCxcbiAgICAgICAgICAgIG1hc3M6IDEuMCxcbiAgICAgICAgfTtcbiAgICAgICAgc3ByaW5nT3B0aW9ucy5pc1Jlc29sdmVkRnJvbUR1cmF0aW9uID0gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHNwcmluZ09wdGlvbnM7XG59XG5mdW5jdGlvbiBzcHJpbmcoeyBrZXlmcmFtZXMsIHJlc3REZWx0YSwgcmVzdFNwZWVkLCAuLi5vcHRpb25zIH0pIHtcbiAgICBjb25zdCBvcmlnaW4gPSBrZXlmcmFtZXNbMF07XG4gICAgY29uc3QgdGFyZ2V0ID0ga2V5ZnJhbWVzW2tleWZyYW1lcy5sZW5ndGggLSAxXTtcbiAgICAvKipcbiAgICAgKiBUaGlzIGlzIHRoZSBJdGVyYXRvci1zcGVjIHJldHVybiB2YWx1ZS4gV2UgZW5zdXJlIGl0J3MgbXV0YWJsZSByYXRoZXIgdGhhbiB1c2luZyBhIGdlbmVyYXRvclxuICAgICAqIHRvIHJlZHVjZSBHQyBkdXJpbmcgYW5pbWF0aW9uLlxuICAgICAqL1xuICAgIGNvbnN0IHN0YXRlID0geyBkb25lOiBmYWxzZSwgdmFsdWU6IG9yaWdpbiB9O1xuICAgIGNvbnN0IHsgc3RpZmZuZXNzLCBkYW1waW5nLCBtYXNzLCBkdXJhdGlvbiwgdmVsb2NpdHksIGlzUmVzb2x2ZWRGcm9tRHVyYXRpb24sIH0gPSBnZXRTcHJpbmdPcHRpb25zKHtcbiAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgdmVsb2NpdHk6IC1taWxsaXNlY29uZHNUb1NlY29uZHMob3B0aW9ucy52ZWxvY2l0eSB8fCAwKSxcbiAgICB9KTtcbiAgICBjb25zdCBpbml0aWFsVmVsb2NpdHkgPSB2ZWxvY2l0eSB8fCAwLjA7XG4gICAgY29uc3QgZGFtcGluZ1JhdGlvID0gZGFtcGluZyAvICgyICogTWF0aC5zcXJ0KHN0aWZmbmVzcyAqIG1hc3MpKTtcbiAgICBjb25zdCBpbml0aWFsRGVsdGEgPSB0YXJnZXQgLSBvcmlnaW47XG4gICAgY29uc3QgdW5kYW1wZWRBbmd1bGFyRnJlcSA9IG1pbGxpc2Vjb25kc1RvU2Vjb25kcyhNYXRoLnNxcnQoc3RpZmZuZXNzIC8gbWFzcykpO1xuICAgIC8qKlxuICAgICAqIElmIHdlJ3JlIHdvcmtpbmcgb24gYSBncmFudWxhciBzY2FsZSwgdXNlIHNtYWxsZXIgZGVmYXVsdHMgZm9yIGRldGVybWluaW5nXG4gICAgICogd2hlbiB0aGUgc3ByaW5nIGlzIGZpbmlzaGVkLlxuICAgICAqXG4gICAgICogVGhlc2UgZGVmYXVsdHMgaGF2ZSBiZWVuIHNlbGVjdGVkIGVtcHJpY2FsbHkgYmFzZWQgb24gd2hhdCBzdHJpa2VzIGEgZ29vZFxuICAgICAqIHJhdGlvIGJldHdlZW4gZmVlbGluZyBnb29kIGFuZCBmaW5pc2hpbmcgYXMgc29vbiBhcyBjaGFuZ2VzIGFyZSBpbXBlcmNlcHRpYmxlLlxuICAgICAqL1xuICAgIGNvbnN0IGlzR3JhbnVsYXJTY2FsZSA9IE1hdGguYWJzKGluaXRpYWxEZWx0YSkgPCA1O1xuICAgIHJlc3RTcGVlZCB8fCAocmVzdFNwZWVkID0gaXNHcmFudWxhclNjYWxlID8gMC4wMSA6IDIpO1xuICAgIHJlc3REZWx0YSB8fCAocmVzdERlbHRhID0gaXNHcmFudWxhclNjYWxlID8gMC4wMDUgOiAwLjUpO1xuICAgIGxldCByZXNvbHZlU3ByaW5nO1xuICAgIGlmIChkYW1waW5nUmF0aW8gPCAxKSB7XG4gICAgICAgIGNvbnN0IGFuZ3VsYXJGcmVxID0gY2FsY0FuZ3VsYXJGcmVxKHVuZGFtcGVkQW5ndWxhckZyZXEsIGRhbXBpbmdSYXRpbyk7XG4gICAgICAgIC8vIFVuZGVyZGFtcGVkIHNwcmluZ1xuICAgICAgICByZXNvbHZlU3ByaW5nID0gKHQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVudmVsb3BlID0gTWF0aC5leHAoLWRhbXBpbmdSYXRpbyAqIHVuZGFtcGVkQW5ndWxhckZyZXEgKiB0KTtcbiAgICAgICAgICAgIHJldHVybiAodGFyZ2V0IC1cbiAgICAgICAgICAgICAgICBlbnZlbG9wZSAqXG4gICAgICAgICAgICAgICAgICAgICgoKGluaXRpYWxWZWxvY2l0eSArXG4gICAgICAgICAgICAgICAgICAgICAgICBkYW1waW5nUmF0aW8gKiB1bmRhbXBlZEFuZ3VsYXJGcmVxICogaW5pdGlhbERlbHRhKSAvXG4gICAgICAgICAgICAgICAgICAgICAgICBhbmd1bGFyRnJlcSkgKlxuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5zaW4oYW5ndWxhckZyZXEgKiB0KSArXG4gICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsRGVsdGEgKiBNYXRoLmNvcyhhbmd1bGFyRnJlcSAqIHQpKSk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIGVsc2UgaWYgKGRhbXBpbmdSYXRpbyA9PT0gMSkge1xuICAgICAgICAvLyBDcml0aWNhbGx5IGRhbXBlZCBzcHJpbmdcbiAgICAgICAgcmVzb2x2ZVNwcmluZyA9ICh0KSA9PiB0YXJnZXQgLVxuICAgICAgICAgICAgTWF0aC5leHAoLXVuZGFtcGVkQW5ndWxhckZyZXEgKiB0KSAqXG4gICAgICAgICAgICAgICAgKGluaXRpYWxEZWx0YSArXG4gICAgICAgICAgICAgICAgICAgIChpbml0aWFsVmVsb2NpdHkgKyB1bmRhbXBlZEFuZ3VsYXJGcmVxICogaW5pdGlhbERlbHRhKSAqIHQpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLy8gT3ZlcmRhbXBlZCBzcHJpbmdcbiAgICAgICAgY29uc3QgZGFtcGVkQW5ndWxhckZyZXEgPSB1bmRhbXBlZEFuZ3VsYXJGcmVxICogTWF0aC5zcXJ0KGRhbXBpbmdSYXRpbyAqIGRhbXBpbmdSYXRpbyAtIDEpO1xuICAgICAgICByZXNvbHZlU3ByaW5nID0gKHQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVudmVsb3BlID0gTWF0aC5leHAoLWRhbXBpbmdSYXRpbyAqIHVuZGFtcGVkQW5ndWxhckZyZXEgKiB0KTtcbiAgICAgICAgICAgIC8vIFdoZW4gcGVyZm9ybWluZyBzaW5oIG9yIGNvc2ggdmFsdWVzIGNhbiBoaXQgSW5maW5pdHkgc28gd2UgY2FwIHRoZW0gaGVyZVxuICAgICAgICAgICAgY29uc3QgZnJlcUZvclQgPSBNYXRoLm1pbihkYW1wZWRBbmd1bGFyRnJlcSAqIHQsIDMwMCk7XG4gICAgICAgICAgICByZXR1cm4gKHRhcmdldCAtXG4gICAgICAgICAgICAgICAgKGVudmVsb3BlICpcbiAgICAgICAgICAgICAgICAgICAgKChpbml0aWFsVmVsb2NpdHkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgZGFtcGluZ1JhdGlvICogdW5kYW1wZWRBbmd1bGFyRnJlcSAqIGluaXRpYWxEZWx0YSkgKlxuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5zaW5oKGZyZXFGb3JUKSArXG4gICAgICAgICAgICAgICAgICAgICAgICBkYW1wZWRBbmd1bGFyRnJlcSAqXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbERlbHRhICpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBNYXRoLmNvc2goZnJlcUZvclQpKSkgL1xuICAgICAgICAgICAgICAgICAgICBkYW1wZWRBbmd1bGFyRnJlcSk7XG4gICAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGNhbGN1bGF0ZWREdXJhdGlvbjogaXNSZXNvbHZlZEZyb21EdXJhdGlvbiA/IGR1cmF0aW9uIHx8IG51bGwgOiBudWxsLFxuICAgICAgICBuZXh0OiAodCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IHJlc29sdmVTcHJpbmcodCk7XG4gICAgICAgICAgICBpZiAoIWlzUmVzb2x2ZWRGcm9tRHVyYXRpb24pIHtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudFZlbG9jaXR5ID0gaW5pdGlhbFZlbG9jaXR5O1xuICAgICAgICAgICAgICAgIGlmICh0ICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBXZSBvbmx5IG5lZWQgdG8gY2FsY3VsYXRlIHZlbG9jaXR5IGZvciB1bmRlci1kYW1wZWQgc3ByaW5nc1xuICAgICAgICAgICAgICAgICAgICAgKiBhcyBvdmVyLSBhbmQgY3JpdGljYWxseS1kYW1wZWQgc3ByaW5ncyBjYW4ndCBvdmVyc2hvb3QsIHNvXG4gICAgICAgICAgICAgICAgICAgICAqIGNoZWNraW5nIG9ubHkgZm9yIGRpc3BsYWNlbWVudCBpcyBlbm91Z2guXG4gICAgICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGFtcGluZ1JhdGlvIDwgMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFZlbG9jaXR5ID0gY2FsY0dlbmVyYXRvclZlbG9jaXR5KHJlc29sdmVTcHJpbmcsIHQsIGN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFZlbG9jaXR5ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBpc0JlbG93VmVsb2NpdHlUaHJlc2hvbGQgPSBNYXRoLmFicyhjdXJyZW50VmVsb2NpdHkpIDw9IHJlc3RTcGVlZDtcbiAgICAgICAgICAgICAgICBjb25zdCBpc0JlbG93RGlzcGxhY2VtZW50VGhyZXNob2xkID0gTWF0aC5hYnModGFyZ2V0IC0gY3VycmVudCkgPD0gcmVzdERlbHRhO1xuICAgICAgICAgICAgICAgIHN0YXRlLmRvbmUgPVxuICAgICAgICAgICAgICAgICAgICBpc0JlbG93VmVsb2NpdHlUaHJlc2hvbGQgJiYgaXNCZWxvd0Rpc3BsYWNlbWVudFRocmVzaG9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHN0YXRlLmRvbmUgPSB0ID49IGR1cmF0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3RhdGUudmFsdWUgPSBzdGF0ZS5kb25lID8gdGFyZ2V0IDogY3VycmVudDtcbiAgICAgICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuXG5leHBvcnQgeyBzcHJpbmcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs":
|
||
/*!*****************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs ***!
|
||
\*****************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ calcGeneratorDuration: function() { return /* binding */ calcGeneratorDuration; },\n/* harmony export */ maxGeneratorDuration: function() { return /* binding */ maxGeneratorDuration; }\n/* harmony export */ });\n/**\n * Implement a practical max duration for keyframe generation\n * to prevent infinite loops\n */\nconst maxGeneratorDuration = 20000;\nfunction calcGeneratorDuration(generator) {\n let duration = 0;\n const timeStep = 50;\n let state = generator.next(duration);\n while (!state.done && duration < maxGeneratorDuration) {\n duration += timeStep;\n state = generator.next(duration);\n }\n return duration >= maxGeneratorDuration ? Infinity : duration;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvdXRpbHMvY2FsYy1kdXJhdGlvbi5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXVEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvdXRpbHMvY2FsYy1kdXJhdGlvbi5tanM/ZWRjNSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEltcGxlbWVudCBhIHByYWN0aWNhbCBtYXggZHVyYXRpb24gZm9yIGtleWZyYW1lIGdlbmVyYXRpb25cbiAqIHRvIHByZXZlbnQgaW5maW5pdGUgbG9vcHNcbiAqL1xuY29uc3QgbWF4R2VuZXJhdG9yRHVyYXRpb24gPSAyMDAwMDtcbmZ1bmN0aW9uIGNhbGNHZW5lcmF0b3JEdXJhdGlvbihnZW5lcmF0b3IpIHtcbiAgICBsZXQgZHVyYXRpb24gPSAwO1xuICAgIGNvbnN0IHRpbWVTdGVwID0gNTA7XG4gICAgbGV0IHN0YXRlID0gZ2VuZXJhdG9yLm5leHQoZHVyYXRpb24pO1xuICAgIHdoaWxlICghc3RhdGUuZG9uZSAmJiBkdXJhdGlvbiA8IG1heEdlbmVyYXRvckR1cmF0aW9uKSB7XG4gICAgICAgIGR1cmF0aW9uICs9IHRpbWVTdGVwO1xuICAgICAgICBzdGF0ZSA9IGdlbmVyYXRvci5uZXh0KGR1cmF0aW9uKTtcbiAgICB9XG4gICAgcmV0dXJuIGR1cmF0aW9uID49IG1heEdlbmVyYXRvckR1cmF0aW9uID8gSW5maW5pdHkgOiBkdXJhdGlvbjtcbn1cblxuZXhwb3J0IHsgY2FsY0dlbmVyYXRvckR1cmF0aW9uLCBtYXhHZW5lcmF0b3JEdXJhdGlvbiB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ calcGeneratorVelocity: function() { return /* binding */ calcGeneratorVelocity; }\n/* harmony export */ });\n/* harmony import */ var _utils_velocity_per_second_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/velocity-per-second.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs\");\n\n\nconst velocitySampleDuration = 5; // ms\nfunction calcGeneratorVelocity(resolveValue, t, current) {\n const prevT = Math.max(t - velocitySampleDuration, 0);\n return (0,_utils_velocity_per_second_mjs__WEBPACK_IMPORTED_MODULE_0__.velocityPerSecond)(current - resolveValue(prevT), t - prevT);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2dlbmVyYXRvcnMvdXRpbHMvdmVsb2NpdHkubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTJFOztBQUUzRSxrQ0FBa0M7QUFDbEM7QUFDQTtBQUNBLFdBQVcsaUZBQWlCO0FBQzVCOztBQUVpQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9nZW5lcmF0b3JzL3V0aWxzL3ZlbG9jaXR5Lm1qcz9iMThlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHZlbG9jaXR5UGVyU2Vjb25kIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdmVsb2NpdHktcGVyLXNlY29uZC5tanMnO1xuXG5jb25zdCB2ZWxvY2l0eVNhbXBsZUR1cmF0aW9uID0gNTsgLy8gbXNcbmZ1bmN0aW9uIGNhbGNHZW5lcmF0b3JWZWxvY2l0eShyZXNvbHZlVmFsdWUsIHQsIGN1cnJlbnQpIHtcbiAgICBjb25zdCBwcmV2VCA9IE1hdGgubWF4KHQgLSB2ZWxvY2l0eVNhbXBsZUR1cmF0aW9uLCAwKTtcbiAgICByZXR1cm4gdmVsb2NpdHlQZXJTZWNvbmQoY3VycmVudCAtIHJlc29sdmVWYWx1ZShwcmV2VCksIHQgLSBwcmV2VCk7XG59XG5cbmV4cG9ydCB7IGNhbGNHZW5lcmF0b3JWZWxvY2l0eSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateMotionValue: function() { return /* binding */ animateMotionValue; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n/* harmony import */ var _utils_use_instant_transition_state_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/use-instant-transition-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs\");\n/* harmony import */ var _animators_waapi_create_accelerated_animation_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../animators/waapi/create-accelerated-animation.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs\");\n/* harmony import */ var _animators_instant_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../animators/instant.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/instant.mjs\");\n/* harmony import */ var _utils_default_transitions_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/default-transitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs\");\n/* harmony import */ var _utils_is_animatable_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/is-animatable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs\");\n/* harmony import */ var _utils_keyframes_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/keyframes.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs\");\n/* harmony import */ var _utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/transitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs\");\n/* harmony import */ var _animators_js_index_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../animators/js/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/animators/js/index.mjs\");\n/* harmony import */ var _utils_GlobalConfig_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../utils/GlobalConfig.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\nconst animateMotionValue = (valueName, value, target, transition = {}) => {\n return (onComplete) => {\n const valueTransition = (0,_utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_0__.getValueTransition)(transition, valueName) || {};\n /**\n * Most transition values are currently completely overwritten by value-specific\n * transitions. In the future it'd be nicer to blend these transitions. But for now\n * delay actually does inherit from the root transition if not value-specific.\n */\n const delay = valueTransition.delay || transition.delay || 0;\n /**\n * Elapsed isn't a public transition option but can be passed through from\n * optimized appear effects in milliseconds.\n */\n let { elapsed = 0 } = transition;\n elapsed = elapsed - (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.secondsToMilliseconds)(delay);\n const keyframes = (0,_utils_keyframes_mjs__WEBPACK_IMPORTED_MODULE_2__.getKeyframes)(value, valueName, target, valueTransition);\n /**\n * Check if we're able to animate between the start and end keyframes,\n * and throw a warning if we're attempting to animate between one that's\n * animatable and another that isn't.\n */\n const originKeyframe = keyframes[0];\n const targetKeyframe = keyframes[keyframes.length - 1];\n const isOriginAnimatable = (0,_utils_is_animatable_mjs__WEBPACK_IMPORTED_MODULE_3__.isAnimatable)(valueName, originKeyframe);\n const isTargetAnimatable = (0,_utils_is_animatable_mjs__WEBPACK_IMPORTED_MODULE_3__.isAnimatable)(valueName, targetKeyframe);\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_4__.warning)(isOriginAnimatable === isTargetAnimatable, `You are trying to animate ${valueName} from \"${originKeyframe}\" to \"${targetKeyframe}\". ${originKeyframe} is not an animatable value - to enable this animation set ${originKeyframe} to a value animatable to ${targetKeyframe} via the \\`style\\` property.`);\n let options = {\n keyframes,\n velocity: value.getVelocity(),\n ease: \"easeOut\",\n ...valueTransition,\n delay: -elapsed,\n onUpdate: (v) => {\n value.set(v);\n valueTransition.onUpdate && valueTransition.onUpdate(v);\n },\n onComplete: () => {\n onComplete();\n valueTransition.onComplete && valueTransition.onComplete();\n },\n };\n /**\n * If there's no transition defined for this value, we can generate\n * unqiue transition settings for this value.\n */\n if (!(0,_utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_0__.isTransitionDefined)(valueTransition)) {\n options = {\n ...options,\n ...(0,_utils_default_transitions_mjs__WEBPACK_IMPORTED_MODULE_5__.getDefaultTransition)(valueName, options),\n };\n }\n /**\n * Both WAAPI and our internal animation functions use durations\n * as defined by milliseconds, while our external API defines them\n * as seconds.\n */\n if (options.duration) {\n options.duration = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.secondsToMilliseconds)(options.duration);\n }\n if (options.repeatDelay) {\n options.repeatDelay = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.secondsToMilliseconds)(options.repeatDelay);\n }\n if (!isOriginAnimatable ||\n !isTargetAnimatable ||\n _utils_use_instant_transition_state_mjs__WEBPACK_IMPORTED_MODULE_6__.instantAnimationState.current ||\n valueTransition.type === false ||\n _utils_GlobalConfig_mjs__WEBPACK_IMPORTED_MODULE_7__.MotionGlobalConfig.skipAnimations) {\n /**\n * If we can't animate this value, or the global instant animation flag is set,\n * or this is simply defined as an instant transition, return an instant transition.\n */\n return (0,_animators_instant_mjs__WEBPACK_IMPORTED_MODULE_8__.createInstantAnimation)(_utils_use_instant_transition_state_mjs__WEBPACK_IMPORTED_MODULE_6__.instantAnimationState.current\n ? { ...options, delay: 0 }\n : options);\n }\n /**\n * Animate via WAAPI if possible.\n */\n if (\n /**\n * If this is a handoff animation, the optimised animation will be running via\n * WAAPI. Therefore, this animation must be JS to ensure it runs \"under\" the\n * optimised animation.\n */\n !transition.isHandoff &&\n value.owner &&\n value.owner.current instanceof HTMLElement &&\n /**\n * If we're outputting values to onUpdate then we can't use WAAPI as there's\n * no way to read the value from WAAPI every frame.\n */\n !value.owner.getProps().onUpdate) {\n const acceleratedAnimation = (0,_animators_waapi_create_accelerated_animation_mjs__WEBPACK_IMPORTED_MODULE_9__.createAcceleratedAnimation)(value, valueName, options);\n if (acceleratedAnimation)\n return acceleratedAnimation;\n }\n /**\n * If we didn't create an accelerated animation, create a JS animation\n */\n return (0,_animators_js_index_mjs__WEBPACK_IMPORTED_MODULE_10__.animateValue)(options);\n };\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvbW90aW9uLXZhbHVlLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBaUQ7QUFDdUI7QUFDYTtBQUNZO0FBQy9CO0FBQ007QUFDZDtBQUNKO0FBQzZCO0FBQzFCO0FBQ1M7O0FBRWxFLHFFQUFxRTtBQUNyRTtBQUNBLGdDQUFnQywwRUFBa0I7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLGNBQWM7QUFDNUIsNEJBQTRCLGlGQUFxQjtBQUNqRCwwQkFBMEIsa0VBQVk7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsc0VBQVk7QUFDL0MsbUNBQW1DLHNFQUFZO0FBQy9DLFFBQVEsMERBQU8seUVBQXlFLFdBQVcsUUFBUSxlQUFlLFFBQVEsZUFBZSxLQUFLLGdCQUFnQiw0REFBNEQsZ0JBQWdCLDJCQUEyQixnQkFBZ0I7QUFDN1I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSwyRUFBbUI7QUFDaEM7QUFDQTtBQUNBLG1CQUFtQixvRkFBb0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixpRkFBcUI7QUFDcEQ7QUFDQTtBQUNBLGtDQUFrQyxpRkFBcUI7QUFDdkQ7QUFDQTtBQUNBO0FBQ0EsWUFBWSwwRkFBcUI7QUFDakM7QUFDQSxZQUFZLHVFQUFrQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQiw4RUFBc0IsQ0FBQywwRkFBcUI7QUFDL0Qsb0JBQW9CO0FBQ3BCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLDZHQUEwQjtBQUNuRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLHNFQUFZO0FBQzNCO0FBQ0E7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvbW90aW9uLXZhbHVlLm1qcz9mYjM2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHdhcm5pbmcgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcnMubWpzJztcbmltcG9ydCB7IHNlY29uZHNUb01pbGxpc2Vjb25kcyB9IGZyb20gJy4uLy4uL3V0aWxzL3RpbWUtY29udmVyc2lvbi5tanMnO1xuaW1wb3J0IHsgaW5zdGFudEFuaW1hdGlvblN0YXRlIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXNlLWluc3RhbnQtdHJhbnNpdGlvbi1zdGF0ZS5tanMnO1xuaW1wb3J0IHsgY3JlYXRlQWNjZWxlcmF0ZWRBbmltYXRpb24gfSBmcm9tICcuLi9hbmltYXRvcnMvd2FhcGkvY3JlYXRlLWFjY2VsZXJhdGVkLWFuaW1hdGlvbi5tanMnO1xuaW1wb3J0IHsgY3JlYXRlSW5zdGFudEFuaW1hdGlvbiB9IGZyb20gJy4uL2FuaW1hdG9ycy9pbnN0YW50Lm1qcyc7XG5pbXBvcnQgeyBnZXREZWZhdWx0VHJhbnNpdGlvbiB9IGZyb20gJy4uL3V0aWxzL2RlZmF1bHQtdHJhbnNpdGlvbnMubWpzJztcbmltcG9ydCB7IGlzQW5pbWF0YWJsZSB9IGZyb20gJy4uL3V0aWxzL2lzLWFuaW1hdGFibGUubWpzJztcbmltcG9ydCB7IGdldEtleWZyYW1lcyB9IGZyb20gJy4uL3V0aWxzL2tleWZyYW1lcy5tanMnO1xuaW1wb3J0IHsgZ2V0VmFsdWVUcmFuc2l0aW9uLCBpc1RyYW5zaXRpb25EZWZpbmVkIH0gZnJvbSAnLi4vdXRpbHMvdHJhbnNpdGlvbnMubWpzJztcbmltcG9ydCB7IGFuaW1hdGVWYWx1ZSB9IGZyb20gJy4uL2FuaW1hdG9ycy9qcy9pbmRleC5tanMnO1xuaW1wb3J0IHsgTW90aW9uR2xvYmFsQ29uZmlnIH0gZnJvbSAnLi4vLi4vdXRpbHMvR2xvYmFsQ29uZmlnLm1qcyc7XG5cbmNvbnN0IGFuaW1hdGVNb3Rpb25WYWx1ZSA9ICh2YWx1ZU5hbWUsIHZhbHVlLCB0YXJnZXQsIHRyYW5zaXRpb24gPSB7fSkgPT4ge1xuICAgIHJldHVybiAob25Db21wbGV0ZSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZVRyYW5zaXRpb24gPSBnZXRWYWx1ZVRyYW5zaXRpb24odHJhbnNpdGlvbiwgdmFsdWVOYW1lKSB8fCB7fTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIE1vc3QgdHJhbnNpdGlvbiB2YWx1ZXMgYXJlIGN1cnJlbnRseSBjb21wbGV0ZWx5IG92ZXJ3cml0dGVuIGJ5IHZhbHVlLXNwZWNpZmljXG4gICAgICAgICAqIHRyYW5zaXRpb25zLiBJbiB0aGUgZnV0dXJlIGl0J2QgYmUgbmljZXIgdG8gYmxlbmQgdGhlc2UgdHJhbnNpdGlvbnMuIEJ1dCBmb3Igbm93XG4gICAgICAgICAqIGRlbGF5IGFjdHVhbGx5IGRvZXMgaW5oZXJpdCBmcm9tIHRoZSByb290IHRyYW5zaXRpb24gaWYgbm90IHZhbHVlLXNwZWNpZmljLlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgZGVsYXkgPSB2YWx1ZVRyYW5zaXRpb24uZGVsYXkgfHwgdHJhbnNpdGlvbi5kZWxheSB8fCAwO1xuICAgICAgICAvKipcbiAgICAgICAgICogRWxhcHNlZCBpc24ndCBhIHB1YmxpYyB0cmFuc2l0aW9uIG9wdGlvbiBidXQgY2FuIGJlIHBhc3NlZCB0aHJvdWdoIGZyb21cbiAgICAgICAgICogb3B0aW1pemVkIGFwcGVhciBlZmZlY3RzIGluIG1pbGxpc2Vjb25kcy5cbiAgICAgICAgICovXG4gICAgICAgIGxldCB7IGVsYXBzZWQgPSAwIH0gPSB0cmFuc2l0aW9uO1xuICAgICAgICBlbGFwc2VkID0gZWxhcHNlZCAtIHNlY29uZHNUb01pbGxpc2Vjb25kcyhkZWxheSk7XG4gICAgICAgIGNvbnN0IGtleWZyYW1lcyA9IGdldEtleWZyYW1lcyh2YWx1ZSwgdmFsdWVOYW1lLCB0YXJnZXQsIHZhbHVlVHJhbnNpdGlvbik7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDaGVjayBpZiB3ZSdyZSBhYmxlIHRvIGFuaW1hdGUgYmV0d2VlbiB0aGUgc3RhcnQgYW5kIGVuZCBrZXlmcmFtZXMsXG4gICAgICAgICAqIGFuZCB0aHJvdyBhIHdhcm5pbmcgaWYgd2UncmUgYXR0ZW1wdGluZyB0byBhbmltYXRlIGJldHdlZW4gb25lIHRoYXQnc1xuICAgICAgICAgKiBhbmltYXRhYmxlIGFuZCBhbm90aGVyIHRoYXQgaXNuJ3QuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBvcmlnaW5LZXlmcmFtZSA9IGtleWZyYW1lc1swXTtcbiAgICAgICAgY29uc3QgdGFyZ2V0S2V5ZnJhbWUgPSBrZXlmcmFtZXNba2V5ZnJhbWVzLmxlbmd0aCAtIDFdO1xuICAgICAgICBjb25zdCBpc09yaWdpbkFuaW1hdGFibGUgPSBpc0FuaW1hdGFibGUodmFsdWVOYW1lLCBvcmlnaW5LZXlmcmFtZSk7XG4gICAgICAgIGNvbnN0IGlzVGFyZ2V0QW5pbWF0YWJsZSA9IGlzQW5pbWF0YWJsZSh2YWx1ZU5hbWUsIHRhcmdldEtleWZyYW1lKTtcbiAgICAgICAgd2FybmluZyhpc09yaWdpbkFuaW1hdGFibGUgPT09IGlzVGFyZ2V0QW5pbWF0YWJsZSwgYFlvdSBhcmUgdHJ5aW5nIHRvIGFuaW1hdGUgJHt2YWx1ZU5hbWV9IGZyb20gXCIke29yaWdpbktleWZyYW1lfVwiIHRvIFwiJHt0YXJnZXRLZXlmcmFtZX1cIi4gJHtvcmlnaW5LZXlmcmFtZX0gaXMgbm90IGFuIGFuaW1hdGFibGUgdmFsdWUgLSB0byBlbmFibGUgdGhpcyBhbmltYXRpb24gc2V0ICR7b3JpZ2luS2V5ZnJhbWV9IHRvIGEgdmFsdWUgYW5pbWF0YWJsZSB0byAke3RhcmdldEtleWZyYW1lfSB2aWEgdGhlIFxcYHN0eWxlXFxgIHByb3BlcnR5LmApO1xuICAgICAgICBsZXQgb3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGtleWZyYW1lcyxcbiAgICAgICAgICAgIHZlbG9jaXR5OiB2YWx1ZS5nZXRWZWxvY2l0eSgpLFxuICAgICAgICAgICAgZWFzZTogXCJlYXNlT3V0XCIsXG4gICAgICAgICAgICAuLi52YWx1ZVRyYW5zaXRpb24sXG4gICAgICAgICAgICBkZWxheTogLWVsYXBzZWQsXG4gICAgICAgICAgICBvblVwZGF0ZTogKHYpID0+IHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5zZXQodik7XG4gICAgICAgICAgICAgICAgdmFsdWVUcmFuc2l0aW9uLm9uVXBkYXRlICYmIHZhbHVlVHJhbnNpdGlvbi5vblVwZGF0ZSh2KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgb25Db21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgIHZhbHVlVHJhbnNpdGlvbi5vbkNvbXBsZXRlICYmIHZhbHVlVHJhbnNpdGlvbi5vbkNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgICAvKipcbiAgICAgICAgICogSWYgdGhlcmUncyBubyB0cmFuc2l0aW9uIGRlZmluZWQgZm9yIHRoaXMgdmFsdWUsIHdlIGNhbiBnZW5lcmF0ZVxuICAgICAgICAgKiB1bnFpdWUgdHJhbnNpdGlvbiBzZXR0aW5ncyBmb3IgdGhpcyB2YWx1ZS5cbiAgICAgICAgICovXG4gICAgICAgIGlmICghaXNUcmFuc2l0aW9uRGVmaW5lZCh2YWx1ZVRyYW5zaXRpb24pKSB7XG4gICAgICAgICAgICBvcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICAgICAgLi4uZ2V0RGVmYXVsdFRyYW5zaXRpb24odmFsdWVOYW1lLCBvcHRpb25zKSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEJvdGggV0FBUEkgYW5kIG91ciBpbnRlcm5hbCBhbmltYXRpb24gZnVuY3Rpb25zIHVzZSBkdXJhdGlvbnNcbiAgICAgICAgICogYXMgZGVmaW5lZCBieSBtaWxsaXNlY29uZHMsIHdoaWxlIG91ciBleHRlcm5hbCBBUEkgZGVmaW5lcyB0aGVtXG4gICAgICAgICAqIGFzIHNlY29uZHMuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAob3B0aW9ucy5kdXJhdGlvbikge1xuICAgICAgICAgICAgb3B0aW9ucy5kdXJhdGlvbiA9IHNlY29uZHNUb01pbGxpc2Vjb25kcyhvcHRpb25zLmR1cmF0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy5yZXBlYXREZWxheSkge1xuICAgICAgICAgICAgb3B0aW9ucy5yZXBlYXREZWxheSA9IHNlY29uZHNUb01pbGxpc2Vjb25kcyhvcHRpb25zLnJlcGVhdERlbGF5KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzT3JpZ2luQW5pbWF0YWJsZSB8fFxuICAgICAgICAgICAgIWlzVGFyZ2V0QW5pbWF0YWJsZSB8fFxuICAgICAgICAgICAgaW5zdGFudEFuaW1hdGlvblN0YXRlLmN1cnJlbnQgfHxcbiAgICAgICAgICAgIHZhbHVlVHJhbnNpdGlvbi50eXBlID09PSBmYWxzZSB8fFxuICAgICAgICAgICAgTW90aW9uR2xvYmFsQ29uZmlnLnNraXBBbmltYXRpb25zKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlIGNhbid0IGFuaW1hdGUgdGhpcyB2YWx1ZSwgb3IgdGhlIGdsb2JhbCBpbnN0YW50IGFuaW1hdGlvbiBmbGFnIGlzIHNldCxcbiAgICAgICAgICAgICAqIG9yIHRoaXMgaXMgc2ltcGx5IGRlZmluZWQgYXMgYW4gaW5zdGFudCB0cmFuc2l0aW9uLCByZXR1cm4gYW4gaW5zdGFudCB0cmFuc2l0aW9uLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICByZXR1cm4gY3JlYXRlSW5zdGFudEFuaW1hdGlvbihpbnN0YW50QW5pbWF0aW9uU3RhdGUuY3VycmVudFxuICAgICAgICAgICAgICAgID8geyAuLi5vcHRpb25zLCBkZWxheTogMCB9XG4gICAgICAgICAgICAgICAgOiBvcHRpb25zKTtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogQW5pbWF0ZSB2aWEgV0FBUEkgaWYgcG9zc2libGUuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB0aGlzIGlzIGEgaGFuZG9mZiBhbmltYXRpb24sIHRoZSBvcHRpbWlzZWQgYW5pbWF0aW9uIHdpbGwgYmUgcnVubmluZyB2aWFcbiAgICAgICAgICogV0FBUEkuIFRoZXJlZm9yZSwgdGhpcyBhbmltYXRpb24gbXVzdCBiZSBKUyB0byBlbnN1cmUgaXQgcnVucyBcInVuZGVyXCIgdGhlXG4gICAgICAgICAqIG9wdGltaXNlZCBhbmltYXRpb24uXG4gICAgICAgICAqL1xuICAgICAgICAhdHJhbnNpdGlvbi5pc0hhbmRvZmYgJiZcbiAgICAgICAgICAgIHZhbHVlLm93bmVyICYmXG4gICAgICAgICAgICB2YWx1ZS5vd25lci5jdXJyZW50IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgd2UncmUgb3V0cHV0dGluZyB2YWx1ZXMgdG8gb25VcGRhdGUgdGhlbiB3ZSBjYW4ndCB1c2UgV0FBUEkgYXMgdGhlcmUnc1xuICAgICAgICAgICAgICogbm8gd2F5IHRvIHJlYWQgdGhlIHZhbHVlIGZyb20gV0FBUEkgZXZlcnkgZnJhbWUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICF2YWx1ZS5vd25lci5nZXRQcm9wcygpLm9uVXBkYXRlKSB7XG4gICAgICAgICAgICBjb25zdCBhY2NlbGVyYXRlZEFuaW1hdGlvbiA9IGNyZWF0ZUFjY2VsZXJhdGVkQW5pbWF0aW9uKHZhbHVlLCB2YWx1ZU5hbWUsIG9wdGlvbnMpO1xuICAgICAgICAgICAgaWYgKGFjY2VsZXJhdGVkQW5pbWF0aW9uKVxuICAgICAgICAgICAgICAgIHJldHVybiBhY2NlbGVyYXRlZEFuaW1hdGlvbjtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogSWYgd2UgZGlkbid0IGNyZWF0ZSBhbiBhY2NlbGVyYXRlZCBhbmltYXRpb24sIGNyZWF0ZSBhIEpTIGFuaW1hdGlvblxuICAgICAgICAgKi9cbiAgICAgICAgcmV0dXJuIGFuaW1hdGVWYWx1ZShvcHRpb25zKTtcbiAgICB9O1xufTtcblxuZXhwb3J0IHsgYW5pbWF0ZU1vdGlvblZhbHVlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateSingleValue: function() { return /* binding */ animateSingleValue; }\n/* harmony export */ });\n/* harmony import */ var _motion_value_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs\");\n/* harmony import */ var _value_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../value/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\n\nfunction animateSingleValue(value, keyframes, options) {\n const motionValue$1 = (0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(value) ? value : (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_1__.motionValue)(value);\n motionValue$1.start((0,_motion_value_mjs__WEBPACK_IMPORTED_MODULE_2__.animateMotionValue)(\"\", motionValue$1, keyframes, options));\n return motionValue$1.animation;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvc2luZ2xlLXZhbHVlLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQXdEO0FBQ0o7QUFDa0I7O0FBRXRFO0FBQ0EsMEJBQTBCLCtFQUFhLGtCQUFrQiw2REFBVztBQUNwRSx3QkFBd0IscUVBQWtCO0FBQzFDO0FBQ0E7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvc2luZ2xlLXZhbHVlLm1qcz80MDRjIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGVNb3Rpb25WYWx1ZSB9IGZyb20gJy4vbW90aW9uLXZhbHVlLm1qcyc7XG5pbXBvcnQgeyBtb3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uL3ZhbHVlL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBpc01vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXRpbHMvaXMtbW90aW9uLXZhbHVlLm1qcyc7XG5cbmZ1bmN0aW9uIGFuaW1hdGVTaW5nbGVWYWx1ZSh2YWx1ZSwga2V5ZnJhbWVzLCBvcHRpb25zKSB7XG4gICAgY29uc3QgbW90aW9uVmFsdWUkMSA9IGlzTW90aW9uVmFsdWUodmFsdWUpID8gdmFsdWUgOiBtb3Rpb25WYWx1ZSh2YWx1ZSk7XG4gICAgbW90aW9uVmFsdWUkMS5zdGFydChhbmltYXRlTW90aW9uVmFsdWUoXCJcIiwgbW90aW9uVmFsdWUkMSwga2V5ZnJhbWVzLCBvcHRpb25zKSk7XG4gICAgcmV0dXJuIG1vdGlvblZhbHVlJDEuYW5pbWF0aW9uO1xufVxuXG5leHBvcnQgeyBhbmltYXRlU2luZ2xlVmFsdWUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs":
|
||
/*!*******************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs ***!
|
||
\*******************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateTarget: function() { return /* binding */ animateTarget; }\n/* harmony export */ });\n/* harmony import */ var _render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../render/html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _optimized_appear_data_id_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../optimized-appear/data-id.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs\");\n/* harmony import */ var _motion_value_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs\");\n/* harmony import */ var _value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../value/use-will-change/is.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs\");\n/* harmony import */ var _render_utils_setters_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../render/utils/setters.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/setters.mjs\");\n/* harmony import */ var _utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/transitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n/**\n * Decide whether we should block this animation. Previously, we achieved this\n * just by checking whether the key was listed in protectedKeys, but this\n * posed problems if an animation was triggered by afterChildren and protectedKeys\n * had been set to true in the meantime.\n */\nfunction shouldBlockAnimation({ protectedKeys, needsAnimating }, key) {\n const shouldBlock = protectedKeys.hasOwnProperty(key) && needsAnimating[key] !== true;\n needsAnimating[key] = false;\n return shouldBlock;\n}\nfunction hasKeyframesChanged(value, target) {\n const current = value.get();\n if (Array.isArray(target)) {\n for (let i = 0; i < target.length; i++) {\n if (target[i] !== current)\n return true;\n }\n }\n else {\n return current !== target;\n }\n}\nfunction animateTarget(visualElement, definition, { delay = 0, transitionOverride, type } = {}) {\n let { transition = visualElement.getDefaultTransition(), transitionEnd, ...target } = visualElement.makeTargetAnimatable(definition);\n const willChange = visualElement.getValue(\"willChange\");\n if (transitionOverride)\n transition = transitionOverride;\n const animations = [];\n const animationTypeState = type &&\n visualElement.animationState &&\n visualElement.animationState.getState()[type];\n for (const key in target) {\n const value = visualElement.getValue(key);\n const valueTarget = target[key];\n if (!value ||\n valueTarget === undefined ||\n (animationTypeState &&\n shouldBlockAnimation(animationTypeState, key))) {\n continue;\n }\n const valueTransition = {\n delay,\n elapsed: 0,\n ...(0,_utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_0__.getValueTransition)(transition || {}, key),\n };\n /**\n * If this is the first time a value is being animated, check\n * to see if we're handling off from an existing animation.\n */\n if (window.HandoffAppearAnimations) {\n const appearId = visualElement.getProps()[_optimized_appear_data_id_mjs__WEBPACK_IMPORTED_MODULE_1__.optimizedAppearDataAttribute];\n if (appearId) {\n const elapsed = window.HandoffAppearAnimations(appearId, key, value, _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.frame);\n if (elapsed !== null) {\n valueTransition.elapsed = elapsed;\n valueTransition.isHandoff = true;\n }\n }\n }\n let canSkip = !valueTransition.isHandoff &&\n !hasKeyframesChanged(value, valueTarget);\n if (valueTransition.type === \"spring\" &&\n (value.getVelocity() || valueTransition.velocity)) {\n canSkip = false;\n }\n /**\n * Temporarily disable skipping animations if there's an animation in\n * progress. Better would be to track the current target of a value\n * and compare that against valueTarget.\n */\n if (value.animation) {\n canSkip = false;\n }\n if (canSkip)\n continue;\n value.start((0,_motion_value_mjs__WEBPACK_IMPORTED_MODULE_3__.animateMotionValue)(key, value, valueTarget, visualElement.shouldReduceMotion && _render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_4__.transformProps.has(key)\n ? { type: false }\n : valueTransition));\n const animation = value.animation;\n if ((0,_value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_5__.isWillChangeMotionValue)(willChange)) {\n willChange.add(key);\n animation.then(() => willChange.remove(key));\n }\n animations.push(animation);\n }\n if (transitionEnd) {\n Promise.all(animations).then(() => {\n transitionEnd && (0,_render_utils_setters_mjs__WEBPACK_IMPORTED_MODULE_6__.setTarget)(visualElement, transitionEnd);\n });\n }\n return animations;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvdmlzdWFsLWVsZW1lbnQtdGFyZ2V0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUF1RTtBQUNRO0FBQ3ZCO0FBQ3FCO0FBQ2xCO0FBQ0c7QUFDWjs7QUFFbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLCtCQUErQjtBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixtQkFBbUI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9EQUFvRCxzQ0FBc0MsSUFBSTtBQUM5RixVQUFVLDhFQUE4RTtBQUN4RjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsMEVBQWtCLGlCQUFpQjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QsdUZBQTRCO0FBQ2xGO0FBQ0EscUZBQXFGLHVEQUFLO0FBQzFGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHFFQUFrQiw4REFBOEQsNEVBQWM7QUFDbEgsZ0JBQWdCO0FBQ2hCO0FBQ0E7QUFDQSxZQUFZLHNGQUF1QjtBQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixvRUFBUztBQUN0QyxTQUFTO0FBQ1Q7QUFDQTtBQUNBOztBQUV5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9pbnRlcmZhY2VzL3Zpc3VhbC1lbGVtZW50LXRhcmdldC5tanM/ZGZjNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0cmFuc2Zvcm1Qcm9wcyB9IGZyb20gJy4uLy4uL3JlbmRlci9odG1sL3V0aWxzL3RyYW5zZm9ybS5tanMnO1xuaW1wb3J0IHsgb3B0aW1pemVkQXBwZWFyRGF0YUF0dHJpYnV0ZSB9IGZyb20gJy4uL29wdGltaXplZC1hcHBlYXIvZGF0YS1pZC5tanMnO1xuaW1wb3J0IHsgYW5pbWF0ZU1vdGlvblZhbHVlIH0gZnJvbSAnLi9tb3Rpb24tdmFsdWUubWpzJztcbmltcG9ydCB7IGlzV2lsbENoYW5nZU1vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXNlLXdpbGwtY2hhbmdlL2lzLm1qcyc7XG5pbXBvcnQgeyBzZXRUYXJnZXQgfSBmcm9tICcuLi8uLi9yZW5kZXIvdXRpbHMvc2V0dGVycy5tanMnO1xuaW1wb3J0IHsgZ2V0VmFsdWVUcmFuc2l0aW9uIH0gZnJvbSAnLi4vdXRpbHMvdHJhbnNpdGlvbnMubWpzJztcbmltcG9ydCB7IGZyYW1lIH0gZnJvbSAnLi4vLi4vZnJhbWVsb29wL2ZyYW1lLm1qcyc7XG5cbi8qKlxuICogRGVjaWRlIHdoZXRoZXIgd2Ugc2hvdWxkIGJsb2NrIHRoaXMgYW5pbWF0aW9uLiBQcmV2aW91c2x5LCB3ZSBhY2hpZXZlZCB0aGlzXG4gKiBqdXN0IGJ5IGNoZWNraW5nIHdoZXRoZXIgdGhlIGtleSB3YXMgbGlzdGVkIGluIHByb3RlY3RlZEtleXMsIGJ1dCB0aGlzXG4gKiBwb3NlZCBwcm9ibGVtcyBpZiBhbiBhbmltYXRpb24gd2FzIHRyaWdnZXJlZCBieSBhZnRlckNoaWxkcmVuIGFuZCBwcm90ZWN0ZWRLZXlzXG4gKiBoYWQgYmVlbiBzZXQgdG8gdHJ1ZSBpbiB0aGUgbWVhbnRpbWUuXG4gKi9cbmZ1bmN0aW9uIHNob3VsZEJsb2NrQW5pbWF0aW9uKHsgcHJvdGVjdGVkS2V5cywgbmVlZHNBbmltYXRpbmcgfSwga2V5KSB7XG4gICAgY29uc3Qgc2hvdWxkQmxvY2sgPSBwcm90ZWN0ZWRLZXlzLmhhc093blByb3BlcnR5KGtleSkgJiYgbmVlZHNBbmltYXRpbmdba2V5XSAhPT0gdHJ1ZTtcbiAgICBuZWVkc0FuaW1hdGluZ1trZXldID0gZmFsc2U7XG4gICAgcmV0dXJuIHNob3VsZEJsb2NrO1xufVxuZnVuY3Rpb24gaGFzS2V5ZnJhbWVzQ2hhbmdlZCh2YWx1ZSwgdGFyZ2V0KSB7XG4gICAgY29uc3QgY3VycmVudCA9IHZhbHVlLmdldCgpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHRhcmdldCkpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0YXJnZXQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmICh0YXJnZXRbaV0gIT09IGN1cnJlbnQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiBjdXJyZW50ICE9PSB0YXJnZXQ7XG4gICAgfVxufVxuZnVuY3Rpb24gYW5pbWF0ZVRhcmdldCh2aXN1YWxFbGVtZW50LCBkZWZpbml0aW9uLCB7IGRlbGF5ID0gMCwgdHJhbnNpdGlvbk92ZXJyaWRlLCB0eXBlIH0gPSB7fSkge1xuICAgIGxldCB7IHRyYW5zaXRpb24gPSB2aXN1YWxFbGVtZW50LmdldERlZmF1bHRUcmFuc2l0aW9uKCksIHRyYW5zaXRpb25FbmQsIC4uLnRhcmdldCB9ID0gdmlzdWFsRWxlbWVudC5tYWtlVGFyZ2V0QW5pbWF0YWJsZShkZWZpbml0aW9uKTtcbiAgICBjb25zdCB3aWxsQ2hhbmdlID0gdmlzdWFsRWxlbWVudC5nZXRWYWx1ZShcIndpbGxDaGFuZ2VcIik7XG4gICAgaWYgKHRyYW5zaXRpb25PdmVycmlkZSlcbiAgICAgICAgdHJhbnNpdGlvbiA9IHRyYW5zaXRpb25PdmVycmlkZTtcbiAgICBjb25zdCBhbmltYXRpb25zID0gW107XG4gICAgY29uc3QgYW5pbWF0aW9uVHlwZVN0YXRlID0gdHlwZSAmJlxuICAgICAgICB2aXN1YWxFbGVtZW50LmFuaW1hdGlvblN0YXRlICYmXG4gICAgICAgIHZpc3VhbEVsZW1lbnQuYW5pbWF0aW9uU3RhdGUuZ2V0U3RhdGUoKVt0eXBlXTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB0YXJnZXQpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2aXN1YWxFbGVtZW50LmdldFZhbHVlKGtleSk7XG4gICAgICAgIGNvbnN0IHZhbHVlVGFyZ2V0ID0gdGFyZ2V0W2tleV07XG4gICAgICAgIGlmICghdmFsdWUgfHxcbiAgICAgICAgICAgIHZhbHVlVGFyZ2V0ID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgIChhbmltYXRpb25UeXBlU3RhdGUgJiZcbiAgICAgICAgICAgICAgICBzaG91bGRCbG9ja0FuaW1hdGlvbihhbmltYXRpb25UeXBlU3RhdGUsIGtleSkpKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB2YWx1ZVRyYW5zaXRpb24gPSB7XG4gICAgICAgICAgICBkZWxheSxcbiAgICAgICAgICAgIGVsYXBzZWQ6IDAsXG4gICAgICAgICAgICAuLi5nZXRWYWx1ZVRyYW5zaXRpb24odHJhbnNpdGlvbiB8fCB7fSwga2V5KSxcbiAgICAgICAgfTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoaXMgaXMgdGhlIGZpcnN0IHRpbWUgYSB2YWx1ZSBpcyBiZWluZyBhbmltYXRlZCwgY2hlY2tcbiAgICAgICAgICogdG8gc2VlIGlmIHdlJ3JlIGhhbmRsaW5nIG9mZiBmcm9tIGFuIGV4aXN0aW5nIGFuaW1hdGlvbi5cbiAgICAgICAgICovXG4gICAgICAgIGlmICh3aW5kb3cuSGFuZG9mZkFwcGVhckFuaW1hdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGFwcGVhcklkID0gdmlzdWFsRWxlbWVudC5nZXRQcm9wcygpW29wdGltaXplZEFwcGVhckRhdGFBdHRyaWJ1dGVdO1xuICAgICAgICAgICAgaWYgKGFwcGVhcklkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZWxhcHNlZCA9IHdpbmRvdy5IYW5kb2ZmQXBwZWFyQW5pbWF0aW9ucyhhcHBlYXJJZCwga2V5LCB2YWx1ZSwgZnJhbWUpO1xuICAgICAgICAgICAgICAgIGlmIChlbGFwc2VkICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlVHJhbnNpdGlvbi5lbGFwc2VkID0gZWxhcHNlZDtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVUcmFuc2l0aW9uLmlzSGFuZG9mZiA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxldCBjYW5Ta2lwID0gIXZhbHVlVHJhbnNpdGlvbi5pc0hhbmRvZmYgJiZcbiAgICAgICAgICAgICFoYXNLZXlmcmFtZXNDaGFuZ2VkKHZhbHVlLCB2YWx1ZVRhcmdldCk7XG4gICAgICAgIGlmICh2YWx1ZVRyYW5zaXRpb24udHlwZSA9PT0gXCJzcHJpbmdcIiAmJlxuICAgICAgICAgICAgKHZhbHVlLmdldFZlbG9jaXR5KCkgfHwgdmFsdWVUcmFuc2l0aW9uLnZlbG9jaXR5KSkge1xuICAgICAgICAgICAgY2FuU2tpcCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUZW1wb3JhcmlseSBkaXNhYmxlIHNraXBwaW5nIGFuaW1hdGlvbnMgaWYgdGhlcmUncyBhbiBhbmltYXRpb24gaW5cbiAgICAgICAgICogcHJvZ3Jlc3MuIEJldHRlciB3b3VsZCBiZSB0byB0cmFjayB0aGUgY3VycmVudCB0YXJnZXQgb2YgYSB2YWx1ZVxuICAgICAgICAgKiBhbmQgY29tcGFyZSB0aGF0IGFnYWluc3QgdmFsdWVUYXJnZXQuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAodmFsdWUuYW5pbWF0aW9uKSB7XG4gICAgICAgICAgICBjYW5Ta2lwID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNhblNraXApXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgdmFsdWUuc3RhcnQoYW5pbWF0ZU1vdGlvblZhbHVlKGtleSwgdmFsdWUsIHZhbHVlVGFyZ2V0LCB2aXN1YWxFbGVtZW50LnNob3VsZFJlZHVjZU1vdGlvbiAmJiB0cmFuc2Zvcm1Qcm9wcy5oYXMoa2V5KVxuICAgICAgICAgICAgPyB7IHR5cGU6IGZhbHNlIH1cbiAgICAgICAgICAgIDogdmFsdWVUcmFuc2l0aW9uKSk7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvbiA9IHZhbHVlLmFuaW1hdGlvbjtcbiAgICAgICAgaWYgKGlzV2lsbENoYW5nZU1vdGlvblZhbHVlKHdpbGxDaGFuZ2UpKSB7XG4gICAgICAgICAgICB3aWxsQ2hhbmdlLmFkZChrZXkpO1xuICAgICAgICAgICAgYW5pbWF0aW9uLnRoZW4oKCkgPT4gd2lsbENoYW5nZS5yZW1vdmUoa2V5KSk7XG4gICAgICAgIH1cbiAgICAgICAgYW5pbWF0aW9ucy5wdXNoKGFuaW1hdGlvbik7XG4gICAgfVxuICAgIGlmICh0cmFuc2l0aW9uRW5kKSB7XG4gICAgICAgIFByb21pc2UuYWxsKGFuaW1hdGlvbnMpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdHJhbnNpdGlvbkVuZCAmJiBzZXRUYXJnZXQodmlzdWFsRWxlbWVudCwgdHJhbnNpdGlvbkVuZCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gYW5pbWF0aW9ucztcbn1cblxuZXhwb3J0IHsgYW5pbWF0ZVRhcmdldCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs":
|
||
/*!********************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs ***!
|
||
\********************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateVariant: function() { return /* binding */ animateVariant; },\n/* harmony export */ sortByTreeOrder: function() { return /* binding */ sortByTreeOrder; }\n/* harmony export */ });\n/* harmony import */ var _render_utils_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../render/utils/resolve-dynamic-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs\");\n/* harmony import */ var _visual_element_target_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./visual-element-target.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs\");\n\n\n\nfunction animateVariant(visualElement, variant, options = {}) {\n const resolved = (0,_render_utils_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_0__.resolveVariant)(visualElement, variant, options.custom);\n let { transition = visualElement.getDefaultTransition() || {} } = resolved || {};\n if (options.transitionOverride) {\n transition = options.transitionOverride;\n }\n /**\n * If we have a variant, create a callback that runs it as an animation.\n * Otherwise, we resolve a Promise immediately for a composable no-op.\n */\n const getAnimation = resolved\n ? () => Promise.all((0,_visual_element_target_mjs__WEBPACK_IMPORTED_MODULE_1__.animateTarget)(visualElement, resolved, options))\n : () => Promise.resolve();\n /**\n * If we have children, create a callback that runs all their animations.\n * Otherwise, we resolve a Promise immediately for a composable no-op.\n */\n const getChildAnimations = visualElement.variantChildren && visualElement.variantChildren.size\n ? (forwardDelay = 0) => {\n const { delayChildren = 0, staggerChildren, staggerDirection, } = transition;\n return animateChildren(visualElement, variant, delayChildren + forwardDelay, staggerChildren, staggerDirection, options);\n }\n : () => Promise.resolve();\n /**\n * If the transition explicitly defines a \"when\" option, we need to resolve either\n * this animation or all children animations before playing the other.\n */\n const { when } = transition;\n if (when) {\n const [first, last] = when === \"beforeChildren\"\n ? [getAnimation, getChildAnimations]\n : [getChildAnimations, getAnimation];\n return first().then(() => last());\n }\n else {\n return Promise.all([getAnimation(), getChildAnimations(options.delay)]);\n }\n}\nfunction animateChildren(visualElement, variant, delayChildren = 0, staggerChildren = 0, staggerDirection = 1, options) {\n const animations = [];\n const maxStaggerDuration = (visualElement.variantChildren.size - 1) * staggerChildren;\n const generateStaggerDuration = staggerDirection === 1\n ? (i = 0) => i * staggerChildren\n : (i = 0) => maxStaggerDuration - i * staggerChildren;\n Array.from(visualElement.variantChildren)\n .sort(sortByTreeOrder)\n .forEach((child, i) => {\n child.notify(\"AnimationStart\", variant);\n animations.push(animateVariant(child, variant, {\n ...options,\n delay: delayChildren + generateStaggerDuration(i),\n }).then(() => child.notify(\"AnimationComplete\", variant)));\n });\n return Promise.all(animations);\n}\nfunction sortByTreeOrder(a, b) {\n return a.sortNodePosition(b);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvdmlzdWFsLWVsZW1lbnQtdmFyaWFudC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFpRjtBQUNyQjs7QUFFNUQsNERBQTREO0FBQzVELHFCQUFxQiwwRkFBYztBQUNuQyxVQUFVLDBEQUEwRDtBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHlFQUFhO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHdEQUF3RDtBQUM1RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksT0FBTztBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUyQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9pbnRlcmZhY2VzL3Zpc3VhbC1lbGVtZW50LXZhcmlhbnQubWpzP2IwNDYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZVZhcmlhbnQgfSBmcm9tICcuLi8uLi9yZW5kZXIvdXRpbHMvcmVzb2x2ZS1keW5hbWljLXZhcmlhbnRzLm1qcyc7XG5pbXBvcnQgeyBhbmltYXRlVGFyZ2V0IH0gZnJvbSAnLi92aXN1YWwtZWxlbWVudC10YXJnZXQubWpzJztcblxuZnVuY3Rpb24gYW5pbWF0ZVZhcmlhbnQodmlzdWFsRWxlbWVudCwgdmFyaWFudCwgb3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlVmFyaWFudCh2aXN1YWxFbGVtZW50LCB2YXJpYW50LCBvcHRpb25zLmN1c3RvbSk7XG4gICAgbGV0IHsgdHJhbnNpdGlvbiA9IHZpc3VhbEVsZW1lbnQuZ2V0RGVmYXVsdFRyYW5zaXRpb24oKSB8fCB7fSB9ID0gcmVzb2x2ZWQgfHwge307XG4gICAgaWYgKG9wdGlvbnMudHJhbnNpdGlvbk92ZXJyaWRlKSB7XG4gICAgICAgIHRyYW5zaXRpb24gPSBvcHRpb25zLnRyYW5zaXRpb25PdmVycmlkZTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSWYgd2UgaGF2ZSBhIHZhcmlhbnQsIGNyZWF0ZSBhIGNhbGxiYWNrIHRoYXQgcnVucyBpdCBhcyBhbiBhbmltYXRpb24uXG4gICAgICogT3RoZXJ3aXNlLCB3ZSByZXNvbHZlIGEgUHJvbWlzZSBpbW1lZGlhdGVseSBmb3IgYSBjb21wb3NhYmxlIG5vLW9wLlxuICAgICAqL1xuICAgIGNvbnN0IGdldEFuaW1hdGlvbiA9IHJlc29sdmVkXG4gICAgICAgID8gKCkgPT4gUHJvbWlzZS5hbGwoYW5pbWF0ZVRhcmdldCh2aXN1YWxFbGVtZW50LCByZXNvbHZlZCwgb3B0aW9ucykpXG4gICAgICAgIDogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgLyoqXG4gICAgICogSWYgd2UgaGF2ZSBjaGlsZHJlbiwgY3JlYXRlIGEgY2FsbGJhY2sgdGhhdCBydW5zIGFsbCB0aGVpciBhbmltYXRpb25zLlxuICAgICAqIE90aGVyd2lzZSwgd2UgcmVzb2x2ZSBhIFByb21pc2UgaW1tZWRpYXRlbHkgZm9yIGEgY29tcG9zYWJsZSBuby1vcC5cbiAgICAgKi9cbiAgICBjb25zdCBnZXRDaGlsZEFuaW1hdGlvbnMgPSB2aXN1YWxFbGVtZW50LnZhcmlhbnRDaGlsZHJlbiAmJiB2aXN1YWxFbGVtZW50LnZhcmlhbnRDaGlsZHJlbi5zaXplXG4gICAgICAgID8gKGZvcndhcmREZWxheSA9IDApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgZGVsYXlDaGlsZHJlbiA9IDAsIHN0YWdnZXJDaGlsZHJlbiwgc3RhZ2dlckRpcmVjdGlvbiwgfSA9IHRyYW5zaXRpb247XG4gICAgICAgICAgICByZXR1cm4gYW5pbWF0ZUNoaWxkcmVuKHZpc3VhbEVsZW1lbnQsIHZhcmlhbnQsIGRlbGF5Q2hpbGRyZW4gKyBmb3J3YXJkRGVsYXksIHN0YWdnZXJDaGlsZHJlbiwgc3RhZ2dlckRpcmVjdGlvbiwgb3B0aW9ucyk7XG4gICAgICAgIH1cbiAgICAgICAgOiAoKSA9PiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAvKipcbiAgICAgKiBJZiB0aGUgdHJhbnNpdGlvbiBleHBsaWNpdGx5IGRlZmluZXMgYSBcIndoZW5cIiBvcHRpb24sIHdlIG5lZWQgdG8gcmVzb2x2ZSBlaXRoZXJcbiAgICAgKiB0aGlzIGFuaW1hdGlvbiBvciBhbGwgY2hpbGRyZW4gYW5pbWF0aW9ucyBiZWZvcmUgcGxheWluZyB0aGUgb3RoZXIuXG4gICAgICovXG4gICAgY29uc3QgeyB3aGVuIH0gPSB0cmFuc2l0aW9uO1xuICAgIGlmICh3aGVuKSB7XG4gICAgICAgIGNvbnN0IFtmaXJzdCwgbGFzdF0gPSB3aGVuID09PSBcImJlZm9yZUNoaWxkcmVuXCJcbiAgICAgICAgICAgID8gW2dldEFuaW1hdGlvbiwgZ2V0Q2hpbGRBbmltYXRpb25zXVxuICAgICAgICAgICAgOiBbZ2V0Q2hpbGRBbmltYXRpb25zLCBnZXRBbmltYXRpb25dO1xuICAgICAgICByZXR1cm4gZmlyc3QoKS50aGVuKCgpID0+IGxhc3QoKSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoW2dldEFuaW1hdGlvbigpLCBnZXRDaGlsZEFuaW1hdGlvbnMob3B0aW9ucy5kZWxheSldKTtcbiAgICB9XG59XG5mdW5jdGlvbiBhbmltYXRlQ2hpbGRyZW4odmlzdWFsRWxlbWVudCwgdmFyaWFudCwgZGVsYXlDaGlsZHJlbiA9IDAsIHN0YWdnZXJDaGlsZHJlbiA9IDAsIHN0YWdnZXJEaXJlY3Rpb24gPSAxLCBvcHRpb25zKSB7XG4gICAgY29uc3QgYW5pbWF0aW9ucyA9IFtdO1xuICAgIGNvbnN0IG1heFN0YWdnZXJEdXJhdGlvbiA9ICh2aXN1YWxFbGVtZW50LnZhcmlhbnRDaGlsZHJlbi5zaXplIC0gMSkgKiBzdGFnZ2VyQ2hpbGRyZW47XG4gICAgY29uc3QgZ2VuZXJhdGVTdGFnZ2VyRHVyYXRpb24gPSBzdGFnZ2VyRGlyZWN0aW9uID09PSAxXG4gICAgICAgID8gKGkgPSAwKSA9PiBpICogc3RhZ2dlckNoaWxkcmVuXG4gICAgICAgIDogKGkgPSAwKSA9PiBtYXhTdGFnZ2VyRHVyYXRpb24gLSBpICogc3RhZ2dlckNoaWxkcmVuO1xuICAgIEFycmF5LmZyb20odmlzdWFsRWxlbWVudC52YXJpYW50Q2hpbGRyZW4pXG4gICAgICAgIC5zb3J0KHNvcnRCeVRyZWVPcmRlcilcbiAgICAgICAgLmZvckVhY2goKGNoaWxkLCBpKSA9PiB7XG4gICAgICAgIGNoaWxkLm5vdGlmeShcIkFuaW1hdGlvblN0YXJ0XCIsIHZhcmlhbnQpO1xuICAgICAgICBhbmltYXRpb25zLnB1c2goYW5pbWF0ZVZhcmlhbnQoY2hpbGQsIHZhcmlhbnQsIHtcbiAgICAgICAgICAgIC4uLm9wdGlvbnMsXG4gICAgICAgICAgICBkZWxheTogZGVsYXlDaGlsZHJlbiArIGdlbmVyYXRlU3RhZ2dlckR1cmF0aW9uKGkpLFxuICAgICAgICB9KS50aGVuKCgpID0+IGNoaWxkLm5vdGlmeShcIkFuaW1hdGlvbkNvbXBsZXRlXCIsIHZhcmlhbnQpKSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIFByb21pc2UuYWxsKGFuaW1hdGlvbnMpO1xufVxuZnVuY3Rpb24gc29ydEJ5VHJlZU9yZGVyKGEsIGIpIHtcbiAgICByZXR1cm4gYS5zb3J0Tm9kZVBvc2l0aW9uKGIpO1xufVxuXG5leHBvcnQgeyBhbmltYXRlVmFyaWFudCwgc29ydEJ5VHJlZU9yZGVyIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animateVisualElement: function() { return /* binding */ animateVisualElement; }\n/* harmony export */ });\n/* harmony import */ var _render_utils_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../render/utils/resolve-dynamic-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs\");\n/* harmony import */ var _visual_element_target_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./visual-element-target.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs\");\n/* harmony import */ var _visual_element_variant_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./visual-element-variant.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs\");\n\n\n\n\nfunction animateVisualElement(visualElement, definition, options = {}) {\n visualElement.notify(\"AnimationStart\", definition);\n let animation;\n if (Array.isArray(definition)) {\n const animations = definition.map((variant) => (0,_visual_element_variant_mjs__WEBPACK_IMPORTED_MODULE_0__.animateVariant)(visualElement, variant, options));\n animation = Promise.all(animations);\n }\n else if (typeof definition === \"string\") {\n animation = (0,_visual_element_variant_mjs__WEBPACK_IMPORTED_MODULE_0__.animateVariant)(visualElement, definition, options);\n }\n else {\n const resolvedDefinition = typeof definition === \"function\"\n ? (0,_render_utils_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_1__.resolveVariant)(visualElement, definition, options.custom)\n : definition;\n animation = Promise.all((0,_visual_element_target_mjs__WEBPACK_IMPORTED_MODULE_2__.animateTarget)(visualElement, resolvedDefinition, options));\n }\n return animation.then(() => visualElement.notify(\"AnimationComplete\", definition));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvdmlzdWFsLWVsZW1lbnQubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUY7QUFDckI7QUFDRTs7QUFFOUQscUVBQXFFO0FBQ3JFO0FBQ0E7QUFDQTtBQUNBLHVEQUF1RCwyRUFBYztBQUNyRTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsMkVBQWM7QUFDbEM7QUFDQTtBQUNBO0FBQ0EsY0FBYywwRkFBYztBQUM1QjtBQUNBLGdDQUFnQyx5RUFBYTtBQUM3QztBQUNBO0FBQ0E7O0FBRWdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL2ludGVyZmFjZXMvdmlzdWFsLWVsZW1lbnQubWpzPzMyYTgiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZVZhcmlhbnQgfSBmcm9tICcuLi8uLi9yZW5kZXIvdXRpbHMvcmVzb2x2ZS1keW5hbWljLXZhcmlhbnRzLm1qcyc7XG5pbXBvcnQgeyBhbmltYXRlVGFyZ2V0IH0gZnJvbSAnLi92aXN1YWwtZWxlbWVudC10YXJnZXQubWpzJztcbmltcG9ydCB7IGFuaW1hdGVWYXJpYW50IH0gZnJvbSAnLi92aXN1YWwtZWxlbWVudC12YXJpYW50Lm1qcyc7XG5cbmZ1bmN0aW9uIGFuaW1hdGVWaXN1YWxFbGVtZW50KHZpc3VhbEVsZW1lbnQsIGRlZmluaXRpb24sIG9wdGlvbnMgPSB7fSkge1xuICAgIHZpc3VhbEVsZW1lbnQubm90aWZ5KFwiQW5pbWF0aW9uU3RhcnRcIiwgZGVmaW5pdGlvbik7XG4gICAgbGV0IGFuaW1hdGlvbjtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkge1xuICAgICAgICBjb25zdCBhbmltYXRpb25zID0gZGVmaW5pdGlvbi5tYXAoKHZhcmlhbnQpID0+IGFuaW1hdGVWYXJpYW50KHZpc3VhbEVsZW1lbnQsIHZhcmlhbnQsIG9wdGlvbnMpKTtcbiAgICAgICAgYW5pbWF0aW9uID0gUHJvbWlzZS5hbGwoYW5pbWF0aW9ucyk7XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGVvZiBkZWZpbml0aW9uID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGFuaW1hdGlvbiA9IGFuaW1hdGVWYXJpYW50KHZpc3VhbEVsZW1lbnQsIGRlZmluaXRpb24sIG9wdGlvbnMpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgcmVzb2x2ZWREZWZpbml0aW9uID0gdHlwZW9mIGRlZmluaXRpb24gPT09IFwiZnVuY3Rpb25cIlxuICAgICAgICAgICAgPyByZXNvbHZlVmFyaWFudCh2aXN1YWxFbGVtZW50LCBkZWZpbml0aW9uLCBvcHRpb25zLmN1c3RvbSlcbiAgICAgICAgICAgIDogZGVmaW5pdGlvbjtcbiAgICAgICAgYW5pbWF0aW9uID0gUHJvbWlzZS5hbGwoYW5pbWF0ZVRhcmdldCh2aXN1YWxFbGVtZW50LCByZXNvbHZlZERlZmluaXRpb24sIG9wdGlvbnMpKTtcbiAgICB9XG4gICAgcmV0dXJuIGFuaW1hdGlvbi50aGVuKCgpID0+IHZpc3VhbEVsZW1lbnQubm90aWZ5KFwiQW5pbWF0aW9uQ29tcGxldGVcIiwgZGVmaW5pdGlvbikpO1xufVxuXG5leHBvcnQgeyBhbmltYXRlVmlzdWFsRWxlbWVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ optimizedAppearDataAttribute: function() { return /* binding */ optimizedAppearDataAttribute; },\n/* harmony export */ optimizedAppearDataId: function() { return /* binding */ optimizedAppearDataId; }\n/* harmony export */ });\n/* harmony import */ var _render_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../render/dom/utils/camel-to-dash.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs\");\n\n\nconst optimizedAppearDataId = \"framerAppearId\";\nconst optimizedAppearDataAttribute = \"data-\" + (0,_render_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_0__.camelToDash)(optimizedAppearDataId);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL29wdGltaXplZC1hcHBlYXIvZGF0YS1pZC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXVFOztBQUV2RTtBQUNBLCtDQUErQyxnRkFBVzs7QUFFSyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi9vcHRpbWl6ZWQtYXBwZWFyL2RhdGEtaWQubWpzPzMyZWIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FtZWxUb0Rhc2ggfSBmcm9tICcuLi8uLi9yZW5kZXIvZG9tL3V0aWxzL2NhbWVsLXRvLWRhc2gubWpzJztcblxuY29uc3Qgb3B0aW1pemVkQXBwZWFyRGF0YUlkID0gXCJmcmFtZXJBcHBlYXJJZFwiO1xuY29uc3Qgb3B0aW1pemVkQXBwZWFyRGF0YUF0dHJpYnV0ZSA9IFwiZGF0YS1cIiArIGNhbWVsVG9EYXNoKG9wdGltaXplZEFwcGVhckRhdGFJZCk7XG5cbmV4cG9ydCB7IG9wdGltaXplZEFwcGVhckRhdGFBdHRyaWJ1dGUsIG9wdGltaXplZEFwcGVhckRhdGFJZCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getDefaultTransition: function() { return /* binding */ getDefaultTransition; }\n/* harmony export */ });\n/* harmony import */ var _render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../render/html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n\n\nconst underDampedSpring = {\n type: \"spring\",\n stiffness: 500,\n damping: 25,\n restSpeed: 10,\n};\nconst criticallyDampedSpring = (target) => ({\n type: \"spring\",\n stiffness: 550,\n damping: target === 0 ? 2 * Math.sqrt(550) : 30,\n restSpeed: 10,\n});\nconst keyframesTransition = {\n type: \"keyframes\",\n duration: 0.8,\n};\n/**\n * Default easing curve is a slightly shallower version of\n * the default browser easing curve.\n */\nconst ease = {\n type: \"keyframes\",\n ease: [0.25, 0.1, 0.35, 1],\n duration: 0.3,\n};\nconst getDefaultTransition = (valueKey, { keyframes }) => {\n if (keyframes.length > 2) {\n return keyframesTransition;\n }\n else if (_render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_0__.transformProps.has(valueKey)) {\n return valueKey.startsWith(\"scale\")\n ? criticallyDampedSpring(keyframes[1])\n : underDampedSpring;\n }\n return ease;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2RlZmF1bHQtdHJhbnNpdGlvbnMubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXVFOztBQUV2RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMENBQTBDLFdBQVc7QUFDckQ7QUFDQTtBQUNBO0FBQ0EsYUFBYSw0RUFBYztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRWdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2RlZmF1bHQtdHJhbnNpdGlvbnMubWpzP2I0MmYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNmb3JtUHJvcHMgfSBmcm9tICcuLi8uLi9yZW5kZXIvaHRtbC91dGlscy90cmFuc2Zvcm0ubWpzJztcblxuY29uc3QgdW5kZXJEYW1wZWRTcHJpbmcgPSB7XG4gICAgdHlwZTogXCJzcHJpbmdcIixcbiAgICBzdGlmZm5lc3M6IDUwMCxcbiAgICBkYW1waW5nOiAyNSxcbiAgICByZXN0U3BlZWQ6IDEwLFxufTtcbmNvbnN0IGNyaXRpY2FsbHlEYW1wZWRTcHJpbmcgPSAodGFyZ2V0KSA9PiAoe1xuICAgIHR5cGU6IFwic3ByaW5nXCIsXG4gICAgc3RpZmZuZXNzOiA1NTAsXG4gICAgZGFtcGluZzogdGFyZ2V0ID09PSAwID8gMiAqIE1hdGguc3FydCg1NTApIDogMzAsXG4gICAgcmVzdFNwZWVkOiAxMCxcbn0pO1xuY29uc3Qga2V5ZnJhbWVzVHJhbnNpdGlvbiA9IHtcbiAgICB0eXBlOiBcImtleWZyYW1lc1wiLFxuICAgIGR1cmF0aW9uOiAwLjgsXG59O1xuLyoqXG4gKiBEZWZhdWx0IGVhc2luZyBjdXJ2ZSBpcyBhIHNsaWdodGx5IHNoYWxsb3dlciB2ZXJzaW9uIG9mXG4gKiB0aGUgZGVmYXVsdCBicm93c2VyIGVhc2luZyBjdXJ2ZS5cbiAqL1xuY29uc3QgZWFzZSA9IHtcbiAgICB0eXBlOiBcImtleWZyYW1lc1wiLFxuICAgIGVhc2U6IFswLjI1LCAwLjEsIDAuMzUsIDFdLFxuICAgIGR1cmF0aW9uOiAwLjMsXG59O1xuY29uc3QgZ2V0RGVmYXVsdFRyYW5zaXRpb24gPSAodmFsdWVLZXksIHsga2V5ZnJhbWVzIH0pID0+IHtcbiAgICBpZiAoa2V5ZnJhbWVzLmxlbmd0aCA+IDIpIHtcbiAgICAgICAgcmV0dXJuIGtleWZyYW1lc1RyYW5zaXRpb247XG4gICAgfVxuICAgIGVsc2UgaWYgKHRyYW5zZm9ybVByb3BzLmhhcyh2YWx1ZUtleSkpIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlS2V5LnN0YXJ0c1dpdGgoXCJzY2FsZVwiKVxuICAgICAgICAgICAgPyBjcml0aWNhbGx5RGFtcGVkU3ByaW5nKGtleWZyYW1lc1sxXSlcbiAgICAgICAgICAgIDogdW5kZXJEYW1wZWRTcHJpbmc7XG4gICAgfVxuICAgIHJldHVybiBlYXNlO1xufTtcblxuZXhwb3J0IHsgZ2V0RGVmYXVsdFRyYW5zaXRpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isAnimatable: function() { return /* binding */ isAnimatable; }\n/* harmony export */ });\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n\n\n/**\n * Check if a value is animatable. Examples:\n *\n * ✅: 100, \"100px\", \"#fff\"\n * ❌: \"block\", \"url(2.jpg)\"\n * @param value\n *\n * @internal\n */\nconst isAnimatable = (key, value) => {\n // If the list of keys tat might be non-animatable grows, replace with Set\n if (key === \"zIndex\")\n return false;\n // If it's a number or a keyframes array, we can animate it. We might at some point\n // need to do a deep isAnimatable check of keyframes, or let Popmotion handle this,\n // but for now lets leave it like this for performance reasons\n if (typeof value === \"number\" || Array.isArray(value))\n return true;\n if (typeof value === \"string\" && // It's animatable if we have a string\n (_value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_0__.complex.test(value) || value === \"0\") && // And it contains numbers and/or colors\n !value.startsWith(\"url(\") // Unless it starts with \"url(\"\n ) {\n return true;\n }\n return false;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGFibGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQThEOztBQUU5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVMsbUVBQU87QUFDaEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV3QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi91dGlscy9pcy1hbmltYXRhYmxlLm1qcz8xOWU0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXBsZXggfSBmcm9tICcuLi8uLi92YWx1ZS90eXBlcy9jb21wbGV4L2luZGV4Lm1qcyc7XG5cbi8qKlxuICogQ2hlY2sgaWYgYSB2YWx1ZSBpcyBhbmltYXRhYmxlLiBFeGFtcGxlczpcbiAqXG4gKiDinIU6IDEwMCwgXCIxMDBweFwiLCBcIiNmZmZcIlxuICog4p2MOiBcImJsb2NrXCIsIFwidXJsKDIuanBnKVwiXG4gKiBAcGFyYW0gdmFsdWVcbiAqXG4gKiBAaW50ZXJuYWxcbiAqL1xuY29uc3QgaXNBbmltYXRhYmxlID0gKGtleSwgdmFsdWUpID0+IHtcbiAgICAvLyBJZiB0aGUgbGlzdCBvZiBrZXlzIHRhdCBtaWdodCBiZSBub24tYW5pbWF0YWJsZSBncm93cywgcmVwbGFjZSB3aXRoIFNldFxuICAgIGlmIChrZXkgPT09IFwiekluZGV4XCIpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAvLyBJZiBpdCdzIGEgbnVtYmVyIG9yIGEga2V5ZnJhbWVzIGFycmF5LCB3ZSBjYW4gYW5pbWF0ZSBpdC4gV2UgbWlnaHQgYXQgc29tZSBwb2ludFxuICAgIC8vIG5lZWQgdG8gZG8gYSBkZWVwIGlzQW5pbWF0YWJsZSBjaGVjayBvZiBrZXlmcmFtZXMsIG9yIGxldCBQb3Btb3Rpb24gaGFuZGxlIHRoaXMsXG4gICAgLy8gYnV0IGZvciBub3cgbGV0cyBsZWF2ZSBpdCBsaWtlIHRoaXMgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnNcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiIHx8IEFycmF5LmlzQXJyYXkodmFsdWUpKVxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiICYmIC8vIEl0J3MgYW5pbWF0YWJsZSBpZiB3ZSBoYXZlIGEgc3RyaW5nXG4gICAgICAgIChjb21wbGV4LnRlc3QodmFsdWUpIHx8IHZhbHVlID09PSBcIjBcIikgJiYgLy8gQW5kIGl0IGNvbnRhaW5zIG51bWJlcnMgYW5kL29yIGNvbG9yc1xuICAgICAgICAhdmFsdWUuc3RhcnRzV2l0aChcInVybChcIikgLy8gVW5sZXNzIGl0IHN0YXJ0cyB3aXRoIFwidXJsKFwiXG4gICAgKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG59O1xuXG5leHBvcnQgeyBpc0FuaW1hdGFibGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs":
|
||
/*!**************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs ***!
|
||
\**************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isAnimationControls: function() { return /* binding */ isAnimationControls; }\n/* harmony export */ });\nfunction isAnimationControls(v) {\n return (v !== null &&\n typeof v === \"object\" &&\n typeof v.start === \"function\");\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGlvbi1jb250cm9scy5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGlvbi1jb250cm9scy5tanM/Y2NhYyJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBpc0FuaW1hdGlvbkNvbnRyb2xzKHYpIHtcbiAgICByZXR1cm4gKHYgIT09IG51bGwgJiZcbiAgICAgICAgdHlwZW9mIHYgPT09IFwib2JqZWN0XCIgJiZcbiAgICAgICAgdHlwZW9mIHYuc3RhcnQgPT09IFwiZnVuY3Rpb25cIik7XG59XG5cbmV4cG9ydCB7IGlzQW5pbWF0aW9uQ29udHJvbHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isKeyframesTarget: function() { return /* binding */ isKeyframesTarget; }\n/* harmony export */ });\nconst isKeyframesTarget = (v) => {\n return Array.isArray(v);\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLWtleWZyYW1lcy10YXJnZXQubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBRTZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLWtleWZyYW1lcy10YXJnZXQubWpzPzdhMzgiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaXNLZXlmcmFtZXNUYXJnZXQgPSAodikgPT4ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHYpO1xufTtcblxuZXhwb3J0IHsgaXNLZXlmcmFtZXNUYXJnZXQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-none.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/is-none.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isNone: function() { return /* binding */ isNone; }\n/* harmony export */ });\n/* harmony import */ var _utils_is_zero_value_string_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/is-zero-value-string.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs\");\n\n\nfunction isNone(value) {\n if (typeof value === \"number\") {\n return value === 0;\n }\n else if (value !== null) {\n return value === \"none\" || value === \"0\" || (0,_utils_is_zero_value_string_mjs__WEBPACK_IMPORTED_MODULE_0__.isZeroValueString)(value);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2lzLW5vbmUubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXlFOztBQUV6RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0RBQW9ELGtGQUFpQjtBQUNyRTtBQUNBOztBQUVrQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2FuaW1hdGlvbi91dGlscy9pcy1ub25lLm1qcz8wNjcyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzWmVyb1ZhbHVlU3RyaW5nIH0gZnJvbSAnLi4vLi4vdXRpbHMvaXMtemVyby12YWx1ZS1zdHJpbmcubWpzJztcblxuZnVuY3Rpb24gaXNOb25lKHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICByZXR1cm4gdmFsdWUgPT09IDA7XG4gICAgfVxuICAgIGVsc2UgaWYgKHZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA9PT0gXCJub25lXCIgfHwgdmFsdWUgPT09IFwiMFwiIHx8IGlzWmVyb1ZhbHVlU3RyaW5nKHZhbHVlKTtcbiAgICB9XG59XG5cbmV4cG9ydCB7IGlzTm9uZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-none.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getKeyframes: function() { return /* binding */ getKeyframes; }\n/* harmony export */ });\n/* harmony import */ var _render_dom_value_types_animatable_none_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../render/dom/value-types/animatable-none.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs\");\n/* harmony import */ var _is_animatable_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-animatable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs\");\n/* harmony import */ var _is_none_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./is-none.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-none.mjs\");\n\n\n\n\nfunction getKeyframes(value, valueName, target, transition) {\n const isTargetAnimatable = (0,_is_animatable_mjs__WEBPACK_IMPORTED_MODULE_0__.isAnimatable)(valueName, target);\n let keyframes;\n if (Array.isArray(target)) {\n keyframes = [...target];\n }\n else {\n keyframes = [null, target];\n }\n const defaultOrigin = transition.from !== undefined ? transition.from : value.get();\n let animatableTemplateValue = undefined;\n const noneKeyframeIndexes = [];\n for (let i = 0; i < keyframes.length; i++) {\n /**\n * Fill null/wildcard keyframes\n */\n if (keyframes[i] === null) {\n keyframes[i] = i === 0 ? defaultOrigin : keyframes[i - 1];\n }\n if ((0,_is_none_mjs__WEBPACK_IMPORTED_MODULE_1__.isNone)(keyframes[i])) {\n noneKeyframeIndexes.push(i);\n }\n // TODO: Clean this conditional, it works for now\n if (typeof keyframes[i] === \"string\" &&\n keyframes[i] !== \"none\" &&\n keyframes[i] !== \"0\") {\n animatableTemplateValue = keyframes[i];\n }\n }\n if (isTargetAnimatable &&\n noneKeyframeIndexes.length &&\n animatableTemplateValue) {\n for (let i = 0; i < noneKeyframeIndexes.length; i++) {\n const index = noneKeyframeIndexes[i];\n keyframes[index] = (0,_render_dom_value_types_animatable_none_mjs__WEBPACK_IMPORTED_MODULE_2__.getAnimatableNone)(valueName, animatableTemplateValue);\n }\n }\n return keyframes;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL2tleWZyYW1lcy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFxRjtBQUNsQztBQUNaOztBQUV2QztBQUNBLCtCQUErQixnRUFBWTtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixzQkFBc0I7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxvREFBTTtBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsZ0NBQWdDO0FBQ3hEO0FBQ0EsK0JBQStCLDhGQUFpQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTs7QUFFd0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9hbmltYXRpb24vdXRpbHMva2V5ZnJhbWVzLm1qcz9hZTM2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEFuaW1hdGFibGVOb25lIH0gZnJvbSAnLi4vLi4vcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9hbmltYXRhYmxlLW5vbmUubWpzJztcbmltcG9ydCB7IGlzQW5pbWF0YWJsZSB9IGZyb20gJy4vaXMtYW5pbWF0YWJsZS5tanMnO1xuaW1wb3J0IHsgaXNOb25lIH0gZnJvbSAnLi9pcy1ub25lLm1qcyc7XG5cbmZ1bmN0aW9uIGdldEtleWZyYW1lcyh2YWx1ZSwgdmFsdWVOYW1lLCB0YXJnZXQsIHRyYW5zaXRpb24pIHtcbiAgICBjb25zdCBpc1RhcmdldEFuaW1hdGFibGUgPSBpc0FuaW1hdGFibGUodmFsdWVOYW1lLCB0YXJnZXQpO1xuICAgIGxldCBrZXlmcmFtZXM7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodGFyZ2V0KSkge1xuICAgICAgICBrZXlmcmFtZXMgPSBbLi4udGFyZ2V0XTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGtleWZyYW1lcyA9IFtudWxsLCB0YXJnZXRdO1xuICAgIH1cbiAgICBjb25zdCBkZWZhdWx0T3JpZ2luID0gdHJhbnNpdGlvbi5mcm9tICE9PSB1bmRlZmluZWQgPyB0cmFuc2l0aW9uLmZyb20gOiB2YWx1ZS5nZXQoKTtcbiAgICBsZXQgYW5pbWF0YWJsZVRlbXBsYXRlVmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgY29uc3Qgbm9uZUtleWZyYW1lSW5kZXhlcyA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5ZnJhbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBGaWxsIG51bGwvd2lsZGNhcmQga2V5ZnJhbWVzXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoa2V5ZnJhbWVzW2ldID09PSBudWxsKSB7XG4gICAgICAgICAgICBrZXlmcmFtZXNbaV0gPSBpID09PSAwID8gZGVmYXVsdE9yaWdpbiA6IGtleWZyYW1lc1tpIC0gMV07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzTm9uZShrZXlmcmFtZXNbaV0pKSB7XG4gICAgICAgICAgICBub25lS2V5ZnJhbWVJbmRleGVzLnB1c2goaSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gVE9ETzogQ2xlYW4gdGhpcyBjb25kaXRpb25hbCwgaXQgd29ya3MgZm9yIG5vd1xuICAgICAgICBpZiAodHlwZW9mIGtleWZyYW1lc1tpXSA9PT0gXCJzdHJpbmdcIiAmJlxuICAgICAgICAgICAga2V5ZnJhbWVzW2ldICE9PSBcIm5vbmVcIiAmJlxuICAgICAgICAgICAga2V5ZnJhbWVzW2ldICE9PSBcIjBcIikge1xuICAgICAgICAgICAgYW5pbWF0YWJsZVRlbXBsYXRlVmFsdWUgPSBrZXlmcmFtZXNbaV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKGlzVGFyZ2V0QW5pbWF0YWJsZSAmJlxuICAgICAgICBub25lS2V5ZnJhbWVJbmRleGVzLmxlbmd0aCAmJlxuICAgICAgICBhbmltYXRhYmxlVGVtcGxhdGVWYWx1ZSkge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vbmVLZXlmcmFtZUluZGV4ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gbm9uZUtleWZyYW1lSW5kZXhlc1tpXTtcbiAgICAgICAgICAgIGtleWZyYW1lc1tpbmRleF0gPSBnZXRBbmltYXRhYmxlTm9uZSh2YWx1ZU5hbWUsIGFuaW1hdGFibGVUZW1wbGF0ZVZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ga2V5ZnJhbWVzO1xufVxuXG5leHBvcnQgeyBnZXRLZXlmcmFtZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getValueTransition: function() { return /* binding */ getValueTransition; },\n/* harmony export */ isTransitionDefined: function() { return /* binding */ isTransitionDefined; }\n/* harmony export */ });\n/**\n * Decide whether a transition is defined on a given Transition.\n * This filters out orchestration options and returns true\n * if any options are left.\n */\nfunction isTransitionDefined({ when, delay: _delay, delayChildren, staggerChildren, staggerDirection, repeat, repeatType, repeatDelay, from, elapsed, ...transition }) {\n return !!Object.keys(transition).length;\n}\nfunction getValueTransition(transition, key) {\n return transition[key] || transition[\"default\"] || transition;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL3RyYW5zaXRpb25zLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrQkFBK0Isc0lBQXNJO0FBQ3JLO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRW1EIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvYW5pbWF0aW9uL3V0aWxzL3RyYW5zaXRpb25zLm1qcz8zYTFhIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRGVjaWRlIHdoZXRoZXIgYSB0cmFuc2l0aW9uIGlzIGRlZmluZWQgb24gYSBnaXZlbiBUcmFuc2l0aW9uLlxuICogVGhpcyBmaWx0ZXJzIG91dCBvcmNoZXN0cmF0aW9uIG9wdGlvbnMgYW5kIHJldHVybnMgdHJ1ZVxuICogaWYgYW55IG9wdGlvbnMgYXJlIGxlZnQuXG4gKi9cbmZ1bmN0aW9uIGlzVHJhbnNpdGlvbkRlZmluZWQoeyB3aGVuLCBkZWxheTogX2RlbGF5LCBkZWxheUNoaWxkcmVuLCBzdGFnZ2VyQ2hpbGRyZW4sIHN0YWdnZXJEaXJlY3Rpb24sIHJlcGVhdCwgcmVwZWF0VHlwZSwgcmVwZWF0RGVsYXksIGZyb20sIGVsYXBzZWQsIC4uLnRyYW5zaXRpb24gfSkge1xuICAgIHJldHVybiAhIU9iamVjdC5rZXlzKHRyYW5zaXRpb24pLmxlbmd0aDtcbn1cbmZ1bmN0aW9uIGdldFZhbHVlVHJhbnNpdGlvbih0cmFuc2l0aW9uLCBrZXkpIHtcbiAgICByZXR1cm4gdHJhbnNpdGlvbltrZXldIHx8IHRyYW5zaXRpb25bXCJkZWZhdWx0XCJdIHx8IHRyYW5zaXRpb247XG59XG5cbmV4cG9ydCB7IGdldFZhbHVlVHJhbnNpdGlvbiwgaXNUcmFuc2l0aW9uRGVmaW5lZCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PopChild: function() { return /* binding */ PopChild; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n\n/**\n * Measurement functionality has to be within a separate component\n * to leverage snapshot lifecycle.\n */\nclass PopChildMeasure extends react__WEBPACK_IMPORTED_MODULE_0__.Component {\n getSnapshotBeforeUpdate(prevProps) {\n const element = this.props.childRef.current;\n if (element && prevProps.isPresent && !this.props.isPresent) {\n const size = this.props.sizeRef.current;\n size.height = element.offsetHeight || 0;\n size.width = element.offsetWidth || 0;\n size.top = element.offsetTop;\n size.left = element.offsetLeft;\n }\n return null;\n }\n /**\n * Required with getSnapshotBeforeUpdate to stop React complaining.\n */\n componentDidUpdate() { }\n render() {\n return this.props.children;\n }\n}\nfunction PopChild({ children, isPresent }) {\n const id = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)();\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n const size = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)({\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n });\n /**\n * We create and inject a style block so we can apply this explicit\n * sizing in a non-destructive manner by just deleting the style block.\n *\n * We can't apply size via render as the measurement happens\n * in getSnapshotBeforeUpdate (post-render), likewise if we apply the\n * styles directly on the DOM node, we might be overwriting\n * styles set via the style prop.\n */\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useInsertionEffect)(() => {\n const { width, height, top, left } = size.current;\n if (isPresent || !ref.current || !width || !height)\n return;\n ref.current.dataset.motionPopId = id;\n const style = document.createElement(\"style\");\n document.head.appendChild(style);\n if (style.sheet) {\n style.sheet.insertRule(`\n [data-motion-pop-id=\"${id}\"] {\n position: absolute !important;\n width: ${width}px !important;\n height: ${height}px !important;\n top: ${top}px !important;\n left: ${left}px !important;\n }\n `);\n }\n return () => {\n document.head.removeChild(style);\n };\n }, [isPresent]);\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(PopChildMeasure, { isPresent: isPresent, childRef: ref, sizeRef: size }, react__WEBPACK_IMPORTED_MODULE_0__.cloneElement(children, { ref })));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29tcG9uZW50cy9BbmltYXRlUHJlc2VuY2UvUG9wQ2hpbGQubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQStCO0FBQzJCOztBQUUxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDhCQUE4Qiw0Q0FBZTtBQUM3QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixxQkFBcUI7QUFDekMsZUFBZSw0Q0FBSztBQUNwQixnQkFBZ0IsNkNBQU07QUFDdEIsaUJBQWlCLDZDQUFNO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUkseURBQWtCO0FBQ3RCLGdCQUFnQiwyQkFBMkI7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsR0FBRztBQUNwQztBQUNBLHFCQUFxQixNQUFNO0FBQzNCLHNCQUFzQixPQUFPO0FBQzdCLG1CQUFtQixJQUFJO0FBQ3ZCLG9CQUFvQixLQUFLO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxZQUFZLGdEQUFtQixvQkFBb0Isb0RBQW9ELEVBQUUsK0NBQWtCLGFBQWEsS0FBSztBQUM3STs7QUFFb0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9jb21wb25lbnRzL0FuaW1hdGVQcmVzZW5jZS9Qb3BDaGlsZC5tanM/YjU4NyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VJZCwgdXNlUmVmLCB1c2VJbnNlcnRpb25FZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogTWVhc3VyZW1lbnQgZnVuY3Rpb25hbGl0eSBoYXMgdG8gYmUgd2l0aGluIGEgc2VwYXJhdGUgY29tcG9uZW50XG4gKiB0byBsZXZlcmFnZSBzbmFwc2hvdCBsaWZlY3ljbGUuXG4gKi9cbmNsYXNzIFBvcENoaWxkTWVhc3VyZSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUocHJldlByb3BzKSB7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLnByb3BzLmNoaWxkUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChlbGVtZW50ICYmIHByZXZQcm9wcy5pc1ByZXNlbnQgJiYgIXRoaXMucHJvcHMuaXNQcmVzZW50KSB7XG4gICAgICAgICAgICBjb25zdCBzaXplID0gdGhpcy5wcm9wcy5zaXplUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBzaXplLmhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0IHx8IDA7XG4gICAgICAgICAgICBzaXplLndpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAwO1xuICAgICAgICAgICAgc2l6ZS50b3AgPSBlbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgICAgIHNpemUubGVmdCA9IGVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmVxdWlyZWQgd2l0aCBnZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZSB0byBzdG9wIFJlYWN0IGNvbXBsYWluaW5nLlxuICAgICAqL1xuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHsgfVxuICAgIHJlbmRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW47XG4gICAgfVxufVxuZnVuY3Rpb24gUG9wQ2hpbGQoeyBjaGlsZHJlbiwgaXNQcmVzZW50IH0pIHtcbiAgICBjb25zdCBpZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgcmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHNpemUgPSB1c2VSZWYoe1xuICAgICAgICB3aWR0aDogMCxcbiAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIGxlZnQ6IDAsXG4gICAgfSk7XG4gICAgLyoqXG4gICAgICogV2UgY3JlYXRlIGFuZCBpbmplY3QgYSBzdHlsZSBibG9jayBzbyB3ZSBjYW4gYXBwbHkgdGhpcyBleHBsaWNpdFxuICAgICAqIHNpemluZyBpbiBhIG5vbi1kZXN0cnVjdGl2ZSBtYW5uZXIgYnkganVzdCBkZWxldGluZyB0aGUgc3R5bGUgYmxvY2suXG4gICAgICpcbiAgICAgKiBXZSBjYW4ndCBhcHBseSBzaXplIHZpYSByZW5kZXIgYXMgdGhlIG1lYXN1cmVtZW50IGhhcHBlbnNcbiAgICAgKiBpbiBnZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZSAocG9zdC1yZW5kZXIpLCBsaWtld2lzZSBpZiB3ZSBhcHBseSB0aGVcbiAgICAgKiBzdHlsZXMgZGlyZWN0bHkgb24gdGhlIERPTSBub2RlLCB3ZSBtaWdodCBiZSBvdmVyd3JpdGluZ1xuICAgICAqIHN0eWxlcyBzZXQgdmlhIHRoZSBzdHlsZSBwcm9wLlxuICAgICAqL1xuICAgIHVzZUluc2VydGlvbkVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCwgdG9wLCBsZWZ0IH0gPSBzaXplLmN1cnJlbnQ7XG4gICAgICAgIGlmIChpc1ByZXNlbnQgfHwgIXJlZi5jdXJyZW50IHx8ICF3aWR0aCB8fCAhaGVpZ2h0KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICByZWYuY3VycmVudC5kYXRhc2V0Lm1vdGlvblBvcElkID0gaWQ7XG4gICAgICAgIGNvbnN0IHN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcInN0eWxlXCIpO1xuICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcbiAgICAgICAgaWYgKHN0eWxlLnNoZWV0KSB7XG4gICAgICAgICAgICBzdHlsZS5zaGVldC5pbnNlcnRSdWxlKGBcbiAgICAgICAgICBbZGF0YS1tb3Rpb24tcG9wLWlkPVwiJHtpZH1cIl0ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB3aWR0aDogJHt3aWR0aH1weCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAke2hlaWdodH1weCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdG9wOiAke3RvcH1weCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogJHtsZWZ0fXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICBgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgZG9jdW1lbnQuaGVhZC5yZW1vdmVDaGlsZChzdHlsZSk7XG4gICAgICAgIH07XG4gICAgfSwgW2lzUHJlc2VudF0pO1xuICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChQb3BDaGlsZE1lYXN1cmUsIHsgaXNQcmVzZW50OiBpc1ByZXNlbnQsIGNoaWxkUmVmOiByZWYsIHNpemVSZWY6IHNpemUgfSwgUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7IHJlZiB9KSkpO1xufVxuXG5leHBvcnQgeyBQb3BDaGlsZCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs":
|
||
/*!*****************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs ***!
|
||
\*****************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PresenceChild: function() { return /* binding */ PresenceChild; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../context/PresenceContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs\");\n/* harmony import */ var _utils_use_constant_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/use-constant.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-constant.mjs\");\n/* harmony import */ var _PopChild_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./PopChild.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs\");\n\n\n\n\n\n\nconst PresenceChild = ({ children, initial, isPresent, onExitComplete, custom, presenceAffectsLayout, mode, }) => {\n const presenceChildren = (0,_utils_use_constant_mjs__WEBPACK_IMPORTED_MODULE_1__.useConstant)(newChildrenMap);\n const id = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)();\n const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({\n id,\n initial,\n isPresent,\n custom,\n onExitComplete: (childId) => {\n presenceChildren.set(childId, true);\n for (const isComplete of presenceChildren.values()) {\n if (!isComplete)\n return; // can stop searching when any is incomplete\n }\n onExitComplete && onExitComplete();\n },\n register: (childId) => {\n presenceChildren.set(childId, false);\n return () => presenceChildren.delete(childId);\n },\n }), \n /**\n * If the presence of a child affects the layout of the components around it,\n * we want to make a new context value to ensure they get re-rendered\n * so they can detect that layout change.\n */\n presenceAffectsLayout ? undefined : [isPresent]);\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {\n presenceChildren.forEach((_, key) => presenceChildren.set(key, false));\n }, [isPresent]);\n /**\n * If there's no `motion` components to fire exit animations, we want to remove this\n * component immediately.\n */\n react__WEBPACK_IMPORTED_MODULE_0__.useEffect(() => {\n !isPresent &&\n !presenceChildren.size &&\n onExitComplete &&\n onExitComplete();\n }, [isPresent]);\n if (mode === \"popLayout\") {\n children = react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PopChild_mjs__WEBPACK_IMPORTED_MODULE_2__.PopChild, { isPresent: isPresent }, children);\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_3__.PresenceContext.Provider, { value: context }, children));\n};\nfunction newChildrenMap() {\n return new Map();\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29tcG9uZW50cy9BbmltYXRlUHJlc2VuY2UvUHJlc2VuY2VDaGlsZC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBK0I7QUFDUTtBQUM2QjtBQUNUO0FBQ2pCOztBQUUxQyx5QkFBeUIsb0ZBQW9GO0FBQzdHLDZCQUE2QixvRUFBVztBQUN4QyxlQUFlLDRDQUFLO0FBQ3BCLG9CQUFvQiw4Q0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCO0FBQzVCO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLDhDQUFPO0FBQ1g7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJLDRDQUFlO0FBQ25CO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0EsbUJBQW1CLGdEQUFtQixDQUFDLG1EQUFRLElBQUksc0JBQXNCO0FBQ3pFO0FBQ0EsWUFBWSxnREFBbUIsQ0FBQyx5RUFBZSxhQUFhLGdCQUFnQjtBQUM1RTtBQUNBO0FBQ0E7QUFDQTs7QUFFeUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9jb21wb25lbnRzL0FuaW1hdGVQcmVzZW5jZS9QcmVzZW5jZUNoaWxkLm1qcz8xMzgwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUlkLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgUHJlc2VuY2VDb250ZXh0IH0gZnJvbSAnLi4vLi4vY29udGV4dC9QcmVzZW5jZUNvbnRleHQubWpzJztcbmltcG9ydCB7IHVzZUNvbnN0YW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvdXNlLWNvbnN0YW50Lm1qcyc7XG5pbXBvcnQgeyBQb3BDaGlsZCB9IGZyb20gJy4vUG9wQ2hpbGQubWpzJztcblxuY29uc3QgUHJlc2VuY2VDaGlsZCA9ICh7IGNoaWxkcmVuLCBpbml0aWFsLCBpc1ByZXNlbnQsIG9uRXhpdENvbXBsZXRlLCBjdXN0b20sIHByZXNlbmNlQWZmZWN0c0xheW91dCwgbW9kZSwgfSkgPT4ge1xuICAgIGNvbnN0IHByZXNlbmNlQ2hpbGRyZW4gPSB1c2VDb25zdGFudChuZXdDaGlsZHJlbk1hcCk7XG4gICAgY29uc3QgaWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGNvbnRleHQgPSB1c2VNZW1vKCgpID0+ICh7XG4gICAgICAgIGlkLFxuICAgICAgICBpbml0aWFsLFxuICAgICAgICBpc1ByZXNlbnQsXG4gICAgICAgIGN1c3RvbSxcbiAgICAgICAgb25FeGl0Q29tcGxldGU6IChjaGlsZElkKSA9PiB7XG4gICAgICAgICAgICBwcmVzZW5jZUNoaWxkcmVuLnNldChjaGlsZElkLCB0cnVlKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXNDb21wbGV0ZSBvZiBwcmVzZW5jZUNoaWxkcmVuLnZhbHVlcygpKSB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc0NvbXBsZXRlKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47IC8vIGNhbiBzdG9wIHNlYXJjaGluZyB3aGVuIGFueSBpcyBpbmNvbXBsZXRlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvbkV4aXRDb21wbGV0ZSAmJiBvbkV4aXRDb21wbGV0ZSgpO1xuICAgICAgICB9LFxuICAgICAgICByZWdpc3RlcjogKGNoaWxkSWQpID0+IHtcbiAgICAgICAgICAgIHByZXNlbmNlQ2hpbGRyZW4uc2V0KGNoaWxkSWQsIGZhbHNlKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBwcmVzZW5jZUNoaWxkcmVuLmRlbGV0ZShjaGlsZElkKTtcbiAgICAgICAgfSxcbiAgICB9KSwgXG4gICAgLyoqXG4gICAgICogSWYgdGhlIHByZXNlbmNlIG9mIGEgY2hpbGQgYWZmZWN0cyB0aGUgbGF5b3V0IG9mIHRoZSBjb21wb25lbnRzIGFyb3VuZCBpdCxcbiAgICAgKiB3ZSB3YW50IHRvIG1ha2UgYSBuZXcgY29udGV4dCB2YWx1ZSB0byBlbnN1cmUgdGhleSBnZXQgcmUtcmVuZGVyZWRcbiAgICAgKiBzbyB0aGV5IGNhbiBkZXRlY3QgdGhhdCBsYXlvdXQgY2hhbmdlLlxuICAgICAqL1xuICAgIHByZXNlbmNlQWZmZWN0c0xheW91dCA/IHVuZGVmaW5lZCA6IFtpc1ByZXNlbnRdKTtcbiAgICB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgcHJlc2VuY2VDaGlsZHJlbi5mb3JFYWNoKChfLCBrZXkpID0+IHByZXNlbmNlQ2hpbGRyZW4uc2V0KGtleSwgZmFsc2UpKTtcbiAgICB9LCBbaXNQcmVzZW50XSk7XG4gICAgLyoqXG4gICAgICogSWYgdGhlcmUncyBubyBgbW90aW9uYCBjb21wb25lbnRzIHRvIGZpcmUgZXhpdCBhbmltYXRpb25zLCB3ZSB3YW50IHRvIHJlbW92ZSB0aGlzXG4gICAgICogY29tcG9uZW50IGltbWVkaWF0ZWx5LlxuICAgICAqL1xuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICFpc1ByZXNlbnQgJiZcbiAgICAgICAgICAgICFwcmVzZW5jZUNoaWxkcmVuLnNpemUgJiZcbiAgICAgICAgICAgIG9uRXhpdENvbXBsZXRlICYmXG4gICAgICAgICAgICBvbkV4aXRDb21wbGV0ZSgpO1xuICAgIH0sIFtpc1ByZXNlbnRdKTtcbiAgICBpZiAobW9kZSA9PT0gXCJwb3BMYXlvdXRcIikge1xuICAgICAgICBjaGlsZHJlbiA9IFJlYWN0LmNyZWF0ZUVsZW1lbnQoUG9wQ2hpbGQsIHsgaXNQcmVzZW50OiBpc1ByZXNlbnQgfSwgY2hpbGRyZW4pO1xuICAgIH1cbiAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoUHJlc2VuY2VDb250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiBjb250ZXh0IH0sIGNoaWxkcmVuKSk7XG59O1xuZnVuY3Rpb24gbmV3Q2hpbGRyZW5NYXAoKSB7XG4gICAgcmV0dXJuIG5ldyBNYXAoKTtcbn1cblxuZXhwb3J0IHsgUHJlc2VuY2VDaGlsZCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AnimatePresence: function() { return /* binding */ AnimatePresence; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_use_force_update_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/use-force-update.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-force-update.mjs\");\n/* harmony import */ var _utils_use_is_mounted_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/use-is-mounted.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs\");\n/* harmony import */ var _PresenceChild_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./PresenceChild.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs\");\n/* harmony import */ var _context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../context/LayoutGroupContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs\");\n/* harmony import */ var _utils_use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/use-isomorphic-effect.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs\");\n/* harmony import */ var _utils_use_unmount_effect_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/use-unmount-effect.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs\");\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n\n\n\n\n\n\n\n\n\n\nconst getChildKey = (child) => child.key || \"\";\nfunction updateChildLookup(children, allChildren) {\n children.forEach((child) => {\n const key = getChildKey(child);\n allChildren.set(key, child);\n });\n}\nfunction onlyElements(children) {\n const filtered = [];\n // We use forEach here instead of map as map mutates the component key by preprending `.$`\n react__WEBPACK_IMPORTED_MODULE_0__.Children.forEach(children, (child) => {\n if ((0,react__WEBPACK_IMPORTED_MODULE_0__.isValidElement)(child))\n filtered.push(child);\n });\n return filtered;\n}\n/**\n * `AnimatePresence` enables the animation of components that have been removed from the tree.\n *\n * When adding/removing more than a single child, every child **must** be given a unique `key` prop.\n *\n * Any `motion` components that have an `exit` property defined will animate out when removed from\n * the tree.\n *\n * ```jsx\n * import { motion, AnimatePresence } from 'framer-motion'\n *\n * export const Items = ({ items }) => (\n * <AnimatePresence>\n * {items.map(item => (\n * <motion.div\n * key={item.id}\n * initial={{ opacity: 0 }}\n * animate={{ opacity: 1 }}\n * exit={{ opacity: 0 }}\n * />\n * ))}\n * </AnimatePresence>\n * )\n * ```\n *\n * You can sequence exit animations throughout a tree using variants.\n *\n * If a child contains multiple `motion` components with `exit` props, it will only unmount the child\n * once all `motion` components have finished animating out. Likewise, any components using\n * `usePresence` all need to call `safeToRemove`.\n *\n * @public\n */\nconst AnimatePresence = ({ children, custom, initial = true, onExitComplete, exitBeforeEnter, presenceAffectsLayout = true, mode = \"sync\", }) => {\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_1__.invariant)(!exitBeforeEnter, \"Replace exitBeforeEnter with mode='wait'\");\n // We want to force a re-render once all exiting animations have finished. We\n // either use a local forceRender function, or one from a parent context if it exists.\n const forceRender = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_2__.LayoutGroupContext).forceRender || (0,_utils_use_force_update_mjs__WEBPACK_IMPORTED_MODULE_3__.useForceUpdate)()[0];\n const isMounted = (0,_utils_use_is_mounted_mjs__WEBPACK_IMPORTED_MODULE_4__.useIsMounted)();\n // Filter out any children that aren't ReactElements. We can only track ReactElements with a props.key\n const filteredChildren = onlyElements(children);\n let childrenToRender = filteredChildren;\n const exitingChildren = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(new Map()).current;\n // Keep a living record of the children we're actually rendering so we\n // can diff to figure out which are entering and exiting\n const presentChildren = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(childrenToRender);\n // A lookup table to quickly reference components by key\n const allChildren = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(new Map()).current;\n // If this is the initial component render, just deal with logic surrounding whether\n // we play onMount animations or not.\n const isInitialRender = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(true);\n (0,_utils_use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_5__.useIsomorphicLayoutEffect)(() => {\n isInitialRender.current = false;\n updateChildLookup(filteredChildren, allChildren);\n presentChildren.current = childrenToRender;\n });\n (0,_utils_use_unmount_effect_mjs__WEBPACK_IMPORTED_MODULE_6__.useUnmountEffect)(() => {\n isInitialRender.current = true;\n allChildren.clear();\n exitingChildren.clear();\n });\n if (isInitialRender.current) {\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, childrenToRender.map((child) => (react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PresenceChild_mjs__WEBPACK_IMPORTED_MODULE_7__.PresenceChild, { key: getChildKey(child), isPresent: true, initial: initial ? undefined : false, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child)))));\n }\n // If this is a subsequent render, deal with entering and exiting children\n childrenToRender = [...childrenToRender];\n // Diff the keys of the currently-present and target children to update our\n // exiting list.\n const presentKeys = presentChildren.current.map(getChildKey);\n const targetKeys = filteredChildren.map(getChildKey);\n // Diff the present children with our target children and mark those that are exiting\n const numPresent = presentKeys.length;\n for (let i = 0; i < numPresent; i++) {\n const key = presentKeys[i];\n if (targetKeys.indexOf(key) === -1 && !exitingChildren.has(key)) {\n exitingChildren.set(key, undefined);\n }\n }\n // If we currently have exiting children, and we're deferring rendering incoming children\n // until after all current children have exiting, empty the childrenToRender array\n if (mode === \"wait\" && exitingChildren.size) {\n childrenToRender = [];\n }\n // Loop through all currently exiting components and clone them to overwrite `animate`\n // with any `exit` prop they might have defined.\n exitingChildren.forEach((component, key) => {\n // If this component is actually entering again, early return\n if (targetKeys.indexOf(key) !== -1)\n return;\n const child = allChildren.get(key);\n if (!child)\n return;\n const insertionIndex = presentKeys.indexOf(key);\n let exitingComponent = component;\n if (!exitingComponent) {\n const onExit = () => {\n // clean up the exiting children map\n exitingChildren.delete(key);\n // compute the keys of children that were rendered once but are no longer present\n // this could happen in case of too many fast consequent renderings\n // @link https://github.com/framer/motion/issues/2023\n const leftOverKeys = Array.from(allChildren.keys()).filter((childKey) => !targetKeys.includes(childKey));\n // clean up the all children map\n leftOverKeys.forEach((leftOverKey) => allChildren.delete(leftOverKey));\n // make sure to render only the children that are actually visible\n presentChildren.current = filteredChildren.filter((presentChild) => {\n const presentChildKey = getChildKey(presentChild);\n return (\n // filter out the node exiting\n presentChildKey === key ||\n // filter out the leftover children\n leftOverKeys.includes(presentChildKey));\n });\n // Defer re-rendering until all exiting children have indeed left\n if (!exitingChildren.size) {\n if (isMounted.current === false)\n return;\n forceRender();\n onExitComplete && onExitComplete();\n }\n };\n exitingComponent = (react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PresenceChild_mjs__WEBPACK_IMPORTED_MODULE_7__.PresenceChild, { key: getChildKey(child), isPresent: false, onExitComplete: onExit, custom: custom, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child));\n exitingChildren.set(key, exitingComponent);\n }\n childrenToRender.splice(insertionIndex, 0, exitingComponent);\n });\n // Add `MotionContext` even to children that don't need it to ensure we're rendering\n // the same tree between renders\n childrenToRender = childrenToRender.map((child) => {\n const key = child.key;\n return exitingChildren.has(key) ? (child) : (react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PresenceChild_mjs__WEBPACK_IMPORTED_MODULE_7__.PresenceChild, { key: getChildKey(child), isPresent: true, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child));\n });\n if ( true &&\n mode === \"wait\" &&\n childrenToRender.length > 1) {\n console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to \"wait\". This will lead to odd visual behaviour.`);\n }\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, exitingChildren.size\n ? childrenToRender\n : childrenToRender.map((child) => (0,react__WEBPACK_IMPORTED_MODULE_0__.cloneElement)(child))));\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29tcG9uZW50cy9BbmltYXRlUHJlc2VuY2UvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUErQjtBQUNvRDtBQUNqQjtBQUNKO0FBQ1Y7QUFDc0I7QUFDUTtBQUNaO0FBQ25COztBQUVuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSSwyQ0FBUTtBQUNaLFlBQVkscURBQWM7QUFDMUI7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksMEJBQTBCO0FBQ3RDO0FBQ0EsMkJBQTJCLE9BQU87QUFDbEM7QUFDQSxRQUFRO0FBQ1I7QUFDQSxnQkFBZ0I7QUFDaEIsc0JBQXNCO0FBQ3RCLHNCQUFzQjtBQUN0QixtQkFBbUI7QUFDbkI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDJCQUEyQixpSEFBaUg7QUFDNUksSUFBSSw0REFBUztBQUNiO0FBQ0E7QUFDQSx3QkFBd0IsaURBQVUsQ0FBQywrRUFBa0IsaUJBQWlCLDJFQUFjO0FBQ3BGLHNCQUFzQix1RUFBWTtBQUNsQztBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsNkNBQU07QUFDbEM7QUFDQTtBQUNBLDRCQUE0Qiw2Q0FBTTtBQUNsQztBQUNBLHdCQUF3Qiw2Q0FBTTtBQUM5QjtBQUNBO0FBQ0EsNEJBQTRCLDZDQUFNO0FBQ2xDLElBQUksMkZBQXlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxJQUFJLCtFQUFnQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxnQkFBZ0IsZ0RBQW1CLENBQUMsMkNBQWMseUNBQXlDLGdEQUFtQixDQUFDLDZEQUFhLElBQUksMElBQTBJO0FBQzFRO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsZ0RBQW1CLENBQUMsNkRBQWEsSUFBSSw2SUFBNkk7QUFDbE47QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscURBQXFELGdEQUFtQixDQUFDLDZEQUFhLElBQUksb0dBQW9HO0FBQzlMLEtBQUs7QUFDTCxRQUFRLEtBQXFDO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnREFBbUIsQ0FBQywyQ0FBYztBQUM5QztBQUNBLDBDQUEwQyxtREFBWTtBQUN0RDs7QUFFMkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9jb21wb25lbnRzL0FuaW1hdGVQcmVzZW5jZS9pbmRleC5tanM/NTFiOSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VSZWYsIGNsb25lRWxlbWVudCwgQ2hpbGRyZW4sIGlzVmFsaWRFbGVtZW50IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRm9yY2VVcGRhdGUgfSBmcm9tICcuLi8uLi91dGlscy91c2UtZm9yY2UtdXBkYXRlLm1qcyc7XG5pbXBvcnQgeyB1c2VJc01vdW50ZWQgfSBmcm9tICcuLi8uLi91dGlscy91c2UtaXMtbW91bnRlZC5tanMnO1xuaW1wb3J0IHsgUHJlc2VuY2VDaGlsZCB9IGZyb20gJy4vUHJlc2VuY2VDaGlsZC5tanMnO1xuaW1wb3J0IHsgTGF5b3V0R3JvdXBDb250ZXh0IH0gZnJvbSAnLi4vLi4vY29udGV4dC9MYXlvdXRHcm91cENvbnRleHQubWpzJztcbmltcG9ydCB7IHVzZUlzb21vcnBoaWNMYXlvdXRFZmZlY3QgfSBmcm9tICcuLi8uLi91dGlscy91c2UtaXNvbW9ycGhpYy1lZmZlY3QubWpzJztcbmltcG9ydCB7IHVzZVVubW91bnRFZmZlY3QgfSBmcm9tICcuLi8uLi91dGlscy91c2UtdW5tb3VudC1lZmZlY3QubWpzJztcbmltcG9ydCB7IGludmFyaWFudCB9IGZyb20gJy4uLy4uL3V0aWxzL2Vycm9ycy5tanMnO1xuXG5jb25zdCBnZXRDaGlsZEtleSA9IChjaGlsZCkgPT4gY2hpbGQua2V5IHx8IFwiXCI7XG5mdW5jdGlvbiB1cGRhdGVDaGlsZExvb2t1cChjaGlsZHJlbiwgYWxsQ2hpbGRyZW4pIHtcbiAgICBjaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICBjb25zdCBrZXkgPSBnZXRDaGlsZEtleShjaGlsZCk7XG4gICAgICAgIGFsbENoaWxkcmVuLnNldChrZXksIGNoaWxkKTtcbiAgICB9KTtcbn1cbmZ1bmN0aW9uIG9ubHlFbGVtZW50cyhjaGlsZHJlbikge1xuICAgIGNvbnN0IGZpbHRlcmVkID0gW107XG4gICAgLy8gV2UgdXNlIGZvckVhY2ggaGVyZSBpbnN0ZWFkIG9mIG1hcCBhcyBtYXAgbXV0YXRlcyB0aGUgY29tcG9uZW50IGtleSBieSBwcmVwcmVuZGluZyBgLiRgXG4gICAgQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgKGNoaWxkKSA9PiB7XG4gICAgICAgIGlmIChpc1ZhbGlkRWxlbWVudChjaGlsZCkpXG4gICAgICAgICAgICBmaWx0ZXJlZC5wdXNoKGNoaWxkKTtcbiAgICB9KTtcbiAgICByZXR1cm4gZmlsdGVyZWQ7XG59XG4vKipcbiAqIGBBbmltYXRlUHJlc2VuY2VgIGVuYWJsZXMgdGhlIGFuaW1hdGlvbiBvZiBjb21wb25lbnRzIHRoYXQgaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUgdHJlZS5cbiAqXG4gKiBXaGVuIGFkZGluZy9yZW1vdmluZyBtb3JlIHRoYW4gYSBzaW5nbGUgY2hpbGQsIGV2ZXJ5IGNoaWxkICoqbXVzdCoqIGJlIGdpdmVuIGEgdW5pcXVlIGBrZXlgIHByb3AuXG4gKlxuICogQW55IGBtb3Rpb25gIGNvbXBvbmVudHMgdGhhdCBoYXZlIGFuIGBleGl0YCBwcm9wZXJ0eSBkZWZpbmVkIHdpbGwgYW5pbWF0ZSBvdXQgd2hlbiByZW1vdmVkIGZyb21cbiAqIHRoZSB0cmVlLlxuICpcbiAqIGBgYGpzeFxuICogaW1wb3J0IHsgbW90aW9uLCBBbmltYXRlUHJlc2VuY2UgfSBmcm9tICdmcmFtZXItbW90aW9uJ1xuICpcbiAqIGV4cG9ydCBjb25zdCBJdGVtcyA9ICh7IGl0ZW1zIH0pID0+IChcbiAqICAgPEFuaW1hdGVQcmVzZW5jZT5cbiAqICAgICB7aXRlbXMubWFwKGl0ZW0gPT4gKFxuICogICAgICAgPG1vdGlvbi5kaXZcbiAqICAgICAgICAga2V5PXtpdGVtLmlkfVxuICogICAgICAgICBpbml0aWFsPXt7IG9wYWNpdHk6IDAgfX1cbiAqICAgICAgICAgYW5pbWF0ZT17eyBvcGFjaXR5OiAxIH19XG4gKiAgICAgICAgIGV4aXQ9e3sgb3BhY2l0eTogMCB9fVxuICogICAgICAgLz5cbiAqICAgICApKX1cbiAqICAgPC9BbmltYXRlUHJlc2VuY2U+XG4gKiApXG4gKiBgYGBcbiAqXG4gKiBZb3UgY2FuIHNlcXVlbmNlIGV4aXQgYW5pbWF0aW9ucyB0aHJvdWdob3V0IGEgdHJlZSB1c2luZyB2YXJpYW50cy5cbiAqXG4gKiBJZiBhIGNoaWxkIGNvbnRhaW5zIG11bHRpcGxlIGBtb3Rpb25gIGNvbXBvbmVudHMgd2l0aCBgZXhpdGAgcHJvcHMsIGl0IHdpbGwgb25seSB1bm1vdW50IHRoZSBjaGlsZFxuICogb25jZSBhbGwgYG1vdGlvbmAgY29tcG9uZW50cyBoYXZlIGZpbmlzaGVkIGFuaW1hdGluZyBvdXQuIExpa2V3aXNlLCBhbnkgY29tcG9uZW50cyB1c2luZ1xuICogYHVzZVByZXNlbmNlYCBhbGwgbmVlZCB0byBjYWxsIGBzYWZlVG9SZW1vdmVgLlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuY29uc3QgQW5pbWF0ZVByZXNlbmNlID0gKHsgY2hpbGRyZW4sIGN1c3RvbSwgaW5pdGlhbCA9IHRydWUsIG9uRXhpdENvbXBsZXRlLCBleGl0QmVmb3JlRW50ZXIsIHByZXNlbmNlQWZmZWN0c0xheW91dCA9IHRydWUsIG1vZGUgPSBcInN5bmNcIiwgfSkgPT4ge1xuICAgIGludmFyaWFudCghZXhpdEJlZm9yZUVudGVyLCBcIlJlcGxhY2UgZXhpdEJlZm9yZUVudGVyIHdpdGggbW9kZT0nd2FpdCdcIik7XG4gICAgLy8gV2Ugd2FudCB0byBmb3JjZSBhIHJlLXJlbmRlciBvbmNlIGFsbCBleGl0aW5nIGFuaW1hdGlvbnMgaGF2ZSBmaW5pc2hlZC4gV2VcbiAgICAvLyBlaXRoZXIgdXNlIGEgbG9jYWwgZm9yY2VSZW5kZXIgZnVuY3Rpb24sIG9yIG9uZSBmcm9tIGEgcGFyZW50IGNvbnRleHQgaWYgaXQgZXhpc3RzLlxuICAgIGNvbnN0IGZvcmNlUmVuZGVyID0gdXNlQ29udGV4dChMYXlvdXRHcm91cENvbnRleHQpLmZvcmNlUmVuZGVyIHx8IHVzZUZvcmNlVXBkYXRlKClbMF07XG4gICAgY29uc3QgaXNNb3VudGVkID0gdXNlSXNNb3VudGVkKCk7XG4gICAgLy8gRmlsdGVyIG91dCBhbnkgY2hpbGRyZW4gdGhhdCBhcmVuJ3QgUmVhY3RFbGVtZW50cy4gV2UgY2FuIG9ubHkgdHJhY2sgUmVhY3RFbGVtZW50cyB3aXRoIGEgcHJvcHMua2V5XG4gICAgY29uc3QgZmlsdGVyZWRDaGlsZHJlbiA9IG9ubHlFbGVtZW50cyhjaGlsZHJlbik7XG4gICAgbGV0IGNoaWxkcmVuVG9SZW5kZXIgPSBmaWx0ZXJlZENoaWxkcmVuO1xuICAgIGNvbnN0IGV4aXRpbmdDaGlsZHJlbiA9IHVzZVJlZihuZXcgTWFwKCkpLmN1cnJlbnQ7XG4gICAgLy8gS2VlcCBhIGxpdmluZyByZWNvcmQgb2YgdGhlIGNoaWxkcmVuIHdlJ3JlIGFjdHVhbGx5IHJlbmRlcmluZyBzbyB3ZVxuICAgIC8vIGNhbiBkaWZmIHRvIGZpZ3VyZSBvdXQgd2hpY2ggYXJlIGVudGVyaW5nIGFuZCBleGl0aW5nXG4gICAgY29uc3QgcHJlc2VudENoaWxkcmVuID0gdXNlUmVmKGNoaWxkcmVuVG9SZW5kZXIpO1xuICAgIC8vIEEgbG9va3VwIHRhYmxlIHRvIHF1aWNrbHkgcmVmZXJlbmNlIGNvbXBvbmVudHMgYnkga2V5XG4gICAgY29uc3QgYWxsQ2hpbGRyZW4gPSB1c2VSZWYobmV3IE1hcCgpKS5jdXJyZW50O1xuICAgIC8vIElmIHRoaXMgaXMgdGhlIGluaXRpYWwgY29tcG9uZW50IHJlbmRlciwganVzdCBkZWFsIHdpdGggbG9naWMgc3Vycm91bmRpbmcgd2hldGhlclxuICAgIC8vIHdlIHBsYXkgb25Nb3VudCBhbmltYXRpb25zIG9yIG5vdC5cbiAgICBjb25zdCBpc0luaXRpYWxSZW5kZXIgPSB1c2VSZWYodHJ1ZSk7XG4gICAgdXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlzSW5pdGlhbFJlbmRlci5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIHVwZGF0ZUNoaWxkTG9va3VwKGZpbHRlcmVkQ2hpbGRyZW4sIGFsbENoaWxkcmVuKTtcbiAgICAgICAgcHJlc2VudENoaWxkcmVuLmN1cnJlbnQgPSBjaGlsZHJlblRvUmVuZGVyO1xuICAgIH0pO1xuICAgIHVzZVVubW91bnRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpc0luaXRpYWxSZW5kZXIuY3VycmVudCA9IHRydWU7XG4gICAgICAgIGFsbENoaWxkcmVuLmNsZWFyKCk7XG4gICAgICAgIGV4aXRpbmdDaGlsZHJlbi5jbGVhcigpO1xuICAgIH0pO1xuICAgIGlmIChpc0luaXRpYWxSZW5kZXIuY3VycmVudCkge1xuICAgICAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoUmVhY3QuRnJhZ21lbnQsIG51bGwsIGNoaWxkcmVuVG9SZW5kZXIubWFwKChjaGlsZCkgPT4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoUHJlc2VuY2VDaGlsZCwgeyBrZXk6IGdldENoaWxkS2V5KGNoaWxkKSwgaXNQcmVzZW50OiB0cnVlLCBpbml0aWFsOiBpbml0aWFsID8gdW5kZWZpbmVkIDogZmFsc2UsIHByZXNlbmNlQWZmZWN0c0xheW91dDogcHJlc2VuY2VBZmZlY3RzTGF5b3V0LCBtb2RlOiBtb2RlIH0sIGNoaWxkKSkpKSk7XG4gICAgfVxuICAgIC8vIElmIHRoaXMgaXMgYSBzdWJzZXF1ZW50IHJlbmRlciwgZGVhbCB3aXRoIGVudGVyaW5nIGFuZCBleGl0aW5nIGNoaWxkcmVuXG4gICAgY2hpbGRyZW5Ub1JlbmRlciA9IFsuLi5jaGlsZHJlblRvUmVuZGVyXTtcbiAgICAvLyBEaWZmIHRoZSBrZXlzIG9mIHRoZSBjdXJyZW50bHktcHJlc2VudCBhbmQgdGFyZ2V0IGNoaWxkcmVuIHRvIHVwZGF0ZSBvdXJcbiAgICAvLyBleGl0aW5nIGxpc3QuXG4gICAgY29uc3QgcHJlc2VudEtleXMgPSBwcmVzZW50Q2hpbGRyZW4uY3VycmVudC5tYXAoZ2V0Q2hpbGRLZXkpO1xuICAgIGNvbnN0IHRhcmdldEtleXMgPSBmaWx0ZXJlZENoaWxkcmVuLm1hcChnZXRDaGlsZEtleSk7XG4gICAgLy8gRGlmZiB0aGUgcHJlc2VudCBjaGlsZHJlbiB3aXRoIG91ciB0YXJnZXQgY2hpbGRyZW4gYW5kIG1hcmsgdGhvc2UgdGhhdCBhcmUgZXhpdGluZ1xuICAgIGNvbnN0IG51bVByZXNlbnQgPSBwcmVzZW50S2V5cy5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1QcmVzZW50OyBpKyspIHtcbiAgICAgICAgY29uc3Qga2V5ID0gcHJlc2VudEtleXNbaV07XG4gICAgICAgIGlmICh0YXJnZXRLZXlzLmluZGV4T2Yoa2V5KSA9PT0gLTEgJiYgIWV4aXRpbmdDaGlsZHJlbi5oYXMoa2V5KSkge1xuICAgICAgICAgICAgZXhpdGluZ0NoaWxkcmVuLnNldChrZXksIHVuZGVmaW5lZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gSWYgd2UgY3VycmVudGx5IGhhdmUgZXhpdGluZyBjaGlsZHJlbiwgYW5kIHdlJ3JlIGRlZmVycmluZyByZW5kZXJpbmcgaW5jb21pbmcgY2hpbGRyZW5cbiAgICAvLyB1bnRpbCBhZnRlciBhbGwgY3VycmVudCBjaGlsZHJlbiBoYXZlIGV4aXRpbmcsIGVtcHR5IHRoZSBjaGlsZHJlblRvUmVuZGVyIGFycmF5XG4gICAgaWYgKG1vZGUgPT09IFwid2FpdFwiICYmIGV4aXRpbmdDaGlsZHJlbi5zaXplKSB7XG4gICAgICAgIGNoaWxkcmVuVG9SZW5kZXIgPSBbXTtcbiAgICB9XG4gICAgLy8gTG9vcCB0aHJvdWdoIGFsbCBjdXJyZW50bHkgZXhpdGluZyBjb21wb25lbnRzIGFuZCBjbG9uZSB0aGVtIHRvIG92ZXJ3cml0ZSBgYW5pbWF0ZWBcbiAgICAvLyB3aXRoIGFueSBgZXhpdGAgcHJvcCB0aGV5IG1pZ2h0IGhhdmUgZGVmaW5lZC5cbiAgICBleGl0aW5nQ2hpbGRyZW4uZm9yRWFjaCgoY29tcG9uZW50LCBrZXkpID0+IHtcbiAgICAgICAgLy8gSWYgdGhpcyBjb21wb25lbnQgaXMgYWN0dWFsbHkgZW50ZXJpbmcgYWdhaW4sIGVhcmx5IHJldHVyblxuICAgICAgICBpZiAodGFyZ2V0S2V5cy5pbmRleE9mKGtleSkgIT09IC0xKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBjaGlsZCA9IGFsbENoaWxkcmVuLmdldChrZXkpO1xuICAgICAgICBpZiAoIWNoaWxkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBpbnNlcnRpb25JbmRleCA9IHByZXNlbnRLZXlzLmluZGV4T2Yoa2V5KTtcbiAgICAgICAgbGV0IGV4aXRpbmdDb21wb25lbnQgPSBjb21wb25lbnQ7XG4gICAgICAgIGlmICghZXhpdGluZ0NvbXBvbmVudCkge1xuICAgICAgICAgICAgY29uc3Qgb25FeGl0ID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGNsZWFuIHVwIHRoZSBleGl0aW5nIGNoaWxkcmVuIG1hcFxuICAgICAgICAgICAgICAgIGV4aXRpbmdDaGlsZHJlbi5kZWxldGUoa2V5KTtcbiAgICAgICAgICAgICAgICAvLyBjb21wdXRlIHRoZSBrZXlzIG9mIGNoaWxkcmVuIHRoYXQgd2VyZSByZW5kZXJlZCBvbmNlIGJ1dCBhcmUgbm8gbG9uZ2VyIHByZXNlbnRcbiAgICAgICAgICAgICAgICAvLyB0aGlzIGNvdWxkIGhhcHBlbiBpbiBjYXNlIG9mIHRvbyBtYW55IGZhc3QgY29uc2VxdWVudCByZW5kZXJpbmdzXG4gICAgICAgICAgICAgICAgLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2ZyYW1lci9tb3Rpb24vaXNzdWVzLzIwMjNcbiAgICAgICAgICAgICAgICBjb25zdCBsZWZ0T3ZlcktleXMgPSBBcnJheS5mcm9tKGFsbENoaWxkcmVuLmtleXMoKSkuZmlsdGVyKChjaGlsZEtleSkgPT4gIXRhcmdldEtleXMuaW5jbHVkZXMoY2hpbGRLZXkpKTtcbiAgICAgICAgICAgICAgICAvLyBjbGVhbiB1cCB0aGUgYWxsIGNoaWxkcmVuIG1hcFxuICAgICAgICAgICAgICAgIGxlZnRPdmVyS2V5cy5mb3JFYWNoKChsZWZ0T3ZlcktleSkgPT4gYWxsQ2hpbGRyZW4uZGVsZXRlKGxlZnRPdmVyS2V5KSk7XG4gICAgICAgICAgICAgICAgLy8gbWFrZSBzdXJlIHRvIHJlbmRlciBvbmx5IHRoZSBjaGlsZHJlbiB0aGF0IGFyZSBhY3R1YWxseSB2aXNpYmxlXG4gICAgICAgICAgICAgICAgcHJlc2VudENoaWxkcmVuLmN1cnJlbnQgPSBmaWx0ZXJlZENoaWxkcmVuLmZpbHRlcigocHJlc2VudENoaWxkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHByZXNlbnRDaGlsZEtleSA9IGdldENoaWxkS2V5KHByZXNlbnRDaGlsZCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIC8vIGZpbHRlciBvdXQgdGhlIG5vZGUgZXhpdGluZ1xuICAgICAgICAgICAgICAgICAgICBwcmVzZW50Q2hpbGRLZXkgPT09IGtleSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gZmlsdGVyIG91dCB0aGUgbGVmdG92ZXIgY2hpbGRyZW5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnRPdmVyS2V5cy5pbmNsdWRlcyhwcmVzZW50Q2hpbGRLZXkpKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAvLyBEZWZlciByZS1yZW5kZXJpbmcgdW50aWwgYWxsIGV4aXRpbmcgY2hpbGRyZW4gaGF2ZSBpbmRlZWQgbGVmdFxuICAgICAgICAgICAgICAgIGlmICghZXhpdGluZ0NoaWxkcmVuLnNpemUpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzTW91bnRlZC5jdXJyZW50ID09PSBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgZm9yY2VSZW5kZXIoKTtcbiAgICAgICAgICAgICAgICAgICAgb25FeGl0Q29tcGxldGUgJiYgb25FeGl0Q29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZXhpdGluZ0NvbXBvbmVudCA9IChSZWFjdC5jcmVhdGVFbGVtZW50KFByZXNlbmNlQ2hpbGQsIHsga2V5OiBnZXRDaGlsZEtleShjaGlsZCksIGlzUHJlc2VudDogZmFsc2UsIG9uRXhpdENvbXBsZXRlOiBvbkV4aXQsIGN1c3RvbTogY3VzdG9tLCBwcmVzZW5jZUFmZmVjdHNMYXlvdXQ6IHByZXNlbmNlQWZmZWN0c0xheW91dCwgbW9kZTogbW9kZSB9LCBjaGlsZCkpO1xuICAgICAgICAgICAgZXhpdGluZ0NoaWxkcmVuLnNldChrZXksIGV4aXRpbmdDb21wb25lbnQpO1xuICAgICAgICB9XG4gICAgICAgIGNoaWxkcmVuVG9SZW5kZXIuc3BsaWNlKGluc2VydGlvbkluZGV4LCAwLCBleGl0aW5nQ29tcG9uZW50KTtcbiAgICB9KTtcbiAgICAvLyBBZGQgYE1vdGlvbkNvbnRleHRgIGV2ZW4gdG8gY2hpbGRyZW4gdGhhdCBkb24ndCBuZWVkIGl0IHRvIGVuc3VyZSB3ZSdyZSByZW5kZXJpbmdcbiAgICAvLyB0aGUgc2FtZSB0cmVlIGJldHdlZW4gcmVuZGVyc1xuICAgIGNoaWxkcmVuVG9SZW5kZXIgPSBjaGlsZHJlblRvUmVuZGVyLm1hcCgoY2hpbGQpID0+IHtcbiAgICAgICAgY29uc3Qga2V5ID0gY2hpbGQua2V5O1xuICAgICAgICByZXR1cm4gZXhpdGluZ0NoaWxkcmVuLmhhcyhrZXkpID8gKGNoaWxkKSA6IChSZWFjdC5jcmVhdGVFbGVtZW50KFByZXNlbmNlQ2hpbGQsIHsga2V5OiBnZXRDaGlsZEtleShjaGlsZCksIGlzUHJlc2VudDogdHJ1ZSwgcHJlc2VuY2VBZmZlY3RzTGF5b3V0OiBwcmVzZW5jZUFmZmVjdHNMYXlvdXQsIG1vZGU6IG1vZGUgfSwgY2hpbGQpKTtcbiAgICB9KTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiICYmXG4gICAgICAgIG1vZGUgPT09IFwid2FpdFwiICYmXG4gICAgICAgIGNoaWxkcmVuVG9SZW5kZXIubGVuZ3RoID4gMSkge1xuICAgICAgICBjb25zb2xlLndhcm4oYFlvdSdyZSBhdHRlbXB0aW5nIHRvIGFuaW1hdGUgbXVsdGlwbGUgY2hpbGRyZW4gd2l0aGluIEFuaW1hdGVQcmVzZW5jZSwgYnV0IGl0cyBtb2RlIGlzIHNldCB0byBcIndhaXRcIi4gVGhpcyB3aWxsIGxlYWQgdG8gb2RkIHZpc3VhbCBiZWhhdmlvdXIuYCk7XG4gICAgfVxuICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChSZWFjdC5GcmFnbWVudCwgbnVsbCwgZXhpdGluZ0NoaWxkcmVuLnNpemVcbiAgICAgICAgPyBjaGlsZHJlblRvUmVuZGVyXG4gICAgICAgIDogY2hpbGRyZW5Ub1JlbmRlci5tYXAoKGNoaWxkKSA9PiBjbG9uZUVsZW1lbnQoY2hpbGQpKSkpO1xufTtcblxuZXhwb3J0IHsgQW5pbWF0ZVByZXNlbmNlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs":
|
||
/*!****************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs ***!
|
||
\****************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isPresent: function() { return /* binding */ isPresent; },\n/* harmony export */ useIsPresent: function() { return /* binding */ useIsPresent; },\n/* harmony export */ usePresence: function() { return /* binding */ usePresence; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../context/PresenceContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs\");\n\n\n\n/**\n * When a component is the child of `AnimatePresence`, it can use `usePresence`\n * to access information about whether it's still present in the React tree.\n *\n * ```jsx\n * import { usePresence } from \"framer-motion\"\n *\n * export const Component = () => {\n * const [isPresent, safeToRemove] = usePresence()\n *\n * useEffect(() => {\n * !isPresent && setTimeout(safeToRemove, 1000)\n * }, [isPresent])\n *\n * return <div />\n * }\n * ```\n *\n * If `isPresent` is `false`, it means that a component has been removed the tree, but\n * `AnimatePresence` won't really remove it until `safeToRemove` has been called.\n *\n * @public\n */\nfunction usePresence() {\n const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_1__.PresenceContext);\n if (context === null)\n return [true, null];\n const { isPresent, onExitComplete, register } = context;\n // It's safe to call the following hooks conditionally (after an early return) because the context will always\n // either be null or non-null for the lifespan of the component.\n const id = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)();\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => register(id), []);\n const safeToRemove = () => onExitComplete && onExitComplete(id);\n return !isPresent && onExitComplete ? [false, safeToRemove] : [true];\n}\n/**\n * Similar to `usePresence`, except `useIsPresent` simply returns whether or not the component is present.\n * There is no `safeToRemove` function.\n *\n * ```jsx\n * import { useIsPresent } from \"framer-motion\"\n *\n * export const Component = () => {\n * const isPresent = useIsPresent()\n *\n * useEffect(() => {\n * !isPresent && console.log(\"I've been removed!\")\n * }, [isPresent])\n *\n * return <div />\n * }\n * ```\n *\n * @public\n */\nfunction useIsPresent() {\n return isPresent((0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_1__.PresenceContext));\n}\nfunction isPresent(context) {\n return context === null ? true : context.isPresent;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29tcG9uZW50cy9BbmltYXRlUHJlc2VuY2UvdXNlLXByZXNlbmNlLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFxRDtBQUNlOztBQUVwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGlEQUFVLENBQUMseUVBQWU7QUFDOUM7QUFDQTtBQUNBLFlBQVksc0NBQXNDO0FBQ2xEO0FBQ0E7QUFDQSxlQUFlLDRDQUFLO0FBQ3BCLElBQUksZ0RBQVM7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxlQUFlO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLGlEQUFVLENBQUMseUVBQWU7QUFDL0M7QUFDQTtBQUNBO0FBQ0E7O0FBRWdEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29tcG9uZW50cy9BbmltYXRlUHJlc2VuY2UvdXNlLXByZXNlbmNlLm1qcz8yOGRkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNvbnRleHQsIHVzZUlkLCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBQcmVzZW5jZUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L1ByZXNlbmNlQ29udGV4dC5tanMnO1xuXG4vKipcbiAqIFdoZW4gYSBjb21wb25lbnQgaXMgdGhlIGNoaWxkIG9mIGBBbmltYXRlUHJlc2VuY2VgLCBpdCBjYW4gdXNlIGB1c2VQcmVzZW5jZWBcbiAqIHRvIGFjY2VzcyBpbmZvcm1hdGlvbiBhYm91dCB3aGV0aGVyIGl0J3Mgc3RpbGwgcHJlc2VudCBpbiB0aGUgUmVhY3QgdHJlZS5cbiAqXG4gKiBgYGBqc3hcbiAqIGltcG9ydCB7IHVzZVByZXNlbmNlIH0gZnJvbSBcImZyYW1lci1tb3Rpb25cIlxuICpcbiAqIGV4cG9ydCBjb25zdCBDb21wb25lbnQgPSAoKSA9PiB7XG4gKiAgIGNvbnN0IFtpc1ByZXNlbnQsIHNhZmVUb1JlbW92ZV0gPSB1c2VQcmVzZW5jZSgpXG4gKlxuICogICB1c2VFZmZlY3QoKCkgPT4ge1xuICogICAgICFpc1ByZXNlbnQgJiYgc2V0VGltZW91dChzYWZlVG9SZW1vdmUsIDEwMDApXG4gKiAgIH0sIFtpc1ByZXNlbnRdKVxuICpcbiAqICAgcmV0dXJuIDxkaXYgLz5cbiAqIH1cbiAqIGBgYFxuICpcbiAqIElmIGBpc1ByZXNlbnRgIGlzIGBmYWxzZWAsIGl0IG1lYW5zIHRoYXQgYSBjb21wb25lbnQgaGFzIGJlZW4gcmVtb3ZlZCB0aGUgdHJlZSwgYnV0XG4gKiBgQW5pbWF0ZVByZXNlbmNlYCB3b24ndCByZWFsbHkgcmVtb3ZlIGl0IHVudGlsIGBzYWZlVG9SZW1vdmVgIGhhcyBiZWVuIGNhbGxlZC5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIHVzZVByZXNlbmNlKCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KFByZXNlbmNlQ29udGV4dCk7XG4gICAgaWYgKGNvbnRleHQgPT09IG51bGwpXG4gICAgICAgIHJldHVybiBbdHJ1ZSwgbnVsbF07XG4gICAgY29uc3QgeyBpc1ByZXNlbnQsIG9uRXhpdENvbXBsZXRlLCByZWdpc3RlciB9ID0gY29udGV4dDtcbiAgICAvLyBJdCdzIHNhZmUgdG8gY2FsbCB0aGUgZm9sbG93aW5nIGhvb2tzIGNvbmRpdGlvbmFsbHkgKGFmdGVyIGFuIGVhcmx5IHJldHVybikgYmVjYXVzZSB0aGUgY29udGV4dCB3aWxsIGFsd2F5c1xuICAgIC8vIGVpdGhlciBiZSBudWxsIG9yIG5vbi1udWxsIGZvciB0aGUgbGlmZXNwYW4gb2YgdGhlIGNvbXBvbmVudC5cbiAgICBjb25zdCBpZCA9IHVzZUlkKCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHJlZ2lzdGVyKGlkKSwgW10pO1xuICAgIGNvbnN0IHNhZmVUb1JlbW92ZSA9ICgpID0+IG9uRXhpdENvbXBsZXRlICYmIG9uRXhpdENvbXBsZXRlKGlkKTtcbiAgICByZXR1cm4gIWlzUHJlc2VudCAmJiBvbkV4aXRDb21wbGV0ZSA/IFtmYWxzZSwgc2FmZVRvUmVtb3ZlXSA6IFt0cnVlXTtcbn1cbi8qKlxuICogU2ltaWxhciB0byBgdXNlUHJlc2VuY2VgLCBleGNlcHQgYHVzZUlzUHJlc2VudGAgc2ltcGx5IHJldHVybnMgd2hldGhlciBvciBub3QgdGhlIGNvbXBvbmVudCBpcyBwcmVzZW50LlxuICogVGhlcmUgaXMgbm8gYHNhZmVUb1JlbW92ZWAgZnVuY3Rpb24uXG4gKlxuICogYGBganN4XG4gKiBpbXBvcnQgeyB1c2VJc1ByZXNlbnQgfSBmcm9tIFwiZnJhbWVyLW1vdGlvblwiXG4gKlxuICogZXhwb3J0IGNvbnN0IENvbXBvbmVudCA9ICgpID0+IHtcbiAqICAgY29uc3QgaXNQcmVzZW50ID0gdXNlSXNQcmVzZW50KClcbiAqXG4gKiAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gKiAgICAgIWlzUHJlc2VudCAmJiBjb25zb2xlLmxvZyhcIkkndmUgYmVlbiByZW1vdmVkIVwiKVxuICogICB9LCBbaXNQcmVzZW50XSlcbiAqXG4gKiAgIHJldHVybiA8ZGl2IC8+XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBAcHVibGljXG4gKi9cbmZ1bmN0aW9uIHVzZUlzUHJlc2VudCgpIHtcbiAgICByZXR1cm4gaXNQcmVzZW50KHVzZUNvbnRleHQoUHJlc2VuY2VDb250ZXh0KSk7XG59XG5mdW5jdGlvbiBpc1ByZXNlbnQoY29udGV4dCkge1xuICAgIHJldHVybiBjb250ZXh0ID09PSBudWxsID8gdHJ1ZSA6IGNvbnRleHQuaXNQcmVzZW50O1xufVxuXG5leHBvcnQgeyBpc1ByZXNlbnQsIHVzZUlzUHJlc2VudCwgdXNlUHJlc2VuY2UgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LayoutGroupContext: function() { return /* binding */ LayoutGroupContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\nconst LayoutGroupContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9MYXlvdXRHcm91cENvbnRleHQubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXNDOztBQUV0QywyQkFBMkIsb0RBQWEsR0FBRzs7QUFFYiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2NvbnRleHQvTGF5b3V0R3JvdXBDb250ZXh0Lm1qcz82NzdkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbmNvbnN0IExheW91dEdyb3VwQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoe30pO1xuXG5leHBvcnQgeyBMYXlvdXRHcm91cENvbnRleHQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LazyContext.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/LazyContext.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ LazyContext: function() { return /* binding */ LazyContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\nconst LazyContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({ strict: false });\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9MYXp5Q29udGV4dC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBc0M7O0FBRXRDLG9CQUFvQixvREFBYSxHQUFHLGVBQWU7O0FBRTVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9MYXp5Q29udGV4dC5tanM/ZDY2MiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG5jb25zdCBMYXp5Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQoeyBzdHJpY3Q6IGZhbHNlIH0pO1xuXG5leHBvcnQgeyBMYXp5Q29udGV4dCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LazyContext.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MotionConfigContext: function() { return /* binding */ MotionConfigContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/**\n * @public\n */\nconst MotionConfigContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({\n transformPagePoint: (p) => p,\n isStatic: false,\n reducedMotion: \"never\",\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db25maWdDb250ZXh0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFzQzs7QUFFdEM7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLG9EQUFhO0FBQ3pDO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db25maWdDb250ZXh0Lm1qcz85NjUzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogQHB1YmxpY1xuICovXG5jb25zdCBNb3Rpb25Db25maWdDb250ZXh0ID0gY3JlYXRlQ29udGV4dCh7XG4gICAgdHJhbnNmb3JtUGFnZVBvaW50OiAocCkgPT4gcCxcbiAgICBpc1N0YXRpYzogZmFsc2UsXG4gICAgcmVkdWNlZE1vdGlvbjogXCJuZXZlclwiLFxufSk7XG5cbmV4cG9ydCB7IE1vdGlvbkNvbmZpZ0NvbnRleHQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useCreateMotionContext: function() { return /* binding */ useCreateMotionContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs\");\n\n\n\n\nfunction useCreateMotionContext(props) {\n const { initial, animate } = (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_1__.getCurrentTreeVariants)(props, (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_index_mjs__WEBPACK_IMPORTED_MODULE_2__.MotionContext));\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({ initial, animate }), [variantLabelsAsDependency(initial), variantLabelsAsDependency(animate)]);\n}\nfunction variantLabelsAsDependency(prop) {\n return Array.isArray(prop) ? prop.join(\" \") : prop;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db250ZXh0L2NyZWF0ZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE0QztBQUNBO0FBQ1M7O0FBRXJEO0FBQ0EsWUFBWSxtQkFBbUIsRUFBRSxrRUFBc0IsUUFBUSxpREFBVSxDQUFDLHFEQUFhO0FBQ3ZGLFdBQVcsOENBQU8sVUFBVSxrQkFBa0I7QUFDOUM7QUFDQTtBQUNBO0FBQ0E7O0FBRWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db250ZXh0L2NyZWF0ZS5tanM/ZGRmMyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTW90aW9uQ29udGV4dCB9IGZyb20gJy4vaW5kZXgubWpzJztcbmltcG9ydCB7IGdldEN1cnJlbnRUcmVlVmFyaWFudHMgfSBmcm9tICcuL3V0aWxzLm1qcyc7XG5cbmZ1bmN0aW9uIHVzZUNyZWF0ZU1vdGlvbkNvbnRleHQocHJvcHMpIHtcbiAgICBjb25zdCB7IGluaXRpYWwsIGFuaW1hdGUgfSA9IGdldEN1cnJlbnRUcmVlVmFyaWFudHMocHJvcHMsIHVzZUNvbnRleHQoTW90aW9uQ29udGV4dCkpO1xuICAgIHJldHVybiB1c2VNZW1vKCgpID0+ICh7IGluaXRpYWwsIGFuaW1hdGUgfSksIFt2YXJpYW50TGFiZWxzQXNEZXBlbmRlbmN5KGluaXRpYWwpLCB2YXJpYW50TGFiZWxzQXNEZXBlbmRlbmN5KGFuaW1hdGUpXSk7XG59XG5mdW5jdGlvbiB2YXJpYW50TGFiZWxzQXNEZXBlbmRlbmN5KHByb3ApIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShwcm9wKSA/IHByb3Auam9pbihcIiBcIikgOiBwcm9wO1xufVxuXG5leHBvcnQgeyB1c2VDcmVhdGVNb3Rpb25Db250ZXh0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MotionContext: function() { return /* binding */ MotionContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\nconst MotionContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db250ZXh0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFzQzs7QUFFdEMsc0JBQXNCLG9EQUFhLEdBQUc7O0FBRWIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9jb250ZXh0L01vdGlvbkNvbnRleHQvaW5kZXgubWpzP2RlNzgiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ29udGV4dCB9IGZyb20gJ3JlYWN0JztcblxuY29uc3QgTW90aW9uQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQoe30pO1xuXG5leHBvcnQgeyBNb3Rpb25Db250ZXh0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getCurrentTreeVariants: function() { return /* binding */ getCurrentTreeVariants; }\n/* harmony export */ });\n/* harmony import */ var _render_utils_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../render/utils/is-variant-label.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs\");\n/* harmony import */ var _render_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../render/utils/is-controlling-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs\");\n\n\n\nfunction getCurrentTreeVariants(props, context) {\n if ((0,_render_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_0__.isControllingVariants)(props)) {\n const { initial, animate } = props;\n return {\n initial: initial === false || (0,_render_utils_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_1__.isVariantLabel)(initial)\n ? initial\n : undefined,\n animate: (0,_render_utils_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_1__.isVariantLabel)(animate) ? animate : undefined,\n };\n }\n return props.inherit !== false ? context : {};\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db250ZXh0L3V0aWxzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBeUU7QUFDYzs7QUFFdkY7QUFDQSxRQUFRLGdHQUFxQjtBQUM3QixnQkFBZ0IsbUJBQW1CO0FBQ25DO0FBQ0EsMENBQTBDLGtGQUFjO0FBQ3hEO0FBQ0E7QUFDQSxxQkFBcUIsa0ZBQWM7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7O0FBRWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Nb3Rpb25Db250ZXh0L3V0aWxzLm1qcz9hMGQzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzVmFyaWFudExhYmVsIH0gZnJvbSAnLi4vLi4vcmVuZGVyL3V0aWxzL2lzLXZhcmlhbnQtbGFiZWwubWpzJztcbmltcG9ydCB7IGlzQ29udHJvbGxpbmdWYXJpYW50cyB9IGZyb20gJy4uLy4uL3JlbmRlci91dGlscy9pcy1jb250cm9sbGluZy12YXJpYW50cy5tanMnO1xuXG5mdW5jdGlvbiBnZXRDdXJyZW50VHJlZVZhcmlhbnRzKHByb3BzLCBjb250ZXh0KSB7XG4gICAgaWYgKGlzQ29udHJvbGxpbmdWYXJpYW50cyhwcm9wcykpIHtcbiAgICAgICAgY29uc3QgeyBpbml0aWFsLCBhbmltYXRlIH0gPSBwcm9wcztcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGluaXRpYWw6IGluaXRpYWwgPT09IGZhbHNlIHx8IGlzVmFyaWFudExhYmVsKGluaXRpYWwpXG4gICAgICAgICAgICAgICAgPyBpbml0aWFsXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBhbmltYXRlOiBpc1ZhcmlhbnRMYWJlbChhbmltYXRlKSA/IGFuaW1hdGUgOiB1bmRlZmluZWQsXG4gICAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBwcm9wcy5pbmhlcml0ICE9PSBmYWxzZSA/IGNvbnRleHQgOiB7fTtcbn1cblxuZXhwb3J0IHsgZ2V0Q3VycmVudFRyZWVWYXJpYW50cyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/PresenceContext.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PresenceContext: function() { return /* binding */ PresenceContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/**\n * @public\n */\nconst PresenceContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(null);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9QcmVzZW5jZUNvbnRleHQubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXNDOztBQUV0QztBQUNBO0FBQ0E7QUFDQSx3QkFBd0Isb0RBQWE7O0FBRVYiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9jb250ZXh0L1ByZXNlbmNlQ29udGV4dC5tanM/ZmMzZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAncmVhY3QnO1xuXG4vKipcbiAqIEBwdWJsaWNcbiAqL1xuY29uc3QgUHJlc2VuY2VDb250ZXh0ID0gY3JlYXRlQ29udGV4dChudWxsKTtcblxuZXhwb3J0IHsgUHJlc2VuY2VDb250ZXh0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SwitchLayoutGroupContext: function() { return /* binding */ SwitchLayoutGroupContext; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/**\n * Internal, exported only for usage in Framer\n */\nconst SwitchLayoutGroupContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)({});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvY29udGV4dC9Td2l0Y2hMYXlvdXRHcm91cENvbnRleHQubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXNDOztBQUV0QztBQUNBO0FBQ0E7QUFDQSxpQ0FBaUMsb0RBQWEsR0FBRzs7QUFFYiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2NvbnRleHQvU3dpdGNoTGF5b3V0R3JvdXBDb250ZXh0Lm1qcz9hM2I0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogSW50ZXJuYWwsIGV4cG9ydGVkIG9ubHkgZm9yIHVzYWdlIGluIEZyYW1lclxuICovXG5jb25zdCBTd2l0Y2hMYXlvdXRHcm91cENvbnRleHQgPSBjcmVhdGVDb250ZXh0KHt9KTtcblxuZXhwb3J0IHsgU3dpdGNoTGF5b3V0R3JvdXBDb250ZXh0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/debug/record.mjs":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/debug/record.mjs ***!
|
||
\*************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ record: function() { return /* binding */ record; }\n/* harmony export */ });\nfunction record(data) {\n if (window.MotionDebug) {\n window.MotionDebug.record(data);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZGVidWcvcmVjb3JkLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFa0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9kZWJ1Zy9yZWNvcmQubWpzP2JiZmEiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gcmVjb3JkKGRhdGEpIHtcbiAgICBpZiAod2luZG93Lk1vdGlvbkRlYnVnKSB7XG4gICAgICAgIHdpbmRvdy5Nb3Rpb25EZWJ1Zy5yZWNvcmQoZGF0YSk7XG4gICAgfVxufVxuXG5leHBvcnQgeyByZWNvcmQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/debug/record.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/anticipate.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/anticipate.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ anticipate: function() { return /* binding */ anticipate; }\n/* harmony export */ });\n/* harmony import */ var _back_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./back.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/back.mjs\");\n\n\nconst anticipate = (p) => (p *= 2) < 1 ? 0.5 * (0,_back_mjs__WEBPACK_IMPORTED_MODULE_0__.backIn)(p) : 0.5 * (2 - Math.pow(2, -10 * (p - 1)));\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2FudGljaXBhdGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQW9DOztBQUVwQywrQ0FBK0MsaURBQU07O0FBRS9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2FudGljaXBhdGUubWpzPzBiZTMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYmFja0luIH0gZnJvbSAnLi9iYWNrLm1qcyc7XG5cbmNvbnN0IGFudGljaXBhdGUgPSAocCkgPT4gKHAgKj0gMikgPCAxID8gMC41ICogYmFja0luKHApIDogMC41ICogKDIgLSBNYXRoLnBvdygyLCAtMTAgKiAocCAtIDEpKSk7XG5cbmV4cG9ydCB7IGFudGljaXBhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/anticipate.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/back.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/back.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ backIn: function() { return /* binding */ backIn; },\n/* harmony export */ backInOut: function() { return /* binding */ backInOut; },\n/* harmony export */ backOut: function() { return /* binding */ backOut; }\n/* harmony export */ });\n/* harmony import */ var _cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cubic-bezier.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs\");\n/* harmony import */ var _modifiers_mirror_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modifiers/mirror.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs\");\n/* harmony import */ var _modifiers_reverse_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/reverse.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs\");\n\n\n\n\nconst backOut = (0,_cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__.cubicBezier)(0.33, 1.53, 0.69, 0.99);\nconst backIn = (0,_modifiers_reverse_mjs__WEBPACK_IMPORTED_MODULE_1__.reverseEasing)(backOut);\nconst backInOut = (0,_modifiers_mirror_mjs__WEBPACK_IMPORTED_MODULE_2__.mirrorEasing)(backIn);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2JhY2subWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFpRDtBQUNLO0FBQ0U7O0FBRXhELGdCQUFnQiw4REFBVztBQUMzQixlQUFlLHFFQUFhO0FBQzVCLGtCQUFrQixtRUFBWTs7QUFFUSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy9iYWNrLm1qcz8zZDgwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGN1YmljQmV6aWVyIH0gZnJvbSAnLi9jdWJpYy1iZXppZXIubWpzJztcbmltcG9ydCB7IG1pcnJvckVhc2luZyB9IGZyb20gJy4vbW9kaWZpZXJzL21pcnJvci5tanMnO1xuaW1wb3J0IHsgcmV2ZXJzZUVhc2luZyB9IGZyb20gJy4vbW9kaWZpZXJzL3JldmVyc2UubWpzJztcblxuY29uc3QgYmFja091dCA9IGN1YmljQmV6aWVyKDAuMzMsIDEuNTMsIDAuNjksIDAuOTkpO1xuY29uc3QgYmFja0luID0gcmV2ZXJzZUVhc2luZyhiYWNrT3V0KTtcbmNvbnN0IGJhY2tJbk91dCA9IG1pcnJvckVhc2luZyhiYWNrSW4pO1xuXG5leHBvcnQgeyBiYWNrSW4sIGJhY2tJbk91dCwgYmFja091dCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/back.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/circ.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/circ.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ circIn: function() { return /* binding */ circIn; },\n/* harmony export */ circInOut: function() { return /* binding */ circInOut; },\n/* harmony export */ circOut: function() { return /* binding */ circOut; }\n/* harmony export */ });\n/* harmony import */ var _modifiers_mirror_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/mirror.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs\");\n/* harmony import */ var _modifiers_reverse_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modifiers/reverse.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs\");\n\n\n\nconst circIn = (p) => 1 - Math.sin(Math.acos(p));\nconst circOut = (0,_modifiers_reverse_mjs__WEBPACK_IMPORTED_MODULE_0__.reverseEasing)(circIn);\nconst circInOut = (0,_modifiers_mirror_mjs__WEBPACK_IMPORTED_MODULE_1__.mirrorEasing)(circIn);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2NpcmMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXNEO0FBQ0U7O0FBRXhEO0FBQ0EsZ0JBQWdCLHFFQUFhO0FBQzdCLGtCQUFrQixtRUFBWTs7QUFFUSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy9jaXJjLm1qcz9kYmI2Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1pcnJvckVhc2luZyB9IGZyb20gJy4vbW9kaWZpZXJzL21pcnJvci5tanMnO1xuaW1wb3J0IHsgcmV2ZXJzZUVhc2luZyB9IGZyb20gJy4vbW9kaWZpZXJzL3JldmVyc2UubWpzJztcblxuY29uc3QgY2lyY0luID0gKHApID0+IDEgLSBNYXRoLnNpbihNYXRoLmFjb3MocCkpO1xuY29uc3QgY2lyY091dCA9IHJldmVyc2VFYXNpbmcoY2lyY0luKTtcbmNvbnN0IGNpcmNJbk91dCA9IG1pcnJvckVhc2luZyhjaXJjSW4pO1xuXG5leHBvcnQgeyBjaXJjSW4sIGNpcmNJbk91dCwgY2lyY091dCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/circ.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cubicBezier: function() { return /* binding */ cubicBezier; }\n/* harmony export */ });\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n\n\n/*\n Bezier function generator\n This has been modified from Gaëtan Renaudeau's BezierEasing\n https://github.com/gre/bezier-easing/blob/master/src/index.js\n https://github.com/gre/bezier-easing/blob/master/LICENSE\n \n I've removed the newtonRaphsonIterate algo because in benchmarking it\n wasn't noticiably faster than binarySubdivision, indeed removing it\n usually improved times, depending on the curve.\n I also removed the lookup table, as for the added bundle size and loop we're\n only cutting ~4 or so subdivision iterations. I bumped the max iterations up\n to 12 to compensate and this still tended to be faster for no perceivable\n loss in accuracy.\n Usage\n const easeOut = cubicBezier(.17,.67,.83,.67);\n const x = easeOut(0.5); // returns 0.627...\n*/\n// Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.\nconst calcBezier = (t, a1, a2) => (((1.0 - 3.0 * a2 + 3.0 * a1) * t + (3.0 * a2 - 6.0 * a1)) * t + 3.0 * a1) *\n t;\nconst subdivisionPrecision = 0.0000001;\nconst subdivisionMaxIterations = 12;\nfunction binarySubdivide(x, lowerBound, upperBound, mX1, mX2) {\n let currentX;\n let currentT;\n let i = 0;\n do {\n currentT = lowerBound + (upperBound - lowerBound) / 2.0;\n currentX = calcBezier(currentT, mX1, mX2) - x;\n if (currentX > 0.0) {\n upperBound = currentT;\n }\n else {\n lowerBound = currentT;\n }\n } while (Math.abs(currentX) > subdivisionPrecision &&\n ++i < subdivisionMaxIterations);\n return currentT;\n}\nfunction cubicBezier(mX1, mY1, mX2, mY2) {\n // If this is a linear gradient, return linear easing\n if (mX1 === mY1 && mX2 === mY2)\n return _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop;\n const getTForX = (aX) => binarySubdivide(aX, 0, 1, mX1, mX2);\n // If animation is at start/end, return t without easing\n return (t) => t === 0 || t === 1 ? t : calcBezier(getTForX(t), mY1, mY2);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2N1YmljLWJlemllci5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBeUM7O0FBRXpDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRCQUE0QjtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGlEQUFJO0FBQ25CO0FBQ0E7QUFDQTtBQUNBOztBQUV1QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy9jdWJpYy1iZXppZXIubWpzP2M2ZWIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uL3V0aWxzL25vb3AubWpzJztcblxuLypcbiAgQmV6aWVyIGZ1bmN0aW9uIGdlbmVyYXRvclxuICBUaGlzIGhhcyBiZWVuIG1vZGlmaWVkIGZyb20gR2HDq3RhbiBSZW5hdWRlYXUncyBCZXppZXJFYXNpbmdcbiAgaHR0cHM6Ly9naXRodWIuY29tL2dyZS9iZXppZXItZWFzaW5nL2Jsb2IvbWFzdGVyL3NyYy9pbmRleC5qc1xuICBodHRwczovL2dpdGh1Yi5jb20vZ3JlL2Jlemllci1lYXNpbmcvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICBcbiAgSSd2ZSByZW1vdmVkIHRoZSBuZXd0b25SYXBoc29uSXRlcmF0ZSBhbGdvIGJlY2F1c2UgaW4gYmVuY2htYXJraW5nIGl0XG4gIHdhc24ndCBub3RpY2lhYmx5IGZhc3RlciB0aGFuIGJpbmFyeVN1YmRpdmlzaW9uLCBpbmRlZWQgcmVtb3ZpbmcgaXRcbiAgdXN1YWxseSBpbXByb3ZlZCB0aW1lcywgZGVwZW5kaW5nIG9uIHRoZSBjdXJ2ZS5cbiAgSSBhbHNvIHJlbW92ZWQgdGhlIGxvb2t1cCB0YWJsZSwgYXMgZm9yIHRoZSBhZGRlZCBidW5kbGUgc2l6ZSBhbmQgbG9vcCB3ZSdyZVxuICBvbmx5IGN1dHRpbmcgfjQgb3Igc28gc3ViZGl2aXNpb24gaXRlcmF0aW9ucy4gSSBidW1wZWQgdGhlIG1heCBpdGVyYXRpb25zIHVwXG4gIHRvIDEyIHRvIGNvbXBlbnNhdGUgYW5kIHRoaXMgc3RpbGwgdGVuZGVkIHRvIGJlIGZhc3RlciBmb3Igbm8gcGVyY2VpdmFibGVcbiAgbG9zcyBpbiBhY2N1cmFjeS5cbiAgVXNhZ2VcbiAgICBjb25zdCBlYXNlT3V0ID0gY3ViaWNCZXppZXIoLjE3LC42NywuODMsLjY3KTtcbiAgICBjb25zdCB4ID0gZWFzZU91dCgwLjUpOyAvLyByZXR1cm5zIDAuNjI3Li4uXG4qL1xuLy8gUmV0dXJucyB4KHQpIGdpdmVuIHQsIHgxLCBhbmQgeDIsIG9yIHkodCkgZ2l2ZW4gdCwgeTEsIGFuZCB5Mi5cbmNvbnN0IGNhbGNCZXppZXIgPSAodCwgYTEsIGEyKSA9PiAoKCgxLjAgLSAzLjAgKiBhMiArIDMuMCAqIGExKSAqIHQgKyAoMy4wICogYTIgLSA2LjAgKiBhMSkpICogdCArIDMuMCAqIGExKSAqXG4gICAgdDtcbmNvbnN0IHN1YmRpdmlzaW9uUHJlY2lzaW9uID0gMC4wMDAwMDAxO1xuY29uc3Qgc3ViZGl2aXNpb25NYXhJdGVyYXRpb25zID0gMTI7XG5mdW5jdGlvbiBiaW5hcnlTdWJkaXZpZGUoeCwgbG93ZXJCb3VuZCwgdXBwZXJCb3VuZCwgbVgxLCBtWDIpIHtcbiAgICBsZXQgY3VycmVudFg7XG4gICAgbGV0IGN1cnJlbnRUO1xuICAgIGxldCBpID0gMDtcbiAgICBkbyB7XG4gICAgICAgIGN1cnJlbnRUID0gbG93ZXJCb3VuZCArICh1cHBlckJvdW5kIC0gbG93ZXJCb3VuZCkgLyAyLjA7XG4gICAgICAgIGN1cnJlbnRYID0gY2FsY0JlemllcihjdXJyZW50VCwgbVgxLCBtWDIpIC0geDtcbiAgICAgICAgaWYgKGN1cnJlbnRYID4gMC4wKSB7XG4gICAgICAgICAgICB1cHBlckJvdW5kID0gY3VycmVudFQ7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBsb3dlckJvdW5kID0gY3VycmVudFQ7XG4gICAgICAgIH1cbiAgICB9IHdoaWxlIChNYXRoLmFicyhjdXJyZW50WCkgPiBzdWJkaXZpc2lvblByZWNpc2lvbiAmJlxuICAgICAgICArK2kgPCBzdWJkaXZpc2lvbk1heEl0ZXJhdGlvbnMpO1xuICAgIHJldHVybiBjdXJyZW50VDtcbn1cbmZ1bmN0aW9uIGN1YmljQmV6aWVyKG1YMSwgbVkxLCBtWDIsIG1ZMikge1xuICAgIC8vIElmIHRoaXMgaXMgYSBsaW5lYXIgZ3JhZGllbnQsIHJldHVybiBsaW5lYXIgZWFzaW5nXG4gICAgaWYgKG1YMSA9PT0gbVkxICYmIG1YMiA9PT0gbVkyKVxuICAgICAgICByZXR1cm4gbm9vcDtcbiAgICBjb25zdCBnZXRURm9yWCA9IChhWCkgPT4gYmluYXJ5U3ViZGl2aWRlKGFYLCAwLCAxLCBtWDEsIG1YMik7XG4gICAgLy8gSWYgYW5pbWF0aW9uIGlzIGF0IHN0YXJ0L2VuZCwgcmV0dXJuIHQgd2l0aG91dCBlYXNpbmdcbiAgICByZXR1cm4gKHQpID0+IHQgPT09IDAgfHwgdCA9PT0gMSA/IHQgOiBjYWxjQmV6aWVyKGdldFRGb3JYKHQpLCBtWTEsIG1ZMik7XG59XG5cbmV4cG9ydCB7IGN1YmljQmV6aWVyIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/ease.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/ease.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ easeIn: function() { return /* binding */ easeIn; },\n/* harmony export */ easeInOut: function() { return /* binding */ easeInOut; },\n/* harmony export */ easeOut: function() { return /* binding */ easeOut; }\n/* harmony export */ });\n/* harmony import */ var _cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./cubic-bezier.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs\");\n\n\nconst easeIn = (0,_cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__.cubicBezier)(0.42, 0, 1, 1);\nconst easeOut = (0,_cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__.cubicBezier)(0, 0, 0.58, 1);\nconst easeInOut = (0,_cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_0__.cubicBezier)(0.42, 0, 0.58, 1);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL2Vhc2UubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUQ7O0FBRWpELGVBQWUsOERBQVc7QUFDMUIsZ0JBQWdCLDhEQUFXO0FBQzNCLGtCQUFrQiw4REFBVzs7QUFFUyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy9lYXNlLm1qcz83NTNkIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGN1YmljQmV6aWVyIH0gZnJvbSAnLi9jdWJpYy1iZXppZXIubWpzJztcblxuY29uc3QgZWFzZUluID0gY3ViaWNCZXppZXIoMC40MiwgMCwgMSwgMSk7XG5jb25zdCBlYXNlT3V0ID0gY3ViaWNCZXppZXIoMCwgMCwgMC41OCwgMSk7XG5jb25zdCBlYXNlSW5PdXQgPSBjdWJpY0JlemllcigwLjQyLCAwLCAwLjU4LCAxKTtcblxuZXhwb3J0IHsgZWFzZUluLCBlYXNlSW5PdXQsIGVhc2VPdXQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/ease.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mirrorEasing: function() { return /* binding */ mirrorEasing; }\n/* harmony export */ });\n// Accepts an easing function and returns a new one that outputs mirrored values for\n// the second half of the animation. Turns easeIn into easeInOut.\nconst mirrorEasing = (easing) => (p) => p <= 0.5 ? easing(2 * p) / 2 : (2 - easing(2 * (1 - p))) / 2;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL21vZGlmaWVycy9taXJyb3IubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL21vZGlmaWVycy9taXJyb3IubWpzP2RlZTgiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQWNjZXB0cyBhbiBlYXNpbmcgZnVuY3Rpb24gYW5kIHJldHVybnMgYSBuZXcgb25lIHRoYXQgb3V0cHV0cyBtaXJyb3JlZCB2YWx1ZXMgZm9yXG4vLyB0aGUgc2Vjb25kIGhhbGYgb2YgdGhlIGFuaW1hdGlvbi4gVHVybnMgZWFzZUluIGludG8gZWFzZUluT3V0LlxuY29uc3QgbWlycm9yRWFzaW5nID0gKGVhc2luZykgPT4gKHApID0+IHAgPD0gMC41ID8gZWFzaW5nKDIgKiBwKSAvIDIgOiAoMiAtIGVhc2luZygyICogKDEgLSBwKSkpIC8gMjtcblxuZXhwb3J0IHsgbWlycm9yRWFzaW5nIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ reverseEasing: function() { return /* binding */ reverseEasing; }\n/* harmony export */ });\n// Accepts an easing function and returns a new one that outputs reversed values.\n// Turns easeIn into easeOut.\nconst reverseEasing = (easing) => (p) => 1 - easing(1 - p);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL21vZGlmaWVycy9yZXZlcnNlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBOztBQUV5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy9tb2RpZmllcnMvcmV2ZXJzZS5tanM/OWZjNSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBBY2NlcHRzIGFuIGVhc2luZyBmdW5jdGlvbiBhbmQgcmV0dXJucyBhIG5ldyBvbmUgdGhhdCBvdXRwdXRzIHJldmVyc2VkIHZhbHVlcy5cbi8vIFR1cm5zIGVhc2VJbiBpbnRvIGVhc2VPdXQuXG5jb25zdCByZXZlcnNlRWFzaW5nID0gKGVhc2luZykgPT4gKHApID0+IDEgLSBlYXNpbmcoMSAtIHApO1xuXG5leHBvcnQgeyByZXZlcnNlRWFzaW5nIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isBezierDefinition: function() { return /* binding */ isBezierDefinition; }\n/* harmony export */ });\nconst isBezierDefinition = (easing) => Array.isArray(easing) && typeof easing[0] === \"number\";\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL3V0aWxzL2lzLWJlemllci1kZWZpbml0aW9uLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL3V0aWxzL2lzLWJlemllci1kZWZpbml0aW9uLm1qcz8zNWE4Il0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGlzQmV6aWVyRGVmaW5pdGlvbiA9IChlYXNpbmcpID0+IEFycmF5LmlzQXJyYXkoZWFzaW5nKSAmJiB0eXBlb2YgZWFzaW5nWzBdID09PSBcIm51bWJlclwiO1xuXG5leHBvcnQgeyBpc0JlemllckRlZmluaXRpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isEasingArray: function() { return /* binding */ isEasingArray; }\n/* harmony export */ });\nconst isEasingArray = (ease) => {\n return Array.isArray(ease) && typeof ease[0] !== \"number\";\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL3V0aWxzL2lzLWVhc2luZy1hcnJheS5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTs7QUFFeUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9lYXNpbmcvdXRpbHMvaXMtZWFzaW5nLWFycmF5Lm1qcz84MmQ5Il0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGlzRWFzaW5nQXJyYXkgPSAoZWFzZSkgPT4ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KGVhc2UpICYmIHR5cGVvZiBlYXNlWzBdICE9PSBcIm51bWJlclwiO1xufTtcblxuZXhwb3J0IHsgaXNFYXNpbmdBcnJheSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/map.mjs":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/easing/utils/map.mjs ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ easingDefinitionToFunction: function() { return /* binding */ easingDefinitionToFunction; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../cubic-bezier.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _ease_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../ease.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/ease.mjs\");\n/* harmony import */ var _circ_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../circ.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/circ.mjs\");\n/* harmony import */ var _back_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../back.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/back.mjs\");\n/* harmony import */ var _anticipate_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../anticipate.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/anticipate.mjs\");\n\n\n\n\n\n\n\n\nconst easingLookup = {\n linear: _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop,\n easeIn: _ease_mjs__WEBPACK_IMPORTED_MODULE_1__.easeIn,\n easeInOut: _ease_mjs__WEBPACK_IMPORTED_MODULE_1__.easeInOut,\n easeOut: _ease_mjs__WEBPACK_IMPORTED_MODULE_1__.easeOut,\n circIn: _circ_mjs__WEBPACK_IMPORTED_MODULE_2__.circIn,\n circInOut: _circ_mjs__WEBPACK_IMPORTED_MODULE_2__.circInOut,\n circOut: _circ_mjs__WEBPACK_IMPORTED_MODULE_2__.circOut,\n backIn: _back_mjs__WEBPACK_IMPORTED_MODULE_3__.backIn,\n backInOut: _back_mjs__WEBPACK_IMPORTED_MODULE_3__.backInOut,\n backOut: _back_mjs__WEBPACK_IMPORTED_MODULE_3__.backOut,\n anticipate: _anticipate_mjs__WEBPACK_IMPORTED_MODULE_4__.anticipate,\n};\nconst easingDefinitionToFunction = (definition) => {\n if (Array.isArray(definition)) {\n // If cubic bezier definition, create bezier curve\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__.invariant)(definition.length === 4, `Cubic bezier arrays must contain four numerical values.`);\n const [x1, y1, x2, y2] = definition;\n return (0,_cubic_bezier_mjs__WEBPACK_IMPORTED_MODULE_6__.cubicBezier)(x1, y1, x2, y2);\n }\n else if (typeof definition === \"string\") {\n // Else lookup from table\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__.invariant)(easingLookup[definition] !== undefined, `Invalid easing type '${definition}'`);\n return easingLookup[definition];\n }\n return definition;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZWFzaW5nL3V0aWxzL21hcC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBbUQ7QUFDRDtBQUNOO0FBQ2E7QUFDQTtBQUNBO0FBQ1Y7O0FBRS9DO0FBQ0EsWUFBWSxpREFBSTtBQUNoQixVQUFVO0FBQ1YsYUFBYTtBQUNiLFdBQVc7QUFDWCxVQUFVO0FBQ1YsYUFBYTtBQUNiLFdBQVc7QUFDWCxVQUFVO0FBQ1YsYUFBYTtBQUNiLFdBQVc7QUFDWCxjQUFjO0FBQ2Q7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDREQUFTO0FBQ2pCO0FBQ0EsZUFBZSw4REFBVztBQUMxQjtBQUNBO0FBQ0E7QUFDQSxRQUFRLDREQUFTLGlFQUFpRSxXQUFXO0FBQzdGO0FBQ0E7QUFDQTtBQUNBOztBQUVzQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2Vhc2luZy91dGlscy9tYXAubWpzP2NlOTMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW52YXJpYW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvZXJyb3JzLm1qcyc7XG5pbXBvcnQgeyBjdWJpY0JlemllciB9IGZyb20gJy4uL2N1YmljLWJlemllci5tanMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL3V0aWxzL25vb3AubWpzJztcbmltcG9ydCB7IGVhc2VJbiwgZWFzZUluT3V0LCBlYXNlT3V0IH0gZnJvbSAnLi4vZWFzZS5tanMnO1xuaW1wb3J0IHsgY2lyY0luLCBjaXJjSW5PdXQsIGNpcmNPdXQgfSBmcm9tICcuLi9jaXJjLm1qcyc7XG5pbXBvcnQgeyBiYWNrSW4sIGJhY2tJbk91dCwgYmFja091dCB9IGZyb20gJy4uL2JhY2subWpzJztcbmltcG9ydCB7IGFudGljaXBhdGUgfSBmcm9tICcuLi9hbnRpY2lwYXRlLm1qcyc7XG5cbmNvbnN0IGVhc2luZ0xvb2t1cCA9IHtcbiAgICBsaW5lYXI6IG5vb3AsXG4gICAgZWFzZUluLFxuICAgIGVhc2VJbk91dCxcbiAgICBlYXNlT3V0LFxuICAgIGNpcmNJbixcbiAgICBjaXJjSW5PdXQsXG4gICAgY2lyY091dCxcbiAgICBiYWNrSW4sXG4gICAgYmFja0luT3V0LFxuICAgIGJhY2tPdXQsXG4gICAgYW50aWNpcGF0ZSxcbn07XG5jb25zdCBlYXNpbmdEZWZpbml0aW9uVG9GdW5jdGlvbiA9IChkZWZpbml0aW9uKSA9PiB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGVmaW5pdGlvbikpIHtcbiAgICAgICAgLy8gSWYgY3ViaWMgYmV6aWVyIGRlZmluaXRpb24sIGNyZWF0ZSBiZXppZXIgY3VydmVcbiAgICAgICAgaW52YXJpYW50KGRlZmluaXRpb24ubGVuZ3RoID09PSA0LCBgQ3ViaWMgYmV6aWVyIGFycmF5cyBtdXN0IGNvbnRhaW4gZm91ciBudW1lcmljYWwgdmFsdWVzLmApO1xuICAgICAgICBjb25zdCBbeDEsIHkxLCB4MiwgeTJdID0gZGVmaW5pdGlvbjtcbiAgICAgICAgcmV0dXJuIGN1YmljQmV6aWVyKHgxLCB5MSwgeDIsIHkyKTtcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIGRlZmluaXRpb24gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgLy8gRWxzZSBsb29rdXAgZnJvbSB0YWJsZVxuICAgICAgICBpbnZhcmlhbnQoZWFzaW5nTG9va3VwW2RlZmluaXRpb25dICE9PSB1bmRlZmluZWQsIGBJbnZhbGlkIGVhc2luZyB0eXBlICcke2RlZmluaXRpb259J2ApO1xuICAgICAgICByZXR1cm4gZWFzaW5nTG9va3VwW2RlZmluaXRpb25dO1xuICAgIH1cbiAgICByZXR1cm4gZGVmaW5pdGlvbjtcbn07XG5cbmV4cG9ydCB7IGVhc2luZ0RlZmluaXRpb25Ub0Z1bmN0aW9uIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/utils/map.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/events/add-dom-event.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addDomEvent: function() { return /* binding */ addDomEvent; }\n/* harmony export */ });\nfunction addDomEvent(target, eventName, handler, options = { passive: true }) {\n target.addEventListener(eventName, handler, options);\n return () => target.removeEventListener(eventName, handler);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZXZlbnRzL2FkZC1kb20tZXZlbnQubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSw2REFBNkQsZUFBZTtBQUM1RTtBQUNBO0FBQ0E7O0FBRXVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZXZlbnRzL2FkZC1kb20tZXZlbnQubWpzP2MzZjEiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gYWRkRG9tRXZlbnQodGFyZ2V0LCBldmVudE5hbWUsIGhhbmRsZXIsIG9wdGlvbnMgPSB7IHBhc3NpdmU6IHRydWUgfSkge1xuICAgIHRhcmdldC5hZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucyk7XG4gICAgcmV0dXJuICgpID0+IHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgaGFuZGxlcik7XG59XG5cbmV4cG9ydCB7IGFkZERvbUV2ZW50IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addPointerEvent: function() { return /* binding */ addPointerEvent; }\n/* harmony export */ });\n/* harmony import */ var _add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./add-dom-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\");\n/* harmony import */ var _event_info_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./event-info.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs\");\n\n\n\nfunction addPointerEvent(target, eventName, handler, options) {\n return (0,_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_0__.addDomEvent)(target, eventName, (0,_event_info_mjs__WEBPACK_IMPORTED_MODULE_1__.addPointerInfo)(handler), options);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZXZlbnRzL2FkZC1wb2ludGVyLWV2ZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0Q7QUFDQTs7QUFFbEQ7QUFDQSxXQUFXLCtEQUFXLG9CQUFvQiwrREFBYztBQUN4RDs7QUFFMkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9ldmVudHMvYWRkLXBvaW50ZXItZXZlbnQubWpzPzFjYmEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkRG9tRXZlbnQgfSBmcm9tICcuL2FkZC1kb20tZXZlbnQubWpzJztcbmltcG9ydCB7IGFkZFBvaW50ZXJJbmZvIH0gZnJvbSAnLi9ldmVudC1pbmZvLm1qcyc7XG5cbmZ1bmN0aW9uIGFkZFBvaW50ZXJFdmVudCh0YXJnZXQsIGV2ZW50TmFtZSwgaGFuZGxlciwgb3B0aW9ucykge1xuICAgIHJldHVybiBhZGREb21FdmVudCh0YXJnZXQsIGV2ZW50TmFtZSwgYWRkUG9pbnRlckluZm8oaGFuZGxlciksIG9wdGlvbnMpO1xufVxuXG5leHBvcnQgeyBhZGRQb2ludGVyRXZlbnQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/events/event-info.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addPointerInfo: function() { return /* binding */ addPointerInfo; },\n/* harmony export */ extractEventInfo: function() { return /* binding */ extractEventInfo; }\n/* harmony export */ });\n/* harmony import */ var _utils_is_primary_pointer_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils/is-primary-pointer.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs\");\n\n\nfunction extractEventInfo(event, pointType = \"page\") {\n return {\n point: {\n x: event[pointType + \"X\"],\n y: event[pointType + \"Y\"],\n },\n };\n}\nconst addPointerInfo = (handler) => {\n return (event) => (0,_utils_is_primary_pointer_mjs__WEBPACK_IMPORTED_MODULE_0__.isPrimaryPointer)(event) && handler(event, extractEventInfo(event));\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZXZlbnRzL2V2ZW50LWluZm8ubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFrRTs7QUFFbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsK0VBQWdCO0FBQ3RDOztBQUU0QyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2V2ZW50cy9ldmVudC1pbmZvLm1qcz8yYjMzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUHJpbWFyeVBvaW50ZXIgfSBmcm9tICcuL3V0aWxzL2lzLXByaW1hcnktcG9pbnRlci5tanMnO1xuXG5mdW5jdGlvbiBleHRyYWN0RXZlbnRJbmZvKGV2ZW50LCBwb2ludFR5cGUgPSBcInBhZ2VcIikge1xuICAgIHJldHVybiB7XG4gICAgICAgIHBvaW50OiB7XG4gICAgICAgICAgICB4OiBldmVudFtwb2ludFR5cGUgKyBcIlhcIl0sXG4gICAgICAgICAgICB5OiBldmVudFtwb2ludFR5cGUgKyBcIllcIl0sXG4gICAgICAgIH0sXG4gICAgfTtcbn1cbmNvbnN0IGFkZFBvaW50ZXJJbmZvID0gKGhhbmRsZXIpID0+IHtcbiAgICByZXR1cm4gKGV2ZW50KSA9PiBpc1ByaW1hcnlQb2ludGVyKGV2ZW50KSAmJiBoYW5kbGVyKGV2ZW50LCBleHRyYWN0RXZlbnRJbmZvKGV2ZW50KSk7XG59O1xuXG5leHBvcnQgeyBhZGRQb2ludGVySW5mbywgZXh0cmFjdEV2ZW50SW5mbyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isPrimaryPointer: function() { return /* binding */ isPrimaryPointer; }\n/* harmony export */ });\nconst isPrimaryPointer = (event) => {\n if (event.pointerType === \"mouse\") {\n return typeof event.button !== \"number\" || event.button <= 0;\n }\n else {\n /**\n * isPrimary is true for all mice buttons, whereas every touch point\n * is regarded as its own input. So subsequent concurrent touch points\n * will be false.\n *\n * Specifically match against false here as incomplete versions of\n * PointerEvents in very old browser might have it set as undefined.\n */\n return event.isPrimary !== false;\n }\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZXZlbnRzL3V0aWxzL2lzLXByaW1hcnktcG9pbnRlci5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU0QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2V2ZW50cy91dGlscy9pcy1wcmltYXJ5LXBvaW50ZXIubWpzP2E3ODgiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaXNQcmltYXJ5UG9pbnRlciA9IChldmVudCkgPT4ge1xuICAgIGlmIChldmVudC5wb2ludGVyVHlwZSA9PT0gXCJtb3VzZVwiKSB7XG4gICAgICAgIHJldHVybiB0eXBlb2YgZXZlbnQuYnV0dG9uICE9PSBcIm51bWJlclwiIHx8IGV2ZW50LmJ1dHRvbiA8PSAwO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIGlzUHJpbWFyeSBpcyB0cnVlIGZvciBhbGwgbWljZSBidXR0b25zLCB3aGVyZWFzIGV2ZXJ5IHRvdWNoIHBvaW50XG4gICAgICAgICAqIGlzIHJlZ2FyZGVkIGFzIGl0cyBvd24gaW5wdXQuIFNvIHN1YnNlcXVlbnQgY29uY3VycmVudCB0b3VjaCBwb2ludHNcbiAgICAgICAgICogd2lsbCBiZSBmYWxzZS5cbiAgICAgICAgICpcbiAgICAgICAgICogU3BlY2lmaWNhbGx5IG1hdGNoIGFnYWluc3QgZmFsc2UgaGVyZSBhcyBpbmNvbXBsZXRlIHZlcnNpb25zIG9mXG4gICAgICAgICAqIFBvaW50ZXJFdmVudHMgaW4gdmVyeSBvbGQgYnJvd3NlciBtaWdodCBoYXZlIGl0IHNldCBhcyB1bmRlZmluZWQuXG4gICAgICAgICAqL1xuICAgICAgICByZXR1cm4gZXZlbnQuaXNQcmltYXJ5ICE9PSBmYWxzZTtcbiAgICB9XG59O1xuXG5leHBvcnQgeyBpc1ByaW1hcnlQb2ludGVyIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/batcher.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/frameloop/batcher.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createRenderBatcher: function() { return /* binding */ createRenderBatcher; },\n/* harmony export */ stepsOrder: function() { return /* binding */ stepsOrder; }\n/* harmony export */ });\n/* harmony import */ var _render_step_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./render-step.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/render-step.mjs\");\n\n\nconst stepsOrder = [\n \"prepare\",\n \"read\",\n \"update\",\n \"preRender\",\n \"render\",\n \"postRender\",\n];\nconst maxElapsed = 40;\nfunction createRenderBatcher(scheduleNextBatch, allowKeepAlive) {\n let runNextFrame = false;\n let useDefaultElapsed = true;\n const state = {\n delta: 0,\n timestamp: 0,\n isProcessing: false,\n };\n const steps = stepsOrder.reduce((acc, key) => {\n acc[key] = (0,_render_step_mjs__WEBPACK_IMPORTED_MODULE_0__.createRenderStep)(() => (runNextFrame = true));\n return acc;\n }, {});\n const processStep = (stepId) => steps[stepId].process(state);\n const processBatch = () => {\n const timestamp = performance.now();\n runNextFrame = false;\n state.delta = useDefaultElapsed\n ? 1000 / 60\n : Math.max(Math.min(timestamp - state.timestamp, maxElapsed), 1);\n state.timestamp = timestamp;\n state.isProcessing = true;\n stepsOrder.forEach(processStep);\n state.isProcessing = false;\n if (runNextFrame && allowKeepAlive) {\n useDefaultElapsed = false;\n scheduleNextBatch(processBatch);\n }\n };\n const wake = () => {\n runNextFrame = true;\n useDefaultElapsed = true;\n if (!state.isProcessing) {\n scheduleNextBatch(processBatch);\n }\n };\n const schedule = stepsOrder.reduce((acc, key) => {\n const step = steps[key];\n acc[key] = (process, keepAlive = false, immediate = false) => {\n if (!runNextFrame)\n wake();\n return step.schedule(process, keepAlive, immediate);\n };\n return acc;\n }, {});\n const cancel = (process) => stepsOrder.forEach((key) => steps[key].cancel(process));\n return { schedule, cancel, state, steps };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZnJhbWVsb29wL2JhdGNoZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFxRDs7QUFFckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLGtFQUFnQjtBQUNuQztBQUNBLEtBQUssSUFBSTtBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSyxJQUFJO0FBQ1Q7QUFDQSxhQUFhO0FBQ2I7O0FBRTJDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZnJhbWVsb29wL2JhdGNoZXIubWpzP2RlYzQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVuZGVyU3RlcCB9IGZyb20gJy4vcmVuZGVyLXN0ZXAubWpzJztcblxuY29uc3Qgc3RlcHNPcmRlciA9IFtcbiAgICBcInByZXBhcmVcIixcbiAgICBcInJlYWRcIixcbiAgICBcInVwZGF0ZVwiLFxuICAgIFwicHJlUmVuZGVyXCIsXG4gICAgXCJyZW5kZXJcIixcbiAgICBcInBvc3RSZW5kZXJcIixcbl07XG5jb25zdCBtYXhFbGFwc2VkID0gNDA7XG5mdW5jdGlvbiBjcmVhdGVSZW5kZXJCYXRjaGVyKHNjaGVkdWxlTmV4dEJhdGNoLCBhbGxvd0tlZXBBbGl2ZSkge1xuICAgIGxldCBydW5OZXh0RnJhbWUgPSBmYWxzZTtcbiAgICBsZXQgdXNlRGVmYXVsdEVsYXBzZWQgPSB0cnVlO1xuICAgIGNvbnN0IHN0YXRlID0ge1xuICAgICAgICBkZWx0YTogMCxcbiAgICAgICAgdGltZXN0YW1wOiAwLFxuICAgICAgICBpc1Byb2Nlc3Npbmc6IGZhbHNlLFxuICAgIH07XG4gICAgY29uc3Qgc3RlcHMgPSBzdGVwc09yZGVyLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgYWNjW2tleV0gPSBjcmVhdGVSZW5kZXJTdGVwKCgpID0+IChydW5OZXh0RnJhbWUgPSB0cnVlKSk7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuICAgIGNvbnN0IHByb2Nlc3NTdGVwID0gKHN0ZXBJZCkgPT4gc3RlcHNbc3RlcElkXS5wcm9jZXNzKHN0YXRlKTtcbiAgICBjb25zdCBwcm9jZXNzQmF0Y2ggPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgICAgICBydW5OZXh0RnJhbWUgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUuZGVsdGEgPSB1c2VEZWZhdWx0RWxhcHNlZFxuICAgICAgICAgICAgPyAxMDAwIC8gNjBcbiAgICAgICAgICAgIDogTWF0aC5tYXgoTWF0aC5taW4odGltZXN0YW1wIC0gc3RhdGUudGltZXN0YW1wLCBtYXhFbGFwc2VkKSwgMSk7XG4gICAgICAgIHN0YXRlLnRpbWVzdGFtcCA9IHRpbWVzdGFtcDtcbiAgICAgICAgc3RhdGUuaXNQcm9jZXNzaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RlcHNPcmRlci5mb3JFYWNoKHByb2Nlc3NTdGVwKTtcbiAgICAgICAgc3RhdGUuaXNQcm9jZXNzaW5nID0gZmFsc2U7XG4gICAgICAgIGlmIChydW5OZXh0RnJhbWUgJiYgYWxsb3dLZWVwQWxpdmUpIHtcbiAgICAgICAgICAgIHVzZURlZmF1bHRFbGFwc2VkID0gZmFsc2U7XG4gICAgICAgICAgICBzY2hlZHVsZU5leHRCYXRjaChwcm9jZXNzQmF0Y2gpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBjb25zdCB3YWtlID0gKCkgPT4ge1xuICAgICAgICBydW5OZXh0RnJhbWUgPSB0cnVlO1xuICAgICAgICB1c2VEZWZhdWx0RWxhcHNlZCA9IHRydWU7XG4gICAgICAgIGlmICghc3RhdGUuaXNQcm9jZXNzaW5nKSB7XG4gICAgICAgICAgICBzY2hlZHVsZU5leHRCYXRjaChwcm9jZXNzQmF0Y2gpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBjb25zdCBzY2hlZHVsZSA9IHN0ZXBzT3JkZXIucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICBjb25zdCBzdGVwID0gc3RlcHNba2V5XTtcbiAgICAgICAgYWNjW2tleV0gPSAocHJvY2Vzcywga2VlcEFsaXZlID0gZmFsc2UsIGltbWVkaWF0ZSA9IGZhbHNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXJ1bk5leHRGcmFtZSlcbiAgICAgICAgICAgICAgICB3YWtlKCk7XG4gICAgICAgICAgICByZXR1cm4gc3RlcC5zY2hlZHVsZShwcm9jZXNzLCBrZWVwQWxpdmUsIGltbWVkaWF0ZSk7XG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgfSwge30pO1xuICAgIGNvbnN0IGNhbmNlbCA9IChwcm9jZXNzKSA9PiBzdGVwc09yZGVyLmZvckVhY2goKGtleSkgPT4gc3RlcHNba2V5XS5jYW5jZWwocHJvY2VzcykpO1xuICAgIHJldHVybiB7IHNjaGVkdWxlLCBjYW5jZWwsIHN0YXRlLCBzdGVwcyB9O1xufVxuXG5leHBvcnQgeyBjcmVhdGVSZW5kZXJCYXRjaGVyLCBzdGVwc09yZGVyIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/batcher.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/frameloop/frame.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cancelFrame: function() { return /* binding */ cancelFrame; },\n/* harmony export */ frame: function() { return /* binding */ frame; },\n/* harmony export */ frameData: function() { return /* binding */ frameData; },\n/* harmony export */ steps: function() { return /* binding */ steps; }\n/* harmony export */ });\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _batcher_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./batcher.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/batcher.mjs\");\n\n\n\nconst { schedule: frame, cancel: cancelFrame, state: frameData, steps, } = (0,_batcher_mjs__WEBPACK_IMPORTED_MODULE_0__.createRenderBatcher)(typeof requestAnimationFrame !== \"undefined\" ? requestAnimationFrame : _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__.noop, true);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZnJhbWVsb29wL2ZyYW1lLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBeUM7QUFDVzs7QUFFcEQsUUFBUSxpRUFBaUUsRUFBRSxpRUFBbUIsd0VBQXdFLGlEQUFJOztBQUUxSCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2ZyYW1lbG9vcC9mcmFtZS5tanM/ZWYwZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vdXRpbHMvbm9vcC5tanMnO1xuaW1wb3J0IHsgY3JlYXRlUmVuZGVyQmF0Y2hlciB9IGZyb20gJy4vYmF0Y2hlci5tanMnO1xuXG5jb25zdCB7IHNjaGVkdWxlOiBmcmFtZSwgY2FuY2VsOiBjYW5jZWxGcmFtZSwgc3RhdGU6IGZyYW1lRGF0YSwgc3RlcHMsIH0gPSBjcmVhdGVSZW5kZXJCYXRjaGVyKHR5cGVvZiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgIT09IFwidW5kZWZpbmVkXCIgPyByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgOiBub29wLCB0cnVlKTtcblxuZXhwb3J0IHsgY2FuY2VsRnJhbWUsIGZyYW1lLCBmcmFtZURhdGEsIHN0ZXBzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/render-step.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/frameloop/render-step.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createRenderStep: function() { return /* binding */ createRenderStep; }\n/* harmony export */ });\nclass Queue {\n constructor() {\n this.order = [];\n this.scheduled = new Set();\n }\n add(process) {\n if (!this.scheduled.has(process)) {\n this.scheduled.add(process);\n this.order.push(process);\n return true;\n }\n }\n remove(process) {\n const index = this.order.indexOf(process);\n if (index !== -1) {\n this.order.splice(index, 1);\n this.scheduled.delete(process);\n }\n }\n clear() {\n this.order.length = 0;\n this.scheduled.clear();\n }\n}\nfunction createRenderStep(runNextFrame) {\n /**\n * We create and reuse two queues, one to queue jobs for the current frame\n * and one for the next. We reuse to avoid triggering GC after x frames.\n */\n let thisFrame = new Queue();\n let nextFrame = new Queue();\n let numToRun = 0;\n /**\n * Track whether we're currently processing jobs in this step. This way\n * we can decide whether to schedule new jobs for this frame or next.\n */\n let isProcessing = false;\n let flushNextFrame = false;\n /**\n * A set of processes which were marked keepAlive when scheduled.\n */\n const toKeepAlive = new WeakSet();\n const step = {\n /**\n * Schedule a process to run on the next frame.\n */\n schedule: (callback, keepAlive = false, immediate = false) => {\n const addToCurrentFrame = immediate && isProcessing;\n const queue = addToCurrentFrame ? thisFrame : nextFrame;\n if (keepAlive)\n toKeepAlive.add(callback);\n if (queue.add(callback) && addToCurrentFrame && isProcessing) {\n // If we're adding it to the currently running queue, update its measured size\n numToRun = thisFrame.order.length;\n }\n return callback;\n },\n /**\n * Cancel the provided callback from running on the next frame.\n */\n cancel: (callback) => {\n nextFrame.remove(callback);\n toKeepAlive.delete(callback);\n },\n /**\n * Execute all schedule callbacks.\n */\n process: (frameData) => {\n /**\n * If we're already processing we've probably been triggered by a flushSync\n * inside an existing process. Instead of executing, mark flushNextFrame\n * as true and ensure we flush the following frame at the end of this one.\n */\n if (isProcessing) {\n flushNextFrame = true;\n return;\n }\n isProcessing = true;\n [thisFrame, nextFrame] = [nextFrame, thisFrame];\n // Clear the next frame queue\n nextFrame.clear();\n // Execute this frame\n numToRun = thisFrame.order.length;\n if (numToRun) {\n for (let i = 0; i < numToRun; i++) {\n const callback = thisFrame.order[i];\n callback(frameData);\n if (toKeepAlive.has(callback)) {\n step.schedule(callback);\n runNextFrame();\n }\n }\n }\n isProcessing = false;\n if (flushNextFrame) {\n flushNextFrame = false;\n step.process(frameData);\n }\n },\n };\n return step;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZnJhbWVsb29wL3JlbmRlci1zdGVwLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxjQUFjO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTs7QUFFNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9mcmFtZWxvb3AvcmVuZGVyLXN0ZXAubWpzPzcxNTEiXSwic291cmNlc0NvbnRlbnQiOlsiY2xhc3MgUXVldWUge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLm9yZGVyID0gW107XG4gICAgICAgIHRoaXMuc2NoZWR1bGVkID0gbmV3IFNldCgpO1xuICAgIH1cbiAgICBhZGQocHJvY2Vzcykge1xuICAgICAgICBpZiAoIXRoaXMuc2NoZWR1bGVkLmhhcyhwcm9jZXNzKSkge1xuICAgICAgICAgICAgdGhpcy5zY2hlZHVsZWQuYWRkKHByb2Nlc3MpO1xuICAgICAgICAgICAgdGhpcy5vcmRlci5wdXNoKHByb2Nlc3MpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmVtb3ZlKHByb2Nlc3MpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLm9yZGVyLmluZGV4T2YocHJvY2Vzcyk7XG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgIHRoaXMub3JkZXIuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGVkLmRlbGV0ZShwcm9jZXNzKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5vcmRlci5sZW5ndGggPSAwO1xuICAgICAgICB0aGlzLnNjaGVkdWxlZC5jbGVhcigpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGNyZWF0ZVJlbmRlclN0ZXAocnVuTmV4dEZyYW1lKSB7XG4gICAgLyoqXG4gICAgICogV2UgY3JlYXRlIGFuZCByZXVzZSB0d28gcXVldWVzLCBvbmUgdG8gcXVldWUgam9icyBmb3IgdGhlIGN1cnJlbnQgZnJhbWVcbiAgICAgKiBhbmQgb25lIGZvciB0aGUgbmV4dC4gV2UgcmV1c2UgdG8gYXZvaWQgdHJpZ2dlcmluZyBHQyBhZnRlciB4IGZyYW1lcy5cbiAgICAgKi9cbiAgICBsZXQgdGhpc0ZyYW1lID0gbmV3IFF1ZXVlKCk7XG4gICAgbGV0IG5leHRGcmFtZSA9IG5ldyBRdWV1ZSgpO1xuICAgIGxldCBudW1Ub1J1biA9IDA7XG4gICAgLyoqXG4gICAgICogVHJhY2sgd2hldGhlciB3ZSdyZSBjdXJyZW50bHkgcHJvY2Vzc2luZyBqb2JzIGluIHRoaXMgc3RlcC4gVGhpcyB3YXlcbiAgICAgKiB3ZSBjYW4gZGVjaWRlIHdoZXRoZXIgdG8gc2NoZWR1bGUgbmV3IGpvYnMgZm9yIHRoaXMgZnJhbWUgb3IgbmV4dC5cbiAgICAgKi9cbiAgICBsZXQgaXNQcm9jZXNzaW5nID0gZmFsc2U7XG4gICAgbGV0IGZsdXNoTmV4dEZyYW1lID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogQSBzZXQgb2YgcHJvY2Vzc2VzIHdoaWNoIHdlcmUgbWFya2VkIGtlZXBBbGl2ZSB3aGVuIHNjaGVkdWxlZC5cbiAgICAgKi9cbiAgICBjb25zdCB0b0tlZXBBbGl2ZSA9IG5ldyBXZWFrU2V0KCk7XG4gICAgY29uc3Qgc3RlcCA9IHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFNjaGVkdWxlIGEgcHJvY2VzcyB0byBydW4gb24gdGhlIG5leHQgZnJhbWUuXG4gICAgICAgICAqL1xuICAgICAgICBzY2hlZHVsZTogKGNhbGxiYWNrLCBrZWVwQWxpdmUgPSBmYWxzZSwgaW1tZWRpYXRlID0gZmFsc2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFkZFRvQ3VycmVudEZyYW1lID0gaW1tZWRpYXRlICYmIGlzUHJvY2Vzc2luZztcbiAgICAgICAgICAgIGNvbnN0IHF1ZXVlID0gYWRkVG9DdXJyZW50RnJhbWUgPyB0aGlzRnJhbWUgOiBuZXh0RnJhbWU7XG4gICAgICAgICAgICBpZiAoa2VlcEFsaXZlKVxuICAgICAgICAgICAgICAgIHRvS2VlcEFsaXZlLmFkZChjYWxsYmFjayk7XG4gICAgICAgICAgICBpZiAocXVldWUuYWRkKGNhbGxiYWNrKSAmJiBhZGRUb0N1cnJlbnRGcmFtZSAmJiBpc1Byb2Nlc3NpbmcpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSdyZSBhZGRpbmcgaXQgdG8gdGhlIGN1cnJlbnRseSBydW5uaW5nIHF1ZXVlLCB1cGRhdGUgaXRzIG1lYXN1cmVkIHNpemVcbiAgICAgICAgICAgICAgICBudW1Ub1J1biA9IHRoaXNGcmFtZS5vcmRlci5sZW5ndGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY2FsbGJhY2s7XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDYW5jZWwgdGhlIHByb3ZpZGVkIGNhbGxiYWNrIGZyb20gcnVubmluZyBvbiB0aGUgbmV4dCBmcmFtZS5cbiAgICAgICAgICovXG4gICAgICAgIGNhbmNlbDogKGNhbGxiYWNrKSA9PiB7XG4gICAgICAgICAgICBuZXh0RnJhbWUucmVtb3ZlKGNhbGxiYWNrKTtcbiAgICAgICAgICAgIHRvS2VlcEFsaXZlLmRlbGV0ZShjYWxsYmFjayk7XG4gICAgICAgIH0sXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFeGVjdXRlIGFsbCBzY2hlZHVsZSBjYWxsYmFja3MuXG4gICAgICAgICAqL1xuICAgICAgICBwcm9jZXNzOiAoZnJhbWVEYXRhKSA9PiB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlJ3JlIGFscmVhZHkgcHJvY2Vzc2luZyB3ZSd2ZSBwcm9iYWJseSBiZWVuIHRyaWdnZXJlZCBieSBhIGZsdXNoU3luY1xuICAgICAgICAgICAgICogaW5zaWRlIGFuIGV4aXN0aW5nIHByb2Nlc3MuIEluc3RlYWQgb2YgZXhlY3V0aW5nLCBtYXJrIGZsdXNoTmV4dEZyYW1lXG4gICAgICAgICAgICAgKiBhcyB0cnVlIGFuZCBlbnN1cmUgd2UgZmx1c2ggdGhlIGZvbGxvd2luZyBmcmFtZSBhdCB0aGUgZW5kIG9mIHRoaXMgb25lLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAoaXNQcm9jZXNzaW5nKSB7XG4gICAgICAgICAgICAgICAgZmx1c2hOZXh0RnJhbWUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlzUHJvY2Vzc2luZyA9IHRydWU7XG4gICAgICAgICAgICBbdGhpc0ZyYW1lLCBuZXh0RnJhbWVdID0gW25leHRGcmFtZSwgdGhpc0ZyYW1lXTtcbiAgICAgICAgICAgIC8vIENsZWFyIHRoZSBuZXh0IGZyYW1lIHF1ZXVlXG4gICAgICAgICAgICBuZXh0RnJhbWUuY2xlYXIoKTtcbiAgICAgICAgICAgIC8vIEV4ZWN1dGUgdGhpcyBmcmFtZVxuICAgICAgICAgICAgbnVtVG9SdW4gPSB0aGlzRnJhbWUub3JkZXIubGVuZ3RoO1xuICAgICAgICAgICAgaWYgKG51bVRvUnVuKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1Ub1J1bjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNhbGxiYWNrID0gdGhpc0ZyYW1lLm9yZGVyW2ldO1xuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhmcmFtZURhdGEpO1xuICAgICAgICAgICAgICAgICAgICBpZiAodG9LZWVwQWxpdmUuaGFzKGNhbGxiYWNrKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3RlcC5zY2hlZHVsZShjYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICBydW5OZXh0RnJhbWUoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlzUHJvY2Vzc2luZyA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKGZsdXNoTmV4dEZyYW1lKSB7XG4gICAgICAgICAgICAgICAgZmx1c2hOZXh0RnJhbWUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBzdGVwLnByb2Nlc3MoZnJhbWVEYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBzdGVwO1xufVxuXG5leHBvcnQgeyBjcmVhdGVSZW5kZXJTdGVwIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/render-step.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs":
|
||
/*!****************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs ***!
|
||
\****************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ VisualElementDragControls: function() { return /* binding */ VisualElementDragControls; },\n/* harmony export */ elementDragControls: function() { return /* binding */ elementDragControls; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _pan_PanSession_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../pan/PanSession.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs\");\n/* harmony import */ var _utils_lock_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/lock.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs\");\n/* harmony import */ var _utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../utils/is-ref-object.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs\");\n/* harmony import */ var _events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../../events/add-pointer-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\");\n/* harmony import */ var _utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/constraints.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs\");\n/* harmony import */ var _projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../projection/geometry/models.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs\");\n/* harmony import */ var _projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../projection/utils/each-axis.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs\");\n/* harmony import */ var _projection_utils_measure_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../projection/utils/measure.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/measure.mjs\");\n/* harmony import */ var _events_event_info_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../events/event-info.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs\");\n/* harmony import */ var _projection_geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../projection/geometry/conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs\");\n/* harmony import */ var _events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../../events/add-dom-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\");\n/* harmony import */ var _projection_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../projection/geometry/delta-calc.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs\");\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n/* harmony import */ var _animation_interfaces_motion_value_mjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../../animation/interfaces/motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs\");\n/* harmony import */ var _utils_get_context_window_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../utils/get-context-window.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/get-context-window.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst elementDragControls = new WeakMap();\n/**\n *\n */\n// let latestPointerEvent: PointerEvent\nclass VisualElementDragControls {\n constructor(visualElement) {\n // This is a reference to the global drag gesture lock, ensuring only one component\n // can \"capture\" the drag of one or both axes.\n // TODO: Look into moving this into pansession?\n this.openGlobalLock = null;\n this.isDragging = false;\n this.currentDirection = null;\n this.originPoint = { x: 0, y: 0 };\n /**\n * The permitted boundaries of travel, in pixels.\n */\n this.constraints = false;\n this.hasMutatedConstraints = false;\n /**\n * The per-axis resolved elastic values.\n */\n this.elastic = (0,_projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_0__.createBox)();\n this.visualElement = visualElement;\n }\n start(originEvent, { snapToCursor = false } = {}) {\n /**\n * Don't start dragging if this component is exiting\n */\n const { presenceContext } = this.visualElement;\n if (presenceContext && presenceContext.isPresent === false)\n return;\n const onSessionStart = (event) => {\n const { dragSnapToOrigin } = this.getProps();\n // Stop or pause any animations on both axis values immediately. This allows the user to throw and catch\n // the component.\n dragSnapToOrigin ? this.pauseAnimation() : this.stopAnimation();\n if (snapToCursor) {\n this.snapToCursor((0,_events_event_info_mjs__WEBPACK_IMPORTED_MODULE_1__.extractEventInfo)(event, \"page\").point);\n }\n };\n const onStart = (event, info) => {\n // Attempt to grab the global drag gesture lock - maybe make this part of PanSession\n const { drag, dragPropagation, onDragStart } = this.getProps();\n if (drag && !dragPropagation) {\n if (this.openGlobalLock)\n this.openGlobalLock();\n this.openGlobalLock = (0,_utils_lock_mjs__WEBPACK_IMPORTED_MODULE_2__.getGlobalLock)(drag);\n // If we don 't have the lock, don't start dragging\n if (!this.openGlobalLock)\n return;\n }\n this.isDragging = true;\n this.currentDirection = null;\n this.resolveConstraints();\n if (this.visualElement.projection) {\n this.visualElement.projection.isAnimationBlocked = true;\n this.visualElement.projection.target = undefined;\n }\n /**\n * Record gesture origin\n */\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n let current = this.getAxisMotionValue(axis).get() || 0;\n /**\n * If the MotionValue is a percentage value convert to px\n */\n if (_value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_4__.percent.test(current)) {\n const { projection } = this.visualElement;\n if (projection && projection.layout) {\n const measuredAxis = projection.layout.layoutBox[axis];\n if (measuredAxis) {\n const length = (0,_projection_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_5__.calcLength)(measuredAxis);\n current = length * (parseFloat(current) / 100);\n }\n }\n }\n this.originPoint[axis] = current;\n });\n // Fire onDragStart event\n if (onDragStart) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_6__.frame.update(() => onDragStart(event, info), false, true);\n }\n const { animationState } = this.visualElement;\n animationState && animationState.setActive(\"whileDrag\", true);\n };\n const onMove = (event, info) => {\n // latestPointerEvent = event\n const { dragPropagation, dragDirectionLock, onDirectionLock, onDrag, } = this.getProps();\n // If we didn't successfully receive the gesture lock, early return.\n if (!dragPropagation && !this.openGlobalLock)\n return;\n const { offset } = info;\n // Attempt to detect drag direction if directionLock is true\n if (dragDirectionLock && this.currentDirection === null) {\n this.currentDirection = getCurrentDirection(offset);\n // If we've successfully set a direction, notify listener\n if (this.currentDirection !== null) {\n onDirectionLock && onDirectionLock(this.currentDirection);\n }\n return;\n }\n // Update each point with the latest position\n this.updateAxis(\"x\", info.point, offset);\n this.updateAxis(\"y\", info.point, offset);\n /**\n * Ideally we would leave the renderer to fire naturally at the end of\n * this frame but if the element is about to change layout as the result\n * of a re-render we want to ensure the browser can read the latest\n * bounding box to ensure the pointer and element don't fall out of sync.\n */\n this.visualElement.render();\n /**\n * This must fire after the render call as it might trigger a state\n * change which itself might trigger a layout update.\n */\n onDrag && onDrag(event, info);\n };\n const onSessionEnd = (event, info) => this.stop(event, info);\n const resumeAnimation = () => (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n var _a;\n return this.getAnimationState(axis) === \"paused\" &&\n ((_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.play());\n });\n const { dragSnapToOrigin } = this.getProps();\n this.panSession = new _pan_PanSession_mjs__WEBPACK_IMPORTED_MODULE_7__.PanSession(originEvent, {\n onSessionStart,\n onStart,\n onMove,\n onSessionEnd,\n resumeAnimation,\n }, {\n transformPagePoint: this.visualElement.getTransformPagePoint(),\n dragSnapToOrigin,\n contextWindow: (0,_utils_get_context_window_mjs__WEBPACK_IMPORTED_MODULE_8__.getContextWindow)(this.visualElement),\n });\n }\n stop(event, info) {\n const isDragging = this.isDragging;\n this.cancel();\n if (!isDragging)\n return;\n const { velocity } = info;\n this.startAnimation(velocity);\n const { onDragEnd } = this.getProps();\n if (onDragEnd) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_6__.frame.update(() => onDragEnd(event, info));\n }\n }\n cancel() {\n this.isDragging = false;\n const { projection, animationState } = this.visualElement;\n if (projection) {\n projection.isAnimationBlocked = false;\n }\n this.panSession && this.panSession.end();\n this.panSession = undefined;\n const { dragPropagation } = this.getProps();\n if (!dragPropagation && this.openGlobalLock) {\n this.openGlobalLock();\n this.openGlobalLock = null;\n }\n animationState && animationState.setActive(\"whileDrag\", false);\n }\n updateAxis(axis, _point, offset) {\n const { drag } = this.getProps();\n // If we're not dragging this axis, do an early return.\n if (!offset || !shouldDrag(axis, drag, this.currentDirection))\n return;\n const axisValue = this.getAxisMotionValue(axis);\n let next = this.originPoint[axis] + offset[axis];\n // Apply constraints\n if (this.constraints && this.constraints[axis]) {\n next = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.applyConstraints)(next, this.constraints[axis], this.elastic[axis]);\n }\n axisValue.set(next);\n }\n resolveConstraints() {\n var _a;\n const { dragConstraints, dragElastic } = this.getProps();\n const layout = this.visualElement.projection &&\n !this.visualElement.projection.layout\n ? this.visualElement.projection.measure(false)\n : (_a = this.visualElement.projection) === null || _a === void 0 ? void 0 : _a.layout;\n const prevConstraints = this.constraints;\n if (dragConstraints && (0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_10__.isRefObject)(dragConstraints)) {\n if (!this.constraints) {\n this.constraints = this.resolveRefConstraints();\n }\n }\n else {\n if (dragConstraints && layout) {\n this.constraints = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.calcRelativeConstraints)(layout.layoutBox, dragConstraints);\n }\n else {\n this.constraints = false;\n }\n }\n this.elastic = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.resolveDragElastic)(dragElastic);\n /**\n * If we're outputting to external MotionValues, we want to rebase the measured constraints\n * from viewport-relative to component-relative.\n */\n if (prevConstraints !== this.constraints &&\n layout &&\n this.constraints &&\n !this.hasMutatedConstraints) {\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n if (this.getAxisMotionValue(axis)) {\n this.constraints[axis] = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.rebaseAxisConstraints)(layout.layoutBox[axis], this.constraints[axis]);\n }\n });\n }\n }\n resolveRefConstraints() {\n const { dragConstraints: constraints, onMeasureDragConstraints } = this.getProps();\n if (!constraints || !(0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_10__.isRefObject)(constraints))\n return false;\n const constraintsElement = constraints.current;\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_11__.invariant)(constraintsElement !== null, \"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.\");\n const { projection } = this.visualElement;\n // TODO\n if (!projection || !projection.layout)\n return false;\n const constraintsBox = (0,_projection_utils_measure_mjs__WEBPACK_IMPORTED_MODULE_12__.measurePageBox)(constraintsElement, projection.root, this.visualElement.getTransformPagePoint());\n let measuredConstraints = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.calcViewportConstraints)(projection.layout.layoutBox, constraintsBox);\n /**\n * If there's an onMeasureDragConstraints listener we call it and\n * if different constraints are returned, set constraints to that\n */\n if (onMeasureDragConstraints) {\n const userConstraints = onMeasureDragConstraints((0,_projection_geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_13__.convertBoxToBoundingBox)(measuredConstraints));\n this.hasMutatedConstraints = !!userConstraints;\n if (userConstraints) {\n measuredConstraints = (0,_projection_geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_13__.convertBoundingBoxToBox)(userConstraints);\n }\n }\n return measuredConstraints;\n }\n startAnimation(velocity) {\n const { drag, dragMomentum, dragElastic, dragTransition, dragSnapToOrigin, onDragTransitionEnd, } = this.getProps();\n const constraints = this.constraints || {};\n const momentumAnimations = (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n if (!shouldDrag(axis, drag, this.currentDirection)) {\n return;\n }\n let transition = (constraints && constraints[axis]) || {};\n if (dragSnapToOrigin)\n transition = { min: 0, max: 0 };\n /**\n * Overdamp the boundary spring if `dragElastic` is disabled. There's still a frame\n * of spring animations so we should look into adding a disable spring option to `inertia`.\n * We could do something here where we affect the `bounceStiffness` and `bounceDamping`\n * using the value of `dragElastic`.\n */\n const bounceStiffness = dragElastic ? 200 : 1000000;\n const bounceDamping = dragElastic ? 40 : 10000000;\n const inertia = {\n type: \"inertia\",\n velocity: dragMomentum ? velocity[axis] : 0,\n bounceStiffness,\n bounceDamping,\n timeConstant: 750,\n restDelta: 1,\n restSpeed: 10,\n ...dragTransition,\n ...transition,\n };\n // If we're not animating on an externally-provided `MotionValue` we can use the\n // component's animation controls which will handle interactions with whileHover (etc),\n // otherwise we just have to animate the `MotionValue` itself.\n return this.startAxisValueAnimation(axis, inertia);\n });\n // Run all animations and then resolve the new drag constraints.\n return Promise.all(momentumAnimations).then(onDragTransitionEnd);\n }\n startAxisValueAnimation(axis, transition) {\n const axisValue = this.getAxisMotionValue(axis);\n return axisValue.start((0,_animation_interfaces_motion_value_mjs__WEBPACK_IMPORTED_MODULE_14__.animateMotionValue)(axis, axisValue, 0, transition));\n }\n stopAnimation() {\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => this.getAxisMotionValue(axis).stop());\n }\n pauseAnimation() {\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => { var _a; return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.pause(); });\n }\n getAnimationState(axis) {\n var _a;\n return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.state;\n }\n /**\n * Drag works differently depending on which props are provided.\n *\n * - If _dragX and _dragY are provided, we output the gesture delta directly to those motion values.\n * - Otherwise, we apply the delta to the x/y motion values.\n */\n getAxisMotionValue(axis) {\n const dragKey = \"_drag\" + axis.toUpperCase();\n const props = this.visualElement.getProps();\n const externalMotionValue = props[dragKey];\n return externalMotionValue\n ? externalMotionValue\n : this.visualElement.getValue(axis, (props.initial ? props.initial[axis] : undefined) || 0);\n }\n snapToCursor(point) {\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n const { drag } = this.getProps();\n // If we're not dragging this axis, do an early return.\n if (!shouldDrag(axis, drag, this.currentDirection))\n return;\n const { projection } = this.visualElement;\n const axisValue = this.getAxisMotionValue(axis);\n if (projection && projection.layout) {\n const { min, max } = projection.layout.layoutBox[axis];\n axisValue.set(point[axis] - (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_15__.mix)(min, max, 0.5));\n }\n });\n }\n /**\n * When the viewport resizes we want to check if the measured constraints\n * have changed and, if so, reposition the element within those new constraints\n * relative to where it was before the resize.\n */\n scalePositionWithinConstraints() {\n if (!this.visualElement.current)\n return;\n const { drag, dragConstraints } = this.getProps();\n const { projection } = this.visualElement;\n if (!(0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_10__.isRefObject)(dragConstraints) || !projection || !this.constraints)\n return;\n /**\n * Stop current animations as there can be visual glitching if we try to do\n * this mid-animation\n */\n this.stopAnimation();\n /**\n * Record the relative position of the dragged element relative to the\n * constraints box and save as a progress value.\n */\n const boxProgress = { x: 0, y: 0 };\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n const axisValue = this.getAxisMotionValue(axis);\n if (axisValue) {\n const latest = axisValue.get();\n boxProgress[axis] = (0,_utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.calcOrigin)({ min: latest, max: latest }, this.constraints[axis]);\n }\n });\n /**\n * Update the layout of this element and resolve the latest drag constraints\n */\n const { transformTemplate } = this.visualElement.getProps();\n this.visualElement.current.style.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n projection.root && projection.root.updateScroll();\n projection.updateLayout();\n this.resolveConstraints();\n /**\n * For each axis, calculate the current progress of the layout axis\n * within the new constraints.\n */\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n if (!shouldDrag(axis, drag, null))\n return;\n /**\n * Calculate a new transform based on the previous box progress\n */\n const axisValue = this.getAxisMotionValue(axis);\n const { min, max } = this.constraints[axis];\n axisValue.set((0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_15__.mix)(min, max, boxProgress[axis]));\n });\n }\n addListeners() {\n if (!this.visualElement.current)\n return;\n elementDragControls.set(this.visualElement, this);\n const element = this.visualElement.current;\n /**\n * Attach a pointerdown event listener on this DOM element to initiate drag tracking.\n */\n const stopPointerListener = (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_16__.addPointerEvent)(element, \"pointerdown\", (event) => {\n const { drag, dragListener = true } = this.getProps();\n drag && dragListener && this.start(event);\n });\n const measureDragConstraints = () => {\n const { dragConstraints } = this.getProps();\n if ((0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_10__.isRefObject)(dragConstraints)) {\n this.constraints = this.resolveRefConstraints();\n }\n };\n const { projection } = this.visualElement;\n const stopMeasureLayoutListener = projection.addEventListener(\"measure\", measureDragConstraints);\n if (projection && !projection.layout) {\n projection.root && projection.root.updateScroll();\n projection.updateLayout();\n }\n measureDragConstraints();\n /**\n * Attach a window resize listener to scale the draggable target within its defined\n * constraints as the window resizes.\n */\n const stopResizeListener = (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_17__.addDomEvent)(window, \"resize\", () => this.scalePositionWithinConstraints());\n /**\n * If the element's layout changes, calculate the delta and apply that to\n * the drag gesture's origin point.\n */\n const stopLayoutUpdateListener = projection.addEventListener(\"didUpdate\", (({ delta, hasLayoutChanged }) => {\n if (this.isDragging && hasLayoutChanged) {\n (0,_projection_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_3__.eachAxis)((axis) => {\n const motionValue = this.getAxisMotionValue(axis);\n if (!motionValue)\n return;\n this.originPoint[axis] += delta[axis].translate;\n motionValue.set(motionValue.get() + delta[axis].translate);\n });\n this.visualElement.render();\n }\n }));\n return () => {\n stopResizeListener();\n stopPointerListener();\n stopMeasureLayoutListener();\n stopLayoutUpdateListener && stopLayoutUpdateListener();\n };\n }\n getProps() {\n const props = this.visualElement.getProps();\n const { drag = false, dragDirectionLock = false, dragPropagation = false, dragConstraints = false, dragElastic = _utils_constraints_mjs__WEBPACK_IMPORTED_MODULE_9__.defaultElastic, dragMomentum = true, } = props;\n return {\n ...props,\n drag,\n dragDirectionLock,\n dragPropagation,\n dragConstraints,\n dragElastic,\n dragMomentum,\n };\n }\n}\nfunction shouldDrag(direction, drag, currentDirection) {\n return ((drag === true || drag === direction) &&\n (currentDirection === null || currentDirection === direction));\n}\n/**\n * Based on an x/y offset determine the current drag direction. If both axis' offsets are lower\n * than the provided threshold, return `null`.\n *\n * @param offset - The x/y offset from origin.\n * @param lockThreshold - (Optional) - the minimum absolute offset before we can determine a drag direction.\n */\nfunction getCurrentDirection(offset, lockThreshold = 10) {\n let direction = null;\n if (Math.abs(offset.y) > lockThreshold) {\n direction = \"y\";\n }\n else if (Math.abs(offset.x) > lockThreshold) {\n direction = \"x\";\n }\n return direction;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZHJhZy9WaXN1YWxFbGVtZW50RHJhZ0NvbnRyb2xzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFtRDtBQUNBO0FBQ0Y7QUFDVztBQUNTO0FBQytHO0FBQ25IO0FBQ0Q7QUFDSTtBQUNMO0FBQzZDO0FBQy9DO0FBQ1M7QUFDNUI7QUFDb0I7QUFDbUI7QUFDWDtBQUNwQjs7QUFFbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QiwwRUFBUztBQUNoQztBQUNBO0FBQ0EseUJBQXlCLHVCQUF1QixJQUFJO0FBQ3BEO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixrQkFBa0I7QUFDbEM7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1CQUFtQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyx3RUFBZ0I7QUFDbEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IscUNBQXFDO0FBQ3pEO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyw4REFBYTtBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSx5RUFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixtRUFBTztBQUMzQiw0QkFBNEIsYUFBYTtBQUN6QztBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsK0VBQVU7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0EsZ0JBQWdCLHVEQUFLO0FBQ3JCO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQztBQUNBO0FBQ0E7QUFD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QUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUwRCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2dlc3R1cmVzL2RyYWcvVmlzdWFsRWxlbWVudERyYWdDb250cm9scy5tanM/ZDI0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnZhcmlhbnQgfSBmcm9tICcuLi8uLi91dGlscy9lcnJvcnMubWpzJztcbmltcG9ydCB7IFBhblNlc3Npb24gfSBmcm9tICcuLi9wYW4vUGFuU2Vzc2lvbi5tanMnO1xuaW1wb3J0IHsgZ2V0R2xvYmFsTG9jayB9IGZyb20gJy4vdXRpbHMvbG9jay5tanMnO1xuaW1wb3J0IHsgaXNSZWZPYmplY3QgfSBmcm9tICcuLi8uLi91dGlscy9pcy1yZWYtb2JqZWN0Lm1qcyc7XG5pbXBvcnQgeyBhZGRQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi9ldmVudHMvYWRkLXBvaW50ZXItZXZlbnQubWpzJztcbmltcG9ydCB7IGFwcGx5Q29uc3RyYWludHMsIGNhbGNSZWxhdGl2ZUNvbnN0cmFpbnRzLCByZXNvbHZlRHJhZ0VsYXN0aWMsIGNhbGNWaWV3cG9ydENvbnN0cmFpbnRzLCBkZWZhdWx0RWxhc3RpYywgcmViYXNlQXhpc0NvbnN0cmFpbnRzLCBjYWxjT3JpZ2luIH0gZnJvbSAnLi91dGlscy9jb25zdHJhaW50cy5tanMnO1xuaW1wb3J0IHsgY3JlYXRlQm94IH0gZnJvbSAnLi4vLi4vcHJvamVjdGlvbi9nZW9tZXRyeS9tb2RlbHMubWpzJztcbmltcG9ydCB7IGVhY2hBeGlzIH0gZnJvbSAnLi4vLi4vcHJvamVjdGlvbi91dGlscy9lYWNoLWF4aXMubWpzJztcbmltcG9ydCB7IG1lYXN1cmVQYWdlQm94IH0gZnJvbSAnLi4vLi4vcHJvamVjdGlvbi91dGlscy9tZWFzdXJlLm1qcyc7XG5pbXBvcnQgeyBleHRyYWN0RXZlbnRJbmZvIH0gZnJvbSAnLi4vLi4vZXZlbnRzL2V2ZW50LWluZm8ubWpzJztcbmltcG9ydCB7IGNvbnZlcnRCb3hUb0JvdW5kaW5nQm94LCBjb252ZXJ0Qm91bmRpbmdCb3hUb0JveCB9IGZyb20gJy4uLy4uL3Byb2plY3Rpb24vZ2VvbWV0cnkvY29udmVyc2lvbi5tanMnO1xuaW1wb3J0IHsgYWRkRG9tRXZlbnQgfSBmcm9tICcuLi8uLi9ldmVudHMvYWRkLWRvbS1ldmVudC5tanMnO1xuaW1wb3J0IHsgY2FsY0xlbmd0aCB9IGZyb20gJy4uLy4uL3Byb2plY3Rpb24vZ2VvbWV0cnkvZGVsdGEtY2FsYy5tanMnO1xuaW1wb3J0IHsgbWl4IH0gZnJvbSAnLi4vLi4vdXRpbHMvbWl4Lm1qcyc7XG5pbXBvcnQgeyBwZXJjZW50IH0gZnJvbSAnLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuaW1wb3J0IHsgYW5pbWF0ZU1vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL2ludGVyZmFjZXMvbW90aW9uLXZhbHVlLm1qcyc7XG5pbXBvcnQgeyBnZXRDb250ZXh0V2luZG93IH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0LWNvbnRleHQtd2luZG93Lm1qcyc7XG5pbXBvcnQgeyBmcmFtZSB9IGZyb20gJy4uLy4uL2ZyYW1lbG9vcC9mcmFtZS5tanMnO1xuXG5jb25zdCBlbGVtZW50RHJhZ0NvbnRyb2xzID0gbmV3IFdlYWtNYXAoKTtcbi8qKlxuICpcbiAqL1xuLy8gbGV0IGxhdGVzdFBvaW50ZXJFdmVudDogUG9pbnRlckV2ZW50XG5jbGFzcyBWaXN1YWxFbGVtZW50RHJhZ0NvbnRyb2xzIHtcbiAgICBjb25zdHJ1Y3Rvcih2aXN1YWxFbGVtZW50KSB7XG4gICAgICAgIC8vIFRoaXMgaXMgYSByZWZlcmVuY2UgdG8gdGhlIGdsb2JhbCBkcmFnIGdlc3R1cmUgbG9jaywgZW5zdXJpbmcgb25seSBvbmUgY29tcG9uZW50XG4gICAgICAgIC8vIGNhbiBcImNhcHR1cmVcIiB0aGUgZHJhZyBvZiBvbmUgb3IgYm90aCBheGVzLlxuICAgICAgICAvLyBUT0RPOiBMb29rIGludG8gbW92aW5nIHRoaXMgaW50byBwYW5zZXNzaW9uP1xuICAgICAgICB0aGlzLm9wZW5HbG9iYWxMb2NrID0gbnVsbDtcbiAgICAgICAgdGhpcy5pc0RyYWdnaW5nID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY3VycmVudERpcmVjdGlvbiA9IG51bGw7XG4gICAgICAgIHRoaXMub3JpZ2luUG9pbnQgPSB7IHg6IDAsIHk6IDAgfTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFRoZSBwZXJtaXR0ZWQgYm91bmRhcmllcyBvZiB0cmF2ZWwsIGluIHBpeGVscy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuY29uc3RyYWludHMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oYXNNdXRhdGVkQ29uc3RyYWludHMgPSBmYWxzZTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFRoZSBwZXItYXhpcyByZXNvbHZlZCBlbGFzdGljIHZhbHVlcy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuZWxhc3RpYyA9IGNyZWF0ZUJveCgpO1xuICAgICAgICB0aGlzLnZpc3VhbEVsZW1lbnQgPSB2aXN1YWxFbGVtZW50O1xuICAgIH1cbiAgICBzdGFydChvcmlnaW5FdmVudCwgeyBzbmFwVG9DdXJzb3IgPSBmYWxzZSB9ID0ge30pIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIERvbid0IHN0YXJ0IGRyYWdnaW5nIGlmIHRoaXMgY29tcG9uZW50IGlzIGV4aXRpbmdcbiAgICAgICAgICovXG4gICAgICAgIGNvbnN0IHsgcHJlc2VuY2VDb250ZXh0IH0gPSB0aGlzLnZpc3VhbEVsZW1lbnQ7XG4gICAgICAgIGlmIChwcmVzZW5jZUNvbnRleHQgJiYgcHJlc2VuY2VDb250ZXh0LmlzUHJlc2VudCA9PT0gZmFsc2UpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IG9uU2Vzc2lvblN0YXJ0ID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGRyYWdTbmFwVG9PcmlnaW4gfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICAgICAgICAgIC8vIFN0b3Agb3IgcGF1c2UgYW55IGFuaW1hdGlvbnMgb24gYm90aCBheGlzIHZhbHVlcyBpbW1lZGlhdGVseS4gVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG8gdGhyb3cgYW5kIGNhdGNoXG4gICAgICAgICAgICAvLyB0aGUgY29tcG9uZW50LlxuICAgICAgICAgICAgZHJhZ1NuYXBUb09yaWdpbiA/IHRoaXMucGF1c2VBbmltYXRpb24oKSA6IHRoaXMuc3RvcEFuaW1hdGlvbigpO1xuICAgICAgICAgICAgaWYgKHNuYXBUb0N1cnNvcikge1xuICAgICAgICAgICAgICAgIHRoaXMuc25hcFRvQ3Vyc29yKGV4dHJhY3RFdmVudEluZm8oZXZlbnQsIFwicGFnZVwiKS5wb2ludCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG9uU3RhcnQgPSAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgIC8vIEF0dGVtcHQgdG8gZ3JhYiB0aGUgZ2xvYmFsIGRyYWcgZ2VzdHVyZSBsb2NrIC0gbWF5YmUgbWFrZSB0aGlzIHBhcnQgb2YgUGFuU2Vzc2lvblxuICAgICAgICAgICAgY29uc3QgeyBkcmFnLCBkcmFnUHJvcGFnYXRpb24sIG9uRHJhZ1N0YXJ0IH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgICAgICBpZiAoZHJhZyAmJiAhZHJhZ1Byb3BhZ2F0aW9uKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub3Blbkdsb2JhbExvY2spXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub3Blbkdsb2JhbExvY2soKTtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5HbG9iYWxMb2NrID0gZ2V0R2xvYmFsTG9jayhkcmFnKTtcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSBkb24gJ3QgaGF2ZSB0aGUgbG9jaywgZG9uJ3Qgc3RhcnQgZHJhZ2dpbmdcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMub3Blbkdsb2JhbExvY2spXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaXNEcmFnZ2luZyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnREaXJlY3Rpb24gPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5yZXNvbHZlQ29uc3RyYWludHMoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLnZpc3VhbEVsZW1lbnQucHJvamVjdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMudmlzdWFsRWxlbWVudC5wcm9qZWN0aW9uLmlzQW5pbWF0aW9uQmxvY2tlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy52aXN1YWxFbGVtZW50LnByb2plY3Rpb24udGFyZ2V0ID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBSZWNvcmQgZ2VzdHVyZSBvcmlnaW5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZWFjaEF4aXMoKGF4aXMpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudCA9IHRoaXMuZ2V0QXhpc01vdGlvblZhbHVlKGF4aXMpLmdldCgpIHx8IDA7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgdGhlIE1vdGlvblZhbHVlIGlzIGEgcGVyY2VudGFnZSB2YWx1ZSBjb252ZXJ0IHRvIHB4XG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgaWYgKHBlcmNlbnQudGVzdChjdXJyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IHByb2plY3Rpb24gfSA9IHRoaXMudmlzdWFsRWxlbWVudDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHByb2plY3Rpb24gJiYgcHJvamVjdGlvbi5sYXlvdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG1lYXN1cmVkQXhpcyA9IHByb2plY3Rpb24ubGF5b3V0LmxheW91dEJveFtheGlzXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtZWFzdXJlZEF4aXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZW5ndGggPSBjYWxjTGVuZ3RoKG1lYXN1cmVkQXhpcyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9IGxlbmd0aCAqIChwYXJzZUZsb2F0KGN1cnJlbnQpIC8gMTAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLm9yaWdpblBvaW50W2F4aXNdID0gY3VycmVudDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgLy8gRmlyZSBvbkRyYWdTdGFydCBldmVudFxuICAgICAgICAgICAgaWYgKG9uRHJhZ1N0YXJ0KSB7XG4gICAgICAgICAgICAgICAgZnJhbWUudXBkYXRlKCgpID0+IG9uRHJhZ1N0YXJ0KGV2ZW50LCBpbmZvKSwgZmFsc2UsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgeyBhbmltYXRpb25TdGF0ZSB9ID0gdGhpcy52aXN1YWxFbGVtZW50O1xuICAgICAgICAgICAgYW5pbWF0aW9uU3RhdGUgJiYgYW5pbWF0aW9uU3RhdGUuc2V0QWN0aXZlKFwid2hpbGVEcmFnXCIsIHRydWUpO1xuICAgICAgICB9O1xuICAgICAgICBjb25zdCBvbk1vdmUgPSAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgIC8vIGxhdGVzdFBvaW50ZXJFdmVudCA9IGV2ZW50XG4gICAgICAgICAgICBjb25zdCB7IGRyYWdQcm9wYWdhdGlvbiwgZHJhZ0RpcmVjdGlvbkxvY2ssIG9uRGlyZWN0aW9uTG9jaywgb25EcmFnLCB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgICAgICAgICAgLy8gSWYgd2UgZGlkbid0IHN1Y2Nlc3NmdWxseSByZWNlaXZlIHRoZSBnZXN0dXJlIGxvY2ssIGVhcmx5IHJldHVybi5cbiAgICAgICAgICAgIGlmICghZHJhZ1Byb3BhZ2F0aW9uICYmICF0aGlzLm9wZW5HbG9iYWxMb2NrKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IHsgb2Zmc2V0IH0gPSBpbmZvO1xuICAgICAgICAgICAgLy8gQXR0ZW1wdCB0byBkZXRlY3QgZHJhZyBkaXJlY3Rpb24gaWYgZGlyZWN0aW9uTG9jayBpcyB0cnVlXG4gICAgICAgICAgICBpZiAoZHJhZ0RpcmVjdGlvbkxvY2sgJiYgdGhpcy5jdXJyZW50RGlyZWN0aW9uID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50RGlyZWN0aW9uID0gZ2V0Q3VycmVudERpcmVjdGlvbihvZmZzZXQpO1xuICAgICAgICAgICAgICAgIC8vIElmIHdlJ3ZlIHN1Y2Nlc3NmdWxseSBzZXQgYSBkaXJlY3Rpb24sIG5vdGlmeSBsaXN0ZW5lclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmN1cnJlbnREaXJlY3Rpb24gIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgb25EaXJlY3Rpb25Mb2NrICYmIG9uRGlyZWN0aW9uTG9jayh0aGlzLmN1cnJlbnREaXJlY3Rpb24pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBVcGRhdGUgZWFjaCBwb2ludCB3aXRoIHRoZSBsYXRlc3QgcG9zaXRpb25cbiAgICAgICAgICAgIHRoaXMudXBkYXRlQXhpcyhcInhcIiwgaW5mby5wb2ludCwgb2Zmc2V0KTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQXhpcyhcInlcIiwgaW5mby5wb2ludCwgb2Zmc2V0KTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWRlYWxseSB3ZSB3b3VsZCBsZWF2ZSB0aGUgcmVuZGVyZXIgdG8gZmlyZSBuYXR1cmFsbHkgYXQgdGhlIGVuZCBvZlxuICAgICAgICAgICAgICogdGhpcyBmcmFtZSBidXQgaWYgdGhlIGVsZW1lbnQgaXMgYWJvdXQgdG8gY2hhbmdlIGxheW91dCBhcyB0aGUgcmVzdWx0XG4gICAgICAgICAgICAgKiBvZiBhIHJlLXJlbmRlciB3ZSB3YW50IHRvIGVuc3VyZSB0aGUgYnJvd3NlciBjYW4gcmVhZCB0aGUgbGF0ZXN0XG4gICAgICAgICAgICAgKiBib3VuZGluZyBib3ggdG8gZW5zdXJlIHRoZSBwb2ludGVyIGFuZCBlbGVtZW50IGRvbid0IGZhbGwgb3V0IG9mIHN5bmMuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMudmlzdWFsRWxlbWVudC5yZW5kZXIoKTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVGhpcyBtdXN0IGZpcmUgYWZ0ZXIgdGhlIHJlbmRlciBjYWxsIGFzIGl0IG1pZ2h0IHRyaWdnZXIgYSBzdGF0ZVxuICAgICAgICAgICAgICogY2hhbmdlIHdoaWNoIGl0c2VsZiBtaWdodCB0cmlnZ2VyIGEgbGF5b3V0IHVwZGF0ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgb25EcmFnICYmIG9uRHJhZyhldmVudCwgaW5mbyk7XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG9uU2Vzc2lvbkVuZCA9IChldmVudCwgaW5mbykgPT4gdGhpcy5zdG9wKGV2ZW50LCBpbmZvKTtcbiAgICAgICAgY29uc3QgcmVzdW1lQW5pbWF0aW9uID0gKCkgPT4gZWFjaEF4aXMoKGF4aXMpID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldEFuaW1hdGlvblN0YXRlKGF4aXMpID09PSBcInBhdXNlZFwiICYmXG4gICAgICAgICAgICAgICAgKChfYSA9IHRoaXMuZ2V0QXhpc01vdGlvblZhbHVlKGF4aXMpLmFuaW1hdGlvbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnBsYXkoKSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCB7IGRyYWdTbmFwVG9PcmlnaW4gfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICAgICAgdGhpcy5wYW5TZXNzaW9uID0gbmV3IFBhblNlc3Npb24ob3JpZ2luRXZlbnQsIHtcbiAgICAgICAgICAgIG9uU2Vzc2lvblN0YXJ0LFxuICAgICAgICAgICAgb25TdGFydCxcbiAgICAgICAgICAgIG9uTW92ZSxcbiAgICAgICAgICAgIG9uU2Vzc2lvbkVuZCxcbiAgICAgICAgICAgIHJlc3VtZUFuaW1hdGlvbixcbiAgICAgICAgfSwge1xuICAgICAgICAgICAgdHJhbnNmb3JtUGFnZVBvaW50OiB0aGlzLnZpc3VhbEVsZW1lbnQuZ2V0VHJhbnNmb3JtUGFnZVBvaW50KCksXG4gICAgICAgICAgICBkcmFnU25hcFRvT3JpZ2luLFxuICAgICAgICAgICAgY29udGV4dFdpbmRvdzogZ2V0Q29udGV4dFdpbmRvdyh0aGlzLnZpc3VhbEVsZW1lbnQpLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgc3RvcChldmVudCwgaW5mbykge1xuICAgICAgICBjb25zdCBpc0RyYWdnaW5nID0gdGhpcy5pc0RyYWdnaW5nO1xuICAgICAgICB0aGlzLmNhbmNlbCgpO1xuICAgICAgICBpZiAoIWlzRHJhZ2dpbmcpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHsgdmVsb2NpdHkgfSA9IGluZm87XG4gICAgICAgIHRoaXMuc3RhcnRBbmltYXRpb24odmVsb2NpdHkpO1xuICAgICAgICBjb25zdCB7IG9uRHJhZ0VuZCB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgICAgICBpZiAob25EcmFnRW5kKSB7XG4gICAgICAgICAgICBmcmFtZS51cGRhdGUoKCkgPT4gb25EcmFnRW5kKGV2ZW50LCBpbmZvKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2FuY2VsKCkge1xuICAgICAgICB0aGlzLmlzRHJhZ2dpbmcgPSBmYWxzZTtcbiAgICAgICAgY29uc3QgeyBwcm9qZWN0aW9uLCBhbmltYXRpb25TdGF0ZSB9ID0gdGhpcy52aXN1YWxFbGVtZW50O1xuICAgICAgICBpZiAocHJvamVjdGlvbikge1xuICAgICAgICAgICAgcHJvamVjdGlvbi5pc0FuaW1hdGlvbkJsb2NrZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnBhblNlc3Npb24gJiYgdGhpcy5wYW5TZXNzaW9uLmVuZCgpO1xuICAgICAgICB0aGlzLnBhblNlc3Npb24gPSB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHsgZHJhZ1Byb3BhZ2F0aW9uIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgIGlmICghZHJhZ1Byb3BhZ2F0aW9uICYmIHRoaXMub3Blbkdsb2JhbExvY2spIHtcbiAgICAgICAgICAgIHRoaXMub3Blbkdsb2JhbExvY2soKTtcbiAgICAgICAgICAgIHRoaXMub3Blbkdsb2JhbExvY2sgPSBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGFuaW1hdGlvblN0YXRlICYmIGFuaW1hdGlvblN0YXRlLnNldEFjdGl2ZShcIndoaWxlRHJhZ1wiLCBmYWxzZSk7XG4gICAgfVxuICAgIHVwZGF0ZUF4aXMoYXhpcywgX3BvaW50LCBvZmZzZXQpIHtcbiAgICAgICAgY29uc3QgeyBkcmFnIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgIC8vIElmIHdlJ3JlIG5vdCBkcmFnZ2luZyB0aGlzIGF4aXMsIGRvIGFuIGVhcmx5IHJldHVybi5cbiAgICAgICAgaWYgKCFvZmZzZXQgfHwgIXNob3VsZERyYWcoYXhpcywgZHJhZywgdGhpcy5jdXJyZW50RGlyZWN0aW9uKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgYXhpc1ZhbHVlID0gdGhpcy5nZXRBeGlzTW90aW9uVmFsdWUoYXhpcyk7XG4gICAgICAgIGxldCBuZXh0ID0gdGhpcy5vcmlnaW5Qb2ludFtheGlzXSArIG9mZnNldFtheGlzXTtcbiAgICAgICAgLy8gQXBwbHkgY29uc3RyYWludHNcbiAgICAgICAgaWYgKHRoaXMuY29uc3RyYWludHMgJiYgdGhpcy5jb25zdHJhaW50c1theGlzXSkge1xuICAgICAgICAgICAgbmV4dCA9IGFwcGx5Q29uc3RyYWludHMobmV4dCwgdGhpcy5jb25zdHJhaW50c1theGlzXSwgdGhpcy5lbGFzdGljW2F4aXNdKTtcbiAgICAgICAgfVxuICAgICAgICBheGlzVmFsdWUuc2V0KG5leHQpO1xuICAgIH1cbiAgICByZXNvbHZlQ29uc3RyYWludHMoKSB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgeyBkcmFnQ29uc3RyYWludHMsIGRyYWdFbGFzdGljIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgIGNvbnN0IGxheW91dCA9IHRoaXMudmlzdWFsRWxlbWVudC5wcm9qZWN0aW9uICYmXG4gICAgICAgICAgICAhdGhpcy52aXN1YWxFbGVtZW50LnByb2plY3Rpb24ubGF5b3V0XG4gICAgICAgICAgICA/IHRoaXMudmlzdWFsRWxlbWVudC5wcm9qZWN0aW9uLm1lYXN1cmUoZmFsc2UpXG4gICAgICAgICAgICA6IChfYSA9IHRoaXMudmlzdWFsRWxlbWVudC5wcm9qZWN0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubGF5b3V0O1xuICAgICAgICBjb25zdCBwcmV2Q29uc3RyYWludHMgPSB0aGlzLmNvbnN0cmFpbnRzO1xuICAgICAgICBpZiAoZHJhZ0NvbnN0cmFpbnRzICYmIGlzUmVmT2JqZWN0KGRyYWdDb25zdHJhaW50cykpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5jb25zdHJhaW50cykge1xuICAgICAgICAgICAgICAgIHRoaXMuY29uc3RyYWludHMgPSB0aGlzLnJlc29sdmVSZWZDb25zdHJhaW50cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaWYgKGRyYWdDb25zdHJhaW50cyAmJiBsYXlvdXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnN0cmFpbnRzID0gY2FsY1JlbGF0aXZlQ29uc3RyYWludHMobGF5b3V0LmxheW91dEJveCwgZHJhZ0NvbnN0cmFpbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuY29uc3RyYWludHMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVsYXN0aWMgPSByZXNvbHZlRHJhZ0VsYXN0aWMoZHJhZ0VsYXN0aWMpO1xuICAgICAgICAvKipcbiAgICAgICAgICogSWYgd2UncmUgb3V0cHV0dGluZyB0byBleHRlcm5hbCBNb3Rpb25WYWx1ZXMsIHdlIHdhbnQgdG8gcmViYXNlIHRoZSBtZWFzdXJlZCBjb25zdHJhaW50c1xuICAgICAgICAgKiBmcm9tIHZpZXdwb3J0LXJlbGF0aXZlIHRvIGNvbXBvbmVudC1yZWxhdGl2ZS5cbiAgICAgICAgICovXG4gICAgICAgIGlmIChwcmV2Q29uc3RyYWludHMgIT09IHRoaXMuY29uc3RyYWludHMgJiZcbiAgICAgICAgICAgIGxheW91dCAmJlxuICAgICAgICAgICAgdGhpcy5jb25zdHJhaW50cyAmJlxuICAgICAgICAgICAgIXRoaXMuaGFzTXV0YXRlZENvbnN0cmFpbnRzKSB7XG4gICAgICAgICAgICBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmdldEF4aXNNb3Rpb25WYWx1ZShheGlzKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnN0cmFpbnRzW2F4aXNdID0gcmViYXNlQXhpc0NvbnN0cmFpbnRzKGxheW91dC5sYXlvdXRCb3hbYXhpc10sIHRoaXMuY29uc3RyYWludHNbYXhpc10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJlc29sdmVSZWZDb25zdHJhaW50cygpIHtcbiAgICAgICAgY29uc3QgeyBkcmFnQ29uc3RyYWludHM6IGNvbnN0cmFpbnRzLCBvbk1lYXN1cmVEcmFnQ29uc3RyYWludHMgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICAgICAgaWYgKCFjb25zdHJhaW50cyB8fCAhaXNSZWZPYmplY3QoY29uc3RyYWludHMpKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICBjb25zdCBjb25zdHJhaW50c0VsZW1lbnQgPSBjb25zdHJhaW50cy5jdXJyZW50O1xuICAgICAgICBpbnZhcmlhbnQoY29uc3RyYWludHNFbGVtZW50ICE9PSBudWxsLCBcIklmIGBkcmFnQ29uc3RyYWludHNgIGlzIHNldCBhcyBhIFJlYWN0IHJlZiwgdGhhdCByZWYgbXVzdCBiZSBwYXNzZWQgdG8gYW5vdGhlciBjb21wb25lbnQncyBgcmVmYCBwcm9wLlwiKTtcbiAgICAgICAgY29uc3QgeyBwcm9qZWN0aW9uIH0gPSB0aGlzLnZpc3VhbEVsZW1lbnQ7XG4gICAgICAgIC8vIFRPRE9cbiAgICAgICAgaWYgKCFwcm9qZWN0aW9uIHx8ICFwcm9qZWN0aW9uLmxheW91dClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgY29uc3RyYWludHNCb3ggPSBtZWFzdXJlUGFnZUJveChjb25zdHJhaW50c0VsZW1lbnQsIHByb2plY3Rpb24ucm9vdCwgdGhpcy52aXN1YWxFbGVtZW50LmdldFRyYW5zZm9ybVBhZ2VQb2ludCgpKTtcbiAgICAgICAgbGV0IG1lYXN1cmVkQ29uc3RyYWludHMgPSBjYWxjVmlld3BvcnRDb25zdHJhaW50cyhwcm9qZWN0aW9uLmxheW91dC5sYXlvdXRCb3gsIGNvbnN0cmFpbnRzQm94KTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZXJlJ3MgYW4gb25NZWFzdXJlRHJhZ0NvbnN0cmFpbnRzIGxpc3RlbmVyIHdlIGNhbGwgaXQgYW5kXG4gICAgICAgICAqIGlmIGRpZmZlcmVudCBjb25zdHJhaW50cyBhcmUgcmV0dXJuZWQsIHNldCBjb25zdHJhaW50cyB0byB0aGF0XG4gICAgICAgICAqL1xuICAgICAgICBpZiAob25NZWFzdXJlRHJhZ0NvbnN0cmFpbnRzKSB7XG4gICAgICAgICAgICBjb25zdCB1c2VyQ29uc3RyYWludHMgPSBvbk1lYXN1cmVEcmFnQ29uc3RyYWludHMoY29udmVydEJveFRvQm91bmRpbmdCb3gobWVhc3VyZWRDb25zdHJhaW50cykpO1xuICAgICAgICAgICAgdGhpcy5oYXNNdXRhdGVkQ29uc3RyYWludHMgPSAhIXVzZXJDb25zdHJhaW50cztcbiAgICAgICAgICAgIGlmICh1c2VyQ29uc3RyYWludHMpIHtcbiAgICAgICAgICAgICAgICBtZWFzdXJlZENvbnN0cmFpbnRzID0gY29udmVydEJvdW5kaW5nQm94VG9Cb3godXNlckNvbnN0cmFpbnRzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWVhc3VyZWRDb25zdHJhaW50cztcbiAgICB9XG4gICAgc3RhcnRBbmltYXRpb24odmVsb2NpdHkpIHtcbiAgICAgICAgY29uc3QgeyBkcmFnLCBkcmFnTW9tZW50dW0sIGRyYWdFbGFzdGljLCBkcmFnVHJhbnNpdGlvbiwgZHJhZ1NuYXBUb09yaWdpbiwgb25EcmFnVHJhbnNpdGlvbkVuZCwgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICAgICAgY29uc3QgY29uc3RyYWludHMgPSB0aGlzLmNvbnN0cmFpbnRzIHx8IHt9O1xuICAgICAgICBjb25zdCBtb21lbnR1bUFuaW1hdGlvbnMgPSBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgaWYgKCFzaG91bGREcmFnKGF4aXMsIGRyYWcsIHRoaXMuY3VycmVudERpcmVjdGlvbikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgdHJhbnNpdGlvbiA9IChjb25zdHJhaW50cyAmJiBjb25zdHJhaW50c1theGlzXSkgfHwge307XG4gICAgICAgICAgICBpZiAoZHJhZ1NuYXBUb09yaWdpbilcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uID0geyBtaW46IDAsIG1heDogMCB9O1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBPdmVyZGFtcCB0aGUgYm91bmRhcnkgc3ByaW5nIGlmIGBkcmFnRWxhc3RpY2AgaXMgZGlzYWJsZWQuIFRoZXJlJ3Mgc3RpbGwgYSBmcmFtZVxuICAgICAgICAgICAgICogb2Ygc3ByaW5nIGFuaW1hdGlvbnMgc28gd2Ugc2hvdWxkIGxvb2sgaW50byBhZGRpbmcgYSBkaXNhYmxlIHNwcmluZyBvcHRpb24gdG8gYGluZXJ0aWFgLlxuICAgICAgICAgICAgICogV2UgY291bGQgZG8gc29tZXRoaW5nIGhlcmUgd2hlcmUgd2UgYWZmZWN0IHRoZSBgYm91bmNlU3RpZmZuZXNzYCBhbmQgYGJvdW5jZURhbXBpbmdgXG4gICAgICAgICAgICAgKiB1c2luZyB0aGUgdmFsdWUgb2YgYGRyYWdFbGFzdGljYC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgYm91bmNlU3RpZmZuZXNzID0gZHJhZ0VsYXN0aWMgPyAyMDAgOiAxMDAwMDAwO1xuICAgICAgICAgICAgY29uc3QgYm91bmNlRGFtcGluZyA9IGRyYWdFbGFzdGljID8gNDAgOiAxMDAwMDAwMDtcbiAgICAgICAgICAgIGNvbnN0IGluZXJ0aWEgPSB7XG4gICAgICAgICAgICAgICAgdHlwZTogXCJpbmVydGlhXCIsXG4gICAgICAgICAgICAgICAgdmVsb2NpdHk6IGRyYWdNb21lbnR1bSA/IHZlbG9jaXR5W2F4aXNdIDogMCxcbiAgICAgICAgICAgICAgICBib3VuY2VTdGlmZm5lc3MsXG4gICAgICAgICAgICAgICAgYm91bmNlRGFtcGluZyxcbiAgICAgICAgICAgICAgICB0aW1lQ29uc3RhbnQ6IDc1MCxcbiAgICAgICAgICAgICAgICByZXN0RGVsdGE6IDEsXG4gICAgICAgICAgICAgICAgcmVzdFNwZWVkOiAxMCxcbiAgICAgICAgICAgICAgICAuLi5kcmFnVHJhbnNpdGlvbixcbiAgICAgICAgICAgICAgICAuLi50cmFuc2l0aW9uLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vIElmIHdlJ3JlIG5vdCBhbmltYXRpbmcgb24gYW4gZXh0ZXJuYWxseS1wcm92aWRlZCBgTW90aW9uVmFsdWVgIHdlIGNhbiB1c2UgdGhlXG4gICAgICAgICAgICAvLyBjb21wb25lbnQncyBhbmltYXRpb24gY29udHJvbHMgd2hpY2ggd2lsbCBoYW5kbGUgaW50ZXJhY3Rpb25zIHdpdGggd2hpbGVIb3ZlciAoZXRjKSxcbiAgICAgICAgICAgIC8vIG90aGVyd2lzZSB3ZSBqdXN0IGhhdmUgdG8gYW5pbWF0ZSB0aGUgYE1vdGlvblZhbHVlYCBpdHNlbGYuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zdGFydEF4aXNWYWx1ZUFuaW1hdGlvbihheGlzLCBpbmVydGlhKTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIFJ1biBhbGwgYW5pbWF0aW9ucyBhbmQgdGhlbiByZXNvbHZlIHRoZSBuZXcgZHJhZyBjb25zdHJhaW50cy5cbiAgICAgICAgcmV0dXJuIFByb21pc2UuYWxsKG1vbWVudHVtQW5pbWF0aW9ucykudGhlbihvbkRyYWdUcmFuc2l0aW9uRW5kKTtcbiAgICB9XG4gICAgc3RhcnRBeGlzVmFsdWVBbmltYXRpb24oYXhpcywgdHJhbnNpdGlvbikge1xuICAgICAgICBjb25zdCBheGlzVmFsdWUgPSB0aGlzLmdldEF4aXNNb3Rpb25WYWx1ZShheGlzKTtcbiAgICAgICAgcmV0dXJuIGF4aXNWYWx1ZS5zdGFydChhbmltYXRlTW90aW9uVmFsdWUoYXhpcywgYXhpc1ZhbHVlLCAwLCB0cmFuc2l0aW9uKSk7XG4gICAgfVxuICAgIHN0b3BBbmltYXRpb24oKSB7XG4gICAgICAgIGVhY2hBeGlzKChheGlzKSA9PiB0aGlzLmdldEF4aXNNb3Rpb25WYWx1ZShheGlzKS5zdG9wKCkpO1xuICAgIH1cbiAgICBwYXVzZUFuaW1hdGlvbigpIHtcbiAgICAgICAgZWFjaEF4aXMoKGF4aXMpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gdGhpcy5nZXRBeGlzTW90aW9uVmFsdWUoYXhpcykuYW5pbWF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucGF1c2UoKTsgfSk7XG4gICAgfVxuICAgIGdldEFuaW1hdGlvblN0YXRlKGF4aXMpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gKF9hID0gdGhpcy5nZXRBeGlzTW90aW9uVmFsdWUoYXhpcykuYW5pbWF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc3RhdGU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIERyYWcgd29ya3MgZGlmZmVyZW50bHkgZGVwZW5kaW5nIG9uIHdoaWNoIHByb3BzIGFyZSBwcm92aWRlZC5cbiAgICAgKlxuICAgICAqIC0gSWYgX2RyYWdYIGFuZCBfZHJhZ1kgYXJlIHByb3ZpZGVkLCB3ZSBvdXRwdXQgdGhlIGdlc3R1cmUgZGVsdGEgZGlyZWN0bHkgdG8gdGhvc2UgbW90aW9uIHZhbHVlcy5cbiAgICAgKiAtIE90aGVyd2lzZSwgd2UgYXBwbHkgdGhlIGRlbHRhIHRvIHRoZSB4L3kgbW90aW9uIHZhbHVlcy5cbiAgICAgKi9cbiAgICBnZXRBeGlzTW90aW9uVmFsdWUoYXhpcykge1xuICAgICAgICBjb25zdCBkcmFnS2V5ID0gXCJfZHJhZ1wiICsgYXhpcy50b1VwcGVyQ2FzZSgpO1xuICAgICAgICBjb25zdCBwcm9wcyA9IHRoaXMudmlzdWFsRWxlbWVudC5nZXRQcm9wcygpO1xuICAgICAgICBjb25zdCBleHRlcm5hbE1vdGlvblZhbHVlID0gcHJvcHNbZHJhZ0tleV07XG4gICAgICAgIHJldHVybiBleHRlcm5hbE1vdGlvblZhbHVlXG4gICAgICAgICAgICA/IGV4dGVybmFsTW90aW9uVmFsdWVcbiAgICAgICAgICAgIDogdGhpcy52aXN1YWxFbGVtZW50LmdldFZhbHVlKGF4aXMsIChwcm9wcy5pbml0aWFsID8gcHJvcHMuaW5pdGlhbFtheGlzXSA6IHVuZGVmaW5lZCkgfHwgMCk7XG4gICAgfVxuICAgIHNuYXBUb0N1cnNvcihwb2ludCkge1xuICAgICAgICBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBkcmFnIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgICAgICAvLyBJZiB3ZSdyZSBub3QgZHJhZ2dpbmcgdGhpcyBheGlzLCBkbyBhbiBlYXJseSByZXR1cm4uXG4gICAgICAgICAgICBpZiAoIXNob3VsZERyYWcoYXhpcywgZHJhZywgdGhpcy5jdXJyZW50RGlyZWN0aW9uKSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjb25zdCB7IHByb2plY3Rpb24gfSA9IHRoaXMudmlzdWFsRWxlbWVudDtcbiAgICAgICAgICAgIGNvbnN0IGF4aXNWYWx1ZSA9IHRoaXMuZ2V0QXhpc01vdGlvblZhbHVlKGF4aXMpO1xuICAgICAgICAgICAgaWYgKHByb2plY3Rpb24gJiYgcHJvamVjdGlvbi5sYXlvdXQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IG1pbiwgbWF4IH0gPSBwcm9qZWN0aW9uLmxheW91dC5sYXlvdXRCb3hbYXhpc107XG4gICAgICAgICAgICAgICAgYXhpc1ZhbHVlLnNldChwb2ludFtheGlzXSAtIG1peChtaW4sIG1heCwgMC41KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBXaGVuIHRoZSB2aWV3cG9ydCByZXNpemVzIHdlIHdhbnQgdG8gY2hlY2sgaWYgdGhlIG1lYXN1cmVkIGNvbnN0cmFpbnRzXG4gICAgICogaGF2ZSBjaGFuZ2VkIGFuZCwgaWYgc28sIHJlcG9zaXRpb24gdGhlIGVsZW1lbnQgd2l0aGluIHRob3NlIG5ldyBjb25zdHJhaW50c1xuICAgICAqIHJlbGF0aXZlIHRvIHdoZXJlIGl0IHdhcyBiZWZvcmUgdGhlIHJlc2l6ZS5cbiAgICAgKi9cbiAgICBzY2FsZVBvc2l0aW9uV2l0aGluQ29uc3RyYWludHMoKSB7XG4gICAgICAgIGlmICghdGhpcy52aXN1YWxFbGVtZW50LmN1cnJlbnQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHsgZHJhZywgZHJhZ0NvbnN0cmFpbnRzIH0gPSB0aGlzLmdldFByb3BzKCk7XG4gICAgICAgIGNvbnN0IHsgcHJvamVjdGlvbiB9ID0gdGhpcy52aXN1YWxFbGVtZW50O1xuICAgICAgICBpZiAoIWlzUmVmT2JqZWN0KGRyYWdDb25zdHJhaW50cykgfHwgIXByb2plY3Rpb24gfHwgIXRoaXMuY29uc3RyYWludHMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBTdG9wIGN1cnJlbnQgYW5pbWF0aW9ucyBhcyB0aGVyZSBjYW4gYmUgdmlzdWFsIGdsaXRjaGluZyBpZiB3ZSB0cnkgdG8gZG9cbiAgICAgICAgICogdGhpcyBtaWQtYW5pbWF0aW9uXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnN0b3BBbmltYXRpb24oKTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFJlY29yZCB0aGUgcmVsYXRpdmUgcG9zaXRpb24gb2YgdGhlIGRyYWdnZWQgZWxlbWVudCByZWxhdGl2ZSB0byB0aGVcbiAgICAgICAgICogY29uc3RyYWludHMgYm94IGFuZCBzYXZlIGFzIGEgcHJvZ3Jlc3MgdmFsdWUuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBib3hQcm9ncmVzcyA9IHsgeDogMCwgeTogMCB9O1xuICAgICAgICBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXhpc1ZhbHVlID0gdGhpcy5nZXRBeGlzTW90aW9uVmFsdWUoYXhpcyk7XG4gICAgICAgICAgICBpZiAoYXhpc1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGF0ZXN0ID0gYXhpc1ZhbHVlLmdldCgpO1xuICAgICAgICAgICAgICAgIGJveFByb2dyZXNzW2F4aXNdID0gY2FsY09yaWdpbih7IG1pbjogbGF0ZXN0LCBtYXg6IGxhdGVzdCB9LCB0aGlzLmNvbnN0cmFpbnRzW2F4aXNdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVcGRhdGUgdGhlIGxheW91dCBvZiB0aGlzIGVsZW1lbnQgYW5kIHJlc29sdmUgdGhlIGxhdGVzdCBkcmFnIGNvbnN0cmFpbnRzXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCB7IHRyYW5zZm9ybVRlbXBsYXRlIH0gPSB0aGlzLnZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKTtcbiAgICAgICAgdGhpcy52aXN1YWxFbGVtZW50LmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gdHJhbnNmb3JtVGVtcGxhdGVcbiAgICAgICAgICAgID8gdHJhbnNmb3JtVGVtcGxhdGUoe30sIFwiXCIpXG4gICAgICAgICAgICA6IFwibm9uZVwiO1xuICAgICAgICBwcm9qZWN0aW9uLnJvb3QgJiYgcHJvamVjdGlvbi5yb290LnVwZGF0ZVNjcm9sbCgpO1xuICAgICAgICBwcm9qZWN0aW9uLnVwZGF0ZUxheW91dCgpO1xuICAgICAgICB0aGlzLnJlc29sdmVDb25zdHJhaW50cygpO1xuICAgICAgICAvKipcbiAgICAgICAgICogRm9yIGVhY2ggYXhpcywgY2FsY3VsYXRlIHRoZSBjdXJyZW50IHByb2dyZXNzIG9mIHRoZSBsYXlvdXQgYXhpc1xuICAgICAgICAgKiB3aXRoaW4gdGhlIG5ldyBjb25zdHJhaW50cy5cbiAgICAgICAgICovXG4gICAgICAgIGVhY2hBeGlzKChheGlzKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXNob3VsZERyYWcoYXhpcywgZHJhZywgbnVsbCkpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBDYWxjdWxhdGUgYSBuZXcgdHJhbnNmb3JtIGJhc2VkIG9uIHRoZSBwcmV2aW91cyBib3ggcHJvZ3Jlc3NcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgYXhpc1ZhbHVlID0gdGhpcy5nZXRBeGlzTW90aW9uVmFsdWUoYXhpcyk7XG4gICAgICAgICAgICBjb25zdCB7IG1pbiwgbWF4IH0gPSB0aGlzLmNvbnN0cmFpbnRzW2F4aXNdO1xuICAgICAgICAgICAgYXhpc1ZhbHVlLnNldChtaXgobWluLCBtYXgsIGJveFByb2dyZXNzW2F4aXNdKSk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBhZGRMaXN0ZW5lcnMoKSB7XG4gICAgICAgIGlmICghdGhpcy52aXN1YWxFbGVtZW50LmN1cnJlbnQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGVsZW1lbnREcmFnQ29udHJvbHMuc2V0KHRoaXMudmlzdWFsRWxlbWVudCwgdGhpcyk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLnZpc3VhbEVsZW1lbnQuY3VycmVudDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEF0dGFjaCBhIHBvaW50ZXJkb3duIGV2ZW50IGxpc3RlbmVyIG9uIHRoaXMgRE9NIGVsZW1lbnQgdG8gaW5pdGlhdGUgZHJhZyB0cmFja2luZy5cbiAgICAgICAgICovXG4gICAgICAgIGNvbnN0IHN0b3BQb2ludGVyTGlzdGVuZXIgPSBhZGRQb2ludGVyRXZlbnQoZWxlbWVudCwgXCJwb2ludGVyZG93blwiLCAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHsgZHJhZywgZHJhZ0xpc3RlbmVyID0gdHJ1ZSB9ID0gdGhpcy5nZXRQcm9wcygpO1xuICAgICAgICAgICAgZHJhZyAmJiBkcmFnTGlzdGVuZXIgJiYgdGhpcy5zdGFydChldmVudCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBtZWFzdXJlRHJhZ0NvbnN0cmFpbnRzID0gKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBkcmFnQ29uc3RyYWludHMgfSA9IHRoaXMuZ2V0UHJvcHMoKTtcbiAgICAgICAgICAgIGlmIChpc1JlZk9iamVjdChkcmFnQ29uc3RyYWludHMpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25zdHJhaW50cyA9IHRoaXMucmVzb2x2ZVJlZkNvbnN0cmFpbnRzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHsgcHJvamVjdGlvbiB9ID0gdGhpcy52aXN1YWxFbGVtZW50O1xuICAgICAgICBjb25zdCBzdG9wTWVhc3VyZUxheW91dExpc3RlbmVyID0gcHJvamVjdGlvbi5hZGRFdmVudExpc3RlbmVyKFwibWVhc3VyZVwiLCBtZWFzdXJlRHJhZ0NvbnN0cmFpbnRzKTtcbiAgICAgICAgaWYgKHByb2plY3Rpb24gJiYgIXByb2plY3Rpb24ubGF5b3V0KSB7XG4gICAgICAgICAgICBwcm9qZWN0aW9uLnJvb3QgJiYgcHJvamVjdGlvbi5yb290LnVwZGF0ZVNjcm9sbCgpO1xuICAgICAgICAgICAgcHJvamVjdGlvbi51cGRhdGVMYXlvdXQoKTtcbiAgICAgICAgfVxuICAgICAgICBtZWFzdXJlRHJhZ0NvbnN0cmFpbnRzKCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBdHRhY2ggYSB3aW5kb3cgcmVzaXplIGxpc3RlbmVyIHRvIHNjYWxlIHRoZSBkcmFnZ2FibGUgdGFyZ2V0IHdpdGhpbiBpdHMgZGVmaW5lZFxuICAgICAgICAgKiBjb25zdHJhaW50cyBhcyB0aGUgd2luZG93IHJlc2l6ZXMuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBzdG9wUmVzaXplTGlzdGVuZXIgPSBhZGREb21FdmVudCh3aW5kb3csIFwicmVzaXplXCIsICgpID0+IHRoaXMuc2NhbGVQb3NpdGlvbldpdGhpbkNvbnN0cmFpbnRzKCkpO1xuICAgICAgICAvKipcbiAgICAgICAgICogSWYgdGhlIGVsZW1lbnQncyBsYXlvdXQgY2hhbmdlcywgY2FsY3VsYXRlIHRoZSBkZWx0YSBhbmQgYXBwbHkgdGhhdCB0b1xuICAgICAgICAgKiB0aGUgZHJhZyBnZXN0dXJlJ3Mgb3JpZ2luIHBvaW50LlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3Qgc3RvcExheW91dFVwZGF0ZUxpc3RlbmVyID0gcHJvamVjdGlvbi5hZGRFdmVudExpc3RlbmVyKFwiZGlkVXBkYXRlXCIsICgoeyBkZWx0YSwgaGFzTGF5b3V0Q2hhbmdlZCB9KSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0RyYWdnaW5nICYmIGhhc0xheW91dENoYW5nZWQpIHtcbiAgICAgICAgICAgICAgICBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtb3Rpb25WYWx1ZSA9IHRoaXMuZ2V0QXhpc01vdGlvblZhbHVlKGF4aXMpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW1vdGlvblZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm9yaWdpblBvaW50W2F4aXNdICs9IGRlbHRhW2F4aXNdLnRyYW5zbGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgbW90aW9uVmFsdWUuc2V0KG1vdGlvblZhbHVlLmdldCgpICsgZGVsdGFbYXhpc10udHJhbnNsYXRlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnZpc3VhbEVsZW1lbnQucmVuZGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIHN0b3BSZXNpemVMaXN0ZW5lcigpO1xuICAgICAgICAgICAgc3RvcFBvaW50ZXJMaXN0ZW5lcigpO1xuICAgICAgICAgICAgc3RvcE1lYXN1cmVMYXlvdXRMaXN0ZW5lcigpO1xuICAgICAgICAgICAgc3RvcExheW91dFVwZGF0ZUxpc3RlbmVyICYmIHN0b3BMYXlvdXRVcGRhdGVMaXN0ZW5lcigpO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBnZXRQcm9wcygpIHtcbiAgICAgICAgY29uc3QgcHJvcHMgPSB0aGlzLnZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKTtcbiAgICAgICAgY29uc3QgeyBkcmFnID0gZmFsc2UsIGRyYWdEaXJlY3Rpb25Mb2NrID0gZmFsc2UsIGRyYWdQcm9wYWdhdGlvbiA9IGZhbHNlLCBkcmFnQ29uc3RyYWludHMgPSBmYWxzZSwgZHJhZ0VsYXN0aWMgPSBkZWZhdWx0RWxhc3RpYywgZHJhZ01vbWVudHVtID0gdHJ1ZSwgfSA9IHByb3BzO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgICAgICBkcmFnLFxuICAgICAgICAgICAgZHJhZ0RpcmVjdGlvbkxvY2ssXG4gICAgICAgICAgICBkcmFnUHJvcGFnYXRpb24sXG4gICAgICAgICAgICBkcmFnQ29uc3RyYWludHMsXG4gICAgICAgICAgICBkcmFnRWxhc3RpYyxcbiAgICAgICAgICAgIGRyYWdNb21lbnR1bSxcbiAgICAgICAgfTtcbiAgICB9XG59XG5mdW5jdGlvbiBzaG91bGREcmFnKGRpcmVjdGlvbiwgZHJhZywgY3VycmVudERpcmVjdGlvbikge1xuICAgIHJldHVybiAoKGRyYWcgPT09IHRydWUgfHwgZHJhZyA9PT0gZGlyZWN0aW9uKSAmJlxuICAgICAgICAoY3VycmVudERpcmVjdGlvbiA9PT0gbnVsbCB8fCBjdXJyZW50RGlyZWN0aW9uID09PSBkaXJlY3Rpb24pKTtcbn1cbi8qKlxuICogQmFzZWQgb24gYW4geC95IG9mZnNldCBkZXRlcm1pbmUgdGhlIGN1cnJlbnQgZHJhZyBkaXJlY3Rpb24uIElmIGJvdGggYXhpcycgb2Zmc2V0cyBhcmUgbG93ZXJcbiAqIHRoYW4gdGhlIHByb3ZpZGVkIHRocmVzaG9sZCwgcmV0dXJuIGBudWxsYC5cbiAqXG4gKiBAcGFyYW0gb2Zmc2V0IC0gVGhlIHgveSBvZmZzZXQgZnJvbSBvcmlnaW4uXG4gKiBAcGFyYW0gbG9ja1RocmVzaG9sZCAtIChPcHRpb25hbCkgLSB0aGUgbWluaW11bSBhYnNvbHV0ZSBvZmZzZXQgYmVmb3JlIHdlIGNhbiBkZXRlcm1pbmUgYSBkcmFnIGRpcmVjdGlvbi5cbiAqL1xuZnVuY3Rpb24gZ2V0Q3VycmVudERpcmVjdGlvbihvZmZzZXQsIGxvY2tUaHJlc2hvbGQgPSAxMCkge1xuICAgIGxldCBkaXJlY3Rpb24gPSBudWxsO1xuICAgIGlmIChNYXRoLmFicyhvZmZzZXQueSkgPiBsb2NrVGhyZXNob2xkKSB7XG4gICAgICAgIGRpcmVjdGlvbiA9IFwieVwiO1xuICAgIH1cbiAgICBlbHNlIGlmIChNYXRoLmFicyhvZmZzZXQueCkgPiBsb2NrVGhyZXNob2xkKSB7XG4gICAgICAgIGRpcmVjdGlvbiA9IFwieFwiO1xuICAgIH1cbiAgICByZXR1cm4gZGlyZWN0aW9uO1xufVxuXG5leHBvcnQgeyBWaXN1YWxFbGVtZW50RHJhZ0NvbnRyb2xzLCBlbGVtZW50RHJhZ0NvbnRyb2xzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/index.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/drag/index.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DragGesture: function() { return /* binding */ DragGesture; }\n/* harmony export */ });\n/* harmony import */ var _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../motion/features/Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _VisualElementDragControls_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VisualElementDragControls.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs\");\n\n\n\n\nclass DragGesture extends _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_0__.Feature {\n constructor(node) {\n super(node);\n this.removeGroupControls = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__.noop;\n this.removeListeners = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__.noop;\n this.controls = new _VisualElementDragControls_mjs__WEBPACK_IMPORTED_MODULE_2__.VisualElementDragControls(node);\n }\n mount() {\n // If we've been provided a DragControls for manual control over the drag gesture,\n // subscribe this component to it on mount.\n const { dragControls } = this.node.getProps();\n if (dragControls) {\n this.removeGroupControls = dragControls.subscribe(this.controls);\n }\n this.removeListeners = this.controls.addListeners() || _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_1__.noop;\n }\n unmount() {\n this.removeGroupControls();\n this.removeListeners();\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZHJhZy9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE0RDtBQUNoQjtBQUNnQzs7QUFFNUUsMEJBQTBCLGlFQUFPO0FBQ2pDO0FBQ0E7QUFDQSxtQ0FBbUMsaURBQUk7QUFDdkMsK0JBQStCLGlEQUFJO0FBQ25DLDRCQUE0QixxRkFBeUI7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZUFBZTtBQUMvQjtBQUNBO0FBQ0E7QUFDQSwrREFBK0QsaURBQUk7QUFDbkU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV1QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2dlc3R1cmVzL2RyYWcvaW5kZXgubWpzPzZhODYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uLy4uL21vdGlvbi9mZWF0dXJlcy9GZWF0dXJlLm1qcyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vLi4vdXRpbHMvbm9vcC5tanMnO1xuaW1wb3J0IHsgVmlzdWFsRWxlbWVudERyYWdDb250cm9scyB9IGZyb20gJy4vVmlzdWFsRWxlbWVudERyYWdDb250cm9scy5tanMnO1xuXG5jbGFzcyBEcmFnR2VzdHVyZSBleHRlbmRzIEZlYXR1cmUge1xuICAgIGNvbnN0cnVjdG9yKG5vZGUpIHtcbiAgICAgICAgc3VwZXIobm9kZSk7XG4gICAgICAgIHRoaXMucmVtb3ZlR3JvdXBDb250cm9scyA9IG5vb3A7XG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzID0gbm9vcDtcbiAgICAgICAgdGhpcy5jb250cm9scyA9IG5ldyBWaXN1YWxFbGVtZW50RHJhZ0NvbnRyb2xzKG5vZGUpO1xuICAgIH1cbiAgICBtb3VudCgpIHtcbiAgICAgICAgLy8gSWYgd2UndmUgYmVlbiBwcm92aWRlZCBhIERyYWdDb250cm9scyBmb3IgbWFudWFsIGNvbnRyb2wgb3ZlciB0aGUgZHJhZyBnZXN0dXJlLFxuICAgICAgICAvLyBzdWJzY3JpYmUgdGhpcyBjb21wb25lbnQgdG8gaXQgb24gbW91bnQuXG4gICAgICAgIGNvbnN0IHsgZHJhZ0NvbnRyb2xzIH0gPSB0aGlzLm5vZGUuZ2V0UHJvcHMoKTtcbiAgICAgICAgaWYgKGRyYWdDb250cm9scykge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVHcm91cENvbnRyb2xzID0gZHJhZ0NvbnRyb2xzLnN1YnNjcmliZSh0aGlzLmNvbnRyb2xzKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlbW92ZUxpc3RlbmVycyA9IHRoaXMuY29udHJvbHMuYWRkTGlzdGVuZXJzKCkgfHwgbm9vcDtcbiAgICB9XG4gICAgdW5tb3VudCgpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVHcm91cENvbnRyb2xzKCk7XG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XG4gICAgfVxufVxuXG5leHBvcnQgeyBEcmFnR2VzdHVyZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ applyConstraints: function() { return /* binding */ applyConstraints; },\n/* harmony export */ calcOrigin: function() { return /* binding */ calcOrigin; },\n/* harmony export */ calcRelativeAxisConstraints: function() { return /* binding */ calcRelativeAxisConstraints; },\n/* harmony export */ calcRelativeConstraints: function() { return /* binding */ calcRelativeConstraints; },\n/* harmony export */ calcViewportAxisConstraints: function() { return /* binding */ calcViewportAxisConstraints; },\n/* harmony export */ calcViewportConstraints: function() { return /* binding */ calcViewportConstraints; },\n/* harmony export */ defaultElastic: function() { return /* binding */ defaultElastic; },\n/* harmony export */ rebaseAxisConstraints: function() { return /* binding */ rebaseAxisConstraints; },\n/* harmony export */ resolveAxisElastic: function() { return /* binding */ resolveAxisElastic; },\n/* harmony export */ resolveDragElastic: function() { return /* binding */ resolveDragElastic; },\n/* harmony export */ resolvePointElastic: function() { return /* binding */ resolvePointElastic; }\n/* harmony export */ });\n/* harmony import */ var _utils_progress_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/progress.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs\");\n/* harmony import */ var _projection_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../projection/geometry/delta-calc.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs\");\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n\n\n\n\n\n/**\n * Apply constraints to a point. These constraints are both physical along an\n * axis, and an elastic factor that determines how much to constrain the point\n * by if it does lie outside the defined parameters.\n */\nfunction applyConstraints(point, { min, max }, elastic) {\n if (min !== undefined && point < min) {\n // If we have a min point defined, and this is outside of that, constrain\n point = elastic ? (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(min, point, elastic.min) : Math.max(point, min);\n }\n else if (max !== undefined && point > max) {\n // If we have a max point defined, and this is outside of that, constrain\n point = elastic ? (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(max, point, elastic.max) : Math.min(point, max);\n }\n return point;\n}\n/**\n * Calculate constraints in terms of the viewport when defined relatively to the\n * measured axis. This is measured from the nearest edge, so a max constraint of 200\n * on an axis with a max value of 300 would return a constraint of 500 - axis length\n */\nfunction calcRelativeAxisConstraints(axis, min, max) {\n return {\n min: min !== undefined ? axis.min + min : undefined,\n max: max !== undefined\n ? axis.max + max - (axis.max - axis.min)\n : undefined,\n };\n}\n/**\n * Calculate constraints in terms of the viewport when\n * defined relatively to the measured bounding box.\n */\nfunction calcRelativeConstraints(layoutBox, { top, left, bottom, right }) {\n return {\n x: calcRelativeAxisConstraints(layoutBox.x, left, right),\n y: calcRelativeAxisConstraints(layoutBox.y, top, bottom),\n };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative axis\n */\nfunction calcViewportAxisConstraints(layoutAxis, constraintsAxis) {\n let min = constraintsAxis.min - layoutAxis.min;\n let max = constraintsAxis.max - layoutAxis.max;\n // If the constraints axis is actually smaller than the layout axis then we can\n // flip the constraints\n if (constraintsAxis.max - constraintsAxis.min <\n layoutAxis.max - layoutAxis.min) {\n [min, max] = [max, min];\n }\n return { min, max };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative box\n */\nfunction calcViewportConstraints(layoutBox, constraintsBox) {\n return {\n x: calcViewportAxisConstraints(layoutBox.x, constraintsBox.x),\n y: calcViewportAxisConstraints(layoutBox.y, constraintsBox.y),\n };\n}\n/**\n * Calculate a transform origin relative to the source axis, between 0-1, that results\n * in an asthetically pleasing scale/transform needed to project from source to target.\n */\nfunction calcOrigin(source, target) {\n let origin = 0.5;\n const sourceLength = (0,_projection_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_1__.calcLength)(source);\n const targetLength = (0,_projection_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_1__.calcLength)(target);\n if (targetLength > sourceLength) {\n origin = (0,_utils_progress_mjs__WEBPACK_IMPORTED_MODULE_2__.progress)(target.min, target.max - sourceLength, source.min);\n }\n else if (sourceLength > targetLength) {\n origin = (0,_utils_progress_mjs__WEBPACK_IMPORTED_MODULE_2__.progress)(source.min, source.max - targetLength, target.min);\n }\n return (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_3__.clamp)(0, 1, origin);\n}\n/**\n * Rebase the calculated viewport constraints relative to the layout.min point.\n */\nfunction rebaseAxisConstraints(layout, constraints) {\n const relativeConstraints = {};\n if (constraints.min !== undefined) {\n relativeConstraints.min = constraints.min - layout.min;\n }\n if (constraints.max !== undefined) {\n relativeConstraints.max = constraints.max - layout.min;\n }\n return relativeConstraints;\n}\nconst defaultElastic = 0.35;\n/**\n * Accepts a dragElastic prop and returns resolved elastic values for each axis.\n */\nfunction resolveDragElastic(dragElastic = defaultElastic) {\n if (dragElastic === false) {\n dragElastic = 0;\n }\n else if (dragElastic === true) {\n dragElastic = defaultElastic;\n }\n return {\n x: resolveAxisElastic(dragElastic, \"left\", \"right\"),\n y: resolveAxisElastic(dragElastic, \"top\", \"bottom\"),\n };\n}\nfunction resolveAxisElastic(dragElastic, minLabel, maxLabel) {\n return {\n min: resolvePointElastic(dragElastic, minLabel),\n max: resolvePointElastic(dragElastic, maxLabel),\n };\n}\nfunction resolvePointElastic(dragElastic, label) {\n return typeof dragElastic === \"number\"\n ? dragElastic\n : dragElastic[label] || 0;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZHJhZy91dGlscy9jb25zdHJhaW50cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXVEO0FBQ2tCO0FBQ3hCO0FBQ0o7O0FBRTdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsVUFBVTtBQUM3QztBQUNBO0FBQ0EsMEJBQTBCLG1EQUFHO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixtREFBRztBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDLDBCQUEwQjtBQUN4RTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLCtFQUFVO0FBQ25DLHlCQUF5QiwrRUFBVTtBQUNuQztBQUNBLGlCQUFpQiw2REFBUTtBQUN6QjtBQUNBO0FBQ0EsaUJBQWlCLDZEQUFRO0FBQ3pCO0FBQ0EsV0FBVyx1REFBSztBQUNoQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV3UCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2dlc3R1cmVzL2RyYWcvdXRpbHMvY29uc3RyYWludHMubWpzPzJhZDkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHJvZ3Jlc3MgfSBmcm9tICcuLi8uLi8uLi91dGlscy9wcm9ncmVzcy5tanMnO1xuaW1wb3J0IHsgY2FsY0xlbmd0aCB9IGZyb20gJy4uLy4uLy4uL3Byb2plY3Rpb24vZ2VvbWV0cnkvZGVsdGEtY2FsYy5tanMnO1xuaW1wb3J0IHsgY2xhbXAgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFtcC5tanMnO1xuaW1wb3J0IHsgbWl4IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbWl4Lm1qcyc7XG5cbi8qKlxuICogQXBwbHkgY29uc3RyYWludHMgdG8gYSBwb2ludC4gVGhlc2UgY29uc3RyYWludHMgYXJlIGJvdGggcGh5c2ljYWwgYWxvbmcgYW5cbiAqIGF4aXMsIGFuZCBhbiBlbGFzdGljIGZhY3RvciB0aGF0IGRldGVybWluZXMgaG93IG11Y2ggdG8gY29uc3RyYWluIHRoZSBwb2ludFxuICogYnkgaWYgaXQgZG9lcyBsaWUgb3V0c2lkZSB0aGUgZGVmaW5lZCBwYXJhbWV0ZXJzLlxuICovXG5mdW5jdGlvbiBhcHBseUNvbnN0cmFpbnRzKHBvaW50LCB7IG1pbiwgbWF4IH0sIGVsYXN0aWMpIHtcbiAgICBpZiAobWluICE9PSB1bmRlZmluZWQgJiYgcG9pbnQgPCBtaW4pIHtcbiAgICAgICAgLy8gSWYgd2UgaGF2ZSBhIG1pbiBwb2ludCBkZWZpbmVkLCBhbmQgdGhpcyBpcyBvdXRzaWRlIG9mIHRoYXQsIGNvbnN0cmFpblxuICAgICAgICBwb2ludCA9IGVsYXN0aWMgPyBtaXgobWluLCBwb2ludCwgZWxhc3RpYy5taW4pIDogTWF0aC5tYXgocG9pbnQsIG1pbik7XG4gICAgfVxuICAgIGVsc2UgaWYgKG1heCAhPT0gdW5kZWZpbmVkICYmIHBvaW50ID4gbWF4KSB7XG4gICAgICAgIC8vIElmIHdlIGhhdmUgYSBtYXggcG9pbnQgZGVmaW5lZCwgYW5kIHRoaXMgaXMgb3V0c2lkZSBvZiB0aGF0LCBjb25zdHJhaW5cbiAgICAgICAgcG9pbnQgPSBlbGFzdGljID8gbWl4KG1heCwgcG9pbnQsIGVsYXN0aWMubWF4KSA6IE1hdGgubWluKHBvaW50LCBtYXgpO1xuICAgIH1cbiAgICByZXR1cm4gcG9pbnQ7XG59XG4vKipcbiAqIENhbGN1bGF0ZSBjb25zdHJhaW50cyBpbiB0ZXJtcyBvZiB0aGUgdmlld3BvcnQgd2hlbiBkZWZpbmVkIHJlbGF0aXZlbHkgdG8gdGhlXG4gKiBtZWFzdXJlZCBheGlzLiBUaGlzIGlzIG1lYXN1cmVkIGZyb20gdGhlIG5lYXJlc3QgZWRnZSwgc28gYSBtYXggY29uc3RyYWludCBvZiAyMDBcbiAqIG9uIGFuIGF4aXMgd2l0aCBhIG1heCB2YWx1ZSBvZiAzMDAgd291bGQgcmV0dXJuIGEgY29uc3RyYWludCBvZiA1MDAgLSBheGlzIGxlbmd0aFxuICovXG5mdW5jdGlvbiBjYWxjUmVsYXRpdmVBeGlzQ29uc3RyYWludHMoYXhpcywgbWluLCBtYXgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBtaW46IG1pbiAhPT0gdW5kZWZpbmVkID8gYXhpcy5taW4gKyBtaW4gOiB1bmRlZmluZWQsXG4gICAgICAgIG1heDogbWF4ICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgID8gYXhpcy5tYXggKyBtYXggLSAoYXhpcy5tYXggLSBheGlzLm1pbilcbiAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgIH07XG59XG4vKipcbiAqIENhbGN1bGF0ZSBjb25zdHJhaW50cyBpbiB0ZXJtcyBvZiB0aGUgdmlld3BvcnQgd2hlblxuICogZGVmaW5lZCByZWxhdGl2ZWx5IHRvIHRoZSBtZWFzdXJlZCBib3VuZGluZyBib3guXG4gKi9cbmZ1bmN0aW9uIGNhbGNSZWxhdGl2ZUNvbnN0cmFpbnRzKGxheW91dEJveCwgeyB0b3AsIGxlZnQsIGJvdHRvbSwgcmlnaHQgfSkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHg6IGNhbGNSZWxhdGl2ZUF4aXNDb25zdHJhaW50cyhsYXlvdXRCb3gueCwgbGVmdCwgcmlnaHQpLFxuICAgICAgICB5OiBjYWxjUmVsYXRpdmVBeGlzQ29uc3RyYWludHMobGF5b3V0Qm94LnksIHRvcCwgYm90dG9tKSxcbiAgICB9O1xufVxuLyoqXG4gKiBDYWxjdWxhdGUgdmlld3BvcnQgY29uc3RyYWludHMgd2hlbiBkZWZpbmVkIGFzIGFub3RoZXIgdmlld3BvcnQtcmVsYXRpdmUgYXhpc1xuICovXG5mdW5jdGlvbiBjYWxjVmlld3BvcnRBeGlzQ29uc3RyYWludHMobGF5b3V0QXhpcywgY29uc3RyYWludHNBeGlzKSB7XG4gICAgbGV0IG1pbiA9IGNvbnN0cmFpbnRzQXhpcy5taW4gLSBsYXlvdXRBeGlzLm1pbjtcbiAgICBsZXQgbWF4ID0gY29uc3RyYWludHNBeGlzLm1heCAtIGxheW91dEF4aXMubWF4O1xuICAgIC8vIElmIHRoZSBjb25zdHJhaW50cyBheGlzIGlzIGFjdHVhbGx5IHNtYWxsZXIgdGhhbiB0aGUgbGF5b3V0IGF4aXMgdGhlbiB3ZSBjYW5cbiAgICAvLyBmbGlwIHRoZSBjb25zdHJhaW50c1xuICAgIGlmIChjb25zdHJhaW50c0F4aXMubWF4IC0gY29uc3RyYWludHNBeGlzLm1pbiA8XG4gICAgICAgIGxheW91dEF4aXMubWF4IC0gbGF5b3V0QXhpcy5taW4pIHtcbiAgICAgICAgW21pbiwgbWF4XSA9IFttYXgsIG1pbl07XG4gICAgfVxuICAgIHJldHVybiB7IG1pbiwgbWF4IH07XG59XG4vKipcbiAqIENhbGN1bGF0ZSB2aWV3cG9ydCBjb25zdHJhaW50cyB3aGVuIGRlZmluZWQgYXMgYW5vdGhlciB2aWV3cG9ydC1yZWxhdGl2ZSBib3hcbiAqL1xuZnVuY3Rpb24gY2FsY1ZpZXdwb3J0Q29uc3RyYWludHMobGF5b3V0Qm94LCBjb25zdHJhaW50c0JveCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHg6IGNhbGNWaWV3cG9ydEF4aXNDb25zdHJhaW50cyhsYXlvdXRCb3gueCwgY29uc3RyYWludHNCb3gueCksXG4gICAgICAgIHk6IGNhbGNWaWV3cG9ydEF4aXNDb25zdHJhaW50cyhsYXlvdXRCb3gueSwgY29uc3RyYWludHNCb3gueSksXG4gICAgfTtcbn1cbi8qKlxuICogQ2FsY3VsYXRlIGEgdHJhbnNmb3JtIG9yaWdpbiByZWxhdGl2ZSB0byB0aGUgc291cmNlIGF4aXMsIGJldHdlZW4gMC0xLCB0aGF0IHJlc3VsdHNcbiAqIGluIGFuIGFzdGhldGljYWxseSBwbGVhc2luZyBzY2FsZS90cmFuc2Zvcm0gbmVlZGVkIHRvIHByb2plY3QgZnJvbSBzb3VyY2UgdG8gdGFyZ2V0LlxuICovXG5mdW5jdGlvbiBjYWxjT3JpZ2luKHNvdXJjZSwgdGFyZ2V0KSB7XG4gICAgbGV0IG9yaWdpbiA9IDAuNTtcbiAgICBjb25zdCBzb3VyY2VMZW5ndGggPSBjYWxjTGVuZ3RoKHNvdXJjZSk7XG4gICAgY29uc3QgdGFyZ2V0TGVuZ3RoID0gY2FsY0xlbmd0aCh0YXJnZXQpO1xuICAgIGlmICh0YXJnZXRMZW5ndGggPiBzb3VyY2VMZW5ndGgpIHtcbiAgICAgICAgb3JpZ2luID0gcHJvZ3Jlc3ModGFyZ2V0Lm1pbiwgdGFyZ2V0Lm1heCAtIHNvdXJjZUxlbmd0aCwgc291cmNlLm1pbik7XG4gICAgfVxuICAgIGVsc2UgaWYgKHNvdXJjZUxlbmd0aCA+IHRhcmdldExlbmd0aCkge1xuICAgICAgICBvcmlnaW4gPSBwcm9ncmVzcyhzb3VyY2UubWluLCBzb3VyY2UubWF4IC0gdGFyZ2V0TGVuZ3RoLCB0YXJnZXQubWluKTtcbiAgICB9XG4gICAgcmV0dXJuIGNsYW1wKDAsIDEsIG9yaWdpbik7XG59XG4vKipcbiAqIFJlYmFzZSB0aGUgY2FsY3VsYXRlZCB2aWV3cG9ydCBjb25zdHJhaW50cyByZWxhdGl2ZSB0byB0aGUgbGF5b3V0Lm1pbiBwb2ludC5cbiAqL1xuZnVuY3Rpb24gcmViYXNlQXhpc0NvbnN0cmFpbnRzKGxheW91dCwgY29uc3RyYWludHMpIHtcbiAgICBjb25zdCByZWxhdGl2ZUNvbnN0cmFpbnRzID0ge307XG4gICAgaWYgKGNvbnN0cmFpbnRzLm1pbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJlbGF0aXZlQ29uc3RyYWludHMubWluID0gY29uc3RyYWludHMubWluIC0gbGF5b3V0Lm1pbjtcbiAgICB9XG4gICAgaWYgKGNvbnN0cmFpbnRzLm1heCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJlbGF0aXZlQ29uc3RyYWludHMubWF4ID0gY29uc3RyYWludHMubWF4IC0gbGF5b3V0Lm1pbjtcbiAgICB9XG4gICAgcmV0dXJuIHJlbGF0aXZlQ29uc3RyYWludHM7XG59XG5jb25zdCBkZWZhdWx0RWxhc3RpYyA9IDAuMzU7XG4vKipcbiAqIEFjY2VwdHMgYSBkcmFnRWxhc3RpYyBwcm9wIGFuZCByZXR1cm5zIHJlc29sdmVkIGVsYXN0aWMgdmFsdWVzIGZvciBlYWNoIGF4aXMuXG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVEcmFnRWxhc3RpYyhkcmFnRWxhc3RpYyA9IGRlZmF1bHRFbGFzdGljKSB7XG4gICAgaWYgKGRyYWdFbGFzdGljID09PSBmYWxzZSkge1xuICAgICAgICBkcmFnRWxhc3RpYyA9IDA7XG4gICAgfVxuICAgIGVsc2UgaWYgKGRyYWdFbGFzdGljID09PSB0cnVlKSB7XG4gICAgICAgIGRyYWdFbGFzdGljID0gZGVmYXVsdEVsYXN0aWM7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHg6IHJlc29sdmVBeGlzRWxhc3RpYyhkcmFnRWxhc3RpYywgXCJsZWZ0XCIsIFwicmlnaHRcIiksXG4gICAgICAgIHk6IHJlc29sdmVBeGlzRWxhc3RpYyhkcmFnRWxhc3RpYywgXCJ0b3BcIiwgXCJib3R0b21cIiksXG4gICAgfTtcbn1cbmZ1bmN0aW9uIHJlc29sdmVBeGlzRWxhc3RpYyhkcmFnRWxhc3RpYywgbWluTGFiZWwsIG1heExhYmVsKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbWluOiByZXNvbHZlUG9pbnRFbGFzdGljKGRyYWdFbGFzdGljLCBtaW5MYWJlbCksXG4gICAgICAgIG1heDogcmVzb2x2ZVBvaW50RWxhc3RpYyhkcmFnRWxhc3RpYywgbWF4TGFiZWwpLFxuICAgIH07XG59XG5mdW5jdGlvbiByZXNvbHZlUG9pbnRFbGFzdGljKGRyYWdFbGFzdGljLCBsYWJlbCkge1xuICAgIHJldHVybiB0eXBlb2YgZHJhZ0VsYXN0aWMgPT09IFwibnVtYmVyXCJcbiAgICAgICAgPyBkcmFnRWxhc3RpY1xuICAgICAgICA6IGRyYWdFbGFzdGljW2xhYmVsXSB8fCAwO1xufVxuXG5leHBvcnQgeyBhcHBseUNvbnN0cmFpbnRzLCBjYWxjT3JpZ2luLCBjYWxjUmVsYXRpdmVBeGlzQ29uc3RyYWludHMsIGNhbGNSZWxhdGl2ZUNvbnN0cmFpbnRzLCBjYWxjVmlld3BvcnRBeGlzQ29uc3RyYWludHMsIGNhbGNWaWV3cG9ydENvbnN0cmFpbnRzLCBkZWZhdWx0RWxhc3RpYywgcmViYXNlQXhpc0NvbnN0cmFpbnRzLCByZXNvbHZlQXhpc0VsYXN0aWMsIHJlc29sdmVEcmFnRWxhc3RpYywgcmVzb2x2ZVBvaW50RWxhc3RpYyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createLock: function() { return /* binding */ createLock; },\n/* harmony export */ getGlobalLock: function() { return /* binding */ getGlobalLock; },\n/* harmony export */ isDragActive: function() { return /* binding */ isDragActive; }\n/* harmony export */ });\nfunction createLock(name) {\n let lock = null;\n return () => {\n const openLock = () => {\n lock = null;\n };\n if (lock === null) {\n lock = name;\n return openLock;\n }\n return false;\n };\n}\nconst globalHorizontalLock = createLock(\"dragHorizontal\");\nconst globalVerticalLock = createLock(\"dragVertical\");\nfunction getGlobalLock(drag) {\n let lock = false;\n if (drag === \"y\") {\n lock = globalVerticalLock();\n }\n else if (drag === \"x\") {\n lock = globalHorizontalLock();\n }\n else {\n const openHorizontal = globalHorizontalLock();\n const openVertical = globalVerticalLock();\n if (openHorizontal && openVertical) {\n lock = () => {\n openHorizontal();\n openVertical();\n };\n }\n else {\n // Release the locks because we don't use them\n if (openHorizontal)\n openHorizontal();\n if (openVertical)\n openVertical();\n }\n }\n return lock;\n}\nfunction isDragActive() {\n // Check the gesture lock - if we get it, it means no drag gesture is active\n // and we can safely fire the tap gesture.\n const openGestureLock = getGlobalLock(true);\n if (!openGestureLock)\n return true;\n openGestureLock();\n return false;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZHJhZy91dGlscy9sb2NrLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRW1EIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZHJhZy91dGlscy9sb2NrLm1qcz80ZmM1Il0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGNyZWF0ZUxvY2sobmFtZSkge1xuICAgIGxldCBsb2NrID0gbnVsbDtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjb25zdCBvcGVuTG9jayA9ICgpID0+IHtcbiAgICAgICAgICAgIGxvY2sgPSBudWxsO1xuICAgICAgICB9O1xuICAgICAgICBpZiAobG9jayA9PT0gbnVsbCkge1xuICAgICAgICAgICAgbG9jayA9IG5hbWU7XG4gICAgICAgICAgICByZXR1cm4gb3BlbkxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH07XG59XG5jb25zdCBnbG9iYWxIb3Jpem9udGFsTG9jayA9IGNyZWF0ZUxvY2soXCJkcmFnSG9yaXpvbnRhbFwiKTtcbmNvbnN0IGdsb2JhbFZlcnRpY2FsTG9jayA9IGNyZWF0ZUxvY2soXCJkcmFnVmVydGljYWxcIik7XG5mdW5jdGlvbiBnZXRHbG9iYWxMb2NrKGRyYWcpIHtcbiAgICBsZXQgbG9jayA9IGZhbHNlO1xuICAgIGlmIChkcmFnID09PSBcInlcIikge1xuICAgICAgICBsb2NrID0gZ2xvYmFsVmVydGljYWxMb2NrKCk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGRyYWcgPT09IFwieFwiKSB7XG4gICAgICAgIGxvY2sgPSBnbG9iYWxIb3Jpem9udGFsTG9jaygpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3Qgb3Blbkhvcml6b250YWwgPSBnbG9iYWxIb3Jpem9udGFsTG9jaygpO1xuICAgICAgICBjb25zdCBvcGVuVmVydGljYWwgPSBnbG9iYWxWZXJ0aWNhbExvY2soKTtcbiAgICAgICAgaWYgKG9wZW5Ib3Jpem9udGFsICYmIG9wZW5WZXJ0aWNhbCkge1xuICAgICAgICAgICAgbG9jayA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBvcGVuSG9yaXpvbnRhbCgpO1xuICAgICAgICAgICAgICAgIG9wZW5WZXJ0aWNhbCgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIC8vIFJlbGVhc2UgdGhlIGxvY2tzIGJlY2F1c2Ugd2UgZG9uJ3QgdXNlIHRoZW1cbiAgICAgICAgICAgIGlmIChvcGVuSG9yaXpvbnRhbClcbiAgICAgICAgICAgICAgICBvcGVuSG9yaXpvbnRhbCgpO1xuICAgICAgICAgICAgaWYgKG9wZW5WZXJ0aWNhbClcbiAgICAgICAgICAgICAgICBvcGVuVmVydGljYWwoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbG9jaztcbn1cbmZ1bmN0aW9uIGlzRHJhZ0FjdGl2ZSgpIHtcbiAgICAvLyBDaGVjayB0aGUgZ2VzdHVyZSBsb2NrIC0gaWYgd2UgZ2V0IGl0LCBpdCBtZWFucyBubyBkcmFnIGdlc3R1cmUgaXMgYWN0aXZlXG4gICAgLy8gYW5kIHdlIGNhbiBzYWZlbHkgZmlyZSB0aGUgdGFwIGdlc3R1cmUuXG4gICAgY29uc3Qgb3Blbkdlc3R1cmVMb2NrID0gZ2V0R2xvYmFsTG9jayh0cnVlKTtcbiAgICBpZiAoIW9wZW5HZXN0dXJlTG9jaylcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgb3Blbkdlc3R1cmVMb2NrKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgeyBjcmVhdGVMb2NrLCBnZXRHbG9iYWxMb2NrLCBpc0RyYWdBY3RpdmUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/focus.mjs":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/focus.mjs ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FocusGesture: function() { return /* binding */ FocusGesture; }\n/* harmony export */ });\n/* harmony import */ var _events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../events/add-dom-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\");\n/* harmony import */ var _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../motion/features/Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n\n\n\n\nclass FocusGesture extends _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_0__.Feature {\n constructor() {\n super(...arguments);\n this.isActive = false;\n }\n onFocus() {\n let isFocusVisible = false;\n /**\n * If this element doesn't match focus-visible then don't\n * apply whileHover. But, if matches throws that focus-visible\n * is not a valid selector then in that browser outline styles will be applied\n * to the element by default and we want to match that behaviour with whileFocus.\n */\n try {\n isFocusVisible = this.node.current.matches(\":focus-visible\");\n }\n catch (e) {\n isFocusVisible = true;\n }\n if (!isFocusVisible || !this.node.animationState)\n return;\n this.node.animationState.setActive(\"whileFocus\", true);\n this.isActive = true;\n }\n onBlur() {\n if (!this.isActive || !this.node.animationState)\n return;\n this.node.animationState.setActive(\"whileFocus\", false);\n this.isActive = false;\n }\n mount() {\n this.unmount = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_1__.pipe)((0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_2__.addDomEvent)(this.node.current, \"focus\", () => this.onFocus()), (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_2__.addDomEvent)(this.node.current, \"blur\", () => this.onBlur()));\n }\n unmount() { }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZm9jdXMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBMEQ7QUFDRDtBQUNoQjs7QUFFekMsMkJBQTJCLGlFQUFPO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixxREFBSSxDQUFDLHNFQUFXLG9EQUFvRCxzRUFBVztBQUN0RztBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvZm9jdXMubWpzP2Q4YzkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkRG9tRXZlbnQgfSBmcm9tICcuLi9ldmVudHMvYWRkLWRvbS1ldmVudC5tanMnO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uL21vdGlvbi9mZWF0dXJlcy9GZWF0dXJlLm1qcyc7XG5pbXBvcnQgeyBwaXBlIH0gZnJvbSAnLi4vdXRpbHMvcGlwZS5tanMnO1xuXG5jbGFzcyBGb2N1c0dlc3R1cmUgZXh0ZW5kcyBGZWF0dXJlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoLi4uYXJndW1lbnRzKTtcbiAgICAgICAgdGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuICAgIH1cbiAgICBvbkZvY3VzKCkge1xuICAgICAgICBsZXQgaXNGb2N1c1Zpc2libGUgPSBmYWxzZTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoaXMgZWxlbWVudCBkb2Vzbid0IG1hdGNoIGZvY3VzLXZpc2libGUgdGhlbiBkb24ndFxuICAgICAgICAgKiBhcHBseSB3aGlsZUhvdmVyLiBCdXQsIGlmIG1hdGNoZXMgdGhyb3dzIHRoYXQgZm9jdXMtdmlzaWJsZVxuICAgICAgICAgKiBpcyBub3QgYSB2YWxpZCBzZWxlY3RvciB0aGVuIGluIHRoYXQgYnJvd3NlciBvdXRsaW5lIHN0eWxlcyB3aWxsIGJlIGFwcGxpZWRcbiAgICAgICAgICogdG8gdGhlIGVsZW1lbnQgYnkgZGVmYXVsdCBhbmQgd2Ugd2FudCB0byBtYXRjaCB0aGF0IGJlaGF2aW91ciB3aXRoIHdoaWxlRm9jdXMuXG4gICAgICAgICAqL1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaXNGb2N1c1Zpc2libGUgPSB0aGlzLm5vZGUuY3VycmVudC5tYXRjaGVzKFwiOmZvY3VzLXZpc2libGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlzRm9jdXNWaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzRm9jdXNWaXNpYmxlIHx8ICF0aGlzLm5vZGUuYW5pbWF0aW9uU3RhdGUpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIHRoaXMubm9kZS5hbmltYXRpb25TdGF0ZS5zZXRBY3RpdmUoXCJ3aGlsZUZvY3VzXCIsIHRydWUpO1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcbiAgICB9XG4gICAgb25CbHVyKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNBY3RpdmUgfHwgIXRoaXMubm9kZS5hbmltYXRpb25TdGF0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgdGhpcy5ub2RlLmFuaW1hdGlvblN0YXRlLnNldEFjdGl2ZShcIndoaWxlRm9jdXNcIiwgZmFsc2UpO1xuICAgICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgfVxuICAgIG1vdW50KCkge1xuICAgICAgICB0aGlzLnVubW91bnQgPSBwaXBlKGFkZERvbUV2ZW50KHRoaXMubm9kZS5jdXJyZW50LCBcImZvY3VzXCIsICgpID0+IHRoaXMub25Gb2N1cygpKSwgYWRkRG9tRXZlbnQodGhpcy5ub2RlLmN1cnJlbnQsIFwiYmx1clwiLCAoKSA9PiB0aGlzLm9uQmx1cigpKSk7XG4gICAgfVxuICAgIHVubW91bnQoKSB7IH1cbn1cblxuZXhwb3J0IHsgRm9jdXNHZXN0dXJlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/focus.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/hover.mjs":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/hover.mjs ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HoverGesture: function() { return /* binding */ HoverGesture; }\n/* harmony export */ });\n/* harmony import */ var _events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../events/add-pointer-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\");\n/* harmony import */ var _utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n/* harmony import */ var _drag_utils_lock_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./drag/utils/lock.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs\");\n/* harmony import */ var _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../motion/features/Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\nfunction addHoverEvent(node, isActive) {\n const eventName = \"pointer\" + (isActive ? \"enter\" : \"leave\");\n const callbackName = \"onHover\" + (isActive ? \"Start\" : \"End\");\n const handleEvent = (event, info) => {\n if (event.pointerType === \"touch\" || (0,_drag_utils_lock_mjs__WEBPACK_IMPORTED_MODULE_0__.isDragActive)())\n return;\n const props = node.getProps();\n if (node.animationState && props.whileHover) {\n node.animationState.setActive(\"whileHover\", isActive);\n }\n if (props[callbackName]) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__.frame.update(() => props[callbackName](event, info));\n }\n };\n return (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_2__.addPointerEvent)(node.current, eventName, handleEvent, {\n passive: !node.getProps()[callbackName],\n });\n}\nclass HoverGesture extends _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_3__.Feature {\n mount() {\n this.unmount = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_4__.pipe)(addHoverEvent(this.node, true), addHoverEvent(this.node, false));\n }\n unmount() { }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvaG92ZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFrRTtBQUN6QjtBQUNZO0FBQ0k7QUFDVjs7QUFFL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2Q0FBNkMsa0VBQVk7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSx1REFBSztBQUNqQjtBQUNBO0FBQ0EsV0FBVyw4RUFBZTtBQUMxQjtBQUNBLEtBQUs7QUFDTDtBQUNBLDJCQUEyQixpRUFBTztBQUNsQztBQUNBLHVCQUF1QixxREFBSTtBQUMzQjtBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvaG92ZXIubWpzPzAwOTMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkUG9pbnRlckV2ZW50IH0gZnJvbSAnLi4vZXZlbnRzL2FkZC1wb2ludGVyLWV2ZW50Lm1qcyc7XG5pbXBvcnQgeyBwaXBlIH0gZnJvbSAnLi4vdXRpbHMvcGlwZS5tanMnO1xuaW1wb3J0IHsgaXNEcmFnQWN0aXZlIH0gZnJvbSAnLi9kcmFnL3V0aWxzL2xvY2subWpzJztcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICcuLi9tb3Rpb24vZmVhdHVyZXMvRmVhdHVyZS5tanMnO1xuaW1wb3J0IHsgZnJhbWUgfSBmcm9tICcuLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuZnVuY3Rpb24gYWRkSG92ZXJFdmVudChub2RlLCBpc0FjdGl2ZSkge1xuICAgIGNvbnN0IGV2ZW50TmFtZSA9IFwicG9pbnRlclwiICsgKGlzQWN0aXZlID8gXCJlbnRlclwiIDogXCJsZWF2ZVwiKTtcbiAgICBjb25zdCBjYWxsYmFja05hbWUgPSBcIm9uSG92ZXJcIiArIChpc0FjdGl2ZSA/IFwiU3RhcnRcIiA6IFwiRW5kXCIpO1xuICAgIGNvbnN0IGhhbmRsZUV2ZW50ID0gKGV2ZW50LCBpbmZvKSA9PiB7XG4gICAgICAgIGlmIChldmVudC5wb2ludGVyVHlwZSA9PT0gXCJ0b3VjaFwiIHx8IGlzRHJhZ0FjdGl2ZSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBwcm9wcyA9IG5vZGUuZ2V0UHJvcHMoKTtcbiAgICAgICAgaWYgKG5vZGUuYW5pbWF0aW9uU3RhdGUgJiYgcHJvcHMud2hpbGVIb3Zlcikge1xuICAgICAgICAgICAgbm9kZS5hbmltYXRpb25TdGF0ZS5zZXRBY3RpdmUoXCJ3aGlsZUhvdmVyXCIsIGlzQWN0aXZlKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAocHJvcHNbY2FsbGJhY2tOYW1lXSkge1xuICAgICAgICAgICAgZnJhbWUudXBkYXRlKCgpID0+IHByb3BzW2NhbGxiYWNrTmFtZV0oZXZlbnQsIGluZm8pKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgcmV0dXJuIGFkZFBvaW50ZXJFdmVudChub2RlLmN1cnJlbnQsIGV2ZW50TmFtZSwgaGFuZGxlRXZlbnQsIHtcbiAgICAgICAgcGFzc2l2ZTogIW5vZGUuZ2V0UHJvcHMoKVtjYWxsYmFja05hbWVdLFxuICAgIH0pO1xufVxuY2xhc3MgSG92ZXJHZXN0dXJlIGV4dGVuZHMgRmVhdHVyZSB7XG4gICAgbW91bnQoKSB7XG4gICAgICAgIHRoaXMudW5tb3VudCA9IHBpcGUoYWRkSG92ZXJFdmVudCh0aGlzLm5vZGUsIHRydWUpLCBhZGRIb3ZlckV2ZW50KHRoaXMubm9kZSwgZmFsc2UpKTtcbiAgICB9XG4gICAgdW5tb3VudCgpIHsgfVxufVxuXG5leHBvcnQgeyBIb3Zlckdlc3R1cmUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/hover.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PanSession: function() { return /* binding */ PanSession; }\n/* harmony export */ });\n/* harmony import */ var _events_event_info_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../events/event-info.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs\");\n/* harmony import */ var _utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/time-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\");\n/* harmony import */ var _events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../events/add-pointer-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\");\n/* harmony import */ var _utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n/* harmony import */ var _utils_distance_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/distance.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/distance.mjs\");\n/* harmony import */ var _events_utils_is_primary_pointer_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../events/utils/is-primary-pointer.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n/**\n * @internal\n */\nclass PanSession {\n constructor(event, handlers, { transformPagePoint, contextWindow, dragSnapToOrigin = false } = {}) {\n /**\n * @internal\n */\n this.startEvent = null;\n /**\n * @internal\n */\n this.lastMoveEvent = null;\n /**\n * @internal\n */\n this.lastMoveEventInfo = null;\n /**\n * @internal\n */\n this.handlers = {};\n /**\n * @internal\n */\n this.contextWindow = window;\n this.updatePoint = () => {\n if (!(this.lastMoveEvent && this.lastMoveEventInfo))\n return;\n const info = getPanInfo(this.lastMoveEventInfo, this.history);\n const isPanStarted = this.startEvent !== null;\n // Only start panning if the offset is larger than 3 pixels. If we make it\n // any larger than this we'll want to reset the pointer history\n // on the first update to avoid visual snapping to the cursoe.\n const isDistancePastThreshold = (0,_utils_distance_mjs__WEBPACK_IMPORTED_MODULE_0__.distance2D)(info.offset, { x: 0, y: 0 }) >= 3;\n if (!isPanStarted && !isDistancePastThreshold)\n return;\n const { point } = info;\n const { timestamp } = _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__.frameData;\n this.history.push({ ...point, timestamp });\n const { onStart, onMove } = this.handlers;\n if (!isPanStarted) {\n onStart && onStart(this.lastMoveEvent, info);\n this.startEvent = this.lastMoveEvent;\n }\n onMove && onMove(this.lastMoveEvent, info);\n };\n this.handlePointerMove = (event, info) => {\n this.lastMoveEvent = event;\n this.lastMoveEventInfo = transformPoint(info, this.transformPagePoint);\n // Throttle mouse move event to once per frame\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__.frame.update(this.updatePoint, true);\n };\n this.handlePointerUp = (event, info) => {\n this.end();\n const { onEnd, onSessionEnd, resumeAnimation } = this.handlers;\n if (this.dragSnapToOrigin)\n resumeAnimation && resumeAnimation();\n if (!(this.lastMoveEvent && this.lastMoveEventInfo))\n return;\n const panInfo = getPanInfo(event.type === \"pointercancel\"\n ? this.lastMoveEventInfo\n : transformPoint(info, this.transformPagePoint), this.history);\n if (this.startEvent && onEnd) {\n onEnd(event, panInfo);\n }\n onSessionEnd && onSessionEnd(event, panInfo);\n };\n // If we have more than one touch, don't start detecting this gesture\n if (!(0,_events_utils_is_primary_pointer_mjs__WEBPACK_IMPORTED_MODULE_2__.isPrimaryPointer)(event))\n return;\n this.dragSnapToOrigin = dragSnapToOrigin;\n this.handlers = handlers;\n this.transformPagePoint = transformPagePoint;\n this.contextWindow = contextWindow || window;\n const info = (0,_events_event_info_mjs__WEBPACK_IMPORTED_MODULE_3__.extractEventInfo)(event);\n const initialInfo = transformPoint(info, this.transformPagePoint);\n const { point } = initialInfo;\n const { timestamp } = _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__.frameData;\n this.history = [{ ...point, timestamp }];\n const { onSessionStart } = handlers;\n onSessionStart &&\n onSessionStart(event, getPanInfo(initialInfo, this.history));\n this.removeListeners = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_4__.pipe)((0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(this.contextWindow, \"pointermove\", this.handlePointerMove), (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(this.contextWindow, \"pointerup\", this.handlePointerUp), (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(this.contextWindow, \"pointercancel\", this.handlePointerUp));\n }\n updateHandlers(handlers) {\n this.handlers = handlers;\n }\n end() {\n this.removeListeners && this.removeListeners();\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_1__.cancelFrame)(this.updatePoint);\n }\n}\nfunction transformPoint(info, transformPagePoint) {\n return transformPagePoint ? { point: transformPagePoint(info.point) } : info;\n}\nfunction subtractPoint(a, b) {\n return { x: a.x - b.x, y: a.y - b.y };\n}\nfunction getPanInfo({ point }, history) {\n return {\n point,\n delta: subtractPoint(point, lastDevicePoint(history)),\n offset: subtractPoint(point, startDevicePoint(history)),\n velocity: getVelocity(history, 0.1),\n };\n}\nfunction startDevicePoint(history) {\n return history[0];\n}\nfunction lastDevicePoint(history) {\n return history[history.length - 1];\n}\nfunction getVelocity(history, timeDelta) {\n if (history.length < 2) {\n return { x: 0, y: 0 };\n }\n let i = history.length - 1;\n let timestampedPoint = null;\n const lastPoint = lastDevicePoint(history);\n while (i >= 0) {\n timestampedPoint = history[i];\n if (lastPoint.timestamp - timestampedPoint.timestamp >\n (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_6__.secondsToMilliseconds)(timeDelta)) {\n break;\n }\n i--;\n }\n if (!timestampedPoint) {\n return { x: 0, y: 0 };\n }\n const time = (0,_utils_time_conversion_mjs__WEBPACK_IMPORTED_MODULE_6__.millisecondsToSeconds)(lastPoint.timestamp - timestampedPoint.timestamp);\n if (time === 0) {\n return { x: 0, y: 0 };\n }\n const currentVelocity = {\n x: (lastPoint.x - timestampedPoint.x) / time,\n y: (lastPoint.y - timestampedPoint.y) / time,\n };\n if (currentVelocity.x === Infinity) {\n currentVelocity.x = 0;\n }\n if (currentVelocity.y === Infinity) {\n currentVelocity.y = 0;\n }\n return currentVelocity;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvcGFuL1BhblNlc3Npb24ubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQStEO0FBQ2dDO0FBQzFCO0FBQ3pCO0FBQ1U7QUFDdUI7QUFDSDs7QUFFMUU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxtQ0FBbUMsOERBQThELElBQUk7QUFDckc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0Q0FBNEMsK0RBQVUsZ0JBQWdCLFlBQVk7QUFDbEY7QUFDQTtBQUNBLG9CQUFvQixRQUFRO0FBQzVCLG9CQUFvQixZQUFZLEVBQUUsMkRBQVM7QUFDM0MsZ0NBQWdDLHFCQUFxQjtBQUNyRCxvQkFBb0Isa0JBQWtCO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSx1REFBSztBQUNqQjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsdUNBQXVDO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYSxzRkFBZ0I7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQix3RUFBZ0I7QUFDckM7QUFDQSxnQkFBZ0IsUUFBUTtBQUN4QixnQkFBZ0IsWUFBWSxFQUFFLDJEQUFTO0FBQ3ZDLDBCQUEwQixxQkFBcUI7QUFDL0MsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBO0FBQ0EsK0JBQStCLHFEQUFJLENBQUMsOEVBQWUsNkRBQTZELDhFQUFlLHlEQUF5RCw4RUFBZTtBQUN2TTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLGlFQUFXO0FBQ25CO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyx3Q0FBd0M7QUFDMUU7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLHNCQUFzQixPQUFPO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksaUZBQXFCO0FBQ2pDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQSxpQkFBaUIsaUZBQXFCO0FBQ3RDO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVzQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2dlc3R1cmVzL3Bhbi9QYW5TZXNzaW9uLm1qcz85ZTczIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4dHJhY3RFdmVudEluZm8gfSBmcm9tICcuLi8uLi9ldmVudHMvZXZlbnQtaW5mby5tanMnO1xuaW1wb3J0IHsgc2Vjb25kc1RvTWlsbGlzZWNvbmRzLCBtaWxsaXNlY29uZHNUb1NlY29uZHMgfSBmcm9tICcuLi8uLi91dGlscy90aW1lLWNvbnZlcnNpb24ubWpzJztcbmltcG9ydCB7IGFkZFBvaW50ZXJFdmVudCB9IGZyb20gJy4uLy4uL2V2ZW50cy9hZGQtcG9pbnRlci1ldmVudC5tanMnO1xuaW1wb3J0IHsgcGlwZSB9IGZyb20gJy4uLy4uL3V0aWxzL3BpcGUubWpzJztcbmltcG9ydCB7IGRpc3RhbmNlMkQgfSBmcm9tICcuLi8uLi91dGlscy9kaXN0YW5jZS5tanMnO1xuaW1wb3J0IHsgaXNQcmltYXJ5UG9pbnRlciB9IGZyb20gJy4uLy4uL2V2ZW50cy91dGlscy9pcy1wcmltYXJ5LXBvaW50ZXIubWpzJztcbmltcG9ydCB7IGZyYW1lLCBjYW5jZWxGcmFtZSwgZnJhbWVEYXRhIH0gZnJvbSAnLi4vLi4vZnJhbWVsb29wL2ZyYW1lLm1qcyc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmNsYXNzIFBhblNlc3Npb24ge1xuICAgIGNvbnN0cnVjdG9yKGV2ZW50LCBoYW5kbGVycywgeyB0cmFuc2Zvcm1QYWdlUG9pbnQsIGNvbnRleHRXaW5kb3csIGRyYWdTbmFwVG9PcmlnaW4gPSBmYWxzZSB9ID0ge30pIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5zdGFydEV2ZW50ID0gbnVsbDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5sYXN0TW92ZUV2ZW50ID0gbnVsbDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5sYXN0TW92ZUV2ZW50SW5mbyA9IG51bGw7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBAaW50ZXJuYWxcbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuaGFuZGxlcnMgPSB7fTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5jb250ZXh0V2luZG93ID0gd2luZG93O1xuICAgICAgICB0aGlzLnVwZGF0ZVBvaW50ID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCEodGhpcy5sYXN0TW92ZUV2ZW50ICYmIHRoaXMubGFzdE1vdmVFdmVudEluZm8pKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IGluZm8gPSBnZXRQYW5JbmZvKHRoaXMubGFzdE1vdmVFdmVudEluZm8sIHRoaXMuaGlzdG9yeSk7XG4gICAgICAgICAgICBjb25zdCBpc1BhblN0YXJ0ZWQgPSB0aGlzLnN0YXJ0RXZlbnQgIT09IG51bGw7XG4gICAgICAgICAgICAvLyBPbmx5IHN0YXJ0IHBhbm5pbmcgaWYgdGhlIG9mZnNldCBpcyBsYXJnZXIgdGhhbiAzIHBpeGVscy4gSWYgd2UgbWFrZSBpdFxuICAgICAgICAgICAgLy8gYW55IGxhcmdlciB0aGFuIHRoaXMgd2UnbGwgd2FudCB0byByZXNldCB0aGUgcG9pbnRlciBoaXN0b3J5XG4gICAgICAgICAgICAvLyBvbiB0aGUgZmlyc3QgdXBkYXRlIHRvIGF2b2lkIHZpc3VhbCBzbmFwcGluZyB0byB0aGUgY3Vyc29lLlxuICAgICAgICAgICAgY29uc3QgaXNEaXN0YW5jZVBhc3RUaHJlc2hvbGQgPSBkaXN0YW5jZTJEKGluZm8ub2Zmc2V0LCB7IHg6IDAsIHk6IDAgfSkgPj0gMztcbiAgICAgICAgICAgIGlmICghaXNQYW5TdGFydGVkICYmICFpc0Rpc3RhbmNlUGFzdFRocmVzaG9sZClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjb25zdCB7IHBvaW50IH0gPSBpbmZvO1xuICAgICAgICAgICAgY29uc3QgeyB0aW1lc3RhbXAgfSA9IGZyYW1lRGF0YTtcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeS5wdXNoKHsgLi4ucG9pbnQsIHRpbWVzdGFtcCB9KTtcbiAgICAgICAgICAgIGNvbnN0IHsgb25TdGFydCwgb25Nb3ZlIH0gPSB0aGlzLmhhbmRsZXJzO1xuICAgICAgICAgICAgaWYgKCFpc1BhblN0YXJ0ZWQpIHtcbiAgICAgICAgICAgICAgICBvblN0YXJ0ICYmIG9uU3RhcnQodGhpcy5sYXN0TW92ZUV2ZW50LCBpbmZvKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0RXZlbnQgPSB0aGlzLmxhc3RNb3ZlRXZlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvbk1vdmUgJiYgb25Nb3ZlKHRoaXMubGFzdE1vdmVFdmVudCwgaW5mbyk7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuaGFuZGxlUG9pbnRlck1vdmUgPSAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgIHRoaXMubGFzdE1vdmVFdmVudCA9IGV2ZW50O1xuICAgICAgICAgICAgdGhpcy5sYXN0TW92ZUV2ZW50SW5mbyA9IHRyYW5zZm9ybVBvaW50KGluZm8sIHRoaXMudHJhbnNmb3JtUGFnZVBvaW50KTtcbiAgICAgICAgICAgIC8vIFRocm90dGxlIG1vdXNlIG1vdmUgZXZlbnQgdG8gb25jZSBwZXIgZnJhbWVcbiAgICAgICAgICAgIGZyYW1lLnVwZGF0ZSh0aGlzLnVwZGF0ZVBvaW50LCB0cnVlKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5oYW5kbGVQb2ludGVyVXAgPSAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZW5kKCk7XG4gICAgICAgICAgICBjb25zdCB7IG9uRW5kLCBvblNlc3Npb25FbmQsIHJlc3VtZUFuaW1hdGlvbiB9ID0gdGhpcy5oYW5kbGVycztcbiAgICAgICAgICAgIGlmICh0aGlzLmRyYWdTbmFwVG9PcmlnaW4pXG4gICAgICAgICAgICAgICAgcmVzdW1lQW5pbWF0aW9uICYmIHJlc3VtZUFuaW1hdGlvbigpO1xuICAgICAgICAgICAgaWYgKCEodGhpcy5sYXN0TW92ZUV2ZW50ICYmIHRoaXMubGFzdE1vdmVFdmVudEluZm8pKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IHBhbkluZm8gPSBnZXRQYW5JbmZvKGV2ZW50LnR5cGUgPT09IFwicG9pbnRlcmNhbmNlbFwiXG4gICAgICAgICAgICAgICAgPyB0aGlzLmxhc3RNb3ZlRXZlbnRJbmZvXG4gICAgICAgICAgICAgICAgOiB0cmFuc2Zvcm1Qb2ludChpbmZvLCB0aGlzLnRyYW5zZm9ybVBhZ2VQb2ludCksIHRoaXMuaGlzdG9yeSk7XG4gICAgICAgICAgICBpZiAodGhpcy5zdGFydEV2ZW50ICYmIG9uRW5kKSB7XG4gICAgICAgICAgICAgICAgb25FbmQoZXZlbnQsIHBhbkluZm8pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb25TZXNzaW9uRW5kICYmIG9uU2Vzc2lvbkVuZChldmVudCwgcGFuSW5mbyk7XG4gICAgICAgIH07XG4gICAgICAgIC8vIElmIHdlIGhhdmUgbW9yZSB0aGFuIG9uZSB0b3VjaCwgZG9uJ3Qgc3RhcnQgZGV0ZWN0aW5nIHRoaXMgZ2VzdHVyZVxuICAgICAgICBpZiAoIWlzUHJpbWFyeVBvaW50ZXIoZXZlbnQpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB0aGlzLmRyYWdTbmFwVG9PcmlnaW4gPSBkcmFnU25hcFRvT3JpZ2luO1xuICAgICAgICB0aGlzLmhhbmRsZXJzID0gaGFuZGxlcnM7XG4gICAgICAgIHRoaXMudHJhbnNmb3JtUGFnZVBvaW50ID0gdHJhbnNmb3JtUGFnZVBvaW50O1xuICAgICAgICB0aGlzLmNvbnRleHRXaW5kb3cgPSBjb250ZXh0V2luZG93IHx8IHdpbmRvdztcbiAgICAgICAgY29uc3QgaW5mbyA9IGV4dHJhY3RFdmVudEluZm8oZXZlbnQpO1xuICAgICAgICBjb25zdCBpbml0aWFsSW5mbyA9IHRyYW5zZm9ybVBvaW50KGluZm8sIHRoaXMudHJhbnNmb3JtUGFnZVBvaW50KTtcbiAgICAgICAgY29uc3QgeyBwb2ludCB9ID0gaW5pdGlhbEluZm87XG4gICAgICAgIGNvbnN0IHsgdGltZXN0YW1wIH0gPSBmcmFtZURhdGE7XG4gICAgICAgIHRoaXMuaGlzdG9yeSA9IFt7IC4uLnBvaW50LCB0aW1lc3RhbXAgfV07XG4gICAgICAgIGNvbnN0IHsgb25TZXNzaW9uU3RhcnQgfSA9IGhhbmRsZXJzO1xuICAgICAgICBvblNlc3Npb25TdGFydCAmJlxuICAgICAgICAgICAgb25TZXNzaW9uU3RhcnQoZXZlbnQsIGdldFBhbkluZm8oaW5pdGlhbEluZm8sIHRoaXMuaGlzdG9yeSkpO1xuICAgICAgICB0aGlzLnJlbW92ZUxpc3RlbmVycyA9IHBpcGUoYWRkUG9pbnRlckV2ZW50KHRoaXMuY29udGV4dFdpbmRvdywgXCJwb2ludGVybW92ZVwiLCB0aGlzLmhhbmRsZVBvaW50ZXJNb3ZlKSwgYWRkUG9pbnRlckV2ZW50KHRoaXMuY29udGV4dFdpbmRvdywgXCJwb2ludGVydXBcIiwgdGhpcy5oYW5kbGVQb2ludGVyVXApLCBhZGRQb2ludGVyRXZlbnQodGhpcy5jb250ZXh0V2luZG93LCBcInBvaW50ZXJjYW5jZWxcIiwgdGhpcy5oYW5kbGVQb2ludGVyVXApKTtcbiAgICB9XG4gICAgdXBkYXRlSGFuZGxlcnMoaGFuZGxlcnMpIHtcbiAgICAgICAgdGhpcy5oYW5kbGVycyA9IGhhbmRsZXJzO1xuICAgIH1cbiAgICBlbmQoKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzICYmIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XG4gICAgICAgIGNhbmNlbEZyYW1lKHRoaXMudXBkYXRlUG9pbnQpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHRyYW5zZm9ybVBvaW50KGluZm8sIHRyYW5zZm9ybVBhZ2VQb2ludCkge1xuICAgIHJldHVybiB0cmFuc2Zvcm1QYWdlUG9pbnQgPyB7IHBvaW50OiB0cmFuc2Zvcm1QYWdlUG9pbnQoaW5mby5wb2ludCkgfSA6IGluZm87XG59XG5mdW5jdGlvbiBzdWJ0cmFjdFBvaW50KGEsIGIpIHtcbiAgICByZXR1cm4geyB4OiBhLnggLSBiLngsIHk6IGEueSAtIGIueSB9O1xufVxuZnVuY3Rpb24gZ2V0UGFuSW5mbyh7IHBvaW50IH0sIGhpc3RvcnkpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICBwb2ludCxcbiAgICAgICAgZGVsdGE6IHN1YnRyYWN0UG9pbnQocG9pbnQsIGxhc3REZXZpY2VQb2ludChoaXN0b3J5KSksXG4gICAgICAgIG9mZnNldDogc3VidHJhY3RQb2ludChwb2ludCwgc3RhcnREZXZpY2VQb2ludChoaXN0b3J5KSksXG4gICAgICAgIHZlbG9jaXR5OiBnZXRWZWxvY2l0eShoaXN0b3J5LCAwLjEpLFxuICAgIH07XG59XG5mdW5jdGlvbiBzdGFydERldmljZVBvaW50KGhpc3RvcnkpIHtcbiAgICByZXR1cm4gaGlzdG9yeVswXTtcbn1cbmZ1bmN0aW9uIGxhc3REZXZpY2VQb2ludChoaXN0b3J5KSB7XG4gICAgcmV0dXJuIGhpc3RvcnlbaGlzdG9yeS5sZW5ndGggLSAxXTtcbn1cbmZ1bmN0aW9uIGdldFZlbG9jaXR5KGhpc3RvcnksIHRpbWVEZWx0YSkge1xuICAgIGlmIChoaXN0b3J5Lmxlbmd0aCA8IDIpIHtcbiAgICAgICAgcmV0dXJuIHsgeDogMCwgeTogMCB9O1xuICAgIH1cbiAgICBsZXQgaSA9IGhpc3RvcnkubGVuZ3RoIC0gMTtcbiAgICBsZXQgdGltZXN0YW1wZWRQb2ludCA9IG51bGw7XG4gICAgY29uc3QgbGFzdFBvaW50ID0gbGFzdERldmljZVBvaW50KGhpc3RvcnkpO1xuICAgIHdoaWxlIChpID49IDApIHtcbiAgICAgICAgdGltZXN0YW1wZWRQb2ludCA9IGhpc3RvcnlbaV07XG4gICAgICAgIGlmIChsYXN0UG9pbnQudGltZXN0YW1wIC0gdGltZXN0YW1wZWRQb2ludC50aW1lc3RhbXAgPlxuICAgICAgICAgICAgc2Vjb25kc1RvTWlsbGlzZWNvbmRzKHRpbWVEZWx0YSkpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGktLTtcbiAgICB9XG4gICAgaWYgKCF0aW1lc3RhbXBlZFBvaW50KSB7XG4gICAgICAgIHJldHVybiB7IHg6IDAsIHk6IDAgfTtcbiAgICB9XG4gICAgY29uc3QgdGltZSA9IG1pbGxpc2Vjb25kc1RvU2Vjb25kcyhsYXN0UG9pbnQudGltZXN0YW1wIC0gdGltZXN0YW1wZWRQb2ludC50aW1lc3RhbXApO1xuICAgIGlmICh0aW1lID09PSAwKSB7XG4gICAgICAgIHJldHVybiB7IHg6IDAsIHk6IDAgfTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFZlbG9jaXR5ID0ge1xuICAgICAgICB4OiAobGFzdFBvaW50LnggLSB0aW1lc3RhbXBlZFBvaW50LngpIC8gdGltZSxcbiAgICAgICAgeTogKGxhc3RQb2ludC55IC0gdGltZXN0YW1wZWRQb2ludC55KSAvIHRpbWUsXG4gICAgfTtcbiAgICBpZiAoY3VycmVudFZlbG9jaXR5LnggPT09IEluZmluaXR5KSB7XG4gICAgICAgIGN1cnJlbnRWZWxvY2l0eS54ID0gMDtcbiAgICB9XG4gICAgaWYgKGN1cnJlbnRWZWxvY2l0eS55ID09PSBJbmZpbml0eSkge1xuICAgICAgICBjdXJyZW50VmVsb2NpdHkueSA9IDA7XG4gICAgfVxuICAgIHJldHVybiBjdXJyZW50VmVsb2NpdHk7XG59XG5cbmV4cG9ydCB7IFBhblNlc3Npb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/index.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/pan/index.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PanGesture: function() { return /* binding */ PanGesture; }\n/* harmony export */ });\n/* harmony import */ var _PanSession_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./PanSession.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs\");\n/* harmony import */ var _events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../events/add-pointer-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\");\n/* harmony import */ var _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../motion/features/Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _utils_get_context_window_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/get-context-window.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/get-context-window.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\nconst asyncHandler = (handler) => (event, info) => {\n if (handler) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.update(() => handler(event, info));\n }\n};\nclass PanGesture extends _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_1__.Feature {\n constructor() {\n super(...arguments);\n this.removePointerDownListener = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__.noop;\n }\n onPointerDown(pointerDownEvent) {\n this.session = new _PanSession_mjs__WEBPACK_IMPORTED_MODULE_3__.PanSession(pointerDownEvent, this.createPanHandlers(), {\n transformPagePoint: this.node.getTransformPagePoint(),\n contextWindow: (0,_utils_get_context_window_mjs__WEBPACK_IMPORTED_MODULE_4__.getContextWindow)(this.node),\n });\n }\n createPanHandlers() {\n const { onPanSessionStart, onPanStart, onPan, onPanEnd } = this.node.getProps();\n return {\n onSessionStart: asyncHandler(onPanSessionStart),\n onStart: asyncHandler(onPanStart),\n onMove: onPan,\n onEnd: (event, info) => {\n delete this.session;\n if (onPanEnd) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.update(() => onPanEnd(event, info));\n }\n },\n };\n }\n mount() {\n this.removePointerDownListener = (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(this.node.current, \"pointerdown\", (event) => this.onPointerDown(event));\n }\n update() {\n this.session && this.session.updateHandlers(this.createPanHandlers());\n }\n unmount() {\n this.removePointerDownListener();\n this.session && this.session.end();\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvcGFuL2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQThDO0FBQ3VCO0FBQ1Q7QUFDaEI7QUFDMEI7QUFDcEI7O0FBRWxEO0FBQ0E7QUFDQSxRQUFRLHVEQUFLO0FBQ2I7QUFDQTtBQUNBLHlCQUF5QixpRUFBTztBQUNoQztBQUNBO0FBQ0EseUNBQXlDLGlEQUFJO0FBQzdDO0FBQ0E7QUFDQSwyQkFBMkIsdURBQVU7QUFDckM7QUFDQSwyQkFBMkIsK0VBQWdCO0FBQzNDLFNBQVM7QUFDVDtBQUNBO0FBQ0EsZ0JBQWdCLGlEQUFpRDtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQix1REFBSztBQUN6QjtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsOEVBQWU7QUFDeEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVzQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL2dlc3R1cmVzL3Bhbi9pbmRleC5tanM/MTQ4ZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYW5TZXNzaW9uIH0gZnJvbSAnLi9QYW5TZXNzaW9uLm1qcyc7XG5pbXBvcnQgeyBhZGRQb2ludGVyRXZlbnQgfSBmcm9tICcuLi8uLi9ldmVudHMvYWRkLXBvaW50ZXItZXZlbnQubWpzJztcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICcuLi8uLi9tb3Rpb24vZmVhdHVyZXMvRmVhdHVyZS5tanMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL3V0aWxzL25vb3AubWpzJztcbmltcG9ydCB7IGdldENvbnRleHRXaW5kb3cgfSBmcm9tICcuLi8uLi91dGlscy9nZXQtY29udGV4dC13aW5kb3cubWpzJztcbmltcG9ydCB7IGZyYW1lIH0gZnJvbSAnLi4vLi4vZnJhbWVsb29wL2ZyYW1lLm1qcyc7XG5cbmNvbnN0IGFzeW5jSGFuZGxlciA9IChoYW5kbGVyKSA9PiAoZXZlbnQsIGluZm8pID0+IHtcbiAgICBpZiAoaGFuZGxlcikge1xuICAgICAgICBmcmFtZS51cGRhdGUoKCkgPT4gaGFuZGxlcihldmVudCwgaW5mbykpO1xuICAgIH1cbn07XG5jbGFzcyBQYW5HZXN0dXJlIGV4dGVuZHMgRmVhdHVyZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIHRoaXMucmVtb3ZlUG9pbnRlckRvd25MaXN0ZW5lciA9IG5vb3A7XG4gICAgfVxuICAgIG9uUG9pbnRlckRvd24ocG9pbnRlckRvd25FdmVudCkge1xuICAgICAgICB0aGlzLnNlc3Npb24gPSBuZXcgUGFuU2Vzc2lvbihwb2ludGVyRG93bkV2ZW50LCB0aGlzLmNyZWF0ZVBhbkhhbmRsZXJzKCksIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybVBhZ2VQb2ludDogdGhpcy5ub2RlLmdldFRyYW5zZm9ybVBhZ2VQb2ludCgpLFxuICAgICAgICAgICAgY29udGV4dFdpbmRvdzogZ2V0Q29udGV4dFdpbmRvdyh0aGlzLm5vZGUpLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY3JlYXRlUGFuSGFuZGxlcnMoKSB7XG4gICAgICAgIGNvbnN0IHsgb25QYW5TZXNzaW9uU3RhcnQsIG9uUGFuU3RhcnQsIG9uUGFuLCBvblBhbkVuZCB9ID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvblNlc3Npb25TdGFydDogYXN5bmNIYW5kbGVyKG9uUGFuU2Vzc2lvblN0YXJ0KSxcbiAgICAgICAgICAgIG9uU3RhcnQ6IGFzeW5jSGFuZGxlcihvblBhblN0YXJ0KSxcbiAgICAgICAgICAgIG9uTW92ZTogb25QYW4sXG4gICAgICAgICAgICBvbkVuZDogKGV2ZW50LCBpbmZvKSA9PiB7XG4gICAgICAgICAgICAgICAgZGVsZXRlIHRoaXMuc2Vzc2lvbjtcbiAgICAgICAgICAgICAgICBpZiAob25QYW5FbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgZnJhbWUudXBkYXRlKCgpID0+IG9uUGFuRW5kKGV2ZW50LCBpbmZvKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgbW91bnQoKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlUG9pbnRlckRvd25MaXN0ZW5lciA9IGFkZFBvaW50ZXJFdmVudCh0aGlzLm5vZGUuY3VycmVudCwgXCJwb2ludGVyZG93blwiLCAoZXZlbnQpID0+IHRoaXMub25Qb2ludGVyRG93bihldmVudCkpO1xuICAgIH1cbiAgICB1cGRhdGUoKSB7XG4gICAgICAgIHRoaXMuc2Vzc2lvbiAmJiB0aGlzLnNlc3Npb24udXBkYXRlSGFuZGxlcnModGhpcy5jcmVhdGVQYW5IYW5kbGVycygpKTtcbiAgICB9XG4gICAgdW5tb3VudCgpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVQb2ludGVyRG93bkxpc3RlbmVyKCk7XG4gICAgICAgIHRoaXMuc2Vzc2lvbiAmJiB0aGlzLnNlc3Npb24uZW5kKCk7XG4gICAgfVxufVxuXG5leHBvcnQgeyBQYW5HZXN0dXJlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/press.mjs":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/press.mjs ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ PressGesture: function() { return /* binding */ PressGesture; }\n/* harmony export */ });\n/* harmony import */ var _events_event_info_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../events/event-info.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/event-info.mjs\");\n/* harmony import */ var _events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../events/add-dom-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\");\n/* harmony import */ var _events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../events/add-pointer-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs\");\n/* harmony import */ var _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../motion/features/Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n/* harmony import */ var _drag_utils_lock_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./drag/utils/lock.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs\");\n/* harmony import */ var _utils_is_node_or_child_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/is-node-or-child.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n\n\nfunction fireSyntheticPointerEvent(name, handler) {\n if (!handler)\n return;\n const syntheticPointerEvent = new PointerEvent(\"pointer\" + name);\n handler(syntheticPointerEvent, (0,_events_event_info_mjs__WEBPACK_IMPORTED_MODULE_0__.extractEventInfo)(syntheticPointerEvent));\n}\nclass PressGesture extends _motion_features_Feature_mjs__WEBPACK_IMPORTED_MODULE_1__.Feature {\n constructor() {\n super(...arguments);\n this.removeStartListeners = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__.noop;\n this.removeEndListeners = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__.noop;\n this.removeAccessibleListeners = _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__.noop;\n this.startPointerPress = (startEvent, startInfo) => {\n if (this.isPressing)\n return;\n this.removeEndListeners();\n const props = this.node.getProps();\n const endPointerPress = (endEvent, endInfo) => {\n if (!this.checkPressEnd())\n return;\n const { onTap, onTapCancel, globalTapTarget } = this.node.getProps();\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.update(() => {\n /**\n * We only count this as a tap gesture if the event.target is the same\n * as, or a child of, this component's element\n */\n !globalTapTarget &&\n !(0,_utils_is_node_or_child_mjs__WEBPACK_IMPORTED_MODULE_4__.isNodeOrChild)(this.node.current, endEvent.target)\n ? onTapCancel && onTapCancel(endEvent, endInfo)\n : onTap && onTap(endEvent, endInfo);\n });\n };\n const removePointerUpListener = (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(window, \"pointerup\", endPointerPress, { passive: !(props.onTap || props[\"onPointerUp\"]) });\n const removePointerCancelListener = (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(window, \"pointercancel\", (cancelEvent, cancelInfo) => this.cancelPress(cancelEvent, cancelInfo), { passive: !(props.onTapCancel || props[\"onPointerCancel\"]) });\n this.removeEndListeners = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_6__.pipe)(removePointerUpListener, removePointerCancelListener);\n this.startPress(startEvent, startInfo);\n };\n this.startAccessiblePress = () => {\n const handleKeydown = (keydownEvent) => {\n if (keydownEvent.key !== \"Enter\" || this.isPressing)\n return;\n const handleKeyup = (keyupEvent) => {\n if (keyupEvent.key !== \"Enter\" || !this.checkPressEnd())\n return;\n fireSyntheticPointerEvent(\"up\", (event, info) => {\n const { onTap } = this.node.getProps();\n if (onTap) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.update(() => onTap(event, info));\n }\n });\n };\n this.removeEndListeners();\n this.removeEndListeners = (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_7__.addDomEvent)(this.node.current, \"keyup\", handleKeyup);\n fireSyntheticPointerEvent(\"down\", (event, info) => {\n this.startPress(event, info);\n });\n };\n const removeKeydownListener = (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_7__.addDomEvent)(this.node.current, \"keydown\", handleKeydown);\n const handleBlur = () => {\n if (!this.isPressing)\n return;\n fireSyntheticPointerEvent(\"cancel\", (cancelEvent, cancelInfo) => this.cancelPress(cancelEvent, cancelInfo));\n };\n const removeBlurListener = (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_7__.addDomEvent)(this.node.current, \"blur\", handleBlur);\n this.removeAccessibleListeners = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_6__.pipe)(removeKeydownListener, removeBlurListener);\n };\n }\n startPress(event, info) {\n this.isPressing = true;\n const { onTapStart, whileTap } = this.node.getProps();\n /**\n * Ensure we trigger animations before firing event callback\n */\n if (whileTap && this.node.animationState) {\n this.node.animationState.setActive(\"whileTap\", true);\n }\n if (onTapStart) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.update(() => onTapStart(event, info));\n }\n }\n checkPressEnd() {\n this.removeEndListeners();\n this.isPressing = false;\n const props = this.node.getProps();\n if (props.whileTap && this.node.animationState) {\n this.node.animationState.setActive(\"whileTap\", false);\n }\n return !(0,_drag_utils_lock_mjs__WEBPACK_IMPORTED_MODULE_8__.isDragActive)();\n }\n cancelPress(event, info) {\n if (!this.checkPressEnd())\n return;\n const { onTapCancel } = this.node.getProps();\n if (onTapCancel) {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.update(() => onTapCancel(event, info));\n }\n }\n mount() {\n const props = this.node.getProps();\n const removePointerListener = (0,_events_add_pointer_event_mjs__WEBPACK_IMPORTED_MODULE_5__.addPointerEvent)(props.globalTapTarget ? window : this.node.current, \"pointerdown\", this.startPointerPress, { passive: !(props.onTapStart || props[\"onPointerStart\"]) });\n const removeFocusListener = (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_7__.addDomEvent)(this.node.current, \"focus\", this.startAccessiblePress);\n this.removeStartListeners = (0,_utils_pipe_mjs__WEBPACK_IMPORTED_MODULE_6__.pipe)(removePointerListener, removeFocusListener);\n }\n unmount() {\n this.removeStartListeners();\n this.removeEndListeners();\n this.removeAccessibleListeners();\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvcHJlc3MubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBNEQ7QUFDRjtBQUNRO0FBQ1Q7QUFDaEI7QUFDWTtBQUNRO0FBQ3BCO0FBQ007O0FBRS9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLHdFQUFnQjtBQUNuRDtBQUNBLDJCQUEyQixpRUFBTztBQUNsQztBQUNBO0FBQ0Esb0NBQW9DLGlEQUFJO0FBQ3hDLGtDQUFrQyxpREFBSTtBQUN0Qyx5Q0FBeUMsaURBQUk7QUFDN0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixzQ0FBc0M7QUFDOUQsZ0JBQWdCLHVEQUFLO0FBQ3JCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsMEVBQWE7QUFDdEM7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLDRDQUE0Qyw4RUFBZSx5Q0FBeUMsaURBQWlEO0FBQ3JKLGdEQUFnRCw4RUFBZSxvR0FBb0csMkRBQTJEO0FBQzlOLHNDQUFzQyxxREFBSTtBQUMxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyxRQUFRO0FBQ3hDO0FBQ0EsNEJBQTRCLHVEQUFLO0FBQ2pDO0FBQ0EscUJBQXFCO0FBQ3JCO0FBQ0E7QUFDQSwwQ0FBMEMsc0VBQVc7QUFDckQ7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBLDBDQUEwQyxzRUFBVztBQUNyRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsdUNBQXVDLHNFQUFXO0FBQ2xELDZDQUE2QyxxREFBSTtBQUNqRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQix1QkFBdUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHVEQUFLO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixrRUFBWTtBQUM1QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixjQUFjO0FBQzlCO0FBQ0EsWUFBWSx1REFBSztBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyw4RUFBZSw4RkFBOEYseURBQXlEO0FBQzVNLG9DQUFvQyxzRUFBVztBQUMvQyxvQ0FBb0MscURBQUk7QUFDeEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvcHJlc3MubWpzPzIxMzkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZXh0cmFjdEV2ZW50SW5mbyB9IGZyb20gJy4uL2V2ZW50cy9ldmVudC1pbmZvLm1qcyc7XG5pbXBvcnQgeyBhZGREb21FdmVudCB9IGZyb20gJy4uL2V2ZW50cy9hZGQtZG9tLWV2ZW50Lm1qcyc7XG5pbXBvcnQgeyBhZGRQb2ludGVyRXZlbnQgfSBmcm9tICcuLi9ldmVudHMvYWRkLXBvaW50ZXItZXZlbnQubWpzJztcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICcuLi9tb3Rpb24vZmVhdHVyZXMvRmVhdHVyZS5tanMnO1xuaW1wb3J0IHsgcGlwZSB9IGZyb20gJy4uL3V0aWxzL3BpcGUubWpzJztcbmltcG9ydCB7IGlzRHJhZ0FjdGl2ZSB9IGZyb20gJy4vZHJhZy91dGlscy9sb2NrLm1qcyc7XG5pbXBvcnQgeyBpc05vZGVPckNoaWxkIH0gZnJvbSAnLi91dGlscy9pcy1ub2RlLW9yLWNoaWxkLm1qcyc7XG5pbXBvcnQgeyBub29wIH0gZnJvbSAnLi4vdXRpbHMvbm9vcC5tanMnO1xuaW1wb3J0IHsgZnJhbWUgfSBmcm9tICcuLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuZnVuY3Rpb24gZmlyZVN5bnRoZXRpY1BvaW50ZXJFdmVudChuYW1lLCBoYW5kbGVyKSB7XG4gICAgaWYgKCFoYW5kbGVyKVxuICAgICAgICByZXR1cm47XG4gICAgY29uc3Qgc3ludGhldGljUG9pbnRlckV2ZW50ID0gbmV3IFBvaW50ZXJFdmVudChcInBvaW50ZXJcIiArIG5hbWUpO1xuICAgIGhhbmRsZXIoc3ludGhldGljUG9pbnRlckV2ZW50LCBleHRyYWN0RXZlbnRJbmZvKHN5bnRoZXRpY1BvaW50ZXJFdmVudCkpO1xufVxuY2xhc3MgUHJlc3NHZXN0dXJlIGV4dGVuZHMgRmVhdHVyZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIHRoaXMucmVtb3ZlU3RhcnRMaXN0ZW5lcnMgPSBub29wO1xuICAgICAgICB0aGlzLnJlbW92ZUVuZExpc3RlbmVycyA9IG5vb3A7XG4gICAgICAgIHRoaXMucmVtb3ZlQWNjZXNzaWJsZUxpc3RlbmVycyA9IG5vb3A7XG4gICAgICAgIHRoaXMuc3RhcnRQb2ludGVyUHJlc3MgPSAoc3RhcnRFdmVudCwgc3RhcnRJbmZvKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc1ByZXNzaW5nKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlRW5kTGlzdGVuZXJzKCk7XG4gICAgICAgICAgICBjb25zdCBwcm9wcyA9IHRoaXMubm9kZS5nZXRQcm9wcygpO1xuICAgICAgICAgICAgY29uc3QgZW5kUG9pbnRlclByZXNzID0gKGVuZEV2ZW50LCBlbmRJbmZvKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmNoZWNrUHJlc3NFbmQoKSlcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgb25UYXAsIG9uVGFwQ2FuY2VsLCBnbG9iYWxUYXBUYXJnZXQgfSA9IHRoaXMubm9kZS5nZXRQcm9wcygpO1xuICAgICAgICAgICAgICAgIGZyYW1lLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBXZSBvbmx5IGNvdW50IHRoaXMgYXMgYSB0YXAgZ2VzdHVyZSBpZiB0aGUgZXZlbnQudGFyZ2V0IGlzIHRoZSBzYW1lXG4gICAgICAgICAgICAgICAgICAgICAqIGFzLCBvciBhIGNoaWxkIG9mLCB0aGlzIGNvbXBvbmVudCdzIGVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgICFnbG9iYWxUYXBUYXJnZXQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFpc05vZGVPckNoaWxkKHRoaXMubm9kZS5jdXJyZW50LCBlbmRFdmVudC50YXJnZXQpXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG9uVGFwQ2FuY2VsICYmIG9uVGFwQ2FuY2VsKGVuZEV2ZW50LCBlbmRJbmZvKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBvblRhcCAmJiBvblRhcChlbmRFdmVudCwgZW5kSW5mbyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgY29uc3QgcmVtb3ZlUG9pbnRlclVwTGlzdGVuZXIgPSBhZGRQb2ludGVyRXZlbnQod2luZG93LCBcInBvaW50ZXJ1cFwiLCBlbmRQb2ludGVyUHJlc3MsIHsgcGFzc2l2ZTogIShwcm9wcy5vblRhcCB8fCBwcm9wc1tcIm9uUG9pbnRlclVwXCJdKSB9KTtcbiAgICAgICAgICAgIGNvbnN0IHJlbW92ZVBvaW50ZXJDYW5jZWxMaXN0ZW5lciA9IGFkZFBvaW50ZXJFdmVudCh3aW5kb3csIFwicG9pbnRlcmNhbmNlbFwiLCAoY2FuY2VsRXZlbnQsIGNhbmNlbEluZm8pID0+IHRoaXMuY2FuY2VsUHJlc3MoY2FuY2VsRXZlbnQsIGNhbmNlbEluZm8pLCB7IHBhc3NpdmU6ICEocHJvcHMub25UYXBDYW5jZWwgfHwgcHJvcHNbXCJvblBvaW50ZXJDYW5jZWxcIl0pIH0pO1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVFbmRMaXN0ZW5lcnMgPSBwaXBlKHJlbW92ZVBvaW50ZXJVcExpc3RlbmVyLCByZW1vdmVQb2ludGVyQ2FuY2VsTGlzdGVuZXIpO1xuICAgICAgICAgICAgdGhpcy5zdGFydFByZXNzKHN0YXJ0RXZlbnQsIHN0YXJ0SW5mbyk7XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuc3RhcnRBY2Nlc3NpYmxlUHJlc3MgPSAoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBoYW5kbGVLZXlkb3duID0gKGtleWRvd25FdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChrZXlkb3duRXZlbnQua2V5ICE9PSBcIkVudGVyXCIgfHwgdGhpcy5pc1ByZXNzaW5nKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgY29uc3QgaGFuZGxlS2V5dXAgPSAoa2V5dXBFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoa2V5dXBFdmVudC5rZXkgIT09IFwiRW50ZXJcIiB8fCAhdGhpcy5jaGVja1ByZXNzRW5kKCkpXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGZpcmVTeW50aGV0aWNQb2ludGVyRXZlbnQoXCJ1cFwiLCAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgb25UYXAgfSA9IHRoaXMubm9kZS5nZXRQcm9wcygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9uVGFwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWUudXBkYXRlKCgpID0+IG9uVGFwKGV2ZW50LCBpbmZvKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgdGhpcy5yZW1vdmVFbmRMaXN0ZW5lcnMoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbW92ZUVuZExpc3RlbmVycyA9IGFkZERvbUV2ZW50KHRoaXMubm9kZS5jdXJyZW50LCBcImtleXVwXCIsIGhhbmRsZUtleXVwKTtcbiAgICAgICAgICAgICAgICBmaXJlU3ludGhldGljUG9pbnRlckV2ZW50KFwiZG93blwiLCAoZXZlbnQsIGluZm8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdGFydFByZXNzKGV2ZW50LCBpbmZvKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCByZW1vdmVLZXlkb3duTGlzdGVuZXIgPSBhZGREb21FdmVudCh0aGlzLm5vZGUuY3VycmVudCwgXCJrZXlkb3duXCIsIGhhbmRsZUtleWRvd24pO1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlQmx1ciA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNQcmVzc2luZylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGZpcmVTeW50aGV0aWNQb2ludGVyRXZlbnQoXCJjYW5jZWxcIiwgKGNhbmNlbEV2ZW50LCBjYW5jZWxJbmZvKSA9PiB0aGlzLmNhbmNlbFByZXNzKGNhbmNlbEV2ZW50LCBjYW5jZWxJbmZvKSk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgY29uc3QgcmVtb3ZlQmx1ckxpc3RlbmVyID0gYWRkRG9tRXZlbnQodGhpcy5ub2RlLmN1cnJlbnQsIFwiYmx1clwiLCBoYW5kbGVCbHVyKTtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWNjZXNzaWJsZUxpc3RlbmVycyA9IHBpcGUocmVtb3ZlS2V5ZG93bkxpc3RlbmVyLCByZW1vdmVCbHVyTGlzdGVuZXIpO1xuICAgICAgICB9O1xuICAgIH1cbiAgICBzdGFydFByZXNzKGV2ZW50LCBpbmZvKSB7XG4gICAgICAgIHRoaXMuaXNQcmVzc2luZyA9IHRydWU7XG4gICAgICAgIGNvbnN0IHsgb25UYXBTdGFydCwgd2hpbGVUYXAgfSA9IHRoaXMubm9kZS5nZXRQcm9wcygpO1xuICAgICAgICAvKipcbiAgICAgICAgICogRW5zdXJlIHdlIHRyaWdnZXIgYW5pbWF0aW9ucyBiZWZvcmUgZmlyaW5nIGV2ZW50IGNhbGxiYWNrXG4gICAgICAgICAqL1xuICAgICAgICBpZiAod2hpbGVUYXAgJiYgdGhpcy5ub2RlLmFuaW1hdGlvblN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLm5vZGUuYW5pbWF0aW9uU3RhdGUuc2V0QWN0aXZlKFwid2hpbGVUYXBcIiwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9uVGFwU3RhcnQpIHtcbiAgICAgICAgICAgIGZyYW1lLnVwZGF0ZSgoKSA9PiBvblRhcFN0YXJ0KGV2ZW50LCBpbmZvKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY2hlY2tQcmVzc0VuZCgpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVFbmRMaXN0ZW5lcnMoKTtcbiAgICAgICAgdGhpcy5pc1ByZXNzaW5nID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IHByb3BzID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgIGlmIChwcm9wcy53aGlsZVRhcCAmJiB0aGlzLm5vZGUuYW5pbWF0aW9uU3RhdGUpIHtcbiAgICAgICAgICAgIHRoaXMubm9kZS5hbmltYXRpb25TdGF0ZS5zZXRBY3RpdmUoXCJ3aGlsZVRhcFwiLCBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICFpc0RyYWdBY3RpdmUoKTtcbiAgICB9XG4gICAgY2FuY2VsUHJlc3MoZXZlbnQsIGluZm8pIHtcbiAgICAgICAgaWYgKCF0aGlzLmNoZWNrUHJlc3NFbmQoKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgeyBvblRhcENhbmNlbCB9ID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgIGlmIChvblRhcENhbmNlbCkge1xuICAgICAgICAgICAgZnJhbWUudXBkYXRlKCgpID0+IG9uVGFwQ2FuY2VsKGV2ZW50LCBpbmZvKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbW91bnQoKSB7XG4gICAgICAgIGNvbnN0IHByb3BzID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgIGNvbnN0IHJlbW92ZVBvaW50ZXJMaXN0ZW5lciA9IGFkZFBvaW50ZXJFdmVudChwcm9wcy5nbG9iYWxUYXBUYXJnZXQgPyB3aW5kb3cgOiB0aGlzLm5vZGUuY3VycmVudCwgXCJwb2ludGVyZG93blwiLCB0aGlzLnN0YXJ0UG9pbnRlclByZXNzLCB7IHBhc3NpdmU6ICEocHJvcHMub25UYXBTdGFydCB8fCBwcm9wc1tcIm9uUG9pbnRlclN0YXJ0XCJdKSB9KTtcbiAgICAgICAgY29uc3QgcmVtb3ZlRm9jdXNMaXN0ZW5lciA9IGFkZERvbUV2ZW50KHRoaXMubm9kZS5jdXJyZW50LCBcImZvY3VzXCIsIHRoaXMuc3RhcnRBY2Nlc3NpYmxlUHJlc3MpO1xuICAgICAgICB0aGlzLnJlbW92ZVN0YXJ0TGlzdGVuZXJzID0gcGlwZShyZW1vdmVQb2ludGVyTGlzdGVuZXIsIHJlbW92ZUZvY3VzTGlzdGVuZXIpO1xuICAgIH1cbiAgICB1bm1vdW50KCkge1xuICAgICAgICB0aGlzLnJlbW92ZVN0YXJ0TGlzdGVuZXJzKCk7XG4gICAgICAgIHRoaXMucmVtb3ZlRW5kTGlzdGVuZXJzKCk7XG4gICAgICAgIHRoaXMucmVtb3ZlQWNjZXNzaWJsZUxpc3RlbmVycygpO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgUHJlc3NHZXN0dXJlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/press.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isNodeOrChild: function() { return /* binding */ isNodeOrChild; }\n/* harmony export */ });\n/**\n * Recursively traverse up the tree to check whether the provided child node\n * is the parent or a descendant of it.\n *\n * @param parent - Element to find\n * @param child - Element to test against parent\n */\nconst isNodeOrChild = (parent, child) => {\n if (!child) {\n return false;\n }\n else if (parent === child) {\n return true;\n }\n else {\n return isNodeOrChild(parent, child.parentElement);\n }\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvZ2VzdHVyZXMvdXRpbHMvaXMtbm9kZS1vci1jaGlsZC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFeUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9nZXN0dXJlcy91dGlscy9pcy1ub2RlLW9yLWNoaWxkLm1qcz8yNWM4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVjdXJzaXZlbHkgdHJhdmVyc2UgdXAgdGhlIHRyZWUgdG8gY2hlY2sgd2hldGhlciB0aGUgcHJvdmlkZWQgY2hpbGQgbm9kZVxuICogaXMgdGhlIHBhcmVudCBvciBhIGRlc2NlbmRhbnQgb2YgaXQuXG4gKlxuICogQHBhcmFtIHBhcmVudCAtIEVsZW1lbnQgdG8gZmluZFxuICogQHBhcmFtIGNoaWxkIC0gRWxlbWVudCB0byB0ZXN0IGFnYWluc3QgcGFyZW50XG4gKi9cbmNvbnN0IGlzTm9kZU9yQ2hpbGQgPSAocGFyZW50LCBjaGlsZCkgPT4ge1xuICAgIGlmICghY2hpbGQpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBlbHNlIGlmIChwYXJlbnQgPT09IGNoaWxkKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGlzTm9kZU9yQ2hpbGQocGFyZW50LCBjaGlsZC5wYXJlbnRFbGVtZW50KTtcbiAgICB9XG59O1xuXG5leHBvcnQgeyBpc05vZGVPckNoaWxkIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/Feature.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Feature: function() { return /* binding */ Feature; }\n/* harmony export */ });\nclass Feature {\n constructor(node) {\n this.isMounted = false;\n this.node = node;\n }\n update() { }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL0ZlYXR1cmUubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFbUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vZmVhdHVyZXMvRmVhdHVyZS5tanM/OGUwNSJdLCJzb3VyY2VzQ29udGVudCI6WyJjbGFzcyBGZWF0dXJlIHtcbiAgICBjb25zdHJ1Y3Rvcihub2RlKSB7XG4gICAgICAgIHRoaXMuaXNNb3VudGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gICAgfVxuICAgIHVwZGF0ZSgpIHsgfVxufVxuXG5leHBvcnQgeyBGZWF0dXJlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ ExitAnimationFeature: function() { return /* binding */ ExitAnimationFeature; }\n/* harmony export */ });\n/* harmony import */ var _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n\n\nlet id = 0;\nclass ExitAnimationFeature extends _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__.Feature {\n constructor() {\n super(...arguments);\n this.id = id++;\n }\n update() {\n if (!this.node.presenceContext)\n return;\n const { isPresent, onExitComplete, custom } = this.node.presenceContext;\n const { isPresent: prevIsPresent } = this.node.prevPresenceContext || {};\n if (!this.node.animationState || isPresent === prevIsPresent) {\n return;\n }\n const exitAnimation = this.node.animationState.setActive(\"exit\", !isPresent, { custom: custom !== null && custom !== void 0 ? custom : this.node.getProps().custom });\n if (onExitComplete && !isPresent) {\n exitAnimation.then(() => onExitComplete(this.id));\n }\n }\n mount() {\n const { register } = this.node.presenceContext || {};\n if (register) {\n this.unmount = register(this.id);\n }\n }\n unmount() { }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2FuaW1hdGlvbi9leGl0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF5Qzs7QUFFekM7QUFDQSxtQ0FBbUMsaURBQU87QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0Isb0NBQW9DO0FBQ3BELGdCQUFnQiwyQkFBMkI7QUFDM0M7QUFDQTtBQUNBO0FBQ0EsdUZBQXVGLHFGQUFxRjtBQUM1SztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLFdBQVc7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVnQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi9mZWF0dXJlcy9hbmltYXRpb24vZXhpdC5tanM/NjJkOCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnLi4vRmVhdHVyZS5tanMnO1xuXG5sZXQgaWQgPSAwO1xuY2xhc3MgRXhpdEFuaW1hdGlvbkZlYXR1cmUgZXh0ZW5kcyBGZWF0dXJlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoLi4uYXJndW1lbnRzKTtcbiAgICAgICAgdGhpcy5pZCA9IGlkKys7XG4gICAgfVxuICAgIHVwZGF0ZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUucHJlc2VuY2VDb250ZXh0KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCB7IGlzUHJlc2VudCwgb25FeGl0Q29tcGxldGUsIGN1c3RvbSB9ID0gdGhpcy5ub2RlLnByZXNlbmNlQ29udGV4dDtcbiAgICAgICAgY29uc3QgeyBpc1ByZXNlbnQ6IHByZXZJc1ByZXNlbnQgfSA9IHRoaXMubm9kZS5wcmV2UHJlc2VuY2VDb250ZXh0IHx8IHt9O1xuICAgICAgICBpZiAoIXRoaXMubm9kZS5hbmltYXRpb25TdGF0ZSB8fCBpc1ByZXNlbnQgPT09IHByZXZJc1ByZXNlbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBleGl0QW5pbWF0aW9uID0gdGhpcy5ub2RlLmFuaW1hdGlvblN0YXRlLnNldEFjdGl2ZShcImV4aXRcIiwgIWlzUHJlc2VudCwgeyBjdXN0b206IGN1c3RvbSAhPT0gbnVsbCAmJiBjdXN0b20gIT09IHZvaWQgMCA/IGN1c3RvbSA6IHRoaXMubm9kZS5nZXRQcm9wcygpLmN1c3RvbSB9KTtcbiAgICAgICAgaWYgKG9uRXhpdENvbXBsZXRlICYmICFpc1ByZXNlbnQpIHtcbiAgICAgICAgICAgIGV4aXRBbmltYXRpb24udGhlbigoKSA9PiBvbkV4aXRDb21wbGV0ZSh0aGlzLmlkKSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbW91bnQoKSB7XG4gICAgICAgIGNvbnN0IHsgcmVnaXN0ZXIgfSA9IHRoaXMubm9kZS5wcmVzZW5jZUNvbnRleHQgfHwge307XG4gICAgICAgIGlmIChyZWdpc3Rlcikge1xuICAgICAgICAgICAgdGhpcy51bm1vdW50ID0gcmVnaXN0ZXIodGhpcy5pZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdW5tb3VudCgpIHsgfVxufVxuXG5leHBvcnQgeyBFeGl0QW5pbWF0aW9uRmVhdHVyZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/index.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/animation/index.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ AnimationFeature: function() { return /* binding */ AnimationFeature; }\n/* harmony export */ });\n/* harmony import */ var _animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../animation/utils/is-animation-controls.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs\");\n/* harmony import */ var _render_utils_animation_state_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../render/utils/animation-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/animation-state.mjs\");\n/* harmony import */ var _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n\n\n\n\nclass AnimationFeature extends _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__.Feature {\n /**\n * We dynamically generate the AnimationState manager as it contains a reference\n * to the underlying animation library. We only want to load that if we load this,\n * so people can optionally code split it out using the `m` component.\n */\n constructor(node) {\n super(node);\n node.animationState || (node.animationState = (0,_render_utils_animation_state_mjs__WEBPACK_IMPORTED_MODULE_1__.createAnimationState)(node));\n }\n updateAnimationControlsSubscription() {\n const { animate } = this.node.getProps();\n this.unmount();\n if ((0,_animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_2__.isAnimationControls)(animate)) {\n this.unmount = animate.subscribe(this.node);\n }\n }\n /**\n * Subscribe any provided AnimationControls to the component's VisualElement\n */\n mount() {\n this.updateAnimationControlsSubscription();\n }\n update() {\n const { animate } = this.node.getProps();\n const { animate: prevAnimate } = this.node.prevProps || {};\n if (animate !== prevAnimate) {\n this.updateAnimationControlsSubscription();\n }\n }\n unmount() { }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2FuaW1hdGlvbi9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF5RjtBQUNSO0FBQ3hDOztBQUV6QywrQkFBK0IsaURBQU87QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzREFBc0QsdUZBQW9CO0FBQzFFO0FBQ0E7QUFDQSxnQkFBZ0IsVUFBVTtBQUMxQjtBQUNBLFlBQVksK0ZBQW1CO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLFVBQVU7QUFDMUIsZ0JBQWdCLHVCQUF1QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2FuaW1hdGlvbi9pbmRleC5tanM/ZjlkZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FuaW1hdGlvbkNvbnRyb2xzIH0gZnJvbSAnLi4vLi4vLi4vYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGlvbi1jb250cm9scy5tanMnO1xuaW1wb3J0IHsgY3JlYXRlQW5pbWF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi8uLi9yZW5kZXIvdXRpbHMvYW5pbWF0aW9uLXN0YXRlLm1qcyc7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnLi4vRmVhdHVyZS5tanMnO1xuXG5jbGFzcyBBbmltYXRpb25GZWF0dXJlIGV4dGVuZHMgRmVhdHVyZSB7XG4gICAgLyoqXG4gICAgICogV2UgZHluYW1pY2FsbHkgZ2VuZXJhdGUgdGhlIEFuaW1hdGlvblN0YXRlIG1hbmFnZXIgYXMgaXQgY29udGFpbnMgYSByZWZlcmVuY2VcbiAgICAgKiB0byB0aGUgdW5kZXJseWluZyBhbmltYXRpb24gbGlicmFyeS4gV2Ugb25seSB3YW50IHRvIGxvYWQgdGhhdCBpZiB3ZSBsb2FkIHRoaXMsXG4gICAgICogc28gcGVvcGxlIGNhbiBvcHRpb25hbGx5IGNvZGUgc3BsaXQgaXQgb3V0IHVzaW5nIHRoZSBgbWAgY29tcG9uZW50LlxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKG5vZGUpIHtcbiAgICAgICAgc3VwZXIobm9kZSk7XG4gICAgICAgIG5vZGUuYW5pbWF0aW9uU3RhdGUgfHwgKG5vZGUuYW5pbWF0aW9uU3RhdGUgPSBjcmVhdGVBbmltYXRpb25TdGF0ZShub2RlKSk7XG4gICAgfVxuICAgIHVwZGF0ZUFuaW1hdGlvbkNvbnRyb2xzU3Vic2NyaXB0aW9uKCkge1xuICAgICAgICBjb25zdCB7IGFuaW1hdGUgfSA9IHRoaXMubm9kZS5nZXRQcm9wcygpO1xuICAgICAgICB0aGlzLnVubW91bnQoKTtcbiAgICAgICAgaWYgKGlzQW5pbWF0aW9uQ29udHJvbHMoYW5pbWF0ZSkpIHtcbiAgICAgICAgICAgIHRoaXMudW5tb3VudCA9IGFuaW1hdGUuc3Vic2NyaWJlKHRoaXMubm9kZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogU3Vic2NyaWJlIGFueSBwcm92aWRlZCBBbmltYXRpb25Db250cm9scyB0byB0aGUgY29tcG9uZW50J3MgVmlzdWFsRWxlbWVudFxuICAgICAqL1xuICAgIG1vdW50KCkge1xuICAgICAgICB0aGlzLnVwZGF0ZUFuaW1hdGlvbkNvbnRyb2xzU3Vic2NyaXB0aW9uKCk7XG4gICAgfVxuICAgIHVwZGF0ZSgpIHtcbiAgICAgICAgY29uc3QgeyBhbmltYXRlIH0gPSB0aGlzLm5vZGUuZ2V0UHJvcHMoKTtcbiAgICAgICAgY29uc3QgeyBhbmltYXRlOiBwcmV2QW5pbWF0ZSB9ID0gdGhpcy5ub2RlLnByZXZQcm9wcyB8fCB7fTtcbiAgICAgICAgaWYgKGFuaW1hdGUgIT09IHByZXZBbmltYXRlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUFuaW1hdGlvbkNvbnRyb2xzU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdW5tb3VudCgpIHsgfVxufVxuXG5leHBvcnQgeyBBbmltYXRpb25GZWF0dXJlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animations.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/animations.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ animations: function() { return /* binding */ animations; }\n/* harmony export */ });\n/* harmony import */ var _animation_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./animation/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/index.mjs\");\n/* harmony import */ var _animation_exit_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./animation/exit.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs\");\n\n\n\nconst animations = {\n animation: {\n Feature: _animation_index_mjs__WEBPACK_IMPORTED_MODULE_0__.AnimationFeature,\n },\n exit: {\n Feature: _animation_exit_mjs__WEBPACK_IMPORTED_MODULE_1__.ExitAnimationFeature,\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2FuaW1hdGlvbnMubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF5RDtBQUNHOztBQUU1RDtBQUNBO0FBQ0EsaUJBQWlCLGtFQUFnQjtBQUNqQyxLQUFLO0FBQ0w7QUFDQSxpQkFBaUIscUVBQW9CO0FBQ3JDLEtBQUs7QUFDTDs7QUFFc0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vZmVhdHVyZXMvYW5pbWF0aW9ucy5tanM/MDlmZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRpb25GZWF0dXJlIH0gZnJvbSAnLi9hbmltYXRpb24vaW5kZXgubWpzJztcbmltcG9ydCB7IEV4aXRBbmltYXRpb25GZWF0dXJlIH0gZnJvbSAnLi9hbmltYXRpb24vZXhpdC5tanMnO1xuXG5jb25zdCBhbmltYXRpb25zID0ge1xuICAgIGFuaW1hdGlvbjoge1xuICAgICAgICBGZWF0dXJlOiBBbmltYXRpb25GZWF0dXJlLFxuICAgIH0sXG4gICAgZXhpdDoge1xuICAgICAgICBGZWF0dXJlOiBFeGl0QW5pbWF0aW9uRmVhdHVyZSxcbiAgICB9LFxufTtcblxuZXhwb3J0IHsgYW5pbWF0aW9ucyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animations.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/definitions.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ featureDefinitions: function() { return /* binding */ featureDefinitions; }\n/* harmony export */ });\nconst featureProps = {\n animation: [\n \"animate\",\n \"variants\",\n \"whileHover\",\n \"whileTap\",\n \"exit\",\n \"whileInView\",\n \"whileFocus\",\n \"whileDrag\",\n ],\n exit: [\"exit\"],\n drag: [\"drag\", \"dragControls\"],\n focus: [\"whileFocus\"],\n hover: [\"whileHover\", \"onHoverStart\", \"onHoverEnd\"],\n tap: [\"whileTap\", \"onTap\", \"onTapStart\", \"onTapCancel\"],\n pan: [\"onPan\", \"onPanStart\", \"onPanSessionStart\", \"onPanEnd\"],\n inView: [\"whileInView\", \"onViewportEnter\", \"onViewportLeave\"],\n layout: [\"layout\", \"layoutId\"],\n};\nconst featureDefinitions = {};\nfor (const key in featureProps) {\n featureDefinitions[key] = {\n isEnabled: (props) => featureProps[key].some((name) => !!props[name]),\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2RlZmluaXRpb25zLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFOEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vZmVhdHVyZXMvZGVmaW5pdGlvbnMubWpzPzczMjkiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgZmVhdHVyZVByb3BzID0ge1xuICAgIGFuaW1hdGlvbjogW1xuICAgICAgICBcImFuaW1hdGVcIixcbiAgICAgICAgXCJ2YXJpYW50c1wiLFxuICAgICAgICBcIndoaWxlSG92ZXJcIixcbiAgICAgICAgXCJ3aGlsZVRhcFwiLFxuICAgICAgICBcImV4aXRcIixcbiAgICAgICAgXCJ3aGlsZUluVmlld1wiLFxuICAgICAgICBcIndoaWxlRm9jdXNcIixcbiAgICAgICAgXCJ3aGlsZURyYWdcIixcbiAgICBdLFxuICAgIGV4aXQ6IFtcImV4aXRcIl0sXG4gICAgZHJhZzogW1wiZHJhZ1wiLCBcImRyYWdDb250cm9sc1wiXSxcbiAgICBmb2N1czogW1wid2hpbGVGb2N1c1wiXSxcbiAgICBob3ZlcjogW1wid2hpbGVIb3ZlclwiLCBcIm9uSG92ZXJTdGFydFwiLCBcIm9uSG92ZXJFbmRcIl0sXG4gICAgdGFwOiBbXCJ3aGlsZVRhcFwiLCBcIm9uVGFwXCIsIFwib25UYXBTdGFydFwiLCBcIm9uVGFwQ2FuY2VsXCJdLFxuICAgIHBhbjogW1wib25QYW5cIiwgXCJvblBhblN0YXJ0XCIsIFwib25QYW5TZXNzaW9uU3RhcnRcIiwgXCJvblBhbkVuZFwiXSxcbiAgICBpblZpZXc6IFtcIndoaWxlSW5WaWV3XCIsIFwib25WaWV3cG9ydEVudGVyXCIsIFwib25WaWV3cG9ydExlYXZlXCJdLFxuICAgIGxheW91dDogW1wibGF5b3V0XCIsIFwibGF5b3V0SWRcIl0sXG59O1xuY29uc3QgZmVhdHVyZURlZmluaXRpb25zID0ge307XG5mb3IgKGNvbnN0IGtleSBpbiBmZWF0dXJlUHJvcHMpIHtcbiAgICBmZWF0dXJlRGVmaW5pdGlvbnNba2V5XSA9IHtcbiAgICAgICAgaXNFbmFibGVkOiAocHJvcHMpID0+IGZlYXR1cmVQcm9wc1trZXldLnNvbWUoKG5hbWUpID0+ICEhcHJvcHNbbmFtZV0pLFxuICAgIH07XG59XG5cbmV4cG9ydCB7IGZlYXR1cmVEZWZpbml0aW9ucyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/drag.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/drag.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ drag: function() { return /* binding */ drag; }\n/* harmony export */ });\n/* harmony import */ var _gestures_drag_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../gestures/drag/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/drag/index.mjs\");\n/* harmony import */ var _gestures_pan_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../gestures/pan/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/pan/index.mjs\");\n/* harmony import */ var _layout_MeasureLayout_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./layout/MeasureLayout.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs\");\n/* harmony import */ var _projection_node_HTMLProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../projection/node/HTMLProjectionNode.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs\");\n\n\n\n\n\nconst drag = {\n pan: {\n Feature: _gestures_pan_index_mjs__WEBPACK_IMPORTED_MODULE_0__.PanGesture,\n },\n drag: {\n Feature: _gestures_drag_index_mjs__WEBPACK_IMPORTED_MODULE_1__.DragGesture,\n ProjectionNode: _projection_node_HTMLProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_2__.HTMLProjectionNode,\n MeasureLayout: _layout_MeasureLayout_mjs__WEBPACK_IMPORTED_MODULE_3__.MeasureLayout,\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2RyYWcubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQTREO0FBQ0Y7QUFDQztBQUN1Qjs7QUFFbEY7QUFDQTtBQUNBLGlCQUFpQiwrREFBVTtBQUMzQixLQUFLO0FBQ0w7QUFDQSxpQkFBaUIsaUVBQVc7QUFDNUIsd0JBQXdCLHVGQUFrQjtBQUMxQyxxQkFBcUI7QUFDckIsS0FBSztBQUNMOztBQUVnQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi9mZWF0dXJlcy9kcmFnLm1qcz9kN2YzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERyYWdHZXN0dXJlIH0gZnJvbSAnLi4vLi4vZ2VzdHVyZXMvZHJhZy9pbmRleC5tanMnO1xuaW1wb3J0IHsgUGFuR2VzdHVyZSB9IGZyb20gJy4uLy4uL2dlc3R1cmVzL3Bhbi9pbmRleC5tanMnO1xuaW1wb3J0IHsgTWVhc3VyZUxheW91dCB9IGZyb20gJy4vbGF5b3V0L01lYXN1cmVMYXlvdXQubWpzJztcbmltcG9ydCB7IEhUTUxQcm9qZWN0aW9uTm9kZSB9IGZyb20gJy4uLy4uL3Byb2plY3Rpb24vbm9kZS9IVE1MUHJvamVjdGlvbk5vZGUubWpzJztcblxuY29uc3QgZHJhZyA9IHtcbiAgICBwYW46IHtcbiAgICAgICAgRmVhdHVyZTogUGFuR2VzdHVyZSxcbiAgICB9LFxuICAgIGRyYWc6IHtcbiAgICAgICAgRmVhdHVyZTogRHJhZ0dlc3R1cmUsXG4gICAgICAgIFByb2plY3Rpb25Ob2RlOiBIVE1MUHJvamVjdGlvbk5vZGUsXG4gICAgICAgIE1lYXN1cmVMYXlvdXQsXG4gICAgfSxcbn07XG5cbmV4cG9ydCB7IGRyYWcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/drag.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/gestures.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/gestures.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ gestureAnimations: function() { return /* binding */ gestureAnimations; }\n/* harmony export */ });\n/* harmony import */ var _gestures_hover_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../gestures/hover.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/hover.mjs\");\n/* harmony import */ var _gestures_focus_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../gestures/focus.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/focus.mjs\");\n/* harmony import */ var _gestures_press_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../gestures/press.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/gestures/press.mjs\");\n/* harmony import */ var _viewport_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./viewport/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs\");\n\n\n\n\n\nconst gestureAnimations = {\n inView: {\n Feature: _viewport_index_mjs__WEBPACK_IMPORTED_MODULE_0__.InViewFeature,\n },\n tap: {\n Feature: _gestures_press_mjs__WEBPACK_IMPORTED_MODULE_1__.PressGesture,\n },\n focus: {\n Feature: _gestures_focus_mjs__WEBPACK_IMPORTED_MODULE_2__.FocusGesture,\n },\n hover: {\n Feature: _gestures_hover_mjs__WEBPACK_IMPORTED_MODULE_3__.HoverGesture,\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2dlc3R1cmVzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF3RDtBQUNBO0FBQ0E7QUFDSDs7QUFFckQ7QUFDQTtBQUNBLGlCQUFpQiw4REFBYTtBQUM5QixLQUFLO0FBQ0w7QUFDQSxpQkFBaUIsNkRBQVk7QUFDN0IsS0FBSztBQUNMO0FBQ0EsaUJBQWlCLDZEQUFZO0FBQzdCLEtBQUs7QUFDTDtBQUNBLGlCQUFpQiw2REFBWTtBQUM3QixLQUFLO0FBQ0w7O0FBRTZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2dlc3R1cmVzLm1qcz9jYWUwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhvdmVyR2VzdHVyZSB9IGZyb20gJy4uLy4uL2dlc3R1cmVzL2hvdmVyLm1qcyc7XG5pbXBvcnQgeyBGb2N1c0dlc3R1cmUgfSBmcm9tICcuLi8uLi9nZXN0dXJlcy9mb2N1cy5tanMnO1xuaW1wb3J0IHsgUHJlc3NHZXN0dXJlIH0gZnJvbSAnLi4vLi4vZ2VzdHVyZXMvcHJlc3MubWpzJztcbmltcG9ydCB7IEluVmlld0ZlYXR1cmUgfSBmcm9tICcuL3ZpZXdwb3J0L2luZGV4Lm1qcyc7XG5cbmNvbnN0IGdlc3R1cmVBbmltYXRpb25zID0ge1xuICAgIGluVmlldzoge1xuICAgICAgICBGZWF0dXJlOiBJblZpZXdGZWF0dXJlLFxuICAgIH0sXG4gICAgdGFwOiB7XG4gICAgICAgIEZlYXR1cmU6IFByZXNzR2VzdHVyZSxcbiAgICB9LFxuICAgIGZvY3VzOiB7XG4gICAgICAgIEZlYXR1cmU6IEZvY3VzR2VzdHVyZSxcbiAgICB9LFxuICAgIGhvdmVyOiB7XG4gICAgICAgIEZlYXR1cmU6IEhvdmVyR2VzdHVyZSxcbiAgICB9LFxufTtcblxuZXhwb3J0IHsgZ2VzdHVyZUFuaW1hdGlvbnMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/gestures.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/layout.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ layout: function() { return /* binding */ layout; }\n/* harmony export */ });\n/* harmony import */ var _projection_node_HTMLProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../projection/node/HTMLProjectionNode.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs\");\n/* harmony import */ var _layout_MeasureLayout_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./layout/MeasureLayout.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs\");\n\n\n\nconst layout = {\n layout: {\n ProjectionNode: _projection_node_HTMLProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_0__.HTMLProjectionNode,\n MeasureLayout: _layout_MeasureLayout_mjs__WEBPACK_IMPORTED_MODULE_1__.MeasureLayout,\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2xheW91dC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWtGO0FBQ3ZCOztBQUUzRDtBQUNBO0FBQ0Esd0JBQXdCLHVGQUFrQjtBQUMxQyxxQkFBcUI7QUFDckIsS0FBSztBQUNMOztBQUVrQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi9mZWF0dXJlcy9sYXlvdXQubWpzP2U1YWYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSFRNTFByb2plY3Rpb25Ob2RlIH0gZnJvbSAnLi4vLi4vcHJvamVjdGlvbi9ub2RlL0hUTUxQcm9qZWN0aW9uTm9kZS5tanMnO1xuaW1wb3J0IHsgTWVhc3VyZUxheW91dCB9IGZyb20gJy4vbGF5b3V0L01lYXN1cmVMYXlvdXQubWpzJztcblxuY29uc3QgbGF5b3V0ID0ge1xuICAgIGxheW91dDoge1xuICAgICAgICBQcm9qZWN0aW9uTm9kZTogSFRNTFByb2plY3Rpb25Ob2RlLFxuICAgICAgICBNZWFzdXJlTGF5b3V0LFxuICAgIH0sXG59O1xuXG5leHBvcnQgeyBsYXlvdXQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs":
|
||
/*!*************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs ***!
|
||
\*************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MeasureLayout: function() { return /* binding */ MeasureLayout; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _components_AnimatePresence_use_presence_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/AnimatePresence/use-presence.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs\");\n/* harmony import */ var _context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../context/LayoutGroupContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs\");\n/* harmony import */ var _context_SwitchLayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../context/SwitchLayoutGroupContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs\");\n/* harmony import */ var _projection_node_state_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../projection/node/state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/state.mjs\");\n/* harmony import */ var _projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../projection/styles/scale-border-radius.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs\");\n/* harmony import */ var _projection_styles_scale_box_shadow_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../projection/styles/scale-box-shadow.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs\");\n/* harmony import */ var _projection_styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../projection/styles/scale-correction.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n\n\nclass MeasureLayoutWithContext extends react__WEBPACK_IMPORTED_MODULE_0__.Component {\n /**\n * This only mounts projection nodes for components that\n * need measuring, we might want to do it for all components\n * in order to incorporate transforms\n */\n componentDidMount() {\n const { visualElement, layoutGroup, switchLayoutGroup, layoutId } = this.props;\n const { projection } = visualElement;\n (0,_projection_styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_1__.addScaleCorrector)(defaultScaleCorrectors);\n if (projection) {\n if (layoutGroup.group)\n layoutGroup.group.add(projection);\n if (switchLayoutGroup && switchLayoutGroup.register && layoutId) {\n switchLayoutGroup.register(projection);\n }\n projection.root.didUpdate();\n projection.addEventListener(\"animationComplete\", () => {\n this.safeToRemove();\n });\n projection.setOptions({\n ...projection.options,\n onExitComplete: () => this.safeToRemove(),\n });\n }\n _projection_node_state_mjs__WEBPACK_IMPORTED_MODULE_2__.globalProjectionState.hasEverUpdated = true;\n }\n getSnapshotBeforeUpdate(prevProps) {\n const { layoutDependency, visualElement, drag, isPresent } = this.props;\n const projection = visualElement.projection;\n if (!projection)\n return null;\n /**\n * TODO: We use this data in relegate to determine whether to\n * promote a previous element. There's no guarantee its presence data\n * will have updated by this point - if a bug like this arises it will\n * have to be that we markForRelegation and then find a new lead some other way,\n * perhaps in didUpdate\n */\n projection.isPresent = isPresent;\n if (drag ||\n prevProps.layoutDependency !== layoutDependency ||\n layoutDependency === undefined) {\n projection.willUpdate();\n }\n else {\n this.safeToRemove();\n }\n if (prevProps.isPresent !== isPresent) {\n if (isPresent) {\n projection.promote();\n }\n else if (!projection.relegate()) {\n /**\n * If there's another stack member taking over from this one,\n * it's in charge of the exit animation and therefore should\n * be in charge of the safe to remove. Otherwise we call it here.\n */\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.postRender(() => {\n const stack = projection.getStack();\n if (!stack || !stack.members.length) {\n this.safeToRemove();\n }\n });\n }\n }\n return null;\n }\n componentDidUpdate() {\n const { projection } = this.props.visualElement;\n if (projection) {\n projection.root.didUpdate();\n queueMicrotask(() => {\n if (!projection.currentAnimation && projection.isLead()) {\n this.safeToRemove();\n }\n });\n }\n }\n componentWillUnmount() {\n const { visualElement, layoutGroup, switchLayoutGroup: promoteContext, } = this.props;\n const { projection } = visualElement;\n if (projection) {\n projection.scheduleCheckAfterUnmount();\n if (layoutGroup && layoutGroup.group)\n layoutGroup.group.remove(projection);\n if (promoteContext && promoteContext.deregister)\n promoteContext.deregister(projection);\n }\n }\n safeToRemove() {\n const { safeToRemove } = this.props;\n safeToRemove && safeToRemove();\n }\n render() {\n return null;\n }\n}\nfunction MeasureLayout(props) {\n const [isPresent, safeToRemove] = (0,_components_AnimatePresence_use_presence_mjs__WEBPACK_IMPORTED_MODULE_4__.usePresence)();\n const layoutGroup = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_5__.LayoutGroupContext);\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(MeasureLayoutWithContext, { ...props, layoutGroup: layoutGroup, switchLayoutGroup: (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_SwitchLayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_6__.SwitchLayoutGroupContext), isPresent: isPresent, safeToRemove: safeToRemove }));\n}\nconst defaultScaleCorrectors = {\n borderRadius: {\n ..._projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__.correctBorderRadius,\n applyTo: [\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n ],\n },\n borderTopLeftRadius: _projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__.correctBorderRadius,\n borderTopRightRadius: _projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__.correctBorderRadius,\n borderBottomLeftRadius: _projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__.correctBorderRadius,\n borderBottomRightRadius: _projection_styles_scale_border_radius_mjs__WEBPACK_IMPORTED_MODULE_7__.correctBorderRadius,\n boxShadow: _projection_styles_scale_box_shadow_mjs__WEBPACK_IMPORTED_MODULE_8__.correctBoxShadow,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2xheW91dC9NZWFzdXJlTGF5b3V0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQW1EO0FBQ2dDO0FBQ047QUFDWTtBQUNkO0FBQ2M7QUFDTjtBQUNDO0FBQy9COztBQUVyRCx1Q0FBdUMsNENBQXdCO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwwREFBMEQ7QUFDMUUsZ0JBQWdCLGFBQWE7QUFDN0IsUUFBUSwwRkFBaUI7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBLFFBQVEsNkVBQXFCO0FBQzdCO0FBQ0E7QUFDQSxnQkFBZ0IsbURBQW1EO0FBQ25FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsdURBQUs7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixhQUFhO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsaUVBQWlFO0FBQ2pGLGdCQUFnQixhQUFhO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixlQUFlO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLHlGQUFXO0FBQ2pELHdCQUF3QixpREFBVSxDQUFDLCtFQUFrQjtBQUNyRCxZQUFZLGdEQUE0Qiw2QkFBNkIsdURBQXVELGlEQUFVLENBQUMsMkZBQXdCLHFEQUFxRDtBQUNwTjtBQUNBO0FBQ0E7QUFDQSxXQUFXLDJGQUFtQjtBQUM5QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wseUJBQXlCLDJGQUFtQjtBQUM1QywwQkFBMEIsMkZBQW1CO0FBQzdDLDRCQUE0QiwyRkFBbUI7QUFDL0MsNkJBQTZCLDJGQUFtQjtBQUNoRCxlQUFlLHFGQUFnQjtBQUMvQjs7QUFFeUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vZmVhdHVyZXMvbGF5b3V0L01lYXN1cmVMYXlvdXQubWpzPzM0YmEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0X19kZWZhdWx0LCB7IHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VQcmVzZW5jZSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvQW5pbWF0ZVByZXNlbmNlL3VzZS1wcmVzZW5jZS5tanMnO1xuaW1wb3J0IHsgTGF5b3V0R3JvdXBDb250ZXh0IH0gZnJvbSAnLi4vLi4vLi4vY29udGV4dC9MYXlvdXRHcm91cENvbnRleHQubWpzJztcbmltcG9ydCB7IFN3aXRjaExheW91dEdyb3VwQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvU3dpdGNoTGF5b3V0R3JvdXBDb250ZXh0Lm1qcyc7XG5pbXBvcnQgeyBnbG9iYWxQcm9qZWN0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi8uLi9wcm9qZWN0aW9uL25vZGUvc3RhdGUubWpzJztcbmltcG9ydCB7IGNvcnJlY3RCb3JkZXJSYWRpdXMgfSBmcm9tICcuLi8uLi8uLi9wcm9qZWN0aW9uL3N0eWxlcy9zY2FsZS1ib3JkZXItcmFkaXVzLm1qcyc7XG5pbXBvcnQgeyBjb3JyZWN0Qm94U2hhZG93IH0gZnJvbSAnLi4vLi4vLi4vcHJvamVjdGlvbi9zdHlsZXMvc2NhbGUtYm94LXNoYWRvdy5tanMnO1xuaW1wb3J0IHsgYWRkU2NhbGVDb3JyZWN0b3IgfSBmcm9tICcuLi8uLi8uLi9wcm9qZWN0aW9uL3N0eWxlcy9zY2FsZS1jb3JyZWN0aW9uLm1qcyc7XG5pbXBvcnQgeyBmcmFtZSB9IGZyb20gJy4uLy4uLy4uL2ZyYW1lbG9vcC9mcmFtZS5tanMnO1xuXG5jbGFzcyBNZWFzdXJlTGF5b3V0V2l0aENvbnRleHQgZXh0ZW5kcyBSZWFjdF9fZGVmYXVsdC5Db21wb25lbnQge1xuICAgIC8qKlxuICAgICAqIFRoaXMgb25seSBtb3VudHMgcHJvamVjdGlvbiBub2RlcyBmb3IgY29tcG9uZW50cyB0aGF0XG4gICAgICogbmVlZCBtZWFzdXJpbmcsIHdlIG1pZ2h0IHdhbnQgdG8gZG8gaXQgZm9yIGFsbCBjb21wb25lbnRzXG4gICAgICogaW4gb3JkZXIgdG8gaW5jb3Jwb3JhdGUgdHJhbnNmb3Jtc1xuICAgICAqL1xuICAgIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgICBjb25zdCB7IHZpc3VhbEVsZW1lbnQsIGxheW91dEdyb3VwLCBzd2l0Y2hMYXlvdXRHcm91cCwgbGF5b3V0SWQgfSA9IHRoaXMucHJvcHM7XG4gICAgICAgIGNvbnN0IHsgcHJvamVjdGlvbiB9ID0gdmlzdWFsRWxlbWVudDtcbiAgICAgICAgYWRkU2NhbGVDb3JyZWN0b3IoZGVmYXVsdFNjYWxlQ29ycmVjdG9ycyk7XG4gICAgICAgIGlmIChwcm9qZWN0aW9uKSB7XG4gICAgICAgICAgICBpZiAobGF5b3V0R3JvdXAuZ3JvdXApXG4gICAgICAgICAgICAgICAgbGF5b3V0R3JvdXAuZ3JvdXAuYWRkKHByb2plY3Rpb24pO1xuICAgICAgICAgICAgaWYgKHN3aXRjaExheW91dEdyb3VwICYmIHN3aXRjaExheW91dEdyb3VwLnJlZ2lzdGVyICYmIGxheW91dElkKSB7XG4gICAgICAgICAgICAgICAgc3dpdGNoTGF5b3V0R3JvdXAucmVnaXN0ZXIocHJvamVjdGlvbik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwcm9qZWN0aW9uLnJvb3QuZGlkVXBkYXRlKCk7XG4gICAgICAgICAgICBwcm9qZWN0aW9uLmFkZEV2ZW50TGlzdGVuZXIoXCJhbmltYXRpb25Db21wbGV0ZVwiLCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zYWZlVG9SZW1vdmUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcHJvamVjdGlvbi5zZXRPcHRpb25zKHtcbiAgICAgICAgICAgICAgICAuLi5wcm9qZWN0aW9uLm9wdGlvbnMsXG4gICAgICAgICAgICAgICAgb25FeGl0Q29tcGxldGU6ICgpID0+IHRoaXMuc2FmZVRvUmVtb3ZlKCksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBnbG9iYWxQcm9qZWN0aW9uU3RhdGUuaGFzRXZlclVwZGF0ZWQgPSB0cnVlO1xuICAgIH1cbiAgICBnZXRTbmFwc2hvdEJlZm9yZVVwZGF0ZShwcmV2UHJvcHMpIHtcbiAgICAgICAgY29uc3QgeyBsYXlvdXREZXBlbmRlbmN5LCB2aXN1YWxFbGVtZW50LCBkcmFnLCBpc1ByZXNlbnQgfSA9IHRoaXMucHJvcHM7XG4gICAgICAgIGNvbnN0IHByb2plY3Rpb24gPSB2aXN1YWxFbGVtZW50LnByb2plY3Rpb247XG4gICAgICAgIGlmICghcHJvamVjdGlvbilcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAvKipcbiAgICAgICAgICogVE9ETzogV2UgdXNlIHRoaXMgZGF0YSBpbiByZWxlZ2F0ZSB0byBkZXRlcm1pbmUgd2hldGhlciB0b1xuICAgICAgICAgKiBwcm9tb3RlIGEgcHJldmlvdXMgZWxlbWVudC4gVGhlcmUncyBubyBndWFyYW50ZWUgaXRzIHByZXNlbmNlIGRhdGFcbiAgICAgICAgICogd2lsbCBoYXZlIHVwZGF0ZWQgYnkgdGhpcyBwb2ludCAtIGlmIGEgYnVnIGxpa2UgdGhpcyBhcmlzZXMgaXQgd2lsbFxuICAgICAgICAgKiBoYXZlIHRvIGJlIHRoYXQgd2UgbWFya0ZvclJlbGVnYXRpb24gYW5kIHRoZW4gZmluZCBhIG5ldyBsZWFkIHNvbWUgb3RoZXIgd2F5LFxuICAgICAgICAgKiBwZXJoYXBzIGluIGRpZFVwZGF0ZVxuICAgICAgICAgKi9cbiAgICAgICAgcHJvamVjdGlvbi5pc1ByZXNlbnQgPSBpc1ByZXNlbnQ7XG4gICAgICAgIGlmIChkcmFnIHx8XG4gICAgICAgICAgICBwcmV2UHJvcHMubGF5b3V0RGVwZW5kZW5jeSAhPT0gbGF5b3V0RGVwZW5kZW5jeSB8fFxuICAgICAgICAgICAgbGF5b3V0RGVwZW5kZW5jeSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBwcm9qZWN0aW9uLndpbGxVcGRhdGUoKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2FmZVRvUmVtb3ZlKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByZXZQcm9wcy5pc1ByZXNlbnQgIT09IGlzUHJlc2VudCkge1xuICAgICAgICAgICAgaWYgKGlzUHJlc2VudCkge1xuICAgICAgICAgICAgICAgIHByb2plY3Rpb24ucHJvbW90ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoIXByb2plY3Rpb24ucmVsZWdhdGUoKSkge1xuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIElmIHRoZXJlJ3MgYW5vdGhlciBzdGFjayBtZW1iZXIgdGFraW5nIG92ZXIgZnJvbSB0aGlzIG9uZSxcbiAgICAgICAgICAgICAgICAgKiBpdCdzIGluIGNoYXJnZSBvZiB0aGUgZXhpdCBhbmltYXRpb24gYW5kIHRoZXJlZm9yZSBzaG91bGRcbiAgICAgICAgICAgICAgICAgKiBiZSBpbiBjaGFyZ2Ugb2YgdGhlIHNhZmUgdG8gcmVtb3ZlLiBPdGhlcndpc2Ugd2UgY2FsbCBpdCBoZXJlLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIGZyYW1lLnBvc3RSZW5kZXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGFjayA9IHByb2plY3Rpb24uZ2V0U3RhY2soKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFzdGFjayB8fCAhc3RhY2subWVtYmVycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2FmZVRvUmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgICBjb25zdCB7IHByb2plY3Rpb24gfSA9IHRoaXMucHJvcHMudmlzdWFsRWxlbWVudDtcbiAgICAgICAgaWYgKHByb2plY3Rpb24pIHtcbiAgICAgICAgICAgIHByb2plY3Rpb24ucm9vdC5kaWRVcGRhdGUoKTtcbiAgICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXByb2plY3Rpb24uY3VycmVudEFuaW1hdGlvbiAmJiBwcm9qZWN0aW9uLmlzTGVhZCgpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2FmZVRvUmVtb3ZlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XG4gICAgICAgIGNvbnN0IHsgdmlzdWFsRWxlbWVudCwgbGF5b3V0R3JvdXAsIHN3aXRjaExheW91dEdyb3VwOiBwcm9tb3RlQ29udGV4dCwgfSA9IHRoaXMucHJvcHM7XG4gICAgICAgIGNvbnN0IHsgcHJvamVjdGlvbiB9ID0gdmlzdWFsRWxlbWVudDtcbiAgICAgICAgaWYgKHByb2plY3Rpb24pIHtcbiAgICAgICAgICAgIHByb2plY3Rpb24uc2NoZWR1bGVDaGVja0FmdGVyVW5tb3VudCgpO1xuICAgICAgICAgICAgaWYgKGxheW91dEdyb3VwICYmIGxheW91dEdyb3VwLmdyb3VwKVxuICAgICAgICAgICAgICAgIGxheW91dEdyb3VwLmdyb3VwLnJlbW92ZShwcm9qZWN0aW9uKTtcbiAgICAgICAgICAgIGlmIChwcm9tb3RlQ29udGV4dCAmJiBwcm9tb3RlQ29udGV4dC5kZXJlZ2lzdGVyKVxuICAgICAgICAgICAgICAgIHByb21vdGVDb250ZXh0LmRlcmVnaXN0ZXIocHJvamVjdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2FmZVRvUmVtb3ZlKCkge1xuICAgICAgICBjb25zdCB7IHNhZmVUb1JlbW92ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgICAgc2FmZVRvUmVtb3ZlICYmIHNhZmVUb1JlbW92ZSgpO1xuICAgIH1cbiAgICByZW5kZXIoKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cbmZ1bmN0aW9uIE1lYXN1cmVMYXlvdXQocHJvcHMpIHtcbiAgICBjb25zdCBbaXNQcmVzZW50LCBzYWZlVG9SZW1vdmVdID0gdXNlUHJlc2VuY2UoKTtcbiAgICBjb25zdCBsYXlvdXRHcm91cCA9IHVzZUNvbnRleHQoTGF5b3V0R3JvdXBDb250ZXh0KTtcbiAgICByZXR1cm4gKFJlYWN0X19kZWZhdWx0LmNyZWF0ZUVsZW1lbnQoTWVhc3VyZUxheW91dFdpdGhDb250ZXh0LCB7IC4uLnByb3BzLCBsYXlvdXRHcm91cDogbGF5b3V0R3JvdXAsIHN3aXRjaExheW91dEdyb3VwOiB1c2VDb250ZXh0KFN3aXRjaExheW91dEdyb3VwQ29udGV4dCksIGlzUHJlc2VudDogaXNQcmVzZW50LCBzYWZlVG9SZW1vdmU6IHNhZmVUb1JlbW92ZSB9KSk7XG59XG5jb25zdCBkZWZhdWx0U2NhbGVDb3JyZWN0b3JzID0ge1xuICAgIGJvcmRlclJhZGl1czoge1xuICAgICAgICAuLi5jb3JyZWN0Qm9yZGVyUmFkaXVzLFxuICAgICAgICBhcHBseVRvOiBbXG4gICAgICAgICAgICBcImJvcmRlclRvcExlZnRSYWRpdXNcIixcbiAgICAgICAgICAgIFwiYm9yZGVyVG9wUmlnaHRSYWRpdXNcIixcbiAgICAgICAgICAgIFwiYm9yZGVyQm90dG9tTGVmdFJhZGl1c1wiLFxuICAgICAgICAgICAgXCJib3JkZXJCb3R0b21SaWdodFJhZGl1c1wiLFxuICAgICAgICBdLFxuICAgIH0sXG4gICAgYm9yZGVyVG9wTGVmdFJhZGl1czogY29ycmVjdEJvcmRlclJhZGl1cyxcbiAgICBib3JkZXJUb3BSaWdodFJhZGl1czogY29ycmVjdEJvcmRlclJhZGl1cyxcbiAgICBib3JkZXJCb3R0b21MZWZ0UmFkaXVzOiBjb3JyZWN0Qm9yZGVyUmFkaXVzLFxuICAgIGJvcmRlckJvdHRvbVJpZ2h0UmFkaXVzOiBjb3JyZWN0Qm9yZGVyUmFkaXVzLFxuICAgIGJveFNoYWRvdzogY29ycmVjdEJveFNoYWRvdyxcbn07XG5cbmV4cG9ydCB7IE1lYXN1cmVMYXlvdXQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/load-features.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/load-features.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ loadFeatures: function() { return /* binding */ loadFeatures; }\n/* harmony export */ });\n/* harmony import */ var _definitions_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./definitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs\");\n\n\nfunction loadFeatures(features) {\n for (const key in features) {\n _definitions_mjs__WEBPACK_IMPORTED_MODULE_0__.featureDefinitions[key] = {\n ..._definitions_mjs__WEBPACK_IMPORTED_MODULE_0__.featureDefinitions[key],\n ...features[key],\n };\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2xvYWQtZmVhdHVyZXMubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXVEOztBQUV2RDtBQUNBO0FBQ0EsUUFBUSxnRUFBa0I7QUFDMUIsZUFBZSxnRUFBa0I7QUFDakM7QUFDQTtBQUNBO0FBQ0E7O0FBRXdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL2xvYWQtZmVhdHVyZXMubWpzPzE3YWUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmVhdHVyZURlZmluaXRpb25zIH0gZnJvbSAnLi9kZWZpbml0aW9ucy5tanMnO1xuXG5mdW5jdGlvbiBsb2FkRmVhdHVyZXMoZmVhdHVyZXMpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBmZWF0dXJlcykge1xuICAgICAgICBmZWF0dXJlRGVmaW5pdGlvbnNba2V5XSA9IHtcbiAgICAgICAgICAgIC4uLmZlYXR1cmVEZWZpbml0aW9uc1trZXldLFxuICAgICAgICAgICAgLi4uZmVhdHVyZXNba2V5XSxcbiAgICAgICAgfTtcbiAgICB9XG59XG5cbmV4cG9ydCB7IGxvYWRGZWF0dXJlcyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/load-features.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ InViewFeature: function() { return /* binding */ InViewFeature; }\n/* harmony export */ });\n/* harmony import */ var _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Feature.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/Feature.mjs\");\n/* harmony import */ var _observers_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./observers.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs\");\n\n\n\nconst thresholdNames = {\n some: 0,\n all: 1,\n};\nclass InViewFeature extends _Feature_mjs__WEBPACK_IMPORTED_MODULE_0__.Feature {\n constructor() {\n super(...arguments);\n this.hasEnteredView = false;\n this.isInView = false;\n }\n startObserver() {\n this.unmount();\n const { viewport = {} } = this.node.getProps();\n const { root, margin: rootMargin, amount = \"some\", once } = viewport;\n const options = {\n root: root ? root.current : undefined,\n rootMargin,\n threshold: typeof amount === \"number\" ? amount : thresholdNames[amount],\n };\n const onIntersectionUpdate = (entry) => {\n const { isIntersecting } = entry;\n /**\n * If there's been no change in the viewport state, early return.\n */\n if (this.isInView === isIntersecting)\n return;\n this.isInView = isIntersecting;\n /**\n * Handle hasEnteredView. If this is only meant to run once, and\n * element isn't visible, early return. Otherwise set hasEnteredView to true.\n */\n if (once && !isIntersecting && this.hasEnteredView) {\n return;\n }\n else if (isIntersecting) {\n this.hasEnteredView = true;\n }\n if (this.node.animationState) {\n this.node.animationState.setActive(\"whileInView\", isIntersecting);\n }\n /**\n * Use the latest committed props rather than the ones in scope\n * when this observer is created\n */\n const { onViewportEnter, onViewportLeave } = this.node.getProps();\n const callback = isIntersecting ? onViewportEnter : onViewportLeave;\n callback && callback(entry);\n };\n return (0,_observers_mjs__WEBPACK_IMPORTED_MODULE_1__.observeIntersection)(this.node.current, options, onIntersectionUpdate);\n }\n mount() {\n this.startObserver();\n }\n update() {\n if (typeof IntersectionObserver === \"undefined\")\n return;\n const { props, prevProps } = this.node;\n const hasOptionsChanged = [\"amount\", \"margin\", \"root\"].some(hasViewportOptionChanged(props, prevProps));\n if (hasOptionsChanged) {\n this.startObserver();\n }\n }\n unmount() { }\n}\nfunction hasViewportOptionChanged({ viewport = {} }, { viewport: prevViewport = {} } = {}) {\n return (name) => viewport[name] !== prevViewport[name];\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL3ZpZXdwb3J0L2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBeUM7QUFDYTs7QUFFdEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSw0QkFBNEIsaURBQU87QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsZ0JBQWdCO0FBQ2hDLGdCQUFnQixrREFBa0Q7QUFDbEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGlCQUFpQjtBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLG1DQUFtQztBQUN2RDtBQUNBO0FBQ0E7QUFDQSxlQUFlLG1FQUFtQjtBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixtQkFBbUI7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQ0FBb0MsZUFBZSxJQUFJLDhCQUE4QixJQUFJO0FBQ3pGO0FBQ0E7O0FBRXlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL3ZpZXdwb3J0L2luZGV4Lm1qcz9mN2Q1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICcuLi9GZWF0dXJlLm1qcyc7XG5pbXBvcnQgeyBvYnNlcnZlSW50ZXJzZWN0aW9uIH0gZnJvbSAnLi9vYnNlcnZlcnMubWpzJztcblxuY29uc3QgdGhyZXNob2xkTmFtZXMgPSB7XG4gICAgc29tZTogMCxcbiAgICBhbGw6IDEsXG59O1xuY2xhc3MgSW5WaWV3RmVhdHVyZSBleHRlbmRzIEZlYXR1cmUge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlciguLi5hcmd1bWVudHMpO1xuICAgICAgICB0aGlzLmhhc0VudGVyZWRWaWV3ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaXNJblZpZXcgPSBmYWxzZTtcbiAgICB9XG4gICAgc3RhcnRPYnNlcnZlcigpIHtcbiAgICAgICAgdGhpcy51bm1vdW50KCk7XG4gICAgICAgIGNvbnN0IHsgdmlld3BvcnQgPSB7fSB9ID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgIGNvbnN0IHsgcm9vdCwgbWFyZ2luOiByb290TWFyZ2luLCBhbW91bnQgPSBcInNvbWVcIiwgb25jZSB9ID0gdmlld3BvcnQ7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgICAgICAgICByb290OiByb290ID8gcm9vdC5jdXJyZW50IDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgcm9vdE1hcmdpbixcbiAgICAgICAgICAgIHRocmVzaG9sZDogdHlwZW9mIGFtb3VudCA9PT0gXCJudW1iZXJcIiA/IGFtb3VudCA6IHRocmVzaG9sZE5hbWVzW2Ftb3VudF0sXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG9uSW50ZXJzZWN0aW9uVXBkYXRlID0gKGVudHJ5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGlzSW50ZXJzZWN0aW5nIH0gPSBlbnRyeTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhlcmUncyBiZWVuIG5vIGNoYW5nZSBpbiB0aGUgdmlld3BvcnQgc3RhdGUsIGVhcmx5IHJldHVybi5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNJblZpZXcgPT09IGlzSW50ZXJzZWN0aW5nKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMuaXNJblZpZXcgPSBpc0ludGVyc2VjdGluZztcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSGFuZGxlIGhhc0VudGVyZWRWaWV3LiBJZiB0aGlzIGlzIG9ubHkgbWVhbnQgdG8gcnVuIG9uY2UsIGFuZFxuICAgICAgICAgICAgICogZWxlbWVudCBpc24ndCB2aXNpYmxlLCBlYXJseSByZXR1cm4uIE90aGVyd2lzZSBzZXQgaGFzRW50ZXJlZFZpZXcgdG8gdHJ1ZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKG9uY2UgJiYgIWlzSW50ZXJzZWN0aW5nICYmIHRoaXMuaGFzRW50ZXJlZFZpZXcpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChpc0ludGVyc2VjdGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzRW50ZXJlZFZpZXcgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMubm9kZS5hbmltYXRpb25TdGF0ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZS5hbmltYXRpb25TdGF0ZS5zZXRBY3RpdmUoXCJ3aGlsZUluVmlld1wiLCBpc0ludGVyc2VjdGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFVzZSB0aGUgbGF0ZXN0IGNvbW1pdHRlZCBwcm9wcyByYXRoZXIgdGhhbiB0aGUgb25lcyBpbiBzY29wZVxuICAgICAgICAgICAgICogd2hlbiB0aGlzIG9ic2VydmVyIGlzIGNyZWF0ZWRcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgeyBvblZpZXdwb3J0RW50ZXIsIG9uVmlld3BvcnRMZWF2ZSB9ID0gdGhpcy5ub2RlLmdldFByb3BzKCk7XG4gICAgICAgICAgICBjb25zdCBjYWxsYmFjayA9IGlzSW50ZXJzZWN0aW5nID8gb25WaWV3cG9ydEVudGVyIDogb25WaWV3cG9ydExlYXZlO1xuICAgICAgICAgICAgY2FsbGJhY2sgJiYgY2FsbGJhY2soZW50cnkpO1xuICAgICAgICB9O1xuICAgICAgICByZXR1cm4gb2JzZXJ2ZUludGVyc2VjdGlvbih0aGlzLm5vZGUuY3VycmVudCwgb3B0aW9ucywgb25JbnRlcnNlY3Rpb25VcGRhdGUpO1xuICAgIH1cbiAgICBtb3VudCgpIHtcbiAgICAgICAgdGhpcy5zdGFydE9ic2VydmVyKCk7XG4gICAgfVxuICAgIHVwZGF0ZSgpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBJbnRlcnNlY3Rpb25PYnNlcnZlciA9PT0gXCJ1bmRlZmluZWRcIilcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgeyBwcm9wcywgcHJldlByb3BzIH0gPSB0aGlzLm5vZGU7XG4gICAgICAgIGNvbnN0IGhhc09wdGlvbnNDaGFuZ2VkID0gW1wiYW1vdW50XCIsIFwibWFyZ2luXCIsIFwicm9vdFwiXS5zb21lKGhhc1ZpZXdwb3J0T3B0aW9uQ2hhbmdlZChwcm9wcywgcHJldlByb3BzKSk7XG4gICAgICAgIGlmIChoYXNPcHRpb25zQ2hhbmdlZCkge1xuICAgICAgICAgICAgdGhpcy5zdGFydE9ic2VydmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdW5tb3VudCgpIHsgfVxufVxuZnVuY3Rpb24gaGFzVmlld3BvcnRPcHRpb25DaGFuZ2VkKHsgdmlld3BvcnQgPSB7fSB9LCB7IHZpZXdwb3J0OiBwcmV2Vmlld3BvcnQgPSB7fSB9ID0ge30pIHtcbiAgICByZXR1cm4gKG5hbWUpID0+IHZpZXdwb3J0W25hbWVdICE9PSBwcmV2Vmlld3BvcnRbbmFtZV07XG59XG5cbmV4cG9ydCB7IEluVmlld0ZlYXR1cmUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ observeIntersection: function() { return /* binding */ observeIntersection; }\n/* harmony export */ });\n/**\n * Map an IntersectionHandler callback to an element. We only ever make one handler for one\n * element, so even though these handlers might all be triggered by different\n * observers, we can keep them in the same map.\n */\nconst observerCallbacks = new WeakMap();\n/**\n * Multiple observers can be created for multiple element/document roots. Each with\n * different settings. So here we store dictionaries of observers to each root,\n * using serialised settings (threshold/margin) as lookup keys.\n */\nconst observers = new WeakMap();\nconst fireObserverCallback = (entry) => {\n const callback = observerCallbacks.get(entry.target);\n callback && callback(entry);\n};\nconst fireAllObserverCallbacks = (entries) => {\n entries.forEach(fireObserverCallback);\n};\nfunction initIntersectionObserver({ root, ...options }) {\n const lookupRoot = root || document;\n /**\n * If we don't have an observer lookup map for this root, create one.\n */\n if (!observers.has(lookupRoot)) {\n observers.set(lookupRoot, {});\n }\n const rootObservers = observers.get(lookupRoot);\n const key = JSON.stringify(options);\n /**\n * If we don't have an observer for this combination of root and settings,\n * create one.\n */\n if (!rootObservers[key]) {\n rootObservers[key] = new IntersectionObserver(fireAllObserverCallbacks, { root, ...options });\n }\n return rootObservers[key];\n}\nfunction observeIntersection(element, options, callback) {\n const rootInteresectionObserver = initIntersectionObserver(options);\n observerCallbacks.set(element, callback);\n rootInteresectionObserver.observe(element);\n return () => {\n observerCallbacks.delete(element);\n rootInteresectionObserver.unobserve(element);\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2ZlYXR1cmVzL3ZpZXdwb3J0L29ic2VydmVycy5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLGtCQUFrQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrRkFBa0Ysa0JBQWtCO0FBQ3BHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFK0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vZmVhdHVyZXMvdmlld3BvcnQvb2JzZXJ2ZXJzLm1qcz9jZTc0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogTWFwIGFuIEludGVyc2VjdGlvbkhhbmRsZXIgY2FsbGJhY2sgdG8gYW4gZWxlbWVudC4gV2Ugb25seSBldmVyIG1ha2Ugb25lIGhhbmRsZXIgZm9yIG9uZVxuICogZWxlbWVudCwgc28gZXZlbiB0aG91Z2ggdGhlc2UgaGFuZGxlcnMgbWlnaHQgYWxsIGJlIHRyaWdnZXJlZCBieSBkaWZmZXJlbnRcbiAqIG9ic2VydmVycywgd2UgY2FuIGtlZXAgdGhlbSBpbiB0aGUgc2FtZSBtYXAuXG4gKi9cbmNvbnN0IG9ic2VydmVyQ2FsbGJhY2tzID0gbmV3IFdlYWtNYXAoKTtcbi8qKlxuICogTXVsdGlwbGUgb2JzZXJ2ZXJzIGNhbiBiZSBjcmVhdGVkIGZvciBtdWx0aXBsZSBlbGVtZW50L2RvY3VtZW50IHJvb3RzLiBFYWNoIHdpdGhcbiAqIGRpZmZlcmVudCBzZXR0aW5ncy4gU28gaGVyZSB3ZSBzdG9yZSBkaWN0aW9uYXJpZXMgb2Ygb2JzZXJ2ZXJzIHRvIGVhY2ggcm9vdCxcbiAqIHVzaW5nIHNlcmlhbGlzZWQgc2V0dGluZ3MgKHRocmVzaG9sZC9tYXJnaW4pIGFzIGxvb2t1cCBrZXlzLlxuICovXG5jb25zdCBvYnNlcnZlcnMgPSBuZXcgV2Vha01hcCgpO1xuY29uc3QgZmlyZU9ic2VydmVyQ2FsbGJhY2sgPSAoZW50cnkpID0+IHtcbiAgICBjb25zdCBjYWxsYmFjayA9IG9ic2VydmVyQ2FsbGJhY2tzLmdldChlbnRyeS50YXJnZXQpO1xuICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKGVudHJ5KTtcbn07XG5jb25zdCBmaXJlQWxsT2JzZXJ2ZXJDYWxsYmFja3MgPSAoZW50cmllcykgPT4ge1xuICAgIGVudHJpZXMuZm9yRWFjaChmaXJlT2JzZXJ2ZXJDYWxsYmFjayk7XG59O1xuZnVuY3Rpb24gaW5pdEludGVyc2VjdGlvbk9ic2VydmVyKHsgcm9vdCwgLi4ub3B0aW9ucyB9KSB7XG4gICAgY29uc3QgbG9va3VwUm9vdCA9IHJvb3QgfHwgZG9jdW1lbnQ7XG4gICAgLyoqXG4gICAgICogSWYgd2UgZG9uJ3QgaGF2ZSBhbiBvYnNlcnZlciBsb29rdXAgbWFwIGZvciB0aGlzIHJvb3QsIGNyZWF0ZSBvbmUuXG4gICAgICovXG4gICAgaWYgKCFvYnNlcnZlcnMuaGFzKGxvb2t1cFJvb3QpKSB7XG4gICAgICAgIG9ic2VydmVycy5zZXQobG9va3VwUm9vdCwge30pO1xuICAgIH1cbiAgICBjb25zdCByb290T2JzZXJ2ZXJzID0gb2JzZXJ2ZXJzLmdldChsb29rdXBSb290KTtcbiAgICBjb25zdCBrZXkgPSBKU09OLnN0cmluZ2lmeShvcHRpb25zKTtcbiAgICAvKipcbiAgICAgKiBJZiB3ZSBkb24ndCBoYXZlIGFuIG9ic2VydmVyIGZvciB0aGlzIGNvbWJpbmF0aW9uIG9mIHJvb3QgYW5kIHNldHRpbmdzLFxuICAgICAqIGNyZWF0ZSBvbmUuXG4gICAgICovXG4gICAgaWYgKCFyb290T2JzZXJ2ZXJzW2tleV0pIHtcbiAgICAgICAgcm9vdE9ic2VydmVyc1trZXldID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZpcmVBbGxPYnNlcnZlckNhbGxiYWNrcywgeyByb290LCAuLi5vcHRpb25zIH0pO1xuICAgIH1cbiAgICByZXR1cm4gcm9vdE9ic2VydmVyc1trZXldO1xufVxuZnVuY3Rpb24gb2JzZXJ2ZUludGVyc2VjdGlvbihlbGVtZW50LCBvcHRpb25zLCBjYWxsYmFjaykge1xuICAgIGNvbnN0IHJvb3RJbnRlcmVzZWN0aW9uT2JzZXJ2ZXIgPSBpbml0SW50ZXJzZWN0aW9uT2JzZXJ2ZXIob3B0aW9ucyk7XG4gICAgb2JzZXJ2ZXJDYWxsYmFja3Muc2V0KGVsZW1lbnQsIGNhbGxiYWNrKTtcbiAgICByb290SW50ZXJlc2VjdGlvbk9ic2VydmVyLm9ic2VydmUoZWxlbWVudCk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgb2JzZXJ2ZXJDYWxsYmFja3MuZGVsZXRlKGVsZW1lbnQpO1xuICAgICAgICByb290SW50ZXJlc2VjdGlvbk9ic2VydmVyLnVub2JzZXJ2ZShlbGVtZW50KTtcbiAgICB9O1xufVxuXG5leHBvcnQgeyBvYnNlcnZlSW50ZXJzZWN0aW9uIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/index.mjs":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/index.mjs ***!
|
||
\*************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createMotionComponent: function() { return /* binding */ createMotionComponent; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _context_MotionConfigContext_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../context/MotionConfigContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs\");\n/* harmony import */ var _context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../context/MotionContext/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs\");\n/* harmony import */ var _utils_use_visual_element_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/use-visual-element.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs\");\n/* harmony import */ var _utils_use_motion_ref_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/use-motion-ref.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs\");\n/* harmony import */ var _context_MotionContext_create_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../context/MotionContext/create.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/create.mjs\");\n/* harmony import */ var _features_load_features_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./features/load-features.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/load-features.mjs\");\n/* harmony import */ var _utils_is_browser_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/is-browser.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs\");\n/* harmony import */ var _context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../context/LayoutGroupContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs\");\n/* harmony import */ var _context_LazyContext_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../context/LazyContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LazyContext.mjs\");\n/* harmony import */ var _context_SwitchLayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../context/SwitchLayoutGroupContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs\");\n/* harmony import */ var _utils_symbol_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./utils/symbol.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/symbol.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/**\n * Create a `motion` component.\n *\n * This function accepts a Component argument, which can be either a string (ie \"div\"\n * for `motion.div`), or an actual React component.\n *\n * Alongside this is a config option which provides a way of rendering the provided\n * component \"offline\", or outside the React render cycle.\n */\nfunction createMotionComponent({ preloadedFeatures, createVisualElement, useRender, useVisualState, Component, }) {\n preloadedFeatures && (0,_features_load_features_mjs__WEBPACK_IMPORTED_MODULE_1__.loadFeatures)(preloadedFeatures);\n function MotionComponent(props, externalRef) {\n /**\n * If we need to measure the element we load this functionality in a\n * separate class component in order to gain access to getSnapshotBeforeUpdate.\n */\n let MeasureLayout;\n const configAndProps = {\n ...(0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_MotionConfigContext_mjs__WEBPACK_IMPORTED_MODULE_2__.MotionConfigContext),\n ...props,\n layoutId: useLayoutId(props),\n };\n const { isStatic } = configAndProps;\n const context = (0,_context_MotionContext_create_mjs__WEBPACK_IMPORTED_MODULE_3__.useCreateMotionContext)(props);\n const visualState = useVisualState(props, isStatic);\n if (!isStatic && _utils_is_browser_mjs__WEBPACK_IMPORTED_MODULE_4__.isBrowser) {\n /**\n * Create a VisualElement for this component. A VisualElement provides a common\n * interface to renderer-specific APIs (ie DOM/Three.js etc) as well as\n * providing a way of rendering to these APIs outside of the React render loop\n * for more performant animations and interactions\n */\n context.visualElement = (0,_utils_use_visual_element_mjs__WEBPACK_IMPORTED_MODULE_5__.useVisualElement)(Component, visualState, configAndProps, createVisualElement);\n /**\n * Load Motion gesture and animation features. These are rendered as renderless\n * components so each feature can optionally make use of React lifecycle methods.\n */\n const initialLayoutGroupConfig = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_SwitchLayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_6__.SwitchLayoutGroupContext);\n const isStrict = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LazyContext_mjs__WEBPACK_IMPORTED_MODULE_7__.LazyContext).strict;\n if (context.visualElement) {\n MeasureLayout = context.visualElement.loadFeatures(\n // Note: Pass the full new combined props to correctly re-render dynamic feature components.\n configAndProps, isStrict, preloadedFeatures, initialLayoutGroupConfig);\n }\n }\n /**\n * The mount order and hierarchy is specific to ensure our element ref\n * is hydrated by the time features fire their effects.\n */\n return (react__WEBPACK_IMPORTED_MODULE_0__.createElement(_context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_8__.MotionContext.Provider, { value: context },\n MeasureLayout && context.visualElement ? (react__WEBPACK_IMPORTED_MODULE_0__.createElement(MeasureLayout, { visualElement: context.visualElement, ...configAndProps })) : null,\n useRender(Component, props, (0,_utils_use_motion_ref_mjs__WEBPACK_IMPORTED_MODULE_9__.useMotionRef)(visualState, context.visualElement, externalRef), visualState, isStatic, context.visualElement)));\n }\n const ForwardRefComponent = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(MotionComponent);\n ForwardRefComponent[_utils_symbol_mjs__WEBPACK_IMPORTED_MODULE_10__.motionComponentSymbol] = Component;\n return ForwardRefComponent;\n}\nfunction useLayoutId({ layoutId }) {\n const layoutGroupId = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LayoutGroupContext_mjs__WEBPACK_IMPORTED_MODULE_11__.LayoutGroupContext).id;\n return layoutGroupId && layoutId !== undefined\n ? layoutGroupId + \"-\" + layoutId\n : layoutId;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL2luZGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQStCO0FBQ2dCO0FBQzBCO0FBQ047QUFDRDtBQUNSO0FBQ21CO0FBQ2pCO0FBQ1I7QUFDbUI7QUFDZDtBQUMwQjtBQUN4Qjs7QUFFM0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLCtFQUErRTtBQUNoSCx5QkFBeUIseUVBQVk7QUFDckM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxlQUFlLGlEQUFVLENBQUMsaUZBQW1CO0FBQzdDO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixXQUFXO0FBQzNCLHdCQUF3Qix5RkFBc0I7QUFDOUM7QUFDQSx5QkFBeUIsNERBQVM7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLCtFQUFnQjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZDQUE2QyxpREFBVSxDQUFDLDJGQUF3QjtBQUNoRiw2QkFBNkIsaURBQVUsQ0FBQyxpRUFBVztBQUNuRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixnREFBbUIsQ0FBQywyRUFBYSxhQUFhLGdCQUFnQjtBQUM5RSxzREFBc0QsZ0RBQW1CLGtCQUFrQix5REFBeUQ7QUFDcEosd0NBQXdDLHVFQUFZO0FBQ3BEO0FBQ0EsZ0NBQWdDLGlEQUFVO0FBQzFDLHdCQUF3QixxRUFBcUI7QUFDN0M7QUFDQTtBQUNBLHVCQUF1QixVQUFVO0FBQ2pDLDBCQUEwQixpREFBVSxDQUFDLGdGQUFrQjtBQUN2RDtBQUNBO0FBQ0E7QUFDQTs7QUFFaUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vaW5kZXgubWpzPzYzYzUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZm9yd2FyZFJlZiwgdXNlQ29udGV4dCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IE1vdGlvbkNvbmZpZ0NvbnRleHQgfSBmcm9tICcuLi9jb250ZXh0L01vdGlvbkNvbmZpZ0NvbnRleHQubWpzJztcbmltcG9ydCB7IE1vdGlvbkNvbnRleHQgfSBmcm9tICcuLi9jb250ZXh0L01vdGlvbkNvbnRleHQvaW5kZXgubWpzJztcbmltcG9ydCB7IHVzZVZpc3VhbEVsZW1lbnQgfSBmcm9tICcuL3V0aWxzL3VzZS12aXN1YWwtZWxlbWVudC5tanMnO1xuaW1wb3J0IHsgdXNlTW90aW9uUmVmIH0gZnJvbSAnLi91dGlscy91c2UtbW90aW9uLXJlZi5tanMnO1xuaW1wb3J0IHsgdXNlQ3JlYXRlTW90aW9uQ29udGV4dCB9IGZyb20gJy4uL2NvbnRleHQvTW90aW9uQ29udGV4dC9jcmVhdGUubWpzJztcbmltcG9ydCB7IGxvYWRGZWF0dXJlcyB9IGZyb20gJy4vZmVhdHVyZXMvbG9hZC1mZWF0dXJlcy5tanMnO1xuaW1wb3J0IHsgaXNCcm93c2VyIH0gZnJvbSAnLi4vdXRpbHMvaXMtYnJvd3Nlci5tanMnO1xuaW1wb3J0IHsgTGF5b3V0R3JvdXBDb250ZXh0IH0gZnJvbSAnLi4vY29udGV4dC9MYXlvdXRHcm91cENvbnRleHQubWpzJztcbmltcG9ydCB7IExhenlDb250ZXh0IH0gZnJvbSAnLi4vY29udGV4dC9MYXp5Q29udGV4dC5tanMnO1xuaW1wb3J0IHsgU3dpdGNoTGF5b3V0R3JvdXBDb250ZXh0IH0gZnJvbSAnLi4vY29udGV4dC9Td2l0Y2hMYXlvdXRHcm91cENvbnRleHQubWpzJztcbmltcG9ydCB7IG1vdGlvbkNvbXBvbmVudFN5bWJvbCB9IGZyb20gJy4vdXRpbHMvc3ltYm9sLm1qcyc7XG5cbi8qKlxuICogQ3JlYXRlIGEgYG1vdGlvbmAgY29tcG9uZW50LlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gYWNjZXB0cyBhIENvbXBvbmVudCBhcmd1bWVudCwgd2hpY2ggY2FuIGJlIGVpdGhlciBhIHN0cmluZyAoaWUgXCJkaXZcIlxuICogZm9yIGBtb3Rpb24uZGl2YCksIG9yIGFuIGFjdHVhbCBSZWFjdCBjb21wb25lbnQuXG4gKlxuICogQWxvbmdzaWRlIHRoaXMgaXMgYSBjb25maWcgb3B0aW9uIHdoaWNoIHByb3ZpZGVzIGEgd2F5IG9mIHJlbmRlcmluZyB0aGUgcHJvdmlkZWRcbiAqIGNvbXBvbmVudCBcIm9mZmxpbmVcIiwgb3Igb3V0c2lkZSB0aGUgUmVhY3QgcmVuZGVyIGN5Y2xlLlxuICovXG5mdW5jdGlvbiBjcmVhdGVNb3Rpb25Db21wb25lbnQoeyBwcmVsb2FkZWRGZWF0dXJlcywgY3JlYXRlVmlzdWFsRWxlbWVudCwgdXNlUmVuZGVyLCB1c2VWaXN1YWxTdGF0ZSwgQ29tcG9uZW50LCB9KSB7XG4gICAgcHJlbG9hZGVkRmVhdHVyZXMgJiYgbG9hZEZlYXR1cmVzKHByZWxvYWRlZEZlYXR1cmVzKTtcbiAgICBmdW5jdGlvbiBNb3Rpb25Db21wb25lbnQocHJvcHMsIGV4dGVybmFsUmVmKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB3ZSBuZWVkIHRvIG1lYXN1cmUgdGhlIGVsZW1lbnQgd2UgbG9hZCB0aGlzIGZ1bmN0aW9uYWxpdHkgaW4gYVxuICAgICAgICAgKiBzZXBhcmF0ZSBjbGFzcyBjb21wb25lbnQgaW4gb3JkZXIgdG8gZ2FpbiBhY2Nlc3MgdG8gZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUuXG4gICAgICAgICAqL1xuICAgICAgICBsZXQgTWVhc3VyZUxheW91dDtcbiAgICAgICAgY29uc3QgY29uZmlnQW5kUHJvcHMgPSB7XG4gICAgICAgICAgICAuLi51c2VDb250ZXh0KE1vdGlvbkNvbmZpZ0NvbnRleHQpLFxuICAgICAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgICAgICBsYXlvdXRJZDogdXNlTGF5b3V0SWQocHJvcHMpLFxuICAgICAgICB9O1xuICAgICAgICBjb25zdCB7IGlzU3RhdGljIH0gPSBjb25maWdBbmRQcm9wcztcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHVzZUNyZWF0ZU1vdGlvbkNvbnRleHQocHJvcHMpO1xuICAgICAgICBjb25zdCB2aXN1YWxTdGF0ZSA9IHVzZVZpc3VhbFN0YXRlKHByb3BzLCBpc1N0YXRpYyk7XG4gICAgICAgIGlmICghaXNTdGF0aWMgJiYgaXNCcm93c2VyKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIENyZWF0ZSBhIFZpc3VhbEVsZW1lbnQgZm9yIHRoaXMgY29tcG9uZW50LiBBIFZpc3VhbEVsZW1lbnQgcHJvdmlkZXMgYSBjb21tb25cbiAgICAgICAgICAgICAqIGludGVyZmFjZSB0byByZW5kZXJlci1zcGVjaWZpYyBBUElzIChpZSBET00vVGhyZWUuanMgZXRjKSBhcyB3ZWxsIGFzXG4gICAgICAgICAgICAgKiBwcm92aWRpbmcgYSB3YXkgb2YgcmVuZGVyaW5nIHRvIHRoZXNlIEFQSXMgb3V0c2lkZSBvZiB0aGUgUmVhY3QgcmVuZGVyIGxvb3BcbiAgICAgICAgICAgICAqIGZvciBtb3JlIHBlcmZvcm1hbnQgYW5pbWF0aW9ucyBhbmQgaW50ZXJhY3Rpb25zXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnRleHQudmlzdWFsRWxlbWVudCA9IHVzZVZpc3VhbEVsZW1lbnQoQ29tcG9uZW50LCB2aXN1YWxTdGF0ZSwgY29uZmlnQW5kUHJvcHMsIGNyZWF0ZVZpc3VhbEVsZW1lbnQpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBMb2FkIE1vdGlvbiBnZXN0dXJlIGFuZCBhbmltYXRpb24gZmVhdHVyZXMuIFRoZXNlIGFyZSByZW5kZXJlZCBhcyByZW5kZXJsZXNzXG4gICAgICAgICAgICAgKiBjb21wb25lbnRzIHNvIGVhY2ggZmVhdHVyZSBjYW4gb3B0aW9uYWxseSBtYWtlIHVzZSBvZiBSZWFjdCBsaWZlY3ljbGUgbWV0aG9kcy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgaW5pdGlhbExheW91dEdyb3VwQ29uZmlnID0gdXNlQ29udGV4dChTd2l0Y2hMYXlvdXRHcm91cENvbnRleHQpO1xuICAgICAgICAgICAgY29uc3QgaXNTdHJpY3QgPSB1c2VDb250ZXh0KExhenlDb250ZXh0KS5zdHJpY3Q7XG4gICAgICAgICAgICBpZiAoY29udGV4dC52aXN1YWxFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgTWVhc3VyZUxheW91dCA9IGNvbnRleHQudmlzdWFsRWxlbWVudC5sb2FkRmVhdHVyZXMoXG4gICAgICAgICAgICAgICAgLy8gTm90ZTogUGFzcyB0aGUgZnVsbCBuZXcgY29tYmluZWQgcHJvcHMgdG8gY29ycmVjdGx5IHJlLXJlbmRlciBkeW5hbWljIGZlYXR1cmUgY29tcG9uZW50cy5cbiAgICAgICAgICAgICAgICBjb25maWdBbmRQcm9wcywgaXNTdHJpY3QsIHByZWxvYWRlZEZlYXR1cmVzLCBpbml0aWFsTGF5b3V0R3JvdXBDb25maWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgbW91bnQgb3JkZXIgYW5kIGhpZXJhcmNoeSBpcyBzcGVjaWZpYyB0byBlbnN1cmUgb3VyIGVsZW1lbnQgcmVmXG4gICAgICAgICAqIGlzIGh5ZHJhdGVkIGJ5IHRoZSB0aW1lIGZlYXR1cmVzIGZpcmUgdGhlaXIgZWZmZWN0cy5cbiAgICAgICAgICovXG4gICAgICAgIHJldHVybiAoUmVhY3QuY3JlYXRlRWxlbWVudChNb3Rpb25Db250ZXh0LlByb3ZpZGVyLCB7IHZhbHVlOiBjb250ZXh0IH0sXG4gICAgICAgICAgICBNZWFzdXJlTGF5b3V0ICYmIGNvbnRleHQudmlzdWFsRWxlbWVudCA/IChSZWFjdC5jcmVhdGVFbGVtZW50KE1lYXN1cmVMYXlvdXQsIHsgdmlzdWFsRWxlbWVudDogY29udGV4dC52aXN1YWxFbGVtZW50LCAuLi5jb25maWdBbmRQcm9wcyB9KSkgOiBudWxsLFxuICAgICAgICAgICAgdXNlUmVuZGVyKENvbXBvbmVudCwgcHJvcHMsIHVzZU1vdGlvblJlZih2aXN1YWxTdGF0ZSwgY29udGV4dC52aXN1YWxFbGVtZW50LCBleHRlcm5hbFJlZiksIHZpc3VhbFN0YXRlLCBpc1N0YXRpYywgY29udGV4dC52aXN1YWxFbGVtZW50KSkpO1xuICAgIH1cbiAgICBjb25zdCBGb3J3YXJkUmVmQ29tcG9uZW50ID0gZm9yd2FyZFJlZihNb3Rpb25Db21wb25lbnQpO1xuICAgIEZvcndhcmRSZWZDb21wb25lbnRbbW90aW9uQ29tcG9uZW50U3ltYm9sXSA9IENvbXBvbmVudDtcbiAgICByZXR1cm4gRm9yd2FyZFJlZkNvbXBvbmVudDtcbn1cbmZ1bmN0aW9uIHVzZUxheW91dElkKHsgbGF5b3V0SWQgfSkge1xuICAgIGNvbnN0IGxheW91dEdyb3VwSWQgPSB1c2VDb250ZXh0KExheW91dEdyb3VwQ29udGV4dCkuaWQ7XG4gICAgcmV0dXJuIGxheW91dEdyb3VwSWQgJiYgbGF5b3V0SWQgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IGxheW91dEdyb3VwSWQgKyBcIi1cIiArIGxheW91dElkXG4gICAgICAgIDogbGF5b3V0SWQ7XG59XG5cbmV4cG9ydCB7IGNyZWF0ZU1vdGlvbkNvbXBvbmVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs":
|
||
/*!************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs ***!
|
||
\************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isForcedMotionValue: function() { return /* binding */ isForcedMotionValue; }\n/* harmony export */ });\n/* harmony import */ var _projection_styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../projection/styles/scale-correction.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs\");\n/* harmony import */ var _render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../render/html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n\n\n\nfunction isForcedMotionValue(key, { layout, layoutId }) {\n return (_render_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_0__.transformProps.has(key) ||\n key.startsWith(\"origin\") ||\n ((layout || layoutId !== undefined) &&\n (!!_projection_styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_1__.scaleCorrectors[key] || key === \"opacity\")));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL2lzLWZvcmNlZC1tb3Rpb24tdmFsdWUubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErRTtBQUNSOztBQUV2RSxvQ0FBb0Msa0JBQWtCO0FBQ3RELFlBQVksNEVBQWM7QUFDMUI7QUFDQTtBQUNBLGVBQWUsb0ZBQWU7QUFDOUI7O0FBRStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL2lzLWZvcmNlZC1tb3Rpb24tdmFsdWUubWpzP2E5YWIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2NhbGVDb3JyZWN0b3JzIH0gZnJvbSAnLi4vLi4vcHJvamVjdGlvbi9zdHlsZXMvc2NhbGUtY29ycmVjdGlvbi5tanMnO1xuaW1wb3J0IHsgdHJhbnNmb3JtUHJvcHMgfSBmcm9tICcuLi8uLi9yZW5kZXIvaHRtbC91dGlscy90cmFuc2Zvcm0ubWpzJztcblxuZnVuY3Rpb24gaXNGb3JjZWRNb3Rpb25WYWx1ZShrZXksIHsgbGF5b3V0LCBsYXlvdXRJZCB9KSB7XG4gICAgcmV0dXJuICh0cmFuc2Zvcm1Qcm9wcy5oYXMoa2V5KSB8fFxuICAgICAgICBrZXkuc3RhcnRzV2l0aChcIm9yaWdpblwiKSB8fFxuICAgICAgICAoKGxheW91dCB8fCBsYXlvdXRJZCAhPT0gdW5kZWZpbmVkKSAmJlxuICAgICAgICAgICAgKCEhc2NhbGVDb3JyZWN0b3JzW2tleV0gfHwga2V5ID09PSBcIm9wYWNpdHlcIikpKTtcbn1cblxuZXhwb3J0IHsgaXNGb3JjZWRNb3Rpb25WYWx1ZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/symbol.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/symbol.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ motionComponentSymbol: function() { return /* binding */ motionComponentSymbol; }\n/* harmony export */ });\nconst motionComponentSymbol = Symbol.for(\"motionComponentSymbol\");\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL3N5bWJvbC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUVpQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi91dGlscy9zeW1ib2wubWpzPzFhYzciXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgbW90aW9uQ29tcG9uZW50U3ltYm9sID0gU3ltYm9sLmZvcihcIm1vdGlvbkNvbXBvbmVudFN5bWJvbFwiKTtcblxuZXhwb3J0IHsgbW90aW9uQ29tcG9uZW50U3ltYm9sIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/symbol.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useMotionRef: function() { return /* binding */ useMotionRef; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/is-ref-object.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs\");\n\n\n\n/**\n * Creates a ref function that, when called, hydrates the provided\n * external ref and VisualElement.\n */\nfunction useMotionRef(visualState, visualElement, externalRef) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)((instance) => {\n instance && visualState.mount && visualState.mount(instance);\n if (visualElement) {\n instance\n ? visualElement.mount(instance)\n : visualElement.unmount();\n }\n if (externalRef) {\n if (typeof externalRef === \"function\") {\n externalRef(instance);\n }\n else if ((0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_1__.isRefObject)(externalRef)) {\n externalRef.current = instance;\n }\n }\n }, \n /**\n * Only pass a new ref callback to React if we've received a visual element\n * factory. Otherwise we'll be mounting/remounting every time externalRef\n * or other dependencies change.\n */\n [visualElement]);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL3VzZS1tb3Rpb24tcmVmLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBb0M7QUFDd0I7O0FBRTVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLGtEQUFXO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHFFQUFXO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFd0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vdXRpbHMvdXNlLW1vdGlvbi1yZWYubWpzPzgwOGMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBpc1JlZk9iamVjdCB9IGZyb20gJy4uLy4uL3V0aWxzL2lzLXJlZi1vYmplY3QubWpzJztcblxuLyoqXG4gKiBDcmVhdGVzIGEgcmVmIGZ1bmN0aW9uIHRoYXQsIHdoZW4gY2FsbGVkLCBoeWRyYXRlcyB0aGUgcHJvdmlkZWRcbiAqIGV4dGVybmFsIHJlZiBhbmQgVmlzdWFsRWxlbWVudC5cbiAqL1xuZnVuY3Rpb24gdXNlTW90aW9uUmVmKHZpc3VhbFN0YXRlLCB2aXN1YWxFbGVtZW50LCBleHRlcm5hbFJlZikge1xuICAgIHJldHVybiB1c2VDYWxsYmFjaygoaW5zdGFuY2UpID0+IHtcbiAgICAgICAgaW5zdGFuY2UgJiYgdmlzdWFsU3RhdGUubW91bnQgJiYgdmlzdWFsU3RhdGUubW91bnQoaW5zdGFuY2UpO1xuICAgICAgICBpZiAodmlzdWFsRWxlbWVudCkge1xuICAgICAgICAgICAgaW5zdGFuY2VcbiAgICAgICAgICAgICAgICA/IHZpc3VhbEVsZW1lbnQubW91bnQoaW5zdGFuY2UpXG4gICAgICAgICAgICAgICAgOiB2aXN1YWxFbGVtZW50LnVubW91bnQoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZXh0ZXJuYWxSZWYpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgZXh0ZXJuYWxSZWYgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICAgICAgICAgIGV4dGVybmFsUmVmKGluc3RhbmNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2UgaWYgKGlzUmVmT2JqZWN0KGV4dGVybmFsUmVmKSkge1xuICAgICAgICAgICAgICAgIGV4dGVybmFsUmVmLmN1cnJlbnQgPSBpbnN0YW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0sIFxuICAgIC8qKlxuICAgICAqIE9ubHkgcGFzcyBhIG5ldyByZWYgY2FsbGJhY2sgdG8gUmVhY3QgaWYgd2UndmUgcmVjZWl2ZWQgYSB2aXN1YWwgZWxlbWVudFxuICAgICAqIGZhY3RvcnkuIE90aGVyd2lzZSB3ZSdsbCBiZSBtb3VudGluZy9yZW1vdW50aW5nIGV2ZXJ5IHRpbWUgZXh0ZXJuYWxSZWZcbiAgICAgKiBvciBvdGhlciBkZXBlbmRlbmNpZXMgY2hhbmdlLlxuICAgICAqL1xuICAgIFt2aXN1YWxFbGVtZW50XSk7XG59XG5cbmV4cG9ydCB7IHVzZU1vdGlvblJlZiB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useVisualElement: function() { return /* binding */ useVisualElement; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../context/PresenceContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs\");\n/* harmony import */ var _context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../context/MotionContext/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs\");\n/* harmony import */ var _utils_use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/use-isomorphic-effect.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs\");\n/* harmony import */ var _context_LazyContext_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../context/LazyContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/LazyContext.mjs\");\n/* harmony import */ var _context_MotionConfigContext_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../context/MotionConfigContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs\");\n/* harmony import */ var _animation_optimized_appear_data_id_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../animation/optimized-appear/data-id.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs\");\n\n\n\n\n\n\n\n\nfunction useVisualElement(Component, visualState, props, createVisualElement) {\n const { visualElement: parent } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_1__.MotionContext);\n const lazyContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LazyContext_mjs__WEBPACK_IMPORTED_MODULE_2__.LazyContext);\n const presenceContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_3__.PresenceContext);\n const reducedMotionConfig = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_MotionConfigContext_mjs__WEBPACK_IMPORTED_MODULE_4__.MotionConfigContext).reducedMotion;\n const visualElementRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();\n /**\n * If we haven't preloaded a renderer, check to see if we have one lazy-loaded\n */\n createVisualElement = createVisualElement || lazyContext.renderer;\n if (!visualElementRef.current && createVisualElement) {\n visualElementRef.current = createVisualElement(Component, {\n visualState,\n parent,\n props,\n presenceContext,\n blockInitialAnimation: presenceContext\n ? presenceContext.initial === false\n : false,\n reducedMotionConfig,\n });\n }\n const visualElement = visualElementRef.current;\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useInsertionEffect)(() => {\n visualElement && visualElement.update(props, presenceContext);\n });\n /**\n * Cache this value as we want to know whether HandoffAppearAnimations\n * was present on initial render - it will be deleted after this.\n */\n const wantsHandoff = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(Boolean(props[_animation_optimized_appear_data_id_mjs__WEBPACK_IMPORTED_MODULE_5__.optimizedAppearDataAttribute] && !window.HandoffComplete));\n (0,_utils_use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_6__.useIsomorphicLayoutEffect)(() => {\n if (!visualElement)\n return;\n visualElement.render();\n /**\n * Ideally this function would always run in a useEffect.\n *\n * However, if we have optimised appear animations to handoff from,\n * it needs to happen synchronously to ensure there's no flash of\n * incorrect styles in the event of a hydration error.\n *\n * So if we detect a situtation where optimised appear animations\n * are running, we use useLayoutEffect to trigger animations.\n */\n if (wantsHandoff.current && visualElement.animationState) {\n visualElement.animationState.animateChanges();\n }\n });\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n if (!visualElement)\n return;\n visualElement.updateFeatures();\n if (!wantsHandoff.current && visualElement.animationState) {\n visualElement.animationState.animateChanges();\n }\n if (wantsHandoff.current) {\n wantsHandoff.current = false;\n // This ensures all future calls to animateChanges() will run in useEffect\n window.HandoffComplete = true;\n }\n });\n return visualElement;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL3VzZS12aXN1YWwtZWxlbWVudC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBMEU7QUFDTjtBQUNFO0FBQ1k7QUFDdEI7QUFDZ0I7QUFDZ0I7O0FBRTVGO0FBQ0EsWUFBWSx3QkFBd0IsRUFBRSxpREFBVSxDQUFDLDJFQUFhO0FBQzlELHdCQUF3QixpREFBVSxDQUFDLGlFQUFXO0FBQzlDLDRCQUE0QixpREFBVSxDQUFDLHlFQUFlO0FBQ3RELGdDQUFnQyxpREFBVSxDQUFDLGlGQUFtQjtBQUM5RCw2QkFBNkIsNkNBQU07QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0EsSUFBSSx5REFBa0I7QUFDdEI7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsNkNBQU0sZUFBZSxpR0FBNEI7QUFDMUUsSUFBSSwyRkFBeUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0wsSUFBSSxnREFBUztBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9tb3Rpb24vdXRpbHMvdXNlLXZpc3VhbC1lbGVtZW50Lm1qcz8zNDU4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNvbnRleHQsIHVzZVJlZiwgdXNlSW5zZXJ0aW9uRWZmZWN0LCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBQcmVzZW5jZUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L1ByZXNlbmNlQ29udGV4dC5tanMnO1xuaW1wb3J0IHsgTW90aW9uQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQvTW90aW9uQ29udGV4dC9pbmRleC5tanMnO1xuaW1wb3J0IHsgdXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCB9IGZyb20gJy4uLy4uL3V0aWxzL3VzZS1pc29tb3JwaGljLWVmZmVjdC5tanMnO1xuaW1wb3J0IHsgTGF6eUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L0xhenlDb250ZXh0Lm1qcyc7XG5pbXBvcnQgeyBNb3Rpb25Db25maWdDb250ZXh0IH0gZnJvbSAnLi4vLi4vY29udGV4dC9Nb3Rpb25Db25maWdDb250ZXh0Lm1qcyc7XG5pbXBvcnQgeyBvcHRpbWl6ZWRBcHBlYXJEYXRhQXR0cmlidXRlIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL29wdGltaXplZC1hcHBlYXIvZGF0YS1pZC5tanMnO1xuXG5mdW5jdGlvbiB1c2VWaXN1YWxFbGVtZW50KENvbXBvbmVudCwgdmlzdWFsU3RhdGUsIHByb3BzLCBjcmVhdGVWaXN1YWxFbGVtZW50KSB7XG4gICAgY29uc3QgeyB2aXN1YWxFbGVtZW50OiBwYXJlbnQgfSA9IHVzZUNvbnRleHQoTW90aW9uQ29udGV4dCk7XG4gICAgY29uc3QgbGF6eUNvbnRleHQgPSB1c2VDb250ZXh0KExhenlDb250ZXh0KTtcbiAgICBjb25zdCBwcmVzZW5jZUNvbnRleHQgPSB1c2VDb250ZXh0KFByZXNlbmNlQ29udGV4dCk7XG4gICAgY29uc3QgcmVkdWNlZE1vdGlvbkNvbmZpZyA9IHVzZUNvbnRleHQoTW90aW9uQ29uZmlnQ29udGV4dCkucmVkdWNlZE1vdGlvbjtcbiAgICBjb25zdCB2aXN1YWxFbGVtZW50UmVmID0gdXNlUmVmKCk7XG4gICAgLyoqXG4gICAgICogSWYgd2UgaGF2ZW4ndCBwcmVsb2FkZWQgYSByZW5kZXJlciwgY2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgb25lIGxhenktbG9hZGVkXG4gICAgICovXG4gICAgY3JlYXRlVmlzdWFsRWxlbWVudCA9IGNyZWF0ZVZpc3VhbEVsZW1lbnQgfHwgbGF6eUNvbnRleHQucmVuZGVyZXI7XG4gICAgaWYgKCF2aXN1YWxFbGVtZW50UmVmLmN1cnJlbnQgJiYgY3JlYXRlVmlzdWFsRWxlbWVudCkge1xuICAgICAgICB2aXN1YWxFbGVtZW50UmVmLmN1cnJlbnQgPSBjcmVhdGVWaXN1YWxFbGVtZW50KENvbXBvbmVudCwge1xuICAgICAgICAgICAgdmlzdWFsU3RhdGUsXG4gICAgICAgICAgICBwYXJlbnQsXG4gICAgICAgICAgICBwcm9wcyxcbiAgICAgICAgICAgIHByZXNlbmNlQ29udGV4dCxcbiAgICAgICAgICAgIGJsb2NrSW5pdGlhbEFuaW1hdGlvbjogcHJlc2VuY2VDb250ZXh0XG4gICAgICAgICAgICAgICAgPyBwcmVzZW5jZUNvbnRleHQuaW5pdGlhbCA9PT0gZmFsc2VcbiAgICAgICAgICAgICAgICA6IGZhbHNlLFxuICAgICAgICAgICAgcmVkdWNlZE1vdGlvbkNvbmZpZyxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IHZpc3VhbEVsZW1lbnQgPSB2aXN1YWxFbGVtZW50UmVmLmN1cnJlbnQ7XG4gICAgdXNlSW5zZXJ0aW9uRWZmZWN0KCgpID0+IHtcbiAgICAgICAgdmlzdWFsRWxlbWVudCAmJiB2aXN1YWxFbGVtZW50LnVwZGF0ZShwcm9wcywgcHJlc2VuY2VDb250ZXh0KTtcbiAgICB9KTtcbiAgICAvKipcbiAgICAgKiBDYWNoZSB0aGlzIHZhbHVlIGFzIHdlIHdhbnQgdG8ga25vdyB3aGV0aGVyIEhhbmRvZmZBcHBlYXJBbmltYXRpb25zXG4gICAgICogd2FzIHByZXNlbnQgb24gaW5pdGlhbCByZW5kZXIgLSBpdCB3aWxsIGJlIGRlbGV0ZWQgYWZ0ZXIgdGhpcy5cbiAgICAgKi9cbiAgICBjb25zdCB3YW50c0hhbmRvZmYgPSB1c2VSZWYoQm9vbGVhbihwcm9wc1tvcHRpbWl6ZWRBcHBlYXJEYXRhQXR0cmlidXRlXSAmJiAhd2luZG93LkhhbmRvZmZDb21wbGV0ZSkpO1xuICAgIHVzZUlzb21vcnBoaWNMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIXZpc3VhbEVsZW1lbnQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIHZpc3VhbEVsZW1lbnQucmVuZGVyKCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZGVhbGx5IHRoaXMgZnVuY3Rpb24gd291bGQgYWx3YXlzIHJ1biBpbiBhIHVzZUVmZmVjdC5cbiAgICAgICAgICpcbiAgICAgICAgICogSG93ZXZlciwgaWYgd2UgaGF2ZSBvcHRpbWlzZWQgYXBwZWFyIGFuaW1hdGlvbnMgdG8gaGFuZG9mZiBmcm9tLFxuICAgICAgICAgKiBpdCBuZWVkcyB0byBoYXBwZW4gc3luY2hyb25vdXNseSB0byBlbnN1cmUgdGhlcmUncyBubyBmbGFzaCBvZlxuICAgICAgICAgKiBpbmNvcnJlY3Qgc3R5bGVzIGluIHRoZSBldmVudCBvZiBhIGh5ZHJhdGlvbiBlcnJvci5cbiAgICAgICAgICpcbiAgICAgICAgICogU28gaWYgd2UgZGV0ZWN0IGEgc2l0dXRhdGlvbiB3aGVyZSBvcHRpbWlzZWQgYXBwZWFyIGFuaW1hdGlvbnNcbiAgICAgICAgICogYXJlIHJ1bm5pbmcsIHdlIHVzZSB1c2VMYXlvdXRFZmZlY3QgdG8gdHJpZ2dlciBhbmltYXRpb25zLlxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKHdhbnRzSGFuZG9mZi5jdXJyZW50ICYmIHZpc3VhbEVsZW1lbnQuYW5pbWF0aW9uU3RhdGUpIHtcbiAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQuYW5pbWF0aW9uU3RhdGUuYW5pbWF0ZUNoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghdmlzdWFsRWxlbWVudClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgdmlzdWFsRWxlbWVudC51cGRhdGVGZWF0dXJlcygpO1xuICAgICAgICBpZiAoIXdhbnRzSGFuZG9mZi5jdXJyZW50ICYmIHZpc3VhbEVsZW1lbnQuYW5pbWF0aW9uU3RhdGUpIHtcbiAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQuYW5pbWF0aW9uU3RhdGUuYW5pbWF0ZUNoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAod2FudHNIYW5kb2ZmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHdhbnRzSGFuZG9mZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgICAgICAvLyBUaGlzIGVuc3VyZXMgYWxsIGZ1dHVyZSBjYWxscyB0byBhbmltYXRlQ2hhbmdlcygpIHdpbGwgcnVuIGluIHVzZUVmZmVjdFxuICAgICAgICAgICAgd2luZG93LkhhbmRvZmZDb21wbGV0ZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdmlzdWFsRWxlbWVudDtcbn1cblxuZXhwb3J0IHsgdXNlVmlzdWFsRWxlbWVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ makeUseVisualState: function() { return /* binding */ makeUseVisualState; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../animation/utils/is-animation-controls.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs\");\n/* harmony import */ var _context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../context/PresenceContext.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/PresenceContext.mjs\");\n/* harmony import */ var _render_utils_resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../render/utils/resolve-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs\");\n/* harmony import */ var _utils_use_constant_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/use-constant.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-constant.mjs\");\n/* harmony import */ var _value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../value/utils/resolve-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs\");\n/* harmony import */ var _context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../context/MotionContext/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/context/MotionContext/index.mjs\");\n/* harmony import */ var _render_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../render/utils/is-controlling-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs\");\n\n\n\n\n\n\n\n\n\nfunction makeState({ scrapeMotionValuesFromProps, createRenderState, onMount, }, props, context, presenceContext) {\n const state = {\n latestValues: makeLatestValues(props, context, presenceContext, scrapeMotionValuesFromProps),\n renderState: createRenderState(),\n };\n if (onMount) {\n state.mount = (instance) => onMount(props, instance, state);\n }\n return state;\n}\nconst makeUseVisualState = (config) => (props, isStatic) => {\n const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_MotionContext_index_mjs__WEBPACK_IMPORTED_MODULE_1__.MotionContext);\n const presenceContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_PresenceContext_mjs__WEBPACK_IMPORTED_MODULE_2__.PresenceContext);\n const make = () => makeState(config, props, context, presenceContext);\n return isStatic ? make() : (0,_utils_use_constant_mjs__WEBPACK_IMPORTED_MODULE_3__.useConstant)(make);\n};\nfunction makeLatestValues(props, context, presenceContext, scrapeMotionValues) {\n const values = {};\n const motionValues = scrapeMotionValues(props, {});\n for (const key in motionValues) {\n values[key] = (0,_value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_4__.resolveMotionValue)(motionValues[key]);\n }\n let { initial, animate } = props;\n const isControllingVariants$1 = (0,_render_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_5__.isControllingVariants)(props);\n const isVariantNode$1 = (0,_render_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_5__.isVariantNode)(props);\n if (context &&\n isVariantNode$1 &&\n !isControllingVariants$1 &&\n props.inherit !== false) {\n if (initial === undefined)\n initial = context.initial;\n if (animate === undefined)\n animate = context.animate;\n }\n let isInitialAnimationBlocked = presenceContext\n ? presenceContext.initial === false\n : false;\n isInitialAnimationBlocked = isInitialAnimationBlocked || initial === false;\n const variantToSet = isInitialAnimationBlocked ? animate : initial;\n if (variantToSet &&\n typeof variantToSet !== \"boolean\" &&\n !(0,_animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_6__.isAnimationControls)(variantToSet)) {\n const list = Array.isArray(variantToSet) ? variantToSet : [variantToSet];\n list.forEach((definition) => {\n const resolved = (0,_render_utils_resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_7__.resolveVariantFromProps)(props, definition);\n if (!resolved)\n return;\n const { transitionEnd, transition, ...target } = resolved;\n for (const key in target) {\n let valueTarget = target[key];\n if (Array.isArray(valueTarget)) {\n /**\n * Take final keyframe if the initial animation is blocked because\n * we want to initialise at the end of that blocked animation.\n */\n const index = isInitialAnimationBlocked\n ? valueTarget.length - 1\n : 0;\n valueTarget = valueTarget[index];\n }\n if (valueTarget !== null) {\n values[key] = valueTarget;\n }\n }\n for (const key in transitionEnd)\n values[key] = transitionEnd[key];\n });\n }\n return values;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL3VzZS12aXN1YWwtc3RhdGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFtQztBQUNtRDtBQUNsQjtBQUNjO0FBQ3ZCO0FBQ3FCO0FBQ1Y7QUFDZ0M7O0FBRXRHLHFCQUFxQiwwREFBMEQ7QUFDL0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaURBQVUsQ0FBQywyRUFBYTtBQUM1Qyw0QkFBNEIsaURBQVUsQ0FBQyx5RUFBZTtBQUN0RDtBQUNBLCtCQUErQixvRUFBVztBQUMxQztBQUNBO0FBQ0E7QUFDQSxxREFBcUQ7QUFDckQ7QUFDQSxzQkFBc0IseUZBQWtCO0FBQ3hDO0FBQ0EsVUFBVSxtQkFBbUI7QUFDN0Isb0NBQW9DLGdHQUFxQjtBQUN6RCw0QkFBNEIsd0ZBQWE7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTLCtGQUFtQjtBQUM1QjtBQUNBO0FBQ0EsNkJBQTZCLDJGQUF1QjtBQUNwRDtBQUNBO0FBQ0Esb0JBQW9CLHVDQUF1QztBQUMzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBOztBQUU4QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi91dGlscy91c2UtdmlzdWFsLXN0YXRlLm1qcz9iNWYxIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBpc0FuaW1hdGlvbkNvbnRyb2xzIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGlvbi1jb250cm9scy5tanMnO1xuaW1wb3J0IHsgUHJlc2VuY2VDb250ZXh0IH0gZnJvbSAnLi4vLi4vY29udGV4dC9QcmVzZW5jZUNvbnRleHQubWpzJztcbmltcG9ydCB7IHJlc29sdmVWYXJpYW50RnJvbVByb3BzIH0gZnJvbSAnLi4vLi4vcmVuZGVyL3V0aWxzL3Jlc29sdmUtdmFyaWFudHMubWpzJztcbmltcG9ydCB7IHVzZUNvbnN0YW50IH0gZnJvbSAnLi4vLi4vdXRpbHMvdXNlLWNvbnN0YW50Lm1qcyc7XG5pbXBvcnQgeyByZXNvbHZlTW90aW9uVmFsdWUgfSBmcm9tICcuLi8uLi92YWx1ZS91dGlscy9yZXNvbHZlLW1vdGlvbi12YWx1ZS5tanMnO1xuaW1wb3J0IHsgTW90aW9uQ29udGV4dCB9IGZyb20gJy4uLy4uL2NvbnRleHQvTW90aW9uQ29udGV4dC9pbmRleC5tanMnO1xuaW1wb3J0IHsgaXNDb250cm9sbGluZ1ZhcmlhbnRzLCBpc1ZhcmlhbnROb2RlIH0gZnJvbSAnLi4vLi4vcmVuZGVyL3V0aWxzL2lzLWNvbnRyb2xsaW5nLXZhcmlhbnRzLm1qcyc7XG5cbmZ1bmN0aW9uIG1ha2VTdGF0ZSh7IHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcywgY3JlYXRlUmVuZGVyU3RhdGUsIG9uTW91bnQsIH0sIHByb3BzLCBjb250ZXh0LCBwcmVzZW5jZUNvbnRleHQpIHtcbiAgICBjb25zdCBzdGF0ZSA9IHtcbiAgICAgICAgbGF0ZXN0VmFsdWVzOiBtYWtlTGF0ZXN0VmFsdWVzKHByb3BzLCBjb250ZXh0LCBwcmVzZW5jZUNvbnRleHQsIHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyksXG4gICAgICAgIHJlbmRlclN0YXRlOiBjcmVhdGVSZW5kZXJTdGF0ZSgpLFxuICAgIH07XG4gICAgaWYgKG9uTW91bnQpIHtcbiAgICAgICAgc3RhdGUubW91bnQgPSAoaW5zdGFuY2UpID0+IG9uTW91bnQocHJvcHMsIGluc3RhbmNlLCBzdGF0ZSk7XG4gICAgfVxuICAgIHJldHVybiBzdGF0ZTtcbn1cbmNvbnN0IG1ha2VVc2VWaXN1YWxTdGF0ZSA9IChjb25maWcpID0+IChwcm9wcywgaXNTdGF0aWMpID0+IHtcbiAgICBjb25zdCBjb250ZXh0ID0gdXNlQ29udGV4dChNb3Rpb25Db250ZXh0KTtcbiAgICBjb25zdCBwcmVzZW5jZUNvbnRleHQgPSB1c2VDb250ZXh0KFByZXNlbmNlQ29udGV4dCk7XG4gICAgY29uc3QgbWFrZSA9ICgpID0+IG1ha2VTdGF0ZShjb25maWcsIHByb3BzLCBjb250ZXh0LCBwcmVzZW5jZUNvbnRleHQpO1xuICAgIHJldHVybiBpc1N0YXRpYyA/IG1ha2UoKSA6IHVzZUNvbnN0YW50KG1ha2UpO1xufTtcbmZ1bmN0aW9uIG1ha2VMYXRlc3RWYWx1ZXMocHJvcHMsIGNvbnRleHQsIHByZXNlbmNlQ29udGV4dCwgc2NyYXBlTW90aW9uVmFsdWVzKSB7XG4gICAgY29uc3QgdmFsdWVzID0ge307XG4gICAgY29uc3QgbW90aW9uVmFsdWVzID0gc2NyYXBlTW90aW9uVmFsdWVzKHByb3BzLCB7fSk7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gbW90aW9uVmFsdWVzKSB7XG4gICAgICAgIHZhbHVlc1trZXldID0gcmVzb2x2ZU1vdGlvblZhbHVlKG1vdGlvblZhbHVlc1trZXldKTtcbiAgICB9XG4gICAgbGV0IHsgaW5pdGlhbCwgYW5pbWF0ZSB9ID0gcHJvcHM7XG4gICAgY29uc3QgaXNDb250cm9sbGluZ1ZhcmlhbnRzJDEgPSBpc0NvbnRyb2xsaW5nVmFyaWFudHMocHJvcHMpO1xuICAgIGNvbnN0IGlzVmFyaWFudE5vZGUkMSA9IGlzVmFyaWFudE5vZGUocHJvcHMpO1xuICAgIGlmIChjb250ZXh0ICYmXG4gICAgICAgIGlzVmFyaWFudE5vZGUkMSAmJlxuICAgICAgICAhaXNDb250cm9sbGluZ1ZhcmlhbnRzJDEgJiZcbiAgICAgICAgcHJvcHMuaW5oZXJpdCAhPT0gZmFsc2UpIHtcbiAgICAgICAgaWYgKGluaXRpYWwgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIGluaXRpYWwgPSBjb250ZXh0LmluaXRpYWw7XG4gICAgICAgIGlmIChhbmltYXRlID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICBhbmltYXRlID0gY29udGV4dC5hbmltYXRlO1xuICAgIH1cbiAgICBsZXQgaXNJbml0aWFsQW5pbWF0aW9uQmxvY2tlZCA9IHByZXNlbmNlQ29udGV4dFxuICAgICAgICA/IHByZXNlbmNlQ29udGV4dC5pbml0aWFsID09PSBmYWxzZVxuICAgICAgICA6IGZhbHNlO1xuICAgIGlzSW5pdGlhbEFuaW1hdGlvbkJsb2NrZWQgPSBpc0luaXRpYWxBbmltYXRpb25CbG9ja2VkIHx8IGluaXRpYWwgPT09IGZhbHNlO1xuICAgIGNvbnN0IHZhcmlhbnRUb1NldCA9IGlzSW5pdGlhbEFuaW1hdGlvbkJsb2NrZWQgPyBhbmltYXRlIDogaW5pdGlhbDtcbiAgICBpZiAodmFyaWFudFRvU2V0ICYmXG4gICAgICAgIHR5cGVvZiB2YXJpYW50VG9TZXQgIT09IFwiYm9vbGVhblwiICYmXG4gICAgICAgICFpc0FuaW1hdGlvbkNvbnRyb2xzKHZhcmlhbnRUb1NldCkpIHtcbiAgICAgICAgY29uc3QgbGlzdCA9IEFycmF5LmlzQXJyYXkodmFyaWFudFRvU2V0KSA/IHZhcmlhbnRUb1NldCA6IFt2YXJpYW50VG9TZXRdO1xuICAgICAgICBsaXN0LmZvckVhY2goKGRlZmluaXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkID0gcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMocHJvcHMsIGRlZmluaXRpb24pO1xuICAgICAgICAgICAgaWYgKCFyZXNvbHZlZClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBjb25zdCB7IHRyYW5zaXRpb25FbmQsIHRyYW5zaXRpb24sIC4uLnRhcmdldCB9ID0gcmVzb2x2ZWQ7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiB0YXJnZXQpIHtcbiAgICAgICAgICAgICAgICBsZXQgdmFsdWVUYXJnZXQgPSB0YXJnZXRba2V5XTtcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZVRhcmdldCkpIHtcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFRha2UgZmluYWwga2V5ZnJhbWUgaWYgdGhlIGluaXRpYWwgYW5pbWF0aW9uIGlzIGJsb2NrZWQgYmVjYXVzZVxuICAgICAgICAgICAgICAgICAgICAgKiB3ZSB3YW50IHRvIGluaXRpYWxpc2UgYXQgdGhlIGVuZCBvZiB0aGF0IGJsb2NrZWQgYW5pbWF0aW9uLlxuICAgICAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSBpc0luaXRpYWxBbmltYXRpb25CbG9ja2VkXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHZhbHVlVGFyZ2V0Lmxlbmd0aCAtIDFcbiAgICAgICAgICAgICAgICAgICAgICAgIDogMDtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVUYXJnZXQgPSB2YWx1ZVRhcmdldFtpbmRleF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh2YWx1ZVRhcmdldCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZXNba2V5XSA9IHZhbHVlVGFyZ2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIHRyYW5zaXRpb25FbmQpXG4gICAgICAgICAgICAgICAgdmFsdWVzW2tleV0gPSB0cmFuc2l0aW9uRW5kW2tleV07XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWVzO1xufVxuXG5leHBvcnQgeyBtYWtlVXNlVmlzdWFsU3RhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isValidMotionProp: function() { return /* binding */ isValidMotionProp; }\n/* harmony export */ });\n/**\n * A list of all valid MotionProps.\n *\n * @privateRemarks\n * This doesn't throw if a `MotionProp` name is missing - it should.\n */\nconst validMotionProps = new Set([\n \"animate\",\n \"exit\",\n \"variants\",\n \"initial\",\n \"style\",\n \"values\",\n \"variants\",\n \"transition\",\n \"transformTemplate\",\n \"transformValues\",\n \"custom\",\n \"inherit\",\n \"onBeforeLayoutMeasure\",\n \"onAnimationStart\",\n \"onAnimationComplete\",\n \"onUpdate\",\n \"onDragStart\",\n \"onDrag\",\n \"onDragEnd\",\n \"onMeasureDragConstraints\",\n \"onDirectionLock\",\n \"onDragTransitionEnd\",\n \"_dragX\",\n \"_dragY\",\n \"onHoverStart\",\n \"onHoverEnd\",\n \"onViewportEnter\",\n \"onViewportLeave\",\n \"globalTapTarget\",\n \"ignoreStrict\",\n \"viewport\",\n]);\n/**\n * Check whether a prop name is a valid `MotionProp` key.\n *\n * @param key - Name of the property to check\n * @returns `true` is key is a valid `MotionProp`.\n *\n * @public\n */\nfunction isValidMotionProp(key) {\n return (key.startsWith(\"while\") ||\n (key.startsWith(\"drag\") && key !== \"draggable\") ||\n key.startsWith(\"layout\") ||\n key.startsWith(\"onTap\") ||\n key.startsWith(\"onPan\") ||\n key.startsWith(\"onLayout\") ||\n validMotionProps.has(key));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvbW90aW9uL3V0aWxzL3ZhbGlkLXByb3AubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL21vdGlvbi91dGlscy92YWxpZC1wcm9wLm1qcz80Y2UyIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBsaXN0IG9mIGFsbCB2YWxpZCBNb3Rpb25Qcm9wcy5cbiAqXG4gKiBAcHJpdmF0ZVJlbWFya3NcbiAqIFRoaXMgZG9lc24ndCB0aHJvdyBpZiBhIGBNb3Rpb25Qcm9wYCBuYW1lIGlzIG1pc3NpbmcgLSBpdCBzaG91bGQuXG4gKi9cbmNvbnN0IHZhbGlkTW90aW9uUHJvcHMgPSBuZXcgU2V0KFtcbiAgICBcImFuaW1hdGVcIixcbiAgICBcImV4aXRcIixcbiAgICBcInZhcmlhbnRzXCIsXG4gICAgXCJpbml0aWFsXCIsXG4gICAgXCJzdHlsZVwiLFxuICAgIFwidmFsdWVzXCIsXG4gICAgXCJ2YXJpYW50c1wiLFxuICAgIFwidHJhbnNpdGlvblwiLFxuICAgIFwidHJhbnNmb3JtVGVtcGxhdGVcIixcbiAgICBcInRyYW5zZm9ybVZhbHVlc1wiLFxuICAgIFwiY3VzdG9tXCIsXG4gICAgXCJpbmhlcml0XCIsXG4gICAgXCJvbkJlZm9yZUxheW91dE1lYXN1cmVcIixcbiAgICBcIm9uQW5pbWF0aW9uU3RhcnRcIixcbiAgICBcIm9uQW5pbWF0aW9uQ29tcGxldGVcIixcbiAgICBcIm9uVXBkYXRlXCIsXG4gICAgXCJvbkRyYWdTdGFydFwiLFxuICAgIFwib25EcmFnXCIsXG4gICAgXCJvbkRyYWdFbmRcIixcbiAgICBcIm9uTWVhc3VyZURyYWdDb25zdHJhaW50c1wiLFxuICAgIFwib25EaXJlY3Rpb25Mb2NrXCIsXG4gICAgXCJvbkRyYWdUcmFuc2l0aW9uRW5kXCIsXG4gICAgXCJfZHJhZ1hcIixcbiAgICBcIl9kcmFnWVwiLFxuICAgIFwib25Ib3ZlclN0YXJ0XCIsXG4gICAgXCJvbkhvdmVyRW5kXCIsXG4gICAgXCJvblZpZXdwb3J0RW50ZXJcIixcbiAgICBcIm9uVmlld3BvcnRMZWF2ZVwiLFxuICAgIFwiZ2xvYmFsVGFwVGFyZ2V0XCIsXG4gICAgXCJpZ25vcmVTdHJpY3RcIixcbiAgICBcInZpZXdwb3J0XCIsXG5dKTtcbi8qKlxuICogQ2hlY2sgd2hldGhlciBhIHByb3AgbmFtZSBpcyBhIHZhbGlkIGBNb3Rpb25Qcm9wYCBrZXkuXG4gKlxuICogQHBhcmFtIGtleSAtIE5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGNoZWNrXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaXMga2V5IGlzIGEgdmFsaWQgYE1vdGlvblByb3BgLlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gaXNWYWxpZE1vdGlvblByb3Aoa2V5KSB7XG4gICAgcmV0dXJuIChrZXkuc3RhcnRzV2l0aChcIndoaWxlXCIpIHx8XG4gICAgICAgIChrZXkuc3RhcnRzV2l0aChcImRyYWdcIikgJiYga2V5ICE9PSBcImRyYWdnYWJsZVwiKSB8fFxuICAgICAgICBrZXkuc3RhcnRzV2l0aChcImxheW91dFwiKSB8fFxuICAgICAgICBrZXkuc3RhcnRzV2l0aChcIm9uVGFwXCIpIHx8XG4gICAgICAgIGtleS5zdGFydHNXaXRoKFwib25QYW5cIikgfHxcbiAgICAgICAga2V5LnN0YXJ0c1dpdGgoXCJvbkxheW91dFwiKSB8fFxuICAgICAgICB2YWxpZE1vdGlvblByb3BzLmhhcyhrZXkpKTtcbn1cblxuZXhwb3J0IHsgaXNWYWxpZE1vdGlvblByb3AgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mixValues: function() { return /* binding */ mixValues; }\n/* harmony export */ });\n/* harmony import */ var _easing_circ_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../easing/circ.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/easing/circ.mjs\");\n/* harmony import */ var _utils_progress_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/progress.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs\");\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n\n\n\n\n\n\nconst borders = [\"TopLeft\", \"TopRight\", \"BottomLeft\", \"BottomRight\"];\nconst numBorders = borders.length;\nconst asNumber = (value) => typeof value === \"string\" ? parseFloat(value) : value;\nconst isPx = (value) => typeof value === \"number\" || _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.test(value);\nfunction mixValues(target, follow, lead, progress, shouldCrossfadeOpacity, isOnlyMember) {\n if (shouldCrossfadeOpacity) {\n target.opacity = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(0, \n // TODO Reinstate this if only child\n lead.opacity !== undefined ? lead.opacity : 1, easeCrossfadeIn(progress));\n target.opacityExit = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(follow.opacity !== undefined ? follow.opacity : 1, 0, easeCrossfadeOut(progress));\n }\n else if (isOnlyMember) {\n target.opacity = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(follow.opacity !== undefined ? follow.opacity : 1, lead.opacity !== undefined ? lead.opacity : 1, progress);\n }\n /**\n * Mix border radius\n */\n for (let i = 0; i < numBorders; i++) {\n const borderLabel = `border${borders[i]}Radius`;\n let followRadius = getRadius(follow, borderLabel);\n let leadRadius = getRadius(lead, borderLabel);\n if (followRadius === undefined && leadRadius === undefined)\n continue;\n followRadius || (followRadius = 0);\n leadRadius || (leadRadius = 0);\n const canMix = followRadius === 0 ||\n leadRadius === 0 ||\n isPx(followRadius) === isPx(leadRadius);\n if (canMix) {\n target[borderLabel] = Math.max((0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(asNumber(followRadius), asNumber(leadRadius), progress), 0);\n if (_value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.percent.test(leadRadius) || _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.percent.test(followRadius)) {\n target[borderLabel] += \"%\";\n }\n }\n else {\n target[borderLabel] = leadRadius;\n }\n }\n /**\n * Mix rotation\n */\n if (follow.rotate || lead.rotate) {\n target.rotate = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(follow.rotate || 0, lead.rotate || 0, progress);\n }\n}\nfunction getRadius(values, radiusName) {\n return values[radiusName] !== undefined\n ? values[radiusName]\n : values.borderRadius;\n}\n// /**\n// * We only want to mix the background color if there's a follow element\n// * that we're not crossfading opacity between. For instance with switch\n// * AnimateSharedLayout animations, this helps the illusion of a continuous\n// * element being animated but also cuts down on the number of paints triggered\n// * for elements where opacity is doing that work for us.\n// */\n// if (\n// !hasFollowElement &&\n// latestLeadValues.backgroundColor &&\n// latestFollowValues.backgroundColor\n// ) {\n// /**\n// * This isn't ideal performance-wise as mixColor is creating a new function every frame.\n// * We could probably create a mixer that runs at the start of the animation but\n// * the idea behind the crossfader is that it runs dynamically between two potentially\n// * changing targets (ie opacity or borderRadius may be animating independently via variants)\n// */\n// leadState.backgroundColor = followState.backgroundColor = mixColor(\n// latestFollowValues.backgroundColor as string,\n// latestLeadValues.backgroundColor as string\n// )(p)\n// }\nconst easeCrossfadeIn = compress(0, 0.5, _easing_circ_mjs__WEBPACK_IMPORTED_MODULE_2__.circOut);\nconst easeCrossfadeOut = compress(0.5, 0.95, _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_3__.noop);\nfunction compress(min, max, easing) {\n return (p) => {\n // Could replace ifs with clamp\n if (p < min)\n return 0;\n if (p > max)\n return 1;\n return easing((0,_utils_progress_mjs__WEBPACK_IMPORTED_MODULE_4__.progress)(min, max, p));\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9hbmltYXRpb24vbWl4LXZhbHVlcy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQWdEO0FBQ0k7QUFDVjtBQUNFO0FBQ3NCOztBQUVsRTtBQUNBO0FBQ0E7QUFDQSxxREFBcUQsOERBQUU7QUFDdkQ7QUFDQTtBQUNBLHlCQUF5QixtREFBRztBQUM1QjtBQUNBO0FBQ0EsNkJBQTZCLG1EQUFHO0FBQ2hDO0FBQ0E7QUFDQSx5QkFBeUIsbURBQUc7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsZ0JBQWdCO0FBQ3BDLHFDQUFxQyxXQUFXO0FBQ2hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLG1EQUFHO0FBQzlDLGdCQUFnQixtRUFBTyxxQkFBcUIsbUVBQU87QUFDbkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixtREFBRztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMscURBQU87QUFDaEQsNkNBQTZDLGlEQUFJO0FBQ2pEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDZEQUFRO0FBQzlCO0FBQ0E7O0FBRXFCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9hbmltYXRpb24vbWl4LXZhbHVlcy5tanM/MGM4OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjaXJjT3V0IH0gZnJvbSAnLi4vLi4vZWFzaW5nL2NpcmMubWpzJztcbmltcG9ydCB7IHByb2dyZXNzIH0gZnJvbSAnLi4vLi4vdXRpbHMvcHJvZ3Jlc3MubWpzJztcbmltcG9ydCB7IG1peCB9IGZyb20gJy4uLy4uL3V0aWxzL21peC5tanMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL3V0aWxzL25vb3AubWpzJztcbmltcG9ydCB7IHBlcmNlbnQsIHB4IH0gZnJvbSAnLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuXG5jb25zdCBib3JkZXJzID0gW1wiVG9wTGVmdFwiLCBcIlRvcFJpZ2h0XCIsIFwiQm90dG9tTGVmdFwiLCBcIkJvdHRvbVJpZ2h0XCJdO1xuY29uc3QgbnVtQm9yZGVycyA9IGJvcmRlcnMubGVuZ3RoO1xuY29uc3QgYXNOdW1iZXIgPSAodmFsdWUpID0+IHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiA/IHBhcnNlRmxvYXQodmFsdWUpIDogdmFsdWU7XG5jb25zdCBpc1B4ID0gKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIgfHwgcHgudGVzdCh2YWx1ZSk7XG5mdW5jdGlvbiBtaXhWYWx1ZXModGFyZ2V0LCBmb2xsb3csIGxlYWQsIHByb2dyZXNzLCBzaG91bGRDcm9zc2ZhZGVPcGFjaXR5LCBpc09ubHlNZW1iZXIpIHtcbiAgICBpZiAoc2hvdWxkQ3Jvc3NmYWRlT3BhY2l0eSkge1xuICAgICAgICB0YXJnZXQub3BhY2l0eSA9IG1peCgwLCBcbiAgICAgICAgLy8gVE9ETyBSZWluc3RhdGUgdGhpcyBpZiBvbmx5IGNoaWxkXG4gICAgICAgIGxlYWQub3BhY2l0eSAhPT0gdW5kZWZpbmVkID8gbGVhZC5vcGFjaXR5IDogMSwgZWFzZUNyb3NzZmFkZUluKHByb2dyZXNzKSk7XG4gICAgICAgIHRhcmdldC5vcGFjaXR5RXhpdCA9IG1peChmb2xsb3cub3BhY2l0eSAhPT0gdW5kZWZpbmVkID8gZm9sbG93Lm9wYWNpdHkgOiAxLCAwLCBlYXNlQ3Jvc3NmYWRlT3V0KHByb2dyZXNzKSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGlzT25seU1lbWJlcikge1xuICAgICAgICB0YXJnZXQub3BhY2l0eSA9IG1peChmb2xsb3cub3BhY2l0eSAhPT0gdW5kZWZpbmVkID8gZm9sbG93Lm9wYWNpdHkgOiAxLCBsZWFkLm9wYWNpdHkgIT09IHVuZGVmaW5lZCA/IGxlYWQub3BhY2l0eSA6IDEsIHByb2dyZXNzKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogTWl4IGJvcmRlciByYWRpdXNcbiAgICAgKi9cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bUJvcmRlcnM7IGkrKykge1xuICAgICAgICBjb25zdCBib3JkZXJMYWJlbCA9IGBib3JkZXIke2JvcmRlcnNbaV19UmFkaXVzYDtcbiAgICAgICAgbGV0IGZvbGxvd1JhZGl1cyA9IGdldFJhZGl1cyhmb2xsb3csIGJvcmRlckxhYmVsKTtcbiAgICAgICAgbGV0IGxlYWRSYWRpdXMgPSBnZXRSYWRpdXMobGVhZCwgYm9yZGVyTGFiZWwpO1xuICAgICAgICBpZiAoZm9sbG93UmFkaXVzID09PSB1bmRlZmluZWQgJiYgbGVhZFJhZGl1cyA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIGZvbGxvd1JhZGl1cyB8fCAoZm9sbG93UmFkaXVzID0gMCk7XG4gICAgICAgIGxlYWRSYWRpdXMgfHwgKGxlYWRSYWRpdXMgPSAwKTtcbiAgICAgICAgY29uc3QgY2FuTWl4ID0gZm9sbG93UmFkaXVzID09PSAwIHx8XG4gICAgICAgICAgICBsZWFkUmFkaXVzID09PSAwIHx8XG4gICAgICAgICAgICBpc1B4KGZvbGxvd1JhZGl1cykgPT09IGlzUHgobGVhZFJhZGl1cyk7XG4gICAgICAgIGlmIChjYW5NaXgpIHtcbiAgICAgICAgICAgIHRhcmdldFtib3JkZXJMYWJlbF0gPSBNYXRoLm1heChtaXgoYXNOdW1iZXIoZm9sbG93UmFkaXVzKSwgYXNOdW1iZXIobGVhZFJhZGl1cyksIHByb2dyZXNzKSwgMCk7XG4gICAgICAgICAgICBpZiAocGVyY2VudC50ZXN0KGxlYWRSYWRpdXMpIHx8IHBlcmNlbnQudGVzdChmb2xsb3dSYWRpdXMpKSB7XG4gICAgICAgICAgICAgICAgdGFyZ2V0W2JvcmRlckxhYmVsXSArPSBcIiVcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRhcmdldFtib3JkZXJMYWJlbF0gPSBsZWFkUmFkaXVzO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIE1peCByb3RhdGlvblxuICAgICAqL1xuICAgIGlmIChmb2xsb3cucm90YXRlIHx8IGxlYWQucm90YXRlKSB7XG4gICAgICAgIHRhcmdldC5yb3RhdGUgPSBtaXgoZm9sbG93LnJvdGF0ZSB8fCAwLCBsZWFkLnJvdGF0ZSB8fCAwLCBwcm9ncmVzcyk7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2V0UmFkaXVzKHZhbHVlcywgcmFkaXVzTmFtZSkge1xuICAgIHJldHVybiB2YWx1ZXNbcmFkaXVzTmFtZV0gIT09IHVuZGVmaW5lZFxuICAgICAgICA/IHZhbHVlc1tyYWRpdXNOYW1lXVxuICAgICAgICA6IHZhbHVlcy5ib3JkZXJSYWRpdXM7XG59XG4vLyAvKipcbi8vICAqIFdlIG9ubHkgd2FudCB0byBtaXggdGhlIGJhY2tncm91bmQgY29sb3IgaWYgdGhlcmUncyBhIGZvbGxvdyBlbGVtZW50XG4vLyAgKiB0aGF0IHdlJ3JlIG5vdCBjcm9zc2ZhZGluZyBvcGFjaXR5IGJldHdlZW4uIEZvciBpbnN0YW5jZSB3aXRoIHN3aXRjaFxuLy8gICogQW5pbWF0ZVNoYXJlZExheW91dCBhbmltYXRpb25zLCB0aGlzIGhlbHBzIHRoZSBpbGx1c2lvbiBvZiBhIGNvbnRpbnVvdXNcbi8vICAqIGVsZW1lbnQgYmVpbmcgYW5pbWF0ZWQgYnV0IGFsc28gY3V0cyBkb3duIG9uIHRoZSBudW1iZXIgb2YgcGFpbnRzIHRyaWdnZXJlZFxuLy8gICogZm9yIGVsZW1lbnRzIHdoZXJlIG9wYWNpdHkgaXMgZG9pbmcgdGhhdCB3b3JrIGZvciB1cy5cbi8vICAqL1xuLy8gaWYgKFxuLy8gICAgICFoYXNGb2xsb3dFbGVtZW50ICYmXG4vLyAgICAgbGF0ZXN0TGVhZFZhbHVlcy5iYWNrZ3JvdW5kQ29sb3IgJiZcbi8vICAgICBsYXRlc3RGb2xsb3dWYWx1ZXMuYmFja2dyb3VuZENvbG9yXG4vLyApIHtcbi8vICAgICAvKipcbi8vICAgICAgKiBUaGlzIGlzbid0IGlkZWFsIHBlcmZvcm1hbmNlLXdpc2UgYXMgbWl4Q29sb3IgaXMgY3JlYXRpbmcgYSBuZXcgZnVuY3Rpb24gZXZlcnkgZnJhbWUuXG4vLyAgICAgICogV2UgY291bGQgcHJvYmFibHkgY3JlYXRlIGEgbWl4ZXIgdGhhdCBydW5zIGF0IHRoZSBzdGFydCBvZiB0aGUgYW5pbWF0aW9uIGJ1dFxuLy8gICAgICAqIHRoZSBpZGVhIGJlaGluZCB0aGUgY3Jvc3NmYWRlciBpcyB0aGF0IGl0IHJ1bnMgZHluYW1pY2FsbHkgYmV0d2VlbiB0d28gcG90ZW50aWFsbHlcbi8vICAgICAgKiBjaGFuZ2luZyB0YXJnZXRzIChpZSBvcGFjaXR5IG9yIGJvcmRlclJhZGl1cyBtYXkgYmUgYW5pbWF0aW5nIGluZGVwZW5kZW50bHkgdmlhIHZhcmlhbnRzKVxuLy8gICAgICAqL1xuLy8gICAgIGxlYWRTdGF0ZS5iYWNrZ3JvdW5kQ29sb3IgPSBmb2xsb3dTdGF0ZS5iYWNrZ3JvdW5kQ29sb3IgPSBtaXhDb2xvcihcbi8vICAgICAgICAgbGF0ZXN0Rm9sbG93VmFsdWVzLmJhY2tncm91bmRDb2xvciBhcyBzdHJpbmcsXG4vLyAgICAgICAgIGxhdGVzdExlYWRWYWx1ZXMuYmFja2dyb3VuZENvbG9yIGFzIHN0cmluZ1xuLy8gICAgICkocClcbi8vIH1cbmNvbnN0IGVhc2VDcm9zc2ZhZGVJbiA9IGNvbXByZXNzKDAsIDAuNSwgY2lyY091dCk7XG5jb25zdCBlYXNlQ3Jvc3NmYWRlT3V0ID0gY29tcHJlc3MoMC41LCAwLjk1LCBub29wKTtcbmZ1bmN0aW9uIGNvbXByZXNzKG1pbiwgbWF4LCBlYXNpbmcpIHtcbiAgICByZXR1cm4gKHApID0+IHtcbiAgICAgICAgLy8gQ291bGQgcmVwbGFjZSBpZnMgd2l0aCBjbGFtcFxuICAgICAgICBpZiAocCA8IG1pbilcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICBpZiAocCA+IG1heClcbiAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICByZXR1cm4gZWFzaW5nKHByb2dyZXNzKG1pbiwgbWF4LCBwKSk7XG4gICAgfTtcbn1cblxuZXhwb3J0IHsgbWl4VmFsdWVzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ convertBoundingBoxToBox: function() { return /* binding */ convertBoundingBoxToBox; },\n/* harmony export */ convertBoxToBoundingBox: function() { return /* binding */ convertBoxToBoundingBox; },\n/* harmony export */ transformBoxPoints: function() { return /* binding */ transformBoxPoints; }\n/* harmony export */ });\n/**\n * Bounding boxes tend to be defined as top, left, right, bottom. For various operations\n * it's easier to consider each axis individually. This function returns a bounding box\n * as a map of single-axis min/max values.\n */\nfunction convertBoundingBoxToBox({ top, left, right, bottom, }) {\n return {\n x: { min: left, max: right },\n y: { min: top, max: bottom },\n };\n}\nfunction convertBoxToBoundingBox({ x, y }) {\n return { top: y.min, right: x.max, bottom: y.max, left: x.min };\n}\n/**\n * Applies a TransformPoint function to a bounding box. TransformPoint is usually a function\n * provided by Framer to allow measured points to be corrected for device scaling. This is used\n * when measuring DOM elements and DOM event points.\n */\nfunction transformBoxPoints(point, transformPoint) {\n if (!transformPoint)\n return point;\n const topLeft = transformPoint({ x: point.left, y: point.top });\n const bottomRight = transformPoint({ x: point.right, y: point.bottom });\n return {\n top: topLeft.y,\n left: topLeft.x,\n bottom: bottomRight.y,\n right: bottomRight.x,\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9jb252ZXJzaW9uLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLDJCQUEyQjtBQUM5RDtBQUNBLGFBQWEsdUJBQXVCO0FBQ3BDLGFBQWEsdUJBQXVCO0FBQ3BDO0FBQ0E7QUFDQSxtQ0FBbUMsTUFBTTtBQUN6QyxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUNBQXFDLDZCQUE2QjtBQUNsRSx5Q0FBeUMsaUNBQWlDO0FBQzFFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVnRiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3Byb2plY3Rpb24vZ2VvbWV0cnkvY29udmVyc2lvbi5tanM/NjllYiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJvdW5kaW5nIGJveGVzIHRlbmQgdG8gYmUgZGVmaW5lZCBhcyB0b3AsIGxlZnQsIHJpZ2h0LCBib3R0b20uIEZvciB2YXJpb3VzIG9wZXJhdGlvbnNcbiAqIGl0J3MgZWFzaWVyIHRvIGNvbnNpZGVyIGVhY2ggYXhpcyBpbmRpdmlkdWFsbHkuIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIGJvdW5kaW5nIGJveFxuICogYXMgYSBtYXAgb2Ygc2luZ2xlLWF4aXMgbWluL21heCB2YWx1ZXMuXG4gKi9cbmZ1bmN0aW9uIGNvbnZlcnRCb3VuZGluZ0JveFRvQm94KHsgdG9wLCBsZWZ0LCByaWdodCwgYm90dG9tLCB9KSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgeDogeyBtaW46IGxlZnQsIG1heDogcmlnaHQgfSxcbiAgICAgICAgeTogeyBtaW46IHRvcCwgbWF4OiBib3R0b20gfSxcbiAgICB9O1xufVxuZnVuY3Rpb24gY29udmVydEJveFRvQm91bmRpbmdCb3goeyB4LCB5IH0pIHtcbiAgICByZXR1cm4geyB0b3A6IHkubWluLCByaWdodDogeC5tYXgsIGJvdHRvbTogeS5tYXgsIGxlZnQ6IHgubWluIH07XG59XG4vKipcbiAqIEFwcGxpZXMgYSBUcmFuc2Zvcm1Qb2ludCBmdW5jdGlvbiB0byBhIGJvdW5kaW5nIGJveC4gVHJhbnNmb3JtUG9pbnQgaXMgdXN1YWxseSBhIGZ1bmN0aW9uXG4gKiBwcm92aWRlZCBieSBGcmFtZXIgdG8gYWxsb3cgbWVhc3VyZWQgcG9pbnRzIHRvIGJlIGNvcnJlY3RlZCBmb3IgZGV2aWNlIHNjYWxpbmcuIFRoaXMgaXMgdXNlZFxuICogd2hlbiBtZWFzdXJpbmcgRE9NIGVsZW1lbnRzIGFuZCBET00gZXZlbnQgcG9pbnRzLlxuICovXG5mdW5jdGlvbiB0cmFuc2Zvcm1Cb3hQb2ludHMocG9pbnQsIHRyYW5zZm9ybVBvaW50KSB7XG4gICAgaWYgKCF0cmFuc2Zvcm1Qb2ludClcbiAgICAgICAgcmV0dXJuIHBvaW50O1xuICAgIGNvbnN0IHRvcExlZnQgPSB0cmFuc2Zvcm1Qb2ludCh7IHg6IHBvaW50LmxlZnQsIHk6IHBvaW50LnRvcCB9KTtcbiAgICBjb25zdCBib3R0b21SaWdodCA9IHRyYW5zZm9ybVBvaW50KHsgeDogcG9pbnQucmlnaHQsIHk6IHBvaW50LmJvdHRvbSB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgICB0b3A6IHRvcExlZnQueSxcbiAgICAgICAgbGVmdDogdG9wTGVmdC54LFxuICAgICAgICBib3R0b206IGJvdHRvbVJpZ2h0LnksXG4gICAgICAgIHJpZ2h0OiBib3R0b21SaWdodC54LFxuICAgIH07XG59XG5cbmV4cG9ydCB7IGNvbnZlcnRCb3VuZGluZ0JveFRvQm94LCBjb252ZXJ0Qm94VG9Cb3VuZGluZ0JveCwgdHJhbnNmb3JtQm94UG9pbnRzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ copyAxisInto: function() { return /* binding */ copyAxisInto; },\n/* harmony export */ copyBoxInto: function() { return /* binding */ copyBoxInto; }\n/* harmony export */ });\n/**\n * Reset an axis to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisInto(axis, originAxis) {\n axis.min = originAxis.min;\n axis.max = originAxis.max;\n}\n/**\n * Reset a box to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyBoxInto(box, originBox) {\n copyAxisInto(box.x, originBox.x);\n copyAxisInto(box.y, originBox.y);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9jb3B5Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFcUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL2dlb21ldHJ5L2NvcHkubWpzPzgyNzciXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXNldCBhbiBheGlzIHRvIHRoZSBwcm92aWRlZCBvcmlnaW4gYm94LlxuICpcbiAqIFRoaXMgaXMgYSBtdXRhdGl2ZSBvcGVyYXRpb24uXG4gKi9cbmZ1bmN0aW9uIGNvcHlBeGlzSW50byhheGlzLCBvcmlnaW5BeGlzKSB7XG4gICAgYXhpcy5taW4gPSBvcmlnaW5BeGlzLm1pbjtcbiAgICBheGlzLm1heCA9IG9yaWdpbkF4aXMubWF4O1xufVxuLyoqXG4gKiBSZXNldCBhIGJveCB0byB0aGUgcHJvdmlkZWQgb3JpZ2luIGJveC5cbiAqXG4gKiBUaGlzIGlzIGEgbXV0YXRpdmUgb3BlcmF0aW9uLlxuICovXG5mdW5jdGlvbiBjb3B5Qm94SW50byhib3gsIG9yaWdpbkJveCkge1xuICAgIGNvcHlBeGlzSW50byhib3gueCwgb3JpZ2luQm94LngpO1xuICAgIGNvcHlBeGlzSW50byhib3gueSwgb3JpZ2luQm94LnkpO1xufVxuXG5leHBvcnQgeyBjb3B5QXhpc0ludG8sIGNvcHlCb3hJbnRvIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ applyAxisDelta: function() { return /* binding */ applyAxisDelta; },\n/* harmony export */ applyBoxDelta: function() { return /* binding */ applyBoxDelta; },\n/* harmony export */ applyPointDelta: function() { return /* binding */ applyPointDelta; },\n/* harmony export */ applyTreeDeltas: function() { return /* binding */ applyTreeDeltas; },\n/* harmony export */ scalePoint: function() { return /* binding */ scalePoint; },\n/* harmony export */ transformAxis: function() { return /* binding */ transformAxis; },\n/* harmony export */ transformBox: function() { return /* binding */ transformBox; },\n/* harmony export */ translateAxis: function() { return /* binding */ translateAxis; }\n/* harmony export */ });\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/has-transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs\");\n\n\n\n/**\n * Scales a point based on a factor and an originPoint\n */\nfunction scalePoint(point, scale, originPoint) {\n const distanceFromOrigin = point - originPoint;\n const scaled = scale * distanceFromOrigin;\n return originPoint + scaled;\n}\n/**\n * Applies a translate/scale delta to a point\n */\nfunction applyPointDelta(point, translate, scale, originPoint, boxScale) {\n if (boxScale !== undefined) {\n point = scalePoint(point, boxScale, originPoint);\n }\n return scalePoint(point, scale, originPoint) + translate;\n}\n/**\n * Applies a translate/scale delta to an axis\n */\nfunction applyAxisDelta(axis, translate = 0, scale = 1, originPoint, boxScale) {\n axis.min = applyPointDelta(axis.min, translate, scale, originPoint, boxScale);\n axis.max = applyPointDelta(axis.max, translate, scale, originPoint, boxScale);\n}\n/**\n * Applies a translate/scale delta to a box\n */\nfunction applyBoxDelta(box, { x, y }) {\n applyAxisDelta(box.x, x.translate, x.scale, x.originPoint);\n applyAxisDelta(box.y, y.translate, y.scale, y.originPoint);\n}\n/**\n * Apply a tree of deltas to a box. We do this to calculate the effect of all the transforms\n * in a tree upon our box before then calculating how to project it into our desired viewport-relative box\n *\n * This is the final nested loop within updateLayoutDelta for future refactoring\n */\nfunction applyTreeDeltas(box, treeScale, treePath, isSharedTransition = false) {\n const treeLength = treePath.length;\n if (!treeLength)\n return;\n // Reset the treeScale\n treeScale.x = treeScale.y = 1;\n let node;\n let delta;\n for (let i = 0; i < treeLength; i++) {\n node = treePath[i];\n delta = node.projectionDelta;\n /**\n * TODO: Prefer to remove this, but currently we have motion components with\n * display: contents in Framer.\n */\n const instance = node.instance;\n if (instance &&\n instance.style &&\n instance.style.display === \"contents\") {\n continue;\n }\n if (isSharedTransition &&\n node.options.layoutScroll &&\n node.scroll &&\n node !== node.root) {\n transformBox(box, {\n x: -node.scroll.offset.x,\n y: -node.scroll.offset.y,\n });\n }\n if (delta) {\n // Incoporate each ancestor's scale into a culmulative treeScale for this component\n treeScale.x *= delta.x.scale;\n treeScale.y *= delta.y.scale;\n // Apply each ancestor's calculated delta into this component's recorded layout box\n applyBoxDelta(box, delta);\n }\n if (isSharedTransition && (0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_0__.hasTransform)(node.latestValues)) {\n transformBox(box, node.latestValues);\n }\n }\n /**\n * Snap tree scale back to 1 if it's within a non-perceivable threshold.\n * This will help reduce useless scales getting rendered.\n */\n treeScale.x = snapToDefault(treeScale.x);\n treeScale.y = snapToDefault(treeScale.y);\n}\nfunction snapToDefault(scale) {\n if (Number.isInteger(scale))\n return scale;\n return scale > 1.0000000000001 || scale < 0.999999999999 ? scale : 1;\n}\nfunction translateAxis(axis, distance) {\n axis.min = axis.min + distance;\n axis.max = axis.max + distance;\n}\n/**\n * Apply a transform to an axis from the latest resolved motion values.\n * This function basically acts as a bridge between a flat motion value map\n * and applyAxisDelta\n */\nfunction transformAxis(axis, transforms, [key, scaleKey, originKey]) {\n const axisOrigin = transforms[originKey] !== undefined ? transforms[originKey] : 0.5;\n const originPoint = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(axis.min, axis.max, axisOrigin);\n // Apply the axis delta to the final axis\n applyAxisDelta(axis, transforms[key], transforms[scaleKey], originPoint, transforms.scale);\n}\n/**\n * The names of the motion values we want to apply as translation, scale and origin.\n */\nconst xKeys = [\"x\", \"scaleX\", \"originX\"];\nconst yKeys = [\"y\", \"scaleY\", \"originY\"];\n/**\n * Apply a transform to a box from the latest resolved motion values.\n */\nfunction transformBox(box, transform) {\n transformAxis(box.x, transform, xKeys);\n transformAxis(box.y, transform, yKeys);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9kZWx0YS1hcHBseS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUEwQztBQUNnQjs7QUFFMUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOEJBQThCLE1BQU07QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxzRUFBWTtBQUM5QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLG1EQUFHO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFbUkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL2dlb21ldHJ5L2RlbHRhLWFwcGx5Lm1qcz9hNjdhIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1peCB9IGZyb20gJy4uLy4uL3V0aWxzL21peC5tanMnO1xuaW1wb3J0IHsgaGFzVHJhbnNmb3JtIH0gZnJvbSAnLi4vdXRpbHMvaGFzLXRyYW5zZm9ybS5tanMnO1xuXG4vKipcbiAqIFNjYWxlcyBhIHBvaW50IGJhc2VkIG9uIGEgZmFjdG9yIGFuZCBhbiBvcmlnaW5Qb2ludFxuICovXG5mdW5jdGlvbiBzY2FsZVBvaW50KHBvaW50LCBzY2FsZSwgb3JpZ2luUG9pbnQpIHtcbiAgICBjb25zdCBkaXN0YW5jZUZyb21PcmlnaW4gPSBwb2ludCAtIG9yaWdpblBvaW50O1xuICAgIGNvbnN0IHNjYWxlZCA9IHNjYWxlICogZGlzdGFuY2VGcm9tT3JpZ2luO1xuICAgIHJldHVybiBvcmlnaW5Qb2ludCArIHNjYWxlZDtcbn1cbi8qKlxuICogQXBwbGllcyBhIHRyYW5zbGF0ZS9zY2FsZSBkZWx0YSB0byBhIHBvaW50XG4gKi9cbmZ1bmN0aW9uIGFwcGx5UG9pbnREZWx0YShwb2ludCwgdHJhbnNsYXRlLCBzY2FsZSwgb3JpZ2luUG9pbnQsIGJveFNjYWxlKSB7XG4gICAgaWYgKGJveFNjYWxlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcG9pbnQgPSBzY2FsZVBvaW50KHBvaW50LCBib3hTY2FsZSwgb3JpZ2luUG9pbnQpO1xuICAgIH1cbiAgICByZXR1cm4gc2NhbGVQb2ludChwb2ludCwgc2NhbGUsIG9yaWdpblBvaW50KSArIHRyYW5zbGF0ZTtcbn1cbi8qKlxuICogQXBwbGllcyBhIHRyYW5zbGF0ZS9zY2FsZSBkZWx0YSB0byBhbiBheGlzXG4gKi9cbmZ1bmN0aW9uIGFwcGx5QXhpc0RlbHRhKGF4aXMsIHRyYW5zbGF0ZSA9IDAsIHNjYWxlID0gMSwgb3JpZ2luUG9pbnQsIGJveFNjYWxlKSB7XG4gICAgYXhpcy5taW4gPSBhcHBseVBvaW50RGVsdGEoYXhpcy5taW4sIHRyYW5zbGF0ZSwgc2NhbGUsIG9yaWdpblBvaW50LCBib3hTY2FsZSk7XG4gICAgYXhpcy5tYXggPSBhcHBseVBvaW50RGVsdGEoYXhpcy5tYXgsIHRyYW5zbGF0ZSwgc2NhbGUsIG9yaWdpblBvaW50LCBib3hTY2FsZSk7XG59XG4vKipcbiAqIEFwcGxpZXMgYSB0cmFuc2xhdGUvc2NhbGUgZGVsdGEgdG8gYSBib3hcbiAqL1xuZnVuY3Rpb24gYXBwbHlCb3hEZWx0YShib3gsIHsgeCwgeSB9KSB7XG4gICAgYXBwbHlBeGlzRGVsdGEoYm94LngsIHgudHJhbnNsYXRlLCB4LnNjYWxlLCB4Lm9yaWdpblBvaW50KTtcbiAgICBhcHBseUF4aXNEZWx0YShib3gueSwgeS50cmFuc2xhdGUsIHkuc2NhbGUsIHkub3JpZ2luUG9pbnQpO1xufVxuLyoqXG4gKiBBcHBseSBhIHRyZWUgb2YgZGVsdGFzIHRvIGEgYm94LiBXZSBkbyB0aGlzIHRvIGNhbGN1bGF0ZSB0aGUgZWZmZWN0IG9mIGFsbCB0aGUgdHJhbnNmb3Jtc1xuICogaW4gYSB0cmVlIHVwb24gb3VyIGJveCBiZWZvcmUgdGhlbiBjYWxjdWxhdGluZyBob3cgdG8gcHJvamVjdCBpdCBpbnRvIG91ciBkZXNpcmVkIHZpZXdwb3J0LXJlbGF0aXZlIGJveFxuICpcbiAqIFRoaXMgaXMgdGhlIGZpbmFsIG5lc3RlZCBsb29wIHdpdGhpbiB1cGRhdGVMYXlvdXREZWx0YSBmb3IgZnV0dXJlIHJlZmFjdG9yaW5nXG4gKi9cbmZ1bmN0aW9uIGFwcGx5VHJlZURlbHRhcyhib3gsIHRyZWVTY2FsZSwgdHJlZVBhdGgsIGlzU2hhcmVkVHJhbnNpdGlvbiA9IGZhbHNlKSB7XG4gICAgY29uc3QgdHJlZUxlbmd0aCA9IHRyZWVQYXRoLmxlbmd0aDtcbiAgICBpZiAoIXRyZWVMZW5ndGgpXG4gICAgICAgIHJldHVybjtcbiAgICAvLyBSZXNldCB0aGUgdHJlZVNjYWxlXG4gICAgdHJlZVNjYWxlLnggPSB0cmVlU2NhbGUueSA9IDE7XG4gICAgbGV0IG5vZGU7XG4gICAgbGV0IGRlbHRhO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJlZUxlbmd0aDsgaSsrKSB7XG4gICAgICAgIG5vZGUgPSB0cmVlUGF0aFtpXTtcbiAgICAgICAgZGVsdGEgPSBub2RlLnByb2plY3Rpb25EZWx0YTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFRPRE86IFByZWZlciB0byByZW1vdmUgdGhpcywgYnV0IGN1cnJlbnRseSB3ZSBoYXZlIG1vdGlvbiBjb21wb25lbnRzIHdpdGhcbiAgICAgICAgICogZGlzcGxheTogY29udGVudHMgaW4gRnJhbWVyLlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBub2RlLmluc3RhbmNlO1xuICAgICAgICBpZiAoaW5zdGFuY2UgJiZcbiAgICAgICAgICAgIGluc3RhbmNlLnN0eWxlICYmXG4gICAgICAgICAgICBpbnN0YW5jZS5zdHlsZS5kaXNwbGF5ID09PSBcImNvbnRlbnRzXCIpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc1NoYXJlZFRyYW5zaXRpb24gJiZcbiAgICAgICAgICAgIG5vZGUub3B0aW9ucy5sYXlvdXRTY3JvbGwgJiZcbiAgICAgICAgICAgIG5vZGUuc2Nyb2xsICYmXG4gICAgICAgICAgICBub2RlICE9PSBub2RlLnJvb3QpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybUJveChib3gsIHtcbiAgICAgICAgICAgICAgICB4OiAtbm9kZS5zY3JvbGwub2Zmc2V0LngsXG4gICAgICAgICAgICAgICAgeTogLW5vZGUuc2Nyb2xsLm9mZnNldC55LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRlbHRhKSB7XG4gICAgICAgICAgICAvLyBJbmNvcG9yYXRlIGVhY2ggYW5jZXN0b3IncyBzY2FsZSBpbnRvIGEgY3VsbXVsYXRpdmUgdHJlZVNjYWxlIGZvciB0aGlzIGNvbXBvbmVudFxuICAgICAgICAgICAgdHJlZVNjYWxlLnggKj0gZGVsdGEueC5zY2FsZTtcbiAgICAgICAgICAgIHRyZWVTY2FsZS55ICo9IGRlbHRhLnkuc2NhbGU7XG4gICAgICAgICAgICAvLyBBcHBseSBlYWNoIGFuY2VzdG9yJ3MgY2FsY3VsYXRlZCBkZWx0YSBpbnRvIHRoaXMgY29tcG9uZW50J3MgcmVjb3JkZWQgbGF5b3V0IGJveFxuICAgICAgICAgICAgYXBwbHlCb3hEZWx0YShib3gsIGRlbHRhKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNTaGFyZWRUcmFuc2l0aW9uICYmIGhhc1RyYW5zZm9ybShub2RlLmxhdGVzdFZhbHVlcykpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybUJveChib3gsIG5vZGUubGF0ZXN0VmFsdWVzKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBTbmFwIHRyZWUgc2NhbGUgYmFjayB0byAxIGlmIGl0J3Mgd2l0aGluIGEgbm9uLXBlcmNlaXZhYmxlIHRocmVzaG9sZC5cbiAgICAgKiBUaGlzIHdpbGwgaGVscCByZWR1Y2UgdXNlbGVzcyBzY2FsZXMgZ2V0dGluZyByZW5kZXJlZC5cbiAgICAgKi9cbiAgICB0cmVlU2NhbGUueCA9IHNuYXBUb0RlZmF1bHQodHJlZVNjYWxlLngpO1xuICAgIHRyZWVTY2FsZS55ID0gc25hcFRvRGVmYXVsdCh0cmVlU2NhbGUueSk7XG59XG5mdW5jdGlvbiBzbmFwVG9EZWZhdWx0KHNjYWxlKSB7XG4gICAgaWYgKE51bWJlci5pc0ludGVnZXIoc2NhbGUpKVxuICAgICAgICByZXR1cm4gc2NhbGU7XG4gICAgcmV0dXJuIHNjYWxlID4gMS4wMDAwMDAwMDAwMDAxIHx8IHNjYWxlIDwgMC45OTk5OTk5OTk5OTkgPyBzY2FsZSA6IDE7XG59XG5mdW5jdGlvbiB0cmFuc2xhdGVBeGlzKGF4aXMsIGRpc3RhbmNlKSB7XG4gICAgYXhpcy5taW4gPSBheGlzLm1pbiArIGRpc3RhbmNlO1xuICAgIGF4aXMubWF4ID0gYXhpcy5tYXggKyBkaXN0YW5jZTtcbn1cbi8qKlxuICogQXBwbHkgYSB0cmFuc2Zvcm0gdG8gYW4gYXhpcyBmcm9tIHRoZSBsYXRlc3QgcmVzb2x2ZWQgbW90aW9uIHZhbHVlcy5cbiAqIFRoaXMgZnVuY3Rpb24gYmFzaWNhbGx5IGFjdHMgYXMgYSBicmlkZ2UgYmV0d2VlbiBhIGZsYXQgbW90aW9uIHZhbHVlIG1hcFxuICogYW5kIGFwcGx5QXhpc0RlbHRhXG4gKi9cbmZ1bmN0aW9uIHRyYW5zZm9ybUF4aXMoYXhpcywgdHJhbnNmb3JtcywgW2tleSwgc2NhbGVLZXksIG9yaWdpbktleV0pIHtcbiAgICBjb25zdCBheGlzT3JpZ2luID0gdHJhbnNmb3Jtc1tvcmlnaW5LZXldICE9PSB1bmRlZmluZWQgPyB0cmFuc2Zvcm1zW29yaWdpbktleV0gOiAwLjU7XG4gICAgY29uc3Qgb3JpZ2luUG9pbnQgPSBtaXgoYXhpcy5taW4sIGF4aXMubWF4LCBheGlzT3JpZ2luKTtcbiAgICAvLyBBcHBseSB0aGUgYXhpcyBkZWx0YSB0byB0aGUgZmluYWwgYXhpc1xuICAgIGFwcGx5QXhpc0RlbHRhKGF4aXMsIHRyYW5zZm9ybXNba2V5XSwgdHJhbnNmb3Jtc1tzY2FsZUtleV0sIG9yaWdpblBvaW50LCB0cmFuc2Zvcm1zLnNjYWxlKTtcbn1cbi8qKlxuICogVGhlIG5hbWVzIG9mIHRoZSBtb3Rpb24gdmFsdWVzIHdlIHdhbnQgdG8gYXBwbHkgYXMgdHJhbnNsYXRpb24sIHNjYWxlIGFuZCBvcmlnaW4uXG4gKi9cbmNvbnN0IHhLZXlzID0gW1wieFwiLCBcInNjYWxlWFwiLCBcIm9yaWdpblhcIl07XG5jb25zdCB5S2V5cyA9IFtcInlcIiwgXCJzY2FsZVlcIiwgXCJvcmlnaW5ZXCJdO1xuLyoqXG4gKiBBcHBseSBhIHRyYW5zZm9ybSB0byBhIGJveCBmcm9tIHRoZSBsYXRlc3QgcmVzb2x2ZWQgbW90aW9uIHZhbHVlcy5cbiAqL1xuZnVuY3Rpb24gdHJhbnNmb3JtQm94KGJveCwgdHJhbnNmb3JtKSB7XG4gICAgdHJhbnNmb3JtQXhpcyhib3gueCwgdHJhbnNmb3JtLCB4S2V5cyk7XG4gICAgdHJhbnNmb3JtQXhpcyhib3gueSwgdHJhbnNmb3JtLCB5S2V5cyk7XG59XG5cbmV4cG9ydCB7IGFwcGx5QXhpc0RlbHRhLCBhcHBseUJveERlbHRhLCBhcHBseVBvaW50RGVsdGEsIGFwcGx5VHJlZURlbHRhcywgc2NhbGVQb2ludCwgdHJhbnNmb3JtQXhpcywgdHJhbnNmb3JtQm94LCB0cmFuc2xhdGVBeGlzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ calcAxisDelta: function() { return /* binding */ calcAxisDelta; },\n/* harmony export */ calcBoxDelta: function() { return /* binding */ calcBoxDelta; },\n/* harmony export */ calcLength: function() { return /* binding */ calcLength; },\n/* harmony export */ calcRelativeAxis: function() { return /* binding */ calcRelativeAxis; },\n/* harmony export */ calcRelativeAxisPosition: function() { return /* binding */ calcRelativeAxisPosition; },\n/* harmony export */ calcRelativeBox: function() { return /* binding */ calcRelativeBox; },\n/* harmony export */ calcRelativePosition: function() { return /* binding */ calcRelativePosition; },\n/* harmony export */ isNear: function() { return /* binding */ isNear; }\n/* harmony export */ });\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n\n\nfunction calcLength(axis) {\n return axis.max - axis.min;\n}\nfunction isNear(value, target = 0, maxDistance = 0.01) {\n return Math.abs(value - target) <= maxDistance;\n}\nfunction calcAxisDelta(delta, source, target, origin = 0.5) {\n delta.origin = origin;\n delta.originPoint = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(source.min, source.max, delta.origin);\n delta.scale = calcLength(target) / calcLength(source);\n if (isNear(delta.scale, 1, 0.0001) || isNaN(delta.scale))\n delta.scale = 1;\n delta.translate =\n (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(target.min, target.max, delta.origin) - delta.originPoint;\n if (isNear(delta.translate) || isNaN(delta.translate))\n delta.translate = 0;\n}\nfunction calcBoxDelta(delta, source, target, origin) {\n calcAxisDelta(delta.x, source.x, target.x, origin ? origin.originX : undefined);\n calcAxisDelta(delta.y, source.y, target.y, origin ? origin.originY : undefined);\n}\nfunction calcRelativeAxis(target, relative, parent) {\n target.min = parent.min + relative.min;\n target.max = target.min + calcLength(relative);\n}\nfunction calcRelativeBox(target, relative, parent) {\n calcRelativeAxis(target.x, relative.x, parent.x);\n calcRelativeAxis(target.y, relative.y, parent.y);\n}\nfunction calcRelativeAxisPosition(target, layout, parent) {\n target.min = layout.min - parent.min;\n target.max = target.min + calcLength(layout);\n}\nfunction calcRelativePosition(target, layout, parent) {\n calcRelativeAxisPosition(target.x, layout.x, parent.x);\n calcRelativeAxisPosition(target.y, layout.y, parent.y);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9kZWx0YS1jYWxjLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBMEM7O0FBRTFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsbURBQUc7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLG1EQUFHO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFOEkiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL2dlb21ldHJ5L2RlbHRhLWNhbGMubWpzP2M0MTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWl4IH0gZnJvbSAnLi4vLi4vdXRpbHMvbWl4Lm1qcyc7XG5cbmZ1bmN0aW9uIGNhbGNMZW5ndGgoYXhpcykge1xuICAgIHJldHVybiBheGlzLm1heCAtIGF4aXMubWluO1xufVxuZnVuY3Rpb24gaXNOZWFyKHZhbHVlLCB0YXJnZXQgPSAwLCBtYXhEaXN0YW5jZSA9IDAuMDEpIHtcbiAgICByZXR1cm4gTWF0aC5hYnModmFsdWUgLSB0YXJnZXQpIDw9IG1heERpc3RhbmNlO1xufVxuZnVuY3Rpb24gY2FsY0F4aXNEZWx0YShkZWx0YSwgc291cmNlLCB0YXJnZXQsIG9yaWdpbiA9IDAuNSkge1xuICAgIGRlbHRhLm9yaWdpbiA9IG9yaWdpbjtcbiAgICBkZWx0YS5vcmlnaW5Qb2ludCA9IG1peChzb3VyY2UubWluLCBzb3VyY2UubWF4LCBkZWx0YS5vcmlnaW4pO1xuICAgIGRlbHRhLnNjYWxlID0gY2FsY0xlbmd0aCh0YXJnZXQpIC8gY2FsY0xlbmd0aChzb3VyY2UpO1xuICAgIGlmIChpc05lYXIoZGVsdGEuc2NhbGUsIDEsIDAuMDAwMSkgfHwgaXNOYU4oZGVsdGEuc2NhbGUpKVxuICAgICAgICBkZWx0YS5zY2FsZSA9IDE7XG4gICAgZGVsdGEudHJhbnNsYXRlID1cbiAgICAgICAgbWl4KHRhcmdldC5taW4sIHRhcmdldC5tYXgsIGRlbHRhLm9yaWdpbikgLSBkZWx0YS5vcmlnaW5Qb2ludDtcbiAgICBpZiAoaXNOZWFyKGRlbHRhLnRyYW5zbGF0ZSkgfHwgaXNOYU4oZGVsdGEudHJhbnNsYXRlKSlcbiAgICAgICAgZGVsdGEudHJhbnNsYXRlID0gMDtcbn1cbmZ1bmN0aW9uIGNhbGNCb3hEZWx0YShkZWx0YSwgc291cmNlLCB0YXJnZXQsIG9yaWdpbikge1xuICAgIGNhbGNBeGlzRGVsdGEoZGVsdGEueCwgc291cmNlLngsIHRhcmdldC54LCBvcmlnaW4gPyBvcmlnaW4ub3JpZ2luWCA6IHVuZGVmaW5lZCk7XG4gICAgY2FsY0F4aXNEZWx0YShkZWx0YS55LCBzb3VyY2UueSwgdGFyZ2V0LnksIG9yaWdpbiA/IG9yaWdpbi5vcmlnaW5ZIDogdW5kZWZpbmVkKTtcbn1cbmZ1bmN0aW9uIGNhbGNSZWxhdGl2ZUF4aXModGFyZ2V0LCByZWxhdGl2ZSwgcGFyZW50KSB7XG4gICAgdGFyZ2V0Lm1pbiA9IHBhcmVudC5taW4gKyByZWxhdGl2ZS5taW47XG4gICAgdGFyZ2V0Lm1heCA9IHRhcmdldC5taW4gKyBjYWxjTGVuZ3RoKHJlbGF0aXZlKTtcbn1cbmZ1bmN0aW9uIGNhbGNSZWxhdGl2ZUJveCh0YXJnZXQsIHJlbGF0aXZlLCBwYXJlbnQpIHtcbiAgICBjYWxjUmVsYXRpdmVBeGlzKHRhcmdldC54LCByZWxhdGl2ZS54LCBwYXJlbnQueCk7XG4gICAgY2FsY1JlbGF0aXZlQXhpcyh0YXJnZXQueSwgcmVsYXRpdmUueSwgcGFyZW50LnkpO1xufVxuZnVuY3Rpb24gY2FsY1JlbGF0aXZlQXhpc1Bvc2l0aW9uKHRhcmdldCwgbGF5b3V0LCBwYXJlbnQpIHtcbiAgICB0YXJnZXQubWluID0gbGF5b3V0Lm1pbiAtIHBhcmVudC5taW47XG4gICAgdGFyZ2V0Lm1heCA9IHRhcmdldC5taW4gKyBjYWxjTGVuZ3RoKGxheW91dCk7XG59XG5mdW5jdGlvbiBjYWxjUmVsYXRpdmVQb3NpdGlvbih0YXJnZXQsIGxheW91dCwgcGFyZW50KSB7XG4gICAgY2FsY1JlbGF0aXZlQXhpc1Bvc2l0aW9uKHRhcmdldC54LCBsYXlvdXQueCwgcGFyZW50LngpO1xuICAgIGNhbGNSZWxhdGl2ZUF4aXNQb3NpdGlvbih0YXJnZXQueSwgbGF5b3V0LnksIHBhcmVudC55KTtcbn1cblxuZXhwb3J0IHsgY2FsY0F4aXNEZWx0YSwgY2FsY0JveERlbHRhLCBjYWxjTGVuZ3RoLCBjYWxjUmVsYXRpdmVBeGlzLCBjYWxjUmVsYXRpdmVBeGlzUG9zaXRpb24sIGNhbGNSZWxhdGl2ZUJveCwgY2FsY1JlbGF0aXZlUG9zaXRpb24sIGlzTmVhciB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ removeAxisDelta: function() { return /* binding */ removeAxisDelta; },\n/* harmony export */ removeAxisTransforms: function() { return /* binding */ removeAxisTransforms; },\n/* harmony export */ removeBoxTransforms: function() { return /* binding */ removeBoxTransforms; },\n/* harmony export */ removePointDelta: function() { return /* binding */ removePointDelta; }\n/* harmony export */ });\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n/* harmony import */ var _delta_apply_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./delta-apply.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs\");\n\n\n\n\n/**\n * Remove a delta from a point. This is essentially the steps of applyPointDelta in reverse\n */\nfunction removePointDelta(point, translate, scale, originPoint, boxScale) {\n point -= translate;\n point = (0,_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_0__.scalePoint)(point, 1 / scale, originPoint);\n if (boxScale !== undefined) {\n point = (0,_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_0__.scalePoint)(point, 1 / boxScale, originPoint);\n }\n return point;\n}\n/**\n * Remove a delta from an axis. This is essentially the steps of applyAxisDelta in reverse\n */\nfunction removeAxisDelta(axis, translate = 0, scale = 1, origin = 0.5, boxScale, originAxis = axis, sourceAxis = axis) {\n if (_value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.percent.test(translate)) {\n translate = parseFloat(translate);\n const relativeProgress = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_2__.mix)(sourceAxis.min, sourceAxis.max, translate / 100);\n translate = relativeProgress - sourceAxis.min;\n }\n if (typeof translate !== \"number\")\n return;\n let originPoint = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_2__.mix)(originAxis.min, originAxis.max, origin);\n if (axis === originAxis)\n originPoint -= translate;\n axis.min = removePointDelta(axis.min, translate, scale, originPoint, boxScale);\n axis.max = removePointDelta(axis.max, translate, scale, originPoint, boxScale);\n}\n/**\n * Remove a transforms from an axis. This is essentially the steps of applyAxisTransforms in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeAxisTransforms(axis, transforms, [key, scaleKey, originKey], origin, sourceAxis) {\n removeAxisDelta(axis, transforms[key], transforms[scaleKey], transforms[originKey], transforms.scale, origin, sourceAxis);\n}\n/**\n * The names of the motion values we want to apply as translation, scale and origin.\n */\nconst xKeys = [\"x\", \"scaleX\", \"originX\"];\nconst yKeys = [\"y\", \"scaleY\", \"originY\"];\n/**\n * Remove a transforms from an box. This is essentially the steps of applyAxisBox in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeBoxTransforms(box, transforms, originBox, sourceBox) {\n removeAxisTransforms(box.x, transforms, xKeys, originBox ? originBox.x : undefined, sourceBox ? sourceBox.x : undefined);\n removeAxisTransforms(box.y, transforms, yKeys, originBox ? originBox.y : undefined, sourceBox ? sourceBox.y : undefined);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9kZWx0YS1yZW1vdmUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBMEM7QUFDb0I7QUFDZjs7QUFFL0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksNERBQVU7QUFDdEI7QUFDQSxnQkFBZ0IsNERBQVU7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLG1FQUFPO0FBQ2Y7QUFDQSxpQ0FBaUMsbURBQUc7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsbURBQUc7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXdGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9kZWx0YS1yZW1vdmUubWpzPzdkN2MiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWl4IH0gZnJvbSAnLi4vLi4vdXRpbHMvbWl4Lm1qcyc7XG5pbXBvcnQgeyBwZXJjZW50IH0gZnJvbSAnLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuaW1wb3J0IHsgc2NhbGVQb2ludCB9IGZyb20gJy4vZGVsdGEtYXBwbHkubWpzJztcblxuLyoqXG4gKiBSZW1vdmUgYSBkZWx0YSBmcm9tIGEgcG9pbnQuIFRoaXMgaXMgZXNzZW50aWFsbHkgdGhlIHN0ZXBzIG9mIGFwcGx5UG9pbnREZWx0YSBpbiByZXZlcnNlXG4gKi9cbmZ1bmN0aW9uIHJlbW92ZVBvaW50RGVsdGEocG9pbnQsIHRyYW5zbGF0ZSwgc2NhbGUsIG9yaWdpblBvaW50LCBib3hTY2FsZSkge1xuICAgIHBvaW50IC09IHRyYW5zbGF0ZTtcbiAgICBwb2ludCA9IHNjYWxlUG9pbnQocG9pbnQsIDEgLyBzY2FsZSwgb3JpZ2luUG9pbnQpO1xuICAgIGlmIChib3hTY2FsZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHBvaW50ID0gc2NhbGVQb2ludChwb2ludCwgMSAvIGJveFNjYWxlLCBvcmlnaW5Qb2ludCk7XG4gICAgfVxuICAgIHJldHVybiBwb2ludDtcbn1cbi8qKlxuICogUmVtb3ZlIGEgZGVsdGEgZnJvbSBhbiBheGlzLiBUaGlzIGlzIGVzc2VudGlhbGx5IHRoZSBzdGVwcyBvZiBhcHBseUF4aXNEZWx0YSBpbiByZXZlcnNlXG4gKi9cbmZ1bmN0aW9uIHJlbW92ZUF4aXNEZWx0YShheGlzLCB0cmFuc2xhdGUgPSAwLCBzY2FsZSA9IDEsIG9yaWdpbiA9IDAuNSwgYm94U2NhbGUsIG9yaWdpbkF4aXMgPSBheGlzLCBzb3VyY2VBeGlzID0gYXhpcykge1xuICAgIGlmIChwZXJjZW50LnRlc3QodHJhbnNsYXRlKSkge1xuICAgICAgICB0cmFuc2xhdGUgPSBwYXJzZUZsb2F0KHRyYW5zbGF0ZSk7XG4gICAgICAgIGNvbnN0IHJlbGF0aXZlUHJvZ3Jlc3MgPSBtaXgoc291cmNlQXhpcy5taW4sIHNvdXJjZUF4aXMubWF4LCB0cmFuc2xhdGUgLyAxMDApO1xuICAgICAgICB0cmFuc2xhdGUgPSByZWxhdGl2ZVByb2dyZXNzIC0gc291cmNlQXhpcy5taW47XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdHJhbnNsYXRlICE9PSBcIm51bWJlclwiKVxuICAgICAgICByZXR1cm47XG4gICAgbGV0IG9yaWdpblBvaW50ID0gbWl4KG9yaWdpbkF4aXMubWluLCBvcmlnaW5BeGlzLm1heCwgb3JpZ2luKTtcbiAgICBpZiAoYXhpcyA9PT0gb3JpZ2luQXhpcylcbiAgICAgICAgb3JpZ2luUG9pbnQgLT0gdHJhbnNsYXRlO1xuICAgIGF4aXMubWluID0gcmVtb3ZlUG9pbnREZWx0YShheGlzLm1pbiwgdHJhbnNsYXRlLCBzY2FsZSwgb3JpZ2luUG9pbnQsIGJveFNjYWxlKTtcbiAgICBheGlzLm1heCA9IHJlbW92ZVBvaW50RGVsdGEoYXhpcy5tYXgsIHRyYW5zbGF0ZSwgc2NhbGUsIG9yaWdpblBvaW50LCBib3hTY2FsZSk7XG59XG4vKipcbiAqIFJlbW92ZSBhIHRyYW5zZm9ybXMgZnJvbSBhbiBheGlzLiBUaGlzIGlzIGVzc2VudGlhbGx5IHRoZSBzdGVwcyBvZiBhcHBseUF4aXNUcmFuc2Zvcm1zIGluIHJldmVyc2VcbiAqIGFuZCBhY3RzIGFzIGEgYnJpZGdlIGJldHdlZW4gbW90aW9uIHZhbHVlcyBhbmQgcmVtb3ZlQXhpc0RlbHRhXG4gKi9cbmZ1bmN0aW9uIHJlbW92ZUF4aXNUcmFuc2Zvcm1zKGF4aXMsIHRyYW5zZm9ybXMsIFtrZXksIHNjYWxlS2V5LCBvcmlnaW5LZXldLCBvcmlnaW4sIHNvdXJjZUF4aXMpIHtcbiAgICByZW1vdmVBeGlzRGVsdGEoYXhpcywgdHJhbnNmb3Jtc1trZXldLCB0cmFuc2Zvcm1zW3NjYWxlS2V5XSwgdHJhbnNmb3Jtc1tvcmlnaW5LZXldLCB0cmFuc2Zvcm1zLnNjYWxlLCBvcmlnaW4sIHNvdXJjZUF4aXMpO1xufVxuLyoqXG4gKiBUaGUgbmFtZXMgb2YgdGhlIG1vdGlvbiB2YWx1ZXMgd2Ugd2FudCB0byBhcHBseSBhcyB0cmFuc2xhdGlvbiwgc2NhbGUgYW5kIG9yaWdpbi5cbiAqL1xuY29uc3QgeEtleXMgPSBbXCJ4XCIsIFwic2NhbGVYXCIsIFwib3JpZ2luWFwiXTtcbmNvbnN0IHlLZXlzID0gW1wieVwiLCBcInNjYWxlWVwiLCBcIm9yaWdpbllcIl07XG4vKipcbiAqIFJlbW92ZSBhIHRyYW5zZm9ybXMgZnJvbSBhbiBib3guIFRoaXMgaXMgZXNzZW50aWFsbHkgdGhlIHN0ZXBzIG9mIGFwcGx5QXhpc0JveCBpbiByZXZlcnNlXG4gKiBhbmQgYWN0cyBhcyBhIGJyaWRnZSBiZXR3ZWVuIG1vdGlvbiB2YWx1ZXMgYW5kIHJlbW92ZUF4aXNEZWx0YVxuICovXG5mdW5jdGlvbiByZW1vdmVCb3hUcmFuc2Zvcm1zKGJveCwgdHJhbnNmb3Jtcywgb3JpZ2luQm94LCBzb3VyY2VCb3gpIHtcbiAgICByZW1vdmVBeGlzVHJhbnNmb3Jtcyhib3gueCwgdHJhbnNmb3JtcywgeEtleXMsIG9yaWdpbkJveCA/IG9yaWdpbkJveC54IDogdW5kZWZpbmVkLCBzb3VyY2VCb3ggPyBzb3VyY2VCb3gueCA6IHVuZGVmaW5lZCk7XG4gICAgcmVtb3ZlQXhpc1RyYW5zZm9ybXMoYm94LnksIHRyYW5zZm9ybXMsIHlLZXlzLCBvcmlnaW5Cb3ggPyBvcmlnaW5Cb3gueSA6IHVuZGVmaW5lZCwgc291cmNlQm94ID8gc291cmNlQm94LnkgOiB1bmRlZmluZWQpO1xufVxuXG5leHBvcnQgeyByZW1vdmVBeGlzRGVsdGEsIHJlbW92ZUF4aXNUcmFuc2Zvcm1zLCByZW1vdmVCb3hUcmFuc2Zvcm1zLCByZW1vdmVQb2ludERlbHRhIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/models.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createAxis: function() { return /* binding */ createAxis; },\n/* harmony export */ createAxisDelta: function() { return /* binding */ createAxisDelta; },\n/* harmony export */ createBox: function() { return /* binding */ createBox; },\n/* harmony export */ createDelta: function() { return /* binding */ createDelta; }\n/* harmony export */ });\nconst createAxisDelta = () => ({\n translate: 0,\n scale: 1,\n origin: 0,\n originPoint: 0,\n});\nconst createDelta = () => ({\n x: createAxisDelta(),\n y: createAxisDelta(),\n});\nconst createAxis = () => ({ min: 0, max: 0 });\nconst createBox = () => ({\n x: createAxis(),\n y: createAxis(),\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9tb2RlbHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBLENBQUM7QUFDRCw0QkFBNEIsZ0JBQWdCO0FBQzVDO0FBQ0E7QUFDQTtBQUNBLENBQUM7O0FBRThEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS9tb2RlbHMubWpzP2FhOWEiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY3JlYXRlQXhpc0RlbHRhID0gKCkgPT4gKHtcbiAgICB0cmFuc2xhdGU6IDAsXG4gICAgc2NhbGU6IDEsXG4gICAgb3JpZ2luOiAwLFxuICAgIG9yaWdpblBvaW50OiAwLFxufSk7XG5jb25zdCBjcmVhdGVEZWx0YSA9ICgpID0+ICh7XG4gICAgeDogY3JlYXRlQXhpc0RlbHRhKCksXG4gICAgeTogY3JlYXRlQXhpc0RlbHRhKCksXG59KTtcbmNvbnN0IGNyZWF0ZUF4aXMgPSAoKSA9PiAoeyBtaW46IDAsIG1heDogMCB9KTtcbmNvbnN0IGNyZWF0ZUJveCA9ICgpID0+ICh7XG4gICAgeDogY3JlYXRlQXhpcygpLFxuICAgIHk6IGNyZWF0ZUF4aXMoKSxcbn0pO1xuXG5leHBvcnQgeyBjcmVhdGVBeGlzLCBjcmVhdGVBeGlzRGVsdGEsIGNyZWF0ZUJveCwgY3JlYXRlRGVsdGEgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ aspectRatio: function() { return /* binding */ aspectRatio; },\n/* harmony export */ boxEquals: function() { return /* binding */ boxEquals; },\n/* harmony export */ boxEqualsRounded: function() { return /* binding */ boxEqualsRounded; },\n/* harmony export */ isDeltaZero: function() { return /* binding */ isDeltaZero; }\n/* harmony export */ });\n/* harmony import */ var _delta_calc_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./delta-calc.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs\");\n\n\nfunction isAxisDeltaZero(delta) {\n return delta.translate === 0 && delta.scale === 1;\n}\nfunction isDeltaZero(delta) {\n return isAxisDeltaZero(delta.x) && isAxisDeltaZero(delta.y);\n}\nfunction boxEquals(a, b) {\n return (a.x.min === b.x.min &&\n a.x.max === b.x.max &&\n a.y.min === b.y.min &&\n a.y.max === b.y.max);\n}\nfunction boxEqualsRounded(a, b) {\n return (Math.round(a.x.min) === Math.round(b.x.min) &&\n Math.round(a.x.max) === Math.round(b.x.max) &&\n Math.round(a.y.min) === Math.round(b.y.min) &&\n Math.round(a.y.max) === Math.round(b.y.max));\n}\nfunction aspectRatio(box) {\n return (0,_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_0__.calcLength)(box.x) / (0,_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_0__.calcLength)(box.y);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9nZW9tZXRyeS91dGlscy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBOEM7O0FBRTlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVywyREFBVSxVQUFVLDJEQUFVO0FBQ3pDOztBQUVpRSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3Byb2plY3Rpb24vZ2VvbWV0cnkvdXRpbHMubWpzPzllYjkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FsY0xlbmd0aCB9IGZyb20gJy4vZGVsdGEtY2FsYy5tanMnO1xuXG5mdW5jdGlvbiBpc0F4aXNEZWx0YVplcm8oZGVsdGEpIHtcbiAgICByZXR1cm4gZGVsdGEudHJhbnNsYXRlID09PSAwICYmIGRlbHRhLnNjYWxlID09PSAxO1xufVxuZnVuY3Rpb24gaXNEZWx0YVplcm8oZGVsdGEpIHtcbiAgICByZXR1cm4gaXNBeGlzRGVsdGFaZXJvKGRlbHRhLngpICYmIGlzQXhpc0RlbHRhWmVybyhkZWx0YS55KTtcbn1cbmZ1bmN0aW9uIGJveEVxdWFscyhhLCBiKSB7XG4gICAgcmV0dXJuIChhLngubWluID09PSBiLngubWluICYmXG4gICAgICAgIGEueC5tYXggPT09IGIueC5tYXggJiZcbiAgICAgICAgYS55Lm1pbiA9PT0gYi55Lm1pbiAmJlxuICAgICAgICBhLnkubWF4ID09PSBiLnkubWF4KTtcbn1cbmZ1bmN0aW9uIGJveEVxdWFsc1JvdW5kZWQoYSwgYikge1xuICAgIHJldHVybiAoTWF0aC5yb3VuZChhLngubWluKSA9PT0gTWF0aC5yb3VuZChiLngubWluKSAmJlxuICAgICAgICBNYXRoLnJvdW5kKGEueC5tYXgpID09PSBNYXRoLnJvdW5kKGIueC5tYXgpICYmXG4gICAgICAgIE1hdGgucm91bmQoYS55Lm1pbikgPT09IE1hdGgucm91bmQoYi55Lm1pbikgJiZcbiAgICAgICAgTWF0aC5yb3VuZChhLnkubWF4KSA9PT0gTWF0aC5yb3VuZChiLnkubWF4KSk7XG59XG5mdW5jdGlvbiBhc3BlY3RSYXRpbyhib3gpIHtcbiAgICByZXR1cm4gY2FsY0xlbmd0aChib3gueCkgLyBjYWxjTGVuZ3RoKGJveC55KTtcbn1cblxuZXhwb3J0IHsgYXNwZWN0UmF0aW8sIGJveEVxdWFscywgYm94RXF1YWxzUm91bmRlZCwgaXNEZWx0YVplcm8gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DocumentProjectionNode: function() { return /* binding */ DocumentProjectionNode; }\n/* harmony export */ });\n/* harmony import */ var _create_projection_node_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-projection-node.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs\");\n/* harmony import */ var _events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../events/add-dom-event.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/events/add-dom-event.mjs\");\n\n\n\nconst DocumentProjectionNode = (0,_create_projection_node_mjs__WEBPACK_IMPORTED_MODULE_0__.createProjectionNode)({\n attachResizeListener: (ref, notify) => (0,_events_add_dom_event_mjs__WEBPACK_IMPORTED_MODULE_1__.addDomEvent)(ref, \"resize\", notify),\n measureScroll: () => ({\n x: document.documentElement.scrollLeft || document.body.scrollLeft,\n y: document.documentElement.scrollTop || document.body.scrollTop,\n }),\n checkIsScrollRoot: () => true,\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9ub2RlL0RvY3VtZW50UHJvamVjdGlvbk5vZGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFvRTtBQUNQOztBQUU3RCwrQkFBK0IsaUZBQW9CO0FBQ25ELDJDQUEyQyxzRUFBVztBQUN0RDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSxDQUFDOztBQUVpQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3Byb2plY3Rpb24vbm9kZS9Eb2N1bWVudFByb2plY3Rpb25Ob2RlLm1qcz83YzdiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVByb2plY3Rpb25Ob2RlIH0gZnJvbSAnLi9jcmVhdGUtcHJvamVjdGlvbi1ub2RlLm1qcyc7XG5pbXBvcnQgeyBhZGREb21FdmVudCB9IGZyb20gJy4uLy4uL2V2ZW50cy9hZGQtZG9tLWV2ZW50Lm1qcyc7XG5cbmNvbnN0IERvY3VtZW50UHJvamVjdGlvbk5vZGUgPSBjcmVhdGVQcm9qZWN0aW9uTm9kZSh7XG4gICAgYXR0YWNoUmVzaXplTGlzdGVuZXI6IChyZWYsIG5vdGlmeSkgPT4gYWRkRG9tRXZlbnQocmVmLCBcInJlc2l6ZVwiLCBub3RpZnkpLFxuICAgIG1lYXN1cmVTY3JvbGw6ICgpID0+ICh7XG4gICAgICAgIHg6IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCxcbiAgICAgICAgeTogZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fCBkb2N1bWVudC5ib2R5LnNjcm9sbFRvcCxcbiAgICB9KSxcbiAgICBjaGVja0lzU2Nyb2xsUm9vdDogKCkgPT4gdHJ1ZSxcbn0pO1xuXG5leHBvcnQgeyBEb2N1bWVudFByb2plY3Rpb25Ob2RlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HTMLProjectionNode: function() { return /* binding */ HTMLProjectionNode; },\n/* harmony export */ rootProjectionNode: function() { return /* binding */ rootProjectionNode; }\n/* harmony export */ });\n/* harmony import */ var _create_projection_node_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./create-projection-node.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs\");\n/* harmony import */ var _DocumentProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./DocumentProjectionNode.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs\");\n\n\n\nconst rootProjectionNode = {\n current: undefined,\n};\nconst HTMLProjectionNode = (0,_create_projection_node_mjs__WEBPACK_IMPORTED_MODULE_0__.createProjectionNode)({\n measureScroll: (instance) => ({\n x: instance.scrollLeft,\n y: instance.scrollTop,\n }),\n defaultParent: () => {\n if (!rootProjectionNode.current) {\n const documentNode = new _DocumentProjectionNode_mjs__WEBPACK_IMPORTED_MODULE_1__.DocumentProjectionNode({});\n documentNode.mount(window);\n documentNode.setOptions({ layoutScroll: true });\n rootProjectionNode.current = documentNode;\n }\n return rootProjectionNode.current;\n },\n resetTransform: (instance, value) => {\n instance.style.transform = value !== undefined ? value : \"none\";\n },\n checkIsScrollRoot: (instance) => Boolean(window.getComputedStyle(instance).position === \"fixed\"),\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9ub2RlL0hUTUxQcm9qZWN0aW9uTm9kZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFvRTtBQUNFOztBQUV0RTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsaUZBQW9CO0FBQy9DO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EscUNBQXFDLCtFQUFzQixHQUFHO0FBQzlEO0FBQ0Esc0NBQXNDLG9CQUFvQjtBQUMxRDtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBLENBQUM7O0FBRWlEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9ub2RlL0hUTUxQcm9qZWN0aW9uTm9kZS5tanM/YzE1YSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVQcm9qZWN0aW9uTm9kZSB9IGZyb20gJy4vY3JlYXRlLXByb2plY3Rpb24tbm9kZS5tanMnO1xuaW1wb3J0IHsgRG9jdW1lbnRQcm9qZWN0aW9uTm9kZSB9IGZyb20gJy4vRG9jdW1lbnRQcm9qZWN0aW9uTm9kZS5tanMnO1xuXG5jb25zdCByb290UHJvamVjdGlvbk5vZGUgPSB7XG4gICAgY3VycmVudDogdW5kZWZpbmVkLFxufTtcbmNvbnN0IEhUTUxQcm9qZWN0aW9uTm9kZSA9IGNyZWF0ZVByb2plY3Rpb25Ob2RlKHtcbiAgICBtZWFzdXJlU2Nyb2xsOiAoaW5zdGFuY2UpID0+ICh7XG4gICAgICAgIHg6IGluc3RhbmNlLnNjcm9sbExlZnQsXG4gICAgICAgIHk6IGluc3RhbmNlLnNjcm9sbFRvcCxcbiAgICB9KSxcbiAgICBkZWZhdWx0UGFyZW50OiAoKSA9PiB7XG4gICAgICAgIGlmICghcm9vdFByb2plY3Rpb25Ob2RlLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGRvY3VtZW50Tm9kZSA9IG5ldyBEb2N1bWVudFByb2plY3Rpb25Ob2RlKHt9KTtcbiAgICAgICAgICAgIGRvY3VtZW50Tm9kZS5tb3VudCh3aW5kb3cpO1xuICAgICAgICAgICAgZG9jdW1lbnROb2RlLnNldE9wdGlvbnMoeyBsYXlvdXRTY3JvbGw6IHRydWUgfSk7XG4gICAgICAgICAgICByb290UHJvamVjdGlvbk5vZGUuY3VycmVudCA9IGRvY3VtZW50Tm9kZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcm9vdFByb2plY3Rpb25Ob2RlLmN1cnJlbnQ7XG4gICAgfSxcbiAgICByZXNldFRyYW5zZm9ybTogKGluc3RhbmNlLCB2YWx1ZSkgPT4ge1xuICAgICAgICBpbnN0YW5jZS5zdHlsZS50cmFuc2Zvcm0gPSB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiBcIm5vbmVcIjtcbiAgICB9LFxuICAgIGNoZWNrSXNTY3JvbGxSb290OiAoaW5zdGFuY2UpID0+IEJvb2xlYW4od2luZG93LmdldENvbXB1dGVkU3R5bGUoaW5zdGFuY2UpLnBvc2l0aW9uID09PSBcImZpeGVkXCIpLFxufSk7XG5cbmV4cG9ydCB7IEhUTUxQcm9qZWN0aW9uTm9kZSwgcm9vdFByb2plY3Rpb25Ob2RlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cleanDirtyNodes: function() { return /* binding */ cleanDirtyNodes; },\n/* harmony export */ createProjectionNode: function() { return /* binding */ createProjectionNode; },\n/* harmony export */ mixAxis: function() { return /* binding */ mixAxis; },\n/* harmony export */ mixAxisDelta: function() { return /* binding */ mixAxisDelta; },\n/* harmony export */ mixBox: function() { return /* binding */ mixBox; },\n/* harmony export */ propagateDirtyNodes: function() { return /* binding */ propagateDirtyNodes; }\n/* harmony export */ });\n/* harmony import */ var _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/subscription-manager.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs\");\n/* harmony import */ var _animation_mix_values_mjs__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../animation/mix-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs\");\n/* harmony import */ var _geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../geometry/copy.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs\");\n/* harmony import */ var _geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../geometry/delta-apply.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs\");\n/* harmony import */ var _geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../geometry/delta-calc.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs\");\n/* harmony import */ var _geometry_delta_remove_mjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../geometry/delta-remove.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs\");\n/* harmony import */ var _geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../geometry/models.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs\");\n/* harmony import */ var _animation_utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../animation/utils/transitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/transitions.mjs\");\n/* harmony import */ var _geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../geometry/utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs\");\n/* harmony import */ var _shared_stack_mjs__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../shared/stack.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/shared/stack.mjs\");\n/* harmony import */ var _styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../styles/scale-correction.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs\");\n/* harmony import */ var _styles_transform_mjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../styles/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/transform.mjs\");\n/* harmony import */ var _utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../utils/each-axis.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs\");\n/* harmony import */ var _utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../utils/has-transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs\");\n/* harmony import */ var _render_utils_flat_tree_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../render/utils/flat-tree.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs\");\n/* harmony import */ var _value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../../value/utils/resolve-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs\");\n/* harmony import */ var _state_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/state.mjs\");\n/* harmony import */ var _utils_delay_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/delay.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/delay.mjs\");\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _debug_record_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../debug/record.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/debug/record.mjs\");\n/* harmony import */ var _render_dom_utils_is_svg_element_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../render/dom/utils/is-svg-element.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs\");\n/* harmony import */ var _animation_interfaces_single_value_mjs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../../animation/interfaces/single-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs\");\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst transformAxes = [\"\", \"X\", \"Y\", \"Z\"];\nconst hiddenVisibility = { visibility: \"hidden\" };\n/**\n * We use 1000 as the animation target as 0-1000 maps better to pixels than 0-1\n * which has a noticeable difference in spring animations\n */\nconst animationTarget = 1000;\nlet id = 0;\n/**\n * Use a mutable data object for debug data so as to not create a new\n * object every frame.\n */\nconst projectionFrameData = {\n type: \"projectionFrame\",\n totalNodes: 0,\n resolvedTargetDeltas: 0,\n recalculatedProjection: 0,\n};\nfunction createProjectionNode({ attachResizeListener, defaultParent, measureScroll, checkIsScrollRoot, resetTransform, }) {\n return class ProjectionNode {\n constructor(latestValues = {}, parent = defaultParent === null || defaultParent === void 0 ? void 0 : defaultParent()) {\n /**\n * A unique ID generated for every projection node.\n */\n this.id = id++;\n /**\n * An id that represents a unique session instigated by startUpdate.\n */\n this.animationId = 0;\n /**\n * A Set containing all this component's children. This is used to iterate\n * through the children.\n *\n * TODO: This could be faster to iterate as a flat array stored on the root node.\n */\n this.children = new Set();\n /**\n * Options for the node. We use this to configure what kind of layout animations\n * we should perform (if any).\n */\n this.options = {};\n /**\n * We use this to detect when its safe to shut down part of a projection tree.\n * We have to keep projecting children for scale correction and relative projection\n * until all their parents stop performing layout animations.\n */\n this.isTreeAnimating = false;\n this.isAnimationBlocked = false;\n /**\n * Flag to true if we think this layout has been changed. We can't always know this,\n * currently we set it to true every time a component renders, or if it has a layoutDependency\n * if that has changed between renders. Additionally, components can be grouped by LayoutGroup\n * and if one node is dirtied, they all are.\n */\n this.isLayoutDirty = false;\n /**\n * Flag to true if we think the projection calculations for this node needs\n * recalculating as a result of an updated transform or layout animation.\n */\n this.isProjectionDirty = false;\n /**\n * Flag to true if the layout *or* transform has changed. This then gets propagated\n * throughout the projection tree, forcing any element below to recalculate on the next frame.\n */\n this.isSharedProjectionDirty = false;\n /**\n * Flag transform dirty. This gets propagated throughout the whole tree but is only\n * respected by shared nodes.\n */\n this.isTransformDirty = false;\n /**\n * Block layout updates for instant layout transitions throughout the tree.\n */\n this.updateManuallyBlocked = false;\n this.updateBlockedByResize = false;\n /**\n * Set to true between the start of the first `willUpdate` call and the end of the `didUpdate`\n * call.\n */\n this.isUpdating = false;\n /**\n * If this is an SVG element we currently disable projection transforms\n */\n this.isSVG = false;\n /**\n * Flag to true (during promotion) if a node doing an instant layout transition needs to reset\n * its projection styles.\n */\n this.needsReset = false;\n /**\n * Flags whether this node should have its transform reset prior to measuring.\n */\n this.shouldResetTransform = false;\n /**\n * An object representing the calculated contextual/accumulated/tree scale.\n * This will be used to scale calculcated projection transforms, as these are\n * calculated in screen-space but need to be scaled for elements to layoutly\n * make it to their calculated destinations.\n *\n * TODO: Lazy-init\n */\n this.treeScale = { x: 1, y: 1 };\n /**\n *\n */\n this.eventHandlers = new Map();\n this.hasTreeAnimated = false;\n // Note: Currently only running on root node\n this.updateScheduled = false;\n this.projectionUpdateScheduled = false;\n this.checkUpdateFailed = () => {\n if (this.isUpdating) {\n this.isUpdating = false;\n this.clearAllSnapshots();\n }\n };\n /**\n * This is a multi-step process as shared nodes might be of different depths. Nodes\n * are sorted by depth order, so we need to resolve the entire tree before moving to\n * the next step.\n */\n this.updateProjection = () => {\n this.projectionUpdateScheduled = false;\n /**\n * Reset debug counts. Manually resetting rather than creating a new\n * object each frame.\n */\n projectionFrameData.totalNodes =\n projectionFrameData.resolvedTargetDeltas =\n projectionFrameData.recalculatedProjection =\n 0;\n this.nodes.forEach(propagateDirtyNodes);\n this.nodes.forEach(resolveTargetDelta);\n this.nodes.forEach(calcProjection);\n this.nodes.forEach(cleanDirtyNodes);\n (0,_debug_record_mjs__WEBPACK_IMPORTED_MODULE_0__.record)(projectionFrameData);\n };\n this.hasProjected = false;\n this.isVisible = true;\n this.animationProgress = 0;\n /**\n * Shared layout\n */\n // TODO Only running on root node\n this.sharedNodes = new Map();\n this.latestValues = latestValues;\n this.root = parent ? parent.root || parent : this;\n this.path = parent ? [...parent.path, parent] : [];\n this.parent = parent;\n this.depth = parent ? parent.depth + 1 : 0;\n for (let i = 0; i < this.path.length; i++) {\n this.path[i].shouldResetTransform = true;\n }\n if (this.root === this)\n this.nodes = new _render_utils_flat_tree_mjs__WEBPACK_IMPORTED_MODULE_1__.FlatTree();\n }\n addEventListener(name, handler) {\n if (!this.eventHandlers.has(name)) {\n this.eventHandlers.set(name, new _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_2__.SubscriptionManager());\n }\n return this.eventHandlers.get(name).add(handler);\n }\n notifyListeners(name, ...args) {\n const subscriptionManager = this.eventHandlers.get(name);\n subscriptionManager && subscriptionManager.notify(...args);\n }\n hasListeners(name) {\n return this.eventHandlers.has(name);\n }\n /**\n * Lifecycles\n */\n mount(instance, isLayoutDirty = this.root.hasTreeAnimated) {\n if (this.instance)\n return;\n this.isSVG = (0,_render_dom_utils_is_svg_element_mjs__WEBPACK_IMPORTED_MODULE_3__.isSVGElement)(instance);\n this.instance = instance;\n const { layoutId, layout, visualElement } = this.options;\n if (visualElement && !visualElement.current) {\n visualElement.mount(instance);\n }\n this.root.nodes.add(this);\n this.parent && this.parent.children.add(this);\n if (isLayoutDirty && (layout || layoutId)) {\n this.isLayoutDirty = true;\n }\n if (attachResizeListener) {\n let cancelDelay;\n const resizeUnblockUpdate = () => (this.root.updateBlockedByResize = false);\n attachResizeListener(instance, () => {\n this.root.updateBlockedByResize = true;\n cancelDelay && cancelDelay();\n cancelDelay = (0,_utils_delay_mjs__WEBPACK_IMPORTED_MODULE_4__.delay)(resizeUnblockUpdate, 250);\n if (_state_mjs__WEBPACK_IMPORTED_MODULE_5__.globalProjectionState.hasAnimatedSinceResize) {\n _state_mjs__WEBPACK_IMPORTED_MODULE_5__.globalProjectionState.hasAnimatedSinceResize = false;\n this.nodes.forEach(finishAnimation);\n }\n });\n }\n if (layoutId) {\n this.root.registerSharedNode(layoutId, this);\n }\n // Only register the handler if it requires layout animation\n if (this.options.animate !== false &&\n visualElement &&\n (layoutId || layout)) {\n this.addEventListener(\"didUpdate\", ({ delta, hasLayoutChanged, hasRelativeTargetChanged, layout: newLayout, }) => {\n if (this.isTreeAnimationBlocked()) {\n this.target = undefined;\n this.relativeTarget = undefined;\n return;\n }\n // TODO: Check here if an animation exists\n const layoutTransition = this.options.transition ||\n visualElement.getDefaultTransition() ||\n defaultLayoutTransition;\n const { onLayoutAnimationStart, onLayoutAnimationComplete, } = visualElement.getProps();\n /**\n * The target layout of the element might stay the same,\n * but its position relative to its parent has changed.\n */\n const targetChanged = !this.targetLayout ||\n !(0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.boxEqualsRounded)(this.targetLayout, newLayout) ||\n hasRelativeTargetChanged;\n /**\n * If the layout hasn't seemed to have changed, it might be that the\n * element is visually in the same place in the document but its position\n * relative to its parent has indeed changed. So here we check for that.\n */\n const hasOnlyRelativeTargetChanged = !hasLayoutChanged && hasRelativeTargetChanged;\n if (this.options.layoutRoot ||\n (this.resumeFrom && this.resumeFrom.instance) ||\n hasOnlyRelativeTargetChanged ||\n (hasLayoutChanged &&\n (targetChanged || !this.currentAnimation))) {\n if (this.resumeFrom) {\n this.resumingFrom = this.resumeFrom;\n this.resumingFrom.resumingFrom = undefined;\n }\n this.setAnimationOrigin(delta, hasOnlyRelativeTargetChanged);\n const animationOptions = {\n ...(0,_animation_utils_transitions_mjs__WEBPACK_IMPORTED_MODULE_7__.getValueTransition)(layoutTransition, \"layout\"),\n onPlay: onLayoutAnimationStart,\n onComplete: onLayoutAnimationComplete,\n };\n if (visualElement.shouldReduceMotion ||\n this.options.layoutRoot) {\n animationOptions.delay = 0;\n animationOptions.type = false;\n }\n this.startAnimation(animationOptions);\n }\n else {\n /**\n * If the layout hasn't changed and we have an animation that hasn't started yet,\n * finish it immediately. Otherwise it will be animating from a location\n * that was probably never commited to screen and look like a jumpy box.\n */\n if (!hasLayoutChanged) {\n finishAnimation(this);\n }\n if (this.isLead() && this.options.onExitComplete) {\n this.options.onExitComplete();\n }\n }\n this.targetLayout = newLayout;\n });\n }\n }\n unmount() {\n this.options.layoutId && this.willUpdate();\n this.root.nodes.remove(this);\n const stack = this.getStack();\n stack && stack.remove(this);\n this.parent && this.parent.children.delete(this);\n this.instance = undefined;\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.cancelFrame)(this.updateProjection);\n }\n // only on the root\n blockUpdate() {\n this.updateManuallyBlocked = true;\n }\n unblockUpdate() {\n this.updateManuallyBlocked = false;\n }\n isUpdateBlocked() {\n return this.updateManuallyBlocked || this.updateBlockedByResize;\n }\n isTreeAnimationBlocked() {\n return (this.isAnimationBlocked ||\n (this.parent && this.parent.isTreeAnimationBlocked()) ||\n false);\n }\n // Note: currently only running on root node\n startUpdate() {\n if (this.isUpdateBlocked())\n return;\n this.isUpdating = true;\n this.nodes && this.nodes.forEach(resetRotation);\n this.animationId++;\n }\n getTransformTemplate() {\n const { visualElement } = this.options;\n return visualElement && visualElement.getProps().transformTemplate;\n }\n willUpdate(shouldNotifyListeners = true) {\n this.root.hasTreeAnimated = true;\n if (this.root.isUpdateBlocked()) {\n this.options.onExitComplete && this.options.onExitComplete();\n return;\n }\n !this.root.isUpdating && this.root.startUpdate();\n if (this.isLayoutDirty)\n return;\n this.isLayoutDirty = true;\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n node.shouldResetTransform = true;\n node.updateScroll(\"snapshot\");\n if (node.options.layoutRoot) {\n node.willUpdate(false);\n }\n }\n const { layoutId, layout } = this.options;\n if (layoutId === undefined && !layout)\n return;\n const transformTemplate = this.getTransformTemplate();\n this.prevTransformTemplateValue = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : undefined;\n this.updateSnapshot();\n shouldNotifyListeners && this.notifyListeners(\"willUpdate\");\n }\n update() {\n this.updateScheduled = false;\n const updateWasBlocked = this.isUpdateBlocked();\n // When doing an instant transition, we skip the layout update,\n // but should still clean up the measurements so that the next\n // snapshot could be taken correctly.\n if (updateWasBlocked) {\n this.unblockUpdate();\n this.clearAllSnapshots();\n this.nodes.forEach(clearMeasurements);\n return;\n }\n if (!this.isUpdating) {\n this.nodes.forEach(clearIsLayoutDirty);\n }\n this.isUpdating = false;\n /**\n * Write\n */\n this.nodes.forEach(resetTransformStyle);\n /**\n * Read ==================\n */\n // Update layout measurements of updated children\n this.nodes.forEach(updateLayout);\n /**\n * Write\n */\n // Notify listeners that the layout is updated\n this.nodes.forEach(notifyLayoutUpdate);\n this.clearAllSnapshots();\n /**\n * Manually flush any pending updates. Ideally\n * we could leave this to the following requestAnimationFrame but this seems\n * to leave a flash of incorrectly styled content.\n */\n const now = performance.now();\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.delta = (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_9__.clamp)(0, 1000 / 60, now - _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.timestamp);\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.timestamp = now;\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.isProcessing = true;\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.steps.update.process(_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData);\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.steps.preRender.process(_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData);\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.steps.render.process(_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData);\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.isProcessing = false;\n }\n didUpdate() {\n if (!this.updateScheduled) {\n this.updateScheduled = true;\n queueMicrotask(() => this.update());\n }\n }\n clearAllSnapshots() {\n this.nodes.forEach(clearSnapshot);\n this.sharedNodes.forEach(removeLeadSnapshots);\n }\n scheduleUpdateProjection() {\n if (!this.projectionUpdateScheduled) {\n this.projectionUpdateScheduled = true;\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frame.preRender(this.updateProjection, false, true);\n }\n }\n scheduleCheckAfterUnmount() {\n /**\n * If the unmounting node is in a layoutGroup and did trigger a willUpdate,\n * we manually call didUpdate to give a chance to the siblings to animate.\n * Otherwise, cleanup all snapshots to prevents future nodes from reusing them.\n */\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frame.postRender(() => {\n if (this.isLayoutDirty) {\n this.root.didUpdate();\n }\n else {\n this.root.checkUpdateFailed();\n }\n });\n }\n /**\n * Update measurements\n */\n updateSnapshot() {\n if (this.snapshot || !this.instance)\n return;\n this.snapshot = this.measure();\n }\n updateLayout() {\n if (!this.instance)\n return;\n // TODO: Incorporate into a forwarded scroll offset\n this.updateScroll();\n if (!(this.options.alwaysMeasureLayout && this.isLead()) &&\n !this.isLayoutDirty) {\n return;\n }\n /**\n * When a node is mounted, it simply resumes from the prevLead's\n * snapshot instead of taking a new one, but the ancestors scroll\n * might have updated while the prevLead is unmounted. We need to\n * update the scroll again to make sure the layout we measure is\n * up to date.\n */\n if (this.resumeFrom && !this.resumeFrom.instance) {\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n node.updateScroll();\n }\n }\n const prevLayout = this.layout;\n this.layout = this.measure(false);\n this.layoutCorrected = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n this.isLayoutDirty = false;\n this.projectionDelta = undefined;\n this.notifyListeners(\"measure\", this.layout.layoutBox);\n const { visualElement } = this.options;\n visualElement &&\n visualElement.notify(\"LayoutMeasure\", this.layout.layoutBox, prevLayout ? prevLayout.layoutBox : undefined);\n }\n updateScroll(phase = \"measure\") {\n let needsMeasurement = Boolean(this.options.layoutScroll && this.instance);\n if (this.scroll &&\n this.scroll.animationId === this.root.animationId &&\n this.scroll.phase === phase) {\n needsMeasurement = false;\n }\n if (needsMeasurement) {\n this.scroll = {\n animationId: this.root.animationId,\n phase,\n isRoot: checkIsScrollRoot(this.instance),\n offset: measureScroll(this.instance),\n };\n }\n }\n resetTransform() {\n if (!resetTransform)\n return;\n const isResetRequested = this.isLayoutDirty || this.shouldResetTransform;\n const hasProjection = this.projectionDelta && !(0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.isDeltaZero)(this.projectionDelta);\n const transformTemplate = this.getTransformTemplate();\n const transformTemplateValue = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : undefined;\n const transformTemplateHasChanged = transformTemplateValue !== this.prevTransformTemplateValue;\n if (isResetRequested &&\n (hasProjection ||\n (0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(this.latestValues) ||\n transformTemplateHasChanged)) {\n resetTransform(this.instance, transformTemplateValue);\n this.shouldResetTransform = false;\n this.scheduleRender();\n }\n }\n measure(removeTransform = true) {\n const pageBox = this.measurePageBox();\n let layoutBox = this.removeElementScroll(pageBox);\n /**\n * Measurements taken during the pre-render stage\n * still have transforms applied so we remove them\n * via calculation.\n */\n if (removeTransform) {\n layoutBox = this.removeTransform(layoutBox);\n }\n roundBox(layoutBox);\n return {\n animationId: this.root.animationId,\n measuredBox: pageBox,\n layoutBox,\n latestValues: {},\n source: this.id,\n };\n }\n measurePageBox() {\n const { visualElement } = this.options;\n if (!visualElement)\n return (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n const box = visualElement.measureViewportBox();\n // Remove viewport scroll to give page-relative coordinates\n const { scroll } = this.root;\n if (scroll) {\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(box.x, scroll.offset.x);\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(box.y, scroll.offset.y);\n }\n return box;\n }\n removeElementScroll(box) {\n const boxWithoutScroll = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(boxWithoutScroll, box);\n /**\n * Performance TODO: Keep a cumulative scroll offset down the tree\n * rather than loop back up the path.\n */\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n const { scroll, options } = node;\n if (node !== this.root && scroll && options.layoutScroll) {\n /**\n * If this is a new scroll root, we want to remove all previous scrolls\n * from the viewport box.\n */\n if (scroll.isRoot) {\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(boxWithoutScroll, box);\n const { scroll: rootScroll } = this.root;\n /**\n * Undo the application of page scroll that was originally added\n * to the measured bounding box.\n */\n if (rootScroll) {\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(boxWithoutScroll.x, -rootScroll.offset.x);\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(boxWithoutScroll.y, -rootScroll.offset.y);\n }\n }\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(boxWithoutScroll.x, scroll.offset.x);\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.translateAxis)(boxWithoutScroll.y, scroll.offset.y);\n }\n }\n return boxWithoutScroll;\n }\n applyTransform(box, transformOnly = false) {\n const withTransforms = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(withTransforms, box);\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n if (!transformOnly &&\n node.options.layoutScroll &&\n node.scroll &&\n node !== node.root) {\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.transformBox)(withTransforms, {\n x: -node.scroll.offset.x,\n y: -node.scroll.offset.y,\n });\n }\n if (!(0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(node.latestValues))\n continue;\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.transformBox)(withTransforms, node.latestValues);\n }\n if ((0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(this.latestValues)) {\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.transformBox)(withTransforms, this.latestValues);\n }\n return withTransforms;\n }\n removeTransform(box) {\n const boxWithoutTransform = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(boxWithoutTransform, box);\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n if (!node.instance)\n continue;\n if (!(0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(node.latestValues))\n continue;\n (0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasScale)(node.latestValues) && node.updateSnapshot();\n const sourceBox = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n const nodeBox = node.measurePageBox();\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(sourceBox, nodeBox);\n (0,_geometry_delta_remove_mjs__WEBPACK_IMPORTED_MODULE_14__.removeBoxTransforms)(boxWithoutTransform, node.latestValues, node.snapshot ? node.snapshot.layoutBox : undefined, sourceBox);\n }\n if ((0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(this.latestValues)) {\n (0,_geometry_delta_remove_mjs__WEBPACK_IMPORTED_MODULE_14__.removeBoxTransforms)(boxWithoutTransform, this.latestValues);\n }\n return boxWithoutTransform;\n }\n setTargetDelta(delta) {\n this.targetDelta = delta;\n this.root.scheduleUpdateProjection();\n this.isProjectionDirty = true;\n }\n setOptions(options) {\n this.options = {\n ...this.options,\n ...options,\n crossfade: options.crossfade !== undefined ? options.crossfade : true,\n };\n }\n clearMeasurements() {\n this.scroll = undefined;\n this.layout = undefined;\n this.snapshot = undefined;\n this.prevTransformTemplateValue = undefined;\n this.targetDelta = undefined;\n this.target = undefined;\n this.isLayoutDirty = false;\n }\n forceRelativeParentToResolveTarget() {\n if (!this.relativeParent)\n return;\n /**\n * If the parent target isn't up-to-date, force it to update.\n * This is an unfortunate de-optimisation as it means any updating relative\n * projection will cause all the relative parents to recalculate back\n * up the tree.\n */\n if (this.relativeParent.resolvedRelativeTargetAt !==\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.timestamp) {\n this.relativeParent.resolveTargetDelta(true);\n }\n }\n resolveTargetDelta(forceRecalculation = false) {\n var _a;\n /**\n * Once the dirty status of nodes has been spread through the tree, we also\n * need to check if we have a shared node of a different depth that has itself\n * been dirtied.\n */\n const lead = this.getLead();\n this.isProjectionDirty || (this.isProjectionDirty = lead.isProjectionDirty);\n this.isTransformDirty || (this.isTransformDirty = lead.isTransformDirty);\n this.isSharedProjectionDirty || (this.isSharedProjectionDirty = lead.isSharedProjectionDirty);\n const isShared = Boolean(this.resumingFrom) || this !== lead;\n /**\n * We don't use transform for this step of processing so we don't\n * need to check whether any nodes have changed transform.\n */\n const canSkip = !(forceRecalculation ||\n (isShared && this.isSharedProjectionDirty) ||\n this.isProjectionDirty ||\n ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isProjectionDirty) ||\n this.attemptToResolveRelativeTarget);\n if (canSkip)\n return;\n const { layout, layoutId } = this.options;\n /**\n * If we have no layout, we can't perform projection, so early return\n */\n if (!this.layout || !(layout || layoutId))\n return;\n this.resolvedRelativeTargetAt = _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.timestamp;\n /**\n * If we don't have a targetDelta but do have a layout, we can attempt to resolve\n * a relativeParent. This will allow a component to perform scale correction\n * even if no animation has started.\n */\n // TODO If this is unsuccessful this currently happens every frame\n if (!this.targetDelta && !this.relativeTarget) {\n // TODO: This is a semi-repetition of further down this function, make DRY\n const relativeParent = this.getClosestProjectingParent();\n if (relativeParent &&\n relativeParent.layout &&\n this.animationProgress !== 1) {\n this.relativeParent = relativeParent;\n this.forceRelativeParentToResolveTarget();\n this.relativeTarget = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n this.relativeTargetOrigin = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativePosition)(this.relativeTargetOrigin, this.layout.layoutBox, relativeParent.layout.layoutBox);\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(this.relativeTarget, this.relativeTargetOrigin);\n }\n else {\n this.relativeParent = this.relativeTarget = undefined;\n }\n }\n /**\n * If we have no relative target or no target delta our target isn't valid\n * for this frame.\n */\n if (!this.relativeTarget && !this.targetDelta)\n return;\n /**\n * Lazy-init target data structure\n */\n if (!this.target) {\n this.target = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n this.targetWithTransforms = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n }\n /**\n * If we've got a relative box for this component, resolve it into a target relative to the parent.\n */\n if (this.relativeTarget &&\n this.relativeTargetOrigin &&\n this.relativeParent &&\n this.relativeParent.target) {\n this.forceRelativeParentToResolveTarget();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativeBox)(this.target, this.relativeTarget, this.relativeParent.target);\n /**\n * If we've only got a targetDelta, resolve it into a target\n */\n }\n else if (this.targetDelta) {\n if (Boolean(this.resumingFrom)) {\n // TODO: This is creating a new object every frame\n this.target = this.applyTransform(this.layout.layoutBox);\n }\n else {\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(this.target, this.layout.layoutBox);\n }\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.applyBoxDelta)(this.target, this.targetDelta);\n }\n else {\n /**\n * If no target, use own layout as target\n */\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(this.target, this.layout.layoutBox);\n }\n /**\n * If we've been told to attempt to resolve a relative target, do so.\n */\n if (this.attemptToResolveRelativeTarget) {\n this.attemptToResolveRelativeTarget = false;\n const relativeParent = this.getClosestProjectingParent();\n if (relativeParent &&\n Boolean(relativeParent.resumingFrom) ===\n Boolean(this.resumingFrom) &&\n !relativeParent.options.layoutScroll &&\n relativeParent.target &&\n this.animationProgress !== 1) {\n this.relativeParent = relativeParent;\n this.forceRelativeParentToResolveTarget();\n this.relativeTarget = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n this.relativeTargetOrigin = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativePosition)(this.relativeTargetOrigin, this.target, relativeParent.target);\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(this.relativeTarget, this.relativeTargetOrigin);\n }\n else {\n this.relativeParent = this.relativeTarget = undefined;\n }\n }\n /**\n * Increase debug counter for resolved target deltas\n */\n projectionFrameData.resolvedTargetDeltas++;\n }\n getClosestProjectingParent() {\n if (!this.parent ||\n (0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasScale)(this.parent.latestValues) ||\n (0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.has2DTranslate)(this.parent.latestValues)) {\n return undefined;\n }\n if (this.parent.isProjecting()) {\n return this.parent;\n }\n else {\n return this.parent.getClosestProjectingParent();\n }\n }\n isProjecting() {\n return Boolean((this.relativeTarget ||\n this.targetDelta ||\n this.options.layoutRoot) &&\n this.layout);\n }\n calcProjection() {\n var _a;\n const lead = this.getLead();\n const isShared = Boolean(this.resumingFrom) || this !== lead;\n let canSkip = true;\n /**\n * If this is a normal layout animation and neither this node nor its nearest projecting\n * is dirty then we can't skip.\n */\n if (this.isProjectionDirty || ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isProjectionDirty)) {\n canSkip = false;\n }\n /**\n * If this is a shared layout animation and this node's shared projection is dirty then\n * we can't skip.\n */\n if (isShared &&\n (this.isSharedProjectionDirty || this.isTransformDirty)) {\n canSkip = false;\n }\n /**\n * If we have resolved the target this frame we must recalculate the\n * projection to ensure it visually represents the internal calculations.\n */\n if (this.resolvedRelativeTargetAt === _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frameData.timestamp) {\n canSkip = false;\n }\n if (canSkip)\n return;\n const { layout, layoutId } = this.options;\n /**\n * If this section of the tree isn't animating we can\n * delete our target sources for the following frame.\n */\n this.isTreeAnimating = Boolean((this.parent && this.parent.isTreeAnimating) ||\n this.currentAnimation ||\n this.pendingAnimation);\n if (!this.isTreeAnimating) {\n this.targetDelta = this.relativeTarget = undefined;\n }\n if (!this.layout || !(layout || layoutId))\n return;\n /**\n * Reset the corrected box with the latest values from box, as we're then going\n * to perform mutative operations on it.\n */\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(this.layoutCorrected, this.layout.layoutBox);\n /**\n * Record previous tree scales before updating.\n */\n const prevTreeScaleX = this.treeScale.x;\n const prevTreeScaleY = this.treeScale.y;\n /**\n * Apply all the parent deltas to this box to produce the corrected box. This\n * is the layout box, as it will appear on screen as a result of the transforms of its parents.\n */\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.applyTreeDeltas)(this.layoutCorrected, this.treeScale, this.path, isShared);\n /**\n * If this layer needs to perform scale correction but doesn't have a target,\n * use the layout as the target.\n */\n if (lead.layout &&\n !lead.target &&\n (this.treeScale.x !== 1 || this.treeScale.y !== 1)) {\n lead.target = lead.layout.layoutBox;\n }\n const { target } = lead;\n if (!target) {\n /**\n * If we don't have a target to project into, but we were previously\n * projecting, we want to remove the stored transform and schedule\n * a render to ensure the elements reflect the removed transform.\n */\n if (this.projectionTransform) {\n this.projectionDelta = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n this.projectionTransform = \"none\";\n this.scheduleRender();\n }\n return;\n }\n if (!this.projectionDelta) {\n this.projectionDelta = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n this.projectionDeltaWithTransform = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n }\n const prevProjectionTransform = this.projectionTransform;\n /**\n * Update the delta between the corrected box and the target box before user-set transforms were applied.\n * This will allow us to calculate the corrected borderRadius and boxShadow to compensate\n * for our layout reprojection, but still allow them to be scaled correctly by the user.\n * It might be that to simplify this we may want to accept that user-set scale is also corrected\n * and we wouldn't have to keep and calc both deltas, OR we could support a user setting\n * to allow people to choose whether these styles are corrected based on just the\n * layout reprojection or the final bounding box.\n */\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcBoxDelta)(this.projectionDelta, this.layoutCorrected, target, this.latestValues);\n this.projectionTransform = (0,_styles_transform_mjs__WEBPACK_IMPORTED_MODULE_16__.buildProjectionTransform)(this.projectionDelta, this.treeScale);\n if (this.projectionTransform !== prevProjectionTransform ||\n this.treeScale.x !== prevTreeScaleX ||\n this.treeScale.y !== prevTreeScaleY) {\n this.hasProjected = true;\n this.scheduleRender();\n this.notifyListeners(\"projectionUpdate\", target);\n }\n /**\n * Increase debug counter for recalculated projections\n */\n projectionFrameData.recalculatedProjection++;\n }\n hide() {\n this.isVisible = false;\n // TODO: Schedule render\n }\n show() {\n this.isVisible = true;\n // TODO: Schedule render\n }\n scheduleRender(notifyAll = true) {\n this.options.scheduleRender && this.options.scheduleRender();\n if (notifyAll) {\n const stack = this.getStack();\n stack && stack.scheduleRender();\n }\n if (this.resumingFrom && !this.resumingFrom.instance) {\n this.resumingFrom = undefined;\n }\n }\n setAnimationOrigin(delta, hasOnlyRelativeTargetChanged = false) {\n const snapshot = this.snapshot;\n const snapshotLatestValues = snapshot\n ? snapshot.latestValues\n : {};\n const mixedValues = { ...this.latestValues };\n const targetDelta = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n if (!this.relativeParent ||\n !this.relativeParent.options.layoutRoot) {\n this.relativeTarget = this.relativeTargetOrigin = undefined;\n }\n this.attemptToResolveRelativeTarget = !hasOnlyRelativeTargetChanged;\n const relativeLayout = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n const snapshotSource = snapshot ? snapshot.source : undefined;\n const layoutSource = this.layout ? this.layout.source : undefined;\n const isSharedLayoutAnimation = snapshotSource !== layoutSource;\n const stack = this.getStack();\n const isOnlyMember = !stack || stack.members.length <= 1;\n const shouldCrossfadeOpacity = Boolean(isSharedLayoutAnimation &&\n !isOnlyMember &&\n this.options.crossfade === true &&\n !this.path.some(hasOpacityCrossfade));\n this.animationProgress = 0;\n let prevRelativeTarget;\n this.mixTargetDelta = (latest) => {\n const progress = latest / 1000;\n mixAxisDelta(targetDelta.x, delta.x, progress);\n mixAxisDelta(targetDelta.y, delta.y, progress);\n this.setTargetDelta(targetDelta);\n if (this.relativeTarget &&\n this.relativeTargetOrigin &&\n this.layout &&\n this.relativeParent &&\n this.relativeParent.layout) {\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativePosition)(relativeLayout, this.layout.layoutBox, this.relativeParent.layout.layoutBox);\n mixBox(this.relativeTarget, this.relativeTargetOrigin, relativeLayout, progress);\n /**\n * If this is an unchanged relative target we can consider the\n * projection not dirty.\n */\n if (prevRelativeTarget &&\n (0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.boxEquals)(this.relativeTarget, prevRelativeTarget)) {\n this.isProjectionDirty = false;\n }\n if (!prevRelativeTarget)\n prevRelativeTarget = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(prevRelativeTarget, this.relativeTarget);\n }\n if (isSharedLayoutAnimation) {\n this.animationValues = mixedValues;\n (0,_animation_mix_values_mjs__WEBPACK_IMPORTED_MODULE_17__.mixValues)(mixedValues, snapshotLatestValues, this.latestValues, progress, shouldCrossfadeOpacity, isOnlyMember);\n }\n this.root.scheduleUpdateProjection();\n this.scheduleRender();\n this.animationProgress = progress;\n };\n this.mixTargetDelta(this.options.layoutRoot ? 1000 : 0);\n }\n startAnimation(options) {\n this.notifyListeners(\"animationStart\");\n this.currentAnimation && this.currentAnimation.stop();\n if (this.resumingFrom && this.resumingFrom.currentAnimation) {\n this.resumingFrom.currentAnimation.stop();\n }\n if (this.pendingAnimation) {\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.cancelFrame)(this.pendingAnimation);\n this.pendingAnimation = undefined;\n }\n /**\n * Start the animation in the next frame to have a frame with progress 0,\n * where the target is the same as when the animation started, so we can\n * calculate the relative positions correctly for instant transitions.\n */\n this.pendingAnimation = _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_8__.frame.update(() => {\n _state_mjs__WEBPACK_IMPORTED_MODULE_5__.globalProjectionState.hasAnimatedSinceResize = true;\n this.currentAnimation = (0,_animation_interfaces_single_value_mjs__WEBPACK_IMPORTED_MODULE_18__.animateSingleValue)(0, animationTarget, {\n ...options,\n onUpdate: (latest) => {\n this.mixTargetDelta(latest);\n options.onUpdate && options.onUpdate(latest);\n },\n onComplete: () => {\n options.onComplete && options.onComplete();\n this.completeAnimation();\n },\n });\n if (this.resumingFrom) {\n this.resumingFrom.currentAnimation = this.currentAnimation;\n }\n this.pendingAnimation = undefined;\n });\n }\n completeAnimation() {\n if (this.resumingFrom) {\n this.resumingFrom.currentAnimation = undefined;\n this.resumingFrom.preserveOpacity = undefined;\n }\n const stack = this.getStack();\n stack && stack.exitAnimationComplete();\n this.resumingFrom =\n this.currentAnimation =\n this.animationValues =\n undefined;\n this.notifyListeners(\"animationComplete\");\n }\n finishAnimation() {\n if (this.currentAnimation) {\n this.mixTargetDelta && this.mixTargetDelta(animationTarget);\n this.currentAnimation.stop();\n }\n this.completeAnimation();\n }\n applyTransformsToTarget() {\n const lead = this.getLead();\n let { targetWithTransforms, target, layout, latestValues } = lead;\n if (!targetWithTransforms || !target || !layout)\n return;\n /**\n * If we're only animating position, and this element isn't the lead element,\n * then instead of projecting into the lead box we instead want to calculate\n * a new target that aligns the two boxes but maintains the layout shape.\n */\n if (this !== lead &&\n this.layout &&\n layout &&\n shouldAnimatePositionOnly(this.options.animationType, this.layout.layoutBox, layout.layoutBox)) {\n target = this.target || (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n const xLength = (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcLength)(this.layout.layoutBox.x);\n target.x.min = lead.target.x.min;\n target.x.max = target.x.min + xLength;\n const yLength = (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcLength)(this.layout.layoutBox.y);\n target.y.min = lead.target.y.min;\n target.y.max = target.y.min + yLength;\n }\n (0,_geometry_copy_mjs__WEBPACK_IMPORTED_MODULE_13__.copyBoxInto)(targetWithTransforms, target);\n /**\n * Apply the latest user-set transforms to the targetBox to produce the targetBoxFinal.\n * This is the final box that we will then project into by calculating a transform delta and\n * applying it to the corrected box.\n */\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_12__.transformBox)(targetWithTransforms, latestValues);\n /**\n * Update the delta between the corrected box and the final target box, after\n * user-set transforms are applied to it. This will be used by the renderer to\n * create a transform style that will reproject the element from its layout layout\n * into the desired bounding box.\n */\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcBoxDelta)(this.projectionDeltaWithTransform, this.layoutCorrected, targetWithTransforms, latestValues);\n }\n registerSharedNode(layoutId, node) {\n if (!this.sharedNodes.has(layoutId)) {\n this.sharedNodes.set(layoutId, new _shared_stack_mjs__WEBPACK_IMPORTED_MODULE_19__.NodeStack());\n }\n const stack = this.sharedNodes.get(layoutId);\n stack.add(node);\n const config = node.options.initialPromotionConfig;\n node.promote({\n transition: config ? config.transition : undefined,\n preserveFollowOpacity: config && config.shouldPreserveFollowOpacity\n ? config.shouldPreserveFollowOpacity(node)\n : undefined,\n });\n }\n isLead() {\n const stack = this.getStack();\n return stack ? stack.lead === this : true;\n }\n getLead() {\n var _a;\n const { layoutId } = this.options;\n return layoutId ? ((_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.lead) || this : this;\n }\n getPrevLead() {\n var _a;\n const { layoutId } = this.options;\n return layoutId ? (_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.prevLead : undefined;\n }\n getStack() {\n const { layoutId } = this.options;\n if (layoutId)\n return this.root.sharedNodes.get(layoutId);\n }\n promote({ needsReset, transition, preserveFollowOpacity, } = {}) {\n const stack = this.getStack();\n if (stack)\n stack.promote(this, preserveFollowOpacity);\n if (needsReset) {\n this.projectionDelta = undefined;\n this.needsReset = true;\n }\n if (transition)\n this.setOptions({ transition });\n }\n relegate() {\n const stack = this.getStack();\n if (stack) {\n return stack.relegate(this);\n }\n else {\n return false;\n }\n }\n resetRotation() {\n const { visualElement } = this.options;\n if (!visualElement)\n return;\n // If there's no detected rotation values, we can early return without a forced render.\n let hasRotate = false;\n /**\n * An unrolled check for rotation values. Most elements don't have any rotation and\n * skipping the nested loop and new object creation is 50% faster.\n */\n const { latestValues } = visualElement;\n if (latestValues.rotate ||\n latestValues.rotateX ||\n latestValues.rotateY ||\n latestValues.rotateZ) {\n hasRotate = true;\n }\n // If there's no rotation values, we don't need to do any more.\n if (!hasRotate)\n return;\n const resetValues = {};\n // Check the rotate value of all axes and reset to 0\n for (let i = 0; i < transformAxes.length; i++) {\n const key = \"rotate\" + transformAxes[i];\n // Record the rotation and then temporarily set it to 0\n if (latestValues[key]) {\n resetValues[key] = latestValues[key];\n visualElement.setStaticValue(key, 0);\n }\n }\n // Force a render of this element to apply the transform with all rotations\n // set to 0.\n visualElement.render();\n // Put back all the values we reset\n for (const key in resetValues) {\n visualElement.setStaticValue(key, resetValues[key]);\n }\n // Schedule a render for the next frame. This ensures we won't visually\n // see the element with the reset rotate value applied.\n visualElement.scheduleRender();\n }\n getProjectionStyles(styleProp) {\n var _a, _b;\n if (!this.instance || this.isSVG)\n return undefined;\n if (!this.isVisible) {\n return hiddenVisibility;\n }\n const styles = {\n visibility: \"\",\n };\n const transformTemplate = this.getTransformTemplate();\n if (this.needsReset) {\n this.needsReset = false;\n styles.opacity = \"\";\n styles.pointerEvents =\n (0,_value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_20__.resolveMotionValue)(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\";\n styles.transform = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : \"none\";\n return styles;\n }\n const lead = this.getLead();\n if (!this.projectionDelta || !this.layout || !lead.target) {\n const emptyStyles = {};\n if (this.options.layoutId) {\n emptyStyles.opacity =\n this.latestValues.opacity !== undefined\n ? this.latestValues.opacity\n : 1;\n emptyStyles.pointerEvents =\n (0,_value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_20__.resolveMotionValue)(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\";\n }\n if (this.hasProjected && !(0,_utils_has_transform_mjs__WEBPACK_IMPORTED_MODULE_11__.hasTransform)(this.latestValues)) {\n emptyStyles.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n this.hasProjected = false;\n }\n return emptyStyles;\n }\n const valuesToRender = lead.animationValues || lead.latestValues;\n this.applyTransformsToTarget();\n styles.transform = (0,_styles_transform_mjs__WEBPACK_IMPORTED_MODULE_16__.buildProjectionTransform)(this.projectionDeltaWithTransform, this.treeScale, valuesToRender);\n if (transformTemplate) {\n styles.transform = transformTemplate(valuesToRender, styles.transform);\n }\n const { x, y } = this.projectionDelta;\n styles.transformOrigin = `${x.origin * 100}% ${y.origin * 100}% 0`;\n if (lead.animationValues) {\n /**\n * If the lead component is animating, assign this either the entering/leaving\n * opacity\n */\n styles.opacity =\n lead === this\n ? (_b = (_a = valuesToRender.opacity) !== null && _a !== void 0 ? _a : this.latestValues.opacity) !== null && _b !== void 0 ? _b : 1\n : this.preserveOpacity\n ? this.latestValues.opacity\n : valuesToRender.opacityExit;\n }\n else {\n /**\n * Or we're not animating at all, set the lead component to its layout\n * opacity and other components to hidden.\n */\n styles.opacity =\n lead === this\n ? valuesToRender.opacity !== undefined\n ? valuesToRender.opacity\n : \"\"\n : valuesToRender.opacityExit !== undefined\n ? valuesToRender.opacityExit\n : 0;\n }\n /**\n * Apply scale correction\n */\n for (const key in _styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_21__.scaleCorrectors) {\n if (valuesToRender[key] === undefined)\n continue;\n const { correct, applyTo } = _styles_scale_correction_mjs__WEBPACK_IMPORTED_MODULE_21__.scaleCorrectors[key];\n /**\n * Only apply scale correction to the value if we have an\n * active projection transform. Otherwise these values become\n * vulnerable to distortion if the element changes size without\n * a corresponding layout animation.\n */\n const corrected = styles.transform === \"none\"\n ? valuesToRender[key]\n : correct(valuesToRender[key], lead);\n if (applyTo) {\n const num = applyTo.length;\n for (let i = 0; i < num; i++) {\n styles[applyTo[i]] = corrected;\n }\n }\n else {\n styles[key] = corrected;\n }\n }\n /**\n * Disable pointer events on follow components. This is to ensure\n * that if a follow component covers a lead component it doesn't block\n * pointer events on the lead.\n */\n if (this.options.layoutId) {\n styles.pointerEvents =\n lead === this\n ? (0,_value_utils_resolve_motion_value_mjs__WEBPACK_IMPORTED_MODULE_20__.resolveMotionValue)(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\"\n : \"none\";\n }\n return styles;\n }\n clearSnapshot() {\n this.resumeFrom = this.snapshot = undefined;\n }\n // Only run on root\n resetTree() {\n this.root.nodes.forEach((node) => { var _a; return (_a = node.currentAnimation) === null || _a === void 0 ? void 0 : _a.stop(); });\n this.root.nodes.forEach(clearMeasurements);\n this.root.sharedNodes.clear();\n }\n };\n}\nfunction updateLayout(node) {\n node.updateLayout();\n}\nfunction notifyLayoutUpdate(node) {\n var _a;\n const snapshot = ((_a = node.resumeFrom) === null || _a === void 0 ? void 0 : _a.snapshot) || node.snapshot;\n if (node.isLead() &&\n node.layout &&\n snapshot &&\n node.hasListeners(\"didUpdate\")) {\n const { layoutBox: layout, measuredBox: measuredLayout } = node.layout;\n const { animationType } = node.options;\n const isShared = snapshot.source !== node.layout.source;\n // TODO Maybe we want to also resize the layout snapshot so we don't trigger\n // animations for instance if layout=\"size\" and an element has only changed position\n if (animationType === \"size\") {\n (0,_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_22__.eachAxis)((axis) => {\n const axisSnapshot = isShared\n ? snapshot.measuredBox[axis]\n : snapshot.layoutBox[axis];\n const length = (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcLength)(axisSnapshot);\n axisSnapshot.min = layout[axis].min;\n axisSnapshot.max = axisSnapshot.min + length;\n });\n }\n else if (shouldAnimatePositionOnly(animationType, snapshot.layoutBox, layout)) {\n (0,_utils_each_axis_mjs__WEBPACK_IMPORTED_MODULE_22__.eachAxis)((axis) => {\n const axisSnapshot = isShared\n ? snapshot.measuredBox[axis]\n : snapshot.layoutBox[axis];\n const length = (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcLength)(layout[axis]);\n axisSnapshot.max = axisSnapshot.min + length;\n /**\n * Ensure relative target gets resized and rerendererd\n */\n if (node.relativeTarget && !node.currentAnimation) {\n node.isProjectionDirty = true;\n node.relativeTarget[axis].max =\n node.relativeTarget[axis].min + length;\n }\n });\n }\n const layoutDelta = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcBoxDelta)(layoutDelta, layout, snapshot.layoutBox);\n const visualDelta = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createDelta)();\n if (isShared) {\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcBoxDelta)(visualDelta, node.applyTransform(measuredLayout, true), snapshot.measuredBox);\n }\n else {\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcBoxDelta)(visualDelta, layout, snapshot.layoutBox);\n }\n const hasLayoutChanged = !(0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.isDeltaZero)(layoutDelta);\n let hasRelativeTargetChanged = false;\n if (!node.resumeFrom) {\n const relativeParent = node.getClosestProjectingParent();\n /**\n * If the relativeParent is itself resuming from a different element then\n * the relative snapshot is not relavent\n */\n if (relativeParent && !relativeParent.resumeFrom) {\n const { snapshot: parentSnapshot, layout: parentLayout } = relativeParent;\n if (parentSnapshot && parentLayout) {\n const relativeSnapshot = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativePosition)(relativeSnapshot, snapshot.layoutBox, parentSnapshot.layoutBox);\n const relativeLayout = (0,_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_10__.createBox)();\n (0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.calcRelativePosition)(relativeLayout, layout, parentLayout.layoutBox);\n if (!(0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.boxEqualsRounded)(relativeSnapshot, relativeLayout)) {\n hasRelativeTargetChanged = true;\n }\n if (relativeParent.options.layoutRoot) {\n node.relativeTarget = relativeLayout;\n node.relativeTargetOrigin = relativeSnapshot;\n node.relativeParent = relativeParent;\n }\n }\n }\n }\n node.notifyListeners(\"didUpdate\", {\n layout,\n snapshot,\n delta: visualDelta,\n layoutDelta,\n hasLayoutChanged,\n hasRelativeTargetChanged,\n });\n }\n else if (node.isLead()) {\n const { onExitComplete } = node.options;\n onExitComplete && onExitComplete();\n }\n /**\n * Clearing transition\n * TODO: Investigate why this transition is being passed in as {type: false } from Framer\n * and why we need it at all\n */\n node.options.transition = undefined;\n}\nfunction propagateDirtyNodes(node) {\n /**\n * Increase debug counter for nodes encountered this frame\n */\n projectionFrameData.totalNodes++;\n if (!node.parent)\n return;\n /**\n * If this node isn't projecting, propagate isProjectionDirty. It will have\n * no performance impact but it will allow the next child that *is* projecting\n * but *isn't* dirty to just check its parent to see if *any* ancestor needs\n * correcting.\n */\n if (!node.isProjecting()) {\n node.isProjectionDirty = node.parent.isProjectionDirty;\n }\n /**\n * Propagate isSharedProjectionDirty and isTransformDirty\n * throughout the whole tree. A future revision can take another look at\n * this but for safety we still recalcualte shared nodes.\n */\n node.isSharedProjectionDirty || (node.isSharedProjectionDirty = Boolean(node.isProjectionDirty ||\n node.parent.isProjectionDirty ||\n node.parent.isSharedProjectionDirty));\n node.isTransformDirty || (node.isTransformDirty = node.parent.isTransformDirty);\n}\nfunction cleanDirtyNodes(node) {\n node.isProjectionDirty =\n node.isSharedProjectionDirty =\n node.isTransformDirty =\n false;\n}\nfunction clearSnapshot(node) {\n node.clearSnapshot();\n}\nfunction clearMeasurements(node) {\n node.clearMeasurements();\n}\nfunction clearIsLayoutDirty(node) {\n node.isLayoutDirty = false;\n}\nfunction resetTransformStyle(node) {\n const { visualElement } = node.options;\n if (visualElement && visualElement.getProps().onBeforeLayoutMeasure) {\n visualElement.notify(\"BeforeLayoutMeasure\");\n }\n node.resetTransform();\n}\nfunction finishAnimation(node) {\n node.finishAnimation();\n node.targetDelta = node.relativeTarget = node.target = undefined;\n node.isProjectionDirty = true;\n}\nfunction resolveTargetDelta(node) {\n node.resolveTargetDelta();\n}\nfunction calcProjection(node) {\n node.calcProjection();\n}\nfunction resetRotation(node) {\n node.resetRotation();\n}\nfunction removeLeadSnapshots(stack) {\n stack.removeLeadSnapshot();\n}\nfunction mixAxisDelta(output, delta, p) {\n output.translate = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_23__.mix)(delta.translate, 0, p);\n output.scale = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_23__.mix)(delta.scale, 1, p);\n output.origin = delta.origin;\n output.originPoint = delta.originPoint;\n}\nfunction mixAxis(output, from, to, p) {\n output.min = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_23__.mix)(from.min, to.min, p);\n output.max = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_23__.mix)(from.max, to.max, p);\n}\nfunction mixBox(output, from, to, p) {\n mixAxis(output.x, from.x, to.x, p);\n mixAxis(output.y, from.y, to.y, p);\n}\nfunction hasOpacityCrossfade(node) {\n return (node.animationValues && node.animationValues.opacityExit !== undefined);\n}\nconst defaultLayoutTransition = {\n duration: 0.45,\n ease: [0.4, 0, 0.1, 1],\n};\nconst userAgentContains = (string) => typeof navigator !== \"undefined\" &&\n navigator.userAgent.toLowerCase().includes(string);\n/**\n * Measured bounding boxes must be rounded in Safari and\n * left untouched in Chrome, otherwise non-integer layouts within scaled-up elements\n * can appear to jump.\n */\nconst roundPoint = userAgentContains(\"applewebkit/\") && !userAgentContains(\"chrome/\")\n ? Math.round\n : _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_24__.noop;\nfunction roundAxis(axis) {\n // Round to the nearest .5 pixels to support subpixel layouts\n axis.min = roundPoint(axis.min);\n axis.max = roundPoint(axis.max);\n}\nfunction roundBox(box) {\n roundAxis(box.x);\n roundAxis(box.y);\n}\nfunction shouldAnimatePositionOnly(animationType, snapshot, layout) {\n return (animationType === \"position\" ||\n (animationType === \"preserve-aspect\" &&\n !(0,_geometry_delta_calc_mjs__WEBPACK_IMPORTED_MODULE_15__.isNear)((0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.aspectRatio)(snapshot), (0,_geometry_utils_mjs__WEBPACK_IMPORTED_MODULE_6__.aspectRatio)(layout), 0.2)));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9ub2RlL2NyZWF0ZS1wcm9qZWN0aW9uLW5vZGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBMkU7QUFDbkI7QUFDTDtBQUN1RDtBQUNXO0FBQ2xEO0FBQ0g7QUFDVztBQUNtQjtBQUM5QztBQUNpQjtBQUNFO0FBQ2pCO0FBQ2tDO0FBQ3hCO0FBQ29CO0FBQzVCO0FBQ047QUFDSjtBQUNNO0FBQ3lCO0FBQ1E7QUFDbkM7QUFDbUM7QUFDckM7O0FBRTVDO0FBQ0EsMkJBQTJCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLHdGQUF3RjtBQUN4SDtBQUNBLHFDQUFxQztBQUNyQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7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QUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTSxrREFBSTtBQUNWO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsaUVBQU0sQ0FBQyxnRUFBVyxZQUFZLGdFQUFXO0FBQ3REOztBQUVxRyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3Byb2plY3Rpb24vbm9kZS9jcmVhdGUtcHJvamVjdGlvbi1ub2RlLm1qcz8xOWMwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YnNjcmlwdGlvbk1hbmFnZXIgfSBmcm9tICcuLi8uLi91dGlscy9zdWJzY3JpcHRpb24tbWFuYWdlci5tanMnO1xuaW1wb3J0IHsgbWl4VmFsdWVzIH0gZnJvbSAnLi4vYW5pbWF0aW9uL21peC12YWx1ZXMubWpzJztcbmltcG9ydCB7IGNvcHlCb3hJbnRvIH0gZnJvbSAnLi4vZ2VvbWV0cnkvY29weS5tanMnO1xuaW1wb3J0IHsgdHJhbnNsYXRlQXhpcywgdHJhbnNmb3JtQm94LCBhcHBseUJveERlbHRhLCBhcHBseVRyZWVEZWx0YXMgfSBmcm9tICcuLi9nZW9tZXRyeS9kZWx0YS1hcHBseS5tanMnO1xuaW1wb3J0IHsgY2FsY1JlbGF0aXZlUG9zaXRpb24sIGNhbGNSZWxhdGl2ZUJveCwgY2FsY0JveERlbHRhLCBjYWxjTGVuZ3RoLCBpc05lYXIgfSBmcm9tICcuLi9nZW9tZXRyeS9kZWx0YS1jYWxjLm1qcyc7XG5pbXBvcnQgeyByZW1vdmVCb3hUcmFuc2Zvcm1zIH0gZnJvbSAnLi4vZ2VvbWV0cnkvZGVsdGEtcmVtb3ZlLm1qcyc7XG5pbXBvcnQgeyBjcmVhdGVCb3gsIGNyZWF0ZURlbHRhIH0gZnJvbSAnLi4vZ2VvbWV0cnkvbW9kZWxzLm1qcyc7XG5pbXBvcnQgeyBnZXRWYWx1ZVRyYW5zaXRpb24gfSBmcm9tICcuLi8uLi9hbmltYXRpb24vdXRpbHMvdHJhbnNpdGlvbnMubWpzJztcbmltcG9ydCB7IGJveEVxdWFsc1JvdW5kZWQsIGlzRGVsdGFaZXJvLCBhc3BlY3RSYXRpbywgYm94RXF1YWxzIH0gZnJvbSAnLi4vZ2VvbWV0cnkvdXRpbHMubWpzJztcbmltcG9ydCB7IE5vZGVTdGFjayB9IGZyb20gJy4uL3NoYXJlZC9zdGFjay5tanMnO1xuaW1wb3J0IHsgc2NhbGVDb3JyZWN0b3JzIH0gZnJvbSAnLi4vc3R5bGVzL3NjYWxlLWNvcnJlY3Rpb24ubWpzJztcbmltcG9ydCB7IGJ1aWxkUHJvamVjdGlvblRyYW5zZm9ybSB9IGZyb20gJy4uL3N0eWxlcy90cmFuc2Zvcm0ubWpzJztcbmltcG9ydCB7IGVhY2hBeGlzIH0gZnJvbSAnLi4vdXRpbHMvZWFjaC1heGlzLm1qcyc7XG5pbXBvcnQgeyBoYXNUcmFuc2Zvcm0sIGhhc1NjYWxlLCBoYXMyRFRyYW5zbGF0ZSB9IGZyb20gJy4uL3V0aWxzL2hhcy10cmFuc2Zvcm0ubWpzJztcbmltcG9ydCB7IEZsYXRUcmVlIH0gZnJvbSAnLi4vLi4vcmVuZGVyL3V0aWxzL2ZsYXQtdHJlZS5tanMnO1xuaW1wb3J0IHsgcmVzb2x2ZU1vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXRpbHMvcmVzb2x2ZS1tb3Rpb24tdmFsdWUubWpzJztcbmltcG9ydCB7IGdsb2JhbFByb2plY3Rpb25TdGF0ZSB9IGZyb20gJy4vc3RhdGUubWpzJztcbmltcG9ydCB7IGRlbGF5IH0gZnJvbSAnLi4vLi4vdXRpbHMvZGVsYXkubWpzJztcbmltcG9ydCB7IG1peCB9IGZyb20gJy4uLy4uL3V0aWxzL21peC5tanMnO1xuaW1wb3J0IHsgcmVjb3JkIH0gZnJvbSAnLi4vLi4vZGVidWcvcmVjb3JkLm1qcyc7XG5pbXBvcnQgeyBpc1NWR0VsZW1lbnQgfSBmcm9tICcuLi8uLi9yZW5kZXIvZG9tL3V0aWxzL2lzLXN2Zy1lbGVtZW50Lm1qcyc7XG5pbXBvcnQgeyBhbmltYXRlU2luZ2xlVmFsdWUgfSBmcm9tICcuLi8uLi9hbmltYXRpb24vaW50ZXJmYWNlcy9zaW5nbGUtdmFsdWUubWpzJztcbmltcG9ydCB7IGNsYW1wIH0gZnJvbSAnLi4vLi4vdXRpbHMvY2xhbXAubWpzJztcbmltcG9ydCB7IGNhbmNlbEZyYW1lLCBmcmFtZURhdGEsIHN0ZXBzLCBmcmFtZSB9IGZyb20gJy4uLy4uL2ZyYW1lbG9vcC9mcmFtZS5tanMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4uLy4uL3V0aWxzL25vb3AubWpzJztcblxuY29uc3QgdHJhbnNmb3JtQXhlcyA9IFtcIlwiLCBcIlhcIiwgXCJZXCIsIFwiWlwiXTtcbmNvbnN0IGhpZGRlblZpc2liaWxpdHkgPSB7IHZpc2liaWxpdHk6IFwiaGlkZGVuXCIgfTtcbi8qKlxuICogV2UgdXNlIDEwMDAgYXMgdGhlIGFuaW1hdGlvbiB0YXJnZXQgYXMgMC0xMDAwIG1hcHMgYmV0dGVyIHRvIHBpeGVscyB0aGFuIDAtMVxuICogd2hpY2ggaGFzIGEgbm90aWNlYWJsZSBkaWZmZXJlbmNlIGluIHNwcmluZyBhbmltYXRpb25zXG4gKi9cbmNvbnN0IGFuaW1hdGlvblRhcmdldCA9IDEwMDA7XG5sZXQgaWQgPSAwO1xuLyoqXG4gKiBVc2UgYSBtdXRhYmxlIGRhdGEgb2JqZWN0IGZvciBkZWJ1ZyBkYXRhIHNvIGFzIHRvIG5vdCBjcmVhdGUgYSBuZXdcbiAqIG9iamVjdCBldmVyeSBmcmFtZS5cbiAqL1xuY29uc3QgcHJvamVjdGlvbkZyYW1lRGF0YSA9IHtcbiAgICB0eXBlOiBcInByb2plY3Rpb25GcmFtZVwiLFxuICAgIHRvdGFsTm9kZXM6IDAsXG4gICAgcmVzb2x2ZWRUYXJnZXREZWx0YXM6IDAsXG4gICAgcmVjYWxjdWxhdGVkUHJvamVjdGlvbjogMCxcbn07XG5mdW5jdGlvbiBjcmVhdGVQcm9qZWN0aW9uTm9kZSh7IGF0dGFjaFJlc2l6ZUxpc3RlbmVyLCBkZWZhdWx0UGFyZW50LCBtZWFzdXJlU2Nyb2xsLCBjaGVja0lzU2Nyb2xsUm9vdCwgcmVzZXRUcmFuc2Zvcm0sIH0pIHtcbiAgICByZXR1cm4gY2xhc3MgUHJvamVjdGlvbk5vZGUge1xuICAgICAgICBjb25zdHJ1Y3RvcihsYXRlc3RWYWx1ZXMgPSB7fSwgcGFyZW50ID0gZGVmYXVsdFBhcmVudCA9PT0gbnVsbCB8fCBkZWZhdWx0UGFyZW50ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkZWZhdWx0UGFyZW50KCkpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQSB1bmlxdWUgSUQgZ2VuZXJhdGVkIGZvciBldmVyeSBwcm9qZWN0aW9uIG5vZGUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMuaWQgPSBpZCsrO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBbiBpZCB0aGF0IHJlcHJlc2VudHMgYSB1bmlxdWUgc2Vzc2lvbiBpbnN0aWdhdGVkIGJ5IHN0YXJ0VXBkYXRlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvbklkID0gMDtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQSBTZXQgY29udGFpbmluZyBhbGwgdGhpcyBjb21wb25lbnQncyBjaGlsZHJlbi4gVGhpcyBpcyB1c2VkIHRvIGl0ZXJhdGVcbiAgICAgICAgICAgICAqIHRocm91Z2ggdGhlIGNoaWxkcmVuLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRPRE86IFRoaXMgY291bGQgYmUgZmFzdGVyIHRvIGl0ZXJhdGUgYXMgYSBmbGF0IGFycmF5IHN0b3JlZCBvbiB0aGUgcm9vdCBub2RlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmNoaWxkcmVuID0gbmV3IFNldCgpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBPcHRpb25zIGZvciB0aGUgbm9kZS4gV2UgdXNlIHRoaXMgdG8gY29uZmlndXJlIHdoYXQga2luZCBvZiBsYXlvdXQgYW5pbWF0aW9uc1xuICAgICAgICAgICAgICogd2Ugc2hvdWxkIHBlcmZvcm0gKGlmIGFueSkuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IHt9O1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSB1c2UgdGhpcyB0byBkZXRlY3Qgd2hlbiBpdHMgc2FmZSB0byBzaHV0IGRvd24gcGFydCBvZiBhIHByb2plY3Rpb24gdHJlZS5cbiAgICAgICAgICAgICAqIFdlIGhhdmUgdG8ga2VlcCBwcm9qZWN0aW5nIGNoaWxkcmVuIGZvciBzY2FsZSBjb3JyZWN0aW9uIGFuZCByZWxhdGl2ZSBwcm9qZWN0aW9uXG4gICAgICAgICAgICAgKiB1bnRpbCBhbGwgdGhlaXIgcGFyZW50cyBzdG9wIHBlcmZvcm1pbmcgbGF5b3V0IGFuaW1hdGlvbnMuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMuaXNUcmVlQW5pbWF0aW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmlzQW5pbWF0aW9uQmxvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGFnIHRvIHRydWUgaWYgd2UgdGhpbmsgdGhpcyBsYXlvdXQgaGFzIGJlZW4gY2hhbmdlZC4gV2UgY2FuJ3QgYWx3YXlzIGtub3cgdGhpcyxcbiAgICAgICAgICAgICAqIGN1cnJlbnRseSB3ZSBzZXQgaXQgdG8gdHJ1ZSBldmVyeSB0aW1lIGEgY29tcG9uZW50IHJlbmRlcnMsIG9yIGlmIGl0IGhhcyBhIGxheW91dERlcGVuZGVuY3lcbiAgICAgICAgICAgICAqIGlmIHRoYXQgaGFzIGNoYW5nZWQgYmV0d2VlbiByZW5kZXJzLiBBZGRpdGlvbmFsbHksIGNvbXBvbmVudHMgY2FuIGJlIGdyb3VwZWQgYnkgTGF5b3V0R3JvdXBcbiAgICAgICAgICAgICAqIGFuZCBpZiBvbmUgbm9kZSBpcyBkaXJ0aWVkLCB0aGV5IGFsbCBhcmUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMuaXNMYXlvdXREaXJ0eSA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGFnIHRvIHRydWUgaWYgd2UgdGhpbmsgdGhlIHByb2plY3Rpb24gY2FsY3VsYXRpb25zIGZvciB0aGlzIG5vZGUgbmVlZHNcbiAgICAgICAgICAgICAqIHJlY2FsY3VsYXRpbmcgYXMgYSByZXN1bHQgb2YgYW4gdXBkYXRlZCB0cmFuc2Zvcm0gb3IgbGF5b3V0IGFuaW1hdGlvbi5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5pc1Byb2plY3Rpb25EaXJ0eSA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGFnIHRvIHRydWUgaWYgdGhlIGxheW91dCAqb3IqIHRyYW5zZm9ybSBoYXMgY2hhbmdlZC4gVGhpcyB0aGVuIGdldHMgcHJvcGFnYXRlZFxuICAgICAgICAgICAgICogdGhyb3VnaG91dCB0aGUgcHJvamVjdGlvbiB0cmVlLCBmb3JjaW5nIGFueSBlbGVtZW50IGJlbG93IHRvIHJlY2FsY3VsYXRlIG9uIHRoZSBuZXh0IGZyYW1lLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmlzU2hhcmVkUHJvamVjdGlvbkRpcnR5ID0gZmFsc2U7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEZsYWcgdHJhbnNmb3JtIGRpcnR5LiBUaGlzIGdldHMgcHJvcGFnYXRlZCB0aHJvdWdob3V0IHRoZSB3aG9sZSB0cmVlIGJ1dCBpcyBvbmx5XG4gICAgICAgICAgICAgKiByZXNwZWN0ZWQgYnkgc2hhcmVkIG5vZGVzLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmlzVHJhbnNmb3JtRGlydHkgPSBmYWxzZTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQmxvY2sgbGF5b3V0IHVwZGF0ZXMgZm9yIGluc3RhbnQgbGF5b3V0IHRyYW5zaXRpb25zIHRocm91Z2hvdXQgdGhlIHRyZWUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMudXBkYXRlTWFudWFsbHlCbG9ja2VkID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUJsb2NrZWRCeVJlc2l6ZSA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBTZXQgdG8gdHJ1ZSBiZXR3ZWVuIHRoZSBzdGFydCBvZiB0aGUgZmlyc3QgYHdpbGxVcGRhdGVgIGNhbGwgYW5kIHRoZSBlbmQgb2YgdGhlIGBkaWRVcGRhdGVgXG4gICAgICAgICAgICAgKiBjYWxsLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmlzVXBkYXRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhpcyBpcyBhbiBTVkcgZWxlbWVudCB3ZSBjdXJyZW50bHkgZGlzYWJsZSBwcm9qZWN0aW9uIHRyYW5zZm9ybXNcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5pc1NWRyA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGFnIHRvIHRydWUgKGR1cmluZyBwcm9tb3Rpb24pIGlmIGEgbm9kZSBkb2luZyBhbiBpbnN0YW50IGxheW91dCB0cmFuc2l0aW9uIG5lZWRzIHRvIHJlc2V0XG4gICAgICAgICAgICAgKiBpdHMgcHJvamVjdGlvbiBzdHlsZXMuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMubmVlZHNSZXNldCA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBGbGFncyB3aGV0aGVyIHRoaXMgbm9kZSBzaG91bGQgaGF2ZSBpdHMgdHJhbnNmb3JtIHJlc2V0IHByaW9yIHRvIG1lYXN1cmluZy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5zaG91bGRSZXNldFRyYW5zZm9ybSA9IGZhbHNlO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBbiBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBjYWxjdWxhdGVkIGNvbnRleHR1YWwvYWNjdW11bGF0ZWQvdHJlZSBzY2FsZS5cbiAgICAgICAgICAgICAqIFRoaXMgd2lsbCBiZSB1c2VkIHRvIHNjYWxlIGNhbGN1bGNhdGVkIHByb2plY3Rpb24gdHJhbnNmb3JtcywgYXMgdGhlc2UgYXJlXG4gICAgICAgICAgICAgKiBjYWxjdWxhdGVkIGluIHNjcmVlbi1zcGFjZSBidXQgbmVlZCB0byBiZSBzY2FsZWQgZm9yIGVsZW1lbnRzIHRvIGxheW91dGx5XG4gICAgICAgICAgICAgKiBtYWtlIGl0IHRvIHRoZWlyIGNhbGN1bGF0ZWQgZGVzdGluYXRpb25zLlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqIFRPRE86IExhenktaW5pdFxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLnRyZWVTY2FsZSA9IHsgeDogMSwgeTogMSB9O1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0aGlzLmV2ZW50SGFuZGxlcnMgPSBuZXcgTWFwKCk7XG4gICAgICAgICAgICB0aGlzLmhhc1RyZWVBbmltYXRlZCA9IGZhbHNlO1xuICAgICAgICAgICAgLy8gTm90ZTogQ3VycmVudGx5IG9ubHkgcnVubmluZyBvbiByb290IG5vZGVcbiAgICAgICAgICAgIHRoaXMudXBkYXRlU2NoZWR1bGVkID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLnByb2plY3Rpb25VcGRhdGVTY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tVcGRhdGVGYWlsZWQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNVcGRhdGluZykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzVXBkYXRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbGVhckFsbFNuYXBzaG90cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFRoaXMgaXMgYSBtdWx0aS1zdGVwIHByb2Nlc3MgYXMgc2hhcmVkIG5vZGVzIG1pZ2h0IGJlIG9mIGRpZmZlcmVudCBkZXB0aHMuIE5vZGVzXG4gICAgICAgICAgICAgKiBhcmUgc29ydGVkIGJ5IGRlcHRoIG9yZGVyLCBzbyB3ZSBuZWVkIHRvIHJlc29sdmUgdGhlIGVudGlyZSB0cmVlIGJlZm9yZSBtb3ZpbmcgdG9cbiAgICAgICAgICAgICAqIHRoZSBuZXh0IHN0ZXAuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMudXBkYXRlUHJvamVjdGlvbiA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb2plY3Rpb25VcGRhdGVTY2hlZHVsZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBSZXNldCBkZWJ1ZyBjb3VudHMuIE1hbnVhbGx5IHJlc2V0dGluZyByYXRoZXIgdGhhbiBjcmVhdGluZyBhIG5ld1xuICAgICAgICAgICAgICAgICAqIG9iamVjdCBlYWNoIGZyYW1lLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIHByb2plY3Rpb25GcmFtZURhdGEudG90YWxOb2RlcyA9XG4gICAgICAgICAgICAgICAgICAgIHByb2plY3Rpb25GcmFtZURhdGEucmVzb2x2ZWRUYXJnZXREZWx0YXMgPVxuICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdGlvbkZyYW1lRGF0YS5yZWNhbGN1bGF0ZWRQcm9qZWN0aW9uID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAwO1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZXMuZm9yRWFjaChwcm9wYWdhdGVEaXJ0eU5vZGVzKTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGVzLmZvckVhY2gocmVzb2x2ZVRhcmdldERlbHRhKTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGVzLmZvckVhY2goY2FsY1Byb2plY3Rpb24pO1xuICAgICAgICAgICAgICAgIHRoaXMubm9kZXMuZm9yRWFjaChjbGVhbkRpcnR5Tm9kZXMpO1xuICAgICAgICAgICAgICAgIHJlY29yZChwcm9qZWN0aW9uRnJhbWVEYXRhKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLmhhc1Byb2plY3RlZCA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5hbmltYXRpb25Qcm9ncmVzcyA9IDA7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFNoYXJlZCBsYXlvdXRcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgLy8gVE9ETyBPbmx5IHJ1bm5pbmcgb24gcm9vdCBub2RlXG4gICAgICAgICAgICB0aGlzLnNoYXJlZE5vZGVzID0gbmV3IE1hcCgpO1xuICAgICAgICAgICAgdGhpcy5sYXRlc3RWYWx1ZXMgPSBsYXRlc3RWYWx1ZXM7XG4gICAgICAgICAgICB0aGlzLnJvb3QgPSBwYXJlbnQgPyBwYXJlbnQucm9vdCB8fCBwYXJlbnQgOiB0aGlzO1xuICAgICAgICAgICAgdGhpcy5wYXRoID0gcGFyZW50ID8gWy4uLnBhcmVudC5wYXRoLCBwYXJlbnRdIDogW107XG4gICAgICAgICAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICAgICAgICAgIHRoaXMuZGVwdGggPSBwYXJlbnQgPyBwYXJlbnQuZGVwdGggKyAxIDogMDtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wYXRoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYXRoW2ldLnNob3VsZFJlc2V0VHJhbnNmb3JtID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLnJvb3QgPT09IHRoaXMpXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlcyA9IG5ldyBGbGF0VHJlZSgpO1xuICAgICAgICB9XG4gICAgICAgIGFkZEV2ZW50TGlzdGVuZXIobmFtZSwgaGFuZGxlcikge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmV2ZW50SGFuZGxlcnMuaGFzKG5hbWUpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ldmVudEhhbmRsZXJzLnNldChuYW1lLCBuZXcgU3Vic2NyaXB0aW9uTWFuYWdlcigpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLmV2ZW50SGFuZGxlcnMuZ2V0KG5hbWUpLmFkZChoYW5kbGVyKTtcbiAgICAgICAgfVxuICAgICAgICBub3RpZnlMaXN0ZW5lcnMobmFtZSwgLi4uYXJncykge1xuICAgICAgICAgICAgY29uc3Qgc3Vic2NyaXB0aW9uTWFuYWdlciA9IHRoaXMuZXZlbnRIYW5kbGVycy5nZXQobmFtZSk7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb25NYW5hZ2VyICYmIHN1YnNjcmlwdGlvbk1hbmFnZXIubm90aWZ5KC4uLmFyZ3MpO1xuICAgICAgICB9XG4gICAgICAgIGhhc0xpc3RlbmVycyhuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5ldmVudEhhbmRsZXJzLmhhcyhuYW1lKTtcbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogTGlmZWN5Y2xlc1xuICAgICAgICAgKi9cbiAgICAgICAgbW91bnQoaW5zdGFuY2UsIGlzTGF5b3V0RGlydHkgPSB0aGlzLnJvb3QuaGFzVHJlZUFuaW1hdGVkKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pbnN0YW5jZSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB0aGlzLmlzU1ZHID0gaXNTVkdFbGVtZW50KGluc3RhbmNlKTtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UgPSBpbnN0YW5jZTtcbiAgICAgICAgICAgIGNvbnN0IHsgbGF5b3V0SWQsIGxheW91dCwgdmlzdWFsRWxlbWVudCB9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICAgICAgaWYgKHZpc3VhbEVsZW1lbnQgJiYgIXZpc3VhbEVsZW1lbnQuY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQubW91bnQoaW5zdGFuY2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5yb290Lm5vZGVzLmFkZCh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50LmNoaWxkcmVuLmFkZCh0aGlzKTtcbiAgICAgICAgICAgIGlmIChpc0xheW91dERpcnR5ICYmIChsYXlvdXQgfHwgbGF5b3V0SWQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xheW91dERpcnR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhdHRhY2hSZXNpemVMaXN0ZW5lcikge1xuICAgICAgICAgICAgICAgIGxldCBjYW5jZWxEZWxheTtcbiAgICAgICAgICAgICAgICBjb25zdCByZXNpemVVbmJsb2NrVXBkYXRlID0gKCkgPT4gKHRoaXMucm9vdC51cGRhdGVCbG9ja2VkQnlSZXNpemUgPSBmYWxzZSk7XG4gICAgICAgICAgICAgICAgYXR0YWNoUmVzaXplTGlzdGVuZXIoaW5zdGFuY2UsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb290LnVwZGF0ZUJsb2NrZWRCeVJlc2l6ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbERlbGF5ICYmIGNhbmNlbERlbGF5KCk7XG4gICAgICAgICAgICAgICAgICAgIGNhbmNlbERlbGF5ID0gZGVsYXkocmVzaXplVW5ibG9ja1VwZGF0ZSwgMjUwKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdsb2JhbFByb2plY3Rpb25TdGF0ZS5oYXNBbmltYXRlZFNpbmNlUmVzaXplKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWxQcm9qZWN0aW9uU3RhdGUuaGFzQW5pbWF0ZWRTaW5jZVJlc2l6ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2Rlcy5mb3JFYWNoKGZpbmlzaEFuaW1hdGlvbik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChsYXlvdXRJZCkge1xuICAgICAgICAgICAgICAgIHRoaXMucm9vdC5yZWdpc3RlclNoYXJlZE5vZGUobGF5b3V0SWQsIHRoaXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gT25seSByZWdpc3RlciB0aGUgaGFuZGxlciBpZiBpdCByZXF1aXJlcyBsYXlvdXQgYW5pbWF0aW9uXG4gICAgICAgICAgICBpZiAodGhpcy5vcHRpb25zLmFuaW1hdGUgIT09IGZhbHNlICYmXG4gICAgICAgICAgICAgICAgdmlzdWFsRWxlbWVudCAmJlxuICAgICAgICAgICAgICAgIChsYXlvdXRJZCB8fCBsYXlvdXQpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFwiZGlkVXBkYXRlXCIsICh7IGRlbHRhLCBoYXNMYXlvdXRDaGFuZ2VkLCBoYXNSZWxhdGl2ZVRhcmdldENoYW5nZWQsIGxheW91dDogbmV3TGF5b3V0LCB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzVHJlZUFuaW1hdGlvbkJsb2NrZWQoKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50YXJnZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlVGFyZ2V0ID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vIFRPRE86IENoZWNrIGhlcmUgaWYgYW4gYW5pbWF0aW9uIGV4aXN0c1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXlvdXRUcmFuc2l0aW9uID0gdGhpcy5vcHRpb25zLnRyYW5zaXRpb24gfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQuZ2V0RGVmYXVsdFRyYW5zaXRpb24oKSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdExheW91dFRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgb25MYXlvdXRBbmltYXRpb25TdGFydCwgb25MYXlvdXRBbmltYXRpb25Db21wbGV0ZSwgfSA9IHZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKTtcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIFRoZSB0YXJnZXQgbGF5b3V0IG9mIHRoZSBlbGVtZW50IG1pZ2h0IHN0YXkgdGhlIHNhbWUsXG4gICAgICAgICAgICAgICAgICAgICAqIGJ1dCBpdHMgcG9zaXRpb24gcmVsYXRpdmUgdG8gaXRzIHBhcmVudCBoYXMgY2hhbmdlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRhcmdldENoYW5nZWQgPSAhdGhpcy50YXJnZXRMYXlvdXQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICFib3hFcXVhbHNSb3VuZGVkKHRoaXMudGFyZ2V0TGF5b3V0LCBuZXdMYXlvdXQpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNSZWxhdGl2ZVRhcmdldENoYW5nZWQ7XG4gICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgKiBJZiB0aGUgbGF5b3V0IGhhc24ndCBzZWVtZWQgdG8gaGF2ZSBjaGFuZ2VkLCBpdCBtaWdodCBiZSB0aGF0IHRoZVxuICAgICAgICAgICAgICAgICAgICAgKiBlbGVtZW50IGlzIHZpc3VhbGx5IGluIHRoZSBzYW1lIHBsYWNlIGluIHRoZSBkb2N1bWVudCBidXQgaXRzIHBvc2l0aW9uXG4gICAgICAgICAgICAgICAgICAgICAqIHJlbGF0aXZlIHRvIGl0cyBwYXJlbnQgaGFzIGluZGVlZCBjaGFuZ2VkLiBTbyBoZXJlIHdlIGNoZWNrIGZvciB0aGF0LlxuICAgICAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaGFzT25seVJlbGF0aXZlVGFyZ2V0Q2hhbmdlZCA9ICFoYXNMYXlvdXRDaGFuZ2VkICYmIGhhc1JlbGF0aXZlVGFyZ2V0Q2hhbmdlZDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sYXlvdXRSb290IHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAodGhpcy5yZXN1bWVGcm9tICYmIHRoaXMucmVzdW1lRnJvbS5pbnN0YW5jZSkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhhc09ubHlSZWxhdGl2ZVRhcmdldENoYW5nZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIChoYXNMYXlvdXRDaGFuZ2VkICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRhcmdldENoYW5nZWQgfHwgIXRoaXMuY3VycmVudEFuaW1hdGlvbikpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5yZXN1bWVGcm9tKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXN1bWluZ0Zyb20gPSB0aGlzLnJlc3VtZUZyb207XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXN1bWluZ0Zyb20ucmVzdW1pbmdGcm9tID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRBbmltYXRpb25PcmlnaW4oZGVsdGEsIGhhc09ubHlSZWxhdGl2ZVRhcmdldENoYW5nZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5pbWF0aW9uT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5nZXRWYWx1ZVRyYW5zaXRpb24obGF5b3V0VHJhbnNpdGlvbiwgXCJsYXlvdXRcIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25QbGF5OiBvbkxheW91dEFuaW1hdGlvblN0YXJ0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ29tcGxldGU6IG9uTGF5b3V0QW5pbWF0aW9uQ29tcGxldGUsXG4gICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZpc3VhbEVsZW1lbnQuc2hvdWxkUmVkdWNlTW90aW9uIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zLmxheW91dFJvb3QpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb25PcHRpb25zLmRlbGF5ID0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb25PcHRpb25zLnR5cGUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRBbmltYXRpb24oYW5pbWF0aW9uT3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICAgICAqIElmIHRoZSBsYXlvdXQgaGFzbid0IGNoYW5nZWQgYW5kIHdlIGhhdmUgYW4gYW5pbWF0aW9uIHRoYXQgaGFzbid0IHN0YXJ0ZWQgeWV0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICogZmluaXNoIGl0IGltbWVkaWF0ZWx5LiBPdGhlcndpc2UgaXQgd2lsbCBiZSBhbmltYXRpbmcgZnJvbSBhIGxvY2F0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgKiB0aGF0IHdhcyBwcm9iYWJseSBuZXZlciBjb21taXRlZCB0byBzY3JlZW4gYW5kIGxvb2sgbGlrZSBhIGp1bXB5IGJveC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFoYXNMYXlvdXRDaGFuZ2VkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluaXNoQW5pbWF0aW9uKHRoaXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNMZWFkKCkgJiYgdGhpcy5vcHRpb25zLm9uRXhpdENvbXBsZXRlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zLm9uRXhpdENvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy50YXJnZXRMYXlvdXQgPSBuZXdMYXlvdXQ7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdW5tb3VudCgpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5sYXlvdXRJZCAmJiB0aGlzLndpbGxVcGRhdGUoKTtcbiAgICAgICAgICAgIHRoaXMucm9vdC5ub2Rlcy5yZW1vdmUodGhpcyk7XG4gICAgICAgICAgICBjb25zdCBzdGFjayA9IHRoaXMuZ2V0U3RhY2soKTtcbiAgICAgICAgICAgIHN0YWNrICYmIHN0YWNrLnJlbW92ZSh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50LmNoaWxkcmVuLmRlbGV0ZSh0aGlzKTtcbiAgICAgICAgICAgIHRoaXMuaW5zdGFuY2UgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjYW5jZWxGcmFtZSh0aGlzLnVwZGF0ZVByb2plY3Rpb24pO1xuICAgICAgICB9XG4gICAgICAgIC8vIG9ubHkgb24gdGhlIHJvb3RcbiAgICAgICAgYmxvY2tVcGRhdGUoKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZU1hbnVhbGx5QmxvY2tlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdW5ibG9ja1VwZGF0ZSgpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlTWFudWFsbHlCbG9ja2VkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgaXNVcGRhdGVCbG9ja2VkKCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudXBkYXRlTWFudWFsbHlCbG9ja2VkIHx8IHRoaXMudXBkYXRlQmxvY2tlZEJ5UmVzaXplO1xuICAgICAgICB9XG4gICAgICAgIGlzVHJlZUFuaW1hdGlvbkJsb2NrZWQoKSB7XG4gICAgICAgICAgICByZXR1cm4gKHRoaXMuaXNBbmltYXRpb25CbG9ja2VkIHx8XG4gICAgICAgICAgICAgICAgKHRoaXMucGFyZW50ICYmIHRoaXMucGFyZW50LmlzVHJlZUFuaW1hdGlvbkJsb2NrZWQoKSkgfHxcbiAgICAgICAgICAgICAgICBmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gTm90ZTogY3VycmVudGx5IG9ubHkgcnVubmluZyBvbiByb290IG5vZGVcbiAgICAgICAgc3RhcnRVcGRhdGUoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc1VwZGF0ZUJsb2NrZWQoKSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB0aGlzLmlzVXBkYXRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5ub2RlcyAmJiB0aGlzLm5vZGVzLmZvckVhY2gocmVzZXRSb3RhdGlvbik7XG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvbklkKys7XG4gICAgICAgIH1cbiAgICAgICAgZ2V0VHJhbnNmb3JtVGVtcGxhdGUoKSB7XG4gICAgICAgICAgICBjb25zdCB7IHZpc3VhbEVsZW1lbnQgfSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgICAgIHJldHVybiB2aXN1YWxFbGVtZW50ICYmIHZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKS50cmFuc2Zvcm1UZW1wbGF0ZTtcbiAgICAgICAgfVxuICAgICAgICB3aWxsVXBkYXRlKHNob3VsZE5vdGlmeUxpc3RlbmVycyA9IHRydWUpIHtcbiAgICAgICAgICAgIHRoaXMucm9vdC5oYXNUcmVlQW5pbWF0ZWQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHRoaXMucm9vdC5pc1VwZGF0ZUJsb2NrZWQoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucy5vbkV4aXRDb21wbGV0ZSAmJiB0aGlzLm9wdGlvbnMub25FeGl0Q29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAhdGhpcy5yb290LmlzVXBkYXRpbmcgJiYgdGhpcy5yb290LnN0YXJ0VXBkYXRlKCk7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xheW91dERpcnR5KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMuaXNMYXlvdXREaXJ0eSA9IHRydWU7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucGF0aC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLnBhdGhbaV07XG4gICAgICAgICAgICAgICAgbm9kZS5zaG91bGRSZXNldFRyYW5zZm9ybSA9IHRydWU7XG4gICAgICAgICAgICAgICAgbm9kZS51cGRhdGVTY3JvbGwoXCJzbmFwc2hvdFwiKTtcbiAgICAgICAgICAgICAgICBpZiAobm9kZS5vcHRpb25zLmxheW91dFJvb3QpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS53aWxsVXBkYXRlKGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB7IGxheW91dElkLCBsYXlvdXQgfSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgICAgIGlmIChsYXlvdXRJZCA9PT0gdW5kZWZpbmVkICYmICFsYXlvdXQpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgdHJhbnNmb3JtVGVtcGxhdGUgPSB0aGlzLmdldFRyYW5zZm9ybVRlbXBsYXRlKCk7XG4gICAgICAgICAgICB0aGlzLnByZXZUcmFuc2Zvcm1UZW1wbGF0ZVZhbHVlID0gdHJhbnNmb3JtVGVtcGxhdGVcbiAgICAgICAgICAgICAgICA/IHRyYW5zZm9ybVRlbXBsYXRlKHRoaXMubGF0ZXN0VmFsdWVzLCBcIlwiKVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVTbmFwc2hvdCgpO1xuICAgICAgICAgICAgc2hvdWxkTm90aWZ5TGlzdGVuZXJzICYmIHRoaXMubm90aWZ5TGlzdGVuZXJzKFwid2lsbFVwZGF0ZVwiKTtcbiAgICAgICAgfVxuICAgICAgICB1cGRhdGUoKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjaGVkdWxlZCA9IGZhbHNlO1xuICAgICAgICAgICAgY29uc3QgdXBkYXRlV2FzQmxvY2tlZCA9IHRoaXMuaXNVcGRhdGVCbG9ja2VkKCk7XG4gICAgICAgICAgICAvLyBXaGVuIGRvaW5nIGFuIGluc3RhbnQgdHJhbnNpdGlvbiwgd2Ugc2tpcCB0aGUgbGF5b3V0IHVwZGF0ZSxcbiAgICAgICAgICAgIC8vIGJ1dCBzaG91bGQgc3RpbGwgY2xlYW4gdXAgdGhlIG1lYXN1cmVtZW50cyBzbyB0aGF0IHRoZSBuZXh0XG4gICAgICAgICAgICAvLyBzbmFwc2hvdCBjb3VsZCBiZSB0YWtlbiBjb3JyZWN0bHkuXG4gICAgICAgICAgICBpZiAodXBkYXRlV2FzQmxvY2tlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMudW5ibG9ja1VwZGF0ZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJBbGxTbmFwc2hvdHMoKTtcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGVzLmZvckVhY2goY2xlYXJNZWFzdXJlbWVudHMpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5pc1VwZGF0aW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ub2Rlcy5mb3JFYWNoKGNsZWFySXNMYXlvdXREaXJ0eSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmlzVXBkYXRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV3JpdGVcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5ub2Rlcy5mb3JFYWNoKHJlc2V0VHJhbnNmb3JtU3R5bGUpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBSZWFkID09PT09PT09PT09PT09PT09PVxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICAvLyBVcGRhdGUgbGF5b3V0IG1lYXN1cmVtZW50cyBvZiB1cGRhdGVkIGNoaWxkcmVuXG4gICAgICAgICAgICB0aGlzLm5vZGVzLmZvckVhY2godXBkYXRlTGF5b3V0KTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogV3JpdGVcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgLy8gTm90aWZ5IGxpc3RlbmVycyB0aGF0IHRoZSBsYXlvdXQgaXMgdXBkYXRlZFxuICAgICAgICAgICAgdGhpcy5ub2Rlcy5mb3JFYWNoKG5vdGlmeUxheW91dFVwZGF0ZSk7XG4gICAgICAgICAgICB0aGlzLmNsZWFyQWxsU25hcHNob3RzKCk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE1hbnVhbGx5IGZsdXNoIGFueSBwZW5kaW5nIHVwZGF0ZXMuIElkZWFsbHlcbiAgICAgICAgICAgICAqIHdlIGNvdWxkIGxlYXZlIHRoaXMgdG8gdGhlIGZvbGxvd2luZyByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgYnV0IHRoaXMgc2VlbXNcbiAgICAgICAgICAgICAqIHRvIGxlYXZlIGEgZmxhc2ggb2YgaW5jb3JyZWN0bHkgc3R5bGVkIGNvbnRlbnQuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IG5vdyA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgICAgICAgICAgZnJhbWVEYXRhLmRlbHRhID0gY2xhbXAoMCwgMTAwMCAvIDYwLCBub3cgLSBmcmFtZURhdGEudGltZXN0YW1wKTtcbiAgICAgICAgICAgIGZyYW1lRGF0YS50aW1lc3RhbXAgPSBub3c7XG4gICAgICAgICAgICBmcmFtZURhdGEuaXNQcm9jZXNzaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgIHN0ZXBzLnVwZGF0ZS5wcm9jZXNzKGZyYW1lRGF0YSk7XG4gICAgICAgICAgICBzdGVwcy5wcmVSZW5kZXIucHJvY2VzcyhmcmFtZURhdGEpO1xuICAgICAgICAgICAgc3RlcHMucmVuZGVyLnByb2Nlc3MoZnJhbWVEYXRhKTtcbiAgICAgICAgICAgIGZyYW1lRGF0YS5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBkaWRVcGRhdGUoKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMudXBkYXRlU2NoZWR1bGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVTY2hlZHVsZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHF1ZXVlTWljcm90YXNrKCgpID0+IHRoaXMudXBkYXRlKCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNsZWFyQWxsU25hcHNob3RzKCkge1xuICAgICAgICAgICAgdGhpcy5ub2Rlcy5mb3JFYWNoKGNsZWFyU25hcHNob3QpO1xuICAgICAgICAgICAgdGhpcy5zaGFyZWROb2Rlcy5mb3JFYWNoKHJlbW92ZUxlYWRTbmFwc2hvdHMpO1xuICAgICAgICB9XG4gICAgICAgIHNjaGVkdWxlVXBkYXRlUHJvamVjdGlvbigpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5wcm9qZWN0aW9uVXBkYXRlU2NoZWR1bGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wcm9qZWN0aW9uVXBkYXRlU2NoZWR1bGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBmcmFtZS5wcmVSZW5kZXIodGhpcy51cGRhdGVQcm9qZWN0aW9uLCBmYWxzZSwgdHJ1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2NoZWR1bGVDaGVja0FmdGVyVW5tb3VudCgpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhlIHVubW91bnRpbmcgbm9kZSBpcyBpbiBhIGxheW91dEdyb3VwIGFuZCBkaWQgdHJpZ2dlciBhIHdpbGxVcGRhdGUsXG4gICAgICAgICAgICAgKiB3ZSBtYW51YWxseSBjYWxsIGRpZFVwZGF0ZSB0byBnaXZlIGEgY2hhbmNlIHRvIHRoZSBzaWJsaW5ncyB0byBhbmltYXRlLlxuICAgICAgICAgICAgICogT3RoZXJ3aXNlLCBjbGVhbnVwIGFsbCBzbmFwc2hvdHMgdG8gcHJldmVudHMgZnV0dXJlIG5vZGVzIGZyb20gcmV1c2luZyB0aGVtLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBmcmFtZS5wb3N0UmVuZGVyKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc0xheW91dERpcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm9vdC5kaWRVcGRhdGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucm9vdC5jaGVja1VwZGF0ZUZhaWxlZCgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVcGRhdGUgbWVhc3VyZW1lbnRzXG4gICAgICAgICAqL1xuICAgICAgICB1cGRhdGVTbmFwc2hvdCgpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnNuYXBzaG90IHx8ICF0aGlzLmluc3RhbmNlKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMuc25hcHNob3QgPSB0aGlzLm1lYXN1cmUoKTtcbiAgICAgICAgfVxuICAgICAgICB1cGRhdGVMYXlvdXQoKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuaW5zdGFuY2UpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgLy8gVE9ETzogSW5jb3Jwb3JhdGUgaW50byBhIGZvcndhcmRlZCBzY3JvbGwgb2Zmc2V0XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNjcm9sbCgpO1xuICAgICAgICAgICAgaWYgKCEodGhpcy5vcHRpb25zLmFsd2F5c01lYXN1cmVMYXlvdXQgJiYgdGhpcy5pc0xlYWQoKSkgJiZcbiAgICAgICAgICAgICAgICAhdGhpcy5pc0xheW91dERpcnR5KSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXaGVuIGEgbm9kZSBpcyBtb3VudGVkLCBpdCBzaW1wbHkgcmVzdW1lcyBmcm9tIHRoZSBwcmV2TGVhZCdzXG4gICAgICAgICAgICAgKiBzbmFwc2hvdCBpbnN0ZWFkIG9mIHRha2luZyBhIG5ldyBvbmUsIGJ1dCB0aGUgYW5jZXN0b3JzIHNjcm9sbFxuICAgICAgICAgICAgICogbWlnaHQgaGF2ZSB1cGRhdGVkIHdoaWxlIHRoZSBwcmV2TGVhZCBpcyB1bm1vdW50ZWQuIFdlIG5lZWQgdG9cbiAgICAgICAgICAgICAqIHVwZGF0ZSB0aGUgc2Nyb2xsIGFnYWluIHRvIG1ha2Ugc3VyZSB0aGUgbGF5b3V0IHdlIG1lYXN1cmUgaXNcbiAgICAgICAgICAgICAqIHVwIHRvIGRhdGUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICh0aGlzLnJlc3VtZUZyb20gJiYgIXRoaXMucmVzdW1lRnJvbS5pbnN0YW5jZSkge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wYXRoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLnBhdGhbaV07XG4gICAgICAgICAgICAgICAgICAgIG5vZGUudXBkYXRlU2Nyb2xsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcHJldkxheW91dCA9IHRoaXMubGF5b3V0O1xuICAgICAgICAgICAgdGhpcy5sYXlvdXQgPSB0aGlzLm1lYXN1cmUoZmFsc2UpO1xuICAgICAgICAgICAgdGhpcy5sYXlvdXRDb3JyZWN0ZWQgPSBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgIHRoaXMuaXNMYXlvdXREaXJ0eSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5wcm9qZWN0aW9uRGVsdGEgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB0aGlzLm5vdGlmeUxpc3RlbmVycyhcIm1lYXN1cmVcIiwgdGhpcy5sYXlvdXQubGF5b3V0Qm94KTtcbiAgICAgICAgICAgIGNvbnN0IHsgdmlzdWFsRWxlbWVudCB9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICAgICAgdmlzdWFsRWxlbWVudCAmJlxuICAgICAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQubm90aWZ5KFwiTGF5b3V0TWVhc3VyZVwiLCB0aGlzLmxheW91dC5sYXlvdXRCb3gsIHByZXZMYXlvdXQgPyBwcmV2TGF5b3V0LmxheW91dEJveCA6IHVuZGVmaW5lZCk7XG4gICAgICAgIH1cbiAgICAgICAgdXBkYXRlU2Nyb2xsKHBoYXNlID0gXCJtZWFzdXJlXCIpIHtcbiAgICAgICAgICAgIGxldCBuZWVkc01lYXN1cmVtZW50ID0gQm9vbGVhbih0aGlzLm9wdGlvbnMubGF5b3V0U2Nyb2xsICYmIHRoaXMuaW5zdGFuY2UpO1xuICAgICAgICAgICAgaWYgKHRoaXMuc2Nyb2xsICYmXG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGwuYW5pbWF0aW9uSWQgPT09IHRoaXMucm9vdC5hbmltYXRpb25JZCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsLnBoYXNlID09PSBwaGFzZSkge1xuICAgICAgICAgICAgICAgIG5lZWRzTWVhc3VyZW1lbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChuZWVkc01lYXN1cmVtZW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zY3JvbGwgPSB7XG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbklkOiB0aGlzLnJvb3QuYW5pbWF0aW9uSWQsXG4gICAgICAgICAgICAgICAgICAgIHBoYXNlLFxuICAgICAgICAgICAgICAgICAgICBpc1Jvb3Q6IGNoZWNrSXNTY3JvbGxSb290KHRoaXMuaW5zdGFuY2UpLFxuICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IG1lYXN1cmVTY3JvbGwodGhpcy5pbnN0YW5jZSksXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXNldFRyYW5zZm9ybSgpIHtcbiAgICAgICAgICAgIGlmICghcmVzZXRUcmFuc2Zvcm0pXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgaXNSZXNldFJlcXVlc3RlZCA9IHRoaXMuaXNMYXlvdXREaXJ0eSB8fCB0aGlzLnNob3VsZFJlc2V0VHJhbnNmb3JtO1xuICAgICAgICAgICAgY29uc3QgaGFzUHJvamVjdGlvbiA9IHRoaXMucHJvamVjdGlvbkRlbHRhICYmICFpc0RlbHRhWmVybyh0aGlzLnByb2plY3Rpb25EZWx0YSk7XG4gICAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1UZW1wbGF0ZSA9IHRoaXMuZ2V0VHJhbnNmb3JtVGVtcGxhdGUoKTtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybVRlbXBsYXRlVmFsdWUgPSB0cmFuc2Zvcm1UZW1wbGF0ZVxuICAgICAgICAgICAgICAgID8gdHJhbnNmb3JtVGVtcGxhdGUodGhpcy5sYXRlc3RWYWx1ZXMsIFwiXCIpXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1UZW1wbGF0ZUhhc0NoYW5nZWQgPSB0cmFuc2Zvcm1UZW1wbGF0ZVZhbHVlICE9PSB0aGlzLnByZXZUcmFuc2Zvcm1UZW1wbGF0ZVZhbHVlO1xuICAgICAgICAgICAgaWYgKGlzUmVzZXRSZXF1ZXN0ZWQgJiZcbiAgICAgICAgICAgICAgICAoaGFzUHJvamVjdGlvbiB8fFxuICAgICAgICAgICAgICAgICAgICBoYXNUcmFuc2Zvcm0odGhpcy5sYXRlc3RWYWx1ZXMpIHx8XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybVRlbXBsYXRlSGFzQ2hhbmdlZCkpIHtcbiAgICAgICAgICAgICAgICByZXNldFRyYW5zZm9ybSh0aGlzLmluc3RhbmNlLCB0cmFuc2Zvcm1UZW1wbGF0ZVZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNob3VsZFJlc2V0VHJhbnNmb3JtID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZVJlbmRlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG1lYXN1cmUocmVtb3ZlVHJhbnNmb3JtID0gdHJ1ZSkge1xuICAgICAgICAgICAgY29uc3QgcGFnZUJveCA9IHRoaXMubWVhc3VyZVBhZ2VCb3goKTtcbiAgICAgICAgICAgIGxldCBsYXlvdXRCb3ggPSB0aGlzLnJlbW92ZUVsZW1lbnRTY3JvbGwocGFnZUJveCk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE1lYXN1cmVtZW50cyB0YWtlbiBkdXJpbmcgdGhlIHByZS1yZW5kZXIgc3RhZ2VcbiAgICAgICAgICAgICAqIHN0aWxsIGhhdmUgdHJhbnNmb3JtcyBhcHBsaWVkIHNvIHdlIHJlbW92ZSB0aGVtXG4gICAgICAgICAgICAgKiB2aWEgY2FsY3VsYXRpb24uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmIChyZW1vdmVUcmFuc2Zvcm0pIHtcbiAgICAgICAgICAgICAgICBsYXlvdXRCb3ggPSB0aGlzLnJlbW92ZVRyYW5zZm9ybShsYXlvdXRCb3gpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcm91bmRCb3gobGF5b3V0Qm94KTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uSWQ6IHRoaXMucm9vdC5hbmltYXRpb25JZCxcbiAgICAgICAgICAgICAgICBtZWFzdXJlZEJveDogcGFnZUJveCxcbiAgICAgICAgICAgICAgICBsYXlvdXRCb3gsXG4gICAgICAgICAgICAgICAgbGF0ZXN0VmFsdWVzOiB7fSxcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXMuaWQsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIG1lYXN1cmVQYWdlQm94KCkge1xuICAgICAgICAgICAgY29uc3QgeyB2aXN1YWxFbGVtZW50IH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgICAgICBpZiAoIXZpc3VhbEVsZW1lbnQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgY29uc3QgYm94ID0gdmlzdWFsRWxlbWVudC5tZWFzdXJlVmlld3BvcnRCb3goKTtcbiAgICAgICAgICAgIC8vIFJlbW92ZSB2aWV3cG9ydCBzY3JvbGwgdG8gZ2l2ZSBwYWdlLXJlbGF0aXZlIGNvb3JkaW5hdGVzXG4gICAgICAgICAgICBjb25zdCB7IHNjcm9sbCB9ID0gdGhpcy5yb290O1xuICAgICAgICAgICAgaWYgKHNjcm9sbCkge1xuICAgICAgICAgICAgICAgIHRyYW5zbGF0ZUF4aXMoYm94LngsIHNjcm9sbC5vZmZzZXQueCk7XG4gICAgICAgICAgICAgICAgdHJhbnNsYXRlQXhpcyhib3gueSwgc2Nyb2xsLm9mZnNldC55KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBib3g7XG4gICAgICAgIH1cbiAgICAgICAgcmVtb3ZlRWxlbWVudFNjcm9sbChib3gpIHtcbiAgICAgICAgICAgIGNvbnN0IGJveFdpdGhvdXRTY3JvbGwgPSBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgIGNvcHlCb3hJbnRvKGJveFdpdGhvdXRTY3JvbGwsIGJveCk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFBlcmZvcm1hbmNlIFRPRE86IEtlZXAgYSBjdW11bGF0aXZlIHNjcm9sbCBvZmZzZXQgZG93biB0aGUgdHJlZVxuICAgICAgICAgICAgICogcmF0aGVyIHRoYW4gbG9vcCBiYWNrIHVwIHRoZSBwYXRoLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucGF0aC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLnBhdGhbaV07XG4gICAgICAgICAgICAgICAgY29uc3QgeyBzY3JvbGwsIG9wdGlvbnMgfSA9IG5vZGU7XG4gICAgICAgICAgICAgICAgaWYgKG5vZGUgIT09IHRoaXMucm9vdCAmJiBzY3JvbGwgJiYgb3B0aW9ucy5sYXlvdXRTY3JvbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAqIElmIHRoaXMgaXMgYSBuZXcgc2Nyb2xsIHJvb3QsIHdlIHdhbnQgdG8gcmVtb3ZlIGFsbCBwcmV2aW91cyBzY3JvbGxzXG4gICAgICAgICAgICAgICAgICAgICAqIGZyb20gdGhlIHZpZXdwb3J0IGJveC5cbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgIGlmIChzY3JvbGwuaXNSb290KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb3B5Qm94SW50byhib3hXaXRob3V0U2Nyb2xsLCBib3gpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBzY3JvbGw6IHJvb3RTY3JvbGwgfSA9IHRoaXMucm9vdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAgICAgICAgICogVW5kbyB0aGUgYXBwbGljYXRpb24gb2YgcGFnZSBzY3JvbGwgdGhhdCB3YXMgb3JpZ2luYWxseSBhZGRlZFxuICAgICAgICAgICAgICAgICAgICAgICAgICogdG8gdGhlIG1lYXN1cmVkIGJvdW5kaW5nIGJveC5cbiAgICAgICAgICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJvb3RTY3JvbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGVBeGlzKGJveFdpdGhvdXRTY3JvbGwueCwgLXJvb3RTY3JvbGwub2Zmc2V0LngpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZUF4aXMoYm94V2l0aG91dFNjcm9sbC55LCAtcm9vdFNjcm9sbC5vZmZzZXQueSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRlQXhpcyhib3hXaXRob3V0U2Nyb2xsLngsIHNjcm9sbC5vZmZzZXQueCk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0ZUF4aXMoYm94V2l0aG91dFNjcm9sbC55LCBzY3JvbGwub2Zmc2V0LnkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBib3hXaXRob3V0U2Nyb2xsO1xuICAgICAgICB9XG4gICAgICAgIGFwcGx5VHJhbnNmb3JtKGJveCwgdHJhbnNmb3JtT25seSA9IGZhbHNlKSB7XG4gICAgICAgICAgICBjb25zdCB3aXRoVHJhbnNmb3JtcyA9IGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgY29weUJveEludG8od2l0aFRyYW5zZm9ybXMsIGJveCk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucGF0aC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLnBhdGhbaV07XG4gICAgICAgICAgICAgICAgaWYgKCF0cmFuc2Zvcm1Pbmx5ICYmXG4gICAgICAgICAgICAgICAgICAgIG5vZGUub3B0aW9ucy5sYXlvdXRTY3JvbGwgJiZcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5zY3JvbGwgJiZcbiAgICAgICAgICAgICAgICAgICAgbm9kZSAhPT0gbm9kZS5yb290KSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybUJveCh3aXRoVHJhbnNmb3Jtcywge1xuICAgICAgICAgICAgICAgICAgICAgICAgeDogLW5vZGUuc2Nyb2xsLm9mZnNldC54LFxuICAgICAgICAgICAgICAgICAgICAgICAgeTogLW5vZGUuc2Nyb2xsLm9mZnNldC55LFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKCFoYXNUcmFuc2Zvcm0obm9kZS5sYXRlc3RWYWx1ZXMpKVxuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1Cb3god2l0aFRyYW5zZm9ybXMsIG5vZGUubGF0ZXN0VmFsdWVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChoYXNUcmFuc2Zvcm0odGhpcy5sYXRlc3RWYWx1ZXMpKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtQm94KHdpdGhUcmFuc2Zvcm1zLCB0aGlzLmxhdGVzdFZhbHVlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gd2l0aFRyYW5zZm9ybXM7XG4gICAgICAgIH1cbiAgICAgICAgcmVtb3ZlVHJhbnNmb3JtKGJveCkge1xuICAgICAgICAgICAgY29uc3QgYm94V2l0aG91dFRyYW5zZm9ybSA9IGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgY29weUJveEludG8oYm94V2l0aG91dFRyYW5zZm9ybSwgYm94KTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wYXRoLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMucGF0aFtpXTtcbiAgICAgICAgICAgICAgICBpZiAoIW5vZGUuaW5zdGFuY2UpXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIGlmICghaGFzVHJhbnNmb3JtKG5vZGUubGF0ZXN0VmFsdWVzKSlcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgaGFzU2NhbGUobm9kZS5sYXRlc3RWYWx1ZXMpICYmIG5vZGUudXBkYXRlU25hcHNob3QoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzb3VyY2VCb3ggPSBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgICAgICBjb25zdCBub2RlQm94ID0gbm9kZS5tZWFzdXJlUGFnZUJveCgpO1xuICAgICAgICAgICAgICAgIGNvcHlCb3hJbnRvKHNvdXJjZUJveCwgbm9kZUJveCk7XG4gICAgICAgICAgICAgICAgcmVtb3ZlQm94VHJhbnNmb3Jtcyhib3hXaXRob3V0VHJhbnNmb3JtLCBub2RlLmxhdGVzdFZhbHVlcywgbm9kZS5zbmFwc2hvdCA/IG5vZGUuc25hcHNob3QubGF5b3V0Qm94IDogdW5kZWZpbmVkLCBzb3VyY2VCb3gpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGhhc1RyYW5zZm9ybSh0aGlzLmxhdGVzdFZhbHVlcykpIHtcbiAgICAgICAgICAgICAgICByZW1vdmVCb3hUcmFuc2Zvcm1zKGJveFdpdGhvdXRUcmFuc2Zvcm0sIHRoaXMubGF0ZXN0VmFsdWVzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBib3hXaXRob3V0VHJhbnNmb3JtO1xuICAgICAgICB9XG4gICAgICAgIHNldFRhcmdldERlbHRhKGRlbHRhKSB7XG4gICAgICAgICAgICB0aGlzLnRhcmdldERlbHRhID0gZGVsdGE7XG4gICAgICAgICAgICB0aGlzLnJvb3Quc2NoZWR1bGVVcGRhdGVQcm9qZWN0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLmlzUHJvamVjdGlvbkRpcnR5ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBzZXRPcHRpb25zKG9wdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAuLi50aGlzLm9wdGlvbnMsXG4gICAgICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgICAgICBjcm9zc2ZhZGU6IG9wdGlvbnMuY3Jvc3NmYWRlICE9PSB1bmRlZmluZWQgPyBvcHRpb25zLmNyb3NzZmFkZSA6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGNsZWFyTWVhc3VyZW1lbnRzKCkge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGwgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB0aGlzLmxheW91dCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMuc25hcHNob3QgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB0aGlzLnByZXZUcmFuc2Zvcm1UZW1wbGF0ZVZhbHVlID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgdGhpcy50YXJnZXREZWx0YSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMudGFyZ2V0ID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgdGhpcy5pc0xheW91dERpcnR5ID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgZm9yY2VSZWxhdGl2ZVBhcmVudFRvUmVzb2x2ZVRhcmdldCgpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5yZWxhdGl2ZVBhcmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoZSBwYXJlbnQgdGFyZ2V0IGlzbid0IHVwLXRvLWRhdGUsIGZvcmNlIGl0IHRvIHVwZGF0ZS5cbiAgICAgICAgICAgICAqIFRoaXMgaXMgYW4gdW5mb3J0dW5hdGUgZGUtb3B0aW1pc2F0aW9uIGFzIGl0IG1lYW5zIGFueSB1cGRhdGluZyByZWxhdGl2ZVxuICAgICAgICAgICAgICogcHJvamVjdGlvbiB3aWxsIGNhdXNlIGFsbCB0aGUgcmVsYXRpdmUgcGFyZW50cyB0byByZWNhbGN1bGF0ZSBiYWNrXG4gICAgICAgICAgICAgKiB1cCB0aGUgdHJlZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMucmVsYXRpdmVQYXJlbnQucmVzb2x2ZWRSZWxhdGl2ZVRhcmdldEF0ICE9PVxuICAgICAgICAgICAgICAgIGZyYW1lRGF0YS50aW1lc3RhbXApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlUGFyZW50LnJlc29sdmVUYXJnZXREZWx0YSh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlVGFyZ2V0RGVsdGEoZm9yY2VSZWNhbGN1bGF0aW9uID0gZmFsc2UpIHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogT25jZSB0aGUgZGlydHkgc3RhdHVzIG9mIG5vZGVzIGhhcyBiZWVuIHNwcmVhZCB0aHJvdWdoIHRoZSB0cmVlLCB3ZSBhbHNvXG4gICAgICAgICAgICAgKiBuZWVkIHRvIGNoZWNrIGlmIHdlIGhhdmUgYSBzaGFyZWQgbm9kZSBvZiBhIGRpZmZlcmVudCBkZXB0aCB0aGF0IGhhcyBpdHNlbGZcbiAgICAgICAgICAgICAqIGJlZW4gZGlydGllZC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgbGVhZCA9IHRoaXMuZ2V0TGVhZCgpO1xuICAgICAgICAgICAgdGhpcy5pc1Byb2plY3Rpb25EaXJ0eSB8fCAodGhpcy5pc1Byb2plY3Rpb25EaXJ0eSA9IGxlYWQuaXNQcm9qZWN0aW9uRGlydHkpO1xuICAgICAgICAgICAgdGhpcy5pc1RyYW5zZm9ybURpcnR5IHx8ICh0aGlzLmlzVHJhbnNmb3JtRGlydHkgPSBsZWFkLmlzVHJhbnNmb3JtRGlydHkpO1xuICAgICAgICAgICAgdGhpcy5pc1NoYXJlZFByb2plY3Rpb25EaXJ0eSB8fCAodGhpcy5pc1NoYXJlZFByb2plY3Rpb25EaXJ0eSA9IGxlYWQuaXNTaGFyZWRQcm9qZWN0aW9uRGlydHkpO1xuICAgICAgICAgICAgY29uc3QgaXNTaGFyZWQgPSBCb29sZWFuKHRoaXMucmVzdW1pbmdGcm9tKSB8fCB0aGlzICE9PSBsZWFkO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBXZSBkb24ndCB1c2UgdHJhbnNmb3JtIGZvciB0aGlzIHN0ZXAgb2YgcHJvY2Vzc2luZyBzbyB3ZSBkb24ndFxuICAgICAgICAgICAgICogbmVlZCB0byBjaGVjayB3aGV0aGVyIGFueSBub2RlcyBoYXZlIGNoYW5nZWQgdHJhbnNmb3JtLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCBjYW5Ta2lwID0gIShmb3JjZVJlY2FsY3VsYXRpb24gfHxcbiAgICAgICAgICAgICAgICAoaXNTaGFyZWQgJiYgdGhpcy5pc1NoYXJlZFByb2plY3Rpb25EaXJ0eSkgfHxcbiAgICAgICAgICAgICAgICB0aGlzLmlzUHJvamVjdGlvbkRpcnR5IHx8XG4gICAgICAgICAgICAgICAgKChfYSA9IHRoaXMucGFyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNQcm9qZWN0aW9uRGlydHkpIHx8XG4gICAgICAgICAgICAgICAgdGhpcy5hdHRlbXB0VG9SZXNvbHZlUmVsYXRpdmVUYXJnZXQpO1xuICAgICAgICAgICAgaWYgKGNhblNraXApXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgeyBsYXlvdXQsIGxheW91dElkIH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlIGhhdmUgbm8gbGF5b3V0LCB3ZSBjYW4ndCBwZXJmb3JtIHByb2plY3Rpb24sIHNvIGVhcmx5IHJldHVyblxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAoIXRoaXMubGF5b3V0IHx8ICEobGF5b3V0IHx8IGxheW91dElkKSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB0aGlzLnJlc29sdmVkUmVsYXRpdmVUYXJnZXRBdCA9IGZyYW1lRGF0YS50aW1lc3RhbXA7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlIGRvbid0IGhhdmUgYSB0YXJnZXREZWx0YSBidXQgZG8gaGF2ZSBhIGxheW91dCwgd2UgY2FuIGF0dGVtcHQgdG8gcmVzb2x2ZVxuICAgICAgICAgICAgICogYSByZWxhdGl2ZVBhcmVudC4gVGhpcyB3aWxsIGFsbG93IGEgY29tcG9uZW50IHRvIHBlcmZvcm0gc2NhbGUgY29ycmVjdGlvblxuICAgICAgICAgICAgICogZXZlbiBpZiBubyBhbmltYXRpb24gaGFzIHN0YXJ0ZWQuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIC8vIFRPRE8gSWYgdGhpcyBpcyB1bnN1Y2Nlc3NmdWwgdGhpcyBjdXJyZW50bHkgaGFwcGVucyBldmVyeSBmcmFtZVxuICAgICAgICAgICAgaWYgKCF0aGlzLnRhcmdldERlbHRhICYmICF0aGlzLnJlbGF0aXZlVGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgLy8gVE9ETzogVGhpcyBpcyBhIHNlbWktcmVwZXRpdGlvbiBvZiBmdXJ0aGVyIGRvd24gdGhpcyBmdW5jdGlvbiwgbWFrZSBEUllcbiAgICAgICAgICAgICAgICBjb25zdCByZWxhdGl2ZVBhcmVudCA9IHRoaXMuZ2V0Q2xvc2VzdFByb2plY3RpbmdQYXJlbnQoKTtcbiAgICAgICAgICAgICAgICBpZiAocmVsYXRpdmVQYXJlbnQgJiZcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpdmVQYXJlbnQubGF5b3V0ICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uUHJvZ3Jlc3MgIT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVBhcmVudCA9IHJlbGF0aXZlUGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcmNlUmVsYXRpdmVQYXJlbnRUb1Jlc29sdmVUYXJnZXQoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVRhcmdldCA9IGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlVGFyZ2V0T3JpZ2luID0gY3JlYXRlQm94KCk7XG4gICAgICAgICAgICAgICAgICAgIGNhbGNSZWxhdGl2ZVBvc2l0aW9uKHRoaXMucmVsYXRpdmVUYXJnZXRPcmlnaW4sIHRoaXMubGF5b3V0LmxheW91dEJveCwgcmVsYXRpdmVQYXJlbnQubGF5b3V0LmxheW91dEJveCk7XG4gICAgICAgICAgICAgICAgICAgIGNvcHlCb3hJbnRvKHRoaXMucmVsYXRpdmVUYXJnZXQsIHRoaXMucmVsYXRpdmVUYXJnZXRPcmlnaW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVBhcmVudCA9IHRoaXMucmVsYXRpdmVUYXJnZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB3ZSBoYXZlIG5vIHJlbGF0aXZlIHRhcmdldCBvciBubyB0YXJnZXQgZGVsdGEgb3VyIHRhcmdldCBpc24ndCB2YWxpZFxuICAgICAgICAgICAgICogZm9yIHRoaXMgZnJhbWUuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICghdGhpcy5yZWxhdGl2ZVRhcmdldCAmJiAhdGhpcy50YXJnZXREZWx0YSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIExhenktaW5pdCB0YXJnZXQgZGF0YSBzdHJ1Y3R1cmVcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKCF0aGlzLnRhcmdldCkge1xuICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0ID0gY3JlYXRlQm94KCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXRXaXRoVHJhbnNmb3JtcyA9IGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB3ZSd2ZSBnb3QgYSByZWxhdGl2ZSBib3ggZm9yIHRoaXMgY29tcG9uZW50LCByZXNvbHZlIGl0IGludG8gYSB0YXJnZXQgcmVsYXRpdmUgdG8gdGhlIHBhcmVudC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMucmVsYXRpdmVUYXJnZXQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlVGFyZ2V0T3JpZ2luICYmXG4gICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVBhcmVudCAmJlxuICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpdmVQYXJlbnQudGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JjZVJlbGF0aXZlUGFyZW50VG9SZXNvbHZlVGFyZ2V0KCk7XG4gICAgICAgICAgICAgICAgY2FsY1JlbGF0aXZlQm94KHRoaXMudGFyZ2V0LCB0aGlzLnJlbGF0aXZlVGFyZ2V0LCB0aGlzLnJlbGF0aXZlUGFyZW50LnRhcmdldCk7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgd2UndmUgb25seSBnb3QgYSB0YXJnZXREZWx0YSwgcmVzb2x2ZSBpdCBpbnRvIGEgdGFyZ2V0XG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLnRhcmdldERlbHRhKSB7XG4gICAgICAgICAgICAgICAgaWYgKEJvb2xlYW4odGhpcy5yZXN1bWluZ0Zyb20pKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFRPRE86IFRoaXMgaXMgY3JlYXRpbmcgYSBuZXcgb2JqZWN0IGV2ZXJ5IGZyYW1lXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0ID0gdGhpcy5hcHBseVRyYW5zZm9ybSh0aGlzLmxheW91dC5sYXlvdXRCb3gpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29weUJveEludG8odGhpcy50YXJnZXQsIHRoaXMubGF5b3V0LmxheW91dEJveCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGFwcGx5Qm94RGVsdGEodGhpcy50YXJnZXQsIHRoaXMudGFyZ2V0RGVsdGEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgbm8gdGFyZ2V0LCB1c2Ugb3duIGxheW91dCBhcyB0YXJnZXRcbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBjb3B5Qm94SW50byh0aGlzLnRhcmdldCwgdGhpcy5sYXlvdXQubGF5b3V0Qm94KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgd2UndmUgYmVlbiB0b2xkIHRvIGF0dGVtcHQgdG8gcmVzb2x2ZSBhIHJlbGF0aXZlIHRhcmdldCwgZG8gc28uXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICh0aGlzLmF0dGVtcHRUb1Jlc29sdmVSZWxhdGl2ZVRhcmdldCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYXR0ZW1wdFRvUmVzb2x2ZVJlbGF0aXZlVGFyZ2V0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVsYXRpdmVQYXJlbnQgPSB0aGlzLmdldENsb3Nlc3RQcm9qZWN0aW5nUGFyZW50KCk7XG4gICAgICAgICAgICAgICAgaWYgKHJlbGF0aXZlUGFyZW50ICYmXG4gICAgICAgICAgICAgICAgICAgIEJvb2xlYW4ocmVsYXRpdmVQYXJlbnQucmVzdW1pbmdGcm9tKSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgIEJvb2xlYW4odGhpcy5yZXN1bWluZ0Zyb20pICYmXG4gICAgICAgICAgICAgICAgICAgICFyZWxhdGl2ZVBhcmVudC5vcHRpb25zLmxheW91dFNjcm9sbCAmJlxuICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVBhcmVudC50YXJnZXQgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hbmltYXRpb25Qcm9ncmVzcyAhPT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlUGFyZW50ID0gcmVsYXRpdmVQYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9yY2VSZWxhdGl2ZVBhcmVudFRvUmVzb2x2ZVRhcmdldCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlVGFyZ2V0ID0gY3JlYXRlQm94KCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpdmVUYXJnZXRPcmlnaW4gPSBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgICAgICAgICAgY2FsY1JlbGF0aXZlUG9zaXRpb24odGhpcy5yZWxhdGl2ZVRhcmdldE9yaWdpbiwgdGhpcy50YXJnZXQsIHJlbGF0aXZlUGFyZW50LnRhcmdldCk7XG4gICAgICAgICAgICAgICAgICAgIGNvcHlCb3hJbnRvKHRoaXMucmVsYXRpdmVUYXJnZXQsIHRoaXMucmVsYXRpdmVUYXJnZXRPcmlnaW4pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVBhcmVudCA9IHRoaXMucmVsYXRpdmVUYXJnZXQgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJbmNyZWFzZSBkZWJ1ZyBjb3VudGVyIGZvciByZXNvbHZlZCB0YXJnZXQgZGVsdGFzXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHByb2plY3Rpb25GcmFtZURhdGEucmVzb2x2ZWRUYXJnZXREZWx0YXMrKztcbiAgICAgICAgfVxuICAgICAgICBnZXRDbG9zZXN0UHJvamVjdGluZ1BhcmVudCgpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5wYXJlbnQgfHxcbiAgICAgICAgICAgICAgICBoYXNTY2FsZSh0aGlzLnBhcmVudC5sYXRlc3RWYWx1ZXMpIHx8XG4gICAgICAgICAgICAgICAgaGFzMkRUcmFuc2xhdGUodGhpcy5wYXJlbnQubGF0ZXN0VmFsdWVzKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5wYXJlbnQuaXNQcm9qZWN0aW5nKCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnQuZ2V0Q2xvc2VzdFByb2plY3RpbmdQYXJlbnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpc1Byb2plY3RpbmcoKSB7XG4gICAgICAgICAgICByZXR1cm4gQm9vbGVhbigodGhpcy5yZWxhdGl2ZVRhcmdldCB8fFxuICAgICAgICAgICAgICAgIHRoaXMudGFyZ2V0RGVsdGEgfHxcbiAgICAgICAgICAgICAgICB0aGlzLm9wdGlvbnMubGF5b3V0Um9vdCkgJiZcbiAgICAgICAgICAgICAgICB0aGlzLmxheW91dCk7XG4gICAgICAgIH1cbiAgICAgICAgY2FsY1Byb2plY3Rpb24oKSB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCBsZWFkID0gdGhpcy5nZXRMZWFkKCk7XG4gICAgICAgICAgICBjb25zdCBpc1NoYXJlZCA9IEJvb2xlYW4odGhpcy5yZXN1bWluZ0Zyb20pIHx8IHRoaXMgIT09IGxlYWQ7XG4gICAgICAgICAgICBsZXQgY2FuU2tpcCA9IHRydWU7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoaXMgaXMgYSBub3JtYWwgbGF5b3V0IGFuaW1hdGlvbiBhbmQgbmVpdGhlciB0aGlzIG5vZGUgbm9yIGl0cyBuZWFyZXN0IHByb2plY3RpbmdcbiAgICAgICAgICAgICAqIGlzIGRpcnR5IHRoZW4gd2UgY2FuJ3Qgc2tpcC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNQcm9qZWN0aW9uRGlydHkgfHwgKChfYSA9IHRoaXMucGFyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNQcm9qZWN0aW9uRGlydHkpKSB7XG4gICAgICAgICAgICAgICAgY2FuU2tpcCA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB0aGlzIGlzIGEgc2hhcmVkIGxheW91dCBhbmltYXRpb24gYW5kIHRoaXMgbm9kZSdzIHNoYXJlZCBwcm9qZWN0aW9uIGlzIGRpcnR5IHRoZW5cbiAgICAgICAgICAgICAqIHdlIGNhbid0IHNraXAuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmIChpc1NoYXJlZCAmJlxuICAgICAgICAgICAgICAgICh0aGlzLmlzU2hhcmVkUHJvamVjdGlvbkRpcnR5IHx8IHRoaXMuaXNUcmFuc2Zvcm1EaXJ0eSkpIHtcbiAgICAgICAgICAgICAgICBjYW5Ta2lwID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlIGhhdmUgcmVzb2x2ZWQgdGhlIHRhcmdldCB0aGlzIGZyYW1lIHdlIG11c3QgcmVjYWxjdWxhdGUgdGhlXG4gICAgICAgICAgICAgKiBwcm9qZWN0aW9uIHRvIGVuc3VyZSBpdCB2aXN1YWxseSByZXByZXNlbnRzIHRoZSBpbnRlcm5hbCBjYWxjdWxhdGlvbnMuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmICh0aGlzLnJlc29sdmVkUmVsYXRpdmVUYXJnZXRBdCA9PT0gZnJhbWVEYXRhLnRpbWVzdGFtcCkge1xuICAgICAgICAgICAgICAgIGNhblNraXAgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChjYW5Ta2lwKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGNvbnN0IHsgbGF5b3V0LCBsYXlvdXRJZCB9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB0aGlzIHNlY3Rpb24gb2YgdGhlIHRyZWUgaXNuJ3QgYW5pbWF0aW5nIHdlIGNhblxuICAgICAgICAgICAgICogZGVsZXRlIG91ciB0YXJnZXQgc291cmNlcyBmb3IgdGhlIGZvbGxvd2luZyBmcmFtZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5pc1RyZWVBbmltYXRpbmcgPSBCb29sZWFuKCh0aGlzLnBhcmVudCAmJiB0aGlzLnBhcmVudC5pc1RyZWVBbmltYXRpbmcpIHx8XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50QW5pbWF0aW9uIHx8XG4gICAgICAgICAgICAgICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc1RyZWVBbmltYXRpbmcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhcmdldERlbHRhID0gdGhpcy5yZWxhdGl2ZVRhcmdldCA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5sYXlvdXQgfHwgIShsYXlvdXQgfHwgbGF5b3V0SWQpKVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUmVzZXQgdGhlIGNvcnJlY3RlZCBib3ggd2l0aCB0aGUgbGF0ZXN0IHZhbHVlcyBmcm9tIGJveCwgYXMgd2UncmUgdGhlbiBnb2luZ1xuICAgICAgICAgICAgICogdG8gcGVyZm9ybSBtdXRhdGl2ZSBvcGVyYXRpb25zIG9uIGl0LlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb3B5Qm94SW50byh0aGlzLmxheW91dENvcnJlY3RlZCwgdGhpcy5sYXlvdXQubGF5b3V0Qm94KTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogUmVjb3JkIHByZXZpb3VzIHRyZWUgc2NhbGVzIGJlZm9yZSB1cGRhdGluZy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgcHJldlRyZWVTY2FsZVggPSB0aGlzLnRyZWVTY2FsZS54O1xuICAgICAgICAgICAgY29uc3QgcHJldlRyZWVTY2FsZVkgPSB0aGlzLnRyZWVTY2FsZS55O1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBcHBseSBhbGwgdGhlIHBhcmVudCBkZWx0YXMgdG8gdGhpcyBib3ggdG8gcHJvZHVjZSB0aGUgY29ycmVjdGVkIGJveC4gVGhpc1xuICAgICAgICAgICAgICogaXMgdGhlIGxheW91dCBib3gsIGFzIGl0IHdpbGwgYXBwZWFyIG9uIHNjcmVlbiBhcyBhIHJlc3VsdCBvZiB0aGUgdHJhbnNmb3JtcyBvZiBpdHMgcGFyZW50cy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgYXBwbHlUcmVlRGVsdGFzKHRoaXMubGF5b3V0Q29ycmVjdGVkLCB0aGlzLnRyZWVTY2FsZSwgdGhpcy5wYXRoLCBpc1NoYXJlZCk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoaXMgbGF5ZXIgbmVlZHMgdG8gcGVyZm9ybSBzY2FsZSBjb3JyZWN0aW9uIGJ1dCBkb2Vzbid0IGhhdmUgYSB0YXJnZXQsXG4gICAgICAgICAgICAgKiB1c2UgdGhlIGxheW91dCBhcyB0aGUgdGFyZ2V0LlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAobGVhZC5sYXlvdXQgJiZcbiAgICAgICAgICAgICAgICAhbGVhZC50YXJnZXQgJiZcbiAgICAgICAgICAgICAgICAodGhpcy50cmVlU2NhbGUueCAhPT0gMSB8fCB0aGlzLnRyZWVTY2FsZS55ICE9PSAxKSkge1xuICAgICAgICAgICAgICAgIGxlYWQudGFyZ2V0ID0gbGVhZC5sYXlvdXQubGF5b3V0Qm94O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgeyB0YXJnZXQgfSA9IGxlYWQ7XG4gICAgICAgICAgICBpZiAoIXRhcmdldCkge1xuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIElmIHdlIGRvbid0IGhhdmUgYSB0YXJnZXQgdG8gcHJvamVjdCBpbnRvLCBidXQgd2Ugd2VyZSBwcmV2aW91c2x5XG4gICAgICAgICAgICAgICAgICogcHJvamVjdGluZywgd2Ugd2FudCB0byByZW1vdmUgdGhlIHN0b3JlZCB0cmFuc2Zvcm0gYW5kIHNjaGVkdWxlXG4gICAgICAgICAgICAgICAgICogYSByZW5kZXIgdG8gZW5zdXJlIHRoZSBlbGVtZW50cyByZWZsZWN0IHRoZSByZW1vdmVkIHRyYW5zZm9ybS5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5wcm9qZWN0aW9uVHJhbnNmb3JtKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvamVjdGlvbkRlbHRhID0gY3JlYXRlRGVsdGEoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9qZWN0aW9uVHJhbnNmb3JtID0gXCJub25lXCI7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2NoZWR1bGVSZW5kZXIoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLnByb2plY3Rpb25EZWx0YSkge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvamVjdGlvbkRlbHRhID0gY3JlYXRlRGVsdGEoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnByb2plY3Rpb25EZWx0YVdpdGhUcmFuc2Zvcm0gPSBjcmVhdGVEZWx0YSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcHJldlByb2plY3Rpb25UcmFuc2Zvcm0gPSB0aGlzLnByb2plY3Rpb25UcmFuc2Zvcm07XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFVwZGF0ZSB0aGUgZGVsdGEgYmV0d2VlbiB0aGUgY29ycmVjdGVkIGJveCBhbmQgdGhlIHRhcmdldCBib3ggYmVmb3JlIHVzZXItc2V0IHRyYW5zZm9ybXMgd2VyZSBhcHBsaWVkLlxuICAgICAgICAgICAgICogVGhpcyB3aWxsIGFsbG93IHVzIHRvIGNhbGN1bGF0ZSB0aGUgY29ycmVjdGVkIGJvcmRlclJhZGl1cyBhbmQgYm94U2hhZG93IHRvIGNvbXBlbnNhdGVcbiAgICAgICAgICAgICAqIGZvciBvdXIgbGF5b3V0IHJlcHJvamVjdGlvbiwgYnV0IHN0aWxsIGFsbG93IHRoZW0gdG8gYmUgc2NhbGVkIGNvcnJlY3RseSBieSB0aGUgdXNlci5cbiAgICAgICAgICAgICAqIEl0IG1pZ2h0IGJlIHRoYXQgdG8gc2ltcGxpZnkgdGhpcyB3ZSBtYXkgd2FudCB0byBhY2NlcHQgdGhhdCB1c2VyLXNldCBzY2FsZSBpcyBhbHNvIGNvcnJlY3RlZFxuICAgICAgICAgICAgICogYW5kIHdlIHdvdWxkbid0IGhhdmUgdG8ga2VlcCBhbmQgY2FsYyBib3RoIGRlbHRhcywgT1Igd2UgY291bGQgc3VwcG9ydCBhIHVzZXIgc2V0dGluZ1xuICAgICAgICAgICAgICogdG8gYWxsb3cgcGVvcGxlIHRvIGNob29zZSB3aGV0aGVyIHRoZXNlIHN0eWxlcyBhcmUgY29ycmVjdGVkIGJhc2VkIG9uIGp1c3QgdGhlXG4gICAgICAgICAgICAgKiBsYXlvdXQgcmVwcm9qZWN0aW9uIG9yIHRoZSBmaW5hbCBib3VuZGluZyBib3guXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNhbGNCb3hEZWx0YSh0aGlzLnByb2plY3Rpb25EZWx0YSwgdGhpcy5sYXlvdXRDb3JyZWN0ZWQsIHRhcmdldCwgdGhpcy5sYXRlc3RWYWx1ZXMpO1xuICAgICAgICAgICAgdGhpcy5wcm9qZWN0aW9uVHJhbnNmb3JtID0gYnVpbGRQcm9qZWN0aW9uVHJhbnNmb3JtKHRoaXMucHJvamVjdGlvbkRlbHRhLCB0aGlzLnRyZWVTY2FsZSk7XG4gICAgICAgICAgICBpZiAodGhpcy5wcm9qZWN0aW9uVHJhbnNmb3JtICE9PSBwcmV2UHJvamVjdGlvblRyYW5zZm9ybSB8fFxuICAgICAgICAgICAgICAgIHRoaXMudHJlZVNjYWxlLnggIT09IHByZXZUcmVlU2NhbGVYIHx8XG4gICAgICAgICAgICAgICAgdGhpcy50cmVlU2NhbGUueSAhPT0gcHJldlRyZWVTY2FsZVkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhhc1Byb2plY3RlZCA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZVJlbmRlcigpO1xuICAgICAgICAgICAgICAgIHRoaXMubm90aWZ5TGlzdGVuZXJzKFwicHJvamVjdGlvblVwZGF0ZVwiLCB0YXJnZXQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJbmNyZWFzZSBkZWJ1ZyBjb3VudGVyIGZvciByZWNhbGN1bGF0ZWQgcHJvamVjdGlvbnNcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgcHJvamVjdGlvbkZyYW1lRGF0YS5yZWNhbGN1bGF0ZWRQcm9qZWN0aW9uKys7XG4gICAgICAgIH1cbiAgICAgICAgaGlkZSgpIHtcbiAgICAgICAgICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgICAgICAvLyBUT0RPOiBTY2hlZHVsZSByZW5kZXJcbiAgICAgICAgfVxuICAgICAgICBzaG93KCkge1xuICAgICAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICAgICAgLy8gVE9ETzogU2NoZWR1bGUgcmVuZGVyXG4gICAgICAgIH1cbiAgICAgICAgc2NoZWR1bGVSZW5kZXIobm90aWZ5QWxsID0gdHJ1ZSkge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zLnNjaGVkdWxlUmVuZGVyICYmIHRoaXMub3B0aW9ucy5zY2hlZHVsZVJlbmRlcigpO1xuICAgICAgICAgICAgaWYgKG5vdGlmeUFsbCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YWNrID0gdGhpcy5nZXRTdGFjaygpO1xuICAgICAgICAgICAgICAgIHN0YWNrICYmIHN0YWNrLnNjaGVkdWxlUmVuZGVyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5yZXN1bWluZ0Zyb20gJiYgIXRoaXMucmVzdW1pbmdGcm9tLmluc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXN1bWluZ0Zyb20gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2V0QW5pbWF0aW9uT3JpZ2luKGRlbHRhLCBoYXNPbmx5UmVsYXRpdmVUYXJnZXRDaGFuZ2VkID0gZmFsc2UpIHtcbiAgICAgICAgICAgIGNvbnN0IHNuYXBzaG90ID0gdGhpcy5zbmFwc2hvdDtcbiAgICAgICAgICAgIGNvbnN0IHNuYXBzaG90TGF0ZXN0VmFsdWVzID0gc25hcHNob3RcbiAgICAgICAgICAgICAgICA/IHNuYXBzaG90LmxhdGVzdFZhbHVlc1xuICAgICAgICAgICAgICAgIDoge307XG4gICAgICAgICAgICBjb25zdCBtaXhlZFZhbHVlcyA9IHsgLi4udGhpcy5sYXRlc3RWYWx1ZXMgfTtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldERlbHRhID0gY3JlYXRlRGVsdGEoKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5yZWxhdGl2ZVBhcmVudCB8fFxuICAgICAgICAgICAgICAgICF0aGlzLnJlbGF0aXZlUGFyZW50Lm9wdGlvbnMubGF5b3V0Um9vdCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpdmVUYXJnZXQgPSB0aGlzLnJlbGF0aXZlVGFyZ2V0T3JpZ2luID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5hdHRlbXB0VG9SZXNvbHZlUmVsYXRpdmVUYXJnZXQgPSAhaGFzT25seVJlbGF0aXZlVGFyZ2V0Q2hhbmdlZDtcbiAgICAgICAgICAgIGNvbnN0IHJlbGF0aXZlTGF5b3V0ID0gY3JlYXRlQm94KCk7XG4gICAgICAgICAgICBjb25zdCBzbmFwc2hvdFNvdXJjZSA9IHNuYXBzaG90ID8gc25hcHNob3Quc291cmNlIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgbGF5b3V0U291cmNlID0gdGhpcy5sYXlvdXQgPyB0aGlzLmxheW91dC5zb3VyY2UgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBpc1NoYXJlZExheW91dEFuaW1hdGlvbiA9IHNuYXBzaG90U291cmNlICE9PSBsYXlvdXRTb3VyY2U7XG4gICAgICAgICAgICBjb25zdCBzdGFjayA9IHRoaXMuZ2V0U3RhY2soKTtcbiAgICAgICAgICAgIGNvbnN0IGlzT25seU1lbWJlciA9ICFzdGFjayB8fCBzdGFjay5tZW1iZXJzLmxlbmd0aCA8PSAxO1xuICAgICAgICAgICAgY29uc3Qgc2hvdWxkQ3Jvc3NmYWRlT3BhY2l0eSA9IEJvb2xlYW4oaXNTaGFyZWRMYXlvdXRBbmltYXRpb24gJiZcbiAgICAgICAgICAgICAgICAhaXNPbmx5TWVtYmVyICYmXG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zLmNyb3NzZmFkZSA9PT0gdHJ1ZSAmJlxuICAgICAgICAgICAgICAgICF0aGlzLnBhdGguc29tZShoYXNPcGFjaXR5Q3Jvc3NmYWRlKSk7XG4gICAgICAgICAgICB0aGlzLmFuaW1hdGlvblByb2dyZXNzID0gMDtcbiAgICAgICAgICAgIGxldCBwcmV2UmVsYXRpdmVUYXJnZXQ7XG4gICAgICAgICAgICB0aGlzLm1peFRhcmdldERlbHRhID0gKGxhdGVzdCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHByb2dyZXNzID0gbGF0ZXN0IC8gMTAwMDtcbiAgICAgICAgICAgICAgICBtaXhBeGlzRGVsdGEodGFyZ2V0RGVsdGEueCwgZGVsdGEueCwgcHJvZ3Jlc3MpO1xuICAgICAgICAgICAgICAgIG1peEF4aXNEZWx0YSh0YXJnZXREZWx0YS55LCBkZWx0YS55LCBwcm9ncmVzcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRUYXJnZXREZWx0YSh0YXJnZXREZWx0YSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucmVsYXRpdmVUYXJnZXQgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGl2ZVRhcmdldE9yaWdpbiAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxheW91dCAmJlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbGF0aXZlUGFyZW50ICYmXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpdmVQYXJlbnQubGF5b3V0KSB7XG4gICAgICAgICAgICAgICAgICAgIGNhbGNSZWxhdGl2ZVBvc2l0aW9uKHJlbGF0aXZlTGF5b3V0LCB0aGlzLmxheW91dC5sYXlvdXRCb3gsIHRoaXMucmVsYXRpdmVQYXJlbnQubGF5b3V0LmxheW91dEJveCk7XG4gICAgICAgICAgICAgICAgICAgIG1peEJveCh0aGlzLnJlbGF0aXZlVGFyZ2V0LCB0aGlzLnJlbGF0aXZlVGFyZ2V0T3JpZ2luLCByZWxhdGl2ZUxheW91dCwgcHJvZ3Jlc3MpO1xuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogSWYgdGhpcyBpcyBhbiB1bmNoYW5nZWQgcmVsYXRpdmUgdGFyZ2V0IHdlIGNhbiBjb25zaWRlciB0aGVcbiAgICAgICAgICAgICAgICAgICAgICogcHJvamVjdGlvbiBub3QgZGlydHkuXG4gICAgICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgICAgICBpZiAocHJldlJlbGF0aXZlVGFyZ2V0ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBib3hFcXVhbHModGhpcy5yZWxhdGl2ZVRhcmdldCwgcHJldlJlbGF0aXZlVGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pc1Byb2plY3Rpb25EaXJ0eSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghcHJldlJlbGF0aXZlVGFyZ2V0KVxuICAgICAgICAgICAgICAgICAgICAgICAgcHJldlJlbGF0aXZlVGFyZ2V0ID0gY3JlYXRlQm94KCk7XG4gICAgICAgICAgICAgICAgICAgIGNvcHlCb3hJbnRvKHByZXZSZWxhdGl2ZVRhcmdldCwgdGhpcy5yZWxhdGl2ZVRhcmdldCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpc1NoYXJlZExheW91dEFuaW1hdGlvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFuaW1hdGlvblZhbHVlcyA9IG1peGVkVmFsdWVzO1xuICAgICAgICAgICAgICAgICAgICBtaXhWYWx1ZXMobWl4ZWRWYWx1ZXMsIHNuYXBzaG90TGF0ZXN0VmFsdWVzLCB0aGlzLmxhdGVzdFZhbHVlcywgcHJvZ3Jlc3MsIHNob3VsZENyb3NzZmFkZU9wYWNpdHksIGlzT25seU1lbWJlcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMucm9vdC5zY2hlZHVsZVVwZGF0ZVByb2plY3Rpb24oKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNjaGVkdWxlUmVuZGVyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5hbmltYXRpb25Qcm9ncmVzcyA9IHByb2dyZXNzO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHRoaXMubWl4VGFyZ2V0RGVsdGEodGhpcy5vcHRpb25zLmxheW91dFJvb3QgPyAxMDAwIDogMCk7XG4gICAgICAgIH1cbiAgICAgICAgc3RhcnRBbmltYXRpb24ob3B0aW9ucykge1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlMaXN0ZW5lcnMoXCJhbmltYXRpb25TdGFydFwiKTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEFuaW1hdGlvbiAmJiB0aGlzLmN1cnJlbnRBbmltYXRpb24uc3RvcCgpO1xuICAgICAgICAgICAgaWYgKHRoaXMucmVzdW1pbmdGcm9tICYmIHRoaXMucmVzdW1pbmdGcm9tLmN1cnJlbnRBbmltYXRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc3VtaW5nRnJvbS5jdXJyZW50QW5pbWF0aW9uLnN0b3AoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLnBlbmRpbmdBbmltYXRpb24pIHtcbiAgICAgICAgICAgICAgICBjYW5jZWxGcmFtZSh0aGlzLnBlbmRpbmdBbmltYXRpb24pO1xuICAgICAgICAgICAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogU3RhcnQgdGhlIGFuaW1hdGlvbiBpbiB0aGUgbmV4dCBmcmFtZSB0byBoYXZlIGEgZnJhbWUgd2l0aCBwcm9ncmVzcyAwLFxuICAgICAgICAgICAgICogd2hlcmUgdGhlIHRhcmdldCBpcyB0aGUgc2FtZSBhcyB3aGVuIHRoZSBhbmltYXRpb24gc3RhcnRlZCwgc28gd2UgY2FuXG4gICAgICAgICAgICAgKiBjYWxjdWxhdGUgdGhlIHJlbGF0aXZlIHBvc2l0aW9ucyBjb3JyZWN0bHkgZm9yIGluc3RhbnQgdHJhbnNpdGlvbnMuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbiA9IGZyYW1lLnVwZGF0ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgZ2xvYmFsUHJvamVjdGlvblN0YXRlLmhhc0FuaW1hdGVkU2luY2VSZXNpemUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudEFuaW1hdGlvbiA9IGFuaW1hdGVTaW5nbGVWYWx1ZSgwLCBhbmltYXRpb25UYXJnZXQsIHtcbiAgICAgICAgICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgICAgICAgICAgb25VcGRhdGU6IChsYXRlc3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWl4VGFyZ2V0RGVsdGEobGF0ZXN0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMub25VcGRhdGUgJiYgb3B0aW9ucy5vblVwZGF0ZShsYXRlc3QpO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBvbkNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLm9uQ29tcGxldGUgJiYgb3B0aW9ucy5vbkNvbXBsZXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbXBsZXRlQW5pbWF0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucmVzdW1pbmdGcm9tKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVzdW1pbmdGcm9tLmN1cnJlbnRBbmltYXRpb24gPSB0aGlzLmN1cnJlbnRBbmltYXRpb247XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbXBsZXRlQW5pbWF0aW9uKCkge1xuICAgICAgICAgICAgaWYgKHRoaXMucmVzdW1pbmdGcm9tKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXN1bWluZ0Zyb20uY3VycmVudEFuaW1hdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc3VtaW5nRnJvbS5wcmVzZXJ2ZU9wYWNpdHkgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBzdGFjayA9IHRoaXMuZ2V0U3RhY2soKTtcbiAgICAgICAgICAgIHN0YWNrICYmIHN0YWNrLmV4aXRBbmltYXRpb25Db21wbGV0ZSgpO1xuICAgICAgICAgICAgdGhpcy5yZXN1bWluZ0Zyb20gPVxuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudEFuaW1hdGlvbiA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uVmFsdWVzID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMubm90aWZ5TGlzdGVuZXJzKFwiYW5pbWF0aW9uQ29tcGxldGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgZmluaXNoQW5pbWF0aW9uKCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFuaW1hdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMubWl4VGFyZ2V0RGVsdGEgJiYgdGhpcy5taXhUYXJnZXREZWx0YShhbmltYXRpb25UYXJnZXQpO1xuICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudEFuaW1hdGlvbi5zdG9wKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmNvbXBsZXRlQW5pbWF0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgYXBwbHlUcmFuc2Zvcm1zVG9UYXJnZXQoKSB7XG4gICAgICAgICAgICBjb25zdCBsZWFkID0gdGhpcy5nZXRMZWFkKCk7XG4gICAgICAgICAgICBsZXQgeyB0YXJnZXRXaXRoVHJhbnNmb3JtcywgdGFyZ2V0LCBsYXlvdXQsIGxhdGVzdFZhbHVlcyB9ID0gbGVhZDtcbiAgICAgICAgICAgIGlmICghdGFyZ2V0V2l0aFRyYW5zZm9ybXMgfHwgIXRhcmdldCB8fCAhbGF5b3V0KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgd2UncmUgb25seSBhbmltYXRpbmcgcG9zaXRpb24sIGFuZCB0aGlzIGVsZW1lbnQgaXNuJ3QgdGhlIGxlYWQgZWxlbWVudCxcbiAgICAgICAgICAgICAqIHRoZW4gaW5zdGVhZCBvZiBwcm9qZWN0aW5nIGludG8gdGhlIGxlYWQgYm94IHdlIGluc3RlYWQgd2FudCB0byBjYWxjdWxhdGVcbiAgICAgICAgICAgICAqIGEgbmV3IHRhcmdldCB0aGF0IGFsaWducyB0aGUgdHdvIGJveGVzIGJ1dCBtYWludGFpbnMgdGhlIGxheW91dCBzaGFwZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMgIT09IGxlYWQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLmxheW91dCAmJlxuICAgICAgICAgICAgICAgIGxheW91dCAmJlxuICAgICAgICAgICAgICAgIHNob3VsZEFuaW1hdGVQb3NpdGlvbk9ubHkodGhpcy5vcHRpb25zLmFuaW1hdGlvblR5cGUsIHRoaXMubGF5b3V0LmxheW91dEJveCwgbGF5b3V0LmxheW91dEJveCkpIHtcbiAgICAgICAgICAgICAgICB0YXJnZXQgPSB0aGlzLnRhcmdldCB8fCBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgICAgICBjb25zdCB4TGVuZ3RoID0gY2FsY0xlbmd0aCh0aGlzLmxheW91dC5sYXlvdXRCb3gueCk7XG4gICAgICAgICAgICAgICAgdGFyZ2V0LngubWluID0gbGVhZC50YXJnZXQueC5taW47XG4gICAgICAgICAgICAgICAgdGFyZ2V0LngubWF4ID0gdGFyZ2V0LngubWluICsgeExlbmd0aDtcbiAgICAgICAgICAgICAgICBjb25zdCB5TGVuZ3RoID0gY2FsY0xlbmd0aCh0aGlzLmxheW91dC5sYXlvdXRCb3gueSk7XG4gICAgICAgICAgICAgICAgdGFyZ2V0LnkubWluID0gbGVhZC50YXJnZXQueS5taW47XG4gICAgICAgICAgICAgICAgdGFyZ2V0LnkubWF4ID0gdGFyZ2V0LnkubWluICsgeUxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvcHlCb3hJbnRvKHRhcmdldFdpdGhUcmFuc2Zvcm1zLCB0YXJnZXQpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBcHBseSB0aGUgbGF0ZXN0IHVzZXItc2V0IHRyYW5zZm9ybXMgdG8gdGhlIHRhcmdldEJveCB0byBwcm9kdWNlIHRoZSB0YXJnZXRCb3hGaW5hbC5cbiAgICAgICAgICAgICAqIFRoaXMgaXMgdGhlIGZpbmFsIGJveCB0aGF0IHdlIHdpbGwgdGhlbiBwcm9qZWN0IGludG8gYnkgY2FsY3VsYXRpbmcgYSB0cmFuc2Zvcm0gZGVsdGEgYW5kXG4gICAgICAgICAgICAgKiBhcHBseWluZyBpdCB0byB0aGUgY29ycmVjdGVkIGJveC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdHJhbnNmb3JtQm94KHRhcmdldFdpdGhUcmFuc2Zvcm1zLCBsYXRlc3RWYWx1ZXMpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBVcGRhdGUgdGhlIGRlbHRhIGJldHdlZW4gdGhlIGNvcnJlY3RlZCBib3ggYW5kIHRoZSBmaW5hbCB0YXJnZXQgYm94LCBhZnRlclxuICAgICAgICAgICAgICogdXNlci1zZXQgdHJhbnNmb3JtcyBhcmUgYXBwbGllZCB0byBpdC4gVGhpcyB3aWxsIGJlIHVzZWQgYnkgdGhlIHJlbmRlcmVyIHRvXG4gICAgICAgICAgICAgKiBjcmVhdGUgYSB0cmFuc2Zvcm0gc3R5bGUgdGhhdCB3aWxsIHJlcHJvamVjdCB0aGUgZWxlbWVudCBmcm9tIGl0cyBsYXlvdXQgbGF5b3V0XG4gICAgICAgICAgICAgKiBpbnRvIHRoZSBkZXNpcmVkIGJvdW5kaW5nIGJveC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY2FsY0JveERlbHRhKHRoaXMucHJvamVjdGlvbkRlbHRhV2l0aFRyYW5zZm9ybSwgdGhpcy5sYXlvdXRDb3JyZWN0ZWQsIHRhcmdldFdpdGhUcmFuc2Zvcm1zLCBsYXRlc3RWYWx1ZXMpO1xuICAgICAgICB9XG4gICAgICAgIHJlZ2lzdGVyU2hhcmVkTm9kZShsYXlvdXRJZCwgbm9kZSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnNoYXJlZE5vZGVzLmhhcyhsYXlvdXRJZCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNoYXJlZE5vZGVzLnNldChsYXlvdXRJZCwgbmV3IE5vZGVTdGFjaygpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHN0YWNrID0gdGhpcy5zaGFyZWROb2Rlcy5nZXQobGF5b3V0SWQpO1xuICAgICAgICAgICAgc3RhY2suYWRkKG5vZGUpO1xuICAgICAgICAgICAgY29uc3QgY29uZmlnID0gbm9kZS5vcHRpb25zLmluaXRpYWxQcm9tb3Rpb25Db25maWc7XG4gICAgICAgICAgICBub2RlLnByb21vdGUoe1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbmZpZyA/IGNvbmZpZy50cmFuc2l0aW9uIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHByZXNlcnZlRm9sbG93T3BhY2l0eTogY29uZmlnICYmIGNvbmZpZy5zaG91bGRQcmVzZXJ2ZUZvbGxvd09wYWNpdHlcbiAgICAgICAgICAgICAgICAgICAgPyBjb25maWcuc2hvdWxkUHJlc2VydmVGb2xsb3dPcGFjaXR5KG5vZGUpXG4gICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgaXNMZWFkKCkge1xuICAgICAgICAgICAgY29uc3Qgc3RhY2sgPSB0aGlzLmdldFN0YWNrKCk7XG4gICAgICAgICAgICByZXR1cm4gc3RhY2sgPyBzdGFjay5sZWFkID09PSB0aGlzIDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBnZXRMZWFkKCkge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgY29uc3QgeyBsYXlvdXRJZCB9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICAgICAgcmV0dXJuIGxheW91dElkID8gKChfYSA9IHRoaXMuZ2V0U3RhY2soKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmxlYWQpIHx8IHRoaXMgOiB0aGlzO1xuICAgICAgICB9XG4gICAgICAgIGdldFByZXZMZWFkKCkge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgY29uc3QgeyBsYXlvdXRJZCB9ID0gdGhpcy5vcHRpb25zO1xuICAgICAgICAgICAgcmV0dXJuIGxheW91dElkID8gKF9hID0gdGhpcy5nZXRTdGFjaygpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucHJldkxlYWQgOiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgZ2V0U3RhY2soKSB7XG4gICAgICAgICAgICBjb25zdCB7IGxheW91dElkIH0gPSB0aGlzLm9wdGlvbnM7XG4gICAgICAgICAgICBpZiAobGF5b3V0SWQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucm9vdC5zaGFyZWROb2Rlcy5nZXQobGF5b3V0SWQpO1xuICAgICAgICB9XG4gICAgICAgIHByb21vdGUoeyBuZWVkc1Jlc2V0LCB0cmFuc2l0aW9uLCBwcmVzZXJ2ZUZvbGxvd09wYWNpdHksIH0gPSB7fSkge1xuICAgICAgICAgICAgY29uc3Qgc3RhY2sgPSB0aGlzLmdldFN0YWNrKCk7XG4gICAgICAgICAgICBpZiAoc3RhY2spXG4gICAgICAgICAgICAgICAgc3RhY2sucHJvbW90ZSh0aGlzLCBwcmVzZXJ2ZUZvbGxvd09wYWNpdHkpO1xuICAgICAgICAgICAgaWYgKG5lZWRzUmVzZXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb2plY3Rpb25EZWx0YSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB0aGlzLm5lZWRzUmVzZXQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRyYW5zaXRpb24pXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRPcHRpb25zKHsgdHJhbnNpdGlvbiB9KTtcbiAgICAgICAgfVxuICAgICAgICByZWxlZ2F0ZSgpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0YWNrID0gdGhpcy5nZXRTdGFjaygpO1xuICAgICAgICAgICAgaWYgKHN0YWNrKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0YWNrLnJlbGVnYXRlKHRoaXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJlc2V0Um90YXRpb24oKSB7XG4gICAgICAgICAgICBjb25zdCB7IHZpc3VhbEVsZW1lbnQgfSA9IHRoaXMub3B0aW9ucztcbiAgICAgICAgICAgIGlmICghdmlzdWFsRWxlbWVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAvLyBJZiB0aGVyZSdzIG5vIGRldGVjdGVkIHJvdGF0aW9uIHZhbHVlcywgd2UgY2FuIGVhcmx5IHJldHVybiB3aXRob3V0IGEgZm9yY2VkIHJlbmRlci5cbiAgICAgICAgICAgIGxldCBoYXNSb3RhdGUgPSBmYWxzZTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQW4gdW5yb2xsZWQgY2hlY2sgZm9yIHJvdGF0aW9uIHZhbHVlcy4gTW9zdCBlbGVtZW50cyBkb24ndCBoYXZlIGFueSByb3RhdGlvbiBhbmRcbiAgICAgICAgICAgICAqIHNraXBwaW5nIHRoZSBuZXN0ZWQgbG9vcCBhbmQgbmV3IG9iamVjdCBjcmVhdGlvbiBpcyA1MCUgZmFzdGVyLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB7IGxhdGVzdFZhbHVlcyB9ID0gdmlzdWFsRWxlbWVudDtcbiAgICAgICAgICAgIGlmIChsYXRlc3RWYWx1ZXMucm90YXRlIHx8XG4gICAgICAgICAgICAgICAgbGF0ZXN0VmFsdWVzLnJvdGF0ZVggfHxcbiAgICAgICAgICAgICAgICBsYXRlc3RWYWx1ZXMucm90YXRlWSB8fFxuICAgICAgICAgICAgICAgIGxhdGVzdFZhbHVlcy5yb3RhdGVaKSB7XG4gICAgICAgICAgICAgICAgaGFzUm90YXRlID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIElmIHRoZXJlJ3Mgbm8gcm90YXRpb24gdmFsdWVzLCB3ZSBkb24ndCBuZWVkIHRvIGRvIGFueSBtb3JlLlxuICAgICAgICAgICAgaWYgKCFoYXNSb3RhdGUpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcmVzZXRWYWx1ZXMgPSB7fTtcbiAgICAgICAgICAgIC8vIENoZWNrIHRoZSByb3RhdGUgdmFsdWUgb2YgYWxsIGF4ZXMgYW5kIHJlc2V0IHRvIDBcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdHJhbnNmb3JtQXhlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IFwicm90YXRlXCIgKyB0cmFuc2Zvcm1BeGVzW2ldO1xuICAgICAgICAgICAgICAgIC8vIFJlY29yZCB0aGUgcm90YXRpb24gYW5kIHRoZW4gdGVtcG9yYXJpbHkgc2V0IGl0IHRvIDBcbiAgICAgICAgICAgICAgICBpZiAobGF0ZXN0VmFsdWVzW2tleV0pIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzZXRWYWx1ZXNba2V5XSA9IGxhdGVzdFZhbHVlc1trZXldO1xuICAgICAgICAgICAgICAgICAgICB2aXN1YWxFbGVtZW50LnNldFN0YXRpY1ZhbHVlKGtleSwgMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gRm9yY2UgYSByZW5kZXIgb2YgdGhpcyBlbGVtZW50IHRvIGFwcGx5IHRoZSB0cmFuc2Zvcm0gd2l0aCBhbGwgcm90YXRpb25zXG4gICAgICAgICAgICAvLyBzZXQgdG8gMC5cbiAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQucmVuZGVyKCk7XG4gICAgICAgICAgICAvLyBQdXQgYmFjayBhbGwgdGhlIHZhbHVlcyB3ZSByZXNldFxuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gcmVzZXRWYWx1ZXMpIHtcbiAgICAgICAgICAgICAgICB2aXN1YWxFbGVtZW50LnNldFN0YXRpY1ZhbHVlKGtleSwgcmVzZXRWYWx1ZXNba2V5XSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBTY2hlZHVsZSBhIHJlbmRlciBmb3IgdGhlIG5leHQgZnJhbWUuIFRoaXMgZW5zdXJlcyB3ZSB3b24ndCB2aXN1YWxseVxuICAgICAgICAgICAgLy8gc2VlIHRoZSBlbGVtZW50IHdpdGggdGhlIHJlc2V0IHJvdGF0ZSB2YWx1ZSBhcHBsaWVkLlxuICAgICAgICAgICAgdmlzdWFsRWxlbWVudC5zY2hlZHVsZVJlbmRlcigpO1xuICAgICAgICB9XG4gICAgICAgIGdldFByb2plY3Rpb25TdHlsZXMoc3R5bGVQcm9wKSB7XG4gICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmluc3RhbmNlIHx8IHRoaXMuaXNTVkcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc1Zpc2libGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaGlkZGVuVmlzaWJpbGl0eTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHN0eWxlcyA9IHtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBcIlwiLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybVRlbXBsYXRlID0gdGhpcy5nZXRUcmFuc2Zvcm1UZW1wbGF0ZSgpO1xuICAgICAgICAgICAgaWYgKHRoaXMubmVlZHNSZXNldCkge1xuICAgICAgICAgICAgICAgIHRoaXMubmVlZHNSZXNldCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHN0eWxlcy5vcGFjaXR5ID0gXCJcIjtcbiAgICAgICAgICAgICAgICBzdHlsZXMucG9pbnRlckV2ZW50cyA9XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmVNb3Rpb25WYWx1ZShzdHlsZVByb3AgPT09IG51bGwgfHwgc3R5bGVQcm9wID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdHlsZVByb3AucG9pbnRlckV2ZW50cykgfHwgXCJcIjtcbiAgICAgICAgICAgICAgICBzdHlsZXMudHJhbnNmb3JtID0gdHJhbnNmb3JtVGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgPyB0cmFuc2Zvcm1UZW1wbGF0ZSh0aGlzLmxhdGVzdFZhbHVlcywgXCJcIilcbiAgICAgICAgICAgICAgICAgICAgOiBcIm5vbmVcIjtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3R5bGVzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbGVhZCA9IHRoaXMuZ2V0TGVhZCgpO1xuICAgICAgICAgICAgaWYgKCF0aGlzLnByb2plY3Rpb25EZWx0YSB8fCAhdGhpcy5sYXlvdXQgfHwgIWxlYWQudGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZW1wdHlTdHlsZXMgPSB7fTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5vcHRpb25zLmxheW91dElkKSB7XG4gICAgICAgICAgICAgICAgICAgIGVtcHR5U3R5bGVzLm9wYWNpdHkgPVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXRlc3RWYWx1ZXMub3BhY2l0eSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB0aGlzLmxhdGVzdFZhbHVlcy5vcGFjaXR5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAxO1xuICAgICAgICAgICAgICAgICAgICBlbXB0eVN0eWxlcy5wb2ludGVyRXZlbnRzID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmVNb3Rpb25WYWx1ZShzdHlsZVByb3AgPT09IG51bGwgfHwgc3R5bGVQcm9wID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdHlsZVByb3AucG9pbnRlckV2ZW50cykgfHwgXCJcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaGFzUHJvamVjdGVkICYmICFoYXNUcmFuc2Zvcm0odGhpcy5sYXRlc3RWYWx1ZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgIGVtcHR5U3R5bGVzLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVRlbXBsYXRlXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHRyYW5zZm9ybVRlbXBsYXRlKHt9LCBcIlwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBcIm5vbmVcIjtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oYXNQcm9qZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGVtcHR5U3R5bGVzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdmFsdWVzVG9SZW5kZXIgPSBsZWFkLmFuaW1hdGlvblZhbHVlcyB8fCBsZWFkLmxhdGVzdFZhbHVlcztcbiAgICAgICAgICAgIHRoaXMuYXBwbHlUcmFuc2Zvcm1zVG9UYXJnZXQoKTtcbiAgICAgICAgICAgIHN0eWxlcy50cmFuc2Zvcm0gPSBidWlsZFByb2plY3Rpb25UcmFuc2Zvcm0odGhpcy5wcm9qZWN0aW9uRGVsdGFXaXRoVHJhbnNmb3JtLCB0aGlzLnRyZWVTY2FsZSwgdmFsdWVzVG9SZW5kZXIpO1xuICAgICAgICAgICAgaWYgKHRyYW5zZm9ybVRlbXBsYXRlKSB7XG4gICAgICAgICAgICAgICAgc3R5bGVzLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVRlbXBsYXRlKHZhbHVlc1RvUmVuZGVyLCBzdHlsZXMudHJhbnNmb3JtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgeCwgeSB9ID0gdGhpcy5wcm9qZWN0aW9uRGVsdGE7XG4gICAgICAgICAgICBzdHlsZXMudHJhbnNmb3JtT3JpZ2luID0gYCR7eC5vcmlnaW4gKiAxMDB9JSAke3kub3JpZ2luICogMTAwfSUgMGA7XG4gICAgICAgICAgICBpZiAobGVhZC5hbmltYXRpb25WYWx1ZXMpIHtcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBJZiB0aGUgbGVhZCBjb21wb25lbnQgaXMgYW5pbWF0aW5nLCBhc3NpZ24gdGhpcyBlaXRoZXIgdGhlIGVudGVyaW5nL2xlYXZpbmdcbiAgICAgICAgICAgICAgICAgKiBvcGFjaXR5XG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgc3R5bGVzLm9wYWNpdHkgPVxuICAgICAgICAgICAgICAgICAgICBsZWFkID09PSB0aGlzXG4gICAgICAgICAgICAgICAgICAgICAgICA/IChfYiA9IChfYSA9IHZhbHVlc1RvUmVuZGVyLm9wYWNpdHkpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRoaXMubGF0ZXN0VmFsdWVzLm9wYWNpdHkpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IDFcbiAgICAgICAgICAgICAgICAgICAgICAgIDogdGhpcy5wcmVzZXJ2ZU9wYWNpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMubGF0ZXN0VmFsdWVzLm9wYWNpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHZhbHVlc1RvUmVuZGVyLm9wYWNpdHlFeGl0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogT3Igd2UncmUgbm90IGFuaW1hdGluZyBhdCBhbGwsIHNldCB0aGUgbGVhZCBjb21wb25lbnQgdG8gaXRzIGxheW91dFxuICAgICAgICAgICAgICAgICAqIG9wYWNpdHkgYW5kIG90aGVyIGNvbXBvbmVudHMgdG8gaGlkZGVuLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIHN0eWxlcy5vcGFjaXR5ID1cbiAgICAgICAgICAgICAgICAgICAgbGVhZCA9PT0gdGhpc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyB2YWx1ZXNUb1JlbmRlci5vcGFjaXR5ICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHZhbHVlc1RvUmVuZGVyLm9wYWNpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogdmFsdWVzVG9SZW5kZXIub3BhY2l0eUV4aXQgIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdmFsdWVzVG9SZW5kZXIub3BhY2l0eUV4aXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIEFwcGx5IHNjYWxlIGNvcnJlY3Rpb25cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gc2NhbGVDb3JyZWN0b3JzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlc1RvUmVuZGVyW2tleV0gPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBjb3JyZWN0LCBhcHBseVRvIH0gPSBzY2FsZUNvcnJlY3RvcnNba2V5XTtcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBPbmx5IGFwcGx5IHNjYWxlIGNvcnJlY3Rpb24gdG8gdGhlIHZhbHVlIGlmIHdlIGhhdmUgYW5cbiAgICAgICAgICAgICAgICAgKiBhY3RpdmUgcHJvamVjdGlvbiB0cmFuc2Zvcm0uIE90aGVyd2lzZSB0aGVzZSB2YWx1ZXMgYmVjb21lXG4gICAgICAgICAgICAgICAgICogdnVsbmVyYWJsZSB0byBkaXN0b3J0aW9uIGlmIHRoZSBlbGVtZW50IGNoYW5nZXMgc2l6ZSB3aXRob3V0XG4gICAgICAgICAgICAgICAgICogYSBjb3JyZXNwb25kaW5nIGxheW91dCBhbmltYXRpb24uXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgY29uc3QgY29ycmVjdGVkID0gc3R5bGVzLnRyYW5zZm9ybSA9PT0gXCJub25lXCJcbiAgICAgICAgICAgICAgICAgICAgPyB2YWx1ZXNUb1JlbmRlcltrZXldXG4gICAgICAgICAgICAgICAgICAgIDogY29ycmVjdCh2YWx1ZXNUb1JlbmRlcltrZXldLCBsZWFkKTtcbiAgICAgICAgICAgICAgICBpZiAoYXBwbHlUbykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBudW0gPSBhcHBseVRvLmxlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW07IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVzW2FwcGx5VG9baV1dID0gY29ycmVjdGVkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBzdHlsZXNba2V5XSA9IGNvcnJlY3RlZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIERpc2FibGUgcG9pbnRlciBldmVudHMgb24gZm9sbG93IGNvbXBvbmVudHMuIFRoaXMgaXMgdG8gZW5zdXJlXG4gICAgICAgICAgICAgKiB0aGF0IGlmIGEgZm9sbG93IGNvbXBvbmVudCBjb3ZlcnMgYSBsZWFkIGNvbXBvbmVudCBpdCBkb2Vzbid0IGJsb2NrXG4gICAgICAgICAgICAgKiBwb2ludGVyIGV2ZW50cyBvbiB0aGUgbGVhZC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sYXlvdXRJZCkge1xuICAgICAgICAgICAgICAgIHN0eWxlcy5wb2ludGVyRXZlbnRzID1cbiAgICAgICAgICAgICAgICAgICAgbGVhZCA9PT0gdGhpc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyByZXNvbHZlTW90aW9uVmFsdWUoc3R5bGVQcm9wID09PSBudWxsIHx8IHN0eWxlUHJvcCA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3R5bGVQcm9wLnBvaW50ZXJFdmVudHMpIHx8IFwiXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogXCJub25lXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gc3R5bGVzO1xuICAgICAgICB9XG4gICAgICAgIGNsZWFyU25hcHNob3QoKSB7XG4gICAgICAgICAgICB0aGlzLnJlc3VtZUZyb20gPSB0aGlzLnNuYXBzaG90ID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIC8vIE9ubHkgcnVuIG9uIHJvb3RcbiAgICAgICAgcmVzZXRUcmVlKCkge1xuICAgICAgICAgICAgdGhpcy5yb290Lm5vZGVzLmZvckVhY2goKG5vZGUpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gbm9kZS5jdXJyZW50QW5pbWF0aW9uKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc3RvcCgpOyB9KTtcbiAgICAgICAgICAgIHRoaXMucm9vdC5ub2Rlcy5mb3JFYWNoKGNsZWFyTWVhc3VyZW1lbnRzKTtcbiAgICAgICAgICAgIHRoaXMucm9vdC5zaGFyZWROb2Rlcy5jbGVhcigpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbmZ1bmN0aW9uIHVwZGF0ZUxheW91dChub2RlKSB7XG4gICAgbm9kZS51cGRhdGVMYXlvdXQoKTtcbn1cbmZ1bmN0aW9uIG5vdGlmeUxheW91dFVwZGF0ZShub2RlKSB7XG4gICAgdmFyIF9hO1xuICAgIGNvbnN0IHNuYXBzaG90ID0gKChfYSA9IG5vZGUucmVzdW1lRnJvbSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnNuYXBzaG90KSB8fCBub2RlLnNuYXBzaG90O1xuICAgIGlmIChub2RlLmlzTGVhZCgpICYmXG4gICAgICAgIG5vZGUubGF5b3V0ICYmXG4gICAgICAgIHNuYXBzaG90ICYmXG4gICAgICAgIG5vZGUuaGFzTGlzdGVuZXJzKFwiZGlkVXBkYXRlXCIpKSB7XG4gICAgICAgIGNvbnN0IHsgbGF5b3V0Qm94OiBsYXlvdXQsIG1lYXN1cmVkQm94OiBtZWFzdXJlZExheW91dCB9ID0gbm9kZS5sYXlvdXQ7XG4gICAgICAgIGNvbnN0IHsgYW5pbWF0aW9uVHlwZSB9ID0gbm9kZS5vcHRpb25zO1xuICAgICAgICBjb25zdCBpc1NoYXJlZCA9IHNuYXBzaG90LnNvdXJjZSAhPT0gbm9kZS5sYXlvdXQuc291cmNlO1xuICAgICAgICAvLyBUT0RPIE1heWJlIHdlIHdhbnQgdG8gYWxzbyByZXNpemUgdGhlIGxheW91dCBzbmFwc2hvdCBzbyB3ZSBkb24ndCB0cmlnZ2VyXG4gICAgICAgIC8vIGFuaW1hdGlvbnMgZm9yIGluc3RhbmNlIGlmIGxheW91dD1cInNpemVcIiBhbmQgYW4gZWxlbWVudCBoYXMgb25seSBjaGFuZ2VkIHBvc2l0aW9uXG4gICAgICAgIGlmIChhbmltYXRpb25UeXBlID09PSBcInNpemVcIikge1xuICAgICAgICAgICAgZWFjaEF4aXMoKGF4aXMpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBheGlzU25hcHNob3QgPSBpc1NoYXJlZFxuICAgICAgICAgICAgICAgICAgICA/IHNuYXBzaG90Lm1lYXN1cmVkQm94W2F4aXNdXG4gICAgICAgICAgICAgICAgICAgIDogc25hcHNob3QubGF5b3V0Qm94W2F4aXNdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IGNhbGNMZW5ndGgoYXhpc1NuYXBzaG90KTtcbiAgICAgICAgICAgICAgICBheGlzU25hcHNob3QubWluID0gbGF5b3V0W2F4aXNdLm1pbjtcbiAgICAgICAgICAgICAgICBheGlzU25hcHNob3QubWF4ID0gYXhpc1NuYXBzaG90Lm1pbiArIGxlbmd0aDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHNob3VsZEFuaW1hdGVQb3NpdGlvbk9ubHkoYW5pbWF0aW9uVHlwZSwgc25hcHNob3QubGF5b3V0Qm94LCBsYXlvdXQpKSB7XG4gICAgICAgICAgICBlYWNoQXhpcygoYXhpcykgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGF4aXNTbmFwc2hvdCA9IGlzU2hhcmVkXG4gICAgICAgICAgICAgICAgICAgID8gc25hcHNob3QubWVhc3VyZWRCb3hbYXhpc11cbiAgICAgICAgICAgICAgICAgICAgOiBzbmFwc2hvdC5sYXlvdXRCb3hbYXhpc107XG4gICAgICAgICAgICAgICAgY29uc3QgbGVuZ3RoID0gY2FsY0xlbmd0aChsYXlvdXRbYXhpc10pO1xuICAgICAgICAgICAgICAgIGF4aXNTbmFwc2hvdC5tYXggPSBheGlzU25hcHNob3QubWluICsgbGVuZ3RoO1xuICAgICAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICAgICAqIEVuc3VyZSByZWxhdGl2ZSB0YXJnZXQgZ2V0cyByZXNpemVkIGFuZCByZXJlbmRlcmVyZFxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIGlmIChub2RlLnJlbGF0aXZlVGFyZ2V0ICYmICFub2RlLmN1cnJlbnRBbmltYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5pc1Byb2plY3Rpb25EaXJ0eSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIG5vZGUucmVsYXRpdmVUYXJnZXRbYXhpc10ubWF4ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGUucmVsYXRpdmVUYXJnZXRbYXhpc10ubWluICsgbGVuZ3RoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGxheW91dERlbHRhID0gY3JlYXRlRGVsdGEoKTtcbiAgICAgICAgY2FsY0JveERlbHRhKGxheW91dERlbHRhLCBsYXlvdXQsIHNuYXBzaG90LmxheW91dEJveCk7XG4gICAgICAgIGNvbnN0IHZpc3VhbERlbHRhID0gY3JlYXRlRGVsdGEoKTtcbiAgICAgICAgaWYgKGlzU2hhcmVkKSB7XG4gICAgICAgICAgICBjYWxjQm94RGVsdGEodmlzdWFsRGVsdGEsIG5vZGUuYXBwbHlUcmFuc2Zvcm0obWVhc3VyZWRMYXlvdXQsIHRydWUpLCBzbmFwc2hvdC5tZWFzdXJlZEJveCk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjYWxjQm94RGVsdGEodmlzdWFsRGVsdGEsIGxheW91dCwgc25hcHNob3QubGF5b3V0Qm94KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoYXNMYXlvdXRDaGFuZ2VkID0gIWlzRGVsdGFaZXJvKGxheW91dERlbHRhKTtcbiAgICAgICAgbGV0IGhhc1JlbGF0aXZlVGFyZ2V0Q2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICBpZiAoIW5vZGUucmVzdW1lRnJvbSkge1xuICAgICAgICAgICAgY29uc3QgcmVsYXRpdmVQYXJlbnQgPSBub2RlLmdldENsb3Nlc3RQcm9qZWN0aW5nUGFyZW50KCk7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoZSByZWxhdGl2ZVBhcmVudCBpcyBpdHNlbGYgcmVzdW1pbmcgZnJvbSBhIGRpZmZlcmVudCBlbGVtZW50IHRoZW5cbiAgICAgICAgICAgICAqIHRoZSByZWxhdGl2ZSBzbmFwc2hvdCBpcyBub3QgcmVsYXZlbnRcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHJlbGF0aXZlUGFyZW50ICYmICFyZWxhdGl2ZVBhcmVudC5yZXN1bWVGcm9tKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyBzbmFwc2hvdDogcGFyZW50U25hcHNob3QsIGxheW91dDogcGFyZW50TGF5b3V0IH0gPSByZWxhdGl2ZVBhcmVudDtcbiAgICAgICAgICAgICAgICBpZiAocGFyZW50U25hcHNob3QgJiYgcGFyZW50TGF5b3V0KSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbGF0aXZlU25hcHNob3QgPSBjcmVhdGVCb3goKTtcbiAgICAgICAgICAgICAgICAgICAgY2FsY1JlbGF0aXZlUG9zaXRpb24ocmVsYXRpdmVTbmFwc2hvdCwgc25hcHNob3QubGF5b3V0Qm94LCBwYXJlbnRTbmFwc2hvdC5sYXlvdXRCb3gpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWxhdGl2ZUxheW91dCA9IGNyZWF0ZUJveCgpO1xuICAgICAgICAgICAgICAgICAgICBjYWxjUmVsYXRpdmVQb3NpdGlvbihyZWxhdGl2ZUxheW91dCwgbGF5b3V0LCBwYXJlbnRMYXlvdXQubGF5b3V0Qm94KTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFib3hFcXVhbHNSb3VuZGVkKHJlbGF0aXZlU25hcHNob3QsIHJlbGF0aXZlTGF5b3V0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGFzUmVsYXRpdmVUYXJnZXRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAocmVsYXRpdmVQYXJlbnQub3B0aW9ucy5sYXlvdXRSb290KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlLnJlbGF0aXZlVGFyZ2V0ID0gcmVsYXRpdmVMYXlvdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlLnJlbGF0aXZlVGFyZ2V0T3JpZ2luID0gcmVsYXRpdmVTbmFwc2hvdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGUucmVsYXRpdmVQYXJlbnQgPSByZWxhdGl2ZVBhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBub2RlLm5vdGlmeUxpc3RlbmVycyhcImRpZFVwZGF0ZVwiLCB7XG4gICAgICAgICAgICBsYXlvdXQsXG4gICAgICAgICAgICBzbmFwc2hvdCxcbiAgICAgICAgICAgIGRlbHRhOiB2aXN1YWxEZWx0YSxcbiAgICAgICAgICAgIGxheW91dERlbHRhLFxuICAgICAgICAgICAgaGFzTGF5b3V0Q2hhbmdlZCxcbiAgICAgICAgICAgIGhhc1JlbGF0aXZlVGFyZ2V0Q2hhbmdlZCxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGVsc2UgaWYgKG5vZGUuaXNMZWFkKCkpIHtcbiAgICAgICAgY29uc3QgeyBvbkV4aXRDb21wbGV0ZSB9ID0gbm9kZS5vcHRpb25zO1xuICAgICAgICBvbkV4aXRDb21wbGV0ZSAmJiBvbkV4aXRDb21wbGV0ZSgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDbGVhcmluZyB0cmFuc2l0aW9uXG4gICAgICogVE9ETzogSW52ZXN0aWdhdGUgd2h5IHRoaXMgdHJhbnNpdGlvbiBpcyBiZWluZyBwYXNzZWQgaW4gYXMge3R5cGU6IGZhbHNlIH0gZnJvbSBGcmFtZXJcbiAgICAgKiBhbmQgd2h5IHdlIG5lZWQgaXQgYXQgYWxsXG4gICAgICovXG4gICAgbm9kZS5vcHRpb25zLnRyYW5zaXRpb24gPSB1bmRlZmluZWQ7XG59XG5mdW5jdGlvbiBwcm9wYWdhdGVEaXJ0eU5vZGVzKG5vZGUpIHtcbiAgICAvKipcbiAgICAgKiBJbmNyZWFzZSBkZWJ1ZyBjb3VudGVyIGZvciBub2RlcyBlbmNvdW50ZXJlZCB0aGlzIGZyYW1lXG4gICAgICovXG4gICAgcHJvamVjdGlvbkZyYW1lRGF0YS50b3RhbE5vZGVzKys7XG4gICAgaWYgKCFub2RlLnBhcmVudClcbiAgICAgICAgcmV0dXJuO1xuICAgIC8qKlxuICAgICAqIElmIHRoaXMgbm9kZSBpc24ndCBwcm9qZWN0aW5nLCBwcm9wYWdhdGUgaXNQcm9qZWN0aW9uRGlydHkuIEl0IHdpbGwgaGF2ZVxuICAgICAqIG5vIHBlcmZvcm1hbmNlIGltcGFjdCBidXQgaXQgd2lsbCBhbGxvdyB0aGUgbmV4dCBjaGlsZCB0aGF0ICppcyogcHJvamVjdGluZ1xuICAgICAqIGJ1dCAqaXNuJ3QqIGRpcnR5IHRvIGp1c3QgY2hlY2sgaXRzIHBhcmVudCB0byBzZWUgaWYgKmFueSogYW5jZXN0b3IgbmVlZHNcbiAgICAgKiBjb3JyZWN0aW5nLlxuICAgICAqL1xuICAgIGlmICghbm9kZS5pc1Byb2plY3RpbmcoKSkge1xuICAgICAgICBub2RlLmlzUHJvamVjdGlvbkRpcnR5ID0gbm9kZS5wYXJlbnQuaXNQcm9qZWN0aW9uRGlydHk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFByb3BhZ2F0ZSBpc1NoYXJlZFByb2plY3Rpb25EaXJ0eSBhbmQgaXNUcmFuc2Zvcm1EaXJ0eVxuICAgICAqIHRocm91Z2hvdXQgdGhlIHdob2xlIHRyZWUuIEEgZnV0dXJlIHJldmlzaW9uIGNhbiB0YWtlIGFub3RoZXIgbG9vayBhdFxuICAgICAqIHRoaXMgYnV0IGZvciBzYWZldHkgd2Ugc3RpbGwgcmVjYWxjdWFsdGUgc2hhcmVkIG5vZGVzLlxuICAgICAqL1xuICAgIG5vZGUuaXNTaGFyZWRQcm9qZWN0aW9uRGlydHkgfHwgKG5vZGUuaXNTaGFyZWRQcm9qZWN0aW9uRGlydHkgPSBCb29sZWFuKG5vZGUuaXNQcm9qZWN0aW9uRGlydHkgfHxcbiAgICAgICAgbm9kZS5wYXJlbnQuaXNQcm9qZWN0aW9uRGlydHkgfHxcbiAgICAgICAgbm9kZS5wYXJlbnQuaXNTaGFyZWRQcm9qZWN0aW9uRGlydHkpKTtcbiAgICBub2RlLmlzVHJhbnNmb3JtRGlydHkgfHwgKG5vZGUuaXNUcmFuc2Zvcm1EaXJ0eSA9IG5vZGUucGFyZW50LmlzVHJhbnNmb3JtRGlydHkpO1xufVxuZnVuY3Rpb24gY2xlYW5EaXJ0eU5vZGVzKG5vZGUpIHtcbiAgICBub2RlLmlzUHJvamVjdGlvbkRpcnR5ID1cbiAgICAgICAgbm9kZS5pc1NoYXJlZFByb2plY3Rpb25EaXJ0eSA9XG4gICAgICAgICAgICBub2RlLmlzVHJhbnNmb3JtRGlydHkgPVxuICAgICAgICAgICAgICAgIGZhbHNlO1xufVxuZnVuY3Rpb24gY2xlYXJTbmFwc2hvdChub2RlKSB7XG4gICAgbm9kZS5jbGVhclNuYXBzaG90KCk7XG59XG5mdW5jdGlvbiBjbGVhck1lYXN1cmVtZW50cyhub2RlKSB7XG4gICAgbm9kZS5jbGVhck1lYXN1cmVtZW50cygpO1xufVxuZnVuY3Rpb24gY2xlYXJJc0xheW91dERpcnR5KG5vZGUpIHtcbiAgICBub2RlLmlzTGF5b3V0RGlydHkgPSBmYWxzZTtcbn1cbmZ1bmN0aW9uIHJlc2V0VHJhbnNmb3JtU3R5bGUobm9kZSkge1xuICAgIGNvbnN0IHsgdmlzdWFsRWxlbWVudCB9ID0gbm9kZS5vcHRpb25zO1xuICAgIGlmICh2aXN1YWxFbGVtZW50ICYmIHZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKS5vbkJlZm9yZUxheW91dE1lYXN1cmUpIHtcbiAgICAgICAgdmlzdWFsRWxlbWVudC5ub3RpZnkoXCJCZWZvcmVMYXlvdXRNZWFzdXJlXCIpO1xuICAgIH1cbiAgICBub2RlLnJlc2V0VHJhbnNmb3JtKCk7XG59XG5mdW5jdGlvbiBmaW5pc2hBbmltYXRpb24obm9kZSkge1xuICAgIG5vZGUuZmluaXNoQW5pbWF0aW9uKCk7XG4gICAgbm9kZS50YXJnZXREZWx0YSA9IG5vZGUucmVsYXRpdmVUYXJnZXQgPSBub2RlLnRhcmdldCA9IHVuZGVmaW5lZDtcbiAgICBub2RlLmlzUHJvamVjdGlvbkRpcnR5ID0gdHJ1ZTtcbn1cbmZ1bmN0aW9uIHJlc29sdmVUYXJnZXREZWx0YShub2RlKSB7XG4gICAgbm9kZS5yZXNvbHZlVGFyZ2V0RGVsdGEoKTtcbn1cbmZ1bmN0aW9uIGNhbGNQcm9qZWN0aW9uKG5vZGUpIHtcbiAgICBub2RlLmNhbGNQcm9qZWN0aW9uKCk7XG59XG5mdW5jdGlvbiByZXNldFJvdGF0aW9uKG5vZGUpIHtcbiAgICBub2RlLnJlc2V0Um90YXRpb24oKTtcbn1cbmZ1bmN0aW9uIHJlbW92ZUxlYWRTbmFwc2hvdHMoc3RhY2spIHtcbiAgICBzdGFjay5yZW1vdmVMZWFkU25hcHNob3QoKTtcbn1cbmZ1bmN0aW9uIG1peEF4aXNEZWx0YShvdXRwdXQsIGRlbHRhLCBwKSB7XG4gICAgb3V0cHV0LnRyYW5zbGF0ZSA9IG1peChkZWx0YS50cmFuc2xhdGUsIDAsIHApO1xuICAgIG91dHB1dC5zY2FsZSA9IG1peChkZWx0YS5zY2FsZSwgMSwgcCk7XG4gICAgb3V0cHV0Lm9yaWdpbiA9IGRlbHRhLm9yaWdpbjtcbiAgICBvdXRwdXQub3JpZ2luUG9pbnQgPSBkZWx0YS5vcmlnaW5Qb2ludDtcbn1cbmZ1bmN0aW9uIG1peEF4aXMob3V0cHV0LCBmcm9tLCB0bywgcCkge1xuICAgIG91dHB1dC5taW4gPSBtaXgoZnJvbS5taW4sIHRvLm1pbiwgcCk7XG4gICAgb3V0cHV0Lm1heCA9IG1peChmcm9tLm1heCwgdG8ubWF4LCBwKTtcbn1cbmZ1bmN0aW9uIG1peEJveChvdXRwdXQsIGZyb20sIHRvLCBwKSB7XG4gICAgbWl4QXhpcyhvdXRwdXQueCwgZnJvbS54LCB0by54LCBwKTtcbiAgICBtaXhBeGlzKG91dHB1dC55LCBmcm9tLnksIHRvLnksIHApO1xufVxuZnVuY3Rpb24gaGFzT3BhY2l0eUNyb3NzZmFkZShub2RlKSB7XG4gICAgcmV0dXJuIChub2RlLmFuaW1hdGlvblZhbHVlcyAmJiBub2RlLmFuaW1hdGlvblZhbHVlcy5vcGFjaXR5RXhpdCAhPT0gdW5kZWZpbmVkKTtcbn1cbmNvbnN0IGRlZmF1bHRMYXlvdXRUcmFuc2l0aW9uID0ge1xuICAgIGR1cmF0aW9uOiAwLjQ1LFxuICAgIGVhc2U6IFswLjQsIDAsIDAuMSwgMV0sXG59O1xuY29uc3QgdXNlckFnZW50Q29udGFpbnMgPSAoc3RyaW5nKSA9PiB0eXBlb2YgbmF2aWdhdG9yICE9PSBcInVuZGVmaW5lZFwiICYmXG4gICAgbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHN0cmluZyk7XG4vKipcbiAqIE1lYXN1cmVkIGJvdW5kaW5nIGJveGVzIG11c3QgYmUgcm91bmRlZCBpbiBTYWZhcmkgYW5kXG4gKiBsZWZ0IHVudG91Y2hlZCBpbiBDaHJvbWUsIG90aGVyd2lzZSBub24taW50ZWdlciBsYXlvdXRzIHdpdGhpbiBzY2FsZWQtdXAgZWxlbWVudHNcbiAqIGNhbiBhcHBlYXIgdG8ganVtcC5cbiAqL1xuY29uc3Qgcm91bmRQb2ludCA9IHVzZXJBZ2VudENvbnRhaW5zKFwiYXBwbGV3ZWJraXQvXCIpICYmICF1c2VyQWdlbnRDb250YWlucyhcImNocm9tZS9cIilcbiAgICA/IE1hdGgucm91bmRcbiAgICA6IG5vb3A7XG5mdW5jdGlvbiByb3VuZEF4aXMoYXhpcykge1xuICAgIC8vIFJvdW5kIHRvIHRoZSBuZWFyZXN0IC41IHBpeGVscyB0byBzdXBwb3J0IHN1YnBpeGVsIGxheW91dHNcbiAgICBheGlzLm1pbiA9IHJvdW5kUG9pbnQoYXhpcy5taW4pO1xuICAgIGF4aXMubWF4ID0gcm91bmRQb2ludChheGlzLm1heCk7XG59XG5mdW5jdGlvbiByb3VuZEJveChib3gpIHtcbiAgICByb3VuZEF4aXMoYm94LngpO1xuICAgIHJvdW5kQXhpcyhib3gueSk7XG59XG5mdW5jdGlvbiBzaG91bGRBbmltYXRlUG9zaXRpb25Pbmx5KGFuaW1hdGlvblR5cGUsIHNuYXBzaG90LCBsYXlvdXQpIHtcbiAgICByZXR1cm4gKGFuaW1hdGlvblR5cGUgPT09IFwicG9zaXRpb25cIiB8fFxuICAgICAgICAoYW5pbWF0aW9uVHlwZSA9PT0gXCJwcmVzZXJ2ZS1hc3BlY3RcIiAmJlxuICAgICAgICAgICAgIWlzTmVhcihhc3BlY3RSYXRpbyhzbmFwc2hvdCksIGFzcGVjdFJhdGlvKGxheW91dCksIDAuMikpKTtcbn1cblxuZXhwb3J0IHsgY2xlYW5EaXJ0eU5vZGVzLCBjcmVhdGVQcm9qZWN0aW9uTm9kZSwgbWl4QXhpcywgbWl4QXhpc0RlbHRhLCBtaXhCb3gsIHByb3BhZ2F0ZURpcnR5Tm9kZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/state.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/node/state.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ globalProjectionState: function() { return /* binding */ globalProjectionState; }\n/* harmony export */ });\n/**\n * This should only ever be modified on the client otherwise it'll\n * persist through server requests. If we need instanced states we\n * could lazy-init via root.\n */\nconst globalProjectionState = {\n /**\n * Global flag as to whether the tree has animated since the last time\n * we resized the window\n */\n hasAnimatedSinceResize: true,\n /**\n * We set this to true once, on the first update. Any nodes added to the tree beyond that\n * update will be given a `data-projection-id` attribute.\n */\n hasEverUpdated: false,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9ub2RlL3N0YXRlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFaUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL25vZGUvc3RhdGUubWpzPzY4OTUiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGlzIHNob3VsZCBvbmx5IGV2ZXIgYmUgbW9kaWZpZWQgb24gdGhlIGNsaWVudCBvdGhlcndpc2UgaXQnbGxcbiAqIHBlcnNpc3QgdGhyb3VnaCBzZXJ2ZXIgcmVxdWVzdHMuIElmIHdlIG5lZWQgaW5zdGFuY2VkIHN0YXRlcyB3ZVxuICogY291bGQgbGF6eS1pbml0IHZpYSByb290LlxuICovXG5jb25zdCBnbG9iYWxQcm9qZWN0aW9uU3RhdGUgPSB7XG4gICAgLyoqXG4gICAgICogR2xvYmFsIGZsYWcgYXMgdG8gd2hldGhlciB0aGUgdHJlZSBoYXMgYW5pbWF0ZWQgc2luY2UgdGhlIGxhc3QgdGltZVxuICAgICAqIHdlIHJlc2l6ZWQgdGhlIHdpbmRvd1xuICAgICAqL1xuICAgIGhhc0FuaW1hdGVkU2luY2VSZXNpemU6IHRydWUsXG4gICAgLyoqXG4gICAgICogV2Ugc2V0IHRoaXMgdG8gdHJ1ZSBvbmNlLCBvbiB0aGUgZmlyc3QgdXBkYXRlLiBBbnkgbm9kZXMgYWRkZWQgdG8gdGhlIHRyZWUgYmV5b25kIHRoYXRcbiAgICAgKiB1cGRhdGUgd2lsbCBiZSBnaXZlbiBhIGBkYXRhLXByb2plY3Rpb24taWRgIGF0dHJpYnV0ZS5cbiAgICAgKi9cbiAgICBoYXNFdmVyVXBkYXRlZDogZmFsc2UsXG59O1xuXG5leHBvcnQgeyBnbG9iYWxQcm9qZWN0aW9uU3RhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/node/state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/shared/stack.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/shared/stack.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ NodeStack: function() { return /* binding */ NodeStack; }\n/* harmony export */ });\n/* harmony import */ var _utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/array.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/array.mjs\");\n\n\nclass NodeStack {\n constructor() {\n this.members = [];\n }\n add(node) {\n (0,_utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__.addUniqueItem)(this.members, node);\n node.scheduleRender();\n }\n remove(node) {\n (0,_utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__.removeItem)(this.members, node);\n if (node === this.prevLead) {\n this.prevLead = undefined;\n }\n if (node === this.lead) {\n const prevLead = this.members[this.members.length - 1];\n if (prevLead) {\n this.promote(prevLead);\n }\n }\n }\n relegate(node) {\n const indexOfNode = this.members.findIndex((member) => node === member);\n if (indexOfNode === 0)\n return false;\n /**\n * Find the next projection node that is present\n */\n let prevLead;\n for (let i = indexOfNode; i >= 0; i--) {\n const member = this.members[i];\n if (member.isPresent !== false) {\n prevLead = member;\n break;\n }\n }\n if (prevLead) {\n this.promote(prevLead);\n return true;\n }\n else {\n return false;\n }\n }\n promote(node, preserveFollowOpacity) {\n const prevLead = this.lead;\n if (node === prevLead)\n return;\n this.prevLead = prevLead;\n this.lead = node;\n node.show();\n if (prevLead) {\n prevLead.instance && prevLead.scheduleRender();\n node.scheduleRender();\n node.resumeFrom = prevLead;\n if (preserveFollowOpacity) {\n node.resumeFrom.preserveOpacity = true;\n }\n if (prevLead.snapshot) {\n node.snapshot = prevLead.snapshot;\n node.snapshot.latestValues =\n prevLead.animationValues || prevLead.latestValues;\n }\n if (node.root && node.root.isUpdating) {\n node.isLayoutDirty = true;\n }\n const { crossfade } = node.options;\n if (crossfade === false) {\n prevLead.hide();\n }\n /**\n * TODO:\n * - Test border radius when previous node was deleted\n * - boxShadow mixing\n * - Shared between element A in scrolled container and element B (scroll stays the same or changes)\n * - Shared between element A in transformed container and element B (transform stays the same or changes)\n * - Shared between element A in scrolled page and element B (scroll stays the same or changes)\n * ---\n * - Crossfade opacity of root nodes\n * - layoutId changes after animation\n * - layoutId changes mid animation\n */\n }\n }\n exitAnimationComplete() {\n this.members.forEach((node) => {\n const { options, resumingFrom } = node;\n options.onExitComplete && options.onExitComplete();\n if (resumingFrom) {\n resumingFrom.options.onExitComplete &&\n resumingFrom.options.onExitComplete();\n }\n });\n }\n scheduleRender() {\n this.members.forEach((node) => {\n node.instance && node.scheduleRender(false);\n });\n }\n /**\n * Clear any leads that have been removed this render to prevent them from being\n * used in future animations and to prevent memory leaks\n */\n removeLeadSnapshot() {\n if (this.lead && this.lead.snapshot) {\n this.lead.snapshot = undefined;\n }\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zaGFyZWQvc3RhY2subWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQWtFOztBQUVsRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSwrREFBYTtBQUNyQjtBQUNBO0FBQ0E7QUFDQSxRQUFRLDREQUFVO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGtDQUFrQyxRQUFRO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixZQUFZO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLHdCQUF3QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXFCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zaGFyZWQvc3RhY2subWpzP2VlMTYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWRkVW5pcXVlSXRlbSwgcmVtb3ZlSXRlbSB9IGZyb20gJy4uLy4uL3V0aWxzL2FycmF5Lm1qcyc7XG5cbmNsYXNzIE5vZGVTdGFjayB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMubWVtYmVycyA9IFtdO1xuICAgIH1cbiAgICBhZGQobm9kZSkge1xuICAgICAgICBhZGRVbmlxdWVJdGVtKHRoaXMubWVtYmVycywgbm9kZSk7XG4gICAgICAgIG5vZGUuc2NoZWR1bGVSZW5kZXIoKTtcbiAgICB9XG4gICAgcmVtb3ZlKG5vZGUpIHtcbiAgICAgICAgcmVtb3ZlSXRlbSh0aGlzLm1lbWJlcnMsIG5vZGUpO1xuICAgICAgICBpZiAobm9kZSA9PT0gdGhpcy5wcmV2TGVhZCkge1xuICAgICAgICAgICAgdGhpcy5wcmV2TGVhZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAobm9kZSA9PT0gdGhpcy5sZWFkKSB7XG4gICAgICAgICAgICBjb25zdCBwcmV2TGVhZCA9IHRoaXMubWVtYmVyc1t0aGlzLm1lbWJlcnMubGVuZ3RoIC0gMV07XG4gICAgICAgICAgICBpZiAocHJldkxlYWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb21vdGUocHJldkxlYWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJlbGVnYXRlKG5vZGUpIHtcbiAgICAgICAgY29uc3QgaW5kZXhPZk5vZGUgPSB0aGlzLm1lbWJlcnMuZmluZEluZGV4KChtZW1iZXIpID0+IG5vZGUgPT09IG1lbWJlcik7XG4gICAgICAgIGlmIChpbmRleE9mTm9kZSA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEZpbmQgdGhlIG5leHQgcHJvamVjdGlvbiBub2RlIHRoYXQgaXMgcHJlc2VudFxuICAgICAgICAgKi9cbiAgICAgICAgbGV0IHByZXZMZWFkO1xuICAgICAgICBmb3IgKGxldCBpID0gaW5kZXhPZk5vZGU7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgICAgICBjb25zdCBtZW1iZXIgPSB0aGlzLm1lbWJlcnNbaV07XG4gICAgICAgICAgICBpZiAobWVtYmVyLmlzUHJlc2VudCAhPT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICBwcmV2TGVhZCA9IG1lbWJlcjtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocHJldkxlYWQpIHtcbiAgICAgICAgICAgIHRoaXMucHJvbW90ZShwcmV2TGVhZCk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcm9tb3RlKG5vZGUsIHByZXNlcnZlRm9sbG93T3BhY2l0eSkge1xuICAgICAgICBjb25zdCBwcmV2TGVhZCA9IHRoaXMubGVhZDtcbiAgICAgICAgaWYgKG5vZGUgPT09IHByZXZMZWFkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB0aGlzLnByZXZMZWFkID0gcHJldkxlYWQ7XG4gICAgICAgIHRoaXMubGVhZCA9IG5vZGU7XG4gICAgICAgIG5vZGUuc2hvdygpO1xuICAgICAgICBpZiAocHJldkxlYWQpIHtcbiAgICAgICAgICAgIHByZXZMZWFkLmluc3RhbmNlICYmIHByZXZMZWFkLnNjaGVkdWxlUmVuZGVyKCk7XG4gICAgICAgICAgICBub2RlLnNjaGVkdWxlUmVuZGVyKCk7XG4gICAgICAgICAgICBub2RlLnJlc3VtZUZyb20gPSBwcmV2TGVhZDtcbiAgICAgICAgICAgIGlmIChwcmVzZXJ2ZUZvbGxvd09wYWNpdHkpIHtcbiAgICAgICAgICAgICAgICBub2RlLnJlc3VtZUZyb20ucHJlc2VydmVPcGFjaXR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwcmV2TGVhZC5zbmFwc2hvdCkge1xuICAgICAgICAgICAgICAgIG5vZGUuc25hcHNob3QgPSBwcmV2TGVhZC5zbmFwc2hvdDtcbiAgICAgICAgICAgICAgICBub2RlLnNuYXBzaG90LmxhdGVzdFZhbHVlcyA9XG4gICAgICAgICAgICAgICAgICAgIHByZXZMZWFkLmFuaW1hdGlvblZhbHVlcyB8fCBwcmV2TGVhZC5sYXRlc3RWYWx1ZXM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAobm9kZS5yb290ICYmIG5vZGUucm9vdC5pc1VwZGF0aW5nKSB7XG4gICAgICAgICAgICAgICAgbm9kZS5pc0xheW91dERpcnR5ID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgY3Jvc3NmYWRlIH0gPSBub2RlLm9wdGlvbnM7XG4gICAgICAgICAgICBpZiAoY3Jvc3NmYWRlID09PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHByZXZMZWFkLmhpZGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVE9ETzpcbiAgICAgICAgICAgICAqICAgLSBUZXN0IGJvcmRlciByYWRpdXMgd2hlbiBwcmV2aW91cyBub2RlIHdhcyBkZWxldGVkXG4gICAgICAgICAgICAgKiAgIC0gYm94U2hhZG93IG1peGluZ1xuICAgICAgICAgICAgICogICAtIFNoYXJlZCBiZXR3ZWVuIGVsZW1lbnQgQSBpbiBzY3JvbGxlZCBjb250YWluZXIgYW5kIGVsZW1lbnQgQiAoc2Nyb2xsIHN0YXlzIHRoZSBzYW1lIG9yIGNoYW5nZXMpXG4gICAgICAgICAgICAgKiAgIC0gU2hhcmVkIGJldHdlZW4gZWxlbWVudCBBIGluIHRyYW5zZm9ybWVkIGNvbnRhaW5lciBhbmQgZWxlbWVudCBCICh0cmFuc2Zvcm0gc3RheXMgdGhlIHNhbWUgb3IgY2hhbmdlcylcbiAgICAgICAgICAgICAqICAgLSBTaGFyZWQgYmV0d2VlbiBlbGVtZW50IEEgaW4gc2Nyb2xsZWQgcGFnZSBhbmQgZWxlbWVudCBCIChzY3JvbGwgc3RheXMgdGhlIHNhbWUgb3IgY2hhbmdlcylcbiAgICAgICAgICAgICAqIC0tLVxuICAgICAgICAgICAgICogICAtIENyb3NzZmFkZSBvcGFjaXR5IG9mIHJvb3Qgbm9kZXNcbiAgICAgICAgICAgICAqICAgLSBsYXlvdXRJZCBjaGFuZ2VzIGFmdGVyIGFuaW1hdGlvblxuICAgICAgICAgICAgICogICAtIGxheW91dElkIGNoYW5nZXMgbWlkIGFuaW1hdGlvblxuICAgICAgICAgICAgICovXG4gICAgICAgIH1cbiAgICB9XG4gICAgZXhpdEFuaW1hdGlvbkNvbXBsZXRlKCkge1xuICAgICAgICB0aGlzLm1lbWJlcnMuZm9yRWFjaCgobm9kZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBvcHRpb25zLCByZXN1bWluZ0Zyb20gfSA9IG5vZGU7XG4gICAgICAgICAgICBvcHRpb25zLm9uRXhpdENvbXBsZXRlICYmIG9wdGlvbnMub25FeGl0Q29tcGxldGUoKTtcbiAgICAgICAgICAgIGlmIChyZXN1bWluZ0Zyb20pIHtcbiAgICAgICAgICAgICAgICByZXN1bWluZ0Zyb20ub3B0aW9ucy5vbkV4aXRDb21wbGV0ZSAmJlxuICAgICAgICAgICAgICAgICAgICByZXN1bWluZ0Zyb20ub3B0aW9ucy5vbkV4aXRDb21wbGV0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgc2NoZWR1bGVSZW5kZXIoKSB7XG4gICAgICAgIHRoaXMubWVtYmVycy5mb3JFYWNoKChub2RlKSA9PiB7XG4gICAgICAgICAgICBub2RlLmluc3RhbmNlICYmIG5vZGUuc2NoZWR1bGVSZW5kZXIoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2xlYXIgYW55IGxlYWRzIHRoYXQgaGF2ZSBiZWVuIHJlbW92ZWQgdGhpcyByZW5kZXIgdG8gcHJldmVudCB0aGVtIGZyb20gYmVpbmdcbiAgICAgKiB1c2VkIGluIGZ1dHVyZSBhbmltYXRpb25zIGFuZCB0byBwcmV2ZW50IG1lbW9yeSBsZWFrc1xuICAgICAqL1xuICAgIHJlbW92ZUxlYWRTbmFwc2hvdCgpIHtcbiAgICAgICAgaWYgKHRoaXMubGVhZCAmJiB0aGlzLmxlYWQuc25hcHNob3QpIHtcbiAgICAgICAgICAgIHRoaXMubGVhZC5zbmFwc2hvdCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IHsgTm9kZVN0YWNrIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/shared/stack.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs":
|
||
/*!**************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs ***!
|
||
\**************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ correctBorderRadius: function() { return /* binding */ correctBorderRadius; },\n/* harmony export */ pixelsToPercent: function() { return /* binding */ pixelsToPercent; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n\n\nfunction pixelsToPercent(pixels, axis) {\n if (axis.max === axis.min)\n return 0;\n return (pixels / (axis.max - axis.min)) * 100;\n}\n/**\n * We always correct borderRadius as a percentage rather than pixels to reduce paints.\n * For example, if you are projecting a box that is 100px wide with a 10px borderRadius\n * into a box that is 200px wide with a 20px borderRadius, that is actually a 10%\n * borderRadius in both states. If we animate between the two in pixels that will trigger\n * a paint each time. If we animate between the two in percentage we'll avoid a paint.\n */\nconst correctBorderRadius = {\n correct: (latest, node) => {\n if (!node.target)\n return latest;\n /**\n * If latest is a string, if it's a percentage we can return immediately as it's\n * going to be stretched appropriately. Otherwise, if it's a pixel, convert it to a number.\n */\n if (typeof latest === \"string\") {\n if (_value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.test(latest)) {\n latest = parseFloat(latest);\n }\n else {\n return latest;\n }\n }\n /**\n * If latest is a number, it's a pixel value. We use the current viewportBox to calculate that\n * pixel value as a percentage of each axis\n */\n const x = pixelsToPercent(latest, node.target.x);\n const y = pixelsToPercent(latest, node.target.y);\n return `${x}% ${y}%`;\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zdHlsZXMvc2NhbGUtYm9yZGVyLXJhZGl1cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXlEOztBQUV6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsOERBQUU7QUFDbEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0JBQWtCLEVBQUUsSUFBSSxFQUFFO0FBQzFCLEtBQUs7QUFDTDs7QUFFZ0QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL3N0eWxlcy9zY2FsZS1ib3JkZXItcmFkaXVzLm1qcz8xNjgyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHB4IH0gZnJvbSAnLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuXG5mdW5jdGlvbiBwaXhlbHNUb1BlcmNlbnQocGl4ZWxzLCBheGlzKSB7XG4gICAgaWYgKGF4aXMubWF4ID09PSBheGlzLm1pbilcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgcmV0dXJuIChwaXhlbHMgLyAoYXhpcy5tYXggLSBheGlzLm1pbikpICogMTAwO1xufVxuLyoqXG4gKiBXZSBhbHdheXMgY29ycmVjdCBib3JkZXJSYWRpdXMgYXMgYSBwZXJjZW50YWdlIHJhdGhlciB0aGFuIHBpeGVscyB0byByZWR1Y2UgcGFpbnRzLlxuICogRm9yIGV4YW1wbGUsIGlmIHlvdSBhcmUgcHJvamVjdGluZyBhIGJveCB0aGF0IGlzIDEwMHB4IHdpZGUgd2l0aCBhIDEwcHggYm9yZGVyUmFkaXVzXG4gKiBpbnRvIGEgYm94IHRoYXQgaXMgMjAwcHggd2lkZSB3aXRoIGEgMjBweCBib3JkZXJSYWRpdXMsIHRoYXQgaXMgYWN0dWFsbHkgYSAxMCVcbiAqIGJvcmRlclJhZGl1cyBpbiBib3RoIHN0YXRlcy4gSWYgd2UgYW5pbWF0ZSBiZXR3ZWVuIHRoZSB0d28gaW4gcGl4ZWxzIHRoYXQgd2lsbCB0cmlnZ2VyXG4gKiBhIHBhaW50IGVhY2ggdGltZS4gSWYgd2UgYW5pbWF0ZSBiZXR3ZWVuIHRoZSB0d28gaW4gcGVyY2VudGFnZSB3ZSdsbCBhdm9pZCBhIHBhaW50LlxuICovXG5jb25zdCBjb3JyZWN0Qm9yZGVyUmFkaXVzID0ge1xuICAgIGNvcnJlY3Q6IChsYXRlc3QsIG5vZGUpID0+IHtcbiAgICAgICAgaWYgKCFub2RlLnRhcmdldClcbiAgICAgICAgICAgIHJldHVybiBsYXRlc3Q7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiBsYXRlc3QgaXMgYSBzdHJpbmcsIGlmIGl0J3MgYSBwZXJjZW50YWdlIHdlIGNhbiByZXR1cm4gaW1tZWRpYXRlbHkgYXMgaXQnc1xuICAgICAgICAgKiBnb2luZyB0byBiZSBzdHJldGNoZWQgYXBwcm9wcmlhdGVseS4gT3RoZXJ3aXNlLCBpZiBpdCdzIGEgcGl4ZWwsIGNvbnZlcnQgaXQgdG8gYSBudW1iZXIuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAodHlwZW9mIGxhdGVzdCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgaWYgKHB4LnRlc3QobGF0ZXN0KSkge1xuICAgICAgICAgICAgICAgIGxhdGVzdCA9IHBhcnNlRmxvYXQobGF0ZXN0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBsYXRlc3Q7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIGxhdGVzdCBpcyBhIG51bWJlciwgaXQncyBhIHBpeGVsIHZhbHVlLiBXZSB1c2UgdGhlIGN1cnJlbnQgdmlld3BvcnRCb3ggdG8gY2FsY3VsYXRlIHRoYXRcbiAgICAgICAgICogcGl4ZWwgdmFsdWUgYXMgYSBwZXJjZW50YWdlIG9mIGVhY2ggYXhpc1xuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgeCA9IHBpeGVsc1RvUGVyY2VudChsYXRlc3QsIG5vZGUudGFyZ2V0LngpO1xuICAgICAgICBjb25zdCB5ID0gcGl4ZWxzVG9QZXJjZW50KGxhdGVzdCwgbm9kZS50YXJnZXQueSk7XG4gICAgICAgIHJldHVybiBgJHt4fSUgJHt5fSVgO1xuICAgIH0sXG59O1xuXG5leHBvcnQgeyBjb3JyZWN0Qm9yZGVyUmFkaXVzLCBwaXhlbHNUb1BlcmNlbnQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ correctBoxShadow: function() { return /* binding */ correctBoxShadow; }\n/* harmony export */ });\n/* harmony import */ var _utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n\n\n\nconst correctBoxShadow = {\n correct: (latest, { treeScale, projectionDelta }) => {\n const original = latest;\n const shadow = _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_0__.complex.parse(latest);\n // TODO: Doesn't support multiple shadows\n if (shadow.length > 5)\n return original;\n const template = _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_0__.complex.createTransformer(latest);\n const offset = typeof shadow[0] !== \"number\" ? 1 : 0;\n // Calculate the overall context scale\n const xScale = projectionDelta.x.scale * treeScale.x;\n const yScale = projectionDelta.y.scale * treeScale.y;\n shadow[0 + offset] /= xScale;\n shadow[1 + offset] /= yScale;\n /**\n * Ideally we'd correct x and y scales individually, but because blur and\n * spread apply to both we have to take a scale average and apply that instead.\n * We could potentially improve the outcome of this by incorporating the ratio between\n * the two scales.\n */\n const averageScale = (0,_utils_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(xScale, yScale, 0.5);\n // Blur\n if (typeof shadow[2 + offset] === \"number\")\n shadow[2 + offset] /= averageScale;\n // Spread\n if (typeof shadow[3 + offset] === \"number\")\n shadow[3 + offset] /= averageScale;\n return template(shadow);\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zdHlsZXMvc2NhbGUtYm94LXNoYWRvdy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQTBDO0FBQ29COztBQUU5RDtBQUNBLHdCQUF3Qiw0QkFBNEI7QUFDcEQ7QUFDQSx1QkFBdUIsbUVBQU87QUFDOUI7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLG1FQUFPO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixtREFBRztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL3N0eWxlcy9zY2FsZS1ib3gtc2hhZG93Lm1qcz8yYzdlIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1peCB9IGZyb20gJy4uLy4uL3V0aWxzL21peC5tanMnO1xuaW1wb3J0IHsgY29tcGxleCB9IGZyb20gJy4uLy4uL3ZhbHVlL3R5cGVzL2NvbXBsZXgvaW5kZXgubWpzJztcblxuY29uc3QgY29ycmVjdEJveFNoYWRvdyA9IHtcbiAgICBjb3JyZWN0OiAobGF0ZXN0LCB7IHRyZWVTY2FsZSwgcHJvamVjdGlvbkRlbHRhIH0pID0+IHtcbiAgICAgICAgY29uc3Qgb3JpZ2luYWwgPSBsYXRlc3Q7XG4gICAgICAgIGNvbnN0IHNoYWRvdyA9IGNvbXBsZXgucGFyc2UobGF0ZXN0KTtcbiAgICAgICAgLy8gVE9ETzogRG9lc24ndCBzdXBwb3J0IG11bHRpcGxlIHNoYWRvd3NcbiAgICAgICAgaWYgKHNoYWRvdy5sZW5ndGggPiA1KVxuICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsO1xuICAgICAgICBjb25zdCB0ZW1wbGF0ZSA9IGNvbXBsZXguY3JlYXRlVHJhbnNmb3JtZXIobGF0ZXN0KTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gdHlwZW9mIHNoYWRvd1swXSAhPT0gXCJudW1iZXJcIiA/IDEgOiAwO1xuICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG92ZXJhbGwgY29udGV4dCBzY2FsZVxuICAgICAgICBjb25zdCB4U2NhbGUgPSBwcm9qZWN0aW9uRGVsdGEueC5zY2FsZSAqIHRyZWVTY2FsZS54O1xuICAgICAgICBjb25zdCB5U2NhbGUgPSBwcm9qZWN0aW9uRGVsdGEueS5zY2FsZSAqIHRyZWVTY2FsZS55O1xuICAgICAgICBzaGFkb3dbMCArIG9mZnNldF0gLz0geFNjYWxlO1xuICAgICAgICBzaGFkb3dbMSArIG9mZnNldF0gLz0geVNjYWxlO1xuICAgICAgICAvKipcbiAgICAgICAgICogSWRlYWxseSB3ZSdkIGNvcnJlY3QgeCBhbmQgeSBzY2FsZXMgaW5kaXZpZHVhbGx5LCBidXQgYmVjYXVzZSBibHVyIGFuZFxuICAgICAgICAgKiBzcHJlYWQgYXBwbHkgdG8gYm90aCB3ZSBoYXZlIHRvIHRha2UgYSBzY2FsZSBhdmVyYWdlIGFuZCBhcHBseSB0aGF0IGluc3RlYWQuXG4gICAgICAgICAqIFdlIGNvdWxkIHBvdGVudGlhbGx5IGltcHJvdmUgdGhlIG91dGNvbWUgb2YgdGhpcyBieSBpbmNvcnBvcmF0aW5nIHRoZSByYXRpbyBiZXR3ZWVuXG4gICAgICAgICAqIHRoZSB0d28gc2NhbGVzLlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgYXZlcmFnZVNjYWxlID0gbWl4KHhTY2FsZSwgeVNjYWxlLCAwLjUpO1xuICAgICAgICAvLyBCbHVyXG4gICAgICAgIGlmICh0eXBlb2Ygc2hhZG93WzIgKyBvZmZzZXRdID09PSBcIm51bWJlclwiKVxuICAgICAgICAgICAgc2hhZG93WzIgKyBvZmZzZXRdIC89IGF2ZXJhZ2VTY2FsZTtcbiAgICAgICAgLy8gU3ByZWFkXG4gICAgICAgIGlmICh0eXBlb2Ygc2hhZG93WzMgKyBvZmZzZXRdID09PSBcIm51bWJlclwiKVxuICAgICAgICAgICAgc2hhZG93WzMgKyBvZmZzZXRdIC89IGF2ZXJhZ2VTY2FsZTtcbiAgICAgICAgcmV0dXJuIHRlbXBsYXRlKHNoYWRvdyk7XG4gICAgfSxcbn07XG5cbmV4cG9ydCB7IGNvcnJlY3RCb3hTaGFkb3cgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addScaleCorrector: function() { return /* binding */ addScaleCorrector; },\n/* harmony export */ scaleCorrectors: function() { return /* binding */ scaleCorrectors; }\n/* harmony export */ });\nconst scaleCorrectors = {};\nfunction addScaleCorrector(correctors) {\n Object.assign(scaleCorrectors, correctors);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zdHlsZXMvc2NhbGUtY29ycmVjdGlvbi5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTs7QUFFOEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL3N0eWxlcy9zY2FsZS1jb3JyZWN0aW9uLm1qcz9kZjg4Il0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHNjYWxlQ29ycmVjdG9ycyA9IHt9O1xuZnVuY3Rpb24gYWRkU2NhbGVDb3JyZWN0b3IoY29ycmVjdG9ycykge1xuICAgIE9iamVjdC5hc3NpZ24oc2NhbGVDb3JyZWN0b3JzLCBjb3JyZWN0b3JzKTtcbn1cblxuZXhwb3J0IHsgYWRkU2NhbGVDb3JyZWN0b3IsIHNjYWxlQ29ycmVjdG9ycyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/transform.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/styles/transform.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildProjectionTransform: function() { return /* binding */ buildProjectionTransform; }\n/* harmony export */ });\nfunction buildProjectionTransform(delta, treeScale, latestTransform) {\n let transform = \"\";\n /**\n * The translations we use to calculate are always relative to the viewport coordinate space.\n * But when we apply scales, we also scale the coordinate space of an element and its children.\n * For instance if we have a treeScale (the culmination of all parent scales) of 0.5 and we need\n * to move an element 100 pixels, we actually need to move it 200 in within that scaled space.\n */\n const xTranslate = delta.x.translate / treeScale.x;\n const yTranslate = delta.y.translate / treeScale.y;\n if (xTranslate || yTranslate) {\n transform = `translate3d(${xTranslate}px, ${yTranslate}px, 0) `;\n }\n /**\n * Apply scale correction for the tree transform.\n * This will apply scale to the screen-orientated axes.\n */\n if (treeScale.x !== 1 || treeScale.y !== 1) {\n transform += `scale(${1 / treeScale.x}, ${1 / treeScale.y}) `;\n }\n if (latestTransform) {\n const { rotate, rotateX, rotateY } = latestTransform;\n if (rotate)\n transform += `rotate(${rotate}deg) `;\n if (rotateX)\n transform += `rotateX(${rotateX}deg) `;\n if (rotateY)\n transform += `rotateY(${rotateY}deg) `;\n }\n /**\n * Apply scale to match the size of the element to the size we want it.\n * This will apply scale to the element-orientated axes.\n */\n const elementScaleX = delta.x.scale * treeScale.x;\n const elementScaleY = delta.y.scale * treeScale.y;\n if (elementScaleX !== 1 || elementScaleY !== 1) {\n transform += `scale(${elementScaleX}, ${elementScaleY})`;\n }\n return transform || \"none\";\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi9zdHlsZXMvdHJhbnNmb3JtLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1DQUFtQyxXQUFXLE1BQU0sV0FBVztBQUMvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsZ0JBQWdCLElBQUksZ0JBQWdCO0FBQ2xFO0FBQ0E7QUFDQSxnQkFBZ0IsMkJBQTJCO0FBQzNDO0FBQ0EsbUNBQW1DLE9BQU87QUFDMUM7QUFDQSxvQ0FBb0MsUUFBUTtBQUM1QztBQUNBLG9DQUFvQyxRQUFRO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsY0FBYyxJQUFJLGNBQWM7QUFDOUQ7QUFDQTtBQUNBOztBQUVvQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3Byb2plY3Rpb24vc3R5bGVzL3RyYW5zZm9ybS5tanM/ODUwYSJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBidWlsZFByb2plY3Rpb25UcmFuc2Zvcm0oZGVsdGEsIHRyZWVTY2FsZSwgbGF0ZXN0VHJhbnNmb3JtKSB7XG4gICAgbGV0IHRyYW5zZm9ybSA9IFwiXCI7XG4gICAgLyoqXG4gICAgICogVGhlIHRyYW5zbGF0aW9ucyB3ZSB1c2UgdG8gY2FsY3VsYXRlIGFyZSBhbHdheXMgcmVsYXRpdmUgdG8gdGhlIHZpZXdwb3J0IGNvb3JkaW5hdGUgc3BhY2UuXG4gICAgICogQnV0IHdoZW4gd2UgYXBwbHkgc2NhbGVzLCB3ZSBhbHNvIHNjYWxlIHRoZSBjb29yZGluYXRlIHNwYWNlIG9mIGFuIGVsZW1lbnQgYW5kIGl0cyBjaGlsZHJlbi5cbiAgICAgKiBGb3IgaW5zdGFuY2UgaWYgd2UgaGF2ZSBhIHRyZWVTY2FsZSAodGhlIGN1bG1pbmF0aW9uIG9mIGFsbCBwYXJlbnQgc2NhbGVzKSBvZiAwLjUgYW5kIHdlIG5lZWRcbiAgICAgKiB0byBtb3ZlIGFuIGVsZW1lbnQgMTAwIHBpeGVscywgd2UgYWN0dWFsbHkgbmVlZCB0byBtb3ZlIGl0IDIwMCBpbiB3aXRoaW4gdGhhdCBzY2FsZWQgc3BhY2UuXG4gICAgICovXG4gICAgY29uc3QgeFRyYW5zbGF0ZSA9IGRlbHRhLngudHJhbnNsYXRlIC8gdHJlZVNjYWxlLng7XG4gICAgY29uc3QgeVRyYW5zbGF0ZSA9IGRlbHRhLnkudHJhbnNsYXRlIC8gdHJlZVNjYWxlLnk7XG4gICAgaWYgKHhUcmFuc2xhdGUgfHwgeVRyYW5zbGF0ZSkge1xuICAgICAgICB0cmFuc2Zvcm0gPSBgdHJhbnNsYXRlM2QoJHt4VHJhbnNsYXRlfXB4LCAke3lUcmFuc2xhdGV9cHgsIDApIGA7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEFwcGx5IHNjYWxlIGNvcnJlY3Rpb24gZm9yIHRoZSB0cmVlIHRyYW5zZm9ybS5cbiAgICAgKiBUaGlzIHdpbGwgYXBwbHkgc2NhbGUgdG8gdGhlIHNjcmVlbi1vcmllbnRhdGVkIGF4ZXMuXG4gICAgICovXG4gICAgaWYgKHRyZWVTY2FsZS54ICE9PSAxIHx8IHRyZWVTY2FsZS55ICE9PSAxKSB7XG4gICAgICAgIHRyYW5zZm9ybSArPSBgc2NhbGUoJHsxIC8gdHJlZVNjYWxlLnh9LCAkezEgLyB0cmVlU2NhbGUueX0pIGA7XG4gICAgfVxuICAgIGlmIChsYXRlc3RUcmFuc2Zvcm0pIHtcbiAgICAgICAgY29uc3QgeyByb3RhdGUsIHJvdGF0ZVgsIHJvdGF0ZVkgfSA9IGxhdGVzdFRyYW5zZm9ybTtcbiAgICAgICAgaWYgKHJvdGF0ZSlcbiAgICAgICAgICAgIHRyYW5zZm9ybSArPSBgcm90YXRlKCR7cm90YXRlfWRlZykgYDtcbiAgICAgICAgaWYgKHJvdGF0ZVgpXG4gICAgICAgICAgICB0cmFuc2Zvcm0gKz0gYHJvdGF0ZVgoJHtyb3RhdGVYfWRlZykgYDtcbiAgICAgICAgaWYgKHJvdGF0ZVkpXG4gICAgICAgICAgICB0cmFuc2Zvcm0gKz0gYHJvdGF0ZVkoJHtyb3RhdGVZfWRlZykgYDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQXBwbHkgc2NhbGUgdG8gbWF0Y2ggdGhlIHNpemUgb2YgdGhlIGVsZW1lbnQgdG8gdGhlIHNpemUgd2Ugd2FudCBpdC5cbiAgICAgKiBUaGlzIHdpbGwgYXBwbHkgc2NhbGUgdG8gdGhlIGVsZW1lbnQtb3JpZW50YXRlZCBheGVzLlxuICAgICAqL1xuICAgIGNvbnN0IGVsZW1lbnRTY2FsZVggPSBkZWx0YS54LnNjYWxlICogdHJlZVNjYWxlLng7XG4gICAgY29uc3QgZWxlbWVudFNjYWxlWSA9IGRlbHRhLnkuc2NhbGUgKiB0cmVlU2NhbGUueTtcbiAgICBpZiAoZWxlbWVudFNjYWxlWCAhPT0gMSB8fCBlbGVtZW50U2NhbGVZICE9PSAxKSB7XG4gICAgICAgIHRyYW5zZm9ybSArPSBgc2NhbGUoJHtlbGVtZW50U2NhbGVYfSwgJHtlbGVtZW50U2NhbGVZfSlgO1xuICAgIH1cbiAgICByZXR1cm4gdHJhbnNmb3JtIHx8IFwibm9uZVwiO1xufVxuXG5leHBvcnQgeyBidWlsZFByb2plY3Rpb25UcmFuc2Zvcm0gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/styles/transform.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ eachAxis: function() { return /* binding */ eachAxis; }\n/* harmony export */ });\nfunction eachAxis(callback) {\n return [callback(\"x\"), callback(\"y\")];\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi91dGlscy9lYWNoLWF4aXMubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7O0FBRW9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi91dGlscy9lYWNoLWF4aXMubWpzPzQ5ZjYiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gZWFjaEF4aXMoY2FsbGJhY2spIHtcbiAgICByZXR1cm4gW2NhbGxiYWNrKFwieFwiKSwgY2FsbGJhY2soXCJ5XCIpXTtcbn1cblxuZXhwb3J0IHsgZWFjaEF4aXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ has2DTranslate: function() { return /* binding */ has2DTranslate; },\n/* harmony export */ hasScale: function() { return /* binding */ hasScale; },\n/* harmony export */ hasTransform: function() { return /* binding */ hasTransform; }\n/* harmony export */ });\nfunction isIdentityScale(scale) {\n return scale === undefined || scale === 1;\n}\nfunction hasScale({ scale, scaleX, scaleY }) {\n return (!isIdentityScale(scale) ||\n !isIdentityScale(scaleX) ||\n !isIdentityScale(scaleY));\n}\nfunction hasTransform(values) {\n return (hasScale(values) ||\n has2DTranslate(values) ||\n values.z ||\n values.rotate ||\n values.rotateX ||\n values.rotateY);\n}\nfunction has2DTranslate(values) {\n return is2DTranslate(values.x) || is2DTranslate(values.y);\n}\nfunction is2DTranslate(value) {\n return value && value !== \"0%\";\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi91dGlscy9oYXMtdHJhbnNmb3JtLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsdUJBQXVCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFa0QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9wcm9qZWN0aW9uL3V0aWxzL2hhcy10cmFuc2Zvcm0ubWpzPzg1ZDIiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gaXNJZGVudGl0eVNjYWxlKHNjYWxlKSB7XG4gICAgcmV0dXJuIHNjYWxlID09PSB1bmRlZmluZWQgfHwgc2NhbGUgPT09IDE7XG59XG5mdW5jdGlvbiBoYXNTY2FsZSh7IHNjYWxlLCBzY2FsZVgsIHNjYWxlWSB9KSB7XG4gICAgcmV0dXJuICghaXNJZGVudGl0eVNjYWxlKHNjYWxlKSB8fFxuICAgICAgICAhaXNJZGVudGl0eVNjYWxlKHNjYWxlWCkgfHxcbiAgICAgICAgIWlzSWRlbnRpdHlTY2FsZShzY2FsZVkpKTtcbn1cbmZ1bmN0aW9uIGhhc1RyYW5zZm9ybSh2YWx1ZXMpIHtcbiAgICByZXR1cm4gKGhhc1NjYWxlKHZhbHVlcykgfHxcbiAgICAgICAgaGFzMkRUcmFuc2xhdGUodmFsdWVzKSB8fFxuICAgICAgICB2YWx1ZXMueiB8fFxuICAgICAgICB2YWx1ZXMucm90YXRlIHx8XG4gICAgICAgIHZhbHVlcy5yb3RhdGVYIHx8XG4gICAgICAgIHZhbHVlcy5yb3RhdGVZKTtcbn1cbmZ1bmN0aW9uIGhhczJEVHJhbnNsYXRlKHZhbHVlcykge1xuICAgIHJldHVybiBpczJEVHJhbnNsYXRlKHZhbHVlcy54KSB8fCBpczJEVHJhbnNsYXRlKHZhbHVlcy55KTtcbn1cbmZ1bmN0aW9uIGlzMkRUcmFuc2xhdGUodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgJiYgdmFsdWUgIT09IFwiMCVcIjtcbn1cblxuZXhwb3J0IHsgaGFzMkRUcmFuc2xhdGUsIGhhc1NjYWxlLCBoYXNUcmFuc2Zvcm0gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/measure.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/projection/utils/measure.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ measurePageBox: function() { return /* binding */ measurePageBox; },\n/* harmony export */ measureViewportBox: function() { return /* binding */ measureViewportBox; }\n/* harmony export */ });\n/* harmony import */ var _geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../geometry/conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs\");\n/* harmony import */ var _geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../geometry/delta-apply.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs\");\n\n\n\nfunction measureViewportBox(instance, transformPoint) {\n return (0,_geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_0__.convertBoundingBoxToBox)((0,_geometry_conversion_mjs__WEBPACK_IMPORTED_MODULE_0__.transformBoxPoints)(instance.getBoundingClientRect(), transformPoint));\n}\nfunction measurePageBox(element, rootProjectionNode, transformPagePoint) {\n const viewportBox = measureViewportBox(element, transformPagePoint);\n const { scroll } = rootProjectionNode;\n if (scroll) {\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_1__.translateAxis)(viewportBox.x, scroll.offset.x);\n (0,_geometry_delta_apply_mjs__WEBPACK_IMPORTED_MODULE_1__.translateAxis)(viewportBox.y, scroll.offset.y);\n }\n return viewportBox;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi91dGlscy9tZWFzdXJlLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQXlGO0FBQzdCOztBQUU1RDtBQUNBLFdBQVcsaUZBQXVCLENBQUMsNEVBQWtCO0FBQ3JEO0FBQ0E7QUFDQTtBQUNBLFlBQVksU0FBUztBQUNyQjtBQUNBLFFBQVEsd0VBQWE7QUFDckIsUUFBUSx3RUFBYTtBQUNyQjtBQUNBO0FBQ0E7O0FBRThDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcHJvamVjdGlvbi91dGlscy9tZWFzdXJlLm1qcz9hM2RmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbnZlcnRCb3VuZGluZ0JveFRvQm94LCB0cmFuc2Zvcm1Cb3hQb2ludHMgfSBmcm9tICcuLi9nZW9tZXRyeS9jb252ZXJzaW9uLm1qcyc7XG5pbXBvcnQgeyB0cmFuc2xhdGVBeGlzIH0gZnJvbSAnLi4vZ2VvbWV0cnkvZGVsdGEtYXBwbHkubWpzJztcblxuZnVuY3Rpb24gbWVhc3VyZVZpZXdwb3J0Qm94KGluc3RhbmNlLCB0cmFuc2Zvcm1Qb2ludCkge1xuICAgIHJldHVybiBjb252ZXJ0Qm91bmRpbmdCb3hUb0JveCh0cmFuc2Zvcm1Cb3hQb2ludHMoaW5zdGFuY2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksIHRyYW5zZm9ybVBvaW50KSk7XG59XG5mdW5jdGlvbiBtZWFzdXJlUGFnZUJveChlbGVtZW50LCByb290UHJvamVjdGlvbk5vZGUsIHRyYW5zZm9ybVBhZ2VQb2ludCkge1xuICAgIGNvbnN0IHZpZXdwb3J0Qm94ID0gbWVhc3VyZVZpZXdwb3J0Qm94KGVsZW1lbnQsIHRyYW5zZm9ybVBhZ2VQb2ludCk7XG4gICAgY29uc3QgeyBzY3JvbGwgfSA9IHJvb3RQcm9qZWN0aW9uTm9kZTtcbiAgICBpZiAoc2Nyb2xsKSB7XG4gICAgICAgIHRyYW5zbGF0ZUF4aXModmlld3BvcnRCb3gueCwgc2Nyb2xsLm9mZnNldC54KTtcbiAgICAgICAgdHJhbnNsYXRlQXhpcyh2aWV3cG9ydEJveC55LCBzY3JvbGwub2Zmc2V0LnkpO1xuICAgIH1cbiAgICByZXR1cm4gdmlld3BvcnRCb3g7XG59XG5cbmV4cG9ydCB7IG1lYXN1cmVQYWdlQm94LCBtZWFzdXJlVmlld3BvcnRCb3ggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/measure.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/VisualElement.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/VisualElement.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ VisualElement: function() { return /* binding */ VisualElement; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../projection/geometry/models.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs\");\n/* harmony import */ var _utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../utils/is-ref-object.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs\");\n/* harmony import */ var _utils_reduced_motion_index_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/reduced-motion/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs\");\n/* harmony import */ var _utils_reduced_motion_state_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/reduced-motion/state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs\");\n/* harmony import */ var _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../utils/subscription-manager.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs\");\n/* harmony import */ var _value_index_mjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../value/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs\");\n/* harmony import */ var _value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../value/use-will-change/is.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n/* harmony import */ var _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/is-controlling-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs\");\n/* harmony import */ var _utils_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./utils/is-variant-label.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs\");\n/* harmony import */ var _utils_motion_values_mjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./utils/motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/motion-values.mjs\");\n/* harmony import */ var _utils_resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./utils/resolve-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs\");\n/* harmony import */ var _utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../utils/warn-once.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/warn-once.mjs\");\n/* harmony import */ var _motion_features_definitions_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../motion/features/definitions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/definitions.mjs\");\n/* harmony import */ var _utils_variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/variant-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs\");\n/* harmony import */ var _store_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./store.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/store.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst featureNames = Object.keys(_motion_features_definitions_mjs__WEBPACK_IMPORTED_MODULE_0__.featureDefinitions);\nconst numFeatures = featureNames.length;\nconst propEventHandlers = [\n \"AnimationStart\",\n \"AnimationComplete\",\n \"Update\",\n \"BeforeLayoutMeasure\",\n \"LayoutMeasure\",\n \"LayoutAnimationStart\",\n \"LayoutAnimationComplete\",\n];\nconst numVariantProps = _utils_variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__.variantProps.length;\n/**\n * A VisualElement is an imperative abstraction around UI elements such as\n * HTMLElement, SVGElement, Three.Object3D etc.\n */\nclass VisualElement {\n constructor({ parent, props, presenceContext, reducedMotionConfig, visualState, }, options = {}) {\n /**\n * A reference to the current underlying Instance, e.g. a HTMLElement\n * or Three.Mesh etc.\n */\n this.current = null;\n /**\n * A set containing references to this VisualElement's children.\n */\n this.children = new Set();\n /**\n * Determine what role this visual element should take in the variant tree.\n */\n this.isVariantNode = false;\n this.isControllingVariants = false;\n /**\n * Decides whether this VisualElement should animate in reduced motion\n * mode.\n *\n * TODO: This is currently set on every individual VisualElement but feels\n * like it could be set globally.\n */\n this.shouldReduceMotion = null;\n /**\n * A map of all motion values attached to this visual element. Motion\n * values are source of truth for any given animated value. A motion\n * value might be provided externally by the component via props.\n */\n this.values = new Map();\n /**\n * Cleanup functions for active features (hover/tap/exit etc)\n */\n this.features = {};\n /**\n * A map of every subscription that binds the provided or generated\n * motion values onChange listeners to this visual element.\n */\n this.valueSubscriptions = new Map();\n /**\n * A reference to the previously-provided motion values as returned\n * from scrapeMotionValuesFromProps. We use the keys in here to determine\n * if any motion values need to be removed after props are updated.\n */\n this.prevMotionValues = {};\n /**\n * An object containing a SubscriptionManager for each active event.\n */\n this.events = {};\n /**\n * An object containing an unsubscribe function for each prop event subscription.\n * For example, every \"Update\" event can have multiple subscribers via\n * VisualElement.on(), but only one of those can be defined via the onUpdate prop.\n */\n this.propEventSubscriptions = {};\n this.notifyUpdate = () => this.notify(\"Update\", this.latestValues);\n this.render = () => {\n if (!this.current)\n return;\n this.triggerBuild();\n this.renderInstance(this.current, this.renderState, this.props.style, this.projection);\n };\n this.scheduleRender = () => _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.frame.render(this.render, false, true);\n const { latestValues, renderState } = visualState;\n this.latestValues = latestValues;\n this.baseTarget = { ...latestValues };\n this.initialValues = props.initial ? { ...latestValues } : {};\n this.renderState = renderState;\n this.parent = parent;\n this.props = props;\n this.presenceContext = presenceContext;\n this.depth = parent ? parent.depth + 1 : 0;\n this.reducedMotionConfig = reducedMotionConfig;\n this.options = options;\n this.isControllingVariants = (0,_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_3__.isControllingVariants)(props);\n this.isVariantNode = (0,_utils_is_controlling_variants_mjs__WEBPACK_IMPORTED_MODULE_3__.isVariantNode)(props);\n if (this.isVariantNode) {\n this.variantChildren = new Set();\n }\n this.manuallyAnimateOnMount = Boolean(parent && parent.current);\n /**\n * Any motion values that are provided to the element when created\n * aren't yet bound to the element, as this would technically be impure.\n * However, we iterate through the motion values and set them to the\n * initial values for this component.\n *\n * TODO: This is impure and we should look at changing this to run on mount.\n * Doing so will break some tests but this isn't neccessarily a breaking change,\n * more a reflection of the test.\n */\n const { willChange, ...initialMotionValues } = this.scrapeMotionValuesFromProps(props, {});\n for (const key in initialMotionValues) {\n const value = initialMotionValues[key];\n if (latestValues[key] !== undefined && (0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_4__.isMotionValue)(value)) {\n value.set(latestValues[key], false);\n if ((0,_value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_5__.isWillChangeMotionValue)(willChange)) {\n willChange.add(key);\n }\n }\n }\n }\n /**\n * This method takes React props and returns found MotionValues. For example, HTML\n * MotionValues will be found within the style prop, whereas for Three.js within attribute arrays.\n *\n * This isn't an abstract method as it needs calling in the constructor, but it is\n * intended to be one.\n */\n scrapeMotionValuesFromProps(_props, _prevProps) {\n return {};\n }\n mount(instance) {\n this.current = instance;\n _store_mjs__WEBPACK_IMPORTED_MODULE_6__.visualElementStore.set(instance, this);\n if (this.projection && !this.projection.instance) {\n this.projection.mount(instance);\n }\n if (this.parent && this.isVariantNode && !this.isControllingVariants) {\n this.removeFromVariantTree = this.parent.addVariantChild(this);\n }\n this.values.forEach((value, key) => this.bindToMotionValue(key, value));\n if (!_utils_reduced_motion_state_mjs__WEBPACK_IMPORTED_MODULE_7__.hasReducedMotionListener.current) {\n (0,_utils_reduced_motion_index_mjs__WEBPACK_IMPORTED_MODULE_8__.initPrefersReducedMotion)();\n }\n this.shouldReduceMotion =\n this.reducedMotionConfig === \"never\"\n ? false\n : this.reducedMotionConfig === \"always\"\n ? true\n : _utils_reduced_motion_state_mjs__WEBPACK_IMPORTED_MODULE_7__.prefersReducedMotion.current;\n if (true) {\n (0,_utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_9__.warnOnce)(this.shouldReduceMotion !== true, \"You have Reduced Motion enabled on your device. Animations may not appear as expected.\");\n }\n if (this.parent)\n this.parent.children.add(this);\n this.update(this.props, this.presenceContext);\n }\n unmount() {\n _store_mjs__WEBPACK_IMPORTED_MODULE_6__.visualElementStore.delete(this.current);\n this.projection && this.projection.unmount();\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.cancelFrame)(this.notifyUpdate);\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.cancelFrame)(this.render);\n this.valueSubscriptions.forEach((remove) => remove());\n this.removeFromVariantTree && this.removeFromVariantTree();\n this.parent && this.parent.children.delete(this);\n for (const key in this.events) {\n this.events[key].clear();\n }\n for (const key in this.features) {\n this.features[key].unmount();\n }\n this.current = null;\n }\n bindToMotionValue(key, value) {\n const valueIsTransform = _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_10__.transformProps.has(key);\n const removeOnChange = value.on(\"change\", (latestValue) => {\n this.latestValues[key] = latestValue;\n this.props.onUpdate &&\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.frame.update(this.notifyUpdate, false, true);\n if (valueIsTransform && this.projection) {\n this.projection.isTransformDirty = true;\n }\n });\n const removeOnRenderRequest = value.on(\"renderRequest\", this.scheduleRender);\n this.valueSubscriptions.set(key, () => {\n removeOnChange();\n removeOnRenderRequest();\n });\n }\n sortNodePosition(other) {\n /**\n * If these nodes aren't even of the same type we can't compare their depth.\n */\n if (!this.current ||\n !this.sortInstanceNodePosition ||\n this.type !== other.type) {\n return 0;\n }\n return this.sortInstanceNodePosition(this.current, other.current);\n }\n loadFeatures({ children, ...renderedProps }, isStrict, preloadedFeatures, initialLayoutGroupConfig) {\n let ProjectionNodeConstructor;\n let MeasureLayout;\n /**\n * If we're in development mode, check to make sure we're not rendering a motion component\n * as a child of LazyMotion, as this will break the file-size benefits of using it.\n */\n if ( true &&\n preloadedFeatures &&\n isStrict) {\n const strictMessage = \"You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.\";\n renderedProps.ignoreStrict\n ? (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_11__.warning)(false, strictMessage)\n : (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_11__.invariant)(false, strictMessage);\n }\n for (let i = 0; i < numFeatures; i++) {\n const name = featureNames[i];\n const { isEnabled, Feature: FeatureConstructor, ProjectionNode, MeasureLayout: MeasureLayoutComponent, } = _motion_features_definitions_mjs__WEBPACK_IMPORTED_MODULE_0__.featureDefinitions[name];\n if (ProjectionNode)\n ProjectionNodeConstructor = ProjectionNode;\n if (isEnabled(renderedProps)) {\n if (!this.features[name] && FeatureConstructor) {\n this.features[name] = new FeatureConstructor(this);\n }\n if (MeasureLayoutComponent) {\n MeasureLayout = MeasureLayoutComponent;\n }\n }\n }\n if ((this.type === \"html\" || this.type === \"svg\") &&\n !this.projection &&\n ProjectionNodeConstructor) {\n this.projection = new ProjectionNodeConstructor(this.latestValues, this.parent && this.parent.projection);\n const { layoutId, layout, drag, dragConstraints, layoutScroll, layoutRoot, } = renderedProps;\n this.projection.setOptions({\n layoutId,\n layout,\n alwaysMeasureLayout: Boolean(drag) ||\n (dragConstraints && (0,_utils_is_ref_object_mjs__WEBPACK_IMPORTED_MODULE_12__.isRefObject)(dragConstraints)),\n visualElement: this,\n scheduleRender: () => this.scheduleRender(),\n /**\n * TODO: Update options in an effect. This could be tricky as it'll be too late\n * to update by the time layout animations run.\n * We also need to fix this safeToRemove by linking it up to the one returned by usePresence,\n * ensuring it gets called if there's no potential layout animations.\n *\n */\n animationType: typeof layout === \"string\" ? layout : \"both\",\n initialPromotionConfig: initialLayoutGroupConfig,\n layoutScroll,\n layoutRoot,\n });\n }\n return MeasureLayout;\n }\n updateFeatures() {\n for (const key in this.features) {\n const feature = this.features[key];\n if (feature.isMounted) {\n feature.update();\n }\n else {\n feature.mount();\n feature.isMounted = true;\n }\n }\n }\n triggerBuild() {\n this.build(this.renderState, this.latestValues, this.options, this.props);\n }\n /**\n * Measure the current viewport box with or without transforms.\n * Only measures axis-aligned boxes, rotate and skew must be manually\n * removed with a re-render to work.\n */\n measureViewportBox() {\n return this.current\n ? this.measureInstanceViewportBox(this.current, this.props)\n : (0,_projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_13__.createBox)();\n }\n getStaticValue(key) {\n return this.latestValues[key];\n }\n setStaticValue(key, value) {\n this.latestValues[key] = value;\n }\n /**\n * Make a target animatable by Popmotion. For instance, if we're\n * trying to animate width from 100px to 100vw we need to measure 100vw\n * in pixels to determine what we really need to animate to. This is also\n * pluggable to support Framer's custom value types like Color,\n * and CSS variables.\n */\n makeTargetAnimatable(target, canMutate = true) {\n return this.makeTargetAnimatableFromInstance(target, this.props, canMutate);\n }\n /**\n * Update the provided props. Ensure any newly-added motion values are\n * added to our map, old ones removed, and listeners updated.\n */\n update(props, presenceContext) {\n if (props.transformTemplate || this.props.transformTemplate) {\n this.scheduleRender();\n }\n this.prevProps = this.props;\n this.props = props;\n this.prevPresenceContext = this.presenceContext;\n this.presenceContext = presenceContext;\n /**\n * Update prop event handlers ie onAnimationStart, onAnimationComplete\n */\n for (let i = 0; i < propEventHandlers.length; i++) {\n const key = propEventHandlers[i];\n if (this.propEventSubscriptions[key]) {\n this.propEventSubscriptions[key]();\n delete this.propEventSubscriptions[key];\n }\n const listener = props[\"on\" + key];\n if (listener) {\n this.propEventSubscriptions[key] = this.on(key, listener);\n }\n }\n this.prevMotionValues = (0,_utils_motion_values_mjs__WEBPACK_IMPORTED_MODULE_14__.updateMotionValuesFromProps)(this, this.scrapeMotionValuesFromProps(props, this.prevProps), this.prevMotionValues);\n if (this.handleChildMotionValue) {\n this.handleChildMotionValue();\n }\n }\n getProps() {\n return this.props;\n }\n /**\n * Returns the variant definition with a given name.\n */\n getVariant(name) {\n return this.props.variants ? this.props.variants[name] : undefined;\n }\n /**\n * Returns the defined default transition on this component.\n */\n getDefaultTransition() {\n return this.props.transition;\n }\n getTransformPagePoint() {\n return this.props.transformPagePoint;\n }\n getClosestVariantNode() {\n return this.isVariantNode\n ? this\n : this.parent\n ? this.parent.getClosestVariantNode()\n : undefined;\n }\n getVariantContext(startAtParent = false) {\n if (startAtParent) {\n return this.parent ? this.parent.getVariantContext() : undefined;\n }\n if (!this.isControllingVariants) {\n const context = this.parent\n ? this.parent.getVariantContext() || {}\n : {};\n if (this.props.initial !== undefined) {\n context.initial = this.props.initial;\n }\n return context;\n }\n const context = {};\n for (let i = 0; i < numVariantProps; i++) {\n const name = _utils_variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__.variantProps[i];\n const prop = this.props[name];\n if ((0,_utils_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_15__.isVariantLabel)(prop) || prop === false) {\n context[name] = prop;\n }\n }\n return context;\n }\n /**\n * Add a child visual element to our set of children.\n */\n addVariantChild(child) {\n const closestVariantNode = this.getClosestVariantNode();\n if (closestVariantNode) {\n closestVariantNode.variantChildren &&\n closestVariantNode.variantChildren.add(child);\n return () => closestVariantNode.variantChildren.delete(child);\n }\n }\n /**\n * Add a motion value and bind it to this visual element.\n */\n addValue(key, value) {\n // Remove existing value if it exists\n if (value !== this.values.get(key)) {\n this.removeValue(key);\n this.bindToMotionValue(key, value);\n }\n this.values.set(key, value);\n this.latestValues[key] = value.get();\n }\n /**\n * Remove a motion value and unbind any active subscriptions.\n */\n removeValue(key) {\n this.values.delete(key);\n const unsubscribe = this.valueSubscriptions.get(key);\n if (unsubscribe) {\n unsubscribe();\n this.valueSubscriptions.delete(key);\n }\n delete this.latestValues[key];\n this.removeValueFromRenderState(key, this.renderState);\n }\n /**\n * Check whether we have a motion value for this key\n */\n hasValue(key) {\n return this.values.has(key);\n }\n getValue(key, defaultValue) {\n if (this.props.values && this.props.values[key]) {\n return this.props.values[key];\n }\n let value = this.values.get(key);\n if (value === undefined && defaultValue !== undefined) {\n value = (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_16__.motionValue)(defaultValue, { owner: this });\n this.addValue(key, value);\n }\n return value;\n }\n /**\n * If we're trying to animate to a previously unencountered value,\n * we need to check for it in our state and as a last resort read it\n * directly from the instance (which might have performance implications).\n */\n readValue(key) {\n var _a;\n return this.latestValues[key] !== undefined || !this.current\n ? this.latestValues[key]\n : (_a = this.getBaseTargetFromProps(this.props, key)) !== null && _a !== void 0 ? _a : this.readValueFromInstance(this.current, key, this.options);\n }\n /**\n * Set the base target to later animate back to. This is currently\n * only hydrated on creation and when we first read a value.\n */\n setBaseTarget(key, value) {\n this.baseTarget[key] = value;\n }\n /**\n * Find the base target for a value thats been removed from all animation\n * props.\n */\n getBaseTarget(key) {\n var _a;\n const { initial } = this.props;\n const valueFromInitial = typeof initial === \"string\" || typeof initial === \"object\"\n ? (_a = (0,_utils_resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_17__.resolveVariantFromProps)(this.props, initial)) === null || _a === void 0 ? void 0 : _a[key]\n : undefined;\n /**\n * If this value still exists in the current initial variant, read that.\n */\n if (initial && valueFromInitial !== undefined) {\n return valueFromInitial;\n }\n /**\n * Alternatively, if this VisualElement config has defined a getBaseTarget\n * so we can read the value from an alternative source, try that.\n */\n const target = this.getBaseTargetFromProps(this.props, key);\n if (target !== undefined && !(0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_4__.isMotionValue)(target))\n return target;\n /**\n * If the value was initially defined on initial, but it doesn't any more,\n * return undefined. Otherwise return the value as initially read from the DOM.\n */\n return this.initialValues[key] !== undefined &&\n valueFromInitial === undefined\n ? undefined\n : this.baseTarget[key];\n }\n on(eventName, callback) {\n if (!this.events[eventName]) {\n this.events[eventName] = new _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_18__.SubscriptionManager();\n }\n return this.events[eventName].add(callback);\n }\n notify(eventName, ...args) {\n if (this.events[eventName]) {\n this.events[eventName].notify(...args);\n }\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL1Zpc3VhbEVsZW1lbnQubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQXlEO0FBQ0s7QUFDTDtBQUNvQjtBQUNzQjtBQUMzQjtBQUN2QjtBQUN5QjtBQUNQO0FBQ1A7QUFDK0I7QUFDN0I7QUFDVTtBQUNEO0FBQ3JCO0FBQ3NCO0FBQ2Y7QUFDUjtBQUNXOztBQUU1RCxpQ0FBaUMsZ0ZBQWtCO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLGtFQUFZO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0IsbUVBQW1FLGNBQWM7QUFDbkc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DLHVEQUFLO0FBQ3pDLGdCQUFnQiw0QkFBNEI7QUFDNUM7QUFDQSw0QkFBNEI7QUFDNUIsK0NBQStDLGtCQUFrQjtBQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQyx5RkFBcUI7QUFDMUQsNkJBQTZCLGlGQUFhO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDhEQUFXLGlCQUFpQixhQUFhO0FBQzdEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLFVBQVU7QUFDMUI7QUFDQSxvQkFBb0IscUZBQXVCO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFDQUFxQywrRUFBYTtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5Q0FBeUMsaUZBQW1CO0FBQzVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFeUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvVmlzdWFsRWxlbWVudC5tanM/OTkwNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB3YXJuaW5nLCBpbnZhcmlhbnQgfSBmcm9tICcuLi91dGlscy9lcnJvcnMubWpzJztcbmltcG9ydCB7IGNyZWF0ZUJveCB9IGZyb20gJy4uL3Byb2plY3Rpb24vZ2VvbWV0cnkvbW9kZWxzLm1qcyc7XG5pbXBvcnQgeyBpc1JlZk9iamVjdCB9IGZyb20gJy4uL3V0aWxzL2lzLXJlZi1vYmplY3QubWpzJztcbmltcG9ydCB7IGluaXRQcmVmZXJzUmVkdWNlZE1vdGlvbiB9IGZyb20gJy4uL3V0aWxzL3JlZHVjZWQtbW90aW9uL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBoYXNSZWR1Y2VkTW90aW9uTGlzdGVuZXIsIHByZWZlcnNSZWR1Y2VkTW90aW9uIH0gZnJvbSAnLi4vdXRpbHMvcmVkdWNlZC1tb3Rpb24vc3RhdGUubWpzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk1hbmFnZXIgfSBmcm9tICcuLi91dGlscy9zdWJzY3JpcHRpb24tbWFuYWdlci5tanMnO1xuaW1wb3J0IHsgbW90aW9uVmFsdWUgfSBmcm9tICcuLi92YWx1ZS9pbmRleC5tanMnO1xuaW1wb3J0IHsgaXNXaWxsQ2hhbmdlTW90aW9uVmFsdWUgfSBmcm9tICcuLi92YWx1ZS91c2Utd2lsbC1jaGFuZ2UvaXMubWpzJztcbmltcG9ydCB7IGlzTW90aW9uVmFsdWUgfSBmcm9tICcuLi92YWx1ZS91dGlscy9pcy1tb3Rpb24tdmFsdWUubWpzJztcbmltcG9ydCB7IHRyYW5zZm9ybVByb3BzIH0gZnJvbSAnLi9odG1sL3V0aWxzL3RyYW5zZm9ybS5tanMnO1xuaW1wb3J0IHsgaXNDb250cm9sbGluZ1ZhcmlhbnRzLCBpc1ZhcmlhbnROb2RlIH0gZnJvbSAnLi91dGlscy9pcy1jb250cm9sbGluZy12YXJpYW50cy5tanMnO1xuaW1wb3J0IHsgaXNWYXJpYW50TGFiZWwgfSBmcm9tICcuL3V0aWxzL2lzLXZhcmlhbnQtbGFiZWwubWpzJztcbmltcG9ydCB7IHVwZGF0ZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyB9IGZyb20gJy4vdXRpbHMvbW90aW9uLXZhbHVlcy5tanMnO1xuaW1wb3J0IHsgcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMgfSBmcm9tICcuL3V0aWxzL3Jlc29sdmUtdmFyaWFudHMubWpzJztcbmltcG9ydCB7IHdhcm5PbmNlIH0gZnJvbSAnLi4vdXRpbHMvd2Fybi1vbmNlLm1qcyc7XG5pbXBvcnQgeyBmZWF0dXJlRGVmaW5pdGlvbnMgfSBmcm9tICcuLi9tb3Rpb24vZmVhdHVyZXMvZGVmaW5pdGlvbnMubWpzJztcbmltcG9ydCB7IHZhcmlhbnRQcm9wcyB9IGZyb20gJy4vdXRpbHMvdmFyaWFudC1wcm9wcy5tanMnO1xuaW1wb3J0IHsgdmlzdWFsRWxlbWVudFN0b3JlIH0gZnJvbSAnLi9zdG9yZS5tanMnO1xuaW1wb3J0IHsgZnJhbWUsIGNhbmNlbEZyYW1lIH0gZnJvbSAnLi4vZnJhbWVsb29wL2ZyYW1lLm1qcyc7XG5cbmNvbnN0IGZlYXR1cmVOYW1lcyA9IE9iamVjdC5rZXlzKGZlYXR1cmVEZWZpbml0aW9ucyk7XG5jb25zdCBudW1GZWF0dXJlcyA9IGZlYXR1cmVOYW1lcy5sZW5ndGg7XG5jb25zdCBwcm9wRXZlbnRIYW5kbGVycyA9IFtcbiAgICBcIkFuaW1hdGlvblN0YXJ0XCIsXG4gICAgXCJBbmltYXRpb25Db21wbGV0ZVwiLFxuICAgIFwiVXBkYXRlXCIsXG4gICAgXCJCZWZvcmVMYXlvdXRNZWFzdXJlXCIsXG4gICAgXCJMYXlvdXRNZWFzdXJlXCIsXG4gICAgXCJMYXlvdXRBbmltYXRpb25TdGFydFwiLFxuICAgIFwiTGF5b3V0QW5pbWF0aW9uQ29tcGxldGVcIixcbl07XG5jb25zdCBudW1WYXJpYW50UHJvcHMgPSB2YXJpYW50UHJvcHMubGVuZ3RoO1xuLyoqXG4gKiBBIFZpc3VhbEVsZW1lbnQgaXMgYW4gaW1wZXJhdGl2ZSBhYnN0cmFjdGlvbiBhcm91bmQgVUkgZWxlbWVudHMgc3VjaCBhc1xuICogSFRNTEVsZW1lbnQsIFNWR0VsZW1lbnQsIFRocmVlLk9iamVjdDNEIGV0Yy5cbiAqL1xuY2xhc3MgVmlzdWFsRWxlbWVudCB7XG4gICAgY29uc3RydWN0b3IoeyBwYXJlbnQsIHByb3BzLCBwcmVzZW5jZUNvbnRleHQsIHJlZHVjZWRNb3Rpb25Db25maWcsIHZpc3VhbFN0YXRlLCB9LCBvcHRpb25zID0ge30pIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEEgcmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50IHVuZGVybHlpbmcgSW5zdGFuY2UsIGUuZy4gYSBIVE1MRWxlbWVudFxuICAgICAgICAgKiBvciBUaHJlZS5NZXNoIGV0Yy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMuY3VycmVudCA9IG51bGw7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBIHNldCBjb250YWluaW5nIHJlZmVyZW5jZXMgdG8gdGhpcyBWaXN1YWxFbGVtZW50J3MgY2hpbGRyZW4uXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gbmV3IFNldCgpO1xuICAgICAgICAvKipcbiAgICAgICAgICogRGV0ZXJtaW5lIHdoYXQgcm9sZSB0aGlzIHZpc3VhbCBlbGVtZW50IHNob3VsZCB0YWtlIGluIHRoZSB2YXJpYW50IHRyZWUuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmlzVmFyaWFudE5vZGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc0NvbnRyb2xsaW5nVmFyaWFudHMgPSBmYWxzZTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIERlY2lkZXMgd2hldGhlciB0aGlzIFZpc3VhbEVsZW1lbnQgc2hvdWxkIGFuaW1hdGUgaW4gcmVkdWNlZCBtb3Rpb25cbiAgICAgICAgICogbW9kZS5cbiAgICAgICAgICpcbiAgICAgICAgICogVE9ETzogVGhpcyBpcyBjdXJyZW50bHkgc2V0IG9uIGV2ZXJ5IGluZGl2aWR1YWwgVmlzdWFsRWxlbWVudCBidXQgZmVlbHNcbiAgICAgICAgICogbGlrZSBpdCBjb3VsZCBiZSBzZXQgZ2xvYmFsbHkuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnNob3VsZFJlZHVjZU1vdGlvbiA9IG51bGw7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBIG1hcCBvZiBhbGwgbW90aW9uIHZhbHVlcyBhdHRhY2hlZCB0byB0aGlzIHZpc3VhbCBlbGVtZW50LiBNb3Rpb25cbiAgICAgICAgICogdmFsdWVzIGFyZSBzb3VyY2Ugb2YgdHJ1dGggZm9yIGFueSBnaXZlbiBhbmltYXRlZCB2YWx1ZS4gQSBtb3Rpb25cbiAgICAgICAgICogdmFsdWUgbWlnaHQgYmUgcHJvdmlkZWQgZXh0ZXJuYWxseSBieSB0aGUgY29tcG9uZW50IHZpYSBwcm9wcy5cbiAgICAgICAgICovXG4gICAgICAgIHRoaXMudmFsdWVzID0gbmV3IE1hcCgpO1xuICAgICAgICAvKipcbiAgICAgICAgICogQ2xlYW51cCBmdW5jdGlvbnMgZm9yIGFjdGl2ZSBmZWF0dXJlcyAoaG92ZXIvdGFwL2V4aXQgZXRjKVxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5mZWF0dXJlcyA9IHt9O1xuICAgICAgICAvKipcbiAgICAgICAgICogQSBtYXAgb2YgZXZlcnkgc3Vic2NyaXB0aW9uIHRoYXQgYmluZHMgdGhlIHByb3ZpZGVkIG9yIGdlbmVyYXRlZFxuICAgICAgICAgKiBtb3Rpb24gdmFsdWVzIG9uQ2hhbmdlIGxpc3RlbmVycyB0byB0aGlzIHZpc3VhbCBlbGVtZW50LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy52YWx1ZVN1YnNjcmlwdGlvbnMgPSBuZXcgTWFwKCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBIHJlZmVyZW5jZSB0byB0aGUgcHJldmlvdXNseS1wcm92aWRlZCBtb3Rpb24gdmFsdWVzIGFzIHJldHVybmVkXG4gICAgICAgICAqIGZyb20gc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzLiBXZSB1c2UgdGhlIGtleXMgaW4gaGVyZSB0byBkZXRlcm1pbmVcbiAgICAgICAgICogaWYgYW55IG1vdGlvbiB2YWx1ZXMgbmVlZCB0byBiZSByZW1vdmVkIGFmdGVyIHByb3BzIGFyZSB1cGRhdGVkLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5wcmV2TW90aW9uVmFsdWVzID0ge307XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBbiBvYmplY3QgY29udGFpbmluZyBhIFN1YnNjcmlwdGlvbk1hbmFnZXIgZm9yIGVhY2ggYWN0aXZlIGV2ZW50LlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5ldmVudHMgPSB7fTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEFuIG9iamVjdCBjb250YWluaW5nIGFuIHVuc3Vic2NyaWJlIGZ1bmN0aW9uIGZvciBlYWNoIHByb3AgZXZlbnQgc3Vic2NyaXB0aW9uLlxuICAgICAgICAgKiBGb3IgZXhhbXBsZSwgZXZlcnkgXCJVcGRhdGVcIiBldmVudCBjYW4gaGF2ZSBtdWx0aXBsZSBzdWJzY3JpYmVycyB2aWFcbiAgICAgICAgICogVmlzdWFsRWxlbWVudC5vbigpLCBidXQgb25seSBvbmUgb2YgdGhvc2UgY2FuIGJlIGRlZmluZWQgdmlhIHRoZSBvblVwZGF0ZSBwcm9wLlxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5wcm9wRXZlbnRTdWJzY3JpcHRpb25zID0ge307XG4gICAgICAgIHRoaXMubm90aWZ5VXBkYXRlID0gKCkgPT4gdGhpcy5ub3RpZnkoXCJVcGRhdGVcIiwgdGhpcy5sYXRlc3RWYWx1ZXMpO1xuICAgICAgICB0aGlzLnJlbmRlciA9ICgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHRoaXMudHJpZ2dlckJ1aWxkKCk7XG4gICAgICAgICAgICB0aGlzLnJlbmRlckluc3RhbmNlKHRoaXMuY3VycmVudCwgdGhpcy5yZW5kZXJTdGF0ZSwgdGhpcy5wcm9wcy5zdHlsZSwgdGhpcy5wcm9qZWN0aW9uKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5zY2hlZHVsZVJlbmRlciA9ICgpID0+IGZyYW1lLnJlbmRlcih0aGlzLnJlbmRlciwgZmFsc2UsIHRydWUpO1xuICAgICAgICBjb25zdCB7IGxhdGVzdFZhbHVlcywgcmVuZGVyU3RhdGUgfSA9IHZpc3VhbFN0YXRlO1xuICAgICAgICB0aGlzLmxhdGVzdFZhbHVlcyA9IGxhdGVzdFZhbHVlcztcbiAgICAgICAgdGhpcy5iYXNlVGFyZ2V0ID0geyAuLi5sYXRlc3RWYWx1ZXMgfTtcbiAgICAgICAgdGhpcy5pbml0aWFsVmFsdWVzID0gcHJvcHMuaW5pdGlhbCA/IHsgLi4ubGF0ZXN0VmFsdWVzIH0gOiB7fTtcbiAgICAgICAgdGhpcy5yZW5kZXJTdGF0ZSA9IHJlbmRlclN0YXRlO1xuICAgICAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICAgICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgICAgICB0aGlzLnByZXNlbmNlQ29udGV4dCA9IHByZXNlbmNlQ29udGV4dDtcbiAgICAgICAgdGhpcy5kZXB0aCA9IHBhcmVudCA/IHBhcmVudC5kZXB0aCArIDEgOiAwO1xuICAgICAgICB0aGlzLnJlZHVjZWRNb3Rpb25Db25maWcgPSByZWR1Y2VkTW90aW9uQ29uZmlnO1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICAgICAgICB0aGlzLmlzQ29udHJvbGxpbmdWYXJpYW50cyA9IGlzQ29udHJvbGxpbmdWYXJpYW50cyhwcm9wcyk7XG4gICAgICAgIHRoaXMuaXNWYXJpYW50Tm9kZSA9IGlzVmFyaWFudE5vZGUocHJvcHMpO1xuICAgICAgICBpZiAodGhpcy5pc1ZhcmlhbnROb2RlKSB7XG4gICAgICAgICAgICB0aGlzLnZhcmlhbnRDaGlsZHJlbiA9IG5ldyBTZXQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1hbnVhbGx5QW5pbWF0ZU9uTW91bnQgPSBCb29sZWFuKHBhcmVudCAmJiBwYXJlbnQuY3VycmVudCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBbnkgbW90aW9uIHZhbHVlcyB0aGF0IGFyZSBwcm92aWRlZCB0byB0aGUgZWxlbWVudCB3aGVuIGNyZWF0ZWRcbiAgICAgICAgICogYXJlbid0IHlldCBib3VuZCB0byB0aGUgZWxlbWVudCwgYXMgdGhpcyB3b3VsZCB0ZWNobmljYWxseSBiZSBpbXB1cmUuXG4gICAgICAgICAqIEhvd2V2ZXIsIHdlIGl0ZXJhdGUgdGhyb3VnaCB0aGUgbW90aW9uIHZhbHVlcyBhbmQgc2V0IHRoZW0gdG8gdGhlXG4gICAgICAgICAqIGluaXRpYWwgdmFsdWVzIGZvciB0aGlzIGNvbXBvbmVudC5cbiAgICAgICAgICpcbiAgICAgICAgICogVE9ETzogVGhpcyBpcyBpbXB1cmUgYW5kIHdlIHNob3VsZCBsb29rIGF0IGNoYW5naW5nIHRoaXMgdG8gcnVuIG9uIG1vdW50LlxuICAgICAgICAgKiBEb2luZyBzbyB3aWxsIGJyZWFrIHNvbWUgdGVzdHMgYnV0IHRoaXMgaXNuJ3QgbmVjY2Vzc2FyaWx5IGEgYnJlYWtpbmcgY2hhbmdlLFxuICAgICAgICAgKiBtb3JlIGEgcmVmbGVjdGlvbiBvZiB0aGUgdGVzdC5cbiAgICAgICAgICovXG4gICAgICAgIGNvbnN0IHsgd2lsbENoYW5nZSwgLi4uaW5pdGlhbE1vdGlvblZhbHVlcyB9ID0gdGhpcy5zY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMocHJvcHMsIHt9KTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gaW5pdGlhbE1vdGlvblZhbHVlcykge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBpbml0aWFsTW90aW9uVmFsdWVzW2tleV07XG4gICAgICAgICAgICBpZiAobGF0ZXN0VmFsdWVzW2tleV0gIT09IHVuZGVmaW5lZCAmJiBpc01vdGlvblZhbHVlKHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHZhbHVlLnNldChsYXRlc3RWYWx1ZXNba2V5XSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIGlmIChpc1dpbGxDaGFuZ2VNb3Rpb25WYWx1ZSh3aWxsQ2hhbmdlKSkge1xuICAgICAgICAgICAgICAgICAgICB3aWxsQ2hhbmdlLmFkZChrZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvKipcbiAgICAgKiBUaGlzIG1ldGhvZCB0YWtlcyBSZWFjdCBwcm9wcyBhbmQgcmV0dXJucyBmb3VuZCBNb3Rpb25WYWx1ZXMuIEZvciBleGFtcGxlLCBIVE1MXG4gICAgICogTW90aW9uVmFsdWVzIHdpbGwgYmUgZm91bmQgd2l0aGluIHRoZSBzdHlsZSBwcm9wLCB3aGVyZWFzIGZvciBUaHJlZS5qcyB3aXRoaW4gYXR0cmlidXRlIGFycmF5cy5cbiAgICAgKlxuICAgICAqIFRoaXMgaXNuJ3QgYW4gYWJzdHJhY3QgbWV0aG9kIGFzIGl0IG5lZWRzIGNhbGxpbmcgaW4gdGhlIGNvbnN0cnVjdG9yLCBidXQgaXQgaXNcbiAgICAgKiBpbnRlbmRlZCB0byBiZSBvbmUuXG4gICAgICovXG4gICAgc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzKF9wcm9wcywgX3ByZXZQcm9wcykge1xuICAgICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIG1vdW50KGluc3RhbmNlKSB7XG4gICAgICAgIHRoaXMuY3VycmVudCA9IGluc3RhbmNlO1xuICAgICAgICB2aXN1YWxFbGVtZW50U3RvcmUuc2V0KGluc3RhbmNlLCB0aGlzKTtcbiAgICAgICAgaWYgKHRoaXMucHJvamVjdGlvbiAmJiAhdGhpcy5wcm9qZWN0aW9uLmluc3RhbmNlKSB7XG4gICAgICAgICAgICB0aGlzLnByb2plY3Rpb24ubW91bnQoaW5zdGFuY2UpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnBhcmVudCAmJiB0aGlzLmlzVmFyaWFudE5vZGUgJiYgIXRoaXMuaXNDb250cm9sbGluZ1ZhcmlhbnRzKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZUZyb21WYXJpYW50VHJlZSA9IHRoaXMucGFyZW50LmFkZFZhcmlhbnRDaGlsZCh0aGlzKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnZhbHVlcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB0aGlzLmJpbmRUb01vdGlvblZhbHVlKGtleSwgdmFsdWUpKTtcbiAgICAgICAgaWYgKCFoYXNSZWR1Y2VkTW90aW9uTGlzdGVuZXIuY3VycmVudCkge1xuICAgICAgICAgICAgaW5pdFByZWZlcnNSZWR1Y2VkTW90aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zaG91bGRSZWR1Y2VNb3Rpb24gPVxuICAgICAgICAgICAgdGhpcy5yZWR1Y2VkTW90aW9uQ29uZmlnID09PSBcIm5ldmVyXCJcbiAgICAgICAgICAgICAgICA/IGZhbHNlXG4gICAgICAgICAgICAgICAgOiB0aGlzLnJlZHVjZWRNb3Rpb25Db25maWcgPT09IFwiYWx3YXlzXCJcbiAgICAgICAgICAgICAgICAgICAgPyB0cnVlXG4gICAgICAgICAgICAgICAgICAgIDogcHJlZmVyc1JlZHVjZWRNb3Rpb24uY3VycmVudDtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICAgICAgICAgICAgd2Fybk9uY2UodGhpcy5zaG91bGRSZWR1Y2VNb3Rpb24gIT09IHRydWUsIFwiWW91IGhhdmUgUmVkdWNlZCBNb3Rpb24gZW5hYmxlZCBvbiB5b3VyIGRldmljZS4gQW5pbWF0aW9ucyBtYXkgbm90IGFwcGVhciBhcyBleHBlY3RlZC5cIik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucGFyZW50KVxuICAgICAgICAgICAgdGhpcy5wYXJlbnQuY2hpbGRyZW4uYWRkKHRoaXMpO1xuICAgICAgICB0aGlzLnVwZGF0ZSh0aGlzLnByb3BzLCB0aGlzLnByZXNlbmNlQ29udGV4dCk7XG4gICAgfVxuICAgIHVubW91bnQoKSB7XG4gICAgICAgIHZpc3VhbEVsZW1lbnRTdG9yZS5kZWxldGUodGhpcy5jdXJyZW50KTtcbiAgICAgICAgdGhpcy5wcm9qZWN0aW9uICYmIHRoaXMucHJvamVjdGlvbi51bm1vdW50KCk7XG4gICAgICAgIGNhbmNlbEZyYW1lKHRoaXMubm90aWZ5VXBkYXRlKTtcbiAgICAgICAgY2FuY2VsRnJhbWUodGhpcy5yZW5kZXIpO1xuICAgICAgICB0aGlzLnZhbHVlU3Vic2NyaXB0aW9ucy5mb3JFYWNoKChyZW1vdmUpID0+IHJlbW92ZSgpKTtcbiAgICAgICAgdGhpcy5yZW1vdmVGcm9tVmFyaWFudFRyZWUgJiYgdGhpcy5yZW1vdmVGcm9tVmFyaWFudFRyZWUoKTtcbiAgICAgICAgdGhpcy5wYXJlbnQgJiYgdGhpcy5wYXJlbnQuY2hpbGRyZW4uZGVsZXRlKHRoaXMpO1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLmV2ZW50cykge1xuICAgICAgICAgICAgdGhpcy5ldmVudHNba2V5XS5jbGVhcigpO1xuICAgICAgICB9XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuZmVhdHVyZXMpIHtcbiAgICAgICAgICAgIHRoaXMuZmVhdHVyZXNba2V5XS51bm1vdW50KCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50ID0gbnVsbDtcbiAgICB9XG4gICAgYmluZFRvTW90aW9uVmFsdWUoa2V5LCB2YWx1ZSkge1xuICAgICAgICBjb25zdCB2YWx1ZUlzVHJhbnNmb3JtID0gdHJhbnNmb3JtUHJvcHMuaGFzKGtleSk7XG4gICAgICAgIGNvbnN0IHJlbW92ZU9uQ2hhbmdlID0gdmFsdWUub24oXCJjaGFuZ2VcIiwgKGxhdGVzdFZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxhdGVzdFZhbHVlc1trZXldID0gbGF0ZXN0VmFsdWU7XG4gICAgICAgICAgICB0aGlzLnByb3BzLm9uVXBkYXRlICYmXG4gICAgICAgICAgICAgICAgZnJhbWUudXBkYXRlKHRoaXMubm90aWZ5VXBkYXRlLCBmYWxzZSwgdHJ1ZSk7XG4gICAgICAgICAgICBpZiAodmFsdWVJc1RyYW5zZm9ybSAmJiB0aGlzLnByb2plY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb2plY3Rpb24uaXNUcmFuc2Zvcm1EaXJ0eSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCByZW1vdmVPblJlbmRlclJlcXVlc3QgPSB2YWx1ZS5vbihcInJlbmRlclJlcXVlc3RcIiwgdGhpcy5zY2hlZHVsZVJlbmRlcik7XG4gICAgICAgIHRoaXMudmFsdWVTdWJzY3JpcHRpb25zLnNldChrZXksICgpID0+IHtcbiAgICAgICAgICAgIHJlbW92ZU9uQ2hhbmdlKCk7XG4gICAgICAgICAgICByZW1vdmVPblJlbmRlclJlcXVlc3QoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHNvcnROb2RlUG9zaXRpb24ob3RoZXIpIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZXNlIG5vZGVzIGFyZW4ndCBldmVuIG9mIHRoZSBzYW1lIHR5cGUgd2UgY2FuJ3QgY29tcGFyZSB0aGVpciBkZXB0aC5cbiAgICAgICAgICovXG4gICAgICAgIGlmICghdGhpcy5jdXJyZW50IHx8XG4gICAgICAgICAgICAhdGhpcy5zb3J0SW5zdGFuY2VOb2RlUG9zaXRpb24gfHxcbiAgICAgICAgICAgIHRoaXMudHlwZSAhPT0gb3RoZXIudHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuc29ydEluc3RhbmNlTm9kZVBvc2l0aW9uKHRoaXMuY3VycmVudCwgb3RoZXIuY3VycmVudCk7XG4gICAgfVxuICAgIGxvYWRGZWF0dXJlcyh7IGNoaWxkcmVuLCAuLi5yZW5kZXJlZFByb3BzIH0sIGlzU3RyaWN0LCBwcmVsb2FkZWRGZWF0dXJlcywgaW5pdGlhbExheW91dEdyb3VwQ29uZmlnKSB7XG4gICAgICAgIGxldCBQcm9qZWN0aW9uTm9kZUNvbnN0cnVjdG9yO1xuICAgICAgICBsZXQgTWVhc3VyZUxheW91dDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHdlJ3JlIGluIGRldmVsb3BtZW50IG1vZGUsIGNoZWNrIHRvIG1ha2Ugc3VyZSB3ZSdyZSBub3QgcmVuZGVyaW5nIGEgbW90aW9uIGNvbXBvbmVudFxuICAgICAgICAgKiBhcyBhIGNoaWxkIG9mIExhenlNb3Rpb24sIGFzIHRoaXMgd2lsbCBicmVhayB0aGUgZmlsZS1zaXplIGJlbmVmaXRzIG9mIHVzaW5nIGl0LlxuICAgICAgICAgKi9cbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIiAmJlxuICAgICAgICAgICAgcHJlbG9hZGVkRmVhdHVyZXMgJiZcbiAgICAgICAgICAgIGlzU3RyaWN0KSB7XG4gICAgICAgICAgICBjb25zdCBzdHJpY3RNZXNzYWdlID0gXCJZb3UgaGF2ZSByZW5kZXJlZCBhIGBtb3Rpb25gIGNvbXBvbmVudCB3aXRoaW4gYSBgTGF6eU1vdGlvbmAgY29tcG9uZW50LiBUaGlzIHdpbGwgYnJlYWsgdHJlZSBzaGFraW5nLiBJbXBvcnQgYW5kIHJlbmRlciBhIGBtYCBjb21wb25lbnQgaW5zdGVhZC5cIjtcbiAgICAgICAgICAgIHJlbmRlcmVkUHJvcHMuaWdub3JlU3RyaWN0XG4gICAgICAgICAgICAgICAgPyB3YXJuaW5nKGZhbHNlLCBzdHJpY3RNZXNzYWdlKVxuICAgICAgICAgICAgICAgIDogaW52YXJpYW50KGZhbHNlLCBzdHJpY3RNZXNzYWdlKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bUZlYXR1cmVzOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBmZWF0dXJlTmFtZXNbaV07XG4gICAgICAgICAgICBjb25zdCB7IGlzRW5hYmxlZCwgRmVhdHVyZTogRmVhdHVyZUNvbnN0cnVjdG9yLCBQcm9qZWN0aW9uTm9kZSwgTWVhc3VyZUxheW91dDogTWVhc3VyZUxheW91dENvbXBvbmVudCwgfSA9IGZlYXR1cmVEZWZpbml0aW9uc1tuYW1lXTtcbiAgICAgICAgICAgIGlmIChQcm9qZWN0aW9uTm9kZSlcbiAgICAgICAgICAgICAgICBQcm9qZWN0aW9uTm9kZUNvbnN0cnVjdG9yID0gUHJvamVjdGlvbk5vZGU7XG4gICAgICAgICAgICBpZiAoaXNFbmFibGVkKHJlbmRlcmVkUHJvcHMpKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmZlYXR1cmVzW25hbWVdICYmIEZlYXR1cmVDb25zdHJ1Y3Rvcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZlYXR1cmVzW25hbWVdID0gbmV3IEZlYXR1cmVDb25zdHJ1Y3Rvcih0aGlzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKE1lYXN1cmVMYXlvdXRDb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgTWVhc3VyZUxheW91dCA9IE1lYXN1cmVMYXlvdXRDb21wb25lbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICgodGhpcy50eXBlID09PSBcImh0bWxcIiB8fCB0aGlzLnR5cGUgPT09IFwic3ZnXCIpICYmXG4gICAgICAgICAgICAhdGhpcy5wcm9qZWN0aW9uICYmXG4gICAgICAgICAgICBQcm9qZWN0aW9uTm9kZUNvbnN0cnVjdG9yKSB7XG4gICAgICAgICAgICB0aGlzLnByb2plY3Rpb24gPSBuZXcgUHJvamVjdGlvbk5vZGVDb25zdHJ1Y3Rvcih0aGlzLmxhdGVzdFZhbHVlcywgdGhpcy5wYXJlbnQgJiYgdGhpcy5wYXJlbnQucHJvamVjdGlvbik7XG4gICAgICAgICAgICBjb25zdCB7IGxheW91dElkLCBsYXlvdXQsIGRyYWcsIGRyYWdDb25zdHJhaW50cywgbGF5b3V0U2Nyb2xsLCBsYXlvdXRSb290LCB9ID0gcmVuZGVyZWRQcm9wcztcbiAgICAgICAgICAgIHRoaXMucHJvamVjdGlvbi5zZXRPcHRpb25zKHtcbiAgICAgICAgICAgICAgICBsYXlvdXRJZCxcbiAgICAgICAgICAgICAgICBsYXlvdXQsXG4gICAgICAgICAgICAgICAgYWx3YXlzTWVhc3VyZUxheW91dDogQm9vbGVhbihkcmFnKSB8fFxuICAgICAgICAgICAgICAgICAgICAoZHJhZ0NvbnN0cmFpbnRzICYmIGlzUmVmT2JqZWN0KGRyYWdDb25zdHJhaW50cykpLFxuICAgICAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQ6IHRoaXMsXG4gICAgICAgICAgICAgICAgc2NoZWR1bGVSZW5kZXI6ICgpID0+IHRoaXMuc2NoZWR1bGVSZW5kZXIoKSxcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBUT0RPOiBVcGRhdGUgb3B0aW9ucyBpbiBhbiBlZmZlY3QuIFRoaXMgY291bGQgYmUgdHJpY2t5IGFzIGl0J2xsIGJlIHRvbyBsYXRlXG4gICAgICAgICAgICAgICAgICogdG8gdXBkYXRlIGJ5IHRoZSB0aW1lIGxheW91dCBhbmltYXRpb25zIHJ1bi5cbiAgICAgICAgICAgICAgICAgKiBXZSBhbHNvIG5lZWQgdG8gZml4IHRoaXMgc2FmZVRvUmVtb3ZlIGJ5IGxpbmtpbmcgaXQgdXAgdG8gdGhlIG9uZSByZXR1cm5lZCBieSB1c2VQcmVzZW5jZSxcbiAgICAgICAgICAgICAgICAgKiBlbnN1cmluZyBpdCBnZXRzIGNhbGxlZCBpZiB0aGVyZSdzIG5vIHBvdGVudGlhbCBsYXlvdXQgYW5pbWF0aW9ucy5cbiAgICAgICAgICAgICAgICAgKlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvblR5cGU6IHR5cGVvZiBsYXlvdXQgPT09IFwic3RyaW5nXCIgPyBsYXlvdXQgOiBcImJvdGhcIixcbiAgICAgICAgICAgICAgICBpbml0aWFsUHJvbW90aW9uQ29uZmlnOiBpbml0aWFsTGF5b3V0R3JvdXBDb25maWcsXG4gICAgICAgICAgICAgICAgbGF5b3V0U2Nyb2xsLFxuICAgICAgICAgICAgICAgIGxheW91dFJvb3QsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gTWVhc3VyZUxheW91dDtcbiAgICB9XG4gICAgdXBkYXRlRmVhdHVyZXMoKSB7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuZmVhdHVyZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGZlYXR1cmUgPSB0aGlzLmZlYXR1cmVzW2tleV07XG4gICAgICAgICAgICBpZiAoZmVhdHVyZS5pc01vdW50ZWQpIHtcbiAgICAgICAgICAgICAgICBmZWF0dXJlLnVwZGF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZmVhdHVyZS5tb3VudCgpO1xuICAgICAgICAgICAgICAgIGZlYXR1cmUuaXNNb3VudGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB0cmlnZ2VyQnVpbGQoKSB7XG4gICAgICAgIHRoaXMuYnVpbGQodGhpcy5yZW5kZXJTdGF0ZSwgdGhpcy5sYXRlc3RWYWx1ZXMsIHRoaXMub3B0aW9ucywgdGhpcy5wcm9wcyk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIE1lYXN1cmUgdGhlIGN1cnJlbnQgdmlld3BvcnQgYm94IHdpdGggb3Igd2l0aG91dCB0cmFuc2Zvcm1zLlxuICAgICAqIE9ubHkgbWVhc3VyZXMgYXhpcy1hbGlnbmVkIGJveGVzLCByb3RhdGUgYW5kIHNrZXcgbXVzdCBiZSBtYW51YWxseVxuICAgICAqIHJlbW92ZWQgd2l0aCBhIHJlLXJlbmRlciB0byB3b3JrLlxuICAgICAqL1xuICAgIG1lYXN1cmVWaWV3cG9ydEJveCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFxuICAgICAgICAgICAgPyB0aGlzLm1lYXN1cmVJbnN0YW5jZVZpZXdwb3J0Qm94KHRoaXMuY3VycmVudCwgdGhpcy5wcm9wcylcbiAgICAgICAgICAgIDogY3JlYXRlQm94KCk7XG4gICAgfVxuICAgIGdldFN0YXRpY1ZhbHVlKGtleSkge1xuICAgICAgICByZXR1cm4gdGhpcy5sYXRlc3RWYWx1ZXNba2V5XTtcbiAgICB9XG4gICAgc2V0U3RhdGljVmFsdWUoa2V5LCB2YWx1ZSkge1xuICAgICAgICB0aGlzLmxhdGVzdFZhbHVlc1trZXldID0gdmFsdWU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIE1ha2UgYSB0YXJnZXQgYW5pbWF0YWJsZSBieSBQb3Btb3Rpb24uIEZvciBpbnN0YW5jZSwgaWYgd2UncmVcbiAgICAgKiB0cnlpbmcgdG8gYW5pbWF0ZSB3aWR0aCBmcm9tIDEwMHB4IHRvIDEwMHZ3IHdlIG5lZWQgdG8gbWVhc3VyZSAxMDB2d1xuICAgICAqIGluIHBpeGVscyB0byBkZXRlcm1pbmUgd2hhdCB3ZSByZWFsbHkgbmVlZCB0byBhbmltYXRlIHRvLiBUaGlzIGlzIGFsc29cbiAgICAgKiBwbHVnZ2FibGUgdG8gc3VwcG9ydCBGcmFtZXIncyBjdXN0b20gdmFsdWUgdHlwZXMgbGlrZSBDb2xvcixcbiAgICAgKiBhbmQgQ1NTIHZhcmlhYmxlcy5cbiAgICAgKi9cbiAgICBtYWtlVGFyZ2V0QW5pbWF0YWJsZSh0YXJnZXQsIGNhbk11dGF0ZSA9IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFrZVRhcmdldEFuaW1hdGFibGVGcm9tSW5zdGFuY2UodGFyZ2V0LCB0aGlzLnByb3BzLCBjYW5NdXRhdGUpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIHByb3ZpZGVkIHByb3BzLiBFbnN1cmUgYW55IG5ld2x5LWFkZGVkIG1vdGlvbiB2YWx1ZXMgYXJlXG4gICAgICogYWRkZWQgdG8gb3VyIG1hcCwgb2xkIG9uZXMgcmVtb3ZlZCwgYW5kIGxpc3RlbmVycyB1cGRhdGVkLlxuICAgICAqL1xuICAgIHVwZGF0ZShwcm9wcywgcHJlc2VuY2VDb250ZXh0KSB7XG4gICAgICAgIGlmIChwcm9wcy50cmFuc2Zvcm1UZW1wbGF0ZSB8fCB0aGlzLnByb3BzLnRyYW5zZm9ybVRlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLnNjaGVkdWxlUmVuZGVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmV2UHJvcHMgPSB0aGlzLnByb3BzO1xuICAgICAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgICAgIHRoaXMucHJldlByZXNlbmNlQ29udGV4dCA9IHRoaXMucHJlc2VuY2VDb250ZXh0O1xuICAgICAgICB0aGlzLnByZXNlbmNlQ29udGV4dCA9IHByZXNlbmNlQ29udGV4dDtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFVwZGF0ZSBwcm9wIGV2ZW50IGhhbmRsZXJzIGllIG9uQW5pbWF0aW9uU3RhcnQsIG9uQW5pbWF0aW9uQ29tcGxldGVcbiAgICAgICAgICovXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJvcEV2ZW50SGFuZGxlcnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IHByb3BFdmVudEhhbmRsZXJzW2ldO1xuICAgICAgICAgICAgaWYgKHRoaXMucHJvcEV2ZW50U3Vic2NyaXB0aW9uc1trZXldKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wcm9wRXZlbnRTdWJzY3JpcHRpb25zW2tleV0oKTtcbiAgICAgICAgICAgICAgICBkZWxldGUgdGhpcy5wcm9wRXZlbnRTdWJzY3JpcHRpb25zW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBsaXN0ZW5lciA9IHByb3BzW1wib25cIiArIGtleV07XG4gICAgICAgICAgICBpZiAobGlzdGVuZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByb3BFdmVudFN1YnNjcmlwdGlvbnNba2V5XSA9IHRoaXMub24oa2V5LCBsaXN0ZW5lcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmV2TW90aW9uVmFsdWVzID0gdXBkYXRlTW90aW9uVmFsdWVzRnJvbVByb3BzKHRoaXMsIHRoaXMuc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzKHByb3BzLCB0aGlzLnByZXZQcm9wcyksIHRoaXMucHJldk1vdGlvblZhbHVlcyk7XG4gICAgICAgIGlmICh0aGlzLmhhbmRsZUNoaWxkTW90aW9uVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQ2hpbGRNb3Rpb25WYWx1ZSgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldFByb3BzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcztcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgdmFyaWFudCBkZWZpbml0aW9uIHdpdGggYSBnaXZlbiBuYW1lLlxuICAgICAqL1xuICAgIGdldFZhcmlhbnQobmFtZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcy52YXJpYW50cyA/IHRoaXMucHJvcHMudmFyaWFudHNbbmFtZV0gOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGRlZmluZWQgZGVmYXVsdCB0cmFuc2l0aW9uIG9uIHRoaXMgY29tcG9uZW50LlxuICAgICAqL1xuICAgIGdldERlZmF1bHRUcmFuc2l0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcy50cmFuc2l0aW9uO1xuICAgIH1cbiAgICBnZXRUcmFuc2Zvcm1QYWdlUG9pbnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BzLnRyYW5zZm9ybVBhZ2VQb2ludDtcbiAgICB9XG4gICAgZ2V0Q2xvc2VzdFZhcmlhbnROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhcmlhbnROb2RlXG4gICAgICAgICAgICA/IHRoaXNcbiAgICAgICAgICAgIDogdGhpcy5wYXJlbnRcbiAgICAgICAgICAgICAgICA/IHRoaXMucGFyZW50LmdldENsb3Nlc3RWYXJpYW50Tm9kZSgpXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGdldFZhcmlhbnRDb250ZXh0KHN0YXJ0QXRQYXJlbnQgPSBmYWxzZSkge1xuICAgICAgICBpZiAoc3RhcnRBdFBhcmVudCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50ID8gdGhpcy5wYXJlbnQuZ2V0VmFyaWFudENvbnRleHQoKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuaXNDb250cm9sbGluZ1ZhcmlhbnRzKSB7XG4gICAgICAgICAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5wYXJlbnRcbiAgICAgICAgICAgICAgICA/IHRoaXMucGFyZW50LmdldFZhcmlhbnRDb250ZXh0KCkgfHwge31cbiAgICAgICAgICAgICAgICA6IHt9O1xuICAgICAgICAgICAgaWYgKHRoaXMucHJvcHMuaW5pdGlhbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgY29udGV4dC5pbml0aWFsID0gdGhpcy5wcm9wcy5pbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY29udGV4dCA9IHt9O1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bVZhcmlhbnRQcm9wczsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBuYW1lID0gdmFyaWFudFByb3BzW2ldO1xuICAgICAgICAgICAgY29uc3QgcHJvcCA9IHRoaXMucHJvcHNbbmFtZV07XG4gICAgICAgICAgICBpZiAoaXNWYXJpYW50TGFiZWwocHJvcCkgfHwgcHJvcCA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgICAgICBjb250ZXh0W25hbWVdID0gcHJvcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udGV4dDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQWRkIGEgY2hpbGQgdmlzdWFsIGVsZW1lbnQgdG8gb3VyIHNldCBvZiBjaGlsZHJlbi5cbiAgICAgKi9cbiAgICBhZGRWYXJpYW50Q2hpbGQoY2hpbGQpIHtcbiAgICAgICAgY29uc3QgY2xvc2VzdFZhcmlhbnROb2RlID0gdGhpcy5nZXRDbG9zZXN0VmFyaWFudE5vZGUoKTtcbiAgICAgICAgaWYgKGNsb3Nlc3RWYXJpYW50Tm9kZSkge1xuICAgICAgICAgICAgY2xvc2VzdFZhcmlhbnROb2RlLnZhcmlhbnRDaGlsZHJlbiAmJlxuICAgICAgICAgICAgICAgIGNsb3Nlc3RWYXJpYW50Tm9kZS52YXJpYW50Q2hpbGRyZW4uYWRkKGNoaWxkKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiBjbG9zZXN0VmFyaWFudE5vZGUudmFyaWFudENoaWxkcmVuLmRlbGV0ZShjaGlsZCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQWRkIGEgbW90aW9uIHZhbHVlIGFuZCBiaW5kIGl0IHRvIHRoaXMgdmlzdWFsIGVsZW1lbnQuXG4gICAgICovXG4gICAgYWRkVmFsdWUoa2V5LCB2YWx1ZSkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgdmFsdWUgaWYgaXQgZXhpc3RzXG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy52YWx1ZXMuZ2V0KGtleSkpIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlVmFsdWUoa2V5KTtcbiAgICAgICAgICAgIHRoaXMuYmluZFRvTW90aW9uVmFsdWUoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy52YWx1ZXMuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICB0aGlzLmxhdGVzdFZhbHVlc1trZXldID0gdmFsdWUuZ2V0KCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBhIG1vdGlvbiB2YWx1ZSBhbmQgdW5iaW5kIGFueSBhY3RpdmUgc3Vic2NyaXB0aW9ucy5cbiAgICAgKi9cbiAgICByZW1vdmVWYWx1ZShrZXkpIHtcbiAgICAgICAgdGhpcy52YWx1ZXMuZGVsZXRlKGtleSk7XG4gICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlID0gdGhpcy52YWx1ZVN1YnNjcmlwdGlvbnMuZ2V0KGtleSk7XG4gICAgICAgIGlmICh1bnN1YnNjcmliZSkge1xuICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMudmFsdWVTdWJzY3JpcHRpb25zLmRlbGV0ZShrZXkpO1xuICAgICAgICB9XG4gICAgICAgIGRlbGV0ZSB0aGlzLmxhdGVzdFZhbHVlc1trZXldO1xuICAgICAgICB0aGlzLnJlbW92ZVZhbHVlRnJvbVJlbmRlclN0YXRlKGtleSwgdGhpcy5yZW5kZXJTdGF0ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrIHdoZXRoZXIgd2UgaGF2ZSBhIG1vdGlvbiB2YWx1ZSBmb3IgdGhpcyBrZXlcbiAgICAgKi9cbiAgICBoYXNWYWx1ZShrZXkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWVzLmhhcyhrZXkpO1xuICAgIH1cbiAgICBnZXRWYWx1ZShrZXksIGRlZmF1bHRWYWx1ZSkge1xuICAgICAgICBpZiAodGhpcy5wcm9wcy52YWx1ZXMgJiYgdGhpcy5wcm9wcy52YWx1ZXNba2V5XSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMudmFsdWVzW2tleV07XG4gICAgICAgIH1cbiAgICAgICAgbGV0IHZhbHVlID0gdGhpcy52YWx1ZXMuZ2V0KGtleSk7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkICYmIGRlZmF1bHRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IG1vdGlvblZhbHVlKGRlZmF1bHRWYWx1ZSwgeyBvd25lcjogdGhpcyB9KTtcbiAgICAgICAgICAgIHRoaXMuYWRkVmFsdWUoa2V5LCB2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJZiB3ZSdyZSB0cnlpbmcgdG8gYW5pbWF0ZSB0byBhIHByZXZpb3VzbHkgdW5lbmNvdW50ZXJlZCB2YWx1ZSxcbiAgICAgKiB3ZSBuZWVkIHRvIGNoZWNrIGZvciBpdCBpbiBvdXIgc3RhdGUgYW5kIGFzIGEgbGFzdCByZXNvcnQgcmVhZCBpdFxuICAgICAqIGRpcmVjdGx5IGZyb20gdGhlIGluc3RhbmNlICh3aGljaCBtaWdodCBoYXZlIHBlcmZvcm1hbmNlIGltcGxpY2F0aW9ucykuXG4gICAgICovXG4gICAgcmVhZFZhbHVlKGtleSkge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHJldHVybiB0aGlzLmxhdGVzdFZhbHVlc1trZXldICE9PSB1bmRlZmluZWQgfHwgIXRoaXMuY3VycmVudFxuICAgICAgICAgICAgPyB0aGlzLmxhdGVzdFZhbHVlc1trZXldXG4gICAgICAgICAgICA6IChfYSA9IHRoaXMuZ2V0QmFzZVRhcmdldEZyb21Qcm9wcyh0aGlzLnByb3BzLCBrZXkpKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiB0aGlzLnJlYWRWYWx1ZUZyb21JbnN0YW5jZSh0aGlzLmN1cnJlbnQsIGtleSwgdGhpcy5vcHRpb25zKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBiYXNlIHRhcmdldCB0byBsYXRlciBhbmltYXRlIGJhY2sgdG8uIFRoaXMgaXMgY3VycmVudGx5XG4gICAgICogb25seSBoeWRyYXRlZCBvbiBjcmVhdGlvbiBhbmQgd2hlbiB3ZSBmaXJzdCByZWFkIGEgdmFsdWUuXG4gICAgICovXG4gICAgc2V0QmFzZVRhcmdldChrZXksIHZhbHVlKSB7XG4gICAgICAgIHRoaXMuYmFzZVRhcmdldFtrZXldID0gdmFsdWU7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEZpbmQgdGhlIGJhc2UgdGFyZ2V0IGZvciBhIHZhbHVlIHRoYXRzIGJlZW4gcmVtb3ZlZCBmcm9tIGFsbCBhbmltYXRpb25cbiAgICAgKiBwcm9wcy5cbiAgICAgKi9cbiAgICBnZXRCYXNlVGFyZ2V0KGtleSkge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGNvbnN0IHsgaW5pdGlhbCB9ID0gdGhpcy5wcm9wcztcbiAgICAgICAgY29uc3QgdmFsdWVGcm9tSW5pdGlhbCA9IHR5cGVvZiBpbml0aWFsID09PSBcInN0cmluZ1wiIHx8IHR5cGVvZiBpbml0aWFsID09PSBcIm9iamVjdFwiXG4gICAgICAgICAgICA/IChfYSA9IHJlc29sdmVWYXJpYW50RnJvbVByb3BzKHRoaXMucHJvcHMsIGluaXRpYWwpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Fba2V5XVxuICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB0aGlzIHZhbHVlIHN0aWxsIGV4aXN0cyBpbiB0aGUgY3VycmVudCBpbml0aWFsIHZhcmlhbnQsIHJlYWQgdGhhdC5cbiAgICAgICAgICovXG4gICAgICAgIGlmIChpbml0aWFsICYmIHZhbHVlRnJvbUluaXRpYWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlRnJvbUluaXRpYWw7XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEFsdGVybmF0aXZlbHksIGlmIHRoaXMgVmlzdWFsRWxlbWVudCBjb25maWcgaGFzIGRlZmluZWQgYSBnZXRCYXNlVGFyZ2V0XG4gICAgICAgICAqIHNvIHdlIGNhbiByZWFkIHRoZSB2YWx1ZSBmcm9tIGFuIGFsdGVybmF0aXZlIHNvdXJjZSwgdHJ5IHRoYXQuXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCB0YXJnZXQgPSB0aGlzLmdldEJhc2VUYXJnZXRGcm9tUHJvcHModGhpcy5wcm9wcywga2V5KTtcbiAgICAgICAgaWYgKHRhcmdldCAhPT0gdW5kZWZpbmVkICYmICFpc01vdGlvblZhbHVlKHRhcmdldCkpXG4gICAgICAgICAgICByZXR1cm4gdGFyZ2V0O1xuICAgICAgICAvKipcbiAgICAgICAgICogSWYgdGhlIHZhbHVlIHdhcyBpbml0aWFsbHkgZGVmaW5lZCBvbiBpbml0aWFsLCBidXQgaXQgZG9lc24ndCBhbnkgbW9yZSxcbiAgICAgICAgICogcmV0dXJuIHVuZGVmaW5lZC4gT3RoZXJ3aXNlIHJldHVybiB0aGUgdmFsdWUgYXMgaW5pdGlhbGx5IHJlYWQgZnJvbSB0aGUgRE9NLlxuICAgICAgICAgKi9cbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdGlhbFZhbHVlc1trZXldICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIHZhbHVlRnJvbUluaXRpYWwgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyB1bmRlZmluZWRcbiAgICAgICAgICAgIDogdGhpcy5iYXNlVGFyZ2V0W2tleV07XG4gICAgfVxuICAgIG9uKGV2ZW50TmFtZSwgY2FsbGJhY2spIHtcbiAgICAgICAgaWYgKCF0aGlzLmV2ZW50c1tldmVudE5hbWVdKSB7XG4gICAgICAgICAgICB0aGlzLmV2ZW50c1tldmVudE5hbWVdID0gbmV3IFN1YnNjcmlwdGlvbk1hbmFnZXIoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5ldmVudHNbZXZlbnROYW1lXS5hZGQoY2FsbGJhY2spO1xuICAgIH1cbiAgICBub3RpZnkoZXZlbnROYW1lLCAuLi5hcmdzKSB7XG4gICAgICAgIGlmICh0aGlzLmV2ZW50c1tldmVudE5hbWVdKSB7XG4gICAgICAgICAgICB0aGlzLmV2ZW50c1tldmVudE5hbWVdLm5vdGlmeSguLi5hcmdzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IHsgVmlzdWFsRWxlbWVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/VisualElement.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DOMVisualElement: function() { return /* binding */ DOMVisualElement; }\n/* harmony export */ });\n/* harmony import */ var _utils_setters_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/setters.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/setters.mjs\");\n/* harmony import */ var _utils_parse_dom_variant_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/parse-dom-variant.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs\");\n/* harmony import */ var _VisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../VisualElement.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/VisualElement.mjs\");\n\n\n\n\nclass DOMVisualElement extends _VisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__.VisualElement {\n sortInstanceNodePosition(a, b) {\n /**\n * compareDocumentPosition returns a bitmask, by using the bitwise &\n * we're returning true if 2 in that bitmask is set to true. 2 is set\n * to true if b preceeds a.\n */\n return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n }\n getBaseTargetFromProps(props, key) {\n return props.style ? props.style[key] : undefined;\n }\n removeValueFromRenderState(key, { vars, style }) {\n delete vars[key];\n delete style[key];\n }\n makeTargetAnimatableFromInstance({ transition, transitionEnd, ...target }, { transformValues }, isMounted) {\n let origin = (0,_utils_setters_mjs__WEBPACK_IMPORTED_MODULE_1__.getOrigin)(target, transition || {}, this);\n /**\n * If Framer has provided a function to convert `Color` etc value types, convert them\n */\n if (transformValues) {\n if (transitionEnd)\n transitionEnd = transformValues(transitionEnd);\n if (target)\n target = transformValues(target);\n if (origin)\n origin = transformValues(origin);\n }\n if (isMounted) {\n (0,_utils_setters_mjs__WEBPACK_IMPORTED_MODULE_1__.checkTargetForNewValues)(this, target, origin);\n const parsed = (0,_utils_parse_dom_variant_mjs__WEBPACK_IMPORTED_MODULE_2__.parseDomVariant)(this, target, origin, transitionEnd);\n transitionEnd = parsed.transitionEnd;\n target = parsed.target;\n }\n return {\n transition,\n transitionEnd,\n ...target,\n };\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9ET01WaXN1YWxFbGVtZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQTBFO0FBQ1Y7QUFDWDs7QUFFckQsK0JBQStCLDZEQUFhO0FBQzVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQ0FBc0MsYUFBYTtBQUNuRDtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsc0NBQXNDLElBQUksaUJBQWlCO0FBQ2xHLHFCQUFxQiw2REFBUyx5QkFBeUI7QUFDdkQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSwyRUFBdUI7QUFDbkMsMkJBQTJCLDZFQUFlO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU0QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vRE9NVmlzdWFsRWxlbWVudC5tanM/MTI0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRPcmlnaW4sIGNoZWNrVGFyZ2V0Rm9yTmV3VmFsdWVzIH0gZnJvbSAnLi4vdXRpbHMvc2V0dGVycy5tanMnO1xuaW1wb3J0IHsgcGFyc2VEb21WYXJpYW50IH0gZnJvbSAnLi91dGlscy9wYXJzZS1kb20tdmFyaWFudC5tanMnO1xuaW1wb3J0IHsgVmlzdWFsRWxlbWVudCB9IGZyb20gJy4uL1Zpc3VhbEVsZW1lbnQubWpzJztcblxuY2xhc3MgRE9NVmlzdWFsRWxlbWVudCBleHRlbmRzIFZpc3VhbEVsZW1lbnQge1xuICAgIHNvcnRJbnN0YW5jZU5vZGVQb3NpdGlvbihhLCBiKSB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBjb21wYXJlRG9jdW1lbnRQb3NpdGlvbiByZXR1cm5zIGEgYml0bWFzaywgYnkgdXNpbmcgdGhlIGJpdHdpc2UgJlxuICAgICAgICAgKiB3ZSdyZSByZXR1cm5pbmcgdHJ1ZSBpZiAyIGluIHRoYXQgYml0bWFzayBpcyBzZXQgdG8gdHJ1ZS4gMiBpcyBzZXRcbiAgICAgICAgICogdG8gdHJ1ZSBpZiBiIHByZWNlZWRzIGEuXG4gICAgICAgICAqL1xuICAgICAgICByZXR1cm4gYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKSAmIDIgPyAxIDogLTE7XG4gICAgfVxuICAgIGdldEJhc2VUYXJnZXRGcm9tUHJvcHMocHJvcHMsIGtleSkge1xuICAgICAgICByZXR1cm4gcHJvcHMuc3R5bGUgPyBwcm9wcy5zdHlsZVtrZXldIDogdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZW1vdmVWYWx1ZUZyb21SZW5kZXJTdGF0ZShrZXksIHsgdmFycywgc3R5bGUgfSkge1xuICAgICAgICBkZWxldGUgdmFyc1trZXldO1xuICAgICAgICBkZWxldGUgc3R5bGVba2V5XTtcbiAgICB9XG4gICAgbWFrZVRhcmdldEFuaW1hdGFibGVGcm9tSW5zdGFuY2UoeyB0cmFuc2l0aW9uLCB0cmFuc2l0aW9uRW5kLCAuLi50YXJnZXQgfSwgeyB0cmFuc2Zvcm1WYWx1ZXMgfSwgaXNNb3VudGVkKSB7XG4gICAgICAgIGxldCBvcmlnaW4gPSBnZXRPcmlnaW4odGFyZ2V0LCB0cmFuc2l0aW9uIHx8IHt9LCB0aGlzKTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIEZyYW1lciBoYXMgcHJvdmlkZWQgYSBmdW5jdGlvbiB0byBjb252ZXJ0IGBDb2xvcmAgZXRjIHZhbHVlIHR5cGVzLCBjb252ZXJ0IHRoZW1cbiAgICAgICAgICovXG4gICAgICAgIGlmICh0cmFuc2Zvcm1WYWx1ZXMpIHtcbiAgICAgICAgICAgIGlmICh0cmFuc2l0aW9uRW5kKVxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25FbmQgPSB0cmFuc2Zvcm1WYWx1ZXModHJhbnNpdGlvbkVuZCk7XG4gICAgICAgICAgICBpZiAodGFyZ2V0KVxuICAgICAgICAgICAgICAgIHRhcmdldCA9IHRyYW5zZm9ybVZhbHVlcyh0YXJnZXQpO1xuICAgICAgICAgICAgaWYgKG9yaWdpbilcbiAgICAgICAgICAgICAgICBvcmlnaW4gPSB0cmFuc2Zvcm1WYWx1ZXMob3JpZ2luKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNNb3VudGVkKSB7XG4gICAgICAgICAgICBjaGVja1RhcmdldEZvck5ld1ZhbHVlcyh0aGlzLCB0YXJnZXQsIG9yaWdpbik7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWQgPSBwYXJzZURvbVZhcmlhbnQodGhpcywgdGFyZ2V0LCBvcmlnaW4sIHRyYW5zaXRpb25FbmQpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbkVuZCA9IHBhcnNlZC50cmFuc2l0aW9uRW5kO1xuICAgICAgICAgICAgdGFyZ2V0ID0gcGFyc2VkLnRhcmdldDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdHJhbnNpdGlvbixcbiAgICAgICAgICAgIHRyYW5zaXRpb25FbmQsXG4gICAgICAgICAgICAuLi50YXJnZXQsXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5leHBvcnQgeyBET01WaXN1YWxFbGVtZW50IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createDomVisualElement: function() { return /* binding */ createDomVisualElement; }\n/* harmony export */ });\n/* harmony import */ var _html_HTMLVisualElement_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../html/HTMLVisualElement.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs\");\n/* harmony import */ var _svg_SVGVisualElement_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../svg/SVGVisualElement.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs\");\n/* harmony import */ var _utils_is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils/is-svg-component.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs\");\n\n\n\n\nconst createDomVisualElement = (Component, options) => {\n return (0,_utils_is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_0__.isSVGComponent)(Component)\n ? new _svg_SVGVisualElement_mjs__WEBPACK_IMPORTED_MODULE_1__.SVGVisualElement(options, { enableHardwareAcceleration: false })\n : new _html_HTMLVisualElement_mjs__WEBPACK_IMPORTED_MODULE_2__.HTMLVisualElement(options, { enableHardwareAcceleration: true });\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9jcmVhdGUtdmlzdWFsLWVsZW1lbnQubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBa0U7QUFDSDtBQUNEOztBQUU5RDtBQUNBLFdBQVcsMkVBQWM7QUFDekIsY0FBYyx1RUFBZ0IsWUFBWSxtQ0FBbUM7QUFDN0UsY0FBYywwRUFBaUIsWUFBWSxrQ0FBa0M7QUFDN0U7O0FBRWtDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9jcmVhdGUtdmlzdWFsLWVsZW1lbnQubWpzPzI5YzMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSFRNTFZpc3VhbEVsZW1lbnQgfSBmcm9tICcuLi9odG1sL0hUTUxWaXN1YWxFbGVtZW50Lm1qcyc7XG5pbXBvcnQgeyBTVkdWaXN1YWxFbGVtZW50IH0gZnJvbSAnLi4vc3ZnL1NWR1Zpc3VhbEVsZW1lbnQubWpzJztcbmltcG9ydCB7IGlzU1ZHQ29tcG9uZW50IH0gZnJvbSAnLi91dGlscy9pcy1zdmctY29tcG9uZW50Lm1qcyc7XG5cbmNvbnN0IGNyZWF0ZURvbVZpc3VhbEVsZW1lbnQgPSAoQ29tcG9uZW50LCBvcHRpb25zKSA9PiB7XG4gICAgcmV0dXJuIGlzU1ZHQ29tcG9uZW50KENvbXBvbmVudClcbiAgICAgICAgPyBuZXcgU1ZHVmlzdWFsRWxlbWVudChvcHRpb25zLCB7IGVuYWJsZUhhcmR3YXJlQWNjZWxlcmF0aW9uOiBmYWxzZSB9KVxuICAgICAgICA6IG5ldyBIVE1MVmlzdWFsRWxlbWVudChvcHRpb25zLCB7IGVuYWJsZUhhcmR3YXJlQWNjZWxlcmF0aW9uOiB0cnVlIH0pO1xufTtcblxuZXhwb3J0IHsgY3JlYXRlRG9tVmlzdWFsRWxlbWVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createMotionProxy: function() { return /* binding */ createMotionProxy; }\n/* harmony export */ });\n/* harmony import */ var _motion_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../motion/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/index.mjs\");\n\n\n/**\n * Convert any React component into a `motion` component. The provided component\n * **must** use `React.forwardRef` to the underlying DOM component you want to animate.\n *\n * ```jsx\n * const Component = React.forwardRef((props, ref) => {\n * return <div ref={ref} />\n * })\n *\n * const MotionComponent = motion(Component)\n * ```\n *\n * @public\n */\nfunction createMotionProxy(createConfig) {\n function custom(Component, customMotionComponentConfig = {}) {\n return (0,_motion_index_mjs__WEBPACK_IMPORTED_MODULE_0__.createMotionComponent)(createConfig(Component, customMotionComponentConfig));\n }\n if (typeof Proxy === \"undefined\") {\n return custom;\n }\n /**\n * A cache of generated `motion` components, e.g `motion.div`, `motion.input` etc.\n * Rather than generating them anew every render.\n */\n const componentCache = new Map();\n return new Proxy(custom, {\n /**\n * Called when `motion` is referenced with a prop: `motion.div`, `motion.input` etc.\n * The prop name is passed through as `key` and we can use that to generate a `motion`\n * DOM component with that name.\n */\n get: (_target, key) => {\n /**\n * If this element doesn't exist in the component cache, create it and cache.\n */\n if (!componentCache.has(key)) {\n componentCache.set(key, custom(key));\n }\n return componentCache.get(key);\n },\n });\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9tb3Rpb24tcHJveHkubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQStEOztBQUUvRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsS0FBSztBQUMzQixJQUFJO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwrREFBK0Q7QUFDL0QsZUFBZSx3RUFBcUI7QUFDcEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxLQUFLO0FBQ0w7O0FBRTZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9tb3Rpb24tcHJveHkubWpzP2QxOTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlTW90aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW90aW9uL2luZGV4Lm1qcyc7XG5cbi8qKlxuICogQ29udmVydCBhbnkgUmVhY3QgY29tcG9uZW50IGludG8gYSBgbW90aW9uYCBjb21wb25lbnQuIFRoZSBwcm92aWRlZCBjb21wb25lbnRcbiAqICoqbXVzdCoqIHVzZSBgUmVhY3QuZm9yd2FyZFJlZmAgdG8gdGhlIHVuZGVybHlpbmcgRE9NIGNvbXBvbmVudCB5b3Ugd2FudCB0byBhbmltYXRlLlxuICpcbiAqIGBgYGpzeFxuICogY29uc3QgQ29tcG9uZW50ID0gUmVhY3QuZm9yd2FyZFJlZigocHJvcHMsIHJlZikgPT4ge1xuICogICByZXR1cm4gPGRpdiByZWY9e3JlZn0gLz5cbiAqIH0pXG4gKlxuICogY29uc3QgTW90aW9uQ29tcG9uZW50ID0gbW90aW9uKENvbXBvbmVudClcbiAqIGBgYFxuICpcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gY3JlYXRlTW90aW9uUHJveHkoY3JlYXRlQ29uZmlnKSB7XG4gICAgZnVuY3Rpb24gY3VzdG9tKENvbXBvbmVudCwgY3VzdG9tTW90aW9uQ29tcG9uZW50Q29uZmlnID0ge30pIHtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZU1vdGlvbkNvbXBvbmVudChjcmVhdGVDb25maWcoQ29tcG9uZW50LCBjdXN0b21Nb3Rpb25Db21wb25lbnRDb25maWcpKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBQcm94eSA9PT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgICByZXR1cm4gY3VzdG9tO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBIGNhY2hlIG9mIGdlbmVyYXRlZCBgbW90aW9uYCBjb21wb25lbnRzLCBlLmcgYG1vdGlvbi5kaXZgLCBgbW90aW9uLmlucHV0YCBldGMuXG4gICAgICogUmF0aGVyIHRoYW4gZ2VuZXJhdGluZyB0aGVtIGFuZXcgZXZlcnkgcmVuZGVyLlxuICAgICAqL1xuICAgIGNvbnN0IGNvbXBvbmVudENhY2hlID0gbmV3IE1hcCgpO1xuICAgIHJldHVybiBuZXcgUHJveHkoY3VzdG9tLCB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBDYWxsZWQgd2hlbiBgbW90aW9uYCBpcyByZWZlcmVuY2VkIHdpdGggYSBwcm9wOiBgbW90aW9uLmRpdmAsIGBtb3Rpb24uaW5wdXRgIGV0Yy5cbiAgICAgICAgICogVGhlIHByb3AgbmFtZSBpcyBwYXNzZWQgdGhyb3VnaCBhcyBga2V5YCBhbmQgd2UgY2FuIHVzZSB0aGF0IHRvIGdlbmVyYXRlIGEgYG1vdGlvbmBcbiAgICAgICAgICogRE9NIGNvbXBvbmVudCB3aXRoIHRoYXQgbmFtZS5cbiAgICAgICAgICovXG4gICAgICAgIGdldDogKF90YXJnZXQsIGtleSkgPT4ge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB0aGlzIGVsZW1lbnQgZG9lc24ndCBleGlzdCBpbiB0aGUgY29tcG9uZW50IGNhY2hlLCBjcmVhdGUgaXQgYW5kIGNhY2hlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAoIWNvbXBvbmVudENhY2hlLmhhcyhrZXkpKSB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50Q2FjaGUuc2V0KGtleSwgY3VzdG9tKGtleSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvbXBvbmVudENhY2hlLmdldChrZXkpO1xuICAgICAgICB9LFxuICAgIH0pO1xufVxuXG5leHBvcnQgeyBjcmVhdGVNb3Rpb25Qcm94eSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/motion.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createDomMotionComponent: function() { return /* binding */ createDomMotionComponent; },\n/* harmony export */ motion: function() { return /* binding */ motion; }\n/* harmony export */ });\n/* harmony import */ var _motion_index_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../motion/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/index.mjs\");\n/* harmony import */ var _motion_proxy_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./motion-proxy.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs\");\n/* harmony import */ var _utils_create_config_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/create-config.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs\");\n/* harmony import */ var _motion_features_gestures_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../motion/features/gestures.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/gestures.mjs\");\n/* harmony import */ var _motion_features_animations_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../motion/features/animations.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/animations.mjs\");\n/* harmony import */ var _motion_features_drag_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../motion/features/drag.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/drag.mjs\");\n/* harmony import */ var _create_visual_element_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./create-visual-element.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs\");\n/* harmony import */ var _motion_features_layout_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../motion/features/layout.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/features/layout.mjs\");\n\n\n\n\n\n\n\n\n\nconst preloadedFeatures = {\n ..._motion_features_animations_mjs__WEBPACK_IMPORTED_MODULE_0__.animations,\n ..._motion_features_gestures_mjs__WEBPACK_IMPORTED_MODULE_1__.gestureAnimations,\n ..._motion_features_drag_mjs__WEBPACK_IMPORTED_MODULE_2__.drag,\n ..._motion_features_layout_mjs__WEBPACK_IMPORTED_MODULE_3__.layout,\n};\n/**\n * HTML & SVG components, optimised for use with gestures and animation. These can be used as\n * drop-in replacements for any HTML & SVG component, all CSS & SVG properties are supported.\n *\n * @public\n */\nconst motion = /*@__PURE__*/ (0,_motion_proxy_mjs__WEBPACK_IMPORTED_MODULE_4__.createMotionProxy)((Component, config) => (0,_utils_create_config_mjs__WEBPACK_IMPORTED_MODULE_5__.createDomMotionConfig)(Component, config, preloadedFeatures, _create_visual_element_mjs__WEBPACK_IMPORTED_MODULE_6__.createDomVisualElement));\n/**\n * Create a DOM `motion` component with the provided string. This is primarily intended\n * as a full alternative to `motion` for consumers who have to support environments that don't\n * support `Proxy`.\n *\n * ```javascript\n * import { createDomMotionComponent } from \"framer-motion\"\n *\n * const motion = {\n * div: createDomMotionComponent('div')\n * }\n * ```\n *\n * @public\n */\nfunction createDomMotionComponent(key) {\n return (0,_motion_index_mjs__WEBPACK_IMPORTED_MODULE_7__.createMotionComponent)((0,_utils_create_config_mjs__WEBPACK_IMPORTED_MODULE_5__.createDomMotionConfig)(key, { forwardMotionProps: false }, preloadedFeatures, _create_visual_element_mjs__WEBPACK_IMPORTED_MODULE_6__.createDomVisualElement));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS9tb3Rpb24ubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBK0Q7QUFDUjtBQUNXO0FBQ0s7QUFDTDtBQUNaO0FBQ2U7QUFDWDs7QUFFMUQ7QUFDQSxPQUFPLHVFQUFVO0FBQ2pCLE9BQU8sNEVBQWlCO0FBQ3hCLE9BQU8sMkRBQUk7QUFDWCxPQUFPLCtEQUFNO0FBQ2I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw2QkFBNkIsb0VBQWlCLHdCQUF3QiwrRUFBcUIsdUNBQXVDLDhFQUFzQjtBQUN4SjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLHdFQUFxQixDQUFDLCtFQUFxQixRQUFRLDJCQUEyQixxQkFBcUIsOEVBQXNCO0FBQ3BJOztBQUU0QyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vbW90aW9uLm1qcz85ZjQ0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZU1vdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vdGlvbi9pbmRleC5tanMnO1xuaW1wb3J0IHsgY3JlYXRlTW90aW9uUHJveHkgfSBmcm9tICcuL21vdGlvbi1wcm94eS5tanMnO1xuaW1wb3J0IHsgY3JlYXRlRG9tTW90aW9uQ29uZmlnIH0gZnJvbSAnLi91dGlscy9jcmVhdGUtY29uZmlnLm1qcyc7XG5pbXBvcnQgeyBnZXN0dXJlQW5pbWF0aW9ucyB9IGZyb20gJy4uLy4uL21vdGlvbi9mZWF0dXJlcy9nZXN0dXJlcy5tanMnO1xuaW1wb3J0IHsgYW5pbWF0aW9ucyB9IGZyb20gJy4uLy4uL21vdGlvbi9mZWF0dXJlcy9hbmltYXRpb25zLm1qcyc7XG5pbXBvcnQgeyBkcmFnIH0gZnJvbSAnLi4vLi4vbW90aW9uL2ZlYXR1cmVzL2RyYWcubWpzJztcbmltcG9ydCB7IGNyZWF0ZURvbVZpc3VhbEVsZW1lbnQgfSBmcm9tICcuL2NyZWF0ZS12aXN1YWwtZWxlbWVudC5tanMnO1xuaW1wb3J0IHsgbGF5b3V0IH0gZnJvbSAnLi4vLi4vbW90aW9uL2ZlYXR1cmVzL2xheW91dC5tanMnO1xuXG5jb25zdCBwcmVsb2FkZWRGZWF0dXJlcyA9IHtcbiAgICAuLi5hbmltYXRpb25zLFxuICAgIC4uLmdlc3R1cmVBbmltYXRpb25zLFxuICAgIC4uLmRyYWcsXG4gICAgLi4ubGF5b3V0LFxufTtcbi8qKlxuICogSFRNTCAmIFNWRyBjb21wb25lbnRzLCBvcHRpbWlzZWQgZm9yIHVzZSB3aXRoIGdlc3R1cmVzIGFuZCBhbmltYXRpb24uIFRoZXNlIGNhbiBiZSB1c2VkIGFzXG4gKiBkcm9wLWluIHJlcGxhY2VtZW50cyBmb3IgYW55IEhUTUwgJiBTVkcgY29tcG9uZW50LCBhbGwgQ1NTICYgU1ZHIHByb3BlcnRpZXMgYXJlIHN1cHBvcnRlZC5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmNvbnN0IG1vdGlvbiA9IC8qQF9fUFVSRV9fKi8gY3JlYXRlTW90aW9uUHJveHkoKENvbXBvbmVudCwgY29uZmlnKSA9PiBjcmVhdGVEb21Nb3Rpb25Db25maWcoQ29tcG9uZW50LCBjb25maWcsIHByZWxvYWRlZEZlYXR1cmVzLCBjcmVhdGVEb21WaXN1YWxFbGVtZW50KSk7XG4vKipcbiAqIENyZWF0ZSBhIERPTSBgbW90aW9uYCBjb21wb25lbnQgd2l0aCB0aGUgcHJvdmlkZWQgc3RyaW5nLiBUaGlzIGlzIHByaW1hcmlseSBpbnRlbmRlZFxuICogYXMgYSBmdWxsIGFsdGVybmF0aXZlIHRvIGBtb3Rpb25gIGZvciBjb25zdW1lcnMgd2hvIGhhdmUgdG8gc3VwcG9ydCBlbnZpcm9ubWVudHMgdGhhdCBkb24ndFxuICogc3VwcG9ydCBgUHJveHlgLlxuICpcbiAqIGBgYGphdmFzY3JpcHRcbiAqIGltcG9ydCB7IGNyZWF0ZURvbU1vdGlvbkNvbXBvbmVudCB9IGZyb20gXCJmcmFtZXItbW90aW9uXCJcbiAqXG4gKiBjb25zdCBtb3Rpb24gPSB7XG4gKiAgIGRpdjogY3JlYXRlRG9tTW90aW9uQ29tcG9uZW50KCdkaXYnKVxuICogfVxuICogYGBgXG4gKlxuICogQHB1YmxpY1xuICovXG5mdW5jdGlvbiBjcmVhdGVEb21Nb3Rpb25Db21wb25lbnQoa2V5KSB7XG4gICAgcmV0dXJuIGNyZWF0ZU1vdGlvbkNvbXBvbmVudChjcmVhdGVEb21Nb3Rpb25Db25maWcoa2V5LCB7IGZvcndhcmRNb3Rpb25Qcm9wczogZmFsc2UgfSwgcHJlbG9hZGVkRmVhdHVyZXMsIGNyZWF0ZURvbVZpc3VhbEVsZW1lbnQpKTtcbn1cblxuZXhwb3J0IHsgY3JlYXRlRG9tTW90aW9uQ29tcG9uZW50LCBtb3Rpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/motion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/use-render.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/use-render.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createUseRender: function() { return /* binding */ createUseRender; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _html_use_props_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../html/use-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/use-props.mjs\");\n/* harmony import */ var _utils_filter_props_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/filter-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs\");\n/* harmony import */ var _utils_is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/is-svg-component.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs\");\n/* harmony import */ var _svg_use_props_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../svg/use-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/use-props.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\n\n\n\n\nfunction createUseRender(forwardMotionProps = false) {\n const useRender = (Component, props, ref, { latestValues }, isStatic) => {\n const useVisualProps = (0,_utils_is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_1__.isSVGComponent)(Component)\n ? _svg_use_props_mjs__WEBPACK_IMPORTED_MODULE_2__.useSVGProps\n : _html_use_props_mjs__WEBPACK_IMPORTED_MODULE_3__.useHTMLProps;\n const visualProps = useVisualProps(props, latestValues, isStatic, Component);\n const filteredProps = (0,_utils_filter_props_mjs__WEBPACK_IMPORTED_MODULE_4__.filterProps)(props, typeof Component === \"string\", forwardMotionProps);\n const elementProps = {\n ...filteredProps,\n ...visualProps,\n ref,\n };\n /**\n * If component has been handed a motion value as its child,\n * memoise its initial value and render that. Subsequent updates\n * will be handled by the onChange handler\n */\n const { children } = props;\n const renderedChildren = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_5__.isMotionValue)(children) ? children.get() : children), [children]);\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(Component, {\n ...elementProps,\n children: renderedChildren,\n });\n };\n return useRender;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91c2UtcmVuZGVyLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQStDO0FBQ007QUFDRTtBQUNPO0FBQ1g7QUFDbUI7O0FBRXRFO0FBQ0EsZ0RBQWdELGNBQWM7QUFDOUQsK0JBQStCLDJFQUFjO0FBQzdDLGNBQWMsMkRBQVc7QUFDekIsY0FBYyw2REFBWTtBQUMxQjtBQUNBLDhCQUE4QixvRUFBVztBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixXQUFXO0FBQzNCLGlDQUFpQyw4Q0FBTyxRQUFRLCtFQUFhO0FBQzdELGVBQWUsb0RBQWE7QUFDNUI7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7O0FBRTJCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91c2UtcmVuZGVyLm1qcz83ZjFhIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZU1lbW8sIGNyZWF0ZUVsZW1lbnQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VIVE1MUHJvcHMgfSBmcm9tICcuLi9odG1sL3VzZS1wcm9wcy5tanMnO1xuaW1wb3J0IHsgZmlsdGVyUHJvcHMgfSBmcm9tICcuL3V0aWxzL2ZpbHRlci1wcm9wcy5tanMnO1xuaW1wb3J0IHsgaXNTVkdDb21wb25lbnQgfSBmcm9tICcuL3V0aWxzL2lzLXN2Zy1jb21wb25lbnQubWpzJztcbmltcG9ydCB7IHVzZVNWR1Byb3BzIH0gZnJvbSAnLi4vc3ZnL3VzZS1wcm9wcy5tanMnO1xuaW1wb3J0IHsgaXNNb3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uL3ZhbHVlL3V0aWxzL2lzLW1vdGlvbi12YWx1ZS5tanMnO1xuXG5mdW5jdGlvbiBjcmVhdGVVc2VSZW5kZXIoZm9yd2FyZE1vdGlvblByb3BzID0gZmFsc2UpIHtcbiAgICBjb25zdCB1c2VSZW5kZXIgPSAoQ29tcG9uZW50LCBwcm9wcywgcmVmLCB7IGxhdGVzdFZhbHVlcyB9LCBpc1N0YXRpYykgPT4ge1xuICAgICAgICBjb25zdCB1c2VWaXN1YWxQcm9wcyA9IGlzU1ZHQ29tcG9uZW50KENvbXBvbmVudClcbiAgICAgICAgICAgID8gdXNlU1ZHUHJvcHNcbiAgICAgICAgICAgIDogdXNlSFRNTFByb3BzO1xuICAgICAgICBjb25zdCB2aXN1YWxQcm9wcyA9IHVzZVZpc3VhbFByb3BzKHByb3BzLCBsYXRlc3RWYWx1ZXMsIGlzU3RhdGljLCBDb21wb25lbnQpO1xuICAgICAgICBjb25zdCBmaWx0ZXJlZFByb3BzID0gZmlsdGVyUHJvcHMocHJvcHMsIHR5cGVvZiBDb21wb25lbnQgPT09IFwic3RyaW5nXCIsIGZvcndhcmRNb3Rpb25Qcm9wcyk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnRQcm9wcyA9IHtcbiAgICAgICAgICAgIC4uLmZpbHRlcmVkUHJvcHMsXG4gICAgICAgICAgICAuLi52aXN1YWxQcm9wcyxcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgfTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIGNvbXBvbmVudCBoYXMgYmVlbiBoYW5kZWQgYSBtb3Rpb24gdmFsdWUgYXMgaXRzIGNoaWxkLFxuICAgICAgICAgKiBtZW1vaXNlIGl0cyBpbml0aWFsIHZhbHVlIGFuZCByZW5kZXIgdGhhdC4gU3Vic2VxdWVudCB1cGRhdGVzXG4gICAgICAgICAqIHdpbGwgYmUgaGFuZGxlZCBieSB0aGUgb25DaGFuZ2UgaGFuZGxlclxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgeyBjaGlsZHJlbiB9ID0gcHJvcHM7XG4gICAgICAgIGNvbnN0IHJlbmRlcmVkQ2hpbGRyZW4gPSB1c2VNZW1vKCgpID0+IChpc01vdGlvblZhbHVlKGNoaWxkcmVuKSA/IGNoaWxkcmVuLmdldCgpIDogY2hpbGRyZW4pLCBbY2hpbGRyZW5dKTtcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUVsZW1lbnQoQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAuLi5lbGVtZW50UHJvcHMsXG4gICAgICAgICAgICBjaGlsZHJlbjogcmVuZGVyZWRDaGlsZHJlbixcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICByZXR1cm4gdXNlUmVuZGVyO1xufVxuXG5leHBvcnQgeyBjcmVhdGVVc2VSZW5kZXIgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/use-render.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ camelToDash: function() { return /* binding */ camelToDash; }\n/* harmony export */ });\n/**\n * Convert camelCase to dash-case properties.\n */\nconst camelToDash = (str) => str.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9jYW1lbC10by1kYXNoLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7O0FBRXVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9jYW1lbC10by1kYXNoLm1qcz80ZmY5Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29udmVydCBjYW1lbENhc2UgdG8gZGFzaC1jYXNlIHByb3BlcnRpZXMuXG4gKi9cbmNvbnN0IGNhbWVsVG9EYXNoID0gKHN0cikgPT4gc3RyLnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csIFwiJDEtJDJcIikudG9Mb3dlckNhc2UoKTtcblxuZXhwb3J0IHsgY2FtZWxUb0Rhc2ggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createDomMotionConfig: function() { return /* binding */ createDomMotionConfig; }\n/* harmony export */ });\n/* harmony import */ var _is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-svg-component.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs\");\n/* harmony import */ var _use_render_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../use-render.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/use-render.mjs\");\n/* harmony import */ var _svg_config_motion_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../svg/config-motion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs\");\n/* harmony import */ var _html_config_motion_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../html/config-motion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/config-motion.mjs\");\n\n\n\n\n\nfunction createDomMotionConfig(Component, { forwardMotionProps = false }, preloadedFeatures, createVisualElement) {\n const baseConfig = (0,_is_svg_component_mjs__WEBPACK_IMPORTED_MODULE_0__.isSVGComponent)(Component)\n ? _svg_config_motion_mjs__WEBPACK_IMPORTED_MODULE_1__.svgMotionConfig\n : _html_config_motion_mjs__WEBPACK_IMPORTED_MODULE_2__.htmlMotionConfig;\n return {\n ...baseConfig,\n preloadedFeatures,\n useRender: (0,_use_render_mjs__WEBPACK_IMPORTED_MODULE_3__.createUseRender)(forwardMotionProps),\n createVisualElement,\n Component,\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9jcmVhdGUtY29uZmlnLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUF3RDtBQUNKO0FBQ1U7QUFDRTs7QUFFaEUsNENBQTRDLDRCQUE0QjtBQUN4RSx1QkFBdUIscUVBQWM7QUFDckMsVUFBVSxtRUFBZTtBQUN6QixVQUFVLHFFQUFnQjtBQUMxQjtBQUNBO0FBQ0E7QUFDQSxtQkFBbUIsZ0VBQWU7QUFDbEM7QUFDQTtBQUNBO0FBQ0E7O0FBRWlDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9jcmVhdGUtY29uZmlnLm1qcz8wMWI4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU1ZHQ29tcG9uZW50IH0gZnJvbSAnLi9pcy1zdmctY29tcG9uZW50Lm1qcyc7XG5pbXBvcnQgeyBjcmVhdGVVc2VSZW5kZXIgfSBmcm9tICcuLi91c2UtcmVuZGVyLm1qcyc7XG5pbXBvcnQgeyBzdmdNb3Rpb25Db25maWcgfSBmcm9tICcuLi8uLi9zdmcvY29uZmlnLW1vdGlvbi5tanMnO1xuaW1wb3J0IHsgaHRtbE1vdGlvbkNvbmZpZyB9IGZyb20gJy4uLy4uL2h0bWwvY29uZmlnLW1vdGlvbi5tanMnO1xuXG5mdW5jdGlvbiBjcmVhdGVEb21Nb3Rpb25Db25maWcoQ29tcG9uZW50LCB7IGZvcndhcmRNb3Rpb25Qcm9wcyA9IGZhbHNlIH0sIHByZWxvYWRlZEZlYXR1cmVzLCBjcmVhdGVWaXN1YWxFbGVtZW50KSB7XG4gICAgY29uc3QgYmFzZUNvbmZpZyA9IGlzU1ZHQ29tcG9uZW50KENvbXBvbmVudClcbiAgICAgICAgPyBzdmdNb3Rpb25Db25maWdcbiAgICAgICAgOiBodG1sTW90aW9uQ29uZmlnO1xuICAgIHJldHVybiB7XG4gICAgICAgIC4uLmJhc2VDb25maWcsXG4gICAgICAgIHByZWxvYWRlZEZlYXR1cmVzLFxuICAgICAgICB1c2VSZW5kZXI6IGNyZWF0ZVVzZVJlbmRlcihmb3J3YXJkTW90aW9uUHJvcHMpLFxuICAgICAgICBjcmVhdGVWaXN1YWxFbGVtZW50LFxuICAgICAgICBDb21wb25lbnQsXG4gICAgfTtcbn1cblxuZXhwb3J0IHsgY3JlYXRlRG9tTW90aW9uQ29uZmlnIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs":
|
||
/*!******************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs ***!
|
||
\******************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseCSSVariable: function() { return /* binding */ parseCSSVariable; },\n/* harmony export */ resolveCSSVariables: function() { return /* binding */ resolveCSSVariables; }\n/* harmony export */ });\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _utils_is_numerical_string_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../utils/is-numerical-string.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs\");\n/* harmony import */ var _is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./is-css-variable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs\");\n\n\n\n\n/**\n * Parse Framer's special CSS variable format into a CSS token and a fallback.\n *\n * ```\n * `var(--foo, #fff)` => [`--foo`, '#fff']\n * ```\n *\n * @param current\n */\nconst splitCSSVariableRegex = /var\\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\\)/;\nfunction parseCSSVariable(current) {\n const match = splitCSSVariableRegex.exec(current);\n if (!match)\n return [,];\n const [, token, fallback] = match;\n return [token, fallback];\n}\nconst maxDepth = 4;\nfunction getVariableValue(current, element, depth = 1) {\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_0__.invariant)(depth <= maxDepth, `Max CSS variable fallback depth detected in property \"${current}\". This may indicate a circular fallback dependency.`);\n const [token, fallback] = parseCSSVariable(current);\n // No CSS variable detected\n if (!token)\n return;\n // Attempt to read this CSS variable off the element\n const resolved = window.getComputedStyle(element).getPropertyValue(token);\n if (resolved) {\n const trimmed = resolved.trim();\n return (0,_utils_is_numerical_string_mjs__WEBPACK_IMPORTED_MODULE_1__.isNumericalString)(trimmed) ? parseFloat(trimmed) : trimmed;\n }\n else if ((0,_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_2__.isCSSVariableToken)(fallback)) {\n // The fallback might itself be a CSS variable, in which case we attempt to resolve it too.\n return getVariableValue(fallback, element, depth + 1);\n }\n else {\n return fallback;\n }\n}\n/**\n * Resolve CSS variables from\n *\n * @internal\n */\nfunction resolveCSSVariables(visualElement, { ...target }, transitionEnd) {\n const element = visualElement.current;\n if (!(element instanceof Element))\n return { target, transitionEnd };\n // If `transitionEnd` isn't `undefined`, clone it. We could clone `target` and `transitionEnd`\n // only if they change but I think this reads clearer and this isn't a performance-critical path.\n if (transitionEnd) {\n transitionEnd = { ...transitionEnd };\n }\n // Go through existing `MotionValue`s and ensure any existing CSS variables are resolved\n visualElement.values.forEach((value) => {\n const current = value.get();\n if (!(0,_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_2__.isCSSVariableToken)(current))\n return;\n const resolved = getVariableValue(current, element);\n if (resolved)\n value.set(resolved);\n });\n // Cycle through every target property and resolve CSS variables. Currently\n // we only read single-var properties like `var(--foo)`, not `calc(var(--foo) + 20px)`\n for (const key in target) {\n const current = target[key];\n if (!(0,_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_2__.isCSSVariableToken)(current))\n continue;\n const resolved = getVariableValue(current, element);\n if (!resolved)\n continue;\n // Clone target if it hasn't already been\n target[key] = resolved;\n if (!transitionEnd)\n transitionEnd = {};\n // If the user hasn't already set this key on `transitionEnd`, set it to the unresolved\n // CSS variable. This will ensure that after the animation the component will reflect\n // changes in the value of the CSS variable.\n if (transitionEnd[key] === undefined) {\n transitionEnd[key] = current;\n }\n }\n return { target, transitionEnd };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9jc3MtdmFyaWFibGVzLWNvbnZlcnNpb24ubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXNEO0FBQ3FCO0FBQ2hCOztBQUUzRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksNERBQVMsNkVBQTZFLFFBQVE7QUFDbEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsaUZBQWlCO0FBQ2hDO0FBQ0EsYUFBYSx3RUFBa0I7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsOENBQThDLFdBQVc7QUFDekQ7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQSwwQkFBMEI7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLHdFQUFrQjtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWEsd0VBQWtCO0FBQy9CO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjs7QUFFaUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3V0aWxzL2Nzcy12YXJpYWJsZXMtY29udmVyc2lvbi5tanM/NDIyOCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnZhcmlhbnQgfSBmcm9tICcuLi8uLi8uLi91dGlscy9lcnJvcnMubWpzJztcbmltcG9ydCB7IGlzTnVtZXJpY2FsU3RyaW5nIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvaXMtbnVtZXJpY2FsLXN0cmluZy5tanMnO1xuaW1wb3J0IHsgaXNDU1NWYXJpYWJsZVRva2VuIH0gZnJvbSAnLi9pcy1jc3MtdmFyaWFibGUubWpzJztcblxuLyoqXG4gKiBQYXJzZSBGcmFtZXIncyBzcGVjaWFsIENTUyB2YXJpYWJsZSBmb3JtYXQgaW50byBhIENTUyB0b2tlbiBhbmQgYSBmYWxsYmFjay5cbiAqXG4gKiBgYGBcbiAqIGB2YXIoLS1mb28sICNmZmYpYCA9PiBbYC0tZm9vYCwgJyNmZmYnXVxuICogYGBgXG4gKlxuICogQHBhcmFtIGN1cnJlbnRcbiAqL1xuY29uc3Qgc3BsaXRDU1NWYXJpYWJsZVJlZ2V4ID0gL3ZhclxcKCgtLVthLXpBLVowLTktX10rKSw/ID8oW2EtekEtWjAtOSAoKSUjLiwtXSspP1xcKS87XG5mdW5jdGlvbiBwYXJzZUNTU1ZhcmlhYmxlKGN1cnJlbnQpIHtcbiAgICBjb25zdCBtYXRjaCA9IHNwbGl0Q1NTVmFyaWFibGVSZWdleC5leGVjKGN1cnJlbnQpO1xuICAgIGlmICghbWF0Y2gpXG4gICAgICAgIHJldHVybiBbLF07XG4gICAgY29uc3QgWywgdG9rZW4sIGZhbGxiYWNrXSA9IG1hdGNoO1xuICAgIHJldHVybiBbdG9rZW4sIGZhbGxiYWNrXTtcbn1cbmNvbnN0IG1heERlcHRoID0gNDtcbmZ1bmN0aW9uIGdldFZhcmlhYmxlVmFsdWUoY3VycmVudCwgZWxlbWVudCwgZGVwdGggPSAxKSB7XG4gICAgaW52YXJpYW50KGRlcHRoIDw9IG1heERlcHRoLCBgTWF4IENTUyB2YXJpYWJsZSBmYWxsYmFjayBkZXB0aCBkZXRlY3RlZCBpbiBwcm9wZXJ0eSBcIiR7Y3VycmVudH1cIi4gVGhpcyBtYXkgaW5kaWNhdGUgYSBjaXJjdWxhciBmYWxsYmFjayBkZXBlbmRlbmN5LmApO1xuICAgIGNvbnN0IFt0b2tlbiwgZmFsbGJhY2tdID0gcGFyc2VDU1NWYXJpYWJsZShjdXJyZW50KTtcbiAgICAvLyBObyBDU1MgdmFyaWFibGUgZGV0ZWN0ZWRcbiAgICBpZiAoIXRva2VuKVxuICAgICAgICByZXR1cm47XG4gICAgLy8gQXR0ZW1wdCB0byByZWFkIHRoaXMgQ1NTIHZhcmlhYmxlIG9mZiB0aGUgZWxlbWVudFxuICAgIGNvbnN0IHJlc29sdmVkID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSh0b2tlbik7XG4gICAgaWYgKHJlc29sdmVkKSB7XG4gICAgICAgIGNvbnN0IHRyaW1tZWQgPSByZXNvbHZlZC50cmltKCk7XG4gICAgICAgIHJldHVybiBpc051bWVyaWNhbFN0cmluZyh0cmltbWVkKSA/IHBhcnNlRmxvYXQodHJpbW1lZCkgOiB0cmltbWVkO1xuICAgIH1cbiAgICBlbHNlIGlmIChpc0NTU1ZhcmlhYmxlVG9rZW4oZmFsbGJhY2spKSB7XG4gICAgICAgIC8vIFRoZSBmYWxsYmFjayBtaWdodCBpdHNlbGYgYmUgYSBDU1MgdmFyaWFibGUsIGluIHdoaWNoIGNhc2Ugd2UgYXR0ZW1wdCB0byByZXNvbHZlIGl0IHRvby5cbiAgICAgICAgcmV0dXJuIGdldFZhcmlhYmxlVmFsdWUoZmFsbGJhY2ssIGVsZW1lbnQsIGRlcHRoICsgMSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsbGJhY2s7XG4gICAgfVxufVxuLyoqXG4gKiBSZXNvbHZlIENTUyB2YXJpYWJsZXMgZnJvbVxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5mdW5jdGlvbiByZXNvbHZlQ1NTVmFyaWFibGVzKHZpc3VhbEVsZW1lbnQsIHsgLi4udGFyZ2V0IH0sIHRyYW5zaXRpb25FbmQpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdmlzdWFsRWxlbWVudC5jdXJyZW50O1xuICAgIGlmICghKGVsZW1lbnQgaW5zdGFuY2VvZiBFbGVtZW50KSlcbiAgICAgICAgcmV0dXJuIHsgdGFyZ2V0LCB0cmFuc2l0aW9uRW5kIH07XG4gICAgLy8gSWYgYHRyYW5zaXRpb25FbmRgIGlzbid0IGB1bmRlZmluZWRgLCBjbG9uZSBpdC4gV2UgY291bGQgY2xvbmUgYHRhcmdldGAgYW5kIGB0cmFuc2l0aW9uRW5kYFxuICAgIC8vIG9ubHkgaWYgdGhleSBjaGFuZ2UgYnV0IEkgdGhpbmsgdGhpcyByZWFkcyBjbGVhcmVyIGFuZCB0aGlzIGlzbid0IGEgcGVyZm9ybWFuY2UtY3JpdGljYWwgcGF0aC5cbiAgICBpZiAodHJhbnNpdGlvbkVuZCkge1xuICAgICAgICB0cmFuc2l0aW9uRW5kID0geyAuLi50cmFuc2l0aW9uRW5kIH07XG4gICAgfVxuICAgIC8vIEdvIHRocm91Z2ggZXhpc3RpbmcgYE1vdGlvblZhbHVlYHMgYW5kIGVuc3VyZSBhbnkgZXhpc3RpbmcgQ1NTIHZhcmlhYmxlcyBhcmUgcmVzb2x2ZWRcbiAgICB2aXN1YWxFbGVtZW50LnZhbHVlcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdmFsdWUuZ2V0KCk7XG4gICAgICAgIGlmICghaXNDU1NWYXJpYWJsZVRva2VuKGN1cnJlbnQpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCByZXNvbHZlZCA9IGdldFZhcmlhYmxlVmFsdWUoY3VycmVudCwgZWxlbWVudCk7XG4gICAgICAgIGlmIChyZXNvbHZlZClcbiAgICAgICAgICAgIHZhbHVlLnNldChyZXNvbHZlZCk7XG4gICAgfSk7XG4gICAgLy8gQ3ljbGUgdGhyb3VnaCBldmVyeSB0YXJnZXQgcHJvcGVydHkgYW5kIHJlc29sdmUgQ1NTIHZhcmlhYmxlcy4gQ3VycmVudGx5XG4gICAgLy8gd2Ugb25seSByZWFkIHNpbmdsZS12YXIgcHJvcGVydGllcyBsaWtlIGB2YXIoLS1mb28pYCwgbm90IGBjYWxjKHZhcigtLWZvbykgKyAyMHB4KWBcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB0YXJnZXQpIHtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRhcmdldFtrZXldO1xuICAgICAgICBpZiAoIWlzQ1NTVmFyaWFibGVUb2tlbihjdXJyZW50KSlcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBjb25zdCByZXNvbHZlZCA9IGdldFZhcmlhYmxlVmFsdWUoY3VycmVudCwgZWxlbWVudCk7XG4gICAgICAgIGlmICghcmVzb2x2ZWQpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgLy8gQ2xvbmUgdGFyZ2V0IGlmIGl0IGhhc24ndCBhbHJlYWR5IGJlZW5cbiAgICAgICAgdGFyZ2V0W2tleV0gPSByZXNvbHZlZDtcbiAgICAgICAgaWYgKCF0cmFuc2l0aW9uRW5kKVxuICAgICAgICAgICAgdHJhbnNpdGlvbkVuZCA9IHt9O1xuICAgICAgICAvLyBJZiB0aGUgdXNlciBoYXNuJ3QgYWxyZWFkeSBzZXQgdGhpcyBrZXkgb24gYHRyYW5zaXRpb25FbmRgLCBzZXQgaXQgdG8gdGhlIHVucmVzb2x2ZWRcbiAgICAgICAgLy8gQ1NTIHZhcmlhYmxlLiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgYWZ0ZXIgdGhlIGFuaW1hdGlvbiB0aGUgY29tcG9uZW50IHdpbGwgcmVmbGVjdFxuICAgICAgICAvLyBjaGFuZ2VzIGluIHRoZSB2YWx1ZSBvZiB0aGUgQ1NTIHZhcmlhYmxlLlxuICAgICAgICBpZiAodHJhbnNpdGlvbkVuZFtrZXldID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb25FbmRba2V5XSA9IGN1cnJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgdGFyZ2V0LCB0cmFuc2l0aW9uRW5kIH07XG59XG5cbmV4cG9ydCB7IHBhcnNlQ1NTVmFyaWFibGUsIHJlc29sdmVDU1NWYXJpYWJsZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ filterProps: function() { return /* binding */ filterProps; },\n/* harmony export */ loadExternalIsValidProp: function() { return /* binding */ loadExternalIsValidProp; }\n/* harmony export */ });\n/* harmony import */ var _motion_utils_valid_prop_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../motion/utils/valid-prop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs\");\n\n\nlet shouldForward = (key) => !(0,_motion_utils_valid_prop_mjs__WEBPACK_IMPORTED_MODULE_0__.isValidMotionProp)(key);\nfunction loadExternalIsValidProp(isValidProp) {\n if (!isValidProp)\n return;\n // Explicitly filter our events\n shouldForward = (key) => key.startsWith(\"on\") ? !(0,_motion_utils_valid_prop_mjs__WEBPACK_IMPORTED_MODULE_0__.isValidMotionProp)(key) : isValidProp(key);\n}\n/**\n * Emotion and Styled Components both allow users to pass through arbitrary props to their components\n * to dynamically generate CSS. They both use the `@emotion/is-prop-valid` package to determine which\n * of these should be passed to the underlying DOM node.\n *\n * However, when styling a Motion component `styled(motion.div)`, both packages pass through *all* props\n * as it's seen as an arbitrary component rather than a DOM node. Motion only allows arbitrary props\n * passed through the `custom` prop so it doesn't *need* the payload or computational overhead of\n * `@emotion/is-prop-valid`, however to fix this problem we need to use it.\n *\n * By making it an optionalDependency we can offer this functionality only in the situations where it's\n * actually required.\n */\ntry {\n /**\n * We attempt to import this package but require won't be defined in esm environments, in that case\n * isPropValid will have to be provided via `MotionContext`. In a 6.0.0 this should probably be removed\n * in favour of explicit injection.\n */\n loadExternalIsValidProp(require(\"@emotion/is-prop-valid\").default);\n}\ncatch (_a) {\n // We don't need to actually do anything here - the fallback is the existing `isPropValid`.\n}\nfunction filterProps(props, isDom, forwardMotionProps) {\n const filteredProps = {};\n for (const key in props) {\n /**\n * values is considered a valid prop by Emotion, so if it's present\n * this will be rendered out to the DOM unless explicitly filtered.\n *\n * We check the type as it could be used with the `feColorMatrix`\n * element, which we support.\n */\n if (key === \"values\" && typeof props.values === \"object\")\n continue;\n if (shouldForward(key) ||\n (forwardMotionProps === true && (0,_motion_utils_valid_prop_mjs__WEBPACK_IMPORTED_MODULE_0__.isValidMotionProp)(key)) ||\n (!isDom && !(0,_motion_utils_valid_prop_mjs__WEBPACK_IMPORTED_MODULE_0__.isValidMotionProp)(key)) ||\n // If trying to use native HTML drag events, forward drag listeners\n (props[\"draggable\"] && key.startsWith(\"onDrag\"))) {\n filteredProps[key] = props[key];\n }\n }\n return filteredProps;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9maWx0ZXItcHJvcHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF5RTs7QUFFekUsOEJBQThCLCtFQUFpQjtBQUMvQztBQUNBO0FBQ0E7QUFDQTtBQUNBLHFEQUFxRCwrRUFBaUI7QUFDdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDRDQUE0QywrRUFBaUI7QUFDN0Qsd0JBQXdCLCtFQUFpQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFZ0QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3V0aWxzL2ZpbHRlci1wcm9wcy5tanM/NzU3MCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1ZhbGlkTW90aW9uUHJvcCB9IGZyb20gJy4uLy4uLy4uL21vdGlvbi91dGlscy92YWxpZC1wcm9wLm1qcyc7XG5cbmxldCBzaG91bGRGb3J3YXJkID0gKGtleSkgPT4gIWlzVmFsaWRNb3Rpb25Qcm9wKGtleSk7XG5mdW5jdGlvbiBsb2FkRXh0ZXJuYWxJc1ZhbGlkUHJvcChpc1ZhbGlkUHJvcCkge1xuICAgIGlmICghaXNWYWxpZFByb3ApXG4gICAgICAgIHJldHVybjtcbiAgICAvLyBFeHBsaWNpdGx5IGZpbHRlciBvdXIgZXZlbnRzXG4gICAgc2hvdWxkRm9yd2FyZCA9IChrZXkpID0+IGtleS5zdGFydHNXaXRoKFwib25cIikgPyAhaXNWYWxpZE1vdGlvblByb3Aoa2V5KSA6IGlzVmFsaWRQcm9wKGtleSk7XG59XG4vKipcbiAqIEVtb3Rpb24gYW5kIFN0eWxlZCBDb21wb25lbnRzIGJvdGggYWxsb3cgdXNlcnMgdG8gcGFzcyB0aHJvdWdoIGFyYml0cmFyeSBwcm9wcyB0byB0aGVpciBjb21wb25lbnRzXG4gKiB0byBkeW5hbWljYWxseSBnZW5lcmF0ZSBDU1MuIFRoZXkgYm90aCB1c2UgdGhlIGBAZW1vdGlvbi9pcy1wcm9wLXZhbGlkYCBwYWNrYWdlIHRvIGRldGVybWluZSB3aGljaFxuICogb2YgdGhlc2Ugc2hvdWxkIGJlIHBhc3NlZCB0byB0aGUgdW5kZXJseWluZyBET00gbm9kZS5cbiAqXG4gKiBIb3dldmVyLCB3aGVuIHN0eWxpbmcgYSBNb3Rpb24gY29tcG9uZW50IGBzdHlsZWQobW90aW9uLmRpdilgLCBib3RoIHBhY2thZ2VzIHBhc3MgdGhyb3VnaCAqYWxsKiBwcm9wc1xuICogYXMgaXQncyBzZWVuIGFzIGFuIGFyYml0cmFyeSBjb21wb25lbnQgcmF0aGVyIHRoYW4gYSBET00gbm9kZS4gTW90aW9uIG9ubHkgYWxsb3dzIGFyYml0cmFyeSBwcm9wc1xuICogcGFzc2VkIHRocm91Z2ggdGhlIGBjdXN0b21gIHByb3Agc28gaXQgZG9lc24ndCAqbmVlZCogdGhlIHBheWxvYWQgb3IgY29tcHV0YXRpb25hbCBvdmVyaGVhZCBvZlxuICogYEBlbW90aW9uL2lzLXByb3AtdmFsaWRgLCBob3dldmVyIHRvIGZpeCB0aGlzIHByb2JsZW0gd2UgbmVlZCB0byB1c2UgaXQuXG4gKlxuICogQnkgbWFraW5nIGl0IGFuIG9wdGlvbmFsRGVwZW5kZW5jeSB3ZSBjYW4gb2ZmZXIgdGhpcyBmdW5jdGlvbmFsaXR5IG9ubHkgaW4gdGhlIHNpdHVhdGlvbnMgd2hlcmUgaXQnc1xuICogYWN0dWFsbHkgcmVxdWlyZWQuXG4gKi9cbnRyeSB7XG4gICAgLyoqXG4gICAgICogV2UgYXR0ZW1wdCB0byBpbXBvcnQgdGhpcyBwYWNrYWdlIGJ1dCByZXF1aXJlIHdvbid0IGJlIGRlZmluZWQgaW4gZXNtIGVudmlyb25tZW50cywgaW4gdGhhdCBjYXNlXG4gICAgICogaXNQcm9wVmFsaWQgd2lsbCBoYXZlIHRvIGJlIHByb3ZpZGVkIHZpYSBgTW90aW9uQ29udGV4dGAuIEluIGEgNi4wLjAgdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgcmVtb3ZlZFxuICAgICAqIGluIGZhdm91ciBvZiBleHBsaWNpdCBpbmplY3Rpb24uXG4gICAgICovXG4gICAgbG9hZEV4dGVybmFsSXNWYWxpZFByb3AocmVxdWlyZShcIkBlbW90aW9uL2lzLXByb3AtdmFsaWRcIikuZGVmYXVsdCk7XG59XG5jYXRjaCAoX2EpIHtcbiAgICAvLyBXZSBkb24ndCBuZWVkIHRvIGFjdHVhbGx5IGRvIGFueXRoaW5nIGhlcmUgLSB0aGUgZmFsbGJhY2sgaXMgdGhlIGV4aXN0aW5nIGBpc1Byb3BWYWxpZGAuXG59XG5mdW5jdGlvbiBmaWx0ZXJQcm9wcyhwcm9wcywgaXNEb20sIGZvcndhcmRNb3Rpb25Qcm9wcykge1xuICAgIGNvbnN0IGZpbHRlcmVkUHJvcHMgPSB7fTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBwcm9wcykge1xuICAgICAgICAvKipcbiAgICAgICAgICogdmFsdWVzIGlzIGNvbnNpZGVyZWQgYSB2YWxpZCBwcm9wIGJ5IEVtb3Rpb24sIHNvIGlmIGl0J3MgcHJlc2VudFxuICAgICAgICAgKiB0aGlzIHdpbGwgYmUgcmVuZGVyZWQgb3V0IHRvIHRoZSBET00gdW5sZXNzIGV4cGxpY2l0bHkgZmlsdGVyZWQuXG4gICAgICAgICAqXG4gICAgICAgICAqIFdlIGNoZWNrIHRoZSB0eXBlIGFzIGl0IGNvdWxkIGJlIHVzZWQgd2l0aCB0aGUgYGZlQ29sb3JNYXRyaXhgXG4gICAgICAgICAqIGVsZW1lbnQsIHdoaWNoIHdlIHN1cHBvcnQuXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoa2V5ID09PSBcInZhbHVlc1wiICYmIHR5cGVvZiBwcm9wcy52YWx1ZXMgPT09IFwib2JqZWN0XCIpXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgaWYgKHNob3VsZEZvcndhcmQoa2V5KSB8fFxuICAgICAgICAgICAgKGZvcndhcmRNb3Rpb25Qcm9wcyA9PT0gdHJ1ZSAmJiBpc1ZhbGlkTW90aW9uUHJvcChrZXkpKSB8fFxuICAgICAgICAgICAgKCFpc0RvbSAmJiAhaXNWYWxpZE1vdGlvblByb3Aoa2V5KSkgfHxcbiAgICAgICAgICAgIC8vIElmIHRyeWluZyB0byB1c2UgbmF0aXZlIEhUTUwgZHJhZyBldmVudHMsIGZvcndhcmQgZHJhZyBsaXN0ZW5lcnNcbiAgICAgICAgICAgIChwcm9wc1tcImRyYWdnYWJsZVwiXSAmJiBrZXkuc3RhcnRzV2l0aChcIm9uRHJhZ1wiKSkpIHtcbiAgICAgICAgICAgIGZpbHRlcmVkUHJvcHNba2V5XSA9IHByb3BzW2tleV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlcmVkUHJvcHM7XG59XG5cbmV4cG9ydCB7IGZpbHRlclByb3BzLCBsb2FkRXh0ZXJuYWxJc1ZhbGlkUHJvcCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ cssVariableRegex: function() { return /* binding */ cssVariableRegex; },\n/* harmony export */ isCSSVariableName: function() { return /* binding */ isCSSVariableName; },\n/* harmony export */ isCSSVariableToken: function() { return /* binding */ isCSSVariableToken; }\n/* harmony export */ });\nconst checkStringStartsWith = (token) => (key) => typeof key === \"string\" && key.startsWith(token);\nconst isCSSVariableName = checkStringStartsWith(\"--\");\nconst isCSSVariableToken = checkStringStartsWith(\"var(--\");\nconst cssVariableRegex = /var\\s*\\(\\s*--[\\w-]+(\\s*,\\s*(?:(?:[^)(]|\\((?:[^)(]+|\\([^)(]*\\))*\\))*)+)?\\s*\\)/g;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9pcy1jc3MtdmFyaWFibGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBOztBQUVtRSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vdXRpbHMvaXMtY3NzLXZhcmlhYmxlLm1qcz8yNWIwIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNoZWNrU3RyaW5nU3RhcnRzV2l0aCA9ICh0b2tlbikgPT4gKGtleSkgPT4gdHlwZW9mIGtleSA9PT0gXCJzdHJpbmdcIiAmJiBrZXkuc3RhcnRzV2l0aCh0b2tlbik7XG5jb25zdCBpc0NTU1ZhcmlhYmxlTmFtZSA9IGNoZWNrU3RyaW5nU3RhcnRzV2l0aChcIi0tXCIpO1xuY29uc3QgaXNDU1NWYXJpYWJsZVRva2VuID0gY2hlY2tTdHJpbmdTdGFydHNXaXRoKFwidmFyKC0tXCIpO1xuY29uc3QgY3NzVmFyaWFibGVSZWdleCA9IC92YXJcXHMqXFwoXFxzKi0tW1xcdy1dKyhcXHMqLFxccyooPzooPzpbXikoXXxcXCgoPzpbXikoXSt8XFwoW14pKF0qXFwpKSpcXCkpKikrKT9cXHMqXFwpL2c7XG5cbmV4cG9ydCB7IGNzc1ZhcmlhYmxlUmVnZXgsIGlzQ1NTVmFyaWFibGVOYW1lLCBpc0NTU1ZhcmlhYmxlVG9rZW4gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isSVGComponent: function() { return /* binding */ isSVGComponent; }\n/* harmony export */ });\n/* harmony import */ var _svg_lowercase_elements_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../svg/lowercase-elements.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs\");\n\n\nfunction isSVGComponent(Component) {\n if (\n /**\n * If it's not a string, it's a custom React component. Currently we only support\n * HTML custom React components.\n */\n typeof Component !== \"string\" ||\n /**\n * If it contains a dash, the element is a custom HTML webcomponent.\n */\n Component.includes(\"-\")) {\n return false;\n }\n else if (\n /**\n * If it's in our list of lowercase SVG tags, it's an SVG component\n */\n _svg_lowercase_elements_mjs__WEBPACK_IMPORTED_MODULE_0__.lowercaseSVGElements.indexOf(Component) > -1 ||\n /**\n * If it contains a capital letter, it's an SVG component\n */\n /[A-Z]/.test(Component)) {\n return true;\n }\n return false;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9pcy1zdmctY29tcG9uZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF3RTs7QUFFeEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUksNkVBQW9CO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTBCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9pcy1zdmctY29tcG9uZW50Lm1qcz82M2M5Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxvd2VyY2FzZVNWR0VsZW1lbnRzIH0gZnJvbSAnLi4vLi4vc3ZnL2xvd2VyY2FzZS1lbGVtZW50cy5tanMnO1xuXG5mdW5jdGlvbiBpc1NWR0NvbXBvbmVudChDb21wb25lbnQpIHtcbiAgICBpZiAoXG4gICAgLyoqXG4gICAgICogSWYgaXQncyBub3QgYSBzdHJpbmcsIGl0J3MgYSBjdXN0b20gUmVhY3QgY29tcG9uZW50LiBDdXJyZW50bHkgd2Ugb25seSBzdXBwb3J0XG4gICAgICogSFRNTCBjdXN0b20gUmVhY3QgY29tcG9uZW50cy5cbiAgICAgKi9cbiAgICB0eXBlb2YgQ29tcG9uZW50ICE9PSBcInN0cmluZ1wiIHx8XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiBpdCBjb250YWlucyBhIGRhc2gsIHRoZSBlbGVtZW50IGlzIGEgY3VzdG9tIEhUTUwgd2ViY29tcG9uZW50LlxuICAgICAgICAgKi9cbiAgICAgICAgQ29tcG9uZW50LmluY2x1ZGVzKFwiLVwiKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGVsc2UgaWYgKFxuICAgIC8qKlxuICAgICAqIElmIGl0J3MgaW4gb3VyIGxpc3Qgb2YgbG93ZXJjYXNlIFNWRyB0YWdzLCBpdCdzIGFuIFNWRyBjb21wb25lbnRcbiAgICAgKi9cbiAgICBsb3dlcmNhc2VTVkdFbGVtZW50cy5pbmRleE9mKENvbXBvbmVudCkgPiAtMSB8fFxuICAgICAgICAvKipcbiAgICAgICAgICogSWYgaXQgY29udGFpbnMgYSBjYXBpdGFsIGxldHRlciwgaXQncyBhbiBTVkcgY29tcG9uZW50XG4gICAgICAgICAqL1xuICAgICAgICAvW0EtWl0vLnRlc3QoQ29tcG9uZW50KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgeyBpc1NWR0NvbXBvbmVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isSVGElement: function() { return /* binding */ isSVGElement; }\n/* harmony export */ });\nfunction isSVGElement(element) {\n return element instanceof SVGElement && element.tagName !== \"svg\";\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9pcy1zdmctZWxlbWVudC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTs7QUFFd0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3V0aWxzL2lzLXN2Zy1lbGVtZW50Lm1qcz9iMjMwIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGlzU1ZHRWxlbWVudChlbGVtZW50KSB7XG4gICAgcmV0dXJuIGVsZW1lbnQgaW5zdGFuY2VvZiBTVkdFbGVtZW50ICYmIGVsZW1lbnQudGFnTmFtZSAhPT0gXCJzdmdcIjtcbn1cblxuZXhwb3J0IHsgaXNTVkdFbGVtZW50IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ parseDomVariant: function() { return /* binding */ parseDomVariant; }\n/* harmony export */ });\n/* harmony import */ var _css_variables_conversion_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./css-variables-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs\");\n/* harmony import */ var _unit_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./unit-conversion.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs\");\n\n\n\n/**\n * Parse a DOM variant to make it animatable. This involves resolving CSS variables\n * and ensuring animations like \"20%\" => \"calc(50vw)\" are performed in pixels.\n */\nconst parseDomVariant = (visualElement, target, origin, transitionEnd) => {\n const resolved = (0,_css_variables_conversion_mjs__WEBPACK_IMPORTED_MODULE_0__.resolveCSSVariables)(visualElement, target, transitionEnd);\n target = resolved.target;\n transitionEnd = resolved.transitionEnd;\n return (0,_unit_conversion_mjs__WEBPACK_IMPORTED_MODULE_1__.unitConversion)(visualElement, target, origin, transitionEnd);\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy9wYXJzZS1kb20tdmFyaWFudC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQXFFO0FBQ2Q7O0FBRXZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsa0ZBQW1CO0FBQ3hDO0FBQ0E7QUFDQSxXQUFXLG9FQUFjO0FBQ3pCOztBQUUyQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vdXRpbHMvcGFyc2UtZG9tLXZhcmlhbnQubWpzPzc3MzYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZUNTU1ZhcmlhYmxlcyB9IGZyb20gJy4vY3NzLXZhcmlhYmxlcy1jb252ZXJzaW9uLm1qcyc7XG5pbXBvcnQgeyB1bml0Q29udmVyc2lvbiB9IGZyb20gJy4vdW5pdC1jb252ZXJzaW9uLm1qcyc7XG5cbi8qKlxuICogUGFyc2UgYSBET00gdmFyaWFudCB0byBtYWtlIGl0IGFuaW1hdGFibGUuIFRoaXMgaW52b2x2ZXMgcmVzb2x2aW5nIENTUyB2YXJpYWJsZXNcbiAqIGFuZCBlbnN1cmluZyBhbmltYXRpb25zIGxpa2UgXCIyMCVcIiA9PiBcImNhbGMoNTB2dylcIiBhcmUgcGVyZm9ybWVkIGluIHBpeGVscy5cbiAqL1xuY29uc3QgcGFyc2VEb21WYXJpYW50ID0gKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgb3JpZ2luLCB0cmFuc2l0aW9uRW5kKSA9PiB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlQ1NTVmFyaWFibGVzKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgdHJhbnNpdGlvbkVuZCk7XG4gICAgdGFyZ2V0ID0gcmVzb2x2ZWQudGFyZ2V0O1xuICAgIHRyYW5zaXRpb25FbmQgPSByZXNvbHZlZC50cmFuc2l0aW9uRW5kO1xuICAgIHJldHVybiB1bml0Q29udmVyc2lvbih2aXN1YWxFbGVtZW50LCB0YXJnZXQsIG9yaWdpbiwgdHJhbnNpdGlvbkVuZCk7XG59O1xuXG5leHBvcnQgeyBwYXJzZURvbVZhcmlhbnQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ positionalValues: function() { return /* binding */ positionalValues; },\n/* harmony export */ unitConversion: function() { return /* binding */ unitConversion; }\n/* harmony export */ });\n/* harmony import */ var _animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../animation/utils/is-keyframes-target.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs\");\n/* harmony import */ var _utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../utils/errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../value-types/dimensions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs\");\n/* harmony import */ var _utils_is_browser_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../utils/is-browser.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs\");\n/* harmony import */ var _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n\n\n\n\n\n\n\n\nconst positionalKeys = new Set([\n \"width\",\n \"height\",\n \"top\",\n \"left\",\n \"right\",\n \"bottom\",\n \"x\",\n \"y\",\n \"translateX\",\n \"translateY\",\n]);\nconst isPositionalKey = (key) => positionalKeys.has(key);\nconst hasPositionalKey = (target) => {\n return Object.keys(target).some(isPositionalKey);\n};\nconst isNumOrPxType = (v) => v === _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__.number || v === _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.px;\nconst getPosFromMatrix = (matrix, pos) => parseFloat(matrix.split(\", \")[pos]);\nconst getTranslateFromMatrix = (pos2, pos3) => (_bbox, { transform }) => {\n if (transform === \"none\" || !transform)\n return 0;\n const matrix3d = transform.match(/^matrix3d\\((.+)\\)$/);\n if (matrix3d) {\n return getPosFromMatrix(matrix3d[1], pos3);\n }\n else {\n const matrix = transform.match(/^matrix\\((.+)\\)$/);\n if (matrix) {\n return getPosFromMatrix(matrix[1], pos2);\n }\n else {\n return 0;\n }\n }\n};\nconst transformKeys = new Set([\"x\", \"y\", \"z\"]);\nconst nonTranslationalTransformKeys = _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_2__.transformPropOrder.filter((key) => !transformKeys.has(key));\nfunction removeNonTranslationalTransform(visualElement) {\n const removedTransforms = [];\n nonTranslationalTransformKeys.forEach((key) => {\n const value = visualElement.getValue(key);\n if (value !== undefined) {\n removedTransforms.push([key, value.get()]);\n value.set(key.startsWith(\"scale\") ? 1 : 0);\n }\n });\n // Apply changes to element before measurement\n if (removedTransforms.length)\n visualElement.render();\n return removedTransforms;\n}\nconst positionalValues = {\n // Dimensions\n width: ({ x }, { paddingLeft = \"0\", paddingRight = \"0\" }) => x.max - x.min - parseFloat(paddingLeft) - parseFloat(paddingRight),\n height: ({ y }, { paddingTop = \"0\", paddingBottom = \"0\" }) => y.max - y.min - parseFloat(paddingTop) - parseFloat(paddingBottom),\n top: (_bbox, { top }) => parseFloat(top),\n left: (_bbox, { left }) => parseFloat(left),\n bottom: ({ y }, { top }) => parseFloat(top) + (y.max - y.min),\n right: ({ x }, { left }) => parseFloat(left) + (x.max - x.min),\n // Transform\n x: getTranslateFromMatrix(4, 13),\n y: getTranslateFromMatrix(5, 14),\n};\n// Alias translate longform names\npositionalValues.translateX = positionalValues.x;\npositionalValues.translateY = positionalValues.y;\nconst convertChangedValueTypes = (target, visualElement, changedKeys) => {\n const originBbox = visualElement.measureViewportBox();\n const element = visualElement.current;\n const elementComputedStyle = getComputedStyle(element);\n const { display } = elementComputedStyle;\n const origin = {};\n // If the element is currently set to display: \"none\", make it visible before\n // measuring the target bounding box\n if (display === \"none\") {\n visualElement.setStaticValue(\"display\", target.display || \"block\");\n }\n /**\n * Record origins before we render and update styles\n */\n changedKeys.forEach((key) => {\n origin[key] = positionalValues[key](originBbox, elementComputedStyle);\n });\n // Apply the latest values (as set in checkAndConvertChangedValueTypes)\n visualElement.render();\n const targetBbox = visualElement.measureViewportBox();\n changedKeys.forEach((key) => {\n // Restore styles to their **calculated computed style**, not their actual\n // originally set style. This allows us to animate between equivalent pixel units.\n const value = visualElement.getValue(key);\n value && value.jump(origin[key]);\n target[key] = positionalValues[key](targetBbox, elementComputedStyle);\n });\n return target;\n};\nconst checkAndConvertChangedValueTypes = (visualElement, target, origin = {}, transitionEnd = {}) => {\n target = { ...target };\n transitionEnd = { ...transitionEnd };\n const targetPositionalKeys = Object.keys(target).filter(isPositionalKey);\n // We want to remove any transform values that could affect the element's bounding box before\n // it's measured. We'll reapply these later.\n let removedTransformValues = [];\n let hasAttemptedToRemoveTransformValues = false;\n const changedValueTypeKeys = [];\n targetPositionalKeys.forEach((key) => {\n const value = visualElement.getValue(key);\n if (!visualElement.hasValue(key))\n return;\n let from = origin[key];\n let fromType = (0,_value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__.findDimensionValueType)(from);\n const to = target[key];\n let toType;\n // TODO: The current implementation of this basically throws an error\n // if you try and do value conversion via keyframes. There's probably\n // a way of doing this but the performance implications would need greater scrutiny,\n // as it'd be doing multiple resize-remeasure operations.\n if ((0,_animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_4__.isKeyframesTarget)(to)) {\n const numKeyframes = to.length;\n const fromIndex = to[0] === null ? 1 : 0;\n from = to[fromIndex];\n fromType = (0,_value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__.findDimensionValueType)(from);\n for (let i = fromIndex; i < numKeyframes; i++) {\n /**\n * Don't allow wildcard keyframes to be used to detect\n * a difference in value types.\n */\n if (to[i] === null)\n break;\n if (!toType) {\n toType = (0,_value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__.findDimensionValueType)(to[i]);\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__.invariant)(toType === fromType ||\n (isNumOrPxType(fromType) && isNumOrPxType(toType)), \"Keyframes must be of the same dimension as the current value\");\n }\n else {\n (0,_utils_errors_mjs__WEBPACK_IMPORTED_MODULE_5__.invariant)((0,_value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__.findDimensionValueType)(to[i]) === toType, \"All keyframes must be of the same type\");\n }\n }\n }\n else {\n toType = (0,_value_types_dimensions_mjs__WEBPACK_IMPORTED_MODULE_3__.findDimensionValueType)(to);\n }\n if (fromType !== toType) {\n // If they're both just number or px, convert them both to numbers rather than\n // relying on resize/remeasure to convert (which is wasteful in this situation)\n if (isNumOrPxType(fromType) && isNumOrPxType(toType)) {\n const current = value.get();\n if (typeof current === \"string\") {\n value.set(parseFloat(current));\n }\n if (typeof to === \"string\") {\n target[key] = parseFloat(to);\n }\n else if (Array.isArray(to) && toType === _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.px) {\n target[key] = to.map(parseFloat);\n }\n }\n else if ((fromType === null || fromType === void 0 ? void 0 : fromType.transform) &&\n (toType === null || toType === void 0 ? void 0 : toType.transform) &&\n (from === 0 || to === 0)) {\n // If one or the other value is 0, it's safe to coerce it to the\n // type of the other without measurement\n if (from === 0) {\n value.set(toType.transform(from));\n }\n else {\n target[key] = fromType.transform(to);\n }\n }\n else {\n // If we're going to do value conversion via DOM measurements, we first\n // need to remove non-positional transform values that could affect the bbox measurements.\n if (!hasAttemptedToRemoveTransformValues) {\n removedTransformValues =\n removeNonTranslationalTransform(visualElement);\n hasAttemptedToRemoveTransformValues = true;\n }\n changedValueTypeKeys.push(key);\n transitionEnd[key] =\n transitionEnd[key] !== undefined\n ? transitionEnd[key]\n : target[key];\n value.jump(to);\n }\n }\n });\n if (changedValueTypeKeys.length) {\n const scrollY = changedValueTypeKeys.indexOf(\"height\") >= 0\n ? window.pageYOffset\n : null;\n const convertedTarget = convertChangedValueTypes(target, visualElement, changedValueTypeKeys);\n // If we removed transform values, reapply them before the next render\n if (removedTransformValues.length) {\n removedTransformValues.forEach(([key, value]) => {\n visualElement.getValue(key).set(value);\n });\n }\n // Reapply original values\n visualElement.render();\n // Restore scroll position\n if (_utils_is_browser_mjs__WEBPACK_IMPORTED_MODULE_6__.isBrowser && scrollY !== null) {\n window.scrollTo({ top: scrollY });\n }\n return { target: convertedTarget, transitionEnd };\n }\n else {\n return { target, transitionEnd };\n }\n};\n/**\n * Convert value types for x/y/width/height/top/left/bottom/right\n *\n * Allows animation between `'auto'` -> `'100%'` or `0` -> `'calc(50% - 10vw)'`\n *\n * @internal\n */\nfunction unitConversion(visualElement, target, origin, transitionEnd) {\n return hasPositionalKey(target)\n ? checkAndConvertChangedValueTypes(visualElement, target, origin, transitionEnd)\n : { target, transitionEnd };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy91bml0LWNvbnZlcnNpb24ubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFxRjtBQUMvQjtBQUNjO0FBQ0c7QUFDYjtBQUNNO0FBQ0o7O0FBRTVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUNBQW1DLGtFQUFNLFVBQVUsOERBQUU7QUFDckQ7QUFDQSx5REFBeUQsV0FBVztBQUNwRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLHlFQUFrQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsY0FBYyxHQUFHLElBQUksdUNBQXVDO0FBQzVELGVBQWUsR0FBRyxJQUFJLHVDQUF1QztBQUM3RCxtQkFBbUIsS0FBSztBQUN4QixvQkFBb0IsTUFBTTtBQUMxQixlQUFlLEdBQUcsSUFBSSxLQUFLO0FBQzNCLGNBQWMsR0FBRyxJQUFJLE1BQU07QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksVUFBVTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsNEVBQTRFLG9CQUFvQjtBQUNoRyxlQUFlO0FBQ2Ysc0JBQXNCO0FBQ3RCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1QkFBdUIsbUZBQXNCO0FBQzdDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksMkZBQWlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLHVCQUF1QixtRkFBc0I7QUFDN0Msb0NBQW9DLGtCQUFrQjtBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDZCQUE2QixtRkFBc0I7QUFDbkQsb0JBQW9CLDREQUFTO0FBQzdCO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQiw0REFBUyxDQUFDLG1GQUFzQjtBQUNwRDtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixtRkFBc0I7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseURBQXlELDhEQUFFO0FBQzNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksNERBQVM7QUFDckIsOEJBQThCLGNBQWM7QUFDNUM7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZO0FBQ1o7O0FBRTRDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS91dGlscy91bml0LWNvbnZlcnNpb24ubWpzPzNjZGEiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNLZXlmcmFtZXNUYXJnZXQgfSBmcm9tICcuLi8uLi8uLi9hbmltYXRpb24vdXRpbHMvaXMta2V5ZnJhbWVzLXRhcmdldC5tanMnO1xuaW1wb3J0IHsgaW52YXJpYW50IH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZXJyb3JzLm1qcyc7XG5pbXBvcnQgeyB0cmFuc2Zvcm1Qcm9wT3JkZXIgfSBmcm9tICcuLi8uLi9odG1sL3V0aWxzL3RyYW5zZm9ybS5tanMnO1xuaW1wb3J0IHsgZmluZERpbWVuc2lvblZhbHVlVHlwZSB9IGZyb20gJy4uL3ZhbHVlLXR5cGVzL2RpbWVuc2lvbnMubWpzJztcbmltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2lzLWJyb3dzZXIubWpzJztcbmltcG9ydCB7IG51bWJlciB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL251bWJlcnMvaW5kZXgubWpzJztcbmltcG9ydCB7IHB4IH0gZnJvbSAnLi4vLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuXG5jb25zdCBwb3NpdGlvbmFsS2V5cyA9IG5ldyBTZXQoW1xuICAgIFwid2lkdGhcIixcbiAgICBcImhlaWdodFwiLFxuICAgIFwidG9wXCIsXG4gICAgXCJsZWZ0XCIsXG4gICAgXCJyaWdodFwiLFxuICAgIFwiYm90dG9tXCIsXG4gICAgXCJ4XCIsXG4gICAgXCJ5XCIsXG4gICAgXCJ0cmFuc2xhdGVYXCIsXG4gICAgXCJ0cmFuc2xhdGVZXCIsXG5dKTtcbmNvbnN0IGlzUG9zaXRpb25hbEtleSA9IChrZXkpID0+IHBvc2l0aW9uYWxLZXlzLmhhcyhrZXkpO1xuY29uc3QgaGFzUG9zaXRpb25hbEtleSA9ICh0YXJnZXQpID0+IHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGFyZ2V0KS5zb21lKGlzUG9zaXRpb25hbEtleSk7XG59O1xuY29uc3QgaXNOdW1PclB4VHlwZSA9ICh2KSA9PiB2ID09PSBudW1iZXIgfHwgdiA9PT0gcHg7XG5jb25zdCBnZXRQb3NGcm9tTWF0cml4ID0gKG1hdHJpeCwgcG9zKSA9PiBwYXJzZUZsb2F0KG1hdHJpeC5zcGxpdChcIiwgXCIpW3Bvc10pO1xuY29uc3QgZ2V0VHJhbnNsYXRlRnJvbU1hdHJpeCA9IChwb3MyLCBwb3MzKSA9PiAoX2Jib3gsIHsgdHJhbnNmb3JtIH0pID0+IHtcbiAgICBpZiAodHJhbnNmb3JtID09PSBcIm5vbmVcIiB8fCAhdHJhbnNmb3JtKVxuICAgICAgICByZXR1cm4gMDtcbiAgICBjb25zdCBtYXRyaXgzZCA9IHRyYW5zZm9ybS5tYXRjaCgvXm1hdHJpeDNkXFwoKC4rKVxcKSQvKTtcbiAgICBpZiAobWF0cml4M2QpIHtcbiAgICAgICAgcmV0dXJuIGdldFBvc0Zyb21NYXRyaXgobWF0cml4M2RbMV0sIHBvczMpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3QgbWF0cml4ID0gdHJhbnNmb3JtLm1hdGNoKC9ebWF0cml4XFwoKC4rKVxcKSQvKTtcbiAgICAgICAgaWYgKG1hdHJpeCkge1xuICAgICAgICAgICAgcmV0dXJuIGdldFBvc0Zyb21NYXRyaXgobWF0cml4WzFdLCBwb3MyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG4gICAgfVxufTtcbmNvbnN0IHRyYW5zZm9ybUtleXMgPSBuZXcgU2V0KFtcInhcIiwgXCJ5XCIsIFwielwiXSk7XG5jb25zdCBub25UcmFuc2xhdGlvbmFsVHJhbnNmb3JtS2V5cyA9IHRyYW5zZm9ybVByb3BPcmRlci5maWx0ZXIoKGtleSkgPT4gIXRyYW5zZm9ybUtleXMuaGFzKGtleSkpO1xuZnVuY3Rpb24gcmVtb3ZlTm9uVHJhbnNsYXRpb25hbFRyYW5zZm9ybSh2aXN1YWxFbGVtZW50KSB7XG4gICAgY29uc3QgcmVtb3ZlZFRyYW5zZm9ybXMgPSBbXTtcbiAgICBub25UcmFuc2xhdGlvbmFsVHJhbnNmb3JtS2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2aXN1YWxFbGVtZW50LmdldFZhbHVlKGtleSk7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZW1vdmVkVHJhbnNmb3Jtcy5wdXNoKFtrZXksIHZhbHVlLmdldCgpXSk7XG4gICAgICAgICAgICB2YWx1ZS5zZXQoa2V5LnN0YXJ0c1dpdGgoXCJzY2FsZVwiKSA/IDEgOiAwKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIC8vIEFwcGx5IGNoYW5nZXMgdG8gZWxlbWVudCBiZWZvcmUgbWVhc3VyZW1lbnRcbiAgICBpZiAocmVtb3ZlZFRyYW5zZm9ybXMubGVuZ3RoKVxuICAgICAgICB2aXN1YWxFbGVtZW50LnJlbmRlcigpO1xuICAgIHJldHVybiByZW1vdmVkVHJhbnNmb3Jtcztcbn1cbmNvbnN0IHBvc2l0aW9uYWxWYWx1ZXMgPSB7XG4gICAgLy8gRGltZW5zaW9uc1xuICAgIHdpZHRoOiAoeyB4IH0sIHsgcGFkZGluZ0xlZnQgPSBcIjBcIiwgcGFkZGluZ1JpZ2h0ID0gXCIwXCIgfSkgPT4geC5tYXggLSB4Lm1pbiAtIHBhcnNlRmxvYXQocGFkZGluZ0xlZnQpIC0gcGFyc2VGbG9hdChwYWRkaW5nUmlnaHQpLFxuICAgIGhlaWdodDogKHsgeSB9LCB7IHBhZGRpbmdUb3AgPSBcIjBcIiwgcGFkZGluZ0JvdHRvbSA9IFwiMFwiIH0pID0+IHkubWF4IC0geS5taW4gLSBwYXJzZUZsb2F0KHBhZGRpbmdUb3ApIC0gcGFyc2VGbG9hdChwYWRkaW5nQm90dG9tKSxcbiAgICB0b3A6IChfYmJveCwgeyB0b3AgfSkgPT4gcGFyc2VGbG9hdCh0b3ApLFxuICAgIGxlZnQ6IChfYmJveCwgeyBsZWZ0IH0pID0+IHBhcnNlRmxvYXQobGVmdCksXG4gICAgYm90dG9tOiAoeyB5IH0sIHsgdG9wIH0pID0+IHBhcnNlRmxvYXQodG9wKSArICh5Lm1heCAtIHkubWluKSxcbiAgICByaWdodDogKHsgeCB9LCB7IGxlZnQgfSkgPT4gcGFyc2VGbG9hdChsZWZ0KSArICh4Lm1heCAtIHgubWluKSxcbiAgICAvLyBUcmFuc2Zvcm1cbiAgICB4OiBnZXRUcmFuc2xhdGVGcm9tTWF0cml4KDQsIDEzKSxcbiAgICB5OiBnZXRUcmFuc2xhdGVGcm9tTWF0cml4KDUsIDE0KSxcbn07XG4vLyBBbGlhcyB0cmFuc2xhdGUgbG9uZ2Zvcm0gbmFtZXNcbnBvc2l0aW9uYWxWYWx1ZXMudHJhbnNsYXRlWCA9IHBvc2l0aW9uYWxWYWx1ZXMueDtcbnBvc2l0aW9uYWxWYWx1ZXMudHJhbnNsYXRlWSA9IHBvc2l0aW9uYWxWYWx1ZXMueTtcbmNvbnN0IGNvbnZlcnRDaGFuZ2VkVmFsdWVUeXBlcyA9ICh0YXJnZXQsIHZpc3VhbEVsZW1lbnQsIGNoYW5nZWRLZXlzKSA9PiB7XG4gICAgY29uc3Qgb3JpZ2luQmJveCA9IHZpc3VhbEVsZW1lbnQubWVhc3VyZVZpZXdwb3J0Qm94KCk7XG4gICAgY29uc3QgZWxlbWVudCA9IHZpc3VhbEVsZW1lbnQuY3VycmVudDtcbiAgICBjb25zdCBlbGVtZW50Q29tcHV0ZWRTdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgY29uc3QgeyBkaXNwbGF5IH0gPSBlbGVtZW50Q29tcHV0ZWRTdHlsZTtcbiAgICBjb25zdCBvcmlnaW4gPSB7fTtcbiAgICAvLyBJZiB0aGUgZWxlbWVudCBpcyBjdXJyZW50bHkgc2V0IHRvIGRpc3BsYXk6IFwibm9uZVwiLCBtYWtlIGl0IHZpc2libGUgYmVmb3JlXG4gICAgLy8gbWVhc3VyaW5nIHRoZSB0YXJnZXQgYm91bmRpbmcgYm94XG4gICAgaWYgKGRpc3BsYXkgPT09IFwibm9uZVwiKSB7XG4gICAgICAgIHZpc3VhbEVsZW1lbnQuc2V0U3RhdGljVmFsdWUoXCJkaXNwbGF5XCIsIHRhcmdldC5kaXNwbGF5IHx8IFwiYmxvY2tcIik7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJlY29yZCBvcmlnaW5zIGJlZm9yZSB3ZSByZW5kZXIgYW5kIHVwZGF0ZSBzdHlsZXNcbiAgICAgKi9cbiAgICBjaGFuZ2VkS2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgb3JpZ2luW2tleV0gPSBwb3NpdGlvbmFsVmFsdWVzW2tleV0ob3JpZ2luQmJveCwgZWxlbWVudENvbXB1dGVkU3R5bGUpO1xuICAgIH0pO1xuICAgIC8vIEFwcGx5IHRoZSBsYXRlc3QgdmFsdWVzIChhcyBzZXQgaW4gY2hlY2tBbmRDb252ZXJ0Q2hhbmdlZFZhbHVlVHlwZXMpXG4gICAgdmlzdWFsRWxlbWVudC5yZW5kZXIoKTtcbiAgICBjb25zdCB0YXJnZXRCYm94ID0gdmlzdWFsRWxlbWVudC5tZWFzdXJlVmlld3BvcnRCb3goKTtcbiAgICBjaGFuZ2VkS2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgLy8gUmVzdG9yZSBzdHlsZXMgdG8gdGhlaXIgKipjYWxjdWxhdGVkIGNvbXB1dGVkIHN0eWxlKiosIG5vdCB0aGVpciBhY3R1YWxcbiAgICAgICAgLy8gb3JpZ2luYWxseSBzZXQgc3R5bGUuIFRoaXMgYWxsb3dzIHVzIHRvIGFuaW1hdGUgYmV0d2VlbiBlcXVpdmFsZW50IHBpeGVsIHVuaXRzLlxuICAgICAgICBjb25zdCB2YWx1ZSA9IHZpc3VhbEVsZW1lbnQuZ2V0VmFsdWUoa2V5KTtcbiAgICAgICAgdmFsdWUgJiYgdmFsdWUuanVtcChvcmlnaW5ba2V5XSk7XG4gICAgICAgIHRhcmdldFtrZXldID0gcG9zaXRpb25hbFZhbHVlc1trZXldKHRhcmdldEJib3gsIGVsZW1lbnRDb21wdXRlZFN0eWxlKTtcbiAgICB9KTtcbiAgICByZXR1cm4gdGFyZ2V0O1xufTtcbmNvbnN0IGNoZWNrQW5kQ29udmVydENoYW5nZWRWYWx1ZVR5cGVzID0gKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgb3JpZ2luID0ge30sIHRyYW5zaXRpb25FbmQgPSB7fSkgPT4ge1xuICAgIHRhcmdldCA9IHsgLi4udGFyZ2V0IH07XG4gICAgdHJhbnNpdGlvbkVuZCA9IHsgLi4udHJhbnNpdGlvbkVuZCB9O1xuICAgIGNvbnN0IHRhcmdldFBvc2l0aW9uYWxLZXlzID0gT2JqZWN0LmtleXModGFyZ2V0KS5maWx0ZXIoaXNQb3NpdGlvbmFsS2V5KTtcbiAgICAvLyBXZSB3YW50IHRvIHJlbW92ZSBhbnkgdHJhbnNmb3JtIHZhbHVlcyB0aGF0IGNvdWxkIGFmZmVjdCB0aGUgZWxlbWVudCdzIGJvdW5kaW5nIGJveCBiZWZvcmVcbiAgICAvLyBpdCdzIG1lYXN1cmVkLiBXZSdsbCByZWFwcGx5IHRoZXNlIGxhdGVyLlxuICAgIGxldCByZW1vdmVkVHJhbnNmb3JtVmFsdWVzID0gW107XG4gICAgbGV0IGhhc0F0dGVtcHRlZFRvUmVtb3ZlVHJhbnNmb3JtVmFsdWVzID0gZmFsc2U7XG4gICAgY29uc3QgY2hhbmdlZFZhbHVlVHlwZUtleXMgPSBbXTtcbiAgICB0YXJnZXRQb3NpdGlvbmFsS2V5cy5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2aXN1YWxFbGVtZW50LmdldFZhbHVlKGtleSk7XG4gICAgICAgIGlmICghdmlzdWFsRWxlbWVudC5oYXNWYWx1ZShrZXkpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgZnJvbSA9IG9yaWdpbltrZXldO1xuICAgICAgICBsZXQgZnJvbVR5cGUgPSBmaW5kRGltZW5zaW9uVmFsdWVUeXBlKGZyb20pO1xuICAgICAgICBjb25zdCB0byA9IHRhcmdldFtrZXldO1xuICAgICAgICBsZXQgdG9UeXBlO1xuICAgICAgICAvLyBUT0RPOiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzIGJhc2ljYWxseSB0aHJvd3MgYW4gZXJyb3JcbiAgICAgICAgLy8gaWYgeW91IHRyeSBhbmQgZG8gdmFsdWUgY29udmVyc2lvbiB2aWEga2V5ZnJhbWVzLiBUaGVyZSdzIHByb2JhYmx5XG4gICAgICAgIC8vIGEgd2F5IG9mIGRvaW5nIHRoaXMgYnV0IHRoZSBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnMgd291bGQgbmVlZCBncmVhdGVyIHNjcnV0aW55LFxuICAgICAgICAvLyBhcyBpdCdkIGJlIGRvaW5nIG11bHRpcGxlIHJlc2l6ZS1yZW1lYXN1cmUgb3BlcmF0aW9ucy5cbiAgICAgICAgaWYgKGlzS2V5ZnJhbWVzVGFyZ2V0KHRvKSkge1xuICAgICAgICAgICAgY29uc3QgbnVtS2V5ZnJhbWVzID0gdG8ubGVuZ3RoO1xuICAgICAgICAgICAgY29uc3QgZnJvbUluZGV4ID0gdG9bMF0gPT09IG51bGwgPyAxIDogMDtcbiAgICAgICAgICAgIGZyb20gPSB0b1tmcm9tSW5kZXhdO1xuICAgICAgICAgICAgZnJvbVR5cGUgPSBmaW5kRGltZW5zaW9uVmFsdWVUeXBlKGZyb20pO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IGZyb21JbmRleDsgaSA8IG51bUtleWZyYW1lczsgaSsrKSB7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogRG9uJ3QgYWxsb3cgd2lsZGNhcmQga2V5ZnJhbWVzIHRvIGJlIHVzZWQgdG8gZGV0ZWN0XG4gICAgICAgICAgICAgICAgICogYSBkaWZmZXJlbmNlIGluIHZhbHVlIHR5cGVzLlxuICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgIGlmICh0b1tpXSA9PT0gbnVsbClcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaWYgKCF0b1R5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9UeXBlID0gZmluZERpbWVuc2lvblZhbHVlVHlwZSh0b1tpXSk7XG4gICAgICAgICAgICAgICAgICAgIGludmFyaWFudCh0b1R5cGUgPT09IGZyb21UeXBlIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAoaXNOdW1PclB4VHlwZShmcm9tVHlwZSkgJiYgaXNOdW1PclB4VHlwZSh0b1R5cGUpKSwgXCJLZXlmcmFtZXMgbXVzdCBiZSBvZiB0aGUgc2FtZSBkaW1lbnNpb24gYXMgdGhlIGN1cnJlbnQgdmFsdWVcIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbnZhcmlhbnQoZmluZERpbWVuc2lvblZhbHVlVHlwZSh0b1tpXSkgPT09IHRvVHlwZSwgXCJBbGwga2V5ZnJhbWVzIG11c3QgYmUgb2YgdGhlIHNhbWUgdHlwZVwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0b1R5cGUgPSBmaW5kRGltZW5zaW9uVmFsdWVUeXBlKHRvKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoZnJvbVR5cGUgIT09IHRvVHlwZSkge1xuICAgICAgICAgICAgLy8gSWYgdGhleSdyZSBib3RoIGp1c3QgbnVtYmVyIG9yIHB4LCBjb252ZXJ0IHRoZW0gYm90aCB0byBudW1iZXJzIHJhdGhlciB0aGFuXG4gICAgICAgICAgICAvLyByZWx5aW5nIG9uIHJlc2l6ZS9yZW1lYXN1cmUgdG8gY29udmVydCAod2hpY2ggaXMgd2FzdGVmdWwgaW4gdGhpcyBzaXR1YXRpb24pXG4gICAgICAgICAgICBpZiAoaXNOdW1PclB4VHlwZShmcm9tVHlwZSkgJiYgaXNOdW1PclB4VHlwZSh0b1R5cGUpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IHZhbHVlLmdldCgpO1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5zZXQocGFyc2VGbG9hdChjdXJyZW50KSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdG8gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0W2tleV0gPSBwYXJzZUZsb2F0KHRvKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0bykgJiYgdG9UeXBlID09PSBweCkge1xuICAgICAgICAgICAgICAgICAgICB0YXJnZXRba2V5XSA9IHRvLm1hcChwYXJzZUZsb2F0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICgoZnJvbVR5cGUgPT09IG51bGwgfHwgZnJvbVR5cGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGZyb21UeXBlLnRyYW5zZm9ybSkgJiZcbiAgICAgICAgICAgICAgICAodG9UeXBlID09PSBudWxsIHx8IHRvVHlwZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogdG9UeXBlLnRyYW5zZm9ybSkgJiZcbiAgICAgICAgICAgICAgICAoZnJvbSA9PT0gMCB8fCB0byA9PT0gMCkpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiBvbmUgb3IgdGhlIG90aGVyIHZhbHVlIGlzIDAsIGl0J3Mgc2FmZSB0byBjb2VyY2UgaXQgdG8gdGhlXG4gICAgICAgICAgICAgICAgLy8gdHlwZSBvZiB0aGUgb3RoZXIgd2l0aG91dCBtZWFzdXJlbWVudFxuICAgICAgICAgICAgICAgIGlmIChmcm9tID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlLnNldCh0b1R5cGUudHJhbnNmb3JtKGZyb20pKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFtrZXldID0gZnJvbVR5cGUudHJhbnNmb3JtKHRvKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSdyZSBnb2luZyB0byBkbyB2YWx1ZSBjb252ZXJzaW9uIHZpYSBET00gbWVhc3VyZW1lbnRzLCB3ZSBmaXJzdFxuICAgICAgICAgICAgICAgIC8vIG5lZWQgdG8gcmVtb3ZlIG5vbi1wb3NpdGlvbmFsIHRyYW5zZm9ybSB2YWx1ZXMgdGhhdCBjb3VsZCBhZmZlY3QgdGhlIGJib3ggbWVhc3VyZW1lbnRzLlxuICAgICAgICAgICAgICAgIGlmICghaGFzQXR0ZW1wdGVkVG9SZW1vdmVUcmFuc2Zvcm1WYWx1ZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZFRyYW5zZm9ybVZhbHVlcyA9XG4gICAgICAgICAgICAgICAgICAgICAgICByZW1vdmVOb25UcmFuc2xhdGlvbmFsVHJhbnNmb3JtKHZpc3VhbEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgICBoYXNBdHRlbXB0ZWRUb1JlbW92ZVRyYW5zZm9ybVZhbHVlcyA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNoYW5nZWRWYWx1ZVR5cGVLZXlzLnB1c2goa2V5KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRW5kW2tleV0gPVxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRW5kW2tleV0gIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICAgICAgPyB0cmFuc2l0aW9uRW5kW2tleV1cbiAgICAgICAgICAgICAgICAgICAgICAgIDogdGFyZ2V0W2tleV07XG4gICAgICAgICAgICAgICAgdmFsdWUuanVtcCh0byk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoY2hhbmdlZFZhbHVlVHlwZUtleXMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHNjcm9sbFkgPSBjaGFuZ2VkVmFsdWVUeXBlS2V5cy5pbmRleE9mKFwiaGVpZ2h0XCIpID49IDBcbiAgICAgICAgICAgID8gd2luZG93LnBhZ2VZT2Zmc2V0XG4gICAgICAgICAgICA6IG51bGw7XG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZFRhcmdldCA9IGNvbnZlcnRDaGFuZ2VkVmFsdWVUeXBlcyh0YXJnZXQsIHZpc3VhbEVsZW1lbnQsIGNoYW5nZWRWYWx1ZVR5cGVLZXlzKTtcbiAgICAgICAgLy8gSWYgd2UgcmVtb3ZlZCB0cmFuc2Zvcm0gdmFsdWVzLCByZWFwcGx5IHRoZW0gYmVmb3JlIHRoZSBuZXh0IHJlbmRlclxuICAgICAgICBpZiAocmVtb3ZlZFRyYW5zZm9ybVZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJlbW92ZWRUcmFuc2Zvcm1WYWx1ZXMuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICAgICAgdmlzdWFsRWxlbWVudC5nZXRWYWx1ZShrZXkpLnNldCh2YWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBSZWFwcGx5IG9yaWdpbmFsIHZhbHVlc1xuICAgICAgICB2aXN1YWxFbGVtZW50LnJlbmRlcigpO1xuICAgICAgICAvLyBSZXN0b3JlIHNjcm9sbCBwb3NpdGlvblxuICAgICAgICBpZiAoaXNCcm93c2VyICYmIHNjcm9sbFkgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogc2Nyb2xsWSB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyB0YXJnZXQ6IGNvbnZlcnRlZFRhcmdldCwgdHJhbnNpdGlvbkVuZCB9O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHsgdGFyZ2V0LCB0cmFuc2l0aW9uRW5kIH07XG4gICAgfVxufTtcbi8qKlxuICogQ29udmVydCB2YWx1ZSB0eXBlcyBmb3IgeC95L3dpZHRoL2hlaWdodC90b3AvbGVmdC9ib3R0b20vcmlnaHRcbiAqXG4gKiBBbGxvd3MgYW5pbWF0aW9uIGJldHdlZW4gYCdhdXRvJ2AgLT4gYCcxMDAlJ2Agb3IgYDBgIC0+IGAnY2FsYyg1MCUgLSAxMHZ3KSdgXG4gKlxuICogQGludGVybmFsXG4gKi9cbmZ1bmN0aW9uIHVuaXRDb252ZXJzaW9uKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgb3JpZ2luLCB0cmFuc2l0aW9uRW5kKSB7XG4gICAgcmV0dXJuIGhhc1Bvc2l0aW9uYWxLZXkodGFyZ2V0KVxuICAgICAgICA/IGNoZWNrQW5kQ29udmVydENoYW5nZWRWYWx1ZVR5cGVzKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgb3JpZ2luLCB0cmFuc2l0aW9uRW5kKVxuICAgICAgICA6IHsgdGFyZ2V0LCB0cmFuc2l0aW9uRW5kIH07XG59XG5cbmV4cG9ydCB7IHBvc2l0aW9uYWxWYWx1ZXMsIHVuaXRDb252ZXJzaW9uIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getAnimatableNone: function() { return /* binding */ getAnimatableNone; }\n/* harmony export */ });\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n/* harmony import */ var _value_types_complex_filter_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/complex/filter.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/filter.mjs\");\n/* harmony import */ var _defaults_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./defaults.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs\");\n\n\n\n\nfunction getAnimatableNone(key, value) {\n let defaultValueType = (0,_defaults_mjs__WEBPACK_IMPORTED_MODULE_0__.getDefaultValueType)(key);\n if (defaultValueType !== _value_types_complex_filter_mjs__WEBPACK_IMPORTED_MODULE_1__.filter)\n defaultValueType = _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_2__.complex;\n // If value is not recognised as animatable, ie \"none\", create an animatable version origin based on the target\n return defaultValueType.getAnimatableNone\n ? defaultValueType.getAnimatableNone(value)\n : undefined;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9hbmltYXRhYmxlLW5vbmUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBaUU7QUFDQTtBQUNaOztBQUVyRDtBQUNBLDJCQUEyQixrRUFBbUI7QUFDOUMsNkJBQTZCLG1FQUFNO0FBQ25DLDJCQUEyQixtRUFBTztBQUNsQztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vdmFsdWUtdHlwZXMvYW5pbWF0YWJsZS1ub25lLm1qcz81ZjQyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXBsZXggfSBmcm9tICcuLi8uLi8uLi92YWx1ZS90eXBlcy9jb21wbGV4L2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi92YWx1ZS90eXBlcy9jb21wbGV4L2ZpbHRlci5tanMnO1xuaW1wb3J0IHsgZ2V0RGVmYXVsdFZhbHVlVHlwZSB9IGZyb20gJy4vZGVmYXVsdHMubWpzJztcblxuZnVuY3Rpb24gZ2V0QW5pbWF0YWJsZU5vbmUoa2V5LCB2YWx1ZSkge1xuICAgIGxldCBkZWZhdWx0VmFsdWVUeXBlID0gZ2V0RGVmYXVsdFZhbHVlVHlwZShrZXkpO1xuICAgIGlmIChkZWZhdWx0VmFsdWVUeXBlICE9PSBmaWx0ZXIpXG4gICAgICAgIGRlZmF1bHRWYWx1ZVR5cGUgPSBjb21wbGV4O1xuICAgIC8vIElmIHZhbHVlIGlzIG5vdCByZWNvZ25pc2VkIGFzIGFuaW1hdGFibGUsIGllIFwibm9uZVwiLCBjcmVhdGUgYW4gYW5pbWF0YWJsZSB2ZXJzaW9uIG9yaWdpbiBiYXNlZCBvbiB0aGUgdGFyZ2V0XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZVR5cGUuZ2V0QW5pbWF0YWJsZU5vbmVcbiAgICAgICAgPyBkZWZhdWx0VmFsdWVUeXBlLmdldEFuaW1hdGFibGVOb25lKHZhbHVlKVxuICAgICAgICA6IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IHsgZ2V0QW5pbWF0YWJsZU5vbmUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ defaultValueTypes: function() { return /* binding */ defaultValueTypes; },\n/* harmony export */ getDefaultValueType: function() { return /* binding */ getDefaultValueType; }\n/* harmony export */ });\n/* harmony import */ var _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/color/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\");\n/* harmony import */ var _value_types_complex_filter_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../value/types/complex/filter.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/filter.mjs\");\n/* harmony import */ var _number_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./number.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs\");\n\n\n\n\n/**\n * A map of default value types for common values\n */\nconst defaultValueTypes = {\n ..._number_mjs__WEBPACK_IMPORTED_MODULE_0__.numberValueTypes,\n // Color props\n color: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n backgroundColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n outlineColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n fill: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n stroke: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n // Border props\n borderColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n borderTopColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n borderRightColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n borderBottomColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n borderLeftColor: _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color,\n filter: _value_types_complex_filter_mjs__WEBPACK_IMPORTED_MODULE_2__.filter,\n WebkitFilter: _value_types_complex_filter_mjs__WEBPACK_IMPORTED_MODULE_2__.filter,\n};\n/**\n * Gets the default ValueType for the provided value key\n */\nconst getDefaultValueType = (key) => defaultValueTypes[key];\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9kZWZhdWx0cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBNkQ7QUFDSTtBQUNqQjs7QUFFaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLHlEQUFnQjtBQUN2QjtBQUNBLFNBQVM7QUFDVCxxQkFBcUIsK0RBQUs7QUFDMUIsa0JBQWtCLCtEQUFLO0FBQ3ZCLFVBQVUsK0RBQUs7QUFDZixZQUFZLCtEQUFLO0FBQ2pCO0FBQ0EsaUJBQWlCLCtEQUFLO0FBQ3RCLG9CQUFvQiwrREFBSztBQUN6QixzQkFBc0IsK0RBQUs7QUFDM0IsdUJBQXVCLCtEQUFLO0FBQzVCLHFCQUFxQiwrREFBSztBQUMxQixVQUFVO0FBQ1Ysa0JBQWtCLG1FQUFNO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRWtEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9kZWZhdWx0cy5tanM/YTNlYiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2xvciB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL2NvbG9yL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi92YWx1ZS90eXBlcy9jb21wbGV4L2ZpbHRlci5tanMnO1xuaW1wb3J0IHsgbnVtYmVyVmFsdWVUeXBlcyB9IGZyb20gJy4vbnVtYmVyLm1qcyc7XG5cbi8qKlxuICogQSBtYXAgb2YgZGVmYXVsdCB2YWx1ZSB0eXBlcyBmb3IgY29tbW9uIHZhbHVlc1xuICovXG5jb25zdCBkZWZhdWx0VmFsdWVUeXBlcyA9IHtcbiAgICAuLi5udW1iZXJWYWx1ZVR5cGVzLFxuICAgIC8vIENvbG9yIHByb3BzXG4gICAgY29sb3IsXG4gICAgYmFja2dyb3VuZENvbG9yOiBjb2xvcixcbiAgICBvdXRsaW5lQ29sb3I6IGNvbG9yLFxuICAgIGZpbGw6IGNvbG9yLFxuICAgIHN0cm9rZTogY29sb3IsXG4gICAgLy8gQm9yZGVyIHByb3BzXG4gICAgYm9yZGVyQ29sb3I6IGNvbG9yLFxuICAgIGJvcmRlclRvcENvbG9yOiBjb2xvcixcbiAgICBib3JkZXJSaWdodENvbG9yOiBjb2xvcixcbiAgICBib3JkZXJCb3R0b21Db2xvcjogY29sb3IsXG4gICAgYm9yZGVyTGVmdENvbG9yOiBjb2xvcixcbiAgICBmaWx0ZXIsXG4gICAgV2Via2l0RmlsdGVyOiBmaWx0ZXIsXG59O1xuLyoqXG4gKiBHZXRzIHRoZSBkZWZhdWx0IFZhbHVlVHlwZSBmb3IgdGhlIHByb3ZpZGVkIHZhbHVlIGtleVxuICovXG5jb25zdCBnZXREZWZhdWx0VmFsdWVUeXBlID0gKGtleSkgPT4gZGVmYXVsdFZhbHVlVHlwZXNba2V5XTtcblxuZXhwb3J0IHsgZGVmYXVsdFZhbHVlVHlwZXMsIGdldERlZmF1bHRWYWx1ZVR5cGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ dimensionValueTypes: function() { return /* binding */ dimensionValueTypes; },\n/* harmony export */ findDimensionValueType: function() { return /* binding */ findDimensionValueType; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n/* harmony import */ var _test_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./test.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs\");\n/* harmony import */ var _type_auto_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./type-auto.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs\");\n\n\n\n\n\n/**\n * A list of value types commonly used for dimensions\n */\nconst dimensionValueTypes = [_value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__.number, _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.px, _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.percent, _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.degrees, _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.vw, _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.vh, _type_auto_mjs__WEBPACK_IMPORTED_MODULE_2__.auto];\n/**\n * Tests a dimensional value against the list of dimension ValueTypes\n */\nconst findDimensionValueType = (v) => dimensionValueTypes.find((0,_test_mjs__WEBPACK_IMPORTED_MODULE_3__.testValueType)(v));\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9kaW1lbnNpb25zLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBZ0U7QUFDc0I7QUFDM0M7QUFDSjs7QUFFdkM7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGtFQUFNLEVBQUUsOERBQUUsRUFBRSxtRUFBTyxFQUFFLG1FQUFPLEVBQUUsOERBQUUsRUFBRSw4REFBRSxFQUFFLGdEQUFJO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBLCtEQUErRCx3REFBYTs7QUFFckIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3ZhbHVlLXR5cGVzL2RpbWVuc2lvbnMubWpzPzFmYzYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbnVtYmVyIH0gZnJvbSAnLi4vLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy9pbmRleC5tanMnO1xuaW1wb3J0IHsgcHgsIHBlcmNlbnQsIGRlZ3JlZXMsIHZ3LCB2aCB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL251bWJlcnMvdW5pdHMubWpzJztcbmltcG9ydCB7IHRlc3RWYWx1ZVR5cGUgfSBmcm9tICcuL3Rlc3QubWpzJztcbmltcG9ydCB7IGF1dG8gfSBmcm9tICcuL3R5cGUtYXV0by5tanMnO1xuXG4vKipcbiAqIEEgbGlzdCBvZiB2YWx1ZSB0eXBlcyBjb21tb25seSB1c2VkIGZvciBkaW1lbnNpb25zXG4gKi9cbmNvbnN0IGRpbWVuc2lvblZhbHVlVHlwZXMgPSBbbnVtYmVyLCBweCwgcGVyY2VudCwgZGVncmVlcywgdncsIHZoLCBhdXRvXTtcbi8qKlxuICogVGVzdHMgYSBkaW1lbnNpb25hbCB2YWx1ZSBhZ2FpbnN0IHRoZSBsaXN0IG9mIGRpbWVuc2lvbiBWYWx1ZVR5cGVzXG4gKi9cbmNvbnN0IGZpbmREaW1lbnNpb25WYWx1ZVR5cGUgPSAodikgPT4gZGltZW5zaW9uVmFsdWVUeXBlcy5maW5kKHRlc3RWYWx1ZVR5cGUodikpO1xuXG5leHBvcnQgeyBkaW1lbnNpb25WYWx1ZVR5cGVzLCBmaW5kRGltZW5zaW9uVmFsdWVUeXBlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ findValueType: function() { return /* binding */ findValueType; }\n/* harmony export */ });\n/* harmony import */ var _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/color/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\");\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n/* harmony import */ var _dimensions_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dimensions.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs\");\n/* harmony import */ var _test_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./test.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs\");\n\n\n\n\n\n/**\n * A list of all ValueTypes\n */\nconst valueTypes = [..._dimensions_mjs__WEBPACK_IMPORTED_MODULE_0__.dimensionValueTypes, _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color, _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_2__.complex];\n/**\n * Tests a value against the list of ValueTypes\n */\nconst findValueType = (v) => valueTypes.find((0,_test_mjs__WEBPACK_IMPORTED_MODULE_3__.testValueType)(v));\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9maW5kLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUE2RDtBQUNJO0FBQ1Y7QUFDWjs7QUFFM0M7QUFDQTtBQUNBO0FBQ0EsdUJBQXVCLGdFQUFtQixFQUFFLCtEQUFLLEVBQUUsbUVBQU87QUFDMUQ7QUFDQTtBQUNBO0FBQ0EsNkNBQTZDLHdEQUFhOztBQUVqQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9kb20vdmFsdWUtdHlwZXMvZmluZC5tanM/ZGFjZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2xvciB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL2NvbG9yL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBjb21wbGV4IH0gZnJvbSAnLi4vLi4vLi4vdmFsdWUvdHlwZXMvY29tcGxleC9pbmRleC5tanMnO1xuaW1wb3J0IHsgZGltZW5zaW9uVmFsdWVUeXBlcyB9IGZyb20gJy4vZGltZW5zaW9ucy5tanMnO1xuaW1wb3J0IHsgdGVzdFZhbHVlVHlwZSB9IGZyb20gJy4vdGVzdC5tanMnO1xuXG4vKipcbiAqIEEgbGlzdCBvZiBhbGwgVmFsdWVUeXBlc1xuICovXG5jb25zdCB2YWx1ZVR5cGVzID0gWy4uLmRpbWVuc2lvblZhbHVlVHlwZXMsIGNvbG9yLCBjb21wbGV4XTtcbi8qKlxuICogVGVzdHMgYSB2YWx1ZSBhZ2FpbnN0IHRoZSBsaXN0IG9mIFZhbHVlVHlwZXNcbiAqL1xuY29uc3QgZmluZFZhbHVlVHlwZSA9ICh2KSA9PiB2YWx1ZVR5cGVzLmZpbmQodGVzdFZhbHVlVHlwZSh2KSk7XG5cbmV4cG9ydCB7IGZpbmRWYWx1ZVR5cGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getValueAsType: function() { return /* binding */ getValueAsType; }\n/* harmony export */ });\n/**\n * Provided a value and a ValueType, returns the value as that value type.\n */\nconst getValueAsType = (value, type) => {\n return type && typeof value === \"number\"\n ? type.transform(value)\n : value;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9nZXQtYXMtdHlwZS5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTBCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9nZXQtYXMtdHlwZS5tanM/ZGJhOCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFByb3ZpZGVkIGEgdmFsdWUgYW5kIGEgVmFsdWVUeXBlLCByZXR1cm5zIHRoZSB2YWx1ZSBhcyB0aGF0IHZhbHVlIHR5cGUuXG4gKi9cbmNvbnN0IGdldFZhbHVlQXNUeXBlID0gKHZhbHVlLCB0eXBlKSA9PiB7XG4gICAgcmV0dXJuIHR5cGUgJiYgdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiXG4gICAgICAgID8gdHlwZS50cmFuc2Zvcm0odmFsdWUpXG4gICAgICAgIDogdmFsdWU7XG59O1xuXG5leHBvcnQgeyBnZXRWYWx1ZUFzVHlwZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ numberValueTypes: function() { return /* binding */ numberValueTypes; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/types/numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n/* harmony import */ var _type_int_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./type-int.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs\");\n\n\n\n\nconst numberValueTypes = {\n // Border props\n borderWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderTopWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderRightWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderBottomWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderLeftWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderRadius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n radius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderTopLeftRadius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderTopRightRadius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderBottomRightRadius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n borderBottomLeftRadius: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n // Positioning props\n width: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n maxWidth: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n height: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n maxHeight: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n size: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n top: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n right: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n bottom: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n left: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n // Spacing props\n padding: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n paddingTop: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n paddingRight: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n paddingBottom: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n paddingLeft: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n margin: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n marginTop: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n marginRight: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n marginBottom: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n marginLeft: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n // Transform props\n rotate: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n rotateX: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n rotateY: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n rotateZ: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n scale: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.scale,\n scaleX: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.scale,\n scaleY: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.scale,\n scaleZ: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.scale,\n skew: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n skewX: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n skewY: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.degrees,\n distance: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n translateX: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n translateY: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n translateZ: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n x: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n y: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n z: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n perspective: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n transformPerspective: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n opacity: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.alpha,\n originX: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.progressPercentage,\n originY: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.progressPercentage,\n originZ: _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px,\n // Misc\n zIndex: _type_int_mjs__WEBPACK_IMPORTED_MODULE_2__.int,\n // SVG\n fillOpacity: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.alpha,\n strokeOpacity: _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.alpha,\n numOctaves: _type_int_mjs__WEBPACK_IMPORTED_MODULE_2__.int,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy9udW1iZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBc0U7QUFDbUI7QUFDcEQ7O0FBRXJDO0FBQ0E7QUFDQSxpQkFBaUIsOERBQUU7QUFDbkIsb0JBQW9CLDhEQUFFO0FBQ3RCLHNCQUFzQiw4REFBRTtBQUN4Qix1QkFBdUIsOERBQUU7QUFDekIscUJBQXFCLDhEQUFFO0FBQ3ZCLGtCQUFrQiw4REFBRTtBQUNwQixZQUFZLDhEQUFFO0FBQ2QseUJBQXlCLDhEQUFFO0FBQzNCLDBCQUEwQiw4REFBRTtBQUM1Qiw2QkFBNkIsOERBQUU7QUFDL0IsNEJBQTRCLDhEQUFFO0FBQzlCO0FBQ0EsV0FBVyw4REFBRTtBQUNiLGNBQWMsOERBQUU7QUFDaEIsWUFBWSw4REFBRTtBQUNkLGVBQWUsOERBQUU7QUFDakIsVUFBVSw4REFBRTtBQUNaLFNBQVMsOERBQUU7QUFDWCxXQUFXLDhEQUFFO0FBQ2IsWUFBWSw4REFBRTtBQUNkLFVBQVUsOERBQUU7QUFDWjtBQUNBLGFBQWEsOERBQUU7QUFDZixnQkFBZ0IsOERBQUU7QUFDbEIsa0JBQWtCLDhEQUFFO0FBQ3BCLG1CQUFtQiw4REFBRTtBQUNyQixpQkFBaUIsOERBQUU7QUFDbkIsWUFBWSw4REFBRTtBQUNkLGVBQWUsOERBQUU7QUFDakIsaUJBQWlCLDhEQUFFO0FBQ25CLGtCQUFrQiw4REFBRTtBQUNwQixnQkFBZ0IsOERBQUU7QUFDbEI7QUFDQSxZQUFZLG1FQUFPO0FBQ25CLGFBQWEsbUVBQU87QUFDcEIsYUFBYSxtRUFBTztBQUNwQixhQUFhLG1FQUFPO0FBQ3BCLFNBQVM7QUFDVCxZQUFZLGlFQUFLO0FBQ2pCLFlBQVksaUVBQUs7QUFDakIsWUFBWSxpRUFBSztBQUNqQixVQUFVLG1FQUFPO0FBQ2pCLFdBQVcsbUVBQU87QUFDbEIsV0FBVyxtRUFBTztBQUNsQixjQUFjLDhEQUFFO0FBQ2hCLGdCQUFnQiw4REFBRTtBQUNsQixnQkFBZ0IsOERBQUU7QUFDbEIsZ0JBQWdCLDhEQUFFO0FBQ2xCLE9BQU8sOERBQUU7QUFDVCxPQUFPLDhEQUFFO0FBQ1QsT0FBTyw4REFBRTtBQUNULGlCQUFpQiw4REFBRTtBQUNuQiwwQkFBMEIsOERBQUU7QUFDNUIsYUFBYSxpRUFBSztBQUNsQixhQUFhLDhFQUFrQjtBQUMvQixhQUFhLDhFQUFrQjtBQUMvQixhQUFhLDhEQUFFO0FBQ2Y7QUFDQSxZQUFZLDhDQUFHO0FBQ2Y7QUFDQSxpQkFBaUIsaUVBQUs7QUFDdEIsbUJBQW1CLGlFQUFLO0FBQ3hCLGdCQUFnQiw4Q0FBRztBQUNuQjs7QUFFNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3ZhbHVlLXR5cGVzL251bWJlci5tanM/MGRlMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzY2FsZSwgYWxwaGEgfSBmcm9tICcuLi8uLi8uLi92YWx1ZS90eXBlcy9udW1iZXJzL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBweCwgZGVncmVlcywgcHJvZ3Jlc3NQZXJjZW50YWdlIH0gZnJvbSAnLi4vLi4vLi4vdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMnO1xuaW1wb3J0IHsgaW50IH0gZnJvbSAnLi90eXBlLWludC5tanMnO1xuXG5jb25zdCBudW1iZXJWYWx1ZVR5cGVzID0ge1xuICAgIC8vIEJvcmRlciBwcm9wc1xuICAgIGJvcmRlcldpZHRoOiBweCxcbiAgICBib3JkZXJUb3BXaWR0aDogcHgsXG4gICAgYm9yZGVyUmlnaHRXaWR0aDogcHgsXG4gICAgYm9yZGVyQm90dG9tV2lkdGg6IHB4LFxuICAgIGJvcmRlckxlZnRXaWR0aDogcHgsXG4gICAgYm9yZGVyUmFkaXVzOiBweCxcbiAgICByYWRpdXM6IHB4LFxuICAgIGJvcmRlclRvcExlZnRSYWRpdXM6IHB4LFxuICAgIGJvcmRlclRvcFJpZ2h0UmFkaXVzOiBweCxcbiAgICBib3JkZXJCb3R0b21SaWdodFJhZGl1czogcHgsXG4gICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogcHgsXG4gICAgLy8gUG9zaXRpb25pbmcgcHJvcHNcbiAgICB3aWR0aDogcHgsXG4gICAgbWF4V2lkdGg6IHB4LFxuICAgIGhlaWdodDogcHgsXG4gICAgbWF4SGVpZ2h0OiBweCxcbiAgICBzaXplOiBweCxcbiAgICB0b3A6IHB4LFxuICAgIHJpZ2h0OiBweCxcbiAgICBib3R0b206IHB4LFxuICAgIGxlZnQ6IHB4LFxuICAgIC8vIFNwYWNpbmcgcHJvcHNcbiAgICBwYWRkaW5nOiBweCxcbiAgICBwYWRkaW5nVG9wOiBweCxcbiAgICBwYWRkaW5nUmlnaHQ6IHB4LFxuICAgIHBhZGRpbmdCb3R0b206IHB4LFxuICAgIHBhZGRpbmdMZWZ0OiBweCxcbiAgICBtYXJnaW46IHB4LFxuICAgIG1hcmdpblRvcDogcHgsXG4gICAgbWFyZ2luUmlnaHQ6IHB4LFxuICAgIG1hcmdpbkJvdHRvbTogcHgsXG4gICAgbWFyZ2luTGVmdDogcHgsXG4gICAgLy8gVHJhbnNmb3JtIHByb3BzXG4gICAgcm90YXRlOiBkZWdyZWVzLFxuICAgIHJvdGF0ZVg6IGRlZ3JlZXMsXG4gICAgcm90YXRlWTogZGVncmVlcyxcbiAgICByb3RhdGVaOiBkZWdyZWVzLFxuICAgIHNjYWxlLFxuICAgIHNjYWxlWDogc2NhbGUsXG4gICAgc2NhbGVZOiBzY2FsZSxcbiAgICBzY2FsZVo6IHNjYWxlLFxuICAgIHNrZXc6IGRlZ3JlZXMsXG4gICAgc2tld1g6IGRlZ3JlZXMsXG4gICAgc2tld1k6IGRlZ3JlZXMsXG4gICAgZGlzdGFuY2U6IHB4LFxuICAgIHRyYW5zbGF0ZVg6IHB4LFxuICAgIHRyYW5zbGF0ZVk6IHB4LFxuICAgIHRyYW5zbGF0ZVo6IHB4LFxuICAgIHg6IHB4LFxuICAgIHk6IHB4LFxuICAgIHo6IHB4LFxuICAgIHBlcnNwZWN0aXZlOiBweCxcbiAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogcHgsXG4gICAgb3BhY2l0eTogYWxwaGEsXG4gICAgb3JpZ2luWDogcHJvZ3Jlc3NQZXJjZW50YWdlLFxuICAgIG9yaWdpblk6IHByb2dyZXNzUGVyY2VudGFnZSxcbiAgICBvcmlnaW5aOiBweCxcbiAgICAvLyBNaXNjXG4gICAgekluZGV4OiBpbnQsXG4gICAgLy8gU1ZHXG4gICAgZmlsbE9wYWNpdHk6IGFscGhhLFxuICAgIHN0cm9rZU9wYWNpdHk6IGFscGhhLFxuICAgIG51bU9jdGF2ZXM6IGludCxcbn07XG5cbmV4cG9ydCB7IG51bWJlclZhbHVlVHlwZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ testValueType: function() { return /* binding */ testValueType; }\n/* harmony export */ });\n/**\n * Tests a provided value against a ValueType\n */\nconst testValueType = (v) => (type) => type.test(v);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy90ZXN0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7O0FBRXlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy90ZXN0Lm1qcz84MTI0Il0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGVzdHMgYSBwcm92aWRlZCB2YWx1ZSBhZ2FpbnN0IGEgVmFsdWVUeXBlXG4gKi9cbmNvbnN0IHRlc3RWYWx1ZVR5cGUgPSAodikgPT4gKHR5cGUpID0+IHR5cGUudGVzdCh2KTtcblxuZXhwb3J0IHsgdGVzdFZhbHVlVHlwZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ auto: function() { return /* binding */ auto; }\n/* harmony export */ });\n/**\n * ValueType for \"auto\"\n */\nconst auto = {\n test: (v) => v === \"auto\",\n parse: (v) => v,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy90eXBlLWF1dG8ubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFZ0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3ZhbHVlLXR5cGVzL3R5cGUtYXV0by5tanM/ZWRiMiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFZhbHVlVHlwZSBmb3IgXCJhdXRvXCJcbiAqL1xuY29uc3QgYXV0byA9IHtcbiAgICB0ZXN0OiAodikgPT4gdiA9PT0gXCJhdXRvXCIsXG4gICAgcGFyc2U6ICh2KSA9PiB2LFxufTtcblxuZXhwb3J0IHsgYXV0byB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs":
|
||
/*!********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs ***!
|
||
\********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ int: function() { return /* binding */ int; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n\n\nconst int = {\n ..._value_types_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_0__.number,\n transform: Math.round,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2RvbS92YWx1ZS10eXBlcy90eXBlLWludC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBZ0U7O0FBRWhFO0FBQ0EsT0FBTyxrRUFBTTtBQUNiO0FBQ0E7O0FBRWUiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvZG9tL3ZhbHVlLXR5cGVzL3R5cGUtaW50Lm1qcz9hMWYyIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG51bWJlciB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL251bWJlcnMvaW5kZXgubWpzJztcblxuY29uc3QgaW50ID0ge1xuICAgIC4uLm51bWJlcixcbiAgICB0cmFuc2Zvcm06IE1hdGgucm91bmQsXG59O1xuXG5leHBvcnQgeyBpbnQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ HTMLVisualElement: function() { return /* binding */ HTMLVisualElement; },\n/* harmony export */ getComputedStyle: function() { return /* binding */ getComputedStyle; }\n/* harmony export */ });\n/* harmony import */ var _utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/build-styles.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs\");\n/* harmony import */ var _dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dom/utils/is-css-variable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs\");\n/* harmony import */ var _utils_transform_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/scrape-motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs\");\n/* harmony import */ var _utils_render_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils/render.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs\");\n/* harmony import */ var _dom_value_types_defaults_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dom/value-types/defaults.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs\");\n/* harmony import */ var _projection_utils_measure_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../projection/utils/measure.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/utils/measure.mjs\");\n/* harmony import */ var _dom_DOMVisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom/DOMVisualElement.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\n\n\n\n\n\n\n\nfunction getComputedStyle(element) {\n return window.getComputedStyle(element);\n}\nclass HTMLVisualElement extends _dom_DOMVisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__.DOMVisualElement {\n constructor() {\n super(...arguments);\n this.type = \"html\";\n }\n readValueFromInstance(instance, key) {\n if (_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_1__.transformProps.has(key)) {\n const defaultType = (0,_dom_value_types_defaults_mjs__WEBPACK_IMPORTED_MODULE_2__.getDefaultValueType)(key);\n return defaultType ? defaultType.default || 0 : 0;\n }\n else {\n const computedStyle = getComputedStyle(instance);\n const value = ((0,_dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_3__.isCSSVariableName)(key)\n ? computedStyle.getPropertyValue(key)\n : computedStyle[key]) || 0;\n return typeof value === \"string\" ? value.trim() : value;\n }\n }\n measureInstanceViewportBox(instance, { transformPagePoint }) {\n return (0,_projection_utils_measure_mjs__WEBPACK_IMPORTED_MODULE_4__.measureViewportBox)(instance, transformPagePoint);\n }\n build(renderState, latestValues, options, props) {\n (0,_utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_5__.buildHTMLStyles)(renderState, latestValues, options, props.transformTemplate);\n }\n scrapeMotionValuesFromProps(props, prevProps) {\n return (0,_utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_6__.scrapeMotionValuesFromProps)(props, prevProps);\n }\n handleChildMotionValue() {\n if (this.childSubscription) {\n this.childSubscription();\n delete this.childSubscription;\n }\n const { children } = this.props;\n if ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_7__.isMotionValue)(children)) {\n this.childSubscription = children.on(\"change\", (latest) => {\n if (this.current)\n this.current.textContent = `${latest}`;\n });\n }\n }\n renderInstance(instance, renderState, styleProp, projection) {\n (0,_utils_render_mjs__WEBPACK_IMPORTED_MODULE_8__.renderHTML)(instance, renderState, styleProp, projection);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvSFRNTFZpc3VhbEVsZW1lbnQubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQTJEO0FBQ1U7QUFDZDtBQUN3QjtBQUMvQjtBQUNzQjtBQUNFO0FBQ1Q7QUFDTzs7QUFFdEU7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLHVFQUFnQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxnRUFBYztBQUMxQixnQ0FBZ0Msa0ZBQW1CO0FBQ25EO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLGlGQUFpQjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkNBQTJDLG9CQUFvQjtBQUMvRCxlQUFlLGlGQUFrQjtBQUNqQztBQUNBO0FBQ0EsUUFBUSx3RUFBZTtBQUN2QjtBQUNBO0FBQ0EsZUFBZSw0RkFBMkI7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLFdBQVc7QUFDM0IsWUFBWSwrRUFBYTtBQUN6QjtBQUNBO0FBQ0Esa0RBQWtELE9BQU87QUFDekQsYUFBYTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFFBQVEsNkRBQVU7QUFDbEI7QUFDQTs7QUFFK0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvaHRtbC9IVE1MVmlzdWFsRWxlbWVudC5tanM/Zjg3OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidWlsZEhUTUxTdHlsZXMgfSBmcm9tICcuL3V0aWxzL2J1aWxkLXN0eWxlcy5tanMnO1xuaW1wb3J0IHsgaXNDU1NWYXJpYWJsZU5hbWUgfSBmcm9tICcuLi9kb20vdXRpbHMvaXMtY3NzLXZhcmlhYmxlLm1qcyc7XG5pbXBvcnQgeyB0cmFuc2Zvcm1Qcm9wcyB9IGZyb20gJy4vdXRpbHMvdHJhbnNmb3JtLm1qcyc7XG5pbXBvcnQgeyBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMgfSBmcm9tICcuL3V0aWxzL3NjcmFwZS1tb3Rpb24tdmFsdWVzLm1qcyc7XG5pbXBvcnQgeyByZW5kZXJIVE1MIH0gZnJvbSAnLi91dGlscy9yZW5kZXIubWpzJztcbmltcG9ydCB7IGdldERlZmF1bHRWYWx1ZVR5cGUgfSBmcm9tICcuLi9kb20vdmFsdWUtdHlwZXMvZGVmYXVsdHMubWpzJztcbmltcG9ydCB7IG1lYXN1cmVWaWV3cG9ydEJveCB9IGZyb20gJy4uLy4uL3Byb2plY3Rpb24vdXRpbHMvbWVhc3VyZS5tanMnO1xuaW1wb3J0IHsgRE9NVmlzdWFsRWxlbWVudCB9IGZyb20gJy4uL2RvbS9ET01WaXN1YWxFbGVtZW50Lm1qcyc7XG5pbXBvcnQgeyBpc01vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXRpbHMvaXMtbW90aW9uLXZhbHVlLm1qcyc7XG5cbmZ1bmN0aW9uIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkge1xuICAgIHJldHVybiB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcbn1cbmNsYXNzIEhUTUxWaXN1YWxFbGVtZW50IGV4dGVuZHMgRE9NVmlzdWFsRWxlbWVudCB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIHRoaXMudHlwZSA9IFwiaHRtbFwiO1xuICAgIH1cbiAgICByZWFkVmFsdWVGcm9tSW5zdGFuY2UoaW5zdGFuY2UsIGtleSkge1xuICAgICAgICBpZiAodHJhbnNmb3JtUHJvcHMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRUeXBlID0gZ2V0RGVmYXVsdFZhbHVlVHlwZShrZXkpO1xuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRUeXBlID8gZGVmYXVsdFR5cGUuZGVmYXVsdCB8fCAwIDogMDtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbXB1dGVkU3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGluc3RhbmNlKTtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKGlzQ1NTVmFyaWFibGVOYW1lKGtleSlcbiAgICAgICAgICAgICAgICA/IGNvbXB1dGVkU3R5bGUuZ2V0UHJvcGVydHlWYWx1ZShrZXkpXG4gICAgICAgICAgICAgICAgOiBjb21wdXRlZFN0eWxlW2tleV0pIHx8IDA7XG4gICAgICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiID8gdmFsdWUudHJpbSgpIDogdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbWVhc3VyZUluc3RhbmNlVmlld3BvcnRCb3goaW5zdGFuY2UsIHsgdHJhbnNmb3JtUGFnZVBvaW50IH0pIHtcbiAgICAgICAgcmV0dXJuIG1lYXN1cmVWaWV3cG9ydEJveChpbnN0YW5jZSwgdHJhbnNmb3JtUGFnZVBvaW50KTtcbiAgICB9XG4gICAgYnVpbGQocmVuZGVyU3RhdGUsIGxhdGVzdFZhbHVlcywgb3B0aW9ucywgcHJvcHMpIHtcbiAgICAgICAgYnVpbGRIVE1MU3R5bGVzKHJlbmRlclN0YXRlLCBsYXRlc3RWYWx1ZXMsIG9wdGlvbnMsIHByb3BzLnRyYW5zZm9ybVRlbXBsYXRlKTtcbiAgICB9XG4gICAgc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzKHByb3BzLCBwcmV2UHJvcHMpIHtcbiAgICAgICAgcmV0dXJuIHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyhwcm9wcywgcHJldlByb3BzKTtcbiAgICB9XG4gICAgaGFuZGxlQ2hpbGRNb3Rpb25WYWx1ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuY2hpbGRTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuY2hpbGRTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmNoaWxkU3Vic2NyaXB0aW9uO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHsgY2hpbGRyZW4gfSA9IHRoaXMucHJvcHM7XG4gICAgICAgIGlmIChpc01vdGlvblZhbHVlKGNoaWxkcmVuKSkge1xuICAgICAgICAgICAgdGhpcy5jaGlsZFN1YnNjcmlwdGlvbiA9IGNoaWxkcmVuLm9uKFwiY2hhbmdlXCIsIChsYXRlc3QpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50KVxuICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnQudGV4dENvbnRlbnQgPSBgJHtsYXRlc3R9YDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJlbmRlckluc3RhbmNlKGluc3RhbmNlLCByZW5kZXJTdGF0ZSwgc3R5bGVQcm9wLCBwcm9qZWN0aW9uKSB7XG4gICAgICAgIHJlbmRlckhUTUwoaW5zdGFuY2UsIHJlbmRlclN0YXRlLCBzdHlsZVByb3AsIHByb2plY3Rpb24pO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgSFRNTFZpc3VhbEVsZW1lbnQsIGdldENvbXB1dGVkU3R5bGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/config-motion.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/config-motion.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ htmlMotionConfig: function() { return /* binding */ htmlMotionConfig; }\n/* harmony export */ });\n/* harmony import */ var _motion_utils_use_visual_state_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../motion/utils/use-visual-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs\");\n/* harmony import */ var _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/scrape-motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs\");\n/* harmony import */ var _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/create-render-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs\");\n\n\n\n\nconst htmlMotionConfig = {\n useVisualState: (0,_motion_utils_use_visual_state_mjs__WEBPACK_IMPORTED_MODULE_0__.makeUseVisualState)({\n scrapeMotionValuesFromProps: _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_1__.scrapeMotionValuesFromProps,\n createRenderState: _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_2__.createHtmlRenderState,\n }),\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvY29uZmlnLW1vdGlvbi5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE2RTtBQUNFO0FBQ1A7O0FBRXhFO0FBQ0Esb0JBQW9CLHNGQUFrQjtBQUN0QyxtQ0FBbUM7QUFDbkMsMkJBQTJCLGlGQUFxQjtBQUNoRCxLQUFLO0FBQ0w7O0FBRTRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvY29uZmlnLW1vdGlvbi5tanM/YjBlOCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYWtlVXNlVmlzdWFsU3RhdGUgfSBmcm9tICcuLi8uLi9tb3Rpb24vdXRpbHMvdXNlLXZpc3VhbC1zdGF0ZS5tanMnO1xuaW1wb3J0IHsgc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzIH0gZnJvbSAnLi91dGlscy9zY3JhcGUtbW90aW9uLXZhbHVlcy5tanMnO1xuaW1wb3J0IHsgY3JlYXRlSHRtbFJlbmRlclN0YXRlIH0gZnJvbSAnLi91dGlscy9jcmVhdGUtcmVuZGVyLXN0YXRlLm1qcyc7XG5cbmNvbnN0IGh0bWxNb3Rpb25Db25maWcgPSB7XG4gICAgdXNlVmlzdWFsU3RhdGU6IG1ha2VVc2VWaXN1YWxTdGF0ZSh7XG4gICAgICAgIHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyxcbiAgICAgICAgY3JlYXRlUmVuZGVyU3RhdGU6IGNyZWF0ZUh0bWxSZW5kZXJTdGF0ZSxcbiAgICB9KSxcbn07XG5cbmV4cG9ydCB7IGh0bWxNb3Rpb25Db25maWcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/config-motion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/use-props.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/use-props.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ copyRawValuesOnly: function() { return /* binding */ copyRawValuesOnly; },\n/* harmony export */ useHTMLProps: function() { return /* binding */ useHTMLProps; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _motion_utils_is_forced_motion_value_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../motion/utils/is-forced-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n/* harmony import */ var _utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/build-styles.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs\");\n/* harmony import */ var _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/create-render-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs\");\n\n\n\n\n\n\nfunction copyRawValuesOnly(target, source, props) {\n for (const key in source) {\n if (!(0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__.isMotionValue)(source[key]) && !(0,_motion_utils_is_forced_motion_value_mjs__WEBPACK_IMPORTED_MODULE_2__.isForcedMotionValue)(key, props)) {\n target[key] = source[key];\n }\n }\n}\nfunction useInitialMotionValues({ transformTemplate }, visualState, isStatic) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {\n const state = (0,_utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_3__.createHtmlRenderState)();\n (0,_utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_4__.buildHTMLStyles)(state, visualState, { enableHardwareAcceleration: !isStatic }, transformTemplate);\n return Object.assign({}, state.vars, state.style);\n }, [visualState]);\n}\nfunction useStyle(props, visualState, isStatic) {\n const styleProp = props.style || {};\n const style = {};\n /**\n * Copy non-Motion Values straight into style\n */\n copyRawValuesOnly(style, styleProp, props);\n Object.assign(style, useInitialMotionValues(props, visualState, isStatic));\n return props.transformValues ? props.transformValues(style) : style;\n}\nfunction useHTMLProps(props, visualState, isStatic) {\n // The `any` isn't ideal but it is the type of createElement props argument\n const htmlProps = {};\n const style = useStyle(props, visualState, isStatic);\n if (props.drag && props.dragListener !== false) {\n // Disable the ghost element when a user drags\n htmlProps.draggable = false;\n // Disable text selection\n style.userSelect =\n style.WebkitUserSelect =\n style.WebkitTouchCallout =\n \"none\";\n // Disable scrolling on the draggable direction\n style.touchAction =\n props.drag === true\n ? \"none\"\n : `pan-${props.drag === \"x\" ? \"y\" : \"x\"}`;\n }\n if (props.tabIndex === undefined &&\n (props.onTap || props.onTapStart || props.whileTap)) {\n htmlProps.tabIndex = 0;\n }\n htmlProps.style = style;\n return htmlProps;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXNlLXByb3BzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQWdDO0FBQ29EO0FBQ2Q7QUFDWDtBQUNhOztBQUV4RTtBQUNBO0FBQ0EsYUFBYSwrRUFBYSxrQkFBa0IsNkZBQW1CO0FBQy9EO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDLG1CQUFtQjtBQUNyRCxXQUFXLDhDQUFPO0FBQ2xCLHNCQUFzQixxRkFBcUI7QUFDM0MsUUFBUSx3RUFBZSx1QkFBdUIsdUNBQXVDO0FBQ3JGLCtCQUErQjtBQUMvQixLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUJBQXlCLCtCQUErQjtBQUN4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUyQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9odG1sL3VzZS1wcm9wcy5tanM/YmY4MiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgaXNGb3JjZWRNb3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uL21vdGlvbi91dGlscy9pcy1mb3JjZWQtbW90aW9uLXZhbHVlLm1qcyc7XG5pbXBvcnQgeyBpc01vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXRpbHMvaXMtbW90aW9uLXZhbHVlLm1qcyc7XG5pbXBvcnQgeyBidWlsZEhUTUxTdHlsZXMgfSBmcm9tICcuL3V0aWxzL2J1aWxkLXN0eWxlcy5tanMnO1xuaW1wb3J0IHsgY3JlYXRlSHRtbFJlbmRlclN0YXRlIH0gZnJvbSAnLi91dGlscy9jcmVhdGUtcmVuZGVyLXN0YXRlLm1qcyc7XG5cbmZ1bmN0aW9uIGNvcHlSYXdWYWx1ZXNPbmx5KHRhcmdldCwgc291cmNlLCBwcm9wcykge1xuICAgIGZvciAoY29uc3Qga2V5IGluIHNvdXJjZSkge1xuICAgICAgICBpZiAoIWlzTW90aW9uVmFsdWUoc291cmNlW2tleV0pICYmICFpc0ZvcmNlZE1vdGlvblZhbHVlKGtleSwgcHJvcHMpKSB7XG4gICAgICAgICAgICB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldO1xuICAgICAgICB9XG4gICAgfVxufVxuZnVuY3Rpb24gdXNlSW5pdGlhbE1vdGlvblZhbHVlcyh7IHRyYW5zZm9ybVRlbXBsYXRlIH0sIHZpc3VhbFN0YXRlLCBpc1N0YXRpYykge1xuICAgIHJldHVybiB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgY29uc3Qgc3RhdGUgPSBjcmVhdGVIdG1sUmVuZGVyU3RhdGUoKTtcbiAgICAgICAgYnVpbGRIVE1MU3R5bGVzKHN0YXRlLCB2aXN1YWxTdGF0ZSwgeyBlbmFibGVIYXJkd2FyZUFjY2VsZXJhdGlvbjogIWlzU3RhdGljIH0sIHRyYW5zZm9ybVRlbXBsYXRlKTtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIHN0YXRlLnZhcnMsIHN0YXRlLnN0eWxlKTtcbiAgICB9LCBbdmlzdWFsU3RhdGVdKTtcbn1cbmZ1bmN0aW9uIHVzZVN0eWxlKHByb3BzLCB2aXN1YWxTdGF0ZSwgaXNTdGF0aWMpIHtcbiAgICBjb25zdCBzdHlsZVByb3AgPSBwcm9wcy5zdHlsZSB8fCB7fTtcbiAgICBjb25zdCBzdHlsZSA9IHt9O1xuICAgIC8qKlxuICAgICAqIENvcHkgbm9uLU1vdGlvbiBWYWx1ZXMgc3RyYWlnaHQgaW50byBzdHlsZVxuICAgICAqL1xuICAgIGNvcHlSYXdWYWx1ZXNPbmx5KHN0eWxlLCBzdHlsZVByb3AsIHByb3BzKTtcbiAgICBPYmplY3QuYXNzaWduKHN0eWxlLCB1c2VJbml0aWFsTW90aW9uVmFsdWVzKHByb3BzLCB2aXN1YWxTdGF0ZSwgaXNTdGF0aWMpKTtcbiAgICByZXR1cm4gcHJvcHMudHJhbnNmb3JtVmFsdWVzID8gcHJvcHMudHJhbnNmb3JtVmFsdWVzKHN0eWxlKSA6IHN0eWxlO1xufVxuZnVuY3Rpb24gdXNlSFRNTFByb3BzKHByb3BzLCB2aXN1YWxTdGF0ZSwgaXNTdGF0aWMpIHtcbiAgICAvLyBUaGUgYGFueWAgaXNuJ3QgaWRlYWwgYnV0IGl0IGlzIHRoZSB0eXBlIG9mIGNyZWF0ZUVsZW1lbnQgcHJvcHMgYXJndW1lbnRcbiAgICBjb25zdCBodG1sUHJvcHMgPSB7fTtcbiAgICBjb25zdCBzdHlsZSA9IHVzZVN0eWxlKHByb3BzLCB2aXN1YWxTdGF0ZSwgaXNTdGF0aWMpO1xuICAgIGlmIChwcm9wcy5kcmFnICYmIHByb3BzLmRyYWdMaXN0ZW5lciAhPT0gZmFsc2UpIHtcbiAgICAgICAgLy8gRGlzYWJsZSB0aGUgZ2hvc3QgZWxlbWVudCB3aGVuIGEgdXNlciBkcmFnc1xuICAgICAgICBodG1sUHJvcHMuZHJhZ2dhYmxlID0gZmFsc2U7XG4gICAgICAgIC8vIERpc2FibGUgdGV4dCBzZWxlY3Rpb25cbiAgICAgICAgc3R5bGUudXNlclNlbGVjdCA9XG4gICAgICAgICAgICBzdHlsZS5XZWJraXRVc2VyU2VsZWN0ID1cbiAgICAgICAgICAgICAgICBzdHlsZS5XZWJraXRUb3VjaENhbGxvdXQgPVxuICAgICAgICAgICAgICAgICAgICBcIm5vbmVcIjtcbiAgICAgICAgLy8gRGlzYWJsZSBzY3JvbGxpbmcgb24gdGhlIGRyYWdnYWJsZSBkaXJlY3Rpb25cbiAgICAgICAgc3R5bGUudG91Y2hBY3Rpb24gPVxuICAgICAgICAgICAgcHJvcHMuZHJhZyA9PT0gdHJ1ZVxuICAgICAgICAgICAgICAgID8gXCJub25lXCJcbiAgICAgICAgICAgICAgICA6IGBwYW4tJHtwcm9wcy5kcmFnID09PSBcInhcIiA/IFwieVwiIDogXCJ4XCJ9YDtcbiAgICB9XG4gICAgaWYgKHByb3BzLnRhYkluZGV4ID09PSB1bmRlZmluZWQgJiZcbiAgICAgICAgKHByb3BzLm9uVGFwIHx8IHByb3BzLm9uVGFwU3RhcnQgfHwgcHJvcHMud2hpbGVUYXApKSB7XG4gICAgICAgIGh0bWxQcm9wcy50YWJJbmRleCA9IDA7XG4gICAgfVxuICAgIGh0bWxQcm9wcy5zdHlsZSA9IHN0eWxlO1xuICAgIHJldHVybiBodG1sUHJvcHM7XG59XG5cbmV4cG9ydCB7IGNvcHlSYXdWYWx1ZXNPbmx5LCB1c2VIVE1MUHJvcHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/use-props.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs":
|
||
/*!*******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs ***!
|
||
\*******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildHTMLStyles: function() { return /* binding */ buildHTMLStyles; }\n/* harmony export */ });\n/* harmony import */ var _build_transform_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./build-transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs\");\n/* harmony import */ var _dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../dom/utils/is-css-variable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs\");\n/* harmony import */ var _transform_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _dom_value_types_get_as_type_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../dom/value-types/get-as-type.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs\");\n/* harmony import */ var _dom_value_types_number_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../dom/value-types/number.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs\");\n\n\n\n\n\n\nfunction buildHTMLStyles(state, latestValues, options, transformTemplate) {\n const { style, vars, transform, transformOrigin } = state;\n // Track whether we encounter any transform or transformOrigin values.\n let hasTransform = false;\n let hasTransformOrigin = false;\n // Does the calculated transform essentially equal \"none\"?\n let transformIsNone = true;\n /**\n * Loop over all our latest animated values and decide whether to handle them\n * as a style or CSS variable.\n *\n * Transforms and transform origins are kept seperately for further processing.\n */\n for (const key in latestValues) {\n const value = latestValues[key];\n /**\n * If this is a CSS variable we don't do any further processing.\n */\n if ((0,_dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_0__.isCSSVariableName)(key)) {\n vars[key] = value;\n continue;\n }\n // Convert the value to its default value type, ie 0 -> \"0px\"\n const valueType = _dom_value_types_number_mjs__WEBPACK_IMPORTED_MODULE_1__.numberValueTypes[key];\n const valueAsType = (0,_dom_value_types_get_as_type_mjs__WEBPACK_IMPORTED_MODULE_2__.getValueAsType)(value, valueType);\n if (_transform_mjs__WEBPACK_IMPORTED_MODULE_3__.transformProps.has(key)) {\n // If this is a transform, flag to enable further transform processing\n hasTransform = true;\n transform[key] = valueAsType;\n // If we already know we have a non-default transform, early return\n if (!transformIsNone)\n continue;\n // Otherwise check to see if this is a default transform\n if (value !== (valueType.default || 0))\n transformIsNone = false;\n }\n else if (key.startsWith(\"origin\")) {\n // If this is a transform origin, flag and enable further transform-origin processing\n hasTransformOrigin = true;\n transformOrigin[key] = valueAsType;\n }\n else {\n style[key] = valueAsType;\n }\n }\n if (!latestValues.transform) {\n if (hasTransform || transformTemplate) {\n style.transform = (0,_build_transform_mjs__WEBPACK_IMPORTED_MODULE_4__.buildTransform)(state.transform, options, transformIsNone, transformTemplate);\n }\n else if (style.transform) {\n /**\n * If we have previously created a transform but currently don't have any,\n * reset transform style to none.\n */\n style.transform = \"none\";\n }\n }\n /**\n * Build a transformOrigin style. Uses the same defaults as the browser for\n * undefined origins.\n */\n if (hasTransformOrigin) {\n const { originX = \"50%\", originY = \"50%\", originZ = 0, } = transformOrigin;\n style.transformOrigin = `${originX} ${originY} ${originZ}`;\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvYnVpbGQtc3R5bGVzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBdUQ7QUFDaUI7QUFDdkI7QUFDc0I7QUFDSDs7QUFFcEU7QUFDQSxZQUFZLDBDQUEwQztBQUN0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksaUZBQWlCO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEJBQTBCLHlFQUFnQjtBQUMxQyw0QkFBNEIsZ0ZBQWM7QUFDMUMsWUFBWSwwREFBYztBQUMxQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsb0VBQWM7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixpREFBaUQ7QUFDakUsbUNBQW1DLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUTtBQUNqRTtBQUNBOztBQUUyQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9odG1sL3V0aWxzL2J1aWxkLXN0eWxlcy5tanM/YWUzZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidWlsZFRyYW5zZm9ybSB9IGZyb20gJy4vYnVpbGQtdHJhbnNmb3JtLm1qcyc7XG5pbXBvcnQgeyBpc0NTU1ZhcmlhYmxlTmFtZSB9IGZyb20gJy4uLy4uL2RvbS91dGlscy9pcy1jc3MtdmFyaWFibGUubWpzJztcbmltcG9ydCB7IHRyYW5zZm9ybVByb3BzIH0gZnJvbSAnLi90cmFuc2Zvcm0ubWpzJztcbmltcG9ydCB7IGdldFZhbHVlQXNUeXBlIH0gZnJvbSAnLi4vLi4vZG9tL3ZhbHVlLXR5cGVzL2dldC1hcy10eXBlLm1qcyc7XG5pbXBvcnQgeyBudW1iZXJWYWx1ZVR5cGVzIH0gZnJvbSAnLi4vLi4vZG9tL3ZhbHVlLXR5cGVzL251bWJlci5tanMnO1xuXG5mdW5jdGlvbiBidWlsZEhUTUxTdHlsZXMoc3RhdGUsIGxhdGVzdFZhbHVlcywgb3B0aW9ucywgdHJhbnNmb3JtVGVtcGxhdGUpIHtcbiAgICBjb25zdCB7IHN0eWxlLCB2YXJzLCB0cmFuc2Zvcm0sIHRyYW5zZm9ybU9yaWdpbiB9ID0gc3RhdGU7XG4gICAgLy8gVHJhY2sgd2hldGhlciB3ZSBlbmNvdW50ZXIgYW55IHRyYW5zZm9ybSBvciB0cmFuc2Zvcm1PcmlnaW4gdmFsdWVzLlxuICAgIGxldCBoYXNUcmFuc2Zvcm0gPSBmYWxzZTtcbiAgICBsZXQgaGFzVHJhbnNmb3JtT3JpZ2luID0gZmFsc2U7XG4gICAgLy8gRG9lcyB0aGUgY2FsY3VsYXRlZCB0cmFuc2Zvcm0gZXNzZW50aWFsbHkgZXF1YWwgXCJub25lXCI/XG4gICAgbGV0IHRyYW5zZm9ybUlzTm9uZSA9IHRydWU7XG4gICAgLyoqXG4gICAgICogTG9vcCBvdmVyIGFsbCBvdXIgbGF0ZXN0IGFuaW1hdGVkIHZhbHVlcyBhbmQgZGVjaWRlIHdoZXRoZXIgdG8gaGFuZGxlIHRoZW1cbiAgICAgKiBhcyBhIHN0eWxlIG9yIENTUyB2YXJpYWJsZS5cbiAgICAgKlxuICAgICAqIFRyYW5zZm9ybXMgYW5kIHRyYW5zZm9ybSBvcmlnaW5zIGFyZSBrZXB0IHNlcGVyYXRlbHkgZm9yIGZ1cnRoZXIgcHJvY2Vzc2luZy5cbiAgICAgKi9cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBsYXRlc3RWYWx1ZXMpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBsYXRlc3RWYWx1ZXNba2V5XTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoaXMgaXMgYSBDU1MgdmFyaWFibGUgd2UgZG9uJ3QgZG8gYW55IGZ1cnRoZXIgcHJvY2Vzc2luZy5cbiAgICAgICAgICovXG4gICAgICAgIGlmIChpc0NTU1ZhcmlhYmxlTmFtZShrZXkpKSB7XG4gICAgICAgICAgICB2YXJzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIC8vIENvbnZlcnQgdGhlIHZhbHVlIHRvIGl0cyBkZWZhdWx0IHZhbHVlIHR5cGUsIGllIDAgLT4gXCIwcHhcIlxuICAgICAgICBjb25zdCB2YWx1ZVR5cGUgPSBudW1iZXJWYWx1ZVR5cGVzW2tleV07XG4gICAgICAgIGNvbnN0IHZhbHVlQXNUeXBlID0gZ2V0VmFsdWVBc1R5cGUodmFsdWUsIHZhbHVlVHlwZSk7XG4gICAgICAgIGlmICh0cmFuc2Zvcm1Qcm9wcy5oYXMoa2V5KSkge1xuICAgICAgICAgICAgLy8gSWYgdGhpcyBpcyBhIHRyYW5zZm9ybSwgZmxhZyB0byBlbmFibGUgZnVydGhlciB0cmFuc2Zvcm0gcHJvY2Vzc2luZ1xuICAgICAgICAgICAgaGFzVHJhbnNmb3JtID0gdHJ1ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybVtrZXldID0gdmFsdWVBc1R5cGU7XG4gICAgICAgICAgICAvLyBJZiB3ZSBhbHJlYWR5IGtub3cgd2UgaGF2ZSBhIG5vbi1kZWZhdWx0IHRyYW5zZm9ybSwgZWFybHkgcmV0dXJuXG4gICAgICAgICAgICBpZiAoIXRyYW5zZm9ybUlzTm9uZSlcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIC8vIE90aGVyd2lzZSBjaGVjayB0byBzZWUgaWYgdGhpcyBpcyBhIGRlZmF1bHQgdHJhbnNmb3JtXG4gICAgICAgICAgICBpZiAodmFsdWUgIT09ICh2YWx1ZVR5cGUuZGVmYXVsdCB8fCAwKSlcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm1Jc05vbmUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChrZXkuc3RhcnRzV2l0aChcIm9yaWdpblwiKSkge1xuICAgICAgICAgICAgLy8gSWYgdGhpcyBpcyBhIHRyYW5zZm9ybSBvcmlnaW4sIGZsYWcgYW5kIGVuYWJsZSBmdXJ0aGVyIHRyYW5zZm9ybS1vcmlnaW4gcHJvY2Vzc2luZ1xuICAgICAgICAgICAgaGFzVHJhbnNmb3JtT3JpZ2luID0gdHJ1ZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybU9yaWdpbltrZXldID0gdmFsdWVBc1R5cGU7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzdHlsZVtrZXldID0gdmFsdWVBc1R5cGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKCFsYXRlc3RWYWx1ZXMudHJhbnNmb3JtKSB7XG4gICAgICAgIGlmIChoYXNUcmFuc2Zvcm0gfHwgdHJhbnNmb3JtVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHN0eWxlLnRyYW5zZm9ybSA9IGJ1aWxkVHJhbnNmb3JtKHN0YXRlLnRyYW5zZm9ybSwgb3B0aW9ucywgdHJhbnNmb3JtSXNOb25lLCB0cmFuc2Zvcm1UZW1wbGF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoc3R5bGUudHJhbnNmb3JtKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlIGhhdmUgcHJldmlvdXNseSBjcmVhdGVkIGEgdHJhbnNmb3JtIGJ1dCBjdXJyZW50bHkgZG9uJ3QgaGF2ZSBhbnksXG4gICAgICAgICAgICAgKiByZXNldCB0cmFuc2Zvcm0gc3R5bGUgdG8gbm9uZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgc3R5bGUudHJhbnNmb3JtID0gXCJub25lXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQnVpbGQgYSB0cmFuc2Zvcm1PcmlnaW4gc3R5bGUuIFVzZXMgdGhlIHNhbWUgZGVmYXVsdHMgYXMgdGhlIGJyb3dzZXIgZm9yXG4gICAgICogdW5kZWZpbmVkIG9yaWdpbnMuXG4gICAgICovXG4gICAgaWYgKGhhc1RyYW5zZm9ybU9yaWdpbikge1xuICAgICAgICBjb25zdCB7IG9yaWdpblggPSBcIjUwJVwiLCBvcmlnaW5ZID0gXCI1MCVcIiwgb3JpZ2luWiA9IDAsIH0gPSB0cmFuc2Zvcm1PcmlnaW47XG4gICAgICAgIHN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9IGAke29yaWdpblh9ICR7b3JpZ2luWX0gJHtvcmlnaW5afWA7XG4gICAgfVxufVxuXG5leHBvcnQgeyBidWlsZEhUTUxTdHlsZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildTransform: function() { return /* binding */ buildTransform; }\n/* harmony export */ });\n/* harmony import */ var _transform_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n\n\nconst translateAlias = {\n x: \"translateX\",\n y: \"translateY\",\n z: \"translateZ\",\n transformPerspective: \"perspective\",\n};\nconst numTransforms = _transform_mjs__WEBPACK_IMPORTED_MODULE_0__.transformPropOrder.length;\n/**\n * Build a CSS transform style from individual x/y/scale etc properties.\n *\n * This outputs with a default order of transforms/scales/rotations, this can be customised by\n * providing a transformTemplate function.\n */\nfunction buildTransform(transform, { enableHardwareAcceleration = true, allowTransformNone = true, }, transformIsDefault, transformTemplate) {\n // The transform string we're going to build into.\n let transformString = \"\";\n /**\n * Loop over all possible transforms in order, adding the ones that\n * are present to the transform string.\n */\n for (let i = 0; i < numTransforms; i++) {\n const key = _transform_mjs__WEBPACK_IMPORTED_MODULE_0__.transformPropOrder[i];\n if (transform[key] !== undefined) {\n const transformName = translateAlias[key] || key;\n transformString += `${transformName}(${transform[key]}) `;\n }\n }\n if (enableHardwareAcceleration && !transform.z) {\n transformString += \"translateZ(0)\";\n }\n transformString = transformString.trim();\n // If we have a custom `transform` template, pass our transform values and\n // generated transformString to that before returning\n if (transformTemplate) {\n transformString = transformTemplate(transform, transformIsDefault ? \"\" : transformString);\n }\n else if (allowTransformNone && transformIsDefault) {\n transformString = \"none\";\n }\n return transformString;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvYnVpbGQtdHJhbnNmb3JtLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFxRDs7QUFFckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0JBQXNCLDhEQUFrQjtBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxxQ0FBcUMsK0RBQStEO0FBQ3BHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixtQkFBbUI7QUFDdkMsb0JBQW9CLDhEQUFrQjtBQUN0QztBQUNBO0FBQ0Esa0NBQWtDLGNBQWMsR0FBRyxlQUFlO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9odG1sL3V0aWxzL2J1aWxkLXRyYW5zZm9ybS5tanM/NmNlMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0cmFuc2Zvcm1Qcm9wT3JkZXIgfSBmcm9tICcuL3RyYW5zZm9ybS5tanMnO1xuXG5jb25zdCB0cmFuc2xhdGVBbGlhcyA9IHtcbiAgICB4OiBcInRyYW5zbGF0ZVhcIixcbiAgICB5OiBcInRyYW5zbGF0ZVlcIixcbiAgICB6OiBcInRyYW5zbGF0ZVpcIixcbiAgICB0cmFuc2Zvcm1QZXJzcGVjdGl2ZTogXCJwZXJzcGVjdGl2ZVwiLFxufTtcbmNvbnN0IG51bVRyYW5zZm9ybXMgPSB0cmFuc2Zvcm1Qcm9wT3JkZXIubGVuZ3RoO1xuLyoqXG4gKiBCdWlsZCBhIENTUyB0cmFuc2Zvcm0gc3R5bGUgZnJvbSBpbmRpdmlkdWFsIHgveS9zY2FsZSBldGMgcHJvcGVydGllcy5cbiAqXG4gKiBUaGlzIG91dHB1dHMgd2l0aCBhIGRlZmF1bHQgb3JkZXIgb2YgdHJhbnNmb3Jtcy9zY2FsZXMvcm90YXRpb25zLCB0aGlzIGNhbiBiZSBjdXN0b21pc2VkIGJ5XG4gKiBwcm92aWRpbmcgYSB0cmFuc2Zvcm1UZW1wbGF0ZSBmdW5jdGlvbi5cbiAqL1xuZnVuY3Rpb24gYnVpbGRUcmFuc2Zvcm0odHJhbnNmb3JtLCB7IGVuYWJsZUhhcmR3YXJlQWNjZWxlcmF0aW9uID0gdHJ1ZSwgYWxsb3dUcmFuc2Zvcm1Ob25lID0gdHJ1ZSwgfSwgdHJhbnNmb3JtSXNEZWZhdWx0LCB0cmFuc2Zvcm1UZW1wbGF0ZSkge1xuICAgIC8vIFRoZSB0cmFuc2Zvcm0gc3RyaW5nIHdlJ3JlIGdvaW5nIHRvIGJ1aWxkIGludG8uXG4gICAgbGV0IHRyYW5zZm9ybVN0cmluZyA9IFwiXCI7XG4gICAgLyoqXG4gICAgICogTG9vcCBvdmVyIGFsbCBwb3NzaWJsZSB0cmFuc2Zvcm1zIGluIG9yZGVyLCBhZGRpbmcgdGhlIG9uZXMgdGhhdFxuICAgICAqIGFyZSBwcmVzZW50IHRvIHRoZSB0cmFuc2Zvcm0gc3RyaW5nLlxuICAgICAqL1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtVHJhbnNmb3JtczsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IHRyYW5zZm9ybVByb3BPcmRlcltpXTtcbiAgICAgICAgaWYgKHRyYW5zZm9ybVtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybU5hbWUgPSB0cmFuc2xhdGVBbGlhc1trZXldIHx8IGtleTtcbiAgICAgICAgICAgIHRyYW5zZm9ybVN0cmluZyArPSBgJHt0cmFuc2Zvcm1OYW1lfSgke3RyYW5zZm9ybVtrZXldfSkgYDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAoZW5hYmxlSGFyZHdhcmVBY2NlbGVyYXRpb24gJiYgIXRyYW5zZm9ybS56KSB7XG4gICAgICAgIHRyYW5zZm9ybVN0cmluZyArPSBcInRyYW5zbGF0ZVooMClcIjtcbiAgICB9XG4gICAgdHJhbnNmb3JtU3RyaW5nID0gdHJhbnNmb3JtU3RyaW5nLnRyaW0oKTtcbiAgICAvLyBJZiB3ZSBoYXZlIGEgY3VzdG9tIGB0cmFuc2Zvcm1gIHRlbXBsYXRlLCBwYXNzIG91ciB0cmFuc2Zvcm0gdmFsdWVzIGFuZFxuICAgIC8vIGdlbmVyYXRlZCB0cmFuc2Zvcm1TdHJpbmcgdG8gdGhhdCBiZWZvcmUgcmV0dXJuaW5nXG4gICAgaWYgKHRyYW5zZm9ybVRlbXBsYXRlKSB7XG4gICAgICAgIHRyYW5zZm9ybVN0cmluZyA9IHRyYW5zZm9ybVRlbXBsYXRlKHRyYW5zZm9ybSwgdHJhbnNmb3JtSXNEZWZhdWx0ID8gXCJcIiA6IHRyYW5zZm9ybVN0cmluZyk7XG4gICAgfVxuICAgIGVsc2UgaWYgKGFsbG93VHJhbnNmb3JtTm9uZSAmJiB0cmFuc2Zvcm1Jc0RlZmF1bHQpIHtcbiAgICAgICAgdHJhbnNmb3JtU3RyaW5nID0gXCJub25lXCI7XG4gICAgfVxuICAgIHJldHVybiB0cmFuc2Zvcm1TdHJpbmc7XG59XG5cbmV4cG9ydCB7IGJ1aWxkVHJhbnNmb3JtIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs":
|
||
/*!**************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs ***!
|
||
\**************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createHtmlRenderState: function() { return /* binding */ createHtmlRenderState; }\n/* harmony export */ });\nconst createHtmlRenderState = () => ({\n style: {},\n transform: {},\n transformOrigin: {},\n vars: {},\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvY3JlYXRlLXJlbmRlci1zdGF0ZS5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0EsYUFBYTtBQUNiLGlCQUFpQjtBQUNqQix1QkFBdUI7QUFDdkIsWUFBWTtBQUNaLENBQUM7O0FBRWdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvY3JlYXRlLXJlbmRlci1zdGF0ZS5tanM/NmJlYiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBjcmVhdGVIdG1sUmVuZGVyU3RhdGUgPSAoKSA9PiAoe1xuICAgIHN0eWxlOiB7fSxcbiAgICB0cmFuc2Zvcm06IHt9LFxuICAgIHRyYW5zZm9ybU9yaWdpbjoge30sXG4gICAgdmFyczoge30sXG59KTtcblxuZXhwb3J0IHsgY3JlYXRlSHRtbFJlbmRlclN0YXRlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/render.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ renderHTML: function() { return /* binding */ renderHTML; }\n/* harmony export */ });\nfunction renderHTML(element, { style, vars }, styleProp, projection) {\n Object.assign(element.style, style, projection && projection.getProjectionStyles(styleProp));\n // Loop over any CSS variables and assign those.\n for (const key in vars) {\n element.style.setProperty(key, vars[key]);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvcmVuZGVyLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQStCLGFBQWE7QUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVzQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9odG1sL3V0aWxzL3JlbmRlci5tanM/NWNhNiJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiByZW5kZXJIVE1MKGVsZW1lbnQsIHsgc3R5bGUsIHZhcnMgfSwgc3R5bGVQcm9wLCBwcm9qZWN0aW9uKSB7XG4gICAgT2JqZWN0LmFzc2lnbihlbGVtZW50LnN0eWxlLCBzdHlsZSwgcHJvamVjdGlvbiAmJiBwcm9qZWN0aW9uLmdldFByb2plY3Rpb25TdHlsZXMoc3R5bGVQcm9wKSk7XG4gICAgLy8gTG9vcCBvdmVyIGFueSBDU1MgdmFyaWFibGVzIGFuZCBhc3NpZ24gdGhvc2UuXG4gICAgZm9yIChjb25zdCBrZXkgaW4gdmFycykge1xuICAgICAgICBlbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KGtleSwgdmFyc1trZXldKTtcbiAgICB9XG59XG5cbmV4cG9ydCB7IHJlbmRlckhUTUwgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs":
|
||
/*!***************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs ***!
|
||
\***************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ scrapeMotionValuesFromProps: function() { return /* binding */ scrapeMotionValuesFromProps; }\n/* harmony export */ });\n/* harmony import */ var _motion_utils_is_forced_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../motion/utils/is-forced-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\nfunction scrapeMotionValuesFromProps(props, prevProps) {\n const { style } = props;\n const newValues = {};\n for (const key in style) {\n if ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(style[key]) ||\n (prevProps.style && (0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(prevProps.style[key])) ||\n (0,_motion_utils_is_forced_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__.isForcedMotionValue)(key, props)) {\n newValues[key] = style[key];\n }\n }\n return newValues;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvc2NyYXBlLW1vdGlvbi12YWx1ZXMubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUF1RjtBQUNkOztBQUV6RTtBQUNBLFlBQVksUUFBUTtBQUNwQjtBQUNBO0FBQ0EsWUFBWSwrRUFBYTtBQUN6QixnQ0FBZ0MsK0VBQWE7QUFDN0MsWUFBWSw2RkFBbUI7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFdUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvaHRtbC91dGlscy9zY3JhcGUtbW90aW9uLXZhbHVlcy5tanM/YzRmMSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0ZvcmNlZE1vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vLi4vbW90aW9uL3V0aWxzL2lzLWZvcmNlZC1tb3Rpb24tdmFsdWUubWpzJztcbmltcG9ydCB7IGlzTW90aW9uVmFsdWUgfSBmcm9tICcuLi8uLi8uLi92YWx1ZS91dGlscy9pcy1tb3Rpb24tdmFsdWUubWpzJztcblxuZnVuY3Rpb24gc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzKHByb3BzLCBwcmV2UHJvcHMpIHtcbiAgICBjb25zdCB7IHN0eWxlIH0gPSBwcm9wcztcbiAgICBjb25zdCBuZXdWYWx1ZXMgPSB7fTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBzdHlsZSkge1xuICAgICAgICBpZiAoaXNNb3Rpb25WYWx1ZShzdHlsZVtrZXldKSB8fFxuICAgICAgICAgICAgKHByZXZQcm9wcy5zdHlsZSAmJiBpc01vdGlvblZhbHVlKHByZXZQcm9wcy5zdHlsZVtrZXldKSkgfHxcbiAgICAgICAgICAgIGlzRm9yY2VkTW90aW9uVmFsdWUoa2V5LCBwcm9wcykpIHtcbiAgICAgICAgICAgIG5ld1ZhbHVlc1trZXldID0gc3R5bGVba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3VmFsdWVzO1xufVxuXG5leHBvcnQgeyBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ transformPropOrder: function() { return /* binding */ transformPropOrder; },\n/* harmony export */ transformProps: function() { return /* binding */ transformProps; }\n/* harmony export */ });\n/**\n * Generate a list of every possible transform key.\n */\nconst transformPropOrder = [\n \"transformPerspective\",\n \"x\",\n \"y\",\n \"z\",\n \"translateX\",\n \"translateY\",\n \"translateZ\",\n \"scale\",\n \"scaleX\",\n \"scaleY\",\n \"rotate\",\n \"rotateX\",\n \"rotateY\",\n \"rotateZ\",\n \"skew\",\n \"skewX\",\n \"skewY\",\n];\n/**\n * A quick lookup for transform props.\n */\nconst transformProps = new Set(transformPropOrder);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvdHJhbnNmb3JtLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRThDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL2h0bWwvdXRpbHMvdHJhbnNmb3JtLm1qcz9hODNjIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGUgYSBsaXN0IG9mIGV2ZXJ5IHBvc3NpYmxlIHRyYW5zZm9ybSBrZXkuXG4gKi9cbmNvbnN0IHRyYW5zZm9ybVByb3BPcmRlciA9IFtcbiAgICBcInRyYW5zZm9ybVBlcnNwZWN0aXZlXCIsXG4gICAgXCJ4XCIsXG4gICAgXCJ5XCIsXG4gICAgXCJ6XCIsXG4gICAgXCJ0cmFuc2xhdGVYXCIsXG4gICAgXCJ0cmFuc2xhdGVZXCIsXG4gICAgXCJ0cmFuc2xhdGVaXCIsXG4gICAgXCJzY2FsZVwiLFxuICAgIFwic2NhbGVYXCIsXG4gICAgXCJzY2FsZVlcIixcbiAgICBcInJvdGF0ZVwiLFxuICAgIFwicm90YXRlWFwiLFxuICAgIFwicm90YXRlWVwiLFxuICAgIFwicm90YXRlWlwiLFxuICAgIFwic2tld1wiLFxuICAgIFwic2tld1hcIixcbiAgICBcInNrZXdZXCIsXG5dO1xuLyoqXG4gKiBBIHF1aWNrIGxvb2t1cCBmb3IgdHJhbnNmb3JtIHByb3BzLlxuICovXG5jb25zdCB0cmFuc2Zvcm1Qcm9wcyA9IG5ldyBTZXQodHJhbnNmb3JtUHJvcE9yZGVyKTtcblxuZXhwb3J0IHsgdHJhbnNmb3JtUHJvcE9yZGVyLCB0cmFuc2Zvcm1Qcm9wcyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/store.mjs":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/store.mjs ***!
|
||
\*************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ visualElementStore: function() { return /* binding */ visualElementStore; }\n/* harmony export */ });\nconst visualElementStore = new WeakMap();\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N0b3JlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N0b3JlLm1qcz85ZTRmIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHZpc3VhbEVsZW1lbnRTdG9yZSA9IG5ldyBXZWFrTWFwKCk7XG5cbmV4cG9ydCB7IHZpc3VhbEVsZW1lbnRTdG9yZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/store.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SVGVisualElement: function() { return /* binding */ SVGVisualElement; }\n/* harmony export */ });\n/* harmony import */ var _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/scrape-motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs\");\n/* harmony import */ var _dom_DOMVisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom/DOMVisualElement.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs\");\n/* harmony import */ var _utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./utils/build-attrs.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs\");\n/* harmony import */ var _dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../dom/utils/camel-to-dash.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs\");\n/* harmony import */ var _utils_camel_case_attrs_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/camel-case-attrs.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs\");\n/* harmony import */ var _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n/* harmony import */ var _utils_render_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./utils/render.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs\");\n/* harmony import */ var _dom_value_types_defaults_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dom/value-types/defaults.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs\");\n/* harmony import */ var _projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../projection/geometry/models.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/projection/geometry/models.mjs\");\n/* harmony import */ var _utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/is-svg-tag.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs\");\n\n\n\n\n\n\n\n\n\n\n\nclass SVGVisualElement extends _dom_DOMVisualElement_mjs__WEBPACK_IMPORTED_MODULE_0__.DOMVisualElement {\n constructor() {\n super(...arguments);\n this.type = \"svg\";\n this.isSVGTag = false;\n }\n getBaseTargetFromProps(props, key) {\n return props[key];\n }\n readValueFromInstance(instance, key) {\n if (_html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_1__.transformProps.has(key)) {\n const defaultType = (0,_dom_value_types_defaults_mjs__WEBPACK_IMPORTED_MODULE_2__.getDefaultValueType)(key);\n return defaultType ? defaultType.default || 0 : 0;\n }\n key = !_utils_camel_case_attrs_mjs__WEBPACK_IMPORTED_MODULE_3__.camelCaseAttributes.has(key) ? (0,_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_4__.camelToDash)(key) : key;\n return instance.getAttribute(key);\n }\n measureInstanceViewportBox() {\n return (0,_projection_geometry_models_mjs__WEBPACK_IMPORTED_MODULE_5__.createBox)();\n }\n scrapeMotionValuesFromProps(props, prevProps) {\n return (0,_utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_6__.scrapeMotionValuesFromProps)(props, prevProps);\n }\n build(renderState, latestValues, options, props) {\n (0,_utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_7__.buildSVGAttrs)(renderState, latestValues, options, this.isSVGTag, props.transformTemplate);\n }\n renderInstance(instance, renderState, styleProp, projection) {\n (0,_utils_render_mjs__WEBPACK_IMPORTED_MODULE_8__.renderSVG)(instance, renderState, styleProp, projection);\n }\n mount(instance) {\n this.isSVGTag = (0,_utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_9__.isSVGTag)(instance.tagName);\n super.mount(instance);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy9TVkdWaXN1YWxFbGVtZW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUErRTtBQUNoQjtBQUNQO0FBQ0s7QUFDTTtBQUNOO0FBQ2Q7QUFDdUI7QUFDTDtBQUNmOztBQUVsRCwrQkFBK0IsdUVBQWdCO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVkscUVBQWM7QUFDMUIsZ0NBQWdDLGtGQUFtQjtBQUNuRDtBQUNBO0FBQ0EsZUFBZSw0RUFBbUIsWUFBWSx5RUFBVztBQUN6RDtBQUNBO0FBQ0E7QUFDQSxlQUFlLDBFQUFTO0FBQ3hCO0FBQ0E7QUFDQSxlQUFlLDRGQUEyQjtBQUMxQztBQUNBO0FBQ0EsUUFBUSxxRUFBYTtBQUNyQjtBQUNBO0FBQ0EsUUFBUSw0REFBUztBQUNqQjtBQUNBO0FBQ0Esd0JBQXdCLCtEQUFRO0FBQ2hDO0FBQ0E7QUFDQTs7QUFFNEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvc3ZnL1NWR1Zpc3VhbEVsZW1lbnQubWpzP2I1MzMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzIH0gZnJvbSAnLi91dGlscy9zY3JhcGUtbW90aW9uLXZhbHVlcy5tanMnO1xuaW1wb3J0IHsgRE9NVmlzdWFsRWxlbWVudCB9IGZyb20gJy4uL2RvbS9ET01WaXN1YWxFbGVtZW50Lm1qcyc7XG5pbXBvcnQgeyBidWlsZFNWR0F0dHJzIH0gZnJvbSAnLi91dGlscy9idWlsZC1hdHRycy5tanMnO1xuaW1wb3J0IHsgY2FtZWxUb0Rhc2ggfSBmcm9tICcuLi9kb20vdXRpbHMvY2FtZWwtdG8tZGFzaC5tanMnO1xuaW1wb3J0IHsgY2FtZWxDYXNlQXR0cmlidXRlcyB9IGZyb20gJy4vdXRpbHMvY2FtZWwtY2FzZS1hdHRycy5tanMnO1xuaW1wb3J0IHsgdHJhbnNmb3JtUHJvcHMgfSBmcm9tICcuLi9odG1sL3V0aWxzL3RyYW5zZm9ybS5tanMnO1xuaW1wb3J0IHsgcmVuZGVyU1ZHIH0gZnJvbSAnLi91dGlscy9yZW5kZXIubWpzJztcbmltcG9ydCB7IGdldERlZmF1bHRWYWx1ZVR5cGUgfSBmcm9tICcuLi9kb20vdmFsdWUtdHlwZXMvZGVmYXVsdHMubWpzJztcbmltcG9ydCB7IGNyZWF0ZUJveCB9IGZyb20gJy4uLy4uL3Byb2plY3Rpb24vZ2VvbWV0cnkvbW9kZWxzLm1qcyc7XG5pbXBvcnQgeyBpc1NWR1RhZyB9IGZyb20gJy4vdXRpbHMvaXMtc3ZnLXRhZy5tanMnO1xuXG5jbGFzcyBTVkdWaXN1YWxFbGVtZW50IGV4dGVuZHMgRE9NVmlzdWFsRWxlbWVudCB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKC4uLmFyZ3VtZW50cyk7XG4gICAgICAgIHRoaXMudHlwZSA9IFwic3ZnXCI7XG4gICAgICAgIHRoaXMuaXNTVkdUYWcgPSBmYWxzZTtcbiAgICB9XG4gICAgZ2V0QmFzZVRhcmdldEZyb21Qcm9wcyhwcm9wcywga2V5KSB7XG4gICAgICAgIHJldHVybiBwcm9wc1trZXldO1xuICAgIH1cbiAgICByZWFkVmFsdWVGcm9tSW5zdGFuY2UoaW5zdGFuY2UsIGtleSkge1xuICAgICAgICBpZiAodHJhbnNmb3JtUHJvcHMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRUeXBlID0gZ2V0RGVmYXVsdFZhbHVlVHlwZShrZXkpO1xuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRUeXBlID8gZGVmYXVsdFR5cGUuZGVmYXVsdCB8fCAwIDogMDtcbiAgICAgICAgfVxuICAgICAgICBrZXkgPSAhY2FtZWxDYXNlQXR0cmlidXRlcy5oYXMoa2V5KSA/IGNhbWVsVG9EYXNoKGtleSkgOiBrZXk7XG4gICAgICAgIHJldHVybiBpbnN0YW5jZS5nZXRBdHRyaWJ1dGUoa2V5KTtcbiAgICB9XG4gICAgbWVhc3VyZUluc3RhbmNlVmlld3BvcnRCb3goKSB7XG4gICAgICAgIHJldHVybiBjcmVhdGVCb3goKTtcbiAgICB9XG4gICAgc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzKHByb3BzLCBwcmV2UHJvcHMpIHtcbiAgICAgICAgcmV0dXJuIHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyhwcm9wcywgcHJldlByb3BzKTtcbiAgICB9XG4gICAgYnVpbGQocmVuZGVyU3RhdGUsIGxhdGVzdFZhbHVlcywgb3B0aW9ucywgcHJvcHMpIHtcbiAgICAgICAgYnVpbGRTVkdBdHRycyhyZW5kZXJTdGF0ZSwgbGF0ZXN0VmFsdWVzLCBvcHRpb25zLCB0aGlzLmlzU1ZHVGFnLCBwcm9wcy50cmFuc2Zvcm1UZW1wbGF0ZSk7XG4gICAgfVxuICAgIHJlbmRlckluc3RhbmNlKGluc3RhbmNlLCByZW5kZXJTdGF0ZSwgc3R5bGVQcm9wLCBwcm9qZWN0aW9uKSB7XG4gICAgICAgIHJlbmRlclNWRyhpbnN0YW5jZSwgcmVuZGVyU3RhdGUsIHN0eWxlUHJvcCwgcHJvamVjdGlvbik7XG4gICAgfVxuICAgIG1vdW50KGluc3RhbmNlKSB7XG4gICAgICAgIHRoaXMuaXNTVkdUYWcgPSBpc1NWR1RhZyhpbnN0YW5jZS50YWdOYW1lKTtcbiAgICAgICAgc3VwZXIubW91bnQoaW5zdGFuY2UpO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgU1ZHVmlzdWFsRWxlbWVudCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ svgMotionConfig: function() { return /* binding */ svgMotionConfig; }\n/* harmony export */ });\n/* harmony import */ var _utils_render_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/render.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs\");\n/* harmony import */ var _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/scrape-motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs\");\n/* harmony import */ var _motion_utils_use_visual_state_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../motion/utils/use-visual-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs\");\n/* harmony import */ var _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/create-render-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs\");\n/* harmony import */ var _utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/build-attrs.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs\");\n/* harmony import */ var _utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/is-svg-tag.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\n\n\n\nconst svgMotionConfig = {\n useVisualState: (0,_motion_utils_use_visual_state_mjs__WEBPACK_IMPORTED_MODULE_0__.makeUseVisualState)({\n scrapeMotionValuesFromProps: _utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_1__.scrapeMotionValuesFromProps,\n createRenderState: _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_2__.createSvgRenderState,\n onMount: (props, instance, { renderState, latestValues }) => {\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.read(() => {\n try {\n renderState.dimensions =\n typeof instance.getBBox ===\n \"function\"\n ? instance.getBBox()\n : instance.getBoundingClientRect();\n }\n catch (e) {\n // Most likely trying to measure an unrendered element under Firefox\n renderState.dimensions = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n };\n }\n });\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_3__.frame.render(() => {\n (0,_utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_4__.buildSVGAttrs)(renderState, latestValues, { enableHardwareAcceleration: false }, (0,_utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_5__.isSVGTag)(instance.tagName), props.transformTemplate);\n (0,_utils_render_mjs__WEBPACK_IMPORTED_MODULE_6__.renderSVG)(instance, renderState);\n });\n },\n }),\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy9jb25maWctbW90aW9uLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUErQztBQUNnQztBQUNGO0FBQ047QUFDZjtBQUNOO0FBQ0E7O0FBRWxEO0FBQ0Esb0JBQW9CLHNGQUFrQjtBQUN0QyxxQ0FBcUMsd0ZBQTJCO0FBQ2hFLDJCQUEyQixnRkFBb0I7QUFDL0MscUNBQXFDLDJCQUEyQjtBQUNoRSxZQUFZLHVEQUFLO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiLFlBQVksdURBQUs7QUFDakIsZ0JBQWdCLHFFQUFhLDhCQUE4QixtQ0FBbUMsRUFBRSwrREFBUTtBQUN4RyxnQkFBZ0IsNERBQVM7QUFDekIsYUFBYTtBQUNiLFNBQVM7QUFDVCxLQUFLO0FBQ0w7O0FBRTJCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy9jb25maWctbW90aW9uLm1qcz80ODM0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlbmRlclNWRyB9IGZyb20gJy4vdXRpbHMvcmVuZGVyLm1qcyc7XG5pbXBvcnQgeyBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMgfSBmcm9tICcuL3V0aWxzL3NjcmFwZS1tb3Rpb24tdmFsdWVzLm1qcyc7XG5pbXBvcnQgeyBtYWtlVXNlVmlzdWFsU3RhdGUgfSBmcm9tICcuLi8uLi9tb3Rpb24vdXRpbHMvdXNlLXZpc3VhbC1zdGF0ZS5tanMnO1xuaW1wb3J0IHsgY3JlYXRlU3ZnUmVuZGVyU3RhdGUgfSBmcm9tICcuL3V0aWxzL2NyZWF0ZS1yZW5kZXItc3RhdGUubWpzJztcbmltcG9ydCB7IGJ1aWxkU1ZHQXR0cnMgfSBmcm9tICcuL3V0aWxzL2J1aWxkLWF0dHJzLm1qcyc7XG5pbXBvcnQgeyBpc1NWR1RhZyB9IGZyb20gJy4vdXRpbHMvaXMtc3ZnLXRhZy5tanMnO1xuaW1wb3J0IHsgZnJhbWUgfSBmcm9tICcuLi8uLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuY29uc3Qgc3ZnTW90aW9uQ29uZmlnID0ge1xuICAgIHVzZVZpc3VhbFN0YXRlOiBtYWtlVXNlVmlzdWFsU3RhdGUoe1xuICAgICAgICBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHM6IHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyxcbiAgICAgICAgY3JlYXRlUmVuZGVyU3RhdGU6IGNyZWF0ZVN2Z1JlbmRlclN0YXRlLFxuICAgICAgICBvbk1vdW50OiAocHJvcHMsIGluc3RhbmNlLCB7IHJlbmRlclN0YXRlLCBsYXRlc3RWYWx1ZXMgfSkgPT4ge1xuICAgICAgICAgICAgZnJhbWUucmVhZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyU3RhdGUuZGltZW5zaW9ucyA9XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgaW5zdGFuY2UuZ2V0QkJveCA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImZ1bmN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGluc3RhbmNlLmdldEJCb3goKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogaW5zdGFuY2UuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIE1vc3QgbGlrZWx5IHRyeWluZyB0byBtZWFzdXJlIGFuIHVucmVuZGVyZWQgZWxlbWVudCB1bmRlciBGaXJlZm94XG4gICAgICAgICAgICAgICAgICAgIHJlbmRlclN0YXRlLmRpbWVuc2lvbnMgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB4OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgeTogMCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgZnJhbWUucmVuZGVyKCgpID0+IHtcbiAgICAgICAgICAgICAgICBidWlsZFNWR0F0dHJzKHJlbmRlclN0YXRlLCBsYXRlc3RWYWx1ZXMsIHsgZW5hYmxlSGFyZHdhcmVBY2NlbGVyYXRpb246IGZhbHNlIH0sIGlzU1ZHVGFnKGluc3RhbmNlLnRhZ05hbWUpLCBwcm9wcy50cmFuc2Zvcm1UZW1wbGF0ZSk7XG4gICAgICAgICAgICAgICAgcmVuZGVyU1ZHKGluc3RhbmNlLCByZW5kZXJTdGF0ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICB9KSxcbn07XG5cbmV4cG9ydCB7IHN2Z01vdGlvbkNvbmZpZyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/config-motion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ lowercaseSVGElements: function() { return /* binding */ lowercaseSVGElements; }\n/* harmony export */ });\n/**\n * We keep these listed seperately as we use the lowercase tag names as part\n * of the runtime bundle to detect SVG components\n */\nconst lowercaseSVGElements = [\n \"animate\",\n \"circle\",\n \"defs\",\n \"desc\",\n \"ellipse\",\n \"g\",\n \"image\",\n \"line\",\n \"filter\",\n \"marker\",\n \"mask\",\n \"metadata\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"rect\",\n \"stop\",\n \"switch\",\n \"symbol\",\n \"svg\",\n \"text\",\n \"tspan\",\n \"use\",\n \"view\",\n];\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy9sb3dlcmNhc2UtZWxlbWVudHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFZ0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvc3ZnL2xvd2VyY2FzZS1lbGVtZW50cy5tanM/YmZmOSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFdlIGtlZXAgdGhlc2UgbGlzdGVkIHNlcGVyYXRlbHkgYXMgd2UgdXNlIHRoZSBsb3dlcmNhc2UgdGFnIG5hbWVzIGFzIHBhcnRcbiAqIG9mIHRoZSBydW50aW1lIGJ1bmRsZSB0byBkZXRlY3QgU1ZHIGNvbXBvbmVudHNcbiAqL1xuY29uc3QgbG93ZXJjYXNlU1ZHRWxlbWVudHMgPSBbXG4gICAgXCJhbmltYXRlXCIsXG4gICAgXCJjaXJjbGVcIixcbiAgICBcImRlZnNcIixcbiAgICBcImRlc2NcIixcbiAgICBcImVsbGlwc2VcIixcbiAgICBcImdcIixcbiAgICBcImltYWdlXCIsXG4gICAgXCJsaW5lXCIsXG4gICAgXCJmaWx0ZXJcIixcbiAgICBcIm1hcmtlclwiLFxuICAgIFwibWFza1wiLFxuICAgIFwibWV0YWRhdGFcIixcbiAgICBcInBhdGhcIixcbiAgICBcInBhdHRlcm5cIixcbiAgICBcInBvbHlnb25cIixcbiAgICBcInBvbHlsaW5lXCIsXG4gICAgXCJyZWN0XCIsXG4gICAgXCJzdG9wXCIsXG4gICAgXCJzd2l0Y2hcIixcbiAgICBcInN5bWJvbFwiLFxuICAgIFwic3ZnXCIsXG4gICAgXCJ0ZXh0XCIsXG4gICAgXCJ0c3BhblwiLFxuICAgIFwidXNlXCIsXG4gICAgXCJ2aWV3XCIsXG5dO1xuXG5leHBvcnQgeyBsb3dlcmNhc2VTVkdFbGVtZW50cyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/use-props.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/use-props.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useSVGProps: function() { return /* binding */ useSVGProps; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _html_use_props_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../html/use-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/use-props.mjs\");\n/* harmony import */ var _utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/build-attrs.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs\");\n/* harmony import */ var _utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils/create-render-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs\");\n/* harmony import */ var _utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/is-svg-tag.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs\");\n\n\n\n\n\n\nfunction useSVGProps(props, visualState, _isStatic, Component) {\n const visualProps = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => {\n const state = (0,_utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_1__.createSvgRenderState)();\n (0,_utils_build_attrs_mjs__WEBPACK_IMPORTED_MODULE_2__.buildSVGAttrs)(state, visualState, { enableHardwareAcceleration: false }, (0,_utils_is_svg_tag_mjs__WEBPACK_IMPORTED_MODULE_3__.isSVGTag)(Component), props.transformTemplate);\n return {\n ...state.attrs,\n style: { ...state.style },\n };\n }, [visualState]);\n if (props.style) {\n const rawStyles = {};\n (0,_html_use_props_mjs__WEBPACK_IMPORTED_MODULE_4__.copyRawValuesOnly)(rawStyles, props.style, props);\n visualProps.style = { ...rawStyles, ...visualProps.style };\n }\n return visualProps;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91c2UtcHJvcHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFnQztBQUMwQjtBQUNGO0FBQ2U7QUFDckI7O0FBRWxEO0FBQ0Esd0JBQXdCLDhDQUFPO0FBQy9CLHNCQUFzQixvRkFBb0I7QUFDMUMsUUFBUSxxRUFBYSx1QkFBdUIsbUNBQW1DLEVBQUUsK0RBQVE7QUFDekY7QUFDQTtBQUNBLHFCQUFxQixnQkFBZ0I7QUFDckM7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLFFBQVEsc0VBQWlCO0FBQ3pCLDhCQUE4QjtBQUM5QjtBQUNBO0FBQ0E7O0FBRXVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91c2UtcHJvcHMubWpzPzE3ZDkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvcHlSYXdWYWx1ZXNPbmx5IH0gZnJvbSAnLi4vaHRtbC91c2UtcHJvcHMubWpzJztcbmltcG9ydCB7IGJ1aWxkU1ZHQXR0cnMgfSBmcm9tICcuL3V0aWxzL2J1aWxkLWF0dHJzLm1qcyc7XG5pbXBvcnQgeyBjcmVhdGVTdmdSZW5kZXJTdGF0ZSB9IGZyb20gJy4vdXRpbHMvY3JlYXRlLXJlbmRlci1zdGF0ZS5tanMnO1xuaW1wb3J0IHsgaXNTVkdUYWcgfSBmcm9tICcuL3V0aWxzL2lzLXN2Zy10YWcubWpzJztcblxuZnVuY3Rpb24gdXNlU1ZHUHJvcHMocHJvcHMsIHZpc3VhbFN0YXRlLCBfaXNTdGF0aWMsIENvbXBvbmVudCkge1xuICAgIGNvbnN0IHZpc3VhbFByb3BzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gY3JlYXRlU3ZnUmVuZGVyU3RhdGUoKTtcbiAgICAgICAgYnVpbGRTVkdBdHRycyhzdGF0ZSwgdmlzdWFsU3RhdGUsIHsgZW5hYmxlSGFyZHdhcmVBY2NlbGVyYXRpb246IGZhbHNlIH0sIGlzU1ZHVGFnKENvbXBvbmVudCksIHByb3BzLnRyYW5zZm9ybVRlbXBsYXRlKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnN0YXRlLmF0dHJzLFxuICAgICAgICAgICAgc3R5bGU6IHsgLi4uc3RhdGUuc3R5bGUgfSxcbiAgICAgICAgfTtcbiAgICB9LCBbdmlzdWFsU3RhdGVdKTtcbiAgICBpZiAocHJvcHMuc3R5bGUpIHtcbiAgICAgICAgY29uc3QgcmF3U3R5bGVzID0ge307XG4gICAgICAgIGNvcHlSYXdWYWx1ZXNPbmx5KHJhd1N0eWxlcywgcHJvcHMuc3R5bGUsIHByb3BzKTtcbiAgICAgICAgdmlzdWFsUHJvcHMuc3R5bGUgPSB7IC4uLnJhd1N0eWxlcywgLi4udmlzdWFsUHJvcHMuc3R5bGUgfTtcbiAgICB9XG4gICAgcmV0dXJuIHZpc3VhbFByb3BzO1xufVxuXG5leHBvcnQgeyB1c2VTVkdQcm9wcyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/use-props.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildSVGAttrs: function() { return /* binding */ buildSVGAttrs; }\n/* harmony export */ });\n/* harmony import */ var _html_utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../html/utils/build-styles.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs\");\n/* harmony import */ var _transform_origin_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./transform-origin.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs\");\n/* harmony import */ var _path_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./path.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs\");\n\n\n\n\n/**\n * Build SVG visual attrbutes, like cx and style.transform\n */\nfunction buildSVGAttrs(state, { attrX, attrY, attrScale, originX, originY, pathLength, pathSpacing = 1, pathOffset = 0, \n// This is object creation, which we try to avoid per-frame.\n...latest }, options, isSVGTag, transformTemplate) {\n (0,_html_utils_build_styles_mjs__WEBPACK_IMPORTED_MODULE_0__.buildHTMLStyles)(state, latest, options, transformTemplate);\n /**\n * For svg tags we just want to make sure viewBox is animatable and treat all the styles\n * as normal HTML tags.\n */\n if (isSVGTag) {\n if (state.style.viewBox) {\n state.attrs.viewBox = state.style.viewBox;\n }\n return;\n }\n state.attrs = state.style;\n state.style = {};\n const { attrs, style, dimensions } = state;\n /**\n * However, we apply transforms as CSS transforms. So if we detect a transform we take it from attrs\n * and copy it into style.\n */\n if (attrs.transform) {\n if (dimensions)\n style.transform = attrs.transform;\n delete attrs.transform;\n }\n // Parse transformOrigin\n if (dimensions &&\n (originX !== undefined || originY !== undefined || style.transform)) {\n style.transformOrigin = (0,_transform_origin_mjs__WEBPACK_IMPORTED_MODULE_1__.calcSVGTransformOrigin)(dimensions, originX !== undefined ? originX : 0.5, originY !== undefined ? originY : 0.5);\n }\n // Render attrX/attrY/attrScale as attributes\n if (attrX !== undefined)\n attrs.x = attrX;\n if (attrY !== undefined)\n attrs.y = attrY;\n if (attrScale !== undefined)\n attrs.scale = attrScale;\n // Build SVG path if one has been defined\n if (pathLength !== undefined) {\n (0,_path_mjs__WEBPACK_IMPORTED_MODULE_2__.buildSVGPath)(attrs, pathLength, pathSpacing, pathOffset, false);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9idWlsZC1hdHRycy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFvRTtBQUNKO0FBQ3RCOztBQUUxQztBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0M7QUFDaEM7QUFDQSxXQUFXO0FBQ1gsSUFBSSw2RUFBZTtBQUNuQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLDJCQUEyQjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0MsNkVBQXNCO0FBQ3REO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSx1REFBWTtBQUNwQjtBQUNBOztBQUV5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9zdmcvdXRpbHMvYnVpbGQtYXR0cnMubWpzP2U1MDIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYnVpbGRIVE1MU3R5bGVzIH0gZnJvbSAnLi4vLi4vaHRtbC91dGlscy9idWlsZC1zdHlsZXMubWpzJztcbmltcG9ydCB7IGNhbGNTVkdUcmFuc2Zvcm1PcmlnaW4gfSBmcm9tICcuL3RyYW5zZm9ybS1vcmlnaW4ubWpzJztcbmltcG9ydCB7IGJ1aWxkU1ZHUGF0aCB9IGZyb20gJy4vcGF0aC5tanMnO1xuXG4vKipcbiAqIEJ1aWxkIFNWRyB2aXN1YWwgYXR0cmJ1dGVzLCBsaWtlIGN4IGFuZCBzdHlsZS50cmFuc2Zvcm1cbiAqL1xuZnVuY3Rpb24gYnVpbGRTVkdBdHRycyhzdGF0ZSwgeyBhdHRyWCwgYXR0clksIGF0dHJTY2FsZSwgb3JpZ2luWCwgb3JpZ2luWSwgcGF0aExlbmd0aCwgcGF0aFNwYWNpbmcgPSAxLCBwYXRoT2Zmc2V0ID0gMCwgXG4vLyBUaGlzIGlzIG9iamVjdCBjcmVhdGlvbiwgd2hpY2ggd2UgdHJ5IHRvIGF2b2lkIHBlci1mcmFtZS5cbi4uLmxhdGVzdCB9LCBvcHRpb25zLCBpc1NWR1RhZywgdHJhbnNmb3JtVGVtcGxhdGUpIHtcbiAgICBidWlsZEhUTUxTdHlsZXMoc3RhdGUsIGxhdGVzdCwgb3B0aW9ucywgdHJhbnNmb3JtVGVtcGxhdGUpO1xuICAgIC8qKlxuICAgICAqIEZvciBzdmcgdGFncyB3ZSBqdXN0IHdhbnQgdG8gbWFrZSBzdXJlIHZpZXdCb3ggaXMgYW5pbWF0YWJsZSBhbmQgdHJlYXQgYWxsIHRoZSBzdHlsZXNcbiAgICAgKiBhcyBub3JtYWwgSFRNTCB0YWdzLlxuICAgICAqL1xuICAgIGlmIChpc1NWR1RhZykge1xuICAgICAgICBpZiAoc3RhdGUuc3R5bGUudmlld0JveCkge1xuICAgICAgICAgICAgc3RhdGUuYXR0cnMudmlld0JveCA9IHN0YXRlLnN0eWxlLnZpZXdCb3g7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzdGF0ZS5hdHRycyA9IHN0YXRlLnN0eWxlO1xuICAgIHN0YXRlLnN0eWxlID0ge307XG4gICAgY29uc3QgeyBhdHRycywgc3R5bGUsIGRpbWVuc2lvbnMgfSA9IHN0YXRlO1xuICAgIC8qKlxuICAgICAqIEhvd2V2ZXIsIHdlIGFwcGx5IHRyYW5zZm9ybXMgYXMgQ1NTIHRyYW5zZm9ybXMuIFNvIGlmIHdlIGRldGVjdCBhIHRyYW5zZm9ybSB3ZSB0YWtlIGl0IGZyb20gYXR0cnNcbiAgICAgKiBhbmQgY29weSBpdCBpbnRvIHN0eWxlLlxuICAgICAqL1xuICAgIGlmIChhdHRycy50cmFuc2Zvcm0pIHtcbiAgICAgICAgaWYgKGRpbWVuc2lvbnMpXG4gICAgICAgICAgICBzdHlsZS50cmFuc2Zvcm0gPSBhdHRycy50cmFuc2Zvcm07XG4gICAgICAgIGRlbGV0ZSBhdHRycy50cmFuc2Zvcm07XG4gICAgfVxuICAgIC8vIFBhcnNlIHRyYW5zZm9ybU9yaWdpblxuICAgIGlmIChkaW1lbnNpb25zICYmXG4gICAgICAgIChvcmlnaW5YICE9PSB1bmRlZmluZWQgfHwgb3JpZ2luWSAhPT0gdW5kZWZpbmVkIHx8IHN0eWxlLnRyYW5zZm9ybSkpIHtcbiAgICAgICAgc3R5bGUudHJhbnNmb3JtT3JpZ2luID0gY2FsY1NWR1RyYW5zZm9ybU9yaWdpbihkaW1lbnNpb25zLCBvcmlnaW5YICE9PSB1bmRlZmluZWQgPyBvcmlnaW5YIDogMC41LCBvcmlnaW5ZICE9PSB1bmRlZmluZWQgPyBvcmlnaW5ZIDogMC41KTtcbiAgICB9XG4gICAgLy8gUmVuZGVyIGF0dHJYL2F0dHJZL2F0dHJTY2FsZSBhcyBhdHRyaWJ1dGVzXG4gICAgaWYgKGF0dHJYICE9PSB1bmRlZmluZWQpXG4gICAgICAgIGF0dHJzLnggPSBhdHRyWDtcbiAgICBpZiAoYXR0clkgIT09IHVuZGVmaW5lZClcbiAgICAgICAgYXR0cnMueSA9IGF0dHJZO1xuICAgIGlmIChhdHRyU2NhbGUgIT09IHVuZGVmaW5lZClcbiAgICAgICAgYXR0cnMuc2NhbGUgPSBhdHRyU2NhbGU7XG4gICAgLy8gQnVpbGQgU1ZHIHBhdGggaWYgb25lIGhhcyBiZWVuIGRlZmluZWRcbiAgICBpZiAocGF0aExlbmd0aCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGJ1aWxkU1ZHUGF0aChhdHRycywgcGF0aExlbmd0aCwgcGF0aFNwYWNpbmcsIHBhdGhPZmZzZXQsIGZhbHNlKTtcbiAgICB9XG59XG5cbmV4cG9ydCB7IGJ1aWxkU1ZHQXR0cnMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ camelCaseAttributes: function() { return /* binding */ camelCaseAttributes; }\n/* harmony export */ });\n/**\n * A set of attribute names that are always read/written as camel case.\n */\nconst camelCaseAttributes = new Set([\n \"baseFrequency\",\n \"diffuseConstant\",\n \"kernelMatrix\",\n \"kernelUnitLength\",\n \"keySplines\",\n \"keyTimes\",\n \"limitingConeAngle\",\n \"markerHeight\",\n \"markerWidth\",\n \"numOctaves\",\n \"targetX\",\n \"targetY\",\n \"surfaceScale\",\n \"specularConstant\",\n \"specularExponent\",\n \"stdDeviation\",\n \"tableValues\",\n \"viewBox\",\n \"gradientTransform\",\n \"pathLength\",\n \"startOffset\",\n \"textLength\",\n \"lengthAdjust\",\n]);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9jYW1lbC1jYXNlLWF0dHJzLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRStCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9jYW1lbC1jYXNlLWF0dHJzLm1qcz9lN2UwIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBzZXQgb2YgYXR0cmlidXRlIG5hbWVzIHRoYXQgYXJlIGFsd2F5cyByZWFkL3dyaXR0ZW4gYXMgY2FtZWwgY2FzZS5cbiAqL1xuY29uc3QgY2FtZWxDYXNlQXR0cmlidXRlcyA9IG5ldyBTZXQoW1xuICAgIFwiYmFzZUZyZXF1ZW5jeVwiLFxuICAgIFwiZGlmZnVzZUNvbnN0YW50XCIsXG4gICAgXCJrZXJuZWxNYXRyaXhcIixcbiAgICBcImtlcm5lbFVuaXRMZW5ndGhcIixcbiAgICBcImtleVNwbGluZXNcIixcbiAgICBcImtleVRpbWVzXCIsXG4gICAgXCJsaW1pdGluZ0NvbmVBbmdsZVwiLFxuICAgIFwibWFya2VySGVpZ2h0XCIsXG4gICAgXCJtYXJrZXJXaWR0aFwiLFxuICAgIFwibnVtT2N0YXZlc1wiLFxuICAgIFwidGFyZ2V0WFwiLFxuICAgIFwidGFyZ2V0WVwiLFxuICAgIFwic3VyZmFjZVNjYWxlXCIsXG4gICAgXCJzcGVjdWxhckNvbnN0YW50XCIsXG4gICAgXCJzcGVjdWxhckV4cG9uZW50XCIsXG4gICAgXCJzdGREZXZpYXRpb25cIixcbiAgICBcInRhYmxlVmFsdWVzXCIsXG4gICAgXCJ2aWV3Qm94XCIsXG4gICAgXCJncmFkaWVudFRyYW5zZm9ybVwiLFxuICAgIFwicGF0aExlbmd0aFwiLFxuICAgIFwic3RhcnRPZmZzZXRcIixcbiAgICBcInRleHRMZW5ndGhcIixcbiAgICBcImxlbmd0aEFkanVzdFwiLFxuXSk7XG5cbmV4cG9ydCB7IGNhbWVsQ2FzZUF0dHJpYnV0ZXMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs":
|
||
/*!*************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs ***!
|
||
\*************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ createSvgRenderState: function() { return /* binding */ createSvgRenderState; }\n/* harmony export */ });\n/* harmony import */ var _html_utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../html/utils/create-render-state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs\");\n\n\nconst createSvgRenderState = () => ({\n ...(0,_html_utils_create_render_state_mjs__WEBPACK_IMPORTED_MODULE_0__.createHtmlRenderState)(),\n attrs: {},\n});\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9jcmVhdGUtcmVuZGVyLXN0YXRlLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFpRjs7QUFFakY7QUFDQSxPQUFPLDBGQUFxQjtBQUM1QixhQUFhO0FBQ2IsQ0FBQzs7QUFFK0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvc3ZnL3V0aWxzL2NyZWF0ZS1yZW5kZXItc3RhdGUubWpzPzlhNzYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlSHRtbFJlbmRlclN0YXRlIH0gZnJvbSAnLi4vLi4vaHRtbC91dGlscy9jcmVhdGUtcmVuZGVyLXN0YXRlLm1qcyc7XG5cbmNvbnN0IGNyZWF0ZVN2Z1JlbmRlclN0YXRlID0gKCkgPT4gKHtcbiAgICAuLi5jcmVhdGVIdG1sUmVuZGVyU3RhdGUoKSxcbiAgICBhdHRyczoge30sXG59KTtcblxuZXhwb3J0IHsgY3JlYXRlU3ZnUmVuZGVyU3RhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isSVGTag: function() { return /* binding */ isSVGTag; }\n/* harmony export */ });\nconst isSVGTag = (tag) => typeof tag === \"string\" && tag.toLowerCase() === \"svg\";\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9pcy1zdmctdGFnLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBRW9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9pcy1zdmctdGFnLm1qcz82YThlIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGlzU1ZHVGFnID0gKHRhZykgPT4gdHlwZW9mIHRhZyA9PT0gXCJzdHJpbmdcIiAmJiB0YWcudG9Mb3dlckNhc2UoKSA9PT0gXCJzdmdcIjtcblxuZXhwb3J0IHsgaXNTVkdUYWcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ buildSVGPath: function() { return /* binding */ buildSVGPath; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n\n\nconst dashKeys = {\n offset: \"stroke-dashoffset\",\n array: \"stroke-dasharray\",\n};\nconst camelKeys = {\n offset: \"strokeDashoffset\",\n array: \"strokeDasharray\",\n};\n/**\n * Build SVG path properties. Uses the path's measured length to convert\n * our custom pathLength, pathSpacing and pathOffset into stroke-dashoffset\n * and stroke-dasharray attributes.\n *\n * This function is mutative to reduce per-frame GC.\n */\nfunction buildSVGPath(attrs, length, spacing = 1, offset = 0, useDashCase = true) {\n // Normalise path length by setting SVG attribute pathLength to 1\n attrs.pathLength = 1;\n // We use dash case when setting attributes directly to the DOM node and camel case\n // when defining props on a React component.\n const keys = useDashCase ? dashKeys : camelKeys;\n // Build the dash offset\n attrs[keys.offset] = _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.transform(-offset);\n // Build the dash array\n const pathLength = _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.transform(length);\n const pathSpacing = _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.transform(spacing);\n attrs[keys.array] = `${pathLength} ${pathSpacing}`;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9wYXRoLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE0RDs7QUFFNUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsOERBQUU7QUFDM0I7QUFDQSx1QkFBdUIsOERBQUU7QUFDekIsd0JBQXdCLDhEQUFFO0FBQzFCLDJCQUEyQixZQUFZLEVBQUUsWUFBWTtBQUNyRDs7QUFFd0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvc3ZnL3V0aWxzL3BhdGgubWpzPzNkZDYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHggfSBmcm9tICcuLi8uLi8uLi92YWx1ZS90eXBlcy9udW1iZXJzL3VuaXRzLm1qcyc7XG5cbmNvbnN0IGRhc2hLZXlzID0ge1xuICAgIG9mZnNldDogXCJzdHJva2UtZGFzaG9mZnNldFwiLFxuICAgIGFycmF5OiBcInN0cm9rZS1kYXNoYXJyYXlcIixcbn07XG5jb25zdCBjYW1lbEtleXMgPSB7XG4gICAgb2Zmc2V0OiBcInN0cm9rZURhc2hvZmZzZXRcIixcbiAgICBhcnJheTogXCJzdHJva2VEYXNoYXJyYXlcIixcbn07XG4vKipcbiAqIEJ1aWxkIFNWRyBwYXRoIHByb3BlcnRpZXMuIFVzZXMgdGhlIHBhdGgncyBtZWFzdXJlZCBsZW5ndGggdG8gY29udmVydFxuICogb3VyIGN1c3RvbSBwYXRoTGVuZ3RoLCBwYXRoU3BhY2luZyBhbmQgcGF0aE9mZnNldCBpbnRvIHN0cm9rZS1kYXNob2Zmc2V0XG4gKiBhbmQgc3Ryb2tlLWRhc2hhcnJheSBhdHRyaWJ1dGVzLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gaXMgbXV0YXRpdmUgdG8gcmVkdWNlIHBlci1mcmFtZSBHQy5cbiAqL1xuZnVuY3Rpb24gYnVpbGRTVkdQYXRoKGF0dHJzLCBsZW5ndGgsIHNwYWNpbmcgPSAxLCBvZmZzZXQgPSAwLCB1c2VEYXNoQ2FzZSA9IHRydWUpIHtcbiAgICAvLyBOb3JtYWxpc2UgcGF0aCBsZW5ndGggYnkgc2V0dGluZyBTVkcgYXR0cmlidXRlIHBhdGhMZW5ndGggdG8gMVxuICAgIGF0dHJzLnBhdGhMZW5ndGggPSAxO1xuICAgIC8vIFdlIHVzZSBkYXNoIGNhc2Ugd2hlbiBzZXR0aW5nIGF0dHJpYnV0ZXMgZGlyZWN0bHkgdG8gdGhlIERPTSBub2RlIGFuZCBjYW1lbCBjYXNlXG4gICAgLy8gd2hlbiBkZWZpbmluZyBwcm9wcyBvbiBhIFJlYWN0IGNvbXBvbmVudC5cbiAgICBjb25zdCBrZXlzID0gdXNlRGFzaENhc2UgPyBkYXNoS2V5cyA6IGNhbWVsS2V5cztcbiAgICAvLyBCdWlsZCB0aGUgZGFzaCBvZmZzZXRcbiAgICBhdHRyc1trZXlzLm9mZnNldF0gPSBweC50cmFuc2Zvcm0oLW9mZnNldCk7XG4gICAgLy8gQnVpbGQgdGhlIGRhc2ggYXJyYXlcbiAgICBjb25zdCBwYXRoTGVuZ3RoID0gcHgudHJhbnNmb3JtKGxlbmd0aCk7XG4gICAgY29uc3QgcGF0aFNwYWNpbmcgPSBweC50cmFuc2Zvcm0oc3BhY2luZyk7XG4gICAgYXR0cnNba2V5cy5hcnJheV0gPSBgJHtwYXRoTGVuZ3RofSAke3BhdGhTcGFjaW5nfWA7XG59XG5cbmV4cG9ydCB7IGJ1aWxkU1ZHUGF0aCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/path.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ renderSVG: function() { return /* binding */ renderSVG; }\n/* harmony export */ });\n/* harmony import */ var _dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../dom/utils/camel-to-dash.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs\");\n/* harmony import */ var _html_utils_render_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../html/utils/render.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/render.mjs\");\n/* harmony import */ var _camel_case_attrs_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./camel-case-attrs.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs\");\n\n\n\n\nfunction renderSVG(element, renderState, _styleProp, projection) {\n (0,_html_utils_render_mjs__WEBPACK_IMPORTED_MODULE_0__.renderHTML)(element, renderState, undefined, projection);\n for (const key in renderState.attrs) {\n element.setAttribute(!_camel_case_attrs_mjs__WEBPACK_IMPORTED_MODULE_1__.camelCaseAttributes.has(key) ? (0,_dom_utils_camel_to_dash_mjs__WEBPACK_IMPORTED_MODULE_2__.camelToDash)(key) : key, renderState.attrs[key]);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9yZW5kZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBZ0U7QUFDUDtBQUNJOztBQUU3RDtBQUNBLElBQUksa0VBQVU7QUFDZDtBQUNBLDhCQUE4QixzRUFBbUIsWUFBWSx5RUFBVztBQUN4RTtBQUNBOztBQUVxQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9zdmcvdXRpbHMvcmVuZGVyLm1qcz9iZDFiIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNhbWVsVG9EYXNoIH0gZnJvbSAnLi4vLi4vZG9tL3V0aWxzL2NhbWVsLXRvLWRhc2gubWpzJztcbmltcG9ydCB7IHJlbmRlckhUTUwgfSBmcm9tICcuLi8uLi9odG1sL3V0aWxzL3JlbmRlci5tanMnO1xuaW1wb3J0IHsgY2FtZWxDYXNlQXR0cmlidXRlcyB9IGZyb20gJy4vY2FtZWwtY2FzZS1hdHRycy5tanMnO1xuXG5mdW5jdGlvbiByZW5kZXJTVkcoZWxlbWVudCwgcmVuZGVyU3RhdGUsIF9zdHlsZVByb3AsIHByb2plY3Rpb24pIHtcbiAgICByZW5kZXJIVE1MKGVsZW1lbnQsIHJlbmRlclN0YXRlLCB1bmRlZmluZWQsIHByb2plY3Rpb24pO1xuICAgIGZvciAoY29uc3Qga2V5IGluIHJlbmRlclN0YXRlLmF0dHJzKSB7XG4gICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKCFjYW1lbENhc2VBdHRyaWJ1dGVzLmhhcyhrZXkpID8gY2FtZWxUb0Rhc2goa2V5KSA6IGtleSwgcmVuZGVyU3RhdGUuYXR0cnNba2V5XSk7XG4gICAgfVxufVxuXG5leHBvcnQgeyByZW5kZXJTVkcgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/render.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs":
|
||
/*!**************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs ***!
|
||
\**************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ scrapeMotionValuesFromProps: function() { return /* binding */ scrapeMotionValuesFromProps; }\n/* harmony export */ });\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n/* harmony import */ var _html_utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../html/utils/scrape-motion-values.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs\");\n/* harmony import */ var _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../html/utils/transform.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/html/utils/transform.mjs\");\n\n\n\n\nfunction scrapeMotionValuesFromProps(props, prevProps) {\n const newValues = (0,_html_utils_scrape_motion_values_mjs__WEBPACK_IMPORTED_MODULE_0__.scrapeMotionValuesFromProps)(props, prevProps);\n for (const key in props) {\n if ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__.isMotionValue)(props[key]) || (0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_1__.isMotionValue)(prevProps[key])) {\n const targetKey = _html_utils_transform_mjs__WEBPACK_IMPORTED_MODULE_2__.transformPropOrder.indexOf(key) !== -1\n ? \"attr\" + key.charAt(0).toUpperCase() + key.substring(1)\n : key;\n newValues[targetKey] = props[key];\n }\n }\n return newValues;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy9zY3JhcGUtbW90aW9uLXZhbHVlcy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUF5RTtBQUNnRDtBQUNyRDs7QUFFcEU7QUFDQSxzQkFBc0IsaUdBQTZCO0FBQ25EO0FBQ0EsWUFBWSwrRUFBYSxnQkFBZ0IsK0VBQWE7QUFDdEQsOEJBQThCLHlFQUFrQjtBQUNoRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFdUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvc3ZnL3V0aWxzL3NjcmFwZS1tb3Rpb24tdmFsdWVzLm1qcz83NWUzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTW90aW9uVmFsdWUgfSBmcm9tICcuLi8uLi8uLi92YWx1ZS91dGlscy9pcy1tb3Rpb24tdmFsdWUubWpzJztcbmltcG9ydCB7IHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyBhcyBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMkMSB9IGZyb20gJy4uLy4uL2h0bWwvdXRpbHMvc2NyYXBlLW1vdGlvbi12YWx1ZXMubWpzJztcbmltcG9ydCB7IHRyYW5zZm9ybVByb3BPcmRlciB9IGZyb20gJy4uLy4uL2h0bWwvdXRpbHMvdHJhbnNmb3JtLm1qcyc7XG5cbmZ1bmN0aW9uIHNjcmFwZU1vdGlvblZhbHVlc0Zyb21Qcm9wcyhwcm9wcywgcHJldlByb3BzKSB7XG4gICAgY29uc3QgbmV3VmFsdWVzID0gc2NyYXBlTW90aW9uVmFsdWVzRnJvbVByb3BzJDEocHJvcHMsIHByZXZQcm9wcyk7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gcHJvcHMpIHtcbiAgICAgICAgaWYgKGlzTW90aW9uVmFsdWUocHJvcHNba2V5XSkgfHwgaXNNb3Rpb25WYWx1ZShwcmV2UHJvcHNba2V5XSkpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldEtleSA9IHRyYW5zZm9ybVByb3BPcmRlci5pbmRleE9mKGtleSkgIT09IC0xXG4gICAgICAgICAgICAgICAgPyBcImF0dHJcIiArIGtleS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGtleS5zdWJzdHJpbmcoMSlcbiAgICAgICAgICAgICAgICA6IGtleTtcbiAgICAgICAgICAgIG5ld1ZhbHVlc1t0YXJnZXRLZXldID0gcHJvcHNba2V5XTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3VmFsdWVzO1xufVxuXG5leHBvcnQgeyBzY3JhcGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs":
|
||
/*!**********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs ***!
|
||
\**********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ calcSVGTransformOrigin: function() { return /* binding */ calcSVGTransformOrigin; }\n/* harmony export */ });\n/* harmony import */ var _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../value/types/numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n\n\nfunction calcOrigin(origin, offset, size) {\n return typeof origin === \"string\"\n ? origin\n : _value_types_numbers_units_mjs__WEBPACK_IMPORTED_MODULE_0__.px.transform(offset + size * origin);\n}\n/**\n * The SVG transform origin defaults are different to CSS and is less intuitive,\n * so we use the measured dimensions of the SVG to reconcile these.\n */\nfunction calcSVGTransformOrigin(dimensions, originX, originY) {\n const pxOriginX = calcOrigin(originX, dimensions.x, dimensions.width);\n const pxOriginY = calcOrigin(originY, dimensions.y, dimensions.height);\n return `${pxOriginX} ${pxOriginY}`;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3N2Zy91dGlscy90cmFuc2Zvcm0tb3JpZ2luLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE0RDs7QUFFNUQ7QUFDQTtBQUNBO0FBQ0EsVUFBVSw4REFBRTtBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxjQUFjLFdBQVcsRUFBRSxVQUFVO0FBQ3JDOztBQUVrQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci9zdmcvdXRpbHMvdHJhbnNmb3JtLW9yaWdpbi5tanM/Mzk0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBweCB9IGZyb20gJy4uLy4uLy4uL3ZhbHVlL3R5cGVzL251bWJlcnMvdW5pdHMubWpzJztcblxuZnVuY3Rpb24gY2FsY09yaWdpbihvcmlnaW4sIG9mZnNldCwgc2l6ZSkge1xuICAgIHJldHVybiB0eXBlb2Ygb3JpZ2luID09PSBcInN0cmluZ1wiXG4gICAgICAgID8gb3JpZ2luXG4gICAgICAgIDogcHgudHJhbnNmb3JtKG9mZnNldCArIHNpemUgKiBvcmlnaW4pO1xufVxuLyoqXG4gKiBUaGUgU1ZHIHRyYW5zZm9ybSBvcmlnaW4gZGVmYXVsdHMgYXJlIGRpZmZlcmVudCB0byBDU1MgYW5kIGlzIGxlc3MgaW50dWl0aXZlLFxuICogc28gd2UgdXNlIHRoZSBtZWFzdXJlZCBkaW1lbnNpb25zIG9mIHRoZSBTVkcgdG8gcmVjb25jaWxlIHRoZXNlLlxuICovXG5mdW5jdGlvbiBjYWxjU1ZHVHJhbnNmb3JtT3JpZ2luKGRpbWVuc2lvbnMsIG9yaWdpblgsIG9yaWdpblkpIHtcbiAgICBjb25zdCBweE9yaWdpblggPSBjYWxjT3JpZ2luKG9yaWdpblgsIGRpbWVuc2lvbnMueCwgZGltZW5zaW9ucy53aWR0aCk7XG4gICAgY29uc3QgcHhPcmlnaW5ZID0gY2FsY09yaWdpbihvcmlnaW5ZLCBkaW1lbnNpb25zLnksIGRpbWVuc2lvbnMuaGVpZ2h0KTtcbiAgICByZXR1cm4gYCR7cHhPcmlnaW5YfSAke3B4T3JpZ2luWX1gO1xufVxuXG5leHBvcnQgeyBjYWxjU1ZHVHJhbnNmb3JtT3JpZ2luIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/animation-state.mjs":
|
||
/*!*****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/animation-state.mjs ***!
|
||
\*****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ checkVariantsDidChange: function() { return /* binding */ checkVariantsDidChange; },\n/* harmony export */ createAnimationState: function() { return /* binding */ createAnimationState; }\n/* harmony export */ });\n/* harmony import */ var _animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../animation/utils/is-animation-controls.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs\");\n/* harmony import */ var _animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../animation/utils/is-keyframes-target.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs\");\n/* harmony import */ var _utils_shallow_compare_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../utils/shallow-compare.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/shallow-compare.mjs\");\n/* harmony import */ var _is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./is-variant-label.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs\");\n/* harmony import */ var _resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./resolve-dynamic-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs\");\n/* harmony import */ var _variant_props_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./variant-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs\");\n/* harmony import */ var _animation_interfaces_visual_element_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../animation/interfaces/visual-element.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs\");\n\n\n\n\n\n\n\n\nconst reversePriorityOrder = [..._variant_props_mjs__WEBPACK_IMPORTED_MODULE_0__.variantPriorityOrder].reverse();\nconst numAnimationTypes = _variant_props_mjs__WEBPACK_IMPORTED_MODULE_0__.variantPriorityOrder.length;\nfunction animateList(visualElement) {\n return (animations) => Promise.all(animations.map(({ animation, options }) => (0,_animation_interfaces_visual_element_mjs__WEBPACK_IMPORTED_MODULE_1__.animateVisualElement)(visualElement, animation, options)));\n}\nfunction createAnimationState(visualElement) {\n let animate = animateList(visualElement);\n const state = createState();\n let isInitialRender = true;\n /**\n * This function will be used to reduce the animation definitions for\n * each active animation type into an object of resolved values for it.\n */\n const buildResolvedTypeValues = (acc, definition) => {\n const resolved = (0,_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_2__.resolveVariant)(visualElement, definition);\n if (resolved) {\n const { transition, transitionEnd, ...target } = resolved;\n acc = { ...acc, ...target, ...transitionEnd };\n }\n return acc;\n };\n /**\n * This just allows us to inject mocked animation functions\n * @internal\n */\n function setAnimateFunction(makeAnimator) {\n animate = makeAnimator(visualElement);\n }\n /**\n * When we receive new props, we need to:\n * 1. Create a list of protected keys for each type. This is a directory of\n * value keys that are currently being \"handled\" by types of a higher priority\n * so that whenever an animation is played of a given type, these values are\n * protected from being animated.\n * 2. Determine if an animation type needs animating.\n * 3. Determine if any values have been removed from a type and figure out\n * what to animate those to.\n */\n function animateChanges(options, changedActiveType) {\n const props = visualElement.getProps();\n const context = visualElement.getVariantContext(true) || {};\n /**\n * A list of animations that we'll build into as we iterate through the animation\n * types. This will get executed at the end of the function.\n */\n const animations = [];\n /**\n * Keep track of which values have been removed. Then, as we hit lower priority\n * animation types, we can check if they contain removed values and animate to that.\n */\n const removedKeys = new Set();\n /**\n * A dictionary of all encountered keys. This is an object to let us build into and\n * copy it without iteration. Each time we hit an animation type we set its protected\n * keys - the keys its not allowed to animate - to the latest version of this object.\n */\n let encounteredKeys = {};\n /**\n * If a variant has been removed at a given index, and this component is controlling\n * variant animations, we want to ensure lower-priority variants are forced to animate.\n */\n let removedVariantIndex = Infinity;\n /**\n * Iterate through all animation types in reverse priority order. For each, we want to\n * detect which values it's handling and whether or not they've changed (and therefore\n * need to be animated). If any values have been removed, we want to detect those in\n * lower priority props and flag for animation.\n */\n for (let i = 0; i < numAnimationTypes; i++) {\n const type = reversePriorityOrder[i];\n const typeState = state[type];\n const prop = props[type] !== undefined ? props[type] : context[type];\n const propIsVariant = (0,_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_3__.isVariantLabel)(prop);\n /**\n * If this type has *just* changed isActive status, set activeDelta\n * to that status. Otherwise set to null.\n */\n const activeDelta = type === changedActiveType ? typeState.isActive : null;\n if (activeDelta === false)\n removedVariantIndex = i;\n /**\n * If this prop is an inherited variant, rather than been set directly on the\n * component itself, we want to make sure we allow the parent to trigger animations.\n *\n * TODO: Can probably change this to a !isControllingVariants check\n */\n let isInherited = prop === context[type] && prop !== props[type] && propIsVariant;\n /**\n *\n */\n if (isInherited &&\n isInitialRender &&\n visualElement.manuallyAnimateOnMount) {\n isInherited = false;\n }\n /**\n * Set all encountered keys so far as the protected keys for this type. This will\n * be any key that has been animated or otherwise handled by active, higher-priortiy types.\n */\n typeState.protectedKeys = { ...encounteredKeys };\n // Check if we can skip analysing this prop early\n if (\n // If it isn't active and hasn't *just* been set as inactive\n (!typeState.isActive && activeDelta === null) ||\n // If we didn't and don't have any defined prop for this animation type\n (!prop && !typeState.prevProp) ||\n // Or if the prop doesn't define an animation\n (0,_animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_4__.isAnimationControls)(prop) ||\n typeof prop === \"boolean\") {\n continue;\n }\n /**\n * As we go look through the values defined on this type, if we detect\n * a changed value or a value that was removed in a higher priority, we set\n * this to true and add this prop to the animation list.\n */\n const variantDidChange = checkVariantsDidChange(typeState.prevProp, prop);\n let shouldAnimateType = variantDidChange ||\n // If we're making this variant active, we want to always make it active\n (type === changedActiveType &&\n typeState.isActive &&\n !isInherited &&\n propIsVariant) ||\n // If we removed a higher-priority variant (i is in reverse order)\n (i > removedVariantIndex && propIsVariant);\n let handledRemovedValues = false;\n /**\n * As animations can be set as variant lists, variants or target objects, we\n * coerce everything to an array if it isn't one already\n */\n const definitionList = Array.isArray(prop) ? prop : [prop];\n /**\n * Build an object of all the resolved values. We'll use this in the subsequent\n * animateChanges calls to determine whether a value has changed.\n */\n let resolvedValues = definitionList.reduce(buildResolvedTypeValues, {});\n if (activeDelta === false)\n resolvedValues = {};\n /**\n * Now we need to loop through all the keys in the prev prop and this prop,\n * and decide:\n * 1. If the value has changed, and needs animating\n * 2. If it has been removed, and needs adding to the removedKeys set\n * 3. If it has been removed in a higher priority type and needs animating\n * 4. If it hasn't been removed in a higher priority but hasn't changed, and\n * needs adding to the type's protectedKeys list.\n */\n const { prevResolvedValues = {} } = typeState;\n const allKeys = {\n ...prevResolvedValues,\n ...resolvedValues,\n };\n const markToAnimate = (key) => {\n shouldAnimateType = true;\n if (removedKeys.has(key)) {\n handledRemovedValues = true;\n removedKeys.delete(key);\n }\n typeState.needsAnimating[key] = true;\n };\n for (const key in allKeys) {\n const next = resolvedValues[key];\n const prev = prevResolvedValues[key];\n // If we've already handled this we can just skip ahead\n if (encounteredKeys.hasOwnProperty(key))\n continue;\n /**\n * If the value has changed, we probably want to animate it.\n */\n let valueHasChanged = false;\n if ((0,_animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_5__.isKeyframesTarget)(next) && (0,_animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_5__.isKeyframesTarget)(prev)) {\n valueHasChanged = !(0,_utils_shallow_compare_mjs__WEBPACK_IMPORTED_MODULE_6__.shallowCompare)(next, prev);\n }\n else {\n valueHasChanged = next !== prev;\n }\n if (valueHasChanged) {\n if (next !== undefined) {\n // If next is defined and doesn't equal prev, it needs animating\n markToAnimate(key);\n }\n else {\n // If it's undefined, it's been removed.\n removedKeys.add(key);\n }\n }\n else if (next !== undefined && removedKeys.has(key)) {\n /**\n * If next hasn't changed and it isn't undefined, we want to check if it's\n * been removed by a higher priority\n */\n markToAnimate(key);\n }\n else {\n /**\n * If it hasn't changed, we add it to the list of protected values\n * to ensure it doesn't get animated.\n */\n typeState.protectedKeys[key] = true;\n }\n }\n /**\n * Update the typeState so next time animateChanges is called we can compare the\n * latest prop and resolvedValues to these.\n */\n typeState.prevProp = prop;\n typeState.prevResolvedValues = resolvedValues;\n /**\n *\n */\n if (typeState.isActive) {\n encounteredKeys = { ...encounteredKeys, ...resolvedValues };\n }\n if (isInitialRender && visualElement.blockInitialAnimation) {\n shouldAnimateType = false;\n }\n /**\n * If this is an inherited prop we want to hard-block animations\n */\n if (shouldAnimateType && (!isInherited || handledRemovedValues)) {\n animations.push(...definitionList.map((animation) => ({\n animation: animation,\n options: { type, ...options },\n })));\n }\n }\n /**\n * If there are some removed value that haven't been dealt with,\n * we need to create a new animation that falls back either to the value\n * defined in the style prop, or the last read value.\n */\n if (removedKeys.size) {\n const fallbackAnimation = {};\n removedKeys.forEach((key) => {\n const fallbackTarget = visualElement.getBaseTarget(key);\n if (fallbackTarget !== undefined) {\n fallbackAnimation[key] = fallbackTarget;\n }\n });\n animations.push({ animation: fallbackAnimation });\n }\n let shouldAnimate = Boolean(animations.length);\n if (isInitialRender &&\n (props.initial === false || props.initial === props.animate) &&\n !visualElement.manuallyAnimateOnMount) {\n shouldAnimate = false;\n }\n isInitialRender = false;\n return shouldAnimate ? animate(animations) : Promise.resolve();\n }\n /**\n * Change whether a certain animation type is active.\n */\n function setActive(type, isActive, options) {\n var _a;\n // If the active state hasn't changed, we can safely do nothing here\n if (state[type].isActive === isActive)\n return Promise.resolve();\n // Propagate active change to children\n (_a = visualElement.variantChildren) === null || _a === void 0 ? void 0 : _a.forEach((child) => { var _a; return (_a = child.animationState) === null || _a === void 0 ? void 0 : _a.setActive(type, isActive); });\n state[type].isActive = isActive;\n const animations = animateChanges(options, type);\n for (const key in state) {\n state[key].protectedKeys = {};\n }\n return animations;\n }\n return {\n animateChanges,\n setActive,\n setAnimateFunction,\n getState: () => state,\n };\n}\nfunction checkVariantsDidChange(prev, next) {\n if (typeof next === \"string\") {\n return next !== prev;\n }\n else if (Array.isArray(next)) {\n return !(0,_utils_shallow_compare_mjs__WEBPACK_IMPORTED_MODULE_6__.shallowCompare)(next, prev);\n }\n return false;\n}\nfunction createTypeState(isActive = false) {\n return {\n isActive,\n protectedKeys: {},\n needsAnimating: {},\n prevResolvedValues: {},\n };\n}\nfunction createState() {\n return {\n animate: createTypeState(true),\n whileInView: createTypeState(),\n whileHover: createTypeState(),\n whileTap: createTypeState(),\n whileDrag: createTypeState(),\n whileFocus: createTypeState(),\n exit: createTypeState(),\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2FuaW1hdGlvbi1zdGF0ZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQXNGO0FBQ0o7QUFDakI7QUFDVDtBQUNRO0FBQ0w7QUFDMEI7O0FBRXJGLGlDQUFpQyxvRUFBb0I7QUFDckQsMEJBQTBCLG9FQUFvQjtBQUM5QztBQUNBLHlEQUF5RCxvQkFBb0IsS0FBSyw4RkFBb0I7QUFDdEc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx5QkFBeUIsNkVBQWM7QUFDdkM7QUFDQSxvQkFBb0IsdUNBQXVDO0FBQzNELG9CQUFvQjtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esd0JBQXdCLHVCQUF1QjtBQUMvQztBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MscUVBQWM7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdDQUF3QztBQUN4QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiwrRkFBbUI7QUFDbkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0ZBQWtGO0FBQ2xGO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsMEJBQTBCO0FBQzlDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJGQUFpQixVQUFVLDJGQUFpQjtBQUNoRSx1Q0FBdUMsMEVBQWM7QUFDckQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0NBQW9DO0FBQ3BDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsK0JBQStCLGtCQUFrQjtBQUNqRCxpQkFBaUI7QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGFBQWE7QUFDYiw4QkFBOEIsOEJBQThCO0FBQzVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMEdBQTBHLFFBQVEsdUdBQXVHO0FBQ3pOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLDBFQUFjO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHlCQUF5QjtBQUN6QiwwQkFBMEI7QUFDMUIsOEJBQThCO0FBQzlCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV3RCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci91dGlscy9hbmltYXRpb24tc3RhdGUubWpzP2E2MDQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNBbmltYXRpb25Db250cm9scyB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbi91dGlscy9pcy1hbmltYXRpb24tY29udHJvbHMubWpzJztcbmltcG9ydCB7IGlzS2V5ZnJhbWVzVGFyZ2V0IH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL3V0aWxzL2lzLWtleWZyYW1lcy10YXJnZXQubWpzJztcbmltcG9ydCB7IHNoYWxsb3dDb21wYXJlIH0gZnJvbSAnLi4vLi4vdXRpbHMvc2hhbGxvdy1jb21wYXJlLm1qcyc7XG5pbXBvcnQgeyBpc1ZhcmlhbnRMYWJlbCB9IGZyb20gJy4vaXMtdmFyaWFudC1sYWJlbC5tanMnO1xuaW1wb3J0IHsgcmVzb2x2ZVZhcmlhbnQgfSBmcm9tICcuL3Jlc29sdmUtZHluYW1pYy12YXJpYW50cy5tanMnO1xuaW1wb3J0IHsgdmFyaWFudFByaW9yaXR5T3JkZXIgfSBmcm9tICcuL3ZhcmlhbnQtcHJvcHMubWpzJztcbmltcG9ydCB7IGFuaW1hdGVWaXN1YWxFbGVtZW50IH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL2ludGVyZmFjZXMvdmlzdWFsLWVsZW1lbnQubWpzJztcblxuY29uc3QgcmV2ZXJzZVByaW9yaXR5T3JkZXIgPSBbLi4udmFyaWFudFByaW9yaXR5T3JkZXJdLnJldmVyc2UoKTtcbmNvbnN0IG51bUFuaW1hdGlvblR5cGVzID0gdmFyaWFudFByaW9yaXR5T3JkZXIubGVuZ3RoO1xuZnVuY3Rpb24gYW5pbWF0ZUxpc3QodmlzdWFsRWxlbWVudCkge1xuICAgIHJldHVybiAoYW5pbWF0aW9ucykgPT4gUHJvbWlzZS5hbGwoYW5pbWF0aW9ucy5tYXAoKHsgYW5pbWF0aW9uLCBvcHRpb25zIH0pID0+IGFuaW1hdGVWaXN1YWxFbGVtZW50KHZpc3VhbEVsZW1lbnQsIGFuaW1hdGlvbiwgb3B0aW9ucykpKTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZUFuaW1hdGlvblN0YXRlKHZpc3VhbEVsZW1lbnQpIHtcbiAgICBsZXQgYW5pbWF0ZSA9IGFuaW1hdGVMaXN0KHZpc3VhbEVsZW1lbnQpO1xuICAgIGNvbnN0IHN0YXRlID0gY3JlYXRlU3RhdGUoKTtcbiAgICBsZXQgaXNJbml0aWFsUmVuZGVyID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgdXNlZCB0byByZWR1Y2UgdGhlIGFuaW1hdGlvbiBkZWZpbml0aW9ucyBmb3JcbiAgICAgKiBlYWNoIGFjdGl2ZSBhbmltYXRpb24gdHlwZSBpbnRvIGFuIG9iamVjdCBvZiByZXNvbHZlZCB2YWx1ZXMgZm9yIGl0LlxuICAgICAqL1xuICAgIGNvbnN0IGJ1aWxkUmVzb2x2ZWRUeXBlVmFsdWVzID0gKGFjYywgZGVmaW5pdGlvbikgPT4ge1xuICAgICAgICBjb25zdCByZXNvbHZlZCA9IHJlc29sdmVWYXJpYW50KHZpc3VhbEVsZW1lbnQsIGRlZmluaXRpb24pO1xuICAgICAgICBpZiAocmVzb2x2ZWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgdHJhbnNpdGlvbiwgdHJhbnNpdGlvbkVuZCwgLi4udGFyZ2V0IH0gPSByZXNvbHZlZDtcbiAgICAgICAgICAgIGFjYyA9IHsgLi4uYWNjLCAuLi50YXJnZXQsIC4uLnRyYW5zaXRpb25FbmQgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWNjO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogVGhpcyBqdXN0IGFsbG93cyB1cyB0byBpbmplY3QgbW9ja2VkIGFuaW1hdGlvbiBmdW5jdGlvbnNcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzZXRBbmltYXRlRnVuY3Rpb24obWFrZUFuaW1hdG9yKSB7XG4gICAgICAgIGFuaW1hdGUgPSBtYWtlQW5pbWF0b3IodmlzdWFsRWxlbWVudCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFdoZW4gd2UgcmVjZWl2ZSBuZXcgcHJvcHMsIHdlIG5lZWQgdG86XG4gICAgICogMS4gQ3JlYXRlIGEgbGlzdCBvZiBwcm90ZWN0ZWQga2V5cyBmb3IgZWFjaCB0eXBlLiBUaGlzIGlzIGEgZGlyZWN0b3J5IG9mXG4gICAgICogICAgdmFsdWUga2V5cyB0aGF0IGFyZSBjdXJyZW50bHkgYmVpbmcgXCJoYW5kbGVkXCIgYnkgdHlwZXMgb2YgYSBoaWdoZXIgcHJpb3JpdHlcbiAgICAgKiAgICBzbyB0aGF0IHdoZW5ldmVyIGFuIGFuaW1hdGlvbiBpcyBwbGF5ZWQgb2YgYSBnaXZlbiB0eXBlLCB0aGVzZSB2YWx1ZXMgYXJlXG4gICAgICogICAgcHJvdGVjdGVkIGZyb20gYmVpbmcgYW5pbWF0ZWQuXG4gICAgICogMi4gRGV0ZXJtaW5lIGlmIGFuIGFuaW1hdGlvbiB0eXBlIG5lZWRzIGFuaW1hdGluZy5cbiAgICAgKiAzLiBEZXRlcm1pbmUgaWYgYW55IHZhbHVlcyBoYXZlIGJlZW4gcmVtb3ZlZCBmcm9tIGEgdHlwZSBhbmQgZmlndXJlIG91dFxuICAgICAqICAgIHdoYXQgdG8gYW5pbWF0ZSB0aG9zZSB0by5cbiAgICAgKi9cbiAgICBmdW5jdGlvbiBhbmltYXRlQ2hhbmdlcyhvcHRpb25zLCBjaGFuZ2VkQWN0aXZlVHlwZSkge1xuICAgICAgICBjb25zdCBwcm9wcyA9IHZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKTtcbiAgICAgICAgY29uc3QgY29udGV4dCA9IHZpc3VhbEVsZW1lbnQuZ2V0VmFyaWFudENvbnRleHQodHJ1ZSkgfHwge307XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBIGxpc3Qgb2YgYW5pbWF0aW9ucyB0aGF0IHdlJ2xsIGJ1aWxkIGludG8gYXMgd2UgaXRlcmF0ZSB0aHJvdWdoIHRoZSBhbmltYXRpb25cbiAgICAgICAgICogdHlwZXMuIFRoaXMgd2lsbCBnZXQgZXhlY3V0ZWQgYXQgdGhlIGVuZCBvZiB0aGUgZnVuY3Rpb24uXG4gICAgICAgICAqL1xuICAgICAgICBjb25zdCBhbmltYXRpb25zID0gW107XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBLZWVwIHRyYWNrIG9mIHdoaWNoIHZhbHVlcyBoYXZlIGJlZW4gcmVtb3ZlZC4gVGhlbiwgYXMgd2UgaGl0IGxvd2VyIHByaW9yaXR5XG4gICAgICAgICAqIGFuaW1hdGlvbiB0eXBlcywgd2UgY2FuIGNoZWNrIGlmIHRoZXkgY29udGFpbiByZW1vdmVkIHZhbHVlcyBhbmQgYW5pbWF0ZSB0byB0aGF0LlxuICAgICAgICAgKi9cbiAgICAgICAgY29uc3QgcmVtb3ZlZEtleXMgPSBuZXcgU2V0KCk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBIGRpY3Rpb25hcnkgb2YgYWxsIGVuY291bnRlcmVkIGtleXMuIFRoaXMgaXMgYW4gb2JqZWN0IHRvIGxldCB1cyBidWlsZCBpbnRvIGFuZFxuICAgICAgICAgKiBjb3B5IGl0IHdpdGhvdXQgaXRlcmF0aW9uLiBFYWNoIHRpbWUgd2UgaGl0IGFuIGFuaW1hdGlvbiB0eXBlIHdlIHNldCBpdHMgcHJvdGVjdGVkXG4gICAgICAgICAqIGtleXMgLSB0aGUga2V5cyBpdHMgbm90IGFsbG93ZWQgdG8gYW5pbWF0ZSAtIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG9iamVjdC5cbiAgICAgICAgICovXG4gICAgICAgIGxldCBlbmNvdW50ZXJlZEtleXMgPSB7fTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIGEgdmFyaWFudCBoYXMgYmVlbiByZW1vdmVkIGF0IGEgZ2l2ZW4gaW5kZXgsIGFuZCB0aGlzIGNvbXBvbmVudCBpcyBjb250cm9sbGluZ1xuICAgICAgICAgKiB2YXJpYW50IGFuaW1hdGlvbnMsIHdlIHdhbnQgdG8gZW5zdXJlIGxvd2VyLXByaW9yaXR5IHZhcmlhbnRzIGFyZSBmb3JjZWQgdG8gYW5pbWF0ZS5cbiAgICAgICAgICovXG4gICAgICAgIGxldCByZW1vdmVkVmFyaWFudEluZGV4ID0gSW5maW5pdHk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJdGVyYXRlIHRocm91Z2ggYWxsIGFuaW1hdGlvbiB0eXBlcyBpbiByZXZlcnNlIHByaW9yaXR5IG9yZGVyLiBGb3IgZWFjaCwgd2Ugd2FudCB0b1xuICAgICAgICAgKiBkZXRlY3Qgd2hpY2ggdmFsdWVzIGl0J3MgaGFuZGxpbmcgYW5kIHdoZXRoZXIgb3Igbm90IHRoZXkndmUgY2hhbmdlZCAoYW5kIHRoZXJlZm9yZVxuICAgICAgICAgKiBuZWVkIHRvIGJlIGFuaW1hdGVkKS4gSWYgYW55IHZhbHVlcyBoYXZlIGJlZW4gcmVtb3ZlZCwgd2Ugd2FudCB0byBkZXRlY3QgdGhvc2UgaW5cbiAgICAgICAgICogbG93ZXIgcHJpb3JpdHkgcHJvcHMgYW5kIGZsYWcgZm9yIGFuaW1hdGlvbi5cbiAgICAgICAgICovXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtQW5pbWF0aW9uVHlwZXM7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgdHlwZSA9IHJldmVyc2VQcmlvcml0eU9yZGVyW2ldO1xuICAgICAgICAgICAgY29uc3QgdHlwZVN0YXRlID0gc3RhdGVbdHlwZV07XG4gICAgICAgICAgICBjb25zdCBwcm9wID0gcHJvcHNbdHlwZV0gIT09IHVuZGVmaW5lZCA/IHByb3BzW3R5cGVdIDogY29udGV4dFt0eXBlXTtcbiAgICAgICAgICAgIGNvbnN0IHByb3BJc1ZhcmlhbnQgPSBpc1ZhcmlhbnRMYWJlbChwcm9wKTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhpcyB0eXBlIGhhcyAqanVzdCogY2hhbmdlZCBpc0FjdGl2ZSBzdGF0dXMsIHNldCBhY3RpdmVEZWx0YVxuICAgICAgICAgICAgICogdG8gdGhhdCBzdGF0dXMuIE90aGVyd2lzZSBzZXQgdG8gbnVsbC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgYWN0aXZlRGVsdGEgPSB0eXBlID09PSBjaGFuZ2VkQWN0aXZlVHlwZSA/IHR5cGVTdGF0ZS5pc0FjdGl2ZSA6IG51bGw7XG4gICAgICAgICAgICBpZiAoYWN0aXZlRGVsdGEgPT09IGZhbHNlKVxuICAgICAgICAgICAgICAgIHJlbW92ZWRWYXJpYW50SW5kZXggPSBpO1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJZiB0aGlzIHByb3AgaXMgYW4gaW5oZXJpdGVkIHZhcmlhbnQsIHJhdGhlciB0aGFuIGJlZW4gc2V0IGRpcmVjdGx5IG9uIHRoZVxuICAgICAgICAgICAgICogY29tcG9uZW50IGl0c2VsZiwgd2Ugd2FudCB0byBtYWtlIHN1cmUgd2UgYWxsb3cgdGhlIHBhcmVudCB0byB0cmlnZ2VyIGFuaW1hdGlvbnMuXG4gICAgICAgICAgICAgKlxuICAgICAgICAgICAgICogVE9ETzogQ2FuIHByb2JhYmx5IGNoYW5nZSB0aGlzIHRvIGEgIWlzQ29udHJvbGxpbmdWYXJpYW50cyBjaGVja1xuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBsZXQgaXNJbmhlcml0ZWQgPSBwcm9wID09PSBjb250ZXh0W3R5cGVdICYmIHByb3AgIT09IHByb3BzW3R5cGVdICYmIHByb3BJc1ZhcmlhbnQ7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGlmIChpc0luaGVyaXRlZCAmJlxuICAgICAgICAgICAgICAgIGlzSW5pdGlhbFJlbmRlciAmJlxuICAgICAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQubWFudWFsbHlBbmltYXRlT25Nb3VudCkge1xuICAgICAgICAgICAgICAgIGlzSW5oZXJpdGVkID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIFNldCBhbGwgZW5jb3VudGVyZWQga2V5cyBzbyBmYXIgYXMgdGhlIHByb3RlY3RlZCBrZXlzIGZvciB0aGlzIHR5cGUuIFRoaXMgd2lsbFxuICAgICAgICAgICAgICogYmUgYW55IGtleSB0aGF0IGhhcyBiZWVuIGFuaW1hdGVkIG9yIG90aGVyd2lzZSBoYW5kbGVkIGJ5IGFjdGl2ZSwgaGlnaGVyLXByaW9ydGl5IHR5cGVzLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICB0eXBlU3RhdGUucHJvdGVjdGVkS2V5cyA9IHsgLi4uZW5jb3VudGVyZWRLZXlzIH07XG4gICAgICAgICAgICAvLyBDaGVjayBpZiB3ZSBjYW4gc2tpcCBhbmFseXNpbmcgdGhpcyBwcm9wIGVhcmx5XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAvLyBJZiBpdCBpc24ndCBhY3RpdmUgYW5kIGhhc24ndCAqanVzdCogYmVlbiBzZXQgYXMgaW5hY3RpdmVcbiAgICAgICAgICAgICghdHlwZVN0YXRlLmlzQWN0aXZlICYmIGFjdGl2ZURlbHRhID09PSBudWxsKSB8fFxuICAgICAgICAgICAgICAgIC8vIElmIHdlIGRpZG4ndCBhbmQgZG9uJ3QgaGF2ZSBhbnkgZGVmaW5lZCBwcm9wIGZvciB0aGlzIGFuaW1hdGlvbiB0eXBlXG4gICAgICAgICAgICAgICAgKCFwcm9wICYmICF0eXBlU3RhdGUucHJldlByb3ApIHx8XG4gICAgICAgICAgICAgICAgLy8gT3IgaWYgdGhlIHByb3AgZG9lc24ndCBkZWZpbmUgYW4gYW5pbWF0aW9uXG4gICAgICAgICAgICAgICAgaXNBbmltYXRpb25Db250cm9scyhwcm9wKSB8fFxuICAgICAgICAgICAgICAgIHR5cGVvZiBwcm9wID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBBcyB3ZSBnbyBsb29rIHRocm91Z2ggdGhlIHZhbHVlcyBkZWZpbmVkIG9uIHRoaXMgdHlwZSwgaWYgd2UgZGV0ZWN0XG4gICAgICAgICAgICAgKiBhIGNoYW5nZWQgdmFsdWUgb3IgYSB2YWx1ZSB0aGF0IHdhcyByZW1vdmVkIGluIGEgaGlnaGVyIHByaW9yaXR5LCB3ZSBzZXRcbiAgICAgICAgICAgICAqIHRoaXMgdG8gdHJ1ZSBhbmQgYWRkIHRoaXMgcHJvcCB0byB0aGUgYW5pbWF0aW9uIGxpc3QuXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIGNvbnN0IHZhcmlhbnREaWRDaGFuZ2UgPSBjaGVja1ZhcmlhbnRzRGlkQ2hhbmdlKHR5cGVTdGF0ZS5wcmV2UHJvcCwgcHJvcCk7XG4gICAgICAgICAgICBsZXQgc2hvdWxkQW5pbWF0ZVR5cGUgPSB2YXJpYW50RGlkQ2hhbmdlIHx8XG4gICAgICAgICAgICAgICAgLy8gSWYgd2UncmUgbWFraW5nIHRoaXMgdmFyaWFudCBhY3RpdmUsIHdlIHdhbnQgdG8gYWx3YXlzIG1ha2UgaXQgYWN0aXZlXG4gICAgICAgICAgICAgICAgKHR5cGUgPT09IGNoYW5nZWRBY3RpdmVUeXBlICYmXG4gICAgICAgICAgICAgICAgICAgIHR5cGVTdGF0ZS5pc0FjdGl2ZSAmJlxuICAgICAgICAgICAgICAgICAgICAhaXNJbmhlcml0ZWQgJiZcbiAgICAgICAgICAgICAgICAgICAgcHJvcElzVmFyaWFudCkgfHxcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSByZW1vdmVkIGEgaGlnaGVyLXByaW9yaXR5IHZhcmlhbnQgKGkgaXMgaW4gcmV2ZXJzZSBvcmRlcilcbiAgICAgICAgICAgICAgICAoaSA+IHJlbW92ZWRWYXJpYW50SW5kZXggJiYgcHJvcElzVmFyaWFudCk7XG4gICAgICAgICAgICBsZXQgaGFuZGxlZFJlbW92ZWRWYWx1ZXMgPSBmYWxzZTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQXMgYW5pbWF0aW9ucyBjYW4gYmUgc2V0IGFzIHZhcmlhbnQgbGlzdHMsIHZhcmlhbnRzIG9yIHRhcmdldCBvYmplY3RzLCB3ZVxuICAgICAgICAgICAgICogY29lcmNlIGV2ZXJ5dGhpbmcgdG8gYW4gYXJyYXkgaWYgaXQgaXNuJ3Qgb25lIGFscmVhZHlcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgY29uc3QgZGVmaW5pdGlvbkxpc3QgPSBBcnJheS5pc0FycmF5KHByb3ApID8gcHJvcCA6IFtwcm9wXTtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQnVpbGQgYW4gb2JqZWN0IG9mIGFsbCB0aGUgcmVzb2x2ZWQgdmFsdWVzLiBXZSdsbCB1c2UgdGhpcyBpbiB0aGUgc3Vic2VxdWVudFxuICAgICAgICAgICAgICogYW5pbWF0ZUNoYW5nZXMgY2FsbHMgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgYSB2YWx1ZSBoYXMgY2hhbmdlZC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgbGV0IHJlc29sdmVkVmFsdWVzID0gZGVmaW5pdGlvbkxpc3QucmVkdWNlKGJ1aWxkUmVzb2x2ZWRUeXBlVmFsdWVzLCB7fSk7XG4gICAgICAgICAgICBpZiAoYWN0aXZlRGVsdGEgPT09IGZhbHNlKVxuICAgICAgICAgICAgICAgIHJlc29sdmVkVmFsdWVzID0ge307XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE5vdyB3ZSBuZWVkIHRvIGxvb3AgdGhyb3VnaCBhbGwgdGhlIGtleXMgaW4gdGhlIHByZXYgcHJvcCBhbmQgdGhpcyBwcm9wLFxuICAgICAgICAgICAgICogYW5kIGRlY2lkZTpcbiAgICAgICAgICAgICAqIDEuIElmIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZCwgYW5kIG5lZWRzIGFuaW1hdGluZ1xuICAgICAgICAgICAgICogMi4gSWYgaXQgaGFzIGJlZW4gcmVtb3ZlZCwgYW5kIG5lZWRzIGFkZGluZyB0byB0aGUgcmVtb3ZlZEtleXMgc2V0XG4gICAgICAgICAgICAgKiAzLiBJZiBpdCBoYXMgYmVlbiByZW1vdmVkIGluIGEgaGlnaGVyIHByaW9yaXR5IHR5cGUgYW5kIG5lZWRzIGFuaW1hdGluZ1xuICAgICAgICAgICAgICogNC4gSWYgaXQgaGFzbid0IGJlZW4gcmVtb3ZlZCBpbiBhIGhpZ2hlciBwcmlvcml0eSBidXQgaGFzbid0IGNoYW5nZWQsIGFuZFxuICAgICAgICAgICAgICogICAgbmVlZHMgYWRkaW5nIHRvIHRoZSB0eXBlJ3MgcHJvdGVjdGVkS2V5cyBsaXN0LlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBjb25zdCB7IHByZXZSZXNvbHZlZFZhbHVlcyA9IHt9IH0gPSB0eXBlU3RhdGU7XG4gICAgICAgICAgICBjb25zdCBhbGxLZXlzID0ge1xuICAgICAgICAgICAgICAgIC4uLnByZXZSZXNvbHZlZFZhbHVlcyxcbiAgICAgICAgICAgICAgICAuLi5yZXNvbHZlZFZhbHVlcyxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBtYXJrVG9BbmltYXRlID0gKGtleSkgPT4ge1xuICAgICAgICAgICAgICAgIHNob3VsZEFuaW1hdGVUeXBlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBpZiAocmVtb3ZlZEtleXMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlZFJlbW92ZWRWYWx1ZXMgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVkS2V5cy5kZWxldGUoa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdHlwZVN0YXRlLm5lZWRzQW5pbWF0aW5nW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGFsbEtleXMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXh0ID0gcmVzb2x2ZWRWYWx1ZXNba2V5XTtcbiAgICAgICAgICAgICAgICBjb25zdCBwcmV2ID0gcHJldlJlc29sdmVkVmFsdWVzW2tleV07XG4gICAgICAgICAgICAgICAgLy8gSWYgd2UndmUgYWxyZWFkeSBoYW5kbGVkIHRoaXMgd2UgY2FuIGp1c3Qgc2tpcCBhaGVhZFxuICAgICAgICAgICAgICAgIGlmIChlbmNvdW50ZXJlZEtleXMuaGFzT3duUHJvcGVydHkoa2V5KSlcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSWYgdGhlIHZhbHVlIGhhcyBjaGFuZ2VkLCB3ZSBwcm9iYWJseSB3YW50IHRvIGFuaW1hdGUgaXQuXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgbGV0IHZhbHVlSGFzQ2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGlmIChpc0tleWZyYW1lc1RhcmdldChuZXh0KSAmJiBpc0tleWZyYW1lc1RhcmdldChwcmV2KSkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZUhhc0NoYW5nZWQgPSAhc2hhbGxvd0NvbXBhcmUobmV4dCwgcHJldik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZUhhc0NoYW5nZWQgPSBuZXh0ICE9PSBwcmV2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodmFsdWVIYXNDaGFuZ2VkKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChuZXh0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIG5leHQgaXMgZGVmaW5lZCBhbmQgZG9lc24ndCBlcXVhbCBwcmV2LCBpdCBuZWVkcyBhbmltYXRpbmdcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtUb0FuaW1hdGUoa2V5KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIElmIGl0J3MgdW5kZWZpbmVkLCBpdCdzIGJlZW4gcmVtb3ZlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbW92ZWRLZXlzLmFkZChrZXkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG5leHQgIT09IHVuZGVmaW5lZCAmJiByZW1vdmVkS2V5cy5oYXMoa2V5KSkge1xuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogSWYgbmV4dCBoYXNuJ3QgY2hhbmdlZCBhbmQgaXQgaXNuJ3QgdW5kZWZpbmVkLCB3ZSB3YW50IHRvIGNoZWNrIGlmIGl0J3NcbiAgICAgICAgICAgICAgICAgICAgICogYmVlbiByZW1vdmVkIGJ5IGEgaGlnaGVyIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgICAgICAgICBtYXJrVG9BbmltYXRlKGtleSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgICAgICogSWYgaXQgaGFzbid0IGNoYW5nZWQsIHdlIGFkZCBpdCB0byB0aGUgbGlzdCBvZiBwcm90ZWN0ZWQgdmFsdWVzXG4gICAgICAgICAgICAgICAgICAgICAqIHRvIGVuc3VyZSBpdCBkb2Vzbid0IGdldCBhbmltYXRlZC5cbiAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgIHR5cGVTdGF0ZS5wcm90ZWN0ZWRLZXlzW2tleV0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogVXBkYXRlIHRoZSB0eXBlU3RhdGUgc28gbmV4dCB0aW1lIGFuaW1hdGVDaGFuZ2VzIGlzIGNhbGxlZCB3ZSBjYW4gY29tcGFyZSB0aGVcbiAgICAgICAgICAgICAqIGxhdGVzdCBwcm9wIGFuZCByZXNvbHZlZFZhbHVlcyB0byB0aGVzZS5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdHlwZVN0YXRlLnByZXZQcm9wID0gcHJvcDtcbiAgICAgICAgICAgIHR5cGVTdGF0ZS5wcmV2UmVzb2x2ZWRWYWx1ZXMgPSByZXNvbHZlZFZhbHVlcztcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICpcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHR5cGVTdGF0ZS5pc0FjdGl2ZSkge1xuICAgICAgICAgICAgICAgIGVuY291bnRlcmVkS2V5cyA9IHsgLi4uZW5jb3VudGVyZWRLZXlzLCAuLi5yZXNvbHZlZFZhbHVlcyB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzSW5pdGlhbFJlbmRlciAmJiB2aXN1YWxFbGVtZW50LmJsb2NrSW5pdGlhbEFuaW1hdGlvbikge1xuICAgICAgICAgICAgICAgIHNob3VsZEFuaW1hdGVUeXBlID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoaXMgaXMgYW4gaW5oZXJpdGVkIHByb3Agd2Ugd2FudCB0byBoYXJkLWJsb2NrIGFuaW1hdGlvbnNcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHNob3VsZEFuaW1hdGVUeXBlICYmICghaXNJbmhlcml0ZWQgfHwgaGFuZGxlZFJlbW92ZWRWYWx1ZXMpKSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9ucy5wdXNoKC4uLmRlZmluaXRpb25MaXN0Lm1hcCgoYW5pbWF0aW9uKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGlvbixcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uczogeyB0eXBlLCAuLi5vcHRpb25zIH0sXG4gICAgICAgICAgICAgICAgfSkpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvKipcbiAgICAgICAgICogSWYgdGhlcmUgYXJlIHNvbWUgcmVtb3ZlZCB2YWx1ZSB0aGF0IGhhdmVuJ3QgYmVlbiBkZWFsdCB3aXRoLFxuICAgICAgICAgKiB3ZSBuZWVkIHRvIGNyZWF0ZSBhIG5ldyBhbmltYXRpb24gdGhhdCBmYWxscyBiYWNrIGVpdGhlciB0byB0aGUgdmFsdWVcbiAgICAgICAgICogZGVmaW5lZCBpbiB0aGUgc3R5bGUgcHJvcCwgb3IgdGhlIGxhc3QgcmVhZCB2YWx1ZS5cbiAgICAgICAgICovXG4gICAgICAgIGlmIChyZW1vdmVkS2V5cy5zaXplKSB7XG4gICAgICAgICAgICBjb25zdCBmYWxsYmFja0FuaW1hdGlvbiA9IHt9O1xuICAgICAgICAgICAgcmVtb3ZlZEtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmFsbGJhY2tUYXJnZXQgPSB2aXN1YWxFbGVtZW50LmdldEJhc2VUYXJnZXQoa2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2tUYXJnZXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBmYWxsYmFja0FuaW1hdGlvbltrZXldID0gZmFsbGJhY2tUYXJnZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBhbmltYXRpb25zLnB1c2goeyBhbmltYXRpb246IGZhbGxiYWNrQW5pbWF0aW9uIH0pO1xuICAgICAgICB9XG4gICAgICAgIGxldCBzaG91bGRBbmltYXRlID0gQm9vbGVhbihhbmltYXRpb25zLmxlbmd0aCk7XG4gICAgICAgIGlmIChpc0luaXRpYWxSZW5kZXIgJiZcbiAgICAgICAgICAgIChwcm9wcy5pbml0aWFsID09PSBmYWxzZSB8fCBwcm9wcy5pbml0aWFsID09PSBwcm9wcy5hbmltYXRlKSAmJlxuICAgICAgICAgICAgIXZpc3VhbEVsZW1lbnQubWFudWFsbHlBbmltYXRlT25Nb3VudCkge1xuICAgICAgICAgICAgc2hvdWxkQW5pbWF0ZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIGlzSW5pdGlhbFJlbmRlciA9IGZhbHNlO1xuICAgICAgICByZXR1cm4gc2hvdWxkQW5pbWF0ZSA/IGFuaW1hdGUoYW5pbWF0aW9ucykgOiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHdoZXRoZXIgYSBjZXJ0YWluIGFuaW1hdGlvbiB0eXBlIGlzIGFjdGl2ZS5cbiAgICAgKi9cbiAgICBmdW5jdGlvbiBzZXRBY3RpdmUodHlwZSwgaXNBY3RpdmUsIG9wdGlvbnMpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICAvLyBJZiB0aGUgYWN0aXZlIHN0YXRlIGhhc24ndCBjaGFuZ2VkLCB3ZSBjYW4gc2FmZWx5IGRvIG5vdGhpbmcgaGVyZVxuICAgICAgICBpZiAoc3RhdGVbdHlwZV0uaXNBY3RpdmUgPT09IGlzQWN0aXZlKVxuICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAvLyBQcm9wYWdhdGUgYWN0aXZlIGNoYW5nZSB0byBjaGlsZHJlblxuICAgICAgICAoX2EgPSB2aXN1YWxFbGVtZW50LnZhcmlhbnRDaGlsZHJlbikgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvckVhY2goKGNoaWxkKSA9PiB7IHZhciBfYTsgcmV0dXJuIChfYSA9IGNoaWxkLmFuaW1hdGlvblN0YXRlKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc2V0QWN0aXZlKHR5cGUsIGlzQWN0aXZlKTsgfSk7XG4gICAgICAgIHN0YXRlW3R5cGVdLmlzQWN0aXZlID0gaXNBY3RpdmU7XG4gICAgICAgIGNvbnN0IGFuaW1hdGlvbnMgPSBhbmltYXRlQ2hhbmdlcyhvcHRpb25zLCB0eXBlKTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gc3RhdGUpIHtcbiAgICAgICAgICAgIHN0YXRlW2tleV0ucHJvdGVjdGVkS2V5cyA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhbmltYXRpb25zO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICBhbmltYXRlQ2hhbmdlcyxcbiAgICAgICAgc2V0QWN0aXZlLFxuICAgICAgICBzZXRBbmltYXRlRnVuY3Rpb24sXG4gICAgICAgIGdldFN0YXRlOiAoKSA9PiBzdGF0ZSxcbiAgICB9O1xufVxuZnVuY3Rpb24gY2hlY2tWYXJpYW50c0RpZENoYW5nZShwcmV2LCBuZXh0KSB7XG4gICAgaWYgKHR5cGVvZiBuZXh0ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHJldHVybiBuZXh0ICE9PSBwcmV2O1xuICAgIH1cbiAgICBlbHNlIGlmIChBcnJheS5pc0FycmF5KG5leHQpKSB7XG4gICAgICAgIHJldHVybiAhc2hhbGxvd0NvbXBhcmUobmV4dCwgcHJldik7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZVR5cGVTdGF0ZShpc0FjdGl2ZSA9IGZhbHNlKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaXNBY3RpdmUsXG4gICAgICAgIHByb3RlY3RlZEtleXM6IHt9LFxuICAgICAgICBuZWVkc0FuaW1hdGluZzoge30sXG4gICAgICAgIHByZXZSZXNvbHZlZFZhbHVlczoge30sXG4gICAgfTtcbn1cbmZ1bmN0aW9uIGNyZWF0ZVN0YXRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGFuaW1hdGU6IGNyZWF0ZVR5cGVTdGF0ZSh0cnVlKSxcbiAgICAgICAgd2hpbGVJblZpZXc6IGNyZWF0ZVR5cGVTdGF0ZSgpLFxuICAgICAgICB3aGlsZUhvdmVyOiBjcmVhdGVUeXBlU3RhdGUoKSxcbiAgICAgICAgd2hpbGVUYXA6IGNyZWF0ZVR5cGVTdGF0ZSgpLFxuICAgICAgICB3aGlsZURyYWc6IGNyZWF0ZVR5cGVTdGF0ZSgpLFxuICAgICAgICB3aGlsZUZvY3VzOiBjcmVhdGVUeXBlU3RhdGUoKSxcbiAgICAgICAgZXhpdDogY3JlYXRlVHlwZVN0YXRlKCksXG4gICAgfTtcbn1cblxuZXhwb3J0IHsgY2hlY2tWYXJpYW50c0RpZENoYW5nZSwgY3JlYXRlQW5pbWF0aW9uU3RhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/animation-state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ compareByDepth: function() { return /* binding */ compareByDepth; }\n/* harmony export */ });\nconst compareByDepth = (a, b) => a.depth - b.depth;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2NvbXBhcmUtYnktZGVwdGgubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFFMEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy9yZW5kZXIvdXRpbHMvY29tcGFyZS1ieS1kZXB0aC5tanM/NmY4NCJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBjb21wYXJlQnlEZXB0aCA9IChhLCBiKSA9PiBhLmRlcHRoIC0gYi5kZXB0aDtcblxuZXhwb3J0IHsgY29tcGFyZUJ5RGVwdGggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ FlatTree: function() { return /* binding */ FlatTree; }\n/* harmony export */ });\n/* harmony import */ var _utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../utils/array.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/array.mjs\");\n/* harmony import */ var _compare_by_depth_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./compare-by-depth.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs\");\n\n\n\nclass FlatTree {\n constructor() {\n this.children = [];\n this.isDirty = false;\n }\n add(child) {\n (0,_utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__.addUniqueItem)(this.children, child);\n this.isDirty = true;\n }\n remove(child) {\n (0,_utils_array_mjs__WEBPACK_IMPORTED_MODULE_0__.removeItem)(this.children, child);\n this.isDirty = true;\n }\n forEach(callback) {\n this.isDirty && this.children.sort(_compare_by_depth_mjs__WEBPACK_IMPORTED_MODULE_1__.compareByDepth);\n this.isDirty = false;\n this.children.forEach(callback);\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2ZsYXQtdHJlZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQWtFO0FBQ1Y7O0FBRXhEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsK0RBQWE7QUFDckI7QUFDQTtBQUNBO0FBQ0EsUUFBUSw0REFBVTtBQUNsQjtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsaUVBQWM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7O0FBRW9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2ZsYXQtdHJlZS5tanM/ZmIxYyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGRVbmlxdWVJdGVtLCByZW1vdmVJdGVtIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXJyYXkubWpzJztcbmltcG9ydCB7IGNvbXBhcmVCeURlcHRoIH0gZnJvbSAnLi9jb21wYXJlLWJ5LWRlcHRoLm1qcyc7XG5cbmNsYXNzIEZsYXRUcmVlIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IFtdO1xuICAgICAgICB0aGlzLmlzRGlydHkgPSBmYWxzZTtcbiAgICB9XG4gICAgYWRkKGNoaWxkKSB7XG4gICAgICAgIGFkZFVuaXF1ZUl0ZW0odGhpcy5jaGlsZHJlbiwgY2hpbGQpO1xuICAgICAgICB0aGlzLmlzRGlydHkgPSB0cnVlO1xuICAgIH1cbiAgICByZW1vdmUoY2hpbGQpIHtcbiAgICAgICAgcmVtb3ZlSXRlbSh0aGlzLmNoaWxkcmVuLCBjaGlsZCk7XG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IHRydWU7XG4gICAgfVxuICAgIGZvckVhY2goY2FsbGJhY2spIHtcbiAgICAgICAgdGhpcy5pc0RpcnR5ICYmIHRoaXMuY2hpbGRyZW4uc29ydChjb21wYXJlQnlEZXB0aCk7XG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNoaWxkcmVuLmZvckVhY2goY2FsbGJhY2spO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgRmxhdFRyZWUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs":
|
||
/*!*************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs ***!
|
||
\*************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isControllingVariants: function() { return /* binding */ isControllingVariants; },\n/* harmony export */ isVariantNode: function() { return /* binding */ isVariantNode; }\n/* harmony export */ });\n/* harmony import */ var _animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../animation/utils/is-animation-controls.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs\");\n/* harmony import */ var _is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./is-variant-label.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs\");\n/* harmony import */ var _variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./variant-props.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs\");\n\n\n\n\nfunction isControllingVariants(props) {\n return ((0,_animation_utils_is_animation_controls_mjs__WEBPACK_IMPORTED_MODULE_0__.isAnimationControls)(props.animate) ||\n _variant_props_mjs__WEBPACK_IMPORTED_MODULE_1__.variantProps.some((name) => (0,_is_variant_label_mjs__WEBPACK_IMPORTED_MODULE_2__.isVariantLabel)(props[name])));\n}\nfunction isVariantNode(props) {\n return Boolean(isControllingVariants(props) || props.variants);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2lzLWNvbnRyb2xsaW5nLXZhcmlhbnRzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFzRjtBQUM5QjtBQUNMOztBQUVuRDtBQUNBLFlBQVksK0ZBQW1CO0FBQy9CLFFBQVEsNERBQVksZ0JBQWdCLHFFQUFjO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBOztBQUVnRCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci91dGlscy9pcy1jb250cm9sbGluZy12YXJpYW50cy5tanM/ZWNiZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0FuaW1hdGlvbkNvbnRyb2xzIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9uL3V0aWxzL2lzLWFuaW1hdGlvbi1jb250cm9scy5tanMnO1xuaW1wb3J0IHsgaXNWYXJpYW50TGFiZWwgfSBmcm9tICcuL2lzLXZhcmlhbnQtbGFiZWwubWpzJztcbmltcG9ydCB7IHZhcmlhbnRQcm9wcyB9IGZyb20gJy4vdmFyaWFudC1wcm9wcy5tanMnO1xuXG5mdW5jdGlvbiBpc0NvbnRyb2xsaW5nVmFyaWFudHMocHJvcHMpIHtcbiAgICByZXR1cm4gKGlzQW5pbWF0aW9uQ29udHJvbHMocHJvcHMuYW5pbWF0ZSkgfHxcbiAgICAgICAgdmFyaWFudFByb3BzLnNvbWUoKG5hbWUpID0+IGlzVmFyaWFudExhYmVsKHByb3BzW25hbWVdKSkpO1xufVxuZnVuY3Rpb24gaXNWYXJpYW50Tm9kZShwcm9wcykge1xuICAgIHJldHVybiBCb29sZWFuKGlzQ29udHJvbGxpbmdWYXJpYW50cyhwcm9wcykgfHwgcHJvcHMudmFyaWFudHMpO1xufVxuXG5leHBvcnQgeyBpc0NvbnRyb2xsaW5nVmFyaWFudHMsIGlzVmFyaWFudE5vZGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isVariantLabel: function() { return /* binding */ isVariantLabel; }\n/* harmony export */ });\n/**\n * Decides if the supplied variable is variant label\n */\nfunction isVariantLabel(v) {\n return typeof v === \"string\" || Array.isArray(v);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2lzLXZhcmlhbnQtbGFiZWwubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTBCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL2lzLXZhcmlhbnQtbGFiZWwubWpzPzMwNzUiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBEZWNpZGVzIGlmIHRoZSBzdXBwbGllZCB2YXJpYWJsZSBpcyB2YXJpYW50IGxhYmVsXG4gKi9cbmZ1bmN0aW9uIGlzVmFyaWFudExhYmVsKHYpIHtcbiAgICByZXR1cm4gdHlwZW9mIHYgPT09IFwic3RyaW5nXCIgfHwgQXJyYXkuaXNBcnJheSh2KTtcbn1cblxuZXhwb3J0IHsgaXNWYXJpYW50TGFiZWwgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/motion-values.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/motion-values.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ updateMotionValuesFromProps: function() { return /* binding */ updateMotionValuesFromProps; }\n/* harmony export */ });\n/* harmony import */ var _value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../value/use-will-change/is.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs\");\n/* harmony import */ var _utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/warn-once.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/warn-once.mjs\");\n/* harmony import */ var _value_index_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../value/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs\");\n/* harmony import */ var _value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\n\n\nfunction updateMotionValuesFromProps(element, next, prev) {\n const { willChange } = next;\n for (const key in next) {\n const nextValue = next[key];\n const prevValue = prev[key];\n if ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(nextValue)) {\n /**\n * If this is a motion value found in props or style, we want to add it\n * to our visual element's motion value map.\n */\n element.addValue(key, nextValue);\n if ((0,_value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_1__.isWillChangeMotionValue)(willChange)) {\n willChange.add(key);\n }\n /**\n * Check the version of the incoming motion value with this version\n * and warn against mismatches.\n */\n if (true) {\n (0,_utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_2__.warnOnce)(nextValue.version === \"10.18.0\", `Attempting to mix Framer Motion versions ${nextValue.version} with 10.18.0 may not work as expected.`);\n }\n }\n else if ((0,_value_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(prevValue)) {\n /**\n * If we're swapping from a motion value to a static value,\n * create a new motion value from that\n */\n element.addValue(key, (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_3__.motionValue)(nextValue, { owner: element }));\n if ((0,_value_use_will_change_is_mjs__WEBPACK_IMPORTED_MODULE_1__.isWillChangeMotionValue)(willChange)) {\n willChange.remove(key);\n }\n }\n else if (prevValue !== nextValue) {\n /**\n * If this is a flat value that has changed, update the motion value\n * or create one if it doesn't exist. We only want to do this if we're\n * not handling the value with our animation state.\n */\n if (element.hasValue(key)) {\n const existingValue = element.getValue(key);\n // TODO: Only update values that aren't being animated or even looked at\n !existingValue.hasAnimated && existingValue.set(nextValue);\n }\n else {\n const latestValue = element.getStaticValue(key);\n element.addValue(key, (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_3__.motionValue)(latestValue !== undefined ? latestValue : nextValue, { owner: element }));\n }\n }\n }\n // Handle removed values\n for (const key in prev) {\n if (next[key] === undefined)\n element.removeValue(key);\n }\n return next;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL21vdGlvbi12YWx1ZXMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQTZFO0FBQ3hCO0FBQ0Q7QUFDa0I7O0FBRXRFO0FBQ0EsWUFBWSxhQUFhO0FBQ3pCO0FBQ0E7QUFDQTtBQUNBLFlBQVksK0VBQWE7QUFDekI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixzRkFBdUI7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLElBQXNDO0FBQ3RELGdCQUFnQiw4REFBUSw4RUFBOEUsbUJBQW1CO0FBQ3pIO0FBQ0E7QUFDQSxpQkFBaUIsK0VBQWE7QUFDOUI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxrQ0FBa0MsNkRBQVcsY0FBYyxnQkFBZ0I7QUFDM0UsZ0JBQWdCLHNGQUF1QjtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNDQUFzQyw2REFBVyx3REFBd0QsZ0JBQWdCO0FBQ3pIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV1QyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci91dGlscy9tb3Rpb24tdmFsdWVzLm1qcz81ZmQwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzV2lsbENoYW5nZU1vdGlvblZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWUvdXNlLXdpbGwtY2hhbmdlL2lzLm1qcyc7XG5pbXBvcnQgeyB3YXJuT25jZSB9IGZyb20gJy4uLy4uL3V0aWxzL3dhcm4tb25jZS5tanMnO1xuaW1wb3J0IHsgbW90aW9uVmFsdWUgfSBmcm9tICcuLi8uLi92YWx1ZS9pbmRleC5tanMnO1xuaW1wb3J0IHsgaXNNb3Rpb25WYWx1ZSB9IGZyb20gJy4uLy4uL3ZhbHVlL3V0aWxzL2lzLW1vdGlvbi12YWx1ZS5tanMnO1xuXG5mdW5jdGlvbiB1cGRhdGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMoZWxlbWVudCwgbmV4dCwgcHJldikge1xuICAgIGNvbnN0IHsgd2lsbENoYW5nZSB9ID0gbmV4dDtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBuZXh0KSB7XG4gICAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IG5leHRba2V5XTtcbiAgICAgICAgY29uc3QgcHJldlZhbHVlID0gcHJldltrZXldO1xuICAgICAgICBpZiAoaXNNb3Rpb25WYWx1ZShuZXh0VmFsdWUpKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHRoaXMgaXMgYSBtb3Rpb24gdmFsdWUgZm91bmQgaW4gcHJvcHMgb3Igc3R5bGUsIHdlIHdhbnQgdG8gYWRkIGl0XG4gICAgICAgICAgICAgKiB0byBvdXIgdmlzdWFsIGVsZW1lbnQncyBtb3Rpb24gdmFsdWUgbWFwLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBlbGVtZW50LmFkZFZhbHVlKGtleSwgbmV4dFZhbHVlKTtcbiAgICAgICAgICAgIGlmIChpc1dpbGxDaGFuZ2VNb3Rpb25WYWx1ZSh3aWxsQ2hhbmdlKSkge1xuICAgICAgICAgICAgICAgIHdpbGxDaGFuZ2UuYWRkKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIENoZWNrIHRoZSB2ZXJzaW9uIG9mIHRoZSBpbmNvbWluZyBtb3Rpb24gdmFsdWUgd2l0aCB0aGlzIHZlcnNpb25cbiAgICAgICAgICAgICAqIGFuZCB3YXJuIGFnYWluc3QgbWlzbWF0Y2hlcy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSBcImRldmVsb3BtZW50XCIpIHtcbiAgICAgICAgICAgICAgICB3YXJuT25jZShuZXh0VmFsdWUudmVyc2lvbiA9PT0gXCIxMC4xOC4wXCIsIGBBdHRlbXB0aW5nIHRvIG1peCBGcmFtZXIgTW90aW9uIHZlcnNpb25zICR7bmV4dFZhbHVlLnZlcnNpb259IHdpdGggMTAuMTguMCBtYXkgbm90IHdvcmsgYXMgZXhwZWN0ZWQuYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXNNb3Rpb25WYWx1ZShwcmV2VmFsdWUpKSB7XG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIElmIHdlJ3JlIHN3YXBwaW5nIGZyb20gYSBtb3Rpb24gdmFsdWUgdG8gYSBzdGF0aWMgdmFsdWUsXG4gICAgICAgICAgICAgKiBjcmVhdGUgYSBuZXcgbW90aW9uIHZhbHVlIGZyb20gdGhhdFxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBlbGVtZW50LmFkZFZhbHVlKGtleSwgbW90aW9uVmFsdWUobmV4dFZhbHVlLCB7IG93bmVyOiBlbGVtZW50IH0pKTtcbiAgICAgICAgICAgIGlmIChpc1dpbGxDaGFuZ2VNb3Rpb25WYWx1ZSh3aWxsQ2hhbmdlKSkge1xuICAgICAgICAgICAgICAgIHdpbGxDaGFuZ2UucmVtb3ZlKGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAocHJldlZhbHVlICE9PSBuZXh0VmFsdWUpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhpcyBpcyBhIGZsYXQgdmFsdWUgdGhhdCBoYXMgY2hhbmdlZCwgdXBkYXRlIHRoZSBtb3Rpb24gdmFsdWVcbiAgICAgICAgICAgICAqIG9yIGNyZWF0ZSBvbmUgaWYgaXQgZG9lc24ndCBleGlzdC4gV2Ugb25seSB3YW50IHRvIGRvIHRoaXMgaWYgd2UncmVcbiAgICAgICAgICAgICAqIG5vdCBoYW5kbGluZyB0aGUgdmFsdWUgd2l0aCBvdXIgYW5pbWF0aW9uIHN0YXRlLlxuICAgICAgICAgICAgICovXG4gICAgICAgICAgICBpZiAoZWxlbWVudC5oYXNWYWx1ZShrZXkpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdWYWx1ZSA9IGVsZW1lbnQuZ2V0VmFsdWUoa2V5KTtcbiAgICAgICAgICAgICAgICAvLyBUT0RPOiBPbmx5IHVwZGF0ZSB2YWx1ZXMgdGhhdCBhcmVuJ3QgYmVpbmcgYW5pbWF0ZWQgb3IgZXZlbiBsb29rZWQgYXRcbiAgICAgICAgICAgICAgICAhZXhpc3RpbmdWYWx1ZS5oYXNBbmltYXRlZCAmJiBleGlzdGluZ1ZhbHVlLnNldChuZXh0VmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGF0ZXN0VmFsdWUgPSBlbGVtZW50LmdldFN0YXRpY1ZhbHVlKGtleSk7XG4gICAgICAgICAgICAgICAgZWxlbWVudC5hZGRWYWx1ZShrZXksIG1vdGlvblZhbHVlKGxhdGVzdFZhbHVlICE9PSB1bmRlZmluZWQgPyBsYXRlc3RWYWx1ZSA6IG5leHRWYWx1ZSwgeyBvd25lcjogZWxlbWVudCB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gSGFuZGxlIHJlbW92ZWQgdmFsdWVzXG4gICAgZm9yIChjb25zdCBrZXkgaW4gcHJldikge1xuICAgICAgICBpZiAobmV4dFtrZXldID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICBlbGVtZW50LnJlbW92ZVZhbHVlKGtleSk7XG4gICAgfVxuICAgIHJldHVybiBuZXh0O1xufVxuXG5leHBvcnQgeyB1cGRhdGVNb3Rpb25WYWx1ZXNGcm9tUHJvcHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/motion-values.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs":
|
||
/*!**************************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs ***!
|
||
\**************************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ resolveVariant: function() { return /* binding */ resolveVariant; }\n/* harmony export */ });\n/* harmony import */ var _resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./resolve-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs\");\n\n\n/**\n * Creates an object containing the latest state of every MotionValue on a VisualElement\n */\nfunction getCurrent(visualElement) {\n const current = {};\n visualElement.values.forEach((value, key) => (current[key] = value.get()));\n return current;\n}\n/**\n * Creates an object containing the latest velocity of every MotionValue on a VisualElement\n */\nfunction getVelocity(visualElement) {\n const velocity = {};\n visualElement.values.forEach((value, key) => (velocity[key] = value.getVelocity()));\n return velocity;\n}\nfunction resolveVariant(visualElement, definition, custom) {\n const props = visualElement.getProps();\n return (0,_resolve_variants_mjs__WEBPACK_IMPORTED_MODULE_0__.resolveVariantFromProps)(props, definition, custom !== undefined ? custom : props.custom, getCurrent(visualElement), getVelocity(visualElement));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3Jlc29sdmUtZHluYW1pYy12YXJpYW50cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBaUU7O0FBRWpFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsOEVBQXVCO0FBQ2xDOztBQUUwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3JlbmRlci91dGlscy9yZXNvbHZlLWR5bmFtaWMtdmFyaWFudHMubWpzP2JlMDYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMgfSBmcm9tICcuL3Jlc29sdmUtdmFyaWFudHMubWpzJztcblxuLyoqXG4gKiBDcmVhdGVzIGFuIG9iamVjdCBjb250YWluaW5nIHRoZSBsYXRlc3Qgc3RhdGUgb2YgZXZlcnkgTW90aW9uVmFsdWUgb24gYSBWaXN1YWxFbGVtZW50XG4gKi9cbmZ1bmN0aW9uIGdldEN1cnJlbnQodmlzdWFsRWxlbWVudCkge1xuICAgIGNvbnN0IGN1cnJlbnQgPSB7fTtcbiAgICB2aXN1YWxFbGVtZW50LnZhbHVlcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiAoY3VycmVudFtrZXldID0gdmFsdWUuZ2V0KCkpKTtcbiAgICByZXR1cm4gY3VycmVudDtcbn1cbi8qKlxuICogQ3JlYXRlcyBhbiBvYmplY3QgY29udGFpbmluZyB0aGUgbGF0ZXN0IHZlbG9jaXR5IG9mIGV2ZXJ5IE1vdGlvblZhbHVlIG9uIGEgVmlzdWFsRWxlbWVudFxuICovXG5mdW5jdGlvbiBnZXRWZWxvY2l0eSh2aXN1YWxFbGVtZW50KSB7XG4gICAgY29uc3QgdmVsb2NpdHkgPSB7fTtcbiAgICB2aXN1YWxFbGVtZW50LnZhbHVlcy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiAodmVsb2NpdHlba2V5XSA9IHZhbHVlLmdldFZlbG9jaXR5KCkpKTtcbiAgICByZXR1cm4gdmVsb2NpdHk7XG59XG5mdW5jdGlvbiByZXNvbHZlVmFyaWFudCh2aXN1YWxFbGVtZW50LCBkZWZpbml0aW9uLCBjdXN0b20pIHtcbiAgICBjb25zdCBwcm9wcyA9IHZpc3VhbEVsZW1lbnQuZ2V0UHJvcHMoKTtcbiAgICByZXR1cm4gcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMocHJvcHMsIGRlZmluaXRpb24sIGN1c3RvbSAhPT0gdW5kZWZpbmVkID8gY3VzdG9tIDogcHJvcHMuY3VzdG9tLCBnZXRDdXJyZW50KHZpc3VhbEVsZW1lbnQpLCBnZXRWZWxvY2l0eSh2aXN1YWxFbGVtZW50KSk7XG59XG5cbmV4cG9ydCB7IHJlc29sdmVWYXJpYW50IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs":
|
||
/*!******************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs ***!
|
||
\******************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ resolveVariantFromProps: function() { return /* binding */ resolveVariantFromProps; }\n/* harmony export */ });\nfunction resolveVariantFromProps(props, definition, custom, currentValues = {}, currentVelocity = {}) {\n /**\n * If the variant definition is a function, resolve.\n */\n if (typeof definition === \"function\") {\n definition = definition(custom !== undefined ? custom : props.custom, currentValues, currentVelocity);\n }\n /**\n * If the variant definition is a variant label, or\n * the function returned a variant label, resolve.\n */\n if (typeof definition === \"string\") {\n definition = props.variants && props.variants[definition];\n }\n /**\n * At this point we've resolved both functions and variant labels,\n * but the resolved variant label might itself have been a function.\n * If so, resolve. This can only have returned a valid target object.\n */\n if (typeof definition === \"function\") {\n definition = definition(custom !== undefined ? custom : props.custom, currentValues, currentVelocity);\n }\n return definition;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3Jlc29sdmUtdmFyaWFudHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4RUFBOEUsc0JBQXNCO0FBQ3BHO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRW1DIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3Jlc29sdmUtdmFyaWFudHMubWpzP2ZiYmMiXSwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMocHJvcHMsIGRlZmluaXRpb24sIGN1c3RvbSwgY3VycmVudFZhbHVlcyA9IHt9LCBjdXJyZW50VmVsb2NpdHkgPSB7fSkge1xuICAgIC8qKlxuICAgICAqIElmIHRoZSB2YXJpYW50IGRlZmluaXRpb24gaXMgYSBmdW5jdGlvbiwgcmVzb2x2ZS5cbiAgICAgKi9cbiAgICBpZiAodHlwZW9mIGRlZmluaXRpb24gPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICBkZWZpbml0aW9uID0gZGVmaW5pdGlvbihjdXN0b20gIT09IHVuZGVmaW5lZCA/IGN1c3RvbSA6IHByb3BzLmN1c3RvbSwgY3VycmVudFZhbHVlcywgY3VycmVudFZlbG9jaXR5KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSWYgdGhlIHZhcmlhbnQgZGVmaW5pdGlvbiBpcyBhIHZhcmlhbnQgbGFiZWwsIG9yXG4gICAgICogdGhlIGZ1bmN0aW9uIHJldHVybmVkIGEgdmFyaWFudCBsYWJlbCwgcmVzb2x2ZS5cbiAgICAgKi9cbiAgICBpZiAodHlwZW9mIGRlZmluaXRpb24gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgZGVmaW5pdGlvbiA9IHByb3BzLnZhcmlhbnRzICYmIHByb3BzLnZhcmlhbnRzW2RlZmluaXRpb25dO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBdCB0aGlzIHBvaW50IHdlJ3ZlIHJlc29sdmVkIGJvdGggZnVuY3Rpb25zIGFuZCB2YXJpYW50IGxhYmVscyxcbiAgICAgKiBidXQgdGhlIHJlc29sdmVkIHZhcmlhbnQgbGFiZWwgbWlnaHQgaXRzZWxmIGhhdmUgYmVlbiBhIGZ1bmN0aW9uLlxuICAgICAqIElmIHNvLCByZXNvbHZlLiBUaGlzIGNhbiBvbmx5IGhhdmUgcmV0dXJuZWQgYSB2YWxpZCB0YXJnZXQgb2JqZWN0LlxuICAgICAqL1xuICAgIGlmICh0eXBlb2YgZGVmaW5pdGlvbiA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAgIGRlZmluaXRpb24gPSBkZWZpbml0aW9uKGN1c3RvbSAhPT0gdW5kZWZpbmVkID8gY3VzdG9tIDogcHJvcHMuY3VzdG9tLCBjdXJyZW50VmFsdWVzLCBjdXJyZW50VmVsb2NpdHkpO1xuICAgIH1cbiAgICByZXR1cm4gZGVmaW5pdGlvbjtcbn1cblxuZXhwb3J0IHsgcmVzb2x2ZVZhcmlhbnRGcm9tUHJvcHMgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/setters.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/setters.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ checkTargetForNewValues: function() { return /* binding */ checkTargetForNewValues; },\n/* harmony export */ getOrigin: function() { return /* binding */ getOrigin; },\n/* harmony export */ getOriginFromTransition: function() { return /* binding */ getOriginFromTransition; },\n/* harmony export */ setTarget: function() { return /* binding */ setTarget; },\n/* harmony export */ setValues: function() { return /* binding */ setValues; }\n/* harmony export */ });\n/* harmony import */ var _utils_is_numerical_string_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../utils/is-numerical-string.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs\");\n/* harmony import */ var _utils_is_zero_value_string_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../utils/is-zero-value-string.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs\");\n/* harmony import */ var _utils_resolve_value_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/resolve-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs\");\n/* harmony import */ var _value_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../value/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs\");\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n/* harmony import */ var _dom_value_types_animatable_none_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../dom/value-types/animatable-none.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs\");\n/* harmony import */ var _dom_value_types_find_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom/value-types/find.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs\");\n/* harmony import */ var _resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./resolve-dynamic-variants.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs\");\n\n\n\n\n\n\n\n\n\n/**\n * Set VisualElement's MotionValue, creating a new MotionValue for it if\n * it doesn't exist.\n */\nfunction setMotionValue(visualElement, key, value) {\n if (visualElement.hasValue(key)) {\n visualElement.getValue(key).set(value);\n }\n else {\n visualElement.addValue(key, (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_0__.motionValue)(value));\n }\n}\nfunction setTarget(visualElement, definition) {\n const resolved = (0,_resolve_dynamic_variants_mjs__WEBPACK_IMPORTED_MODULE_1__.resolveVariant)(visualElement, definition);\n let { transitionEnd = {}, transition = {}, ...target } = resolved ? visualElement.makeTargetAnimatable(resolved, false) : {};\n target = { ...target, ...transitionEnd };\n for (const key in target) {\n const value = (0,_utils_resolve_value_mjs__WEBPACK_IMPORTED_MODULE_2__.resolveFinalValueInKeyframes)(target[key]);\n setMotionValue(visualElement, key, value);\n }\n}\nfunction setVariants(visualElement, variantLabels) {\n const reversedLabels = [...variantLabels].reverse();\n reversedLabels.forEach((key) => {\n const variant = visualElement.getVariant(key);\n variant && setTarget(visualElement, variant);\n if (visualElement.variantChildren) {\n visualElement.variantChildren.forEach((child) => {\n setVariants(child, variantLabels);\n });\n }\n });\n}\nfunction setValues(visualElement, definition) {\n if (Array.isArray(definition)) {\n return setVariants(visualElement, definition);\n }\n else if (typeof definition === \"string\") {\n return setVariants(visualElement, [definition]);\n }\n else {\n setTarget(visualElement, definition);\n }\n}\nfunction checkTargetForNewValues(visualElement, target, origin) {\n var _a, _b;\n const newValueKeys = Object.keys(target).filter((key) => !visualElement.hasValue(key));\n const numNewValues = newValueKeys.length;\n if (!numNewValues)\n return;\n for (let i = 0; i < numNewValues; i++) {\n const key = newValueKeys[i];\n const targetValue = target[key];\n let value = null;\n /**\n * If the target is a series of keyframes, we can use the first value\n * in the array. If this first value is null, we'll still need to read from the DOM.\n */\n if (Array.isArray(targetValue)) {\n value = targetValue[0];\n }\n /**\n * If the target isn't keyframes, or the first keyframe was null, we need to\n * first check if an origin value was explicitly defined in the transition as \"from\",\n * if not read the value from the DOM. As an absolute fallback, take the defined target value.\n */\n if (value === null) {\n value = (_b = (_a = origin[key]) !== null && _a !== void 0 ? _a : visualElement.readValue(key)) !== null && _b !== void 0 ? _b : target[key];\n }\n /**\n * If value is still undefined or null, ignore it. Preferably this would throw,\n * but this was causing issues in Framer.\n */\n if (value === undefined || value === null)\n continue;\n if (typeof value === \"string\" &&\n ((0,_utils_is_numerical_string_mjs__WEBPACK_IMPORTED_MODULE_3__.isNumericalString)(value) || (0,_utils_is_zero_value_string_mjs__WEBPACK_IMPORTED_MODULE_4__.isZeroValueString)(value))) {\n // If this is a number read as a string, ie \"0\" or \"200\", convert it to a number\n value = parseFloat(value);\n }\n else if (!(0,_dom_value_types_find_mjs__WEBPACK_IMPORTED_MODULE_5__.findValueType)(value) && _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_6__.complex.test(targetValue)) {\n value = (0,_dom_value_types_animatable_none_mjs__WEBPACK_IMPORTED_MODULE_7__.getAnimatableNone)(key, targetValue);\n }\n visualElement.addValue(key, (0,_value_index_mjs__WEBPACK_IMPORTED_MODULE_0__.motionValue)(value, { owner: visualElement }));\n if (origin[key] === undefined) {\n origin[key] = value;\n }\n if (value !== null)\n visualElement.setBaseTarget(key, value);\n }\n}\nfunction getOriginFromTransition(key, transition) {\n if (!transition)\n return;\n const valueTransition = transition[key] || transition[\"default\"] || transition;\n return valueTransition.from;\n}\nfunction getOrigin(target, transition, visualElement) {\n const origin = {};\n for (const key in target) {\n const transitionOrigin = getOriginFromTransition(key, transition);\n if (transitionOrigin !== undefined) {\n origin[key] = transitionOrigin;\n }\n else {\n const value = visualElement.getValue(key);\n if (value) {\n origin[key] = value.get();\n }\n }\n }\n return origin;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3NldHRlcnMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBd0U7QUFDQztBQUNJO0FBQ3pCO0FBQ1U7QUFDYTtBQUNmO0FBQ0k7O0FBRWhFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9DQUFvQyw2REFBVztBQUMvQztBQUNBO0FBQ0E7QUFDQSxxQkFBcUIsNkVBQWM7QUFDbkMsVUFBVSxrQkFBa0IsaUJBQWlCLGNBQWM7QUFDM0QsZUFBZTtBQUNmO0FBQ0Esc0JBQXNCLHNGQUE0QjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsYUFBYTtBQUNiO0FBQ0EsS0FBSztBQUNMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixrQkFBa0I7QUFDdEM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhLGlGQUFpQixXQUFXLGtGQUFpQjtBQUMxRDtBQUNBO0FBQ0E7QUFDQSxrQkFBa0Isd0VBQWEsV0FBVyxtRUFBTztBQUNqRCxvQkFBb0IsdUZBQWlCO0FBQ3JDO0FBQ0Esb0NBQW9DLDZEQUFXLFVBQVUsc0JBQXNCO0FBQy9FO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRTZGIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3NldHRlcnMubWpzPzBlNTIiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNOdW1lcmljYWxTdHJpbmcgfSBmcm9tICcuLi8uLi91dGlscy9pcy1udW1lcmljYWwtc3RyaW5nLm1qcyc7XG5pbXBvcnQgeyBpc1plcm9WYWx1ZVN0cmluZyB9IGZyb20gJy4uLy4uL3V0aWxzL2lzLXplcm8tdmFsdWUtc3RyaW5nLm1qcyc7XG5pbXBvcnQgeyByZXNvbHZlRmluYWxWYWx1ZUluS2V5ZnJhbWVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvcmVzb2x2ZS12YWx1ZS5tanMnO1xuaW1wb3J0IHsgbW90aW9uVmFsdWUgfSBmcm9tICcuLi8uLi92YWx1ZS9pbmRleC5tanMnO1xuaW1wb3J0IHsgY29tcGxleCB9IGZyb20gJy4uLy4uL3ZhbHVlL3R5cGVzL2NvbXBsZXgvaW5kZXgubWpzJztcbmltcG9ydCB7IGdldEFuaW1hdGFibGVOb25lIH0gZnJvbSAnLi4vZG9tL3ZhbHVlLXR5cGVzL2FuaW1hdGFibGUtbm9uZS5tanMnO1xuaW1wb3J0IHsgZmluZFZhbHVlVHlwZSB9IGZyb20gJy4uL2RvbS92YWx1ZS10eXBlcy9maW5kLm1qcyc7XG5pbXBvcnQgeyByZXNvbHZlVmFyaWFudCB9IGZyb20gJy4vcmVzb2x2ZS1keW5hbWljLXZhcmlhbnRzLm1qcyc7XG5cbi8qKlxuICogU2V0IFZpc3VhbEVsZW1lbnQncyBNb3Rpb25WYWx1ZSwgY3JlYXRpbmcgYSBuZXcgTW90aW9uVmFsdWUgZm9yIGl0IGlmXG4gKiBpdCBkb2Vzbid0IGV4aXN0LlxuICovXG5mdW5jdGlvbiBzZXRNb3Rpb25WYWx1ZSh2aXN1YWxFbGVtZW50LCBrZXksIHZhbHVlKSB7XG4gICAgaWYgKHZpc3VhbEVsZW1lbnQuaGFzVmFsdWUoa2V5KSkge1xuICAgICAgICB2aXN1YWxFbGVtZW50LmdldFZhbHVlKGtleSkuc2V0KHZhbHVlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHZpc3VhbEVsZW1lbnQuYWRkVmFsdWUoa2V5LCBtb3Rpb25WYWx1ZSh2YWx1ZSkpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHNldFRhcmdldCh2aXN1YWxFbGVtZW50LCBkZWZpbml0aW9uKSB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSByZXNvbHZlVmFyaWFudCh2aXN1YWxFbGVtZW50LCBkZWZpbml0aW9uKTtcbiAgICBsZXQgeyB0cmFuc2l0aW9uRW5kID0ge30sIHRyYW5zaXRpb24gPSB7fSwgLi4udGFyZ2V0IH0gPSByZXNvbHZlZCA/IHZpc3VhbEVsZW1lbnQubWFrZVRhcmdldEFuaW1hdGFibGUocmVzb2x2ZWQsIGZhbHNlKSA6IHt9O1xuICAgIHRhcmdldCA9IHsgLi4udGFyZ2V0LCAuLi50cmFuc2l0aW9uRW5kIH07XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdGFyZ2V0KSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gcmVzb2x2ZUZpbmFsVmFsdWVJbktleWZyYW1lcyh0YXJnZXRba2V5XSk7XG4gICAgICAgIHNldE1vdGlvblZhbHVlKHZpc3VhbEVsZW1lbnQsIGtleSwgdmFsdWUpO1xuICAgIH1cbn1cbmZ1bmN0aW9uIHNldFZhcmlhbnRzKHZpc3VhbEVsZW1lbnQsIHZhcmlhbnRMYWJlbHMpIHtcbiAgICBjb25zdCByZXZlcnNlZExhYmVscyA9IFsuLi52YXJpYW50TGFiZWxzXS5yZXZlcnNlKCk7XG4gICAgcmV2ZXJzZWRMYWJlbHMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGNvbnN0IHZhcmlhbnQgPSB2aXN1YWxFbGVtZW50LmdldFZhcmlhbnQoa2V5KTtcbiAgICAgICAgdmFyaWFudCAmJiBzZXRUYXJnZXQodmlzdWFsRWxlbWVudCwgdmFyaWFudCk7XG4gICAgICAgIGlmICh2aXN1YWxFbGVtZW50LnZhcmlhbnRDaGlsZHJlbikge1xuICAgICAgICAgICAgdmlzdWFsRWxlbWVudC52YXJpYW50Q2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRWYXJpYW50cyhjaGlsZCwgdmFyaWFudExhYmVscyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuZnVuY3Rpb24gc2V0VmFsdWVzKHZpc3VhbEVsZW1lbnQsIGRlZmluaXRpb24pIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShkZWZpbml0aW9uKSkge1xuICAgICAgICByZXR1cm4gc2V0VmFyaWFudHModmlzdWFsRWxlbWVudCwgZGVmaW5pdGlvbik7XG4gICAgfVxuICAgIGVsc2UgaWYgKHR5cGVvZiBkZWZpbml0aW9uID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHJldHVybiBzZXRWYXJpYW50cyh2aXN1YWxFbGVtZW50LCBbZGVmaW5pdGlvbl0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgc2V0VGFyZ2V0KHZpc3VhbEVsZW1lbnQsIGRlZmluaXRpb24pO1xuICAgIH1cbn1cbmZ1bmN0aW9uIGNoZWNrVGFyZ2V0Rm9yTmV3VmFsdWVzKHZpc3VhbEVsZW1lbnQsIHRhcmdldCwgb3JpZ2luKSB7XG4gICAgdmFyIF9hLCBfYjtcbiAgICBjb25zdCBuZXdWYWx1ZUtleXMgPSBPYmplY3Qua2V5cyh0YXJnZXQpLmZpbHRlcigoa2V5KSA9PiAhdmlzdWFsRWxlbWVudC5oYXNWYWx1ZShrZXkpKTtcbiAgICBjb25zdCBudW1OZXdWYWx1ZXMgPSBuZXdWYWx1ZUtleXMubGVuZ3RoO1xuICAgIGlmICghbnVtTmV3VmFsdWVzKVxuICAgICAgICByZXR1cm47XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1OZXdWYWx1ZXM7IGkrKykge1xuICAgICAgICBjb25zdCBrZXkgPSBuZXdWYWx1ZUtleXNbaV07XG4gICAgICAgIGNvbnN0IHRhcmdldFZhbHVlID0gdGFyZ2V0W2tleV07XG4gICAgICAgIGxldCB2YWx1ZSA9IG51bGw7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB0aGUgdGFyZ2V0IGlzIGEgc2VyaWVzIG9mIGtleWZyYW1lcywgd2UgY2FuIHVzZSB0aGUgZmlyc3QgdmFsdWVcbiAgICAgICAgICogaW4gdGhlIGFycmF5LiBJZiB0aGlzIGZpcnN0IHZhbHVlIGlzIG51bGwsIHdlJ2xsIHN0aWxsIG5lZWQgdG8gcmVhZCBmcm9tIHRoZSBET00uXG4gICAgICAgICAqL1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh0YXJnZXRWYWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdGFyZ2V0VmFsdWVbMF07XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRoZSB0YXJnZXQgaXNuJ3Qga2V5ZnJhbWVzLCBvciB0aGUgZmlyc3Qga2V5ZnJhbWUgd2FzIG51bGwsIHdlIG5lZWQgdG9cbiAgICAgICAgICogZmlyc3QgY2hlY2sgaWYgYW4gb3JpZ2luIHZhbHVlIHdhcyBleHBsaWNpdGx5IGRlZmluZWQgaW4gdGhlIHRyYW5zaXRpb24gYXMgXCJmcm9tXCIsXG4gICAgICAgICAqIGlmIG5vdCByZWFkIHRoZSB2YWx1ZSBmcm9tIHRoZSBET00uIEFzIGFuIGFic29sdXRlIGZhbGxiYWNrLCB0YWtlIHRoZSBkZWZpbmVkIHRhcmdldCB2YWx1ZS5cbiAgICAgICAgICovXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdmFsdWUgPSAoX2IgPSAoX2EgPSBvcmlnaW5ba2V5XSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogdmlzdWFsRWxlbWVudC5yZWFkVmFsdWUoa2V5KSkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogdGFyZ2V0W2tleV07XG4gICAgICAgIH1cbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHZhbHVlIGlzIHN0aWxsIHVuZGVmaW5lZCBvciBudWxsLCBpZ25vcmUgaXQuIFByZWZlcmFibHkgdGhpcyB3b3VsZCB0aHJvdyxcbiAgICAgICAgICogYnV0IHRoaXMgd2FzIGNhdXNpbmcgaXNzdWVzIGluIEZyYW1lci5cbiAgICAgICAgICovXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgJiZcbiAgICAgICAgICAgIChpc051bWVyaWNhbFN0cmluZyh2YWx1ZSkgfHwgaXNaZXJvVmFsdWVTdHJpbmcodmFsdWUpKSkge1xuICAgICAgICAgICAgLy8gSWYgdGhpcyBpcyBhIG51bWJlciByZWFkIGFzIGEgc3RyaW5nLCBpZSBcIjBcIiBvciBcIjIwMFwiLCBjb252ZXJ0IGl0IHRvIGEgbnVtYmVyXG4gICAgICAgICAgICB2YWx1ZSA9IHBhcnNlRmxvYXQodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKCFmaW5kVmFsdWVUeXBlKHZhbHVlKSAmJiBjb21wbGV4LnRlc3QodGFyZ2V0VmFsdWUpKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IGdldEFuaW1hdGFibGVOb25lKGtleSwgdGFyZ2V0VmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHZpc3VhbEVsZW1lbnQuYWRkVmFsdWUoa2V5LCBtb3Rpb25WYWx1ZSh2YWx1ZSwgeyBvd25lcjogdmlzdWFsRWxlbWVudCB9KSk7XG4gICAgICAgIGlmIChvcmlnaW5ba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBvcmlnaW5ba2V5XSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gbnVsbClcbiAgICAgICAgICAgIHZpc3VhbEVsZW1lbnQuc2V0QmFzZVRhcmdldChrZXksIHZhbHVlKTtcbiAgICB9XG59XG5mdW5jdGlvbiBnZXRPcmlnaW5Gcm9tVHJhbnNpdGlvbihrZXksIHRyYW5zaXRpb24pIHtcbiAgICBpZiAoIXRyYW5zaXRpb24pXG4gICAgICAgIHJldHVybjtcbiAgICBjb25zdCB2YWx1ZVRyYW5zaXRpb24gPSB0cmFuc2l0aW9uW2tleV0gfHwgdHJhbnNpdGlvbltcImRlZmF1bHRcIl0gfHwgdHJhbnNpdGlvbjtcbiAgICByZXR1cm4gdmFsdWVUcmFuc2l0aW9uLmZyb207XG59XG5mdW5jdGlvbiBnZXRPcmlnaW4odGFyZ2V0LCB0cmFuc2l0aW9uLCB2aXN1YWxFbGVtZW50KSB7XG4gICAgY29uc3Qgb3JpZ2luID0ge307XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdGFyZ2V0KSB7XG4gICAgICAgIGNvbnN0IHRyYW5zaXRpb25PcmlnaW4gPSBnZXRPcmlnaW5Gcm9tVHJhbnNpdGlvbihrZXksIHRyYW5zaXRpb24pO1xuICAgICAgICBpZiAodHJhbnNpdGlvbk9yaWdpbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBvcmlnaW5ba2V5XSA9IHRyYW5zaXRpb25PcmlnaW47XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHZpc3VhbEVsZW1lbnQuZ2V0VmFsdWUoa2V5KTtcbiAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIG9yaWdpbltrZXldID0gdmFsdWUuZ2V0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG9yaWdpbjtcbn1cblxuZXhwb3J0IHsgY2hlY2tUYXJnZXRGb3JOZXdWYWx1ZXMsIGdldE9yaWdpbiwgZ2V0T3JpZ2luRnJvbVRyYW5zaXRpb24sIHNldFRhcmdldCwgc2V0VmFsdWVzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/setters.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ variantPriorityOrder: function() { return /* binding */ variantPriorityOrder; },\n/* harmony export */ variantProps: function() { return /* binding */ variantProps; }\n/* harmony export */ });\nconst variantPriorityOrder = [\n \"animate\",\n \"whileInView\",\n \"whileFocus\",\n \"whileHover\",\n \"whileTap\",\n \"whileDrag\",\n \"exit\",\n];\nconst variantProps = [\"initial\", ...variantPriorityOrder];\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3ZhcmlhbnQtcHJvcHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRThDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvcmVuZGVyL3V0aWxzL3ZhcmlhbnQtcHJvcHMubWpzPzc3YWYiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgdmFyaWFudFByaW9yaXR5T3JkZXIgPSBbXG4gICAgXCJhbmltYXRlXCIsXG4gICAgXCJ3aGlsZUluVmlld1wiLFxuICAgIFwid2hpbGVGb2N1c1wiLFxuICAgIFwid2hpbGVIb3ZlclwiLFxuICAgIFwid2hpbGVUYXBcIixcbiAgICBcIndoaWxlRHJhZ1wiLFxuICAgIFwiZXhpdFwiLFxuXTtcbmNvbnN0IHZhcmlhbnRQcm9wcyA9IFtcImluaXRpYWxcIiwgLi4udmFyaWFudFByaW9yaXR5T3JkZXJdO1xuXG5leHBvcnQgeyB2YXJpYW50UHJpb3JpdHlPcmRlciwgdmFyaWFudFByb3BzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/render/utils/variant-props.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MotionGlobalConfig: function() { return /* binding */ MotionGlobalConfig; }\n/* harmony export */ });\nconst MotionGlobalConfig = {\n skipAnimations: false,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvR2xvYmFsQ29uZmlnLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBOztBQUU4QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL0dsb2JhbENvbmZpZy5tanM/ZjIwYSJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBNb3Rpb25HbG9iYWxDb25maWcgPSB7XG4gICAgc2tpcEFuaW1hdGlvbnM6IGZhbHNlLFxufTtcblxuZXhwb3J0IHsgTW90aW9uR2xvYmFsQ29uZmlnIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/array.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/array.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ addUniqueItem: function() { return /* binding */ addUniqueItem; },\n/* harmony export */ moveItem: function() { return /* binding */ moveItem; },\n/* harmony export */ removeItem: function() { return /* binding */ removeItem; }\n/* harmony export */ });\nfunction addUniqueItem(arr, item) {\n if (arr.indexOf(item) === -1)\n arr.push(item);\n}\nfunction removeItem(arr, item) {\n const index = arr.indexOf(item);\n if (index > -1)\n arr.splice(index, 1);\n}\n// Adapted from array-move\nfunction moveItem([...arr], fromIndex, toIndex) {\n const startIndex = fromIndex < 0 ? arr.length + fromIndex : fromIndex;\n if (startIndex >= 0 && startIndex < arr.length) {\n const endIndex = toIndex < 0 ? arr.length + toIndex : toIndex;\n const [item] = arr.splice(fromIndex, 1);\n arr.splice(endIndex, 0, item);\n }\n return arr;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvYXJyYXkubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUrQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL2FycmF5Lm1qcz82YjRlIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGFkZFVuaXF1ZUl0ZW0oYXJyLCBpdGVtKSB7XG4gICAgaWYgKGFyci5pbmRleE9mKGl0ZW0pID09PSAtMSlcbiAgICAgICAgYXJyLnB1c2goaXRlbSk7XG59XG5mdW5jdGlvbiByZW1vdmVJdGVtKGFyciwgaXRlbSkge1xuICAgIGNvbnN0IGluZGV4ID0gYXJyLmluZGV4T2YoaXRlbSk7XG4gICAgaWYgKGluZGV4ID4gLTEpXG4gICAgICAgIGFyci5zcGxpY2UoaW5kZXgsIDEpO1xufVxuLy8gQWRhcHRlZCBmcm9tIGFycmF5LW1vdmVcbmZ1bmN0aW9uIG1vdmVJdGVtKFsuLi5hcnJdLCBmcm9tSW5kZXgsIHRvSW5kZXgpIHtcbiAgICBjb25zdCBzdGFydEluZGV4ID0gZnJvbUluZGV4IDwgMCA/IGFyci5sZW5ndGggKyBmcm9tSW5kZXggOiBmcm9tSW5kZXg7XG4gICAgaWYgKHN0YXJ0SW5kZXggPj0gMCAmJiBzdGFydEluZGV4IDwgYXJyLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBlbmRJbmRleCA9IHRvSW5kZXggPCAwID8gYXJyLmxlbmd0aCArIHRvSW5kZXggOiB0b0luZGV4O1xuICAgICAgICBjb25zdCBbaXRlbV0gPSBhcnIuc3BsaWNlKGZyb21JbmRleCwgMSk7XG4gICAgICAgIGFyci5zcGxpY2UoZW5kSW5kZXgsIDAsIGl0ZW0pO1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xufVxuXG5leHBvcnQgeyBhZGRVbmlxdWVJdGVtLCBtb3ZlSXRlbSwgcmVtb3ZlSXRlbSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/array.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/clamp.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ clamp: function() { return /* binding */ clamp; }\n/* harmony export */ });\nconst clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvY2xhbXAubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFFaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9jbGFtcC5tanM/OWNhNCJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBjbGFtcCA9IChtaW4sIG1heCwgdikgPT4gTWF0aC5taW4oTWF0aC5tYXgodiwgbWluKSwgbWF4KTtcblxuZXhwb3J0IHsgY2xhbXAgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/delay.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/delay.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ delay: function() { return /* binding */ delay; }\n/* harmony export */ });\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n/**\n * Timeout defined in ms\n */\nfunction delay(callback, timeout) {\n const start = performance.now();\n const checkElapsed = ({ timestamp }) => {\n const elapsed = timestamp - start;\n if (elapsed >= timeout) {\n (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.cancelFrame)(checkElapsed);\n callback(elapsed - timeout);\n }\n };\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.read(checkElapsed, true);\n return () => (0,_frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.cancelFrame)(checkElapsed);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvZGVsYXkubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQTREOztBQUU1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLFdBQVc7QUFDdkM7QUFDQTtBQUNBLFlBQVksaUVBQVc7QUFDdkI7QUFDQTtBQUNBO0FBQ0EsSUFBSSx1REFBSztBQUNULGlCQUFpQixpRUFBVztBQUM1Qjs7QUFFaUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9kZWxheS5tanM/NmM0YSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmcmFtZSwgY2FuY2VsRnJhbWUgfSBmcm9tICcuLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuLyoqXG4gKiBUaW1lb3V0IGRlZmluZWQgaW4gbXNcbiAqL1xuZnVuY3Rpb24gZGVsYXkoY2FsbGJhY2ssIHRpbWVvdXQpIHtcbiAgICBjb25zdCBzdGFydCA9IHBlcmZvcm1hbmNlLm5vdygpO1xuICAgIGNvbnN0IGNoZWNrRWxhcHNlZCA9ICh7IHRpbWVzdGFtcCB9KSA9PiB7XG4gICAgICAgIGNvbnN0IGVsYXBzZWQgPSB0aW1lc3RhbXAgLSBzdGFydDtcbiAgICAgICAgaWYgKGVsYXBzZWQgPj0gdGltZW91dCkge1xuICAgICAgICAgICAgY2FuY2VsRnJhbWUoY2hlY2tFbGFwc2VkKTtcbiAgICAgICAgICAgIGNhbGxiYWNrKGVsYXBzZWQgLSB0aW1lb3V0KTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgZnJhbWUucmVhZChjaGVja0VsYXBzZWQsIHRydWUpO1xuICAgIHJldHVybiAoKSA9PiBjYW5jZWxGcmFtZShjaGVja0VsYXBzZWQpO1xufVxuXG5leHBvcnQgeyBkZWxheSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/delay.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/distance.mjs":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/distance.mjs ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ distance: function() { return /* binding */ distance; },\n/* harmony export */ distance2D: function() { return /* binding */ distance2D; }\n/* harmony export */ });\nconst distance = (a, b) => Math.abs(a - b);\nfunction distance2D(a, b) {\n // Multi-dimensional\n const xDelta = distance(a.x, b.x);\n const yDelta = distance(a.y, b.y);\n return Math.sqrt(xDelta ** 2 + yDelta ** 2);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvZGlzdGFuY2UubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRWdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvZGlzdGFuY2UubWpzP2RhMGYiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgZGlzdGFuY2UgPSAoYSwgYikgPT4gTWF0aC5hYnMoYSAtIGIpO1xuZnVuY3Rpb24gZGlzdGFuY2UyRChhLCBiKSB7XG4gICAgLy8gTXVsdGktZGltZW5zaW9uYWxcbiAgICBjb25zdCB4RGVsdGEgPSBkaXN0YW5jZShhLngsIGIueCk7XG4gICAgY29uc3QgeURlbHRhID0gZGlzdGFuY2UoYS55LCBiLnkpO1xuICAgIHJldHVybiBNYXRoLnNxcnQoeERlbHRhICoqIDIgKyB5RGVsdGEgKiogMik7XG59XG5cbmV4cG9ydCB7IGRpc3RhbmNlLCBkaXN0YW5jZTJEIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/distance.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs":
|
||
/*!*************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/errors.mjs ***!
|
||
\*************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ invariant: function() { return /* binding */ invariant; },\n/* harmony export */ warning: function() { return /* binding */ warning; }\n/* harmony export */ });\n/* harmony import */ var _noop_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n\n\nlet warning = _noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop;\nlet invariant = _noop_mjs__WEBPACK_IMPORTED_MODULE_0__.noop;\nif (true) {\n warning = (check, message) => {\n if (!check && typeof console !== \"undefined\") {\n console.warn(message);\n }\n };\n invariant = (check, message) => {\n if (!check) {\n throw new Error(message);\n }\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvZXJyb3JzLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0M7O0FBRWxDLGNBQWMsMkNBQUk7QUFDbEIsZ0JBQWdCLDJDQUFJO0FBQ3BCLElBQUksSUFBcUM7QUFDekM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFOEIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9lcnJvcnMubWpzPzk5NDkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4vbm9vcC5tanMnO1xuXG5sZXQgd2FybmluZyA9IG5vb3A7XG5sZXQgaW52YXJpYW50ID0gbm9vcDtcbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gXCJwcm9kdWN0aW9uXCIpIHtcbiAgICB3YXJuaW5nID0gKGNoZWNrLCBtZXNzYWdlKSA9PiB7XG4gICAgICAgIGlmICghY2hlY2sgJiYgdHlwZW9mIGNvbnNvbGUgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybihtZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgaW52YXJpYW50ID0gKGNoZWNrLCBtZXNzYWdlKSA9PiB7XG4gICAgICAgIGlmICghY2hlY2spIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbmV4cG9ydCB7IGludmFyaWFudCwgd2FybmluZyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/get-context-window.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/get-context-window.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ getContextWindow: function() { return /* binding */ getContextWindow; }\n/* harmony export */ });\n// Fixes https://github.com/framer/motion/issues/2270\nconst getContextWindow = ({ current }) => {\n return current ? current.ownerDocument.defaultView : null;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvZ2V0LWNvbnRleHQtd2luZG93Lm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQSw0QkFBNEIsU0FBUztBQUNyQztBQUNBOztBQUU0QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL2dldC1jb250ZXh0LXdpbmRvdy5tanM/NGVhZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBGaXhlcyBodHRwczovL2dpdGh1Yi5jb20vZnJhbWVyL21vdGlvbi9pc3N1ZXMvMjI3MFxuY29uc3QgZ2V0Q29udGV4dFdpbmRvdyA9ICh7IGN1cnJlbnQgfSkgPT4ge1xuICAgIHJldHVybiBjdXJyZW50ID8gY3VycmVudC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3IDogbnVsbDtcbn07XG5cbmV4cG9ydCB7IGdldENvbnRleHRXaW5kb3cgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/get-context-window.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hslaToRgba: function() { return /* binding */ hslaToRgba; }\n/* harmony export */ });\n// Adapted from https://gist.github.com/mjackson/5311256\nfunction hueToRgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\nfunction hslaToRgba({ hue, saturation, lightness, alpha }) {\n hue /= 360;\n saturation /= 100;\n lightness /= 100;\n let red = 0;\n let green = 0;\n let blue = 0;\n if (!saturation) {\n red = green = blue = lightness;\n }\n else {\n const q = lightness < 0.5\n ? lightness * (1 + saturation)\n : lightness + saturation - lightness * saturation;\n const p = 2 * lightness - q;\n red = hueToRgb(p, q, hue + 1 / 3);\n green = hueToRgb(p, q, hue);\n blue = hueToRgb(p, q, hue - 1 / 3);\n }\n return {\n red: Math.round(red * 255),\n green: Math.round(green * 255),\n blue: Math.round(blue * 255),\n alpha,\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaHNsYS10by1yZ2JhLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQixtQ0FBbUM7QUFDekQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXNCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaHNsYS10by1yZ2JhLm1qcz83ZDNhIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEFkYXB0ZWQgZnJvbSBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9tamFja3Nvbi81MzExMjU2XG5mdW5jdGlvbiBodWVUb1JnYihwLCBxLCB0KSB7XG4gICAgaWYgKHQgPCAwKVxuICAgICAgICB0ICs9IDE7XG4gICAgaWYgKHQgPiAxKVxuICAgICAgICB0IC09IDE7XG4gICAgaWYgKHQgPCAxIC8gNilcbiAgICAgICAgcmV0dXJuIHAgKyAocSAtIHApICogNiAqIHQ7XG4gICAgaWYgKHQgPCAxIC8gMilcbiAgICAgICAgcmV0dXJuIHE7XG4gICAgaWYgKHQgPCAyIC8gMylcbiAgICAgICAgcmV0dXJuIHAgKyAocSAtIHApICogKDIgLyAzIC0gdCkgKiA2O1xuICAgIHJldHVybiBwO1xufVxuZnVuY3Rpb24gaHNsYVRvUmdiYSh7IGh1ZSwgc2F0dXJhdGlvbiwgbGlnaHRuZXNzLCBhbHBoYSB9KSB7XG4gICAgaHVlIC89IDM2MDtcbiAgICBzYXR1cmF0aW9uIC89IDEwMDtcbiAgICBsaWdodG5lc3MgLz0gMTAwO1xuICAgIGxldCByZWQgPSAwO1xuICAgIGxldCBncmVlbiA9IDA7XG4gICAgbGV0IGJsdWUgPSAwO1xuICAgIGlmICghc2F0dXJhdGlvbikge1xuICAgICAgICByZWQgPSBncmVlbiA9IGJsdWUgPSBsaWdodG5lc3M7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBjb25zdCBxID0gbGlnaHRuZXNzIDwgMC41XG4gICAgICAgICAgICA/IGxpZ2h0bmVzcyAqICgxICsgc2F0dXJhdGlvbilcbiAgICAgICAgICAgIDogbGlnaHRuZXNzICsgc2F0dXJhdGlvbiAtIGxpZ2h0bmVzcyAqIHNhdHVyYXRpb247XG4gICAgICAgIGNvbnN0IHAgPSAyICogbGlnaHRuZXNzIC0gcTtcbiAgICAgICAgcmVkID0gaHVlVG9SZ2IocCwgcSwgaHVlICsgMSAvIDMpO1xuICAgICAgICBncmVlbiA9IGh1ZVRvUmdiKHAsIHEsIGh1ZSk7XG4gICAgICAgIGJsdWUgPSBodWVUb1JnYihwLCBxLCBodWUgLSAxIC8gMyk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHJlZDogTWF0aC5yb3VuZChyZWQgKiAyNTUpLFxuICAgICAgICBncmVlbjogTWF0aC5yb3VuZChncmVlbiAqIDI1NSksXG4gICAgICAgIGJsdWU6IE1hdGgucm91bmQoYmx1ZSAqIDI1NSksXG4gICAgICAgIGFscGhhLFxuICAgIH07XG59XG5cbmV4cG9ydCB7IGhzbGFUb1JnYmEgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/interpolate.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/interpolate.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ interpolate: function() { return /* binding */ interpolate; }\n/* harmony export */ });\n/* harmony import */ var _errors_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../value/types/color/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\");\n/* harmony import */ var _clamp_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _mix_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _mix_color_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mix-color.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-color.mjs\");\n/* harmony import */ var _mix_complex_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./mix-complex.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-complex.mjs\");\n/* harmony import */ var _pipe_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n/* harmony import */ var _progress_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./progress.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs\");\n/* harmony import */ var _noop_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n\n\n\n\n\n\n\n\n\n\nconst mixNumber = (from, to) => (p) => (0,_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(from, to, p);\nfunction detectMixerFactory(v) {\n if (typeof v === \"number\") {\n return mixNumber;\n }\n else if (typeof v === \"string\") {\n return _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color.test(v) ? _mix_color_mjs__WEBPACK_IMPORTED_MODULE_2__.mixColor : _mix_complex_mjs__WEBPACK_IMPORTED_MODULE_3__.mixComplex;\n }\n else if (Array.isArray(v)) {\n return _mix_complex_mjs__WEBPACK_IMPORTED_MODULE_3__.mixArray;\n }\n else if (typeof v === \"object\") {\n return _mix_complex_mjs__WEBPACK_IMPORTED_MODULE_3__.mixObject;\n }\n return mixNumber;\n}\nfunction createMixers(output, ease, customMixer) {\n const mixers = [];\n const mixerFactory = customMixer || detectMixerFactory(output[0]);\n const numMixers = output.length - 1;\n for (let i = 0; i < numMixers; i++) {\n let mixer = mixerFactory(output[i], output[i + 1]);\n if (ease) {\n const easingFunction = Array.isArray(ease) ? ease[i] || _noop_mjs__WEBPACK_IMPORTED_MODULE_4__.noop : ease;\n mixer = (0,_pipe_mjs__WEBPACK_IMPORTED_MODULE_5__.pipe)(easingFunction, mixer);\n }\n mixers.push(mixer);\n }\n return mixers;\n}\n/**\n * Create a function that maps from a numerical input array to a generic output array.\n *\n * Accepts:\n * - Numbers\n * - Colors (hex, hsl, hsla, rgb, rgba)\n * - Complex (combinations of one or more numbers or strings)\n *\n * ```jsx\n * const mixColor = interpolate([0, 1], ['#fff', '#000'])\n *\n * mixColor(0.5) // 'rgba(128, 128, 128, 1)'\n * ```\n *\n * TODO Revist this approach once we've moved to data models for values,\n * probably not needed to pregenerate mixer functions.\n *\n * @public\n */\nfunction interpolate(input, output, { clamp: isClamp = true, ease, mixer } = {}) {\n const inputLength = input.length;\n (0,_errors_mjs__WEBPACK_IMPORTED_MODULE_6__.invariant)(inputLength === output.length, \"Both input and output ranges must be the same length\");\n /**\n * If we're only provided a single input, we can just make a function\n * that returns the output.\n */\n if (inputLength === 1)\n return () => output[0];\n // If input runs highest -> lowest, reverse both arrays\n if (input[0] > input[inputLength - 1]) {\n input = [...input].reverse();\n output = [...output].reverse();\n }\n const mixers = createMixers(output, ease, mixer);\n const numMixers = mixers.length;\n const interpolator = (v) => {\n let i = 0;\n if (numMixers > 1) {\n for (; i < input.length - 2; i++) {\n if (v < input[i + 1])\n break;\n }\n }\n const progressInRange = (0,_progress_mjs__WEBPACK_IMPORTED_MODULE_7__.progress)(input[i], input[i + 1], v);\n return mixers[i](progressInRange);\n };\n return isClamp\n ? (v) => interpolator((0,_clamp_mjs__WEBPACK_IMPORTED_MODULE_8__.clamp)(input[0], input[inputLength - 1], v))\n : interpolator;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaW50ZXJwb2xhdGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBeUM7QUFDYztBQUNuQjtBQUNKO0FBQ1c7QUFDeUI7QUFDbEM7QUFDUTtBQUNSOztBQUVsQyx1Q0FBdUMsNkNBQUc7QUFDMUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsK0RBQUssV0FBVyxvREFBUSxHQUFHLHdEQUFVO0FBQ3BEO0FBQ0E7QUFDQSxlQUFlLHNEQUFRO0FBQ3ZCO0FBQ0E7QUFDQSxlQUFlLHVEQUFTO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGVBQWU7QUFDbkM7QUFDQTtBQUNBLG9FQUFvRSwyQ0FBSTtBQUN4RSxvQkFBb0IsK0NBQUk7QUFDeEI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esc0NBQXNDLHFDQUFxQyxJQUFJO0FBQy9FO0FBQ0EsSUFBSSxzREFBUztBQUNiO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsbUJBQW1CLHNCQUFzQjtBQUN6QztBQUNBO0FBQ0E7QUFDQTtBQUNBLGdDQUFnQyx1REFBUTtBQUN4QztBQUNBO0FBQ0E7QUFDQSw4QkFBOEIsaURBQUs7QUFDbkM7QUFDQTs7QUFFdUIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9pbnRlcnBvbGF0ZS5tanM/Mjc1MiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbnZhcmlhbnQgfSBmcm9tICcuL2Vycm9ycy5tanMnO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICcuLi92YWx1ZS90eXBlcy9jb2xvci9pbmRleC5tanMnO1xuaW1wb3J0IHsgY2xhbXAgfSBmcm9tICcuL2NsYW1wLm1qcyc7XG5pbXBvcnQgeyBtaXggfSBmcm9tICcuL21peC5tanMnO1xuaW1wb3J0IHsgbWl4Q29sb3IgfSBmcm9tICcuL21peC1jb2xvci5tanMnO1xuaW1wb3J0IHsgbWl4Q29tcGxleCwgbWl4QXJyYXksIG1peE9iamVjdCB9IGZyb20gJy4vbWl4LWNvbXBsZXgubWpzJztcbmltcG9ydCB7IHBpcGUgfSBmcm9tICcuL3BpcGUubWpzJztcbmltcG9ydCB7IHByb2dyZXNzIH0gZnJvbSAnLi9wcm9ncmVzcy5tanMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJy4vbm9vcC5tanMnO1xuXG5jb25zdCBtaXhOdW1iZXIgPSAoZnJvbSwgdG8pID0+IChwKSA9PiBtaXgoZnJvbSwgdG8sIHApO1xuZnVuY3Rpb24gZGV0ZWN0TWl4ZXJGYWN0b3J5KHYpIHtcbiAgICBpZiAodHlwZW9mIHYgPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgcmV0dXJuIG1peE51bWJlcjtcbiAgICB9XG4gICAgZWxzZSBpZiAodHlwZW9mIHYgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgcmV0dXJuIGNvbG9yLnRlc3QodikgPyBtaXhDb2xvciA6IG1peENvbXBsZXg7XG4gICAgfVxuICAgIGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodikpIHtcbiAgICAgICAgcmV0dXJuIG1peEFycmF5O1xuICAgIH1cbiAgICBlbHNlIGlmICh0eXBlb2YgdiA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICByZXR1cm4gbWl4T2JqZWN0O1xuICAgIH1cbiAgICByZXR1cm4gbWl4TnVtYmVyO1xufVxuZnVuY3Rpb24gY3JlYXRlTWl4ZXJzKG91dHB1dCwgZWFzZSwgY3VzdG9tTWl4ZXIpIHtcbiAgICBjb25zdCBtaXhlcnMgPSBbXTtcbiAgICBjb25zdCBtaXhlckZhY3RvcnkgPSBjdXN0b21NaXhlciB8fCBkZXRlY3RNaXhlckZhY3Rvcnkob3V0cHV0WzBdKTtcbiAgICBjb25zdCBudW1NaXhlcnMgPSBvdXRwdXQubGVuZ3RoIC0gMTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bU1peGVyczsgaSsrKSB7XG4gICAgICAgIGxldCBtaXhlciA9IG1peGVyRmFjdG9yeShvdXRwdXRbaV0sIG91dHB1dFtpICsgMV0pO1xuICAgICAgICBpZiAoZWFzZSkge1xuICAgICAgICAgICAgY29uc3QgZWFzaW5nRnVuY3Rpb24gPSBBcnJheS5pc0FycmF5KGVhc2UpID8gZWFzZVtpXSB8fCBub29wIDogZWFzZTtcbiAgICAgICAgICAgIG1peGVyID0gcGlwZShlYXNpbmdGdW5jdGlvbiwgbWl4ZXIpO1xuICAgICAgICB9XG4gICAgICAgIG1peGVycy5wdXNoKG1peGVyKTtcbiAgICB9XG4gICAgcmV0dXJuIG1peGVycztcbn1cbi8qKlxuICogQ3JlYXRlIGEgZnVuY3Rpb24gdGhhdCBtYXBzIGZyb20gYSBudW1lcmljYWwgaW5wdXQgYXJyYXkgdG8gYSBnZW5lcmljIG91dHB1dCBhcnJheS5cbiAqXG4gKiBBY2NlcHRzOlxuICogICAtIE51bWJlcnNcbiAqICAgLSBDb2xvcnMgKGhleCwgaHNsLCBoc2xhLCByZ2IsIHJnYmEpXG4gKiAgIC0gQ29tcGxleCAoY29tYmluYXRpb25zIG9mIG9uZSBvciBtb3JlIG51bWJlcnMgb3Igc3RyaW5ncylcbiAqXG4gKiBgYGBqc3hcbiAqIGNvbnN0IG1peENvbG9yID0gaW50ZXJwb2xhdGUoWzAsIDFdLCBbJyNmZmYnLCAnIzAwMCddKVxuICpcbiAqIG1peENvbG9yKDAuNSkgLy8gJ3JnYmEoMTI4LCAxMjgsIDEyOCwgMSknXG4gKiBgYGBcbiAqXG4gKiBUT0RPIFJldmlzdCB0aGlzIGFwcHJvYWNoIG9uY2Ugd2UndmUgbW92ZWQgdG8gZGF0YSBtb2RlbHMgZm9yIHZhbHVlcyxcbiAqIHByb2JhYmx5IG5vdCBuZWVkZWQgdG8gcHJlZ2VuZXJhdGUgbWl4ZXIgZnVuY3Rpb25zLlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuZnVuY3Rpb24gaW50ZXJwb2xhdGUoaW5wdXQsIG91dHB1dCwgeyBjbGFtcDogaXNDbGFtcCA9IHRydWUsIGVhc2UsIG1peGVyIH0gPSB7fSkge1xuICAgIGNvbnN0IGlucHV0TGVuZ3RoID0gaW5wdXQubGVuZ3RoO1xuICAgIGludmFyaWFudChpbnB1dExlbmd0aCA9PT0gb3V0cHV0Lmxlbmd0aCwgXCJCb3RoIGlucHV0IGFuZCBvdXRwdXQgcmFuZ2VzIG11c3QgYmUgdGhlIHNhbWUgbGVuZ3RoXCIpO1xuICAgIC8qKlxuICAgICAqIElmIHdlJ3JlIG9ubHkgcHJvdmlkZWQgYSBzaW5nbGUgaW5wdXQsIHdlIGNhbiBqdXN0IG1ha2UgYSBmdW5jdGlvblxuICAgICAqIHRoYXQgcmV0dXJucyB0aGUgb3V0cHV0LlxuICAgICAqL1xuICAgIGlmIChpbnB1dExlbmd0aCA9PT0gMSlcbiAgICAgICAgcmV0dXJuICgpID0+IG91dHB1dFswXTtcbiAgICAvLyBJZiBpbnB1dCBydW5zIGhpZ2hlc3QgLT4gbG93ZXN0LCByZXZlcnNlIGJvdGggYXJyYXlzXG4gICAgaWYgKGlucHV0WzBdID4gaW5wdXRbaW5wdXRMZW5ndGggLSAxXSkge1xuICAgICAgICBpbnB1dCA9IFsuLi5pbnB1dF0ucmV2ZXJzZSgpO1xuICAgICAgICBvdXRwdXQgPSBbLi4ub3V0cHV0XS5yZXZlcnNlKCk7XG4gICAgfVxuICAgIGNvbnN0IG1peGVycyA9IGNyZWF0ZU1peGVycyhvdXRwdXQsIGVhc2UsIG1peGVyKTtcbiAgICBjb25zdCBudW1NaXhlcnMgPSBtaXhlcnMubGVuZ3RoO1xuICAgIGNvbnN0IGludGVycG9sYXRvciA9ICh2KSA9PiB7XG4gICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgaWYgKG51bU1peGVycyA+IDEpIHtcbiAgICAgICAgICAgIGZvciAoOyBpIDwgaW5wdXQubGVuZ3RoIC0gMjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHYgPCBpbnB1dFtpICsgMV0pXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHByb2dyZXNzSW5SYW5nZSA9IHByb2dyZXNzKGlucHV0W2ldLCBpbnB1dFtpICsgMV0sIHYpO1xuICAgICAgICByZXR1cm4gbWl4ZXJzW2ldKHByb2dyZXNzSW5SYW5nZSk7XG4gICAgfTtcbiAgICByZXR1cm4gaXNDbGFtcFxuICAgICAgICA/ICh2KSA9PiBpbnRlcnBvbGF0b3IoY2xhbXAoaW5wdXRbMF0sIGlucHV0W2lucHV0TGVuZ3RoIC0gMV0sIHYpKVxuICAgICAgICA6IGludGVycG9sYXRvcjtcbn1cblxuZXhwb3J0IHsgaW50ZXJwb2xhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/interpolate.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs":
|
||
/*!*****************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/is-browser.mjs ***!
|
||
\*****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isBrowser: function() { return /* binding */ isBrowser; }\n/* harmony export */ });\nconst isBrowser = typeof document !== \"undefined\";\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaXMtYnJvd3Nlci5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUVxQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL2lzLWJyb3dzZXIubWpzP2VjMjQiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaXNCcm93c2VyID0gdHlwZW9mIGRvY3VtZW50ICE9PSBcInVuZGVmaW5lZFwiO1xuXG5leHBvcnQgeyBpc0Jyb3dzZXIgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isNumericalString: function() { return /* binding */ isNumericalString; }\n/* harmony export */ });\n/**\n * Check if value is a numerical string, ie a string that is purely a number eg \"100\" or \"-100.1\"\n */\nconst isNumericalString = (v) => /^\\-?\\d*\\.?\\d+$/.test(v);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaXMtbnVtZXJpY2FsLXN0cmluZy5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBOztBQUU2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL2lzLW51bWVyaWNhbC1zdHJpbmcubWpzPzZlZWIiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDaGVjayBpZiB2YWx1ZSBpcyBhIG51bWVyaWNhbCBzdHJpbmcsIGllIGEgc3RyaW5nIHRoYXQgaXMgcHVyZWx5IGEgbnVtYmVyIGVnIFwiMTAwXCIgb3IgXCItMTAwLjFcIlxuICovXG5jb25zdCBpc051bWVyaWNhbFN0cmluZyA9ICh2KSA9PiAvXlxcLT9cXGQqXFwuP1xcZCskLy50ZXN0KHYpO1xuXG5leHBvcnQgeyBpc051bWVyaWNhbFN0cmluZyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isRefObject: function() { return /* binding */ isRefObject; }\n/* harmony export */ });\nfunction isRefObject(ref) {\n return (ref &&\n typeof ref === \"object\" &&\n Object.prototype.hasOwnProperty.call(ref, \"current\"));\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaXMtcmVmLW9iamVjdC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXVCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaXMtcmVmLW9iamVjdC5tanM/M2ViMSJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBpc1JlZk9iamVjdChyZWYpIHtcbiAgICByZXR1cm4gKHJlZiAmJlxuICAgICAgICB0eXBlb2YgcmVmID09PSBcIm9iamVjdFwiICYmXG4gICAgICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyZWYsIFwiY3VycmVudFwiKSk7XG59XG5cbmV4cG9ydCB7IGlzUmVmT2JqZWN0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-ref-object.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isZeroValueString: function() { return /* binding */ isZeroValueString; }\n/* harmony export */ });\n/**\n * Check if the value is a zero value string like \"0px\" or \"0%\"\n */\nconst isZeroValueString = (v) => /^0[^.\\s]+$/.test(v);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvaXMtemVyby12YWx1ZS1zdHJpbmcubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTs7QUFFNkIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9pcy16ZXJvLXZhbHVlLXN0cmluZy5tanM/ZDdlYiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIHplcm8gdmFsdWUgc3RyaW5nIGxpa2UgXCIwcHhcIiBvciBcIjAlXCJcbiAqL1xuY29uc3QgaXNaZXJvVmFsdWVTdHJpbmcgPSAodikgPT4gL14wW14uXFxzXSskLy50ZXN0KHYpO1xuXG5leHBvcnQgeyBpc1plcm9WYWx1ZVN0cmluZyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/memo.mjs":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/memo.mjs ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ memo: function() { return /* binding */ memo; }\n/* harmony export */ });\nfunction memo(callback) {\n let result;\n return () => {\n if (result === undefined)\n result = callback();\n return result;\n };\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWVtby5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRWdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWVtby5tanM/OGVjZCJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBtZW1vKGNhbGxiYWNrKSB7XG4gICAgbGV0IHJlc3VsdDtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBpZiAocmVzdWx0ID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICByZXN1bHQgPSBjYWxsYmFjaygpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG59XG5cbmV4cG9ydCB7IG1lbW8gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/memo.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-color.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/mix-color.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mixColor: function() { return /* binding */ mixColor; },\n/* harmony export */ mixLinearColor: function() { return /* binding */ mixLinearColor; }\n/* harmony export */ });\n/* harmony import */ var _mix_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _errors_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _hsla_to_rgba_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./hsla-to-rgba.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs\");\n/* harmony import */ var _value_types_color_hex_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../value/types/color/hex.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hex.mjs\");\n/* harmony import */ var _value_types_color_rgba_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../value/types/color/rgba.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs\");\n/* harmony import */ var _value_types_color_hsla_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../value/types/color/hsla.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hsla.mjs\");\n\n\n\n\n\n\n\n// Linear color space blending\n// Explained https://www.youtube.com/watch?v=LKnqECcg6Gw\n// Demonstrated http://codepen.io/osublake/pen/xGVVaN\nconst mixLinearColor = (from, to, v) => {\n const fromExpo = from * from;\n return Math.sqrt(Math.max(0, v * (to * to - fromExpo) + fromExpo));\n};\nconst colorTypes = [_value_types_color_hex_mjs__WEBPACK_IMPORTED_MODULE_0__.hex, _value_types_color_rgba_mjs__WEBPACK_IMPORTED_MODULE_1__.rgba, _value_types_color_hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla];\nconst getColorType = (v) => colorTypes.find((type) => type.test(v));\nfunction asRGBA(color) {\n const type = getColorType(color);\n (0,_errors_mjs__WEBPACK_IMPORTED_MODULE_3__.invariant)(Boolean(type), `'${color}' is not an animatable color. Use the equivalent color code instead.`);\n let model = type.parse(color);\n if (type === _value_types_color_hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla) {\n // TODO Remove this cast - needed since Framer Motion's stricter typing\n model = (0,_hsla_to_rgba_mjs__WEBPACK_IMPORTED_MODULE_4__.hslaToRgba)(model);\n }\n return model;\n}\nconst mixColor = (from, to) => {\n const fromRGBA = asRGBA(from);\n const toRGBA = asRGBA(to);\n const blended = { ...fromRGBA };\n return (v) => {\n blended.red = mixLinearColor(fromRGBA.red, toRGBA.red, v);\n blended.green = mixLinearColor(fromRGBA.green, toRGBA.green, v);\n blended.blue = mixLinearColor(fromRGBA.blue, toRGBA.blue, v);\n blended.alpha = (0,_mix_mjs__WEBPACK_IMPORTED_MODULE_5__.mix)(fromRGBA.alpha, toRGBA.alpha, v);\n return _value_types_color_rgba_mjs__WEBPACK_IMPORTED_MODULE_1__.rgba.transform(blended);\n };\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWl4LWNvbG9yLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFnQztBQUNTO0FBQ087QUFDRztBQUNFO0FBQ0E7O0FBRXJEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLDJEQUFHLEVBQUUsNkRBQUksRUFBRSw2REFBSTtBQUNuQztBQUNBO0FBQ0E7QUFDQSxJQUFJLHNEQUFTLG9CQUFvQixNQUFNO0FBQ3ZDO0FBQ0EsaUJBQWlCLDZEQUFJO0FBQ3JCO0FBQ0EsZ0JBQWdCLDZEQUFVO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHNCQUFzQjtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3Qiw2Q0FBRztBQUMzQixlQUFlLDZEQUFJO0FBQ25CO0FBQ0E7O0FBRW9DIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWl4LWNvbG9yLm1qcz8yZTA1Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1peCB9IGZyb20gJy4vbWl4Lm1qcyc7XG5pbXBvcnQgeyBpbnZhcmlhbnQgfSBmcm9tICcuL2Vycm9ycy5tanMnO1xuaW1wb3J0IHsgaHNsYVRvUmdiYSB9IGZyb20gJy4vaHNsYS10by1yZ2JhLm1qcyc7XG5pbXBvcnQgeyBoZXggfSBmcm9tICcuLi92YWx1ZS90eXBlcy9jb2xvci9oZXgubWpzJztcbmltcG9ydCB7IHJnYmEgfSBmcm9tICcuLi92YWx1ZS90eXBlcy9jb2xvci9yZ2JhLm1qcyc7XG5pbXBvcnQgeyBoc2xhIH0gZnJvbSAnLi4vdmFsdWUvdHlwZXMvY29sb3IvaHNsYS5tanMnO1xuXG4vLyBMaW5lYXIgY29sb3Igc3BhY2UgYmxlbmRpbmdcbi8vIEV4cGxhaW5lZCBodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PUxLbnFFQ2NnNkd3XG4vLyBEZW1vbnN0cmF0ZWQgaHR0cDovL2NvZGVwZW4uaW8vb3N1Ymxha2UvcGVuL3hHVlZhTlxuY29uc3QgbWl4TGluZWFyQ29sb3IgPSAoZnJvbSwgdG8sIHYpID0+IHtcbiAgICBjb25zdCBmcm9tRXhwbyA9IGZyb20gKiBmcm9tO1xuICAgIHJldHVybiBNYXRoLnNxcnQoTWF0aC5tYXgoMCwgdiAqICh0byAqIHRvIC0gZnJvbUV4cG8pICsgZnJvbUV4cG8pKTtcbn07XG5jb25zdCBjb2xvclR5cGVzID0gW2hleCwgcmdiYSwgaHNsYV07XG5jb25zdCBnZXRDb2xvclR5cGUgPSAodikgPT4gY29sb3JUeXBlcy5maW5kKCh0eXBlKSA9PiB0eXBlLnRlc3QodikpO1xuZnVuY3Rpb24gYXNSR0JBKGNvbG9yKSB7XG4gICAgY29uc3QgdHlwZSA9IGdldENvbG9yVHlwZShjb2xvcik7XG4gICAgaW52YXJpYW50KEJvb2xlYW4odHlwZSksIGAnJHtjb2xvcn0nIGlzIG5vdCBhbiBhbmltYXRhYmxlIGNvbG9yLiBVc2UgdGhlIGVxdWl2YWxlbnQgY29sb3IgY29kZSBpbnN0ZWFkLmApO1xuICAgIGxldCBtb2RlbCA9IHR5cGUucGFyc2UoY29sb3IpO1xuICAgIGlmICh0eXBlID09PSBoc2xhKSB7XG4gICAgICAgIC8vIFRPRE8gUmVtb3ZlIHRoaXMgY2FzdCAtIG5lZWRlZCBzaW5jZSBGcmFtZXIgTW90aW9uJ3Mgc3RyaWN0ZXIgdHlwaW5nXG4gICAgICAgIG1vZGVsID0gaHNsYVRvUmdiYShtb2RlbCk7XG4gICAgfVxuICAgIHJldHVybiBtb2RlbDtcbn1cbmNvbnN0IG1peENvbG9yID0gKGZyb20sIHRvKSA9PiB7XG4gICAgY29uc3QgZnJvbVJHQkEgPSBhc1JHQkEoZnJvbSk7XG4gICAgY29uc3QgdG9SR0JBID0gYXNSR0JBKHRvKTtcbiAgICBjb25zdCBibGVuZGVkID0geyAuLi5mcm9tUkdCQSB9O1xuICAgIHJldHVybiAodikgPT4ge1xuICAgICAgICBibGVuZGVkLnJlZCA9IG1peExpbmVhckNvbG9yKGZyb21SR0JBLnJlZCwgdG9SR0JBLnJlZCwgdik7XG4gICAgICAgIGJsZW5kZWQuZ3JlZW4gPSBtaXhMaW5lYXJDb2xvcihmcm9tUkdCQS5ncmVlbiwgdG9SR0JBLmdyZWVuLCB2KTtcbiAgICAgICAgYmxlbmRlZC5ibHVlID0gbWl4TGluZWFyQ29sb3IoZnJvbVJHQkEuYmx1ZSwgdG9SR0JBLmJsdWUsIHYpO1xuICAgICAgICBibGVuZGVkLmFscGhhID0gbWl4KGZyb21SR0JBLmFscGhhLCB0b1JHQkEuYWxwaGEsIHYpO1xuICAgICAgICByZXR1cm4gcmdiYS50cmFuc2Zvcm0oYmxlbmRlZCk7XG4gICAgfTtcbn07XG5cbmV4cG9ydCB7IG1peENvbG9yLCBtaXhMaW5lYXJDb2xvciB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-color.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-complex.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/mix-complex.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mixArray: function() { return /* binding */ mixArray; },\n/* harmony export */ mixComplex: function() { return /* binding */ mixComplex; },\n/* harmony export */ mixObject: function() { return /* binding */ mixObject; }\n/* harmony export */ });\n/* harmony import */ var _mix_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _mix_color_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mix-color.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-color.mjs\");\n/* harmony import */ var _pipe_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./pipe.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\");\n/* harmony import */ var _errors_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./errors.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/errors.mjs\");\n/* harmony import */ var _value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../value/types/color/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\");\n/* harmony import */ var _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../value/types/complex/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n\n\n\n\n\n\n\nconst mixImmediate = (origin, target) => (p) => `${p > 0 ? target : origin}`;\nfunction getMixer(origin, target) {\n if (typeof origin === \"number\") {\n return (v) => (0,_mix_mjs__WEBPACK_IMPORTED_MODULE_0__.mix)(origin, target, v);\n }\n else if (_value_types_color_index_mjs__WEBPACK_IMPORTED_MODULE_1__.color.test(origin)) {\n return (0,_mix_color_mjs__WEBPACK_IMPORTED_MODULE_2__.mixColor)(origin, target);\n }\n else {\n return origin.startsWith(\"var(\")\n ? mixImmediate(origin, target)\n : mixComplex(origin, target);\n }\n}\nconst mixArray = (from, to) => {\n const output = [...from];\n const numValues = output.length;\n const blendValue = from.map((fromThis, i) => getMixer(fromThis, to[i]));\n return (v) => {\n for (let i = 0; i < numValues; i++) {\n output[i] = blendValue[i](v);\n }\n return output;\n };\n};\nconst mixObject = (origin, target) => {\n const output = { ...origin, ...target };\n const blendValue = {};\n for (const key in output) {\n if (origin[key] !== undefined && target[key] !== undefined) {\n blendValue[key] = getMixer(origin[key], target[key]);\n }\n }\n return (v) => {\n for (const key in blendValue) {\n output[key] = blendValue[key](v);\n }\n return output;\n };\n};\nconst mixComplex = (origin, target) => {\n const template = _value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_3__.complex.createTransformer(target);\n const originStats = (0,_value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_3__.analyseComplexValue)(origin);\n const targetStats = (0,_value_types_complex_index_mjs__WEBPACK_IMPORTED_MODULE_3__.analyseComplexValue)(target);\n const canInterpolate = originStats.numVars === targetStats.numVars &&\n originStats.numColors === targetStats.numColors &&\n originStats.numNumbers >= targetStats.numNumbers;\n if (canInterpolate) {\n return (0,_pipe_mjs__WEBPACK_IMPORTED_MODULE_4__.pipe)(mixArray(originStats.values, targetStats.values), template);\n }\n else {\n (0,_errors_mjs__WEBPACK_IMPORTED_MODULE_5__.warning)(true, `Complex values '${origin}' and '${target}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`);\n return mixImmediate(origin, target);\n }\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWl4LWNvbXBsZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFnQztBQUNXO0FBQ1Q7QUFDSztBQUNnQjtBQUN5Qjs7QUFFaEYsbURBQW1ELHdCQUF3QjtBQUMzRTtBQUNBO0FBQ0Esc0JBQXNCLDZDQUFHO0FBQ3pCO0FBQ0EsYUFBYSwrREFBSztBQUNsQixlQUFlLHdEQUFRO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHdCQUF3QixlQUFlO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQjtBQUNyQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLG1FQUFPO0FBQzVCLHdCQUF3QixtRkFBbUI7QUFDM0Msd0JBQXdCLG1GQUFtQjtBQUMzQztBQUNBO0FBQ0E7QUFDQTtBQUNBLGVBQWUsK0NBQUk7QUFDbkI7QUFDQTtBQUNBLFFBQVEsb0RBQU8sMEJBQTBCLE9BQU8sU0FBUyxPQUFPO0FBQ2hFO0FBQ0E7QUFDQTs7QUFFMkMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9taXgtY29tcGxleC5tanM/N2MwZCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaXggfSBmcm9tICcuL21peC5tanMnO1xuaW1wb3J0IHsgbWl4Q29sb3IgfSBmcm9tICcuL21peC1jb2xvci5tanMnO1xuaW1wb3J0IHsgcGlwZSB9IGZyb20gJy4vcGlwZS5tanMnO1xuaW1wb3J0IHsgd2FybmluZyB9IGZyb20gJy4vZXJyb3JzLm1qcyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJy4uL3ZhbHVlL3R5cGVzL2NvbG9yL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBjb21wbGV4LCBhbmFseXNlQ29tcGxleFZhbHVlIH0gZnJvbSAnLi4vdmFsdWUvdHlwZXMvY29tcGxleC9pbmRleC5tanMnO1xuXG5jb25zdCBtaXhJbW1lZGlhdGUgPSAob3JpZ2luLCB0YXJnZXQpID0+IChwKSA9PiBgJHtwID4gMCA/IHRhcmdldCA6IG9yaWdpbn1gO1xuZnVuY3Rpb24gZ2V0TWl4ZXIob3JpZ2luLCB0YXJnZXQpIHtcbiAgICBpZiAodHlwZW9mIG9yaWdpbiA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICByZXR1cm4gKHYpID0+IG1peChvcmlnaW4sIHRhcmdldCwgdik7XG4gICAgfVxuICAgIGVsc2UgaWYgKGNvbG9yLnRlc3Qob3JpZ2luKSkge1xuICAgICAgICByZXR1cm4gbWl4Q29sb3Iob3JpZ2luLCB0YXJnZXQpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbi5zdGFydHNXaXRoKFwidmFyKFwiKVxuICAgICAgICAgICAgPyBtaXhJbW1lZGlhdGUob3JpZ2luLCB0YXJnZXQpXG4gICAgICAgICAgICA6IG1peENvbXBsZXgob3JpZ2luLCB0YXJnZXQpO1xuICAgIH1cbn1cbmNvbnN0IG1peEFycmF5ID0gKGZyb20sIHRvKSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0ID0gWy4uLmZyb21dO1xuICAgIGNvbnN0IG51bVZhbHVlcyA9IG91dHB1dC5sZW5ndGg7XG4gICAgY29uc3QgYmxlbmRWYWx1ZSA9IGZyb20ubWFwKChmcm9tVGhpcywgaSkgPT4gZ2V0TWl4ZXIoZnJvbVRoaXMsIHRvW2ldKSk7XG4gICAgcmV0dXJuICh2KSA9PiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtVmFsdWVzOyBpKyspIHtcbiAgICAgICAgICAgIG91dHB1dFtpXSA9IGJsZW5kVmFsdWVbaV0odik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG91dHB1dDtcbiAgICB9O1xufTtcbmNvbnN0IG1peE9iamVjdCA9IChvcmlnaW4sIHRhcmdldCkgPT4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHsgLi4ub3JpZ2luLCAuLi50YXJnZXQgfTtcbiAgICBjb25zdCBibGVuZFZhbHVlID0ge307XG4gICAgZm9yIChjb25zdCBrZXkgaW4gb3V0cHV0KSB7XG4gICAgICAgIGlmIChvcmlnaW5ba2V5XSAhPT0gdW5kZWZpbmVkICYmIHRhcmdldFtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGJsZW5kVmFsdWVba2V5XSA9IGdldE1peGVyKG9yaWdpbltrZXldLCB0YXJnZXRba2V5XSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuICh2KSA9PiB7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIGJsZW5kVmFsdWUpIHtcbiAgICAgICAgICAgIG91dHB1dFtrZXldID0gYmxlbmRWYWx1ZVtrZXldKHYpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvdXRwdXQ7XG4gICAgfTtcbn07XG5jb25zdCBtaXhDb21wbGV4ID0gKG9yaWdpbiwgdGFyZ2V0KSA9PiB7XG4gICAgY29uc3QgdGVtcGxhdGUgPSBjb21wbGV4LmNyZWF0ZVRyYW5zZm9ybWVyKHRhcmdldCk7XG4gICAgY29uc3Qgb3JpZ2luU3RhdHMgPSBhbmFseXNlQ29tcGxleFZhbHVlKG9yaWdpbik7XG4gICAgY29uc3QgdGFyZ2V0U3RhdHMgPSBhbmFseXNlQ29tcGxleFZhbHVlKHRhcmdldCk7XG4gICAgY29uc3QgY2FuSW50ZXJwb2xhdGUgPSBvcmlnaW5TdGF0cy5udW1WYXJzID09PSB0YXJnZXRTdGF0cy5udW1WYXJzICYmXG4gICAgICAgIG9yaWdpblN0YXRzLm51bUNvbG9ycyA9PT0gdGFyZ2V0U3RhdHMubnVtQ29sb3JzICYmXG4gICAgICAgIG9yaWdpblN0YXRzLm51bU51bWJlcnMgPj0gdGFyZ2V0U3RhdHMubnVtTnVtYmVycztcbiAgICBpZiAoY2FuSW50ZXJwb2xhdGUpIHtcbiAgICAgICAgcmV0dXJuIHBpcGUobWl4QXJyYXkob3JpZ2luU3RhdHMudmFsdWVzLCB0YXJnZXRTdGF0cy52YWx1ZXMpLCB0ZW1wbGF0ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICB3YXJuaW5nKHRydWUsIGBDb21wbGV4IHZhbHVlcyAnJHtvcmlnaW59JyBhbmQgJyR7dGFyZ2V0fScgdG9vIGRpZmZlcmVudCB0byBtaXguIEVuc3VyZSBhbGwgY29sb3JzIGFyZSBvZiB0aGUgc2FtZSB0eXBlLCBhbmQgdGhhdCBlYWNoIGNvbnRhaW5zIHRoZSBzYW1lIHF1YW50aXR5IG9mIG51bWJlciBhbmQgY29sb3IgdmFsdWVzLiBGYWxsaW5nIGJhY2sgdG8gaW5zdGFudCB0cmFuc2l0aW9uLmApO1xuICAgICAgICByZXR1cm4gbWl4SW1tZWRpYXRlKG9yaWdpbiwgdGFyZ2V0KTtcbiAgICB9XG59O1xuXG5leHBvcnQgeyBtaXhBcnJheSwgbWl4Q29tcGxleCwgbWl4T2JqZWN0IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix-complex.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs":
|
||
/*!**********************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/mix.mjs ***!
|
||
\**********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ mix: function() { return /* binding */ mix; }\n/* harmony export */ });\n/*\n Value in range from progress\n\n Given a lower limit and an upper limit, we return the value within\n that range as expressed by progress (usually a number from 0 to 1)\n\n So progress = 0.5 would change\n\n from -------- to\n\n to\n\n from ---- to\n\n E.g. from = 10, to = 20, progress = 0.5 => 15\n\n @param [number]: Lower limit of range\n @param [number]: Upper limit of range\n @param [number]: The progress between lower and upper limits expressed 0-1\n @return [number]: Value as calculated from progress within range (not limited within range)\n*/\nconst mix = (from, to, progress) => -progress * from + progress * to + from;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbWl4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFZSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL21peC5tanM/MWFkYSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICBWYWx1ZSBpbiByYW5nZSBmcm9tIHByb2dyZXNzXG5cbiAgR2l2ZW4gYSBsb3dlciBsaW1pdCBhbmQgYW4gdXBwZXIgbGltaXQsIHdlIHJldHVybiB0aGUgdmFsdWUgd2l0aGluXG4gIHRoYXQgcmFuZ2UgYXMgZXhwcmVzc2VkIGJ5IHByb2dyZXNzICh1c3VhbGx5IGEgbnVtYmVyIGZyb20gMCB0byAxKVxuXG4gIFNvIHByb2dyZXNzID0gMC41IHdvdWxkIGNoYW5nZVxuXG4gIGZyb20gLS0tLS0tLS0gdG9cblxuICB0b1xuXG4gIGZyb20gLS0tLSB0b1xuXG4gIEUuZy4gZnJvbSA9IDEwLCB0byA9IDIwLCBwcm9ncmVzcyA9IDAuNSA9PiAxNVxuXG4gIEBwYXJhbSBbbnVtYmVyXTogTG93ZXIgbGltaXQgb2YgcmFuZ2VcbiAgQHBhcmFtIFtudW1iZXJdOiBVcHBlciBsaW1pdCBvZiByYW5nZVxuICBAcGFyYW0gW251bWJlcl06IFRoZSBwcm9ncmVzcyBiZXR3ZWVuIGxvd2VyIGFuZCB1cHBlciBsaW1pdHMgZXhwcmVzc2VkIDAtMVxuICBAcmV0dXJuIFtudW1iZXJdOiBWYWx1ZSBhcyBjYWxjdWxhdGVkIGZyb20gcHJvZ3Jlc3Mgd2l0aGluIHJhbmdlIChub3QgbGltaXRlZCB3aXRoaW4gcmFuZ2UpXG4qL1xuY29uc3QgbWl4ID0gKGZyb20sIHRvLCBwcm9ncmVzcykgPT4gLXByb2dyZXNzICogZnJvbSArIHByb2dyZXNzICogdG8gKyBmcm9tO1xuXG5leHBvcnQgeyBtaXggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/noop.mjs ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ noop: function() { return /* binding */ noop; }\n/* harmony export */ });\nconst noop = (any) => any;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvbm9vcC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBOztBQUVnQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL25vb3AubWpzPzM3N2IiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3Qgbm9vcCA9IChhbnkpID0+IGFueTtcblxuZXhwb3J0IHsgbm9vcCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/default.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/offsets/default.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ defaultOffset: function() { return /* binding */ defaultOffset; }\n/* harmony export */ });\n/* harmony import */ var _fill_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./fill.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/fill.mjs\");\n\n\nfunction defaultOffset(arr) {\n const offset = [0];\n (0,_fill_mjs__WEBPACK_IMPORTED_MODULE_0__.fillOffset)(offset, arr.length - 1);\n return offset;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvb2Zmc2V0cy9kZWZhdWx0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUF3Qzs7QUFFeEM7QUFDQTtBQUNBLElBQUkscURBQVU7QUFDZDtBQUNBOztBQUV5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL29mZnNldHMvZGVmYXVsdC5tanM/M2MyNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmaWxsT2Zmc2V0IH0gZnJvbSAnLi9maWxsLm1qcyc7XG5cbmZ1bmN0aW9uIGRlZmF1bHRPZmZzZXQoYXJyKSB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gWzBdO1xuICAgIGZpbGxPZmZzZXQob2Zmc2V0LCBhcnIubGVuZ3RoIC0gMSk7XG4gICAgcmV0dXJuIG9mZnNldDtcbn1cblxuZXhwb3J0IHsgZGVmYXVsdE9mZnNldCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/default.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/fill.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/offsets/fill.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ fillOffset: function() { return /* binding */ fillOffset; }\n/* harmony export */ });\n/* harmony import */ var _mix_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../mix.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/mix.mjs\");\n/* harmony import */ var _progress_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../progress.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs\");\n\n\n\nfunction fillOffset(offset, remaining) {\n const min = offset[offset.length - 1];\n for (let i = 1; i <= remaining; i++) {\n const offsetProgress = (0,_progress_mjs__WEBPACK_IMPORTED_MODULE_0__.progress)(0, remaining, i);\n offset.push((0,_mix_mjs__WEBPACK_IMPORTED_MODULE_1__.mix)(min, 1, offsetProgress));\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvb2Zmc2V0cy9maWxsLm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBaUM7QUFDVTs7QUFFM0M7QUFDQTtBQUNBLG9CQUFvQixnQkFBZ0I7QUFDcEMsK0JBQStCLHVEQUFRO0FBQ3ZDLG9CQUFvQiw2Q0FBRztBQUN2QjtBQUNBOztBQUVzQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL29mZnNldHMvZmlsbC5tanM/M2EzNSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtaXggfSBmcm9tICcuLi9taXgubWpzJztcbmltcG9ydCB7IHByb2dyZXNzIH0gZnJvbSAnLi4vcHJvZ3Jlc3MubWpzJztcblxuZnVuY3Rpb24gZmlsbE9mZnNldChvZmZzZXQsIHJlbWFpbmluZykge1xuICAgIGNvbnN0IG1pbiA9IG9mZnNldFtvZmZzZXQubGVuZ3RoIC0gMV07XG4gICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gcmVtYWluaW5nOyBpKyspIHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0UHJvZ3Jlc3MgPSBwcm9ncmVzcygwLCByZW1haW5pbmcsIGkpO1xuICAgICAgICBvZmZzZXQucHVzaChtaXgobWluLCAxLCBvZmZzZXRQcm9ncmVzcykpO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgZmlsbE9mZnNldCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/fill.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/time.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/offsets/time.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ convertOffsetToTimes: function() { return /* binding */ convertOffsetToTimes; }\n/* harmony export */ });\nfunction convertOffsetToTimes(offset, duration) {\n return offset.map((o) => o * duration);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvb2Zmc2V0cy90aW1lLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBOztBQUVnQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL29mZnNldHMvdGltZS5tanM/YTQ2YiJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBjb252ZXJ0T2Zmc2V0VG9UaW1lcyhvZmZzZXQsIGR1cmF0aW9uKSB7XG4gICAgcmV0dXJuIG9mZnNldC5tYXAoKG8pID0+IG8gKiBkdXJhdGlvbik7XG59XG5cbmV4cG9ydCB7IGNvbnZlcnRPZmZzZXRUb1RpbWVzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/offsets/time.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs":
|
||
/*!***********************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/pipe.mjs ***!
|
||
\***********************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ pipe: function() { return /* binding */ pipe; }\n/* harmony export */ });\n/**\n * Pipe\n * Compose other transformers to run linearily\n * pipe(min(20), max(40))\n * @param {...functions} transformers\n * @return {function}\n */\nconst combineFunctions = (a, b) => (v) => b(a(v));\nconst pipe = (...transformers) => transformers.reduce(combineFunctions);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcGlwZS5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxjQUFjO0FBQzFCLFlBQVk7QUFDWjtBQUNBO0FBQ0E7O0FBRWdCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcGlwZS5tanM/N2UzZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFBpcGVcbiAqIENvbXBvc2Ugb3RoZXIgdHJhbnNmb3JtZXJzIHRvIHJ1biBsaW5lYXJpbHlcbiAqIHBpcGUobWluKDIwKSwgbWF4KDQwKSlcbiAqIEBwYXJhbSAgey4uLmZ1bmN0aW9uc30gdHJhbnNmb3JtZXJzXG4gKiBAcmV0dXJuIHtmdW5jdGlvbn1cbiAqL1xuY29uc3QgY29tYmluZUZ1bmN0aW9ucyA9IChhLCBiKSA9PiAodikgPT4gYihhKHYpKTtcbmNvbnN0IHBpcGUgPSAoLi4udHJhbnNmb3JtZXJzKSA9PiB0cmFuc2Zvcm1lcnMucmVkdWNlKGNvbWJpbmVGdW5jdGlvbnMpO1xuXG5leHBvcnQgeyBwaXBlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/pipe.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs":
|
||
/*!***************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/progress.mjs ***!
|
||
\***************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ progress: function() { return /* binding */ progress; }\n/* harmony export */ });\n/*\n Progress within given range\n\n Given a lower limit and an upper limit, we return the progress\n (expressed as a number 0-1) represented by the given value, and\n limit that progress to within 0-1.\n\n @param [number]: Lower limit\n @param [number]: Upper limit\n @param [number]: Value to find progress within given range\n @return [number]: Progress of value within range as expressed 0-1\n*/\nconst progress = (from, to, value) => {\n const toFromDifference = to - from;\n return toFromDifference === 0 ? 1 : (value - from) / toFromDifference;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcHJvZ3Jlc3MubWpzIiwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRW9CIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcHJvZ3Jlc3MubWpzP2NlYmQiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgUHJvZ3Jlc3Mgd2l0aGluIGdpdmVuIHJhbmdlXG5cbiAgR2l2ZW4gYSBsb3dlciBsaW1pdCBhbmQgYW4gdXBwZXIgbGltaXQsIHdlIHJldHVybiB0aGUgcHJvZ3Jlc3NcbiAgKGV4cHJlc3NlZCBhcyBhIG51bWJlciAwLTEpIHJlcHJlc2VudGVkIGJ5IHRoZSBnaXZlbiB2YWx1ZSwgYW5kXG4gIGxpbWl0IHRoYXQgcHJvZ3Jlc3MgdG8gd2l0aGluIDAtMS5cblxuICBAcGFyYW0gW251bWJlcl06IExvd2VyIGxpbWl0XG4gIEBwYXJhbSBbbnVtYmVyXTogVXBwZXIgbGltaXRcbiAgQHBhcmFtIFtudW1iZXJdOiBWYWx1ZSB0byBmaW5kIHByb2dyZXNzIHdpdGhpbiBnaXZlbiByYW5nZVxuICBAcmV0dXJuIFtudW1iZXJdOiBQcm9ncmVzcyBvZiB2YWx1ZSB3aXRoaW4gcmFuZ2UgYXMgZXhwcmVzc2VkIDAtMVxuKi9cbmNvbnN0IHByb2dyZXNzID0gKGZyb20sIHRvLCB2YWx1ZSkgPT4ge1xuICAgIGNvbnN0IHRvRnJvbURpZmZlcmVuY2UgPSB0byAtIGZyb207XG4gICAgcmV0dXJuIHRvRnJvbURpZmZlcmVuY2UgPT09IDAgPyAxIDogKHZhbHVlIC0gZnJvbSkgLyB0b0Zyb21EaWZmZXJlbmNlO1xufTtcblxuZXhwb3J0IHsgcHJvZ3Jlc3MgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/progress.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ initPrefersReducedMotion: function() { return /* binding */ initPrefersReducedMotion; }\n/* harmony export */ });\n/* harmony import */ var _is_browser_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../is-browser.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs\");\n/* harmony import */ var _state_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./state.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs\");\n\n\n\nfunction initPrefersReducedMotion() {\n _state_mjs__WEBPACK_IMPORTED_MODULE_0__.hasReducedMotionListener.current = true;\n if (!_is_browser_mjs__WEBPACK_IMPORTED_MODULE_1__.isBrowser)\n return;\n if (window.matchMedia) {\n const motionMediaQuery = window.matchMedia(\"(prefers-reduced-motion)\");\n const setReducedMotionPreferences = () => (_state_mjs__WEBPACK_IMPORTED_MODULE_0__.prefersReducedMotion.current = motionMediaQuery.matches);\n motionMediaQuery.addListener(setReducedMotionPreferences);\n setReducedMotionPreferences();\n }\n else {\n _state_mjs__WEBPACK_IMPORTED_MODULE_0__.prefersReducedMotion.current = false;\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcmVkdWNlZC1tb3Rpb24vaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUE4QztBQUMrQjs7QUFFN0U7QUFDQSxJQUFJLGdFQUF3QjtBQUM1QixTQUFTLHNEQUFTO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBLG1EQUFtRCw0REFBb0I7QUFDdkU7QUFDQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLDREQUFvQjtBQUM1QjtBQUNBOztBQUVvQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3JlZHVjZWQtbW90aW9uL2luZGV4Lm1qcz81MDA0Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJy4uL2lzLWJyb3dzZXIubWpzJztcbmltcG9ydCB7IGhhc1JlZHVjZWRNb3Rpb25MaXN0ZW5lciwgcHJlZmVyc1JlZHVjZWRNb3Rpb24gfSBmcm9tICcuL3N0YXRlLm1qcyc7XG5cbmZ1bmN0aW9uIGluaXRQcmVmZXJzUmVkdWNlZE1vdGlvbigpIHtcbiAgICBoYXNSZWR1Y2VkTW90aW9uTGlzdGVuZXIuY3VycmVudCA9IHRydWU7XG4gICAgaWYgKCFpc0Jyb3dzZXIpXG4gICAgICAgIHJldHVybjtcbiAgICBpZiAod2luZG93Lm1hdGNoTWVkaWEpIHtcbiAgICAgICAgY29uc3QgbW90aW9uTWVkaWFRdWVyeSA9IHdpbmRvdy5tYXRjaE1lZGlhKFwiKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pXCIpO1xuICAgICAgICBjb25zdCBzZXRSZWR1Y2VkTW90aW9uUHJlZmVyZW5jZXMgPSAoKSA9PiAocHJlZmVyc1JlZHVjZWRNb3Rpb24uY3VycmVudCA9IG1vdGlvbk1lZGlhUXVlcnkubWF0Y2hlcyk7XG4gICAgICAgIG1vdGlvbk1lZGlhUXVlcnkuYWRkTGlzdGVuZXIoc2V0UmVkdWNlZE1vdGlvblByZWZlcmVuY2VzKTtcbiAgICAgICAgc2V0UmVkdWNlZE1vdGlvblByZWZlcmVuY2VzKCk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBwcmVmZXJzUmVkdWNlZE1vdGlvbi5jdXJyZW50ID0gZmFsc2U7XG4gICAgfVxufVxuXG5leHBvcnQgeyBpbml0UHJlZmVyc1JlZHVjZWRNb3Rpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hasReducedMotionListener: function() { return /* binding */ hasReducedMotionListener; },\n/* harmony export */ prefersReducedMotion: function() { return /* binding */ prefersReducedMotion; }\n/* harmony export */ });\n// Does this device prefer reduced motion? Returns `null` server-side.\nconst prefersReducedMotion = { current: null };\nconst hasReducedMotionListener = { current: false };\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcmVkdWNlZC1tb3Rpb24vc3RhdGUubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQSwrQkFBK0I7QUFDL0IsbUNBQW1DOztBQUV1QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3JlZHVjZWQtbW90aW9uL3N0YXRlLm1qcz9jZmJmIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIERvZXMgdGhpcyBkZXZpY2UgcHJlZmVyIHJlZHVjZWQgbW90aW9uPyBSZXR1cm5zIGBudWxsYCBzZXJ2ZXItc2lkZS5cbmNvbnN0IHByZWZlcnNSZWR1Y2VkTW90aW9uID0geyBjdXJyZW50OiBudWxsIH07XG5jb25zdCBoYXNSZWR1Y2VkTW90aW9uTGlzdGVuZXIgPSB7IGN1cnJlbnQ6IGZhbHNlIH07XG5cbmV4cG9ydCB7IGhhc1JlZHVjZWRNb3Rpb25MaXN0ZW5lciwgcHJlZmVyc1JlZHVjZWRNb3Rpb24gfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs":
|
||
/*!********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/resolve-value.mjs ***!
|
||
\********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isCustomValue: function() { return /* binding */ isCustomValue; },\n/* harmony export */ resolveFinalValueInKeyframes: function() { return /* binding */ resolveFinalValueInKeyframes; }\n/* harmony export */ });\n/* harmony import */ var _animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../animation/utils/is-keyframes-target.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs\");\n\n\nconst isCustomValue = (v) => {\n return Boolean(v && typeof v === \"object\" && v.mix && v.toValue);\n};\nconst resolveFinalValueInKeyframes = (v) => {\n // TODO maybe throw if v.length - 1 is placeholder token?\n return (0,_animation_utils_is_keyframes_target_mjs__WEBPACK_IMPORTED_MODULE_0__.isKeyframesTarget)(v) ? v[v.length - 1] || 0 : v;\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcmVzb2x2ZS12YWx1ZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQStFOztBQUUvRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVywyRkFBaUI7QUFDNUI7O0FBRXVEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvcmVzb2x2ZS12YWx1ZS5tanM/YzNlYiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0tleWZyYW1lc1RhcmdldCB9IGZyb20gJy4uL2FuaW1hdGlvbi91dGlscy9pcy1rZXlmcmFtZXMtdGFyZ2V0Lm1qcyc7XG5cbmNvbnN0IGlzQ3VzdG9tVmFsdWUgPSAodikgPT4ge1xuICAgIHJldHVybiBCb29sZWFuKHYgJiYgdHlwZW9mIHYgPT09IFwib2JqZWN0XCIgJiYgdi5taXggJiYgdi50b1ZhbHVlKTtcbn07XG5jb25zdCByZXNvbHZlRmluYWxWYWx1ZUluS2V5ZnJhbWVzID0gKHYpID0+IHtcbiAgICAvLyBUT0RPIG1heWJlIHRocm93IGlmIHYubGVuZ3RoIC0gMSBpcyBwbGFjZWhvbGRlciB0b2tlbj9cbiAgICByZXR1cm4gaXNLZXlmcmFtZXNUYXJnZXQodikgPyB2W3YubGVuZ3RoIC0gMV0gfHwgMCA6IHY7XG59O1xuXG5leHBvcnQgeyBpc0N1c3RvbVZhbHVlLCByZXNvbHZlRmluYWxWYWx1ZUluS2V5ZnJhbWVzIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/shallow-compare.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/shallow-compare.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ shallowCompare: function() { return /* binding */ shallowCompare; }\n/* harmony export */ });\nfunction shallowCompare(next, prev) {\n if (!Array.isArray(prev))\n return false;\n const prevLength = prev.length;\n if (prevLength !== next.length)\n return false;\n for (let i = 0; i < prevLength; i++) {\n if (prev[i] !== next[i])\n return false;\n }\n return true;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvc2hhbGxvdy1jb21wYXJlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLGdCQUFnQjtBQUNwQztBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUUwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3NoYWxsb3ctY29tcGFyZS5tanM/ZmE4NiJdLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBzaGFsbG93Q29tcGFyZShuZXh0LCBwcmV2KSB7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHByZXYpKVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgcHJldkxlbmd0aCA9IHByZXYubGVuZ3RoO1xuICAgIGlmIChwcmV2TGVuZ3RoICE9PSBuZXh0Lmxlbmd0aClcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJldkxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChwcmV2W2ldICE9PSBuZXh0W2ldKVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbn1cblxuZXhwb3J0IHsgc2hhbGxvd0NvbXBhcmUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/shallow-compare.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ SubscriptionManager: function() { return /* binding */ SubscriptionManager; }\n/* harmony export */ });\n/* harmony import */ var _array_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./array.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/array.mjs\");\n\n\nclass SubscriptionManager {\n constructor() {\n this.subscriptions = [];\n }\n add(handler) {\n (0,_array_mjs__WEBPACK_IMPORTED_MODULE_0__.addUniqueItem)(this.subscriptions, handler);\n return () => (0,_array_mjs__WEBPACK_IMPORTED_MODULE_0__.removeItem)(this.subscriptions, handler);\n }\n notify(a, b, c) {\n const numSubscriptions = this.subscriptions.length;\n if (!numSubscriptions)\n return;\n if (numSubscriptions === 1) {\n /**\n * If there's only a single handler we can just call it without invoking a loop.\n */\n this.subscriptions[0](a, b, c);\n }\n else {\n for (let i = 0; i < numSubscriptions; i++) {\n /**\n * Check whether the handler exists before firing as it's possible\n * the subscriptions were modified during this loop running.\n */\n const handler = this.subscriptions[i];\n handler && handler(a, b, c);\n }\n }\n }\n getSize() {\n return this.subscriptions.length;\n }\n clear() {\n this.subscriptions.length = 0;\n }\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvc3Vic2NyaXB0aW9uLW1hbmFnZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7O0FBQXdEOztBQUV4RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBUSx5REFBYTtBQUNyQixxQkFBcUIsc0RBQVU7QUFDL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNEJBQTRCLHNCQUFzQjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFK0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy9zdWJzY3JpcHRpb24tbWFuYWdlci5tanM/MDYzNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZGRVbmlxdWVJdGVtLCByZW1vdmVJdGVtIH0gZnJvbSAnLi9hcnJheS5tanMnO1xuXG5jbGFzcyBTdWJzY3JpcHRpb25NYW5hZ2VyIHtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW107XG4gICAgfVxuICAgIGFkZChoYW5kbGVyKSB7XG4gICAgICAgIGFkZFVuaXF1ZUl0ZW0odGhpcy5zdWJzY3JpcHRpb25zLCBoYW5kbGVyKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHJlbW92ZUl0ZW0odGhpcy5zdWJzY3JpcHRpb25zLCBoYW5kbGVyKTtcbiAgICB9XG4gICAgbm90aWZ5KGEsIGIsIGMpIHtcbiAgICAgICAgY29uc3QgbnVtU3Vic2NyaXB0aW9ucyA9IHRoaXMuc3Vic2NyaXB0aW9ucy5sZW5ndGg7XG4gICAgICAgIGlmICghbnVtU3Vic2NyaXB0aW9ucylcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKG51bVN1YnNjcmlwdGlvbnMgPT09IDEpIHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogSWYgdGhlcmUncyBvbmx5IGEgc2luZ2xlIGhhbmRsZXIgd2UgY2FuIGp1c3QgY2FsbCBpdCB3aXRob3V0IGludm9raW5nIGEgbG9vcC5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zWzBdKGEsIGIsIGMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1TdWJzY3JpcHRpb25zOyBpKyspIHtcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBDaGVjayB3aGV0aGVyIHRoZSBoYW5kbGVyIGV4aXN0cyBiZWZvcmUgZmlyaW5nIGFzIGl0J3MgcG9zc2libGVcbiAgICAgICAgICAgICAgICAgKiB0aGUgc3Vic2NyaXB0aW9ucyB3ZXJlIG1vZGlmaWVkIGR1cmluZyB0aGlzIGxvb3AgcnVubmluZy5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBjb25zdCBoYW5kbGVyID0gdGhpcy5zdWJzY3JpcHRpb25zW2ldO1xuICAgICAgICAgICAgICAgIGhhbmRsZXIgJiYgaGFuZGxlcihhLCBiLCBjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBnZXRTaXplKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdWJzY3JpcHRpb25zLmxlbmd0aDtcbiAgICB9XG4gICAgY2xlYXIoKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5sZW5ndGggPSAwO1xuICAgIH1cbn1cblxuZXhwb3J0IHsgU3Vic2NyaXB0aW9uTWFuYWdlciB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/time-conversion.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ millisecondsToSeconds: function() { return /* binding */ millisecondsToSeconds; },\n/* harmony export */ secondsToMilliseconds: function() { return /* binding */ secondsToMilliseconds; }\n/* harmony export */ });\n/**\n * Converts seconds to milliseconds\n *\n * @param seconds - Time in seconds.\n * @return milliseconds - Converted time in milliseconds.\n */\nconst secondsToMilliseconds = (seconds) => seconds * 1000;\nconst millisecondsToSeconds = (milliseconds) => milliseconds / 1000;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdGltZS1jb252ZXJzaW9uLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXdEIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdGltZS1jb252ZXJzaW9uLm1qcz8zNzJiIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29udmVydHMgc2Vjb25kcyB0byBtaWxsaXNlY29uZHNcbiAqXG4gKiBAcGFyYW0gc2Vjb25kcyAtIFRpbWUgaW4gc2Vjb25kcy5cbiAqIEByZXR1cm4gbWlsbGlzZWNvbmRzIC0gQ29udmVydGVkIHRpbWUgaW4gbWlsbGlzZWNvbmRzLlxuICovXG5jb25zdCBzZWNvbmRzVG9NaWxsaXNlY29uZHMgPSAoc2Vjb25kcykgPT4gc2Vjb25kcyAqIDEwMDA7XG5jb25zdCBtaWxsaXNlY29uZHNUb1NlY29uZHMgPSAobWlsbGlzZWNvbmRzKSA9PiBtaWxsaXNlY29uZHMgLyAxMDAwO1xuXG5leHBvcnQgeyBtaWxsaXNlY29uZHNUb1NlY29uZHMsIHNlY29uZHNUb01pbGxpc2Vjb25kcyB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/time-conversion.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-constant.mjs":
|
||
/*!*******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-constant.mjs ***!
|
||
\*******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useConstant: function() { return /* binding */ useConstant; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */\nfunction useConstant(init) {\n const ref = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);\n if (ref.current === null) {\n ref.current = init();\n }\n return ref.current;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLWNvbnN0YW50Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUErQjs7QUFFL0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQiw2Q0FBTTtBQUN0QjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUV1QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3VzZS1jb25zdGFudC5tanM/MmZmMCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5cbi8qKlxuICogQ3JlYXRlcyBhIGNvbnN0YW50IHZhbHVlIG92ZXIgdGhlIGxpZmVjeWNsZSBvZiBhIGNvbXBvbmVudC5cbiAqXG4gKiBFdmVuIGlmIGB1c2VNZW1vYCBpcyBwcm92aWRlZCBhbiBlbXB0eSBhcnJheSBhcyBpdHMgZmluYWwgYXJndW1lbnQsIGl0IGRvZXNuJ3Qgb2ZmZXJcbiAqIGEgZ3VhcmFudGVlIHRoYXQgaXQgd29uJ3QgcmUtcnVuIGZvciBwZXJmb3JtYW5jZSByZWFzb25zIGxhdGVyIG9uLiBCeSB1c2luZyBgdXNlQ29uc3RhbnRgXG4gKiB5b3UgY2FuIGVuc3VyZSB0aGF0IGluaXRpYWxpc2VycyBkb24ndCBleGVjdXRlIHR3aWNlIG9yIG1vcmUuXG4gKi9cbmZ1bmN0aW9uIHVzZUNvbnN0YW50KGluaXQpIHtcbiAgICBjb25zdCByZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgaWYgKHJlZi5jdXJyZW50ID09PSBudWxsKSB7XG4gICAgICAgIHJlZi5jdXJyZW50ID0gaW5pdCgpO1xuICAgIH1cbiAgICByZXR1cm4gcmVmLmN1cnJlbnQ7XG59XG5cbmV4cG9ydCB7IHVzZUNvbnN0YW50IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-constant.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-force-update.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-force-update.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useForceUpdate: function() { return /* binding */ useForceUpdate; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_is_mounted_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-is-mounted.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\nfunction useForceUpdate() {\n const isMounted = (0,_use_is_mounted_mjs__WEBPACK_IMPORTED_MODULE_1__.useIsMounted)();\n const [forcedRenderCount, setForcedRenderCount] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0);\n const forceRender = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {\n isMounted.current && setForcedRenderCount(forcedRenderCount + 1);\n }, [forcedRenderCount]);\n /**\n * Defer this to the end of the next animation frame in case there are multiple\n * synchronous calls.\n */\n const deferredForceRender = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_2__.frame.postRender(forceRender), [forceRender]);\n return [deferredForceRender, forcedRenderCount];\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLWZvcmNlLXVwZGF0ZS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUE4QztBQUNNO0FBQ0w7O0FBRS9DO0FBQ0Esc0JBQXNCLGlFQUFZO0FBQ2xDLHNEQUFzRCwrQ0FBUTtBQUM5RCx3QkFBd0Isa0RBQVc7QUFDbkM7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQ0FBZ0Msa0RBQVcsT0FBTyx1REFBSztBQUN2RDtBQUNBOztBQUUwQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3VzZS1mb3JjZS11cGRhdGUubWpzPzdkYTkiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlU3RhdGUsIHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSXNNb3VudGVkIH0gZnJvbSAnLi91c2UtaXMtbW91bnRlZC5tanMnO1xuaW1wb3J0IHsgZnJhbWUgfSBmcm9tICcuLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuZnVuY3Rpb24gdXNlRm9yY2VVcGRhdGUoKSB7XG4gICAgY29uc3QgaXNNb3VudGVkID0gdXNlSXNNb3VudGVkKCk7XG4gICAgY29uc3QgW2ZvcmNlZFJlbmRlckNvdW50LCBzZXRGb3JjZWRSZW5kZXJDb3VudF0gPSB1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBmb3JjZVJlbmRlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgaXNNb3VudGVkLmN1cnJlbnQgJiYgc2V0Rm9yY2VkUmVuZGVyQ291bnQoZm9yY2VkUmVuZGVyQ291bnQgKyAxKTtcbiAgICB9LCBbZm9yY2VkUmVuZGVyQ291bnRdKTtcbiAgICAvKipcbiAgICAgKiBEZWZlciB0aGlzIHRvIHRoZSBlbmQgb2YgdGhlIG5leHQgYW5pbWF0aW9uIGZyYW1lIGluIGNhc2UgdGhlcmUgYXJlIG11bHRpcGxlXG4gICAgICogc3luY2hyb25vdXMgY2FsbHMuXG4gICAgICovXG4gICAgY29uc3QgZGVmZXJyZWRGb3JjZVJlbmRlciA9IHVzZUNhbGxiYWNrKCgpID0+IGZyYW1lLnBvc3RSZW5kZXIoZm9yY2VSZW5kZXIpLCBbZm9yY2VSZW5kZXJdKTtcbiAgICByZXR1cm4gW2RlZmVycmVkRm9yY2VSZW5kZXIsIGZvcmNlZFJlbmRlckNvdW50XTtcbn1cblxuZXhwb3J0IHsgdXNlRm9yY2VVcGRhdGUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-force-update.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs":
|
||
/*!***********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs ***!
|
||
\***********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ instantAnimationState: function() { return /* binding */ instantAnimationState; }\n/* harmony export */ });\nconst instantAnimationState = {\n current: false,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLWluc3RhbnQtdHJhbnNpdGlvbi1zdGF0ZS5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7QUFDQTs7QUFFaUMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy91c2UtaW5zdGFudC10cmFuc2l0aW9uLXN0YXRlLm1qcz9iNmJkIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGluc3RhbnRBbmltYXRpb25TdGF0ZSA9IHtcbiAgICBjdXJyZW50OiBmYWxzZSxcbn07XG5cbmV4cG9ydCB7IGluc3RhbnRBbmltYXRpb25TdGF0ZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs":
|
||
/*!*********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs ***!
|
||
\*********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useIsMounted: function() { return /* binding */ useIsMounted; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-isomorphic-effect.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs\");\n\n\n\nfunction useIsMounted() {\n const isMounted = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);\n (0,_use_isomorphic_effect_mjs__WEBPACK_IMPORTED_MODULE_1__.useIsomorphicLayoutEffect)(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLWlzLW1vdW50ZWQubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUErQjtBQUN5Qzs7QUFFeEU7QUFDQSxzQkFBc0IsNkNBQU07QUFDNUIsSUFBSSxxRkFBeUI7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTs7QUFFd0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy91c2UtaXMtbW91bnRlZC5tanM/YTNmMiJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0IH0gZnJvbSAnLi91c2UtaXNvbW9ycGhpYy1lZmZlY3QubWpzJztcblxuZnVuY3Rpb24gdXNlSXNNb3VudGVkKCkge1xuICAgIGNvbnN0IGlzTW91bnRlZCA9IHVzZVJlZihmYWxzZSk7XG4gICAgdXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlzTW91bnRlZC5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGlzTW91bnRlZC5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgIH07XG4gICAgfSwgW10pO1xuICAgIHJldHVybiBpc01vdW50ZWQ7XG59XG5cbmV4cG9ydCB7IHVzZUlzTW91bnRlZCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useIsomorphicLayoutEffect: function() { return /* binding */ useIsomorphicLayoutEffect; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n/* harmony import */ var _is_browser_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./is-browser.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/is-browser.mjs\");\n\n\n\nconst useIsomorphicLayoutEffect = _is_browser_mjs__WEBPACK_IMPORTED_MODULE_1__.isBrowser ? react__WEBPACK_IMPORTED_MODULE_0__.useLayoutEffect : react__WEBPACK_IMPORTED_MODULE_0__.useEffect;\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLWlzb21vcnBoaWMtZWZmZWN0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBbUQ7QUFDTjs7QUFFN0Msa0NBQWtDLHNEQUFTLEdBQUcsa0RBQWUsR0FBRyw0Q0FBUzs7QUFFcEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy91dGlscy91c2UtaXNvbW9ycGhpYy1lZmZlY3QubWpzPzQ2ODAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlTGF5b3V0RWZmZWN0LCB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBpc0Jyb3dzZXIgfSBmcm9tICcuL2lzLWJyb3dzZXIubWpzJztcblxuY29uc3QgdXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCA9IGlzQnJvd3NlciA/IHVzZUxheW91dEVmZmVjdCA6IHVzZUVmZmVjdDtcblxuZXhwb3J0IHsgdXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ useUnmountEffect: function() { return /* binding */ useUnmountEffect; }\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"(app-pages-browser)/./node_modules/next/dist/compiled/react/index.js\");\n\n\nfunction useUnmountEffect(callback) {\n return (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => () => callback(), []);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdXNlLXVubW91bnQtZWZmZWN0Lm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUFrQzs7QUFFbEM7QUFDQSxXQUFXLGdEQUFTO0FBQ3BCOztBQUU0QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3VzZS11bm1vdW50LWVmZmVjdC5tanM/ZjcxNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5cbmZ1bmN0aW9uIHVzZVVubW91bnRFZmZlY3QoY2FsbGJhY2spIHtcbiAgICByZXR1cm4gdXNlRWZmZWN0KCgpID0+ICgpID0+IGNhbGxiYWNrKCksIFtdKTtcbn1cblxuZXhwb3J0IHsgdXNlVW5tb3VudEVmZmVjdCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ velocityPerSecond: function() { return /* binding */ velocityPerSecond; }\n/* harmony export */ });\n/*\n Convert velocity into velocity per second\n\n @param [number]: Unit per frame\n @param [number]: Frame duration in ms\n*/\nfunction velocityPerSecond(velocity, frameDuration) {\n return frameDuration ? velocity * (1000 / frameDuration) : 0;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvdmVsb2NpdHktcGVyLXNlY29uZC5tanMiLCJtYXBwaW5ncyI6Ijs7OztBQUFBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU2QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3ZlbG9jaXR5LXBlci1zZWNvbmQubWpzPzQ4ODYiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgQ29udmVydCB2ZWxvY2l0eSBpbnRvIHZlbG9jaXR5IHBlciBzZWNvbmRcblxuICBAcGFyYW0gW251bWJlcl06IFVuaXQgcGVyIGZyYW1lXG4gIEBwYXJhbSBbbnVtYmVyXTogRnJhbWUgZHVyYXRpb24gaW4gbXNcbiovXG5mdW5jdGlvbiB2ZWxvY2l0eVBlclNlY29uZCh2ZWxvY2l0eSwgZnJhbWVEdXJhdGlvbikge1xuICAgIHJldHVybiBmcmFtZUR1cmF0aW9uID8gdmVsb2NpdHkgKiAoMTAwMCAvIGZyYW1lRHVyYXRpb24pIDogMDtcbn1cblxuZXhwb3J0IHsgdmVsb2NpdHlQZXJTZWNvbmQgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/warn-once.mjs":
|
||
/*!****************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/utils/warn-once.mjs ***!
|
||
\****************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ warnOnce: function() { return /* binding */ warnOnce; }\n/* harmony export */ });\nconst warned = new Set();\nfunction warnOnce(condition, message, element) {\n if (condition || warned.has(message))\n return;\n console.warn(message);\n if (element)\n console.warn(element);\n warned.add(message);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdXRpbHMvd2Fybi1vbmNlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVvQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3V0aWxzL3dhcm4tb25jZS5tanM/MTYwMCJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCB3YXJuZWQgPSBuZXcgU2V0KCk7XG5mdW5jdGlvbiB3YXJuT25jZShjb25kaXRpb24sIG1lc3NhZ2UsIGVsZW1lbnQpIHtcbiAgICBpZiAoY29uZGl0aW9uIHx8IHdhcm5lZC5oYXMobWVzc2FnZSkpXG4gICAgICAgIHJldHVybjtcbiAgICBjb25zb2xlLndhcm4obWVzc2FnZSk7XG4gICAgaWYgKGVsZW1lbnQpXG4gICAgICAgIGNvbnNvbGUud2FybihlbGVtZW50KTtcbiAgICB3YXJuZWQuYWRkKG1lc3NhZ2UpO1xufVxuXG5leHBvcnQgeyB3YXJuT25jZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/warn-once.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs":
|
||
/*!************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/index.mjs ***!
|
||
\************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MotionValue: function() { return /* binding */ MotionValue; },\n/* harmony export */ collectMotionValues: function() { return /* binding */ collectMotionValues; },\n/* harmony export */ motionValue: function() { return /* binding */ motionValue; }\n/* harmony export */ });\n/* harmony import */ var _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/subscription-manager.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/subscription-manager.mjs\");\n/* harmony import */ var _utils_velocity_per_second_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/velocity-per-second.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs\");\n/* harmony import */ var _utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/warn-once.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/warn-once.mjs\");\n/* harmony import */ var _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../frameloop/frame.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/frameloop/frame.mjs\");\n\n\n\n\n\nconst isFloat = (value) => {\n return !isNaN(parseFloat(value));\n};\nconst collectMotionValues = {\n current: undefined,\n};\n/**\n * `MotionValue` is used to track the state and velocity of motion values.\n *\n * @public\n */\nclass MotionValue {\n /**\n * @param init - The initiating value\n * @param config - Optional configuration options\n *\n * - `transformer`: A function to transform incoming values with.\n *\n * @internal\n */\n constructor(init, options = {}) {\n /**\n * This will be replaced by the build step with the latest version number.\n * When MotionValues are provided to motion components, warn if versions are mixed.\n */\n this.version = \"10.18.0\";\n /**\n * Duration, in milliseconds, since last updating frame.\n *\n * @internal\n */\n this.timeDelta = 0;\n /**\n * Timestamp of the last time this `MotionValue` was updated.\n *\n * @internal\n */\n this.lastUpdated = 0;\n /**\n * Tracks whether this value can output a velocity. Currently this is only true\n * if the value is numerical, but we might be able to widen the scope here and support\n * other value types.\n *\n * @internal\n */\n this.canTrackVelocity = false;\n /**\n * An object containing a SubscriptionManager for each active event.\n */\n this.events = {};\n this.updateAndNotify = (v, render = true) => {\n this.prev = this.current;\n this.current = v;\n // Update timestamp\n const { delta, timestamp } = _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frameData;\n if (this.lastUpdated !== timestamp) {\n this.timeDelta = delta;\n this.lastUpdated = timestamp;\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.postRender(this.scheduleVelocityCheck);\n }\n // Update update subscribers\n if (this.prev !== this.current && this.events.change) {\n this.events.change.notify(this.current);\n }\n // Update velocity subscribers\n if (this.events.velocityChange) {\n this.events.velocityChange.notify(this.getVelocity());\n }\n // Update render subscribers\n if (render && this.events.renderRequest) {\n this.events.renderRequest.notify(this.current);\n }\n };\n /**\n * Schedule a velocity check for the next frame.\n *\n * This is an instanced and bound function to prevent generating a new\n * function once per frame.\n *\n * @internal\n */\n this.scheduleVelocityCheck = () => _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.postRender(this.velocityCheck);\n /**\n * Updates `prev` with `current` if the value hasn't been updated this frame.\n * This ensures velocity calculations return `0`.\n *\n * This is an instanced and bound function to prevent generating a new\n * function once per frame.\n *\n * @internal\n */\n this.velocityCheck = ({ timestamp }) => {\n if (timestamp !== this.lastUpdated) {\n this.prev = this.current;\n if (this.events.velocityChange) {\n this.events.velocityChange.notify(this.getVelocity());\n }\n }\n };\n this.hasAnimated = false;\n this.prev = this.current = init;\n this.canTrackVelocity = isFloat(this.current);\n this.owner = options.owner;\n }\n /**\n * Adds a function that will be notified when the `MotionValue` is updated.\n *\n * It returns a function that, when called, will cancel the subscription.\n *\n * When calling `onChange` inside a React component, it should be wrapped with the\n * `useEffect` hook. As it returns an unsubscribe function, this should be returned\n * from the `useEffect` function to ensure you don't add duplicate subscribers..\n *\n * ```jsx\n * export const MyComponent = () => {\n * const x = useMotionValue(0)\n * const y = useMotionValue(0)\n * const opacity = useMotionValue(1)\n *\n * useEffect(() => {\n * function updateOpacity() {\n * const maxXY = Math.max(x.get(), y.get())\n * const newOpacity = transform(maxXY, [0, 100], [1, 0])\n * opacity.set(newOpacity)\n * }\n *\n * const unsubscribeX = x.on(\"change\", updateOpacity)\n * const unsubscribeY = y.on(\"change\", updateOpacity)\n *\n * return () => {\n * unsubscribeX()\n * unsubscribeY()\n * }\n * }, [])\n *\n * return <motion.div style={{ x }} />\n * }\n * ```\n *\n * @param subscriber - A function that receives the latest value.\n * @returns A function that, when called, will cancel this subscription.\n *\n * @deprecated\n */\n onChange(subscription) {\n if (true) {\n (0,_utils_warn_once_mjs__WEBPACK_IMPORTED_MODULE_1__.warnOnce)(false, `value.onChange(callback) is deprecated. Switch to value.on(\"change\", callback).`);\n }\n return this.on(\"change\", subscription);\n }\n on(eventName, callback) {\n if (!this.events[eventName]) {\n this.events[eventName] = new _utils_subscription_manager_mjs__WEBPACK_IMPORTED_MODULE_2__.SubscriptionManager();\n }\n const unsubscribe = this.events[eventName].add(callback);\n if (eventName === \"change\") {\n return () => {\n unsubscribe();\n /**\n * If we have no more change listeners by the start\n * of the next frame, stop active animations.\n */\n _frameloop_frame_mjs__WEBPACK_IMPORTED_MODULE_0__.frame.read(() => {\n if (!this.events.change.getSize()) {\n this.stop();\n }\n });\n };\n }\n return unsubscribe;\n }\n clearListeners() {\n for (const eventManagers in this.events) {\n this.events[eventManagers].clear();\n }\n }\n /**\n * Attaches a passive effect to the `MotionValue`.\n *\n * @internal\n */\n attach(passiveEffect, stopPassiveEffect) {\n this.passiveEffect = passiveEffect;\n this.stopPassiveEffect = stopPassiveEffect;\n }\n /**\n * Sets the state of the `MotionValue`.\n *\n * @remarks\n *\n * ```jsx\n * const x = useMotionValue(0)\n * x.set(10)\n * ```\n *\n * @param latest - Latest value to set.\n * @param render - Whether to notify render subscribers. Defaults to `true`\n *\n * @public\n */\n set(v, render = true) {\n if (!render || !this.passiveEffect) {\n this.updateAndNotify(v, render);\n }\n else {\n this.passiveEffect(v, this.updateAndNotify);\n }\n }\n setWithVelocity(prev, current, delta) {\n this.set(current);\n this.prev = prev;\n this.timeDelta = delta;\n }\n /**\n * Set the state of the `MotionValue`, stopping any active animations,\n * effects, and resets velocity to `0`.\n */\n jump(v) {\n this.updateAndNotify(v);\n this.prev = v;\n this.stop();\n if (this.stopPassiveEffect)\n this.stopPassiveEffect();\n }\n /**\n * Returns the latest state of `MotionValue`\n *\n * @returns - The latest state of `MotionValue`\n *\n * @public\n */\n get() {\n if (collectMotionValues.current) {\n collectMotionValues.current.push(this);\n }\n return this.current;\n }\n /**\n * @public\n */\n getPrevious() {\n return this.prev;\n }\n /**\n * Returns the latest velocity of `MotionValue`\n *\n * @returns - The latest velocity of `MotionValue`. Returns `0` if the state is non-numerical.\n *\n * @public\n */\n getVelocity() {\n // This could be isFloat(this.prev) && isFloat(this.current), but that would be wasteful\n return this.canTrackVelocity\n ? // These casts could be avoided if parseFloat would be typed better\n (0,_utils_velocity_per_second_mjs__WEBPACK_IMPORTED_MODULE_3__.velocityPerSecond)(parseFloat(this.current) -\n parseFloat(this.prev), this.timeDelta)\n : 0;\n }\n /**\n * Registers a new animation to control this `MotionValue`. Only one\n * animation can drive a `MotionValue` at one time.\n *\n * ```jsx\n * value.start()\n * ```\n *\n * @param animation - A function that starts the provided animation\n *\n * @internal\n */\n start(startAnimation) {\n this.stop();\n return new Promise((resolve) => {\n this.hasAnimated = true;\n this.animation = startAnimation(resolve);\n if (this.events.animationStart) {\n this.events.animationStart.notify();\n }\n }).then(() => {\n if (this.events.animationComplete) {\n this.events.animationComplete.notify();\n }\n this.clearAnimation();\n });\n }\n /**\n * Stop the currently active animation.\n *\n * @public\n */\n stop() {\n if (this.animation) {\n this.animation.stop();\n if (this.events.animationCancel) {\n this.events.animationCancel.notify();\n }\n }\n this.clearAnimation();\n }\n /**\n * Returns `true` if this value is currently animating.\n *\n * @public\n */\n isAnimating() {\n return !!this.animation;\n }\n clearAnimation() {\n delete this.animation;\n }\n /**\n * Destroy and clean up subscribers to this `MotionValue`.\n *\n * The `MotionValue` hooks like `useMotionValue` and `useTransform` automatically\n * handle the lifecycle of the returned `MotionValue`, so this method is only necessary if you've manually\n * created a `MotionValue` via the `motionValue` function.\n *\n * @public\n */\n destroy() {\n this.clearListeners();\n this.stop();\n if (this.stopPassiveEffect) {\n this.stopPassiveEffect();\n }\n }\n}\nfunction motionValue(init, options) {\n return new MotionValue(init, options);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBd0U7QUFDSDtBQUNuQjtBQUNROztBQUUxRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Esa0NBQWtDO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixtQkFBbUIsRUFBRSwyREFBUztBQUNsRDtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsdURBQUs7QUFDckI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQ0FBMkMsdURBQUs7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsZ0NBQWdDLFdBQVc7QUFDM0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7QUFDVjtBQUNBLHFDQUFxQyxLQUFLO0FBQzFDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksSUFBcUM7QUFDakQsWUFBWSw4REFBUTtBQUNwQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EseUNBQXlDLGdGQUFtQjtBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsdURBQUs7QUFDckI7QUFDQTtBQUNBO0FBQ0EsaUJBQWlCO0FBQ2pCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixpRkFBaUI7QUFDakM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFeUQiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy92YWx1ZS9pbmRleC5tanM/M2U3OSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJzY3JpcHRpb25NYW5hZ2VyIH0gZnJvbSAnLi4vdXRpbHMvc3Vic2NyaXB0aW9uLW1hbmFnZXIubWpzJztcbmltcG9ydCB7IHZlbG9jaXR5UGVyU2Vjb25kIH0gZnJvbSAnLi4vdXRpbHMvdmVsb2NpdHktcGVyLXNlY29uZC5tanMnO1xuaW1wb3J0IHsgd2Fybk9uY2UgfSBmcm9tICcuLi91dGlscy93YXJuLW9uY2UubWpzJztcbmltcG9ydCB7IGZyYW1lLCBmcmFtZURhdGEgfSBmcm9tICcuLi9mcmFtZWxvb3AvZnJhbWUubWpzJztcblxuY29uc3QgaXNGbG9hdCA9ICh2YWx1ZSkgPT4ge1xuICAgIHJldHVybiAhaXNOYU4ocGFyc2VGbG9hdCh2YWx1ZSkpO1xufTtcbmNvbnN0IGNvbGxlY3RNb3Rpb25WYWx1ZXMgPSB7XG4gICAgY3VycmVudDogdW5kZWZpbmVkLFxufTtcbi8qKlxuICogYE1vdGlvblZhbHVlYCBpcyB1c2VkIHRvIHRyYWNrIHRoZSBzdGF0ZSBhbmQgdmVsb2NpdHkgb2YgbW90aW9uIHZhbHVlcy5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmNsYXNzIE1vdGlvblZhbHVlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gaW5pdCAtIFRoZSBpbml0aWF0aW5nIHZhbHVlXG4gICAgICogQHBhcmFtIGNvbmZpZyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICAgICAqXG4gICAgICogLSAgYHRyYW5zZm9ybWVyYDogQSBmdW5jdGlvbiB0byB0cmFuc2Zvcm0gaW5jb21pbmcgdmFsdWVzIHdpdGguXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3Rvcihpbml0LCBvcHRpb25zID0ge30pIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIFRoaXMgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgYnVpbGQgc3RlcCB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiBudW1iZXIuXG4gICAgICAgICAqIFdoZW4gTW90aW9uVmFsdWVzIGFyZSBwcm92aWRlZCB0byBtb3Rpb24gY29tcG9uZW50cywgd2FybiBpZiB2ZXJzaW9ucyBhcmUgbWl4ZWQuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLnZlcnNpb24gPSBcIjEwLjE4LjBcIjtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIER1cmF0aW9uLCBpbiBtaWxsaXNlY29uZHMsIHNpbmNlIGxhc3QgdXBkYXRpbmcgZnJhbWUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy50aW1lRGVsdGEgPSAwO1xuICAgICAgICAvKipcbiAgICAgICAgICogVGltZXN0YW1wIG9mIHRoZSBsYXN0IHRpbWUgdGhpcyBgTW90aW9uVmFsdWVgIHdhcyB1cGRhdGVkLlxuICAgICAgICAgKlxuICAgICAgICAgKiBAaW50ZXJuYWxcbiAgICAgICAgICovXG4gICAgICAgIHRoaXMubGFzdFVwZGF0ZWQgPSAwO1xuICAgICAgICAvKipcbiAgICAgICAgICogVHJhY2tzIHdoZXRoZXIgdGhpcyB2YWx1ZSBjYW4gb3V0cHV0IGEgdmVsb2NpdHkuIEN1cnJlbnRseSB0aGlzIGlzIG9ubHkgdHJ1ZVxuICAgICAgICAgKiBpZiB0aGUgdmFsdWUgaXMgbnVtZXJpY2FsLCBidXQgd2UgbWlnaHQgYmUgYWJsZSB0byB3aWRlbiB0aGUgc2NvcGUgaGVyZSBhbmQgc3VwcG9ydFxuICAgICAgICAgKiBvdGhlciB2YWx1ZSB0eXBlcy5cbiAgICAgICAgICpcbiAgICAgICAgICogQGludGVybmFsXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmNhblRyYWNrVmVsb2NpdHkgPSBmYWxzZTtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIEFuIG9iamVjdCBjb250YWluaW5nIGEgU3Vic2NyaXB0aW9uTWFuYWdlciBmb3IgZWFjaCBhY3RpdmUgZXZlbnQuXG4gICAgICAgICAqL1xuICAgICAgICB0aGlzLmV2ZW50cyA9IHt9O1xuICAgICAgICB0aGlzLnVwZGF0ZUFuZE5vdGlmeSA9ICh2LCByZW5kZXIgPSB0cnVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnByZXYgPSB0aGlzLmN1cnJlbnQ7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnQgPSB2O1xuICAgICAgICAgICAgLy8gVXBkYXRlIHRpbWVzdGFtcFxuICAgICAgICAgICAgY29uc3QgeyBkZWx0YSwgdGltZXN0YW1wIH0gPSBmcmFtZURhdGE7XG4gICAgICAgICAgICBpZiAodGhpcy5sYXN0VXBkYXRlZCAhPT0gdGltZXN0YW1wKSB7XG4gICAgICAgICAgICAgICAgdGhpcy50aW1lRGVsdGEgPSBkZWx0YTtcbiAgICAgICAgICAgICAgICB0aGlzLmxhc3RVcGRhdGVkID0gdGltZXN0YW1wO1xuICAgICAgICAgICAgICAgIGZyYW1lLnBvc3RSZW5kZXIodGhpcy5zY2hlZHVsZVZlbG9jaXR5Q2hlY2spO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gVXBkYXRlIHVwZGF0ZSBzdWJzY3JpYmVyc1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiAhPT0gdGhpcy5jdXJyZW50ICYmIHRoaXMuZXZlbnRzLmNoYW5nZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZXZlbnRzLmNoYW5nZS5ub3RpZnkodGhpcy5jdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFVwZGF0ZSB2ZWxvY2l0eSBzdWJzY3JpYmVyc1xuICAgICAgICAgICAgaWYgKHRoaXMuZXZlbnRzLnZlbG9jaXR5Q2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ldmVudHMudmVsb2NpdHlDaGFuZ2Uubm90aWZ5KHRoaXMuZ2V0VmVsb2NpdHkoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBVcGRhdGUgcmVuZGVyIHN1YnNjcmliZXJzXG4gICAgICAgICAgICBpZiAocmVuZGVyICYmIHRoaXMuZXZlbnRzLnJlbmRlclJlcXVlc3QpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV2ZW50cy5yZW5kZXJSZXF1ZXN0Lm5vdGlmeSh0aGlzLmN1cnJlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICAvKipcbiAgICAgICAgICogU2NoZWR1bGUgYSB2ZWxvY2l0eSBjaGVjayBmb3IgdGhlIG5leHQgZnJhbWUuXG4gICAgICAgICAqXG4gICAgICAgICAqIFRoaXMgaXMgYW4gaW5zdGFuY2VkIGFuZCBib3VuZCBmdW5jdGlvbiB0byBwcmV2ZW50IGdlbmVyYXRpbmcgYSBuZXdcbiAgICAgICAgICogZnVuY3Rpb24gb25jZSBwZXIgZnJhbWUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy5zY2hlZHVsZVZlbG9jaXR5Q2hlY2sgPSAoKSA9PiBmcmFtZS5wb3N0UmVuZGVyKHRoaXMudmVsb2NpdHlDaGVjayk7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVcGRhdGVzIGBwcmV2YCB3aXRoIGBjdXJyZW50YCBpZiB0aGUgdmFsdWUgaGFzbid0IGJlZW4gdXBkYXRlZCB0aGlzIGZyYW1lLlxuICAgICAgICAgKiBUaGlzIGVuc3VyZXMgdmVsb2NpdHkgY2FsY3VsYXRpb25zIHJldHVybiBgMGAuXG4gICAgICAgICAqXG4gICAgICAgICAqIFRoaXMgaXMgYW4gaW5zdGFuY2VkIGFuZCBib3VuZCBmdW5jdGlvbiB0byBwcmV2ZW50IGdlbmVyYXRpbmcgYSBuZXdcbiAgICAgICAgICogZnVuY3Rpb24gb25jZSBwZXIgZnJhbWUuXG4gICAgICAgICAqXG4gICAgICAgICAqIEBpbnRlcm5hbFxuICAgICAgICAgKi9cbiAgICAgICAgdGhpcy52ZWxvY2l0eUNoZWNrID0gKHsgdGltZXN0YW1wIH0pID0+IHtcbiAgICAgICAgICAgIGlmICh0aW1lc3RhbXAgIT09IHRoaXMubGFzdFVwZGF0ZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnByZXYgPSB0aGlzLmN1cnJlbnQ7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZXZlbnRzLnZlbG9jaXR5Q2hhbmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXZlbnRzLnZlbG9jaXR5Q2hhbmdlLm5vdGlmeSh0aGlzLmdldFZlbG9jaXR5KCkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5oYXNBbmltYXRlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnByZXYgPSB0aGlzLmN1cnJlbnQgPSBpbml0O1xuICAgICAgICB0aGlzLmNhblRyYWNrVmVsb2NpdHkgPSBpc0Zsb2F0KHRoaXMuY3VycmVudCk7XG4gICAgICAgIHRoaXMub3duZXIgPSBvcHRpb25zLm93bmVyO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBZGRzIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIG5vdGlmaWVkIHdoZW4gdGhlIGBNb3Rpb25WYWx1ZWAgaXMgdXBkYXRlZC5cbiAgICAgKlxuICAgICAqIEl0IHJldHVybnMgYSBmdW5jdGlvbiB0aGF0LCB3aGVuIGNhbGxlZCwgd2lsbCBjYW5jZWwgdGhlIHN1YnNjcmlwdGlvbi5cbiAgICAgKlxuICAgICAqIFdoZW4gY2FsbGluZyBgb25DaGFuZ2VgIGluc2lkZSBhIFJlYWN0IGNvbXBvbmVudCwgaXQgc2hvdWxkIGJlIHdyYXBwZWQgd2l0aCB0aGVcbiAgICAgKiBgdXNlRWZmZWN0YCBob29rLiBBcyBpdCByZXR1cm5zIGFuIHVuc3Vic2NyaWJlIGZ1bmN0aW9uLCB0aGlzIHNob3VsZCBiZSByZXR1cm5lZFxuICAgICAqIGZyb20gdGhlIGB1c2VFZmZlY3RgIGZ1bmN0aW9uIHRvIGVuc3VyZSB5b3UgZG9uJ3QgYWRkIGR1cGxpY2F0ZSBzdWJzY3JpYmVycy4uXG4gICAgICpcbiAgICAgKiBgYGBqc3hcbiAgICAgKiBleHBvcnQgY29uc3QgTXlDb21wb25lbnQgPSAoKSA9PiB7XG4gICAgICogICBjb25zdCB4ID0gdXNlTW90aW9uVmFsdWUoMClcbiAgICAgKiAgIGNvbnN0IHkgPSB1c2VNb3Rpb25WYWx1ZSgwKVxuICAgICAqICAgY29uc3Qgb3BhY2l0eSA9IHVzZU1vdGlvblZhbHVlKDEpXG4gICAgICpcbiAgICAgKiAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICogICAgIGZ1bmN0aW9uIHVwZGF0ZU9wYWNpdHkoKSB7XG4gICAgICogICAgICAgY29uc3QgbWF4WFkgPSBNYXRoLm1heCh4LmdldCgpLCB5LmdldCgpKVxuICAgICAqICAgICAgIGNvbnN0IG5ld09wYWNpdHkgPSB0cmFuc2Zvcm0obWF4WFksIFswLCAxMDBdLCBbMSwgMF0pXG4gICAgICogICAgICAgb3BhY2l0eS5zZXQobmV3T3BhY2l0eSlcbiAgICAgKiAgICAgfVxuICAgICAqXG4gICAgICogICAgIGNvbnN0IHVuc3Vic2NyaWJlWCA9IHgub24oXCJjaGFuZ2VcIiwgdXBkYXRlT3BhY2l0eSlcbiAgICAgKiAgICAgY29uc3QgdW5zdWJzY3JpYmVZID0geS5vbihcImNoYW5nZVwiLCB1cGRhdGVPcGFjaXR5KVxuICAgICAqXG4gICAgICogICAgIHJldHVybiAoKSA9PiB7XG4gICAgICogICAgICAgdW5zdWJzY3JpYmVYKClcbiAgICAgKiAgICAgICB1bnN1YnNjcmliZVkoKVxuICAgICAqICAgICB9XG4gICAgICogICB9LCBbXSlcbiAgICAgKlxuICAgICAqICAgcmV0dXJuIDxtb3Rpb24uZGl2IHN0eWxlPXt7IHggfX0gLz5cbiAgICAgKiB9XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAcGFyYW0gc3Vic2NyaWJlciAtIEEgZnVuY3Rpb24gdGhhdCByZWNlaXZlcyB0aGUgbGF0ZXN0IHZhbHVlLlxuICAgICAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCwgd2hlbiBjYWxsZWQsIHdpbGwgY2FuY2VsIHRoaXMgc3Vic2NyaXB0aW9uLlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBvbkNoYW5nZShzdWJzY3JpcHRpb24pIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSBcInByb2R1Y3Rpb25cIikge1xuICAgICAgICAgICAgd2Fybk9uY2UoZmFsc2UsIGB2YWx1ZS5vbkNoYW5nZShjYWxsYmFjaykgaXMgZGVwcmVjYXRlZC4gU3dpdGNoIHRvIHZhbHVlLm9uKFwiY2hhbmdlXCIsIGNhbGxiYWNrKS5gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5vbihcImNoYW5nZVwiLCBzdWJzY3JpcHRpb24pO1xuICAgIH1cbiAgICBvbihldmVudE5hbWUsIGNhbGxiYWNrKSB7XG4gICAgICAgIGlmICghdGhpcy5ldmVudHNbZXZlbnROYW1lXSkge1xuICAgICAgICAgICAgdGhpcy5ldmVudHNbZXZlbnROYW1lXSA9IG5ldyBTdWJzY3JpcHRpb25NYW5hZ2VyKCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdW5zdWJzY3JpYmUgPSB0aGlzLmV2ZW50c1tldmVudE5hbWVdLmFkZChjYWxsYmFjayk7XG4gICAgICAgIGlmIChldmVudE5hbWUgPT09IFwiY2hhbmdlXCIpIHtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAgICAgKiBJZiB3ZSBoYXZlIG5vIG1vcmUgY2hhbmdlIGxpc3RlbmVycyBieSB0aGUgc3RhcnRcbiAgICAgICAgICAgICAgICAgKiBvZiB0aGUgbmV4dCBmcmFtZSwgc3RvcCBhY3RpdmUgYW5pbWF0aW9ucy5cbiAgICAgICAgICAgICAgICAgKi9cbiAgICAgICAgICAgICAgICBmcmFtZS5yZWFkKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmV2ZW50cy5jaGFuZ2UuZ2V0U2l6ZSgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3AoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdW5zdWJzY3JpYmU7XG4gICAgfVxuICAgIGNsZWFyTGlzdGVuZXJzKCkge1xuICAgICAgICBmb3IgKGNvbnN0IGV2ZW50TWFuYWdlcnMgaW4gdGhpcy5ldmVudHMpIHtcbiAgICAgICAgICAgIHRoaXMuZXZlbnRzW2V2ZW50TWFuYWdlcnNdLmNsZWFyKCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogQXR0YWNoZXMgYSBwYXNzaXZlIGVmZmVjdCB0byB0aGUgYE1vdGlvblZhbHVlYC5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIGF0dGFjaChwYXNzaXZlRWZmZWN0LCBzdG9wUGFzc2l2ZUVmZmVjdCkge1xuICAgICAgICB0aGlzLnBhc3NpdmVFZmZlY3QgPSBwYXNzaXZlRWZmZWN0O1xuICAgICAgICB0aGlzLnN0b3BQYXNzaXZlRWZmZWN0ID0gc3RvcFBhc3NpdmVFZmZlY3Q7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHN0YXRlIG9mIHRoZSBgTW90aW9uVmFsdWVgLlxuICAgICAqXG4gICAgICogQHJlbWFya3NcbiAgICAgKlxuICAgICAqIGBgYGpzeFxuICAgICAqIGNvbnN0IHggPSB1c2VNb3Rpb25WYWx1ZSgwKVxuICAgICAqIHguc2V0KDEwKVxuICAgICAqIGBgYFxuICAgICAqXG4gICAgICogQHBhcmFtIGxhdGVzdCAtIExhdGVzdCB2YWx1ZSB0byBzZXQuXG4gICAgICogQHBhcmFtIHJlbmRlciAtIFdoZXRoZXIgdG8gbm90aWZ5IHJlbmRlciBzdWJzY3JpYmVycy4gRGVmYXVsdHMgdG8gYHRydWVgXG4gICAgICpcbiAgICAgKiBAcHVibGljXG4gICAgICovXG4gICAgc2V0KHYsIHJlbmRlciA9IHRydWUpIHtcbiAgICAgICAgaWYgKCFyZW5kZXIgfHwgIXRoaXMucGFzc2l2ZUVmZmVjdCkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVBbmROb3RpZnkodiwgcmVuZGVyKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucGFzc2l2ZUVmZmVjdCh2LCB0aGlzLnVwZGF0ZUFuZE5vdGlmeSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2V0V2l0aFZlbG9jaXR5KHByZXYsIGN1cnJlbnQsIGRlbHRhKSB7XG4gICAgICAgIHRoaXMuc2V0KGN1cnJlbnQpO1xuICAgICAgICB0aGlzLnByZXYgPSBwcmV2O1xuICAgICAgICB0aGlzLnRpbWVEZWx0YSA9IGRlbHRhO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIHN0YXRlIG9mIHRoZSBgTW90aW9uVmFsdWVgLCBzdG9wcGluZyBhbnkgYWN0aXZlIGFuaW1hdGlvbnMsXG4gICAgICogZWZmZWN0cywgYW5kIHJlc2V0cyB2ZWxvY2l0eSB0byBgMGAuXG4gICAgICovXG4gICAganVtcCh2KSB7XG4gICAgICAgIHRoaXMudXBkYXRlQW5kTm90aWZ5KHYpO1xuICAgICAgICB0aGlzLnByZXYgPSB2O1xuICAgICAgICB0aGlzLnN0b3AoKTtcbiAgICAgICAgaWYgKHRoaXMuc3RvcFBhc3NpdmVFZmZlY3QpXG4gICAgICAgICAgICB0aGlzLnN0b3BQYXNzaXZlRWZmZWN0KCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGxhdGVzdCBzdGF0ZSBvZiBgTW90aW9uVmFsdWVgXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyAtIFRoZSBsYXRlc3Qgc3RhdGUgb2YgYE1vdGlvblZhbHVlYFxuICAgICAqXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIGdldCgpIHtcbiAgICAgICAgaWYgKGNvbGxlY3RNb3Rpb25WYWx1ZXMuY3VycmVudCkge1xuICAgICAgICAgICAgY29sbGVjdE1vdGlvblZhbHVlcy5jdXJyZW50LnB1c2godGhpcyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIGdldFByZXZpb3VzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wcmV2O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBsYXRlc3QgdmVsb2NpdHkgb2YgYE1vdGlvblZhbHVlYFxuICAgICAqXG4gICAgICogQHJldHVybnMgLSBUaGUgbGF0ZXN0IHZlbG9jaXR5IG9mIGBNb3Rpb25WYWx1ZWAuIFJldHVybnMgYDBgIGlmIHRoZSBzdGF0ZSBpcyBub24tbnVtZXJpY2FsLlxuICAgICAqXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIGdldFZlbG9jaXR5KCkge1xuICAgICAgICAvLyBUaGlzIGNvdWxkIGJlIGlzRmxvYXQodGhpcy5wcmV2KSAmJiBpc0Zsb2F0KHRoaXMuY3VycmVudCksIGJ1dCB0aGF0IHdvdWxkIGJlIHdhc3RlZnVsXG4gICAgICAgIHJldHVybiB0aGlzLmNhblRyYWNrVmVsb2NpdHlcbiAgICAgICAgICAgID8gLy8gVGhlc2UgY2FzdHMgY291bGQgYmUgYXZvaWRlZCBpZiBwYXJzZUZsb2F0IHdvdWxkIGJlIHR5cGVkIGJldHRlclxuICAgICAgICAgICAgICAgIHZlbG9jaXR5UGVyU2Vjb25kKHBhcnNlRmxvYXQodGhpcy5jdXJyZW50KSAtXG4gICAgICAgICAgICAgICAgICAgIHBhcnNlRmxvYXQodGhpcy5wcmV2KSwgdGhpcy50aW1lRGVsdGEpXG4gICAgICAgICAgICA6IDA7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVycyBhIG5ldyBhbmltYXRpb24gdG8gY29udHJvbCB0aGlzIGBNb3Rpb25WYWx1ZWAuIE9ubHkgb25lXG4gICAgICogYW5pbWF0aW9uIGNhbiBkcml2ZSBhIGBNb3Rpb25WYWx1ZWAgYXQgb25lIHRpbWUuXG4gICAgICpcbiAgICAgKiBgYGBqc3hcbiAgICAgKiB2YWx1ZS5zdGFydCgpXG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYW5pbWF0aW9uIC0gQSBmdW5jdGlvbiB0aGF0IHN0YXJ0cyB0aGUgcHJvdmlkZWQgYW5pbWF0aW9uXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBzdGFydChzdGFydEFuaW1hdGlvbikge1xuICAgICAgICB0aGlzLnN0b3AoKTtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhc0FuaW1hdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uID0gc3RhcnRBbmltYXRpb24ocmVzb2x2ZSk7XG4gICAgICAgICAgICBpZiAodGhpcy5ldmVudHMuYW5pbWF0aW9uU3RhcnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV2ZW50cy5hbmltYXRpb25TdGFydC5ub3RpZnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5ldmVudHMuYW5pbWF0aW9uQ29tcGxldGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV2ZW50cy5hbmltYXRpb25Db21wbGV0ZS5ub3RpZnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY2xlYXJBbmltYXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFN0b3AgdGhlIGN1cnJlbnRseSBhY3RpdmUgYW5pbWF0aW9uLlxuICAgICAqXG4gICAgICogQHB1YmxpY1xuICAgICAqL1xuICAgIHN0b3AoKSB7XG4gICAgICAgIGlmICh0aGlzLmFuaW1hdGlvbikge1xuICAgICAgICAgICAgdGhpcy5hbmltYXRpb24uc3RvcCgpO1xuICAgICAgICAgICAgaWYgKHRoaXMuZXZlbnRzLmFuaW1hdGlvbkNhbmNlbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZXZlbnRzLmFuaW1hdGlvbkNhbmNlbC5ub3RpZnkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsZWFyQW5pbWF0aW9uKCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYHRydWVgIGlmIHRoaXMgdmFsdWUgaXMgY3VycmVudGx5IGFuaW1hdGluZy5cbiAgICAgKlxuICAgICAqIEBwdWJsaWNcbiAgICAgKi9cbiAgICBpc0FuaW1hdGluZygpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5hbmltYXRpb247XG4gICAgfVxuICAgIGNsZWFyQW5pbWF0aW9uKCkge1xuICAgICAgICBkZWxldGUgdGhpcy5hbmltYXRpb247XG4gICAgfVxuICAgIC8qKlxuICAgICAqIERlc3Ryb3kgYW5kIGNsZWFuIHVwIHN1YnNjcmliZXJzIHRvIHRoaXMgYE1vdGlvblZhbHVlYC5cbiAgICAgKlxuICAgICAqIFRoZSBgTW90aW9uVmFsdWVgIGhvb2tzIGxpa2UgYHVzZU1vdGlvblZhbHVlYCBhbmQgYHVzZVRyYW5zZm9ybWAgYXV0b21hdGljYWxseVxuICAgICAqIGhhbmRsZSB0aGUgbGlmZWN5Y2xlIG9mIHRoZSByZXR1cm5lZCBgTW90aW9uVmFsdWVgLCBzbyB0aGlzIG1ldGhvZCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB5b3UndmUgbWFudWFsbHlcbiAgICAgKiBjcmVhdGVkIGEgYE1vdGlvblZhbHVlYCB2aWEgdGhlIGBtb3Rpb25WYWx1ZWAgZnVuY3Rpb24uXG4gICAgICpcbiAgICAgKiBAcHVibGljXG4gICAgICovXG4gICAgZGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5jbGVhckxpc3RlbmVycygpO1xuICAgICAgICB0aGlzLnN0b3AoKTtcbiAgICAgICAgaWYgKHRoaXMuc3RvcFBhc3NpdmVFZmZlY3QpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcFBhc3NpdmVFZmZlY3QoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmZ1bmN0aW9uIG1vdGlvblZhbHVlKGluaXQsIG9wdGlvbnMpIHtcbiAgICByZXR1cm4gbmV3IE1vdGlvblZhbHVlKGluaXQsIG9wdGlvbnMpO1xufVxuXG5leHBvcnQgeyBNb3Rpb25WYWx1ZSwgY29sbGVjdE1vdGlvblZhbHVlcywgbW90aW9uVmFsdWUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hex.mjs":
|
||
/*!**********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/color/hex.mjs ***!
|
||
\**********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hex: function() { return /* binding */ hex; }\n/* harmony export */ });\n/* harmony import */ var _rgba_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rgba.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/utils.mjs\");\n\n\n\nfunction parseHex(v) {\n let r = \"\";\n let g = \"\";\n let b = \"\";\n let a = \"\";\n // If we have 6 characters, ie #FF0000\n if (v.length > 5) {\n r = v.substring(1, 3);\n g = v.substring(3, 5);\n b = v.substring(5, 7);\n a = v.substring(7, 9);\n // Or we have 3 characters, ie #F00\n }\n else {\n r = v.substring(1, 2);\n g = v.substring(2, 3);\n b = v.substring(3, 4);\n a = v.substring(4, 5);\n r += r;\n g += g;\n b += b;\n a += a;\n }\n return {\n red: parseInt(r, 16),\n green: parseInt(g, 16),\n blue: parseInt(b, 16),\n alpha: a ? parseInt(a, 16) / 255 : 1,\n };\n}\nconst hex = {\n test: (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isColorString)(\"#\"),\n parse: parseHex,\n transform: _rgba_mjs__WEBPACK_IMPORTED_MODULE_1__.rgba.transform,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29sb3IvaGV4Lm1qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBa0M7QUFDVTs7QUFFNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVLHlEQUFhO0FBQ3ZCO0FBQ0EsZUFBZSwyQ0FBSTtBQUNuQjs7QUFFZSIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3ZhbHVlL3R5cGVzL2NvbG9yL2hleC5tanM/MWQxZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZ2JhIH0gZnJvbSAnLi9yZ2JhLm1qcyc7XG5pbXBvcnQgeyBpc0NvbG9yU3RyaW5nIH0gZnJvbSAnLi91dGlscy5tanMnO1xuXG5mdW5jdGlvbiBwYXJzZUhleCh2KSB7XG4gICAgbGV0IHIgPSBcIlwiO1xuICAgIGxldCBnID0gXCJcIjtcbiAgICBsZXQgYiA9IFwiXCI7XG4gICAgbGV0IGEgPSBcIlwiO1xuICAgIC8vIElmIHdlIGhhdmUgNiBjaGFyYWN0ZXJzLCBpZSAjRkYwMDAwXG4gICAgaWYgKHYubGVuZ3RoID4gNSkge1xuICAgICAgICByID0gdi5zdWJzdHJpbmcoMSwgMyk7XG4gICAgICAgIGcgPSB2LnN1YnN0cmluZygzLCA1KTtcbiAgICAgICAgYiA9IHYuc3Vic3RyaW5nKDUsIDcpO1xuICAgICAgICBhID0gdi5zdWJzdHJpbmcoNywgOSk7XG4gICAgICAgIC8vIE9yIHdlIGhhdmUgMyBjaGFyYWN0ZXJzLCBpZSAjRjAwXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByID0gdi5zdWJzdHJpbmcoMSwgMik7XG4gICAgICAgIGcgPSB2LnN1YnN0cmluZygyLCAzKTtcbiAgICAgICAgYiA9IHYuc3Vic3RyaW5nKDMsIDQpO1xuICAgICAgICBhID0gdi5zdWJzdHJpbmcoNCwgNSk7XG4gICAgICAgIHIgKz0gcjtcbiAgICAgICAgZyArPSBnO1xuICAgICAgICBiICs9IGI7XG4gICAgICAgIGEgKz0gYTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVkOiBwYXJzZUludChyLCAxNiksXG4gICAgICAgIGdyZWVuOiBwYXJzZUludChnLCAxNiksXG4gICAgICAgIGJsdWU6IHBhcnNlSW50KGIsIDE2KSxcbiAgICAgICAgYWxwaGE6IGEgPyBwYXJzZUludChhLCAxNikgLyAyNTUgOiAxLFxuICAgIH07XG59XG5jb25zdCBoZXggPSB7XG4gICAgdGVzdDogaXNDb2xvclN0cmluZyhcIiNcIiksXG4gICAgcGFyc2U6IHBhcnNlSGV4LFxuICAgIHRyYW5zZm9ybTogcmdiYS50cmFuc2Zvcm0sXG59O1xuXG5leHBvcnQgeyBoZXggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hex.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hsla.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/color/hsla.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ hsla: function() { return /* binding */ hsla; }\n/* harmony export */ });\n/* harmony import */ var _numbers_index_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../numbers/units.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/utils.mjs\");\n\n\n\n\n\nconst hsla = {\n test: (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isColorString)(\"hsl\", \"hue\"),\n parse: (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.splitColor)(\"hue\", \"saturation\", \"lightness\"),\n transform: ({ hue, saturation, lightness, alpha: alpha$1 = 1 }) => {\n return (\"hsla(\" +\n Math.round(hue) +\n \", \" +\n _numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.percent.transform((0,_utils_mjs__WEBPACK_IMPORTED_MODULE_2__.sanitize)(saturation)) +\n \", \" +\n _numbers_units_mjs__WEBPACK_IMPORTED_MODULE_1__.percent.transform((0,_utils_mjs__WEBPACK_IMPORTED_MODULE_2__.sanitize)(lightness)) +\n \", \" +\n (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_2__.sanitize)(_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_3__.alpha.transform(alpha$1)) +\n \")\");\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29sb3IvaHNsYS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBNkM7QUFDRTtBQUNQO0FBQ2dCOztBQUV4RDtBQUNBLFVBQVUseURBQWE7QUFDdkIsV0FBVyxzREFBVTtBQUNyQixrQkFBa0IsZ0RBQWdEO0FBQ2xFO0FBQ0E7QUFDQTtBQUNBLFlBQVksdURBQU8sV0FBVyxvREFBUTtBQUN0QztBQUNBLFlBQVksdURBQU8sV0FBVyxvREFBUTtBQUN0QztBQUNBLFlBQVksb0RBQVEsQ0FBQyxxREFBSztBQUMxQjtBQUNBLEtBQUs7QUFDTDs7QUFFZ0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy92YWx1ZS90eXBlcy9jb2xvci9oc2xhLm1qcz9kZTdmIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFscGhhIH0gZnJvbSAnLi4vbnVtYmVycy9pbmRleC5tanMnO1xuaW1wb3J0IHsgcGVyY2VudCB9IGZyb20gJy4uL251bWJlcnMvdW5pdHMubWpzJztcbmltcG9ydCB7IHNhbml0aXplIH0gZnJvbSAnLi4vdXRpbHMubWpzJztcbmltcG9ydCB7IGlzQ29sb3JTdHJpbmcsIHNwbGl0Q29sb3IgfSBmcm9tICcuL3V0aWxzLm1qcyc7XG5cbmNvbnN0IGhzbGEgPSB7XG4gICAgdGVzdDogaXNDb2xvclN0cmluZyhcImhzbFwiLCBcImh1ZVwiKSxcbiAgICBwYXJzZTogc3BsaXRDb2xvcihcImh1ZVwiLCBcInNhdHVyYXRpb25cIiwgXCJsaWdodG5lc3NcIiksXG4gICAgdHJhbnNmb3JtOiAoeyBodWUsIHNhdHVyYXRpb24sIGxpZ2h0bmVzcywgYWxwaGE6IGFscGhhJDEgPSAxIH0pID0+IHtcbiAgICAgICAgcmV0dXJuIChcImhzbGEoXCIgK1xuICAgICAgICAgICAgTWF0aC5yb3VuZChodWUpICtcbiAgICAgICAgICAgIFwiLCBcIiArXG4gICAgICAgICAgICBwZXJjZW50LnRyYW5zZm9ybShzYW5pdGl6ZShzYXR1cmF0aW9uKSkgK1xuICAgICAgICAgICAgXCIsIFwiICtcbiAgICAgICAgICAgIHBlcmNlbnQudHJhbnNmb3JtKHNhbml0aXplKGxpZ2h0bmVzcykpICtcbiAgICAgICAgICAgIFwiLCBcIiArXG4gICAgICAgICAgICBzYW5pdGl6ZShhbHBoYS50cmFuc2Zvcm0oYWxwaGEkMSkpICtcbiAgICAgICAgICAgIFwiKVwiKTtcbiAgICB9LFxufTtcblxuZXhwb3J0IHsgaHNsYSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hsla.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/color/index.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ color: function() { return /* binding */ color; }\n/* harmony export */ });\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n/* harmony import */ var _hex_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hex.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hex.mjs\");\n/* harmony import */ var _hsla_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./hsla.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/hsla.mjs\");\n/* harmony import */ var _rgba_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./rgba.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs\");\n\n\n\n\n\nconst color = {\n test: (v) => _rgba_mjs__WEBPACK_IMPORTED_MODULE_0__.rgba.test(v) || _hex_mjs__WEBPACK_IMPORTED_MODULE_1__.hex.test(v) || _hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla.test(v),\n parse: (v) => {\n if (_rgba_mjs__WEBPACK_IMPORTED_MODULE_0__.rgba.test(v)) {\n return _rgba_mjs__WEBPACK_IMPORTED_MODULE_0__.rgba.parse(v);\n }\n else if (_hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla.test(v)) {\n return _hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla.parse(v);\n }\n else {\n return _hex_mjs__WEBPACK_IMPORTED_MODULE_1__.hex.parse(v);\n }\n },\n transform: (v) => {\n return (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_3__.isString)(v)\n ? v\n : v.hasOwnProperty(\"red\")\n ? _rgba_mjs__WEBPACK_IMPORTED_MODULE_0__.rgba.transform(v)\n : _hsla_mjs__WEBPACK_IMPORTED_MODULE_2__.hsla.transform(v);\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29sb3IvaW5kZXgubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQXdDO0FBQ1I7QUFDRTtBQUNBOztBQUVsQztBQUNBLGlCQUFpQiwyQ0FBSSxZQUFZLHlDQUFHLFlBQVksMkNBQUk7QUFDcEQ7QUFDQSxZQUFZLDJDQUFJO0FBQ2hCLG1CQUFtQiwyQ0FBSTtBQUN2QjtBQUNBLGlCQUFpQiwyQ0FBSTtBQUNyQixtQkFBbUIsMkNBQUk7QUFDdkI7QUFDQTtBQUNBLG1CQUFtQix5Q0FBRztBQUN0QjtBQUNBLEtBQUs7QUFDTDtBQUNBLGVBQWUsb0RBQVE7QUFDdkI7QUFDQTtBQUNBLGtCQUFrQiwyQ0FBSTtBQUN0QixrQkFBa0IsMkNBQUk7QUFDdEIsS0FBSztBQUNMOztBQUVpQiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3ZhbHVlL3R5cGVzL2NvbG9yL2luZGV4Lm1qcz85MTY3Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU3RyaW5nIH0gZnJvbSAnLi4vdXRpbHMubWpzJztcbmltcG9ydCB7IGhleCB9IGZyb20gJy4vaGV4Lm1qcyc7XG5pbXBvcnQgeyBoc2xhIH0gZnJvbSAnLi9oc2xhLm1qcyc7XG5pbXBvcnQgeyByZ2JhIH0gZnJvbSAnLi9yZ2JhLm1qcyc7XG5cbmNvbnN0IGNvbG9yID0ge1xuICAgIHRlc3Q6ICh2KSA9PiByZ2JhLnRlc3QodikgfHwgaGV4LnRlc3QodikgfHwgaHNsYS50ZXN0KHYpLFxuICAgIHBhcnNlOiAodikgPT4ge1xuICAgICAgICBpZiAocmdiYS50ZXN0KHYpKSB7XG4gICAgICAgICAgICByZXR1cm4gcmdiYS5wYXJzZSh2KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChoc2xhLnRlc3QodikpIHtcbiAgICAgICAgICAgIHJldHVybiBoc2xhLnBhcnNlKHYpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGhleC5wYXJzZSh2KTtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgdHJhbnNmb3JtOiAodikgPT4ge1xuICAgICAgICByZXR1cm4gaXNTdHJpbmcodilcbiAgICAgICAgICAgID8gdlxuICAgICAgICAgICAgOiB2Lmhhc093blByb3BlcnR5KFwicmVkXCIpXG4gICAgICAgICAgICAgICAgPyByZ2JhLnRyYW5zZm9ybSh2KVxuICAgICAgICAgICAgICAgIDogaHNsYS50cmFuc2Zvcm0odik7XG4gICAgfSxcbn07XG5cbmV4cG9ydCB7IGNvbG9yIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs":
|
||
/*!***********************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs ***!
|
||
\***********************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ rgbUnit: function() { return /* binding */ rgbUnit; },\n/* harmony export */ rgba: function() { return /* binding */ rgba; }\n/* harmony export */ });\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n/* harmony import */ var _numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/utils.mjs\");\n\n\n\n\n\nconst clampRgbUnit = (v) => (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_0__.clamp)(0, 255, v);\nconst rgbUnit = {\n ..._numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.number,\n transform: (v) => Math.round(clampRgbUnit(v)),\n};\nconst rgba = {\n test: (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_2__.isColorString)(\"rgb\", \"red\"),\n parse: (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_2__.splitColor)(\"red\", \"green\", \"blue\"),\n transform: ({ red, green, blue, alpha: alpha$1 = 1 }) => \"rgba(\" +\n rgbUnit.transform(red) +\n \", \" +\n rgbUnit.transform(green) +\n \", \" +\n rgbUnit.transform(blue) +\n \", \" +\n (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_3__.sanitize)(_numbers_index_mjs__WEBPACK_IMPORTED_MODULE_1__.alpha.transform(alpha$1)) +\n \")\",\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29sb3IvcmdiYS5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQWlEO0FBQ0k7QUFDYjtBQUNnQjs7QUFFeEQsNEJBQTRCLHVEQUFLO0FBQ2pDO0FBQ0EsT0FBTyxzREFBTTtBQUNiO0FBQ0E7QUFDQTtBQUNBLFVBQVUseURBQWE7QUFDdkIsV0FBVyxzREFBVTtBQUNyQixrQkFBa0Isc0NBQXNDO0FBQ3hEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQVEsb0RBQVEsQ0FBQyxxREFBSztBQUN0QjtBQUNBOztBQUV5QiIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3ZhbHVlL3R5cGVzL2NvbG9yL3JnYmEubWpzPzliYmQiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xhbXAgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFtcC5tanMnO1xuaW1wb3J0IHsgbnVtYmVyLCBhbHBoYSB9IGZyb20gJy4uL251bWJlcnMvaW5kZXgubWpzJztcbmltcG9ydCB7IHNhbml0aXplIH0gZnJvbSAnLi4vdXRpbHMubWpzJztcbmltcG9ydCB7IGlzQ29sb3JTdHJpbmcsIHNwbGl0Q29sb3IgfSBmcm9tICcuL3V0aWxzLm1qcyc7XG5cbmNvbnN0IGNsYW1wUmdiVW5pdCA9ICh2KSA9PiBjbGFtcCgwLCAyNTUsIHYpO1xuY29uc3QgcmdiVW5pdCA9IHtcbiAgICAuLi5udW1iZXIsXG4gICAgdHJhbnNmb3JtOiAodikgPT4gTWF0aC5yb3VuZChjbGFtcFJnYlVuaXQodikpLFxufTtcbmNvbnN0IHJnYmEgPSB7XG4gICAgdGVzdDogaXNDb2xvclN0cmluZyhcInJnYlwiLCBcInJlZFwiKSxcbiAgICBwYXJzZTogc3BsaXRDb2xvcihcInJlZFwiLCBcImdyZWVuXCIsIFwiYmx1ZVwiKSxcbiAgICB0cmFuc2Zvcm06ICh7IHJlZCwgZ3JlZW4sIGJsdWUsIGFscGhhOiBhbHBoYSQxID0gMSB9KSA9PiBcInJnYmEoXCIgK1xuICAgICAgICByZ2JVbml0LnRyYW5zZm9ybShyZWQpICtcbiAgICAgICAgXCIsIFwiICtcbiAgICAgICAgcmdiVW5pdC50cmFuc2Zvcm0oZ3JlZW4pICtcbiAgICAgICAgXCIsIFwiICtcbiAgICAgICAgcmdiVW5pdC50cmFuc2Zvcm0oYmx1ZSkgK1xuICAgICAgICBcIiwgXCIgK1xuICAgICAgICBzYW5pdGl6ZShhbHBoYS50cmFuc2Zvcm0oYWxwaGEkMSkpICtcbiAgICAgICAgXCIpXCIsXG59O1xuXG5leHBvcnQgeyByZ2JVbml0LCByZ2JhIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/rgba.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/utils.mjs":
|
||
/*!************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/color/utils.mjs ***!
|
||
\************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isColorString: function() { return /* binding */ isColorString; },\n/* harmony export */ splitColor: function() { return /* binding */ splitColor; }\n/* harmony export */ });\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n\n\n/**\n * Returns true if the provided string is a color, ie rgba(0,0,0,0) or #000,\n * but false if a number or multiple colors\n */\nconst isColorString = (type, testProp) => (v) => {\n return Boolean(((0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isString)(v) && _utils_mjs__WEBPACK_IMPORTED_MODULE_0__.singleColorRegex.test(v) && v.startsWith(type)) ||\n (testProp && Object.prototype.hasOwnProperty.call(v, testProp)));\n};\nconst splitColor = (aName, bName, cName) => (v) => {\n if (!(0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isString)(v))\n return v;\n const [a, b, c, alpha] = v.match(_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.floatRegex);\n return {\n [aName]: parseFloat(a),\n [bName]: parseFloat(b),\n [cName]: parseFloat(c),\n alpha: alpha !== undefined ? parseFloat(alpha) : 1,\n };\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29sb3IvdXRpbHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFzRTs7QUFFdEU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixvREFBUSxPQUFPLHdEQUFnQjtBQUNuRDtBQUNBO0FBQ0E7QUFDQSxTQUFTLG9EQUFRO0FBQ2pCO0FBQ0EscUNBQXFDLGtEQUFVO0FBQy9DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVxQyIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3ZhbHVlL3R5cGVzL2NvbG9yL3V0aWxzLm1qcz82YTkwIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzU3RyaW5nLCBzaW5nbGVDb2xvclJlZ2V4LCBmbG9hdFJlZ2V4IH0gZnJvbSAnLi4vdXRpbHMubWpzJztcblxuLyoqXG4gKiBSZXR1cm5zIHRydWUgaWYgdGhlIHByb3ZpZGVkIHN0cmluZyBpcyBhIGNvbG9yLCBpZSByZ2JhKDAsMCwwLDApIG9yICMwMDAsXG4gKiBidXQgZmFsc2UgaWYgYSBudW1iZXIgb3IgbXVsdGlwbGUgY29sb3JzXG4gKi9cbmNvbnN0IGlzQ29sb3JTdHJpbmcgPSAodHlwZSwgdGVzdFByb3ApID0+ICh2KSA9PiB7XG4gICAgcmV0dXJuIEJvb2xlYW4oKGlzU3RyaW5nKHYpICYmIHNpbmdsZUNvbG9yUmVnZXgudGVzdCh2KSAmJiB2LnN0YXJ0c1dpdGgodHlwZSkpIHx8XG4gICAgICAgICh0ZXN0UHJvcCAmJiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodiwgdGVzdFByb3ApKSk7XG59O1xuY29uc3Qgc3BsaXRDb2xvciA9IChhTmFtZSwgYk5hbWUsIGNOYW1lKSA9PiAodikgPT4ge1xuICAgIGlmICghaXNTdHJpbmcodikpXG4gICAgICAgIHJldHVybiB2O1xuICAgIGNvbnN0IFthLCBiLCBjLCBhbHBoYV0gPSB2Lm1hdGNoKGZsb2F0UmVnZXgpO1xuICAgIHJldHVybiB7XG4gICAgICAgIFthTmFtZV06IHBhcnNlRmxvYXQoYSksXG4gICAgICAgIFtiTmFtZV06IHBhcnNlRmxvYXQoYiksXG4gICAgICAgIFtjTmFtZV06IHBhcnNlRmxvYXQoYyksXG4gICAgICAgIGFscGhhOiBhbHBoYSAhPT0gdW5kZWZpbmVkID8gcGFyc2VGbG9hdChhbHBoYSkgOiAxLFxuICAgIH07XG59O1xuXG5leHBvcnQgeyBpc0NvbG9yU3RyaW5nLCBzcGxpdENvbG9yIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/filter.mjs":
|
||
/*!***************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/complex/filter.mjs ***!
|
||
\***************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ filter: function() { return /* binding */ filter; }\n/* harmony export */ });\n/* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n\n\n\n/**\n * Properties that should default to 1 or 100%\n */\nconst maxDefaults = new Set([\"brightness\", \"contrast\", \"saturate\", \"opacity\"]);\nfunction applyDefaultFilter(v) {\n const [name, value] = v.slice(0, -1).split(\"(\");\n if (name === \"drop-shadow\")\n return v;\n const [number] = value.match(_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.floatRegex) || [];\n if (!number)\n return v;\n const unit = value.replace(number, \"\");\n let defaultValue = maxDefaults.has(name) ? 1 : 0;\n if (number !== value)\n defaultValue *= 100;\n return name + \"(\" + defaultValue + unit + \")\";\n}\nconst functionRegex = /([a-z-]*)\\(.*?\\)/g;\nconst filter = {\n ..._index_mjs__WEBPACK_IMPORTED_MODULE_1__.complex,\n getAnimatableNone: (v) => {\n const functions = v.match(functionRegex);\n return functions ? functions.map(applyDefaultFilter).join(\" \") : v;\n },\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29tcGxleC9maWx0ZXIubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUFzQztBQUNJOztBQUUxQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLGtEQUFVO0FBQzNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTywrQ0FBTztBQUNkO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDs7QUFFa0IiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy92YWx1ZS90eXBlcy9jb21wbGV4L2ZpbHRlci5tanM/NzZlNyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wbGV4IH0gZnJvbSAnLi9pbmRleC5tanMnO1xuaW1wb3J0IHsgZmxvYXRSZWdleCB9IGZyb20gJy4uL3V0aWxzLm1qcyc7XG5cbi8qKlxuICogUHJvcGVydGllcyB0aGF0IHNob3VsZCBkZWZhdWx0IHRvIDEgb3IgMTAwJVxuICovXG5jb25zdCBtYXhEZWZhdWx0cyA9IG5ldyBTZXQoW1wiYnJpZ2h0bmVzc1wiLCBcImNvbnRyYXN0XCIsIFwic2F0dXJhdGVcIiwgXCJvcGFjaXR5XCJdKTtcbmZ1bmN0aW9uIGFwcGx5RGVmYXVsdEZpbHRlcih2KSB7XG4gICAgY29uc3QgW25hbWUsIHZhbHVlXSA9IHYuc2xpY2UoMCwgLTEpLnNwbGl0KFwiKFwiKTtcbiAgICBpZiAobmFtZSA9PT0gXCJkcm9wLXNoYWRvd1wiKVxuICAgICAgICByZXR1cm4gdjtcbiAgICBjb25zdCBbbnVtYmVyXSA9IHZhbHVlLm1hdGNoKGZsb2F0UmVnZXgpIHx8IFtdO1xuICAgIGlmICghbnVtYmVyKVxuICAgICAgICByZXR1cm4gdjtcbiAgICBjb25zdCB1bml0ID0gdmFsdWUucmVwbGFjZShudW1iZXIsIFwiXCIpO1xuICAgIGxldCBkZWZhdWx0VmFsdWUgPSBtYXhEZWZhdWx0cy5oYXMobmFtZSkgPyAxIDogMDtcbiAgICBpZiAobnVtYmVyICE9PSB2YWx1ZSlcbiAgICAgICAgZGVmYXVsdFZhbHVlICo9IDEwMDtcbiAgICByZXR1cm4gbmFtZSArIFwiKFwiICsgZGVmYXVsdFZhbHVlICsgdW5pdCArIFwiKVwiO1xufVxuY29uc3QgZnVuY3Rpb25SZWdleCA9IC8oW2Etei1dKilcXCguKj9cXCkvZztcbmNvbnN0IGZpbHRlciA9IHtcbiAgICAuLi5jb21wbGV4LFxuICAgIGdldEFuaW1hdGFibGVOb25lOiAodikgPT4ge1xuICAgICAgICBjb25zdCBmdW5jdGlvbnMgPSB2Lm1hdGNoKGZ1bmN0aW9uUmVnZXgpO1xuICAgICAgICByZXR1cm4gZnVuY3Rpb25zID8gZnVuY3Rpb25zLm1hcChhcHBseURlZmF1bHRGaWx0ZXIpLmpvaW4oXCIgXCIpIDogdjtcbiAgICB9LFxufTtcblxuZXhwb3J0IHsgZmlsdGVyIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/filter.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/complex/index.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ analyseComplexValue: function() { return /* binding */ analyseComplexValue; },\n/* harmony export */ complex: function() { return /* binding */ complex; }\n/* harmony export */ });\n/* harmony import */ var _render_dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../render/dom/utils/is-css-variable.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs\");\n/* harmony import */ var _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../utils/noop.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/noop.mjs\");\n/* harmony import */ var _color_index_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../color/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/color/index.mjs\");\n/* harmony import */ var _numbers_index_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../numbers/index.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\");\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n\n\n\n\n\n\nfunction test(v) {\n var _a, _b;\n return (isNaN(v) &&\n (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isString)(v) &&\n (((_a = v.match(_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.floatRegex)) === null || _a === void 0 ? void 0 : _a.length) || 0) +\n (((_b = v.match(_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.colorRegex)) === null || _b === void 0 ? void 0 : _b.length) || 0) >\n 0);\n}\nconst cssVarTokeniser = {\n regex: _render_dom_utils_is_css_variable_mjs__WEBPACK_IMPORTED_MODULE_1__.cssVariableRegex,\n countKey: \"Vars\",\n token: \"${v}\",\n parse: _utils_noop_mjs__WEBPACK_IMPORTED_MODULE_2__.noop,\n};\nconst colorTokeniser = {\n regex: _utils_mjs__WEBPACK_IMPORTED_MODULE_0__.colorRegex,\n countKey: \"Colors\",\n token: \"${c}\",\n parse: _color_index_mjs__WEBPACK_IMPORTED_MODULE_3__.color.parse,\n};\nconst numberTokeniser = {\n regex: _utils_mjs__WEBPACK_IMPORTED_MODULE_0__.floatRegex,\n countKey: \"Numbers\",\n token: \"${n}\",\n parse: _numbers_index_mjs__WEBPACK_IMPORTED_MODULE_4__.number.parse,\n};\nfunction tokenise(info, { regex, countKey, token, parse }) {\n const matches = info.tokenised.match(regex);\n if (!matches)\n return;\n info[\"num\" + countKey] = matches.length;\n info.tokenised = info.tokenised.replace(regex, token);\n info.values.push(...matches.map(parse));\n}\nfunction analyseComplexValue(value) {\n const originalValue = value.toString();\n const info = {\n value: originalValue,\n tokenised: originalValue,\n values: [],\n numVars: 0,\n numColors: 0,\n numNumbers: 0,\n };\n if (info.value.includes(\"var(--\"))\n tokenise(info, cssVarTokeniser);\n tokenise(info, colorTokeniser);\n tokenise(info, numberTokeniser);\n return info;\n}\nfunction parseComplexValue(v) {\n return analyseComplexValue(v).values;\n}\nfunction createTransformer(source) {\n const { values, numColors, numVars, tokenised } = analyseComplexValue(source);\n const numValues = values.length;\n return (v) => {\n let output = tokenised;\n for (let i = 0; i < numValues; i++) {\n if (i < numVars) {\n output = output.replace(cssVarTokeniser.token, v[i]);\n }\n else if (i < numVars + numColors) {\n output = output.replace(colorTokeniser.token, _color_index_mjs__WEBPACK_IMPORTED_MODULE_3__.color.transform(v[i]));\n }\n else {\n output = output.replace(numberTokeniser.token, (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.sanitize)(v[i]));\n }\n }\n return output;\n };\n}\nconst convertNumbersToZero = (v) => typeof v === \"number\" ? 0 : v;\nfunction getAnimatableNone(v) {\n const parsed = parseComplexValue(v);\n const transformer = createTransformer(v);\n return transformer(parsed.map(convertNumbersToZero));\n}\nconst complex = {\n test,\n parse: parseComplexValue,\n createTransformer,\n getAnimatableNone,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29tcGxleC9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFpRjtBQUNsQztBQUNKO0FBQ0c7QUFDNEI7O0FBRTFFO0FBQ0E7QUFDQTtBQUNBLFFBQVEsb0RBQVE7QUFDaEIsd0JBQXdCLGtEQUFVO0FBQ2xDLDRCQUE0QixrREFBVTtBQUN0QztBQUNBO0FBQ0E7QUFDQSxXQUFXLG1GQUFnQjtBQUMzQjtBQUNBLGNBQWMsRUFBRTtBQUNoQixXQUFXLGlEQUFJO0FBQ2Y7QUFDQTtBQUNBLFdBQVcsa0RBQVU7QUFDckI7QUFDQSxjQUFjLEVBQUU7QUFDaEIsV0FBVyxtREFBSztBQUNoQjtBQUNBO0FBQ0EsV0FBVyxrREFBVTtBQUNyQjtBQUNBLGNBQWMsRUFBRTtBQUNoQixXQUFXLHNEQUFNO0FBQ2pCO0FBQ0EsMEJBQTBCLCtCQUErQjtBQUN6RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxZQUFZLHdDQUF3QztBQUNwRDtBQUNBO0FBQ0E7QUFDQSx3QkFBd0IsZUFBZTtBQUN2QztBQUNBO0FBQ0E7QUFDQTtBQUNBLDhEQUE4RCxtREFBSztBQUNuRTtBQUNBO0FBQ0EsK0RBQStELG9EQUFRO0FBQ3ZFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRXdDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvY29tcGxleC9pbmRleC5tanM/YjIxMyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3NWYXJpYWJsZVJlZ2V4IH0gZnJvbSAnLi4vLi4vLi4vcmVuZGVyL2RvbS91dGlscy9pcy1jc3MtdmFyaWFibGUubWpzJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuLi8uLi8uLi91dGlscy9ub29wLm1qcyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJy4uL2NvbG9yL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBudW1iZXIgfSBmcm9tICcuLi9udW1iZXJzL2luZGV4Lm1qcyc7XG5pbXBvcnQgeyBjb2xvclJlZ2V4LCBmbG9hdFJlZ2V4LCBpc1N0cmluZywgc2FuaXRpemUgfSBmcm9tICcuLi91dGlscy5tanMnO1xuXG5mdW5jdGlvbiB0ZXN0KHYpIHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIHJldHVybiAoaXNOYU4odikgJiZcbiAgICAgICAgaXNTdHJpbmcodikgJiZcbiAgICAgICAgKCgoX2EgPSB2Lm1hdGNoKGZsb2F0UmVnZXgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubGVuZ3RoKSB8fCAwKSArXG4gICAgICAgICAgICAoKChfYiA9IHYubWF0Y2goY29sb3JSZWdleCkpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5sZW5ndGgpIHx8IDApID5cbiAgICAgICAgICAgIDApO1xufVxuY29uc3QgY3NzVmFyVG9rZW5pc2VyID0ge1xuICAgIHJlZ2V4OiBjc3NWYXJpYWJsZVJlZ2V4LFxuICAgIGNvdW50S2V5OiBcIlZhcnNcIixcbiAgICB0b2tlbjogXCIke3Z9XCIsXG4gICAgcGFyc2U6IG5vb3AsXG59O1xuY29uc3QgY29sb3JUb2tlbmlzZXIgPSB7XG4gICAgcmVnZXg6IGNvbG9yUmVnZXgsXG4gICAgY291bnRLZXk6IFwiQ29sb3JzXCIsXG4gICAgdG9rZW46IFwiJHtjfVwiLFxuICAgIHBhcnNlOiBjb2xvci5wYXJzZSxcbn07XG5jb25zdCBudW1iZXJUb2tlbmlzZXIgPSB7XG4gICAgcmVnZXg6IGZsb2F0UmVnZXgsXG4gICAgY291bnRLZXk6IFwiTnVtYmVyc1wiLFxuICAgIHRva2VuOiBcIiR7bn1cIixcbiAgICBwYXJzZTogbnVtYmVyLnBhcnNlLFxufTtcbmZ1bmN0aW9uIHRva2VuaXNlKGluZm8sIHsgcmVnZXgsIGNvdW50S2V5LCB0b2tlbiwgcGFyc2UgfSkge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBpbmZvLnRva2VuaXNlZC5tYXRjaChyZWdleCk7XG4gICAgaWYgKCFtYXRjaGVzKVxuICAgICAgICByZXR1cm47XG4gICAgaW5mb1tcIm51bVwiICsgY291bnRLZXldID0gbWF0Y2hlcy5sZW5ndGg7XG4gICAgaW5mby50b2tlbmlzZWQgPSBpbmZvLnRva2VuaXNlZC5yZXBsYWNlKHJlZ2V4LCB0b2tlbik7XG4gICAgaW5mby52YWx1ZXMucHVzaCguLi5tYXRjaGVzLm1hcChwYXJzZSkpO1xufVxuZnVuY3Rpb24gYW5hbHlzZUNvbXBsZXhWYWx1ZSh2YWx1ZSkge1xuICAgIGNvbnN0IG9yaWdpbmFsVmFsdWUgPSB2YWx1ZS50b1N0cmluZygpO1xuICAgIGNvbnN0IGluZm8gPSB7XG4gICAgICAgIHZhbHVlOiBvcmlnaW5hbFZhbHVlLFxuICAgICAgICB0b2tlbmlzZWQ6IG9yaWdpbmFsVmFsdWUsXG4gICAgICAgIHZhbHVlczogW10sXG4gICAgICAgIG51bVZhcnM6IDAsXG4gICAgICAgIG51bUNvbG9yczogMCxcbiAgICAgICAgbnVtTnVtYmVyczogMCxcbiAgICB9O1xuICAgIGlmIChpbmZvLnZhbHVlLmluY2x1ZGVzKFwidmFyKC0tXCIpKVxuICAgICAgICB0b2tlbmlzZShpbmZvLCBjc3NWYXJUb2tlbmlzZXIpO1xuICAgIHRva2VuaXNlKGluZm8sIGNvbG9yVG9rZW5pc2VyKTtcbiAgICB0b2tlbmlzZShpbmZvLCBudW1iZXJUb2tlbmlzZXIpO1xuICAgIHJldHVybiBpbmZvO1xufVxuZnVuY3Rpb24gcGFyc2VDb21wbGV4VmFsdWUodikge1xuICAgIHJldHVybiBhbmFseXNlQ29tcGxleFZhbHVlKHYpLnZhbHVlcztcbn1cbmZ1bmN0aW9uIGNyZWF0ZVRyYW5zZm9ybWVyKHNvdXJjZSkge1xuICAgIGNvbnN0IHsgdmFsdWVzLCBudW1Db2xvcnMsIG51bVZhcnMsIHRva2VuaXNlZCB9ID0gYW5hbHlzZUNvbXBsZXhWYWx1ZShzb3VyY2UpO1xuICAgIGNvbnN0IG51bVZhbHVlcyA9IHZhbHVlcy5sZW5ndGg7XG4gICAgcmV0dXJuICh2KSA9PiB7XG4gICAgICAgIGxldCBvdXRwdXQgPSB0b2tlbmlzZWQ7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtVmFsdWVzOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChpIDwgbnVtVmFycykge1xuICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKGNzc1ZhclRva2VuaXNlci50b2tlbiwgdltpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChpIDwgbnVtVmFycyArIG51bUNvbG9ycykge1xuICAgICAgICAgICAgICAgIG91dHB1dCA9IG91dHB1dC5yZXBsYWNlKGNvbG9yVG9rZW5pc2VyLnRva2VuLCBjb2xvci50cmFuc2Zvcm0odltpXSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LnJlcGxhY2UobnVtYmVyVG9rZW5pc2VyLnRva2VuLCBzYW5pdGl6ZSh2W2ldKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG91dHB1dDtcbiAgICB9O1xufVxuY29uc3QgY29udmVydE51bWJlcnNUb1plcm8gPSAodikgPT4gdHlwZW9mIHYgPT09IFwibnVtYmVyXCIgPyAwIDogdjtcbmZ1bmN0aW9uIGdldEFuaW1hdGFibGVOb25lKHYpIHtcbiAgICBjb25zdCBwYXJzZWQgPSBwYXJzZUNvbXBsZXhWYWx1ZSh2KTtcbiAgICBjb25zdCB0cmFuc2Zvcm1lciA9IGNyZWF0ZVRyYW5zZm9ybWVyKHYpO1xuICAgIHJldHVybiB0cmFuc2Zvcm1lcihwYXJzZWQubWFwKGNvbnZlcnROdW1iZXJzVG9aZXJvKSk7XG59XG5jb25zdCBjb21wbGV4ID0ge1xuICAgIHRlc3QsXG4gICAgcGFyc2U6IHBhcnNlQ29tcGxleFZhbHVlLFxuICAgIGNyZWF0ZVRyYW5zZm9ybWVyLFxuICAgIGdldEFuaW1hdGFibGVOb25lLFxufTtcblxuZXhwb3J0IHsgYW5hbHlzZUNvbXBsZXhWYWx1ZSwgY29tcGxleCB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/complex/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ alpha: function() { return /* binding */ alpha; },\n/* harmony export */ number: function() { return /* binding */ number; },\n/* harmony export */ scale: function() { return /* binding */ scale; }\n/* harmony export */ });\n/* harmony import */ var _utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../utils/clamp.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/clamp.mjs\");\n\n\nconst number = {\n test: (v) => typeof v === \"number\",\n parse: parseFloat,\n transform: (v) => v,\n};\nconst alpha = {\n ...number,\n transform: (v) => (0,_utils_clamp_mjs__WEBPACK_IMPORTED_MODULE_0__.clamp)(0, 1, v),\n};\nconst scale = {\n ...number,\n default: 1,\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvbnVtYmVycy9pbmRleC5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFpRDs7QUFFakQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxzQkFBc0IsdURBQUs7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFZ0MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy92YWx1ZS90eXBlcy9udW1iZXJzL2luZGV4Lm1qcz9mNDUxIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsYW1wIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhbXAubWpzJztcblxuY29uc3QgbnVtYmVyID0ge1xuICAgIHRlc3Q6ICh2KSA9PiB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIixcbiAgICBwYXJzZTogcGFyc2VGbG9hdCxcbiAgICB0cmFuc2Zvcm06ICh2KSA9PiB2LFxufTtcbmNvbnN0IGFscGhhID0ge1xuICAgIC4uLm51bWJlcixcbiAgICB0cmFuc2Zvcm06ICh2KSA9PiBjbGFtcCgwLCAxLCB2KSxcbn07XG5jb25zdCBzY2FsZSA9IHtcbiAgICAuLi5udW1iZXIsXG4gICAgZGVmYXVsdDogMSxcbn07XG5cbmV4cG9ydCB7IGFscGhhLCBudW1iZXIsIHNjYWxlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/index.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs":
|
||
/*!**************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs ***!
|
||
\**************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ degrees: function() { return /* binding */ degrees; },\n/* harmony export */ percent: function() { return /* binding */ percent; },\n/* harmony export */ progressPercentage: function() { return /* binding */ progressPercentage; },\n/* harmony export */ px: function() { return /* binding */ px; },\n/* harmony export */ vh: function() { return /* binding */ vh; },\n/* harmony export */ vw: function() { return /* binding */ vw; }\n/* harmony export */ });\n/* harmony import */ var _utils_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\");\n\n\nconst createUnitType = (unit) => ({\n test: (v) => (0,_utils_mjs__WEBPACK_IMPORTED_MODULE_0__.isString)(v) && v.endsWith(unit) && v.split(\" \").length === 1,\n parse: parseFloat,\n transform: (v) => `${v}${unit}`,\n});\nconst degrees = createUnitType(\"deg\");\nconst percent = createUnitType(\"%\");\nconst px = createUnitType(\"px\");\nconst vh = createUnitType(\"vh\");\nconst vw = createUnitType(\"vw\");\nconst progressPercentage = {\n ...percent,\n parse: (v) => percent.parse(v) / 100,\n transform: (v) => percent.transform(v * 100),\n};\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvbnVtYmVycy91bml0cy5tanMiLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUF3Qzs7QUFFeEM7QUFDQSxpQkFBaUIsb0RBQVE7QUFDekI7QUFDQSx5QkFBeUIsRUFBRSxFQUFFLEtBQUs7QUFDbEMsQ0FBQztBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUU0RCIsInNvdXJjZXMiOlsid2VicGFjazovL19OX0UvLi9ub2RlX21vZHVsZXMvZnJhbWVyLW1vdGlvbi9kaXN0L2VzL3ZhbHVlL3R5cGVzL251bWJlcnMvdW5pdHMubWpzP2U2ZDAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTdHJpbmcgfSBmcm9tICcuLi91dGlscy5tanMnO1xuXG5jb25zdCBjcmVhdGVVbml0VHlwZSA9ICh1bml0KSA9PiAoe1xuICAgIHRlc3Q6ICh2KSA9PiBpc1N0cmluZyh2KSAmJiB2LmVuZHNXaXRoKHVuaXQpICYmIHYuc3BsaXQoXCIgXCIpLmxlbmd0aCA9PT0gMSxcbiAgICBwYXJzZTogcGFyc2VGbG9hdCxcbiAgICB0cmFuc2Zvcm06ICh2KSA9PiBgJHt2fSR7dW5pdH1gLFxufSk7XG5jb25zdCBkZWdyZWVzID0gY3JlYXRlVW5pdFR5cGUoXCJkZWdcIik7XG5jb25zdCBwZXJjZW50ID0gY3JlYXRlVW5pdFR5cGUoXCIlXCIpO1xuY29uc3QgcHggPSBjcmVhdGVVbml0VHlwZShcInB4XCIpO1xuY29uc3QgdmggPSBjcmVhdGVVbml0VHlwZShcInZoXCIpO1xuY29uc3QgdncgPSBjcmVhdGVVbml0VHlwZShcInZ3XCIpO1xuY29uc3QgcHJvZ3Jlc3NQZXJjZW50YWdlID0ge1xuICAgIC4uLnBlcmNlbnQsXG4gICAgcGFyc2U6ICh2KSA9PiBwZXJjZW50LnBhcnNlKHYpIC8gMTAwLFxuICAgIHRyYW5zZm9ybTogKHYpID0+IHBlcmNlbnQudHJhbnNmb3JtKHYgKiAxMDApLFxufTtcblxuZXhwb3J0IHsgZGVncmVlcywgcGVyY2VudCwgcHJvZ3Jlc3NQZXJjZW50YWdlLCBweCwgdmgsIHZ3IH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/numbers/units.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs":
|
||
/*!******************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/types/utils.mjs ***!
|
||
\******************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ colorRegex: function() { return /* binding */ colorRegex; },\n/* harmony export */ floatRegex: function() { return /* binding */ floatRegex; },\n/* harmony export */ isString: function() { return /* binding */ isString; },\n/* harmony export */ sanitize: function() { return /* binding */ sanitize; },\n/* harmony export */ singleColorRegex: function() { return /* binding */ singleColorRegex; }\n/* harmony export */ });\n/**\n * TODO: When we move from string as a source of truth to data models\n * everything in this folder should probably be referred to as models vs types\n */\n// If this number is a decimal, make it just five decimal places\n// to avoid exponents\nconst sanitize = (v) => Math.round(v * 100000) / 100000;\nconst floatRegex = /(-)?([\\d]*\\.?[\\d])+/g;\nconst colorRegex = /(#[0-9a-f]{3,8}|(rgb|hsl)a?\\((-?[\\d\\.]+%?[,\\s]+){2}(-?[\\d\\.]+%?)\\s*[\\,\\/]?\\s*[\\d\\.]*%?\\))/gi;\nconst singleColorRegex = /^(#[0-9a-f]{3,8}|(rgb|hsl)a?\\((-?[\\d\\.]+%?[,\\s]+){2}(-?[\\d\\.]+%?)\\s*[\\,\\/]?\\s*[\\d\\.]*%?\\))$/i;\nfunction isString(v) {\n return typeof v === \"string\";\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdHlwZXMvdXRpbHMubWpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLCtCQUErQixJQUFJLGtDQUFrQyxFQUFFO0FBQ3ZFLHNDQUFzQyxJQUFJLGtDQUFrQyxFQUFFO0FBQzlFO0FBQ0E7QUFDQTs7QUFFd0UiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9fTl9FLy4vbm9kZV9tb2R1bGVzL2ZyYW1lci1tb3Rpb24vZGlzdC9lcy92YWx1ZS90eXBlcy91dGlscy5tanM/ZTM0ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRPRE86IFdoZW4gd2UgbW92ZSBmcm9tIHN0cmluZyBhcyBhIHNvdXJjZSBvZiB0cnV0aCB0byBkYXRhIG1vZGVsc1xuICogZXZlcnl0aGluZyBpbiB0aGlzIGZvbGRlciBzaG91bGQgcHJvYmFibHkgYmUgcmVmZXJyZWQgdG8gYXMgbW9kZWxzIHZzIHR5cGVzXG4gKi9cbi8vIElmIHRoaXMgbnVtYmVyIGlzIGEgZGVjaW1hbCwgbWFrZSBpdCBqdXN0IGZpdmUgZGVjaW1hbCBwbGFjZXNcbi8vIHRvIGF2b2lkIGV4cG9uZW50c1xuY29uc3Qgc2FuaXRpemUgPSAodikgPT4gTWF0aC5yb3VuZCh2ICogMTAwMDAwKSAvIDEwMDAwMDtcbmNvbnN0IGZsb2F0UmVnZXggPSAvKC0pPyhbXFxkXSpcXC4/W1xcZF0pKy9nO1xuY29uc3QgY29sb3JSZWdleCA9IC8oI1swLTlhLWZdezMsOH18KHJnYnxoc2wpYT9cXCgoLT9bXFxkXFwuXSslP1ssXFxzXSspezJ9KC0/W1xcZFxcLl0rJT8pXFxzKltcXCxcXC9dP1xccypbXFxkXFwuXSolP1xcKSkvZ2k7XG5jb25zdCBzaW5nbGVDb2xvclJlZ2V4ID0gL14oI1swLTlhLWZdezMsOH18KHJnYnxoc2wpYT9cXCgoLT9bXFxkXFwuXSslP1ssXFxzXSspezJ9KC0/W1xcZFxcLl0rJT8pXFxzKltcXCxcXC9dP1xccypbXFxkXFwuXSolP1xcKSkkL2k7XG5mdW5jdGlvbiBpc1N0cmluZyh2KSB7XG4gICAgcmV0dXJuIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiO1xufVxuXG5leHBvcnQgeyBjb2xvclJlZ2V4LCBmbG9hdFJlZ2V4LCBpc1N0cmluZywgc2FuaXRpemUsIHNpbmdsZUNvbG9yUmVnZXggfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/types/utils.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs":
|
||
/*!*************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs ***!
|
||
\*************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isWillChangeMotionValue: function() { return /* binding */ isWillChangeMotionValue; }\n/* harmony export */ });\n/* harmony import */ var _utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\nfunction isWillChangeMotionValue(value) {\n return Boolean((0,_utils_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(value) && value.add);\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXNlLXdpbGwtY2hhbmdlL2lzLm1qcyIsIm1hcHBpbmdzIjoiOzs7OztBQUE2RDs7QUFFN0Q7QUFDQSxtQkFBbUIseUVBQWE7QUFDaEM7O0FBRW1DIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXNlLXdpbGwtY2hhbmdlL2lzLm1qcz8yMmMzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTW90aW9uVmFsdWUgfSBmcm9tICcuLi91dGlscy9pcy1tb3Rpb24tdmFsdWUubWpzJztcblxuZnVuY3Rpb24gaXNXaWxsQ2hhbmdlTW90aW9uVmFsdWUodmFsdWUpIHtcbiAgICByZXR1cm4gQm9vbGVhbihpc01vdGlvblZhbHVlKHZhbHVlKSAmJiB2YWx1ZS5hZGQpO1xufVxuXG5leHBvcnQgeyBpc1dpbGxDaGFuZ2VNb3Rpb25WYWx1ZSB9O1xuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/use-will-change/is.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs":
|
||
/*!****************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs ***!
|
||
\****************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ isMotionValue: function() { return /* binding */ isMotionValue; }\n/* harmony export */ });\nconst isMotionValue = (value) => Boolean(value && value.getVelocity);\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXRpbHMvaXMtbW90aW9uLXZhbHVlLm1qcyIsIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBRXlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXRpbHMvaXMtbW90aW9uLXZhbHVlLm1qcz85ZmIxIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGlzTW90aW9uVmFsdWUgPSAodmFsdWUpID0+IEJvb2xlYW4odmFsdWUgJiYgdmFsdWUuZ2V0VmVsb2NpdHkpO1xuXG5leHBvcnQgeyBpc01vdGlvblZhbHVlIH07XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\n"));
|
||
|
||
/***/ }),
|
||
|
||
/***/ "(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs":
|
||
/*!*********************************************************************************!*\
|
||
!*** ./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs ***!
|
||
\*********************************************************************************/
|
||
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
||
|
||
"use strict";
|
||
eval(__webpack_require__.ts("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ resolveMotionValue: function() { return /* binding */ resolveMotionValue; }\n/* harmony export */ });\n/* harmony import */ var _utils_resolve_value_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/resolve-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/utils/resolve-value.mjs\");\n/* harmony import */ var _is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-motion-value.mjs */ \"(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs\");\n\n\n\n/**\n * If the provided value is a MotionValue, this returns the actual value, otherwise just the value itself\n *\n * TODO: Remove and move to library\n */\nfunction resolveMotionValue(value) {\n const unwrappedValue = (0,_is_motion_value_mjs__WEBPACK_IMPORTED_MODULE_0__.isMotionValue)(value) ? value.get() : value;\n return (0,_utils_resolve_value_mjs__WEBPACK_IMPORTED_MODULE_1__.isCustomValue)(unwrappedValue)\n ? unwrappedValue.toValue()\n : unwrappedValue;\n}\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiKGFwcC1wYWdlcy1icm93c2VyKS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXRpbHMvcmVzb2x2ZS1tb3Rpb24tdmFsdWUubWpzIiwibWFwcGluZ3MiOiI7Ozs7OztBQUE4RDtBQUNSOztBQUV0RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsbUVBQWE7QUFDeEMsV0FBVyx1RUFBYTtBQUN4QjtBQUNBO0FBQ0E7O0FBRThCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vX05fRS8uL25vZGVfbW9kdWxlcy9mcmFtZXItbW90aW9uL2Rpc3QvZXMvdmFsdWUvdXRpbHMvcmVzb2x2ZS1tb3Rpb24tdmFsdWUubWpzPzA4NTYiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNDdXN0b21WYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL3Jlc29sdmUtdmFsdWUubWpzJztcbmltcG9ydCB7IGlzTW90aW9uVmFsdWUgfSBmcm9tICcuL2lzLW1vdGlvbi12YWx1ZS5tanMnO1xuXG4vKipcbiAqIElmIHRoZSBwcm92aWRlZCB2YWx1ZSBpcyBhIE1vdGlvblZhbHVlLCB0aGlzIHJldHVybnMgdGhlIGFjdHVhbCB2YWx1ZSwgb3RoZXJ3aXNlIGp1c3QgdGhlIHZhbHVlIGl0c2VsZlxuICpcbiAqIFRPRE86IFJlbW92ZSBhbmQgbW92ZSB0byBsaWJyYXJ5XG4gKi9cbmZ1bmN0aW9uIHJlc29sdmVNb3Rpb25WYWx1ZSh2YWx1ZSkge1xuICAgIGNvbnN0IHVud3JhcHBlZFZhbHVlID0gaXNNb3Rpb25WYWx1ZSh2YWx1ZSkgPyB2YWx1ZS5nZXQoKSA6IHZhbHVlO1xuICAgIHJldHVybiBpc0N1c3RvbVZhbHVlKHVud3JhcHBlZFZhbHVlKVxuICAgICAgICA/IHVud3JhcHBlZFZhbHVlLnRvVmFsdWUoKVxuICAgICAgICA6IHVud3JhcHBlZFZhbHVlO1xufVxuXG5leHBvcnQgeyByZXNvbHZlTW90aW9uVmFsdWUgfTtcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///(app-pages-browser)/./node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs\n"));
|
||
|
||
/***/ })
|
||
|
||
},
|
||
/******/ function(__webpack_require__) { // webpackRuntimeModules
|
||
/******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
|
||
/******/ __webpack_require__.O(0, ["main-app"], function() { return __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%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Fimage-component.js%22%2C%22ids%22%3A%5B%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fnode_modules%2Fnext%2Fdist%2Fclient%2Flink.js%22%2C%22ids%22%3A%5B%22*%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FHeader.tsx%22%2C%22ids%22%3A%5B%22Header%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fcomponents%2FNavLinks.tsx%22%2C%22ids%22%3A%5B%22NavLinks%22%5D%7D&modules=%7B%22request%22%3A%22%2FUsers%2Fsashaastiadi%2Fcode%2Fgit.ourworld.tf%2Fwww_mycelium_cloud2%2Fsrc%2Fimages%2Fqr-code.svg%22%2C%22ids%22%3A%5B%22*%22%5D%7D&server=false!"); });
|
||
/******/ var __webpack_exports__ = __webpack_require__.O();
|
||
/******/ _N_E = __webpack_exports__;
|
||
/******/ }
|
||
]); |