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.ArrayList;
import java.util.List;
import java.util.Scanner;

public class codeforces {
	
	
	public static void main(String[] args) {
		
		Scanner in = new Scanner(System.in);
		String a= in.next();
		String b=in.next();
		String s3="";
		char c= b.charAt(0);
		int i=0;
		List<String> l  = new ArrayList<String>();
		for(i=0;i<a.length();i++)
		{
			if(a.charAt(i)<c && i!=0)
			{
				String temp = String.valueOf(a.charAt(i));
				l.add(temp);
			}
			
			if(a.charAt(i)==c && i!=0)
			{
				break;
			}
			if(a.charAt(i)>c && i!=0)
			{
				break;
			}
			if(i==0)
			{
				String temp = String.valueOf(a.charAt(0));
				l.add(temp);
			}
		}
		for(i=0;i<l.size();i++)
		{
			s3=s3.concat(l.get(i));
		}
		String temp2=String.valueOf(b.charAt(0));
		s3=s3.concat(temp2);
		
		/*int k= s3.length();
		char c2= s3.charAt(k-1);
		for(i=1;i<b.length();i++)
		{
			//String t= String.valueOf(b.charAt(i));
			if(b.charAt(i)>c2)
			{
				String t= String.valueOf(b.charAt(i));
				s3=s3.concat(t);
			}
			else
			{
				break;
			}
		}*/
		System.out.println(s3);
	}

}