
#include <stdio.h>
#include <string.h>
void reverseString(char* s, int sSize)
{
int start=0;
int end=sSize-1;
char tempchar=0;
if(sSize==0||sSize==1) s=s;
while(start<end)
{
tempchar=s[start];
s[start]=s[end];
s[end]=tempchar;
start++;
end--;
}
}
int i;
char a[100005],b[100005],Ca[100005];
int main()
{
int T,len,A,B,sum,Flag=0,J=0;
scanf("%d",&T);
for(;T>0;T--)
{
scanf("%s %s",a,b);
A=strlen(a);
B=strlen(b);
reverseString(a,A);
reverseString(b,B);
while(Flag<A&&Flag<B)
{
sum=a[Flag]+b[Flag]-2*'0'+J;
Ca[Flag]=sum%2+'0';
J=sum/2;
Flag++;
}
while(Flag<A)
{
sum=a[Flag]-'0'+J;
Ca[Flag]=sum%2+'0';
J=sum/2;
Flag++;
}
while(Flag<B)
{
sum=b[Flag]-'0'+J;
Ca[Flag]=sum%2+'0';
J=sum/2;
Flag++;
}
if(J!=0)
{
Ca[Flag++]=J+'0';
}
Ca[Flag]='\0';
reverseString(a,A);
reverseString(b,B);
reverseString(Ca,Flag);
len=Flag+2;
for(i=0;i<len-A;i++) printf(" ");
printf("%s\n",a);
printf("+");
for(i=0;i<len-B-1;i++) printf(" ");
printf("%s\n",b);
for(i=0;i<len;i++) printf("-");
printf("\n");
for(i=0;i<2;i++) printf(" ");
printf("%s\n",Ca);
Flag=0;J=0;
}
return 0;
}