Debugging The typical usage bug causes a time-out error because you've made incorrect assumptions about what the remote side actually sends. The easiest way to reconcile what the remote side sends with your expecta- tions is to use "input_log()" or "dump_log()". "dump_log()" allows you to see the data being sent from the remote side before any translation is done, while "input_log()" shows you the results after translation. The translation includes converting end of line characters, removing and responding to TELNET protocol commands in the data stream. #### $,=42;for(34,0,-3,9,-11,11,-17,7,-5){$*.=pack'c'=>$,+=$_}for(reverse split//=>$* ){$%++?$ %%2?push@C,$_,$":push@c,$_,$":(push@C,$_,$")&&push@c,$"}$C[$#C]=$/;($#C >$#c)?($ c=\@C)&&($ C=\@c):($ c=\@c)&&($C=\@C);$%=$|;for(@$c){print$_^$$C[$%++]}