updated assignment 7 (again again)