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

bccdb
 z
 dfdeed
 aab
 y
 abac

s=input() #1st string
t=input() #2nd string
slots=[]
s1=[]
t1=[]
x=round(len(s)/2)
slotsfor_s=round(len(s)/2)
slotsfor_t=int(len(t)/2)
for i in range(len(s)):
    slots.append("#")

for j in range(x):
    if slotsfor_s>0 and "#" in slots:
        if max(t)>min(s):
            slots[slots.index("#")] = min(s)
            slotsfor_s -= 1
            s = s[:s.find(min(s))] + s[s.find(min(s)) + 1:]
        else:
            s1 = "".join(sorted(s)[:slotsfor_s])
            slotsfor_s -=1
            slots[len(slots) - list(reversed(slots)).index("#") - 1] = max(s1)

    if slotsfor_t>0 and "#" in slots:
        if min(s)<max(t):
            slots[slots.index("#")] = max(t)
            slotsfor_t -= 1
            t = t[:t.find(max(t))] + t[t.find(max(t)) + 1:]
        else:
            t1 = "".join(sorted(t,reverse=True)[:slotsfor_t])
            slotsfor_t -=1
            slots[len(slots) - list(reversed(slots)).index("#") - 1] = min(t1)


print("".join(slots))