{ "menu": { "wordofday": "๐ŸŒ… Word of Day", "add": "โž• Add word", "vocab": "๐Ÿ“š Vocabulary", "task": "๐Ÿง  Task", "practice": "๐Ÿ’ฌ Practice", "exercises": "๐Ÿ“– Exercises", "games": "๐ŸŽฎ Mini Games", "words": "๐ŸŽฏ Thematic words", "import": "๐Ÿ“– Import", "stats": "๐Ÿ“Š Stats", "settings": "โš™๏ธ Settings", "below": "Main menu below โคต๏ธ" }, "practice_menu": { "title": "Practice", "choose": "Choose practice mode:", "stories": "Mini Stories", "ai_chat": "AI Chat" }, "wod": { "title": "Word of the Day", "generating": "๐Ÿ”„ Generating word of the day...", "failed": "โŒ Failed to generate word of the day. Try again later.", "not_available": "๐Ÿ• Word of the day is not ready yet.\n\nWords are generated daily at 00:00 UTC.\nTry again later!", "examples": "Examples", "synonyms": "Synonyms", "add_btn": "โž• Add to vocabulary", "added": "Added to vocabulary!", "not_found": "Word not found" }, "add_menu": { "title": "โž• Add words\n\nChoose method:", "manual": "๐Ÿ“ Manual", "thematic": "๐ŸŽฏ Thematic words", "import": "๐Ÿ“– Import" }, "import_menu": { "title": "๐Ÿ“– Import words\n\nChoose import method:", "from_text": "๐Ÿ“ From text", "from_file": "๐Ÿ“„ From file (.txt, .md)", "file_hint": "๐Ÿ“„ Import from file\n\nSend a .txt or .md file with your words.\n\nFormats:\nโ€ข One word per line (AI will translate)\nโ€ข word - translation\nโ€ข word : translation" }, "common": { "start_first": "First run /start to register", "translation": "Translation" }, "lang": { "ru": "Russian", "en": "English", "ja": "Japanese" }, "import": { "title": "๐Ÿ“– Import words from text", "desc": "Send me text in your learning language, and I will extract useful words to study.", "can_send": "You may send:\nโ€ข A passage from a book or article\nโ€ข A song lyric\nโ€ข A description\nโ€ข Any interesting text", "cancel_hint": "Send /cancel to abort.", "too_short": "โš ๏ธ Text is too short. Send at least 50 characters.\nOr use /cancel to abort.", "too_long": "โš ๏ธ Text is too long (max 3000 chars).\nSend a shorter text or use /cancel to abort.", "processing": "๐Ÿ”„ Analyzing text and extracting words...", "failed": "โŒ Failed to extract words. Try another text or later.", "found_header": "๐Ÿ“š Found words: {n}", "added_single": "โœ… Word '{word}' added to vocabulary", "added_count": "โœ… Added words: {n}", "skipped_count": "โš ๏ธ Skipped (already in vocabulary): {n}" }, "start": { "new_intro": "๐Ÿ‘‹ Hi, {first_name}!\n\nI'm a bot to learn English. I will help you to:\n๐Ÿ“š Grow your vocabulary (manual/thematic/from text)\nโœ๏ธ Do interactive exercises\n๐Ÿ’ฌ Practice conversation with AI\n๐Ÿ“Š Track your progress\n\nCommands:\nโ€ข /add [word] - add a word\nโ€ข /words [topic] - thematic selection\nโ€ข /import - import from text\nโ€ข /vocabulary - my dictionary\nโ€ข /task - exercises\nโ€ข /practice - AI dialogue\nโ€ข /stats - statistics\nโ€ข /settings - settings\nโ€ข /reminder - reminders\nโ€ข /help - full help", "offer_test": "๐ŸŽฏ Shall we determine your level?\n\nA short test (7 questions) will tailor tasks to your level.\nIt takes about 2โ€“3 minutes.\n\nOr skip and set level later in /settings", "return": "Welcome back, {first_name}! ๐Ÿ‘‹\n\nReady to continue?\n\nQuick access:\nโ€ข /vocabulary - view dictionary\nโ€ข /task - get an exercise\nโ€ข /practice - dialogue practice\nโ€ข /words [topic] - thematic words\nโ€ข /stats - statistics\nโ€ข /help - all commands", "help": "๐Ÿ“– Commands help:\n\nVocabulary:\nโ€ข /add [word] - add to dictionary\nโ€ข /vocabulary - view dictionary\nโ€ข /words [topic] - thematic words\nโ€ข /import - import from text\n\nLearning:\nโ€ข /task - exercise (translate, fill gaps)\nโ€ข /practice - AI dialogue (6 scenarios)\nโ€ข /level_test - level test\n\nStats:\nโ€ข /stats - your progress\n\nSettings:\nโ€ข /settings - level and language\nโ€ข /reminder - daily reminders\n\n๐Ÿ’ก You can also just send me a word to add it!", "offer_btn": "๐Ÿ“Š Take level test", "skip_btn": "โžก๏ธ Skip", "skip_msg": "โœ… Okay!\n\nYou can take the test later with /level_test\nor set level manually in /settings\n\nLet's start! Try:\nโ€ข /words travel - thematic words\nโ€ข /practice - AI dialogue\nโ€ข /add hello - add a word" }, "add": { "prompt": "Send the word you want to add:\nโ€ข Single word: /add elephant\nโ€ข Multiple: /add apple, banana, orange\n\nOr just send the word without a command!", "searching": "โณ Looking up translation and examples...", "examples_header": "Examples:", "translations_header": "Translations:", "translation_label": "Translation", "category_label": "Category", "level_label": "Level", "confirm_question": "Add this word to your vocabulary?", "btn_add": "โœ… Add", "btn_cancel": "โŒ Cancel", "exists": "The word '{word}' is already in your vocabulary!\nTranslation: {translation}", "added_success": "โœ… Word '{word}' added!\n\nTotal words in vocabulary: {count}\n\nKeep adding new words or use /task to practice!", "cancelled": "Cancelled. You can add another word with /add" }, "add_batch": { "header": "๐Ÿ“ Words to add ({n}):", "translating": "โณ Translating {n} words...", "choose": "Select words to add or add all at once:", "truncated": "โš ๏ธ Too many words. Showing first {n}.", "failed": "โŒ Failed to get translations. Try again later." }, "vocab": { "empty": "๐Ÿ“š Your vocabulary is empty!\n\nAdd your first word with /add or just send me a word.", "header": "๐Ÿ“š Your vocabulary:", "accuracy_inline": "({n}% accuracy)", "shown_last": "Showing last 10 of {n} words", "total": "Total words: {n}", "page_info": "\n๐Ÿ“– Page {page} of {total} โ€ข Total words: {count}", "close_btn": "โŒ Close" }, "practice": { "start_text": "๐Ÿ’ฌ Dialogue practice with AI\n\nChoose a scenario:\n\nโ€ข AI will play a role\nโ€ข You can chat in English\nโ€ข AI will correct your mistakes\nโ€ข Use /stop to finish\n\nPick a scenario:", "hints": "๐Ÿ’ก Hints:", "write_or_stop": "\n๐Ÿ“ Write your answer in English or use /stop to finish", "show_translation_btn": "๐Ÿ‘๏ธ Show translation", "stop_btn": "๐Ÿ”š End dialogue", "scenario": { "restaurant": "๐Ÿฝ๏ธ Restaurant", "shopping": "๐Ÿ›๏ธ Shopping", "travel": "โœˆ๏ธ Travel", "work": "๐Ÿ’ผ Work", "doctor": "๐Ÿฅ Doctor", "casual": "๐Ÿ’ฌ Casual" }, "thinking_prepare": "๐Ÿค” AI is preparing the dialogue...", "empty_prompt": "Write something in the learning language or use /stop to finish", "thinking": "๐Ÿค” AI is thinking...", "corrections": "Corrections:", "end_title": "โœ… Dialogue finished!", "end_exchanged": "Messages exchanged: {n}", "end_keep": "Great job! Keep practicing.", "end_hint": "Use /practice to start a new dialogue.", "translation_unavailable": "Translation unavailable", "translation_already": "Translation already shown", "custom_scenario_btn": "โœ๏ธ Custom scenario", "custom_scenario_prompt": "โœ๏ธ Describe your scenario\n\nWrite a topic or situation for the conversation.\n\nExamples:\nโ€ข Job interview for a programmer position\nโ€ข Ordering pizza by phone\nโ€ข Discussing a movie with a friend\nโ€ข Planning a trip to Japan", "custom_scenario_too_short": "โš ๏ธ Description too short. Write at least a few words about the scenario.", "new_practice_btn": "๐Ÿ”„ New dialogue", "to_tasks_btn": "๐Ÿง  Tasks", "to_words_btn": "๐ŸŽฏ Words", "go_tasks_hint": "Use /task to practice words", "go_words_hint": "Use /words [topic] for word sets" }, "tasks": { "choose_mode": "๐Ÿง  Choose task mode:", "mode_vocabulary": "๐Ÿ“š Words from vocabulary", "mode_new_words": "โœจ New words", "choose_type": "๐Ÿ“‹ Choose task type:", "type_mix": "๐ŸŽฒ Mix (all types)", "type_word_translate": "๐Ÿ“ Word translation", "type_fill_blank": "โœ๏ธ Fill in the blank", "type_sentence_translate": "๐Ÿ“– Sentence translation", "generating_new": "๐Ÿ”„ Generating new words...", "generate_failed": "โŒ Failed to generate words. Try again later.", "translate_to": "Translate to {lang_name}", "no_words": "๐Ÿ“š You don't have words to practice yet!\n\nAdd some words with /add and come back.", "stopped": "Exercises stopped. Use /task to start again.", "finished": "Exercises finished. Use /task to start again.", "header": "๐Ÿ“ Task {i} of {n}", "write_answer": "\n๐Ÿ’ก Write your answer:", "checking": "โณ Checking answer...", "correct": "โœ… Correct!", "incorrect": "โŒ Incorrect", "your_answer": "Your answer", "right_answer": "Right answer", "next_btn": "โžก๏ธ Next task", "stop_btn": "๐Ÿ”š Stop", "add_word_btn": "โž• Add word", "word_added": "โœ… Word '{word}' added to vocabulary!", "word_already_exists": "Word '{word}' is already in vocabulary", "example_label": "Example", "cancelled": "Cancelled. You can return to tasks with /task.", "finish_title": "{emoji} Task finished!", "correct_of": "Correct answers: {correct} of {total}", "accuracy": "Accuracy: {accuracy}%", "use_task": "Use /task to start a new one", "use_stats": "Use /stats to view statistics", "comment": { "excellent": "Excellent result!", "good": "Good job!", "average": "Not bad, keep practicing!", "poor": "Review these words again!" } }, "stats": { "header": "๐Ÿ“Š Your stats", "total_words": "๐Ÿ“š Words in vocabulary: {n}", "studied_words": "๐Ÿ“– Words studied: {n}", "total_tasks": "โœ๏ธ Tasks completed: {n}", "correct_tasks": "โœ… Correct answers: {n}", "accuracy": "๐ŸŽฏ Accuracy: {n}%", "hint_add_words": "Add words with /add to start learning!", "hint_first_task": "Do your first task with /task!", "hint_keep_practice": "Keep practicing! ๐Ÿ’ช", "word_of_day_btn": "๐ŸŒ… Word of the Day" }, "reminder": { "title": "โฐ Reminders", "status_on": "โœ… Enabled", "status_off": "โŒ Disabled", "time_not_set": "Not set", "status_line": "Status: {status}", "time_line": "Time: {time} UTC", "desc1": "Reminders help you keep up with daily practice.", "desc2": "The bot will send a message at the chosen time every day.", "btn_enable": "โœ… Enable", "btn_disable": "โŒ Disable", "btn_change_time": "โฐ Change time", "set_time_first": "Please set the reminder time first!", "enabled_toast": "โœ… Reminders enabled!", "enabled_title": "โœ… Reminders enabled!", "enabled_desc": "You will receive daily practice reminders.", "disabled_toast": "โŒ Reminders disabled", "disabled_title": "โŒ Reminders disabled", "disabled_desc": "Use /reminder to enable them again.", "set_title": "โฐ Set reminder time", "set_desc": "Send time in format HH:MM (UTC)", "set_examples": "Examples:\nโ€ข 09:00 - 9 AM UTC\nโ€ข 18:30 - 6:30 PM UTC\nโ€ข 20:00 - 8 PM UTC", "set_utc_hint": "๐Ÿ’ก UTC = local offset may apply", "cancel_hint": "Send /cancel to abort", "cancelled": "โŒ Time setup cancelled", "invalid_format": "โŒ Invalid time format!\n\nUse HH:MM (e.g., 09:00 or 18:30)\nOr send /cancel to abort", "time_set_title": "โœ… Time set!", "status_on_line": "Status: Enabled", "use_settings": "Use /reminder to change settings.", "daily_title": "โฐ Time to practice!", "daily_wod": "๐ŸŒ… Word of the Day:", "daily_tips": "Don't forget to practice today:\nโ€ข /task - complete tasks\nโ€ข /practice - practice dialogue\nโ€ข /words - add new words", "daily_motivation": "๐Ÿ’ช Regular practice is the key to success!" }, "story": { "title": "Mini Stories", "choose_genre": "Choose a story genre:", "genre": { "dialogue": "Dialogues", "news": "News", "story": "Stories", "letter": "Letters", "recipe": "Recipes" }, "generating": "๐Ÿ”„ Generating story...", "failed": "โŒ Failed to generate story. Try again.", "try_again": "Try again", "level": "Level", "words": "words", "questions_btn": "Questions", "vocab_btn": "Vocabulary", "new_btn": "New story", "back": "Back", "not_found": "Story not found", "no_vocab": "No vocabulary words", "no_questions": "No questions", "vocabulary": "Story Vocabulary", "add_all": "Add all", "word_added": "โœ… Word '{word}' added!", "words_added": "โœ… Added words: {n}", "word_not_found": "Word not found", "question": "Question", "question_not_found": "Question not found", "correct": "โœ… Correct!", "incorrect": "โŒ Incorrect", "next_question": "Next question", "show_results": "Results", "results_title": "Results", "correct_answers": "Correct answers", "accuracy": "Accuracy", "result_excellent": "Excellent! You understood the text well.", "result_good": "Good job! You understood most of the text.", "result_practice": "Try reading the story more carefully.", "translation": "Translation", "show_translation": "Show translation", "hide_translation": "Hide translation" }, "level_test": { "show_translation_btn": "๐Ÿ‘๏ธ Show question translation", "intro": "๐Ÿ“Š Level placement test\n\nThis short test will help determine your English level.\n\n๐Ÿ“‹ The test has 7 questions:\nโ€ข Grammar\nโ€ข Vocabulary\nโ€ข Comprehension\n\nโฑ Takes about 2โ€“3 minutes\n\nReady to start?", "start_btn": "โœ… Start test", "cancel_btn": "โŒ Cancel", "press_button": "Press the button when you're ready:", "cancelled": "โŒ Test cancelled", "q_header": "โ“ Question {i} of {n}" }, "settings": { "title": "โš™๏ธ Settings\n\n", "level_prefix": "๐Ÿ“Š Level: ", "learning_prefix": "๐ŸŽฏ Learning language: ", "interface_prefix": "๐ŸŒ Interface language: ", "translation_prefix": "๐Ÿ’ฌ Translation language: ", "choose": "Choose what to change:", "close": "โŒ Close", "back": "โฌ…๏ธ Back", "back_to_settings": "โฌ…๏ธ Back to settings", "level_title": "๐Ÿ“Š Choose your level:\n\n", "level_groups": "A1-A2 - Beginner\nB1-B2 - Intermediate\nC1-C2 - Advanced\n\n", "level_hint": "This affects difficulty of suggested words and tasks.", "level": { "a1": "A1 - Beginner", "a2": "A2 - Elementary", "b1": "B1 - Intermediate", "b2": "B2 - Upper-intermediate", "c1": "C1 - Advanced", "c2": "C2 - Proficient" }, "jlpt": { "n5": "N5 - Basic", "n4": "N4 - Elementary", "n3": "N3 - Intermediate", "n2": "N2 - Advanced", "n1": "N1 - Fluent" }, "jlpt_groups": "N5-N4 - Beginner\nN3 - Intermediate\nN2-N1 - Advanced\n\n", "level_changed": "โœ… Level changed to {level}\n\n", "level_changed_hint": "You will now receive words and tasks matching your level!", "lang_title": "๐ŸŒ Select interface language:\n\n", "lang_desc": "This will change the language of bot messages.", "lang_changed": "โœ… Interface language: English", "learning_title": "๐ŸŽฏ Select learning language:\n\n", "learning_changed": "โœ… Learning language: {code}", "translation_title": "๐Ÿ’ฌ Select translation language:\n\n", "translation_desc": "Words will be translated to this language.\nThis can differ from interface language.", "translation_changed": "โœ… Translation language: {lang_name}", "tasks_count_prefix": "๐Ÿ”ข Tasks: ", "tasks_count_title": "๐Ÿ”ข Number of tasks:\n\n", "tasks_count_desc": "How many tasks to generate at once.\nMinimum 5, maximum 15.", "tasks_count_changed": "โœ… Number of tasks: {count}", "menu_updated": "Main menu updated โคต๏ธ", "lang_name": { "ru": "๐Ÿ‡ท๐Ÿ‡บ ะ ัƒััะบะธะน", "en": "๐Ÿ‡ฌ๐Ÿ‡ง English", "ja": "๐Ÿ‡ฏ๐Ÿ‡ต ๆ—ฅๆœฌ่ชž" }, "learning_lang": { "en": "๐Ÿ‡ฌ๐Ÿ‡ง English", "es": "๐Ÿ‡ช๐Ÿ‡ธ Spanish", "de": "๐Ÿ‡ฉ๐Ÿ‡ช German", "fr": "๐Ÿ‡ซ๐Ÿ‡ท French", "ja": "๐Ÿ‡ฏ๐Ÿ‡ต Japanese" } }, "import_extra": { "cancelled": "โŒ Import cancelled." }, "import_file": { "unsupported_format": "โŒ Unsupported file format.\n\nSupported: .txt, .md\n\nFile format:\nword - translation\nword : translation", "too_large": "โŒ File is too large (max 1 MB)", "encoding_error": "โŒ Encoding error. Make sure the file is UTF-8", "download_error": "โŒ Failed to download file. Try again", "no_words_found": "โŒ No words found in file.\n\nMake sure the format is correct:\nword - translation\nword : translation", "truncated": "โš ๏ธ File contains more than {n} words. Importing first {n}.", "found_header": "๐Ÿ“„ Words found in file: {n}", "choose_action": "Choose action:", "add_all_btn": "โœ… Add all ({n})", "translating": "๐Ÿ”„ Translating words with AI..." }, "level_test_extra": { "generating": "๐Ÿ”„ Generating questions...", "generate_failed": "โŒ Failed to generate test. Try later or use /settings to set level manually.", "translation_unavailable": "Translation unavailable", "translation_marker": "Question translation:", "translation_already": "Translation already shown", "correct": "โœ… Correct!", "incorrect": "โŒ Incorrect", "correct_answer": "Correct answer: {answer}", "result_title": "๐ŸŽ‰ Test completed!\n\n", "results_header": "๐Ÿ“Š Results:\n", "correct_count": "Correct answers: {correct} of {total}\n", "accuracy": "Accuracy: {accuracy}%\n\n", "your_level": "๐ŸŽฏ Your level: {level}\n", "level_set_hint": "Tasks and materials will now be tailored to your level!\nYou can change the level anytime via /settings", "level_desc": { "A1": "Beginner - understand basic phrases and can introduce yourself", "A2": "Elementary - can communicate on simple topics", "B1": "Intermediate - can maintain conversations on familiar topics", "B2": "Upper-intermediate - fluent in most situations", "C1": "Advanced - use language flexibly and effectively", "C2": "Proficient - mastery at native level", "N5": "Basic - understand hiragana, katakana and basic kanji", "N4": "Elementary - understand everyday conversations", "N3": "Intermediate - understand common texts and conversations", "N2": "Advanced - understand most content", "N1": "Fluent - full proficiency in Japanese" } }, "onboarding": { "step2_title": "๐ŸŽฏ Which language do you want to learn?", "step3_title": "๐Ÿ’ฌ Which language to translate words into?", "complete": "โœ… Settings saved!", "lang_en": "๐Ÿ‡ฌ๐Ÿ‡ง English", "lang_ja": "๐Ÿ‡ฏ๐Ÿ‡ต Japanese" }, "words": { "generating": "๐Ÿ”„ Generating words for topic '{theme}'...", "generate_failed": "โŒ Failed to generate words. Please try again later.", "header": "๐Ÿ“š Word set: {theme}", "choose": "Choose words to add to your vocabulary:", "add_all_btn": "โœ… Add all", "close_btn": "โŒ Close", "help_title": "๐Ÿ“š Thematic word sets", "help_usage": "Use: /words [topic]", "help_examples": "Examples:\nโ€ข /words travel - travel\nโ€ข /words food - food\nโ€ข /words work - work\nโ€ข /words nature - nature\nโ€ข /words technology - technology", "help_note": "I will generate 10 words for the topic tailored to your level!", "popular": "Popular topics:", "topic_travel": "โœˆ๏ธ Travel", "topic_food": "๐Ÿ” Food", "topic_work": "๐Ÿ’ผ Work", "topic_nature": "๐ŸŒฟ Nature", "topic_technology": "๐Ÿ’ป Technology", "err_not_found": "โŒ Error: word not found", "already_exists": "The word '{word}' is already in your vocabulary", "added_single": "โœ… Word '{word}' added to vocabulary" }, "exercises": { "title": "๐Ÿ“– Grammar Exercises", "choose_topic": "Choose a topic for exercises:", "your_level": "Your level: {level}", "generating_rule": "๐Ÿ”„ Generating grammar explanation...", "generating": "๐Ÿ”„ Generating exercises...", "generate_failed": "โŒ Failed to generate exercise. Please try again later.", "start_btn": "โ–ถ๏ธ Start exercises", "task_header": "๐Ÿ“ Exercise: {topic}", "instruction": "Fill in the blanks with the correct form:", "check_btn": "โœ… Check", "next_btn": "โžก๏ธ Next", "results_btn": "๐Ÿ“Š Results", "back_btn": "โฌ…๏ธ Back to topics", "close_btn": "โŒ Close", "correct": "โœ… Correct!", "incorrect": "โŒ Incorrect", "your_answer": "Your answer: {answer}", "right_answer": "Correct answer: {answer}", "explanation": "๐Ÿ’ก {text}", "score": "Score: {correct} of {total}", "no_topics": "No topics available for your level yet.", "write_answer": "Write your answer:" }, "minigames": { "menu_title": "๐ŸŽฎ Mini Games\n\nChoose a game:", "start_btn": "Start", "back_btn": "Back", "play_again": "Play again", "speed_round": { "name": "Speed Translation", "rules": "๐Ÿ“‹ Rules:\n\nโ€ข A word from your vocabulary appears\nโ€ข You have {time} seconds to answer\nโ€ข Type the translation as fast as you can\nโ€ข Faster = more points!\n\n๐ŸŽฏ Rounds: {count}", "mode_ai": "AI Check Mode", "mode_simple": "Simple Mode", "premium_hint": "You have a subscription! Choose answer checking mode.", "ai_mode_warning": "โš ๏ธ AI Check Mode\n\nIn this mode AI will check all answers after the game ends.\nDuring the game, answers are checked against dictionary.\n\nAI considers synonyms and translation variations.", "ai_checking": "AI is checking answers", "not_enough_words": "โŒ Not enough words in vocabulary\n\nMinimum: {min} words\nYou have: {current}\n\nAdd words via /add or /words", "round": "Round {current}/{total}", "seconds": "sec", "score": "Score", "points": "points", "time_up": "Time's up!", "correct": "Correct!", "wrong": "Wrong!", "correct_was": "Correct answer", "finished": "Game Over!", "final_score": "Final score", "correct_answers": "Correct answers", "accuracy": "Accuracy", "answers_list": "Answers", "result": { "excellent": "๐Ÿ”ฅ Excellent! You're a master!", "good": "๐Ÿ‘ Great result! Keep it up!", "average": "๐Ÿ“š Not bad! Keep practicing.", "practice": "๐Ÿ’ช Don't give up! Practice makes perfect." } }, "match_game": { "name": "Match Pairs", "rules": "๐Ÿ“‹ Rules:\n\nโ€ข {count} words and {count} translations will appear shuffled\nโ€ข Match the correct pairs\nโ€ข Enter answer in format: 1A, 2B, 3C...\nโ€ข Time is tracked", "title": "Match the pairs", "words_col": "Words", "translations_col": "Translations", "hint": "Enter pairs (e.g.: 1C, 2A, 3B, 4D, 5E)", "cancel": "Cancel", "cancelled": "โŒ Game cancelled", "not_enough_words": "โŒ Not enough words in vocabulary\n\nMinimum: {min} words\nYou have: {current}\n\nAdd words via /add or /words", "not_all_pairs": "โš ๏ธ Enter all pairs!\n\nEntered: {entered}\nNeeded: {needed}", "finished": "Game Over!", "score": "Score", "correct_pairs": "Correct pairs", "time": "Time", "results": "Results", "result": { "perfect": "๐ŸŽฏ Perfect! All pairs correct!", "excellent": "๐Ÿ”ฅ Excellent! Almost flawless!", "good": "๐Ÿ‘ Good result!", "practice": "๐Ÿ’ช Keep practicing!" } } } }