while(n=gets.to_i)>0
l=(1..n).map{gets.split.map &:to_i}
m=0
l.each{|i,j|
o=(l-[[i,j]]).map{|x,y|[x-i,y-j]}
p=o.dup
while q=p.shift
if t=p.find{|x,y|(x.abs==q[1].abs)&&(x*y==-q[0]*q[1])&&$r=o.find{|a|[q[0]+x,q[1]+y]==a}}
m=[m,q[0]**2+q[1]**2].max
p t,q,$r,m
end
end
}
p m
end