from collections import deque h, w = map(int, input().split()) s = [input() for _ in range(h)] dx = [1, 0] dy = [0, 1] cands = [] cands.append(set()) cands[0].add((0, 0)) ans = [s[0][0]] for i in range(h + w - 2): c = None q = set() for cx, cy in cands[-1]: for j in range(2): nx = cx + dx[j] ny = cy + dy[j] if nx >= h or ny >= w: continue if c is None or c > s[nx][ny]: c = s[nx][ny] q = set() q.add((nx, ny)) elif c == s[nx][ny]: q.add((nx, ny)) cands.append(q) ans.append(c) print(*ans, sep='')