#include <bits/stdc++.h>
using namespace std;
struct four{
vector<int> a;
};
int main()
{
// ifstream f("t.txt");
// if(f) cin.rdbuf(f.rdbuf());
// else cout<<"asd";
ios::sync_with_stdio(false);
cin.tie(0);
int m,n,q; cin>>m>>n>>q;
vector<vector<int>> sit (m,vector<int>(n));
for(int i=0;i<m;i++){
for(int j=0;j<n;j++) cin>>sit[i][j];
}
unordered_map<int,vector<int>> previous;
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
if(i>=1) previous[sit[i][j]].push_back(sit[i-1][j]);
else previous[sit[i][j]].push_back(sit[m-1][j]);
if(i<m-1) previous[sit[i][j]].push_back(sit[i+1][j]);
else previous[sit[i][j]].push_back(sit[0][j]);
if(j>=1) previous[sit[i][j]].push_back(sit[i][j-1]);
else previous[sit[i][j]].push_back(sit[i][n-1]);
if(j<n-1) previous[sit[i][j]].push_back(sit[i][j+1]);
else previous[sit[i][j]].push_back(sit[i][0]);
}
}
for(int i=0;i<q;i++){
int getnum; cin>>getnum;
sort(previous[getnum].begin(),previous[getnum].end());
for(int ii:previous[getnum]) cout<<ii<<" ";
cout<<endl;
}
////////////////////////////////////////////////////
//底下上註解的是60% 後面會TLE
// for(int i=0;i<q;i++){
// int getnum; cin>>getnum;
// vector<int> out;
// bool flag=false;
// //cout<<"j";
// for(int j=0;j<m;j++){
// for(int k=0;k<n;k++){
// if(sit[j][k]==getnum){
// if(j>=1) out.push_back(sit[j-1][k]);
// else out.push_back(sit[m-1][k]);
// if(j<m-1) out.push_back(sit[j+1][k]);
// else out.push_back(sit[0][k]);
// if(k>=1) out.push_back(sit[j][k-1]);
// else out.push_back(sit[j][n-1]);
// if(k<n-1) out.push_back(sit[j][k+1]);
// else out.push_back(sit[j][0]);
// flag=true; break;
// }
// if (flag==true) break;
// }
// }
// sort(out.begin(),out.end());
// for(int ii:out) cout<<ii<<" ";
// cout<<endl;
// }
}