@ca=(sub{@kp=split(//,shift);$c=shift;$p2{' '}=' ';$C2{' '}=' ';foreach(@kp, 'a'..'z'){if(!exists $p2{$_}){$k=chr(ord('A')+(($a++)+$c)%26);$p2{$_}=$k; $C2{$k}=$_;}}},sub{$t=shift;$h=shift;foreach(split(//,$t)){$r=$r.($$h{$_});} return $r;});$ca[0]->('thequickbrownfoxjumpsoverthelazydogs',10);print $ca[1]->('ZOCK FWUKLMT BMTE LFQR',\%C2)."\n";