考古学者であるあなたは、古代都市の遺跡で長方形の木製の板を発見しました。この板は格子状に区切られており、各マスには元々 'C'、'I'、'P' のいずれかの文字が刻まれていたようです。しかし、経年劣化により、一部の文字は現在判別できなくなっています。
調査の結果、あなたは「板上のどの $2 \times 2$ の正方形領域にも、元々は 'C' が2つ、'I' が1つ、'P' が1つ含まれていた」という仮説を立てました。
この仮説が発見された板と矛盾しないかを確認してください。矛盾しない場合は、その仮説に適合する元の文字の配置の可能性を1つ提示してください。
入力
入力には1つ以上のテストケースが含まれます。入力の最初の行には、テストケースの数を示す整数 $t$ ($1 \le t \le 500$) が含まれます。続いて $t$ 個のテストケースが以下の形式で続きます。
$n$ $m$ $c_{1,1}$ $c_{1,2}$ $\dots$ $c_{1,m}$ $c_{2,1}$ $c_{2,2}$ $\dots$ $c_{2,m}$ $\vdots$ $c_{n,1}$ $c_{n,2}$ $\dots$ $c_{n,m}$
各テストケースの最初の行には、2つの整数 $n$ と $m$ ($2 \le n \le 1000$, $2 \le m \le 1000$) が含まれます。これらはそれぞれ板の行数と列数を表します。続く $n$ 行には、それぞれ $m$ 文字が含まれ、発見された板の状態を表します。$i$ 行目の $j$ 番目の文字 $c_{i,j}$ は 'C'、'I'、'P'、'?' のいずれかです。$c_{i,j}$ が 'C'、'I'、'P' のいずれかである場合、その行 $i$ 列 $j$ のマスは該当する文字であると判別できます。$c_{i,j}$ が '?' である場合、そのマスの文字は判別できません。
すべてのテストケースにおける $n$ の合計は 1000 を超えません。$m$ についても同様です。
出力
各テストケースについて、仮説が発見された板と矛盾する場合は、1行に no と出力してください。矛盾しない場合は、1行目に yes と出力し、続いて仮説に適合する元の文字の配置の可能性を1つ表す $n$ 行を出力してください。これらの各行には $m$ 文字が含まれる必要があります。$i$ 行目の $j$ 番目の文字は、行 $i$ 列 $j$ のマスの文字である必要があります。複数の可能な配置が存在する場合は、そのうちのどれを出力しても構いません。
入出力例
入力 1
3 5 7 I?I?I?I ?P?P?P? I?I?I?I ?P?P?P? I?I?I?I 4 4 ICPC CPCI ICPC CPCI 2 2 ?? ??
出力 1
yes ICICICI CPCPCPC ICICICI CPCPCPC ICICICI no yes IC PC