adding sudoku solver algorithm