import heapq END = chr(ord('z') + 1) N = int(input()) S = [input() + END for _ in range(N)] ans = '' h = [] for i, s in enumerate(S): heapq.heappush(h, (s, i)) while True: s, i = heapq.heappop(h) if s[0] == END: break heapq.heappush(h, (s[1:], i)) ans += s[0] print(ans)