Cont r ~ Contravariant.Adjoint (Op r) (Op r) Conts r ~ Contravariant.AdjointT (Op r) (Op r) ContsT r w m ~ Contravariant.AdjointT (Op (m r)) (Op (m r)) w
contramapWithRep f p ≡ tabulate $ either (index p) id . f