#include <bits/stdc++.h>
using namespace std;
string G[500005];
int N;
int main() {
  int i, k, lent, lenl, lenm;
  ios::sync_with_stdio(0);
  cin >> N;
  for (i = 0; i < N; i++) cin >> G[i];
  for (i = N - 1; i >= 1; i--) {
    bool F;
    lent = G[i].size();
    lenl = G[i - 1].size();
    lenm = min(lent, lenl);
    F = 0;
    for (k = 0; k < lenm; k++) {
      if (G[i][k] < G[i - 1][k]) {
        G[i - 1].resize(k);
        F = 1;
        break;
      } else if (G[i][k] > G[i - 1][k]) {
        F = 1;
        break;
      }
    }
    if (!F) {
      if (lent < lenl) G[i - 1].resize(lent);
    }
  }
  for (i = 0; i < N; i++) cout << G[i] << endl;
}
