in reply to Data::Dumper and Hash of Hashes

When I've had to interpret these results, I've found that I did something like this:

my %hash = {a => 1, b => 2, c => 3}; # curlies
instead of this:
my %hash = (a => 1, b => 2, c => 3); # parens
The first assignment creates a hash with a single key which is a stringified hashref, with no value. The second assignment creates a hash with three keys and three values as expected.

See if your code may be doing this as well.

Alan