from functools import cmp_to_key N,Q=map(int,input().split()) A=[i+1 for i in range(N)] A_=[2,3,1] def ans(a,b,c,d): X=int(input()) return X if A_[a-1:b] < A_[c-1:d]: print(0) return 0 else: print(1) return 1 def f(a,b): print('?',a,N,b,N,flush=True) X=ans(a,N,b,N) if X==0: return -1 else: return 1 A.sort(key=cmp_to_key(f)) print('!',A[0],A[0],A[-1],N)