in reply to gunzip exception
Probably not related to your problem, but checking $@ is unreliable. Switch to
eval { $data = gunzip( $gz ); 1 } or { say "Can't unzip $file: $@"; exit 1 };
See Bug in eval in pre-5.14 for more details.
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
In Section
Seekers of Perl Wisdom