#include <iostream> #include <set> using namespace std; int isprime(int x){ if (x == 1) return 0; if (x == 2) return 1; for (int i = 2; i * i <= x; i++) if (x % i == 0) return 0; return 1; } int main(){ int T; cin >> T; while (T--){ int no, m; cin >> no >> m; cout << no << " " << m << " "; if (!isprime(m)) cout << "NO" << endl; else{ set<int> all; int n = m; while (1){ int sum = 0; while (n > 0){ sum += (n % 10) * (n % 10); n /= 10; } if (all.count(sum)) break; all.insert(sum); n = sum; } if (all.count(1)) cout << "YES" << endl; else cout << "NO" << endl; } } }