#include<bits/stdc++.h>
using namespace std;
string s1,s2;
int a[250],b[250],c[250];
int main(){
cin>>s1>>s2;
//将字符s1倒过来装入a数组
for(int i=s1.size()-1;i>=0;i--){
a[s1.size()-1-i]=s1[i]-48;
}
//将字符s2倒过来装入b数组
for(int i=s2.size()-1;i>=0;i--){
b[s2.size()-1-i]=s2[i]-48;
}
//验证是否倒序
//for(int i=0;i<s1.size();i++) cout<<a[i];
//cout<<endl;
//for(int i=0;i<s2.size();i++) cout<<b[i];
//将a数组和b数组逐位相加,然后把结果放c数组
//求相加的次数,取决于数组最长的
int len=max(s1.size(),s2.size());
for(int i=0;i<len;i++){
c[i]=a[i]+b[i];
}
//验证c数组
// for(int i=0;i<len;i++){
// cout<<c[i];
// }
// //cout<<len<<endl;
// //算进位
for(int i=0;i<len;i++){
if(c[i]>9){
c[i]=c[i]%10;
c[i+1]=c[i+1]+1;
}
}
// //再次验证c数组
// //for(int i=0;i<len;i++){
// //cout<<c[i]
// //}
// //倒序输出c数组,c数组的长度是多少
if(c[len]!=0) len=len+1;
//cout<<len<<endl;
for(int i=len-1;i>=0;i--){
cout<<c[i];
}
return 0;
}
/**************************************************************
Problem: 1268
User: huxuanchen
Language: C++
Result: Accepted
Time:29 ms
Memory:2080 kb
****************************************************************/