#include
#include
using namespace std;
int main() {
int redovi, koloni;
cin >> redovi >> koloni;
int r, k;
cin >> r >> k;
r--; // indeksite ni zapocnuvaat od indeks 0, dodeka vo zadacata ni se dadeni od 1 deka pocnuvaat
k--;
int matrica[redovi][koloni];
int poseteno[redovi][koloni];
for(int i = 0; i < redovi; i++) {
for(int j = 0; j < koloni; j++) {
poseteno[i][j] = 0;
}
}
queue Q;
Q.push(r);
Q.push(k);
Q.push(0);
poseteno[r][k] = 1;
int di[] = {+1, -1, 0, 0};
int dj[] = {0, 0, -1, +1};
while(Q.size() > 0) {
int ci = Q.front();
Q.pop();
int cj = Q.front();
Q.pop();
int ucenik = Q.front();
Q.pop();
matrica[ci][cj] = ucenik;
for(int i = 0; i < 4; i++) {
int ti = ci + di[i];
int tj = cj + dj[i];
if(ti >= 0 and ti < redovi and tj >= 0 and tj < koloni and poseteno[ti][tj] == 0) {
Q.push(ti);
Q.push(tj);
Q.push(ucenik + 1);
poseteno[ti][tj] = 1;
}
}
}
int posleden_ucenik = 0;
for(int i = 0; i < redovi; i++) {
for(int j = 0; j < koloni; j++) {
if(posleden_ucenik < matrica[i][j]) {
posleden_ucenik = matrica[i][j];
}
}
}
int kolku_ucenici = 0;
for(int i = 0; i < redovi; i++) {
for(int j = 0; j < koloni; j++) {
if(matrica[i][j] == posleden_ucenik) {
kolku_ucenici++;
}
}
}
cout << posleden_ucenik << endl;
cout << kolku_ucenici << endl;
return 0;
}