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