public class org.apache.cassandra.net.MessageIn<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.net.MessageIn
  super_class: java.lang.Object
{
  public final java.net.InetAddress from;
    descriptor: Ljava/net/InetAddress;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final T payload;
    descriptor: Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Signature: TT;

  public final java.util.Map<java.lang.String, byte[]> parameters;
    descriptor: Ljava/util/Map;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;[B>;

  public final org.apache.cassandra.net.MessagingService$Verb verb;
    descriptor: Lorg/apache/cassandra/net/MessagingService$Verb;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final int version;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

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

  private void <init>(java.net.InetAddress, T, java.util.Map<java.lang.String, byte[]>, org.apache.cassandra.net.MessagingService$Verb, int, );
    descriptor: (Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=7
        start local 0 // org.apache.cassandra.net.MessageIn this
        start local 1 // java.net.InetAddress from
        start local 2 // java.lang.Object payload
        start local 3 // java.util.Map parameters
        start local 4 // org.apache.cassandra.net.MessagingService$Verb verb
        start local 5 // int version
        start local 6 // long constructionTime
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 51
            aload 0 /* this */
            aload 1 /* from */
            putfield org.apache.cassandra.net.MessageIn.from:Ljava/net/InetAddress;
         2: .line 52
            aload 0 /* this */
            aload 2 /* payload */
            putfield org.apache.cassandra.net.MessageIn.payload:Ljava/lang/Object;
         3: .line 53
            aload 0 /* this */
            aload 3 /* parameters */
            putfield org.apache.cassandra.net.MessageIn.parameters:Ljava/util/Map;
         4: .line 54
            aload 0 /* this */
            aload 4 /* verb */
            putfield org.apache.cassandra.net.MessageIn.verb:Lorg/apache/cassandra/net/MessagingService$Verb;
         5: .line 55
            aload 0 /* this */
            iload 5 /* version */
            putfield org.apache.cassandra.net.MessageIn.version:I
         6: .line 56
            aload 0 /* this */
            lload 6 /* constructionTime */
            putfield org.apache.cassandra.net.MessageIn.constructionTime:J
         7: .line 57
            return
        end local 6 // long constructionTime
        end local 5 // int version
        end local 4 // org.apache.cassandra.net.MessagingService$Verb verb
        end local 3 // java.util.Map parameters
        end local 2 // java.lang.Object payload
        end local 1 // java.net.InetAddress from
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/apache/cassandra/net/MessageIn<TT;>;
            0    8     1              from  Ljava/net/InetAddress;
            0    8     2           payload  TT;
            0    8     3        parameters  Ljava/util/Map<Ljava/lang/String;[B>;
            0    8     4              verb  Lorg/apache/cassandra/net/MessagingService$Verb;
            0    8     5           version  I
            0    8     6  constructionTime  J
    Signature: (Ljava/net/InetAddress;TT;Ljava/util/Map<Ljava/lang/String;[B>;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)V
    MethodParameters:
                  Name  Flags
      from              
      payload           
      parameters        
      verb              
      version           
      constructionTime  

  public static <T> org.apache.cassandra.net.MessageIn<T> create(java.net.InetAddress, T, java.util.Map<java.lang.String, byte[]>, org.apache.cassandra.net.MessagingService$Verb, int, long);
    descriptor: (Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)Lorg/apache/cassandra/net/MessageIn;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=7, args_size=6
        start local 0 // java.net.InetAddress from
        start local 1 // java.lang.Object payload
        start local 2 // java.util.Map parameters
        start local 3 // org.apache.cassandra.net.MessagingService$Verb verb
        start local 4 // int version
        start local 5 // long constructionTime
         0: .line 66
            new org.apache.cassandra.net.MessageIn
            dup
            aload 0 /* from */
            aload 1 /* payload */
            aload 2 /* parameters */
            aload 3 /* verb */
            iload 4 /* version */
            lload 5 /* constructionTime */
            invokespecial org.apache.cassandra.net.MessageIn.<init>:(Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)V
            areturn
        end local 5 // long constructionTime
        end local 4 // int version
        end local 3 // org.apache.cassandra.net.MessagingService$Verb verb
        end local 2 // java.util.Map parameters
        end local 1 // java.lang.Object payload
        end local 0 // java.net.InetAddress from
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              from  Ljava/net/InetAddress;
            0    1     1           payload  TT;
            0    1     2        parameters  Ljava/util/Map<Ljava/lang/String;[B>;
            0    1     3              verb  Lorg/apache/cassandra/net/MessagingService$Verb;
            0    1     4           version  I
            0    1     5  constructionTime  J
    Signature: <T:Ljava/lang/Object;>(Ljava/net/InetAddress;TT;Ljava/util/Map<Ljava/lang/String;[B>;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)Lorg/apache/cassandra/net/MessageIn<TT;>;
    MethodParameters:
                  Name  Flags
      from              
      payload           
      parameters        
      verb              
      version           
      constructionTime  

  public static <T> org.apache.cassandra.net.MessageIn<T> create(java.net.InetAddress, T, java.util.Map<java.lang.String, byte[]>, org.apache.cassandra.net.MessagingService$Verb, int);
    descriptor: (Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;I)Lorg/apache/cassandra/net/MessageIn;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=5
        start local 0 // java.net.InetAddress from
        start local 1 // java.lang.Object payload
        start local 2 // java.util.Map parameters
        start local 3 // org.apache.cassandra.net.MessagingService$Verb verb
        start local 4 // int version
         0: .line 75
            new org.apache.cassandra.net.MessageIn
            dup
            aload 0 /* from */
            aload 1 /* payload */
            aload 2 /* parameters */
            aload 3 /* verb */
            iload 4 /* version */
            invokestatic org.apache.cassandra.db.monitoring.ApproximateTime.currentTimeMillis:()J
            invokespecial org.apache.cassandra.net.MessageIn.<init>:(Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)V
            areturn
        end local 4 // int version
        end local 3 // org.apache.cassandra.net.MessagingService$Verb verb
        end local 2 // java.util.Map parameters
        end local 1 // java.lang.Object payload
        end local 0 // java.net.InetAddress from
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        from  Ljava/net/InetAddress;
            0    1     1     payload  TT;
            0    1     2  parameters  Ljava/util/Map<Ljava/lang/String;[B>;
            0    1     3        verb  Lorg/apache/cassandra/net/MessagingService$Verb;
            0    1     4     version  I
    Signature: <T:Ljava/lang/Object;>(Ljava/net/InetAddress;TT;Ljava/util/Map<Ljava/lang/String;[B>;Lorg/apache/cassandra/net/MessagingService$Verb;I)Lorg/apache/cassandra/net/MessageIn<TT;>;
    MethodParameters:
            Name  Flags
      from        
      payload     
      parameters  
      verb        
      version     

  public static <T2> org.apache.cassandra.net.MessageIn<T2> read(org.apache.cassandra.io.util.DataInputPlus, int, int);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;II)Lorg/apache/cassandra/net/MessageIn;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.cassandra.io.util.DataInputPlus in
        start local 1 // int version
        start local 2 // int id
         0: .line 80
            aload 0 /* in */
            iload 1 /* version */
            iload 2 /* id */
            invokestatic org.apache.cassandra.db.monitoring.ApproximateTime.currentTimeMillis:()J
            invokestatic org.apache.cassandra.net.MessageIn.read:(Lorg/apache/cassandra/io/util/DataInputPlus;IIJ)Lorg/apache/cassandra/net/MessageIn;
            areturn
        end local 2 // int id
        end local 1 // int version
        end local 0 // org.apache.cassandra.io.util.DataInputPlus in
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0       in  Lorg/apache/cassandra/io/util/DataInputPlus;
            0    1     1  version  I
            0    1     2       id  I
    Exceptions:
      throws java.io.IOException
    Signature: <T2:Ljava/lang/Object;>(Lorg/apache/cassandra/io/util/DataInputPlus;II)Lorg/apache/cassandra/net/MessageIn<TT2;>;
    MethodParameters:
         Name  Flags
      in       
      version  
      id       

  public static <T2> org.apache.cassandra.net.MessageIn<T2> read(org.apache.cassandra.io.util.DataInputPlus, int, int, long);
    descriptor: (Lorg/apache/cassandra/io/util/DataInputPlus;IIJ)Lorg/apache/cassandra/net/MessageIn;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=13, args_size=4
        start local 0 // org.apache.cassandra.io.util.DataInputPlus in
        start local 1 // int version
        start local 2 // int id
        start local 3 // long constructionTime
         0: .line 85
            aload 0 /* in */
            invokestatic org.apache.cassandra.net.CompactEndpointSerializationHelper.deserialize:(Ljava/io/DataInput;)Ljava/net/InetAddress;
            astore 5 /* from */
        start local 5 // java.net.InetAddress from
         1: .line 87
            getstatic org.apache.cassandra.net.MessagingService.verbValues:[Lorg/apache/cassandra/net/MessagingService$Verb;
            aload 0 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readInt:()I
            aaload
            astore 6 /* verb */
        start local 6 // org.apache.cassandra.net.MessagingService$Verb verb
         2: .line 88
            aload 0 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readInt:()I
            istore 7 /* parameterCount */
        start local 7 // int parameterCount
         3: .line 90
            iload 7 /* parameterCount */
            ifne 6
         4: .line 92
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            astore 8 /* parameters */
        start local 8 // java.util.Map parameters
         5: .line 93
            goto 16
        end local 8 // java.util.Map parameters
         6: .line 96
      StackMap locals: java.net.InetAddress org.apache.cassandra.net.MessagingService$Verb int
      StackMap stack:
            invokestatic com.google.common.collect.ImmutableMap.builder:()Lcom/google/common/collect/ImmutableMap$Builder;
            astore 9 /* builder */
        start local 9 // com.google.common.collect.ImmutableMap$Builder builder
         7: .line 97
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         8: goto 14
         9: .line 99
      StackMap locals: org.apache.cassandra.io.util.DataInputPlus int int long java.net.InetAddress org.apache.cassandra.net.MessagingService$Verb int top com.google.common.collect.ImmutableMap$Builder int
      StackMap stack:
            aload 0 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readUTF:()Ljava/lang/String;
            astore 11 /* key */
        start local 11 // java.lang.String key
        10: .line 100
            aload 0 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readInt:()I
            newarray 8
            astore 12 /* value */
        start local 12 // byte[] value
        11: .line 101
            aload 0 /* in */
            aload 12 /* value */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readFully:([B)V
        12: .line 102
            aload 9 /* builder */
            aload 11 /* key */
            aload 12 /* value */
            invokevirtual com.google.common.collect.ImmutableMap$Builder.put:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMap$Builder;
            pop
        end local 12 // byte[] value
        end local 11 // java.lang.String key
        13: .line 97
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 10 /* i */
            iload 7 /* parameterCount */
            if_icmplt 9
        end local 10 // int i
        15: .line 104
            aload 9 /* builder */
            invokevirtual com.google.common.collect.ImmutableMap$Builder.build:()Lcom/google/common/collect/ImmutableMap;
            astore 8 /* parameters */
        end local 9 // com.google.common.collect.ImmutableMap$Builder builder
        start local 8 // java.util.Map parameters
        16: .line 107
      StackMap locals: org.apache.cassandra.io.util.DataInputPlus int int long java.net.InetAddress org.apache.cassandra.net.MessagingService$Verb int java.util.Map
      StackMap stack:
            aload 0 /* in */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readInt:()I
            istore 9 /* payloadSize */
        start local 9 // int payloadSize
        17: .line 108
            invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
            getfield org.apache.cassandra.net.MessagingService.verbSerializers:Ljava/util/EnumMap;
            aload 6 /* verb */
            invokevirtual java.util.EnumMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.io.IVersionedSerializer
            astore 10 /* serializer */
        start local 10 // org.apache.cassandra.io.IVersionedSerializer serializer
        18: .line 109
            aload 10 /* serializer */
            instanceof org.apache.cassandra.net.MessagingService$CallbackDeterminedSerializer
            ifeq 24
        19: .line 111
            invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
            iload 2 /* id */
            invokevirtual org.apache.cassandra.net.MessagingService.getRegisteredCallback:(I)Lorg/apache/cassandra/net/CallbackInfo;
            astore 11 /* callback */
        start local 11 // org.apache.cassandra.net.CallbackInfo callback
        20: .line 112
            aload 11 /* callback */
            ifnonnull 23
        21: .line 115
            aload 0 /* in */
            iload 9 /* payloadSize */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.skipBytesFully:(I)V
        22: .line 116
            aconst_null
            areturn
        23: .line 118
      StackMap locals: int org.apache.cassandra.io.IVersionedSerializer org.apache.cassandra.net.CallbackInfo
      StackMap stack:
            aload 11 /* callback */
            getfield org.apache.cassandra.net.CallbackInfo.serializer:Lorg/apache/cassandra/io/IVersionedSerializer;
            astore 10 /* serializer */
        end local 11 // org.apache.cassandra.net.CallbackInfo callback
        24: .line 120
      StackMap locals:
      StackMap stack:
            iload 9 /* payloadSize */
            ifeq 25
            aload 10 /* serializer */
            ifnonnull 26
        25: .line 121
      StackMap locals:
      StackMap stack:
            aload 5 /* from */
            aconst_null
            aload 8 /* parameters */
            aload 6 /* verb */
            iload 1 /* version */
            lload 3 /* constructionTime */
            invokestatic org.apache.cassandra.net.MessageIn.create:(Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)Lorg/apache/cassandra/net/MessageIn;
            areturn
        26: .line 123
      StackMap locals:
      StackMap stack:
            aload 10 /* serializer */
            aload 0 /* in */
            iload 1 /* version */
            invokeinterface org.apache.cassandra.io.IVersionedSerializer.deserialize:(Lorg/apache/cassandra/io/util/DataInputPlus;I)Ljava/lang/Object;
            astore 11 /* payload */
        start local 11 // java.lang.Object payload
        27: .line 124
            aload 5 /* from */
            aload 11 /* payload */
            aload 8 /* parameters */
            aload 6 /* verb */
            iload 1 /* version */
            lload 3 /* constructionTime */
            invokestatic org.apache.cassandra.net.MessageIn.create:(Ljava/net/InetAddress;Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/net/MessagingService$Verb;IJ)Lorg/apache/cassandra/net/MessageIn;
            areturn
        end local 11 // java.lang.Object payload
        end local 10 // org.apache.cassandra.io.IVersionedSerializer serializer
        end local 9 // int payloadSize
        end local 8 // java.util.Map parameters
        end local 7 // int parameterCount
        end local 6 // org.apache.cassandra.net.MessagingService$Verb verb
        end local 5 // java.net.InetAddress from
        end local 3 // long constructionTime
        end local 2 // int id
        end local 1 // int version
        end local 0 // org.apache.cassandra.io.util.DataInputPlus in
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   28     0                in  Lorg/apache/cassandra/io/util/DataInputPlus;
            0   28     1           version  I
            0   28     2                id  I
            0   28     3  constructionTime  J
            1   28     5              from  Ljava/net/InetAddress;
            2   28     6              verb  Lorg/apache/cassandra/net/MessagingService$Verb;
            3   28     7    parameterCount  I
            5    6     8        parameters  Ljava/util/Map<Ljava/lang/String;[B>;
           16   28     8        parameters  Ljava/util/Map<Ljava/lang/String;[B>;
            7   16     9           builder  Lcom/google/common/collect/ImmutableMap$Builder<Ljava/lang/String;[B>;
            8   15    10                 i  I
           10   13    11               key  Ljava/lang/String;
           11   13    12             value  [B
           17   28     9       payloadSize  I
           18   28    10        serializer  Lorg/apache/cassandra/io/IVersionedSerializer<TT2;>;
           20   24    11          callback  Lorg/apache/cassandra/net/CallbackInfo;
           27   28    11           payload  TT2;
    Exceptions:
      throws java.io.IOException
    Signature: <T2:Ljava/lang/Object;>(Lorg/apache/cassandra/io/util/DataInputPlus;IIJ)Lorg/apache/cassandra/net/MessageIn<TT2;>;
    MethodParameters:
                  Name  Flags
      in                
      version           
      id                
      constructionTime  

  public static long readConstructionTime(java.net.InetAddress, org.apache.cassandra.io.util.DataInputPlus, long);
    descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/io/util/DataInputPlus;J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=3
        start local 0 // java.net.InetAddress from
        start local 1 // org.apache.cassandra.io.util.DataInputPlus input
        start local 2 // long currentTime
         0: .line 131
            aload 1 /* input */
            invokeinterface org.apache.cassandra.io.util.DataInputPlus.readInt:()I
            istore 4 /* partial */
        start local 4 // int partial
         1: .line 132
            lload 2 /* currentTime */
            ldc -4294967296
            land
            iload 4 /* partial */
            i2l
            ldc 4294967295
            land
            iconst_2
            lshl
            iconst_2
            lshr
            lor
            lstore 5 /* sentConstructionTime */
        start local 5 // long sentConstructionTime
         2: .line 138
            lload 2 /* currentTime */
            lload 5 /* sentConstructionTime */
            lsub
            lstore 7 /* elapsed */
        start local 7 // long elapsed
         3: .line 139
            lload 7 /* elapsed */
            lconst_0
            lcmp
            ifle 5
         4: .line 140
            invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
            getfield org.apache.cassandra.net.MessagingService.metrics:Lorg/apache/cassandra/metrics/MessagingMetrics;
            aload 0 /* from */
            lload 7 /* elapsed */
            invokevirtual org.apache.cassandra.metrics.MessagingMetrics.addTimeTaken:(Ljava/net/InetAddress;J)V
         5: .line 142
      StackMap locals: int long long
      StackMap stack:
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.hasCrossNodeTimeout:()Z
            ifeq 6
            lload 7 /* elapsed */
            lconst_0
            lcmp
            ifle 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 9 /* useSentTime */
        start local 9 // boolean useSentTime
         8: .line 143
            iload 9 /* useSentTime */
            ifeq 9
            lload 5 /* sentConstructionTime */
            goto 10
      StackMap locals: int
      StackMap stack:
         9: lload 2 /* currentTime */
      StackMap locals:
      StackMap stack: long
        10: lreturn
        end local 9 // boolean useSentTime
        end local 7 // long elapsed
        end local 5 // long sentConstructionTime
        end local 4 // int partial
        end local 2 // long currentTime
        end local 1 // org.apache.cassandra.io.util.DataInputPlus input
        end local 0 // java.net.InetAddress from
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  from  Ljava/net/InetAddress;
            0   11     1                 input  Lorg/apache/cassandra/io/util/DataInputPlus;
            0   11     2           currentTime  J
            1   11     4               partial  I
            2   11     5  sentConstructionTime  J
            3   11     7               elapsed  J
            8   11     9           useSentTime  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      from         
      input        
      currentTime  

  public long getLifetimeInMS();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 151
            invokestatic org.apache.cassandra.db.monitoring.ApproximateTime.currentTimeMillis:()J
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.constructionTime:J
            lsub
            lreturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public boolean isCrossNode();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 160
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.from:Ljava/net/InetAddress;
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getBroadcastAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public org.apache.cassandra.concurrent.Stage getMessageType();
    descriptor: ()Lorg/apache/cassandra/concurrent/Stage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 165
            getstatic org.apache.cassandra.net.MessagingService.verbStages:Ljava/util/EnumMap;
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.verb:Lorg/apache/cassandra/net/MessagingService$Verb;
            invokevirtual java.util.EnumMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.concurrent.Stage
            areturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public boolean doCallbackOnFailure();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 170
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.parameters:Ljava/util/Map;
            ldc "CAL_BAC"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public boolean isFailureResponse();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 175
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.parameters:Ljava/util/Map;
            ldc "FAIL"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public boolean containsFailureReason();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 180
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.parameters:Ljava/util/Map;
            ldc "FAIL_REASON"
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public org.apache.cassandra.exceptions.RequestFailureReason getFailureReason();
    descriptor: ()Lorg/apache/cassandra/exceptions/RequestFailureReason;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 185
            aload 0 /* this */
            invokevirtual org.apache.cassandra.net.MessageIn.containsFailureReason:()Z
            ifeq 14
         1: .line 187
            aconst_null
            astore 1
            aconst_null
            astore 2
         2: new org.apache.cassandra.io.util.DataInputBuffer
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.parameters:Ljava/util/Map;
            ldc "FAIL_REASON"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast byte[]
            invokespecial org.apache.cassandra.io.util.DataInputBuffer.<init>:([B)V
            astore 3 /* in */
        start local 3 // org.apache.cassandra.io.util.DataInputBuffer in
         3: .line 189
            aload 3 /* in */
            invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readUnsignedShort:()I
            invokestatic org.apache.cassandra.exceptions.RequestFailureReason.fromCode:(I)Lorg/apache/cassandra/exceptions/RequestFailureReason;
         4: .line 190
            aload 3 /* in */
            ifnull 5
            aload 3 /* in */
            invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
         5: .line 189
      StackMap locals: org.apache.cassandra.net.MessageIn java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer
      StackMap stack: org.apache.cassandra.exceptions.RequestFailureReason
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 1
         7: .line 190
            aload 3 /* in */
            ifnull 8
            aload 3 /* in */
            invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
        end local 3 // org.apache.cassandra.io.util.DataInputBuffer in
      StackMap locals:
      StackMap stack:
         8: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 1
            ifnonnull 10
            aload 2
            astore 1
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 1
            aload 2
            if_acmpeq 11
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        11: aload 1
            athrow
        12: .line 191
      StackMap locals: org.apache.cassandra.net.MessageIn
      StackMap stack: java.io.IOException
            astore 1 /* ex */
        start local 1 // java.io.IOException ex
        13: .line 193
            new java.lang.RuntimeException
            dup
            aload 1 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException ex
        14: .line 198
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.exceptions.RequestFailureReason.UNKNOWN:Lorg/apache/cassandra/exceptions/RequestFailureReason;
            areturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;
            3    8     3    in  Lorg/apache/cassandra/io/util/DataInputBuffer;
           13   14     1    ex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3     4       6  any
           2     5       9  any
           6     9       9  any
           1     5      12  Class java.io.IOException
           6    12      12  Class java.io.IOException

  public long getTimeout();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 204
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.verb:Lorg/apache/cassandra/net/MessagingService$Verb;
            invokevirtual org.apache.cassandra.net.MessagingService$Verb.getTimeout:()J
            lreturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public long getSlowQueryTimeout();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 209
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getSlowQueryTimeout:()J
            lreturn
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.net.MessageIn this
         0: .line 214
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sbuf */
        start local 1 // java.lang.StringBuilder sbuf
         1: .line 215
            aload 1 /* sbuf */
            ldc "FROM:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.from:Ljava/net/InetAddress;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " TYPE:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.apache.cassandra.net.MessageIn.getMessageType:()Lorg/apache/cassandra/concurrent/Stage;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " VERB:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.cassandra.net.MessageIn.verb:Lorg/apache/cassandra/net/MessagingService$Verb;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         2: .line 216
            aload 1 /* sbuf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sbuf
        end local 0 // org.apache.cassandra.net.MessageIn this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/cassandra/net/MessageIn<TT;>;
            1    3     1  sbuf  Ljava/lang/StringBuilder;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "MessageIn.java"
InnerClasses:
  public Builder = com.google.common.collect.ImmutableMap$Builder of com.google.common.collect.ImmutableMap
  CallbackDeterminedSerializer = org.apache.cassandra.net.MessagingService$CallbackDeterminedSerializer of org.apache.cassandra.net.MessagingService
  public Verb = org.apache.cassandra.net.MessagingService$Verb of org.apache.cassandra.net.MessagingService