import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
protected final int TABLE_LENGTH = 30;
protected int tableLength[] = new int[TABLE_LENGTH];
Main p = new Main();
p.run();
}
initTable();
while (input.ready()) {
int[] lengths = new int[line.length()];
for (int i = 0; i < line.length(); i++) {
int index = getTableIndex(line.charAt(i));
buf.append(table[index][1]);
lengths[i] = tableLength[index];
}
String morse
= buf.
toString(); int beggin = 0;
for (int i = line.length() - 1; i >= 0; i--) {
res.append(getCharacter(morse.substring(beggin, beggin + lengths[i])));
beggin += lengths[i];
}
System.
out.
println(res.
toString()); }
}
protected int getTableIndex(char match) {
for (int i = 0; i < TABLE_LENGTH; i++) {
if (table[i][0].charAt(0) == match) {
return i;
}
}
return 0;
}
for (int i = 0; i < TABLE_LENGTH; i++) {
if (table[i][1].equals(match)) {
return table[i][0];
}
}
return "A";
}
protected void initTable() {
table[0][0] = "A"; table[0][1] = ".-";
table[1][0] = "B"; table[1][1] = "-...";
table[2][0] = "C"; table[2][1] = "-.-.";
table[3][0] = "D"; table[3][1] = "-..";
table[4][0] = "E"; table[4][1] = ".";
table[5][0] = "F"; table[5][1] = "..-.";
table[6][0] = "G"; table[6][1] = "--.";
table[7][0] = "H"; table[7][1] = "....";
table[8][0] = "I"; table[8][1] = "..";
table[9][0] = "J"; table[9][1] = ".---";
table[10][0] = "K"; table[10][1] = "-.-";
table[11][0] = "L"; table[11][1] = ".-..";
table[12][0] = "M"; table[12][1] = "--";
table[13][0] = "N"; table[13][1] = "-.";
table[14][0] = "O"; table[14][1] = "---";
table[15][0] = "P"; table[15][1] = ".--.";
table[16][0] = "Q"; table[16][1] = "--.-";
table[17][0] = "R"; table[17][1] = ".-.";
table[18][0] = "S"; table[18][1] = "...";
table[19][0] = "T"; table[19][1] = "-";
table[20][0] = "U"; table[20][1] = "..-";
table[21][0] = "V"; table[21][1] = "...-";
table[22][0] = "W"; table[22][1] = ".--";
table[23][0] = "X"; table[23][1] = "-..-";
table[24][0] = "Y"; table[24][1] = "-.--";
table[25][0] = "Z"; table[25][1] = "--..";
table[26][0] = "_"; table[26][1] = "..--";
table[27][0] = ","; table[27][1] = ".-.-";
table[28][0] = "."; table[28][1] = "---.";
table[29][0] = "?"; table[29][1] = "----";
for (int i = 0; i < TABLE_LENGTH; i++) {
tableLength[i] = table[i][1].length();
}
}
while (!st.hasMoreTokens()) {
}
return st.nextToken();
}
return Integer.
parseInt(nextToken
()); }
return input.readLine();
}
}