contravariant 1.2.*