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 PYTHON3):

Solution:
from collections import defaultdict
def mp():  return map(int,input().split())
def lt():  return list(map(int,input().split()))
def pt(x):  print(x)
def ip():  return input()
def it():  return int(input())
def sl(x):  return [t for t in x]
def spl(x): return x.split()
def aj(liste, item): liste.append(item)
def bin(x):  return "{0:b}".format(x)
def printlist(l): print(' '.join([str(x) for x in l]))
def listring(l): return ''.join([str(x) for x in l])


n,t = mp()
a = ip()
b = ip()
L = sum([a[i] != b[i] for i in range(n)])
if L > 2*t:
    print(-1)
    exit()
result = ""
if L <= t:
    m = 0
    for i in range(n):
        if a[i] != b[i]:
            p,q = ord(a[i]),ord(b[i])
            c = q
            while c == p or c == q:
                c += 1
                if c == 123:
                    c = 97
            result += chr(c)
        elif m < t-L:
            p,q = ord(a[i]),ord(b[i])
            c = q
            while c == p or c == q:
                c += 1
                if c == 123:
                    c = 97
            result += chr(c)
            m += 1
        else:
            result += b[i]
else:
    u = L-t
    m = 0
    for i in range(n):
        if a[i] != b[i]:
            if m < 2*u:
                if m % 2 == 0:
                    result += a[i]
                else:
                    result += b[i]
                m += 1
            else:
                p,q = ord(a[i]),ord(b[i])
                c = q
                while c == p or c == q:
                    c += 1
                    if c == 123:
                        c = 97
                result += chr(c)
        else:
            result += b[i]
print(result)