#include <iostream>
#include <string>
using namespace std;
class BigInt{
public:
string num;
BigInt()
{}
BigInt(string nu)
{num=nu;}
friend ostream& operator <<(ostream& output,BigInt&t);
friend istream& operator >>(istream& input,BigInt&t);
friend BigInt operator + (BigInt& r1,BigInt& q1);
};
void reverse(string&r);
void reverse(string&r)
{
int len=r.size();
char c;
for(int i=0;i<len/2;i++)
{
c=r[i];
r[i]=r[len-i-1];
r[len-i-1]=c;
}
}
BigInt operator + (BigInt& r1,BigInt& q1)
{
int l1,l2,i,k;
char c;
string r,q;
char add[100];
add[0]='0';
r=r1.num;
q=q1.num;
l1=r.size();
l2=q.size();
reverse(r);
reverse(q);
if(l1>l2)for(i=l2;i<l1;i++)q+="0";
else for(i=l1;i<l2;i++)r+="0";
for(k=0;k<i;k++)
{
c=(r)[k]+(q[k]-'0');
if(c>'9')
{
c-=10;
add[k]+=(c-'0');
add[k+1]='1';
}
else{
add[k]+=(c-'0');
add[k+1]='0';
}
}
if(add[k]=='0')add[k]='\0';
else add[k+1]='\0';
string add1=string(add);
reverse(add1);
return BigInt(add1);
}
ostream& operator <<(ostream&output,BigInt&t)
{
output<<t.num;
return output;
}
istream& operator >>(istream& input,BigInt&t)
{
input>>t.num;
return input;
}
int main(){
BigInt a, b, c;
cin>>a>>b;
c=a+b;
cout<<a<<"+"<<b<<"="<<c<<endl;
return 0;
}
