#include<iostream>
#include<string>
#include<vector>
using namespace std;
int cmp(vector<int>n,vector<int>m)
{
if(n.size()>m.size()||n==m){
return 1;
}
else if(n.size()==m.size()){
for(int i=n.size()-1;i>=0;i--)
{
if(n[i]!=m[i])return n[i]>m[i];
}
}
else if(n.size()<m.size())return 0;
}
vector<int> sub(vector<int>&n,vector<int>&m)
{
vector<int>c;
int t=0;
for(int i=0;i<n.size();i++){
t=n[i]-t;
if(i<m.size())t-=m[i];
c.push_back((t+10)%10);//在t<0时和t>0时,都成立
if(t<0)t=1;
else t=0;
}
while(c.size()>1&&c.back()==0)c.pop_back();//除去前导0;
return c;
}
int main()
{
string s,d;
cin>>s>>d;
vector<int>n,m;
for(int i=s.size()-1;i>=0;i--)n.push_back(s[i]-'0');
for(int i=d.size()-1;i>=0;i--)m.push_back(d[i]-'0');
vector<int>c;
if(cmp(n,m)){
c=sub(n,m);
for(int i=c.size()-1;i>=0;i--){
printf("%d",c[i]);
}
}
else {
c=sub(m,n);
printf("-");
for(int i=c.size()-1;i>=0;i--)printf("%d",c[i]);
}
}