#include<bits/stdc++.h>
using namespace std;
int w,h,b,c,ans=1;
char a[21][21];
int fx[5]={0,1,0,-1};
int fy[5]={1,0,-1,0};
void dfs(int x,int y){
for(int i=0;i<=3;i++){
int tx=x+fx[i];
int ty=y+fy[i];
if(tx>0&&tx<=h&&ty>0&&ty<=w&&a[tx][ty]=='.'){
a[tx][ty]='#';
ans++;
dfs(tx,ty);
}
}
}
int main(){
cin>>w>>h;
for(int i=1;i<=h;i++){
for(int j=1;j<=w;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=h;i++){
for(int j=1;j<=w;j++){
if(a[i][j]=='@'){
b=i;
c=j;
a[i][j]='#';
break;
}
}
}
dfs(b,c);
cout<<ans;
return 0;
}
/**************************************************************
Problem: 1897
User: chenjingqi
Language: C++
Result: Accepted
Time:16 ms
Memory:2072 kb
****************************************************************/