committing the simulator - v1 -- need to refactor it little