sub fy_shuf{my($l,$c,$r)=@_;map{$r=int(rand($_+1)); @$l[$_,$r]=@$l[$r,$_]}reverse 0..$#$l for 0..$c||0}; my @a=(1..52); fy_shuf(\@a,5); #### sub fy_shuf{my($l,$r)=@_;map{$r=int(rand(@$l-$_+1));@$l[-$_,$r]=@$l[$r,-$_]}0..$#$l};