n, q = map(int, input().split()) d = [] def ask(i, j): print('?', i + 1, n, j + 1, n) return int(input()) for i in range(0, n, 2): if ask(i, i + 1): d.append((i, i + 1)) else: d.append((i + 1, i)) while len(d) >= 2: imn, imx = d.pop() jmn, jmx = d.pop() kmn = imn if ask(imn, jmn) else jmn kmx = jmx if ask(imx, jmx) else imx d.append((kmn, kmx)) imn, imx = d.pop() print('!', imn + 1, imn + 1, imx + 1, n)