#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string addition(string s1, string s2)
{
int a[10005] = {}, b[10005] = {}, c[10009] = {};
for(int i = 0; i < s1.size(); i++)
{
a[i]=s1[s1.size() - i - 1]-'0';
}
for(int i = 0; i < s2.size(); i++)
{
b[i]=s2[s2.size() - i - 1]-'0';
}
int len = max(s1.size(), s2.size());
for(int i = 0; i < len; i++)
{
c[i] += a[i] + b[i];
if(c[i] > 9)
{
c[i + 1]+=c[i]/10;
c[i] %= 10;
}
}
if(c[len] != 0)
{
len++;
}
while(c[len]=='0' && len>0)
{
len--;
}
string ans="";
for(int i = len - 1; i >= 0; i--)
{
ans = ans+(char)(c[i]+48);
}
return ans;
}
bool check(string s1,string s2)
{
if(s1.size()>s2.size())
{
return 1;
}
else if(s1.size()<s2.size())
{
return 0;
}
else
{
if(s1>=s2)
{
return 1;
}
else
{
return 0;
}
}
}
string subtraction(string s1, string s2)
{
if(s1==s2)
{
string ans;
ans="0";
return ans;
}
bool ok = check(s1,s2);
if(!ok)
{
swap(s1,s2);
}
int a[10005] = {}, b[10005] = {}, c[10005] = {};
for(int i = 0; i < s1.size(); i++)
{
a[i]=s1[s1.size() - i - 1]-'0';
}
for(int i = 0; i < s2.size(); i++)
{
b[i]=s2[s2.size() - i - 1]-'0';
}
int len = max(s1.size(), s2.size());
for(int i = 0; i < len; i++)
{
c[i]+=a[i]-b[i];
if(c[i]<0)
{
c[i+1]--;
c[i]+=10;
}
}
while(c[len]==0 && len>0)
{
len--;
}
string ans="";
for(int i = len ; i >= 0; i--)
{
ans = ans+(char)(c[i]+48);
}
if(!ok)
{
ans="-"+ans;
}
return ans;
}
string multiplication(string s1,string s2)
{
reverse(s1.begin(),s1.end());
reverse(s2.begin(),s2.end());
int a[20005]={},b[20005]={},ans[50000]={};
for(int i=0;i<s1.size();i++)
{
a[i]=s1[i]-'0';
}
for(int i=0;i<s2.size();i++)
{
b[i]=s2[i]-'0';
}
for(int i=0;i<s1.size();i++)
{
for(int j=0;j<s2.size();j++)
{
ans[i+j]+=a[i]*b[j];
}
}
for(int i=0;i<s1.size()+s2.size();i++)
{
ans[i+1]+=ans[i]/10;
ans[i]%=10;
}
int flag=0;
string res;
for(int i=s1.size()+s2.size();i>=0;i--)
{
if(ans[i]>0)
{
flag=1;
}
if(flag)
{
res+=ans[i]+'0';
}
}
if(!flag)
{
res+='0';
}
return res;
}
string Division(string s,string x)
{
int ans[10009]={};
string S="";
for(int i=0;i<s.size();i++)
{
S=S+s[i];
while(check(S,x))
{
S=subtraction(S,x);
ans[i]++;
}
if(s=="0")
{
s="";
}
}
string res;
int flag=0;
for(int i=0;i<s.size();i++)
{
if(ans[i]>0)
{
flag=1;
}
if(flag)
{
res=res+char(ans[i]+'0');
}
}
if(!flag)
{
res='0';
}
return res;
}
int main()
{
string a,b;
cin>>a>>b;
string add,sub,mul,div,mod;
add=addition(a,b);
sub=subtraction(a,b);
mul=multiplication(a,b);
div=Division(a,b);
mod=subtraction(a,multiplication(div,b));
cout<<add<<'\n'<<sub<<'\n'<<mul<<'\n'<<div<<'\n'<<mod;
return 0;
}