Problem: This is an interactive task.

We have 2N balls arranged in a row, numbered 1, 2, 3, ..., 2N from left to right, where N is an odd number. Among them, there are N red balls and N blue balls.

While blindfolded, you are challenged to guess the color of every ball correctly, by asking at most 210 questions of the following form:

* You choose any N of the 2N balls and ask whether there are more red balls than blue balls or not among those N balls.



Now, let us begin.

Constraints

* 1 \leq N \leq 99
* N is an odd number.



* * *



Example

Input




Output

Solution (in CPP):

Solution:
#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;
}