#include <bits/stdc++.h>
using namespace std;
int c[258], D[258];
int main() {
  int n;
  scanf("%d", &n);
  vector<char> Ed[256];
  string nam;
  for (int i = 1; i <= n; i++) {
    cin >> nam;
    for (int j = 0; j < nam.size() - 1; j++) {
      if (c[nam[j + 1]] == 0 || (c[nam[j]] == 0 && j == 0)) {
        Ed[nam[j]].push_back(nam[j + 1]);
        c[nam[j + 1]] = 1;
      }
      D[nam[j]] = 1;
    }
    D[nam[0]] = 1;
  }
  string as;
  for (int i = 'a'; i <= 'z'; i++) {
    if (D[i] == 1 && c[i] == 0) {
      as += i;
      int k = i;
      while (Ed[k].size() != 0) {
        as += Ed[k][0];
        k = Ed[k][0];
      }
    }
  }
  cout << as << endl;
}
