#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
****************************************************************/