#pragma GCC optimize("O3")
#include<bits/stdc++.h>
#define ll long long
#define endl "\n"
#define AI ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
struct pr
{
ll a;
ll b;
};
bool comp(pr&x,pr&y)
{
if(x.a==y.a)
return x.b<y.b;
return x.a<y.a;
}
int main()
{
AI
//freopen("input.txt", "r", stdin);
//freopen("output.txt", "w", stdout);
ll n,i,j;
cin>>n;
vector<pr>v(n);
for(i=0;i<n;i++)
cin>>v[i].a>>v[i].b;
ll ans=0;
sort(v.begin(),v.end(),comp);
vector<ll>p(n+1,0);
p[0]=0;
for(i=1;i<=n;i++)
p[i]=p[i-1]+v[i-1].b;
ans=0;
ll mij=0;
for(i=0;i<n;i++)
{
if((p[i+1]-p[0])-v[i].a+v[0].a>ans)
mij=i,ans=(p[i+1]-p[0])-v[i].a+v[0].a;
}
ll ann=ans;
for(i=0;i<=mij;i++)
{
ann=(p[mij+1]-p[i])-v[mij].a+v[i].a;
ans=max(ann,ans);
}
cout<<ans;
}