public UnsignedInt128 divideConstructive(UnsignedInt128 right,
      UnsignedInt128 remainder) {
    UnsignedInt128 ret = new UnsignedInt128(this);
    ret.divideDestructive(right, remainder);
    return ret;
  }
This version returns the result as a new object, not modifying the give
objects.

@param right
         right operand
@param remainder
         object to receive remainder
@return operation result as a new object
common/src/java/org/apache/hadoop/hive/common/type/UnsignedInt128.java