local U = mw.ustring.char

local acute = U(0x301)
local caron = U(0x30C)
local diaeresis = U(0x308)
local grave = U(0x300)

local data = {
	{	
		["ë"] = "ё", ["e" .. diaeresis] = "ё", ["Ë"] = "Ё", ["E" .. diaeresis] = "Ё",
		["ž"] = "ж", ["z" .. caron] = "ж", ["Z" .. caron] = "Ж", ["Ž"] = "Ж",
		["šč"] = "щ", ["s" .. caron .. "c" .. caron] = "щ", ["ŠČ"] = "Щ", ["S" .. caron .. "C" .. caron] = "Щ",
		["š"] = "ш", ["s" .. caron] = "ш", ["Š"] = "Ш", ["S" .. caron] = "ш",
		["ʺ"] = "ъ",
		["ʹ"] = "ь",
		["è"] = "э", ["e" .. grave] = "э", ["È"] = "Э", ["E" .. grave] = "Э",
		["ju"] = "ю", ["Ju"] = "Ю",
		["ja"] = "я", ["Ja"] = "Я"
	},
	{
		["æ"] = "ӕ", ["ä"] = "ӕ", ["a" .. diaeresis] = "ӕ", ["Æ"] = "Ӕ", ["Ä"] = "Ӕ", ["A" .. diaeresis] = "Ӕ",
		["ǧ"] = "гъ", ["g" .. caron] = "гъ", ["Ǧ"] = "Гъ", ["G" .. caron] = "Гъ",
		["ǵ"] = "дж", ["g" .. acute] = "дж", ["Ǵ"] = "Дж", ["G" .. acute] = "Дж",
		["ḱ"] = "ч", ["k" .. acute] = "ч", ["Ḱ"] = "Ч", ["K" .. acute] = "Ч",
	},
	{
		["°"] = "у", ["o^"] = "у",
		["ʷ"] = "у", ["w^"] = "У"
	},
	{
		["a"] = "а", ["A"] = "А",
		["b"] = "б", ["B"] = "Б",
		["v"] = "в", ["V"] = "В",
		["g"] = "г", ["G"] = "Г",
		["ʒ"] = "дз", ["Ʒ"] = "Дз",
		["d"] = "д", ["D"] = "Д",
		["e"] = "е", ["E"] = "Е",
		["z"] = "з", ["Z"] = "З",
		["i"] = "и", ["I"] = "И",
		["j"] = "й", ["J"] = "Й",
		["k"] = "к", ["K"] = "К",
		["l"] = "л", ["L"] = "Л",
		["m"] = "м", ["M"] = "М",
		["n"] = "н", ["N"] = "Н",
		["o"] = "о", ["O"] = "О",
		["p"] = "п", ["P"] = "П",
		["r"] = "р", ["R"] = "Р",
		["s"] = "с", ["S"] = "С",
		["t"] = "т", ["T"] = "Т",
		["u"] = "у", ["w"] = "у", ["U"] = "У", ["W"] = "У",
		["f"] = "ф", ["F"] = "Ф",
		["x"] = "х", ["X"] = "Х",
		["q"] = "хъ", ["Q"] = "Хъ",
		["c"] = "ц", ["C"] = "Ц",
		["y"] = "ы", ["Y"] = "Ы",
		["’"] = "ъ", ["'"] = "ъ"
	}
}

return data