finish upto section 2.3.5