open 0 or print "Can't rebleach '$0'\n" and exit;
####
(my $shirt = join "", <0>) =~ s/.*^\s*use\s+Acme::Bleach\s*;\n//sm;
##
##
local $SIG{__WARN__} = \&dirty;
##
##
do { eval brighten $shirt; exit }
unless dirty $shirt && not dress $shirt;
##
##
sub brighten {
local $_ = pop;
s/^$tie|[^ \t]//g;
tr/ \t/01/;
pack "b*", $_
}
##
##
open 0, ">$0" or print "Cannot bleach '$0'\n" and exit;
##
##
print {0} "use Acme::Bleach;\n", whiten $shirt and exit;
##
##
sub whiten {
local $_ = unpack "b*", pop;
tr/01/ \t/;
s/(.{9})/$1\n/g;
$tie.$_
}