#include<iostream>
using namespace std;
bool vis[25][25];
int map[25][25];
int x[]={0,-2,-1,1,2,2,1,-1,-2};
int y[]={0,1,2,2,1,-1,-2,-2,-1};
int main()
{
int a,b,n,m;
ios::sync_with_stdio(0);
cin>>a>>b>>n>>m;
a+=2,b+=2,n+=2,m+=2;
map[2][2]=1;
vis[n][m]=1;
for(int i=1;i<=8;i++)
vis[n+x[i]][m+y[i]]=1;
for(int i=2;i<=a;i++)
for(int j=2;j<=b;j++){
if(!vis[i][j])
map[i][j]=max(map[i][j],map[i][j-1]+map[i-1][j]);
}
cout<<map[a][b];
return 0;
}