#include <bits/stdc++.h>
using namespace std;
const int dod = 200000;
int n, lp;
vector<pair<int, int> > graf[400005];
int deg[400005];
map<pair<int, int>, int> ryby;
bool used[400005], isRed[400005];
void dfs(int a) {
  while (!graf[a].empty()) {
    auto p = graf[a].back();
    graf[a].pop_back();
    if (used[p.second]) continue;
    used[p.second] = true;
    dfs(p.first);
    if (a > dod) {
      if (ryby.find({p.first, a}) != ryby.end())
        isRed[ryby[{p.first, a}]] = true;
    }
  }
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> n;
  for (int i = 0; i < n; i++) {
    int x, y;
    cin >> x >> y;
    y += dod;
    ryby[{x, y}] = i;
    graf[x].push_back({y, lp});
    graf[y].push_back({x, lp++});
    deg[x]++, deg[y]++;
  }
  vector<int> odd;
  for (int i = 1; i <= 2 * dod; i++) {
    if (deg[i] & 1) odd.push_back(i);
  }
  for (int i = 0; i < (int)(odd).size(); i += 2) {
    graf[odd[i]].push_back({odd[i + 1], lp});
    graf[odd[i + 1]].push_back({odd[i], lp++});
  }
  for (int i = 1; i <= 2 * dod; i++) dfs(i);
  for (int i = 0; i < n; i++) cout << (isRed[i] ? 'r' : 'b');
  cout << "\n";
  return 0;
}
