// #pragma GCC optimize ("Ofast") // #pragma GCC optimize ("unroll-loops") // #pragma GCC target ("avx,avx2,fma") #include using std::cin, std::cout, std::cerr; using ll = long long; bool Solve() { int n; cin >> n; std::vector b(2 * n), a(2 * n); for(int i = 0; i < 2 * n; i ++) { a[i] = i % n + 1; cin >> b[i]; } if(a == b) return true; for(int i = 0; i < n; i ++) { std::reverse(a.begin() + i, a.begin() + n + i + 1); if(a == b) return true; std::reverse(a.begin() + i, a.begin() + n + i + 1); } return false; } int main() { std::ios::sync_with_stdio(false); int T; cin >> T; while(T --) { cout << (Solve() ? "Yes" : "No") << '\n'; } }