#include <iostream>
#include <stack>

using namespace std;

int broj1=0, broj2=0, dB1=0, dB2=0;

int duzinaBroja(int n)                               //Broj cifara broja n
{
	long long int brojac = 0;
	while (n != 0) {
		n = n / 10;
		brojac++;
	}
	return brojac;
}

void poredjenjeDB(int brojX, int brojY) {            //Koji je broj veci
	if (brojX >= brojY) {
		broj1 = brojX;
		broj2 = brojY;
	}
	else {
		broj1 = brojY;
		broj2 = brojX;
	}
}

int poredjenjeDvaBroja(int brojX, int brojY) {            //Koji je broj veci
	if (brojX > brojY) {
		return 0;
	}
	else if (brojX==brojY){
		return 1;
	}
	else {
		return 2;
	}
}

stack<int> s;

void Poredjenje(int dB1, int dB2) {
	int i, deset=10;
	for (i = 0; i < dB2; i++) {
		if (poredjenjeDvaBroja(broj1%deset, broj2%deset) == 0) {
			s.push(broj1 % deset);
		}else if (poredjenjeDvaBroja(broj1 % deset, broj2 % deset) == 1) {
			s.push(broj1%deset);
			s.push(broj1%deset);
		}
		else {
			s.push(broj2 % deset);
		}
		broj1 = broj1 / 10;
		broj2 = broj2 / 10;

	}
}

void Pirkaz() {
	int i, deset=1;
	if (dB1 > dB2) {
		for (i = 0; i < dB1-(dB1 - dB2); i++) {
		}
		cout << broj1 / deset;
	}
	while (!s.empty()) {
		cout << s.top();
		s.pop();
	}
}

int main()
{
	int brojX, brojY;
	cin >> brojX;
	cin >> brojY;
	poredjenjeDB(brojX, brojY);
	dB1 = duzinaBroja(broj1); // dB1 je veca dužina
	dB2 = duzinaBroja(broj2); //dB2 je uvek manja dužina
	Poredjenje(dB1, dB2);
	Pirkaz();
}