Задачі
Судоку
Судоку
У грі Судоку ви отримуєте великий \textbf{9}×\textbf{9 }квадрат, розділений на менші \textbf{3}×\textbf{3 }підквадратів. Наприклад,
\includegraphics{https://static.e-olymp.com/content/b3/b331223804dfbb4a04a0e2c738137219f3ba060b.jpg}
Знаючи розміщення деяких цифр у квадраті, ваше завдання полягає у визначенні місцезнаходження інших цифр таким чином, що усі цифри від \textbf{1} до \textbf{9} з'являються лише один раз:
\begin{itemize}
\item (\textbf{1}) у кожному з дев'яти \textbf{3}×\textbf{3} підквадратів
\item (\textbf{2}) у кожному з дев'яти рядків, і
\item (\textbf{3}) у кожному з дев'яти стовбців.
\end{itemize}
\InputFile
Вхідні дані будуть містити декілька тестів. Кожен тест складається з одного рядкаи, який містить \textbf{81} символ, які задають \textbf{81} квадрат сітки Судоку, з врахуванням кожного рядка лише один раз. Кожен символ є або цифрою (від \textbf{1} до \textbf{9}) або крапкою (використовується для позначення незаповнених місць). Можна вважати, що кожна ломиголовка, отримана на вході, буде мати єдиний розв'язок. Кінець файлу позначається рядком, який містить слово "\textbf{end}".
\OutputFile
Для кожного тесту вивести у окремому рядку завершену ломиголовку Судоку.
Вхідні дані #1
.2738..1..1...6735.......293.5692.8...........6.1745.364.......9518...7..8..6534. ......52..8.4......3...9...5.1...6..2..7........3.....6...1..........7.4.......3. end
Вихідні дані #1
527389416819426735436751829375692184194538267268174593643217958951843672782965341 416837529982465371735129468571298643293746185864351297647913852359682714128574936