The preferred way to generate user login in Polygon is to concatenate a prefix of the user's first name and a prefix of their last name, in that order. Each prefix must be non-empty, and any of the prefixes can be the full name. Typically there are multiple possible logins for each person.

You are given the first and the last name of a user. Return the alphabetically earliest login they can get (regardless of other potential Polygon users).

As a reminder, a prefix of a string s is its substring which occurs at the beginning of s: "a", "ab", "abc" etc. are prefixes of string "{abcdef}" but "b" and 'bc" are not. A string a is alphabetically earlier than a string b, if a is a prefix of b, or a and b coincide up to some position, and then a has a letter that is alphabetically earlier than the corresponding letter in b: "a" and "ab" are alphabetically earlier than "ac" but "b" and "ba" are alphabetically later than "ac".

Input

The input consists of a single line containing two space-separated strings: the first and the last names. Each character of each string is a lowercase English letter. The length of each string is between 1 and 10, inclusive. 

Output

Output a single string — alphabetically earliest possible login formed from these names. The output should be given in lowercase as well.

Examples

Input

harry potter


Output

hap


Input

tom riddle


Output

tomr

import java.util.*;

public class Main {
    static int[] splitter(int a){
        char [] tem= Integer.toString(a).toCharArray();
        int [] nums =new int[tem.length];
        for (int i = 0; i <nums.length ; i++) {
            nums[i]=Character.getNumericValue(tem[i]);
        }
        return nums;
    }

    public static void main(String[] args)  {
        // write your code here
        Scanner sc= new Scanner(System.in);
        char[] name= sc.next().toCharArray();
        char[] LastName= sc.next().toCharArray();
        String suff1="";
        suff1+=Character.valueOf(name[0]);
        String suff2="";
        suff2+=Character.valueOf(LastName[0]);

        for (int i = 1; i <name.length ; i++) {
            if(name[i]<LastName[0]){suff1+=Character.valueOf(name[i]);}
            else break;
        }
        for (int i = 1; i <LastName.length ; i++) {
            if(LastName[i]<LastName[i-1]){suff2+=Character.valueOf(LastName[i]);}
            else break;
        }
        System.out.println(suff1+LastName[0]);


    }
}