#include <bits/stdc++.h>
using namespace std;
int n, maxi;
int reg;
struct magia {
  int nom;
  int sec;
};
magia ans[1003];
int coun;
bool used[1003];
struct svi {
  int dmg;
  int pow;
};
svi a[1003];
int main() {
  scanf("%d %d %d", &n, &maxi, &reg);
  int i;
  for (i = 0; i < n; i++) scanf("%d %d", &a[i].pow, &a[i].dmg);
  int zdor = maxi;
  int good = 0;
  int tim;
  for (tim = 0; tim < 3000; tim++) {
    zdor -= good;
    zdor += reg;
    zdor = min(zdor, maxi);
    if (zdor <= 0) break;
    int maxi2 = 0;
    for (i = 0; i < n; i++)
      if (!used[i] &&
          ((zdor * 100) / maxi + min(1, (zdor * 100) % maxi)) <= a[i].pow &&
          a[i].dmg > maxi2)
        maxi2 = a[i].dmg;
    if (maxi2 > 0) {
      for (i = 0; i < n; i++)
        if (!used[i] &&
            ((zdor * 100) / maxi + min(1, (zdor * 100) % maxi)) <= a[i].pow &&
            a[i].dmg == maxi2) {
          used[i] = true;
          good += a[i].dmg;
          ans[coun].nom = i + 1;
          ans[coun++].sec = tim;
          break;
        }
    }
  }
  if (tim == 3000) {
    printf("NO\n");
    return 0;
  }
  printf("YES\n");
  printf("%d %d\n", tim, coun);
  for (i = 0; i < coun; i++) printf("%d %d\n", ans[i].sec, ans[i].nom);
  return 0;
}
