assignment 2 code