Finish 3-argument simulations, just 2 and 1 left. Also finish memory and other things but still need a better way to check for valid memory locations