//#include<stdio.h>
//int main()
//{
// int m,n;
// int sum = 0, k , r, s = 0;
// int i;
// scanf("%d %d",&n,&m);
// k = n;
// r = n;
// while(r>0)
// {
// r--;
// for(i=1;i<=n;i++)
// {
// if(n%i == 0)
// {
// n /= i;
// printf("%d %d\n",i, n);
// s++;
// sum++;
// }
// }
// printf("%d\n", sum);
// if(s !=m)
// {
// sum--;
// }
// printf("%d\n", sum);
// n = k;
// s = 0;
// }
// printf("%d", 2* sum);
// return 0;
//}
//#include<stdio.h>
//int main()
//{
// int x, y, i, j, l,m,arr[35][35] = {}, sum = 0,t, f, k = 0;
// scanf("%d %d",&x, &y);
// for(i=0;i<y;i++)
// {
// for(j=0;j<x;j++)
// {
// scanf("%1d", &arr[i][j]);
// }
// }
// for(i=0;i<y;i++)
// {
// for(j=0;j<x;j++)
// {
// k = 0;
// if(arr[i][j] == 1)
// {
// if(arr[i][j+1] == 1)
// {
// while(arr[i][j+k] == 1)
// {
// if(arr[i+1][j+k] == 1)
// {
// arr[i][j+k] = 1;
// }
// else
// {
// arr[i][j+k] = 0;
// }
// k++;
// }
// sum++;
// }
// else if(arr[i+1][j] == 1)
// {
// while(arr[i+k][j] == 1)
// {
// if(arr[i+k][j+1] == 1)
// {
// arr[i+k][j] = 1;
// }
// else
// {
// arr[i+k][j] = 0;
// }
// k++;
// }
// sum++;
// }
// }
// }
//// for(l=0;l<y;l++)
//// {
//// for(m=0;m<x;m++)
//// {
//// printf("%1d",arr[l][m]);
//// }
//// puts("");
//// }
//// puts("");
// }
// printf("%d", sum);
//}
#include<stdio.h>
int main()
{
int x, y, i, j,arr[35][35] = {}, sum = 0,k = 0, max = -1, w = 0, h = 0;
scanf("%d %d",&x, &y);
for(i=0;i<y;i++)
{
for(j=0;j<x;j++)
{
scanf("%1d", &arr[i][j]);
}
}
for(i=0;i<y;i++)
{
for(j=0;j<x;j++)
{
if(arr[i][j] == 0)
{
if(arr[i][j-1] != 2)
{
while(arr[i][j+k] == 0 && j + k < x)
{
if(arr[i][j+k] == 2)
{
w = 0;
h = 0;
continue;
}
w++;
k++;
}
k = 0;
while(arr[i+k][j] == 0 && i + k < y)
{
if(arr[i+k][j] == 2)
{
w = 0;
h = 0;
continue;
}
h++;
k++;
}
k = 0;
sum = w* h;
if(max<sum)
{
max = sum;
// printf("w, h : %d %d\n", w, h);
}
w = 0;
h = 0;
sum = 0;
}
}
}
}
printf("%d",max);
}