{"ast":null,"code":"\"use strict\";\n\nexports.__esModule = true;\nexports.Html = Html;\nexports.Main = Main;\nexports.NextScript = exports.Head = exports.default = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _server = _interopRequireDefault(require(\"styled-jsx/server\"));\n\nvar _constants = require(\"../next-server/lib/constants\");\n\nvar _documentContext = require(\"../next-server/lib/document-context\");\n\nvar _utils = require(\"../next-server/lib/utils\");\n\nexports.DocumentContext = _utils.DocumentContext;\nexports.DocumentInitialProps = _utils.DocumentInitialProps;\nexports.DocumentProps = _utils.DocumentProps;\n\nvar _utils2 = require(\"../next-server/server/utils\");\n\nvar _htmlescape = require(\"../server/htmlescape\");\n\nfunction _interopRequireDefault(obj) {\n  return obj && obj.__esModule ? obj : {\n    default: obj\n  };\n}\n\nfunction _getRequireWildcardCache() {\n  if (typeof WeakMap !== \"function\") return null;\n  var cache = new WeakMap();\n\n  _getRequireWildcardCache = function () {\n    return cache;\n  };\n\n  return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n  if (obj && obj.__esModule) {\n    return obj;\n  }\n\n  if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") {\n    return {\n      default: obj\n    };\n  }\n\n  var cache = _getRequireWildcardCache();\n\n  if (cache && cache.has(obj)) {\n    return cache.get(obj);\n  }\n\n  var newObj = {};\n  var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n  for (var key in obj) {\n    if (Object.prototype.hasOwnProperty.call(obj, key)) {\n      var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n      if (desc && (desc.get || desc.set)) {\n        Object.defineProperty(newObj, key, desc);\n      } else {\n        newObj[key] = obj[key];\n      }\n    }\n  }\n\n  newObj.default = obj;\n\n  if (cache) {\n    cache.set(obj, newObj);\n  }\n\n  return newObj;\n}\n\nfunction dedupe(bundles) {\n  const files = new Set();\n  const kept = [];\n\n  for (const bundle of bundles) {\n    if (files.has(bundle.file)) continue;\n    files.add(bundle.file);\n    kept.push(bundle);\n  }\n\n  return kept;\n}\n\nfunction getOptionalModernScriptVariant(path) {\n  if (process.env.__NEXT_MODERN_BUILD) {\n    return path.replace(/\\.js$/, '.module.js');\n  }\n\n  return path;\n}\n/**\n* `Document` component handles the initial `document` markup and renders only on the server side.\n* Commonly used for implementing server side rendering for `css-in-js` libraries.\n*/\n\n\nclass Document extends _react.Component {\n  /**\n  * `getInitialProps` hook returns the context object with the addition of `renderPage`.\n  * `renderPage` callback executes `React` rendering logic synchronously to support server-rendering wrappers\n  */\n  static async getInitialProps(ctx) {\n    const enhanceApp = App => {\n      return props => /*#__PURE__*/_react.default.createElement(App, props);\n    };\n\n    const {\n      html,\n      head\n    } = await ctx.renderPage({\n      enhanceApp\n    });\n    const styles = [...(0, _server.default)()];\n    return {\n      html,\n      head,\n      styles\n    };\n  }\n\n  static renderDocument(DocumentComponent, props) {\n    return /*#__PURE__*/_react.default.createElement(_documentContext.DocumentContext.Provider, {\n      value: {\n        _documentProps: props,\n        // In dev we invalidate the cache by appending a timestamp to the resource URL.\n        // This is a workaround to fix https://github.com/vercel/next.js/issues/5860\n        // TODO: remove this workaround when https://bugs.webkit.org/show_bug.cgi?id=187726 is fixed.\n        _devOnlyInvalidateCacheQueryString: true ? '?ts=' + Date.now() : ''\n      }\n    }, /*#__PURE__*/_react.default.createElement(DocumentComponent, props));\n  }\n\n  render() {\n    return /*#__PURE__*/_react.default.createElement(Html, null, /*#__PURE__*/_react.default.createElement(Head, null), /*#__PURE__*/_react.default.createElement(\"body\", null, /*#__PURE__*/_react.default.createElement(Main, null), /*#__PURE__*/_react.default.createElement(NextScript, null)));\n  }\n\n}\n\nexports.default = Document;\nDocument.headTagsMiddleware = process.env.__NEXT_PLUGINS ? Promise.resolve().then(() => _interopRequireWildcard(require('next-plugin-loader?middleware=document-head-tags-server!'))) : () => [];\n\nfunction Html(props) {\n  const {\n    inAmpMode\n  } = (0, _react.useContext)(_documentContext.DocumentContext)._documentProps;\n\n  return /*#__PURE__*/_react.default.createElement(\"html\", Object.assign({}, props, {\n    amp: inAmpMode ? '' : undefined,\n    \"data-ampdevmode\": inAmpMode && true ? '' : undefined\n  }));\n}\n\nclass Head extends _react.Component {\n  constructor(...args) {\n    super(...args);\n    this.context = void 0;\n  }\n\n  getCssLinks() {\n    const {\n      assetPrefix,\n      files\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    const cssFiles = files && files.length ? files.filter(f => f.endsWith('.css')) : [];\n    const cssLinkElements = [];\n    cssFiles.forEach(file => {\n      cssLinkElements.push( /*#__PURE__*/_react.default.createElement(\"link\", {\n        key: `${file}-preload`,\n        nonce: this.props.nonce,\n        rel: \"preload\",\n        href: `${assetPrefix}/_next/${encodeURI(file)}${_devOnlyInvalidateCacheQueryString}`,\n        as: \"style\",\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n      }), /*#__PURE__*/_react.default.createElement(\"link\", {\n        key: file,\n        nonce: this.props.nonce,\n        rel: \"stylesheet\",\n        href: `${assetPrefix}/_next/${encodeURI(file)}${_devOnlyInvalidateCacheQueryString}`,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n      }));\n    });\n    return cssLinkElements.length === 0 ? null : cssLinkElements;\n  }\n\n  getPreloadDynamicChunks() {\n    const {\n      dynamicImports,\n      assetPrefix\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    return dedupe(dynamicImports).map(bundle => {\n      // `dynamicImports` will contain both `.js` and `.module.js` when the\n      // feature is enabled. This clause will filter down to the modern\n      // variants only.\n      if (!bundle.file.endsWith(getOptionalModernScriptVariant('.js'))) {\n        return null;\n      }\n\n      return /*#__PURE__*/_react.default.createElement(\"link\", {\n        rel: \"preload\",\n        key: bundle.file,\n        href: `${assetPrefix}/_next/${encodeURI(bundle.file)}${_devOnlyInvalidateCacheQueryString}`,\n        as: \"script\",\n        nonce: this.props.nonce,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n      });\n    }) // Filter out nulled scripts\n    .filter(Boolean);\n  }\n\n  getPreloadMainLinks() {\n    const {\n      assetPrefix,\n      files\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    const preloadFiles = files && files.length ? files.filter(file => {\n      // `dynamicImports` will contain both `.js` and `.module.js` when\n      // the feature is enabled. This clause will filter down to the\n      // modern variants only.\n      return file.endsWith(getOptionalModernScriptVariant('.js'));\n    }) : [];\n    return !preloadFiles.length ? null : preloadFiles.map(file => /*#__PURE__*/_react.default.createElement(\"link\", {\n      key: file,\n      nonce: this.props.nonce,\n      rel: \"preload\",\n      href: `${assetPrefix}/_next/${encodeURI(file)}${_devOnlyInvalidateCacheQueryString}`,\n      as: \"script\",\n      crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n    }));\n  }\n\n  render() {\n    const {\n      styles,\n      ampPath,\n      inAmpMode,\n      hybridAmp,\n      canonicalBase,\n      __NEXT_DATA__,\n      dangerousAsPath,\n      headTags,\n      unstable_runtimeJS\n    } = this.context._documentProps;\n    const disableRuntimeJS = unstable_runtimeJS === false;\n    let {\n      head\n    } = this.context._documentProps;\n    let children = this.props.children; // show a warning if Head contains <title> (only in development)\n\n    if (true) {\n      children = _react.default.Children.map(children, child => {\n        var _child$props;\n\n        const isReactHelmet = child === null || child === void 0 ? void 0 : (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props['data-react-helmet'];\n\n        if (!isReactHelmet) {\n          var _child$props2;\n\n          if ((child === null || child === void 0 ? void 0 : child.type) === 'title') {\n            console.warn(\"Warning: <title> should not be used in _document.js's <Head>. https://err.sh/next.js/no-document-title\");\n          } else if ((child === null || child === void 0 ? void 0 : child.type) === 'meta' && (child === null || child === void 0 ? void 0 : (_child$props2 = child.props) === null || _child$props2 === void 0 ? void 0 : _child$props2.name) === 'viewport') {\n            console.warn(\"Warning: viewport meta tags should not be used in _document.js's <Head>. https://err.sh/next.js/no-document-viewport-meta\");\n          }\n        }\n\n        return child;\n      });\n      if (this.props.crossOrigin) console.warn('Warning: `Head` attribute `crossOrigin` is deprecated. https://err.sh/next.js/doc-crossorigin-deprecated');\n    }\n\n    let hasAmphtmlRel = false;\n    let hasCanonicalRel = false; // show warning and remove conflicting amp head tags\n\n    head = _react.default.Children.map(head || [], child => {\n      if (!child) return child;\n      const {\n        type,\n        props\n      } = child;\n\n      if (inAmpMode) {\n        let badProp = '';\n\n        if (type === 'meta' && props.name === 'viewport') {\n          badProp = 'name=\"viewport\"';\n        } else if (type === 'link' && props.rel === 'canonical') {\n          hasCanonicalRel = true;\n        } else if (type === 'script') {\n          // only block if\n          // 1. it has a src and isn't pointing to ampproject's CDN\n          // 2. it is using dangerouslySetInnerHTML without a type or\n          // a type of text/javascript\n          if (props.src && props.src.indexOf('ampproject') < -1 || props.dangerouslySetInnerHTML && (!props.type || props.type === 'text/javascript')) {\n            badProp = '<script';\n            Object.keys(props).forEach(prop => {\n              badProp += ` ${prop}=\"${props[prop]}\"`;\n            });\n            badProp += '/>';\n          }\n        }\n\n        if (badProp) {\n          console.warn(`Found conflicting amp tag \"${child.type}\" with conflicting prop ${badProp} in ${__NEXT_DATA__.page}. https://err.sh/next.js/conflicting-amp-tag`);\n          return null;\n        }\n      } else {\n        // non-amp mode\n        if (type === 'link' && props.rel === 'amphtml') {\n          hasAmphtmlRel = true;\n        }\n      }\n\n      return child;\n    }); // try to parse styles from fragment for backwards compat\n\n    const curStyles = Array.isArray(styles) ? styles : [];\n\n    if (inAmpMode && styles && // @ts-ignore Property 'props' does not exist on type ReactElement\n    styles.props && // @ts-ignore Property 'props' does not exist on type ReactElement\n    Array.isArray(styles.props.children)) {\n      const hasStyles = el => {\n        var _el$props, _el$props$dangerously;\n\n        return el === null || el === void 0 ? void 0 : (_el$props = el.props) === null || _el$props === void 0 ? void 0 : (_el$props$dangerously = _el$props.dangerouslySetInnerHTML) === null || _el$props$dangerously === void 0 ? void 0 : _el$props$dangerously.__html;\n      }; // @ts-ignore Property 'props' does not exist on type ReactElement\n\n\n      styles.props.children.forEach(child => {\n        if (Array.isArray(child)) {\n          child.forEach(el => hasStyles(el) && curStyles.push(el));\n        } else if (hasStyles(child)) {\n          curStyles.push(child);\n        }\n      });\n    }\n\n    return /*#__PURE__*/_react.default.createElement(\"head\", this.props, this.context._documentProps.isDevelopment && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(\"style\", {\n      \"data-next-hide-fouc\": true,\n      \"data-ampdevmode\": inAmpMode ? 'true' : undefined,\n      dangerouslySetInnerHTML: {\n        __html: `body{display:none}`\n      }\n    }), /*#__PURE__*/_react.default.createElement(\"noscript\", {\n      \"data-next-hide-fouc\": true,\n      \"data-ampdevmode\": inAmpMode ? 'true' : undefined\n    }, /*#__PURE__*/_react.default.createElement(\"style\", {\n      dangerouslySetInnerHTML: {\n        __html: `body{display:block}`\n      }\n    }))), children, head, /*#__PURE__*/_react.default.createElement(\"meta\", {\n      name: \"next-head-count\",\n      content: _react.default.Children.count(head || []).toString()\n    }), inAmpMode && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(\"meta\", {\n      name: \"viewport\",\n      content: \"width=device-width,minimum-scale=1,initial-scale=1\"\n    }), !hasCanonicalRel && /*#__PURE__*/_react.default.createElement(\"link\", {\n      rel: \"canonical\",\n      href: canonicalBase + (0, _utils2.cleanAmpPath)(dangerousAsPath)\n    }), /*#__PURE__*/_react.default.createElement(\"link\", {\n      rel: \"preload\",\n      as: \"script\",\n      href: \"https://cdn.ampproject.org/v0.js\"\n    }), styles && /*#__PURE__*/_react.default.createElement(\"style\", {\n      \"amp-custom\": \"\",\n      dangerouslySetInnerHTML: {\n        __html: curStyles.map(style => style.props.dangerouslySetInnerHTML.__html).join('').replace(/\\/\\*# sourceMappingURL=.*\\*\\//g, '').replace(/\\/\\*@ sourceURL=.*?\\*\\//g, '')\n      }\n    }), /*#__PURE__*/_react.default.createElement(\"style\", {\n      \"amp-boilerplate\": \"\",\n      dangerouslySetInnerHTML: {\n        __html: `body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}`\n      }\n    }), /*#__PURE__*/_react.default.createElement(\"noscript\", null, /*#__PURE__*/_react.default.createElement(\"style\", {\n      \"amp-boilerplate\": \"\",\n      dangerouslySetInnerHTML: {\n        __html: `body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}`\n      }\n    })), /*#__PURE__*/_react.default.createElement(\"script\", {\n      async: true,\n      src: \"https://cdn.ampproject.org/v0.js\"\n    })), !inAmpMode && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !hasAmphtmlRel && hybridAmp && /*#__PURE__*/_react.default.createElement(\"link\", {\n      rel: \"amphtml\",\n      href: canonicalBase + getAmpPath(ampPath, dangerousAsPath)\n    }), this.getCssLinks(), !disableRuntimeJS && this.getPreloadDynamicChunks(), !disableRuntimeJS && this.getPreloadMainLinks(), this.context._documentProps.isDevelopment &&\n    /*#__PURE__*/\n    // this element is used to mount development styles so the\n    // ordering matches production\n    // (by default, style-loader injects at the bottom of <head />)\n    _react.default.createElement(\"noscript\", {\n      id: \"__next_css__DO_NOT_USE__\"\n    }), styles || null), _react.default.createElement(_react.default.Fragment, {}, ...(headTags || [])));\n  }\n\n}\n\nexports.Head = Head;\nHead.contextType = _documentContext.DocumentContext;\nHead.propTypes = {\n  nonce: _propTypes.default.string,\n  crossOrigin: _propTypes.default.string\n};\n\nfunction Main() {\n  const {\n    inAmpMode,\n    html\n  } = (0, _react.useContext)(_documentContext.DocumentContext)._documentProps;\n\n  if (inAmpMode) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _constants.AMP_RENDER_TARGET);\n  return /*#__PURE__*/_react.default.createElement(\"div\", {\n    id: \"__next\",\n    dangerouslySetInnerHTML: {\n      __html: html\n    }\n  });\n}\n\nclass NextScript extends _react.Component {\n  constructor(...args) {\n    super(...args);\n    this.context = void 0;\n  }\n\n  getDynamicChunks() {\n    const {\n      dynamicImports,\n      assetPrefix,\n      files,\n      isDevelopment\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    return dedupe(dynamicImports).map(bundle => {\n      let modernProps = {};\n\n      if (process.env.__NEXT_MODERN_BUILD) {\n        modernProps = bundle.file.endsWith('.module.js') ? {\n          type: 'module'\n        } : {\n          noModule: true\n        };\n      }\n\n      if (!bundle.file.endsWith('.js') || files.includes(bundle.file)) return null;\n      return /*#__PURE__*/_react.default.createElement(\"script\", Object.assign({\n        async: !isDevelopment,\n        key: bundle.file,\n        src: `${assetPrefix}/_next/${encodeURI(bundle.file)}${_devOnlyInvalidateCacheQueryString}`,\n        nonce: this.props.nonce,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n      }, modernProps));\n    });\n  }\n\n  getScripts() {\n    var _buildManifest$lowPri;\n\n    const {\n      assetPrefix,\n      files,\n      buildManifest,\n      isDevelopment\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    const normalScripts = files === null || files === void 0 ? void 0 : files.filter(file => file.endsWith('.js'));\n    const lowPriorityScripts = (_buildManifest$lowPri = buildManifest.lowPriorityFiles) === null || _buildManifest$lowPri === void 0 ? void 0 : _buildManifest$lowPri.filter(file => file.endsWith('.js'));\n    return [...normalScripts, ...lowPriorityScripts].map(file => {\n      let modernProps = {};\n\n      if (process.env.__NEXT_MODERN_BUILD) {\n        modernProps = file.endsWith('.module.js') ? {\n          type: 'module'\n        } : {\n          noModule: true\n        };\n      }\n\n      return /*#__PURE__*/_react.default.createElement(\"script\", Object.assign({\n        key: file,\n        src: `${assetPrefix}/_next/${encodeURI(file)}${_devOnlyInvalidateCacheQueryString}`,\n        nonce: this.props.nonce,\n        async: !isDevelopment,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n      }, modernProps));\n    });\n  }\n\n  getPolyfillScripts() {\n    // polyfills.js has to be rendered as nomodule without async\n    // It also has to be the first script to load\n    const {\n      assetPrefix,\n      buildManifest\n    } = this.context._documentProps;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n    return buildManifest.polyfillFiles.filter(polyfill => polyfill.endsWith('.js') && !polyfill.endsWith('.module.js')).map(polyfill => /*#__PURE__*/_react.default.createElement(\"script\", {\n      key: polyfill,\n      nonce: this.props.nonce,\n      crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN,\n      noModule: true,\n      src: `${assetPrefix}/_next/${polyfill}${_devOnlyInvalidateCacheQueryString}`\n    }));\n  }\n\n  static getInlineScriptSource(documentProps) {\n    const {\n      __NEXT_DATA__\n    } = documentProps;\n\n    try {\n      const data = JSON.stringify(__NEXT_DATA__);\n      return (0, _htmlescape.htmlEscapeJsonString)(data);\n    } catch (err) {\n      if (err.message.indexOf('circular structure')) {\n        throw new Error(`Circular structure in \"getInitialProps\" result of page \"${__NEXT_DATA__.page}\". https://err.sh/vercel/next.js/circular-structure`);\n      }\n\n      throw err;\n    }\n  }\n\n  render() {\n    const {\n      assetPrefix,\n      inAmpMode,\n      buildManifest,\n      unstable_runtimeJS\n    } = this.context._documentProps;\n    const disableRuntimeJS = unstable_runtimeJS === false;\n    const {\n      _devOnlyInvalidateCacheQueryString\n    } = this.context;\n\n    if (inAmpMode) {\n      if (false) {\n        return null;\n      }\n\n      const ampDevFiles = [...buildManifest.devFiles, ...buildManifest.ampDevFiles];\n      return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, disableRuntimeJS ? null : /*#__PURE__*/_react.default.createElement(\"script\", {\n        id: \"__NEXT_DATA__\",\n        type: \"application/json\",\n        nonce: this.props.nonce,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN,\n        dangerouslySetInnerHTML: {\n          __html: NextScript.getInlineScriptSource(this.context._documentProps)\n        },\n        \"data-ampdevmode\": true\n      }), ampDevFiles.map(file => /*#__PURE__*/_react.default.createElement(\"script\", {\n        key: file,\n        src: `${assetPrefix}/_next/${file}${_devOnlyInvalidateCacheQueryString}`,\n        nonce: this.props.nonce,\n        crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN,\n        \"data-ampdevmode\": true\n      })));\n    }\n\n    if (true) {\n      if (this.props.crossOrigin) console.warn('Warning: `NextScript` attribute `crossOrigin` is deprecated. https://err.sh/next.js/doc-crossorigin-deprecated');\n    }\n\n    return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !disableRuntimeJS && buildManifest.devFiles ? buildManifest.devFiles.map(file => /*#__PURE__*/_react.default.createElement(\"script\", {\n      key: file,\n      src: `${assetPrefix}/_next/${encodeURI(file)}${_devOnlyInvalidateCacheQueryString}`,\n      nonce: this.props.nonce,\n      crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n    })) : null, disableRuntimeJS ? null : /*#__PURE__*/_react.default.createElement(\"script\", {\n      id: \"__NEXT_DATA__\",\n      type: \"application/json\",\n      nonce: this.props.nonce,\n      crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN,\n      dangerouslySetInnerHTML: {\n        __html: NextScript.getInlineScriptSource(this.context._documentProps)\n      }\n    }), process.env.__NEXT_MODERN_BUILD && !disableRuntimeJS ? /*#__PURE__*/_react.default.createElement(\"script\", {\n      nonce: this.props.nonce,\n      crossOrigin: this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN,\n      noModule: true,\n      dangerouslySetInnerHTML: {\n        __html: NextScript.safariNomoduleFix\n      }\n    }) : null, !disableRuntimeJS && this.getPolyfillScripts(), disableRuntimeJS ? null : this.getDynamicChunks(), disableRuntimeJS ? null : this.getScripts());\n  }\n\n}\n\nexports.NextScript = NextScript;\nNextScript.contextType = _documentContext.DocumentContext;\nNextScript.propTypes = {\n  nonce: _propTypes.default.string,\n  crossOrigin: _propTypes.default.string\n};\nNextScript.safariNomoduleFix = '!function(){var e=document,t=e.createElement(\"script\");if(!(\"noModule\"in t)&&\"onbeforeload\"in t){var n=!1;e.addEventListener(\"beforeload\",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute(\"nomodule\")||!n)return;e.preventDefault()},!0),t.type=\"module\",t.src=\".\",e.head.appendChild(t),t.remove()}}();';\n\nfunction getAmpPath(ampPath, asPath) {\n  return ampPath || `${asPath}${asPath.includes('?') ? '&' : '?'}amp=1`;\n}","map":{"version":3,"sources":["../../pages/_document.tsx"],"names":["files","kept","bundle","process","path","Document","Component","headTagsMiddleware","enhanceApp","App","props","ctx","styles","_documentProps","_devOnlyInvalidateCacheQueryString","Date","render","DocumentComponentContext","inAmpMode","Head","contextType","propTypes","nonce","PropTypes","crossOrigin","getCssLinks","cssFiles","f","cssLinkElements","file","assetPrefix","encodeURI","getPreloadDynamicChunks","getOptionalModernScriptVariant","getPreloadMainLinks","preloadFiles","disableRuntimeJS","unstable_runtimeJS","children","React","child","isReactHelmet","console","hasAmphtmlRel","hasCanonicalRel","head","badProp","type","Object","prop","__NEXT_DATA__","page","curStyles","Array","hasStyles","el","__html","canonicalBase","style","getAmpPath","headTags","AMP_RENDER_TARGET","NextScript","safariNomoduleFix","getDynamicChunks","dedupe","modernProps","noModule","getScripts","normalScripts","lowPriorityScripts","buildManifest","getPolyfillScripts","polyfill","data","JSON","err","ampDevFiles","ampPath","asPath"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types'\nimport React, { useContext, Component } from 'react'\nimport flush from 'styled-jsx/server'\nimport { AMP_RENDER_TARGET } from '../next-server/lib/constants'\nimport { DocumentContext as DocumentComponentContext } from '../next-server/lib/document-context'\nimport {\n  DocumentContext,\n  DocumentInitialProps,\n  DocumentProps,\n} from '../next-server/lib/utils'\nimport { cleanAmpPath } from '../next-server/server/utils'\nimport { htmlEscapeJsonString } from '../server/htmlescape'\n\nexport { DocumentContext, DocumentInitialProps, DocumentProps }\n\nexport type OriginProps = {\n  nonce?: string\n  crossOrigin?: string\n}\n\nfunction dedupe(bundles: any[]): any[] {\n  const files = new Set()\n  const kept = []\n\n  for (const bundle of bundles) {\n    if (files.has(bundle.file)) continue\n    files.add(bundle.file)\n    kept.push(bundle)\n  }\n  return kept\n}\n\nfunction getOptionalModernScriptVariant(path: string): string {\n  if (process.env.__NEXT_MODERN_BUILD) {\n    return path.replace(/\\.js$/, '.module.js')\n  }\n  return path\n}\n\n/**\n * `Document` component handles the initial `document` markup and renders only on the server side.\n * Commonly used for implementing server side rendering for `css-in-js` libraries.\n */\nexport default class Document<P = {}> extends Component<DocumentProps & P> {\n  static headTagsMiddleware = process.env.__NEXT_PLUGINS\n    ? import(\n        // @ts-ignore loader syntax\n        'next-plugin-loader?middleware=document-head-tags-server!'\n      )\n    : () => []\n\n  /**\n   * `getInitialProps` hook returns the context object with the addition of `renderPage`.\n   * `renderPage` callback executes `React` rendering logic synchronously to support server-rendering wrappers\n   */\n  static async getInitialProps(\n    ctx: DocumentContext\n  ): Promise<DocumentInitialProps> {\n    const enhanceApp = (App: any) => {\n      return (props: any) => <App {...props} />\n    }\n\n    const { html, head } = await ctx.renderPage({ enhanceApp })\n    const styles = [...flush()]\n    return { html, head, styles }\n  }\n\n  static renderDocument<P>(\n    DocumentComponent: new () => Document<P>,\n    props: DocumentProps & P\n  ): React.ReactElement {\n    return (\n      <DocumentComponentContext.Provider\n        value={{\n          _documentProps: props,\n          // In dev we invalidate the cache by appending a timestamp to the resource URL.\n          // This is a workaround to fix https://github.com/vercel/next.js/issues/5860\n          // TODO: remove this workaround when https://bugs.webkit.org/show_bug.cgi?id=187726 is fixed.\n          _devOnlyInvalidateCacheQueryString:\n            process.env.NODE_ENV !== 'production' ? '?ts=' + Date.now() : '',\n        }}\n      >\n        <DocumentComponent {...props} />\n      </DocumentComponentContext.Provider>\n    )\n  }\n\n  render() {\n    return (\n      <Html>\n        <Head />\n        <body>\n          <Main />\n          <NextScript />\n        </body>\n      </Html>\n    )\n  }\n}\n\nexport function Html(\n  props: React.DetailedHTMLProps<\n    React.HtmlHTMLAttributes<HTMLHtmlElement>,\n    HTMLHtmlElement\n  >\n) {\n  const { inAmpMode } = useContext(DocumentComponentContext)._documentProps\n  return (\n    <html\n      {...props}\n      amp={inAmpMode ? '' : undefined}\n      data-ampdevmode={\n        inAmpMode && process.env.NODE_ENV !== 'production' ? '' : undefined\n      }\n    />\n  )\n}\n\nexport class Head extends Component<\n  OriginProps &\n    React.DetailedHTMLProps<\n      React.HTMLAttributes<HTMLHeadElement>,\n      HTMLHeadElement\n    >\n> {\n  static contextType = DocumentComponentContext\n\n  static propTypes = {\n    nonce: PropTypes.string,\n    crossOrigin: PropTypes.string,\n  }\n\n  context!: React.ContextType<typeof DocumentComponentContext>\n\n  getCssLinks(): JSX.Element[] | null {\n    const { assetPrefix, files } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n    const cssFiles =\n      files && files.length ? files.filter((f) => f.endsWith('.css')) : []\n\n    const cssLinkElements: JSX.Element[] = []\n    cssFiles.forEach((file) => {\n      cssLinkElements.push(\n        <link\n          key={`${file}-preload`}\n          nonce={this.props.nonce}\n          rel=\"preload\"\n          href={`${assetPrefix}/_next/${encodeURI(\n            file\n          )}${_devOnlyInvalidateCacheQueryString}`}\n          as=\"style\"\n          crossOrigin={\n            this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n          }\n        />,\n        <link\n          key={file}\n          nonce={this.props.nonce}\n          rel=\"stylesheet\"\n          href={`${assetPrefix}/_next/${encodeURI(\n            file\n          )}${_devOnlyInvalidateCacheQueryString}`}\n          crossOrigin={\n            this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n          }\n        />\n      )\n    })\n\n    return cssLinkElements.length === 0 ? null : cssLinkElements\n  }\n\n  getPreloadDynamicChunks() {\n    const { dynamicImports, assetPrefix } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    return (\n      dedupe(dynamicImports)\n        .map((bundle: any) => {\n          // `dynamicImports` will contain both `.js` and `.module.js` when the\n          // feature is enabled. This clause will filter down to the modern\n          // variants only.\n          if (!bundle.file.endsWith(getOptionalModernScriptVariant('.js'))) {\n            return null\n          }\n\n          return (\n            <link\n              rel=\"preload\"\n              key={bundle.file}\n              href={`${assetPrefix}/_next/${encodeURI(\n                bundle.file\n              )}${_devOnlyInvalidateCacheQueryString}`}\n              as=\"script\"\n              nonce={this.props.nonce}\n              crossOrigin={\n                this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n              }\n            />\n          )\n        })\n        // Filter out nulled scripts\n        .filter(Boolean)\n    )\n  }\n\n  getPreloadMainLinks(): JSX.Element[] | null {\n    const { assetPrefix, files } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    const preloadFiles =\n      files && files.length\n        ? files.filter((file: string) => {\n            // `dynamicImports` will contain both `.js` and `.module.js` when\n            // the feature is enabled. This clause will filter down to the\n            // modern variants only.\n            return file.endsWith(getOptionalModernScriptVariant('.js'))\n          })\n        : []\n\n    return !preloadFiles.length\n      ? null\n      : preloadFiles.map((file: string) => (\n          <link\n            key={file}\n            nonce={this.props.nonce}\n            rel=\"preload\"\n            href={`${assetPrefix}/_next/${encodeURI(\n              file\n            )}${_devOnlyInvalidateCacheQueryString}`}\n            as=\"script\"\n            crossOrigin={\n              this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n            }\n          />\n        ))\n  }\n\n  render() {\n    const {\n      styles,\n      ampPath,\n      inAmpMode,\n      hybridAmp,\n      canonicalBase,\n      __NEXT_DATA__,\n      dangerousAsPath,\n      headTags,\n      unstable_runtimeJS,\n    } = this.context._documentProps\n    const disableRuntimeJS = unstable_runtimeJS === false\n\n    let { head } = this.context._documentProps\n    let children = this.props.children\n    // show a warning if Head contains <title> (only in development)\n    if (process.env.NODE_ENV !== 'production') {\n      children = React.Children.map(children, (child: any) => {\n        const isReactHelmet = child?.props?.['data-react-helmet']\n        if (!isReactHelmet) {\n          if (child?.type === 'title') {\n            console.warn(\n              \"Warning: <title> should not be used in _document.js's <Head>. https://err.sh/next.js/no-document-title\"\n            )\n          } else if (\n            child?.type === 'meta' &&\n            child?.props?.name === 'viewport'\n          ) {\n            console.warn(\n              \"Warning: viewport meta tags should not be used in _document.js's <Head>. https://err.sh/next.js/no-document-viewport-meta\"\n            )\n          }\n        }\n        return child\n      })\n      if (this.props.crossOrigin)\n        console.warn(\n          'Warning: `Head` attribute `crossOrigin` is deprecated. https://err.sh/next.js/doc-crossorigin-deprecated'\n        )\n    }\n\n    let hasAmphtmlRel = false\n    let hasCanonicalRel = false\n\n    // show warning and remove conflicting amp head tags\n    head = React.Children.map(head || [], (child) => {\n      if (!child) return child\n      const { type, props } = child\n\n      if (inAmpMode) {\n        let badProp: string = ''\n\n        if (type === 'meta' && props.name === 'viewport') {\n          badProp = 'name=\"viewport\"'\n        } else if (type === 'link' && props.rel === 'canonical') {\n          hasCanonicalRel = true\n        } else if (type === 'script') {\n          // only block if\n          // 1. it has a src and isn't pointing to ampproject's CDN\n          // 2. it is using dangerouslySetInnerHTML without a type or\n          // a type of text/javascript\n          if (\n            (props.src && props.src.indexOf('ampproject') < -1) ||\n            (props.dangerouslySetInnerHTML &&\n              (!props.type || props.type === 'text/javascript'))\n          ) {\n            badProp = '<script'\n            Object.keys(props).forEach((prop) => {\n              badProp += ` ${prop}=\"${props[prop]}\"`\n            })\n            badProp += '/>'\n          }\n        }\n\n        if (badProp) {\n          console.warn(\n            `Found conflicting amp tag \"${child.type}\" with conflicting prop ${badProp} in ${__NEXT_DATA__.page}. https://err.sh/next.js/conflicting-amp-tag`\n          )\n          return null\n        }\n      } else {\n        // non-amp mode\n        if (type === 'link' && props.rel === 'amphtml') {\n          hasAmphtmlRel = true\n        }\n      }\n      return child\n    })\n\n    // try to parse styles from fragment for backwards compat\n    const curStyles: React.ReactElement[] = Array.isArray(styles)\n      ? (styles as React.ReactElement[])\n      : []\n    if (\n      inAmpMode &&\n      styles &&\n      // @ts-ignore Property 'props' does not exist on type ReactElement\n      styles.props &&\n      // @ts-ignore Property 'props' does not exist on type ReactElement\n      Array.isArray(styles.props.children)\n    ) {\n      const hasStyles = (el: React.ReactElement) =>\n        el?.props?.dangerouslySetInnerHTML?.__html\n      // @ts-ignore Property 'props' does not exist on type ReactElement\n      styles.props.children.forEach((child: React.ReactElement) => {\n        if (Array.isArray(child)) {\n          child.forEach((el) => hasStyles(el) && curStyles.push(el))\n        } else if (hasStyles(child)) {\n          curStyles.push(child)\n        }\n      })\n    }\n\n    return (\n      <head {...this.props}>\n        {this.context._documentProps.isDevelopment && (\n          <>\n            <style\n              data-next-hide-fouc\n              data-ampdevmode={inAmpMode ? 'true' : undefined}\n              dangerouslySetInnerHTML={{\n                __html: `body{display:none}`,\n              }}\n            />\n            <noscript\n              data-next-hide-fouc\n              data-ampdevmode={inAmpMode ? 'true' : undefined}\n            >\n              <style\n                dangerouslySetInnerHTML={{\n                  __html: `body{display:block}`,\n                }}\n              />\n            </noscript>\n          </>\n        )}\n        {children}\n        {head}\n        <meta\n          name=\"next-head-count\"\n          content={React.Children.count(head || []).toString()}\n        />\n        {inAmpMode && (\n          <>\n            <meta\n              name=\"viewport\"\n              content=\"width=device-width,minimum-scale=1,initial-scale=1\"\n            />\n            {!hasCanonicalRel && (\n              <link\n                rel=\"canonical\"\n                href={canonicalBase + cleanAmpPath(dangerousAsPath)}\n              />\n            )}\n            {/* https://www.ampproject.org/docs/fundamentals/optimize_amp#optimize-the-amp-runtime-loading */}\n            <link\n              rel=\"preload\"\n              as=\"script\"\n              href=\"https://cdn.ampproject.org/v0.js\"\n            />\n            {/* Add custom styles before AMP styles to prevent accidental overrides */}\n            {styles && (\n              <style\n                amp-custom=\"\"\n                dangerouslySetInnerHTML={{\n                  __html: curStyles\n                    .map((style) => style.props.dangerouslySetInnerHTML.__html)\n                    .join('')\n                    .replace(/\\/\\*# sourceMappingURL=.*\\*\\//g, '')\n                    .replace(/\\/\\*@ sourceURL=.*?\\*\\//g, ''),\n                }}\n              />\n            )}\n            <style\n              amp-boilerplate=\"\"\n              dangerouslySetInnerHTML={{\n                __html: `body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}`,\n              }}\n            />\n            <noscript>\n              <style\n                amp-boilerplate=\"\"\n                dangerouslySetInnerHTML={{\n                  __html: `body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}`,\n                }}\n              />\n            </noscript>\n            <script async src=\"https://cdn.ampproject.org/v0.js\" />\n          </>\n        )}\n        {!inAmpMode && (\n          <>\n            {!hasAmphtmlRel && hybridAmp && (\n              <link\n                rel=\"amphtml\"\n                href={canonicalBase + getAmpPath(ampPath, dangerousAsPath)}\n              />\n            )}\n            {this.getCssLinks()}\n            {!disableRuntimeJS && this.getPreloadDynamicChunks()}\n            {!disableRuntimeJS && this.getPreloadMainLinks()}\n            {this.context._documentProps.isDevelopment && (\n              // this element is used to mount development styles so the\n              // ordering matches production\n              // (by default, style-loader injects at the bottom of <head />)\n              <noscript id=\"__next_css__DO_NOT_USE__\" />\n            )}\n            {styles || null}\n          </>\n        )}\n        {React.createElement(React.Fragment, {}, ...(headTags || []))}\n      </head>\n    )\n  }\n}\n\nexport function Main() {\n  const { inAmpMode, html } = useContext(\n    DocumentComponentContext\n  )._documentProps\n  if (inAmpMode) return <>{AMP_RENDER_TARGET}</>\n  return <div id=\"__next\" dangerouslySetInnerHTML={{ __html: html }} />\n}\n\nexport class NextScript extends Component<OriginProps> {\n  static contextType = DocumentComponentContext\n\n  static propTypes = {\n    nonce: PropTypes.string,\n    crossOrigin: PropTypes.string,\n  }\n\n  context!: React.ContextType<typeof DocumentComponentContext>\n\n  // Source: https://gist.github.com/samthor/64b114e4a4f539915a95b91ffd340acc\n  static safariNomoduleFix =\n    '!function(){var e=document,t=e.createElement(\"script\");if(!(\"noModule\"in t)&&\"onbeforeload\"in t){var n=!1;e.addEventListener(\"beforeload\",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute(\"nomodule\")||!n)return;e.preventDefault()},!0),t.type=\"module\",t.src=\".\",e.head.appendChild(t),t.remove()}}();'\n\n  getDynamicChunks() {\n    const {\n      dynamicImports,\n      assetPrefix,\n      files,\n      isDevelopment,\n    } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    return dedupe(dynamicImports).map((bundle: any) => {\n      let modernProps = {}\n      if (process.env.__NEXT_MODERN_BUILD) {\n        modernProps = bundle.file.endsWith('.module.js')\n          ? { type: 'module' }\n          : { noModule: true }\n      }\n\n      if (!bundle.file.endsWith('.js') || files.includes(bundle.file))\n        return null\n\n      return (\n        <script\n          async={!isDevelopment}\n          key={bundle.file}\n          src={`${assetPrefix}/_next/${encodeURI(\n            bundle.file\n          )}${_devOnlyInvalidateCacheQueryString}`}\n          nonce={this.props.nonce}\n          crossOrigin={\n            this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n          }\n          {...modernProps}\n        />\n      )\n    })\n  }\n\n  getScripts() {\n    const {\n      assetPrefix,\n      files,\n      buildManifest,\n      isDevelopment,\n    } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    const normalScripts = files?.filter((file) => file.endsWith('.js'))\n    const lowPriorityScripts = buildManifest.lowPriorityFiles?.filter((file) =>\n      file.endsWith('.js')\n    )\n\n    return [...normalScripts, ...lowPriorityScripts].map((file) => {\n      let modernProps = {}\n      if (process.env.__NEXT_MODERN_BUILD) {\n        modernProps = file.endsWith('.module.js')\n          ? { type: 'module' }\n          : { noModule: true }\n      }\n      return (\n        <script\n          key={file}\n          src={`${assetPrefix}/_next/${encodeURI(\n            file\n          )}${_devOnlyInvalidateCacheQueryString}`}\n          nonce={this.props.nonce}\n          async={!isDevelopment}\n          crossOrigin={\n            this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n          }\n          {...modernProps}\n        />\n      )\n    })\n  }\n\n  getPolyfillScripts() {\n    // polyfills.js has to be rendered as nomodule without async\n    // It also has to be the first script to load\n    const { assetPrefix, buildManifest } = this.context._documentProps\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    return buildManifest.polyfillFiles\n      .filter(\n        (polyfill) =>\n          polyfill.endsWith('.js') && !polyfill.endsWith('.module.js')\n      )\n      .map((polyfill) => (\n        <script\n          key={polyfill}\n          nonce={this.props.nonce}\n          crossOrigin={\n            this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n          }\n          noModule={true}\n          src={`${assetPrefix}/_next/${polyfill}${_devOnlyInvalidateCacheQueryString}`}\n        />\n      ))\n  }\n\n  static getInlineScriptSource(documentProps: DocumentProps): string {\n    const { __NEXT_DATA__ } = documentProps\n    try {\n      const data = JSON.stringify(__NEXT_DATA__)\n      return htmlEscapeJsonString(data)\n    } catch (err) {\n      if (err.message.indexOf('circular structure')) {\n        throw new Error(\n          `Circular structure in \"getInitialProps\" result of page \"${__NEXT_DATA__.page}\". https://err.sh/vercel/next.js/circular-structure`\n        )\n      }\n      throw err\n    }\n  }\n\n  render() {\n    const {\n      assetPrefix,\n      inAmpMode,\n      buildManifest,\n      unstable_runtimeJS,\n    } = this.context._documentProps\n    const disableRuntimeJS = unstable_runtimeJS === false\n\n    const { _devOnlyInvalidateCacheQueryString } = this.context\n\n    if (inAmpMode) {\n      if (process.env.NODE_ENV === 'production') {\n        return null\n      }\n\n      const ampDevFiles = [\n        ...buildManifest.devFiles,\n        ...buildManifest.ampDevFiles,\n      ]\n\n      return (\n        <>\n          {disableRuntimeJS ? null : (\n            <script\n              id=\"__NEXT_DATA__\"\n              type=\"application/json\"\n              nonce={this.props.nonce}\n              crossOrigin={\n                this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n              }\n              dangerouslySetInnerHTML={{\n                __html: NextScript.getInlineScriptSource(\n                  this.context._documentProps\n                ),\n              }}\n              data-ampdevmode\n            />\n          )}\n          {ampDevFiles.map((file) => (\n            <script\n              key={file}\n              src={`${assetPrefix}/_next/${file}${_devOnlyInvalidateCacheQueryString}`}\n              nonce={this.props.nonce}\n              crossOrigin={\n                this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n              }\n              data-ampdevmode\n            />\n          ))}\n        </>\n      )\n    }\n\n    if (process.env.NODE_ENV !== 'production') {\n      if (this.props.crossOrigin)\n        console.warn(\n          'Warning: `NextScript` attribute `crossOrigin` is deprecated. https://err.sh/next.js/doc-crossorigin-deprecated'\n        )\n    }\n\n    return (\n      <>\n        {!disableRuntimeJS && buildManifest.devFiles\n          ? buildManifest.devFiles.map((file: string) => (\n              <script\n                key={file}\n                src={`${assetPrefix}/_next/${encodeURI(\n                  file\n                )}${_devOnlyInvalidateCacheQueryString}`}\n                nonce={this.props.nonce}\n                crossOrigin={\n                  this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n                }\n              />\n            ))\n          : null}\n        {disableRuntimeJS ? null : (\n          <script\n            id=\"__NEXT_DATA__\"\n            type=\"application/json\"\n            nonce={this.props.nonce}\n            crossOrigin={\n              this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n            }\n            dangerouslySetInnerHTML={{\n              __html: NextScript.getInlineScriptSource(\n                this.context._documentProps\n              ),\n            }}\n          />\n        )}\n        {process.env.__NEXT_MODERN_BUILD && !disableRuntimeJS ? (\n          <script\n            nonce={this.props.nonce}\n            crossOrigin={\n              this.props.crossOrigin || process.env.__NEXT_CROSS_ORIGIN\n            }\n            noModule={true}\n            dangerouslySetInnerHTML={{\n              __html: NextScript.safariNomoduleFix,\n            }}\n          />\n        ) : null}\n        {!disableRuntimeJS && this.getPolyfillScripts()}\n        {disableRuntimeJS ? null : this.getDynamicChunks()}\n        {disableRuntimeJS ? null : this.getScripts()}\n      </>\n    )\n  }\n}\n\nfunction getAmpPath(ampPath: string, asPath: string): string {\n  return ampPath || `${asPath}${asPath.includes('?') ? '&' : '?'}amp=1`\n}\n"]},"metadata":{},"sourceType":"script"}