#include<iostream>
#include<cstring>
using namespace std;
const int MAX=1000005;
bool a[MAX]={0};
int n,l=0,s=MAX;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
int x,y;
cin>>x>>y;
for(int i=x;i<y;i++)
a[i]=1;
if(y>l)
l=y;
if(x<s)
s=x;
}
int mmax=0,mmin=0,t1=0,t2=0;
for(int i=1;i<l;i++)
{
if(a[i]==1)
{
t1++;
mmax=max(mmax,t1);
}
else
t1=0;
}
for(int i=s;i<l;i++)
{
if(a[i]==0)
{
t2++;
mmin=max(t2,mmin);
}
else
t2=0;
}
cout<<mmax<<" "<<mmin<<endl;
return 0;
}