import sys input = sys.stdin.readline # from collections import deque def linput(_t=int): return tuple(map(_t, input().split())) def gcd(n,m): while m: n,m = m, n%m return n def lcm(n,m): return n*m//gcd(n,m) def main(): N = int(input()) # N,Q = linput() # vA = linput() # vB = linput() # S = input().rstrip() mX = [linput() for _ in [0,]*N] res = 0 for i,(xa,ya) in enumerate(mX): for j in range(i,N): xb,yb = mX[j] cnt = 0 if ya==yb: for x,y in mX: if y==ya: cnt += 1 else: for x,y in mX: if (yb-ya)*(x-xa) == (y-ya)*(xb-xa): cnt += 1 res = max(res, cnt) print(res) # print(("No","Yes")[res%2]) main()