public TestClass(Class klass) { base.\u002Ector(); TestClass testClass = this; this.fMethodsForAnnotations = (Map) new HashMap(); this.fFieldsForAnnotations = (Map) new HashMap(); this.fClass = klass; if (klass != null && klass.getConstructors(TestClass.__\u003CGetCallerID\u003E()).Length > 1) { string str = "Test class can only have one constructor"; Throwable.__\u003CsuppressFillInStackTrace\u003E(); throw new IllegalArgumentException(str); } else { Iterator iterator = this.getSuperClasses(this.fClass).iterator(); label_3: while (iterator.hasNext()) { Class @class = (Class) iterator.next(); Method[] declaredMethods = @class.getDeclaredMethods(TestClass.__\u003CGetCallerID\u003E()); int length1 = declaredMethods.Length; for (int index = 0; index < length1; ++index) this.addToAnnotationLists((FrameworkMember) new FrameworkMethod(declaredMethods[index]), this.fMethodsForAnnotations); Field[] declaredFields = @class.getDeclaredFields(TestClass.__\u003CGetCallerID\u003E()); int length2 = declaredFields.Length; int index1 = 0; while (true) { if (index1 < length2) { this.addToAnnotationLists((FrameworkMember) new FrameworkField(declaredFields[index1]), this.fFieldsForAnnotations); ++index1; } else goto label_3; } } } }