#include<string.h>
#include<stdlib.h>
#include<stdio.h>
#include<memory.h>
struct Node
{
char str[300];
int len;
};
struct LLL
{
int li,lj,k;
};
const int M = 1005 ;
LLL len[M][M];
int MM[M][3];
int t;
Node a[M],b[M];
int LCS( Node *a , int la , Node * b , int lb )
{
int i , j ;
for ( i=la ; i>=1 ; i-- )
{
for ( j=lb ; j>=1 ; j-- )
{
if (strcmp(a[i].str,b[j].str)==0)
{
len[i][j].k = len [i+1][j+1].k +1 ;
len[i][j].li= i+1;
len[i][j].lj= j+1;
}
else
{
if(len[i][j+1].k<len[i+1][j].k)
{
len[i][j].k=len[i+1][j].k;
len[i][j].li=i+1;
len[i][j].lj=j;
}
else
{
len[i][j].k=len[i][j+1].k;
len[i][j].li=i;
len[i][j].lj=j+1;
}
/*else
{
if (len[i+1][j].li<len[i][j+1].li) len[i+1][j+1]=len[i+1][j];
else ( len[i+1][j].li>len[i][j+1].li ) len[i+1][j+1]=len[i][j+1];
else if (len[i+1][j].lj<len[i][j+1].lj) len[i+1][j+1]=len[i+1][j];
else len[i+1][j+1]=len[i][j+1];
len[i+1][j+1].k=len[i+1][j].k;
len[i+1][j+1].li=i;
len[i+1][j+1].lj=j+1;
}*/
}
}
}
return len [0][0].k;
}
int main()
{
int t,i,j,sa,sb,u,v,_M,uu,vv;
scanf("%d",&t);
gets(a[1].str);
for(i=1;i<=t;i++)
{
sa=0;sb=0;
while(gets(a[++sa].str))
{
if (strcmp(a[sa].str,"#CODE-END")==0) break;
}
sa--;
while(gets(b[++sb].str))
{
if (strcmp(b[sb].str,"#CODE-END")==0) break;
}
sb--;
for(j=0;j<=1000;j++)
{
len[j][sb+1].k=0; len[sa+1][j].k=0;
len[j][sb+1].li=sa+1; len[sa+1][j].li=sa+1;
len[j][sb+1].lj=sb+1; len[sa+1][j].lj=sb+1;
}
u++;
LCS(a,sa,b,sb);
u=1;v=1;_M=0;int _u;
while((u<=sa)&&(v<=sb))
{
if (strcmp(a[u].str,b[v].str)==0) {MM[++_M][1]=u;MM[_M][2]=v;}
_u=u;u=len[u][v].li;v=len[_u][v].lj;
}
printf("Case %d:/n",i);
u=1;v=1;
for(j=1;j<=_M;j++)
{
if (((MM[j][1]-u)>0)&&((MM[j][2]-v)>0))
{
printf("//**** CONFLICT STARTS ****///n//code in A:/n");
for(uu=u;uu<=MM[j][1]-1;uu++)
{
puts(a[uu].str);
printf("/n");
}
printf("//code in B:/n");
for(vv=v;vv<=MM[j][2]-1;vv++)
{
puts(b[vv].str);
printf("/n");
}
printf("//***** CONFLICT ENDS *****///n");
}
else
{
for(uu=u;uu<=MM[j][1]-1;uu++)
{
puts(a[uu].str);
printf("/n");
}
for(vv=v;vv<=MM[j][2]-1;vv++)
{
puts(b[vv].str);
printf("/n");
}
}
u=MM[j][1]+1;v=MM[j][2]+1;
puts(a[MM[j][1]].str);
printf("/n");
}
}
}