The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/local/bin/perl

# Make a world-writeable directory for saving state.
$ww = 'WORLD_WRITABLE';
unless (-w $ww) {
    $u = umask 0;
    mkdir $ww, 0777;
    umask $u;
}

# Decode the sample image.
for $uu (<*.uu>) {
    unless (open UU, "<$uu") { warn "Can't open $uu: $!\n"; next }
    while (<UU>) {
        chomp;
	if (/^begin\s+\d+\s+(.+)$/) {
	    $bin = $1;
	    last;
	}
    }
    unless (open BIN, "> $bin") { warn "Can't create $bin: $!\n"; next }
    binmode BIN;
    while (<UU>) {
	chomp;
	last if /^end/;
	print BIN unpack "u", $_;
    }
    close BIN;
    close UU;
}

# Create symlinks from *.txt to *.cgi for documentation purposes.
foreach (<*.cgi>) {
    ($target = $_) =~ s/cgi$/txt/i;
    symlink $_, $target unless -e $target;
}