#include<bits/stdc++.h>
using namespace std;
int x,y,ans=0;
char a[501][501];
int fx[4]={0,1,0,-1};
int fy[4]={1,0,-1,0};
void dfs(int ax,int ay){
	for(int i=0;i<=3;i++){
		int tx=ax+fx[i];
	    int ty=ay+fy[i];
		if((tx>=1&&tx<=x&&ty>=1&&ty<=y)&&a[tx][ty]=='0'){
			a[tx][ty]='*';
			dfs(tx,ty);
		}
	}
}
int main(){
    cin>>x>>y;
    for(int i=1;i<=x;i++){
    	for(int j=1;j<=y;j++){
    	    cin>>a[i][j];
        }
    }
    for(int i=1;i<=x;i++){
    	for(int j=1;j<=y;j++){
    	    if((i==1||i==x||j==1||j==y)&&a[i][j]=='0'){
    	    	a[i][j]='*';
    	    	dfs(i,j);
    	    }
        }
    }
    for(int i=1;i<=x;i++){
    	for(int j=1;j<=y;j++){
    	    if(a[i][j]=='0'){
    	    	ans++;
    	    }
        }
    }
    cout<<ans;
	return 0;
}

/**************************************************************
	Problem: 1913
	User: zengdongxin
	Language: C++
	Result: Accepted
	Time:35 ms
	Memory:2320 kb
****************************************************************/