sub muri{ print"No\n"; exit; } $n=<>; @evv=map{ ($a,$b)=<>=~/\w+/g; push@$a,$_; push@$b,$_; $a+$b; }0..$n-1; @vn=map~~@$_,0..$n; @q=grep$vn[$_]==1,1..$n; while(@q){ $vi=pop@q; $vn[$vi]=-1; for$ei(grep!$ans[$_],@$vi){ $vj=$evv[$ei]-$vi; $d=--$vn[$vj]; if($d==0){ muri; } $ans[$ei]=$vi; if($d==1){ push@q,$vj; } } } for$vi(1..$n){ if($vn[$vi]>=0){ $vo=$vi; do{ $vn[$vi]=-1; for$ei(grep!$ans[$_],@$vi){ $ans[$ei]=$vi; $vi=$evv[$ei]-$vi; goto hoge; } muri; hoge:; }while($vi!=$vo); } } print $_,$/ for Yes,@ans;