functor (L : Level_sig->
  functor (S : Config->
    sig
      val level : L.t Pervasives.ref
      val output : S.t BatIO.output Pervasives.ref
      val log : ?fp:string -> L.t -> string -> unit
      val logf :
        ?fp:string ->
        L.t -> ('a, S.t BatIO.output, unit) Pervasives.format -> 'a
    end