class DrngImpl implements Drng {

  @Override
  public BigInteger nextBigInteger(BigInteger limit) {
    if (limit.signum() < 1) {
      throw new IllegalArgumentException("Limit must be strictly positive, but is: " + limit);
    }
    int bitSize = limit.bitLength();
    byte[] bytes = getBytes(bitSize);
    BigInteger result = new BigInteger(1, bytes);
    return result.compareTo(limit) < 0 ? result : nextBigInteger(limit);
  }

  public  DrngImpl(Drbg drbg);

}