Chaps 4 and 3 code must understand better