#include<stdio.h>
#include<string.h>
typedef struct node{
    int data;
    struct node *next;
}QNode;

typedef struct{
    QNode *front,*rear;
}Queue;

Queue* IntiLine();
int IfEmpty(Queue* x);
void In_Queue(Queue* x,char *str);
void Pop_Queue(Queue* x);
void Front_Queue(Queue* x);

int main(){
    int num;
    scanf("%d%*c",&num);
    char str[20];
    int front=0,rear=0;
    Queue *queue=IntiLine();
    while(scanf("%[^\n]%*c",str)!=EOF){

        if(strcmp(str,"pop")==0)
            Pop_Queue(queue);
        else if(strcmp("front",str)==0)
            Front_Queue(queue);

        else
            In_Queue(queue,str);
    }
    return 0;
}

Queue* IntiLine(){
    Queue *q=malloc(sizeof(Queue));
    QNode *p=malloc(sizeof(QNode));
    p->next=NULL;
    q->front=q->rear=p;
    return q;
}

int IfEmpty(Queue* x){
    return (x->front==x->rear);
}

void In_Queue(Queue* x,char *str){
    char str1[10];
    int integer;
    sscanf(str, "%s %d",str1,&integer);
    QNode *p=malloc(sizeof(QNode));
    p->data=integer;
    p->next=NULL;
    x->rear->next=p;
    x->rear=p;
}

void Pop_Queue(Queue* x){
    if(IfEmpty(x))
        printf("error\n");
    else{
        QNode *p=malloc(sizeof(QNode));
        p=x->front->next;
        x->front->next=p->next;
        printf("%d\n",p->data);
        free(p);
        if(x->front->next==NULL)
            x->rear=x->front;
    }
}

void Front_Queue(Queue* x){
    if(IfEmpty(x))
        printf("error\n");
    else
        printf("%d\n",x->front->next->data);
}