Module:osx-conj/data

From Wiktionary, the free dictionary
Jump to navigation Jump to search
This module needs documentation.
Please document this module by describing its purpose and usage on the documentation page.

local conj = {}

local function add_asterisks(forms, data)
	for _, form in ipairs(forms) do
		for i, subform in ipairs(data.forms[form]) do
			data.forms[form][i] = "*" .. subform
		end
	end
end

conj["pp"] = {
	params = {
		[1] = {},
		[2] = {},
		[3] = {},
		[4] = {},
		["pres2sg"] = {},
		["pastpart"] = {},
		["pastpart2"] = {},
		},
}
setmetatable(conj["pp"], {__call = function(self, args, data)
	data.conj_type = "[[preterite-present verb|preterite-present]]"
	
	data.forms["inf"] = {args.head or (args[2] .. "an")}
	
	data.forms["pres_ind_1s"] = {args[1]}
	data.forms["pres_ind_2s"] = {args["pres2sg"] or (args[1] .. "t")}
	data.forms["pres_ind_3s"] = {args[1]}
	data.forms["pres_ind_p"] = {args[2] .. "un"}

	data.forms["past_ind_1s"] = {args[3] .. "a"}
	data.forms["past_ind_2s"] = {args[3] .. "es"}
	data.forms["past_ind_3s"] = {args[3] .. "a"}
	data.forms["past_ind_p"] = {args[3] .. "un"}
		
	data.forms["pres_sub_1s"] = {args[2] .. "i"}
	data.forms["pres_sub_2s"] = {args[2] .. "is"}
	data.forms["pres_sub_3s"] = {args[2] .. "i"}
	data.forms["pres_sub_p"] = {args[2] .. "in"}
		
	data.forms["past_sub_1s"] = {args[3] .. "i"}
	data.forms["past_sub_2s"] = {args[3] .. "is"}
	data.forms["past_sub_3s"] = {args[3] .. "i"}
	data.forms["past_sub_p"] = {args[3] .. "in"}
	
	data.forms["pres_part"] = {args[2] .. "andi"}
	data.forms["past_part"] = args.pastpart and {args.pastpart, (args.pastpart2 and args.pastpart2)} or (args[4] and {"gi" .. args[4], args[4]} or {"—"})
	
	table.insert(data.categories, "Old Saxon preterite-present verbs")
end
})

conj["pp2"] = {
	params = {
		[1] = {},
		[2] = {},
		[3] = {},
		[4] = {},
		["pres2sg"] = {},
		},
}
setmetatable(conj["pp2"], {__call = function(self, args, data)
	conj.pp(args, data)
	
	data.forms["past_part"] = args[4] and {args[4]} or {"—"}
end
})

conj["st"] = {
	params = {
		[1] = {},
		[2] = {},
		[3] = {},
		[4] = {},
		[5] = {},
		["mutstem"] = {},
		["fstem"] = {},
		["class"] = {},
		["irr"] = {},
		},
}
setmetatable(conj["st"], {__call = function(self, args, data)
	mw.log("st " .. args.class)
	if not args.class then
		error("Class parameter required for strong verbs")
	end
	data.conj_type = "strong class " .. args.class
	
	data.forms["inf"] = {args.head or (args[1] .. "an")}
	
	data.forms["pres_ind_1s"] = {args[2] .. "u"}
	data.forms["pres_ind_2s"] = {(args.mutstem or args[2]) .. "is"}
	data.forms["pres_ind_3s"] = {(args.mutstem or args[2]) .. "id"}
	data.forms["pres_ind_p"] = {args[1] .. "ad"}

	data.forms["past_ind_1s"] = {args[3]}
	data.forms["past_ind_2s"] = {args[4] .. "i"}
	data.forms["past_ind_3s"] = {args[3]}
	data.forms["past_ind_p"] = {args[4] .. "un"}
		
	data.forms["pres_sub_1s"] = {args[1] .. "e"}
	data.forms["pres_sub_2s"] = {args[1] .. "es"}
	data.forms["pres_sub_3s"] = {args[1] .. "e"}
	data.forms["pres_sub_p"] = {args[1] .. "en"}
		
	data.forms["past_sub_1s"] = {args[4] .. "i"}
	data.forms["past_sub_2s"] = {args[4] .. "is"}
	data.forms["past_sub_3s"] = {args[4] .. "i"}
	data.forms["past_sub_p"] = {args[4] .. "in"}
	
	data.forms["imp_s"] = {args.fstem or args[1]}
	data.forms["imp_p"] = {args[1] .. "ad"}
	
	data.forms["pres_part"] = {args[2] .. "andi"}
	data.forms["past_part"] = {"gi" .. args[5] .. "an", args[5] .. "an"}
	
	if args.class == "5" and mw.ustring.sub(args[2], -1, -1) == "i" then
		data.conj_type = data.conj_type .. " j-present"
		table.insert(data.categories, "Old Saxon class 5 strong j-present verbs")
	else
		table.insert(data.categories, "Old Saxon class " .. args.class .. " strong verbs")
	end
end
})

conj["st2"] = {
	params = {
		[1] = {},
		[2] = {},
		[3] = {},
		[4] = {},
		[5] = {},
		["mutstem"] = {},
		["fstem"] = {},
		["class"] = {},
		["irr"] = {},
		},
}
setmetatable(conj["st2"], {__call = function(self, args, data)
	conj.st(args, data)
	
	data.forms["past_part"] = {args[5] .. "an"}
end
})

conj["wk1"] = {
	params = {
		[1] = {},
		[2] = {},
		["mutstem"] = {},
		["pastpart"] = {},
		["pastpart2"] = {},
		},
}
setmetatable(conj["wk1"], {__call = function(self, args, data)
	data.conj_type = "weak class 1"
	
	data.forms["inf"] = {args.head or (args[1] .. "ian")}
	
	data.forms["pres_ind_1s"] = {args[1] .. "iu"}
	data.forms["pres_ind_2s"] = {(args.mutstem or args[1]) .. "is"}
	data.forms["pres_ind_3s"] = {(args.mutstem or args[1]) .. "id"}
	data.forms["pres_ind_p"] = {args[1] .. "iad"}

	data.forms["past_ind_1s"] = {args[2] .. "a"}
	data.forms["past_ind_2s"] = {args[2] .. "es"}
	data.forms["past_ind_3s"] = {args[2] .. "a"}
	data.forms["past_ind_p"] = {args[2] .. "un"}
		
	data.forms["pres_sub_1s"] = {args[1] .. "ie"}
	data.forms["pres_sub_2s"] = {args[1] .. "ies"}
	data.forms["pres_sub_3s"] = {args[1] .. "ie"}
	data.forms["pres_sub_p"] = {args[1] .. "ien"}
		
	data.forms["past_sub_1s"] = {args[2] .. "i"}
	data.forms["past_sub_2s"] = {args[2] .. "is"}
	data.forms["past_sub_3s"] = {args[2] .. "i"}
	data.forms["past_sub_p"] = {args[2] .. "in"}
	
	data.forms["imp_s"] = {(args.mutstem or args[1]) .. "i"}
	data.forms["imp_p"] = {args[1] .. "iad"}
	
	data.forms["pres_part"] = {args[1] .. "iandi"}
	data.forms["past_part"] = args.pastpart and {args.pastpart, args.pastpart2 and args.pastpart2} or {"gi" .. (args.mutstem or args[1]) .. "id", (args.mutstem or args[1]) .. "id"}
	
	table.insert(data.categories, "Old Saxon class 1 weak verbs")
end
})

conj["wk1-2"] = {
	params = {
		[1] = {},
		[2] = {},
		["mutstem"] = {},
		["pastpart"] = {},
		},
}
setmetatable(conj["wk1-2"], {__call = function(self, args, data)
	conj.wk1(args, data)
	
	data.forms["past_part"] = {args.pastpart or ((args.mutstem or args[1]) .. "id")}
end
})

conj["wk2"] = {
	params = {
		[1] = {},
		},
}
setmetatable(conj["wk2"], {__call = function(self, args, data)
	data.conj_type = "weak class 2"
	
	data.forms["inf"] = {args.head or (args[1] .. "on")}
	
	data.forms["pres_ind_1s"] = {args[1] .. "on"}
	data.forms["pres_ind_2s"] = {args[1] .. "os"}
	data.forms["pres_ind_3s"] = {args[1] .. "od"}
	data.forms["pres_ind_p"] = {(mw.ustring.gsub(args[1] .. "iod", "ii", "i"))}

	data.forms["past_ind_1s"] = {args[1] .. "oda"}
	data.forms["past_ind_2s"] = {args[1] .. "odes"}
	data.forms["past_ind_3s"] = {args[1] .. "oda"}
	data.forms["past_ind_p"] = {args[1] .. "odun"}
		
	data.forms["pres_sub_1s"] = {args[1] .. "o"}
	data.forms["pres_sub_2s"] = {args[1] .. "os"}
	data.forms["pres_sub_3s"] = {args[1] .. "o"}
	data.forms["pres_sub_p"] = {(mw.ustring.gsub(args[1] .. "ion", "ii", "i"))}
		
	data.forms["past_sub_1s"] = {args[1] .. "odi"}
	data.forms["past_sub_2s"] = {args[1] .. "odis"}
	data.forms["past_sub_3s"] = {args[1] .. "odi"}
	data.forms["past_sub_p"] = {args[1] .. "odin"}
	
	data.forms["imp_s"] = {args[1] .. "o"}
	data.forms["imp_p"] = {(mw.ustring.gsub(args[1] .. "iod", "ii", "i"))}
	
	data.forms["pres_part"] = {args[1] .. "ondi"}
	data.forms["past_part"] = {"gi" .. args[1] .. "od", args[1] .. "od"}
	
	table.insert(data.categories, "Old Saxon class 2 weak verbs")
end
})

conj["wk2-2"] = {
	params = {
		[1] = {},
		},
}
setmetatable(conj["wk2-2"], {__call = function(self, args, data)
	conj.wk2(args, data)
	
	data.forms["past_part"] = {args[1] .. "od"}
end
})

conj["wk3"] = {
	params = {
		[1] = {},
		[2] = {},
		["mutstem"] = {},
		},
}
setmetatable(conj["wk3"], {__call = function(self, args, data)
	data.conj_type = "weak class 3"
	
	data.forms["inf"] = {args.head or (args[1] .. "ian")}
	
	data.forms["pres_ind_1s"] = {args[1] .. "iu"}
	data.forms["pres_ind_2s"] = {args[1] .. "es"}
	data.forms["pres_ind_3s"] = {args[1] .. "ed"}
	data.forms["pres_ind_p"] = {args[1] .. "iad"}

	data.forms["past_ind_1s"] = {args[2] .. "da"}
	data.forms["past_ind_2s"] = {args[2] .. "des"}
	data.forms["past_ind_3s"] = {args[2] .. "da"}
	data.forms["past_ind_p"] = {args[2] .. "dun"}
		
	data.forms["pres_sub_1s"] = {args[1] .. "ie"}
	data.forms["pres_sub_2s"] = {args[1] .. "ies"}
	data.forms["pres_sub_3s"] = {args[1] .. "ie"}
	data.forms["pres_sub_p"] = {args[1] .. "ien"}
		
	data.forms["past_sub_1s"] = {args[2] .. "di"}
	data.forms["past_sub_2s"] = {args[2] .. "dis"}
	data.forms["past_sub_3s"] = {args[2] .. "di"}
	data.forms["past_sub_p"] = {args[2] .. "din"}
	
	data.forms["imp_s"] = {args[2] .. "e"}
	data.forms["imp_p"] = {args[1] .. "iad"}
	
	data.forms["pres_part"] = {args[1] .. "iandi"}
	data.forms["past_part"] = {"gi" .. args[2] .. "d", args[2] .. "d"}
	
	table.insert(data.categories, "Old Saxon class 3 weak verbs")
end
})

conj["wk3-2"] = {
	params = {
		[1] = {},
		[2] = {},
		["mutstem"] = {},
		},
}
setmetatable(conj["wk3-2"], {__call = function(self, args, data)
	conj.wk3(args, data)
	
	data.forms["past_part"] = {args[2] .. "d"}
end
})

conj.irregular = {}

conj.irregular["wesan"] = function(data)
	data.conj_type = "irregular, [[suppletive]]"
	
	data.forms["inf"] = {"wesan"}
	
	data.forms["pres_ind_1s"] = {"bium", "biun", "bion"}
	data.forms["pres_ind_2s"] = {"bist", "bis"}
	data.forms["pres_ind_3s"] = {"ist", "is"}
	data.forms["pres_ind_p"] = {"sind", "sindun", "sindon", "sundon"}

	data.forms["past_ind_1s"] = {"was"}
	data.forms["past_ind_2s"] = {"*wāri"}
	data.forms["past_ind_3s"] = {"was"}
	data.forms["past_ind_p"] = {"wārun"}
		
	data.forms["pres_sub_1s"] = {"sī"}
	data.forms["pres_sub_2s"] = {"sīs"}
	data.forms["pres_sub_3s"] = {"sī", "wese"}
	data.forms["pres_sub_p"] = {"sīn"}
		
	data.forms["past_sub_1s"] = {"wāri"}
	data.forms["past_sub_2s"] = {"wāris"}
	data.forms["past_sub_3s"] = {"wāri"}
	data.forms["past_sub_p"] = {"wārin"}
	
	data.forms["imp_s"] = {"wes", "wis"}
	data.forms["imp_p"] = {"wesad", "wesat", "wesath"}
	
	data.forms["pres_part"] = {"wesandi"}
	data.forms["past_part"] = {"giwesan"}
	
	table.insert(data.categories, "Old Saxon irregular verbs")
	table.insert(data.categories, "Old Saxon suppletive verbs")
end

conj.irregular["sīn"] = function(data)
	conj.irregular["wesan"](data)
	
	data.forms["inf"] = {"sīn"}
	
	data.forms["pres_ind_1s"] = {"*em", "*im"}
	data.forms["pres_ind_2s"] = {"*art"}
	data.forms["pres_ind_p"] = {"sind", "sindun", "*arun"}
	
	data.forms["pres_sub_3s"] = {"sī"}
end

conj.irregular["dōn"] = function(data)
	data.conj_type = "irregular"

	data.forms["inf"] = {"dōn"}
	
	data.forms["pres_ind_1s"] = {"dōm"}
	data.forms["pres_ind_2s"] = {"dōs"}
	data.forms["pres_ind_3s"] = {"dōd"}
	data.forms["pres_ind_p"] = {"dōth"}

	data.forms["past_ind_1s"] = {"deda"}
	data.forms["past_ind_2s"] = {"dādi"}
	data.forms["past_ind_3s"] = {"deda"}
	data.forms["past_ind_p"] = {"dādun"}
	
	data.forms["pres_sub_1s"] = {"dōe"}
	data.forms["pres_sub_2s"] = {"dōes"}
	data.forms["pres_sub_3s"] = {"dōe"}
	data.forms["pres_sub_p"] = {"dōen"}
	
	data.forms["past_sub_1s"] = {"dādi"}
	data.forms["past_sub_2s"] = {"dādis"}
	data.forms["past_sub_3s"] = {"dādi"}
	data.forms["past_sub_p"] = {"dādin"}

	data.forms["imp_s"] = {"dō"}
	data.forms["imp_p"] = {"dōth"}
	
	data.forms["pres_part"] = {"dōndi"}
	data.forms["past_part"] = {"gidōn", "dōn"}
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["gidōn"] = function(data)
	conj.irregular["dōn"](data)
	
	for _, forms in pairs(data.forms) do
		forms[1] = "gi" .. forms[1]
	end
	
	data.forms["past_part"] = {"gidōn"}
end

conj.irregular["gān"] = function(data)
	data.conj_type = "irregular, [[suppletive]]"

	data.forms["inf"] = {"gān"}
	
	data.forms["pres_ind_1s"] = {"*gā"}
	data.forms["pres_ind_2s"] = {"*gēs"}
	data.forms["pres_ind_3s"] = {"gēd"}
	data.forms["pres_ind_p"] = {"*gād"}

	data.forms["past_ind_1s"] = {"gēng"}
	data.forms["past_ind_2s"] = {"gēngi"}
	data.forms["past_ind_3s"] = {"gēng"}
	data.forms["past_ind_p"] = {"gēngun"}
	
	data.forms["pres_sub_1s"] = {"*gāe"}
	data.forms["pres_sub_2s"] = {"*gāes"}
	data.forms["pres_sub_3s"] = {"*gāe"}
	data.forms["pres_sub_p"] = {"*gāen"}
	
	data.forms["past_sub_1s"] = {"gēngi"}
	data.forms["past_sub_2s"] = {"gēngis"}
	data.forms["past_sub_3s"] = {"gēngi"}
	data.forms["past_sub_p"] = {"gēngin"}

	data.forms["imp_s"] = {"*gā"}
	data.forms["imp_p"] = {"*gād"}
	
	data.forms["pres_part"] = {"gāndi"}
	data.forms["past_part"] = {"gigangan", "gangan"}
	
	table.insert(data.categories, "Old Saxon irregular verbs")
	table.insert(data.categories, "Old Saxon suppletive verbs")
end

conj.irregular["fulgān"] = function(data)
	conj.irregular["gān"](data)
	
	data.forms["past_part"] = {"gangan"}
	
	for _, forms in pairs(data.forms) do
		forms[1] = mw.ustring.gsub(forms[1], "^(%*?)g", "%1fulg")
		forms[1] = mw.ustring.gsub(forms[1], "gēng", "geng")
	end
end

conj.irregular["stān"] = function(data)
	data.conj_type = "irregular"

	data.forms["inf"] = {"stān"}
	
	data.forms["pres_ind_1s"] = {"*stā"}
	data.forms["pres_ind_2s"] = {"stēs"}
	data.forms["pres_ind_3s"] = {"stēd"}
	data.forms["pres_ind_p"] = {"stād"}

	data.forms["past_ind_1s"] = {"stōd"}
	data.forms["past_ind_2s"] = {"stōdi"}
	data.forms["past_ind_3s"] = {"stōd"}
	data.forms["past_ind_p"] = {"stōdun"}
	
	data.forms["pres_sub_1s"] = {"*stāe"}
	data.forms["pres_sub_2s"] = {"*stāes"}
	data.forms["pres_sub_3s"] = {"*stāe"}
	data.forms["pres_sub_p"] = {"*stāen"}
	
	data.forms["past_sub_1s"] = {"stōdi"}
	data.forms["past_sub_2s"] = {"stōdis"}
	data.forms["past_sub_3s"] = {"stōdi"}
	data.forms["past_sub_p"] = {"stōdin"}

	data.forms["imp_s"] = {"stā"}
	data.forms["imp_p"] = {"stād"}
	
	data.forms["pres_part"] = {"stāndi"}
	data.forms["past_part"] = {"gistandan", "standan"}
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["willian"] = function(data)
	data.conj_type = "irregular"

	data.forms["inf"] = {"willian"}
	
	data.forms["pres_ind_1s"] = {"williu"}
	data.forms["pres_ind_2s"] = {"wilt", "wilis"}
	data.forms["pres_ind_3s"] = {"wili", "wil"}
	data.forms["pres_ind_p"] = {"williad"}

	data.forms["past_ind_1s"] = {"welda"}
	data.forms["past_ind_2s"] = {"weldes"}
	data.forms["past_ind_3s"] = {"welda"}
	data.forms["past_ind_p"] = {"weldun"}
	
	data.forms["pres_sub_1s"] = {"willie"}
	data.forms["pres_sub_2s"] = {"willies"}
	data.forms["pres_sub_3s"] = {"willie"}
	data.forms["pres_sub_p"] = {"willien"}
	
	data.forms["past_sub_1s"] = {"weldi"}
	data.forms["past_sub_2s"] = {"weldis"}
	data.forms["past_sub_3s"] = {"weldi"}
	data.forms["past_sub_p"] = {"weldin"}
	
	data.forms["pres_part"] = {"williandi"}

	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["snīwan"] = function(data)
	data.conj_type = "class 1 strong [[impersonal verb|impersonal]]"
	
	data.forms["inf"] = {"snīwan"}

	data.forms["pres_ind_3s"] = {"snīwid"}
	data.forms["past_ind_3s"] = {"snēw"}
	
	data.forms["pres_sub_3s"] = {"snīwe"}
	data.forms["past_sub_3s"] = {"sniwi"}
	
	data.forms["pres_part"] = {"snīwandi"}
	data.forms["past_part"] = {"gisniwan", "sniwan"}
	
	table.insert(data.categories, "Old Saxon class 1 strong verbs")
	table.insert(data.categories, "Old Saxon impersonal verbs")
end

----------------------------------------------------------------------

conj.irregular["antfindan"] = function(data)
	conj["st2"]({["class"] = 3, "antfind", "antfind", "antfand", "antfund", "antfund"}, data)

	data.conj_type = "strong class 3 with weak past"

	data.forms["past_ind_1s"] = {"antfunda"}
	data.forms["past_ind_2s"] = {"*antfundes"}
	data.forms["past_ind_3s"] = {"antfunda"}
	data.forms["past_ind_p"] = {"antfundun"}
	
	add_asterisks({"past_sub_1s", "past_sub_2s", "past_sub_3s", "past_sub_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["anbrengian"] = function(data)
	conj["wk1-2"]({"anbreng", "anbrāht", ["pastpart"] = "anbrāht"}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["bakkan"] = function(data)
	conj.st({"bakk", "bakk", "bōk", "bōk", "bakk", ["fstem"] = "bak", ["class"] = 6}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
end

conj.irregular["bibrengian"] = function(data)
	conj["wk1-2"]({"bibreng", "bibrāht", ["pastpart"] = "bibrāht"}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["buggian"] = function(data)
	conj.wk1({"bugg", ["mutstem"] = "bug", "boht", ["pastpart"] = "giboht", ["pastpart2"] = "boht"}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["fargevan"] = function(data)
	conj["st2"]({"fargev", "fargev", "fargaf", "fargāv", ["fstem"] = "fargef", "fargev", ["class"] = 5}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_3s", "pres_ind_p",
		"pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
end

conj.irregular["gibrengian"] = function(data)
	conj["wk1-2"]({"gibreng", "gibrāht", ["pastpart"] = "gibrāht"}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["gidēlian"] = function(data)
	conj["wk1-2"]({"gidēl", "gidēld"}, data)
	
	data.forms["pres_ind_3s"] = {"gidēli"}
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["nitan"] = function(data)
	conj.pp({"nēt", ["pres2sg"] = "nēst", "nit", "niss", "nitan", ["pastpart"] = "[[ne]] [[giwitan]]", ["pastpart2"] = "ne [[witan]]"}, data)
	
	data.conj_type = data.conj_type .. " irregular"
		
	add_asterisks({"pres_ind_2s", "pres_ind_p", "past_ind_1s", "past_ind_2s", "past_ind_3s", "past_ind_p",
		"pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", 
		"past_sub_1s", "past_sub_2s", "past_sub_3s", "past_sub_p", "pres_part"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["rekkian"] = function(data)
	conj.wk1({"rekk", ["mutstem"] = "rek", "raht", ["pastpart"] = "giraht", ["pastpart2"] = "raht"}, data)
	
	add_asterisks({"past_ind_2s", "past_ind_p", "past_sub_1s", "past_sub_2s", "past_sub_3s", "past_sub_p", "past_part"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["tesamnabrengian"] = function(data)
	conj["wk1-2"]({"tesamnabreng", "tesamnabrāht", ["pastpart"] = "tesamnabrāht"}, data)
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_3s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p", "imp_s", "imp_p"}, data)

	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["thenkian"] = function(data)
	conj.wk1({"thenk", "thāht", ["pastpart"] = "githāht", ["pastpart2"] = "thāht"}, data)
	
	data.conj_type = data.conj_type .. " irregular"
	
	add_asterisks({"pres_ind_1s", "pres_ind_2s", "pres_ind_p", "pres_sub_1s", "pres_sub_2s", "pres_sub_3s", "pres_sub_p",
		"imp_s", "imp_p"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

conj.irregular["thrukkian"] = function(data)
	conj.wk1({"thrukk", ["mutstem"] = "thruk", "thruht", ["pastpart"] = "githruht", ["pastpart2"] = "thruht"}, data)
	
	add_asterisks({"past_ind_2s", "past_ind_p", "past_sub_1s", "past_sub_2s", "past_sub_3s", "past_sub_p", "past_part"}, data)
	
	table.insert(data.categories, "Old Saxon irregular verbs")
end

return conj