code: public BigMoney multipliedBy(BigDecimal valueToMultiplyBy) {
          MoneyUtils.checkNotNull(valueToMultiplyBy, "Multiplier must not be null");
          if (valueToMultiplyBy.compareTo(BigDecimal.ONE) == 0) {
              return this;
          }
          BigDecimal newAmount = amount.multiply(valueToMultiplyBy);
          return BigMoney.of(currency, newAmount);
      }
docs: Returns a copy of this monetary value multiplied by the specified value.
  <p>
  No precision is lost in the result.
  The result has a scale equal to the sum of the two scales.
  For example, 'USD 1.13' multiplied by '2.5' gives 'USD 2.825'.
  <p>
  This instance is immutable and unaffected by this method.
  
  @param valueToMultiplyBy  the scalar value to multiply by, not null
  @return the new multiplied instance, never null