Skip to content

ncc Webpack build#7301

Merged
ijjk merged 3 commits into
vercel:canaryfrom
guybedford:ncc
May 16, 2019
Merged

ncc Webpack build#7301
ijjk merged 3 commits into
vercel:canaryfrom
guybedford:ncc

Conversation

@guybedford
Copy link
Copy Markdown
Contributor

@guybedford guybedford commented May 10, 2019

This reinstates the PR from #6347, along with some minor configuration changes to ensure the build of front works out.

I ended up working on quite a major refactoring of ncc to get a lot of the features to work out (better require support and conditional require.resolve expression asset emission), so this currently works with the branches at vercel/webpack-asset-relocator-loader#30 and vercel/ncc#378 both applied.

Those ncc branches will need a little more work and testing before they can land as a major, so will continue with that process so that this can be merged soon hopefully.

Closes: #6240
Closes: #6940

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 16.1s 15.5s -512ms
node_modules Size 40 MB 35.8 MB -4.16 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB ⚠️ +62 B
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.4 kB ⚠️ +21 B
Client _app Size 2.54 kB 2.6 kB ⚠️ +62 B
Client _app gzip Size 1.05 kB 1.07 kB ⚠️ +21 B
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB -482 B
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 16.9s 16.9s ⚠️ +56ms
node_modules Size 40 MB 35.8 MB -4.16 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB ⚠️ +62 B
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.4 kB ⚠️ +21 B
Client _app Size 2.54 kB 2.6 kB ⚠️ +62 B
Client _app gzip Size 1.05 kB 1.07 kB ⚠️ +21 B
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +92 B
Serverless pages/link gzip Size 88.7 kB 88.8 kB ⚠️ +22 B
Serverless pages/index Size 333 kB 333 kB ⚠️ +92 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB ⚠️ +24 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +92 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB ⚠️ +22 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +92 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.4 kB ⚠️ +23 B
Serverless pages/withRouter Size 333 kB 334 kB ⚠️ +92 B
Serverless pages/withRouter gzip Size 86.4 kB 86.5 kB ⚠️ +21 B
Build Dir Size 2.37 MB 2.37 MB -464 B

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 15.5s 15.1s -398ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 15.7s 16.2s ⚠️ +593ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB ⚠️ +1 B
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.11 kB 3.12 kB ⚠️ +1 B
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +2 B
Serverless pages/link gzip Size 88.7 kB 88.7 kB -1 B
Serverless pages/index Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB ⚠️ +1 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +2 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB -3 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.3 kB -1 B
Serverless pages/withRouter Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/withRouter gzip Size 86.4 kB 86.4 kB -1 B
Build Dir Size 2.37 MB 2.37 MB ⚠️ +10 B

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 14.3s 14.2s -130ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 15.6s 15.3s -244ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +2 B
Serverless pages/link gzip Size 88.7 kB 88.7 kB -1 B
Serverless pages/index Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB ⚠️ +1 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +2 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB -3 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.3 kB -3 B
Serverless pages/withRouter Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/withRouter gzip Size 86.4 kB 86.4 kB -2 B
Build Dir Size 2.37 MB 2.37 MB ⚠️ +10 B

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 14.9s 14.7s -219ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 16.4s 16.2s -125ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +2 B
Serverless pages/link gzip Size 88.7 kB 88.7 kB -3 B
Serverless pages/index Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB ⚠️ +1 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +2 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB -2 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.3 kB ⚠️ +2 B
Serverless pages/withRouter Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/withRouter gzip Size 86.4 kB 86.4 kB -2 B
Build Dir Size 2.37 MB 2.37 MB ⚠️ +10 B

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 15.6s 15.6s ⚠️ +38ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 16.8s 16.9s ⚠️ +57ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB ⚠️ +1 B
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.11 kB 3.12 kB ⚠️ +1 B
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +2 B
Serverless pages/link gzip Size 88.7 kB 88.7 kB
Serverless pages/index Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB -1 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +2 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB -2 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.3 kB -1 B
Serverless pages/withRouter Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/withRouter gzip Size 86.4 kB 86.4 kB
Build Dir Size 2.37 MB 2.37 MB ⚠️ +10 B

@github-actions
Copy link
Copy Markdown
Contributor

Stats from current PR

Click to expand stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 13.9s 13.3s -613ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.11 kB -1 B
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Base Rendered Size 1.34 kB 1.34 kB
Build Dir Size 801 kB 801 kB
Click to expand serverless stats
zeit/next.js canary guybedford/next.js ncc Change
Build Duration 15s 15s ⚠️ +46ms
node_modules Size 40 MB 39 MB -1.03 MB
Total Bundle (main, webpack, commons) Size 209 kB 209 kB
Total Bundle (main, webpack, commons) gzip Size 68.3 kB 68.3 kB
Client _app Size 2.54 kB 2.54 kB
Client _app gzip Size 1.05 kB 1.05 kB
Client _error Size 8.19 kB 8.19 kB
Client _error gzip Size 3.12 kB 3.12 kB
Client pages/index Size 288 B 288 B
Client pages/index gzip Size 222 B 222 B
Client pages/link Size 4.83 kB 4.83 kB
Client pages/link gzip Size 2.11 kB 2.11 kB
Client pages/routerDirect Size 411 B 411 B
Client pages/routerDirect gzip Size 296 B 296 B
Client pages/withRouter Size 393 B 393 B
Client pages/withRouter gzip Size 280 B 280 B
Client main Size 23.3 kB 23.3 kB
Client main gzip Size 7.63 kB 7.63 kB -1 B
Client commons Size 183 kB 183 kB
Client commons gzip Size 59.4 kB 59.4 kB ⚠️ +1 B
Client webpack Size 1.49 kB 1.49 kB
Client webpack gzip Size 769 B 769 B
Serverless pages/link Size 342 kB 342 kB ⚠️ +2 B
Serverless pages/link gzip Size 88.7 kB 88.7 kB
Serverless pages/index Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/index gzip Size 86.3 kB 86.3 kB ⚠️ +2 B
Serverless pages/_error Size 334 kB 334 kB ⚠️ +2 B
Serverless pages/_error gzip Size 86.1 kB 86.1 kB -2 B
Serverless pages/routerDirect Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/routerDirect gzip Size 86.3 kB 86.3 kB ⚠️ +1 B
Serverless pages/withRouter Size 333 kB 333 kB ⚠️ +2 B
Serverless pages/withRouter gzip Size 86.4 kB 86.4 kB -2 B
Build Dir Size 2.37 MB 2.37 MB ⚠️ +10 B

Copy link
Copy Markdown
Member

@ijjk ijjk left a comment

Choose a reason for hiding this comment

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

Awesome, thanks for looking at it!!

@ijjk ijjk merged this pull request into vercel:canary May 16, 2019
ijjk pushed a commit that referenced this pull request May 16, 2019
* add back ncc

* fixup ncc build
@timneutkens timneutkens changed the title ncc Webpack build [do not merge] ncc Webpack build May 17, 2019
timneutkens added a commit to timneutkens/next.js that referenced this pull request May 17, 2019
This reverts commit bd8f3c6.

# Conflicts:
#	packages/next/package.json
timneutkens added a commit that referenced this pull request May 17, 2019
* Revert "Add retrying to CircleCi and fixes for ncc'ed webpack (#7366)"

This reverts commit 5beb365.

* Revert "ncc Webpack build (#7301)"

This reverts commit bd8f3c6.

# Conflicts:
#	packages/next/package.json
@lock lock Bot locked as resolved and limited conversation to collaborators May 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bundle webpack 8.0.0 - dynamic import causing 'You may need an appropriate loader...' error

2 participants