#include<stdio.h>

int main(){
	int tile[22][22],x,y,flag,W,H,i,j;
	char c;
	
	while(0<=scanf("%d%d",&W,&H)){
		if(W==0 && H==0){
			break;
		}
		
		for(i=0;i<22;i++){
			for(j=0;j<22;j++){
				tile[i][j]='#';
			}
		}
		
		for(i=1;i<=H;i++){
			for(j=1;j<=W;j++){
				scanf(" %c ",&tile[j][i]);
				if(tile[j][i]=='\n'){
					scanf("%c",&tile[j][i]);
				}
			}
		}
		
/* 		for(i=1;i<=H;i++){
			for(j=1;j<=W;j++){
				printf("%c ",tile[j][i]);
			}
			printf("\n");
		}
 */		
		flag=0;
		while(flag==0){
			flag=1;
			for(i=1;i<=H;i++){
				for(j=1;j<=W;j++){
					if(tile[j][i]=='.' && (tile[j+1][i]=='@' || tile[j-1][i]=='@' || tile[j][i-1]=='@' || tile[j][i+1]=='@')){
						tile[j][i]='@';
						flag=0;
					}
				}
			}
		}
		
		flag=0;
		for(i=1;i<=H;i++){
			for(j=1;j<=W;j++){
				if(tile[j][i]=='@') ++flag;
			}
		}
	
		printf("%d\n",flag);
	}
	
	return 0;
}