add solvable check