#include <iostream>
using namespace std;
int main()
{
int h_x,h_y,w,h,yno = 0,xno = 0;
cin>>w>>h>>h_x>>h_y;
int h_ctrl[9][2] = {{0,0},{2,1},{1,2},{-1,2},{-2,1},{-2,-1},{-1,-2},{1,-2},{2,-1}};
int block[105][105] = {0};
for (int i = 0;i <= w;i += 1)
{
block[i][0] = 1;
}
for (int i = 0;i <= h;i += 1)
{
block[0][i] = 1;
}
for (int i = 1;i <= h ;i += 1)
{
for (int j = 1;j <= w;j += 1)
{
xno = 0;
yno = 0;
for (int k = 0;k < 9;k += 1)
{
if (j == h_x + h_ctrl[k][0] && i == h_y + h_ctrl[k][1])
{
xno = 1;
yno = 1;
break;
}
else if (j-1 == h_x + h_ctrl[k][0] && i == h_y + h_ctrl[k][1])
{
xno = 1;
}
else if (i-1 == h_y + h_ctrl[k][1] && j == h_x + h_ctrl[k][0])
{
yno = 1;
}
}
if (xno != 1)
{
block[i][j] += block[i][j-1];
}
if (yno != 1)
{
block[i][j] += block[i-1][j];
}
}
}
cout<<block[h][w]<<endl;
}