local SLD = '1px solid black'
local DSH = '1px dashed black'
local DOT = '1px dotted black'

local data = {
	['!'] = {
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = SLD, width = '1em', height = '2em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['%'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	["'"] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['('] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	[')'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = SLD, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['*'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['+'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	[','] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['-'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, width = '2em', height = '1em' } } }
			},
	['.'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['7'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	[':'] = {
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DSH, width = '1em', height = '2em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['A'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['C'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['D'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DSH, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['E'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['F'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['G'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['G2'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['H'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DOT, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['J'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['K'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['L'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['M'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, width = '2em', height = '1em' } } }
			},
	['P'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, width = '2em', height = '1em' } } }
			},
	['Q'] = {
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DOT, width = '1em', height = '2em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['R'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['S'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['T3'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['T2'] = {
		b = { { style ={ ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style =  { width = '1em', height = '1em' } } },
		t = { { style = {  ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['T'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['U'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['V'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, width = '2em', height = '1em' } } }
			},
	['W'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['X'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['X2'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['Y'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['Z'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['^'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['$'] = {
		t = { { attr = { colspan = '2', rowspan = '2'}, style = { width = '2em', height = '2em' } } }
			},
	['`'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['a2'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['a'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['b2'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['b3'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['b'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['c'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['d'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DSH, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['di'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['dj'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['e'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['f'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = SLD, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['fh'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] =DSH, width = '1em', height = '1em' } } }
			},
	['fy'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['h'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['he'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['i'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['ic'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['j'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, width = '2em', height = '1em' } } }
			},
	['jc'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['k2'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DOT, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['k3'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['k'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DOT, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['kq'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['kr'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['kq2'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['kr2'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},

	['l2'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['l3'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['l4'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['l'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['m2'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, width = '2em', height = '1em' } } }
			},
	['m'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, width = '2em', height = '1em' } } }
			},
	['mp'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['mp2'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['n2'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['n'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['np'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['np2'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['o2'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = DSH, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['o'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { attr = { rowspan = '2' }, style = { ['border-right'] = SLD, width = '1em', height = '2em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['om'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['om2'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['on'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['on2'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DOT, width = '1em', height = '1em' } } }
			},
	['p2'] = {
		b = { { style = { ['border-right'] = DSH, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['p'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DOT, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['q2'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['q'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } } }
			},
	['ql'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['ql2'] = {
		b = { { style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = DOT, ['border-bottom'] =DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['r2'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, width = '2em', height = '1em' } } }
			},
	['r'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, width = '2em', height = '1em' } } }
			},
	['rl'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = SLD, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['rl2'] = {
		b = { { style = { ['border-right'] = DOT, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['t'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { style = { ['border-right'] = SLD, ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } } }
			},
	['v'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, width = '2em', height = '1em' } } }
			},
	['x'] = {},
	['y'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } },
			{ style = { width = '1em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, width = '2em', height = '1em' } } }
			},
	['ye'] = {
		b = { { style = { ['border-right'] = SLD, width = '1em', height = '1em' } } },
		t = { { style = { ['border-bottom'] = DSH, width = '1em', height = '1em' } },
			{ attr = { rowspan = '2' }, style = { width = '1em', height = '2em' } } }
			},
	['~'] = {
		b = { { attr = { colspan = '2' }, style = { width = '2em', height = '1em' } } },
		t = { { attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, width = '2em', height = '1em' } } }
			}
}

local retval = {}

for k,v in pairs(data) do
	retval[k] = {}
	for k2,v2 in pairs(v) do
		local renderedCells = mw.html.create()
		for k3,v3 in ipairs(v2) do
			renderedCells:tag('td'):css(v3.style or {}):attr(v3.attr or {})
		end
		retval[k][k2] = tostring(renderedCells)
	end
end

return retval
"https://si.wikipedia.org/w/index.php?title=Module:Tree_chart/data&oldid=546036" වෙතින් සම්ප්‍රවේශනය කෙරිණි