Se battre pour la famille royale!
在公元四世纪的欧洲有两个帝国,一个在西北方向,另一个在东南方向,两个部落之间被一条河流隔开。这片土地是一个网格图,每片土地只能被任意一个帝国占有或者是河流。具体而言,使用数字 1 代表被第一个帝国占有的土地,使用数字 2 代表被第二个帝国占有的土地,数字 0 代表河流,河流不属于任何一个帝国的土地。这片土地被使用的规则如下:


给你一张只由数字 0,1,2 和 ? 组成的地图,? 代表不知道当前这片土地是什么,请你求出有多少种使用数字 0,1,2 填充所有 ? 的方法,满足这篇土地的使用规则。因为方案数可能很多,请在输出方案数量时对于 998244353 取模。
第一行,一个整数 t(1≤t≤104),代表数据组数。
对于每组数据:
第一行,两个整数 n,m(1≤n,m≤4⋅104),分别代表地图的长和宽。
接下来连续的 n 行,每行一个长度为 m 的字符串,字符串的每个字符 c∈{0,1,2,?},代表当前的地图。
保证同一测试点内的 n×m 的总和不超过 4⋅104。
对于每组数据,输出一行数字,代表合法填充当前地图中所有的 ? 的方案数,将结果对于 998244353 取模。
输入样例
6
1 1
?
1 2
1?
3 3
11?
???
?22
8 10
1111110002
1111000002
111?????22
111???????
11???????2
??????????
????0?2222
0000222222
3 4
1102
1102
0022
2 2
??
??
输出样例
3
2
4
3100
0
11