Sudoku
Cho một bảng Sudoku \(9 \times 9\). Hãy điền các chữ số \(1..9\) vào các ô trống sao cho mỗi hàng, mỗi cột và mỗi khối \(3 \times 3\) đều chứa đủ \(1..9\) đúng một lần. Một số ô đã có sẵn chữ số.
\InputFile
Gồm \(9\) dòng, mỗi dòng là một xâu \(9\) ký tự. Mỗi ký tự là chữ số \(1..9\) (ô đã điền) hoặc dấu chấm . (ô trống).
\OutputFile
Nếu không có lời giải, in NO.
Ngược lại, in YES ở dòng đầu tiên và in ra một nghiệm hợp lệ gồm \(9\) dòng, mỗi dòng là \(9\) ký tự là các chữ số \(1..9\).
Example
Test 1
Input
53..7....
6..195...
.98....6.
8...6...3
4..8.3..1
7...2...6
.6....28.
...419..5
....8..79
Output
YES
534678912
672195348
198342567
859761423
426853791
713924856
961537284
287419635
345286179