functor (X : S-> HI