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);