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:
'''
Created on Oct 7, 2015

@author: Ismael
'''
def otherChar(x,y):
    for c in 'a','b','c':
        if c != x and c != y:
            return c

def solve(a,b,t):
    n = len(a)
    e = sum(1 for i in range(n) if a[i] == b[i])
    d = n-e
    for x in range(0,n+1):
        if (d-x+x//2 <= t and (x%2==0)):
            break
    if not (d-x+x//2 <= t and (x%2==0)):
        return -1
    w = d-x
    y = t-(d-x+x//2)
    z = e-y
    #print(w,x,y,z)
    if z < 0:
        return -1
    
    c=len(a)*[0]
    j = 0
    for i in range(n):
        if a[i] != b[i]:
            if w > 0:
                c[i] = otherChar(a[i],b[i])
                w -= 1
            else:
                c[i] = a[i] if j%2 else b[i]
                x -= 1
            j+=1
        else:
            if y > 0:
                c[i] = otherChar(a[i],b[i])
                y -= 1
            else:
                c[i] = a[i]
                z -= 1
    if not w==x==y==z==0:
        return -1
    return ''.join(map(str,c))

def check(a,b,t,c):
    assert(sum(1 for i in range(len(a)) if a[i] != c[i])==t)
    assert(sum(1 for i in range(len(a)) if b[i] != c[i])==t)

# args = "abc","abc",2
# c=solve(*args)
# print(c)
# check(*args,c=c)
#   
# args = "abc","xyc",2
# c=solve(*args)
# print(c)
# check(*args,c=c)
#   
# args = "c","d",0
# c=solve(*args)
# print(c)
# check(*args,c=c)



_,t=map(int,input().split())
a=input()
b=input()
print(solve(a,b,t))