#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1010;
bool mp[MAXN][MAXN];
int main(void) {
  int n;
  scanf("%d", &n);
  while (n--) {
    int x, y;
    scanf("%d%d", &x, &y);
    mp[x - 1][y - 1] = true;
  }
  long long ans = 0;
  for (int i = 0; i <= 999 * 2; ++i) {
    long long cnt = 0;
    for (int x = 0; x < 1000; ++x) {
      int y = i - x;
      if (y < 0) {
        break;
      }
      if (y < 1000 && mp[x][y]) {
        cnt++;
      }
    }
    ans += cnt * (cnt - 1) / 2;
  }
  for (int i = 0; i < 1000; ++i) {
    long long cnt = 0;
    int x = i;
    for (int y = 0; x < 1000; ++x, ++y) {
      if (mp[x][y]) {
        cnt++;
      }
    }
    ans += cnt * (cnt - 1) / 2;
  }
  for (int i = 1; i < 1000; ++i) {
    long long cnt = 0;
    int y = i;
    for (int x = 0; y < 1000; ++x, ++y) {
      if (mp[x][y]) {
        cnt++;
      }
    }
    ans += cnt * (cnt - 1) / 2;
  }
  printf("%I64d\n", ans);
  return 0;
}
