Games, puzzles, and computation. (©2009)