sub hoa2aoh { my $hoa = shift; my @keys = keys %$hoa; my @patterns = map { local $" = ','; "{@$_}"; } values %$hoa; [ map { my %hash; @hash{@keys} = split ','; # char changed from "\0" \%hash; } glob join ',', @patterns ]; }