Chapter 4 commit upto 4.2.4