#2104 CROSSWORD

1 s   128 MB  

Description

Do you like to solve crosswords? If you do, you probably know the traditional lead-in for beginners small 3 by 3 crosswords, like the following: Solve a crossword like this one! Not gonna happen?

Fine, then at least put it together given six words that appear in it (three as horizontal and three as vertical).

Input

The first line of the input will contain the number of test case, T. A test case consists six lines. Each of the six lines of input contains a word consisting of three uppercase English letters. The words are given in a lexicographically sorted order.

Test cases are separated by a blank line.

Output

For each test case, print 0 if it is impossible to put together a 3 × 3 crossword using the given six words.

Otherwise, print the crossword in three lines.

If there is more than one possible solution, output the one that is first in lexicographic order, where,

for sorting purposes, the crossword is viewed as a nine-letter word obtained by concatenating its rows.

Separate adjacent output of test cases by a blank line.

Sample Input

Sample Output

2

ANA
ANA
DAR
DAR
RAD
RAD

AKO
CES
DOC
DON
ESI
KES
DAR
ANA
RAD

0

Source

20130912 - 인터넷 예선 대비 대회