Problem: Vasya has a multiset consisting of integer numbers. Vasya calls some number nice if it appears in the multiset exactly once. For example, multiset contains nice numbers and .
Vasya wants to split multiset into two multisets and (one of which may be empty) in such a way that the quantity of nice numbers in multiset would be the same as the quantity of nice numbers in multiset (the quantity of numbers to appear exactly once in multiset and the quantity of numbers to appear exactly once in multiset ).
Input Format: The first line contains a single integer .
The second line contains integers — the multiset .
Output Format: If there exists no split of to satisfy the given requirements, then print "NO" in the first line.
Otherwise print "YES" in the first line.
The second line should contain a string, consisting of characters. -th character should be equal to 'A' if the -th element of multiset goes to multiset and 'B' if if the -th element of multiset goes to multiset . Elements are numbered from to in the order they are given in the input.
If there exist multiple solutions, then print any of them.