주사위는 던져졌다

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

평소 믿을 만한 (그러나 이름을 밝히길 원치 않는) 정보원에 따르면, 어떤 위험한 무리가 행동을 개시할 순간을 운에 맡기기로 했다. 그들은 여러 개의 주사위를 굴리고, 모든 주사위의 윗면에 6개의 눈이 나오는 순간을 신호로 삼는다.

경찰은 주변 카메라로 언제든 주사위 사진을 얻을 수 있으며, 이 비트맵 이미지를 읽어 방금 던진 결과 — 즉 각 주사위에 보이는 눈의 개수 — 를 알려주는 프로그램을 원한다.

입력 이미지는 세 종류의 픽셀, 즉 배경, 주사위 몸체, 주사위 눈만으로 이루어진다. 두 픽셀은 변을 공유할 때에만 연결된 것으로 본다. 모서리 한 점에서만 맞닿는 것은 연결이 아니다. 아래 그림에서 픽셀 A와 B는 연결되어 있지만, B와 C는 연결되어 있지 않다.

픽셀 집합 $S$가 연결되어 있다는 것은, $S$ 안의 모든 픽셀 쌍 $a$, $b$에 대해 $a = a_1$, $b = a_k$이고 이웃한 $a_i$와 $a_{i+1}$이 모두 연결된, $S$ 안의 픽셀 수열 $a_1, a_2, \ldots, a_k$가 존재한다는 뜻이다.

배경이 아닌 픽셀(주사위 몸체와 눈을 모두 포함)들로 이루어진 극대 연결 집합 하나하나를 주사위로 본다. '극대'란 연결성을 깨뜨리지 않고서는 다른 배경 아닌 픽셀을 더 넣을 수 없다는 뜻이다. 마찬가지로, 눈 픽셀들로 이루어진 각 극대 연결 집합은 하나의 눈을 이룬다.

입력

입력은 여러 번의 주사위 던지기 사진으로 이루어진다. 각 사진은 두 정수 $H$와 $W$ — 사진의 높이와 너비 ($1 \le W, H \le 500$) — 가 적힌 줄로 시작한다.

이어지는 $H$개의 줄에는 각각 $W$개의 문자가 있다.

  • . — 배경 픽셀,
  • * — 주사위 몸체 픽셀,
  • X — 주사위 눈 픽셀.

각 사진에는 적어도 하나의 주사위가 있고, 주사위 하나에 보이는 눈의 개수는 $1$개 이상 $6$개 이하이다. 주사위의 개수는 사진 크기에 의해서만 제한된다.

주사위와 눈은 크기가 서로 다를 수 있고, 광학적 왜곡 때문에 완전한 정사각형이 아닐 수도 있다. 연결되어 있기만 하면 사실 어떤 모양이든 될 수 있다. 다만 주사위는 '속이 비어 있지' 않다고 가정해도 된다. 즉, 사진 바깥의 모든 픽셀을 배경으로 간주하면 모든 배경 픽셀이 서로 연결된다.

입력은 첫 줄이 0 0인 사진으로 끝나며, 그 사진은 처리하지 않는다.

출력

각 던지기마다 한 줄을 출력한다. 먼저 Throw:를 출력하고, 공백 하나를 둔 뒤, 사진 속 모든 주사위의 눈 개수를 오름차순으로 정렬하여 공백 하나로 구분해 출력한다.