#include <bits/stdc++.h>   using namespace std;   vector<pair<int, int> > ans;   bool is_prime(int v) {     if (v == 1 || v == 0) return 0;     for (int i = 2; i * i <= v; i++) {       if (v % i == 0) return 0;     }     return 1;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     cout.tie(0);     ;     long long n;     cin >> n;     long long cnt = n - 1;     ans.push_back(make_pair(n, 1));     for (int i = 2; i <= n; i++) {       ans.push_back(make_pair(i, i - 1));     }     for (int i = 1; i <= n / 2; i++) {       if (is_prime(ans.size())) break;       ans.push_back(make_pair(i, i + n / 2));       ++cnt;     }     cout << ans.size() << endl;     for (int i = 0; i < ans.size(); i++) {       cout << ans[i].first <<     << ans[i].second << endl;     }     return 0;   }   