#3#5WA,其中#3居然是too short。求助各位大佬。
#include<bits/stdc++.h>
using namespace std;
inline void read(long long &x){
x=0;
int y=1;
char a;
a=getchar();
while(a<'0'||a>'9'){
if(a=='-')y=-1;
a=getchar();
}
while(a>='0'&&a<='9'){
x=x*10+a-'0';
a=getchar();
}
x*=y;
}
string ff[2008];
long long ffz[2008];
long long fz[2008];
int fd,fc;
int ffez;
bool ffee;
long long n;
int main(){
++ffez;
for(int i=1;;++i){
cin>>ff[i];
if(ff[i]=="END")break;
if(!ffee){
++fc;
if(ff[i]=="NUM"){
read(ffz[i]);
++ffez;
}
if(ff[i]=="POP")--ffez;
if(ff[i]=="DUP"&&ffez<=0)ffee=true;
if(ff[i]=="DUP")++ffez;
if(ff[i]=="ADD"&&ffez<=1)ffee=true;
if(ff[i]=="SUB"&&ffez<=1)ffee=true;
if(ff[i]=="MUL"&&ffez<=1)ffee=true;
if(ff[i]=="DIV"&&ffez<=1)ffee=true;
if(ff[i]=="MOD"&&ffez<=1)ffee=true;
if(ff[i]=="INV"&&ffez<1)ffee=true;
if(ff[i]=="ADD")--ffez;
if(ff[i]=="SUB")--ffez;
if(ff[i]=="MUL")--ffez;
if(ff[i]=="DIV")--ffez;
if(ff[i]=="MOD")--ffez;
if(ff[i]=="SWP"&&ffez<=1)ffee=true;
if(ffez<0)ffee=true;
}
}
read(n);
if(ffez!=1||ffee){
for(long long i=1;i<=n;++i){
cout<<"ERROR"<<endl;
}
return 0;
}
for(long long i=1;i<=n;++i){
fd=0;
long long a;
read(a);
++fd;
fz[fd]=a;
if(abs(a)>1000000000){
cout<<"ERROR"<<endl;
continue;
}
bool flag=true;
for(int j=1;j<=fc;++j){
if(ff[j]=="NUM")fz[++fd]=ffz[j];
if(ff[j]=="POP")--fd;
if(ff[j]=="INV")fz[fd]=-fz[fd];
if(ff[j]=="DUP")fz[++fd]=fz[fd-1];
if(ff[j]=="SWP")swap(fz[fd],fz[fd-1]);
if(ff[j]=="ADD")fz[--fd]+=fz[fd+1];
if(ff[j]=="SUB")fz[--fd]-=fz[fd+1];
if(ff[j]=="MUL")fz[--fd]*=fz[fd+1];
if(ff[j]=="DIV"){
if(fz[fd]==0){
cout<<"ERROR"<<endl;
flag=false;
break;
}
fz[--fd]/=fz[fd+1];
}
if(ff[j]=="MOD"){
if(fz[fd]==0){
cout<<"ERROR"<<endl;
flag=false;
break;
}
fz[--fd]%=fz[fd+1];
}
if(abs(fz[fd])>1000000000){
cout<<"ERROR"<<endl;
flag=false;
break;
}
}
if(flag)cout<<fz[fd]<<endl;
}
return 0;
}