up to assignment 1 q4, working on q5