#include <bits/stdc++.h>

using namespace std;

int main()
{
    int x, y;
    cin >> x >> y;
    int tempx = x, tempy = y;
    vector<int> cifrex, cifrey, broj;

    do
    {
        cifrex.push_back(tempx % 10);
        tempx /= 10;
    }
    while(tempx > 0);
    do
    {
        cifrey.push_back(tempy % 10);
        tempy /= 10;
    }
    while(tempy > 0);

    int n;
    if(cifrex.size() > cifrey.size())
    {
        for(int i = 0; i < cifrey.size(); i++)
        {
            if(cifrex[i] != cifrey[i])
            {
                broj.push_back(max(cifrex[i], cifrey[i]));
            }
            else
            {
                broj.push_back(cifrex[i]);
                broj.push_back(cifrex[i]);
            }
            n = i + 1;
        }
        for(int i = n; i < cifrex.size(); i++)
            broj.push_back(cifrex[i]);
    }
    else if(cifrey.size() > cifrex.size())
    {
        for(int i = 0; i < cifrex.size(); i++)
        {
            if(cifrex[i] != cifrey[i])
            {
                broj.push_back(max(cifrex[i], cifrey[i]));
            }
            else
            {
                broj.push_back(cifrex[i]);
                broj.push_back(cifrex[i]);
            }
            n = i + 1;
        }
        for(int i = n; i < cifrey.size(); i++)
            broj.push_back(cifrey[i]);
    }
    else
    {
        for(int i = 0; i < cifrex.size(); i++)
        {
            if(cifrex[i] != cifrey[i])
            {
                broj.push_back(max(cifrex[i], cifrey[i]));
            }
            else
            {
                broj.push_back(cifrex[i]);
                broj.push_back(cifrex[i]);
            }
        }
    }

    reverse(broj.begin(), broj.end());
    for(int i = 0; i < broj.size(); i++)
        cout << broj[i];
    return 0;
}