"اس ماڈیول کی دستاویز ماڈیول:languages/data3/o/دستاویز پر بنائی جاسکتی ہے"

local u = mw.ustring.char

-- UTF-8 encoded strings for some commonly-used diacritics
local GRAVE     = u(0x0300)
local ACUTE     = u(0x0301)
local CIRC      = u(0x0302)
local TILDE     = u(0x0303)
local MACRON    = u(0x0304)
local BREVE     = u(0x0306)
local DOTABOVE  = u(0x0307)
local DIAER     = u(0x0308)
local CARON     = u(0x030C)
local DGRAVE    = u(0x030F)
local INVBREVE  = u(0x0311)
local DOTBELOW  = u(0x0323)
local RINGBELOW = u(0x0325)
local CEDILLA   = u(0x0327)

local m = {}

m["oaa"] = {
	canonicalName = "Orok",
	scripts = {"Latn"},
	family = "tuw",
}

m["oac"] = {
	canonicalName = "Oroch",
	scripts = {"Latn", "Cyrl"},
	family = "tuw",
}

m["oav"] = {
	canonicalName = "Old Avar",
	scripts = {"Geor"},
	family = "cau-ava",
}

m["obi"] = {
	canonicalName = "Obispeño",
	scripts = {"Latn"},
	family = "nai-chu",
}

m["obk"] = {
	canonicalName = "Southern Bontoc",
	otherNames = {"Southern Bontok"},
	scripts = {"Latn"},
	family = "phi",
}

m["obl"] = {
	canonicalName = "Oblo",
}

m["obm"] = {
	canonicalName = "Moabite",
	scripts = {"Phnx"},
	family = "sem-can",
	translit_module = "Phnx-translit",
}

m["obo"] = {
	canonicalName = "Obo Manobo",
	otherNames = {"Obo"},
	scripts = {"Latn"},
	family = "mno",
}

m["obr"] = {
	canonicalName = "Old Burmese",
	scripts = {"Mymr"},
	family = "tbq",
}

m["obt"] = {
	canonicalName = "Old Breton",
	scripts = {"Latn"},
	family = "cel-bry",
}

m["obu"] = {
	canonicalName = "Obulom",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["oca"] = {
	canonicalName = "Ocaina",
	scripts = {"Latn"},
	family = "sai-wit",
}

m["och"] = {
	canonicalName = "Old Chinese",
	scripts = {"Hani"},
	family = "zhx",
}

m["oco"] = {
	canonicalName = "Old Cornish",
	scripts = {"Latn"},
	family = "cel-bry",
}

m["ocu"] = {
	canonicalName = "Tlahuica",
	otherNames = {"Ocuiltec", "Atzingo Matlatzinca"},
	scripts = {"Latn"},
	family = "omq",
}

m["oda"] = {
	canonicalName = "Odut",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["odk"] = {
	canonicalName = "Od",
	scripts = {"Arab"},
	family = "inc",
}

m["odt"] = {
	canonicalName = "Old Dutch",
	scripts = {"Latn"},
	family = "gmw",
	ancestors = {"frk"},
	entry_name = {
		from = {"[ĀÂ]", "[āâ]", "[ĒÊ]", "[ēê]", "[ĪÎ]", "[īî]", "[ŌÔ]", "[ōô]", "[ŪÛ]", "[ūû]"},
		to   = {"A"   , "a"   , "E"   , "e"   , "I"   , "i"   , "O"   , "o"   , "U"   , "u"}} ,
}

m["odu"] = {
	canonicalName = "Odual",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["ofo"] = {
	canonicalName = "Ofo",
	family = "sio",
}

m["ofs"] = {
	canonicalName = "Old Frisian",
	scripts = {"Latn"},
	family = "gmw-fri",
	entry_name = {
		from = {"[ĀÂ]", "[āâ]", "[ĒÊ]", "[ēê]", "[ĪÎ]", "[īî]", "[ŌÔ]", "[ōô]", "[ŪÛ]", "[ūû]"},
		to   = {"A"   , "a"   , "E"   , "e"   , "I"   , "i"   , "O"   , "o"   , "U"   , "u"}} ,
}

m["ofu"] = {
	canonicalName = "Efutop",
	scripts = {"Latn"},
	family = "nic-bod",
}

m["ogb"] = {
	canonicalName = "Ogbia",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["ogc"] = {
	canonicalName = "Ogbah",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["oge"] = {
	canonicalName = "Old Georgian",
	scripts = {"Geor"},
	family = "ccs-gzn",
	translit_module = "Geor-translit",
	override_translit = true,
	entry_name = {
		from = {"̂"},
		to   = {""}} ,
}

m["ogg"] = {
	canonicalName = "Ogbogolo",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["ogo"] = {
	canonicalName = "Khana",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["ogu"] = {
	canonicalName = "Ogbronuagum",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["oht"] = {
	canonicalName = "Old Hittite",
	scripts = {"Xsux"},
	family = "ine-ana",
}

m["ohu"] = {
	canonicalName = "Old Hungarian",
	scripts = {"Latn"},
	family = "urj-ugr",
}

m["oia"] = {
	canonicalName = "Oirata",
	scripts = {"Latn"},
	family = "ngf",
}

m["oin"] = {
	canonicalName = "Inebu One",
	family = "qfa-tor",
}

m["ojb"] = {
	canonicalName = "Northwestern Ojibwa",
	scripts = {"Latn"},
	family = "alg",
}

m["ojc"] = {
	canonicalName = "Central Ojibwa",
	scripts = {"Latn"},
	family = "alg",
}

m["ojg"] = {
	canonicalName = "Eastern Ojibwa",
	scripts = {"Latn"},
	family = "alg",
}

m["ojp"] = {
	canonicalName = "Old Japanese",
	scripts = {"Jpan"},
	family = "jpx",
}

m["ojs"] = {
	canonicalName = "Severn Ojibwa",
	scripts = {"Latn"},
	family = "alg",
}

m["ojv"] = {
	canonicalName = "Ontong Java",
	scripts = {"Latn"},
	family = "poz-pol",
}

m["ojw"] = {
	canonicalName = "Western Ojibwa",
	scripts = {"Latn"},
	family = "alg",
}

m["oka"] = {
	canonicalName = "Okanagan",
	otherNames = {"Okanagan Salish", "Okanagan-Colville", "Colville-Okanagan"},
	scripts = {"Latn"},
	family = "sal",
}

m["okb"] = {
	canonicalName = "Okobo",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["okd"] = {
	canonicalName = "Okodia",
	otherNames = {"Okordia", "Akita"},
	family = "ijo",
}

m["oke"] = {
	canonicalName = "Okpe (Southwestern Edo)",
	otherNames = {"Okpe", "Okpe (Nigeria)", "Southwestern Edo"},
	scripts = {"Latn"},
	family = "alv-edo",
}

m["okg"] = {
	canonicalName = "Kok-Paponk",
	scripts = {"Latn"},
	family = "aus-pmn",
}

m["okh"] = {
	canonicalName = "Koresh-e Rostam",
	family = "ira-wes",
	ancestors = {"ira-azr"},
}

m["oki"] = {
	canonicalName = "Okiek",
	family = "sdv",
}

m["okj"] = {
	canonicalName = "Oko-Juwoi",
	otherNames = {"Juwoi", "Juwai", "Junoi"},
	family = "qfa-adm",
}

m["okk"] = {
	canonicalName = "Kwamtim One",
	scripts = {"Latn"},
	family = "qfa-tor",
}

m["okl"] = {
	canonicalName = "Old Kentish Sign Language",
	family = "sgn",
}

m["okm"] = {
	canonicalName = "Middle Korean",
	scripts = {"Kore"},
	family = "qfa-kor",
	ancestors = {"oko"},
}

m["okn"] = {
	canonicalName = "Oki-No-Erabu",
	scripts = {"Jpan"},
	otherNames = {"Okino-Erabu", "Okinoerabu"}, -- distinguish Okinawan
	family = "jpx-ryu",
}

m["oko"] = {
	canonicalName = "Old Korean",
	scripts = {"Hani"},
	family = "qfa-kor",
}

m["okr"] = {
	canonicalName = "Kirike",
	family = "ijo",
}

m["oks"] = {
	canonicalName = "Oko-Eni-Osayen",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["oku"] = {
	canonicalName = "Oku",
	scripts = {"Latn"},
	family = "nic-grf",
}

m["okv"] = {
	canonicalName = "Orokaiva",
	scripts = {"Latn"},
	family = "ngf",
}

m["okx"] = {
	canonicalName = "Okpe (Northwestern Edo)",
	otherNames = {"Okpe", "Okpe (Nigeria)"},
	scripts = {"Latn"},
	family = "alv-edo",
}

m["old"] = {
	canonicalName = "Mochi",
	scripts = {"Latn"},
	family = "bnt",
}

m["ole"] = {
	canonicalName = "Olekha",
	family = "sit",
}

m["olm"] = {
	canonicalName = "Oloma",
	scripts = {"Latn"},
	family = "alv-edo",
}

m["olo"] = {
	canonicalName = "Livvi",
	otherNames = {"Livvi-Karelian", "Livvikovian", "Olonets", "Southern Olonetsian"},
	scripts = {"Latn"},
	family = "fiu-fin",
}

m["olr"] = {
	canonicalName = "Olrat",
	family = "poz-vnc",
}

m["olt"] = {
	canonicalName = "Old Lithuanian",
	scripts = {"Latn"},
	family = "bat",
	entry_name = {
		from = {"[áãà]", "[éẽè]", "[íĩì]", "[ýỹ]", "ñ", "[óõò]", "[úù]", ACUTE, GRAVE, TILDE},
		to   = {"a"    , "e"    , "i", "y"   , "n", "o"	   , "u"   }} ,
}

m["olu"] = {
	canonicalName = "Kuvale",
	scripts = {"Latn"},
	family = "bnt",
}

m["oma"] = {
	canonicalName = "Omaha-Ponca",
	otherNames = {"Omaha", "Ponca"},
	scripts = {"Latn"},
	family = "sio",
}

m["omb"] = {
	canonicalName = "Omba",
	otherNames = {"East Ambae"},
	scripts = {"Latn"},
	family = "poz-vnc",
}

m["omc"] = {
	canonicalName = "Mochica",
}

m["omg"] = {
	canonicalName = "Omagua",
	otherNames = {"Agua", "Cambeba", "Cambeeba", "Kambeba", "Cambela", "Campeba", "Compeva", "Umaua", "Omáua", "Omaua", "Omayali"}, -- last three might actually be names of a different language
	scripts = {"Latn"},
	family = "tup-gua",
}

m["omi"] = {
	canonicalName = "Omi",
	family = "csu",
}

m["omk"] = {
	canonicalName = "Omok",
	family = "qfa-yuk",
}

m["oml"] = {
	canonicalName = "Ombo",
	scripts = {"Latn"},
	family = "bnt",
}

m["omn"] = {
	canonicalName = "Minoan",
	scripts = {"Lina"},
}

m["omo"] = {
	canonicalName = "Utarmbung",
	scripts = {"Latn"},
	family = "ngf",
}

m["omp"] = {
	canonicalName = "Old Manipuri",
	family = "tbq",
}

m["omr"] = {
	canonicalName = "Old Marathi",
	scripts = {"Deva", "Modi"},
	family = "inc",
	ancestors = {"pmh"},
	translit_module = "sa-translit",
}

m["omt"] = {
	canonicalName = "Omotik",
	family = "sdv",
}

m["omu"] = {
	canonicalName = "Omurano",
}

m["omw"] = {
	canonicalName = "South Tairora",
	scripts = {"Latn"},
	family = "paa-kag",
}

m["omx"] = {
	canonicalName = "Old Mon",
	family = "mkh",
}

m["ona"] = {
	canonicalName = "Selk'nam",
	otherNames = {"Ona", "Aona", "Selknam", "Shelknam"},
	scripts = {"Latn"},
}

m["onb"] = {
	canonicalName = "Lingao",
	family = "qfa-tak",
}

m["one"] = {
	canonicalName = "Oneida",
	scripts = {"Latn"},
	family = "iro",
}

m["ong"] = {
	canonicalName = "Olo",
	scripts = {"Latn"},
	family = "qfa-tor",
}

m["oni"] = {
	canonicalName = "Onin",
	scripts = {"Latn"},
	family = "plf",
}

m["onj"] = {
	canonicalName = "Onjob",
	scripts = {"Latn"},
	family = "ngf",
}

m["onk"] = {
	canonicalName = "Kabore One",
	scripts = {"Latn"},
	family = "qfa-tor",
}

m["onn"] = {
	canonicalName = "Onobasulu",
	scripts = {"Latn"},
	family = "ngf",
}

m["ono"] = {
	canonicalName = "Onondaga",
	scripts = {"Latn"},
	family = "iro",
}

m["onp"] = {
	canonicalName = "Sartang",
}

m["onr"] = {
	canonicalName = "Northern One",
	scripts = {"Latn"},
	family = "qfa-tor",
}

m["ons"] = {
	canonicalName = "Ono",
	scripts = {"Latn"},
	family = "ngf",
}

m["ont"] = {
	canonicalName = "Ontenu",
}

m["onu"] = {
	canonicalName = "Unua",
	otherNames = {"Onua"},
	scripts = {"Latn"},
	family = "poz-vnc",
}

m["onw"] = {
	canonicalName = "Old Nubian",
	scripts = {"Copt"},
	family = "nub",
}

m["onx"] = {
	canonicalName = "Onin Based Pidgin",
	scripts = {"Latn"},
}

m["ood"] = {
	canonicalName = "O'odham",
	otherNames = {"Papago"},
	scripts = {"Latn"},
	family = "azc",
}

m["oog"] = {
	canonicalName = "Ong",
	family = "mkh",
}

m["oon"] = {
	canonicalName = "Önge",
}

m["oor"] = {
	canonicalName = "Oorlams",
}

m["oos"] = {
	canonicalName = "Old Ossetic",
	otherNames = {"Old Ossetian"},
	family = "ira-eas",
	ancestors = {"xln"},
}

m["opa"] = {
	canonicalName = "Okpamheri",
	otherNames = {"Opameri", "Ibilo"},
	scripts = {"Latn"},
	family = "alv-edo",
}

m["opk"] = {
	canonicalName = "Kopkaka",
	scripts = {"Latn"},
	family = "ngf-okk",
}

m["opm"] = {
	canonicalName = "Oksapmin",
	scripts = {"Latn"},
	family = "ngf",
}

m["opo"] = {
	canonicalName = "Opao",
	scripts = {"Latn"},
	family = "ngf",
}

m["opt"] = {
	canonicalName = "Opata",
	otherNames = {"Heve", "Hegue", "Eudeve", "Teguima"},
	scripts = {"Latn"},
	family = "azc-trc",
}

m["opy"] = {
	canonicalName = "Ofayé",
	scripts = {"Latn"},
	family = "sai-mje",
}

m["ora"] = {
	canonicalName = "Oroha",
	family = "poz-sls",
}

m["ore"] = {
	canonicalName = "Orejón",
	scripts = {"Latn"},
	family = "sai-tuc",
}

m["org"] = {
	canonicalName = "Oring",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["orh"] = {
	canonicalName = "Oroqen",
	scripts = {"Latn"},
	family = "tuw",
}

m["oro"] = {
	canonicalName = "Orokolo",
	scripts = {"Latn"},
	family = "ngf",
}

m["orr"] = {
	canonicalName = "Oruma",
	scripts = {"Latn"},
	family = "ijo",
}

m["ort"] = {
	canonicalName = "Adivasi Oriya",
	scripts = {"Orya"},
	family = "inc",
	ancestors = {"or"},
}

m["oru"] = {
	canonicalName = "Ormuri",
	scripts = {"fa-Arab"},
	family = "ira-eas",
}

m["orv"] = {
	canonicalName = "Old East Slavic",
	otherNames = {"Old Russian"},
	scripts = {"Cyrs"},
	family = "zle",
	translit_module = "Cyrs-Glag-translit",
	entry_name = {
		from = {u(0x0484)}, -- kamora
		to   = {}},
	sort_key = {
		from = {"оу", "є"},
		to   = {"у" , "е"}} ,
}

m["orw"] = {
	canonicalName = "Oro Win",
	scripts = {"Latn"},
	family = "sai-cpc",
}

m["orx"] = {
	canonicalName = "Oro",
	scripts = {"Latn"},
	family = "nic-bco",
}

m["orz"] = {
	canonicalName = "Ormu",
	scripts = {"Latn"},
	family = "poz-ocw",
}

m["osa"] = {
	canonicalName = "Osage",
	scripts = {"Latn", "Osge"},
	family = "sio",
}

m["osc"] = {
	canonicalName = "Oscan",
	scripts = {"Ital", "Latn"},
	family = "itc",
	translit_module = "Ital-translit",
}

m["osi"] = {
	canonicalName = "Osing",
	scripts = {"Latn"},
	family = "poz-sus",
}

m["oso"] = {
	canonicalName = "Ososo",
	scripts = {"Latn"},
	family = "alv-edo",
}

m["osp"] = {
	canonicalName = "Old Spanish",
	scripts = {"Latn"},
	family = "roa",
}

m["ost"] = {
	canonicalName = "Osatu",
	scripts = {"Latn"},
	family = "nic-grf",
}

m["osu"] = {
	canonicalName = "Southern One",
	scripts = {"Latn"},
	family = "qfa-tor",
}

m["osx"] = {
	canonicalName = "Old Saxon",
	otherNames = {"Old Low German"},
	scripts = {"Latn"},
	family = "gmw",
	entry_name = {
		from = {"[ĀÂ]", "[āâ]", "[ĒÊ]", "[ēê]", "[ĪÎ]", "[īî]", "[ŌÔ]", "[ōô]", "[ŪÛ]", "[ūû]"},
		to   = {"A"   , "a"   , "E"   , "e"   , "I"   , "i"   , "O"   , "o"   , "U"   , "u"}} ,
}

m["ota"] = {
	canonicalName = "عثمانی ترکی",
	otherNames = {"Ottoman"},
	scripts = {"ota-Arab", "Armn"},
	family = "trk-ogz",
    ancestors = {"trk-oat"},
}

m["otd"] = {
	canonicalName = "Ot Danum",
	otherNames = {"Dohoi"},
	scripts = {"Latn"},
	family = "poz-brw",
}

m["ote"] = {
	canonicalName = "Mezquital Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["oti"] = {
	canonicalName = "Oti",
}

m["otk"] = {
	canonicalName = "Old Turkic",
	scripts = {"Orkh"},
	family = "trk",
}

m["otl"] = {
	canonicalName = "Tilapa Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["otm"] = {
	canonicalName = "Eastern Highland Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["otn"] = {
	canonicalName = "Tenango Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["otq"] = {
	canonicalName = "Querétaro Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["otr"] = {
	canonicalName = "Otoro",
}

m["ots"] = {
	canonicalName = "Estado de México Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["ott"] = {
	canonicalName = "Temoaya Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["otu"] = {
	canonicalName = "Otuke",
	scripts = {"Latn"},
	family = "sai-mje",
}

m["otw"] = {
	canonicalName = "Ottawa",
	scripts = {"Latn"},
	family = "alg",
}

m["otx"] = {
	canonicalName = "Texcatepec Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["oty"] = {
	canonicalName = "Old Tamil",
	scripts = {"Brah"},
	family = "dra",
}

m["otz"] = {
	canonicalName = "Ixtenco Otomi",
	scripts = {"Latn"},
	family = "oto",
}

m["oua"] = {
	canonicalName = "Tagargrent",
	otherNames = {"Ouargli", "Wargli", "Teggargrent"},
	family = "ber",
}

m["oub"] = {
	canonicalName = "Glio-Oubi",
	family = "kro",
}

m["oue"] = {
	canonicalName = "Oune",
}

m["oui"] = {
	canonicalName = "Old Uyghur",
	otherNames = {"Old Uighur"},
	scripts = {"Brah", "Mani", "Syrc"},
	family = "trk",
}

m["oum"] = {
	canonicalName = "Ouma",
	scripts = {"Latn"},
	family = "poz-ocw",
}

m["ovd"] = {
	canonicalName = "Elfdalian",
	otherNames = {"Övdalian"},
	scripts = {"Latn"},
	family = "gmq",
	ancestors = {"non"},
}

m["owi"] = {
	canonicalName = "Owiniga",
	scripts = {"Latn"},
	family = "qfa-mal",
}

m["owl"] = {
	canonicalName = "Old Welsh",
	scripts = {"Latn"},
	family = "cel-bry",
}

m["oyb"] = {
	canonicalName = "Oy",
	otherNames = {"Oi", "The"}, -- The is a dialect of Oi. No, seriously.
	family = "aav-ban",
}

m["oyd"] = {
	canonicalName = "Oyda",
}

m["oym"] = {
	canonicalName = "Wayampi",
	otherNames = {"Guayapi", "Oiampi", "Oiampí"},
	scripts = {"Latn"},
	family = "tup-gua",
}

m["oyy"] = {
	canonicalName = "Oya'oya",
	scripts = {"Latn"},
	family = "poz-ocw",
}

m["ozm"] = {
	canonicalName = "Koonzime",
	scripts = {"Latn"},
	family = "bnt",
}

return m