#include<iostream>
#include<queue>
#include<algorithm>
#include<map>
#include<string.h>
#include<math.h>
#include<stdio.h>
#include <iomanip>
#include <stack>
////////
using namespace std;
struct card{
char No;
char suit;
};
stack<card>pile[13];
int find(char no);
int main()
{
card card_piece[52];
card current;
string str;
int num,i,j;
int current_pile;
while (cin>>str && str[0]!='#')
{
current_pile = 12;
num = 0;
///////輸入卡牌內容
card_piece[0].No = str[0];
card_piece[0].suit= str[1];
for(i=1;i<52;i++)
{
cin>>str;
card_piece[i].No = str[0];
card_piece[i].suit = str[1];
}
/////////分堆
for(i=0;i<13;i++)
{
while(!pile[i].empty())
pile[i].pop();
}
for(i=51;i>=0;i--)
pile[12-(i%13)].push(card_piece[i]);
/////////翻轉
while(!pile[current_pile].empty())
{
current = pile[current_pile].top();
pile[current_pile].pop();
current_pile = find(current.No);
num++;
}
////////輸出
printf("%02d,%c%c\n",num,current.No,current.suit);
}
}
int find(char no)
{
if( no == 'A' ) return 0;
if(no>='2' && no<='9')
return no-'0'-1;
if( no == 'T' ) return 9;
if( no == 'J' ) return 10;
if( no == 'Q' ) return 11;
else return 12;
}