#define NDEBUG #include #include #include #include using i64 = long long; using u64 = unsigned long long; #define rep(i,n) for(i64 i=0; i<(i64)(n); i++) #define repr(i,n) for(i64 i=(i64)(n)-1; i>=0; i--) template void chmin(A& l, const A& r){ if(r < l) l = r; } template void chmax(A& l, const A& r){ if(l < r) l = r; } using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int Z = 3000; int n = 6; int N = n * Z + 3; cout << N << '\n'; rep(i,Z){ cout << (n*i+1) << ' ' << (n*i+2) << '\n'; cout << (n*i+2) << ' ' << (n*i+3) << '\n'; cout << (n*i+3) << ' ' << (n*i+4) << '\n'; cout << (n*i+2) << ' ' << (n*i+5) << '\n'; cout << (n*i+5) << ' ' << (n*i+6) << '\n'; } rep(i,Z-1){ cout << (n*i+2) << ' ' << (n*i+7) << '\n'; } cout << (N-4) << ' ' << (N-2) << '\n'; cout << (N-7) << ' ' << (N-1) << '\n'; cout << (N-1) << ' ' << (N-0) << '\n'; return 0; }