#include <iostream>
using namespace std;
bool in(int row,int col,int crow,int cho)
{
const int dir[9][2]={{0 ,0},{-1,-2},{-2,-1},{-1,2},{1,2},{2,1},{2,-1},{-1,-2}};
for(int i=0;i<9;++i)
{
if(dir[i][0]+crow==row&&dir[i][1]+cho==col)
{
return true;
}
}
return false;
}
int main (void)
{
int n,m,a,b;
cin>>n>>m>>a>>b;
long long arr[50][50];
for(int i=1;i<=m;++i)
{
if(in(0,i,a,b))
{
continue;
}
arr[0][i]=1;
}
for(int i=1;i<=n;++i)
{
if(in(i,0,a,b)){
continue;
}
arr[i][0]=1;
}
for(int i=1;i<=n;++i) {
for (int j = 1; j <= m; ++j)
{
if(!in(i,j,a,b)) {
arr[i][j]=arr[i-1][j]+arr[i][j-1];
}
}
}
cout<<arr[n][m];
return 0;
}