#include <stdio.h>
#include <iostream>
#include <vector>
#include <utility>
#include <map>
#include <set>
#include <string>
#include <algorithm>
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
typedef pair<int, int> PII;
#define MP make_pair
#define PB push_back
#define FI first
#define SE second
#define N (1010)
#define M (800010)
map <LL, int> mp0;
map <pair<LL, LL>, int> mp1;
LL dis[N];
int x[N], y[N], p[N];
LL A[N][N], B[N][N], C[N][N];
LL gcd(LL a, LL b){
	LL t;
	for (;b;){
		t = a % b;
		a = b;
		b =t;
	}
	return a;
}
bool cmp(int a, int b){
	return dis[a] < dis[b];
}
#define sqr(x) 1ll*(x)*(x)
int n;
int main(){
	scanf("%d", &n);
	for (int i = 1; i <= n; ++i){
		scanf("%d%d", x + i, y + i);
	}
	for (int i = 1; i <= n; ++i){
		for (int j = i + 1; j <= n; ++j){
			mp0[1ll*(x[i]+x[j]+M) << 30ll |  1ll*(y[i]+y[j]+M)]+=2;
			printf("%d %d\n", x[i]+x[j], y[i]+y[j]);
			A[i][j] = 2 * (x[i]-x[j]);
			B[i][j] = 2 * (y[i]-y[j]);
			C[i][j] = 1ll * x[i] * x[i] + 1ll * y[i] * y[i] - 1ll * x[j] * x[j] - 1ll * y[j] * y[j];
			LL g = gcd(abs(A[i][j]), gcd(abs(B[i][j]), abs(C[i][j])));
			if (g) A[i][j] /= g, B[i][j] /= g, C[i][j] /= g;
			printf("%lld %lld %lld %lld\n", A[i][j], B[i][j], C[i][j], g);
			mp1[MP(A[i][j] + M << 30ll | B[i][j]+M, C[i][j])]+=2;
		}
		++mp0[1ll*(x[i]+x[i]+M) << 30ll |  1ll*(y[i]+y[i]+M)];
	}
	for (int i = 1; i <= n; ++i){
		for (int j = 1; j <= n; ++j){
			dis[j] = sqr(x[i]-x[j]) + sqr(y[i]-y[j]);
			p[j] = j;
		}
		sort(p+1, p+n+1, cmp);
		for (int jj = 2, x, y, i, j, kk; jj <= n; jj = kk){
			for (kk = jj +1; kk <= n && dis[p[jj]] == dis[p[kk]]; ++kk);
			for (i = jj; i < kk; ++i){
				for (j = i + 1; j < kk; ++j){
					if (p[i] > p[j]) x = p[j], y = p[i];
					else x = p[i], y= p[j];
					++mp1[MP(A[x][y]+M<<30ll|B[x][y]+M, C[x][y])];
				}
			}
		}
	}
	int ans = n;
	for (auto it = mp0.begin(); it != mp0.end(); ++it){
		printf("%d\n", it->SE);
		if (n - it->SE<= ans){
			ans = n - it->SE;
		}
	}
	for (auto it = mp1.begin(); it != mp1.end(); ++it){
		if (n - it->SE <= ans){
			ans = n - it->SE;
		}
	}
	printf("%d\n", ans);
}
