#include <iostream>
#include <vector>
#include <set>
#include <queue>
#include <stack>
#include <string>
#include <sstream>
#include <list>

using namespace std;

int main(int, char**){
    int n;
    cin >> n;
    //vector<int> vec;
    int vec[10];
    for(int as(0);as<n;++as){
	for(int i(0);i<10;++i){
	    int tmp;
	    cin >> tmp;
	    vec[i] = tmp;
	}
	int a(0),b(0);
	for(int i(0);i<10;++i){
	    if(vec[i]<min(a,b)){
		cout << "NO" << endl;
     		goto hai;
     	    }
	    if(a>b) swap(a,b);
	    if(b>vec[i]) a = vec[i];
	    else b = vec[i];
	}
	cout << "YES" << endl;
	hai:;
    }
    //string tmp;
    
    // while(getline(cin,tmp)){
    // 	istringstream is(tmp);
    // 	int m;
    // 	list<int> vec;
    // 	while(is >> m) vec.push_back(m);
    // 	int a(0),b(0);
    // 	for(auto it=begin(vec);it!=end(vec);++it){
    // 	    if(*it>min(a,b)){
    // 		
    // 	    if(a>b){ swap(a,b);}
    // 	    b = *it;
    // 	}
    // 	cout << "YES" <<endl;
    // hai:;
    // 	vec.clear();
    // }
    return 0;
}