while 1:

    H,W = list(map(int,input().split()))

    if H == 0: break

    A = [input() for i in range(H)]

    S = [[[0,0] for j in range(W)] for i in range(H)]

    ans = 0

    for h in range(H):

    	L = 0

        for w in range(W):

            if A[h][w] == ".":

                L += 1

            else:

                L = 0

            S[h][w][0] = L

            try: S[h][w][1] = S[h-1][w][1] + 1 if L > 0 else 0

            except: S[h][w][1] = 1 if L > 0 else 0

            if L*S[h][w][1] > ans:

                a = L

                for hi in range(1,S[h][w][1]):

                    a = min(a,S[h-hi][w][0])

                    ans = max(ans,a*(hi+1))

                    if a*S[h][w][1] < ans:

                    	break

    print(ans)
while 1:

	H,W = list(map(int,input().split()))

	if H == 0: break

	M = [input() for i in range(H)]

	A = [[0]*W for i in range(H)]

	B = [[0]*W for i in range(H)]

	ans = 0

	for h in range(H):

		L = 0

		for w in range(W):

			if M[h][w] == ".":

				L += 1

			else:

				L = 0

			A[h][w] = L

			try: B[h][w] = B[h-1][w] + 1 if L > 0 else 0

			except: B[h][w] = 1 if L > 0 else 0

			if L*B[h][w] > ans:

				a = L

				for hi in range(B[h][w]):

					a = min(a,A[h-hi][w])

					if a*B[h][w] <= ans:

						break

					ans = max(ans,a*(hi+1))

	print(ans)
while 1:
    H, W = list(map(int, input().split()))
    if H == 0:
        break
    A = [input() for i in range(H)]
    S = [[[0, 0] for j in range(W)] for i in range(H)]
    ans = 0
    for h in range(H):
        L = 0
        for w in range(W):
            if A[h][w] == ".":
                L += 1
            else:
                L = 0
            S[h][w][0] = L
            try:
                S[h][w][1] = S[h - 1][w][1] + 1 if L > 0 else 0
            except:
                S[h][w][1] = 1 if L > 0 else 0
            if L * S[h][w][1] > ans:
                a = L
                for hi in range(1, S[h][w][1]):
                    a = min(a, S[h - hi][w][0])
                    ans = max(ans, a * (hi + 1))
                    if a * S[h][w][1] < ans:
                        break
    print(ans)

while 1:
    H, W = list(map(int, input().split()))
    if H == 0:
        break
    M = [input() for i in range(H)]
    A = [[0] * W for i in range(H)]
    B = [[0] * W for i in range(H)]
    ans = 0
    for h in range(H):
        L = 0
        for w in range(W):
            if M[h][w] == ".":
                L += 1
            else:
                L = 0
            A[h][w] = L
            try:
                B[h][w] = B[h - 1][w] + 1 if L > 0 else 0
            except:
                B[h][w] = 1 if L > 0 else 0
            if L * B[h][w] > ans:
                a = L
                for hi in range(B[h][w]):
                    a = min(a, A[h - hi][w])
                    if a * B[h][w] <= ans:
                        break
                    ans = max(ans, a * (hi + 1))
    print(ans)

-    A = [input() for i in range(H)] -    S = [[[0, 0] for j in range(W)] for i in range(H)] +    M = [input() for i in range(H)] +    A = [[0] * W for i in range(H)] +    B = [[0] * W for i in range(H)] -            if A[h][w] == ".": +            if M[h][w] == ".": -            S[h][w][0] = L +            A[h][w] = L -                S[h][w][1] = S[h - 1][w][1] + 1 if L > 0 else 0 +                B[h][w] = B[h - 1][w] + 1 if L > 0 else 0 -                S[h][w][1] = 1 if L > 0 else 0 -            if L * S[h][w][1] > ans: +                B[h][w] = 1 if L > 0 else 0 +            if L * B[h][w] > ans: -                for hi in range(1, S[h][w][1]): -                    a = min(a, S[h - hi][w][0]) +                for hi in range(B[h][w]): +                    a = min(a, A[h - hi][w]) +                    if a * B[h][w] <= ans: +                        break -                    if a * S[h][w][1] < ans: -                        break