#include <bits/stdc++.h>
using namespace std;
int p[10], q[10];
int main() {
  int n, cnt1 = 0, cnt2 = 0;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    printf("? %d %d %d %d\n", i, 1, i, n);
    fflush(stdout);
    int x;
    scanf("%d", &x);
    if (x & 1) p[++cnt1] = i;
    printf("? %d %d %d %d\n", 1, i, n, i);
    fflush(stdout);
    scanf("%d", &x);
    if (x & 1) q[++cnt2] = i;
  }
  if (cnt1 == 2 && cnt2 == 2) {
    printf("? %d %d %d %d\n", 1, 1, p[1], q[1]);
    fflush(stdout);
    int x;
    scanf("%d", &x);
    if (x & 1)
      printf("! %d %d %d %d\n", p[1], q[1], p[2], q[2]);
    else
      printf("! %d %d %d %d\n", p[1], q[2], p[2], q[1]);
  } else {
    int l = 1, r = n, ans;
    while (l <= r) {
      int mid = (l + r) / 2;
      int a, b;
      if (cnt1 == 2) {
        a = p[1];
        b = mid;
      } else if (cnt2 == 2) {
        a = mid;
        b = q[1];
      }
      printf("? %d %d %d %d\n", 1, 1, a, b);
      fflush(stdout);
      int x;
      scanf("%d", &x);
      if (x & 1) {
        ans = mid;
        r = mid - 1;
      } else
        l = mid + 1;
    }
    if (cnt1 == 2)
      printf("! %d %d %d %d\n", p[1], ans, p[2], ans);
    else
      printf("! %d %d %d %d\n", ans, q[1], ans, q[2]);
  }
  return 0;
}
