#include <fstream>
using namespace std;
int i, j, v[27][27], s, sol, x, nr, f[10], c[2][26*26+1], ic, jc, cantitatea[27][27], clienti, u, p, iv, jv;
char ch1, ch2, ifin, jfin, n, m, ist, jst, d;
char di[] = {0, 0, -1, -1, -1, 1, 1, 1};
char dj[] = {1, -1, -1, 0, 1, -1, 0, 1};
int val[] = {200, 100, 50, 20, 10, 5, 2, 1};
ifstream fin("vending_machine_5.in");
ofstream fout("vending_machine_5.out");
int main(){
fin>>n>>m;
n = n - 'A' + 1;
m = m - '1' + 1;
fin>>ist>>jst>>ifin>>jfin;
ist = ist - 'A' + 1;
ifin = ifin - 'A' + 1;
jst = jst - '1' + 1;
jfin = jfin - '1' + 1;
p = u = 1;
c[0][1] = ist;
c[1][1] = jst;
v[ist][jst] = 1;
while(p<=u){
ic = c[0][p];
jc = c[1][p];
for(d=0;d<=7;d++){
iv = ic + di[d];
jv = jc + dj[d];
if(iv>=1 && iv<=n && jv>=1 && jv<=m && v[iv][jv] == 0){
u++;
c[0][u] = iv;
c[1][u] = jv;
v[iv][jv] = v[ic][jc]+1;
if(iv == ifin && jv == jfin){
fout<<v[iv][jv]-1;
return 0;
}
}
}
p++;
}
return 0;
}