#include <stdio.h>
#define row 100
#define col 21

char is_letter(char a)
{
   if ((a >= 'a' && a <= 'z') ||
       (a >= 'A' && a <= 'Z'))
   {
      return 1;
   }

   return 0;
}


int main()
{
   char s[row * col + 1];
   char d[row][col];
   int i, j, k;

   //scanf("%[^EOF]", s);

   fgets(s, row * col, stdin);

   for (i = 0, j = 0, k = 0; i < strlen(s); i++)
   {
      if (is_letter(s[i]))
      {
         d[j][k++] = s[i];
      }
      else if (k > 0)//previous character valid?
      {
         d[j++][k] = 0;
         k = 0;
      }
   }

   if (k > 0)//last word process
   {
      d[j++][k] = 0;
   }

   j--;

   if (j > 0)
   {
      while (j > 0)
      {
         printf("%s ", d[j--]);
      }

      printf("%s", d[0]);
   }

   return 0;
}