/*
#include <stdio.h>
#include <string.h>
char stack[1001]={};
int top=-1,flag=0;
void push(int n)
{
stack[++top]=n;
}
void pop()
{
if(top==-1) return ;
else if(flag==1){
printf("%d",stack[top--]);
}
else{
top--;
}
}
int main()
{
int n=0,t=0,topa,topb;
char a[101]={},b[101]={},c[101]={};
scanf("%s %s",a,b);
topa = strlen(a)-1;
topb = strlen(b)-1;
if(topa < topb || topa==topb && strcmp(a,b) < 0){
strcpy(c,a);
strcpy(a,b);
strcpy(b,c);
topa = strlen(a)-1;
topb = strlen(b)-1;
printf("-");
}
else if(topa==topb && strcmp(a,b) == 0){
printf("0");
return 0;
}
for( ; ; ){
int va=0,vb=0;
if(topa > -1){
va = a[topa--]-'0';
}
if(topb > -1){
vb = b[topb--]-'0';
}
n = va-t-vb;
t=0;
if(n<0){
t=1;
n+=10;
}
if(topa==-1 && topb==-1){
break ;
}
push(n);
}
if(n!=0){
push(n);
}
while(top!=-1){
if(stack[top]!=0) flag=1;
pop();
}
return 0;
}
*/
#include <stdio.h>
#include <string.h>
char stack[201]={};
int front=-1,back=-1;
int main()
{
int n,i,x;
char a[201]={};
scanf("%d",&n);
for(i=0; i<n; i++){
scanf("%s",a);
if(a[1]=='u'){
scanf("%d )\n",&x);
stack[++back]=x;
}
else if(a[0]=='f'){
if(front!=-1){
printf("%d\n",stack[front+1]);
}
else printf("-1\n");
}
else if(a[0]=='b'){
if(back!=-1){
printf("%d\n",stack[back]);
}
else printf("-1\n");
}
else if(a[0]=='p'){
front++;
}
else if(a[0]=='s'){
printf("%d\n",back+1);
}
else{
if(front==back) printf("true\n");
else printf("false\n");
}
}
return 0;
}