#include<bits/stdc++.h>
using namespace std;
char a[202][202];
int n,ay[5]={0,-1,1,0,0},ax[5]={0,0,0,-1,1},m,num=1,s1,s2,e1,e2;
void print(){
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cout<<a[i][j];
}
cout<<endl;
}
cout<<endl;
}
int find(int x,int y){
if(x==e1 && y==e1){
a[x][y]='#';
num++;
cout<<x<<','<<y<<endl<<num<<":";
find(n,m);
}
for(int i=1;i<=4;i++){
int tx=x+ax[i];
int ty=y+ay[i];
if(tx>=0 && ty>=0 && a[tx][ty]=='o' && tx<=n && ty<=m){
a[tx][ty]='#';
cout<<tx<<','<<ty<<"->";
find(tx,ty);
}else{
a[tx][ty]='#';
//print();
find(x,y);
}
}
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
cin>>s1>>s2>>e1>>e2;
cout<<num<<":";
find(s1,s2);
return 0;
}
24行的判断一直为false,如有需要,dalao们自行打开31行DEBUG