#include<iostream>
#include<cstdlib>
using namespace std;
long long a,b,c,d;
//最大公约数
long long gcd(long long t1,long long t2){
if(t2==0){
return abs(t1);
}
return gcd(t2,t1%t2);
}
//进行格式化分数运算
void formatFaction(long long m,long long n){
if(n==0){//如果分母为0
cout<<"Inf";
return ;
}
if(m==0){//如果分子为0
cout<<"0";
return ;
}
//判断是否为负数
bool isNegative((m<0&&n>0)||(m>0&&n<0));
//取绝对值
m=abs(m);
n=abs(n);
//计算整数部分
long long integert=m/n;
//计算分子部分
long long numerator=m%n;
//如果是负数
if(isNegative){
cout<<"(-";
}
//如果有整数部分
if(integert!=0){
cout<<integert;
}
//如果分数为0
if(numerator==0){
if(isNegative){
cout<<")";
}
return;
}
//如果整数和分数都存在
if(integert!=0){
cout<<" ";
}
//约分分数部分
long long divisor=gcd(numerator,n);
numerator/=divisor;
n/=divisor;
//输出分数部分
cout<<numerator<<"/"<<n;
//输出符号结束
if(isNegative){
cout<<")";
}
}
int main(){
char slash;
//读取第一个分数
cin>>a>>slash>>b;
//读取第二个分数
cin>>c>>slash>>d;
//进行加法运算
formatFaction(a,b);
cout<<" + ";
formatFaction(c,d);
cout<<" = ";
formatFaction(a*d+b*c,b*d);
cout<<endl;
//进行减法运算
formatFaction(a,b);
cout<<" - ";
formatFaction(c,d);
cout<<" = ";
formatFaction(a*d-b*c,b*d);
cout<<endl;
//进行乘法运算
formatFaction(a,b);
cout<<" * ";
formatFaction(c,d);
cout<<" = ";
formatFaction(a*c,b*d);
cout<<endl;
//进行除法运算
formatFaction(a,b);
cout<<" / ";
formatFaction(c,d);
cout<<" = ";
if(c==0){
cout<<"Inf";
}else{
formatFaction(a*d,b*c);
}
cout<<endl;
return 0;
}