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

//template
#define rep(i,a,b) for(int i=(int)(a);i<(int)(b);i++)
#define ALL(v) (v).begin(),(v).end()
using ll=long long int;
const int inf = 0x3fffffff; const ll INF = 0x1fffffffffffffff; const double eps=1e-12;
template<typename T>inline bool chmax(T& a,T b){if(a<b){a=b;return 1;}return 0;}
template<typename T>inline bool chmin(T& a,T b){if(a>b){a=b;return 1;}return 0;}

void solve(int _rot){
    // printf("Case #%d: ",_rot);
    int n;
    cin>>n;
    vector<int> a(n*2);
    rep(i,0,n*2)cin>>a[i];

    rep(i,0,n)if(a[i]!=i+1 or a[i+n]!=i+1)goto fail2;
    puts("Yes");
    return;
    fail2:;

    rep(i,0,n){
        reverse(a.begin()+i+1,a.begin()+i+n);
        rep(i,0,n)if(a[i]!=i+1 or a[i+n]!=i+1)goto fail;
        puts("Yes");
        return;
        fail:;
        reverse(a.begin()+i+1,a.begin()+i+n);
    }
    puts("No");
}

int main(){
    int t; scanf("%d",&t);
    rep(rot,0,t)solve(rot+1);
    return 0;
}