public final class java.lang.reflect.Field extends java.lang.reflect.AccessibleObject implements java.lang.reflect.Member
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: java.lang.reflect.Field
  super_class: java.lang.reflect.AccessibleObject
{
  private java.lang.Class<?> clazz;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private int slot;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Class<?> type;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private int modifiers;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean trustedFinal;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private transient java.lang.String signature;
    descriptor: Ljava/lang/String;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient sun.reflect.generics.repository.FieldRepository genericInfo;
    descriptor: Lsun/reflect/generics/repository/FieldRepository;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private byte[] annotations;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.reflect.FieldAccessor fieldAccessor;
    descriptor: Ljdk/internal/reflect/FieldAccessor;
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.reflect.FieldAccessor overrideFieldAccessor;
    descriptor: Ljdk/internal/reflect/FieldAccessor;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.reflect.Field root;
    descriptor: Ljava/lang/reflect/Field;
    flags: (0x0002) ACC_PRIVATE

  private volatile transient java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.annotation.Annotation> declaredAnnotations;
    descriptor: Ljava/util/Map;
    flags: (0x00c2) ACC_PRIVATE, ACC_VOLATILE, ACC_TRANSIENT
    Signature: Ljava/util/Map<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/annotation/Annotation;>;

  private java.lang.String getGenericSignature();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 95
            aload 0 /* this */
            getfield java.lang.reflect.Field.signature:Ljava/lang/String;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  private sun.reflect.generics.factory.GenericsFactory getFactory();
    descriptor: ()Lsun/reflect/generics/factory/GenericsFactory;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 99
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            astore 1 /* c */
        start local 1 // java.lang.Class c
         1: .line 101
            aload 1 /* c */
            aload 1 /* c */
            invokestatic sun.reflect.generics.scope.ClassScope.make:(Ljava/lang/Class;)Lsun/reflect/generics/scope/ClassScope;
            invokestatic sun.reflect.generics.factory.CoreReflectionFactory.make:(Ljava/lang/reflect/GenericDeclaration;Lsun/reflect/generics/scope/Scope;)Lsun/reflect/generics/factory/CoreReflectionFactory;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/reflect/Field;
            1    2     1     c  Ljava/lang/Class<*>;

  private sun.reflect.generics.repository.FieldRepository getGenericInfo();
    descriptor: ()Lsun/reflect/generics/repository/FieldRepository;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 107
            aload 0 /* this */
            getfield java.lang.reflect.Field.genericInfo:Lsun/reflect/generics/repository/FieldRepository;
            ifnonnull 4
         1: .line 109
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getGenericSignature:()Ljava/lang/String;
         2: .line 110
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getFactory:()Lsun/reflect/generics/factory/GenericsFactory;
         3: .line 109
            invokestatic sun.reflect.generics.repository.FieldRepository.make:(Ljava/lang/String;Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/repository/FieldRepository;
            putfield java.lang.reflect.Field.genericInfo:Lsun/reflect/generics/repository/FieldRepository;
         4: .line 112
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.reflect.Field.genericInfo:Lsun/reflect/generics/repository/FieldRepository;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/lang/reflect/Field;

  void <init>(java.lang.Class<?>, java.lang.String, java.lang.Class<?>, int, boolean, int, java.lang.String, );
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;IZILjava/lang/String;[B)V
    flags: (0x0000) 
    Code:
      stack=2, locals=9, args_size=9
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Class declaringClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Class type
        start local 4 // int modifiers
        start local 5 // boolean trustedFinal
        start local 6 // int slot
        start local 7 // java.lang.String signature
        start local 8 // byte[] annotations
         0: .line 119
            aload 0 /* this */
            invokespecial java.lang.reflect.AccessibleObject.<init>:()V
         1: .line 128
            aload 0 /* this */
            aload 1 /* declaringClass */
            putfield java.lang.reflect.Field.clazz:Ljava/lang/Class;
         2: .line 129
            aload 0 /* this */
            aload 2 /* name */
            putfield java.lang.reflect.Field.name:Ljava/lang/String;
         3: .line 130
            aload 0 /* this */
            aload 3 /* type */
            putfield java.lang.reflect.Field.type:Ljava/lang/Class;
         4: .line 131
            aload 0 /* this */
            iload 4 /* modifiers */
            putfield java.lang.reflect.Field.modifiers:I
         5: .line 132
            aload 0 /* this */
            iload 5 /* trustedFinal */
            putfield java.lang.reflect.Field.trustedFinal:Z
         6: .line 133
            aload 0 /* this */
            iload 6 /* slot */
            putfield java.lang.reflect.Field.slot:I
         7: .line 134
            aload 0 /* this */
            aload 7 /* signature */
            putfield java.lang.reflect.Field.signature:Ljava/lang/String;
         8: .line 135
            aload 0 /* this */
            aload 8 /* annotations */
            putfield java.lang.reflect.Field.annotations:[B
         9: .line 136
            return
        end local 8 // byte[] annotations
        end local 7 // java.lang.String signature
        end local 6 // int slot
        end local 5 // boolean trustedFinal
        end local 4 // int modifiers
        end local 3 // java.lang.Class type
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class declaringClass
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Ljava/lang/reflect/Field;
            0   10     1  declaringClass  Ljava/lang/Class<*>;
            0   10     2            name  Ljava/lang/String;
            0   10     3            type  Ljava/lang/Class<*>;
            0   10     4       modifiers  I
            0   10     5    trustedFinal  Z
            0   10     6            slot  I
            0   10     7       signature  Ljava/lang/String;
            0   10     8     annotations  [B
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/Class<*>;IZILjava/lang/String;[B)V
    MethodParameters:
                Name  Flags
      declaringClass  
      name            
      type            
      modifiers       
      trustedFinal    
      slot            
      signature       
      annotations     

  java.lang.reflect.Field copy();
    descriptor: ()Ljava/lang/reflect/Field;
    flags: (0x0000) 
    Code:
      stack=10, locals=2, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 151
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            ifnull 2
         1: .line 152
            new java.lang.IllegalArgumentException
            dup
            ldc "Can not copy a non-root Field"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 154
      StackMap locals:
      StackMap stack:
            new java.lang.reflect.Field
            dup
            aload 0 /* this */
            getfield java.lang.reflect.Field.clazz:Ljava/lang/Class;
            aload 0 /* this */
            getfield java.lang.reflect.Field.name:Ljava/lang/String;
            aload 0 /* this */
            getfield java.lang.reflect.Field.type:Ljava/lang/Class;
            aload 0 /* this */
            getfield java.lang.reflect.Field.modifiers:I
            aload 0 /* this */
            getfield java.lang.reflect.Field.trustedFinal:Z
            aload 0 /* this */
            getfield java.lang.reflect.Field.slot:I
            aload 0 /* this */
            getfield java.lang.reflect.Field.signature:Ljava/lang/String;
            aload 0 /* this */
            getfield java.lang.reflect.Field.annotations:[B
            invokespecial java.lang.reflect.Field.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;IZILjava/lang/String;[B)V
            astore 1 /* res */
        start local 1 // java.lang.reflect.Field res
         3: .line 155
            aload 1 /* res */
            aload 0 /* this */
            putfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
         4: .line 157
            aload 1 /* res */
            aload 0 /* this */
            getfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            putfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
         5: .line 158
            aload 1 /* res */
            aload 0 /* this */
            getfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            putfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
         6: .line 160
            aload 1 /* res */
            areturn
        end local 1 // java.lang.reflect.Field res
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/reflect/Field;
            3    7     1   res  Ljava/lang/reflect/Field;

  public void setAccessible(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // boolean flag
         0: .line 170
            invokestatic java.lang.reflect.AccessibleObject.checkPermission:()V
         1: .line 171
            iload 1 /* flag */
            ifeq 2
            aload 0 /* this */
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            invokevirtual java.lang.reflect.Field.checkCanSetAccessible:(Ljava/lang/Class;)V
         2: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* flag */
            invokevirtual java.lang.reflect.Field.setAccessible0:(Z)Z
            pop
         3: .line 173
            return
        end local 1 // boolean flag
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/reflect/Field;
            0    4     1  flag  Z
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
    MethodParameters:
      Name  Flags
      flag  

  void checkCanSetAccessible(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Class caller
         0: .line 177
            aload 0 /* this */
            aload 1 /* caller */
            aload 0 /* this */
            getfield java.lang.reflect.Field.clazz:Ljava/lang/Class;
            invokevirtual java.lang.reflect.Field.checkCanSetAccessible:(Ljava/lang/Class;Ljava/lang/Class;)V
         1: .line 178
            return
        end local 1 // java.lang.Class caller
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljava/lang/reflect/Field;
            0    2     1  caller  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    MethodParameters:
        Name  Flags
      caller  

  public java.lang.Class<?> getDeclaringClass();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 186
            aload 0 /* this */
            getfield java.lang.reflect.Field.clazz:Ljava/lang/Class;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 193
            aload 0 /* this */
            getfield java.lang.reflect.Field.name:Ljava/lang/String;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public int getModifiers();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 204
            aload 0 /* this */
            getfield java.lang.reflect.Field.modifiers:I
            ireturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public boolean isEnumConstant();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 216
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            sipush 16384
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/reflect/Field;

  public boolean isSynthetic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 228
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isSynthetic:(I)Z
            ireturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public java.lang.Class<?> getType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 240
            aload 0 /* this */
            getfield java.lang.reflect.Field.type:Ljava/lang/Class;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;
    Signature: ()Ljava/lang/Class<*>;

  public java.lang.reflect.Type getGenericType();
    descriptor: ()Ljava/lang/reflect/Type;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 268
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getGenericSignature:()Ljava/lang/String;
            ifnull 2
         1: .line 269
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getGenericInfo:()Lsun/reflect/generics/repository/FieldRepository;
            invokevirtual sun.reflect.generics.repository.FieldRepository.getGenericType:()Ljava/lang/reflect/Type;
            areturn
         2: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/reflect/Field;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 282
            aload 1 /* obj */
            ifnull 7
            aload 1 /* obj */
            instanceof java.lang.reflect.Field
            ifeq 7
         1: .line 283
            aload 1 /* obj */
            checkcast java.lang.reflect.Field
            astore 2 /* other */
        start local 2 // java.lang.reflect.Field other
         2: .line 284
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            aload 2 /* other */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            if_acmpne 6
         3: .line 285
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            aload 2 /* other */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            if_acmpne 6
         4: .line 286
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            aload 2 /* other */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            if_acmpne 6
         5: .line 284
            iconst_1
            ireturn
      StackMap locals: java.lang.reflect.Field
      StackMap stack:
         6: iconst_0
            ireturn
        end local 2 // java.lang.reflect.Field other
         7: .line 288
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljava/lang/reflect/Field;
            0    8     1    obj  Ljava/lang/Object;
            2    7     2  other  Ljava/lang/reflect/Field;
    MethodParameters:
      Name  Flags
      obj   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 297
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            ixor
            ireturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 322
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            istore 1 /* mod */
        start local 1 // int mod
         1: .line 323
            new java.lang.StringBuilder
            dup
            iload 1 /* mod */
            ifne 2
            ldc ""
            goto 3
      StackMap locals: java.lang.reflect.Field int
      StackMap stack: new 1 new 1
         2: new java.lang.StringBuilder
            dup
            iload 1 /* mod */
            invokestatic java.lang.reflect.Modifier.toString:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: java.lang.reflect.Field int
      StackMap stack: new 1 new 1 java.lang.String
         3: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 324
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 325
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 326
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 323
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // int mod
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/lang/reflect/Field;
            1    8     1   mod  I

  java.lang.String toShortString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 331
            new java.lang.StringBuilder
            dup
            ldc "field "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public java.lang.String toGenericString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 355
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            istore 1 /* mod */
        start local 1 // int mod
         1: .line 356
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getGenericType:()Ljava/lang/reflect/Type;
            astore 2 /* fieldType */
        start local 2 // java.lang.reflect.Type fieldType
         2: .line 357
            new java.lang.StringBuilder
            dup
            iload 1 /* mod */
            ifne 3
            ldc ""
            goto 4
      StackMap locals: java.lang.reflect.Field int java.lang.reflect.Type
      StackMap stack: new 2 new 2
         3: new java.lang.StringBuilder
            dup
            iload 1 /* mod */
            invokestatic java.lang.reflect.Modifier.toString:(I)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: java.lang.reflect.Field int java.lang.reflect.Type
      StackMap stack: new 2 new 2 java.lang.String
         4: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 358
            aload 2 /* fieldType */
            invokeinterface java.lang.reflect.Type.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 359
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 360
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 357
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.reflect.Type fieldType
        end local 1 // int mod
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/lang/reflect/Field;
            1    9     1        mod  I
            2    9     2  fieldType  Ljava/lang/reflect/Type;

  public java.lang.Object get(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 415
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 416
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 417
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.get:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public boolean getBoolean(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 449
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 450
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 451
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getBoolean:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public byte getByte(java.lang.Object);
    descriptor: (Ljava/lang/Object;)B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 483
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 484
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 485
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 487
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getByte:(Ljava/lang/Object;)B
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public char getChar(java.lang.Object);
    descriptor: (Ljava/lang/Object;)C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 519
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 520
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 521
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getChar:(Ljava/lang/Object;)C
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public short getShort(java.lang.Object);
    descriptor: (Ljava/lang/Object;)S
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 555
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 556
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 557
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getShort:(Ljava/lang/Object;)S
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public int getInt(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 591
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 592
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 593
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 595
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getInt:(Ljava/lang/Object;)I
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public long getLong(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 627
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 628
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 629
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getLong:(Ljava/lang/Object;)J
            lreturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public float getFloat(java.lang.Object);
    descriptor: (Ljava/lang/Object;)F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 663
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 664
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 665
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 667
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getFloat:(Ljava/lang/Object;)F
            freturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public double getDouble(java.lang.Object);
    descriptor: (Ljava/lang/Object;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 699
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 700
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 2 /* caller */
        start local 2 // java.lang.Class caller
         2: .line 701
            aload 0 /* this */
            aload 2 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.Class caller
         3: .line 703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            invokeinterface jdk.internal.reflect.FieldAccessor.getDouble:(Ljava/lang/Object;)D
            dreturn
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/lang/reflect/Field;
            0    4     1     obj  Ljava/lang/Object;
            2    3     2  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   

  public void set(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // java.lang.Object value
         0: .line 789
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 790
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 791
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 793
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            aload 2 /* value */
            invokeinterface jdk.internal.reflect.FieldAccessor.set:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 794
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2   value  Ljava/lang/Object;
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
       Name  Flags
      obj    
      value  

  public void setBoolean(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // boolean z
         0: .line 826
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 827
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 828
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 830
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            iload 2 /* z */
            invokeinterface jdk.internal.reflect.FieldAccessor.setBoolean:(Ljava/lang/Object;Z)V
         4: .line 831
            return
        end local 2 // boolean z
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       z  Z
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      z     

  public void setByte(java.lang.Object, byte);
    descriptor: (Ljava/lang/Object;B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // byte b
         0: .line 863
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 864
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 865
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 867
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            iload 2 /* b */
            invokeinterface jdk.internal.reflect.FieldAccessor.setByte:(Ljava/lang/Object;B)V
         4: .line 868
            return
        end local 2 // byte b
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       b  B
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      b     

  public void setChar(java.lang.Object, char);
    descriptor: (Ljava/lang/Object;C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // char c
         0: .line 900
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 901
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 902
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 904
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            iload 2 /* c */
            invokeinterface jdk.internal.reflect.FieldAccessor.setChar:(Ljava/lang/Object;C)V
         4: .line 905
            return
        end local 2 // char c
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       c  C
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      c     

  public void setShort(java.lang.Object, short);
    descriptor: (Ljava/lang/Object;S)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // short s
         0: .line 937
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 938
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 939
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 941
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            iload 2 /* s */
            invokeinterface jdk.internal.reflect.FieldAccessor.setShort:(Ljava/lang/Object;S)V
         4: .line 942
            return
        end local 2 // short s
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       s  S
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      s     

  public void setInt(java.lang.Object, int);
    descriptor: (Ljava/lang/Object;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // int i
         0: .line 974
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 975
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 976
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            iload 2 /* i */
            invokeinterface jdk.internal.reflect.FieldAccessor.setInt:(Ljava/lang/Object;I)V
         4: .line 979
            return
        end local 2 // int i
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       i  I
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      i     

  public void setLong(java.lang.Object, long);
    descriptor: (Ljava/lang/Object;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // long l
         0: .line 1011
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 1012
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 4 /* caller */
        start local 4 // java.lang.Class caller
         2: .line 1013
            aload 0 /* this */
            aload 4 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 4 // java.lang.Class caller
         3: .line 1015
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            lload 2 /* l */
            invokeinterface jdk.internal.reflect.FieldAccessor.setLong:(Ljava/lang/Object;J)V
         4: .line 1016
            return
        end local 2 // long l
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       l  J
            2    3     4  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      l     

  public void setFloat(java.lang.Object, float);
    descriptor: (Ljava/lang/Object;F)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // float f
         0: .line 1048
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 1049
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 3 /* caller */
        start local 3 // java.lang.Class caller
         2: .line 1050
            aload 0 /* this */
            aload 3 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 3 // java.lang.Class caller
         3: .line 1052
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            fload 2 /* f */
            invokeinterface jdk.internal.reflect.FieldAccessor.setFloat:(Ljava/lang/Object;F)V
         4: .line 1053
            return
        end local 2 // float f
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       f  F
            2    3     3  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      f     

  public void setDouble(java.lang.Object, double);
    descriptor: (Ljava/lang/Object;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
        start local 2 // double d
         0: .line 1085
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            ifne 3
         1: .line 1086
            invokestatic jdk.internal.reflect.Reflection.getCallerClass:()Ljava/lang/Class;
            astore 4 /* caller */
        start local 4 // java.lang.Class caller
         2: .line 1087
            aload 0 /* this */
            aload 4 /* caller */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 4 // java.lang.Class caller
         3: .line 1089
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
            aload 1 /* obj */
            dload 2 /* d */
            invokeinterface jdk.internal.reflect.FieldAccessor.setDouble:(Ljava/lang/Object;D)V
         4: .line 1090
            return
        end local 2 // double d
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljava/lang/reflect/Field;
            0    5     1     obj  Ljava/lang/Object;
            0    5     2       d  D
            2    3     4  caller  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
    RuntimeVisibleAnnotations: 
      jdk.internal.reflect.CallerSensitive()
      jdk.internal.vm.annotation.ForceInline()
    MethodParameters:
      Name  Flags
      obj   
      d     

  private void checkAccess(java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Class caller
        start local 2 // java.lang.Object obj
         0: .line 1096
            aload 0 /* this */
            aload 1 /* caller */
            aload 0 /* this */
            getfield java.lang.reflect.Field.clazz:Ljava/lang/Class;
         1: .line 1097
            aload 0 /* this */
            getfield java.lang.reflect.Field.modifiers:I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            ifeq 2
            aconst_null
            goto 3
      StackMap locals: java.lang.reflect.Field java.lang.Class java.lang.Object
      StackMap stack: java.lang.reflect.Field java.lang.Class java.lang.Class
         2: aload 2 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
         3: .line 1098
      StackMap locals: java.lang.reflect.Field java.lang.Class java.lang.Object
      StackMap stack: java.lang.reflect.Field java.lang.Class java.lang.Class java.lang.Class
            aload 0 /* this */
            getfield java.lang.reflect.Field.modifiers:I
         4: .line 1096
            invokevirtual java.lang.reflect.Field.checkAccess:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;I)V
         5: .line 1099
            return
        end local 2 // java.lang.Object obj
        end local 1 // java.lang.Class caller
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljava/lang/reflect/Field;
            0    6     1  caller  Ljava/lang/Class<*>;
            0    6     2     obj  Ljava/lang/Object;
    Exceptions:
      throws java.lang.IllegalAccessException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)V
    MethodParameters:
        Name  Flags
      caller  
      obj     

  private jdk.internal.reflect.FieldAccessor getFieldAccessor(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljdk/internal/reflect/FieldAccessor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Object obj
         0: .line 1105
            aload 0 /* this */
            getfield java.lang.reflect.Field.override:Z
            istore 2 /* ov */
        start local 2 // boolean ov
         1: .line 1106
            iload 2 /* ov */
            ifeq 2
            aload 0 /* this */
            getfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 0 /* this */
            getfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
      StackMap locals:
      StackMap stack: jdk.internal.reflect.FieldAccessor
         3: astore 3 /* a */
        start local 3 // jdk.internal.reflect.FieldAccessor a
         4: .line 1107
            aload 3 /* a */
            ifnull 5
            aload 3 /* a */
            goto 6
      StackMap locals: jdk.internal.reflect.FieldAccessor
      StackMap stack:
         5: aload 0 /* this */
            iload 2 /* ov */
            invokevirtual java.lang.reflect.Field.acquireFieldAccessor:(Z)Ljdk/internal/reflect/FieldAccessor;
      StackMap locals:
      StackMap stack: jdk.internal.reflect.FieldAccessor
         6: areturn
        end local 3 // jdk.internal.reflect.FieldAccessor a
        end local 2 // boolean ov
        end local 1 // java.lang.Object obj
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/reflect/Field;
            0    7     1   obj  Ljava/lang/Object;
            1    7     2    ov  Z
            4    7     3     a  Ljdk/internal/reflect/FieldAccessor;
    Exceptions:
      throws java.lang.IllegalAccessException
    MethodParameters:
      Name  Flags
      obj   

  private jdk.internal.reflect.FieldAccessor acquireFieldAccessor(boolean);
    descriptor: (Z)Ljdk/internal/reflect/FieldAccessor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // boolean overrideFinalCheck
         0: .line 1117
            aconst_null
            astore 2 /* tmp */
        start local 2 // jdk.internal.reflect.FieldAccessor tmp
         1: .line 1118
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            ifnull 2
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            iload 1 /* overrideFinalCheck */
            invokevirtual java.lang.reflect.Field.getFieldAccessor:(Z)Ljdk/internal/reflect/FieldAccessor;
            astore 2 /* tmp */
         2: .line 1119
      StackMap locals: jdk.internal.reflect.FieldAccessor
      StackMap stack:
            aload 2 /* tmp */
            ifnull 7
         3: .line 1120
            iload 1 /* overrideFinalCheck */
            ifeq 5
         4: .line 1121
            aload 0 /* this */
            aload 2 /* tmp */
            putfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            goto 9
         5: .line 1123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* tmp */
            putfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
         6: .line 1124
            goto 9
         7: .line 1126
      StackMap locals:
      StackMap stack:
            getstatic java.lang.reflect.Field.reflectionFactory:Ljdk/internal/reflect/ReflectionFactory;
            aload 0 /* this */
            iload 1 /* overrideFinalCheck */
            invokevirtual jdk.internal.reflect.ReflectionFactory.newFieldAccessor:(Ljava/lang/reflect/Field;Z)Ljdk/internal/reflect/FieldAccessor;
            astore 2 /* tmp */
         8: .line 1127
            aload 0 /* this */
            aload 2 /* tmp */
            iload 1 /* overrideFinalCheck */
            invokevirtual java.lang.reflect.Field.setFieldAccessor:(Ljdk/internal/reflect/FieldAccessor;Z)V
         9: .line 1130
      StackMap locals:
      StackMap stack:
            aload 2 /* tmp */
            areturn
        end local 2 // jdk.internal.reflect.FieldAccessor tmp
        end local 1 // boolean overrideFinalCheck
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Ljava/lang/reflect/Field;
            0   10     1  overrideFinalCheck  Z
            1   10     2                 tmp  Ljdk/internal/reflect/FieldAccessor;
    MethodParameters:
                    Name  Flags
      overrideFinalCheck  

  private jdk.internal.reflect.FieldAccessor getFieldAccessor(boolean);
    descriptor: (Z)Ljdk/internal/reflect/FieldAccessor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // boolean overrideFinalCheck
         0: .line 1136
            iload 1 /* overrideFinalCheck */
            ifeq 1
            aload 0 /* this */
            getfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
      StackMap locals:
      StackMap stack: jdk.internal.reflect.FieldAccessor
         2: areturn
        end local 1 // boolean overrideFinalCheck
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Ljava/lang/reflect/Field;
            0    3     1  overrideFinalCheck  Z
    MethodParameters:
                    Name  Flags
      overrideFinalCheck  

  private void setFieldAccessor(jdk.internal.reflect.FieldAccessor, boolean);
    descriptor: (Ljdk/internal/reflect/FieldAccessor;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.reflect.Field this
        start local 1 // jdk.internal.reflect.FieldAccessor accessor
        start local 2 // boolean overrideFinalCheck
         0: .line 1142
            iload 2 /* overrideFinalCheck */
            ifeq 2
         1: .line 1143
            aload 0 /* this */
            aload 1 /* accessor */
            putfield java.lang.reflect.Field.overrideFieldAccessor:Ljdk/internal/reflect/FieldAccessor;
            goto 3
         2: .line 1145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* accessor */
            putfield java.lang.reflect.Field.fieldAccessor:Ljdk/internal/reflect/FieldAccessor;
         3: .line 1147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            ifnull 5
         4: .line 1148
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            aload 1 /* accessor */
            iload 2 /* overrideFinalCheck */
            invokevirtual java.lang.reflect.Field.setFieldAccessor:(Ljdk/internal/reflect/FieldAccessor;Z)V
         5: .line 1150
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean overrideFinalCheck
        end local 1 // jdk.internal.reflect.FieldAccessor accessor
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Ljava/lang/reflect/Field;
            0    6     1            accessor  Ljdk/internal/reflect/FieldAccessor;
            0    6     2  overrideFinalCheck  Z
    MethodParameters:
                    Name  Flags
      accessor            
      overrideFinalCheck  

  java.lang.reflect.Field getRoot();
    descriptor: ()Ljava/lang/reflect/Field;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 1154
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  boolean isTrustedFinal();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 1158
            aload 0 /* this */
            getfield java.lang.reflect.Field.trustedFinal:Z
            ireturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  public <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Class annotationClass
         0: .line 1169
            aload 1 /* annotationClass */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1170
            aload 1 /* annotationClass */
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.declaredAnnotations:()Ljava/util/Map;
            aload 1 /* annotationClass */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.annotation.Annotation
            areturn
        end local 1 // java.lang.Class annotationClass
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Ljava/lang/reflect/Field;
            0    2     1  annotationClass  Ljava/lang/Class<TT;>;
    Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
                 Name  Flags
      annotationClass  

  public <T extends java.lang.annotation.Annotation> T[] getAnnotationsByType(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.reflect.Field this
        start local 1 // java.lang.Class annotationClass
         0: .line 1181
            aload 1 /* annotationClass */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1183
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.declaredAnnotations:()Ljava/util/Map;
            aload 1 /* annotationClass */
            invokestatic sun.reflect.annotation.AnnotationSupport.getDirectlyAndIndirectlyPresent:(Ljava/util/Map;Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
            areturn
        end local 1 // java.lang.Class annotationClass
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Ljava/lang/reflect/Field;
            0    2     1  annotationClass  Ljava/lang/Class<TT;>;
    Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)[TT;
    MethodParameters:
                 Name  Flags
      annotationClass  

  public java.lang.annotation.Annotation[] getDeclaredAnnotations();
    descriptor: ()[Ljava/lang/annotation/Annotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 1191
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.declaredAnnotations:()Ljava/util/Map;
            invokestatic sun.reflect.annotation.AnnotationParser.toArray:(Ljava/util/Map;)[Ljava/lang/annotation/Annotation;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/reflect/Field;

  private java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.annotation.Annotation> declaredAnnotations();
    descriptor: ()Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 1198
            aload 0 /* this */
            getfield java.lang.reflect.Field.declaredAnnotations:Ljava/util/Map;
            dup
            astore 1 /* declAnnos */
        start local 1 // java.util.Map declAnnos
         1: ifnonnull 18
         2: .line 1199
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         3: .line 1200
            aload 0 /* this */
            getfield java.lang.reflect.Field.declaredAnnotations:Ljava/util/Map;
            dup
            astore 1 /* declAnnos */
            ifnonnull 14
         4: .line 1201
            aload 0 /* this */
            getfield java.lang.reflect.Field.root:Ljava/lang/reflect/Field;
            astore 3 /* root */
        start local 3 // java.lang.reflect.Field root
         5: .line 1202
            aload 3 /* root */
            ifnull 8
         6: .line 1203
            aload 3 /* root */
            invokevirtual java.lang.reflect.Field.declaredAnnotations:()Ljava/util/Map;
            astore 1 /* declAnnos */
         7: .line 1204
            goto 13
         8: .line 1206
      StackMap locals: java.util.Map java.lang.reflect.Field java.lang.reflect.Field
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.reflect.Field.annotations:[B
         9: .line 1207
            invokestatic jdk.internal.access.SharedSecrets.getJavaLangAccess:()Ljdk/internal/access/JavaLangAccess;
        10: .line 1208
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokeinterface jdk.internal.access.JavaLangAccess.getConstantPool:(Ljava/lang/Class;)Ljdk/internal/reflect/ConstantPool;
        11: .line 1209
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
        12: .line 1205
            invokestatic sun.reflect.annotation.AnnotationParser.parseAnnotations:([BLjdk/internal/reflect/ConstantPool;Ljava/lang/Class;)Ljava/util/Map;
            astore 1 /* declAnnos */
        13: .line 1211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* declAnnos */
            putfield java.lang.reflect.Field.declaredAnnotations:Ljava/util/Map;
        end local 3 // java.lang.reflect.Field root
        14: .line 1199
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        15: goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: aload 2
            monitorexit
        17: athrow
        18: .line 1215
      StackMap locals:
      StackMap stack:
            aload 1 /* declAnnos */
            areturn
        end local 1 // java.util.Map declAnnos
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Ljava/lang/reflect/Field;
            1   19     1  declAnnos  Ljava/util/Map<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/annotation/Annotation;>;
            5   14     3       root  Ljava/lang/reflect/Field;
      Exception table:
        from    to  target  type
           3    15      16  any
          16    17      16  any
    Signature: ()Ljava/util/Map<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/annotation/Annotation;>;

  private native byte[] getTypeAnnotationBytes0();
    descriptor: ()[B
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE

  public java.lang.reflect.AnnotatedType getAnnotatedType();
    descriptor: ()Ljava/lang/reflect/AnnotatedType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.reflect.Field this
         0: .line 1229
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getTypeAnnotationBytes0:()[B
         1: .line 1230
            invokestatic jdk.internal.access.SharedSecrets.getJavaLangAccess:()Ljdk/internal/access/JavaLangAccess;
         2: .line 1231
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
            invokeinterface jdk.internal.access.JavaLangAccess.getConstantPool:(Ljava/lang/Class;)Ljdk/internal/reflect/ConstantPool;
         3: .line 1232
            aload 0 /* this */
         4: .line 1233
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getDeclaringClass:()Ljava/lang/Class;
         5: .line 1234
            aload 0 /* this */
            invokevirtual java.lang.reflect.Field.getGenericType:()Ljava/lang/reflect/Type;
         6: .line 1235
            getstatic sun.reflect.annotation.TypeAnnotation$TypeAnnotationTarget.FIELD:Lsun/reflect/annotation/TypeAnnotation$TypeAnnotationTarget;
         7: .line 1229
            invokestatic sun.reflect.annotation.TypeAnnotationParser.buildAnnotatedType:([BLjdk/internal/reflect/ConstantPool;Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/reflect/Type;Lsun/reflect/annotation/TypeAnnotation$TypeAnnotationTarget;)Ljava/lang/reflect/AnnotatedType;
            areturn
        end local 0 // java.lang.reflect.Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/lang/reflect/Field;

  java.lang.reflect.AccessibleObject getRoot();
    descriptor: ()Ljava/lang/reflect/AccessibleObject;
    flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual java.lang.reflect.Field.getRoot:()Ljava/lang/reflect/Field;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Field.java"
InnerClasses:
  public final TypeAnnotationTarget = sun.reflect.annotation.TypeAnnotation$TypeAnnotationTarget of sun.reflect.annotation.TypeAnnotation