www.fgks.org   »   [go: up one dir, main page]

Jump to content

Module:TreeChart

विकिपीडिया से
imported>The Mol Man के द्वारा 23:51, 14 दिसंबर 2014 के बदलाव
मॉड्यूल बिबरनलेख[बनाईं]
local p = {}

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

local cells = {
	['!b'] = { 	 },
	['!t'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['%b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['%t'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['\'b'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['\'t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['(b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['(t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	[')b'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	[')t'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['*b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['*t'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['+b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['+t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	[',b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	[',t'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['-b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['-t'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, ['width'] = '2em', ['height'] = '1em' } } },
	['.b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['.t'] = { { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['7b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['7t'] = { { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	[':b'] = { 	 },
	[':t'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Ab'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['At'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['Cb'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['Ct'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Db'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Dt'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['Fb'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Ft'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['Gb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Gt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Hb'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Ht'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Jb'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Jt'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Lb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['Lt'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['Mb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Mt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, ['width'] = '2em', ['height'] = '1em' } } },
	['Pb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['Pt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, ['width'] = '2em', ['height'] = '1em' } } },
	['Qb'] = { },
	['Qt'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Rb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Rt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Sb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['St'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['T3b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['T3t'] = { { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Tb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Tt'] = { { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['Vb'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Vt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, ['width'] = '2em', ['height'] = '1em' } } },
	['Wb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['Wt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Yb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['Yt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['Zb'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['Zt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['^b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['^t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['$b'] = { },
	['$t'] = { { tag = 'td', attr = {  colspan = '2', rowspan = '2'}, style = { ['width'] = '2em', ['height'] = '2em' } } },
	['`b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['`t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['a2b'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['a2t'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['ab'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['at'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['b2b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['b2t'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['b3b'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['b3t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['bb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['bt'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['cb'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['ct'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['db'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['dt'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['eb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['et'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['fb'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['ft'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['hb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['ht'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['ib'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['it'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['jb'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['jt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, ['width'] = '2em', ['height'] = '1em' } } },
	['k2b'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['k2t'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['k3b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['k3t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['kb'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['kt'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['l2b'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['l2t'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['l3b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['l3t'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['lb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['lt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['m2b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['m2t'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, ['width'] = '2em', ['height'] = '1em' } } },
	['mb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['mt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DOT, ['width'] = '2em', ['height'] = '1em' } } },
	['n2b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['n2t'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['nb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['nt'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['o2b'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['o2t'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['ob'] = { { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['ot'] = { { tag = 'td', attr = { rowspan = '2' }, style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '2em' } }, { tag = 'td', style = { ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } } },
	['p2b'] = { { tag = 'td', style = { ['border-right'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['p2t'] = { { tag = 'td', style = { ['border-right'] = DSH, ['border-bottom'] = '1px dotted #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['pb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['pt'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', attr = {  rowspan = '2' }, style = { ['width'] = '1em', ['height'] = '2em' } } },
	['q2b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['q2t'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = '1px dashed #000001', ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['qb'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['qt'] = { { tag = 'td', style = { ['border-right'] = DOT, ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = SLD, ['width'] = '1em', ['height'] = '1em' } } },
	['r2b'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['r2t'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, ['width'] = '2em', ['height'] = '1em' } } },
	['rb'] = { { tag = 'td', style = { ['border-right'] = DOT, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['rt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, ['width'] = '2em', ['height'] = '1em' } } },
	['tb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['tt'] = { { tag = 'td', style = { ['border-right'] = SLD, ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', style = { ['border-bottom'] = DSH, ['width'] = '1em', ['height'] = '1em' } } },
	['vb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['vt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = SLD, ['width'] = '2em', ['height'] = '1em' } } },
	['xb'] = { },
	['xt'] = { },
	['yb'] = { { tag = 'td', style = { ['border-right'] = SLD, ['width'] = '1em', ['height'] = '1em' } }, { tag = 'td', node = { tag = 'div', style = { ['width'] = '1em', ['height'] = '1em' } } } },
	['yt'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, ['width'] = '2em', ['height'] = '1em' } } },
	['~b'] = { { tag = 'td', attr = {  colspan = '2' }, style = { ['width'] = '2em', ['height'] = '1em' } } },
	['~t'] = { { tag = 'td', attr = { colspan = '2' }, style = { ['border-bottom'] = DSH, ['width'] = '2em', ['height'] = '1em' } } }
}

function p.main(frame)
	local args = frame:getParent().args
	local cell_args = {}
	for i, v in ipairs(args) do
		local w = mw.text.trim(v)
		if not w:find('%S') then
			w = '$'
		end
		local cell_x = { }
		if cells[w..'t'] then
			cell_x.box = nil
			cell_x.name = w
		else
			cell_x.name = mw.text.trim(v)
			local args_v = args[cell_x.name]
			if args_v then
				cell_x.text = args_v
			else
				cell_x.text = '{{{'..w..'}}}'
			end
			cell_x.box = true
			cell_x.colspan = args['colspan_'..w] or args.colspan or '6'
			cell_x.rowspan = args['rowspan_'..w] or args.rowspan or '2'
			cell_x.thick = args['border_'..w] or args.border or '2'
			cell_x.css = args['boxstyle_'..w] or args.boxstyle or ''
		end
		table.insert(cell_args,cell_x)
	end
	
	return p._main(cell_args)
end

function p._main(cell_args)
	local ret = mw.html.create('tr')
						:css({ ['height'] = '1px',
								['text-align'] = 'center' })
	local ret2 = mw.html.create('tr')
						:css({ ['height'] = '1px',
								['text-align'] = 'center' })
				:done()
	for i, v in ipairs(cell_args) do
		if v.box then
			ret:node(make_box(v))
		else
			ret:node(make_cell(v.name..'t'))
			ret2:node(make_cell(v.name..'b'))
		end
	end
	return tostring(ret:done()) .. tostring(ret2)
end

function make_cell(name)
	local props = cells[name]
	if not props then
		return
	end
	local ret = ''
	for i, v in ipairs(props) do
		ret = ret .. tostring(make_tag(v))
	end
	return ret
end

function make_tag(tbl)
	local ret = mw.html.create(tbl.tag)
	if tbl.style then
		for n, s in pairs(tbl.style) do
			ret:css(n,s)
		end
	end
	if tbl.attr then
		for n, s in pairs(tbl.attr) do
			ret:attr(n,s)
		end
	end
	if tbl.node then
		ret:node(make_tag(tbl.node))
	end
	return ret:done()
end

function make_box(tbl)
	local ret = mw.html.create('td')
			:attr('colspan',tbl.colspan)
			:attr('rowspan',tbl.rowspan)
			:css({ ['padding'] = '0.2em',
					['border'] = tbl.thick .. 'px solid black' })
			:cssText(tbl.css)
			:wikitext(tbl.text)
			:done()
	return ret
end

return p