Added soluble puzzle state detection.