#include<iostream>
using namespace std;
int max(int a, int b)
{
if (a > b)
return a;
else
return b;
}
int main()
{
int m, n, a, b;
cin >> m >> n >> a >> b;
cout << endl;
long long arr[25][25];
for (int i = 0; i < m + 1; i++)
{
for (int j = 0; j < n + 1; j++)
{
arr[i][j] = 1;
}
}
arr[a][b] = 0;
for (int i = -3; i < 4; i++)
{
for (int j = -3; j < 4; j++)
{
int n1 = abs(i), n2 = abs(j);
if ((n1 + n2 == 3)&&(max(n1, n2) == 2)&&(max(a+i,b+j)>-1))
arr[a + i][b + j] = 0;
}
}
for (int i = 1; i < m + 1; i++)
{
for (int j = 1; j < n + 1; j++)
{
if (arr[i][j] != 0)
{
if (i > 0 && j > 0)
arr[i][j] = arr[i - 1][j] + arr[i][j - 1];
else
arr[i][j] = 1;
}
}
}
cout << arr[m][n];
}