Initial commit: English Course 10 with offline 3D assets
31
.gitignore
vendored
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# Dependencies
|
||||||
|
node_modules/
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
.venv/
|
||||||
|
venv/
|
||||||
|
env/
|
||||||
|
|
||||||
|
# Environment variables
|
||||||
|
.env
|
||||||
|
.env.local
|
||||||
|
|
||||||
|
# IDE
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
|
|
||||||
|
# System
|
||||||
|
Thumbs.db
|
||||||
|
Desktop.ini
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
|
||||||
|
# Build
|
||||||
|
dist/
|
||||||
|
build/
|
||||||
|
|
||||||
|
# Temporary scripts
|
||||||
|
*.py
|
||||||
1
.vercel/project.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{"projectId":"prj_wr8twHxJHT3DDaloJXApT2ovbvJG","orgId":"team_kySCrU1jp0BBI2srgQ9vTTMw","projectName":"trae_0zn3xgh4","neverMindDeployCard":true}
|
||||||
7
.vercelignore
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
node_modules
|
||||||
|
build
|
||||||
|
dist
|
||||||
|
.git
|
||||||
|
.trae
|
||||||
|
.log
|
||||||
|
.figma
|
||||||
BIN
assets/bg_world.jpg
Normal file
|
After Width: | Height: | Size: 90 KiB |
BIN
assets/levels/level_1.jpg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
assets/levels/level_10.jpg
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
assets/levels/level_11.jpg
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
assets/levels/level_12.jpg
Normal file
|
After Width: | Height: | Size: 57 KiB |
BIN
assets/levels/level_13.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
assets/levels/level_14.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
assets/levels/level_15.jpg
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
assets/levels/level_16.jpg
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
assets/levels/level_17.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
assets/levels/level_18.jpg
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
assets/levels/level_19.jpg
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
assets/levels/level_2.jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
assets/levels/level_20.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
assets/levels/level_21.jpg
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
assets/levels/level_22.jpg
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
assets/levels/level_23.jpg
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
assets/levels/level_24.jpg
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
assets/levels/level_25.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
assets/levels/level_26.jpg
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
assets/levels/level_27.jpg
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
assets/levels/level_28.jpg
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
assets/levels/level_29.jpg
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
assets/levels/level_3.jpg
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
assets/levels/level_30.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
assets/levels/level_4.jpg
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
assets/levels/level_5.jpg
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
assets/levels/level_6.jpg
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
assets/levels/level_7.jpg
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
assets/levels/level_8.jpg
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
assets/levels/level_9.jpg
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
assets/login_hero.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
assets/mascot_main.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
10
assets/mascot_main.svg
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<rect x="30" y="30" width="40" height="35" rx="8" fill="#e0f2fe" stroke="#0ea5e9" stroke-width="2"/>
|
||||||
|
<path d="M35 30 L25 15 L40 30" fill="#0ea5e9"/>
|
||||||
|
<path d="M65 30 L75 15 L60 30" fill="#0ea5e9"/>
|
||||||
|
<circle cx="43" cy="45" r="4" fill="#1e293b"/>
|
||||||
|
<circle cx="57" cy="45" r="4" fill="#1e293b"/>
|
||||||
|
<path d="M43 55 Q50 62 57 55" fill="none" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<line x1="50" y1="30" x2="50" y2="20" stroke="#64748b" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="18" r="3" fill="#f43f5e"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 614 B |
BIN
assets/ui/bg_main.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
assets/ui/icon_badges.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
5
assets/ui/icon_badges.svg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<path d="M30 10 L30 60 L50 80 L70 60 L70 10 Z" fill="#3b82f6" stroke="#2563eb" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="35" r="15" fill="#fcd34d" stroke="#f59e0b" stroke-width="2"/>
|
||||||
|
<path d="M50 25 L53 32 L60 32 L55 37 L57 44 L50 40 L43 44 L45 37 L40 32 L47 32 Z" fill="#fff"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 357 B |
BIN
assets/ui/icon_learn.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
16
assets/ui/icon_learn.svg
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="bookGrad" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||||
|
<stop offset="0%" style="stop-color:#4facfe;stop-opacity:1" />
|
||||||
|
<stop offset="100%" style="stop-color:#00f2fe;stop-opacity:1" />
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<rect x="10" y="20" width="35" height="60" rx="2" fill="#fff" stroke="#333" stroke-width="2"/>
|
||||||
|
<rect x="55" y="20" width="35" height="60" rx="2" fill="#fff" stroke="#333" stroke-width="2"/>
|
||||||
|
<path d="M45 20 L55 20 L55 80 L45 80 Z" fill="#ccc"/>
|
||||||
|
<rect x="15" y="30" width="25" height="5" rx="1" fill="#eee"/>
|
||||||
|
<rect x="15" y="40" width="25" height="5" rx="1" fill="#eee"/>
|
||||||
|
<rect x="60" y="30" width="25" height="5" rx="1" fill="url(#bookGrad)"/>
|
||||||
|
<rect x="60" y="40" width="25" height="5" rx="1" fill="url(#bookGrad)"/>
|
||||||
|
<circle cx="50" cy="50" r="40" fill="none" stroke="url(#bookGrad)" stroke-width="4" stroke-dasharray="10 5" opacity="0.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1017 B |
BIN
assets/ui/icon_points.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
12
assets/ui/icon_points.svg
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<defs>
|
||||||
|
<radialGradient id="coinGrad" cx="50%" cy="50%" r="50%" fx="30%" fy="30%">
|
||||||
|
<stop offset="0%" style="stop-color:#fff7d6;stop-opacity:1" />
|
||||||
|
<stop offset="100%" style="stop-color:#fecf07;stop-opacity:1" />
|
||||||
|
</radialGradient>
|
||||||
|
</defs>
|
||||||
|
<circle cx="50" cy="50" r="40" fill="#d4af37" stroke="#b8860b" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="50" r="35" fill="url(#coinGrad)"/>
|
||||||
|
<text x="50" y="65" font-family="Arial" font-weight="bold" font-size="40" text-anchor="middle" fill="#b8860b">$</text>
|
||||||
|
<path d="M50 15 L55 25 L65 25 L57 32 L60 42 L50 35 L40 42 L43 32 L35 25 L45 25 Z" fill="#fff" opacity="0.5" transform="translate(0, -5)"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 764 B |
BIN
assets/ui/icon_speak.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
11
assets/ui/icon_speak.svg
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="micGrad" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||||
|
<stop offset="0%" style="stop-color:#fa709a;stop-opacity:1" />
|
||||||
|
<stop offset="100%" style="stop-color:#fee140;stop-opacity:1" />
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<path d="M20 30 Q20 10 50 10 Q80 10 80 30 V50 Q80 70 50 70 Q35 70 20 85 V70 Q20 70 20 70 Q10 70 10 50 Z" fill="url(#micGrad)" stroke="#333" stroke-width="2"/>
|
||||||
|
<rect x="45" y="25" width="10" height="25" rx="5" fill="#fff"/>
|
||||||
|
<line x1="40" y1="50" x2="60" y2="50" stroke="#fff" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 648 B |
BIN
assets/ui/icon_stories.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
13
assets/ui/icon_stories.svg
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="chestGrad" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||||
|
<stop offset="0%" style="stop-color:#f6d365;stop-opacity:1" />
|
||||||
|
<stop offset="100%" style="stop-color:#fda085;stop-opacity:1" />
|
||||||
|
</linearGradient>
|
||||||
|
</defs>
|
||||||
|
<path d="M15 40 L85 40 L80 80 L20 80 Z" fill="#8B4513" stroke="#333" stroke-width="2"/>
|
||||||
|
<path d="M15 40 Q50 10 85 40" fill="url(#chestGrad)" stroke="#333" stroke-width="2"/>
|
||||||
|
<rect x="45" y="35" width="10" height="15" rx="2" fill="#FFD700" stroke="#333" stroke-width="1"/>
|
||||||
|
<circle cx="30" cy="20" r="5" fill="#fff" opacity="0.8"/>
|
||||||
|
<circle cx="70" cy="25" r="4" fill="#fff" opacity="0.6"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 754 B |
BIN
assets/ui/level_city.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
8
assets/ui/level_city.svg
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<circle cx="50" cy="50" r="45" fill="#e0f2fe"/>
|
||||||
|
<rect x="25" y="40" width="15" height="40" fill="#94a3b8" stroke="#475569" stroke-width="2"/>
|
||||||
|
<rect x="45" y="20" width="20" height="60" fill="#64748b" stroke="#334155" stroke-width="2"/>
|
||||||
|
<rect x="70" y="35" width="15" height="45" fill="#94a3b8" stroke="#475569" stroke-width="2"/>
|
||||||
|
<rect x="48" y="25" width="4" height="4" fill="#fef08a"/>
|
||||||
|
<rect x="58" y="25" width="4" height="4" fill="#fef08a"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 539 B |
BIN
assets/ui/level_forest.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
7
assets/ui/level_forest.svg
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<circle cx="50" cy="50" r="45" fill="#dcfce7"/>
|
||||||
|
<path d="M50 20 L30 60 H70 Z" fill="#22c55e" stroke="#15803d" stroke-width="2"/>
|
||||||
|
<path d="M30 40 L15 70 H45 Z" fill="#4ade80" stroke="#16a34a" stroke-width="2"/>
|
||||||
|
<path d="M70 40 L85 70 H55 Z" fill="#4ade80" stroke="#16a34a" stroke-width="2"/>
|
||||||
|
<rect x="45" y="60" width="10" height="20" fill="#a2714c"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 440 B |
BIN
assets/ui/level_secret.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
5
assets/ui/level_secret.svg
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<circle cx="50" cy="50" r="45" fill="#581c87"/>
|
||||||
|
<text x="50" y="65" font-family="Arial" font-weight="bold" font-size="50" text-anchor="middle" fill="#fde047">?</text>
|
||||||
|
<circle cx="50" cy="50" r="40" fill="none" stroke="#fde047" stroke-width="2" stroke-dasharray="5 5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 350 B |
BIN
assets/ui/level_space.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
8
assets/ui/level_space.svg
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<circle cx="50" cy="50" r="45" fill="#1e293b"/>
|
||||||
|
<circle cx="20" cy="20" r="2" fill="#fff"/>
|
||||||
|
<circle cx="80" cy="30" r="1" fill="#fff"/>
|
||||||
|
<circle cx="40" cy="80" r="1.5" fill="#fff"/>
|
||||||
|
<circle cx="50" cy="50" r="15" fill="#fca5a5" stroke="#f87171" stroke-width="2"/>
|
||||||
|
<ellipse cx="50" cy="50" rx="25" ry="5" fill="none" stroke="#fff" stroke-width="1" transform="rotate(-20 50 50)"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 472 B |
BIN
assets/ui/lock_icon.jpg
Normal file
|
After Width: | Height: | Size: 172 KiB |
6
assets/ui/lock_icon.svg
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<rect x="25" y="45" width="50" height="40" rx="5" fill="#94a3b8" stroke="#475569" stroke-width="2"/>
|
||||||
|
<path d="M35 45 V30 A15 15 0 0 1 65 30 V45" fill="none" stroke="#475569" stroke-width="8"/>
|
||||||
|
<circle cx="50" cy="65" r="5" fill="#1e293b"/>
|
||||||
|
<rect x="48" y="65" width="4" height="10" fill="#1e293b"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 384 B |
BIN
assets/ui/mascot_excited.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
assets/ui/mascot_excited.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
11
assets/ui/mascot_excited.svg
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<rect x="30" y="30" width="40" height="35" rx="8" fill="#fef3c7" stroke="#d97706" stroke-width="2"/>
|
||||||
|
<path d="M35 30 L25 15 L40 30" fill="#d97706"/>
|
||||||
|
<path d="M65 30 L75 15 L60 30" fill="#d97706"/>
|
||||||
|
<path d="M40 45 L46 45" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<path d="M54 45 L60 45" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<path d="M43 55 Q50 65 57 55" fill="none" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<line x1="50" y1="30" x2="50" y2="20" stroke="#64748b" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="18" r="3" fill="#22c55e"/>
|
||||||
|
<path d="M20 20 L25 25 M80 20 L75 25 M20 80 L25 75 M80 80 L75 75" stroke="#f59e0b" stroke-width="2"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 792 B |
BIN
assets/ui/mascot_happy.jpg
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
assets/ui/mascot_happy.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
15
assets/ui/mascot_happy.svg
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<!-- Robot Head -->
|
||||||
|
<rect x="30" y="30" width="40" height="35" rx="8" fill="#e0f2fe" stroke="#0ea5e9" stroke-width="2"/>
|
||||||
|
<!-- Ears -->
|
||||||
|
<path d="M35 30 L25 15 L40 30" fill="#0ea5e9"/>
|
||||||
|
<path d="M65 30 L75 15 L60 30" fill="#0ea5e9"/>
|
||||||
|
<!-- Eyes -->
|
||||||
|
<circle cx="43" cy="45" r="4" fill="#1e293b"/>
|
||||||
|
<circle cx="57" cy="45" r="4" fill="#1e293b"/>
|
||||||
|
<!-- Smile -->
|
||||||
|
<path d="M43 55 Q50 62 57 55" fill="none" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<!-- Antenna -->
|
||||||
|
<line x1="50" y1="30" x2="50" y2="20" stroke="#64748b" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="18" r="3" fill="#f43f5e"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 714 B |
BIN
assets/ui/mascot_sad.jpg
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
assets/ui/mascot_sad.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
10
assets/ui/mascot_sad.svg
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<rect x="30" y="30" width="40" height="35" rx="8" fill="#e2e8f0" stroke="#64748b" stroke-width="2"/>
|
||||||
|
<path d="M35 30 L30 20 L40 30" fill="#64748b"/>
|
||||||
|
<path d="M65 30 L70 20 L60 30" fill="#64748b"/>
|
||||||
|
<circle cx="43" cy="48" r="3" fill="#1e293b"/>
|
||||||
|
<circle cx="57" cy="48" r="3" fill="#1e293b"/>
|
||||||
|
<path d="M43 58 Q50 52 57 58" fill="none" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<line x1="50" y1="30" x2="50" y2="25" stroke="#64748b" stroke-width="2"/>
|
||||||
|
<circle cx="50" cy="23" r="3" fill="#94a3b8"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 614 B |
BIN
assets/ui/mascot_thinking.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
9
assets/ui/mascot_thinking.svg
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
|
||||||
|
<rect x="30" y="30" width="40" height="35" rx="8" fill="#f3e8ff" stroke="#9333ea" stroke-width="2"/>
|
||||||
|
<path d="M35 30 L25 15 L40 30" fill="#9333ea"/>
|
||||||
|
<path d="M65 30 L75 15 L60 30" fill="#9333ea"/>
|
||||||
|
<circle cx="43" cy="45" r="3" fill="#1e293b"/>
|
||||||
|
<circle cx="57" cy="45" r="3" fill="#1e293b"/>
|
||||||
|
<line x1="45" y1="58" x2="55" y2="58" stroke="#1e293b" stroke-width="2" stroke-linecap="round"/>
|
||||||
|
<text x="80" y="30" font-family="Arial" font-size="30" fill="#9333ea">?</text>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 564 B |
BIN
assets/ui/test_placeholder.jpg
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
assets/vocab/00d06796e489999226fb5bb27fe1b3b2.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/01377d25f20ed67c329458b723d4ed52.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/01ffced539f2aed98a71d777e2dd38e5.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0207b930f29b28fef13a112f55c5dc40.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/02166f2d316cb23bfdfa1752d11b2fe3.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/02cf70d59ed69d7c9dd21d30e490e050.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/02de33395b72c956494196efe186844b.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/04a710bd422a00c022c8a3e372046896.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0557fa923dcee4d0f86b1409f5c2167f.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0567953871b1bf589b797d9b178d5a94.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/05b9515a89c657e9d67fee2d4cf64148.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/05d7a63454d2014f937df55fd0fb3a63.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/060e8e88876d796e83c5201d70e45661.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/06299530fe59d9cdd1e42bc7fca371f9.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0660a7580aab0a3ddb607d7a7b68ee58.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/06f79f9f44945954381cb77cc3615328.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/071642fa72ba780ee90ed36350d82745.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
assets/vocab/092e0832f6b75d053eaeb7dc5f53881d.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0b8bd8e7a923442b0de1b614af46944f.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0ba672e3acbda6fa67c1f7b32f139979.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0c483c0be99a0de8db7afb2a05e4f46e.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0c6ad70beb3a7e76c3fc7adab7c46acc.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0dcfdb3caf2dcc0998f250e9aba65cee.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
assets/vocab/0edc9b073397681dc9f2c479686ea0d9.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/0efc925791401759dba2629193881c93.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/10b7351bdaaf563393dda9d25d8c2650.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/10dc0decd0384c5a654f231e635c9587.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/1129c0e4d43f2d121652a7302712cff6.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
assets/vocab/1198570c44e6d4ddd9571ff4f621866e.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |
BIN
assets/vocab/119eac47719cc9be7b99124712e229da.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |