#include<stack>
#include<cstdio>
#include<algorithm>

using namespace std;

int calcMaxAreaOfHistgram(int h[],int n)
{
	stack< pair<int,int> > st;

	h[n]=0;
	int amax=0;
	for(int i=0;i<=n;i++){
		if(st.empty() || st.top().second<h[i])
			st.push(make_pair(i,h[i]));
		else if(st.top().second>h[i]){
			int iback,hback;
			do{
				iback=st.top().first;
				hback=st.top().second;
				amax=max(amax,(i-iback)*hback);
				st.pop();
			}while(!st.empty() && st.top().second>h[i]);
			st.push(make_pair(iback,h[i]));
		}
	}

	return amax;
}

int main()
{
	int w,h;
	static int field[501][502];

	while(scanf("%d%d ",&h,&w),h){
		for(int i=0;i<h;i++){
			for(int j=0;j<w;j++)	field[i][j]=getchar();
			getchar();
		}

		for(int j=0;j<w;j++)	field[0][j]=field[0][j]=='.';
		for(int i=1;i<h;i++){
			for(int j=0;j<w;j++){
				if(field[i][j]=='*')	field[i][j]=0;
				else	field[i][j]=field[i-1][j]+1;
			}
		}

		int amax=0;
		for(int i=0;i<h;i++)	amax=max(amax,calcMaxAreaOfHistgram(field[i],w));
		printf("%d\n",amax);
	}

	return 0;
}