t=int;u=input;N,Q=map(t,().split());s=[];l=[];k=lambda x,y:print("?",x,N,y,N) for i in range(0,N,2): k(p:=i+1,q:=i+2) if t(u()): l.append(q);s.append(p) else: l.append(p);s.append(q) m=1;a=1; for i in s: k(m,i) if 1-t(u()):sm=i for i in l: k(a,i) if t(u()):a=i print("!",s,s,a,N)