#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main()
{
string a,b;
cin>>a>>b;
if(a.size() < b.size())
{//让a是长的
string temp = a;
a = b;
b = temp;
}
int carry = 0;
string res = a;
int k = res.size()-1, i = a.size()-1, j = b.size() -1;
for( ; j >= 0; i--,j--,k--)
{
int numA = a[i] - '0';
int numB = b[j] - '0';
int s = numA + numB + carry;
res[k] = (s % 10) + '0';
carry = s/10;
}
while(i >= 0 && carry > 0)
{//a.size() != b.size();
int numA = a[i--] - '0';
int s = numA + carry;
res[k--] = (s % 10) + '0';
carry = s/10;
}
if(carry > 0)
{//i == -1了还有进位
char ch = carry + '0';
res = ch + res;
}
cout<<res;
return 0;
}