code: @Override
      public MonetaryAmountFactory<T> setAmount(MonetaryAmount amount) {
          this.currency = amount.getCurrency();
          this.number = amount.getNumber().numberValue(BigDecimal.class);
          this.monetaryContext = MonetaryContextBuilder.of(defaultMonetaryContext.getAmountType())
                  .importContext(amount.getContext()).build();
          return this;
      }
docs: Converts (if necessary) the given {@link MonetaryAmount} to a new {@link MonetaryAmount}
  instance, hereby supporting the {@link MonetaryContext} given.
  
  @param amount the amount to be converted, if necessary.
  @return an according Money instance.