#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e5 * 3;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  deque<char> mas1;
  deque<char> mas2;
  string cur_str;
  cin >> cur_str;
  for (auto e : cur_str) {
    mas1.push_back(e);
  }
  cin >> cur_str;
  for (auto e : cur_str) {
    mas2.push_back(e);
  }
  int n = cur_str.size();
  sort(mas1.begin(), mas1.end());
  sort(mas2.begin(), mas2.end());
  for (int i = 0; i < n / 2; ++i) {
    mas1.pop_back();
  }
  for (int i = 0; i < (n + 1) / 2; ++i) {
    mas2.pop_front();
  }
  string ans = cur_str;
  int l = 0;
  int r = n - 1;
  for (int i = 0; i < n; ++i) {
    if (i % 2 == 0) {
      if (mas1[0] < mas2[mas2.size() - 1]) {
        ans[l] = mas1[0];
        mas1.pop_front();
        l++;
      } else {
        ans[r] = mas1[mas1.size() - 1];
        mas1.pop_back();
        r--;
      }
    } else {
      if (mas2[mas2.size() - 1] > mas1[0]) {
        ans[l] = mas2[mas2.size() - 1];
        mas2.pop_back();
        l++;
      } else {
        ans[r] = mas2[0];
        mas2.pop_front();
        r--;
      }
    }
  }
  cout << ans << endl;
  return 0;
}
