#include<bits/stdc++.h>
using namespace std;
int n,s[1000005],maxx,f[1000005];
struct lr{
int l,r;
}son[1000005];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>son[i].l>>son[i].r;
f[son[i].l]=i;
f[son[i].r]=i;
}
s[1]=1;
for(int i=2;i<=n;i++){
s[i]=s[f[i]]+1;
maxx=max(s[i],maxx);
}
cout<<maxx;
return 0;
}