#!/usr/bin/perl
use warnings;
use strict;
my %outer = (A=> {a1=>1, a2=>2, a3=>3},
B=> {b1=>4, b2=>5, b3=>6},
C=> {c1=>7,c2=>8, c3=>9});
foreach my $outer_key (keys %outer) {
print "$outer_key => \n";
foreach (keys %{$outer{$outer_key}} ) {
print"\t$_ => $outer{$outer_key}{$_} \n";
}
print "\n";
}