You are given a image with a height of H pixels and a width of W pixels. Each pixel is represented by a lowercase English letter. The pixel at the i-th row from the top and j-th column from the left is a_{ij}.  Put a box around this image and output the result. The box should consist of `#` and have a thickness of 1.
h, w = map(int, input().split())
a = [list(input().split()) for _ in range(h)]
for i in a:
  i.insert(0, '#')
  i.append('#')
a.insert(0, ['#']*(w+2))
a.append(['#']*(w+2))
for i in a:
  print(*i)
h, w = map(int, input().split())
a = [list(input().split()) for _ in range(h)]
for i in a:
  i.insert(0, '#')
  i.append('#')
a.insert(0, ['#']*(w+2))
a.append(['#']*(w+2))
for i in a:
  print(''.join(i))