sig
type t
val make : unit -> Group.GROUP.t
val make_one : Group.contest -> Group.GROUP.t
val iteri : (int -> Group.contest -> unit) -> Group.GROUP.t -> unit
val length : Group.GROUP.t -> int
val contains : (Group.contest -> bool) -> Group.GROUP.t -> bool
val first : Group.GROUP.t -> Group.contest option
val add : Group.contest -> Group.GROUP.t -> unit
val compare_length_then_first : Group.GROUP.t -> Group.GROUP.t -> int
val match_first :
Group.contest -> Group.GROUP.t -> (Entry.slot -> 'a) -> bool
val extract_first_first : Group.GROUP.t -> (Entry.slot -> 'a) -> 'a
val sort : (Group.contest -> Group.contest -> int) -> Group.GROUP.t -> unit
end