#include <bits/stdc++.h>
const double PI =
    3.141592653589793238462643383279502884197169399375105820974944;
using namespace std;
vector<long long> convert(string str) {
  vector<long long> vec(str.size() + 1);
  for (long long i = 0; i < str.size(); ++i) {
    vec[i + 1] = str[i] - 'a';
  }
  return vec;
}
void solve() {
  long long k;
  cin >> k;
  string s, t;
  cin >> s >> t;
  vector<long long> l = convert(s), r = convert(t), vec_sum(s.size() + 1);
  long long carry = 0;
  for (long long i = k; i >= 0; --i) {
    long long sum = l[i] + r[i] + carry;
    carry = sum / 26;
    if (sum >= 26 && i > 0) {
      sum %= 26;
    }
    vec_sum[i] = sum;
  }
  for (long long i = 0; i < k + 1; ++i) {
    long long rem = vec_sum[i] % 2;
    vec_sum[i] /= 2;
    if (i + 1 <= k) {
      vec_sum[i + 1] += rem * 26;
    }
  }
  for (long long i = 1; i < k + 1; ++i) {
    cout << (char)(vec_sum[i] + (long long)'a');
  }
  cout << endl;
}
int32_t main() {
  bool testing = false;
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  if (testing) {
    freopen("test1.txt", "rt", stdin);
    long long start = clock();
    solve();
    long long end = clock();
    cout << "time: " << (end - start) / (double)(CLOCKS_PER_SEC)*1000
         << " milliseconds\n";
  } else {
    solve();
  }
}
