Module:languages/data/exceptional: Difference between revisions

From Linguifex
Jump to navigation Jump to search
(Created page with "local u = mw.ustring.char local m_langdata = require("Module:languages/data") local c = m_langdata.chars local p = m_langdata.puaChars local s = m_langdata.shared local m = {} m["aav-khs-pro"] = { "Proto-Khasian", nil, "aav-khs", "Latinx", type = "reconstructed", } m["aav-nic-pro"] = { "Proto-Nicobarese", nil, "aav-nic", "Latinx", type = "reconstructed", } m["aav-pkl-pro"] = { "Proto-Pnar-Khasi-Lyngngam", nil, "aav-pkl", "Latinx", type = "reconstructed...")
 
No edit summary
(27 intermediate revisions by 4 users not shown)
Line 1: Line 1:
local u = mw.ustring.char
local m_langdata = require("Module:languages/data")
local m_langdata = require("Module:languages/data")
-- Loaded on demand, as it may not be needed (depending on the data).
local function u(...)
u = require("Module:string utilities").char
return u(...)
end
local c = m_langdata.chars
local c = m_langdata.chars
local p = m_langdata.puaChars
local p = m_langdata.puaChars
Line 7: Line 13:
local m = {}
local m = {}


m["aav-khs-pro"] = {
m["afh"] = {
"Proto-Khasian",
"Afrihili",
384707,
"art",
"Latn",
}
 
m["alo-col"] = {
"Central Olma",
nil,
nil,
"aav-khs",
"alo-cst",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["aav-nic-pro"] = {
m["alo-eol"] = {
"Proto-Nicobarese",
"Eastern Olma",
nil,
nil,
"aav-nic",
"alo-cst",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["aav-pkl-pro"] = {
m["alo-eon"] = {
"Proto-Pnar-Khasi-Lyngngam",
"Eastern Onori",
nil,
nil,
"aav-pkl",
"alo-tdr",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["aav-pro"] = { --The mkh-pro will merge into this.
m["alo-kol"] = {
"Proto-Austroasiatic",
"Coastal Olma",
nil,
nil,
"aav",
"alo-cst",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["afa-pro"] = {
m["alo-pro"] = {
"Proto-Afroasiatic",
"Proto-Alopian",
269125,
nil,
"afa",
"art",
"Latinx",
"Latn",
type = "reconstructed",
sort_key = {
from = {"[-*·]"},
to =  {""},
remove_diacritics = c.macron .. c.breve,
},
type = "conlang",
}
}


m["alg-aga"] = {
m["alo-sig"] = {
"Agawam",
"Sigori",
nil,
nil,
"alg-eas",
"alo-fre",
"Latn",
"Latn",
type = "conlang",
}
}


m["alg-pro"] = {
m["alo-sol"] = {
"Proto-Algonquian",
"Southern Olma",
7251834,
nil,
"alg",
"alo-cst",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
sort_key = {remove_diacritics = "·"},
}
}


m["alv-ama"] = {
m["alo-won"] = {
"Amasi",
"Western Onori",
4740400,
nil,
"nic-grs",
"alo-tdr",
"Latn",
"Latn",
entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron},
type = "conlang",
}
}


m["alv-bgu"] = {
m["art-blk"] = {
"Baïnounk Gubëeher",
"Bolak",
17002646,
2909283,
"alv-bny",
"art",
"Latn",
"Latn",
}
}


m["alv-bua-pro"] = {
m["art-bsp"] = {
"Proto-Bua",
"Black Speech",
nil,
686210,
"alv-bua",
"art",
"Latn, Teng",
}
 
m["art-com"] = {
"Communicationssprache",
35227,
"art",
"Latn",
}
 
m["art-dtk"] = {
"Dothraki",
2914733,
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-cng-pro"] = {
m["art-elo"] = {
"Proto-Cangin",
"Eloi",
nil,
nil,
"alv-cng",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-edo-pro"] = {
m["art-gld"] = {
"Proto-Edoid",
"Goa'uld",
nil,
19823,
"alv-edo",
"art",
"Latn",
"Latn, Egyp, Mero",
type = "reconstructed",
}
}


m["alv-fli-pro"] = {
m["art-lap"] = {
"Proto-Fali",
"Lapine",
nil,
6488195,
"alv-fli",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-gbe-pro"] = {
m["art-man"] = {
"Proto-Gbe",
"Mandalorian",
nil,
54289,
"alv-gbe",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-gng-pro"] = {
m["art-mun"] = {
"Proto-Guang",
"Mundolinco",
nil,
851355,
"alv-gng",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-gtm-pro"] = {
m["art-nav"] = {
"Proto-Central Togo",
"Na'vi",
nil,
316939,
"alv-gtm",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-gwa"] = {
m["art-nox"] = {
"Gwara",
"Noxilo",
16945580,
nil,
"nic-pla",
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["alv-hei-pro"] = {
local F = "[ɬsṣš]"
"Proto-Heiban",
 
m["art-nui"] = {
"ǂA Ṇṵĩ",
nil,
nil,
"alv-hei",
"art",
"Latn",
"Latn",
type = "reconstructed",
sort_key = {
from = {
"^N", "^Ɠ", "ṭr",
F .. "([ʇǃǂǁ])qʼ",
F .. "([ʇǃǂǁ])ʼ",
F .. "([ʇǃǂǁ])",
"ɴ([ʇǃǂǁ])x",
"ɴ([ʇǃǂǁ])ʼ",
"ɴ([ʇǃǂǁʘ])",
"r([ǃǁ]), (ʘ)r",
"([ǃǁ])ʛ",
"([ʇǃǂǁ])qʼ",
"([ʇǃǂǁ])x",
"([ʇǃǂǁ])ʼ",
"^[aeiou]?(.)",
},
to = {
"ɴ", "ʛ", "ṭᵣ",
"%1₊",
"%1₉",
"%1₈",
"%1₇",
"%1₆",
"%1₅",
"%1₄, %1₄",
"%1₃",
"%1₂",
"%1₁",
"%1₀",
"%1",
},
remove_diacritics = c.tildebelow .. c.grave
},
type = "conlang",
}
}


m["alv-ido-pro"] = {
m["art-una"] = {
"Proto-Idomoid",
"Unas",
nil,
nil,
"alv-ido",
"art",
"Latn",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["alv-igb-pro"] = {
m["avk"] = {
"Proto-Igboid",
"Kotava",
nil,
1377116,
"alv-igb",
"art",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["alv-kwa-pro"] = {
m["axwa-pro"] = {
"Proto-Kwa",
"Proto-Axwan",
nil,
nil,
"alv-kwa",
"art",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed,conlang",
}
}


m["alv-mum-pro"] = {
m["brfs-pro"] = {
"Proto-Mumuye",
"Ancient Berfesian",
nil,
nil,
"alv-mum",
"brfs",
"Latn",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["alv-nup-pro"] = {
m["dzhk"] = {
"Proto-Nupoid",
"Dženubiskă",
nil,
nil,
"alv-nup",
"gem",
"Latn",
"Cyrl",
type = "reconstructed",
translit = "dzhk-translit",
ancestors = "got",
type = "conlang",
}
}


m["alv-pro"] = {
m["gwax"] = {
"Proto-Atlantic-Congo",
"Gwaxol",
nil,
"wasc",
"Latn",
ancestors = "wasc, nen-pro",
type = "conlang",
entry_name = {
from = {"1", "2", "3", "4", "5", "6"},
to = {"¹", "²", "³", "⁴", "⁵", "⁶"},
},
display_text = {
from = {"1", "2", "3", "4", "5", "6"},
to = {"¹", "²", "³", "⁴", "⁵", "⁶"},
}
}
 
m["hceo"] = {  
"Hceor Theec",
nil,
nil,
"alv",
"nen",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "lnen",
type = "conlang",
}
}


m["alv-yor-pro"] = {
m["ibe-pro"] = {
"Proto-Yoruboid",
"Proto-Iberian",
nil,
nil,
"alv-yor",
"ibe",
"Latn",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["alv-von-pro"] = {
m["kisl"] = {
"Proto-Volta-Niger",
"Kilīmos-sāîl",
nil,
nil,
"alv-von",
"wasc",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "wasc",
type = "conlang",
}
}


m["apa-pro"] = {
m["knra"] = {
"Proto-Apachean",
"Knrawi",
nil,
nil,
"apa",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["aql-pro"] = {
m["lnen"] = {  
"Proto-Algic",
"Late Nentammmi",
18389588,
nil,
"aql",
"nen",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "nen-pro",
sort_key = {remove_diacritics = "·"},
type = "conlang",
}
}


m["art-blk"] = {
m["loxw"] = {
"Bolak",
"Central Isles Creole",
2909283,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "knra, qsc",
type = "conlang",
}
}


m["art-bsp"] = {
m["maat"] = {
"Black Speech",
"Maahaat",
686210,
nil,
"art",
"slaq",
"Latn, Teng",
"Latn",
type = "appendix-constructed",
ancestors = "slaq-pro",
type = "conlang",
}
}


m["art-com"] = {
m["maaz"] = {
"Communicationssprache",
"Maazha",
35227,
nil,
"slaq",
"Latn",
ancestors = "slaq-pro",
type = "conlang",
}
 
m["nen-pro"] = {
"Nentammmi",
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
type = "reconstructed,conlang",
}
}


m["art-dtk"] = {
m["noan"] = {  
"Dothraki",
"Noanglo",
2914733,
nil,
"art",
"nen",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "nen-pro",
type = "conlang",
}
}


m["art-elo"] = {
m["ravk"] = {  
"Eloi",
"Ravihkeo",
nil,
nil,
"art",
"nen",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "nen-pro",
type = "conlang",
}
}


m["art-gld"] = {
m["anrdg"] = {
"Goa'uld",
"Rokadong",
19823,
nil,
"art",
"art",
"Latn, Egyp, Mero",
"Roka",
type = "appendix-constructed",
ancestors = "annen",
type = "conlang",
}
}


m["art-lap"] = {
m["anktl"] = {
"Lapine",
"Kairitelan",
6488195,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "annen",
type = "conlang",
}
}


m["art-man"] = {
m["anldk"] = {
"Mandalorian",
"Liðakuin",
54289,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "anldk-old",
type = "conlang",
}
}


m["art-mun"] = {
m["andbz"] = {
"Mundolinco",
"Debazi",
851355,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "anmnk",
type = "conlang",
}
}


m["art-nav"] = {
m["anldk-old"] = {
"Na'vi",
"Old Liðakuin",
316939,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "anwgs",
type = "conlang",
}
}


m["art-nox"] = {
m["anmnk"] = {
"Noxilo",
"Classical Munkai",
nil,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "anpmk",
type = "conlang",
}
}


m["art-una"] = {
m["anpmk"] = {
"Unas",
"Proto-Munkai",
nil,
nil,
"art",
"art",
"Latn",
"Latn",
type = "appendix-constructed",
ancestors = "anplm",
type = "conlang",
}
}


m["ath-nic"] = {
m["anplm"] = {
"Nicola",
"Proto-Leyen-Mangellian",
20609,
nil,
"ath-nor",
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["ath-pro"] = {
m["annen"] = {
"Proto-Athabaskan",
"Proto-Nenta",
nil,
nil,
"ath",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["auf-pro"] = {
m["anwgs"] = {
"Proto-Arawa",
"Proto-West-Gomensayan",
nil,
nil,
"auf",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "conlang",
}
}


m["aus-alu"] = {
m["anhat"] = {
"Alungul",
"Hatzonian",
16827670,
nil,
"aus-pmn",
"art",
"Latn",
"Latn",
ancestors = "ankar",
type = "conlang",
}
}


m["aus-and"] = {
m["anckr"] = {
"Andjingith",
"Common Kardonian",
4754509,
nil,
"aus-pmn",
"art",
"Latn",
"Latn",
ancestors = "ankar",
type = "conlang",
}
}


m["aus-ang"] = {
m["anspd"] = {
"Angkula",
"Speodan",
16828520,
nil,
"aus-pmn",
"art",
"Latn",
"Latn",
ancestors = "ankar",
type = "conlang",
}
}


m["aus-arn-pro"] = {
m["ancal"] = {
"Proto-Arnhem",
"Calubian",
nil,
nil,
"aus-arn",
"art",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "ankar",
type = "conlang",
}
}


m["aus-bra"] = {
m["andya"] = {
"Barranbinya",
"Dyamantian",
4863220,
nil,
"aus-pmn",
"art",
"Latn",
"Latn",
ancestors = "ankar",
type = "conlang",
}
}


m["aus-brm"] = {
m["ankar"] = {
"Barunggam",
"Middle Kardonian",
4865914,
nil,
"aus-pmn",
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["aus-cww-pro"] = {
m["cruc"] = {
"Proto-Central New South Wales",
"Cruckeny",
nil,
nil,
"aus-cww",
"ine, cel",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "ga",
type = "conlang",
}
}


m["aus-dal-pro"] = {
m["guim"] = {
"Proto-Daly",
"Guimin",
nil,
nil,
"aus-dal",
"ine",
"Latinx",
"Cyrl",
type = "reconstructed",
translit = "guim-translit",
ancestors = "ine-pro",
type = "conlang",
}
}


m["aus-guw"] = {
m["hema"] = {
"Guwar",
"Hemaluan",
6652138,
nil,
"aus-pam",
"map",
"Latn",
"Hani, Kana",
ancestors = "map-pro",
type = "conlang",
}
}


m["aus-lsw"] = {
m["jl-two"] = {
"Little Swanport",
"Jokelang 2",
6652138,
nil,
nil,
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["aus-mbi"] = {
m["jovl"] = {
"Mbiywom",
"Jovlish",
6799701,
nil,
"aus-pmn",
"ine, ger, gmw-ang",
"Latn",
"Jovl",
ancestors = "ang",
type = "conlang",
translit = "qay-translit"
}
}


m["aus-ngk"] = {
m["keel"] = {
"Ngkoth",
"Keeltyewarem",
7022405,
nil,
"aus-pmn",
"ine, cel",
"Latn",
"Latn",
ancestors = "ga",
type = "conlang",
}
}


m["aus-nyu-pro"] = {
m["kilta"] = {
"Proto-Nyulnyulan",
"Kílta",
nil,
nil,
"aus-nyu",
"art",
"Latinx",
"Latn",
type = "reconstructed",
sort_key = {
remove_diacritics = c.acute,
},
type = "conlang",
}
}


m["aus-pam-pro"] = {
m["lthm-pro"] = {
"Proto-Pama-Nyungan",
"Proto-Lothem",
33942,
nil,
"aus-pam",
"lthm",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed,conlang",
}
}


m["aus-tul"] = {
m["sasr"] = {
"Tulua",
"Ancient Sassrian",
16938541,
nil,
"aus-pam",
"sasr",
"Latn",
"Latn",
type = "conlang",
}
}


m["aus-uwi"] = {
m["lyt"] = {
"Uwinymil",
"Oltic",
7903995,
nil,
"aus-arn",
"ine, cel",
"Latn",
"Grek, Cyrl",
ancestors = "cel-pro, lyt-mid, lyt-old",
type = "conlang",
}
}


m["aus-wdj-pro"] = {
m["lyt-mid"] = {
"Proto-Iwaidjan",
"Middle Oltic",
nil,
nil,
"aus-wdj",
"ine, cel",
"Latinx",
"Grek",
type = "reconstructed",
ancestors = "cel-pro, lyt-old",
type = "conlang",
}
}


m["aus-won"] = {
m["lyt-old"] = {
"Wong-gie",
"Old Oltic",
nil,
nil,
"aus-pam",
"ine, cel",
"Latn",
"Grek",
ancestors = "cel-pro",
type = "conlang",
}
}


m["aus-wul"] = {
m["mill"] = {
"Wulguru",
"Millennish",
8039196,
nil,
"aus-dyb",
"ine, gem",
"Latn",
"Latn",
ancestors = "gem-pro, mill-old",
type = "conlang",
}
}


m["aus-ynk"] = { -- contrast nny
m["mill-old"] = {
"Yangkaal",
"Old Millennish",
3913770,
nil,
"aus-tnk",
"ine, gem",
"Latn",
"Latn",
ancestors = "gem-pro",
type = "conlang",
}
}


m["awd-amc-pro"] = {
m["nwc"] = {
"Proto-Amuesha-Chamicuro",
"Anchwa",
nil,
"aav",
"Hang, Thai, Khmr",
ancestors = "aav-pro, nwc-old",
type = "conlang",
}
 
m["nwc-old"] = {
"Old Anchwa",
nil,
nil,
"awd",
"aav",
"Latn",
"Thai",
type = "reconstructed",
ancestors = "aav-pro",
ancestors = "awd-pro",
type = "conlang",
}
}


m["awd-kmp-pro"] = {
m["pine"] = {
"Proto-Kampa",
"Pine",
nil,
nil,
"awd",
"art",
"Latn",
"Latn",
type = "reconstructed",
entry_name = {
ancestors = "awd-pro",
from = {"‧"},
to = {""},
},
sort_key = {
remove_diacritics = c.hook,
},
type = "conlang",
}
}


m["awd-prw-pro"] = {
m["old-pnsh"] = {
"Proto-Paresi-Waura",
"Old Ponish",
nil,
nil,
"awd",
"art",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "gmw-pro",
ancestors = "awd-pro",
type = "conlang",
}
}


m["awd-ama"] = {
m["pnsh"] = {
"Amarizana",
"Ponish",
16827787,
nil,
"awd",
"art",
"Latn",
"Latn",
ancestors = "old-pnsh",
type = "conlang",
}
}


m["awd-ana"] = {
m["sekh"] = {
"Anauyá",
"Sekhulla",
16828252,
nil,
"awd",
"wasc",
"Latn",
"Latn",
ancestors = "wasc",
type = "conlang",
}
}


m["awd-apo"] = {
m["rul"] = {
"Apolista",
"Rulhilli",
16916645,
nil,
"awd",
"sit, zhx",
"Latn",
"Deva",
ancestors = "och, rul-old",
type = "conlang",
}
}


m["awd-cav"] = {
m["rul-old"] = {
"Cavere",
"Old Rulhilli",
nil,
nil,
"awd",
"sit, zhx",
"Latn",
"Deva",
ancestors = "och",
type = "conlang",
}
}


m["awd-gnu"] = {
m["siwa"] = {
"Guinau",
"Siwa",
3504087,
nil,
"awd",
"alo-fre",
"Latn",
"Latn",
entry_name = {
from = {"‧"},
to = {""},
},
sort_key = {
remove_diacritics = c.hook,
},
ancestors = "alo-pro",
type = "conlang",
}
}


m["awd-kar"] = {
m["slaq-pro"] = {
"Cariay",
"Proto-Slaq",
16920253,
nil,
"awd",
"art",
"Latn",
"Latn",
type = "reconstructed,conlang",
}
}


m["awd-kaw"] = {
m["sud"] = {
"Kawishana",
"Sudyrnish",
6379993,
nil,
"awd-nwk",
"ine, gem",
"Latn",
"Latn",
ancestors = "ang",
type = "conlang",
}
}


m["awd-kus"] = {
m["thuo"] = {  
"Kustenau",
"Thuōsha",
5196293,
nil,
"awd",
"nen",
"Latn",
"Latn",
ancestors = "nen-pro",
type = "conlang",
}
}


m["awd-man"] = {
m["tok"] = {
"Manao",
"Toki Pona",
6746920,
36846,
"awd",
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["awd-mar"] = {
m["uche"] = {
"Marawan",
"Uchee",
6755108,
nil,
"awd",
"slaq",
"Latn",
"Latn",
ancestors = "slaq-pro",
type = "conlang",
}
}


m["awd-mpr"] = {
m["urka"] = {
"Maypure",
"Urka",
nil,
nil,
"awd",
"slaq",
"Latn",
"Latn",
ancestors = "slaq-pro",
type = "conlang",
}
}


m["awd-mrt"] = {
m["vinn"] = {
"Mariaté",
"Vinnish",
16910017,
nil,
"awd-nwk",
"gem",
"Latn",
"Latn",
sort_key = {
from = {"ð, æ, ø, å"},
to = {"d" .. p[1], "z" .. p[1], "z" .. p[2], "z" .. p[3]}
},
type = "conlang",
}
}


m["awd-nwk-pro"] = {
m["wasc"] = {
"Proto-Nawiki",
"Wascotl",
nil,
nil,
"awd-nwk",
"art",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed,conlang",
}
}


m["awd-pai"] = {
m["xchc"] = {
"Paikoneka",
"Chiingimec",
nil,
nil,
"awd",
"art",
"Latn",
"Cyrl",
translit = "xchc-translit",
type = "conlang",
}
}


m["awd-pas"] = {
m["zmlj"] = {
"Passé",
"Zemljask",
nil,
nil,
"awd-nwk",
"sla",
"Latn",
"Latn",
ancestors = "sla-pro",
entry_name = {remove_diacritics = c.acute},
type = "conlang",
}
}


m["awd-pro"] = {
m["rsn-pro"] = {
"Proto-Arawak",
"Proto-Raysio-Smipharic",
nil,
nil,
"awd",
"vrg",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed,conlang",
ancestors = "vrg-pro",
}
}


m["awd-she"] = {
m["cuy-pro"] = {
"Shebayo",
"Proto-Cuyic",
7492248,
nil,
"awd",
"cuy",
"Latn",
"Latn",
type = "reconstructed,conlang",
ancestors = "ine-pro",
}
}


m["awd-taa-pro"] = {
m["oyp-old"] = {
"Proto-Ta-Arawak",
"Old Oypatha",
nil,
nil,
"awd-taa",
"cuy",
"Latn",
"Hani",
type = "reconstructed",
ancestors = "cuy-pro",
type = "conlang",
}
}


m["awd-wai"] = {
m["oyp-mod"] = {
"Wainumá",
"Oypatha",
16910017,
nil,
"awd-nwk",
"cuy",
"Latn",
"Mong, mnc-Mong, sjo-Mong, xwo-Mong",
ancestors = "oyp-old",
type = "conlang",
}
}


m["awd-yum"] = {
m["icn-old"] = {
"Yumana",
"Old Incene",
8061062,
nil,
"awd-nwk",
"cuy",
"Latn",
"fa-Arab",
ancestors = "cuy-pro",
type = "conlang",
}
}


m["azc-caz"] = {
m["syr-icn"] = {
"Cazcan",
"Syrian Incene",
5055514,
nil,
"azc",
"cuy",
"Latn",
"Arab, fa-Arab",
ancestors = "icn-old",
type = "conlang",
}
}


m["azc-cup-pro"] = {
m["ant-icn"] = {
"Proto-Cupan",
"Anatolian Incene",
nil,
nil,
"azc-cup",
"cuy",
"Latinx",
"Armn",
type = "reconstructed",
ancestors = "icn-old",
type = "conlang",
}
}


m["azc-ktn"] = {
m["vrg-pro"] = {
"Kitanemuk",
"Proto-Vergic",
3197558,
nil,
"azc-tak",
"vrg",
type = "reconstructed,conlang",
"Latn",
"Latn",
ancestors = "ine-pro",
}
}


m["azc-nah-pro"] = {
m["vib-old"] = {
"Proto-Nahuan",
"Old Iberian Vergic",
7251860,
nil,
"azc-nah",
"vrg",
"Latinx",
"Grek",
type = "reconstructed",
ancestors = "vrg-pro",
type = "conlang",
}
}


m["azc-num-pro"] = {
m["dac-old"] = {
"Proto-Numic",
"Old Dacian Vergic",
nil,
nil,
"azc-num",
"vrg",
"Latinx",
"Grek",
type = "reconstructed",
ancestors = "vrg-pro",
type = "conlang",
}
}


m["azc-pro"] = {
m["pls-pro"] = {
"Proto-Uto-Aztecan",
"Proto-Plains",
96400333,
nil,
"azc",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed,conlang"
}
}


m["azc-tak-pro"] = {
m["pnn-pro"] = {
"Proto-Takic",
"Proto-Pannonian",
nil,
nil,
"azc-tak",
"gem",
"Latinx",
type = "reconstructed,conlang",
type = "reconstructed",
"Latn",
ancestors = "gem-pro",
}
}


m["azc-tat"] = {
m["pnw-old"] = {
"Tataviam",
"Old West Pannonian",
743736,
nil,
"azc",
"gem",
"Latn",
"Pann",
ancestors = "pnn-pro",
type = "conlang",
}
}


m["ber-pro"] = {
m["pne-old"] = {
"Proto-Berber",
"Old East Pannonian",
2855698,
nil,
"ber",
"gem",
"Latinx",
"Pann",
type = "reconstructed",
ancestors = "pnn-pro",
type = "conlang",
}
}


m["ber-fog"] = {
m["qasu"] = {
"Fogaha",
"Qasunattuuji",
107610173,
nil,
"ber",
"ine",
ancestors = "ine-pro",
"Latn",
"Latn",
type = "conlang",
}
}


m["ber-zuw"] = {
m["qut-nan"] = {
"Zuwara",
"Qut",  
4117169,
nil,
"ber",
"art",
"Latn",
"Latn",
type = "conlang",
}
}


m["bnt-bal"] = {
m["asc-pro"] = {
"Balong",
"Proto-Asisic",
93935237,
nil,
"bnt-bbo",
"asc",
type = "reconstructed,conlang",
"Latn",
"Latn",
}
}


m["bnt-bon"] = {
m["wsc-pro"] = {
"Boma Nkuu",
"Proto-Tephricheic",
nil,
nil,
"bnt",
"asc",
type = "reconstructed,conlang",
ancestors = "asc-pro",
"Latn",
"Latn",
}
}


m["bnt-boy"] = {
m["esc-pro"] = {
"Boma Yumu",
"Proto-Vainodic",
nil,
nil,
"bnt",
"asc",
type = "reconstructed,conlang",
ancestors = "asc-pro",
"Latn",
"Latn",
}
}


m["bnt-bwa"] = {
m["mgx-pro"] = {
"Bwala",
"Proto-Myguxic",
nil,
nil,
"bnt-tek",
"asc",
type = "reconstructed,conlang",
ancestors = "asc-pro",
"Latn",
"Latn",
}
}


m["bnt-cmw"] = {
m["tfr-old"] = {
"Chimwiini",
"Old Tefrian",
4958328,
nil,
"bnt-swh",
"asc",
"Latn",
ancestors = "wsc-pro",
"Latn, Arab, fa-Arab",
type = "conlang",
}
}


m["bnt-ind"] = {
m["tfr-mod"] = {
"Indanga",
"Tefrian",
51412803,
nil,
"bnt",
"asc",
"Latn",
"fa-Arab, Arab",
ancestors = "tfr-old",
type = "conlang",
}
}


m["bnt-lal"] = {
m["acs-old"] = {
"Lala (South Africa)",
"Old Achissari",
6480154,
nil,
"bnt-ngu",
"asc",
"Latn",
"Brah",
ancestors = "wsc-pro",
type = "conlang",
}
}


m["bnt-lwl"] = {
m["acs-wst"] = {
"Lwel",
"West Achissari",
93936908,
nil,
"bnt-bdz",
"asc",
"Latn",
"ur-Arab",
ancestors = "acs-old",
type = "conlang",
}
}


m["bnt-mpi"] = {
m["acs-est"] = {
"Mpiin",
"East Achissari",
93937013,
nil,
"bnt-bdz",
"asc",
"Latn",
"ur-Arab",
ancestors = "acs-old",
type = "conlang",
}
}


m["bnt-mpu"] = {
m["vanc"] = {
"Mpuono", --not to be confused with Mbuun zmp
"Vancian",
36056,
nil,
"bnt",
"asc",
ancestors = "esc-pro",
"Latn",
"Latn",
type = "conlang",
}
}


m["bnt-ngu-pro"] = {
m["buls"] = {
"Proto-Nguni",
"Bulusic",
961559,
nil,
"bnt-ngu",
"asc",
"Latinx",
ancestors = "esc-pro",
type = "reconstructed",
sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.caron},
}
 
m["bnt-phu"] = {
"Phuthi",
33796,
"bnt-ngu",
"Latn",
"Latn",
entry_name = {remove_diacritics = c.grave .. c.acute},
type = "conlang",
}
}


m["bnt-pro"] = {
m["nygm"] = {
"Proto-Bantu",
"Nyongom",
3408025,
nil,
"bnt",
"asc",
"Latinx",
ancestors = "esc-pro",
type = "reconstructed",
"Cyrl",
sort_key = "bnt-pro-sortkey",
type = "conlang",
}
}


m["bnt-sbo"] = {
m["dvs-old"] = {
"South Boma",
"Old Dovasene",
nil,
nil,
"bnt",
"asc",
ancestors = "mgx-pro",
"Latn",
"Latn",
type = "conlang",
}
}


m["bnt-sts-pro"] = {
m["dvs-mod"] = {
"Proto-Sotho-Tswana",
"Dovasene",
nil,
nil,
"bnt-sts",
"asc",
"Latn",
ancestors = "dvs-old",
type = "reconstructed",
"Cyrl",
type = "conlang",
}
}


m["btk-pro"] = {
m["xbr-old"] = {
"Proto-Batak",
"Old Khbirye",
nil,
nil,
"btk",
"asc",
"Latinx",
ancestors = "mgx-pro",
type = "reconstructed",
"Geok",
type = "conlang",
}
}


m["cau-abz-pro"] = {
m["xbr-mod"] = {
"Proto-Abkhaz-Abaza",
"Khbirye",
7251831,
nil,
"cau-abz",
"asc",
"Latinx",
ancestors = "xbr-old",
type = "reconstructed",
"Geor",
type = "conlang",
}
}


m["cau-ava-pro"] = {
"Proto-Avaro-Andian",
nil,
"cau-ava",
"Latinx",
type = "reconstructed",
}


m["cau-cir-pro"] = {
"Proto-Circassian",
7251838,
"cau-cir",
"Latinx",
type = "reconstructed",
}


m["cau-drg-pro"] = {
"Proto-Dargwa",
nil,
"cau-drg",
"Latinx",
type = "reconstructed",
}


m["cau-lzg-pro"] = {
"Proto-Lezghian",
nil,
"cau-lzg",
"Latinx",
type = "reconstructed",
}


m["cau-nec-pro"] = {
"Proto-Northeast Caucasian",
nil,
"cau-nec",
"Latinx",
type = "reconstructed",
}


m["cau-nkh-pro"] = {
"Proto-Nakh",
nil,
"cau-nkh",
"Latinx",
type = "reconstructed",
}


m["cau-nwc-pro"] = {
"Proto-Northwest Caucasian",
7251861,
"cau-nwc",
"Latinx",
type = "reconstructed",
}


m["cau-tsz-pro"] = {
"Proto-Tsezian",
nil,
"cau-tsz",
"Latinx",
type = "reconstructed",
}


m["cba-ata"] = {
"Atanques",
4812783,
"cba",
"Latn",
}


m["cba-cat"] = {
"Catío Chibcha",
7083619,
"cba",
"Latn",
}


m["cba-dor"] = {
"Dorasque",
5297532,
"cba",
"Latn",
}


m["cba-dui"] = {
"Duit",
3041061,
"cba",
"Latn",
}


m["cba-hue"] = {
"Huetar",
35514,
"cba",
"Latn",
}


m["cba-nut"] = {
"Nutabe",
7070405,
"cba",
"Latn",
}


m["cba-pro"] = {
"Proto-Chibchan",
nil,
"cba",
"Latinx",
type = "reconstructed",
}


m["ccn-pro"] = {
"Proto-North Caucasian",
nil,
"ccn",
"Latinx",
type = "reconstructed",
}


m["ccs-pro"] = {
"Proto-Kartvelian",
2608203,
"ccs",
"Latinx",
type = "reconstructed",
entry_name = {
from = {"q̣", "p̣", "ʓ", "ċ"},
to = {"q̇", "ṗ", "ʒ", "c̣"}
},
}


m["ccs-gzn-pro"] = {
"Proto-Georgian-Zan",
23808119,
"ccs-gzn",
"Latinx",
type = "reconstructed",
entry_name = {
from = {"q̣", "p̣", "ʓ", "ċ"},
to = {"q̇", "ṗ", "ʒ", "c̣"}
},
}


m["cdc-cbm-pro"] = {
"Proto-Central Chadic",
nil,
"cdc-cbm",
"Latn",
type = "reconstructed",
}


m["cdc-mas-pro"] = {
"Proto-Masa",
nil,
"cdc-mas",
"Latn",
type = "reconstructed",
}


m["cdc-pro"] = {
"Proto-Chadic",
nil,
"cdc",
"Latn",
type = "reconstructed",
}


m["cdd-pro"] = {
"Proto-Caddoan",
nil,
"cdd",
"Latinx",
type = "reconstructed",
}


m["cel-bry-pro"] = {
"Proto-Brythonic",
156877,
"cel-bry",
"Latinx, Grek",
sort_key = "cel-bry-pro-sortkey",
}


m["cel-gal"] = {
"Gallaecian",
3094789,
"cel",
}


m["cel-gau"] = {
"Gaulish",
29977,
"cel",
"Latn, Grek, Ital",
entry_name = {remove_diacritics = c.macron .. c.breve .. c.diaer},
}


m["cel-pro"] = {
"Proto-Celtic",
653649,
"cel",
"Latinx",
type = "reconstructed",
sort_key = "cel-pro-sortkey",
}


m["chi-pro"] = {
"Proto-Chimakuan",
nil,
"chi",
"Latinx",
type = "reconstructed",
}


m["chm-pro"] = {
"Proto-Mari",
nil,
"chm",
"Latn",
type = "reconstructed",
}


m["cmc-pro"] = {
"Proto-Chamic",
nil,
"cmc",
"Latinx",
type = "reconstructed",
}


m["cpe-mar"] = {
"Maroon Spirit Language",
1093206,
"crp",
"Latn",
ancestors = "en",
}


m["cpe-spp"] = {
"Samoan Plantation Pidgin",
7409948,
"crp",
"Latn",
ancestors = "en",
}


m["crp-gep"] = {
"West Greenlandic Pidgin",
17036301,
"crp",
"Latn",
ancestors = "kl",
}


m["crp-mpp"] = {
"Macau Pidgin Portuguese",
nil,
"crp",
"Hant, Latn",
ancestors = "pt",
sort_key = {Hant = "Hani-sortkey"},
}


m["crp-rsn"] = {
"Russenorsk",
505125,
"crp",
"Cyrl, Latn",
ancestors = "nn, ru",
}


m["crp-tnw"] = {
"Tangwang",
7683179,
"crp",
"Arab, Latn",
ancestors = "cmn, sce",
}


m["crp-tpr"] = {
"Taimyr Pidgin Russian",
16930506,
"crp",
"Cyrl",
ancestors = "ru",
}


m["csu-bba-pro"] = {
"Proto-Bongo-Bagirmi",
nil,
"csu-bba",
"Latinx",
type = "reconstructed",
}


m["csu-maa-pro"] = {
"Proto-Mangbetu",
nil,
"csu-maa",
"Latinx",
type = "reconstructed",
}


m["csu-pro"] = {
"Proto-Central Sudanic",
nil,
"csu",
"Latinx",
type = "reconstructed",
}


m["csu-sar-pro"] = {
"Proto-Sara",
nil,
"csu-sar",
"Latinx",
type = "reconstructed",
}


m["ctp-san"] = {
"San Juan Quiahije Chatino",
nil,
"omq-cha",
"Latinx",
}


m["cus-ash"] = {
"Ashraaf",
4805855,
"cus-som",
"Latn",
}


m["cus-hec-pro"] = {
"Proto-Highland East Cushitic",
nil,
"cus-hec",
"Latinx",
type = "reconstructed",
}


m["cus-som-pro"] = {
"Proto-Somaloid",
nil,
"cus-som",
"Latinx",
type = "reconstructed",
}


m["cus-sou-pro"] = {
"Proto-South Cushitic",
nil,
"cus-sou",
"Latinx",
type = "reconstructed",
}


m["cus-pro"] = {
"Proto-Cushitic",
nil,
"cus",
"Latinx",
type = "reconstructed",
}


m["dmn-dam"] = {
"Dama (Sierra Leone)",
19601574,
"dmn",
"Latn",
}


m["dra-mkn"] = {
"Middle Kannada",
nil,
"dra",
"Knda",
ancestors = "dra-okn",
translit = "kn-translit",
}


m["dra-okn"] = {
"Old Kannada",
15723156,
"dra",
"Knda",
ancestors = "dra-pro",
translit = "kn-translit",
}


m["dra-ote"] = {
"Old Telugu",
nil,
"dra",
"Telu",
ancestors = "dra-pro",
translit = "te-translit",
}


m["dra-pro"] = {
"Proto-Dravidian",
1702853,
"dra",
"Latinx",
type = "reconstructed",
}


m["egx-dem"] = {
"Demotic",
36765,
"egx",
"Latinx, Egyd",
ancestors = "egy",
sort_key = {
from = {"ṱ", "t"},
to = {"h̭", "ḫ"}
},
}


m["elu-prk"] = {
"Helu",
15080869,
"inc-mid",
"Brah",
ancestors = "inc-pra",
translit = "Brah-translit",
}


m["dmn-pro"] = {
"Proto-Mande",
nil,
"dmn",
"Latinx",
type = "reconstructed",
}


m["dmn-mdw-pro"] = {
"Proto-Western Mande",
nil,
"dmn-mdw",
"Latinx",
type = "reconstructed",
}


m["dru-pro"] = {
"Proto-Rukai",
nil,
"map",
"Latinx",
type = "reconstructed",
}


m["esx-esk-pro"] = {
"Proto-Eskimo",
7251842,
"esx-esk",
"Latinx",
type = "reconstructed",
}


m["esx-ink"] = {
"Inuktun",
1671647,
"esx-inu",
"Latn",
}


m["esx-inq"] = {
"Inuinnaqtun",
28070,
"esx-inu",
"Latn",
}


m["esx-inu-pro"] = {
"Proto-Inuit",
nil,
"esx-inu",
"Latinx",
type = "reconstructed",
}


m["esx-pro"] = {
"Proto-Eskimo-Aleut",
7251843,
"esx",
"Latinx",
type = "reconstructed",
}


m["esx-tut"] = {
"Tunumiisut",
15665389,
"esx-inu",
"Latn",
}


m["euq-pro"] = {
"Proto-Basque",
938011,
"euq",
"Latinx",
type = "reconstructed",
}


m["gem-bur"] = {
"Burgundian",
nil,
"gme",
"Latn",
}


m["gem-pro"] = {
"Proto-Germanic",
669623,
"gem",
"Latinx",
type = "reconstructed",
sort_key = "gem-pro-sortkey",
}


m["gme-cgo"] = {
"Crimean Gothic",
36211,
"gme",
"Latn",
}


m["gmq-gut"] = {
"Gutnish",
1256646,
"gmq",
"Latn",
ancestors = "non",
}


m["gmq-jmk"] = {
"Jamtish",
nil,
"gmq",
"Latn",
ancestors = "non",
}


m["gmq-mno"] = {
"Middle Norwegian",
3417070,
"gmq",
"Latn",
ancestors = "non",
}


m["gmq-oda"] = {
"Old Danish",
nil,
"gmq",
"Latn",
ancestors = "non",
entry_name = {remove_diacritics = c.macron},
}


m["gmq-osw"] = {
"Old Swedish",
2417210,
"gmq",
"Latn",
ancestors = "non",
entry_name = {remove_diacritics = c.macron},
}


m["gmq-pro"] = {
"Proto-Norse",
1671294,
"gmq",
"Runr",
translit = "Runr-translit",
}


m["gmq-scy"] = {
"Scanian",
768017,
"gmq",
"Latn",
ancestors = "non",
}


m["gmw-bgh"] = {
"Bergish",
329030,
"gmw",
"Latn",
ancestors = "odt",
}


m["gmw-cfr"] = {
"Central Franconian",
nil,
"gmw",
"Latn",
ancestors = "gmh",
wikimedia_codes = "ksh",
}


m["gmw-ecg"] = {
"East Central German",
499344, -- subsumes Q699284, Q152965
"gmw",
"Latn",
ancestors = "gmh",
}


m["gmw-gts"] = {
"Gottscheerish",
533109,
"gmw",
"Latn",
ancestors = "bar",
}


m["gmw-jdt"] = {
"Jersey Dutch",
1687911,
"gmw",
"Latn",
ancestors = "nl",
}


m["gmw-pro"] = {
"Proto-West Germanic",
78079021,
"gmw",
"Latinx",
type = "reconstructed",
sort_key = "gmw-pro-sortkey",
}


m["gmw-rfr"] = {
"Rhine Franconian",
707007,
"gmw",
"Latn",
ancestors = "gmh",
}


m["gmw-stm"] = {
"Sathmar Swabian",
2223059,
"gmw",
"Latn",
ancestors = "swg",
}


m["gmw-tsx"] = {
"Transylvanian Saxon",
260942,
"gmw",
"Latn",
ancestors = "gmw-cfr",
}


m["gmw-vog"] = {
"Volga German",
312574,
"gmw",
"Latn",
ancestors = "gmw-rfr",
}


m["gmw-zps"] = {
"Zipser German",
205548,
"gmw",
"Latn",
ancestors = "gmh",
}


m["gn-cls"] = {
 
"Classical Guaraní",
 
17478065,
 
"tup-gua",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
m["aav-khs-pro"] = {
"Proto-Khasian",
116773216,
"aav-khs",
"Latn",
"Latn",
ancestors = "gn",
type = "reconstructed",
}
}


m["grk-cal"] = {
m["aav-nic-pro"] = {
"Calabrian Greek",
"Proto-Nicobarese",
1146398,
116773793,
"grk",
"aav-nic",
"Latn",
"Latn",
ancestors = "grk-ita",
type = "reconstructed",
}
}


m["grk-ita"] = {
m["aav-pkl-pro"] = {
"Italiot Greek",
"Proto-Pnar-Khasi-Lyngngam",
nil,
116773259,
"grk",
"aav-pkl",
"Latn, Grek",
"Latn",
ancestors = "gkm",
type = "reconstructed",
entry_name = {remove_diacritics = c.caron .. c.diaerbelow .. c.brevebelow},
sort_key = s["Grek-sortkey"],
}
}


m["grk-mar"] = {
m["aav-pro"] = { -- mkh-pro will merge into this
"Mariupol Greek",
"Proto-Austroasiatic",
4400023,
116773186,
"grk",
"aav",
"Cyrl, Latn, Grek",
"Latn",
ancestors = "gkm",
type = "reconstructed",
translit = "grk-mar-translit",
override_translit = true,
entry_name = "grk-mar-entryname",
sort_key = s["Grek-sortkey"],
}
}


m["grk-pro"] = {
m["afa-pro"] = {
"Proto-Hellenic",
"Proto-Afroasiatic",
1231805,
269125,
"grk",
"afa",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ď", "ľ", "ň", "ř", "ʰ", "ʷ", c.acute, c.macron},
to = {"a", "e", "i", "o", "u", "d", "l", "n", "r", "¯h", "¯w"}
},
}
}


m["hmn-pro"] = {
m["alg-aga"] = {
"Proto-Hmong",
"Agawam",
nil,
nil,
"hmn",
"alg-eas",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["hmx-mie-pro"] = {
m["alg-pro"] = {
"Proto-Mien",
"Proto-Algonquian",
nil,
7251834,
"hmx-mie",
"alg",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
sort_key = {remove_diacritics = "·"},
}
}


m["hmx-pro"] = {
m["alv-ama"] = {
"Proto-Hmong-Mien",
"Amasi",
7251846,
4740400,
"hmx",
"nic-grs",
"Latinx",
"Latn",
type = "reconstructed",
entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron},
}
}


m["hyx-pro"] = {
m["alv-bgu"] = {
"Proto-Armenian",
"Baïnounk Gubëeher",
3848498,
17002646,
"hyx",
"alv-bny",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["iir-nur-pro"] = {
m["alv-bua-pro"] = {
"Proto-Nuristani",
"Proto-Bua",
nil,
116773723,
"iir-nur",
"alv-bua",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["iir-pro"] = {
m["alv-cng-pro"] = {
"Proto-Indo-Iranian",
"Proto-Cangin",
966439,
116773726,
"iir",
"alv-cng",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ijo-pro"] = {
m["alv-edo-pro"] = {
"Proto-Ijoid",
"Proto-Edoid",
nil,
116773206,
"ijo",
"alv-edo",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["inc-ash"] = {
m["alv-fli-pro"] = {
"Ashokan Prakrit",
"Proto-Fali",
nil,
116773754,
"inc-mid",
"alv-fli",
"Brah, Khar",
"Latn",
ancestors = "sa",
type = "reconstructed",
translit = {
Brah = "Brah-translit",
Khar = "Khar-translit",
},
}
}


m["inc-gup"] = {
m["alv-gbe-pro"] = {
"Gurjar Apabhramsa",
"Proto-Gbe",
nil,
116773208,
"inc-mid",
"alv-gbe",
"Deva",
"Latn",
ancestors = "psu",
type = "reconstructed",
}
}


m["inc-kam"] = {
m["alv-gng-pro"] = {
"Kamarupi Prakrit",
"Proto-Guang",
6356097,
116773757,
"inc-mid",
"alv-gng",
"Brah, Sidd",
"Latn",
ancestors = "inc-mgd",
type = "reconstructed",
}
}


m["inc-kha"] = {
m["alv-gtm-pro"] = {
"Khasa Prakrit",
"Proto-Central Togo",
nil,
116773732,
"inc-nor",
"alv-gtm",
"Latn",
"Latn",
ancestors = "inc-pra",
type = "reconstructed",
}
}


m["inc-kho"] = {
m["alv-gwa"] = {
"Kholosi",
"Gwara",
24952008,
16945580,
"inc-snd",
"nic-pla",
"Latn",
"Latn",
ancestors = "inc-vra",
}
}


m["inc-mas"] = {
m["alv-hei-pro"] = {
"Middle Assamese",
"Proto-Heiban",
nil,
116773760,
"inc-eas",
"alv-hei",
"as-Beng",
"Latn",
ancestors = "inc-oas",
type = "reconstructed",
translit = "inc-mas-translit",
}
}


m["inc-mbn"] = {
m["alv-ido-pro"] = {
"Middle Bengali",
"Proto-Idomoid",
nil,
116773764,
"inc-eas",
"alv-ido",
"Beng",
"Latn",
ancestors = "inc-obn",
type = "reconstructed",
translit = "inc-mbn-translit",
}
}


m["inc-mgd"] = {
m["alv-igb-pro"] = {
"Magadhi Prakrit",
"Proto-Igboid",
2652214,
116773765,
"inc-mid",
"alv-igb",
"Brah",
"Latn",
ancestors = "inc-pra",
type = "reconstructed",
translit = "Brah-translit",
}
}


m["inc-mgu"] = {
m["alv-kwa-pro"] = {
"Middle Gujarati",
"Proto-Kwa",
24907429,
116773780,
"inc-wes",
"alv-kwa",
"Deva",
"Latn",
ancestors = "inc-ogu",
type = "reconstructed",
}
 
m["alv-mum-pro"] = {
"Proto-Mumuye",
116773791,
"alv-mum",
"Latn",
type = "reconstructed",
}
 
m["alv-nup-pro"] = {
"Proto-Nupoid",
116773795,
"alv-nup",
"Latn",
type = "reconstructed",
}
}


m["inc-mor"] = {
m["alv-pro"] = {
"Middle Oriya",
"Proto-Atlantic-Congo",
nil,
116732838,
"inc-eas",
"alv",
"Orya",
"Latn",
ancestors = "inc-oor",
type = "reconstructed",
}
}


m["inc-oas"] = {
m["alv-edk-pro"] = {
"Early Assamese",
"Proto-Edekiri",
nil,
nil,
"inc-eas",
"alv-edk",
"as-Beng",
"Latn",
ancestors = "inc-kam",
type = "reconstructed",
translit = "inc-oas-translit",
}
}


m["inc-obn"] = {
m["alv-yor-pro"] = {
"Old Bengali",
"Proto-Yoruba",
nil,
nil,
"inc-eas",
"alv-yor",
"Beng",
"Latn",
ancestors = "inc-mgd",
type = "reconstructed",
}
}


m["inc-ogu"] = {
m["alv-yrd-pro"] = {
"Old Gujarati",
"Proto-Yoruboid",
24907427,
116773824,
"inc-wes",
"alv-yrd",
"Deva",
"Latn",
ancestors = "inc-gup",
type = "reconstructed",
translit = "sa-translit",
}
}


m["inc-ohi"] = {
m["alv-von-pro"] = {
"Old Hindi",
"Proto-Volta-Niger",
48767781,
116773820,
"inc-hiw",
"alv-von",
"Deva",
"Latn",
ancestors = "inc-sap",
type = "reconstructed",
translit = "sa-translit",
}
}


m["inc-oor"] = {
m["apa-pro"] = {
"Old Oriya",
"Proto-Apachean",
nil,
116773135,
"inc-eas",
"apa",
"Orya",
"Latn",
ancestors = "inc-mgd",
type = "reconstructed",
}
}


m["inc-opa"] = {
m["aql-pro"] = {
"Old Punjabi",
"Proto-Algic",
nil,
18389588,
"inc-pan",
"aql",
"Guru, pa-Arab",
"Latn",
ancestors = "inc-tak",
type = "reconstructed",
translit = {
sort_key = {remove_diacritics = "·"},
Guru = "inc-opa-Guru-translit",
["pa-Arab"] = "pa-Arab-translit",
},
entry_name = {remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun},
}
}


m["inc-ork"] = {
m["art-adu"] = {
"Old Kamta",
"Adûni",
nil,
1232159,
"inc-eas",
"art",
"as-Beng",
"Latn",
ancestors = "inc-kam",
type = "appendix-constructed",
translit = "as-translit",
}
}


m["inc-pra"] = {
m["art-bel"] = {
"Prakrit",
"Belter Creole",
192170,
108055510,
"inc-mid",
"art",
"Brah, Deva, Knda",
"Latn",
ancestors = "inc-ash",
type = "appendix-constructed",
translit = {
sort_key = {
Brah = "Brah-translit",
remove_diacritics = c.acute,
Deva = "inc-pra-Deva-translit",
from = {"ɒ"},
Knda = "inc-pra-Knda-translit",
to = {"a"},
},
},
entry_name = {
from = {"ऎ", "ऒ", u(0x0946), u(0x094A), "य़", "ಯ಼", u(0x11071), u(0x11072), u(0x11073), u(0x11074)},
to = {"ए", "ओ", u(0x0947), u(0x094B), "य", "ಯ", "𑀏", "𑀑", u(0x11042), u(0x11044)}
} ,
}
}


m["inc-pro"] = {
m["art-blk"] = {
"Proto-Indo-Aryan",
"Bolak",
23808344,
2909283,
"inc",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "appendix-constructed",
}
}


m["inc-psc"] = {
m["art-bsp"] = {
"Paisaci Prakrit",
"Black Speech",
2995607,
686210,
"inc-mid",
"art",
"Brah",
"Latn, Teng",
ancestors = "inc-ash",
type = "appendix-constructed",
translit = "Brah-translit",
}
}


m["inc-sap"] = {
m["art-com"] = {
"Sauraseni Apabhramsa",
"Communicationssprache",
nil,
35227,
"inc-mid",
"art",
"Deva",
"Latn",
ancestors = "psu",
type = "appendix-constructed",
}
}


m["inc-tak"] = {
m["art-dtk"] = {
"Takka Apabhramsa",
"Dothraki",
nil,
2914733,
"inc-mid",
"art",
"Deva",
"Latn",
ancestors = "inc-pra",
type = "appendix-constructed",
translit = "sa-translit",
}
}


m["inc-vra"] = {
m["art-elo"] = {
"Vracada Apabhramsa",
"Eloi",
nil,
nil,
"inc-mid",
"art",
"Deva",
"Latn",
ancestors = "inc-pra",
type = "appendix-constructed",
translit = "sa-translit",
}
}


m["inc-cen-pro"] = {
m["art-gld"] = {
"Proto-Central Indo-Aryan",
"Goa'uld",
nil,
19823,
"inc-cen",
"art",
"Latinx",
"Latn, Egyp, Mero",
type = "reconstructed",
type = "appendix-constructed",
ancestors = "psu",
}
}


m["ine-ana-pro"] = {
m["art-lap"] = {
"Proto-Anatolian",
"Lapine",
7251833,
6488195,
"ine-ana",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "appendix-constructed",
}
}


m["ine-bsl-pro"] = {
m["art-man"] = {
"Proto-Balto-Slavic",
"Mandalorian",
1703347,
54289,
"ine-bsl",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "appendix-constructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", c.acute, c.macron, "ˀ"},
to = {"a", "e", "i", "o", "u"}
},
}
}


m["ine-pae"] = {
m["art-mun"] = {
"Paeonian",
"Mundolinco",
2705672,
851355,
"ine",
"art",
"polytonic",
"Latn",
translit = "grc-translit",
type = "appendix-constructed",
entry_name = {remove_diacritics = c.macron .. c.breve},
sort_key = s["Grek-sortkey"],
}
}


m["ine-pro"] = {
m["art-nav"] = {
"Proto-Indo-European",
"Na'vi",
37178,
316939,
"ine",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "appendix-constructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ĺ", "ḿ", "ń", "ŕ", "ǵ", "ḱ", "ʰ", "ʷ", "₁", "₂", "₃", c.ringbelow, c.acute, c.macron},
to = {"a", "e", "i", "o", "u", "l", "m", "n", "r", "g'", "k'", "¯h", "¯w", "1", "2", "3"}
},
}
}


m["ine-toc-pro"] = {
m["art-vlh"] = {
"Proto-Tocharian",
"High Valyrian",
37029,
64483808,
"ine-toc",
"art",
"Latinx",
"Latn",
type = "reconstructed",
type = "appendix-constructed",
}
}


m["xme-old"] = {
m["ath-nic"] = {
"Old Median",
"Nicola",
36461,
20609,
"xme",
"ath-nor",
"Grek, Latn",
"Latn",
}
}


m["xme-mid"] = {
m["ath-pro"] = {
"Middle Median",
"Proto-Athabaskan",
nil,
104841722,
"xme",
"ath",
"Latn",
"Latn",
ancestors = "xme-old",
type = "reconstructed",
}
}


m["xme-ker"] = {
m["auf-pro"] = {
"Kermanic",
"Proto-Arawa",
129850,
116773706,
"xme",
"auf",
"fa-Arab, Latn",
"Latn",
ancestors = "xme-mid",
type = "reconstructed",
}
}


m["xme-taf"] = {
m["aus-alu"] = {
"Tafreshi",
"Alungul",
nil,
16827670,
"xme",
"aus-pmn",
"fa-Arab, Latn",
"Latn",
ancestors = "xme-mid",
}
}


m["xme-ttc-pro"] = {
m["aus-and"] = {
"Proto-Tatic",
"Andjingith",
nil,
4754509,
"xme-ttc",
"aus-pmn",
"Latn",
"Latn",
ancestors = "xme-mid",
}
}


m["xme-kls"] = {
m["aus-ang"] = {
"Kalasuri",
"Angkula",
nil,
16828520,
"xme-ttc",
"aus-pmn",
ancestors = "xme-ttc-nor",
"Latn",
}
}


m["xme-klt"] = {
m["aus-arn-pro"] = {
"Kilit",
"Proto-Arnhem",
3612452,
116773720,
"xme-ttc",
"aus-arn",
"Cyrl", -- and fa-Arab?
"Latn",
ancestors = "xme-ttc-pro",
type = "reconstructed",
}
}


m["xme-ott"] = {
m["aus-bra"] = {
"Old Tati",
"Barranbinya",
434697,
4863220,
"xme-ttc",
"aus-pmn",
"fa-Arab, Latinx",
"Latn",
ancestors = "xme-ttc-pro",
}
}


m["ira-pro"] = {
m["aus-brm"] = {
"Proto-Iranian",
"Barunggam",
4167865,
4865914,
"ira",
"aus-pmn",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["ira-mpr-pro"] = {
m["aus-cww-pro"] = {
"Proto-Medo-Parthian",
"Proto-Central New South Wales",
nil,
116773199,
"ira-mpr",
"aus-cww",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ira-kms-pro"] = {
m["aus-dal-pro"] = {
"Proto-Komisenian",
"Proto-Daly",
nil,
116773743,
"ira-kms",
"aus-dal",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ira-zgr-pro"] = {
m["aus-guw"] = {
"Proto-Zaza-Gorani",
"Guwar",
nil,
6652138,
"ira-zgr",
"aus-pam",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["ira-pat-pro"] = {
m["aus-lsw"] = {
"Proto-Pathan",
"Little Swanport",
6652138,
nil,
nil,
"ira-pat",
"Latn",
"Latinx",
type = "reconstructed",
}
}


m["os-pro"] = {
m["aus-mbi"] = {
"Proto-Ossetic",
"Mbiywom",
nil,
6799701,
"xsc",
"aus-pmn",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["xsc-pro"] = {
m["aus-ngk"] = {
"Proto-Scythian",
"Ngkoth",
nil,
7022405,
"xsc",
"aus-pmn",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["xsc-skw-pro"] = {
m["aus-nyu-pro"] = {
"Proto-Saka-Wakhi",
"Proto-Nyulnyulan",
nil,
116773797,
"xsc-skw",
"aus-nyu",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
ancestors = "xsc-pro",
}
}


m["xsc-sak-pro"] = {
m["aus-pam-pro"] = {
"Proto-Saka",
"Proto-Pama-Nyungan",
nil,
33942,
"xsc-sak",
"aus-pam",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
ancestors = "xsc-skw-pro",
}
}


m["ira-sym-pro"] = {
m["aus-tul"] = {
"Proto-Shughni-Yazghulami-Munji",
"Tulua",
nil,
16938541,
"ira-sym",
"aus-pam",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["ira-sgi-pro"] = {
m["aus-uwi"] = {
"Proto-Sanglechi-Ishkashimi",
"Uwinymil",
nil,
7903995,
"ira-sgi",
"aus-arn",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["ira-mny-pro"] = {
m["aus-wdj-pro"] = {
"Proto-Munji-Yidgha",
"Proto-Iwaidjan",
nil,
116773767,
"ira-mny",
"aus-wdj",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
ancestors = "ira-sym-pro",
}
}


m["ira-shy-pro"] = {
m["aus-won"] = {
"Proto-Shughni-Yazghulami",
"Wong-gie",
nil,
nil,
"ira-shy",
"aus-pam",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "ira-sym-pro",
}
}


m["ira-shr-pro"] = {
m["aus-wul"] = {
"Proto-Shughni-Roshani",
"Wulguru",
8039196,
"aus-dyb",
"Latn",
}
 
m["aus-ynk"] = { -- contrast nny
"Yangkaal",
3913770,
"aus-tnk",
"Latn",
}
 
m["awd-amc-pro"] = {
"Proto-Amuesha-Chamicuro",
nil,
nil,
"ira-shy",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
ancestors = "ira-shy-pro",
}
}


m["ira-sgc-pro"] = {
m["awd-kmp-pro"] = {
"Proto-Sogdic",
"Proto-Kampa",
nil,
nil,
"ira-sgc",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ira-wnj"] = {
m["awd-prw-pro"] = {
"Vanji",
"Proto-Paresi-Waura",
nil,
nil,
"ira-shy",
"awd",
"Latinx",
ancestors = "ira-shy-pro",
}
 
m["iro-ere"] = {
"Erie",
5388365,
"iro-nor",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["iro-min"] = {
m["awd-ama"] = {
"Mingo",
"Amarizana",
128531,
16827787,
"iro-nor",
"awd",
"Latn",
"Latn",
}
}


m["iro-nor-pro"] = {
m["awd-ana"] = {
"Proto-North Iroquoian",
"Anauyá",
nil,
16828252,
"iro-nor",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["iro-pro"] = {
m["awd-apo"] = {
"Proto-Iroquoian",
"Apolista",
7251852,
16916645,
"iro",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["itc-pro"] = {
m["awd-cab"] = {
"Proto-Italic",
"Cabre",
17102720,
16850160,
"itc",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["jpx-pro"] = {
m["awd-gnu"] = {
"Proto-Japonic",
"Guinau",
nil,
3504087,
"jpx",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["jpx-ryu-pro"] = {
m["awd-kar"] = {
"Proto-Ryukyuan",
"Cariay",
nil,
16920253,
"jpx-ryu",
"awd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["kar-pro"] = {
m["awd-kaw"] = {
"Proto-Karen",
"Kawishana",
nil,
6379993,
"kar",
"awd-nwk",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["khi-kho-pro"] = {
m["awd-kus"] = {
"Proto-Khoe",
"Kustenau",
nil,
5196293,
"khi-kho",
"awd",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["khi-kun"] = {
m["awd-man"] = {
"ǃKung",
"Manao",
32904,
6746920,
"khi-kxa",
"awd",
"Latn",
"Latn",
}
}


m["ko-ear"] = {
m["awd-mar"] = {
"Early Modern Korean",
"Marawan",
756014,
6755108,
"qfa-kor",
"awd",
"Kore",
"Latn",
ancestors = "okm",
translit = "okm-translit",
entry_name = s["Kore-entryname"],
}
}


m["kro-pro"] = {
m["awd-mpr"] = {
"Proto-Kru",
"Maipure",
nil,
6736872,
"kro",
"awd",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["ku-pro"] = {
m["awd-mrt"] = {
"Proto-Kurdish",
"Mariaté",
nil,
16910017,
"ku",
"awd-nwk",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["map-ata-pro"] = {
m["awd-nwk-pro"] = {
"Proto-Atayalic",
"Proto-Nawiki",
nil,
116773234,
"map-ata",
"awd-nwk",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["map-bms"] = {
m["awd-pai"] = {
"Banyumasan",
"Paikoneka",
33219,
128807835,
"map",
"awd",
"Latn",
"Latn",
}
}


m["map-pro"] = {
m["awd-pas"] = {
"Proto-Austronesian",
"Pasé",
49230,
7143168,
"map",
"awd-nwk",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["mkh-asl-pro"] = {
m["awd-pro"] = {
"Proto-Aslian",
"Proto-Arawak",
55630680,
97573478,
"mkh-asl",
"awd",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mkh-ban-pro"] = {
m["awd-she"] = {
"Proto-Bahnaric",
"Shebayo",
nil,
7492248,
"mkh-ban",
"awd",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["mkh-kat-pro"] = {
m["awd-taa-pro"] = {
"Proto-Katuic",
"Proto-Ta-Arawak",
nil,
116773282,
"mkh-kat",
"awd-taa",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mkh-khm-pro"] = {
m["awd-wai"] = {
"Proto-Khmuic",
"Wainumá",
nil,
16910017,
"mkh-khm",
"awd-nwk",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["mkh-kmr-pro"] = {
m["awd-yum"] = {
"Proto-Khmeric",
"Yumana",
55630684,
8061062,
"mkh-kmr",
"awd-nwk",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["mkh-mmn"] = {
m["azc-caz"] = {
"Middle Mon",
"Cazcan",
nil,
5055514,
"mkh-mnc",
"azc",
"Latinx, Mymr", --and also Pallava
ancestors = "omx",
}
 
m["mkh-mnc-pro"] = {
"Proto-Monic",
nil,
"mkh-mnc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["mkh-mvi"] = {
m["azc-cup-pro"] = {
"Middle Vietnamese",
"Proto-Cupan",
9199,
116773738,
"mkh-vie",
"azc-cup",
"Hani, Latinx",
"Latn",
sort_key = {Hani = "Hani-sortkey"},
type = "reconstructed",
}
}


m["mkh-pal-pro"] = {
m["azc-ktn"] = {
"Proto-Palaungic",
"Kitanemuk",
nil,
3197558,
"mkh-pal",
"azc-tak",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["mkh-pea-pro"] = {
m["azc-nah-pro"] = {
"Proto-Pearic",
"Proto-Nahuan",
nil,
7251860,
"mkh-pea",
"azc-nah",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mkh-pkn-pro"] = {
m["azc-num-pro"] = {
"Proto-Pakanic",
"Proto-Numic",
nil,
116773247,
"mkh-pkn",
"azc-num",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mkh-pro"] = { --This will be merged into 2015 aav-pro.
m["azc-pro"] = {
"Proto-Mon-Khmer",
"Proto-Uto-Aztecan",
7251859,
96400333,
"mkh",
"azc",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mkh-vie-pro"] = {
m["azc-tak-pro"] = {
"Proto-Vietic",
"Proto-Takic",
nil,
116773283,
"mkh-vie",
"azc-tak",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["mnw-tha"] = {
m["azc-tat"] = {
"Thai Mon",
"Tataviam",
nil,
743736,
"mkh-mnc",
"azc",
"Mymr, Thai",
"Latn",
ancestors = "mkh-mmn",
sort_key = {
from = {"[%p]", "ျ", "ြ", "ွ", "ှ", "ၞ", "ၟ", "ၠ", "ၚ", "ဿ", "[็-๎]", "([เแโใไ])([ก-ฮ])ฺ?"},
to = {"", "္ယ", "္ရ", "္ဝ", "္ဟ", "္န", "္မ", "္လ", "င", "သ္သ", "", "%2%1"}
},
}
}


m["mun-pro"] = {
m["ber-pro"] = {
"Proto-Munda",
"Proto-Berber",
nil,
2855698,
"mun",
"ber",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["myn-chl"] = { -- the stage after ''emy''
m["ber-fog"] = {
"Ch'olti'",
"Fogaha",
873995,
107610173,
"myn",
"ber",
"Latinx",
"Latn",
}
}


m["myn-pro"] = {
m["ber-zuw"] = {
"Proto-Mayan",
"Zuwara",
3321532,
4117169,
"myn",
"ber",
"Latinx",
"Latn",
type = "reconstructed",
}
 
m["bnt-bal"] = {
"Balong",
93935237,
"bnt-bbo",
"Latn",
}
}


m["nai-ala"] = {
m["bnt-bon"] = {
"Alazapa",
"Boma Nkuu",
nil,
nil,
nil,
"bnt",
"Latn",
"Latn",
}
}


m["nai-bay"] = {
m["bnt-boy"] = {
"Bayogoula",
"Boma Yumu",
1563704,
nil,
nil,
"bnt",
"Latn",
"Latn",
}
}


m["nai-bvy"] = {
m["bnt-bwa"] = {
"Buena Vista Yokuts",
"Bwala",
4985474,
128810345,
"nai-yok",
"bnt-tek",
"Latn",
"Latn",
}
}


m["nai-cal"] = {
m["bnt-cmw"] = {
"Calusa",
"Chimwiini",
51782,
4958328,
nil,
"bnt-swh",
"Latn",
"Latn",
}
}


m["nai-chi"] = {
m["bnt-ind"] = {
"Chiquimulilla",
"Indanga",
25339627,
51412803,
"nai-xin",
"bnt",
"Latn",
"Latn",
}
}


m["nai-chu-pro"] = {
m["bnt-lal"] = {
"Proto-Chumash",
"Lala (South Africa)",
nil,
6480154,
"nai-chu",
"bnt-ngu",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["nai-cig"] = {
m["bnt-mpi"] = {
"Ciguayo",
"Mpiin",
20741700,
93937013,
nil,
"bnt-bdz",
"Latn",
"Latn",
}
}


m["nai-ckn-pro"] = {
m["bnt-mpu"] = {
"Proto-Chinookan",
"Mpuono", -- not to be confused with Mbuun zmp
nil,
36056,
"nai-ckn",
"bnt",
"Latinx",
type = "reconstructed",
}
 
m["nai-dly"] = {
"Delta Yokuts",
nil,
"nai-yok",
"Latn",
"Latn",
}
}


m["nai-gsy"] = {
m["bnt-ngu-pro"] = {
"Gashowu",
"Proto-Nguni",
nil,
961559,
"nai-yok",
"bnt-ngu",
"Latn",
"Latn",
type = "reconstructed",
sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.caron},
}
}


m["nai-guz"] = {
m["bnt-phu"] = {
"Guazacapán",
"Phuthi",
19572028,
33796,
"nai-xin",
"bnt-ngu",
"Latn",
"Latn",
entry_name = {remove_diacritics = c.grave .. c.acute},
}
}


m["nai-hit"] = {
m["bnt-pro"] = {
"Hitchiti",
"Proto-Bantu",
1542882,
3408025,
"nai-mus",
"bnt",
"Latn",
"Latn",
type = "reconstructed",
sort_key = "bnt-pro-sortkey",
}
}


m["nai-ipa"] = {
m["bnt-sbo"] = {
"Ipai",
"South Boma",
3027474,
nil,
"nai-yuc",
"bnt",
"Latn",
"Latn",
}
}


m["nai-jtp"] = {
m["bnt-sts-pro"] = {
"Jutiapa",
"Proto-Sotho-Tswana",
nil,
116773278,
"nai-xin",
"bnt-sts",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-jum"] = {
m["btk-pro"] = {
"Jumaytepeque",
"Proto-Batak",
25339626,
116773191,
"nai-xin",
"btk",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-kat"] = {
m["cau-abz-pro"] = {
"Kathlamet",
"Proto-Abkhaz-Abaza",
6376639,
7251831,
"nai-ckn",
"cau-abz",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-klp-pro"] = {
m["cau-and-pro"] = {
"Proto-Kalapuyan",
"Proto-Andian",
nil,
nil,
"nai-klp",
"cau-and",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-knm"] = {
m["cau-ava-pro"] = {
"Konomihu",
"Proto-Avaro-Andian",
3198734,
116773187,
"nai-shs",
"cau-ava",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-kry"] = {
m["cau-cir-pro"] = {
"Kings River Yokuts",
"Proto-Circassian",
6413014,
7251838,
"nai-yok",
"cau-cir",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-kum"] = {
m["cau-drg-pro"] = {
"Kumeyaay",
"Proto-Dargwa",
4910139,
116773205,
"nai-yuc",
"cau-drg",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-mac"] = {
m["cau-lzg-pro"] = {
"Macoris",
"Proto-Lezghian",
21070851,
116773223,
nil,
"cau-lzg",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-mdu-pro"] = {
m["cau-nec-pro"] = {
"Proto-Maidun",
"Proto-Northeast Caucasian",
nil,
116773244,
"nai-mdu",
"cau-nec",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-miz-pro"] = {
m["cau-nkh-pro"] = {
"Proto-Mixe-Zoque",
"Proto-Nakh",
nil,
108032840,
"nai-miz",
"cau-nkh",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-mus-pro"] = {
m["cau-nwc-pro"] = {
"Proto-Muskogean",
"Proto-Northwest Caucasian",
nil,
7251861,
"nai-mus",
"cau-nwc",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-nao"] = {
m["cau-tsz-pro"] = {
"Naolan",
"Proto-Tsezian",
6964594,
116773287,
nil,
"cau-tsz",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-nrs"] = {
m["cba-ata"] = {
"New River Shasta",
"Atanques",
7011254,
4812783,
"nai-shs",
"cba",
"Latn",
"Latn",
}
}


m["nai-nvy"] = {
m["cba-cat"] = {
"Northern Valley Yokuts",
"Catío Chibcha",
nil,
7083619,
"nai-yok",
"cba",
"Latn",
"Latn",
}
}


m["nai-okw"] = {
m["cba-dor"] = {
"Okwanuchu",
"Dorasque",
3350126,
5297532,
"nai-shs",
"cba",
"Latn",
"Latn",
}
}


m["nai-per"] = {
m["cba-dui"] = {
"Pericú",
"Duit",
3375369,
3041061,
nil,
"cba",
"Latn",
"Latn",
}
}


m["nai-pic"] = {
m["cba-hue"] = {
"Picuris",
"Huetar",
7191257,
35514,
"nai-kta",
"cba",
"Latn",
"Latn",
}
}


m["nai-plp-pro"] = {
m["cba-nut"] = {
"Proto-Plateau Penutian",
"Nutabe",
nil,
7070405,
"nai-plp",
"cba",
"Latinx",
type = "reconstructed",
}
 
m["nai-ply"] = {
"Palewyami",
2387391,
"nai-yok",
"Latn",
"Latn",
}
}


m["nai-pom-pro"] = {
m["cba-pro"] = {
"Proto-Pomo",
"Proto-Chibchan",
nil,
116773203,
"nai-pom",
"cba",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-qng"] = {
m["ccs-pro"] = {
"Quinigua",
"Proto-Kartvelian",
36360,
2608203,
nil,
"ccs",
"Latn",
"Latn",
type = "reconstructed",
entry_name = {
from = {"q̣", "p̣", "ʓ", "ċ"},
to = {"q̇", "ṗ", "ʒ", "c̣"}
},
}
}


m["nai-sca-pro"] = { -- NB 'sio-pro' "Proto-Siouan" which is Proto-Western Siouan
m["ccs-gzn-pro"] = {
"Proto-Siouan-Catawban",
"Proto-Georgian-Zan",
nil,
23808119,
"nai-sca",
"ccs-gzn",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
entry_name = {
from = {"q̣", "p̣", "ʓ", "ċ"},
to = {"q̇", "ṗ", "ʒ", "c̣"}
},
}
}


m["nai-sin"] = {
m["cdc-cbm-pro"] = {
"Sinacantán",
"Proto-Central Chadic",
24190249,
116773197,
"nai-xin",
"cdc-cbm",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-sln"] = {
m["cdc-mas-pro"] = {
"Salvadoran Lenca",
"Proto-Masa",
3229434,
116773789,
"nai-len",
"cdc-mas",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-spt"] = {
m["cdc-pro"] = {
"Sahaptin",
"Proto-Chadic",
3833015,
116773201,
"nai-shp",
"cdc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-svy"] = {
m["cdd-pro"] = {
"Southern Valley Yokuts",
"Proto-Caddoan",
nil,
116773725,
"nai-yok",
"cdd",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-tap"] = {
m["cel-bry-pro"] = {
"Tapachultec",
"Proto-Brythonic",
7684401,
1248800,
"nai-miz",
"cel-bry",
"Latn",
"Latn, Polyt",
translit = {
Polyt = "grc-translit",
},
display_text = {
Polyt = s["Polyt-displaytext"],
},
entry_name = {
Polyt = s["Polyt-entryname"],
},
sort_key = {
Latn = "cel-bry-pro-sortkey",
Polyt = s["Polyt-sortkey"],
},
}
}


m["nai-taw"] = {
m["cel-gal"] = {
"Tawasa",
"Modern Gallaecian",
7689233,
nil, --3094789,
nil,
"cel-his",
"Latn",
"Latn"
}
}


m["nai-teq"] = {
m["cel-gau"] = {
"Tequistlatec",
"Gaulish",
2964454,
29977,
"nai-tqn",
"cel",
"Latn",
"Latn, Polyt, Ital",
translit = {
Polyt = "grc-translit",
Ital = "Ital-translit"
},
display_text = {
Polyt = s["Polyt-displaytext"],
},
entry_name = {
Latn = {remove_diacritics = c.macron .. c.breve .. c.diaer},
Polyt = s["Polyt-entryname"],
},
sort_key = {
Latn = "cel-bry-pro-sortkey",
Polyt = s["Polyt-sortkey"],
},
}
}


m["nai-tip"] = {
m["cel-pro"] = {
"Tipai",
"Proto-Celtic",
3027471,
653649,
"nai-yuc",
"cel",
"Latn",
"Latn",
type = "reconstructed",
sort_key = "cel-pro-sortkey",
}
}


m["nai-tky"] = {
m["chi-pro"] = {
"Tule-Kaweah Yokuts",
"Proto-Chimakuan",
7851988,
116773734,
"nai-yok",
"chi",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nai-tot-pro"] = {
m["chm-pro"] = {
"Proto-Totozoquean",
"Proto-Mari",
nil,
116773788,
"nai-tot",
"chm",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-tsi-pro"] = {
m["cmc-pro"] = {
"Proto-Tsimshianic",
"Proto-Chamic",
nil,
114793834,
"nai-tsi",
"cmc",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nai-utn-pro"] = {
m["crp-bip"] = {
"Proto-Utian",
"Basque-Icelandic Pidgin",
nil,
810378,
"nai-utn",
"crp",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "eu",
}
}


m["nai-wai"] = {
m["crp-gep"] = {
"Waikuri",
"West Greenlandic Pidgin",
3118702,
17036301,
nil,
"crp",
"Latn",
"Latn",
ancestors = "kl",
}
}


m["nai-yup"] = {
m["crp-mar"] = {
"Yupiltepeque",
"Maroon Spirit Language",
25339628,
1093206,
"nai-xin",
"crp",
"Latn",
"Latn",
ancestors = "en",
}
}


m["nds-de"] = {
m["crp-mpp"] = {
"German Low German",
"Macau Pidgin Portuguese",
25433,
128804537,
"gmw",
"crp",
"Latn",
"Hant, Latn",
ancestors = "nds",
ancestors = "pt",
wikimedia_codes = "nds",
sort_key = {Hant = "Hani-sortkey"},
}
}


m["nds-nl"] = {
m["crp-rsn"] = {
"Dutch Low Saxon",
"Russenorsk",
516137,
505125,
"gmw",
"crp",
"Latn",
"Cyrl, Latn",
ancestors = "nds",
ancestors = "nn, ru",
translit = {Cyrl = "ru-translit"},
}
}


m["ngf-pro"] = {
m["crp-spp"] = {
"Proto-Trans-New Guinea",
"Samoan Plantation Pidgin",
nil,
7409948,
"ngf",
"crp",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "en",
}
}


m["nic-bco-pro"] = {
m["crp-slb"] = {
"Proto-Benue-Congo",
"Solombala English",
nil,
7558525,
"nic-bco",
"crp",
"Latn",
"Cyrl, Latn",
type = "reconstructed",
ancestors = "en, ru",
translit = {Cyrl = "ru-translit"},
}
}


m["nic-bod-pro"] = {
m["crp-tpr"] = {
"Proto-Bantoid",
"Taimyr Pidgin Russian",
nil,
16930506,
"nic-bod",
"crp",
"Cyrl",
ancestors = "ru",
translit = "ru-translit",
}
 
m["csu-bba-pro"] = {
"Proto-Bongo-Bagirmi",
116773722,
"csu-bba",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-eov-pro"] = {
m["csu-maa-pro"] = {
"Proto-Eastern Oti-Volta",
"Proto-Mangbetu",
nil,
116773786,
"nic-eov",
"csu-maa",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-gns-pro"] = {
m["csu-pro"] = {
"Proto-Gurunsi",
"Proto-Central Sudanic",
nil,
116773730,
"nic-gns",
"csu",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-grf-pro"] = {
m["csu-sar-pro"] = {
"Proto-Grassfields",
"Proto-Sara",
nil,
116773809,
"nic-grf",
"csu-sar",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-gur-pro"] = {
m["cus-ash"] = {
"Proto-Gur",
"Ashraaf",
nil,
4805855,
"nic-gur",
"cus-som",
"Latn",
}
 
m["cus-hec-pro"] = {
"Proto-Highland East Cushitic",
116773761,
"cus-hec",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-jkn-pro"] = {
m["cus-som-pro"] = {
"Proto-Jukunoid",
"Proto-Somaloid",
nil,
nil,
"nic-jkn",
"cus-som",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-lcr-pro"] = {
m["cus-sou-pro"] = {
"Proto-Lower Cross River",
"Proto-South Cushitic",
nil,
126081567,
"nic-lcr",
"cus-sou",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-ogo-pro"] = {
m["cus-pro"] = {
"Proto-Ogoni",
"Proto-Cushitic",
nil,
116773204,
"nic-ogo",
"cus",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-ovo-pro"] = {
m["dmn-dam"] = {
"Proto-Oti-Volta",
"Dama (Sierra Leone)",
nil,
19601574,
"nic-ovo",
"dmn",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["nic-plt-pro"] = {
m["dra-bry"] = {
"Proto-Plateau",
"Beary",
1089116,
"qfa-mix",
"Mlym, Knda",
ancestors = "ml, tcy",
translit = {
Mlym = "ml-translit",
Knda = "kn-translit",
},
}
 
m["dra-cen-pro"] = {
"Proto-Central Dravidian",
nil,
nil,
"nic-plt",
"dra-cen",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-pro"] = {
m["dra-mkn"] = {
"Proto-Niger-Congo",
"Middle Kannada",
nil,
128810572,
"nic",
"dra-kan",
"Latn",
"Knda",
type = "reconstructed",
translit = "kn-translit",
}
}


m["nic-ubg-pro"] = {
m["dra-nor-pro"] = {
"Proto-Ubangian",
"Proto-North Dravidian",
nil,
124433593,
"nic-ubg",
"dra-nor",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["nic-ucr-pro"] = {
m["dra-okn"] = {
"Proto-Upper Cross River",
"Old Kannada",
nil,
15723156,
"nic-ucr",
"dra-kan",
"Latn",
"Knda",
type = "reconstructed",
translit = "kn-translit",
}
}


m["nic-vco-pro"] = {
m["dra-ote"] = {
"Proto-Volta-Congo",
"Old Telugu",
nil,
126720868,
"nic-vco",
"dra-tel",
"Latn",
"Telu",
type = "reconstructed",
translit = "te-translit",
}
}


m["nub-har"] = {
m["dra-pro"] = {
"Haraza",
"Proto-Dravidian",
19572059,
1702853,
"nub",
"dra",
"Arab, Latn",
}
 
m["nub-pro"] = {
"Proto-Nubian",
nil,
"nub",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-cha-pro"] = {
m["dra-sdo-pro"] = {
"Proto-Chatino",
"Proto-South Dravidian I",
nil,
104847952, -- Wikipedia's "Proto-South Dravidian" is Proto-South Dravidian I in this scheme.
"omq-cha",
"dra-sdo",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-maz-pro"] = {
m["dra-sdt-pro"] = {
"Proto-Mazatec",
"Proto-South Dravidian II",
nil,
128885257,
"omq-maz",
"dra-sdt",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-mix-pro"] = {
m["dra-sou-pro"] = {
"Proto-Mixtecan",
"Proto-South Dravidian",
nil,
128886121,
"omq-mix",
"dra-sou",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-mxt-pro"] = {
m["egx-dem"] = {
"Proto-Mixtec",
"Demotic",
nil,
36765,
"omq-mxt",
"egx",
"Latn, Egyd, Polyt",
translit = {
Polyt = "grc-translit",
},
display_text = {
Polyt = s["Polyt-displaytext"],
},
entry_name = {
Polyt = s["Polyt-entryname"],
},
sort_key = {
Latn = {
remove_diacritics = "'%-%s",
from = {"ꜣ", "j", "e", "ꜥ", "y", "w", "b", "p", "f", "m", "n", "r", "l", "ḥ", "ḫ", "h̭", "ẖ", "h", "š", "s", "q", "k", "g", "ṱ", "ṯ", "t", "ḏ", "%.", "⸗"},
to = {p[1], p[2], p[3], p[4], p[5], p[6], p[7], p[8], p[9], p[10], p[11], p[12], p[13], p[15], p[16], p[16], p[17], p[14], p[19], p[18], p[20], p[21], p[22], p[23], p[24], p[23], p[25], p[26], p[26]}
},
Polyt = s["Polyt-sortkey"],
},
}
 
m["dmn-pro"] = {
"Proto-Mande",
116773785,
"dmn",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-otp-pro"] = {
m["dmn-mdw-pro"] = {
"Proto-Oto-Pamean",
"Proto-Western Mande",
nil,
116773822,
"omq-otp",
"dmn-mdw",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
ancestors = "omq-pro",
}
}


m["omq-pro"] = {
m["dru-pro"] = {
"Proto-Oto-Manguean",
"Proto-Rukai",
33669,
116773807,
"omq",
"map",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-tel"] = {
m["esx-esk-pro"] = {
"Teposcolula Mixtec",
"Proto-Eskimo",
nil,
7251842,
"omq-mxt",
"esx-esk",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["omq-teo"] = {
m["esx-ink"] = {
"Teojomulco Chatino",
"Inuktun",
25340451,
1671647,
"omq-cha",
"esx-inu",
"Latn",
}
 
m["esx-inq"] = {
"Inuinnaqtun",
28070,
"esx-inu",
"Latn",
"Latn",
}
}


m["omq-tri-pro"] = {
m["esx-inu-pro"] = {
"Proto-Trique",
"Proto-Inuit",
nil,
60785588,
"omq-tri",
"esx-inu",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-zap-pro"] = {
m["esx-pro"] = {
"Proto-Zapotecan",
"Proto-Eskimo-Aleut",
nil,
7251843,
"omq-zap",
"esx",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omq-zpc-pro"] = {
m["esx-tut"] = {
"Proto-Zapotec",
"Tunumiisut",
nil,
15665389,
"omq-zpc",
"esx-inu",
"Latn",
}
 
m["euq-pro"] = {
"Proto-Basque",
938011,
"euq",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omv-aro-pro"] = {
m["gba-pro"] = {
"Proto-Aroid",
"Proto-Gbaya",
nil,
nil,
"omv-aro",
"gba",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["omv-diz-pro"] = {
m["gem-pro"] = {
"Proto-Dizoid",
"Proto-Germanic",
nil,
669623,
"omv-diz",
"gem",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
sort_key = "gem-pro-sortkey",
}
}


m["omv-pro"] = {
m["gme-bur"] = {
"Proto-Omotic",
"Burgundian",
nil,
47625,
"omv",
"gme",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["oto-otm-pro"] = {
m["gme-cgo"] = {
"Proto-Otomi",
"Crimean Gothic",
nil,
36211,
"oto-otm",
"gme",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "oto-pro",
}
}


m["oto-pro"] = {
m["gmq-gut"] = {
"Proto-Otomian",
"Gutnish",
nil,
1256646,
"oto",
"gmq",
"Latn",
"Latn",
type = "reconstructed",
ancestors = "gmq-ogt",
ancestors = "omq-otp-pro",
}
}


m["paa-kom"] = {
m["gmq-jmk"] = {
"Kómnzo",
"Jamtish",
18344310,
35512,
"paa-yam",
"gmq-eas",
"Latn",
"Latn",
}
}


m["paa-kwn"] = {
m["gmq-mno"] = {
"Kuwani",
"Middle Norwegian",
6449056,
3417070,
"paa",
"gmq-wes",
"Latn",
"Latn",
}
}


m["paa-nha-pro"] = {
m["gmq-oda"] = {
"Proto-North Halmahera",
"Old Danish",
nil,
12330003,
"paa-nha",
"gmq-eas",
"Latn",
"Latn, Runr",
type = "reconstructed"
entry_name = {remove_diacritics = c.macron},
}
}


m["paa-nun"] = {
m["gmq-ogt"] = {
"Nungon",
"Old Gutnish",
nil,
1133488,
"paa",
"gmq",
"Latn",
"Latn",
ancestors = "non",
}
}


m["phi-din"] = {
m["gmq-osw"] = {
"Dinapigue Agta",
"Old Swedish",
16945774,
2417210,
"phi",
"gmq-eas",
"Latn",
"Latn, Runr",
entry_name = {remove_diacritics = c.macron},
}
}


m["phi-kal-pro"] = {
m["gmq-pro"] = {
"Proto-Kalamian",
"Proto-Norse",
nil,
1671294,
"phi-kal",
"gmq",
"Latn",
"Runr",
type = "reconstructed",
translit = "Runr-translit",
}
}


m["phi-nag"] = {
m["gmq-scy"] = {
"Nagtipunan Agta",
"Scanian",
16966111,
768017,
"phi",
"gmq-eas",
"Latn",
"Latn",
}
}


m["phi-pro"] = {
m["gmw-bgh"] = {
"Proto-Philippine",
"Bergish",
18204898,
329030,
"phi",
"gmw-frk",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["poz-abi"] = {
m["gmw-cfr"] = {
"Abai",
"Central Franconian",
19570729,
572197,
"poz-san",
"gmw-hgm",
"Latn",
"Latn",
ancestors = "gmh",
wikimedia_codes = "ksh",
}
}


m["poz-bal"] = {
m["gmw-ecg"] = {
"Baliledo",
"East Central German",
4850912,
499344, -- subsumes Q699284, Q152965
"poz",
"gmw-hgm",
"Latn",
"Latn",
ancestors = "gmh",
}
}


m["poz-btk-pro"] = {
m["gmw-fin"] = {
"Proto-Bungku-Tolaki",
"Fingallian",
nil,
3072588,
"poz-btk",
"gmw-ian",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["poz-cet-pro"] = {
m["gmw-gts"] = {
"Proto-Central-Eastern Malayo-Polynesian",
"Gottscheerish",
2269883,
533109,
"poz-cet",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "bar",
}
}


m["poz-hce-pro"] = {
m["gmw-jdt"] = {
"Proto-Halmahera-Cenderawasih",
"Jersey Dutch",
nil,
1687911,
"poz-hce",
"gmw-frk",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "nl",
}
}


m["poz-lgx-pro"] = {
m["gmw-msc"] = {
"Proto-Lampungic",
"Middle Scots",
nil,
3327000,
"poz-lgx",
"gmw-ang",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "enm-esc",
}
}


m["poz-mcm-pro"] = {
m["gmw-pro"] = {
"Proto-Malayo-Chamic",
"Proto-West Germanic",
nil,
78079021,
"poz-mcm",
"gmw",
"Latinx",
"Latn",
type = "reconstructed",
-- type = "reconstructed",
-- largely but not entirely reconstructed (like Proto-Norse); see April '24 BP, set back to reconstructed (?) if 'anti-asterisk' is added
sort_key = "gmw-pro-sortkey",
}
}


m["poz-mly-pro"] = {
m["gmw-rfr"] = {
"Proto-Malayic",
"Rhine Franconian",
nil,
707007,
"poz-mly",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "gmh",
}
}


m["poz-msa-pro"] = {
m["gmw-stm"] = {
"Proto-Malayo-Sumbawan",
"Sathmar Swabian",
nil,
2223059,
"poz-msa",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "swg",
}
}


m["poz-oce-pro"] = {
m["gmw-tsx"] = {
"Proto-Oceanic",
"Transylvanian Saxon",
141741,
260942,
"poz-oce",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "gmw-cfr",
}
}


m["poz-pep-pro"] = {
m["gmw-vog"] = {
"Proto-Eastern Polynesian",
"Volga German",
nil,
312574,
"poz-pep",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "gmw-rfr",
}
}


m["poz-pnp-pro"] = {
m["gmw-zps"] = {
"Proto-Nuclear Polynesian",
"Zipser German",
nil,
205548,
"poz-pnp",
"gmw-hgm",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "gmh",
}
}


m["poz-pol-pro"] = {
m["gn-cls"] = {
"Proto-Polynesian",
"Classical Guaraní",
1658709,
17478065,
"poz-pol",
"tup-gua",
"Latinx",
"Latn",
type = "reconstructed",
ancestors = "gn",
}
}


m["poz-pro"] = {
m["grk-cal"] = {
"Proto-Malayo-Polynesian",
"Calabrian Greek",
3832960,
1146398,
"poz",
"grk",
"Latinx",
"Latn, Grek",
type = "reconstructed",
ancestors = "grk-ita",
translit = {
Grek = "el-translit",
},
display_text = {
Grek = s["Grek-displaytext"],
},
entry_name = {
Grek = s["Grek-entryname"],
},
sort_key = {
Grek = s["Grek-sortkey"],
},
}
}


m["poz-ssw-pro"] = {
m["grk-ita"] = {
"Proto-South Sulawesi",
"Italiot Greek",
nil,
19720507,
"poz-ssw",
"grk",
"Latinx",
"Latn, Grek",
type = "reconstructed",
ancestors = "gkm",
translit = {
Grek = "el-translit",
},
display_text = {
Grek = s["Grek-displaytext"],
},
entry_name = {
Grek = s["Grek-entryname"],
},
sort_key = {
Grek = s["Grek-sortkey"],
},
}
}


m["poz-sus-pro"] = {
m["grk-mar"] = {
"Proto-Sunda-Sulawesi",
"Mariupol Greek",
nil,
4400023,
"poz-sus",
"grk",
"Latinx",
"Cyrl, Latn, Grek",
type = "reconstructed",
ancestors = "gkm",
translit = {
Cyrl = "grk-mar-translit",
Grek = "grk-mar-translit",
},
override_translit = true,
display_text = {
Grek = s["Grek-displaytext"],
},
entry_name = {
Cyrl = {remove_diacritics = c.acute},
Grek = s["Grek-entryname"],
},
sort_key = {
Grek = s["Grek-sortkey"],
},
}
}


m["poz-swa-pro"] = {
m["grk-pro"] = {
"Proto-North Sarawak",
"Proto-Hellenic",
nil,
1231805,
"poz-swa",
"grk",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ď", "ľ", "ň", "ř", "ʰ", "ʷ", c.acute, c.macron},
to = {"a", "e", "i", "o", "u", "d", "l", "n", "r", "¯h", "¯w"}
},
}
}


m["pqe-pro"] = {
m["hmn-pro"] = {
"Proto-Eastern Malayo-Polynesian",
"Proto-Hmong",
2269883,
116773210,
"pqe",
"hmn",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["pra-niy"] = {
m["hmx-mie-pro"] = {
 
"Proto-Mien",
"Niya Prakrit",
116773229,
nil,
"hmx-mie",
"inc-mid",
"Latn",
"Khar",
ancestors = "inc-ash",
translit = "Khar-translit",
}
 
m["qfa-adm-pro"] = {
"Proto-Great Andamanese",
nil,
"qfa-adm",
"Latinx",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-bet-pro"] = {
m["hmx-pro"] = {
"Proto-Be-Tai",
"Proto-Hmong-Mien",
nil,
7251846,
"qfa-bet",
"hmx",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-cka-pro"] = {
m["hyx-pro"] = {
"Proto-Chukotko-Kamchatkan",
"Proto-Armenian",
7251837,
3848498,
"qfa-cka",
"hyx",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-hur-pro"] = {
m["iir-nur-pro"] = {
"Proto-Hurro-Urartian",
"Proto-Nuristani",
nil,
116773248,
"qfa-hur",
"iir-nur",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-kad-pro"] = {
m["iir-pro"] = {
"Proto-Kadu",
"Proto-Indo-Iranian",
nil,
966439,
"qfa-kad",
"iir",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-kms-pro"] = {
m["ijo-pro"] = {
"Proto-Kam-Sui",
"Proto-Ijoid",
nil,
116773766,
"qfa-kms",
"ijo",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-kor-pro"] = {
m["inc-apa"] = {
"Proto-Koreanic",
"Apabhramsa",
467883,
616419,
"qfa-kor",
"inc-mid",
"Latinx",
"Deva, Shrd, Sidd",
type = "reconstructed",
ancestors = "pra",
translit = {
Deva = "sa-translit",
Shrd = "Shrd-translit",
Sidd = "Sidd-translit",
},
}
}


m["qfa-kra-pro"] = {
m["inc-ash"] = {
"Proto-Kra",
"Ashokan Prakrit",
7251854,
104854379,
"qfa-kra",
"inc-mid",
"Latinx",
"Brah, Khar",
type = "reconstructed",
ancestors = "sa",
translit = {
Brah = "Brah-translit",
Khar = "Khar-translit",
},
}
}


m["qfa-lic-pro"] = {
m["inc-kam"] = {
"Proto-Hlai",
"Kamarupi Prakrit",
7251845,
6356097,
"qfa-lic",
"inc-bas",
"Latinx",
"Brah, Sidd",
type = "reconstructed",
translit = {
Brah = "Brah-translit",
Sidd = "Sidd-translit",
},
}
}


m["qfa-onb-pro"] = {
m["inc-kho"] = {
"Proto-Be",
"Kholosi",
nil,
24952008,
"qfa-onb",
"inc-snd",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["qfa-ong-pro"] = {
m["inc-krn-pro"] = {
"Proto-Ongan",
"Proto-Kamta",
nil,
128816843,
"qfa-ong",
"inc-bas",
"Latinx",
"Latn",
ancestors = "inc-kam",
type = "reconstructed",
type = "reconstructed",
}
}


m["qfa-tak-pro"] = {
m["inc-mas"] = {
"Proto-Kra-Dai",
"Middle Assamese",
nil,
128806836,
"qfa-tak",
"inc-bas",
"Latn",
"as-Beng",
type = "reconstructed",
ancestors = "inc-oas",
translit = "inc-mas-translit",
}
}


m["qfa-xgx-tuh"] = {
m["inc-mbn"] = {
"Tuyuhun",
"Middle Bengali",
48816625,
113559927,
"qfa-xgx",
"inc-bas",
"Hani, Latinx",
"Beng",
sort_key = {Hani = "Hani-sortkey"},
ancestors = "inc-obn",
translit = "inc-mbn-translit",
}
}


m["qfa-xgx-tuo"] = {
m["inc-mgu"] = {
"Tuoba",
"Middle Gujarati",
48816629,
24907429,
"qfa-xgx",
"inc-wes",
"Hani, Latinx",
"Deva",
sort_key = {Hani = "Hani-sortkey"},
ancestors = "inc-ogu",
}
}


m["qfa-xgx-wuh"] = {
m["inc-mor"] = {
"Wuhuan",
"Middle Odia",
118976867,
128810882,
"qfa-xgx",
"inc-eas",
"Hani, Latinx",
"Orya",
sort_key = {Hani = "Hani-sortkey"},
ancestors = "inc-oor",
}
}


m["qfa-xgx-xbi"] = {
m["inc-oas"] = {
"Xianbei",
"Early Assamese",
4448647,
85758237,
"qfa-xgx",
"inc-bas",
"Hani, Latinx",
"as-Beng",
sort_key = {Hani = "Hani-sortkey"},
ancestors = "inc-kam",
translit = "inc-oas-translit",
}
}


m["qfa-yen-pro"] = {
m["inc-oaw"] = {
"Proto-Yeniseian",
"Old Awadhi",
27639,
nil,
"qfa-yen",
"inc-hie",
"Latinx",
"Deva, Kthi, ur-Arab",
type = "reconstructed",
entry_name = {
from = {"هٔ", "ۂ"}, -- character "ۂ" code U+06C2 to "ه" and "هٔ"‎ (U+0647 + U+0654) to "ه"
to = {"ہ", "ہ"},
remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna .. c.superalef
},
translit = {
Deva = "sa-translit",
Kthi = "sa-Kthi-translit",
["ur-Arab"] = "inc-ohi-translit",
},
}
}


m["qfa-yuk-pro"] = {
m["inc-obn"] = {
"Proto-Yukaghir",
"Old Bengali",
nil,
113559926,
"qfa-yuk",
"inc-bas",
"Latinx",
"Beng",
type = "reconstructed",
}
}


m["qwe-kch"] = {
m["inc-ogu"] = {
"Kichwa",
"Old Gujarati",
1740805,
24907427,
"qwe",
"inc-wes",
"Latn",
"Deva",
ancestors = "qu",
translit = "sa-translit",
}
}


m["roa-ang"] = {
m["inc-ohi"] = {
"Angevin",
"Old Hindi",
56782,
48767781,
"roa-oil",
"inc-hiw",
"Latn",
"Deva, ur-Arab",
sort_key = s["roa-oil-sortkey"],
entry_name = {
from = {"هٔ", "ۂ"}, -- character "ۂ" code U+06C2 to "ه" and "هٔ"‎ (U+0647 + U+0654) to "ه"
to = {"ہ", "ہ"},
remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna .. c.superalef
},
translit = {
Deva = "sa-translit",
["ur-Arab"] = "inc-ohi-translit",
},
}
}


m["roa-bbn"] = {
m["inc-oor"] = {
"Bourbonnais-Berrichon",
"Old Odia",
nil,
128807801,
"roa-oil",
"inc-eas",
"Latn",
"Orya",
sort_key = s["roa-oil-sortkey"],
}
}


m["roa-brg"] = {
m["inc-opa"] = {
"Bourguignon",
"Old Punjabi",
508332,
115270971,
"roa-oil",
"inc-pan",
"Latn",
"Guru, pa-Arab",
sort_key = s["roa-oil-sortkey"],
translit = {
Guru = "inc-opa-Guru-translit",
["pa-Arab"] = "pa-Arab-translit",
},
entry_name = {remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun},
}
}


m["roa-cha"] = {
m["inc-pro"] = {
"Champenois",
"Proto-Indo-Aryan",
430018,
23808344,
"roa-oil",
"inc",
"Latn",
"Latn",
sort_key = s["roa-oil-sortkey"],
type = "reconstructed",
}
}


m["roa-fcm"] = {
m["ine-ana-pro"] = {
"Franc-Comtois",
"Proto-Anatolian",
510561,
7251833,
"roa-oil",
"ine-ana",
"Latn",
"Latn",
sort_key = s["roa-oil-sortkey"],
type = "reconstructed",
}
}


m["roa-gal"] = {
m["ine-bsl-pro"] = {
"Gallo",
"Proto-Balto-Slavic",
37300,
1703347,
"roa-oil",
"ine-bsl",
"Latn",
"Latn",
sort_key = s["roa-oil-sortkey"],
type = "reconstructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", c.acute, c.macron, "ˀ"},
to = {"a", "e", "i", "o", "u"}
},
}
}


m["roa-leo"] = {
m["ine-kal"] = {
"Leonese",
"Kalašma",
34108,
122770439,
"roa-ibe",
"ine-ana",
"Latn",
"Xsux",
ancestors = "roa-ole",
}
}


m["roa-lor"] = {
m["ine-pae"] = {
"Lorrain",
"Paeonian",
671198,
2705672,
"roa-oil",
"ine",
"Latn",
"Polyt",
sort_key = s["roa-oil-sortkey"],
translit = "grc-translit",
display_text = s["Polyt-displaytext"],
entry_name = s["Polyt-entryname"],
sort_key = s["Polyt-sortkey"],
}
}


m["roa-oan"] = {
m["ine-pro"] = {
"Navarro-Aragonese",
"Proto-Indo-European",
2736184,
37178,
"roa-ibe",
"ine",
"Latn",
"Latn",
type = "reconstructed",
sort_key = {
from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ĺ", "ḿ", "ń", "ŕ", "ǵ", "ḱ", "ʰ", "ʷ", "₁", "₂", "₃", c.ringbelow, c.acute, c.macron},
to = {"a", "e", "i", "o", "u", "l", "m", "n", "r", "g'", "k'", "¯h", "¯w", "1", "2", "3"}
},
}
}


m["roa-oca"] = {
m["ine-toc-pro"] = {
"Old Catalan",
"Proto-Tocharian",
15478520,
37029,
"roa-ocr",
"ine-toc",
"Latn",
"Latn",
sort_key = {
type = "reconstructed",
from = {"à", "[èé]", "[íï]", "[òó]", "[úü]", "ç", "·"},
to = {"a", "e", "i", "o", "u", "c"}
},
}
}


m["roa-ole"] = {
m["xme-old"] = {
"Old Leonese",
"Old Median",
nil,
36461,
"roa-ibe",
"xme",
"Polyt, Latn",
translit = {
Polyt = "grc-translit",
},
display_text = {
Polyt = s["Polyt-displaytext"],
},
entry_name = {
Polyt = s["Polyt-entryname"],
},
sort_key = {
Polyt = s["Polyt-sortkey"],
},
}
 
m["xme-mid"] = {
"Middle Median",
12836150,
"xme",
"Latn",
"Latn",
}
}


m["roa-opt"] = {
m["xme-ker"] = {
"Old Galician-Portuguese",
"Kermanic",
1072111,
129850,
"roa-ibe",
"xme",
"Latn",
"fa-Arab, Latn",
ancestors = "xme-mid",
}
}


m["roa-orl"] = {
m["xme-taf"] = {
"Orléanais",
"Tafreshi",
nil,
nil,
"roa-oil",
"xme",
"fa-Arab, Latn",
ancestors = "xme-mid",
}
 
m["xme-ttc-pro"] = {
"Proto-Tatic",
122973870,
"xme-ttc",
"Latn",
"Latn",
sort_key = s["roa-oil-sortkey"],
ancestors = "xme-mid",
}
}


m["roa-poi"] = {
m["xme-kls"] = {
"Poitevin-Saintongeais",
"Kalasuri",
514123,
nil,
"roa-oil",
"xme-ttc",
"Latn",
ancestors = "xme-ttc-nor",
sort_key = s["roa-oil-sortkey"],
}
}


m["roa-tar"] = {
m["xme-klt"] = {
"Tarantino",
"Kilit",
695526,
3612452,
"roa-itd",
"xme-ttc",
"Latn",
"Cyrl", -- and fa-Arab?
ancestors = "nap",
wikimedia_codes = "roa-tara",
}
}


m["roa-tou"] = {
m["xme-ott"] = {
"Tourangeau",
"Old Tati",
nil,
434697,
"roa-oil",
"xme-ttc",
"Latn",
"fa-Arab, Latn",
sort_key = s["roa-oil-sortkey"],
}
}


m["sai-ajg"] = {
m["ira-kms-pro"] = {
"Ajagua",
"Proto-Komisenian",
nil,
116773777,
nil,
"ira-kms",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-all"] = {
m["ira-mpr-pro"] = {
"Allentiac",
"Proto-Medo-Parthian",
19570789,
116773227,
"sai-hrp",
"ira-mpr",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-and"] = { -- not to be confused with 'cbc' or 'ano'
m["ira-pat-pro"] = {
"Andoquero",
"Proto-Pathan",
16828359,
116773255,
"sai-wit",
"ira-pat",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-ayo"] = {
m["ira-pro"] = {
"Ayomán",
"Proto-Iranian",
16937754,
4167865,
"sai-jir",
"ira",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-bae"] = {
m["ira-zgr-pro"] = {
"Baenan",
"Proto-Zaza-Gorani",
3401998,
116775031,
nil,
"ira-zgr",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-bag"] = {
m["xsc-pro"] = {
"Bagua",
"Proto-Scythian",
5390321,
116773273,
nil,
"xsc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-bet"] = {
m["xsc-sar-pro"] = {
"Betoi",
"Proto-Sarmatian",
926551,
116773249,
"qfa-iso",
"xsc-sar",
"Latn",
"Latn",
type = "reconstructed",
}
}


 
m["xsc-skw-pro"] = {
m["sai-bor-pro"] = {
"Proto-Saka-Wakhi",
"Proto-Boran",
116773267,
nil,
"xsc-skw",
"sai-bor",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-cac"] = {
m["xsc-sak-pro"] = {
"Cacán",
"Proto-Saka",
945482,
116773264,
nil,
"xsc-sak",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-caq"] = {
m["ira-sym-pro"] = {
"Caranqui",
"Proto-Shughni-Yazghulami-Munji",
2937753,
116773813,
"sai-bar",
"ira-sym",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-car-pro"] = {
m["ira-sgi-pro"] = {
"Proto-Cariban",
"Proto-Sanglechi-Ishkashimi",
nil,
116773808,
"sai-car",
"ira-sgi",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sai-cat"] = {
m["ira-mny-pro"] = {
"Catacao",
"Proto-Munji-Yidgha",
5051136,
116773792,
"sai-ctc",
"ira-mny",
"Latinx",
}
 
m["sai-cer-pro"] = {
"Proto-Cerrado",
nil,
"sai-cer",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sai-chi"] = {
m["ira-shy-pro"] = {
"Chirino",
"Proto-Shughni-Yazghulami",
5390321,
116773812,
nil,
"ira-shy",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-chn"] = {
m["ira-shr-pro"] = {
"Chaná",
"Proto-Shughni-Roshani",
5072718,
116773811,
"sai-crn",
"ira-shr",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-chp"] = {
m["ira-sgc-pro"] = {
"Chapacura",
"Proto-Sogdic",
5072884,
116773276,
"sai-cpc",
"ira-sgc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-chr"] = {
m["ira-wnj"] = {
"Charrua",
"Vanji",
5086680,
3398419,
"sai-crn",
"ira-shy",
"Latn",
"Latn",
}
}


m["sai-chu"] = {
m["iro-ere"] = {
"Churuya",
"Erie",
5118339,
5388365,
"sai-guh",
"iro-nor",
"Latn",
"Latn",
}
}


m["sai-cje-pro"] = {
m["iro-min"] = {
"Proto-Central Jê",
"Mingo",
nil,
128531,
"sai-cje",
"iro-nor",
"Latn",
"Latn",
type = "reconstructed",
ietf_subtag = "i-mingo", -- grandfathered IETF tag
}
}


m["sai-cmg"] = {
m["iro-nor-pro"] = {
"Comechingon",
"Proto-North Iroquoian",
6644203,
116773242,
nil,
"iro-nor",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-cno"] = {
m["iro-pro"] = {
"Chono",
"Proto-Iroquoian",
5104704,
7251852,
nil,
"iro",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-cnr"] = {
m["itc-pro"] = {
"Cañari",
"Proto-Italic",
5055572,
17102720,
nil,
"itc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-coe"] = {
m["jpx-hcj"] = {
"Coeruna",
"Hachijō",
6425639,
5637049,
"sai-wit",
"jpx",
"Jpan",
ancestors = "ojp-eas",
translit = s["jpx-translit"],
display_text = s["jpx-displaytext"],
entry_name = s["jpx-entryname"],
sort_key = s["jpx-sortkey"],
}
 
m["jpx-pro"] = {
"Proto-Japonic",
3924309,
"jpx",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-col"] = {
m["jpx-ryu-pro"] = {
"Colán",
"Proto-Ryukyuan",
5141893,
56349069,
"sai-ctc",
"jpx-ryu",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["sai-cop"] = {
m["kar-pro"] = {
"Copallén",
"Proto-Karen",
5390321,
85794783,
nil,
"kar",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-crd"] = {
m["kca-eas"] = {
"Coroado Puri",
"Eastern Khanty",
24191321,
30304622,
"sai-mje",
"kca",
"Latn",
"Cyrl",
translit = "kca-translit",
override_translit = true,
}
}


m["sai-ctq"] = {
m["kca-nor"] = {
"Catuquinaru",
"Northern Khanty",
16858455,
30304527,
nil,
"kca",
"Latn",
"Cyrl",
translit = "kca-translit",
override_translit = true,
}
}


m["sai-cul"] = {
m["kca-pro"] = {
"Culli",
"Proto-Khanty",
2879660,
127505171,
nil,
"kca",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-cva"] = {
m["kca-sou"] = {
"Cueva",
"Southern Khanty",
nil,
30304618,
nil,
"kca",
"Latn",
"Cyrl",
translit = "kca-translit",
override_translit = true,
}
}


m["sai-esm"] = {
m["khi-kho-pro"] = {
"Esmeralda",
"Proto-Khoe",
3058083,
116773218,
nil,
"khi-kho",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-ewa"] = {
m["khi-kun"] = {
"Ewarhuyana",
"ǃKung",
16898104,
32904,
nil,
"khi-kxa",
"Latn",
"Latn",
}
}


m["sai-gam"] = {
m["ko-ear"] = {
"Gamela",
"Early Modern Korean",
5403661,
756014,
nil,
"qfa-kor",
"Latn",
"Kore",
ancestors = "okm",
translit = "okm-translit",
entry_name = s["Kore-entryname"],
}
}


m["sai-gay"] = {
m["kro-pro"] = {
"Gayón",
"Proto-Kru",
5528902,
116773778,
"sai-jir",
"kro",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-gmo"] = {
m["ku-pro"] = {
"Guamo",
"Proto-Kurdish",
5613495,
116773221,
nil,
"ku",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-gue"] = {
m["map-ata-pro"] = {
"Güenoa",
"Proto-Atayalic",
5626799,
116773151,
"sai-crn",
"map-ata",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-hau"] = {
m["map-bms"] = {
"Haush",
"Banyumasan",
3128376,
33219,
"sai-cho",
"map",
"Latn",
"Latn",
}
}


m["sai-hoc-pro"] = {
m["map-pro"] = {
"Proto-Huitoto-Ocaina",
"Proto-Austronesian",
nil,
49230,
"sai-hoc",
"map",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sai-jee-pro"] = {
m["mis-hkl"] = {
"Proto-Jê",
"Kelantan Peranakan Hokkien",
108794818,
"qfa-mix",
ancestors = "nan-hbl, sou, mfa",
}
 
m["mis-isa"] = {
"Isaurian",
16956868,
nil,
nil,
"sai-jee",
-- "Xsux, Hluw, Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-jko"] = {
m["mis-jie"] = {
"Jeikó",
"Jie",
6176527,
124424186,
"sai-mje",
nil,
"Latn",
"Hani",
sort_key = "Hani-sortkey",
}
}


m["sai-jrj"] = {
m["mis-jzh"] = {
"Jirajara",
"Jizhao",
6202966,
45242758,
"sai-jir",
"qfa-bej",
"Latn",
"Latn",
}
}


m["sai-kat"] = { -- contrast xoo, kzw, sai-xoc
m["mis-kas"] = {
"Katembri",
"Kassite",
6375925,
35612,
nil,
nil,
"Latn",
"Xsux",
}
}


m["sai-mal"] = {
m["mis-mmd"] = {
"Malalí",
"Mimi of Decorse",
6741212,
6862206,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-mar"] = {
m["mis-mmn"] = {
"Maratino",
"Mimi of Nachtigal",
6755055,
6862207,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-mat"] = {
m["mis-phi"] = {
"Matanawi",
"Philistine",
6786047,
2230924,
nil,
nil,
"Latn",
"Phnx",
}
}


m["sai-mcn"] = {
m["mis-rou"] = {
"Mocana",
"Rouran",
3402048,
48816637,
nil,
"qfa-xgx",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-men"] = {
m["mis-tnw"] = {
"Menien",
"Tangwang",
16890110,
7683179,
"sai-mje",
"qfa-mix",
"Latn",
"Latn",
ancestors = "cmn, sce",
}
}


m["sai-mil"] = {
m["mis-tuh"] = {
"Millcayac",
"Tuyuhun",
19573012,
48816625,
"sai-hrp",
"qfa-xgx",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-mlb"] = {
m["mis-tuo"] = {
"Malibu",
"Tuoba",
3402048,
48816629,
nil,
"qfa-xgx",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-msk"] = {
m["mis-wuh"] = {
"Masakará",
"Wuhuan",
6782426,
118976867,
"sai-mje",
"qfa-xgx",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-muc"] = {
m["mis-xbi"] = {
"Mucuchí",
"Xianbei",
nil,
4448647,
nil,
"qfa-xgx",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-mue"] = {
m["mjg-mgl"] = {
"Muellama",
"Mongghul",
16886936,
53765528,
"sai-bar",
"mjg",
"Latn",
"Latn", -- also Mong, Cyrl ?
}
}


m["sai-muz"] = {
m["mjg-mgr"] = {
"Muzo",
"Mangghuer",
6644203,
56285392,
nil,
"mjg",
"Latn",
"Latn", -- also Mong, Cyrl ?
}
}


m["sai-mys"] = {
m["mkh-asl-pro"] = {
"Maynas",
"Proto-Aslian",
16919393,
55630680,
nil,
"mkh-asl",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-nat"] = {
m["mkh-ban-pro"] = {
"Natú",
"Proto-Bahnaric",
9006749,
116773189,
nil,
"mkh-ban",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-nje-pro"] = {
m["mkh-kat-pro"] = {
"Proto-Northern Jê",
"Proto-Katuic",
nil,
116773772,
"sai-nje",
"mkh-kat",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sai-opo"] = {
m["mkh-khm-pro"] = {
"Opón",
"Proto-Khmuic",
7099152,
116773774,
"sai-car",
"mkh-khm",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-oto"] = {
m["mkh-kmr-pro"] = {
"Otomaco",
"Proto-Khmeric",
16879234,
55630684,
"sai-otm",
"mkh-kmr",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-pal"] = {
m["mkh-mmn"] = {
"Palta",
"Middle Mon",
3042978,
121337926,
nil,
"mkh-mnc",
"Latn",
"Latn, Mymr", --and also Pallava
ancestors = "omx",
}
}


m["sai-pam"] = {
m["mkh-mnc-pro"] = {
"Pamigua",
"Proto-Monic",
5908689,
116773231,
"sai-otm",
"mkh-mnc",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-par"] = {
m["mkh-mvi"] = {
"Paratió",
"Middle Vietnamese",
16890038,
9199,
nil,
"mkh-vie",
"Latn",
"Hani, Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["sai-pnz"] = {
m["mkh-pal-pro"] = {
"Panzaleo",
"Proto-Palaungic",
3123275,
104847372,
nil,
"mkh-pal",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-prh"] = {
m["mkh-pea-pro"] = {
"Puruhá",
"Proto-Pearic",
3410994,
116773804,
nil,
"mkh-pea",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-ptg"] = {
m["mkh-pkn-pro"] = {
"Patagón",
"Proto-Pakanic",
nil,
116773803,
nil,
"mkh-pkn",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-pur"] = {
m["mkh-pro"] = { --This will be merged into 2015 aav-pro.
"Purukotó",
"Proto-Mon-Khmer",
7261622,
7251859,
"sai-pem",
"mkh",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-pyg"] = {
m["mnw-tha"] = { -- To be removed.
"Payaguá",
"Thai Mon",
7156643,
nil,
"sai-guc",
"mkh-mnc",
"Latn",
"Mymr, Thai",
ancestors = "mkh-mmn",
sort_key = {
from = {"[%p]", "ျ", "ြ", "ွ", "ှ", "ၞ", "ၟ", "ၠ", "ၚ", "ဿ", "[็-๎]", "([เแโใไ])([ก-ฮ])ฺ?"},
to = {"", "္ယ", "္ရ", "္ဝ", "္ဟ", "္န", "္မ", "္လ", "င", "သ္သ", "", "%2%1"}
},
}
}


m["sai-pyk"] = {
m["mkh-vie-pro"] = {
"Pykobjê",
"Proto-Vietic",
98113977,
109432616,
"sai-nje",
"mkh-vie",
"Latn",
"Latn",
type = "reconstructed",
}
m["mns-cen"] = {
"Central Mansi",
128810384,
"mns",
"Cyrl",
translit = "mns-translit",
override_translit = true,
}
}


m["sai-qmb"] = {
m["mns-nor"] = {
"Quimbaya",
"Northern Mansi",
7272043,
30304537,
nil,
"mns",
"Latn",
"Cyrl",
translit = "mns-translit",
override_translit = true,
}
}


m["sai-qtm"] = {
m["mns-pro"] = {
"Quitemo",
"Proto-Mansi",
7272651,
128883093,
"sai-cpc",
"mns",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-rab"] = {
m["mns-sou"] = {
"Rabona",
"Southern Mansi",
6644203,
30304629,
nil,
"mns",
"Latn",
"Cyrl",
translit = "mns-translit",
override_translit = true,
}
}


m["sai-ram"] = {
m["mun-pro"] = {
"Ramanos",
"Proto-Munda",
16902824,
105102373,
nil,
"mun",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-sac"] = {
m["myn-chl"] = { -- the stage after ''emy''
"Sácata",
"Ch'olti'",
5390321,
873995,
nil,
"myn",
"Latn",
"Latn",
}
}


m["sai-san"] = {
m["myn-pro"] = {
"Sanaviron",
"Proto-Mayan",
16895999,
3321532,
nil,
"myn",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-sap"] = {
m["nai-ala"] = {
"Sapará",
"Alazapa",
7420922,
128810233,
"sai-car",
nil,
"Latn",
"Latn",
}
}


m["sai-sec"] = {
m["nai-bay"] = {
"Sechura",
"Bayogoula",
7442912,
1563704,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-sin"] = {
m["nai-cal"] = {
"Sinúfana",
"Calusa",
7525275,
51782,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-sje-pro"] = {
m["nai-chi"] = {
"Proto-Southern Jê",
"Chiquimulilla",
nil,
25339627,
"sai-sje",
"nai-xin",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-tab"] = {
m["nai-chu-pro"] = {
"Tabancale",
"Proto-Chumash",
5390321,
116773736,
nil,
"nai-chu",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-tal"] = {
m["nai-cig"] = {
"Tallán",
"Ciguayo",
16910468,
20741700,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-tap"] = {
m["nai-ckn-pro"] = {
"Tapayuna",
"Proto-Chinookan",
nil,
116773735,
"sai-nje",
"nai-ckn",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-tar-pro"] = {
m["nai-guz"] = {
"Proto-Taranoan",
"Guazacapán",
nil,
19572028,
"sai-tar",
"nai-xin",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["sai-teu"] = {
m["nai-hit"] = {
"Teushen",
"Hitchiti",
3519243,
1542882,
nil,
"nai-mus",
"Latn",
"Latn",
}
}


m["sai-tim"] = {
m["nai-ipa"] = {
"Timote",
"Ipai",
nil,
3027474,
nil,
"nai-yuc",
"Latn",
"Latn",
}
}


m["sai-tpr"] = {
m["nai-jtp"] = {
"Taparita",
"Jutiapa",
7684460,
nil,
"sai-otm",
"nai-xin",
"Latn",
"Latn",
}
}


m["sai-trr"] = {
m["nai-jum"] = {
"Tarairiú",
"Jumaytepeque",
7685313,
25339626,
nil,
"nai-xin",
"Latn",
"Latn",
}
}


m["sai-wai"] = {
m["nai-kat"] = {
"Waitaká",
"Kathlamet",
16918610,
6376639,
nil,
"nai-ckn",
"Latn",
"Latn",
}
}


m["sai-way"] = {
m["nai-klp-pro"] = {
"Wayumará",
"Proto-Kalapuyan",
nil,
116773771,
"sai-car",
"nai-klp",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-wit-pro"] = {
m["nai-knm"] = {
"Proto-Witotoan",
"Konomihu",
nil,
3198734,
"sai-wit",
"nai-shs",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-wnm"] = {
m["nai-kum"] = {
"Wanham",
"Kumeyaay",
16879440,
4910139,
"sai-cpc",
"nai-yuc",
"Latn",
"Latn",
}
}


m["sai-xoc"] = { -- contrast xoo, kzw, sai-kat
m["nai-mac"] = {
"Xocó",
"Macoris",
12953620,
21070851,
nil,
nil,
"Latn",
"Latn",
}
}


m["sai-yao"] = {
m["nai-mdu-pro"] = {
"Yao (South America)",
"Proto-Maidun",
nil,
116773784,
"sai-ven",
"nai-mdu",
"Latn",
type = "reconstructed",
}
 
m["nai-miz-pro"] = {
"Proto-Mixe-Zoque",
7251858,
"nai-miz",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-yar"] = { -- not the same family as 'suy'
m["nai-mus-pro"] = {
"Yarumá",
"Proto-Muskogean",
3505859,
116775368,
"sai-pek",
"nai-mus",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sai-yri"] = {
m["nai-nao"] = {
"Yuri",
"Naolan",
6964594,
nil,
nil,
"sai-tyu",
"Latn",
"Latn",
}
}


m["sai-yup"] = {
m["nai-nrs"] = {
"Yupua",
"New River Shasta",
8061430,
7011254,
"sai-tuc",
"nai-shs",
"Latn",
"Latn",
}
}


m["sai-yur"] = {
m["nai-okw"] = {
"Yurumanguí",
"Okwanuchu",
1281291,
3350126,
nil,
"nai-shs",
"Latn",
"Latn",
}
}


m["sal-pro"] = {
m["nai-per"] = {
"Proto-Salish",
"Pericú",
3375369,
nil,
nil,
"sal",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sdv-daj-pro"] = {
m["nai-pic"] = {
"Proto-Daju",
"Picuris",
nil,
7191257,
"sdv-daj",
"nai-kta",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sdv-eje-pro"] = {
m["nai-plp-pro"] = {
"Proto-Eastern Jebel",
"Proto-Plateau Penutian",
nil,
116773806,
"sdv-eje",
"nai-plp",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sdv-nil-pro"] = {
m["nai-pom-pro"] = {
"Proto-Nilotic",
"Proto-Pomo",
nil,
116773262,
"sdv-nil",
"nai-pom",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sdv-nyi-pro"] = {
m["nai-qng"] = {
"Proto-Nyima",
"Quinigua",
36360,
nil,
nil,
"sdv-nyi",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sdv-tmn-pro"] = {
m["nai-sca-pro"] = { -- NB 'sio-pro' "Proto-Siouan" which is Proto-Western Siouan
"Proto-Taman",
"Proto-Siouan-Catawban",
nil,
116773275,
"sdv-tmn",
"nai-sca",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sem-amm"] = {
m["nai-sin"] = {
"Ammonite",
"Sinacantán",
279181,
24190249,
"sem-can",
"nai-xin",
"Phnx",
"Latn",
translit = "Phnx-translit",
}
}


m["sem-amo"] = {
m["nai-sln"] = {
"Amorite",
"Salvadoran Lenca",
35941,
3229434,
"sem-nwe",
"nai-len",
"Xsux, Latn",
"Latn",
}
}


m["sem-cha"] = {
m["nai-spt"] = {
"Chaha",
"Sahaptin",
nil,
3833015,
"sem-eth",
"nai-shp",
"Ethi",
"Latn",
translit = "Ethi-translit",
ancestors = "sem-pro",
}
}


m["sem-dad"] = {
m["nai-tap"] = {
"Dadanitic",
"Tapachultec",
21838040,
7684401,
"sem-cen",
"nai-miz",
"Narb",
"Latn",
translit = "Narb-translit",
}
}


m["sem-dum"] = {
m["nai-taw"] = {
"Dumaitic",
"Tawasa",
7689233,
nil,
nil,
"sem-cen",
"Latn",
"Narb",
translit = "Narb-translit",
}
}


m["sem-has"] = {
m["nai-teq"] = {
"Hasaitic",
"Tequistlatec",
3541433,
2964454,
"sem-cen",
"nai-tqn",
"Narb",
"Latn",
translit = "Narb-translit",
}
}


m["sem-him"] = {
m["nai-tip"] = {
"Himyaritic",
"Tipai",
35604,
3027471,
"sem",
"nai-yuc",
"Arab, Sarb",
"Latn",
}
}


m["sem-his"] = {
m["nai-tot-pro"] = {
"Hismaic",
"Proto-Totozoquean",
22948260,
116773285,
"sem-cen",
"nai-tot",
"Narb",
"Latn",
translit = "Narb-translit",
type = "reconstructed",
}
}


m["sem-mhr"] = {
m["nai-tsi-pro"] = {
"Muher",
"Proto-Tsimshianic",
33743,
nil,
"sem-eth",
"nai-tsi",
"Latn",
"Latn",
}
m["sem-pro"] = {
"Proto-Semitic",
1658554,
"sem",
"Latinx",
type = "reconstructed",
type = "reconstructed",
}
}


m["sem-saf"] = {
m["nai-utn-pro"] = {
"Safaitic",
"Proto-Utian",
472586,
116773290,
"sem-cen",
"nai-utn",
"Narb",
"Latn",
translit = "Narb-translit",
type = "reconstructed",
}
}


m["sem-srb"] = {
m["nai-wai"] = {
"Old South Arabian",
"Waikuri",
35025,
3118702,
"sem-osa",
nil,
"Sarb",
"Latn",
translit = "Sarb-translit",
}
}


m["sem-tay"] = {
m["nai-wji"] = {
"Taymanitic",
"Western Jicaque",
24912301,
3178610,
"sem-cen",
"nai-jcq",
"Narb",
"Latn",
translit = "Narb-translit",
}
}


m["sem-tha"] = {
m["nai-yup"] = {
"Thamudic",
"Yupiltepeque",
843030,
25339628,
"sem-cen",
"nai-xin",
"Narb",
"Latn",
translit = "Narb-translit",
}
}


m["sem-wes-pro"] = {
m["nan-dat"] = {
"Proto-West Semitic",
"Datian Min",
98021726,
19855572,
"sem-wes",
"zhx-nan",
"Latinx",
"Hants",
type = "reconstructed",
generate_forms = "zh-generateforms",
sort_key = "Hani-sortkey",
}
 
m["nan-hbl"] = {
"Hokkien",
1624231,
"zhx-nan",
"Hants, Latn, Bopo, Kana",
wikimedia_codes = "zh-min-nan",
generate_forms = "zh-generateforms",
sort_key = {
Hani = "Hani-sortkey",
Kana = "Kana-sortkey"
},
}
}


m["sio-pro"] = { -- NB this is not Proto-Siouan-Catawban 'nai-sca-pro'
m["nan-hlh"] = {
"Proto-Siouan",
"Hailufeng Min",
34181,
120755728,
"sio",
"zhx-nan",
"Latinx",
"Hants",
type = "reconstructed",
generate_forms = "zh-generateforms",
sort_key = "Hani-sortkey",
}
}


m["sit-bok"] = {
m["nan-lnx"] = {
"Bokar",
"Longyan Min",
4938727,
6674568,
"sit-tan",
"zhx-nan",
"Latn, Tibt",
"Hants",
translit = {Tibt = "Tibt-translit"},
generate_forms = "zh-generateforms",
override_translit = true,
sort_key = "Hani-sortkey",
display_text = {Tibt = s["Tibt-displaytext"]},
entry_name = {Tibt = s["Tibt-entryname"]},
sort_key = {Tibt = "Tibt-sortkey"},
}
}


m["sit-cha"] = {
m["nan-tws"] = {
"Chairel",
"Teochew",
5068066,
36759,
"sit-luu",
"zhx-nan",
"Latn",
"Hants",
generate_forms = "zh-generateforms",
translit = "zh-translit",
sort_key = "Hani-sortkey",
}
}


m["sit-gkh"] = {
m["nan-zhe"] = {
"Gokhy",
"Zhenan Min",
5578069,
3846710,
"tbq-lol",
"zhx-nan",
"Latn",
"Hants",
generate_forms = "zh-generateforms",
sort_key = "Hani-sortkey",
}
}


m["sit-hrs-pro"] = {
m["nan-zsh"] = {
"Proto-Hrusish",
"Sanxiang Min",
nil,
7420769,
"sit-hrs",
"zhx-nan",
type = "reconstructed",
"Hants",
generate_forms = "zh-generateforms",
sort_key = "Hani-sortkey",
}
}


m["sit-jap"] = {
m["nds-de"] = {
"Japhug",
"German Low German",
3162245,
25433,
"sit-rgy",
"gmw-lgm",
"Latn",
"Latn",
ancestors = "nds",
ietf_subtag = "nds-DE", -- should we make this the actual code?
wikimedia_codes = "nds",
}
}


m["sit-kha-pro"] = {
m["nds-nl"] = {
"Proto-Kham",
"Dutch Low Saxon",
nil,
516137,
"sit-kha",
"gmw-lgm",
type = "reconstructed",
"Latn",
ancestors = "nds",
ietf_subtag = "nds-NL", -- should we make this the actual code?
}
}


m["sit-liz"] = {
m["ngf-pro"] = {
"Lizu",
"Proto-Trans-New Guinea",
6660653,
85794785,
"sit-qia",
"ngf",
"Latn", -- and Ersu Shaba
"Latn",
type = "reconstructed",
}
}


m["sit-luu-pro"] = {
m["nic-bco-pro"] = {
"Proto-Luish",
"Proto-Benue-Congo",
nil,
116773194,
"sit-luu",
"nic-bco",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sit-mor"] = {
m["nic-bod-pro"] = {
"Moran",
"Proto-Bantoid",
6909216,
116773190,
"tbq-bdg",
"nic-bod",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sit-prn"] = {
m["nic-eov-pro"] = {
"Puiron",
"Proto-Eastern Oti-Volta",
7259048,
116773753,
"sit-zem",
"nic-eov",
"Latn",
type = "reconstructed",
}
}


m["sit-pro"] = {
m["nic-gns-pro"] = {
"Proto-Sino-Tibetan",
"Proto-Gurunsi",
45961,
116773759,
"sit",
"nic-gns",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sit-sit"] = {
m["nic-grf-pro"] = {
"Situ",
"Proto-Grassfields",
19840830,
116773755,
"sit-rgy",
"nic-grf",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sit-tan-pro"] = {
m["nic-gur-pro"] = {
"Proto-Tani",
"Proto-Gur",
nil,
116773758,
"sit-tan",
"nic-gur",
"Latn", -- needs verification
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sit-tgm"] = {
m["nic-jkn-pro"] = {
"Tangam",
"Proto-Jukunoid",
17041370,
116773769,
"sit-tan",
"nic-jkn",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sit-tos"] = {
m["nic-lcr-pro"] = {
"Tosu",
"Proto-Lower Cross River",
7827899,
116773782,
"sit-qia",
"nic-lcr",
"Latn", -- also Ersu Shaba
"Latn",
type = "reconstructed",
}
}


m["sit-tsh"] = {
m["nic-ogo-pro"] = {
"Tshobdun",
"Proto-Ogoni",
19840950,
116773799,
"sit-rgy",
"nic-ogo",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sit-zbu"] = {
m["nic-ovo-pro"] = {
"Zbu",
"Proto-Oti-Volta",
19841106,
116773802,
"sit-rgy",
"nic-ovo",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["sla-pro"] = {
m["nic-plt-pro"] = {
"Proto-Slavic",
"Proto-Plateau",
747537,
116773805,
"sla",
"nic-plt",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
entry_name = {
remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve,
remove_exceptions = {'ś'},
},
sort_key = {
from = {"č", "ď", "ě", "ę", "ь", "ľ", "ň", "ǫ", "ř", "š", "ś", "ť", "ъ", "ž"},
to = {"c²", "d²", "e²", "e³", "i²", "l²", "nj", "o²", "r²", "s²", "s³", "t²", "u²", "z²"},
}
}
}


m["smi-pro"] = {
m["nic-pro"] = {
"Proto-Samic",
"Proto-Niger-Congo",
7251862,
108000748,
"smi",
"nic",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
sort_key = {
from = {"ā", "č", "δ", "[ëē]", "ŋ", "ń", "ō", "š", "θ", "%([^()]+%)"},
to = {"a", "c²", "d", "e", "n²", "n³", "o", "s²", "t²"}
},
}
}


m["son-pro"] = {
m["nic-ubg-pro"] = {
"Proto-Songhay",
"Proto-Ubangian",
nil,
116773818,
"son",
"nic-ubg",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["sqj-pro"] = {
m["nic-ucr-pro"] = {
"Proto-Albanian",
"Proto-Upper Cross River",
18210846,
116773819,
"sqj",
"nic-ucr",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ssa-klk-pro"] = {
m["nic-vco-pro"] = {
"Proto-Kuliak",
"Proto-Volta-Congo",
nil,
116773293,
"ssa-klk",
"nic-vco",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["ssa-kom-pro"] = {
m["nub-har"] = {
"Proto-Koman",
"Haraza",
nil,
19572059,
"ssa-kom",
"nub",
"Latinx",
"Arab, Latn",
type = "reconstructed",
}
}


m["ssa-pro"] = {
m["nub-pro"] = {
"Proto-Nilo-Saharan",
"Proto-Nubian",
nil,
116773246,
"ssa",
"nub",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["syd-fne"] = {
m["omq-cha-pro"] = {
"Forest Nenets",
"Proto-Chatino",
1295107,
116773202,
"syd",
"omq-cha",
"Cyrl",
translit = "syd-fne-translit",
entry_name = {remove_diacritics = c.grave .. c.acute .. c.macron .. c.breve .. c.dotabove},
}
 
m["syd-pro"] = {
"Proto-Samoyedic",
7251863,
"syd",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tai-pro"] = {
m["omq-maz-pro"] = {
"Proto-Tai",
"Proto-Mazatec",
6583709,
116773790,
"tai",
"omq-maz",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tai-swe-pro"] = {
m["omq-mix-pro"] = {
"Proto-Southwestern Tai",
"Proto-Mixtecan",
nil,
21573423,
"tai-swe",
"omq-mix",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tbq-bdg-pro"] = {
m["omq-mxt-pro"] = {
"Proto-Bodo-Garo",
"Proto-Mixtec",
nil,
21573424,
"tbq-bdg",
"omq-mxt",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tbq-kuk-pro"] = {
m["omq-otp-pro"] = {
"Proto-Kuki-Chin",
"Proto-Oto-Pamean",
nil,
116773251,
"tbq-kuk",
"omq-otp",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tbq-lal-pro"] = {
m["omq-pro"] = {
"Proto-Lalo",
"Proto-Oto-Manguean",
nil,
33669,
"tbq-lol",
"omq",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tbq-laz"] = {
m["omq-sjq"] = {
"Laze",
"San Juan Quiahije Chatino",
17007626,
17003130,
"sit-nax",
"omq-cha",
"Latn",
}
}


m["tbq-lob-pro"] = {
m["omq-tel"] = {
"Proto-Lolo-Burmese",
"Teposcolula Mixtec",
nil,
nil,
"tbq-lob",
"omq-mxt",
"Latinx",
"Latn",
type = "reconstructed",
}
 
m["omq-teo"] = {
"Teojomulco Chatino",
25340451,
"omq-cha",
"Latn",
}
}


m["tbq-lol-pro"] = {
m["omq-tri-pro"] = {
"Proto-Loloish",
"Proto-Trique",
7251855,
116773817,
"tbq-lol",
"omq-tri",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tbq-ngo"] = {
m["omq-zap-pro"] = {
"Ngochang",
"Proto-Zapotecan",
nil,
116773297,
"tbq-brm",
"omq-zap",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["tbq-plg"] = {
m["omq-zpc-pro"] = {
"Pai-lang",
"Proto-Zapotec",
2879843,
116773296,
"tbq-lob",
"omq-zpc",
"Hani, Latinx",
"Latn",
sort_key = {Hani = "Hani-sortkey"},
type = "reconstructed",
}
}


-- tbq-pro is now etymology-only
m["omv-aro-pro"] = {
"Proto-Aroid",
116773721,
"omv-aro",
"Latn",
type = "reconstructed",
}


m["trk-dkh"] = {
m["omv-diz-pro"] = {
"Dukhan",
"Proto-Dizoid",
nil,
116773750,
"trk-sib",
"omv-diz",
"Latn, Cyrl, Mong",
"Latn",
translit = {Mong = "Mong-translit"},
type = "reconstructed",
display_text = {Mong = s["Mong-displaytext"]},
entry_name = {Mong = s["Mong-entryname"]},
}
}


m["trk-oat"] = {
m["omv-pro"] = {
"Old Anatolian Turkish",
"Proto-Omotic",
7083390,
116773800,
"trk-ogz",
"omv",
"ota-Arab",
"Latn",
ancestors = "trk-ogz-pro",
type = "reconstructed",
entry_name = {["ota-Arab"] = "ar-entryname"},
}
}


m["trk-pro"] = {
m["oto-otm-pro"] = {
"Proto-Turkic",
"Proto-Otomi",
3657773,
5908710,
"trk",
"oto-otm",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tup-gua-pro"] = {
m["oto-pro"] = {
"Proto-Tupi-Guarani",
"Proto-Otomian",
nil,
116773252,
"tup-gua",
"oto",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["tup-kab"] = {
m["paa-kom"] = {
"Kabishiana",
"Kómnzo",
15302988,
18344310,
"tup",
"paa-yam",
"Latn",
"Latn",
}
}


m["tup-pro"] = {
m["paa-kwn"] = {
"Proto-Tupian",
"Kuwani",
10354700,
6449056,
"tup",
"paa",
"Latinx",
"Latn",
type = "reconstructed",
}
}


m["tuw-pro"] = {
m["paa-nha-pro"] = {
"Proto-Tungusic",
"Proto-North Halmahera",
nil,
116773241,
"tuw",
"paa-nha",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed"
}
}


m["tuw-kkl"] = {
m["paa-nun"] = {
"Kyakala",
"Nungon",
nil,
128807788,
"tuw",
"paa",
"Latn, Hani",
"Latn",
sort_key = {Hani = "Hani-sortkey"},
}
}


m["tuw-sol"] = {
m["phi-din"] = {
"Solon",
"Dinapigue Agta",
30004,
16945774,
"tuw",
"phi",
"Latn",
}
}


m["und-isa"] = {
m["phi-kal-pro"] = {
"Isaurian",
"Proto-Kalamian",
16956868,
116773213,
nil,
"phi-kal",
-- "Xsux, Hluw, Latn",
"Latn",
type = "reconstructed",
}
}


m["und-kas"] = {
m["phi-nag"] = {
"Kassite",
"Nagtipunan Agta",
35612,
16966111,
nil,
"phi",
"Xsux",
"Latn",
}
}


m["und-mil"] = {
m["phi-pro"] = {
"Milang",
"Proto-Philippine",
6850761,
18204898,
nil,
"phi",
"Deva, Latn",
"Latn",
type = "reconstructed",
}
}


m["und-mmd"] = {
m["poz-abi"] = {
"Mimi of Decorse",
"Abai",
6862206,
19570729,
nil,
"poz-san",
"Latn",
"Latn",
}
}


m["und-mmn"] = {
m["poz-bal"] = {
"Mimi of Nachtigal",
"Baliledo",
6862207,
4850912,
nil,
"poz",
"Latn",
"Latn",
}
}


m["und-phi"] = {
m["poz-btk-pro"] = {
"Philistine",
"Proto-Bungku-Tolaki",
2230924,
116773724,
nil,
"poz-btk",
"Phnx",
"Latn",
type = "reconstructed",
}
}


m["und-wji"] = {
m["poz-cet-pro"] = {
"Western Jicaque",
"Proto-Central-Eastern Malayo-Polynesian",
3178610,
2269883,
"hok",
"poz-cet",
"Latn",
"Latn",
type = "reconstructed",
}
}


m["urj-fin-pro"] = {
m["poz-hce-pro"] = {
"Proto-Finnic",
"Proto-Halmahera-Cenderawasih",
11883720,
116773209,
"urj-fin",
"poz-hce",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["urj-koo"] = {
m["poz-lgx-pro"] = {
"Old Komi",
"Proto-Lampungic",
nil,
116773222,
"urj-prm",
"poz-lgx",
"Perm, Cyrs",
translit = "urj-koo-translit",
sort_key = {Cyrs = s["Cyrs-sortkey"]},
}
 
m["urj-kuk"] = {
"Kukkuzi",
107410460,
"urj-fin",
"Latn",
"Latn",
ancestors = "vot",
type = "reconstructed",
}
}


m["urj-kya"] = {
m["poz-mcm-pro"] = {
"Komi-Yazva",
"Proto-Malayo-Chamic",
2365210,
116773225,
"urj-prm",
"poz-mcm",
"Cyrl",
translit = "kv-translit",
override_translit = true,
entry_name = {remove_diacritics = c.acute},
}
 
m["urj-mdv-pro"] = {
"Proto-Mordvinic",
nil,
"urj-mdv",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["urj-prm-pro"] = {
m["poz-mic-pro"] = {
"Proto-Permic",
"Proto-Micronesian",
nil,
111939079,
"urj-prm",
"poz-mic",
"Latn",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["urj-pro"] = {
m["poz-mly-pro"] = {
"Proto-Uralic",
"Proto-Malayic",
288765,
98057728,
"urj",
"poz-mly",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["urj-ugr-pro"] = {
m["poz-msa-pro"] = {
"Proto-Ugric",
"Proto-Malayo-Sumbawan",
156631,
116773226,
"urj-ugr",
"poz-msa",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["xnd-pro"] = {
m["poz-oce-pro"] = {
"Proto-Na-Dene",
"Proto-Oceanic",
nil,
141741,
"xnd",
"poz-oce",
"Latinx",
"Latn",
type = "reconstructed",
type = "reconstructed",
}
}


m["xgn-mgr"] = {
m["poz-pep-pro"] = {
"Mangghuer",
"Proto-Eastern Polynesian",
34214,
113988745,
"mjg",
"poz-pep",
"Latn", -- also Mong, Cyrl ?
"Latn",
}
type = "reconstructed",
 
}
m["xgn-mgl"] = {
 
"Mongghul",
m["poz-pnp-pro"] = {
34214,
"Proto-Nuclear Polynesian",
"mjg",
113988746,
"Latn", -- also Mong, Cyrl ?
"poz-pnp",
}
"Latn",
 
type = "reconstructed",
m["xgn-pro"] = {
}
"Proto-Mongolic",
 
2493677,
m["poz-pol-pro"] = {
"xgn",
"Proto-Polynesian",
"Latinx",
1658709,
type = "reconstructed",
"poz-pol",
}
"Latn",
 
type = "reconstructed",
m["xgn-rou"] = {
}
"Rouran",
 
48816637,
m["poz-pro"] = {
"xgn",
"Proto-Malayo-Polynesian",
"Hani, Latinx",
3832960,
sort_key = {Hani = "Hani-sortkey"},
"poz",
}
"Latn",
 
type = "reconstructed",
m["ypk-pro"] = {
}
"Proto-Yupik",
 
nil,
m["poz-sml"] = {
"ypk",
"Sarawak Malay",
"Latinx",
4251702,
type = "reconstructed",
"poz-mly",
}
"Latn, ms-Arab",
 
}
m["zhx-min-pro"] = {
 
"Proto-Min",
m["poz-ssw-pro"] = {
19646347,
"Proto-South Sulawesi",
"zhx-min",
116773279,
"Latinx",
"poz-ssw",
type = "reconstructed",
"Latn",
}
type = "reconstructed",
 
}
m["zhx-sht"] = {
 
"Shaozhou Tuhua",
m["poz-sus-pro"] = {
1920769,
"Proto-Sunda-Sulawesi",
"zhx",
116773281,
"Nshu, Hani, Hant, Hans",
"poz-sus",
generate_forms = "zh-generateforms",
"Latn",
sort_key = {Hani = "Hani-sortkey"},
type = "reconstructed",
}
}
 
 
m["poz-swa-pro"] = {
"Proto-North Sarawak",
116773243,
"poz-swa",
"Latn",
type = "reconstructed",
}
 
m["poz-ter"] = {
"Terengganu Malay",
4207412,
"poz-mly",
"Latn, ms-Arab",
}
 
m["pqe-pro"] = {
"Proto-Eastern Malayo-Polynesian",
2269883,
"pqe",
"Latn",
type = "reconstructed",
}
 
m["pra-niy"] = {
"Niya Prakrit",
11991601,
"inc-mid",
"Khar",
ancestors = "inc-ash",
translit = "Khar-translit",
}
 
m["qfa-adm-pro"] = {
"Proto-Great Andamanese",
116773756,
"qfa-adm",
"Latn",
type = "reconstructed",
}
 
m["qfa-bet-pro"] = {
"Proto-Be-Tai",
116773193,
"qfa-bet",
"Latn",
type = "reconstructed",
}
 
m["qfa-cka-pro"] = {
"Proto-Chukotko-Kamchatkan",
7251837,
"qfa-cka",
"Latn",
type = "reconstructed",
}
 
m["qfa-hur-pro"] = {
"Proto-Hurro-Urartian",
116773211,
"qfa-hur",
"Latn",
type = "reconstructed",
}
 
m["qfa-kad-pro"] = {
"Proto-Kadu",
116773770,
"qfa-kad",
"Latn",
type = "reconstructed",
}
 
m["qfa-kms-pro"] = {
"Proto-Kam-Sui",
55630682,
"qfa-kms",
"Latn",
type = "reconstructed",
}
 
m["qfa-kor-pro"] = {
"Proto-Koreanic",
467883,
"qfa-kor",
"Latn",
type = "reconstructed",
}
 
m["qfa-kra-pro"] = {
"Proto-Kra",
7251854,
"qfa-kra",
"Latn",
type = "reconstructed",
}
 
m["qfa-lic-pro"] = {
"Proto-Hlai",
7251845,
"qfa-lic",
"Latn",
type = "reconstructed",
}
 
m["qfa-onb-pro"] = {
"Proto-Be",
116773192,
"qfa-onb",
"Latn",
type = "reconstructed",
}
 
m["qfa-ong-pro"] = {
"Proto-Ongan",
116773801,
"qfa-ong",
"Latn",
type = "reconstructed",
}
 
m["qfa-tak-pro"] = {
"Proto-Kra-Dai",
104901616,
"qfa-tak",
"Latn",
type = "reconstructed",
}
 
m["qfa-yen-pro"] = {
"Proto-Yeniseian",
27639,
"qfa-yen",
"Latn",
type = "reconstructed",
}
 
m["qfa-yuk-pro"] = {
"Proto-Yukaghir",
116773294,
"qfa-yuk",
"Latn",
type = "reconstructed",
}
 
m["qwe-kch"] = {
"Kichwa",
1740805,
"qwe",
"Latn",
ancestors = "qu",
}
 
m["qwe-pro"] = {
"Proto-Quechuan",
5575757,
"qwe",
"Latn",
type = "reconstructed",
}
 
m["roa-ang"] = {
"Angevin",
56782,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-bbn"] = {
"Bourbonnais-Berrichon",
2899128,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-brg"] = {
"Bourguignon",
508332,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-cha"] = {
"Champenois",
430018,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-fcm"] = {
"Franc-Comtois",
510561,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-gal"] = {
"Gallo",
37300,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-gib"] = {
"Gallo-Italic of Basilicata",
3094838,
"roa-git",
"Latn",
}
 
m["roa-gis"] = {
"Gallo-Italic of Sicily",
2629019,
"roa-git",
"Latn",
}
 
m["roa-leo"] = {
"Leonese",
34108,
"roa-ibe",
"Latn",
ancestors = "roa-ole",
}
 
m["roa-lor"] = {
"Lorrain",
671198,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-oan"] = {
"Navarro-Aragonese",
2736184,
"roa-ibe",
"Latn",
}
 
m["roa-oca"] = {
"Old Catalan",
15478520,
"roa-ocr",
"Latn",
sort_key = {
from = {"à", "[èé]", "[íï]", "[òó]", "[úü]", "ç", "·"},
to = {"a", "e", "i", "o", "u", "c"}
},
}
 
m["roa-ole"] = {
"Old Leonese",
125977465,
"roa-ibe",
"Latn",
}
 
m["roa-opt"] = {
"Old Galician-Portuguese",
1072111,
"roa-ibe",
"Latn",
entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ},
}
 
m["roa-orl"] = {
"Orléanais",
28497058,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-poi"] = {
"Poitevin-Saintongeais",
514123,
"roa-oil",
"Latn",
sort_key = s["roa-oil-sortkey"],
}
 
m["roa-tar"] = {
"Tarantino",
695526,
"roa-itd",
"Latn",
ancestors = "nap",
wikimedia_codes = "roa-tara",
}
 
m["sai-all"] = {
"Allentiac",
19570789,
"sai-hrp",
"Latn",
}
 
m["sai-and"] = { -- not to be confused with 'cbc' or 'ano'
"Andoquero",
16828359,
"sai-wit",
"Latn",
}
 
m["sai-ayo"] = {
"Ayomán",
16937754,
"sai-jir",
"Latn",
}
 
m["sai-bae"] = {
"Baenan",
3401998,
nil,
"Latn",
}
 
m["sai-bag"] = {
"Bagua",
5390321,
nil,
"Latn",
}
 
m["sai-bet"] = {
"Betoi",
926551,
"qfa-iso",
"Latn",
}
 
 
m["sai-bor-pro"] = {
"Proto-Boran",
nil,
"sai-bor",
"Latn",
}
 
m["sai-cac"] = {
"Cacán",
945482,
nil,
"Latn",
}
 
m["sai-caq"] = {
"Caranqui",
2937753,
"sai-bar",
"Latn",
}
 
m["sai-car-pro"] = {
"Proto-Cariban",
116773196,
"sai-car",
"Latn",
type = "reconstructed",
}
 
m["sai-cat"] = {
"Catacao",
5051136,
"sai-ctc",
"Latn",
}
 
m["sai-cer-pro"] = {
"Proto-Cerrado",
116773200,
"sai-cer",
"Latn",
type = "reconstructed",
}
 
m["sai-chi"] = {
"Chirino",
5390321,
nil,
"Latn",
}
 
m["sai-chn"] = {
"Chaná",
5072718,
"sai-crn",
"Latn",
}
 
m["sai-chp"] = {
"Chapacura",
5072884,
"sai-cpc",
"Latn",
}
 
m["sai-chr"] = {
"Charrua",
5086680,
"sai-crn",
"Latn",
}
 
m["sai-chu"] = {
"Churuya",
5118339,
"sai-guh",
"Latn",
}
 
m["sai-cje-pro"] = {
"Proto-Central Jê",
116773198,
"sai-cje",
"Latn",
type = "reconstructed",
}
 
m["sai-cmg"] = {
"Comechingon",
6644203,
nil,
"Latn",
}
 
m["sai-cno"] = {
"Chono",
5104704,
nil,
"Latn",
}
 
m["sai-cnr"] = {
"Cañari",
5055572,
nil,
"Latn",
}
 
m["sai-coe"] = {
"Coeruna",
6425639,
"sai-wit",
"Latn",
}
 
m["sai-col"] = {
"Colán",
5141893,
"sai-ctc",
"Latn",
}
 
m["sai-cop"] = {
"Copallén",
5390321,
nil,
"Latn",
}
 
m["sai-crd"] = {
"Coroado Puri",
24191321,
"sai-mje",
"Latn",
}
 
m["sai-ctq"] = {
"Catuquinaru",
16858455,
nil,
"Latn",
}
 
m["sai-cul"] = {
"Culli",
2879660,
nil,
"Latn",
}
 
m["sai-cva"] = {
"Cueva",
5192644,
nil,
"Latn",
}
 
m["sai-esm"] = {
"Esmeralda",
3058083,
nil,
"Latn",
}
 
m["sai-ewa"] = {
"Ewarhuyana",
16898104,
nil,
"Latn",
}
 
m["sai-gam"] = {
"Gamela",
5403661,
nil,
"Latn",
}
 
m["sai-gay"] = {
"Gayón",
5528902,
"sai-jir",
"Latn",
}
 
m["sai-gmo"] = {
"Guamo",
5613495,
nil,
"Latn",
}
 
m["sai-gua"] = {
"Guachí",
5613172,
"sai-guc",
"Latn",
}
 
m["sai-gue"] = {
"Güenoa",
5626799,
"sai-crn",
"Latn",
}
 
m["sai-hau"] = {
"Haush",
3128376,
"sai-cho",
"Latn",
}
 
m["sai-jee-pro"] = {
"Proto-Jê",
116773212,
"sai-jee",
"Latn",
type = "reconstructed",
}
 
m["sai-jko"] = {
"Jeikó",
6176527,
"sai-mje",
"Latn",
}
 
m["sai-jrj"] = {
"Jirajara",
6202966,
"sai-jir",
"Latn",
}
 
m["sai-kat"] = { -- contrast xoo, kzw, sai-xoc
"Katembri",
6375925,
nil,
"Latn",
}
 
m["sai-mal"] = {
"Malalí",
6741212,
nil,
"Latn",
}
 
m["sai-mar"] = {
"Maratino",
6755055,
nil,
"Latn",
}
 
m["sai-mat"] = {
"Matanawi",
6786047,
nil,
"Latn",
}
 
m["sai-mcn"] = {
"Mocana",
3402048,
nil,
"Latn",
}
 
m["sai-men"] = {
"Menien",
16890110,
"sai-mje",
"Latn",
}
 
m["sai-mil"] = {
"Millcayac",
19573012,
"sai-hrp",
"Latn",
}
 
m["sai-mlb"] = {
"Malibu",
3402048,
nil,
"Latn",
}
 
m["sai-msk"] = {
"Masakará",
6782426,
"sai-mje",
"Latn",
}
 
m["sai-muc"] = {
"Mucuchí",
6931290,
nil,
"Latn",
}
 
m["sai-mue"] = {
"Muellama",
16886936,
"sai-bar",
"Latn",
}
 
m["sai-muz"] = {
"Muzo",
6644203,
nil,
"Latn",
}
 
m["sai-mys"] = {
"Maynas",
16919393,
nil,
"Latn",
}
 
m["sai-nat"] = {
"Natú",
9006749,
nil,
"Latn",
}
 
m["sai-nje-pro"] = {
"Proto-Northern Jê",
116773245,
"sai-nje",
"Latn",
type = "reconstructed",
}
 
m["sai-opo"] = {
"Opón",
7099152,
"sai-car",
"Latn",
}
 
m["sai-oto"] = {
"Otomaco",
16879234,
"sai-otm",
"Latn",
}
 
m["sai-pal"] = {
"Palta",
3042978,
nil,
"Latn",
}
 
m["sai-pam"] = {
"Pamigua",
5908689,
"sai-otm",
"Latn",
}
 
m["sai-par"] = {
"Paratió",
16890038,
nil,
"Latn",
}
 
m["sai-pnz"] = {
"Panzaleo",
3123275,
nil,
"Latn",
}
 
m["sai-prh"] = {
"Puruhá",
3410994,
nil,
"Latn",
}
 
m["sai-ptg"] = {
"Patagón",
128807870,
nil,
"Latn",
}
 
m["sai-pur"] = {
"Purukotó",
7261622,
"sai-pem",
"Latn",
}
 
m["sai-pyg"] = {
"Payaguá",
7156643,
"sai-guc",
"Latn",
}
 
m["sai-pyk"] = {
"Pykobjê",
98113977,
"sai-nje",
"Latn",
}
 
m["sai-qmb"] = {
"Quimbaya",
7272043,
nil,
"Latn",
}
 
m["sai-qtm"] = {
"Quitemo",
7272651,
"sai-cpc",
"Latn",
}
 
m["sai-rab"] = {
"Rabona",
6644203,
nil,
"Latn",
}
 
m["sai-ram"] = {
"Ramanos",
16902824,
nil,
"Latn",
}
 
m["sai-sac"] = {
"Sácata",
5390321,
nil,
"Latn",
}
 
m["sai-san"] = {
"Sanaviron",
16895999,
nil,
"Latn",
}
 
m["sai-sap"] = {
"Sapará",
7420922,
"sai-car",
"Latn",
}
 
m["sai-sec"] = {
"Sechura",
7442912,
nil,
"Latn",
}
 
m["sai-sin"] = {
"Sinúfana",
7525275,
nil,
"Latn",
}
 
m["sai-sje-pro"] = {
"Proto-Southern Jê",
116773814,
"sai-sje",
"Latn",
type = "reconstructed",
}
 
m["sai-tab"] = {
"Tabancale",
5390321,
nil,
"Latn",
}
 
m["sai-tal"] = {
"Tallán",
16910468,
nil,
"Latn",
}
 
m["sai-tap"] = {
"Tapayuna",
30719984,
"sai-nje",
"Latn",
}
 
m["sai-tar-pro"] = {
"Proto-Taranoan",
116773816,
"sai-tar",
"Latn",
type = "reconstructed",
}
 
m["sai-teu"] = {
"Teushen",
3519243,
nil,
"Latn",
}
 
m["sai-tim"] = {
"Timote",
7806995,
nil,
"Latn",
}
 
m["sai-tpr"] = {
"Taparita",
7684460,
"sai-otm",
"Latn",
}
 
m["sai-trr"] = {
"Tarairiú",
7685313,
nil,
"Latn",
}
 
m["sai-wai"] = {
"Waitaká",
16918610,
nil,
"Latn",
}
 
m["sai-way"] = {
"Wayumara",
7960726,
"sai-car",
"Latn",
}
 
m["sai-wit-pro"] = {
"Proto-Witotoan",
116773823,
"sai-wit",
"Latn",
type = "reconstructed",
}
 
m["sai-wnm"] = {
"Wanham",
16879440,
"sai-cpc",
"Latn",
}
 
m["sai-xoc"] = { -- contrast xoo, kzw, sai-kat
"Xocó",
12953620,
nil,
"Latn",
}
 
m["sai-yao"] = {
"Yao (South America)",
16979655,
"sai-ven",
"Latn",
}
 
m["sai-yar"] = { -- not the same family as 'suy'
"Yarumá",
3505859,
"sai-pek",
"Latn",
}
 
m["sai-yri"] = {
"Yuri",
2669157,
"sai-tyu",
"Latn",
}
 
m["sai-yup"] = {
"Yupua",
8061430,
"sai-tuc",
"Latn",
}
 
m["sai-yur"] = {
"Yurumanguí",
1281291,
nil,
"Latn",
}
 
m["sal-pro"] = {
"Proto-Salish",
116773269,
"sal",
"Latn",
type = "reconstructed",
}
 
m["sdv-daj-pro"] = {
"Proto-Daju",
116773739,
"sdv-daj",
"Latn",
type = "reconstructed",
}
 
m["sdv-eje-pro"] = {
"Proto-Eastern Jebel",
116773751,
"sdv-eje",
"Latn",
type = "reconstructed",
}
 
m["sdv-nil-pro"] = {
"Proto-Nilotic",
116773794,
"sdv-nil",
"Latn",
type = "reconstructed",
}
 
m["sdv-nyi-pro"] = {
"Proto-Nyima",
116773796,
"sdv-nyi",
"Latn",
type = "reconstructed",
}
 
m["sdv-tmn-pro"] = {
"Proto-Taman",
116773815,
"sdv-tmn",
"Latn",
type = "reconstructed",
}
 
m["sel-nor"] = {
"Northern Selkup",
30304565,
"sel",
"Cyrl",
translit = "sel-nor-translit",
}
 
m["sel-pro"] = {
"Proto-Selkup",
128884235,
"sel",
"Latn",
type = "reconstructed",
}
 
m["sel-sou"] = {
"Southern Selkup",
30304639,
"sel",
"Cyrl",
translit = "sel-sou-translit",
}
 
m["sem-amm"] = {
"Ammonite",
279181,
"sem-can",
"Phnx",
translit = "Phnx-translit",
}
 
m["sem-amo"] = {
"Amorite",
35941,
"sem-nwe",
"Xsux, Latn",
}
 
m["sem-cha"] = {
"Chaha",
35543,
"sem-eth",
"Ethi",
translit = "Ethi-translit",
}
 
m["sem-dad"] = {
"Dadanitic",
21838040,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-dum"] = {
"Dumaitic",
128810397,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-has"] = {
"Hasaitic",
3541433,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-his"] = {
"Hismaic",
22948260,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-mhr"] = {
"Muher",
33743,
"sem-eth",
"Latn",
}
 
m["sem-pro"] = {
"Proto-Semitic",
1658554,
"sem",
"Latn",
type = "reconstructed",
}
 
m["sem-saf"] = {
"Safaitic",
472586,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-srb"] = {
"Old South Arabian",
35025,
"sem-osa",
"Sarb",
translit = "Sarb-translit",
}
 
m["sem-tay"] = {
"Taymanitic",
24912301,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-tha"] = {
"Thamudic",
843030,
"sem-cen",
"Narb",
translit = "Narb-translit",
}
 
m["sem-wes-pro"] = {
"Proto-West Semitic",
98021726,
"sem-wes",
"Latn",
type = "reconstructed",
}
 
m["sio-pro"] = { -- NB this is not Proto-Siouan-Catawban 'nai-sca-pro'
"Proto-Siouan",
34181,
"sio",
"Latn",
type = "reconstructed",
}
 
m["sit-bai-pro"] = {
"Proto-Bai",
nil,
"sit-bai",
"Latn",
type = "reconstructed",
}
 
m["sit-ban"] = {
"Bangru",
56071779,
"sit-hrs",
"Latn",
}
 
m["sit-bok"] = {
"Bokar",
4938727,
"sit-tan",
"Latn, Tibt",
translit = {Tibt = "Tibt-translit"},
override_translit = true,
display_text = {Tibt = s["Tibt-displaytext"]},
entry_name = {Tibt = s["Tibt-entryname"]},
sort_key = {Tibt = "Tibt-sortkey"},
}
 
m["sit-cai"] = {
"Caijia",
5017528,
"sit-cln",
"Latn"
}
 
m["sit-cha"] = {
"Chairel",
5068066,
"sit-luu",
"Latn",
}
 
m["sit-hrs-pro"] = {
"Proto-Hrusish",
116773762,
"sit-hrs",
"Latn",
type = "reconstructed",
}
 
m["sit-jap"] = {
"Japhug",
3162245,
"sit-rgy",
"Latn",
}
 
m["sit-kha-pro"] = {
"Proto-Kham",
116773773,
"sit-kha",
"Latn",
type = "reconstructed",
}
 
m["sit-khb-pro"] = {
"Proto-Kho-Bwa",
nil,
"sit-khb",
"Latn",
type = "reconstructed",
}
 
m["sit-khp-pro"] = {
"Proto-Puroik",
nil,
"sit-khb",
"Latn",
type = "reconstructed",
}
 
m["sit-khw-pro"] = {
"Proto-Western Kho-Bwa",
nil,
"sit-khw",
"Latn",
type = "reconstructed",
}
 
m["sit-liz"] = {
"Lizu",
6660653,
"sit-qia",
"Latn", -- and Ersu Shaba
}
 
m["sit-lnj"] = {
"Longjia",
17096251,
"sit-cln",
"Latn"
}
 
m["sit-lrn"] = {
"Luren",
16946370,
"sit-cln",
"Latn"
}
 
m["sit-luu-pro"] = {
"Proto-Luish",
116773783,
"sit-luu",
"Latn",
type = "reconstructed",
}
 
m["sit-prn"] = {
"Puiron",
7259048,
"sit-zem",
}
 
m["sit-pro"] = {
"Proto-Sino-Tibetan",
24839178,
"sit",
"Latn",
type = "reconstructed",
}
 
m["sit-sit"] = {
"Situ",
19840830,
"sit-rgy",
"Latn",
}
 
m["sit-tam-pro"] = {
"Proto-Tamangic",
117469295,
"sit-tam",
"Latn",
type = "reconstructed",
}
 
m["sit-tan-pro"] = {
"Proto-Tani",
116773284,
"sit-tan",
"Latn", -- needs verification
type = "reconstructed",
}
 
m["sit-tgm"] = {
"Tangam",
17041370,
"sit-tan",
"Latn",
}
 
m["sit-tos"] = {
"Tosu",
7827899,
"sit-qia",
"Latn", -- also Ersu Shaba
}
 
m["sit-tsh"] = {
"Tshobdun",
19840950,
"sit-rgy",
"Latn",
}
 
m["sit-zbu"] = {
"Zbu",
19841106,
"sit-rgy",
"Latn",
}
 
m["sla-pro"] = {
"Proto-Slavic",
747537,
"sla",
"Latn",
type = "reconstructed",
entry_name = {
remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve,
remove_exceptions = {'ś'},
},
sort_key = {
from = {"č", "ď", "ě", "ę", "ь", "ľ", "ň", "ǫ", "ř", "š", "ś", "ť", "ъ", "ž"},
to = {"c²", "d²", "e²", "e³", "i²", "l²", "nj", "o²", "r²", "s²", "s³", "t²", "u²", "z²"},
}
}
 
m["smi-pro"] = {
"Proto-Samic",
7251862,
"smi",
"Latn",
type = "reconstructed",
sort_key = {
from = {"ā", "č", "δ", "[ëē]", "ŋ", "ń", "ō", "š", "θ", "%([^()]+%)"},
to = {"a", "c²", "d", "e", "n²", "n³", "o", "s²", "t²"}
},
}
 
m["son-pro"] = {
"Proto-Songhay",
116773277,
"son",
"Latn",
type = "reconstructed",
}
 
m["sqj-pro"] = {
"Proto-Albanian",
18210846,
"sqj",
"Latn",
type = "reconstructed",
}
 
m["ssa-klk-pro"] = {
"Proto-Kuliak",
116773779,
"ssa-klk",
"Latn",
type = "reconstructed",
}
 
m["ssa-kom-pro"] = {
"Proto-Koman",
116773775,
"ssa-kom",
"Latn",
type = "reconstructed",
}
 
m["ssa-pro"] = {
"Proto-Nilo-Saharan",
116773236,
"ssa",
"Latn",
type = "reconstructed",
}
 
m["syd-fne"] = {
"Forest Nenets",
1295107,
"syd",
"Cyrl",
translit = "syd-fne-translit",
entry_name = {remove_diacritics = c.grave .. c.acute .. c.macron .. c.breve .. c.dotabove},
}
 
m["syd-pro"] = {
"Proto-Samoyedic",
7251863,
"syd",
"Latn",
type = "reconstructed",
}
 
m["tai-pro"] = {
"Proto-Tai",
6583709,
"tai",
"Latn",
type = "reconstructed",
}
 
m["tai-swe-pro"] = {
"Proto-Southwestern Tai",
116773280,
"tai-swe",
"Latn",
type = "reconstructed",
}
 
m["tbq-bdg-pro"] = {
"Proto-Bodo-Garo",
116773195,
"tbq-bdg",
"Latn",
type = "reconstructed",
}
 
m["tbq-blg"] = {
"Bailang",
2879843,
"tbq-lob",
"Hani",
sort_key = "Hani-sortkey",
}
 
m["tbq-gkh"] = {
"Gokhy",
5578069,
"tbq-sil",
"Latn",
}
 
m["tbq-kuk-pro"] = {
"Proto-Kuki-Chin",
116773220,
"tbq-kuk",
"Latn",
type = "reconstructed",
}
 
m["tbq-lal-pro"] = {
"Proto-Lalo",
116773781,
"tbq-lal",
"Latn",
type = "reconstructed",
}
 
m["tbq-laz"] = {
"Laze",
17007626,
"sit-nas",
"Latn",
}
 
m["tbq-lob-pro"] = {
"Proto-Lolo-Burmese",
116773224,
"tbq-lob",
"Latn",
type = "reconstructed",
}
 
m["tbq-lol-pro"] = {
"Proto-Loloish",
7251855,
"tbq-lol",
"Latn",
type = "reconstructed",
}
 
m["tbq-mil"] = {
"Milang",
6850761,
"sit-gsi",
"Deva, Latn",
}
 
m["tbq-mor"] = {
"Moran",
6909216,
"tbq-bdg",
"Latn",
}
 
m["tbq-ngo"] = {
"Ngochang",
56582,
"tbq-brm",
"Latn",
}
 
-- tbq-pro is now etymology-only
 
m["trk-dkh"] = {
"Dukhan",
12809273,
"trk-ssb",
"Latn, Cyrl, Mong",
translit = {Mong = "Mong-translit"},
display_text = {Mong = s["Mong-displaytext"]},
entry_name = {Mong = s["Mong-entryname"]},
}
 
m["trk-oat"] = {
"Old Anatolian Turkish",
7083390,
"trk-ogz",
"ota-Arab",
entry_name = {["ota-Arab"] = "ar-entryname"},
}
 
m["trk-pro"] = {
"Proto-Turkic",
3657773,
"trk",
"Latn",
type = "reconstructed",
}
 
m["tup-gua-pro"] = {
"Proto-Tupi-Guarani",
116773288,
"tup-gua",
"Latn",
type = "reconstructed",
}
 
m["tup-kab"] = {
"Kabishiana",
15302988,
"tup",
"Latn",
}
 
m["tup-pro"] = {
"Proto-Tupian",
10354700,
"tup",
"Latn",
type = "reconstructed",
}
 
m["tuw-alk"] = {
"Alchuka",
113553616,
"tuw-jrc",
"Latn, Hans",
sort_key = {Hans = "Hani-sortkey"},
}
 
m["tuw-bal"] = {
"Bala",
86730632,
"tuw-jrc",
"Latn, Hans",
sort_key = {Hans = "Hani-sortkey"},
}
 
m["tuw-kkl"] = {
"Kyakala",
118875708,
"tuw-jrc",
"Latn, Hans",
sort_key = {Hans = "Hani-sortkey"},
}
 
m["tuw-kli"] = {
"Kili",
6406892,
"tuw-ewe",
"Cyrl",
}
 
m["tuw-pro"] = {
"Proto-Tungusic",
85872335,
"tuw",
"Latn",
type = "reconstructed",
}
 
m["tuw-sol"] = {
"Solon",
30004,
"tuw-ewe",
}
 
m["urj-fin-pro"] = {
"Proto-Finnic",
11883720,
"urj-fin",
"Latn",
type = "reconstructed",
}
 
m["urj-koo"] = {
"Old Komi",
86679962,
"urj-prm",
"Perm, Cyrs",
translit = "urj-koo-translit",
sort_key = {Cyrs = s["Cyrs-sortkey"]},
}
 
m["urj-kuk"] = {
"Kukkuzi",
107410460,
"urj-fin",
"Latn",
ancestors = "vot",
}
 
m["urj-kya"] = {
"Komi-Yazva",
2365210,
"urj-prm",
"Cyrl",
translit = "kv-translit",
override_translit = true,
entry_name = {remove_diacritics = c.acute},
}
 
m["urj-mdv-pro"] = {
"Proto-Mordvinic",
116773232,
"urj-mdv",
"Latn",
type = "reconstructed",
}
 
m["urj-prm-pro"] = {
"Proto-Permic",
116773257,
"urj-prm",
"Latn",
type = "reconstructed",
}
 
m["urj-pro"] = {
"Proto-Uralic",
288765,
"urj",
"Latn",
type = "reconstructed",
}
 
m["urj-ugr-pro"] = {
"Proto-Ugric",
156631,
"urj-ugr",
"Latn",
type = "reconstructed",
}
 
m["xnd-pro"] = {
"Proto-Na-Dene",
116773233,
"xnd",
"Latn",
type = "reconstructed",
}
 
m["xgn-pro"] = {
"Proto-Mongolic",
2493677,
"xgn",
"Latn",
type = "reconstructed",
sort_key = {
from = {"č", "i", "ï", "ǰ", "ŋ", "ö", "š", "ü"},
to = {"c", "i" .. p[1], "i", "j", "n" .. p[1], "o" .. p[1], "s" .. p[1], "u" .. p[1]},
},
}
 
m["yok-bvy"] = {
"Buena Vista Yokuts",
4985474,
"yok",
"Latn",
}
 
m["yok-dly"] = {
"Delta Yokuts",
70923266,
"yok",
"Latn",
}
 
m["yok-gsy"] = {
"Gashowu",
3098708,
"yok",
"Latn",
}
 
m["yok-kry"] = {
"Kings River Yokuts",
6413014,
"yok",
"Latn",
}
 
m["yok-nvy"] = {
"Northern Valley Yokuts",
85789777,
"yok",
"Latn",
}
 
m["yok-ply"] = {
"Palewyami",
2387391,
"yok",
"Latn",
}
 
m["yok-svy"] = {
"Southern Valley Yokuts",
12642473,
"yok",
"Latn",
}
 
m["yok-tky"] = {
"Tule-Kaweah Yokuts",
7851988,
"yok",
"Latn",
}
 
m["ypk-pro"] = {
"Proto-Yupik",
116773295,
"ypk",
"Latn",
type = "reconstructed",
}
 
m["zhx-min-pro"] = {
"Proto-Min",
19646347,
"zhx-min",
"Latn",
type = "reconstructed",
}
 
m["zhx-sht"] = {
"Shaozhou Tuhua",
1920769,
"zhx",
"Nshu, Hants",
generate_forms = "zh-generateforms",
sort_key = {Hani = "Hani-sortkey"},
}
 
m["zhx-sic"] = {
"Sichuanese",
2278732,
"zhx-man",
"Hants",
generate_forms = "zh-generateforms",
translit = "zh-translit",
sort_key = "Hani-sortkey",
}
 
m["zhx-tai"] = {
m["zhx-tai"] = {
"Taishanese",
"Taishanese",
2208940,
2208940,
"zhx",
"zhx-yue",
"Hani, Hant, Hans",
"Hants",
ancestors = "yue",
generate_forms = "zh-generateforms",
generate_forms = "zh-generateforms",
translit = "zh-translit",
translit = "zh-translit",
sort_key = "Hani-sortkey",
}
m["zhx-teo"] = {
"Teochew",
36759,
"zhx-min-hai",
"Hani, Hant, Hans",
ancestors = "nan",
generate_forms = "zh-generateforms",
sort_key = "Hani-sortkey",
sort_key = "Hani-sortkey",
}
}
Line 4,934: Line 6,604:
"zle",
"zle",
"Cyrs, Glag",
"Cyrs, Glag",
translit = "Cyrs-Glag-translit",
translit = {Cyrs = "Cyrs-translit", Glag = "Glag-translit"},
entry_name = {Cyrs = s["Cyrs-entryname"]},
entry_name = {Cyrs = s["Cyrs-entryname"]},
sort_key = {Cyrs = s["Cyrs-sortkey"]},
sort_key = {Cyrs = s["Cyrs-sortkey"]},
Line 4,951: Line 6,621:
},
},
sort_key = s["Cyrs-sortkey"],
sort_key = s["Cyrs-sortkey"],
}
m["zls-chs"] = {
"Church Slavonic",
33251,
"zls",
"Cyrs, Glag, Latn",
ancestors = "cu",
translit = {
Cyrs = "Cyrs-translit",
Glag = "Glag-translit"
},
entry_name = {
Cyrs = s["Cyrs-entryname"]
},
sort_key = {
Cyrs = s["Cyrs-sortkey"]
},
}
}


Line 4,968: Line 6,656:
}
}


m["zlw-pom-pro"] = {
m["zlw-osk"] = {
"Proto-Pomeranian",
"Old Slovak",
149588,
12776676,
"zlw-pom",
"zlw",
"Latn",
"Latn",
type = "reconstructed",
}
}


Line 4,981: Line 6,668:
"zlw-pom",
"zlw-pom",
"Latn",
"Latn",
ancestors = "zlw-pom-pro",
entry_name = "zlw-slv-entryname"
entry_name = "zlw-slv-entryname"
}
}


return require("Module:languages").addDefaultTypes(m, true)
return require("Module:languages").finalizeData(m, "language")

Revision as of 21:06, 14 March 2025

Documentation for this module may be created at Module:languages/data/exceptional/doc

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

-- Loaded on demand, as it may not be needed (depending on the data).
local function u(...)
	u = require("Module:string utilities").char
	return u(...)
end

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

local m = {}

m["afh"] = {
	"Afrihili",
	384707,
	"art",
	"Latn",
}

m["alo-col"] = {
	"Central Olma",
	nil,
	"alo-cst",
	"Latn",
	type = "conlang",
}

m["alo-eol"] = {
	"Eastern Olma",
	nil,
	"alo-cst",
	"Latn",
	type = "conlang",
}

m["alo-eon"] = {
	"Eastern Onori",
	nil,
	"alo-tdr",
	"Latn",
	type = "conlang",
}

m["alo-kol"] = {
	"Coastal Olma",
	nil,
	"alo-cst",
	"Latn",
	type = "conlang",
}

m["alo-pro"] = {
	"Proto-Alopian",
	nil,
	"art",
	"Latn",
	sort_key = {
		from = {"[-*·]"},
		to =   {""},
		remove_diacritics = c.macron .. c.breve, 
	},
	type = "conlang",
}

m["alo-sig"] = {
	"Sigori",
	nil,
	"alo-fre",
	"Latn",
	type = "conlang",
}

m["alo-sol"] = {
	"Southern Olma",
	nil,
	"alo-cst",
	"Latn",
	type = "conlang",
}

m["alo-won"] = {
	"Western Onori",
	nil,
	"alo-tdr",
	"Latn",
	type = "conlang",
}

m["art-blk"] = {
	"Bolak",
	2909283,
	"art",
	"Latn",
}

m["art-bsp"] = {
	"Black Speech",
	686210,
	"art",
	"Latn, Teng",
}

m["art-com"] = {
	"Communicationssprache",
	35227,
	"art",
		"Latn",
}

m["art-dtk"] = {
	"Dothraki",
	2914733,
	"art",
	"Latn",
}

m["art-elo"] = {
	"Eloi",
	nil,
	"art",
	"Latn",
}

m["art-gld"] = {
	"Goa'uld",
	19823,
	"art",
	"Latn, Egyp, Mero",
}

m["art-lap"] = {
	"Lapine",
	6488195,
	"art",
	"Latn",
}

m["art-man"] = {
	"Mandalorian",
	54289,
	"art",
	"Latn",
}

m["art-mun"] = {
	"Mundolinco",
	851355,
	"art",
	"Latn",
}

m["art-nav"] = {
	"Na'vi",
	316939,
	"art",
	"Latn",
}

m["art-nox"] = {
	"Noxilo",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

local F = "[ɬsṣš]"

m["art-nui"] = {
	"ǂA Ṇṵĩ",
	nil,
	"art",
	"Latn",
	sort_key = {
	from = {
			"^N", "^Ɠ", "ṭr",
			F .. "([ʇǃǂǁ])qʼ",
			F .. "([ʇǃǂǁ])ʼ",
			F .. "([ʇǃǂǁ])",
			"ɴ([ʇǃǂǁ])x",
			"ɴ([ʇǃǂǁ])ʼ",
			"ɴ([ʇǃǂǁʘ])",
			"r([ǃǁ]), (ʘ)r",
			"([ǃǁ])ʛ",
			"([ʇǃǂǁ])qʼ",
			"([ʇǃǂǁ])x",
			"([ʇǃǂǁ])ʼ",
			"^[aeiou]?(.)",
		},
	to = {
			"ɴ", "ʛ", "ṭᵣ",
			"%1₊",
			"%1₉",
			"%1₈",
			"%1₇",
			"%1₆",
			"%1₅",
			"%1₄, %1₄",
			"%1₃",
			"%1₂",
			"%1₁",
			"%1₀",
			"%1",
		},
		remove_diacritics = c.tildebelow .. c.grave
	},
	type = "conlang",
}

m["art-una"] = {
	"Unas",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["avk"] = {
	"Kotava",
	1377116,
	"art",
	"Latn",
}

m["axwa-pro"] = {
	"Proto-Axwan",
	nil,
	"art",
	"Latn",
	type = "reconstructed,conlang",
}

m["brfs-pro"] = {
	"Ancient Berfesian",
	nil,
	"brfs",
	"Latn",
	type = "conlang",
}

m["dzhk"] = {
	"Dženubiskă",
	nil,
	"gem",
	"Cyrl",
	translit = "dzhk-translit",
	ancestors = "got",
	type = "conlang",
}

m["gwax"] = {
	"Gwaxol",
	nil,
	"wasc",
	"Latn",
	ancestors = "wasc, nen-pro",
	type = "conlang",
	entry_name = {
		from = {"1", "2", "3", "4", "5", "6"},
		to = {"¹", "²", "³", "⁴", "⁵", "⁶"},
	},
	display_text = {
		from = {"1", "2", "3", "4", "5", "6"},
		to = {"¹", "²", "³", "⁴", "⁵", "⁶"},
	}
}

m["hceo"] = { 
	"Hceor Theec",
	nil,
	"nen",
	"Latn",
	ancestors = "lnen",
	type = "conlang",
}

m["ibe-pro"] = {
	"Proto-Iberian",
	nil,
	"ibe",
	"Latn",
	type = "conlang",
}

m["kisl"] = {
	"Kilīmos-sāîl",
	nil,
	"wasc",
	"Latn",
	ancestors = "wasc",
	type = "conlang",
}

m["knra"] = {
	"Knrawi",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["lnen"] = { 
	"Late Nentammmi",
	nil,
	"nen",
	"Latn",
	ancestors = "nen-pro",
	type = "conlang",
}

m["loxw"] = {
	"Central Isles Creole",
	nil,
	"art",
	"Latn",
	ancestors = "knra, qsc",
	type = "conlang",
}

m["maat"] = {
	"Maahaat",
	nil,
	"slaq",
	"Latn",
	ancestors = "slaq-pro",
	type = "conlang",
}

m["maaz"] = {
	"Maazha",
	nil,
	"slaq",
	"Latn",
	ancestors = "slaq-pro",
	type = "conlang",
}

m["nen-pro"] = {
	"Nentammmi",
	nil,
	"art",
	"Latn",
	type = "reconstructed,conlang",
}

m["noan"] = { 
	"Noanglo",
	nil,
	"nen",
	"Latn",
	ancestors = "nen-pro",
	type = "conlang",
}

m["ravk"] = { 
	"Ravihkeo",
	nil,
	"nen",
	"Latn",
	ancestors = "nen-pro",
	type = "conlang",
}

m["anrdg"] = {
	"Rokadong",
	nil,
	"art",
	"Roka",
	ancestors = "annen",
	type = "conlang",
}

m["anktl"] = {
	"Kairitelan",
	nil,
	"art",
	"Latn",
	ancestors = "annen",
	type = "conlang",
}

m["anldk"] = {
	"Liðakuin",
	nil,
	"art",
	"Latn",
	ancestors = "anldk-old",
	type = "conlang",
}

m["andbz"] = {
	"Debazi",
	nil,
	"art",
	"Latn",
	ancestors = "anmnk",
	type = "conlang",
}

m["anldk-old"] = {
	"Old Liðakuin",
	nil,
	"art",
	"Latn",
	ancestors = "anwgs",
	type = "conlang",
}

m["anmnk"] = {
	"Classical Munkai",
	nil,
	"art",
	"Latn",
	ancestors = "anpmk",
	type = "conlang",
}

m["anpmk"] = {
	"Proto-Munkai",
	nil,
	"art",
	"Latn",
	ancestors = "anplm",
	type = "conlang",
}

m["anplm"] = {
	"Proto-Leyen-Mangellian",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["annen"] = {
	"Proto-Nenta",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["anwgs"] = {
	"Proto-West-Gomensayan",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["anhat"] = {
	"Hatzonian",
	nil,
	"art",
	"Latn",
	ancestors = "ankar",
	type = "conlang",
}

m["anckr"] = {
	"Common Kardonian",
	nil,
	"art",
	"Latn",
	ancestors = "ankar",
	type = "conlang",
}

m["anspd"] = {
	"Speodan",
	nil,
	"art",
	"Latn",
	ancestors = "ankar",
	type = "conlang",
}

m["ancal"] = {
	"Calubian",
	nil,
	"art",
	"Latn",
	ancestors = "ankar",
	type = "conlang",
}

m["andya"] = {
	"Dyamantian",
	nil,
	"art",
	"Latn",
	ancestors = "ankar",
	type = "conlang",
}

m["ankar"] = {
	"Middle Kardonian",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["cruc"] = {
	"Cruckeny",
	nil,
	"ine, cel",
	"Latn",
	ancestors = "ga",
	type = "conlang",
}

m["guim"] = {
	"Guimin",
	nil,
	"ine",
	"Cyrl",
	translit = "guim-translit",
	ancestors = "ine-pro",
	type = "conlang",
}

m["hema"] = {
	"Hemaluan",
	nil,
	"map",
	"Hani, Kana",
	ancestors = "map-pro",
	type = "conlang",
}

m["jl-two"] = {
	"Jokelang 2",
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["jovl"] = {
	"Jovlish",
	nil,
	"ine, ger, gmw-ang",
	"Jovl",
	ancestors = "ang",
	type = "conlang",
	translit = "qay-translit"
}

m["keel"] = {
	"Keeltyewarem",
	nil,
	"ine, cel",
	"Latn",
	ancestors = "ga",
	type = "conlang",
}

m["kilta"] = {
	"Kílta",
	nil,
	"art",
	"Latn",
	sort_key = {
	remove_diacritics = c.acute,
	},
	type = "conlang",
}

m["lthm-pro"] = {
	"Proto-Lothem",
	nil,
	"lthm",
	"Latn",
	type = "reconstructed,conlang",
}

m["sasr"] = {
	"Ancient Sassrian",
	nil,
	"sasr",
	"Latn",
	type = "conlang",
}

m["lyt"] = {
	"Oltic",
	nil,
	"ine, cel",
	"Grek, Cyrl",
	ancestors = "cel-pro, lyt-mid, lyt-old",
	type = "conlang",
}

m["lyt-mid"] = {
	"Middle Oltic",
	nil,
	"ine, cel",
	"Grek",
	ancestors = "cel-pro, lyt-old",
	type = "conlang",
}

m["lyt-old"] = {
	"Old Oltic",
	nil,
	"ine, cel",
	"Grek",
	ancestors = "cel-pro",
	type = "conlang",
}

m["mill"] = {
	"Millennish",
	nil,
	"ine, gem",
	"Latn",
	ancestors = "gem-pro, mill-old",
	type = "conlang",
}

m["mill-old"] = {
	"Old Millennish",
	nil,
	"ine, gem",
	"Latn",
	ancestors = "gem-pro",
	type = "conlang",
}

m["nwc"] = {
	"Anchwa",
	nil,
	"aav",
	"Hang, Thai, Khmr",
	ancestors = "aav-pro, nwc-old",
	type = "conlang",
}

m["nwc-old"] = {
	"Old Anchwa",
	nil,
	"aav",
	"Thai",
	ancestors = "aav-pro",
	type = "conlang",
}

m["pine"] = {
	"Pine",
	nil,
	"art",
	"Latn",
	entry_name = {
	from = {"‧"},
	to = {""},
	},
	sort_key = {
		remove_diacritics = c.hook,
	},
	type = "conlang",
}

m["old-pnsh"] = {
	"Old Ponish",
	nil,
	"art",
	"Latn",
	ancestors = "gmw-pro",
	type = "conlang",
}

m["pnsh"] = {
	"Ponish",
	nil,
	"art",
	"Latn",
	ancestors = "old-pnsh",
	type = "conlang",
}

m["sekh"] = {
	"Sekhulla",
	nil,
	"wasc",
	"Latn",
	ancestors = "wasc",
	type = "conlang",
}

m["rul"] = {
	"Rulhilli",
	nil,
	"sit, zhx",
	"Deva",
	ancestors = "och, rul-old",
	type = "conlang",
}

m["rul-old"] = {
	"Old Rulhilli",
	nil,
	"sit, zhx",
	"Deva",
	ancestors = "och",
	type = "conlang",
}

m["siwa"] = {
	"Siwa",
	nil,
	"alo-fre",
	"Latn",
	entry_name = {
		from = {"‧"},
		to = {""},
	},
	sort_key = {
		remove_diacritics = c.hook,
	},
	ancestors = "alo-pro",
	type = "conlang",
}

m["slaq-pro"] = {
	"Proto-Slaq",
	nil,
	"art",
	"Latn",
	type = "reconstructed,conlang",
}

m["sud"] = {
	"Sudyrnish",
	nil,
	"ine, gem",
	"Latn",
	ancestors = "ang",
	type = "conlang",
}

m["thuo"] = { 
	"Thuōsha",
	nil,
	"nen",
	"Latn",
	ancestors = "nen-pro",
	type = "conlang",
}

m["tok"] = {
	"Toki Pona",
	36846,
	"art",
	"Latn",
	type = "conlang",
}

m["uche"] = {
	"Uchee",
	nil,
	"slaq",
	"Latn",
	ancestors = "slaq-pro",
	type = "conlang",
}

m["urka"] = {
	"Urka",
	nil,
	"slaq",
	"Latn",
	ancestors = "slaq-pro",
	type = "conlang",
}

m["vinn"] = {
	"Vinnish",
	nil,
	"gem",
	"Latn",
	sort_key = {
		from = {"ð, æ, ø, å"},
		to = {"d" .. p[1], "z" .. p[1], "z" .. p[2], "z" .. p[3]}
	},
	type = "conlang",
}

m["wasc"] = {
	"Wascotl",
	nil,
	"art",
	"Latn",
	type = "reconstructed,conlang",
}

m["xchc"] = {
	"Chiingimec",
	nil,
	"art",
	"Cyrl",
	translit = "xchc-translit",
	type = "conlang",
}

m["zmlj"] = {
	"Zemljask",
	nil,
	"sla",
	"Latn",
	ancestors = "sla-pro",
	entry_name = {remove_diacritics = c.acute},
	type = "conlang",
}

m["rsn-pro"] = {
	"Proto-Raysio-Smipharic",
	nil,
	"vrg",
	"Latn",
	type = "reconstructed,conlang",
	ancestors = "vrg-pro",
}

m["cuy-pro"] = {
	"Proto-Cuyic",
	nil,
	"cuy",
	"Latn",
	type = "reconstructed,conlang",
	ancestors = "ine-pro",
}

m["oyp-old"] = {
	"Old Oypatha",
	nil,
	"cuy",
	"Hani",
	ancestors = "cuy-pro",
	type = "conlang",
}

m["oyp-mod"] = {
	"Oypatha",
	nil,
	"cuy",
	"Mong, mnc-Mong, sjo-Mong, xwo-Mong",
	ancestors = "oyp-old",
	type = "conlang",
}

m["icn-old"] = {
	"Old Incene",
	nil,
	"cuy",
	"fa-Arab",
	ancestors = "cuy-pro",
	type = "conlang",
}

m["syr-icn"] = {
	"Syrian Incene",
	nil,
	"cuy",
	"Arab, fa-Arab",
	ancestors = "icn-old",
	type = "conlang",
}

m["ant-icn"] = {
	"Anatolian Incene",
	nil,
	"cuy",
	"Armn",
	ancestors = "icn-old",
	type = "conlang",
}

m["vrg-pro"] = {
	"Proto-Vergic",
	nil,
	"vrg",
	type = "reconstructed,conlang",
	"Latn",
	ancestors = "ine-pro",
}

m["vib-old"] = {
	"Old Iberian Vergic",
	nil,
	"vrg",
	"Grek",
	ancestors = "vrg-pro",
	type = "conlang",
}

m["dac-old"] = {
	"Old Dacian Vergic",
	nil,
	"vrg",
	"Grek",
	ancestors = "vrg-pro",
	type = "conlang",
}

m["pls-pro"] = {
	"Proto-Plains",
	nil,
	"art",
	"Latn",
	type = "reconstructed,conlang"
}

m["pnn-pro"] = {
	"Proto-Pannonian",
	nil,
	"gem",
	type = "reconstructed,conlang",
	"Latn",
	ancestors = "gem-pro",
}

m["pnw-old"] = {
	"Old West Pannonian",
	nil,
	"gem",
	"Pann",
	ancestors = "pnn-pro",
	type = "conlang",
}

m["pne-old"] = {
	"Old East Pannonian",
	nil,
	"gem",
	"Pann",
	ancestors = "pnn-pro",
	type = "conlang",
}

m["qasu"] = {
	"Qasunattuuji",
	nil,
	"ine",
	ancestors = "ine-pro",
	"Latn",
	type = "conlang",
}

m["qut-nan"] = {
	"Qut", 
	nil,
	"art",
	"Latn",
	type = "conlang",
}

m["asc-pro"] = {
	"Proto-Asisic",
	nil,
	"asc",
	type = "reconstructed,conlang",
	"Latn",
}

m["wsc-pro"] = {
	"Proto-Tephricheic",
	nil,
	"asc",
	type = "reconstructed,conlang",
	ancestors = "asc-pro",
	"Latn",
}

m["esc-pro"] = {
	"Proto-Vainodic",
	nil,
	"asc",
	type = "reconstructed,conlang",
	ancestors = "asc-pro",
	"Latn",
}

m["mgx-pro"] = {
	"Proto-Myguxic",
	nil,
	"asc",
	type = "reconstructed,conlang",
	ancestors = "asc-pro",
	"Latn",
}

m["tfr-old"] = {
	"Old Tefrian",
	nil,
	"asc",
	ancestors = "wsc-pro",
	"Latn, Arab, fa-Arab",
	type = "conlang",
}

m["tfr-mod"] = {
	"Tefrian",
	nil,
	"asc",
	"fa-Arab, Arab",
	ancestors = "tfr-old",
	type = "conlang",
}

m["acs-old"] = {
	"Old Achissari",
	nil,
	"asc",
	"Brah",
	ancestors = "wsc-pro",
	type = "conlang",
}

m["acs-wst"] = {
	"West Achissari",
	nil,
	"asc",
	"ur-Arab",
	ancestors = "acs-old",
	type = "conlang",
}

m["acs-est"] = {
	"East Achissari",
	nil,
	"asc",
	"ur-Arab",
	ancestors = "acs-old",
	type = "conlang",
}

m["vanc"] = {
	"Vancian",
	nil,
	"asc",
	ancestors = "esc-pro",
	"Latn",
	type = "conlang",
}

m["buls"] = {
	"Bulusic",
	nil,
	"asc",
	ancestors = "esc-pro",
	"Latn",
	type = "conlang",
}

m["nygm"] = {
	"Nyongom",
	nil,
	"asc",
	ancestors = "esc-pro",
	"Cyrl",
	type = "conlang",
}

m["dvs-old"] = {
	"Old Dovasene",
	nil,
	"asc",
	ancestors = "mgx-pro",
	"Latn",
	type = "conlang",
}

m["dvs-mod"] = {
	"Dovasene",
	nil,
	"asc",
	ancestors = "dvs-old",
	"Cyrl",
	type = "conlang",
}

m["xbr-old"] = {
	"Old Khbirye",
	nil,
	"asc",
	ancestors = "mgx-pro",
	"Geok",
	type = "conlang",
}

m["xbr-mod"] = {
	"Khbirye",
	nil,
	"asc",
	ancestors = "xbr-old",
	"Geor",
	type = "conlang",
}































































































































m["aav-khs-pro"] = {
	"Proto-Khasian",
	116773216,
	"aav-khs",
	"Latn",
	type = "reconstructed",
}

m["aav-nic-pro"] = {
	"Proto-Nicobarese",
	116773793,
	"aav-nic",
	"Latn",
	type = "reconstructed",
}

m["aav-pkl-pro"] = {
	"Proto-Pnar-Khasi-Lyngngam",
	116773259,
	"aav-pkl",
	"Latn",
	type = "reconstructed",
}

m["aav-pro"] = { -- mkh-pro will merge into this
	"Proto-Austroasiatic",
	116773186,
	"aav",
	"Latn",
	type = "reconstructed",
}

m["afa-pro"] = {
	"Proto-Afroasiatic",
	269125,
	"afa",
	"Latn",
	type = "reconstructed",
}

m["alg-aga"] = {
	"Agawam",
	nil,
	"alg-eas",
	"Latn",
}

m["alg-pro"] = {
	"Proto-Algonquian",
	7251834,
	"alg",
	"Latn",
	type = "reconstructed",
	sort_key = {remove_diacritics = "·"},
}

m["alv-ama"] = {
	"Amasi",
	4740400,
	"nic-grs",
	"Latn",
	entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.tilde .. c.macron},
}

m["alv-bgu"] = {
	"Baïnounk Gubëeher",
	17002646,
	"alv-bny",
	"Latn",
}

m["alv-bua-pro"] = {
	"Proto-Bua",
	116773723,
	"alv-bua",
	"Latn",
	type = "reconstructed",
}

m["alv-cng-pro"] = {
	"Proto-Cangin",
	116773726,
	"alv-cng",
	"Latn",
	type = "reconstructed",
}

m["alv-edo-pro"] = {
	"Proto-Edoid",
	116773206,
	"alv-edo",
	"Latn",
	type = "reconstructed",
}

m["alv-fli-pro"] = {
	"Proto-Fali",
	116773754,
	"alv-fli",
	"Latn",
	type = "reconstructed",
}

m["alv-gbe-pro"] = {
	"Proto-Gbe",
	116773208,
	"alv-gbe",
	"Latn",
	type = "reconstructed",
}

m["alv-gng-pro"] = {
	"Proto-Guang",
	116773757,
	"alv-gng",
	"Latn",
	type = "reconstructed",
}

m["alv-gtm-pro"] = {
	"Proto-Central Togo",
	116773732,
	"alv-gtm",
	"Latn",
	type = "reconstructed",
}

m["alv-gwa"] = {
	"Gwara",
	16945580,
	"nic-pla",
	"Latn",
}

m["alv-hei-pro"] = {
	"Proto-Heiban",
	116773760,
	"alv-hei",
	"Latn",
	type = "reconstructed",
}

m["alv-ido-pro"] = {
	"Proto-Idomoid",
	116773764,
	"alv-ido",
	"Latn",
	type = "reconstructed",
}

m["alv-igb-pro"] = {
	"Proto-Igboid",
	116773765,
	"alv-igb",
	"Latn",
	type = "reconstructed",
}

m["alv-kwa-pro"] = {
	"Proto-Kwa",
	116773780,
	"alv-kwa",
	"Latn",
	type = "reconstructed",
}

m["alv-mum-pro"] = {
	"Proto-Mumuye",
	116773791,
	"alv-mum",
	"Latn",
	type = "reconstructed",
}

m["alv-nup-pro"] = {
	"Proto-Nupoid",
	116773795,
	"alv-nup",
	"Latn",
	type = "reconstructed",
}

m["alv-pro"] = {
	"Proto-Atlantic-Congo",
	116732838,
	"alv",
	"Latn",
	type = "reconstructed",
}

m["alv-edk-pro"] = {
	"Proto-Edekiri",
	nil,
	"alv-edk",
	"Latn",
	type = "reconstructed",
}

m["alv-yor-pro"] = {
	"Proto-Yoruba",
	nil,
	"alv-yor",
	"Latn",
	type = "reconstructed",
}

m["alv-yrd-pro"] = {
	"Proto-Yoruboid",
	116773824,
	"alv-yrd",
	"Latn",
	type = "reconstructed",
}

m["alv-von-pro"] = {
	"Proto-Volta-Niger",
	116773820,
	"alv-von",
	"Latn",
	type = "reconstructed",
}

m["apa-pro"] = {
	"Proto-Apachean",
	116773135,
	"apa",
	"Latn",
	type = "reconstructed",
}

m["aql-pro"] = {
	"Proto-Algic",
	18389588,
	"aql",
	"Latn",
	type = "reconstructed",
	sort_key = {remove_diacritics = "·"},
}

m["art-adu"] = {
	"Adûni",
	1232159,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-bel"] = {
	"Belter Creole",
	108055510,
	"art",
	"Latn",
	type = "appendix-constructed",
	sort_key = {
		remove_diacritics = c.acute,
		from = {"ɒ"},
		to = {"a"},
	},
}

m["art-blk"] = {
	"Bolak",
	2909283,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-bsp"] = {
	"Black Speech",
	686210,
	"art",
	"Latn, Teng",
	type = "appendix-constructed",
}

m["art-com"] = {
	"Communicationssprache",
	35227,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-dtk"] = {
	"Dothraki",
	2914733,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-elo"] = {
	"Eloi",
	nil,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-gld"] = {
	"Goa'uld",
	19823,
	"art",
	"Latn, Egyp, Mero",
	type = "appendix-constructed",
}

m["art-lap"] = {
	"Lapine",
	6488195,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-man"] = {
	"Mandalorian",
	54289,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-mun"] = {
	"Mundolinco",
	851355,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-nav"] = {
	"Na'vi",
	316939,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["art-vlh"] = {
	"High Valyrian",
	64483808,
	"art",
	"Latn",
	type = "appendix-constructed",
}

m["ath-nic"] = {
	"Nicola",
	20609,
	"ath-nor",
	"Latn",
}

m["ath-pro"] = {
	"Proto-Athabaskan",
	104841722,
	"ath",
	"Latn",
	type = "reconstructed",
}

m["auf-pro"] = {
	"Proto-Arawa",
	116773706,
	"auf",
	"Latn",
	type = "reconstructed",
}

m["aus-alu"] = {
	"Alungul",
	16827670,
	"aus-pmn",
	"Latn",
}

m["aus-and"] = {
	"Andjingith",
	4754509,
	"aus-pmn",
	"Latn",
}

m["aus-ang"] = {
	"Angkula",
	16828520,
	"aus-pmn",
	"Latn",
}

m["aus-arn-pro"] = {
	"Proto-Arnhem",
	116773720,
	"aus-arn",
	"Latn",
	type = "reconstructed",
}

m["aus-bra"] = {
	"Barranbinya",
	4863220,
	"aus-pmn",
	"Latn",
}

m["aus-brm"] = {
	"Barunggam",
	4865914,
	"aus-pmn",
	"Latn",
}

m["aus-cww-pro"] = {
	"Proto-Central New South Wales",
	116773199,
	"aus-cww",
	"Latn",
	type = "reconstructed",
}

m["aus-dal-pro"] = {
	"Proto-Daly",
	116773743,
	"aus-dal",
	"Latn",
	type = "reconstructed",
}

m["aus-guw"] = {
	"Guwar",
	6652138,
	"aus-pam",
	"Latn",
}

m["aus-lsw"] = {
	"Little Swanport",
	6652138,
	nil,
	"Latn",
}

m["aus-mbi"] = {
	"Mbiywom",
	6799701,
	"aus-pmn",
	"Latn",
}

m["aus-ngk"] = {
	"Ngkoth",
	7022405,
	"aus-pmn",
	"Latn",
}

m["aus-nyu-pro"] = {
	"Proto-Nyulnyulan",
	116773797,
	"aus-nyu",
	"Latn",
	type = "reconstructed",
}

m["aus-pam-pro"] = {
	"Proto-Pama-Nyungan",
	33942,
	"aus-pam",
	"Latn",
	type = "reconstructed",
}

m["aus-tul"] = {
	"Tulua",
	16938541,
	"aus-pam",
	"Latn",
}

m["aus-uwi"] = {
	"Uwinymil",
	7903995,
	"aus-arn",
	"Latn",
}

m["aus-wdj-pro"] = {
	"Proto-Iwaidjan",
	116773767,
	"aus-wdj",
	"Latn",
	type = "reconstructed",
}

m["aus-won"] = {
	"Wong-gie",
	nil,
	"aus-pam",
	"Latn",
}

m["aus-wul"] = {
	"Wulguru",
	8039196,
	"aus-dyb",
	"Latn",
}

m["aus-ynk"] = { -- contrast nny
	"Yangkaal",
	3913770,
	"aus-tnk",
	"Latn",
}

m["awd-amc-pro"] = {
	"Proto-Amuesha-Chamicuro",
	nil,
	"awd",
	"Latn",
	type = "reconstructed",
}

m["awd-kmp-pro"] = {
	"Proto-Kampa",
	nil,
	"awd",
	"Latn",
	type = "reconstructed",
}

m["awd-prw-pro"] = {
	"Proto-Paresi-Waura",
	nil,
	"awd",
	"Latn",
	type = "reconstructed",
}

m["awd-ama"] = {
	"Amarizana",
	16827787,
	"awd",
	"Latn",
}

m["awd-ana"] = {
	"Anauyá",
	16828252,
	"awd",
	"Latn",
}

m["awd-apo"] = {
	"Apolista",
	16916645,
	"awd",
	"Latn",
}

m["awd-cab"] = {
	"Cabre",
	16850160,
	"awd",
	"Latn",
}

m["awd-gnu"] = {
	"Guinau",
	3504087,
	"awd",
	"Latn",
}

m["awd-kar"] = {
	"Cariay",
	16920253,
	"awd",
	"Latn",
}

m["awd-kaw"] = {
	"Kawishana",
	6379993,
	"awd-nwk",
	"Latn",
}

m["awd-kus"] = {
	"Kustenau",
	5196293,
	"awd",
	"Latn",
}

m["awd-man"] = {
	"Manao",
	6746920,
	"awd",
	"Latn",
}

m["awd-mar"] = {
	"Marawan",
	6755108,
	"awd",
	"Latn",
}

m["awd-mpr"] = {
	"Maipure",
	6736872,
	"awd",
	"Latn",
}

m["awd-mrt"] = {
	"Mariaté",
	16910017,
	"awd-nwk",
	"Latn",
}

m["awd-nwk-pro"] = {
	"Proto-Nawiki",
	116773234,
	"awd-nwk",
	"Latn",
	type = "reconstructed",
}

m["awd-pai"] = {
	"Paikoneka",
	128807835,
	"awd",
	"Latn",
}

m["awd-pas"] = {
	"Pasé",
	7143168,
	"awd-nwk",
	"Latn",
}

m["awd-pro"] = {
	"Proto-Arawak",
	97573478,
	"awd",
	"Latn",
	type = "reconstructed",
}

m["awd-she"] = {
	"Shebayo",
	7492248,
	"awd",
	"Latn",
}

m["awd-taa-pro"] = {
	"Proto-Ta-Arawak",
	116773282,
	"awd-taa",
	"Latn",
	type = "reconstructed",
}

m["awd-wai"] = {
	"Wainumá",
	16910017,
	"awd-nwk",
	"Latn",
}

m["awd-yum"] = {
	"Yumana",
	8061062,
	"awd-nwk",
	"Latn",
}

m["azc-caz"] = {
	"Cazcan",
	5055514,
	"azc",
	"Latn",
}

m["azc-cup-pro"] = {
	"Proto-Cupan",
	116773738,
	"azc-cup",
	"Latn",
	type = "reconstructed",
}

m["azc-ktn"] = {
	"Kitanemuk",
	3197558,
	"azc-tak",
	"Latn",
}

m["azc-nah-pro"] = {
	"Proto-Nahuan",
	7251860,
	"azc-nah",
	"Latn",
	type = "reconstructed",
}

m["azc-num-pro"] = {
	"Proto-Numic",
	116773247,
	"azc-num",
	"Latn",
	type = "reconstructed",
}

m["azc-pro"] = {
	"Proto-Uto-Aztecan",
	96400333,
	"azc",
	"Latn",
	type = "reconstructed",
}

m["azc-tak-pro"] = {
	"Proto-Takic",
	116773283,
	"azc-tak",
	"Latn",
	type = "reconstructed",
}

m["azc-tat"] = {
	"Tataviam",
	743736,
	"azc",
	"Latn",
}

m["ber-pro"] = {
	"Proto-Berber",
	2855698,
	"ber",
	"Latn",
	type = "reconstructed",
}

m["ber-fog"] = {
	"Fogaha",
	107610173,
	"ber",
	"Latn",
}

m["ber-zuw"] = {
	"Zuwara",
	4117169,
	"ber",
	"Latn",
}

m["bnt-bal"] = {
	"Balong",
	93935237,
	"bnt-bbo",
	"Latn",
}

m["bnt-bon"] = {
	"Boma Nkuu",
	nil,
	"bnt",
	"Latn",
}

m["bnt-boy"] = {
	"Boma Yumu",
	nil,
	"bnt",
	"Latn",
}

m["bnt-bwa"] = {
	"Bwala",
	128810345,
	"bnt-tek",
	"Latn",
}

m["bnt-cmw"] = {
	"Chimwiini",
	4958328,
	"bnt-swh",
	"Latn",
}

m["bnt-ind"] = {
	"Indanga",
	51412803,
	"bnt",
	"Latn",
}

m["bnt-lal"] = {
	"Lala (South Africa)",
	6480154,
	"bnt-ngu",
	"Latn",
}

m["bnt-mpi"] = {
	"Mpiin",
	93937013,
	"bnt-bdz",
	"Latn",
}

m["bnt-mpu"] = {
	"Mpuono", -- not to be confused with Mbuun zmp
	36056,
	"bnt",
	"Latn",
}

m["bnt-ngu-pro"] = {
	"Proto-Nguni",
	961559,
	"bnt-ngu",
	"Latn",
	type = "reconstructed",
	sort_key = {remove_diacritics = c.grave .. c.acute .. c.circ .. c.caron},
}

m["bnt-phu"] = {
	"Phuthi",
	33796,
	"bnt-ngu",
	"Latn",
	entry_name = {remove_diacritics = c.grave .. c.acute},
}

m["bnt-pro"] = {
	"Proto-Bantu",
	3408025,
	"bnt",
	"Latn",
	type = "reconstructed",
	sort_key = "bnt-pro-sortkey",
}

m["bnt-sbo"] = {
	"South Boma",
	nil,
	"bnt",
	"Latn",
}

m["bnt-sts-pro"] = {
	"Proto-Sotho-Tswana",
	116773278,
	"bnt-sts",
	"Latn",
	type = "reconstructed",
}

m["btk-pro"] = {
	"Proto-Batak",
	116773191,
	"btk",
	"Latn",
	type = "reconstructed",
}

m["cau-abz-pro"] = {
	"Proto-Abkhaz-Abaza",
	7251831,
	"cau-abz",
	"Latn",
	type = "reconstructed",
}

m["cau-and-pro"] = {
	"Proto-Andian",
	nil,
	"cau-and",
	"Latn",
	type = "reconstructed",
}

m["cau-ava-pro"] = {
	"Proto-Avaro-Andian",
	116773187,
	"cau-ava",
	"Latn",
	type = "reconstructed",
}

m["cau-cir-pro"] = {
	"Proto-Circassian",
	7251838,
	"cau-cir",
	"Latn",
	type = "reconstructed",
}

m["cau-drg-pro"] = {
	"Proto-Dargwa",
	116773205,
	"cau-drg",
	"Latn",
	type = "reconstructed",
}

m["cau-lzg-pro"] = {
	"Proto-Lezghian",
	116773223,
	"cau-lzg",
	"Latn",
	type = "reconstructed",
}

m["cau-nec-pro"] = {
	"Proto-Northeast Caucasian",
	116773244,
	"cau-nec",
	"Latn",
	type = "reconstructed",
}

m["cau-nkh-pro"] = {
	"Proto-Nakh",
	108032840,
	"cau-nkh",
	"Latn",
	type = "reconstructed",
}

m["cau-nwc-pro"] = {
	"Proto-Northwest Caucasian",
	7251861,
	"cau-nwc",
	"Latn",
	type = "reconstructed",
}

m["cau-tsz-pro"] = {
	"Proto-Tsezian",
	116773287,
	"cau-tsz",
	"Latn",
	type = "reconstructed",
}

m["cba-ata"] = {
	"Atanques",
	4812783,
	"cba",
	"Latn",
}

m["cba-cat"] = {
	"Catío Chibcha",
	7083619,
	"cba",
	"Latn",
}

m["cba-dor"] = {
	"Dorasque",
	5297532,
	"cba",
	"Latn",
}

m["cba-dui"] = {
	"Duit",
	3041061,
	"cba",
	"Latn",
}

m["cba-hue"] = {
	"Huetar",
	35514,
	"cba",
	"Latn",
}

m["cba-nut"] = {
	"Nutabe",
	7070405,
	"cba",
	"Latn",
}

m["cba-pro"] = {
	"Proto-Chibchan",
	116773203,
	"cba",
	"Latn",
	type = "reconstructed",
}

m["ccs-pro"] = {
	"Proto-Kartvelian",
	2608203,
	"ccs",
	"Latn",
	type = "reconstructed",
	entry_name = {
		from = {"q̣", "p̣", "ʓ", "ċ"},
		to = {"q̇", "ṗ", "ʒ", "c̣"}
	},
}

m["ccs-gzn-pro"] = {
	"Proto-Georgian-Zan",
	23808119,
	"ccs-gzn",
	"Latn",
	type = "reconstructed",
	entry_name = {
		from = {"q̣", "p̣", "ʓ", "ċ"},
		to = {"q̇", "ṗ", "ʒ", "c̣"}
	},
}

m["cdc-cbm-pro"] = {
	"Proto-Central Chadic",
	116773197,
	"cdc-cbm",
	"Latn",
	type = "reconstructed",
}

m["cdc-mas-pro"] = {
	"Proto-Masa",
	116773789,
	"cdc-mas",
	"Latn",
	type = "reconstructed",
}

m["cdc-pro"] = {
	"Proto-Chadic",
	116773201,
	"cdc",
	"Latn",
	type = "reconstructed",
}

m["cdd-pro"] = {
	"Proto-Caddoan",
	116773725,
	"cdd",
	"Latn",
	type = "reconstructed",
}

m["cel-bry-pro"] = {
	"Proto-Brythonic",
	1248800,
	"cel-bry",
	"Latn, Polyt",
	translit = {
		Polyt = "grc-translit",
	},
	display_text = {
		Polyt = s["Polyt-displaytext"],
	},
	entry_name = {
		Polyt = s["Polyt-entryname"],
	},
	sort_key = {
		Latn = "cel-bry-pro-sortkey",
		Polyt = s["Polyt-sortkey"],
	},
}

m["cel-gal"] = {
	"Modern Gallaecian",
	nil, --3094789,
	"cel-his",
	"Latn"
}

m["cel-gau"] = {
	"Gaulish",
	29977,
	"cel",
	"Latn, Polyt, Ital",
	translit = {
		Polyt = "grc-translit",
		Ital = "Ital-translit"
	},
	display_text = {
		Polyt = s["Polyt-displaytext"],
	},
	entry_name = {
		Latn = {remove_diacritics = c.macron .. c.breve .. c.diaer},
		Polyt = s["Polyt-entryname"],
	},
	sort_key = {
		Latn = "cel-bry-pro-sortkey",
		Polyt = s["Polyt-sortkey"],
	},
}

m["cel-pro"] = {
	"Proto-Celtic",
	653649,
	"cel",
	"Latn",
	type = "reconstructed",
	sort_key = "cel-pro-sortkey",
}

m["chi-pro"] = {
	"Proto-Chimakuan",
	116773734,
	"chi",
	"Latn",
	type = "reconstructed",
}

m["chm-pro"] = {
	"Proto-Mari",
	116773788,
	"chm",
	"Latn",
	type = "reconstructed",
}

m["cmc-pro"] = {
	"Proto-Chamic",
	114793834,
	"cmc",
	"Latn",
	type = "reconstructed",
}

m["crp-bip"] = {
	"Basque-Icelandic Pidgin",
	810378,
	"crp",
	"Latn",
	ancestors = "eu",
}

m["crp-gep"] = {
	"West Greenlandic Pidgin",
	17036301,
	"crp",
	"Latn",
	ancestors = "kl",
}

m["crp-mar"] = {
	"Maroon Spirit Language",
	1093206,
	"crp",
	"Latn",
	ancestors = "en",
}

m["crp-mpp"] = {
	"Macau Pidgin Portuguese",
	128804537,
	"crp",
	"Hant, Latn",
	ancestors = "pt",
	sort_key = {Hant = "Hani-sortkey"},
}

m["crp-rsn"] = {
	"Russenorsk",
	505125,
	"crp",
	"Cyrl, Latn",
	ancestors = "nn, ru",
	translit = {Cyrl = "ru-translit"},
}

m["crp-spp"] = {
	"Samoan Plantation Pidgin",
	7409948,
	"crp",
	"Latn",
	ancestors = "en",
}

m["crp-slb"] = {
	"Solombala English",
	7558525,
	"crp",
	"Cyrl, Latn",
	ancestors = "en, ru",
	translit = {Cyrl = "ru-translit"},
}

m["crp-tpr"] = {
	"Taimyr Pidgin Russian",
	16930506,
	"crp",
	"Cyrl",
	ancestors = "ru",
	translit = "ru-translit",
}

m["csu-bba-pro"] = {
	"Proto-Bongo-Bagirmi",
	116773722,
	"csu-bba",
	"Latn",
	type = "reconstructed",
}

m["csu-maa-pro"] = {
	"Proto-Mangbetu",
	116773786,
	"csu-maa",
	"Latn",
	type = "reconstructed",
}

m["csu-pro"] = {
	"Proto-Central Sudanic",
	116773730,
	"csu",
	"Latn",
	type = "reconstructed",
}

m["csu-sar-pro"] = {
	"Proto-Sara",
	116773809,
	"csu-sar",
	"Latn",
	type = "reconstructed",
}

m["cus-ash"] = {
	"Ashraaf",
	4805855,
	"cus-som",
	"Latn",
}

m["cus-hec-pro"] = {
	"Proto-Highland East Cushitic",
	116773761,
	"cus-hec",
	"Latn",
	type = "reconstructed",
}

m["cus-som-pro"] = {
	"Proto-Somaloid",
	nil,
	"cus-som",
	"Latn",
	type = "reconstructed",
}

m["cus-sou-pro"] = {
	"Proto-South Cushitic",
	126081567,
	"cus-sou",
	"Latn",
	type = "reconstructed",
}

m["cus-pro"] = {
	"Proto-Cushitic",
	116773204,
	"cus",
	"Latn",
	type = "reconstructed",
}

m["dmn-dam"] = {
	"Dama (Sierra Leone)",
	19601574,
	"dmn",
	"Latn",
}

m["dra-bry"] = {
	"Beary",
	1089116,
	"qfa-mix",
	"Mlym, Knda",
	ancestors = "ml, tcy",
	translit = {
		Mlym = "ml-translit",
		Knda = "kn-translit",
	},
}

m["dra-cen-pro"] = {
	"Proto-Central Dravidian",
	nil,
	"dra-cen",
	"Latn",
	type = "reconstructed",
}

m["dra-mkn"] = {
	"Middle Kannada",
	128810572,
	"dra-kan",
	"Knda",
	translit = "kn-translit",
}

m["dra-nor-pro"] = {
	"Proto-North Dravidian",
	124433593,
	"dra-nor",
	"Latn",
	type = "reconstructed",
}

m["dra-okn"] = {
	"Old Kannada",
	15723156,
	"dra-kan",
	"Knda",
	translit = "kn-translit",
}

m["dra-ote"] = {
	"Old Telugu",
	126720868,
	"dra-tel",
	"Telu",
	translit = "te-translit",
}

m["dra-pro"] = {
	"Proto-Dravidian",
	1702853,
	"dra",
	"Latn",
	type = "reconstructed",
}

m["dra-sdo-pro"] = {
	"Proto-South Dravidian I",
	104847952, -- Wikipedia's "Proto-South Dravidian" is Proto-South Dravidian I in this scheme.
	"dra-sdo",
	"Latn",
	type = "reconstructed",
}

m["dra-sdt-pro"] = {
	"Proto-South Dravidian II",
	128885257,
	"dra-sdt",
	"Latn",
	type = "reconstructed",
}

m["dra-sou-pro"] = {
	"Proto-South Dravidian",
	128886121,
	"dra-sou",
	"Latn",
	type = "reconstructed",
}

m["egx-dem"] = {
	"Demotic",
	36765,
	"egx",
	"Latn, Egyd, Polyt",
	translit = {
		Polyt = "grc-translit",
	},
	display_text = {
		Polyt = s["Polyt-displaytext"],
	},
	entry_name = {
		Polyt = s["Polyt-entryname"],
	},
	sort_key = {
		Latn = {
			remove_diacritics = "'%-%s",
			from = {"ꜣ", "j", "e", "ꜥ", "y", "w", "b", "p", "f", "m", "n", "r", "l", "ḥ", "ḫ", "h̭", "ẖ", "h", "š", "s", "q", "k", "g", "ṱ", "ṯ", "t", "ḏ", "%.", "⸗"},
			to = {p[1], p[2], p[3], p[4], p[5], p[6], p[7], p[8], p[9], p[10], p[11], p[12], p[13], p[15], p[16], p[16], p[17], p[14], p[19], p[18], p[20], p[21], p[22], p[23], p[24], p[23], p[25], p[26], p[26]}
		},
		Polyt = s["Polyt-sortkey"],
	},
}

m["dmn-pro"] = {
	"Proto-Mande",
	116773785,
	"dmn",
	"Latn",
	type = "reconstructed",
}

m["dmn-mdw-pro"] = {
	"Proto-Western Mande",
	116773822,
	"dmn-mdw",
	"Latn",
	type = "reconstructed",
}

m["dru-pro"] = {
	"Proto-Rukai",
	116773807,
	"map",
	"Latn",
	type = "reconstructed",
}

m["esx-esk-pro"] = {
	"Proto-Eskimo",
	7251842,
	"esx-esk",
	"Latn",
	type = "reconstructed",
}

m["esx-ink"] = {
	"Inuktun",
	1671647,
	"esx-inu",
	"Latn",
}

m["esx-inq"] = {
	"Inuinnaqtun",
	28070,
	"esx-inu",
	"Latn",
}

m["esx-inu-pro"] = {
	"Proto-Inuit",
	60785588,
	"esx-inu",
	"Latn",
	type = "reconstructed",
}

m["esx-pro"] = {
	"Proto-Eskimo-Aleut",
	7251843,
	"esx",
	"Latn",
	type = "reconstructed",
}

m["esx-tut"] = {
	"Tunumiisut",
	15665389,
	"esx-inu",
	"Latn",
}

m["euq-pro"] = {
	"Proto-Basque",
	938011,
	"euq",
	"Latn",
	type = "reconstructed",
}

m["gba-pro"] = {
	"Proto-Gbaya",
	nil,
	"gba",
	"Latn",
	type = "reconstructed",
}

m["gem-pro"] = {
	"Proto-Germanic",
	669623,
	"gem",
	"Latn",
	type = "reconstructed",
	sort_key = "gem-pro-sortkey",
}

m["gme-bur"] = {
	"Burgundian",
	47625,
	"gme",
	"Latn",
}

m["gme-cgo"] = {
	"Crimean Gothic",
	36211,
	"gme",
	"Latn",
}

m["gmq-gut"] = {
	"Gutnish",
	1256646,
	"gmq",
	"Latn",
	ancestors = "gmq-ogt",
}

m["gmq-jmk"] = {
	"Jamtish",
	35512,
	"gmq-eas",
	"Latn",
}

m["gmq-mno"] = {
	"Middle Norwegian",
	3417070,
	"gmq-wes",
	"Latn",
}

m["gmq-oda"] = {
	"Old Danish",
	12330003,
	"gmq-eas",
	"Latn, Runr",
	entry_name = {remove_diacritics = c.macron},
}

m["gmq-ogt"] = {
	"Old Gutnish",
	1133488,
	"gmq",
	"Latn",
	ancestors = "non",
}

m["gmq-osw"] = {
	"Old Swedish",
	2417210,
	"gmq-eas",
	"Latn, Runr",
	entry_name = {remove_diacritics = c.macron},
}

m["gmq-pro"] = {
	"Proto-Norse",
	1671294,
	"gmq",
	"Runr",
	translit = "Runr-translit",
}

m["gmq-scy"] = {
	"Scanian",
	768017,
	"gmq-eas",
	"Latn",
}

m["gmw-bgh"] = {
	"Bergish",
	329030,
	"gmw-frk",
	"Latn",
}

m["gmw-cfr"] = {
	"Central Franconian",
	572197,
	"gmw-hgm",
	"Latn",
	ancestors = "gmh",
	wikimedia_codes = "ksh",
}

m["gmw-ecg"] = {
	"East Central German",
	499344, -- subsumes Q699284, Q152965
	"gmw-hgm",
	"Latn",
	ancestors = "gmh",
}

m["gmw-fin"] = {
	"Fingallian",
	3072588,
	"gmw-ian",
	"Latn",
}

m["gmw-gts"] = {
	"Gottscheerish",
	533109,
	"gmw-hgm",
	"Latn",
	ancestors = "bar",
}

m["gmw-jdt"] = {
	"Jersey Dutch",
	1687911,
	"gmw-frk",
	"Latn",
	ancestors = "nl",
}

m["gmw-msc"] = {
	"Middle Scots",
	3327000,
	"gmw-ang",
	"Latn",
	ancestors = "enm-esc",
}

m["gmw-pro"] = {
	"Proto-West Germanic",
	78079021,
	"gmw",
	"Latn",
	-- type = "reconstructed",
	-- largely but not entirely reconstructed (like Proto-Norse); see April '24 BP, set back to reconstructed (?) if 'anti-asterisk' is added
	sort_key = "gmw-pro-sortkey",
}

m["gmw-rfr"] = {
	"Rhine Franconian",
	707007,
	"gmw-hgm",
	"Latn",
	ancestors = "gmh",
}

m["gmw-stm"] = {
	"Sathmar Swabian",
	2223059,
	"gmw-hgm",
	"Latn",
	ancestors = "swg",
}

m["gmw-tsx"] = {
	"Transylvanian Saxon",
	260942,
	"gmw-hgm",
	"Latn",
	ancestors = "gmw-cfr",
}

m["gmw-vog"] = {
	"Volga German",
	312574,
	"gmw-hgm",
	"Latn",
	ancestors = "gmw-rfr",
}

m["gmw-zps"] = {
	"Zipser German",
	205548,
	"gmw-hgm",
	"Latn",
	ancestors = "gmh",
}

m["gn-cls"] = {
	"Classical Guaraní",
	17478065,
	"tup-gua",
	"Latn",
	ancestors = "gn",
}

m["grk-cal"] = {
	"Calabrian Greek",
	1146398,
	"grk",
	"Latn, Grek",
	ancestors = "grk-ita",
	translit = {
		Grek = "el-translit",
	},
	display_text = {
		Grek = s["Grek-displaytext"],
	},
	entry_name = {
		Grek = s["Grek-entryname"],
	},
	sort_key = {
		Grek = s["Grek-sortkey"],
	},
}

m["grk-ita"] = {
	"Italiot Greek",
	19720507,
	"grk",
	"Latn, Grek",
	ancestors = "gkm",
	translit = {
		Grek = "el-translit",
	},
	display_text = {
		Grek = s["Grek-displaytext"],
	},
	entry_name = {
		Grek = s["Grek-entryname"],
	},
	sort_key = {
		Grek = s["Grek-sortkey"],
	},
}

m["grk-mar"] = {
	"Mariupol Greek",
	4400023,
	"grk",
	"Cyrl, Latn, Grek",
	ancestors = "gkm",
	translit = {
		Cyrl = "grk-mar-translit",
		Grek = "grk-mar-translit",
	},
	override_translit = true,
	display_text = {
		Grek = s["Grek-displaytext"],
	},
	entry_name = {
		Cyrl = {remove_diacritics = c.acute},
		Grek = s["Grek-entryname"],
	},
	sort_key = {
		Grek = s["Grek-sortkey"],
	},
}

m["grk-pro"] = {
	"Proto-Hellenic",
	1231805,
	"grk",
	"Latn",
	type = "reconstructed",
	sort_key = {
		from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ď", "ľ", "ň", "ř", "ʰ", "ʷ", c.acute, c.macron},
		to = {"a", "e", "i", "o", "u", "d", "l", "n", "r", "¯h", "¯w"}
	},
}

m["hmn-pro"] = {
	"Proto-Hmong",
	116773210,
	"hmn",
	"Latn",
	type = "reconstructed",
}

m["hmx-mie-pro"] = {
	"Proto-Mien",
	116773229,
	"hmx-mie",
	"Latn",
	type = "reconstructed",
}

m["hmx-pro"] = {
	"Proto-Hmong-Mien",
	7251846,
	"hmx",
	"Latn",
	type = "reconstructed",
}

m["hyx-pro"] = {
	"Proto-Armenian",
	3848498,
	"hyx",
	"Latn",
	type = "reconstructed",
}

m["iir-nur-pro"] = {
	"Proto-Nuristani",
	116773248,
	"iir-nur",
	"Latn",
	type = "reconstructed",
}

m["iir-pro"] = {
	"Proto-Indo-Iranian",
	966439,
	"iir",
	"Latn",
	type = "reconstructed",
}

m["ijo-pro"] = {
	"Proto-Ijoid",
	116773766,
	"ijo",
	"Latn",
	type = "reconstructed",
}

m["inc-apa"] = {
	"Apabhramsa",
	616419,
	"inc-mid",
	"Deva, Shrd, Sidd",
	ancestors = "pra",
	translit = {
		Deva = "sa-translit",
		Shrd = "Shrd-translit",
		Sidd = "Sidd-translit",
	},
}

m["inc-ash"] = {
	"Ashokan Prakrit",
	104854379,
	"inc-mid",
	"Brah, Khar",
	ancestors = "sa",
	translit = {
		Brah = "Brah-translit",
		Khar = "Khar-translit",
	},
}

m["inc-kam"] = {
	"Kamarupi Prakrit",
	6356097,
	"inc-bas",
	"Brah, Sidd",
	translit = {
		Brah = "Brah-translit",
		Sidd = "Sidd-translit",
	},
}

m["inc-kho"] = {
	"Kholosi",
	24952008,
	"inc-snd",
	"Latn",
}

m["inc-krn-pro"] = {
	"Proto-Kamta",
	128816843,
	"inc-bas",
	"Latn",
	ancestors = "inc-kam",
	type = "reconstructed",
}

m["inc-mas"] = {
	"Middle Assamese",
	128806836,
	"inc-bas",
	"as-Beng",
	ancestors = "inc-oas",
	translit = "inc-mas-translit",
}

m["inc-mbn"] = {
	"Middle Bengali",
	113559927,
	"inc-bas",
	"Beng",
	ancestors = "inc-obn",
	translit = "inc-mbn-translit",
}

m["inc-mgu"] = {
	"Middle Gujarati",
	24907429,
	"inc-wes",
	"Deva",
	ancestors = "inc-ogu",
}

m["inc-mor"] = {
	"Middle Odia",
	128810882,
	"inc-eas",
	"Orya",
	ancestors = "inc-oor",
}

m["inc-oas"] = {
	"Early Assamese",
	85758237,
	"inc-bas",
	"as-Beng",
	ancestors = "inc-kam",
	translit = "inc-oas-translit",
}

m["inc-oaw"] = {
	"Old Awadhi",
	nil,
	"inc-hie",
	"Deva, Kthi, ur-Arab",
	entry_name = {
		from = {"هٔ", "ۂ"}, -- character "ۂ" code U+06C2 to "ه" and "هٔ"‎ (U+0647 + U+0654) to "ه"
		to = {"ہ", "ہ"},
		remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna .. c.superalef
	},
	translit = {
		Deva = "sa-translit",
		Kthi = "sa-Kthi-translit",
		["ur-Arab"] = "inc-ohi-translit",
	},
}

m["inc-obn"] = {
	"Old Bengali",
	113559926,
	"inc-bas",
	"Beng",
}

m["inc-ogu"] = {
	"Old Gujarati",
	24907427,
	"inc-wes",
	"Deva",
	translit = "sa-translit",
}

m["inc-ohi"] = {
	"Old Hindi",
	48767781,
	"inc-hiw",
	"Deva, ur-Arab",
	entry_name = {
		from = {"هٔ", "ۂ"}, -- character "ۂ" code U+06C2 to "ه" and "هٔ"‎ (U+0647 + U+0654) to "ه"
		to = {"ہ", "ہ"},
		remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun .. c.nunghunna .. c.superalef
	},
	translit = {
		Deva = "sa-translit",
		["ur-Arab"] = "inc-ohi-translit",
	},
}

m["inc-oor"] = {
	"Old Odia",
	128807801,
	"inc-eas",
	"Orya",
}

m["inc-opa"] = {
	"Old Punjabi",
	115270971,
	"inc-pan",
	"Guru, pa-Arab",
	translit = {
		Guru = "inc-opa-Guru-translit",
		["pa-Arab"] = "pa-Arab-translit",
	},
	entry_name = {remove_diacritics = c.fathatan .. c.dammatan .. c.kasratan .. c.fatha .. c.damma .. c.kasra .. c.shadda .. c.sukun},
}

m["inc-pro"] = {
	"Proto-Indo-Aryan",
	23808344,
	"inc",
	"Latn",
	type = "reconstructed",
}

m["ine-ana-pro"] = {
	"Proto-Anatolian",
	7251833,
	"ine-ana",
	"Latn",
	type = "reconstructed",
}

m["ine-bsl-pro"] = {
	"Proto-Balto-Slavic",
	1703347,
	"ine-bsl",
	"Latn",
	type = "reconstructed",
	sort_key = {
		from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", c.acute, c.macron, "ˀ"},
		to = {"a", "e", "i", "o", "u"}
	},
}

m["ine-kal"] = {
	"Kalašma",
	122770439,
	"ine-ana",
	"Xsux",
}

m["ine-pae"] = {
	"Paeonian",
	2705672,
	"ine",
	"Polyt",
	translit = "grc-translit",
	display_text = s["Polyt-displaytext"],
	entry_name = s["Polyt-entryname"],
	sort_key = s["Polyt-sortkey"],
}

m["ine-pro"] = {
	"Proto-Indo-European",
	37178,
	"ine",
	"Latn",
	type = "reconstructed",
	sort_key = {
		from = {"[áā]", "[éēḗ]", "[íī]", "[óōṓ]", "[úū]", "ĺ", "ḿ", "ń", "ŕ", "ǵ", "ḱ", "ʰ", "ʷ", "₁", "₂", "₃", c.ringbelow, c.acute, c.macron},
		to = {"a", "e", "i", "o", "u", "l", "m", "n", "r", "g'", "k'", "¯h", "¯w", "1", "2", "3"}
	},
}

m["ine-toc-pro"] = {
	"Proto-Tocharian",
	37029,
	"ine-toc",
	"Latn",
	type = "reconstructed",
}

m["xme-old"] = {
	"Old Median",
	36461,
	"xme",
	"Polyt, Latn",
	translit = {
		Polyt = "grc-translit",
	},
	display_text = {
		Polyt = s["Polyt-displaytext"],
	},
	entry_name = {
		Polyt = s["Polyt-entryname"],
	},
	sort_key = {
		Polyt = s["Polyt-sortkey"],
	},
}

m["xme-mid"] = {
	"Middle Median",
	12836150,
	"xme",
	"Latn",
}

m["xme-ker"] = {
	"Kermanic",
	129850,
	"xme",
	"fa-Arab, Latn",
	ancestors = "xme-mid",
}

m["xme-taf"] = {
	"Tafreshi",
	nil,
	"xme",
	"fa-Arab, Latn",
	ancestors = "xme-mid",
}

m["xme-ttc-pro"] = {
	"Proto-Tatic",
	122973870,
	"xme-ttc",
	"Latn",
	ancestors = "xme-mid",
}

m["xme-kls"] = {
	"Kalasuri",
	nil,
	"xme-ttc",
	ancestors = "xme-ttc-nor",
}

m["xme-klt"] = {
	"Kilit",
	3612452,
	"xme-ttc",
	"Cyrl", -- and fa-Arab?
}

m["xme-ott"] = {
	"Old Tati",
	434697,
	"xme-ttc",
	"fa-Arab, Latn",
}

m["ira-kms-pro"] = {
	"Proto-Komisenian",
	116773777,
	"ira-kms",
	"Latn",
	type = "reconstructed",
}

m["ira-mpr-pro"] = {
	"Proto-Medo-Parthian",
	116773227,
	"ira-mpr",
	"Latn",
	type = "reconstructed",
}

m["ira-pat-pro"] = {
	"Proto-Pathan",
	116773255,
	"ira-pat",
	"Latn",
	type = "reconstructed",
}

m["ira-pro"] = {
	"Proto-Iranian",
	4167865,
	"ira",
	"Latn",
	type = "reconstructed",
}

m["ira-zgr-pro"] = {
	"Proto-Zaza-Gorani",
	116775031,
	"ira-zgr",
	"Latn",
	type = "reconstructed",
}

m["xsc-pro"] = {
	"Proto-Scythian",
	116773273,
	"xsc",
	"Latn",
	type = "reconstructed",
}

m["xsc-sar-pro"] = {
	"Proto-Sarmatian",
	116773249,
	"xsc-sar",
	"Latn",
	type = "reconstructed",
}

m["xsc-skw-pro"] = {
	"Proto-Saka-Wakhi",
	116773267,
	"xsc-skw",
	"Latn",
	type = "reconstructed",
}

m["xsc-sak-pro"] = {
	"Proto-Saka",
	116773264,
	"xsc-sak",
	"Latn",
	type = "reconstructed",
}

m["ira-sym-pro"] = {
	"Proto-Shughni-Yazghulami-Munji",
	116773813,
	"ira-sym",
	"Latn",
	type = "reconstructed",
}

m["ira-sgi-pro"] = {
	"Proto-Sanglechi-Ishkashimi",
	116773808,
	"ira-sgi",
	"Latn",
	type = "reconstructed",
}

m["ira-mny-pro"] = {
	"Proto-Munji-Yidgha",
	116773792,
	"ira-mny",
	"Latn",
	type = "reconstructed",
}

m["ira-shy-pro"] = {
	"Proto-Shughni-Yazghulami",
	116773812,
	"ira-shy",
	"Latn",
	type = "reconstructed",
}

m["ira-shr-pro"] = {
	"Proto-Shughni-Roshani",
	116773811,
	"ira-shr",
	"Latn",
	type = "reconstructed",
}

m["ira-sgc-pro"] = {
	"Proto-Sogdic",
	116773276,
	"ira-sgc",
	"Latn",
	type = "reconstructed",
}

m["ira-wnj"] = {
	"Vanji",
	3398419,
	"ira-shy",
	"Latn",
}

m["iro-ere"] = {
	"Erie",
	5388365,
	"iro-nor",
	"Latn",
}

m["iro-min"] = {
	"Mingo",
	128531,
	"iro-nor",
	"Latn",
	ietf_subtag = "i-mingo", -- grandfathered IETF tag
}

m["iro-nor-pro"] = {
	"Proto-North Iroquoian",
	116773242,
	"iro-nor",
	"Latn",
	type = "reconstructed",
}

m["iro-pro"] = {
	"Proto-Iroquoian",
	7251852,
	"iro",
	"Latn",
	type = "reconstructed",
}

m["itc-pro"] = {
	"Proto-Italic",
	17102720,
	"itc",
	"Latn",
	type = "reconstructed",
}

m["jpx-hcj"] = {
	"Hachijō",
	5637049,
	"jpx",
	"Jpan",
	ancestors = "ojp-eas",
	translit = s["jpx-translit"],
	display_text = s["jpx-displaytext"],
	entry_name = s["jpx-entryname"],
	sort_key = s["jpx-sortkey"],
}

m["jpx-pro"] = {
	"Proto-Japonic",
	3924309,
	"jpx",
	"Latn",
	type = "reconstructed",
}

m["jpx-ryu-pro"] = {
	"Proto-Ryukyuan",
	56349069,
	"jpx-ryu",
	"Latn",
	type = "reconstructed",
}

m["kar-pro"] = {
	"Proto-Karen",
	85794783,
	"kar",
	"Latn",
	type = "reconstructed",
}

m["kca-eas"] = {
	"Eastern Khanty",
	30304622,
	"kca",
	"Cyrl",
	translit = "kca-translit",
	override_translit = true,
}

m["kca-nor"] = {
	"Northern Khanty",
	30304527,
	"kca",
	"Cyrl",
	translit = "kca-translit",
	override_translit = true,
}

m["kca-pro"] = {
	"Proto-Khanty",
	127505171,
	"kca",
	"Latn",
	type = "reconstructed",
}

m["kca-sou"] = {
	"Southern Khanty",
	30304618,
	"kca",
	"Cyrl",
	translit = "kca-translit",
	override_translit = true,
}

m["khi-kho-pro"] = {
	"Proto-Khoe",
	116773218,
	"khi-kho",
	"Latn",
	type = "reconstructed",
}

m["khi-kun"] = {
	"ǃKung",
	32904,
	"khi-kxa",
	"Latn",
}

m["ko-ear"] = {
	"Early Modern Korean",
	756014,
	"qfa-kor",
	"Kore",
	ancestors = "okm",
	translit = "okm-translit",
	entry_name = s["Kore-entryname"],
}

m["kro-pro"] = {
	"Proto-Kru",
	116773778,
	"kro",
	"Latn",
	type = "reconstructed",
}

m["ku-pro"] = {
	"Proto-Kurdish",
	116773221,
	"ku",
	"Latn",
	type = "reconstructed",
}

m["map-ata-pro"] = {
	"Proto-Atayalic",
	116773151,
	"map-ata",
	"Latn",
	type = "reconstructed",
}

m["map-bms"] = {
	"Banyumasan",
	33219,
	"map",
	"Latn",
}

m["map-pro"] = {
	"Proto-Austronesian",
	49230,
	"map",
	"Latn",
	type = "reconstructed",
}

m["mis-hkl"] = {
	"Kelantan Peranakan Hokkien",
	108794818,
	"qfa-mix",
	ancestors = "nan-hbl, sou, mfa",
}

m["mis-isa"] = {
	"Isaurian",
	16956868,
	nil,
--	"Xsux, Hluw, Latn",
}

m["mis-jie"] = {
	"Jie",
	124424186,
	nil,
	"Hani",
	sort_key = "Hani-sortkey",
}

m["mis-jzh"] = {
	"Jizhao",
	45242758,
	"qfa-bej",
	"Latn",
}

m["mis-kas"] = {
	"Kassite",
	35612,
	nil,
	"Xsux",
}

m["mis-mmd"] = {
	"Mimi of Decorse",
	6862206,
	nil,
	"Latn",
}

m["mis-mmn"] = {
	"Mimi of Nachtigal",
	6862207,
	nil,
	"Latn",
}

m["mis-phi"] = {
	"Philistine",
	2230924,
	nil,
	"Phnx",
}

m["mis-rou"] = {
	"Rouran",
	48816637,
	"qfa-xgx",
	"Hani, Latn",
	sort_key = {Hani = "Hani-sortkey"},
}

m["mis-tnw"] = {
	"Tangwang",
	7683179,
	"qfa-mix",
	"Latn",
	ancestors = "cmn, sce",
}

m["mis-tuh"] = {
	"Tuyuhun",
	48816625,
	"qfa-xgx",
	"Hani, Latn",
	sort_key = {Hani = "Hani-sortkey"},
}

m["mis-tuo"] = {
	"Tuoba",
	48816629,
	"qfa-xgx",
	"Hani, Latn",
	sort_key = {Hani = "Hani-sortkey"},
}

m["mis-wuh"] = {
	"Wuhuan",
	118976867,
	"qfa-xgx",
	"Hani, Latn",
	sort_key = {Hani = "Hani-sortkey"},
}

m["mis-xbi"] = {
	"Xianbei",
	4448647,
	"qfa-xgx",
	"Hani, Latn",
	sort_key = {Hani = "Hani-sortkey"},
}

m["mjg-mgl"] = {
	"Mongghul",
	53765528,
	"mjg",
	"Latn", -- also Mong, Cyrl ?
}

m["mjg-mgr"] = {
	"Mangghuer",
	56285392,
	"mjg",
	"Latn", -- also Mong, Cyrl ?
}

m["mkh-asl-pro"] = {
	"Proto-Aslian",
	55630680,
	"mkh-asl",
	"Latn",
	type = "reconstructed",
}

m["mkh-ban-pro"] = {
	"Proto-Bahnaric",
	116773189,
	"mkh-ban",
	"Latn",
	type = "reconstructed",
}

m["mkh-kat-pro"] = {
	"Proto-Katuic",
	116773772,
	"mkh-kat",
	"Latn",
	type = "reconstructed",
}

m["mkh-khm-pro"] = {
	"Proto-Khmuic",
	116773774,
	"mkh-khm",
	"Latn",
	type = "reconstructed",
}

m["mkh-kmr-pro"] = {
	"Proto-Khmeric",
	55630684,
	"mkh-kmr",
	"Latn",
	type = "reconstructed",
}

m["mkh-mmn"] = {
	"Middle Mon",
	121337926,
	"mkh-mnc",
	"Latn, Mymr", --and also Pallava
	ancestors = "omx",
}

m["mkh-mnc-pro"] = {
	"Proto-Monic",
	116773231,
	"mkh-mnc",
	"Latn",
	type = "reconstructed",
}

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

m["mkh-pal-pro"] = {
	"Proto-Palaungic",
	104847372,
	"mkh-pal",
	"Latn",
	type = "reconstructed",
}

m["mkh-pea-pro"] = {
	"Proto-Pearic",
	116773804,
	"mkh-pea",
	"Latn",
	type = "reconstructed",
}

m["mkh-pkn-pro"] = {
	"Proto-Pakanic",
	116773803,
	"mkh-pkn",
	"Latn",
	type = "reconstructed",
}

m["mkh-pro"] = { --This will be merged into 2015 aav-pro.
	"Proto-Mon-Khmer",
	7251859,
	"mkh",
	"Latn",
	type = "reconstructed",
}

m["mnw-tha"] = { -- To be removed.
	"Thai Mon",
	nil,
	"mkh-mnc",
	"Mymr, Thai",
	ancestors = "mkh-mmn",
	sort_key = {
		from = {"[%p]", "ျ", "ြ", "ွ", "ှ", "ၞ", "ၟ", "ၠ", "ၚ", "ဿ", "[็-๎]", "([เแโใไ])([ก-ฮ])ฺ?"},
		to = {"", "္ယ", "္ရ", "္ဝ", "္ဟ", "္န", "္မ", "္လ", "င", "သ္သ", "", "%2%1"}
		},
}

m["mkh-vie-pro"] = {
	"Proto-Vietic",
	109432616,
	"mkh-vie",
	"Latn",
	type = "reconstructed",
}

m["mns-cen"] = {
	"Central Mansi",
	128810384,
	"mns",
	"Cyrl",
	translit = "mns-translit",
	override_translit = true,
}

m["mns-nor"] = {
	"Northern Mansi",
	30304537,
	"mns",
	"Cyrl",
	translit = "mns-translit",
	override_translit = true,
}

m["mns-pro"] = {
	"Proto-Mansi",
	128883093,
	"mns",
	"Latn",
	type = "reconstructed",
}

m["mns-sou"] = {
	"Southern Mansi",
	30304629,
	"mns",
	"Cyrl",
	translit = "mns-translit",
	override_translit = true,
}

m["mun-pro"] = {
	"Proto-Munda",
	105102373,
	"mun",
	"Latn",
	type = "reconstructed",
}

m["myn-chl"] = { -- the stage after ''emy''
	"Ch'olti'",
	873995,
	"myn",
	"Latn",
}

m["myn-pro"] = {
	"Proto-Mayan",
	3321532,
	"myn",
	"Latn",
	type = "reconstructed",
}

m["nai-ala"] = {
	"Alazapa",
	128810233,
	nil,
	"Latn",
}

m["nai-bay"] = {
	"Bayogoula",
	1563704,
	nil,
	"Latn",
}

m["nai-cal"] = {
	"Calusa",
	51782,
	nil,
	"Latn",
}

m["nai-chi"] = {
	"Chiquimulilla",
	25339627,
	"nai-xin",
	"Latn",
}

m["nai-chu-pro"] = {
	"Proto-Chumash",
	116773736,
	"nai-chu",
	"Latn",
	type = "reconstructed",
}

m["nai-cig"] = {
	"Ciguayo",
	20741700,
	nil,
	"Latn",
}

m["nai-ckn-pro"] = {
	"Proto-Chinookan",
	116773735,
	"nai-ckn",
	"Latn",
	type = "reconstructed",
}

m["nai-guz"] = {
	"Guazacapán",
	19572028,
	"nai-xin",
	"Latn",
}

m["nai-hit"] = {
	"Hitchiti",
	1542882,
	"nai-mus",
	"Latn",
}

m["nai-ipa"] = {
	"Ipai",
	3027474,
	"nai-yuc",
	"Latn",
}

m["nai-jtp"] = {
	"Jutiapa",
	nil,
	"nai-xin",
	"Latn",
}

m["nai-jum"] = {
	"Jumaytepeque",
	25339626,
	"nai-xin",
	"Latn",
}

m["nai-kat"] = {
	"Kathlamet",
	6376639,
	"nai-ckn",
	"Latn",
}

m["nai-klp-pro"] = {
	"Proto-Kalapuyan",
	116773771,
	"nai-klp",
	"Latn",
	type = "reconstructed",
}

m["nai-knm"] = {
	"Konomihu",
	3198734,
	"nai-shs",
	"Latn",
}

m["nai-kum"] = {
	"Kumeyaay",
	4910139,
	"nai-yuc",
	"Latn",
}

m["nai-mac"] = {
	"Macoris",
	21070851,
	nil,
	"Latn",
}

m["nai-mdu-pro"] = {
	"Proto-Maidun",
	116773784,
	"nai-mdu",
	"Latn",
	type = "reconstructed",
}

m["nai-miz-pro"] = {
	"Proto-Mixe-Zoque",
	7251858,
	"nai-miz",
	"Latn",
	type = "reconstructed",
}

m["nai-mus-pro"] = {
	"Proto-Muskogean",
	116775368,
	"nai-mus",
	"Latn",
	type = "reconstructed",
}

m["nai-nao"] = {
	"Naolan",
	6964594,
	nil,
	"Latn",
}

m["nai-nrs"] = {
	"New River Shasta",
	7011254,
	"nai-shs",
	"Latn",
}

m["nai-okw"] = {
	"Okwanuchu",
	3350126,
	"nai-shs",
	"Latn",
}

m["nai-per"] = {
	"Pericú",
	3375369,
	nil,
	"Latn",
}

m["nai-pic"] = {
	"Picuris",
	7191257,
	"nai-kta",
	"Latn",
}

m["nai-plp-pro"] = {
	"Proto-Plateau Penutian",
	116773806,
	"nai-plp",
	"Latn",
	type = "reconstructed",
}

m["nai-pom-pro"] = {
	"Proto-Pomo",
	116773262,
	"nai-pom",
	"Latn",
	type = "reconstructed",
}

m["nai-qng"] = {
	"Quinigua",
	36360,
	nil,
	"Latn",
}

m["nai-sca-pro"] = { -- NB 'sio-pro' "Proto-Siouan" which is Proto-Western Siouan
	"Proto-Siouan-Catawban",
	116773275,
	"nai-sca",
	"Latn",
	type = "reconstructed",
}

m["nai-sin"] = {
	"Sinacantán",
	24190249,
	"nai-xin",
	"Latn",
}

m["nai-sln"] = {
	"Salvadoran Lenca",
	3229434,
	"nai-len",
	"Latn",
}

m["nai-spt"] = {
	"Sahaptin",
	3833015,
	"nai-shp",
	"Latn",
}

m["nai-tap"] = {
	"Tapachultec",
	7684401,
	"nai-miz",
	"Latn",
}

m["nai-taw"] = {
	"Tawasa",
	7689233,
	nil,
	"Latn",
}

m["nai-teq"] = {
	"Tequistlatec",
	2964454,
	"nai-tqn",
	"Latn",
}

m["nai-tip"] = {
	"Tipai",
	3027471,
	"nai-yuc",
	"Latn",
}

m["nai-tot-pro"] = {
	"Proto-Totozoquean",
	116773285,
	"nai-tot",
	"Latn",
	type = "reconstructed",
}

m["nai-tsi-pro"] = {
	"Proto-Tsimshianic",
	nil,
	"nai-tsi",
	"Latn",
	type = "reconstructed",
}

m["nai-utn-pro"] = {
	"Proto-Utian",
	116773290,
	"nai-utn",
	"Latn",
	type = "reconstructed",
}

m["nai-wai"] = {
	"Waikuri",
	3118702,
	nil,
	"Latn",
}

m["nai-wji"] = {
	"Western Jicaque",
	3178610,
	"nai-jcq",
	"Latn",
}

m["nai-yup"] = {
	"Yupiltepeque",
	25339628,
	"nai-xin",
	"Latn",
}

m["nan-dat"] = {
	"Datian Min",
	19855572,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	sort_key = "Hani-sortkey",
}

m["nan-hbl"] = {
	"Hokkien",
	1624231,
	"zhx-nan",
	"Hants, Latn, Bopo, Kana",
	wikimedia_codes = "zh-min-nan",
	generate_forms = "zh-generateforms",
	sort_key = {
		Hani = "Hani-sortkey",
		Kana = "Kana-sortkey"
	},
}

m["nan-hlh"] = {
	"Hailufeng Min",
	120755728,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	sort_key = "Hani-sortkey",
}

m["nan-lnx"] = {
	"Longyan Min",
	6674568,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	sort_key = "Hani-sortkey",
}

m["nan-tws"] = {
	"Teochew",
	36759,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	translit = "zh-translit",
	sort_key = "Hani-sortkey",
}

m["nan-zhe"] = {
	"Zhenan Min",
	3846710,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	sort_key = "Hani-sortkey",
}

m["nan-zsh"] = {
	"Sanxiang Min",
	7420769,
	"zhx-nan",
	"Hants",
	generate_forms = "zh-generateforms",
	sort_key = "Hani-sortkey",
}

m["nds-de"] = {
	"German Low German",
	25433,
	"gmw-lgm",
	"Latn",
	ancestors = "nds",
	ietf_subtag = "nds-DE", -- should we make this the actual code?
	wikimedia_codes = "nds",
}

m["nds-nl"] = {
	"Dutch Low Saxon",
	516137,
	"gmw-lgm",
	"Latn",
	ancestors = "nds",
	ietf_subtag = "nds-NL", -- should we make this the actual code?
}

m["ngf-pro"] = {
	"Proto-Trans-New Guinea",
	85794785,
	"ngf",
	"Latn",
	type = "reconstructed",
}

m["nic-bco-pro"] = {
	"Proto-Benue-Congo",
	116773194,
	"nic-bco",
	"Latn",
	type = "reconstructed",
}

m["nic-bod-pro"] = {
	"Proto-Bantoid",
	116773190,
	"nic-bod",
	"Latn",
	type = "reconstructed",
}

m["nic-eov-pro"] = {
	"Proto-Eastern Oti-Volta",
	116773753,
	"nic-eov",
	"Latn",
	type = "reconstructed",
}

m["nic-gns-pro"] = {
	"Proto-Gurunsi",
	116773759,
	"nic-gns",
	"Latn",
	type = "reconstructed",
}

m["nic-grf-pro"] = {
	"Proto-Grassfields",
	116773755,
	"nic-grf",
	"Latn",
	type = "reconstructed",
}

m["nic-gur-pro"] = {
	"Proto-Gur",
	116773758,
	"nic-gur",
	"Latn",
	type = "reconstructed",
}

m["nic-jkn-pro"] = {
	"Proto-Jukunoid",
	116773769,
	"nic-jkn",
	"Latn",
	type = "reconstructed",
}

m["nic-lcr-pro"] = {
	"Proto-Lower Cross River",
	116773782,
	"nic-lcr",
	"Latn",
	type = "reconstructed",
}

m["nic-ogo-pro"] = {
	"Proto-Ogoni",
	116773799,
	"nic-ogo",
	"Latn",
	type = "reconstructed",
}

m["nic-ovo-pro"] = {
	"Proto-Oti-Volta",
	116773802,
	"nic-ovo",
	"Latn",
	type = "reconstructed",
}

m["nic-plt-pro"] = {
	"Proto-Plateau",
	116773805,
	"nic-plt",
	"Latn",
	type = "reconstructed",
}

m["nic-pro"] = {
	"Proto-Niger-Congo",
	108000748,
	"nic",
	"Latn",
	type = "reconstructed",
}

m["nic-ubg-pro"] = {
	"Proto-Ubangian",
	116773818,
	"nic-ubg",
	"Latn",
	type = "reconstructed",
}

m["nic-ucr-pro"] = {
	"Proto-Upper Cross River",
	116773819,
	"nic-ucr",
	"Latn",
	type = "reconstructed",
}

m["nic-vco-pro"] = {
	"Proto-Volta-Congo",
	116773293,
	"nic-vco",
	"Latn",
	type = "reconstructed",
}

m["nub-har"] = {
	"Haraza",
	19572059,
	"nub",
	"Arab, Latn",
}

m["nub-pro"] = {
	"Proto-Nubian",
	116773246,
	"nub",
	"Latn",
	type = "reconstructed",
}

m["omq-cha-pro"] = {
	"Proto-Chatino",
	116773202,
	"omq-cha",
	"Latn",
	type = "reconstructed",
}

m["omq-maz-pro"] = {
	"Proto-Mazatec",
	116773790,
	"omq-maz",
	"Latn",
	type = "reconstructed",
}

m["omq-mix-pro"] = {
	"Proto-Mixtecan",
	21573423,
	"omq-mix",
	"Latn",
	type = "reconstructed",
}

m["omq-mxt-pro"] = {
	"Proto-Mixtec",
	21573424,
	"omq-mxt",
	"Latn",
	type = "reconstructed",
}

m["omq-otp-pro"] = {
	"Proto-Oto-Pamean",
	116773251,
	"omq-otp",
	"Latn",
	type = "reconstructed",
}

m["omq-pro"] = {
	"Proto-Oto-Manguean",
	33669,
	"omq",
	"Latn",
	type = "reconstructed",
}

m["omq-sjq"] = {
	"San Juan Quiahije Chatino",
	17003130,
	"omq-cha",
	"Latn",
}

m["omq-tel"] = {
	"Teposcolula Mixtec",
	nil,
	"omq-mxt",
	"Latn",
}

m["omq-teo"] = {
	"Teojomulco Chatino",
	25340451,
	"omq-cha",
	"Latn",
}

m["omq-tri-pro"] = {
	"Proto-Trique",
	116773817,
	"omq-tri",
	"Latn",
	type = "reconstructed",
}

m["omq-zap-pro"] = {
	"Proto-Zapotecan",
	116773297,
	"omq-zap",
	"Latn",
	type = "reconstructed",
}

m["omq-zpc-pro"] = {
	"Proto-Zapotec",
	116773296,
	"omq-zpc",
	"Latn",
	type = "reconstructed",
}

m["omv-aro-pro"] = {
	"Proto-Aroid",
	116773721,
	"omv-aro",
	"Latn",
	type = "reconstructed",
}

m["omv-diz-pro"] = {
	"Proto-Dizoid",
	116773750,
	"omv-diz",
	"Latn",
	type = "reconstructed",
}

m["omv-pro"] = {
	"Proto-Omotic",
	116773800,
	"omv",
	"Latn",
	type = "reconstructed",
}

m["oto-otm-pro"] = {
	"Proto-Otomi",
	5908710,
	"oto-otm",
	"Latn",
	type = "reconstructed",
}

m["oto-pro"] = {
	"Proto-Otomian",
	116773252,
	"oto",
	"Latn",
	type = "reconstructed",
}

m["paa-kom"] = {
	"Kómnzo",
	18344310,
	"paa-yam",
	"Latn",
}

m["paa-kwn"] = {
	"Kuwani",
	6449056,
	"paa",
	"Latn",
}

m["paa-nha-pro"] = {
	"Proto-North Halmahera",
	116773241,
	"paa-nha",
	"Latn",
	type = "reconstructed"
}

m["paa-nun"] = {
	"Nungon",
	128807788,
	"paa",
	"Latn",
}

m["phi-din"] = {
	"Dinapigue Agta",
	16945774,
	"phi",
	"Latn",
}

m["phi-kal-pro"] = {
	"Proto-Kalamian",
	116773213,
	"phi-kal",
	"Latn",
	type = "reconstructed",
}

m["phi-nag"] = {
	"Nagtipunan Agta",
	16966111,
	"phi",
	"Latn",
}

m["phi-pro"] = {
	"Proto-Philippine",
	18204898,
	"phi",
	"Latn",
	type = "reconstructed",
}

m["poz-abi"] = {
	"Abai",
	19570729,
	"poz-san",
	"Latn",
}

m["poz-bal"] = {
	"Baliledo",
	4850912,
	"poz",
	"Latn",
}

m["poz-btk-pro"] = {
	"Proto-Bungku-Tolaki",
	116773724,
	"poz-btk",
	"Latn",
	type = "reconstructed",
}

m["poz-cet-pro"] = {
	"Proto-Central-Eastern Malayo-Polynesian",
	2269883,
	"poz-cet",
	"Latn",
	type = "reconstructed",
}

m["poz-hce-pro"] = {
	"Proto-Halmahera-Cenderawasih",
	116773209,
	"poz-hce",
	"Latn",
	type = "reconstructed",
}

m["poz-lgx-pro"] = {
	"Proto-Lampungic",
	116773222,
	"poz-lgx",
	"Latn",
	type = "reconstructed",
}

m["poz-mcm-pro"] = {
	"Proto-Malayo-Chamic",
	116773225,
	"poz-mcm",
	"Latn",
	type = "reconstructed",
}

m["poz-mic-pro"] = {
	"Proto-Micronesian",
	111939079,
	"poz-mic",
	"Latn",
	type = "reconstructed",
}

m["poz-mly-pro"] = {
	"Proto-Malayic",
	98057728,
	"poz-mly",
	"Latn",
	type = "reconstructed",
}

m["poz-msa-pro"] = {
	"Proto-Malayo-Sumbawan",
	116773226,
	"poz-msa",
	"Latn",
	type = "reconstructed",
}

m["poz-oce-pro"] = {
	"Proto-Oceanic",
	141741,
	"poz-oce",
	"Latn",
	type = "reconstructed",
}

m["poz-pep-pro"] = {
	"Proto-Eastern Polynesian",
	113988745,
	"poz-pep",
	"Latn",
	type = "reconstructed",
}

m["poz-pnp-pro"] = {
	"Proto-Nuclear Polynesian",
	113988746,
	"poz-pnp",
	"Latn",
	type = "reconstructed",
}

m["poz-pol-pro"] = {
	"Proto-Polynesian",
	1658709,
	"poz-pol",
	"Latn",
	type = "reconstructed",
}

m["poz-pro"] = {
	"Proto-Malayo-Polynesian",
	3832960,
	"poz",
	"Latn",
	type = "reconstructed",
}

m["poz-sml"] = {
	"Sarawak Malay",
	4251702,
	"poz-mly",
	"Latn, ms-Arab",
}

m["poz-ssw-pro"] = {
	"Proto-South Sulawesi",
	116773279,
	"poz-ssw",
	"Latn",
	type = "reconstructed",
}

m["poz-sus-pro"] = {
	"Proto-Sunda-Sulawesi",
	116773281,
	"poz-sus",
	"Latn",
	type = "reconstructed",
}

m["poz-swa-pro"] = {
	"Proto-North Sarawak",
	116773243,
	"poz-swa",
	"Latn",
	type = "reconstructed",
}

m["poz-ter"] = {
	"Terengganu Malay",
	4207412,
	"poz-mly",
	"Latn, ms-Arab",
}

m["pqe-pro"] = {
	"Proto-Eastern Malayo-Polynesian",
	2269883,
	"pqe",
	"Latn",
	type = "reconstructed",
}

m["pra-niy"] = {
	"Niya Prakrit",
	11991601,
	"inc-mid",
	"Khar",
	ancestors = "inc-ash",
	translit = "Khar-translit",
}

m["qfa-adm-pro"] = {
	"Proto-Great Andamanese",
	116773756,
	"qfa-adm",
	"Latn",
	type = "reconstructed",
}

m["qfa-bet-pro"] = {
	"Proto-Be-Tai",
	116773193,
	"qfa-bet",
	"Latn",
	type = "reconstructed",
}

m["qfa-cka-pro"] = {
	"Proto-Chukotko-Kamchatkan",
	7251837,
	"qfa-cka",
	"Latn",
	type = "reconstructed",
}

m["qfa-hur-pro"] = {
	"Proto-Hurro-Urartian",
	116773211,
	"qfa-hur",
	"Latn",
	type = "reconstructed",
}

m["qfa-kad-pro"] = {
	"Proto-Kadu",
	116773770,
	"qfa-kad",
	"Latn",
	type = "reconstructed",
}

m["qfa-kms-pro"] = {
	"Proto-Kam-Sui",
	55630682,
	"qfa-kms",
	"Latn",
	type = "reconstructed",
}

m["qfa-kor-pro"] = {
	"Proto-Koreanic",
	467883,
	"qfa-kor",
	"Latn",
	type = "reconstructed",
}

m["qfa-kra-pro"] = {
	"Proto-Kra",
	7251854,
	"qfa-kra",
	"Latn",
	type = "reconstructed",
}

m["qfa-lic-pro"] = {
	"Proto-Hlai",
	7251845,
	"qfa-lic",
	"Latn",
	type = "reconstructed",
}

m["qfa-onb-pro"] = {
	"Proto-Be",
	116773192,
	"qfa-onb",
	"Latn",
	type = "reconstructed",
}

m["qfa-ong-pro"] = {
	"Proto-Ongan",
	116773801,
	"qfa-ong",
	"Latn",
	type = "reconstructed",
}

m["qfa-tak-pro"] = {
	"Proto-Kra-Dai",
	104901616,
	"qfa-tak",
	"Latn",
	type = "reconstructed",
}

m["qfa-yen-pro"] = {
	"Proto-Yeniseian",
	27639,
	"qfa-yen",
	"Latn",
	type = "reconstructed",
}

m["qfa-yuk-pro"] = {
	"Proto-Yukaghir",
	116773294,
	"qfa-yuk",
	"Latn",
	type = "reconstructed",
}

m["qwe-kch"] = {
	"Kichwa",
	1740805,
	"qwe",
	"Latn",
	ancestors = "qu",
}

m["qwe-pro"] = {
	"Proto-Quechuan",
	5575757,
	"qwe",
	"Latn",
	type = "reconstructed",
}

m["roa-ang"] = {
	"Angevin",
	56782,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-bbn"] = {
	"Bourbonnais-Berrichon",
	2899128,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-brg"] = {
	"Bourguignon",
	508332,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-cha"] = {
	"Champenois",
	430018,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-fcm"] = {
	"Franc-Comtois",
	510561,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-gal"] = {
	"Gallo",
	37300,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-gib"] = {
	"Gallo-Italic of Basilicata",
	3094838,
	"roa-git",
	"Latn",
}

m["roa-gis"] = {
	"Gallo-Italic of Sicily",
	2629019,
	"roa-git",
	"Latn",
}

m["roa-leo"] = {
	"Leonese",
	34108,
	"roa-ibe",
	"Latn",
	ancestors = "roa-ole",
}

m["roa-lor"] = {
	"Lorrain",
	671198,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-oan"] = {
	"Navarro-Aragonese",
	2736184,
	"roa-ibe",
	"Latn",
}

m["roa-oca"] = {
	"Old Catalan",
	15478520,
	"roa-ocr",
	"Latn",
	sort_key = {
		from = {"à", "[èé]", "[íï]", "[òó]", "[úü]", "ç", "·"},
		to = {"a", "e", "i", "o", "u", "c"}
	},
}

m["roa-ole"] = {
	"Old Leonese",
	125977465,
	"roa-ibe",
	"Latn",
}

m["roa-opt"] = {
	"Old Galician-Portuguese",
	1072111,
	"roa-ibe",
	"Latn",
	entry_name = {remove_diacritics = c.grave .. c.acute .. c.circ},
}

m["roa-orl"] = {
	"Orléanais",
	28497058,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-poi"] = {
	"Poitevin-Saintongeais",
	514123,
	"roa-oil",
	"Latn",
	sort_key = s["roa-oil-sortkey"],
}

m["roa-tar"] = {
	"Tarantino",
	695526,
	"roa-itd",
	"Latn",
	ancestors = "nap",
	wikimedia_codes = "roa-tara",
}

m["sai-all"] = {
	"Allentiac",
	19570789,
	"sai-hrp",
	"Latn",
}

m["sai-and"] = { -- not to be confused with 'cbc' or 'ano'
	"Andoquero",
	16828359,
	"sai-wit",
	"Latn",
}

m["sai-ayo"] = {
	"Ayomán",
	16937754,
	"sai-jir",
	"Latn",
}

m["sai-bae"] = {
	"Baenan",
	3401998,
	nil,
	"Latn",
}

m["sai-bag"] = {
	"Bagua",
	5390321,
	nil,
	"Latn",
}

m["sai-bet"] = {
	"Betoi",
	926551,
	"qfa-iso",
	"Latn",
}


m["sai-bor-pro"] = {
	"Proto-Boran",
	nil,
	"sai-bor",
	"Latn",
}

m["sai-cac"] = {
	"Cacán",
	945482,
	nil,
	"Latn",
}

m["sai-caq"] = {
	"Caranqui",
	2937753,
	"sai-bar",
	"Latn",
}

m["sai-car-pro"] = {
	"Proto-Cariban",
	116773196,
	"sai-car",
	"Latn",
	type = "reconstructed",
}

m["sai-cat"] = {
	"Catacao",
	5051136,
	"sai-ctc",
	"Latn",
}

m["sai-cer-pro"] = {
	"Proto-Cerrado",
	116773200,
	"sai-cer",
	"Latn",
	type = "reconstructed",
}

m["sai-chi"] = {
	"Chirino",
	5390321,
	nil,
	"Latn",
}

m["sai-chn"] = {
	"Chaná",
	5072718,
	"sai-crn",
	"Latn",
}

m["sai-chp"] = {
	"Chapacura",
	5072884,
	"sai-cpc",
	"Latn",
}

m["sai-chr"] = {
	"Charrua",
	5086680,
	"sai-crn",
	"Latn",
}

m["sai-chu"] = {
	"Churuya",
	5118339,
	"sai-guh",
	"Latn",
}

m["sai-cje-pro"] = {
	"Proto-Central Jê",
	116773198,
	"sai-cje",
	"Latn",
	type = "reconstructed",
}

m["sai-cmg"] = {
	"Comechingon",
	6644203,
	nil,
	"Latn",
}

m["sai-cno"] = {
	"Chono",
	5104704,
	nil,
	"Latn",
}

m["sai-cnr"] = {
	"Cañari",
	5055572,
	nil,
	"Latn",
}

m["sai-coe"] = {
	"Coeruna",
	6425639,
	"sai-wit",
	"Latn",
}

m["sai-col"] = {
	"Colán",
	5141893,
	"sai-ctc",
	"Latn",
}

m["sai-cop"] = {
	"Copallén",
	5390321,
	nil,
	"Latn",
}

m["sai-crd"] = {
	"Coroado Puri",
	24191321,
	"sai-mje",
	"Latn",
}

m["sai-ctq"] = {
	"Catuquinaru",
	16858455,
	nil,
	"Latn",
}

m["sai-cul"] = {
	"Culli",
	2879660,
	nil,
	"Latn",
}

m["sai-cva"] = {
	"Cueva",
	5192644,
	nil,
	"Latn",
}

m["sai-esm"] = {
	"Esmeralda",
	3058083,
	nil,
	"Latn",
}

m["sai-ewa"] = {
	"Ewarhuyana",
	16898104,
	nil,
	"Latn",
}

m["sai-gam"] = {
	"Gamela",
	5403661,
	nil,
	"Latn",
}

m["sai-gay"] = {
	"Gayón",
	5528902,
	"sai-jir",
	"Latn",
}

m["sai-gmo"] = {
	"Guamo",
	5613495,
	nil,
	"Latn",
}

m["sai-gua"] = {
	"Guachí",
	5613172,
	"sai-guc",
	"Latn",
}

m["sai-gue"] = {
	"Güenoa",
	5626799,
	"sai-crn",
	"Latn",
}

m["sai-hau"] = {
	"Haush",
	3128376,
	"sai-cho",
	"Latn",
}

m["sai-jee-pro"] = {
	"Proto-Jê",
	116773212,
	"sai-jee",
	"Latn",
	type = "reconstructed",
}

m["sai-jko"] = {
	"Jeikó",
	6176527,
	"sai-mje",
	"Latn",
}

m["sai-jrj"] = {
	"Jirajara",
	6202966,
	"sai-jir",
	"Latn",
}

m["sai-kat"] = { -- contrast xoo, kzw, sai-xoc
	"Katembri",
	6375925,
	nil,
	"Latn",
}

m["sai-mal"] = {
	"Malalí",
	6741212,
	nil,
	"Latn",
}

m["sai-mar"] = {
	"Maratino",
	6755055,
	nil,
	"Latn",
}

m["sai-mat"] = {
	"Matanawi",
	6786047,
	nil,
	"Latn",
}

m["sai-mcn"] = {
	"Mocana",
	3402048,
	nil,
	"Latn",
}

m["sai-men"] = {
	"Menien",
	16890110,
	"sai-mje",
	"Latn",
}

m["sai-mil"] = {
	"Millcayac",
	19573012,
	"sai-hrp",
	"Latn",
}

m["sai-mlb"] = {
	"Malibu",
	3402048,
	nil,
	"Latn",
}

m["sai-msk"] = {
	"Masakará",
	6782426,
	"sai-mje",
	"Latn",
}

m["sai-muc"] = {
	"Mucuchí",
	6931290,
	nil,
	"Latn",
}

m["sai-mue"] = {
	"Muellama",
	16886936,
	"sai-bar",
	"Latn",
}

m["sai-muz"] = {
	"Muzo",
	6644203,
	nil,
	"Latn",
}

m["sai-mys"] = {
	"Maynas",
	16919393,
	nil,
	"Latn",
}

m["sai-nat"] = {
	"Natú",
	9006749,
	nil,
	"Latn",
}

m["sai-nje-pro"] = {
	"Proto-Northern Jê",
	116773245,
	"sai-nje",
	"Latn",
	type = "reconstructed",
}

m["sai-opo"] = {
	"Opón",
	7099152,
	"sai-car",
	"Latn",
}

m["sai-oto"] = {
	"Otomaco",
	16879234,
	"sai-otm",
	"Latn",
}

m["sai-pal"] = {
	"Palta",
	3042978,
	nil,
	"Latn",
}

m["sai-pam"] = {
	"Pamigua",
	5908689,
	"sai-otm",
	"Latn",
}

m["sai-par"] = {
	"Paratió",
	16890038,
	nil,
	"Latn",
}

m["sai-pnz"] = {
	"Panzaleo",
	3123275,
	nil,
	"Latn",
}

m["sai-prh"] = {
	"Puruhá",
	3410994,
	nil,
	"Latn",
}

m["sai-ptg"] = {
	"Patagón",
	128807870,
	nil,
	"Latn",
}

m["sai-pur"] = {
	"Purukotó",
	7261622,
	"sai-pem",
	"Latn",
}

m["sai-pyg"] = {
	"Payaguá",
	7156643,
	"sai-guc",
	"Latn",
}

m["sai-pyk"] = {
	"Pykobjê",
	98113977,
	"sai-nje",
	"Latn",
}

m["sai-qmb"] = {
	"Quimbaya",
	7272043,
	nil,
	"Latn",
}

m["sai-qtm"] = {
	"Quitemo",
	7272651,
	"sai-cpc",
	"Latn",
}

m["sai-rab"] = {
	"Rabona",
	6644203,
	nil,
	"Latn",
}

m["sai-ram"] = {
	"Ramanos",
	16902824,
	nil,
	"Latn",
}

m["sai-sac"] = {
	"Sácata",
	5390321,
	nil,
	"Latn",
}

m["sai-san"] = {
	"Sanaviron",
	16895999,
	nil,
	"Latn",
}

m["sai-sap"] = {
	"Sapará",
	7420922,
	"sai-car",
	"Latn",
}

m["sai-sec"] = {
	"Sechura",
	7442912,
	nil,
	"Latn",
}

m["sai-sin"] = {
	"Sinúfana",
	7525275,
	nil,
	"Latn",
}

m["sai-sje-pro"] = {
	"Proto-Southern Jê",
	116773814,
	"sai-sje",
	"Latn",
	type = "reconstructed",
}

m["sai-tab"] = {
	"Tabancale",
	5390321,
	nil,
	"Latn",
}

m["sai-tal"] = {
	"Tallán",
	16910468,
	nil,
	"Latn",
}

m["sai-tap"] = {
	"Tapayuna",
	30719984,
	"sai-nje",
	"Latn",
}

m["sai-tar-pro"] = {
	"Proto-Taranoan",
	116773816,
	"sai-tar",
	"Latn",
	type = "reconstructed",
}

m["sai-teu"] = {
	"Teushen",
	3519243,
	nil,
	"Latn",
}

m["sai-tim"] = {
	"Timote",
	7806995,
	nil,
	"Latn",
}

m["sai-tpr"] = {
	"Taparita",
	7684460,
	"sai-otm",
	"Latn",
}

m["sai-trr"] = {
	"Tarairiú",
	7685313,
	nil,
	"Latn",
}

m["sai-wai"] = {
	"Waitaká",
	16918610,
	nil,
	"Latn",
}

m["sai-way"] = {
	"Wayumara",
	7960726,
	"sai-car",
	"Latn",
}

m["sai-wit-pro"] = {
	"Proto-Witotoan",
	116773823,
	"sai-wit",
	"Latn",
	type = "reconstructed",
}

m["sai-wnm"] = {
	"Wanham",
	16879440,
	"sai-cpc",
	"Latn",
}

m["sai-xoc"] = { -- contrast xoo, kzw, sai-kat
	"Xocó",
	12953620,
	nil,
	"Latn",
}

m["sai-yao"] = {
	"Yao (South America)",
	16979655,
	"sai-ven",
	"Latn",
}

m["sai-yar"] = { -- not the same family as 'suy'
	"Yarumá",
	3505859,
	"sai-pek",
	"Latn",
}

m["sai-yri"] = {
	"Yuri",
	2669157,
	"sai-tyu",
	"Latn",
}

m["sai-yup"] = {
	"Yupua",
	8061430,
	"sai-tuc",
	"Latn",
}

m["sai-yur"] = {
	"Yurumanguí",
	1281291,
	nil,
	"Latn",
}

m["sal-pro"] = {
	"Proto-Salish",
	116773269,
	"sal",
	"Latn",
	type = "reconstructed",
}

m["sdv-daj-pro"] = {
	"Proto-Daju",
	116773739,
	"sdv-daj",
	"Latn",
	type = "reconstructed",
}

m["sdv-eje-pro"] = {
	"Proto-Eastern Jebel",
	116773751,
	"sdv-eje",
	"Latn",
	type = "reconstructed",
}

m["sdv-nil-pro"] = {
	"Proto-Nilotic",
	116773794,
	"sdv-nil",
	"Latn",
	type = "reconstructed",
}

m["sdv-nyi-pro"] = {
	"Proto-Nyima",
	116773796,
	"sdv-nyi",
	"Latn",
	type = "reconstructed",
}

m["sdv-tmn-pro"] = {
	"Proto-Taman",
	116773815,
	"sdv-tmn",
	"Latn",
	type = "reconstructed",
}

m["sel-nor"] = {
	"Northern Selkup",
	30304565,
	"sel",
	"Cyrl",
	translit = "sel-nor-translit",
}

m["sel-pro"] = {
	"Proto-Selkup",
	128884235,
	"sel",
	"Latn",
	type = "reconstructed",
}

m["sel-sou"] = {
	"Southern Selkup",
	30304639,
	"sel",
	"Cyrl",
	translit = "sel-sou-translit",
}

m["sem-amm"] = {
	"Ammonite",
	279181,
	"sem-can",
	"Phnx",
	translit = "Phnx-translit",
}

m["sem-amo"] = {
	"Amorite",
	35941,
	"sem-nwe",
	"Xsux, Latn",
}

m["sem-cha"] = {
	"Chaha",
	35543,
	"sem-eth",
	"Ethi",
	translit = "Ethi-translit",
}

m["sem-dad"] = {
	"Dadanitic",
	21838040,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-dum"] = {
	"Dumaitic",
	128810397,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-has"] = {
	"Hasaitic",
	3541433,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-his"] = {
	"Hismaic",
	22948260,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-mhr"] = {
	"Muher",
	33743,
	"sem-eth",
	"Latn",
}

m["sem-pro"] = {
	"Proto-Semitic",
	1658554,
	"sem",
	"Latn",
	type = "reconstructed",
}

m["sem-saf"] = {
	"Safaitic",
	472586,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-srb"] = {
	"Old South Arabian",
	35025,
	"sem-osa",
	"Sarb",
	translit = "Sarb-translit",
}

m["sem-tay"] = {
	"Taymanitic",
	24912301,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-tha"] = {
	"Thamudic",
	843030,
	"sem-cen",
	"Narb",
	translit = "Narb-translit",
}

m["sem-wes-pro"] = {
	"Proto-West Semitic",
	98021726,
	"sem-wes",
	"Latn",
	type = "reconstructed",
}

m["sio-pro"] = { -- NB this is not Proto-Siouan-Catawban 'nai-sca-pro'
	"Proto-Siouan",
	34181,
	"sio",
	"Latn",
	type = "reconstructed",
}

m["sit-bai-pro"] = {
	"Proto-Bai",
	nil,
	"sit-bai",
	"Latn",
	type = "reconstructed",
}

m["sit-ban"] = {
	"Bangru",
	56071779,
	"sit-hrs",
	"Latn",
}

m["sit-bok"] = {
	"Bokar",
	4938727,
	"sit-tan",
	"Latn, Tibt",
	translit = {Tibt = "Tibt-translit"},
	override_translit = true,
	display_text = {Tibt = s["Tibt-displaytext"]},
	entry_name = {Tibt = s["Tibt-entryname"]},
	sort_key = {Tibt = "Tibt-sortkey"},
}

m["sit-cai"] = {
	"Caijia",
	5017528,
	"sit-cln",
	"Latn"
}

m["sit-cha"] = {
	"Chairel",
	5068066,
	"sit-luu",
	"Latn",
}

m["sit-hrs-pro"] = {
	"Proto-Hrusish",
	116773762,
	"sit-hrs",
	"Latn",
	type = "reconstructed",
}

m["sit-jap"] = {
	"Japhug",
	3162245,
	"sit-rgy",
	"Latn",
}

m["sit-kha-pro"] = {
	"Proto-Kham",
	116773773,
	"sit-kha",
	"Latn",
	type = "reconstructed",
}

m["sit-khb-pro"] = {
	"Proto-Kho-Bwa",
	nil,
	"sit-khb",
	"Latn",
	type = "reconstructed",
}

m["sit-khp-pro"] = {
	"Proto-Puroik",
	nil,
	"sit-khb",
	"Latn",
	type = "reconstructed",
}

m["sit-khw-pro"] = {
	"Proto-Western Kho-Bwa",
	nil,
	"sit-khw",
	"Latn",
	type = "reconstructed",
}

m["sit-liz"] = {
	"Lizu",
	6660653,
	"sit-qia",
	"Latn", -- and Ersu Shaba
}

m["sit-lnj"] = {
	"Longjia",
	17096251,
	"sit-cln",
	"Latn"
}

m["sit-lrn"] = {
	"Luren",
	16946370,
	"sit-cln",
	"Latn"
}

m["sit-luu-pro"] = {
	"Proto-Luish",
	116773783,
	"sit-luu",
	"Latn",
	type = "reconstructed",
}

m["sit-prn"] = {
	"Puiron",
	7259048,
	"sit-zem",
}

m["sit-pro"] = {
	"Proto-Sino-Tibetan",
	24839178,
	"sit",
	"Latn",
	type = "reconstructed",
}

m["sit-sit"] = {
	"Situ",
	19840830,
	"sit-rgy",
	"Latn",
}

m["sit-tam-pro"] = {
	"Proto-Tamangic",
	117469295,
	"sit-tam",
	"Latn",
	type = "reconstructed",
}

m["sit-tan-pro"] = {
	"Proto-Tani",
	116773284,
	"sit-tan",
	"Latn",	-- needs verification
	type = "reconstructed",
}

m["sit-tgm"] = {
	"Tangam",
	17041370,
	"sit-tan",
	"Latn",
}

m["sit-tos"] = {
	"Tosu",
	7827899,
	"sit-qia",
	"Latn", -- also Ersu Shaba
}

m["sit-tsh"] = {
	"Tshobdun",
	19840950,
	"sit-rgy",
	"Latn",
}

m["sit-zbu"] = {
	"Zbu",
	19841106,
	"sit-rgy",
	"Latn",
}

m["sla-pro"] = {
	"Proto-Slavic",
	747537,
	"sla",
	"Latn",
	type = "reconstructed",
	entry_name = {
		remove_diacritics = c.grave .. c.acute .. c.tilde .. c.macron .. c.dgrave .. c.invbreve,
		remove_exceptions = {'ś'},
	},
	sort_key = {
		from = {"č", "ď", "ě", "ę", "ь", "ľ", "ň", "ǫ", "ř", "š", "ś", "ť", "ъ", "ž"},
		to = {"c²", "d²", "e²", "e³", "i²", "l²", "nj", "o²", "r²", "s²", "s³", "t²", "u²", "z²"},
	}
}

m["smi-pro"] = {
	"Proto-Samic",
	7251862,
	"smi",
	"Latn",
	type = "reconstructed",
	sort_key = {
		from = {"ā", "č", "δ", "[ëē]", "ŋ", "ń", "ō", "š", "θ", "%([^()]+%)"},
		to = {"a", "c²", "d", "e", "n²", "n³", "o", "s²", "t²"}
	},
}

m["son-pro"] = {
	"Proto-Songhay",
	116773277,
	"son",
	"Latn",
	type = "reconstructed",
}

m["sqj-pro"] = {
	"Proto-Albanian",
	18210846,
	"sqj",
	"Latn",
	type = "reconstructed",
}

m["ssa-klk-pro"] = {
	"Proto-Kuliak",
	116773779,
	"ssa-klk",
	"Latn",
	type = "reconstructed",
}

m["ssa-kom-pro"] = {
	"Proto-Koman",
	116773775,
	"ssa-kom",
	"Latn",
	type = "reconstructed",
}

m["ssa-pro"] = {
	"Proto-Nilo-Saharan",
	116773236,
	"ssa",
	"Latn",
	type = "reconstructed",
}

m["syd-fne"] = {
	"Forest Nenets",
	1295107,
	"syd",
	"Cyrl",
	translit = "syd-fne-translit",
	entry_name = {remove_diacritics = c.grave .. c.acute .. c.macron .. c.breve .. c.dotabove},
}

m["syd-pro"] = {
	"Proto-Samoyedic",
	7251863,
	"syd",
	"Latn",
	type = "reconstructed",
}

m["tai-pro"] = {
	"Proto-Tai",
	6583709,
	"tai",
	"Latn",
	type = "reconstructed",
}

m["tai-swe-pro"] = {
	"Proto-Southwestern Tai",
	116773280,
	"tai-swe",
	"Latn",
	type = "reconstructed",
}

m["tbq-bdg-pro"] = {
	"Proto-Bodo-Garo",
	116773195,
	"tbq-bdg",
	"Latn",
	type = "reconstructed",
}

m["tbq-blg"] = {
	"Bailang",
	2879843,
	"tbq-lob",
	"Hani",
	sort_key = "Hani-sortkey",
}

m["tbq-gkh"] = {
	"Gokhy",
	5578069,
	"tbq-sil",
	"Latn",
}

m["tbq-kuk-pro"] = {
	"Proto-Kuki-Chin",
	116773220,
	"tbq-kuk",
	"Latn",
	type = "reconstructed",
}

m["tbq-lal-pro"] = {
	"Proto-Lalo",
	116773781,
	"tbq-lal",
	"Latn",
	type = "reconstructed",
}

m["tbq-laz"] = {
	"Laze",
	17007626,
	"sit-nas",
	"Latn",
}

m["tbq-lob-pro"] = {
	"Proto-Lolo-Burmese",
	116773224,
	"tbq-lob",
	"Latn",
	type = "reconstructed",
}

m["tbq-lol-pro"] = {
	"Proto-Loloish",
	7251855,
	"tbq-lol",
	"Latn",
	type = "reconstructed",
}

m["tbq-mil"] = {
	"Milang",
	6850761,
	"sit-gsi",
	"Deva, Latn",
}

m["tbq-mor"] = {
	"Moran",
	6909216,
	"tbq-bdg",
	"Latn",
}

m["tbq-ngo"] = {
	"Ngochang",
	56582,
	"tbq-brm",
	"Latn",
}

-- tbq-pro is now etymology-only

m["trk-dkh"] = {
	"Dukhan",
	12809273,
	"trk-ssb",
	"Latn, Cyrl, Mong",
	translit = {Mong = "Mong-translit"},
	display_text = {Mong = s["Mong-displaytext"]},
	entry_name = {Mong = s["Mong-entryname"]},
}

m["trk-oat"] = {
	"Old Anatolian Turkish",
	7083390,
	"trk-ogz",
	"ota-Arab",
	entry_name = {["ota-Arab"] = "ar-entryname"},
}

m["trk-pro"] = {
	"Proto-Turkic",
	3657773,
	"trk",
	"Latn",
	type = "reconstructed",
}

m["tup-gua-pro"] = {
	"Proto-Tupi-Guarani",
	116773288,
	"tup-gua",
	"Latn",
	type = "reconstructed",
}

m["tup-kab"] = {
	"Kabishiana",
	15302988,
	"tup",
	"Latn",
}

m["tup-pro"] = {
	"Proto-Tupian",
	10354700,
	"tup",
	"Latn",
	type = "reconstructed",
}

m["tuw-alk"] = {
	"Alchuka",
	113553616,
	"tuw-jrc",
	"Latn, Hans",
	sort_key = {Hans = "Hani-sortkey"},
}

m["tuw-bal"] = {
	"Bala",
	86730632,
	"tuw-jrc",
	"Latn, Hans",
	sort_key = {Hans = "Hani-sortkey"},
}

m["tuw-kkl"] = {
	"Kyakala",
	118875708,
	"tuw-jrc",
	"Latn, Hans",
	sort_key = {Hans = "Hani-sortkey"},
}

m["tuw-kli"] = {
	"Kili",
	6406892,
	"tuw-ewe",
	"Cyrl",
}

m["tuw-pro"] = {
	"Proto-Tungusic",
	85872335,
	"tuw",
	"Latn",
	type = "reconstructed",
}

m["tuw-sol"] = {
	"Solon",
	30004,
	"tuw-ewe",
}

m["urj-fin-pro"] = {
	"Proto-Finnic",
	11883720,
	"urj-fin",
	"Latn",
	type = "reconstructed",
}

m["urj-koo"] = {
	"Old Komi",
	86679962,
	"urj-prm",
	"Perm, Cyrs",
	translit = "urj-koo-translit",
	sort_key = {Cyrs = s["Cyrs-sortkey"]},
}

m["urj-kuk"] = {
	"Kukkuzi",
	107410460,
	"urj-fin",
	"Latn",
	ancestors = "vot",
}

m["urj-kya"] = {
	"Komi-Yazva",
	2365210,
	"urj-prm",
	"Cyrl",
	translit = "kv-translit",
	override_translit = true,
	entry_name = {remove_diacritics = c.acute},
}

m["urj-mdv-pro"] = {
	"Proto-Mordvinic",
	116773232,
	"urj-mdv",
	"Latn",
	type = "reconstructed",
}

m["urj-prm-pro"] = {
	"Proto-Permic",
	116773257,
	"urj-prm",
	"Latn",
	type = "reconstructed",
}

m["urj-pro"] = {
	"Proto-Uralic",
	288765,
	"urj",
	"Latn",
	type = "reconstructed",
}

m["urj-ugr-pro"] = {
	"Proto-Ugric",
	156631,
	"urj-ugr",
	"Latn",
	type = "reconstructed",
}

m["xnd-pro"] = {
	"Proto-Na-Dene",
	116773233,
	"xnd",
	"Latn",
	type = "reconstructed",
}

m["xgn-pro"] = {
	"Proto-Mongolic",
	2493677,
	"xgn",
	"Latn",
	type = "reconstructed",
	sort_key = {
		from = {"č", "i", "ï", "ǰ", "ŋ", "ö", "š", "ü"},
		to = {"c", "i" .. p[1], "i", "j", "n" .. p[1], "o" .. p[1], "s" .. p[1], "u" .. p[1]},
	},
}

m["yok-bvy"] = {
	"Buena Vista Yokuts",
	4985474,
	"yok",
	"Latn",
}

m["yok-dly"] = {
	"Delta Yokuts",
	70923266,
	"yok",
	"Latn",
}

m["yok-gsy"] = {
	"Gashowu",
	3098708,
	"yok",
	"Latn",
}

m["yok-kry"] = {
	"Kings River Yokuts",
	6413014,
	"yok",
	"Latn",
}

m["yok-nvy"] = {
	"Northern Valley Yokuts",
	85789777,
	"yok",
	"Latn",
}

m["yok-ply"] = {
	"Palewyami",
	2387391,
	"yok",
	"Latn",
}

m["yok-svy"] = {
	"Southern Valley Yokuts",
	12642473,
	"yok",
	"Latn",
}

m["yok-tky"] = {
	"Tule-Kaweah Yokuts",
	7851988,
	"yok",
	"Latn",
}

m["ypk-pro"] = {
	"Proto-Yupik",
	116773295,
	"ypk",
	"Latn",
	type = "reconstructed",
}

m["zhx-min-pro"] = {
	"Proto-Min",
	19646347,
	"zhx-min",
	"Latn",
	type = "reconstructed",
}

m["zhx-sht"] = {
	"Shaozhou Tuhua",
	1920769,
	"zhx",
	"Nshu, Hants",
	generate_forms = "zh-generateforms",
	sort_key = {Hani = "Hani-sortkey"},
}

m["zhx-sic"] = {
	"Sichuanese",
	2278732,
	"zhx-man",
	"Hants",
	generate_forms = "zh-generateforms",
	translit = "zh-translit",
	sort_key = "Hani-sortkey",
}

m["zhx-tai"] = {
	"Taishanese",
	2208940,
	"zhx-yue",
	"Hants",
	generate_forms = "zh-generateforms",
	translit = "zh-translit",
	sort_key = "Hani-sortkey",
}

m["zle-ono"] = {
	"Old Novgorodian",
	162013,
	"zle",
	"Cyrs, Glag",
	translit = {Cyrs = "Cyrs-translit", Glag = "Glag-translit"},
	entry_name = {Cyrs = s["Cyrs-entryname"]},
	sort_key = {Cyrs = s["Cyrs-sortkey"]},
}

m["zle-ort"] = {
	"Old Ruthenian",
	13211,
	"zle",
	"Cyrs",
	ancestors = "orv",
	translit = "zle-ort-translit",
	entry_name = {
		remove_diacritics = s["Cyrs-entryname"].remove_diacritics,
		remove_exceptions = {"Ї", "ї"}
	},
	sort_key = s["Cyrs-sortkey"],
}

m["zls-chs"] = {
	"Church Slavonic",
	33251,
	"zls",
	"Cyrs, Glag, Latn", 
	ancestors = "cu",
		translit = {
		Cyrs = "Cyrs-translit",
		Glag = "Glag-translit"
	},
	entry_name = {
		Cyrs = s["Cyrs-entryname"]
	},
	sort_key = {
		Cyrs = s["Cyrs-sortkey"]
	},
}

m["zlw-ocs"] = {
	"Old Czech",
	593096,
	"zlw",
	"Latn",
}

m["zlw-opl"] = {
	"Old Polish",
	149838,
	"zlw-lch",
	"Latn",
	entry_name = {remove_diacritics = c.ringabove},
}

m["zlw-osk"] = {
	"Old Slovak",
	12776676,
	"zlw",
	"Latn",
}

m["zlw-slv"] = {
	"Slovincian",
	36822,
	"zlw-pom",
	"Latn",
	entry_name = "zlw-slv-entryname"
}

return require("Module:languages").finalizeData(m, "language")