Listing 14.4, 14.5, 14.6