code: public Money multipliedBy(BigDecimal valueToMultiplyBy, RoundingMode roundingMode) {
          return with(money.multiplyRetainScale(valueToMultiplyBy, roundingMode));
      }
docs: Returns a copy of this monetary value multiplied by the specified value.
  <p>
  This takes this amount and multiplies it by the specified value, rounding
  the result is rounded as specified.
  <p>
  This instance is immutable and unaffected by this method.
  
  @param valueToMultiplyBy  the scalar value to multiply by, not null
  @param roundingMode  the rounding mode to use to bring the decimal places back in line, not null
  @return the new multiplied instance, never null
  @throws ArithmeticException if the rounding fails