#include <bits/stdc++.h> using namespace std; #define rep(i, n) for (int i = 0; i < (int)(n); i++) typedef vector<int> VI; typedef vector<VI> VVI; typedef vector<long long> VL; typedef vector<VL> VVL; typedef long long LL; #define all(a) (a).begin(), (a).end() #define Yes(n) cout << ((n) ? "Yes" : "No" ) << endl #define ALL(a) (a).begin(),(a).end() #define pb push_back int main() { int n,q;cin>>n>>q; VI A,B; if(n%2){A.pb(n);} for(int i=1;i<n;i+=2){ cout<<"? "<<i<<' '<<n<<' '<<i+1<<' '<<n<<endl; bool h;cin>>h; if(h){A.pb(i+1);B.pb(i);} else{A.pb(i);B.pb(i+1);} }//Aが大 int a=A[0]; int m=A.size(); for(int i=1;i<m;i++){ cout<<"? "<<a<<' '<<n<<' '<<A[i]<<' '<<n<<endl; bool h;cin>>h; if(h){a=A[i];} } int b=B[0]; m=B.size(); for(int i=1;i<m;i++){ cout<<"? "<<b<<' '<<n<<' '<<B[i]<<' '<<n<<endl; bool h;cin>>h; if(!h){b=B[i];} } cout<<"! "<<b<<' '<<b<<' '<<a<<' '<<n<<endl; }