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 math import *
def other(a, b) :
    if (ord(a) > ord(b)) : [a, b] = [b, a]
    if (a != 'a') : return 'a'
    if (b == 'b') : return 'c'
    return 'b'

[n, t] = map(int, raw_input().split())
a = raw_input()
b = raw_input()
diff = 0
for i in range(n) :
    if (a[i] != b[i]) :
        diff += 1
if (diff > t + t) :
    print -1
else :
    res = ['a' for i in range(n)]
    same = n - t
    for i in range(n) :
        if (a[i] == b[i]) :
            if (same > 0) :
                same -= 1
                res[i] = a[i]   
            else :
                res[i] = other(a[i], b[i])
    now = 0
    for i in range(n) :
        if (a[i] != b[i]) :
            now += 1
            if (now <= same) :
                res[i] = a[i]
            elif (now <= same + same) :
                res[i] = b[i]
            else :
                res[i] = other(a[i], b[i])
    print ''.join(res)