#include <bits/stdc++.h>
using namespace std;
int h,w;
int v[101][101]={-1};//初始化
int d[4][2]={{0,1},{1,0},{0,-1},{-1,0}};//定义方向数组
vector<pair<int ,int>>dp;//路径记录数组
void dfs(int x,int y){
if(x==h-1&&y==w-1){
for(int i=0;i<dp.size();i++){
cout<<"("<<dp[i].first<<","<<dp[i].second<<")"<<'\n';
} return;
}
for(int i=0;i<4;i++){
if(v[x+d[i][0]][y+d[i][1]]==0&&x+d[i][0]<=h-1&&y+d[i][1]<=w-1&&x+d[i][0]>=0&&y+d[i][1]>=0){
v[x+d[i][0]][y+d[i][1]]=1;
dp.push_back(pair(x+d[i][0],y+d[i][1]));
dfs(x+d[i][0],y+d[i][1]);
v[x+d[i][0]][y+d[i][1]]=0;//回溯
dp.pop_back();//删除dp路径
}
}
}
int main() {
cin>>h>>w;
for(int i=0;i<h;i++){
for(int j=0;j<w;j++){
cin>>v[i][j];
}
}
// for(int i=0;i<h;i++){
// for(int j=0;j<w;j++){
// cout<<v[i][j];
// }
// }
dp.push_back(pair(0,0));
dfs(0,0);
}
// 64 位输出请用 printf("%lld")