#include <bits/stdc++.h>
using namespace std;
int n;
string s;
queue<char> ans1;
stack<char> ans2;
bool query(int r1, int c1, int r2, int c2) {
  cout << "? " << r1 << ' ' << c1 << ' ' << r2 << ' ' << c2 << endl;
  cin >> s;
  return s[0] == 'Y';
}
void finish() {
  cout << "! ";
  while (!ans1.empty()) {
    cout << ans1.front();
    ans1.pop();
  }
  while (!ans2.empty()) {
    cout << ans2.top();
    ans2.pop();
  }
  cout << endl;
}
void setup() {
  cin >> n;
  int x = 1, y = 1;
  while (x + y < n + 1) {
    if (query(x + 1, y, n, n)) {
      x++;
      ans1.push('D');
    } else {
      y++;
      ans1.push('R');
    }
  }
  x = y = n;
  while (x + y > n + 1) {
    if (query(1, 1, x, y - 1)) {
      y--;
      ans2.push('R');
    } else {
      x--;
      ans2.push('D');
    }
  }
  finish();
}
void xuly() {}
int main() {
  iostream::sync_with_stdio(0);
  setup();
  xuly();
  return 0;
}
