#include <bits/stdc++.h>
using namespace std;
int main()
{
int N,t1,t2;
cin>>N;
priority_queue<pair<int,int>> pq;
for(int i=0;i<N;i++){
cin>>t1>>t2;
pq.push(make_pair(t2,t1));
}
int ans=pq.top().first+pq.top().second;
//cout<<ans<<endl;
int print=pq.top().second;
for(int i=0;i<N-2;i++){
//cout<<"i="<<i<<endl;
pq.pop();
//printf("pq.top().first %d pq.top().second %d\n",pq.top().first,pq.top().second);
print+=print+pq.top().second;
ans=max(ans,print+pq.top().first);
//cout<<ans<<endl;
}
cout<<ans<<endl;
return 0;
}