#include <bits/stdc++.h>
int n, t;
char li1[100010], li2[100010], ans[100010];
int main() {
  scanf("%d%d", &n, &t);
  scanf(" %s", li1);
  scanf(" %s", li2);
  memset(ans, 0, sizeof ans);
  int i, num = 0;
  for (i = 0; i < n && num < n - t; i++)
    if (li1[i] == li2[i]) num++, ans[i] = li2[i];
  if ((num + ((n - num) / 2)) < (n - t)) {
    printf("-1");
    return 0;
  }
  i = 0;
  int n1 = 0, nn = n - t - num, n2 = 0;
  while (n1 < nn || n2 < nn) {
    if (ans[i] != 0) {
      i++;
      continue;
    }
    if (n1 < nn)
      ans[i] = li1[i], n1++;
    else
      ans[i] = li2[i], n2++;
    i++;
  }
  while (i < n) {
    if (ans[i] != 0) {
      i++;
      continue;
    }
    if (li1[i] == 'a' || li2[i] == 'a') {
      if (li1[i] == 'b' || li2[i] == 'b')
        ans[i] = 'c';
      else
        ans[i] = 'b';
    } else
      ans[i] = 'a';
    i++;
  }
  printf("%s\n", ans);
  return 0;
}
