sub get_all_seqs{ my $protein = shift; #print "protein = $protein\n"; my @all_seqs; my %Deg_codons = get_degenerate(); my %SEQ = (); my @aas = split(//, $protein); my $aa = $aas[0]; my @codons = @{$Deg_codons{$aa}}; foreach my $codon(@codons){ $SEQ{$codon}=1; } for(my $i=1; $i<@aas; $i++){ my $aa = $aas[$i]; @codons = @{$Deg_codons{$aa}}; foreach my $seq(keys %SEQ){ foreach my $codon(@codons){ $SEQ{$seq.$codon}=1; } delete $SEQ{$seq}; } } @all_seqs = sort keys %SEQ; return @all_seqs; }