3x3 Puzzle Solver