#include <iostream>
#include <cstdio>
#include <stack>
using namespace std;
int main() {
int num;
while (scanf("%d", &num) != EOF) {
stack<int> testStack; //存放测试数据
for (int i = 0; i < num; i++) {
char temp;
scanf("%c", &temp);
if (temp == '\n') {
scanf("%c", &temp); //过滤收到回车情况
}
if ('P' == temp) { //为P时入栈
int integer;
scanf("%d", &integer);
testStack.push(integer);
} else if ('O' == temp) { //为O时,栈不空则出栈
if (!testStack.empty()) {
testStack.pop();
}
} else if ('A' == temp) { //为A时,查询当前值
if (!testStack.empty()) {
printf("%d\n", testStack.top());
} else {
printf("E\n");
}
}
}
}
}
// 64 位输出请用 printf("%lld")