Almost done assignment 4