#include<bits/stdc++.h>
using namespace std;
const int maxn=10100;
char tmp[maxn],sa[maxn],sb[maxn];
int t,a[maxn],b[maxn],c[maxn];
int main(){
scanf("%s",sa);
scanf("%s",sb);
int la=strlen(sa);
int lb=strlen(sb);
if(la<lb||((la==lb)&&strcmp(sa,sb)<0)){
strcpy(tmp,sa);
strcpy(sa,sb);
strcpy(sb,tmp);
swap(la,lb);
printf("%c",'-');
}
int lc=la>lb?la:lb;
for(int i=0;i<la;i++) a[la-i]=sa[i]-'0';
for(int i=0;i<lb;i++) b[lb-i]=sb[i]-'0';
for(int i=1;i<=lc;i++){
if(a[i]<b[i]){
a[i]+=10;
a[i+1]--;
}
c[i]=a[i]-b[i];
}
while(c[lc]==0) lc--;
for(int i=lc;i>=1;i--) printf("%d",c[i]);
return 0;
}
//我也不知道怎么回事,数组也够啊,总体也没看出是啥事,就差一个点就满分了,帮忙看一下