Puzzle solver by Ian Brookes, Anne Young | Lex | Lex