#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
struct node
{
long long x,y;
node(long long x1,long long y1)
{
x=x1;
y=y1;
}
};
bool comp(node*a,node*b)
{
return a->x < b->x;
}
int main() {
long long n;
cin>>n;
vector<node*> V;
for(long long i=0;i<n;i++)
{
long long a,d;
cin>>a>>d;
V.push_back(new node(a,d));
}
sort(V.begin(),V.end(),comp);
long long currentTime=0;
long long reward=0;
for(long long i=0;i<n;i++)
{
currentTime+=V[i]->x;
reward += V[i]->y - currentTime;
}
cout<<reward<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IG5vZGUKewoJbG9uZyBsb25nIHgseTsKCW5vZGUobG9uZyBsb25nIHgxLGxvbmcgbG9uZyB5MSkKCXsKCQl4PXgxOwoJCXk9eTE7Cgl9Cn07Cgpib29sIGNvbXAobm9kZSphLG5vZGUqYikKewoJcmV0dXJuIGEtPnggPCBiLT54Owp9CgppbnQgbWFpbigpIHsKCQoJbG9uZyBsb25nIG47CgljaW4+Pm47CgkKCXZlY3Rvcjxub2RlKj4gVjsKCQoJZm9yKGxvbmcgbG9uZyBpPTA7aTxuO2krKykKCXsKCQlsb25nIGxvbmcgYSxkOwoJCWNpbj4+YT4+ZDsKCQlWLnB1c2hfYmFjayhuZXcgbm9kZShhLGQpKTsKCX0KCQoJc29ydChWLmJlZ2luKCksVi5lbmQoKSxjb21wKTsKCQoJbG9uZyBsb25nIGN1cnJlbnRUaW1lPTA7Cglsb25nIGxvbmcgcmV3YXJkPTA7Cglmb3IobG9uZyBsb25nIGk9MDtpPG47aSsrKQoJewoJCWN1cnJlbnRUaW1lKz1WW2ldLT54OwoJCXJld2FyZCArPSBWW2ldLT55IC0gY3VycmVudFRpbWU7Cgl9CgkKCWNvdXQ8PHJld2FyZDw8ZW5kbDsKCQoJcmV0dXJuIDA7Cn0=