test cases for function co- and contravariance
test cases for covariant lists
testcases for invariance of variables