#include<stdio.h>
#include<stdlib.h>

 typedef struct node{
    int data ;
    struct node *next;
}Node;

Node *head=NULL,*tail=NULL,*temp=NULL;

int create(int val){
    Node *newNode = (Node*)malloc(sizeof(Node));
    newNode->data=val;
    newNode->next=NULL;
    
    if(head==NULL){
        head=newNode;
        tail=newNode;
    }
    else{
        tail->next=newNode;
        tail =newNode;
    }
}
void display(){
   Node *i;
   for(i=head;i!=NULL;i=i->next)
       printf("%d ",i->data);
    
}
void insertion(int n){
    int element,pos;
    scanf("%d",&element);
    scanf("%d",&pos);
    
    Node *newNode = (Node*)malloc(sizeof(Node));
    newNode->data=element;
    newNode->next=NULL;
    if(pos==1){
        newNode->next=head;
        head=newNode;
        return;
     }
     else if(n+1==pos){
         tail->next=newNode;
         tail=newNode;
     }
     else{
         for(int i=1 ; i<pos-1 ; i++){
             temp=temp->next;
         }
         newNode->next=temp->next;
         temp->next=newNode;
     }
}

void display(){
   Node *i;
   for(i=head;i!=NULL;i=i->next)
       printf("%d ",i->data);
    
}

int main(){
    int n,val;
    scanf("%d",&n);
    
    for(int i=1 ; i<=n ;i++){
        scanf("%d",&val);
        create(val);
        
    }
        insertion(n);
        display();
    
    return 0;
}