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

Solution:
input = readline().split(" ").map(Number);
var n = input[0];
var t = input[1];
var s1 = readline(); 
var s2 = readline();

var diff1 = 0;
var a = new Array(n);
var answer = "";
var d = [];
var j = 0;
for (var i = 0; i < n; i++)
{
	if (s1[i] != s2[i]) {
		diff1 += 1;
		d[j++] = i;
	}
}

if (diff1 <= (t+t)) {
	for (var i = 0; i < n; i++)
		a[i] = s1.charCodeAt(i);
	
	var samePreffix = diff1 - t;

	if (samePreffix > 0) {
		var restPreffix = samePreffix;
		for (var i = 0; i < diff1; i++) {
			// part 1
			if (i < samePreffix) {
				a[d[i]] = s2.charCodeAt(d[i]);
			}
			// part 2
			if (samePreffix <= i && i < diff1-samePreffix) {
				a[d[i]] = s1.charCodeAt(d[i]) + 1;
				if (a[d[i]] > "z".charCodeAt(0))
					a[d[i]] -= 26;

				if (a[d[i]] == s2.charCodeAt(d[i]))
					a[d[i]] += 1;			
			}
			// part 3
		}
	} else {
		for (var i = 0; i < n; i++) {
			if (s1[i] == s2[i]) {
				if (samePreffix < 0) {
					a[i] += 1;
					samePreffix += 1;
				}
			} else {
				a[i] += 1;
				if (a[i] > "z".charCodeAt(0))
					a[i] -= 26;
				if (a[i] == s2.charCodeAt(i))
					a[i] += 1;
			}
		}
	}


	for (var i = 0; i < n; i++) {
		if (a[i] > "z".charCodeAt(0))
			a[i] -= 26;	
		answer += String.fromCharCode(a[i]);
	}
} else {
	answer = "-1";
}

write(answer);