#include <bits/stdc++.h>
using namespace std;
void solve(void) {
  int n;
  cin >> n;
  vector<pair<int, string>> ps(n), ans;
  for (auto &p : ps) {
    cin >> p.second >> p.first;
  }
  sort(ps.begin(), ps.end());
  int h = 3000;
  for (const auto &p : ps) {
    if (p.first == 0) {
      ans.push_back({30000 - h--, p.second});
      continue;
    }
    auto pos = ans.begin() + p.first;
    if (pos > ans.end()) {
      cout << -1 << endl;
      return;
    }
    ans.insert(pos, {h--, p.second});
  }
  for (auto a : ans) {
    cout << a.second << ' ' << a.first << '\n';
  }
}
int main() {
  solve();
  return 0;
}
