#include <iostream>
using namespace std;
int counta=0,bx,by,hx,hy;
int onelist[8][2] = {{2,1},{1,2},{-1,2},{-2,1},{-2,-1},{-1,-2},{1,-2},{2,-1}};
void solve(int nowx,int nowy)
{
if (nowx > bx || nowy > by)
{
return;
}
if (nowx == bx && nowy == by)
{
counta++;
return;
}
int updatex=nowx+1;
int updatey=nowy;
bool flag=false;
for (int i=0;i<8;i++)
{
if (updatex == hx+onelist[i][0] && updatey == hy+onelist[i][1])
{
flag=true;
break;
}
}
if (!flag)
{
solve(updatex,updatey);
}
updatex=nowx,updatey=nowy+1;
flag=false;
for (int i=0;i<8;i++)
{
if (updatex == hx+onelist[i][0] && updatey == hy+onelist[i][1])
{
flag=true;
break;
}
}
if (!flag)
{
solve(updatex,updatey);
}
}
signed main()
{
cin >> bx >> by >> hx >> hy;
solve(0,0);
cout << counta << endl;
return 0;
}