local function range(b, e)
  if not e then
    e = b
    b = 1
  end
  local t = {}
  for i=1,e-b+1 do
    t[i] = b+i-1
  end
  return t
end

local function all(t, f)
  for k,v in pairs(t) do
    if not f(v) then
      return false
    end
  end
  return true
end

local function map(t, f)
  local nt = {}
  for k,v in pairs(t) do
    nt[k] = f(v)
  end
  return nt
end

local N = {}
N[1], N[2] = io.read("n", "n", "l")
local A = {}
for h=1,N[1] do
  A[h] = {}
  for w=1,N[2] do
    local a = io.read(1)
    A[h][w] = a
  end
  io.read("l")
end
local function a(p, q, s)
  if s == 1 then
    return A[p][q]
  else
    return A[q][p]
  end
end

local range = {range(N[1]), range(N[2])}
local function create_R(x)
  local y = x % 2 + 1
  local function filter(p)
    local function check(q)
      return a(p,q,x) == '.'
    end
    return all(range[y], check)
  end
  return map(range[x], filter)
end
local R = {}

R[1] = create_R(1)
R[2] = create_R(2)

for h=1,N[1] do
  if not R[1][h] then
    for w=1,N[2] do
      if not R[2][w] then
        io.write(a(h,w,1))
      end
    end
    print()
  end
end