1 import java.util.Map; 2 3 public class MemberSelectTypes<T extends java.lang.@Anno(0) Object & java.lang.@Anno(1) Comparable> 4 extends java.lang.@Anno(2) Object implements java.io.@Anno(3) Serializable { 5 6 class Inner { 7 void m(@A MemberSelectTypes<T>.Inner this) {} 8 } 9 10 static class StaticInner { 11 void m(MemberSelectTypes.@B StaticInner this) {} 12 } 13 14 java.lang.@C Object o; 15 java.util.Map.@D Entry<java.lang.@E String, java.util.Map.@F Entry<Object, Object>> m1; 16 Map.@G Entry<java.lang.@H String, Map.@I Entry<Object, Object>> m2; 17 Map<@H MemberSelectTypes.Inner, MemberSelectTypes.@I StaticInner> m3; 18 Map.@G Entry<Map.@H Entry<Map.@I Entry<Map.@K Entry<Object, Object>, Object>, Object>, Object> m4; 19 @J MemberSelectTypes.Inner i; 20 MemberSelectTypes.@K StaticInner s; 21 22 java.lang.@L Object m(java.lang.@M Object o, @M MemberSelectTypes.Inner i, MemberSelectTypes.@M StaticInner s) { 23 java.lang.@N Object o2 = (java.lang.@O Object) o; 24 @N MemberSelectTypes.Inner i2 = (@O MemberSelectTypes.Inner) i; 25 MemberSelectTypes.@N StaticInner s2 = (MemberSelectTypes.@O StaticInner) s; 26 o2 = new java.lang.@P Object(); 27 i2 = new @P MemberSelectTypes.Inner(); 28 s2 = new MemberSelectTypes.@P StaticInner(); 29 java.lang.@Q Object[] os = new java.lang.@R Object[1]; 30 @Q MemberSelectTypes.Inner[] is = new @R MemberSelectTypes.Inner[1]; 31 MemberSelectTypes.@Q StaticInner[] ss = new MemberSelectTypes.@R StaticInner[1]; 32 boolean b = o instanceof java.lang.@S Object; 33 b = o instanceof @S MemberSelectTypes.Inner; 34 b = o instanceof MemberSelectTypes.@S StaticInner; 35 return o2; 36 } 37 } 38