//	IV окружной этап Всероссийской олимпиады школьников по информатике
//	24 - 28 марта 2006 г.
//	г. Петрозаводск
//
//	Задача D. Операции
//	Авторы: А. Чурюмов, А. Николаевский
//	Решение: И. Архипов

import java.io.*;
import java.util.*;

public class Oper_ia {
	private static final String IFILE = "oper.in";
	private static final String OFILE = "oper.out";
	//private static final int MAXN = 10;
	
	Scanner in;
	PrintWriter out;
	
	boolean correct(String s)
	{
		int n = s.length();
		if(n == 0 || n > 12)return false;
		int j = -1, i = 0;
		while(i < n)
		{
			if(s.charAt(i) == '.')
			{
				j = i;
				break;
			}
			i++;
		}
		if(j == -1)
		{
			if(n > 3)return false;
			else return true;
		}
		else
			if(j == 0 || j > 3)return false;
		int k = -1;
		j++;
		i = j;
		while (i < n)
		{
			if (s.charAt(i) == '(')
			{
				k = i;
				break;
			}
			i++;
		}
		if(k == -1)
		{
			if(n-i > 3)return false;
			else return true;
		}
		else
			if(k-j > 3)return false;
		k++;
		if(n-k-1 == 0 || n-k-1 > 3)return false;
		
		return true;
	}
	
	public long gcd(long a, long b)
	{
		return (b == 0? a: gcd(b, a%b));
	}
	
	class fraction
	{
		public long a;
		public long b;
		//fraction(){};
	}
	
	fraction toFrac(String s)
	{	
		int [] ten = {1,10,100,1000};
		int [] nin = {0,9,99,999,9999};//!!!
		int n = s.length();
		int j=-1;
		int l1 = 0, l2 = 0, l3 = 0;
		for(int i=0;i<n;i++)
			if(s.charAt(i) == '.')
			{	
				l1++;
				j = i;
				break;
			}
		if(j==-1)
		{
			fraction ans = new fraction();
			ans.a = Integer.valueOf(s);
			ans.b = 1;
			return ans;
		}
		int a = Integer.valueOf(s.substring(0,j));
		int b = 1;
		int i;
		for(i=j+1;i<n && s.charAt(i) != '(';i++)
		{
			l2++;
			a = a *10 + Integer.valueOf(s.substring(i,i+1));
			b *= 10;
		}
		if(i == n)
		{
			fraction ans = new fraction();
			ans.a = a;
			ans.b = b;
			return ans;
		}
		fraction cur = new fraction();
		cur.a = a;cur.b = b;
		fraction ans = new fraction();
		ans.a = Integer.valueOf(s.substring(i+1,n-1));
		l3 = n-i-2;
		ans.b = nin[l3]*ten[l2];//!! 3 2
		ans = norm(ans);      //!!!
		return sum(ans,cur);
	}
	
	fraction norm(fraction a)
	{
		long d = gcd(a.a, a.b);
		a.a /= d; a.b /= d;
		return a;
	}
	
	fraction sum(fraction a, fraction b)
	{	
		fraction ans = new fraction();
		long d = gcd(a.b, b.b);
		ans.b = (a.b/d)*b.b;
		ans.a = (ans.b/a.b)*a.a + (ans.b/b.b)*b.a;
		//ans.a = a.a*b.b + b.a*a.b;
		//ans.b = a.b * b.b;
		return ans;
	}
	
	public void run()throws IOException
	{	
		in = new Scanner(new File(IFILE));
		out = new PrintWriter(new File(OFILE));
		String s1 = in.nextLine();
		String s2 = in.nextLine();
		
		
		fraction a = toFrac(s1);
		fraction b = toFrac(s2);
		
		fraction ans =sum(a,b);
		norm(ans);
		
		out.print(ans.a+"/"+ans.b);
		out.close();
	}
	
	public static void main(String[] args) throws IOException {
		Locale.setDefault(Locale.US);
		new Oper_ia().run();
	}

}
