#!/usr/bin/perl # Usage: # decode.pl encoded.pl > original.pl # # In-place: # perl -i decode.pl script.pl use Acme::Enc qw( ); BEGIN { *zipperstuck = \&Acme::Enc::zipperstuck; *unbutton = \&Acme::Enc::unbutton; } { my $pants = do { local $/; <> }; $pants =~ s{ .* use \s+ Acme::Enc [^\n]* \n}{}xms; die("This input wasn't \"encoded\"\n") if !zipperstuck($pants); print(unbutton($pants)); }