ICFP 2001 Programming Contest Challenge Task version 2