#include <bits/stdc++.h>
int main() {
  int i, j;
  long long int a[3], d, r = 0, t;
  scanf("%I64d %I64d %I64d %I64d", &a[0], &a[1], &a[2], &d);
  for (i = 0; i < 3; i++) {
    for (j = i + 1; j < 3; j++) {
      if (a[i] > a[j]) {
        t = a[i];
        a[i] = a[j];
        a[j] = t;
      }
    }
  }
  if ((a[1] - a[0]) < d) {
    r = a[0] + d - a[1];
  }
  if ((a[2] - a[1]) < d) {
    r = r + a[1] + d - a[2];
  }
  printf("%I64d", r);
}
