import std.stdio, std.string, std.conv, std.algorithm, std.math;

void main()
{
    while(true)
    {
        int n = readln.chomp.to!int;
        if(!n) break;

        creal[300] ps;

        foreach(i; 0 .. n)
        {
            auto f = readln.split.map!(to!real);
            ps[i] = f[0] + f[1] * 1.0i;
        }

        int max;

        foreach(i; 0 .. n) foreach(j; i + 1 .. n)
        {
            int enc;
            creal m = (ps[i] + ps[j]) / 2.0;
            foreach(k; 0 .. n)
            {
                if(abs(m - ps[k]) <= 1) ++enc;
            }
            if(enc > max) max = enc;
        }

        foreach(i; 0 .. n) foreach(j; i + 1 .. n) foreach(k; j + 1 .. n)
        {
            int enc;
            creal m = (ps[i] + ps[j] + ps[k]) / 3.0;
            foreach(l; 0 .. n)
            {
                if(abs(m - ps[l]) <= 1) ++enc;
            }
            if(enc > max) max = enc;
        }

        max.writeln;
    }
}