sig
  type ('a, 'b) t
  val typerep_of_t :
    'Std_internal.Typerep.t ->
    'Std_internal.Typerep.t -> ('a, 'b) t Std_internal.Typerep.t
  val typename_of_t : 'Typename.t -> 'Typename.t -> ('a, 'b) t Typename.t
  val compute : 'X.t -> 'X.t -> ('a, 'b) Type_generic_intf.M.S2.t X.t
end