#include <stdio.h>
#include <stack>
#include <utility>
using namespace std;
typedef pair<int,int> pi;
#define F first
#define S second
#define MP make_pair
const int N=5e2+10;
int main(){
    int n,m,a[N][N],now,ans;
    pi temp;
    stack<pi> s;
    char c[N];
    while(true){
        scanf("%d%d",&n,&m);
        if(n==0&&m==0)return 0;
        ans=0;
        for(int i=0;i<n;i++){
            scanf("%s",c);
            now=0;
            for(int j=0;j<m;j++){
                if(c[j]=='.')now++;
                else now=0;
                a[i][j]=now;
            }
        }
        for(int j=0;j<m;j++){
            while(!s.empty())s.pop();
            for(int i=0;i<n;i++){
                while(!s.empty()){
                    if(s.top().F>a[i][j]){
                        temp=s.top();
                        s.pop();
                        if(s.empty())ans=max(ans,temp.F*i);
                        else ans=max(ans,temp.F*(i-1-s.top().S));
                    }
                    else break;
                }
                s.push(MP(a[i][j],i));
            }
            while(!s.empty()){
                temp=s.top();
                s.pop();
                if(s.empty())ans=max(ans,temp.F*n);
                else ans=max(ans,temp.F*(n-s.top().S-1));
                
            }
        }
        printf("%d\n",ans);
    }
}
