finish problem 4