// Java solution for problem F // Author: Grzegorz Gutowski import java.io.*; import java.util.*; public class f { public static int solve(char[][] board, int x, int y) { int result = 0; if (x>=2 && y>=2 && board[x-1][y-1] == 'B' && board[x-2][y-2] == '#') { board[x][y] = '#'; board[x-1][y-1] = '#'; board[x-2][y-2] = 'W'; int score = 1 + solve(board, x-2, y-2); board[x][y] = 'W'; board[x-1][y-1] = 'B'; board[x-2][y-2] = '#'; if (score > result) result = score; } if (x<=7 && y<=7 && board[x+1][y+1] == 'B' && board[x+2][y+2] == '#') { board[x][y] = '#'; board[x+1][y+1] = '#'; board[x+2][y+2] = 'W'; int score = 1 + solve(board, x+2, y+2); board[x][y] = 'W'; board[x+1][y+1] = 'B'; board[x+2][y+2] = '#'; if (score > result) result = score; } if (x<=7 && y>=2 && board[x+1][y-1] == 'B' && board[x+2][y-2] == '#') { board[x][y] = '#'; board[x+1][y-1] = '#'; board[x+2][y-2] = 'W'; int score = 1 + solve(board, x+2, y-2); board[x][y] = 'W'; board[x+1][y-1] = 'B'; board[x+2][y-2] = '#'; if (score > result) result = score; } if (x>=2 && y<=7 && board[x-1][y+1] == 'B' && board[x-2][y+2] == '#') { board[x][y] = '#'; board[x-1][y+1] = '#'; board[x-2][y+2] = 'W'; int score = 1 + solve(board, x-2, y+2); board[x][y] = 'W'; board[x-1][y+1] = 'B'; board[x-2][y+2] = '#'; if (score > result) result = score; } return result; } public static int solve(char[][] board) { int result = 0; for (int x=0; x<10; x++) for (int y=0; y<10; y++) if (board[x][y] == 'W') { int score = solve(board, x, y); if (score > result) result = score; } return result; } public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); int z = Integer.parseInt(reader.readLine()); while (z-- > 0) { reader.readLine(); char board[][] = new char[10][10]; for (int i=0; i<10; i++) { String line = reader.readLine(); for (int j=0; j<10; j++) board[i][j] = line.charAt(j); } System.out.println(Integer.toString(solve(board))); } } }