/*
**
** Copyright 2019, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/

/* Generated by generate-translations.py - DO NOT EDIT */

#include "ConfirmationUITranslations.h"
#include "string.h"

static const char* ConfirmationUITranslations_language_ids[] = {
  "en", /* untranslated */
  "af",
  "am",
  "ar",
  "ar-EG",
  "ar-JO",
  "ar-MA",
  "ar-SA",
  "ar-XB",
  "as",
  "az",
  "be",
  "bg",
  "bn",
  "bs",
  "ca",
  "cs",
  "da",
  "de",
  "de-AT",
  "de-CH",
  "el",
  "en-AU",
  "en-CA",
  "en-GB",
  "en-IE",
  "en-IN",
  "en-SG",
  "en-XA",
  "en-XC",
  "en-ZA",
  "es",
  "es-419",
  "es-AR",
  "es-BO",
  "es-CL",
  "es-CO",
  "es-CR",
  "es-DO",
  "es-EC",
  "es-GT",
  "es-HN",
  "es-MX",
  "es-NI",
  "es-PA",
  "es-PE",
  "es-PR",
  "es-PY",
  "es-SV",
  "es-US",
  "es-UY",
  "es-VE",
  "et",
  "eu",
  "fa",
  "fi",
  "fil",
  "fr",
  "fr-CA",
  "fr-CH",
  "gl",
  "gsw",
  "gu",
  "he",
  "hi",
  "hr",
  "hu",
  "hy",
  "id",
  "in",
  "is",
  "it",
  "iw",
  "ja",
  "ka",
  "kk",
  "km",
  "kn",
  "ko",
  "ky",
  "ln",
  "lo",
  "lt",
  "lv",
  "mk",
  "ml",
  "mn",
  "mo",
  "mr",
  "ms",
  "my",
  "nb",
  "ne",
  "nl",
  "no",
  "or",
  "pa",
  "pl",
  "pt",
  "pt-BR",
  "pt-PT",
  "ro",
  "ru",
  "si",
  "sk",
  "sl",
  "sq",
  "sr",
  "sr-Latn",
  "sv",
  "sw",
  "ta",
  "te",
  "th",
  "tl",
  "tr",
  "uk",
  "ur",
  "uz",
  "vi",
  "zh",
  "zh-CN",
  "zh-HK",
  "zh-TW",
  "zu",
  NULL,
};

#define ARRAY_ELEMENTS(arr) \
    (sizeof(arr)/sizeof(arr[0]))

#define ConfirmationUITranslations_NUM_LANGUAGE_IDS \
    (ARRAY_ELEMENTS(ConfirmationUITranslations_language_ids) - 1)

static const struct {
  const char* translation_id;
  const char* translations[ConfirmationUITranslations_NUM_LANGUAGE_IDS];
} ConfirmationUITranslations_translation_ids[] = {
  {
    "1424834532030812203",
    {
      "Double-press power to confirm", /* en (untranslated) */
      "Dubbeldruk aan/af-skakelaar om te bevestig", /* af */
      "ለማረጋገጥ ኃይልን ሁለቴ ይጫኑ", /* am */
      "اضغط على زر التشغيل مرتين لتأكيد الإجراء.", /* ar */
      "اضغط على زر التشغيل مرتين لتأكيد الإجراء.", /* ar-EG */
      "اضغط على زر التشغيل مرتين لتأكيد الإجراء.", /* ar-JO */
      "اضغط على زر التشغيل مرتين لتأكيد الإجراء.", /* ar-MA */
      "اضغط على زر التشغيل مرتين لتأكيد الإجراء.", /* ar-SA */
      "‏‮Double‬‏-‏‮press‬‏ ‏‮power‬‏ ‏‮to‬‏ ‏‮confirm‬‏", /* ar-XB */
      "নিশ্চিত কৰিবলৈ পাৱাৰ বুটামটো দুবাৰ হেঁচক", /* as */
      "Təsdiqləmək üçün iki dəfə yandırıb-söndürmək düyməsinə basın", /* az */
      "Двойчы націсніце кнопку сілкавання, каб пацвердзіць", /* be */
      "Натиснете два пъти бутона за захранване, за да потвърдите", /* bg */
      "নিশ্চিত করতে পাওয়ার বোতাম দুবার টিপুন", /* bn */
      "Dva puta pritisnite dugme za napajanje da potvrdite", /* bs */
      "Prem dos cops el botó d'engegada per confirmar", /* ca */
      "Potvrďte dvojitým stisknutím vypínače", /* cs */
      "Tryk to gange på afbryderknappen for at bekræfte", /* da */
      "Zum Bestätigen die Ein-/Aus-Taste zweimal drücken", /* de */
      "Zum Bestätigen die Ein-/Aus-Taste zweimal drücken", /* de-AT */
      "Zum Bestätigen die Ein-/Aus-Taste zweimal drücken", /* de-CH */
      "Πατήστε δύο φορές το κουμπί λειτουργίας για επιβεβαίωση", /* el */
      "Double-press power to confirm", /* en-AU */
      "Double-press power to confirm", /* en-CA */
      "Double-press power to confirm", /* en-GB */
      "Double-press power to confirm", /* en-IE */
      "Double-press power to confirm", /* en-IN */
      "Double-press power to confirm", /* en-SG */
      "[Ðöûбļé-þŕéšš þöŵéŕ ţö çöñƒîŕm one two three four five six seven]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‎‏‏‎‎‏‏‏‏‎‎‎‏‏‎‎‎‎‎‎‏‏‏‎‏‏‏‎‏‎‏‎‎‏‏‎‎‎‏‎‏‏‎‏‎‎‎‎‎‎‏‎‎‎‎‎‎‏‎‏‎‏‏‎Double-press power to confirm‎‏‎‎‏‎", /* en-XC */
      "Double-press power to confirm", /* en-ZA */
      "Pulsa dos veces el botón de encendido para confirmar", /* es */
      "Presiona dos veces el botón de encendido para confirmar", /* es-419 */
      "Presiona dos veces el botón de encendido para confirmar", /* es-AR */
      "Presiona dos veces el botón de encendido para confirmar", /* es-BO */
      "Presiona dos veces el botón de encendido para confirmar", /* es-CL */
      "Presiona dos veces el botón de encendido para confirmar", /* es-CO */
      "Presiona dos veces el botón de encendido para confirmar", /* es-CR */
      "Presiona dos veces el botón de encendido para confirmar", /* es-DO */
      "Presiona dos veces el botón de encendido para confirmar", /* es-EC */
      "Presiona dos veces el botón de encendido para confirmar", /* es-GT */
      "Presiona dos veces el botón de encendido para confirmar", /* es-HN */
      "Presiona dos veces el botón de encendido para confirmar", /* es-MX */
      "Presiona dos veces el botón de encendido para confirmar", /* es-NI */
      "Presiona dos veces el botón de encendido para confirmar", /* es-PA */
      "Presiona dos veces el botón de encendido para confirmar", /* es-PE */
      "Presiona dos veces el botón de encendido para confirmar", /* es-PR */
      "Presiona dos veces el botón de encendido para confirmar", /* es-PY */
      "Presiona dos veces el botón de encendido para confirmar", /* es-SV */
      "Presiona dos veces el botón de encendido para confirmar", /* es-US */
      "Presiona dos veces el botón de encendido para confirmar", /* es-UY */
      "Presiona dos veces el botón de encendido para confirmar", /* es-VE */
      "Kinnitamiseks topeltvajutage toitenuppu", /* et */
      "Berresteko, sakatu birritan pizteko botoia", /* eu */
      "برای تأیید، دکمه روشن/خاموش را دوبار فشار دهید", /* fa */
      "Vahvista painamalla virtapainiketta kahdesti", /* fi */
      "Pindutin nang dalawang beses ang power para kumpirmahin", /* fil */
      "Appuyez deux fois sur le bouton Marche/Arrêt pour confirmer l'opération", /* fr */
      "Appuyez deux fois sur l'interrupteur pour confirmer", /* fr-CA */
      "Appuyez deux fois sur le bouton Marche/Arrêt pour confirmer l'opération", /* fr-CH */
      "Preme o botón de acendido dúas veces para confirmar", /* gl */
      "Zum Bestätigen die Ein-/Aus-Taste zweimal drücken", /* gsw */
      "કન્ફર્મ કરવા માટે પાવર પર બે વાર ટૅપ કરો", /* gu */
      "יש ללחוץ פעמיים על לחצן ההפעלה כדי לאשר", /* he */
      "पुष्टि करने के लिए पावर बटन दो बार दबाएं", /* hi */
      "Dvaput pritisnite tipku za uključivanje/isključivanje da biste potvrdili", /* hr */
      "A megerősítéshez nyomja meg duplán a bekapcsológombot", /* hu */
      "Հաստատելու համար կրկնակի սեղմեք սնուցման կոճակը", /* hy */
      "Tekan dua kali tombol power untuk mengonfirmasi", /* id */
      "Tekan dua kali tombol power untuk mengonfirmasi", /* in */
      "Ýttu tvisvar á aflrofann til að staðfesta", /* is */
      "Premi due volte il tasto di accensione per confermare", /* it */
      "יש ללחוץ פעמיים על לחצן ההפעלה כדי לאשר", /* iw */
      "確認するには、電源を 2 回押します", /* ja */
      "დასადასტურებლად ორმაგად დააჭირეთ ჩართვის ღილაკს", /* ka */
      "Растау үшін қуат түймесін екі рет басыңыз", /* kk */
      "ចុច​ប៊ូតុង​ថាមពល​ពីរដង​ដើម្បី​បញ្ជាក់", /* km */
      "ದೃಢೀಕರಿಸಲು ಪವರ್‌ ಬಟನ್‌ ಅನ್ನು ಎರಡು ಬಾರಿ ಒತ್ತಿರಿ", /* kn */
      "확인하려면 전원 버튼을 두 번 누르세요.", /* ko */
      "Ырастоо үчүн \"Кубат\" баскычын эки жолу басыңыз", /* ky */
      "Appuyez deux fois sur le bouton Marche/Arrêt pour confirmer l'opération", /* ln */
      "ກົດປຸ່ມປິດເປີດເຄື່ອງສອງຄັ້ງເພື່ອຢືນຢັນ", /* lo */
      "Dukart paspauskite maitinimo mygtuką, kad patvirtintumėte", /* lt */
      "Lai apstiprinātu, divreiz nospiediet barošanas pogu", /* lv */
      "Притиснете на копчето за напојување двапати за да потврдите", /* mk */
      "സ്ഥിരീകരിക്കാൻ പവർ രണ്ടുതവണ അമർത്തുക", /* ml */
      "Баталгаажуулахын тулд унтраах/асаахыг хоёр удаа дарах", /* mn */
      "Apăsați de două ori butonul de pornire pentru a confirma", /* mo */
      "खात्री करण्‍यासाठी पॉवर बटण दोनदा दाबा", /* mr */
      "Tekan dua kali butang kuasa untuk mengesahkan", /* ms */
      "အတည်ပြုရန် ပါဝါခလုတ်ကို နှစ်ချက်နှိပ်ပါ", /* my */
      "Dobbelttrykk på av/på-knappen for å bekrefte", /* nb */
      "पुष्टि गर्न पावर बटनमा दुई पटक थिच्नुहोस्", /* ne */
      "Druk twee keer op de aan/uit-knop om te bevestigen", /* nl */
      "Dobbelttrykk på av/på-knappen for å bekrefte", /* no */
      "ସୁନିଶ୍ଚିତ କରିବା ପାଇଁ ପାୱାର୍‍ ବଟନ୍‍କୁ ଦୁଇଥର ଦବାନ୍ତୁ", /* or */
      "ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਪਾਵਰ ਬਟਨ ਨੂੰ ਦੋ ਬਾਰ ਦੱਬੋ", /* pa */
      "Kliknij dwukrotnie przycisk zasilania, by potwierdzić", /* pl */
      "Pressione o botão liga/desliga duas vezes para confirmar", /* pt */
      "Pressione o botão liga/desliga duas vezes para confirmar", /* pt-BR */
      "Prima duas vezes ligar/desligar para confirmar.", /* pt-PT */
      "Apăsați de două ori butonul de pornire pentru a confirma", /* ro */
      "Для подтверждения дважды нажмите кнопку питания.", /* ru */
      "තහවුරු කිරීමට බල බොත්තම දෙවරක් ඔබන්න", /* si */
      "Potvrďte dvojitým stlačením vypínača", /* sk */
      "Dvakrat pritisnite za potrditev", /* sl */
      "Shtyp dy herë butonin e energjisë për të konfirmuar", /* sq */
      "Двапут притисните дугме за напајање да бисте потврдили", /* sr */
      "Dvaput pritisnite dugme za napajanje da biste potvrdili", /* sr-Latn */
      "Bekräfta genom att trycka två gånger på avstängningsknappen", /* sv */
      "Bonyeza kitufe cha kuwasha mara mbili ili uthibitishe", /* sw */
      "உறுதிப்படுத்த, பவர் பட்டனை இருமுறை அழுத்தவும்", /* ta */
      "నిర్ధారించడానికి పవర్ బటన్‌ని రెండు సార్లు నొక్కండి", /* te */
      "กดปุ่มเปิด/ปิด 2 ครั้งเพื่อยืนยัน", /* th */
      "Pindutin nang dalawang beses ang power para kumpirmahin", /* tl */
      "Onaylamak için güç düğmesine iki kez basın", /* tr */
      "Двічі натисніть кнопку живлення, щоб підтвердити", /* uk */
      "تصدیق کرنے کے لئے پاور بٹن دوبار دبائیں", /* ur */
      "Tasdiqlash uchun quvvat tugmasini ikki marta bosing", /* uz */
      "Nhấn hai lần vào nút nguồn để xác nhận", /* vi */
      "连按两次电源按钮即可确认", /* zh */
      "连按两次电源按钮即可确认", /* zh-CN */
      "按兩下電源按鈕即可確認", /* zh-HK */
      "按兩下電源按鈕即可確認操作", /* zh-TW */
      "Cindezela kabili ukuze uqinisekise", /* zu */
    }
  },
  {
    "1796282799666106567",
    {
      "Cancel", /* en (untranslated) */
      "Kanselleer", /* af */
      "ይቅር", /* am */
      "إلغاء", /* ar */
      "إلغاء", /* ar-EG */
      "إلغاء", /* ar-JO */
      "إلغاء", /* ar-MA */
      "إلغاء", /* ar-SA */
      "‏‮Cancel‬‏", /* ar-XB */
      "বাতিল কৰক", /* as */
      "Ləğv edin", /* az */
      "Скасаваць", /* be */
      "Отказ", /* bg */
      "বাতিল করুন", /* bn */
      "Otkaži", /* bs */
      "Cancel·la", /* ca */
      "Zrušit", /* cs */
      "Annuller", /* da */
      "Abbrechen", /* de */
      "Abbrechen", /* de-AT */
      "Abbrechen", /* de-CH */
      "Ακύρωση", /* el */
      "Cancel", /* en-AU */
      "Cancel", /* en-CA */
      "Cancel", /* en-GB */
      "Cancel", /* en-IE */
      "Cancel", /* en-IN */
      "Cancel", /* en-SG */
      "[Çåñçéļ one]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‎‏‏‏‎‎‎‏‏‏‎‏‏‎‏‏‎‏‎‏‏‎‏‏‎‏‏‎‎‎‎‎‏‏‎‏‏‏‎‎‎‏‏‏‏‏‎‎‎‎‏‎‎‎‎‏‏‎‎‎‏‏‏‎Cancel‎‏‎‎‏‎", /* en-XC */
      "Cancel", /* en-ZA */
      "Cancelar", /* es */
      "Cancelar", /* es-419 */
      "Cancelar", /* es-AR */
      "Cancelar", /* es-BO */
      "Cancelar", /* es-CL */
      "Cancelar", /* es-CO */
      "Cancelar", /* es-CR */
      "Cancelar", /* es-DO */
      "Cancelar", /* es-EC */
      "Cancelar", /* es-GT */
      "Cancelar", /* es-HN */
      "Cancelar", /* es-MX */
      "Cancelar", /* es-NI */
      "Cancelar", /* es-PA */
      "Cancelar", /* es-PE */
      "Cancelar", /* es-PR */
      "Cancelar", /* es-PY */
      "Cancelar", /* es-SV */
      "Cancelar", /* es-US */
      "Cancelar", /* es-UY */
      "Cancelar", /* es-VE */
      "Tühista", /* et */
      "Utzi", /* eu */
      "لغو", /* fa */
      "Peruuta", /* fi */
      "Kanselahin", /* fil */
      "Annuler", /* fr */
      "Annuler", /* fr-CA */
      "Annuler", /* fr-CH */
      "Cancelar", /* gl */
      "Abbrechen", /* gsw */
      "રદ કરો", /* gu */
      "ביטול", /* he */
      "रद्द करें", /* hi */
      "Otkaži", /* hr */
      "Mégse", /* hu */
      "Չեղարկել", /* hy */
      "Batal", /* id */
      "Batal", /* in */
      "Hætta við", /* is */
      "Annulla", /* it */
      "ביטול", /* iw */
      "キャンセル", /* ja */
      "გაუქმება", /* ka */
      "Бас тарту", /* kk */
      "បោះបង់", /* km */
      "ರದ್ದು", /* kn */
      "취소", /* ko */
      "Жокко чыгаруу", /* ky */
      "Annuler", /* ln */
      "ຍົກເລີກ", /* lo */
      "Atšaukti", /* lt */
      "Atcelt", /* lv */
      "Откажи", /* mk */
      "റദ്ദാക്കുക", /* ml */
      "Болих", /* mn */
      "Anulați", /* mo */
      "रद्द करा", /* mr */
      "Batal", /* ms */
      "မလုပ်တော့", /* my */
      "Avbryt", /* nb */
      "रद्द गर्नुहोस्", /* ne */
      "Annuleren", /* nl */
      "Avbryt", /* no */
      "କ୍ୟାନ୍ସଲ୍‍ କରନ୍ତୁ", /* or */
      "ਰੱਦ ਕਰੋ", /* pa */
      "Anuluj", /* pl */
      "Cancelar", /* pt */
      "Cancelar", /* pt-BR */
      "Cancelar", /* pt-PT */
      "Anulați", /* ro */
      "Отмена", /* ru */
      "අවලංගු කරන්න", /* si */
      "Zrušiť", /* sk */
      "Prekliči", /* sl */
      "Anulo", /* sq */
      "Откажи", /* sr */
      "Otkaži", /* sr-Latn */
      "Avbryt", /* sv */
      "Ghairi", /* sw */
      "ரத்துசெய்", /* ta */
      "రద్దు చేయండి", /* te */
      "ยกเลิก", /* th */
      "Kanselahin", /* tl */
      "İptal", /* tr */
      "Скасувати", /* uk */
      "منسوخ کریں", /* ur */
      "Bekor qilish", /* uz */
      "Hủy", /* vi */
      "取消", /* zh */
      "取消", /* zh-CN */
      "取消", /* zh-HK */
      "取消", /* zh-TW */
      "Khansela", /* zu */
    }
  },
  {
    "217688588483778177",
    {
      "This confirmation provides an extra layer of security for the action you're about to take.", /* en (untranslated) */
      "Hierdie bevestiging verskaf 'n ekstra laag sekuriteit vir die handeling wat jy op die punt is om uit te voer.", /* af */
      "ይህ ማረጋገጫ እርስዎ ለሚወስዱት እርምጃ ተጨማሪ ትርፍ ጥበቃን ይሰጣል።", /* am */
      "يتيح هذا التأكيد تفعيل طبقة أمان إضافية للإجراء الذي توشك على اتخاذه.", /* ar */
      "يتيح هذا التأكيد تفعيل طبقة أمان إضافية للإجراء الذي توشك على اتخاذه.", /* ar-EG */
      "يتيح هذا التأكيد تفعيل طبقة أمان إضافية للإجراء الذي توشك على اتخاذه.", /* ar-JO */
      "يتيح هذا التأكيد تفعيل طبقة أمان إضافية للإجراء الذي توشك على اتخاذه.", /* ar-MA */
      "يتيح هذا التأكيد تفعيل طبقة أمان إضافية للإجراء الذي توشك على اتخاذه.", /* ar-SA */
      "‏‮This‬‏ ‏‮confirmation‬‏ ‏‮provides‬‏ ‏‮an‬‏ ‏‮extra‬‏ ‏‮layer‬‏ ‏‮of‬‏ ‏‮security‬‏ ‏‮for‬‏ ‏‮the‬‏ ‏‮action‬‏ ‏‮you‬‏'‏‮re‬‏ ‏‮about‬‏ ‏‮to‬‏ ‏‮take‬‏.", /* ar-XB */
      "এই প্ৰতিশ্ৰুতিয়ে আপুনি কৰিব বিচৰা কোনো কাৰ্যৰ বাবে অতিৰিক্ত সুৰক্ষা প্ৰদান কৰে।", /* as */
      "Bu təsdiq etmək üzrə olduğunuz əməliyyat üçün əlavə təhlükəsizlik qatı təmin edir.", /* az */
      "Гэта пацвярджэнне забяспечвае дадатковы ўзровень бяспекі для дзеянняў, якія вы збіраецеся выконваць.", /* be */
      "Това потвърждение осигурява допълнителна защита за действието, което сте напът да предприемете.", /* bg */
      "আপনি যে কাজটি করতে চলেছেন, এই কনফার্মেশনের ফলে সেটির জন্য অতিরিক্ত সুরক্ষার ব্যবস্থা করা হয়।", /* bn */
      "Ova potvrda pruža dodatni sloj zaštite za radnju koju namjeravate preduzeti.", /* bs */
      "Aquesta confirmació proporciona una capa de seguretat addicional per a l'acció que estàs a punt de dur a terme.", /* ca */
      "Toto potvrzení tvoří dodatečnou úroveň zabezpečení akce, kterou se chystáte podniknout.", /* cs */
      "Denne bekræftelse giver et ekstra beskyttelsesniveau for den handling, du er ved at foretage.", /* da */
      "Durch die Bestätigung wird bei der Aktion, die du durchführen möchtest, eine zusätzliche Sicherheitsmaßnahme angewandt.", /* de */
      "Durch die Bestätigung wird bei der Aktion, die du durchführen möchtest, eine zusätzliche Sicherheitsmaßnahme angewandt.", /* de-AT */
      "Durch die Bestätigung wird bei der Aktion, die du durchführen möchtest, eine zusätzliche Sicherheitsmassnahme angewandt.", /* de-CH */
      "Αυτή η επιβεβαίωση παρέχει ένα επιπλέον επίπεδο ασφάλειας για την ενέργεια που πρόκειται να εκτελέσετε.", /* el */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-AU */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-CA */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-GB */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-IE */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-IN */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-SG */
      "[Ţĥîš çöñƒîŕmåţîöñ þŕövîðéš åñ éxţŕå ļåýéŕ öƒ šéçûŕîţý ƒöŕ ţĥé åçţîöñ ýöû'ŕé åбöûţ ţö ţåķé. one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‎‏‎‏‏‎‎‎‎‎‏‎‏‎‏‏‎‎‎‏‎‏‎‎‏‏‏‏‎‎‎‏‎‏‏‎‎‎‎‏‏‏‎‏‏‎‏‎‏‎‏‏‎‏‎‎‎‎‎‎‏‎This confirmation provides an extra layer of security for the action you're about to take.‎‏‎‎‏‎", /* en-XC */
      "This confirmation provides an extra layer of security for the action that you're about to take.", /* en-ZA */
      "Esta confirmación proporciona una capa de seguridad adicional a la acción que vas a realizar.", /* es */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-419 */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-AR */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-BO */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-CL */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-CO */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-CR */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-DO */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-EC */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-GT */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-HN */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-MX */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-NI */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-PA */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-PE */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-PR */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-PY */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-SV */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-US */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-UY */
      "Esta confirmación proporciona un nivel de seguridad adicional para la acción que estás por realizar.", /* es-VE */
      "See kinnitus annab veel ühe turvakihi toimingu puhul, mille nüüd teete.", /* et */
      "Berrespen honek segurtasun handiagoa ematen dizu hurrengo ekintza gauzatzeko.", /* eu */
      "این تأیید یک لایه امنیتی اضافی برای کنشی که می‌خواهید انجام دهید فراهم می‌کند.", /* fa */
      "Tämä vahvistus tarkoittaa, että seuraava toimintosi on entistä paremmin suojattu.", /* fi */
      "Ang pagkumpirmang ito ay nagbibigay ng karagdagang layer ng seguridad para sa pagkilos na gagawin mo.", /* fil */
      "Cette confirmation ajoute un niveau de sécurité supplémentaire à l'action que vous êtes sur le point d'effectuer.", /* fr */
      "Cette confirmation fournit une couche supplémentaire de sécurité pour l'action que vous êtes sur le point d'effectuer.", /* fr-CA */
      "Cette confirmation ajoute un niveau de sécurité supplémentaire à l'action que vous êtes sur le point d'effectuer.", /* fr-CH */
      "Esta confirmación proporciona unha capa adicional de seguranza para a acción que estás a piques de levar a cabo.", /* gl */
      "Durch die Bestätigung wird bei der Aktion, die du durchführen möchtest, eine zusätzliche Sicherheitsmaßnahme angewandt.", /* gsw */
      "તમે જે ક્રિયા કરવાના છો તેના માટે આ કન્ફર્મેશન એક અતિરિક્ત સુરક્ષાનું સ્તર પ્રદાન કરે છે.", /* gu */
      "אישור זה מספק שכבת אבטחה נוספת לפעולה שאתה עומד לבצע.", /* he */
      "यह पुष्टि मिलने पर आप जो काम करने वाले हैं, उसके लिए सुरक्षा और बढ़ जाती है.", /* hi */
      "Ta potvrda pruža dodatan sloj zaštite za radnju koju ćete izvršiti.", /* hr */
      "Ez a megerősítés extra réteg biztonságot nyújt a végrehajtani kívánt művelet számára.", /* hu */
      "Այս հաստատումն ապահովում է պաշտպանության լրացուցիչ մակարդակ՝ նախքան գործողություն կատարելը", /* hy */
      "Konfirmasi ini memberikan lapisan keamanan tambahan untuk tindakan yang akan Anda ambil.", /* id */
      "Konfirmasi ini memberikan lapisan keamanan tambahan untuk tindakan yang akan Anda ambil.", /* in */
      "Þessi staðfesting veitir aukið öryggi fyrir aðgerðina sem þú ert að fara að framkvæma.", /* is */
      "Questa conferma garantisce un ulteriore livello di sicurezza per l'azione che stai per compiere.", /* it */
      "אישור זה מספק שכבת אבטחה נוספת לפעולה שאתה עומד לבצע.", /* iw */
      "この確認により、これから行う操作のセキュリティが強化されます。", /* ja */
      "დადასტურება უსაფრთხოების დამატებით შრეს უზრუნველყოფს იმ ქმედების განსახორციელებლად, რომელსაც აპირებთ.", /* ka */
      "Бұл растау функциясы орындағалы тұрған әрекеттің қауіпсіздігін қосымша күшейтеді.", /* kk */
      "ការបញ្ជាក់នេះ​ផ្ដល់ស្រទាប់​សុវត្ថិភាព​បន្ថែម​សម្រាប់​សកម្មភាព​ដែលអ្នកហៀប​នឹងធ្វើ។", /* km */
      "ಈ ದೃಢೀಕರಣವು ನೀವು ನಿರ್ವಹಿಸಲು ಬಯಸುವ ಕ್ರಿಯೆಗೆ ಹೆಚ್ಚುವರಿ ಸುರಕ್ಷತೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ.", /* kn */
      "이 확인 단계를 사용하면 실행하려는 작업의 보안을 한층 강화할 수 있습니다.", /* ko */
      "Бул ырастоо сиз аткара турган аракеттин коопсуздугун коргоонун дагы бир катмарын камсыздайт.", /* ky */
      "Cette confirmation ajoute un niveau de sécurité supplémentaire à l'action que vous êtes sur le point d'effectuer.", /* ln */
      "ການຢືນຢັນນີ້ຈະເພີ່ມຄວາມປອດໄພເພີ່ມເຕີມອີກໜຶ່ງຊັ້ນໃຫ້ກັບຄຳສັ່ງທີ່ທ່ານກຳລັງຈະໃຊ້.", /* lo */
      "Naudojant šį patvirtinimą, veiksmui, kurį ketinate atlikti, taikomas papildomas saugos lygmuo.", /* lt */
      "Šis apstiprinājums sniedz papildu aizsardzību darbībai, kuru veiksiet.", /* lv */
      "Оваа потврда обезбедува дополнителен слој на безбедност за дејството што ќе го преземете.", /* mk */
      "നിങ്ങൾ സ്വീകരിക്കാൻ പോകുന്ന നടപടിക്കായി, ഈ സ്ഥിരീകരണം ഒരു അധിക സുരക്ഷാ പാളി നൽകുന്നു.", /* ml */
      "Энэ баталгаажуулалт нь таны авах гэж буй арга хэмжээнд хамгаалалтын нэмэлт давхаргыг олгодог.", /* mn */
      "Această confirmare oferă un nivel suplimentar de securitate pentru acțiunea pe care urmează să o faceți.", /* mo */
      "हे निश्चित झाल्‍यावर, तुम्‍ही जे काम करणार आहात, त्‍यासाठी सुरक्षा आणखी वाढते.", /* mr */
      "Pengesahan ini memberikan lapisan keselamatan tambahan untuk tindakan yang akan anda ambil.", /* ms */
      "ဤအတည်ပြုချက်က သင်ပြုလုပ်တော့မည့် လုပ်ဆောင်ချက်အတွက် အပိုဆောင်းလုံခြုံရေးကို ပေးထားသည်။", /* my */
      "Denne bekreftelsen gir et ekstra sikkerhetslag for handlingen du er i ferd med å utføre.", /* nb */
      "यो पुष्टिले तपाईंले गर्न ऑंट्नुभएको कारबाहीका लागि सुरक्षाको अतिरिक्त तह प्रदान गर्छ।", /* ne */
      "Deze bevestiging biedt een extra beveiligingslaag voor de actie die je wilt uitvoeren.", /* nl */
      "Denne bekreftelsen gir et ekstra sikkerhetslag for handlingen du er i ferd med å utføre.", /* no */
      "ଏହି ସୁନିଶ୍ଚିତତା, ଆପଣ କରିବାକୁ ଯାଉଥିବା କାର୍ଯ୍ୟ ପାଇଁ ଅତିରିକ୍ତ ସୁରକ୍ଷା ପରତ ପ୍ରଦାନ କରିଥାଏ।", /* or */
      "ਇਹ ਪੁਸ਼ਟੀਕਰਨ ਤੁਹਾਡੇ ਵੱਲੋਂ ਕਾਰਵਾਈ ਨੂੰ ਕੀਤੇ ਜਾਣ ਲਈ ਸੁਰੱਖਿਆ ਦੇ ਇੱਕ ਵਾਧੂ ਪੱਧਰ ਮੁਹੱਈਆ ਕਰਦੀ ਹੈ।", /* pa */
      "To potwierdzenie stanowi dodatkowe zabezpieczenie czynności, którą zamierzasz wykonać.", /* pl */
      "Essa confirmação oferece uma camada adicional de segurança para a ação que você está prestes a realizar.", /* pt */
      "Essa confirmação oferece uma camada adicional de segurança para a ação que você está prestes a realizar.", /* pt-BR */
      "Esta confirmação oferece um nível extra de segurança para a ação que está prestes a realizar.", /* pt-PT */
      "Această confirmare oferă un nivel suplimentar de securitate pentru acțiunea pe care urmează să o faceți.", /* ro */
      "Дополнительный уровень защиты для действия, которое вы собираетесь выполнить.", /* ru */
      "මෙම තහවුරු කිරිම ඔබ ගැනීමට යන ක්‍රියාමාර්ගය සඳහා ආරක්ෂාව පිළිබඳ අමතර ස්තරයක් සපයයි.", /* si */
      "Toto potvrdenie zaistí dodatočnú úroveň zabezpečenia akcie, ktorú sa chystáte vykonať.", /* sk */
      "Ta potrditev zagotavlja dodatno plast zaščite za dejanje, ki ga boste izvedli.", /* sl */
      "Konfirmim ofron një shtresë sigurie shtesë për veprimin që je gati për të ndërmarrë.", /* sq */
      "Ова потврда пружа додатни слој безбедности за радњу коју се спремате да извршите.", /* sr */
      "Ova potvrda pruža dodatni sloj bezbednosti za radnju koju se spremate da izvršite.", /* sr-Latn */
      "Bekräftelsen ger extra skydd för åtgärden du ska vidta.", /* sv */
      "Uthibitishaji huu hutoa ulinzi zaidi wa usalama kwa hatua unayotaka kuchukua.", /* sw */
      "நீங்கள் மேற்கொள்ளவிருக்கும் செயலுக்கு, கூடுதல் பாதுகாப்பை இந்த உறுதிப்படுத்தல் வழங்கும்.", /* ta */
      "ఈ నిర్ధారణ మీరు తీసుకోబోయే చర్య కోసం అదనపు భద్రతా లేయర్‌ను అందిస్తుంది.", /* te */
      "การยืนยันนี้จะช่วยเพิ่มความปลอดภัยอีกขั้นสำหรับสิ่งที่คุณกำลังจะดำเนินการ", /* th */
      "Ang pagkumpirmang ito ay nagbibigay ng karagdagang layer ng seguridad para sa pagkilos na gagawin mo.", /* tl */
      "Bu onay, yapmak üzere olduğunuz işlem için ek güvenlik katmanı sağlar.", /* tr */
      "Це підтвердження є додатковим рівнем захисту, коли ви збираєтеся виконати дію.", /* uk */
      "آپ جو کارروائی کرنے والے ہیں اس کے لئے یہ تصدیق ایک اضافی پرت فراہم کرتی ہے۔", /* ur */
      "Tasdiqlangandan keyin bajarilayotgan amal uchun qo‘shimcha xavfsizlik qatlami taqdim etiladi.", /* uz */
      "Xác nhận này cung cấp thêm một lớp bảo mật cho hành động bạn sắp thực hiện.", /* vi */
      "这项确认可为您即将执行的操作增添一层额外的安全保障。", /* zh */
      "这项确认可为您即将执行的操作增添一层额外的安全保障。", /* zh-CN */
      "此確認可為你即將執行的操作提供額外安全保障。", /* zh-HK */
      "這項確認作業可為你即將執行的動作提供多一層安全保障。", /* zh-TW */
      "Lokhu kuqinisekiswa kunikeza isendlalelo esingeziwe sokuvikelwa sesenzo osuzosithatha.", /* zu */
    }
  },
  {
    "2181224373757710937",
    {
      "Press power to confirm", /* en (untranslated) */
      "Druk aan/af-skakelaar om te bevestig", /* af */
      "ለማረጋገጥ ኃይልን ይጫኑ", /* am */
      "اضغط على زر التشغيل لتأكيد الإجراء.", /* ar */
      "اضغط على زر التشغيل لتأكيد الإجراء.", /* ar-EG */
      "اضغط على زر التشغيل لتأكيد الإجراء.", /* ar-JO */
      "اضغط على زر التشغيل لتأكيد الإجراء.", /* ar-MA */
      "اضغط على زر التشغيل لتأكيد الإجراء.", /* ar-SA */
      "‏‮Press‬‏ ‏‮power‬‏ ‏‮to‬‏ ‏‮confirm‬‏", /* ar-XB */
      "নিশ্চিত কৰিবলৈ পাৱাৰ বুটাম হেঁচক", /* as */
      "Təsdiq etmək üçün yandırıb-söndürmə düyməsinə basın", /* az */
      "Націсніце кнопку сілкавання, каб пацвердзіць", /* be */
      "Натиснете бутона за захранване, за да потвърдите", /* bg */
      "নিশ্চিত করতে পাওয়ার বোতাম টিপুন", /* bn */
      "Pritisnite dugme za napajanje za potvrdu", /* bs */
      "Prem el botó d'engegada per confirmar", /* ca */
      "Potvrďte stisknutím vypínače", /* cs */
      "Tryk på afbryderknappen for at bekræfte", /* da */
      "Drücke zum Bestätigen die Ein-/Aus-Taste", /* de */
      "Drücke zum Bestätigen die Ein-/Aus-Taste", /* de-AT */
      "Drücke zum Bestätigen die Ein-/Aus-Taste", /* de-CH */
      "Πατήστε το κουμπί λειτουργίας για επιβεβαίωση", /* el */
      "Press power to confirm", /* en-AU */
      "Press power to confirm", /* en-CA */
      "Press power to confirm", /* en-GB */
      "Press power to confirm", /* en-IE */
      "Press power to confirm", /* en-IN */
      "Press power to confirm", /* en-SG */
      "[Þŕéšš þöŵéŕ ţö çöñƒîŕm one two three four five]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‎‏‏‏‏‏‎‎‏‎‎‎‏‎‏‎‏‎‎‎‏‎‎‎‎‎‎‎‎‏‎‏‏‏‎‎‏‎‏‎‏‎‎‎‎‎‎‏‎‎‏‎‎‏‎‎‏‎‏‏‎‎‏‎Press power to confirm‎‏‎‎‏‎", /* en-XC */
      "Press power to confirm", /* en-ZA */
      "Pulsa el botón de encendido para confirmar", /* es */
      "Presiona el botón de encendido para confirmar", /* es-419 */
      "Presiona el botón de encendido para confirmar", /* es-AR */
      "Presiona el botón de encendido para confirmar", /* es-BO */
      "Presiona el botón de encendido para confirmar", /* es-CL */
      "Presiona el botón de encendido para confirmar", /* es-CO */
      "Presiona el botón de encendido para confirmar", /* es-CR */
      "Presiona el botón de encendido para confirmar", /* es-DO */
      "Presiona el botón de encendido para confirmar", /* es-EC */
      "Presiona el botón de encendido para confirmar", /* es-GT */
      "Presiona el botón de encendido para confirmar", /* es-HN */
      "Presiona el botón de encendido para confirmar", /* es-MX */
      "Presiona el botón de encendido para confirmar", /* es-NI */
      "Presiona el botón de encendido para confirmar", /* es-PA */
      "Presiona el botón de encendido para confirmar", /* es-PE */
      "Presiona el botón de encendido para confirmar", /* es-PR */
      "Presiona el botón de encendido para confirmar", /* es-PY */
      "Presiona el botón de encendido para confirmar", /* es-SV */
      "Presiona el botón de encendido para confirmar", /* es-US */
      "Presiona el botón de encendido para confirmar", /* es-UY */
      "Presiona el botón de encendido para confirmar", /* es-VE */
      "Kinnitamiseks vajutage toitenuppu", /* et */
      "Berresteko, sakatu etengailua", /* eu */
      "برای تأیید، دکمه روشن/خاموش را فشار دهید", /* fa */
      "Vahvista painamalla virtapainiketta", /* fi */
      "Pindutin ang power para kumpirmahin", /* fil */
      "Appuyez sur le bouton Marche/Arrêt pour confirmer l'opération", /* fr */
      "Appuyez sur l'interrupteur pour confirmer", /* fr-CA */
      "Appuyez sur le bouton Marche/Arrêt pour confirmer l'opération", /* fr-CH */
      "Preme o botón de acendido para confirmar", /* gl */
      "Drücke zum Bestätigen die Ein-/Aus-Taste", /* gsw */
      "કન્ફર્મ કરવા માટે પાવર બટન દબાવો", /* gu */
      "יש ללחוץ על לחצן ההפעלה כדי לאשר", /* he */
      "पुष्टि करने के लिए पावर बटन दबाएं", /* hi */
      "Pritisnite tipku za uključivanje/isključivanje da biste potvrdili", /* hr */
      "Nyomja meg a bekapcsológombot a megerősítéshez", /* hu */
      "Հաստատելու համար սեղմեք սնուցման կոճակը", /* hy */
      "Tekan tombol power untuk mengonfirmasi", /* id */
      "Tekan tombol power untuk mengonfirmasi", /* in */
      "Ýttu á aflrofann til að staðfesta", /* is */
      "Premi il tasto di accensione per confermare", /* it */
      "יש ללחוץ על לחצן ההפעלה כדי לאשר", /* iw */
      "確認するには、電源を押します", /* ja */
      "დასადასტურებლად დააჭირეთ ჩართვის ღილაკს", /* ka */
      "Растау үшін қуат түймесін басыңыз", /* kk */
      "ចុច​ប៊ូតុង​ថាមពល​ដើម្បី​បញ្ជាក់", /* km */
      "ದೃಢೀಕರಿಸಲು ಪವರ್ ಬಟನ್ ಒತ್ತಿರಿ", /* kn */
      "확인하려면 전원 버튼을 누르세요.", /* ko */
      "Ырастоо үчүн \"Кубат\" баскычын басыңыз", /* ky */
      "Appuyez sur le bouton Marche/Arrêt pour confirmer l'opération", /* ln */
      "ກົດປຸ່ມເປີດປິດເພື່ອຢືນຢັນ", /* lo */
      "Paspauskite maitinimo mygtuką, kad patvirtintumėte", /* lt */
      "Lai apstiprinātu, nospiediet barošanas pogu", /* lv */
      "Притиснете на копчето за напојување за да потврдите", /* mk */
      "സ്ഥിരീകരിക്കാൻ പവർ അമർത്തുക", /* ml */
      "Баталгаажуулахын тулд унтраах/асаахыг дарах", /* mn */
      "Apăsați butonul de pornire pentru a confirma", /* mo */
      "निश्चित करण्‍यासाठी पॉवर दाबा", /* mr */
      "Tekan kuasa untuk mengesahkan", /* ms */
      "အတည်ပြုရန် ပါဝါခလုတ်နှိပ်ပါ", /* my */
      "Trykk på av/på-knappen for å bekrefte", /* nb */
      "पुष्टि गर्न पावर बटनमा थिच्नुहोस्", /* ne */
      "Druk op de aan/uit-knop om te bevestigen", /* nl */
      "Trykk på av/på-knappen for å bekrefte", /* no */
      "ସୁନିଶ୍ଚିତ କରିବା ପାଇଁ ପାୱର୍‌ ବଟନ୍‌କୁ ଦାବନ୍ତୁ", /* or */
      "ਪੁਸ਼ਟੀ ਕਰਨ ਲਈ ਪਾਵਰ ਬਟਨ ਦਬਾਓ", /* pa */
      "Naciśnij przycisk zasilania, aby potwierdzić", /* pl */
      "Pressione o botão liga/desliga para confirmar", /* pt */
      "Pressione o botão liga/desliga para confirmar", /* pt-BR */
      "Prima ligar/desligar para confirmar.", /* pt-PT */
      "Apăsați butonul de pornire pentru a confirma", /* ro */
      "Для подтверждения нажмите кнопку питания.", /* ru */
      "තහවුරු කිරීමට බල බොත්තම ඔබන්න", /* si */
      "Potvrďte stlačením vypínača", /* sk */
      "Za potrditev pritisnite gumb za vklop", /* sl */
      "Shtyp butonin e energjisë për të konfirmuar", /* sq */
      "Притисните дугме за напајање да бисте потврдили", /* sr */
      "Pritisnite dugme za napajanje da biste potvrdili", /* sr-Latn */
      "Bekräfta genom att trycka på strömbrytaren", /* sv */
      "Bonyeza kitufe cha kuwasha ili uthibitishe", /* sw */
      "உறுதிப்படுத்த, பவரை அழுத்தவும்", /* ta */
      "నిర్ధారించడానికి పవర్‌ను నొక్కండి", /* te */
      "กดปุ่มเปิด/ปิดเพื่อยืนยัน", /* th */
      "Pindutin ang power para kumpirmahin", /* tl */
      "Onaylamak için güç düğmesine basın", /* tr */
      "Натисніть кнопку живлення, щоб підтвердити", /* uk */
      "تصدیق کرنے کے لئے پاور بٹن دبائیں", /* ur */
      "Tasdiqlash uchun quvvat tugmasini bosing", /* uz */
      "Nhấn vào nút nguồn để xác nhận", /* vi */
      "按电源按钮即可确认", /* zh */
      "按电源按钮即可确认", /* zh-CN */
      "按下電源按鈕即可確認", /* zh-HK */
      "按下電源按鈕即可確認操作", /* zh-TW */
      "Cindezela amandla ukuze uqinisekise", /* zu */
    }
  },
  {
    "2213954494039981979",
    {
      "Press any volume button to cancel", /* en (untranslated) */
      "Druk enige volumeknoppie om te kanselleer", /* af */
      "ለመሰረዝ ማናቸውንም የድምፅ አዝራር ይጫኑ", /* am */
      "اضغط على أي زر من أزرار مستوى الصوت لإلغاء الإجراء.", /* ar */
      "اضغط على أي زر من أزرار مستوى الصوت لإلغاء الإجراء.", /* ar-EG */
      "اضغط على أي زر من أزرار مستوى الصوت لإلغاء الإجراء.", /* ar-JO */
      "اضغط على أي زر من أزرار مستوى الصوت لإلغاء الإجراء.", /* ar-MA */
      "اضغط على أي زر من أزرار مستوى الصوت لإلغاء الإجراء.", /* ar-SA */
      "‏‮Press‬‏ ‏‮any‬‏ ‏‮volume‬‏ ‏‮button‬‏ ‏‮to‬‏ ‏‮cancel‬‏", /* ar-XB */
      "বাতিল কৰিবলৈ যিকোনো ভলিউম বুটাম হেঁচক", /* as */
      "Ləğv etmək üçün istənilən səs düyməsinə basın", /* az */
      "Націсніце любую кнопку гучнасці, каб cкасаваць", /* be */
      "Натиснете някой от бутоните за силата на звука, за да анулирате", /* bg */
      "বাতিল করতে ভলিউমের যেকোনও বোতাম টিপুন", /* bn */
      "Pritisnite bilo koje dugme za podešavanje jačine zvuka da otkažete", /* bs */
      "Prem qualsevol botó de volum per cancel·lar", /* ca */
      "Zrušte stisknutím tlačítka hlasitosti", /* cs */
      "Tryk på en af lydstyrkeknapperne for at annullere", /* da */
      "Zum Abbrechen eine beliebige Lautstärketaste drücken", /* de */
      "Zum Abbrechen eine beliebige Lautstärketaste drücken", /* de-AT */
      "Zum Abbrechen eine beliebige Lautstärketaste drücken", /* de-CH */
      "Πατήστε οποιοδήποτε κουμπί έντασης ήχου για ακύρωση", /* el */
      "Press any volume button to cancel", /* en-AU */
      "Press any volume button to cancel", /* en-CA */
      "Press any volume button to cancel", /* en-GB */
      "Press any volume button to cancel", /* en-IE */
      "Press any volume button to cancel", /* en-IN */
      "Press any volume button to cancel", /* en-SG */
      "[Þŕéšš åñý vöļûmé бûţţöñ ţö çåñçéļ one two three four five six seven]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‎‏‏‏‏‏‎‏‎‏‏‏‎‎‏‏‎‎‎‏‎‏‏‏‏‏‎‎‎‎‏‏‏‎‏‏‏‏‎‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‏‎Press any volume button to cancel‎‏‎‎‏‎", /* en-XC */
      "Press any volume button to cancel", /* en-ZA */
      "Pulsa cualquier botón de volumen para cancelar", /* es */
      "Presiona cualquier botón de volumen para cancelar", /* es-419 */
      "Presiona cualquier botón de volumen para cancelar", /* es-AR */
      "Presiona cualquier botón de volumen para cancelar", /* es-BO */
      "Presiona cualquier botón de volumen para cancelar", /* es-CL */
      "Presiona cualquier botón de volumen para cancelar", /* es-CO */
      "Presiona cualquier botón de volumen para cancelar", /* es-CR */
      "Presiona cualquier botón de volumen para cancelar", /* es-DO */
      "Presiona cualquier botón de volumen para cancelar", /* es-EC */
      "Presiona cualquier botón de volumen para cancelar", /* es-GT */
      "Presiona cualquier botón de volumen para cancelar", /* es-HN */
      "Presiona cualquier botón de volumen para cancelar", /* es-MX */
      "Presiona cualquier botón de volumen para cancelar", /* es-NI */
      "Presiona cualquier botón de volumen para cancelar", /* es-PA */
      "Presiona cualquier botón de volumen para cancelar", /* es-PE */
      "Presiona cualquier botón de volumen para cancelar", /* es-PR */
      "Presiona cualquier botón de volumen para cancelar", /* es-PY */
      "Presiona cualquier botón de volumen para cancelar", /* es-SV */
      "Presiona cualquier botón de volumen para cancelar", /* es-US */
      "Presiona cualquier botón de volumen para cancelar", /* es-UY */
      "Presiona cualquier botón de volumen para cancelar", /* es-VE */
      "Tühistamiseks vajutage mis tahes helitugevuse nuppu", /* et */
      "Bertan behera uzteko, sakatu bolumen-tekla bat", /* eu */
      "برای لغو، یکی از دکمه‌های میزان صدا را فشار دهید", /* fa */
      "Peruuta painamalla äänenvoimakkuuspainiketta", /* fi */
      "Pindutin ang anumang button ng volume para kanselahin", /* fil */
      "Appuyez sur l'un des boutons de volume pour annuler l'opération", /* fr */
      "Appuyez sur un bouton de volume pour annuler l'action", /* fr-CA */
      "Appuyez sur l'un des boutons de volume pour annuler l'opération", /* fr-CH */
      "Preme calquera botón de volume para cancelar", /* gl */
      "Zum Abbrechen eine beliebige Lautstärketaste drücken", /* gsw */
      "રદ કરવા માટે કોઈપણ વૉલ્યૂમનું બટન દબાવો", /* gu */
      "יש ללחוץ על לחצן כלשהו של עוצמת הקול כדי לבטל", /* he */
      "रद्द करने के लिए कोई भी वॉल्यूम बटन दबाएं", /* hi */
      "Pritisnite bilo koju tipku za glasnoću da biste otkazali", /* hr */
      "Nyomja meg valamelyik hangerőgombot az elvetéshez", /* hu */
      "Չեղարկելու համար սեղմեք ձայնի կագավորման որևէ կոճակ", /* hy */
      "Tekan tombol volume apa saja untuk membatalkan", /* id */
      "Tekan tombol volume apa saja untuk membatalkan", /* in */
      "Ýttu á hvaða hljóðstyrkshnapp sem er til að hætta við", /* is */
      "Premi qualsiasi pulsante del volume per annullare", /* it */
      "יש ללחוץ על לחצן כלשהו של עוצמת הקול כדי לבטל", /* iw */
      "キャンセルするには、いずれかの音量ボタンを押します", /* ja */
      "გასაუქმებლად დააჭირეთ ხმის რეგულირების ნებისმიერ ღილაკს", /* ka */
      "Бас тарту үшін кез келген дыбыс деңгейі түймесін басыңыз", /* kk */
      "ចុចប៊ូតុង​កម្រិតសំឡេង​ណាមួយ​ដើម្បីបោះបង់", /* km */
      "ರದ್ದುಗೊಳಿಸಲು ಯಾವುದೇ ವಾಲ್ಯೂಮ್‌ ಬಟನ್ ಒತ್ತಿರಿ", /* kn */
      "취소하려면 볼륨 버튼 중 하나를 누르세요.", /* ko */
      "Жокко чыгаруу үчүн үн көлөмүнүн баскычтарынын бирин басыңыз", /* ky */
      "Appuyez sur l'un des boutons de volume pour annuler l'opération", /* ln */
      "ກົດປຸ່ມສຽງຂຶ້ນ ຫຼື ລົງເພື່ອຍົກເລີກ", /* lo */
      "Paspauskite bet kurį garsumo mygtuką, kad atšauktumėte", /* lt */
      "Lai atceltu, nospiediet jebkuru skaļuma pogu", /* lv */
      "Притиснете на кое било копче за јачина на звук за да откажете", /* mk */
      "റദ്ദാക്കാൻ എതെങ്കിലും വോളിയം ബട്ടൺ അമർത്തുക", /* ml */
      "Болихын тулд дууны түвшний товчлуурын аль нэгийг нь дарах", /* mn */
      "Apăsați orice buton de volum pentru a anula", /* mo */
      "रद्द करण्‍यासाठी कोणतेही व्‍हॉल्‍यूम बटण दाबा", /* mr */
      "Tekan sebarang butang kelantangan untuk membatalkan tindakan", /* ms */
      "ပယ်ဖျက်ရန် အသံအတိုးအကျယ်ခလုတ် တစ်ခုခုကိုနှိပ်ပါ", /* my */
      "Trykk på en volumknapp for å avbryte", /* nb */
      "रद्द गर्नका लागि कुनै भोल्युम बटन थिच्नुहोस्", /* ne */
      "Druk op een volumeknop om te annuleren", /* nl */
      "Trykk på en volumknapp for å avbryte", /* no */
      "କ୍ୟାନ୍ସଲ୍ କରିବା ପାଇଁ ଯେକୌଣସି ଭଲ୍ୟୁମ୍ ବଟନ୍‌କୁ ଦାବନ୍ତୁ", /* or */
      "ਰੱਦ ਕਰਨ ਲਈ ਕਿਸੇ ਵੀ ਵੌਲਿਊਮ ਬਟਨ ਨੂੰ ਦਬਾਓ", /* pa */
      "Naciśnij dowolny przycisk głośności, aby anulować", /* pl */
      "Pressione um dos botões de volume para cancelar", /* pt */
      "Pressione um dos botões de volume para cancelar", /* pt-BR */
      "Prima qualquer botão de volume para cancelar.", /* pt-PT */
      "Apăsați orice buton de volum pentru a anula", /* ro */
      "Для отмены нажмите на любую кнопку регулировки громкости.", /* ru */
      "අවලංගු කිරීමට ඕනෑම හඬ පරිමා බොත්තමක් ඔබන්න", /* si */
      "Zrušte stlačením ľubovoľného tlačidla hlasitosti", /* sk */
      "Za preklic pritisnite poljuben gumb za glasnost", /* sl */
      "Shtyp çdo buton volumi për ta anuluar", /* sq */
      "Притисните било које дугме за јачину звука да бисте отказали", /* sr */
      "Pritisnite bilo koje dugme za jačinu zvuka da biste otkazali", /* sr-Latn */
      "Avbryt genom att trycka på valfri volymknapp", /* sv */
      "Bonyeza kitufe chochote cha sauti ili ughairi", /* sw */
      "ரத்துசெய்ய, ஏதேனும் ஒலியளவு பட்டனை அழுத்தவும்", /* ta */
      "రద్దు చేయడానికి ఏదైనా వాల్యూమ్ బటన్‌ను నొక్కండి", /* te */
      "กดปุ่มปรับระดับเสียงเพื่อยกเลิก", /* th */
      "Pindutin ang anumang button ng volume para kanselahin", /* tl */
      "İptal etmek için herhangi bir ses düğmesine basın", /* tr */
      "Натисніть будь-яку клавішу гучності, щоб скасувати", /* uk */
      "منسوخ کرنے کے لئے کوئی بھی والیوم بٹن دبائیں", /* ur */
      "Bekor qilish uchun istalgan tovush tugmasini bosing", /* uz */
      "Nhấn vào nút âm lượng bất kỳ để hủy", /* vi */
      "按任意音量按钮即可取消", /* zh */
      "按任意音量按钮即可取消", /* zh-CN */
      "按下任何音量按鈕即可取消", /* zh-HK */
      "按下任一音量按鈕即可取消操作", /* zh-TW */
      "Cindezela noma iyiphi inkinobho yevolumu ukuze ukhansele", /* zu */
    }
  },
  {
    "3999296476990449149",
    {
      "Cancel", /* en (untranslated) */
      "Kanselleer", /* af */
      "ይቅር", /* am */
      "إلغاء", /* ar */
      "إلغاء", /* ar-EG */
      "إلغاء", /* ar-JO */
      "إلغاء", /* ar-MA */
      "إلغاء", /* ar-SA */
      "‏‮Cancel‬‏", /* ar-XB */
      "বাতিল কৰক", /* as */
      "Ləğv edin", /* az */
      "Скасаваць", /* be */
      "Отказ", /* bg */
      "বাতিল করুন", /* bn */
      "Otkaži", /* bs */
      "Cancel·la", /* ca */
      "Zrušit", /* cs */
      "Annuller", /* da */
      "Abbrechen", /* de */
      "Abbrechen", /* de-AT */
      "Abbrechen", /* de-CH */
      "Ακύρωση", /* el */
      "Cancel", /* en-AU */
      "Cancel", /* en-CA */
      "Cancel", /* en-GB */
      "Cancel", /* en-IE */
      "Cancel", /* en-IN */
      "Cancel", /* en-SG */
      "[Çåñçéļ one]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‏‎‏‏‎‏‏‏‏‎‎‎‎‎‎‎‎‏‎‏‏‎‏‎‏‏‏‏‎‏‎‎‏‏‏‎‎‏‏‎‎‏‏‏‏‏‎‎‏‎‏‎‎‏‎‏‏‏‏‏‏‏‎‏‎Cancel‎‏‎‎‏‎", /* en-XC */
      "Cancel", /* en-ZA */
      "Cancelar", /* es */
      "Cancelar", /* es-419 */
      "Cancelar", /* es-AR */
      "Cancelar", /* es-BO */
      "Cancelar", /* es-CL */
      "Cancelar", /* es-CO */
      "Cancelar", /* es-CR */
      "Cancelar", /* es-DO */
      "Cancelar", /* es-EC */
      "Cancelar", /* es-GT */
      "Cancelar", /* es-HN */
      "Cancelar", /* es-MX */
      "Cancelar", /* es-NI */
      "Cancelar", /* es-PA */
      "Cancelar", /* es-PE */
      "Cancelar", /* es-PR */
      "Cancelar", /* es-PY */
      "Cancelar", /* es-SV */
      "Cancelar", /* es-US */
      "Cancelar", /* es-UY */
      "Cancelar", /* es-VE */
      "Tühista", /* et */
      "Utzi", /* eu */
      "لغو", /* fa */
      "Peruuta", /* fi */
      "Kanselahin", /* fil */
      "Annuler", /* fr */
      "Annuler", /* fr-CA */
      "Annuler", /* fr-CH */
      "Cancelar", /* gl */
      "Abbrechen", /* gsw */
      "રદ કરો", /* gu */
      "ביטול", /* he */
      "रद्द करें", /* hi */
      "Otkaži", /* hr */
      "Mégse", /* hu */
      "Չեղարկել", /* hy */
      "Batal", /* id */
      "Batal", /* in */
      "Hætta við", /* is */
      "Annulla", /* it */
      "ביטול", /* iw */
      "キャンセル", /* ja */
      "გაუქმება", /* ka */
      "Бас тарту", /* kk */
      "បោះបង់", /* km */
      "ರದ್ದು", /* kn */
      "취소", /* ko */
      "Жокко чыгаруу", /* ky */
      "Annuler", /* ln */
      "ຍົກເລີກ", /* lo */
      "Atšaukti", /* lt */
      "Atcelt", /* lv */
      "Откажи", /* mk */
      "റദ്ദാക്കുക", /* ml */
      "Болих", /* mn */
      "Anulați", /* mo */
      "रद्द करा", /* mr */
      "Batal", /* ms */
      "မလုပ်တော့", /* my */
      "Avbryt", /* nb */
      "रद्द गर्नुहोस्", /* ne */
      "Annuleren", /* nl */
      "Avbryt", /* no */
      "କ୍ୟାନ୍ସଲ୍‍ କରନ୍ତୁ", /* or */
      "ਰੱਦ ਕਰੋ", /* pa */
      "Anuluj", /* pl */
      "Cancelar", /* pt */
      "Cancelar", /* pt-BR */
      "Cancelar", /* pt-PT */
      "Anulați", /* ro */
      "Отмена", /* ru */
      "අවලංගු කරන්න", /* si */
      "Zrušiť", /* sk */
      "Prekliči", /* sl */
      "Anulo", /* sq */
      "Откажи", /* sr */
      "Otkaži", /* sr-Latn */
      "Avbryt", /* sv */
      "Ghairi", /* sw */
      "ரத்துசெய்", /* ta */
      "రద్దు చేయండి", /* te */
      "ยกเลิก", /* th */
      "Kanselahin", /* tl */
      "İptal", /* tr */
      "Скасувати", /* uk */
      "منسوخ کریں", /* ur */
      "Bekor qilish", /* uz */
      "Hủy", /* vi */
      "取消", /* zh */
      "取消", /* zh-CN */
      "取消", /* zh-HK */
      "取消", /* zh-TW */
      "Khansela", /* zu */
    }
  },
  {
    "6973195374358399966",
    {
      "Android Protected Confirmation", /* en (untranslated) */
      "Android se Beskermde Bevestiging", /* af */
      "በAndroid ጥበቃ የሚደረግለት ማረጋገጫ", /* am */
      "تأكيد حماية Android", /* ar */
      "تأكيد حماية Android", /* ar-EG */
      "تأكيد حماية Android", /* ar-JO */
      "تأكيد حماية Android", /* ar-MA */
      "تأكيد حماية Android", /* ar-SA */
      "‏‮Android‬‏ ‏‮Protected‬‏ ‏‮Confirmation‬‏", /* ar-XB */
      "Androidৰ সুৰক্ষা সম্পৰ্কীয় প্ৰতিশ্ৰুতি", /* as */
      "Qorunan Android Təsdiqi", /* az */
      "Пацвярджэнне Android Protected", /* be */
      "Защитно потвърждение за Android", /* bg */
      "Android প্রোটেক্টেড কনফার্মেশন", /* bn */
      "Potvrda zaštite na Androidu", /* bs */
      "Confirmació de protecció d'Android", /* ca */
      "Potvrzení ochrany Androidu", /* cs */
      "Beskyttet bekræftelse i Android", /* da */
      "Bestätigung für Android Protected", /* de */
      "Bestätigung für Android Protected", /* de-AT */
      "Bestätigung für Android Protected", /* de-CH */
      "Επιβεβαίωση προστασίας Android", /* el */
      "Android Protected Confirmation", /* en-AU */
      "Android Protected Confirmation", /* en-CA */
      "Android Protected Confirmation", /* en-GB */
      "Android Protected Confirmation", /* en-IE */
      "Android Protected Confirmation", /* en-IN */
      "Android Protected Confirmation", /* en-SG */
      "[Åñðŕöîð Þŕöţéçţéð Çöñƒîŕmåţîöñ one two three four]", /* en-XA */
      "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‏‎‎‏‎‎‏‏‏‏‏‏‏‏‎‎‎‎‎‏‏‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‏‎‎‎‎‎‎‏‏‏‏‎‎‎‏‎‏‏‏‏‎‏‏‏‏‎‎Android Protected Confirmation‎‏‎‎‏‎", /* en-XC */
      "Android Protected Confirmation", /* en-ZA */
      "Confirmación protegida por Android", /* es */
      "Confirmación de protección de Android", /* es-419 */
      "Confirmación de protección de Android", /* es-AR */
      "Confirmación de protección de Android", /* es-BO */
      "Confirmación de protección de Android", /* es-CL */
      "Confirmación de protección de Android", /* es-CO */
      "Confirmación de protección de Android", /* es-CR */
      "Confirmación de protección de Android", /* es-DO */
      "Confirmación de protección de Android", /* es-EC */
      "Confirmación de protección de Android", /* es-GT */
      "Confirmación de protección de Android", /* es-HN */
      "Confirmación de protección de Android", /* es-MX */
      "Confirmación de protección de Android", /* es-NI */
      "Confirmación de protección de Android", /* es-PA */
      "Confirmación de protección de Android", /* es-PE */
      "Confirmación de protección de Android", /* es-PR */
      "Confirmación de protección de Android", /* es-PY */
      "Confirmación de protección de Android", /* es-SV */
      "Confirmación de protección de Android", /* es-US */
      "Confirmación de protección de Android", /* es-UY */
      "Confirmación de protección de Android", /* es-VE */
      "Androidi kaitstud kinnitus", /* et */
      "Android-en babesa izatearen berrespena", /* eu */
      "تأیید محافظت‌شده Android", /* fa */
      "Vahvistus Android-suojauksesta", /* fi */
      "Pagkumpirmang Pinoprotektahan ng Android", /* fil */
      "Confirmation de protection Android", /* fr */
      "Confirmation protégée Android", /* fr-CA */
      "Confirmation de protection Android", /* fr-CH */
      "Android Protected Confirmation", /* gl */
      "Bestätigung für Android Protected", /* gsw */
      "Android પ્રોટેક્ટેડ કન્ફર્મેશન", /* gu */
      "Android Protected Confirmation", /* he */
      "Android की ओर से सुरक्षा की पुष्टि", /* hi */
      "Potvrda zaštite na Androidu", /* hr */
      "Android – védett megerősítés", /* hu */
      "Android Protected-ի հաստատում", /* hy */
      "Konfirmasi yang Dilindungi Android", /* id */
      "Konfirmasi yang Dilindungi Android", /* in */
      "Varin staðfesting Android", /* is */
      "Conferma Android Protected", /* it */
      "Android Protected Confirmation", /* iw */
      "Android Protected の確認", /* ja */
      "Android-ის დაცული დადასტურება", /* ka */
      "Android қорғалған растау", /* kk */
      "ការ​បញ្ជាក់​ដែលបាន​ការពារ Android", /* km */
      "Android ಸಂರಕ್ಷಿತ ದೃಢೀಕರಣ", /* kn */
      "Android 보안 확인", /* ko */
      "Android Protected ырастоосу", /* ky */
      "Confirmation de protection Android", /* ln */
      "ການຢືນຢັນ Android ທີ່ໄດ້ຮັບການປົກປ້ອງ", /* lo */
      "„Android Protected“ patvirtinimas", /* lt */
      "Android aizsargātā informācija", /* lv */
      "Потврда за заштита на Android", /* mk */
      "Android സംരക്ഷിത സ്ഥിരീകരണം", /* ml */
      "Андройдоор хамгаалсан баталгаажуулалт", /* mn */
      "Confirmare protecție pentru Android", /* mo */
      "Android कडून सुरक्षा निश्चित करणे", /* mr */
      "Pengesahan Dilindungi Android", /* ms */
      "Android ကာကွယ်မှု အတည်ပြုချက်", /* my */
      "Android-beskyttet bekreftelse", /* nb */
      "Android द्वारा संरक्षण गरिएको पुष्टि", /* ne */
      "Bevestiging van Android-beveiliging", /* nl */
      "Android-beskyttet bekreftelse", /* no */
      "Android ଦ୍ୱାରା ସୁରକ୍ଷିତ ହୋଇଥିବାର ସୁନିଶ୍ଚିତତା", /* or */
      "Android ਵੱਲੋਂ ਸੁਰੱਖਿਆ ਦੀ ਪੁਸ਼ਟੀ", /* pa */
      "Zabezpieczone potwierdzenie w Androidzie", /* pl */
      "Confirmação protegida pelo Android", /* pt */
      "Confirmação protegida pelo Android", /* pt-BR */
      "Confirmação protegida do Android", /* pt-PT */
      "Confirmare protecție pentru Android", /* ro */
      "Подтверждение Android Protected", /* ru */
      "Android ආරක්ෂිත තහවුරු කිරීම", /* si */
      "Chránené potvrdenie Androidu", /* sk */
      "Zaščitena potrditev v Androidu", /* sl */
      "Android Protected Confirmation", /* sq */
      "Потврда заштите на Android-у", /* sr */
      "Potvrda zaštite na Android-u", /* sr-Latn */
      "Bekräftelseskydd för Android", /* sv */
      "Uthibitishaji Unaolindwa wa Android", /* sw */
      "Android பாதுகாப்பு தொடர்பான உறுதிப்படுத்தல்", /* ta */
      "Android సురక్షిత నిర్ధారణ", /* te */
      "ยืนยันการป้องกัน Android", /* th */
      "Pagkumpirmang Pinoprotektahan ng Android", /* tl */
      "Android Korumalı Onayı", /* tr */
      "Підтвердження Android Protected", /* uk */
      "Android کی تحفظ یافتہ تصدیق", /* ur */
      "Android Protected nomli tasdiq", /* uz */
      "Xác nhận bảo vệ Android", /* vi */
      "Android 保护确认", /* zh */
      "Android 保护确认", /* zh-CN */
      "Android 保護確認", /* zh-HK */
      "Android Protected 確認", /* zh-TW */
      "Ukuqinisekiswa okuvikelwe i-Android", /* zu */
    }
  },
};

#define ConfirmationUITranslations_NUM_TRANSLATION_IDS \
    (ARRAY_ELEMENTS(ConfirmationUITranslations_translation_ids))

static int ConfirmationUITranslations_selected_lang_id_index = 0;

static int ConfirmationUITranslations_find_str(const char** haystack, const char* needle) {
    for (int n = 0; haystack[n] != NULL; n++) {
        if (strcmp(needle, haystack[n]) == 0) {
            return n;
        }
    }
    return -1;
}

#define MAX_LANG_ID_SIZE 256

/* Non-static linkage to allow calling by the test. */
int ConfirmationUITranslations_lang_id_match(const char** lang_ids, const char* lang_id) {
    int ret;
    char lang_id_buf[MAX_LANG_ID_SIZE + 1];
    size_t n;

    ret = ConfirmationUITranslations_find_str(lang_ids, lang_id);
    if (ret >= 0) {
        return ret;
    }

    /* strncpy.. */
    for (n = 0; lang_id[n] != '\0' && n < MAX_LANG_ID_SIZE; n++) {
        lang_id_buf[n] = lang_id[n];
    }
    lang_id_buf[n] = '\0';

    while (n >= 1) {
        /* Remove last component */
        while (n >= 1 && lang_id_buf[n - 1] != '-') {
            n--;
        }
        if (n < 1) {
            return -1;
        }
        lang_id_buf[n - 1] = '\0';
        n--;
        ret = ConfirmationUITranslations_find_str(lang_ids, lang_id_buf);
        if (ret >= 0) {
            return ret;
        }
    }
    return -1;
}

const char* ConfirmationUITranslations_select_lang_id(const char* lang_id) {
    ConfirmationUITranslations_selected_lang_id_index = 0;
    if (lang_id == NULL) {
        return ConfirmationUITranslations_language_ids[0];
    }

    int ret = ConfirmationUITranslations_lang_id_match(ConfirmationUITranslations_language_ids, lang_id);
    if (ret < 0) {
        return ConfirmationUITranslations_language_ids[0];
    }
    ConfirmationUITranslations_selected_lang_id_index = ret;
    return ConfirmationUITranslations_language_ids[ConfirmationUITranslations_selected_lang_id_index];
}

const char* ConfirmationUITranslations_lookup(const char* translation_id) {
    for (size_t n = 0; n < ConfirmationUITranslations_NUM_TRANSLATION_IDS; n++) {
        if (strcmp(translation_id, ConfirmationUITranslations_translation_ids[n].translation_id) == 0) {
            const char* result;
            if (ConfirmationUITranslations_selected_lang_id_index < 0 || ConfirmationUITranslations_selected_lang_id_index >= ConfirmationUITranslations_NUM_LANGUAGE_IDS) {
                return ConfirmationUITranslations_translation_ids[n].translations[0];
            }
            result = ConfirmationUITranslations_translation_ids[n].translations[ConfirmationUITranslations_selected_lang_id_index];
            if (result != NULL) {
                return result;
            }
            return ConfirmationUITranslations_translation_ids[n].translations[0];
        }
    }
    return NULL;
}

const char* const* ConfirmationUITranslations_get_languages(void) {
    return (const char* const*) (ConfirmationUITranslations_language_ids);
}
