#include<cstdio>
#include<iostream>
using namespace std;
char c;
int n,m,q[10000002][2];
int xy[8][2]={{0,1},{0,-1},{-1,1},{-1,0},{-1,-1},{1,1},{1,0},{1,-1}};
bool vis[31625][31625];
void bfs(int x,int y){
vis[x][y]=0;
int head=1,tail=1;
q[head][0]=x;q[head][1]=y;
do{
for(int i=0;i<=7;i++){
int x1=q[head][0]+xy[i][0],y1=q[head][1]+xy[i][1];
if(x1>=1&&x1<=n&&y1>=1&&y1<=m&&vis[x1][y1]){
q[++tail][0]=x1;q[tail][1]=y1;
vis[x1][y1]=0;
}
}
head++;
}while(head<=tail);
}
int main(){
while(scanf("%d%d",&n,&m),n&&m){
int ans=0;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>c;
if(c=='@')vis[i][j]=1;
if(c=='*')vis[i][j]=0;
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(vis[i][j]){
bfs(i,j);ans++;
}
}
}
printf("%d\n",ans);
}
}