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:
if __file__ == '/tmp/code.py':
	import sys; sys.stdin = open('input.txt')

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

a = raw_input()
b = raw_input()

d = sum(x != y for x, y in zip(a, b))

if t >= d:
	ans = []
	for x, y in zip(a, b):
		if x != y:
			ans.append(next(z for z in 'abc' if z not in [x, y]))
			d -= 1
			t -= 1
		elif t - d > 0:
			ans.append(next(z for z in 'ab' if z != x))
			t -= 1
		else:
			ans.append(x)
	print ''.join(ans)
elif t < d:
	if 2 * t < d:
		print -1
	else:
		k = 0
		while t < d - k + k / 2:
			k += 2
		r = t - k / 2 - (d - k)
		ans = []
		for x, y in zip(a, b):
			if x != y:
				if k > 0:
					if k % 2:
						ans.append(x)
					else:
						ans.append(y)
					k -= 1
				else:
					ans.append(next(z for z in 'abc' if z not in [x, y]))
					d -= 1
			elif r > 0:
				ans.append(next(z for z in 'ab' if z != x))
				r -= 1
			else:
				ans.append(x)
		print ''.join(ans)