#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:33554432")
using namespace std;
int n, m, s, d;
int a[200000];
int main() {
  scanf("%d%d%d%d", &n, &m, &s, &d);
  for (int i = 0; i < n; ++i) scanf("%d", &a[i]);
  sort(a, a + n);
  int x = 0;
  vector<int> v, res;
  v.push_back(a[0]);
  for (int i = 1; i < n; ++i) {
    if (a[i] - v.back() >= s + 2) {
      if ((v[0] - 1) - x < s || (v.back() + 1) - (v[0] - 1) > d) {
        printf("IMPOSSIBLE\n");
        return 0;
      }
      res.push_back((v[0] - 1) - x);
      res.push_back((v.back() + 1) - (v[0] - 1));
      x = v.back() + 1;
      v.clear();
    }
    v.push_back(a[i]);
  }
  if ((v[0] - 1) - x < s || (v.back() + 1) - (v[0] - 1) > d) {
    printf("IMPOSSIBLE\n");
    return 0;
  }
  res.push_back((v[0] - 1) - x);
  res.push_back((v.back() + 1) - (v[0] - 1));
  x = v.back() + 1;
  if (x != m) res.push_back(m - x);
  for (int i = 0; i < res.size(); ++i) {
    if (i & 1)
      printf("JUMP %d\n", res[i]);
    else
      printf("RUN %d\n", res[i]);
  }
  return 0;
}
