#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int n;
cin>>n;
for (int i=0; i<n; i++)
{
string x,y;
cin>>x>>y;
int lx,ly;
lx=x.length();
ly=y.length();
char xTab [1024];
strcpy(xTab,x.c_str());
char yTab [1024];
strcpy(yTab,y.c_str());
int dlugosc_wyniku=(lx>=ly?lx:ly);
if (((xTab[0]-'0')+(yTab[0]-'0'))>9) dlugosc_wyniku++;
// cout<<"dl_w: "<<dlugosc_wyniku<<endl;
int k=dlugosc_wyniku;
int n=0,z=0;
int f[dlugosc_wyniku];
while (true)
{
int a= xTab[lx-1] - '0';
int b= yTab[ly-1] - '0';
if (lx-1<0)a=0;
if (ly-1<0)b=0;
z=a+b+n;
n=0;
if ((lx-1<0)&&(ly-1<0)&&z==0) break;
while (z>9)
{
n++;
z-=10;
}
lx--;
ly--;
f[dlugosc_wyniku-1]=z;
dlugosc_wyniku--;
// cout<<" liczba "<<dlugosc_wyniku+1<<" wynosi "<<z<<endl;
}
for (int j=0; j<=k-1; j++)
{
cout<<f[j];
}
cout<<endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICAgaW50IG47CiAgICBjaW4+Pm47CiAgICBmb3IgKGludCBpPTA7IGk8bjsgaSsrKQogICAgewogICAgICAgIHN0cmluZyB4LHk7CiAgICAgICAgY2luPj54Pj55OwoKICAgICAgICBpbnQgbHgsbHk7CiAgICAgICAgbHg9eC5sZW5ndGgoKTsKICAgICAgICBseT15Lmxlbmd0aCgpOwogICAgICAgIGNoYXIgeFRhYiBbMTAyNF07CiAgICAgICAgc3RyY3B5KHhUYWIseC5jX3N0cigpKTsKICAgICAgICBjaGFyIHlUYWIgWzEwMjRdOwogICAgICAgIHN0cmNweSh5VGFiLHkuY19zdHIoKSk7CgogICAgICAgIGludCBkbHVnb3NjX3d5bmlrdT0obHg+PWx5P2x4Omx5KTsKICAgICAgICBpZiAoKCh4VGFiWzBdLScwJykrKHlUYWJbMF0tJzAnKSk+OSkgZGx1Z29zY193eW5pa3UrKzsKICAgICAgICAvLyBjb3V0PDwiZGxfdzogIjw8ZGx1Z29zY193eW5pa3U8PGVuZGw7CiAgICAgICAgaW50IGs9ZGx1Z29zY193eW5pa3U7CiAgICAgICAgaW50IG49MCx6PTA7CiAgICAgICAgaW50IGZbZGx1Z29zY193eW5pa3VdOwogICAgICAgIHdoaWxlICh0cnVlKQogICAgICAgIHsKICAgICAgICAgICAgaW50IGE9IHhUYWJbbHgtMV0gLSAnMCc7CiAgICAgICAgICAgIGludCBiPSB5VGFiW2x5LTFdIC0gJzAnOwogICAgICAgICAgICBpZiAobHgtMTwwKWE9MDsKICAgICAgICAgICAgaWYgKGx5LTE8MCliPTA7CiAgICAgICAgICAgIHo9YStiK247CiAgICAgICAgICAgIG49MDsKICAgICAgICAgICAgaWYgKChseC0xPDApJiYobHktMTwwKSYmej09MCkgYnJlYWs7CiAgICAgICAgICAgIHdoaWxlICh6PjkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG4rKzsKICAgICAgICAgICAgICAgIHotPTEwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGx4LS07CiAgICAgICAgICAgIGx5LS07CiAgICAgICAgICAgIGZbZGx1Z29zY193eW5pa3UtMV09ejsKICAgICAgICAgICAgZGx1Z29zY193eW5pa3UtLTsKICAgICAgICAgICAgLy8gIGNvdXQ8PCIgbGljemJhICI8PGRsdWdvc2Nfd3luaWt1KzE8PCIgd3lub3NpICI8PHo8PGVuZGw7CiAgICAgICAgfQogICAgICAgIGZvciAoaW50IGo9MDsgajw9ay0xOyBqKyspCiAgICAgICAgewogICAgICAgICAgICBjb3V0PDxmW2pdOwogICAgICAgIH0KICAgICAgICBjb3V0PDxlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0K