#include <stdio.h>
#include <malloc.h>
typedef struct node{
int data;
struct node *next;
}node;
void reverse(node *head)
{
node *q=head->next;
node *f=q;
head->next=NULL;
while(q)
{
f=q;
q=q->next;
f->next=head->next;
head->next=f;
}
}
void main()
{
int n;
node *p,*q;
node *head=(node *)malloc(sizeof(node));
head->data=0;
head->next=NULL;
scanf("%d",&n);
while(n!=-1)
{
p=(node *)malloc(sizeof(node));
p->data=n;
p->next=NULL;
p->next=head->next;
head->next=p;
scanf("%d",&n);
}
//reverse(head);
p=head->next;
while(p!=NULL)
{
printf("%d ",p->data);
p=p->next;
}
}