public UnsignedInt128 divideConstructive(int right) {
    UnsignedInt128 ret = new UnsignedInt128(this);
    ret.divideDestructive(right);
    return ret;
  }
This version returns the result as a new object, not modifying the give
objects. Note that this method cannot receive remainder. Use destructive
version for it.

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