Implement simulator.