import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
/**
ArrayDeque替代Stack,因为stack是线程安全的,性能相对较差,使用ArrayDeque
1.push(x),整数入栈,ArrayDeque.push
2.pop(),栈非空ArrayDeque.isEmpty(),删除栈顶元素ArrayDeque.pop,
3.query(),输出栈顶元素ArrayDeque.peek()
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Deque<Integer> stack = new ArrayDeque<>();
int n = in.nextInt();
in.nextLine();//手动消费
// 注意 hasNext 和 hasNextLine 的区别
while (n-->0) { // 注意 while 处理多个 case
String s = in.nextLine();
String[] arr = s.split(" ");
switch(arr[0]){
case "push":
stack.push(Integer.parseInt(arr[1]));
break;
case "size":
System.out.println(stack.size());
break;
case "query":
if(stack.isEmpty()){
System.out.println("Empty");
}else{
System.out.println(stack.peek());
}
break;
case "pop":
if(stack.isEmpty()){
System.out.println("Empty");
}else{
stack.pop();
}
break;
default:
break;
}
}
}
}