class UniformIntVertex extends VertexImpl<IntegerTensor, IntegerVertex> implements IntegerVertex, ProbabilisticInteger, SamplableWithManyScalars<IntegerTensor>, LogProbGraphSupplier {

    @Override
    public double logProb(IntegerTensor value) {
        return UniformInt.withParameters(min.getValue(), max.getValue()).logProb(value).sumNumber();
    }

    public  UniformIntVertex(@LoadShape long[] shape,
                            @LoadVertexParam(MIN_NAME) Vertex<IntegerTensor, ?> min,
                            @LoadVertexParam(MAX_NAME) Vertex<IntegerTensor, ?> max);
    public  UniformIntVertex(long[] shape, int min, int max);
    public  UniformIntVertex(long[] shape, IntegerTensor min, IntegerTensor max);
    public  UniformIntVertex(long[] shape, Vertex<IntegerTensor, ?> min, int max);
    public  UniformIntVertex(long[] shape, int min, Vertex<IntegerTensor, ?> max);
    @ExportVertexToPythonBindings public  UniformIntVertex(Vertex<IntegerTensor, ?> min, Vertex<IntegerTensor, ?> max);
    public  UniformIntVertex(Vertex<IntegerTensor, ?> min, int max);
    public  UniformIntVertex(int min, Vertex<IntegerTensor, ?> max);
    public  UniformIntVertex(int min, int max);

}