class org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo<Unit>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
  super_class: java.lang.Object
{
  final Unit unit;
    descriptor: Ljava/lang/Object;
    flags: (0x0010) ACC_FINAL
    Signature: TUnit;

  final org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo group;
    descriptor: Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
    flags: (0x0010) ACC_FINAL

  double ownership;
    descriptor: D
    flags: (0x0000) 

  int tokenCount;
    descriptor: I
    flags: (0x0000) 

  org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo<Unit> prevUsed;
    descriptor: Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo;
    flags: (0x0000) 
    Signature: Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo<TUnit;>;

  double adjustedOwnership;
    descriptor: D
    flags: (0x0000) 

  private void <init>(Unit, org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo);
    descriptor: (Ljava/lang/Object;Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
        start local 1 // java.lang.Object unit
        start local 2 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo group
         0: .line 138
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 140
            aload 0 /* this */
            aload 1 /* unit */
            putfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.unit:Ljava/lang/Object;
         2: .line 141
            aload 0 /* this */
            aload 2 /* group */
            putfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.group:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
         3: .line 142
            aload 0 /* this */
            iconst_0
            putfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.tokenCount:I
         4: .line 143
            return
        end local 2 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo group
        end local 1 // java.lang.Object unit
        end local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo<TUnit;>;
            0    5     1   unit  TUnit;
            0    5     2  group  Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
    Signature: (TUnit;Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;)V
    MethodParameters:
       Name  Flags
      unit   
      group  

  public void <init>(Unit, double, java.util.Map<java.lang.Object, org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo>, org.apache.cassandra.dht.tokenallocator.ReplicationStrategy<Unit>);
    descriptor: (Ljava/lang/Object;DLjava/util/Map;Lorg/apache/cassandra/dht/tokenallocator/ReplicationStrategy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
        start local 1 // java.lang.Object unit
        start local 2 // double ownership
        start local 4 // java.util.Map groupMap
        start local 5 // org.apache.cassandra.dht.tokenallocator.ReplicationStrategy strategy
         0: .line 147
            aload 0 /* this */
            aload 1 /* unit */
            aload 1 /* unit */
            aload 4 /* groupMap */
            aload 5 /* strategy */
            invokestatic org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase.getGroup:(Ljava/lang/Object;Ljava/util/Map;Lorg/apache/cassandra/dht/tokenallocator/ReplicationStrategy;)Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
            invokespecial org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.<init>:(Ljava/lang/Object;Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;)V
         1: .line 148
            aload 0 /* this */
            dload 2 /* ownership */
            putfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.ownership:D
         2: .line 149
            return
        end local 5 // org.apache.cassandra.dht.tokenallocator.ReplicationStrategy strategy
        end local 4 // java.util.Map groupMap
        end local 2 // double ownership
        end local 1 // java.lang.Object unit
        end local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo<TUnit;>;
            0    3     1       unit  TUnit;
            0    3     2  ownership  D
            0    3     4   groupMap  Ljava/util/Map<Ljava/lang/Object;Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;>;
            0    3     5   strategy  Lorg/apache/cassandra/dht/tokenallocator/ReplicationStrategy<TUnit;>;
    Signature: (TUnit;DLjava/util/Map<Ljava/lang/Object;Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;>;Lorg/apache/cassandra/dht/tokenallocator/ReplicationStrategy<TUnit;>;)V
    MethodParameters:
           Name  Flags
      unit       
      ownership  
      groupMap   
      strategy   

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
         0: .line 153
            ldc "%s%s(%.2e)%s"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
         1: .line 154
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.unit:Ljava/lang/Object;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.unit:Ljava/lang/Object;
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.group:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo.group:Ljava/lang/Object;
            if_acmpne 3
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.group:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo.prevSeen:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
            ifnull 2
            ldc "*"
            goto 4
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
         2: ldc ""
            goto 4
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
         3: new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.group:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$GroupInfo;
            invokevirtual org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
         4: aastore
            dup
            iconst_2
         5: .line 155
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.ownership:D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.prevUsed:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo;
            ifnull 7
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.prevUsed:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo;
            aload 0 /* this */
            if_acmpne 6
            ldc "#"
            goto 8
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
         6: new java.lang.StringBuilder
            dup
            ldc "->"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.prevUsed:Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo;
            invokevirtual org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            goto 8
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int
         7: ldc ""
      StackMap locals: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo
      StackMap stack: java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
         8: aastore
         9: .line 153
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/cassandra/dht/tokenallocator/TokenAllocatorBase$UnitInfo<TUnit;>;
}
Signature: <Unit:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "TokenAllocatorBase.java"
NestHost: org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase
InnerClasses:
  GroupInfo = org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$GroupInfo of org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase
  UnitInfo = org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase$UnitInfo of org.apache.cassandra.dht.tokenallocator.TokenAllocatorBase