#include <bits/stdc++.h>
using namespace std;
int n, t[10];
void work0() {
  printf("%d %d\n", t[0], t[1]);
  printf("%d %d\n", t[2], t[3]);
  printf("%d %d\n", t[0], t[3]);
  printf("%d %d\n", t[1], t[2]);
  printf("%d %d\n", t[0], t[2]);
  printf("%d %d\n", t[1], t[3]);
}
void work1() {
  printf("%d %d\n", t[0], t[1]);
  printf("%d %d\n", t[2], t[3]);
  printf("%d %d\n", t[0], t[3]);
  printf("%d %d\n", t[1], t[2]);
  printf("%d %d\n", t[0], t[4]);
  printf("%d %d\n", t[1], t[4]);
  printf("%d %d\n", t[0], t[2]);
  printf("%d %d\n", t[1], t[3]);
  printf("%d %d\n", t[3], t[4]);
  printf("%d %d\n", t[2], t[4]);
}
void work2() {
  printf("%d %d\n", t[0], t[4]);
  printf("%d %d\n", t[1], t[5]);
  printf("%d %d\n", t[0], t[5]);
  printf("%d %d\n", t[1], t[4]);
  printf("%d %d\n", t[0], t[6]);
  printf("%d %d\n", t[1], t[7]);
  printf("%d %d\n", t[0], t[7]);
  printf("%d %d\n", t[1], t[6]);
  printf("%d %d\n", t[2], t[4]);
  printf("%d %d\n", t[3], t[5]);
  printf("%d %d\n", t[2], t[5]);
  printf("%d %d\n", t[3], t[4]);
  printf("%d %d\n", t[2], t[6]);
  printf("%d %d\n", t[3], t[7]);
  printf("%d %d\n", t[2], t[7]);
  printf("%d %d\n", t[3], t[6]);
}
int main() {
  scanf("%d", &n);
  if ((n & 3) > 1) {
    puts("NO");
    return 0;
  }
  puts("YES");
  for (register int i = 1; i < n; i += 4) {
    for (register int j = 0; j < 4; ++j) t[j] = i + j;
    if (n & 1) {
      t[4] = n;
      work1();
    } else
      work0();
    for (register int j = i + 4; j < n; j += 4) {
      for (register int k = 0; k < 4; ++k) {
        t[k] = i + k;
        t[k + 4] = j + k;
      }
      work2();
    }
  }
}
