more cleanup
reduce # of recompiles needed