functor (X : Input-> Bool