#include <bits/stdc++.h>
using namespace std;
bool mysort(pair<int, int> a, pair<int, int> b) {
  if (abs(a.first) != abs(b.first)) return abs(a.first) < abs(b.first);
  return abs(a.second) < abs(b.second);
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long int n, i, j = 0, nm = 0, cou = 0, sum = 0;
  long long int mx = INT_MIN, mn = INT_MAX, lz = 0, rz = 0, lo = 0,
                ro = INT_MAX, mi = 0;
  long long int mid, k, m;
  long long int x, y, z = 0, merged = 0, add = 0;
  long long int a = 0, q, ff = 0, found = 0, p = 0, avg, ind = 0, cnt = 0,
                t = 0, c = 0, f = 0;
  cin >> n;
  vector<pair<int, int>> v(n);
  for (i = 0; i < n; i++) {
    cin >> v[i].first >> v[i].second;
    if (v[i].first == 0 || v[i].second == 0)
      cou += 4;
    else
      cou += 6;
  }
  sort(v.begin(), v.end(), mysort);
  cout << cou << endl;
  for (i = 0; i < n; i++) {
    int r = v[i].first, u = v[i].second;
    char horiz = (r > 0) ? 'R' : 'L', vert = (u > 0) ? 'U' : 'D';
    char nhor = (horiz == 'R') ? 'L' : 'R', nver = (vert == 'U') ? 'D' : 'U';
    if (r < 0) r = -r;
    if (u < 0) u = -u;
    if (r != 0) cout << 1 << " " << r << " " << horiz << "\n";
    if (u != 0) cout << 1 << " " << u << " " << vert << "\n";
    cout << 2 << "\n";
    if (r != 0) cout << 1 << " " << r << " " << nhor << "\n";
    if (u != 0) cout << 1 << " " << u << " " << nver << "\n";
    cout << 3 << "\n";
  }
}
