text:
Module:languages/data/2

local m_lang = require("Module:languages") local m_langdata = require("Module:languages/data")

local u = require("Module:string utilities").char

local c = m_langdata.chars local p = m_langdata.puaChars local s = m_langdata.shared

-- Ideally, we want to move these into Module:languages/data, but because (a) it's necessary to use require on that module, and (b) they're only used in this data module, it's less memory-efficient to do that at the moment. If it becomes possible to use mw.loadData, then these should be moved there. s["no-sortkey"] = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.dacute .. c.caron .. c.cedilla, remove_exceptions = {"å"}, from = {"æ", "ø", "å"}, to = {"z" .. p[1], "z" .. p[2], "z" .. p[3]} }

s["no-standardchars"] = "AaBbDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvYyÆæØøÅå" .. c.punc

local m = {}

m["aa"] = { "Afar", 27811,	"cus-eas", "Latn, Ethi", entry_name = {Latn = {remove_diacritics = c.acute}}, }

m["ab"] = { "Abkhaz", 5111,	"cau-abz", "Cyrl, Geor, Latn", translit = { Cyrl = "ab-translit", Geor = "Geor-translit", },	override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = { Cyrl = { remove_diacritics = c.acute, from = {"^а%-"}, to = {"а"}, },		Latn = s["cau-Latn-entryname"], },	sort_key = { Cyrl = { from = { "х'ә", -- 3 chars "гь", "гә", "ӷь", "ҕь", "ӷә", "ҕә", "дә", "ё", "жь", "жә", "ҙә", "ӡә", "ӡ'", "кь", "кә", "қь", "қә", "ҟь", "ҟә", "ҫә", "тә", "ҭә", "ф'", "хь", "хә", "х'", "ҳә", "ць", "цә", "ц'", "ҵә", "ҵ'", "шь", "шә", "џь", -- 2 chars "ӷ", "ҕ", "ҙ", "ӡ", "қ", "ҟ", "ԥ", "ҧ", "ҫ", "ҭ", "ҳ", "ҵ", "ҷ", "ҽ", "ҿ", "ҩ", "џ", "ә", -- 1 char "^а", },			to = { "х" .. p[4], "г" .. p[1], "г" .. p[2], "г" .. p[5], "г" .. p[6], "г" .. p[7], "г" .. p[8], "д" .. p[1], "е" .. p[1], "ж" .. p[1], "ж" .. p[2], "з" .. p[2], "з" .. p[4], "з" .. p[5], "к" .. p[1], "к" .. p[2], "к" .. p[4], "к" .. p[5], "к" .. p[7], "к" .. p[8], "с" .. p[2], "т" .. p[1], "т" .. p[3], "ф" .. p[1], "х" .. p[1], "х" .. p[2], "х" .. p[3], "х" .. p[6], "ц" .. p[1], "ц" .. p[2], "ц" .. p[3], "ц" .. p[5], "ц" .. p[6], "ш" .. p[1], "ш" .. p[2], "ы" .. p[3], "г" .. p[3], "г" .. p[4], "з" .. p[1], "з" .. p[3], "к" .. p[3], "к" .. p[6], "п" .. p[1], "п" .. p[2], "с" .. p[1], "т" .. p[2], "х" .. p[5], "ц" .. p[4], "ч" .. p[1], "ч" .. p[2], "ч" .. p[3], "ы" .. p[1], "ы" .. p[2], "ь" .. p[1], "",			}		},	}, }

m["ae"] = { "Avestan", 29572,	"ira-cen", "Avst, Gujr", translit = {Avst = "Avst-translit"}, wikipedia_article = "Avestan", }

m["af"] = { "Afrikaans", 14196,	"gmw-frk", "Latn, Arab", ancestors = "nl", sort_key = { Latn = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.diaer .. c.ringabove .. c.cedilla .. "'",			from = {"['ʼ]n"}, to = {"n" .. p[1]} }	}, }

m["ak"] = { "Akan", 28026,	"alv-ctn", "Latn", }

m["am"] = { "Amharic", 28244,	"sem-eth", "Ethi", translit = "Ethi-translit", }

m["an"] = { "Aragonese", 8765,	"roa-ibe", "Latn", ancestors = "roa-oan", }

m["ar"] = { "Arabic", 13955,	"sem-arb", "Arab, Hebr, Syrc, Brai", translit = {Arab = "ar-translit"}, entry_name = {Arab = "ar-entryname"}, -- put Judeo-Arabic (Hebrew-script Arabic) under the category header -- U+FB21 HEBREW LETTER WIDE ALEF so that it sorts after Arabic script titles sort_key = { Hebr = { from = {"^%f[" .. u(0x5D0) .. "-" .. u(0x5EA) .. "]"},			to = {u(0xFB21)}, },	}, }

m["as"] = { "Assamese", 29401,	"inc-eas", "as-Beng", ancestors = "inc-mas", translit = "as-translit", }

m["av"] = { "Avar", 29561,	"cau-ava", "Cyrl, Latn, Arab", ancestors = "oav", translit = { Cyrl = "cau-nec-translit", Arab = "ar-translit", },	override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = { Cyrl = s["cau-Cyrl-entryname"], Latn = s["cau-Latn-entryname"], },	sort_key = { Cyrl = { from = {"гъ", "гь", "гӏ", "ё", "кк", "къ", "кь", "кӏ", "лъ", "лӏ", "тӏ", "хх", "хъ", "хь", "хӏ", "цӏ", "чӏ"}, to = {"г" .. p[1], "г" .. p[2], "г" .. p[3], "е" .. p[1], "к" .. p[1], "к" .. p[2], "к" .. p[3], "к" .. p[4], "л" .. p[1], "л" .. p[2], "т" .. p[1], "х" .. p[1], "х" .. p[2], "х" .. p[3], "х" .. p[4], "ц" .. p[1], "ч" .. p[1]} },	}, }

m["ay"] = { "Aymara", 4627,	"sai-aym", "Latn", }

m["az"] = { "Azerbaijani", 9292,	"trk-ogz", "Latn, Cyrl, fa-Arab", ancestors = "trk-oat", dotted_dotless_i = true, entry_name = { Latn = { from = {"ʼ"}, to = {"'"}, },		["fa-Arab"] = { module = "ar-entryname", ["from"] = { "ۆ", "ۇ", "وْ", "ڲ", "ؽ", },			["to"] = { "و", "و", "و", "گ", "ی", },		},	},	display_text = { Latn = { from = {"'"}, to = {"ʼ"} }	},	sort_key = { Latn = { from = { "i", -- Ensure "i" comes after "ı". "ç", "ə", "ğ", "x", "ı", "q", "ö", "ş", "ü", "w" },			to = { "i" .. p[1], "c" .. p[1], "e" .. p[1], "g" .. p[1], "h" .. p[1], "i", "k" .. p[1], "o" .. p[1], "s" .. p[1], "u" .. p[1], "z" .. p[1] }		},		Cyrl = { from = {"ғ", "ә", "ы", "ј", "ҝ", "ө", "ү", "һ", "ҹ"}, to = {"г" .. p[1], "е" .. p[1], "и" .. p[1], "и" .. p[2], "к" .. p[1], "о" .. p[1], "у" .. p[1], "х" .. p[1], "ч" .. p[1]} },	}, }

m["ba"] = { "Bashkir", 13389,	"trk-kbu", "Cyrl", translit = "ba-translit", override_translit = true, sort_key = { from = {"ғ", "ҙ", "ё", "ҡ", "ң", "ө", "ҫ", "ү", "һ", "ә"}, to = {"г" .. p[1], "д" .. p[1], "е" .. p[1], "к" .. p[1], "н" .. p[1], "о" .. p[1], "с" .. p[1], "у" .. p[1], "х" .. p[1], "э" .. p[1]} }, }

m["be"] = { "Belarusian", 9091,	"zle", "Cyrl, Latn", ancestors = "zle-obe", translit = {Cyrl = "be-translit"}, entry_name = { Cyrl = { remove_diacritics = c.grave .. c.acute, },		Latn = { remove_diacritics = c.grave .. c.acute, remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ś", "ś", "Ź", "ź"}, },	},	sort_key = { Cyrl = { remove_diacritics = c.grave .. c.acute, from = {"ґ", "ё", "і", "ў"}, to = {"г" .. p[1], "е" .. p[1], "и" .. p[1], "у" .. p[1]} },		Latn = { remove_diacritics = c.grave .. c.acute, remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ś", "ś", "Ź", "ź"}, from = {"ć", "č", "dz", "dź", "dž", "ch", "ł", "ń", "ś", "š", "ŭ", "ź", "ž"}, to = {"c" .. p[1], "c" .. p[2], "d" .. p[1], "d" .. p[2], "d" .. p[3], "h" .. p[1], "l" .. p[1], "n" .. p[1], "s" .. p[1], "s" .. p[2], "u" .. p[1], "z" .. p[1], "z" .. p[2]} },	},	standardChars = { Cyrl = "АаБбВвГгДдЕеЁёЖжЗзІіЙйКкЛлМмНнОоПпРрСсТтУуЎўФфХхЦцЧчШшЫыЬьЭэЮюЯя", Latn = "AaBbCcĆćČčDdEeFfGgHhIiJjKkLlŁłMmNnŃńOoPpRrSsŚśŠšTtUuŬŭVvYyZzŹźŽž", (c.punc:gsub("'", "")) -- Exclude apostrophe. }, }

m["bg"] = { "Bulgarian", 7918,	"zls", "Cyrl", ancestors = "cu-bgm", translit = "bg-translit", entry_name = { remove_diacritics = c.grave .. c.acute, remove_exceptions = {"%f[^%z%s]ѝ%f[%z%s]"}, },	standardChars = "АаБбВвГгДдЕеЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЬьЮюЯя" .. c.punc, }

m["bh"] = { "Bihari", 135305,	"inc-eas", "Deva", }

m["bi"] = { "Bislama", 35452,	"crp", "Latn", ancestors = "en", }

m["bm"] = { "Bambara", 33243,	"dmn-emn", "Latn", sort_key = { from = {"ɛ", "ɲ", "ŋ", "ɔ"}, to = {"e" .. p[1], "n" .. p[1], "n" .. p[2], "o" .. p[1]} }, }

m["bn"] = { "Bengali", 9610,	"inc-eas", "Beng, Newa", ancestors = "inc-mbn", translit = {Beng = "bn-translit"}, }

m["bo"] = { "Tibetan", 34271,	"sit-tib", "Tibt", -- sometimes Deva? ancestors = "xct", translit = "Tibt-translit", override_translit = true, display_text = s["Tibt-displaytext"], entry_name = s["Tibt-entryname"], sort_key = "Tibt-sortkey", }

m["br"] = { "Breton", 12107,	"cel-brs", "Latn", ancestors = "xbm", sort_key = { from = {"ch", "c['ʼ’]h"}, to = {"c" .. p[1], "c" .. p[2]} }, }

m["ca"] = { "Catalan", 7026,	"roa-ocr", "Latn", ancestors = "roa-oca", sort_key = { remove_diacritics = c.grave .. c.acute .. c.diaer .. c.cedilla, from = {"l·l"}, to = {"ll"} },	standardChars = "AaÀàBbCcÇçDdEeÉéÈèFfGgHhIiÍíÏïJjLlMmNnOoÓóÒòPpQqRrSsTtUuÚúÜüVvXxYyZz·" .. c.punc, }

m["ce"] = { "Chechen", 33350,	"cau-vay", "Cyrl, Latn, Arab", translit = { Cyrl = "cau-nec-translit", Arab = "ar-translit", },	override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = { Cyrl = s["cau-Cyrl-entryname"], Latn = s["cau-Latn-entryname"], },	sort_key = { Cyrl = { from = {"аь", "гӏ", "ё", "кх", "къ", "кӏ", "оь", "пӏ", "тӏ", "уь", "хь", "хӏ", "цӏ", "чӏ", "юь", "яь"}, to = {"а" .. p[1], "г" .. p[1], "е" .. p[1], "к" .. p[1], "к" .. p[2], "к" .. p[3], "о" .. p[1], "п" .. p[1], "т" .. p[1], "у" .. p[1], "х" .. p[1], "х" .. p[2], "ц" .. p[1], "ч" .. p[1], "ю" .. p[1], "я" .. p[1]} },	}, }

m["ch"] = { "Chamorro", 33262,	"poz", "Latn", sort_key = { remove_diacritics = "'", from = {"å", "ch", "ñ", "ng"}, to = {"a" .. p[1], "c" .. p[1], "n" .. p[1], "n" .. p[2]} }, }

m["co"] = { "Corsican", 33111,	"roa-itd", "Latn", sort_key = { from = {"chj", "ghj", "sc", "sg"}, to = {"c" .. p[1], "g" .. p[1], "s" .. p[1], "s" .. p[2]} },	standardChars = "AaÀàBbCcDdEeÈèFfGgHhIiÌìÏïJjLlMmNnOoÒòPpQqRrSsTtUuÙùÜüVvZz" .. c.punc, }

m["cr"] = { "Cree", 33390,	"alg", "Latn, Cans", translit = {Cans = "cr-translit"}, }

m["cs"] = { "Czech", 9056,	"zlw", "Latn", ancestors = "cs-ear", sort_key = { from = {"á", "č", "ď", "é", "ě", "ch", "í", "ň", "ó", "ř", "š", "ť", "ú", "ů", "ý", "ž"}, to = {"a" .. p[1], "c" .. p[1], "d" .. p[1], "e" .. p[1], "e" .. p[2], "h" .. p[1], "i" .. p[1], "n" .. p[1], "o" .. p[1], "r" .. p[1], "s" .. p[1], "t" .. p[1], "u" .. p[1], "u" .. p[2], "y" .. p[1], "z" .. p[1]} },	standardChars = "AaÁáBbCcČčDdĎďEeÉéĚěFfGgHhIiÍíJjKkLlMmNnŇňOoÓóPpRrŘřSsŠšTtŤťUuÚúŮůVvYyÝýZzŽž" .. c.punc, }

m["cu"] = { "Old Church Slavonic", 35499,	"zls", "Cyrs, Glag", translit = {Cyrs = "Cyrs-translit", Glag = "Glag-translit"}, entry_name = {Cyrs = s["Cyrs-entryname"]}, sort_key = {Cyrs = s["Cyrs-sortkey"]}, }

m["cv"] = { "Chuvash", 33348,	"trk-ogr", "Cyrl", ancestors = "cv-mid", translit = "cv-translit", override_translit = true, sort_key = { from = {"ӑ", "ё", "ӗ", "ҫ", "ӳ"}, to = {"а" .. p[1], "е" .. p[1], "е" .. p[2], "с" .. p[1], "у" .. p[1]} }, }

m["cy"] = { "Welsh", 9309,	"cel-brw", "Latn", ancestors = "wlm", sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.diaer .. "'",		from = {"ch", "dd", "ff", "ng", "ll", "ph", "rh", "th"}, to = {"c" .. p[1], "d" .. p[1], "f" .. p[1], "g" .. p[1], "l" .. p[1], "p" .. p[1], "r" .. p[1], "t" .. p[1]} },	standardChars = "ÂâAaBbCcDdEeÊêFfGgHhIiÎîLlMmNnOoÔôPpRrSsTtUuÛûWwŴŵYyŶŷ" .. c.punc, }

m["da"] = { "Danish", 9035,	"gmq-eas", "Latn", ancestors = "gmq-oda", sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.dacute .. c.caron .. c.cedilla, remove_exceptions = {"å"}, from = {"æ", "ø", "å"}, to = {"z" .. p[1], "z" .. p[2], "z" .. p[3]} },	standardChars = "AaBbDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvYyÆæØøÅå" .. c.punc, }

m["de"] = { "German", 188,	"gmw-hgm", "Latn, Latf", ancestors = "gmh", sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.diaer .. c.ringabove, from = {"æ", "œ", "ß"}, to = {"ae", "oe", "ss"} },	standardChars = "AaÄäBbCcDdEeFfGgHhIiJjKkLlMmNnOoÖöPpQqRrSsẞßTtUuÜüVvWwXxYyZz" .. c.punc, }

m["dv"] = { "Dhivehi", 32656,	"inc-ins", "Thaa, Diak", translit = { Thaa = "dv-translit", Diak = "Diak-translit", },	override_translit = true, }

m["dz"] = { "Dzongkha", 33081,	"sit-tib", "Tibt", ancestors = "xct", translit = "Tibt-translit", override_translit = true, display_text = s["Tibt-displaytext"], entry_name = s["Tibt-entryname"], sort_key = "Tibt-sortkey", }

m["ee"] = { "Ewe", 30005,	"alv-gbe", "Latn", sort_key = { remove_diacritics = c.tilde, from = {"ɖ", "dz", "ɛ", "ƒ", "gb", "ɣ", "kp", "ny", "ŋ", "ɔ", "ts", "ʋ"}, to = {"d" .. p[1], "d" .. p[2], "e" .. p[1], "f" .. p[1], "g" .. p[1], "g" .. p[2], "k" .. p[1], "n" .. p[1], "n" .. p[2], "o" .. p[1], "t" .. p[1], "v" .. p[1]} }, }

m["el"] = { "Greek", 9129,	"grk", "Grek, Polyt, Brai", ancestors = "el-kth", translit = { Grek = "el-translit", Polyt = "grc-translit", },	override_translit = true, entry_name = { Grek = {remove_diacritics = c.caron .. c.diaerbelow .. c.brevebelow}, Polyt = s["Polyt-entryname"], },	sort_key = { Grek = s["Grek-sortkey"], Polyt = s["Grek-sortkey"], },	standardChars = { Grek = "΅·ͺ΄ΑαΆάΒβΓγΔδΕεέΈΖζΗηΉήΘθΙιΊίΪϊΐΚκΛλΜμΝνΞξΟοΌόΠπΡρΣσςΤτΥυΎύΫϋΰΦφΧχΨψΩωΏώ", Brai = c.braille, c.punc }, }

m["en"] = { "English", 1860,	"gmw-ang", "Latn, Brai, Shaw, Dsrt", -- entries in Shaw or Dsrt might require prior discussion wikimedia_codes = "en, simple", ancestors = "en-ear", sort_key = { Latn = { -- Many of these are needed for sorting language names. remove_diacritics = "'\"%-%sʻʼ" .. c.diacritics,			-- These are found in entry names.			from = {"æ", "[ðđ]", "[əǝ]", "ħ", "ł", "[ŋɲ]", "[øɔ]", "œ", "ꝓ", "ß", "ʋ"},			to = {"ae", "d", "e", "h", "l", "n", "o", "oe", "p", "ss", "v"}		},	},	standardChars = {		Latn = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz",		Brai = c.braille,		c.punc	}, }

m["eo"] = { "Esperanto", 143,	"art", "Latn", sort_key = { remove_diacritics = c.grave .. c.acute, from = {"ĉ", "ĝ", "ĥ", "ĵ", "ŝ", "ŭ"}, to = {"c" .. p[1], "g" .. p[1], "h" .. p[1], "j" .. p[1], "s" .. p[1], "u" .. p[1]} },	standardChars = "AaBbCcĈĉDdEeFfGgĜĝHhĤĥIiJjĴĵKkLlMmNnOoPpRrSsŜŝTtUuŬŭVvZz" .. c.punc, }

m["es"] = { "Spanish", 1321,	"roa-ibe", "Latn, Brai", ancestors = "es-ear", sort_key = { Latn = { remove_exceptions = {"ñ"}, remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.diaer .. c.cedilla, from = {"ª", "æ", "ñ", "º", "œ"}, to = {"a", "ae", "n" .. p[1], "o", "oe"} },	},	standardChars = { Latn = "AaÁáBbCcDdEeÉéFfGgHhIiÍíJjLlMmNnÑñOoÓóPpQqRrSsTtUuÚúÜüVvXxYyZz", Brai = c.braille, c.punc }, }

m["et"] = { "Estonian", 9072,	"urj-fin", "Latn", sort_key = { from = { "š", "ž", "õ", "ä", "ö", "ü", -- 2 chars "z" -- 1 char },		to = { "s" .. p[1], "s" .. p[3], "w" .. p[1], "w" .. p[2], "w" .. p[3], "w" .. p[4], "s" .. p[2] }	},	standardChars = "AaBbDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvÕõÄäÖöÜü" .. c.punc, }

m["eu"] = { "Basque", 8752,	"euq", "Latn", sort_key = { from = {"ç", "ñ"}, to = {"c" .. p[1], "n" .. p[1]} },	standardChars = "AaBbDdEeFfGgHhIiJjKkLlMmNnÑñOoPpRrSsTtUuXxZz" .. c.punc, }

m["fa"] = { "Persian", 9168,	"ira-swi", "fa-Arab, Hebr", ancestors = "fa-cls", entry_name = { from = {"هٔ", "ٱ"}, -- character "ۂ" code U+06C2 to "ه"; hamzatu l-waṣli to a regular alif to = {"ه", "ا"}, remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.kashida .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.superalef, },	-- put Judeo-Persian (Hebrew-script Persian) under the category header -- U+FB21 HEBREW LETTER WIDE ALEF so that it sorts after Arabic script titles sort_key = { Hebr = { from = {"^%f[" .. u(0x5D0) .. "-" .. u(0x5EA) .. "]"},			to = {u(0xFB21)}, },	}, }

m["ff"] = { "Fula", 33454,	"alv-fwo", "Latn, Adlm", }

m["fi"] = { "Finnish", 1412,	"urj-fin", "Latn", display_text = { from = {"'"}, to = {"’"} },	entry_name = { -- used to indicate gemination of the next consonant remove_diacritics = "ˣ", from = {"’"}, to = {"'"}, },	sort_key = { -- Appendix:Finnish alphabet + "aͤ" and "oͤ" as historical variants of "ä" and "ö". remove_diacritics = "':" .. c.diacritics, remove_exceptions = { "a[" .. c.ringabove .. c.diaer .. c.small_e .. "]", -- åäaͤ "o[" .. c.diaer .. c.tilde .. c.dacute .. c.small_e .. "]", -- öõőoͤ "u[" .. c.diaer .. c.dacute .. "]" -- üű },		from = {"æ", "ð", "ł", "ŋ", "œ", "ß", "þ", "u[" .. c.diaer .. c.dacute .. "]", "å", "aͤ", "o[" .. c.tilde .. c.dacute .. c.small_e .. "]", "ø", "(.)['%-]"}, to = {"ae", "d", "l", "n", "oe", "ss", "th", "y", "z" .. p[1], "ä", "ö", "ö", "%1"} },	standardChars = "AaBbDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvYyÄäÖö" .. c.punc, }

m["fj"] = { "Fijian", 33295,	"poz-pcc", "Latn", }

m["fo"] = { "Faroese", 25258,	"gmq-ins", "Latn", sort_key = { from = {"á", "ð", "í", "ó", "ú", "ý", "æ", "ø"}, to = {"a" .. p[1], "d" .. p[1], "i" .. p[1], "o" .. p[1], "u" .. p[1], "y" .. p[1], "z" .. p[1], "z" .. p[2]} },	standardChars = "AaÁáBbDdÐðEeFfGgHhIiÍíJjKkLlMmNnOoÓóPpRrSsTtUuÚúVvYyÝýÆæØø" .. c.punc, }

m["fr"] = { "French", 150,	"roa-oil", "Latn, Brai", display_text = { from = {"'"}, to = {"’"} },	entry_name = { from = {"’"}, to = {"'"}, },	ancestors = "frm", sort_key = {Latn = s["roa-oil-sortkey"]}, standardChars = { Latn = "AaÀàÂâBbCcÇçDdEeÉéÈèÊêËëFfGgHhIiÎîÏïJjLlMmNnOoÔôŒœPpQqRrSsTtUuÙùÛûÜüVvXxYyZz", Brai = c.braille, c.punc }, }

m["fy"] = { "West Frisian", 27175,	"gmw-fri", "Latn", sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.diaer, from = {"y"}, to = {"i"} },	standardChars = "AaâäàÆæBbCcDdEeéêëèFfGgHhIiïìYyỳJjKkLlMmNnOoôöòPpRrSsTtUuúûüùVvWwZz" .. c.punc, }

m["ga"] = { "Irish", 9142,	"cel-gae", "Latn, Latg", ancestors = "mga", sort_key = { remove_diacritics = c.acute, from = {"ḃ", "ċ", "ḋ", "ḟ", "ġ", "ṁ", "ṗ", "ṡ", "ṫ"}, to = {"bh", "ch", "dh", "fh", "gh", "mh", "ph", "sh", "th"} },	standardChars = "AaÁáBbCcDdEeÉéFfGgHhIiÍíLlMmNnOoÓóPpRrSsTtUuÚúVv" .. c.punc, }

m["gd"] = { "Scottish Gaelic", 9314,	"cel-gae", "Latn, Latg", ancestors = "mga", sort_key = {remove_diacritics = c.grave .. c.acute}, standardChars = "AaÀàBbCcDdEeÈèFfGgHhIiÌìLlMmNnOoÒòPpRrSsTtUuÙù" .. c.punc, }

m["gl"] = { "Galician", 9307,	"roa-ibe", "Latn", ancestors = "roa-opt", sort_key = { remove_diacritics = c.acute, from = {"ñ"}, to = {"n" .. p[1]} },	standardChars = "AaÁáBbCcDdEeÉéFfGgHhIiÍíÏïLlMmNnÑñOoÓóPpQqRrSsTtUuÚúÜüVvXxZz" .. c.punc, }

m["gn"] = { "Guaraní", 35876,	"tup-gua", "Latn", }

m["gu"] = { "Gujarati", 5137,	"inc-wes", "Arab, Gujr", ancestors = "inc-mgu", translit = { Gujr = "gu-translit", },	entry_name = { remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.kasra .. c.shadda .. c.sukun .. "઼"	}, }

m["gv"] = { "Manx", 12175,	"cel-gae", "Latn", ancestors = "mga", sort_key = {remove_diacritics = c.cedilla .. "-"},	standardChars = "AaBbCcÇçDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwYy" .. c.punc, }

m["ha"] = { "Hausa", 56475,	"cdc-wst", "Latn, Arab", entry_name = {Latn = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron}}, sort_key = { Latn = { from = {"ɓ", "b'", "ɗ", "d'", "ƙ", "k'", "sh", "ƴ", "'y"}, to = {"b" .. p[1], "b" .. p[2], "d" .. p[1], "d" .. p[2], "k" .. p[1], "k" .. p[2], "s" .. p[1], "y" .. p[1], "y" .. p[2]} },	}, }

m["he"] = { "Hebrew", 9288,	"sem-can", "Hebr, Phnx, Brai", ancestors = "he-med", entry_name = {Hebr = {remove_diacritics = u(0x0591) .. "-" .. u(0x05BD) .. u(0x05BF) .. "-" .. u(0x05C5) .. u(0x05C7) .. c.CGJ}}, }

m["hi"] = { "Hindi", 1568,	"inc-hnd", "Deva, Kthi, Newa", translit = {Deva = "hi-translit"}, standardChars = { Deva = "अआइईउऊएऐओऔकखगघङचछजझञटठडढणतथदधनपफबभमयरलवशषसहत्रज्ञक्षक़ख़ग़ज़झ़ड़ढ़फ़काखागाघाङाचाछाजाझाञाटाठाडाढाणाताथादाधानापाफाबाभामायारालावाशाषासाहात्राज्ञाक्षाक़ाख़ाग़ाज़ाझ़ाड़ाढ़ाफ़ाकिखिगिघिङिचिछिजिझिञिटिठिडिढिणितिथिदिधिनिपिफिबिभिमियिरिलिविशिषिसिहित्रिज्ञिक्षिक़िख़िग़िज़िझ़िड़िढ़िफ़िकीखीगीघीङीचीछीजीझीञीटीठीडीढीणीतीथीदीधीनीपीफीबीभीमीयीरीलीवीशीषीसीहीत्रीज्ञीक्षीक़ीख़ीग़ीज़ीझ़ीड़ीढ़ीफ़ीकुखुगुघुङुचुछुजुझुञुटुठुडुढुणुतुथुदुधुनुपुफुबुभुमुयुरुलुवुशुषुसुहुत्रुज्ञुक्षुक़ुख़ुग़ुज़ुझ़ुड़ुढ़ुफ़ुकूखूगूघूङूचूछूजूझूञूटूठूडूढूणूतूथूदूधूनूपूफूबूभूमूयूरूलूवूशूषूसूहूत्रूज्ञूक्षूक़ूख़ूग़ूज़ूझ़ूड़ूढ़ूफ़ूकेखेगेघेङेचेछेजेझेञेटेठेडेढेणेतेथेदेधेनेपेफेबेभेमेयेरेलेवेशेषेसेहेत्रेज्ञेक्षेक़ेख़ेग़ेज़ेझ़ेड़ेढ़ेफ़ेकैखैगैघैङैचैछैजैझैञैटैठैडैढैणैतैथैदैधैनैपैफैबैभैमैयैरैलैवैशैषैसैहैत्रैज्ञैक्षैक़ैख़ैग़ैज़ैझ़ैड़ैढ़ैफ़ैकोखोगोघोङोचोछोजोझोञोटोठोडोढोणोतोथोदोधोनोपोफोबोभोमोयोरोलोवोशोषोसोहोत्रोज्ञोक्षोक़ोख़ोग़ोज़ोझ़ोड़ोढ़ोफ़ोकौखौगौघौङौचौछौजौझौञौटौठौडौढौणौतौथौदौधौनौपौफौबौभौमौयौरौलौवौशौषौसौहौत्रौज्ञौक्षौक़ौख़ौग़ौज़ौझ़ौड़ौढ़ौफ़ौक्ख्ग्घ्ङ्च्छ्ज्झ्ञ्ट्ठ्ड्ढ्ण्त्थ्द्ध्न्प्फ्ब्भ्म्य्र्ल्व्श्ष्स्ह्त्र्ज्ञ्क्ष्क़्ख़्ग़्ज़्झ़्ड़्ढ़्फ़्।॥०१२३४५६७८९॰", c.punc }, }

m["ho"] = { "Hiri Motu", 33617,	"crp", "Latn", ancestors = "meu", }

m["ht"] = { "Haitian Creole", 33491,	"crp", "Latn", ancestors = "ht-sdm", sort_key = { from = { "oun", -- 3 chars "an", "ch", "è", "en", "ng", "ò", "on", "ou", "ui" -- 2 chars },		to = { "o" .. p[4], "a" .. p[1], "c" .. p[1], "e" .. p[1], "e" .. p[2], "n" .. p[1], "o" .. p[1], "o" .. p[2], "o" .. p[3], "u" .. p[1] }	}, }

m["hu"] = { "Hungarian", 9067,	"urj-ugr", "Latn, Hung", ancestors = "ohu", sort_key = { Latn = { from = { "dzs", -- 3 chars "á", "cs", "dz", "é", "gy", "í", "ly", "ny", "ó", "ö", "ő", "sz", "ty", "ú", "ü", "ű", "zs", -- 2 chars },			to = { "d" .. p[2], "a" .. p[1], "c" .. p[1], "d" .. p[1], "e" .. p[1], "g" .. p[1], "i" .. p[1], "l" .. p[1], "n" .. p[1], "o" .. p[1], "o" .. p[2], "o" .. p[3], "s" .. p[1], "t" .. p[1], "u" .. p[1], "u" .. p[2], "u" .. p[3], "z" .. p[1], }		},	},	standardChars = { Latn = "AaÁáBbCcDdEeÉéFfGgHhIiÍíJjKkLlMmNnOoÓóÖöŐőPpQqRrSsTtUuÚúÜüŰűVvWwXxYyZz", c.punc }, }

m["hy"] = { "Armenian", 8785,	"hyx", "Armn, Brai", ancestors = "axm", translit = {Armn = "Armn-translit"}, override_translit = true, entry_name = { Armn = { remove_diacritics = "՛՜՞՟", from = {"եւ", "յ", "ի", "է", "յ̵", "ՙ", "՚"}, to = {"և", "յ", "ի", "է", "ֈ", "ʻ", "’"} },	},	sort_key = { Armn = { from = { "ու", "եւ", -- 2 chars "և" -- 1 char },			to = { "ւ", "եվ", "եվ" }		},	}, }

m["hz"] = { "Herero", 33315,	"bnt-swb", "Latn", }

m["ia"] = { "Interlingua", 35934,	"art", "Latn", }

m["id"] = { "Indonesian", 9240,	"poz-mly", "Latn", ancestors = "ms", standardChars = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz" .. c.punc, }

m["ie"] = { "Interlingue", 35850,	"art", "Latn", type = "appendix-constructed", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ}, }

m["ig"] = { "Igbo", 33578,	"alv-igb", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.macron}, sort_key = { from = {"gb", "gh", "gw", "ị", "kp", "kw", "ṅ", "nw", "ny", "ọ", "sh", "ụ"}, to = {"g" .. p[1], "g" .. p[2], "g" .. p[3], "i" .. p[1], "k" .. p[1], "k" .. p[2], "n" .. p[1], "n" .. p[2], "n" .. p[3], "o" .. p[1], "s" .. p[1], "u" .. p[1]} }, }

m["ii"] = { "Nuosu", 34235,	"tbq-nlo", "Yiii", translit = "ii-translit", }

m["ik"] = { "Inupiaq", 27183,	"esx-inu", "Latn", sort_key = { from = { "ch", "ġ", "dj", "ḷ", "ł̣", "ñ", "ng", "r̂", "sr", "zr", -- 2 chars "ł", "ŋ", "ʼ" -- 1 char },		to = { "c" .. p[1], "g" .. p[1], "h" .. p[1], "l" .. p[1], "l" .. p[3], "n" .. p[1], "n" .. p[2], "r" .. p[1], "s" .. p[1], "z" .. p[1], "l" .. p[2], "n" .. p[2], "z" .. p[2] }	}, }

m["io"] = { "Ido", 35224,	"art", "Latn", }

m["is"] = { "Icelandic", 294,	"gmq-ins", "Latn", sort_key = { from = {"á", "ð", "é", "í", "ó", "ú", "ý", "þ", "æ", "ö"}, to = {"a" .. p[1], "d" .. p[1], "e" .. p[1], "i" .. p[1], "o" .. p[1], "u" .. p[1], "y" .. p[1], "z" .. p[1], "z" .. p[2], "z" .. p[3]} },	standardChars = "AaÁáBbDdÐðEeÉéFfGgHhIiÍíJjKkLlMmNnOoÓóPpRrSsTtUuÚúVvXxYyÝýÞþÆæÖö" .. c.punc, }

m["it"] = { "Italian", 652,	"roa-itd", "Latn", ancestors = "roa-oit", sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.diaer .. c.ringabove}, standardChars = "AaÀàBbCcDdEeÈèÉéFfGgHhIiÌìLlMmNnOoÒòPpQqRrSsTtUuÙùVvZz" .. c.punc, }

m["iu"] = { "Inuktitut", 29921,	"esx-inu", "Cans, Latn", translit = {Cans = "cr-translit"}, override_translit = true, }

m["ja"] = { "Japanese", 5287,	"jpx", "Jpan, Latn, Brai", ancestors = "ja-ear", translit = s["jpx-translit"], link_tr = true, display_text = s["jpx-displaytext"], entry_name = s["jpx-entryname"], sort_key = s["jpx-sortkey"], }

m["jv"] = { "Javanese", 33549,	"poz", "Latn, Java", ancestors = "kaw", translit = {Java = "jv-translit"}, link_tr = true, entry_name = {remove_diacritics = c.circ}, -- Modern jv don't use ê sort_key = { Latn = { from = {"å", "dh", "é", "è", "ng", "ny", "th"}, to = {"a" .. p[1], "d" .. p[1], "e" .. p[1], "e" .. p[2], "n" .. p[1], "n" .. p[2], "t" .. p[1]} },	}, }

m["ka"] = { "Georgian", 8108,	"ccs-gzn", "Geor, Geok, Hebr", -- Hebr is used to write Judeo-Georgian ancestors = "ka-mid", translit = { Geor = "Geor-translit", Geok = "Geok-translit", },	override_translit = true, entry_name = {remove_diacritics = c.circ}, }

m["kg"] = { "Kongo", 33702,	"bnt-kng", "Latn", }

m["ki"] = { "Kikuyu", 33587,	"bnt-kka", "Latn", }

m["kj"] = { "Kwanyama", 1405077,	"bnt-ova", "Latn", }

m["kk"] = { "Kazakh", 9252,	"trk-kno", "Cyrl, Latn, kk-Arab", translit = { Cyrl = { from = { "Ё", "ё", "Й", "й", "Нг", "нг", "Ӯ", "ӯ", -- 2 chars; are "Ӯ" and "ӯ" actually used? "А", "а", "Ә", "ә", "Б", "б", "В", "в", "Г", "г", "Ғ", "ғ", "Д", "д", "Е", "е", "Ж", "ж", "З", "з", "И", "и", "К", "к", "Қ", "қ", "Л", "л", "М", "м", "Н", "н", "Ң", "ң", "О", "о", "Ө", "ө", "П", "п", "Р", "р", "С", "с", "Т", "т", "У", "у", "Ұ", "ұ", "Ү", "ү", "Ф", "ф", "Х", "х", "Һ", "һ", "Ц", "ц", "Ч", "ч", "Ш", "ш", "Щ", "щ", "Ъ", "ъ", "Ы", "ы", "І", "і", "Ь", "ь", "Э", "э", "Ю", "ю", "Я", "я", -- 1 char },			to = { "E", "e", "İ", "i", "Ñ", "ñ", "U", "u", "A", "a", "Ä", "ä", "B", "b", "V", "v", "G", "g", "Ğ", "ğ", "D", "d", "E", "e", "J", "j", "Z", "z", "İ", "i", "K", "k", "Q", "q", "L", "l", "M", "m", "N", "n", "Ñ", "ñ", "O", "o", "Ö", "ö", "P", "p", "R", "r", "S", "s", "T", "t", "U", "u", "Ū", "ū", "Ü", "ü", "F", "f", "X", "x", "H", "h", "S", "s", "Ç", "ç", "Ş", "ş", "Ş", "ş", "", "", "Y", "y", "I", "ı", "", "", "É", "é", "Ü", "ü", "Ä", "ä", }		}	}, --	override_translit = true, sort_key = { Cyrl = { from = {"ә", "ғ", "ё", "қ", "ң", "ө", "ұ", "ү", "һ", "і"}, to = {"а" .. p[1], "г" .. p[1], "е" .. p[1], "к" .. p[1], "н" .. p[1], "о" .. p[1], "у" .. p[1], "у" .. p[2], "х" .. p[1], "ы" .. p[1]} },	},	standardChars = { Cyrl = "АаӘәБбВвГгҒғДдЕеЁёЖжЗзИиЙйКкҚқЛлМмНнҢңОоӨөПпРрСсТтУуҰұҮүФфХхҺһЦцЧчШшЩщЪъЫыІіЬьЭэЮюЯя", c.punc }, }

m["kl"] = { "Greenlandic", 25355,	"esx-inu", "Latn", sort_key = { from = {"æ", "ø", "å"}, to = {"z" .. p[1], "z" .. p[2], "z" .. p[3]} } }

m["km"] = { "Khmer", 9205,	"mkh-kmr", "Khmr", ancestors = "xhm", translit = "km-translit", }

m["kn"] = { "Kannada", 33673,	"dra-kan", "Knda, Tutg", ancestors = "dra-mkn", translit = "kn-translit", }

m["ko"] = { "Korean", 9176,	"qfa-kor", "Kore, Brai", ancestors = "ko-ear", translit = {Kore = "ko-translit"}, entry_name = {Kore = s["Kore-entryname"]}, }

m["kr"] = { "Kanuri", 36094,	"ssa-sah", "Latn, Arab", entry_name = {Latn = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.breve}}, -- the sortkey and entry_name are only for standard Kanuri; when dialectal entries get added, someone will have to work out how the dialects should be represented orthographically sort_key = { Latn = { from = {"ǝ", "ny", "ɍ", "sh"}, to = {"e" .. p[1], "n" .. p[1], "r" .. p[1], "s" .. p[1]} },	}, }

m["ks"] = { "Kashmiri", 33552,	"inc-kas", "ks-Arab, Deva, Shrd, Latn", translit = { ["ks-Arab"] = "ks-Arab-translit", Deva = "ks-Deva-translit", Shrd = "Shrd-translit", }, }

-- "kv" IS TREATED AS "koi", "kpv", SEE WT:LT

m["kw"] = { "Cornish", 25289,	"cel-brs", "Latn", ancestors = "cnx", sort_key = { from = {"ch"}, to = {"c" .. p[1]} }, }

m["ky"] = { "Kyrgyz", 9255,	"trk-kkp", "Cyrl, Latn, Arab", translit = {Cyrl = "ky-translit"}, override_translit = true, sort_key = { Cyrl = { from = {"ё", "ң", "ө", "ү"}, to = {"е" .. p[1], "н" .. p[1], "о" .. p[1], "у" .. p[1]} },	}, }

m["la"] = { "Latin", 397,	"itc", "Latn, Ital", ancestors = "itc-ola", entry_name = {Latn = {remove_diacritics = c.macron .. c.breve .. c.diaer .. c.dinvbreve}}, sort_key = { remove_diacritics = c.circ .. c.tilde .. c.macron .. c.diaer .. c.zigzag .. c.dmacron .. c.dtilde .. c.small_a .. c.small_e .. c.small_i .. c.small_o .. c.small_u, -- Medieval abbreviations. Latn = { from = {"æ", "œ", "[ꝑꝓ]"}, to = {"ae", "oe", "p"} },	},	standardChars = { Latn = "AaBbCcDdEeFfGgHhIiLlMmNnOoPpQqRrSsTtUuVvXxZz", c.punc }, }

m["lb"] = { "Luxembourgish", 9051,	"gmw-hgm", "Latn", ancestors = "gmw-cfr", sort_key = { from = {"ä", "ë", "é"}, to = {"z" .. p[1], "z" .. p[2], "z" .. p[3]} }, }

m["lg"] = { "Luganda", 33368,	"bnt-nyg", "Latn", entry_name = {remove_diacritics = c.acute .. c.circ}, sort_key = { from = {"ŋ"}, to = {"n" .. p[1]} }, }

m["li"] = { "Limburgish", 102172,	"gmw-frk", "Latn", ancestors = "dum", }

m["ln"] = { "Lingala", 36217,	"bnt-bmo", "Latn", sort_key = { remove_diacritics = c.acute .. c.circ .. c.caron, from = {"ɛ", "gb", "mb", "mp", "nd", "ng", "nk", "ns", "nt", "ny", "nz", "ɔ"}, to = {"e" .. p[1], "g" .. p[1], "m" .. p[1], "m" .. p[2], "n" .. p[1], "n" .. p[2], "n" .. p[3], "n" .. p[4], "n" .. p[5], "n" .. p[6], "n" .. p[7], "o" .. p[1]} }, }

m["lo"] = { "Lao", 9211,	"tai-swe", "Laoo", translit = "lo-translit", sort_key = "Laoo-sortkey", standardChars = "0-9ກຂຄງຈຊຍດຕຖທນບປຜຝພຟມຢຣລວສຫອຮຯ-ໝ" .. c.punc, }

m["lt"] = { "Lithuanian", 9083,	"bat-eas", "Latn", ancestors = "olt", entry_name = {remove_diacritics = c.grave .. c.acute .. c.tilde}, sort_key = { from = {"ą", "č", "ę", "ė", "į", "y", "š", "ų", "ū", "ž"}, to = {"a" .. p[1], "c" .. p[1], "e" .. p[1], "e" .. p[2], "i" .. p[1], "i" .. p[2], "s" .. p[1], "u" .. p[1], "u" .. p[2], "z" .. p[1]} },	standardChars = "AaĄąBbCcČčDdEeĘęĖėFfGgHhIiĮįYyJjKkLlMmNnOoPpRrSsŠšTtUuŲųŪūVvZzŽž" .. c.punc, }

m["lu"] = { "Luba-Katanga", 36157,	"bnt-lub", "Latn", }

m["lv"] = { "Latvian", 9078,	"bat-eas", "Latn", entry_name = { -- This attempts to convert vowels with tone marks to vowels either with or without macrons. Specifically, there should be no macrons if the vowel is part of a diphthong (including resonant diphthongs such pìrksts -> pirksts not #pīrksts). What we do is first convert the vowel + tone mark to a vowel + tilde in a decomposed fashion, then remove the tilde in diphthongs, then convert the remaining vowel + tilde sequences to macroned vowels, then delete any other tilde. We leave already-macroned vowels alone: Both e.g. ar and ār occur before consonants. FIXME: This still might not be sufficient. from = {"([Ee])" .. c.cedilla, "[" .. c.grave .. c.circ .. c.tilde .."]", "([aAeEiIoOuU])" .. c.tilde .."?([lrnmuiLRNMUI])" .. c.tilde .. "?([^aAeEiIoOuU])", "([aAeEiIoOuU])" .. c.tilde .."?([lrnmuiLRNMUI])" .. c.tilde .."?$", "([iI])" .. c.tilde .. "?([eE])" .. c.tilde .. "?", "([aAeEiIuU])" .. c.tilde, c.tilde}, to = {"%1", c.tilde, "%1%2%3", "%1%2", "%1%2", "%1" .. c.macron} },	sort_key = { from = {"ā", "č", "ē", "ģ", "ī", "ķ", "ļ", "ņ", "š", "ū", "ž"}, to = {"a" .. p[1], "c" .. p[1], "e" .. p[1], "g" .. p[1], "i" .. p[1], "k" .. p[1], "l" .. p[1], "n" .. p[1], "s" .. p[1], "u" .. p[1], "z" .. p[1]} },	standardChars = "AaĀāBbCcČčDdEeĒēFfGgĢģHhIiĪīJjKkĶķLlĻļMmNnŅņOoPpRrSsŠšTtUuŪūVvZzŽž" .. c.punc, }

m["mg"] = { "Malagasy", 7930,	"poz-bre", "Latn", }

m["mh"] = { "Marshallese", 36280,	"poz-mic", "Latn", sort_key = { from = {"ā", "ļ", "m̧", "ņ", "n̄", "o̧", "ō", "ū"}, to = {"a" .. p[1], "l" .. p[1], "m" .. p[1], "n" .. p[1], "n" .. p[2], "o" .. p[1], "o" .. p[2], "u" .. p[1]} }, }

m["mi"] = { "Maori", 36451,	"poz-pep", "Latn", sort_key = { remove_diacritics = c.macron, from = {"ng", "wh"}, to = {"z" .. p[1], "z" .. p[2]} }, }

m["mk"] = { "Macedonian", 9296,	"zls", "Cyrl, Grek", ancestors = "cu", translit = {Cyrl = "mk-translit"}, entry_name = {Cyrl = { remove_diacritics = c.acute, remove_exceptions = {"Ѓ", "ѓ", "Ќ", "ќ"} }},	sort_key = {Cyrl = { remove_diacritics = c.grave, remove_exceptions = {"ѓ", "ќ"}, from = {"ѓ", "ѕ", "ј", "љ", "њ", "ќ", "џ"}, to = {"д" .. p[1], "з" .. p[1], "и" .. p[1], "л" .. p[1], "н" .. p[1], "т" .. p[1], "ч" .. p[1]} }},	standardChars = { Cyrl = "АаБбВвГгДдЃѓЕеЖжЗзЅѕИиЈјКкЛлЉљМмНнЊњОоПпРрСсТтЌќУуФфХхЦцЧчЏџШш", c.punc }, }

m["ml"] = { "Malayalam", 36236,	"dra-mal", "Mlym", translit = "ml-translit", override_translit = true, }

m["mn"] = { "Mongolian", 9246,	"xgn-cen", "Cyrl, Mong, Latn, Brai", ancestors = "cmg", translit = { Cyrl = "mn-translit", Mong = "Mong-translit", },	override_translit = true, display_text = {Mong = s["Mong-displaytext"]}, entry_name = { Cyrl = {remove_diacritics = c.grave .. c.acute}, Mong = s["Mong-entryname"], },	sort_key = { Cyrl = { remove_diacritics = c.grave, from = {"ё", "ө", "ү"}, to = {"е" .. p[1], "о" .. p[1], "у" .. p[1]} },	},	standardChars = { Cyrl = "АаБбВвГгДдЕеЁёЖжЗзИиЙйЛлМмНнОоӨөРрСсТтУуҮүХхЦцЧчШшЫыЬьЭэЮюЯя—", Brai = c.braille, c.punc }, }

-- "mo" IS TREATED AS "ro", SEE WT:LT

m["mr"] = { "Marathi", 1571,	"inc-sou", "Deva, Modi", ancestors = "omr", translit = { Deva = "mr-translit", Modi = "mr-Modi-translit", },	entry_name = { Deva = { from = {"च़", "ज़", "झ़"}, to = {"च", "ज", "झ"} },	}, }

m["ms"] = { "Malay", 9237,	"poz-mly", "Latn, ms-Arab", ancestors = "ms-cla", standardChars = { Latn = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz", c.punc }, }

m["mt"] = { "Maltese", 9166,	"sem-arb", "Latn", display_text = { from = {"'"}, to = {"’"} },	entry_name = { from = {"’"}, to = {"'"}, },	ancestors = "sqr", sort_key = { from = { "ċ", "ġ", "ż", -- Convert into PUA so that decomposed form does not get caught by the next step. "([cgz])", -- Ensure "c" comes after "ċ", "g" comes after "ġ" and "z" comes after "ż". "g" .. p[1] .. "ħ", -- "għ" after initial conversion of "g". p[3], p[4], "ħ", "ie", p[5] -- Convert "ċ", "ġ", "ħ", "ie", "ż" into final output. },		to = { p[3], p[4], p[5], "%1" .. p[1], "g" .. p[2], "c", "g", "h" .. p[1], "i" .. p[1], "z" }	}, }

m["my"] = { "Burmese", 9228,	"tbq-brm", "Mymr", ancestors = "obr", translit = "my-translit", override_translit = true, sort_key = { from = {"ျ", "ြ", "ွ", "ှ", "ဿ"}, to = {"္ယ", "္ရ", "္ဝ", "္ဟ", "သ္သ"} }, }

m["na"] = { "Nauruan", 13307,	"poz-mic", "Latn", }

m["nb"] = { "Norwegian Bokmål", 25167,	"gmq", "Latn", wikimedia_codes = "no", ancestors = "gmq-mno, da", -- da as an (but not the) ancestor of nb was agreed on - do not change without discussion sort_key = s["no-sortkey"], standardChars = s["no-standardchars"], }

m["nd"] = { "Northern Ndebele", 35613,	"bnt-ngu", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

m["ne"] = { "Nepali", 33823,	"inc-pah", "Deva, Newa", translit = {Deva = "ne-translit"}, }

m["ng"] = { "Ndonga", 33900,	"bnt-ova", "Latn", }

m["nl"] = { "Dutch", 7411,	"gmw-frk", "Latn, Brai", ancestors = "dum", sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.diaer .. c.ringabove .. c.cedilla .. "'"},	standardChars = { Latn = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz", Brai = c.braille, c.punc }, }

m["nn"] = { "Norwegian Nynorsk", 25164,	"gmq-wes", "Latn", ancestors = "gmq-mno", entry_name = { remove_diacritics = c.grave .. c.acute, },	sort_key = s["no-sortkey"], standardChars = s["no-standardchars"], }

m["no"] = { "Norwegian", 9043,	"gmq-wes", "Latn", ancestors = "gmq-mno", sort_key = s["no-sortkey"], standardChars = s["no-standardchars"], }

m["nr"] = { "Southern Ndebele", 36785,	"bnt-ngu", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

m["nv"] = { "Navajo", 13310,	"apa", "Latn", sort_key = { remove_diacritics = c.acute .. c.ogonek, from = { "chʼ", "tłʼ", "tsʼ", -- 3 chars "ch", "dl", "dz", "gh", "hw", "kʼ", "kw", "sh", "tł", "ts", "zh", -- 2 chars "ł", "ʼ" -- 1 char },		to = { "c" .. p[2], "t" .. p[2], "t" .. p[4], "c" .. p[1], "d" .. p[1], "d" .. p[2], "g" .. p[1], "h" .. p[1], "k" .. p[1], "k" .. p[2], "s" .. p[1], "t" .. p[1], "t" .. p[3], "z" .. p[1], "l" .. p[1], "z" .. p[2] }	}, }

m["ny"] = { "Chichewa", 33273,	"bnt-nys", "Latn", entry_name = {remove_diacritics = c.acute .. c.circ}, sort_key = { from = {"ng'"}, to = {"ng"} }, }

m["oc"] = { "Occitan", 14185,	"roa-ocr", "Latn, Hebr", ancestors = "pro", sort_key = { Latn = { remove_diacritics = c.grave .. c.acute .. c.diaer .. c.cedilla, from = {"([lns])·h"}, to = {"%1h"} },	}, }

m["oj"] = { "Ojibwe", 33875,	"alg", "Cans, Latn", sort_key = { Latn = { from = {"aa", "ʼ", "ii", "oo", "sh", "zh"}, to = {"a" .. p[1], "h" .. p[1], "i" .. p[1], "o" .. p[1], "s" .. p[1], "z" .. p[1]} },	}, }

m["om"] = { "Oromo", 33864,	"cus-eas", "Latn, Ethi", }

m["or"] = { "Odia", 33810,	"inc-eas", "Orya", ancestors = "inc-mor", translit = "or-translit", }

m["os"] = { "Ossetian", 33968,	"xsc", "Cyrl, Geor, Latn", ancestors = "oos", translit = { Cyrl = "os-translit", Geor = "Geor-translit", },	override_translit = true, display_text = { Cyrl = { from = {"æ"}, to = {"ӕ"} },		Latn = { from = {"ӕ"}, to = {"æ"} },	},	entry_name = { Cyrl = { remove_diacritics = c.grave .. c.acute, from = {"æ"}, to = {"ӕ"} },		Latn = { from = {"ӕ"}, to = {"æ"} },	},	sort_key = { Cyrl = { from = {"ӕ", "гъ", "дж", "дз", "ё", "къ", "пъ", "тъ", "хъ", "цъ", "чъ"}, to = {"а" .. p[1], "г" .. p[1], "д" .. p[1], "д" .. p[2], "е" .. p[1], "к" .. p[1], "п" .. p[1], "т" .. p[1], "х" .. p[1], "ц" .. p[1], "ч" .. p[1]} },	}, }

m["pa"] = { "Punjabi", 58635,	"inc-pan", "Guru, pa-Arab", ancestors = "inc-opa", translit = { Guru = "Guru-translit", ["pa-Arab"] = "pa-Arab-translit", },	entry_name = { ["pa-Arab"] = { remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna, from = {"ݨ", "ࣇ"}, to = {"ن", "ل"} },	}, }

m["pi"] = { "Pali", 36727,	"inc", "Latn, Brah, Deva, Beng, Sinh, Mymr, Thai, Lana, Laoo, Khmr, Cakm", ancestors = "sa", translit = { Brah = "Brah-translit", Deva = "sa-translit", Beng = "pi-translit", Sinh = "si-translit", Mymr = "pi-translit", Thai = "pi-translit", Lana = "pi-translit", Laoo = "pi-translit", Khmr = "pi-translit", Cakm = "Cakm-translit", },	entry_name = { Thai = { from = {"ึ", u(0xF700), u(0xF70F)}, -- FIXME: Not clear what's going on with the PUA characters here. to = {"ิํ", "ฐ", "ญ"} },		remove_diacritics = c.VS01 },	sort_key = { -- FIXME: This needs to be converted into the current standardized format. from = {"ā", "ī", "ū", "ḍ", "ḷ", "m[" .. c.dotabove .. c.dotbelow .. "]", "ṅ", "ñ", "ṇ", "ṭ", "([เโ])([ก-ฮ])", "([ເໂ])([ກ-ຮ])", "ᩔ", "ᩕ", "ᩖ", "ᩘ", "([ᨭ-ᨱ])ᩛ", "([ᨷ-ᨾ])ᩛ", "ᩤ", u(0xFE00), u(0x200D)}, to = {"a~", "i~", "u~", "d~", "l~", "m~", "n~", "n", "n", "t~", "%2%1", "%2%1", "ᩈ᩠ᩈ", "᩠ᩁ", "᩠ᩃ", "ᨦ᩠", "%1᩠ᨮ", "%1᩠ᨻ", "ᩣ"} }, }

m["pl"] = { "Polish", 809,	"zlw-lch", "Latn", ancestors = "zlw-mpl", sort_key = { from = {"ą", "ć", "ę", "ł", "ń", "ó", "ś", "ź", "ż"}, to = {"a" .. p[1], "c" .. p[1], "e" .. p[1], "l" .. p[1], "n" .. p[1], "o" .. p[1], "s" .. p[1], "z" .. p[1], "z" .. p[2]} },	standardChars = "AaĄąBbCcĆćDdEeĘęFfGgHhIiJjKkLlŁłMmNnŃńOoÓóPpRrSsŚśTtUuWwYyZzŹźŻż" .. c.punc, }

m["ps"] = { "Pashto", 58680,	"ira-pat", "ps-Arab", entry_name = {remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.superalef}, }

m["pt"] = { "Portuguese", 5146,	"roa-ibe", "Latn, Brai", ancestors = "roa-opt", sort_key = { Latn = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.diaer .. c.cedilla, from = {"ª", "æ", "º", "œ"}, to = {"a", "ae", "o", "oe"} },	},	standardChars = { Latn = "AaÁáÂâÃãBbCcÇçDdEeÉéÊêFfGgHhIiÍíJjLlMmNnOoÓóÔôÕõPpQqRrSsTtUuÚúVvXxZz", Brai = c.braille, c.punc }, }

m["qu"] = { "Quechua", 5218,	"qwe", "Latn", }

m["rm"] = { "Romansch", 13199,	"roa-rhe", "Latn", sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.diaer .. c.small_e}, }

m["ro"] = { "Romanian", 7913,	"roa-eas", "Latn, Cyrl, Cyrs", translit = {Cyrl = "ro-translit"}, sort_key = { Latn = { remove_diacritics = c.grave .. c.acute, from = {"ă", "â", "î", "ș", "ț"}, to = {"a" .. p[1], "a" .. p[2], "i" .. p[1], "s" .. p[1], "t" .. p[1]} },		Cyrl = { from = {"ӂ"}, to = {"ж" .. p[1]} },	},	standardChars = { Latn = "AaĂăÂâBbCcDdEeFfGgHhIiÎîJjLlMmNnOoPpRrSsȘșTtȚțUuVvXxZz", Cyrl = "АаБбВвГгДдЕеЖжӁӂЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЫыЬьЭэЮюЯя", c.punc }, }

m["ru"] = { "Russian", 7737,	"zle", "Cyrl, Brai", ancestors = "zle-mru", translit = {Cyrl = "ru-translit"}, display_text = { from = {"'"}, to = {"’"} },	entry_name = { remove_diacritics = c.grave .. c.acute .. c.diaer, remove_exceptions = {"Ё", "ё", "Ѣ̈", "ѣ̈", "Я̈", "я̈"}, from = {"’"}, to = {"'"}, },	sort_key = { remove_diacritics = c.grave .. c.acute .. c.diaer, remove_exceptions = {"ё", "ѣ̈", "я̈"}, from = { "ё", "ѣ̈", "я̈", -- 2 chars "і", "ѣ", "ѳ", "ѵ" -- 1 char },		to = { "е" .. p[1], "ь" .. p[2], "я" .. p[1], "и" .. p[1], "ь" .. p[1], "я" .. p[2], "я" .. p[3] }	},	standardChars = { Cyrl = "АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя—", Brai = c.braille, (c.punc:gsub("'", "")) -- Exclude apostrophe. }, }

m["rw"] = { "Rwanda-Rundi", 3217514,	"bnt-glb", "Latn", entry_name = {remove_diacritics = c.acute .. c.circ .. c.macron .. c.caron}, }

m["sa"] = { "Sanskrit", 11059,	"inc", "as-Beng, Bali, Beng, Bhks, Brah, Mymr, xwo-Mong, Deva, Gujr, Guru, Gran, Hani, Java, Kthi, Knda, Kawi, Khar, Khmr, Laoo, Mlym, mnc-Mong, Marc, Modi, Mong, Nand, Newa, Orya, Phag, Ranj, Saur, Shrd, Sidd, Sinh, Soyo, Lana, Takr, Taml, Tang, Telu, Thai, Tibt, Tutg, Tirh, Zanb", --script codes sorted by canonical name rather than code for MOD:sa-convert translit = { Beng = "sa-Beng-translit", ["as-Beng"] = "sa-Beng-translit", Brah = "Brah-translit", Deva = "sa-translit", Gujr = "sa-Gujr-translit", Java = "sa-Java-translit", Khmr = "pi-translit", Knda = "sa-Knda-translit", Lana = "pi-translit", Laoo = "pi-translit", Mlym = "sa-Mlym-translit", Modi = "sa-Modi-translit", Mong = "Mong-translit", ["mnc-Mong"] = "mnc-translit", ["xwo-Mong"] = "xal-translit", Mymr = "pi-translit", Orya = "sa-Orya-translit", Sinh = "si-translit", Taml = "sa-Taml-translit", Telu = "sa-Telu-translit", Thai = "pi-translit", Tibt = "Tibt-translit", },	display_text = { Mong = s["Mong-displaytext"], Tibt = s["Tibt-displaytext"], },	entry_name = { Mong = s["Mong-entryname"], Tibt = s["Tibt-entryname"], Thai = { from = {"ึ", u(0xF700), u(0xF70F)}, -- FIXME: Not clear what's going on with the PUA characters here. to = {"ิํ", "ฐ", "ญ"} },		remove_diacritics = c.VS01 },	sort_key = { Tibt = "Tibt-sortkey", { -- FIXME: This needs to be converted into the current standardized format. from = {"ā", "ī", "ū", "ḍ", "ḷ", "ḹ", "m[" .. c.dotabove .. c.dotbelow .. "]", "ṅ", "ñ", "ṇ", "ṛ", "ṝ", "ś", "ṣ", "ṭ", "([เโไ])([ก-ฮ])", "([ເໂໄ])([ກ-ຮ])", "ᩔ", "ᩕ", "ᩖ", "ᩘ", "([ᨭ-ᨱ])ᩛ", "([ᨷ-ᨾ])ᩛ", "ᩤ", u(0xFE00), u(0x200D)}, to = {"a~", "i~", "u~", "d~", "l~", "l", "m~", "n~", "n", "n", "r~", "r", "s~", "s", "t~", "%2%1", "%2%1", "ᩈ᩠ᩈ", "᩠ᩁ", "᩠ᩃ", "ᨦ᩠", "%1᩠ᨮ", "%1᩠ᨻ", "ᩣ"}, },	}, }

m["sc"] = { "Sardinian", 33976,	"roa", "Latn", }

m["sd"] = { "Sindhi", 33997,	"inc-snd", "sd-Arab, Deva, Sind, Khoj", translit = {Sind = "Sind-translit"}, entry_name = { ["sd-Arab"] = { remove_diacritics = c.kashida .. c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.superalef, from = {"ٱ"}, to = {"ا"} },	}, }

m["se"] = { "Northern Sami", 33947,	"smi", "Latn", display_text = { from = {"'"}, to = {"ˈ"} },	entry_name = {remove_diacritics = c.macron .. c.dotbelow .. "'ˈ"}, sort_key = { from = {"á", "č", "đ", "ŋ", "š", "ŧ", "ž"}, to = {"a" .. p[1], "c" .. p[1], "d" .. p[1], "n" .. p[1], "s" .. p[1], "t" .. p[1], "z" .. p[1]} },	standardChars = "AaÁáBbCcČčDdĐđEeFfGgHhIiJjKkLlMmNnŊŋOoPpRrSsŠšTtŦŧUuVvZzŽž" .. c.punc, }

m["sg"] = { "Sango", 33954,	"crp", "Latn", ancestors = "ngb", }

m["sh"] = { "Serbo-Croatian", 9301,	"zls", "Latn, Cyrl, Glag", ietf_subtag = "hbs", -- ISO 639-3 code, since "sh" is deprecated from ISO 639-1 wikimedia_codes = "sh, bs, hr, sr", entry_name = { Latn = { remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve, remove_exceptions = {"Ć", "ć", "Ś", "ś", "Ź", "ź"} },		Cyrl = { remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve, remove_exceptions = {"З́", "з́", "С́", "с́"} },	},	sort_key = { Latn = { remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve, remove_exceptions = {"ć", "ś", "ź"}, from = {"č", "ć", "dž", "đ", "lj", "nj", "š", "ś", "ž", "ź"}, to = {"c" .. p[1], "c" .. p[2], "d" .. p[1], "d" .. p[2], "l" .. p[1], "n" .. p[1], "s" .. p[1], "s" .. p[2], "z" .. p[1], "z" .. p[2]} },		Cyrl = { remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve, remove_exceptions = {"з́", "с́"}, from = {"ђ", "з́", "ј", "љ", "њ", "с́", "ћ", "џ"}, to = {"д" .. p[1], "з" .. p[1], "и" .. p[1], "л" .. p[1], "н" .. p[1], "с" .. p[1], "т" .. p[1], "ч" .. p[1]} },	},	standardChars = { Latn = "AaBbCcČčĆćDdĐđEeFfGgHhIiJjKkLlMmNnOoPpRrSsŠšTtUuVvZzŽž", Cyrl = "АаБбВвГгДдЂђЕеЖжЗзИиЈјКкЛлЉљМмНнЊњОоПпРрСсТтЋћУуФфХхЦцЧчЏџШш", c.punc }, }

m["si"] = { "Sinhalese", 13267,	"inc-ins", "Sinh", translit = "si-translit", override_translit = true, }

m["sk"] = { "Slovak", 9058,	"zlw", "Latn", ancestors = "zlw-osk", sort_key = {remove_diacritics = c.acute .. c.circ .. c.diaer .. c.caron}, standardChars = "AaÁáÄäBbCcČčDdĎďEeFfGgHhIiÍíJjKkLlĹĺĽľMmNnŇňOoÔôPpRrŔŕSsŠšTtŤťUuÚúVvYyÝýZzŽž" .. c.punc, }

m["sl"] = { "Slovene", 9063,	"zls", "Latn", entry_name = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.dgrave .. c.invbreve .. c.dotbelow, remove_exceptions = {"Ć", "ć", "Ǵ", "ǵ", "Ś", "ś", "Ź", "ź"}, from = {"Ə", "ə", "Ł", "ł"}, to = {"E", "e", "L", "l"}, },	sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.dotabove .. c.ringabove .. c.dgrave .. c.invbreve .. c.dotbelow .. c.ringbelow .. c.ogonek, remove_exceptions = {"ć", "ǵ", "ś", "ź"}, from = {"ä", "č", "ć", "đ", "ə", "ë", "ǧ", "ǵ", "ï", "ł", "ö", "š", "ś", "ü", "ž", "ź"}, to = {"a" .. p[1], "c" .. p[1], "c" .. p[2], "d" .. p[1], "e", "e" .. p[1], "g" .. p[1], "g" .. p[2], "i" .. p[1], "l", "o" .. p[1], "s" .. p[1], "s" .. p[2], "u" .. p[1], "z" .. p[1], "z" .. p[2]}, },	standardChars = "AaBbCcČčDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsŠšTtUuVvZzŽž" .. c.punc, }

m["sm"] = { "Samoan", 34011,	"poz-pnp", "Latn", }

m["sn"] = { "Shona", 34004,	"bnt-sho", "Latn", entry_name = {remove_diacritics = c.acute}, }

m["so"] = { "Somali", 13275,	"cus-som", "Latn, Arab, Osma", entry_name = {Latn = {remove_diacritics = c.grave .. c.acute .. c.circ}}, }

m["sq"] = { "Albanian", 8748,	"sqj", "Latn, Grek, ota-Arab, Elba, Todr, Vith", translit = {Elba = "Elba-translit"}, entry_name = {Latn = { remove_diacritics = c.acute, from = {'^i (%w)', '^të (%w)'}, to = {'%1', '%1'}, }},	sort_key = {Latn = { remove_diacritics = c.acute .. c.circ .. c.tilde .. c.breve .. c.caron, from = {'ç', 'dh', 'ë', 'gj', 'll', 'nj', 'rr', 'sh', 'th', 'xh', 'zh'}, to = {'c'..p[1], 'd'..p[1], 'e'..p[1], 'g'..p[1], 'l'..p[1], 'n'..p[1], 'r'..p[1], 's'..p[1], 't'..p[1], 'x'..p[1], 'z'..p[1]}, }},	standardChars = { Latn = "AaBbCcÇçDdEeËëFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvXxYyZz", c.punc }, }

m["ss"] = { "Swazi", 34014,	"bnt-ngu", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

m["st"] = { "Sotho", 34340,	"bnt-sts", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

m["su"] = { "Sundanese", 34002,	"poz-msa", "Latn, Sund", ancestors = "osn", translit = {Sund = "su-translit"}, }

m["sv"] = { "Swedish", 9027,	"gmq-eas", "Latn", ancestors = "gmq-osw-lat", sort_key = { remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron .. c.dacute .. c.caron .. c.cedilla .. "':",		remove_exceptions = {"å"}, from = {"ø", "æ", "œ", "ß", "å", "aͤ", "oͤ"}, to = {"o", "ae", "oe", "ss", "z" .. p[1], "ä", "ö"} },	standardChars = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvXxYyÅåÄäÖö" .. c.punc, }

m["sw"] = { "Swahili", 7838,	"bnt-swh", "Latn, Arab", sort_key = { Latn = { from = {"ng'"}, to = {"ng" .. p[1]} },	}, }

m["ta"] = { "Tamil", 5885,	"dra-tam", "Taml", ancestors = "ta-mid", translit = "ta-translit", override_translit = true, }

m["te"] = { "Telugu", 8097,	"dra-tel", "Telu", translit = "te-translit", override_translit = true, }

m["tg"] = { "Tajik", 9260,	"ira-swi", "Cyrl, fa-Arab, Latn", ancestors = "fa-cls", translit = {Cyrl = "tg-translit"}, override_translit = true, entry_name = {remove_diacritics = c.grave .. c.acute}, sort_key = { Cyrl = { from = {"ғ", "ё", "ӣ", "қ", "ӯ", "ҳ", "ҷ"}, to = {"г" .. p[1], "е" .. p[1], "и" .. p[1], "к" .. p[1], "у" .. p[1], "х" .. p[1], "ч" .. p[1]} },	}, }

m["th"] = { "Thai", 9217,	"tai-swe", "Thai, Brai", translit = {Thai = "th-translit"}, sort_key = {Thai = "Thai-sortkey"}, }

m["ti"] = { "Tigrinya", 34124,	"sem-eth", "Ethi", translit = "Ethi-translit", }

m["tk"] = { "Turkmen", 9267,	"trk-ogz", "Latn, Cyrl, Arab", entry_name = {remove_diacritics = c.macron}, sort_key = { Latn = { from = {"ç", "ä", "ž", "ň", "ö", "ş", "ü", "ý"}, to = {"c" .. p[1], "e" .. p[1], "j" .. p[1], "n" .. p[1], "o" .. p[1], "s" .. p[1], "u" .. p[1], "y" .. p[1]} },		Cyrl = { from = {"ё", "җ", "ң", "ө", "ү", "ә"}, to = {"е" .. p[1], "ж" .. p[1], "н" .. p[1], "о" .. p[1], "у" .. p[1], "э" .. p[1]} },	}, }

m["tl"] = { "Tagalog", 34057,	"phi", "Latn, Tglg", translit = {Tglg = "tl-translit"}, override_translit = true, entry_name = {Latn = {remove_diacritics = c.grave .. c.acute .. c.circ}}, standardChars = { Latn = "AaBbKkDdEeGgHhIiLlMmNnOoPpRrSsTtUuWwYy", c.punc },	sort_key = { Latn = "tl-sortkey", }, }

m["tn"] = { "Tswana", 34137,	"bnt-sts", "Latn", }

m["to"] = { "Tongan", 34094,	"poz-ton", "Latn", entry_name = {remove_diacritics = c.acute}, sort_key = {remove_diacritics = c.macron}, }

m["tr"] = { "Turkish", 256,	"trk-ogz", "Latn", ancestors = "ota", dotted_dotless_i = true, sort_key = { from = { -- Ignore circumflex, but account for capital Î wrongly becoming ı + circ due to dotted dotless I logic. "ı" .. c.circ, c.circ, "i", -- Ensure "i" comes after "ı". "ç", "ğ", "ı", "ö", "ş", "ü" },		to = { "i", "", "i" .. p[1], "c" .. p[1], "g" .. p[1], "i", "o" .. p[1], "s" .. p[1], "u" .. p[1] }	},	standardChars = "AaÂâBbCcÇçDdEeFfGgĞğHhIıİiÎîJjKkLlMmNnOoÖöPpRrSsŞşTtUuÛûÜüVvYyZz" .. c.punc, }

m["ts"] = { "Tsonga", 34327,	"bnt-tsr", "Latn", }

m["tt"] = { "Tatar", 25285,	"trk-kbu", "Cyrl, Latn, tt-Arab", translit = {Cyrl = "tt-translit"}, override_translit = true, dotted_dotless_i = true, sort_key = { Cyrl = { from = {"ә", "ў", "ғ", "ё", "җ", "қ", "ң", "ө", "ү", "һ"}, to = {"а" .. p[1], "в" .. p[1], "г" .. p[1], "е" .. p[1], "ж" .. p[1], "к" .. p[1], "н" .. p[1], "о" .. p[1], "у" .. p[1], "х" .. p[1]} },		Latn = { from = { "i", -- Ensure "i" comes after "ı". "ä", "ə", "ç", "ğ", "ı", "ñ", "ŋ", "ö", "ɵ", "ş", "ü" },			to = { "i" .. p[1], "a" .. p[1], "a" .. p[2], "c" .. p[1], "g" .. p[1], "i", "n" .. p[1], "n" .. p[2], "o" .. p[1], "o" .. p[2], "s" .. p[1], "u" .. p[1] }		},	}, }

-- "tw" IS TREATED AS "ak", SEE WT:LT

m["ty"] = { "Tahitian", 34128,	"poz-pep", "Latn", }

m["ug"] = { "Uyghur", 13263,	"trk-kar", "ug-Arab, Latn, Cyrl", ancestors = "chg", translit = { ["ug-Arab"] = "ug-translit", Cyrl = "ug-translit", },	override_translit = true, }

m["uk"] = { "Ukrainian", 8798,	"zle", "Cyrl", ancestors = "zle-ouk", translit = "uk-translit", entry_name = {remove_diacritics = c.grave .. c.acute}, sort_key = { remove_diacritics = c.grave .. c.acute, from = { "ї", -- 2 chars "ґ", "є", "і" -- 1 char },		to = { "и" .. p[2], "г" .. p[1], "е" .. p[1], "и" .. p[1] }	},	standardChars = "АаБбВвГгДдЕеЄєЖжЗзИиІіЇїЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЬьЮюЯя" .. c.punc:gsub("'", ""), -- Exclude apostrophe. }

m["ur"] = { "Urdu", 1617,	"inc-hnd", "ur-Arab,Hebr", translit = {["ur-Arab"] = "ur-translit"}, entry_name = { -- character "ۂ" code U+06C2 to "ه" and "هٔ" (U+0647 + U+0654) to "ه"; hamzatu l-waṣli to a regular alif from = {"هٔ", "ۂ", "ٱ"}, to = {"ہ", "ہ", "ا"}, remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna .. c.superalef },	-- put Judeo-Urdu (Hebrew-script Urdu) under the category header -- U+FB21 HEBREW LETTER WIDE ALEF so that it sorts after Arabic script titles sort_key = { from = {"^%f[" .. u(0x5D0) .. "-" .. u(0x5EA) .. "]"},		to = {u(0xFB21)}, }, }

m["uz"] = { "Uzbek", 9264,	"trk-kar", "Latn, Cyrl, fa-Arab", ancestors = "chg", translit = {Cyrl = "uz-translit"}, sort_key = { Latn = { from = {"oʻ", "gʻ", "sh", "ch", "ng"}, to = {"z" .. p[1], "z" .. p[2], "z" .. p[3], "z" .. p[4], "z" .. p[5]} },		Cyrl = { from = {"ё", "ў", "қ", "ғ", "ҳ"}, to = {"е" .. p[1], "я" .. p[1], "я" .. p[2], "я" .. p[3], "я" .. p[4]} },	}, }

m["ve"] = { "Venda", 32704,	"bnt-bso", "Latn", }

m["vi"] = { "Vietnamese", 9199,	"mkh-vie", "Latn, Hani", ancestors = "mkh-mvi", sort_key = { Latn = "vi-sortkey", Hani = "Hani-sortkey", }, }

m["vo"] = { "Volapük", 36986,	"art", "Latn", }

m["wa"] = { "Walloon", 34219,	"roa-oil", "Latn", sort_key = s["roa-oil-sortkey"], }

m["wo"] = { "Wolof", 34257,	"alv-fwo", "Latn, Arab, Gara", }

m["xh"] = { "Xhosa", 13218,	"bnt-ngu", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

m["yi"] = { "Yiddish", 8641,	"gmw-hgm", "Hebr", ancestors = "gmh", translit = "yi-translit", sort_key = { from = {"א[ַָ]", "בּ", "ו[ֹּ]", "יִ", "ײַ", "פֿ"}, to = {"א", "ב", "ו", "י", "יי", "פ"} }, }

m["yo"] = { "Yoruba", 34311,	"alv-yor", "Latn, Arab", entry_name = {Latn = {remove_diacritics = c.grave .. c.acute .. c.macron}}, sort_key = { Latn = { from = {"ẹ", "ɛ", "gb", "ị", "kp", "ọ", "ɔ", "ṣ", "sh", "ụ"}, to = {"e" .. p[1], "e" .. p[1], "g" .. p[1], "i" .. p[1], "k" .. p[1], "o" .. p[1], "o" .. p[1], "s" .. p[1], "s" .. p[1], "u" .. p[1]} },	}, }

m["za"] = { "Zhuang", 13216,	"tai", "Latn, Hani", sort_key = { Latn = "za-sortkey", Hani = "Hani-sortkey", }, }

m["zh"] = { "Chinese", 7850,	"zhx", "Hants, Latn, Bopo, Nshu, Brai", ancestors = "ltc", generate_forms = "zh-generateforms", translit = { Hani = "zh-translit", Bopo = "zh-translit", },	sort_key = {Hani = "Hani-sortkey"}, }

m["zu"] = { "Zulu", 10179,	"bnt-ngu", "Latn", entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.macron .. c.caron}, }

return m_lang.finalizeLanguageData(m_lang.addDefaultTypes(m, true))

title: Module:languages/data/2


text:
Elfebeeküst

Etymology
lit. 'ivory coast'.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Elfebeeküst


text:
Module:languages/data/all/documentation

This module combines data from the language data modules into a single table. It should only be used in Lua modules that need to look at the data for all languages, such as List of languages. It should not be used in entries, because its memory footprint is huge.

See Grease pit/2013/November.

title: Module:languages/data/all/documentation


text:
Module:languages/data/3/a

local m_lang = require("Module:languages") local m_langdata = require("Module:languages/data")

local u = require("Module:string utilities").char

local c = m_langdata.chars local p = m_langdata.puaChars local s = m_langdata.shared

local m = {}

m["aaa"] = { "Ghotuo", 35463,	"alv-yek", "Latn", }

m["aab"] = { "Alumu-Tesu", 35034,	"nic-alu", "Latn", }

m["aac"] = { "Ari", 1811224,	"paa-pag", "Latn", }

m["aad"] = { "Amal", 56708,	"paa-iwm", "Latn", }

-- "aae" IS TREATED AS "sq", SEE WT:LT

m["aaf"] = { "Aranadan", 3507928,	"dra-mal", "Mlym", }

m["aag"] = { "Ambrak", 4741706,	"qfa-tor", "Latn", }

m["aah"] = { "Abu' Arapesh", 4670715,	"qfa-tor", "Latn", }

m["aai"] = { "Arifama-Miniafia", 4790560,	"poz-ocw", "Latn", }

m["aak"] = { "Ankave", 3446690,	"ngf", "Latn", }

m["aal"] = { "Afade", 56434,	"cdc-cbm", "Latn", }

m["aan"] = { "Anambé", 3507873,	"tup-gua", "Latn", }

m["aap"] = { "Pará Arára", 56807,	"sai-pek", "Latn", }

m["aaq"] = { "Penobscot", 3515185,	"alg-abp", "Latn", }

m["aas"] = { "Aasax", 56620,	"cus-sou", "Latn", }

-- "aat" IS TREATED AS "sq", SEE WT:LT

m["aau"] = { "Abau", 3073568,	"paa-spk", "Latn", }

m["aaw"] = { "Solong", 7558834,	"poz-ocw", "Latn", }

m["aax"] = { "Mandobo Atas", 12636156,	"ngf", "Latn", }

m["aaz"] = { "Amarasi", 4740192,	"poz-tim", "Latn", }

m["aba"] = { "Abé", 34833,	"alv-lag", "Latn", }

m["abb"] = { "Bankon", 34860,	"bnt-bsa", "Latn", }

m["abc"] = { "Ambala Ayta", 3448896,	"phi", "Latn", }

m["abd"] = { "Camarines Norte Agta", 3399682,	"phi", "Latn", }

m["abe"] = { "Abenaki", 17502788,	"alg-abp", "Latn", }

m["abf"] = { "Abai Sungai", 4663287,	"poz-san", "Latn", }

m["abg"] = { "Abaga", 3507954,	"paa-kag", "Latn", }

m["abh"] = { "Tajiki Arabic", 56833,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["abi"] = { "Abidji", 34781,	"alv-lag", "Latn", }

m["abj"] = { "Aka-Bea", 2356391,	"qfa-ads", "Latn", }

m["abl"] = { "Abung", 49215,	"poz-lgx", "Latn", }

m["abm"] = { "Abanyom", 7502,	"nic-eko", "Latn", }

m["abn"] = { "Abua", 34835,	"nic-cde", "Latn", }

m["abo"] = { "Abon", 35121,	"nic-tvn", "Latn", }

m["abp"] = { "Abenlen Ayta", 3436621,	"phi", "Latn", }

m["abq"] = { "Abaza", 27567,	"cau-abz", "Cyrl, Latn", translit = {Cyrl = "abq-translit"}, override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = { Cyrl = s["cau-Cyrl-entryname"], Latn = s["cau-Latn-entryname"], },	sort_key = { Cyrl = { from = { "гъв", "гъь", "гӏв", "джв", "джь", "къв", "къь", "кӏв", "кӏь", "хъв", "хӏв", "чӏв", -- 3 chars "гв", "гъ", "гь", "гӏ", "дж", "дз", "ё", "жв", "жь", "кв", "къ", "кь", "кӏ", "ль", "лӏ", "пӏ", "тл", "тш", "тӏ", "фӏ", "хв", "хъ", "хь", "хӏ", "цӏ", "чв", "чӏ", "шв", "шӏ" -- 2 chars },			to = { "г" .. p[3], "г" .. p[4], "г" .. p[7], "д" .. p[2], "д" .. p[3], "к" .. p[3], "к" .. p[4], "к" .. p[7], "к" .. p[8], "х" .. p[3], "х" .. p[6], "ч" .. p[3], "г" .. p[1], "г" .. p[2], "г" .. p[5], "г" .. p[6], "д" .. p[1], "д" .. p[4], "е" .. p[1], "ж" .. p[1], "ж" .. p[2], "к" .. p[1], "к" .. p[2], "к" .. p[5], "к" .. p[6], "л" .. p[1], "л" .. p[2], "п" .. p[1], "т" .. p[1], "т" .. p[2], "т" .. p[3], "ф" .. p[1], "х" .. p[1], "х" .. p[2], "х" .. p[4], "х" .. p[5], "ц" .. p[1], "ч" .. p[1], "ч" .. p[2], "ш" .. p[1], "ш" .. p[2] }		},	}, }

m["abr"] = { "Abron", 34831,	"alv-ctn", "Latn", ancestors = "ak", }

m["abs"] = { "Ambonese Malay", 3124354,	"crp", "Latn", ancestors = "ms", }

m["abt"] = { "Ambulas", 3508015,	"paa-spk", "Latn", }

m["abu"] = { "Abure", 34767,	"alv-ptn", "Latn", }

m["abv"] = { "Baharna Arabic", 56576,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["abw"] = { "Pal", 7126121,	"ngf-mad", "Latn", }

m["abx"] = { "Inabaknon", 2820163,	"poz-sbj", "Latn", }

m["aby"] = { "Aneme Wake", 3508107,	"ngf", "Latn", }

m["abz"] = { "Abui", 2822110,	"qfa-tap", "Latn", }

m["aca"] = { "Achagua", 2822982,	"awd", "Latn", }

m["acb"] = { "Áncá", 11130787,	"nic-mom", "Latn", }

m["acd"] = { "Gikyode", 35256,	"alv-gng", "Latn", }

m["ace"] = { "Acehnese", 27683,	"cmc", "Latn, ms-Arab", standardChars = { Latn = "AaBbCcDdEeÉéÈèËëFfGgHhIiJjKkLlMmNnOoÔôÖöPpQqRrSsTtUuVvWwXxYyZz", -- current orthography (not yet add Arab) c.punc }, }

m["ach"] = { "Acholi", 34926,	"sdv-los", "Latn", }

m["aci"] = { "Aka-Cari", 2670418,	"qfa-adn", "Latn", }

m["ack"] = { "Aka-Kora", 3433680,	"qfa-adn", "Latn", }

m["acl"] = { "Akar-Bale", 3436825,	"qfa-ads", "Latn", }

m["acm"] = { "Iraqi Arabic", 56232,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["acn"] = { "Achang", 56582,	"tbq-brm", "Latn", }

m["acp"] = { "Eastern Acipa", 5329945,	"nic-kmk", "Latn", }

m["acr"] = { "Achi", 34774,	"myn", "Latn", }

m["acs"] = { "Acroá", 2829146,	"sai-cje", "Latn", }

m["acu"] = { "Achuar", 2823170,	"sai-jiv", "Latn", }

m["acv"] = { "Achumawi", 56661,	"nai-pal", "Latn", }

m["acw"] = { "Hijazi Arabic", 56608,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["acx"] = { "Omani Arabic", 56630,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["acy"] = { "Cypriot Arabic", 56416,	"sem-arb", "Latn,Grek", ancestors = "acm", standardChars = { Latn = "AaBbCcDdΔδEeFfGgĠġĊċIiJjKkLlMmNnOoPpΘθRrSsTtUuVvWwXxYyZzŞş", c.punc },	entry_name = {remove_diacritics = c.grave .. c.acute .. c.breve}, }

m["acz"] = { "Acheron", 34769,	"alv-tal", "Latn", }

m["ada"] = { "Adangme", 35141,	"alv-gda", "Latn", }

m["adb"] = { -- rename or remove, see RFM "Adabe", 36872,	nil, "Latn", }

m["add"] = { "Dzodinka", 35266,	"nic-nka", "Latn", }

m["ade"] = { "Adele", 27740,	"alv-ntg", "Latn", }

m["adf"] = { "Dhofari Arabic", 56565,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["adg"] = { "Andegerebinha", 3508123,	"aus-pam", "Latn", }

m["adh"] = { "Adhola", 1971400,	"sdv-los", "Latn", }

m["adi"] = { "Adi", 56440,	"sit-tan", "Latn", }

m["adj"] = { "Adioukrou", 34738,	"alv-lag", "Latn", }

m["adl"] = { "Galo", 2857892,	"sit-tan", "Latn", }

m["adn"] = { "Adang", 3398276,	"qfa-tap", "Latn", }

m["ado"] = { "Abu", 56659,	"paa-ram", "Latn", }

m["adp"] = { "Adap", 3512402,	"sit-tib", "Tibt", ancestors = "dz", translit = "Tibt-translit", override_translit = true, display_text = s["Tibt-displaytext"], entry_name = s["Tibt-entryname"], sort_key = "Tibt-sortkey", wikipedia_article = "Dzongkha",		-- Considered a dialect of Dzongkha }

m["adq"] = { "Adangbe", 34730,	"alv-gda", "Latn", ancestors = "ada", }

m["adr"] = { "Adonara", 4684505,	"poz-cet", "Latn", }

m["ads"] = { "Adamorobe Sign Language", 27709,	"sgn", "Latn", -- when documented }

m["adt"] = { "Adnyamathanha", 2225391,	"aus-psw", "Latn", }

m["adu"] = { "Aduge", 34734,	"alv-nwd", "Latn", ancestors = "opa", wikipedia_article = "Okpamheri language", }

m["adw"] = { "Amondawa", 12626847,	"tup-gua", "Latn", }

m["ady"] = { "Adyghe", 27776,	"cau-cir", "Cyrl, Latn, Arab", translit = { Cyrl = "cau-cir-translit", Arab = "ar-translit", },	override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = { Cyrl = s["cau-Cyrl-entryname"], Latn = s["cau-Latn-entryname"], },	sort_key = { Cyrl = { from = { "кхъу", "къӏу", -- 4 chars "гъу", "джу", "дзу", "жъу", "къу", "кхъ", "къӏ", "кӏу", "кӏь", "лъу", "лӏу", "пӏу", "сӏу", "тӏу", "фӏу", "хъу", "цӏу", "чъу", "чӏу", "шъу", "шӏу", "щӏу", -- 3 chars "гу", "гъ", "гь", "дж", "дз", "ё", "жъ", "жь", "ку", "къ", "кь", "кӏ", "лъ", "ль", "лӏ", "пӏ", "сӏ", "тӏ", "фӏ", "ху", "хъ", "хь", "цу", "цӏ", "чу", "чъ", "чӏ", "шъ", "шӏ", "щӏ", "ӏу", "ӏь" -- 2 chars },			to = { "к" .. p[5], "к" .. p[7], "г" .. p[3], "д" .. p[2], "д" .. p[4], "ж" .. p[2], "к" .. p[3], "к" .. p[4], "к" .. p[6], "к" .. p[10], "к" .. p[11], "л" .. p[2], "л" .. p[5], "п" .. p[2], "с" .. p[2], "т" .. p[2], "ф" .. p[2], "х" .. p[3], "ц" .. p[3], "ч" .. p[3], "ч" .. p[5], "ш" .. p[2], "ш" .. p[4], "щ" .. p[2], "г" .. p[1], "г" .. p[2], "г" .. p[4], "д" .. p[1], "д" .. p[3], "е" .. p[1], "ж" .. p[1], "ж" .. p[3], "к" .. p[1], "к" .. p[2], "к" .. p[8], "к" .. p[9], "л" .. p[1], "л" .. p[3], "л" .. p[4], "п" .. p[1], "с" .. p[1], "т" .. p[1], "ф" .. p[1], "х" .. p[1], "х" .. p[2], "х" .. p[4], "ц" .. p[1], "ц" .. p[2], "ч" .. p[1], "ч" .. p[2], "ч" .. p[4], "ш" .. p[1], "ш" .. p[3], "щ" .. p[1], "ӏ" .. p[1], "ӏ" .. p[2] }		},	}, }

m["adz"] = { "Adzera", nil, "poz-ocw", "Latn", }

m["aea"] = { "Areba", 3509129,	"aus-pam", "Latn", }

m["aeb"] = { "Tunisian Arabic", 56240,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["aed"] = { "Argentine Sign Language", 3322073,	"sgn", "Latn", -- when documented }

m["aee"] = { "Northeast Pashayi", 12642198,	"inc-pas", "fa-Arab, Latn", }

m["aek"] = { "Haeke", 5638166,	"poz-cln", "Latn", }

m["ael"] = { "Ambele", 34818,	"nic-grf", "Latn", }

m["aem"] = { "Arem", 3507920,	"mkh-vie", "Latn", }

m["aen"] = { "Armenian Sign Language", 3446604,	"sgn", }

m["aeq"] = { "Aer", 3246741,	"inc-wes", "Arab", }

m["aer"] = { "Eastern Arrernte", 10728232,	"aus-pam", "Latn", }

m["aes"] = { "Alsea", 2395641,	nil, "Latn", }

m["aeu"] = { "Akeu", 4700657,	"tbq-sil", "Latn", }

m["aew"] = { "Ambakich", 56642,	"paa-ram", "Latn", }

m["aey"] = { "Amele", 3508025,	"ngf-mad", "Latn", }

m["aez"] = { "Aeka", 16110528,	"ngf", "Latn", wikipedia_article = "Orokaiva language", -- subvariety? }

m["afb"] = { "Gulf Arabic", 56385,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["afd"] = { "Andai", 4753480,	"paa-arf", "Latn", }

m["afe"] = { "Putukwam", 3914930,	"nic-ben", "Latn", }

m["afg"] = { "Afghan Sign Language", 4689093,	"sgn", }

m["afh"] = { "Afrihili", 384707,	"art", "Latn", type = "appendix-constructed", }

m["afi"] = { "Akrukay", 57003,	"paa-ram", "Latn", }

m["afk"] = { "Nanubae", 6964416,	"paa-arf", "Latn", }

m["afn"] = { "Defaka", 35174,	"nic", "Latn", }

m["afo"] = { "Eloyi", 3914066,	"nic-plt", "Latn", }

m["afp"] = { "Tapei", 16887371,	"paa-arf", "Latn", }

m["afs"] = { "Afro-Seminole Creole", 27867,	"crp", "Latn", ancestors = "en", }

m["aft"] = { "Afitti", 3400829,	"sdv-nyi", "Latn", }

m["afu"] = { "Awutu", 34847,	"alv-gng", "Latn", }

m["afz"] = { "Obokuitai", 7075258,	"paa-lkp", "Latn", }

m["aga"] = { "Aguano", 3331203,	nil, "Latn", }

m["agb"] = { "Legbo", 35584,	"nic-uce", "Latn", }

m["agc"] = { "Agatu", 34732,	"alv-ido", "Latn", }

m["agd"] = { "Agarabi", 3399642,	"paa-kag", "Latn", }

m["age"] = { "Angal", 10951553,	"paa-eng", "Latn", }

m["agf"] = { "Arguni", 12473346,	"poz-cet", "Latn", }

m["agg"] = { "Angor", 3508100,	"paa", "Latn", }

m["agh"] = { "Ngelima", 7022266,	"bnt-bta", "Latn", }

m["agi"] = { "Agariya", 663586,	"mun", "Deva", }

m["agj"] = { "Argobba", 29292,	"sem-eth", "Ethi", }

m["agk"] = { "Isarog Agta", 6078982,	"phi", "Latn", }

m["agl"] = { "Fembe", 372927,	"ngf", "Latn", }

m["agm"] = { "Angaataha", 3508001,	"ngf", "Latn", }

m["agn"] = { "Agutaynen", 3399717,	"phi-kal", "Latn", }

m["ago"] = { "Tainae", 7676186,	"ngf", "Latn", }

m["agq"] = { "Aghem", 34737,	"nic-rnw", "Latn", }

m["agr"] = { "Aguaruna", 1526530,	"sai-jiv", "Latn", }

m["ags"] = { "Esimbi", 35260,	"nic-bds", "Latn", }

m["agt"] = { "Central Cagayan Agta", 5017296,	"phi", "Latn", }

m["agu"] = { "Aguacateca", 35091,	"myn", "Latn", }

m["agv"] = { "Remontado Agta", 3508085,	"phi", "Latn", }

m["agw"] = { "Kahua", 3191906,	"poz-sls", "Latn", }

m["agx"] = { "Aghul", 36498,	"cau-esm", "Cyrl", translit = "cau-nec-translit", override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = {Cyrl = s["cau-Cyrl-entryname"]}, sort_key = { from = {"аь", "гъ", "гь", "гӏ", "дж", "ё", "къ", "кь", "кӏ", "оь", "пӏ", "тӏ", "уь", "хъ", "хь", "хӏ", "цӏ", "чӏ"}, to = {"а" .. p[1], "г" .. p[1], "г" .. p[2], "г" .. p[3], "д" .. p[1], "е" .. p[1], "к" .. p[1], "к" .. p[2], "к" .. p[3], "о" .. p[1], "п" .. p[1], "т" .. p[1], "у" .. p[1], "х" .. p[1], "х" .. p[2], "х" .. p[3], "ц" .. p[1], "ч" .. p[1]} }, }

m["agy"] = { "Southern Alta", 7569611,	"phi", "Latn", }

m["agz"] = { "Mount Iriga Agta", 6921432,	"phi", "Latn", }

m["aha"] = { "Ahanta", 34729,	"alv-ctn", "Latn", }

m["ahb"] = { "Axamb", 2874710,	"poz-vnc", "Latn", }

m["ahg"] = { "Qimant", 35663,	"cus-cen", "Latn", }

m["ahh"] = { "Aghu", 3436645,	"ngf", "Latn", }

m["ahi"] = { "Tiagbamrin Aizi", 3400073,	"kro-aiz", "Latn", }

m["ahk"] = { "Akha", 56643,	"tbq-han", "Latn, Mymr, Thai", sort_key = { Thai = { from = {"[%pๆ]", "[็-๎]", "([เแโใไ])([ก-ฮ])"}, to = {"", "", "%2%1"} },	}, }

m["ahl"] = { "Igo", 35412,	"alv-ktg", "Latn", }

m["ahm"] = { "Mobumrin Aizi", 35967,	"kro-aiz", "Latn", }

m["ahn"] = { "Àhàn", 34723,	"alv-aah", "Latn", }

m["aho"] = { "Ahom", 34778,	"tai-swe", "Ahom", translit = "Ahom-translit", }

m["ahp"] = { "Aproumu Aizi", 34810,	"alv-kwa", "Latn", }

m["ahr"] = { "Ahirani", 15549890,	"inc-wes", "Deva", translit = "mr-translit", }

m["ahs"] = { "Ashe", 34823,	"nic-plc", "Latn", }

m["aht"] = { "Ahtna", 21058,	"ath-nor", "Latn", }

m["aia"] = { "Arosi", 2863483,	"poz-sls", "Latn", }

m["aib"] = { "Äynu", 27927,	"qfa-mix", "Arab, Latn", ancestors = "ug, fa" }

m["aic"] = { "Ainbai", 3332149,	"paa-brd", "Latn", }

m["aid"] = { "Alngith", 3279409,	"aus-pmn", "Latn", }

m["aie"] = { "Amara", 2841180,	"poz-ocw", "Latn", }

m["aif"] = { "Agi", 3331491,	"qfa-tor", "Latn", }

m["aig"] = { "Antigua and Barbuda Creole English", 3244184,	"crp", "Latn", ancestors = "en", }

m["aih"] = { "Ai-Cham", 2827749,	"qfa-kms", "Latn, Hani", sort_key = {Hani = "Hani-sortkey"}, }

m["aii"] = { "Assyrian Neo-Aramaic", 29440,	"sem-nna", "Syrc", translit = "aii-translit", entry_name = "Syrc-entryname", }

m["aij"] = { "Lishanid Noshan", 3436467,	"sem-nna", "Hebr", }

m["aik"] = { "Ake", 34808,	"nic-pls", "Latn", }

m["ail"] = { "Aimele", 3327418,	"ngf", "Latn", }

m["aim"] = { "Aimol", 4697175,	"tbq-kuk", "Latn, Beng", }

m["ain"] = { "Ainu", 27969,	"qfa-iso", "Kana, Latn, Cyrl", sort_key = {Kana = "Kana-sortkey"}, }

m["aio"] = { "Aiton", 3399725,	"tai-swe", "Mymr", translit = "aio-phk-translit", entry_name = {remove_diacritics = c.VS01}, }

m["aip"] = { "Burumakok", 5000984,	"ngf-okk", "Latn", }

m["air"] = { "Airoran", 3321131,	"paa-tkw", "Latn", }

m["ait"] = { "Arikem", 3446679,	"tup", "Latn", }

m["aiw"] = { "Aari", 7495,	"omv-aro", "Latn", }

m["aix"] = { "Aighon", 3504287,	"poz-ocw", "Latn", }

m["aiy"] = { "Ali", 34814,	"gba-eas", "Latn", }

m["aja"] = { "Aja", 3237491,	"csu-bkr", "Latn", }

m["ajg"] = { "Adja", 35035,	"alv-gbe", "Latn", }

m["aji"] = { "Ajië", 2828867,	"poz-cln", "Latn", }

m["ajn"] = { "Andajin", 16111302,	"aus-wor", "Latn", }

m["ajp"] = { "South Levantine Arabic", nil, "sem-arb", "Arab", entry_name = "ar-entryname", }

m["ajw"] = { "Ajawa", 56645,	"cdc-wst", "Latn", }

m["ajz"] = { "Amri Karbi", 3508092,	"tbq-kuk", "Latn", ancestors = "mjw", }

m["akb"] = { "Angkola Batak", 2640686,	"btk", "Latn, Batk", }

m["akc"] = { "Mpur", 3327139,	"paa-wpa", "Latn", }

m["akd"] = { "Ukpet-Ehom", 36618,	"nic-ucr", "Latn", }

m["ake"] = { "Akawaio", 28059,	"sai-pem", "Latn", }

m["akf"] = { "Akpa", 34801,	"alv-ido", "Latn", }

m["akg"] = { "Anakalangu", 4750964,	"poz-cet", "Latn", }

m["akh"] = { "Angal Heneng", 10950354,	"paa-eng", "Latn", }

m["aki"] = { "Aiome", 56735,	"paa", "Latn", }

m["akj"] = { "Jeru", 2919121,	"qfa-adn", "Latn, Deva", }

m["akk"] = { "Akkadian", 35518,	"sem-eas", "Xsux, Latn", }

m["akl"] = { "Aklanon", 8773,	"phi", "Latn", }

m["akm"] = { "Aka-Bo", 35361,	"qfa-adn", "Latn", }

m["ako"] = { "Akurio", 56650,	"sai-tar", "Latn", }

m["akp"] = { "Siwu", 36470,	"alv-ntg", "Latn", }

m["akq"] = { "Ak", 56654,	"paa", "Latn", }

m["akr"] = { "Araki", 2699882,	"poz-vnn", "Latn", }

m["aks"] = { "Akaselem", 34817,	"nic-grm", "Latn", }

m["akt"] = { "Akolet", 3330162,	"poz-ocw", "Latn", }

m["aku"] = { "Akum", 34799,	"nic-ykb", "Latn", }

m["akv"] = { "Akhvakh", 56423,	"cau-and", "Cyrl", translit = "cau-nec-translit", override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = {Cyrl = s["cau-Cyrl-entryname"]}, }

m["akw"] = { "Akwa", 34802,	"bnt-mbo", "Latn", }

m["akx"] = { "Aka-Kede", 3436816,	"qfa-adc", "Latn", }

m["aky"] = { "Aka-Kol", 3436784,	"qfa-adc", "Latn", }

m["akz"] = { "Alabama", 1815020,	"nai-mus", "Latn", }

m["ala"] = { "Alago", 34813,	"alv-ido", "Latn", }

m["alc"] = { "Kawésqar", 56544,	"aqa", "Latn", }

m["ald"] = { "Alladian", 34837,	"alv-lag", "Latn", }

m["ale"] = { "Aleut", 27210,	"esx", "Latn", }

m["alf"] = { "Alege", 34815,	"nic-ben", "Latn", }

m["alh"] = { "Alawa", 2147917,	"aus-gun", "Latn", }

m["ali"] = { "Amaimon", 3327427,	"ngf-mad", "Latn", }

m["alj"] = { "Alangan", 3327423,	"phi", "Latn", }

m["alk"] = { "Alak", 2714690,	"mkh", "Latn", }

m["all"] = { "Allar", 3393634,	"dra-mal", "Mlym", }

-- "aln" IS TREATED AS "sq", SEE WT:LT

m["alm"] = { "Amblong", 11022615,	"poz-vnn", "Latn", }

m["alo"] = { "Larike-Wakasihu", 3217929,	"poz-cma", "Latn", }

m["alp"] = { "Alune", 3327367,	"poz-cet", "Latn", }

m["alq"] = { "Algonquin", 28092,	"alg", "Latn, Cans", ancestors = "oj", }

m["alr"] = { "Alutor", 28213,	"qfa-ckn", "Cyrl", entry_name = { from = {"['’]"}, to = {"ʼ"} },	sort_key = { from = {"вʼ", "гʼ", "ғ", "ә", "ё", "ӄ", "ӈ"}, to = {"в" .. p[1], "г" .. p[1], "г" .. p[2], "е" .. p[1], "е" .. p[2], "к" .. p[1], "н" .. p[1]} }, }

m["alt"] = { "Southern Altai", 1991779,	"trk-kkp", "Cyrl", translit = "Altai-translit", sort_key = { from = {"ј", "ё", "ҥ", "ӧ", "ӱ"}, to = {"д" .. p[1], "е" .. p[1], "н" .. p[1], "о" .. p[1], "у" .. p[1]} }, }

m["alu"] = { "'Are'are", 5160,	"poz-sls", "Latn", }

m["alw"] = { "Alaba", 56652,	"cus-hec", "Latn", }

m["alx"] = { "Amol", 3504260,	"qfa-tor", "Latn", }

m["aly"] = { "Alyawarr", 3327389,	"aus-pam", "Latn", }

m["alz"] = { "Alur", 56507,	"sdv-los", "Latn", }

m["ama"] = { "Amanayé", 3508053,	"tup-gua", "Latn", }

m["amb"] = { "Ambo", 3450142,	"nic-tvn", "Latn", }

m["amc"] = { "Amahuaca", 2669150,	"sai-pan", "Latn", }

m["ame"] = { "Yanesha'", 3088540,	"awd", "Latn", }

m["amf"] = { "Hamer-Banna", 35764,	"omv-aro", "Latn", sort_key = "amf-utilities" }

m["amg"] = { "Amurdag", 3360016,	"aus-wdj", "Latn", }

m["ami"] = { "Amis", 35132,	"map", "Latn", }

m["amj"] = { "Amdang", 28335,	"ssa-fur", "Latn", }

m["amk"] = { "Ambai", 1875885,	"poz-hce", "Latn", }

m["aml"] = { "War-Jaintia", 56321,	"aav-khs", "Latn", }

m["amm"] = { "Ama", 3446626,	"qfa-mal", "Latn", }

m["amn"] = { "Amanab", 3327399,	"paa-brd", "Latn", }

m["amo"] = { "Amo", 34826,	"nic-kne", "Latn", }

m["amp"] = { "Alamblak", 56688,	"paa", "Latn", }

m["amq"] = { "Amahai", 3327384,	"poz-cma", "Latn", }

m["amr"] = { "Amarakaeri", 35128,	"sai-har", "Latn", }

m["ams"] = { "Southern Amami Ōshima", 2840986,	"jpx-nry", "Jpan", translit = s["jpx-translit"], display_text = s["jpx-displaytext"], entry_name = s["jpx-entryname"], sort_key = s["jpx-sortkey"], }

m["amt"] = { "Amto", 56517,	"paa-asa", "Latn", }

m["amu"] = { "Guerrero Amuzgo", 3501942,	"omq", "Latn", }

m["amv"] = { "Ambelau", 2669214,	"poz-cma", "Latn", }

m["amw"] = { "Western Neo-Aramaic", 34226,	"sem-arw", "Armi, Syrc, Latn", entry_name = {Syrc = "Syrc-entryname"}, }

m["amx"] = { "Anmatyerre", 10412317,	"aus-pam", "Latn", }

m["amy"] = { "Ami", 12626835,	"aus-dal", "Latn", }

m["amz"] = { "Atampaya", 3446651,	"aus-pam", "Latn", }

m["ana"] = { "Andaqui", 2846078,	nil, "Latn", }

m["anb"] = { "Andoa", 2846171,	"sai-zap", "Latn", }

m["anc"] = { "Ngas", 35999,	"cdc-wst", "Latn", }

m["and"] = { "Ansus", 3513300,	"poz-hce", "Latn", }

m["ane"] = { "Xârâcùù", 3571097,	"poz-cln", "Latn", }

m["anf"] = { "Animere", 34783,	"alv-ktg", "Latn", }

m["ang"] = { "Old English", 42365,	"gmw-ang", "Latn, Runr", translit = {Runr = "Runr-translit"}, entry_name = { Latn = { remove_diacritics = c.acute .. c.macron .. c.dotabove, from = {"Ƿ", "ƿ"}, to = {"W", "w"} },	},	sort_key = { Latn = { from = {"æ", "ð", "þ", "ƿ"}, to = {"ae", "t" .. p[1], "t" .. p[2], "w" .. p[1]} },	}, }

m["anh"] = { "Nend", 6991554,	"ngf-mad", "Latn", }

m["ani"] = { "Andi", 34849,	"cau-and", "Cyrl", translit = "cau-nec-translit", override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = {Cyrl = s["cau-Cyrl-entryname"]}, }

m["anj"] = { "Anor", 56458,	"paa", "Latn", }

m["ank"] = { "Goemai", 35272,	"cdc-wst", "Latn", }

m["anl"] = { "Anu", 4777679,	"sit-mru", "Latn", }

m["anm"] = { "Anal", 56235,	"tbq-kuk", "Latn", }

m["ann"] = { "Obolo", 36614,	"nic-lcr", "Latn", }

m["ano"] = { "Andoque", 2669225,	"qfa-iso", "Latn", }

m["anp"] = { "Angika", 28378,	"inc-eas", "Deva", ancestors = "bh", }

m["anq"] = { "Jarawa", 2475526,	"qfa-ong", "Latn", }

m["anr"] = { "Andh", 4754314,	"inc-sou", "Deva", }

m["ans"] = { "Anserma", 3446613,	"sai-chc", "Latn", }

m["ant"] = { "Antakarinya", 921304,	"aus-psw", "Latn", }

m["anu"] = { "Anuak", 56677,	"sdv-lon", "Latn", }

m["anv"] = { "Denya", 35187,	"nic-mam", "Latn", }

m["anw"] = { "Anaang", 2845320,	"nic-ief", "Latn", }

m["anx"] = { "Andra-Hus", 2846195,	"poz-aay", "Latn", }

m["any"] = { "Anyi", 28395,	"alv-ctn", "Latn", }

m["anz"] = { "Anem", 56512,	"paa", "Latn", }

m["aoa"] = { "Angolar", 34994,	"crp", "Latn", ancestors = "pt", }

m["aob"] = { "Abom", 3446647,	"ngf", "Latn", }

m["aoc"] = { "Pemon", 10729616,	"sai-pem", "Latn", }

m["aod"] = { "Andarum", 3507888,	"paa", "Latn", }

m["aoe"] = { "Angal Enen", 10951638,	"paa-eng", "Latn", }

m["aof"] = { "Bragat", 3507977,	"qfa-tor", "Latn", }

m["aog"] = { "Angoram", 56366, -- cf 6754745 for merged dialect "paa-lsp", "Latn", }

m["aoi"] = { "Anindilyakwa", 2714654,	"aus-arn", "Latn", }

m["aoj"] = { "Mufian", 3507881,	"qfa-tor", "Latn", }

m["aok"] = { "Arhö", 4790086,	"poz-cln", "Latn", }

m["aol"] = { "Alor", 3332062,	"poz", "Latn", }

m["aom"] = { "Ömie", 8078975,	"ngf", "Latn", }

m["aon"] = { "Bumbita Arapesh", 3508044,	"qfa-tor", "Latn", }

m["aor"] = { "Aore", 12627129,	"poz-vnn", "Latn", }

m["aos"] = { "Taikat", 7676018,	"paa-brd", "Latn", }

m["aot"] = { "Atong (India)", 5646,	"tbq-bdg", "Latn, Beng", }

m["aou"] = { "A'ou", 16109994,	"qfa-gel", "Latn", -- also Hani? }

m["aox"] = { "Atorada", 3507932,	"awd", "Latn", }

m["aoz"] = { "Uab Meto", 3441962,	"poz-tim", "Latn", }

m["apb"] = { "Sa'a", 36294,	"poz-sls", "Latn", }

m["apc"] = { "North Levantine Arabic", 22809485,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["apd"] = { "Sudanese Arabic", 56573,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["ape"] = { "Bukiyip", 3507895,	"qfa-tor", "Latn", }

m["apf"] = { "Pahanan Agta", 7135432,	"phi", "Latn", }

m["apg"] = { "Ampanang", 4748035,	"poz", "Latn", }

m["aph"] = { "Athpare", 3449126,	"sit-kie", "Deva, Latn", }

m["api"] = { "Apiaká", 3507941,	"tup-gua", "Latn", }

m["apj"] = { "Jicarilla", 28277,	"apa", "Latn", }

m["apk"] = { "Plains Apache", 27861,	"apa", "Latn", }

m["apl"] = { "Lipan", 28269,	"apa", "Latn", }

m["apm"] = { "Chiricahua", 13368,	"apa", "Latn", }

m["apn"] = { "Apinayé", 2858311,	"sai-nje", "Latn", }

m["apo"] = { "Ambul", 12627135,	"poz-ocw", "Latn", }

m["app"] = { "Apma", 2669188,	"poz-vnn", "Latn", }

m["apq"] = { "A-Pucikwar", 28466,	"qfa-adc", "Latn", }

m["apr"] = { "Arop-Lokep", 2863482,	"poz-ocw", "Latn", }

m["aps"] = { "Arop-Sissano", 12627242,	"poz-ocw", "Latn", }

m["apt"] = { "Apatani", 56306,	"sit-tan", "Latn", }

m["apu"] = { "Apurinã", 2859081,	"awd", "Latn", }

m["apv"] = { "Alapmunte", 16110782,	"sai-nmk", "Latn", }

m["apw"] = { "Western Apache", 28060,	"apa", "Latn", }

m["apx"] = { "Aputai", 12473343,	"poz-tim", "Latn", }

m["apy"] = { "Apalaí", 2736980,	"sai-gui", "Latn", }

m["apz"] = { "Safeyoka", 7398693,	"ngf", "Latn", }

m["aqc"] = { "Archi", 34915,	"cau-lzg", "Cyrl", translit = "cau-nec-translit", override_translit = true, display_text = {Cyrl = s["cau-Cyrl-displaytext"]}, entry_name = {Cyrl = s["cau-Cyrl-entryname"]}, sort_key = { from = { "ккъӏв", "ххьӏв", -- 5 chars "гъӏв", "ёоӏ", "ккъӏ", "ккъв", "къӏв", "ллъв", "ххьӏ", "хъӏв", "хьӏв", "ццӏв", "ччӏв", -- 4 chars "ааӏ", "гӏв", "гъӏ", "гъв", "гьв", "ееӏ", "ёӏ", "ёо", "ииӏ", "кӏв", "ккв", "ккъ", "къӏ", "къв", "кьв", "лӏв", "ллъ", "лъв", "льв", "ооӏ", "пӏв", "ппв", "ссв", "тӏв", "ттв", "ууӏ", "хӏв", "ххв", "хъӏ", "хъв", "хьӏ", "цӏв", "ццӏ", "ццв", "чӏв", "ччӏ", "ээӏ", "юуӏ", "яаӏ", -- 3 chars "аӏ", "аа", "гӏ", "гв", "гъ", "гь", "дв", "еӏ", "ее", "ё", "жв", "зв", "иӏ", "ии", "кӏ", "кв", "кк", "къ", "кь", "лӏ", "лв", "лъ", "ль", "оӏ", "оо", "пӏ", "пв", "пп", "св", "сс", "тӏ", "тв", "тт", "уӏ", "уу", "фв", "хӏ", "хв", "хх", "хъ", "цӏ", "цв", "цц", "чӏ", "чв", "шв", "щв", "эӏ", "ээ", "юӏ", "юу", "яӏ", "яа" -- 2 chars },		to = { "к" .. p[8], "х" .. p[7], "г" .. p[6], "е" .. p[7], "к" .. p[7], "к" .. p[9], "к" .. p[12], "л" .. p[5], "х" .. p[6], "х" .. p[10], "х" .. p[13], "ц" .. p[6], "ч" .. p[5], "а" .. p[3], "г" .. p[2], "г" .. p[5], "г" .. p[7], "г" .. p[9], "е" .. p[3], "е" .. p[5], "е" .. p[6], "и" .. p[3], "к" .. p[2], "к" .. p[5], "к" .. p[6], "к" .. p[11], "к" .. p[13], "к" .. p[15], "л" .. p[2], "л" .. p[4], "л" .. p[7], "л" .. p[9], "о" .. p[3], "п" .. p[2], "п" .. p[5], "с" .. p[3], "т" .. p[2], "т" .. p[5], "у" .. p[3], "х" .. p[2], "х" .. p[5], "х" .. p[9], "х" .. p[11], "х" .. p[12], "ц" .. p[2], "ц" .. p[5], "ц" .. p[7], "ч" .. p[2], "ч" .. p[4], "э" .. p[3], "ю" .. p[3], "я" .. p[3], "а" .. p[1], "а" .. p[2], "г" .. p[1], "г" .. p[3], "г" .. p[4], "г" .. p[8], "д" .. p[1], "е" .. p[1], "е" .. p[2], "е" .. p[4], "ж" .. p[1], "з" .. p[1], "и" .. p[1], "и" .. p[2], "к" .. p[1], "к" .. p[3], "к" .. p[4], "к" .. p[10], "к" .. p[14], "л" .. p[1], "л" .. p[3], "л" .. p[6], "л" .. p[8], "о" .. p[1], "о" .. p[2], "п" .. p[1], "п" .. p[3], "п" .. p[4], "с" .. p[1], "с" .. p[2], "т" .. p[1], "т" .. p[3], "т" .. p[4], "у" .. p[1], "у" .. p[2], "ф" .. p[1], "х" .. p[1], "х" .. p[3], "х" .. p[4], "х" .. p[8], "ц" .. p[1], "ц" .. p[3], "ц" .. p[4], "ч" .. p[1], "ч" .. p[3], "ш" .. p[1], "щ" .. p[1], "э" .. p[1], "э" .. p[2], "ю" .. p[1], "ю" .. p[2], "я" .. p[1], "я" .. p[2] }	}, }

m["aqd"] = { "Ampari Dogon", 4748057,	"nic-dgw", "Latn", }

m["aqg"] = { "Arigidi", 34829,	"alv-von", "Latn", }

m["aqm"] = { "Atohwaim", 11732297,	"ngf", "Latn", }

m["aqn"] = { "Northern Alta", 7058116,	"phi", "Latn", }

m["aqp"] = { "Atakapa", 10975683,	"qfa-iso", "Latn", }

m["aqr"] = { "Arhâ", 4790085,	"poz-cln", "Latn", }

m["aqt"] = { "Angaité", 15736037,	"sai-mas", "Latn", }

m["aqz"] = { "Akuntsu", 4701960,	"tup", "Latn", }

m["arc"] = { "Aramaic", 28602,	"sem-ara", "Hebr, Armi, Syrc, Palm, Nbat, Phnx, Mand, Samr, Hatr, Elym", translit = { Armi = "Armi-translit", Palm = "Palm-translit", },	entry_name = { Hebr = {remove_diacritics = u(0x0591) .. "-" .. u(0x05BD) .. u(0x05BF) .. "-" .. u(0x05C5) .. u(0x05C7)}, Syrc = {remove_diacritics = u(0x0730) .. "-" .. u(0x0748)}, remove_diacritics = c.macron .. c.diaer .. c.macronbelow}, -- Which script(s)? }

m["ard"] = { "Arabana", 3507959,	"aus-kar", "Latn", }

m["are"] = { "Western Arrernte", 12645549,	"aus-pam", "Latn", }

m["arh"] = { "Arhuaco", 2640621,	"cba", "Latn", }

m["ari"] = { "Arikara", 56539,	"cdd", "Latn", entry_name = {remove_diacritics = c.acute}, }

m["arj"] = { "Arapaso", 12627166,	"sai-tuc", "Latn", }

m["ark"] = { "Arikapú", 3446640,	"sai-mje", "Latn", }

m["arl"] = { "Arabela", 2591221,	"sai-zap", "Latn", }

m["arn"] = { "Mapudungun", 33730,	"sai-ara", "Latn", }

m["aro"] = { "Araona", 958414,	"sai-tac", "Latn", }

m["arp"] = { "Arapaho", 56417,	"alg-ara", "Latn", }

m["arq"] = { "Algerian Arabic", 56499,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["arr"] = { "Arara-Karo", 35539,	"tup", "Latn", }

m["ars"] = { "Najdi Arabic", 56574,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["aru"] = { "Arua", 2746221,	"auf", "Latn", }

m["arv"] = { "Arbore", 56883,	"cus-eas", "Latn", }

m["arw"] = { "Lokono", 2655664,	"awd-taa", "Latn", }

m["arx"] = { "Aruá", 3507907,	"tup", "Latn", }

m["ary"] = { "Moroccan Arabic", 56426,	"sem-arb", "Arab", entry_name = "ar-entryname", sort_key = { from = {"^%f[" .. u(0x5D0) .. "-" .. u(0x5EA) .. "]"},		to = {u(0xFB21)}, }, }

m["arz"] = { "Egyptian Arabic", 29919,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["asa"] = { "Pare", 36403,	"bnt-par", "Latn", }

m["asb"] = { "Assiniboine", 2591288,	"sio-dkt", "Latn", }

m["asc"] = { "Casuarina Coast Asmat", 11732046,	"ngf", "Latn", }

m["ase"] = { "American Sign Language", 14759,	"sgn", "Sgnw", }

m["asf"] = { "Auslan", 29525,	"sgn", "Latn", -- when documented }

m["asg"] = { "Cishingini", 35199,	"nic-kam", "Latn", }

m["ash"] = { "Abishira", 2871740,	"qfa-iso", "Latn", }

m["asi"] = { "Buruwai", 5001031,	"ngf", "Latn", }

m["asj"] = { "Nsari", 36418,	"nic-bbe", "Latn", }

m["ask"] = { "Ashkun", 29379,	"nur-sou", "Arab, Latn", }

m["asl"] = { "Asilulu", 12473347,	"poz-cma", "Latn", }

m["asn"] = { "Xingú Asuriní", 8044571,	"tup-gua", "Latn", }

m["aso"] = { "Dano", 5220979,	"paa-kag", "Latn", }

m["asp"] = { "Algerian Sign Language", 3135421,	"sgn", }

m["asq"] = { "Austrian Sign Language", 36668,	"sgn", "Latn", -- when documented }

m["asr"] = { "Asuri", 3504321,	"mun", "Latn", -- when documented }

m["ass"] = { "Ipulo", 35408,	"nic-tvc", "Latn", }

m["ast"] = { "Asturian", 29507,	"roa-ibe", "Latn", ancestors = "roa-ole", }

m["asu"] = { "Tocantins Asurini", 32041490,	"tup-gua", "Latn", }

m["asv"] = { "Asoa", 56296,	"csu-maa", "Latn", }

m["asw"] = { "Australian Aboriginal Sign Language", 955216,	"sgn", "Latn", -- when documented }

m["asx"] = { "Muratayak", 11732766,	"ngf-fin", "Latn", }

m["asy"] = { "Yaosakor Asmat", 16113158,	"ngf", "Latn", }

m["asz"] = { "As", 2866218,	"poz-hce", "Latn", }

m["ata"] = { "Pele-Ata", 56511,	"paa", "Latn", }

m["atb"] = { "Zaiwa", 56594,	"tbq-brm", "Latn, Lisu", -- also Hani? translit = {Lisu = "Lisu-translit"}, sort_key = {Lisu = s["Lisu-sortkey"]}, }

m["atc"] = { "Atsahuaca", 4817730,	"sai-pan", "Latn", }

m["atd"] = { "Ata Manobo", 12627315,	"mno", "Latn", }

m["ate"] = { "Atemble", 4813055,	"ngf-mad", "Latn", }

m["atg"] = { "Okpela", 7082551,	"alv-yek", "Latn", }

m["ati"] = { "Attié", 34844,	"alv-lag", "Latn", }

m["atj"] = { "Atikamekw", 56590,	"alg", "Latn", ancestors = "cr", }

m["atk"] = { "Ati", 4815751,	"phi", "Latn", }

m["atl"] = { "Mount Iraya Agta", 6921430,	"phi", "Latn", }

m["atm"] = { "Ata", 4812603,	"phi", "Latn", }

m["ato"] = { "Atong (Cameroon)", 34824,	"nic-grs", "Latn", }

m["atp"] = { "Pudtol Atta", 12640726,	"phi", "Latn", }

m["atq"] = { "Aralle-Tabulahan", 4783889,	"poz-ssw", "Latn", }

m["atr"] = { "Waimiri-Atroari", 56865,	"sai-car", "Latn", }

m["ats"] = { "Gros Ventre", 56628,	"alg-ara", "Latn", }

m["att"] = { "Pamplona Atta", 12639245,	"phi", "Latn", }

m["atu"] = { "Reel", 7306882,	"sdv-dnu", "Latn", }

m["atv"] = { "Northern Altai", 2640863,	"trk-ssb", "Cyrl", translit = "Altai-translit", }

m["atw"] = { "Atsugewi", 56718,	"nai-pal", "Latn", }

m["atx"] = { "Arutani", 56609,	nil, "Latn", }

m["aty"] = { "Aneityum", 2379113,	"poz-vns", "Latn", }

m["atz"] = { "Arta", 3508067,	"phi", "Latn", }

m["aua"] = { "Asumboa", 4811870,	"poz-tem", "Latn", }

m["aub"] = { "Alugu", 12626798,	"tbq-urp", "Latn", -- also Hani? }

m["auc"] = { "Huaorani", 758570,	"qfa-iso", "Latn", }

m["aud"] = { "Anuta", 35326,	"poz-pnp", "Latn", }

m["aug"] = { "Aguna", 34733,	"alv-gbe", "Latn", }

m["auh"] = { "Aushi", 2872082,	"bnt-sbi", "Latn", }

m["aui"] = { "Anuki", 3508132,	"poz-ocw", "Latn", }

m["auj"] = { "Awjila", 56398,	"ber", "Latn, Arab, Tfng", }

m["auk"] = { "Heyo", 3504295,	"qfa-tor", "Latn", }

m["aul"] = { "Aulua", 427300,	"poz-vnc", "Latn", }

m["aum"] = { "Asu", 34798,	"alv-ngb", "Latn", }

m["aun"] = { "Molmo One", 12637224,	"qfa-tor", "Latn", }

m["auo"] = { "Auyokawa", 56247,	"cdc-wst", "Latn", }

m["aup"] = { "Makayam", 6738863,	"ngf", "Latn", }

m["auq"] = { "Anus", 23855,	"poz-ocw", "Latn", }

m["aur"] = { "Aruek", 3504279,	"qfa-tor", "Latn", }

m["aut"] = { "Austral", 2669261,	"poz-pep", "Latn", }

m["auu"] = { "Auye", 4827334,	"ngf", "Latn", }

m["auw"] = { "Awyi", 3513326,	"paa-brd", "Latn", }

m["aux"] = { "Aurá", 3507995,	"tup-gua", "Latn", }

m["auy"] = { "Auyana", 2873211,	"paa-kag", "Latn", }

m["auz"] = { "Uzbeki Arabic", 3399507,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["avb"] = { "Avau", 12627412,	"poz-ocw", "Latn", }

m["avd"] = { "Alviri-Vidari", 3327357,	"xme", "fa-Arab", ancestors = "xme-mid", }

m["avi"] = { "Avikam", 34840,	"alv-lag", "Latn", }

m["avk"] = { "Kotava", 1377116,	"art", "Latn", type = "appendix-constructed", }

m["avm"] = { "Angkamuthi", nil, "aus-pmn", "Latn", }

m["avn"] = { "Avatime", 34796,	"alv-ktg", "Latn", }

m["avo"] = { "Agavotaguerra", 3508007,	"awd", "Latn", }

m["avs"] = { "Aushiri", 3409318,	"sai-zap", "Latn", }

m["avt"] = { "Au", 3446608,	"qfa-tor", "Latn", }

m["avu"] = { "Avokaya", 56685,	"csu-mma", "Latn", }

m["avv"] = { "Avá-Canoeiro", 4829584,	"tup-gua", "Latn", }

m["awa"] = { "Awadhi", 29579,	"inc-hie", "Deva, Kthi, fa-Arab", translit = {Deva = "hi-translit"}, }

m["awb"] = { "Awa (New Guinea)", 2874650,	"paa-kag", "Latn", }

m["awc"] = { "Cicipu", 35193,	"nic-kam", "Latn", }

m["awe"] = { "Awetí", 4830038,	"tup", "Latn", }

m["awg"] = { "Anguthimri", 4764288,	"aus-pam", "Latn", }

m["awh"] = { "Awbono", 3446684,	"ngf", "Latn", }

m["awi"] = { "Aekyom", 3399691,	"ngf", "Latn", }

m["awk"] = { "Awabakal", 3449138,	"aus-pam", "Latn", }

m["awm"] = { "Arawum", 4784537,	"ngf-mad", "Latn", }

m["awn"] = { "Awngi", 34934,	"cus-cen", "Ethi", }

m["awo"] = { "Awak", 3446643,	"alv-wjk", "Latn", }

m["awr"] = { "Awera", 56379,	"paa-lkp", "Latn", }

m["aws"] = { "South Awyu", 12633986,	"ngf", "Latn", }

m["awt"] = { "Araweté", 4784535,	"tup-gua", "Latn", }

m["awu"] = { "Central Awyu", 12628801,	"ngf", "Latn", }

m["awv"] = { "Jair Awyu", 16110177,	"ngf", "Latn", }

m["aww"] = { "Awun", 56369,	"paa-spk", "Latn", }

m["awx"] = { "Awara", 2874670,	"ngf-fin", "Latn", }

m["awy"] = { "Edera Awyu", 12630425,	"ngf", "Latn", }

m["axb"] = { "Abipon", 11252539,	"sai-guc", "Latn", }

m["axe"] = { "Ayerrerenge", 16112737,	"aus-pam", "Latn", }

m["axg"] = { "Mato Grosso Arára", 3446660,	nil, "Latn", }

m["axk"] = { "Aka (Central Africa)", 11010149,	"bnt-ngn", "Latn", }

m["axl"] = { "Lower Southern Aranda", 6693295,	"aus-pam", "Latn", }

m["axm"] = { "Middle Armenian", 4438498,	"hyx", "Armn", ancestors = "xcl", translit = "Armn-translit", override_translit = true, entry_name = { remove_diacritics = "՞՜՛՟", from = {"եւ", "ՙ", "՚"}, to = {"և", "ʻ", "’"} } }

m["axx"] = { "Xârâgurè", 8045635,	"poz-cln", "Latn", }

m["aya"] = { "Awar", 56876,	"paa", "Latn", }

m["ayb"] = { "Ayizo", 34841,	"alv-pph", "Latn", }

m["ayd"] = { "Ayabadhu", 3509164,	"aus-pmn", "Latn", }

m["aye"] = { "Ayere", 34788,	"alv-aah", "Latn", }

m["ayg"] = { "Nyanga (Togo)", 35446,	"alv-gng", "Latn", }

m["ayi"] = { "Leyigha", 3914492,	"nic-uce", "Latn", }

m["ayk"] = { "Akuku", 3450179,	"alv-nwd", "Latn", }

m["ayl"] = { "Libyan Arabic", 56503,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["ayn"] = { "Yemeni Arabic", 1686766,	"sem-arb", "Arab", entry_name = "ar-entryname", }

m["ayo"] = { "Ayoreo", 56634,	"sai-zam", "Latn", }

m["ayp"] = { "North Mesopotamian Arabic", 56577,	"sem-arb", "Arab", ancestors = "acm", entry_name = "ar-entryname", }

m["ayq"] = { "Ayi", 56449,	"paa-spk", "Latn", }

m["ays"] = { "Sorsogon Ayta", 7563752,	"phi", "Latn", }

m["ayt"] = { "Bataan Ayta", 4921648,	"phi", "Latn", }

m["ayu"] = { "Ayu", 34786,	"alv", "Latn", }

m["ayy"] = { "Tayabas Ayta", 7689745,	"phi", "Latn", }

m["ayz"] = { "Maybrat", 4830892,	"paa-wpa", "Latn", }

m["aza"] = { "Azha", 4832486,	"tbq-axi", "Latn", }

m["azd"] = { "Eastern Durango Nahuatl", 16115449,	"azc-nah", "Latn", }

m["azg"] = { "San Pedro Amuzgos Amuzgo", 35092,	"omq", "Latn", }

m["azm"] = { "Ipalapa Amuzgo", 12633013,	"omq", "Latn", }

m["azn"] = { "Western Durango Nahuatl", 12645553,	"azc-nah", "Latn", }

m["azo"] = { "Awing", 34856,	"nic-nge", "Latn", }

m["azt"] = { "Faire Atta", 12630884,	"phi", "Latn", }

m["azz"] = { "Highland Puebla Nahuatl", 12953754,	"azc-nah", "Latn", }

return m_lang.finalizeLanguageData(m_lang.addDefaultTypes(m, true))

title: Module:languages/data/3/a