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 modulo 1000000007
#define mod(mod_x) ((((long long)mod_x+modulo))%modulo)
#define Inf 1000000000000000002

char show(int l,int n){
	cout<<"?";
	for(int i=0;i<n;i++){
		cout<<" "<<l+i;
	}
	cout<<endl;
	string s;
	cin>>s;
	return s[0];
}

char show2(int l,int n,int x){
	cout<<"?";
	for(int i=0;i<n;i++){
		cout<<" "<<l+i;
	}
	cout<<" "<<x<<endl;
	string s;
	cin>>s;
	return s[0];
}

char show(vector<int> t){
	cout<<"?";
	for(int i=0;i<t.size();i++){
		cout<<" "<<t[i];
	}
	cout<<endl;
	string s;
	cin>>s;
	return s[0];
}

void answer(string s){
	cout<<"! "<<s<<endl;
}

int main(){
	
	int N;
	cin>>N;
	
	char ret = show(1,N);
	
	char C = ret;
	
	int ok = 1,ng = N+1;
	
	while(ng-ok>1){
		int mid = (ok+ng)/2;
		ret = show(mid,N);
		if(ret==C)ok = mid;
		else ng = mid;
	}

	string ans(2*N,'.');
	
	for(int i=1;i<=2*N;i++){
		if(i>=ok+1&&i<=ok+N-1)continue;
		ans[i-1] = show2(ok+1,N-1,i);
	}
	
	for(int i=0;i<2*N;i++){
		if(ans[i]!='.')continue;
		vector<int> t;
		t.push_back(i+1);
		int R=0,B=0;
		for(int j=0;j<2*N;j++){
			if(ans[j]=='R'){
				if(R<N/2){
					R++;
					t.push_back(j+1);
				}
			}
			if(ans[j]=='B'){
				if(B<N/2){
					B++;
					t.push_back(j+1);
				}
			}
		}
		ans[i] = show(t);
	}
	
	answer(ans);

	return 0;
}