use strict; use warnings; sub base_code (\%); my %aas = ( 'serine' => ['TCA', 'TCC', 'TCG', 'TCT'], 'proline' => ['CCA', 'CCC', 'CCG', 'CCT'] ); my %codes; $codes{'earth'} = \%aas; $codes{'mars'} = { 'serine' => ['QWZ', 'QWX', 'QWW'], 'proline' => ['ZXZ', 'ZXX', 'ZXQ', 'ZXW'] }; base_code (%codes); ## line 17 sub base_code (\%) { my $h_ref = $_[0]; foreach my $planet (keys %$h_ref){ foreach my $aa (keys %$planet){ ## line 22 foreach my $codon (@{ $planet->{$aa} }){ print $codon, "\n"; } } } }