sig
  type 'a t
  val make : ('-> '-> int) -> 'a list -> 'Biocaml_histogram.t option
  val to_list : 'Biocaml_histogram.t -> (('a * 'a) * float) list
  val copy : 'Biocaml_histogram.t -> 'Biocaml_histogram.t
  val bin : 'Biocaml_histogram.t -> int -> ('a * 'a) option
  val bin_exn : 'Biocaml_histogram.t -> int -> 'a * 'a
  val count : 'Biocaml_histogram.t -> int -> float option
  val count_exn : 'Biocaml_histogram.t -> int -> float
  val num_bins : 'Biocaml_histogram.t -> int
  val minimum : 'Biocaml_histogram.t -> 'a
  val maximum : 'Biocaml_histogram.t -> 'a
  val increment :
    ?delt:float -> 'Biocaml_histogram.t -> '-> 'Biocaml_histogram.t
  val reset : 'Biocaml_histogram.t -> 'Biocaml_histogram.t
  val find_bin_index : 'Biocaml_histogram.t -> '-> int option
  val in_range : 'Biocaml_histogram.t -> '-> bool
  val make_uniform :
    float ->
    float -> int -> (float Biocaml_histogram.t, string) Core.Std.Result.t
end