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;
  if (s1.size() == 1) {
    cout << s1;
  } else {
    priority_queue<char> a, b, a1, b1, a2, b2;
    for (int j = 0; j < s1.size(); ++j) {
      a.push(-s1[j]);
      b.push(s2[j]);
    }
    for (int j = 0; j < s1.size() / 2 + s1.size() % 2; ++j) {
      a1.push(a.top());
      a2.push(-a.top());
      a.pop();
    }
    for (int j = 0; j < s1.size() / 2; ++j) {
      b1.push(b.top());
      b2.push(-b.top());
      b.pop();
    }
    vector<char> ans(s1.size());
    size_t r = 0, p = s1.size() - 1, u = 0, y = 0;
    for (int j = 0; j < s1.size(); ++j) {
      if (j % 2) {
        if (b1.top() < -a1.top() && s1.size() % 2) {
          u = 1;
        }
        if (u) {
          ans[p] = -b2.top();
          b2.pop();
          p -= 1;
        } else {
          ans[r] = b1.top();
          b1.pop();
          r += 1;
        }
      } else {
        if (b1.top() < -a1.top() && !s1.size() % 2) {
          u = 1;
        }
        if (u) {
          ans[p] = a2.top();
          a2.pop();
          p -= 1;
        } else {
          ans[r] = -a1.top();
          a1.pop();
          r += 1;
        }
      }
    }
    for (int i = 0; i < s1.size(); ++i) {
      cout << ans[i];
    }
  }
  cout << endl;
  return 0;
}
