sig
  type container
  type elt
  val length : Container.S0.container -> int
  val is_empty : Container.S0.container -> bool
  val iter : Container.S0.container -> f:(Container.S0.elt -> unit) -> unit
  val fold :
    Container.S0.container ->
    init:'-> f:('-> Container.S0.elt -> 'a) -> 'a
  val exists : Container.S0.container -> f:(Container.S0.elt -> bool) -> bool
  val for_all :
    Container.S0.container -> f:(Container.S0.elt -> bool) -> bool
  val find :
    Container.S0.container ->
    f:(Container.S0.elt -> bool) -> Container.S0.elt option
  val to_list : Container.S0.container -> Container.S0.elt list
  val to_array : Container.S0.container -> Container.S0.elt array
end