#include <iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<stack>
using namespace std;
stack <long long> a;
int main()
{
long long n,m=-1,i,j,k,l;
cin>>n;
for (i=1;i<=n;i++)
{
cin>>m;
if (m==0)
{
cin>>k;
l=a.top();
a.push(max(k,l));
}
else if (m==1)
{
if (a.empty()==0)
{
a.pop();
}
}
else
{
cout<<a.top()<<endl;
}
}
return 0;
}