#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const long long INF = 1e18;
const int N = 121234;
char s1[N], s2[N];
int n, m;
int main() {
  while (scanf("%d%d", &n, &m) != EOF) {
    scanf("%s%s", s1, s2);
    int i, j;
    int sm = 0;
    int df = 0;
    for (i = 0; i < n; ++i) {
      if (s1[i] == s2[i])
        sm++;
      else
        df++;
    }
    m = n - m;
    if (m > sm + (df / 2)) {
      puts("-1");
      continue;
    }
    int mor = 0;
    if (sm < m) {
      mor = m - sm;
      m = sm;
    }
    int flag = 1;
    for (i = 0; i < n; ++i) {
      if (s1[i] == s2[i]) {
        if (m) {
          m--;
          printf("%c", s1[i]);
        } else {
          if ('a' != s1[i])
            printf("a");
          else
            printf("b");
        }
      } else {
        if (mor) {
          if (flag)
            printf("%c", s1[i]);
          else {
            printf("%c", s2[i]);
            mor--;
          }
          flag ^= 1;
        } else {
          if ('a' != s1[i] && 'a' != s2[i])
            printf("a");
          else if ('b' != s1[i] && 'b' != s2[i])
            printf("b");
          else
            printf("c");
        }
      }
    }
  }
}
