#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;
        }
    }

}