#include <bits/stdc++.h>
using namespace std;
set<pair<int, int> > sii;
int n, s, d;
int first = 1;
bool puedo_insert() {
  bool result = true;
  int ant = 1;
  for (auto &p : sii) {
    if (p.first >= s) {
      if (s + d - 1 >= p.first || s < ant) {
        result = false;
      }
      break;
    } else {
      ant = p.second;
    }
  }
  if (result) {
    if (ant >= s) {
      result = false;
    }
  }
  return result;
}
void buscar_insertar() {
  int ant = 1;
  bool b = false;
  for (auto &p : sii) {
    if (d <= p.first - ant) {
      sii.insert(pair<int, int>(ant, ant + d - 1));
      cout << ant << " " << ant + d - 1 << endl;
      b = true;
      break;
    } else {
      ant = p.second + 1;
    }
  }
  if (!b) {
    sii.insert(pair<int, int>(ant, ant + d - 1));
    cout << ant << " " << ant + d - 1 << endl;
  }
}
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> s >> d;
    if (puedo_insert()) {
      sii.insert(pair<int, int>(s, s + d - 1));
      cout << s << " " << s + d - 1 << endl;
    } else {
      buscar_insertar();
    }
  }
  return 0;
}
