#include <bits/stdc++.h>
using namespace std;
int n, ans, m;
int a[505][505];
char op;
int d[4][2]={{1, 0}, {0, 1}, {0, -1}, {-1, 0}};
void dfs(int x, int y) {
if (a[x][y] || x < 1 || y < 1 || x > n || y > m) {
return;
}
a[x][y] = 1;
ans--;
for(int i=0;i<4;i++){
dfs(x+d[i][0], y+d[i][1]);
}
return;
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin >> n>>m;
ans = n*m;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
cin>>op;
if(op=='0'){
a[i][j] = 0;
}else{
ans--;
a[i][j] = 1;
}
}
}
for(int i=1;i<=m;i++){
if (!a[1][i]) {
dfs(1, i);
}
if (!a[n][i]) {
dfs(n, i);
}
}
for (int i = 1; i <= n; i++) {
if (!a[i][1]) {
dfs(i, 1);
}
if (!a[i][m]) {
dfs(i, n);
}
}
cout << ans;
return 0;
}