fixed some assumptions in how the engine works