Consider a table of size n × m, initially fully white. Rows are numbered 1 through n from top to bottom, columns 1 through m from left to right. Some square inside the table with odd side length was painted black. Find the center of this square.

Input

The first line contains two integers n and m (1 ≤ n, m ≤ 115) — the number of rows and the number of columns in the table.

The i-th of the next n lines contains a string of m characters s_{i1} s_{i2} … s_{im} (s_{ij} is 'W' for white cells and 'B' for black cells), describing the i-th row of the table.

Output

Output two integers r and c (1 ≤ r ≤ n, 1 ≤ c ≤ m) separated by a space — the row and column numbers of the center of the black square.

Examples

Input

5 6
WWBBBW
WWBBBW
WWBBBW
WWWWWW
WWWWWW


Output

2 4


Input

3 3
WWW
BWW
WWW


Output

2 1
var firstLine = readline();
var n = firstLine.split(" ")[0];
var k = firstLine.split(" ")[1];

print(output(k, n))

function output(k, n) {
    var arr = []
    for (var i = 0; i < n; i++) {
        var string = readline();
        arr.push(string);
    }
    var edjeX1 = 0;
    var edjeX2 = parseInt(k) - 1;
    var edjeY1 = 0;
    var edjeY2 = parseInt(n) - 1;
    for (var i = 0; i < n; i++) {
        for (var j = 0; j < k; j++) {
            if (arr[i][j] === "B" && edjeX1 === 0) {
                edjeX1 = j + 1;
            }
            if (arr[i][j] === "W" && j > 0 && arr[i][j-1] === "B" && edjeX2 === parseInt(k) - 1) {
                edjeX2 = j;
            }
            if (arr[i][j] === "B" && edjeY1 === 0) {
                edjeY1 = i + 1;
            }
            if (arr[i][j] === "W" && i > 0 && arr[i-1][j] === "B" && edjeY2 === parseInt(n) - 1) {
                edjeY2 = i;
            }
        }
    }
    return (Math.ceil((edjeY1 + edjeY2)/2)).toString() + ' ' + (Math.ceil((edjeX1 + edjeX2)/2)).toString();
}