#include <iostream>

using namespace std;

int main()
{
    int x, y;
    cin >> x >> y;
    int xn=0;
    int yn=0;
    int z=x;
    int w=y;
    while (z>0)
    {
        xn++;
        z=z/10;
    }
    while (w>0)
    {
        yn++;
        w=w/10;
    }
    int nizx[xn];
    int nizy[yn];
    for (int i=xn-1; i>=0; i--)
    {
        nizx[i]=x%10;
        x=x/10;
    }
    for (int i=yn-1; i>=0; i--)
    {
        nizy[i]=y%10;
        y=y/10;
    }


    int n=xn+yn;
    int trenx=xn-1;
    int treny=yn-1;
    int sudar[n];
    for (int i=0; i<n; i++)
    {
        sudar[i]=0;
    }
    int k=n-1;
    for ( k; k>=0; )
    {
        if (nizx[trenx]==nizy[treny])
        {
            sudar[k]=nizx[trenx];
            sudar[k-1]=nizy[treny];
            k=k-2;
            trenx--;
            treny--;
        }
        if (nizx[trenx]>nizy[treny] && trenx>=0 && treny>=0)
        {
            sudar[k]=nizx[trenx];
            k--;
            trenx--;
            treny--;
        }
        if (nizy[treny]>nizx[trenx] && trenx>=0 && treny>=0)
        {
            sudar[k]=nizy[treny];
            k--;
            trenx--;
            treny--;
        }
        if (trenx>=0 && treny<0)
        {
            sudar[k]=nizx[trenx];
            k--;
            trenx--;
        }
        if (treny>=0 && trenx<0)
        {
            sudar[k]=nizy[treny];
            k--;
            treny--;
        }
        if (trenx<0 && treny<0)
        {
            break;
        }
    }


    for (int i=k+1; i<n; i++)
            cout << sudar[i];


}