I solved this a while back. It's a bit challenging, but mostly due to the fact that the clues aren't really completely determining the solution, so you can't deduce each square like you can in e.g. sudoku. You have to make some guesses and then backtrack if they're wrong.