bcdef
abbbc
 z
y
 reddit
abcdef
 abc
aaa
 y
z
 cbxz
aaaa

bccdb
 z
 dfdeed
 aab
 y
 abac

#include <bits/stdc++.h>
using namespace std;
int main() {
  string s1, s2;
  cin >> s1 >> s2;
  long long n = s1.length();
  multiset<char> m1, m2;
  for (long long i = 0; i < n; i++) {
    m1.insert(s1[i]);
    m2.insert(s2[i]);
  }
  long long i = 0;
  long long pos = 0;
  char arr[n];
  for (; i < n; i++) {
    char c = *m1.begin();
    char d = *m2.rbegin();
    if (i % 2 == 0) {
      if (c < d) {
        arr[pos++] = c;
        m1.erase(m1.begin());
      } else
        break;
    } else {
      if (d > c) {
        arr[pos++] = d;
        m2.erase(m2.begin());
      } else
        break;
    }
  }
  long long x = 0, y = 0;
  for (long long j = i; j < n; j++) {
    x += (j % 2 == 0);
    y += (j % 2 == 1);
  }
  multiset<char>::iterator it = m1.begin();
  for (long long j = 0; j < x - 1; j++) it++;
  multiset<char>::iterator jt = m2.end();
  for (long long j = 0; j < y; j++) jt--;
  pos = n - 1;
  for (; i < n; i++) {
    if (i % 2 == 0) {
      arr[pos--] = *it;
      it--;
    } else {
      arr[pos--] = *jt;
      jt++;
    }
  }
  for (long long i = 0; i < n; i++) cout << arr[i];
  cout << endl;
}
