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