#include <bits/stdc++.h>
using namespace std;
const int MAXN = 3e5 + 5;
int ans[MAXN], a[MAXN], b[MAXN];
string s1, s2;
bool cmp(int t1, int t2) { return t1 > t2; }
int main() {
  cin >> s1 >> s2;
  for (int i = 0; i <= s1.size() - 1; ++i) a[i] = (s1[i] - 'a');
  for (int i = 0; i <= s2.size() - 1; ++i) b[i] = (s2[i] - 'a');
  sort(a, a + s1.size());
  sort(b, b + s2.size(), cmp);
  int l = 1, r = s1.size(), la, lb, ra, rb;
  la = lb = 0;
  if (r & 1) {
    ra = r / 2;
    rb = r / 2 - 1;
  } else {
    ra = r / 2 - 1;
    rb = r / 2 - 1;
  }
  for (int i = 1; i <= s1.size(); ++i) {
    if (i & 1) {
      if (a[la] >= b[lb])
        ans[r--] = a[ra--];
      else
        ans[l++] = a[la++];
    } else {
      if (b[lb] > a[la])
        ans[l++] = b[lb++];
      else
        ans[r--] = b[rb--];
    }
  }
  for (int i = 1; i <= s1.size(); ++i) cout << (char)(ans[i] + 'a');
  cout << endl;
  return 0;
}
