#include<iostream>
#include<array>
#include<string>
using namespace std;

void print_gene_table2(array < array<string,6>,22 >);  

int main()
{

// EXCEPTION: too many initializers for ‘std::array<std::array<std::basic_string<char>, 6ul>, 22ul>’
  
  array < array<string,6>,22 > gene_table1
  { 
    {"UUU","UUC"},                          // Phe
    {"UUA","UUG","CUU","CUC","CUA","CUG"},  // Leu
    {"UCU","UCC","UCA","UCG","AGU","AGC"},  // Ser
    {"UAU","UAC"},                          // Tyr
    {"UAA","UAG","UGA"},                    // STO
    {"UGU","UGC"},                          // Cys
    {"UGG"},                                // Trp
    {"CCU","CCC","CCA","CCG"},              // Pro
    {"CAU","CAC"},                          // His 
    {"CAA","CAG"},                          // Gln
    {"CGU","CGC","CGA","CGG"},              // Arg
    {"AUU","AUC","AUA"},                    // Ile
    {"AUG"},                                // STA or Met
    {"ACU","ACC","ACA","ACG"},              // Thr
    {"AAU","AAC"},                          // Asn
    {"AAA","AAG"},                          // Lys
    {"AGA","AGG"},                          // Arg
    {"GUU","GUC","GUA","GUG"},              // Val
    {"GCU","GCC","GCA","GCG"},              // Ala
    {"GAU","GAC"},                          // Asp
    {"GAA","GAG"},                          // Glu
    {"GGU","GGC","GGA","GGG"}               // Gly
  };
  
  print_gene_table2(gene_table1);

  return 0;
}

void print_gene_table2(array < array<string,6>,22 > gene_table1) 
{ 
  for(unsigned i = 0;gene_table1.size();i++)
    for(unsigned j = 0;j < gene_table1[i].size();j++)
    { 
      cout << gene_table1[i][j] << endl;
    }
}