public class com.datastax.oss.driver.internal.core.util.RoutingKey
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.datastax.oss.driver.internal.core.util.RoutingKey
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.datastax.oss.driver.internal.core.util.RoutingKey this
         0: .line 21
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.datastax.oss.driver.internal.core.util.RoutingKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/datastax/oss/driver/internal/core/util/RoutingKey;

  public static java.nio.ByteBuffer compose(java.nio.ByteBuffer[]);
    descriptor: ([Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // java.nio.ByteBuffer[] components
         0: .line 26
            aload 0 /* components */
            arraylength
            iconst_1
            if_icmpne 1
            aload 0 /* components */
            iconst_0
            aaload
            areturn
         1: .line 28
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* totalLength */
        start local 1 // int totalLength
         2: .line 29
            aload 0 /* components */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: java.nio.ByteBuffer[] int top int int java.nio.ByteBuffer[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* bb */
        start local 2 // java.nio.ByteBuffer bb
         4: iload 1 /* totalLength */
            iconst_2
            aload 2 /* bb */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            iadd
            iconst_1
            iadd
            iadd
            istore 1 /* totalLength */
        end local 2 // java.nio.ByteBuffer bb
         5: iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 3
         7: .line 31
            iload 1 /* totalLength */
            invokestatic java.nio.ByteBuffer.allocate:(I)Ljava/nio/ByteBuffer;
            astore 2 /* out */
        start local 2 // java.nio.ByteBuffer out
         8: .line 32
            aload 0 /* components */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 15
      StackMap locals: java.nio.ByteBuffer[] int java.nio.ByteBuffer top int int java.nio.ByteBuffer[]
      StackMap stack:
         9: aload 6
            iload 4
            aaload
            astore 3 /* buffer */
        start local 3 // java.nio.ByteBuffer buffer
        10: .line 33
            aload 3 /* buffer */
            invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
            astore 7 /* bb */
        start local 7 // java.nio.ByteBuffer bb
        11: .line 34
            aload 2 /* out */
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            invokestatic com.datastax.oss.driver.internal.core.util.RoutingKey.putShortLength:(Ljava/nio/ByteBuffer;I)V
        12: .line 35
            aload 2 /* out */
            aload 7 /* bb */
            invokevirtual java.nio.ByteBuffer.put:(Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
            pop
        13: .line 36
            aload 2 /* out */
            iconst_0
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
        end local 7 // java.nio.ByteBuffer bb
        end local 3 // java.nio.ByteBuffer buffer
        14: .line 32
            iinc 4 1
      StackMap locals:
      StackMap stack:
        15: iload 4
            iload 5
            if_icmplt 9
        16: .line 38
            aload 2 /* out */
            invokevirtual java.nio.ByteBuffer.flip:()Ljava/nio/Buffer;
            pop
        17: .line 39
            aload 2 /* out */
            areturn
        end local 2 // java.nio.ByteBuffer out
        end local 1 // int totalLength
        end local 0 // java.nio.ByteBuffer[] components
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0   components  [Ljava/nio/ByteBuffer;
            2   18     1  totalLength  I
            4    5     2           bb  Ljava/nio/ByteBuffer;
            8   18     2          out  Ljava/nio/ByteBuffer;
           10   14     3       buffer  Ljava/nio/ByteBuffer;
           11   14     7           bb  Ljava/nio/ByteBuffer;
    RuntimeInvisibleAnnotations: 
      edu.umd.cs.findbugs.annotations.NonNull()
    RuntimeInvisibleParameterAnnotations: 
      0:
        edu.umd.cs.findbugs.annotations.NonNull()
    MethodParameters:
            Name  Flags
      components  

  private static void putShortLength(java.nio.ByteBuffer, int);
    descriptor: (Ljava/nio/ByteBuffer;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.nio.ByteBuffer bb
        start local 1 // int length
         0: .line 43
            aload 0 /* bb */
            iload 1 /* length */
            bipush 8
            ishr
            sipush 255
            iand
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         1: .line 44
            aload 0 /* bb */
            iload 1 /* length */
            sipush 255
            iand
            i2b
            invokevirtual java.nio.ByteBuffer.put:(B)Ljava/nio/ByteBuffer;
            pop
         2: .line 45
            return
        end local 1 // int length
        end local 0 // java.nio.ByteBuffer bb
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0      bb  Ljava/nio/ByteBuffer;
            0    3     1  length  I
    MethodParameters:
        Name  Flags
      bb      
      length  
}
SourceFile: "RoutingKey.java"