code: public BigMoney multipliedBy(long valueToMultiplyBy) {
          if (valueToMultiplyBy == 1) {
              return this;
          }
          BigDecimal newAmount = amount.multiply(BigDecimal.valueOf(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 scale of this money.
  For example, 'USD 1.13' multiplied by '2' gives 'USD 2.26'.
  <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