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

bccdb
 z
 dfdeed
 aab
 y
 abac

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.Comparator;
import java.util.StringTokenizer;

public class C {


	public static void main(String[] args) throws Exception{

		Scanner sc = new Scanner(System.in);
		PrintWriter out = new PrintWriter(System.out);

		String A = sc.next();
		Character[] a = new Character[A.length()];

		for (int i = 0; i < a.length; i++) {
			a[i] = A.charAt(i);
		}
		String B = sc.next();
		Character[] b = new Character[A.length()];
		for (int i = 0; i < b.length; i++) {
			b[i] = B.charAt(i);
		}
		Arrays.sort(a);
		Arrays.sort(b, new Comparator<Character>() {

			@Override
			public int compare(Character o1, Character o2) {
				return o2 - o1;
			}
		});
		Character[] tmp = new Character[(A.length() + 1) /2];

		for (int i = 0; i < tmp.length; i++) {
			tmp[i] = a[i];
		}
		a = tmp;

		tmp = new Character[(A.length()) /2];

		for (int i = 0; i < tmp.length; i++) {
			tmp[i] = b[i];
		}
		b = tmp;

		int i = 0;
		int j = A.length() - 1;
		char[] ans = new char[j + 1];

		int p1 = 0;
		int p2 = 0;
		boolean f = true;
		while(i < ans.length) {
			if(f){
				if(p2 == b.length || a[p1] < b[p2])
					ans[i++] = a[p1++];
				else {
					p1 = a.length - 1;
					p2 = b.length - 1;
					for (int k = ans.length - 1; k >= i; k--) {
						if(f)
							ans[k] = a[p1--];
						else
							ans[k] = b[p2--];
						f = !f;
					}

					break;
				}
			}else{
				if(p1 == a.length || b[p2] > a[p1])
					ans[i++] = b[p2++];
				else {
					p1 = a.length - 1;
					p2 = b.length - 1;
					for (int k = ans.length - 1; k >= i; k--) {
						if(f)
							ans[k] = a[p1--];
						else
							ans[k] = b[p2--];
						f = !f;
					}

					break;
				}
			}
		
		f = !f;
	}

	////////////////


	for (int k = 0; k < ans.length; k++) {
		out.print(ans[k]);
	}
	out.println();

	out.flush();
	out.close();
}


static class Scanner 
{
	StringTokenizer st;
	BufferedReader br;

	public Scanner(InputStream System){br = new BufferedReader(new InputStreamReader(System));}
	public String next() throws IOException 
	{
		while (st == null || !st.hasMoreTokens()) 
			st = new StringTokenizer(br.readLine());
		return st.nextToken();
	}
	public String nextLine()throws IOException{return br.readLine();}
	public int nextInt() throws IOException {return Integer.parseInt(next());}
	public double nextDouble() throws IOException {return Double.parseDouble(next());}
	public char nextChar()throws IOException{return next().charAt(0);}
	public Long nextLong()throws IOException{return Long.parseLong(next());}
	public boolean ready() throws IOException{return br.ready();}
	public void waitForInput(){for(long i = 0; i < 3e9; i++);}
}
}