#include <bits/stdc++.h>
using namespace std;
void solve() {
  int n, m, suma = 0, sumb = 0;
  cin >> n;
  vector<int> a(n);
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    suma += a[i];
  }
  cin >> m;
  vector<int> b(m);
  for (int i = 0; i < m; i++) {
    cin >> b[i];
    sumb += b[i];
  }
  sort(a.begin(), a.end());
  sort(b.rbegin(), b.rend());
  if (n != m || suma % 2 == 1 || sumb % 2 == 1) {
    cout << "No" << '\n';
    return;
  }
  vector<pair<int, int>> res(2 * n);
  {
    suma /= 2;
    vector<vector<bool>> dp(n + 1, vector<bool>(suma + 1));
    dp[0][0] = true;
    for (int i = 0; i < n; i++) {
      dp[i + 1] = dp[i];
      for (int j = a[i]; j <= suma; j++) {
        if (dp[i][j - a[i]]) {
          dp[i + 1][j] = true;
        }
      }
    }
    if (dp[n][suma] == false) {
      cout << "No" << '\n';
      return;
    }
    int now = suma;
    vector<int> x, x2;
    for (int i = n; i > 0; i--) {
      if (now - a[i - 1] >= 0 && dp[i - 1][now - a[i - 1]]) {
        now -= a[i - 1];
        x.push_back(a[i - 1]);
      } else {
        x2.push_back(a[i - 1]);
      }
    }
    int iter = 0;
    for (auto i : x) {
      res[iter] = {i, 0};
      iter += 2;
    }
    for (auto i : x2) {
      res[iter] = {-i, 0};
      iter += 2;
    }
  }
  {
    sumb /= 2;
    vector<vector<bool>> dp(n + 1, vector<bool>(sumb + 1));
    dp[0][0] = true;
    for (int i = 0; i < n; i++) {
      dp[i + 1] = dp[i];
      for (int j = b[i]; j <= sumb; j++) {
        if (dp[i][j - b[i]]) {
          dp[i + 1][j] = true;
        }
      }
    }
    if (dp[n][sumb] == false) {
      cout << "No" << '\n';
      return;
    }
    int now = sumb;
    vector<int> x, x2;
    for (int i = n; i > 0; i--) {
      if (now - b[i - 1] >= 0 && dp[i - 1][now - b[i - 1]]) {
        now -= b[i - 1];
        x.push_back(b[i - 1]);
      } else {
        x2.push_back(b[i - 1]);
      }
    }
    int iter = 1;
    for (auto i : x) {
      res[iter] = {0, i};
      iter += 2;
    }
    for (auto i : x2) {
      res[iter] = {0, -i};
      iter += 2;
    }
  }
  cout << "Yes" << '\n';
  int p = 0, q = 0;
  for (auto i : res) {
    p += i.first;
    q += i.second;
    cout << p << ' ' << q << '\n';
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  int tt;
  cin >> tt;
  for (int i = 1; i <= tt; i++) {
    solve();
  }
  return 0;
}
