抱灵
#include<bits/stdc++.h>
using namespace std;
int first_n,a_n[501],b_n[501],ans[5000];
string a_s,b_s;
void Turn_Around_a(string s1)
{
for(int i=1,j=s1.length()-1;i<=500,j>=0;i++,j--)a_n[i]=s1[j]-'0';
}
void Turn_Around_b(string s2)
{
for(int i=1,j=s2.length()-1;i<=500,j>=0;i++,j--)b_n[i]=s2[j]-'0';
}
void big_add(int x[],int y[])
{
for(int i=1;i<=502;i++)
{
ans[i]+=a_n[i]+b_n[i];
ans[i+1]+=ans[i]/10;
ans[i]%=10;
}
for(int i=4400;i>=1;i--)if(ans[i]>0) first_n=i;
}
//void print_test(int num)
//{
// for(int i=1;i<=num;i++)cout<<ans[i];
//}
void print()
{
for(int i=first_n;i>=1;i--)cout<<ans[i];
}
int main()
{
cin>>a_s>>b_s;
Turn_Around_a(a_s);
Turn_Around_b(b_s);
big_add(a_n,b_n);
print();
// cout<<endl<<first_n<<endl;
// print_test(5);
return 0;
}