my @values = sort { $b->[0] cmp $a->[0] || $a->[1] <=> $b->[1] } map { my $k = $_; map { [ $k, $_, $properties{$k}->{$_}->{value} ] } keys %{$properties{$k}}; } keys %properties;