#include <stdio.h>
#include <stdlib.h>
typedef struct Node
{
int data;
struct Node *next;
}Node;
int main()
{
int n;
scanf("%d",&n);
Node *p;
p=(Node*)malloc(sizeof(Node));
Node *list;
list=p;
for(int i=0;i<n;i++)
{
Node *a;
a=(Node*)malloc(sizeof(Node));
scanf("%d",&a->data);
a->next = NULL;
p->next=a;
p=p->next;
}
Node *s;
s=(Node*)malloc(sizeof(Node));
scanf("%d",&s->data);
p=list->next;
while(p->next)
{
if(list->next==p&&p->data > s->data)
{
list->next = s;
s->next=p;
break;
}
else if(p->data < s->data &&p->next->data >s->data )
{
s->next=p->next;
p->next=s;
break;
}
else
{
p=p->next;
}
}
if(p->next==NULL)
{
p->next=s;
s->next=NULL;
}
p=list->next;
while(p)
{
printf("%d ",p->data);
p=p->next;
}
return 0;
}