Done with assignment 3