bx,by,mx,my=map(int,input().strip().split())
m=[[0]*(by+2) for _ in range(bx+2)]
ma=[[mx+1,my+1],[mx,my+3],[mx,my-1],[mx+2,my+3],[mx+2,my-1],[mx+3,my+2],[mx+3,my],[mx-1,my+2],[mx-1,my]]
for i in ma:
if i[0]>=0 and i[1]>=0 and i[0]<=bx+1 and i[1]<=by+1:
m[i[0]][i[1]]=-1
count=0
if (bx==mx and by==my) or (mx==0 and my==0) or (mx==2 and my==2):
print(0)
else:
m[1][2]=1
m[2][1]=1
for i in range(1,bx+2):
for j in range(1,by+2):
if m[i][j]==0 :
fi1j=m[i-1][j]
fij1=m[i][j-1]
if m[i-1][j]==-1:
fi1j=0
if m[i][j-1]==-1:
fij1=0
m[i][j]=fi1j+fij1
print(m[bx+1][by+1])