public class java.beans.IndexedPropertyDescriptor extends java.beans.PropertyDescriptor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.beans.IndexedPropertyDescriptor
  super_class: java.beans.PropertyDescriptor
{
  private java.lang.ref.Reference<java.lang.Class> indexedPropertyTypeRef;
    descriptor: Ljava/lang/ref/Reference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/Reference<Ljava/lang/Class;>;

  private java.lang.ref.Reference<java.lang.reflect.Method> indexedReadMethodRef;
    descriptor: Ljava/lang/ref/Reference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/Reference<Ljava/lang/reflect/Method;>;

  private java.lang.ref.Reference<java.lang.reflect.Method> indexedWriteMethodRef;
    descriptor: Ljava/lang/ref/Reference;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/ref/Reference<Ljava/lang/reflect/Method;>;

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

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

  public void <init>(java.lang.String, java.lang.Class<?>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=3, args_size=3
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.String propertyName
        start local 2 // java.lang.Class beanClass
         0: .line 68
            aload 0 /* this */
            aload 1 /* propertyName */
            aload 2 /* beanClass */
         1: .line 69
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* propertyName */
            invokestatic java.beans.NameGenerator.capitalize:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 70
            new java.lang.StringBuilder
            dup
            ldc "set"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* propertyName */
            invokestatic java.beans.NameGenerator.capitalize:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 71
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* propertyName */
            invokestatic java.beans.NameGenerator.capitalize:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 72
            new java.lang.StringBuilder
            dup
            ldc "set"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* propertyName */
            invokestatic java.beans.NameGenerator.capitalize:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.beans.IndexedPropertyDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 73
            return
        end local 2 // java.lang.Class beanClass
        end local 1 // java.lang.String propertyName
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Ljava/beans/IndexedPropertyDescriptor;
            0    6     1  propertyName  Ljava/lang/String;
            0    6     2     beanClass  Ljava/lang/Class<*>;
    Exceptions:
      throws java.beans.IntrospectionException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;)V
    MethodParameters:
              Name  Flags
      propertyName  
      beanClass     

  public void <init>(java.lang.String, java.lang.Class<?>, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.String propertyName
        start local 2 // java.lang.Class beanClass
        start local 3 // java.lang.String readMethodName
        start local 4 // java.lang.String writeMethodName
        start local 5 // java.lang.String indexedReadMethodName
        start local 6 // java.lang.String indexedWriteMethodName
         0: .line 101
            aload 0 /* this */
            aload 1 /* propertyName */
            aload 2 /* beanClass */
            aload 3 /* readMethodName */
            aload 4 /* writeMethodName */
            invokespecial java.beans.PropertyDescriptor.<init>:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 103
            aload 0 /* this */
            aload 5 /* indexedReadMethodName */
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
         2: .line 104
            aload 5 /* indexedReadMethodName */
            ifnull 4
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            ifnonnull 4
         3: .line 105
            new java.beans.IntrospectionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Method not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* indexedReadMethodName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 108
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.String java.lang.Class java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 6 /* indexedWriteMethodName */
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
         5: .line 109
            aload 6 /* indexedWriteMethodName */
            ifnull 7
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            ifnonnull 7
         6: .line 110
            new java.beans.IntrospectionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Method not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* indexedWriteMethodName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            pop
         8: .line 114
            return
        end local 6 // java.lang.String indexedWriteMethodName
        end local 5 // java.lang.String indexedReadMethodName
        end local 4 // java.lang.String writeMethodName
        end local 3 // java.lang.String readMethodName
        end local 2 // java.lang.Class beanClass
        end local 1 // java.lang.String propertyName
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    9     0                    this  Ljava/beans/IndexedPropertyDescriptor;
            0    9     1            propertyName  Ljava/lang/String;
            0    9     2               beanClass  Ljava/lang/Class<*>;
            0    9     3          readMethodName  Ljava/lang/String;
            0    9     4         writeMethodName  Ljava/lang/String;
            0    9     5   indexedReadMethodName  Ljava/lang/String;
            0    9     6  indexedWriteMethodName  Ljava/lang/String;
    Exceptions:
      throws java.beans.IntrospectionException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    MethodParameters:
                        Name  Flags
      propertyName            
      beanClass               
      readMethodName          
      writeMethodName         
      indexedReadMethodName   
      indexedWriteMethodName  

  public void <init>(java.lang.String, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.reflect.Method);
    descriptor: (Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.String propertyName
        start local 2 // java.lang.reflect.Method readMethod
        start local 3 // java.lang.reflect.Method writeMethod
        start local 4 // java.lang.reflect.Method indexedReadMethod
        start local 5 // java.lang.reflect.Method indexedWriteMethod
         0: .line 136
            aload 0 /* this */
            aload 1 /* propertyName */
            aload 2 /* readMethod */
            aload 3 /* writeMethod */
            invokespecial java.beans.PropertyDescriptor.<init>:(Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
         1: .line 138
            aload 0 /* this */
            aload 4 /* indexedReadMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod0:(Ljava/lang/reflect/Method;)V
         2: .line 139
            aload 0 /* this */
            aload 5 /* indexedWriteMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod0:(Ljava/lang/reflect/Method;)V
         3: .line 142
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* indexedReadMethod */
            aload 5 /* indexedWriteMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
         4: .line 143
            return
        end local 5 // java.lang.reflect.Method indexedWriteMethod
        end local 4 // java.lang.reflect.Method indexedReadMethod
        end local 3 // java.lang.reflect.Method writeMethod
        end local 2 // java.lang.reflect.Method readMethod
        end local 1 // java.lang.String propertyName
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Ljava/beans/IndexedPropertyDescriptor;
            0    5     1        propertyName  Ljava/lang/String;
            0    5     2          readMethod  Ljava/lang/reflect/Method;
            0    5     3         writeMethod  Ljava/lang/reflect/Method;
            0    5     4   indexedReadMethod  Ljava/lang/reflect/Method;
            0    5     5  indexedWriteMethod  Ljava/lang/reflect/Method;
    Exceptions:
      throws java.beans.IntrospectionException
    MethodParameters:
                    Name  Flags
      propertyName        
      readMethod          
      writeMethod         
      indexedReadMethod   
      indexedWriteMethod  

  void <init>(java.lang.Class<?>, java.lang.String, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.reflect.Method, java.lang.reflect.Method);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=7
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.Class bean
        start local 2 // java.lang.String base
        start local 3 // java.lang.reflect.Method read
        start local 4 // java.lang.reflect.Method write
        start local 5 // java.lang.reflect.Method readIndexed
        start local 6 // java.lang.reflect.Method writeIndexed
         0: .line 160
            aload 0 /* this */
            aload 1 /* bean */
            aload 2 /* base */
            aload 3 /* read */
            aload 4 /* write */
            invokespecial java.beans.PropertyDescriptor.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
         1: .line 162
            aload 0 /* this */
            aload 5 /* readIndexed */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod0:(Ljava/lang/reflect/Method;)V
         2: .line 163
            aload 0 /* this */
            aload 6 /* writeIndexed */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod0:(Ljava/lang/reflect/Method;)V
         3: .line 166
            aload 0 /* this */
            aload 0 /* this */
            aload 5 /* readIndexed */
            aload 6 /* writeIndexed */
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
         4: .line 167
            return
        end local 6 // java.lang.reflect.Method writeIndexed
        end local 5 // java.lang.reflect.Method readIndexed
        end local 4 // java.lang.reflect.Method write
        end local 3 // java.lang.reflect.Method read
        end local 2 // java.lang.String base
        end local 1 // java.lang.Class bean
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljava/beans/IndexedPropertyDescriptor;
            0    5     1          bean  Ljava/lang/Class<*>;
            0    5     2          base  Ljava/lang/String;
            0    5     3          read  Ljava/lang/reflect/Method;
            0    5     4         write  Ljava/lang/reflect/Method;
            0    5     5   readIndexed  Ljava/lang/reflect/Method;
            0    5     6  writeIndexed  Ljava/lang/reflect/Method;
    Exceptions:
      throws java.beans.IntrospectionException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)V
    MethodParameters:
              Name  Flags
      bean          
      base          
      read          
      write         
      readIndexed   
      writeIndexed  

  public synchronized java.lang.reflect.Method getIndexedReadMethod();
    descriptor: ()Ljava/lang/reflect/Method;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 178
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod0:()Ljava/lang/reflect/Method;
            astore 1 /* indexedReadMethod */
        start local 1 // java.lang.reflect.Method indexedReadMethod
         1: .line 179
            aload 1 /* indexedReadMethod */
            ifnonnull 22
         2: .line 180
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            astore 2 /* cls */
        start local 2 // java.lang.Class cls
         3: .line 181
            aload 2 /* cls */
            ifnull 5
         4: .line 182
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
            ifnonnull 6
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
            ifnonnull 6
         5: .line 184
      StackMap locals: java.lang.reflect.Method java.lang.Class
      StackMap stack:
            aconst_null
            areturn
         6: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
            ifnonnull 12
         7: .line 187
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType0:()Ljava/lang/Class;
            astore 3 /* type */
        start local 3 // java.lang.Class type
         8: .line 188
            aload 3 /* type */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            if_acmpeq 9
            aload 3 /* type */
            ifnonnull 11
         9: .line 189
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "is"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getBaseName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
        10: .line 190
            goto 12
        11: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getBaseName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
        end local 3 // java.lang.Class type
        12: .line 195
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            astore 3 /* args */
        start local 3 // java.lang.Class[] args
        13: .line 197
            aload 2 /* cls */
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
        14: .line 198
            iconst_1
            aload 3 /* args */
        15: .line 197
            invokestatic java.beans.Introspector.findMethod:(Ljava/lang/Class;Ljava/lang/String;I[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 1 /* indexedReadMethod */
        16: .line 199
            aload 1 /* indexedReadMethod */
            ifnonnull 21
        17: .line 201
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getBaseName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
        18: .line 202
            aload 2 /* cls */
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
        19: .line 203
            iconst_1
            aload 3 /* args */
        20: .line 202
            invokestatic java.beans.Introspector.findMethod:(Ljava/lang/Class;Ljava/lang/String;I[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 1 /* indexedReadMethod */
        21: .line 205
      StackMap locals: java.lang.Class[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* indexedReadMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod0:(Ljava/lang/reflect/Method;)V
        end local 3 // java.lang.Class[] args
        end local 2 // java.lang.Class cls
        22: .line 207
      StackMap locals:
      StackMap stack:
            aload 1 /* indexedReadMethod */
            areturn
        end local 1 // java.lang.reflect.Method indexedReadMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   23     0               this  Ljava/beans/IndexedPropertyDescriptor;
            1   23     1  indexedReadMethod  Ljava/lang/reflect/Method;
            3   22     2                cls  Ljava/lang/Class;
            8   12     3               type  Ljava/lang/Class;
           13   22     3               args  [Ljava/lang/Class;

  public synchronized void setIndexedReadMethod(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.reflect.Method readMethod
         0: .line 219
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* readMethod */
         1: .line 220
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod0:()Ljava/lang/reflect/Method;
         2: .line 219
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
         3: .line 221
            aload 0 /* this */
            aload 1 /* readMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod0:(Ljava/lang/reflect/Method;)V
         4: .line 222
            return
        end local 1 // java.lang.reflect.Method readMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/beans/IndexedPropertyDescriptor;
            0    5     1  readMethod  Ljava/lang/reflect/Method;
    Exceptions:
      throws java.beans.IntrospectionException
    MethodParameters:
            Name  Flags
      readMethod  

  private void setIndexedReadMethod0(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.reflect.Method readMethod
         0: .line 225
            aload 1 /* readMethod */
            ifnonnull 4
         1: .line 226
            aload 0 /* this */
            aconst_null
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
         2: .line 227
            aload 0 /* this */
            aconst_null
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
         3: .line 228
            return
         4: .line 230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* readMethod */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.beans.IndexedPropertyDescriptor.setClass0:(Ljava/lang/Class;)V
         5: .line 232
            aload 0 /* this */
            aload 1 /* readMethod */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
         6: .line 233
            aload 0 /* this */
            aload 1 /* readMethod */
            invokestatic java.beans.IndexedPropertyDescriptor.getSoftReference:(Ljava/lang/Object;)Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
         7: .line 234
            return
        end local 1 // java.lang.reflect.Method readMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Ljava/beans/IndexedPropertyDescriptor;
            0    8     1  readMethod  Ljava/lang/reflect/Method;
    MethodParameters:
            Name  Flags
      readMethod  

  public synchronized java.lang.reflect.Method getIndexedWriteMethod();
    descriptor: ()Ljava/lang/reflect/Method;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=7, locals=5, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 245
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod0:()Ljava/lang/reflect/Method;
            astore 1 /* indexedWriteMethod */
        start local 1 // java.lang.reflect.Method indexedWriteMethod
         1: .line 246
            aload 1 /* indexedWriteMethod */
            ifnonnull 22
         2: .line 247
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            astore 2 /* cls */
        start local 2 // java.lang.Class cls
         3: .line 248
            aload 2 /* cls */
            ifnull 5
         4: .line 249
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
            ifnonnull 6
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
            ifnonnull 6
         5: .line 251
      StackMap locals: java.lang.reflect.Method java.lang.Class
      StackMap stack:
            aconst_null
            areturn
         6: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType0:()Ljava/lang/Class;
            astore 3 /* type */
        start local 3 // java.lang.Class type
         7: .line 258
            aload 3 /* type */
            ifnonnull 15
         8: .line 260
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            aconst_null
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            astore 3 /* type */
         9: .line 261
            aload 0 /* this */
            aload 3 /* type */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
        10: .line 262
            goto 15
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.reflect.Method java.lang.Class java.lang.Class
      StackMap stack: java.beans.IntrospectionException
        11: pop
        12: .line 264
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getPropertyType:()Ljava/lang/Class;
            astore 4 /* propType */
        start local 4 // java.lang.Class propType
        13: .line 265
            aload 4 /* propType */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 15
        14: .line 266
            aload 4 /* propType */
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            astore 3 /* type */
        end local 4 // java.lang.Class propType
        15: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
            ifnonnull 17
        16: .line 272
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "set"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getBaseName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
        17: .line 274
      StackMap locals:
      StackMap stack:
            aload 2 /* cls */
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
        18: .line 275
            iconst_2
            aload 3 /* type */
            ifnonnull 19
            aconst_null
            goto 20
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.reflect.Method java.lang.Class java.lang.Class
      StackMap stack: java.lang.Class java.lang.String int
        19: iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 3 /* type */
            aastore
        20: .line 274
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.reflect.Method java.lang.Class java.lang.Class
      StackMap stack: java.lang.Class java.lang.String int java.lang.Class[]
            invokestatic java.beans.Introspector.findMethod:(Ljava/lang/Class;Ljava/lang/String;I[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 1 /* indexedWriteMethod */
        21: .line 276
            aload 0 /* this */
            aload 1 /* indexedWriteMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod0:(Ljava/lang/reflect/Method;)V
        end local 3 // java.lang.Class type
        end local 2 // java.lang.Class cls
        22: .line 278
      StackMap locals:
      StackMap stack:
            aload 1 /* indexedWriteMethod */
            areturn
        end local 1 // java.lang.reflect.Method indexedWriteMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   23     0                this  Ljava/beans/IndexedPropertyDescriptor;
            1   23     1  indexedWriteMethod  Ljava/lang/reflect/Method;
            3   22     2                 cls  Ljava/lang/Class;
            7   22     3                type  Ljava/lang/Class;
           13   15     4            propType  Ljava/lang/Class;
      Exception table:
        from    to  target  type
           8    10      11  Class java.beans.IntrospectionException

  public synchronized void setIndexedWriteMethod(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.reflect.Method writeMethod
         0: .line 290
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
         1: .line 291
            aload 1 /* writeMethod */
         2: .line 290
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            astore 2 /* type */
        start local 2 // java.lang.Class type
         3: .line 292
            aload 0 /* this */
            aload 2 /* type */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
         4: .line 293
            aload 0 /* this */
            aload 1 /* writeMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod0:(Ljava/lang/reflect/Method;)V
         5: .line 294
            return
        end local 2 // java.lang.Class type
        end local 1 // java.lang.reflect.Method writeMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Ljava/beans/IndexedPropertyDescriptor;
            0    6     1  writeMethod  Ljava/lang/reflect/Method;
            3    6     2         type  Ljava/lang/Class;
    Exceptions:
      throws java.beans.IntrospectionException
    MethodParameters:
             Name  Flags
      writeMethod  

  private void setIndexedWriteMethod0(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.reflect.Method writeMethod
         0: .line 297
            aload 1 /* writeMethod */
            ifnonnull 4
         1: .line 298
            aload 0 /* this */
            aconst_null
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
         2: .line 299
            aload 0 /* this */
            aconst_null
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
         3: .line 300
            return
         4: .line 302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* writeMethod */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.beans.IndexedPropertyDescriptor.setClass0:(Ljava/lang/Class;)V
         5: .line 304
            aload 0 /* this */
            aload 1 /* writeMethod */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
         6: .line 305
            aload 0 /* this */
            aload 1 /* writeMethod */
            invokestatic java.beans.IndexedPropertyDescriptor.getSoftReference:(Ljava/lang/Object;)Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
         7: .line 306
            return
        end local 1 // java.lang.reflect.Method writeMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Ljava/beans/IndexedPropertyDescriptor;
            0    8     1  writeMethod  Ljava/lang/reflect/Method;
    MethodParameters:
             Name  Flags
      writeMethod  

  public synchronized java.lang.Class<?> getIndexedPropertyType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 316
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType0:()Ljava/lang/Class;
            astore 1 /* type */
        start local 1 // java.lang.Class type
         1: .line 317
            aload 1 /* type */
            ifnonnull 8
         2: .line 319
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
         3: .line 320
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
         4: .line 319
            invokevirtual java.beans.IndexedPropertyDescriptor.findIndexedPropertyType:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            astore 1 /* type */
         5: .line 321
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedPropertyType:(Ljava/lang/Class;)V
         6: .line 322
            goto 8
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.Class
      StackMap stack: java.beans.IntrospectionException
         7: pop
         8: .line 326
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            areturn
        end local 1 // java.lang.Class type
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/beans/IndexedPropertyDescriptor;
            1    9     1  type  Ljava/lang/Class;
      Exception table:
        from    to  target  type
           2     6       7  Class java.beans.IntrospectionException
    Signature: ()Ljava/lang/Class<*>;

  private void setIndexedPropertyType(java.lang.Class);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.Class type
         0: .line 332
            aload 0 /* this */
            aload 1 /* type */
            invokestatic java.beans.IndexedPropertyDescriptor.getWeakReference:(Ljava/lang/Object;)Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedPropertyTypeRef:Ljava/lang/ref/Reference;
         1: .line 333
            return
        end local 1 // java.lang.Class type
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/beans/IndexedPropertyDescriptor;
            0    2     1  type  Ljava/lang/Class;
    MethodParameters:
      Name  Flags
      type  

  private java.lang.Class getIndexedPropertyType0();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 336
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedPropertyTypeRef:Ljava/lang/ref/Reference;
            ifnull 2
         1: .line 337
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedPropertyTypeRef:Ljava/lang/ref/Reference;
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            checkcast java.lang.Class
            goto 3
         2: .line 338
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 336
      StackMap locals:
      StackMap stack: java.lang.Class
            areturn
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/beans/IndexedPropertyDescriptor;

  private java.lang.reflect.Method getIndexedReadMethod0();
    descriptor: ()Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 342
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
            ifnull 2
         1: .line 343
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            goto 3
         2: .line 344
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 342
      StackMap locals:
      StackMap stack: java.lang.reflect.Method
            areturn
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/beans/IndexedPropertyDescriptor;

  private java.lang.reflect.Method getIndexedWriteMethod0();
    descriptor: ()Ljava/lang/reflect/Method;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 348
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
            ifnull 2
         1: .line 349
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            goto 3
         2: .line 350
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 348
      StackMap locals:
      StackMap stack: java.lang.reflect.Method
            areturn
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/beans/IndexedPropertyDescriptor;

  private java.lang.Class findIndexedPropertyType(java.lang.reflect.Method, java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.reflect.Method indexedReadMethod
        start local 2 // java.lang.reflect.Method indexedWriteMethod
         0: .line 356
            aconst_null
            astore 3 /* indexedPropertyType */
        start local 3 // java.lang.Class indexedPropertyType
         1: .line 358
            aload 1 /* indexedReadMethod */
            ifnull 10
         2: .line 359
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            aload 1 /* indexedReadMethod */
            invokestatic java.beans.IndexedPropertyDescriptor.getParameterTypes:(Ljava/lang/Class;Ljava/lang/reflect/Method;)[Ljava/lang/Class;
            astore 4 /* params */
        start local 4 // java.lang.Class[] params
         3: .line 360
            aload 4 /* params */
            arraylength
            iconst_1
            if_icmpeq 5
         4: .line 361
            new java.beans.IntrospectionException
            dup
            ldc "bad indexed read method arg count"
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 363
      StackMap locals: java.lang.Class java.lang.Class[]
      StackMap stack:
            aload 4 /* params */
            iconst_0
            aaload
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpeq 7
         6: .line 364
            new java.beans.IntrospectionException
            dup
            ldc "non int index to indexed read method"
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            aload 1 /* indexedReadMethod */
            invokestatic java.beans.IndexedPropertyDescriptor.getReturnType:(Ljava/lang/Class;Ljava/lang/reflect/Method;)Ljava/lang/Class;
            astore 3 /* indexedPropertyType */
         8: .line 367
            aload 3 /* indexedPropertyType */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 10
         9: .line 368
            new java.beans.IntrospectionException
            dup
            ldc "indexed read method returns void"
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Class[] params
        10: .line 371
      StackMap locals:
      StackMap stack:
            aload 2 /* indexedWriteMethod */
            ifnull 23
        11: .line 372
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            aload 2 /* indexedWriteMethod */
            invokestatic java.beans.IndexedPropertyDescriptor.getParameterTypes:(Ljava/lang/Class;Ljava/lang/reflect/Method;)[Ljava/lang/Class;
            astore 4 /* params */
        start local 4 // java.lang.Class[] params
        12: .line 373
            aload 4 /* params */
            arraylength
            iconst_2
            if_icmpeq 14
        13: .line 374
            new java.beans.IntrospectionException
            dup
            ldc "bad indexed write method arg count"
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 376
      StackMap locals: java.lang.Class[]
      StackMap stack:
            aload 4 /* params */
            iconst_0
            aaload
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpeq 16
        15: .line 377
            new java.beans.IntrospectionException
            dup
            ldc "non int index to indexed write method"
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 379
      StackMap locals:
      StackMap stack:
            aload 3 /* indexedPropertyType */
            ifnull 22
            aload 3 /* indexedPropertyType */
            aload 4 /* params */
            iconst_1
            aaload
            if_acmpeq 22
        17: .line 380
            new java.beans.IntrospectionException
            dup
        18: .line 381
            new java.lang.StringBuilder
            dup
            ldc "type mismatch between indexed read and indexed write methods: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        19: .line 382
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 381
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 380
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 384
      StackMap locals:
      StackMap stack:
            aload 4 /* params */
            iconst_1
            aaload
            astore 3 /* indexedPropertyType */
        end local 4 // java.lang.Class[] params
        23: .line 386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getPropertyType:()Ljava/lang/Class;
            astore 4 /* propertyType */
        start local 4 // java.lang.Class propertyType
        24: .line 387
            aload 4 /* propertyType */
            ifnull 29
            aload 4 /* propertyType */
            invokevirtual java.lang.Class.isArray:()Z
            ifeq 26
        25: .line 388
            aload 4 /* propertyType */
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            aload 3 /* indexedPropertyType */
            if_acmpeq 29
        26: .line 389
      StackMap locals: java.lang.Class
      StackMap stack:
            new java.beans.IntrospectionException
            dup
            new java.lang.StringBuilder
            dup
            ldc "type mismatch between indexed and non-indexed methods: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        27: .line 390
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        28: .line 389
            invokespecial java.beans.IntrospectionException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 392
      StackMap locals:
      StackMap stack:
            aload 3 /* indexedPropertyType */
            areturn
        end local 4 // java.lang.Class propertyType
        end local 3 // java.lang.Class indexedPropertyType
        end local 2 // java.lang.reflect.Method indexedWriteMethod
        end local 1 // java.lang.reflect.Method indexedReadMethod
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   30     0                 this  Ljava/beans/IndexedPropertyDescriptor;
            0   30     1    indexedReadMethod  Ljava/lang/reflect/Method;
            0   30     2   indexedWriteMethod  Ljava/lang/reflect/Method;
            1   30     3  indexedPropertyType  Ljava/lang/Class;
            3   10     4               params  [Ljava/lang/Class;
           12   23     4               params  [Ljava/lang/Class;
           24   30     4         propertyType  Ljava/lang/Class;
    Exceptions:
      throws java.beans.IntrospectionException
    MethodParameters:
                    Name  Flags
      indexedReadMethod   
      indexedWriteMethod  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.lang.Object obj
         0: .line 406
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 407
            iconst_1
            ireturn
         2: .line 410
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            ifnull 13
            aload 1 /* obj */
            instanceof java.beans.IndexedPropertyDescriptor
            ifeq 13
         3: .line 411
            aload 1 /* obj */
            checkcast java.beans.IndexedPropertyDescriptor
            astore 2 /* other */
        start local 2 // java.beans.IndexedPropertyDescriptor other
         4: .line 412
            aload 2 /* other */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            astore 3 /* otherIndexedReadMethod */
        start local 3 // java.lang.reflect.Method otherIndexedReadMethod
         5: .line 413
            aload 2 /* other */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            astore 4 /* otherIndexedWriteMethod */
        start local 4 // java.lang.reflect.Method otherIndexedWriteMethod
         6: .line 415
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            aload 3 /* otherIndexedReadMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.compareMethods:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z
            ifne 8
         7: .line 416
            iconst_0
            ireturn
         8: .line 419
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.reflect.Method java.lang.reflect.Method
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            aload 4 /* otherIndexedWriteMethod */
            invokevirtual java.beans.IndexedPropertyDescriptor.compareMethods:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z
            ifne 10
         9: .line 420
            iconst_0
            ireturn
        10: .line 423
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType:()Ljava/lang/Class;
            aload 2 /* other */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType:()Ljava/lang/Class;
            if_acmpeq 12
        11: .line 424
            iconst_0
            ireturn
        12: .line 426
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* obj */
            invokespecial java.beans.PropertyDescriptor.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 4 // java.lang.reflect.Method otherIndexedWriteMethod
        end local 3 // java.lang.reflect.Method otherIndexedReadMethod
        end local 2 // java.beans.IndexedPropertyDescriptor other
        13: .line 428
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   14     0                     this  Ljava/beans/IndexedPropertyDescriptor;
            0   14     1                      obj  Ljava/lang/Object;
            4   13     2                    other  Ljava/beans/IndexedPropertyDescriptor;
            5   13     3   otherIndexedReadMethod  Ljava/lang/reflect/Method;
            6   13     4  otherIndexedWriteMethod  Ljava/lang/reflect/Method;
    MethodParameters:
      Name  Flags
      obj   

  void <init>(java.beans.PropertyDescriptor, java.beans.PropertyDescriptor);
    descriptor: (Ljava/beans/PropertyDescriptor;Ljava/beans/PropertyDescriptor;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.beans.PropertyDescriptor x
        start local 2 // java.beans.PropertyDescriptor y
         0: .line 441
            aload 0 /* this */
            aload 1 /* x */
            aload 2 /* y */
            invokespecial java.beans.PropertyDescriptor.<init>:(Ljava/beans/PropertyDescriptor;Ljava/beans/PropertyDescriptor;)V
         1: .line 442
            aload 1 /* x */
            instanceof java.beans.IndexedPropertyDescriptor
            ifeq 12
         2: .line 443
            aload 1 /* x */
            checkcast java.beans.IndexedPropertyDescriptor
            astore 3 /* ix */
        start local 3 // java.beans.IndexedPropertyDescriptor ix
         3: .line 445
            aload 3 /* ix */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            astore 4 /* xr */
        start local 4 // java.lang.reflect.Method xr
         4: .line 446
            aload 4 /* xr */
            ifnull 6
         5: .line 447
            aload 0 /* this */
            aload 4 /* xr */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod:(Ljava/lang/reflect/Method;)V
         6: .line 450
      StackMap locals: java.beans.IndexedPropertyDescriptor java.beans.PropertyDescriptor java.beans.PropertyDescriptor java.beans.IndexedPropertyDescriptor java.lang.reflect.Method
      StackMap stack:
            aload 3 /* ix */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            astore 5 /* xw */
        start local 5 // java.lang.reflect.Method xw
         7: .line 451
            aload 5 /* xw */
            ifnull 12
         8: .line 452
            aload 0 /* this */
            aload 5 /* xw */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod:(Ljava/lang/reflect/Method;)V
        end local 5 // java.lang.reflect.Method xw
        end local 4 // java.lang.reflect.Method xr
         9: .line 454
            goto 12
      StackMap locals: java.beans.IndexedPropertyDescriptor java.beans.PropertyDescriptor java.beans.PropertyDescriptor java.beans.IndexedPropertyDescriptor
      StackMap stack: java.beans.IntrospectionException
        10: astore 4 /* ex */
        start local 4 // java.beans.IntrospectionException ex
        11: .line 456
            new java.lang.AssertionError
            dup
            aload 4 /* ex */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 4 // java.beans.IntrospectionException ex
        end local 3 // java.beans.IndexedPropertyDescriptor ix
        12: .line 459
      StackMap locals:
      StackMap stack:
            aload 2 /* y */
            instanceof java.beans.IndexedPropertyDescriptor
            ifeq 23
        13: .line 460
            aload 2 /* y */
            checkcast java.beans.IndexedPropertyDescriptor
            astore 3 /* iy */
        start local 3 // java.beans.IndexedPropertyDescriptor iy
        14: .line 462
            aload 3 /* iy */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedReadMethod:()Ljava/lang/reflect/Method;
            astore 4 /* yr */
        start local 4 // java.lang.reflect.Method yr
        15: .line 463
            aload 4 /* yr */
            ifnull 17
            aload 4 /* yr */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            if_acmpne 17
        16: .line 464
            aload 0 /* this */
            aload 4 /* yr */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedReadMethod:(Ljava/lang/reflect/Method;)V
        17: .line 467
      StackMap locals: java.beans.IndexedPropertyDescriptor java.lang.reflect.Method
      StackMap stack:
            aload 3 /* iy */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedWriteMethod:()Ljava/lang/reflect/Method;
            astore 5 /* yw */
        start local 5 // java.lang.reflect.Method yw
        18: .line 468
            aload 5 /* yw */
            ifnull 23
            aload 5 /* yw */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getClass0:()Ljava/lang/Class;
            if_acmpne 23
        19: .line 469
            aload 0 /* this */
            aload 5 /* yw */
            invokevirtual java.beans.IndexedPropertyDescriptor.setIndexedWriteMethod:(Ljava/lang/reflect/Method;)V
        end local 5 // java.lang.reflect.Method yw
        end local 4 // java.lang.reflect.Method yr
        20: .line 471
            goto 23
      StackMap locals: java.beans.IndexedPropertyDescriptor java.beans.PropertyDescriptor java.beans.PropertyDescriptor java.beans.IndexedPropertyDescriptor
      StackMap stack: java.beans.IntrospectionException
        21: astore 4 /* ex */
        start local 4 // java.beans.IntrospectionException ex
        22: .line 473
            new java.lang.AssertionError
            dup
            aload 4 /* ex */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 4 // java.beans.IntrospectionException ex
        end local 3 // java.beans.IndexedPropertyDescriptor iy
        23: .line 476
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.beans.PropertyDescriptor y
        end local 1 // java.beans.PropertyDescriptor x
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Ljava/beans/IndexedPropertyDescriptor;
            0   24     1     x  Ljava/beans/PropertyDescriptor;
            0   24     2     y  Ljava/beans/PropertyDescriptor;
            3   12     3    ix  Ljava/beans/IndexedPropertyDescriptor;
            4    9     4    xr  Ljava/lang/reflect/Method;
            7    9     5    xw  Ljava/lang/reflect/Method;
           11   12     4    ex  Ljava/beans/IntrospectionException;
           14   23     3    iy  Ljava/beans/IndexedPropertyDescriptor;
           15   20     4    yr  Ljava/lang/reflect/Method;
           18   20     5    yw  Ljava/lang/reflect/Method;
           22   23     4    ex  Ljava/beans/IntrospectionException;
      Exception table:
        from    to  target  type
           3     9      10  Class java.beans.IntrospectionException
          14    20      21  Class java.beans.IntrospectionException
    MethodParameters:
      Name  Flags
      x     
      y     

  void <init>(java.beans.IndexedPropertyDescriptor);
    descriptor: (Ljava/beans/IndexedPropertyDescriptor;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.beans.IndexedPropertyDescriptor this
        start local 1 // java.beans.IndexedPropertyDescriptor old
         0: .line 483
            aload 0 /* this */
            aload 1 /* old */
            invokespecial java.beans.PropertyDescriptor.<init>:(Ljava/beans/PropertyDescriptor;)V
         1: .line 484
            aload 0 /* this */
            aload 1 /* old */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodRef:Ljava/lang/ref/Reference;
         2: .line 485
            aload 0 /* this */
            aload 1 /* old */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodRef:Ljava/lang/ref/Reference;
         3: .line 486
            aload 0 /* this */
            aload 1 /* old */
            getfield java.beans.IndexedPropertyDescriptor.indexedPropertyTypeRef:Ljava/lang/ref/Reference;
            putfield java.beans.IndexedPropertyDescriptor.indexedPropertyTypeRef:Ljava/lang/ref/Reference;
         4: .line 487
            aload 0 /* this */
            aload 1 /* old */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
         5: .line 488
            aload 0 /* this */
            aload 1 /* old */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
            putfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
         6: .line 489
            return
        end local 1 // java.beans.IndexedPropertyDescriptor old
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/beans/IndexedPropertyDescriptor;
            0    7     1   old  Ljava/beans/IndexedPropertyDescriptor;
    MethodParameters:
      Name  Flags
      old   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.beans.IndexedPropertyDescriptor this
         0: .line 499
            aload 0 /* this */
            invokespecial java.beans.PropertyDescriptor.hashCode:()I
            istore 1 /* result */
        start local 1 // int result
         1: .line 501
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
            ifnonnull 2
            iconst_0
            goto 3
         2: .line 502
      StackMap locals: java.beans.IndexedPropertyDescriptor int
      StackMap stack: int
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedWriteMethodName:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
         3: .line 501
      StackMap locals: java.beans.IndexedPropertyDescriptor int
      StackMap stack: int int
            iadd
            istore 1 /* result */
         4: .line 503
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
            ifnonnull 5
            iconst_0
            goto 6
         5: .line 504
      StackMap locals:
      StackMap stack: int
            aload 0 /* this */
            getfield java.beans.IndexedPropertyDescriptor.indexedReadMethodName:Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
         6: .line 503
      StackMap locals: java.beans.IndexedPropertyDescriptor int
      StackMap stack: int int
            iadd
            istore 1 /* result */
         7: .line 505
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType:()Ljava/lang/Class;
            ifnonnull 8
            iconst_0
            goto 9
         8: .line 506
      StackMap locals:
      StackMap stack: int
            aload 0 /* this */
            invokevirtual java.beans.IndexedPropertyDescriptor.getIndexedPropertyType:()Ljava/lang/Class;
            invokevirtual java.lang.Object.hashCode:()I
         9: .line 505
      StackMap locals: java.beans.IndexedPropertyDescriptor int
      StackMap stack: int int
            iadd
            istore 1 /* result */
        10: .line 508
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // java.beans.IndexedPropertyDescriptor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Ljava/beans/IndexedPropertyDescriptor;
            1   11     1  result  I
}
SourceFile: "IndexedPropertyDescriptor.java"