#include<bits/stdc++.h>
using namespace std;
const int fx[4]={0,1,0,-1},fy[4]={1,0,-1,0};
int n,m;

struct churui{
	int x,y;
};
queue<churui> q;
char a[505][505];
int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
			if((i==1||j==1||i==n||j==m)&&a[i][j]=='0') q.push((churui){i,j});
		}
	}
	
	while(!q.empty()){
		int tmdx=q.front().x;
		int tmdy=q.front().y;
		q.pop();
		for(int i=0;i<=3;i++){
			int tx=tmdx+fx[i],ty=tmdy+fy[i];
			cout<<tx<<' '<<ty<<' '<<(a[tx][ty]=='0')<<endl;
			if(tx>=0&&tx<=n&&ty>=0&&ty<=m&&a[tx][ty]=='0'){
				a[tx][ty]='1';
				//cout<<114514<<endl;
				q.push((churui){tx,ty});
			}
		}
	}
	int ans=0;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			//cout<<a[i][j];
			if(a[i][j]=='0') ans++;
		}
		//cout<<endl;
	}
	cout<<ans; 
	return 0;
}

/**************************************************************
	Problem: 1913
	User: liangshinan
	Language: C++
	Result: Output Limit Exceed
****************************************************************/