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>
#define rep(i,a,b) for(int i = a; i < b; ++i)
#define all(c) c.begin(), c.end()
#define gmax(x,y) x=max(x,y)
#define gmin(x,y) x=min(x,y)
#define gadd(x,y) x=add(x,y)
#define gmul(x,y) x=mul(x,y)
using namespace std;

typedef pair<int,int> pii;
typedef long long ll;
typedef vector<int> vi;

int query(vi &pos){
	cout << "?";
	rep(i,0,pos.size()){
		cout << ' ' << pos[i] + 1;
	}
	cout << endl;
	string s;
	cin >> s;
	if(s == "-1")assert(false);
	return s[0] == 'R' ? 0 : 1;
}

void ans(vi &res){
	cout << "! ";
	rep(i,0,res.size()){
		cout << (res[i] ? 'B' : 'R');
	}
	cout << endl;
}

int main(){
	cin.tie(0);
	cout.tie(0);
	ios_base::sync_with_stdio(0);
	int n;
	cin >> n;
	vi v(n);
	iota(all(v), 0);
	int val = query(v);
	if(n == 1){
		vi res = {val, val?0:1};
		ans(res);
		return 0;
	}
	int l = 0, r = n;
	while(l < r-1){
		int m = (r+l)/2; 
		vi t(n);
		iota(all(t), m);
		int res = query(t);
		if(res == val)l = m;
		else r = m;
	}
	vi eq1,eq2;
	rep(i,0,2*n){
		if(i > l && i < r + n - 1)eq1.emplace_back(i);
		else if(i != l && i != r + n - 1)eq2.emplace_back(i);
	}
	vi ANS(2*n);
	ANS[l] = val;
	ANS[r+n-1] = val ? 0 : 1;
	for(int x:eq1){
		eq2.push_back(x);
		ANS[x] = query(eq2);
		eq2.pop_back();
	}
	for(int x:eq2){
		eq1.push_back(x);
		ANS[x] = query(eq1);
		eq1.pop_back();
	}
	ans(ANS);
}