#include <bits/stdc++.h>
using namespace std;
int n, r[1111111], rr[1111111], k;
char c[1111111];
struct pt {
  int a, b;
} t[111111];
bool cmp(pt t, pt y) {
  return ((t.a) < 0 ? -(t.a) : (t.a)) + ((t.b) < 0 ? -(t.b) : (t.b)) <
         ((y.a) < 0 ? -(y.a) : (y.a)) + ((y.b) < 0 ? -(y.b) : (y.b));
}
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) cin >> t[i].a >> t[i].b;
  sort(t + 1, t + n + 1, cmp);
  for (int i = 1; i <= n; i++) {
    if (t[i].a > 0) r[++k] = 1, rr[k] = t[i].a, c[k] = 'R';
    if (t[i].a < 0) r[++k] = 1, rr[k] = -t[i].a, c[k] = 'L';
    if (t[i].b > 0) r[++k] = 1, rr[k] = t[i].b, c[k] = 'U';
    if (t[i].b < 0) r[++k] = 1, rr[k] = -t[i].b, c[k] = 'D';
    r[++k] = 2;
    if (t[i].a > 0) r[++k] = 1, rr[k] = t[i].a, c[k] = 'L';
    if (t[i].a < 0) r[++k] = 1, rr[k] = -t[i].a, c[k] = 'R';
    if (t[i].b > 0) r[++k] = 1, rr[k] = t[i].b, c[k] = 'D';
    if (t[i].b < 0) r[++k] = 1, rr[k] = -t[i].b, c[k] = 'U';
    r[++k] = 3;
  }
  cout << k << endl;
  for (int i = 1; i <= k; i++)
    if (r[i] > 1)
      cout << r[i] << endl;
    else
      cout << r[i] << " " << rr[i] << " " << c[i] << endl;
  return 0;
}
