functor (X : AdditionalInfo) ->   sig     val fprint_graph : Format.formatter -> Printer(X).t -> unit     val output_graph : out_channel -> Printer(X).t -> unit   end