$s=q;Just another Perl hacker,;;sub u{;lc pop}for my$i(0..24){push@s, sub{[(r()>.98)?(\&u,\&l)[&r+.5]->((split//,${substr($s,2,1,)})[$i]):( split//,$s)[$i],r()*1.3+$i-.65]}}sub l{uc pop}$|++;for(1..500){;@o=([ "\r"],sort{$a->[1]<=>$b->[-1]}map{;$_->()}@s);print$_->[0x00]for@{[@o ]};select$_->[2],$_->[3],$_->[4],r()*.2;}sub r{rand}sub s{$f->[0]=$s}