Adventures in problem solving - Shirali, Shailesh (Universities Press, 2002)