docs: protected BigInteger toBigInteger(Number number){
  		if (number == null){
  			return null;
  		}
  		Class<?> claz = number.getClass();
  		if (claz == BigInteger.class){
  			return (BigInteger)number;
  		}else if (claz == BigDecimal.class){
  			return ((BigDecimal)number).toBigInteger();
  		}else if (claz == Double.class){
  			return new BigDecimal((Double)number).toBigInteger();
  		}else if (claz == Float.class){
  			return new BigDecimal((Float)number).toBigInteger();
  		}else{
  			return BigInteger.valueOf(number.longValue());
  		}
  	}