ylacombe commited on
Commit
cfd37c9
1 Parent(s): b4d8128

Create conversion_iso639.py

Browse files
Files changed (1) hide show
  1. conversion_iso639.py +810 -0
conversion_iso639.py ADDED
@@ -0,0 +1,810 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Language dict
2
+ language_code_to_name = {
3
+ "afr": "Afrikaans",
4
+ "amh": "Amharic",
5
+ "arb": "Modern Standard Arabic",
6
+ "ary": "Moroccan Arabic",
7
+ "arz": "Egyptian Arabic",
8
+ "asm": "Assamese",
9
+ "ast": "Asturian",
10
+ "azj": "North Azerbaijani",
11
+ "bel": "Belarusian",
12
+ "ben": "Bengali",
13
+ "bos": "Bosnian",
14
+ "bul": "Bulgarian",
15
+ "cat": "Catalan",
16
+ "ceb": "Cebuano",
17
+ "ces": "Czech",
18
+ "ckb": "Central Kurdish",
19
+ "cmn": "Mandarin Chinese",
20
+ "cym": "Welsh",
21
+ "dan": "Danish",
22
+ "deu": "German",
23
+ "ell": "Greek",
24
+ "eng": "English",
25
+ "est": "Estonian",
26
+ "eus": "Basque",
27
+ "fin": "Finnish",
28
+ "fra": "French",
29
+ "gaz": "West Central Oromo",
30
+ "gle": "Irish",
31
+ "glg": "Galician",
32
+ "guj": "Gujarati",
33
+ "heb": "Hebrew",
34
+ "hin": "Hindi",
35
+ "hrv": "Croatian",
36
+ "hun": "Hungarian",
37
+ "hye": "Armenian",
38
+ "ibo": "Igbo",
39
+ "ind": "Indonesian",
40
+ "isl": "Icelandic",
41
+ "ita": "Italian",
42
+ "jav": "Javanese",
43
+ "jpn": "Japanese",
44
+ "kam": "Kamba",
45
+ "kan": "Kannada",
46
+ "kat": "Georgian",
47
+ "kaz": "Kazakh",
48
+ "kea": "Kabuverdianu",
49
+ "khk": "Halh Mongolian",
50
+ "khm": "Khmer",
51
+ "kir": "Kyrgyz",
52
+ "kor": "Korean",
53
+ "lao": "Lao",
54
+ "lit": "Lithuanian",
55
+ "ltz": "Luxembourgish",
56
+ "lug": "Ganda",
57
+ "luo": "Luo",
58
+ "lvs": "Standard Latvian",
59
+ "mai": "Maithili",
60
+ "mal": "Malayalam",
61
+ "mar": "Marathi",
62
+ "mkd": "Macedonian",
63
+ "mlt": "Maltese",
64
+ "mni": "Meitei",
65
+ "mya": "Burmese",
66
+ "nld": "Dutch",
67
+ "nno": "Norwegian Nynorsk",
68
+ "nob": "Norwegian Bokm\u00e5l",
69
+ "npi": "Nepali",
70
+ "nya": "Nyanja",
71
+ "oci": "Occitan",
72
+ "ory": "Odia",
73
+ "pan": "Punjabi",
74
+ "pbt": "Southern Pashto",
75
+ "pes": "Western Persian",
76
+ "pol": "Polish",
77
+ "por": "Portuguese",
78
+ "ron": "Romanian",
79
+ "rus": "Russian",
80
+ "slk": "Slovak",
81
+ "slv": "Slovenian",
82
+ "sna": "Shona",
83
+ "snd": "Sindhi",
84
+ "som": "Somali",
85
+ "spa": "Spanish",
86
+ "srp": "Serbian",
87
+ "swe": "Swedish",
88
+ "swh": "Swahili",
89
+ "tam": "Tamil",
90
+ "tel": "Telugu",
91
+ "tgk": "Tajik",
92
+ "tgl": "Tagalog",
93
+ "tha": "Thai",
94
+ "tur": "Turkish",
95
+ "ukr": "Ukrainian",
96
+ "urd": "Urdu",
97
+ "uzn": "Northern Uzbek",
98
+ "vie": "Vietnamese",
99
+ "xho": "Xhosa",
100
+ "yor": "Yoruba",
101
+ "yue": "Cantonese",
102
+ "zlm": "Colloquial Malay",
103
+ "zsm": "Standard Malay",
104
+ "zul": "Zulu",
105
+ }
106
+ LANGUAGE_NAME_TO_CODE = {v: k for k, v in language_code_to_name.items()}
107
+
108
+ ISO_639_1_TO_3 = {
109
+ 'aa': 'aar',
110
+ 'ab': 'abk',
111
+ 'ae': 'ave',
112
+ 'af': 'afr',
113
+ 'ak': 'aka',
114
+ 'am': 'amh',
115
+ 'an': 'arg',
116
+ 'ar': 'ara',
117
+ 'as': 'asm',
118
+ 'av': 'ava',
119
+ 'ay': 'aym',
120
+ 'az': 'aze',
121
+ 'ba': 'bak',
122
+ 'be': 'bel',
123
+ 'bg': 'bul',
124
+ 'bi': 'bis',
125
+ 'bm': 'bam',
126
+ 'bn': 'ben',
127
+ 'bo': 'bod',
128
+ 'br': 'bre',
129
+ 'bs': 'bos',
130
+ 'ca': 'cat',
131
+ 'ce': 'che',
132
+ 'ch': 'cha',
133
+ 'co': 'cos',
134
+ 'cr': 'cre',
135
+ 'cs': 'ces',
136
+ 'cu': 'chu',
137
+ 'cv': 'chv',
138
+ 'cy': 'cym',
139
+ 'da': 'dan',
140
+ 'de': 'deu',
141
+ 'dv': 'div',
142
+ 'dz': 'dzo',
143
+ 'ee': 'ewe',
144
+ 'el': 'ell',
145
+ 'en': 'eng',
146
+ 'eo': 'epo',
147
+ 'es': 'spa',
148
+ 'et': 'est',
149
+ 'eu': 'eus',
150
+ 'fa': 'fas',
151
+ 'ff': 'ful',
152
+ 'fi': 'fin',
153
+ 'fj': 'fij',
154
+ 'fo': 'fao',
155
+ 'fr': 'fra',
156
+ 'fy': 'fry',
157
+ 'ga': 'gle',
158
+ 'gd': 'gla',
159
+ 'gl': 'glg',
160
+ 'gn': 'grn',
161
+ 'gu': 'guj',
162
+ 'gv': 'glv',
163
+ 'ha': 'hau',
164
+ 'he': 'heb',
165
+ 'hi': 'hin',
166
+ 'ho': 'hmo',
167
+ 'hr': 'hrv',
168
+ 'ht': 'hat',
169
+ 'hu': 'hun',
170
+ 'hy': 'hye',
171
+ 'hz': 'her',
172
+ 'ia': 'ina',
173
+ 'id': 'ind',
174
+ 'ie': 'ile',
175
+ 'ig': 'ibo',
176
+ 'ii': 'iii',
177
+ 'ik': 'ipk',
178
+ 'io': 'ido',
179
+ 'is': 'isl',
180
+ 'it': 'ita',
181
+ 'iu': 'iku',
182
+ 'ja': 'jpn',
183
+ 'jv': 'jav',
184
+ 'ka': 'kat',
185
+ 'kg': 'kon',
186
+ 'ki': 'kik',
187
+ 'kj': 'kua',
188
+ 'kk': 'kaz',
189
+ 'kl': 'kal',
190
+ 'km': 'khm',
191
+ 'kn': 'kan',
192
+ 'ko': 'kor',
193
+ 'kr': 'kau',
194
+ 'ks': 'kas',
195
+ 'ku': 'kur',
196
+ 'kv': 'kom',
197
+ 'kw': 'cor',
198
+ 'ky': 'kir',
199
+ 'la': 'lat',
200
+ 'lb': 'ltz',
201
+ 'lg': 'lug',
202
+ 'li': 'lim',
203
+ 'ln': 'lin',
204
+ 'lo': 'lao',
205
+ 'lt': 'lit',
206
+ 'lu': 'lub',
207
+ 'lv': 'lav',
208
+ 'mg': 'mlg',
209
+ 'mh': 'mah',
210
+ 'mi': 'mri',
211
+ 'mk': 'mkd',
212
+ 'ml': 'mal',
213
+ 'mn': 'mon',
214
+ 'mr': 'mar',
215
+ 'ms': 'msa',
216
+ 'mt': 'mlt',
217
+ 'my': 'mya',
218
+ 'na': 'nau',
219
+ 'nb': 'nob',
220
+ 'nd': 'nde',
221
+ 'ne': 'nep',
222
+ 'ng': 'ndo',
223
+ 'nl': 'nld',
224
+ 'nn': 'nno',
225
+ 'no': 'nor',
226
+ 'nr': 'nbl',
227
+ 'nv': 'nav',
228
+ 'ny': 'nya',
229
+ 'oc': 'oci',
230
+ 'oj': 'oji',
231
+ 'om': 'orm',
232
+ 'or': 'ori',
233
+ 'os': 'oss',
234
+ 'pa': 'pan',
235
+ 'pi': 'pli',
236
+ 'pl': 'pol',
237
+ 'ps': 'pus',
238
+ 'pt': 'por',
239
+ 'qu': 'que',
240
+ 'rm': 'roh',
241
+ 'rn': 'run',
242
+ 'ro': 'ron',
243
+ 'ru': 'rus',
244
+ 'rw': 'kin',
245
+ 'sa': 'san',
246
+ 'sc': 'srd',
247
+ 'sd': 'snd',
248
+ 'se': 'sme',
249
+ 'sg': 'sag',
250
+ 'sh': 'hbs',
251
+ 'si': 'sin',
252
+ 'sk': 'slk',
253
+ 'sl': 'slv',
254
+ 'sm': 'smo',
255
+ 'sn': 'sna',
256
+ 'so': 'som',
257
+ 'sq': 'sqi',
258
+ 'sr': 'srp',
259
+ 'ss': 'ssw',
260
+ 'st': 'sot',
261
+ 'su': 'sun',
262
+ 'sv': 'swe',
263
+ 'sw': 'swa',
264
+ 'ta': 'tam',
265
+ 'te': 'tel',
266
+ 'tg': 'tgk',
267
+ 'th': 'tha',
268
+ 'ti': 'tir',
269
+ 'tk': 'tuk',
270
+ 'tl': 'tgl',
271
+ 'tn': 'tsn',
272
+ 'to': 'ton',
273
+ 'tr': 'tur',
274
+ 'ts': 'tso',
275
+ 'tt': 'tat',
276
+ 'tw': 'twi',
277
+ 'ty': 'tah',
278
+ 'ug': 'uig',
279
+ 'uk': 'ukr',
280
+ 'ur': 'urd',
281
+ 'uz': 'uzb',
282
+ 've': 'ven',
283
+ 'vi': 'vie',
284
+ 'vo': 'vol',
285
+ 'wa': 'wln',
286
+ 'wo': 'wol',
287
+ 'xh': 'xho',
288
+ 'yi': 'yid',
289
+ 'yo': 'yor',
290
+ 'za': 'zha',
291
+ 'zh': 'zho',
292
+ 'zu': 'zul'}
293
+
294
+ iso639_3_to_1 = {
295
+ "aae": "sq",
296
+ "aao": "ar",
297
+ "aar": "aa",
298
+ "aat": "sq",
299
+ "abh": "ar",
300
+ "abk": "ab",
301
+ "abv": "ar",
302
+ "acm": "ar",
303
+ "acq": "ar",
304
+ "acw": "ar",
305
+ "acx": "ar",
306
+ "acy": "ar",
307
+ "adf": "ar",
308
+ "aeb": "ar",
309
+ "aec": "ar",
310
+ "afb": "ar",
311
+ "afr": "af",
312
+ "ajp": "ar",
313
+ "aka": "ak",
314
+ "aln": "sq",
315
+ "als": "sq",
316
+ "amh": "am",
317
+ "apc": "ar",
318
+ "apd": "ar",
319
+ "ara": "ar",
320
+ "arb": "ar",
321
+ "arg": "an",
322
+ "arq": "ar",
323
+ "ars": "ar",
324
+ "ary": "ar",
325
+ "arz": "ar",
326
+ "asm": "as",
327
+ "auz": "ar",
328
+ "ava": "av",
329
+ "ave": "ae",
330
+ "avl": "ar",
331
+ "ayc": "ar",
332
+ "ayh": "ar",
333
+ "ayl": "ar",
334
+ "aym": "ay",
335
+ "ayn": "ar",
336
+ "ayp": "ar",
337
+ "ayr": "ay",
338
+ "azb": "az",
339
+ "aze": "az",
340
+ "azj": "az",
341
+ "bak": "ba",
342
+ "bam": "bm",
343
+ "bbz": "ar",
344
+ "bel": "be",
345
+ "ben": "bn",
346
+ "bhr": "mg",
347
+ "bis": "bi",
348
+ "bjn": "ms",
349
+ "bmm": "mg",
350
+ "bod": "bo",
351
+ "bos": "sh",
352
+ "bre": "br",
353
+ "btj": "ms",
354
+ "bul": "bg",
355
+ "bve": "ms",
356
+ "bvu": "ms",
357
+ "bzc": "mg",
358
+ "cat": "ca",
359
+ "cdo": "zh",
360
+ "ces": "cs",
361
+ "cha": "ch",
362
+ "che": "ce",
363
+ "chu": "cu",
364
+ "chv": "cv",
365
+ "cjy": "zh",
366
+ "ckb": "ku",
367
+ "cmn": "zh",
368
+ "coa": "ms",
369
+ "cor": "kw",
370
+ "cos": "co",
371
+ "cpx": "zh",
372
+ "cre": "cr",
373
+ "crj": "cr",
374
+ "crk": "cr",
375
+ "crl": "cr",
376
+ "crm": "cr",
377
+ "csw": "cr",
378
+ "cwd": "cr",
379
+ "cym": "cy",
380
+ "czh": "zh",
381
+ "czo": "zh",
382
+ "dan": "da",
383
+ "deu": "de",
384
+ "div": "dv",
385
+ "dty": "ne",
386
+ "dup": "ms",
387
+ "dzo": "dz",
388
+ "ekk": "et",
389
+ "ell": "el",
390
+ "eng": "en",
391
+ "epo": "eo",
392
+ "esi": "ik",
393
+ "esk": "ik",
394
+ "est": "et",
395
+ "eus": "eu",
396
+ "ewe": "ee",
397
+ "fao": "fo",
398
+ "fas": "fa",
399
+ "fat": "ak",
400
+ "ffm": "ff",
401
+ "fij": "fj",
402
+ "fin": "fi",
403
+ "fra": "fr",
404
+ "fry": "fy",
405
+ "fub": "ff",
406
+ "fuc": "ff",
407
+ "fue": "ff",
408
+ "fuf": "ff",
409
+ "fuh": "ff",
410
+ "fui": "ff",
411
+ "ful": "ff",
412
+ "fuq": "ff",
413
+ "fuv": "ff",
414
+ "gan": "zh",
415
+ "gax": "om",
416
+ "gaz": "om",
417
+ "gla": "gd",
418
+ "gle": "ga",
419
+ "glg": "gl",
420
+ "glv": "gv",
421
+ "gnw": "gn",
422
+ "grn": "gn",
423
+ "gug": "gn",
424
+ "gui": "gn",
425
+ "guj": "gu",
426
+ "gun": "gn",
427
+ "hae": "om",
428
+ "hak": "zh",
429
+ "hat": "ht",
430
+ "hau": "ha",
431
+ "hbs": "sh",
432
+ "heb": "he",
433
+ "her": "hz",
434
+ "hin": "hi",
435
+ "hji": "ms",
436
+ "hmo": "ho",
437
+ "hrv": "hr",
438
+ "hsn": "zh",
439
+ "hun": "hu",
440
+ "hye": "hy",
441
+ "ibo": "ig",
442
+ "ido": "io",
443
+ "iii": "ii",
444
+ "ike": "iu",
445
+ "ikt": "iu",
446
+ "iku": "iu",
447
+ "ile": "ie",
448
+ "ina": "ia",
449
+ "ind": "ms",
450
+ "ipk": "ik",
451
+ "isl": "is",
452
+ "ita": "it",
453
+ "jak": "ms",
454
+ "jav": "jv",
455
+ "jax": "ms",
456
+ "jpn": "ja",
457
+ "kal": "kl",
458
+ "kan": "kn",
459
+ "kas": "ks",
460
+ "kat": "ka",
461
+ "kau": "kr",
462
+ "kaz": "kk",
463
+ "kby": "kr",
464
+ "khk": "mn",
465
+ "khm": "km",
466
+ "kik": "ki",
467
+ "kin": "rw",
468
+ "kir": "ky",
469
+ "kmr": "ku",
470
+ "knc": "kr",
471
+ "kng": "kg",
472
+ "koi": "kv",
473
+ "kom": "kv",
474
+ "kon": "kg",
475
+ "kor": "ko",
476
+ "kpv": "kv",
477
+ "krt": "kr",
478
+ "kua": "kj",
479
+ "kur": "ku",
480
+ "kvb": "ms",
481
+ "kvr": "ms",
482
+ "kwy": "kg",
483
+ "kxd": "ms",
484
+ "lao": "lo",
485
+ "lat": "la",
486
+ "lav": "lv",
487
+ "lce": "ms",
488
+ "lcf": "ms",
489
+ "ldi": "kg",
490
+ "lim": "li",
491
+ "lin": "ln",
492
+ "lit": "lt",
493
+ "liw": "ms",
494
+ "ltg": "lv",
495
+ "ltz": "lb",
496
+ "lub": "lu",
497
+ "lug": "lg",
498
+ "lvs": "lv",
499
+ "lzh": "zh",
500
+ "mah": "mh",
501
+ "mal": "ml",
502
+ "mar": "mr",
503
+ "max": "ms",
504
+ "meo": "ms",
505
+ "mfa": "ms",
506
+ "mfb": "ms",
507
+ "min": "ms",
508
+ "mkd": "mk",
509
+ "mlg": "mg",
510
+ "mlt": "mt",
511
+ "mnp": "zh",
512
+ "mon": "mn",
513
+ "mqg": "ms",
514
+ "mri": "mi",
515
+ "msa": "ms",
516
+ "msh": "mg",
517
+ "msi": "ms",
518
+ "mui": "ms",
519
+ "mvf": "mn",
520
+ "mya": "my",
521
+ "nan": "zh",
522
+ "nau": "na",
523
+ "nav": "nv",
524
+ "nbl": "nr",
525
+ "nde": "nd",
526
+ "ndo": "ng",
527
+ "nep": "ne",
528
+ "nhd": "gn",
529
+ "nld": "nl",
530
+ "nno": "no",
531
+ "nob": "no",
532
+ "nor": "no",
533
+ "npi": "ne",
534
+ "nya": "ny",
535
+ "oci": "oc",
536
+ "ojb": "oj",
537
+ "ojc": "oj",
538
+ "ojg": "oj",
539
+ "oji": "oj",
540
+ "ojs": "oj",
541
+ "ojw": "oj",
542
+ "orc": "om",
543
+ "ori": "or",
544
+ "orm": "om",
545
+ "orn": "ms",
546
+ "ors": "ms",
547
+ "ory": "or",
548
+ "oss": "os",
549
+ "otw": "oj",
550
+ "pan": "pa",
551
+ "pbt": "ps",
552
+ "pbu": "ps",
553
+ "pel": "ms",
554
+ "pes": "fa",
555
+ "pga": "ar",
556
+ "pli": "pi",
557
+ "plt": "mg",
558
+ "pol": "pl",
559
+ "por": "pt",
560
+ "prs": "fa",
561
+ "pse": "ms",
562
+ "pst": "ps",
563
+ "pus": "ps",
564
+ "qub": "qu",
565
+ "qud": "qu",
566
+ "que": "qu",
567
+ "quf": "qu",
568
+ "qug": "qu",
569
+ "quh": "qu",
570
+ "quk": "qu",
571
+ "qul": "qu",
572
+ "qup": "qu",
573
+ "qur": "qu",
574
+ "qus": "qu",
575
+ "quw": "qu",
576
+ "qux": "qu",
577
+ "quy": "qu",
578
+ "quz": "qu",
579
+ "qva": "qu",
580
+ "qvc": "qu",
581
+ "qve": "qu",
582
+ "qvh": "qu",
583
+ "qvi": "qu",
584
+ "qvj": "qu",
585
+ "qvl": "qu",
586
+ "qvm": "qu",
587
+ "qvn": "qu",
588
+ "qvo": "qu",
589
+ "qvp": "qu",
590
+ "qvs": "qu",
591
+ "qvw": "qu",
592
+ "qvz": "qu",
593
+ "qwa": "qu",
594
+ "qwc": "qu",
595
+ "qwh": "qu",
596
+ "qws": "qu",
597
+ "qxa": "qu",
598
+ "qxc": "qu",
599
+ "qxh": "qu",
600
+ "qxl": "qu",
601
+ "qxn": "qu",
602
+ "qxo": "qu",
603
+ "qxp": "qu",
604
+ "qxr": "qu",
605
+ "qxt": "qu",
606
+ "qxu": "qu",
607
+ "qxw": "qu",
608
+ "roh": "rm",
609
+ "ron": "ro",
610
+ "run": "rn",
611
+ "rus": "ru",
612
+ "sag": "sg",
613
+ "san": "sa",
614
+ "sdc": "sc",
615
+ "sdh": "ku",
616
+ "sdn": "sc",
617
+ "shu": "ar",
618
+ "sin": "si",
619
+ "skg": "mg",
620
+ "slk": "sk",
621
+ "slv": "sl",
622
+ "sme": "se",
623
+ "smo": "sm",
624
+ "sna": "sn",
625
+ "snd": "sd",
626
+ "som": "so",
627
+ "sot": "st",
628
+ "spa": "es",
629
+ "spv": "or",
630
+ "sqi": "sq",
631
+ "src": "sc",
632
+ "srd": "sc",
633
+ "sro": "sc",
634
+ "srp": "sh",
635
+ "ssh": "ar",
636
+ "ssw": "ss",
637
+ "sun": "su",
638
+ "swa": "sw",
639
+ "swc": "sw",
640
+ "swe": "sv",
641
+ "swh": "sw",
642
+ "tah": "ty",
643
+ "tam": "ta",
644
+ "tat": "tt",
645
+ "tdx": "mg",
646
+ "tel": "te",
647
+ "tgk": "tg",
648
+ "tgl": "tl",
649
+ "tha": "th",
650
+ "tir": "ti",
651
+ "tkg": "mg",
652
+ "tmw": "ms",
653
+ "ton": "to",
654
+ "tsn": "tn",
655
+ "tso": "ts",
656
+ "tuk": "tk",
657
+ "tur": "tr",
658
+ "twi": "ak",
659
+ "txy": "mg",
660
+ "uig": "ug",
661
+ "ukr": "uk",
662
+ "urd": "ur",
663
+ "urk": "ms",
664
+ "uzb": "uz",
665
+ "uzn": "uz",
666
+ "uzs": "uz",
667
+ "ven": "ve",
668
+ "vie": "vi",
669
+ "vkk": "ms",
670
+ "vkt": "ms",
671
+ "vol": "vo",
672
+ "vro": "et",
673
+ "wln": "wa",
674
+ "wol": "wo",
675
+ "wuu": "zh",
676
+ "xho": "xh",
677
+ "xmm": "ms",
678
+ "xmv": "mg",
679
+ "xmw": "mg",
680
+ "ydd": "yi",
681
+ "yid": "yi",
682
+ "yih": "yi",
683
+ "yor": "yo",
684
+ "yue": "zh",
685
+ "zch": "za",
686
+ "zeh": "za",
687
+ "zgb": "za",
688
+ "zgm": "za",
689
+ "zgn": "za",
690
+ "zha": "za",
691
+ "zhd": "za",
692
+ "zhn": "za",
693
+ "zho": "zh",
694
+ "zlj": "za",
695
+ "zlm": "ms",
696
+ "zln": "za",
697
+ "zlq": "za",
698
+ "zmi": "ms",
699
+ "zqe": "za",
700
+ "zsm": "ms",
701
+ "zul": "zu",
702
+ "zyb": "za",
703
+ "zyg": "za",
704
+ "zyj": "za",
705
+ "zyn": "za",
706
+ "zzj": "za"
707
+ }
708
+
709
+ LANGID_TO_ISO = ISO_639_1_TO_3 # {v: k for k, v in iso639_3_to_1.items()}
710
+
711
+ # Source langs: S2ST / S2TT / ASR don't need source lang
712
+ # T2TT / T2ST use this
713
+ text_source_language_codes = [
714
+ "afr",
715
+ "amh",
716
+ "arb",
717
+ "ary",
718
+ "arz",
719
+ "asm",
720
+ "azj",
721
+ "bel",
722
+ "ben",
723
+ "bos",
724
+ "bul",
725
+ "cat",
726
+ "ceb",
727
+ "ces",
728
+ "ckb",
729
+ "cmn",
730
+ "cym",
731
+ "dan",
732
+ "deu",
733
+ "ell",
734
+ "eng",
735
+ "est",
736
+ "eus",
737
+ "fin",
738
+ "fra",
739
+ "gaz",
740
+ "gle",
741
+ "glg",
742
+ "guj",
743
+ "heb",
744
+ "hin",
745
+ "hrv",
746
+ "hun",
747
+ "hye",
748
+ "ibo",
749
+ "ind",
750
+ "isl",
751
+ "ita",
752
+ "jav",
753
+ "jpn",
754
+ "kan",
755
+ "kat",
756
+ "kaz",
757
+ "khk",
758
+ "khm",
759
+ "kir",
760
+ "kor",
761
+ "lao",
762
+ "lit",
763
+ "lug",
764
+ "luo",
765
+ "lvs",
766
+ "mai",
767
+ "mal",
768
+ "mar",
769
+ "mkd",
770
+ "mlt",
771
+ "mni",
772
+ "mya",
773
+ "nld",
774
+ "nno",
775
+ "nob",
776
+ "npi",
777
+ "nya",
778
+ "ory",
779
+ "pan",
780
+ "pbt",
781
+ "pes",
782
+ "pol",
783
+ "por",
784
+ "ron",
785
+ "rus",
786
+ "slk",
787
+ "slv",
788
+ "sna",
789
+ "snd",
790
+ "som",
791
+ "spa",
792
+ "srp",
793
+ "swe",
794
+ "swh",
795
+ "tam",
796
+ "tel",
797
+ "tgk",
798
+ "tgl",
799
+ "tha",
800
+ "tur",
801
+ "ukr",
802
+ "urd",
803
+ "uzn",
804
+ "vie",
805
+ "yor",
806
+ "yue",
807
+ "zsm",
808
+ "zul",
809
+ ]
810
+ TEXT_SOURCE_LANGUAGE_NAMES = sorted([language_code_to_name[code] for code in text_source_language_codes])