#include <bits/stdc++.h>
using namespace std;
typedef pair<pair<long long, long long>, pair<long long, long long> > ppt;
pair<long long, long long> operator-(const pair<long long, long long> &a,
                                     const pair<long long, long long> &b) {
  return pair<long long, long long>(a.first - b.first, a.second - b.second);
}
bool comp(const ppt &ap, const ppt &bp) {
  auto a = ap.first;
  auto b = bp.first;
  if (b.first == 0LL && b.second < 0LL) {
    if (a.first == 0LL && a.second < 0LL)
      return false;
    else
      return true;
  } else if (a.first == 0LL && a.second < 0LL) {
    return false;
  } else {
    if (a.first >= 0LL && b.first < 0LL)
      return true;
    else if (a.first < 0LL && b.first >= 0LL)
      return false;
    else if (a.first >= 0LL && b.first >= 0LL) {
      if (b.first == 0LL)
        return a.first != 0LL;
      else if (a.first == 0LL)
        return false;
      else
        return b.second * a.first > a.second * b.first;
    } else {
      assert(a.first < 0LL && b.first < 0LL);
      return b.second * a.first > a.second * b.first;
    }
  }
}
int main() {
  int n;
  scanf("%d", &n);
  vector<pair<long long, long long> > p(n);
  for (int i = 0; i < n; i++) scanf("%lld %lld", &p[i].first, &p[i].second);
  sort(p.begin(), p.end());
  vector<ppt> slopes;
  for (int i = 0; i < n; i++)
    for (int j = i + 1; j < n; j++)
      slopes.emplace_back(p[j] - p[i], make_pair(i, j));
  sort(slopes.begin(), slopes.end(), comp);
  long long ans = 0LL;
  int ordering[4096];
  int inv[4096];
  for (int i = 0; i < n; i++) ordering[i] = inv[i] = i;
  for (const auto &prpr : slopes) {
    int i = prpr.second.first;
    int j = prpr.second.second;
    int pfst = inv[i], psnd = inv[j];
    assert(psnd == pfst + 1);
    ans += pfst * (pfst - 1LL) / 2LL * (pfst - 2LL) / 3LL;
    int rest = n - 2 - pfst;
    ans += rest * (rest - 1LL) / 2LL * (rest - 2LL) / 3LL;
    swap(ordering[pfst], ordering[psnd]);
    swap(inv[i], inv[j]);
  }
  printf("%lld\n",
         n * (n - 1LL) / 2LL * (n - 2LL) / 3LL * (n - 3LL) / 4LL * (n - 4LL) -
             ans);
  return 0;
}
