#include<iostream>
using namespace std;
int m, n, x, y;
int cnt = 0;
bool check(int a, int b, int x, int y) {
return (a == x && b == y) || (a + 2 == x && b + 1 == y) || (a + 2 == x && b - 1 == y) ||
(a + 1 == x && b - 2 == y) || (a + 1 == x && b + 2 == y) || (a - 2 == x && b + 1 == y) ||
(a - 2 == x && b - 1 == y) || (a - 1 == x && b + 2 == y) || (a - 1 == x && b - 2 == y);
}
void dfs(int a, int b)
{
if (a == m && b == n)
{
cnt++;
return;
}
if (a > m || b > n)
{
return;
}
if (check(a, b, x, y)) {
return;
}
dfs(a + 1, b);
dfs(a, b + 1);
}
int main() {
cin >> m >> n >> x >> y;
dfs(0, 0);
cout << cnt << endl;
return 0;
}