import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    static int a;
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String or = in.nextLine();
            String ee = in.nextLine();
            List<String> collect = Arrays.stream(ee.split("")).sorted(
                                       Comparator.naturalOrder()).collect(Collectors.toList());
            a = collect.size() - 1;
            String s = Arrays.stream(or.split("")).map(chr -> {
                if (a >= 0) {
                    String s1 = collect.get(a);
                    if (chr.compareTo(s1) >= 0) {
                        return chr;
                    } else {
                        a--;
                        return s1;
                    }
                } else return chr;
            }).collect(Collectors.joining());
            System.out.println(s);
        }
    }
}