public static void Main()
ISomeCovariantInterface<object> covariant = new SomeClass<string>();
ISomeInterface<object> invariant = new SomeClass<string>();
interface ISomeInterface<T>
interface ISomeCovariantInterface<out T>
class SomeClass<T> : ISomeInterface<T>, ISomeCovariantInterface<T>