give these full blocks to avoid well-formedness errors upcoming
parameterize a bit to allow for phase1/phase2 testing down the road, and unnecessary code
test
more changes to please well-formedness