#include<bits/stdc++.h>
using namespace std;
char infile[100], outfile[100];
set <long long int> A;
set<long long int>::iterator iter;
long long int c[100100];
int main(){
    int n , i, T, I, m;
    cin >> T;
    srand((unsigned int) time(NULL));
    for(I=1;I<=T; I++){
        A.clear();
        cin >> n >> m;
        sprintf(infile, ".%d.in", I);
        freopen(infile, "w", stdout);
        printf("%d %d\n", n, m);
        for(i=0;i<n;i++){
            c[i] = rand();
            c[i] = (c[i]*100000 + rand())%1000000000+1;
            printf("%lld ",c[i]);
            A.insert(c[i]);
        }
        printf("\n");
        for(i=0;i<m;i++){
            c[i] = rand();
            c[i] = (c[i]*100000 + rand())%1000000000+1;
            printf("%lld ",c[i]);
            A.insert(c[i]);
        }
        sprintf(outfile, ".%d.out", I);
        freopen(outfile, "w", stdout);
        for(iter = A.begin();iter!=A.end();iter++){
            cout << *iter <<" ";
        }
    }
}
