Done: Listing 9.51