Little Cyan Fish는 $n$개의 행과 $m$개의 열로 이루어진 직사각형 격자를 가지고 있습니다. 그는 이 격자를 펜토미노(pentomino)들로 분할하려고 합니다. 펜토미노란 변을 공유하여 연결된 정확히 다섯 개의 칸으로 이루어진 영역입니다.
펜토미노 모양은 아래 그림과 같이 F, I, L, P, N, T, U, V, W, X, Y, Z로 이름 붙여진 열두 가지가 있습니다. 각 모양은 회전하거나 대칭이동할 수 있습니다.
Little Cyan Fish는 모든 칸이 정확히 하나의 펜토미노에 속하기를 원합니다. 또한, 같은 모양의 두 펜토미노는 서로 방향이 다르더라도 변을 공유할 수 없습니다. 꼭짓점(모서리)만 공유하는 것은 허용됩니다.
이 규칙들을 만족하는 분할을 하나 찾으세요. 만약 불가능하다면 이를 보고하세요.
입력
여러 개의 테스트 케이스가 주어집니다. 입력의 첫 번째 줄에는 테스트 케이스의 개수를 나타내는 하나의 정수 $T$ ($1 \le T$)가 주어집니다.
각 테스트 케이스의 첫 번째 줄에는 각각 행의 개수와 열의 개수를 나타내는 두 정수 $n$과 $m$ ($1 \le n, m \le 1000$)이 주어집니다. $n \times m$은 $5$의 배수임이 보장됩니다.
모든 테스트 케이스에 대한 $n \times m$의 합은 $10^6$을 초과하지 않음이 보장됩니다.
출력
각 테스트 케이스에 대해, 올바른 분할이 존재하지 않으면 한 줄에 No를 출력합니다. 그렇지 않으면 첫 줄에 Yes를 출력하고, 이어서 $n$개의 줄에 걸쳐 각 줄마다 열두 개의 영어 대문자 FILPNTUVWXYZ로만 이루어진 길이 $m$의 문자열을 출력합니다.
$i$번째 행 $j$번째 열의 문자는 해당 칸을 포함하는 펜토미노의 이름이어야 합니다. 변을 공유하여 연결된 같은 문자들의 모든 극대 연결 영역은 정확히 다섯 개의 칸으로 이루어져야 하며, 그 문자가 나타내는 모양을 가져야 합니다.
Yes와 No는 대소문자를 구분하지 않습니다. 올바른 분할이 여러 개 존재한다면 그중 아무것이나 출력해도 됩니다.
예제
입력 1
4 1 5 1 10 3 5 2 10
출력 1
Yes IIIII No Yes LLLLT LYTTT YYYYT Yes LLLLNNNPPP LIIIIINNPP