broke the play method into steps