#include using namespace std; using ll = long long int; using ld = long double; int n, m; vector> pers; vector> acti; int main() { cin >> n >> m; pers = vector>(n); acti = vector>(m+1); for(int i = 0; i < n; i++){ int k; cin >> k; for(int j = 0; j < k; j++){ int in; cin >> in; pers[i].insert(in); acti[in].insert(i); } } for(int a = 1; a <= m; a++){ vector> lis; if(acti.size()<=1) continue; for(int p : acti[a]){ lis.push_back({pers[p].size(), p}); } sort(lis.begin(), lis.end()); map trouve; for(pair i : lis){ int nbacti = trouve.size(); int detect = 0; for(int b : pers[i.second]){ // activité aimée if(trouve.contains(b)) detect++; else trouve[b] = i.second; } if(detect != nbacti){ cout << "YES\n"; for(pair j : trouve){ if(!pers[i.second].count(j.first)){ cout << i.second+1 << ' ' << j.second+1 << '\n'; return 0; } } } } } cout << "NO\n"; return 0; }