//高精度算法-加法
#include "stdio.h"
#include "string.h"
#define N 100000
int gjd(int C[],int A[],int B[],int k1,int k2)
{
int t=0,i;
for(i=0;i<k1||i<k2;i++)
{
if(i<k1)
t=t+A[i];
if(i<k2)
t=t+B[i];
C[i]=t%10;
t=t/10;
}
if(t)
C[i++]=1;
return i;
}
int main()
{
char s1[N],s2[N];
char s3[N];
int A[N],B[N],C[N];
int k1=0,k2=0,k3=0;
gets(s1);
gets(s2);
int i,j;
for(i=0,j=strlen(s1)-1;i<j;i++,j--)
{
char t;
t=s1[i];s1[i]=s1[j];s1[j]=t;
}
for(i=0,j=strlen(s2)-1;i<j;i++,j--)
{
char t;
t=s2[i];s2[i]=s2[j];s2[j]=t;
}
for(i=0;i<strlen(s1);i++)
A[i]=s1[i]-48;
k1=i;
for(i=0;i<strlen(s2);i++)
B[i]=s2[i]-48;
k2=i;
k3=gjd(C,A,B,k1,k2);
for(i=k3-1;i>=0;i--)
printf("%d",C[i]);
}