#include <bits/stdc++.h>
using namespace std;
using ll = long long;
deque<ll> d;
int main(){
    int q;
    cin >> q;
    for(ll i = 0; i< q;i++){
        ll x;
        cin >> x;
        if(x == 1){
            ll a;
            cin >> a;
            d.push_front(a);
        }else if(x == 2){
            ll a;
            cin >> a;
            d.push_back(a);
        }else if(x == 3){
            if(!d.empty()){
                cout << d[0] << endl;
                d.pop_front();
            }
        }else if(x == 4){
            if(!d.empty()){
                cout << d[d.size()-1] << endl;
                d.pop_back();
            }
        }
    }
    return 0;
}