#include<stdio.h>
#include<string.h>
#define MAX 1000
int deque[MAX], front, rear,size,capacity;
void init(int cap){
    capacity=cap;
    front = 0;
    rear = -1;
    size=0;
}
int isEmpty(){
    return size == 0;
}
int isFull(){
    return size == capacity;
}
void insertFront(int x){
    if(isFull())
    return;
    if(isEmpty()){
        front = rear = 0;
    } else {
        front =(front - 1 + capacity) % capacity;
    }
    deque[front] = x;
    size++;
}
void insertLast(int x){
    if(isFull())return ;
    if(isEmpty()){
        front = rear=0;
    } else {
        rear=(rear + 1)%capacity;
    }
    deque[rear]=x;
    size++;
}
void deleteFront(){
    if(isEmpty())return ;
    printf("%d", deque[front]);
    front=(front + 1)% capacity;
    size--;
    if(size == 0){front=0;rear = -1;}
    printf("\n");
}
void deleteLast(){
    if(!isEmpty()) return;
    printf("%d", deque[rear]);
    rear=(rear - 1+capacity)%capacity;
    size--;
    if(size == 0){front=0;rear=-1;}
    printf("\n");
    }
    void getfront(){
        if(!isEmpty())
        printf("%d", deque[front]);
        printf("\n");
    }
        void getrear(){
            if(!isEmpty())
        printf("%d",deque[rear]);
        printf("\n");
    }
    int main(){
        int n,x;
        char op[20];
        scanf("%d", &n);
        init(n);
        while(scanf("%s", op)!=EOF){
            if(strcmp(op,"insertFront")==0){
                scanf("%d", &x);
                insertFront(x);
            }else if(strcmp(op,"insertLast")==0){
                scanf("%d", &x);
                insertLast;
            }else if(strcmp(op,"deleteFront")==0){
                deleteFront();
            }else if(strcmp(op,"deleteLast")==0){
                deleteLast();
            }else if(strcmp(op,"getFront")==0){
                getFront();
            }else if(strcmp(op, "getRear")==0){
                getRear();
            }else if(strcmp(op, "isEmpty")==0){
                printf("%s\n", isEmpty() ? "true" : "false");
            }else if(strcmp(op, "isFull")==0){
                printf("%s\n", isFull() ? "true" : "false");
            }
        }
        return 0;
    }