포스터 만들기

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

문제

대한민국을 지키는 가장 높은 힘! 대한민국 공군의 마크는 현재 다음과 같다.

이 사진을 본 운영진은 자신만의 마크를 보라매컵 포스터에 포함하기로 하였다. 공군 마크를 분석한 결과, 다음과 같은 디자인을 협의할 수 있었다.

  1. 마크는 세로 $Y$칸, 가로 $X$칸의 크기이며, 좌우 대칭이어야 한다.
  2. 각 칸은 흰색, 노란색, 파란색 중 하나로 색칠해야 하며, 특히 테두리는 파란색으로 칠해야 한다.
  3. 어떤 색의 문양이란, 해당 색으로 색칠된 인접한 칸들의 묶음이다. 두 칸이 변을 공유하는 경우에 두 칸은 인접한다고 정의한다.
  4. 마크 안엔 정확히 2개의 흰색 문양, 1개의 노란색 문양, 그리고 1개의 파란색 문양이 있어야 한다.
  5. 두 흰색 문양은 중앙을 기준으로 서로 좌우 대칭 관계여야 한다.
  6. 모든 흰색 문양은 노란색 문양과 한 칸 이상 변을 공유해야 한다.

올바른 마크의 예시는 다음과 같다.

올바르지 않은 마크의 예시와 관련 규칙은 다음과 같다.

그런데 인쇄를 맡기기 직전에서야 인쇄용지의 일부가 이미 파란색으로 색칠되어 있음을 알게 되었다! 어쩔 수 없이 운영진은 인쇄용지의 상태에 맞춰서, 이미 색칠된 부분을 파란색으로 유지하면서 위의 조건을 여전히 만족하는 새로운 마크를 만들고자 한다.

용지의 크기 및 상태가 주어졌을 때, 새로운 마크를 만들 수 있는지 확인해 보자.

입력

첫 번째 줄에 세로 길이 $Y$와 가로 길이 $X$가 공백으로 구분되어 정수로 주어진다.

이후 $Y$줄에 걸쳐 인쇄용지의 상태가 주어진다.

각 줄은 $X$글자의 B 또는 X가 주어지며, B로 색칠된 칸은 결과물에서도 파란색으로 색칠되어야 한다.

단, 마크의 테두리는 언제나 B로 주어진다. 이는 위의 2번 규칙을 반영한 내용이다.

출력

첫 번째 줄에 모든 규칙을 만족하는 마크가 있다면 YES, 없다면 NO을 출력한다.

이후 YES를 출력했다면 $Y$줄에 걸쳐 가능한 마크 중 하나를 출력한다.

흰색으로 칠한 칸은 W, 노란색으로 칠한 칸은 Y, 파란색으로 칠한 칸은 B로 출력하라.

제한

  • $3 \le Y \le 100$
  • $5 \le X \le 1\,000$