- ใตใณใใใใฏในใขใผใใไฝฟใใใชใใฐๅฎๅ จใซๆฌ็ช็ดใฎ่ชๅๅใๅฏ่ฝ
- ใใซใใใกใคใซ็ทจ้ใงใชใใกใฏใฟใชใณใฐใปๅๅคๆดใไธ็บใงๅฎไบ
- CI/CDใใคใใฉใคใณใซ็ตใฟ่พผใใฐใณใผใใฌใใฅใผใ่ชๅๅใงใใ
ๅๅใฎๅ ฅ้็ทจใงใฏใCodex CLIใฎใคใณในใใผใซใใๅบๆฌๆไฝใพใงใ่งฃ่ชฌใใพใใใไปๅใฏๅฎ่ทต็ทจใจใใฆใ็พๅ ดใงใใใซไฝฟใใใใฏใใใฏใๆทฑๆใใใพใใ
ใตใณใใใใฏในใฎ้ซๅบฆใชๆดป็จๆณใ่คๆฐใใกใคใซใฎไธๆฌ็ทจ้ใCI/CDใจใฎ้ฃๆบใใใใฆSES็พๅ ดใง็นใซๅฝน็ซใคใณใผใใฌใใฅใผ่ชๅๅใพใงใๅ ทไฝ็ใชใณใใณใไพใจใจใใซ็ดนไปใใพใใ

ใตใณใใใใฏในใขใผใใไฝฟใใใชใ
ๅ ฅ้็ทจใงใตใณใใใใฏในใฎๅบๆฌใฏ็่งฃใงใใใฏใใงใใใใใงใฏๅฎๅใงๅทฎใใคใใตใณใใใใฏในใฎๆดป็จใใฏใใใฏใ่งฃ่ชฌใใพใใ
full-autoใขใผใใฎๅฎ่ทต็ใชไฝฟใๆน
--full-autoใขใผใใฏใใตใณใใใใฏในๅ
ใงAIใ่ชๅพ็ใซใณใผใๅฎ่กใปไฟฎๆญฃใปใในใใ็นฐใ่ฟใใพใใไบบ้ใๆฏๅๆฟ่ชใใๅฟ
่ฆใใชใใใใๅคงใใชใฟในใฏใไปปใใใฎใซๆ้ฉใงใใ
codex --full-auto "src/้
ไธใฎTypeScriptใใกใคใซใESLintไฟฎๆญฃใใฆใใในใใ้ใใใจใ็ขบ่ชใใฆ"
ใใฎใณใใณใใ ใใงใCodex CLIใฏไปฅไธใ่ชๅใง่กใใพใใ
src/้ ไธใฎTypeScriptใใกใคใซใในใญใฃใณ- ESLintใซใผใซใซๅบใฅใใฆ่ชๅไฟฎๆญฃ
- ไฟฎๆญฃๅพใซใในใใๅฎ่ก
- ใในใๅคฑๆใใใใฐๅๅ ใๅๆใใฆๅไฟฎๆญฃ
- ๅ จใในใใ้ใใพใง็นฐใ่ฟใ
ใตใณใใใใฏในๅ ใงใฎๅฎ่กใชใฎใงใไธใไธAIใๆด่ตฐใใฆใใในใ็ฐๅขใซใฏไธๅๅฝฑ้ฟใใพใใใ็ตๆใ็ขบ่ชใใฆใใๆฟ่ชใใใฐOKใงใใ
ใตใณใใใใฏในใฎใซในใฟใใคใบ
Codex CLIใงใฏใตใณใใใใฏในใฎๆๅใใซในใฟใใคใบใงใใพใใใใญใธใงใฏใใซใผใใซcodex.md๏ผใพใใฏAGENTS.md๏ผใ้
็ฝฎใใใใจใงใAIใฎๅไฝใใใญใธใงใฏใใซๅใใใฆๅถๅพกใงใใพใใ
# codex.md
## ใใญใธใงใฏใใซใผใซ
- ใในใใใฌใผใ ใฏใผใฏ: vitest
- ใใใฑใผใธใใใผใธใฃ: pnpm
- ใณใผใใฃใณใฐ่ฆ็ด: src/ ้
ไธใฏๅณๅฏใชๅๅฎ็พฉใไฝฟใใใจ
- ใในใๅฎ่กใณใใณใ: pnpm test
- ๅคๆด็ฆๆญข: .env*, config/production.*
ใใฎ่จญๅฎใใกใคใซใซใใใAIใใใญใธใงใฏใใฎๆ่ใๆญฃ็ขบใซ็่งฃใใไธใงใณใผใใ็ๆใใพใใ็นใซSES็พๅ ดใง่คๆฐใใญใธใงใฏใใๆใๆใกใใๅ ดๅใใใญใธใงใฏใใใจใซcodex.mdใ็จๆใใฆใใใจๅใๆฟใใในใ ใผใบใงใใ
ใตใณใใใใฏในใงๅฎๅ จใซDBๆไฝใ่ฉฆใ
ใใผใฟใใผในใใคใฐใฌใผใทใงใณใฎๆค่จผใซใใตใณใใใใฏในใฏๆๅนใงใใ
codex --full-auto "Prismaในใญใผใใซuserใใผใใซใฎemail_verified ใซใฉใ ใ่ฟฝๅ ใใฆใใใคใฐใฌใผใทใงใณใใกใคใซใ็ๆใใฆ"
ใตใณใใใใฏในๅ ใงใใคใฐใฌใผใทใงใณใใกใคใซใ็ๆใป็ขบ่ชใใฆใใๆฌ็ช็ฐๅขใซ้ฉ็จใงใใใใใในใญใผใๅคๆดใฎใในใไบๅใซ้ฒใใพใใ
ใใซใใใกใคใซ็ทจ้ใใฏใใใฏ
Codex CLIใฎ็ไพกใฏใใญใธใงใฏใๅ จไฝใ็่งฃใใไธใงใฎไธๆฌ็ทจ้ใซใใใพใใๅไธใใกใคใซใฎไฟฎๆญฃใชใไปใฎใใผใซใงใใงใใพใใใไพๅญ้ขไฟใ่ทจใใ ๅคๆดใฏCodex CLIใๅพๆใจใใ้ ๅใงใใ
ๅๅฎ็พฉใฎๅคๆดใๅ จใใกใคใซใซๅๆ
codex exec "Userๅใฎidใใฃใผใซใใnumberใใstringใซๅคๆดใใฆใ้ข้ฃใใๅ
จใใกใคใซใไฟฎๆญฃใใฆ"
Codex CLIใฏไปฅไธใไธๆฌใงๅฆ็ใใพใใ
- ๅๅฎ็พฉใใกใคใซ๏ผ
types/user.ts๏ผใฎไฟฎๆญฃ - APIๅฑคใฎใใชใใผใทใงใณๆดๆฐ
- ใในใใฎใขใใฏใใผใฟไฟฎๆญฃ
- ใใญใณใใจใณใใฎใณใณใใผใใณใไฟฎๆญฃ
ๆไฝๆฅญใชใๆฐๆ้ใใใๅคๆดใๆฐๅใงๅฎไบใใพใใ
APIไปๆงๅคๆดใฎไธๆฌๅฏพๅฟ
codex exec "REST APIใฎใฌในใใณในๅฝขๅผใ { data: T, meta: { total: number } } ใซ็ตฑไธใใฆใๅ
จใจใณใใใคใณใใจใในใใไฟฎๆญฃใใฆ"
ใใซใใใกใคใซ็ทจ้ๅพใฏๅฟ
ใdiffใ็ขบ่ชใใฆใใ ใใใAIใไบๆใใชใใใกใคใซใๅคๆดใใฆใใๅฏ่ฝๆงใใใใพใใgit diff --statใงๅคๆดใใกใคใซไธ่ฆงใ็ขบ่ชใใ็ฟๆ
ฃใใคใใพใใใใ
ใคใณใใผใใในใฎไธๆฌๅคๆด
ใใญใธใงใฏใๆงๆใฎๅคๆดๆใซๅจๅใ็บๆฎใใพใใ
codex exec "src/utils/ ใ src/lib/utils/ ใซ็งปๅใใฆใๅ
จใใกใคใซใฎimportใในใๆดๆฐใใฆ"
ใใกใคใซ็งปๅใ ใใงใชใใimportๆใฎๆธใๆใใtsconfig.jsonใฎpaths่จญๅฎใพใงไพๅญ้ขไฟใ่ๆ ฎใใฆไธๆฌๆดๆฐใใฆใใใพใใ
CI/CDใใคใใฉใคใณใจใฎ้ฃๆบ
Codex CLIใฏใฟใผใใใซใงๅใใใใCI/CDใใคใใฉใคใณใธใฎ็ตใฟ่พผใฟใๅฎนๆใงใใGitHub ActionsใGitLab CIใง่ชๅๅใใๅ ทไฝ็ใชๆนๆณใ่งฃ่ชฌใใพใใ
GitHub Actionsใงใณใผใใฌใใฅใผ่ชๅๅ
Codex CLIใGitHub Actionsใซ็ตใฟ่พผใใใจใงใPRใใจใซ่ชๅใณใผใใฌใใฅใผใๅฎ่กใใใพใใ
# .github/workflows/codex-review.yml
name: Codex Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 22
- run: npm install -g @openai/codex
- name: Run Codex Review
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
DIFF=$(git diff origin/main...HEAD)
codex exec "ไปฅไธใฎdiffใใฌใใฅใผใใฆใๅ้ก็นใใใผใฏใใฆใณใงๅบๅใใฆ: $DIFF" > review.md
- name: Post Review Comment
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const body = fs.readFileSync('review.md', 'utf8');
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `## ๐ค Codex CLI Auto Review\n\n${body}`
});
ใในใ็ๆใฎ่ชๅๅ
ๆฐใใใใกใคใซใ่ฟฝๅ ใใใPRใซๅฏพใใฆใใในใใไธ่ถณใใฆใใใฐ่ชๅใง็ๆใใใฏใผใฏใใญใผใๆง็ฏใงใใพใใ
- name: Generate Missing Tests
run: |
NEW_FILES=$(git diff --name-only origin/main...HEAD -- '*.ts' '*.tsx' | grep -v '.test.')
for file in $NEW_FILES; do
TEST_FILE="${file%.ts}.test.ts"
if [ ! -f "$TEST_FILE" ]; then
codex exec "$file ใฎใฆใใใใในใใ $TEST_FILE ใซไฝๆใใฆ"
fi
done
CI้ฃๆบๆใฎๆณจๆ็น
- APIใญใผใฎ็ฎก็: GitHub Secretsใซไฟๅญใใใญใฐใซๅบๅใใใชใใใๆณจๆ
- ใณในใๅถๅพก: CIใงใฎๅฎ่กใฏAPIใณในใใ็บ็ใใใใใ
on: pull_requestใฎใใชใฌใผใ็ตใ - ใฟใคใ ใขใฆใ่จญๅฎ: Codex CLIใฎๅฎ่กใซๆ้ๅถ้ใ่จญใใ๏ผ
timeout-minutes: 10๏ผ - ใญใฃใใทใฅ:
node_modulesใใญใฃใใทใฅใใฆใคใณในใใผใซๆ้ใ็ญ็ธฎ
SES็พๅ ดใงใฎใณใผใใฌใใฅใผ่ชๅๅ
SES็พๅ ดใงใฏใณใผใใฌใใฅใผใฎๅฑไบบๅใ่ชฒ้กใซใชใใใกใงใใCodex CLIใๆดป็จใใใฐใไธๅฎๅ่ณชใฎใฌใใฅใผใ่ชๅๅใงใใพใใ
ใฌใใฅใผ่ฆณ็นใฎๆจๆบๅ
ใใญใธใงใฏใๅบๆใฎใฌใใฅใผ่ฆณ็นใcodex.mdใซ่จ่ผใใฆใใใใจใงใAIใฌใใฅใผใฎๅ่ณชใๅฎๅฎใใพใใ
# codex.md - ใฌใใฅใผ่ฆณ็น
## ใณใผใใฌใใฅใผๆใฎใใงใใฏ้
็ฎ
1. ใปใญใฅใชใใฃ: SQLใคใณใธใงใฏใทใงใณใXSSใ่ช่จผๆผใ
2. ใใใฉใผใใณใน: N+1ใฏใจใชใไธ่ฆใชๅใฌใณใใชใณใฐ
3. ๅฏ่ชญๆง: ้ขๆฐใฎ้ทใ๏ผ50่กไปฅไธใฏๅๅฒใๆๆก๏ผ
4. ใในใ: ใซใใฌใใธไธ่ถณใฎๆๆ
5. ๅๅฎๅ
จๆง: anyๅใฎไฝฟ็จ็ฆๆญข
ใญใผใซใซใงใฎใปใซใใฌใใฅใผ
PRใๅบใๅใซใใญใผใซใซใงCodex CLIใซใใใปใซใใฌใใฅใผใๅฎ่กใใ็ฟๆ ฃใใคใใพใใใใ
# ใณใใใๅใฎใปใซใใฌใใฅใผ
codex exec "git diff --cached ใฎใณใผใใใฌใใฅใผใใฆใใปใญใฅใชใใฃใปใใใฉใผใใณในใปๅฏ่ชญๆงใฎ่ฆณ็นใงๅ้ก็นใๆๆใใฆ"
ใใใซใใใใฌใใฅใขใผใฎ่ฒ ๆ ใๆธใใใคใคใPRใฎๅ่ณชใๅบไธใใงใใพใใSES็พๅ ดใงใฏใใฌใใฅใผๆๆใๅฐใชใ๏ผไฟก้ ผใใใใใฎใงใ่ฉไพกใขใใใซใ็ด็ตใใพใใ
ใใผใ ๅฑ้ใฎในใใใ
- ๅไบบๅฉ็จใใๅงใใ: ใพใ่ชๅใฎใปใซใใฌใใฅใผใงๅนๆใๅฎๆ
- ๆๆใๅฏ่ฆๅ: ใฌใใฅใผๆๆไปถๆฐใฎๆจ็งปใไฟฎๆญฃๆ้ใฎ็ญ็ธฎใใใผใฟใง็คบใ
- ใใผใ ใซๆๆก: CI้ฃๆบใฎใใขใ่ฆใใฆๅฐๅ ฅใๆๆก
- ใซใผใซๆดๅ:
codex.mdใฎใฌใใฅใผ่ฆณ็นใใใผใ ใงๅๆ - ๆฎต้็ๅฑ้: ใพใ1ใคใฎใชใใธใใชใง่ฉฆ้จ้็จโๅ จไฝๅฑ้
ๅฎ่ทตใณใใณใใใผใใทใผใ
็พๅ ดใงใใใณใใใงใใใณใใณใ้ใงใใ
# ใตใณใใใใฏในใงใชใใกใฏใฟใชใณใฐ
codex --full-auto "src/api/ ใฎ้่คใณใผใใๅ
ฑ้้ขๆฐใซๅใๅบใใฆ"
# ๅๅฎ็พฉใใๅฎ่ฃ
ใ่ชๅ็ๆ
codex exec "types/api.ts ใฎๅๅฎ็พฉใซๅบใฅใใฆใAPIใฏใฉใคใขใณใใ src/api/client.ts ใซ็ๆใใฆ"
# ใในใใซใใฌใใธใๅไธ
codex --full-auto "ใซใใฌใใธใไฝใใใกใคใซใ็นๅฎใใฆใใในใใ่ฟฝๅ ใใฆ80%ไปฅไธใซใใฆ"
# ใใญใฅใกใณใ่ชๅ็ๆ
codex exec "src/ ้
ไธใฎๅ
จexportใซJSDocใ่ฟฝๅ ใใฆใREADME.mdใฎAPIไธ่ฆงใๆดๆฐใใฆ"
# ใปใญใฅใชใใฃใใงใใฏ
codex exec "ใใญใธใงใฏใๅ
จไฝใใปใญใฅใชใใฃ่ฆณ็นใงใฌใใฅใผใใฆใ่ๅผฑๆงใใใใฐไฟฎๆญฃใใฆ"
# ใใใฉใผใใณในๆนๅ
codex exec "src/components/ ใฎReactใณใณใใผใใณใใงใกใขๅใไธ่ถณใใฆใใ็ฎๆใ็นๅฎใใฆไฟฎๆญฃใใฆ"
ใใใใ่ณชๅ๏ผFAQ๏ผ
git diffใง็ขบ่ชใใไธ่ฆใชๅคๆดใใใใฐๅดไธใงใใพใใใใพใใซgit commitใใฆใใใฐgit checkoutใง็ฐกๅใซๆปใใพใใcodex.mdใฏCodex CLIๅฐ็จใAGENTS.mdใฏไปใฎAIใใผใซ๏ผClaude Code็ญ๏ผใจใๅ
ฑๆใงใใๆจๆบ็ใชๅๅใงใใใใญใธใงใฏใใฎๆน้ใซๅใใใฆ้ธใใงใใ ใใใใพใจใ
Codex CLIใฏๅ ฅ้ใฌใใซใฎไฝฟใๆนใ ใใงใฏ็ไพกใ็บๆฎใใพใใใใตใณใใใใฏในใฎ้ซๅบฆใชๆดป็จใใใซใใใกใคใซ็ทจ้ใCI/CD้ฃๆบใ็ตใฟๅใใใใใจใงใ้็บ็็ฃๆงใๅคงๅน ใซๅผใไธใใใใพใใ
--full-autoใขใผใใจใตใณใใใใฏในใงๅฎๅ จใใค่ชๅพ็ใช่ชๅๅใๅฏ่ฝ- ใใซใใใกใคใซ็ทจ้ใงๅๅคๆดใปAPIไปๆงๅคๆดใไธๆฌๅฆ็
- GitHub ActionsใงPRใใจใฎ่ชๅใณใผใใฌใใฅใผใๅฎ็พ
- SES็พๅ ดใงใฏใปใซใใฌใใฅใผโใใผใ ๅฑ้ใฎๆฎต้็ใขใใญใผใใๆๅน
AIใณใผใใฃใณใฐใใผใซใๆฏ่ผๆค่จใใใๆนใฏใAIใณใผใใฃใณใฐใใผใซๆฏ่ผ2026ใใๅใใใฆใ่ฆงใใ ใใใCodex CLIใฎๅบๆฌใใๅญฆใณใใๆนใฏใCodex CLIไฝฟใๆนๅ ฅ้ใใใฉใใใClaude CodeใจใฎไฝฟใๅใใๆฐใซใชใๆนใฏใClaude Codeไฝฟใๆนๅ ฅ้ใใใใใใใงใใ
ใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใใ