Skip to content

Instantly share code, notes, and snippets.

@lancejpollard

lancejpollard/parse.js Secret

Last active Apr 14, 2021
Embed
What would you like to do?
Wiktionary parse start
function parse(text) {
var scope = null
var lang
var type
let sections = []
let section
text.split('\n').forEach(line => {
if (line.match(/^=+Etymology=+/)) {
section = { type: 'etymology', text: [] }
sections.push(section)
return
} else if (line.match(/^=+Pronunciation=+/)) {
section = { type: 'pronunciation', text: [] }
sections.push(section)
return
} else if (line.match(/^=+English=+/)) {
section = { type: 'language', scope: 'english', text: [] }
sections.push(section)
return
} else if (line.match(/^=+Etymology +\d+=+/)) {
section = { type: 'etymology', text: [] }
sections.push(section)
return
} else if (line.match(/^=+Noun=+/)) {
section = { type: 'definition', scope: 'noun', text: [] }
sections.push(section)
return
} else if (line.match(/^=+Verb=+/)) {
section = { type: 'definition', scope: 'verb', text: [] }
sections.push(section)
return
} else if (line.match(/^==+/)) {
section = { type: 'unknown', text: [] }
sections.push(section)
return
}
if (section)
section.text.push(line)
})
let meanings = []
let meaning = {}
meanings.push(meaning)
sections.forEach(section => {
switch (section.type) {
case 'etymology':
if (meaning.etym) {
meaning = {}
meanings.push(meaning)
}
let replacements = []
section.text = section.text.join('\n')
.replace(/''+/g, '"')
.replace(/\<ref[^\<]+\<\/ref\>/g, '')
.replace(/\[\[([^\]]+)\]\]/g, (_, $1) => {
let parts = $1.split('|')
if (parts[0].match(/^File:/)) return ''
if (parts[0].match(/^w:/)) {
let part = parts[1] || parts[0].replace(/^w:/, '')
return `<a href='/${part.toLowerCase().replace(/\s+/g, '-')}'>${part}</a>`
}
if (parts[0].match(':')) return ''
return `<a href='/${parts[0].toLowerCase().replace(/\s+/g, '-')}'>${parts[0]}</a>`
}).replace(/\{\{([^\}]+)\}\}/g, (_, $1) => {
let [ l, t ] = parseEtymologyPiece($1)
if (t) {
if (t == '-') {
t = `{REPLACEME${replacements.length}}`
} else {
replacements.push(t)
}
let href = `/${t}`
if (l) href += `/${langs[l] ? langs[l].replace(/\s+/, '-') : l}`
return `<a class='du' href='${href}'>${t}</a>`
} else {
return ''
}
}).replace(/\{REPLACEME(\d+)\}/g, (_, $1) => {
let replacement = replacements[parseInt($1)]
return replacement
})
if (section.text.trim()) {
meaning.etym = section.text
}
break
case 'pronunciation':
if (meaning.pron) {
meaning = {}
meanings.push(meaning)
}
meaning.pron = meaning.pron || []
section.text.forEach(line => {
let d = parsePronunciationLine(line)
if (d) {
meaning.pron.push(d)
}
})
break
}
})
return meanings
}
function parsePronunciationLine(line) {
let val
let type
line.replace(/\{\{\s*a\s*\|UK\s*\}\}\s*\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'uk'
})
line.replace(/\{\{\s*a\s*\|US\s*\}\}\s*\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'us'
})
line.replace(/\{\{enPR|[^\}]+\}\},?\s*\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'us'
})
line.replace(/GA\}\},?\s*\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'ga'
})
line.replace(/GA\}\},?.+\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'ga'
})
line.replace(/NZ\}\},?.+\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'nz'
})
line.replace(/GenAm\}\},?.+\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = 'ga'
})
line.replace(/GA\}\},?.+\{\{IPA\|\/?([^\/\|]+)\/?\|[^\|]+|lang=en\}\}/, (_, $1) => {
val = $1
type = 'ga'
})
line.replace(/GenAm\}\},?.+\{\{IPA\|\/?([^\/\|]+)\/?\|[^\|]+|lang=en\}\}/, (_, $1) => {
val = $1
type = 'ga'
})
line.replace(/\{\{IPA\|\/?([^\/\|]+)\/?\|lang=en\}\}/, (_, $1) => {
val = $1
type = null
})
// {{a|NZ}} {{IPA|/fɘʃ/|lang=en}}
// {{IPA|/fɪʃ/|lang=en}}
// {{a|GA}} {{IPA|/ˈhæpi/|lang=en}}
// * {{a|RP}} {{IPA|/pliːz/|lang=en}}
// * {{a|GA}} {{enPR|plēz}}, {{IPA|/pliz/|[pʰliz]|lang=en}}
//
// * {{enPR|blŭd}}, {{IPA|/blʌd/|lang=en}}
// * {{a|Northern UK}} {{enPR|blo͝od}}, {{IPA|/blʊd/|lang=en}}
if (!val) return
if (val.match('lang')) return
return { val, type }
}
function parseEtymologyPiece(piece) {
let parts = piece.split('|')
parts.shift() // first one is ignored.
let ls = []
if (!parts[0]) return []
if (langs[parts[0].split('-')[0]]) {
ls.push(parts.shift().split('-')[0])
}
if (parts.length > 1) {
if (langs[parts[0].split('-')[0]]) {
ls.push(parts.shift().split('-')[0])
}
}
let l = ls.pop()
let t = parts.shift()
return [ l, t ]
// {{inh|en|enm|poisoun}}
// {{m|enm|poyson}}
// {{der|en|la|pōtio|pōtio, pōtiōnis|t=drink, a draught, a poisonous draught, a potion}}
// {{m|la|pōtō|t=I drink}}
// {{der|en|enm|happy||fortunate, happy}}
// {{cog|is|heppinn||lucky}}
}
var langs = {
"ab": "abkhazian",
"aa": "afar",
"af": "afrikaans",
"ak": "akan",
"sq": "albanian",
"am": "amharic",
"ar": "arabic",
"an": "aragonese",
"hy": "armenian",
"as": "assamese",
"av": "avaric",
"ae": "avestan",
"ay": "aymara",
"az": "azerbaijani",
"bm": "bambara",
"ba": "bashkir",
"eu": "basque",
"be": "belarusian",
"bn": "bengali",
"bh": "bihari",
"bi": "bislama",
"bs": "bosnian",
"br": "breton",
"bg": "bulgarian",
"my": "burmese",
"ca": "catalan/valencian",
"ch": "chamorro",
"ce": "chechen",
"ny": "chichewa/chewa",
"zh": "chinese",
"cv": "chuvash",
"kw": "cornish",
"co": "corsican",
"cr": "cree",
"hr": "croatian",
"cs": "czech",
"da": "danish",
"dv": "divehi/dhivehi/maldivian",
"nl": "dutch/flemish",
"dz": "dzongkha",
"en": "english",
"eo": "esperanto",
"et": "estonian",
"ee": "ewe",
"fo": "faroese",
"fj": "fijian",
"fi": "finnish",
"fr": "french",
"ff": "fulah",
"gl": "galician",
"ka": "georgian",
"de": "german",
"el": "greek/modern",
"gn": "guarani",
"gu": "gujarati",
"ht": "haitian/haitian creole",
"ha": "hausa",
"he": "hebrew",
"hz": "herero",
"hi": "hindi",
"ho": "hiri motu",
"hu": "hungarian",
"ia": "interlingua",
"id": "indonesian",
"ie": "interlingue/occidental",
"ga": "irish",
"ig": "igbo",
"ik": "inupiaq",
"io": "ido",
"is": "icelandic",
"it": "italian",
"iu": "inuktitut",
"ja": "japanese",
"jv": "javanese",
"kl": "kalaallisut/greenlandic",
"kn": "kannada",
"kr": "kanuri",
"ks": "kashmiri",
"kk": "kazakh",
"km": "central khmer",
"ki": "kikuyu/gikuyu",
"rw": "kinyarwanda",
"ky": "kirghiz/kyrgyz",
"kv": "komi",
"kg": "kongo",
"ko": "korean",
"ku": "kurdish",
"kj": "kuanyama/kwanyama",
"la": "latin",
"lb": "luxembourgish/letzeburgesch",
"lg": "ganda",
"li": "limburgan/limburger/limburgish",
"ln": "lingala",
"lo": "lao",
"lt": "lithuanian",
"lu": "luba-katanga",
"lv": "latvian",
"gv": "manx",
"mk": "macedonian",
"mg": "malagasy",
"ms": "malay",
"ml": "malayalam",
"mt": "maltese",
"mi": "maori",
"mr": "marathi",
"mh": "marshallese",
"mn": "mongolian",
"na": "nauru",
"nv": "navajo/navaho",
"nd": "north ndebele",
"ne": "nepali",
"ng": "ndonga",
"nb": "norwegian bokmål",
"nn": "norwegian nynorsk",
"no": "norwegian",
"ii": "sichuan yi/nuosu",
"nr": "south ndebele",
"oc": "occitan",
"oj": "ojibwa",
"cu": "church slavic/old",
"om": "oromo",
"or": "oriya",
"os": "ossetian/ossetic",
"pa": "punjabi/panjabi",
"pi": "pali",
"fa": "persian",
"pl": "polish",
"ps": "pashto/pushto",
"pt": "portuguese",
"qu": "quechua",
"rm": "romansh",
"rn": "rundi",
"ro": "romanian/moldavian/moldovan",
"ru": "russian",
"sa": "sanskrit",
"sc": "sardinian",
"sd": "sindhi",
"se": "northern sami",
"sm": "samoan",
"sg": "sango",
"sr": "serbian",
"gd": "gaelic/scottish-gaelic",
"sn": "shona",
"si": "sinhala/sinhalese",
"sk": "slovak",
"sl": "slovenian",
"so": "somali",
"st": "southern sotho",
"es": "spanish/castilian",
"su": "sundanese",
"sw": "swahili",
"ss": "swati",
"sv": "swedish",
"ta": "tamil",
"te": "telugu",
"tg": "tajik",
"th": "thai",
"ti": "tigrinya",
"bo": "tibetan",
"tk": "turkmen",
"tl": "tagalog",
"tn": "tswana",
"to": "tonga",
"tr": "turkish",
"ts": "tsonga",
"tt": "tatar",
"tw": "twi",
"ty": "tahitian",
"ug": "uighur/uyghur",
"uk": "ukrainian",
"ur": "urdu",
"uz": "uzbek",
"ve": "venda",
"vi": "vietnamese",
"vo": "volapük",
"wa": "walloon",
"cy": "welsh",
"wo": "wolof",
"fy": "western frisian",
"xh": "xhosa",
"yi": "yiddish",
"yo": "yoruba",
"za": "zhuang/chuang",
"zu": "zulu",
him: 'himachali',
afa: 'afro-asiatic',
alg: 'algonquian',
apa: 'apache',
art: 'artificial',
ath: 'athapascan',
aus: 'australian',
bad: 'banda',
bai: 'bamileke',
bat: 'baltic',
ber: 'berber',
bih: 'bihari',
bnt: 'bantu',
btk: 'batak',
cai: 'central-american-indian',
cau: 'caucasian',
cel: 'celtic',
cmc: 'chamic',
cpe: 'creoles-and-pidgins/english',
cpf: 'creoles-and-pidgins/french',
cpp: 'creoles-and-pidgins/portuguese',
crp: 'creoles-and',
cus: 'cushitic',
day: 'land-dayak',
dra: 'dravidian',
fiu: 'finno-ugrian',
gem: 'germanic',
ijo: 'ijo',
inc: 'indic',
ine: 'indo-european',
ira: 'iranian',
iro: 'iroquoian',
kar: 'karen',
khi: 'khoisan',
kro: 'kru',
map: 'austronesian',
mkh: 'mon–khmer',
mno: 'manobo',
mun: 'munda',
myn: 'mayan',
nah: 'nahuatl',
nai: 'north-american-indian',
nic: 'niger-kordofanian',
nub: 'nubian',
oto: 'otomian',
paa: 'papuan',
phi: 'philippine',
pra: 'prakrit',
roa: 'romance',
sai: 'south-american-indian',
sal: 'salishan',
sem: 'semitic',
sgn: 'sign',
sio: 'siouan',
sit: 'sino-tibetan',
sla: 'slavic',
smi: 'sami',
son: 'songhai',
ssa: 'nilo-saharan',
tai: 'tai',
tup: 'tupi',
tut: 'altaic',
wak: 'wakashan',
wen: 'sorbian',
ypk: 'yupik',
znd: 'zande',
aaa: "ghotuo",
aab: "alumu-tesu",
aac: "ari",
aad: "amal",
aae: "arbëreshë-albanian",
aaf: "aranadan",
aag: "ambrak",
aah: "abu-arapesh",
aai: "arifama-miniafia",
aak: "ankave",
aal: "afade",
aan: "anambé",
aao: "algerian-saharan-arabic",
aap: "pará arára",
aaq: "eastern abnaki",
aar: "afar",
aas: "aasáx",
aat: "arvanitika-albanian",
aau: "abau",
aaw: "solong",
aax: "mandobo-atas",
aaz: "amarasi",
aba: "abé",
abb: "bankon",
abc: "ambala ayta",
abd: "manide",
abe: "western abnaki",
abf: "abai sungai",
abg: "abaga",
abh: "tajiki arabic",
abi: "abidji",
abj: "aka-bea",
abk: "abkhazian",
abl: "lampung nyo",
abm: "abanyom",
abn: "abua",
abo: "abon",
abp: "abellen ayta",
abq: "abaza",
abr: "abron",
abs: "ambonese malay",
abt: "ambulas",
abu: "abure",
abv: "baharna arabic",
abw: "pal",
abx: "inabaknon",
aby: "aneme wake",
abz: "abui",
aca: "achagua",
acb: "áncá",
acd: "gikyode",
ace: "achinese",
acf: "saint lucian creole french",
ach: "acoli",
aci: "aka-cari",
ack: "aka-kora",
acl: "akar-bale",
acm: "mesopotamian arabic",
acn: "achang",
acp: "eastern acipa",
acq: "ta'izzi-adeni arabic",
acr: "achi",
acs: "acroá",
act: "achterhoeks",
acu: "achuar-shiwiar",
acv: "achumawi",
acw: "hijazi arabic",
acx: "omani arabic",
acy: "cypriot arabic",
acz: "acheron",
ada: "adangme",
adb: "adabe",
add: "dzodinka",
add: "lidzonka",
ade: "adele",
adf: "dhofari arabic",
adg: "andegerebinha",
adh: "adhola",
adi: "adi",
adj: "adioukrou",
adl: "galo",
adn: "adang",
ado: "abu",
adq: "adangbe",
adr: "adonara",
ads: "adamorobe sign language",
adt: "adnyamathanha",
adu: "aduge",
adw: "amundava",
adx: "amdo tibetan",
ady: "adygei",
ady: "adyghe",
adz: "adzera",
aea: "areba",
aeb: "tunisian arabic",
aec: "saidi arabic",
aed: "argentine sign language",
aee: "northeast pashai",
aee: "northeast pashayi",
aek: "haeke",
ael: "ambele",
aem: "arem",
aen: "armenian sign language",
aeq: "aer",
aer: "eastern arrernte",
aes: "alsea",
aeu: "akeu",
aew: "ambakich",
aey: "amele",
aez: "aeka",
afb: "gulf arabic",
afd: "andai",
afe: "putukwam",
afg: "afghan sign language",
afh: "afrihili",
afi: "akrukay",
afi: "chini",
afk: "nanubae",
afn: "defaka",
afo: "eloyi",
afp: "tapei",
afr: "afrikaans",
afs: "afro-seminole creole",
aft: "afitti",
afu: "awutu",
afz: "obokuitai",
aga: "aguano",
agb: "legbo",
agc: "agatu",
agd: "agarabi",
age: "angal",
agf: "arguni",
agg: "angor",
agh: "ngelima",
agi: "agariya",
agj: "argobba",
agk: "isarog agta",
agl: "fembe",
agm: "angaataha",
agn: "agutaynen",
ago: "tainae",
agq: "aghem",
agr: "aguaruna",
ags: "esimbi",
agt: "central cagayan agta",
agu: "aguacateco",
agv: "remontado dumagat",
agw: "kahua",
agx: "aghul",
agy: "southern alta",
agz: "mt. iriga agta",
aha: "ahanta",
ahb: "axamb",
ahg: "qimant",
ahh: "aghu",
ahi: "tiagbamrin aizi",
ahk: "akha",
ahl: "igo",
ahm: "mobumrin aizi",
ahn: "àhàn",
aho: "ahom",
ahp: "aproumu aizi",
ahr: "ahirani",
ahs: "ashe",
aht: "ahtena",
aia: "arosi",
aib: "ainu (china)",
aic: "ainbai",
aid: "alngith",
aie: "amara",
aif: "agi",
aig: "antigua and barbuda creole english",
aih: "ai-cham",
aii: "assyrian neo-aramaic",
aij: "lishanid noshan",
aik: "ake",
ail: "aimele",
aim: "aimol",
ain: "ainu (japan)",
aio: "aiton",
aip: "burumakok",
aiq: "aimaq",
air: "airoran",
ais: "nataoran amis",
ait: "arikem",
aiw: "aari",
aix: "aighon",
aiy: "ali",
aja: "aja (south sudan)",
ajg: "aja (benin)",
aji: "ajië",
ajn: "andajin",
ajp: "south levantine arabic",
ajt: "judeo-tunisian arabic",
aju: "judeo-moroccan arabic",
ajw: "ajawa",
ajz: "amri karbi",
aka: "akan",
akb: "batak angkola",
akc: "mpur",
akd: "ukpet-ehom",
ake: "akawaio",
akf: "akpa",
akg: "anakalangu",
akh: "angal heneng",
aki: "aiome",
akj: "aka-jeru",
akk: "akkadian",
akl: "aklanon",
akm: "aka-bo",
ako: "akurio",
akp: "siwu",
akq: "ak",
akr: "araki",
aks: "akaselem",
akt: "akolet",
aku: "akum",
akv: "akhvakh",
akw: "akwa",
akx: "aka-kede",
aky: "aka-kol",
akz: "alabama",
ala: "alago",
alc: "qawasqar",
ald: "alladian",
ale: "aleut",
alf: "alege",
alh: "alawa",
ali: "amaimon",
alj: "alangan",
alk: "alak",
all: "allar",
alm: "amblong",
aln: "gheg albanian",
alo: "larike-wakasihu",
alp: "alune",
alq: "algonquin",
alr: "alutor",
als: "tosk albanian",
alt: "southern altai",
alu: "'are'are",
alw: "alaba-k’abeena",
alw: "wanbasana",
alx: "amol",
aly: "alyawarr",
alz: "alur",
ama: "amanayé",
amb: "ambo",
amc: "amahuaca",
ame: "yanesha'",
amf: "hamer-banna",
amg: "amurdak",
amh: "amharic",
ami: "amis",
amj: "amdang",
amk: "ambai",
aml: "war-jaintia",
amm: "ama (papua new guinea)",
amn: "amanab",
amo: "amo",
amp: "alamblak",
amq: "amahai",
amr: "amarakaeri",
ams: "southern amami-oshima",
amt: "amto",
amu: "guerrero amuzgo",
amv: "ambelau",
amw: "western neo-aramaic",
amx: "anmatyerre",
amy: "ami",
amz: "atampaya",
ana: "andaqui",
anb: "andoa",
anc: "ngas",
and: "ansus",
ane: "xârâcùù",
anf: "animere",
ang: "old english",
anh: "nend",
ani: "andi",
anj: "anor",
ank: "goemai",
anl: "anu-hkongso chin",
anm: "anal",
ann: "obolo",
ano: "andoque",
anp: "angika",
anq: "jarawa (india)",
anr: "andh",
ans: "anserma",
ant: "antakarinya",
anu: "anuak",
anv: "denya",
anw: "anaang",
anx: "andra-hus",
any: "anyin",
anz: "anem",
aoa: "angolar",
aob: "abom",
aoc: "pemon",
aod: "andarum",
aoe: "angal enen",
aof: "bragat",
aog: "angoram",
aoh: "arma",
aoi: "anindilyakwa",
aoj: "mufian",
aok: "arhö",
aol: "alor",
aom: "ömie",
aon: "bumbita arapesh",
aor: "aore",
aos: "taikat",
aot: "a'tong",
aot: "atong (india)",
aou: "a'ou",
aox: "atorada",
aoz: "uab meto",
apb: "sa'a",
apc: "north levantine arabic",
apd: "sudanese arabic",
ape: "bukiyip",
apf: "pahanan agta",
apg: "ampanang",
aph: "athpariya",
api: "apiaká",
apj: "jicarilla apache",
apk: "kiowa apache",
apl: "lipan apache",
apm: "mescalero-chiricahua apache",
apn: "apinayé",
apo: "ambul",
app: "apma",
apq: "a-pucikwar",
apr: "arop-lokep",
aps: "arop-sissano",
apt: "apatani",
apu: "apurinã",
apv: "alapmunte",
apw: "western apache",
apx: "aputai",
apy: "apalaí",
apz: "safeyoka",
aqc: "archi",
aqd: "ampari dogon",
aqg: "arigidi",
aqm: "atohwaim",
aqn: "northern alta",
aqp: "atakapa",
aqr: "arhâ",
aqt: "angaité",
aqz: "akuntsu",
ara: "arabic",
arb: "standard arabic",
arc: "imperial aramaic (700-300 bce)",
arc: "official aramaic (700-300 bce)",
ard: "arabana",
are: "western arrarnta",
arg: "aragonese",
arh: "arhuaco",
ari: "arikara",
arj: "arapaso",
ark: "arikapú",
arl: "arabela",
arn: "mapuche",
arn: "mapudungun",
aro: "araona",
arp: "arapaho",
arq: "algerian arabic",
arr: "karo (brazil)",
ars: "najdi arabic",
aru: "arawá",
aru: "aruá (amazonas state)",
arv: "arbore",
arw: "arawak",
arx: "aruá (rodonia state)",
ary: "moroccan arabic",
arz: "egyptian arabic",
asa: "asu (tanzania)",
asb: "assiniboine",
asc: "casuarina coast asmat",
asd: "asas",
ase: "american sign language",
asf: "auslan",
asf: "australian sign language",
asg: "cishingini",
ash: "abishira",
asi: "buruwai",
asj: "sari",
ask: "ashkun",
asl: "asilulu",
asm: "assamese",
asn: "xingú asuriní",
aso: "dano",
asp: "algerian sign language",
asq: "austrian sign language",
asr: "asuri",
ass: "ipulo",
ast: "asturian",
ast: "asturleonese",
ast: "bable",
ast: "leonese",
asu: "tocantins asurini",
asv: "asoa",
asw: "australian aborigines sign language",
asx: "muratayak",
asy: "yaosakor asmat",
asz: "as",
ata: "pele-ata",
atb: "zaiwa",
atc: "atsahuaca",
atd: "ata manobo",
ate: "atemble",
atg: "ivbie north-okpela-arhe",
ati: "attié",
atj: "atikamekw",
atk: "ati",
atl: "mt. iraya agta",
atm: "ata",
atn: "ashtiani",
ato: "atong (cameroon)",
atp: "pudtol atta",
atq: "aralle-tabulahan",
atr: "waimiri-atroari",
ats: "gros ventre",
att: "pamplona atta",
atu: "reel",
atv: "northern altai",
atw: "atsugewi",
atx: "arutani",
aty: "aneityum",
atz: "arta",
aua: "asumboa",
aub: "alugu",
auc: "waorani",
aud: "anuta",
aug: "aguna",
auh: "aushi",
aui: "anuki",
auj: "awjilah",
auk: "heyo",
aul: "aulua",
aum: "asu (nigeria)",
aun: "molmo one",
auo: "auyokawa",
aup: "makayam",
auq: "anus",
auq: "korur",
aur: "aruek",
aut: "austral",
auu: "auye",
auw: "awyi",
aux: "aurá",
auy: "awiyaana",
auz: "uzbeki arabic",
ava: "avaric",
avb: "avau",
avd: "alviri-vidari",
ave: "avestan",
avi: "avikam",
avk: "kotava",
avl: "eastern egyptian bedawi arabic",
avm: "angkamuthi",
avn: "avatime",
avo: "agavotaguerra",
avs: "aushiri",
avt: "au",
avu: "avokaya",
avv: "avá-canoeiro",
awa: "awadhi",
awb: "awa (papua new guinea)",
awc: "cicipu",
awe: "awetí",
awg: "anguthimri",
awh: "awbono",
awi: "aekyom",
awk: "awabakal",
awm: "arawum",
awn: "awngi",
awo: "awak",
awr: "awera",
aws: "south awyu",
awt: "araweté",
awu: "central awyu",
awv: "jair awyu",
aww: "awun",
awx: "awara",
awy: "edera awyu",
axb: "abipon",
axe: "ayerrerenge",
axg: "mato grosso arára",
axk: "yaka (central african republic)",
axl: "lower southern aranda",
axm: "middle armenian",
axx: "xârâgurè",
aya: "awar",
ayb: "ayizo gbe",
ayc: "southern aymara",
ayd: "ayabadhu",
aye: "ayere",
ayg: "ginyanga",
ayh: "hadrami arabic",
ayi: "leyigha",
ayk: "akuku",
ayl: "libyan arabic",
aym: "aymara",
ayn: "sanaani arabic",
ayo: "ayoreo",
ayp: "north mesopotamian arabic",
ayq: "ayi (papua new guinea)",
ayr: "central aymara",
ays: "sorsogon ayta",
ayt: "magbukun ayta",
ayu: "ayu",
ayy: "tayabas ayta",
ayz: "mai brat",
aza: "azha",
azb: "south azerbaijani",
azd: "eastern durango nahuatl",
aze: "azerbaijani",
azg: "san pedro amuzgos amuzgo",
azj: "north azerbaijani",
azm: "ipalapa amuzgo",
azn: "western durango nahuatl",
azo: "awing",
azt: "faire atta",
azz: "highland puebla nahuatl",
baa: "babatana",
bab: "bainouk-gunyuño",
bac: "badui",
bae: "baré",
baf: "nubaca",
bag: "tuki",
bah: "bahamas creole english",
baj: "barakai",
bak: "bashkir",
bal: "baluchi",
bam: "bambara",
ban: "balinese",
bao: "waimaha",
bap: "bantawa",
bar: "bavarian",
bas: "basa (cameroon)",
bau: "bada (nigeria)",
bav: "vengo",
baw: "bambili-bambui",
bax: "bamun",
bay: "batuley",
bba: "baatonum",
bbb: "barai",
bbc: "batak toba",
bbd: "bau",
bbe: "bangba",
bbf: "baibai",
bbg: "barama",
bbh: "bugan",
bbi: "barombi",
bbj: "ghomálá'",
bbk: "babanki",
bbl: "bats",
bbm: "babango",
bbn: "uneapa",
bbo: "konabéré",
bbo: "northern bobo madaré",
bbp: "west central banda",
bbq: "bamali",
bbr: "girawa",
bbs: "bakpinka",
bbt: "mburku",
bbu: "kulung (nigeria)",
bbv: "karnai",
bbw: "baba",
bbx: "bubia",
bby: "befang",
bbz: "babalia creole arabic",
bca: "central bai",
bcb: "bainouk-samik",
bcc: "southern balochi",
bcd: "north babar",
bce: "bamenyam",
bcf: "bamu",
bcg: "baga pokur",
bch: "bariai",
bci: "baoulé",
bcj: "bardi",
bck: "bunaba",
bcl: "central bikol",
bcm: "bannoni",
bcn: "bali (nigeria)",
bco: "kaluli",
bcp: "bali (democratic republic of congo)",
bcq: "bench",
bcr: "babine",
bcs: "kohumono",
bct: "bendi",
bcu: "awad bing",
bcv: "shoo-minda-nye",
bcw: "bana",
bcy: "bacama",
bcz: "bainouk-gunyaamolo",
bda: "bayot",
bdb: "basap",
bdc: "emberá-baudó",
bdd: "bunama",
bde: "bade",
bdf: "biage",
bdg: "bonggi",
bdh: "baka (south sudan)",
bdi: "burun",
bdj: "bai",
bdj: "bai (south sudan)",
bdk: "budukh",
bdl: "indonesian bajau",
bdm: "buduma",
bdn: "baldemu",
bdo: "morom",
bdp: "bende",
bdq: "bahnar",
bdr: "west coast bajau",
bds: "burunge",
bdt: "bokoto",
bdu: "oroko",
bdv: "bodo parja",
bdw: "baham",
bdx: "budong-budong",
bdy: "bandjalang",
bdz: "badeshi",
bea: "beaver",
beb: "bebele",
bec: "iceve-maci",
bed: "bedoanas",
bee: "byangsi",
bef: "benabena",
beg: "belait",
beh: "biali",
bei: "bekati'",
bej: "bedawiyet",
bej: "beja",
bek: "bebeli",
bel: "belarusian",
bem: "bemba (zambia)",
ben: "bengali",
beo: "beami",
bep: "besoa",
beq: "beembe",
bes: "besme",
bet: "guiberoua béte",
beu: "blagar",
bev: "daloa bété",
bew: "betawi",
bex: "jur modo",
bey: "beli (papua new guinea)",
bez: "bena (tanzania)",
bfa: "bari",
bfb: "pauri bareli",
bfc: "northern bai",
bfc: "panyi bai",
bfd: "bafut",
bfe: "betaf",
bfe: "tena",
bff: "bofi",
bfg: "busang kayan",
bfh: "blafe",
bfi: "british sign language",
bfj: "bafanji",
bfk: "ban khor sign language",
bfl: "banda-ndélé",
bfm: "mmen",
bfn: "bunak",
bfo: "malba birifor",
bfp: "beba",
bfq: "badaga",
bfr: "bazigar",
bfs: "southern bai",
bft: "balti",
bfu: "gahri",
bfw: "bondo",
bfx: "bantayanon",
bfy: "bagheli",
bfz: "mahasu pahari",
bga: "gwamhi-wuri",
bgb: "bobongko",
bgc: "haryanvi",
bgd: "rathwi bareli",
bge: "bauria",
bgf: "bangandu",
bgg: "bugun",
bgi: "giangan",
bgj: "bangolan",
bgk: "bit",
bgk: "buxinhua",
bgl: "bo (laos)",
bgn: "western balochi",
bgo: "baga koga",
bgp: "eastern balochi",
bgq: "bagri",
bgr: "bawm chin",
bgs: "tagabawa",
bgt: "bughotu",
bgu: "mbongno",
bgv: "warkay-bipim",
bgw: "bhatri",
bgx: "balkan gagauz turkish",
bgy: "benggoi",
bgz: "banggai",
bha: "bharia",
bhb: "bhili",
bhc: "biga",
bhd: "bhadrawahi",
bhe: "bhaya",
bhf: "odiai",
bhg: "binandere",
bhh: "bukharic",
bhi: "bhilali",
bhj: "bahing",
bhl: "bimin",
bhm: "bathari",
bhn: "bohtan neo-aramaic",
bho: "bhojpuri",
bhp: "bima",
bhq: "tukang besi south",
bhr: "bara malagasy",
bhs: "buwal",
bht: "bhattiyali",
bhu: "bhunjia",
bhv: "bahau",
bhw: "biak",
bhx: "bhalay",
bhy: "bhele",
bhz: "bada (indonesia)",
bia: "badimaya",
bib: "bisa",
bib: "bissa",
bic: "bikaru",
bid: "bidiyo",
bie: "bepour",
bif: "biafada",
big: "biangai",
bij: "vaghat-ya-bijim-legeri",
bik: "bikol",
bil: "bile",
bim: "bimoba",
bin: "bini",
bin: "edo",
bio: "nai",
bip: "bila",
biq: "bipi",
bir: "bisorio",
bis: "bislama",
bit: "berinomo",
biu: "biete",
biv: "southern birifor",
biw: "kol (cameroon)",
bix: "bijori",
biy: "birhor",
biz: "baloi",
bja: "budza",
bjb: "banggarla",
bjc: "bariji",
bje: "biao-jiao mien",
bjf: "barzani jewish neo-aramaic",
bjg: "bidyogo",
bjh: "bahinemo",
bji: "burji",
bjj: "kanauji",
bjk: "barok",
bjl: "bulu (papua new guinea)",
bjm: "bajelani",
bjn: "banjar",
bjo: "mid-southern banda",
bjp: "fanamaket",
bjr: "binumarien",
bjs: "bajan",
bjt: "balanta-ganja",
bju: "busuu",
bjv: "bedjond",
bjw: "bakwé",
bjx: "banao itneg",
bjy: "bayali",
bjz: "baruga",
bka: "kyak",
bkc: "baka (cameroon)",
bkd: "binukid",
bkd: "talaandig",
bkf: "beeke",
bkg: "buraka",
bkh: "bakoko",
bki: "baki",
bkj: "pande",
bkk: "brokskat",
bkl: "berik",
bkm: "kom (cameroon)",
bkn: "bukitan",
bko: "kwa'",
bkp: "boko (democratic republic of congo)",
bkq: "bakairí",
bkr: "bakumpai",
bks: "northern sorsoganon",
bkt: "boloki",
bku: "buhid",
bkv: "bekwarra",
bkw: "bekwel",
bkx: "baikeno",
bky: "bokyi",
bkz: "bungku",
bla: "siksika",
blb: "bilua",
blc: "bella coola",
bld: "bolango",
ble: "balanta-kentohe",
blf: "buol",
blg: "balau",
blh: "kuwaa",
bli: "bolia",
blj: "bolongan",
blk: "pa'o",
blk: "pa'o karen",
bll: "biloxi",
blm: "beli (south sudan)",
bln: "southern catanduanes bikol",
blo: "anii",
blp: "blablanga",
blq: "baluan-pam",
blr: "blang",
bls: "balaesang",
blt: "tai dam",
blv: "bolo",
blv: "kibala",
blw: "balangao",
blx: "mag-indi ayta",
bly: "notre",
blz: "balantak",
bma: "lame",
bmb: "bembe",
bmc: "biem",
bmd: "baga manduri",
bme: "limassa",
bmf: "bom-kim",
bmg: "bamwe",
bmh: "kein",
bmi: "bagirmi",
bmj: "bote-majhi",
bmk: "ghayavi",
bml: "bomboli",
bmm: "northern betsimisaraka malagasy",
bmn: "bina (papua new guinea)",
bmo: "bambalang",
bmp: "bulgebi",
bmq: "bomu",
bmr: "muinane",
bms: "bilma kanuri",
bmt: "biao mon",
bmu: "somba-siawari",
bmv: "bum",
bmw: "bomwali",
bmx: "baimak",
bmz: "baramu",
bna: "bonerate",
bnb: "bookan",
bnc: "bontok",
bnd: "banda (indonesia)",
bne: "bintauna",
bnf: "masiwang",
bng: "benga",
bni: "bangi",
bnj: "eastern tawbuid",
bnk: "bierebo",
bnl: "boon",
bnm: "batanga",
bnn: "bunun",
bno: "bantoanon",
bnp: "bola",
bnq: "bantik",
bnr: "butmas-tur",
bns: "bundeli",
bnu: "bentong",
bnv: "beneraf",
bnv: "bonerif",
bnv: "edwas",
bnw: "bisis",
bnx: "bangubangu",
bny: "bintulu",
bnz: "beezen",
boa: "bora",
bob: "aweer",
bod: "tibetan",
boe: "mundabli",
bof: "bolon",
bog: "bamako sign language",
boh: "boma",
boi: "barbareño",
boj: "anjam",
bok: "bonjo",
bol: "bole",
bom: "berom",
bon: "bine",
boo: "tiemacèwè bozo",
bop: "bonkiman",
boq: "bogaya",
bor: "borôro",
bos: "bosnian",
bot: "bongo",
bou: "bondei",
bov: "tuwuli",
bow: "rema",
box: "buamu",
boy: "bodo (central african republic)",
boz: "tiéyaxo bozo",
bpa: "daakaka",
bpb: "barbacoas",
bpd: "banda-banda",
bpg: "bonggo",
bph: "botlikh",
bpi: "bagupi",
bpj: "binji",
bpk: "'ôrôê",
bpk: "orowe",
bpl: "broome pearling lugger pidgin",
bpm: "biyom",
bpn: "dzao min",
bpo: "anasi",
bpp: "kaure",
bpq: "banda malay",
bpr: "koronadal blaan",
bps: "sarangani blaan",
bpt: "barrow point",
bpu: "bongu",
bpv: "bian marind",
bpw: "bo (papua new guinea)",
bpx: "palya bareli",
bpy: "bishnupriya",
bpz: "bilba",
bqa: "tchumbuli",
bqb: "bagusa",
bqc: "boko (benin)",
bqc: "boo",
bqd: "bung",
bqf: "baga kaloum",
bqg: "bago-kusuntu",
bqh: "baima",
bqi: "bakhtiari",
bqj: "bandial",
bqk: "banda-mbrès",
bql: "bilakura",
bqm: "wumboko",
bqn: "bulgarian sign language",
bqo: "balo",
bqp: "busa",
bqq: "biritai",
bqr: "burusu",
bqs: "bosngun",
bqt: "bamukumbit",
bqu: "boguru",
bqv: "begbere-ejar",
bqv: "koro wachi",
bqw: "buru (nigeria)",
bqx: "baangi",
bqy: "bengkala sign language",
bqz: "bakaka",
bra: "braj",
brb: "lave",
brc: "berbice creole dutch",
brd: "baraamu",
bre: "breton",
brf: "bera",
brg: "baure",
brh: "brahui",
bri: "mokpwe",
brj: "bieria",
brk: "birked",
brl: "birwa",
brm: "barambu",
brn: "boruca",
bro: "brokkat",
brp: "barapasi",
brq: "breri",
brr: "birao",
brs: "baras",
brt: "bitare",
bru: "eastern bru",
brv: "western bru",
brw: "bellari",
brx: "bodo (india)",
bry: "burui",
brz: "bilbil",
bsa: "abinomn",
bsb: "brunei bisaya",
bsc: "bassari",
bsc: "oniyan",
bse: "wushi",
bsf: "bauchi",
bsg: "bashkardi",
bsh: "kati",
bsi: "bassossi",
bsj: "bangwinji",
bsk: "burushaski",
bsl: "basa-gumna",
bsm: "busami",
bsn: "barasana-eduria",
bso: "buso",
bsp: "baga sitemu",
bsq: "bassa",
bsr: "bassa-kontagora",
bss: "akoose",
bst: "basketo",
bsu: "bahonsuai",
bsv: "baga sobané",
bsw: "baiso",
bsx: "yangkam",
bsy: "sabah bisaya",
bta: "bata",
btc: "bati (cameroon)",
btd: "batak dairi",
bte: "gamo-ningi",
btf: "birgit",
btg: "gagnoa bété",
bth: "biatah bidayuh",
bti: "burate",
btj: "bacanese malay",
btm: "batak mandailing",
btn: "ratagnon",
bto: "rinconada bikol",
btp: "budibud",
btq: "batek",
btr: "baetora",
bts: "batak simalungun",
btt: "bete-bendi",
btu: "batu",
btv: "bateri",
btw: "butuanon",
btx: "batak karo",
bty: "bobot",
btz: "batak alas-kluet",
bua: "buriat",
bub: "bua",
buc: "bushi",
bud: "ntcham",
bue: "beothuk",
buf: "bushoong",
bug: "buginese",
buh: "younuo bunu",
bui: "bongili",
buj: "basa-gurmana",
buk: "bugawac",
bul: "bulgarian",
bum: "bulu (cameroon)",
bun: "sherbro",
buo: "terei",
bup: "busoa",
buq: "brem",
bus: "bokobaru",
but: "bungain",
buu: "budu",
buv: "bun",
buw: "bubi",
bux: "boghom",
buy: "bullom so",
buz: "bukwen",
bva: "barein",
bvb: "bube",
bvc: "baelelea",
bvd: "baeggu",
bve: "berau malay",
bvf: "boor",
bvg: "bonkeng",
bvh: "bure",
bvi: "belanda viri",
bvj: "baan",
bvk: "bukat",
bvl: "bolivian sign language",
bvm: "bamunka",
bvn: "buna",
bvo: "bolgo",
bvp: "bumang",
bvq: "birri",
bvr: "burarra",
bvt: "bati (indonesia)",
bvu: "bukit malay",
bvv: "baniva",
bvw: "boga",
bvx: "dibole",
bvy: "baybayanon",
bvz: "bauzi",
bwa: "bwatoo",
bwb: "namosi-naitasiri-serua",
bwc: "bwile",
bwd: "bwaidoka",
bwe: "bwe karen",
bwf: "boselewa",
bwg: "barwe",
bwh: "bishuo",
bwi: "baniwa",
bwj: "láá láá bwamu",
bwk: "bauwaki",
bwl: "bwela",
bwm: "biwat",
bwn: "wunai bunu",
bwo: "borna (ethiopia)",
bwo: "boro (ethiopia)",
bwp: "mandobo bawah",
bwq: "southern bobo madaré",
bwr: "bura-pabir",
bws: "bomboma",
bwt: "bafaw-balong",
bwu: "buli (ghana)",
bww: "bwa",
bwx: "bu-nao bunu",
bwy: "cwi bwamu",
bwz: "bwisi",
bxa: "tairaha",
bxb: "belanda bor",
bxc: "molengue",
bxd: "pela",
bxe: "birale",
bxf: "bilur",
bxf: "minigir",
bxg: "bangala",
bxh: "buhutu",
bxi: "pirlatapa",
bxj: "bayungu",
bxk: "bukusu",
bxk: "lubukusu",
bxl: "jalkunan",
bxm: "mongolia buriat",
bxn: "burduna",
bxo: "barikanchi",
bxp: "bebil",
bxq: "beele",
bxr: "russia buriat",
bxs: "busam",
bxu: "china buriat",
bxv: "berakou",
bxw: "bankagooma",
bxz: "binahari",
bya: "batak",
byb: "bikya",
byc: "ubaghara",
byd: "benyadu'",
bye: "pouye",
byf: "bete",
byg: "baygo",
byh: "bhujel",
byi: "buyu",
byj: "bina (nigeria)",
byk: "biao",
byl: "bayono",
bym: "bidyara",
byn: "bilin",
byn: "blin",
byo: "biyo",
byp: "bumaji",
byq: "basay",
byr: "baruya",
byr: "yipma",
bys: "burak",
byt: "berti",
byv: "medumba",
byw: "belhariya",
byx: "qaqet",
byz: "banaro",
bza: "bandi",
bzb: "andio",
bzc: "southern betsimisaraka malagasy",
bzd: "bribri",
bze: "jenaama bozo",
bzf: "boikin",
bzg: "babuza",
bzh: "mapos buang",
bzi: "bisu",
bzj: "belize kriol english",
bzk: "nicaragua creole english",
bzl: "boano (sulawesi)",
bzm: "bolondo",
bzn: "boano (maluku)",
bzo: "bozaba",
bzp: "kemberano",
bzq: "buli (indonesia)",
bzr: "biri",
bzs: "brazilian sign language",
bzt: "brithenig",
bzu: "burmeso",
bzv: "naami",
bzw: "basa (nigeria)",
bzx: "kɛlɛngaxo bozo",
bzy: "obanliku",
bzz: "evant",
caa: "chortí",
cab: "garifuna",
cac: "chuj",
cad: "caddo",
cae: "laalaa",
cae: "lehar",
caf: "southern carrier",
cag: "nivaclé",
cah: "cahuarano",
caj: "chané",
cak: "cakchiquel",
cak: "kaqchikel",
cal: "carolinian",
cam: "cemuhî",
can: "chambri",
cao: "chácobo",
cap: "chipaya",
caq: "car nicobarese",
car: "galibi carib",
cas: "tsimané",
cat: "catalan",
cat: "valencian",
cav: "cavineña",
caw: "callawalla",
cax: "chiquitano",
cay: "cayuga",
caz: "canichana",
cbb: "cabiyarí",
cbc: "carapana",
cbd: "carijona",
cbg: "chimila",
cbi: "chachi",
cbj: "ede cabe",
cbk: "chavacano",
cbl: "bualkhaw chin",
cbn: "nyahkur",
cbo: "izora",
cbq: "cuba",
cbq: "tsucuba",
cbr: "cashibo-cacataibo",
cbs: "cashinahua",
cbt: "chayahuita",
cbu: "candoshi-shapra",
cbv: "cacua",
cbw: "kinabalian",
cby: "carabayo",
cca: "cauca",
ccc: "chamicuro",
ccd: "cafundo creole",
cce: "chopi",
ccg: "samba daka",
cch: "atsam",
ccj: "kasanga",
ccl: "cutchi-swahili",
ccm: "malaccan creole malay",
cco: "comaltepec chinantec",
ccp: "chakma",
ccr: "cacaopera",
cda: "choni",
cde: "chenchu",
cdf: "chiru",
cdg: "chamari",
cdh: "chambeali",
cdi: "chodri",
cdj: "churahi",
cdm: "chepang",
cdn: "chaudangsi",
cdo: "min dong chinese",
cdr: "cinda-regi-tiyal",
cds: "chadian sign language",
cdy: "chadong",
cdz: "koda",
cea: "lower chehalis",
ceb: "cebuano",
ceg: "chamacoco",
cek: "eastern khumi chin",
cen: "cen",
ces: "czech",
cet: "centúúm",
cfa: "dijim-bwilim",
cfd: "cara",
cfg: "como karim",
cfm: "falam chin",
cga: "changriwa",
cgc: "kagayanen",
cgg: "chiga",
cgk: "chocangacakha",
cha: "chamorro",
chb: "chibcha",
chc: "catawba",
chd: "highland oaxaca chontal",
che: "chechen",
chf: "tabasco chontal",
chg: "chagatai",
chh: "chinook",
chj: "ojitlán chinantec",
chk: "chuukese",
chl: "cahuilla",
chm: "mari (russia)",
chn: "chinook jargon",
cho: "choctaw",
chp: "chipewyan",
chp: "dene suline",
chq: "quiotepec chinantec",
chr: "cherokee",
cht: "cholón",
chu: "church slavic",
chu: "church slavonic",
chu: "old bulgarian",
chu: "old church slavonic",
chu: "old slavonic",
chv: "chuvash",
chw: "chuwabu",
chx: "chantyal",
chy: "cheyenne",
chz: "ozumacín chinantec",
cia: "cia-cia",
cib: "ci gbe",
cic: "chickasaw",
cid: "chimariko",
cie: "cineni",
cih: "chinali",
cik: "chitkuli kinnauri",
cim: "cimbrian",
cin: "cinta larga",
cip: "chiapanec",
cir: "haméa",
cir: "méa",
cir: "tiri",
ciw: "chippewa",
ciy: "chaima",
cja: "western cham",
cje: "chru",
cjh: "upper chehalis",
cji: "chamalal",
cjk: "chokwe",
cjm: "eastern cham",
cjn: "chenapian",
cjo: "ashéninka pajonal",
cjp: "cabécar",
cjs: "shor",
cjv: "chuave",
cjy: "jinyu chinese",
ckb: "central kurdish",
ckh: "chak",
ckl: "cibak",
ckn: "kaang chin",
cko: "anufo",
ckq: "kajakse",
ckr: "kairak",
cks: "tayo",
ckt: "chukot",
cku: "koasati",
ckv: "kavalan",
ckx: "caka",
cky: "cakfem-mushere",
ckz: "cakchiquel-quiché mixed language",
cla: "ron",
clc: "chilcotin",
cld: "chaldean neo-aramaic",
cle: "lealao chinantec",
clh: "chilisso",
cli: "chakali",
clj: "laitu chin",
clk: "idu-mishmi",
cll: "chala",
clm: "clallam",
clo: "lowland oaxaca chontal",
clt: "lautu chin",
clu: "caluyanun",
clw: "chulym",
cly: "eastern highland chatino",
cma: "maa",
cme: "cerma",
cmg: "classical mongolian",
cmi: "emberá-chamí",
cml: "campalagian",
cmm: "michigamea",
cmn: "mandarin chinese",
cmo: "central mnong",
cmr: "mro-khimi chin",
cms: "messapic",
cmt: "camtho",
cna: "changthang",
cnb: "chinbon chin",
cnc: "côông",
cng: "northern qiang",
cnh: "haka chin",
cnh: "hakha chin",
cni: "asháninka",
cnk: "khumi chin",
cnl: "lalana chinantec",
cno: "con",
cnr: "montenegrin",
cns: "central asmat",
cnt: "tepetotutla chinantec",
cnu: "chenoua",
cnw: "ngawn chin",
cnx: "middle cornish",
coa: "cocos islands malay",
cob: "chicomuceltec",
coc: "cocopa",
cod: "cocama-cocamilla",
coe: "koreguaje",
cof: "colorado",
cog: "chong",
coh: "chichonyi-chidzihana-chikauma",
coh: "chonyi-dzihana-kauma",
coj: "cochimi",
cok: "santa teresa cora",
col: "columbia-wenatchi",
com: "comanche",
con: "cofán",
coo: "comox",
cop: "coptic",
coq: "coquille",
cor: "cornish",
cos: "corsican",
cot: "caquinte",
cou: "wamey",
cov: "cao miao",
cow: "cowlitz",
cox: "nanti",
coz: "chochotec",
cpa: "palantla chinantec",
cpb: "ucayali-yurúa ashéninka",
cpc: "ajyíninka apurucayali",
cpg: "cappadocian greek",
cpi: "chinese pidgin english",
cpn: "cherepon",
cpo: "kpeego",
cps: "capiznon",
cpu: "pichis ashéninka",
cpx: "pu-xian chinese",
cpy: "south ucayali ashéninka",
cqd: "chuanqiandian cluster miao",
cra: "chara",
crb: "island carib",
crc: "lonwolwol",
crd: "coeur d'alene",
cre: "cree",
crf: "caramanta",
crg: "michif",
crh: "crimean tatar",
crh: "crimean turkish",
cri: "sãotomense",
crj: "southern east cree",
crk: "plains cree",
crl: "northern east cree",
crm: "moose cree",
crn: "el nayar cora",
cro: "crow",
crq: "iyo'wujwa chorote",
crr: "carolina algonquian",
crs: "seselwa creole french",
crt: "iyojwa'ja chorote",
crv: "chaura",
crw: "chrau",
crx: "carrier",
cry: "cori",
crz: "cruzeño",
csa: "chiltepec chinantec",
csb: "kashubian",
csc: "catalan sign language",
csc: "lengua de señas catalana",
csc: "llengua de signes catalana",
csd: "chiangmai sign language",
cse: "czech sign language",
csf: "cuba sign language",
csg: "chilean sign language",
csh: "asho chin",
csi: "coast miwok",
csj: "songlai chin",
csk: "jola-kasa",
csl: "chinese sign language",
csm: "central sierra miwok",
csn: "colombian sign language",
cso: "sochiapam chinantec",
cso: "sochiapan chinantec",
csq: "croatia sign language",
csr: "costa rican sign language",
css: "southern ohlone",
cst: "northern ohlone",
csv: "sumtu chin",
csw: "swampy cree",
csy: "siyin chin",
csz: "coos",
cta: "tataltepec chatino",
ctc: "chetco",
ctd: "tedim chin",
cte: "tepinapa chinantec",
ctg: "chittagonian",
cth: "thaiphum chin",
ctl: "tlacoatzintepec chinantec",
ctm: "chitimacha",
ctn: "chhintange",
cto: "emberá-catío",
ctp: "western highland chatino",
cts: "northern catanduanes bikol",
ctt: "wayanad chetti",
ctu: "chol",
ctz: "zacatepec chatino",
cua: "cua",
cub: "cubeo",
cuc: "usila chinantec",
cug: "chungmboko",
cug: "cung",
cuh: "chuka",
cuh: "gichuka",
cui: "cuiba",
cuj: "mashco piro",
cuk: "san blas kuna",
cul: "culina",
cul: "kulina",
cuo: "cumanagoto",
cup: "cupeño",
cuq: "cun",
cur: "chhulung",
cut: "teutila cuicatec",
cuu: "tai ya",
cuv: "cuvok",
cuw: "chukwa",
cux: "tepeuxila cuicatec",
cuy: "cuitlatec",
cvg: "chug",
cvn: "valle nacional chinantec",
cwa: "kabwa",
cwb: "maindo",
cwd: "woods cree",
cwe: "kwere",
cwg: "cheq wong",
cwg: "chewong",
cwt: "kuwaataay",
cya: "nopala chatino",
cyb: "cayubaba",
cym: "welsh",
cyo: "cuyonon",
czh: "huizhou chinese",
czk: "knaanic",
czn: "zenzontepec chatino",
czo: "min zhong chinese",
czt: "zotung chin",
daa: "dangaléat",
dac: "dambi",
dad: "marik",
dae: "duupa",
dag: "dagbani",
dah: "gwahatike",
dai: "day",
daj: "dar fur daju",
dak: "dakota",
dal: "dahalo",
dam: "damakawa",
dan: "danish",
dao: "daai chin",
daq: "dandami maria",
dar: "dargwa",
das: "daho-doo",
dau: "dar sila daju",
dav: "dawida",
dav: "taita",
daw: "davawenyo",
dax: "dayi",
daz: "dao",
dba: "bangime",
dbb: "deno",
dbd: "dadiya",
dbe: "dabe",
dbf: "edopi",
dbg: "dogul dom dogon",
dbi: "doka",
dbj: "ida'an",
dbl: "dyirbal",
dbm: "duguri",
dbn: "duriankere",
dbo: "dulbu",
dbp: "duwai",
dbq: "daba",
dbr: "dabarre",
dbt: "ben tey dogon",
dbu: "bondum dom dogon",
dbv: "dungu",
dbw: "bankan tey dogon",
dby: "dibiyaso",
dcc: "deccan",
dcr: "negerhollands",
dda: "dadi dadi",
ddd: "dongotono",
dde: "doondo",
ddg: "fataluku",
ddi: "west goodenough",
ddj: "jaru",
ddn: "dendi (benin)",
ddo: "dido",
ddr: "dhudhuroa",
dds: "donno so dogon",
ddw: "dawera-daweloor",
dec: "dagik",
ded: "dedua",
dee: "dewoin",
def: "dezfuli",
deg: "degema",
deh: "dehwari",
dei: "demisa",
dek: "dek",
del: "delaware",
dem: "dem",
den: "slave (athapascan)",
dep: "pidgin delaware",
deq: "dendi (central african republic)",
der: "deori",
des: "desano",
deu: "german",
dev: "domung",
dez: "dengese",
dga: "southern dagaare",
dgb: "bunoge dogon",
dgc: "casiguran dumagat agta",
dgd: "dagaari dioula",
dge: "degenan",
dgg: "doga",
dgh: "dghwede",
dgi: "northern dagara",
dgk: "dagba",
dgl: "andaandi",
dgl: "dongolawi",
dgn: "dagoman",
dgo: "dogri (individual language)",
dgr: "dogrib",
dgs: "dogoso",
dgt: "ndra'ngith",
dgu: "degaru",
dgw: "daungwurrung",
dgx: "doghoro",
dgz: "daga",
dhd: "dhundari",
dhg: "dhangu",
dhg: "dhangu-djangu",
dhg: "djangu",
dhi: "dhimal",
dhl: "dhalandji",
dhm: "zemba",
dhn: "dhanki",
dho: "dhodia",
dhr: "dhargari",
dhs: "dhaiso",
dhu: "dhurga",
dhv: "dehu",
dhv: "drehu",
dhw: "dhanwar (nepal)",
dhx: "dhungaloo",
dia: "dia",
dib: "south central dinka",
dic: "lakota dida",
did: "didinga",
dif: "dieri",
dig: "chidigo",
dig: "digo",
dih: "kumiai",
dii: "dimbong",
dij: "dai",
dik: "southwestern dinka",
dil: "dilling",
dim: "dime",
din: "dinka",
dio: "dibo",
dip: "northeastern dinka",
diq: "dimli (individual language)",
dir: "dirim",
dis: "dimasa",
dit: "dirari",
diu: "diriku",
div: "dhivehi",
div: "divehi",
div: "maldivian",
diw: "northwestern dinka",
dix: "dixon reef",
diy: "diuwe",
diz: "ding",
dja: "djadjawurrung",
djb: "djinba",
djc: "dar daju daju",
djd: "djamindjung",
dje: "zarma",
djf: "djangun",
dji: "djinang",
djj: "djeebbana",
djk: "businenge tongo",
djk: "eastern maroon creole",
djk: "nenge",
djm: "jamsay dogon",
djn: "djauan",
djo: "jangkang",
djr: "djambarrpuyngu",
dju: "kapriman",
djw: "djawi",
dka: "dakpakha",
dkk: "dakka",
dkr: "kuijau",
dks: "southeastern dinka",
dkx: "mazagway",
dlg: "dolgan",
dlk: "dahalik",
dlm: "dalmatian",
dln: "darlong",
dma: "duma",
dmb: "mombo dogon",
dmc: "gavak",
dmd: "madhi madhi",
dme: "dugwor",
dmg: "upper kinabatangan",
dmk: "domaaki",
dml: "dameli",
dmm: "dama",
dmo: "kemedzung",
dmr: "east damar",
dms: "dampelas",
dmu: "dubu",
dmu: "tebi",
dmv: "dumpas",
dmw: "mudburra",
dmx: "dema",
dmy: "demta",
dmy: "sowari",
dna: "upper grand valley dani",
dnd: "daonda",
dne: "ndendeule",
dng: "dungan",
dni: "lower grand valley dani",
dnj: "dan",
dnk: "dengka",
dnn: "dzùùngoo",
dno: "ndrulo",
dno: "northern lendu",
dnr: "danaru",
dnt: "mid grand valley dani",
dnu: "danau",
dnv: "danu",
dnw: "western dani",
dny: "dení",
doa: "dom",
dob: "dobu",
doc: "northern dong",
doe: "doe",
dof: "domu",
doh: "dong",
doi: "dogri (macrolanguage)",
dok: "dondo",
dol: "doso",
don: "toura (papua new guinea)",
doo: "dongo",
dop: "lukpa",
doq: "dominican sign language",
dor: "dori'o",
dos: "dogosé",
dot: "dass",
dov: "dombe",
dow: "doyayo",
dox: "bussa",
doy: "dompo",
doz: "dorze",
dpp: "papar",
drb: "dair",
drc: "minderico",
drd: "darmiya",
dre: "dolpo",
drg: "rungus",
dri: "c'lela",
drl: "paakantyi",
drn: "west damar",
dro: "daro-matu melanau",
drq: "dura",
drr: "dororo",
drs: "gedeo",
drt: "drents",
dru: "rukai",
dry: "darai",
dsb: "lower sorbian",
dse: "dutch sign language",
dsh: "daasanach",
dsi: "disa",
dsl: "danish sign language",
dsn: "dusner",
dso: "desiya",
dsq: "tadaksahak",
dta: "daur",
dtb: "labuk-kinabatangan kadazan",
dtd: "ditidaht",
dth: "adithinngithigh",
dti: "ana tinga dogon",
dtk: "tene kan dogon",
dtm: "tomo kan dogon",
dtn: "daatsʼíin",
dto: "tommo so dogon",
dtp: "central dusun",
dtp: "kadazan dusun",
dtr: "lotud",
dts: "toro so dogon",
dtt: "toro tegu dogon",
dtu: "tebul ure dogon",
dty: "dotyali",
dua: "duala",
dub: "dubli",
duc: "duna",
dud: "hun-saare",
due: "umiray dumaget agta",
duf: "drubea",
duf: "dumbea",
dug: "chiduruma",
dug: "duruma",
duh: "dungra bhil",
dui: "dumun",
duk: "uyajitaya",
dul: "alabat island agta",
dum: "middle dutch",
dun: "dusun deyah",
duo: "dupaninan agta",
dup: "duano",
duq: "dusun malang",
dur: "dii",
dus: "dumi",
duu: "drung",
duv: "duvle",
duw: "dusun witu",
dux: "duungooma",
duy: "dicamay agta",
duz: "duli-gey",
dva: "duau",
dwa: "diri",
dwr: "dawro",
dws: "dutton world speedwords",
dwu: "dhuwal",
dww: "dawawa",
dwy: "dhuwaya",
dwz: "dewas rai",
dya: "dyan",
dyb: "dyaberdyaber",
dyd: "dyugun",
dyg: "villa viciosa agta",
dyi: "djimini senoufo",
dym: "yanda dom dogon",
dyn: "dyangadi",
dyo: "jola-fonyi",
dyu: "dyula",
dyy: "dyaabugay",
dza: "tunzu",
dze: "djiwarli",
dzg: "dazaga",
dzl: "dzalakha",
dzn: "dzando",
dzo: "dzongkha",
eaa: "karenggapa",
ebg: "ebughu",
ebk: "eastern bontok",
ebo: "teke-ebo",
ebr: "ebrié",
ebu: "embu",
ebu: "kiembu",
ecr: "eteocretan",
ecs: "ecuadorian sign language",
ecy: "eteocypriot",
eee: "e",
efa: "efai",
efe: "efe",
efi: "efik",
ega: "ega",
egl: "emilian",
ego: "eggon",
egy: "egyptian/ancient",
ehu: "ehueun",
eip: "eipomek",
eit: "eitiep",
eiv: "askopan",
eja: "ejamat",
eka: "ekajuk",
ekc: "eastern karnic",
eke: "ekit",
ekg: "ekari",
eki: "eki",
ekk: "standard estonian",
ekl: "kol",
ekl: "kol/bangladesh",
ekm: "elip",
eko: "koti",
ekp: "ekpeye",
ekr: "yace",
eky: "eastern kayah",
ele: "elepi",
elh: "el hugeirat",
eli: "nding",
elk: "elkei",
ell: "modern greek",
elm: "eleme",
elo: "el molo",
elu: "elu",
elx: "elamite",
ema: "emai-iuleha-ora",
emb: "embaloh",
eme: "emerillon",
emg: "eastern meohang",
emi: "mussau-emira",
emk: "eastern maninkakan",
emm: "mamulique",
emn: "eman",
emp: "northern emberá",
ems: "pacific gulf yupik",
emu: "eastern muria",
emw: "emplawas",
emx: "erromintxela",
emy: "epigraphic mayan",
ena: "apali",
enb: "markweeta",
enc: "en",
end: "ende",
enf: "forest enets",
eng: "english",
enh: "tundra enets",
enl: "enlhet",
enm: "middle english",
enn: "engenni",
eno: "enggano",
enq: "enga",
enr: "emem",
enr: "emumu",
enu: "enu",
env: "enwan/edu state",
enw: "enwan/akwa ibom state",
enx: "enxet",
eot: "beti/côte d'ivoire",
epi: "epie",
epo: "esperanto",
era: "eravallan",
erg: "sie",
erh: "eruwa",
eri: "ogea",
erk: "south efate",
ero: "horpa",
err: "erre",
ers: "ersu",
ert: "eritai",
erw: "erokwanas",
ese: "ese ejja",
esg: "aheri gondi",
esh: "eshtehardi",
esi: "north alaskan inupiatun",
esk: "northwest alaska inupiatun",
esl: "egypt sign language",
esm: "esuma",
esn: "salvadoran sign language",
eso: "estonian sign language",
esq: "esselen",
ess: "central siberian yupik",
est: "estonian",
esu: "central yupik",
esy: "eskayan",
etb: "etebi",
etc: "etchemin",
eth: "ethiopian sign language",
etn: "eton/vanuatu",
eto: "eton/cameroon",
etr: "edolo",
ets: "yekhee",
ett: "etruscan",
etu: "ejagham",
etx: "eten",
etz: "semimi",
eus: "basque",
eve: "even",
evh: "uvbie",
evn: "evenki",
ewe: "ewe",
ewo: "ewondo",
ext: "extremaduran",
eya: "eyak",
eyo: "keiyo",
eza: "ezaa",
eze: "uzekwe",
faa: "fasu",
fab: "fa d'ambu",
fad: "wagi",
faf: "fagani",
fag: "finongan",
fah: "baissa fali",
fai: "faiwol",
faj: "faita",
fak: "fang/cameroon",
fal: "south fali",
fam: "fam",
fan: "fang/equatorial guinea",
fao: "faroese",
fap: "paloor",
far: "fataleka",
fas: "persian",
fat: "fanti",
fau: "fayu",
fax: "fala",
fay: "southwestern fars",
faz: "northwestern fars",
fbl: "west albay bikol",
fcs: "quebec sign language",
fer: "feroge",
ffi: "foia foia",
ffm: "maasina fulfulde",
fgr: "fongoro",
fia: "nobiin",
fie: "fyer",
fij: "fijian",
fil: "filipino",
fil: "pilipino",
fin: "finnish",
fip: "fipa",
fir: "firan",
fit: "tornedalen finnish",
fiw: "fiwaga",
fkk: "kirya-konzəl",
fkv: "kven finnish",
fla: "kalispel-pend d'oreille",
flh: "foau",
fli: "fali",
fll: "north fali",
fln: "flinders island",
flr: "fuliiru",
fly: "flaaitaal",
fly: "tsotsitaal",
fmp: "fe'fe'",
fmu: "far western muria",
fnb: "fanbak",
fng: "fanagalo",
fni: "fania",
fod: "foodo",
foi: "foi",
fom: "foma",
fon: "fon",
for: "fore",
fos: "siraya",
fpe: "fernando po creole english",
fqs: "fas",
fra: "french",
frc: "cajun french",
frd: "fordata",
frk: "frankish",
frm: "middle french",
fro: "old french",
frp: "arpitan",
frp: "francoprovençal",
frq: "forak",
frr: "northern frisian",
frs: "eastern frisian",
frt: "fortsenal",
fry: "western frisian",
fse: "finnish sign language",
fsl: "french sign language",
fss: "finlandssvenskt teckenspråk",
fss: "finland-swedish sign language",
fss: "suomenruotsalainen viittomakieli",
fub: "adamawa fulfulde",
fuc: "pulaar",
fud: "east futuna",
fue: "borgu fulfulde",
fuf: "pular",
fuh: "western niger fulfulde",
fui: "bagirmi fulfulde",
fuj: "ko",
ful: "fulah",
fum: "fum",
fun: "fulniô",
fuq: "central-eastern niger fulfulde",
fur: "friulian",
fut: "futuna-aniwa",
fuu: "furu",
fuv: "nigerian fulfulde",
fuy: "fuyug",
fvr: "fur",
fwa: "fwâi",
fwe: "fwe",
gaa: "ga",
gab: "gabri",
gac: "mixed great andamanese",
gad: "gaddang",
gae: "guarequena",
gaf: "gende",
gag: "gagauz",
gah: "alekano",
gai: "borei",
gaj: "gadsup",
gak: "gamkonora",
gal: "galolen",
gam: "kandawo",
gan: "gan chinese",
gao: "gants",
gap: "gal",
gaq: "gata'",
gar: "galeya",
gas: "adiwasi garasia",
gat: "kenati",
gau: "mudhili gadaba",
gaw: "nobonob",
gax: "borana-arsi-guji oromo",
gay: "gayo",
gaz: "west central oromo",
gba: "gbaya/central african republic",
gbb: "kaytetye",
gbd: "karadjeri",
gbe: "niksek",
gbf: "gaikundi",
gbg: "gbanziri",
gbh: "defi gbe",
gbi: "galela",
gbj: "bodo gadaba",
gbk: "gaddi",
gbl: "gamit",
gbm: "garhwali",
gbn: "mo'da",
gbo: "northern grebo",
gbp: "gbaya-bossangoa",
gbq: "gbaya-bozoum",
gbr: "gbagyi",
gbs: "gbesi gbe",
gbu: "gagadu",
gbv: "gbanu",
gbw: "gabi-gabi",
gbx: "eastern xwla gbe",
gby: "gbari",
gbz: "zoroastrian dari",
gcc: "mali",
gcd: "ganggalida",
gce: "galice",
gcf: "guadeloupean creole french",
gcl: "grenadian creole english",
gcn: "gaina",
gcr: "guianese creole french",
gct: "colonia tovar german",
gda: "gade lohar",
gdb: "pottangi ollar gadaba",
gdc: "gugu badhun",
gdd: "gedaged",
gde: "gude",
gdf: "guduf-gava",
gdg: "ga'dang",
gdh: "gadjerawang",
gdi: "gundi",
gdj: "gurdjar",
gdk: "gadang",
gdl: "dirasha",
gdm: "laal",
gdn: "umanakaina",
gdo: "ghodoberi",
gdq: "mehri",
gdr: "wipi",
gds: "ghandruk sign language",
gdt: "kungardutyi",
gdu: "gudu",
gdx: "godwari",
gea: "geruma",
geb: "kire",
gec: "gboloo grebo",
ged: "gade",
geg: "gengle",
geh: "hutterisch",
geh: "hutterite german",
gei: "gebe",
gej: "gen",
gek: "ywom",
gel: "ut-ma'in",
geq: "geme",
ges: "geser-gorom",
gev: "eviya",
gew: "gera",
gex: "garre",
gey: "enya",
gez: "geez",
gfk: "patpatar",
gft: "gafat",
gga: "gao",
ggb: "gbii",
ggd: "gugadj",
gge: "guragone",
ggg: "gurgula",
ggk: "kungarakany",
ggl: "ganglau",
ggt: "gitua",
ggu: "gagu",
ggu: "gban",
ggw: "gogodala",
gha: "ghadamès",
ghc: "hiberno-scottish gaelic",
ghe: "southern ghale",
ghh: "northern ghale",
ghk: "geko karen",
ghl: "ghulfan",
ghn: "ghanongga",
gho: "ghomara",
ghr: "ghera",
ghs: "guhu-samane",
ght: "kuke",
ght: "kutang ghale",
gia: "kitja",
gib: "gibanawa",
gic: "gail",
gid: "gidar",
gie: "gaɓogbo",
gie: "guébie",
gig: "goaria",
gih: "githabul",
gil: "gilbertese",
gim: "gimi/eastern highlands",
gin: "hinukh",
gip: "gimi/west new britain",
giq: "green gelao",
gir: "red gelao",
gis: "north giziga",
git: "gitxsan",
giu: "mulao",
giw: "white gelao",
gix: "gilima",
giy: "giyug",
giz: "south giziga",
gji: "geji",
gjk: "kachi koli",
gjm: "gunditjmara",
gjn: "gonja",
gjr: "gurindji kriol",
gju: "gujari",
gka: "guya",
gkd: "magɨ/madang province",
gke: "ndai",
gkn: "gokana",
gko: "kok-nar",
gkp: "guinea kpelle",
gku: "ǂungkue",
gla: "gaelic",
gla: "scottish gaelic",
glc: "bon gula",
gld: "nanai",
gle: "irish",
glg: "galician",
glh: "northwest pashai",
glh: "northwest pashayi",
gli: "guliguli",
glj: "gula iro",
glk: "gilaki",
gll: "garlali",
glo: "galambu",
glr: "glaro-twabo",
glu: "gula/chad",
glv: "manx",
glw: "glavda",
gly: "gule",
gma: "gambera",
gmb: "gula'alaa",
gmd: "mághdì",
gmg: "magɨyi",
gmh: "middle high german",
gml: "middle low german",
gmm: "gbaya-mbodomo",
gmn: "gimnime",
gmu: "gumalu",
gmv: "gamo",
gmx: "magoma",
gmy: "mycenaean greek",
gmz: "mgbolizhia",
gna: "kaansa",
gnb: "gangte",
gnc: "guanche",
gnd: "zulgo-gemzek",
gne: "ganang",
gng: "ngangam",
gnh: "lere",
gni: "gooniyandi",
gnj: "ngen",
gnk: "ǁgana",
gnl: "gangulu",
gnm: "ginuman",
gnn: "gumatj",
gno: "northern gondi",
gnq: "gana",
gnr: "gureng gureng",
gnt: "guntai",
gnu: "gnau",
gnw: "western bolivian guaraní",
gnz: "ganzi",
goa: "guro",
gob: "playero",
goc: "gorakor",
god: "godié",
goe: "gongduk",
gof: "gofa",
gog: "gogo",
goh: "old high german",
goi: "gobasi",
goj: "gowlan",
gok: "gowli",
gol: "gola",
gom: "goan konkani",
gon: "gondi",
goo: "gone dau",
gop: "yeretuar",
goq: "gorap",
gor: "gorontalo",
gos: "gronings",
got: "gothic",
gou: "gavar",
gow: "gorowa",
gox: "gobu",
goy: "goundo",
goz: "gozarkhani",
gpa: "gupa-abawa",
gpe: "ghanaian pidgin english",
gpn: "taiap",
gqa: "ga'anda",
gqi: "guiqiong",
gqn: "guana/brazil",
gqr: "gor",
gqu: "qau",
gra: "rajput garasia",
grb: "grebo",
grc: "ancient greek",
grd: "guruntum-mbaaru",
grg: "madi",
grh: "gbiri-niragu",
gri: "ghari",
grj: "southern grebo",
grm: "kota marudu talantang",
grn: "guarani",
gro: "groma",
grq: "gorovu",
grr: "taznatit",
grs: "gresi",
grt: "garo",
gru: "kistane",
grv: "central grebo",
grw: "gweda",
grx: "guriaso",
gry: "barclayville grebo",
grz: "guramalum",
gse: "ghanaian sign language",
gsg: "german sign language",
gsl: "gusilay",
gsm: "guatemalan sign language",
gsn: "gusan",
gsn: "nema",
gso: "southwest gbaya",
gsp: "wasembo",
gss: "greek sign language",
gsw: "alemannic",
gsw: "alsatian",
gsw: "swiss german",
gta: "guató",
gtu: "aghu-tharnggala",
gua: "shiki",
gub: "guajajára",
guc: "wayuu",
gud: "yocoboué dida",
gue: "gurinji",
guf: "gupapuyngu",
gug: "paraguayan guaraní",
guh: "guahibo",
gui: "eastern bolivian guaraní",
guj: "gujarati",
guk: "gumuz",
gul: "sea island creole english",
gum: "guambiano",
gun: "mbyá guaraní",
guo: "guayabero",
gup: "gunwinggu",
guq: "aché",
gur: "farefare",
gus: "guinean sign language",
gut: "maléku jaíka",
guu: "yanomamö",
guw: "gun",
gux: "gourmanchéma",
guz: "ekegusii",
guz: "gusii",
gva: "guana/paraguay",
gvc: "guanano",
gve: "duwet",
gvf: "golin",
gvj: "guajá",
gvl: "gulay",
gvm: "gurmana",
gvn: "kuku-yalanji",
gvo: "gavião do jiparaná",
gvp: "pará gavião",
gvr: "gurung",
gvs: "gumawana",
gvy: "guyani",
gwa: "mbato",
gwb: "gwa",
gwc: "kalami",
gwd: "gawwada",
gwe: "gweno",
gwf: "gowro",
gwg: "moo",
gwi: "gwichʼin",
gwj: "ǀgwi",
gwm: "awngthim",
gwn: "gwandara",
gwr: "gwere",
gwt: "gawar-bati",
gwu: "guwamu",
gww: "kwini",
gwx: "gua",
gxx: "wè southern",
gya: "northwest gbaya",
gyb: "garus",
gyd: "kayardild",
gye: "gyem",
gyf: "gungabula",
gyg: "gbayi",
gyi: "gyele",
gyl: "gayil",
gym: "ngäbere",
gyn: "guyanese creole english",
gyo: "gyalsumdo",
gyr: "guarayu",
gyy: "gunya",
gza: "ganza",
gzi: "gazi",
gzn: "gane",
haa: "han",
hab: "hanoi sign language",
hac: "gurani",
had: "hatam",
hae: "eastern oromo",
haf: "haiphong sign language",
hag: "hanga",
hah: "hahon",
hai: "haida",
haj: "hajong",
hak: "hakka chinese",
hal: "halang",
ham: "hewa",
han: "hangaza",
hao: "hakö",
hap: "hupla",
haq: "ha",
har: "harari",
has: "haisla",
hat: "haitian",
hat: "haitian creole",
hau: "hausa",
hav: "havu",
haw: "hawaiian",
hax: "southern haida",
hay: "haya",
haz: "hazaragi",
hba: "hamba",
hbb: "huba",
hbn: "heiban",
hbo: "ancient-hebrew",
hbs: "serbo-croatian",
hbu: "habu",
hca: "andaman-creole-hindi",
hch: "huichol",
hdn: "northern haida",
hds: "honduras sign language",
hdy: "hadiyya",
hea: "northern qiandong miao",
heb: "hebrew",
hed: "herdé",
heg: "helong",
heh: "hehe",
hei: "heiltsuk",
hem: "hemba",
her: "herero",
hgm: "haiǁom",
hgw: "haigwai",
hhi: "hoia hoia",
hhr: "kerak",
hhy: "hoyahoya",
hia: "lamang",
hib: "hibito",
hid: "hidatsa",
hif: "fiji hindi",
hig: "kamwe",
hih: "pamosu",
hii: "hinduri",
hij: "hijuk",
hik: "seit-kaitetu",
hil: "hiligaynon",
hin: "hindi",
hio: "tsoa",
hir: "himarimã",
hit: "hittite",
hiw: "hiw",
hix: "hixkaryána",
hji: "haji",
hka: "kahe",
hke: "hunde",
hkk: "hunjara-kaina ke",
hkn: "mel-khaonh",
hks: "heung kong sau yue",
hks: "hong kong sign language",
hla: "halia",
hlb: "halbi",
hld: "halang doan",
hle: "hlersu",
hlt: "matu chin",
hlu: "hieroglyphic luwian",
hma: "southern mashan hmong",
hma: "southern mashan miao",
hmb: "humburi senni songhay",
hmc: "central huishui hmong",
hmc: "central huishui miao",
hmd: "a-hmaos",
hmd: "da-hua miao",
hmd: "large flowery miao",
hme: "eastern huishui hmong",
hme: "eastern huishui miao",
hmf: "hmong don",
hmg: "southwestern guiyang hmong",
hmh: "southwestern huishui hmong",
hmh: "southwestern huishui miao",
hmi: "northern huishui hmong",
hmi: "northern huishui miao",
hmj: "ge",
hmj: "gejia",
hmk: "maek",
hml: "luopohe hmong",
hml: "luopohe miao",
hmm: "central mashan hmong",
hmm: "central mashan miao",
hmn: "hmong",
hmn: "mong",
hmo: "hiri motu",
hmp: "northern mashan hmong",
hmp: "northern mashan miao",
hmq: "eastern qiandong miao",
hmr: "hmar",
hms: "southern qiandong miao",
hmt: "hamtai",
hmu: "hamap",
hmv: "hmong dô",
hmw: "western mashan hmong",
hmw: "western mashan miao",
hmy: "southern guiyang hmong",
hmy: "southern guiyang miao",
hmz: "hmong shua",
hmz: "sinicized miao",
hna: "mina/cameroon",
hnd: "southern hindko",
hne: "chhattisgarhi",
hnh: "ǁani",
hni: "hani",
hnj: "hmong njua",
hnj: "mong leng",
hnj: "mong njua",
hnn: "hanunoo",
hno: "northern hindko",
hns: "caribbean hindustani",
hnu: "hung",
hoa: "hoava",
hob: "mari/madang province",
hoc: "ho",
hod: "holma",
hoe: "horom",
hoh: "hobyót",
hoi: "holikachuk",
hoj: "hadothi",
hoj: "haroti",
hol: "holu",
hom: "homa",
hoo: "holoholo",
hop: "hopi",
hor: "horo",
hos: "ho chi minh city sign language",
hot: "hote",
hot: "malê",
hov: "hovongan",
how: "honi",
hoy: "holiya",
hoz: "hozo",
hpo: "hpon",
hps: "hawaii pidgin sign language",
hps: "hawaii sign language",
hra: "hrangkhol",
hrc: "niwer mil",
hre: "hre",
hrk: "haruku",
hrm: "horned miao",
hro: "haroi",
hrp: "nhirrpi",
hrt: "hértevin",
hru: "hruso",
hrv: "croatian",
hrw: "warwar feni",
hrx: "hunsrik",
hrz: "harzani",
hsb: "upper sorbian",
hsh: "hungarian sign language",
hsl: "hausa sign language",
hsn: "xiang chinese",
hss: "harsusi",
hti: "hoti",
hto: "minica huitoto",
hts: "hadza",
htu: "hitu",
htx: "middle hittite",
hub: "huambisa",
huc: "ǂhua",
hud: "huaulu",
hue: "san francisco del mar huave",
huf: "humene",
hug: "huachipaeri",
huh: "huilliche",
hui: "huli",
huj: "northern guiyang hmong",
huj: "northern guiyang miao",
huk: "hulung",
hul: "hula",
hum: "hungana",
hun: "hungarian",
huo: "hu",
hup: "hupa",
huq: "tsat",
hur: "halkomelem",
hus: "huastec",
hut: "humla",
huu: "murui huitoto",
huv: "san mateo del mar huave",
huw: "hukumina",
hux: "nüpode huitoto",
huy: "hulaulá",
huz: "hunzib",
hvc: "haitian vodoun culture language",
hve: "san dionisio del mar huave",
hvk: "haveke",
hvn: "sabu",
hvv: "santa maría del mar huave",
hwa: "wané",
hwc: "hawai'i creole english",
hwc: "hawai'i pidgin",
hwo: "hwana",
hya: "hya",
hye: "armenian",
hyw: "western armenian",
iai: "iaai",
ian: "iatmul",
iar: "purari",
iba: "iban",
ibb: "ibibio",