#include <bits/stdc++.h>
using namespace std;
union char_int
{
int i_num;
char c_num;
};
struct trees
{
char c;
char_int l,r;
}tr[30];
int n;
int num[256];
char ls;
void cha_i(int i)
{
tr[i].l.i_num=num[int(tr[i].l.c_num)];
tr[i].r.i_num=num[int(tr[i].r.c_num)];
}
void cha()
{
for(int i=0;i<n;i++)cha_i(i);
}
void I__(int i=0)
{
putchar(tr[i].c);
if(tr[i].l.i_num)I__(tr[i].l.i_num);
if(tr[i].r.i_num)I__(tr[i].r.i_num);
}
int main()
{
scanf("%d\n",&n);
for(int i=0;i<n;i++)
{
ls=getchar();
num[int(ls)]=i;
tr[i].c=ls;
ls=getchar();
tr[i].l.c_num=ls;
ls=getchar();
tr[i].r.c_num=ls;
ls=getchar();
}
cha();
I__();
return 0;
}