#include <bits/stdc++.h>
template <typename Tp>
void in(Tp &x) {
  char ch = getchar(), f = 1;
  x = 0;
  while (ch != '-' && (ch < '0' || ch > '9')) ch = getchar();
  if (ch == '-') f = -1, ch = getchar();
  while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar();
  x *= f;
}
template <typename Tp>
bool chkmax(Tp &x, Tp y) {
  return x >= y ? 0 : (x = y, 1);
}
template <typename Tp>
bool chkmin(Tp &x, Tp y) {
  return x <= y ? 0 : (x = y, 1);
}
template <typename Tp>
Tp Max(const Tp &x, const Tp &y) {
  return x > y ? x : y;
}
template <typename Tp>
Tp Min(const Tp &x, const Tp &y) {
  return x < y ? x : y;
}
int X1, Y1;
int x2, y2;
int abs(int x) { return x > 0 ? x : -x; }
int main() {
  in(X1);
  in(Y1);
  in(x2);
  in(y2);
  if (X1 == x2) {
    printf("%d\n", abs(Y1 - y2) * 2 + 6);
  } else if (Y1 == y2) {
    printf("%d\n", abs(X1 - x2) * 2 + 6);
  } else {
    printf("%d\n", (abs(X1 - x2) + abs(Y1 - y2)) * 2 + 4);
  }
  return 0;
}
