Problem: Marina loves strings of the same length and Vasya loves when there is a third string, different from them in exactly t characters. Help Vasya find at least one such string.

More formally, you are given two strings s1, s2 of length n and number t. Let's denote as f(a, b) the number of characters in which strings a and b are different. Then your task will be to find any string s3 of length n, such that f(s1, s3) = f(s2, s3) = t. If there is no such string, print  - 1.

Input

The first line contains two integers n and t (1 ≤ n ≤ 105, 0 ≤ t ≤ n).

The second line contains string s1 of length n, consisting of lowercase English letters.

The third line contain string s2 of length n, consisting of lowercase English letters.

Output

Print a string of length n, differing from string s1 and from s2 in exactly t characters. Your string should consist only from lowercase English letters. If such string doesn't exist, print -1.

Examples

Input

3 2
abc
xyc


Output

ayd

Input

1 0
c
b


Output

-1

Solution (in PYTHON):

Solution:
from __future__ import print_function, division
import sys

n, t = map(int, raw_input().split())
a = raw_input()
b = raw_input()

dif = sum([int(a[i] != b[i]) for i in xrange(0, n)])

usedif = 0
usesame = 0
if dif <= t:
    usedif = dif
    usesame = n - t
else:
    usedif = 2 * t - dif
    usesame = n - dif

#print(usedif, usesame)

if usedif < 0 or usesame < 0:
    print(-1)
    sys.exit(0)

def getdif(s):
    for i in xrange(ord('a'), ord('z') + 1):
        ch = chr(i)
        if not ch in s:
            return ch

prev = False
ans = []
for i in xrange(0, n):
    ch = ' '
    if a[i] == b[i]:
        if usesame > 0:
            ch = a[i]
            usesame -= 1
        else:
            ch = getdif(a[i])
    else:
        if usedif > 0:
            ch = getdif(a[i] + b[i])
            usedif -= 1
        else:
            if prev:
                ch = a[i]
            else:
                ch = b[i]
            prev = not prev
    ans.append(ch)

print(''.join(ans))