#include <stdio.h>
#include <string.h>
void consequence();
int main(int argc, char** argv)
{
int i,t;
scanf("%d",&t);
for (i=1;i<=t;++i)
{
consequence(i,t);
}
return 0;
}
void consequence(int h,int o)
{
int len,val,i,pos=0,cnt=0,j,k,w;
char a[1001];
char b[1001];
int c[1001]={
0}
;
scanf("%s%s",&a,&b);
if (strlen(a)<strlen(b))
{
len = strlen(a);
}
else
{
len = strlen(b);
}
for (i=0;i<len;++i)
{
val = (a[strlen(a)-1-i]-'0')+(b[strlen(b)-1-i]-'0')+pos;
if (val>9)
{
val = val-10;
pos = 1;
}
else
{
pos = 0;
}
c[i] = val;
cnt = i;
}
if (strlen(a)>len)
{
for (k=len,w=strlen(a)-1;
k<strlen(a);
++k)
{
c[k] = (a[w-k]-'0');
}
if (pos == 1)
{
c[len] = c[len]+1;
if (c[len]>9)
{
c[len] = 0;
c[len+1] = c[len+1]+1;
}
}
pos = 0;
printf("Case %d:\n%s + %s = ",h,a,b);
for (j=strlen(a)-1;
j>=0;
--j)
{
printf("%d",c[j]);
}
if (h!=o)
printf("\n");
printf("\n");
}
else if(strlen(b)>len)
{
for (k=len,w=strlen(b)-1;
k<strlen(b);
++k)
{
c[k] = (b[w-k]-'0');
}
if (pos == 1)
{
c[len] = c[len]+1;
if (c[len]>9)
{
c[len] = 0;
c[len+1] = c[len+1]+1;
}
}
pos = 0;
printf("Case %d:\n%s + %s = ",h,a,b);
for (j=strlen(b)-1;
j>=0;
--j)
{
printf("%d",c[j]);
}
if (h!=o)
printf("\n");
printf("\n");
}
else
{
printf("Case %d:\n%s + %s = ",h,a,b);
if (pos==1)
printf("1");
for (j=strlen(b)-1;
j>=0;
--j)
{
printf("%d",c[j]);
}
if (h!=o)
printf("\n");
printf("\n");
}
return;
}