code: @Override
      public Money divide(Number divisor) {
          if (NumberVerifier.isInfinityAndNotNaN(divisor)) {
              return Money.of(0, getCurrency());
          }
          BigDecimal divisorBD = MoneyUtils.getBigDecimal(divisor);
          if (divisorBD.equals(BigDecimal.ONE)) {
              return this;
          }
          MathContext mc = MoneyUtils.getMathContext(monetaryContext, RoundingMode.HALF_EVEN);
          int maxScale = monetaryContext.getMaxScale();
          if(maxScale>0){
              return new Money(this.number.divide(divisorBD, maxScale, mc.getRoundingMode()), getCurrency(), monetaryContext);
          }
          return new Money(this.number.divide(divisorBD, mc), getCurrency(), monetaryContext);
      }
docs: /*
  (non-Javadoc)
  
  @see javax.money.MonetaryAmount#divide(java.lang.Number)