#include<iostream>
using namespace std;
void rd(int a[],int n,int b){
n++;
a[n-1]=b;
}
bool kdl(int a[],int n){
if(n==0){
return true;
}
return false;
}
void cd(int a[],int n){
if(kdl(a,n)){
cout<<"ERR_CANNOT_POP"<<endl;
return ;
}
for(int i=0;i<n-1;i++){
a[i]=a[i+1];
}
n--;
}
void ds(int a[],int n){
if(kdl(a,n)){
cout<<"ERR_CANNOT_QUERY"<<endl;
return ;
}
cout<<a[0]<<endl;
}
int chd(int a[],int n){
return n;
}
int arr[1000000],n0,x,y,s=0;
int main(){
cin>>n0;
for(int i=0;i<n0;i++){
cin>>x;
if(x==1){
cin>>y;
rd(arr,s,y);
}
else if(x==2){
cd(arr,s);
}
else if(x==3){
ds(arr,s);
}
else{
cout<<chd(arr,s)<<endl;
}
}
return 0;
}