#include <bits/stdc++.h>
using namespace std;
long long Inf = (long long)1e20;
vector<pair<int, char> > res;
void add(int k, char c = ' ') { res.push_back(make_pair(k, c)); }
void addHor(int dx) {
  if (dx > 0)
    add(dx, 'R');
  else if (dx < 0)
    add(-dx, 'L');
}
int main() {
  ios_base::sync_with_stdio(false);
  int n;
  cin >> n;
  vector<int> hor;
  vector<pair<int, int> > m;
  for (int i = 0; i < n; i++) {
    int x, y;
    cin >> x >> y;
    if (y == 0)
      hor.push_back(x);
    else
      m.push_back(make_pair(y, x));
  }
  sort(hor.begin(), hor.end());
  sort(m.begin(), m.end());
  for (int i = 0; i < hor.size(); i++)
    if (hor[i] > 0) {
      add(hor[i], 'R');
      add(-2);
      add(hor[i], 'L');
      add(-3);
    }
  for (int i = hor.size() - 1; i >= 0; i--)
    if (hor[i] < 0) {
      add(-hor[i], 'L');
      add(-2);
      add(-hor[i], 'R');
      add(-3);
    }
  for (int i = 0; i < m.size(); i++)
    if (m[i].first > 0) {
      addHor(m[i].second);
      add(m[i].first, 'U');
      add(-2);
      add(m[i].first, 'D');
      addHor(-m[i].second);
      add(-3);
    }
  for (int i = m.size() - 1; i >= 0; i--)
    if (m[i].first < 0) {
      addHor(m[i].second);
      add(-m[i].first, 'D');
      add(-2);
      add(-m[i].first, 'U');
      addHor(-m[i].second);
      add(-3);
    }
  cout << res.size() << '\n';
  for (int i = 0; i < res.size(); i++)
    if (res[i].first < 0)
      cout << -res[i].first << '\n';
    else
      cout << 1 << ' ' << res[i].first << ' ' << res[i].second << '\n';
}
