#include<bits/stdc++.h>
using namespace std;
const int N=10000005;
int n,head[N],next[N],to[N],num,ru[N];
int q[N],h=1,t=1;
void add(int x,int y){
next[++num]=head[x];
head[x]=num;
to[num]=y;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
int u,m;
cin>>u>>m;
for(int i=1;i<=m;i++){
int v;
cin>>v;
add(u,v);
ru[v]++;
}
}
for(int i=1;i<=n;i++){
if(!ru[i]){
q[t++]=i;
}
}
while(h<t){
int top=q[h++];
n--;
for(int i=head[top];i;i=next[i]){
if(--ru[to[i]]==0&&to[i]<=n){
q[t++]=to[i];
}
}
}
if(!n)cout<<"YES";
else {
cout<<n;
}
return 0;
}