#include <bits/stdc++.h>
using namespace std;

int n,m,q,d=0,b[100005];
vector<int>a[100005];
bool visited[100005];
void bfs(int s){
	queue<int>qu;
	qu.push(s);
	visited[s]=true;
	while(!qu.empty()){
		int u=qu.front();
		qu.pop();
		for(int i=0;i<a[u].size();i++){
			if(!visited[a[u][i]]){
				qu.push(a[u][i]);
				d++;
				b[d]=a[u][i];
			}
		}
	}
}
int main() {
	cin>>n>>m>>q;
	for(int i=1;i<=m;i++){
		for(int j=1;j<=n;j++){
			int x;
			cin>>x;
			a[j].push_back(x);
			a[x].push_back(j);
		}
	}
	
	for(int i=1;i<=n;i++){
		if(!visited[i]){
			d=0;
			bfs(i);
			for(int j=1;j<=d;j++){
				cout<<b[j]<<" ";
			}
			cout<<"\n";
		}
	}
	return 0;
}