A word arithmetic puzzle solver