rt
#include<bits/stdc++.h>
using namespace std;
string s1,s2;
long long flag, l, len;
char a[105];
void dfs(int x,int l,int r)
{
if(l+1==r)
{
return ;
}
for(int i=0;i<len;i++)
{
for(int j=l+1;j<r;j++)
{
if(s2[i]==s1[j])
{
a[x]=s2[i];
dfs(x*2,l,j);
goto Flag;
}
}
}
Flag:
for(int i=0;i<len;i++)
{
for(int j=l+1;j<r;j++)
{
if(s2[i]==s1[j])
{
a[x]=s2[i];
dfs(x*2 + 1,j,r);
return ;
}
}
}
}
int print(int i)
{
if(a[i*2]!=0)
{
print(i*2);
}
if(a[i*2+1]!=0)
{
print(i*2+1);
}
cout<<a[i];
}
int main() {
cin>>s1>>s2;
len=s1.size();
dfs(1,-1,len);
print(1);
return 0;
}