Help for this page
use overload"!",sub{$_=${$_[0]}+1;bless\$_},'neg',sub{$_=${$_[0]}; print+(split//,' erahtcJklnopsu.')[$_];$_=0;bless\$_};$a=0;$_=bless\$a ... !! !! !! !! !- !! !-+-!!!! !- !! !! !! !! !! !! !- !!!! !! !! !! !!!!-! !!!!!! $_
sub japh {$_.=getc*JAPH;/!/||japh();tr- !$*./;=AHJP_abceghjpstu{-t eh .rPceakras reo nJluh-;print;exit}*JAPH=*DATA;seek*JAPH,0,0;japh;__D +ATA__
BEGIN{for(split//,'79ISjklmqruvwxz|'){my$a=chr( ord^25);*{uc()}=sub{print$a}}};&9(S,M L,J),K &| (Q X,M W,V),&|(&9(K),I);&9(U),&|(R Q,Z X),&7(K)