#include<iostream>
#include<algorithm>
using namespace std;
#define MAX 1000
long long tcs(int n)
{
long long Tong = 0;
while (n)
{
Tong += n % 10;
n /= 10;
}
return Tong;
}
int main()
{
int t;
cin >> t;
while(t--)
{
int n;
cin >> n;
bool check[n + 2];
for (int i = 2; i <= n+1; i++) {
check[i] = true;
}
for (int i = 2; i <= n+1; i++) {
if (check[i] == true) {
for (int j = 2 * i; j <= n+1; j += i) {
check[j] = false;
}
}
}
if(check[n]==false){
long long sum=tcs(n),dem=0;
while(n%2==0){
n/=2;
dem+=2;
}
for(int i=3;i*i<=n;i+=2){
while(n%i==0){
n/=i;
dem+=tcs(i);
}
}
if(n>2) dem+=n;
if(dem==sum)
cout << "YES" << endl;
else cout << "NO" << endl;
}
else cout<<"NO"<<endl;
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGFsZ29yaXRobT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgTUFYIDEwMDAKCmxvbmcgbG9uZyAgdGNzKGludCBuKQp7CiAgICBsb25nIGxvbmcgVG9uZyA9IDA7CiAgICB3aGlsZSAobikKICAgIHsKICAgICAgICBUb25nICs9IG4gJSAxMDsKICAgICAgICBuIC89IDEwOwogICAgfQogICAgcmV0dXJuIFRvbmc7Cn0KaW50IG1haW4oKQp7CiAgICBpbnQgdDsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKQogICAgewogICAgICAgIGludCBuOwogICAgICAgIGNpbiA+PiBuOwogIGJvb2wgY2hlY2tbbiArIDJdOwogIGZvciAoaW50IGkgPSAyOyBpIDw9IG4rMTsgaSsrKSB7CiAgICBjaGVja1tpXSA9IHRydWU7CiAgfQogIGZvciAoaW50IGkgPSAyOyBpIDw9IG4rMTsgaSsrKSB7CiAgICBpZiAoY2hlY2tbaV0gPT0gdHJ1ZSkgewogICAgICBmb3IgKGludCBqID0gMiAqIGk7IGogPD0gbisxOyBqICs9IGkpIHsKICAgICAgICBjaGVja1tqXSA9IGZhbHNlOwogICAgICB9CiAgICB9CiAgfSAKICAgaWYoY2hlY2tbbl09PWZhbHNlKXsKICAgbG9uZyBsb25nIHN1bT10Y3MobiksZGVtPTA7CiAgIHdoaWxlKG4lMj09MCl7CiAgICAgICBuLz0yOwogICAgICAgZGVtKz0yOwogICB9CiAgIGZvcihpbnQgaT0zO2kqaTw9bjtpKz0yKXsKICAgICAgd2hpbGUobiVpPT0wKXsKICAgICAgICAgIG4vPWk7CiAgICAgICAgICBkZW0rPXRjcyhpKTsKICAgICAgfQogICB9CiAgICBpZihuPjIpIGRlbSs9bjsKICAgICBpZihkZW09PXN1bSkKICAgICAgICBjb3V0IDw8ICJZRVMiIDw8IGVuZGw7CiAgICAgICAgZWxzZSBjb3V0IDw8ICJOTyIgPDwgZW5kbDsKICAgIH0KICAgIGVsc2UgY291dDw8Ik5PIjw8ZW5kbDsKICAgfQogICAgcmV0dXJuIDA7Cn0=