A java, automated sudoku solver usings DFS and AC3 algorithms