#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]-'0';
    }
        //倒过来将s2字符串里的每个数转成数字放入数组b 
    for(int i=s2.size()-1;i>=0;i--){
        b[s2.size()-1-i]=s2[i]-'0';
    }
    //验证一下a数组和b数组是否有倒叙
//   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数组当中
    //判断一下加的次数,取决于s1和s2谁更长
    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]; 
//  } 
    //进位
    for(int i=0;i<len;i++){
        if(c[i]>9){
            c[i+1]=c[i+1]+c[i]/10;
            c[i]=c[i]%10;
        }
    } 
    //再次验证
    if(c[len]!=0) len++;
//  for(int i=0;i<len;i++){
//        cout<<c[i]; 
//  } 
    //倒叙输出
    for(int i=len-1;i>=0;i--){
        cout<<c[i];
    } 
      
    return 0;
}
 
/**************************************************************
	Problem: 1268
	User: chenlingxuan
	Language: C++
	Result: Accepted
	Time:26 ms
	Memory:2080 kb
****************************************************************/