#include<iostream>
#include<cstring>
#include<cstdio>
#include<string>
#include<queue>
#include<algorithm>

using namespace std;

int t;
int s[15];
int a[15],b[15];
int la,lb;
bool ok;

void DFS(int index){
	if(ok){
		return;
	}
	if(index==10){
		ok=true;
		return;
	}
//	cout<<"a:"<<endl;
//		for(int i=0;i<la;i++){
//			cout<<a[i]<<' ';
//		}
//		cout<<endl;
//	cout<<"b:"<<endl;
//		for(int i=0;i<lb;i++){
//			cout<<b[i]<<' ';
//		}
//		cout<<endl;
	if(la==0||s[index]>a[la-1]){
		a[la++]=s[index];
		DFS(index+1);
		la--;
	}
	if(lb==0||s[index]>b[lb-1]){
		b[lb++]=s[index];
		DFS(index+1);
		lb--;
	}
}

int main(){
	cin>>t;
	while(t--){
		memset(a,0,sizeof(a));
		memset(b,0,sizeof(b));
		la=lb=0;
		ok=false;
		for(int i=0;i<10;i++){
			cin>>s[i];
		}
		DFS(0);
		if(ok){
			cout<<"YES"<<endl;
		}else{
			cout<<"NO"<<endl;
		}
//		for(int i=0;i<la;i++){
//			cout<<a[i]<<' ';
//		}
//		cout<<endl;
//		for(int i=0;i<lb;i++){
//			cout<<b[i]<<' ';
//		}
//		cout<<endl;
	}
	return 0;
}