#include #include #include #include using namespace std; using ll = long long; #define rep(i, n) for(int i=0; i> n; if(n == 2) { cout << "? 0 1" << endl; ll ret; cin >> ret; if(ret == 1) { cout << "! 11" << endl; } else if(ret == 25) { cout << "! 55" << endl; } else if(ret == 49) { cout << "! 77" << endl; } else if(ret == 64) { cout << "! 88" << endl; } else if(ret == 81) { cout << "! 99" << endl; } else { cout << "! -1" << endl; return 1; } } else { vector res(n); rep(i, n-1){ cout << "? 0 " << i+1 << endl; cin >> res[i+1]; if(res[i+1] == 0) { cout << "! -1" << endl; return 1; } } cout << "? 1 2" << endl; ll res12; cin >> res12; res[0] = res[1] * res[2] / res12; ll a0 = sqrt(res[0]); cout << "! "; rep(i, n) { cout << res[n-1-i] / a0; } cout << endl; } }