public final class reactor.util.retry.RetrySpec extends reactor.util.retry.Retry
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: reactor.util.retry.RetrySpec
  super_class: reactor.util.retry.Retry
{
  static final java.time.Duration MAX_BACKOFF;
    descriptor: Ljava/time/Duration;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal> NO_OP_CONSUMER;
    descriptor: Ljava/util/function/Consumer;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;

  static final java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>> NO_OP_BIFUNCTION;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;

  static final java.util.function.BiFunction<reactor.util.retry.RetrySpec, reactor.util.retry.Retry$RetrySignal, java.lang.Throwable> RETRY_EXCEPTION_GENERATOR;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;

  public final long maxAttempts;
    descriptor: J
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final java.util.function.Predicate<java.lang.Throwable> errorFilter;
    descriptor: Ljava/util/function/Predicate;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Signature: Ljava/util/function/Predicate<Ljava/lang/Throwable;>;

  public final boolean isTransientErrors;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  final java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal> doPreRetry;
    descriptor: Ljava/util/function/Consumer;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;

  final java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal> doPostRetry;
    descriptor: Ljava/util/function/Consumer;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;

  final java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>> asyncPreRetry;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;

  final java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>> asyncPostRetry;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;

  final java.util.function.BiFunction<reactor.util.retry.RetrySpec, reactor.util.retry.Retry$RetrySignal, java.lang.Throwable> retryExhaustedGenerator;
    descriptor: Ljava/util/function/BiFunction;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 54
            ldc 9223372036854775807
            invokestatic java.time.Duration.ofMillis:(J)Ljava/time/Duration;
            putstatic reactor.util.retry.RetrySpec.MAX_BACKOFF:Ljava/time/Duration;
         1: .line 55
            invokedynamic accept()Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  reactor/util/retry/RetrySpec.lambda$0(Lreactor/util/retry/Retry$RetrySignal;)V (6)
                  (Lreactor/util/retry/Retry$RetrySignal;)V
            putstatic reactor.util.retry.RetrySpec.NO_OP_CONSUMER:Ljava/util/function/Consumer;
         2: .line 56
            invokedynamic apply()Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/util/retry/RetrySpec.lambda$1(Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono; (6)
                  (Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
            putstatic reactor.util.retry.RetrySpec.NO_OP_BIFUNCTION:Ljava/util/function/BiFunction;
         3: .line 60
            invokedynamic apply()Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/util/retry/RetrySpec.lambda$2(Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;)Ljava/lang/Throwable; (6)
                  (Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;)Ljava/lang/Throwable;
            putstatic reactor.util.retry.RetrySpec.RETRY_EXCEPTION_GENERATOR:Ljava/util/function/BiFunction;
         4: .line 65
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(reactor.util.context.ContextView, long, java.util.function.Predicate<? super java.lang.Throwable>, boolean, java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>, java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>, java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>>, java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>>, java.util.function.BiFunction<reactor.util.retry.RetrySpec, reactor.util.retry.Retry$RetrySignal, java.lang.Throwable>);
    descriptor: (Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=11, args_size=10
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // reactor.util.context.ContextView retryContext
        start local 2 // long max
        start local 4 // java.util.function.Predicate aThrowablePredicate
        start local 5 // boolean isTransientErrors
        start local 6 // java.util.function.Consumer doPreRetry
        start local 7 // java.util.function.Consumer doPostRetry
        start local 8 // java.util.function.BiFunction asyncPreRetry
        start local 9 // java.util.function.BiFunction asyncPostRetry
        start local 10 // java.util.function.BiFunction retryExhaustedGenerator
         0: .line 106
            aload 0 /* this */
            aload 1 /* retryContext */
            invokespecial reactor.util.retry.Retry.<init>:(Lreactor/util/context/ContextView;)V
         1: .line 107
            aload 0 /* this */
            lload 2 /* max */
            putfield reactor.util.retry.RetrySpec.maxAttempts:J
         2: .line 108
            aload 0 /* this */
            aload 4 /* aThrowablePredicate */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic test(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/function/Predicate.test(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/Throwable;)Z
            putfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         3: .line 109
            aload 0 /* this */
            iload 5 /* isTransientErrors */
            putfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         4: .line 110
            aload 0 /* this */
            aload 6 /* doPreRetry */
            putfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         5: .line 111
            aload 0 /* this */
            aload 7 /* doPostRetry */
            putfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         6: .line 112
            aload 0 /* this */
            aload 8 /* asyncPreRetry */
            putfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         7: .line 113
            aload 0 /* this */
            aload 9 /* asyncPostRetry */
            putfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         8: .line 114
            aload 0 /* this */
            aload 10 /* retryExhaustedGenerator */
            putfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
         9: .line 115
            return
        end local 10 // java.util.function.BiFunction retryExhaustedGenerator
        end local 9 // java.util.function.BiFunction asyncPostRetry
        end local 8 // java.util.function.BiFunction asyncPreRetry
        end local 7 // java.util.function.Consumer doPostRetry
        end local 6 // java.util.function.Consumer doPreRetry
        end local 5 // boolean isTransientErrors
        end local 4 // java.util.function.Predicate aThrowablePredicate
        end local 2 // long max
        end local 1 // reactor.util.context.ContextView retryContext
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   10     0                     this  Lreactor/util/retry/RetrySpec;
            0   10     1             retryContext  Lreactor/util/context/ContextView;
            0   10     2                      max  J
            0   10     4      aThrowablePredicate  Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;
            0   10     5        isTransientErrors  Z
            0   10     6               doPreRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
            0   10     7              doPostRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
            0   10     8            asyncPreRetry  Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
            0   10     9           asyncPostRetry  Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
            0   10    10  retryExhaustedGenerator  Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;
    Signature: (Lreactor/util/context/ContextView;JLjava/util/function/Predicate<-Ljava/lang/Throwable;>;ZLjava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;)V
    MethodParameters:
                         Name  Flags
      retryContext             
      max                      
      aThrowablePredicate      
      isTransientErrors        
      doPreRetry               
      doPostRetry              
      asyncPreRetry            
      asyncPostRetry           
      retryExhaustedGenerator  

  public reactor.util.retry.RetrySpec withRetryContext(reactor.util.context.ContextView);
    descriptor: (Lreactor/util/context/ContextView;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // reactor.util.context.ContextView retryContext
         0: .line 124
            new reactor.util.retry.RetrySpec
            dup
         1: .line 125
            aload 1 /* retryContext */
         2: .line 126
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 127
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 128
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 129
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 130
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 131
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 132
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 133
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 124
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // reactor.util.context.ContextView retryContext
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lreactor/util/retry/RetrySpec;
            0   11     1  retryContext  Lreactor/util/context/ContextView;
    MethodParameters:
              Name  Flags
      retryContext  

  public reactor.util.retry.RetrySpec maxAttempts(long);
    descriptor: (J)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=3, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // long maxAttempts
         0: .line 145
            new reactor.util.retry.RetrySpec
            dup
         1: .line 146
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 147
            lload 1 /* maxAttempts */
         3: .line 148
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 149
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 150
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 151
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 152
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 153
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 154
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 145
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // long maxAttempts
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lreactor/util/retry/RetrySpec;
            0   11     1  maxAttempts  J
    MethodParameters:
             Name  Flags
      maxAttempts  

  public reactor.util.retry.RetrySpec filter(java.util.function.Predicate<? super java.lang.Throwable>);
    descriptor: (Ljava/util/function/Predicate;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Predicate errorFilter
         0: .line 166
            new reactor.util.retry.RetrySpec
            dup
         1: .line 167
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 168
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 169
            aload 1 /* errorFilter */
            ldc "errorFilter"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.util.function.Predicate
         4: .line 170
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 171
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 172
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 173
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 174
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 175
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 166
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.Predicate errorFilter
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lreactor/util/retry/RetrySpec;
            0   11     1  errorFilter  Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;
    Signature: (Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
             Name  Flags
      errorFilter  

  public reactor.util.retry.RetrySpec modifyErrorFilter(java.util.function.Function<java.util.function.Predicate<java.lang.Throwable>, java.util.function.Predicate<? super java.lang.Throwable>>);
    descriptor: (Ljava/util/function/Function;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=3, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Function predicateAdjuster
         0: .line 199
            aload 1 /* predicateAdjuster */
            ldc "predicateAdjuster"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 200
            aload 1 /* predicateAdjuster */
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.function.Predicate
         2: .line 201
            ldc "predicateAdjuster must return a new predicate"
         3: .line 200
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.util.function.Predicate
            astore 2 /* newPredicate */
        start local 2 // java.util.function.Predicate newPredicate
         4: .line 202
            new reactor.util.retry.RetrySpec
            dup
         5: .line 203
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         6: .line 204
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         7: .line 205
            aload 2 /* newPredicate */
         8: .line 206
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         9: .line 207
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
        10: .line 208
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
        11: .line 209
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
        12: .line 210
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
        13: .line 211
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        14: .line 202
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 2 // java.util.function.Predicate newPredicate
        end local 1 // java.util.function.Function predicateAdjuster
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   15     0               this  Lreactor/util/retry/RetrySpec;
            0   15     1  predicateAdjuster  Ljava/util/function/Function<Ljava/util/function/Predicate<Ljava/lang/Throwable;>;Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;>;
            4   15     2       newPredicate  Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;
    Signature: (Ljava/util/function/Function<Ljava/util/function/Predicate<Ljava/lang/Throwable;>;Ljava/util/function/Predicate<-Ljava/lang/Throwable;>;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
                   Name  Flags
      predicateAdjuster  

  public reactor.util.retry.RetrySpec doBeforeRetry(java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>);
    descriptor: (Ljava/util/function/Consumer;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Consumer doBeforeRetry
         0: .line 225
            new reactor.util.retry.RetrySpec
            dup
         1: .line 226
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 227
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 228
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 229
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 230
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
            aload 1 /* doBeforeRetry */
            invokeinterface java.util.function.Consumer.andThen:(Ljava/util/function/Consumer;)Ljava/util/function/Consumer;
         6: .line 231
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 232
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 233
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 234
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 225
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.Consumer doBeforeRetry
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lreactor/util/retry/RetrySpec;
            0   11     1  doBeforeRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
    Signature: (Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
               Name  Flags
      doBeforeRetry  

  public reactor.util.retry.RetrySpec doAfterRetry(java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>);
    descriptor: (Ljava/util/function/Consumer;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Consumer doAfterRetry
         0: .line 247
            new reactor.util.retry.RetrySpec
            dup
         1: .line 248
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 249
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 250
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 251
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 252
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 253
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
            aload 1 /* doAfterRetry */
            invokeinterface java.util.function.Consumer.andThen:(Ljava/util/function/Consumer;)Ljava/util/function/Consumer;
         7: .line 254
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 255
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 256
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 247
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.Consumer doAfterRetry
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lreactor/util/retry/RetrySpec;
            0   11     1  doAfterRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
    Signature: (Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
              Name  Flags
      doAfterRetry  

  public reactor.util.retry.RetrySpec doBeforeRetryAsync(java.util.function.Function<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>>);
    descriptor: (Ljava/util/function/Function;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Function doAsyncBeforeRetry
         0: .line 268
            new reactor.util.retry.RetrySpec
            dup
         1: .line 269
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 270
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 271
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 272
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 273
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 274
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 275
            aload 0 /* this */
            aload 1 /* doAsyncBeforeRetry */
            invokedynamic apply(Lreactor/util/retry/RetrySpec;Ljava/util/function/Function;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/util/retry/RetrySpec.lambda$4(Ljava/util/function/Function;Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono; (7)
                  (Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
         8: .line 276
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 277
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 268
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.Function doAsyncBeforeRetry
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   11     0                this  Lreactor/util/retry/RetrySpec;
            0   11     1  doAsyncBeforeRetry  Ljava/util/function/Function<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
    Signature: (Ljava/util/function/Function<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
                    Name  Flags
      doAsyncBeforeRetry  

  public reactor.util.retry.RetrySpec doAfterRetryAsync(java.util.function.Function<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>>);
    descriptor: (Ljava/util/function/Function;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.Function doAsyncAfterRetry
         0: .line 289
            new reactor.util.retry.RetrySpec
            dup
         1: .line 290
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 291
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 292
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 293
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 294
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 295
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 296
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 297
            aload 0 /* this */
            aload 1 /* doAsyncAfterRetry */
            invokedynamic apply(Lreactor/util/retry/RetrySpec;Ljava/util/function/Function;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/util/retry/RetrySpec.lambda$5(Ljava/util/function/Function;Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono; (7)
                  (Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
         9: .line 298
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 289
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.Function doAsyncAfterRetry
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0               this  Lreactor/util/retry/RetrySpec;
            0   11     1  doAsyncAfterRetry  Ljava/util/function/Function<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
    Signature: (Ljava/util/function/Function<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
                   Name  Flags
      doAsyncAfterRetry  

  public reactor.util.retry.RetrySpec onRetryExhaustedThrow(java.util.function.BiFunction<reactor.util.retry.RetrySpec, reactor.util.retry.Retry$RetrySignal, java.lang.Throwable>);
    descriptor: (Ljava/util/function/BiFunction;)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // java.util.function.BiFunction retryExhaustedGenerator
         0: .line 312
            new reactor.util.retry.RetrySpec
            dup
         1: .line 313
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 314
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 315
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 316
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
         5: .line 317
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 318
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 319
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 320
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 321
            aload 1 /* retryExhaustedGenerator */
            ldc "retryExhaustedGenerator"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast java.util.function.BiFunction
        10: .line 312
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // java.util.function.BiFunction retryExhaustedGenerator
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   11     0                     this  Lreactor/util/retry/RetrySpec;
            0   11     1  retryExhaustedGenerator  Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;
    Signature: (Ljava/util/function/BiFunction<Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;Ljava/lang/Throwable;>;)Lreactor/util/retry/RetrySpec;
    MethodParameters:
                         Name  Flags
      retryExhaustedGenerator  

  public reactor.util.retry.RetrySpec transientErrors(boolean);
    descriptor: (Z)Lreactor/util/retry/RetrySpec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // boolean isTransientErrors
         0: .line 338
            new reactor.util.retry.RetrySpec
            dup
         1: .line 339
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryContext:Lreactor/util/context/ContextView;
         2: .line 340
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
         3: .line 341
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
         4: .line 342
            iload 1 /* isTransientErrors */
         5: .line 343
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
         6: .line 344
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
         7: .line 345
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
         8: .line 346
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
         9: .line 347
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
        10: .line 338
            invokespecial reactor.util.retry.RetrySpec.<init>:(Lreactor/util/context/ContextView;JLjava/util/function/Predicate;ZLjava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)V
            areturn
        end local 1 // boolean isTransientErrors
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0               this  Lreactor/util/retry/RetrySpec;
            0   11     1  isTransientErrors  Z
    MethodParameters:
                   Name  Flags
      isTransientErrors  

  public reactor.core.publisher.Flux<java.lang.Long> generateCompanion(reactor.core.publisher.Flux<reactor.util.retry.Retry$RetrySignal>);
    descriptor: (Lreactor/core/publisher/Flux;)Lreactor/core/publisher/Flux;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // reactor.core.publisher.Flux flux
         0: .line 356
            aload 1 /* flux */
            aload 0 /* this */
            invokedynamic apply(Lreactor/util/retry/RetrySpec;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/util/retry/RetrySpec.lambda$6(Lreactor/util/retry/Retry$RetrySignal;)Lorg/reactivestreams/Publisher; (7)
                  (Lreactor/util/retry/Retry$RetrySignal;)Lorg/reactivestreams/Publisher;
            invokevirtual reactor.core.publisher.Flux.concatMap:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
            areturn
        end local 1 // reactor.core.publisher.Flux flux
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/util/retry/RetrySpec;
            0    1     1  flux  Lreactor/core/publisher/Flux<Lreactor/util/retry/Retry$RetrySignal;>;
    Signature: (Lreactor/core/publisher/Flux<Lreactor/util/retry/Retry$RetrySignal;>;)Lreactor/core/publisher/Flux<Ljava/lang/Long;>;
    MethodParameters:
      Name  Flags
      flux  

  static <T> reactor.core.publisher.Mono<T> applyHooks(reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<T>, java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>, java.util.function.Consumer<reactor.util.retry.Retry$RetrySignal>, java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>>, java.util.function.BiFunction<reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono<java.lang.Void>, reactor.core.publisher.Mono<java.lang.Void>>);
    descriptor: (Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;Ljava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)Lreactor/core/publisher/Mono;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=9, args_size=6
        start local 0 // reactor.util.retry.Retry$RetrySignal copyOfSignal
        start local 1 // reactor.core.publisher.Mono originalCompanion
        start local 2 // java.util.function.Consumer doPreRetry
        start local 3 // java.util.function.Consumer doPostRetry
        start local 4 // java.util.function.BiFunction asyncPreRetry
        start local 5 // java.util.function.BiFunction asyncPostRetry
         0: .line 387
            aload 2 /* doPreRetry */
            getstatic reactor.util.retry.RetrySpec.NO_OP_CONSUMER:Ljava/util/function/Consumer;
            if_acmpeq 5
         1: .line 389
            aload 2 /* doPreRetry */
            aload 0 /* copyOfSignal */
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         2: .line 390
            goto 5
         3: .line 391
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6 /* e */
        start local 6 // java.lang.Throwable e
         4: .line 392
            aload 6 /* e */
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
        end local 6 // java.lang.Throwable e
         5: .line 397
      StackMap locals:
      StackMap stack:
            aload 3 /* doPostRetry */
            getstatic reactor.util.retry.RetrySpec.NO_OP_CONSUMER:Ljava/util/function/Consumer;
            if_acmpeq 8
         6: .line 398
            aload 3 /* doPostRetry */
            aload 0 /* copyOfSignal */
            invokedynamic run(Ljava/util/function/Consumer;Lreactor/util/retry/Retry$RetrySignal;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  reactor/util/retry/RetrySpec.lambda$7(Ljava/util/function/Consumer;Lreactor/util/retry/Retry$RetrySignal;)V (6)
                  ()V
            invokestatic reactor.core.publisher.Mono.fromRunnable:(Ljava/lang/Runnable;)Lreactor/core/publisher/Mono;
            astore 6 /* postRetrySyncMono */
        start local 6 // reactor.core.publisher.Mono postRetrySyncMono
         7: .line 399
            goto 9
        end local 6 // reactor.core.publisher.Mono postRetrySyncMono
         8: .line 401
      StackMap locals:
      StackMap stack:
            invokestatic reactor.core.publisher.Mono.empty:()Lreactor/core/publisher/Mono;
            astore 6 /* postRetrySyncMono */
        start local 6 // reactor.core.publisher.Mono postRetrySyncMono
         9: .line 404
      StackMap locals: reactor.core.publisher.Mono
      StackMap stack:
            aload 4 /* asyncPreRetry */
            getstatic reactor.util.retry.RetrySpec.NO_OP_BIFUNCTION:Ljava/util/function/BiFunction;
            if_acmpne 10
            invokestatic reactor.core.publisher.Mono.empty:()Lreactor/core/publisher/Mono;
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 4 /* asyncPreRetry */
            aload 0 /* copyOfSignal */
            invokestatic reactor.core.publisher.Mono.empty:()Lreactor/core/publisher/Mono;
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
      StackMap locals:
      StackMap stack: reactor.core.publisher.Mono
        11: astore 7 /* preRetryMono */
        start local 7 // reactor.core.publisher.Mono preRetryMono
        12: .line 405
            aload 5 /* asyncPostRetry */
            getstatic reactor.util.retry.RetrySpec.NO_OP_BIFUNCTION:Ljava/util/function/BiFunction;
            if_acmpeq 13
            aload 5 /* asyncPostRetry */
            aload 0 /* copyOfSignal */
            aload 6 /* postRetrySyncMono */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
            goto 14
      StackMap locals: reactor.core.publisher.Mono
      StackMap stack:
        13: aload 6 /* postRetrySyncMono */
      StackMap locals:
      StackMap stack: reactor.core.publisher.Mono
        14: astore 8 /* postRetryMono */
        start local 8 // reactor.core.publisher.Mono postRetryMono
        15: .line 407
            aload 7 /* preRetryMono */
            aload 1 /* originalCompanion */
            invokevirtual reactor.core.publisher.Mono.then:(Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
            aload 8 /* postRetryMono */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic apply(Lreactor/core/publisher/Mono;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  reactor/core/publisher/Mono.thenReturn(Ljava/lang/Object;)Lreactor/core/publisher/Mono; (5)
                  (Ljava/lang/Object;)Lreactor/core/publisher/Mono;
            invokevirtual reactor.core.publisher.Mono.flatMap:(Ljava/util/function/Function;)Lreactor/core/publisher/Mono;
            areturn
        end local 8 // reactor.core.publisher.Mono postRetryMono
        end local 7 // reactor.core.publisher.Mono preRetryMono
        end local 6 // reactor.core.publisher.Mono postRetrySyncMono
        end local 5 // java.util.function.BiFunction asyncPostRetry
        end local 4 // java.util.function.BiFunction asyncPreRetry
        end local 3 // java.util.function.Consumer doPostRetry
        end local 2 // java.util.function.Consumer doPreRetry
        end local 1 // reactor.core.publisher.Mono originalCompanion
        end local 0 // reactor.util.retry.Retry$RetrySignal copyOfSignal
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   16     0       copyOfSignal  Lreactor/util/retry/Retry$RetrySignal;
            0   16     1  originalCompanion  Lreactor/core/publisher/Mono<TT;>;
            0   16     2         doPreRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
            0   16     3        doPostRetry  Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;
            0   16     4      asyncPreRetry  Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
            0   16     5     asyncPostRetry  Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;
            4    5     6                  e  Ljava/lang/Throwable;
            7    8     6  postRetrySyncMono  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;
            9   16     6  postRetrySyncMono  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;
           12   16     7       preRetryMono  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;
           15   16     8      postRetryMono  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Throwable
    Signature: <T:Ljava/lang/Object;>(Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<TT;>;Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;Ljava/util/function/Consumer<Lreactor/util/retry/Retry$RetrySignal;>;Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;Ljava/util/function/BiFunction<Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;Lreactor/core/publisher/Mono<Ljava/lang/Void;>;>;)Lreactor/core/publisher/Mono<TT;>;
    MethodParameters:
                   Name  Flags
      copyOfSignal       
      originalCompanion  
      doPreRetry         final
      doPostRetry        final
      asyncPreRetry      final
      asyncPostRetry     final

  public org.reactivestreams.Publisher generateCompanion(reactor.core.publisher.Flux);
    descriptor: (Lreactor/core/publisher/Flux;)Lorg/reactivestreams/Publisher;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual reactor.util.retry.RetrySpec.generateCompanion:(Lreactor/core/publisher/Flux;)Lreactor/core/publisher/Flux;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$0(reactor.util.retry.Retry$RetrySignal);
    descriptor: (Lreactor/util/retry/Retry$RetrySignal;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // reactor.util.retry.Retry$RetrySignal rs
         0: .line 55
            return
        end local 0 // reactor.util.retry.Retry$RetrySignal rs
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    rs  Lreactor/util/retry/Retry$RetrySignal;

  private static reactor.core.publisher.Mono lambda$1(reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono);
    descriptor: (Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // reactor.util.retry.Retry$RetrySignal rs
        start local 1 // reactor.core.publisher.Mono m
         0: .line 56
            aload 1 /* m */
            areturn
        end local 1 // reactor.core.publisher.Mono m
        end local 0 // reactor.util.retry.Retry$RetrySignal rs
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    rs  Lreactor/util/retry/Retry$RetrySignal;
            0    1     1     m  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;

  private static java.lang.Throwable lambda$2(reactor.util.retry.RetrySpec, reactor.util.retry.Retry$RetrySignal);
    descriptor: (Lreactor/util/retry/RetrySpec;Lreactor/util/retry/Retry$RetrySignal;)Ljava/lang/Throwable;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // reactor.util.retry.RetrySpec builder
        start local 1 // reactor.util.retry.Retry$RetrySignal rs
         0: .line 61
            new java.lang.StringBuilder
            dup
            ldc "Retries exhausted: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 62
            aload 0 /* builder */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
            ifeq 3
         2: .line 63
            new java.lang.StringBuilder
            dup
            aload 1 /* rs */
            invokeinterface reactor.util.retry.Retry$RetrySignal.totalRetriesInARow:()J
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* builder */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " in a row ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* rs */
            invokeinterface reactor.util.retry.Retry$RetrySignal.totalRetries:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " total)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 4
         3: .line 64
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            new java.lang.StringBuilder
            dup
            aload 1 /* rs */
            invokeinterface reactor.util.retry.Retry$RetrySignal.totalRetries:()J
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* builder */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 61
      StackMap locals: reactor.util.retry.RetrySpec reactor.util.retry.Retry$RetrySignal
      StackMap stack: java.lang.StringBuilder java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 65
            aload 1 /* rs */
            invokeinterface reactor.util.retry.Retry$RetrySignal.failure:()Ljava/lang/Throwable;
         6: .line 61
            invokestatic reactor.core.Exceptions.retryExhausted:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
         7: .line 65
            areturn
        end local 1 // reactor.util.retry.Retry$RetrySignal rs
        end local 0 // reactor.util.retry.RetrySpec builder
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  builder  Lreactor/util/retry/RetrySpec;
            0    8     1       rs  Lreactor/util/retry/Retry$RetrySignal;

  private reactor.core.publisher.Mono lambda$4(java.util.function.Function, reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono);
    descriptor: (Ljava/util/function/Function;Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // reactor.util.retry.RetrySpec this
        start local 2 // reactor.util.retry.Retry$RetrySignal rs
        start local 3 // reactor.core.publisher.Mono m
         0: .line 275
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
            aload 2 /* rs */
            aload 3 /* m */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
            aload 1
            aload 2 /* rs */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
            invokevirtual reactor.core.publisher.Mono.then:(Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
            areturn
        end local 3 // reactor.core.publisher.Mono m
        end local 2 // reactor.util.retry.Retry$RetrySignal rs
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/util/retry/RetrySpec;
            0    1     2    rs  Lreactor/util/retry/Retry$RetrySignal;
            0    1     3     m  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;

  private reactor.core.publisher.Mono lambda$5(java.util.function.Function, reactor.util.retry.Retry$RetrySignal, reactor.core.publisher.Mono);
    descriptor: (Ljava/util/function/Function;Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // reactor.util.retry.RetrySpec this
        start local 2 // reactor.util.retry.Retry$RetrySignal rs
        start local 3 // reactor.core.publisher.Mono m
         0: .line 297
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
            aload 2 /* rs */
            aload 3 /* m */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
            aload 1
            aload 2 /* rs */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast reactor.core.publisher.Mono
            invokevirtual reactor.core.publisher.Mono.then:(Lreactor/core/publisher/Mono;)Lreactor/core/publisher/Mono;
            areturn
        end local 3 // reactor.core.publisher.Mono m
        end local 2 // reactor.util.retry.Retry$RetrySignal rs
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lreactor/util/retry/RetrySpec;
            0    1     2    rs  Lreactor/util/retry/Retry$RetrySignal;
            0    1     3     m  Lreactor/core/publisher/Mono<Ljava/lang/Void;>;

  private org.reactivestreams.Publisher lambda$6(reactor.util.retry.Retry$RetrySignal);
    descriptor: (Lreactor/util/retry/Retry$RetrySignal;)Lorg/reactivestreams/Publisher;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // reactor.util.retry.RetrySpec this
        start local 1 // reactor.util.retry.Retry$RetrySignal retryWhenState
         0: .line 358
            aload 1 /* retryWhenState */
            invokeinterface reactor.util.retry.Retry$RetrySignal.copy:()Lreactor/util/retry/Retry$RetrySignal;
            astore 2 /* copy */
        start local 2 // reactor.util.retry.Retry$RetrySignal copy
         1: .line 359
            aload 2 /* copy */
            invokeinterface reactor.util.retry.Retry$RetrySignal.failure:()Ljava/lang/Throwable;
            astore 3 /* currentFailure */
        start local 3 // java.lang.Throwable currentFailure
         2: .line 360
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.isTransientErrors:Z
            ifeq 3
            aload 2 /* copy */
            invokeinterface reactor.util.retry.Retry$RetrySignal.totalRetriesInARow:()J
            goto 4
      StackMap locals: reactor.util.retry.Retry$RetrySignal java.lang.Throwable
      StackMap stack:
         3: aload 2 /* copy */
            invokeinterface reactor.util.retry.Retry$RetrySignal.totalRetries:()J
      StackMap locals:
      StackMap stack: long
         4: lstore 4 /* iteration */
        start local 4 // long iteration
         5: .line 362
            aload 3 /* currentFailure */
            ifnonnull 7
         6: .line 363
            new java.lang.IllegalStateException
            dup
            ldc "RetryWhenState#failure() not expected to be null"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
         7: .line 365
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.errorFilter:Ljava/util/function/Predicate;
            aload 3 /* currentFailure */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 366
            aload 3 /* currentFailure */
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
         9: .line 368
      StackMap locals:
      StackMap stack:
            lload 4 /* iteration */
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.maxAttempts:J
            lcmp
            iflt 11
        10: .line 369
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.retryExhaustedGenerator:Ljava/util/function/BiFunction;
            aload 0 /* this */
            aload 2 /* copy */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Throwable
            invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
            areturn
        11: .line 372
      StackMap locals:
      StackMap stack:
            aload 2 /* copy */
            lload 4 /* iteration */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokestatic reactor.core.publisher.Mono.just:(Ljava/lang/Object;)Lreactor/core/publisher/Mono;
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPreRetry:Ljava/util/function/Consumer;
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.doPostRetry:Ljava/util/function/Consumer;
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPreRetry:Ljava/util/function/BiFunction;
            aload 0 /* this */
            getfield reactor.util.retry.RetrySpec.asyncPostRetry:Ljava/util/function/BiFunction;
            invokestatic reactor.util.retry.RetrySpec.applyHooks:(Lreactor/util/retry/Retry$RetrySignal;Lreactor/core/publisher/Mono;Ljava/util/function/Consumer;Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;)Lreactor/core/publisher/Mono;
            areturn
        end local 4 // long iteration
        end local 3 // java.lang.Throwable currentFailure
        end local 2 // reactor.util.retry.Retry$RetrySignal copy
        end local 1 // reactor.util.retry.Retry$RetrySignal retryWhenState
        end local 0 // reactor.util.retry.RetrySpec this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lreactor/util/retry/RetrySpec;
            0   12     1  retryWhenState  Lreactor/util/retry/Retry$RetrySignal;
            1   12     2            copy  Lreactor/util/retry/Retry$RetrySignal;
            2   12     3  currentFailure  Ljava/lang/Throwable;
            5   12     4       iteration  J

  private static void lambda$7(java.util.function.Consumer, reactor.util.retry.Retry$RetrySignal);
    descriptor: (Ljava/util/function/Consumer;Lreactor/util/retry/Retry$RetrySignal;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 398
            aload 0
            aload 1
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "RetrySpec.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract RetrySignal = reactor.util.retry.Retry$RetrySignal of reactor.util.retry.Retry