#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  while (t--) {
    int n;
    cin >> n;
    vector<int> adj[1000 + 5];
    set<int> myset;
    set<int>::iterator it;
    for (int i = 0; i < n; i++) {
      int a, b;
      cin >> a >> b;
      adj[a].push_back(b);
      myset.insert(a);
    }
    bool flag = true;
    int mx = 0;
    it = myset.begin();
    for (int i = 0; i < adj[*it].size(); i++) mx = max(mx, adj[*it][i]);
    it++;
    for (; it != myset.end() && flag; ++it) {
      int temp = 0;
      for (int j = 0; j < adj[*it].size() && flag; j++) {
        if (adj[*it][j] < mx) {
          flag = false;
          break;
        }
        temp = max(temp, adj[*it][j]);
      }
      mx = max(mx, temp);
    }
    if (flag) {
      cout << "YES\n";
      int u = 0, r = 0;
      mx = 0;
      for (it = myset.begin(); it != myset.end(); ++it) {
        for (int m = 0; m < (*it) - r; m++) cout << "R";
        r = (*it);
        mx = 0;
        for (int i = 0; i < adj[*it].size(); i++) {
          mx = max(mx, adj[*it][i]);
        }
        for (int i = 0; i < mx - u; i++) cout << "U";
        u = mx;
      }
      cout << endl;
    } else
      cout << "NO\n";
  }
  return 0;
}
