Mô đun:Tree chart/data

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' } } }
			},
	'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' } } }
			},
	'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
	retvalk = {}
	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
		retvalkk2 = tostring(renderedCells)
	end
end
return retval