#include<iostream>
#include<cstring>
using namespace std;
int main(void)
{
long int i,j,t,k;
cin>>t;
while(t--)
{
int count1=0;
long int count=0;
char s[10001];
char s1[10001];
char ans[10001];
cin>>s;
cin>>s1;
long int l=strlen(s);
long int l1=strlen(s1);
int temp=0;
//int max1=min(l,l1);
i=l-1,j=l1-1;
k=0;
if(l==l1)
{
temp=1;
while(i>=0 && j>=0)
{
int d=(s[i]-'0')+(s1[j]-'0');
int x=d%10;
ans[k]=(char)(x+'0');
i--;
j--;
k++;
}
ans[k]='\0';
//for(i=k-1;i>=0;i--)
//cout<<ans[i];
//continue;
}
else if(l>l1)
{
int f=l-l1;
for(i=0,j=0,k=0;i<l && j<l1 && k<l;i++,k++)
{
//count++;
if(count!=f)
{ans[k]=s[i];
count++;
}
else
{int d=(s[i]-'0')+(s1[j]-'0');
int x=d%10;
ans[k]=(char)(x+'0');
j++;
}
//count++;
}
ans[k]='\0';
//cout<<ans;
}
else if(l1>l)
{
int f=l1-l;
for(i=0,j=0,k=0;i<l && j<l1 && k<l1;j++,k++)
{
//count++;
if(count!=f)
{ans[k]=s1[j];
count++;
}
else
{int d=(s[i]-'0')+(s1[j]-'0');
int x=d%10;
ans[k]=(char)(x+'0');
i++;
}
//count++;
}
ans[k]='\0';
//cout<<ans;
}
for(i=0;i<k;i++)
{
if(ans[i]=='0')
count1++;
}
if(count1==k)
cout<<0;
else if(temp==1)
{
for(i=k-1;i>=0;i--)
cout<<ans[i];
}
else
cout<<ans;
cout<<endl;
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPGNzdHJpbmc+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKHZvaWQpCnsKCWxvbmcgaW50IGksaix0LGs7CgljaW4+PnQ7Cgl3aGlsZSh0LS0pCgl7CgkJaW50IGNvdW50MT0wOwoJbG9uZyBpbnQgY291bnQ9MDsKCWNoYXIgc1sxMDAwMV07CgljaGFyIHMxWzEwMDAxXTsKCWNoYXIgYW5zWzEwMDAxXTsKCWNpbj4+czsKCWNpbj4+czE7Cglsb25nIGludCBsPXN0cmxlbihzKTsKCWxvbmcgaW50IGwxPXN0cmxlbihzMSk7CglpbnQgdGVtcD0wOwoJLy9pbnQgbWF4MT1taW4obCxsMSk7CglpPWwtMSxqPWwxLTE7CglrPTA7CglpZihsPT1sMSkKCXsKCQl0ZW1wPTE7Cgl3aGlsZShpPj0wICYmIGo+PTApCgl7CgkJaW50IGQ9KHNbaV0tJzAnKSsoczFbal0tJzAnKTsKCQlpbnQgeD1kJTEwOwoJCWFuc1trXT0oY2hhcikoeCsnMCcpOwoJCWktLTsKCQlqLS07CgkJaysrOwoJfQoJYW5zW2tdPSdcMCc7CgkvL2ZvcihpPWstMTtpPj0wO2ktLSkKCS8vY291dDw8YW5zW2ldOwoJLy9jb250aW51ZTsKfQoJZWxzZSBpZihsPmwxKQoJewoJCWludCBmPWwtbDE7CgkJZm9yKGk9MCxqPTAsaz0wO2k8bCAmJiBqPGwxICYmIGs8bDtpKyssaysrKQoJCXsKCQkJLy9jb3VudCsrOwoJCQlpZihjb3VudCE9ZikKCQkJe2Fuc1trXT1zW2ldOwoJCQljb3VudCsrOwoJCQl9CgkJCWVsc2UKCQl7aW50IGQ9KHNbaV0tJzAnKSsoczFbal0tJzAnKTsKCQlpbnQgeD1kJTEwOwoJCWFuc1trXT0oY2hhcikoeCsnMCcpOwoJCWorKzsKCQl9CgkJCS8vY291bnQrKzsJCgkJfQoJCWFuc1trXT0nXDAnOwoJCQoJLy9jb3V0PDxhbnM7Cgl9CgllbHNlIGlmKGwxPmwpCgl7CgkJaW50IGY9bDEtbDsKCQlmb3IoaT0wLGo9MCxrPTA7aTxsICYmIGo8bDEgJiYgazxsMTtqKyssaysrKQoJCXsKCQkJLy9jb3VudCsrOwoJCQlpZihjb3VudCE9ZikKCQkJe2Fuc1trXT1zMVtqXTsKCQkJY291bnQrKzsKCQkJfQoJCQllbHNlCgkJe2ludCBkPShzW2ldLScwJykrKHMxW2pdLScwJyk7CgkJaW50IHg9ZCUxMDsKCQlhbnNba109KGNoYXIpKHgrJzAnKTsKCQlpKys7CgkJfQoJCQkvL2NvdW50Kys7CQoJCX0KCQlhbnNba109J1wwJzsJCgkvL2NvdXQ8PGFuczsKCX0KCWZvcihpPTA7aTxrO2krKykKCXsKCQlpZihhbnNbaV09PScwJykKCQljb3VudDErKzsKCX0KCWlmKGNvdW50MT09aykKCWNvdXQ8PDA7CgllbHNlIGlmKHRlbXA9PTEpCgl7CgkJZm9yKGk9ay0xO2k+PTA7aS0tKQoJCWNvdXQ8PGFuc1tpXTsKCX0KCWVsc2UKCWNvdXQ8PGFuczsKCWNvdXQ8PGVuZGw7Cn0KcmV0dXJuIDA7Cn0g