Little Cyan Fish har ett rektangulärt rutnät med $n$ rader och $m$ kolumner. Han vill dela upp rutnätet i pentominoer. En pentomino är ett område som består av exakt fem rutor som är sammanbundna via delade kanter.
Det finns tolv pentominoformer, märkta med F, I, L, P, N, T, U, V, W, X, Y och Z, som visas nedan. En form får roteras eller speglas.
Little Cyan Fish vill att varje ruta ska tillhöra exakt en pentomino. Dessutom får inga två pentominoer av samma form dela en kant, även om de har olika orienteringar. Att endast dela ett hörn är tillåtet.
Hitta en uppdelning som uppfyller dessa regler. Om det är omöjligt, rapportera det.
Indata
Det finns flera testfall. Den första raden i indatan innehåller ett enda heltal $T$ ($1 \le T$), som anger antalet testfall.
För varje testfall innehåller den första raden två heltal $n$ och $m$ ($1 \le n, m \le 1000$), som anger antalet rader respektive kolumner. Det garanteras att $n \times m$ är en multipel av $5$.
Det garanteras att summan av $n \times m$ över alla testfall inte överstiger $10^6$.
Utdata
För varje testfall, om ingen giltig uppdelning existerar, skriv ut en enda rad som innehåller No. Annars, skriv ut en enda rad som innehåller Yes, följt av $n$ rader, där var och en innehåller en sträng av längd $m$ som endast består av de tolv stora bokstäverna FILPNTUVWXYZ.
Bokstaven på rad $i$ och kolumn $j$ måste vara beteckningen för den pentomino som innehåller den rutan. Varje maximalt sammanhängande område av lika bokstäver som är sammanbundna via delade kanter måste bestå av exakt fem rutor och ha den form som betecknas av dess bokstav.
Orden Yes och No är skiftlägesokänsliga. Om det finns flera giltiga uppdelningar, skriv ut vilken som helst av dem.
Exempel
Indata 1
4 1 5 1 10 3 5 2 10
Utdata 1
Yes IIIII No Yes LLLLT LYTTT YYYYT Yes LLLLNNNPPP LIIIIINNPP