Hacker's challenge 2: (Mc GrawHill, 2003)