cleaned up problem 4