working on simulator, making progress, not there yet
simulation almost works