First three steps of assignment 2