

class Fraction:

    # self.__numerator
    # self.__denominator

    def __init__(self, n, d):
        self.__numerator = n
        if d != 0:
            self.__denominator = d
        else:
            self.__denominator = 1


    # assuming f1 and f2 are Fraction objects
    #   f1 + f2 will call __add__ method
    #   f1 goes into self
    #   f2 goes into rhs
    def __add__(self, rhs):
        newdenom = self.__denominator * rhs.__denominator
        newnumer = self.__numerator * rhs.__denominator + \
                   rhs.__numerator * self.__denominator
        return Fraction(newnumer, newdenom)


    def __truediv__(self, rhs):
        newnumer = self.__numerator * rhs.__denominator
        newdenom = rhs.__numerator * self.__denominator
        return Fraction(newnumer, newdenom)

    def __str__(self):
        return str(self.__numerator) + ' / ' + str(self.__denominator)
        
