module V1 : functor (Binable : S2) -> functor (M : sig ... end) -> S2 with type (a, b) t := (a, b) M.t