#include <bits/stdc++.h>
using namespace std;
#define y1 aaaa
int n, m, y1, x1, y2, x2, visited[301][301], y, x, cnt = 1;
char a[301][301];
bool isEnd;
vector<pair<int, int>> v;
queue<pair<int,int>> q;
int dy[] = {-1, 0, 1, 0};
int dx[] = {0, 1, 0, -1};
void dfs(int y, int x){
if(y == y2 - 1 && x == x2 - 1){
isEnd = true;
return;
}
for(int i = 0; i < 4; i++){
int ny = y + dy[i];
int nx = x + dx[i];
if(ny < 0 || ny >= n || nx < 0 || nx >= m || visited[ny][nx]) continue;
visited[ny][nx] = 1;
if(a[ny][nx] == '1'){
v.push_back({ny, nx});
continue;
}
dfs(ny, nx);
}
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
cin >> n >> m >> x1 >> y1 >> x2 >> y2;
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
cin >> a[i][j];
}
}
while(true){
fill(&visited[0][0], &visited[0][0] + 301 * 301, 0);
v.clear();
visited[y1 - 1][x1 - 1] = 1;
dfs(y1 - 1, x1 - 1);
if(isEnd) break;
for(auto b : v) a[b.first][b.second] = '0';
cnt++;
}
cout << cnt << '\n';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgeTEgYWFhYQppbnQgbiwgbSwgeTEsIHgxLCB5MiwgeDIsIHZpc2l0ZWRbMzAxXVszMDFdLCB5LCB4LCBjbnQgPSAxOwpjaGFyIGFbMzAxXVszMDFdOwpib29sIGlzRW5kOwp2ZWN0b3I8cGFpcjxpbnQsIGludD4+IHY7CnF1ZXVlPHBhaXI8aW50LGludD4+IHE7CmludCBkeVtdID0gey0xLCAwLCAxLCAwfTsKaW50IGR4W10gPSB7MCwgMSwgMCwgLTF9OwoKdm9pZCBkZnMoaW50IHksIGludCB4KXsKICAgIGlmKHkgPT0geTIgLSAxICYmIHggPT0geDIgLSAxKXsKICAgICAgICBpc0VuZCA9IHRydWU7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgCiAgICBmb3IoaW50IGkgPSAwOyBpIDwgNDsgaSsrKXsKICAgICAgICBpbnQgbnkgPSB5ICsgZHlbaV07CiAgICAgICAgaW50IG54ID0geCArIGR4W2ldOwogICAgICAgIGlmKG55IDwgMCB8fCBueSA+PSBuIHx8IG54IDwgMCB8fCBueCA+PSBtIHx8IHZpc2l0ZWRbbnldW254XSkgY29udGludWU7CiAgICAgICAgdmlzaXRlZFtueV1bbnhdID0gMTsKICAgICAgICBpZihhW255XVtueF0gPT0gJzEnKXsKICAgICAgICAgICAgdi5wdXNoX2JhY2soe255LCBueH0pOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgZGZzKG55LCBueCk7CiAgICB9Cn0KaW50IG1haW4oKXsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShOVUxMKTsgY291dC50aWUoTlVMTCk7CiAgICBjaW4gPj4gbiA+PiBtID4+IHgxID4+IHkxID4+IHgyID4+IHkyOwogICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgZm9yKGludCBqID0gMDsgaiA8IG07IGorKyl7CiAgICAgICAgICAgIGNpbiA+PiBhW2ldW2pdOwogICAgICAgIH0KICAgIH0KICAgIAogICAgd2hpbGUodHJ1ZSl7CiAgICAgICAgZmlsbCgmdmlzaXRlZFswXVswXSwgJnZpc2l0ZWRbMF1bMF0gKyAzMDEgKiAzMDEsIDApOwogICAgICAgIHYuY2xlYXIoKTsKICAgICAgICAKICAgICAgICB2aXNpdGVkW3kxIC0gMV1beDEgLSAxXSA9IDE7CiAgICAgICAgZGZzKHkxIC0gMSwgeDEgLSAxKTsKICAgICAgICAKICAgICAgICBpZihpc0VuZCkgYnJlYWs7CiAgICAgICAgCiAgICAgICAgZm9yKGF1dG8gYiA6IHYpIGFbYi5maXJzdF1bYi5zZWNvbmRdID0gJzAnOwogICAgICAgIGNudCsrOwogICAgfQogICAgY291dCA8PCBjbnQgPDwgJ1xuJzsKfQ==