#!/usr/bin/env python # -*- coding:utf-8 -*- codes2names = { 'aa': 'Afar', 'ab': 'Abkhazian', 'ace': 'Achinese', 'ach': 'Acoli', 'ada': 'Adangme', 'ady': 'Adyghe', 'ae': 'Avestan', 'afa': 'Afro-Asiatic (Other)', 'af': 'Afrikaans', 'afh': 'Afrihili', 'ak': 'Akan', 'akk': 'Akkadian', 'ale': 'Aleut', 'alg': 'Algonquian Languages', 'am': 'Amharic', 'an': 'Aragonese', 'ang': 'English, Old (ca.450-1100)', 'apa': 'Apache Languages', 'ar': 'Arabic', 'arc': 'Aramaic', 'arn': 'Araucanian', 'arp': 'Arapaho', 'art': 'Artificial (Other)', 'arw': 'Arawak', 'as': 'Assamese', 'ast': 'Asturian', 'ath': 'Athapascan Languages', 'aus': 'Australian Languages', 'av': 'Avaric', 'awa': 'Awadhi', 'ay': 'Aymara', 'az': 'Azerbaijani', 'ba': 'Bashkir', 'bad': 'Banda', 'bai': 'Bamileke Languages', 'bal': 'Baluchi', 'bam': 'Bambara', 'ban': 'Balinese', 'bas': 'Basa', 'bat': 'Baltic (Other)', 'be': 'Belarusian', 'bej': 'Beja', 'bem': 'Bemba', 'ber': 'Berber', 'bg': 'Bulgarian', 'bh': 'Bihari', 'bho': 'Bhojpuri', 'bi': 'Bislama', 'bik': 'Bikol', 'bin': 'Bini', 'bla': 'Siksika', 'bm': 'Bambara', 'bn': 'Bengali', 'bnt': 'Bantu', 'bo': 'Tibetan', 'bra': 'Braj', 'br': 'Breton', 'bs': 'Bosnian', 'btk': 'Batak', 'bua': 'Buriat', 'bug': 'Buginese', 'byn': 'Blin', 'ca': 'Catalan', 'cad': 'Caddo', 'cai': 'Central American Indian (Other)', 'car': 'Carib', 'cau': 'Caucasian (Other)', 'ceb': 'Cebuano', 'ce': 'Chechen', 'cel': 'Celtic (Other)', 'chb': 'Chibcha', 'ch': 'Chamorro', 'chg': 'Chagatai', 'chk': 'Chuukese', 'chm': 'Mari', 'chn': 'Chinook Jargon', 'cho': 'Choctaw', 'chp': 'Chipewyan', 'chr': 'Cherokee', 'chy': 'Cheyenne', 'cmc': 'Chamic Languages', 'co': 'Corsican', 'cop': 'Coptic', 'cpe': 'Creoles and Pidgins, English-based (Other)', 'cpf': 'Creoles and Pidgins, French-based (Other)', 'cpp': 'Creoles and pidgins, Portuguese-based (Other)', 'cr': 'Cree', 'crh': 'Crimean Turkish; Crimean Tatar', 'crp': 'Creoles and Pidgins (Other)', 'csb': 'Kashubian', 'cs': 'Czech', 'cu': 'Church Slavic', 'cus': 'Cushitic (Other)', 'cv': 'Chuvash', 'cy': 'Welsh', 'da': 'Danish', 'dak': 'Dakota', 'dar': 'Dargwa', 'day': 'Dayak', 'de': 'German', 'del': 'Delaware', 'den': 'Slave', 'dgr': 'Dogrib', 'din': 'Dinka', 'doi': 'Dogri', 'dra': 'Dravidian (Other)', 'dsb': 'Lower Sorbian', 'dua': 'Duala', 'dum': 'Dutch, Middle (ca. 1050-1350)', 'dv': 'Divehi', 'dyu': 'Dyula', 'dz': 'Dzongkha', 'ee': 'Ewe', 'efi': 'Efik', 'egy': 'Egyptian (Ancient)', 'eka': 'Ekajuk', 'el': 'Greek', 'elx': 'Elamite', 'en': 'English', 'enm': 'English, Middle (1100-1500)', 'eo': 'Esperanto', 'es': 'Spanish', 'et': 'Estonian', 'eu': 'Basque', 'ewo': 'Ewondo', 'fan': 'Fang', 'fa': 'Persian', 'fat': 'Fanti', 'ff': 'Fulah', 'fi': 'Finnish', 'fiu': 'Finno - Ugrian (Other)', 'fj': 'Fijian', 'fo': 'Faroese', 'fon': 'Fon', 'fr': 'French', 'frm': 'French, Middle (ca.1400-1600)', 'fro': 'French, Old (842-ca.1400)', 'fur': 'Friulian', 'fy': 'Frisian', 'gaa': 'Ga', 'ga': 'Irish', 'gay': 'Gayo', 'gba': 'Gbaya', 'gd': 'Scottish Gaelic', 'gem': 'Germanic (Other)', 'gez': 'Geez', 'gil': 'Gilbertese', 'gl': 'Gallegan', 'gmh': 'German, Middle High (ca.1050-1500)', 'gn': 'Guarani', 'goh': 'German, Old High (ca.750-1050)', 'gon': 'Gondi', 'gor': 'Gorontalo', 'got': 'Gothic', 'grb': 'Gerbo', 'grc': 'Greek, Ancient (to 1453)', 'gu': 'Gujarati', 'gv': 'Manx', 'gwi': "Gwich'in", 'ha': 'Hausa', 'hai': 'Haida', 'haw': 'Hawaiian', 'he': 'Hebrew', 'hi': 'Hindi', 'hil': 'Hiligaynon', 'him': 'Himachali', 'hit': 'Hittite', 'hmn': 'Hmong', 'ho': 'Hiri Motu', 'hr': 'Croatian', 'hsb': 'Upper Sorbian', 'ht': 'Haitian', 'hu': 'Hungarian', 'hup': 'Hupa', 'hy': 'Armenian', 'hz': 'Herero', 'ia': 'Interlingua', 'iba': 'Iban', 'id': 'Indonesian', 'ie': 'Interlingue', 'ig': 'Igbo', 'ii': 'Sichuan Yi', 'ijo': 'Ijo', 'ik': 'Inupiaq', 'ilo': 'Iloko', 'inc': 'Indic (Other)', 'ine': 'Indo-European (Other)', 'inh': 'Ingush', 'io': 'Ido', 'ira': 'Iranian', 'iro': 'Iroquoian languages', 'is': 'Icelandic', 'it': 'Italian', 'iu': 'Inuktitut', 'ja': 'Japanese', 'jbo': 'Lojban', 'jpr': 'Judeo-Persian', 'jrb': 'Judeo-Arabic', 'jv': 'Javanese', 'kaa': 'Kara-Kalpak', 'kab': 'Kabyle', 'kac': 'Kachin', 'ka': 'Georgian', 'kam': 'Kamba', 'kar': 'Karen', 'kaw': 'Kawi', 'kbd': 'Kabardian', 'kg': 'Kongo', 'kha': 'Khasi', 'khi': 'Khoisan (Other)', 'kho': 'Khotanese', 'ki': 'Kikuyu', 'kj': 'Kuanyama', 'kk': 'Kazakh', 'kl': 'Kalaallisut', 'kmb': 'Kimbundu', 'km': 'Khmer', 'kn': 'Kannada', 'kok': 'Konkani', 'ko': 'Korean', 'kos': 'Kosraean', 'kpe': 'Kpelle', 'krc': 'Karachay-Balkar', 'kr': 'Kanuri', 'kro': 'Kru', 'kru': 'Kurukh', 'ks': 'Kashmiri', 'ku': 'Kurdish', 'kum': 'Kumyk', 'kut': 'Kutenai', 'kv': 'Komi', 'kw': 'Cornish', 'ky': 'Kirghiz', 'lad': 'Ladino', 'lah': 'Lahnda', 'la': 'Latin', 'lam': 'Lamba', 'lb': 'Luxembourgish', 'lez': 'Lezghian', 'lg': 'Ganda', 'li': 'Limburgish', 'ln': 'Lingala', 'lo': 'Lao', 'lol': 'Mongo', 'loz': 'Lozi', 'lt': 'Lithuanian', 'lua': 'Luba-Lulua', 'lui': 'Luiseno', 'lu': 'Luba-Katanga', 'lun': 'Lunda', 'luo': 'Luo', 'lus': 'Lushai', 'lv': 'Latvian', 'mad': 'Madurese', 'mag': 'Magahi', 'mai': 'Maithili', 'mak': 'Makasar', 'man': 'Mandingo', 'map': 'Austronesian', 'mas': 'Masai', 'mdf': 'Moksha', 'mdr': 'Mandar', 'men': 'Mende', 'mga': 'Irish, Middle (900-1200)', 'mg': 'Malagasy', 'mh': 'Marshallese', 'mic': 'Micmac', 'mi': 'Maori', 'min': 'Minangkabau', 'mis': 'Miscellaneous Languages', 'mkh': 'Mon-Khmer (Other)', 'mk': 'Macedonian', 'ml': 'Malayalam', 'mnc': 'Manchu', 'mni': 'Manipuri', 'mn': 'Mongolian', 'mno': 'Manobo Languages', 'moh': 'Mohawk', 'mo': 'Moldavian', 'mos': 'Mossi', 'mr': 'Marathi', 'ms': 'Malay', 'mt': 'Maltese', 'mul': 'Multiple Languages', 'mun': 'Munda Languages', 'mus': 'Creek', 'mwr': 'Marwari', 'my': 'Burmese', 'myn': 'Mayan', 'myv': 'Erzya', 'nah': 'Nahuatl', 'nai': 'North American Indian (Other)', 'na': 'Nauru', 'nap': 'Neapolitan', 'nb': u'Norwegian Bokm\xe5l', 'nd': 'Ndebele, North', 'nds': 'Low German; Low Saxon', 'ne': 'Nepali', 'new': 'Newari', 'ng': 'Ndonga', 'nia': 'Nias', 'nic': 'Niger - Kordofanian (Other)', 'niu': 'Niuean', 'nl': 'Dutch', 'nn': 'Norwegian Nynorsk', 'nog': 'Nogai', 'non': 'Norse, Old', 'no': 'Norwegian', 'nr': 'Ndebele, South', 'nso': 'Sotho, Northern', 'nub': 'Nubian Languages', 'nv': 'Navajo', 'nym': 'Nyamwezi', 'nyn': 'Nyankole', 'ny': 'Nyanja; Chichewa; Chewa', 'nyo': 'Nyoro', 'nzi': 'Nzima', 'oc': u'Occitan (post 1500); Proven\xe7al', 'oj': 'Ojibwa', 'om': 'Oromo', 'or': 'Oriya', 'osa': 'Osage', 'os': 'Ossetic', 'ota': 'Turkish, Ottoman (1500-1928)', 'oto': 'Otomian Languages', 'paa': 'Papuan (Other)', 'pag': 'Pangasinan', 'pal': 'Pahlavi', 'pam': 'Pampanga', 'pap': 'Papiamento', 'pa': 'Punjabi', 'pau': 'Palauan', 'peo': 'Persian Old (ca.600-400 B.C.)', 'phi': 'Philippine (Other)', 'phn': 'Phoenician', 'pi': 'Pali', 'pl': 'Polish', 'pon': 'Pohnpeian', 'pra': 'Prakrit Languages', 'pro': u'Proven\xe7al, Old (to 1500)', 'ps': 'Pashto (Pushto)', 'pt': 'Portuguese', 'qu': 'Quechua', 'raj': 'Rajasthani', 'rap': 'Rapanui', 'rar': 'Rarotongan', 'rm': 'Rhaeto-Romance', 'rn': 'Rundi', 'roa': 'Romance (Other)', 'rom': 'Romany', 'root': 'Root', 'ro': 'Romanian', 'ru': 'Russian', 'rw': 'Kinyarwanda', 'sad': 'Sandawe', 'sah': 'Yakut', 'sai': 'South American Indian (Other)', 'sal': 'Salishan languages', 'sam': 'Samaritan Aramaic', 'sa': 'Sanskrit', 'sas': 'Sasak', 'sat': 'Santali', 'sco': 'Scots', 'sc': 'Sardinian', 'sd': 'Sindhi', 'sel': 'Selkup', 'sem': 'Semitic (Other)', 'se': 'Northern Sami', 'sga': 'Irish, Old (to 900)', 'sgn': 'Sign Languages', 'sg': 'Sango', 'shn': 'Shan', 'sh': 'Serbo-Croatian', 'sid': 'Sidamo', 'sio': 'Siouan Languages', 'si': 'Sinhalese', 'sit': 'Sino-Tibetan (Other)', 'sk': 'Slovak', 'sla': 'Slavic (Other)', 'sl': 'Slovenian', 'sma': 'Southern Sami', 'smi': 'Sami languages (Other)', 'smj': 'Lule Sami', 'smn': 'Inari Sami', 'sm': 'Samoan', 'sms': 'Skolt Sami', 'snk': 'Soninke', 'sn': 'Shona', 'sog': 'Sogdien', 'son': 'Songhai', 'so': 'Somali', 'sq': 'Albanian', 'srr': 'Serer', 'sr': 'Serbian', 'ssa': 'Nilo-Saharam (Other)', 'ss': 'Swati', 'st': 'Sotho, Southern', 'suk': 'Sukuma', 'sus': 'Susu', 'su': 'Sundanese', 'sux': 'Sumerian', 'sv': 'Swedish', 'sw': 'Swahili', 'syr': 'Syriac', 'tai': 'Tai (Other)', 'ta': 'Tamil', 'tem': 'Timne', 'ter': 'Tereno', 'te': 'Telugu', 'tet': 'Tetum', 'tg': 'Tajik', 'th': 'Thai', 'tig': 'Tigre', 'ti': 'Tigrinya', 'tiv': 'Tiv', 'tkl': 'Tokelau', 'tk': 'Turkmen', 'tli': 'Tlingit', 'tl': 'Tagalog', 'tmh': 'Tamashek', 'tn': 'Tswana', 'tog': 'Tonga (Nyasa)', 'to': 'Tonga (Tonga Islands)', 'tpi': 'Tok Pisin', 'tr': 'Turkish', 'tsi': 'Tsimshian', 'ts': 'Tsonga', 'tt': 'Tatar', 'tum': 'Tumbuka', 'tup': 'Tupi languages', 'tut': 'Altaic (Other)', 'tvl': 'Tuvalu', 'tw': 'Twi', 'ty': 'Tahitian', 'tyv': 'Tuvinian', 'udm': 'Udmurt', 'uga': 'Ugaritic', 'ug': 'Uighur', 'uk': 'Ukrainian', 'umb': 'Umbundu', 'und': 'Undetermined', 'ur': 'Urdu', 'uz': 'Uzbek', 'vai': 'Vai', 've': 'Venda', 'vi': 'Vietnamese', 'vot': 'Votic', 'vo': u'Volap\xfck', 'wak': 'Wakashan Languages', 'wal': 'Walamo', 'war': 'Waray', 'was': 'Washo', 'wa': 'Walloon', 'wen': 'Sorbian Languages', 'wo': 'Wolof', 'xal': 'Kalmyk', 'xh': 'Xhosa', 'yao': 'Yao', 'yap': 'Yapese', 'yi': 'Yiddish', 'yo': 'Yoruba', 'ypk': 'Yupik Languages', 'zap': 'Zapotec', 'za': 'Zhuang', 'zen': 'Zenaga', 'zh': 'Chinese', 'znd': 'Zande', 'zun': 'Zuni', 'zu': 'Zulu' } names2codes = dict([(language,code) for code,language in codes2names.items()])