Interesting puzzle problem.