cleaned problem 8