n = int(input())
d = dict()
p = []
for i in range(n):
    x,y = map(int,input().split())
    for j in p:
        if str(x-j[0])+" "+str(y-j[1]) in d:
            d[str(x-j[0])+" "+str(y-j[1])] += 1
        else:
            d[str(x-j[0])+" "+str(y-j[1])] = 1
        if str(j[0]-x)+" "+str(j[1]-y) in d:
            d[str(j[0]-x)+" "+str(j[1]-y)] += 1
        else:
            d[str(j[0]-x)+" "+str(j[1]-y)] = 1
    p.append([x,y])

if len(d.values()) == 0:
    ans = 0
else:
    ans = max(d.values())
print(n-ans) n = int(input()) n int(input()) int input() input d = dict() d dict() dict p = [] p [] for i in range(n):
    x,y = map(int,input().split())
    for j in p:
        if str(x-j[0])+" "+str(y-j[1]) in d:
            d[str(x-j[0])+" "+str(y-j[1])] += 1
        else:
            d[str(x-j[0])+" "+str(y-j[1])] = 1
        if str(j[0]-x)+" "+str(j[1]-y) in d:
            d[str(j[0]-x)+" "+str(j[1]-y)] += 1
        else:
            d[str(j[0]-x)+" "+str(j[1]-y)] = 1
    p.append([x,y]) i range(n) range n x,y = map(int,input().split()) x map(int,input().split()) map int input().split() ().split () input split y for j in p:
        if str(x-j[0])+" "+str(y-j[1]) in d:
            d[str(x-j[0])+" "+str(y-j[1])] += 1
        else:
            d[str(x-j[0])+" "+str(y-j[1])] = 1
        if str(j[0]-x)+" "+str(j[1]-y) in d:
            d[str(j[0]-x)+" "+str(j[1]-y)] += 1
        else:
            d[str(j[0]-x)+" "+str(j[1]-y)] = 1
     j p if str(x-j[0])+" "+str(y-j[1]) in d:
            d[str(x-j[0])+" "+str(y-j[1])] += 1
        else:
            d[str(x-j[0])+" "+str(y-j[1])] = 1
         str(x-j[0])+" "+str(y-j[1]) in d str(x-j[0])+" "+str(y-j[1]) str(x-j[0])+" " str(x-j[0]) str x-j[0] x j[0] j 0 " " str(y-j[1]) str y-j[1] y j[1] j 1 d d[str(x-j[0])+" "+str(y-j[1])] += 1 d[str(x-j[0])+" "+str(y-j[1])] d str(x-j[0])+" "+str(y-j[1]) str(x-j[0])+" " str(x-j[0]) str x-j[0] x j[0] j 0 " " str(y-j[1]) str y-j[1] y j[1] j 1 1 d[str(x-j[0])+" "+str(y-j[1])] = 1 d[str(x-j[0])+" "+str(y-j[1])] d str(x-j[0])+" "+str(y-j[1]) str(x-j[0])+" " str(x-j[0]) str x-j[0] x j[0] j 0 " " str(y-j[1]) str y-j[1] y j[1] j 1 1 if str(j[0]-x)+" "+str(j[1]-y) in d:
            d[str(j[0]-x)+" "+str(j[1]-y)] += 1
        else:
            d[str(j[0]-x)+" "+str(j[1]-y)] = 1
     str(j[0]-x)+" "+str(j[1]-y) in d str(j[0]-x)+" "+str(j[1]-y) str(j[0]-x)+" " str(j[0]-x) str j[0]-x j[0] j 0 x " " str(j[1]-y) str j[1]-y j[1] j 1 y d d[str(j[0]-x)+" "+str(j[1]-y)] += 1 d[str(j[0]-x)+" "+str(j[1]-y)] d str(j[0]-x)+" "+str(j[1]-y) str(j[0]-x)+" " str(j[0]-x) str j[0]-x j[0] j 0 x " " str(j[1]-y) str j[1]-y j[1] j 1 y 1 d[str(j[0]-x)+" "+str(j[1]-y)] = 1 d[str(j[0]-x)+" "+str(j[1]-y)] d str(j[0]-x)+" "+str(j[1]-y) str(j[0]-x)+" " str(j[0]-x) str j[0]-x j[0] j 0 x " " str(j[1]-y) str j[1]-y j[1] j 1 y 1 p.append([x,y]) p.append p append [x,y] x y if len(d.values()) == 0:
    ans = 0
else:
    ans = max(d.values()) len(d.values()) == 0 len(d.values()) len d.values() d.values d values 0 ans = 0 ans 0 ans = max(d.values()) ans max(d.values()) max d.values() d.values d values print(n-ans) print n-ans n ans d = dict() dict() d p = [] [] p x,y = map(int,input().split()) map(int,input().split()) x ans = 0 0 ans n = int(input()) int(input()) n y = map(int,input().split()) map(int,input().split()) y ans = max(d.values()) max(d.values()) ans
n = int(input())
d = dict()
p = []
for i in range(n):
    x,y = map(int,input().split())
    for j in p:
        if str(x-j[0])+" "+str(y-j[1]) in d:
            d[str(x-j[0])+" "+str(y-j[1])] += 1
        else:
            d[str(x-j[0])+" "+str(y-j[1])] = 1
        if str(j[0]-x)+" "+str(j[1]-y) in d:
            d[str(j[0]-x)+" "+str(j[1]-y)] += 1
        else:
            d[str(j[0]-x)+" "+str(j[1]-y)] = 1
    p.append([x,y])

if len(d.values()) == 0:
    ans = 0
else:
    ans = max(d.values())
print(n-ans)
