Listing 14.17, 14.18