assignment 2 and assignment 3