#include <stdio.h>
#include<stdlib.h>
int cmp1(const void* e1,const void* e2)
{
return *((int*)e1)-*(int*)e2;
}
int cmp2(const void* e1,const void* e2)
{
return *((int*)e2)-*(int*)e1;
}
int main()
{
int a[7010]={0};
int n=0;
int input=0;
int len=0;
scanf("%d",&n);
while(n--)
{
scanf("%d",&input);
switch(input)
{
case 1:
{
int x=0;
scanf("%d",&x);
a[len]=x;
len++;
break;
}
case 2:
len--;
break;
case 3:
{
int i=0;
scanf("%d",&i);
printf("%d\n",a[i]);
break;
}
case 4:
{
int x=0;
int y=0;
scanf("%d %d",&x,&y);
for(int j=0;j<=len-x-2;j++)
{
a[len-j]=a[len-j-1];
}
a[x+1]=y;
len++;
break;
}
case 5:
qsort(a,len,4,cmp1);
break;
case 6:
qsort(a,len,4,cmp2);
break;
case 7:
printf("%d\n",len);
break;
case 8:
for(int k=0;k<len;k++)
{
printf("%d ",a[k]);
}
printf("\n");
break;
}
}
}