// https://onlinejudge.u-aizu.ac.jp/problems/0033
// 玉
// 1-10的序列，分成两组，让每一组都升序
// 虽然想让你用dfs，但是这个似乎直接贪心就可以了

#include <iostream>
#include <stack>

using namespace std;
int a[10];

int main()
{
    int T;
    cin >> T;
    while (T--)
    {
        for (int i = 0; i < 10; ++i)
            cin >> a[i];
        stack<int> q1;
        stack<int> q2;
        for (int i = 0; i < 10; ++i)
        {
            int t1, t2;
            if (q1.empty())
                t1 = 0;
            else
                t1 = q1.top();
            if (q2.empty())
                t2 = 0;
            else
                t2 = q2.top();
            if (t1 > a[i] && t2 > a[i])
            {
                cout << "NO" << endl;
                break;
            }
            else if (t1 < a[i] && t2 > a[i])
            {
                q1.push(a[i]);
            }
            else if (t1 > a[i] && t2 < a[i])
            {
                q2.push(a[i]);
            }
            else if (t1 < t2)
            {
                q2.push(a[i]);
            }
            else
            {
                q1.push(a[i]);
            }
            if (i == 9)
            {
                cout << "YES" << endl;
            }
        }
        
    }
    return 0;
}
