or download this
use IO::Socket;($t,$s,$u,$p,$x)=@ARGV;if($t eq"server"){$p&&($p{$p}++,
+map{$_ ne
$u&&$p{$_}++}f($p,2,$u));while($c=new IO::Socket::INET(LocalAddr=>$u,R
+euse=>1,
...
$m)=@_;$k=new IO::Socket::INET($h)||return;print$k "$s\n$q\n$m",define
+d$m?"\n":
'';$q>1?chomp(@r=<$k>):do{@r=();while(<$k>){chomp;($f,$e)=split'/';pus
+h@r,[$f,$e
]if!$q|!-e$f;next if!$q|-e$f;read$k,$b,$e;open F,">$f";print F$b;close
+}};@r}