add Prop#contramap