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
#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:167772160000")
template <typename T>
using min_heap = std::priority_queue<T, std::vector<T>, std::greater<T>>;
template <typename T>
using max_heap = std::priority_queue<T, std::vector<T>, std::less<T>>;
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int r, c;
  cin >> r >> c;
  int mnc = ((1LL << 31) - 1), mxc = -1, mnr = ((1LL << 31) - 1), mxr = -1;
  for (int i = (0); i < (r); i++) {
    for (int j = (0); j < (c); j++) {
      char x;
      cin >> x;
      if (x == 'B') {
        mnc = min(mnc, j + 1);
        mxc = max(mxc, j + 1);
        mnr = min(mnr, i + 1);
        mxr = max(mxr, i + 1);
      }
    }
  }
  cout << (mxr + mnr) / 2 << " " << (mxc + mnc) / 2;
  return 0;
}
