암호 키

시간 제한2초메모리 제한128 MB

문제

현대의 여러 암호 시스템은 매우 큰 소수들의 곱으로 이루어진 수를 암호 키로 사용한다. 매우 큰 수를 짧은 시간 안에 소인수분해하기가 현실적으로 어렵기 때문이다.

실제로는 수십만 자리 이상의 큰 소수가 쓰이지만, 여기서는 규모를 줄여서 생각한다. 즉 $1{,}000{,}000 = 10^6$ 보다 큰 소수를 "매우 큰 소수"로 간주한다.

수 $S$가 주어질 때, 이 규모에서 $S$가 적절한 암호 키인지 판별하는 프로그램을 작성하시오. $S$의 모든 소인수가 $10^6$보다 크면 적절한 암호 키이고, 그렇지 않으면 적절하지 않은 암호 키이다.

입력

첫째 줄에 수의 개수 $N$이 주어진다. 이어지는 $N$개의 줄에 걸쳐, 판별할 수 $S$가 한 줄에 하나씩 주어진다.

출력

$N$개의 줄에 걸쳐, 각 수가 적절한 암호 키이면 YES를, 아니면 NO를 입력 순서대로 출력한다.

제한

  • $1 \le N \le 10$
  • $10^{12} \le S \le 10^{18}$