Simulation implementation