#include <bits/stdc++.h>
using namespace std;
inline void splay(int &v) {
  v = 0;
  char c = 0;
  int p = 1;
  while (c < '0' || c > '9') {
    if (c == '-') p = -1;
    c = getchar();
  }
  while (c >= '0' && c <= '9') {
    v = (v << 3) + (v << 1) + c - '0';
    c = getchar();
  }
  v *= p;
}
const int N = 200010;
const double pi = acos(-1);
struct point {
  int x, y;
} p[N];
vector<double> v;
int cnt;
int main() {
  int n;
  splay(n);
  for (int i = 1; i <= n; i++) {
    splay(p[i].x), splay(p[i].y);
  }
  long long ans = 0;
  for (int i = 1; i <= n; i++) {
    v.clear();
    for (int j = 1; j <= n; j++) {
      if (j != i) {
        v.push_back(atan2(p[j].y - p[i].y, p[j].x - p[i].x));
      }
    }
    sort(v.begin(), v.end());
    int k = 0, now = 0;
    for (int j = 0; j < v.size(); j++) {
      while (now * pi < v[j] + pi - v[k]) {
        k++;
        if (k >= v.size()) k = 0, now += 2;
      }
      long long w = 0;
      if (j >= k)
        w = j - k;
      else
        w = k - j - 1;
      ans += 1ll * w * (w - 1) / 2 * (n - w - 2) * (n - w - 3) / 2;
    }
  }
  cout << ans / 2 << endl;
}
