#include<bits/stdc++.h>
#define R register
using namespace std;
int w,h,s1,s2;
char a[120][120];
int sum;
void dfs(int x,int y){
    if(x<1||y<1||x>h||y>w||a[x][y]=='#')
		return;
	sum++;	
	a[x][y]='#';
	dfs(x+1,y);
	dfs(x-1,y);
	dfs(x,y-1);
	dfs(x,y+1);
}
template <typename T> void read(T &t){
	t=0;
	char ch=getchar();
	int f=1;
	while(ch<'0'||ch>'9'){
		if(ch=='-')f=-1;
		ch=getchar();
	}
	do{
		(t*=10)+=ch-'0';
		ch=getchar();
	}while(ch>='0'&&ch<='9');
	t*=f;
}
int main(){
		sum=0;
		read(w);
		read(h);
		for(R int i=1;i<=h;i++){
			for(R int j=1;j<=w;j++){
				cin>>a[i][j];
				if(a[i][j]=='@'){
					s1=i;
					s2=j;
				}
			}
		}
        dfs(s1,s2);
        printf("%d\n",sum);
	return 0;
}

/**************************************************************
	Problem: 1897
	User: admin
	Language: C++
	Result: Accepted
	Time:21 ms
	Memory:2092 kb
****************************************************************/