inp = input() n = int(inp.split(" ")[0]) c = int(inp.split(" ")[1]) letters = [] hodnost_na_pismeno = { 300: 'a', 210: 'b', 201: 'c', 202: 'd', 203: 'e', 230: 'f', 500: 'g', 110: 'h', 101: 'i', 32: 'j', 102: 'k', 103: 'l', 130: 'm', 400: 'n', 11: 'o', 12: 'p', 13: 'q', 40: 'r', 310: 's', 3: 't', 4: 'u', 302: 'v', 33: 'w', 303: 'x', 31: 'y', 330: 'z' } for char in range(n): hodnost = 0 okoli_tecky = [] for line in range(9): current_line = input() if line in [3, 4, 5]: okoli_tecky.append(current_line[3:6]) for i in range(3): for j in range(3): if okoli_tecky[i][j] == "#": hodnost += (j + 1) * (10 ** i) letter = hodnost_na_pismeno[hodnost] letters.append(chr(((ord(letter) - 97) + c) % 26 + 97)) letter_to_pattern = { 'a': "+-+0", 'b': "0-+0", 'c': "--+0", 'd': "-0+0", 'e': "-++0", 'f': "+00+", 'g': "+0++", 'h': "0-+-", 'i': "--+-", 'j': "-00+", 'k': "+--0", 'l': "+--+", 'm': "0++-", 'n': "+-++", 'o': "0---", 'p': "0--0", 'q': "0--+", 'r': "0+0-", 's': "0-++", 't': "---0", 'u': "---+", 'v': "-0++", 'w': "-+0+", 'x': "-+++", 'y': "--0+", 'z': "0+++", } znamenko = { "0": 0, "+": 1, "-": -1 } for letter in letters: output_pismeno = [ [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", "*", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], [".", ".", ".", ".", ".", ".", ".", ".", "."], ] str_smery = letter_to_pattern[letter] smery = [[znamenko[str_smery[0]], znamenko[str_smery[1]]], [znamenko[str_smery[2]], znamenko[str_smery[3]]]] for i in range(1,4): output_pismeno[4+i*smery[0][0]][4+i*smery[0][1]] = '#' output_pismeno[4+i*smery[1][0]][4+i*smery[1][1]] = '#' for radek in output_pismeno: for char in radek: print(char, end="") print()