//shengsun
//高精度非负数加法 char读入
#include <stdio.h>
#include <string.h>
const int LEN=1000;
//高精度非负数加法
//参数(a,b: 字符串表示的加数; result: 字符串表示的结果)
//注: 传入result时最好将其初始化为0
void add(char *a,char *b,char *result)
{
int temp[LEN]={0};
int i,j,carry=0,len_t=0,len_c=0;
int len_a=strlen(a);
int len_b=strlen(b);
for(i=len_a-1,j=len_b-1;i>=0&&j>=0;i--,j--)
{
temp[len_t++]=(a[i]-'0'+b[j]-'0'+carry)%10;
carry=(a[i]-'0'+b[j]-'0'+carry)/10;
}
while(i>=0) //处理a位数比b多的情况
{
temp[len_t++]=(a[i]-'0'+carry)%10;
carry=(a[i--]-'0'+carry)/10;
}
while(j>=0) //处理b位数比a多的情况
{
temp[len_t++]=(b[j]-'0'+carry)%10;
carry=(b[j--]-'0'+carry)/10;
}
if(carry>0) //处理最高位有进位的情况
{
temp[len_t++]=1;
}
len_t--;
while(len_t>=0) //将结果转换为字符串
{
result[len_c++]=temp[len_t--]+'0';
}
}
int main()
{
char a[LEN-1],b[LEN-1],result[LEN];
while(scanf("%s%s",a,b)!=EOF)
{
memset(result,0,sizeof(result));
add(a,b,result);
printf("%s/n",result);
}
}