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 all(vec) vec.begin(),vec.end()
using namespace std;
using ll=long long;
const ll LINF=(1LL<<60)-1LL;
int ask(vector<int> a){
	cout<<"? ";
	for(int i=0;i<a.size();i++){
		cout<<a[i];
		if(i+1<a.size()){
			cout<<" ";
		}
	}
	cout<<endl;
	string s;
	cin>>s;
	if(s=="Red"){
		return 0;
	}else if(s=="Blue"){
		return 1;
	}
	return -1;
}
int main(){
	cin.tie(0);
	ios::sync_with_stdio(false);
	int n;
	cin>>n;
	vector<int> a(n),s(2*n+1);
	for(int i=0;i<n;i++){
		a[i]=i+1;
	}
	int b=ask(a);
	int ok=n+1,ng=1;
	while(ok-ng>1){
		int mid=(ok+ng)/2;
		for(int i=mid;i<=mid+n;i++){
			a[i-mid]=i;
		}
		int t=ask(a);
		if(t!=b){
			ok=mid;
		}else{
			ng=mid;
		}
	}
	s[ng]=b;
	s[ok+n-1]=(b^1);
	vector<int> c;
	for(int i=1;i<=2*n;i++){
		if(ng<=i&&i<ng+n){
			a[i-ng]=i;
		}else{
			c.push_back(i);
		}
	}
	for(int i=1;i<=2*n;i++){
		if(i==ng||i==ok+n-1){
			continue;
		}
		int id;
		if(ng<=i&&i<ng+n){
			for(int j=0;j<n;j++){
				if(c[j]==ok+n-1){
					c[j]=i;
					id=j;
				}
			}
			int t=ask(c);
			s[i]=t;
			c[id]=ok+n-1;
		}else{
			for(int j=0;j<n;j++){
				if(a[j]==ng){
					a[j]=i;
					id=j;
				}
			}
			int t=ask(a);
			s[i]=t;
			a[id]=ng;
		}
	}
	cout<<"! ";
	for(int i=1;i<=2*n;i++){
		if(s[i]==0){
			cout<<"R";
		}else{
			cout<<"B";
		}
	}
	cout<<endl;
	return 0;
}