Given the string $$$S$$$, consisting of letters 'I', 'V', 'X', 'L', 'C', 'D' and 'M'. Your task is to split the string to the minimum number of strings that are:
The following table from Wikipedia displays how the Roman Numerals are written:
| Individual decimal places | Thousands | Hundreds | Tens | Units |
| 1 | M | C | X | I |
| 2 | MM | CC | XX | II |
| 3 | MMM | CCC | XXX | III |
| 4 | CD | XL | IV | |
| 5 | D | L | V | |
| 6 | DC | LX | VI | |
| 7 | DCC | LXX | VII | |
| 8 | DCCC | LXXX | VIII | |
| 9 | CM | XC | IX |
The first line of the input consists of one integer $$$n$$$ — length of the string ($$$1 \leq n \leq 100\,000$$$).
The second line contains the string of length $$$n$$$, consisting of letters 'I', 'V', 'X', 'L', 'C', 'D' and 'M'.
In first line of the output print one integer $$$k$$$ — the minimum number of correct roman palindromes that can form the given string being concatenated. Then print $$$k$$$ lines, each line containing one string — a correct Roman numeral that is a palindrome, such as the concatenation of all $$$k$$$ lines in the order of output is equal to the given string.
If there is more than one solution, print any of them.
5 MMXXI
3 MM XX I