#include <iostream>

using namespace std;
int N,M,Max=0;
int T[101][101];
char Mat[101][101];
void Read(){
    int i,j;
    cin>>N>>M;
    for(i=1;i<=N;i++){
        for(j=1;j<=M;j++)
            cin>>Mat[i][j];
    }
}
void Fun(int x,int y,int k){
    T[x][y]=k;
    if(Max<k)
        Max=k;
    if(Mat[x+1][y]=='.'&&T[x+1][y]==0)
        Fun(x+1,y,k+1);
    if(Mat[x][y+1]=='.'&&T[x][y+1]==0)
        Fun(x,y+1,k+1);
}
int main()
{
    Read();
    Fun(1,1,1);
    cout<<Max;
    return 0;
}