import java.util.*;
public class Main {
        public static void main(String[] args){
            Scanner sc = new Scanner(System.in);
            while(sc.hasNext()){
                String str = sc.nextLine();
                StringBuilder sb = new StringBuilder();
                ArrayList<String> arr = new ArrayList();
                boolean flag = false;
                for(int i =0;i<str.length();i++){
                    char c = str.charAt(i);
                    if((c>='A' && c<='Z') || (c>='a'&& c<='z') && !flag){
                        flag =true;//表示的字符不是字母,然后走进判断,一个单词的开端,第一个
                    }
                    if((c<'A' || c>'z') || (c<'a'&& c>'Z')){
                        flag =false; //不是字母
                    }
                    if(flag){
                        sb.append(c);
                    }
                    if(sb !=null && !flag){
                        //说明到了字母的结束了 
                        arr.add(sb.toString());
                        sb = new StringBuilder();
                    }
                }
                arr.add(sb.toString());
                //System.out.println(sb.toString());
                //最后逆序打印
                for(int i=arr.size()-1; i>=0;i--){
                    System.out.print(arr.get(i));
                    System.out.print(" ");
                }
            }
        }
}