#include <bits/stdc++.h>
#if __has_include(<atcoder/all>)
    #include <atcoder/all>
    using namespace atcoder;
#endif
using namespace std;

typedef pair<int, int> P;
typedef long long ll;

#define rep(i, n) for(int i = 0; i < (n); i++)
#define repto(i, n) for(int i = 1; i < (n); i++)
#define all(c) (c).begin(), (c).end()
#define uniq(c) c.erase(unique(all(c)), (c).end())
#define _1 first
#define _2 second
#define pb push_back
#define mp make_pair
#define INF 1145141919
#define MOD 1000000007
#define DEBUG(x) cout << #x << ": " << x << endl;
template<typename T> T gcd(T a, T b) { if (b == 0) return a; return gcd(b, a % b); }

int main() {
  cin.tie(0);
  ios::sync_with_stdio(false);

  int N;
  cin >> N;
  vector<P> v(N);
  rep(i, N) {
    int x, y;
    cin >> x >> y;
    v[i] = mp(x, y);
  }
  int cnt = 0;
  rep(i, N) {
    for (int j = i+1; j < N; j++) {
      double t = (double)(v[j]._2-v[i]._2)/(v[j]._1-v[i]._1);
      if (t >= -1 && t <= 1)
        cnt++;
    }
  }
  cout << cnt << endl;
}

#include<bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
typedef long long ll;
typedef pair<int, int> pii;

int main(){
    int n;  cin >> n;
    vector<int> m(200, 0);
    vector<ll> a(n);
    rep(i, n){
        cin >> a[i];
        m[a[i]%200]++;
    }
    ll ans = 0;
    rep(i, n){
        m[a[i]%200]--;
        ans += m[a[i]%200];
    }
    cout << ans << endl;
    return 0;
}