#include <bits/stdc++.h>
using namespace std;
int deg[10005];
vector<pair<int, int> > edge;
int main() {
  int k;
  cin >> k;
  if (k == 1) {
    puts("YES\n2 1\n1 2");
    return 0;
  }
  if (k % 2 == 0) {
    puts("NO");
    return 0;
  }
  for (int i = 1; i <= 5; i++) {
    edge.push_back(make_pair(i, i % 5 + 1));
  }
  edge.push_back(make_pair(3, 5));
  edge.push_back(make_pair(2, 4));
  for (int i = 6; i <= k + 2; i += 2) {
    for (int j = 1; j < i; j++) {
      edge.push_back(make_pair(i, j));
      edge.push_back(make_pair(i + 1, j));
    }
  }
  printf("YES\n");
  printf("%d %d\n", (k + 2) * 2, 2 * edge.size() + 1);
  printf("1 %d\n", k + 3);
  for (auto e : edge) {
    printf("%d %d\n", e.first, e.second);
    printf("%d %d\n", e.first + k + 2, e.second + k + 2);
  }
  return 0;
}
