/******************************************************************************
Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, Java, PHP, Ruby, Perl,
C#, OCaml, VB, Swift, Pascal, Fortran, Haskell, Objective-C, Assembly, HTML, CSS, JS, SQLite, Prolog.
Code, Compile, Run and Debug online from anywhere in world.
*******************************************************************************/
#include<bits/stdc++.h>
using namespace std;
using PII=pair<int,int>;
constexpr int N=20;
int f[N][N],yY[N][N];
vector<PII> q;
int n,m,a,b,c,d;
int dq[4][2]={{0,-1},{-1,0},{0,1},{1,0}};
bool sss;
void dfs(int x,int y){
if(x==c&&y==d)
{
sss=true;
for(auto i=0;i<q.size();i++) cout<<"("<<q[i].first<<","<<q[i].second<<")"<<"->";
cout<<"("<<c<<","<<d<<")";
cout<<endl;
}
for(int i=0;i<4;i++)
{
int xx=x+dq[i][0],yy=y+dq[i][1];
if(xx<=n&&xx>=1&&yy<=m&&yy>=1&&f[xx][yy]==1&&yY[xx][yy]==0)
{
q.push_back({x,y});
yY[x][y]=1;
dfs(xx,yy);
q.pop_back();
yY[x][y]=0;
}
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>f[i][j];
}
}
cin>>a>>b>>c>>d;yY[a][b]=1;
dfs(a,b);
if(!sss)cout<<"-1"<<endl;
return 0;
}