I don't think about it. I try making my type parameters contravariant and covariant and go with whichever one the compiler accepts.
Do you know what that means