finish chapter 2
before the part 3.2
finish chapter 3
on going []=
before implementing iterators