#include <bits/stdc++.h>
using namespace std;
const int maxn = 100000 + 10;
struct node {
  int t;
  int x;
  int y;
} tt[maxn];
int main() {
  int n, m, s, f;
  while (~scanf("%d%d%d%d", &n, &m, &s, &f)) {
    memset(tt, 0, sizeof tt);
    for (int i = 0; i < m; i++) {
      scanf("%d%d%d", &tt[i].t, &tt[i].x, &tt[i].y);
    }
    int cnt = 0;
    int time = 1;
    int peo = s;
    int jj;
    if (f > s)
      jj = 1;
    else
      jj = -1;
    while (peo != f) {
      if (tt[cnt].t != time) {
        peo += jj;
        if (jj == 1) {
          printf("R");
        } else
          printf("L");
      } else if ((peo < tt[cnt].x || peo > tt[cnt].y) &&
                 ((peo + jj) < tt[cnt].x || (peo + jj) > tt[cnt].y)) {
        peo += jj;
        if (jj == 1) {
          printf("R");
        } else
          printf("L");
        cnt++;
      } else {
        printf("X");
        cnt++;
      }
      time++;
    }
    printf("\n");
  }
  return 0;
}
