#define _CRT_SECURE_NO_WARNINGS
#include <string>
#include <algorithm>
#include <iostream>
#include<vector>
#include<map>
#include <stack>
#include <deque>
#include <cmath>
#include <queue>
#include <set>
#include<unordered_map>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef vector<int> vi;
#define Fast ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl '\n'
#define sz(s) (int)(s.size())
#define all(s) s.begin(),s.end()
#define allr(s) s.rbegin(), s.rend()
#define exit(s) return cout<<s,0;
#define watch(x) cout << (#x) << " = " << x << endl
void file() {
#ifndef ONLINE_JUDGE
freopen("in.txt", "r", stdin); freopen("out.txt", "w", stdout);
#endif
}
int main() {
string s, x;
set<string>st;
while (getline(cin, s)) {
for (int i = 0; i < sz(s); i++)
{
if (isalpha(s[i]) || s[i] == '-')
{
if (isalpha(s[i]))
s[i] = tolower(s[i]);
x += s[i];
}
else
{
if (s[i] == ' ')
{
if (x != "" && x != " ")
{
st.emplace(x);
}
x = "";
}
else
{
x += s[i];
}
}
}
if (x != "" && x != " ")
{
st.emplace(x);
x = "";
}
}
auto it1 = st.end();
it1--;
for (auto it : st)
{
if(isalpha(it[0]))
cout << it << endl;
}
}
CiNkZWZpbmUgX0NSVF9TRUNVUkVfTk9fV0FSTklOR1MKI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTx2ZWN0b3I+CiNpbmNsdWRlPG1hcD4KI2luY2x1ZGUgPHN0YWNrPgojaW5jbHVkZSA8ZGVxdWU+CiNpbmNsdWRlIDxjbWF0aD4KI2luY2x1ZGUgPHF1ZXVlPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZTx1bm9yZGVyZWRfbWFwPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp0eXBlZGVmIGxvbmcgbG9uZyBsbDsKdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgdWxsOwp0eXBlZGVmIGxvbmcgZG91YmxlIGxkOwp0eXBlZGVmIHZlY3RvcjxpbnQ+IHZpOwojZGVmaW5lIEZhc3QgaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKI2RlZmluZSBlbmRsICdcbicKI2RlZmluZSBzeihzKSAoaW50KShzLnNpemUoKSkKI2RlZmluZSBhbGwocykgcy5iZWdpbigpLHMuZW5kKCkKI2RlZmluZSBhbGxyKHMpIHMucmJlZ2luKCksIHMucmVuZCgpCiNkZWZpbmUgZXhpdChzKSByZXR1cm4gY291dDw8cywwOwojZGVmaW5lIHdhdGNoKHgpIGNvdXQgPDwgKCN4KSA8PCAiID0gIiA8PCB4IDw8IGVuZGwKdm9pZCBmaWxlKCkgewojaWZuZGVmIE9OTElORV9KVURHRQoJZnJlb3BlbigiaW4udHh0IiwgInIiLCBzdGRpbik7IGZyZW9wZW4oIm91dC50eHQiLCAidyIsIHN0ZG91dCk7CiNlbmRpZgp9CgppbnQgbWFpbigpIHsKCglzdHJpbmcgcywgeDsKCXNldDxzdHJpbmc+c3Q7Cgl3aGlsZSAoZ2V0bGluZShjaW4sIHMpKSB7CgoJCWZvciAoaW50IGkgPSAwOyBpIDwgc3oocyk7IGkrKykKCQl7CgoJCQlpZiAoaXNhbHBoYShzW2ldKSB8fCBzW2ldID09ICctJykKCQkJewoJCQkJaWYgKGlzYWxwaGEoc1tpXSkpCgkJCQkJc1tpXSA9IHRvbG93ZXIoc1tpXSk7CgkJCQl4ICs9IHNbaV07CgoJCQl9CgoJCQllbHNlCgkJCXsKCgoJCQkJaWYgKHNbaV0gPT0gJyAnKQoJCQkJewoJCQkJCWlmICh4ICE9ICIiICYmIHggIT0gIiAiKQoJCQkJCXsKCQkJCQkJc3QuZW1wbGFjZSh4KTsKCgkJCQkJfQoJCQkJCXggPSAiIjsKCgkJCQl9CgkJCQllbHNlCgkJCQl7CgoJCQkJCXggKz0gc1tpXTsKCQkJCX0KCgoJCQl9CgoKCgkJfQoJCWlmICh4ICE9ICIiICYmIHggIT0gIiAiKQoJCXsKCQkJc3QuZW1wbGFjZSh4KTsKCQkJeCA9ICIiOwoJCX0KCgl9CgoJYXV0byBpdDEgPSBzdC5lbmQoKTsKCWl0MS0tOwoKCglmb3IgKGF1dG8gaXQgOiBzdCkKCXsKCQlpZihpc2FscGhhKGl0WzBdKSkKCgkJY291dCA8PCBpdCA8PCBlbmRsOwoKCX0KCn0=