Time limit: 1s
Memory limit: 32MB
Input:
Output:
Task
You are given and positive integers. For each of the integers, you will have to answer a question of one of the following types:
- : Check if is prime or not. If is prime print
YES
, otherwise printNO
. - : Find how many divisors has - for example, if , you will print (, , , , , are the divisors of ).
- : Find how many prime divisors has - for example, if , you will print ( and are its prime divisors).
- : Print the prime factorization has, with each factor written on a line, in ascending order of the prime factors - for example, if , you will print on separate lines , and .
Input data
On the first line of the input you have , the number of integers tested. On each of the following lines you will have pairs of type , where is between and , and is a positive integer between and .
Output data
For each of the questions we will print the answer according to the presented format.
Constraints and clarifications
- For tests worth points each, we will only have queries of types , , respectively .
Example
stdin
8
1 7
2 15
3 24
4 1000
1 5835834
2 7675774
3 30240
4 14400
stdout
YES
4
2
2 3
5 3
NO
8
4
2 6
3 2
5 2
Explanation
is a prime number.
's divisors are , , , .
's prime divisors are and .
's prime factorization is .