int main()
{
    char str[10001];
    gets(str);
    
    int n = strlen(str);
    char temp[10001];
    int j = 0;
    for(int i = 0; i < n; ++i) {
        if(str[i] >= 'A' && str[i] <= 'Z' || str[i] >= 'a' && str[i] <= 'z') {
            temp[j++] = str[i];
        }
        else {
            temp[j++] = ' ';
        }
    }
    char result[10000][21];
    j = 0;
    // 字符串分割函数 strtok
    char *substr = NULL;
    substr = strtok(temp, " ");
    while(substr != NULL) {
        strcpy(result[j], substr);
        j++;
        substr = strtok(NULL, " ");
    }
    for(int i = j - 1; i > 0; i--) {
        printf("%s ", result[i]);
    }
    printf("%s", result[0]);
    //puts(temp);
    return 0;
}