# include <bits/stdc++.h>
using namespace std;
ifstream fi("cmap.in");
ofstream fo("cmap.out");
# define ll long long
# define x first
# define y second
# define pll pair < ll , ll >
pll s[100005];
long double ans = (1LL << 62);
long double take(pll a,pll b)
{
return sqrt(pow(a.x - b.x,2.) + pow(a.y - b.y,2.));
}
ll ok(pll a,pll b)
{
if (a.x == b.x) return abs(a.y - b.y);
return abs(a.x - b.x);
}
int main(void)
{
int n;
fi>>n;
for (int i = 1;i <= n;++i) fi>>s[i].x>>s[i].y;
sort(s+1,s+1+n);
for (int i = 1;i <= n;++i)
for (int j = i + 1;j <= n && ok(s[i],s[j]) < ans;++j)
if (abs(s[j].y - s[i].y) < ans)
ans = min(ans,take(s[i],s[j]));
return fo << fixed << setprecision(6) << ans << '\n',0;
}