const
maxn=10000;
type
anode=record
x,y:integer;
end;
atype=array[1..maxn] of anode;
var
a:atype;
n,i,j,k,mx,ans:integer;
k1,k2:extended;
begin
assign(input,'bomb.in'); reset(input);
assign(output,'bomb.out'); rewrite(output);
readln(n);
for i:=1 to n do
readln(a[i].x,a[i].y);
ans:=0;
for i:=1 to n-2 do
for j:=i+1 to n-1 do
begin
mx:=2;
if a[j].x=a[i].x then
k1:=0
else
k1:=(a[j].y-a[i].y)/(a[j].x-a[i].x);
for k:=j+1 to n do
begin
if a[k].x=a[i].x then
k2:=0
else
k2:=(a[k].y-a[i].y)/(a[k].x-a[i].x);
if abs(k2-k1)<0.000001 then
inc(mx);
end;
if mx>ans then
ans:=mx;
end;
writeln(ans);
close(input); close(output);
end.