A message containing letters from A-Z can be encoded into numbers using the following mapping: 'A' -> "1 " 'B' -> "2 " ... 'Z' -> "26 " To decode an encoded message, all the digits must be grouped then mapped back into letters using the reverse of the mapping above (there may be multiple ways). For example, "11106 " can be mapped into: "AAJF " with the grouping (1 1 10 6) "KJF " with the grouping (11 10 6) Note that the grouping (1 11 06) is invalid because "06 " cannot be mapped into 'F' since "6 " is different from "06 ". In addition to the mapping above, an encoded message may contain the '' character, which can represent any digit from '1' to '9' ('0' is excluded).