#include int T,a,b,c,d; char s[5]; int power(int X,int a, int b, int c, int d){ if (a==0 || b==0 || c==0) return 0; if (X%2==0) while(X%2==0) X/=2; if (X==1) return 1; return 0; } int pelicular(int a, int b, int c, int d){ if (a>=3) return 0; if (c>=6) return 0; if (c==0 && d==0) //exact return 1; if (a==c && b==d)//doubled return 1; if (a==d && b==c)//mirror return 1; if (a+1==b && b+1==c && c+1==d)//doubled return 1; //concat int p=a*1000+b*100+c*10+d; if (power(p,a,b,c,d)) return 1; else return 0; return 0; } int main(){ //freopen("input.in","r",stdin); //freopen("output.out","w",stdout); scanf("%d\n", &T); while(T--){ gets(s); a=s[0]-'0'; b=s[1]-'0'; c=s[3]-'0'; d=s[4]-'0'; if (pelicular(a,b,c,d)) printf("YES\n"); else printf("NO\n"); } return 0; }