/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
import java.util.*;
import java.util.Map;
/**
*
* @author cteam92
*/
public class Fs {
/**
* @param args the command line arguments
*/
public static void main
(String[] args
) { Map
<String, String
> toMorse
= new HashMap
<String, String
>(); Map
<String, String
> fromMorse
= new HashMap
<String, String
>();
toMorse.put("A", ".-");
toMorse.put("B", "-...");
toMorse.put("C", "-.-.");
toMorse.put("D", "-..");
toMorse.put("E", ".");
toMorse.put("F", "..-.");
toMorse.put("G", "--.");
toMorse.put("H", "....");
toMorse.put("I", "..");
toMorse.put("J", ".---");
toMorse.put("K", "-.-");
toMorse.put("L", ".-..");
toMorse.put("M", "--");
toMorse.put("N", "-.");
toMorse.put("O", "---");
toMorse.put("P", ".--.");
toMorse.put("Q", "--.-");
toMorse.put("R", ".-.");
toMorse.put("S", "...");
toMorse.put("T", "-");
toMorse.put("U", "..-");
toMorse.put("V", "...-");
toMorse.put("W", ".--");
toMorse.put("X", "-..-");
toMorse.put("Y", "-.--");
toMorse.put("Z", "--..");
toMorse.put("_", "..--");
toMorse.put(",", ".-.-");
toMorse.put(".", "---.");
toMorse.put("?", "----");
fromMorse.put(".-", "A");
fromMorse.put("-...", "B");
fromMorse.put("-.-.", "C");
fromMorse.put("-..", "D");
fromMorse.put(".", "E");
fromMorse.put("..-.", "F");
fromMorse.put("--.", "G");
fromMorse.put("....", "H");
fromMorse.put("..", "I");
fromMorse.put(".---", "J");
fromMorse.put("-.-", "K");
fromMorse.put(".-..", "L");
fromMorse.put("--", "M");
fromMorse.put("-.", "N");
fromMorse.put("---", "O");
fromMorse.put(".--.", "P");
fromMorse.put("--.-", "Q");
fromMorse.put(".-.", "R");
fromMorse.put("...", "S");
fromMorse.put("-", "T");
fromMorse.put("..-", "U");
fromMorse.put("...-", "V");
fromMorse.put(".--", "W");
fromMorse.put("-..-", "X");
fromMorse.put("-.--", "Y");
fromMorse.put("--..", "Z");
fromMorse.put("..--", "_");
fromMorse.put(".-.-", ",");
fromMorse.put("---.", ".");
fromMorse.put("----", "?");
Scanner sc
= new Scanner
(System.
in); while (true) {
if (!sc.hasNext()) break;
// get numbers
for (int i = 0; i < input.length(); i++) {
String thisIndex
= input.
substring(i, i
+ 1); morseCode += toMorse.get(thisIndex);
numbers = toMorse.get(thisIndex).length() + numbers;
}
// decode by reversed numbers
int pointer = 0;
for (int i = 0; i < numbers.length(); i++) {
int thisLen
= Integer.
parseInt(numbers.
substring(i, i
+ 1)); String toDecode
= morseCode.
substring(pointer, pointer
+ thisLen
); System.
out.
print(fromMorse.
get(toDecode
));
pointer += thisLen;
}
}
}
}