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;
int n;
vector<int> v1,v2;
char s[5],res[666];
inline char Q1(int l,int r) {
    printf("? ");
    for (int i=l;i<=r;++i)
        printf("%d%c",i,i==r?'\n':' ');
    fflush(stdout);
    char s[5];scanf("%s",s);
    return s[0];
}
inline char Q2(vector<int> &vec) {
    printf("? ");
    for (int i=0;i<(int)vec.size();++i)
        printf("%d%c",vec[i],i+1==(int)vec.size()?'\n':' ');
    fflush(stdout);
    char s[5];scanf("%s",s);
    return s[0];
}
int main()
{
    scanf("%d",&n);
    char a=Q1(1,n);
    char b=(a=='R')?'B':'R';
    int left=1,right=n+1;
    while (left+1<right) {
        int mid=(left+right)>>1;
        int c=Q1(mid,mid+n-1);
        if (a==c) left=mid;
        else right=mid;
    }
    res[left]=a;
    res[left+n]=b;
    for (int i=1;i<=n+n;++i) {
        if (i>=right&&i<=left+n-1) v1.push_back(i);
        if (i+1<right||i>left+n) v2.push_back(i);
    }
    for (int i=1;i<=n+n;++i) if (!res[i]) {
        if (i>=right&&i<=left+n-1) {
            v2.push_back(i);
            res[i]=Q2(v2);
            v2.pop_back();
        } else {
            v1.push_back(i);
            res[i]=Q2(v1);
            v1.pop_back();
        }
    }
    printf("! ");
    puts(res+1);
    fflush(stdout);
    return 0;
}