#3.4WA!DP求调
#include<iostream>
using namespace std;
const int fx[8]={-2,-1,1,2,2,1,-1,-2};
const int fy[8]={1,2,2,1,-1,-2,-2,-1};
bool a[21][21];
long long f[21][21];
int main()
{
int bx,by,mx,my;
cin>>bx>>by>>mx>>my;
a[mx][my]=1;
for(int i=0;i<=bx;i++) f[i][0]=1;
for(int i=0;i<=by;i++) f[0][i]=1;
f[mx][my]=0;
for(int i=0;i<8;i++) {
int px=mx+fx[i],py=my+fy[i];
a[px][py]=1;
f[px][py]=0;
}
for(int i=1;i<=bx;i++){
for(int j=1;j<=by;j++){
if(a[i][j]) continue;
f[i][j]=f[i-1][j]+f[i][j-1];
}
}
cout<<f[bx][by];
return 0;
}