my %h2; for my $level1 (keys %HASH) { for my $level2 (keys %{ $HASH{$level1} }) { $h2{$level2}{$level1} = $HASH{$level1}{$level2}; } } %HASH = %h2;