Skip to content

Commit

Permalink
v9.2.3-canary.22
Browse files Browse the repository at this point in the history
  • Loading branch information
Timer committed Mar 3, 2020
1 parent a5d0cb9 commit 6598e99
Show file tree
Hide file tree
Showing 9 changed files with 10 additions and 10 deletions.
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@
"registry": "https://registry.npmjs.org/"
}
},
"version": "9.2.3-canary.21"
"version": "9.2.3-canary.22"
}
2 changes: 1 addition & 1 deletion packages/create-next-app/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "create-next-app",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"keywords": [
"react",
"next",
Expand Down
2 changes: 1 addition & 1 deletion packages/next-bundle-analyzer/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/bundle-analyzer",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"main": "index.js",
"license": "MIT",
"repository": {
Expand Down
2 changes: 1 addition & 1 deletion packages/next-mdx/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/mdx",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"main": "index.js",
"license": "MIT",
"repository": {
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-google-analytics/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-google-analytics",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"nextjs": {
"name": "Google Analytics",
"required-env": [
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-material-ui/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-material-ui",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"nextjs": {
"name": "Material UI",
"required-env": []
Expand Down
2 changes: 1 addition & 1 deletion packages/next-plugin-sentry/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/plugin-sentry",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"nextjs": {
"name": "Sentry",
"required-env": [
Expand Down
2 changes: 1 addition & 1 deletion packages/next-polyfill-nomodule/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@next/polyfill-nomodule",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"description": "A polyfill for non-dead, nomodule browsers.",
"main": "dist/polyfill-nomodule.js",
"license": "MIT",
Expand Down
4 changes: 2 additions & 2 deletions packages/next/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "next",
"version": "9.2.3-canary.21",
"version": "9.2.3-canary.22",
"description": "The React Framework",
"main": "./dist/server/next.js",
"license": "MIT",
Expand Down Expand Up @@ -73,7 +73,7 @@
"@babel/preset-typescript": "7.7.2",
"@babel/runtime": "7.7.2",
"@babel/types": "7.7.4",
"@next/polyfill-nomodule": "9.2.3-canary.21",
"@next/polyfill-nomodule": "9.2.3-canary.22",
"amphtml-validator": "1.0.30",
"async-retry": "1.2.3",
"async-sema": "3.0.0",
Expand Down

1 comment on commit 6598e99

@ijjk
Copy link
Member

@ijjk ijjk commented on 6598e99 Mar 3, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stats from current release

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
buildDuration 12.7s 10.1s -2.6s
nodeModulesSize 55.6 MB 56.3 MB ⚠️ +742 kB
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
main-HASH.js gzip 5.13 kB 5.76 kB ⚠️ +633 B
webpack-HASH.js gzip 746 B 746 B
4952ddcd88e7..54d3.js gzip 4.68 kB N/A N/A
commons.HASH.js gzip 4.06 kB N/A N/A
de003c3a9d30..31ff.js gzip 16.3 kB N/A N/A
framework.HASH.js gzip 39.1 kB 39.1 kB
de003c3a9d30..67cb.js gzip N/A 9.69 kB N/A
Overall change 70 kB 55.3 kB -14.7 kB
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
main-HASH.module.js gzip 4.13 kB 4.79 kB ⚠️ +657 B
webpack-HASH..dule.js gzip 746 B 746 B
4952ddcd88e7..dule.js gzip 5.56 kB N/A N/A
de003c3a9d30..dule.js gzip 15.1 kB N/A N/A
framework.HA..dule.js gzip 39.1 kB 39.1 kB ⚠️ +9 B
de003c3a9d30..dule.js gzip N/A 6.64 kB N/A
Overall change 64.7 kB 51.3 kB -13.4 kB
Legacy Client Bundles (polyfills) Overall increase ⚠️
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
polyfills-HASH.js gzip 4.76 kB 18.9 kB ⚠️ +14.1 kB
Overall change 4.76 kB 18.9 kB ⚠️ +14.1 kB
Client Pages Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_app.js gzip 1.15 kB 1.07 kB -74 B
_error.js gzip 4.07 kB 2.98 kB -1.09 kB
hooks.js gzip 779 B 664 B -115 B
index.js gzip 222 B 222 B
link.js gzip 2.95 kB 1.89 kB -1.06 kB
routerDirect.js gzip 283 B 279 B -4 B
withRouter.js gzip 282 B 278 B -4 B
Overall change 9.73 kB 7.38 kB -2.35 kB
Client Pages Modern Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_app.module.js gzip 576 B 589 B ⚠️ +13 B
_error.module.js gzip 3.06 kB 2.08 kB -977 B
hooks.module.js gzip 371 B 370 B -1 B
index.module.js gzip 212 B 212 B
link.module.js gzip 2.49 kB 1.48 kB -1.01 kB
routerDirect..dule.js gzip 273 B 271 B -2 B
withRouter.m..dule.js gzip 272 B 270 B -2 B
Overall change 7.25 kB 5.27 kB -1.98 kB
Client Build Manifests
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Rendered Page Sizes Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
index.html gzip 1.03 kB 936 B -98 B
link.html gzip 1.04 kB 946 B -96 B
withRouter.html gzip 1.03 kB 934 B -96 B
Overall change 3.11 kB 2.82 kB -290 B

Diffs

Diff for 4952ddcd88e7..16.module.js
deleted
Diff for 4952ddcd88e7..92a927903.js
deleted
Diff for commons.HASH.js
deleted
Diff for de003c3a9d30..7c.module.js
deleted
Diff for de003c3a9d30..f17743f99.js
deleted
Diff for link.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/link.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div><h3>A Link page!</h3><a href="/">Go to /</a></div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/link","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/link.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div><h3>A Link page!</h3><a href="/">Go to /</a></div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/link","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/link" src="/_next/static/BUILD_ID/pages/link.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
Diff for index.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/index.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next">Hello world 👋</div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/index.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next">Hello world 👋</div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/" src="/_next/static/BUILD_ID/pages/index.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
Diff for polyfills-HASH.js

Diff too large to display

Diff for main-HASH.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[11],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
 
 /***/ "BMP1":
 /***/ (function(module, exports, __webpack_require__) {
@@ -6,7 +6,7 @@
 "use strict";
 
 
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
 
 var next = _interopRequireWildcard(__webpack_require__("IKlv"));
 
@@ -23,10 +23,8 @@ window.next = next;
 "use strict";
 
 
-var _Promise = __webpack_require__("eVuF");
-
 exports.__esModule = true;
-exports.default = void 0;
+exports.default = initHeadManager;
 var DOMAttributeNames = {
   acceptCharset: 'accept-charset',
   className: 'class',
@@ -34,82 +32,6 @@ var DOMAttributeNames = {
   httpEquiv: 'http-equiv'
 };
 
-class HeadManager {
-  constructor() {
-    this.updateHead = head => {
-      var promise = this.updatePromise = _Promise.resolve().then(() => {
-        if (promise !== this.updatePromise) return;
-        this.updatePromise = null;
-        this.doUpdateHead(head);
-      });
-    };
-
-    this.updatePromise = null;
-  }
-
-  doUpdateHead(head) {
-    var tags = {};
-    head.forEach(h => {
-      var components = tags[h.type] || [];
-      components.push(h);
-      tags[h.type] = components;
-    });
-    this.updateTitle(tags.title ? tags.title[0] : null);
-    var types = ['meta', 'base', 'link', 'style', 'script'];
-    types.forEach(type => {
-      this.updateElements(type, tags[type] || []);
-    });
-  }
-
-  updateTitle(component) {
-    var title = '';
-
-    if (component) {
-      var {
-        children
-      } = component.props;
-      title = typeof children === 'string' ? children : children.join('');
-    }
-
-    if (title !== document.title) document.title = title;
-  }
-
-  updateElements(type, components) {
-    var headEl = document.getElementsByTagName('head')[0];
-    var headCountEl = headEl.querySelector('meta[name=next-head-count]');
-
-    if (false) {}
-
-    var headCount = Number(headCountEl.content);
-    var oldTags = [];
-
-    for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
-      if (j.tagName.toLowerCase() === type) {
-        oldTags.push(j);
-      }
-    }
-
-    var newTags = components.map(reactElementToDOM).filter(newTag => {
-      for (var k = 0, len = oldTags.length; k < len; k++) {
-        var oldTag = oldTags[k];
-
-        if (oldTag.isEqualNode(newTag)) {
-          oldTags.splice(k, 1);
-          return false;
-        }
-      }
-
-      return true;
-    });
-    oldTags.forEach(t => t.parentNode.removeChild(t));
-    newTags.forEach(t => headEl.insertBefore(t, headCountEl));
-    headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
-  }
-
-}
-
-exports.default = HeadManager;
-
 function reactElementToDOM(_ref) {
   var {
     type,
@@ -140,6 +62,68 @@ function reactElementToDOM(_ref) {
   return el;
 }
 
+function updateElements(type, components) {
+  var headEl = document.getElementsByTagName('head')[0];
+  var headCountEl = headEl.querySelector('meta[name=next-head-count]');
+
+  if (false) {}
+
+  var headCount = Number(headCountEl.content);
+  var oldTags = [];
+
+  for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
+    if (j.tagName.toLowerCase() === type) {
+      oldTags.push(j);
+    }
+  }
+
+  var newTags = components.map(reactElementToDOM).filter(newTag => {
+    for (var k = 0, len = oldTags.length; k < len; k++) {
+      var oldTag = oldTags[k];
+
+      if (oldTag.isEqualNode(newTag)) {
+        oldTags.splice(k, 1);
+        return false;
+      }
+    }
+
+    return true;
+  });
+  oldTags.forEach(t => t.parentNode.removeChild(t));
+  newTags.forEach(t => headEl.insertBefore(t, headCountEl));
+  headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
+}
+
+function initHeadManager() {
+  var updatePromise = null;
+  return head => {
+    var promise = updatePromise = Promise.resolve().then(() => {
+      if (promise !== updatePromise) return;
+      updatePromise = null;
+      var tags = {};
+      head.forEach(h => {
+        var components = tags[h.type] || [];
+        components.push(h);
+        tags[h.type] = components;
+      });
+      var titleComponent = tags.title ? tags.title[0] : null;
+      var title = '';
+
+      if (titleComponent) {
+        var {
+          children
+        } = titleComponent.props;
+        title = typeof children === 'string' ? children : children.join('');
+      }
+
+      if (title !== document.title) document.title = title;
+      ['meta', 'base', 'link', 'style', 'script'].forEach(type => {
+        updateElements(type, tags[type] || []);
+      });
+    });
+  };
+}
+
 /***/ }),
 
 /***/ "FYa8":
@@ -148,8 +132,6 @@ function reactElementToDOM(_ref) {
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -160,7 +142,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -176,20 +158,18 @@ exports.HeadManagerContext = React.createContext(null);
 "use strict";
 
 
-var _Promise = __webpack_require__("eVuF");
+var _interopRequireWildcard3 = __webpack_require__("284h");
 
-var _interopRequireWildcard3 = __webpack_require__("5Uuq");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.render = render;
 exports.renderError = renderError;
 exports.default = exports.emitter = exports.router = exports.version = void 0;
 
-var _extends2 = _interopRequireDefault(__webpack_require__("htGi"));
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
 
-var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("5Uuq"));
+var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("284h"));
 
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
@@ -214,23 +194,19 @@ var _routerContext = __webpack_require__("qOIg");
 var _querystring = __webpack_require__("s4NR");
 
 var _isDynamic = __webpack_require__("/jkW");
+
+var _performanceRelayer = __webpack_require__("bGXG");
 /* global location */
 
 
-if (false) {} else {
-  // Polyfill Promise globally
-  // This is needed because Webpack's dynamic loading(common chunks) code
-  // depends on Promise.
-  // So, we need to polyfill it.
-  // See: https://webpack.js.org/guides/code-splitting/#dynamic-imports
-  if (!self.Promise) {
-    self.Promise = __webpack_require__("eVuF");
-  }
+if (!('finally' in Promise.prototype)) {
+  // eslint-disable-next-line no-extend-native
+  Promise.prototype.finally = __webpack_require__("zrsZ");
 }
 
 var data = JSON.parse(document.getElementById('__NEXT_DATA__').textContent);
 window.__NEXT_DATA__ = data;
-var version = "9.2.2";
+var version = "9.2.3-canary.22";
 exports.version = version;
 var {
   props,
@@ -267,7 +243,7 @@ if (window.__NEXT_P) {
 
 window.__NEXT_P = [];
 window.__NEXT_P.push = register;
-var headManager = new _headManager.default();
+var updateHead = (0, _headManager.default)();
 var appElement = document.getElementById('__next');
 var lastAppProps;
 var webpackHMR;
@@ -360,13 +336,15 @@ var _default = async function _default(_temp) {
         name,
         startTime,
         value,
-        duration
+        duration,
+        entryType
       } = _ref2;
       mod.unstable_onPerformanceData({
         name,
         startTime,
         value,
-        duration
+        duration,
+        entryType
       });
     };
   }
@@ -507,14 +485,9 @@ function renderReactElement(reactEl, domEl) {
 
   if (onPerfEntry && _utils.ST) {
     try {
-      var observer = new PerformanceObserver(list => {
-        list.getEntries().forEach(onPerfEntry);
-      }); // Start observing paint entry types.
-
-      observer.observe({
-        type: 'paint',
-        buffered: true
-      });
+      (0, _performanceRelayer.observeLayoutShift)(onPerfEntry);
+      (0, _performanceRelayer.observeLargestContentfulPaint)(onPerfEntry);
+      (0, _performanceRelayer.observePaint)(onPerfEntry);
     } catch (e) {
       window.addEventListener('load', () => {
         performance.getEntriesByType('paint').forEach(onPerfEntry);
@@ -577,7 +550,7 @@ function AppContainer(_ref4) {
   }, _react.default.createElement(_routerContext.RouterContext.Provider, {
     value: (0, _router.makePublicRouterInstance)(router)
   }, _react.default.createElement(_headManagerContext.HeadManagerContext.Provider, {
-    value: headManager.updateHead
+    value: updateHead
   }, children)));
 }
 
@@ -649,29 +622,98 @@ async function doRender(_ref5) {
 
 /***/ }),
 
-/***/ "UXZV":
+/***/ "bGXG":
 /***/ (function(module, exports, __webpack_require__) {
 
-module.exports = __webpack_require__("UbbE");
+"use strict";
 
-/***/ }),
 
-/***/ "UbbE":
-/***/ (function(module, exports, __webpack_require__) {
+exports.__esModule = true;
+exports.observeLayoutShift = observeLayoutShift;
+exports.observeLargestContentfulPaint = observeLargestContentfulPaint;
+exports.observePaint = observePaint;
 
-__webpack_require__("o8NH");
-module.exports = __webpack_require__("WEpk").Object.assign;
+function isTypeSupported(type) {
+  if (self.PerformanceObserver && PerformanceObserver.supportedEntryTypes) {
+    return PerformanceObserver.supportedEntryTypes.includes(type);
+  }
 
+  return false;
+}
 
-/***/ }),
+function observeLayoutShift(onPerfEntry) {
+  if (isTypeSupported('layout-shift')) {
+    var cumulativeScore = 0;
+    var observer = new PerformanceObserver(list => {
+      for (var entry of list.getEntries()) {
+        // Only count layout shifts without recent user input.
+        if (!entry.hadRecentInput) {
+          cumulativeScore += entry.value;
+        }
+      }
+    });
+    observer.observe({
+      type: 'layout-shift',
+      buffered: true
+    });
+    document.addEventListener('visibilitychange', function clsObserver() {
+      if (document.visibilityState === 'hidden') {
+        // Force any pending records to be dispatched.
+        observer.takeRecords();
+        observer.disconnect();
+        removeEventListener('visibilitychange', clsObserver, true);
+        onPerfEntry({
+          name: 'cumulative-layout-shift',
+          value: cumulativeScore
+        });
+      }
+    }, true);
+  }
+}
 
-/***/ "htGi":
-/***/ (function(module, exports, __webpack_require__) {
+function observeLargestContentfulPaint(onPerfEntry) {
+  if (isTypeSupported('largest-contentful-paint')) {
+    // Create a variable to hold the latest LCP value (since it can change).
+    var lcp; // Create the PerformanceObserver instance.
 
-var _Object$assign = __webpack_require__("UXZV");
+    var observer = new PerformanceObserver(entryList => {
+      var entries = entryList.getEntries();
+      var lastEntry = entries[entries.length - 1];
+      lcp = lastEntry.renderTime || lastEntry.loadTime;
+    });
+    observer.observe({
+      type: 'largest-contentful-paint',
+      buffered: true
+    });
+    document.addEventListener('visibilitychange', function lcpObserver() {
+      if (lcp && document.visibilityState === 'hidden') {
+        removeEventListener('visibilitychange', lcpObserver, true);
+        onPerfEntry({
+          name: 'largest-contentful-paint',
+          value: lcp
+        });
+      }
+    }, true);
+  }
+}
+
+function observePaint(onPerfEntry) {
+  var observer = new PerformanceObserver(list => {
+    list.getEntries().forEach(onPerfEntry);
+  });
+  observer.observe({
+    type: 'paint',
+    buffered: true
+  });
+}
+
+/***/ }),
+
+/***/ "pVnL":
+/***/ (function(module, exports) {
 
 function _extends() {
-  module.exports = _extends = _Object$assign || function (target) {
+  module.exports = _extends = Object.assign || function (target) {
     for (var i = 1; i < arguments.length; i++) {
       var source = arguments[i];
 
@@ -690,17 +732,6 @@ function _extends() {
 
 module.exports = _extends;
 
-/***/ }),
-
-/***/ "o8NH":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") });
-
-
 /***/ }),
 
 /***/ "yLiY":
@@ -709,12 +740,9 @@ $export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") }
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
-
 var runtimeConfig;
 
 exports.default = () => {
@@ -735,15 +763,21 @@ exports.setConfig = setConfig;
 "use strict";
 
 
-var _Promise = __webpack_require__("eVuF");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.default = void 0;
 
+var _url = __webpack_require__("QmWs");
+
 var _mitt = _interopRequireDefault(__webpack_require__("dZ6Y"));
 
+var _isDynamic = __webpack_require__("/jkW");
+
+var _routeMatcher = __webpack_require__("gguc");
+
+var _routeRegex = __webpack_require__("YTqd");
+
 function hasRel(rel, link) {
   try {
     link = document.createElement('link');
@@ -757,6 +791,7 @@ var relPrefetch = hasRel('preload') && !hasRel('prefetch') ? // https://caniuse.
 // IE 11, Edge 12+, nearly all evergreen
 'prefetch';
 var hasNoModule = 'noModule' in document.createElement('script');
+/** @param {string} route */
 
 function normalizeRoute(route) {
   if (route[0] !== '/') {
@@ -769,7 +804,7 @@ function normalizeRoute(route) {
 }
 
 function appendLink(href, rel, as) {
-  return new _Promise((res, rej, link) => {
+  return new Promise((res, rej, link) => {
     link = document.createElement('link');
     link.crossOrigin = "anonymous";
     link.href = href;
@@ -790,7 +825,7 @@ class PageLoader {
     this.loadingRoutes = {};
 
     if (true) {
-      this.promisedBuildManifest = new _Promise(resolve => {
+      this.promisedBuildManifest = new Promise(resolve => {
         if (window.__BUILD_MANIFEST) {
           resolve(window.__BUILD_MANIFEST);
         } else {
@@ -800,12 +835,89 @@ class PageLoader {
         }
       });
     }
+    /** @type {Promise<Set<string>>} */
+
+
+    this.promisedSsgManifest = new Promise(resolve => {
+      if (window.__SSG_MANIFEST) {
+        resolve(window.__SSG_MANIFEST);
+      } else {
+        window.__SSG_MANIFEST_CB = () => {
+          resolve(window.__SSG_MANIFEST);
+        };
+      }
+    });
   } // Returns a promise for the dependencies for a particular route
 
 
   getDependencies(route) {
     return this.promisedBuildManifest.then(man => man[route] && man[route].map(url => this.assetPrefix + "/_next/" + encodeURI(url)) || []);
   }
+  /**
+  * @param {string} href the route href (file-system path)
+  * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+  */
+
+
+  getDataHref(href, asPath) {
+    var getHrefForSlug =
+    /** @type string */
+    path => this.assetPrefix + "/_next/data/" + this.buildId + (path === '/' ? '/index' : path) + ".json";
+
+    var {
+      pathname: hrefPathname,
+      query
+    } = (0, _url.parse)(href, true);
+    var {
+      pathname: asPathname
+    } = (0, _url.parse)(asPath);
+    var route = normalizeRoute(hrefPathname);
+    var isDynamic = (0, _isDynamic.isDynamicRoute)(route),
+        interpolatedRoute;
+
+    if (isDynamic) {
+      var dynamicRegex = (0, _routeRegex.getRouteRegex)(route);
+      var dynamicGroups = dynamicRegex.groups;
+      var dynamicMatches = // Try to match the dynamic route against the asPath
+      (0, _routeMatcher.getRouteMatcher)(dynamicRegex)(asPathname) || // Fall back to reading the values from the href
+      // TODO: should this take priority; also need to change in the router.
+      query;
+      interpolatedRoute = route;
+
+      if (!Object.keys(dynamicGroups).every(param => {
+        var value = dynamicMatches[param];
+        var repeat = dynamicGroups[param].repeat; // support single-level catch-all
+        // TODO: more robust handling for user-error (passing `/`)
+
+        if (repeat && !Array.isArray(value)) value = [value];
+        return param in dynamicMatches && ( // Interpolate group into data URL if present
+        interpolatedRoute = interpolatedRoute.replace("[" + (repeat ? '...' : '') + param + "]", repeat ? value.map(encodeURIComponent).join('/') : encodeURIComponent(value)));
+      })) {
+        interpolatedRoute = ''; // did not satisfy all requirements
+        // n.b. We ignore this error because we handle warning for this case in
+        // development in the `<Link>` component directly.
+      }
+    }
+
+    return isDynamic ? interpolatedRoute && getHrefForSlug(interpolatedRoute) : getHrefForSlug(route);
+  }
+  /**
+  * @param {string} href the route href (file-system path)
+  * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+  */
+
+
+  prefetchData(href, asPath) {
+    var {
+      pathname: hrefPathname
+    } = (0, _url.parse)(href, true);
+    var route = normalizeRoute(hrefPathname);
+    return this.promisedSsgManifest.then((s, _dataHref) => // Check if the route requires a data file
+    s.has(route) && ( // Try to generate data href, noop when falsy
+    _dataHref = this.getDataHref(href, asPath)) && // noop when data has already been prefetched (dedupe)
+    !document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + _dataHref + "\"]") && // Inject the `<link rel=prefetch>` tag for above computed `href`.
+    appendLink(_dataHref, relPrefetch, 'fetch'));
+  }
 
   loadPage(route) {
     return this.loadPageScript(route).then(v => v.page);
@@ -813,7 +925,7 @@ class PageLoader {
 
   loadPageScript(route) {
     route = normalizeRoute(route);
-    return new _Promise((resolve, reject) => {
+    return new Promise((resolve, reject) => {
       var fire = _ref => {
         var {
           error,
@@ -936,6 +1048,11 @@ class PageLoader {
 
     register();
   }
+  /**
+  * @param {string} route
+  * @param {boolean} [isDependency]
+  */
+
 
   prefetch(route, isDependency) {
     // https://github.com/GoogleChromeLabs/quicklink/blob/453a661fa1fa940e2d2e044452398e38c67a98fb/src/index.mjs#L115-L118
@@ -944,8 +1061,10 @@ class PageLoader {
 
     if (cn = navigator.connection) {
       // Don't prefetch if using 2G or if Save-Data is enabled.
-      if (cn.saveData || /2g/.test(cn.effectiveType)) return _Promise.resolve();
+      if (cn.saveData || /2g/.test(cn.effectiveType)) return Promise.resolve();
     }
+    /** @type {string} */
+
 
     var url;
 
@@ -962,7 +1081,7 @@ class PageLoader {
       url = this.assetPrefix + "/_next/static/" + encodeURIComponent(this.buildId) + "/pages" + encodeURI(scriptRoute);
     }
 
-    return _Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'),  true && !isDependency && this.getDependencies(route).then(urls => _Promise.all(urls.map(url => this.prefetch(url, true))))]).then( // do not return any data
+    return Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'),  true && !isDependency && this.getDependencies(route).then(urls => Promise.all(urls.map(url => this.prefetch(url, true))))]).then( // do not return any data
     () => {}, // swallow prefetch errors
     () => {});
   }
@@ -971,6 +1090,13 @@ class PageLoader {
 
 exports.default = PageLoader;
 
+/***/ }),
+
+/***/ "zrsZ":
+/***/ (function(module, exports) {
+
+Promise.prototype.finally=function(n){if("function"!=typeof n)return this.then(n,n);var t=this.constructor||Promise;return this.then(function(r){return t.resolve(n()).then(function(){return r})},function(r){return t.resolve(n()).then(function(){throw r})})};
+
 /***/ })
 
-},[["BMP1",0,1,2,3]]]);
\ No newline at end of file
+},[["BMP1",0,1,2]]]);
\ No newline at end of file
Diff for main-HASH.js
@@ -1,45 +1,26 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[12],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
 
-/***/ "+plK":
+/***/ "7W2i":
 /***/ (function(module, exports, __webpack_require__) {
 
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
+var setPrototypeOf = __webpack_require__("SksO");
 
+function _inherits(subClass, superClass) {
+  if (typeof superClass !== "function" && superClass !== null) {
+    throw new TypeError("Super expression must either be null or a function");
+  }
 
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
-  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
-    return o.__proto__ || _Object$getPrototypeOf(o);
-  };
-  return _getPrototypeOf(o);
+  subClass.prototype = Object.create(superClass && superClass.prototype, {
+    constructor: {
+      value: subClass,
+      writable: true,
+      configurable: true
+    }
+  });
+  if (superClass) setPrototypeOf(subClass, superClass);
 }
 
-module.exports = _getPrototypeOf;
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
-
-__webpack_require__("zn7N")('getPrototypeOf', function () {
-  return function getPrototypeOf(it) {
-    return $getPrototypeOf(toObject(it));
-  };
-});
-
+module.exports = _inherits;
 
 /***/ }),
 
@@ -49,7 +30,7 @@ __webpack_require__("zn7N")('getPrototypeOf', function () {
 "use strict";
 
 
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
 
 var next = _interopRequireWildcard(__webpack_require__("IKlv"));
 
@@ -60,27 +41,14 @@ window.next = next;
 
 /***/ }),
 
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+plK");
-
-/***/ }),
-
 /***/ "DqTX":
 /***/ (function(module, exports, __webpack_require__) {
 
 "use strict";
 
 
-var _Promise = __webpack_require__("eVuF");
-
-var _classCallCheck = __webpack_require__("/HRN");
-
-var _createClass = __webpack_require__("WaGi");
-
 exports.__esModule = true;
-exports["default"] = void 0;
+exports["default"] = initHeadManager;
 var DOMAttributeNames = {
   acceptCharset: 'accept-charset',
   className: 'class',
@@ -88,97 +56,6 @@ var DOMAttributeNames = {
   httpEquiv: 'http-equiv'
 };
 
-var HeadManager = /*#__PURE__*/function () {
-  function HeadManager() {
-    var _this = this;
-
-    _classCallCheck(this, HeadManager);
-
-    this.updateHead = function (head) {
-      var promise = _this.updatePromise = _Promise.resolve().then(function () {
-        if (promise !== _this.updatePromise) return;
-        _this.updatePromise = null;
-
-        _this.doUpdateHead(head);
-      });
-    };
-
-    this.updatePromise = null;
-  }
-
-  _createClass(HeadManager, [{
-    key: "doUpdateHead",
-    value: function doUpdateHead(head) {
-      var _this2 = this;
-
-      var tags = {};
-      head.forEach(function (h) {
-        var components = tags[h.type] || [];
-        components.push(h);
-        tags[h.type] = components;
-      });
-      this.updateTitle(tags.title ? tags.title[0] : null);
-      var types = ['meta', 'base', 'link', 'style', 'script'];
-      types.forEach(function (type) {
-        _this2.updateElements(type, tags[type] || []);
-      });
-    }
-  }, {
-    key: "updateTitle",
-    value: function updateTitle(component) {
-      var title = '';
-
-      if (component) {
-        var children = component.props.children;
-        title = typeof children === 'string' ? children : children.join('');
-      }
-
-      if (title !== document.title) document.title = title;
-    }
-  }, {
-    key: "updateElements",
-    value: function updateElements(type, components) {
-      var headEl = document.getElementsByTagName('head')[0];
-      var headCountEl = headEl.querySelector('meta[name=next-head-count]');
-
-      if (false) {}
-
-      var headCount = Number(headCountEl.content);
-      var oldTags = [];
-
-      for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
-        if (j.tagName.toLowerCase() === type) {
-          oldTags.push(j);
-        }
-      }
-
-      var newTags = components.map(reactElementToDOM).filter(function (newTag) {
-        for (var k = 0, len = oldTags.length; k < len; k++) {
-          var oldTag = oldTags[k];
-
-          if (oldTag.isEqualNode(newTag)) {
-            oldTags.splice(k, 1);
-            return false;
-          }
-        }
-
-        return true;
-      });
-      oldTags.forEach(function (t) {
-        return t.parentNode.removeChild(t);
-      });
-      newTags.forEach(function (t) {
-        return headEl.insertBefore(t, headCountEl);
-      });
-      headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
-    }
-  }]);
-
-  return HeadManager;
-}();
-
-exports["default"] = HeadManager;
-
 function reactElementToDOM(_ref) {
   var type = _ref.type,
       props = _ref.props;
@@ -205,6 +82,70 @@ function reactElementToDOM(_ref) {
   return el;
 }
 
+function updateElements(type, components) {
+  var headEl = document.getElementsByTagName('head')[0];
+  var headCountEl = headEl.querySelector('meta[name=next-head-count]');
+
+  if (false) {}
+
+  var headCount = Number(headCountEl.content);
+  var oldTags = [];
+
+  for (var i = 0, j = headCountEl.previousElementSibling; i < headCount; i++, j = j.previousElementSibling) {
+    if (j.tagName.toLowerCase() === type) {
+      oldTags.push(j);
+    }
+  }
+
+  var newTags = components.map(reactElementToDOM).filter(function (newTag) {
+    for (var k = 0, len = oldTags.length; k < len; k++) {
+      var oldTag = oldTags[k];
+
+      if (oldTag.isEqualNode(newTag)) {
+        oldTags.splice(k, 1);
+        return false;
+      }
+    }
+
+    return true;
+  });
+  oldTags.forEach(function (t) {
+    return t.parentNode.removeChild(t);
+  });
+  newTags.forEach(function (t) {
+    return headEl.insertBefore(t, headCountEl);
+  });
+  headCountEl.content = (headCount - oldTags.length + newTags.length).toString();
+}
+
+function initHeadManager() {
+  var updatePromise = null;
+  return function (head) {
+    var promise = updatePromise = Promise.resolve().then(function () {
+      if (promise !== updatePromise) return;
+      updatePromise = null;
+      var tags = {};
+      head.forEach(function (h) {
+        var components = tags[h.type] || [];
+        components.push(h);
+        tags[h.type] = components;
+      });
+      var titleComponent = tags.title ? tags.title[0] : null;
+      var title = '';
+
+      if (titleComponent) {
+        var children = titleComponent.props.children;
+        title = typeof children === 'string' ? children : children.join('');
+      }
+
+      if (title !== document.title) document.title = title;
+      ['meta', 'base', 'link', 'style', 'script'].forEach(function (type) {
+        updateElements(type, tags[type] || []);
+      });
+    });
+  };
+}
+
 /***/ }),
 
 /***/ "FYa8":
@@ -213,8 +154,6 @@ function reactElementToDOM(_ref) {
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -225,7 +164,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -241,34 +180,32 @@ exports.HeadManagerContext = React.createContext(null);
 "use strict";
 
 
-var _regeneratorRuntime = __webpack_require__("ln6h");
-
-var _classCallCheck = __webpack_require__("/HRN");
+var _regeneratorRuntime = __webpack_require__("o0o1");
 
-var _createClass = __webpack_require__("WaGi");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _createClass = __webpack_require__("W8MJ");
 
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
 
-var _inherits = __webpack_require__("N9n2");
+var _getPrototypeOf = __webpack_require__("Nsbk");
 
-var _slicedToArray = __webpack_require__("8+Nu");
+var _inherits = __webpack_require__("7W2i");
 
-var _Promise = __webpack_require__("eVuF");
+var _slicedToArray = __webpack_require__("J4zp");
 
-var _interopRequireWildcard3 = __webpack_require__("5Uuq");
+var _interopRequireWildcard3 = __webpack_require__("284h");
 
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.render = render;
 exports.renderError = renderError;
 exports["default"] = exports.emitter = exports.router = exports.version = void 0;
 
-var _extends2 = _interopRequireDefault(__webpack_require__("htGi"));
+var _extends2 = _interopRequireDefault(__webpack_require__("pVnL"));
 
-var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("5Uuq"));
+var _interopRequireWildcard2 = _interopRequireDefault(__webpack_require__("284h"));
 
 var _react = _interopRequireDefault(__webpack_require__("q1tI"));
 
@@ -293,23 +230,19 @@ var _routerContext = __webpack_require__("qOIg");
 var _querystring = __webpack_require__("s4NR");
 
 var _isDynamic = __webpack_require__("/jkW");
+
+var _performanceRelayer = __webpack_require__("bGXG");
 /* global location */
 
 
-if (false) {} else {
-  // Polyfill Promise globally
-  // This is needed because Webpack's dynamic loading(common chunks) code
-  // depends on Promise.
-  // So, we need to polyfill it.
-  // See: https://webpack.js.org/guides/code-splitting/#dynamic-imports
-  if (!self.Promise) {
-    self.Promise = __webpack_require__("eVuF");
-  }
+if (!('finally' in Promise.prototype)) {
+  // eslint-disable-next-line no-extend-native
+  Promise.prototype["finally"] = __webpack_require__("zrsZ");
 }
 
 var data = JSON.parse(document.getElementById('__NEXT_DATA__').textContent);
 window.__NEXT_DATA__ = data;
-var version = "9.2.2";
+var version = "9.2.3-canary.22";
 exports.version = version;
 var props = data.props,
     err = data.err,
@@ -347,7 +280,7 @@ if (window.__NEXT_P) {
 
 window.__NEXT_P = [];
 window.__NEXT_P.push = register;
-var headManager = new _headManager["default"]();
+var updateHead = (0, _headManager["default"])();
 var appElement = document.getElementById('__next');
 var lastAppProps;
 var webpackHMR;
@@ -463,12 +396,14 @@ var _default = function _default(_temp) {
               var name = _ref2.name,
                   startTime = _ref2.startTime,
                   value = _ref2.value,
-                  duration = _ref2.duration;
+                  duration = _ref2.duration,
+                  entryType = _ref2.entryType;
               mod.unstable_onPerformanceData({
                 name: name,
                 startTime: startTime,
                 value: value,
-                duration: duration
+                duration: duration,
+                entryType: entryType
               });
             };
           }
@@ -715,14 +650,9 @@ function renderReactElement(reactEl, domEl) {
 
   if (onPerfEntry && _utils.ST) {
     try {
-      var observer = new PerformanceObserver(function (list) {
-        list.getEntries().forEach(onPerfEntry);
-      }); // Start observing paint entry types.
-
-      observer.observe({
-        type: 'paint',
-        buffered: true
-      });
+      (0, _performanceRelayer.observeLayoutShift)(onPerfEntry);
+      (0, _performanceRelayer.observeLargestContentfulPaint)(onPerfEntry);
+      (0, _performanceRelayer.observePaint)(onPerfEntry);
     } catch (e) {
       window.addEventListener('load', function () {
         performance.getEntriesByType('paint').forEach(onPerfEntry);
@@ -791,7 +721,7 @@ function AppContainer(_ref4) {
   }, _react["default"].createElement(_routerContext.RouterContext.Provider, {
     value: (0, _router.makePublicRouterInstance)(router)
   }, _react["default"].createElement(_headManagerContext.HeadManagerContext.Provider, {
-    value: headManager.updateHead
+    value: updateHead
   }, children)));
 }
 
@@ -875,7 +805,21 @@ function doRender(_ref5) {
 
 /***/ }),
 
-/***/ "K47E":
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+    return o.__proto__ || Object.getPrototypeOf(o);
+  };
+  return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+
+/***/ }),
+
+/***/ "PJYZ":
 /***/ (function(module, exports) {
 
 function _assertThisInitialized(self) {
@@ -890,74 +834,138 @@ module.exports = _assertThisInitialized;
 
 /***/ }),
 
-/***/ "N9n2":
+/***/ "a1gu":
 /***/ (function(module, exports, __webpack_require__) {
 
-var _Object$create = __webpack_require__("SqZg");
+var _typeof = __webpack_require__("cDf5");
 
-var setPrototypeOf = __webpack_require__("vjea");
+var assertThisInitialized = __webpack_require__("PJYZ");
 
-function _inherits(subClass, superClass) {
-  if (typeof superClass !== "function" && superClass !== null) {
-    throw new TypeError("Super expression must either be null or a function");
+function _possibleConstructorReturn(self, call) {
+  if (call && (_typeof(call) === "object" || typeof call === "function")) {
+    return call;
   }
 
-  subClass.prototype = _Object$create(superClass && superClass.prototype, {
-    constructor: {
-      value: subClass,
-      writable: true,
-      configurable: true
-    }
-  });
-  if (superClass) setPrototypeOf(subClass, superClass);
+  return assertThisInitialized(self);
 }
 
-module.exports = _inherits;
+module.exports = _possibleConstructorReturn;
 
 /***/ }),
 
-/***/ "UXZV":
+/***/ "bGXG":
 /***/ (function(module, exports, __webpack_require__) {
 
-module.exports = __webpack_require__("UbbE");
-
-/***/ }),
-
-/***/ "UbbE":
-/***/ (function(module, exports, __webpack_require__) {
+"use strict";
 
-__webpack_require__("o8NH");
-module.exports = __webpack_require__("WEpk").Object.assign;
 
+exports.__esModule = true;
+exports.observeLayoutShift = observeLayoutShift;
+exports.observeLargestContentfulPaint = observeLargestContentfulPaint;
+exports.observePaint = observePaint;
 
-/***/ }),
+function isTypeSupported(type) {
+  if (self.PerformanceObserver && PerformanceObserver.supportedEntryTypes) {
+    return PerformanceObserver.supportedEntryTypes.includes(type);
+  }
 
-/***/ "ZDA2":
-/***/ (function(module, exports, __webpack_require__) {
+  return false;
+}
 
-var _typeof = __webpack_require__("iZP3");
+function observeLayoutShift(onPerfEntry) {
+  if (isTypeSupported('layout-shift')) {
+    var cumulativeScore = 0;
+    var observer = new PerformanceObserver(function (list) {
+      var _iteratorNormalCompletion = true;
+      var _didIteratorError = false;
+      var _iteratorError = undefined;
+
+      try {
+        for (var _iterator = list.getEntries()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+          var entry = _step.value;
+
+          // Only count layout shifts without recent user input.
+          if (!entry.hadRecentInput) {
+            cumulativeScore += entry.value;
+          }
+        }
+      } catch (err) {
+        _didIteratorError = true;
+        _iteratorError = err;
+      } finally {
+        try {
+          if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+            _iterator["return"]();
+          }
+        } finally {
+          if (_didIteratorError) {
+            throw _iteratorError;
+          }
+        }
+      }
+    });
+    observer.observe({
+      type: 'layout-shift',
+      buffered: true
+    });
+    document.addEventListener('visibilitychange', function clsObserver() {
+      if (document.visibilityState === 'hidden') {
+        // Force any pending records to be dispatched.
+        observer.takeRecords();
+        observer.disconnect();
+        removeEventListener('visibilitychange', clsObserver, true);
+        onPerfEntry({
+          name: 'cumulative-layout-shift',
+          value: cumulativeScore
+        });
+      }
+    }, true);
+  }
+}
 
-var assertThisInitialized = __webpack_require__("K47E");
+function observeLargestContentfulPaint(onPerfEntry) {
+  if (isTypeSupported('largest-contentful-paint')) {
+    // Create a variable to hold the latest LCP value (since it can change).
+    var lcp; // Create the PerformanceObserver instance.
 
-function _possibleConstructorReturn(self, call) {
-  if (call && (_typeof(call) === "object" || typeof call === "function")) {
-    return call;
+    var observer = new PerformanceObserver(function (entryList) {
+      var entries = entryList.getEntries();
+      var lastEntry = entries[entries.length - 1];
+      lcp = lastEntry.renderTime || lastEntry.loadTime;
+    });
+    observer.observe({
+      type: 'largest-contentful-paint',
+      buffered: true
+    });
+    document.addEventListener('visibilitychange', function lcpObserver() {
+      if (lcp && document.visibilityState === 'hidden') {
+        removeEventListener('visibilitychange', lcpObserver, true);
+        onPerfEntry({
+          name: 'largest-contentful-paint',
+          value: lcp
+        });
+      }
+    }, true);
   }
-
-  return assertThisInitialized(self);
 }
 
-module.exports = _possibleConstructorReturn;
+function observePaint(onPerfEntry) {
+  var observer = new PerformanceObserver(function (list) {
+    list.getEntries().forEach(onPerfEntry);
+  });
+  observer.observe({
+    type: 'paint',
+    buffered: true
+  });
+}
 
 /***/ }),
 
-/***/ "htGi":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$assign = __webpack_require__("UXZV");
+/***/ "pVnL":
+/***/ (function(module, exports) {
 
 function _extends() {
-  module.exports = _extends = _Object$assign || function (target) {
+  module.exports = _extends = Object.assign || function (target) {
     for (var i = 1; i < arguments.length; i++) {
       var source = arguments[i];
 
@@ -976,17 +984,6 @@ function _extends() {
 
 module.exports = _extends;
 
-/***/ }),
-
-/***/ "o8NH":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.3.1 Object.assign(target, source)
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") });
-
-
 /***/ }),
 
 /***/ "yLiY":
@@ -995,12 +992,9 @@ $export($export.S + $export.F, 'Object', { assign: __webpack_require__("kwZ1") }
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
-
 var runtimeConfig;
 
 exports["default"] = function () {
@@ -1021,19 +1015,25 @@ exports.setConfig = setConfig;
 "use strict";
 
 
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
 
-var _Promise = __webpack_require__("eVuF");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports["default"] = void 0;
 
+var _url = __webpack_require__("QmWs");
+
 var _mitt = _interopRequireDefault(__webpack_require__("dZ6Y"));
 
+var _isDynamic = __webpack_require__("/jkW");
+
+var _routeMatcher = __webpack_require__("gguc");
+
+var _routeRegex = __webpack_require__("YTqd");
+
 function hasRel(rel, link) {
   try {
     link = document.createElement('link');
@@ -1047,6 +1047,7 @@ var relPrefetch = hasRel('preload') && !hasRel('prefetch') ? // https://caniuse.
 // IE 11, Edge 12+, nearly all evergreen
 'prefetch';
 var hasNoModule = 'noModule' in document.createElement('script');
+/** @param {string} route */
 
 function normalizeRoute(route) {
   if (route[0] !== '/') {
@@ -1059,7 +1060,7 @@ function normalizeRoute(route) {
 }
 
 function appendLink(href, rel, as) {
-  return new _Promise(function (res, rej, link) {
+  return new Promise(function (res, rej, link) {
     link = document.createElement('link');
     link.crossOrigin = "anonymous";
     link.href = href;
@@ -1082,7 +1083,7 @@ var PageLoader = /*#__PURE__*/function () {
     this.loadingRoutes = {};
 
     if (true) {
-      this.promisedBuildManifest = new _Promise(function (resolve) {
+      this.promisedBuildManifest = new Promise(function (resolve) {
         if (window.__BUILD_MANIFEST) {
           resolve(window.__BUILD_MANIFEST);
         } else {
@@ -1092,6 +1093,18 @@ var PageLoader = /*#__PURE__*/function () {
         }
       });
     }
+    /** @type {Promise<Set<string>>} */
+
+
+    this.promisedSsgManifest = new Promise(function (resolve) {
+      if (window.__SSG_MANIFEST) {
+        resolve(window.__SSG_MANIFEST);
+      } else {
+        window.__SSG_MANIFEST_CB = function () {
+          resolve(window.__SSG_MANIFEST);
+        };
+      }
+    });
   } // Returns a promise for the dependencies for a particular route
 
 
@@ -1106,6 +1119,82 @@ var PageLoader = /*#__PURE__*/function () {
         }) || [];
       });
     }
+    /**
+    * @param {string} href the route href (file-system path)
+    * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+    */
+
+  }, {
+    key: "getDataHref",
+    value: function getDataHref(href, asPath) {
+      var _this2 = this;
+
+      var getHrefForSlug =
+      /** @type string */
+      function getHrefForSlug(path) {
+        return _this2.assetPrefix + "/_next/data/" + _this2.buildId + (path === '/' ? '/index' : path) + ".json";
+      };
+
+      var _ref = (0, _url.parse)(href, true),
+          hrefPathname = _ref.pathname,
+          query = _ref.query;
+
+      var _ref2 = (0, _url.parse)(asPath),
+          asPathname = _ref2.pathname;
+
+      var route = normalizeRoute(hrefPathname);
+      var isDynamic = (0, _isDynamic.isDynamicRoute)(route),
+          interpolatedRoute;
+
+      if (isDynamic) {
+        var dynamicRegex = (0, _routeRegex.getRouteRegex)(route);
+        var dynamicGroups = dynamicRegex.groups;
+        var dynamicMatches = // Try to match the dynamic route against the asPath
+        (0, _routeMatcher.getRouteMatcher)(dynamicRegex)(asPathname) || // Fall back to reading the values from the href
+        // TODO: should this take priority; also need to change in the router.
+        query;
+        interpolatedRoute = route;
+
+        if (!Object.keys(dynamicGroups).every(function (param) {
+          var value = dynamicMatches[param];
+          var repeat = dynamicGroups[param].repeat; // support single-level catch-all
+          // TODO: more robust handling for user-error (passing `/`)
+
+          if (repeat && !Array.isArray(value)) value = [value];
+          return param in dynamicMatches && ( // Interpolate group into data URL if present
+          interpolatedRoute = interpolatedRoute.replace("[" + (repeat ? '...' : '') + param + "]", repeat ? value.map(encodeURIComponent).join('/') : encodeURIComponent(value)));
+        })) {
+          interpolatedRoute = ''; // did not satisfy all requirements
+          // n.b. We ignore this error because we handle warning for this case in
+          // development in the `<Link>` component directly.
+        }
+      }
+
+      return isDynamic ? interpolatedRoute && getHrefForSlug(interpolatedRoute) : getHrefForSlug(route);
+    }
+    /**
+    * @param {string} href the route href (file-system path)
+    * @param {string} asPath the URL as shown in browser (virtual path); used for dynamic routes
+    */
+
+  }, {
+    key: "prefetchData",
+    value: function prefetchData(href, asPath) {
+      var _this3 = this;
+
+      var _ref3 = (0, _url.parse)(href, true),
+          hrefPathname = _ref3.pathname;
+
+      var route = normalizeRoute(hrefPathname);
+      return this.promisedSsgManifest.then(function (s, _dataHref) {
+        return (// Check if the route requires a data file
+          s.has(route) && ( // Try to generate data href, noop when falsy
+          _dataHref = _this3.getDataHref(href, asPath)) && // noop when data has already been prefetched (dedupe)
+          !document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + _dataHref + "\"]") && // Inject the `<link rel=prefetch>` tag for above computed `href`.
+          appendLink(_dataHref, relPrefetch, 'fetch')
+        );
+      });
+    }
   }, {
     key: "loadPage",
     value: function loadPage(route) {
@@ -1116,18 +1205,18 @@ var PageLoader = /*#__PURE__*/function () {
   }, {
     key: "loadPageScript",
     value: function loadPageScript(route) {
-      var _this2 = this;
+      var _this4 = this;
 
       route = normalizeRoute(route);
-      return new _Promise(function (resolve, reject) {
+      return new Promise(function (resolve, reject) {
         var fire = function fire(_ref) {
           var error = _ref.error,
               page = _ref.page,
               mod = _ref.mod;
 
-          _this2.pageRegisterEvents.off(route, fire);
+          _this4.pageRegisterEvents.off(route, fire);
 
-          delete _this2.loadingRoutes[route];
+          delete _this4.loadingRoutes[route];
 
           if (error) {
             reject(error);
@@ -1140,7 +1229,7 @@ var PageLoader = /*#__PURE__*/function () {
         }; // If there's a cached version of the page, let's use it.
 
 
-        var cachedPage = _this2.pageCache[route];
+        var cachedPage = _this4.pageCache[route];
 
         if (cachedPage) {
           var error = cachedPage.error,
@@ -1154,7 +1243,7 @@ var PageLoader = /*#__PURE__*/function () {
         } // Register a listener to get the page
 
 
-        _this2.pageRegisterEvents.on(route, fire); // If the page is loading via SSR, we need to wait for it
+        _this4.pageRegisterEvents.on(route, fire); // If the page is loading via SSR, we need to wait for it
         // rather downloading it again.
 
 
@@ -1162,14 +1251,14 @@ var PageLoader = /*#__PURE__*/function () {
           return;
         }
 
-        if (!_this2.loadingRoutes[route]) {
-          _this2.loadingRoutes[route] = true;
+        if (!_this4.loadingRoutes[route]) {
+          _this4.loadingRoutes[route] = true;
 
           if (true) {
-            _this2.getDependencies(route).then(function (deps) {
+            _this4.getDependencies(route).then(function (deps) {
               deps.forEach(function (d) {
                 if (/\.js$/.test(d) && !document.querySelector("script[src^=\"" + d + "\"]")) {
-                  _this2.loadScript(d, route, false);
+                  _this4.loadScript(d, route, false);
                 }
 
                 if (/\.css$/.test(d) && !document.querySelector("link[rel=stylesheet][href^=\"" + d + "\"]")) {
@@ -1179,7 +1268,7 @@ var PageLoader = /*#__PURE__*/function () {
                 }
               });
 
-              _this2.loadRoute(route);
+              _this4.loadRoute(route);
             });
           } else {}
         }
@@ -1196,7 +1285,7 @@ var PageLoader = /*#__PURE__*/function () {
   }, {
     key: "loadScript",
     value: function loadScript(url, route, isPage) {
-      var _this3 = this;
+      var _this5 = this;
 
       var script = document.createElement('script');
 
@@ -1214,7 +1303,7 @@ var PageLoader = /*#__PURE__*/function () {
         var error = new Error("Error loading script " + url);
         error.code = 'PAGE_LOAD_ERROR';
 
-        _this3.pageRegisterEvents.emit(route, {
+        _this5.pageRegisterEvents.emit(route, {
           error: error
         });
       };
@@ -1225,7 +1314,7 @@ var PageLoader = /*#__PURE__*/function () {
   }, {
     key: "registerPage",
     value: function registerPage(route, regFn) {
-      var _this4 = this;
+      var _this6 = this;
 
       var register = function register() {
         try {
@@ -1234,15 +1323,15 @@ var PageLoader = /*#__PURE__*/function () {
             page: mod["default"] || mod,
             mod: mod
           };
-          _this4.pageCache[route] = pageData;
+          _this6.pageCache[route] = pageData;
 
-          _this4.pageRegisterEvents.emit(route, pageData);
+          _this6.pageRegisterEvents.emit(route, pageData);
         } catch (error) {
-          _this4.pageCache[route] = {
+          _this6.pageCache[route] = {
             error: error
           };
 
-          _this4.pageRegisterEvents.emit(route, {
+          _this6.pageRegisterEvents.emit(route, {
             error: error
           });
         }
@@ -1252,10 +1341,15 @@ var PageLoader = /*#__PURE__*/function () {
 
       register();
     }
+    /**
+    * @param {string} route
+    * @param {boolean} [isDependency]
+    */
+
   }, {
     key: "prefetch",
     value: function prefetch(route, isDependency) {
-      var _this5 = this;
+      var _this7 = this;
 
       // https://github.com/GoogleChromeLabs/quicklink/blob/453a661fa1fa940e2d2e044452398e38c67a98fb/src/index.mjs#L115-L118
       // License: Apache 2.0
@@ -1263,8 +1357,10 @@ var PageLoader = /*#__PURE__*/function () {
 
       if (cn = navigator.connection) {
         // Don't prefetch if using 2G or if Save-Data is enabled.
-        if (cn.saveData || /2g/.test(cn.effectiveType)) return _Promise.resolve();
+        if (cn.saveData || /2g/.test(cn.effectiveType)) return Promise.resolve();
       }
+      /** @type {string} */
+
 
       var url;
 
@@ -1281,9 +1377,9 @@ var PageLoader = /*#__PURE__*/function () {
         url = this.assetPrefix + "/_next/static/" + encodeURIComponent(this.buildId) + "/pages" + encodeURI(scriptRoute);
       }
 
-      return _Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'),  true && !isDependency && this.getDependencies(route).then(function (urls) {
-        return _Promise.all(urls.map(function (url) {
-          return _this5.prefetch(url, true);
+      return Promise.all(document.querySelector("link[rel=\"" + relPrefetch + "\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]") ? [] : [appendLink(url, relPrefetch, url.match(/\.css$/) ? 'style' : 'script'),  true && !isDependency && this.getDependencies(route).then(function (urls) {
+        return Promise.all(urls.map(function (url) {
+          return _this7.prefetch(url, true);
         }));
       })]).then( // do not return any data
       function () {}, // swallow prefetch errors
@@ -1296,6 +1392,13 @@ var PageLoader = /*#__PURE__*/function () {
 
 exports["default"] = PageLoader;
 
+/***/ }),
+
+/***/ "zrsZ":
+/***/ (function(module, exports) {
+
+Promise.prototype.finally=function(n){if("function"!=typeof n)return this.then(n,n);var t=this.constructor||Promise;return this.then(function(r){return t.resolve(n()).then(function(){return r})},function(r){return t.resolve(n()).then(function(){throw r})})};
+
 /***/ })
 
-},[["BMP1",0,2,1,3,4]]]);
\ No newline at end of file
+},[["BMP1",0,1,2]]]);
\ No newline at end of file
Diff for framework.HASH.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[2],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[1],{
 
 /***/ "+wdc":
 /***/ (function(module, exports, __webpack_require__) {
Diff for de003c3a9d30..f1fc2d092.js

Diff too large to display

Diff for de003c3a9d30..fb.module.js

Diff too large to display

Diff for withRouter.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
 
 /***/ "0Hlz":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -36,4 +36,4 @@ useWithRouter.getInitialProps = () => ({});
 
 /***/ })
 
-},[["eThv",0,1,2,3]]]);
\ No newline at end of file
+},[["eThv",0,1,2]]]);
\ No newline at end of file
Diff for withRouter.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[11],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
 
 /***/ "0Hlz":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -38,4 +38,4 @@ useWithRouter.getInitialProps = function () {
 
 /***/ })
 
-},[["eThv",0,2,1,3,4]]]);
\ No newline at end of file
+},[["eThv",0,1,2]]]);
\ No newline at end of file
Diff for routerDirect.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
 
 /***/ "LtRI":
 /***/ (function(module, exports, __webpack_require__) {
@@ -38,4 +38,4 @@ routerDirect.getInitialProps = () => ({});
 
 /***/ })
 
-},[["LtRI",0,1,2,3]]]);
\ No newline at end of file
+},[["LtRI",0,1,2]]]);
\ No newline at end of file
Diff for routerDirect.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[10],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
 
 /***/ "LtRI":
 /***/ (function(module, exports, __webpack_require__) {
@@ -40,4 +40,4 @@ routerDirect.getInitialProps = function () {
 
 /***/ })
 
-},[["LtRI",0,2,1,3,4]]]);
\ No newline at end of file
+},[["LtRI",0,1,2]]]);
\ No newline at end of file
Diff for link.module.js
@@ -1,36 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
-
-/***/ "/h46":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
-__webpack_require__("cHUd")('Map');
-
-
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
-  return function toJSON() {
-    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
-    return from(this);
-  };
-};
-
-
-/***/ }),
-
-/***/ "LX0d":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("UDep");
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
 
 /***/ "ObF3":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -55,35 +23,6 @@ aLink.getInitialProps = () => ({});
 
 /* harmony default export */ __webpack_exports__["default"] = (aLink);
 
-/***/ }),
-
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
-  var result = [];
-  forOf(iter, false, result.push, result, ITERATOR);
-  return result;
-};
-
-
-/***/ }),
-
-/***/ "UDep":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("g33z");
-__webpack_require__("XLbu");
-__webpack_require__("/h46");
-__webpack_require__("dVTT");
-module.exports = __webpack_require__("WEpk").Map;
-
-
 /***/ }),
 
 /***/ "V8Sf":
@@ -97,169 +36,6 @@ module.exports = __webpack_require__("WEpk").Map;
     }]);
   
 
-/***/ }),
-
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
-  // fast case
-  var index = fastKey(key);
-  var entry;
-  if (index !== 'F') return that._i[index];
-  // frozen object case
-  for (entry = that._f; entry; entry = entry.n) {
-    if (entry.k == key) return entry;
-  }
-};
-
-module.exports = {
-  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
-    var C = wrapper(function (that, iterable) {
-      anInstance(that, C, NAME, '_i');
-      that._t = NAME;         // collection type
-      that._i = create(null); // index
-      that._f = undefined;    // first entry
-      that._l = undefined;    // last entry
-      that[SIZE] = 0;         // size
-      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
-    });
-    redefineAll(C.prototype, {
-      // 23.1.3.1 Map.prototype.clear()
-      // 23.2.3.2 Set.prototype.clear()
-      clear: function clear() {
-        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
-          entry.r = true;
-          if (entry.p) entry.p = entry.p.n = undefined;
-          delete data[entry.i];
-        }
-        that._f = that._l = undefined;
-        that[SIZE] = 0;
-      },
-      // 23.1.3.3 Map.prototype.delete(key)
-      // 23.2.3.4 Set.prototype.delete(value)
-      'delete': function (key) {
-        var that = validate(this, NAME);
-        var entry = getEntry(that, key);
-        if (entry) {
-          var next = entry.n;
-          var prev = entry.p;
-          delete that._i[entry.i];
-          entry.r = true;
-          if (prev) prev.n = next;
-          if (next) next.p = prev;
-          if (that._f == entry) that._f = next;
-          if (that._l == entry) that._l = prev;
-          that[SIZE]--;
-        } return !!entry;
-      },
-      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
-      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
-      forEach: function forEach(callbackfn /* , that = undefined */) {
-        validate(this, NAME);
-        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
-        var entry;
-        while (entry = entry ? entry.n : this._f) {
-          f(entry.v, entry.k, this);
-          // revert to the last existing entry
-          while (entry && entry.r) entry = entry.p;
-        }
-      },
-      // 23.1.3.7 Map.prototype.has(key)
-      // 23.2.3.7 Set.prototype.has(value)
-      has: function has(key) {
-        return !!getEntry(validate(this, NAME), key);
-      }
-    });
-    if (DESCRIPTORS) dP(C.prototype, 'size', {
-      get: function () {
-        return validate(this, NAME)[SIZE];
-      }
-    });
-    return C;
-  },
-  def: function (that, key, value) {
-    var entry = getEntry(that, key);
-    var prev, index;
-    // change existing entry
-    if (entry) {
-      entry.v = value;
-    // create new entry
-    } else {
-      that._l = entry = {
-        i: index = fastKey(key, true), // <- index
-        k: key,                        // <- key
-        v: value,                      // <- value
-        p: prev = that._l,             // <- previous entry
-        n: undefined,                  // <- next entry
-        r: false                       // <- removed
-      };
-      if (!that._f) that._f = entry;
-      if (prev) prev.n = entry;
-      that[SIZE]++;
-      // add to index
-      if (index !== 'F') that._i[index] = entry;
-    } return that;
-  },
-  getEntry: getEntry,
-  setStrong: function (C, NAME, IS_MAP) {
-    // add .keys, .values, .entries, [@@iterator]
-    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
-    $iterDefine(C, NAME, function (iterated, kind) {
-      this._t = validate(iterated, NAME); // target
-      this._k = kind;                     // kind
-      this._l = undefined;                // previous
-    }, function () {
-      var that = this;
-      var kind = that._k;
-      var entry = that._l;
-      // revert to the last existing entry
-      while (entry && entry.r) entry = entry.p;
-      // get next entry
-      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
-        // or finish the iteration
-        that._t = undefined;
-        return step(1);
-      }
-      // return step by kind
-      if (kind == 'keys') return step(0, entry.k);
-      if (kind == 'values') return step(0, entry.v);
-      return step(0, [entry.k, entry.v]);
-    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
-    // add [@@species], 23.1.2.2, 23.2.2.2
-    setSpecies(NAME);
-  }
-};
-
-
-/***/ }),
-
-/***/ "XLbu":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__("8iia")('Map') });
-
-
 /***/ }),
 
 /***/ "YFqc":
@@ -276,18 +52,16 @@ module.exports = __webpack_require__("cTJO")
 "use strict";
 
 
-var _Map = __webpack_require__("LX0d");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
 
 exports.__esModule = true;
 exports.default = void 0;
 
 var _react = _interopRequireWildcard(__webpack_require__("q1tI"));
 
-var _url = __webpack_require__("CxY0");
+var _url = __webpack_require__("QmWs");
 
 var _utils = __webpack_require__("g/15");
 
@@ -321,7 +95,7 @@ function formatUrl(url) {
 }
 
 var observer;
-var listeners = new _Map();
+var listeners = new Map();
 var IntersectionObserver = true ? window.IntersectionObserver : undefined;
 var prefetched = {};
 
@@ -460,10 +234,10 @@ class Link extends _react.Component {
   }
 
   handleRef(ref) {
-    var isPrefetched = prefetched[this.getPaths()[0]];
-
     if (this.p && IntersectionObserver && ref && ref.tagName) {
       this.cleanUpListeners();
+      var isPrefetched = prefetched[this.getPaths().join( // Join on an invalid URI character
+      '%')];
 
       if (!isPrefetched) {
         this.cleanUpListeners = listenToIntersections(ref, () => {
@@ -478,11 +252,20 @@ class Link extends _react.Component {
   prefetch(options) {
     if (!this.p || false) return; // Prefetch the JSON page if asked (only in the client)
 
-    var [href, asPath] = this.getPaths();
+    var paths = this.getPaths(); // We need to handle a prefetch error here since we may be
+    // loading with priority which can reject but we don't
+    // want to force navigation since this is only a prefetch
 
-    _router.default.prefetch(href, asPath, options);
+    _router.default.prefetch(paths[
+    /* href */
+    0], paths[
+    /* asPath */
+    1], options).catch(err => {
+      if (false) {}
+    });
 
-    prefetched[href] = true;
+    prefetched[paths.join( // Join on an invalid URI character
+    '%')] = true;
   }
 
   render() {
@@ -550,42 +333,6 @@ if (false) { var exact, PropTypes, warn; }
 var _default = Link;
 exports.default = _default;
 
-/***/ }),
-
-/***/ "dVTT":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
-__webpack_require__("aPfg")('Map');
-
-
-/***/ }),
-
-/***/ "g33z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var MAP = 'Map';
-
-// 23.1 Map Objects
-module.exports = __webpack_require__("raTm")(MAP, function (get) {
-  return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
-  // 23.1.3.6 Map.prototype.get(key)
-  get: function get(key) {
-    var entry = strong.getEntry(validate(this, MAP), key);
-    return entry && entry.v;
-  },
-  // 23.1.3.9 Map.prototype.set(key, value)
-  set: function set(key, value) {
-    return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
-  }
-}, strong, true);
-
-
 /***/ })
 
-},[["V8Sf",0,1,2,3]]]);
\ No newline at end of file
+},[["V8Sf",0,1,2]]]);
\ No newline at end of file
Diff for link.js
@@ -1,115 +1,16 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[9],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
 
-/***/ "+plK":
+/***/ "7W2i":
 /***/ (function(module, exports, __webpack_require__) {
 
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
-  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
-    return o.__proto__ || _Object$getPrototypeOf(o);
-  };
-  return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
-
-/***/ "/h46":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
-__webpack_require__("cHUd")('Map');
-
-
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
-  return function toJSON() {
-    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
-    return from(this);
-  };
-};
-
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
-
-__webpack_require__("zn7N")('getPrototypeOf', function () {
-  return function getPrototypeOf(it) {
-    return $getPrototypeOf(toObject(it));
-  };
-});
-
-
-/***/ }),
-
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+plK");
-
-/***/ }),
-
-/***/ "K47E":
-/***/ (function(module, exports) {
-
-function _assertThisInitialized(self) {
-  if (self === void 0) {
-    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
-  }
-
-  return self;
-}
-
-module.exports = _assertThisInitialized;
-
-/***/ }),
-
-/***/ "LX0d":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("UDep");
-
-/***/ }),
-
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
+var setPrototypeOf = __webpack_require__("SksO");
 
 function _inherits(subClass, superClass) {
   if (typeof superClass !== "function" && superClass !== null) {
     throw new TypeError("Super expression must either be null or a function");
   }
 
-  subClass.prototype = _Object$create(superClass && superClass.prototype, {
+  subClass.prototype = Object.create(superClass && superClass.prototype, {
     constructor: {
       value: subClass,
       writable: true,
@@ -123,6 +24,20 @@ module.exports = _inherits;
 
 /***/ }),
 
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+    return o.__proto__ || Object.getPrototypeOf(o);
+  };
+  return _getPrototypeOf(o);
+}
+
+module.exports = _getPrototypeOf;
+
+/***/ }),
+
 /***/ "ObF3":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 
@@ -150,32 +65,18 @@ aLink.getInitialProps = function () {
 
 /***/ }),
 
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
-  var result = [];
-  forOf(iter, false, result.push, result, ITERATOR);
-  return result;
-};
-
-
-/***/ }),
+/***/ "PJYZ":
+/***/ (function(module, exports) {
 
-/***/ "UDep":
-/***/ (function(module, exports, __webpack_require__) {
+function _assertThisInitialized(self) {
+  if (self === void 0) {
+    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+  }
 
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("g33z");
-__webpack_require__("XLbu");
-__webpack_require__("/h46");
-__webpack_require__("dVTT");
-module.exports = __webpack_require__("WEpk").Map;
+  return self;
+}
 
+module.exports = _assertThisInitialized;
 
 /***/ }),
 
@@ -190,169 +91,6 @@ module.exports = __webpack_require__("WEpk").Map;
     }]);
   
 
-/***/ }),
-
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
-  // fast case
-  var index = fastKey(key);
-  var entry;
-  if (index !== 'F') return that._i[index];
-  // frozen object case
-  for (entry = that._f; entry; entry = entry.n) {
-    if (entry.k == key) return entry;
-  }
-};
-
-module.exports = {
-  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
-    var C = wrapper(function (that, iterable) {
-      anInstance(that, C, NAME, '_i');
-      that._t = NAME;         // collection type
-      that._i = create(null); // index
-      that._f = undefined;    // first entry
-      that._l = undefined;    // last entry
-      that[SIZE] = 0;         // size
-      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
-    });
-    redefineAll(C.prototype, {
-      // 23.1.3.1 Map.prototype.clear()
-      // 23.2.3.2 Set.prototype.clear()
-      clear: function clear() {
-        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
-          entry.r = true;
-          if (entry.p) entry.p = entry.p.n = undefined;
-          delete data[entry.i];
-        }
-        that._f = that._l = undefined;
-        that[SIZE] = 0;
-      },
-      // 23.1.3.3 Map.prototype.delete(key)
-      // 23.2.3.4 Set.prototype.delete(value)
-      'delete': function (key) {
-        var that = validate(this, NAME);
-        var entry = getEntry(that, key);
-        if (entry) {
-          var next = entry.n;
-          var prev = entry.p;
-          delete that._i[entry.i];
-          entry.r = true;
-          if (prev) prev.n = next;
-          if (next) next.p = prev;
-          if (that._f == entry) that._f = next;
-          if (that._l == entry) that._l = prev;
-          that[SIZE]--;
-        } return !!entry;
-      },
-      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
-      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
-      forEach: function forEach(callbackfn /* , that = undefined */) {
-        validate(this, NAME);
-        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
-        var entry;
-        while (entry = entry ? entry.n : this._f) {
-          f(entry.v, entry.k, this);
-          // revert to the last existing entry
-          while (entry && entry.r) entry = entry.p;
-        }
-      },
-      // 23.1.3.7 Map.prototype.has(key)
-      // 23.2.3.7 Set.prototype.has(value)
-      has: function has(key) {
-        return !!getEntry(validate(this, NAME), key);
-      }
-    });
-    if (DESCRIPTORS) dP(C.prototype, 'size', {
-      get: function () {
-        return validate(this, NAME)[SIZE];
-      }
-    });
-    return C;
-  },
-  def: function (that, key, value) {
-    var entry = getEntry(that, key);
-    var prev, index;
-    // change existing entry
-    if (entry) {
-      entry.v = value;
-    // create new entry
-    } else {
-      that._l = entry = {
-        i: index = fastKey(key, true), // <- index
-        k: key,                        // <- key
-        v: value,                      // <- value
-        p: prev = that._l,             // <- previous entry
-        n: undefined,                  // <- next entry
-        r: false                       // <- removed
-      };
-      if (!that._f) that._f = entry;
-      if (prev) prev.n = entry;
-      that[SIZE]++;
-      // add to index
-      if (index !== 'F') that._i[index] = entry;
-    } return that;
-  },
-  getEntry: getEntry,
-  setStrong: function (C, NAME, IS_MAP) {
-    // add .keys, .values, .entries, [@@iterator]
-    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
-    $iterDefine(C, NAME, function (iterated, kind) {
-      this._t = validate(iterated, NAME); // target
-      this._k = kind;                     // kind
-      this._l = undefined;                // previous
-    }, function () {
-      var that = this;
-      var kind = that._k;
-      var entry = that._l;
-      // revert to the last existing entry
-      while (entry && entry.r) entry = entry.p;
-      // get next entry
-      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
-        // or finish the iteration
-        that._t = undefined;
-        return step(1);
-      }
-      // return step by kind
-      if (kind == 'keys') return step(0, entry.k);
-      if (kind == 'values') return step(0, entry.v);
-      return step(0, [entry.k, entry.v]);
-    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
-    // add [@@species], 23.1.2.2, 23.2.2.2
-    setSpecies(NAME);
-  }
-};
-
-
-/***/ }),
-
-/***/ "XLbu":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__("8iia")('Map') });
-
-
 /***/ }),
 
 /***/ "YFqc":
@@ -363,12 +101,12 @@ module.exports = __webpack_require__("cTJO")
 
 /***/ }),
 
-/***/ "ZDA2":
+/***/ "a1gu":
 /***/ (function(module, exports, __webpack_require__) {
 
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
 
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
 
 function _possibleConstructorReturn(self, call) {
   if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -388,30 +126,26 @@ module.exports = _possibleConstructorReturn;
 "use strict";
 
 
-var _slicedToArray = __webpack_require__("8+Nu");
-
-var _classCallCheck = __webpack_require__("/HRN");
-
-var _createClass = __webpack_require__("WaGi");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _createClass = __webpack_require__("W8MJ");
 
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
 
-var _inherits = __webpack_require__("N9n2");
+var _getPrototypeOf = __webpack_require__("Nsbk");
 
-var _Map = __webpack_require__("LX0d");
+var _inherits = __webpack_require__("7W2i");
 
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
-var _interopRequireWildcard = __webpack_require__("5Uuq");
+var _interopRequireWildcard = __webpack_require__("284h");
 
 exports.__esModule = true;
 exports["default"] = void 0;
 
 var _react = _interopRequireWildcard(__webpack_require__("q1tI"));
 
-var _url = __webpack_require__("CxY0");
+var _url = __webpack_require__("QmWs");
 
 var _utils = __webpack_require__("g/15");
 
@@ -445,7 +179,7 @@ function formatUrl(url) {
 }
 
 var observer;
-var listeners = new _Map();
+var listeners = new Map();
 var IntersectionObserver = true ? window.IntersectionObserver : undefined;
 var prefetched = {};
 
@@ -590,10 +324,10 @@ var Link = /*#__PURE__*/function (_react$Component) {
     value: function handleRef(ref) {
       var _this2 = this;
 
-      var isPrefetched = prefetched[this.getPaths()[0]];
-
       if (this.p && IntersectionObserver && ref && ref.tagName) {
         this.cleanUpListeners();
+        var isPrefetched = prefetched[this.getPaths().join( // Join on an invalid URI character
+        '%')];
 
         if (!isPrefetched) {
           this.cleanUpListeners = listenToIntersections(ref, function () {
@@ -609,14 +343,20 @@ var Link = /*#__PURE__*/function (_react$Component) {
     value: function prefetch(options) {
       if (!this.p || false) return; // Prefetch the JSON page if asked (only in the client)
 
-      var _this$getPaths = this.getPaths(),
-          _this$getPaths2 = _slicedToArray(_this$getPaths, 2),
-          href = _this$getPaths2[0],
-          asPath = _this$getPaths2[1];
+      var paths = this.getPaths(); // We need to handle a prefetch error here since we may be
+      // loading with priority which can reject but we don't
+      // want to force navigation since this is only a prefetch
 
-      _router["default"].prefetch(href, asPath, options);
+      _router["default"].prefetch(paths[
+      /* href */
+      0], paths[
+      /* asPath */
+      1], options)["catch"](function (err) {
+        if (false) {}
+      });
 
-      prefetched[href] = true;
+      prefetched[paths.join( // Join on an invalid URI character
+      '%')] = true;
     }
   }, {
     key: "render",
@@ -688,42 +428,6 @@ if (false) { var exact, PropTypes, warn; }
 var _default = Link;
 exports["default"] = _default;
 
-/***/ }),
-
-/***/ "dVTT":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
-__webpack_require__("aPfg")('Map');
-
-
-/***/ }),
-
-/***/ "g33z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var MAP = 'Map';
-
-// 23.1 Map Objects
-module.exports = __webpack_require__("raTm")(MAP, function (get) {
-  return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
-  // 23.1.3.6 Map.prototype.get(key)
-  get: function get(key) {
-    var entry = strong.getEntry(validate(this, MAP), key);
-    return entry && entry.v;
-  },
-  // 23.1.3.9 Map.prototype.set(key, value)
-  set: function set(key, value) {
-    return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
-  }
-}, strong, true);
-
-
 /***/ })
 
-},[["V8Sf",0,2,1,3,4]]]);
\ No newline at end of file
+},[["V8Sf",0,1,2]]]);
\ No newline at end of file
Diff for index.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
 
 /***/ "RNiq":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for index.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[8],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
 
 /***/ "RNiq":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for hooks.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
 
 /***/ "+MDD":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
Diff for hooks.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[7],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
 
 /***/ "+MDD":
 /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -6,28 +6,13 @@
 "use strict";
 __webpack_require__.r(__webpack_exports__);
 
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/array/is-array.js
-var is_array = __webpack_require__("p0XB");
-var is_array_default = /*#__PURE__*/__webpack_require__.n(is_array);
-
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/arrayWithHoles.js
-
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
 function _arrayWithHoles(arr) {
-  if (is_array_default()(arr)) return arr;
+  if (Array.isArray(arr)) return arr;
 }
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/get-iterator.js
-var get_iterator = __webpack_require__("XXOK");
-var get_iterator_default = /*#__PURE__*/__webpack_require__.n(get_iterator);
-
-// EXTERNAL MODULE: ./node_modules/@babel/runtime-corejs2/core-js/is-iterable.js
-var is_iterable = __webpack_require__("yLu3");
-var is_iterable_default = /*#__PURE__*/__webpack_require__.n(is_iterable);
-
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/iterableToArrayLimit.js
-
-
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
 function _iterableToArrayLimit(arr, i) {
-  if (!(is_iterable_default()(Object(arr)) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
+  if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) {
     return;
   }
 
@@ -37,7 +22,7 @@ function _iterableToArrayLimit(arr, i) {
   var _e = undefined;
 
   try {
-    for (var _i = get_iterator_default()(arr), _s; !(_n = (_s = _i.next()).done); _n = true) {
+    for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
       _arr.push(_s.value);
 
       if (i && _arr.length === i) break;
@@ -55,11 +40,11 @@ function _iterableToArrayLimit(arr, i) {
 
   return _arr;
 }
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/nonIterableRest.js
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
 function _nonIterableRest() {
   throw new TypeError("Invalid attempt to destructure non-iterable instance");
 }
-// CONCATENATED MODULE: ./node_modules/@babel/runtime-corejs2/helpers/esm/slicedToArray.js
+// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
 
 
 
@@ -99,34 +84,11 @@ var __jsx = react_default.a.createElement;
 
 /***/ }),
 
-/***/ "Rp86":
+/***/ "Qetd":
 /***/ (function(module, exports, __webpack_require__) {
 
-__webpack_require__("bBy9");
-__webpack_require__("FlQf");
-module.exports = __webpack_require__("fXsU");
-
-
-/***/ }),
-
-/***/ "XXOK":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("Rp86");
-
-/***/ }),
-
-/***/ "fXsU":
-/***/ (function(module, exports, __webpack_require__) {
-
-var anObject = __webpack_require__("5K7Z");
-var get = __webpack_require__("fNZA");
-module.exports = __webpack_require__("WEpk").getIterator = function (it) {
-  var iterFn = get(it);
-  if (typeof iterFn != 'function') throw TypeError(it + ' is not iterable!');
-  return anObject(iterFn.call(it));
-};
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
 
 /***/ }),
 
@@ -143,4 +105,4 @@ module.exports = __webpack_require__("WEpk").getIterator = function (it) {
 
 /***/ })
 
-},[["g1vQ",0,2,1]]]);
\ No newline at end of file
+},[["g1vQ",0,1]]]);
\ No newline at end of file
Diff for _error.module.js
@@ -1,19 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
-
-/***/ "+iuc":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("B9jh");
-__webpack_require__("dL40");
-__webpack_require__("xvv9");
-__webpack_require__("V+O7");
-module.exports = __webpack_require__("WEpk").Set;
-
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
 
 /***/ "/0+H":
 /***/ (function(module, exports, __webpack_require__) {
@@ -21,15 +6,13 @@ module.exports = __webpack_require__("WEpk").Set;
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importDefault = this && this.__importDefault || function (mod) {
   return mod && mod.__esModule ? mod : {
     "default": mod
   };
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -63,7 +46,7 @@ exports.useAmp = useAmp;
 "use strict";
 
 
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.default = void 0;
@@ -177,17 +160,13 @@ var styles = {
 "use strict";
 
 
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importDefault = this && this.__importDefault || function (mod) {
   return mod && mod.__esModule ? mod : {
     "default": mod
   };
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -247,9 +226,9 @@ var METATYPES = ['name', 'httpEquiv', 'charSet', 'itemProp'];
 */
 
 function unique() {
-  var keys = new _Set();
-  var tags = new _Set();
-  var metaTypes = new _Set();
+  var keys = new Set();
+  var tags = new Set();
+  var metaTypes = new Set();
   var metaCategories = {};
   return h => {
     var unique = true;
@@ -289,7 +268,7 @@ function unique() {
             }
           } else {
             var category = h.props[metatype];
-            var categories = metaCategories[metatype] || new _Set();
+            var categories = metaCategories[metatype] || new Set();
 
             if (categories.has(category)) {
               unique = false;
@@ -344,44 +323,6 @@ function Head(_ref) {
 Head.rewind = Effect.rewind;
 exports.default = Head;
 
-/***/ }),
-
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
-  return function toJSON() {
-    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
-    return from(this);
-  };
-};
-
-
-/***/ }),
-
-/***/ "B9jh":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var SET = 'Set';
-
-// 23.2 Set Objects
-module.exports = __webpack_require__("raTm")(SET, function (get) {
-  return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
-  // 23.2.3.1 Set.prototype.add(value)
-  add: function add(value) {
-    return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);
-  }
-}, strong);
-
-
 /***/ }),
 
 /***/ "FYa8":
@@ -390,8 +331,6 @@ module.exports = __webpack_require__("raTm")(SET, function (get) {
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -402,7 +341,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -412,178 +351,24 @@ exports.HeadManagerContext = React.createContext(null);
 
 /***/ }),
 
-/***/ "RRc/":
-/***/ (function(module, exports, __webpack_require__) {
-
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
-  var result = [];
-  forOf(iter, false, result.push, result, ITERATOR);
-  return result;
-};
-
-
-/***/ }),
-
-/***/ "V+O7":
+/***/ "Qetd":
 /***/ (function(module, exports, __webpack_require__) {
 
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from
-__webpack_require__("aPfg")('Set');
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
 
 /***/ }),
 
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "TqRt":
+/***/ (function(module, exports) {
 
-"use strict";
-
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
-  // fast case
-  var index = fastKey(key);
-  var entry;
-  if (index !== 'F') return that._i[index];
-  // frozen object case
-  for (entry = that._f; entry; entry = entry.n) {
-    if (entry.k == key) return entry;
-  }
-};
-
-module.exports = {
-  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
-    var C = wrapper(function (that, iterable) {
-      anInstance(that, C, NAME, '_i');
-      that._t = NAME;         // collection type
-      that._i = create(null); // index
-      that._f = undefined;    // first entry
-      that._l = undefined;    // last entry
-      that[SIZE] = 0;         // size
-      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
-    });
-    redefineAll(C.prototype, {
-      // 23.1.3.1 Map.prototype.clear()
-      // 23.2.3.2 Set.prototype.clear()
-      clear: function clear() {
-        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
-          entry.r = true;
-          if (entry.p) entry.p = entry.p.n = undefined;
-          delete data[entry.i];
-        }
-        that._f = that._l = undefined;
-        that[SIZE] = 0;
-      },
-      // 23.1.3.3 Map.prototype.delete(key)
-      // 23.2.3.4 Set.prototype.delete(value)
-      'delete': function (key) {
-        var that = validate(this, NAME);
-        var entry = getEntry(that, key);
-        if (entry) {
-          var next = entry.n;
-          var prev = entry.p;
-          delete that._i[entry.i];
-          entry.r = true;
-          if (prev) prev.n = next;
-          if (next) next.p = prev;
-          if (that._f == entry) that._f = next;
-          if (that._l == entry) that._l = prev;
-          that[SIZE]--;
-        } return !!entry;
-      },
-      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
-      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
-      forEach: function forEach(callbackfn /* , that = undefined */) {
-        validate(this, NAME);
-        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
-        var entry;
-        while (entry = entry ? entry.n : this._f) {
-          f(entry.v, entry.k, this);
-          // revert to the last existing entry
-          while (entry && entry.r) entry = entry.p;
-        }
-      },
-      // 23.1.3.7 Map.prototype.has(key)
-      // 23.2.3.7 Set.prototype.has(value)
-      has: function has(key) {
-        return !!getEntry(validate(this, NAME), key);
-      }
-    });
-    if (DESCRIPTORS) dP(C.prototype, 'size', {
-      get: function () {
-        return validate(this, NAME)[SIZE];
-      }
-    });
-    return C;
-  },
-  def: function (that, key, value) {
-    var entry = getEntry(that, key);
-    var prev, index;
-    // change existing entry
-    if (entry) {
-      entry.v = value;
-    // create new entry
-    } else {
-      that._l = entry = {
-        i: index = fastKey(key, true), // <- index
-        k: key,                        // <- key
-        v: value,                      // <- value
-        p: prev = that._l,             // <- previous entry
-        n: undefined,                  // <- next entry
-        r: false                       // <- removed
-      };
-      if (!that._f) that._f = entry;
-      if (prev) prev.n = entry;
-      that[SIZE]++;
-      // add to index
-      if (index !== 'F') that._i[index] = entry;
-    } return that;
-  },
-  getEntry: getEntry,
-  setStrong: function (C, NAME, IS_MAP) {
-    // add .keys, .values, .entries, [@@iterator]
-    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
-    $iterDefine(C, NAME, function (iterated, kind) {
-      this._t = validate(iterated, NAME); // target
-      this._k = kind;                     // kind
-      this._l = undefined;                // previous
-    }, function () {
-      var that = this;
-      var kind = that._k;
-      var entry = that._l;
-      // revert to the last existing entry
-      while (entry && entry.r) entry = entry.p;
-      // get next entry
-      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
-        // or finish the iteration
-        that._t = undefined;
-        return step(1);
-      }
-      // return step by kind
-      if (kind == 'keys') return step(0, entry.k);
-      if (kind == 'values') return step(0, entry.v);
-      return step(0, [entry.k, entry.v]);
-    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
-    // add [@@species], 23.1.2.2, 23.2.2.2
-    setSpecies(NAME);
-  }
-};
+function _interopRequireDefault(obj) {
+  return obj && obj.__esModule ? obj : {
+    "default": obj
+  };
+}
 
+module.exports = _interopRequireDefault;
 
 /***/ }),
 
@@ -593,11 +378,7 @@ module.exports = {
 "use strict";
 
 
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -606,7 +387,7 @@ var react_1 = __webpack_require__("q1tI");
 var isServer = false;
 
 exports.default = () => {
-  var mountedInstances = new _Set();
+  var mountedInstances = new Set();
   var state;
 
   function emitChange(component) {
@@ -656,17 +437,6 @@ exports.default = () => {
   };
 };
 
-/***/ }),
-
-/***/ "dL40":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set') });
-
-
 /***/ }),
 
 /***/ "lwAK":
@@ -675,8 +445,6 @@ $export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -687,7 +455,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -695,22 +463,6 @@ var React = __importStar(__webpack_require__("q1tI"));
 
 exports.AmpStateContext = React.createContext({});
 
-/***/ }),
-
-/***/ "ttDY":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+iuc");
-
-/***/ }),
-
-/***/ "xvv9":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of
-__webpack_require__("cHUd")('Set');
-
-
 /***/ })
 
-},[["04ac",0,1,2]]]);
\ No newline at end of file
+},[["04ac",0,1]]]);
\ No newline at end of file
Diff for _error.js
@@ -1,46 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[6],{
-
-/***/ "+iuc":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("wgeU");
-__webpack_require__("FlQf");
-__webpack_require__("bBy9");
-__webpack_require__("B9jh");
-__webpack_require__("dL40");
-__webpack_require__("xvv9");
-__webpack_require__("V+O7");
-module.exports = __webpack_require__("WEpk").Set;
-
-
-/***/ }),
-
-/***/ "+plK":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
-  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
-    return o.__proto__ || _Object$getPrototypeOf(o);
-  };
-  return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
 
 /***/ "/0+H":
 /***/ (function(module, exports, __webpack_require__) {
@@ -48,15 +6,13 @@ module.exports = _getPrototypeOf;
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importDefault = this && this.__importDefault || function (mod) {
   return mod && mod.__esModule ? mod : {
     "default": mod
   };
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -93,17 +49,17 @@ exports.useAmp = useAmp;
 "use strict";
 
 
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
 
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
 
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
 
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
 
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports["default"] = void 0;
@@ -220,24 +176,27 @@ var styles = {
 
 /***/ }),
 
-/***/ "0tVQ":
+/***/ "7W2i":
 /***/ (function(module, exports, __webpack_require__) {
 
-__webpack_require__("FlQf");
-__webpack_require__("VJsP");
-module.exports = __webpack_require__("WEpk").Array.from;
-
+var setPrototypeOf = __webpack_require__("SksO");
 
-/***/ }),
-
-/***/ "2PDY":
-/***/ (function(module, exports) {
+function _inherits(subClass, superClass) {
+  if (typeof superClass !== "function" && superClass !== null) {
+    throw new TypeError("Super expression must either be null or a function");
+  }
 
-function _nonIterableSpread() {
-  throw new TypeError("Invalid attempt to spread non-iterable instance");
+  subClass.prototype = Object.create(superClass && superClass.prototype, {
+    constructor: {
+      value: subClass,
+      writable: true,
+      configurable: true
+    }
+  });
+  if (superClass) setPrototypeOf(subClass, superClass);
 }
 
-module.exports = _nonIterableSpread;
+module.exports = _inherits;
 
 /***/ }),
 
@@ -247,17 +206,13 @@ module.exports = _nonIterableSpread;
 "use strict";
 
 
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importDefault = this && this.__importDefault || function (mod) {
   return mod && mod.__esModule ? mod : {
     "default": mod
   };
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -317,9 +272,9 @@ var METATYPES = ['name', 'httpEquiv', 'charSet', 'itemProp'];
 */
 
 function unique() {
-  var keys = new _Set();
-  var tags = new _Set();
-  var metaTypes = new _Set();
+  var keys = new Set();
+  var tags = new Set();
+  var metaTypes = new Set();
   var metaCategories = {};
   return function (h) {
     var unique = true;
@@ -359,7 +314,7 @@ function unique() {
             }
           } else {
             var category = h.props[metatype];
-            var categories = metaCategories[metatype] || new _Set();
+            var categories = metaCategories[metatype] || new Set();
 
             if (categories.has(category)) {
               unique = false;
@@ -418,64 +373,25 @@ exports["default"] = Head;
 
 /***/ }),
 
-/***/ "8iia":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var classof = __webpack_require__("QMMT");
-var from = __webpack_require__("RRc/");
-module.exports = function (NAME) {
-  return function toJSON() {
-    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
-    return from(this);
-  };
-};
-
-
-/***/ }),
-
-/***/ "ApPD":
-/***/ (function(module, exports, __webpack_require__) {
-
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
+/***/ "Bnag":
+/***/ (function(module, exports) {
 
-__webpack_require__("zn7N")('getPrototypeOf', function () {
-  return function getPrototypeOf(it) {
-    return $getPrototypeOf(toObject(it));
-  };
-});
+function _nonIterableSpread() {
+  throw new TypeError("Invalid attempt to spread non-iterable instance");
+}
 
+module.exports = _nonIterableSpread;
 
 /***/ }),
 
-/***/ "B9jh":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var strong = __webpack_require__("Wu5q");
-var validate = __webpack_require__("n3ko");
-var SET = 'Set';
-
-// 23.2 Set Objects
-module.exports = __webpack_require__("raTm")(SET, function (get) {
-  return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
-}, {
-  // 23.2.3.1 Set.prototype.add(value)
-  add: function add(value) {
-    return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);
-  }
-}, strong);
-
-
-/***/ }),
+/***/ "EbDI":
+/***/ (function(module, exports) {
 
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
+function _iterableToArray(iter) {
+  if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
+}
 
-module.exports = __webpack_require__("+plK");
+module.exports = _iterableToArray;
 
 /***/ }),
 
@@ -485,8 +401,6 @@ module.exports = __webpack_require__("+plK");
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -497,7 +411,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -507,100 +421,68 @@ exports.HeadManagerContext = React.createContext(null);
 
 /***/ }),
 
-/***/ "IP1Z":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
-
-var $defineProperty = __webpack_require__("2faE");
-var createDesc = __webpack_require__("rr1i");
-
-module.exports = function (object, index, value) {
-  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
-  else object[index] = value;
-};
-
-
-/***/ }),
-
-/***/ "K47E":
+/***/ "Ijbi":
 /***/ (function(module, exports) {
 
-function _assertThisInitialized(self) {
-  if (self === void 0) {
-    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
-  }
+function _arrayWithoutHoles(arr) {
+  if (Array.isArray(arr)) {
+    for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
+      arr2[i] = arr[i];
+    }
 
-  return self;
+    return arr2;
+  }
 }
 
-module.exports = _assertThisInitialized;
+module.exports = _arrayWithoutHoles;
 
 /***/ }),
 
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
-
-function _inherits(subClass, superClass) {
-  if (typeof superClass !== "function" && superClass !== null) {
-    throw new TypeError("Super expression must either be null or a function");
-  }
+/***/ "Nsbk":
+/***/ (function(module, exports) {
 
-  subClass.prototype = _Object$create(superClass && superClass.prototype, {
-    constructor: {
-      value: subClass,
-      writable: true,
-      configurable: true
-    }
-  });
-  if (superClass) setPrototypeOf(subClass, superClass);
+function _getPrototypeOf(o) {
+  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+    return o.__proto__ || Object.getPrototypeOf(o);
+  };
+  return _getPrototypeOf(o);
 }
 
-module.exports = _inherits;
+module.exports = _getPrototypeOf;
 
 /***/ }),
 
-/***/ "PQJW":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Array$from = __webpack_require__("d04V");
+/***/ "PJYZ":
+/***/ (function(module, exports) {
 
-var _isIterable = __webpack_require__("yLu3");
+function _assertThisInitialized(self) {
+  if (self === void 0) {
+    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
+  }
 
-function _iterableToArray(iter) {
-  if (_isIterable(Object(iter)) || Object.prototype.toString.call(iter) === "[object Arguments]") return _Array$from(iter);
+  return self;
 }
 
-module.exports = _iterableToArray;
+module.exports = _assertThisInitialized;
 
 /***/ }),
 
-/***/ "RRc/":
+/***/ "Qetd":
 /***/ (function(module, exports, __webpack_require__) {
 
-var forOf = __webpack_require__("oioR");
-
-module.exports = function (iter, ITERATOR) {
-  var result = [];
-  forOf(iter, false, result.push, result, ITERATOR);
-  return result;
-};
-
+"use strict";
+var assign=Object.assign.bind(Object);module.exports=assign;module.exports.default=module.exports;
 
 /***/ }),
 
-/***/ "TbGu":
+/***/ "RIqP":
 /***/ (function(module, exports, __webpack_require__) {
 
-var arrayWithoutHoles = __webpack_require__("fGSI");
+var arrayWithoutHoles = __webpack_require__("Ijbi");
 
-var iterableToArray = __webpack_require__("PQJW");
+var iterableToArray = __webpack_require__("EbDI");
 
-var nonIterableSpread = __webpack_require__("2PDY");
+var nonIterableSpread = __webpack_require__("Bnag");
 
 function _toConsumableArray(arr) {
   return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();
@@ -610,209 +492,55 @@ module.exports = _toConsumableArray;
 
 /***/ }),
 
-/***/ "V+O7":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "SksO":
+/***/ (function(module, exports) {
 
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.from
-__webpack_require__("aPfg")('Set');
+function _setPrototypeOf(o, p) {
+  module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
+    o.__proto__ = p;
+    return o;
+  };
 
+  return _setPrototypeOf(o, p);
+}
 
-/***/ }),
+module.exports = _setPrototypeOf;
 
-/***/ "VJsP":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ }),
 
-"use strict";
+/***/ "TqRt":
+/***/ (function(module, exports) {
 
-var ctx = __webpack_require__("2GTP");
-var $export = __webpack_require__("Y7ZC");
-var toObject = __webpack_require__("JB68");
-var call = __webpack_require__("sNwI");
-var isArrayIter = __webpack_require__("NwJ3");
-var toLength = __webpack_require__("tEej");
-var createProperty = __webpack_require__("IP1Z");
-var getIterFn = __webpack_require__("fNZA");
-
-$export($export.S + $export.F * !__webpack_require__("TuGD")(function (iter) { Array.from(iter); }), 'Array', {
-  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
-  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
-    var O = toObject(arrayLike);
-    var C = typeof this == 'function' ? this : Array;
-    var aLen = arguments.length;
-    var mapfn = aLen > 1 ? arguments[1] : undefined;
-    var mapping = mapfn !== undefined;
-    var index = 0;
-    var iterFn = getIterFn(O);
-    var length, result, step, iterator;
-    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
-    // if object isn't iterable or it's array with default iterator - use simple case
-    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
-      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
-        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
-      }
-    } else {
-      length = toLength(O.length);
-      for (result = new C(length); length > index; index++) {
-        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
-      }
-    }
-    result.length = index;
-    return result;
-  }
-});
+function _interopRequireDefault(obj) {
+  return obj && obj.__esModule ? obj : {
+    "default": obj
+  };
+}
 
+module.exports = _interopRequireDefault;
 
 /***/ }),
 
-/***/ "Wu5q":
-/***/ (function(module, exports, __webpack_require__) {
-
-"use strict";
+/***/ "W8MJ":
+/***/ (function(module, exports) {
 
-var dP = __webpack_require__("2faE").f;
-var create = __webpack_require__("oVml");
-var redefineAll = __webpack_require__("XJU/");
-var ctx = __webpack_require__("2GTP");
-var anInstance = __webpack_require__("EXMj");
-var forOf = __webpack_require__("oioR");
-var $iterDefine = __webpack_require__("MPFp");
-var step = __webpack_require__("UO39");
-var setSpecies = __webpack_require__("TJWN");
-var DESCRIPTORS = __webpack_require__("jmDH");
-var fastKey = __webpack_require__("6/1s").fastKey;
-var validate = __webpack_require__("n3ko");
-var SIZE = DESCRIPTORS ? '_s' : 'size';
-
-var getEntry = function (that, key) {
-  // fast case
-  var index = fastKey(key);
-  var entry;
-  if (index !== 'F') return that._i[index];
-  // frozen object case
-  for (entry = that._f; entry; entry = entry.n) {
-    if (entry.k == key) return entry;
+function _defineProperties(target, props) {
+  for (var i = 0; i < props.length; i++) {
+    var descriptor = props[i];
+    descriptor.enumerable = descriptor.enumerable || false;
+    descriptor.configurable = true;
+    if ("value" in descriptor) descriptor.writable = true;
+    Object.defineProperty(target, descriptor.key, descriptor);
   }
-};
+}
 
-module.exports = {
-  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
-    var C = wrapper(function (that, iterable) {
-      anInstance(that, C, NAME, '_i');
-      that._t = NAME;         // collection type
-      that._i = create(null); // index
-      that._f = undefined;    // first entry
-      that._l = undefined;    // last entry
-      that[SIZE] = 0;         // size
-      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
-    });
-    redefineAll(C.prototype, {
-      // 23.1.3.1 Map.prototype.clear()
-      // 23.2.3.2 Set.prototype.clear()
-      clear: function clear() {
-        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
-          entry.r = true;
-          if (entry.p) entry.p = entry.p.n = undefined;
-          delete data[entry.i];
-        }
-        that._f = that._l = undefined;
-        that[SIZE] = 0;
-      },
-      // 23.1.3.3 Map.prototype.delete(key)
-      // 23.2.3.4 Set.prototype.delete(value)
-      'delete': function (key) {
-        var that = validate(this, NAME);
-        var entry = getEntry(that, key);
-        if (entry) {
-          var next = entry.n;
-          var prev = entry.p;
-          delete that._i[entry.i];
-          entry.r = true;
-          if (prev) prev.n = next;
-          if (next) next.p = prev;
-          if (that._f == entry) that._f = next;
-          if (that._l == entry) that._l = prev;
-          that[SIZE]--;
-        } return !!entry;
-      },
-      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
-      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
-      forEach: function forEach(callbackfn /* , that = undefined */) {
-        validate(this, NAME);
-        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
-        var entry;
-        while (entry = entry ? entry.n : this._f) {
-          f(entry.v, entry.k, this);
-          // revert to the last existing entry
-          while (entry && entry.r) entry = entry.p;
-        }
-      },
-      // 23.1.3.7 Map.prototype.has(key)
-      // 23.2.3.7 Set.prototype.has(value)
-      has: function has(key) {
-        return !!getEntry(validate(this, NAME), key);
-      }
-    });
-    if (DESCRIPTORS) dP(C.prototype, 'size', {
-      get: function () {
-        return validate(this, NAME)[SIZE];
-      }
-    });
-    return C;
-  },
-  def: function (that, key, value) {
-    var entry = getEntry(that, key);
-    var prev, index;
-    // change existing entry
-    if (entry) {
-      entry.v = value;
-    // create new entry
-    } else {
-      that._l = entry = {
-        i: index = fastKey(key, true), // <- index
-        k: key,                        // <- key
-        v: value,                      // <- value
-        p: prev = that._l,             // <- previous entry
-        n: undefined,                  // <- next entry
-        r: false                       // <- removed
-      };
-      if (!that._f) that._f = entry;
-      if (prev) prev.n = entry;
-      that[SIZE]++;
-      // add to index
-      if (index !== 'F') that._i[index] = entry;
-    } return that;
-  },
-  getEntry: getEntry,
-  setStrong: function (C, NAME, IS_MAP) {
-    // add .keys, .values, .entries, [@@iterator]
-    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
-    $iterDefine(C, NAME, function (iterated, kind) {
-      this._t = validate(iterated, NAME); // target
-      this._k = kind;                     // kind
-      this._l = undefined;                // previous
-    }, function () {
-      var that = this;
-      var kind = that._k;
-      var entry = that._l;
-      // revert to the last existing entry
-      while (entry && entry.r) entry = entry.p;
-      // get next entry
-      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
-        // or finish the iteration
-        that._t = undefined;
-        return step(1);
-      }
-      // return step by kind
-      if (kind == 'keys') return step(0, entry.k);
-      if (kind == 'values') return step(0, entry.v);
-      return step(0, [entry.k, entry.v]);
-    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);
-
-    // add [@@species], 23.1.2.2, 23.2.2.2
-    setSpecies(NAME);
-  }
-};
+function _createClass(Constructor, protoProps, staticProps) {
+  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
+  if (staticProps) _defineProperties(Constructor, staticProps);
+  return Constructor;
+}
 
+module.exports = _createClass;
 
 /***/ }),
 
@@ -822,25 +550,21 @@ module.exports = {
 "use strict";
 
 
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
 
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
 
-var _assertThisInitialized = __webpack_require__("K47E");
+var _assertThisInitialized = __webpack_require__("PJYZ");
 
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
 
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
 
-var _toConsumableArray = __webpack_require__("TbGu");
+var _toConsumableArray = __webpack_require__("RIqP");
 
-var _Set = __webpack_require__("ttDY");
-
-var _Object$defineProperty = __webpack_require__("hfKm");
-
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -849,7 +573,7 @@ var react_1 = __webpack_require__("q1tI");
 var isServer = false;
 
 exports["default"] = function () {
-  var mountedInstances = new _Set();
+  var mountedInstances = new Set();
   var state;
 
   function emitChange(component) {
@@ -920,12 +644,12 @@ exports["default"] = function () {
 
 /***/ }),
 
-/***/ "ZDA2":
+/***/ "a1gu":
 /***/ (function(module, exports, __webpack_require__) {
 
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
 
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
 
 function _possibleConstructorReturn(self, call) {
   if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -939,40 +663,26 @@ module.exports = _possibleConstructorReturn;
 
 /***/ }),
 
-/***/ "d04V":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("0tVQ");
-
-/***/ }),
-
-/***/ "dL40":
-/***/ (function(module, exports, __webpack_require__) {
-
-// https://github.com/DavidBruant/Map-Set.prototype.toJSON
-var $export = __webpack_require__("Y7ZC");
-
-$export($export.P + $export.R, 'Set', { toJSON: __webpack_require__("8iia")('Set') });
-
-
-/***/ }),
-
-/***/ "fGSI":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Array$isArray = __webpack_require__("p0XB");
-
-function _arrayWithoutHoles(arr) {
-  if (_Array$isArray(arr)) {
-    for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
-      arr2[i] = arr[i];
-    }
+/***/ "cDf5":
+/***/ (function(module, exports) {
 
-    return arr2;
+function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
+
+function _typeof(obj) {
+  if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
+    module.exports = _typeof = function _typeof(obj) {
+      return _typeof2(obj);
+    };
+  } else {
+    module.exports = _typeof = function _typeof(obj) {
+      return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
+    };
   }
+
+  return _typeof(obj);
 }
 
-module.exports = _arrayWithoutHoles;
+module.exports = _typeof;
 
 /***/ }),
 
@@ -982,8 +692,6 @@ module.exports = _arrayWithoutHoles;
 "use strict";
 
 
-var _Object$defineProperty = __webpack_require__("hfKm");
-
 var __importStar = this && this.__importStar || function (mod) {
   if (mod && mod.__esModule) return mod;
   var result = {};
@@ -994,7 +702,7 @@ var __importStar = this && this.__importStar || function (mod) {
   return result;
 };
 
-_Object$defineProperty(exports, "__esModule", {
+Object.defineProperty(exports, "__esModule", {
   value: true
 });
 
@@ -1004,20 +712,17 @@ exports.AmpStateContext = React.createContext({});
 
 /***/ }),
 
-/***/ "ttDY":
-/***/ (function(module, exports, __webpack_require__) {
-
-module.exports = __webpack_require__("+iuc");
-
-/***/ }),
-
-/***/ "xvv9":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "lwsE":
+/***/ (function(module, exports) {
 
-// https://tc39.github.io/proposal-setmap-offrom/#sec-set.of
-__webpack_require__("cHUd")('Set');
+function _classCallCheck(instance, Constructor) {
+  if (!(instance instanceof Constructor)) {
+    throw new TypeError("Cannot call a class as a function");
+  }
+}
 
+module.exports = _classCallCheck;
 
 /***/ })
 
-},[["04ac",0,2,1,3]]]);
\ No newline at end of file
+},[["04ac",0,1]]]);
\ No newline at end of file
Diff for _app.module.js
@@ -1,4 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[4],{
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[3],{
 
 /***/ 0:
 /***/ (function(module, exports, __webpack_require__) {
@@ -15,9 +15,7 @@ module.exports = __webpack_require__("nOHt");
 "use strict";
 
 
-var _Object$assign = __webpack_require__("Qetd");
-
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.Container = Container;
@@ -59,10 +57,11 @@ class App extends _react.default.Component {
       Component,
       pageProps
     } = this.props;
-    var url = createUrl(router);
-    return _react.default.createElement(Component, _Object$assign({}, pageProps, {
-      url: url
-    }));
+    return _react.default.createElement(Component, Object.assign({}, pageProps, // we don't add the legacy URL prop if it's using non-legacy
+    // methods like getStaticProps and getServerSideProps
+    !(Component.__N_SSG || Component.__N_SSP) ? {
+      url: createUrl(router)
+    } : {}));
   }
 
 }
@@ -146,4 +145,4 @@ function createUrl(router) {
 
 /***/ })
 
-},[[0,0,1,2,3]]]);
\ No newline at end of file
+},[[0,0,1,2]]]);
\ No newline at end of file
Diff for _app.js
@@ -1,31 +1,4 @@
-(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[5],{
-
-/***/ "+plK":
-/***/ (function(module, exports, __webpack_require__) {
-
-__webpack_require__("ApPD");
-module.exports = __webpack_require__("WEpk").Object.getPrototypeOf;
-
-
-/***/ }),
-
-/***/ "/+P4":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$getPrototypeOf = __webpack_require__("Bhuq");
-
-var _Object$setPrototypeOf = __webpack_require__("TRZx");
-
-function _getPrototypeOf(o) {
-  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
-    return o.__proto__ || _Object$getPrototypeOf(o);
-  };
-  return _getPrototypeOf(o);
-}
-
-module.exports = _getPrototypeOf;
-
-/***/ }),
+(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[3],{
 
 /***/ 0:
 /***/ (function(module, exports, __webpack_require__) {
@@ -36,19 +9,27 @@ module.exports = __webpack_require__("nOHt");
 
 /***/ }),
 
-/***/ "ApPD":
+/***/ "7W2i":
 /***/ (function(module, exports, __webpack_require__) {
 
-// 19.1.2.9 Object.getPrototypeOf(O)
-var toObject = __webpack_require__("JB68");
-var $getPrototypeOf = __webpack_require__("U+KD");
+var setPrototypeOf = __webpack_require__("SksO");
 
-__webpack_require__("zn7N")('getPrototypeOf', function () {
-  return function getPrototypeOf(it) {
-    return $getPrototypeOf(toObject(it));
-  };
-});
+function _inherits(subClass, superClass) {
+  if (typeof superClass !== "function" && superClass !== null) {
+    throw new TypeError("Super expression must either be null or a function");
+  }
 
+  subClass.prototype = Object.create(superClass && superClass.prototype, {
+    constructor: {
+      value: subClass,
+      writable: true,
+      configurable: true
+    }
+  });
+  if (superClass) setPrototypeOf(subClass, superClass);
+}
+
+module.exports = _inherits;
 
 /***/ }),
 
@@ -58,21 +39,19 @@ __webpack_require__("zn7N")('getPrototypeOf', function () {
 "use strict";
 
 
-var _Object$assign = __webpack_require__("Qetd");
-
-var _classCallCheck = __webpack_require__("/HRN");
+var _classCallCheck = __webpack_require__("lwsE");
 
-var _createClass = __webpack_require__("WaGi");
+var _createClass = __webpack_require__("W8MJ");
 
-var _possibleConstructorReturn = __webpack_require__("ZDA2");
+var _possibleConstructorReturn = __webpack_require__("a1gu");
 
-var _getPrototypeOf = __webpack_require__("/+P4");
+var _getPrototypeOf = __webpack_require__("Nsbk");
 
-var _inherits = __webpack_require__("N9n2");
+var _inherits = __webpack_require__("7W2i");
 
-var _regeneratorRuntime = __webpack_require__("ln6h");
+var _regeneratorRuntime = __webpack_require__("o0o1");
 
-var _interopRequireDefault = __webpack_require__("KI45");
+var _interopRequireDefault = __webpack_require__("TqRt");
 
 exports.__esModule = true;
 exports.Container = Container;
@@ -137,10 +116,11 @@ var App = /*#__PURE__*/function (_react$default$Compon) {
           router = _this$props.router,
           Component = _this$props.Component,
           pageProps = _this$props.pageProps;
-      var url = createUrl(router);
-      return _react["default"].createElement(Component, _Object$assign({}, pageProps, {
-        url: url
-      }));
+      return _react["default"].createElement(Component, Object.assign({}, pageProps, // we don't add the legacy URL prop if it's using non-legacy
+      // methods like getStaticProps and getServerSideProps
+      !(Component.__N_SSG || Component.__N_SSP) ? {
+        url: createUrl(router)
+      } : {}));
     }
   }]);
 
@@ -211,14 +191,21 @@ function createUrl(router) {
 
 /***/ }),
 
-/***/ "Bhuq":
-/***/ (function(module, exports, __webpack_require__) {
+/***/ "Nsbk":
+/***/ (function(module, exports) {
+
+function _getPrototypeOf(o) {
+  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
+    return o.__proto__ || Object.getPrototypeOf(o);
+  };
+  return _getPrototypeOf(o);
+}
 
-module.exports = __webpack_require__("+plK");
+module.exports = _getPrototypeOf;
 
 /***/ }),
 
-/***/ "K47E":
+/***/ "PJYZ":
 /***/ (function(module, exports) {
 
 function _assertThisInitialized(self) {
@@ -233,38 +220,12 @@ module.exports = _assertThisInitialized;
 
 /***/ }),
 
-/***/ "N9n2":
-/***/ (function(module, exports, __webpack_require__) {
-
-var _Object$create = __webpack_require__("SqZg");
-
-var setPrototypeOf = __webpack_require__("vjea");
-
-function _inherits(subClass, superClass) {
-  if (typeof superClass !== "function" && superClass !== null) {
-    throw new TypeError("Super expression must either be null or a function");
-  }
-
-  subClass.prototype = _Object$create(superClass && superClass.prototype, {
-    constructor: {
-      value: subClass,
-      writable: true,
-      configurable: true
-    }
-  });
-  if (superClass) setPrototypeOf(subClass, superClass);
-}
-
-module.exports = _inherits;
-
-/***/ }),
-
-/***/ "ZDA2":
+/***/ "a1gu":
 /***/ (function(module, exports, __webpack_require__) {
 
-var _typeof = __webpack_require__("iZP3");
+var _typeof = __webpack_require__("cDf5");
 
-var assertThisInitialized = __webpack_require__("K47E");
+var assertThisInitialized = __webpack_require__("PJYZ");
 
 function _possibleConstructorReturn(self, call) {
   if (call && (_typeof(call) === "object" || typeof call === "function")) {
@@ -291,4 +252,4 @@ module.exports = _possibleConstructorReturn;
 
 /***/ })
 
-},[[0,0,2,1,3,4]]]);
\ No newline at end of file
+},[[0,0,1,2]]]);
\ No newline at end of file
Diff for withRouter.html
@@ -1 +1 @@
-<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/withRouter.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div>I use withRouter</div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-355bc4b3077ea9d3fc7a.js"></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.c07ba8a3b0945b0f6315.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/commons.5d483f979b96e9afed5a.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.9a0caf742c992a927903.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/4952ddcd88e7185e66c9cf40e2d848b7e27f1574.6406830adfd759a39616.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.55037b74c10f17743f99.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.31c4da166fd02545837c.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-8c1dd1066d5ad1686781.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-0d2eba9cebfe2791bf98.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file
+<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"/><meta name="next-head-count" content="2"/><link rel="preload" href="/_next/static/BUILD_ID/pages/withRouter.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/BUILD_ID/pages/_app.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" as="script" crossorigin="anonymous"/><link rel="preload" href="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" as="script" crossorigin="anonymous"/></head><body><div id="__next"><div>I use withRouter</div></div><script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">{"props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"BUILD_ID","isFallback":false}</script><script crossorigin="anonymous" nomodule="">!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()}}();</script><script crossorigin="anonymous" nomodule="" src="/_next/static/runtime/polyfills-1ac1d7fc1d59311e5a47.js"></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/withRouter" src="/_next/static/BUILD_ID/pages/withRouter.module.js" crossorigin="anonymous" type="module"></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.js" crossorigin="anonymous" nomodule=""></script><script async="" data-next-page="/_app" src="/_next/static/BUILD_ID/pages/_app.module.js" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/webpack-4d739ac7b0d8f888ab18.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/webpack-d629b83a65f3e33fa99e.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/framework.5bb7f30f859f5f31359f.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.77e5ebfafaef1fc2d092.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/chunks/de003c3a9d308750aa009870a5926f9b18ab31f4.058e0f35b49912f4bbfb.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/runtime/main-e57d32d70f8de483fdd7.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/runtime/main-b3994a3e4c4cb42c6d19.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_buildManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_buildManifest.module.js" async="" crossorigin="anonymous" type="module"></script><script src="/_next/static/BUILD_ID/_ssgManifest.js" async="" crossorigin="anonymous" nomodule=""></script><script src="/_next/static/BUILD_ID/_ssgManifest.module.js" async="" crossorigin="anonymous" type="module"></script></body></html>
\ No newline at end of file

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
buildDuration 14s 11s -3s
nodeModulesSize 55.6 MB 56.3 MB ⚠️ +742 kB
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
main-HASH.js gzip 5.13 kB 5.76 kB ⚠️ +633 B
webpack-HASH.js gzip 746 B 746 B
4952ddcd88e7..54d3.js gzip 4.68 kB N/A N/A
commons.HASH.js gzip 4.06 kB N/A N/A
de003c3a9d30..31ff.js gzip 16.3 kB N/A N/A
framework.HASH.js gzip 39.1 kB 39.1 kB
de003c3a9d30..67cb.js gzip N/A 9.69 kB N/A
Overall change 70 kB 55.3 kB -14.7 kB
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
main-HASH.module.js gzip 4.13 kB 4.79 kB ⚠️ +657 B
webpack-HASH..dule.js gzip 746 B 746 B
4952ddcd88e7..dule.js gzip 5.56 kB N/A N/A
de003c3a9d30..dule.js gzip 15.1 kB N/A N/A
framework.HA..dule.js gzip 39.1 kB 39.1 kB ⚠️ +9 B
de003c3a9d30..dule.js gzip N/A 6.64 kB N/A
Overall change 64.7 kB 51.3 kB -13.4 kB
Legacy Client Bundles (polyfills) Overall increase ⚠️
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
polyfills-HASH.js gzip 4.76 kB 18.9 kB ⚠️ +14.1 kB
Overall change 4.76 kB 18.9 kB ⚠️ +14.1 kB
Client Pages Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_app.js gzip 1.15 kB 1.07 kB -74 B
_error.js gzip 4.07 kB 2.98 kB -1.09 kB
hooks.js gzip 779 B 664 B -115 B
index.js gzip 222 B 222 B
link.js gzip 2.95 kB 1.89 kB -1.06 kB
routerDirect.js gzip 283 B 279 B -4 B
withRouter.js gzip 282 B 278 B -4 B
Overall change 9.73 kB 7.38 kB -2.35 kB
Client Pages Modern Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_app.module.js gzip 576 B 589 B ⚠️ +13 B
_error.module.js gzip 3.06 kB 2.08 kB -977 B
hooks.module.js gzip 371 B 370 B -1 B
index.module.js gzip 212 B 212 B
link.module.js gzip 2.49 kB 1.48 kB -1.01 kB
routerDirect..dule.js gzip 273 B 271 B -2 B
withRouter.m..dule.js gzip 272 B 270 B -2 B
Overall change 7.25 kB 5.27 kB -1.98 kB
Client Build Manifests
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles Overall decrease ✓
zeit/next.js canary v9.2.2 zeit/next.js refs/tags/v9.2.3-canary.22 Change
_error.js gzip 289 kB 292 kB ⚠️ +2.72 kB
404.html gzip 1.45 kB 1.34 kB -104 B
hooks.html gzip 1.07 kB 975 B -100 B
index.js gzip 289 kB 292 kB ⚠️ +2.49 kB
link.js gzip 319 kB 299 kB -19.9 kB
routerDirect.js gzip 316 kB 298 kB -17.9 kB
withRouter.js gzip 317 kB 299 kB -17.7 kB
Overall change 1.53 MB 1.48 MB -50.5 kB

Please sign in to comment.