#include<bits/stdc++.h>
#include<iostream>
#include<vector>
using namespace std;
int main()
{
char total[102],more[102];
vector<int> tot,mor,kl;
int q=0;
while(q<10)
{
cin>>total>>more;
int t=strlen(total);
int m=strlen(more);
for(int i=t-1;i>-1;i--)
tot.push_back(total[i]-'0');
for(int i=m-1;i>-1;i--)
mor.push_back(more[i]-'0');
int carry=0,temp=0;
for(int i=0;i<t;i++)
{
if(i<=m)
mor.push_back(0);
temp=tot[i]+mor[i]+carry;
if(temp>9)
carry=1;
else carry=0;
kl.push_back(temp%10);
}
if(carry) kl.push_back(1);
reverse(kl.begin(),kl.end()); //double the result int right manner
vector<int>::iterator it;
vector<int> klaudia;
temp=0;
for(it=kl.begin();it!=kl.end();it++)
{
temp=temp*10+(*it);
if((temp%2)!=0)
{
if(temp>2)
{
klaudia.push_back(temp/2);
temp=temp%2;
}
}
else
{
klaudia.push_back(temp/2);
temp=0;
}
}
for(it=klaudia.begin();it!=klaudia.end();it++)
cout<<*it;
cout<<endl;
reverse(klaudia.begin(),klaudia.end());
int b=0;
temp=0;
vector<int> res;
for(int i=0;i<t;i++)
{
tot[i]=tot[i]-b;
b=0;
//if(klaudia.size()+1<=i)
//klaudia.push_back(0);
temp=tot[i]-klaudia[i];
//cout<<"#"<<tot[i]<<"#"<<klaudia[i]<<"*"<<temp<<endl;
if(temp<0)
{
b=1;
res.push_back((10+tot[i])-klaudia[i]);
//cout<<(10+tot[i])-klaudia[i]<<"***"<<endl;
}
else
{
res.push_back(temp);
// cout<<temp<<"**"<<endl;
}
}
reverse(res.begin(),res.end());
int flag=0;
for(it=res.begin();it!=res.end();it++)
{
if(!(*it) && flag==0)
continue;
cout<<*it;
flag=1;
}
flag=0;
for(it=res.begin();it!=res.end();it++)
{
if(!(*it))
flag=1;
else
{
flag=0;
break;
}
}
if(flag)
cout<<0;
cout<<endl;
q++;
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHZlY3Rvcj4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKCWNoYXIgdG90YWxbMTAyXSxtb3JlWzEwMl07Cgl2ZWN0b3I8aW50PiB0b3QsbW9yLGtsOwoJaW50IHE9MDsKCQoJd2hpbGUocTwxMCkKCXsKCQljaW4+PnRvdGFsPj5tb3JlOwoKCQlpbnQgdD1zdHJsZW4odG90YWwpOwoJCWludCBtPXN0cmxlbihtb3JlKTsKCQkKCQlmb3IoaW50IGk9dC0xO2k+LTE7aS0tKQoJCQl0b3QucHVzaF9iYWNrKHRvdGFsW2ldLScwJyk7CgkJCgkJZm9yKGludCBpPW0tMTtpPi0xO2ktLSkKCQkJbW9yLnB1c2hfYmFjayhtb3JlW2ldLScwJyk7CgoJCWludCBjYXJyeT0wLHRlbXA9MDsKCQlmb3IoaW50IGk9MDtpPHQ7aSsrKQoJCXsKCQkJaWYoaTw9bSkKCQkJbW9yLnB1c2hfYmFjaygwKTsJCgkKCQkJdGVtcD10b3RbaV0rbW9yW2ldK2NhcnJ5OwkKCQkJCgkJCWlmKHRlbXA+OSkKCQkJY2Fycnk9MTsKCQkJZWxzZSBjYXJyeT0wOwoKCQkJa2wucHVzaF9iYWNrKHRlbXAlMTApOwoJCX0KCQoJCWlmKGNhcnJ5KQlrbC5wdXNoX2JhY2soMSk7CQoJCXJldmVyc2Uoa2wuYmVnaW4oKSxrbC5lbmQoKSk7CQkvL2RvdWJsZSB0aGUgcmVzdWx0IGludCByaWdodCBtYW5uZXIKCQoJCXZlY3RvcjxpbnQ+OjppdGVyYXRvciBpdDsKCQl2ZWN0b3I8aW50PiBrbGF1ZGlhOwoKCQl0ZW1wPTA7CgkJZm9yKGl0PWtsLmJlZ2luKCk7aXQhPWtsLmVuZCgpO2l0KyspCgkJewoJCQl0ZW1wPXRlbXAqMTArKCppdCk7CgkJCWlmKCh0ZW1wJTIpIT0wKQoJCQl7CgkJCQlpZih0ZW1wPjIpCgkJCQl7CgkJCQkJa2xhdWRpYS5wdXNoX2JhY2sodGVtcC8yKTsKCQkJCQl0ZW1wPXRlbXAlMjsKCQkJCX0KCQkJfQoJCQllbHNlCQoJCQl7CgkJCQlrbGF1ZGlhLnB1c2hfYmFjayh0ZW1wLzIpOwoJCQkJdGVtcD0wOwoJCQl9CQoJCX0KCQkKCQlmb3IoaXQ9a2xhdWRpYS5iZWdpbigpO2l0IT1rbGF1ZGlhLmVuZCgpO2l0KyspCgkJY291dDw8Kml0OwoJCWNvdXQ8PGVuZGw7CgkJCQkKCQlyZXZlcnNlKGtsYXVkaWEuYmVnaW4oKSxrbGF1ZGlhLmVuZCgpKTsKCQkKCQlpbnQgYj0wOwoJCXRlbXA9MDsKCQl2ZWN0b3I8aW50PiByZXM7CgkJCgkKCQlmb3IoaW50IGk9MDtpPHQ7aSsrKQoJCXsKCQkJdG90W2ldPXRvdFtpXS1iOwoJCQliPTA7CgkJCQoJCQkvL2lmKGtsYXVkaWEuc2l6ZSgpKzE8PWkpCgkJCS8va2xhdWRpYS5wdXNoX2JhY2soMCk7CgkJCQoJCQl0ZW1wPXRvdFtpXS1rbGF1ZGlhW2ldOwoJCQkvL2NvdXQ8PCIjIjw8dG90W2ldPDwiIyI8PGtsYXVkaWFbaV08PCIqIjw8dGVtcDw8ZW5kbDsJCQkKCQkJaWYodGVtcDwwKQoJCQl7CgkJCQliPTE7CgkJCQlyZXMucHVzaF9iYWNrKCgxMCt0b3RbaV0pLWtsYXVkaWFbaV0pOwkKCQkJCS8vY291dDw8KDEwK3RvdFtpXSkta2xhdWRpYVtpXTw8IioqKiI8PGVuZGw7CgoJCQl9CgkJCWVsc2UKCQkJewoJCQkJCXJlcy5wdXNoX2JhY2sodGVtcCk7CgkJCQkvLwljb3V0PDx0ZW1wPDwiKioiPDxlbmRsOwoJCQl9CgkJCQkKCQl9CgkJcmV2ZXJzZShyZXMuYmVnaW4oKSxyZXMuZW5kKCkpOwoJCQoJCWludCBmbGFnPTA7CgkJZm9yKGl0PXJlcy5iZWdpbigpO2l0IT1yZXMuZW5kKCk7aXQrKykKCQl7CgkJCWlmKCEoKml0KSAmJiBmbGFnPT0wKQoJCQljb250aW51ZTsKCQkJY291dDw8Kml0OwoJCQlmbGFnPTE7CgkJfQoJCWZsYWc9MDsKCQlmb3IoaXQ9cmVzLmJlZ2luKCk7aXQhPXJlcy5lbmQoKTtpdCsrKQoJCXsKCQkJaWYoISgqaXQpKQoJCQlmbGFnPTE7CgkJCWVsc2UKCQkJewoJCQkJZmxhZz0wOwoJCQkJYnJlYWs7CgkJCX0KCQl9CgkJaWYoZmxhZykKCQljb3V0PDwwOwoJCQoJCWNvdXQ8PGVuZGw7CQkJCgkJcSsrOwoJCQkKCX0KfQ==