Graph.Classic
module type S = sig ... end
module P : functor (G : sig ... end) -> sig ... end
module I : functor (G : sig ... end) -> sig ... end