#include<bits/stdc++.h>
using namespace std;
typedef stack<int>S;
int main(void){
	int n,q;
	int x,y,z;
	int i;
	S st[1000];
	cin>>n>>q;
	for(i=0;i<q;i++){
		cin>>x>>y;
		if(x==0){
			cin>>z;
			st[y].push(z);
		}
		else if(x==1){
			if(!st[y].empty())	cout<<st[y].top()<<endl;
		}
		else{
			if(!st[y].empty())	st[y].pop();
		}
	}
	return 0;
}
