#include <bits/stdc++.h>
long long min(long long a, long long b) {
  if (a < b) return a;
  return b;
}
int n;
long long p, m;
long long d[100001], t[100000];
int main() {
  scanf("%d%I64d%I64d", &n, &p, &m);
  for (int(i) = (0); (i) <= (n - 1); (i) += (1))
    scanf("%I64d%I64d", d + i, t + i);
  d[n] = m + 1;
  long long now = -(d[0] - 1) * p, ans = 0;
  for (int(i) = (0); (i) <= (n - 1); (i) += (1)) {
    now += t[i];
    long long l = d[i + 1] - d[i];
    long long T = now / p;
    if (T < 0) T = 0;
    ans += min(l, T);
    now -= l * p;
  }
  printf("%I64d", m - ans);
}
