#include <bits/stdc++.h>
using namespace std;
template <typename __Tp1>
void __f(const char* name, __Tp1&& __tp1) {
  cerr << name << " : " << __tp1 << std::endl;
}
template <typename __Tp1, typename... __Tps>
void __f(const char* names, __Tp1&& __tp1, __Tps&&... __tps) {
  const char* comma = strchr(names + 1, ',');
  cerr.write(names, comma - names) << " : " << __tp1 << " | ";
  __f(comma + 1, __tps...);
}
int main() {
  int __T;
  scanf("%d", &__T);
  unordered_map<string, int> u_map;
  for (int T = 1; T <= __T; T++) {
    string s;
    cin >> s;
    u_map[s] = T;
  }
  vector<pair<int, string> > V;
  for (auto& u : u_map) V.push_back(make_pair(u.second, u.first));
  sort(V.begin(), V.end());
  reverse(V.begin(), V.end());
  for (auto& v : V) cout << v.second << endl;
  return 0;
}
