P9879 [EC Final 2021] Check Pattern is Good

Description

Prof. Shou is given an $n\times m$ board. Some cells are colored black, some cells are colored white, and others are uncolored. Prof. Shou likes **check patterns**, so he wants to color all uncolored cells and maximizes the number of check patterns on the board. $4$ cells forming a $2\times 2$ square are said to have the check pattern if they are colored in one of the following ways: ```plain BW WB ``` ```plain WB BW ``` Here `W` ("wakuda" in Chewa language) means the cell is colored black and `B` ("biancu" in Corsican language) means the cell is colored white.

Input Format

The first line contains a single integer $T$ $(1\leq T \leq 10^4)$ denoting the number of test cases. The first line of each test case contains two integers $n$ and $m$ ($1\le n, m\le 100$) denoting the dimensions of the board. Each of the next $n$ lines contains $m$ characters. The $j$-th character of the $i$-th line represents the status of the cell on the $i$-th row and $j$-th column of the board. The character is `W` if the cell is colored black, `B` if the cell is colored white, and `?` if the cell is uncolored. It is guaranteed that the sum of $nm$ over all test cases is no more than $10^6$.

Output Format

For each test case, output a line containing the maximum number of check patterns on the board. In the next $n$ lines, output the colored board in the same format as the input. The output board should satisfy the following conditions. - It consists of only `B` and `W`. - If a cell is already colored in the input, its color cannot be changed in the output. - The number of check patterns equals the answer you print. If there are multiple solutions, output any of them.