update prototype simulate