#include <iostream>
#include <vector>
#include <algorithm>
#include <stack>
using namespace std;
int q;
int main(){
cin>>q;
stack<int> s[q];
vector<int> v[q];
for(int i=0;i<q;i++){
int n;
cin>>n;
for(int j=1;j<=n;j++){
int temppush;
cin>>temppush;
s[i].push(temppush);
}
for(int j =1;j<=n;j++){
int temppop;
cin>>temppop;
v[i].push_back(temppop);
}
}
for(int i=0;i<q;i++){
int flag =0;
while(!s[i].empty()){
int temp1;
temp1=s[i].top();
s[i].pop();
int temp2=v[i].front();
v[i].erase(v[i].begin());
if(temp1!=temp2){
flag=1;
}
}
if(flag == 0){
cout<<"Yes"<<endl;
}else{
cout<<"No"<<endl;
}
}
return 0;
}