H, W = map(int, input().split()) g = [[1 for _ in range(W + 1)] for _ in range(H + 1)] def query(x, y): global g, H, W print("?", x, y) d = int(input()) c = [] for i in range(1, H + 1): for j in range(1, W + 1): if (x - i) ** 2 + (y - j) ** 2 != d: g[i][j] = 0 if g[i][j]: c.append((i, j)) return c for x, y in [(1, 1), (H, W), (1, W), (H, 1)]: c = query(x, y) if len(c) == 1: exit(print("!", c[0][0], c[0][1]))