//Peter Steele Intermediate 5 McLean High School

      import java.util.*;

   public class ACSL4PeterSteele {

      public static void main(String[] args) {

         Scanner input = new Scanner(System.in);

         String Winninghand = input.nextLine();

         String Losinghand[] = new String[5];

         for(int a = 0; a < 5; a++){

            Losinghand[a] = input.nextLine();        

         }

        

         String[][] Losinghandarray = new String[5][20];

         String[][] Winninghandarray = new String[5][20];

         ArrayList<String> possibilities1 = new ArrayList<String>();

         ArrayList<String> possibilities2 = new ArrayList<String>();

         ArrayList<String> possibilities3 = new ArrayList<String>();

         ArrayList<String> possibilities4 = new ArrayList<String>();

         ArrayList<String> possibilities5 = new ArrayList<String>();

         int count1 = 7;

         int count2 = 7;

         int count3 = 7;

         int count4 = 7;

         int count5 = 7;

         for(int a = 0; a < 5; a++){

            for(int b = 0; b < 7; b++){

           

               Winninghandarray[a][b] = Winninghand.substring(4*b + 4,4*b+6);

           

            }}

         for(int a = 0; a < 5; a++){

            for(int b = 0; b < 7; b++){

               Losinghandarray[a][b] = Losinghand[a].substring(4*b + 4,4*b+6);

            }}

          

         possibilities1 = evaluate(Losinghandarray[0]);

         possibilities2 = evaluate(Losinghandarray[1]);

         possibilities3 = evaluate(Losinghandarray[2]);

         possibilities4 = evaluate(Losinghandarray[3]);

         possibilities5 = evaluate(Losinghandarray[4]);

       

         for(int b = 0; b < 10; b++){

            for(int a = 0; a < possibilities1.size(); a++){

               if(checkforrun(possibilities1.get(a), Winninghandarray[0])){

                  Winninghandarray[0][count1] = Losinghandarray[0][indexOf(possibilities1.get(a).substring(6,8), Losinghandarray[0])];

                  Losinghandarray[0][indexOf(possibilities1.get(a).substring(6,8), Losinghandarray[0])] = null;

                  possibilities1.set(a, "       ");

                  count1 +=1;

               }}

            for(int a = 0; a < possibilities2.size(); a++){

               if(checkforrun(possibilities2.get(a), Winninghandarray[1])){

                  Winninghandarray[1][count2] = Losinghandarray[1][indexOf(possibilities2.get(a).substring(6,8), Losinghandarray[1])];

                  Losinghandarray[1][indexOf(possibilities2.get(a).substring(6,8), Losinghandarray[1])] = null;

                  possibilities2.set(a, "       ");

                  count2 +=1;

               }}

            for(int a = 0; a < possibilities3.size(); a++){

               if(checkforrun(possibilities3.get(a), Winninghandarray[2])){

                  Winninghandarray[2][count3] = Losinghandarray[2][indexOf(possibilities3.get(a).substring(6,8), Losinghandarray[2])];

                  Losinghandarray[2][indexOf(possibilities3.get(a).substring(6,8), Losinghandarray[2])] = null;

                  possibilities3.set(a, "       ");

                  count3 +=1;

               }}

            for(int a = 0; a < possibilities4.size(); a++){

               if(checkforrun(possibilities4.get(a), Winninghandarray[3])){

                  Winninghandarray[3][count4] = Losinghandarray[3][indexOf(possibilities4.get(a).substring(6,8), Losinghandarray[3])];

                  Losinghandarray[3][indexOf(possibilities4.get(a).substring(6,8), Losinghandarray[3])] = null;

                  possibilities4.set(a, "       ");

                  count4 +=1;

               }}

            for(int a = 0; a < possibilities5.size(); a++){

               if(checkforrun(possibilities5.get(a), Winninghandarray[4])){

                  Winninghandarray[4][count5] = Losinghandarray[4][indexOf(possibilities5.get(a).substring(6,8), Losinghandarray[4])];

                  Losinghandarray[4][indexOf(possibilities5.get(a).substring(6,8), Losinghandarray[4])] = null;

                  possibilities5.set(a, "       ");

                  count5 +=1;

               }

            }

         }

         System.out.println("1. "+addupscores(Losinghandarray[0]));

         System.out.println("2. "+addupscores(Losinghandarray[1]));

         System.out.println("3. "+addupscores(Losinghandarray[2]));

         System.out.println("4. "+addupscores(Losinghandarray[3]));

         System.out.println("5. "+addupscores(Losinghandarray[4]));

      }

            public static int indexOf(String a, String[] c){

            int count = 0;

            for(String b:c){

            if (a.equals(b))return count;

            count++;

            }          

            return -1;

            }

      public static int addupscores(String[] hand){

         int score = 0;

                  for(int a = 0; a < hand.length; a++){

                  if(hand[a] != null){       

                        if(hand[a].charAt(0) == 'A') score += 1;

            if(hand[a].charAt(0) == '2') score += 2; 

            if(hand[a].charAt(0) == '3') score += 3; 

            if(hand[a].charAt(0) == '4') score += 4; 

            if(hand[a].charAt(0) == '5') score += 5; 

            if(hand[a].charAt(0) == '6') score += 6; 

            if(hand[a].charAt(0) == '7') score += 7; 

            if(hand[a].charAt(0) == '8') score += 8; 

            if(hand[a].charAt(0) == '9') score += 9; 

            if(hand[a].charAt(0) == 'T') score += 10; 

            if(hand[a].charAt(0) == 'J') score += 10; 

            if(hand[a].charAt(0) == 'Q') score += 10; 

            if(hand[a].charAt(0) == 'K') score += 10;

                       

         }  }

         return score; 

      }

      public static boolean checkforrun(String neededcards, String[] Winner){

         String card1 = neededcards.substring(0,2);

         String card2 = neededcards.substring(2,4);

         String card3 = neededcards.substring(4,6);

                  if(search(card1, Winner) && search(card2,Winner) && search(card3,Winner))

            return true;

         return false;

      }

      public static boolean search(String neededcards, String[] Winner){

         for(String a: Winner){

            if (a != null && neededcards.equals(a))

               return true;

         }

         return false;

      }

      public static ArrayList<String> evaluate(String[] Losinghandarray1){

         String temp = "";

         ArrayList<String> possibilities = new ArrayList<String>();     

         for(int b = 0; b < 7; b++){

            if (Losinghandarray1[b].charAt(1) == 'S'){

               temp = "";

               temp += Losinghandarray1[b].charAt(0) + "H";

               temp += Losinghandarray1[b].charAt(0) + "C";

               temp += Losinghandarray1[b].charAt(0) + "D";

                        temp += Losinghandarray1[b];         

                              possibilities.add(temp);   

            }

            if (Losinghandarray1[b].charAt(1) == 'H'){

               temp = "";

               temp += Losinghandarray1[b].charAt(0) + "S";

               temp += Losinghandarray1[b].charAt(0) + "C";

               temp += Losinghandarray1[b].charAt(0) + "D";

                              temp += Losinghandarray1[b];

               possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(1) == 'C'){

               temp = "";

               temp += Losinghandarray1[b].charAt(0) + "H";

               temp += Losinghandarray1[b].charAt(0) + "S";

               temp += Losinghandarray1[b].charAt(0) + "D";

                        temp += Losinghandarray1[b];         

                              possibilities.add(temp);         

            }

            if (Losinghandarray1[b].charAt(1) == 'D'){

               temp = "";

               temp += Losinghandarray1[b].charAt(0) + "H";

               temp += Losinghandarray1[b].charAt(0) + "C";

               temp += Losinghandarray1[b].charAt(0) + "S";

                        temp += Losinghandarray1[b];         

                              possibilities.add(temp);         

            }

            if (Losinghandarray1[b].charAt(0) == 'A'){

               temp = "";

               temp += "2" + Losinghandarray1[b].charAt(1);

               temp += "3" + Losinghandarray1[b].charAt(1);

               temp += "4" + Losinghandarray1[b].charAt(1);

                        temp += Losinghandarray1[b];         

                              possibilities.add(temp); 

            }

            if (Losinghandarray1[b].charAt(0) == '2'){

               temp = "";

               temp += "3" + Losinghandarray1[b].charAt(1);

               temp += "4" + Losinghandarray1[b].charAt(1);

               temp += "5" + Losinghandarray1[b].charAt(1);

                        temp += Losinghandarray1[b];         

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '3'){

               temp = "";

               temp += "4" + Losinghandarray1[b].charAt(1);

               temp += "5" + Losinghandarray1[b].charAt(1);

               temp += "6" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '4'){

               temp = "";

               temp += "5" + Losinghandarray1[b].charAt(1);

               temp += "6" + Losinghandarray1[b].charAt(1);

               temp += "7" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

               temp = "";

               temp += "A" + Losinghandarray1[b].charAt(1);

               temp += "2" + Losinghandarray1[b].charAt(1);

               temp += "3" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '5'){

               temp = "";

               temp += "6" + Losinghandarray1[b].charAt(1);

               temp += "7" + Losinghandarray1[b].charAt(1);

               temp += "8" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "2" + Losinghandarray1[b].charAt(1);

               temp += "3" + Losinghandarray1[b].charAt(1);

               temp += "4" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '6'){

               temp = "";

               temp += "7" + Losinghandarray1[b].charAt(1);

               temp += "8" + Losinghandarray1[b].charAt(1);

               temp += "9" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "3" + Losinghandarray1[b].charAt(1);

               temp += "4" + Losinghandarray1[b].charAt(1);

               temp += "5" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '7'){

               temp = "";

               temp += "8" + Losinghandarray1[b].charAt(1);

               temp += "9" + Losinghandarray1[b].charAt(1);

               temp += "T" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "4" + Losinghandarray1[b].charAt(1);

               temp += "5" + Losinghandarray1[b].charAt(1);

               temp += "6" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '8'){

               temp = "";

               temp += "9" + Losinghandarray1[b].charAt(1);

               temp += "T" + Losinghandarray1[b].charAt(1);

               temp += "J" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "5" + Losinghandarray1[b].charAt(1);

               temp += "6" + Losinghandarray1[b].charAt(1);

               temp += "7" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == '9'){

               temp = "";

               temp += "T" + Losinghandarray1[b].charAt(1);

               temp += "J" + Losinghandarray1[b].charAt(1);

               temp += "Q" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "6" + Losinghandarray1[b].charAt(1);

               temp += "7" + Losinghandarray1[b].charAt(1);

               temp += "8" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == 'T'){

               temp = "";

               temp += "J" + Losinghandarray1[b].charAt(1);

               temp += "Q" + Losinghandarray1[b].charAt(1);

               temp += "K" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

               temp = "";

               temp += "7" + Losinghandarray1[b].charAt(1);

               temp += "8" + Losinghandarray1[b].charAt(1);

               temp += "9" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == 'J'){

               temp = "";

               temp += "8" + Losinghandarray1[b].charAt(1);

               temp += "9" + Losinghandarray1[b].charAt(1);

               temp += "T" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == 'Q'){

               temp = "";

               temp += "9" + Losinghandarray1[b].charAt(1);

               temp += "T" + Losinghandarray1[b].charAt(1);

               temp += "J" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];           

                              possibilities.add(temp);

            }

            if (Losinghandarray1[b].charAt(0) == 'K'){

               temp = "";

               temp += "T" + Losinghandarray1[b].charAt(1);

               temp += "J" + Losinghandarray1[b].charAt(1);

               temp += "Q" + Losinghandarray1[b].charAt(1);

                              temp += Losinghandarray1[b];         

                           possibilities.add(temp);

            }

         }

         return possibilities;          

      }

      public static String toString(String[]a){

         String b = "";

         for(String q:a){

            if (q != null)b += q + " ";

        

         }

         return b;

      }

      public static String toString(ArrayList<String> a){

         String b = "";

         for(String q:a){

            if (q != null)b += q + " ";

        

         }

         return b;

      }

     

     

   }