#include <bits/stdc++.h>
using namespace std;
#define int long long
const int INF = 1e18;
const int MOD = 1e9+7;
const int MAXN = 2e5;
int n, m;
int arr[MAXN+5];
bool ask(int l, int r){
cout << "? " << l << ' ' << r << endl;
bool jury; cin >> jury;
return jury;
}
void solve(){
cin >> n;
int ans = 1;
// tanya yg awalnya panjang 2
for(int i = 1; i <= n - 1; i++){
int cnt = 0;
int l = i, r = i + 1;
while(ask(l, r)){
cnt += 2;
l--; r++;
if(l < 1) break;
if(r > n) break;
}
ans = max(cnt, ans);
}
// tanya yg awalnya panjang 3
for(int i = 1; i <= n - 2; i++){
int cnt = 1;
int l = i, r = i + 2;
while(ask(l, r)){
cnt += 2;
l--; r++;
if(l < 1) break;
if(r > n) break;
}
ans = max(cnt, ans);
}
cout << "! " << ans << endl;
}
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int tc = 1;
// cin >> tc;
while(tc--){
solve();
}
return 0;
}