#include <bits/stdc++.h>
using namespace std;
inline void read(long long &x) {
  x = 0;
  long long f = 1;
  char c = getchar();
  for (; c > '9' || c < '0'; c = getchar())
    if (c == '-') f = -1;
  for (; c <= '9' && c >= '0'; c = getchar()) x = x * 10 + c - '0';
  x *= f;
}
long long a, b, c, l;
inline long long calc(long long x, long long y, long long z, long long d) {
  long long ans = 0, res;
  for (long long i =
           (((long long)0) > (x + y - z) ? ((long long)0) : (x + y - z));
       i <= d; ++i)
    res = ((d - i) < (z + i - x - y) ? (d - i) : (z + i - x - y)),
    ans += (res + 1) * (res + 2) / 2;
  return ans;
}
int main() {
  read(a), read(b), read(c), read(l);
  long long ans = (l + 1) * (l + 2) * (l + 3) / 6;
  ans -= (calc(a, b, c, l) + calc(b, c, a, l) + calc(c, a, b, l));
  printf("%lld", ans);
  return 0;
}
