l=(1..n=gets.to_i).map{Complex(*gets.split.map(&:to_i))} d=(0...n).map{|i|(0...n).map{|j|(l[i]-l[j]).abs}} $u=*0...n def f n;n==$u[n]?n:$u[n]=f($u[n])end n.times{|i|(i+1...n).each{|j|$u[f i]=$u[f j] if d[i][j]<=10}} n.times{|i|f i} p ($u.each.with_index.group_by{|a,i|a}.map{|k,v|v.map{|_,i|i}.combination(2).map{|i,j|d[i][j]}.max||0}.max||-1)+2