sig
  type ('a, 'b, 'c, 'd, 'e) t
  val typerep_of_t :
    'Std_internal.Typerep.t ->
    'Std_internal.Typerep.t ->
    'Std_internal.Typerep.t ->
    'Std_internal.Typerep.t ->
    'Std_internal.Typerep.t ->
    ('a, 'b, 'c, 'd, 'e) Typerepable.S5.t Std_internal.Typerep.t
  val typename_of_t :
    'Typename.t ->
    'Typename.t ->
    'Typename.t ->
    'Typename.t ->
    'Typename.t -> ('a, 'b, 'c, 'd, 'e) Typerepable.S5.t Typename.t
end