11 class A
<T
> : IIn
<T
>, IOut
<T
>
17 public static int Main ()
19 IIn
<string> a_string
= new A
<string> ();
20 IIn
<object> a_object
= new A
<object> ();
22 if (!(a_string
is IIn
<string>))
25 if ((a_string
is IIn
<object>))
28 if (!(a_object
is IIn
<string>))
31 if (!(a_object
is IIn
<object>))
34 IOut
<string> b_string
= new A
<string> ();
35 IOut
<object> b_object
= new A
<object> ();
37 if (!(b_string
is IOut
<string>))
40 if (!(b_string
is IOut
<object>))
43 if (b_object
is IOut
<string>)
46 if (!(b_object
is IOut
<object>))
49 Console
.WriteLine ("OK");