#include <bits/stdc++.h>
using namespace std;
const int INF = numeric_limits<int>::max();
const long long LINF = numeric_limits<long long>::max();
const double DINF = numeric_limits<double>::max();
double eps = 1e-2;
long long l;
long long fnd(long long a, long long b, long long c) {
  long long res = 0;
  for (int i = 0; i <= l; ++i) {
    long long rem = l - i;
    if (a + i < b + c) continue;
    rem = min(rem, a + i - (b + c));
    res -= ((rem + 1) * (rem + 2)) / 2;
  }
  return res;
}
void solve() {
  long long a, b, c;
  cin >> a >> b >> c >> l;
  long long ans = 0;
  for (int i = 0; i <= l; ++i) {
    long long rem = l - i;
    ans += ((rem + 2) * (rem + 1)) / 2;
  }
  cout << ans + fnd(a, b, c) + fnd(b, c, a) + fnd(c, a, b);
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  int t = 1;
  for (int k = 0; k < t; ++k) {
    solve();
  }
  return 0;
}
