#include <bits/stdc++.h>

using namespace std;
bool uporedi(tuple<int,int,int,int,int> a ,tuple<int,int,int,int,int> b)
{
    if(get<4>(a)<get<4>(b) ){
        return true ;
    }
    else{
        return false ;
    }
}
bool paralelne(tuple<int,int,int,int,int> a ,tuple<int,int,int,int,int> b)
{
    if((get<0>(a)-get<2>(a))*(get<1>(b)-get<3>(b))==(get<0>(b)-get<2>(b))*(get<1>(a)-get<3>(a)))
    {
        return true ;
    }
    else{
        return false ;
    }
}


int main()
{
    int n ;
    cin >> n ;
    pair<int,int>k[n] ;
    tuple<int,int,int,int,long long>r[(n*n-1)/2] ;
    for(int i=0 ; i<n ; i++){
        cin >> k[i].first >> k[i].second ;
    }
    int z=0 ;
    for(int i=0 ; i<n; i++){
        for(int j=1+i ; j<n ; j++){
            r[z]=make_tuple(k[i].first , k[i].second , k[j].first , k[j].second ,(k[i].first-k[j].first)*(k[i].first-k[j].first)+(k[i].second-k[j].second)*(k[i].second-k[j].second)) ;
            z++ ;
        }
    }
    sort(r,r+z-1,uporedi) ;
    int br=0;
    for(int i=0 ; i<z ; i++)
    {
        for(int j=i+1 ; j<z ; j++)
        {
            if(4*get<4>(r[i])==get<4>(r[j])&& paralelne(r[i],r[j]) )
            {
                br++ ;
            }
        }
    }
    cout << br ;
    return 0;
}