/*
TASK: MORSE
LANG: C++
*/
#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
char ss[255];
int sflag,n,i;
unsigned int ssi;
void tova_e_edna_bezsmislena_funkciq_koqto_povecheto_lameri_q_pravqt(){
 char       masivec1[][8]={".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."};
 char       masivec2[][8]={"-----",".----","..---","...--","....-",".....","-....","--...","---..","----."};
 char       masivec[][8]={"--..--","-..-.",".-.-.-"};
        cin.getline(ss,255,'\n');
        n=strlen(ss);
        for(i=0;i<n;i++){
                ssi=ss[i];
                if(ssi==32&&!sflag){
                        printf(".-.-. ");
                        sflag=1;
                }else if(ssi==63){
                        printf("..--.. ");
                        sflag=0;
                }else if(ssi>=44&&ssi<=46){
                        printf("%s ",masivec[ssi-44]);
                        sflag=0;
                }else if(ssi>=65&&ssi<=122){
                        ssi=ssi>=90?ssi-32:ssi;
                        printf("%s ",masivec1[ssi-65]);
                        sflag=0;
                }else if(ssi>=48&&ssi<=57){
                        printf("%s ",masivec2[ssi-48]);
                        sflag=0;
                }
        }
        printf("..-.-");
}
        
int main(){
        tova_e_edna_bezsmislena_funkciq_koqto_povecheto_lameri_q_pravqt();
        return 0;
}
