小红正在玩一个拼图游戏,她有一些完全相同的拼图组件: 小红准备用这些组件来拼成一些图案。这些组件可以通过顺时针旋转90度、180度、270度变成不同的形态。我们定义旋转0度用字符'W'表示,旋转90度用字符'D'表示,旋转180度用字符'S'表示,旋转270度用字符'A'表示: 小红想知道,自己是否能按照给定的规则拼出图形? 请注意:若两个组件相邻,那么必须凹进去的和凸出来的完美契合!“凸凸”和"凹凹"的相邻都是不合法的。
输入描述:
第一行输入一个正整数,代表询问次数。每组询问的输入如下:第一行输入两个正整数和,代表拼成的图形的行数和列数。接下来的行,每行输入一个长度为的字符串。字符串仅由'W'、'A'、'S'、'D'和'*'五种字符组成,其中'*'代表空出来的格子,其余的格子的含义如题面所述。


输出描述:
输出行,如果可以完成拼接,则输出"Yes"。否则输出"No"
示例1

输入

3
1 3
AWD
2 3
*S*
*W*
2 2
AW
SD

输出

Yes
No
Yes

说明

第一次询问拼接如下:

第二次询问,显然无法拼接(两个组件会冲突)。
第三次询问,可以拼接如下:

加载中...