Listing 14.18, 14.19