#include using namespace std; using ll = long long; #define rep(i,n) for(int i=0;i deg1; vector deg3; vector> paths(x); rep(i,x) { ll tmp1 = i * y + 1; ll tmp3 = tmp1 + y - 1; for (int j = tmp1; j <= tmp3; ++j) { paths[i].push_back(j); } deg1.push_back(tmp1); deg3.push_back(tmp3); } rep(i,x) { for (int j = 0; j < y - 1; ++j) { cout << paths[i][j] << " " << paths[i][j + 1] << endl; } } rep(i,x) { cout << deg3[i] << " " << deg3[(i + 1) % x] << endl; } } int main() { int x,y; cin >> x>>y; iwaig(x,y); return 0; }