#include<stdio.h>
#define MAX 21
int main(){
int n,m,a,b;
scanf("%d %d %d %d",&n,&m,&a,&b);
double dp[MAX][MAX]={0};
int moves[][2]={{1,-2},{2,-1},{2,1},{1,2},{-1,2},{-2,1},{-2,-1},{-1,-2}};
int blocked[MAX][MAX]={0};
blocked[a][b]=1;
for(int k=0;k<8;k++){
int x=a+moves[k][0];
int y=b+moves[k][1];
if(x>0&&x<=n&&y>0&&y<=m)
blocked[x][y]=1;
}
dp[0][0]=1;
for(int i=0;i<=n;i++){
for(int j=0;j<=m;j++){
if(blocked[i][j])
continue;
if(i>0)
dp[i][j]+=dp[i-1][j];
if(j>0)
dp[i][j]+=dp[i][j-1];
}
}
printf("%.0f",dp[n][m]);
return 0;
}