#include <bits/stdc++.h>
using namespace std;
long long T,n,tmp;
long long jq=0,dd=0;
bool flag = 0;
struct xx{
int no;
long long value;
}a[1005],b[1005];
bool cmp(xx x,xx y){
return x.value>y.value;
}
bool cmp1(xx x,xx y){
return x.value<y.value;
}
int main(){
cin>>T;
for(int k=1;k<=T;k++){
cin>>n;
for(int i=1;i<=n;i++){
cin>>tmp;
a[i].no=i;
a[i].value=tmp;
jq+=tmp;
}
for(int i=1;i<=n;i++){
cin>>tmp;
b[i].no=i;
b[i].value=tmp;
dd+=tmp;
}
if(jq<dd){
cout<<"No"<<"\n";
}
else{
sort(a+1,a+n+1,cmp);
sort(b+1,b+n+1,cmp1);
tmp = 0;
for(int i=1;i<=n;i++){
if( (a[i].value+tmp)>=b[i].value ){
tmp = (a[i].value+tmp) - b[i].value;
}
else{
flag = 1;
break;
}
}
if(flag == 0){
cout<<"Yes"<<"\n";
for(int i=1;i<=n;i++){
cout<<a[i].no<<" ";
}
cout<<'\n';
for(int i=1;i<=n;i++){
cout<<b[i].no<<" ";
}
cout<<'\n';
}
else{
cout<<"No"<<"\n";
}
}
}
}