#3#4 WA
#include <bits/stdc++.h>
using namespace std;
long long a[50][50],ex,ey,mx,my,flag;
const int dx[10] = {0,-1,1,-2,-2,2,2,-1,1};
const int dy[10] = {0,2,2,1,-1,1,-1,-2,-2};
int main(){
cin >> ex >> ey >> mx >> my;
for (int i = 2 ; i <= (ex + 2) ; i++){
flag = 1;
for (int j = 0 ; j < 9 ; j++){
if (mx + dx[j] + 2 == i && my + dy[j] + 2 == 2){
flag = 0;
break;
}
}
if (flag){
a[i][2] = 1;
}
}
for (int i = 2 ; i <= (ey + 2) ; i++){
flag = 1;
for (int j = 0 ; j < 9 ; j++){
if (mx + dx[j] + 2 == 2 && my + dy[j] + 2 == i){
flag = 0;
break;
}
}
if (flag){
a[2][i] = 1;
}
}
for (int i = 3 ; i <= (ex + 2) ; i++){
for (int j = 3 ; j <= (ey + 2) ; j++){
flag = 1;
for (int k = 0 ; k < 9 ; k++){
if (mx + dx[k] + 2 == i && my + dy[k] + 2 == j){
flag = 0;
break;
}
}
if (flag){
a[i][j] = a[i - 1][j] + a[i][j - 1];
}
}
}
cout << a[ex + 2][ey + 2];
return 0;
}