#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
typedef long long ll;
/*float stof(const string& str, size_t *idx = 0);
double stod(const string& str, size_t *idx = 0);
long double stold(const string& str, size_t *idx = 0);
int stoi(const string& str, size_t *idx = 0, int base = 10);
long stol(const string& str, size_t *idx = 0, int base = 10);
unsigned long stoul(const string& str, size_t *idx = 0, int base = 10);
long long stoll(const string& str, size_t *idx = 0, int base = 10);
unsigned long long stoull(const string& str, size_t *idx = 0, int base = 10); */
int main()
{
string a,b,c;
ll t;
cin >>t;
while(t--)
{
cin >>a>>b>>c;
ll k,i;
for(i=0;i<a.size();i++)
{
if(a[i]=='m')
{
k=0;
break;
}
}
for(i=0;i<b.size();i++)
{
if(b[i]=='m')
{
k=1;
break;
}
}
for(i=0;i<a.size();i++)
{
if(c[i]=='m')
{
k=2;
break;
}
}
if(k==0)
cout << stoll(c,0,10)-stoll(b,0,10)<< endl;
else if(k==1)
cout << stoll(c,0,10)-stoll(a,0,10)<< endl;
else cout << stoll(a,0,10)+stoll(b,0,10)<< endl;
}
return 0;
}
I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RyaW5nLmg+CiNpbmNsdWRlPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp0eXBlZGVmIGxvbmcgbG9uZyBsbDsKLypmbG9hdCAgICAgICAgICAgICAgc3RvZihjb25zdCBzdHJpbmcmIHN0ciwgc2l6ZV90ICppZHggPSAwKTsKZG91YmxlICAgICAgICAgICAgIHN0b2QoY29uc3Qgc3RyaW5nJiBzdHIsIHNpemVfdCAqaWR4ID0gMCk7CmxvbmcgZG91YmxlICAgICAgICBzdG9sZChjb25zdCBzdHJpbmcmIHN0ciwgc2l6ZV90ICppZHggPSAwKTsKaW50ICAgICAgICAgICAgICAgIHN0b2koY29uc3Qgc3RyaW5nJiBzdHIsIHNpemVfdCAqaWR4ID0gMCwgaW50IGJhc2UgPSAxMCk7CmxvbmcgICAgICAgICAgICAgICBzdG9sKGNvbnN0IHN0cmluZyYgc3RyLCBzaXplX3QgKmlkeCA9IDAsIGludCBiYXNlID0gMTApOwp1bnNpZ25lZCBsb25nICAgICAgc3RvdWwoY29uc3Qgc3RyaW5nJiBzdHIsIHNpemVfdCAqaWR4ID0gMCwgaW50IGJhc2UgPSAxMCk7CmxvbmcgbG9uZyAgICAgICAgICBzdG9sbChjb25zdCBzdHJpbmcmIHN0ciwgc2l6ZV90ICppZHggPSAwLCBpbnQgYmFzZSA9IDEwKTsKdW5zaWduZWQgbG9uZyBsb25nIHN0b3VsbChjb25zdCBzdHJpbmcmIHN0ciwgc2l6ZV90ICppZHggPSAwLCBpbnQgYmFzZSA9IDEwKTsgKi8KaW50IG1haW4oKQp7CglzdHJpbmcgYSxiLGM7CglsbCB0OwoJY2luID4+dDsKCXdoaWxlKHQtLSkKCXsKCQljaW4gPj5hPj5iPj5jOwoJCWxsIGssaTsKCQlmb3IoaT0wO2k8YS5zaXplKCk7aSsrKQoJCXsKCQkJaWYoYVtpXT09J20nKQoJCQl7CgkJCQlrPTA7CgkJCQlicmVhazsKCQkJfQoJCQkKCQl9CgkJCWZvcihpPTA7aTxiLnNpemUoKTtpKyspCgkJewoJCQlpZihiW2ldPT0nbScpCgkJCXsKCQkJCWs9MTsKCQkJCWJyZWFrOwoJCQl9CgkJCQoJCX0KCQkJZm9yKGk9MDtpPGEuc2l6ZSgpO2krKykKCQl7CgkJCWlmKGNbaV09PSdtJykKCQkJewoJCQkJaz0yOwoJCQkJYnJlYWs7CgkJCX0KCQkJCgkJfQoJCWlmKGs9PTApCgkJCWNvdXQgPDwgc3RvbGwoYywwLDEwKS1zdG9sbChiLDAsMTApPDwgZW5kbDsKCQllbHNlIGlmKGs9PTEpCgkJICAgIGNvdXQgPDwgc3RvbGwoYywwLDEwKS1zdG9sbChhLDAsMTApPDwgZW5kbDsKCQllbHNlICAgIGNvdXQgPDwgc3RvbGwoYSwwLDEwKStzdG9sbChiLDAsMTApPDwgZW5kbDsKCX0KCXJldHVybiAwOwp9