chapter 28, exercise 3, WIP, doesn't work yet