#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];
	} 
	for(int i=0;i<len;i++){
		if(c[i]>9){
			c[i]=c[i]%10;
			c[i+1]=c[i+1]+1;
		}
    }
    //再次验证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: chenyaohuo
	Language: C++
	Result: Accepted
	Time:29 ms
	Memory:2080 kb
****************************************************************/