functor (X : sig val profiling : bool end-> S