#include <bits/stdc++.h>
using namespace std;
const int INF = 0x3f3f3f3f;
const int maxn = 10000;
const double pi = acos(-1.0);
int T, n, m;
int main() {
  cin >> T;
  int b, w;
  while (T--) {
    scanf("%d%d", &b, &w);
    if (max(b, w) > min(b, w) * 3 + 1) {
      printf("NO\n");
      continue;
    }
    printf("YES\n");
    if (b >= w) {
      for (int i = 1; i <= w; i++) {
        printf("%d %d\n", 2, 2 * i);
      }
      for (int i = 1; i <= w; i++) {
        printf("%d %d\n", 2, 2 * i + 1);
      }
      b -= w;
      for (int i = 1, j = 1; i <= w && b; b--, j++) {
        if (j % 2 == 1) {
          printf("%d %d\n", 1, 2 * i);
        }
        if (j % 2 == 0) {
          printf("%d %d\n", 3, 2 * i);
          i++;
        }
      }
      if (b) printf("2 1\n");
    } else {
      swap(b, w);
      for (int i = 1; i <= w; i++) {
        printf("%d %d\n", 2 + 1, 2 * i);
      }
      for (int i = 1; i <= w; i++) {
        printf("%d %d\n", 3, 2 * i + 1);
      }
      b -= w;
      for (int i = 1, j = 1; i <= w && b; b--, j++) {
        if (j % 2 == 1) {
          printf("%d %d\n", 2, 2 * i);
        }
        if (j % 2 == 0) {
          printf("%d %d\n", 4, 2 * i);
          i++;
        }
      }
      if (b) printf("3 1\n");
    }
  }
  return 0;
}
