call a table with

a, then calls (recursively) -> (a*,(a,b)+)
if you have a repeating element followed by other sequential elements
do_required (i.e. the minimum required for the group)
do ( optionalrepeated+all_following )

optionalrepeated
	match one
	optionalrepeated
	fail_match -> match remaining

optionalrepeatedfollowed:
	(None, DO, repeatedel, 2, 1),
	(None, SubTable, (same),1,2), # but can't do subtable, has to be table :(
	(None, SubTable, restofproduction)
	
