Assignments 6 & 7 from CP120A