Through Listing 9.3 and test after.