#include <bits/stdc++.h>
using namespace std;
int n;
vector<int> v;
int maz = 0;
int miz = 300;
void init() {
  cin >> n;
  for (int i = 0; i < n; i++) {
    int tmp;
    cin >> tmp;
    v.push_back(tmp);
  }
}
bool checkz() {
  bool flag1 = true;
  bool flag2 = true;
  for (int i = 0; i < v.size() - 1; i++) {
    if (v[i] > v[i + 1]) {
      flag1 = false;
      break;
    }
  }
  for (int i = 0; i < v.size() - 1; i++) {
    if (v[i] < v[i + 1]) {
      flag2 = false;
      break;
    }
  }
  if (flag1 || flag2) return true;
  return false;
}
void process() {
  if (checkz() || n <= 2) {
    cout << "YES\n";
    return;
  }
  for (int i = 0; i < n; i++) {
    int u = v[n - 1];
    v.pop_back();
    v.insert(v.begin(), 1, u);
    if (checkz()) {
      cout << "YES\n";
      return;
    }
  }
  cout << "NO\n";
}
int main() {
  int Q;
  cin >> Q;
  while (Q--) {
    v.clear();
    init();
    process();
  }
  return 0;
}
