#include <iostream>
#include <cstring>
#include <string.h>
using namespace std;

int check_valid (char s[6])
{
    if (s[0]>'2')
        return 0;
    if (s[0]=='2' && s[1]>='4')
        return 0;
    if (s[3]>='6')
        return 0;
    return 1;
}

int is_pow(char s[6])
{
    int nr=0;
    nr=(int)s[0];
    nr=nr*10+(int)s[1];
    nr=nr*10+(int)s[3];
    nr=nr*10+(int)s[4];
    while (nr%2==0)
        nr/=2;
    if (nr==1)
        return 1;
    return 0;
}

int check_peculiar (char s[6])
{
    if (s[3]=='0' && s[4]=='0')
        return 1;
    if(s[0]==s[3] && s[1]==s[4])
        return 1;
    if (s[0]==s[4] && s[1]==s[3])
        return 1;
    if (s[0]<s[1] && s[1]<s[3] && s[3]<s[4])
        return 1;
    if (is_pow(s)==1)
        return 1;
    return 0;
}

int main()
{
    int n,ok=0;
    cin>>n;
    cin.get();
    char s[51][6];
    for (int i=0;i<n;i++)
        cin.getline(s[i],6);
    for (int i=0;i<n;i++)
    {
        ok=0;
        if (check_valid(s[i])==1)
            if(check_peculiar(s[i])==1)
                ok=1;
        if (ok==0)
            cout<<"NO"<<endl;
        else
            cout<<"YES"<<endl;
    }
    return 0;
}