#include<stdio.h>
bool heat(int c1,int c2,int x,int y){
if((x==c1-1||x==c1+1)&&(y==c2-2||y==c2+2)) return 1;
if((x==c1-2||x==c1+2)&&(y==c2-1||y==c2+1)) return 1;
if(x==c1&&y==c2) return 1;
return 0;
}
int hou(int x,int y,int n,int m,int c1,int c2,int (*way)[100]){
if(x==n&&y==m) return 1;
if(x>n||y>m) return 0;
if(!heat(c1,c2,x,y)){
if(way[x][y+1]!=0)
return way[x][y+1]+(way[x+1][y]=hou(x+1,y,n,m,c1,c2,way));
if(way[x+1][y]!=0)
return (way[x][y+1]=hou(x,y+1,n,m,c1,c2,way))+way[x+1][y];
return (way[x][y+1]=hou(x,y+1,n,m,c1,c2,way))+(way[x+1][y]=hou(x+1,y,n,m,c1,c2,way));
}
else return 0;
}
int main(){
int m,n,c1,c2,way[100][100],i=0,j=0;
scanf("%d%d%d%d",&n,&m,&c1,&c2);
for(;i<100;i++){
for(;j<100;j++) way[i][j]=0;
}
printf("%d\n",hou(0,0,n,m,c1,c2,way));
return 0;
}