Module:User:Erutuon/grc-decl/sandbox/testcases

From Wiktionary, the free dictionary
Jump to navigation Jump to search

Module error: No such module "grc-decl/sandbox/testcases".


local tests = require('Module:UnitTests')
local grc_decl = require('Module:grc-decl/sandbox')
local m_links = require('Module:links')
local m_script_utils = require('Module:script utilities')
local lang = require('Module:languages').getByCode('grc')

local normalize = mw.ustring.toNFD

local function link(term)
	return m_links.full_link { lang = lang, term = term, tr = '-' }
end

local function tag(term)
	return m_script_utils.tag_text(term, lang)
end

local function _cell(t)
	return function(key1, key2)
		return t[key1] or t[key2] or '—'
	end
end

local function format_ctable(ctable)
	local cell = _cell(ctable)
	return normalize(table.concat({
		table.concat({ cell('NS'), cell('GS'), cell('DS'), cell('AS', 'NS'), cell('VS', 'NS') }, ', '),
		table.concat({ cell('ND'), cell('GD') }, ', '),
		table.concat({ cell('NP'), cell('GP'), cell('DP'), cell('AP', 'NP') }, ', '),
	}, '<br/>'))
end

local function format_atable(atable, fem)
	local cell = _cell(atable)
	local out = {
		table.concat({
			table.concat({ cell('MNS'), cell('MGS'), cell('MDS'), cell('MAS', 'MNS'), cell('MVS', 'MNS') }, ', '),
			table.concat({ cell('MND'), cell('MGD') }, ', '),
			table.concat({ cell('MNP'), cell('MGP'), cell('MDP'), cell('MAP', 'MNP') }, ', '),
			'',
		}, '<br/>')
	}
	if fem then
		table.insert(out, table.concat({
			table.concat({ cell('FNS'), cell('FGS'), cell('FDS'), cell('FAS', 'FNS') }, ', '),
			table.concat({ cell('FND'), cell('FGD') }, ', '),
			table.concat({ cell('FNP'), cell('FGP'), cell('FDP'), cell('FAP', 'FNP') }, ', '),
			'',
		}, '<br/>'))
	end
	table.insert(out, table.concat({
		table.concat({ cell('NNS'), cell('NGS'), cell('NDS') }, ', '),
		table.concat({ cell('NND'), cell('NGD') }, ', '),
		table.concat({ cell('NNP'), cell('NGP'), cell('NDP') }, ', '),
		'',
		table.concat({ cell('adv'), cell('comp'), cell('super') }, ', '),
	}, '<br/>'))
	return normalize(table.concat(out, '<br/>'))
end

local function print_named_params(input_frame)
	local output = {}
	for k, v in pairs(input_frame) do
		if type(k) == 'string' then
			table.insert(output, v)
		end
	end
	if #output > 0 then
		return table.concat{ ' (', table.concat(output, ', '), ')' }
	else
		return ''
	end
end

local function show(input_frame)
	return link(input_frame[1]) ..
		(input_frame[2] and ', ' .. tag(input_frame[2]) or '') ..
		print_named_params(input_frame)
end

function tests:check_output_noun(input_frame, output_ctable)
	local args = grc_decl.test_decl(input_frame)
	self:equals(show(input_frame),
		format_ctable(args.ctable),
		format_ctable(output_ctable),
		{ display = tag, show_difference = true })
end

function tests:check_output_adj(input_frame, output_atable)
	local args = grc_decl.test_adecl(input_frame)
	local fem = args.act[2]
	self:equals(show(input_frame),
		format_atable(args.atable, fem),
		format_atable(output_atable, fem),
		{ display = tag, show_difference = true })
end

local function iterate(examples)
	for _, example in ipairs(examples) do
		if type(example) == "table" then
			tests:check_output_noun(example[1], example[2])
		else
			tests:heading(example)
		end
	end
end

local function iterate_adj(examples)
	for _, example in ipairs(examples) do
		if type(example) == "table" then
			tests:check_output_adj(example[1], example[2])
		else
			tests:heading(example)
		end
	end
end

function tests:test_grc_decl_first()
	local examples = {
		'Feminine long alpha',
		{ { 'θήρᾱ', 'ᾱς' }, { NS = 'θήρᾱ', GS = 'θήρᾱς', DS = 'θήρᾳ', AS = 'θήρᾱν', ND = 'θήρᾱ', GD = 'θήραιν', NP = 'θῆραι', GP = 'θηρῶν', DP = 'θήραις', AP = 'θήρᾱς' } },
		{ { 'βῐ́ᾱ', 'ᾱς' }, { NS = 'βῐ́ᾱ', GS = 'βῐ́ᾱς', DS = 'βῐ́ᾳ', AS = 'βῐ́ᾱν', ND = 'βῐ́ᾱ', GD = 'βῐ́αιν', NP = 'βῐ́αι', GP = 'βῐῶν', DP = 'βῐ́αις', AP = 'βῐ́ᾱς' } },
		{ { 'φῐλῐ́ᾱ', 'ᾱς' }, { NS = 'φῐλῐ́ᾱ', GS = 'φῐλῐ́ᾱς', DS = 'φῐλῐ́ᾳ', AS = 'φῐλῐ́ᾱν', ND = 'φῐλῐ́ᾱ', GD = 'φῐλῐ́αιν', NP = 'φῐλῐ́αι', GP = 'φῐλῐῶν', DP = 'φῐλῐ́αις', AP = 'φῐλῐ́ᾱς' } },
		{ { 'ᾰ̓γορᾱ́', 'ᾶς' }, { NS = 'ᾰ̓γορᾱ́', GS = 'ᾰ̓γορᾶς', DS = 'ᾰ̓γορᾷ', AS = 'ᾰ̓γορᾱ́ν', ND = 'ᾰ̓γορᾱ́', GD = 'ᾰ̓γοραῖν', NP = 'ᾰ̓γοραί', GP = 'ᾰ̓γορῶν', DP = 'ᾰ̓γοραῖς', AP = 'ᾰ̓γορᾱ́ς' } },
		'Feminine eta',
		{ { 'νῑ́κη', 'ης' }, { NS = 'νῑ́κη', GS = 'νῑ́κης', DS = 'νῑ́κῃ', AS = 'νῑ́κην', ND = 'νῑ́κᾱ', GD = 'νῑ́καιν', NP = 'νῖκαι', GP = 'νῑκῶν', DP = 'νῑ́καις', AP = 'νῑ́κᾱς' } },
		{ { 'δῐ́κη', 'ης' }, { NS = 'δῐ́κη', GS = 'δῐ́κης', DS = 'δῐ́κῃ', AS = 'δῐ́κην', ND = 'δῐ́κᾱ', GD = 'δῐ́καιν', NP = 'δῐ́και', GP = 'δῐκῶν', DP = 'δῐ́καις', AP = 'δῐ́κᾱς' } },
		{ { 'ἐπῐστήμη', 'ης' }, { NS = 'ἐπῐστήμη', GS = 'ἐπῐστήμης', DS = 'ἐπῐστήμῃ', AS = 'ἐπῐστήμην', ND = 'ἐπῐστήμᾱ', GD = 'ἐπῐστήμαιν', NP = 'ἐπῐστῆμαι', GP = 'ἐπῐστημῶν', DP = 'ἐπῐστήμαις', AP = 'ἐπῐστήμᾱς' } },
		{ { 'βουλή', 'ῆς' }, { NS = 'βουλή', GS = 'βουλῆς', DS = 'βουλῇ', AS = 'βουλήν', ND = 'βουλᾱ́', GD = 'βουλαῖν', NP = 'βουλαί', GP = 'βουλῶν', DP = 'βουλαῖς', AP = 'βουλᾱ́ς' } },
		'Feminine short alpha',
		{ { 'ᾰ̓λήθειᾰ', 'ᾱς' }, { NS = 'ᾰ̓λήθειᾰ', GS = 'ᾰ̓ληθείᾱς', DS = 'ᾰ̓ληθείᾳ', AS = 'ᾰ̓λήθειᾰν', ND = 'ᾰ̓ληθείᾱ', GD = 'ᾰ̓ληθείαιν', NP = 'ᾰ̓λήθειαι', GP = 'ᾰ̓ληθειῶν', DP = 'ᾰ̓ληθείαις', AP = 'ᾰ̓ληθείᾱς' } },
		{ { 'θάλασσᾰ', 'ης' }, { NS = 'θάλασσᾰ', GS = 'θαλάσσης', DS = 'θαλάσσῃ', AS = 'θάλασσᾰν', ND = 'θαλάσσᾱ', GD = 'θαλάσσαιν', NP = 'θάλασσαι', GP = 'θαλασσῶν', DP = 'θαλάσσαις', AP = 'θαλάσσᾱς' } },
		{ { 'γλῶσσᾰ', 'ης' }, { NS = 'γλῶσσᾰ', GS = 'γλώσσης', DS = 'γλώσσῃ', AS = 'γλῶσσᾰν', ND = 'γλώσσᾱ', GD = 'γλώσσαιν', NP = 'γλῶσσαι', GP = 'γλωσσῶν', DP = 'γλώσσαις', AP = 'γλώσσᾱς' } },
		'Feminine short alpha (contracted)',
		{ { 'μνᾶ', 'ᾶς' }, { NS = 'μνᾶ', GS = 'μνᾶς', DS = 'μνᾷ', AS = 'μνᾶν', ND = 'μνᾶ', GD = 'μναῖν', NP = 'μναῖ', GP = 'μνῶν', DP = 'μναῖς', AP = 'μνᾶς' } },
		{ { 'γῆ', 'ῆς' }, { NS = 'γῆ', GS = 'γῆς', DS = 'γῇ', AS = 'γῆν', ND = 'γᾶ', GD = 'γαῖν', NP = 'γαῖ/γέαι', GP = 'γῶν/γεῶν', DP = 'γαῖς', AP = 'γᾶς/γέᾱς' } },
		'Masculine alpha',
		{ { 'νεᾱνῐ́ᾱς', 'ου' }, { NS = 'νεᾱνῐ́ᾱς', GS = 'νεᾱνῐ́ου', DS = 'νεᾱνῐ́ᾳ', AS = 'νεᾱνῐ́ᾱν', VS = 'νεᾱνῐ́ᾱ', ND = 'νεᾱνῐ́ᾱ', GD = 'νεᾱνῐ́αιν', NP = 'νεᾱνῐ́αι', GP = 'νεᾱνῐῶν', DP = 'νεᾱνῐ́αις', AP = 'νεᾱνῐ́ᾱς' } },
		{ { 'Βορρᾶς', 'ᾶ' }, { NS = 'Βορρᾶς', GS = 'Βορρᾶ', DS = 'Βορρᾷ', AS = 'Βορρᾶν', VS = 'Βορρᾶ', ND = 'Βορρᾶ', GD = 'Βορραῖν', NP = 'Βορραῖ', GP = 'Βορρῶν', DP = 'Βορραῖς', AP = 'Βορρᾶς' } },
		{ { 'Νασικᾶς', 'ᾶ' }, { NS = 'Νασικᾶς', GS = 'Νασικᾶ', DS = 'Νασικᾷ', AS = 'Νασικᾶν', VS = 'Νασικᾶ', ND = 'Νασικᾶ', GD = 'Νασικαῖν', NP = 'Νασικαῖ', GP = 'Νασικῶν', DP = 'Νασικαῖς', AP = 'Νασικᾶς' } },
		'Masculine eta',
		{ { 'πώλης', 'πώλου' }, { NS = 'πώλης', GS = 'πώλου', DS = 'πώλῃ', AS = 'πώλην', VS = 'πώλη', ND = 'πώλᾱ', GD = 'πώλαιν', NP = 'πῶλαι', GP = 'πωλῶν', DP = 'πώλαις', AP = 'πώλᾱς' } },
		{ { 'πολῑ́της', 'ου' }, { NS = 'πολῑ́της', GS = 'πολῑ́του', DS = 'πολῑ́τῃ', AS = 'πολῑ́την', VS = 'πολῖτᾰ', ND = 'πολῑ́τᾱ', GD = 'πολῑ́ταιν', NP = 'πολῖται', GP = 'πολῑτῶν', DP = 'πολῑ́ταις', AP = 'πολῑ́τᾱς' } },
		{ { 'κρῐτής', 'οῦ' }, { NS = 'κρῐτής', GS = 'κρῐτοῦ', DS = 'κρῐτῇ', AS = 'κρῐτήν', VS = 'κρῐτᾰ́', ND = 'κρῐτᾱ́', GD = 'κρῐταῖν', NP = 'κρῐταί', GP = 'κρῐτῶν', DP = 'κρῐταῖς', AP = 'κρῐτᾱ́ς' } },
		{ { 'Ἑρμῆς', 'οῦ' }, { NS = 'Ἑρμῆς', GS = 'Ἑρμοῦ', DS = 'Ἑρμῇ', AS = 'Ἑρμῆν', VS = 'Ἑρμῆ', ND = 'Ἑρμᾶ', GD = 'Ἑρμαῖν', NP = 'Ἑρμαῖ', GP = 'Ἑρμῶν', DP = 'Ἑρμαῖς', AP = 'Ἑρμᾶς' } },
	}
	iterate(examples)
end

function tests:test_grc_decl_second()
	local examples = {
		'Masculine',
		{ { 'θεός', 'οῦ' }, { NS = 'θεός', GS = 'θεοῦ', DS = 'θεῷ', AS = 'θεόν', VS = 'θεέ', ND = 'θεώ', GD = 'θεοῖν', NP = 'θεοί', GP = 'θεῶν', DP = 'θεοῖς', AP = 'θεούς' } },
		{ { 'λόγος', 'ου' }, { NS = 'λόγος', GS = 'λόγου', DS = 'λόγῳ', AS = 'λόγον', VS = 'λόγε', ND = 'λόγω', GD = 'λόγοιν', NP = 'λόγοι', GP = 'λόγων', DP = 'λόγοις', AP = 'λόγους' } },
		{ { 'δοῦλος', 'ου' }, { NS = 'δοῦλος', GS = 'δούλου', DS = 'δούλῳ', AS = 'δοῦλον', VS = 'δοῦλε', ND = 'δούλω', GD = 'δούλοιν', NP = 'δοῦλοι', GP = 'δούλων', DP = 'δούλοις', AP = 'δούλους' } },
		{ { 'ᾰ̓́νθρωπος', 'ου' }, { NS = 'ᾰ̓́νθρωπος', GS = 'ᾰ̓νθρώπου', DS = 'ᾰ̓νθρώπῳ', AS = 'ᾰ̓́νθρωπον', VS = 'ᾰ̓́νθρωπε', ND = 'ᾰ̓νθρώπω', GD = 'ᾰ̓νθρώποιν', NP = 'ᾰ̓́νθρωποι', GP = 'ᾰ̓νθρώπων', DP = 'ᾰ̓νθρώποις', AP = 'ᾰ̓νθρώπους' } },
		{ { 'Ᾰ̓θηναῖος', 'ου' }, { NS = 'Ᾰ̓θηναῖος', GS = 'Ᾰ̓θηναίου', DS = 'Ᾰ̓θηναίῳ', AS = 'Ᾰ̓θηναῖον', VS = 'Ᾰ̓θηναῖε', ND = 'Ᾰ̓θηναίω', GD = 'Ᾰ̓θηναίοιν', NP = 'Ᾰ̓θηναῖοι', GP = 'Ᾰ̓θηναίων', DP = 'Ᾰ̓θηναίοις', AP = 'Ᾰ̓θηναίους' } },
		'Masculine (contracted)',
		{ { 'πλοῦς', 'οῦ' }, { NS = 'πλοῦς', GS = 'πλοῦ', DS = 'πλῷ', AS = 'πλοῦν', VS = 'πλοῦ', ND = 'πλώ', GD = 'πλοῖν', NP = 'πλοῖ', GP = 'πλῶν', DP = 'πλοῖς', AP = 'πλοῦς' } },
		{ { 'Πειρίθους', 'ου' }, { NS = 'Πειρίθους', GS = 'Πειρίθου', DS = 'Πειρίθῳ', AS = 'Πειρίθουν', VS = 'Πειρίθου', ND = 'Πειρίθω', GD = 'Πειρίθοιν', NP = 'Πειρίθοι', GP = 'Πειρίθων', DP = 'Πειρίθοις', AP = 'Πειρίθους' } },
		'Attic',
		{ { 'νεώς', 'ώ' }, { NS = 'νεώς', GS = 'νεώ', DS = 'νεῴ', AS = 'νεώ(ν)', ND = 'νεώ', GD = 'νεῴν', NP = 'νεῴ', GP = 'νεών', DP = 'νεῴς', AP = 'νεώς' } },
		'Neuter',
		{ { 'ἄροτρον', 'ου' }, { NS = 'ἄροτρον', GS = 'ἀρότρου', DS = 'ἀρότρῳ', ND = 'ἀρότρω', GD = 'ἀρότροιν', NP = 'ἄροτρᾰ', GP = 'ἀρότρων', DP = 'ἀρότροις' } },
		{ { 'ᾰ̓́ντρον', 'ου' }, { NS = 'ᾰ̓́ντρον', GS = 'ᾰ̓́ντρου', DS = 'ᾰ̓́ντρῳ', ND = 'ᾰ̓́ντρω', GD = 'ᾰ̓́ντροιν', NP = 'ᾰ̓́ντρᾰ', GP = 'ᾰ̓́ντρων', DP = 'ᾰ̓́ντροις' } },
		{ { 'δῶρον', 'ου' }, { NS = 'δῶρον', GS = 'δώρου', DS = 'δώρῳ', ND = 'δώρω', GD = 'δώροιν', NP = 'δῶρᾰ', GP = 'δώρων', DP = 'δώροις' } },
		{ { 'ᾠόν', 'οῦ' }, { NS = 'ᾠόν', GS = 'ᾠοῦ', DS = 'ᾠῷ', ND = 'ᾠώ', GD = 'ᾠοῖν', NP = 'ᾠᾰ́', GP = 'ᾠῶν', DP = 'ᾠοῖς' } },
		{ { 'πεδῐ́ον', 'ου' }, { NS = 'πεδῐ́ον', GS = 'πεδῐ́ου', DS = 'πεδῐ́ῳ', ND = 'πεδῐ́ω', GD = 'πεδῐ́οιν', NP = 'πεδῐ́ᾰ', GP = 'πεδῐ́ων', DP = 'πεδῐ́οις' } },
		'Neuter (contracted)',
		{ { 'ὀστοῦν', 'οῦ' }, { NS = 'ὀστοῦν', GS = 'ὀστοῦ', DS = 'ὀστῷ', ND = 'ὀστώ', GD = 'ὀστοῖν', NP = 'ὀστᾶ', GP = 'ὀστῶν', DP = 'ὀστοῖς' } },
	}
	iterate(examples)
end

function tests:test_grc_decl_third_cons()
	local examples = {
		'Velar (-αξ)',
		{ { 'κλῖμᾰξ', 'κλῑ́μᾰκος' }, { NS = 'κλῖμᾰξ', GS = 'κλῑ́μᾰκος', DS = 'κλῑ́μᾰκῐ', AS = 'κλῑ́μᾰκᾰ', ND = 'κλῑ́μᾰκε', GD = 'κλῑμᾰ́κοιν', NP = 'κλῑ́μᾰκες', GP = 'κλῑμᾰ́κων', DP = 'κλῑ́μᾰξῐ(ν)', AP = 'κλῑ́μᾰκᾰς' } },
		{ { 'φῠ́λᾰξ', 'φῠ́λᾰκος' }, { NS = 'φῠ́λᾰξ', GS = 'φῠ́λᾰκος', DS = 'φῠ́λᾰκῐ', AS = 'φῠ́λᾰκᾰ', ND = 'φῠ́λᾰκε', GD = 'φῠλᾰ́κοιν', NP = 'φῠ́λᾰκες', GP = 'φῠλᾰ́κων', DP = 'φῠ́λᾰξῐ(ν)', AP = 'φῠ́λᾰκᾰς' } },
		{ { 'δρᾰ́ξ', 'δρᾰκός' }, { NS = 'δρᾰ́ξ', GS = 'δρᾰκός', DS = 'δρᾰκῐ́', AS = 'δρᾰ́κᾰ', ND = 'δρᾰ́κε', GD = 'δρᾰκοῖν', NP = 'δρᾰ́κες', GP = 'δρᾰκῶν', DP = 'δρᾰξῐ́(ν)', AP = 'δρᾰ́κᾰς' } },
		'Velar (-ιξ)',
		{ { 'φοῖνῐξ', 'φοίνῑκος' }, { NS = 'φοῖνῐξ', GS = 'φοίνῑκος', DS = 'φοίνῑκῐ', AS = 'φοίνῑκᾰ', ND = 'φοίνῑκε', GD = 'φοινῑ́κοιν', NP = 'φοίνῑκες', GP = 'φοινῑ́κων', DP = 'φοίνῑξῐ(ν)', AP = 'φοίνῑκᾰς' } },
		{ { 'μάστῑξ', 'μάστῑγος' }, { NS = 'μάστῑξ', GS = 'μάστῑγος', DS = 'μάστῑγῐ', AS = 'μάστῑγᾰ', ND = 'μάστῑγε', GD = 'μαστῑ́γοιν', NP = 'μάστῑγες', GP = 'μαστῑ́γων', DP = 'μάστῑξῐ(ν)', AP = 'μάστῑγᾰς' } },
		{ { 'θρῐ́ξ', 'τρῐ́χος' }, { NS = 'θρῐ́ξ', GS = 'τρῐχός', DS = 'τρῐχῐ́', AS = 'τρῐ́χᾰ', ND = 'τρῐ́χε', GD = 'τρῐχοῖν', NP = 'τρῐ́χες', GP = 'τρῐχῶν', DP = 'τρῐξῐ́(ν)', AP = 'τρῐ́χᾰς' } },
		'Velar (-υξ)',
		{ { 'κῆρῠξ', 'κήρῡκος' }, { NS = 'κῆρῠξ', GS = 'κήρῡκος', DS = 'κήρῡκῐ', AS = 'κήρῡκᾰ', ND = 'κήρῡκε', GD = 'κηρῡ́κοιν', NP = 'κήρῡκες', GP = 'κηρῡ́κων', DP = 'κήρῡξῐ(ν)', AP = 'κήρῡκᾰς' } },
		{ { 'πτέρῠξ', 'πτέρῠγος' }, { NS = 'πτέρῠξ', GS = 'πτέρῠγος', DS = 'πτέρῠγῐ', AS = 'πτέρῠγᾰ', ND = 'πτέρῠγε', GD = 'πτερῠ́γοιν', NP = 'πτέρῠγες', GP = 'πτερῠ́γων', DP = 'πτέρῠξῐ(ν)', AP = 'πτέρῠγᾰς' } },
		{ { 'ὄνῠξ', 'ὄνῠχος' }, { NS = 'ὄνῠξ', GS = 'ὄνῠχος', DS = 'ὄνῠχῐ', AS = 'ὄνῠχᾰ', ND = 'ὄνῠχε', GD = 'ὀνῠ́χοιν', NP = 'ὄνῠχες', GP = 'ὀνῠ́χων', DP = 'ὄνῠξῐ(ν)', AP = 'ὄνῠχᾰς' } },
		{ { 'νῠ́ξ', 'νῠκτός' }, { NS = 'νῠ́ξ', GS = 'νῠκτός', DS = 'νῠκτῐ́', AS = 'νῠ́κτᾰ', ND = 'νῠ́κτε', GD = 'νῠκτοῖν', NP = 'νῠ́κτες', GP = 'νῠκτῶν', DP = 'νῠξῐ́(ν)', AP = 'νῠ́κτᾰς' } },
		{ { 'Πνύξ', 'Πῠκνός' }, { NS = 'Πνύξ', GS = 'Πῠκνός', DS = 'Πῠκνῐ́', AS = 'Πῠ́κνᾰ', ND = 'Πῠ́κνε', GD = 'Πῠκνοῖν', NP = 'Πῠ́κνες', GP = 'Πῠκνῶν', DP = 'Πῠκσῐ́(ν)', AP = 'Πῠ́κνᾰς' } },
		{ { 'πῡ́ξ', 'πῡγός' }, { NS = 'πῡ́ξ', GS = 'πῡγός', DS = 'πῡγῐ́', AS = 'πῦγᾰ', ND = 'πῦγε', GD = 'πῡγοῖν', NP = 'πῦγες', GP = 'πῡγῶν', DP = 'πῡξῐ́(ν)', AP = 'πῦγᾰς' } },
		'Velar (-αγξ)',
		{ { 'σῆρᾰγξ', 'σήρᾰγγος' }, { NS = 'σῆρᾰγξ', GS = 'σήρᾰγγος', DS = 'σήρᾰγγῐ', AS = 'σήρᾰγγᾰ', ND = 'σήρᾰγγε', GD = 'σηρᾰ́γγοιν', NP = 'σήρᾰγγες', GP = 'σηρᾰ́γγων', DP = 'σήρᾰγξῐ(ν)', AP = 'σήρᾰγγᾰς' } },
		{ { 'φᾰ́λᾰγξ', 'φᾰ́λᾰγγος' }, { NS = 'φᾰ́λᾰγξ', GS = 'φᾰ́λᾰγγος', DS = 'φᾰ́λᾰγγῐ', AS = 'φᾰ́λᾰγγᾰ', ND = 'φᾰ́λᾰγγε', GD = 'φᾰλᾰ́γγοιν', NP = 'φᾰ́λᾰγγες', GP = 'φᾰλᾰ́γγων', DP = 'φᾰ́λᾰγξῐ(ν)', AP = 'φᾰ́λᾰγγᾰς' } },
		{ { 'στρᾰ́γξ', 'στρᾰγγός' }, { NS = 'στρᾰ́γξ', GS = 'στρᾰγγός', DS = 'στρᾰγγῐ́', AS = 'στρᾰ́γγᾰ', ND = 'στρᾰ́γγε', GD = 'στρᾰγγοῖν', NP = 'στρᾰ́γγες', GP = 'στρᾰγγῶν', DP = 'στρᾰγξῐ́(ν)', AP = 'στρᾰ́γγᾰς' } },
		'Velar (-ιγξ)',
		{ { 'στῆρῐγξ', 'στήρῐγγος' }, { NS = 'στῆρῐγξ', GS = 'στήρῐγγος', DS = 'στήρῐγγῐ', AS = 'στήρῐγγᾰ', ND = 'στήρῐγγε', GD = 'στηρῐ́γγοιν', NP = 'στήρῐγγες', GP = 'στηρῐ́γγων', DP = 'στήρῐγξῐ(ν)', AP = 'στήρῐγγᾰς' } },
		{ { 'σᾰ́λπῐγξ', 'σᾰ́λπῐγγος' }, { NS = 'σᾰ́λπῐγξ', GS = 'σᾰ́λπῐγγος', DS = 'σᾰ́λπῐγγῐ', AS = 'σᾰ́λπῐγγᾰ', ND = 'σᾰ́λπῐγγε', GD = 'σᾰλπῐ́γγοιν', NP = 'σᾰ́λπῐγγες', GP = 'σᾰλπῐ́γγων', DP = 'σᾰ́λπῐγξῐ(ν)', AP = 'σᾰ́λπῐγγᾰς' } },
		{ { 'Σφῐ́γξ', 'Σφῐγγός' }, { NS = 'Σφῐ́γξ', GS = 'Σφῐγγός', DS = 'Σφῐγγῐ́', AS = 'Σφῐ́γγᾰ', ND = 'Σφῐ́γγε', GD = 'Σφῐγγοῖν', NP = 'Σφῐ́γγες', GP = 'Σφῐγγῶν', DP = 'Σφῐγξῐ́(ν)', AP = 'Σφῐ́γγᾰς' } },
		'Velar (-υγξ)',
		{ { 'σπῆλῠγξ', 'σπήλῠγγος' }, { NS = 'σπῆλῠγξ', GS = 'σπήλῠγγος', DS = 'σπήλῠγγῐ', AS = 'σπήλῠγγᾰ', ND = 'σπήλῠγγε', GD = 'σπηλῠ́γγοιν', NP = 'σπήλῠγγες', GP = 'σπηλῠ́γγων', DP = 'σπήλῠγξῐ(ν)', AP = 'σπήλῠγγᾰς' } },
		{ { 'φᾰ́ρῠγξ', 'φᾰ́ρῠγος' }, { NS = 'φᾰ́ρῠγξ', GS = 'φᾰ́ρῠγος', DS = 'φᾰ́ρῠγῐ', AS = 'φᾰ́ρῠγᾰ', ND = 'φᾰ́ρῠγε', GD = 'φᾰρῠ́γοιν', NP = 'φᾰ́ρῠγες', GP = 'φᾰρῠ́γων', DP = 'φᾰ́ρῠξῐ(ν)', AP = 'φᾰ́ρῠγᾰς' } },
		{ { 'λύγξ', 'λῠγκός' }, { NS = 'λῠ́γξ', GS = 'λῠγκός', DS = 'λῠγκῐ́', AS = 'λῠ́γκᾰ', ND = 'λῠ́γκε', GD = 'λῠγκοῖν', NP = 'λῠ́γκες', GP = 'λῠγκῶν', DP = 'λῠγξῐ́(ν)', AP = 'λῠ́γκᾰς' } },
		'Velar (-ηξ)',
		{ { 'ἀλώπηξ', 'ἀλώπεκος' }, { NS = 'ἀλώπηξ', GS = 'ἀλώπεκος', DS = 'ἀλώπεκῐ', AS = 'ἀλώπεκᾰ', ND = 'ἀλώπεκε', GD = 'ἀλωπέκοιν', NP = 'ἀλώπεκες', GP = 'ἀλωπέκων', DP = 'ἀλώπεξῐ(ν)', AP = 'ἀλώπεκᾰς' } },
		{ { 'πλήξ', 'πληγός' }, { NS = 'πλήξ', GS = 'πληγός', DS = 'πληγῐ́', AS = 'πλῆγᾰ', ND = 'πλῆγε', GD = 'πληγοῖν', NP = 'πλῆγες', GP = 'πληγῶν', DP = 'πληξῐ́(ν)', AP = 'πλῆγᾰς' } },
		'Velar (-οξ)',
		{ { 'ᾰ̓́λοξ', 'ᾰ̓́λοκος' }, { NS = 'ᾰ̓́λοξ', GS = 'ᾰ̓́λοκος', DS = 'ᾰ̓́λοκῐ', AS = 'ᾰ̓́λοκᾰ', ND = 'ᾰ̓́λοκε', GD = 'ᾰ̓λόκοιν', NP = 'ᾰ̓́λοκες', GP = 'ᾰ̓λόκων', DP = 'ᾰ̓́λοξῐ(ν)', AP = 'ᾰ̓́λοκᾰς' } },
		{ { 'φλόξ', 'φλογός' }, { NS = 'φλόξ', GS = 'φλογός', DS = 'φλογῐ́', AS = 'φλόγᾰ', ND = 'φλόγε', GD = 'φλογοῖν', NP = 'φλόγες', GP = 'φλογῶν', DP = 'φλοξῐ́(ν)', AP = 'φλόγᾰς' } },
		'Velar (-ωξ)',
		{ { 'θηροδῐ́ωξ', 'θηροδῐ́ωκος' }, { NS = 'θηροδῐ́ωξ', GS = 'θηροδῐ́ωκος', DS = 'θηροδῐ́ωκῐ', AS = 'θηροδῐ́ωκᾰ', ND = 'θηροδῐ́ωκε', GD = 'θηροδῐώκοιν', NP = 'θηροδῐ́ωκες', GP = 'θηροδῐώκων', DP = 'θηροδῐ́ωξῐ(ν)', AP = 'θηροδῐ́ωκᾰς' } },
		{ { 'βῶξ', 'βωκός' }, { NS = 'βῶξ', GS = 'βωκός', DS = 'βωκῐ́', AS = 'βῶκᾰ', ND = 'βῶκε', GD = 'βωκοῖν', NP = 'βῶκες', GP = 'βωκῶν', DP = 'βωξῐ́(ν)', AP = 'βῶκᾰς' } },
		{ { 'πτώξ', 'πτωκός' }, { NS = 'πτώξ', GS = 'πτωκός', DS = 'πτωκῐ́', AS = 'πτῶκᾰ', ND = 'πτῶκε', GD = 'πτωκοῖν', NP = 'πτῶκες', GP = 'πτωκῶν', DP = 'πτωξῐ́(ν)', AP = 'πτῶκᾰς' } },
		'Dental (-ας)',
		{ { 'ἐρῠσῐ́πελᾰς', 'ἐρῠσῐπέλᾰτος' }, { NS = 'ἐρῠσῐ́πελᾰς', GS = 'ἐρῠσῐπέλᾰτος', DS = 'ἐρῠσῐπέλᾰτῐ', AS = 'ἐρῠσῐ́πελᾰς', ND = 'ἐρῠσῐπέλᾰτε', GD = 'ἐρῠσῐπελᾰ́τοιν', NP = 'ἐρῠσῐπέλᾰτᾰ', GP = 'ἐρῠσῐπελᾰ́των', DP = 'ἐρῠσῐπέλᾰσῐ(ν)', AP = 'ἐρῠσῐπέλᾰτᾰ' } },
		{ { 'ἅλᾱς', 'ἅλᾰτος' }, { NS = 'ἅλᾱς', GS = 'ἅλᾰτος', DS = 'ἅλᾰτῐ', AS = 'ἅλᾱς', ND = 'ἅλᾰτε', GD = 'ἁλᾰ́τοιν', NP = 'ἅλᾰτᾰ', GP = 'ἁλᾰ́των', DP = 'ἅλᾰσῐ(ν)', AP = 'ἅλᾰτᾰ' } },
		{ { 'δεκᾰ́ς', 'δεκᾰ́δος' }, { NS = 'δεκᾰ́ς', GS = 'δεκᾰ́δος', DS = 'δεκᾰ́δῐ', AS = 'δεκᾰ́δᾰ', ND = 'δεκᾰ́δε', GD = 'δεκᾰ́δοιν', NP = 'δεκᾰ́δες', GP = 'δεκᾰ́δων', DP = 'δεκᾰ́σῐ(ν)', AP = 'δεκᾰ́δᾰς' } },
		'Dental (-ας, -αντ-)',
		{ { 'ἐλέφᾱς', 'ἐλέφᾰντος' }, { NS = 'ἐλέφᾱς', GS = 'ἐλέφᾰντος', DS = 'ἐλέφᾰντῐ', AS = 'ἐλέφᾰντᾰ', VS = 'ἐλέφᾰν', ND = 'ἐλέφᾰντε', GD = 'ἐλεφᾰ́ντοιν', NP = 'ἐλέφᾰντες', GP = 'ἐλεφᾰ́ντων', DP = 'ἐλέφᾱσῐ(ν)', AP = 'ἐλέφᾰντᾰς' } },
		{ { 'ᾰ̓νδρῐᾱ́ς', 'ᾰ̓νδρῐᾰ́ντος' }, { NS = 'ᾰ̓νδρῐᾱ́ς', GS = 'ᾰ̓νδρῐᾰ́ντος', DS = 'ᾰ̓νδρῐᾰ́ντῐ', AS = 'ᾰ̓νδρῐᾰ́ντᾰ', VS = 'ᾰ̓νδρῐᾰ́ν', ND = 'ᾰ̓νδρῐᾰ́ντε', GD = 'ᾰ̓νδρῐᾰ́ντοιν', NP = 'ᾰ̓νδρῐᾰ́ντες', GP = 'ᾰ̓νδρῐᾰ́ντων', DP = 'ᾰ̓νδρῐᾶσῐ(ν)', AP = 'ᾰ̓νδρῐᾰ́ντᾰς' } },
		-- Need to verify accentuation of VS: acute or circumflex? Or the form may simply not exist.
		{ { 'ᾰ̓νδρῐᾱ́ς', 'ᾰ̓νδρῐᾶντος' }, { NS = 'ᾰ̓νδρῐᾱ́ς', GS = 'ᾰ̓νδρῐᾶντος', DS = 'ᾰ̓νδρῐᾶντῐ', AS = 'ᾰ̓νδρῐᾶντᾰ', VS = 'ᾰ̓νδρῐᾱ́ν', ND = 'ᾰ̓νδρῐᾶντε', GD = 'ᾰ̓νδρῐᾱ́ντοιν', NP = 'ᾰ̓νδρῐᾶντες', GP = 'ᾰ̓νδρῐᾱ́ντων', DP = 'ᾰ̓νδρῐᾶσῐ(ν)', AP = 'ᾰ̓νδρῐᾶντᾰς' } },
		'Dental (-ις)',
		{ { 'ᾰ̓́γρωστῐς', 'ᾰ̓γρώστῐδος' }, { NS = 'ᾰ̓́γρωστῐς', GS = 'ᾰ̓γρώστῐδος', DS = 'ᾰ̓γρώστῐδῐ', AS = 'ᾰ̓γρώστῐδᾰ', ND = 'ᾰ̓γρώστῐδε', GD = 'ᾰ̓γρωστῐ́δοιν', NP = 'ᾰ̓γρώστῐδες', GP = 'ᾰ̓γρωστῐ́δων', DP = 'ᾰ̓γρώστῐσῐ(ν)', AP = 'ᾰ̓γρώστῐδᾰς' } },
		{ { 'ὄρνῑς', 'ὄρνῑθος' }, { NS = 'ὄρνῑς', GS = 'ὄρνῑθος', DS = 'ὄρνῑθῐ', AS = 'ὄρνῑθᾰ', ND = 'ὄρνῑθε', GD = 'ὀρνῑ́θοιν', NP = 'ὄρνῑθες', GP = 'ὀρνῑ́θων', DP = 'ὄρνῑσῐ(ν)', AP = 'ὄρνῑθᾰς' } },
		{ { 'ᾰ̓σπίς', 'ᾰ̓σπῐ́δος' }, { NS = 'ᾰ̓σπῐ́ς', GS = 'ᾰ̓σπῐ́δος', DS = 'ᾰ̓σπῐ́δῐ', AS = 'ᾰ̓σπῐ́δᾰ', ND = 'ᾰ̓σπῐ́δε', GD = 'ᾰ̓σπῐ́δοιν', NP = 'ᾰ̓σπῐ́δες', GP = 'ᾰ̓σπῐ́δων', DP = 'ᾰ̓σπῐ́σῐ(ν)', AP = 'ᾰ̓σπῐ́δᾰς' } },
		'Dental (-υς)',
		{ { 'κώμῡς', 'κώμῡθος' }, { NS = 'κώμῡς', GS = 'κώμῡθος', DS = 'κώμῡθῐ', AS = 'κώμῡθᾰ', ND = 'κώμῡθε', GD = 'κωμῡ́θοιν', NP = 'κώμῡθες', GP = 'κωμῡ́θων', DP = 'κώμῡσῐ(ν)', AP = 'κώμῡθᾰς' } },
		{ { 'ἐμῠ́ς', 'ἐμῠ́δος' }, { NS = 'ἐμῠ́ς', GS = 'ἐμῠ́δος', DS = 'ἐμῠ́δῐ', AS = 'ἐμῠ́δᾰ', ND = 'ἐμῠ́δε', GD = 'ἐμῠ́δοιν', NP = 'ἐμῠ́δες', GP = 'ἐμῠ́δων', DP = 'ἐμῠ́σῐ(ν)', AP = 'ἐμῠ́δᾰς' } },
		'Dental (-ης)',
		{ { 'ἀθεότης', 'ἀθεότητος' }, { NS = 'ἀθεότης', GS = 'ἀθεότητος', DS = 'ἀθεότητῐ', AS = 'ἀθεότητᾰ', ND = 'ἀθεότητε', GD = 'ἀθεοτήτοιν', NP = 'ἀθεότητες', GP = 'ἀθεοτήτων', DP = 'ἀθεότησῐ(ν)', AP = 'ἀθεότητᾰς' } },
		{ { 'θής', 'θητός' }, { NS = 'θής', GS = 'θητός', DS = 'θητῐ́', AS = 'θῆτᾰ', ND = 'θῆτε', GD = 'θητοῖν', NP = 'θῆτες', GP = 'θητῶν', DP = 'θησῐ́(ν)', AP = 'θῆτᾰς' } },
		'Dental (-ως)',
		{ { 'ῥῑνόκερως', 'ῥῑνοκέρωτος' }, { NS = 'ῥῑνόκερως', GS = 'ῥῑνοκέρωτος', DS = 'ῥῑνοκέρωτῐ', AS = 'ῥῑνοκέρωτᾰ', ND = 'ῥῑνοκέρωτε', GD = 'ῥῑνοκερώτοιν', NP = 'ῥῑνοκέρωτες', GP = 'ῥῑνοκερώτων', DP = 'ῥῑνοκέρωσῐ(ν)', AP = 'ῥῑνοκέρωτᾰς' } },
		{ { 'ἔρως', 'ἔρωτος' }, { NS = 'ἔρως', GS = 'ἔρωτος', DS = 'ἔρωτῐ', AS = 'ἔρωτᾰ', ND = 'ἔρωτε', GD = 'ἐρώτοιν', NP = 'ἔρωτες', GP = 'ἐρώτων', DP = 'ἔρωσῐ(ν)', AP = 'ἔρωτᾰς' } },
		{ { 'φώς', 'φωτός' }, { NS = 'φώς', GS = 'φωτός', DS = 'φωτῐ́', AS = 'φῶτᾰ', ND = 'φῶτε', GD = 'φωτοῖν', NP = 'φῶτες', GP = 'φωτῶν', DP = 'φωσῐ́(ν)', AP = 'φῶτᾰς' } },
		'Dental (irregular)',
		{ { 'κλείς', 'κλειδός' }, { NS = 'κλείς', GS = 'κλειδός', DS = 'κλειδῐ́', AS = 'κλεῖδᾰ', ND = 'κλεῖδε', GD = 'κλειδοῖν', NP = 'κλεῖδες', GP = 'κλειδῶν', DP = 'κλεισῐ́(ν)', AP = 'κλεῖδᾰς' } },
		{ { 'πούς', 'ποδός' }, { NS = 'πούς', GS = 'ποδός', DS = 'ποδῐ́', AS = 'πόδᾰ', ND = 'πόδε', GD = 'ποδοῖν', NP = 'πόδες', GP = 'ποδῶν', DP = 'ποσῐ́(ν)', AP = 'πόδᾰς' } },
		{ { 'ὀδούς', 'ὀδόντος' }, { NS = 'ὀδούς', GS = 'ὀδόντος', DS = 'ὀδόντῐ', AS = 'ὀδόντᾰ', VS = 'ὀδόν', ND = 'ὀδόντε', GD = 'ὀδόντοιν', NP = 'ὀδόντες', GP = 'ὀδόντων', DP = 'ὀδοῦσῐ(ν)', AP = 'ὀδόντᾰς' } },
		'Labial (-αψ)',
		{ { 'λαῖλᾰψ', 'λαίλᾰπος' }, { NS = 'λαῖλᾰψ', GS = 'λαίλᾰπος', DS = 'λαίλᾰπῐ', AS = 'λαίλᾰπᾰ', ND = 'λαίλᾰπε', GD = 'λαιλᾰ́ποιν', NP = 'λαίλᾰπες', GP = 'λαιλᾰ́πων', DP = 'λαίλᾰψῐ(ν)', AP = 'λαίλᾰπᾰς' } },
		{ { 'θέρᾰψ', 'θέρᾰπος' }, { NS = 'θέρᾰψ', GS = 'θέρᾰπος', DS = 'θέρᾰπῐ', AS = 'θέρᾰπᾰ', ND = 'θέρᾰπε', GD = 'θερᾰ́ποιν', NP = 'θέρᾰπες', GP = 'θερᾰ́πων', DP = 'θέρᾰψῐ(ν)', AP = 'θέρᾰπᾰς' } },
		{ { 'φάψ', 'φᾰβός' }, { NS = 'φᾰ́ψ', GS = 'φᾰβός', DS = 'φᾰβῐ́', AS = 'φᾰ́βᾰ', ND = 'φᾰ́βε', GD = 'φᾰβοῖν', NP = 'φᾰ́βες', GP = 'φᾰβῶν', DP = 'φᾰψῐ́(ν)', AP = 'φᾰ́βᾰς' } },
		'Labial (-ιψ)',
		{ { 'κᾰτῆλῐψ', 'κᾰτήλῐφος' }, { NS = 'κᾰτῆλῐψ', GS = 'κᾰτήλῐφος', DS = 'κᾰτήλῐφῐ', AS = 'κᾰτήλῐφᾰ', ND = 'κᾰτήλῐφε', GD = 'κᾰτηλῐ́φοιν', NP = 'κᾰτήλῐφες', GP = 'κᾰτηλῐ́φων', DP = 'κᾰτήλῐψῐ(ν)', AP = 'κᾰτήλῐφᾰς' } },
		{ { 'χέρνιψ', 'χέρνιβος' }, { NS = 'χέρνιψ', GS = 'χέρνιβος', DS = 'χέρνιβῐ', AS = 'χέρνιβᾰ', ND = 'χέρνιβε', GD = 'χερνίβοιν', NP = 'χέρνιβες', GP = 'χερνίβων', DP = 'χέρνιψῐ(ν)', AP = 'χέρνιβᾰς' } },
		{ { 'λίψ', 'λῐβός' }, { NS = 'λῐ́ψ', GS = 'λῐβός', DS = 'λῐβῐ́', AS = 'λῐ́βᾰ', ND = 'λῐ́βε', GD = 'λῐβοῖν', NP = 'λῐ́βες', GP = 'λῐβῶν', DP = 'λῐψῐ́(ν)', AP = 'λῐ́βᾰς' } },
		{ { 'σκνῑ́ψ', 'σκνῑπός' }, { NS = 'σκνῑ́ψ', GS = 'σκνῑπός', DS = 'σκνῑπῐ́', AS = 'σκνῖπᾰ', ND = 'σκνῖπε', GD = 'σκνῑποῖν', NP = 'σκνῖπες', GP = 'σκνῑπῶν', DP = 'σκνῑψῐ́(ν)', AP = 'σκνῖπᾰς' } },
		'Labial (-υψ)',
		{ { 'χᾰ́λῠψ', 'χᾰ́λῠβος' }, { NS = 'χᾰ́λῠψ', GS = 'χᾰ́λῠβος', DS = 'χᾰ́λῠβῐ', AS = 'χᾰ́λῠβᾰ', ND = 'χᾰ́λῠβε', GD = 'χᾰλῠ́βοιν', NP = 'χᾰ́λῠβες', GP = 'χᾰλῠ́βων', DP = 'χᾰ́λῠψῐ(ν)', AP = 'χᾰ́λῠβᾰς' } },
		{ { 'γῡ́ψ', 'γῡπός' }, { NS = 'γῡ́ψ', GS = 'γῡπός', DS = 'γῡπῐ́', AS = 'γῦπᾰ', ND = 'γῦπε', GD = 'γῡποῖν', NP = 'γῦπες', GP = 'γῡπῶν', DP = 'γῡψῐ́(ν)', AP = 'γῦπᾰς' } },
		'Labial (-εψ)',
		{ { 'κᾰτῶβλεψ', 'κᾰτώβλεπος' }, { NS = 'κᾰτῶβλεψ', GS = 'κᾰτώβλεπος', DS = 'κᾰτώβλεπῐ', AS = 'κᾰτώβλεπᾰ', ND = 'κᾰτώβλεπε', GD = 'κᾰτωβλέποιν', NP = 'κᾰτώβλεπες', GP = 'κᾰτωβλέπων', DP = 'κᾰτώβλεψῐ(ν)', AP = 'κᾰτώβλεπᾰς' } },
		{ { 'μελᾰνόφλεψ', 'μελᾰνόφλεβος' }, { NS = 'μελᾰνόφλεψ', GS = 'μελᾰνόφλεβος', DS = 'μελᾰνόφλεβῐ', AS = 'μελᾰνόφλεβᾰ', ND = 'μελᾰνόφλεβε', GD = 'μελᾰνοφλέβοιν', NP = 'μελᾰνόφλεβες', GP = 'μελᾰνοφλέβων', DP = 'μελᾰνόφλεψῐ(ν)', AP = 'μελᾰνόφλεβᾰς' } },
		{ { 'φλέψ', 'φλεβός' }, { NS = 'φλέψ', GS = 'φλεβός', DS = 'φλεβῐ́', AS = 'φλέβᾰ', ND = 'φλέβε', GD = 'φλεβοῖν', NP = 'φλέβες', GP = 'φλεβῶν', DP = 'φλεψῐ́(ν)', AP = 'φλέβᾰς' } },
		'Labial (-ηψ)',
		{ { 'κώληψ', 'κώληπος' }, { NS = 'κώληψ', GS = 'κώληπος', DS = 'κώληπῐ', AS = 'κώληπᾰ', ND = 'κώληπε', GD = 'κωλήποιν', NP = 'κώληπες', GP = 'κωλήπων', DP = 'κώληψῐ(ν)', AP = 'κώληπᾰς' } },
		{ { 'σήψ', 'σηπός' }, { NS = 'σήψ', GS = 'σηπός', DS = 'σηπῐ́', AS = 'σῆπᾰ', ND = 'σῆπε', GD = 'σηποῖν', NP = 'σῆπες', GP = 'σηπῶν', DP = 'σηψῐ́(ν)', AP = 'σῆπᾰς' } },
		'Labial (-οψ)',
		{ { 'κᾰλαῦροψ', 'κᾰλαύροπος' }, { NS = 'κᾰλαῦροψ', GS = 'κᾰλαύροπος', DS = 'κᾰλαύροπῐ', AS = 'κᾰλαύροπᾰ', ND = 'κᾰλαύροπε', GD = 'κᾰλαυρόποιν', NP = 'κᾰλαύροπες', GP = 'κᾰλαυρόπων', DP = 'κᾰλαύροψῐ(ν)', AP = 'κᾰλαύροπᾰς' } },
		{ { 'Αἰθῐ́οψ', 'Αἰθῐ́οπος' }, { NS = 'Αἰθῐ́οψ', GS = 'Αἰθῐ́οπος', DS = 'Αἰθῐ́οπῐ', AS = 'Αἰθῐ́οπᾰ', ND = 'Αἰθῐ́οπε', GD = 'Αἰθῐόποιν', NP = 'Αἰθῐ́οπες', GP = 'Αἰθῐόπων', DP = 'Αἰθῐ́οψῐ(ν)', AP = 'Αἰθῐ́οπᾰς' } },
		{ { 'ὄψ', 'ὀπός' }, { NS = 'ὄψ', GS = 'ὀπός', DS = 'ὀπῐ́', AS = 'ὄπᾰ', ND = 'ὄπε', GD = 'ὀποῖν', NP = 'ὄπες', GP = 'ὀπῶν', DP = 'ὀψῐ́(ν)', AP = 'ὄπᾰς' } },
		'Labial (-ωψ)',
		{ { 'ὕδρωψ', 'ὕδρωπος' }, { NS = 'ὕδρωψ', GS = 'ὕδρωπος', DS = 'ὕδρωπῐ', AS = 'ὕδρωπᾰ', ND = 'ὕδρωπε', GD = 'ὑδρώποιν', NP = 'ὕδρωπες', GP = 'ὑδρώπων', DP = 'ὕδρωψῐ(ν)', AP = 'ὕδρωπᾰς' } },
		{ { 'ὤψ', 'ὠπός' }, { NS = 'ὤψ', GS = 'ὠπός', DS = 'ὠπῐ́', AS = 'ὦπᾰ', ND = 'ὦπε', GD = 'ὠποῖν', NP = 'ὦπες', GP = 'ὠπῶν', DP = 'ὠψῐ́(ν)', AP = 'ὦπᾰς' } },
		'Rhotic (-αρ)',
		{ { 'μᾰ́κᾱρ', 'μᾰ́κᾰρος' }, { NS = 'μᾰ́κᾱρ', GS = 'μᾰ́κᾰρος', DS = 'μᾰ́κᾰρῐ', AS = 'μᾰ́κᾰρᾰ', VS = 'μᾰ́κᾰρ', ND = 'μᾰ́κᾰρε', GD = 'μᾰκᾰ́ροιν', NP = 'μᾰ́κᾰρες', GP = 'μᾰκᾰ́ρων', DP = 'μᾰ́κᾰρσῐ(ν)', AP = 'μᾰ́κᾰρᾰς' } },
		{ { 'ψᾱ́ρ', 'ψᾱρός' }, { NS = 'ψᾱ́ρ', GS = 'ψᾱρός', DS = 'ψᾱρῐ́', AS = 'ψᾶρᾰ', ND = 'ψᾶρε', GD = 'ψᾱροῖν', NP = 'ψᾶρες', GP = 'ψᾱρῶν', DP = 'ψᾱρσῐ́(ν)', AP = 'ψᾶρᾰς' } },
		'Rhotic (-ηρ)',
		{ { 'πάνθηρ', 'πάνθηρος' }, { NS = 'πάνθηρ', GS = 'πάνθηρος', DS = 'πάνθηρῐ', AS = 'πάνθηρᾰ', ND = 'πάνθηρε', GD = 'πανθήροιν', NP = 'πάνθηρες', GP = 'πανθήρων', DP = 'πάνθηρσῐ(ν)', AP = 'πάνθηρᾰς' } },
		{ { 'Δημήτηρ', 'Δημήτερος' }, { NS = 'Δημήτηρ', GS = 'Δημήτερος', DS = 'Δημήτερῐ', AS = 'Δημήτερᾰ', VS = 'Δημῆτερ', ND = 'Δημήτερε', GD = 'Δημητέροιν', NP = 'Δημήτερες', GP = 'Δημητέρων', DP = 'Δημήτερσῐ(ν)', AP = 'Δημήτερᾰς' } },
		{ { 'δρηστήρ', 'δρηστῆρος' }, { NS = 'δρηστήρ', GS = 'δρηστῆρος', DS = 'δρηστῆρῐ', AS = 'δρηστῆρᾰ', ND = 'δρηστῆρε', GD = 'δρηστήροιν', NP = 'δρηστῆρες', GP = 'δρηστήρων', DP = 'δρηστῆρσῐ(ν)', AP = 'δρηστῆρᾰς' } },
		{ { 'Κῆρ', 'Κηρός' }, { NS = 'Κῆρ', GS = 'Κηρός', DS = 'Κηρῐ́', AS = 'Κῆρᾰ', ND = 'Κῆρε', GD = 'Κηροῖν', NP = 'Κῆρες', GP = 'Κηρῶν', DP = 'Κηρσῐ́(ν)', AP = 'Κῆρᾰς' } },
		{ { 'ἀστήρ', 'ἀστέρος' }, { NS = 'ἀστήρ', GS = 'ἀστέρος', DS = 'ἀστέρῐ', AS = 'ἀστέρᾰ', ND = 'ἀστέρε', GD = 'ἀστέροιν', NP = 'ἀστέρες', GP = 'ἀστέρων', DP = 'ἀστέρσῐ(ν)', AP = 'ἀστέρᾰς' } },
		{ { 'φήρ', 'φηρός' }, { NS = 'φήρ', GS = 'φηρός', DS = 'φηρῐ́', AS = 'φῆρᾰ', ND = 'φῆρε', GD = 'φηροῖν', NP = 'φῆρες', GP = 'φηρῶν', DP = 'φηρσῐ́(ν)', AP = 'φῆρᾰς' } },
		'Rhotic (-ωρ)',
		{ { 'ῥήτωρ', 'ῥήτορος' }, { NS = 'ῥήτωρ', GS = 'ῥήτορος', DS = 'ῥήτορῐ', AS = 'ῥήτορᾰ', VS = 'ῥῆτορ', ND = 'ῥήτορε', GD = 'ῥητόροιν', NP = 'ῥήτορες', GP = 'ῥητόρων', DP = 'ῥήτορσῐ(ν)', AP = 'ῥήτορᾰς' } },
		{ { 'ῑ̓χώρ', 'ῑ̓χῶρος' }, { NS = 'ῑ̓χώρ', GS = 'ῑ̓χῶρος', DS = 'ῑ̓χῶρῐ', AS = 'ῑ̓χῶρᾰ', ND = 'ῑ̓χῶρε', GD = 'ῑ̓χώροιν', NP = 'ῑ̓χῶρες', GP = 'ῑ̓χώρων', DP = 'ῑ̓χῶρσῐ(ν)', AP = 'ῑ̓χῶρᾰς' } },
		{ { 'φώρ', 'φωρός' }, { NS = 'φώρ', GS = 'φωρός', DS = 'φωρῐ́', AS = 'φῶρᾰ', ND = 'φῶρε', GD = 'φωροῖν', NP = 'φῶρες', GP = 'φωρῶν', DP = 'φωρσῐ́(ν)', AP = 'φῶρᾰς' } },
		'Rhotic (irregular)',
		{ { 'μᾰ́ρτῠς', 'μᾰ́ρτῠρος' }, { NS = 'μᾰ́ρτῠς', GS = 'μᾰ́ρτῠρος', DS = 'μᾰ́ρτῠρῐ', AS = 'μᾰ́ρτῠρᾰ', VS = 'μᾰ́ρτῠρ', ND = 'μᾰ́ρτῠρε', GD = 'μᾰρτῠ́ροιν', NP = 'μᾰ́ρτῠρες', GP = 'μᾰρτῠ́ρων', DP = 'μᾰ́ρτῠρσῐ(ν)', AP = 'μᾰ́ρτῠρᾰς' } },
		'Nasal (-ις)',
		{ { 'ἀκτῑ́ς', 'ἀκτῖνος' }, { NS = 'ἀκτῑ́ς', GS = 'ἀκτῖνος', DS = 'ἀκτῖνῐ', AS = 'ἀκτῖνᾰ', ND = 'ἀκτῖνε', GD = 'ἀκτῑ́νοιν', NP = 'ἀκτῖνες', GP = 'ἀκτῑ́νων', DP = 'ἀκτῖσῐ(ν)', AP = 'ἀκτῖνᾰς' } },
		{ { 'ῥῑ́ς', 'ῥῑνός' }, { NS = 'ῥῑ́ς', GS = 'ῥῑνός', DS = 'ῥῑνῐ́', AS = 'ῥῖνᾰ', ND = 'ῥῖνε', GD = 'ῥῑνοῖν', NP = 'ῥῖνες', GP = 'ῥῑνῶν', DP = 'ῥῑσῐ́(ν)', AP = 'ῥῖνᾰς' } },
		'Nasal (-ις)',
		{ { 'ἀρχιποίμην', 'ἀρχιποίμενος' }, { NS = 'ἀρχιποίμην', GS = 'ἀρχιποίμενος', DS = 'ἀρχιποίμενῐ', AS = 'ἀρχιποίμενᾰ', VS = 'ἀρχιποῖμεν', ND = 'ἀρχιποίμενε', GD = 'ἀρχιποιμένοιν', NP = 'ἀρχιποίμενες', GP = 'ἀρχιποιμένων', DP = 'ἀρχιποίμεσῐ(ν)', AP = 'ἀρχιποίμενᾰς' } },
		{ { 'Ἕλλην', 'Ἕλληνος' }, { NS = 'Ἕλλην', GS = 'Ἕλληνος', DS = 'Ἕλληνῐ', AS = 'Ἕλληνᾰ', ND = 'Ἕλληνε', GD = 'Ἑλλήνοιν', NP = 'Ἕλληνες', GP = 'Ἑλλήνων', DP = 'Ἕλλησῐ(ν)', AP = 'Ἕλληνᾰς' } },
		{ { 'αὐχήν', 'αὐχένος' }, { NS = 'αὐχήν', GS = 'αὐχένος', DS = 'αὐχένῐ', AS = 'αὐχένᾰ', ND = 'αὐχένε', GD = 'αὐχένοιν', NP = 'αὐχένες', GP = 'αὐχένων', DP = 'αὐχέσῐ(ν)', AP = 'αὐχένᾰς' } },
		{ { 'Τροιζήν', 'Τροιζῆνος' }, { NS = 'Τροιζήν', GS = 'Τροιζῆνος', DS = 'Τροιζῆνῐ', AS = 'Τροιζῆνᾰ', ND = 'Τροιζῆνε', GD = 'Τροιζήνοιν', NP = 'Τροιζῆνες', GP = 'Τροιζήνων', DP = 'Τροιζῆσῐ(ν)', AP = 'Τροιζῆνᾰς' } },
		{ { 'φρήν', 'φρενός' }, { NS = 'φρήν', GS = 'φρενός', DS = 'φρενῐ́', AS = 'φρένᾰ', ND = 'φρένε', GD = 'φρενοῖν', NP = 'φρένες', GP = 'φρενῶν', DP = 'φρεσῐ́(ν)', AP = 'φρένᾰς' } },
		'Nasal (-ων)',
		{ { 'δαίμων', 'δαίμονος' }, { NS = 'δαίμων', GS = 'δαίμονος', DS = 'δαίμονῐ', AS = 'δαίμονᾰ', VS = 'δαῖμον', ND = 'δαίμονε', GD = 'δαιμόνοιν', NP = 'δαίμονες', GP = 'δαιμόνων', DP = 'δαίμοσῐ(ν)', AP = 'δαίμονᾰς' } },
		{ { 'κώδων', 'κώδωνος' }, { NS = 'κώδων', GS = 'κώδωνος', DS = 'κώδωνῐ', AS = 'κώδωνᾰ', ND = 'κώδωνε', GD = 'κωδώνοιν', NP = 'κώδωνες', GP = 'κωδώνων', DP = 'κώδωσῐ(ν)', AP = 'κώδωνᾰς' } },
		{ { 'ᾰ̓γών', 'ᾰ̓γῶνος' }, { NS = 'ᾰ̓γών', GS = 'ᾰ̓γῶνος', DS = 'ᾰ̓γῶνῐ', AS = 'ᾰ̓γῶνᾰ', ND = 'ᾰ̓γῶνε', GD = 'ᾰ̓γώνοιν', NP = 'ᾰ̓γῶνες', GP = 'ᾰ̓γώνων', DP = 'ᾰ̓γῶσῐ(ν)', AP = 'ᾰ̓γῶνᾰς' } },
		{ { 'κλών', 'κλωνός' }, { NS = 'κλών', GS = 'κλωνός', DS = 'κλωνῐ́', AS = 'κλῶνᾰ', ND = 'κλῶνε', GD = 'κλωνοῖν', NP = 'κλῶνες', GP = 'κλωνῶν', DP = 'κλωσῐ́(ν)', AP = 'κλῶνᾰς' } },
		{ { 'χθών', 'χθονός' }, { NS = 'χθών', GS = 'χθονός', DS = 'χθονῐ́', AS = 'χθόνᾰ', ND = 'χθόνε', GD = 'χθονοῖν', NP = 'χθόνες', GP = 'χθονῶν', DP = 'χθοσῐ́(ν)', AP = 'χθόνᾰς' } },
		'Nasal (irregular)',
		{ { 'μείς', 'μηνός' }, { NS = 'μείς', GS = 'μηνός', DS = 'μηνῐ́', AS = 'μῆνᾰ', ND = 'μῆνε', GD = 'μηνοῖν', NP = 'μῆνες', GP = 'μηνῶν', DP = 'μησῐ́(ν)', AP = 'μῆνᾰς' } },
		{ { 'κτείς', 'κτενός' }, { NS = 'κτείς', GS = 'κτενός', DS = 'κτενῐ́', AS = 'κτένᾰ', ND = 'κτένε', GD = 'κτενοῖν', NP = 'κτένες', GP = 'κτενῶν', DP = 'κτεσῐ́(ν)', AP = 'κτένᾰς' } },
		'Neuter (rhotic)',
		{ { 'ἦμᾰρ', 'ἤμᾰτος' }, { NS = 'ἦμᾰρ', GS = 'ἤμᾰτος', DS = 'ἤμᾰτῐ', AS = 'ἦμᾰρ', ND = 'ἤμᾰτε', GD = 'ἠμᾰ́τοιν', NP = 'ἤμᾰτᾰ', GP = 'ἠμᾰ́των', DP = 'ἤμᾰσῐ(ν)', AP = 'ἤμᾰτᾰ' } },
		{ { 'ἔᾰρ', 'ἔᾰρος', form = 'N' }, { NS = 'ἔᾰρ', GS = 'ἔᾰρος', DS = 'ἔᾰρῐ', AS = 'ἔᾰρ', ND = 'ἔᾰρε', GD = 'ἐᾰ́ροιν', NP = 'ἔᾰρᾰ', GP = 'ἐᾰ́ρων', DP = 'ἔᾰρσῐ(ν)', AP = 'ἔᾰρᾰ' } },
		{ { 'στέᾱρ', 'στέᾱτος' }, { NS = 'στέᾱρ', GS = 'στέᾱτος', DS = 'στέᾱτῐ', AS = 'στέᾱρ', ND = 'στέᾱτε', GD = 'στεᾱ́τοιν', NP = 'στέᾱτᾰ', GP = 'στεᾱ́των', DP = 'στέᾱσῐ(ν)', AP = 'στέᾱτᾰ' } },
		{ { 'στῆρ', 'στητός', form = 'N' }, { NS = 'στῆρ', GS = 'στητός', DS = 'στητῐ́', AS = 'στῆρ', ND = 'στῆτε', GD = 'στητοῖν', NP = 'στῆτᾰ', GP = 'στητῶν', DP = 'στησῐ́(ν)', AP = 'στῆτᾰ' } },
		{ { 'ἦρ', 'ἠρός', form = 'N' }, { NS = 'ἦρ', GS = 'ἠρός', DS = 'ἠρῐ́', AS = 'ἦρ', ND = 'ἦρε', GD = 'ἠροῖν', NP = 'ἦρᾰ', GP = 'ἠρῶν', DP = 'ἠρσῐ́(ν)', AP = 'ἦρᾰ' } },
		{ { 'ῠ̔́δωρ', 'ῠ̔́δᾰτος' }, { NS = 'ῠ̔́δωρ', GS = 'ῠ̔́δᾰτος', DS = 'ῠ̔́δᾰτῐ', AS = 'ῠ̔́δωρ', ND = 'ῠ̔́δᾰτε', GD = 'ῠ̔δᾰ́τοιν', NP = 'ῠ̔́δᾰτᾰ', GP = 'ῠ̔δᾰ́των', DP = 'ῠ̔́δᾰσῐ(ν)', AP = 'ῠ̔́δᾰτᾰ' } },
		{ { 'σκῶρ', 'σκᾰτός' }, { NS = 'σκῶρ', GS = 'σκᾰτός', DS = 'σκᾰτῐ́', AS = 'σκῶρ', ND = 'σκᾰ́τε', GD = 'σκᾰτοῖν', NP = 'σκᾰ́τᾰ', GP = 'σκᾰτῶν', DP = 'σκᾰσῐ́(ν)', AP = 'σκᾰ́τᾰ' } },
		'Neuter (nasal)',
		{ { 'σύστημᾰ', 'συστήμᾰτος' }, { NS = 'σύστημᾰ', GS = 'συστήμᾰτος', DS = 'συστήμᾰτῐ', AS = 'σύστημᾰ', ND = 'συστήμᾰτε', GD = 'συστημᾰ́τοιν', NP = 'συστήμᾰτᾰ', GP = 'συστημᾰ́των', DP = 'συστήμᾰσῐ(ν)', AP = 'συστήμᾰτᾰ' } },
		{ { 'σῶμᾰ', 'σώμᾰτος' }, { NS = 'σῶμᾰ', GS = 'σώμᾰτος', DS = 'σώμᾰτῐ', AS = 'σῶμᾰ', ND = 'σώμᾰτε', GD = 'σωμᾰ́τοιν', NP = 'σώμᾰτᾰ', GP = 'σωμᾰ́των', DP = 'σώμᾰσῐ(ν)', AP = 'σώμᾰτᾰ' } },
		{ { 'θέμᾰ', 'θέμᾰτος' }, { NS = 'θέμᾰ', GS = 'θέμᾰτος', DS = 'θέμᾰτῐ', AS = 'θέμᾰ', ND = 'θέμᾰτε', GD = 'θεμᾰ́τοιν', NP = 'θέμᾰτᾰ', GP = 'θεμᾰ́των', DP = 'θέμᾰσῐ(ν)', AP = 'θέμᾰτᾰ' } },
		'Neuter (sigmatic)',
		{ { 'αἶσχος', 'αἴσχους' }, { NS = 'αἶσχος', GS = 'αἴσχους', DS = 'αἴσχει', AS = 'αἶσχος', ND = 'αἴσχει', GD = 'αἰσχοῖν', NP = 'αἴσχη', GP = 'αἰσχῶν', DP = 'αἴσχεσῐ(ν)' } },
		{ { 'ᾰ̓́νθος', 'ᾰ̓́νθους' }, { NS = 'ᾰ̓́νθος', GS = 'ᾰ̓́νθους', DS = 'ᾰ̓́νθει', AS = 'ᾰ̓́νθος', ND = 'ᾰ̓́νθει', GD = 'ᾰ̓νθοῖν', NP = 'ᾰ̓́νθη', GP = 'ᾰ̓νθῶν', DP = 'ᾰ̓́νθεσῐ(ν)', AP = 'ᾰ̓́νθη' } },
	}
	iterate(examples)
end

function tests:test_grc_decl_third_vowel()
	local examples = {
		'Feminine contracted',
		{ { 'ἠχώ', 'ἠχοῦς' }, { NS = 'ἠχώ', GS = 'ἠχοῦς', DS = 'ἠχοῖ', AS = 'ἠχώ', VS = 'ἠχοῖ' } },
		'Iota',
		{ { 'σῠ́νθεσῐς', 'σῠνθέσεως' }, { NS = 'σῠ́νθεσῐς', GS = 'σῠνθέσεως', DS = 'σῠνθέσει', AS = 'σῠ́νθεσῐν', VS = 'σῠ́νθεσῐ', ND = 'σῠνθέσει', GD = 'σῠνθεσέοιν', NP = 'σῠνθέσεις', GP = 'σῠνθέσεων', DP = 'σῠνθέσεσῐ(ν)', AP = 'σῠνθέσεις' } },
		{ { 'θλῖψῐς', 'θλῑ́ψεως' }, { NS = 'θλῖψῐς', GS = 'θλῑ́ψεως', DS = 'θλῑ́ψει', AS = 'θλῖψῐν', VS = 'θλῖψῐ', ND = 'θλῑ́ψει', GD = 'θλῑψέοιν', NP = 'θλῑ́ψεις', GP = 'θλῑ́ψεων', DP = 'θλῑ́ψεσῐ(ν)', AP = 'θλῑ́ψεις' } },
		{ { 'πόλῐς', 'πόλεως' }, { NS = 'πόλῐς', GS = 'πόλεως', DS = 'πόλει', AS = 'πόλῐν', VS = 'πόλῐ', ND = 'πόλει', GD = 'πολέοιν', NP = 'πόλεις', GP = 'πόλεων', DP = 'πόλεσῐ(ν)', AP = 'πόλεις' } },
		'Upsilon',
		{ { 'ἱππεύς', 'ἱππέως' }, { NS = 'ἱππεύς', GS = 'ἱππέως', DS = 'ἱππεῖ', AS = 'ἱππέᾱ', VS = 'ἱππεῦ', ND = 'ἱππῆ', GD = 'ἱππέοιν', NP = 'ἱππῆς/ἱππεῖς', GP = 'ἱππέων', DP = 'ἱππεῦσῐ(ν)', AP = 'ἱππέᾱς' } },
		{ { 'ἁλιεύς', 'ἁλιέως' }, { NS = 'ἁλιεύς', GS = 'ἁλιέως/ἁλιῶς', DS = 'ἁλιεῖ', AS = 'ἁλιέᾱ/ἁλιᾶ', VS = 'ἁλιεῦ', ND = 'ἁλιῆ', GD = 'ἁλιέοιν', NP = 'ἁλιῆς/ἁλιεῖς', GP = 'ἁλιέων/ἁλιῶν', DP = 'ἁλιεῦσῐ(ν)', AP = 'ἁλιέᾱς/ἁλιᾶς' } },
		{ { 'ᾰ̓́στῠ', 'ᾰ̓́στεως' }, { NS = 'ᾰ̓́στῠ', GS = 'ᾰ̓́στεως', DS = 'ᾰ̓́στει', ND = 'ᾰ̓́στει', GD = 'ᾰ̓στέοιν', NP = 'ᾰ̓́στη/ᾰ̓́στεᾰ', GP = 'ᾰ̓́στεων', DP = 'ᾰ̓́στεσῐ(ν)' } },
		{ { 'μῦς', 'μῠός' }, { NS = 'μῦς', GS = 'μῠός', DS = 'μῠῐ̈́', AS = 'μῦν', VS = 'μῦ', ND = 'μῠ́ε', GD = 'μῠοῖν', NP = 'μῠ́ες', GP = 'μῠῶν', DP = 'μῡσῐ́(ν)/μῠσῐ́(ν)', AP = 'μῦς/μῠ́ᾰς' } },
		{ { 'βότρῠς', 'βότρῠος' }, { NS = 'βότρῠς', GS = 'βότρῠος', DS = 'βότρῠῐ̈/βότρυι', AS = 'βότρῠν', VS = 'βότρῠ', ND = 'βότρῠε', GD = 'βοτρῠ́οιν', NP = 'βότρῠες', GP = 'βοτρῠ́ων', DP = 'βότρῠσῐ(ν)', AP = 'βότρῡς/βότρῠᾰς' } },
		{ { 'ἔγχελῠς', 'ἐγχέλῠος' }, { NS = 'ἔγχελῠς', GS = 'ἐγχέλῠος', DS = 'ἐγχέλῠῐ̈/ἐγχέλυι', AS = 'ἔγχελῠν', VS = 'ἔγχελῠ', ND = 'ἐγχέλῠε', GD = 'ἐγχελῠ́οιν', NP = 'ἐγχέλῠες', GP = 'ἐγχελῠ́ων', DP = 'ἐγχέλῠσῐ(ν)', AP = 'ἐγχέλῡς/ἐγχέλῠᾰς' } },
		{ { 'ἥρως', 'ἥρωος' }, { NS = 'ἥρως', GS = 'ἥρωος', DS = 'ἥρῳ/ἥρωῐ̈', AS = 'ἥρω/ἥρωᾰ', ND = 'ἥρωε', GD = 'ἡρώοιν', NP = 'ἥρωες', GP = 'ἡρώων', DP = 'ἥρωσῐ(ν)', AP = 'ἥρωᾰς' } },
		{ { 'Τρώς', 'Τρωός' }, { NS = 'Τρώς', GS = 'Τρωός', DS = 'Τρῷ/Τρῶῐ̈', AS = 'Τρῶ/Τρῶᾰ', ND = 'Τρῶε', GD = 'Τρώοιν', NP = 'Τρῶες', GP = 'Τρώων', DP = 'Τρωσῐ́(ν)', AP = 'Τρῶᾰς' } },
		{ { 'γόνῠ', 'γόνᾰτος' }, { NS = 'γόνῠ', GS = 'γόνᾰτος', DS = 'γόνᾰτῐ', ND = 'γόνᾰτε', GD = 'γονᾰ́τοιν', NP = 'γόνᾰτᾰ', GP = 'γονᾰ́των', DP = 'γόνᾰσῐ(ν)' } },
		{ { 'πῆχῠς', 'πήχεως' }, { NS = 'πῆχῠς', GS = 'πήχεως', DS = 'πήχει', AS = 'πῆχῠν', VS = 'πῆχῠ', ND = 'πήχει', GD = 'πηχέοιν', NP = 'πήχεις', GP = 'πήχεων', DP = 'πήχεσῐ(ν)', AP = 'πήχεις' } },
		'Sigmatic',
		{ { 'Περικλῆς', 'Περικλέους' }, { NS = 'Περικλῆς', GS = 'Περικλέους', DS = 'Περικλεῖ', AS = 'Περικλέᾱ', VS = 'Περίκλεις' } },
		{ { 'φᾰ́ος', 'φᾰ́εος', dial = 'ion' }, { NS = 'φᾰ́ος', GS = 'φᾰ́εος/φᾰ́ευς', DS = 'φᾰ́ει/φᾰ́εῐ̈', ND = 'φᾰ́ει/φᾰ́εε', GD = 'φᾰέοιν', NP = 'φᾰ́εᾰ', GP = 'φᾰέων', DP = 'φᾰ́εσῐ(ν)' } },
		{ { 'φᾰ́ος', 'φᾰ́ους' }, { NS = 'φᾰ́ος', GS = 'φᾰ́ους', DS = 'φᾰ́ει', ND = 'φᾰ́ει', GD = 'φᾰοῖν', NP = 'φᾰ́η', GP = 'φᾰῶν', DP = 'φᾰ́εσῐ(ν)' } },
		'Laryngeal',
		{ { 'κέρᾰς', 'κέρως' }, { NS = 'κέρᾰς', GS = 'κέρως', DS = 'κέραι/κέρᾳ', ND = 'κέρᾱ', GD = 'κερῷν', NP = 'κέρᾱ', GP = 'κερῶν', DP = 'κέρᾰσῐ(ν)' } },
		{ { 'κέρᾰς', 'κέρᾱτος' }, { NS = 'κέρᾰς', GS = 'κέρᾱτος', DS = 'κέρᾱτῐ', ND = 'κέρᾱτε', GD = 'κερᾱ́τοιν', NP = 'κέρᾱτᾰ', GP = 'κερᾱ́των', DP = 'κέρᾱσῐ(ν)' } },
		{ { 'κρέᾰς', 'κρέως' }, { NS = 'κρέᾰς', GS = 'κρέως', DS = 'κρέαι/κρέᾳ', ND = 'κρέᾱ', GD = 'κρεῷν', NP = 'κρέᾱ', GP = 'κρεῶν', DP = 'κρέᾰσῐ(ν)' } },
		{ { 'κρέᾰς', 'κρέᾰτος' }, { NS = 'κρέᾰς', GS = 'κρέᾰτος', DS = 'κρέᾰτῐ', ND = 'κρέᾰτε', GD = 'κρεᾰ́τοιν', NP = 'κρέᾰτᾰ', GP = 'κρεᾰ́των', DP = 'κρέᾰσῐ(ν)' } },
	}
	iterate(examples)
end


function tests:test_grc_adecl_first_and_second()
	local examples = {
		'Long alpha feminine',
		{
			{ 'ᾰ̓́ξῐος', 'ᾱ' },
			{
				MNS = 'ᾰ̓́ξῐος', MAS = 'ᾰ̓́ξῐον', MVS = 'ᾰ̓́ξῐε', MGS = 'ᾰ̓ξῐ́ου', MDS = 'ᾰ̓ξῐ́ῳ', MND = 'ᾰ̓ξῐ́ω', MGD = 'ᾰ̓ξῐ́οιν', MNP = 'ᾰ̓́ξῐοι', MAP = 'ᾰ̓ξῐ́ους', MGP = 'ᾰ̓ξῐ́ων', MDP = 'ᾰ̓ξῐ́οις', 
				FNS = 'ᾰ̓ξῐ́ᾱ', FAS = 'ᾰ̓ξῐ́ᾱν', FGS = 'ᾰ̓ξῐ́ᾱς', FDS = 'ᾰ̓ξῐ́ᾳ', FND = 'ᾰ̓ξῐ́ᾱ', FGD = 'ᾰ̓ξῐ́αιν', FNP = 'ᾰ̓́ξῐαι', FAP = 'ᾰ̓ξῐ́ᾱς', FGP = 'ᾰ̓ξῐ́ων', FDP = 'ᾰ̓ξῐ́αις', 
				NNS = 'ᾰ̓́ξῐον', NGS = 'ᾰ̓ξῐ́ου', NDS = 'ᾰ̓ξῐ́ῳ', NND = 'ᾰ̓ξῐ́ω', NGD = 'ᾰ̓ξῐ́οιν', NNP = 'ᾰ̓́ξῐᾰ', NGP = 'ᾰ̓ξῐ́ων', NDP = 'ᾰ̓ξῐ́οις',
				adv = 'ᾰ̓ξῐ́ως', comp = 'ᾰ̓ξῐώτερος', super = 'ᾰ̓ξῐώτᾰτος', 
			},
		},
		'Eta feminine',
		{
			{ 'ᾰ̓γᾰθός', 'ή' },
			{
				MNS = 'ᾰ̓γᾰθός', MAS = 'ᾰ̓γᾰθόν', MVS = 'ᾰ̓γᾰθέ', MGS = 'ᾰ̓γᾰθοῦ', MDS = 'ᾰ̓γᾰθῷ', MND = 'ᾰ̓γᾰθώ', MGD = 'ᾰ̓γᾰθοῖν', MNP = 'ᾰ̓γᾰθοί', MAP = 'ᾰ̓γᾰθούς', MGP = 'ᾰ̓γᾰθῶν', MDP = 'ᾰ̓γᾰθοῖς', 
				FNS = 'ᾰ̓γᾰθή', FAS = 'ᾰ̓γᾰθήν', FGS = 'ᾰ̓γᾰθῆς', FDS = 'ᾰ̓γᾰθῇ', FND = 'ᾰ̓γᾰθᾱ́', FGD = 'ᾰ̓γᾰθαῖν', FNP = 'ᾰ̓γᾰθαί', FAP = 'ᾰ̓γᾰθᾱ́ς', FGP = 'ᾰ̓γᾰθῶν', FDP = 'ᾰ̓γᾰθαῖς', 
				NNS = 'ᾰ̓γᾰθόν', NGS = 'ᾰ̓γᾰθοῦ', NDS = 'ᾰ̓γᾰθῷ', NND = 'ᾰ̓γᾰθώ', NGD = 'ᾰ̓γᾰθοῖν', NNP = 'ᾰ̓γᾰθᾰ́', NGP = 'ᾰ̓γᾰθῶν', NDP = 'ᾰ̓γᾰθοῖς', 
				adv = 'ᾰ̓γᾰθῶς', comp = 'ᾰ̓γᾰθώτερος', super = 'ᾰ̓γᾰθώτᾰτος',	
			},
		},
		{
			{ 'ὀλῐ́γος', 'η' },
			{
				MNS = 'ὀλῐ́γος', MAS = 'ὀλῐ́γον', MVS = 'ὀλῐ́γε', MGS = 'ὀλῐ́γου', MDS = 'ὀλῐ́γῳ', MND = 'ὀλῐ́γω', MGD = 'ὀλῐ́γοιν', MNP = 'ὀλῐ́γοι', MAP = 'ὀλῐ́γους', MGP = 'ὀλῐ́γων', MDP = 'ὀλῐ́γοις', 
				FNS = 'ὀλῐ́γη', FAS = 'ὀλῐ́γην', FGS = 'ὀλῐ́γης', FDS = 'ὀλῐ́γῃ', FND = 'ὀλῐ́γᾱ', FGD = 'ὀλῐ́γαιν', FNP = 'ὀλῐ́γαι', FAP = 'ὀλῐ́γᾱς', FGP = 'ὀλῐ́γων', FDP = 'ὀλῐ́γαις', 
				NNS = 'ὀλῐ́γον', NGS = 'ὀλῐ́γου', NDS = 'ὀλῐ́γῳ', NND = 'ὀλῐ́γω', NGD = 'ὀλῐ́γοιν', NNP = 'ὀλῐ́γᾰ', NGP = 'ὀλῐ́γων', NDP = 'ὀλῐ́γοις',
				adv = 'ὀλῐ́γως', comp = 'ὀλῐγώτερος', super = 'ὀλῐγώτᾰτος', 
			},
		},
		{
			{ 'ὀρθός', 'η' },
			{
				MNS = 'ὀρθός', MAS = 'ὀρθόν', MVS = 'ὀρθέ', MGS = 'ὀρθοῦ', MDS = 'ὀρθῷ', MND = 'ὀρθώ', MGD = 'ὀρθοῖν', MNP = 'ὀρθοί', MAP = 'ὀρθούς', MGP = 'ὀρθῶν', MDP = 'ὀρθοῖς', 
				FNS = 'ὀρθή', FAS = 'ὀρθήν', FGS = 'ὀρθῆς', FDS = 'ὀρθῇ', FND = 'ὀρθᾱ́', FGD = 'ὀρθαῖν', FNP = 'ὀρθαί', FAP = 'ὀρθᾱ́ς', FGP = 'ὀρθῶν', FDP = 'ὀρθαῖς', 
				NNS = 'ὀρθόν', NGS = 'ὀρθοῦ', NDS = 'ὀρθῷ', NND = 'ὀρθώ', NGD = 'ὀρθοῖν', NNP = 'ὀρθᾰ́', NGP = 'ὀρθῶν', NDP = 'ὀρθοῖς', 
				adv = 'ὀρθῶς', comp = 'ὀρθότερος', super = 'ὀρθότᾰτος', 
			},
		},
	}
	iterate_adj(examples)
end

function tests:test_grc_adecl_second()
	local examples = {
		{
			{ 'ᾰ̓́δῐκος', 'ον' },
			{
				MNS = 'ᾰ̓́δῐκος', MAS = 'ᾰ̓́δῐκον', MVS = 'ᾰ̓́δῐκε', MGS = 'ᾰ̓δῐ́κου', MDS = 'ᾰ̓δῐ́κῳ', MND = 'ᾰ̓δῐ́κω', MGD = 'ᾰ̓δῐ́κοιν', MNP = 'ᾰ̓́δῐκοι', MAP = 'ᾰ̓δῐ́κους', MGP = 'ᾰ̓δῐ́κων', MDP = 'ᾰ̓δῐ́κοις', 
				
				NNS = 'ᾰ̓́δῐκον', NGS = 'ᾰ̓δῐ́κου', NDS = 'ᾰ̓δῐ́κῳ', NND = 'ᾰ̓δῐ́κω', NGD = 'ᾰ̓δῐ́κοιν', NNP = 'ᾰ̓́δῐκᾰ', NGP = 'ᾰ̓δῐ́κων', NDP = 'ᾰ̓δῐ́κοις', 
				adv = 'ᾰ̓δῐ́κως', comp = 'ᾰ̓δῐκώτερος', super = 'ᾰ̓δῐκώτᾰτος', 
			},
		},
		{
			{ 'δῠνᾰτός', 'όν' },
			{
				MNS = 'δῠνᾰτός', MAS = 'δῠνᾰτόν', MVS = 'δῠνᾰτέ', MGS = 'δῠνᾰτοῦ', MDS = 'δῠνᾰτῷ', MND = 'δῠνᾰτώ', MGD = 'δῠνᾰτοῖν', MNP = 'δῠνᾰτοί', MAP = 'δῠνᾰτούς', MGP = 'δῠνᾰτῶν', MDP = 'δῠνᾰτοῖς', 
				
				NNS = 'δῠνᾰτόν', NGS = 'δῠνᾰτοῦ', NDS = 'δῠνᾰτῷ', NND = 'δῠνᾰτώ', NGD = 'δῠνᾰτοῖν', NNP = 'δῠνᾰτᾰ́', NGP = 'δῠνᾰτῶν', NDP = 'δῠνᾰτοῖς', 
				adv = 'δῠνᾰτῶς', comp = 'δῠνᾰτώτερος', super = 'δῠνᾰτώτᾰτος', 
			},
		},
		{
			{ 'χερσαῖος', 'ον' },
			{
				MNS = 'χερσαῖος', MAS = 'χερσαῖον', MVS = 'χερσαῖε', MGS = 'χερσαίου', MDS = 'χερσαίῳ', MND = 'χερσαίω', MGD = 'χερσαίοιν', MNP = 'χερσαῖοι', MAP = 'χερσαίους', MGP = 'χερσαίων', MDP = 'χερσαίοις', 
				
				NNS = 'χερσαῖον', NGS = 'χερσαίου', NDS = 'χερσαίῳ', NND = 'χερσαίω', NGD = 'χερσαίοιν', NNP = 'χερσαῖᾰ', NGP = 'χερσαίων', NDP = 'χερσαίοις', 
				adv = 'χερσαίως', comp = 'χερσαιότερος', super = 'χερσαιότᾰτος', 
			},
		},
	}
	
	iterate_adj(examples)
end

function tests:test_grc_adecl_third()
	local examples = {
		{
			{ 'ψευδής', 'ές', dial = 'ion' },
			{
				MNS = 'ψευδής', MAS = 'ψευδέᾰ', MVS = 'ψευδές', MGS = 'ψευδέος/ψευδεῦς', MDS = 'ψευδεῖ/ψευδέῐ̈', MND = 'ψευδεῖ/ψευδέε', MGD = 'ψευδέοιν', MNP = 'ψευδεῖς/ψευδέες', MAP = 'ψευδέᾰς', MGP = 'ψευδέων', MDP = 'ψευδέσῐ(ν)', 
				
				NNS = 'ψευδές', NGS = 'ψευδέος/ψευδεῦς', NDS = 'ψευδεῖ/ψευδέῐ̈', NND = 'ψευδεῖ/ψευδέε', NGD = 'ψευδέοιν', NNP = 'ψευδέᾰ', NGP = 'ψευδέων', NDP = 'ψευδέσῐ(ν)', 
				adv = 'ψευδέως', comp = 'ψευδέστερος', super = 'ψευδέστᾰτος', 
			},
		},
		{
			{ 'κᾰκοήθης', 'ες', dial = 'ion' },
			{
				MNS = 'κᾰκοήθης', MAS = 'κᾰκοήθεᾰ', MVS = 'κᾰκόηθες', MGS = 'κᾰκοήθεος/κᾰκοήθευς', MDS = 'κᾰκοήθει/κᾰκοήθεῐ̈', MND = 'κᾰκοήθει/κᾰκοήθεε', MGD = 'κᾰκοηθέοιν', MNP = 'κᾰκοήθεις/κᾰκοήθεες', MAP = 'κᾰκοήθεᾰς', MGP = 'κᾰκοηθέων', MDP = 'κᾰκοήθεσῐ(ν)', 
				-- Hard to find Ionic examples of adverb of recessively accented
				-- adjective to verify κᾰκοηθέως.
				NNS = 'κᾰκόηθες', NGS = 'κᾰκοήθεος/κᾰκοήθευς', NDS = 'κᾰκοήθει/κᾰκοήθεῐ̈', NND = 'κᾰκοήθει/κᾰκοήθεε', NGD = 'κᾰκοηθέοιν', NNP = 'κᾰκοήθεᾰ', NGP = 'κᾰκοηθέων', NDP = 'κᾰκοήθεσῐ(ν)', 
				adv = 'κᾰκοηθέως', comp = 'κᾰκοηθέστερος', super = 'κᾰκοηθέστᾰτος', 
			},
		},
		{
			{ 'εὐδαῖμον' },
			{
				MNS = 'εὐδαίμων', MAS = 'εὐδαίμονᾰ', MVS = 'εὐδαῖμον', MGS = 'εὐδαίμονος', MDS = 'εὐδαίμονῐ', MND = 'εὐδαίμονε', MGD = 'εὐδαιμόνοιν', MNP = 'εὐδαίμονες', MAP = 'εὐδαίμονᾰς', MGP = 'εὐδαιμόνων', MDP = 'εὐδαίμοσῐ(ν)', 
				
				NNS = 'εὐδαῖμον', NGS = 'εὐδαίμονος', NDS = 'εὐδαίμονῐ', NND = 'εὐδαίμονε', NGD = 'εὐδαιμόνοιν', NNP = 'εὐδαίμονᾰ', NGP = 'εὐδαιμόνων', NDP = 'εὐδαίμοσῐ(ν)', 
				adv = 'εὐδαιμόνως', comp = 'εὐδαιμονέστερος', super = 'εὐδαιμονέστᾰτος', 
			},
		},
	}
	
	iterate_adj(examples)
end

function tests:test_grc_adecl_first_and_third()
	local examples = {
		'Upsilon',
		{
			{'βᾰρῠ́ς', 'βᾰρεῖᾰ'}, 
			{
				MNS = 'βᾰρῠ́ς', MGS = 'βᾰρέως', MDS = 'βᾰρεῖ', MAS = 'βᾰρῠ́ν', MVS = 'βᾰρῠ́', MND = 'βᾰρέε', MGD = 'βᾰρέοιν', MNP = 'βᾰρεῖς', MGP = 'βᾰρέων', MDP = 'βᾰρέσῐ(ν)', MAP = 'βᾰρεῖς',
				FNS = 'βᾰρεῖᾰ', FGS = 'βᾰρείᾱς', FDS = 'βᾰρείᾳ', FAS = 'βᾰρεῖᾰν', FND = 'βᾰρείᾱ', FGD = 'βᾰρείαιν', FNP = 'βᾰρεῖαι', FGP = 'βᾰρειῶν', FDP = 'βᾰρείαις', FAP = 'βᾰρείᾱς',
				NNS = 'βᾰρῠ́', NGS = 'βᾰρέως', NDS = 'βᾰρεῖ', NND = 'βᾰρέε', NGD = 'βᾰρέοιν', NNP = 'βᾰρέᾰ', NGP = 'βᾰρέων', NDP = 'βᾰρέσῐ(ν)',
				adv = 'βᾰρέως', comp = 'βᾰρῠ́τερος', super = 'βᾰρῠ́τᾰτος', 
			} 
		},
		'Participles',
		{
			{ 'δούς', 'δοῦσᾰ' },
			{
				MNS = 'δούς', MAS = 'δόντᾰ', MGS = 'δόντος', MDS = 'δόντῐ', MND = 'δόντε', MGD = 'δόντοιν', MNP = 'δόντες', MAP = 'δόντᾰς', MGP = 'δόντων', MDP = 'δοῦσῐ(ν)', 
				FNS = 'δοῦσᾰ', FAS = 'δοῦσᾰν', FGS = 'δούσης', FDS = 'δούσῃ', FND = 'δούσᾱ', FGD = 'δούσαιν', FNP = 'δοῦσαι', FAP = 'δούσᾱς', FGP = 'δουσῶν', FDP = 'δούσαις', 
				NNS = 'δόν', NGS = 'δόντος', NDS = 'δόντῐ', NND = 'δόντε', NGD = 'δόντοιν', NNP = 'δόντᾰ', NGP = 'δόντων', NDP = 'δοῦσῐ(ν)', 
				adv = 'δόντως', 
			},
		},
		{
			{ 'θείς', 'θεῖσᾰ' },
			{
				MNS = 'θείς', MAS = 'θέντᾰ', MGS = 'θέντος', MDS = 'θέντῐ', MND = 'θέντε', MGD = 'θέντοιν', MNP = 'θέντες', MAP = 'θέντᾰς', MGP = 'θέντων', MDP = 'θεῖσῐ(ν)', 
				FNS = 'θεῖσᾰ', FAS = 'θεῖσᾰν', FGS = 'θείσης', FDS = 'θείσῃ', FND = 'θείσᾱ', FGD = 'θείσαιν', FNP = 'θεῖσαι', FAP = 'θείσᾱς', FGP = 'θεισῶν', FDP = 'θείσαις', 
				NNS = 'θέν', NGS = 'θέντος', NDS = 'θέντῐ', NND = 'θέντε', NGD = 'θέντοιν', NNP = 'θέντᾰ', NGP = 'θέντων', NDP = 'θεῖσῐ(ν)', 
				adv = 'θέντως', 
			},
		},
		{
			{ 'στᾱ́ς', 'στᾶσᾰ' },
			{
				MNS = 'στᾱ́ς', MAS = 'στᾰ́ντᾰ', MGS = 'στᾰ́ντος', MDS = 'στᾰ́ντῐ', MND = 'στᾰ́ντε', MGD = 'στᾰ́ντοιν', MNP = 'στᾰ́ντες', MAP = 'στᾰ́ντᾰς', MGP = 'στᾰ́ντων', MDP = 'στᾶσῐ(ν)', 
				FNS = 'στᾶσᾰ', FAS = 'στᾶσᾰν', FGS = 'στᾱ́σης', FDS = 'στᾱ́σῃ', FND = 'στᾱ́σᾱ', FGD = 'στᾱ́σαιν', FNP = 'στᾶσαι', FAP = 'στᾱ́σᾱς', FGP = 'στᾱσῶν', FDP = 'στᾱ́σαις', 
				NNS = 'στᾰ́ν', NGS = 'στᾰ́ντος', NDS = 'στᾰ́ντῐ', NND = 'στᾰ́ντε', NGD = 'στᾰ́ντοιν', NNP = 'στᾰ́ντᾰ', NGP = 'στᾰ́ντων', NDP = 'στᾶσῐ(ν)', 
				adv = 'στᾰ́ντως', 
			},
		},
		{
			{ 'δεικνῡ́ς', 'δεικνῦσᾰ' },
			{
				MNS = 'δεικνῡ́ς', MAS = 'δεικνῠ́ντᾰ', MGS = 'δεικνῠ́ντος', MDS = 'δεικνῠ́ντῐ', MND = 'δεικνῠ́ντε', MGD = 'δεικνῠ́ντοιν', MNP = 'δεικνῠ́ντες', MAP = 'δεικνῠ́ντᾰς', MGP = 'δεικνῠ́ντων', MDP = 'δεικνῦσῐ(ν)', 
				FNS = 'δεικνῦσᾰ', FAS = 'δεικνῦσᾰν', FGS = 'δεικνῡ́σης', FDS = 'δεικνῡ́σῃ', FND = 'δεικνῡ́σᾱ', FGD = 'δεικνῡ́σαιν', FNP = 'δεικνῦσαι', FAP = 'δεικνῡ́σᾱς', FGP = 'δεικνῡσῶν', FDP = 'δεικνῡ́σαις', 
				NNS = 'δεικνῠ́ν', NGS = 'δεικνῠ́ντος', NDS = 'δεικνῠ́ντῐ', NND = 'δεικνῠ́ντε', NGD = 'δεικνῠ́ντοιν', NNP = 'δεικνῠ́ντᾰ', NGP = 'δεικνῠ́ντων', NDP = 'δεικνῦσῐ(ν)', 
				adv = 'δεικνῠ́ντως',
			},
		},
		{
			{ 'λᾰμβᾰ́νων', 'λᾰμβᾰ́νουσᾰ' },
			{
				MNS = 'λᾰμβᾰ́νων', MAS = 'λᾰμβᾰ́νοντᾰ', MGS = 'λᾰμβᾰ́νοντος', MDS = 'λᾰμβᾰ́νοντῐ', MND = 'λᾰμβᾰ́νοντε', MGD = 'λᾰμβᾰνόντοιν', MNP = 'λᾰμβᾰ́νοντες', MAP = 'λᾰμβᾰ́νοντᾰς', MGP = 'λᾰμβᾰνόντων', MDP = 'λᾰμβᾰ́νουσῐ(ν)', 
				FNS = 'λᾰμβᾰ́νουσᾰ', FAS = 'λᾰμβᾰ́νουσᾰν', FGS = 'λᾰμβᾰνούσης', FDS = 'λᾰμβᾰνούσῃ', FND = 'λᾰμβᾰνούσᾱ', FGD = 'λᾰμβᾰνούσαιν', FNP = 'λᾰμβᾰ́νουσαι', FAP = 'λᾰμβᾰνούσᾱς', FGP = 'λᾰμβᾰνουσῶν', FDP = 'λᾰμβᾰνούσαις', 
				NNS = 'λᾰμβᾰ́νον', NGS = 'λᾰμβᾰ́νοντος', NDS = 'λᾰμβᾰ́νοντῐ', NND = 'λᾰμβᾰ́νοντε', NGD = 'λᾰμβᾰνόντοιν', NNP = 'λᾰμβᾰ́νοντᾰ', NGP = 'λᾰμβᾰνόντων', NDP = 'λᾰμβᾰ́νουσῐ(ν)', 
				adv = 'λᾰμβᾰνόντως',
			},
		},
		{
			{ 'λᾰβών', 'ουσᾰ' },
			{
				MNS = 'λᾰβών', MAS = 'λᾰβόντᾰ', MGS = 'λᾰβόντος', MDS = 'λᾰβόντῐ', MND = 'λᾰβόντε', MGD = 'λᾰβόντοιν', MNP = 'λᾰβόντες', MAP = 'λᾰβόντᾰς', MGP = 'λᾰβόντων', MDP = 'λᾰβοῦσῐ(ν)', 
				FNS = 'λᾰβοῦσᾰ', FAS = 'λᾰβοῦσᾰν', FGS = 'λᾰβούσης', FDS = 'λᾰβούσῃ', FND = 'λᾰβούσᾱ', FGD = 'λᾰβούσαιν', FNP = 'λᾰβοῦσαι', FAP = 'λᾰβούσᾱς', FGP = 'λᾰβουσῶν', FDP = 'λᾰβούσαις', 
				NNS = 'λᾰβόν', NGS = 'λᾰβόντος', NDS = 'λᾰβόντῐ', NND = 'λᾰβόντε', NGD = 'λᾰβόντοιν', NNP = 'λᾰβόντᾰ', NGP = 'λᾰβόντων', NDP = 'λᾰβοῦσῐ(ν)', 
				adv = 'λᾰβόντως',
			},
		},
		{
			{ 'ποιήσᾱς', 'ᾱσᾰ' },
			{
				MNS = 'ποιήσᾱς', MAS = 'ποιήσᾰντᾰ', MGS = 'ποιήσᾰντος', MDS = 'ποιήσᾰντῐ', MND = 'ποιήσᾰντε', MGD = 'ποιησᾰ́ντοιν', MNP = 'ποιήσᾰντες', MAP = 'ποιήσᾰντᾰς', MGP = 'ποιησᾰ́ντων', MDP = 'ποιήσᾱσῐ(ν)', 
				FNS = 'ποιήσᾱσᾰ', FAS = 'ποιήσᾱσᾰν', FGS = 'ποιησᾱ́σης', FDS = 'ποιησᾱ́σῃ', FND = 'ποιησᾱ́σᾱ', FGD = 'ποιησᾱ́σαιν', FNP = 'ποιήσᾱσαι', FAP = 'ποιησᾱ́σᾱς', FGP = 'ποιησᾱσῶν', FDP = 'ποιησᾱ́σαις', 
				NNS = 'ποιῆσᾰν', NGS = 'ποιήσᾰντος', NDS = 'ποιήσᾰντῐ', NND = 'ποιήσᾰντε', NGD = 'ποιησᾰ́ντοιν', NNP = 'ποιήσᾰντᾰ', NGP = 'ποιησᾰ́ντων', NDP = 'ποιήσᾱσῐ(ν)', 
				adv = 'ποιησᾰ́ντως'
			},
		},
		{
			{ 'δηλῶν', 'δηλοῦσᾰ' },
			{
				MNS = 'δηλῶν', MAS = 'δηλοῦντᾰ', MGS = 'δηλοῦντος', MDS = 'δηλοῦντῐ', MND = 'δηλοῦντε', MGD = 'δηλούντοιν', MNP = 'δηλοῦντες', MAP = 'δηλοῦντᾰς', MGP = 'δηλούντων', MDP = 'δηλοῦσῐ(ν)', 
				FNS = 'δηλοῦσᾰ', FAS = 'δηλοῦσᾰν', FGS = 'δηλούσης', FDS = 'δηλούσῃ', FND = 'δηλούσᾱ', FGD = 'δηλούσαιν', FNP = 'δηλοῦσαι', FAP = 'δηλούσᾱς', FGP = 'δηλουσῶν', FDP = 'δηλούσαις', 
				NNS = 'δηλοῦν', NGS = 'δηλοῦντος', NDS = 'δηλοῦντῐ', NND = 'δηλοῦντε', NGD = 'δηλούντοιν', NNP = 'δηλοῦντᾰ', NGP = 'δηλούντων', NDP = 'δηλοῦσῐ(ν)', 
				adv = 'δηλούντως',
			},
		},
		{
			{ 'τιμῶν', 'τιμῶσᾰ' },
			{
				MNS = 'τιμῶν', MAS = 'τιμῶντᾰ', MGS = 'τιμῶντος', MDS = 'τιμῶντῐ', MND = 'τιμῶντε', MGD = 'τιμώντοιν', MNP = 'τιμῶντες', MAP = 'τιμῶντᾰς', MGP = 'τιμώντων', MDP = 'τιμῶσῐ(ν)', 
				FNS = 'τιμῶσᾰ', FAS = 'τιμῶσᾰν', FGS = 'τιμώσης', FDS = 'τιμώσῃ', FND = 'τιμώσᾱ', FGD = 'τιμώσαιν', FNP = 'τιμῶσαι', FAP = 'τιμώσᾱς', FGP = 'τιμωσῶν', FDP = 'τιμώσαις', 
				NNS = 'τιμῶν', NGS = 'τιμῶντος', NDS = 'τιμῶντῐ', NND = 'τιμῶντε', NGD = 'τιμώντοιν', NNP = 'τιμῶντᾰ', NGP = 'τιμώντων', NDP = 'τιμῶσῐ(ν)', 
				adv = 'τιμώντως',
			},
		},
		{
			{ 'ποιῶν', 'ποιοῦσᾰ' },
			{
				MNS = 'ποιῶν', MAS = 'ποιοῦντᾰ', MGS = 'ποιοῦντος', MDS = 'ποιοῦντῐ', MND = 'ποιοῦντε', MGD = 'ποιούντοιν', MNP = 'ποιοῦντες', MAP = 'ποιοῦντᾰς', MGP = 'ποιούντων', MDP = 'ποιοῦσῐ(ν)', 
				FNS = 'ποιοῦσᾰ', FAS = 'ποιοῦσᾰν', FGS = 'ποιούσης', FDS = 'ποιούσῃ', FND = 'ποιούσᾱ', FGD = 'ποιούσαιν', FNP = 'ποιοῦσαι', FAP = 'ποιούσᾱς', FGP = 'ποιουσῶν', FDP = 'ποιούσαις', 
				NNS = 'ποιοῦν', NGS = 'ποιοῦντος', NDS = 'ποιοῦντῐ', NND = 'ποιοῦντε', NGD = 'ποιούντοιν', NNP = 'ποιοῦντᾰ', NGP = 'ποιούντων', NDP = 'ποιοῦσῐ(ν)', 
				adv = 'ποιούντως',
			},
		},
	}
	iterate_adj(examples)
end

return tests