#include <cstddef>
#include <iostream>
#include <cstring>
using namespace std;
struct Bitree{
    char data;
    struct Bitree* lchild;
    struct Bitree* rchild;
    Bitree(char x):data(x),lchild(NULL),rchild(NULL){}
};
Bitree* buildT(string front,string mid){
    if(front==""||mid=="") return NULL;
    Bitree* r=new Bitree(front[0]);
    char n=front[0];
    int loc=mid.find(n);
    r->data=n;
    r->lchild=buildT(front.substr(1,loc), 
    mid.substr(0,loc));
    r->rchild=buildT(front.substr(loc+1), 
    mid.substr(loc+1));
    return r;
}
void backorder(Bitree* root){
    if(root==NULL) return;
    backorder(root->lchild);
    backorder(root->rchild);
    cout<<root->data;
}
int main() {
    string f,m;
    while(cin>>f>>m){
        Bitree* r= buildT(f, m);
        backorder(r);
        cout<<endl;

    }
}