a 2D simulator