sudokusolver reimpl