rewrites = ('XXX', 'XX.', 'X.X', 'X..', '.XX', '.X.', '..X', '...')
rules, gens = input().split(' ')
rules, gens = int(rules), int(gens)

r = []
mask = 0b10000000

while mask:
    r.append(1 if rules & mask else 0)
    mask >>= 1

state = input()


def try_rules(l, m, r, rules):
    for rule, rewrite in zip(rules, rewrites):
        # print(f'{l}{m}{r}', '==', rewrite)
        if f'{l}{m}{r}' == rewrite:
            return 'X' if rule else '.'


def run_automaton(state, rules):
    new_state = ''
    for i in range(len(state)):
        l = '.' if i == 0 else state[i-1]
        m = state[i]
        r = '.' if i == len(state)-1 else state[i+1]

        new_state += try_rules(l, m, r, rules)
    return new_state


for i in range(gens):
    state = run_automaton(state, r)
    print(state)
