#include <stdio.h>
#include <string.h>
int stack[110]={},stack1[110]={},stack2[110]={};
int top=-1,top1=-1,top2=-1;
void push(int a)
{
top++;
stack[top]=a;
}
void push1(int a)
{
top1++;
stack1[top1]=a;
}
void push2(int a)
{
top2++;
stack2[top2]=a;
}
int pop()
{
if(top==-1) return 0;
return stack[top--];
}
int pop1()
{
if(top1==-1) return 0;
return stack1[top1--];
}
int pop2()
{
if(top2==-1) return 0;
return stack2[top2--];
}
int main()
{
char n[110]={},a[110]={};
int i,t, x, y, z, c=0; // c :올림수
scanf("%s %s",n,a);
for(i=0;n[i]!=NULL;i++)
{
push1(n[i]-'0');
}
for(i=0;a[i]!=NULL;i++)
{
push2(a[i]-'0');
}
//성일이가 혼!자! 작성해보기!!
while(1)
{
if(top1==-1 && top2==-1)
{
break;
}
x=pop1();
y=pop2();
z=x+y+c;
push(z%10);
c=z/10;
if(c!=0) pop();
}
while(top!=-1)
{
printf("%d",pop());
}
return 0;
}