foreach $id (sort keys %quantum) { foreach $date ( sort {$a->{int(substr($quantum{$id},2,2))} <=> $b->{int(substr($quantum{$id},2,2))} || $a->{int(substr($quantum{$id},0,2))} <=> $b->{int(substr($quantum{$id},0,2))} } keys %{$quantum{$id}}) { } }