#include <bits/stdc++.h>
using namespace std;
vector<int> color(210); // R : 0, B : 1
vector<int> ans(210);
int n = 0;
void pcolor(int pos)
{
    string out;
    out.append("? ");
    for(int i = pos; i < pos+n; i++)
    {
        out.append(to_string(i) + " ");
    }
    cout << out << endl << flush;
    string c;
    cin >> c;
    if(c == "Red") color[pos] = 0;
    else color[pos] = 1;
}
void detcolor(int cand, int pos)
{
    string out;
    out.append("? ");
    for(int i = pos; i < pos+n-1; i++)
    {
        out.append(to_string(i) + " ");
    }
    out.append(to_string(cand));
    cout << out << endl << flush;
    string c;
    cin >> c;
    if(c == "Red") ans[cand] = 0;
    else ans[cand] = 1;
}
void detcolor(int cand, int pos1, int pos2)
{
    string out;
    out.append("? ");
    for(int i = 1; i <= pos1; i++)
    {
        out.append(to_string(i) + " ");
    }
    for(int i = pos2; i <= 2*n; i++)
    {
        out.append(to_string(i) + " ");
    }
    out.append(to_string(cand));
    cout << out << endl << flush;
    string c;
    cin >> c;
    if(c == "Red") ans[cand] = 0;
    else ans[cand] = 1;
}

int main()
{
    cin >> n;
    int h = n+1;
    int l = 1;
    pcolor(l);
    pcolor(h);
    while(h - l > 1)
    {
        int m = (h+l) >> 1;
        pcolor(m);
        if(color[m] == color[h]) h = m;
        else l = m;
    }
    ans[l] = color[l];
    ans[l+n] = color[h];

    for(int i = 1; i < l; i++)
    {
        detcolor(i, l+1);
    }
    for(int i = l+n+1; i <= 2*n; i++)
    {
        detcolor(i, l+1);
    }
    for(int i = l+1; i < l+n; i++)
    {
        detcolor(i, l-1, l+n+1);
    }
    string out;
    out.append("! ");
    for(int i = 1; i <= 2*n; i++)
    {
        if(ans[i] == 0) out.append("R");
        else out.append("B");
    }
    cout << out << endl << flush;
    return 0;
}