#include <bits/stdc++.h>
using namespace std;
struct ch {
  int r, i;
};
ostringstream ss;
int main() {
  cin.tie(NULL);
  int n, m, s, d;
  cin >> n >> m >> s >> d;
  vector<int> A(n);
  for (int z = 0; z < n; z++) {
    cin >> A[z];
  }
  sort(A.begin(), A.end());
  vector<int> p;
  for (int z = 1; z < n; z++) {
    p.push_back(A[z] - A[z - 1] - 2);
  }
  p.push_back(m - A[n - 1] - 1);
  int now = 0, i = 0, j;
  string ans = "";
  while (true) {
    if (A[i] - now - 1 < s) {
      cout << "IMPOSSIBLE";
      return 0;
    }
    ss << (A[i] - 1 - now);
    ans += "RUN " + ss.str();
    ss.str("");
    ans += "\n";
    now = A[i] - 1;
    j = i;
    ch max;
    max.r = -1;
    max.i = -1;
    while (true) {
      if (A[j] + 1 - now > d) break;
      if (p[j] > max.r) {
        max.r = p[j];
        max.i = j;
      }
      j++;
      if (j >= n) {
        max.r = p[n - 1];
        max.i = n - 1;
        break;
      }
    }
    if (max.r == -1) {
      cout << "IMPOSSIBLE";
      return 0;
    }
    ss << (A[max.i] + 1 - now);
    ans += "JUMP " + ss.str();
    ans += "\n";
    ss.str("");
    now = A[max.i] + 1;
    i = max.i + 1;
    if (now == m) break;
    if (i >= n) {
      ss << (m - now);
      ans += "RUN " + ss.str();
      ss.str("");
      break;
    }
  }
  cout << ans;
}
