你是否读过关于某种加密算法的描述?这些描述几乎总是包含在 Alice 和 Bob 之间发送的信息。我们(2011年中欧区域赛的组织者)认为这些描述太没有人情味了——考虑到这两个人可能是全世界最著名的密码学家,我们对他们的了解却如此之少。他们理应获得更多的关注,你不觉得吗?例如,我们可以了解一下他们的业余爱好。
在闲暇时间,Alice 和 Bob 喜欢玩一个受《电子世界争霸战》(Tron)启发的游戏。在这个游戏中,你在一张网格地图上驾驶一辆赛车,需要避免撞上地图中的障碍物。此外,赛车会留下一条永久的轨迹,你也需要避开它。赛车只能向四个基本方向(东、西、南、北)移动。在他们的游戏版本中,Alice 和 Bob 轮流控制赛车——Alice 先手,将赛车从初始位置移动到网格中的一个相邻位置,然后 Bob 接管并将同一辆赛车移动到另一个相邻位置,以此类推。
撞车(即移动到有障碍物的位置,或移动到之前已经访问过的位置)的玩家输掉游戏。Alice 和 Bob 都是极其优秀的玩家,绝不会犯错;特别是,只有当他们当前的位置没有可以避开撞车的可行移动时,他们才会撞车。给定障碍物地图,你的任务是确定从每个初始位置开始时,哪位玩家会获胜。
输入格式
输入包含多个游戏地图的描述。每个描述的第一行包含两个整数 $N$ 和 $E$($1 \le N, E \le 100$)——分别表示网格在南北方向和东西方向上的大小。
接下来的 $N$ 行描述了地图。每行包含一个长度为 $E$ 的字符串,其中第 $i$ 行的第 $j$ 个字符确定了坐标为 $(j, i)$ 的位置的状态。
可行的字符为:
.(点),表示该位置为空。- 大写字母
X,表示该位置有障碍物。
所有未被地图覆盖的位置(即坐标 $(j, i)$ 满足 $i \le 0$ 或 $j \le 0$ 或 $i > N$ 或 $j > E$ 的位置)都是禁止进入的,不在游戏中使用,其效果等同于有障碍物。
最后一个游戏地图之后是一行,包含两个零。
输出格式
对于每个游戏地图,输出 $N$ 行长度为 $E$ 的字符串,表示从给定位置开始游戏时,Alice 还是 Bob 获胜。
第 $i$ 行的第 $j$ 个字符应当为:
A:如果从位置 $(j, i)$ 开始时 Alice 获胜;B:如果从位置 $(j, i)$ 开始时 Bob 获胜;X:如果该位置包含障碍物。
在每个地图的输出之后,打印一个空行。
样例
输入格式 1
1 1 . 3 3 ... .X. ... 1 4 .... 3 3 X.X ... X.X 5 8 ........ .XX.XXX. .X..X... .X.XX.X. ........ 0 0
输出格式 1
B AAA AXA AAA AAAA XBX BAB XBX BABABABA AXXBXXXB BXBAXABA AXAXXBXB BABABABA