graph g; int@n,s[n],a[1d5],b[],e=0; rep(i,n){ int@m; rep(m){ int@c--; a[e]=i; b[e]=c; ++e; } } g.setDirectEdge(n,e,a,b); int z=g.scc(s)-1; if(s[0]==0){ int v[z]{}; rep(j,e){ if(s[a[j]]==s[b[j]]-1){ if(!v[s[a[j]]]){ v[s[a[j]]]=1; --z; } } } } wt(z?"No":"Yes",z);