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