#include <iostream>
// vector 所需库
#include <vector>
#include <algorithm>
// list 所需库
#include <list>
#include <iterator>
// 随机调用 所需库
#include <cstdlib>
#include <ctime>
using namespace std;

// vector 输出序列
bool printSeq(const vector<int>& seq){
    if(seq.empty()) return false;
    cout<<seq.front();
    for(int i=1;i<seq.size();++i) cout<<' '<<seq[i];
    cout<<'\n';
    return true;
}

// vector 实现序列操作
bool solveByVec(){
    // cout<<"Using Vec"<<'\n';
    vector<int> seq;
    int q;cin>>q;
    while(q--){
        int op;cin>>op;
        switch(op){
            case 1:{int x;cin>>x;seq.push_back(x);break;}
            case 2:{seq.pop_back();break;}
            case 3:{int i;cin>>i;cout<<seq[i]<<'\n';break;}
            case 4:{int i,x;cin>>i>>x;seq.insert(seq.begin()+i+1,x);break;}
            case 5:{sort(seq.begin(),seq.end(),less<>());break;}
            case 6:{sort(seq.begin(),seq.end(),greater<>());break;}
            case 7:{cout<<seq.size()<<'\n';break;}
            case 8:{printSeq(seq);break;}
            default:{};
        }
    }
    return true;
}

// list 输出序列
bool printSeq(const list<int>& seq){
    if(seq.empty()) return false;
    auto it=seq.begin();
    cout<<*it;
    for(++it;it!=seq.end();++it) cout<<' '<<*it;
    cout<<'\n';
    return true;
}

// list 实现序列操作
bool solveByList(){
    // cout<<"Using Lst"<<'\n';
    list<int> seq;
    int q;cin>>q;
    while(q--){
        int op;cin>>op;
        switch(op){
            case 1:{int x;cin>>x;seq.push_back(x);break;}
            case 2:{seq.pop_back();break;}
            case 3:{int i;cin>>i;auto it=seq.begin();advance(it,i);
            cout<<*it<<'\n';break;}
            case 4:{int i,x;cin>>i>>x;auto it=seq.begin();advance(it,i);
            seq.insert(next(it),x);break;}
            case 5:{seq.sort(less<>());break;}
            case 6:{seq.sort(greater<>());break;}
            case 7:{cout<<seq.size()<<'\n';break;}
            case 8:{printSeq(seq);break;}
            default:{};
        }
    }
    return true;
}


int main(){
    ios::sync_with_stdio(false);cin.tie(nullptr);

    srand(time(nullptr));

    if(rand()&1) solveByVec();
    else solveByList();

    return 0;
}