#include<iostream>
using namespace std;
int main() {
int a, b, x, y, h;
h = 0;
cin >> a >> b >> x >> y;
int dt[21][21] = {0};
bool jd[21][21] = { true };
for (int i = 0; i < 21; ++i) {
for (int j = 0; j < 21; ++j) {
jd[i][j] = true;
}
}
jd[x][y] = false;
int mdhd[8][2] = {
{2,1},{2,-1},
{1,2},{1,-2},
{-1,2},{-1,-2},
{-2,1},{-2,-1}
};
for (int i = 0; i < 8; ++i) {
int nx, ny;
nx = mdhd[i][0] + x;
ny = mdhd[i][1] + y;
if (nx >= 0 && nx <= a && ny >= 0 && ny <= b) {
jd[nx][ny] = false;
}
}
if (jd[0][0]) {
dt[0][0] = 1;
}
for (int j = 1; j <= b; ++j) {
if (jd[0][j]) {
dt[0][j] = dt[0][j - 1];
}
}
for (int i = 1; i <= a; ++i) {
if (jd[i][0]) {
dt[i][0] = dt[i - 1][0];
}
}
for (int i = 1; i <= a; ++i) {
for (int j = 1; j <= b; ++j) {
if (jd[i][j]) {
dt[i][j] = dt[i][j - 1] + dt[i - 1][j];
}
}
}
cout << dt[a][b] << endl;
/*
for (int i = 0; i < 21; ++i) {
for (int j = 0; j < 21; ++j) {
cout << dt[i][j] << ' ';
}
cout << endl;
}*/
return 0;
}
