#include <iostream>
#include <vector>

using namespace std;

int H, W;

void solve()
{
    vector<string> map(H);
    vector<vector<int> > sum(H, vector<int>(W + 1, 0));
    int ans = 0;

    for (int i = 0; i < H; i++)
        cin >> map[i];

    for (int i = 0; i < H; i++) {
        for (int j = W - 1; j >= 0; j--) {
            if (map[i][j] == '*') 
                sum[i][j] = 0;
            else
                sum[i][j] = sum[i][j + 1] + 1;
        }
    }

    for (int i = 0; i < H; i++)
        for (int j = 0; j < W; j++) {
            if (map[i][j] == '.') {
                int w = sum[i][j], h = 1;
                int area = w * h;

                while (h + i < H && map[h + i][j] == '.') {
                    w = min(w, sum[h + i][j]);
                    h++;
                    area = max(area, h * w);
                }
                ans = max(ans, area);
            }
        }
    cout << ans << endl;
}

int main()
{
    while (cin >> H >> W, H || W) {
        solve();
    }

    return 0;
}