http://www.perlmonks.org?node_id=349497

$t=[[[e=>[[[[w=>[L=>"R"]],[[T=>[G=>"I"]],[[V=>[",","."]],[[H=>"J"],[K= +>"Y"]]]]] ,[h=>"P"]],"s"]],[[[[[p=>"v"],"\n"],"l"],"t"],[[[S=>[B=>"M"]],[[b=>"f" +],[m=>[F =>"O"]]]],"o"]]],[[[[n=>"d"],[[[[W=>[[q=>"x"],"Q"]],"g"],[C=>"k"]],[[u +=>[D=>"U" ]],"N"]]],[[a=>"i"],[[c=>[y=>[A=>[[z=>"'"],"E"]]]],"r"]]]," "]];sub d{ +($r,$o)=$ _;$z=ord(chop($r))-34;$r=~s/(.)(.)/sprintf"%013b",58-($2 ge']')+92*(or +d($1)-($1 ge']')-35)+ord($2)/eg;substr(($r=reverse$r),13-$z,$z,'');while(length$ +r){$c=$t; $c=$c->[chop$r]while+ref$c;$o.=$c}$o};for(<DATA>){s/\s//g;print d};__D +ATA__ .W&fKq+7Lv.}/~y_W+v99r{PspGYxc:WFH_sNH"4glv(rpJa92qx`|d|Fxth/[[x;#Ne1H +.H8TwjQEygBIEm(Sw]]6W"te-*X}kcy+sQ'i)@9b?eP%Y]8xjM6kOvhsex=mo~%,KW$ji +()IAC,}gmLB-=zKD_ny(,Y"It)qhCWY{uXuL@CeoqygBIyvg6PVv0(<{j#F4gv0'T:,lD +ViTNuN0puzyvg6PU"LmL;fi]s@)'sQ'i*@g]Qsx]JR[821xdq.[AAc&]3[+0/Jm'd?p:. +W{O>h5$hYCALsmV6W)&wEgAnXW?kQnDBtG[EH:giJ8EZJfQ=w-,KW$]MkjgB]T)Hl^Ecb +oLUSyqDF{vdNn9:5'TgJN^u+<E%V``@`|%|%|%|%|%|%|%|%|%|%{k+NO|)$v+b~wQ{t| +$|%lf{8|$|%qY{M|$NQu^:Sm-0l[HNQ|%|%|%|%|%|%|%|%|%|%01G~:5KpNHt~H+<+BG +V9dSCktf0oz$Ux^I9ymH0F12a2y+^sXfriY>#UrRvuRxLP^n|%|%|%|%|%|%|%|%|%|%o +GtpJM)jm>,}oc*>n`JA`aZO7H>`-nHrQU7QBUKpF1.ha%mGU-rVtr%5E+l{QdfCM$lr@J +zv9IVO0A{9Z$xiUz%5WW$tJBCEHl^Ee2gC/6G%yZ#]X%Dl^2Rn#H]$s<%(0+i2uZsQ'fx +V`dBc{o93"c)<f$1jg1G_>q/vDl_zKwFKYoP18?kAk*n;OyV3zt:$<EmfO=TdNmmF'JP) +GwDkcboFhb)tqSp:.W:Jt'+SHl^Ecbyc^3>@l"Rb.W&c[Ahl2QGH)'=F0y`9ycd37~KwT +AwMf;AT]a0E#nmML<zBv3{Jt'*/c^gAs;R`NhG7.rrpJ_b`HhN9Kxk*Pq<me$/'J`X2<1 +a<xX]l+9,}gmK3q?YDj)u+<E%nbxR0`Y.'P0NOUIi0tCT3=""3*

-- with thanks to D. Huffman

update: eol issues fixed