#include<iostream>
#include<stdio.h>
#include<string>
#include<stdlib.h>
using namespace std;
int main()
{
int test;
scanf("%d\n",&test);
while(test--)
{
char str[10000];//removes string as "atoi" function works on c-equivalent strings
//cin>>str;
//I think the endl operation mightalso be causing some trouble
gets(str);
//Main part causing RTE
getchar();//takes care of extra space sfter the input
char s1[1000],s2[1000],s3[1000];
int j=0,k=0,l=0,p=0,occ_of_plus,occ_of_equal,occ_of_m;
for(int i=0;str[i]!='+';i++)//finding occurence of + in the string
{
s1[j]=str[i];
j++;
}
s1[j]='\0';
j++;
for(int i=j;str[i]!='=';i++)//finding occurence of '=' in string
{
s2[k]=str[i];
k++;
p=i;
}
s2[k]='\0';
k++;
for(int i=p+2;str[i]!='\0';i++)
{
s3[l]=str[i];
l++;
}
s3[l]='\0';
l++;
//cout<<s1<<s2<<s3<<"\n";
for(int i=0;str[i]!='\0';i++)
{
if(str[i]=='m')
occ_of_m=i+1;
if(str[i]=='+')
occ_of_plus=i+1;
if(str[i]=='=')
occ_of_equal=i+1;
}
if(occ_of_m>occ_of_equal)
{
int a=atoi(s1);
int b=atoi(s2);
cout<<a<<" + "<<b<<" = "<<a+b;
}
else if(occ_of_m>occ_of_plus&&occ_of_m<occ_of_equal)
{
int a=atoi(s1);
int b=atoi(s3);
cout<<a<<" + "<<b-a<<" = "<<b;
}
else if(occ_of_m<occ_of_plus)
{
int a=atoi(s2);
int b=atoi(s3);
cout<<b-a<<" + "<<a<<" = "<<b;
}
printf("\n");
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHN0ZGlvLmg+CiNpbmNsdWRlPHN0cmluZz4KI2luY2x1ZGU8c3RkbGliLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKCiAgICBpbnQgdGVzdDsKICAgIHNjYW5mKCIlZFxuIiwmdGVzdCk7CiAgICB3aGlsZSh0ZXN0LS0pCiAgICB7CiAgICAgICAgY2hhciBzdHJbMTAwMDBdOy8vcmVtb3ZlcyBzdHJpbmcgYXMgImF0b2kiIGZ1bmN0aW9uIHdvcmtzIG9uIGMtZXF1aXZhbGVudCBzdHJpbmdzCiAgICAgICAgLy9jaW4+PnN0cjsKICAgICAgICAvL0kgdGhpbmsgdGhlIGVuZGwgb3BlcmF0aW9uIG1pZ2h0YWxzbyBiZSBjYXVzaW5nIHNvbWUgdHJvdWJsZQogICAgICAgIAogICAgICAgIGdldHMoc3RyKTsKICAgICAgICAvL01haW4gcGFydCBjYXVzaW5nIFJURQogICAgICAgIGdldGNoYXIoKTsvL3Rha2VzIGNhcmUgb2YgZXh0cmEgc3BhY2Ugc2Z0ZXIgdGhlIGlucHV0CiAgICAgICAgY2hhciBzMVsxMDAwXSxzMlsxMDAwXSxzM1sxMDAwXTsKICAgICAgICBpbnQgaj0wLGs9MCxsPTAscD0wLG9jY19vZl9wbHVzLG9jY19vZl9lcXVhbCxvY2Nfb2ZfbTsKICAgICAgICBmb3IoaW50IGk9MDtzdHJbaV0hPScrJztpKyspLy9maW5kaW5nIG9jY3VyZW5jZSBvZiArIGluIHRoZSBzdHJpbmcKICAgICAgICB7CiAgICAgICAgICAgIHMxW2pdPXN0cltpXTsKICAgICAgICAgICAgaisrOwogICAgICAgIH0KICAgICAgICBzMVtqXT0nXDAnOwoKICAgICAgICBqKys7CiAgICAgICAgZm9yKGludCBpPWo7c3RyW2ldIT0nPSc7aSsrKS8vZmluZGluZyBvY2N1cmVuY2Ugb2YgJz0nIGluIHN0cmluZwogICAgICAgIHsKICAgICAgICAgICAgczJba109c3RyW2ldOwogICAgICAgICAgICBrKys7CiAgICAgICAgICAgIHA9aTsKICAgICAgICB9CiAgICAgICAgczJba109J1wwJzsKCiAgICAgICAgaysrOwogICAgICAgIGZvcihpbnQgaT1wKzI7c3RyW2ldIT0nXDAnO2krKykKICAgICAgICB7CiAgICAgICAgICAgIHMzW2xdPXN0cltpXTsKICAgICAgICAgICAgbCsrOwogICAgICAgIH0KICAgICAgICBzM1tsXT0nXDAnOwogICAgICAgIGwrKzsKICAgICAgICAvL2NvdXQ8PHMxPDxzMjw8czM8PCJcbiI7CiAgICAgICAgZm9yKGludCBpPTA7c3RyW2ldIT0nXDAnO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKHN0cltpXT09J20nKQogICAgICAgICAgICBvY2Nfb2ZfbT1pKzE7CiAgICAgICAgICAgIGlmKHN0cltpXT09JysnKQogICAgICAgICAgICBvY2Nfb2ZfcGx1cz1pKzE7CiAgICAgICAgICAgIGlmKHN0cltpXT09Jz0nKQogICAgICAgICAgICBvY2Nfb2ZfZXF1YWw9aSsxOwogICAgICAgIH0KICAgICAgICBpZihvY2Nfb2ZfbT5vY2Nfb2ZfZXF1YWwpCiAgICAgICAgewogICAgICAgICAgICBpbnQgYT1hdG9pKHMxKTsKICAgICAgICAgICAgaW50IGI9YXRvaShzMik7CiAgICAgICAgICAgIGNvdXQ8PGE8PCIgKyAiPDxiPDwiID0gIjw8YStiOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKG9jY19vZl9tPm9jY19vZl9wbHVzJiZvY2Nfb2ZfbTxvY2Nfb2ZfZXF1YWwpCiAgICAgICAgewogICAgICAgICAgICBpbnQgYT1hdG9pKHMxKTsKICAgICAgICAgICAgaW50IGI9YXRvaShzMyk7CiAgICAgICAgICAgIGNvdXQ8PGE8PCIgKyAiPDxiLWE8PCIgPSAiPDxiOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKG9jY19vZl9tPG9jY19vZl9wbHVzKQogICAgICAgIHsKICAgICAgICAgICAgaW50IGE9YXRvaShzMik7CiAgICAgICAgICAgIGludCBiPWF0b2koczMpOwogICAgICAgICAgICBjb3V0PDxiLWE8PCIgKyAiPDxhPDwiID0gIjw8YjsKICAgICAgICB9CiAgICAgICAgcHJpbnRmKCJcbiIpOwogICAgfQogICAgcmV0dXJuIDA7Cn0=