#include<algorithm> #include<iostream> #include<vector> using namespace std; typedef long long lint; typedef vector<int>vi; typedef pair<int,int>pii; #define rep(i,n)for(int i=0;i<(int)(n);++i) int main(){ lint k; cin>>k; int n=32; vector<pii>e; rep(i,n){ rep(j,i){ if(j>0) e.push_back(pii(j,i)); } } for(int i=n-3;i>=0;--i){ if(k&1LL<<i) e.push_back(pii(0,n-i-2)); } cout<<n<<" "<<e.size()<<endl; rep(i,e.size()){ cout<<e[i].first+1<<" "<<e[i].second+1<<endl; } }