#include<bits/stdc++.h>
using namespace std;
#define N 1001
complex<double> a[N];
#define LIM 100000000
void solve()
{
int n,i,j;
double x,y;
sd(n);
for(i=0;i<n;++i)
{
cin >> x >> y ;
a[i].real(x);
a[i].imag(y);
}
int ITER = LIM/n;
double ang = M_PI/ITER;
double ans = 10000.0;
double mnx,mny,mxx,mxy;
for(i=0;i<ITER;++i)
{
mnx = 10000.0,mxx=-10000.0;
mny = 10000.0,mxy=-10000.0;
for(j=0;j<n;++j)
{
//Rotating point a[j] by 'ang' radians
a[j] *= complex<double>(cos(ang),sin(ang));
mnx = min(a[j].real(),mnx);
mxx = max(a[j].real(),mxx);
mny = min(a[j].imag(),mny);
mxy = max(a[j].imag(),mxy);
}
ans = min(ans,max(mxx-mnx,mxy-mny));
}
printf("%.4lf\n",ans);
}
int main()
{
int t = 1;
//scanf("%d",&t);
while(t--)
{
solve();
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgTiAxMDAxCgpjb21wbGV4PGRvdWJsZT4gYVtOXTsKI2RlZmluZSBMSU0gMTAwMDAwMDAwCgp2b2lkIHNvbHZlKCkKewogICAgaW50IG4saSxqOwogICAgZG91YmxlIHgseTsKICAgIHNkKG4pOwogICAgZm9yKGk9MDtpPG47KytpKQogICAgewogICAgICAgIGNpbiA+PiB4ID4+IHkgOwogICAgICAgIGFbaV0ucmVhbCh4KTsKICAgICAgICBhW2ldLmltYWcoeSk7CiAgICB9CiAgICBpbnQgSVRFUiA9IExJTS9uOwogICAgZG91YmxlIGFuZyA9IE1fUEkvSVRFUjsKICAgIGRvdWJsZSBhbnMgPSAxMDAwMC4wOwogICAgZG91YmxlIG1ueCxtbnksbXh4LG14eTsKICAgIGZvcihpPTA7aTxJVEVSOysraSkKICAgIHsKICAgICAgICBtbnggPSAxMDAwMC4wLG14eD0tMTAwMDAuMDsKICAgICAgICBtbnkgPSAxMDAwMC4wLG14eT0tMTAwMDAuMDsKICAgICAgICBmb3Ioaj0wO2o8bjsrK2opCiAgICAgICAgewogICAgICAgIAkvL1JvdGF0aW5nIHBvaW50IGFbal0gYnkgJ2FuZycgcmFkaWFucwogICAgICAgICAgICBhW2pdICo9IGNvbXBsZXg8ZG91YmxlPihjb3MoYW5nKSxzaW4oYW5nKSk7CiAgICAgICAgICAgIG1ueCA9IG1pbihhW2pdLnJlYWwoKSxtbngpOwogICAgICAgICAgICBteHggPSBtYXgoYVtqXS5yZWFsKCksbXh4KTsKICAgICAgICAgICAgbW55ID0gbWluKGFbal0uaW1hZygpLG1ueSk7CiAgICAgICAgICAgIG14eSA9IG1heChhW2pdLmltYWcoKSxteHkpOwogICAgICAgIH0KICAgICAgICBhbnMgPSBtaW4oYW5zLG1heChteHgtbW54LG14eS1tbnkpKTsKICAgIH0KICAgIHByaW50ZigiJS40bGZcbiIsYW5zKTsKCn0KCmludCBtYWluKCkKewogICAgaW50IHQgPSAxOwogICAgLy9zY2FuZigiJWQiLCZ0KTsKICAgIHdoaWxlKHQtLSkKICAgIHsKICAgICAgICBzb2x2ZSgpOwogICAgfQp9Cgo=