#include <iostream>
#include <cstring>
using namespace std;
const int MAX_LENGTH = 2000;
int isWord(char b) {
if ((b >= 'A' && b <= 'Z') || (b >= 'a' && b <= 'z')){
return 1;
}
return 0;
}
int main() {
char array[MAX_LENGTH];
char wordArray[MAX_LENGTH];
while (cin.getline(array, MAX_LENGTH)) {
int amCuv = 0;
int index = 0;
int length = strlen(array);
int flag = 1;
for (int i = length - 1; i >= 0 && flag == 1; --i) {
if ((array[i] >= 'A' && array[i] <= 'Z') || (array[i] >= 'a' && array[i] <= 'z')) {
wordArray[index++] = array[i];
} else if (index >= 1 && array[i] < 'A'){
//index = 0;
flag == 0;
}
//cout << array[i] <<" ";
}
for (int i = 0; i < index; ++i) {
cout << wordArray[i] <<" ";
}
cout << "\n";
}
return 0;
/*
if (isWord(array[i])) {
amCuv = 1;
} else if (amCuv == 1) {
}
*/
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBNQVhfTEVOR1RIID0gMjAwMDsKCmludCBpc1dvcmQoY2hhciBiKSB7CglpZiAoKGIgPj0gJ0EnICYmIGIgPD0gJ1onKSB8fCAoYiA+PSAnYScgJiYgYiA8PSAneicpKXsKCQlyZXR1cm4gMTsKCX0KCXJldHVybiAwOwp9CgoKaW50IG1haW4oKSB7CgljaGFyIGFycmF5W01BWF9MRU5HVEhdOwoJY2hhciB3b3JkQXJyYXlbTUFYX0xFTkdUSF07Cgl3aGlsZSAoY2luLmdldGxpbmUoYXJyYXksIE1BWF9MRU5HVEgpKSB7CgkJaW50IGFtQ3V2ID0gMDsKCQlpbnQgaW5kZXggPSAwOwoJCWludCBsZW5ndGggID0gc3RybGVuKGFycmF5KTsKCQlpbnQgZmxhZyA9IDE7CgkJZm9yIChpbnQgaSA9IGxlbmd0aCAtIDE7IGkgPj0gMCAmJiBmbGFnID09IDE7IC0taSkgewoJCQlpZiAoKGFycmF5W2ldID49ICdBJyAmJiBhcnJheVtpXSA8PSAnWicpIHx8IChhcnJheVtpXSA+PSAnYScgJiYgYXJyYXlbaV0gPD0gJ3onKSkgewoJCQkJd29yZEFycmF5W2luZGV4KytdID0gYXJyYXlbaV07CgkJCX0gZWxzZSBpZiAoaW5kZXggPj0gMSAmJiBhcnJheVtpXSA8ICdBJyl7CgkJCQkvL2luZGV4ID0gMDsKCQkJCWZsYWcgPT0gMDsKCQkJfQoJCQkvL2NvdXQgPDwgYXJyYXlbaV0gPDwiICI7CgkJfQoJCWZvciAoaW50IGkgPSAwOyBpIDwgaW5kZXg7ICsraSkgewoJCQljb3V0IDw8IHdvcmRBcnJheVtpXSA8PCIgIjsKCQl9CgkJY291dCA8PCAiXG4iOwoJfQoJcmV0dXJuIDA7CgkKCQoJCgkvKgoJaWYgKGlzV29yZChhcnJheVtpXSkpIHsKCQkJCWFtQ3V2ID0gMTsKCQkJfSBlbHNlIGlmIChhbUN1diA9PSAxKSB7CgkJCQkKCQkJfQoJKi8KfQ==