a few more comments on contravariant type inheritance