public abstract class net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy extends java.lang.Enum<net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy>
  minor version: 0
  major version: 59
  flags: flags: (0x4421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT, ACC_ANNOTATION
  this_class: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  super_class: java.lang.Enum
{
  public static final net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy DISABLED;
    descriptor: Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy REDEFINITION;
    descriptor: Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy RETRANSFORMATION;
    descriptor: Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  protected static final net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher DISPATCHER;
    descriptor: Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Dispatcher;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  private final boolean enabled;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean retransforming;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy[] ENUM$VALUES;
    descriptor: [Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 4501
            new net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$1
            dup
            ldc "DISABLED"
            iconst_0
         1: .line 4504
            iconst_0
            iconst_0
            invokespecial net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$1.<init>:(Ljava/lang/String;IZZ)V
            putstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.DISABLED:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
         2: .line 4533
            new net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$2
            dup
            ldc "REDEFINITION"
            iconst_1
         3: .line 4549
            iconst_1
            iconst_0
            invokespecial net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$2.<init>:(Ljava/lang/String;IZZ)V
            putstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.REDEFINITION:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
         4: .line 4563
            new net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$3
            dup
            ldc "RETRANSFORMATION"
            iconst_2
         5: .line 4579
            iconst_1
            iconst_1
            invokespecial net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$3.<init>:(Ljava/lang/String;IZZ)V
            putstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.RETRANSFORMATION:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            iconst_3
            anewarray net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
            dup
            iconst_0
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.DISABLED:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            aastore
            dup
            iconst_1
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.REDEFINITION:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            aastore
            dup
            iconst_2
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.RETRANSFORMATION:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            aastore
            putstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.ENUM$VALUES:[Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
         6: .line 4596
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher$CreationAction.INSTANCE:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Dispatcher$CreationAction;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher
            putstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.DISPATCHER:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Dispatcher;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int, boolean, boolean);
    descriptor: (Ljava/lang/String;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
        start local 3 // boolean enabled
        start local 4 // boolean retransforming
         0: .line 4614
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
         1: .line 4615
            aload 0 /* this */
            iload 3 /* enabled */
            putfield net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.enabled:Z
         2: .line 4616
            aload 0 /* this */
            iload 4 /* retransforming */
            putfield net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.retransforming:Z
         3: .line 4617
            return
        end local 4 // boolean retransforming
        end local 3 // boolean enabled
        end local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            0    4     3         enabled  Z
            0    4     4  retransforming  Z
    MethodParameters:
                Name  Flags
      $enum$name      
      $enum$ordinal   
      enabled         
      retransforming  

  protected boolean isRetransforming();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
         0: .line 4626
            aload 0 /* this */
            getfield net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.retransforming:Z
            ireturn
        end local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;

  protected abstract void check(java.lang.instrument.Instrumentation);
    descriptor: (Ljava/lang/instrument/Instrumentation;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
                 Name  Flags
      instrumentation  

  protected boolean isEnabled();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
         0: .line 4642
            aload 0 /* this */
            getfield net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.enabled:Z
            ireturn
        end local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;

  protected abstract net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector make();
    descriptor: ()Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Collector;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  public void apply(java.lang.instrument.Instrumentation, net.bytebuddy.agent.builder.AgentBuilder$Listener, net.bytebuddy.agent.builder.AgentBuilder$CircularityLock, net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy, net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy, net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy, net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator, net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener, net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy, net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy, net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy, net.bytebuddy.agent.builder.AgentBuilder$RawMatcher, net.bytebuddy.agent.builder.AgentBuilder$RawMatcher);
    descriptor: (Ljava/lang/instrument/Instrumentation;Lnet/bytebuddy/agent/builder/AgentBuilder$Listener;Lnet/bytebuddy/agent/builder/AgentBuilder$CircularityLock;Lnet/bytebuddy/agent/builder/AgentBuilder$PoolStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$LocationStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$DiscoveryStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$BatchAllocator;Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Listener;Lnet/bytebuddy/agent/builder/AgentBuilder$LambdaInstrumentationStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$DescriptionStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$FallbackStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=23, args_size=14
        start local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
        start local 1 // java.lang.instrument.Instrumentation instrumentation
        start local 2 // net.bytebuddy.agent.builder.AgentBuilder$Listener listener
        start local 3 // net.bytebuddy.agent.builder.AgentBuilder$CircularityLock circularityLock
        start local 4 // net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy poolStrategy
        start local 5 // net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy locationStrategy
        start local 6 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy redefinitionDiscoveryStrategy
        start local 7 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator redefinitionBatchAllocator
        start local 8 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener redefinitionListener
        start local 9 // net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy lambdaInstrumentationStrategy
        start local 10 // net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy descriptionStrategy
        start local 11 // net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy fallbackStrategy
        start local 12 // net.bytebuddy.agent.builder.AgentBuilder$RawMatcher typeMatcher
        start local 13 // net.bytebuddy.agent.builder.AgentBuilder$RawMatcher ignoredTypeMatcher
         0: .line 4684
            aload 0 /* this */
            aload 1 /* instrumentation */
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.check:(Ljava/lang/instrument/Instrumentation;)V
         1: .line 4685
            iconst_0
            istore 14 /* batch */
        start local 14 // int batch
         2: .line 4686
            aload 6 /* redefinitionDiscoveryStrategy */
            aload 1 /* instrumentation */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy.resolve:(Ljava/lang/instrument/Instrumentation;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 16
            goto 44
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int top java.util.Iterator
      StackMap stack:
         3: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Iterable
            astore 15 /* types */
        start local 15 // java.lang.Iterable types
         4: .line 4687
            aload 0 /* this */
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.make:()Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Collector;
            astore 17 /* collector */
        start local 17 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector collector
         5: .line 4688
            aload 15 /* types */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 19
            goto 42
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector top java.util.Iterator
      StackMap stack:
         6: aload 19
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 18 /* type */
        start local 18 // java.lang.Class type
         7: .line 4689
            aload 18 /* type */
            ifnull 42
            aload 18 /* type */
            invokevirtual java.lang.Class.isArray:()Z
            ifne 42
            aload 9 /* lambdaInstrumentationStrategy */
            aload 18 /* type */
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy.isInstrumented:(Ljava/lang/Class;)Z
            ifne 9
         8: .line 4690
            goto 42
         9: .line 4692
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector java.lang.Class java.util.Iterator
      StackMap stack:
            aload 18 /* type */
            invokestatic net.bytebuddy.utility.JavaModule.ofType:(Ljava/lang/Class;)Lnet/bytebuddy/utility/JavaModule;
            astore 20 /* module */
        start local 20 // net.bytebuddy.utility.JavaModule module
        10: .line 4694
            aload 4 /* poolStrategy */
            aload 5 /* locationStrategy */
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 20 /* module */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy.classFileLocator:(Ljava/lang/ClassLoader;Lnet/bytebuddy/utility/JavaModule;)Lnet/bytebuddy/dynamic/ClassFileLocator;
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy.typePool:(Lnet/bytebuddy/dynamic/ClassFileLocator;Ljava/lang/ClassLoader;)Lnet/bytebuddy/pool/TypePool;
            astore 21 /* typePool */
        start local 21 // net.bytebuddy.pool.TypePool typePool
        11: .line 4696
            aload 17 /* collector */
            aload 12 /* typeMatcher */
        12: .line 4697
            aload 13 /* ignoredTypeMatcher */
        13: .line 4698
            aload 2 /* listener */
        14: .line 4699
            aload 10 /* descriptionStrategy */
            aload 18 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.getName:(Ljava/lang/Class;)Ljava/lang/String;
            aload 18 /* type */
            aload 21 /* typePool */
            aload 3 /* circularityLock */
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 20 /* module */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy.apply:(Ljava/lang/String;Ljava/lang/Class;Lnet/bytebuddy/pool/TypePool;Lnet/bytebuddy/agent/builder/AgentBuilder$CircularityLock;Ljava/lang/ClassLoader;Lnet/bytebuddy/utility/JavaModule;)Lnet/bytebuddy/description/type/TypeDescription;
        15: .line 4700
            aload 18 /* type */
        16: .line 4701
            aload 18 /* type */
        17: .line 4702
            aload 20 /* module */
        18: .line 4703
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.DISPATCHER:Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Dispatcher;
            aload 1 /* instrumentation */
            aload 18 /* type */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher.isModifiableClass:(Ljava/lang/instrument/Instrumentation;Ljava/lang/Class;)Z
            ifeq 19
            iconst_0
            goto 20
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector java.lang.Class java.util.Iterator net.bytebuddy.utility.JavaModule net.bytebuddy.pool.TypePool
      StackMap stack: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.description.type.TypeDescription java.lang.Class java.lang.Class net.bytebuddy.utility.JavaModule
        19: iconst_1
        20: .line 4696
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector java.lang.Class java.util.Iterator net.bytebuddy.utility.JavaModule net.bytebuddy.pool.TypePool
      StackMap stack: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.description.type.TypeDescription java.lang.Class java.lang.Class net.bytebuddy.utility.JavaModule int
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector.consider:(Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;Lnet/bytebuddy/agent/builder/AgentBuilder$Listener;Lnet/bytebuddy/description/type/TypeDescription;Ljava/lang/Class;Ljava/lang/Class;Lnet/bytebuddy/utility/JavaModule;Z)V
        21: .line 4704
            goto 42
      StackMap locals:
      StackMap stack: java.lang.Throwable
        22: astore 22 /* throwable */
        start local 22 // java.lang.Throwable throwable
        23: .line 4705
            aload 10 /* descriptionStrategy */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy.isLoadedFirst:()Z
            ifeq 32
            aload 11 /* fallbackStrategy */
            aload 18 /* type */
            aload 22 /* throwable */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy.isFallback:(Ljava/lang/Class;Ljava/lang/Throwable;)Z
            ifeq 32
        24: .line 4706
            aload 17 /* collector */
            aload 12 /* typeMatcher */
        25: .line 4707
            aload 13 /* ignoredTypeMatcher */
        26: .line 4708
            aload 2 /* listener */
        27: .line 4709
            aload 21 /* typePool */
            aload 18 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.getName:(Ljava/lang/Class;)Ljava/lang/String;
            invokeinterface net.bytebuddy.pool.TypePool.describe:(Ljava/lang/String;)Lnet/bytebuddy/pool/TypePool$Resolution;
            invokeinterface net.bytebuddy.pool.TypePool$Resolution.resolve:()Lnet/bytebuddy/description/type/TypeDescription;
        28: .line 4710
            aload 18 /* type */
        29: .line 4711
            aload 20 /* module */
        30: .line 4706
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector.consider:(Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;Lnet/bytebuddy/agent/builder/AgentBuilder$Listener;Lnet/bytebuddy/description/type/TypeDescription;Ljava/lang/Class;Lnet/bytebuddy/utility/JavaModule;)V
        31: .line 4712
            goto 42
        32: .line 4713
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 22 /* throwable */
            athrow
        end local 22 // java.lang.Throwable throwable
        end local 21 // net.bytebuddy.pool.TypePool typePool
        33: .line 4716
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector java.lang.Class java.util.Iterator net.bytebuddy.utility.JavaModule
      StackMap stack: java.lang.Throwable
            astore 21 /* throwable */
        start local 21 // java.lang.Throwable throwable
        34: .line 4719
            aload 2 /* listener */
            aload 18 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.getName:(Ljava/lang/Class;)Ljava/lang/String;
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 20 /* module */
            iconst_1
            aload 21 /* throwable */
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$Listener.onError:(Ljava/lang/String;Ljava/lang/ClassLoader;Lnet/bytebuddy/utility/JavaModule;ZLjava/lang/Throwable;)V
        35: .line 4720
            goto 39
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector java.lang.Class java.util.Iterator net.bytebuddy.utility.JavaModule java.lang.Throwable
      StackMap stack: java.lang.Throwable
        36: astore 22
        37: .line 4721
            aload 2 /* listener */
            aload 18 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.getName:(Ljava/lang/Class;)Ljava/lang/String;
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 20 /* module */
            iconst_1
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$Listener.onComplete:(Ljava/lang/String;Ljava/lang/ClassLoader;Lnet/bytebuddy/utility/JavaModule;Z)V
        38: .line 4722
            aload 22
            athrow
        39: .line 4721
      StackMap locals:
      StackMap stack:
            aload 2 /* listener */
            aload 18 /* type */
            invokestatic net.bytebuddy.description.type.TypeDescription$ForLoadedType.getName:(Ljava/lang/Class;)Ljava/lang/String;
            aload 18 /* type */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 20 /* module */
            iconst_1
            invokeinterface net.bytebuddy.agent.builder.AgentBuilder$Listener.onComplete:(Ljava/lang/String;Ljava/lang/ClassLoader;Lnet/bytebuddy/utility/JavaModule;Z)V
        40: .line 4723
            goto 42
      StackMap locals:
      StackMap stack: java.lang.Throwable
        41: pop
        end local 21 // java.lang.Throwable throwable
        end local 20 // net.bytebuddy.utility.JavaModule module
        end local 18 // java.lang.Class type
        42: .line 4688
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int java.lang.Iterable java.util.Iterator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector top java.util.Iterator
      StackMap stack:
            aload 19
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        43: .line 4728
            aload 17 /* collector */
            aload 1 /* instrumentation */
            aload 3 /* circularityLock */
            aload 5 /* locationStrategy */
            aload 2 /* listener */
            aload 7 /* redefinitionBatchAllocator */
            aload 8 /* redefinitionListener */
            iload 14 /* batch */
            invokevirtual net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector.apply:(Ljava/lang/instrument/Instrumentation;Lnet/bytebuddy/agent/builder/AgentBuilder$CircularityLock;Lnet/bytebuddy/agent/builder/AgentBuilder$LocationStrategy;Lnet/bytebuddy/agent/builder/AgentBuilder$Listener;Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$BatchAllocator;Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Listener;I)I
            istore 14 /* batch */
        end local 17 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector collector
        end local 15 // java.lang.Iterable types
        44: .line 4686
      StackMap locals: net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy java.lang.instrument.Instrumentation net.bytebuddy.agent.builder.AgentBuilder$Listener net.bytebuddy.agent.builder.AgentBuilder$CircularityLock net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy net.bytebuddy.agent.builder.AgentBuilder$RawMatcher net.bytebuddy.agent.builder.AgentBuilder$RawMatcher int top java.util.Iterator
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        45: .line 4730
            return
        end local 14 // int batch
        end local 13 // net.bytebuddy.agent.builder.AgentBuilder$RawMatcher ignoredTypeMatcher
        end local 12 // net.bytebuddy.agent.builder.AgentBuilder$RawMatcher typeMatcher
        end local 11 // net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy fallbackStrategy
        end local 10 // net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy descriptionStrategy
        end local 9 // net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy lambdaInstrumentationStrategy
        end local 8 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener redefinitionListener
        end local 7 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator redefinitionBatchAllocator
        end local 6 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy redefinitionDiscoveryStrategy
        end local 5 // net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy locationStrategy
        end local 4 // net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy poolStrategy
        end local 3 // net.bytebuddy.agent.builder.AgentBuilder$CircularityLock circularityLock
        end local 2 // net.bytebuddy.agent.builder.AgentBuilder$Listener listener
        end local 1 // java.lang.instrument.Instrumentation instrumentation
        end local 0 // net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0   46     0                           this  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            0   46     1                instrumentation  Ljava/lang/instrument/Instrumentation;
            0   46     2                       listener  Lnet/bytebuddy/agent/builder/AgentBuilder$Listener;
            0   46     3                circularityLock  Lnet/bytebuddy/agent/builder/AgentBuilder$CircularityLock;
            0   46     4                   poolStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$PoolStrategy;
            0   46     5               locationStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$LocationStrategy;
            0   46     6  redefinitionDiscoveryStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$DiscoveryStrategy;
            0   46     7     redefinitionBatchAllocator  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$BatchAllocator;
            0   46     8           redefinitionListener  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Listener;
            0   46     9  lambdaInstrumentationStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$LambdaInstrumentationStrategy;
            0   46    10            descriptionStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$DescriptionStrategy;
            0   46    11               fallbackStrategy  Lnet/bytebuddy/agent/builder/AgentBuilder$FallbackStrategy;
            0   46    12                    typeMatcher  Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;
            0   46    13             ignoredTypeMatcher  Lnet/bytebuddy/agent/builder/AgentBuilder$RawMatcher;
            2   46    14                          batch  I
            4   44    15                          types  Ljava/lang/Iterable<Ljava/lang/Class<*>;>;
            5   44    17                      collector  Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy$Collector;
            7   42    18                           type  Ljava/lang/Class<*>;
           10   42    20                         module  Lnet/bytebuddy/utility/JavaModule;
           11   33    21                       typePool  Lnet/bytebuddy/pool/TypePool;
           23   33    22                      throwable  Ljava/lang/Throwable;
           34   42    21                      throwable  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          11    21      22  Class java.lang.Throwable
          10    33      33  Class java.lang.Throwable
          34    36      36  any
          34    40      41  Class java.lang.Throwable
    MethodParameters:
                               Name  Flags
      instrumentation                
      listener                       
      circularityLock                
      poolStrategy                   
      locationStrategy               
      redefinitionDiscoveryStrategy  
      redefinitionBatchAllocator     
      redefinitionListener           
      lambdaInstrumentationStrategy  
      descriptionStrategy            
      fallbackStrategy               
      typeMatcher                    
      ignoredTypeMatcher             

  public static net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy[] values();
    descriptor: ()[Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy.ENUM$VALUES:[Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  
}
Signature: Ljava/lang/Enum<Lnet/bytebuddy/agent/builder/AgentBuilder$RedefinitionStrategy;>;
SourceFile: "AgentBuilder.java"
NestHost: net.bytebuddy.agent.builder.AgentBuilder
InnerClasses:
  public abstract CircularityLock = net.bytebuddy.agent.builder.AgentBuilder$CircularityLock of net.bytebuddy.agent.builder.AgentBuilder
  public abstract DescriptionStrategy = net.bytebuddy.agent.builder.AgentBuilder$DescriptionStrategy of net.bytebuddy.agent.builder.AgentBuilder
  public abstract FallbackStrategy = net.bytebuddy.agent.builder.AgentBuilder$FallbackStrategy of net.bytebuddy.agent.builder.AgentBuilder
  public abstract LambdaInstrumentationStrategy = net.bytebuddy.agent.builder.AgentBuilder$LambdaInstrumentationStrategy of net.bytebuddy.agent.builder.AgentBuilder
  public abstract Listener = net.bytebuddy.agent.builder.AgentBuilder$Listener of net.bytebuddy.agent.builder.AgentBuilder
  public abstract LocationStrategy = net.bytebuddy.agent.builder.AgentBuilder$LocationStrategy of net.bytebuddy.agent.builder.AgentBuilder
  public abstract PoolStrategy = net.bytebuddy.agent.builder.AgentBuilder$PoolStrategy of net.bytebuddy.agent.builder.AgentBuilder
  public abstract RawMatcher = net.bytebuddy.agent.builder.AgentBuilder$RawMatcher of net.bytebuddy.agent.builder.AgentBuilder
  public abstract RedefinitionStrategy = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy of net.bytebuddy.agent.builder.AgentBuilder
  net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$1
  net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$2
  net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$3
  public abstract BatchAllocator = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$BatchAllocator of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  protected abstract Collector = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  public abstract DiscoveryStrategy = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$DiscoveryStrategy of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  protected abstract Dispatcher = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  public final CreationAction = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher$CreationAction of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Dispatcher
  public abstract Listener = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Listener of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  public abstract ResubmissionScheduler = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionScheduler of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  protected abstract ResubmissionStrategy = net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$ResubmissionStrategy of net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy
  public ForLoadedType = net.bytebuddy.description.type.TypeDescription$ForLoadedType of net.bytebuddy.description.type.TypeDescription
  public abstract Resolution = net.bytebuddy.pool.TypePool$Resolution of net.bytebuddy.pool.TypePool