functor
(IntVecV : sig
type t
type elt = int
val make : ?size:int -> unit -> t
val set : t -> int -> elt -> unit
val get : t -> int -> elt
val clear : t -> unit
val index_max : t -> int
val length : t -> int
val capacity : t -> int
val blit : t -> int -> t -> int -> int -> unit
val default : unit -> elt
end) (IntVecE : sig
type t
type elt = int
val make : ?size:int -> unit -> t
val set : t -> int -> elt -> unit
val get : t -> int -> elt
val clear : t -> unit
val index_max : t -> int
val length : t -> int
val capacity : t -> int
val blit : t -> int -> t -> int -> int -> unit
val default : unit -> elt
end) ->
S