#include<stdio.h>
#include<stdlib.h>

typedef struct node
{
    int data;
    struct node *next;
    struct node *prev;
}Node;

Node *head=NULL;

void create(int num)
{
    Node *newnode,*last=NULL;
    int val;
    for(int i=0;i<num;i++)
    { 
        scanf("%d",&val);
    
    newnode=(Node*)malloc(sizeof(Node));
    newnode->data=val;
    newnode->next=NULL;
    newnode->prev=NULL;
    if(head==NULL) 
    {
        head=newnode;
        head->next=head;
        head->prev=head;
        last=head;
    }
    else
    {
        newnode->next=head;
        newnode->prev=last;
        last->next=newnode;
        head->prev=newnode;
        last=newnode;
    }
}
}
void insert( int val)
{
    Node *newnode=(Node*)malloc(sizeof(Node));
    newnode->data=val;
    if(head==NULL);
    {
        newnode->next=newnode;
        newnode->prev=newnode; 
        head=newnode;
        return;
    }
    else
    {
    Node *last=head->prev;
    newnode->next=head;
    newnode->prev=last;
    last->next=newnode;
    head->prev=newnode;
    head=newnode;
}
}
void display()
{
    Node *temp=head;
    printf("%d ",temp->data);
    temp=temp->prev;
    while(temp!=head){
        printf("%d ",temp->data);
        temp=temp->prev;
    }
}
int main()
{
    int n,val;
    scanf("%d",&n);
    if(n<=0){
        printf("Invalid input");
        return 0;
    }
        create(n);
    
    scanf("%d",&val);
    insert(val);
    display();
    return 0;
}