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;
using ll = long long;
using ld = long double;
using vi = vector<int>;
using vvi = vector<vi>;
using pii = pair<int, int>;
const int MAXN = 1e5 + 5;
const int MAXM = 1e5 + 5;
const int MOD = 1e9 + 7;
const int INF = 2e9;
const ll LLINF = 2e18;
const ld EPS = 1e-9;
int m, n, k, cnt, x, Left, i;
char min1, max2;
string s, t, ans;
map<char, int> sets[3];
char get(int who) {
  if (who == 1) {
    return (*sets[1].begin()).first;
  } else {
    return (*sets[2].rbegin()).first;
  }
}
void fill(int who) {
  char c = get(who);
  ans[i] = c;
  sets[who][c]--;
  if (sets[who][c] == 0) {
    sets[who].erase(c);
  }
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cin >> s >> t;
  for (char c : s) {
    sets[1][c]++;
  }
  for (char c : t) {
    sets[2][c]++;
  }
  n = ((int)(s).size());
  ans = string(n, '?');
  while (i < n) {
    min1 = get(1);
    max2 = get(2);
    if (i % 2 == 0) {
      if (min1 < max2) {
        fill(1);
      } else {
        Left = n - cnt;
        int tmp = 0;
        for (i = cnt + Left / 2; i < n; i++) {
          if (tmp % 2 == 0) {
            fill(1);
          } else {
            fill(2);
          }
          tmp++;
        }
        for (i = cnt; i < cnt + Left / 2; i++) {
          if (tmp % 2 == 0) {
            fill(1);
          } else {
            fill(2);
          }
          tmp++;
        }
        break;
      }
    } else {
      if (max2 > min1) {
        fill(2);
      } else {
        Left = n - cnt;
        int tmp = 0;
        for (i = cnt + Left / 2; i < n; i++) {
          if (tmp % 2 == 0) {
            fill(2);
          } else {
            fill(1);
          }
          tmp++;
        }
        for (i = cnt; i < cnt + Left / 2; i++) {
          if (tmp % 2 == 0) {
            fill(2);
          } else {
            fill(1);
          }
          tmp++;
        }
        break;
      }
    }
    i++;
    cnt++;
  }
  cout << ans << '\n';
  return 0;
}
