Generic
added a contravariant dep
profunctors