functor (M : S1) ->
functor
(M : sig
val length : 'a M.container -> int
val is_empty : 'a M.container -> bool
val iter : 'a M.container -> f:('a -> unit) -> unit
val fold : 'a M.container -> init:'b -> f:('b -> 'a -> 'b) -> 'b
val exists : 'a M.container -> f:('a -> bool) -> bool
val for_all : 'a M.container -> f:('a -> bool) -> bool
val find : 'a M.container -> f:('a -> bool) -> 'a option
val to_list : 'a M.container -> 'a list
val to_array : 'a M.container -> 'a array
end) ->
sig end