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;

#define rep(i, N) for (int i = 0; i < (N); i++)
#define all(a) (a).begin(), (a).end()
#define pb push_back

using ll = long long;
using i_i = tuple<int, int>;

int query(vector<int> a) {
    cout << '?';
    for (int x: a) cout << ' ' << x + 1;
    cout << endl;
    string s; cin >> s;
    if (s == "Red") return 0;
    if (s == "Blue") return 1;
    exit(1);
}

map<i_i, int> mp;

int query(int l, int r) {
    auto lr = i_i(l, r);
    if (mp.count(lr)) return mp[lr];
    vector<int> a(r - l);
    rep(i, r - l) a[i] = l + i;
    return mp[lr] = query(a);
}

int main() {
    int N; cin >> N;
    int l = 0, r = N;
    while (r - l > 1) {
        int m = (l + r) / 2;
        int x = query(l, l + N);
        int y = query(r, r + N);
        int z = query(m, m + N);
        if (z == x) l = m;
        if (z == y) r = m;
    }
    vector<int> ans(N * 2);
    rep(i, N * 2) {
        vector<int> a;
        if (l + 1 <= i && i < l + N) {
            for (int i = 0; i < l; i++) a.pb(i);
            for (int i = r + N; i < N * 2; i++) a.pb(i);
        }
        else {
            for (int i = l + 1; i < l + N; i++) a.pb(i);
        }
        a.pb(i);
        ans[i] = query(a);
    }
    string s(N * 2, ' ');
    rep(i, N * 2) s[i] = "RB"[ans[i]];
    cout << "! " << s << endl;
}