Addition of Big Integers

Given two integers $A$ and $B$, compute the sum, $A + B$.

Input

Two integers $A$ and $B$ separated by a space character are given in a line.

Output

Print the sum in a line.

Constraints

* $-1 \times 10^{100000} \leq A, B \leq 10^{100000}$



Sample Input 1


5 8


Sample Output 1


13


Sample Input 2


100 25


Sample Output 2


125


Sample Input 3


-1 1


Sample Output 3


0


Sample Input 4


12 -3


Sample Output 4


9






Example

Input

5 8


Output

13
//By Vlgd
#include<bits/stdc++.h>
using namespace std;
const int M=1000000;
int a[M]={0},b[M]={0};
int ans[M]={0},len;
void show(int xa,int x[]){for(int i=0;i<fabs(xa);i++) printf("%d",x[i]);printf("\n");}
void add(int ma,int mb){
	int len;
	for(int i=0;i<ma/2;i++) swap(a[i],a[ma-1-i]);
	for(int i=0;i<mb/2;i++) swap(b[i],b[mb-1-i]);
	for(len=0;len<ma||len<mb;len++){
		if(a[len]+b[len]+ans[len]>9) ans[len+1]++;
		ans[len]=(a[len]+b[len]+ans[len])%10;
	}
	if(ans[len]!=0) len++;
	for(int i=0;i<len/2;i++) swap(ans[i],ans[len-1-i]);
	show(len,ans);
} 
int sub(int ma,int mb){
	int len,f=1;
	if(ma<mb) f=-1;
	else if(ma==mb) for(int i=0;i<ma;i++) if(a[i]<b[i]) {f=-1;break;}
	if(f==-1){swap(a,b);swap(ma,mb);}
	for(int i=0;i<ma/2;i++) swap(a[i],a[ma-1-i]);
	for(int i=0;i<mb/2;i++) swap(b[i],b[mb-1-i]);
	for(len=0;len<ma;len++){
		ans[len]=(ans[len]+a[len]-b[len]+10)%10;
		if(a[len]-b[len]<0) a[len+1]--;
	}
	if(len>1&&ans[len-1]==0) len--;
	for(int i=0;i<len/2;i++) swap(ans[i],ans[len-1-i]);
	if(f==-1) printf("-");	
	show(len,ans);
	return f*len;
}
inline int read(int x[]){
	int f=1,cnt=0;
	char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
	while(ch>='0'&&ch<='9'){x[cnt++]=ch-'0';ch=getchar();}
	return cnt*f;
} 
int main(){
	int ma=read(a);
	int mb=read(b);
	if (ma*mb>=0){ 
		if(ma<0||mb<0) printf("-"); 
		add(fabs(ma),fabs(mb));
	}
	else{
		if(ma<0){swap(a,b);swap(ma,mb);}
		sub(fabs(ma),fabs(mb));
	}
	return 0;
}
//17 18

