n,q=map(int,input().split()) x=[] for i in range(500): print('?',2*i+1,n,2*i+2,n) v=input()=='1' x.append([2*i+1+v,2*i+1+1^v]) a,b=x[0] for i in range(1,500): p,q=x[i] print('?',a,a,p,p) if input()=='0': a=p print('?',b,n,q,n) if input()=='1': b=q print('!',a,a,b,n)