functor
  (Elt : sig
           type 'a t
           val of_int : int -> int Container_unit_tests.t
           val to_int : int Container_unit_tests.t -> int
         end->
  functor
    (Container : sig
                   type 'a t
                   val mem :
                     ?equal:('Elt.t -> 'Elt.t -> bool) ->
                     'a t -> 'Elt.t -> bool
                   val length : 'a t -> int
                   val is_empty : 'a t -> bool
                   val iter : 'a t -> f:('Elt.t -> unit) -> unit
                   val fold :
                     'a t ->
                     init:'accum ->
                     f:('accum -> 'Elt.t -> 'accum) -> 'accum
                   val exists : 'a t -> f:('Elt.t -> bool) -> bool
                   val for_all : 'a t -> f:('Elt.t -> bool) -> bool
                   val count : 'a t -> f:('Elt.t -> bool) -> int
                   val find : 'a t -> f:('Elt.t -> bool) -> 'Elt.t option
                   val find_map :
                     'a t -> f:('Elt.t -> 'b option) -> 'b option
                   val to_list : 'a t -> 'Elt.t list
                   val to_array : 'a t -> 'Elt.t array
                   val of_list : 'Elt.t list -> 'Container_unit_tests.t
                   val t_of_sexp :
                     (Sexplib.Sexp.t -> 'a) ->
                     Sexplib.Sexp.t -> 'Container_unit_tests.t
                   val sexp_of_t :
                     ('-> Sexplib.Sexp.t) ->
                     'Container_unit_tests.t -> Sexplib.Sexp.t
                 end->
    sig
      val mem :
        ?equal:('Elt.t -> 'Elt.t -> bool) ->
        'Container.t -> 'Elt.t -> bool
      val length : 'Container.t -> int
      val is_empty : 'Container.t -> bool
      val iter : 'Container.t -> f:('Elt.t -> unit) -> unit
      val fold :
        'Container.t ->
        init:'accum -> f:('accum -> 'Elt.t -> 'accum) -> 'accum
      val exists : 'Container.t -> f:('Elt.t -> bool) -> bool
      val for_all : 'Container.t -> f:('Elt.t -> bool) -> bool
      val count : 'Container.t -> f:('Elt.t -> bool) -> int
      val find : 'Container.t -> f:('Elt.t -> bool) -> 'Elt.t option
      val find_map : 'Container.t -> f:('Elt.t -> 'b option) -> 'b option
      val to_list : 'Container.t -> 'Elt.t list
      val to_array : 'Container.t -> 'Elt.t array
      val t_of_sexp :
        (Sexplib.Sexp.t -> 'a) -> Sexplib.Sexp.t -> 'Container.t
      val sexp_of_t :
        ('-> Sexplib.Sexp.t) -> 'Container.t -> Sexplib.Sexp.t
    end