A sudoku solver using backtracking