chapter 5 (alas, it breaks down on larger lists)