#include <stdio.h>
#define MAXSIZE 100
#define OK 1
#define OVERFLOW -1
#define ERROR -2
typedef int ElemType;
typedef int Status;

typedef struct {
    ElemType *elem;
    int length;
}SqList;
Status InitList(SqList *L){
    ElemType a[MAXSIZE];
    L->elem=a;
    if(!L->elem) exit(OVERFLOW);
    L->length=0;
    return OK;
}
Status ListInsert(SqList *L,int i,ElemType e){
    if(i<1||i>L->length+1)return ERROR;
    if(L->length==MAXSIZE)return ERROR;
    for(int j=L->length-1;j>=i-1;j--){
        L->elem[j+1]=L->elem[j];
    }
    L->elem[i-1]=e;
    L->length++;
    return OK;
}
Status GetElem(SqList *L,int i,ElemType *e){
    if(i<1||i>L->length)return ERROR;
    *e=L->elem[i-1];
    return OK;
}
int main() {
    int n;
    scanf("%d",&n);
    int a[n];
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
    }
    SqList L;
    ElemType e;
    InitList(&L);
    for(int i=0;i<n;i++){
        ListInsert(&L,i+1,a[i]);
    }
    for(int i=0;i<n;i++){
        GetElem(&L,i+1,&e);
        printf("%d ",e);
    }
    return 0;
}