pg220 excercises - tests passing