#include <iostream>

using namespace std;

int n, m, smax = 0, v[102][102];
char a[102][102];

int maxim (int aa, int bb, int cc)
{
    if ( aa >= bb && aa > cc )
        return aa;
    if ( bb >= aa && bb > cc )
        return bb;
    return cc;
}

int main()
{
    cin >> n >> m;
    for (int i = 1; i <= n; i ++ )
        for ( int j = 1; j <= m; j ++ )
            cin >> a[i][j];
    if ( a[1][1] == '.' )
    {
    v[1][1] = 1;
    for (int i = 1; i <= n; i ++ )
        for ( int j = 1; j <= m; j ++ )
        {
            if ( a[i+1][j] == '.' )
            {
                v[i+1][j] = v[i][j] + 1;
            }
            if ( a[i][j+1] == '.' )
                v[i][j+1] = v[i][j] + 1;
            if ( v[i][j] > smax )
                smax = v[i][j];
        }
    }
    cout << smax;
    return 0;
}