#include<iostream>
#include<vector>
#include<string>
using namespace std;
vector<int> V,W,A;
int main(){
	int n,a,b;
	cin>>n;
	string str;
	char num[10]={'0','1','2','3','4','5','6','7','8','9'};
	for(int i=0;i<n;i++){
		cin>>str;
		for(int j=0;j<str.size();j++){
			for(int k=0;k<10;k++){
				if(str[j]==num[k]){
					V.push_back(k);
					break;
				}
			}
		}
		cin>>str;
		for(int j=0;j<str.size();j++){
			for(int k=0;k<10;k++){
				if(str[j]==num[k]){
					W.push_back(k);
					break;
				}
			}
		}
		int v=V.size(),w=W.size();
		int flag=0;
		while(v || w){
			int x=0;
			if(v==0){
				if(W[w-1]+flag>=10){
					A.push_back(W[w-1]+flag-10);
					W.pop_back();
					flag=1;
				}else{
					A.push_back(W[w-1]+flag);
					W.pop_back();
					flag=0;
				}
			}else if(w==0){
				if(V[v-1]+flag>=10){
					A.push_back(V[v-1]+flag-10);
					V.pop_back();
					flag=1;
				}else{
					A.push_back(V[v-1]+flag);
					V.pop_back();
					flag=0;
				}
			}else{
				if(V[v-1]+W[w-1]+flag>=10){
					A.push_back(V[v-1]+W[w-1]-10+flag);
					V.pop_back();
					W.pop_back();
					flag=1;
				}else{
					A.push_back(V[v-1]+W[w-1]+flag);
					V.pop_back();
					W.pop_back();
					flag=0;
				}
			}
			v=V.size();
			w=W.size();
		}
		if(flag)
		A.push_back(flag);
		for(int j=A.size()-1;j>=0;j--){
			cout<<A[j];
		}
		cout<<endl;
		V.clear();
		W.clear();
		A.clear();
	}
	return 0;
}