#include <bits/stdc++.h>
using namespace std;
double pi = acos(-1);
struct point {
  int x, y;
} p[2005];
vector<double> v;
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d%d", &p[i].x, &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;
    int now = 0;
    for (int j = 0; j < v.size(); j++) {
      while (v[k] + now * pi < v[j] + pi) {
        k++;
        if (k >= v.size()) k = 0, now += 2;
      }
      int w = (j - k >= 0 ? j - k : k - j - 1);
      ans += 1ll * w * (w - 1) / 2 * (n - w - 2) * (n - w - 3) / 2;
    }
  }
  printf("%lld\n", ans / 2);
  return 0;
}
