functor   (X : sig          val option_name : string          val help : string          val output_by_default : bool        end->   With_output