#include <bits/stdc++.h>
using namespace std;
int n, m, reg;
int res = 0;
priority_queue<pair<int, int> > Q;
vector<pair<int, int> > ans, spell[120];
bool solve() {
  int per, b = m, kill = 0;
  while (1) {
    b -= kill;
    b = min(b + reg, m);
    if (b <= 0) return true;
    per = (int)ceil(100.0 * b / m);
    for (int j = (per); j <= (100); j++) {
      for (int i = 0; i < (spell[j].size()); i++) Q.push(spell[j][i]);
      spell[j].clear();
    }
    if (!Q.empty()) {
      pair<int, int> top = Q.top();
      Q.pop();
      ans.push_back(make_pair(res, top.second));
      kill += top.first;
    }
    if (Q.empty() && kill <= reg) return false;
    res++;
  }
}
int main() {
  cin >> n >> m >> reg;
  for (int i = 0; i < (n); i++) {
    int p, d;
    cin >> p >> d;
    spell[p].push_back(make_pair(d, i + 1));
  }
  if (!solve())
    puts("NO");
  else {
    puts("YES");
    cout << res << " " << ans.size() << endl;
    for (int i = 0; i < (ans.size()); i++) {
      cout << ans[i].first << " " << ans[i].second << endl;
    }
  }
}
