code: public BigRational add(BigRational value) {
  		if (denominator.equals(value.denominator)) {
  			return of(numerator.add(value.numerator), denominator);
  		}
  
  		BigDecimal n = numerator.multiply(value.denominator).add(value.numerator.multiply(denominator));
  		BigDecimal d = denominator.multiply(value.denominator);
  		return of(n, d);
  	}
docs: Calculates the addition (+) of this rational number and the specified argument.
  
  <p>The result has no loss of precision.</p>
  
  @param value the rational number to add
  @return the resulting rational number