#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 10;
const int inf = 0x3f3f3f3f;
int main() {
  int t;
  t = 1;
  while (t--) {
    long long a, b, c, d;
    cin >> a >> b >> c >> d;
    long long ans = 0;
    for (int i = (a); i < (b + 1); i++) {
      long long l = b - 1, r = c + 2;
      while (l < r - 1) {
        long long mid = l + r >> 1;
        if (mid + i > c) {
          r = mid;
        } else {
          l = mid;
        }
      }
      if (r <= c && i + r > c) {
        if (i + r <= d + 1) {
          long long mx = min(i + c, d + 1);
          ans += (i + r - c + mx - c) * (mx - (i + r) + 1) / 2;
        }
        if (i + c > d + 1) {
          long long x = max(d + 2 - i, r);
          ans += (d + 1 - c) * (c - x + 1);
        }
      }
    }
    cout << ans << endl;
  }
}
