simulation methods
simulate-method merged