{ "version": 3, "sections": [ {"offset": {"line": 4, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/.env.js"],"sourcesContent":["const env = process.env = {...process.env};\n\nenv[\"NODE_ENV\"] = \"development\";\nenv[\"NEXT_PUBLIC_COSMIC_BUCKET_SLUG\"] = \"my-project-production-6f56ea50-389e-11ef-8f97-b326feeb6324\";\nenv[\"NEXT_PUBLIC_COSMIC_READ_KEY\"] = \"4oZb4tRr6YV6G9TR7usYIjDAlMAUTE3qFNQeEB8u1UtQHCCBgt\";\nenv[\"PORT\"] = \"3005\";\nenv[\"__NEXT_IMAGE_OPTS\"] = {\"deviceSizes\":[640,750,828,1080,1200,1920,2048,3840],\"imageSizes\":[16,32,48,64,96,128,256,384],\"path\":\"/_next/image\",\"loader\":\"default\",\"domains\":[\"imgix.cosmicjs.com\"],\"disableStaticImages\":false,\"minimumCacheTtl\":60,\"formats\":[\"image/avif\",\"image/webp\"],\"dangerouslyAllowSvg\":false,\"contentSecurityPolicy\":\"script-src 'none'; frame-src 'none'; sandbox;\",\"remotePatterns\":[],\"unoptimized\":false};\n"],"names":[],"mappings":";;AAAA,MAAM,MAAM,qJAAQ,MAAM;IAAC,GAAG,qJAAQ,GAAG;AAAA;AAEzC,GAAG,CAAC,WAAW,GAAG;AAClB,GAAG,CAAC,iCAAiC,GAAG;AACxC,GAAG,CAAC,8BAA8B,GAAG;AACrC,GAAG,CAAC,OAAO,GAAG;AACd,GAAG,CAAC,oBAAoB,GAAG;IAAC,eAAc;QAAC;QAAI;QAAI;QAAI;QAAK;QAAK;QAAK;QAAK;KAAK;IAAC,cAAa;QAAC;QAAG;QAAG;QAAG;QAAG;QAAG;QAAI;QAAI;KAAI;IAAC,QAAO;IAAe,UAAS;IAAU,WAAU;QAAC;KAAqB;IAAC,uBAAsB;IAAM,mBAAkB;IAAG,WAAU;QAAC;QAAa;KAAa;IAAC,uBAAsB;IAAM,yBAAwB;IAAgD,kBAAiB,EAAE;IAAC,eAAc;AAAK"}}, {"offset": {"line": 50, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 58, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/app-router-context.js"],"sourcesContent":["\"use client\";\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n0 && (module.exports = {\n CacheStates: null,\n AppRouterContext: null,\n LayoutRouterContext: null,\n GlobalLayoutRouterContext: null,\n TemplateContext: null\n});\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 CacheStates: function() {\n return CacheStates;\n },\n AppRouterContext: function() {\n return AppRouterContext;\n },\n LayoutRouterContext: function() {\n return LayoutRouterContext;\n },\n GlobalLayoutRouterContext: function() {\n return GlobalLayoutRouterContext;\n },\n TemplateContext: function() {\n return TemplateContext;\n }\n});\nconst _interop_require_default = require(\"@swc/helpers/_/_interop_require_default\");\nconst _react = /*#__PURE__*/ _interop_require_default._(require(\"react\"));\n\nvar CacheStates;\n(function(CacheStates) {\n CacheStates[\"LAZY_INITIALIZED\"] = \"LAZYINITIALIZED\";\n CacheStates[\"DATA_FETCH\"] = \"DATAFETCH\";\n CacheStates[\"READY\"] = \"READY\";\n})(CacheStates || (CacheStates = {}));\nconst AppRouterContext = _react.default.createContext(null);\nconst LayoutRouterContext = _react.default.createContext(null);\nconst GlobalLayoutRouterContext = _react.default.createContext(null);\nconst TemplateContext = _react.default.createContext(null);\nif (process.env.NODE_ENV !== \"production\") {\n AppRouterContext.displayName = \"AppRouterContext\";\n LayoutRouterContext.displayName = \"LayoutRouterContext\";\n GlobalLayoutRouterContext.displayName = \"GlobalLayoutRouterContext\";\n TemplateContext.displayName = \"TemplateContext\";\n}\n\n//# sourceMappingURL=app-router-context.js.map"],"names":[],"mappings":";;AAAA;AACA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,KAAK,CAAC,OAAO,UAAU;IACnB,aAAa;IACb,kBAAkB;IAClB,qBAAqB;IACrB,2BAA2B;IAC3B,iBAAiB;AACrB,CAAC;AACD,SAAS,QAAQ,MAAM,EAAE,GAAG;IACxB,IAAI,IAAI,QAAQ,IAAI,OAAO,eAAe,QAAQ,MAAM;QACpD,YAAY;QACZ,KAAK,GAAG,CAAC,KAAK;IAClB;AACJ;AACA,QAAQ,SAAS;IACb,aAAa;QACT,OAAO;IACX;IACA,kBAAkB;QACd,OAAO;IACX;IACA,qBAAqB;QACjB,OAAO;IACX;IACA,2BAA2B;QACvB,OAAO;IACX;IACA,iBAAiB;QACb,OAAO;IACX;AACJ;AACA,MAAM,2BAA2B;AACjC,MAAM,SAAuB,yBAAyB,EAAE;AAExD,IAAI;AACJ,CAAC,SAAS,WAAW;IACjB,WAAW,CAAC,mBAAmB,GAAG;IAClC,WAAW,CAAC,aAAa,GAAG;IAC5B,WAAW,CAAC,QAAQ,GAAG;AAC3B,CAAC,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC;AACnC,MAAM,mBAAmB,OAAO,QAAQ,cAAc;AACtD,MAAM,sBAAsB,OAAO,QAAQ,cAAc;AACzD,MAAM,4BAA4B,OAAO,QAAQ,cAAc;AAC/D,MAAM,kBAAkB,OAAO,QAAQ,cAAc;AACrD,wCAA2C;IACvC,iBAAiB,cAAc;IAC/B,oBAAoB,cAAc;IAClC,0BAA0B,cAAc;IACxC,gBAAgB,cAAc;AAClC"}}, {"offset": {"line": 113, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 117, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/hooks-client-context.js"],"sourcesContent":["\"use client\";\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n0 && (module.exports = {\n SearchParamsContext: null,\n PathnameContext: null\n});\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 SearchParamsContext: function() {\n return SearchParamsContext;\n },\n PathnameContext: function() {\n return PathnameContext;\n }\n});\nconst _react = require(\"react\");\n\nconst SearchParamsContext = (0, _react.createContext)(null);\nconst PathnameContext = (0, _react.createContext)(null);\nif (process.env.NODE_ENV !== \"production\") {\n SearchParamsContext.displayName = \"SearchParamsContext\";\n PathnameContext.displayName = \"PathnameContext\";\n}\n\n//# sourceMappingURL=hooks-client-context.js.map"],"names":[],"mappings":";;AAAA;AACA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,KAAK,CAAC,OAAO,UAAU;IACnB,qBAAqB;IACrB,iBAAiB;AACrB,CAAC;AACD,SAAS,QAAQ,MAAM,EAAE,GAAG;IACxB,IAAI,IAAI,QAAQ,IAAI,OAAO,eAAe,QAAQ,MAAM;QACpD,YAAY;QACZ,KAAK,GAAG,CAAC,KAAK;IAClB;AACJ;AACA,QAAQ,SAAS;IACb,qBAAqB;QACjB,OAAO;IACX;IACA,iBAAiB;QACb,OAAO;IACX;AACJ;AACA,MAAM,SAAS;AAEf,MAAM,sBAAsB,AAAC,CAAA,GAAG,OAAO,aAAY,EAAG;AACtD,MAAM,kBAAkB,AAAC,CAAA,GAAG,OAAO,aAAY,EAAG;AAClD,wCAA2C;IACvC,oBAAoB,cAAc;IAClC,gBAAgB,cAAc;AAClC"}}, {"offset": {"line": 149, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 153, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/server-inserted-html.js"],"sourcesContent":["\"use client\";\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n0 && (module.exports = {\n ServerInsertedHTMLContext: null,\n useServerInsertedHTML: null\n});\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 ServerInsertedHTMLContext: function() {\n return ServerInsertedHTMLContext;\n },\n useServerInsertedHTML: function() {\n return useServerInsertedHTML;\n }\n});\nconst _interop_require_wildcard = require(\"@swc/helpers/_/_interop_require_wildcard\");\nconst _react = /*#__PURE__*/ _interop_require_wildcard._(require(\"react\"));\n\nconst ServerInsertedHTMLContext = /*#__PURE__*/ _react.default.createContext(null);\nfunction useServerInsertedHTML(callback) {\n const addInsertedServerHTMLCallback = (0, _react.useContext)(ServerInsertedHTMLContext);\n // Should have no effects on client where there's no flush effects provider\n if (addInsertedServerHTMLCallback) {\n addInsertedServerHTMLCallback(callback);\n }\n}\n\n//# sourceMappingURL=server-inserted-html.js.map"],"names":[],"mappings":"AAAA;AACA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,KAAK,CAAC,OAAO,UAAU;IACnB,2BAA2B;IAC3B,uBAAuB;AAC3B,CAAC;AACD,SAAS,QAAQ,MAAM,EAAE,GAAG;IACxB,IAAI,IAAI,QAAQ,IAAI,OAAO,eAAe,QAAQ,MAAM;QACpD,YAAY;QACZ,KAAK,GAAG,CAAC,KAAK;IAClB;AACJ;AACA,QAAQ,SAAS;IACb,2BAA2B;QACvB,OAAO;IACX;IACA,uBAAuB;QACnB,OAAO;IACX;AACJ;AACA,MAAM,4BAA4B;AAClC,MAAM,SAAuB,0BAA0B,EAAE;AAEzD,MAAM,4BAA0C,OAAO,QAAQ,cAAc;AAC7E,SAAS,sBAAsB,QAAQ;IACnC,MAAM,gCAAgC,AAAC,CAAA,GAAG,OAAO,UAAS,EAAG;IAE7D,IAAI,+BAA+B;QAC/B,8BAA8B;IAClC;AACJ"}}, {"offset": {"line": 185, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 189, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/head-manager-context.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"HeadManagerContext\", {\n enumerable: true,\n get: function() {\n return HeadManagerContext;\n }\n});\nconst _interop_require_default = require(\"@swc/helpers/_/_interop_require_default\");\nconst _react = /*#__PURE__*/ _interop_require_default._(require(\"react\"));\nconst HeadManagerContext = _react.default.createContext({});\nif (process.env.NODE_ENV !== \"production\") {\n HeadManagerContext.displayName = \"HeadManagerContext\";\n}\n\n//# sourceMappingURL=head-manager-context.js.map"],"names":[],"mappings":";;AAAA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,sBAAsB;IACjD,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,MAAM,2BAA2B;AACjC,MAAM,SAAuB,yBAAyB,EAAE;AACxD,MAAM,qBAAqB,OAAO,QAAQ,cAAc,CAAC;AACzD,wCAA2C;IACvC,mBAAmB,cAAc;AACrC"}}, {"offset": {"line": 207, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 211, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js"],"sourcesContent":["/**\n * For a given page path, this function ensures that there is a leading slash.\n * If there is not a leading slash, one is added, otherwise it is noop.\n */ \"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"ensureLeadingSlash\", {\n enumerable: true,\n get: function() {\n return ensureLeadingSlash;\n }\n});\nfunction ensureLeadingSlash(path) {\n return path.startsWith(\"/\") ? path : \"/\" + path;\n}\n\n//# sourceMappingURL=ensure-leading-slash.js.map"],"names":[],"mappings":"AAGI;AACJ,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,sBAAsB;IACjD,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,SAAS,mBAAmB,IAAI;IAC5B,OAAO,KAAK,WAAW,OAAO,OAAO,MAAM;AAC/C"}}, {"offset": {"line": 224, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 228, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/lazy-dynamic/no-ssr-error.js"],"sourcesContent":["// This has to be a shared module which is shared between client component error boundary and dynamic component\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"NEXT_DYNAMIC_NO_SSR_CODE\", {\n enumerable: true,\n get: function() {\n return NEXT_DYNAMIC_NO_SSR_CODE;\n }\n});\nconst NEXT_DYNAMIC_NO_SSR_CODE = \"NEXT_DYNAMIC_NO_SSR_CODE\";\n\n//# sourceMappingURL=no-ssr-error.js.map"],"names":[],"mappings":"AACA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,4BAA4B;IACvD,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,MAAM,2BAA2B"}}, {"offset": {"line": 239, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 243, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/lazy-dynamic/dynamic-no-ssr.js"],"sourcesContent":["\"use client\";\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n0 && (module.exports = {\n suspense: null,\n NoSSR: null\n});\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 suspense: function() {\n return suspense;\n },\n NoSSR: function() {\n return NoSSR;\n }\n});\nconst _interop_require_default = require(\"@swc/helpers/_/_interop_require_default\");\nconst _react = /*#__PURE__*/ _interop_require_default._(require(\"react\"));\nconst _nossrerror = require(\"./no-ssr-error\");\n\nfunction suspense() {\n const error = new Error(_nossrerror.NEXT_DYNAMIC_NO_SSR_CODE);\n error.digest = _nossrerror.NEXT_DYNAMIC_NO_SSR_CODE;\n throw error;\n}\nfunction NoSSR(param) {\n let { children } = param;\n if (typeof window === \"undefined\") {\n suspense();\n }\n return children;\n}\n\n//# sourceMappingURL=dynamic-no-ssr.js.map"],"names":[],"mappings":"AAAA;AACA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,KAAK,CAAC,OAAO,UAAU;IACnB,UAAU;IACV,OAAO;AACX,CAAC;AACD,SAAS,QAAQ,MAAM,EAAE,GAAG;IACxB,IAAI,IAAI,QAAQ,IAAI,OAAO,eAAe,QAAQ,MAAM;QACpD,YAAY;QACZ,KAAK,GAAG,CAAC,KAAK;IAClB;AACJ;AACA,QAAQ,SAAS;IACb,UAAU;QACN,OAAO;IACX;IACA,OAAO;QACH,OAAO;IACX;AACJ;AACA,MAAM,2BAA2B;AACjC,MAAM,SAAuB,yBAAyB,EAAE;AACxD,MAAM,cAAc;AAEpB,SAAS;IACL,MAAM,QAAQ,IAAI,MAAM,YAAY;IACpC,MAAM,SAAS,YAAY;IAC3B,MAAM;AACV;AACA,SAAS,MAAM,KAAK;IAChB,IAAI,EAAE,SAAQ,EAAG,GAAG;IACpB,IAAI,OAAO,WAAW,aAAa;QAC/B;IACJ;IACA,OAAO;AACX"}}, {"offset": {"line": 281, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 285, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/router/utils/app-paths.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n0 && (module.exports = {\n normalizeAppPath: null,\n normalizeRscPath: null\n});\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 normalizeAppPath: function() {\n return normalizeAppPath;\n },\n normalizeRscPath: function() {\n return normalizeRscPath;\n }\n});\nconst _ensureleadingslash = require(\"../../page-path/ensure-leading-slash\");\nfunction normalizeAppPath(route) {\n return (0, _ensureleadingslash.ensureLeadingSlash)(route.split(\"/\").reduce((pathname, segment, index, segments)=>{\n // Empty segments are ignored.\n if (!segment) {\n return pathname;\n }\n // Groups are ignored.\n if (segment.startsWith(\"(\") && segment.endsWith(\")\")) {\n return pathname;\n }\n // Parallel segments are ignored.\n if (segment.startsWith(\"@\")) {\n return pathname;\n }\n // The last segment (if it's a leaf) should be ignored.\n if ((segment === \"page\" || segment === \"route\") && index === segments.length - 1) {\n return pathname;\n }\n return pathname + \"/\" + segment;\n }, \"\"));\n}\nfunction normalizeRscPath(pathname, enabled) {\n return enabled ? pathname.replace(/\\.rsc($|\\?)/, // $1 ensures `?` is preserved\n \"$1\") : pathname;\n}\n\n//# sourceMappingURL=app-paths.js.map"],"names":[],"mappings":"AAAA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,KAAK,CAAC,OAAO,UAAU;IACnB,kBAAkB;IAClB,kBAAkB;AACtB,CAAC;AACD,SAAS,QAAQ,MAAM,EAAE,GAAG;IACxB,IAAI,IAAI,QAAQ,IAAI,OAAO,eAAe,QAAQ,MAAM;QACpD,YAAY;QACZ,KAAK,GAAG,CAAC,KAAK;IAClB;AACJ;AACA,QAAQ,SAAS;IACb,kBAAkB;QACd,OAAO;IACX;IACA,kBAAkB;QACd,OAAO;IACX;AACJ;AACA,MAAM,sBAAsB;AAC5B,SAAS,iBAAiB,KAAK;IAC3B,OAAO,AAAC,CAAA,GAAG,oBAAoB,kBAAiB,EAAG,MAAM,MAAM,KAAK,OAAO,CAAC,UAAU,SAAS,OAAO;QAElG,IAAI,CAAC,SAAS;YACV,OAAO;QACX;QAEA,IAAI,QAAQ,WAAW,QAAQ,QAAQ,SAAS,MAAM;YAClD,OAAO;QACX;QAEA,IAAI,QAAQ,WAAW,MAAM;YACzB,OAAO;QACX;QAEA,IAAI,CAAC,YAAY,UAAU,YAAY,OAAO,KAAK,UAAU,SAAS,SAAS,GAAG;YAC9E,OAAO;QACX;QACA,OAAO,WAAW,MAAM;IAC5B,GAAG;AACP;AACA,SAAS,iBAAiB,QAAQ,EAAE,OAAO;IACvC,OAAO,UAAU,SAAS,QAAQ,eAClC,QAAQ;AACZ"}}, {"offset": {"line": 328, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 332, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/router/utils/is-bot.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"isBot\", {\n enumerable: true,\n get: function() {\n return isBot;\n }\n});\nfunction isBot(userAgent) {\n return /Googlebot|Mediapartners-Google|AdsBot-Google|googleweblight|Storebot-Google|Google-PageRenderer|Bingbot|BingPreview|Slurp|DuckDuckBot|baiduspider|yandex|sogou|LinkedInBot|bitlybot|tumblr|vkShare|quora link preview|facebookexternalhit|facebookcatalog|Twitterbot|applebot|redditbot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|ia_archiver/i.test(userAgent);\n}\n\n//# sourceMappingURL=is-bot.js.map"],"names":[],"mappings":"AAAA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,SAAS;IACpC,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,SAAS,MAAM,SAAS;IACpB,OAAO,oVAAoV,KAAK;AACpW"}}, {"offset": {"line": 345, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 349, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/router/utils/parse-path.js"],"sourcesContent":["/**\n * Given a path this function will find the pathname, query and hash and return\n * them. This is useful to parse full paths on the client side.\n * @param path A path to parse e.g. /foo/bar?id=1#hash\n */ \"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"parsePath\", {\n enumerable: true,\n get: function() {\n return parsePath;\n }\n});\nfunction parsePath(path) {\n const hashIndex = path.indexOf(\"#\");\n const queryIndex = path.indexOf(\"?\");\n const hasQuery = queryIndex > -1 && (hashIndex < 0 || queryIndex < hashIndex);\n if (hasQuery || hashIndex > -1) {\n return {\n pathname: path.substring(0, hasQuery ? queryIndex : hashIndex),\n query: hasQuery ? path.substring(queryIndex, hashIndex > -1 ? hashIndex : undefined) : \"\",\n hash: hashIndex > -1 ? path.slice(hashIndex) : \"\"\n };\n }\n return {\n pathname: path,\n query: \"\",\n hash: \"\"\n };\n}\n\n//# sourceMappingURL=parse-path.js.map"],"names":[],"mappings":"AAII;AACJ,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,aAAa;IACxC,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,SAAS,UAAU,IAAI;IACnB,MAAM,YAAY,KAAK,QAAQ;IAC/B,MAAM,aAAa,KAAK,QAAQ;IAChC,MAAM,WAAW,aAAa,CAAC,KAAK,CAAC,YAAY,KAAK,aAAa,SAAS;IAC5E,IAAI,YAAY,YAAY,CAAC,GAAG;QAC5B,OAAO;YACH,UAAU,KAAK,UAAU,GAAG,WAAW,aAAa;YACpD,OAAO,WAAW,KAAK,UAAU,YAAY,YAAY,CAAC,IAAI,YAAY,aAAa;YACvF,MAAM,YAAY,CAAC,IAAI,KAAK,MAAM,aAAa;QACnD;IACJ;IACA,OAAO;QACH,UAAU;QACV,OAAO;QACP,MAAM;IACV;AACJ"}}, {"offset": {"line": 376, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 380, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"addPathPrefix\", {\n enumerable: true,\n get: function() {\n return addPathPrefix;\n }\n});\nconst _parsepath = require(\"./parse-path\");\nfunction addPathPrefix(path, prefix) {\n if (!path.startsWith(\"/\") || !prefix) {\n return path;\n }\n const { pathname , query , hash } = (0, _parsepath.parsePath)(path);\n return \"\" + prefix + pathname + query + hash;\n}\n\n//# sourceMappingURL=add-path-prefix.js.map"],"names":[],"mappings":"AAAA;AACA,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,iBAAiB;IAC5C,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,MAAM,aAAa;AACnB,SAAS,cAAc,IAAI,EAAE,MAAM;IAC/B,IAAI,CAAC,KAAK,WAAW,QAAQ,CAAC,QAAQ;QAClC,OAAO;IACX;IACA,MAAM,EAAE,SAAQ,EAAG,MAAK,EAAG,KAAI,EAAG,GAAG,AAAC,CAAA,GAAG,WAAW,SAAQ,EAAG;IAC/D,OAAO,KAAK,SAAS,WAAW,QAAQ;AAC5C"}}, {"offset": {"line": 398, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 402, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js"],"sourcesContent":["/**\n * Removes the trailing slash for a given route or page path. Preserves the\n * root page. Examples:\n * - `/foo/bar/` -> `/foo/bar`\n * - `/foo/bar` -> `/foo/bar`\n * - `/` -> `/`\n */ \"use strict\";\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"removeTrailingSlash\", {\n enumerable: true,\n get: function() {\n return removeTrailingSlash;\n }\n});\nfunction removeTrailingSlash(route) {\n return route.replace(/\\/$/, \"\") || \"/\";\n}\n\n//# sourceMappingURL=remove-trailing-slash.js.map"],"names":[],"mappings":"AAMI;AACJ,OAAO,eAAe,SAAS,cAAc;IACzC,OAAO;AACX;AACA,OAAO,eAAe,SAAS,uBAAuB;IAClD,YAAY;IACZ,KAAK;QACD,OAAO;IACX;AACJ;AACA,SAAS,oBAAoB,KAAK;IAC9B,OAAO,MAAM,QAAQ,OAAO,OAAO;AACvC"}}, {"offset": {"line": 415, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 419, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/process/browser.js"],"sourcesContent":["(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(++a1){for(var r=1;r 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n printWarning('warn', format, args);\n }\n }\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\nvar didWarnStateUpdateForUnmountedComponent = {};\n\nfunction warnNoop(publicInstance, callerName) {\n {\n var _constructor = publicInstance.constructor;\n var componentName = _constructor && (_constructor.displayName || _constructor.name) || 'ReactClass';\n var warningKey = componentName + \".\" + callerName;\n\n if (didWarnStateUpdateForUnmountedComponent[warningKey]) {\n return;\n }\n\n error(\"Can't call %s on a component that is not yet mounted. \" + 'This is a no-op, but it might indicate a bug in your application. ' + 'Instead, assign to `this.state` directly or define a `state = {};` ' + 'class property with the desired state in the %s component.', callerName, componentName);\n\n didWarnStateUpdateForUnmountedComponent[warningKey] = true;\n }\n}\n/**\n * This is the abstract API for an update queue.\n */\n\n\nvar ReactNoopUpdateQueue = {\n /**\n * Checks whether or not this composite component is mounted.\n * @param {ReactClass} publicInstance The instance we want to test.\n * @return {boolean} True if mounted, false otherwise.\n * @protected\n * @final\n */\n isMounted: function (publicInstance) {\n return false;\n },\n\n /**\n * Forces an update. This should only be invoked when it is known with\n * certainty that we are **not** in a DOM transaction.\n *\n * You may want to call this when you know that some deeper aspect of the\n * component's state has changed but `setState` was not called.\n *\n * This will not invoke `shouldComponentUpdate`, but it will invoke\n * `componentWillUpdate` and `componentDidUpdate`.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {?function} callback Called after component is updated.\n * @param {?string} callerName name of the calling function in the public API.\n * @internal\n */\n enqueueForceUpdate: function (publicInstance, callback, callerName) {\n warnNoop(publicInstance, 'forceUpdate');\n },\n\n /**\n * Replaces all of the state. Always use this or `setState` to mutate state.\n * You should treat `this.state` as immutable.\n *\n * There is no guarantee that `this.state` will be immediately updated, so\n * accessing `this.state` after calling this method may return the old value.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {object} completeState Next state.\n * @param {?function} callback Called after component is updated.\n * @param {?string} callerName name of the calling function in the public API.\n * @internal\n */\n enqueueReplaceState: function (publicInstance, completeState, callback, callerName) {\n warnNoop(publicInstance, 'replaceState');\n },\n\n /**\n * Sets a subset of the state. This only exists because _pendingState is\n * internal. This provides a merging strategy that is not available to deep\n * properties which is confusing. TODO: Expose pendingState or don't use it\n * during the merge.\n *\n * @param {ReactClass} publicInstance The instance that should rerender.\n * @param {object} partialState Next partial state to be merged with state.\n * @param {?function} callback Called after component is updated.\n * @param {?string} Name of the calling function in the public API.\n * @internal\n */\n enqueueSetState: function (publicInstance, partialState, callback, callerName) {\n warnNoop(publicInstance, 'setState');\n }\n};\n\nvar assign = Object.assign;\n\nvar emptyObject = {};\n\n{\n Object.freeze(emptyObject);\n}\n/**\n * Base class helpers for the updating state of a component.\n */\n\n\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context; // If a component has string refs, we will assign a different object later.\n\n this.refs = emptyObject; // We initialize the default updater but the real one gets injected by the\n // renderer.\n\n this.updater = updater || ReactNoopUpdateQueue;\n}\n\nComponent.prototype.isReactComponent = {};\n/**\n * Sets a subset of the state. Always use this to mutate\n * state. You should treat `this.state` as immutable.\n *\n * There is no guarantee that `this.state` will be immediately updated, so\n * accessing `this.state` after calling this method may return the old value.\n *\n * There is no guarantee that calls to `setState` will run synchronously,\n * as they may eventually be batched together. You can provide an optional\n * callback that will be executed when the call to setState is actually\n * completed.\n *\n * When a function is provided to setState, it will be called at some point in\n * the future (not synchronously). It will be called with the up to date\n * component arguments (state, props, context). These values can be different\n * from this.* because your function may be called after receiveProps but before\n * shouldComponentUpdate, and this new state, props, and context will not yet be\n * assigned to this.\n *\n * @param {object|function} partialState Next partial state or function to\n * produce next partial state to be merged with current state.\n * @param {?function} callback Called after state is updated.\n * @final\n * @protected\n */\n\nComponent.prototype.setState = function (partialState, callback) {\n if (typeof partialState !== 'object' && typeof partialState !== 'function' && partialState != null) {\n throw new Error('setState(...): takes an object of state variables to update or a ' + 'function which returns an object of state variables.');\n }\n\n this.updater.enqueueSetState(this, partialState, callback, 'setState');\n};\n/**\n * Forces an update. This should only be invoked when it is known with\n * certainty that we are **not** in a DOM transaction.\n *\n * You may want to call this when you know that some deeper aspect of the\n * component's state has changed but `setState` was not called.\n *\n * This will not invoke `shouldComponentUpdate`, but it will invoke\n * `componentWillUpdate` and `componentDidUpdate`.\n *\n * @param {?function} callback Called after update is complete.\n * @final\n * @protected\n */\n\n\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, 'forceUpdate');\n};\n/**\n * Deprecated APIs. These APIs used to exist on classic React classes but since\n * we would like to deprecate them, we're not going to move them over to this\n * modern base class. Instead, we define a getter that warns if it's accessed.\n */\n\n\n{\n var deprecatedAPIs = {\n isMounted: ['isMounted', 'Instead, make sure to clean up subscriptions and pending requests in ' + 'componentWillUnmount to prevent memory leaks.'],\n replaceState: ['replaceState', 'Refactor your code to use setState instead (see ' + 'https://github.com/facebook/react/issues/3236).']\n };\n\n var defineDeprecationWarning = function (methodName, info) {\n Object.defineProperty(Component.prototype, methodName, {\n get: function () {\n warn('%s(...) is deprecated in plain JavaScript React classes. %s', info[0], info[1]);\n\n return undefined;\n }\n });\n };\n\n for (var fnName in deprecatedAPIs) {\n if (deprecatedAPIs.hasOwnProperty(fnName)) {\n defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);\n }\n }\n}\n\nfunction ComponentDummy() {}\n\nComponentDummy.prototype = Component.prototype;\n/**\n * Convenience component with default shallow equality check for sCU.\n */\n\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context; // If a component has string refs, we will assign a different object later.\n\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\n\nvar pureComponentPrototype = PureComponent.prototype = new ComponentDummy();\npureComponentPrototype.constructor = PureComponent; // Avoid an extra prototype jump for these methods.\n\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = true;\n\n// an immutable object with a single mutable value\nfunction createRef() {\n var refObject = {\n current: null\n };\n\n {\n Object.seal(refObject);\n }\n\n return refObject;\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\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 before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\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} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\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 if (typeof type === 'function') {\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 switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\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 case REACT_SERVER_CONTEXT_TYPE:\n {\n var context2 = type;\n return (context2.displayName || context2._globalName) + '.Provider';\n }\n\n }\n }\n\n return null;\n}\n\n// $FlowFixMe[method-unbinding]\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar RESERVED_PROPS = {\n key: true,\n ref: true,\n __self: true,\n __source: true\n};\nvar specialPropKeyWarningShown, specialPropRefWarningShown, 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 defineKeyPropWarningGetter(props, displayName) {\n var warnAboutAccessingKey = function () {\n {\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\n warnAboutAccessingKey.isReactWarning = true;\n Object.defineProperty(props, 'key', {\n get: warnAboutAccessingKey,\n configurable: true\n });\n}\n\nfunction defineRefPropWarningGetter(props, displayName) {\n var warnAboutAccessingRef = function () {\n {\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\n warnAboutAccessingRef.isReactWarning = true;\n Object.defineProperty(props, 'ref', {\n get: warnAboutAccessingRef,\n configurable: true\n });\n}\n\nfunction warnIfStringRefCannotBeAutoConverted(config) {\n {\n if (typeof config.ref === 'string' && ReactCurrentOwner.current && config.__self && ReactCurrentOwner.current.stateNode !== config.__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', componentName, config.ref);\n\n didWarnAboutStringRefs[componentName] = 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 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 // 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 }); // self and source are DEV only properties.\n\n Object.defineProperty(element, '_self', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: self\n }); // Two elements created in two different places should be considered\n // equal for testing purposes and therefore we hide it from enumeration.\n\n Object.defineProperty(element, '_source', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: source\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n}\n/**\n * Create and return a new ReactElement of the given type.\n * See https://reactjs.org/docs/react-api.html#createelement\n */\n\nfunction createElement$1(type, config, children) {\n var propName; // Reserved names are extracted\n\n var props = {};\n var key = null;\n var ref = null;\n var self = null;\n var source = null;\n\n if (config != null) {\n if (hasValidRef(config)) {\n ref = config.ref;\n\n {\n warnIfStringRefCannotBeAutoConverted(config);\n }\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n }\n\n self = config.__self === undefined ? null : config.__self;\n source = config.__source === undefined ? null : config.__source; // Remaining properties are added to a new props object\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n props[propName] = config[propName];\n }\n }\n } // Children can be more than one argument, and those are transferred onto\n // the newly allocated props object.\n\n\n var childrenLength = arguments.length - 2;\n\n if (childrenLength === 1) {\n props.children = children;\n } else if (childrenLength > 1) {\n var childArray = Array(childrenLength);\n\n for (var i = 0; i < childrenLength; i++) {\n childArray[i] = arguments[i + 2];\n }\n\n {\n if (Object.freeze) {\n Object.freeze(childArray);\n }\n }\n\n props.children = childArray;\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 {\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\n return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props);\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n var newElement = ReactElement(oldElement.type, newKey, oldElement.ref, oldElement._self, oldElement._source, oldElement._owner, oldElement.props);\n return newElement;\n}\n/**\n * Clone and return a new ReactElement using element as the starting point.\n * See https://reactjs.org/docs/react-api.html#cloneelement\n */\n\nfunction cloneElement$1(element, config, children) {\n if (element === null || element === undefined) {\n throw new Error(\"React.cloneElement(...): The argument must be a React element, but you passed \" + element + \".\");\n }\n\n var propName; // Original props are copied\n\n var props = assign({}, element.props); // Reserved names are extracted\n\n var key = element.key;\n var ref = element.ref; // Self is preserved since the owner is preserved.\n\n var self = element._self; // Source is preserved since cloneElement is unlikely to be targeted by a\n // transpiler, and the original source is probably a better indicator of the\n // true owner.\n\n var source = element._source; // Owner will be preserved, unless ref is overridden\n\n var owner = element._owner;\n\n if (config != null) {\n if (hasValidRef(config)) {\n // Silently steal the ref from the parent.\n ref = config.ref;\n owner = ReactCurrentOwner.current;\n }\n\n if (hasValidKey(config)) {\n {\n checkKeyStringCoercion(config.key);\n }\n\n key = '' + config.key;\n } // Remaining properties override existing props\n\n\n var defaultProps;\n\n if (element.type && element.type.defaultProps) {\n defaultProps = element.type.defaultProps;\n }\n\n for (propName in config) {\n if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) {\n if (config[propName] === undefined && defaultProps !== undefined) {\n // Resolve default props\n props[propName] = defaultProps[propName];\n } else {\n props[propName] = config[propName];\n }\n }\n }\n } // Children can be more than one argument, and those are transferred onto\n // the newly allocated props object.\n\n\n var childrenLength = arguments.length - 2;\n\n if (childrenLength === 1) {\n props.children = children;\n } else if (childrenLength > 1) {\n var childArray = Array(childrenLength);\n\n for (var i = 0; i < childrenLength; i++) {\n childArray[i] = arguments[i + 2];\n }\n\n props.children = childArray;\n }\n\n return ReactElement(element.type, key, ref, self, source, owner, props);\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\nfunction isValidElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\n\nvar SEPARATOR = '.';\nvar SUBSEPARATOR = ':';\n/**\n * Escape and wrap key so it is safe to use as a reactid\n *\n * @param {string} key to be escaped.\n * @return {string} the escaped key.\n */\n\nfunction escape(key) {\n var escapeRegex = /[=:]/g;\n var escaperLookup = {\n '=': '=0',\n ':': '=2'\n };\n var escapedString = key.replace(escapeRegex, function (match) {\n return escaperLookup[match];\n });\n return '$' + escapedString;\n}\n/**\n * TODO: Test that a single child and an array with one item have the same key\n * pattern.\n */\n\n\nvar didWarnAboutMaps = false;\nvar userProvidedKeyEscapeRegex = /\\/+/g;\n\nfunction escapeUserProvidedKey(text) {\n return text.replace(userProvidedKeyEscapeRegex, '$&/');\n}\n/**\n * Generate a key string that identifies a element within a set.\n *\n * @param {*} element A element that could contain a manual key.\n * @param {number} index Index that is used if a manual key is not provided.\n * @return {string}\n */\n\n\nfunction getElementKey(element, index) {\n // Do some typechecking here since we call this blindly. We want to ensure\n // that we don't block potential future ES APIs.\n if (typeof element === 'object' && element !== null && element.key != null) {\n // Explicit key\n {\n checkKeyStringCoercion(element.key);\n }\n\n return escape('' + element.key);\n } // Implicit key determined by the index in the set\n\n\n return index.toString(36);\n}\n\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n\n if (type === 'undefined' || type === 'boolean') {\n // All of the above are perceived as null.\n children = null;\n }\n\n var invokeCallback = false;\n\n if (children === null) {\n invokeCallback = true;\n } else {\n switch (type) {\n case 'string':\n case 'number':\n invokeCallback = true;\n break;\n\n case 'object':\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = true;\n }\n\n }\n }\n\n if (invokeCallback) {\n var _child = children;\n var mappedChild = callback(_child); // If it's the only child, treat the name as if it was wrapped in an array\n // so that it's consistent if the number of children grows:\n\n var childKey = nameSoFar === '' ? SEPARATOR + getElementKey(_child, 0) : nameSoFar;\n\n if (isArray(mappedChild)) {\n var escapedChildKey = '';\n\n if (childKey != null) {\n escapedChildKey = escapeUserProvidedKey(childKey) + '/';\n }\n\n mapIntoArray(mappedChild, array, escapedChildKey, '', function (c) {\n return c;\n });\n } else if (mappedChild != null) {\n if (isValidElement(mappedChild)) {\n {\n // The `if` statement here prevents auto-disabling of the safe\n // coercion ESLint rule, so we must manually disable it below.\n // $FlowFixMe[incompatible-type] Flow incorrectly thinks React.Portal doesn't have a key\n if (mappedChild.key && (!_child || _child.key !== mappedChild.key)) {\n checkKeyStringCoercion(mappedChild.key);\n }\n }\n\n mappedChild = cloneAndReplaceKey(mappedChild, // Keep both the (mapped) and old keys if they differ, just as\n // traverseAllChildren used to do for objects as children\n escapedPrefix + ( // $FlowFixMe[incompatible-type] Flow incorrectly thinks React.Portal doesn't have a key\n mappedChild.key && (!_child || _child.key !== mappedChild.key) ? escapeUserProvidedKey( // $FlowFixMe[unsafe-addition]\n '' + mappedChild.key // eslint-disable-line react-internal/safe-string-coercion\n ) + '/' : '') + childKey);\n }\n\n array.push(mappedChild);\n }\n\n return 1;\n }\n\n var child;\n var nextName;\n var subtreeCount = 0; // Count of children found in the current subtree.\n\n var nextNamePrefix = nameSoFar === '' ? SEPARATOR : nameSoFar + SUBSEPARATOR;\n\n if (isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n nextName = nextNamePrefix + getElementKey(child, i);\n subtreeCount += mapIntoArray(child, array, escapedPrefix, nextName, callback);\n }\n } else {\n var iteratorFn = getIteratorFn(children);\n\n if (typeof iteratorFn === 'function') {\n var iterableChildren = children;\n\n {\n // Warn about using Maps as children\n if (iteratorFn === iterableChildren.entries) {\n if (!didWarnAboutMaps) {\n warn('Using Maps as children is not supported. ' + 'Use an array of keyed ReactElements instead.');\n }\n\n didWarnAboutMaps = true;\n }\n }\n\n var iterator = iteratorFn.call(iterableChildren);\n var step;\n var ii = 0; // $FlowFixMe[incompatible-use] `iteratorFn` might return null according to typing.\n\n while (!(step = iterator.next()).done) {\n child = step.value;\n nextName = nextNamePrefix + getElementKey(child, ii++);\n subtreeCount += mapIntoArray(child, array, escapedPrefix, nextName, callback);\n }\n } else if (type === 'object') {\n // eslint-disable-next-line react-internal/safe-string-coercion\n var childrenString = String(children);\n throw new Error(\"Objects are not valid as a React child (found: \" + (childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString) + \"). \" + 'If you meant to render a collection of children, use an array ' + 'instead.');\n }\n }\n\n return subtreeCount;\n}\n/**\n * Maps children that are typically specified as `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenmap\n *\n * The provided mapFunction(child, index) will be called for each\n * leaf child.\n *\n * @param {?*} children Children tree container.\n * @param {function(*, int)} func The map function.\n * @param {*} context Context for mapFunction.\n * @return {object} Object containing the ordered map of results.\n */\n\n\nfunction mapChildren(children, func, context) {\n if (children == null) {\n return children;\n }\n\n var result = [];\n var count = 0;\n mapIntoArray(children, result, '', '', function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\n/**\n * Count the number of children that are typically specified as\n * `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrencount\n *\n * @param {?*} children Children tree container.\n * @return {number} The number of children.\n */\n\n\nfunction countChildren(children) {\n var n = 0;\n mapChildren(children, function () {\n n++; // Don't return anything\n });\n return n;\n}\n/**\n * Iterates through children that are typically specified as `props.children`.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenforeach\n *\n * The provided forEachFunc(child, index) will be called for each\n * leaf child.\n *\n * @param {?*} children Children tree container.\n * @param {function(*, int)} forEachFunc\n * @param {*} forEachContext Context for forEachContext.\n */\n\n\nfunction forEachChildren(children, forEachFunc, forEachContext) {\n mapChildren(children, // $FlowFixMe[missing-this-annot]\n function () {\n forEachFunc.apply(this, arguments); // Don't return anything.\n }, forEachContext);\n}\n/**\n * Flatten a children object (typically specified as `props.children`) and\n * return an array with appropriately re-keyed children.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrentoarray\n */\n\n\nfunction toArray(children) {\n return mapChildren(children, function (child) {\n return child;\n }) || [];\n}\n/**\n * Returns the first child in a collection of children and verifies that there\n * is only one child in the collection.\n *\n * See https://reactjs.org/docs/react-api.html#reactchildrenonly\n *\n * The current implementation of this function assumes that a single child gets\n * passed without a wrapper, but the purpose of this helper function is to\n * abstract away the particular structure of children.\n *\n * @param {?object} children Child collection structure.\n * @return {ReactElement} The first and only `ReactElement` contained in the\n * structure.\n */\n\n\nfunction onlyChild(children) {\n if (!isValidElement(children)) {\n throw new Error('React.Children.only expected to receive a single React element child.');\n }\n\n return children;\n}\n\nfunction createContext(defaultValue) {\n // TODO: Second argument used to be an optional `calculateChangedBits`\n // function. Warn to reserve for future use?\n var context = {\n $$typeof: REACT_CONTEXT_TYPE,\n // As a workaround to support multiple concurrent renderers, we categorize\n // some renderers as primary and others as secondary. We only expect\n // there to be two concurrent renderers at most: React Native (primary) and\n // Fabric (secondary); React DOM (primary) and React ART (secondary).\n // Secondary renderers store their context values on separate fields.\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n // Used to track how many concurrent renderers this context currently\n // supports within in a single renderer. Such as parallel server rendering.\n _threadCount: 0,\n // These are circular\n Provider: null,\n Consumer: null,\n // Add these to use same hidden class in VM as ServerContext\n _defaultValue: null,\n _globalName: null\n };\n context.Provider = {\n $$typeof: REACT_PROVIDER_TYPE,\n _context: context\n };\n var hasWarnedAboutUsingNestedContextConsumers = false;\n var hasWarnedAboutUsingConsumerProvider = false;\n var hasWarnedAboutDisplayNameOnConsumer = false;\n\n {\n // A separate object, but proxies back to the original context object for\n // backwards compatibility. It has a different $$typeof, so we can properly\n // warn for the incorrect usage of Context as a Consumer.\n var Consumer = {\n $$typeof: REACT_CONTEXT_TYPE,\n _context: context\n }; // $FlowFixMe[prop-missing]: Flow complains about not setting a value, which is intentional here\n\n Object.defineProperties(Consumer, {\n Provider: {\n get: function () {\n if (!hasWarnedAboutUsingConsumerProvider) {\n hasWarnedAboutUsingConsumerProvider = true;\n\n error('Rendering is not supported and will be removed in ' + 'a future major release. Did you mean to render instead?');\n }\n\n return context.Provider;\n },\n set: function (_Provider) {\n context.Provider = _Provider;\n }\n },\n _currentValue: {\n get: function () {\n return context._currentValue;\n },\n set: function (_currentValue) {\n context._currentValue = _currentValue;\n }\n },\n _currentValue2: {\n get: function () {\n return context._currentValue2;\n },\n set: function (_currentValue2) {\n context._currentValue2 = _currentValue2;\n }\n },\n _threadCount: {\n get: function () {\n return context._threadCount;\n },\n set: function (_threadCount) {\n context._threadCount = _threadCount;\n }\n },\n Consumer: {\n get: function () {\n if (!hasWarnedAboutUsingNestedContextConsumers) {\n hasWarnedAboutUsingNestedContextConsumers = true;\n\n error('Rendering is not supported and will be removed in ' + 'a future major release. Did you mean to render instead?');\n }\n\n return context.Consumer;\n }\n },\n displayName: {\n get: function () {\n return context.displayName;\n },\n set: function (displayName) {\n if (!hasWarnedAboutDisplayNameOnConsumer) {\n warn('Setting `displayName` on Context.Consumer has no effect. ' + \"You should set it directly on the context with Context.displayName = '%s'.\", displayName);\n\n hasWarnedAboutDisplayNameOnConsumer = true;\n }\n }\n }\n }); // $FlowFixMe[prop-missing]: Flow complains about missing properties because it doesn't understand defineProperty\n\n context.Consumer = Consumer;\n }\n\n {\n context._currentRenderer = null;\n context._currentRenderer2 = null;\n }\n\n return context;\n}\n\nvar Uninitialized = -1;\nvar Pending = 0;\nvar Resolved = 1;\nvar Rejected = 2;\n\nfunction lazyInitializer(payload) {\n if (payload._status === Uninitialized) {\n var ctor = payload._result;\n var thenable = ctor(); // Transition to the next state.\n // This might throw either because it's missing or throws. If so, we treat it\n // as still uninitialized and try again next time. Which is the same as what\n // happens if the ctor or any wrappers processing the ctor throws. This might\n // end up fixing it if the resolution was a concurrency bug.\n\n thenable.then(function (moduleObject) {\n if (payload._status === Pending || payload._status === Uninitialized) {\n // Transition to the next state.\n var resolved = payload;\n resolved._status = Resolved;\n resolved._result = moduleObject;\n }\n }, function (error) {\n if (payload._status === Pending || payload._status === Uninitialized) {\n // Transition to the next state.\n var rejected = payload;\n rejected._status = Rejected;\n rejected._result = error;\n }\n });\n\n if (payload._status === Uninitialized) {\n // In case, we're still uninitialized, then we're waiting for the thenable\n // to resolve. Set it as pending in the meantime.\n var pending = payload;\n pending._status = Pending;\n pending._result = thenable;\n }\n }\n\n if (payload._status === Resolved) {\n var moduleObject = payload._result;\n\n {\n if (moduleObject === undefined) {\n error('lazy: Expected the result of a dynamic imp' + 'ort() call. ' + 'Instead received: %s\\n\\nYour code should look like: \\n ' + // Break up imports to avoid accidentally parsing them as dependencies.\n 'const MyComponent = lazy(() => imp' + \"ort('./MyComponent'))\\n\\n\" + 'Did you accidentally put curly braces around the import?', moduleObject);\n }\n }\n\n {\n if (!('default' in moduleObject)) {\n error('lazy: Expected the result of a dynamic imp' + 'ort() call. ' + 'Instead received: %s\\n\\nYour code should look like: \\n ' + // Break up imports to avoid accidentally parsing them as dependencies.\n 'const MyComponent = lazy(() => imp' + \"ort('./MyComponent'))\", moduleObject);\n }\n }\n\n return moduleObject.default;\n } else {\n throw payload._result;\n }\n}\n\nfunction lazy(ctor) {\n var payload = {\n // We use these fields to store the result.\n _status: Uninitialized,\n _result: ctor\n };\n var lazyType = {\n $$typeof: REACT_LAZY_TYPE,\n _payload: payload,\n _init: lazyInitializer\n };\n\n {\n // In production, this would just set it on the object.\n var defaultProps;\n var propTypes; // $FlowFixMe[prop-missing]\n\n Object.defineProperties(lazyType, {\n defaultProps: {\n configurable: true,\n get: function () {\n return defaultProps;\n },\n // $FlowFixMe[missing-local-annot]\n set: function (newDefaultProps) {\n error('React.lazy(...): It is not supported to assign `defaultProps` to ' + 'a lazy component import. Either specify them where the component ' + 'is defined, or create a wrapping component around it.');\n\n defaultProps = newDefaultProps; // Match production behavior more closely:\n // $FlowFixMe[prop-missing]\n\n Object.defineProperty(lazyType, 'defaultProps', {\n enumerable: true\n });\n }\n },\n propTypes: {\n configurable: true,\n get: function () {\n return propTypes;\n },\n // $FlowFixMe[missing-local-annot]\n set: function (newPropTypes) {\n error('React.lazy(...): It is not supported to assign `propTypes` to ' + 'a lazy component import. Either specify them where the component ' + 'is defined, or create a wrapping component around it.');\n\n propTypes = newPropTypes; // Match production behavior more closely:\n // $FlowFixMe[prop-missing]\n\n Object.defineProperty(lazyType, 'propTypes', {\n enumerable: true\n });\n }\n }\n });\n }\n\n return lazyType;\n}\n\nfunction forwardRef(render) {\n {\n if (render != null && render.$$typeof === REACT_MEMO_TYPE) {\n error('forwardRef requires a render function but received a `memo` ' + 'component. Instead of forwardRef(memo(...)), use ' + 'memo(forwardRef(...)).');\n } else if (typeof render !== 'function') {\n error('forwardRef requires a render function but was given %s.', render === null ? 'null' : typeof render);\n } else {\n if (render.length !== 0 && render.length !== 2) {\n error('forwardRef render functions accept exactly two parameters: props and ref. %s', render.length === 1 ? 'Did you forget to use the ref parameter?' : 'Any additional parameter will be undefined.');\n }\n }\n\n if (render != null) {\n if (render.defaultProps != null || render.propTypes != null) {\n error('forwardRef render functions do not support propTypes or defaultProps. ' + 'Did you accidentally pass a React component?');\n }\n }\n }\n\n var elementType = {\n $$typeof: REACT_FORWARD_REF_TYPE,\n render: render\n };\n\n {\n var ownName;\n Object.defineProperty(elementType, 'displayName', {\n enumerable: false,\n configurable: true,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name; // The inner component shouldn't inherit this display name in most cases,\n // because the component may be used elsewhere.\n // But it's nice for anonymous functions to inherit the name,\n // so that our component-stack generation logic will display their frames.\n // An anonymous function generally suggests a pattern like:\n // React.forwardRef((props, ref) => {...});\n // This kind of inner function is not used elsewhere so the side effect is okay.\n\n if (!render.name && !render.displayName) {\n render.displayName = name;\n }\n }\n });\n }\n\n return elementType;\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_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || 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\nfunction memo(type, compare) {\n {\n if (!isValidElementType(type)) {\n error('memo: The first argument must be a component. Instead ' + 'received: %s', type === null ? 'null' : typeof type);\n }\n }\n\n var elementType = {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: compare === undefined ? null : compare\n };\n\n {\n var ownName;\n Object.defineProperty(elementType, 'displayName', {\n enumerable: false,\n configurable: true,\n get: function () {\n return ownName;\n },\n set: function (name) {\n ownName = name; // The inner component shouldn't inherit this display name in most cases,\n // because the component may be used elsewhere.\n // But it's nice for anonymous functions to inherit the name,\n // so that our component-stack generation logic will display their frames.\n // An anonymous function generally suggests a pattern like:\n // React.memo((props) => {...});\n // This kind of inner function is not used elsewhere so the side effect is okay.\n\n if (!type.name && !type.displayName) {\n type.displayName = name;\n }\n }\n });\n }\n\n return elementType;\n}\n\nvar UNTERMINATED = 0;\nvar TERMINATED = 1;\nvar ERRORED = 2;\n\nfunction createCacheRoot() {\n return new WeakMap();\n}\n\nfunction createCacheNode() {\n return {\n s: UNTERMINATED,\n // status, represents whether the cached computation returned a value or threw an error\n v: undefined,\n // value, either the cached result or an error, depending on s\n o: null,\n // object cache, a WeakMap where non-primitive arguments are stored\n p: null // primitive cache, a regular Map where primitive arguments are stored.\n\n };\n}\n\nfunction cache(fn) {\n return function () {\n var dispatcher = ReactCurrentCache.current;\n\n if (!dispatcher) {\n // If there is no dispatcher, then we treat this as not being cached.\n // $FlowFixMe[incompatible-call]: We don't want to use rest arguments since we transpile the code.\n return fn.apply(null, arguments);\n }\n\n var fnMap = dispatcher.getCacheForType(createCacheRoot);\n var fnNode = fnMap.get(fn);\n var cacheNode;\n\n if (fnNode === undefined) {\n cacheNode = createCacheNode();\n fnMap.set(fn, cacheNode);\n } else {\n cacheNode = fnNode;\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n var arg = arguments[i];\n\n if (typeof arg === 'function' || typeof arg === 'object' && arg !== null) {\n // Objects go into a WeakMap\n var objectCache = cacheNode.o;\n\n if (objectCache === null) {\n cacheNode.o = objectCache = new WeakMap();\n }\n\n var objectNode = objectCache.get(arg);\n\n if (objectNode === undefined) {\n cacheNode = createCacheNode();\n objectCache.set(arg, cacheNode);\n } else {\n cacheNode = objectNode;\n }\n } else {\n // Primitives go into a regular Map\n var primitiveCache = cacheNode.p;\n\n if (primitiveCache === null) {\n cacheNode.p = primitiveCache = new Map();\n }\n\n var primitiveNode = primitiveCache.get(arg);\n\n if (primitiveNode === undefined) {\n cacheNode = createCacheNode();\n primitiveCache.set(arg, cacheNode);\n } else {\n cacheNode = primitiveNode;\n }\n }\n }\n\n if (cacheNode.s === TERMINATED) {\n return cacheNode.v;\n }\n\n if (cacheNode.s === ERRORED) {\n throw cacheNode.v;\n }\n\n try {\n // $FlowFixMe[incompatible-call]: We don't want to use rest arguments since we transpile the code.\n var result = fn.apply(null, arguments);\n var terminatedNode = cacheNode;\n terminatedNode.s = TERMINATED;\n terminatedNode.v = result;\n return result;\n } catch (error) {\n // We store the first error that's thrown and rethrow it.\n var erroredNode = cacheNode;\n erroredNode.s = ERRORED;\n erroredNode.v = error;\n throw error;\n }\n };\n}\n\nfunction resolveDispatcher() {\n var dispatcher = ReactCurrentDispatcher$1.current;\n\n {\n if (dispatcher === null) {\n error('Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for' + ' one of the following reasons:\\n' + '1. You might have mismatching versions of React and the renderer (such as React DOM)\\n' + '2. You might be breaking the Rules of Hooks\\n' + '3. You might have more than one copy of React in the same app\\n' + 'See https://reactjs.org/link/invalid-hook-call for tips about how to debug and fix this problem.');\n }\n } // Will result in a null access error if accessed outside render phase. We\n // intentionally don't throw our own error because this is in a hot path.\n // Also helps ensure this is inlined.\n\n\n return dispatcher;\n}\nfunction useContext(Context) {\n var dispatcher = resolveDispatcher();\n\n {\n // TODO: add a more generic warning for invalid values.\n if (Context._context !== undefined) {\n var realContext = Context._context; // Don't deduplicate because this legitimately causes bugs\n // and nobody should be using this in existing code.\n\n if (realContext.Consumer === Context) {\n error('Calling useContext(Context.Consumer) is not supported, may cause bugs, and will be ' + 'removed in a future major release. Did you mean to call useContext(Context) instead?');\n } else if (realContext.Provider === Context) {\n error('Calling useContext(Context.Provider) is not supported. ' + 'Did you mean to call useContext(Context) instead?');\n }\n }\n }\n\n return dispatcher.useContext(Context);\n}\nfunction useState(initialState) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useState(initialState);\n}\nfunction useReducer(reducer, initialArg, init) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useReducer(reducer, initialArg, init);\n}\nfunction useRef(initialValue) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useRef(initialValue);\n}\nfunction useEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useEffect(create, deps);\n}\nfunction useInsertionEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useInsertionEffect(create, deps);\n}\nfunction useLayoutEffect(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useLayoutEffect(create, deps);\n}\nfunction useCallback(callback, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useCallback(callback, deps);\n}\nfunction useMemo(create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useMemo(create, deps);\n}\nfunction useImperativeHandle(ref, create, deps) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useImperativeHandle(ref, create, deps);\n}\nfunction useDebugValue(value, formatterFn) {\n {\n var dispatcher = resolveDispatcher();\n return dispatcher.useDebugValue(value, formatterFn);\n }\n}\nfunction useTransition() {\n var dispatcher = resolveDispatcher();\n return dispatcher.useTransition();\n}\nfunction useDeferredValue(value) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useDeferredValue(value);\n}\nfunction useId() {\n var dispatcher = resolveDispatcher();\n return dispatcher.useId();\n}\nfunction useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {\n var dispatcher = resolveDispatcher();\n return dispatcher.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n}\nfunction useCacheRefresh() {\n var dispatcher = resolveDispatcher(); // $FlowFixMe[not-a-function] This is unstable, thus optional\n\n return dispatcher.useCacheRefresh();\n}\nfunction use(usable) {\n var dispatcher = resolveDispatcher(); // $FlowFixMe[not-a-function] This is unstable, thus optional\n\n return dispatcher.use(usable);\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, source, 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\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 var control;\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 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 fn();\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 // 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 = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var 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 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 \"\"\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('')) {\n _frame = _frame.replace('', fn.displayName);\n }\n\n {\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, source, 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, source, 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, source, 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), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe[incompatible-use] This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement$1(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement$1(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement$1(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement$1(null);\n }\n }\n }\n }\n}\n\nvar REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference');\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n setExtraStackFrame(stack);\n } else {\n setExtraStackFrame(null);\n }\n }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n propTypesMisspellWarningShown = false;\n}\n\nfunction getDeclarationErrorAddendum() {\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\nfunction getSourceInfoErrorAddendum(source) {\n if (source !== undefined) {\n var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n var lineNumber = source.lineNumber;\n return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n }\n\n return '';\n}\n\nfunction getSourceInfoErrorAddendumForProps(elementProps) {\n if (elementProps !== null && elementProps !== undefined) {\n return getSourceInfoErrorAddendum(elementProps.__source);\n }\n\n return '';\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\n\n if (parentName) {\n info = \"\\n\\nCheck the top-level render call using <\" + parentName + \">.\";\n }\n }\n\n return info;\n}\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\n\nfunction validateExplicitKey(element, parentType) {\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 {\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/**\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 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 * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n {\n var type = element.type;\n\n if (type === null || type === undefined || typeof type === 'string') {\n return;\n }\n\n if (type.$$typeof === REACT_CLIENT_REFERENCE) {\n return;\n }\n\n var propTypes;\n\n if (typeof type === 'function') {\n propTypes = type.propTypes;\n } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n // Inner props are checked in the reconciler.\n type.$$typeof === REACT_MEMO_TYPE)) {\n propTypes = type.propTypes;\n } else {\n return;\n }\n\n if (propTypes) {\n // Intentionally inside to avoid triggering lazy initializers:\n var name = getComponentNameFromType(type);\n checkPropTypes(propTypes, element.props, 'prop', name, element);\n } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n var _name = getComponentNameFromType(type);\n\n error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n }\n\n if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n }\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 {\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}\nfunction createElementWithValidation(type, props, children) {\n var validType = isValidElementType(type); // 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\n if (!validType) {\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 sourceInfo = getSourceInfoErrorAddendumForProps(props);\n\n if (sourceInfo) {\n info += sourceInfo;\n } else {\n info += getDeclarationErrorAddendum();\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 {\n error('React.createElement: type is invalid -- expected a string (for ' + 'built-in components) or a class/function (for composite ' + 'components) but got: %s.%s', typeString, info);\n }\n }\n\n var element = createElement$1.apply(this, arguments); // The result can be nullish if a mock or a custom function is used.\n // TODO: Drop this when these are no longer allowed as the type argument.\n\n if (element == null) {\n return element;\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 errors.\n // We don't want exception behavior to differ between dev and prod.\n // (Rendering will throw with a helpful message and as soon as the type is\n // fixed, the key warnings will appear.)\n\n\n if (validType) {\n for (var i = 2; i < arguments.length; i++) {\n validateChildKeys(arguments[i], type);\n }\n }\n\n if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n } else {\n validatePropTypes(element);\n }\n\n return element;\n}\nvar didWarnAboutDeprecatedCreateFactory = false;\nfunction createFactoryWithValidation(type) {\n var validatedFactory = createElementWithValidation.bind(null, type);\n validatedFactory.type = type;\n\n {\n if (!didWarnAboutDeprecatedCreateFactory) {\n didWarnAboutDeprecatedCreateFactory = true;\n\n warn('React.createFactory() is deprecated and will be removed in ' + 'a future major release. Consider using JSX ' + 'or use React.createElement() directly instead.');\n } // Legacy hook: remove it\n\n\n Object.defineProperty(validatedFactory, 'type', {\n enumerable: false,\n get: function () {\n warn('Factory.type is deprecated. Access the class directly ' + 'before passing it to createFactory.');\n\n Object.defineProperty(this, 'type', {\n value: type\n });\n return type;\n }\n });\n }\n\n return validatedFactory;\n}\nfunction cloneElementWithValidation(element, props, children) {\n var newElement = cloneElement$1.apply(this, arguments);\n\n for (var i = 2; i < arguments.length; i++) {\n validateChildKeys(arguments[i], newElement.type);\n }\n\n validatePropTypes(newElement);\n return newElement;\n}\n\nvar ContextRegistry = ReactSharedInternals.ContextRegistry;\nfunction createServerContext(globalName, defaultValue) {\n\n var wasDefined = true;\n\n if (!ContextRegistry[globalName]) {\n wasDefined = false;\n var _context = {\n $$typeof: REACT_SERVER_CONTEXT_TYPE,\n // As a workaround to support multiple concurrent renderers, we categorize\n // some renderers as primary and others as secondary. We only expect\n // there to be two concurrent renderers at most: React Native (primary) and\n // Fabric (secondary); React DOM (primary) and React ART (secondary).\n // Secondary renderers store their context values on separate fields.\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _defaultValue: defaultValue,\n // Used to track how many concurrent renderers this context currently\n // supports within in a single renderer. Such as parallel server rendering.\n _threadCount: 0,\n // These are circular\n Provider: null,\n Consumer: null,\n _globalName: globalName\n };\n _context.Provider = {\n $$typeof: REACT_PROVIDER_TYPE,\n _context: _context\n };\n\n {\n var hasWarnedAboutUsingConsumer;\n _context._currentRenderer = null;\n _context._currentRenderer2 = null;\n Object.defineProperties(_context, {\n Consumer: {\n get: function () {\n if (!hasWarnedAboutUsingConsumer) {\n error('Consumer pattern is not supported by ReactServerContext');\n\n hasWarnedAboutUsingConsumer = true;\n }\n\n return null;\n }\n }\n });\n }\n\n ContextRegistry[globalName] = _context;\n }\n\n var context = ContextRegistry[globalName];\n\n if (context._defaultValue === REACT_SERVER_CONTEXT_DEFAULT_VALUE_NOT_LOADED) {\n context._defaultValue = defaultValue;\n\n if (context._currentValue === REACT_SERVER_CONTEXT_DEFAULT_VALUE_NOT_LOADED) {\n context._currentValue = defaultValue;\n }\n\n if (context._currentValue2 === REACT_SERVER_CONTEXT_DEFAULT_VALUE_NOT_LOADED) {\n context._currentValue2 = defaultValue;\n }\n } else if (wasDefined) {\n throw new Error(\"ServerContext: \" + globalName + \" already defined\");\n }\n\n return context;\n}\n\nfunction startTransition(scope, options) {\n var prevTransition = ReactCurrentBatchConfig.transition;\n ReactCurrentBatchConfig.transition = {};\n var currentTransition = ReactCurrentBatchConfig.transition;\n\n {\n ReactCurrentBatchConfig.transition._updatedFibers = new Set();\n }\n\n try {\n scope();\n } finally {\n ReactCurrentBatchConfig.transition = prevTransition;\n\n {\n if (prevTransition === null && currentTransition._updatedFibers) {\n var updatedFibersCount = currentTransition._updatedFibers.size;\n\n currentTransition._updatedFibers.clear();\n\n if (updatedFibersCount > 10) {\n warn('Detected a large number of updates inside startTransition. ' + 'If this is due to a subscription please re-write it to use React provided hooks. ' + 'Otherwise concurrent mode guarantees are off the table.');\n }\n }\n }\n }\n}\n\nvar didWarnAboutMessageChannel = false;\nvar enqueueTaskImpl = null;\nfunction enqueueTask(task) {\n if (enqueueTaskImpl === null) {\n try {\n // read require off the module object to get around the bundlers.\n // we don't want them to detect a require and bundle a Node polyfill.\n var requireString = ('require' + Math.random()).slice(0, 7);\n var nodeRequire = module && module[requireString]; // assuming we're in node, let's try to get node's\n // version of setImmediate, bypassing fake timers if any.\n\n enqueueTaskImpl = nodeRequire.call(module, 'timers').setImmediate;\n } catch (_err) {\n // we're in a browser\n // we can't use regular timers because they may still be faked\n // so we try MessageChannel+postMessage instead\n enqueueTaskImpl = function (callback) {\n {\n if (didWarnAboutMessageChannel === false) {\n didWarnAboutMessageChannel = true;\n\n if (typeof MessageChannel === 'undefined') {\n error('This browser does not have a MessageChannel implementation, ' + 'so enqueuing tasks via await act(async () => ...) will fail. ' + 'Please file an issue at https://github.com/facebook/react/issues ' + 'if you encounter this warning.');\n }\n }\n }\n\n var channel = new MessageChannel();\n channel.port1.onmessage = callback;\n channel.port2.postMessage(undefined);\n };\n }\n }\n\n return enqueueTaskImpl(task);\n}\n\n// number of `act` scopes on the stack.\n\nvar actScopeDepth = 0; // We only warn the first time you neglect to await an async `act` scope.\n\nvar didWarnNoAwaitAct = false;\nfunction act(callback) {\n {\n // When ReactCurrentActQueue.current is not null, it signals to React that\n // we're currently inside an `act` scope. React will push all its tasks to\n // this queue instead of scheduling them with platform APIs.\n //\n // We set this to an empty array when we first enter an `act` scope, and\n // only unset it once we've left the outermost `act` scope — remember that\n // `act` calls can be nested.\n //\n // If we're already inside an `act` scope, reuse the existing queue.\n var prevIsBatchingLegacy = ReactCurrentActQueue.isBatchingLegacy;\n var prevActQueue = ReactCurrentActQueue.current;\n var prevActScopeDepth = actScopeDepth;\n actScopeDepth++;\n var queue = ReactCurrentActQueue.current = prevActQueue !== null ? prevActQueue : []; // Used to reproduce behavior of `batchedUpdates` in legacy mode. Only\n // set to `true` while the given callback is executed, not for updates\n // triggered during an async event, because this is how the legacy\n // implementation of `act` behaved.\n\n ReactCurrentActQueue.isBatchingLegacy = true;\n var result; // This tracks whether the `act` call is awaited. In certain cases, not\n // awaiting it is a mistake, so we will detect that and warn.\n\n var didAwaitActCall = false;\n\n try {\n // Reset this to `false` right before entering the React work loop. The\n // only place we ever read this fields is just below, right after running\n // the callback. So we don't need to reset after the callback runs.\n ReactCurrentActQueue.didScheduleLegacyUpdate = false;\n result = callback();\n var didScheduleLegacyUpdate = ReactCurrentActQueue.didScheduleLegacyUpdate; // Replicate behavior of original `act` implementation in legacy mode,\n // which flushed updates immediately after the scope function exits, even\n // if it's an async function.\n\n if (!prevIsBatchingLegacy && didScheduleLegacyUpdate) {\n flushActQueue(queue);\n } // `isBatchingLegacy` gets reset using the regular stack, not the async\n // one used to track `act` scopes. Why, you may be wondering? Because\n // that's how it worked before version 18. Yes, it's confusing! We should\n // delete legacy mode!!\n\n\n ReactCurrentActQueue.isBatchingLegacy = prevIsBatchingLegacy;\n } catch (error) {\n // `isBatchingLegacy` gets reset using the regular stack, not the async\n // one used to track `act` scopes. Why, you may be wondering? Because\n // that's how it worked before version 18. Yes, it's confusing! We should\n // delete legacy mode!!\n ReactCurrentActQueue.isBatchingLegacy = prevIsBatchingLegacy;\n popActScope(prevActQueue, prevActScopeDepth);\n throw error;\n }\n\n if (result !== null && typeof result === 'object' && // $FlowFixMe[method-unbinding]\n typeof result.then === 'function') {\n // A promise/thenable was returned from the callback. Wait for it to\n // resolve before flushing the queue.\n //\n // If `act` were implemented as an async function, this whole block could\n // be a single `await` call. That's really the only difference between\n // this branch and the next one.\n var thenable = result; // Warn if the an `act` call with an async scope is not awaited. In a\n // future release, consider making this an error.\n\n queueSeveralMicrotasks(function () {\n if (!didAwaitActCall && !didWarnNoAwaitAct) {\n didWarnNoAwaitAct = true;\n\n error('You called act(async () => ...) without await. ' + 'This could lead to unexpected testing behaviour, ' + 'interleaving multiple act calls and mixing their ' + 'scopes. ' + 'You should - await act(async () => ...);');\n }\n });\n return {\n then: function (resolve, reject) {\n didAwaitActCall = true;\n thenable.then(function (returnValue) {\n popActScope(prevActQueue, prevActScopeDepth);\n\n if (prevActScopeDepth === 0) {\n // We're exiting the outermost `act` scope. Flush the queue.\n try {\n flushActQueue(queue);\n enqueueTask(function () {\n return (// Recursively flush tasks scheduled by a microtask.\n recursivelyFlushAsyncActWork(returnValue, resolve, reject)\n );\n });\n } catch (error) {\n // `thenable` might not be a real promise, and `flushActQueue`\n // might throw, so we need to wrap `flushActQueue` in a\n // try/catch.\n reject(error);\n }\n } else {\n resolve(returnValue);\n }\n }, function (error) {\n popActScope(prevActQueue, prevActScopeDepth);\n reject(error);\n });\n }\n };\n } else {\n var returnValue = result; // The callback is not an async function. Exit the current\n // scope immediately.\n\n popActScope(prevActQueue, prevActScopeDepth);\n\n if (prevActScopeDepth === 0) {\n // We're exiting the outermost `act` scope. Flush the queue.\n flushActQueue(queue); // If the queue is not empty, it implies that we intentionally yielded\n // to the main thread, because something suspended. We will continue\n // in an asynchronous task.\n //\n // Warn if something suspends but the `act` call is not awaited.\n // In a future release, consider making this an error.\n\n if (queue.length !== 0) {\n queueSeveralMicrotasks(function () {\n if (!didAwaitActCall && !didWarnNoAwaitAct) {\n didWarnNoAwaitAct = true;\n\n error('A component suspended inside an `act` scope, but the ' + '`act` call was not awaited. When testing React ' + 'components that depend on asynchronous data, you must ' + 'await the result:\\n\\n' + 'await act(() => ...)');\n }\n });\n } // Like many things in this module, this is next part is confusing.\n //\n // We do not currently require every `act` call that is passed a\n // callback to be awaited, through arguably we should. Since this\n // callback was synchronous, we need to exit the current scope before\n // returning.\n //\n // However, if thenable we're about to return *is* awaited, we'll\n // immediately restore the current scope. So it shouldn't observable.\n //\n // This doesn't affect the case where the scope callback is async,\n // because we always require those calls to be awaited.\n //\n // TODO: In a future version, consider always requiring all `act` calls\n // to be awaited, regardless of whether the callback is sync or async.\n\n\n ReactCurrentActQueue.current = null;\n }\n\n return {\n then: function (resolve, reject) {\n didAwaitActCall = true;\n\n if (prevActScopeDepth === 0) {\n // If the `act` call is awaited, restore the queue we were\n // using before (see long comment above) so we can flush it.\n ReactCurrentActQueue.current = queue;\n enqueueTask(function () {\n return (// Recursively flush tasks scheduled by a microtask.\n recursivelyFlushAsyncActWork(returnValue, resolve, reject)\n );\n });\n } else {\n resolve(returnValue);\n }\n }\n };\n }\n }\n}\n\nfunction popActScope(prevActQueue, prevActScopeDepth) {\n {\n if (prevActScopeDepth !== actScopeDepth - 1) {\n error('You seem to have overlapping act() calls, this is not supported. ' + 'Be sure to await previous act() calls before making a new one. ');\n }\n\n actScopeDepth = prevActScopeDepth;\n }\n}\n\nfunction recursivelyFlushAsyncActWork(returnValue, resolve, reject) {\n {\n // Check if any tasks were scheduled asynchronously.\n var queue = ReactCurrentActQueue.current;\n\n if (queue !== null) {\n if (queue.length !== 0) {\n // Async tasks were scheduled, mostly likely in a microtask.\n // Keep flushing until there are no more.\n try {\n flushActQueue(queue); // The work we just performed may have schedule additional async\n // tasks. Wait a macrotask and check again.\n\n enqueueTask(function () {\n return recursivelyFlushAsyncActWork(returnValue, resolve, reject);\n });\n } catch (error) {\n // Leave remaining tasks on the queue if something throws.\n reject(error);\n }\n } else {\n // The queue is empty. We can finish.\n ReactCurrentActQueue.current = null;\n resolve(returnValue);\n }\n } else {\n resolve(returnValue);\n }\n }\n}\n\nvar isFlushing = false;\n\nfunction flushActQueue(queue) {\n {\n if (!isFlushing) {\n // Prevent re-entrance.\n isFlushing = true;\n var i = 0;\n\n try {\n for (; i < queue.length; i++) {\n var callback = queue[i];\n\n do {\n ReactCurrentActQueue.didUsePromise = false;\n var continuation = callback(false);\n\n if (continuation !== null) {\n if (ReactCurrentActQueue.didUsePromise) {\n // The component just suspended. Yield to the main thread in\n // case the promise is already resolved. If so, it will ping in\n // a microtask and we can resume without unwinding the stack.\n queue[i] = callback;\n queue.splice(0, i);\n return;\n }\n\n callback = continuation;\n } else {\n break;\n }\n } while (true);\n } // We flushed the entire queue.\n\n\n queue.length = 0;\n } catch (error) {\n // If something throws, leave the remaining callbacks on the queue.\n queue.splice(0, i + 1);\n throw error;\n } finally {\n isFlushing = false;\n }\n }\n }\n} // Some of our warnings attempt to detect if the `act` call is awaited by\n// checking in an asynchronous task. Wait a few microtasks before checking. The\n// only reason one isn't sufficient is we want to accommodate the case where an\n// `act` call is returned from an async function without first being awaited,\n// since that's a somewhat common pattern. If you do this too many times in a\n// nested sequence, you might get a warning, but you can always fix by awaiting\n// the call.\n//\n// A macrotask would also work (and is the fallback) but depending on the test\n// environment it may cause the warning to fire too late.\n\n\nvar queueSeveralMicrotasks = typeof queueMicrotask === 'function' ? function (callback) {\n queueMicrotask(function () {\n return queueMicrotask(callback);\n });\n} : enqueueTask;\n\nvar createElement = createElementWithValidation ;\nvar cloneElement = cloneElementWithValidation ;\nvar createFactory = createFactoryWithValidation ;\nvar Children = {\n map: mapChildren,\n forEach: forEachChildren,\n count: countChildren,\n toArray: toArray,\n only: onlyChild\n};\n\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = ReactSharedInternals;\nexports.cache = cache;\nexports.cloneElement = cloneElement;\nexports.createContext = createContext;\nexports.createElement = createElement;\nexports.createFactory = createFactory;\nexports.createRef = createRef;\nexports.createServerContext = createServerContext;\nexports.forwardRef = forwardRef;\nexports.isValidElement = isValidElement;\nexports.lazy = lazy;\nexports.memo = memo;\nexports.startTransition = startTransition;\nexports.unstable_act = act;\nexports.unstable_useCacheRefresh = useCacheRefresh;\nexports.use = use;\nexports.useCallback = useCallback;\nexports.useContext = useContext;\nexports.useDebugValue = useDebugValue;\nexports.useDeferredValue = useDeferredValue;\nexports.useEffect = useEffect;\nexports.useId = useId;\nexports.useImperativeHandle = useImperativeHandle;\nexports.useInsertionEffect = useInsertionEffect;\nexports.useLayoutEffect = useLayoutEffect;\nexports.useMemo = useMemo;\nexports.useReducer = useReducer;\nexports.useRef = useRef;\nexports.useState = useState;\nexports.useSyncExternalStore = useSyncExternalStore;\nexports.useTransition = useTransition;\nexports.version = ReactVersion;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n"],"names":[],"mappings":"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"}}, {"offset": {"line": 2573, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 2577, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/react/index.js"],"sourcesContent":["'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n"],"names":[],"mappings":";;AAAA;AAEA;;OAEO;IACL,OAAO,UAAU;AACnB"}}, {"offset": {"line": 2585, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 2589, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/react/cjs/react-jsx-runtime.development.js"],"sourcesContent":["/**\n * @license React\n * react-jsx-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'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\nvar React = require(\"next/dist/compiled/react\");\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');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_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\n// stuff. Intended to enable React core members to more easily debug scheduling\n// issues in DEV builds.\n\nvar enableDebugTracing = false; // Track which Fiber(s) schedule render work.\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_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || 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\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} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\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 if (typeof type === 'function') {\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 switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\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 case REACT_SERVER_CONTEXT_TYPE:\n {\n var context2 = type;\n return (context2.displayName || context2._globalName) + '.Provider';\n }\n\n }\n }\n\n return null;\n}\n\nvar assign = Object.assign;\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, source, 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\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 var control;\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 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 fn();\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 // 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 = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var 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 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 \"\"\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('')) {\n _frame = _frame.replace('', fn.displayName);\n }\n\n {\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, source, 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, source, 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, source, 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), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\n// $FlowFixMe[method-unbinding]\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar loggedTypeFailures = {};\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\n\nfunction setCurrentlyValidatingElement$1(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame$1.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame$1.setExtraStackFrame(null);\n }\n }\n}\n\nfunction checkPropTypes(typeSpecs, values, location, componentName, element) {\n {\n // $FlowFixMe[incompatible-use] This is okay but Flow doesn't know it.\n var has = Function.call.bind(hasOwnProperty);\n\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error$1 = void 0; // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n // eslint-disable-next-line react-internal/prod-error-codes\n var err = Error((componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' + 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' + 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.');\n err.name = 'Invariant Violation';\n throw err;\n }\n\n error$1 = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED');\n } catch (ex) {\n error$1 = ex;\n }\n\n if (error$1 && !(error$1 instanceof Error)) {\n setCurrentlyValidatingElement$1(element);\n\n error('%s: type specification of %s' + ' `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', location, typeSpecName, typeof error$1);\n\n setCurrentlyValidatingElement$1(null);\n }\n\n if (error$1 instanceof Error && !(error$1.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error$1.message] = true;\n setCurrentlyValidatingElement$1(element);\n\n error('Failed %s type: %s', location, error$1.message);\n\n setCurrentlyValidatingElement$1(null);\n }\n }\n }\n }\n}\n\nvar isArrayImpl = Array.isArray; // eslint-disable-next-line no-redeclare\n\nfunction isArray(a) {\n return isArrayImpl(a);\n}\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 before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nvar ReactCurrentOwner$1 = ReactSharedInternals.ReactCurrentOwner;\nvar RESERVED_PROPS = {\n key: true,\n ref: true,\n __self: true,\n __source: true\n};\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$1.current && self && ReactCurrentOwner$1.current.stateNode !== self) {\n var componentName = getComponentNameFromType(ReactCurrentOwner$1.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$1.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 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 * 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 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 // 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 }); // self and source are DEV only properties.\n\n Object.defineProperty(element, '_self', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: self\n }); // Two elements created in two different places should be considered\n // equal for testing purposes and therefore we hide it from enumeration.\n\n Object.defineProperty(element, '_source', {\n configurable: false,\n enumerable: false,\n writable: false,\n value: source\n });\n\n if (Object.freeze) {\n Object.freeze(element.props);\n Object.freeze(element);\n }\n }\n\n return element;\n}\n/**\n * https://github.com/reactjs/rfcs/pull/107\n * @param {*} type\n * @param {object} props\n * @param {string} key\n */\n\nfunction jsxDEV(type, config, maybeKey, source, self) {\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.
\n // or
). We want to deprecate key spread,\n // but as an intermediary step, we will use jsxDEV for everything except\n //
, 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 ref = config.ref;\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) && !RESERVED_PROPS.hasOwnProperty(propName)) {\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 return ReactElement(type, key, ref, self, source, ReactCurrentOwner$1.current, props);\n }\n}\n\nvar ReactCurrentOwner = ReactSharedInternals.ReactCurrentOwner;\nvar ReactDebugCurrentFrame = ReactSharedInternals.ReactDebugCurrentFrame;\nvar REACT_CLIENT_REFERENCE = Symbol.for('react.client.reference');\n\nfunction setCurrentlyValidatingElement(element) {\n {\n if (element) {\n var owner = element._owner;\n var stack = describeUnknownElementTypeFrameInDEV(element.type, element._source, owner ? owner.type : null);\n ReactDebugCurrentFrame.setExtraStackFrame(stack);\n } else {\n ReactDebugCurrentFrame.setExtraStackFrame(null);\n }\n }\n}\n\nvar propTypesMisspellWarningShown;\n\n{\n propTypesMisspellWarningShown = false;\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 {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\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\nfunction getSourceInfoErrorAddendum(source) {\n {\n if (source !== undefined) {\n var fileName = source.fileName.replace(/^.*[\\\\\\/]/, '');\n var lineNumber = source.lineNumber;\n return '\\n\\nCheck your code at ' + fileName + ':' + lineNumber + '.';\n }\n\n return '';\n }\n}\n/**\n * Warn if there's no key explicitly set on dynamic arrays of children or\n * object keys are not valid. This allows us to keep track of children between\n * updates.\n */\n\n\nvar ownerHasKeyUseWarning = {};\n\nfunction getCurrentComponentErrorInfo(parentType) {\n {\n var info = getDeclarationErrorAddendum();\n\n if (!info) {\n var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name;\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 * 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\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/**\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 * Given an element, validate that its props follow the propTypes definition,\n * provided by the type.\n *\n * @param {ReactElement} element\n */\n\n\nfunction validatePropTypes(element) {\n {\n var type = element.type;\n\n if (type === null || type === undefined || typeof type === 'string') {\n return;\n }\n\n if (type.$$typeof === REACT_CLIENT_REFERENCE) {\n return;\n }\n\n var propTypes;\n\n if (typeof type === 'function') {\n propTypes = type.propTypes;\n } else if (typeof type === 'object' && (type.$$typeof === REACT_FORWARD_REF_TYPE || // Note: Memo only checks outer props here.\n // Inner props are checked in the reconciler.\n type.$$typeof === REACT_MEMO_TYPE)) {\n propTypes = type.propTypes;\n } else {\n return;\n }\n\n if (propTypes) {\n // Intentionally inside to avoid triggering lazy initializers:\n var name = getComponentNameFromType(type);\n checkPropTypes(propTypes, element.props, 'prop', name, element);\n } else if (type.PropTypes !== undefined && !propTypesMisspellWarningShown) {\n propTypesMisspellWarningShown = true; // Intentionally inside to avoid triggering lazy initializers:\n\n var _name = getComponentNameFromType(type);\n\n error('Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?', _name || 'Unknown');\n }\n\n if (typeof type.getDefaultProps === 'function' && !type.getDefaultProps.isReactClassApproved) {\n error('getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.');\n }\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 {\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 didWarnAboutKeySpread = {};\nfunction jsxWithValidation(type, props, key, isStaticChildren, source, self) {\n {\n var validType = isValidElementType(type); // 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\n if (!validType) {\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 sourceInfo = getSourceInfoErrorAddendum(source);\n\n if (sourceInfo) {\n info += sourceInfo;\n } else {\n info += getDeclarationErrorAddendum();\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 }\n\n var element = jsxDEV(type, props, key, source, self); // The result can be nullish if a mock or a custom function is used.\n // TODO: Drop this when these are no longer allowed as the type argument.\n\n if (element == null) {\n return element;\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 errors.\n // We don't want exception behavior to differ between dev and prod.\n // (Rendering will throw with a helpful message and as soon as the type is\n // fixed, the key warnings will appear.)\n\n\n if (validType) {\n var children = props.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 }\n\n if (hasOwnProperty.call(props, 'key')) {\n var componentName = getComponentNameFromType(type);\n var keys = Object.keys(props).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 if (type === REACT_FRAGMENT_TYPE) {\n validateFragmentProps(element);\n } else {\n validatePropTypes(element);\n }\n\n return element;\n }\n} // These two functions exist to still get child warnings in dev\n// even with the prod transform. This means that jsxDEV is purely\n// opt-in behavior for better messages but that we won't stop\n// giving you warnings if you use production apis.\n\nfunction jsxWithValidationStatic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, true);\n }\n}\nfunction jsxWithValidationDynamic(type, props, key) {\n {\n return jsxWithValidation(type, props, key, false);\n }\n}\n\nvar jsx = jsxWithValidationDynamic ; // we may want to special case jsxs internally to take advantage of static children.\n// for now we can ship identical prod functions\n\nvar jsxs = jsxWithValidationStatic ;\n\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsx;\nexports.jsxs = jsxs;\n })();\n}\n"],"names":[],"mappings":"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"}}, {"offset": {"line": 3482, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 3486, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/react/jsx-runtime.js"],"sourcesContent":["'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n"],"names":[],"mappings":";;AAAA;AAEA;;OAEO;IACL,OAAO,UAAU;AACnB"}}, {"offset": {"line": 3494, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 3498, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/scheduler/cjs/scheduler.development.js"],"sourcesContent":["/**\n * @license React\n * scheduler.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'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var enableSchedulerDebugging = false;\nvar enableProfiling = false;\nvar frameYieldMs = 5;\n\nfunction push(heap, node) {\n var index = heap.length;\n heap.push(node);\n siftUp(heap, node, index);\n}\nfunction peek(heap) {\n return heap.length === 0 ? null : heap[0];\n}\nfunction pop(heap) {\n if (heap.length === 0) {\n return null;\n }\n\n var first = heap[0];\n var last = heap.pop();\n\n if (last !== first) {\n heap[0] = last;\n siftDown(heap, last, 0);\n }\n\n return first;\n}\n\nfunction siftUp(heap, node, i) {\n var index = i;\n\n while (index > 0) {\n var parentIndex = index - 1 >>> 1;\n var parent = heap[parentIndex];\n\n if (compare(parent, node) > 0) {\n // The parent is larger. Swap positions.\n heap[parentIndex] = node;\n heap[index] = parent;\n index = parentIndex;\n } else {\n // The parent is smaller. Exit.\n return;\n }\n }\n}\n\nfunction siftDown(heap, node, i) {\n var index = i;\n var length = heap.length;\n var halfLength = length >>> 1;\n\n while (index < halfLength) {\n var leftIndex = (index + 1) * 2 - 1;\n var left = heap[leftIndex];\n var rightIndex = leftIndex + 1;\n var right = heap[rightIndex]; // If the left or right node is smaller, swap with the smaller of those.\n\n if (compare(left, node) < 0) {\n if (rightIndex < length && compare(right, left) < 0) {\n heap[index] = right;\n heap[rightIndex] = node;\n index = rightIndex;\n } else {\n heap[index] = left;\n heap[leftIndex] = node;\n index = leftIndex;\n }\n } else if (rightIndex < length && compare(right, node) < 0) {\n heap[index] = right;\n heap[rightIndex] = node;\n index = rightIndex;\n } else {\n // Neither child is smaller. Exit.\n return;\n }\n }\n}\n\nfunction compare(a, b) {\n // Compare sort index first, then task id.\n var diff = a.sortIndex - b.sortIndex;\n return diff !== 0 ? diff : a.id - b.id;\n}\n\n// TODO: Use symbols?\nvar ImmediatePriority = 1;\nvar UserBlockingPriority = 2;\nvar NormalPriority = 3;\nvar LowPriority = 4;\nvar IdlePriority = 5;\n\nfunction markTaskErrored(task, ms) {\n}\n\n/* eslint-disable no-var */\nexports.unstable_now = void 0;\nvar hasPerformanceNow = // $FlowFixMe[method-unbinding]\ntypeof performance === 'object' && typeof performance.now === 'function';\n\nif (hasPerformanceNow) {\n var localPerformance = performance;\n\n exports.unstable_now = function () {\n return localPerformance.now();\n };\n} else {\n var localDate = Date;\n var initialTime = localDate.now();\n\n exports.unstable_now = function () {\n return localDate.now() - initialTime;\n };\n} // Max 31 bit integer. The max integer size in V8 for 32-bit systems.\n// Math.pow(2, 30) - 1\n// 0b111111111111111111111111111111\n\n\nvar maxSigned31BitInt = 1073741823; // Times out immediately\n\nvar IMMEDIATE_PRIORITY_TIMEOUT = -1; // Eventually times out\n\nvar USER_BLOCKING_PRIORITY_TIMEOUT = 250;\nvar NORMAL_PRIORITY_TIMEOUT = 5000;\nvar LOW_PRIORITY_TIMEOUT = 10000; // Never times out\n\nvar IDLE_PRIORITY_TIMEOUT = maxSigned31BitInt; // Tasks are stored on a min heap\n\nvar taskQueue = [];\nvar timerQueue = []; // Incrementing id counter. Used to maintain insertion order.\n\nvar taskIdCounter = 1; // Pausing the scheduler is useful for debugging.\nvar currentTask = null;\nvar currentPriorityLevel = NormalPriority; // This is set while performing work, to prevent re-entrance.\n\nvar isPerformingWork = false;\nvar isHostCallbackScheduled = false;\nvar isHostTimeoutScheduled = false; // Capture local references to native APIs, in case a polyfill overrides them.\n\nvar localSetTimeout = typeof setTimeout === 'function' ? setTimeout : null;\nvar localClearTimeout = typeof clearTimeout === 'function' ? clearTimeout : null;\nvar localSetImmediate = typeof setImmediate !== 'undefined' ? setImmediate : null; // IE and Node.js + jsdom\n\ntypeof navigator !== 'undefined' && // $FlowFixMe[prop-missing]\nnavigator.scheduling !== undefined && // $FlowFixMe[incompatible-type]\nnavigator.scheduling.isInputPending !== undefined ? navigator.scheduling.isInputPending.bind(navigator.scheduling) : null;\n\nfunction advanceTimers(currentTime) {\n // Check for tasks that are no longer delayed and add them to the queue.\n var timer = peek(timerQueue);\n\n while (timer !== null) {\n if (timer.callback === null) {\n // Timer was cancelled.\n pop(timerQueue);\n } else if (timer.startTime <= currentTime) {\n // Timer fired. Transfer to the task queue.\n pop(timerQueue);\n timer.sortIndex = timer.expirationTime;\n push(taskQueue, timer);\n } else {\n // Remaining timers are pending.\n return;\n }\n\n timer = peek(timerQueue);\n }\n}\n\nfunction handleTimeout(currentTime) {\n isHostTimeoutScheduled = false;\n advanceTimers(currentTime);\n\n if (!isHostCallbackScheduled) {\n if (peek(taskQueue) !== null) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n } else {\n var firstTimer = peek(timerQueue);\n\n if (firstTimer !== null) {\n requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);\n }\n }\n }\n}\n\nfunction flushWork(hasTimeRemaining, initialTime) {\n\n\n isHostCallbackScheduled = false;\n\n if (isHostTimeoutScheduled) {\n // We scheduled a timeout but it's no longer needed. Cancel it.\n isHostTimeoutScheduled = false;\n cancelHostTimeout();\n }\n\n isPerformingWork = true;\n var previousPriorityLevel = currentPriorityLevel;\n\n try {\n var currentTime; if (enableProfiling) ; else {\n // No catch in prod code path.\n return workLoop(hasTimeRemaining, initialTime);\n }\n } finally {\n currentTask = null;\n currentPriorityLevel = previousPriorityLevel;\n isPerformingWork = false;\n }\n}\n\nfunction workLoop(hasTimeRemaining, initialTime) {\n var currentTime = initialTime;\n advanceTimers(currentTime);\n currentTask = peek(taskQueue);\n\n while (currentTask !== null && !(enableSchedulerDebugging )) {\n if (currentTask.expirationTime > currentTime && (!hasTimeRemaining || shouldYieldToHost())) {\n // This currentTask hasn't expired, and we've reached the deadline.\n break;\n } // $FlowFixMe[incompatible-use] found when upgrading Flow\n\n\n var callback = currentTask.callback;\n\n if (typeof callback === 'function') {\n // $FlowFixMe[incompatible-use] found when upgrading Flow\n currentTask.callback = null; // $FlowFixMe[incompatible-use] found when upgrading Flow\n\n currentPriorityLevel = currentTask.priorityLevel; // $FlowFixMe[incompatible-use] found when upgrading Flow\n\n var didUserCallbackTimeout = currentTask.expirationTime <= currentTime;\n\n var continuationCallback = callback(didUserCallbackTimeout);\n currentTime = exports.unstable_now();\n\n if (typeof continuationCallback === 'function') {\n // If a continuation is returned, immediately yield to the main thread\n // regardless of how much time is left in the current time slice.\n // $FlowFixMe[incompatible-use] found when upgrading Flow\n currentTask.callback = continuationCallback;\n\n advanceTimers(currentTime);\n return true;\n } else {\n\n if (currentTask === peek(taskQueue)) {\n pop(taskQueue);\n }\n\n advanceTimers(currentTime);\n }\n } else {\n pop(taskQueue);\n }\n\n currentTask = peek(taskQueue);\n } // Return whether there's additional work\n\n\n if (currentTask !== null) {\n return true;\n } else {\n var firstTimer = peek(timerQueue);\n\n if (firstTimer !== null) {\n requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);\n }\n\n return false;\n }\n}\n\nfunction unstable_runWithPriority(priorityLevel, eventHandler) {\n switch (priorityLevel) {\n case ImmediatePriority:\n case UserBlockingPriority:\n case NormalPriority:\n case LowPriority:\n case IdlePriority:\n break;\n\n default:\n priorityLevel = NormalPriority;\n }\n\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n}\n\nfunction unstable_next(eventHandler) {\n var priorityLevel;\n\n switch (currentPriorityLevel) {\n case ImmediatePriority:\n case UserBlockingPriority:\n case NormalPriority:\n // Shift down to normal priority\n priorityLevel = NormalPriority;\n break;\n\n default:\n // Anything lower than normal priority should remain at the current level.\n priorityLevel = currentPriorityLevel;\n break;\n }\n\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n}\n\nfunction unstable_wrapCallback(callback) {\n var parentPriorityLevel = currentPriorityLevel; // $FlowFixMe[incompatible-return]\n // $FlowFixMe[missing-this-annot]\n\n return function () {\n // This is a fork of runWithPriority, inlined for performance.\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = parentPriorityLevel;\n\n try {\n return callback.apply(this, arguments);\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n };\n}\n\nfunction unstable_scheduleCallback(priorityLevel, callback, options) {\n var currentTime = exports.unstable_now();\n var startTime;\n\n if (typeof options === 'object' && options !== null) {\n var delay = options.delay;\n\n if (typeof delay === 'number' && delay > 0) {\n startTime = currentTime + delay;\n } else {\n startTime = currentTime;\n }\n } else {\n startTime = currentTime;\n }\n\n var timeout;\n\n switch (priorityLevel) {\n case ImmediatePriority:\n timeout = IMMEDIATE_PRIORITY_TIMEOUT;\n break;\n\n case UserBlockingPriority:\n timeout = USER_BLOCKING_PRIORITY_TIMEOUT;\n break;\n\n case IdlePriority:\n timeout = IDLE_PRIORITY_TIMEOUT;\n break;\n\n case LowPriority:\n timeout = LOW_PRIORITY_TIMEOUT;\n break;\n\n case NormalPriority:\n default:\n timeout = NORMAL_PRIORITY_TIMEOUT;\n break;\n }\n\n var expirationTime = startTime + timeout;\n var newTask = {\n id: taskIdCounter++,\n callback: callback,\n priorityLevel: priorityLevel,\n startTime: startTime,\n expirationTime: expirationTime,\n sortIndex: -1\n };\n\n if (startTime > currentTime) {\n // This is a delayed task.\n newTask.sortIndex = startTime;\n push(timerQueue, newTask);\n\n if (peek(taskQueue) === null && newTask === peek(timerQueue)) {\n // All tasks are delayed, and this is the task with the earliest delay.\n if (isHostTimeoutScheduled) {\n // Cancel an existing timeout.\n cancelHostTimeout();\n } else {\n isHostTimeoutScheduled = true;\n } // Schedule a timeout.\n\n\n requestHostTimeout(handleTimeout, startTime - currentTime);\n }\n } else {\n newTask.sortIndex = expirationTime;\n push(taskQueue, newTask);\n // wait until the next time we yield.\n\n\n if (!isHostCallbackScheduled && !isPerformingWork) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n }\n }\n\n return newTask;\n}\n\nfunction unstable_pauseExecution() {\n}\n\nfunction unstable_continueExecution() {\n\n if (!isHostCallbackScheduled && !isPerformingWork) {\n isHostCallbackScheduled = true;\n requestHostCallback(flushWork);\n }\n}\n\nfunction unstable_getFirstCallbackNode() {\n return peek(taskQueue);\n}\n\nfunction unstable_cancelCallback(task) {\n // remove from the queue because you can't remove arbitrary nodes from an\n // array based heap, only the first one.)\n\n\n task.callback = null;\n}\n\nfunction unstable_getCurrentPriorityLevel() {\n return currentPriorityLevel;\n}\n\nvar isMessageLoopRunning = false;\nvar scheduledHostCallback = null;\nvar taskTimeoutID = -1; // Scheduler periodically yields in case there is other work on the main\n// thread, like user events. By default, it yields multiple times per frame.\n// It does not attempt to align with frame boundaries, since most tasks don't\n// need to be frame aligned; for those that do, use requestAnimationFrame.\n\nvar frameInterval = frameYieldMs;\nvar startTime = -1;\n\nfunction shouldYieldToHost() {\n var timeElapsed = exports.unstable_now() - startTime;\n\n if (timeElapsed < frameInterval) {\n // The main thread has only been blocked for a really short amount of time;\n // smaller than a single frame. Don't yield yet.\n return false;\n } // The main thread has been blocked for a non-negligible amount of time. We\n\n\n return true;\n}\n\nfunction requestPaint() {\n\n}\n\nfunction forceFrameRate(fps) {\n if (fps < 0 || fps > 125) {\n // Using console['error'] to evade Babel and ESLint\n console['error']('forceFrameRate takes a positive int between 0 and 125, ' + 'forcing frame rates higher than 125 fps is not supported');\n return;\n }\n\n if (fps > 0) {\n frameInterval = Math.floor(1000 / fps);\n } else {\n // reset the framerate\n frameInterval = frameYieldMs;\n }\n}\n\nvar performWorkUntilDeadline = function () {\n if (scheduledHostCallback !== null) {\n var currentTime = exports.unstable_now(); // Keep track of the start time so we can measure how long the main thread\n // has been blocked.\n\n startTime = currentTime;\n var hasTimeRemaining = true; // If a scheduler task throws, exit the current browser task so the\n // error can be observed.\n //\n // Intentionally not using a try-catch, since that makes some debugging\n // techniques harder. Instead, if `scheduledHostCallback` errors, then\n // `hasMoreWork` will remain true, and we'll continue the work loop.\n\n var hasMoreWork = true;\n\n try {\n // $FlowFixMe[not-a-function] found when upgrading Flow\n hasMoreWork = scheduledHostCallback(hasTimeRemaining, currentTime);\n } finally {\n if (hasMoreWork) {\n // If there's more work, schedule the next message event at the end\n // of the preceding one.\n schedulePerformWorkUntilDeadline();\n } else {\n isMessageLoopRunning = false;\n scheduledHostCallback = null;\n }\n }\n } else {\n isMessageLoopRunning = false;\n } // Yielding to the browser will give it a chance to paint, so we can\n};\n\nvar schedulePerformWorkUntilDeadline;\n\nif (typeof localSetImmediate === 'function') {\n // Node.js and old IE.\n // There's a few reasons for why we prefer setImmediate.\n //\n // Unlike MessageChannel, it doesn't prevent a Node.js process from exiting.\n // (Even though this is a DOM fork of the Scheduler, you could get here\n // with a mix of Node.js 15+, which has a MessageChannel, and jsdom.)\n // https://github.com/facebook/react/issues/20756\n //\n // But also, it runs earlier which is the semantic we want.\n // If other browsers ever implement it, it's better to use it.\n // Although both of these would be inferior to native scheduling.\n schedulePerformWorkUntilDeadline = function () {\n localSetImmediate(performWorkUntilDeadline);\n };\n} else if (typeof MessageChannel !== 'undefined') {\n // DOM and Worker environments.\n // We prefer MessageChannel because of the 4ms setTimeout clamping.\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = performWorkUntilDeadline;\n\n schedulePerformWorkUntilDeadline = function () {\n port.postMessage(null);\n };\n} else {\n // We should only fallback here in non-browser environments.\n schedulePerformWorkUntilDeadline = function () {\n // $FlowFixMe[not-a-function] nullable value\n localSetTimeout(performWorkUntilDeadline, 0);\n };\n}\n\nfunction requestHostCallback(callback) {\n scheduledHostCallback = callback;\n\n if (!isMessageLoopRunning) {\n isMessageLoopRunning = true;\n schedulePerformWorkUntilDeadline();\n }\n}\n\nfunction requestHostTimeout(callback, ms) {\n // $FlowFixMe[not-a-function] nullable value\n taskTimeoutID = localSetTimeout(function () {\n callback(exports.unstable_now());\n }, ms);\n}\n\nfunction cancelHostTimeout() {\n // $FlowFixMe[not-a-function] nullable value\n localClearTimeout(taskTimeoutID);\n taskTimeoutID = -1;\n}\nvar unstable_Profiling = null;\n\nexports.unstable_IdlePriority = IdlePriority;\nexports.unstable_ImmediatePriority = ImmediatePriority;\nexports.unstable_LowPriority = LowPriority;\nexports.unstable_NormalPriority = NormalPriority;\nexports.unstable_Profiling = unstable_Profiling;\nexports.unstable_UserBlockingPriority = UserBlockingPriority;\nexports.unstable_cancelCallback = unstable_cancelCallback;\nexports.unstable_continueExecution = unstable_continueExecution;\nexports.unstable_forceFrameRate = forceFrameRate;\nexports.unstable_getCurrentPriorityLevel = unstable_getCurrentPriorityLevel;\nexports.unstable_getFirstCallbackNode = unstable_getFirstCallbackNode;\nexports.unstable_next = unstable_next;\nexports.unstable_pauseExecution = unstable_pauseExecution;\nexports.unstable_requestPaint = requestPaint;\nexports.unstable_runWithPriority = unstable_runWithPriority;\nexports.unstable_scheduleCallback = unstable_scheduleCallback;\nexports.unstable_shouldYield = shouldYieldToHost;\nexports.unstable_wrapCallback = unstable_wrapCallback;\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error());\n}\n \n })();\n}\n"],"names":[],"mappings":"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"}}, {"offset": {"line": 3935, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 3939, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/scheduler/index.js"],"sourcesContent":["'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n"],"names":[],"mappings":";;AAAA;AAEA;;OAEO;IACL,OAAO,UAAU;AACnB"}}, {"offset": {"line": 3947, "column": 0}, "map": {"version":3,"sources":[],"names":[],"mappings":"A"}}, {"offset": {"line": 3951, "column": 0}, "map": {"version":3,"sources":["/turbopack/[project]/node_modules/next/dist/compiled/react-dom/cjs/react-dom.development.js"],"sourcesContent":["/**\n * @license React\n * react-dom.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'use strict';\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n\n 'use strict';\n\n/* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\nif (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined' &&\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart ===\n 'function'\n) {\n __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error());\n}\n var React = require(\"next/dist/compiled/react\");\nvar Scheduler = require(\"next/dist/compiled/scheduler\");\n\nvar Internals = {\n usingClientEntryPoint: false,\n Events: null,\n Dispatcher: {\n current: null\n }\n};\n\nvar ReactSharedInternals = React.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n\nvar suppressWarning = false;\nfunction setSuppressWarning(newSuppressWarning) {\n {\n suppressWarning = newSuppressWarning;\n }\n} // In DEV, calls to console.warn and console.error get replaced\n// by calls to these methods by a Babel plugin.\n//\n// In PROD (or in packages without access to React internals),\n// they are left as they are instead.\n\nfunction warn(format) {\n {\n if (!suppressWarning) {\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\n printWarning('warn', format, args);\n }\n }\n}\nfunction error(format) {\n {\n if (!suppressWarning) {\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\nvar assign = Object.assign;\n\n// -----------------------------------------------------------------------------\n// Killswitch\n//\n// Flags that exist solely to turn off a change in case it causes a regression\n// when it rolls out to prod. We should remove these as soon as possible.\n// -----------------------------------------------------------------------------\n// -----------------------------------------------------------------------------\n// Land or remove (moderate effort)\n//\n// Flags that can be probably deleted or landed, but might require extra effort\n// like migrating internal callers or performance testing.\n// -----------------------------------------------------------------------------\n// TODO: Finish rolling out in www\n\nvar enableClientRenderFallbackOnTextMismatch = true; // Recoil still uses useMutableSource in www, need to delete\n// Slated for removal in the future (significant effort)\n//\n// These are experiments that didn't work out, and never shipped, but we can't\n// delete from the codebase until we migrate internal callers.\n// -----------------------------------------------------------------------------\n// Add a callback property to suspense to notify which promises are currently\n// in the update queue. This allows reporting and tracing of what is causing\n// the user to see a loading state.\n//\n// Also allows hydration callbacks to fire when a dehydrated boundary gets\n// hydrated or deleted.\n//\n// This will eventually be replaced by the Transition Tracing proposal.\n\nvar enableSuspenseCallback = false; // Experimental Scope support.\n\nvar enableLazyContextPropagation = false; // FB-only usage. The new API has different semantics.\n\nvar enableLegacyHidden = false; // Enables unstable_avoidThisFallback feature in Fiber\nvar enableHostSingletons = true;\n\nvar diffInCommitPhase = false;\nvar enableAsyncActions = false;\nvar alwaysThrottleRetries = true; // -----------------------------------------------------------------------------\n// Chopping Block\n//\n// Planned feature deprecations and breaking changes. Sorted roughly in order of\n// when we plan to enable them.\n// -----------------------------------------------------------------------------\n// This flag enables Strict Effects by default. We're not turning this on until\n// after 18 because it requires migration work. Recommendation is to use\n// to gradually upgrade components.\n// If TRUE, trees rendered with createRoot will be StrictEffectsMode.\n// If FALSE, these trees will be StrictLegacyMode.\n\nvar createRootStrictEffectsByDefault = false;\n// React DOM Chopping Block\n//\n// Similar to main Chopping Block but only flags related to React DOM. These are\n// grouped because we will likely batch all of them into a single major release.\n// -----------------------------------------------------------------------------\n// Disable support for comment nodes as React DOM containers. Already disabled\n// in open source, but www codebase still relies on it. Need to remove.\n\nvar disableCommentsAsDOMContainers = true; // Disable javascript: URL strings in href for XSS protection.\n// Debugging and DevTools\n// -----------------------------------------------------------------------------\n// Adds user timing marks for e.g. state updates, suspense, and work loop stuff,\n// for an experimental timeline tool.\n\nvar enableSchedulingProfiler = true; // Helps identify side effects in render-phase lifecycle hooks and setState\n\nvar enableProfilerTimer = true; // Record durations for commit and passive effects phases.\n\nvar enableProfilerCommitHooks = true; // Phase param passed to onRender callback differentiates between an \"update\" and a \"cascading-update\".\n\nvar enableProfilerNestedUpdatePhase = true; // Adds verbose console logging for e.g. state updates, suspense, and work loop\n\nvar valueStack = [];\nvar fiberStack;\n\n{\n fiberStack = [];\n}\n\nvar index = -1;\n\nfunction createCursor(defaultValue) {\n return {\n current: defaultValue\n };\n}\n\nfunction pop(cursor, fiber) {\n if (index < 0) {\n {\n error('Unexpected pop.');\n }\n\n return;\n }\n\n {\n if (fiber !== fiberStack[index]) {\n error('Unexpected Fiber popped.');\n }\n }\n\n cursor.current = valueStack[index];\n valueStack[index] = null;\n\n {\n fiberStack[index] = null;\n }\n\n index--;\n}\n\nfunction push(cursor, value, fiber) {\n index++;\n valueStack[index] = cursor.current;\n\n {\n fiberStack[index] = fiber;\n }\n\n cursor.current = value;\n}\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');\nvar REACT_CONTEXT_TYPE = Symbol.for('react.context');\nvar REACT_SERVER_CONTEXT_TYPE = Symbol.for('react.server_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_SCOPE_TYPE = Symbol.for('react.scope');\nvar REACT_DEBUG_TRACING_MODE_TYPE = Symbol.for('react.debug_trace_mode');\nvar REACT_OFFSCREEN_TYPE = Symbol.for('react.offscreen');\nvar REACT_LEGACY_HIDDEN_TYPE = Symbol.for('react.legacy_hidden');\nvar REACT_CACHE_TYPE = Symbol.for('react.cache');\nvar REACT_TRACING_MARKER_TYPE = Symbol.for('react.tracing_marker');\nvar REACT_SERVER_CONTEXT_DEFAULT_VALUE_NOT_LOADED = Symbol.for('react.default_value');\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 contextStackCursor$1 = createCursor(null);\nvar contextFiberStackCursor = createCursor(null);\nvar rootInstanceStackCursor = createCursor(null); // Represents the nearest host transition provider (in React DOM, a
)\n\nfunction requiredContext(c) {\n {\n if (c === null) {\n error('Expected host context to exist. This error is likely caused by a bug ' + 'in React. Please file an issue.');\n }\n }\n\n return c;\n}\n\nfunction getCurrentRootHostContainer() {\n return rootInstanceStackCursor.current;\n}\n\nfunction getRootHostContainer() {\n var rootInstance = requiredContext(rootInstanceStackCursor.current);\n return rootInstance;\n}\n\nfunction pushHostContainer(fiber, nextRootInstance) {\n // Push current root instance onto the stack;\n // This allows us to reset root when portals are popped.\n push(rootInstanceStackCursor, nextRootInstance, fiber); // Track the context and the Fiber that provided it.\n // This enables us to pop only Fibers that provide unique contexts.\n\n push(contextFiberStackCursor, fiber, fiber); // Finally, we need to push the host context to the stack.\n // However, we can't just call getRootHostContext() and push it because\n // we'd have a different number of entries on the stack depending on\n // whether getRootHostContext() throws somewhere in renderer code or not.\n // So we push an empty value first. This lets us safely unwind on errors.\n\n push(contextStackCursor$1, null, fiber);\n var nextRootContext = getRootHostContext(nextRootInstance); // Now that we know this function doesn't throw, replace it.\n\n pop(contextStackCursor$1, fiber);\n push(contextStackCursor$1, nextRootContext, fiber);\n}\n\nfunction popHostContainer(fiber) {\n pop(contextStackCursor$1, fiber);\n pop(contextFiberStackCursor, fiber);\n pop(rootInstanceStackCursor, fiber);\n}\n\nfunction getHostContext() {\n var context = requiredContext(contextStackCursor$1.current);\n return context;\n}\n\nfunction pushHostContext(fiber) {\n\n var context = requiredContext(contextStackCursor$1.current);\n var nextContext = getChildHostContext(context, fiber.type); // Don't push this Fiber's context unless it's unique.\n\n if (context !== nextContext) {\n // Track the context and the Fiber that provided it.\n // This enables us to pop only Fibers that provide unique contexts.\n push(contextFiberStackCursor, fiber, fiber);\n push(contextStackCursor$1, nextContext, fiber);\n }\n}\n\nfunction popHostContext(fiber) {\n if (contextFiberStackCursor.current === fiber) {\n // Do not pop unless this Fiber provided the current context.\n // pushHostContext() only pushes Fibers that provide unique contexts.\n pop(contextStackCursor$1, fiber);\n pop(contextFiberStackCursor, fiber);\n }\n}\n\nvar NoFlags$1 =\n/* */\n0;\nvar PerformedWork =\n/* */\n1;\nvar Placement =\n/* */\n2;\nvar DidCapture =\n/* */\n128;\nvar Hydrating =\n/* */\n4096; // You can change the rest (and add more).\n\nvar Update =\n/* */\n4;\n/* Skipped value: 0b0000000000000000000000001000; */\n\nvar ChildDeletion =\n/* */\n16;\nvar ContentReset =\n/* */\n32;\nvar Callback =\n/* */\n64;\n/* Used by DidCapture: 0b0000000000000000000010000000; */\n\nvar ForceClientRender =\n/* */\n256;\nvar Ref =\n/* */\n512;\nvar Snapshot =\n/* */\n1024;\nvar Passive$1 =\n/* */\n2048;\n/* Used by Hydrating: 0b0000000000000001000000000000; */\n\nvar Visibility =\n/* */\n8192;\nvar StoreConsistency =\n/* */\n16384; // It's OK to reuse these bits because these flags are mutually exclusive for\n// different fiber types. We should really be doing this for as many flags as\n// possible, because we're about to run out of bits.\n\nvar ScheduleRetry = StoreConsistency;\nvar ShouldSuspendCommit = Visibility;\nvar LifecycleEffectMask = Passive$1 | Update | Callback | Ref | Snapshot | StoreConsistency; // Union of all commit flags (flags with the lifetime of a particular commit)\n\nvar HostEffectMask =\n/* */\n32767; // These are not really side effects, but we still reuse this field.\n\nvar Incomplete =\n/* */\n32768;\nvar ShouldCapture =\n/* */\n65536;\nvar ForceUpdateForLegacySuspense =\n/* */\n131072;\nvar Forked =\n/* */\n1048576; // Static tags describe aspects of a fiber that are not specific to a render,\n// e.g. a fiber uses a passive effect (even if there are no updates on this particular render).\n// This enables us to defer more work in the unmount case,\n// since we can defer traversing the tree during layout to look for Passive effects,\n// and instead rely on the static flag as a signal that there may be cleanup work.\n\nvar RefStatic =\n/* */\n2097152;\nvar LayoutStatic =\n/* */\n4194304;\nvar PassiveStatic =\n/* */\n8388608;\nvar MaySuspendCommit =\n/* */\n16777216; // Flag used to identify newly inserted fibers. It isn't reset after commit unlike `Placement`.\n\nvar PlacementDEV =\n/* */\n33554432;\nvar MountLayoutDev =\n/* */\n67108864;\nvar MountPassiveDev =\n/* */\n134217728; // Groups of flags that are used in the commit phase to skip over trees that\n// don't contain effects, by checking subtreeFlags.\n\nvar BeforeMutationMask = // TODO: Remove Update flag from before mutation phase by re-landing Visibility\n// flag logic (see #20043)\nUpdate | Snapshot | (0);\nvar MutationMask = Placement | Update | ChildDeletion | ContentReset | Ref | Hydrating | Visibility;\nvar LayoutMask = Update | Callback | Ref | Visibility; // TODO: Split into PassiveMountMask and PassiveUnmountMask\n\nvar PassiveMask = Passive$1 | Visibility | ChildDeletion; // Union of tags that don't get reset on clones.\n// This allows certain concepts to persist without recalculating them,\n// e.g. whether a subtree contains passive effects or portals.\n\nvar StaticMask = LayoutStatic | PassiveStatic | RefStatic | MaySuspendCommit;\n\n// This module only exists as an ESM wrapper around the external CommonJS\nvar scheduleCallback$3 = Scheduler.unstable_scheduleCallback;\nvar cancelCallback$1 = Scheduler.unstable_cancelCallback;\nvar shouldYield = Scheduler.unstable_shouldYield;\nvar requestPaint = Scheduler.unstable_requestPaint;\nvar now$1 = Scheduler.unstable_now;\nvar getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel;\nvar ImmediatePriority = Scheduler.unstable_ImmediatePriority;\nvar UserBlockingPriority = Scheduler.unstable_UserBlockingPriority;\nvar NormalPriority$1 = Scheduler.unstable_NormalPriority;\nvar LowPriority = Scheduler.unstable_LowPriority;\nvar IdlePriority = Scheduler.unstable_IdlePriority; // this doesn't actually exist on the scheduler, but it *does*\n// on scheduler/unstable_mock, which we'll need for internal testing\n\nvar log$1 = Scheduler.log;\nvar unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue;\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 rendererID = null;\nvar injectedHook = null;\nvar injectedProfilingHooks = null;\nvar hasLoggedError = false;\nvar isDevToolsPresent = typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ !== 'undefined';\nfunction injectInternals(internals) {\n if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined') {\n // No DevTools\n return false;\n }\n\n var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;\n\n if (hook.isDisabled) {\n // This isn't a real property on the hook, but it can be set to opt out\n // of DevTools integration and associated warnings and logs.\n // https://github.com/facebook/react/issues/3877\n return true;\n }\n\n if (!hook.supportsFiber) {\n {\n error('The installed version of React DevTools is too old and will not work ' + 'with the current version of React. Please update React DevTools. ' + 'https://reactjs.org/link/react-devtools');\n } // DevTools exists, even though it doesn't support Fiber.\n\n\n return true;\n }\n\n try {\n if (enableSchedulingProfiler) {\n // Conditionally inject these hooks only if Timeline profiler is supported by this build.\n // This gives DevTools a way to feature detect that isn't tied to version number\n // (since profiling and timeline are controlled by different feature flags).\n internals = assign({}, internals, {\n getLaneLabelMap: getLaneLabelMap,\n injectProfilingHooks: injectProfilingHooks\n });\n }\n\n rendererID = hook.inject(internals); // We have successfully injected, so now it is safe to set up hooks.\n\n injectedHook = hook;\n } catch (err) {\n // Catch all errors because it is unsafe to throw during initialization.\n {\n error('React instrumentation encountered an error: %s.', err);\n }\n }\n\n if (hook.checkDCE) {\n // This is the real DevTools.\n return true;\n } else {\n // This is likely a hook installed by Fast Refresh runtime.\n return false;\n }\n}\nfunction onScheduleRoot(root, children) {\n {\n if (injectedHook && typeof injectedHook.onScheduleFiberRoot === 'function') {\n try {\n injectedHook.onScheduleFiberRoot(rendererID, root, children);\n } catch (err) {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onCommitRoot$1(root, eventPriority) {\n if (injectedHook && typeof injectedHook.onCommitFiberRoot === 'function') {\n try {\n var didError = (root.current.flags & DidCapture) === DidCapture;\n\n if (enableProfilerTimer) {\n var schedulerPriority;\n\n switch (eventPriority) {\n case DiscreteEventPriority:\n schedulerPriority = ImmediatePriority;\n break;\n\n case ContinuousEventPriority:\n schedulerPriority = UserBlockingPriority;\n break;\n\n case DefaultEventPriority:\n schedulerPriority = NormalPriority$1;\n break;\n\n case IdleEventPriority:\n schedulerPriority = IdlePriority;\n break;\n\n default:\n schedulerPriority = NormalPriority$1;\n break;\n }\n\n injectedHook.onCommitFiberRoot(rendererID, root, schedulerPriority, didError);\n }\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onPostCommitRoot(root) {\n if (injectedHook && typeof injectedHook.onPostCommitFiberRoot === 'function') {\n try {\n injectedHook.onPostCommitFiberRoot(rendererID, root);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction onCommitUnmount(fiber) {\n if (injectedHook && typeof injectedHook.onCommitFiberUnmount === 'function') {\n try {\n injectedHook.onCommitFiberUnmount(rendererID, fiber);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n}\nfunction setIsStrictModeForDevtools(newIsStrictMode) {\n {\n if (typeof log$1 === 'function') {\n // We're in a test because Scheduler.log only exists\n // in SchedulerMock. To reduce the noise in strict mode tests,\n // suppress warnings and disable scheduler yielding during the double render\n unstable_setDisableYieldValue(newIsStrictMode);\n setSuppressWarning(newIsStrictMode);\n }\n\n if (injectedHook && typeof injectedHook.setStrictMode === 'function') {\n try {\n injectedHook.setStrictMode(rendererID, newIsStrictMode);\n } catch (err) {\n {\n if (!hasLoggedError) {\n hasLoggedError = true;\n\n error('React instrumentation encountered an error: %s', err);\n }\n }\n }\n }\n }\n} // Profiler API hooks\n\nfunction injectProfilingHooks(profilingHooks) {\n injectedProfilingHooks = profilingHooks;\n}\n\nfunction getLaneLabelMap() {\n {\n var map = new Map();\n var lane = 1;\n\n for (var index = 0; index < TotalLanes; index++) {\n var label = getLabelForLane(lane);\n map.set(lane, label);\n lane *= 2;\n }\n\n return map;\n }\n}\n\nfunction markCommitStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStarted === 'function') {\n injectedProfilingHooks.markCommitStarted(lanes);\n }\n }\n}\nfunction markCommitStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markCommitStopped === 'function') {\n injectedProfilingHooks.markCommitStopped();\n }\n }\n}\nfunction markComponentRenderStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStarted === 'function') {\n injectedProfilingHooks.markComponentRenderStarted(fiber);\n }\n }\n}\nfunction markComponentRenderStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentRenderStopped === 'function') {\n injectedProfilingHooks.markComponentRenderStopped();\n }\n }\n}\nfunction markComponentPassiveEffectMountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStarted === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectMountStarted(fiber);\n }\n }\n}\nfunction markComponentPassiveEffectMountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectMountStopped === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectMountStopped();\n }\n }\n}\nfunction markComponentPassiveEffectUnmountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStarted === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectUnmountStarted(fiber);\n }\n }\n}\nfunction markComponentPassiveEffectUnmountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentPassiveEffectUnmountStopped === 'function') {\n injectedProfilingHooks.markComponentPassiveEffectUnmountStopped();\n }\n }\n}\nfunction markComponentLayoutEffectMountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStarted === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectMountStarted(fiber);\n }\n }\n}\nfunction markComponentLayoutEffectMountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectMountStopped === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectMountStopped();\n }\n }\n}\nfunction markComponentLayoutEffectUnmountStarted(fiber) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStarted === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectUnmountStarted(fiber);\n }\n }\n}\nfunction markComponentLayoutEffectUnmountStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentLayoutEffectUnmountStopped === 'function') {\n injectedProfilingHooks.markComponentLayoutEffectUnmountStopped();\n }\n }\n}\nfunction markComponentErrored(fiber, thrownValue, lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentErrored === 'function') {\n injectedProfilingHooks.markComponentErrored(fiber, thrownValue, lanes);\n }\n }\n}\nfunction markComponentSuspended(fiber, wakeable, lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markComponentSuspended === 'function') {\n injectedProfilingHooks.markComponentSuspended(fiber, wakeable, lanes);\n }\n }\n}\nfunction markLayoutEffectsStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStarted === 'function') {\n injectedProfilingHooks.markLayoutEffectsStarted(lanes);\n }\n }\n}\nfunction markLayoutEffectsStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markLayoutEffectsStopped === 'function') {\n injectedProfilingHooks.markLayoutEffectsStopped();\n }\n }\n}\nfunction markPassiveEffectsStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStarted === 'function') {\n injectedProfilingHooks.markPassiveEffectsStarted(lanes);\n }\n }\n}\nfunction markPassiveEffectsStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markPassiveEffectsStopped === 'function') {\n injectedProfilingHooks.markPassiveEffectsStopped();\n }\n }\n}\nfunction markRenderStarted(lanes) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStarted === 'function') {\n injectedProfilingHooks.markRenderStarted(lanes);\n }\n }\n}\nfunction markRenderYielded() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderYielded === 'function') {\n injectedProfilingHooks.markRenderYielded();\n }\n }\n}\nfunction markRenderStopped() {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderStopped === 'function') {\n injectedProfilingHooks.markRenderStopped();\n }\n }\n}\nfunction markRenderScheduled(lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markRenderScheduled === 'function') {\n injectedProfilingHooks.markRenderScheduled(lane);\n }\n }\n}\nfunction markForceUpdateScheduled(fiber, lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markForceUpdateScheduled === 'function') {\n injectedProfilingHooks.markForceUpdateScheduled(fiber, lane);\n }\n }\n}\nfunction markStateUpdateScheduled(fiber, lane) {\n {\n if (injectedProfilingHooks !== null && typeof injectedProfilingHooks.markStateUpdateScheduled === 'function') {\n injectedProfilingHooks.markStateUpdateScheduled(fiber, lane);\n }\n }\n}\n\nvar NoMode =\n/* */\n0; // TODO: Remove ConcurrentMode by reading from the root tag instead\n\nvar ConcurrentMode =\n/* */\n1;\nvar ProfileMode =\n/* */\n2;\nvar StrictLegacyMode =\n/* */\n8;\nvar StrictEffectsMode =\n/* */\n16;\n\n// TODO: This is pretty well supported by browsers. Maybe we can drop it.\nvar clz32 = Math.clz32 ? Math.clz32 : clz32Fallback; // Count leading zeros.\n// Based on:\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32\n\nvar log = Math.log;\nvar LN2 = Math.LN2;\n\nfunction clz32Fallback(x) {\n var asUint = x >>> 0;\n\n if (asUint === 0) {\n return 32;\n }\n\n return 31 - (log(asUint) / LN2 | 0) | 0;\n}\n\n// If those values are changed that package should be rebuilt and redeployed.\n\nvar TotalLanes = 31;\nvar NoLanes =\n/* */\n0;\nvar NoLane =\n/* */\n0;\nvar SyncHydrationLane =\n/* */\n1;\nvar SyncLane =\n/* */\n2;\nvar InputContinuousHydrationLane =\n/* */\n4;\nvar InputContinuousLane =\n/* */\n8;\nvar DefaultHydrationLane =\n/* */\n16;\nvar DefaultLane =\n/* */\n32;\nvar TransitionHydrationLane =\n/* */\n64;\nvar TransitionLanes =\n/* */\n8388480;\nvar TransitionLane1 =\n/* */\n128;\nvar TransitionLane2 =\n/* */\n256;\nvar TransitionLane3 =\n/* */\n512;\nvar TransitionLane4 =\n/* */\n1024;\nvar TransitionLane5 =\n/* */\n2048;\nvar TransitionLane6 =\n/* */\n4096;\nvar TransitionLane7 =\n/* */\n8192;\nvar TransitionLane8 =\n/* */\n16384;\nvar TransitionLane9 =\n/* */\n32768;\nvar TransitionLane10 =\n/* */\n65536;\nvar TransitionLane11 =\n/* */\n131072;\nvar TransitionLane12 =\n/* */\n262144;\nvar TransitionLane13 =\n/* */\n524288;\nvar TransitionLane14 =\n/* */\n1048576;\nvar TransitionLane15 =\n/* */\n2097152;\nvar TransitionLane16 =\n/* */\n4194304;\nvar RetryLanes =\n/* */\n125829120;\nvar RetryLane1 =\n/* */\n8388608;\nvar RetryLane2 =\n/* */\n16777216;\nvar RetryLane3 =\n/* */\n33554432;\nvar RetryLane4 =\n/* */\n67108864;\nvar SomeRetryLane = RetryLane1;\nvar SelectiveHydrationLane =\n/* */\n134217728;\nvar NonIdleLanes =\n/* */\n268435455;\nvar IdleHydrationLane =\n/* */\n268435456;\nvar IdleLane =\n/* */\n536870912;\nvar OffscreenLane =\n/* */\n1073741824; // This function is used for the experimental timeline (react-devtools-timeline)\n// It should be kept in sync with the Lanes values above.\n\nfunction getLabelForLane(lane) {\n {\n if (lane & SyncHydrationLane) {\n return 'SyncHydrationLane';\n }\n\n if (lane & SyncLane) {\n return 'Sync';\n }\n\n if (lane & InputContinuousHydrationLane) {\n return 'InputContinuousHydration';\n }\n\n if (lane & InputContinuousLane) {\n return 'InputContinuous';\n }\n\n if (lane & DefaultHydrationLane) {\n return 'DefaultHydration';\n }\n\n if (lane & DefaultLane) {\n return 'Default';\n }\n\n if (lane & TransitionHydrationLane) {\n return 'TransitionHydration';\n }\n\n if (lane & TransitionLanes) {\n return 'Transition';\n }\n\n if (lane & RetryLanes) {\n return 'Retry';\n }\n\n if (lane & SelectiveHydrationLane) {\n return 'SelectiveHydration';\n }\n\n if (lane & IdleHydrationLane) {\n return 'IdleHydration';\n }\n\n if (lane & IdleLane) {\n return 'Idle';\n }\n\n if (lane & OffscreenLane) {\n return 'Offscreen';\n }\n }\n}\nvar NoTimestamp = -1;\nvar nextTransitionLane = TransitionLane1;\nvar nextRetryLane = RetryLane1;\n\nfunction getHighestPriorityLanes(lanes) {\n\n switch (getHighestPriorityLane(lanes)) {\n case SyncHydrationLane:\n return SyncHydrationLane;\n\n case SyncLane:\n return SyncLane;\n\n case InputContinuousHydrationLane:\n return InputContinuousHydrationLane;\n\n case InputContinuousLane:\n return InputContinuousLane;\n\n case DefaultHydrationLane:\n return DefaultHydrationLane;\n\n case DefaultLane:\n return DefaultLane;\n\n case TransitionHydrationLane:\n return TransitionHydrationLane;\n\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n return lanes & TransitionLanes;\n\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n return lanes & RetryLanes;\n\n case SelectiveHydrationLane:\n return SelectiveHydrationLane;\n\n case IdleHydrationLane:\n return IdleHydrationLane;\n\n case IdleLane:\n return IdleLane;\n\n case OffscreenLane:\n return OffscreenLane;\n\n default:\n {\n error('Should have found matching lanes. This is a bug in React.');\n } // This shouldn't be reachable, but as a fallback, return the entire bitmask.\n\n\n return lanes;\n }\n}\n\nfunction getNextLanes(root, wipLanes) {\n // Early bailout if there's no pending work left.\n var pendingLanes = root.pendingLanes;\n\n if (pendingLanes === NoLanes) {\n return NoLanes;\n }\n\n var nextLanes = NoLanes;\n var suspendedLanes = root.suspendedLanes;\n var pingedLanes = root.pingedLanes; // Do not work on any idle work until all the non-idle work has finished,\n // even if the work is suspended.\n\n var nonIdlePendingLanes = pendingLanes & NonIdleLanes;\n\n if (nonIdlePendingLanes !== NoLanes) {\n var nonIdleUnblockedLanes = nonIdlePendingLanes & ~suspendedLanes;\n\n if (nonIdleUnblockedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(nonIdleUnblockedLanes);\n } else {\n var nonIdlePingedLanes = nonIdlePendingLanes & pingedLanes;\n\n if (nonIdlePingedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(nonIdlePingedLanes);\n }\n }\n } else {\n // The only remaining work is Idle.\n var unblockedLanes = pendingLanes & ~suspendedLanes;\n\n if (unblockedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(unblockedLanes);\n } else {\n if (pingedLanes !== NoLanes) {\n nextLanes = getHighestPriorityLanes(pingedLanes);\n }\n }\n }\n\n if (nextLanes === NoLanes) {\n // This should only be reachable if we're suspended\n // TODO: Consider warning in this path if a fallback timer is not scheduled.\n return NoLanes;\n } // If we're already in the middle of a render, switching lanes will interrupt\n // it and we'll lose our progress. We should only do this if the new lanes are\n // higher priority.\n\n\n if (wipLanes !== NoLanes && wipLanes !== nextLanes && // If we already suspended with a delay, then interrupting is fine. Don't\n // bother waiting until the root is complete.\n (wipLanes & suspendedLanes) === NoLanes) {\n var nextLane = getHighestPriorityLane(nextLanes);\n var wipLane = getHighestPriorityLane(wipLanes);\n\n if ( // Tests whether the next lane is equal or lower priority than the wip\n // one. This works because the bits decrease in priority as you go left.\n nextLane >= wipLane || // Default priority updates should not interrupt transition updates. The\n // only difference between default updates and transition updates is that\n // default updates do not support refresh transitions.\n nextLane === DefaultLane && (wipLane & TransitionLanes) !== NoLanes) {\n // Keep working on the existing in-progress tree. Do not interrupt.\n return wipLanes;\n }\n }\n\n if ((nextLanes & InputContinuousLane) !== NoLanes) {\n // When updates are sync by default, we entangle continuous priority updates\n // and default updates, so they render in the same batch. The only reason\n // they use separate lanes is because continuous updates should interrupt\n // transitions, but default updates should not.\n nextLanes |= pendingLanes & DefaultLane;\n } // Check for entangled lanes and add them to the batch.\n //\n // A lane is said to be entangled with another when it's not allowed to render\n // in a batch that does not also include the other lane. Typically we do this\n // when multiple updates have the same source, and we only want to respond to\n // the most recent event from that source.\n //\n // Note that we apply entanglements *after* checking for partial work above.\n // This means that if a lane is entangled during an interleaved event while\n // it's already rendering, we won't interrupt it. This is intentional, since\n // entanglement is usually \"best effort\": we'll try our best to render the\n // lanes in the same batch, but it's not worth throwing out partially\n // completed work in order to do it.\n // TODO: Reconsider this. The counter-argument is that the partial work\n // represents an intermediate state, which we don't want to show to the user.\n // And by spending extra time finishing it, we're increasing the amount of\n // time it takes to show the final state, which is what they are actually\n // waiting for.\n //\n // For those exceptions where entanglement is semantically important, like\n // useMutableSource, we should ensure that there is no partial work at the\n // time we apply the entanglement.\n\n\n var entangledLanes = root.entangledLanes;\n\n if (entangledLanes !== NoLanes) {\n var entanglements = root.entanglements;\n var lanes = nextLanes & entangledLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n nextLanes |= entanglements[index];\n lanes &= ~lane;\n }\n }\n\n return nextLanes;\n}\n\nfunction computeExpirationTime(lane, currentTime) {\n switch (lane) {\n case SyncHydrationLane:\n case SyncLane:\n case InputContinuousHydrationLane:\n case InputContinuousLane:\n // User interactions should expire slightly more quickly.\n //\n // NOTE: This is set to the corresponding constant as in Scheduler.js.\n // When we made it larger, a product metric in www regressed, suggesting\n // there's a user interaction that's being starved by a series of\n // synchronous updates. If that theory is correct, the proper solution is\n // to fix the starvation. However, this scenario supports the idea that\n // expiration times are an important safeguard when starvation\n // does happen.\n return currentTime + 250;\n\n case DefaultHydrationLane:\n case DefaultLane:\n case TransitionHydrationLane:\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n return currentTime + 5000;\n\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n // TODO: Retries should be allowed to expire if they are CPU bound for\n // too long, but when I made this change it caused a spike in browser\n // crashes. There must be some other underlying bug; not super urgent but\n // ideally should figure out why and fix it. Unfortunately we don't have\n // a repro for the crashes, only detected via production metrics.\n return NoTimestamp;\n\n case SelectiveHydrationLane:\n case IdleHydrationLane:\n case IdleLane:\n case OffscreenLane:\n // Anything idle priority or lower should never expire.\n return NoTimestamp;\n\n default:\n {\n error('Should have found matching lanes. This is a bug in React.');\n }\n\n return NoTimestamp;\n }\n}\n\nfunction markStarvedLanesAsExpired(root, currentTime) {\n // TODO: This gets called every time we yield. We can optimize by storing\n // the earliest expiration time on the root. Then use that to quickly bail out\n // of this function.\n var pendingLanes = root.pendingLanes;\n var suspendedLanes = root.suspendedLanes;\n var pingedLanes = root.pingedLanes;\n var expirationTimes = root.expirationTimes; // Iterate through the pending lanes and check if we've reached their\n // expiration time. If so, we'll assume the update is being starved and mark\n // it as expired to force it to finish.\n //\n // We exclude retry lanes because those must always be time sliced, in order\n // to unwrap uncached promises.\n // TODO: Write a test for this\n\n var lanes = pendingLanes & ~RetryLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n var expirationTime = expirationTimes[index];\n\n if (expirationTime === NoTimestamp) {\n // Found a pending lane with no expiration time. If it's not suspended, or\n // if it's pinged, assume it's CPU-bound. Compute a new expiration time\n // using the current time.\n if ((lane & suspendedLanes) === NoLanes || (lane & pingedLanes) !== NoLanes) {\n // Assumes timestamps are monotonically increasing.\n expirationTimes[index] = computeExpirationTime(lane, currentTime);\n }\n } else if (expirationTime <= currentTime) {\n // This lane expired\n root.expiredLanes |= lane;\n }\n\n lanes &= ~lane;\n }\n} // This returns the highest priority pending lanes regardless of whether they\n// are suspended.\n\nfunction getHighestPriorityPendingLanes(root) {\n return getHighestPriorityLanes(root.pendingLanes);\n}\nfunction getLanesToRetrySynchronouslyOnError(root, originallyAttemptedLanes) {\n if (root.errorRecoveryDisabledLanes & originallyAttemptedLanes) {\n // The error recovery mechanism is disabled until these lanes are cleared.\n return NoLanes;\n }\n\n var everythingButOffscreen = root.pendingLanes & ~OffscreenLane;\n\n if (everythingButOffscreen !== NoLanes) {\n return everythingButOffscreen;\n }\n\n if (everythingButOffscreen & OffscreenLane) {\n return OffscreenLane;\n }\n\n return NoLanes;\n}\nfunction includesSyncLane(lanes) {\n return (lanes & (SyncLane | SyncHydrationLane)) !== NoLanes;\n}\nfunction includesNonIdleWork(lanes) {\n return (lanes & NonIdleLanes) !== NoLanes;\n}\nfunction includesOnlyRetries(lanes) {\n return (lanes & RetryLanes) === lanes;\n}\nfunction includesOnlyNonUrgentLanes(lanes) {\n // TODO: Should hydration lanes be included here? This function is only\n // used in `updateDeferredValueImpl`.\n var UrgentLanes = SyncLane | InputContinuousLane | DefaultLane;\n return (lanes & UrgentLanes) === NoLanes;\n}\nfunction includesOnlyTransitions(lanes) {\n return (lanes & TransitionLanes) === lanes;\n}\nfunction includesBlockingLane(root, lanes) {\n\n var SyncDefaultLanes = InputContinuousHydrationLane | InputContinuousLane | DefaultHydrationLane | DefaultLane;\n return (lanes & SyncDefaultLanes) !== NoLanes;\n}\nfunction includesExpiredLane(root, lanes) {\n // This is a separate check from includesBlockingLane because a lane can\n // expire after a render has already started.\n return (lanes & root.expiredLanes) !== NoLanes;\n}\nfunction isTransitionLane(lane) {\n return (lane & TransitionLanes) !== NoLanes;\n}\nfunction claimNextTransitionLane() {\n // Cycle through the lanes, assigning each new transition to the next lane.\n // In most cases, this means every transition gets its own lane, until we\n // run out of lanes and cycle back to the beginning.\n var lane = nextTransitionLane;\n nextTransitionLane <<= 1;\n\n if ((nextTransitionLane & TransitionLanes) === NoLanes) {\n nextTransitionLane = TransitionLane1;\n }\n\n return lane;\n}\nfunction claimNextRetryLane() {\n var lane = nextRetryLane;\n nextRetryLane <<= 1;\n\n if ((nextRetryLane & RetryLanes) === NoLanes) {\n nextRetryLane = RetryLane1;\n }\n\n return lane;\n}\nfunction getHighestPriorityLane(lanes) {\n return lanes & -lanes;\n}\nfunction pickArbitraryLane(lanes) {\n // This wrapper function gets inlined. Only exists so to communicate that it\n // doesn't matter which bit is selected; you can pick any bit without\n // affecting the algorithms where its used. Here I'm using\n // getHighestPriorityLane because it requires the fewest operations.\n return getHighestPriorityLane(lanes);\n}\n\nfunction pickArbitraryLaneIndex(lanes) {\n return 31 - clz32(lanes);\n}\n\nfunction laneToIndex(lane) {\n return pickArbitraryLaneIndex(lane);\n}\n\nfunction includesSomeLane(a, b) {\n return (a & b) !== NoLanes;\n}\nfunction isSubsetOfLanes(set, subset) {\n return (set & subset) === subset;\n}\nfunction mergeLanes(a, b) {\n return a | b;\n}\nfunction removeLanes(set, subset) {\n return set & ~subset;\n}\nfunction intersectLanes(a, b) {\n return a & b;\n} // Seems redundant, but it changes the type from a single lane (used for\n// updates) to a group of lanes (used for flushing work).\n\nfunction laneToLanes(lane) {\n return lane;\n}\nfunction higherPriorityLane(a, b) {\n // This works because the bit ranges decrease in priority as you go left.\n return a !== NoLane && a < b ? a : b;\n}\nfunction createLaneMap(initial) {\n // Intentionally pushing one by one.\n // https://v8.dev/blog/elements-kinds#avoid-creating-holes\n var laneMap = [];\n\n for (var i = 0; i < TotalLanes; i++) {\n laneMap.push(initial);\n }\n\n return laneMap;\n}\nfunction markRootUpdated(root, updateLane) {\n root.pendingLanes |= updateLane; // If there are any suspended transitions, it's possible this new update\n // could unblock them. Clear the suspended lanes so that we can try rendering\n // them again.\n //\n // TODO: We really only need to unsuspend only lanes that are in the\n // `subtreeLanes` of the updated fiber, or the update lanes of the return\n // path. This would exclude suspended updates in an unrelated sibling tree,\n // since there's no way for this update to unblock it.\n //\n // We don't do this if the incoming update is idle, because we never process\n // idle updates until after all the regular updates have finished; there's no\n // way it could unblock a transition.\n\n if (updateLane !== IdleLane) {\n root.suspendedLanes = NoLanes;\n root.pingedLanes = NoLanes;\n }\n}\nfunction markRootSuspended$1(root, suspendedLanes) {\n root.suspendedLanes |= suspendedLanes;\n root.pingedLanes &= ~suspendedLanes; // The suspended lanes are no longer CPU-bound. Clear their expiration times.\n\n var expirationTimes = root.expirationTimes;\n var lanes = suspendedLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n expirationTimes[index] = NoTimestamp;\n lanes &= ~lane;\n }\n}\nfunction markRootPinged(root, pingedLanes) {\n root.pingedLanes |= root.suspendedLanes & pingedLanes;\n}\nfunction markRootFinished(root, remainingLanes) {\n var noLongerPendingLanes = root.pendingLanes & ~remainingLanes;\n root.pendingLanes = remainingLanes; // Let's try everything again\n\n root.suspendedLanes = NoLanes;\n root.pingedLanes = NoLanes;\n root.expiredLanes &= remainingLanes;\n root.mutableReadLanes &= remainingLanes;\n root.entangledLanes &= remainingLanes;\n root.errorRecoveryDisabledLanes &= remainingLanes;\n var entanglements = root.entanglements;\n var expirationTimes = root.expirationTimes;\n var hiddenUpdates = root.hiddenUpdates; // Clear the lanes that no longer have pending work\n\n var lanes = noLongerPendingLanes;\n\n while (lanes > 0) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n entanglements[index] = NoLanes;\n expirationTimes[index] = NoTimestamp;\n var hiddenUpdatesForLane = hiddenUpdates[index];\n\n if (hiddenUpdatesForLane !== null) {\n hiddenUpdates[index] = null; // \"Hidden\" updates are updates that were made to a hidden component. They\n // have special logic associated with them because they may be entangled\n // with updates that occur outside that tree. But once the outer tree\n // commits, they behave like regular updates.\n\n for (var i = 0; i < hiddenUpdatesForLane.length; i++) {\n var update = hiddenUpdatesForLane[i];\n\n if (update !== null) {\n update.lane &= ~OffscreenLane;\n }\n }\n }\n\n lanes &= ~lane;\n }\n}\nfunction markRootEntangled(root, entangledLanes) {\n // In addition to entangling each of the given lanes with each other, we also\n // have to consider _transitive_ entanglements. For each lane that is already\n // entangled with *any* of the given lanes, that lane is now transitively\n // entangled with *all* the given lanes.\n //\n // Translated: If C is entangled with A, then entangling A with B also\n // entangles C with B.\n //\n // If this is hard to grasp, it might help to intentionally break this\n // function and look at the tests that fail in ReactTransition-test.js. Try\n // commenting out one of the conditions below.\n var rootEntangledLanes = root.entangledLanes |= entangledLanes;\n var entanglements = root.entanglements;\n var lanes = rootEntangledLanes;\n\n while (lanes) {\n var index = pickArbitraryLaneIndex(lanes);\n var lane = 1 << index;\n\n if ( // Is this one of the newly entangled lanes?\n lane & entangledLanes | // Is this lane transitively entangled with the newly entangled lanes?\n entanglements[index] & entangledLanes) {\n entanglements[index] |= entangledLanes;\n }\n\n lanes &= ~lane;\n }\n}\nfunction markHiddenUpdate(root, update, lane) {\n var index = laneToIndex(lane);\n var hiddenUpdates = root.hiddenUpdates;\n var hiddenUpdatesForLane = hiddenUpdates[index];\n\n if (hiddenUpdatesForLane === null) {\n hiddenUpdates[index] = [update];\n } else {\n hiddenUpdatesForLane.push(update);\n }\n\n update.lane = lane | OffscreenLane;\n}\nfunction getBumpedLaneForHydration(root, renderLanes) {\n var renderLane = getHighestPriorityLane(renderLanes);\n var lane;\n\n {\n switch (renderLane) {\n case SyncLane:\n lane = SyncHydrationLane;\n break;\n\n case InputContinuousLane:\n lane = InputContinuousHydrationLane;\n break;\n\n case DefaultLane:\n lane = DefaultHydrationLane;\n break;\n\n case TransitionLane1:\n case TransitionLane2:\n case TransitionLane3:\n case TransitionLane4:\n case TransitionLane5:\n case TransitionLane6:\n case TransitionLane7:\n case TransitionLane8:\n case TransitionLane9:\n case TransitionLane10:\n case TransitionLane11:\n case TransitionLane12:\n case TransitionLane13:\n case TransitionLane14:\n case TransitionLane15:\n case TransitionLane16:\n case RetryLane1:\n case RetryLane2:\n case RetryLane3:\n case RetryLane4:\n lane = TransitionHydrationLane;\n break;\n\n case IdleLane:\n lane = IdleHydrationLane;\n break;\n\n default:\n // Everything else is already either a hydration lane, or shouldn't\n // be retried at a hydration lane.\n lane = NoLane;\n break;\n }\n } // Check if the lane we chose is suspended. If so, that indicates that we\n // already attempted and failed to hydrate at that level. Also check if we're\n // already rendering that lane, which is rare but could happen.\n\n\n if ((lane & (root.suspendedLanes | renderLanes)) !== NoLane) {\n // Give up trying to hydrate and fall back to client render.\n return NoLane;\n }\n\n return lane;\n}\nfunction addFiberToLanesMap(root, fiber, lanes) {\n\n if (!isDevToolsPresent) {\n return;\n }\n\n var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap;\n\n while (lanes > 0) {\n var index = laneToIndex(lanes);\n var lane = 1 << index;\n var updaters = pendingUpdatersLaneMap[index];\n updaters.add(fiber);\n lanes &= ~lane;\n }\n}\nfunction movePendingFibersToMemoized(root, lanes) {\n\n if (!isDevToolsPresent) {\n return;\n }\n\n var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap;\n var memoizedUpdaters = root.memoizedUpdaters;\n\n while (lanes > 0) {\n var index = laneToIndex(lanes);\n var lane = 1 << index;\n var updaters = pendingUpdatersLaneMap[index];\n\n if (updaters.size > 0) {\n updaters.forEach(function (fiber) {\n var alternate = fiber.alternate;\n\n if (alternate === null || !memoizedUpdaters.has(alternate)) {\n memoizedUpdaters.add(fiber);\n }\n });\n updaters.clear();\n }\n\n lanes &= ~lane;\n }\n}\nfunction getTransitionsForLanes(root, lanes) {\n {\n return null;\n }\n}\n\nvar DiscreteEventPriority = SyncLane;\nvar ContinuousEventPriority = InputContinuousLane;\nvar DefaultEventPriority = DefaultLane;\nvar IdleEventPriority = IdleLane;\nvar currentUpdatePriority = NoLane;\nfunction getCurrentUpdatePriority() {\n return currentUpdatePriority;\n}\nfunction setCurrentUpdatePriority(newPriority) {\n currentUpdatePriority = newPriority;\n}\nfunction runWithPriority(priority, fn) {\n var previousPriority = currentUpdatePriority;\n\n try {\n currentUpdatePriority = priority;\n return fn();\n } finally {\n currentUpdatePriority = previousPriority;\n }\n}\nfunction higherEventPriority(a, b) {\n return a !== 0 && a < b ? a : b;\n}\nfunction lowerEventPriority(a, b) {\n return a === 0 || a > b ? a : b;\n}\nfunction isHigherEventPriority(a, b) {\n return a !== 0 && a < b;\n}\nfunction lanesToEventPriority(lanes) {\n var lane = getHighestPriorityLane(lanes);\n\n if (!isHigherEventPriority(DiscreteEventPriority, lane)) {\n return DiscreteEventPriority;\n }\n\n if (!isHigherEventPriority(ContinuousEventPriority, lane)) {\n return ContinuousEventPriority;\n }\n\n if (includesNonIdleWork(lane)) {\n return DefaultEventPriority;\n }\n\n return IdleEventPriority;\n}\n\n// $FlowFixMe[method-unbinding]\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\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}\n\nfunction checkAttributeStringCoercion(value, attributeName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` attribute is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', attributeName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\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 before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkPropStringCoercion(value, propName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` prop is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', propName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkCSSPropertyStringCoercion(value, propName) {\n {\n if (willCoercionThrow(value)) {\n error('The provided `%s` CSS property is an unsupported type %s.' + ' This value must be coerced to a string before before using it here.', propName, typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkHtmlStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('The provided HTML markup uses a value of unsupported type %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\nfunction checkFormFieldValueStringCoercion(value) {\n {\n if (willCoercionThrow(value)) {\n error('Form field values (value, checked, defaultValue, or defaultChecked props)' + ' must be strings, not %s.' + ' This value must be coerced to a string before before using it here.', typeName(value));\n\n return testStringCoercion(value); // throw (to help callers find troubleshooting comments)\n }\n }\n}\n\nvar FunctionComponent = 0;\nvar ClassComponent = 1;\nvar IndeterminateComponent = 2; // Before we know whether it is function or class\n\nvar HostRoot = 3; // Root of a host tree. Could be nested inside another node.\n\nvar HostPortal = 4; // A subtree. Could be an entry point to a different renderer.\n\nvar HostComponent = 5;\nvar HostText = 6;\nvar Fragment = 7;\nvar Mode = 8;\nvar ContextConsumer = 9;\nvar ContextProvider = 10;\nvar ForwardRef = 11;\nvar Profiler = 12;\nvar SuspenseComponent = 13;\nvar MemoComponent = 14;\nvar SimpleMemoComponent = 15;\nvar LazyComponent = 16;\nvar IncompleteClassComponent = 17;\nvar DehydratedFragment = 18;\nvar SuspenseListComponent = 19;\nvar ScopeComponent = 21;\nvar OffscreenComponent = 22;\nvar LegacyHiddenComponent = 23;\nvar CacheComponent = 24;\nvar TracingMarkerComponent = 25;\nvar HostHoistable = 26;\nvar HostSingleton = 27;\n\nvar randomKey = Math.random().toString(36).slice(2);\nvar internalInstanceKey = '__reactFiber$' + randomKey;\nvar internalPropsKey = '__reactProps$' + randomKey;\nvar internalContainerInstanceKey = '__reactContainer$' + randomKey;\nvar internalEventHandlersKey = '__reactEvents$' + randomKey;\nvar internalEventHandlerListenersKey = '__reactListeners$' + randomKey;\nvar internalEventHandlesSetKey = '__reactHandles$' + randomKey;\nvar internalRootNodeResourcesKey = '__reactResources$' + randomKey;\nvar internalHoistableMarker = '__reactMarker$' + randomKey;\nfunction detachDeletedInstance(node) {\n // TODO: This function is only called on host components. I don't think all of\n // these fields are relevant.\n delete node[internalInstanceKey];\n delete node[internalPropsKey];\n delete node[internalEventHandlersKey];\n delete node[internalEventHandlerListenersKey];\n delete node[internalEventHandlesSetKey];\n}\nfunction precacheFiberNode(hostInst, node) {\n node[internalInstanceKey] = hostInst;\n}\nfunction markContainerAsRoot(hostRoot, node) {\n // $FlowFixMe[prop-missing]\n node[internalContainerInstanceKey] = hostRoot;\n}\nfunction unmarkContainerAsRoot(node) {\n // $FlowFixMe[prop-missing]\n node[internalContainerInstanceKey] = null;\n}\nfunction isContainerMarkedAsRoot(node) {\n // $FlowFixMe[prop-missing]\n return !!node[internalContainerInstanceKey];\n} // Given a DOM node, return the closest HostComponent or HostText fiber ancestor.\n// If the target node is part of a hydrated or not yet rendered subtree, then\n// this may also return a SuspenseComponent or HostRoot to indicate that.\n// Conceptually the HostRoot fiber is a child of the Container node. So if you\n// pass the Container node as the targetNode, you will not actually get the\n// HostRoot back. To get to the HostRoot, you need to pass a child of it.\n// The same thing applies to Suspense boundaries.\n\nfunction getClosestInstanceFromNode(targetNode) {\n var targetInst = targetNode[internalInstanceKey];\n\n if (targetInst) {\n // Don't return HostRoot or SuspenseComponent here.\n return targetInst;\n } // If the direct event target isn't a React owned DOM node, we need to look\n // to see if one of its parents is a React owned DOM node.\n\n\n var parentNode = targetNode.parentNode;\n\n while (parentNode) {\n // We'll check if this is a container root that could include\n // React nodes in the future. We need to check this first because\n // if we're a child of a dehydrated container, we need to first\n // find that inner container before moving on to finding the parent\n // instance. Note that we don't check this field on the targetNode\n // itself because the fibers are conceptually between the container\n // node and the first child. It isn't surrounding the container node.\n // If it's not a container, we check if it's an instance.\n targetInst = parentNode[internalContainerInstanceKey] || parentNode[internalInstanceKey];\n\n if (targetInst) {\n // Since this wasn't the direct target of the event, we might have\n // stepped past dehydrated DOM nodes to get here. However they could\n // also have been non-React nodes. We need to answer which one.\n // If we the instance doesn't have any children, then there can't be\n // a nested suspense boundary within it. So we can use this as a fast\n // bailout. Most of the time, when people add non-React children to\n // the tree, it is using a ref to a child-less DOM node.\n // Normally we'd only need to check one of the fibers because if it\n // has ever gone from having children to deleting them or vice versa\n // it would have deleted the dehydrated boundary nested inside already.\n // However, since the HostRoot starts out with an alternate it might\n // have one on the alternate so we need to check in case this was a\n // root.\n var alternate = targetInst.alternate;\n\n if (targetInst.child !== null || alternate !== null && alternate.child !== null) {\n // Next we need to figure out if the node that skipped past is\n // nested within a dehydrated boundary and if so, which one.\n var suspenseInstance = getParentSuspenseInstance(targetNode);\n\n while (suspenseInstance !== null) {\n // We found a suspense instance. That means that we haven't\n // hydrated it yet. Even though we leave the comments in the\n // DOM after hydrating, and there are boundaries in the DOM\n // that could already be hydrated, we wouldn't have found them\n // through this pass since if the target is hydrated it would\n // have had an internalInstanceKey on it.\n // Let's get the fiber associated with the SuspenseComponent\n // as the deepest instance.\n // $FlowFixMe[prop-missing]\n var targetSuspenseInst = suspenseInstance[internalInstanceKey];\n\n if (targetSuspenseInst) {\n return targetSuspenseInst;\n } // If we don't find a Fiber on the comment, it might be because\n // we haven't gotten to hydrate it yet. There might still be a\n // parent boundary that hasn't above this one so we need to find\n // the outer most that is known.\n\n\n suspenseInstance = getParentSuspenseInstance(suspenseInstance); // If we don't find one, then that should mean that the parent\n // host component also hasn't hydrated yet. We can return it\n // below since it will bail out on the isMounted check later.\n }\n }\n\n return targetInst;\n }\n\n targetNode = parentNode;\n parentNode = targetNode.parentNode;\n }\n\n return null;\n}\n/**\n * Given a DOM node, return the ReactDOMComponent or ReactDOMTextComponent\n * instance, or null if the node was not rendered by this React.\n */\n\nfunction getInstanceFromNode(node) {\n var inst = node[internalInstanceKey] || node[internalContainerInstanceKey];\n\n if (inst) {\n var tag = inst.tag;\n\n if (tag === HostComponent || tag === HostText || tag === SuspenseComponent || (tag === HostHoistable ) || (tag === HostSingleton ) || tag === HostRoot) {\n return inst;\n } else {\n return null;\n }\n }\n\n return null;\n}\n/**\n * Given a ReactDOMComponent or ReactDOMTextComponent, return the corresponding\n * DOM node.\n */\n\nfunction getNodeFromInstance(inst) {\n var tag = inst.tag;\n\n if (tag === HostComponent || (tag === HostHoistable ) || (tag === HostSingleton ) || tag === HostText) {\n // In Fiber this, is just the state node right now. We assume it will be\n // a host component or host text.\n return inst.stateNode;\n } // Without this first invariant, passing a non-DOM-component triggers the next\n // invariant for a missing parent, which is super confusing.\n\n\n throw new Error('getNodeFromInstance: Invalid argument.');\n}\nfunction getFiberCurrentPropsFromNode(node) {\n return node[internalPropsKey] || null;\n}\nfunction updateFiberProps(node, props) {\n node[internalPropsKey] = props;\n}\nfunction getEventListenerSet(node) {\n var elementListenerSet = node[internalEventHandlersKey];\n\n if (elementListenerSet === undefined) {\n elementListenerSet = node[internalEventHandlersKey] = new Set();\n }\n\n return elementListenerSet;\n}\nfunction getResourcesFromRoot(root) {\n var resources = root[internalRootNodeResourcesKey];\n\n if (!resources) {\n resources = root[internalRootNodeResourcesKey] = {\n hoistableStyles: new Map(),\n hoistableScripts: new Map()\n };\n }\n\n return resources;\n}\nfunction isMarkedHoistable(node) {\n return !!node[internalHoistableMarker];\n}\nfunction markNodeAsHoistable(node) {\n node[internalHoistableMarker] = true;\n}\nfunction isOwnedInstance(node) {\n return !!(node[internalHoistableMarker] || node[internalInstanceKey]);\n}\n\nvar allNativeEvents = new Set();\n/**\n * Mapping from registration name to event name\n */\n\n\nvar registrationNameDependencies = {};\n/**\n * Mapping from lowercase registration names to the properly cased version,\n * used to warn in the case of missing event handlers. Available\n * only in __DEV__.\n * @type {Object}\n */\n\nvar possibleRegistrationNames = {} ; // Trust the developer to only use possibleRegistrationNames in true\n\nfunction registerTwoPhaseEvent(registrationName, dependencies) {\n registerDirectEvent(registrationName, dependencies);\n registerDirectEvent(registrationName + 'Capture', dependencies);\n}\nfunction registerDirectEvent(registrationName, dependencies) {\n {\n if (registrationNameDependencies[registrationName]) {\n error('EventRegistry: More than one plugin attempted to publish the same ' + 'registration name, `%s`.', registrationName);\n }\n }\n\n registrationNameDependencies[registrationName] = dependencies;\n\n {\n var lowerCasedName = registrationName.toLowerCase();\n possibleRegistrationNames[lowerCasedName] = registrationName;\n\n if (registrationName === 'onDoubleClick') {\n possibleRegistrationNames.ondblclick = registrationName;\n }\n }\n\n for (var i = 0; i < dependencies.length; i++) {\n allNativeEvents.add(dependencies[i]);\n }\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined');\n\nvar hasReadOnlyValue = {\n button: true,\n checkbox: true,\n image: true,\n hidden: true,\n radio: true,\n reset: true,\n submit: true\n};\nfunction checkControlledValueProps(tagName, props) {\n {\n if (!(hasReadOnlyValue[props.type] || props.onChange || props.onInput || props.readOnly || props.disabled || props.value == null)) {\n error('You provided a `value` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultValue`. Otherwise, ' + 'set either `onChange` or `readOnly`.');\n }\n\n if (!(props.onChange || props.readOnly || props.disabled || props.checked == null)) {\n error('You provided a `checked` prop to a form field without an ' + '`onChange` handler. This will render a read-only field. If ' + 'the field should be mutable use `defaultChecked`. Otherwise, ' + 'set either `onChange` or `readOnly`.');\n }\n }\n}\n\n/* eslint-disable max-len */\n\nvar ATTRIBUTE_NAME_START_CHAR = \":A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\";\n/* eslint-enable max-len */\n\nvar ATTRIBUTE_NAME_CHAR = ATTRIBUTE_NAME_START_CHAR + \"\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\";\nvar VALID_ATTRIBUTE_NAME_REGEX = new RegExp('^[' + ATTRIBUTE_NAME_START_CHAR + '][' + ATTRIBUTE_NAME_CHAR + ']*$');\nvar illegalAttributeNameCache = {};\nvar validatedAttributeNameCache = {};\nfunction isAttributeNameSafe(attributeName) {\n if (hasOwnProperty.call(validatedAttributeNameCache, attributeName)) {\n return true;\n }\n\n if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) {\n return false;\n }\n\n if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName)) {\n validatedAttributeNameCache[attributeName] = true;\n return true;\n }\n\n illegalAttributeNameCache[attributeName] = true;\n\n {\n error('Invalid attribute name: `%s`', attributeName);\n }\n\n return false;\n}\n\n/**\n * Get the value for a attribute on a node. Only used in DEV for SSR validation.\n * The third argument is used as a hint of what the expected value is. Some\n * attributes have multiple equivalent values.\n */\n\nfunction getValueForAttribute(node, name, expected) {\n {\n if (!isAttributeNameSafe(name)) {\n return;\n }\n\n if (!node.hasAttribute(name)) {\n // shouldRemoveAttribute\n switch (typeof expected) {\n case 'function':\n case 'symbol':\n // eslint-disable-line\n return expected;\n\n case 'boolean':\n {\n var prefix = name.toLowerCase().slice(0, 5);\n\n if (prefix !== 'data-' && prefix !== 'aria-') {\n return expected;\n }\n }\n }\n\n return expected === undefined ? undefined : null;\n }\n\n var value = node.getAttribute(name);\n\n {\n checkAttributeStringCoercion(expected, name);\n }\n\n if (value === '' + expected) {\n return expected;\n }\n\n return value;\n }\n}\nfunction getValueForAttributeOnCustomComponent(node, name, expected) {\n {\n if (!isAttributeNameSafe(name)) {\n return;\n }\n\n if (!node.hasAttribute(name)) {\n // shouldRemoveAttribute\n switch (typeof expected) {\n case 'symbol':\n case 'object':\n // Symbols and objects are ignored when they're emitted so\n // it would be expected that they end up not having an attribute.\n return expected;\n\n }\n\n return expected === undefined ? undefined : null;\n }\n\n var value = node.getAttribute(name);\n\n {\n checkAttributeStringCoercion(expected, name);\n }\n\n if (value === '' + expected) {\n return expected;\n }\n\n return value;\n }\n}\nfunction setValueForAttribute(node, name, value) {\n if (isAttributeNameSafe(name)) {\n // If the prop isn't in the special list, treat it as a simple attribute.\n // shouldRemoveAttribute\n if (value === null) {\n node.removeAttribute(name);\n return;\n }\n\n switch (typeof value) {\n case 'undefined':\n case 'function':\n case 'symbol':\n // eslint-disable-line\n node.removeAttribute(name);\n return;\n\n case 'boolean':\n {\n var prefix = name.toLowerCase().slice(0, 5);\n\n if (prefix !== 'data-' && prefix !== 'aria-') {\n node.removeAttribute(name);\n return;\n }\n }\n }\n\n {\n checkAttributeStringCoercion(value, name);\n }\n\n node.setAttribute(name, '' + value);\n }\n}\nfunction setValueForKnownAttribute(node, name, value) {\n if (value === null) {\n node.removeAttribute(name);\n return;\n }\n\n switch (typeof value) {\n case 'undefined':\n case 'function':\n case 'symbol':\n case 'boolean':\n {\n node.removeAttribute(name);\n return;\n }\n }\n\n {\n checkAttributeStringCoercion(value, name);\n }\n\n node.setAttribute(name, '' + value);\n}\nfunction setValueForNamespacedAttribute(node, namespace, name, value) {\n if (value === null) {\n node.removeAttribute(name);\n return;\n }\n\n switch (typeof value) {\n case 'undefined':\n case 'function':\n case 'symbol':\n case 'boolean':\n {\n node.removeAttribute(name);\n return;\n }\n }\n\n {\n checkAttributeStringCoercion(value, name);\n }\n\n node.setAttributeNS(namespace, name, '' + value);\n}\n\nvar ReactCurrentDispatcher$2 = ReactSharedInternals.ReactCurrentDispatcher;\nvar prefix;\nfunction describeBuiltInComponentFrame(name, source, 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$1 = typeof WeakMap === 'function' ? WeakMap : Map;\n componentFrameCache = new PossiblyWeakMap$1();\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 var control;\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$2.current; // Set the dispatcher in DEV because this might be call in the render function\n // for warnings.\n\n ReactCurrentDispatcher$2.current = null;\n disableLogs();\n }\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 fn();\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 // 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 = sample.stack.split('\\n');\n var controlLines = control.stack.split('\\n');\n var s = sampleLines.length - 1;\n var 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 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 \"\"\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('')) {\n _frame = _frame.replace('', fn.displayName);\n }\n\n {\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$2.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}\n\nfunction describeClassComponentFrame(ctor, source, ownerFn) {\n {\n return describeNativeComponentFrame(ctor, true);\n }\n}\nfunction describeFunctionComponentFrame(fn, source, ownerFn) {\n {\n return describeNativeComponentFrame(fn, false);\n }\n}\n\nfunction shouldConstruct$1(Component) {\n var prototype = Component.prototype;\n return !!(prototype && prototype.isReactComponent);\n}\n\nfunction describeUnknownElementTypeFrameInDEV(type, source, ownerFn) {\n\n if (type == null) {\n return '';\n }\n\n if (typeof type === 'function') {\n {\n return describeNativeComponentFrame(type, shouldConstruct$1(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, source, 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), source, ownerFn);\n } catch (x) {}\n }\n }\n }\n\n return '';\n}\n\nfunction describeFiber(fiber) {\n\n switch (fiber.tag) {\n case HostHoistable:\n case HostSingleton:\n case HostComponent:\n return describeBuiltInComponentFrame(fiber.type);\n\n case LazyComponent:\n return describeBuiltInComponentFrame('Lazy');\n\n case SuspenseComponent:\n return describeBuiltInComponentFrame('Suspense');\n\n case SuspenseListComponent:\n return describeBuiltInComponentFrame('SuspenseList');\n\n case FunctionComponent:\n case IndeterminateComponent:\n case SimpleMemoComponent:\n return describeFunctionComponentFrame(fiber.type);\n\n case ForwardRef:\n return describeFunctionComponentFrame(fiber.type.render);\n\n case ClassComponent:\n return describeClassComponentFrame(fiber.type);\n\n default:\n return '';\n }\n}\n\nfunction getStackByFiberInDevAndProd(workInProgress) {\n try {\n var info = '';\n var node = workInProgress;\n\n do {\n info += describeFiber(node); // $FlowFixMe[incompatible-type] we bail out when we get a null\n\n node = node.return;\n } while (node);\n\n return info;\n } catch (x) {\n return '\\nError generating stack: ' + x.message + '\\n' + x.stack;\n }\n}\n\nfunction getWrappedName$1(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$1(type) {\n return type.displayName || 'Context';\n} // Note that the reconciler package should generally prefer to use getComponentNameFromFiber() instead.\n\n\nfunction getComponentNameFromType(type) {\n if (type == null) {\n // Host root, text node or just invalid type.\n return null;\n }\n\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 if (typeof type === 'function') {\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 switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n var context = type;\n return getContextName$1(context) + '.Consumer';\n\n case REACT_PROVIDER_TYPE:\n var provider = type;\n return getContextName$1(provider._context) + '.Provider';\n\n case REACT_FORWARD_REF_TYPE:\n return getWrappedName$1(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 case REACT_SERVER_CONTEXT_TYPE:\n {\n var context2 = type;\n return (context2.displayName || context2._globalName) + '.Provider';\n }\n\n }\n }\n\n return null;\n}\n\nfunction getWrappedName(outerType, innerType, wrapperName) {\n var functionName = innerType.displayName || innerType.name || '';\n return outerType.displayName || (functionName !== '' ? wrapperName + \"(\" + functionName + \")\" : wrapperName);\n} // Keep in sync with shared/getComponentNameFromType\n\n\nfunction getContextName(type) {\n return type.displayName || 'Context';\n}\n\nfunction getComponentNameFromFiber(fiber) {\n var tag = fiber.tag,\n type = fiber.type;\n\n switch (tag) {\n case CacheComponent:\n return 'Cache';\n\n case ContextConsumer:\n var context = type;\n return getContextName(context) + '.Consumer';\n\n case ContextProvider:\n var provider = type;\n return getContextName(provider._context) + '.Provider';\n\n case DehydratedFragment:\n return 'DehydratedFragment';\n\n case ForwardRef:\n return getWrappedName(type, type.render, 'ForwardRef');\n\n case Fragment:\n return 'Fragment';\n\n case HostHoistable:\n case HostSingleton:\n case HostComponent:\n // Host component type is the display name (e.g. \"div\", \"View\")\n return type;\n\n case HostPortal:\n return 'Portal';\n\n case HostRoot:\n return 'Root';\n\n case HostText:\n return 'Text';\n\n case LazyComponent:\n // Name comes from the type in this case; we don't have a tag.\n return getComponentNameFromType(type);\n\n case Mode:\n if (type === REACT_STRICT_MODE_TYPE) {\n // Don't be less specific than shared/getComponentNameFromType\n return 'StrictMode';\n }\n\n return 'Mode';\n\n case OffscreenComponent:\n return 'Offscreen';\n\n case Profiler:\n return 'Profiler';\n\n case ScopeComponent:\n return 'Scope';\n\n case SuspenseComponent:\n return 'Suspense';\n\n case SuspenseListComponent:\n return 'SuspenseList';\n\n case TracingMarkerComponent:\n return 'TracingMarker';\n // The display name for this tags come from the user-provided type:\n\n case ClassComponent:\n case FunctionComponent:\n case IncompleteClassComponent:\n case IndeterminateComponent:\n case MemoComponent:\n case SimpleMemoComponent:\n if (typeof type === 'function') {\n return type.displayName || type.name || null;\n }\n\n if (typeof type === 'string') {\n return type;\n }\n\n break;\n\n }\n\n return null;\n}\n\nvar ReactDebugCurrentFrame$1 = ReactSharedInternals.ReactDebugCurrentFrame;\nvar current = null;\nvar isRendering = false;\nfunction getCurrentFiberOwnerNameInDevOrNull() {\n {\n if (current === null) {\n return null;\n }\n\n var owner = current._debugOwner;\n\n if (owner !== null && typeof owner !== 'undefined') {\n return getComponentNameFromFiber(owner);\n }\n }\n\n return null;\n}\n\nfunction getCurrentFiberStackInDev() {\n {\n if (current === null) {\n return '';\n } // Safe because if current fiber exists, we are reconciling,\n // and it is guaranteed to be the work-in-progress version.\n\n\n return getStackByFiberInDevAndProd(current);\n }\n}\n\nfunction resetCurrentFiber() {\n {\n ReactDebugCurrentFrame$1.getCurrentStack = null;\n current = null;\n isRendering = false;\n }\n}\nfunction setCurrentFiber(fiber) {\n {\n ReactDebugCurrentFrame$1.getCurrentStack = fiber === null ? null : getCurrentFiberStackInDev;\n current = fiber;\n isRendering = false;\n }\n}\nfunction getCurrentFiber() {\n {\n return current;\n }\n}\nfunction setIsRendering(rendering) {\n {\n isRendering = rendering;\n }\n}\n\n// around this limitation, we use an opaque type that can only be obtained by\n// passing the value through getToStringValue first.\n\nfunction toString(value) {\n // The coercion safety check is performed in getToStringValue().\n // eslint-disable-next-line react-internal/safe-string-coercion\n return '' + value;\n}\nfunction getToStringValue(value) {\n switch (typeof value) {\n case 'boolean':\n case 'number':\n case 'string':\n case 'undefined':\n return value;\n\n case 'object':\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n return value;\n\n default:\n // function, symbol are assigned as empty strings\n return '';\n }\n}\n\nfunction isCheckable(elem) {\n var type = elem.type;\n var nodeName = elem.nodeName;\n return nodeName && nodeName.toLowerCase() === 'input' && (type === 'checkbox' || type === 'radio');\n}\n\nfunction getTracker(node) {\n return node._valueTracker;\n}\n\nfunction detachTracker(node) {\n node._valueTracker = null;\n}\n\nfunction getValueFromNode(node) {\n var value = '';\n\n if (!node) {\n return value;\n }\n\n if (isCheckable(node)) {\n value = node.checked ? 'true' : 'false';\n } else {\n value = node.value;\n }\n\n return value;\n}\n\nfunction trackValueOnNode(node) {\n var valueField = isCheckable(node) ? 'checked' : 'value';\n var descriptor = Object.getOwnPropertyDescriptor(node.constructor.prototype, valueField);\n\n {\n checkFormFieldValueStringCoercion(node[valueField]);\n }\n\n var currentValue = '' + node[valueField]; // if someone has already defined a value or Safari, then bail\n // and don't track value will cause over reporting of changes,\n // but it's better then a hard failure\n // (needed for certain tests that spyOn input values and Safari)\n\n if (node.hasOwnProperty(valueField) || typeof descriptor === 'undefined' || typeof descriptor.get !== 'function' || typeof descriptor.set !== 'function') {\n return;\n }\n\n var get = descriptor.get,\n set = descriptor.set;\n Object.defineProperty(node, valueField, {\n configurable: true,\n // $FlowFixMe[missing-this-annot]\n get: function () {\n return get.call(this);\n },\n // $FlowFixMe[missing-local-annot]\n // $FlowFixMe[missing-this-annot]\n set: function (value) {\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n currentValue = '' + value;\n set.call(this, value);\n }\n }); // We could've passed this the first time\n // but it triggers a bug in IE11 and Edge 14/15.\n // Calling defineProperty() again should be equivalent.\n // https://github.com/facebook/react/issues/11768\n\n Object.defineProperty(node, valueField, {\n enumerable: descriptor.enumerable\n });\n var tracker = {\n getValue: function () {\n return currentValue;\n },\n setValue: function (value) {\n {\n checkFormFieldValueStringCoercion(value);\n }\n\n currentValue = '' + value;\n },\n stopTracking: function () {\n detachTracker(node);\n delete node[valueField];\n }\n };\n return tracker;\n}\n\nfunction track(node) {\n if (getTracker(node)) {\n return;\n }\n\n node._valueTracker = trackValueOnNode(node);\n}\nfunction updateValueIfChanged(node) {\n if (!node) {\n return false;\n }\n\n var tracker = getTracker(node); // if there is no tracker at this point it's unlikely\n // that trying again will succeed\n\n if (!tracker) {\n return true;\n }\n\n var lastValue = tracker.getValue();\n var nextValue = getValueFromNode(node);\n\n if (nextValue !== lastValue) {\n tracker.setValue(nextValue);\n return true;\n }\n\n return false;\n}\n\nfunction getActiveElement(doc) {\n doc = doc || (typeof document !== 'undefined' ? document : undefined);\n\n if (typeof doc === 'undefined') {\n return null;\n }\n\n try {\n return doc.activeElement || doc.body;\n } catch (e) {\n return doc.body;\n }\n}\n\n// When passing user input into querySelector(All) the embedded string must not alter\n// the semantics of the query. This escape function is safe to use when we know the\n// provided value is going to be wrapped in double quotes as part of an attribute selector\n// Do not use it anywhere else\n// we escape double quotes and backslashes\nvar escapeSelectorAttributeValueInsideDoubleQuotesRegex = /[\\n\\\"\\\\]/g;\nfunction escapeSelectorAttributeValueInsideDoubleQuotes(value) {\n return value.replace(escapeSelectorAttributeValueInsideDoubleQuotesRegex, function (ch) {\n return '\\\\' + ch.charCodeAt(0).toString(16) + ' ';\n });\n}\n\nvar didWarnValueDefaultValue$1 = false;\nvar didWarnCheckedDefaultChecked = false;\n/**\n * Implements an host component that allows setting these optional\n * props: `checked`, `value`, `defaultChecked`, and `defaultValue`.\n *\n * If `checked` or `value` are not supplied (or null/undefined), user actions\n * that affect the checked state or value will trigger updates to the element.\n *\n * If they are supplied (and not null/undefined), the rendered element will not\n * trigger updates to the element. Instead, the props must change in order for\n * the rendered element to be updated.\n *\n * The rendered element will be initialized as unchecked (or `defaultChecked`)\n * with an empty value (or `defaultValue`).\n *\n * See http://www.w3.org/TR/2012/WD-html5-20121025/the-input-element.html\n */\n\nfunction validateInputProps(element, props) {\n {\n // Normally we check for undefined and null the same, but explicitly specifying both\n // properties, at all is probably worth warning for. We could move this either direction\n // and just make it ok to pass null or just check hasOwnProperty.\n if (props.checked !== undefined && props.defaultChecked !== undefined && !didWarnCheckedDefaultChecked) {\n error('%s contains an input of type %s with both checked and defaultChecked props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the checked prop, or the defaultChecked prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component', props.type);\n\n didWarnCheckedDefaultChecked = true;\n }\n\n if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValueDefaultValue$1) {\n error('%s contains an input of type %s with both value and defaultValue props. ' + 'Input elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled input ' + 'element and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component', props.type);\n\n didWarnValueDefaultValue$1 = true;\n }\n }\n}\nfunction updateInput(element, value, defaultValue, lastDefaultValue, checked, defaultChecked, type, name) {\n var node = element; // Temporarily disconnect the input from any radio buttons.\n // Changing the type or name as the same time as changing the checked value\n // needs to be atomically applied. We can only ensure that by disconnecting\n // the name while do the mutations and then reapply the name after that's done.\n\n node.name = '';\n\n if (type != null && typeof type !== 'function' && typeof type !== 'symbol' && typeof type !== 'boolean') {\n {\n checkAttributeStringCoercion(type, 'type');\n }\n\n node.type = type;\n } else {\n node.removeAttribute('type');\n }\n\n if (value != null) {\n if (type === 'number') {\n if ( // $FlowFixMe[incompatible-type]\n value === 0 && node.value === '' || // We explicitly want to coerce to number here if possible.\n // eslint-disable-next-line\n node.value != value) {\n node.value = toString(getToStringValue(value));\n }\n } else if (node.value !== toString(getToStringValue(value))) {\n node.value = toString(getToStringValue(value));\n }\n } else if (type === 'submit' || type === 'reset') {\n // Submit/reset inputs need the attribute removed completely to avoid\n // blank-text buttons.\n node.removeAttribute('value');\n }\n\n {\n // When syncing the value attribute, the value comes from a cascade of\n // properties:\n // 1. The value React property\n // 2. The defaultValue React property\n // 3. Otherwise there should be no change\n if (value != null) {\n setDefaultValue(node, type, getToStringValue(value));\n } else if (defaultValue != null) {\n setDefaultValue(node, type, getToStringValue(defaultValue));\n } else if (lastDefaultValue != null) {\n node.removeAttribute('value');\n }\n }\n\n {\n // When syncing the checked attribute, it only changes when it needs\n // to be removed, such as transitioning from a checkbox into a text input\n if (checked == null && defaultChecked != null) {\n node.defaultChecked = !!defaultChecked;\n }\n }\n\n if (checked != null && node.checked !== !!checked) {\n node.checked = checked;\n }\n\n if (name != null && typeof name !== 'function' && typeof name !== 'symbol' && typeof name !== 'boolean') {\n {\n checkAttributeStringCoercion(name, 'name');\n }\n\n node.name = toString(getToStringValue(name));\n } else {\n node.removeAttribute('name');\n }\n}\nfunction initInput(element, value, defaultValue, checked, defaultChecked, type, name, isHydrating) {\n var node = element;\n\n if (type != null && typeof type !== 'function' && typeof type !== 'symbol' && typeof type !== 'boolean') {\n {\n checkAttributeStringCoercion(type, 'type');\n }\n\n node.type = type;\n }\n\n if (value != null || defaultValue != null) {\n var isButton = type === 'submit' || type === 'reset'; // Avoid setting value attribute on submit/reset inputs as it overrides the\n // default value provided by the browser. See: #12872\n\n if (isButton && (value === undefined || value === null)) {\n return;\n }\n\n var defaultValueStr = defaultValue != null ? toString(getToStringValue(defaultValue)) : '';\n var initialValue = value != null ? toString(getToStringValue(value)) : defaultValueStr; // Do not assign value if it is already set. This prevents user text input\n // from being lost during SSR hydration.\n\n if (!isHydrating) {\n {\n // When syncing the value attribute, the value property should use\n // the wrapperState._initialValue property. This uses:\n //\n // 1. The value React property when present\n // 2. The defaultValue React property when present\n // 3. An empty string\n if (initialValue !== node.value) {\n node.value = initialValue;\n }\n }\n }\n\n {\n // Otherwise, the value attribute is synchronized to the property,\n // so we assign defaultValue to the same thing as the value property\n // assignment step above.\n node.defaultValue = initialValue;\n }\n } // Normally, we'd just do `node.checked = node.checked` upon initial mount, less this bug\n // this is needed to work around a chrome bug where setting defaultChecked\n // will sometimes influence the value of checked (even after detachment).\n // Reference: https://bugs.chromium.org/p/chromium/issues/detail?id=608416\n // We need to temporarily unset name to avoid disrupting radio button groups.\n\n\n var checkedOrDefault = checked != null ? checked : defaultChecked; // TODO: This 'function' or 'symbol' check isn't replicated in other places\n // so this semantic is inconsistent.\n\n var initialChecked = typeof checkedOrDefault !== 'function' && typeof checkedOrDefault !== 'symbol' && !!checkedOrDefault; // The checked property never gets assigned. It must be manually set.\n // We don't want to do this when hydrating so that existing user input isn't\n // modified\n // TODO: I'm pretty sure this is a bug because initialValueTracking won't be\n // correct for the hydration case then.\n\n if (!isHydrating) {\n node.checked = !!initialChecked;\n }\n\n {\n // When syncing the checked attribute, both the checked property and\n // attribute are assigned at the same time using defaultChecked. This uses:\n //\n // 1. The checked React property when present\n // 2. The defaultChecked React property when present\n // 3. Otherwise, false\n node.defaultChecked = !node.defaultChecked;\n node.defaultChecked = !!initialChecked;\n } // Name needs to be set at the end so that it applies atomically to connected radio buttons.\n\n\n if (name != null && typeof name !== 'function' && typeof name !== 'symbol' && typeof name !== 'boolean') {\n {\n checkAttributeStringCoercion(name, 'name');\n }\n\n node.name = name;\n }\n}\nfunction restoreControlledInputState(element, props) {\n var rootNode = element;\n updateInput(rootNode, props.value, props.defaultValue, props.defaultValue, props.checked, props.defaultChecked, props.type, props.name);\n var name = props.name;\n\n if (props.type === 'radio' && name != null) {\n var queryRoot = rootNode;\n\n while (queryRoot.parentNode) {\n queryRoot = queryRoot.parentNode;\n } // If `rootNode.form` was non-null, then we could try `form.elements`,\n // but that sometimes behaves strangely in IE8. We could also try using\n // `form.getElementsByName`, but that will only return direct children\n // and won't include inputs that use the HTML5 `form=` attribute. Since\n // the input might not even be in a form. It might not even be in the\n // document. Let's just use the local `querySelectorAll` to ensure we don't\n // miss anything.\n\n\n {\n checkAttributeStringCoercion(name, 'name');\n }\n\n var group = queryRoot.querySelectorAll('input[name=\"' + escapeSelectorAttributeValueInsideDoubleQuotes('' + name) + '\"][type=\"radio\"]');\n\n for (var i = 0; i < group.length; i++) {\n var otherNode = group[i];\n\n if (otherNode === rootNode || otherNode.form !== rootNode.form) {\n continue;\n } // This will throw if radio buttons rendered by different copies of React\n // and the same name are rendered into the same form (same as #1939).\n // That's probably okay; we don't support it just as we don't support\n // mixing React radio buttons with non-React ones.\n\n\n var otherProps = getFiberCurrentPropsFromNode(otherNode);\n\n if (!otherProps) {\n throw new Error('ReactDOMInput: Mixing React and non-React radio inputs with the ' + 'same `name` is not supported.');\n } // We need update the tracked value on the named cousin since the value\n // was changed but the input saw no event or value set\n\n\n updateValueIfChanged(otherNode); // If this is a controlled radio button group, forcing the input that\n // was previously checked to update will cause it to be come re-checked\n // as appropriate.\n\n updateInput(otherNode, otherProps.value, otherProps.defaultValue, otherProps.defaultValue, otherProps.checked, otherProps.defaultChecked, otherProps.type, otherProps.name);\n }\n }\n} // In Chrome, assigning defaultValue to certain input types triggers input validation.\n// For number inputs, the display value loses trailing decimal points. For email inputs,\n// Chrome raises \"The specified value is not a valid email address\".\n//\n// Here we check to see if the defaultValue has actually changed, avoiding these problems\n// when the user is inputting text\n//\n// https://github.com/facebook/react/issues/7253\n\nfunction setDefaultValue(node, type, value) {\n if ( // Focused number inputs synchronize on blur. See ChangeEventPlugin.js\n type !== 'number' || getActiveElement(node.ownerDocument) !== node) {\n if (node.defaultValue !== toString(value)) {\n node.defaultValue = toString(value);\n }\n }\n}\n\nvar didWarnSelectedSetOnOption = false;\nvar didWarnInvalidChild = false;\nvar didWarnInvalidInnerHTML = false;\n/**\n * Implements an