#include <iostream>
#include <string>
using namespace std;
struct TreeNode{
char data;
TreeNode * left;
TreeNode * right;
};
TreeNode * rebuild(string pre, string med){
if(pre.size()==0)
{return NULL;}
else{
char root = pre[0];
TreeNode *pNewNode = new TreeNode;
pNewNode->data = root;
int position = med.find(root);
pNewNode->left = rebuild(pre.substr(1,position),med.substr(0,position));
pNewNode->right = rebuild(pre.substr(position+1),med.substr(position+1));
return pNewNode;
}
}
void postOrder(TreeNode * a){
if(a == NULL) return;
postOrder(a->left);
postOrder(a->right);
printf("%c",a->data);
}
char Pre[30];
char Med[30];
int main() {
while(scanf("%s%s",Pre,Med)!=EOF){
TreeNode * root = rebuild(Pre,Med);
postOrder(root);
printf("\n");
}}
// 64 位输出请用 printf("%lld")