worked on prob 21