#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n;
    long long br = 0;
    cin >> n;
    vector<pair<double, double> > v;
    for(int i = 0; i < n; i++)
    {
        double x, y;
        cin >> x >> y;
        v.push_back(make_pair(x, y));
    }

    for(int i = 0; i < n; i++)
    {
        for(int j = i + 1; j < n; j++)
        {
            for(int k = j + 1; k < n; k++)
            {
                for(int l = k + 1; l < n; l++)
                {
//                    cout << (v[i].second - v[j].second) / (v[i].first - v[j].first) << " " << (v[k].second - v[l].second) / (v[k].first - v[l].first) << endl;
//                    cout << (v[i].second - v[j].second) * (v[i].second - v[j].second) + (v[i].first - v[j].first) * (v[i].first - v[j].first) << " " << (v[k].second - v[l].second) * (v[k].second - v[l].second) + (v[k].first - v[l].first) * (v[k].first - v[l].first) << endl;
                    if( (((v[i].second - v[j].second) / (v[i].first - v[j].first) == (v[k].second - v[l].second) / (v[k].first - v[l].first)) || (v[i].first - v[j].first) == (v[k].first - v[l].first)) && ( (sqrt((v[i].second - v[j].second) * (v[i].second - v[j].second) + (v[i].first - v[j].first) * (v[i].first - v[j].first)) == 2 * (sqrt((v[k].second - v[l].second) * (v[k].second - v[l].second) + (v[k].first - v[l].first) * (v[k].first - v[l].first)))) || (2 * ((sqrt((v[i].second - v[j].second) * (v[i].second - v[j].second) + (v[i].first - v[j].first) * (v[i].first - v[j].first)))) == sqrt((v[k].second - v[l].second) * (v[k].second - v[l].second) + (v[k].first - v[l].first) * (v[k].first - v[l].first))) ) ) br++;
                    else if( (((v[i].second - v[k].second) / (v[i].first - v[k].first) == (v[j].second - v[l].second) / (v[j].first - v[l].first)) || (v[i].first - v[k].first) == (v[j].first - v[l].first)) && ( (sqrt((v[i].second - v[k].second) * (v[i].second - v[k].second) + (v[i].first - v[k].first) * (v[i].first - v[k].first)) == 2 * (sqrt((v[j].second - v[l].second) * (v[j].second - v[l].second) + (v[j].first - v[l].first) * (v[j].first - v[l].first)))) || (2 * ((sqrt((v[i].second - v[k].second) * (v[i].second - v[k].second) + (v[i].first - v[k].first) * (v[i].first - v[k].first)))) == sqrt((v[j].second - v[l].second) * (v[j].second - v[l].second) + (v[j].first - v[l].first) * (v[j].first - v[l].first))) ) ) br++;
                    else if( (((v[i].second - v[l].second) / (v[i].first - v[l].first) == (v[k].second - v[j].second) / (v[k].first - v[j].first)) || (v[i].first - v[l].first) == (v[k].first - v[j].first)) && ( (sqrt((v[i].second - v[l].second) * (v[i].second - v[l].second) + (v[i].first - v[l].first) * (v[i].first - v[l].first)) == 2 * (sqrt((v[k].second - v[j].second) * (v[k].second - v[j].second) + (v[k].first - v[j].first) * (v[k].first - v[j].first)))) || (2 * ((sqrt((v[i].second - v[l].second) * (v[i].second - v[l].second) + (v[i].first - v[l].first) * (v[i].first - v[l].first)))) == sqrt((v[k].second - v[j].second) * (v[k].second - v[j].second) + (v[k].first - v[j].first) * (v[k].first - v[j].first))) ) ) br++;
                }
            }
        }
    }

    cout << br;
}