#include<bits/stdc++.h>
using namespace std;
vector<int> ke[1001];
int main(){
int n; // n là d?nh
cin >> n ;
for(int i = 1 ; i <= n ; i++){
string s;
getline(cin,s);
stringstream ss(s);
string token;
while(ss >> token){
ke[i].push_back(stoi(token));
}
}
for(int i = 1 ; i <= n ; i++){
sort(ke[i].begin(),ke[i].end());
}
int a[n+1][n+1];
for(int i = 1 ; i<= n ; i++){
for(int j = 1 ; j <= ke[i].size() ; j++){
a[i][j] = 1 ;
}
}
for(int i = 1 ; i <= n ; i++){
for(int j = 1 ; j <= n ; j++){
if(a[i][j] == 1){
a[i][j] = 0 ;
a[j][i] = 0;
cout << i << " " << j << endl;
}
}
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdmVjdG9yPGludD4ga2VbMTAwMV07CmludCBtYWluKCl7CglpbnQgbjsgIC8vIG4gbMOgIGQ/bmgKCWNpbiA+PiBuIDsKCWZvcihpbnQgaSA9IDEgOyBpIDw9IG4gOyBpKyspewoJCXN0cmluZyBzOyAKCQlnZXRsaW5lKGNpbixzKTsKCQlzdHJpbmdzdHJlYW0gc3Mocyk7CgkJc3RyaW5nIHRva2VuOwoJCXdoaWxlKHNzID4+IHRva2VuKXsKCQkJa2VbaV0ucHVzaF9iYWNrKHN0b2kodG9rZW4pKTsKCQl9Cgl9Cglmb3IoaW50IGkgPSAxIDsgaSA8PSBuIDsgaSsrKXsKCQlzb3J0KGtlW2ldLmJlZ2luKCksa2VbaV0uZW5kKCkpOwoJfQoJaW50IGFbbisxXVtuKzFdOwoJZm9yKGludCBpID0gMSA7IGk8PSBuIDsgaSsrKXsKCQlmb3IoaW50IGogPSAxIDsgaiA8PSBrZVtpXS5zaXplKCkgOyBqKyspewoJCQlhW2ldW2pdID0gMSA7CgkJfQoJfQoJZm9yKGludCBpID0gMSA7IGkgPD0gbiA7IGkrKyl7CgkJZm9yKGludCBqID0gMSA7IGogPD0gbiA7IGorKyl7CgkJCWlmKGFbaV1bal0gPT0gMSl7CgkJCQlhW2ldW2pdID0gMCA7CgkJCQlhW2pdW2ldID0gMDsKCQkJCWNvdXQgPDwgaSA8PCAiICIgPDwgaiA8PCBlbmRsOwoJCX0KCX0KfQp9