#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void spush(int n);
void spop(void);
void stop(void);
void ssize(void);
void sempty(void);
int top = -1;
int stack[201];
int main() {
int n, t;
char** s = NULL;
scanf("%d", &n);
s = (char**)malloc(n * sizeof(char*));
for (int i = 0; i < n; i++) {
s[i] = (char*)malloc(sizeof(100));
}
for (int i = 0; i < n; i++) {
scanf("%s", s[i]);
if (s[i][0] == 'p') {
if (s[i][1] == 'u') {
t = s[i][6];
spush(t);
}
else if (s[i][1] == 'o') {
spop();
}
}
else if (s[i][0] == 't') {
stop();
}
else if (s[i][0] == 's') {
ssize();
}
else if (s[i][0] == 'e') {
sempty();
}
}
}
void spush(int n) {
top++;
stack[top] = n;
}
void stop(void) {
if (top == -1) {
printf("-1\n");
}
printf("%d\n", stack[top]);
}
void spop(void) {
stack[top] = 0;
top--;
}
void ssize(void) {
printf("%d\n", top + 1);
}
void sempty(void) {
if (top == -1) {
printf("true\n");
}
else {
printf("false\n");
}
}