almost done assignment 4