type t = private {num : int;out_of : int;
}val partition : int -> t listval of_string : string -> t optionval to_string : t -> stringval apply : t -> 'a list -> 'a listval apply_slices : t list -> 'a list -> 'a listval tests : (string * (unit -> unit)) list