first commit of chapter 2 and 3