#include<stdio.h>
#include<algorithm>
using namespace std;

#define NMAX 103

char v[NMAX][NMAX];
int sol,viz[NMAX][NMAX];

void dfs(int x,int y,int s)
{
    if(s>sol)
        sol=s;
    viz[x][y]=1;

    if(v[x+1][y]=='.'&&!viz[x+1][y])
        dfs(x+1,y,s+1);
    if(v[x][y+1]=='.'&&!viz[x][y+1])
        dfs(x,y+1,s+1);
}


int main()
{

    //freopen("date.in","r",stdin);
    int n,m,i,j;
    scanf("%d%d\n",&n,&m);


    for(i=1;i<=n;++i)
    {
        for(j=1;j<=m;++j)
            scanf("%c",&v[i][j]);
        scanf("\n");
    }

   dfs(1,1,1);

    printf("%d\n",sol);
    return 0;
}