#include<bits/stdc++.h>
using namespace std;

const int N=1e5+10;

int q,n,a[N],b[N];

int main(){
	cin>>q;
	
	while(q--){
		cin>>n;
		for(int i=1;i<=n;i++){
			scanf("%d",&a[i]);
		}
		for(int i=1;i<=n;i++){
			scanf("%d",&b[i]);
		}
		int j=1;
		stack<int> st;
		for(int i=1;i<=n;i++){
			if(a[i]==b[j]){
				j++;
			}else if(!st.empty()&&st.top()==b[j]){
				st.pop();
				j++;
				i--;
			}else{
				st.push(a[i]);
			}
		}
		bool f=true;
		while(!st.empty()){
			if(st.top()!=b[j]){
				f=false;
				break;
			}else{
				j++;
				st.pop();
			}
		}
		if(f){
			cout<<"Yes"<<endl;
		}else{
			cout<<"No"<<endl;
		}
		
	}

    return 0;
}