#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n,x,y,fa[N],vis[N],maxx,cnt[N];
int find(int x){
if(fa[x]==x) return x;
return fa[x]=find(fa[x]);
}
int main(){
cin>>n;
for(int i=1;i<=10000;i++) fa[i]=i;
for(int i=1;i<=n;i++){
cin>>x>>y;
int fx=find(x),fy=find(y);
if(fx==fy) vis[fx]=1;
else{
if(fx>fy) swap(fx,fy);
vis[fx]=1;
fa[fx]=fy;
}
}
for(int i=1;i<=10000;i++){
if(vis[i]==1) cnt[i]=cnt[i-1]+1;
maxx=max(maxx,cnt[i]);
}
cout<<maxx;
return 0;
}