#include <stdio.h>
#include <string.h>

#define NMAX 111

char A[NMAX][NMAX];
int L[NMAX][NMAX];
int M, N, i, j, lmax;

int main() {
	scanf("%d %d", &M, &N);
	for (i = 1; i <= M; i++)
		scanf("%s", &(A[i][1]));

	memset(L, 0, sizeof(L));

	for (i = 1; i <= M; i++)
		for (j = 1; j <= N; j++)
			if (A[i][j] == '.') {
				if (L[i - 1][j] > L[i][j - 1])
					L[i][j] = 1 + L[i - 1][j];
				else
					L[i][j] = 1 + L[i][j - 1];
				if (L[i][j] == 1 && (i > 1 || j > 1))
					L[i][j] = 0;
			}

	for (lmax = 0, i = 1; i <= M; i++)
		for (j = 1; j <= N; j++)
			if (L[i][j] > lmax)
				lmax = L[i][j];

	printf("%d\n", lmax);

	return 0;
}