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 main(){
  int N;
  cin >> N;
  string T;
  cout << "?";
  for (int i = 1; i <= N; i++){
    cout << ' ' << i;
  }
  cout << endl;
  cin >> T;
  int red, blue;
  if (T == "Red"){
    red = N;
    blue = 0;
  } else {
    red = 0;
    blue = N;
  }
  while (abs(red - blue) > 1){
    int mid = (red + blue) / 2;
    cout << "?";
    for (int i = 1; i <= mid; i++){
      cout << ' ' << i;
    }
    for (int i = N + mid + 1; i <= N * 2; i++){
      cout << ' ' << i;
    }
    cout << endl;
    cin >> T;
    if (T == "Red"){
      red = mid;
    } else {
      blue = mid;
    }
  }
  vector<bool> in_red(N * 2, false);
  for (int i = 0; i < red; i++){
    in_red[i] = true;
  }
  for (int i = N + red; i < N * 2; i++){
    in_red[i] = true;
  }
  vector<bool> in_blue(N * 2, false);
  for (int i = 0; i < blue; i++){
    in_blue[i] = true;
  }
  for (int i = N + blue; i < N * 2; i++){
    in_blue[i] = true;
  }
  vector<char> ans(N * 2);
  for (int i = 0; i < N * 2; i++){
    vector<int> A;
    if (in_red[i] && in_blue[i]){
      for (int j = 0; j < N * 2; j++){
        if (!in_red[j] && !in_blue[j] || i == j){
          A.push_back(j);
        }
      }
    } else {
      for (int j = 0; j < N * 2; j++){
        if (in_red[j] && in_blue[j] || i == j){
          A.push_back(j);
        }
      }
    }
    cout << '?';
    for (int j : A){
      cout << ' ' << j + 1;
    }
    cout << endl;
    cin >> T;
    ans[i] = T[0];
  }
  cout << "! ";
  for (int i = 0; i < N * 2; i++){
    cout << ans[i];
  }
  cout << endl;
}