class net.sf.cglib.proxy.Mixin$Route
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: net.sf.cglib.proxy.Mixin$Route
  super_class: java.lang.Object
{
  private java.lang.Class[] classes;
    descriptor: [Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE

  private int[] route;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  void <init>(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // net.sf.cglib.proxy.Mixin$Route this
        start local 1 // java.lang.Object[] delegates
         0: .line 217
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 218
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* map */
        start local 2 // java.util.Map map
         2: .line 219
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* collect */
        start local 3 // java.util.ArrayList collect
         3: .line 220
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 15
         5: .line 221
      StackMap locals: net.sf.cglib.proxy.Mixin$Route java.lang.Object[] java.util.Map java.util.ArrayList int
      StackMap stack:
            aload 1 /* delegates */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 5 /* delegate */
        start local 5 // java.lang.Class delegate
         6: .line 222
            aload 3 /* collect */
            invokevirtual java.util.ArrayList.clear:()V
         7: .line 223
            aload 5 /* delegate */
            aload 3 /* collect */
            invokestatic net.sf.cglib.core.ReflectUtils.addAllInterfaces:(Ljava/lang/Class;Ljava/util/List;)Ljava/util/List;
            pop
         8: .line 224
            aload 3 /* collect */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 6 /* it */
        start local 6 // java.util.Iterator it
         9: goto 13
        10: .line 225
      StackMap locals: java.lang.Class java.util.Iterator
      StackMap stack:
            aload 6 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 7 /* iface */
        start local 7 // java.lang.Class iface
        11: .line 226
            aload 2 /* map */
            aload 7 /* iface */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 13
        12: .line 227
            aload 2 /* map */
            aload 7 /* iface */
            new java.lang.Integer
            dup
            iload 4 /* i */
            invokespecial java.lang.Integer.<init>:(I)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // java.lang.Class iface
        13: .line 224
      StackMap locals:
      StackMap stack:
            aload 6 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        end local 6 // java.util.Iterator it
        end local 5 // java.lang.Class delegate
        14: .line 220
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 4 /* i */
            aload 1 /* delegates */
            arraylength
            if_icmplt 5
        end local 4 // int i
        16: .line 231
            aload 0 /* this */
            aload 2 /* map */
            invokeinterface java.util.Map.size:()I
            anewarray java.lang.Class
            putfield net.sf.cglib.proxy.Mixin$Route.classes:[Ljava/lang/Class;
        17: .line 232
            aload 0 /* this */
            aload 2 /* map */
            invokeinterface java.util.Map.size:()I
            newarray 10
            putfield net.sf.cglib.proxy.Mixin$Route.route:[I
        18: .line 233
            iconst_0
            istore 4 /* index */
        start local 4 // int index
        19: .line 234
            aload 2 /* map */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5 /* it */
        start local 5 // java.util.Iterator it
        20: goto 25
        21: .line 235
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 5 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 6 /* key */
        start local 6 // java.lang.Class key
        22: .line 236
            aload 0 /* this */
            getfield net.sf.cglib.proxy.Mixin$Route.classes:[Ljava/lang/Class;
            iload 4 /* index */
            aload 6 /* key */
            aastore
        23: .line 237
            aload 0 /* this */
            getfield net.sf.cglib.proxy.Mixin$Route.route:[I
            iload 4 /* index */
            aload 2 /* map */
            aload 6 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iastore
        24: .line 238
            iinc 4 /* index */ 1
        end local 6 // java.lang.Class key
        25: .line 234
      StackMap locals:
      StackMap stack:
            aload 5 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        end local 5 // java.util.Iterator it
        26: .line 240
            return
        end local 4 // int index
        end local 3 // java.util.ArrayList collect
        end local 2 // java.util.Map map
        end local 1 // java.lang.Object[] delegates
        end local 0 // net.sf.cglib.proxy.Mixin$Route this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lnet/sf/cglib/proxy/Mixin$Route;
            0   27     1  delegates  [Ljava/lang/Object;
            2   27     2        map  Ljava/util/Map;
            3   27     3    collect  Ljava/util/ArrayList;
            4   16     4          i  I
            6   14     5   delegate  Ljava/lang/Class;
            9   14     6         it  Ljava/util/Iterator;
           11   13     7      iface  Ljava/lang/Class;
           19   27     4      index  I
           20   26     5         it  Ljava/util/Iterator;
           22   25     6        key  Ljava/lang/Class;
    MethodParameters:
           Name  Flags
      delegates  
}
SourceFile: "Mixin.java"
NestHost: net.sf.cglib.proxy.Mixin
InnerClasses:
  private Route = net.sf.cglib.proxy.Mixin$Route of net.sf.cglib.proxy.Mixin