npm ข้อผิดพลาด! รหัส ELIFECYCLE


237

ฉันพยายามที่จะเรียนรู้การตอบสนองดังนั้นฉันจึงมีตัวอย่างโค้ดสำหรับแอป Fullstack และฉันพยายามที่จะทำให้มันทำงาน แต่หลังจากใช้งานการติดตั้ง npm ตามด้วยการเริ่มต้น npm ฉันได้รับข้อผิดพลาดต่อไปนี้:

npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "server"
npm ERR! node v7.5.0
npm ERR! npm  v4.3.0
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! voting_app@1.1.0 server: `live-server --public --    
host=localhost --port=3000 --middleware=./disable-browser-cache.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the voting_app@1.1.0 server script 'live-server --
public --host=localhost --port=3000 --middleware=./disable-browser- 
cache.js'.
npm ERR! Make sure you have the latest version of node.js and npm  
installed.
npm ERR! If you do, this is most likely a problem with the voting_app  
package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     live-server --public --host=localhost --port=3000 --  
middleware=./disable-browser-cache.js
npm ERR! You can get information on how to open an issue for this  
project with:
npm ERR!     npm bugs voting_app
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls voting_app
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/ItsMeMrLi/.npm/_logs/2017-02-17T22_48_03_581Z-
debug.log

npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
npm ERR! node v7.5.0
npm ERR! npm  v4.3.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! voting_app@1.1.0 start: `npm run server`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the voting_app@1.1.0 start script 'npm run server'.
npm ERR! Make sure you have the latest version of node.js and npm 
installed.
npm ERR! If you do, this is most likely a problem with the voting_app    
package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm run server

npm ERR! You can get information on how to open an issue for this   
project with:
npm ERR!     npm bugs voting_app
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls voting_app
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/ItsMeMrLi/.npm/_logs/2017-02-17T22_48_03_655Z-
debug.log

นี่คือ package.json ของฉัน:

{
  "name": "voting_app",
  "version": "1.1.0",
  "author": "Fullstack.io",
  "scripts": {
    "go": "open http://localhost:3000; npm run server",
    "e2e": "nightwatch",
    "test": "./node_modules/.bin/concurrently -k 'npm run server' 'npm  
run e2e'",
    "start": "npm run server",
    "server": "live-server public --host=localhost --port=3000 --  
middleware=./disable-browser-cache.js"
  },
  "private": true,
  "devDependencies": {
  "concurrently": "2.2.0",
  "live-server": "git://github.com/acco/live-server.git"
},
  "dependencies": {
  "semantic-ui": "git://github.com/Semantic-Org/Semantic-
  UI.git#27d58a01793b66318478fbc5b6676804d22d065d"
  }
}

และในที่สุดไฟล์บันทึกของฉัน:

0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'start' ]
2 info using npm@4.3.0
3 info using node@v7.5.0
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle voting_app@1.1.0~prestart: voting_app@1.1.0
6 silly lifecycle voting_app@1.1.0~prestart: no script for prestart, continuing
7 info lifecycle voting_app@1.1.0~start: voting_app@1.1.0
8 verbose lifecycle voting_app@1.1.0~start: unsafe-perm in lifecycle true
9 verbose lifecycle voting_app@1.1.0~start: PATH: /usr/local/lib/node_modules/npm/bin/node-gyp-bin:/Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app/node_modules/.bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/ItsMeMrLi/.rvm/gems/ruby-2.3.1/bin:/Users/ItsMeMrLi/.rvm/gems/ruby-2.3.1@global/bin:/Users/ItsMeMrLi/.rvm/rubies/ruby-2.3.1/bin:/Users/ItsMeMrLi/.cargo/bin:/usr/local/Cellar/smlnj/110.74/libexec/bin:/usr/local/bin:/Users/ItsMeMrLi/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Postgres.app/Contents/Versions/latest/bin:/Downloads/geckodriver:/usr/local/bin:/Users/ItsMeMrLi/.rvm/bin
10 verbose lifecycle voting_app@1.1.0~start: CWD: /Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app
11 silly lifecycle voting_app@1.1.0~start: Args: [ '-c', 'npm run server' ]
12 silly lifecycle voting_app@1.1.0~start: Returned: code: 1  signal: null
13 info lifecycle voting_app@1.1.0~start: Failed to exec start script
14 verbose stack Error: voting_app@1.1.0 start: `npm run server`
14 verbose stack Exit status 1
14 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:279:16)
14 verbose stack     at emitTwo (events.js:106:13)
14 verbose stack     at EventEmitter.emit (events.js:192:7)
14 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:40:14)
14 verbose stack     at emitTwo (events.js:106:13)
14 verbose stack     at ChildProcess.emit (events.js:192:7)
14 verbose stack     at maybeClose (internal/child_process.js:890:16)
14 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
15 verbose pkgid voting_app@1.1.0
16 verbose cwd /Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app
17 error Darwin 16.4.0
18 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
19 error node v7.5.0
20 error npm  v4.3.0
21 error code ELIFECYCLE
22 error errno 1
23 error voting_app@1.1.0 start: `npm run server`
23 error Exit status 1
24 error Failed at the voting_app@1.1.0 start script 'npm run server'.
24 error Make sure you have the latest version of node.js and npm installed.
24 error If you do, this is most likely a problem with the voting_app package,
24 error not with npm itself.
24 error Tell the author that this fails on your system:
24 error     npm run server
24 error You can get information on how to open an issue for this project with:
24 error     npm bugs voting_app
24 error Or if that isn't available, you can get their info via:
24 error     npm owner ls voting_app
24 error There is likely additional logging output above.
25 verbose exit [ 1, true ]

ขอบคุณโปรแกรมเมอร์ที่ยอดเยี่ยมทุกท่าน


1
ตรวจสอบให้แน่ใจว่าคุณมีพื้นที่เหลือบนไดรฟ์
Mircea

คำตอบ:


257

ขั้นตอนที่ 1: $ npm cache clean --force

ขั้นตอนที่ 2: ลบnode_modulesตาม$ rm -rf node_modules package-lock.jsonโฟลเดอร์หรือลบมันด้วยตนเองโดยไปที่ไดเรกทอรีและคลิกขวา> ลบ / ย้ายไปที่ถังขยะ นอกจากนี้ให้ลบไฟล์package-lock.jsonด้วย

ขั้นตอนที่ 3: npm install

เพื่อเริ่มต้นใหม่ $ npm start

สิ่งนี้ใช้ได้สำหรับฉัน หวังว่ามันจะเหมาะกับคุณเช่นกัน

ป.ล. : หากยังมีอยู่โปรดตรวจสอบข้อผิดพลาดที่แสดงเป็นสีแดงและดำเนินการตามนั้น ข้อผิดพลาดนี้มีเฉพาะกับสภาพแวดล้อม node.js Happy Coding !!


15
หัวขึ้นระวังเมื่อใช้ rm -rf
Suhayb

17
สำหรับขั้นตอนที่ 2 ใน Windows คุณสามารถทำrd /s /q "node_modules"ในcmdหรือrm -r "node_modules"ในPowerShell Source
Travis Heeter

ในกรณีของฉันการลบ node_modules ช่วย แต่โฟลเดอร์นี้ที่ระดับหนึ่งถึงโครงการ ทำความสะอาดแคช npm - แรงทำให้เกิดพฤติกรรมแปลก ๆ และทำให้เข้าใจผิด ก่อนที่ฉันจะลบไดเรกทอรีนี้ฉันยังลบที่เก็บในเครื่องสำหรับโปรเจ็กต์นี้และทำการโคลนอีกครั้งไม่แน่ใจว่ามันช่วยได้หรือไม่เนื่องจากการกระทำที่ฉันอธิบายแก้ไขสถานการณ์ในที่สุด
Lukasz

โปรดยอมรับคำตอบนี้เพื่อให้นักพัฒนาซอฟต์แวร์คนอื่นรู้คำตอบเช่นกัน
Prakhar Mittal

66

ทำความสะอาดCacheและNode_moduleไม่เพียงพอ ทำตามขั้นตอนนี้:

  • npm cache clean --force
  • ลบnode_modulesโฟลเดอร์
  • ลบpackage-lock.jsonไฟล์
  • npm install

มันใช้งานได้สำหรับฉันเช่นนี้


10
แก้ไขให้ฉันโดยใช้npm cache verifyแทนการลบแคชทั้งหมด
Jared

2
ฉันคิดว่าสิ่งที่สำคัญที่สุดคือลบไฟล์ package-lock.json ก่อนที่จะลองสิ่งนี้ฉันได้ลองหลายวิธีแล้วไม่สามารถแก้ไขข้อผิดพลาดได้
BobGao

9
ความจริงที่ว่าคุณสามารถแก้ไขสิ่งใด ๆ ได้โดยเพียงแค่ลบสิ่งประดิษฐ์สร้างอัตโนมัติคือทุกสิ่งที่ผิดกับจักรวาล JS ... หากไม่ใช่เพราะรายการสแต็คโอเวอร์โฟลว์นี้ฉันคงเป็น SOL ที่นี่เพราะไม่มีข้อผิดพลาด ในบันทึกการสร้าง!
pmarreck

Imp ส่วนใหญ่กำลังลบ package-lock.json
Yusuf

25

ก่อนอื่นฉันวิ่ง:

npm run clean

(แม้ว่ามันจะมาพร้อมกับข้อผิดพลาด)

จากนั้นฉันลบโฟลเดอร์node_modulesและรัน

npm install

ดูเหมือนว่าจะแก้ปัญหาได้แล้ว


19

ฉันแก้ไขข้อผิดพลาดนี้โดยใช้รหัสต่อไปนี้

npm cache clean

จากนั้นลบnode_modulesไดเรกทอรีออกจากโครงสร้างโครงการของฉันด้วยตนเองหรือด้วยคำสั่งดังต่อไปนี้

rm -rf node_modules

หลังจากนั้นการติดตั้งการอ้างอิงอีกครั้งโดยใช้

npm install

3
มันจะช่วยได้จริงๆถ้าคุณสามารถอธิบายรายละเอียดของผู้เริ่มต้นอย่างฉันได้ ความกะทัดรัดเป็นสิ่งที่ดี แต่ไม่ได้ช่วยเสมอไป ขอบคุณ.
imsrgadich

1
npm run cleanไม่มีคำสั่ง แต่คุณก็ยังทำงานอยู่ ฉันลบและติดตั้งใหม่อีกครั้ง .. และ booom ... มันเริ่มทำงาน .. ขอบคุณ
Tarunn

คำสั่งสุดท้าย "ติดตั้ง npm" ทำงานในกรณีที่คล้ายกันของฉัน
ged

17

เปลี่ยนการเข้าถึงในไดเร็กทอรี node_modules

chmod -R a+rwx ./node_modules 

1
@pacanga จากนั้นตั้งค่าการอนุญาตอย่างถูกต้องโปรดดูวิธีแก้ไขปัญหาอื่น ๆ
Smokie

12

ฉันได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกันในอินสแตนซ์ Ubuntu 16.04 กับ DigitalOcean ขณะที่ทำงานnpm run buildบนแอพที่ทำด้วยcreate-react-app( ลิงก์ ) ฉันอัพเกรดอินสแตนซ์จาก 512MB RAM เป็น 1GB ($ 5 / mo เป็น $ 10 / mo) จากนั้นสคริปต์ก็สามารถทำงานได้

ฉันโพสต์ที่นี่เพื่อชี้ให้เห็นว่าคุณอาจได้รับข้อผิดพลาดนี้เนื่องจากข้อ จำกัด ของทรัพยากรซึ่งฉันไม่เห็นอธิบายที่อื่นในหน้าปัญหาและคำตอบ SO และไม่มีอะไรที่ฉันเห็นในบันทึกข้อผิดพลาดชี้ให้ฉันในทิศทางนี้


คุณพูดถูก! ไม่มีสิ่งใดชี้ไปในทิศทางนี้เช่นกันและมันก็เป็นข้อผิดพลาดเนื่องจากข้อ จำกัด ด้านทรัพยากร ... Ty
Kubadev

ใช่ฉันได้รับปัญหาที่คล้ายกันที่รวบรวม Laravel-mix ในอินสแตนซ์ EC2 t3a.nano ดูเหมือนว่าจะไม่มีหน่วยความจำ แก้ไขในอินสแตนซ์ที่ใหญ่กว่า
จรจัด

8

ลบ node_modules และ package-lock.json จากนั้นรันการติดตั้ง npm มันทำงานได้อย่างสมบูรณ์ที่นี่ (เรียกใช้คำสั่งด้านล่างภายในรูทโครงการ):

rm -rf node_modules && rm ./package-lock.json && npm install


6

ประสบกับปัญหาตรงนี้

สำหรับฉันมันทำงานโดยdeleting package-lock.jsonและทำงานอีกครั้งnpm install

หากไม่สามารถลองแก้ไขได้

  1. ลบ package-lock.json
  2. แคช NPM สะอาด - กำลัง
  3. ติดตั้ง NPM
  4. เริ่มต้นนาที

6

แอปพลิเคชันตอบกลับ: สำหรับฉันปัญหาคือหลังจากทำงานแล้วnpm installมีข้อผิดพลาด

npm audit fixผมเคยไปกับข้อเสนอแนะของ การดำเนินการนี้ทำให้ฉันpackage.jsonและpackage-lock.json(เวอร์ชันแพคเกจและโครงสร้างที่เปลี่ยนแปลงเป็น. json) มีการเปลี่ยนแปลง

การแก้ไขคือ:

  • ลบ node_modules
  • วิ่ง npm install
  • npm start

หวังว่านี่จะเป็นประโยชน์สำหรับใครบางคน


5

วิธีนี้แก้ไขข้อผิดพลาดใน Win10

กรุณาติดตั้งทั่วโลก npm install -g node-pre-gyp


3

ฉันพยายามที่จะแก้ปัญหาด้วยวิธีนี้

rm -rf node_modules && rm ./package-lock.json && npm install

แต่สำหรับฉันมันไม่ทำงาน ฉันเพิ่งรีสตาร์ทเครื่องและทำงานได้อย่างสมบูรณ์
ผู้ใช้ Linux, เครื่อง HP


2

ลองติดตั้งแพ็คเกจ cli ใหม่อีกครั้ง ในกรณีของฉันฉันพยายามทดสอบ Vue.js บทช่วยสอนเมื่อฉันได้รับข้อความแสดงข้อผิดพลาดเดียวกัน สิ่งอื่น ๆ ที่ฉันทำคือรันคำสั่ง vue อีกครั้ง แต่คราวนี้ใช้ webpack-simple และนั่นคือสาเหตุที่ฉันไม่แน่ใจว่าใครจะแก้ไขปัญหาได้ แต่ตอนนี้มันใช้งานได้


2

ตรวจสอบความพร้อมใช้งานของพอร์ตเช่นกันหากคุณพบข้อความด้านล่าง:

Error: listen EACCES 127.0.0.1:8080

at Object._errnoException (util.js:999:13)
at _exceptionWithHostPort (util.js:1020:20)
at Server.setupListenHandle [as _listen2] (net.js:1362:19)
at listenInCluster (net.js:1420:12)
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1535:7)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:102:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1

สำหรับฉันมันเป็นพอร์ตที่ไม่สามารถใช้ได้ สิ่งที่ฉันต้องทำคือเปลี่ยนหมายเลขพอร์ตและใช้งานได้
Seun S. Lawal

2
npm install --unsafe-perm

ทำงานให้ฉัน ดูhttps://docs.npmjs.com/ --unsafe-permพารามิเตอร์ช่วยให้คุณสามารถเรียกใช้สคริปต์จาก instalation แพคเกจเป็นราก ปัญหาในกรณีของฉันคือการติดตั้งที่ล้มเหลวบางอย่าง


1

ตรวจสอบให้แน่ใจว่าใช้เวอร์ชัน npm ล่าสุดขณะติดตั้งแพ็กเกจโดยใช้ npm

ขณะติดตั้ง JavaScript ให้พูดถึง NodeJS เวอร์ชันล่าสุด ตัวอย่างเช่นขณะติดตั้ง JavaScript โดยใช้ devtools ให้ใช้โค้ดด้านล่าง:

devtools i --javascript nodejs:10.15.1

สิ่งนี้จะทำการดาวน์โหลดและติดตั้ง NodeJS ที่กล่าวถึง สิ่งนี้ใช้ได้สำหรับฉัน



1

สาเหตุที่ไม่คาดคิดอาจเกิดขึ้น: คุณใช้แอป React ที่มีคำเตือนบางอย่างที่ยังไม่รวมและโครงการล้มเหลวใน CI (เช่น GitLab CI / CD):

Treating warnings as errors because process.env.CI = true.
[ ... some warnings here ...]
npm ERR! code ELIFECYCLE
npm ERR! errno 1

การแก้ไข: แก้ไขคำเตือนของ Yo!

ทางเลือก: การใช้งาน CI=false npm run build

ดูปัญหา CRA # 3657

(ละอายใจที่จะยอมรับว่ามันเพิ่งเกิดขึ้นกับฉันไม่เห็นจนกว่าเพื่อนร่วมงานจะชี้ให้เห็นขอบคุณ Pascal!)




0

ในกรณีของฉันฉันได้ตรวจสอบสาขาที่แตกต่างกับห้องสมุดใหม่ในนั้น ฉันแก้ไขปัญหาของฉันด้วยการทำงานnpm installโดยไม่ทำอะไรเลย ฉันสับสนว่าทำไมฉันถึงได้รับELIFECYCLEข้อผิดพลาดเมื่อไม่ได้ใช้พอร์ต แต่ต้องเป็นเพราะฉันไม่ได้ติดตั้งห้องสมุด ดังนั้นคุณอาจไม่ต้องลบnode_modulesเพื่อแก้ไขปัญหา


0

ฉันใช้react-create-appใน Windows 10 ในวันที่ 2 กุมภาพันธ์ 2019 ด้วย NodeJS 11.9.0 และ npm 6.7.0 ล่าสุด (เมื่อคุณติดตั้ง NodeJS npmจะมีอยู่) ฉันคิดว่ากรณีของแพ็คเกจโหนดเสียหายไม่ค่อยได้รับอนุญาตสาเหตุหลัก

ในตอนแรกฉันใส่ไดเร็กตอรี่โปรเจ็กต์ที่ Desktop มันเป็นของC:\ไดรเวอร์ ฉันย้ายไปยังไดเรกทอรีอื่นของไดรเวอร์อื่น ดังนั้นฉันจะลบข้อกังวล "การอนุญาตไฟล์" ทำงานได้ดีและเรียบง่าย

cd /d D:\
mkdir temp20190202
npx create-react-app my-app
cd my-app
npm start

มันก็โอเคไม่ได้ใส่โฟลเดอร์โครงการในไดเรกทอรีของC:\(หรือไดรเวอร์อื่น ๆ ที่มีระบบปฏิบัติการ Windows)


0

ฉันมีปัญหาเดียวกันกับ Angular 7 เพิ่งผ่านขั้นตอนต่อไปนี้และแก้ไขข้อผิดพลาดได้

1) ลบโฟลเดอร์node_modulesและไฟล์package-lock.json ของคุณ

2) เรียกใช้npm installคำสั่ง

3) เรียกใช้npm audit fixคำสั่ง


0

ฉันกังวลเรื่องนี้มานานแล้ว สำหรับฉันรุ่นของnodeปัญหา

ของฉันnpmและnodeเป็น 6.1.0 และ 8.11.3 ตามลำดับ อย่างไรก็ตามฉันไม่ทราบว่าฉันได้อัปเดตnodeเป็น 12 โดยไม่ได้ตั้งใจ *. *

จากนั้นเริ่มติดตั้งสิ่ง GCX เมื่อใดก็ตามnpm iที่ไม่จำเป็นมาก่อน

ฉันลดระดับnodeเป็น 8 และใช้งานได้!


0

มันแปลก แต่ก็ใช้ได้สำหรับฉัน

ไปที่

แผงควบคุม -> ระบบและความปลอดภัย -> ระบบ -> ความปลอดภัยของระบบขั้นสูง -> ตัวแปรสภาพแวดล้อม

ในป๊อปอัพตัวแปรสภาพแวดล้อมคุณจะแก้ไขตัวแปรผู้ใช้ PATH และเพิ่มค่า"C: \ Windows \ System32"เป็นเซมิโคลอนที่คั่นด้วยค่าที่มีอยู่

ไม่ใช่อย่างน้อยรีสตาร์ทเครื่อง

ป้อนคำอธิบายรูปภาพที่นี่


0

อาจมีการใช้งานพอร์ตโดยแอปพลิเคชันอื่นลองรายชื่อและดูว่าเป็นแอปพลิเคชันของคุณหรือไม่:

lsof -i:8080

คุณสามารถฆ่ากระบวนการของพอร์ตนี้:

lsof -ti:8080 | xargs kill



0

สิ่งนี้แก้ไขฉันบน Ubuntu 16

1) อัพเดต npm และโหนดเป็นเวอร์ชันล่าสุด 2) รีสตาร์ทระบบ 3) ลบ node_modules และเริ่ม npm อีกครั้ง & npm เริ่มใหม่


0

สถานการณ์ของฉันถูกเรียกสำหรับการลบโฟลเดอร์ webpack ทั่วโลกจากนั้นลบโฟลเดอร์ node_modules, package-lock.json และเรียกใช้การติดตั้ง npm, เริ่ม npm


0

คำตอบอื่น ๆ ไม่ได้แก้ปัญหาสำหรับกรณีของฉัน สิ่งนี้ใช้ได้กับฉัน:

  • ลองลบงานบิลด์ของคุณ
  • สำหรับฉันนั่นหมายถึงการลบ general.dll.js

รายละเอียดเพิ่มเติม

  • เครื่อง dev Windows 10 64 บิต
  • NPM เริ่มเรียกใช้ webpack สร้างไฟล์บิลด์: general.dll.js
  • หากฉันได้รับข้อผิดพลาดของ ELIFECYCLE จาก "NPM Start" มักจะเกิดขึ้นหลังจากที่ฉันได้ดำเนินการ "NPM Start" สำเร็จแล้ว แต่หยุดแล้วเพียงเพื่อเริ่ม "NPM Start" อีกครั้ง
  • ฉันสังเกตเห็นว่า general.dll.js ปรากฏในบันทึกที่เข้าใจยากบางส่วน
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.