func_code_string: #include <bits/stdc++.h>   using namespace std;   const int INF = 1000 * 1000 * 1000 + 7;   const long long LINF = 1LL * INF * INF;   const int MAX = 1e5 + 7;   const double PI = acos(-1.);   const double EPS = 1e-7;   const int MOD = 998244353;   const int MAXF = 1000000000;   int dx[] = {1, -1, 0, 0};   int dy[] = {0, 0, -1, 1};   bool isInField(int x, int y) {     return 1 <= x && x <= MAXF && 1 <= y && y <= MAXF;   }   bool isWhite(int x, int y) { return x % 2 == y % 2; }   void solve() {     int black, white;     cin >> black >> white;     map<pair<int, int>, int> was;     vector<pair<int, int> > ans;     int sX = 200000, sY = 200000;     if (black > white) {       sX++;       --black;     } else {       --white;     }     ans.emplace_back(sX, sY);     was[{sX, sY}] = 1;     while (black > 0 && white > 0) {       --black;       --white;       ++sX;       ans.emplace_back(sX, sY);       was[{sX, sY}] = 1;       ++sX;       ans.emplace_back(sX, sY);       was[{sX, sY}] = 1;     }     for (int i = 0; i < (((int)ans.size())); ++i) {       int x = ans[i].first;       int y = ans[i].second;       for (int j = 0; j < (4); ++j) {         int a = x + dx[j];         int b = y + dy[j];         if (black > 0) {           if (!was.count({a, b}) && !isWhite(a, b)) {             --black;             ans.emplace_back(a, b);             was[{a, b}] = 1;           }         } else if (white > 0) {           if (!was.count({a, b}) && isWhite(a, b)) {             --white;             ans.emplace_back(a, b);             was[{a, b}] = 1;           }         }       }     }     if (black != 0 || white != 0) {       cout <<  NO n ;       return;     }     cout <<  YES n ;     for (auto [x, y] : ans) {       cout << x <<     << y << endl;     }   }   int main() {     ios_base::sync_with_stdio(0);     int q;     cin >> q;     while (q--) {       solve();     }     return 0;   }   