#include<bits/stdc++.h>
using namespace std;
long long dp[50][50];
bool a[50][50];
int main()
{
int xb,yb;
int xh,yh;
cin>>xb>>yb>>xh>>yh;
for(int i=1;i<=xb;i++)
{
for(int j=1;j<=yb;j++)a[i][j]=true;
}
for(int i=1;i<=xb;i++)
{
for(int j=1;j<=yb;j++)dp[i][j]=0;
}
a[xh][yh]=false;
for(int i=0;i<=xb;i++)
{
for(int j=0;j<=yb;j++)
{
if((i==xh+1 && j==yh+2) || (i==xh+2 && j==yh+1)||(i==xh+2 && j==yh-1)||(i==xh+1 && j==yh-2)||(i==xh-1 && j==yh-2)||(i==xh-2 && j==yh-1)||(i==xh-2 && j==yh+1)||(i==xh-1 && j==yh+2))
{
a[i][j]=false;dp[i][j]=0;
}
else if(i==0 || j==0)
{
dp[i][j]=1;
}
}
}
dp[xh][yh]=0;
for(int i=0;i<=xb;i++)
{
for(int j=0;j<=yb;j++)
{
if(a[i][j]==true)
{
dp[i][j]=dp[i-1][j]+dp[i][j-1];
}
}
}
cout<<dp[xb][yb];
return 0;
}