1 2 import java.io.*; 3 import java.util.*; 4 import java.lang.*; 5 import java.lang.reflect.*; 6 import java.lang.annotation.*; 7 8 9 class TypeAnnoCls0 { 10 11 } 12 13 @Target(ElementType.TYPE_USE) 14 @Retention(RetentionPolicy.RUNTIME) 15 @Repeatable(TypeAnno1Container.class) 16 @interface TypeAnno1 { 17 String value(); 18 } 19 @Target(ElementType.TYPE_USE) 20 @Retention(RetentionPolicy.RUNTIME) 21 @Repeatable(TypeAnno2Container.class) 22 @interface TypeAnno2 { 23 String value(); 24 } 25 @Target(ElementType.TYPE_USE) 26 @Retention(RetentionPolicy.RUNTIME) 27 @Repeatable(TypeAnno3Container.class) 28 @interface TypeAnno3 { 29 } 30 @Target(ElementType.TYPE_USE) 31 @Retention(RetentionPolicy.RUNTIME) 32 @interface TypeAnno1Container { 33 TypeAnno1[] value(); 34 } 35 @Target(ElementType.TYPE_USE) 36 @Retention(RetentionPolicy.RUNTIME) 37 @interface TypeAnno2Container { 38 TypeAnno2[] value(); 39 } 40 @Target(ElementType.TYPE_USE) 41 @Retention(RetentionPolicy.RUNTIME) 42 @interface TypeAnno3Container { 43 TypeAnno3[] value(); 44 } 45 46 class TypeAnnoCls1 { 47 48 } 49 50 51 class TypeAnnoCls2 extends Object { 52 53 } 54 55 56 class TypeAnnoCls3 extends Object implements Serializable { 57 58 } 59 60 @TypeAnno1("TypeAnno1") 61 class TypeAnnoCls4 { 62 63 } 64 65 @TypeAnno1("TypeAnno1") 66 class TypeAnnoCls5 extends @TypeAnno1("TypeAnno1") Object { 67 68 } 69 70 @TypeAnno1("TypeAnno1") 71 class TypeAnnoCls6 extends @TypeAnno1("TypeAnno1") Object implements @TypeAnno1("TypeAnno1") Serializable { 72 73 } 74 75 @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 76 class TypeAnnoCls7 { 77 78 } 79 80 @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 81 class TypeAnnoCls8 extends @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 Object { 82 83 } 84 85 @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 86 class TypeAnnoCls9 extends @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 Object implements @TypeAnno1("TypeAnno1") @TypeAnno2("TypeAnno2") @TypeAnno3 Serializable { 87 88 } 89 90 @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") 91 class TypeAnnoCls10 { 92 93 } 94 95 @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") 96 class TypeAnnoCls11 extends @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") Object { 97 98 } 99 100 @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") 101 class TypeAnnoCls12 extends @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") Object implements @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") @TypeAnno2("TypeAnno2") Serializable { 102 103 } 104 105 @TypeAnno3 @TypeAnno3 @TypeAnno3 106 class TypeAnnoCls13 { 107 108 } 109 110 @TypeAnno3 @TypeAnno3 @TypeAnno3 111 class TypeAnnoCls14 extends @TypeAnno3 @TypeAnno3 @TypeAnno3 Object { 112 113 } 114 115 @TypeAnno3 @TypeAnno3 @TypeAnno3 116 class TypeAnnoCls15 extends @TypeAnno3 @TypeAnno3 @TypeAnno3 Object implements @TypeAnno3 @TypeAnno3 @TypeAnno3 Serializable { 117 118 } 119 120 @TypeAnno3 121 class TypeAnnoCls16 { 122 123 } 124 125 @TypeAnno3 126 class TypeAnnoCls17 extends @TypeAnno3 Object { 127 128 } 129 130 @TypeAnno3 131 class TypeAnnoCls18 extends @TypeAnno3 Object implements @TypeAnno3 Serializable { 132 133 } 134