#include <bits/stdc++.h>
using namespace std;
ifstream fin ("branza.in");
ofstream fout ("branza.out");
const int nmax = 1e5 + 5;
deque <int> dq;
int n, s, t, c[nmax], p[nmax];
signed main ()
{
fin >> n >> s >> t;
for (int i = 1; i <= n; i++)
fin >> c[i] >> p[i];
int rez = 0;
for (int i = 1; i <= n; i++)
{
while (!dq.empty () && c[i] <= c[dq.back ()] + s * (i - dq.back ()))
dq.pop_back ();
dq.push_back (i);
while (!dq.empty () && i - dq.front () > t)
dq.pop_front ();
rez += p[i] * c[dq.front ()] + s * p[i] * (i - dq.front ());
}
fout << rez;
return 0;
}