Text Generation
Transformers
Safetensors
Arabic
English
llama
translation
egyptian-arabic
arabic
small-language-model
slm
chatml
text-generation-inference
Instructions to use oddadmix/50M-Egyptian-Translation-v1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use oddadmix/50M-Egyptian-Translation-v1 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="oddadmix/50M-Egyptian-Translation-v1")# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("oddadmix/50M-Egyptian-Translation-v1") model = AutoModelForCausalLM.from_pretrained("oddadmix/50M-Egyptian-Translation-v1", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use oddadmix/50M-Egyptian-Translation-v1 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "oddadmix/50M-Egyptian-Translation-v1" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "oddadmix/50M-Egyptian-Translation-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/oddadmix/50M-Egyptian-Translation-v1
- SGLang
How to use oddadmix/50M-Egyptian-Translation-v1 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "oddadmix/50M-Egyptian-Translation-v1" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "oddadmix/50M-Egyptian-Translation-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "oddadmix/50M-Egyptian-Translation-v1" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "oddadmix/50M-Egyptian-Translation-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use oddadmix/50M-Egyptian-Translation-v1 with Docker Model Runner:
docker model run hf.co/oddadmix/50M-Egyptian-Translation-v1
| { | |
| "bleu": 24.35068857920739, | |
| "chrf": 52.37852875663488, | |
| "eval_size": 3000, | |
| "seed": 42, | |
| "samples": [ | |
| { | |
| "english": "So what should I get you? Should I get you this or that? Just imagine the scene: sitting now, wearing a sleeveless undershirt, eating the best piece of meat you'll ever have in your life.", | |
| "reference": "ุทุจ ุฃุฌูุจ ูู ุฅููุ ุฃุฌูุจ ูู ุฏู ููุง ุฏูุ ุชุฎูู ูุฏู ุงูู ูุธุฑุ ูุงุนุฏ ุฏูููุชู ูุงุจุณ ูุงููุฉ ุจุญู ุงูุงุช ูุจุชุงูู ุฃุญูู ุญุชุฉ ูุญู ุฉ ู ู ูู ุชูููุง ูู ุญูุงุชู.", | |
| "hypothesis": "ุทุจ ุฃุฌูุจูู ุฅููุ ุฃุฌูุจูู ุฏู ููุง ุฏูุ ุชุฎูู ุงูู ูุธุฑ: ูุงุนุฏ ุฏูููุชู ุจูุจุณ ูู ูุต ู ููุด ูุงุฒู ุฉุ ูุงูู ุฃุญูู ุญุชุฉ ูุญู ุฉ ู ู ูู ุชููู ูู ุญูุงุชู." | |
| }, | |
| { | |
| "english": "Prayer niches (mihrabs)", | |
| "reference": "ู ุญุงุฑูุจ ุงูุตูุงุฉ", | |
| "hypothesis": "ุดูุฑุงุจ ุงูุตูุงุฉ" | |
| }, | |
| { | |
| "english": "Cardamom, grains of paradise, cardamom, black pepper, and a little salt. We'll just sprinkle these on, with some bay leaves, and we'll add a big lemon so it doesn't darken โ here's the big lemon.", | |
| "reference": "ุญุจูุงู ููููู ุงุณูุฏ ูุดููู ู ูุญุ ููุฑุดูู ุนูููุง ู ุน ูุฑู ููุฑูุ ูููุญุทููุง ููู ููุฉ ูุจูุฑุฉ ุนุดุงู ููููุง ู ุง ูุบู ูุด - ุงูู ููู ููุฉ ูุจูุฑุฉ.", | |
| "hypothesis": "ูุงุฑุจู ุญุจูุงูุ ุญุจูุงู ุงูุฌูุฉุ ุญุจูุงู ุงุณูุฏุ ูุฑุดุฉ ู ูุญ ุจุณูุทุฉ. ููุฑุด ุฏู ุจุณ ูู ูุฑู ููู ููุ ูู ุน ุดููุฉ ูุฑู ููู ููุ ููุถูู ุนููู ููู ูู ูุจูุฑ ุนุดุงู ู ุง ูุบู ูุดุ ุงูู ุงูููู ูู ุงููุจูุฑ." | |
| }, | |
| { | |
| "english": "Man, these things happen. Sometimes Liverpool loses the match, and other times Real Madrid wins it.", | |
| "reference": "ูุง ุนู ุงูุญุงุฌุงุช ุฏู ุจุชุญุตูุ ุณุงุนุงุช ูููุฑุจูู ุจุชุฎุณุฑ ุงูู ุงุชุด ูุณุงุนุงุช ุฑูุงู ู ุฏุฑูุฏ ุจููุณุจ.", | |
| "hypothesis": "ูุง ุนู ุงูุญุงุฌุงุช ุฏู ุจุชุญุตู. ุณุงุนุงุช ูููุฑุจูู ูุฎุณุฑ ุงูู ุงุชุดุ ูุณุงุนุงุช ุฑูุงู ู ุฏุฑูุฏ ููุณุจูุง." | |
| }, | |
| { | |
| "english": "I will be fine, don't worry", | |
| "reference": "ุงูุง ูุจูู ูููุณุฉุ ู ุง ุชููููุด", | |
| "hypothesis": "ุฃูุง ูุจูู ูููุณุ ู ุชูููุด" | |
| }, | |
| { | |
| "english": "I want grilled chicken, kofta on charcoal, and Pepsi.", | |
| "reference": "ุงูุง ุนุงูุฒ ูุฑุงุฎ ู ุดููุฉ ูููุชุฉ ุนูู ุงููุญู ูุจูุจุณู.", | |
| "hypothesis": "ุฃูุง ุนุงูุฒ ูุฑุงุฎ ู ุดููุฉ ูููุชุฉ ุนูู ุงููุญู ูุจุงุจุณู." | |
| }, | |
| { | |
| "english": "Your age", | |
| "reference": "ุณูู", | |
| "hypothesis": "ุณูู" | |
| }, | |
| { | |
| "english": "By the way, today, it's interesting to see how these two teams will handle the result, each playing in their own way. Whether it's Klopp trying to give hope, even if it's just 10%, that we can achieve the impossible in Madrid against a very tough opponent, or, if not, weโll at least have a clear, explicit, and realistic goal so the season doesn't slip away from us. A win would make all Liverpool fans completely quiet with Jurgen Klopp and give them an injection of hope until the end of the season, at least. Unlike United, who desperately need an automatic, clear, and decisive reaction starting from the Europa League against Real Betis. These tough, historic results stay in our memories regardless of your position in the leagueโwe all remember them.", | |
| "reference": "ุนูู ููุฑูุ ุงูููุงุฑุฏู ุงูู ูุถูุน ููุจูู interesting ูุดูู ุงููุฑูููู ุฏูู ููุชุนุงู ููุง ู ุน ุงููุชูุฌู ุงุฒุงูุ ููู ูุงุญุฏ ูููุนุจ ุจุทุฑููุชู. ุณูุงุก ูููุจ ููุญุงูู ูุฏู ุฃู ูุ ุญุชู ูู ุจูุณุจุฉ ูกู ูชุ ุฅููุง ููุฏุฑ ูุนู ู ุงูู ุณุชุญูู ูู ู ุฏุฑูุฏ ูุฏุงู ุฎุตู ุชููู ุฌุฏุงูุ ุฃู ูู ูุฃุ ูุจูู ุนูู ุงูุฃูู ุนูุฏูุง ูุฏู ูุงุถุญ ูุตุฑูุญ ููุงูุนู ุนุดุงู ุงูู ูุณู ู ุง ูุถูุนุด ู ููุง. ุงูููุฒ ููุฎูู ุฌู ููุฑ ูููุฑุจูู ูุณูุช ุชู ุงู ุงู ู ุน ููุฑุฌู ูููุจ ููุฏููู ุฌุฑุนุฉ ุฃู ู ูุญุฏ ููุงูุฉ ุงูู ูุณู ุนูู ุงูุฃูู. ุนูู ุนูุณ ูููุงูุชุฏ ุงููู ู ุญุชุงุฌ ุฑุฏ ูุนู ุณุฑูุน ููุงุถุญ ูุตุฑูุญ ุงุจุชุฏุงุกู ู ู ุงูููุฑูุจุง ููุฌ ูุฏุงู ุฑูุงู ุจูุชูุณ. ุงููุชุงุฆุฌ ุงูุตุนุจุฉ ูุงูุชุงุฑูุฎูุฉ ุฏู ุจุชูุถู ูู ุงูุฐุงูุฑุฉ ู ูู ุง ูุงู ู ุฑูุฒู ูู ุงูุฏูุฑู โ ูููุง ูุงูุฑูููุง.", | |
| "hypothesis": "ุนูู ููุฑูุ ุงูููุงุฑุฏู ุงูู ูุถูุน ู ู ุชุน ุฅู ุงููุฑูุชูู ุฏูู ููุนุฑููุง ุงููุชูุฌุฉุ ููู ูุงุญุฏ ููุนุจ ุจุทุฑููุชู. ุณูุงุก ูููุจ ุญุงูู ูุฏู ุฃู ูุ ุญุชู ูู ุจุณ 10% ุจุณุ ุฅุญูุง ููุฏุฑ ูุญูู ุงูู ุณุชุญูู ูู ู ุฏุฑูุฏ ูุฏุงู ุฎุตู ุตุนุจ ุฌุฏุงูุ ุฃู ูู ู ุด ููุจูู ูุงุถุญููุ ููุดุฑุญ ููุดูู ูุฏู ูุงูุนู ุฌุฏูุง ุฅู ุงูู ูุณู ู ุง ููุฑุจุด ู ููุง. ุงูููุฒ ููุณุงุนุฏู ุฅู ูููุฑุจูู ููู ููุณูุช ู ุน ููุฑุฌู ูููุจ ูุฏูู ุญููุฉ ุฃู ู ูุญุฏ ุขุฎุฑ ุงูู ูุณู ุ ุนูู ุงูุฃูู ุนูู ุงูุฃูู. ุนูู ุนูุณ ุงููููุงูุชุฏ ุงููู ู ุญุชุงุฌ ุฃูุชูู ุงุชูู ู ุฑูุงูุดู ูุงุถุญ ู ุญุงุณู ู ู ุงูููุฑูุจุง ููุฌ ูุฏุงู ุฑูุงู ุจูุชูุณ. ุงููุชุงุฆุฌ ุงูุตุนุจุฉ ุฏู ุจุชูุถู ูู ุฐูุฑูุงุชูุง ุจุบุถ ุงููุธุฑ ุนู ู ูุงูู ูู ุงูุฏูุฑูุ ูููุง ูุงูุฑูููุง." | |
| }, | |
| { | |
| "english": "So, do we have to pay here?", | |
| "reference": "ูุนูู ุฅุญูุง ูุงุฒู ูุฏูุน ููุงุ", | |
| "hypothesis": "ูุนูู ูุงุฒู ูุฏูุน ููุงุ" | |
| }, | |
| { | |
| "english": "I think we will know that.", | |
| "reference": "ุฃุธู ุฅุญูุง ููุนุฑู ุฏู.", | |
| "hypothesis": "ุฃูุง ุดุงูู ุฅููุง ููุนุฑู ูุฏู." | |
| }, | |
| { | |
| "english": "Option please, excuse me, thank you.", | |
| "reference": "ุฃูุจุดู ูู ุณู ุญุชุ ุจุนุฏ ุฅุฐููุ ุดูุฑุงู.", | |
| "hypothesis": "ูู ุณู ุญุชุ ูู ุณู ุญุชุ ุดูุฑุงู." | |
| }, | |
| { | |
| "english": "That's what people say, I don't know.", | |
| "reference": "ุฏู ุงููู ุงููุงุณ ุจุชููููุ ู ุนุฑูุด.", | |
| "hypothesis": "ูู ุฏู ุงููู ุงููุงุณ ุจุชููููุ ุฃูุง ู ุด ุนุงุฑู." | |
| }, | |
| { | |
| "english": "No sir, he's going to clean up this mess. He might come if France fails in this tournament. No sir, they supported him until he asked 'which cup is this?' I mean, this is Mbappe, he'll play in 2026. On paper, yes, but if he gets eliminated early, like in the round of 16, God knows. He was eliminated from Euro 2021, true, but when they gave him a chance to continue, he did really well.", | |
| "reference": "ูุง ูุง ุจุงุดุงุ ูู ูููุถู ุงููููุฉ ุฏู. ู ู ูู ููุฌู ูู ูุฑูุณุง ูุดูุช ูู ุงูุจุทููุฉ ุฏู. ูุง ูุง ุจุงุดุงุ ูุงููุง ู ุนุงู ูุญุฏ ู ุง ูุงู ูู ุงููุงุณ ุฏู ุฅููุ ูุนูู ุฏู ู ุจุงุจูุ ูููุนุจ ูู 2026. ุนูู ุงููุฑู ุขูุ ุจุณ ูู ุฎุฑุฌ ุจุฏุฑู ุฒู ุฏูุฑ ุงูุณุชุงุดุฑุ ุงููู ุฃุนูู . ูู ุฎุฑุฌ ู ู ุงูููุฑู 2021ุ ุตุญุ ุจุณ ูู ุง ุงุฏููู ูุฑุตุฉ ููู ูุ ุฃุซุจุช ููุณู ุฌุงู ุฏ.", | |
| "hypothesis": "ูุง ูุง ุจุงุดุงุ ูู ููุถูุน ุงููุฑู ุฏู. ู ู ูู ููุฌู ูู ูุฑูุณุง ูุดูุช ูู ุงูุจุทููุฉ ุฏู. ูุง ูุง ุจุงุดุงุ ูู ุง ููููุง ู ุนุงู ูุญุฏ ู ุง ุณุฃููุง 'ุงููู ูุงุณ ุฏูุ' ูุนูู ุฏู ู ุจุงุจูุ ูููุนุจ ูู 2026. ุนูู ุงููุฑูุ ุขูุ ุจุณ ูู ุฎุฑุฌ ุจุฏุฑู ุฒู ู ุง ูู ุฏูุฑ ุงูู16ุ ุงููู ุฃุนูู . ูู ุฎุฑุฌ ู ู ุงูููุฑู 2021ุ ุตุญุ ุจุณ ูู ุง ุงุฏููู ูุฑุตุฉ ููู ูุ ุนู ู ุดุบู ุนุงูู ุฌุฏูุง." | |
| }, | |
| { | |
| "english": "Let me tell you, I ask them to parse what's underlined, and I say, 'the champion raises the cup.' 'Champion' is the subject. Then, Malak (a student) says to me, 'the subject is marked with a kasra (wrong grammatical case)'โcan you imagine? I swear that's what happened!", | |
| "reference": "ุจุต ุจููุ ุงูุง ุจุณุฃููู ูุนุฑุจูุง ุงููู ุชุญุชูุง ุฎุทุ ูุจููู ููู ุงูุจุทู ุจูุฑูุน ุงููุงุณุ ูุนูู 'ุงูุจุทู' ูู ุงูู ุจุชุฏุฃ. ุชููู ู ููุ ุชุฎูููุ ุชููู ูู: 'ุงูู ุจุชุฏุฃ ู ุฑููุน ุจุงููุณุฑ'! ุชุฎููู! ูุงููู ุญุตู ูุฏู.", | |
| "hypothesis": "ุจุต ูุง ุณูุฏูุ ุฃูุง ุจุณุฃููู ูุนูุฑูุง ุงููู ุชุญุชุ ูุจููู ููู ุงูุจุทู ุจูุฑูุน ุงููุงุณ. ุงูุจุทู ูู ุงูู ูุถูุน. ุจุนุฏูู ู ูู (ุทุงูุจ) ุจูููู ูู: ุงูู ูุถูุน ู ูุชูุจ ุนููู ูุงุฌุฑูู ุง (ู ุนููู ุฉ ุบูุท)โุชุฎููุ ูุงููู ุฏู ุงููู ุญุตู!" | |
| }, | |
| { | |
| "english": "What's my standard anyway? Forget about his standards, the awards' standards, and all that stuff.", | |
| "reference": "ูู ุงูู ุงุตูุง ุงูู ุนูุงุฑ ุจุชุงุนูุ ุณูุจู ุจูู ู ู ู ุนุงููุฑู ูู ุนุงููุฑ ุงูุฌูุงูุฒ ููู ุงูููุงู ุฏู.", | |
| "hypothesis": "ุฅูู ุงูู ุนูุงุฑ ุจุชุงุนู ุฃุตูุงูุ ุณูุจู ู ู ุฏุฑุฌุงุชูุ ู ุนุงููุฑ ุงูุฌูุงุฆุฒุ ููู ุงูููุงู ุฏู." | |
| }, | |
| { | |
| "english": "I wish I could go back to being young, to the days when I didn't carry worries like I do now.", | |
| "reference": "ูุง ุฑูุช ุฃุฑุฌุน ุตุบูุฑ ุชุงูู ูุฃูุงู ู ุงููุชุด ุดุงูู ูู ุฒู ุฏูููุชู.", | |
| "hypothesis": "ููุณู ุฃุฑุฌุน ุฃุจูู ุตุบูุฑุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ ูุฃุ" | |
| }, | |
| { | |
| "english": "My question is, what kind of work is Guardiola doing with this one and that one? Where did he succeed? In Barcelona, he definitely succeeded with both. You can only succeed in Germany? No, I mean, can you appreciate what this man has done? This man worked hard and did something amazing.", | |
| "reference": "ุฃูุง ุณุคุงูู ูู ุฅูู ุงูุดุบู ุงููู ุฌูุงุฑุฏูููุง ุจูุนู ูู ู ุน ุฏู ูู ุน ุฏูุ ูู ูุฌุญ ูููุ ูู ุจุฑุดูููุฉ ูุฌุญ ูุนูุงู ู ุน ุงูุงุชููู. ูุนูู ุงููุฌุงุญ ุจุณ ูู ุฃูู ุงููุงุ ูุงุ ุฃูุง ูุตุฏู ุชูุฏูุฑูุง ุงูุฑุงุฌู ุฏู ุนู ู ุงููุ ุงูุฑุงุฌู ุฏู ุชุนุจ ูุนู ู ุญุงุฌู ูุจูุฑุฉ.", | |
| "hypothesis": "ุณุคุงูู ูู ุงูู ุงูุดุบู ุงููู ุฌูุงุฑุฏูููุง ุจูุนู ูู ู ุน ุฏู ูุฏูุ ูู ูุฌุญ ูููุ ูู ุจุฑุดูููุฉ ูุนูุงู ูุฌุญ ูู ุงูุงุชููู. ุงูุช ู ุด ูุชูุฏุฑ ุชูุฌุญ ูู ุฃูู ุงููุง ุจุณุ ูุงุ ูุนูู ุชูุฏุฑ ุงูุฑุงุฌู ุฏู ุนู ู ุงููุ ุงูุฑุงุฌู ุฏู ุชุนุจ ูุนู ู ุญุงุฌุฉ ุฌุงู ุฏุฉ." | |
| }, | |
| { | |
| "english": "Check yourself, Mr. Harry. You destroyed Tottenham Clubโlooks like you were the problem. They might win this year now that Kane is gone or whatever.", | |
| "reference": "ุฑุงุฌุน ููุณู ูุง ุนู ูุงุฑูุ ุงูุช ุฎุฑุจุช ูุงุฏู ุชูุชููุงู ุ ุดููู ููุช ุงูุช ุงูุณุจุจ. ูู ูู ููุณุจูุง ุงูุณูุฉ ุฏู ุจุนุฏ ู ุง ููู ู ุดู ููุง ุฃู ุญุงุฌุฉ.", | |
| "hypothesis": "ุจุต ุนูู ููุณู ูุง ุฃุณุชุงุฐ ูุงุฑู. ุงูุช ุฏู ุฑุช ูุงุฏู ุชูุชููุงู ุ ุดููู ููุช ุงูู ุดููุฉ. ู ู ูู ููุณุจูุง ุงูุณูุฉ ุฏู ุนุดุงู ููู ู ุดู ููุง ุฃู ุญุงุฌุฉ." | |
| }, | |
| { | |
| "english": "Let's go, I'll get up, go to Rouh El Nagham, and call you on the phone.", | |
| "reference": "ููุงุ ูููู ุฃุฑูุญ ุฑูุญ ุงููุบู ููููู ู ูู ุงูุชููููู.", | |
| "hypothesis": "ููุง ุจููุงุ ุฃูุง ูููู ุ ูููู ูุฑูุญ ุงููุบู ุ ูุฃููู ู ูู ุงูุชููููู." | |
| }, | |
| { | |
| "english": "And he'll make the kids deal with a mean stepmother.", | |
| "reference": "ูููุฎูู ุงูุนูุงู ูุชุนุงู ููุง ู ุน ู ุฑุงุช ุฃุจ ุดุฑูุฑุฉ.", | |
| "hypothesis": "ูููุฎูู ุงูุนูุงู ูุนู ููุง ู ุนุงูู ุฎุทูุฉ ุฎุทูุฉ." | |
| } | |
| ] | |
| } |