시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 128 MB266623.077%

## 문제

Professor Logophile is the local crossword puzzle setter. He has a very idiosyncratic way of working — he writes the words into a blank grid and then fills in the unused squares. That is the easy bit, but he has trouble doing the next bit — numbering the puzzle and preparing the the clues.

This is where you come in. Given a completed crossword, print out a form on which the clues can be written (showing word lengths). Note that he always prepares a true crossword, i.e. there is always at least one word in each direction and there is always at least one shared letter. All words contain three or more letters.

## 입력

Input will be a series of crosswords. The first line of each crossword will be a pair of integers (r and c, 3 ≤ r c ≤ 20) giving the number of rows and columns of the crossword. This will be followed r rows each containing c characters. Each character will be either an uppercase letter or a ‘@’ representing a black square. The file will be terminated by a pair of zeroes (0 0).

## 출력

For each crossword, the output will start with a line containing “Crossword puzzle <cwnum>” where <cwnum> is a running number starting at 1, followed by a form showing the clue number and length for both across and down clues. Each form begins with the word ‘Across’ or ‘Down’ as appropriate, followed by a line for each across or down word that appears in the crossword. Each line begins with the word number with no preceding spaces followed by a full stop, two spaces, an open parenthesis (‘(‘), the length of the word with no preceding spaces and a closing parenthesis (‘)’). Leave one blank line between the ‘Across’ and ‘Down’ parts and between successive crosswords.

## 예제 입력 1

5 13
FIRST@SECOND@
@@O@I@E@@@@@@
@@V@MOTOR@@@@
@@E@E@@U@@@@@
@@R@STUTTER@@
0 0


## 예제 출력 1

Crossword puzzle 1
Across
1.  (5)
4.  (6)
5.  (5)
7.  (7)
Down
2.  (5)
3.  (5)
4.  (3)
6.  (3)