class BaseUInt256Value implements UInt256Value<T> {

  @Override
  public T addMod(T value, UInt256 modulus) {
    return addMod(value.toUInt256(), modulus);
  }

  protected  BaseUInt256Value(UInt256 value, Function<UInt256, T> ctor);
  protected  BaseUInt256Value(long value, Function<UInt256, T> ctor);
  protected  BaseUInt256Value(BigInteger value, Function<UInt256, T> ctor);

}