#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
long long a, b, x = 0, y = 0, c, d, x1, y1, rez = 0, x2, y2, x3, y3;
bool ch1 = false, ch2 = false;
cin >> a >> b;
cin >> c >> d;
x1 = (a + c) / 2;
y1 = (b + d) / 2;
if (x1*x1 + y1*y1 >= a*a + b*b || x1*x1 + y1*y1 >= c*c + d*d){
if (a*a + b*b > c*c + d*d){
x1 = c;
y1 = d;
} else {
x1 = a;
y1 = b;
};
ch2 = true;
}
while(x != x1 || y != y1){
if (x1 > x) x++;
else if(x1 < x) x--;
if (y1 > y) y++;
else if(y1 < y) y--;
rez++;
}
x2 = a;
y2 = b;
x3 = c;
y3 = d;
if ((x - a)*(x - a) + (y - b)*(y - b) > (x - c)*(x - c) + (y - d)*(y - d) || (x == a && y == b)){
x2 = c;
y2 = d;
x3 = a;
y3 = b;
ch1 = true;
}
while(x != x2 || y != y2){
if (x2 > x) x++;
else if(x2 < x) x--;
if (y2 > y) y++;
else if(y2 < y) y--;
rez++;
}
x2 = x;
y2 = y;
if ((x - x3)*(x - x3) + (y - y3)*(y - y3) > (x1 - x3)*(x1 - x3) + (y1 - y3)*(y1 - y3)){
x2 = x1;
y2 = y1;
}
while((x != x2 || y != y2) && ch1 == false){
if (x2 > x) x++;
else if(x2 < x) x--;
if (y2 > y) y++;
else if(y2 < y) y--;
rez++;
}
cout << rez;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8c3RyaW5nPgoKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKICAgIGxvbmcgbG9uZyBhLCBiLCB4ID0gMCwgeSA9IDAsIGMsIGQsIHgxLCB5MSwgcmV6ID0gMCwgeDIsIHkyLCB4MywgeTM7CiAgICBib29sIGNoMSA9IGZhbHNlLCBjaDIgPSBmYWxzZTsKICAgIGNpbiA+PiBhID4+IGI7CiAgICBjaW4gPj4gYyA+PiBkOwogICAgeDEgPSAoYSArIGMpIC8gMjsKICAgIHkxID0gKGIgKyBkKSAvIDI7CgogICAgaWYgKHgxKngxICsgeTEqeTEgPj0gYSphICsgYipiIHx8IHgxKngxICsgeTEqeTEgPj0gYypjICsgZCpkKXsKICAgICAgICBpZiAoYSphICsgYipiID4gYypjICsgZCpkKXsKICAgICAgICAgICAgeDEgPSBjOwogICAgICAgICAgICB5MSA9IGQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgeDEgPSBhOwogICAgICAgICAgICB5MSA9IGI7CiAgICAgICAgfTsKICAgICAgICBjaDIgPSB0cnVlOwogICAgfQogICAgd2hpbGUoeCAhPSB4MSB8fCB5ICE9IHkxKXsKICAgICAgICBpZiAoeDEgPiB4KSB4Kys7CiAgICAgICAgZWxzZSBpZih4MSA8IHgpIHgtLTsKICAgICAgICBpZiAoeTEgPiB5KSB5Kys7CiAgICAgICAgZWxzZSBpZih5MSA8IHkpIHktLTsKICAgICAgICByZXorKzsKICAgIH0KICAgIHgyID0gYTsKICAgIHkyID0gYjsKICAgIHgzID0gYzsKICAgIHkzID0gZDsKICAgIGlmICgoeCAtIGEpKih4IC0gYSkgKyAoeSAtIGIpKih5IC0gYikgPiAoeCAtIGMpKih4IC0gYykgKyAoeSAtIGQpKih5IC0gZCkgfHwgKHggPT0gYSAmJiB5ID09IGIpKXsKICAgICAgICB4MiA9IGM7CiAgICAgICAgeTIgPSBkOwogICAgICAgIHgzID0gYTsKICAgICAgICB5MyA9IGI7CiAgICAgICAgY2gxID0gdHJ1ZTsKICAgIH0KICAgIHdoaWxlKHggIT0geDIgfHwgeSAhPSB5Mil7CiAgICAgICAgaWYgKHgyID4geCkgeCsrOwogICAgICAgIGVsc2UgaWYoeDIgPCB4KSB4LS07CiAgICAgICAgaWYgKHkyID4geSkgeSsrOwogICAgICAgIGVsc2UgaWYoeTIgPCB5KSB5LS07CiAgICAgICAgcmV6Kys7CiAgICB9CiAgICB4MiA9IHg7CiAgICB5MiA9IHk7CiAgICBpZiAoKHggLSB4MykqKHggLSB4MykgKyAoeSAtIHkzKSooeSAtIHkzKSA+ICh4MSAtIHgzKSooeDEgLSB4MykgKyAoeTEgLSB5MykqKHkxIC0geTMpKXsKICAgICAgICB4MiA9IHgxOwogICAgICAgIHkyID0geTE7CiAgICB9CiAgICB3aGlsZSgoeCAhPSB4MiB8fCB5ICE9IHkyKSAmJiBjaDEgPT0gZmFsc2UpewogICAgICAgIGlmICh4MiA+IHgpIHgrKzsKICAgICAgICBlbHNlIGlmKHgyIDwgeCkgeC0tOwogICAgICAgIGlmICh5MiA+IHkpIHkrKzsKICAgICAgICBlbHNlIGlmKHkyIDwgeSkgeS0tOwogICAgICAgIHJleisrOwogICAgfQogICAgY291dCA8PCByZXo7CiAgICByZXR1cm4gMDsKfQ==