take two, printing happens in the frame update function