#include <iostream>
using namespace std;
int HX[]={-2,-2,-1,-1,0,1,1,2,2};
int HY[]={1,-1,2,-2,0,2,-2,1,-1};
int main()
{
int bx,by,hx,hy;
long long mapp[21][21];
cin>>bx>>by>>hx>>hy;
for(int p=0;p<21;p++)
{
for(int q=0;q<21;q++)
{
mapp[p][q]=0;
}
}
for(int i=0;i<=21;i++)
{
mapp[i][0]=1;
mapp[0][i]=1;
}
mapp[0][0]=0;
for(int i=0;i<9;i++)
{
if(hx+HX[i]>0&&hy+HY[i]>0&&hx+HX[i]<=bx&&hy+HY[i]<=by)
{
mapp[hx+HX[i]][hy+HY[i]]=-1;
}
else if(hx+HX[i]==0)
{
for(int temp=hy+HY[i];temp<21;temp++)
{
mapp[0][temp]=0;
}
}
else if(hy+HY[i]==0)
{
mapp[hx+HX[i]][hy+HY[i]]=0;
for(int temp=hx+HX[i]+1;temp<21;temp++)
{
mapp[temp][0]=0;
}
}
else
{
continue;
}
}
for(int i=1;i<=bx;i++)
{
for(int j=1;j<=by;j++)
{
if(mapp[i][j]==-1)
{
mapp[i][j]=0;
}
else
{
mapp[i][j]=mapp[i-1][j]+mapp[i][j-1];
}
}
}
cout <<mapp[bx][by];
return 0;
}