#include <bits/stdc++.h>
using namespace std;
int main() {
  vector<int> v = {0, 4, 8, 15, 16, 23, 42};
  int ans[5];
  for (int i = 1; i <= 4; i++) {
    cout << "?"
         << " " << i << " " << i + 1 << endl;
    cout.flush();
    cin >> ans[i];
  }
  do {
    int flag = 0;
    for (int i = 1; i <= 4; i++) {
      if (v[i] * v[i + 1] != ans[i]) {
        flag = 1;
        break;
      }
    }
    if (flag == 0) {
      break;
    }
  } while (next_permutation(v.begin() + 1, v.end()));
  cout << "! ";
  for (int i = 1; i <= 6; i++) {
    cout << v[i] << " ";
  }
  cout << endl;
  cout.flush();
}
