#include <iostream>
#include <cstring>
using namespace std;
void sub( char*str1,char* str2,char* c) //c返回结果
{
int flag=1; //1表示被减数str1大于减数str2,-1相反结果前要有负号
int i,j;
int len1=strlen(str1);
int len2=strlen(str2);
int max=len1>len2?len1:len2;
char *tmp;
if(len1<len2)
flag=-1;
else
{
if(len1==len2&&str1<str2)
flag=-1;
}
if(flag==1) //被减数长度大于减数长度,方便运算,要进行右对齐,减数前补0填充
{
j=len1-1;
for(i=len2-1;i>=0;i--)
{
str2[j--]=str2[i];
}
str2[len1]='\0';
for(i=j;i>=0;i--)
str2[i]='0';
}
else //减数长度大于被减数
{
j=len2-1;
for(i=len1-1;i>=0;i--)
{
str1[j--]=str1[i];
}
str1[len2]='\0';
for(i=j;i>=0;i--)
str1[i]='0';
}
cout<<"str1:"<<str1<<endl;
cout<<"str2:"<<str2<<endl;
int carry=0;
if(flag==-1)
{
tmp=str1;
str1=str2;
str2=tmp;
}
for(i=max-1;i>=0;i--) //每位进行减法运算
{
c[i]=(str1[i]-'0')-(str2[i]-'0')-carry+'0';
if(c[i]-'0'<0)
{
c[i]=c[i]+10;
carry=1;
}
else
{
carry=0;
}
}
int pos=0;
i=0,j=0;
while(c[pos]-'0'==0)
pos++;
if(pos==0&&flag==-1) //结果是负数要添负号
{
for(i=max-1;i>=0;i--)
c[i+1]=c[i];
c[0]='-';
c[max+1]='\0';
}
else
{
if(flag==-1)
{
j=1;
for(i=pos;i<max;i++)
c[j++]=c[i];
c[j]='\0';
c[0]='-';
}
else
{
j=0;
for(i=pos;i<max;i++)
c[j++]=c[i];
c[j]='\0';
}
}
}
int main()
{
char str1[30],str2[30];
char res[30];
while(cin>>str1>>str2)
{
sub(str1,str2,res);
cout<<res;
cout<<endl;
}
}