You have a grid of n rows and m columns, each cell should be painted either black or white. The cell in the ith row and jth column is denoted as (i,j). Two cells are directlyconnected if and only if they have a common edge and have the same color. Two cells are connected if and only if they are directlyconnected or there exist a cell connected to both cells. A painting plan is good if and only if it satisfy three conditions: 1. All white cells are connected 2. All black cells are connected 3. ∀1≤i<n,1≤j<m, cell(i,j),(i,j+1),(i+1,j)and(i+1,j+1) can't have the same color. Some of the cells have been painted, you should paint the rest . output the number of good painting plans module 998244353.
Input
The first line of input contains an integer T(T≤10), denoting the number of test cases. Each test case contains n+1 lines. The first line contains two integer n,m(3≤n≤100,3≤m≤100,n∗m<=100), denoting the size of the grid. The next n lines describe the painted cells, each line contains m integer. The jth number in ith row describe cell(i,j),the number is 0,1 or −1. 0 means the cell is painted white,1 means the cell is painted black, −1 means the cell is not painted.
Output
Output the number of good painting plans module 998244353.