eolymp
bolt
Try our new interface for solving problems
Problems

Cycle String?

Cycle String?

Great wizard gave Alice and Bob a cycle string of length 2 * n, which has no repeated substrings of length n. In a cycle string, character si+1 comes after si. Also, s1 comes after s2n.

Unfortunately, evil gin shuffled all the symbols of the string. Help Alice and Bob restore the original string so that the above condition is satisfied.

Input

The first line contains one string s of length 2 * n (22 * n106) which consists only of the lowercase Latin letters.

Output

Print "NO" (without quotes) to the first line if it is impossible to restore the string so that the condition is satisfied. Otherwise, in the first line print "YES" (without quotes).

In the second line print one string - the restored string. If there are multiple answers, print any.

Explanation

In the first example, substrings of the restored string are: “abbab”, “bbabc”, “babcb”, “abcbc”, “bcbcc”, “cbccb”, “bccba”, “ccbab”, “cbabb”, “babba”.

Note that the first example does not contain repetitions, however it can be rewritten as another cycle with no repetitions. Thus, the solution is not unique - the given example is also a correct solution. In the second example, it is impossible to restore the string so that no repetition exists. In the third example, there is no need to change anything.

Time limit 1 second
Memory limit 128 MiB
Input example #1
cbbabcacbb
Output example #1
YES
aabbbcccbb
Input example #2
aa
Output example #2
NO
Input example #3
afedbc
Output example #3
YES
abcfde
Source 2019 SEERC South Eastern European Regional Programming Contest, Vinnica & Bucharest, October 19, Problem D