Given a matrix (H × W) which contains only 1 and 0, find the area of the largest rectangle which only contains 0s.

Constraints

* 1 ≤ H, W ≤ 1,400

Input


H W
c1,1 c1,2 ... c1,W
c2,1 c2,2 ... c2,W
:
cH,1 cH,2 ... cH,W


In the first line, two integers H and W separated by a space character are given. In the following H lines, ci,j, elements of the H × W matrix, are given.

Output

Print the area (the number of 0s) of the largest rectangle.

Example

Input

4 5
0 0 1 0 0
1 0 0 0 0
0 0 0 1 0
0 0 0 1 0


Output

6
#include <bits/stdc++.h>
using namespace std;
int H, W;
char mat[1510][1510];
int maximum_rectangle() {
  int res = 0, h[1510] = {0};
  for (int i = 0; i < H; i++) {
    for (int j = 0; j < W; j++) {
      h[j] = (mat[i][j] == '.' ? h[j] + 1 : 0);
    }
    stack<pair<int, int> > st;
    st.push(pair<int, int>(0, W));
    for (int j = 0; j <= W; j++) {
      int k = j;
      while (h[j] < st.top().first) {
        k = st.top().second;
        res = max(res, st.top().first * (j - k));
        st.pop();
      }
      if (st.top().first < h[j]) {
        st.push(pair<int, int>(h[j], k));
      }
    }
  }
  return res;
}
int main() {
  while (cin >> H >> W, H) {
    for (int i = 0; i < H; i++) {
      for (int j = 0; j < W; j++) {
        cin >> mat[i][j];
      }
    }
    cout << maximum_rectangle() << endl;
  }
  return 0;
}
