// editor2
#include <stdio.h>
#include <stdlib.h>
struct node
{
    int data;
    struct node* next;
}*head,*tail,*temp;
int main()
{
    int n,i;
    scanf("%d",&n);
    if(n<0||n>1000)
    {
        printf("Invalid input");
        return 0;
    }
    for(i=0;i<n;i++)
    {
        struct node* newnode=(struct node*)malloc(sizeof(struct node));
       if( scanf("%d",&newnode->data)!=1)
       {
           printf("Invalid input");
           return 0;
       }
        if(head==NULL)
        {
            head=newnode;
            tail=newnode;
            head->next=NULL;
        }else
        {
            tail->next=newnode;
            tail=newnode;
            newnode->next=NULL;
        }
    }

    int x;
    scanf("%d",&x);
    if(n==0)
    {
    printf("%d",x);
    return 0;
    }
    temp=head;
    for(i=0;i<(n/2)-1;i++)
        temp=temp->next;
     struct node* newnode=(struct node*)malloc(sizeof(struct node));
     struct node* y=temp;
     newnode->next=y->next;
     temp->next=newnode;
     newnode->data=x;
     for(i=0;i<n+1;i++)
     {
         printf("%d ",head->data);
         head=head->next;
     }
}