#include <stdbool.h>
#include <stdio.h>
#include<string.h>
typedef struct Queue * PtrQ;
struct Queue{
    int x[100000];
    int top;
    int butt;
};
PtrQ initQueue(void);
_Bool push(PtrQ Q, int x);
int pop(PtrQ Q);
int front(PtrQ Q);
int main(void) 
{
    int n, i, ret, t, ans;
    char op[5];
    PtrQ Q;
    _Bool B;
    Q = initQueue();
    scanf("%d",&n);
    for(i = 0; i < n; i++)
    {
        ret = scanf("%s %d",op, &t);
        if(ret == 1)
        {
            if(strcmp(op,"pop") == 0)
            {
                if(Q->top == Q->butt)
                printf("error\n");
                else
                {
                    ans = pop(Q);
                    printf("%d\n",ans);
                }
            }
            else 
            {
                if(Q->top == Q->butt)
                printf("error\n");
                else
                {
                    ans = front(Q);
                    printf("%d\n",ans);
                }
            }
        }
        else
        {
            B = push(Q,t);
        }
    }

}
PtrQ initQueue(void)
{
    PtrQ Q;
    Q = (PtrQ)malloc(sizeof(struct Queue));
    Q->butt = -1;
    Q->top = -1;
    return Q;

}
_Bool push(PtrQ Q, int x)
{
    if(Q->butt + 1 < 100000)
    {
        Q->x[++Q->butt] = x;
        return true;
    }
    else {
    return false;
    }
}
int pop(PtrQ Q)
{
    int ans;
    ans = (Q->x[Q->top+1]);
    Q->top++;
    return ans;
    
}
int front(PtrQ Q)
{
    return(Q->x[Q->top+1]);
}