#include <bits/stdc++.h>
using i64 = int64_t;
int gcd(int a, int b) {
return b ? gcd(b, a % b) : a;
}
void solve() {
int n, m;
std::cin >> n >> m;
if (gcd(n, m) != 1) {
std::cout << "No\n";
return;
}
const int p = n * m;
std::vector<int> a(n), b(m);
// a[0] = 1 % p;
for (int i = 0; i < n; ++i) {
a[i] = ((i64)i * m + 1) % p;
}
for (int i = 0; i < m; ++i) {
b[i] = ((i64)i * n + 1) % p;
}
std::cout << "Yes\n";
std::copy(a.begin(), a.end(), std::ostream_iterator<int>(std::cout, " "));
std::cout << '\n';
std::copy(b.begin(), b.end(), std::ostream_iterator<int>(std::cout, " "));
std::cout << '\n';
}
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int t;
std::cin >> t;
while (t--) solve();
}