#include<stdio.h>
#include<algorithm>
#include<iostream>
using namespace std;
const int maxn=20005;
long long t1[maxn],t2[maxn],ans,N;
int M;
struct Cow
{
int x,v;
}c[20005];
int cmp(Cow c1,Cow c2)
{
return c1.v<c2.v;
}
int lowbit(int x)
{
return x & (-x);
}
void insert(int x,int detal,long long t[])
{
for(int i=x;i<=M;i+=lowbit(i))
t[i]+=detal;
}
long long getsum(int x,long long t[])
{
long long ret=0;
for(int i=x;i>0;i-=lowbit(i))
ret+=t[i];
return ret;
}
int main()
{
// freopen("test.txt","r",stdin);
scanf("%d",&N);
for(int i=0;i<N;i++)
{
scanf("%d%d",&c[i].v,&c[i].x);
M=max(c[i].x,M);
}
sort(c,c+N,cmp);
memset(t1,0,sizeof(t1));
memset(t2,0,sizeof(t2));
long long tsum=0;
for(int i=0;i<N;i++)
{
int x=c[i].x,v=c[i].v;
long long cnt=getsum(x,t1),sum=getsum(x,t2);
ans+=(long long)v*((cnt*x-sum)+(tsum-sum-(i-cnt)*x));
insert(x,1,t1);
insert(x,x,t2);
tsum+=c[i].x;
}
printf("%lld\n",ans);
return 0;
}