public abstract final int
public abstract final [I
public java.lang.Object
public abstract final [Ljava.lang.Object;
public ClassAttrs$PublicInnerClass
public abstract final [LClassAttrs$PublicInnerClass;
protected ClassAttrs$ProtectedInnerClass
protected abstract final [LClassAttrs$ProtectedInnerClass;
private ClassAttrs$PrivateInnerClass
private abstract final [LClassAttrs$PrivateInnerClass;
 ClassAttrs$PackagePrivateInnerClass
abstract final [LClassAttrs$PackagePrivateInnerClass;
public abstract interface java.io.Serializable
public abstract final [Ljava.io.Serializable;
public abstract static interface ClassAttrs$PublicInnerInterface
public abstract final [LClassAttrs$PublicInnerInterface;
protected abstract static interface ClassAttrs$ProtectedInnerInterface
protected abstract final [LClassAttrs$ProtectedInnerInterface;
private abstract static interface ClassAttrs$PrivateInnerInterface
private abstract final [LClassAttrs$PrivateInnerInterface;
abstract static interface ClassAttrs$PackagePrivateInnerInterface
abstract final [LClassAttrs$PackagePrivateInnerInterface;
***** class ClassAttrs:
  name: ClassAttrs
  canonical: ClassAttrs
  simple: ClassAttrs
  genericSignature: null
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: null
  enclosing: null
  enclosingCon: null
  enclosingMeth: null
  modifiers: 1
  package: null
  declaredClasses: [10] class ClassAttrs$MemberClass, class ClassAttrs$PackagePrivateInnerClass, class ClassAttrs$PrivateInnerClass, class ClassAttrs$ProtectedInnerClass, class ClassAttrs$PublicInnerClass, class ClassAttrs$PublicMemberClass, interface ClassAttrs$PackagePrivateInnerInterface, interface ClassAttrs$PrivateInnerInterface, interface ClassAttrs$ProtectedInnerInterface, interface ClassAttrs$PublicInnerInterface
  member classes: [3] class ClassAttrs$PublicInnerClass, class ClassAttrs$PublicMemberClass, interface ClassAttrs$PublicInnerInterface
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class OtherClass:
  name: OtherClass
  canonical: OtherClass
  simple: OtherClass
  genericSignature: null
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: null
  enclosing: null
  enclosingCon: null
  enclosingMeth: null
  modifiers: 0
  package: null
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class otherpackage.OtherPackageClass:
  name: otherpackage.OtherPackageClass
  canonical: otherpackage.OtherPackageClass
  simple: OtherPackageClass
  genericSignature: null
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: null
  enclosing: null
  enclosingCon: null
  enclosingMeth: null
  modifiers: 1
  package: package otherpackage, Unknown, version 0.0
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class ClassAttrs$1InnerNamed:
  name: ClassAttrs$1InnerNamed
  canonical: null
  simple: InnerNamed
  genericSignature: null
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: null
  enclosing: class ClassAttrs
  enclosingCon: null
  enclosingMeth: public static void ClassAttrs.main()
  modifiers: 0
  package: null
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: true
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class ClassAttrs$1ConsInnerNamed:
  name: ClassAttrs$1ConsInnerNamed
  canonical: null
  simple: ConsInnerNamed
  genericSignature: null
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: null
  enclosing: class ClassAttrs
  enclosingCon: ClassAttrs()
  enclosingMeth: null
  modifiers: 0
  package: null
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: true
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class ClassAttrs$1:
  name: ClassAttrs$1
  canonical: null
  simple: 
  genericSignature: null
  super: class OtherClass
  genericSuperclass: class OtherClass
  declaring: null
  enclosing: class ClassAttrs
  enclosingCon: null
  enclosingMeth: public static void ClassAttrs.main()
  modifiers: 8
  package: null
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: true
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [0]
***** class ClassAttrs$MemberClass:
  name: ClassAttrs$MemberClass
  canonical: ClassAttrs.MemberClass
  simple: MemberClass
  genericSignature: <XYZ:Ljava/lang/Object;>Ljava/lang/Object;
  super: class java.lang.Object
  genericSuperclass: class java.lang.Object
  declaring: class ClassAttrs
  enclosing: class ClassAttrs
  enclosingCon: null
  enclosingMeth: null
  modifiers: 8
  package: null
  declaredClasses: [0]
  member classes: [0]
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: true
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [0]
  typeParameters: [1] XYZ
***** class FancyClass:
  name: FancyClass
  canonical: FancyClass
  simple: FancyClass
  genericSignature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/HashMap<TK;TV;>;Ljava/util/Map<TK;TV;>;
  super: class java.util.HashMap
  genericSuperclass: java.util.HashMap<K, V>
  declaring: null
  enclosing: null
  enclosingCon: null
  enclosingMeth: null
  modifiers: 1
  package: null
  declaredClasses: [0]
  member classes: [2] class java.util.AbstractMap$SimpleEntry, class java.util.AbstractMap$SimpleImmutableEntry
  isAnnotation: false
  isAnonymous: false
  isArray: false
  isEnum: false
  isInterface: false
  isLocalClass: false
  isMemberClass: false
  isPrimitive: false
  isSynthetic: false
  genericInterfaces: [1] java.util.Map<K, V>
  typeParameters: [2] K, V
constructor signature: (LClassAttrs$MemberClass<TXYZ;>;)V
method signature: ()Ljava/lang/Class<TXYZ;>;
field signature: LClassAttrs$MemberClass<TXYZ;>;
