public abstract class com.netflix.hystrix.HystrixCommand<R> extends com.netflix.hystrix.AbstractCommand<R> implements com.netflix.hystrix.HystrixExecutable<R>, com.netflix.hystrix.HystrixInvokableInfo<R>, com.netflix.hystrix.HystrixObservable<R>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.netflix.hystrix.HystrixCommand
  super_class: com.netflix.hystrix.AbstractCommand
{
  private final java.util.concurrent.atomic.AtomicReference<java.lang.Thread> executionThread;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Thread;>;

  private final java.util.concurrent.atomic.AtomicBoolean interruptOnFutureCancel;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$com$netflix$hystrix$exception$HystrixRuntimeException$FailureType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  protected void <init>(com.netflix.hystrix.HystrixCommandGroupKey);
    descriptor: (Lcom/netflix/hystrix/HystrixCommandGroupKey;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=2, args_size=2
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
         0: .line 62
            aload 0 /* this */
            aload 1 /* group */
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokespecial com.netflix.hystrix.AbstractCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield com.netflix.hystrix.HystrixCommand.executionThread:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 267
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield com.netflix.hystrix.HystrixCommand.interruptOnFutureCancel:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 63
            return
        end local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    4     1  group  Lcom/netflix/hystrix/HystrixCommandGroupKey;
    MethodParameters:
       Name  Flags
      group  

  protected void <init>(com.netflix.hystrix.HystrixCommandGroupKey, com.netflix.hystrix.HystrixThreadPoolKey);
    descriptor: (Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=3, args_size=3
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        start local 2 // com.netflix.hystrix.HystrixThreadPoolKey threadPool
         0: .line 80
            aload 0 /* this */
            aload 1 /* group */
            aconst_null
            aload 2 /* threadPool */
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokespecial com.netflix.hystrix.AbstractCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield com.netflix.hystrix.HystrixCommand.executionThread:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 267
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield com.netflix.hystrix.HystrixCommand.interruptOnFutureCancel:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 81
            return
        end local 2 // com.netflix.hystrix.HystrixThreadPoolKey threadPool
        end local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    4     1       group  Lcom/netflix/hystrix/HystrixCommandGroupKey;
            0    4     2  threadPool  Lcom/netflix/hystrix/HystrixThreadPoolKey;
    MethodParameters:
            Name  Flags
      group       
      threadPool  

  protected void <init>(com.netflix.hystrix.HystrixCommandGroupKey, int);
    descriptor: (Lcom/netflix/hystrix/HystrixCommandGroupKey;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=3, args_size=3
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        start local 2 // int executionIsolationThreadTimeoutInMilliseconds
         0: .line 97
            aload 0 /* this */
            aload 1 /* group */
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokestatic com.netflix.hystrix.HystrixCommandProperties.Setter:()Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            iload 2 /* executionIsolationThreadTimeoutInMilliseconds */
            invokevirtual com.netflix.hystrix.HystrixCommandProperties$Setter.withExecutionTimeoutInMilliseconds:(I)Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokespecial com.netflix.hystrix.AbstractCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield com.netflix.hystrix.HystrixCommand.executionThread:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 267
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield com.netflix.hystrix.HystrixCommand.interruptOnFutureCancel:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 98
            return
        end local 2 // int executionIsolationThreadTimeoutInMilliseconds
        end local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot                                           Name  Signature
            0    4     0                                           this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    4     1                                          group  Lcom/netflix/hystrix/HystrixCommandGroupKey;
            0    4     2  executionIsolationThreadTimeoutInMilliseconds  I
    MethodParameters:
                                               Name  Flags
      group                                          
      executionIsolationThreadTimeoutInMilliseconds  

  protected void <init>(com.netflix.hystrix.HystrixCommandGroupKey, com.netflix.hystrix.HystrixThreadPoolKey, int);
    descriptor: (Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=4, args_size=4
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        start local 2 // com.netflix.hystrix.HystrixThreadPoolKey threadPool
        start local 3 // int executionIsolationThreadTimeoutInMilliseconds
         0: .line 116
            aload 0 /* this */
            aload 1 /* group */
            aconst_null
            aload 2 /* threadPool */
            aconst_null
            aconst_null
            invokestatic com.netflix.hystrix.HystrixCommandProperties.Setter:()Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            iload 3 /* executionIsolationThreadTimeoutInMilliseconds */
            invokevirtual com.netflix.hystrix.HystrixCommandProperties$Setter.withExecutionTimeoutInMilliseconds:(I)Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokespecial com.netflix.hystrix.AbstractCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield com.netflix.hystrix.HystrixCommand.executionThread:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 267
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield com.netflix.hystrix.HystrixCommand.interruptOnFutureCancel:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 117
            return
        end local 3 // int executionIsolationThreadTimeoutInMilliseconds
        end local 2 // com.netflix.hystrix.HystrixThreadPoolKey threadPool
        end local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot                                           Name  Signature
            0    4     0                                           this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    4     1                                          group  Lcom/netflix/hystrix/HystrixCommandGroupKey;
            0    4     2                                     threadPool  Lcom/netflix/hystrix/HystrixThreadPoolKey;
            0    4     3  executionIsolationThreadTimeoutInMilliseconds  I
    MethodParameters:
                                               Name  Flags
      group                                          
      threadPool                                     
      executionIsolationThreadTimeoutInMilliseconds  

  protected void <init>(com.netflix.hystrix.HystrixCommand$Setter);
    descriptor: (Lcom/netflix/hystrix/HystrixCommand$Setter;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=13, locals=2, args_size=2
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommand$Setter setter
         0: .line 134
            aload 0 /* this */
            aload 1 /* setter */
            getfield com.netflix.hystrix.HystrixCommand$Setter.groupKey:Lcom/netflix/hystrix/HystrixCommandGroupKey;
            aload 1 /* setter */
            getfield com.netflix.hystrix.HystrixCommand$Setter.commandKey:Lcom/netflix/hystrix/HystrixCommandKey;
            aload 1 /* setter */
            getfield com.netflix.hystrix.HystrixCommand$Setter.threadPoolKey:Lcom/netflix/hystrix/HystrixThreadPoolKey;
            aconst_null
            aconst_null
            aload 1 /* setter */
            getfield com.netflix.hystrix.HystrixCommand$Setter.commandPropertiesDefaults:Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            aload 1 /* setter */
            getfield com.netflix.hystrix.HystrixCommand$Setter.threadPoolPropertiesDefaults:Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            aconst_null
            invokespecial com.netflix.hystrix.HystrixCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 135
            return
        end local 1 // com.netflix.hystrix.HystrixCommand$Setter setter
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    2     1  setter  Lcom/netflix/hystrix/HystrixCommand$Setter;
    MethodParameters:
        Name  Flags
      setter  

  void <init>(com.netflix.hystrix.HystrixCommandGroupKey, com.netflix.hystrix.HystrixCommandKey, com.netflix.hystrix.HystrixThreadPoolKey, com.netflix.hystrix.HystrixCircuitBreaker, com.netflix.hystrix.HystrixThreadPool, com.netflix.hystrix.HystrixCommandProperties$Setter, com.netflix.hystrix.HystrixThreadPoolProperties$Setter, com.netflix.hystrix.HystrixCommandMetrics, com.netflix.hystrix.AbstractCommand$TryableSemaphore, com.netflix.hystrix.AbstractCommand$TryableSemaphore, com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy, com.netflix.hystrix.strategy.executionhook.HystrixCommandExecutionHook);
    descriptor: (Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
    flags: (0x0000) 
    Code:
      stack=13, locals=13, args_size=13
        start local 0 // com.netflix.hystrix.HystrixCommand this
        start local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        start local 2 // com.netflix.hystrix.HystrixCommandKey key
        start local 3 // com.netflix.hystrix.HystrixThreadPoolKey threadPoolKey
        start local 4 // com.netflix.hystrix.HystrixCircuitBreaker circuitBreaker
        start local 5 // com.netflix.hystrix.HystrixThreadPool threadPool
        start local 6 // com.netflix.hystrix.HystrixCommandProperties$Setter commandPropertiesDefaults
        start local 7 // com.netflix.hystrix.HystrixThreadPoolProperties$Setter threadPoolPropertiesDefaults
        start local 8 // com.netflix.hystrix.HystrixCommandMetrics metrics
        start local 9 // com.netflix.hystrix.AbstractCommand$TryableSemaphore fallbackSemaphore
        start local 10 // com.netflix.hystrix.AbstractCommand$TryableSemaphore executionSemaphore
        start local 11 // com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy propertiesStrategy
        start local 12 // com.netflix.hystrix.strategy.executionhook.HystrixCommandExecutionHook executionHook
         0: .line 148
            aload 0 /* this */
            aload 1 /* group */
            aload 2 /* key */
            aload 3 /* threadPoolKey */
            aload 4 /* circuitBreaker */
            aload 5 /* threadPool */
            aload 6 /* commandPropertiesDefaults */
            aload 7 /* threadPoolPropertiesDefaults */
            aload 8 /* metrics */
            aload 9 /* fallbackSemaphore */
            aload 10 /* executionSemaphore */
            aload 11 /* propertiesStrategy */
            aload 12 /* executionHook */
            invokespecial com.netflix.hystrix.AbstractCommand.<init>:(Lcom/netflix/hystrix/HystrixCommandGroupKey;Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixThreadPoolKey;Lcom/netflix/hystrix/HystrixCircuitBreaker;Lcom/netflix/hystrix/HystrixThreadPool;Lcom/netflix/hystrix/HystrixCommandProperties$Setter;Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;Lcom/netflix/hystrix/HystrixCommandMetrics;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;)V
         1: .line 266
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield com.netflix.hystrix.HystrixCommand.executionThread:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 267
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
            putfield com.netflix.hystrix.HystrixCommand.interruptOnFutureCancel:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 149
            return
        end local 12 // com.netflix.hystrix.strategy.executionhook.HystrixCommandExecutionHook executionHook
        end local 11 // com.netflix.hystrix.strategy.properties.HystrixPropertiesStrategy propertiesStrategy
        end local 10 // com.netflix.hystrix.AbstractCommand$TryableSemaphore executionSemaphore
        end local 9 // com.netflix.hystrix.AbstractCommand$TryableSemaphore fallbackSemaphore
        end local 8 // com.netflix.hystrix.HystrixCommandMetrics metrics
        end local 7 // com.netflix.hystrix.HystrixThreadPoolProperties$Setter threadPoolPropertiesDefaults
        end local 6 // com.netflix.hystrix.HystrixCommandProperties$Setter commandPropertiesDefaults
        end local 5 // com.netflix.hystrix.HystrixThreadPool threadPool
        end local 4 // com.netflix.hystrix.HystrixCircuitBreaker circuitBreaker
        end local 3 // com.netflix.hystrix.HystrixThreadPoolKey threadPoolKey
        end local 2 // com.netflix.hystrix.HystrixCommandKey key
        end local 1 // com.netflix.hystrix.HystrixCommandGroupKey group
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0    4     0                          this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            0    4     1                         group  Lcom/netflix/hystrix/HystrixCommandGroupKey;
            0    4     2                           key  Lcom/netflix/hystrix/HystrixCommandKey;
            0    4     3                 threadPoolKey  Lcom/netflix/hystrix/HystrixThreadPoolKey;
            0    4     4                circuitBreaker  Lcom/netflix/hystrix/HystrixCircuitBreaker;
            0    4     5                    threadPool  Lcom/netflix/hystrix/HystrixThreadPool;
            0    4     6     commandPropertiesDefaults  Lcom/netflix/hystrix/HystrixCommandProperties$Setter;
            0    4     7  threadPoolPropertiesDefaults  Lcom/netflix/hystrix/HystrixThreadPoolProperties$Setter;
            0    4     8                       metrics  Lcom/netflix/hystrix/HystrixCommandMetrics;
            0    4     9             fallbackSemaphore  Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;
            0    4    10            executionSemaphore  Lcom/netflix/hystrix/AbstractCommand$TryableSemaphore;
            0    4    11            propertiesStrategy  Lcom/netflix/hystrix/strategy/properties/HystrixPropertiesStrategy;
            0    4    12                 executionHook  Lcom/netflix/hystrix/strategy/executionhook/HystrixCommandExecutionHook;
    MethodParameters:
                              Name  Flags
      group                         
      key                           
      threadPoolKey                 
      circuitBreaker                
      threadPool                    
      commandPropertiesDefaults     
      threadPoolPropertiesDefaults  
      metrics                       
      fallbackSemaphore             
      executionSemaphore            
      propertiesStrategy            
      executionHook                 

  protected abstract R run();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws java.lang.Exception
    Signature: ()TR;

  protected R getFallback();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 293
            new java.lang.UnsupportedOperationException
            dup
            ldc "No fallback available."
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
    Signature: ()TR;

  protected final rx.Observable<R> getExecutionObservable();
    descriptor: ()Lrx/Observable;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 298
            new com.netflix.hystrix.HystrixCommand$1
            dup
            aload 0 /* this */
            invokespecial com.netflix.hystrix.HystrixCommand$1.<init>:(Lcom/netflix/hystrix/HystrixCommand;)V
            invokestatic rx.Observable.defer:(Lrx/functions/Func0;)Lrx/Observable;
         1: .line 307
            new com.netflix.hystrix.HystrixCommand$2
            dup
            aload 0 /* this */
            invokespecial com.netflix.hystrix.HystrixCommand$2.<init>:(Lcom/netflix/hystrix/HystrixCommand;)V
            invokevirtual rx.Observable.doOnSubscribe:(Lrx/functions/Action0;)Lrx/Observable;
         2: .line 298
            areturn
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
    Signature: ()Lrx/Observable<TR;>;

  protected final rx.Observable<R> getFallbackObservable();
    descriptor: ()Lrx/Observable;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 318
            new com.netflix.hystrix.HystrixCommand$3
            dup
            aload 0 /* this */
            invokespecial com.netflix.hystrix.HystrixCommand$3.<init>:(Lcom/netflix/hystrix/HystrixCommand;)V
            invokestatic rx.Observable.defer:(Lrx/functions/Func0;)Lrx/Observable;
            areturn
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
    Signature: ()Lrx/Observable<TR;>;

  public R execute();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 344
            aload 0 /* this */
            invokevirtual com.netflix.hystrix.HystrixCommand.queue:()Ljava/util/concurrent/Future;
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
         1: areturn
         2: .line 345
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 346
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual com.netflix.hystrix.HystrixCommand.decomposeException:(Ljava/lang/Exception;)Ljava/lang/Throwable;
            invokestatic com.netflix.hystrix.util.Exceptions.sneakyThrow:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // java.lang.Exception e
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            3    4     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    Signature: ()TR;

  public java.util.concurrent.Future<R> queue();
    descriptor: ()Ljava/util/concurrent/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 378
            aload 0 /* this */
            invokevirtual com.netflix.hystrix.HystrixCommand.toObservable:()Lrx/Observable;
            invokevirtual rx.Observable.toBlocking:()Lrx/observables/BlockingObservable;
            invokevirtual rx.observables.BlockingObservable.toFuture:()Ljava/util/concurrent/Future;
            astore 1 /* delegate */
        start local 1 // java.util.concurrent.Future delegate
         1: .line 380
            new com.netflix.hystrix.HystrixCommand$4
            dup
            aload 0 /* this */
            aload 1 /* delegate */
            invokespecial com.netflix.hystrix.HystrixCommand$4.<init>:(Lcom/netflix/hystrix/HystrixCommand;Ljava/util/concurrent/Future;)V
            astore 2 /* f */
        start local 2 // java.util.concurrent.Future f
         2: .line 434
            aload 2 /* f */
            invokeinterface java.util.concurrent.Future.isDone:()Z
            ifeq 16
         3: .line 436
            aload 2 /* f */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
         4: .line 437
            aload 2 /* f */
         5: areturn
         6: .line 438
      StackMap locals: com.netflix.hystrix.HystrixCommand java.util.concurrent.Future java.util.concurrent.Future
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
         7: .line 439
            aload 0 /* this */
            aload 3 /* e */
            invokevirtual com.netflix.hystrix.HystrixCommand.decomposeException:(Ljava/lang/Exception;)Ljava/lang/Throwable;
            astore 4 /* t */
        start local 4 // java.lang.Throwable t
         8: .line 440
            aload 4 /* t */
            instanceof com.netflix.hystrix.exception.HystrixBadRequestException
            ifeq 10
         9: .line 441
            aload 2 /* f */
            areturn
        10: .line 442
      StackMap locals: java.lang.Exception java.lang.Throwable
      StackMap stack:
            aload 4 /* t */
            instanceof com.netflix.hystrix.exception.HystrixRuntimeException
            ifeq 15
        11: .line 443
            aload 4 /* t */
            checkcast com.netflix.hystrix.exception.HystrixRuntimeException
            astore 5 /* hre */
        start local 5 // com.netflix.hystrix.exception.HystrixRuntimeException hre
        12: .line 444
            invokestatic com.netflix.hystrix.HystrixCommand.$SWITCH_TABLE$com$netflix$hystrix$exception$HystrixRuntimeException$FailureType:()[I
            aload 5 /* hre */
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException.getFailureType:()Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 13
                    3: 13
              default: 14
          }
        13: .line 448
      StackMap locals: com.netflix.hystrix.exception.HystrixRuntimeException
      StackMap stack:
            aload 2 /* f */
            areturn
        14: .line 451
      StackMap locals:
      StackMap stack:
            aload 5 /* hre */
            athrow
        end local 5 // com.netflix.hystrix.exception.HystrixRuntimeException hre
        15: .line 454
      StackMap locals:
      StackMap stack:
            aload 4 /* t */
            invokestatic com.netflix.hystrix.util.Exceptions.sneakyThrow:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 4 // java.lang.Throwable t
        end local 3 // java.lang.Exception e
        16: .line 459
      StackMap locals:
      StackMap stack:
            aload 2 /* f */
            areturn
        end local 2 // java.util.concurrent.Future f
        end local 1 // java.util.concurrent.Future delegate
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            1   17     1  delegate  Ljava/util/concurrent/Future<TR;>;
            2   17     2         f  Ljava/util/concurrent/Future<TR;>;
            7   16     3         e  Ljava/lang/Exception;
            8   16     4         t  Ljava/lang/Throwable;
           12   15     5       hre  Lcom/netflix/hystrix/exception/HystrixRuntimeException;
      Exception table:
        from    to  target  type
           3     5       6  Class java.lang.Exception
    Signature: ()Ljava/util/concurrent/Future<TR;>;

  protected java.lang.String getFallbackMethodName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 464
            ldc "getFallback"
            areturn
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;

  protected boolean isFallbackUserDefined();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 469
            getstatic com.netflix.hystrix.HystrixCommand.commandContainsFallback:Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            getfield com.netflix.hystrix.HystrixCommand.commandKey:Lcom/netflix/hystrix/HystrixCommandKey;
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 1 /* containsFromMap */
        start local 1 // java.lang.Boolean containsFromMap
         1: .line 470
            aload 1 /* containsFromMap */
            ifnull 3
         2: .line 471
            aload 1 /* containsFromMap */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
         3: .line 475
      StackMap locals: java.lang.Boolean
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc "getFallback"
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            pop
         4: .line 476
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 2 /* toInsertIntoMap */
        start local 2 // java.lang.Boolean toInsertIntoMap
         5: .line 477
            goto 8
        end local 2 // java.lang.Boolean toInsertIntoMap
      StackMap locals:
      StackMap stack: java.lang.NoSuchMethodException
         6: pop
         7: .line 478
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            astore 2 /* toInsertIntoMap */
        start local 2 // java.lang.Boolean toInsertIntoMap
         8: .line 480
      StackMap locals: java.lang.Boolean
      StackMap stack:
            getstatic com.netflix.hystrix.HystrixCommand.commandContainsFallback:Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            getfield com.netflix.hystrix.HystrixCommand.commandKey:Lcom/netflix/hystrix/HystrixCommandKey;
            aload 2 /* toInsertIntoMap */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 481
            aload 2 /* toInsertIntoMap */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
        end local 2 // java.lang.Boolean toInsertIntoMap
        end local 1 // java.lang.Boolean containsFromMap
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lcom/netflix/hystrix/HystrixCommand<TR;>;
            1   10     1  containsFromMap  Ljava/lang/Boolean;
            5    6     2  toInsertIntoMap  Ljava/lang/Boolean;
            8   10     2  toInsertIntoMap  Ljava/lang/Boolean;
      Exception table:
        from    to  target  type
           3     5       6  Class java.lang.NoSuchMethodException

  protected boolean commandIsScalar();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.netflix.hystrix.HystrixCommand this
         0: .line 487
            iconst_1
            ireturn
        end local 0 // com.netflix.hystrix.HystrixCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/netflix/hystrix/HystrixCommand<TR;>;

  public java.lang.Throwable getExecutionException();
    descriptor: ()Ljava/lang/Throwable;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getExecutionException:()Ljava/lang/Throwable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixCommandKey getCommandKey();
    descriptor: ()Lcom/netflix/hystrix/HystrixCommandKey;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getCommandKey:()Lcom/netflix/hystrix/HystrixCommandKey;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isExecutionComplete();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isExecutionComplete:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isFailedExecution();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isFailedExecution:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public rx.Observable observe();
    descriptor: ()Lrx/Observable;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.observe:()Lrx/Observable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseShortCircuited();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseShortCircuited:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public int getNumberEmissions();
    descriptor: ()I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getNumberEmissions:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseFromFallback();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseFromFallback:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixCommandGroupKey getCommandGroup();
    descriptor: ()Lcom/netflix/hystrix/HystrixCommandGroupKey;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getCommandGroup:()Lcom/netflix/hystrix/HystrixCommandGroupKey;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isExecutedInThread();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isExecutedInThread:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixCommandProperties getProperties();
    descriptor: ()Lcom/netflix/hystrix/HystrixCommandProperties;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getProperties:()Lcom/netflix/hystrix/HystrixCommandProperties;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseTimedOut();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseTimedOut:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public int getNumberFallbackEmissions();
    descriptor: ()I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getNumberFallbackEmissions:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public int getExecutionTimeInMilliseconds();
    descriptor: ()I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getExecutionTimeInMilliseconds:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixThreadPoolKey getThreadPoolKey();
    descriptor: ()Lcom/netflix/hystrix/HystrixThreadPoolKey;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getThreadPoolKey:()Lcom/netflix/hystrix/HystrixThreadPoolKey;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.List getExecutionEvents();
    descriptor: ()Ljava/util/List;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getExecutionEvents:()Ljava/util/List;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseFromCache();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseFromCache:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isSuccessfulExecution();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isSuccessfulExecution:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.ExecutionResult$EventCounts getEventCounts();
    descriptor: ()Lcom/netflix/hystrix/ExecutionResult$EventCounts;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getEventCounts:()Lcom/netflix/hystrix/ExecutionResult$EventCounts;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.Throwable getFailedExecutionException();
    descriptor: ()Ljava/lang/Throwable;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getFailedExecutionException:()Ljava/lang/Throwable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixCollapserKey getOriginatingCollapserKey();
    descriptor: ()Lcom/netflix/hystrix/HystrixCollapserKey;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getOriginatingCollapserKey:()Lcom/netflix/hystrix/HystrixCollapserKey;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public int getNumberCollapsed();
    descriptor: ()I
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getNumberCollapsed:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public rx.Observable toObservable();
    descriptor: ()Lrx/Observable;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.toObservable:()Lrx/Observable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseRejected();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseRejected:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public long getCommandRunStartTimeInNanos();
    descriptor: ()J
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getCommandRunStartTimeInNanos:()J
            lreturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isCircuitBreakerOpen();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isCircuitBreakerOpen:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseSemaphoreRejected();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseSemaphoreRejected:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public com.netflix.hystrix.HystrixCommandMetrics getMetrics();
    descriptor: ()Lcom/netflix/hystrix/HystrixCommandMetrics;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getMetrics:()Lcom/netflix/hystrix/HystrixCommandMetrics;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.lang.String getPublicCacheKey();
    descriptor: ()Ljava/lang/String;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.getPublicCacheKey:()Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public boolean isResponseThreadPoolRejected();
    descriptor: ()Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.netflix.hystrix.AbstractCommand.isResponseThreadPoolRejected:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$com$netflix$hystrix$exception$HystrixRuntimeException$FailureType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 47
            getstatic com.netflix.hystrix.HystrixCommand.$SWITCH_TABLE$com$netflix$hystrix$exception$HystrixRuntimeException$FailureType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.values:()[Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.BAD_REQUEST_EXCEPTION:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.COMMAND_EXCEPTION:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.REJECTED_SEMAPHORE_EXECUTION:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            bipush 6
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.REJECTED_SEMAPHORE_FALLBACK:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            bipush 7
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.REJECTED_THREAD_EXECUTION:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iconst_5
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.SHORTCIRCUIT:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iconst_4
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.TIMEOUT:Lcom/netflix/hystrix/exception/HystrixRuntimeException$FailureType;
            invokevirtual com.netflix.hystrix.exception.HystrixRuntimeException$FailureType.ordinal:()I
            iconst_3
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            dup
            putstatic com.netflix.hystrix.HystrixCommand.$SWITCH_TABLE$com$netflix$hystrix$exception$HystrixRuntimeException$FailureType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
}
Signature: <R:Ljava/lang/Object;>Lcom/netflix/hystrix/AbstractCommand<TR;>;Lcom/netflix/hystrix/HystrixExecutable<TR;>;Lcom/netflix/hystrix/HystrixInvokableInfo<TR;>;Lcom/netflix/hystrix/HystrixObservable<TR;>;
SourceFile: "HystrixCommand.java"
NestMembers:
  com.netflix.hystrix.HystrixCommand$1  com.netflix.hystrix.HystrixCommand$2  com.netflix.hystrix.HystrixCommand$3  com.netflix.hystrix.HystrixCommand$4  com.netflix.hystrix.HystrixCommand$Setter
InnerClasses:
  abstract TryableSemaphore = com.netflix.hystrix.AbstractCommand$TryableSemaphore of com.netflix.hystrix.AbstractCommand
  public EventCounts = com.netflix.hystrix.ExecutionResult$EventCounts of com.netflix.hystrix.ExecutionResult
  com.netflix.hystrix.HystrixCommand$1
  com.netflix.hystrix.HystrixCommand$2
  com.netflix.hystrix.HystrixCommand$3
  com.netflix.hystrix.HystrixCommand$4
  public final Setter = com.netflix.hystrix.HystrixCommand$Setter of com.netflix.hystrix.HystrixCommand
  public Setter = com.netflix.hystrix.HystrixCommandProperties$Setter of com.netflix.hystrix.HystrixCommandProperties
  public Setter = com.netflix.hystrix.HystrixThreadPoolProperties$Setter of com.netflix.hystrix.HystrixThreadPoolProperties
  public final FailureType = com.netflix.hystrix.exception.HystrixRuntimeException$FailureType of com.netflix.hystrix.exception.HystrixRuntimeException