#include<iostream>
#include<stdlib.h>
using namespace std;
struct elemtype{
int value;
};
typedef struct bitnode{
elemtype data;
struct bitnode *lchild,*rchild;
}bitnode,*bitree;
void visit(bitree &l)
{
cout<<l->data.value;
}
void createbitree(bitree &l)
{
int a;
cin>>a;
if(a==99999)
l=NULL;
else{
l=(bitree)malloc(sizeof(bitnode));
l->data={a};
createbitree(l->lchild);
createbitree(l->rchild);
}
}
void preorder(bitree &l)
{
if(l!=NULL)
{
visit(l);
preorder(l->lchild);
preorder(l->rchild);
}
}
void inorder(bitree &l)
{
if(l!=NULL)
{
inorder(l->lchild);
visit(l);
inorder(l->rchild);
}
}
void postorder(bitree &l)
{
if(l!=NULL)
{
postorder(l->lchild);
postorder(l->rchild);
visit(l);
}
}
int main()
{
bitree l;
createbitree(l);
preorder(l);
return 0;
}