Consider a sequence $[*a*_{1}, *a*_{2}, ... , *a*_{*n*}]$. Define its prefix product sequence
.
Now given $*n*$, find a permutation of $[1, 2, ..., *n*]$, such that its prefix product sequence is a permutation of $[0, 1, ..., *n* - 1]$.
Input
The only input line contains an integer $*n*$ ($1 ≤ *n* ≤ 10^{5}$).
Output
In the first output line, print "YES" if such sequence exists, or print "NO" if no such sequence exists.
If any solution exists, you should output $*n*$ more lines. $*i*$-th line contains only an integer $*a*_{*i*}$. The elements of the sequence should be different positive integers no larger than $*n*$.
If there are multiple solutions, you are allowed to print any of them.
Note
For the second sample, there are no valid sequences.
样例
7
YES
1
4
3
6
5
2
7
6
NO
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。