working on problem 17