#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;

void solve()
{//状压枚举mask 当检测到mask中有三个1 时check 分离出位数为1的三个数和位数为0的三个数
//然后分别进行判断 注意分离时 在while循环结束要再判断0是否分离完 因为二进制最高位不一定是1
//所以在分离的时候到最后一个1就停止了
    vector<int>a(7,0);
    for(int i=1;i<=6;i++) cin >> a[i];
    sort(a.begin()+1,a.end());
    for(int mask=0;mask<(1<<6);mask++)
    {
        int t=mask,t0=mask,cnt1=0;
        vector<int>b,c;
        while(t0!=0)
        {
            int temp=(t0&1);
            if(temp==1) cnt1++;
            t0>>=1;
        }
        if(cnt1!=3) continue;
        else
        {
            int cnt=1;
            while(t!=0)
            {
                int t2=(t&1);
                if(t2==1) b.push_back(a[cnt++]);
                else c.push_back(a[cnt++]);
                t>>=1;
            }
            for(int j=cnt;j<=6;j++) c.push_back(a[j]);
            if(b[2]+b[1]>b[0]&&b[2]-b[1]<b[0]&&b[2]+b[0]>b[1]&&b[2]-b[0]<b[1]&&b[1]+b[0]>b[2]&&b[1]-b[0]<b[2]&&c[2]+c[1]>c[0]&&c[2]-c[1]<c[0]&&c[2]+c[0]>c[1]&&c[2]-c[0]<c[1]&&c[1]+c[0]>c[2]&&c[1]-c[0]<c[2])
            {
                cout << "Yes" << "\n";
                return;
            }
        }
    }
    cout << "No" << "\n";
}

int main() {
    int t;
    cin >> t;
    while(t--) solve();
    return 0;
}
// 64 位输出请用 printf("%lld")