| // Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file | 
 | // for details. All rights reserved. Use of this source code is governed by a | 
 | // BSD-style license that can be found in the LICENSE file. | 
 |  | 
 | package multidex002; | 
 |  | 
 | import java.lang.annotation.Annotation; | 
 | import multidex002.fakelibrary.MultiDexApplication; | 
 |  | 
 | @AnnotationWithEnum(ReferencedByAnnotation.B) | 
 | public class TestApplication extends MultiDexApplication { | 
 |  | 
 |     public static Annotation annotation = getAnnotationWithEnum(); | 
 |     public static Annotation annotation2 = getSoleAnnotation(Annotated.class); | 
 |     public static Annotation annotation3 = getSoleAnnotation(Annotated2.class); | 
 |     public static Class<?> interfaceClass = InterfaceWithEnum.class; | 
 |  | 
 |     public static Annotation getAnnotationWithEnum() { | 
 |         return getSoleAnnotation(TestApplication.class); | 
 |     } | 
 |  | 
 |     public static Annotation getSoleAnnotation(Class<?> annotated) { | 
 |         Annotation[] annot = annotated.getAnnotations(); | 
 |         if (annot.length == 1) { | 
 |             return annot[0]; | 
 |         } | 
 |  | 
 |         throw new AssertionError(); | 
 |     } | 
 |  | 
 | } |