"""Languages to Language Codes.""" # TODO: This and the constant set in bmi_set_tracks should be in common # TODO: BULK-60 - These should be grabbed from DB # Using `SELECT "LANGUAGE", LANGUAGE_CODE FROM art_relations."LANGUAGE";` # Requires parsing ';' delimited fields in "LANGUAGE" column for duplicates. # See NSO, NOB for examples LANGUAGE_CODE_MAP = { 'Haryanvi': 'BGC', 'Rajasthani': 'RAJ', 'Mandarin (Traditional)': 'cmn-Hant', 'Afar': 'AAR', 'Abkhazian': 'ABK', 'Achinese': 'ACE', 'Acoli': 'ACH', 'Adangme': 'ADA', 'Adyghe': 'ADY', 'Adygei': 'ADY', 'Afro-Asiatic (Other)': 'AFA', 'Afrihili': 'AFH', 'Afrikaans': 'AFR', 'Ainu': 'AIN', 'Akan': 'AKA', 'Akkadian': 'AKK', 'Albanian': 'ALB', 'Aleut': 'ALE', 'Algonquian languages': 'ALG', 'Southern Altai': 'ALT', 'Amharic': 'AMH', 'English, Old (ca.450-1100)': 'ANG', 'Apache languages': 'APA', 'Arabic': 'ARA', 'Aramaic': 'ARC', 'Aragonese': 'ARG', 'Armenian': 'ARM', 'Araucanian': 'ARN', 'Arapaho': 'ARP', 'Artificial (Other)': 'ART', 'Arawak': 'ARW', 'Assamese': 'ASM', 'Asturian': 'AST', 'Bable': 'AST', 'Athapascan languages': 'ATH', 'Australian languages': 'AUS', 'Avaric': 'AVA', 'Avestan': 'AVE', 'Awadhi': 'AWA', 'Aymara': 'AYM', 'Azerbaijani': 'AZE', 'Banda': 'BAD', 'Bamileke languages': 'BAI', 'Bashkir': 'BAK', 'Baluchi': 'BAL', 'Bambara': 'BAM', 'Balinese': 'BAN', 'Basque': 'BAQ', 'Basa': 'BAS', 'Baltic (Other)': 'BAT', 'Beja': 'BEJ', 'Belarusian': 'BEL', 'Bemba': 'BEM', 'Bengali': 'BEN', 'Berber (Other)': 'BER', 'Bhojpuri': 'BHO', 'Bihari': 'BIH', 'Bikol': 'BIK', 'Bini': 'BIN', 'Bislama': 'BIS', 'Siksika': 'BLA', 'Bantu (Other)': 'BNT', 'Bosnian': 'BOS', 'Braj': 'BRA', 'Breton': 'BRE', 'Batak (Indonesia)': 'BTK', 'Buriat': 'BUA', 'Buginese': 'BUG', 'Bulgarian': 'BUL', 'Burmese': 'BUR', 'Blin': 'BYN', 'Bilin': 'BYN', 'Caddo': 'CAD', 'Central American Indian (Other)': 'CAI', 'Carib': 'CAR', 'Catalan': 'CAT', 'Valencian': 'CAT', 'Caucasian (Other)': 'CAU', 'Cebuano': 'CEB', 'Celtic (Other)': 'CEL', 'Chamorro': 'CHA', 'Chibcha': 'CHB', 'Chechen': 'CHE', 'Chagatai': 'CHG', 'Mandarin (Simplified)': 'CHI', 'Chuukese': 'CHK', 'Mari': 'CHM', 'Chinook jargon': 'CHN', 'Choctaw': 'CHO', 'Chipewyan': 'CHP', 'Cherokee': 'CHR', 'Church Slavic': 'CHU', 'Old Slavonic': 'CHU', 'Church Slavonic': 'CHU', 'Old Bulgarian': 'CHU', 'Old Church Slavonic': 'CHU', 'Chuvash': 'CHV', 'Cheyenne': 'CHY', 'Chamic languages': 'CMC', 'Coptic': 'COP', 'Cornish': 'COR', 'Corsican': 'COS', 'Creoles and pidgins, English based (Other)': 'CPE', 'Creoles and pidgins, French-based (Other)': 'CPF', 'Creoles and pidgins,Portuguese-based (Other)': 'CPP', 'Cree': 'CRE', 'Crimean Tatar': 'CRH', 'Crimean Turkish': 'CRH', 'Creoles and pidgins (Other)': 'CRP', 'Kashubian': 'CSB', 'Cushitic (Other)': 'CUS', 'Czech': 'CZE', 'Dakota': 'DAK', 'Danish': 'DAN', 'Dargwa': 'DAR', 'Dayak': 'DAY', 'Delaware': 'DEL', 'Slave (Athapascan)': 'DEN', 'Dogrib': 'DGR', 'Dinka': 'DIN', 'Divehi': 'DIV', 'Dogri': 'DOI', 'Dravidian (Other)': 'DRA', 'Lower Sorbian': 'DSB', 'Duala': 'DUA', 'Dutch, Middle (ca.1050-1350)': 'DUM', 'Dutch': 'DUT', 'Flemish': 'DUT', 'Dyula': 'DYU', 'Dzongkha': 'DZO', 'Efik': 'EFI', 'Egyptian (Ancient)': 'EGY', 'Ekajuk': 'EKA', 'Elamite': 'ELX', 'English': 'ENG', 'English, Middle (1100-1500)': 'ENM', 'Esperanto': 'EPO', 'Estonian': 'EST', 'Ewe': 'EWE', 'Ewondo': 'EWO', 'Fang': 'FAN', 'Faroese': 'FAO', 'Fanti': 'FAT', 'Fijian': 'FIJ', 'Filipino': 'FIL', 'Pilipino': 'FIL', 'Finnish': 'FIN', 'Finno-Ugrian (Other)': 'FIU', 'Fon': 'FON', 'French': 'FRE', 'French, Middle (ca.1400-1600)': 'FRM', 'French, Old (842-ca.1400)': 'FRO', 'Frisian': 'FRY', 'Fulah': 'FUL', 'Friulian': 'FUR', 'Ga': 'GAA', 'Gayo': 'GAY', 'Gbaya': 'GBA', 'Germanic (Other)': 'GEM', 'Georgian': 'GEO', 'German': 'GER', 'Geez': 'GEZ', 'Gilbertese': 'GIL', 'Gaelic': 'GLA', 'Scottish Gaelic': 'GLA', 'Irish': 'GLE', 'Galician': 'GLG', 'Manx': 'GLV', 'German, Middle High (ca.1050-1500)': 'GMH', 'German, Old High (ca.750-1050)': 'GOH', 'Gondi': 'GON', 'Gorontalo': 'GOR', 'Gothic': 'GOT', 'Grebo': 'GRB', 'Greek, Ancient (to 1453)': 'GRC', 'Greek, Modern (1453-)': 'GRE', 'Guarani': 'GRN', 'Gujarati': 'GUJ', 'Gwich´in': 'GWI', 'Haida': 'HAI', 'Haitian': 'HAT', 'Haitian Creole': 'HAT', 'Hausa': 'HAU', 'Hawaiian': 'HAW', 'Hebrew': 'HEB', 'Herero': 'HER', 'Hiligaynon': 'HIL', 'Himachali': 'HIM', 'Hindi': 'HIN', 'Hittite': 'HIT', 'Hmong': 'HMN', 'Hiri Motu': 'HMO', 'Croatian': 'HRV', 'Upper Sorbian': 'HSB', 'Hungarian': 'HUN', 'Hupa': 'HUP', 'Iban': 'IBA', 'Igbo': 'IBO', 'Icelandic': 'ICE', 'Ido': 'IDO', 'Sichuan Yi': 'III', 'Ijo': 'IJO', 'Inuktitut': 'IKU', 'Interlingue': 'ILE', 'Iloko': 'ILO', 'Interlingua (International Auxiliary Language Association)': 'INA', 'Indic (Other)': 'INC', 'Indonesian': 'IND', 'Indo-European (Other)': 'INE', 'Ingush': 'INH', 'Inupiaq': 'IPK', 'Iranian (Other)': 'IRA', 'Iroquoian languages': 'IRO', 'Italian': 'ITA', 'Javanese': 'JAV', 'Lojban': 'JBO', 'Japanese': 'JPN', 'Judeo-Persian': 'JPR', 'Judeo-Arabic': 'JRB', 'Kara-Kalpak': 'KAA', 'Kabyle': 'KAB', 'Kachin': 'KAC', 'Kalaallisut': 'KAL', 'Greenlandic': 'KAL', 'Kamba': 'KAM', 'Kannada': 'KAN', 'Karen': 'KAR', 'Kashmiri': 'KAS', 'Kanuri': 'KAU', 'Kawi': 'KAW', 'Kazakh': 'KAZ', 'Kabardian': 'KBD', 'Khasi': 'KHA', 'Khoisan (Other)': 'KHI', 'Khmer': 'KHM', 'Khotanese': 'KHO', 'Kikuyu': 'KIK', 'Gikuyu': 'KIK', 'Kinyarwanda': 'KIN', 'Kirghiz': 'KIR', 'Kimbundu': 'KMB', 'Konkani': 'KOK', 'Komi': 'KOM', 'Kongo': 'KON', 'Korean': 'KOR', 'Kosraean': 'KOS', 'Kpelle': 'KPE', 'Karachay-Balkar': 'KRC', 'Kru': 'KRO', 'Kurukh': 'KRU', 'Kuanyama': 'KUA', 'Kwanyama': 'KUA', 'Kumyk': 'KUM', 'Kurdish': 'KUR', 'Kutenai': 'KUT', 'Ladino': 'LAD', 'Lahnda': 'LAH', 'Lamba': 'LAM', 'Lao': 'LAO', 'Latin': 'LAT', 'Latvian': 'LAV', 'Lezghian': 'LEZ', 'Limburgan': 'LIM', 'Limburger': 'LIM', 'Limburgish': 'LIM', 'Lingala': 'LIN', 'Lithuanian': 'LIT', 'Mongo': 'LOL', 'Lozi': 'LOZ', 'Luxembourgish': 'LTZ', 'Letzeburgesch': 'LTZ', 'Luba-Lulua': 'LUA', 'Luba-Katanga': 'LUB', 'Ganda': 'LUG', 'Luiseno': 'LUI', 'Lunda': 'LUN', 'Luo (Kenya and Tanzania)': 'LUO', 'lushai': 'LUS', 'Macedonian': 'MAC', 'Madurese': 'MAD', 'Magahi': 'MAG', 'Marshallese': 'MAH', 'Maithili': 'MAI', 'Makasar': 'MAK', 'Malayalam': 'MAL', 'Mandingo': 'MAN', 'Maori': 'MAO', 'Austronesian (Other)': 'MAP', 'Marathi': 'MAR', 'Masai': 'MAS', 'Malay': 'MAY', 'Moksha': 'MDF', 'Mandar': 'MDR', 'Mende': 'MEN', 'Irish, Middle (900-1200)': 'MGA', "Mi'kmaq": 'MIC', 'Micmac': 'MIC', 'Minangkabau': 'MIN', 'Mon-Khmer (Other)': 'MKH', 'Malagasy': 'MLG', 'Maltese': 'MLT', 'Manchu': 'MNC', 'Manipuri': 'MNI', 'Manobo languages': 'MNO', 'Mohawk': 'MOH', 'Mongolian': 'MON', 'Mossi': 'MOS', 'Munda languages': 'MUN', 'Creek': 'MUS', 'Mirandese': 'MWL', 'Marwari': 'MWR', 'Mayan languages': 'MYN', 'Erzya': 'MYV', 'Nahuatl': 'NAH', 'North American Indian': 'NAI', 'Neapolitan': 'NAP', 'Nauru': 'NAU', 'Navajo': 'NAV', 'Navaho': 'NAV', 'Ndebele, South': 'NBL', 'South Ndebele': 'NBL', 'Ndebele, North': 'NDE', 'North Ndebele': 'NDE', 'Ndonga': 'NDO', 'Low German': 'NDS', 'Low Saxon': 'NDS', 'German, Low': 'NDS', 'Saxon, Low': 'NDS', 'Nepali': 'NEP', 'Newari': 'NEW', 'Nepal Bhasa': 'NEW', 'Nias': 'NIA', 'Niger-Kordofanian (Other)': 'NIC', 'Niuean': 'NIU', 'Norwegian Nynorsk': 'NNO', 'Nynorsk, Norwegian': 'NNO', 'Norwegian Bokmål': 'NOB', 'Bokmål, Norwegian': 'NOB', 'Nogai': 'NOG', 'Norse, Old': 'NON', 'Norwegian': 'NOR', 'Northern Sotho, Pedi': 'NSO', 'Sepedi': 'NSO', 'Nubian languages': 'NUB', 'Classical Newari': 'NWC', 'Old Newari': 'NWC', 'Classical Nepal Bhasa': 'NWC', 'Chichewa': 'NYA', 'Chewa': 'NYA', 'Nyanja': 'NYA', 'Nyamwezi': 'NYM', 'Nyankole': 'NYN', 'Nyoro': 'NYO', 'Nzima': 'NZI', 'Occitan (post 1500)': 'OCI', 'Provençal': 'OCI', 'Ojibwa': 'OJI', 'Oriya': 'ORI', 'Oromo': 'ORM', 'Osage': 'OSA', 'Ossetian': 'OSS', 'Ossetic': 'OSS', 'Turkish, Ottoman (1500-1928)': 'OTA', 'Otomian languages': 'OTO', 'Papuan (Other)': 'PAA', 'Pangasinan': 'PAG', 'Pahlavi': 'PAL', 'Pampanga': 'PAM', 'Panjabi': 'PAN', 'Punjabi': 'PAN', 'Papiamento': 'PAP', 'Palauan': 'PAU', 'Persian, Old (ca.600-400 B.C.)': 'PEO', 'Persian': 'PER', 'Philippine (Other)': 'PHI', 'Phoenician': 'PHN', 'Pali': 'PLI', 'Polish': 'POL', 'Pohnpeian': 'PON', 'Portuguese': 'POR', 'Prakrit languages': 'PRA', 'Provençal, Old (to 1500)': 'PRO', 'Pushto': 'PUS', 'Quechua': 'QUE', 'Romansh': 'ROH', 'Romanian': 'RUM', 'Moldavian': 'RUM', 'Moldovan': 'RUM', 'Kirundi': 'RUN', 'Russian': 'RUS', 'Sandawe': 'SAD', 'Sango': 'SAG', 'Yakut': 'SAH', 'South American Indian (Other)': 'SAI', 'Salishan languages': 'SAL', 'Samaritan Aramaic': 'SAM', 'Sanskrit': 'SAN', 'Sasak': 'SAS', 'Santali': 'SAT', 'Sicilian': 'SCN', 'Scots': 'SCO', 'Selkup': 'SEL', 'Semitic (Other)': 'SEM', 'Irish, Old (to 900)': 'SGA', 'Sign Languages': 'SGN', 'Shan': 'SHN', 'Sidamo': 'SID', 'Sinhala': 'SIN', 'Sinhalese': 'SIN', 'Siouan languages': 'SIO', 'Sino-Tibetan (Other)': 'SIT', 'Slavic (Other)': 'SLA', 'Slovak': 'SLO', 'Slovenian': 'SLV', 'Southern Sami': 'SMA', 'Northern Sami': 'SME', 'Sami languages (Other)': 'SMI', 'Lule Sami': 'SMJ', 'Inari Sami': 'SMN', 'Samoan': 'SMO', 'Skolt Sami': 'SMS', 'Shona': 'SNA', 'Sindhi': 'SND', 'Soninke': 'SNK', 'Sogdian': 'SOG', 'Somali': 'SOM', 'Songhai': 'SON', 'Sotho, Southern': 'SOT', 'Spanish': 'SPA', 'Castilian': 'SPA', 'Sardinian': 'SRD', 'Serbian': 'SRP', 'Serer': 'SRR', 'Nilo-Saharan (Other)': 'SSA', 'Swati': 'SSW', 'Sukuma': 'SUK', 'Sundanese': 'SUN', 'Susu': 'SUS', 'Sumerian': 'SUX', 'Swahili': 'SWA', 'Swedish': 'SWE', 'Syriac': 'SYR', 'Tahitian': 'TAH', 'Tai (Other)': 'TAI', 'Tamil': 'TAM', 'Tatar': 'TAT', 'Telugu': 'TEL', 'Timne': 'TEM', 'Tereno': 'TER', 'Tetum': 'TET', 'Tajik': 'TGK', 'Tagalog': 'TGL', 'Thai': 'THA', 'Tibetan': 'TIB', 'Tigre': 'TIG', 'Tigrinya': 'TIR', 'Tiv': 'TIV', 'Tokelau': 'TKL', 'Klingon': 'TLH', 'tlhIngan-Hol': 'TLH', 'Tlingit': 'TLI', 'Tamashek': 'TMH', 'Tonga (Nyasa)': 'TOG', 'Tonga (Tonga Islands)': 'TON', 'Tok Pisin': 'TPI', 'Tsimshian': 'TSI', 'Tswana': 'TSN', 'Tsonga': 'TSO', 'Turkmen': 'TUK', 'Tumbuka': 'TUM', 'Tupi languages': 'TUP', 'Turkish': 'TUR', 'Altaic (Other)': 'TUT', 'Tuvalu': 'TVL', 'Twi': 'TWI', 'Tuvinian': 'TYV', 'Udmurt': 'UDM', 'Ugaritic': 'UGA', 'Uighur': 'UIG', 'Uyghur': 'UIG', 'Ukrainian': 'UKR', 'Umbundu': 'UMB', 'Undetermined': 'UND', 'Urdu': 'URD', 'Uzbek': 'UZB', 'Vai': 'VAI', 'Venda': 'VEN', 'Vietnamese': 'VIE', 'Volapük': 'VOL', 'Votic': 'VOT', 'Wakashan languages': 'WAK', 'Walamo': 'WAL', 'Waray': 'WAR', 'Washo': 'WAS', 'Welsh': 'WEL', 'Sorbian languages': 'WEN', 'Walloon': 'WLN', 'Wolof': 'WOL', 'Kalmyk': 'XAL', 'Xhosa': 'XHO', 'Yao': 'YAO', 'Yapese': 'YAP', 'Yiddish': 'YID', 'Yoruba': 'YOR', 'Yupik languages': 'YPK', 'Zapotec': 'ZAP', 'Zenaga': 'ZEN', 'Zhuang': 'ZHA', 'Chuang': 'ZHA', 'Zande': 'ZND', 'Zulu': 'ZUL', 'Zuni': 'ZUN', 'Instrumental': 'N/A', }