use Data::Dumper; my $bs = bSerialize->new(); # All in One: Hash, Array, Hash of Hashes (EAV) my $bin = $bs->av2bin({ addr => $bs->av2bin( { name => 'foo', vname => 'bar', city => 'NY', nix => '', garnix => undef } ), nums => $bs->array2bin( [undef, 0, 1, 2, 3, 9] ), eav => $bs->eav2bin({ env => \%ENV, sig => \%SIG }) }); print Dumper $bin, $bs->bin2av( \$bs->bin2av(\$bin)->{addr} ), $bs->bin2array( \$bs->bin2av(\$bin)->{nums} ), $bs->bin2eav( \$bs->bin2av(\$bin)->{eav} );