#include <iostream>
using namespace std;
int main()
{
long long int dp[20][20]={0};
int horse[24][24]={0};
int bn,bm,hn,hm;
cin>>bn>>bm>>hn>>hm;
hn=hn+2;
hm=hm+2;
horse[hn][hm]=horse[hn+2][hm+1]=horse[hn+1][hm+2]=
horse[hn-1][hm+2]=horse[hn-2][hm+1]=horse[hn-2][hm-1]=horse[hn-1][hm-2]=
horse[hn+1][hm-2]=horse[hn+2][hm-1]=1;
int i=0,j=0;
while(horse[2][i+2]!=1&&i<=bm) dp[0][i++]=1;
while(horse[j+2][2]!=1&&j<=bn) dp[j++][0]=1;
for(int x=1;x<=bn;x++)
{
for(int y=1;y<=bm;y++)
{
if(horse[x+2][y+2]!=1) dp[x][y]=dp[x-1][y]+dp[x][y-1];
}
}
cout<<dp[bn][bm];
return 0;
}