
Var 
  Ch:Char;
  p:byte;
  A:array[1..4,0..13]of String[2];
  ca:array[1..4]of byte;
  D:array['A'..'Z']Of word;
  s:string;   
Procedure Chia(Var p:byte;Var s:string);
  Var i:Word;      	
  Begin    
    While s<>'' Do
      Begin
        inc(ca[p]);
        A[p,ca[p]]:=copy(s,1,2); 
	Delete(s,1,2);	
	Inc(p);	
	If p>4 then p:=1;
      End;
  End;
  
 Procedure Sapxep;
   Var i,j,k:Byte;   
   	tmp:string[2];
   Begin
     For k:=1 to 4 do
       For i:=1 to 12 do
         For j:=i+1 to 13 do
	   Begin
	     if D[a[k,i][1]]>D[a[k,j][1]] Then
	       Begin
	         tmp:=A[k,i];
		 A[k,i]:=A[k,j];
		 A[k,j]:=tmp;		 
	       End Else
	      If (D[a[k,i][1]]=D[a[k,j][1]])And(D[a[k,i][2]]>D[a[k,j][2]]) Then 
	        begin
		 tmp:=A[k,i];
		 A[k,i]:=A[k,j];
		 A[k,j]:=tmp;		 
		End;
	   End;
   End;

Procedure Inketqua;
  var i:byte;
  Begin
    Writeln('South Player');
    Writeln('+---+---+---+---+---+---+---+---+---+---+---+---+---+');
    For i:=1 to 13 do     
      Write('|',a[3,i,2],' ',a[3,i,2]);writeln('|');      
    For i:=1 to 13 do     
      Write('| ',a[3,i,1],' ');writeln('|');      
    For i:=1 to 13 do     
      Write('|',a[3,i,2],' ',a[3,i,2]);writeln('|');
    Writeln('+---+---+---+---+---+---+---+---+---+---+---+---+---+');
  End;
Begin
  D['C']:=1;D['D']:=2;D['S']:=3;D['H']:=4;
  For Ch:='2' to '9' do D[ch]:=ord(ch)-ord('2')+2;
  D['T']:=10;D['J']:=11;D['Q']:=12;D['K']:=13;D['A']:=14;
  s:='';Readln(Ch);
  While ch<>'#' Do
    Begin      
      Case Ch of 
        'N':p:=2;
	'E':p:=3;
	'S':p:=4;
	'W':p:=1;
      End;
      Readln(s);
      ca[1]:=0;ca[2]:=0;cA[3]:=0;cA[4]:=0;
      Chia(p,s);
      Readln(s);
      Chia(p,s);
      Sapxep;
      inketqua;
      readln(ch);
    End;
End.
