solution to Problem 28