use Carp qw(confess); use Cwd qw(abs_path); use File::Basename qw(fileparse); use Data::Dumper qw(); use Digest::SHA1 qw();