h,w,n = map(int, input().split()) s = [0 for _ in range(w)] for i in range(h): for k, elm in enumerate(list(input())): if elm == '#': s[k] += 1 c = sorted([(_, int(input())) for _ in range(n)], key=lambda x: x[1]) c_index = [elm[0] for elm in c] c = [elm[1] for elm in c] column_list = [list() for _ in range(w)] for index, k in enumerate(c): column_list[k].append(index) column_list[k+1].append(index) column_list[k+2].append(index) dic = {} for i in range(n): dic[i] = dict() dic[i]['left_index'] = c[i] dic[i]['elm'] = [0, 0, 0] dic[i]['sum'] = 0 for column in range(w): sorted_temp_list = sorted(column_list[column], \ key=lambda x: dic[x]['sum']) stock = s[column] while stock != 0: for k in sorted_temp_list: left_index = dic[k]['left_index'] dic[k]['elm'][column-left_index] += 1 dic[k]['sum'] += 1 stock -= 1 if stock == 0: break def pack_print(_list): left, center, right = _list for _ in range(3): s = str() s += '#' if left > 0 else '.' s += '#' if center > 0 else '.' s += '#' if right > 0 else '.' print(s) left -= 1 center -= 1 right -= 1 for i in range(n): index = c_index.index(i) pack_print(dic[index]['elm'])