Skip to content

Commit

Permalink
fix broken create-next-app tests (#63019)
Browse files Browse the repository at this point in the history
#62980 migrated `examples/basic-css` to use app router. A handful of our
create-next-app tests use this example when asserting the correct
project files are created, so we were asserting on a pages file existing
rather than an app dir page. This PR updates those tests.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2754
  • Loading branch information
ztanner committed Mar 7, 2024
1 parent 2598ec8 commit e5ac6ae
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 13 deletions.
6 changes: 5 additions & 1 deletion scripts/run-for-change.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,11 @@ const CHANGE_ITEM_GROUPS = {
'packages/next-env/README.md',
],
'deploy-examples': ['examples/image-component'],
cna: ['packages/create-next-app', 'test/integration/create-next-app'],
cna: [
'packages/create-next-app',
'test/integration/create-next-app',
'examples/basic-css',
],
'next-codemod': ['packages/next-codemod'],
'next-swc': [
'packages/next-swc',
Expand Down
12 changes: 8 additions & 4 deletions test/integration/create-next-app/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,8 @@ describe('create next app', () => {
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'node_modules/next',
],
Expand Down Expand Up @@ -196,7 +197,8 @@ describe('create next app', () => {
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'node_modules/next',
],
Expand Down Expand Up @@ -260,7 +262,8 @@ describe('create next app', () => {
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'node_modules/react',
],
Expand Down Expand Up @@ -293,7 +296,8 @@ describe('create next app', () => {
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'node_modules/react',
],
Expand Down
24 changes: 16 additions & 8 deletions test/integration/create-next-app/package-manager.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,8 @@ it('should use npm as the package manager on supplying --use-npm with example',
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'package-lock.json',
'node_modules/next',
Expand Down Expand Up @@ -168,7 +169,8 @@ it('should use Yarn as the package manager on supplying --use-yarn with example'
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'yarn.lock',
'node_modules/next',
Expand Down Expand Up @@ -246,7 +248,8 @@ it('should use pnpm as the package manager on supplying --use-pnpm with example'
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'pnpm-lock.yaml',
'node_modules/next',
Expand Down Expand Up @@ -320,7 +323,8 @@ it('should use Bun as the package manager on supplying --use-bun with example',
projectName,
files: [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'bun.lockb',
'node_modules/next',
Expand Down Expand Up @@ -379,7 +383,8 @@ it('should infer npm as the package manager with example', async () => {

const files = [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'package-lock.json',
'node_modules/next',
Expand Down Expand Up @@ -462,7 +467,8 @@ it('should infer yarn as the package manager with example', async () => {

const files = [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'yarn.lock',
'node_modules/next',
Expand Down Expand Up @@ -545,7 +551,8 @@ it('should infer pnpm as the package manager with example', async () => {

const files = [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'pnpm-lock.yaml',
'node_modules/next',
Expand Down Expand Up @@ -620,7 +627,8 @@ it('should infer Bun as the package manager with example', async () => {

const files = [
'package.json',
'pages/index.tsx',
'app/page.tsx',
'app/layout.tsx',
'.gitignore',
'bun.lockb',
'node_modules/next',
Expand Down

1 comment on commit e5ac6ae

@ijjk
Copy link
Member

@ijjk ijjk commented on e5ac6ae Mar 7, 2024

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 Build (Increase detected ⚠️)
General
vercel/next.js canary v14.1.2 vercel/next.js canary Change
buildDuration 14s 24.2s ⚠️ +10.3s
buildDurationCached 7.9s 6.3s N/A
nodeModulesSize 200 MB 198 MB N/A
nextStartRea..uration (ms) 426ms 429ms N/A
Client Bundles (main, webpack) Overall increase ⚠️
vercel/next.js canary v14.1.2 vercel/next.js canary Change
3f784ff6-HASH.js gzip 53.4 kB 53.7 kB ⚠️ +277 B
6433-HASH.js gzip 29.1 kB 30.5 kB ⚠️ +1.44 kB
7193.HASH.js gzip 181 B 181 B
8201-HASH.js gzip 5.03 kB 5.04 kB N/A
framework-HASH.js gzip 45.2 kB 45.2 kB N/A
main-app-HASH.js gzip 242 B 242 B
main-HASH.js gzip 31.9 kB 32.2 kB ⚠️ +249 B
webpack-HASH.js gzip 1.7 kB 1.68 kB N/A
Overall change 115 kB 117 kB ⚠️ +1.96 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary v14.1.2 vercel/next.js canary Change
polyfills-HASH.js gzip 31 kB 31 kB N/A
Overall change 0 B 0 B
Client Pages
vercel/next.js canary v14.1.2 vercel/next.js canary Change
_app-HASH.js gzip 196 B 197 B N/A
_error-HASH.js gzip 185 B 184 B N/A
amp-HASH.js gzip 506 B 505 B N/A
css-HASH.js gzip 323 B 325 B N/A
dynamic-HASH.js gzip 2.51 kB 2.5 kB N/A
edge-ssr-HASH.js gzip 258 B 258 B
head-HASH.js gzip 353 B 352 B N/A
hooks-HASH.js gzip 370 B 371 B N/A
image-HASH.js gzip 4.18 kB 4.21 kB N/A
index-HASH.js gzip 258 B 259 B N/A
link-HASH.js gzip 2.61 kB 2.67 kB N/A
routerDirect..HASH.js gzip 314 B 312 B N/A
script-HASH.js gzip 387 B 386 B N/A
withRouter-HASH.js gzip 309 B 309 B
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 673 B 673 B
Client Build Manifests
vercel/next.js canary v14.1.2 vercel/next.js canary Change
_buildManifest.js gzip 483 B 484 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary v14.1.2 vercel/next.js canary Change
index.html gzip 528 B 529 B N/A
link.html gzip 541 B 542 B N/A
withRouter.html gzip 524 B 524 B
Overall change 524 B 524 B
Edge SSR bundle Size Overall increase ⚠️
vercel/next.js canary v14.1.2 vercel/next.js canary Change
edge-ssr.js gzip 93.9 kB 95.1 kB ⚠️ +1.13 kB
page.js gzip 2.95 kB 3.07 kB ⚠️ +115 B
Overall change 96.9 kB 98.1 kB ⚠️ +1.24 kB
Middleware size Overall increase ⚠️
vercel/next.js canary v14.1.2 vercel/next.js canary Change
middleware-b..fest.js gzip 626 B 626 B
middleware-r..fest.js gzip 150 B 151 B N/A
middleware.js gzip 25.2 kB 25.5 kB ⚠️ +340 B
edge-runtime..pack.js gzip 839 B 839 B
Overall change 26.6 kB 27 kB ⚠️ +340 B
Next Runtimes Overall increase ⚠️
vercel/next.js canary v14.1.2 vercel/next.js canary Change
app-page-exp...dev.js gzip 170 kB 171 kB ⚠️ +1.15 kB
app-page-exp..prod.js gzip 95.8 kB 96.5 kB ⚠️ +737 B
app-page-tur..prod.js gzip 96.4 kB 98.2 kB ⚠️ +1.82 kB
app-page-tur..prod.js gzip 91 kB 92.7 kB ⚠️ +1.68 kB
app-page.run...dev.js gzip 142 kB 149 kB ⚠️ +6.89 kB
app-page.run..prod.js gzip 90.3 kB 91.2 kB ⚠️ +854 B
app-route-ex...dev.js gzip 24.2 kB 21.3 kB N/A
app-route-ex..prod.js gzip 16.8 kB 15 kB N/A
app-route-tu..prod.js gzip 16.8 kB 15 kB N/A
app-route-tu..prod.js gzip 16.4 kB 14.8 kB N/A
app-route.ru...dev.js gzip 23.6 kB 20.9 kB N/A
app-route.ru..prod.js gzip 16.4 kB 14.8 kB N/A
pages-api-tu..prod.js gzip 9.39 kB 9.52 kB ⚠️ +129 B
pages-api.ru...dev.js gzip 9.67 kB 9.8 kB ⚠️ +129 B
pages-api.ru..prod.js gzip 9.39 kB 9.52 kB ⚠️ +129 B
pages-turbo...prod.js gzip 22 kB 22.3 kB ⚠️ +323 B
pages.runtim...dev.js gzip 22.6 kB 22.9 kB ⚠️ +333 B
pages.runtim..prod.js gzip 22 kB 22.3 kB ⚠️ +323 B
server.runti..prod.js gzip 49.7 kB 50.5 kB ⚠️ +754 B
Overall change 830 kB 845 kB ⚠️ +15.2 kB
build cache Overall increase ⚠️
vercel/next.js canary v14.1.2 vercel/next.js canary Change
0.pack gzip 1.52 MB 1.56 MB ⚠️ +44.5 kB
index.pack gzip 106 kB 106 kB N/A
Overall change 1.52 MB 1.56 MB ⚠️ +44.5 kB
Diff details
Diff for page.js

Diff too large to display

Diff for middleware.js

Diff too large to display

Diff for edge-ssr.js

Diff too large to display

Diff for dynamic-HASH.js
@@ -1,7 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [2739],
   {
-    /***/ 8484: /***/ function (
+    /***/ 9816: /***/ function (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -9,7 +9,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/dynamic",
         function () {
-          return __webpack_require__(4112);
+          return __webpack_require__(8761);
         },
       ]);
       if (false) {
@@ -18,7 +18,7 @@
       /***/
     },
 
-    /***/ 9993: /***/ function (module, exports, __webpack_require__) {
+    /***/ 5896: /***/ function (module, exports, __webpack_require__) {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -33,20 +33,25 @@
           });
       }
       _export(exports, {
+        /**
+         * This function lets you dynamically import a component.
+         * It uses [React.lazy()](https://react.dev/reference/react/lazy) with [Suspense](https://react.dev/reference/react/Suspense) under the hood.
+         *
+         * Read more: [Next.js Docs: `next/dynamic`](https://nextjs.org/docs/app/building-your-application/optimizing/lazy-loading#nextdynamic)
+         */ default: function () {
+          return dynamic;
+        },
         noSSR: function () {
           return noSSR;
         },
-        default: function () {
-          return dynamic;
-        },
       });
-      const _interop_require_default = __webpack_require__(1351);
+      const _interop_require_default = __webpack_require__(2430);
       const _jsxruntime = __webpack_require__(1527);
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(959)
       );
       const _loadablesharedruntime = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(7182)
+        __webpack_require__(8030)
       );
       const isServerSide = "object" === "undefined";
       // Normalize loader to return the module as form { default: Component } for `React.lazy`.
@@ -147,7 +152,7 @@
       /***/
     },
 
-    /***/ 1115: /***/ function (
+    /***/ 3638: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -163,7 +168,7 @@
           return LoadableContext;
         },
       });
-      const _interop_require_default = __webpack_require__(1351);
+      const _interop_require_default = __webpack_require__(2430);
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(959)
       );
@@ -174,7 +179,7 @@
       /***/
     },
 
-    /***/ 7182: /***/ function (
+    /***/ 8030: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -212,11 +217,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
           return _default;
         },
       });
-      const _interop_require_default = __webpack_require__(1351);
+      const _interop_require_default = __webpack_require__(2430);
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(959)
       );
-      const _loadablecontextsharedruntime = __webpack_require__(1115);
+      const _loadablecontextsharedruntime = __webpack_require__(3638);
       function resolve(obj) {
         return obj && obj.default ? obj.default : obj;
       }
@@ -451,7 +456,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       /***/
     },
 
-    /***/ 4112: /***/ function (
+    /***/ 8761: /***/ function (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -467,7 +472,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1527);
       /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(5620);
+        __webpack_require__(4438);
       /* harmony import */ var next_dynamic__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_dynamic__WEBPACK_IMPORTED_MODULE_1__
@@ -476,11 +481,11 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       const DynamicHello = next_dynamic__WEBPACK_IMPORTED_MODULE_1___default()(
         () =>
           __webpack_require__
-            .e(/* import() */ 7193)
-            .then(__webpack_require__.bind(__webpack_require__, 7193)),
+            .e(/* import() */ 1682)
+            .then(__webpack_require__.bind(__webpack_require__, 1682)),
         {
           loadableGenerated: {
-            webpack: () => [/*require.resolve*/ 7193],
+            webpack: () => [/*require.resolve*/ 1682],
           },
         }
       );
@@ -507,12 +512,12 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       /***/
     },
 
-    /***/ 5620: /***/ function (
+    /***/ 4438: /***/ function (
       module,
       __unused_webpack_exports,
       __webpack_require__
     ) {
-      module.exports = __webpack_require__(9993);
+      module.exports = __webpack_require__(5896);
 
       /***/
     },
@@ -523,7 +528,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
       return __webpack_require__((__webpack_require__.s = moduleId));
     };
     /******/ __webpack_require__.O(0, [2888, 9774, 179], function () {
-      return __webpack_exec__(8484);
+      return __webpack_exec__(9816);
     });
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for image-HASH.js
@@ -1,7 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [8358],
   {
-    /***/ 1552: /***/ function (
+    /***/ 4070: /***/ function (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -9,7 +9,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/image",
         function () {
-          return __webpack_require__(8769);
+          return __webpack_require__(396);
         },
       ]);
       if (false) {
@@ -18,7 +18,7 @@
       /***/
     },
 
-    /***/ 359: /***/ function (module, exports, __webpack_require__) {
+    /***/ 8490: /***/ function (module, exports, __webpack_require__) {
       "use strict";
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
@@ -30,8 +30,8 @@
           return Image;
         },
       });
-      const _interop_require_default = __webpack_require__(1351);
-      const _interop_require_wildcard = __webpack_require__(5815);
+      const _interop_require_default = __webpack_require__(2430);
+      const _interop_require_wildcard = __webpack_require__(1778);
       const _jsxruntime = __webpack_require__(1527);
       const _react = /*#__PURE__*/ _interop_require_wildcard._(
         __webpack_require__(959)
@@ -40,15 +40,15 @@
         __webpack_require__(422)
       );
       const _head = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(4489)
+        __webpack_require__(2457)
       );
-      const _getimgprops = __webpack_require__(9997);
-      const _imageconfig = __webpack_require__(9747);
-      const _imageconfigcontextsharedruntime = __webpack_require__(9429);
-      const _warnonce = __webpack_require__(5761);
-      const _routercontextsharedruntime = __webpack_require__(2991);
+      const _getimgprops = __webpack_require__(7932);
+      const _imageconfig = __webpack_require__(5706);
+      const _imageconfigcontextsharedruntime = __webpack_require__(9483);
+      const _warnonce = __webpack_require__(9035);
+      const _routercontextsharedruntime = __webpack_require__(4829);
       const _imageloader = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(5076)
+        __webpack_require__(7240)
       );
       // This is replaced by webpack define plugin
       const configEnv = {
@@ -69,7 +69,8 @@
         onLoadRef,
         onLoadingCompleteRef,
         setBlurComplete,
-        unoptimized
+        unoptimized,
+        sizesInput
       ) {
         const src = img == null ? void 0 : img.src;
         if (!img || img["data-loaded-src"] === src) {
@@ -165,6 +166,7 @@
             onLoadingCompleteRef,
             setBlurComplete,
             setShowAltText,
+            sizesInput,
             onLoad,
             onError,
             ...rest
@@ -219,7 +221,8 @@
                     onLoadRef,
                     onLoadingCompleteRef,
                     setBlurComplete,
-                    unoptimized
+                    unoptimized,
+                    sizesInput
                   );
                 }
               },
@@ -231,6 +234,7 @@
                 setBlurComplete,
                 onError,
                 unoptimized,
+                sizesInput,
                 forwardedRef,
               ]
             ),
@@ -242,7 +246,8 @@
                 onLoadRef,
                 onLoadingCompleteRef,
                 setBlurComplete,
-                unoptimized
+                unoptimized,
+                sizesInput
               );
             },
             onError: (event) => {
@@ -346,6 +351,7 @@
                 onLoadingCompleteRef: onLoadingCompleteRef,
                 setBlurComplete: setBlurComplete,
                 setShowAltText: setShowAltText,
+                sizesInput: props.sizes,
                 ref: forwardedRef,
               }),
               imgMeta.priority
@@ -373,7 +379,7 @@
       /***/
     },
 
-    /***/ 9997: /***/ function (
+    /***/ 7932: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -389,9 +395,9 @@
           return getImgProps;
         },
       });
-      const _warnonce = __webpack_require__(5761);
-      const _imageblursvg = __webpack_require__(8543);
-      const _imageconfig = __webpack_require__(9747);
+      const _warnonce = __webpack_require__(9035);
+      const _imageblursvg = __webpack_require__(2642);
+      const _imageconfig = __webpack_require__(5706);
       const VALID_LOADING_VALUES =
         /* unused pure expression or super */ null && [
           "lazy",
@@ -760,7 +766,7 @@
       /***/
     },
 
-    /***/ 8543: /***/ function (__unused_webpack_module, exports) {
+    /***/ 2642: /***/ function (__unused_webpack_module, exports) {
       "use strict";
       /**
        * A shared function, used on both client and server, to generate a SVG blur placeholder.
@@ -815,7 +821,7 @@
       /***/
     },
 
-    /***/ 3103: /***/ function (
+    /***/ 503: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -834,20 +840,20 @@
           });
       }
       _export(exports, {
-        getImageProps: function () {
-          return getImageProps;
-        },
         default: function () {
           return _default;
         },
+        getImageProps: function () {
+          return getImageProps;
+        },
       });
-      const _interop_require_default = __webpack_require__(1351);
-      const _getimgprops = __webpack_require__(9997);
-      const _imagecomponent = __webpack_require__(359);
+      const _interop_require_default = __webpack_require__(2430);
+      const _getimgprops = __webpack_require__(7932);
+      const _imagecomponent = __webpack_require__(8490);
       const _imageloader = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(5076)
+        __webpack_require__(7240)
       );
-      const getImageProps = (imgProps) => {
+      function getImageProps(imgProps) {
         const { props } = (0, _getimgprops.getImgProps)(imgProps, {
           defaultLoader: _imageloader.default,
           // This is replaced by webpack define plugin
@@ -871,13 +877,13 @@
         return {
           props,
         };
-      };
+      }
       const _default = _imagecomponent.Image; //# sourceMappingURL=image-external.js.map
 
       /***/
     },
 
-    /***/ 5076: /***/ function (__unused_webpack_module, exports) {
+    /***/ 7240: /***/ function (__unused_webpack_module, exports) {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -912,7 +918,7 @@
       /***/
     },
 
-    /***/ 8769: /***/ function (
+    /***/ 396: /***/ function (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -933,8 +939,8 @@
 
       // EXTERNAL MODULE: ./node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.js
       var jsx_runtime = __webpack_require__(1527);
-      // EXTERNAL MODULE: ./node_modules/.pnpm/file+..+main-repo+packages+next+next-packed.tgz_react-dom@18.2.0_react@18.2.0/node_modules/next/image.js
-      var next_image = __webpack_require__(1577);
+      // EXTERNAL MODULE: ./node_modules/.pnpm/file+..+diff-repo+packages+next+next-packed.tgz_react-dom@18.2.0_react@18.2.0/node_modules/next/image.js
+      var next_image = __webpack_require__(73);
       var image_default = /*#__PURE__*/ __webpack_require__.n(next_image); // CONCATENATED MODULE: ./pages/nextjs.png
       /* harmony default export */ var nextjs = {
         src: "/_next/static/media/nextjs.cae0b805.png",
@@ -964,12 +970,12 @@
       /***/
     },
 
-    /***/ 1577: /***/ function (
+    /***/ 73: /***/ function (
       module,
       __unused_webpack_exports,
       __webpack_require__
     ) {
-      module.exports = __webpack_require__(3103);
+      module.exports = __webpack_require__(503);
 
       /***/
     },
@@ -980,7 +986,7 @@
       return __webpack_require__((__webpack_require__.s = moduleId));
     };
     /******/ __webpack_require__.O(0, [2888, 9774, 179], function () {
-      return __webpack_exec__(1552);
+      return __webpack_exec__(4070);
     });
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for link-HASH.js
@@ -1,7 +1,7 @@
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
   [4644],
   {
-    /***/ 1794: /***/ function (
+    /***/ 8959: /***/ function (
       __unused_webpack_module,
       __unused_webpack_exports,
       __webpack_require__
@@ -9,7 +9,7 @@
       (window.__NEXT_P = window.__NEXT_P || []).push([
         "/link",
         function () {
-          return __webpack_require__(7225);
+          return __webpack_require__(311);
         },
       ]);
       if (false) {
@@ -18,7 +18,7 @@
       /***/
     },
 
-    /***/ 2465: /***/ function (module, exports) {
+    /***/ 2145: /***/ function (module, exports) {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -33,29 +33,32 @@
           });
       }
       _export(exports, {
-        PrefetchKind: function () {
-          return PrefetchKind;
-        },
-        ACTION_REFRESH: function () {
-          return ACTION_REFRESH;
+        ACTION_FAST_REFRESH: function () {
+          return ACTION_FAST_REFRESH;
         },
         ACTION_NAVIGATE: function () {
           return ACTION_NAVIGATE;
         },
+        ACTION_PREFETCH: function () {
+          return ACTION_PREFETCH;
+        },
+        ACTION_REFRESH: function () {
+          return ACTION_REFRESH;
+        },
         ACTION_RESTORE: function () {
           return ACTION_RESTORE;
         },
+        ACTION_SERVER_ACTION: function () {
+          return ACTION_SERVER_ACTION;
+        },
         ACTION_SERVER_PATCH: function () {
           return ACTION_SERVER_PATCH;
         },
-        ACTION_PREFETCH: function () {
-          return ACTION_PREFETCH;
+        PrefetchCacheEntryStatus: function () {
+          return PrefetchCacheEntryStatus;
         },
-        ACTION_FAST_REFRESH: function () {
-          return ACTION_FAST_REFRESH;
-        },
-        ACTION_SERVER_ACTION: function () {
-          return ACTION_SERVER_ACTION;
+        PrefetchKind: function () {
+          return PrefetchKind;
         },
         isThenable: function () {
           return isThenable;
@@ -74,6 +77,13 @@
         PrefetchKind["FULL"] = "full";
         PrefetchKind["TEMPORARY"] = "temporary";
       })(PrefetchKind || (PrefetchKind = {}));
+      var PrefetchCacheEntryStatus;
+      (function (PrefetchCacheEntryStatus) {
+        PrefetchCacheEntryStatus["fresh"] = "fresh";
+        PrefetchCacheEntryStatus["reusable"] = "reusable";
+        PrefetchCacheEntryStatus["expired"] = "expired";
+        PrefetchCacheEntryStatus["stale"] = "stale";
+      })(PrefetchCacheEntryStatus || (PrefetchCacheEntryStatus = {}));
       function isThenable(value) {
         // TODO: We don't gain anything from this abstraction. It's unsound, and only
         // makes sense in the specific places where we use it. So it's better to keep
@@ -100,7 +110,7 @@
       /***/
     },
 
-    /***/ 8038: /***/ function (module, exports, __webpack_require__) {
+    /***/ 6923: /***/ function (module, exports, __webpack_require__) {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -112,7 +122,7 @@
           return getDomainLocale;
         },
       });
-      const _normalizetrailingslash = __webpack_require__(2093);
+      const _normalizetrailingslash = __webpack_require__(4251);
       const basePath =
         /* unused pure expression or super */ null && (false || "");
       function getDomainLocale(path, locale, locales, domainLocales) {
@@ -136,7 +146,7 @@
       /***/
     },
 
-    /***/ 7192: /***/ function (module, exports, __webpack_require__) {
+    /***/ 987: /***/ function (module, exports, __webpack_require__) {
       "use strict";
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
@@ -148,22 +158,22 @@
           return _default;
         },
       });
-      const _interop_require_default = __webpack_require__(1351);
+      const _interop_require_default = __webpack_require__(2430);
       const _jsxruntime = __webpack_require__(1527);
       const _react = /*#__PURE__*/ _interop_require_default._(
         __webpack_require__(959)
       );
-      const _resolvehref = __webpack_require__(9743);
-      const _islocalurl = __webpack_require__(7077);
-      const _formaturl = __webpack_require__(2206);
-      const _utils = __webpack_require__(766);
-      const _addlocale = __webpack_require__(9471);
-      const _routercontextsharedruntime = __webpack_require__(2991);
-      const _approutercontextsharedruntime = __webpack_require__(2231);
-      const _useintersection = __webpack_require__(8838);
-      const _getdomainlocale = __webpack_require__(8038);
-      const _addbasepath = __webpack_require__(480);
-      const _routerreducertypes = __webpack_require__(2465);
+      const _resolvehref = __webpack_require__(1419);
+      const _islocalurl = __webpack_require__(2623);
+      const _formaturl = __webpack_require__(7016);
+      const _utils = __webpack_require__(5943);
+      const _addlocale = __webpack_require__(2318);
+      const _routercontextsharedruntime = __webpack_require__(4829);
+      const _approutercontextsharedruntime = __webpack_require__(8676);
+      const _useintersection = __webpack_require__(8341);
+      const _getdomainlocale = __webpack_require__(6923);
+      const _addbasepath = __webpack_require__(639);
+      const _routerreducertypes = __webpack_require__(2145);
       const prefetched = new Set();
       function prefetch(router, href, as, options, appOptions, isAppRouter) {
         if (false) {
@@ -264,7 +274,12 @@
         return (0, _formaturl.formatUrl)(urlObjOrString);
       }
       /**
-       * React Component that enables client-side transitions between routes.
+       * A React component that extends the HTML `<a>` element to provide [prefetching](https://nextjs.org/docs/app/building-your-application/routing/linking-and-navigating#2-prefetching)
+       * and client-side navigation between routes.
+       *
+       * It is the primary way to navigate between routes in Next.js.
+       *
+       * Read more: [Next.js docs: `<Link>`](https://nextjs.org/docs/app/api-reference/components/link)
        */ const Link = /*#__PURE__*/ _react.default.forwardRef(
         function LinkComponent(props, forwardedRef) {
           let children;
@@ -479,39 +494,44 @@
                 isAppRouter
               );
             },
-            onTouchStart(e) {
-              if (!legacyBehavior && typeof onTouchStartProp === "function") {
-                onTouchStartProp(e);
-              }
-              if (
-                legacyBehavior &&
-                child.props &&
-                typeof child.props.onTouchStart === "function"
-              ) {
-                child.props.onTouchStart(e);
-              }
-              if (!router) {
-                return;
-              }
-              if (!prefetchEnabled && isAppRouter) {
-                return;
-              }
-              prefetch(
-                router,
-                href,
-                as,
-                {
-                  locale,
-                  priority: true,
-                  // @see {https://github.com/vercel/next.js/discussions/40268?sort=top#discussioncomment-3572642}
-                  bypassPrefetchedCheck: true,
+            onTouchStart: false
+              ? 0
+              : function onTouchStart(e) {
+                  if (
+                    !legacyBehavior &&
+                    typeof onTouchStartProp === "function"
+                  ) {
+                    onTouchStartProp(e);
+                  }
+                  if (
+                    legacyBehavior &&
+                    child.props &&
+                    typeof child.props.onTouchStart === "function"
+                  ) {
+                    child.props.onTouchStart(e);
+                  }
+                  if (!router) {
+                    return;
+                  }
+                  if (!prefetchEnabled && isAppRouter) {
+                    return;
+                  }
+                  prefetch(
+                    router,
+                    href,
+                    as,
+                    {
+                      locale,
+                      priority: true,
+                      // @see {https://github.com/vercel/next.js/discussions/40268?sort=top#discussioncomment-3572642}
+                      bypassPrefetchedCheck: true,
+                    },
+                    {
+                      kind: appPrefetchKind,
+                    },
+                    isAppRouter
+                  );
                 },
-                {
-                  kind: appPrefetchKind,
-                },
-                isAppRouter
-              );
-            },
           };
           // If child is an <a> tag and doesn't have a href attribute, or if the 'passHref' property is
           // defined, we specify the current 'href', so that repetition is not needed by the user.
@@ -574,7 +594,7 @@
       /***/
     },
 
-    /***/ 8838: /***/ function (module, exports, __webpack_require__) {
+    /***/ 8341: /***/ function (module, exports, __webpack_require__) {
       "use strict";
 
       Object.defineProperty(exports, "__esModule", {
@@ -587,7 +607,7 @@
         },
       });
       const _react = __webpack_require__(959);
-      const _requestidlecallback = __webpack_require__(9511);
+      const _requestidlecallback = __webpack_require__(1611);
       const hasIntersectionObserver =
         typeof IntersectionObserver === "function";
       const observers = new Map();
@@ -700,7 +720,7 @@
       /***/
     },
 
-    /***/ 7225: /***/ function (
+    /***/ 311: /***/ function (
       __unused_webpack_module,
       __webpack_exports__,
       __webpack_require__
@@ -716,7 +736,7 @@
       /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ =
         __webpack_require__(1527);
       /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ =
-        __webpack_require__(3639);
+        __webpack_require__(2075);
       /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default =
         /*#__PURE__*/ __webpack_require__.n(
           next_link__WEBPACK_IMPORTED_MODULE_1__
@@ -747,12 +767,12 @@
       /***/
     },
 
-    /***/ 3639: /***/ function (
+    /***/ 2075: /***/ function (
       module,
       __unused_webpack_exports,
       __webpack_require__
     ) {
-      module.exports = __webpack_require__(7192);
+      module.exports = __webpack_require__(987);
 
       /***/
     },
@@ -763,7 +783,7 @@
       return __webpack_require__((__webpack_require__.s = moduleId));
     };
     /******/ __webpack_require__.O(0, [2888, 9774, 179], function () {
-      return __webpack_exec__(1794);
+      return __webpack_exec__(8959);
     });
     /******/ var __webpack_exports__ = __webpack_require__.O();
     /******/ _N_E = __webpack_exports__;
Diff for 3f784ff6-HASH.js

Diff too large to display

Diff for 6433-HASH.js

Diff too large to display

Diff for 8201-HASH.js
@@ -1,8 +1,8 @@
 "use strict";
 (self["webpackChunk_N_E"] = self["webpackChunk_N_E"] || []).push([
-  [8201],
+  [2764],
   {
-    /***/ 8201: /***/ function (module, exports, __webpack_require__) {
+    /***/ 2764: /***/ function (module, exports, __webpack_require__) {
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
         value: true,
@@ -13,25 +13,25 @@
           return Image;
         },
       });
-      const _interop_require_default = __webpack_require__(9726);
-      const _interop_require_wildcard = __webpack_require__(8329);
-      const _jsxruntime = __webpack_require__(6435);
+      const _interop_require_default = __webpack_require__(9380);
+      const _interop_require_wildcard = __webpack_require__(2077);
+      const _jsxruntime = __webpack_require__(2260);
       const _react = /*#__PURE__*/ _interop_require_wildcard._(
-        __webpack_require__(8288)
+        __webpack_require__(4978)
       );
       const _reactdom = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(4364)
+        __webpack_require__(7)
       );
       const _head = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(9710)
+        __webpack_require__(5175)
       );
-      const _getimgprops = __webpack_require__(7489);
-      const _imageconfig = __webpack_require__(3358);
-      const _imageconfigcontextsharedruntime = __webpack_require__(4712);
-      const _warnonce = __webpack_require__(5226);
-      const _routercontextsharedruntime = __webpack_require__(9787);
+      const _getimgprops = __webpack_require__(7253);
+      const _imageconfig = __webpack_require__(6491);
+      const _imageconfigcontextsharedruntime = __webpack_require__(9382);
+      const _warnonce = __webpack_require__(3848);
+      const _routercontextsharedruntime = __webpack_require__(7897);
       const _imageloader = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(520)
+        __webpack_require__(3366)
       );
       // This is replaced by webpack define plugin
       const configEnv = {
@@ -53,7 +53,8 @@
         onLoadRef,
         onLoadingCompleteRef,
         setBlurComplete,
-        unoptimized
+        unoptimized,
+        sizesInput
       ) {
         const src = img == null ? void 0 : img.src;
         if (!img || img["data-loaded-src"] === src) {
@@ -149,6 +150,7 @@
             onLoadingCompleteRef,
             setBlurComplete,
             setShowAltText,
+            sizesInput,
             onLoad,
             onError,
             ...rest
@@ -203,7 +205,8 @@
                     onLoadRef,
                     onLoadingCompleteRef,
                     setBlurComplete,
-                    unoptimized
+                    unoptimized,
+                    sizesInput
                   );
                 }
               },
@@ -215,6 +218,7 @@
                 setBlurComplete,
                 onError,
                 unoptimized,
+                sizesInput,
                 forwardedRef,
               ]
             ),
@@ -226,7 +230,8 @@
                 onLoadRef,
                 onLoadingCompleteRef,
                 setBlurComplete,
-                unoptimized
+                unoptimized,
+                sizesInput
               );
             },
             onError: (event) => {
@@ -330,6 +335,7 @@
                 onLoadingCompleteRef: onLoadingCompleteRef,
                 setBlurComplete: setBlurComplete,
                 setShowAltText: setShowAltText,
+                sizesInput: props.sizes,
                 ref: forwardedRef,
               }),
               imgMeta.priority
@@ -357,7 +363,7 @@
       /***/
     },
 
-    /***/ 447: /***/ function (
+    /***/ 7121: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -371,9 +377,9 @@
           return AmpStateContext;
         },
       });
-      const _interop_require_default = __webpack_require__(9726);
+      const _interop_require_default = __webpack_require__(9380);
       const _react = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(8288)
+        __webpack_require__(4978)
       );
       const AmpStateContext = _react.default.createContext({});
       if (false) {
@@ -382,7 +388,7 @@
       /***/
     },
 
-    /***/ 7021: /***/ function (__unused_webpack_module, exports) {
+    /***/ 7960: /***/ function (__unused_webpack_module, exports) {
       Object.defineProperty(exports, "__esModule", {
         value: true,
       });
@@ -404,7 +410,7 @@
       /***/
     },
 
-    /***/ 7489: /***/ function (
+    /***/ 7253: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -418,9 +424,9 @@
           return getImgProps;
         },
       });
-      const _warnonce = __webpack_require__(5226);
-      const _imageblursvg = __webpack_require__(1355);
-      const _imageconfig = __webpack_require__(3358);
+      const _warnonce = __webpack_require__(3848);
+      const _imageblursvg = __webpack_require__(558);
+      const _imageconfig = __webpack_require__(6491);
       const VALID_LOADING_VALUES =
         /* unused pure expression or super */ null && [
           "lazy",
@@ -789,7 +795,7 @@
       /***/
     },
 
-    /***/ 9710: /***/ function (module, exports, __webpack_require__) {
+    /***/ 5175: /***/ function (module, exports, __webpack_require__) {
       /* __next_internal_client_entry_do_not_use__  cjs */
       Object.defineProperty(exports, "__esModule", {
         value: true,
@@ -803,26 +809,26 @@
           });
       }
       _export(exports, {
-        defaultHead: function () {
-          return defaultHead;
-        },
         default: function () {
           return _default;
         },
+        defaultHead: function () {
+          return defaultHead;
+        },
       });
-      const _interop_require_default = __webpack_require__(9726);
-      const _interop_require_wildcard = __webpack_require__(8329);
-      const _jsxruntime = __webpack_require__(6435);
+      const _interop_require_default = __webpack_require__(9380);
+      const _interop_require_wildcard = __webpack_require__(2077);
+      const _jsxruntime = __webpack_require__(2260);
       const _react = /*#__PURE__*/ _interop_require_wildcard._(
-        __webpack_require__(8288)
+        __webpack_require__(4978)
       );
       const _sideeffect = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(1444)
+        __webpack_require__(5894)
       );
-      const _ampcontextsharedruntime = __webpack_require__(447);
-      const _headmanagercontextsharedruntime = __webpack_require__(7332);
-      const _ampmode = __webpack_require__(7021);
-      const _warnonce = __webpack_require__(5226);
+      const _ampcontextsharedruntime = __webpack_require__(7121);
+      const _headmanagercontextsharedruntime = __webpack_require__(5237);
+      const _ampmode = __webpack_require__(7960);
+      const _warnonce = __webpack_require__(3848);
       function defaultHead(inAmpMode) {
         if (inAmpMode === void 0) inAmpMode = false;
         const head = [
@@ -998,7 +1004,7 @@
       /***/
     },
 
-    /***/ 1355: /***/ function (__unused_webpack_module, exports) {
+    /***/ 558: /***/ function (__unused_webpack_module, exports) {
       /**
        * A shared function, used on both client and server, to generate a SVG blur placeholder.
        */
@@ -1052,7 +1058,7 @@
       /***/
     },
 
-    /***/ 4712: /***/ function (
+    /***/ 9382: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -1066,11 +1072,11 @@
           return ImageConfigContext;
         },
       });
-      const _interop_require_default = __webpack_require__(9726);
+      const _interop_require_default = __webpack_require__(9380);
       const _react = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(8288)
+        __webpack_require__(4978)
       );
-      const _imageconfig = __webpack_require__(3358);
+      const _imageconfig = __webpack_require__(6491);
       const ImageConfigContext = _react.default.createContext(
         _imageconfig.imageConfigDefault
       );
@@ -1080,7 +1086,7 @@
       /***/
     },
 
-    /***/ 3358: /***/ function (__unused_webpack_module, exports) {
+    /***/ 6491: /***/ function (__unused_webpack_module, exports) {
       Object.defineProperty(exports, "__esModule", {
         value: true,
       });
@@ -1127,7 +1133,7 @@
       /***/
     },
 
-    /***/ 520: /***/ function (__unused_webpack_module, exports) {
+    /***/ 3366: /***/ function (__unused_webpack_module, exports) {
       Object.defineProperty(exports, "__esModule", {
         value: true,
       });
@@ -1160,7 +1166,7 @@
       /***/
     },
 
-    /***/ 9787: /***/ function (
+    /***/ 7897: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -1174,9 +1180,9 @@
           return RouterContext;
         },
       });
-      const _interop_require_default = __webpack_require__(9726);
+      const _interop_require_default = __webpack_require__(9380);
       const _react = /*#__PURE__*/ _interop_require_default._(
-        __webpack_require__(8288)
+        __webpack_require__(4978)
       );
       const RouterContext = _react.default.createContext(null);
       if (false) {
@@ -1185,7 +1191,7 @@
       /***/
     },
 
-    /***/ 1444: /***/ function (
+    /***/ 5894: /***/ function (
       __unused_webpack_module,
       exports,
       __webpack_require__
@@ -1199,7 +1205,7 @@
           return SideEffect;
         },
       });
-      const _react = __webpack_require__(8288);
+      const _react = __webpack_require__(4978);
       const isServer = typeof window === "undefined";
       const useClientOnlyLayoutEffect = isServer
         ? () => {}
Diff for main-HASH.js

Diff too large to display

Diff for polyfills-HASH.js

Diff too large to display

Diff for webpack-HASH.js
@@ -219,7 +219,7 @@
     /******/ __webpack_require__.u = function (chunkId) {
       /******/ // return url for filenames based on template
       /******/ return (
-        "static/chunks/" + chunkId + "." + "59b55e4cd1bb86ee" + ".js"
+        "static/chunks/" + chunkId + "." + "82f59716e81715f7" + ".js"
       );
       /******/
     };
@@ -228,10 +228,10 @@
   /******/
   /******/ /* webpack/runtime/get mini-css chunk filename */
   /******/ !(function () {
-    /******/ // This function allow to reference all chunks
+    /******/ // This function allow to reference async chunks
     /******/ __webpack_require__.miniCssF = function (chunkId) {
       /******/ // return url for filenames based on template
-      /******/ return "static/css/" + "ded6b86ab9cc0a1f" + ".css";
+      /******/ return undefined;
       /******/
     };
     /******/
@@ -282,6 +282,7 @@
           /******/
         }
         /******/ script.setAttribute("data-webpack", dataWebpackPrefix + key);
+        /******/
         /******/ script.src = __webpack_require__.tu(url);
         /******/
       }
Diff for app-page-exp..ntime.dev.js
failed to diff
Diff for app-page-exp..time.prod.js

Diff too large to display

Diff for app-page-tur..time.prod.js

Diff too large to display

Diff for app-page-tur..time.prod.js

Diff too large to display

Diff for app-page.runtime.dev.js
failed to diff
Diff for app-page.runtime.prod.js

Diff too large to display

Diff for app-route-ex..ntime.dev.js

Diff too large to display

Diff for app-route-ex..time.prod.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route-tu..time.prod.js

Diff too large to display

Diff for app-route.runtime.dev.js

Diff too large to display

Diff for app-route.ru..time.prod.js

Diff too large to display

Diff for pages-api-tu..time.prod.js

Diff too large to display

Diff for pages-api.runtime.dev.js

Diff too large to display

Diff for pages-api.ru..time.prod.js

Diff too large to display

Diff for pages-turbo...time.prod.js

Diff too large to display

Diff for pages.runtime.dev.js

Diff too large to display

Diff for pages.runtime.prod.js

Diff too large to display

Diff for server.runtime.prod.js

Diff too large to display

Please sign in to comment.