#include <bits/stdc++.h>   using namespace std;   bool sortin(const pair<long long int, long long int> &e,               const pair<long long int, long long int> &f) {     return (e.first < f.first);   }   long long int i, j, k, l, m, n, c, p, q, ts, mn = 10e17;   long long int a[200002], b[200002], x[200002];   int main() {     {       ios_base::sync_with_stdio(false);       cin.tie(0);       cout.tie(0);     };     cin >> n;     cin >> m;     l = n - m;     string s, t, u, v;     cin >> s;     cin >> t;     v = s;     for (long long int i = 0; i <= n - 1; i++) u +=  a ;     for (long long int i = 0; i <= n - 1; i++) {       if (!l) break;       if (s[i] == t[i])         u[i] = s[i], v[i] =  . , l--;       else         u[i] =  a ;     }     if (l) {       for (long long int i = 0; i <= n - 1; i++) {         if (v[i] ==  . ) continue;         if (c % 2)           u[i] = s[i], v[i] =  . ;         else           u[i] = t[i], v[i] =  . ;         c++;         if (c % 2 == 0) l--;         if (!l) break;       }     }     if (l) {       cout << -1;       return 0;     }     for (long long int i = 0; i <= n - 1; i++) {       if (v[i] ==  . ) {         if (s[i] != u[i]) p++;         if (t[i] != u[i]) q++;         continue;       }       if (s[i] ==  a ) {         u[i] =  b ;         if (t[i] ==  b ) u[i] =  c ;       } else if (t[i] ==  a ) {         u[i] =  b ;         if (s[i] ==  b ) u[i] =  c ;       }       if (s[i] != u[i]) p++;       if (t[i] != u[i]) q++;     }     if (p != m || q != m) {       cout << -1;       return 0;     }     cout << u;   }   