public class micro.benchmarks.GroupAllocationBenchmark extends micro.benchmarks.BenchmarkBase
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: micro.benchmarks.GroupAllocationBenchmark
  super_class: micro.benchmarks.BenchmarkBase
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
         0: .line 35
            aload 0 /* this */
            invokespecial micro.benchmarks.BenchmarkBase.<init>:()V
            return
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmicro/benchmarks/GroupAllocationBenchmark;

  public void groupAllocate3(org.openjdk.jmh.infra.Blackhole);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
         0: .line 66
            aload 1 /* bh */
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            aload 1 /* bh */
            aload 1 /* bh */
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            aload 1 /* bh */
            aload 1 /* bh */
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
         1: .line 67
            return
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lmicro/benchmarks/GroupAllocationBenchmark;
            0    2     1    bh  Lorg/openjdk/jmh/infra/Blackhole;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
      Name  Flags
      bh    

  public void groupAllocate2(org.openjdk.jmh.infra.Blackhole);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
         0: .line 71
            aload 1 /* bh */
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            aload 1 /* bh */
            aload 1 /* bh */
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            aconst_null
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
         1: .line 72
            return
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lmicro/benchmarks/GroupAllocationBenchmark;
            0    2     1    bh  Lorg/openjdk/jmh/infra/Blackhole;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
      Name  Flags
      bh    

  public void groupAllocate1(org.openjdk.jmh.infra.Blackhole);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
         0: .line 76
            aload 1 /* bh */
            new micro.benchmarks.GroupAllocationBenchmark$Node
            dup
            aconst_null
            aconst_null
            invokespecial micro.benchmarks.GroupAllocationBenchmark$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
         1: .line 77
            return
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lmicro/benchmarks/GroupAllocationBenchmark;
            0    2     1    bh  Lorg/openjdk/jmh/infra/Blackhole;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
      Name  Flags
      bh    

  public void bufDecode(org.openjdk.jmh.infra.Blackhole, micro.benchmarks.GroupAllocationBenchmark$BenchState);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;Lmicro/benchmarks/GroupAllocationBenchmark$BenchState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
        start local 2 // micro.benchmarks.GroupAllocationBenchmark$BenchState state
         0: .line 94
            new micro.benchmarks.GroupAllocationBenchmark$BufByteArray
            dup
            aload 0 /* this */
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.bytes:[B
            invokespecial micro.benchmarks.GroupAllocationBenchmark$BufByteArray.<init>:(Lmicro/benchmarks/GroupAllocationBenchmark;[B)V
            astore 3 /* a */
        start local 3 // java.lang.Object a
         1: .line 95
            new micro.benchmarks.GroupAllocationBenchmark$BufByteArray
            dup
            aload 0 /* this */
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.bytes:[B
            invokespecial micro.benchmarks.GroupAllocationBenchmark$BufByteArray.<init>:(Lmicro/benchmarks/GroupAllocationBenchmark;[B)V
            astore 4 /* b */
        start local 4 // java.lang.Object b
         2: .line 96
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.pair:Lmicro/benchmarks/GroupAllocationBenchmark$Pair;
            astore 5 /* pair */
        start local 5 // micro.benchmarks.GroupAllocationBenchmark$Pair pair
         3: .line 97
            aload 5 /* pair */
            aload 3 /* a */
            putfield micro.benchmarks.GroupAllocationBenchmark$Pair.left:Ljava/lang/Object;
         4: .line 98
            aload 5 /* pair */
            aload 4 /* b */
            putfield micro.benchmarks.GroupAllocationBenchmark$Pair.right:Ljava/lang/Object;
         5: .line 99
            aload 1 /* bh */
            aload 5 /* pair */
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
         6: .line 100
            return
        end local 5 // micro.benchmarks.GroupAllocationBenchmark$Pair pair
        end local 4 // java.lang.Object b
        end local 3 // java.lang.Object a
        end local 2 // micro.benchmarks.GroupAllocationBenchmark$BenchState state
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lmicro/benchmarks/GroupAllocationBenchmark;
            0    7     1     bh  Lorg/openjdk/jmh/infra/Blackhole;
            0    7     2  state  Lmicro/benchmarks/GroupAllocationBenchmark$BenchState;
            1    7     3      a  Ljava/lang/Object;
            2    7     4      b  Ljava/lang/Object;
            3    7     5   pair  Lmicro/benchmarks/GroupAllocationBenchmark$Pair;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
       Name  Flags
      bh     
      state  

  public void rangeTxnLevelImpl(org.openjdk.jmh.infra.Blackhole, micro.benchmarks.GroupAllocationBenchmark$BenchState);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;Lmicro/benchmarks/GroupAllocationBenchmark$BenchState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // micro.benchmarks.GroupAllocationBenchmark this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
        start local 2 // micro.benchmarks.GroupAllocationBenchmark$BenchState state
         0: .line 136
            new micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl
            dup
            aload 0 /* this */
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.a:Ljava/lang/Object;
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.b:Ljava/lang/Object;
            aload 2 /* state */
            getfield micro.benchmarks.GroupAllocationBenchmark$BenchState.c:Ljava/lang/Object;
            invokespecial micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl.<init>:(Lmicro/benchmarks/GroupAllocationBenchmark;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
            astore 3 /* o */
        start local 3 // micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl o
         1: .line 137
            aload 1 /* bh */
            aload 3 /* o */
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(Ljava/lang/Object;)V
         2: .line 138
            return
        end local 3 // micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl o
        end local 2 // micro.benchmarks.GroupAllocationBenchmark$BenchState state
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // micro.benchmarks.GroupAllocationBenchmark this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lmicro/benchmarks/GroupAllocationBenchmark;
            0    3     1     bh  Lorg/openjdk/jmh/infra/Blackhole;
            0    3     2  state  Lmicro/benchmarks/GroupAllocationBenchmark$BenchState;
            1    3     3      o  Lmicro/benchmarks/GroupAllocationBenchmark$TxnLevelImpl;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
       Name  Flags
      bh     
      state  
}
SourceFile: "GroupAllocationBenchmark.java"
NestMembers:
  micro.benchmarks.GroupAllocationBenchmark$BenchState  micro.benchmarks.GroupAllocationBenchmark$BufByteArray  micro.benchmarks.GroupAllocationBenchmark$Node  micro.benchmarks.GroupAllocationBenchmark$Pair  micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl
InnerClasses:
  public BenchState = micro.benchmarks.GroupAllocationBenchmark$BenchState of micro.benchmarks.GroupAllocationBenchmark
  BufByteArray = micro.benchmarks.GroupAllocationBenchmark$BufByteArray of micro.benchmarks.GroupAllocationBenchmark
  Node = micro.benchmarks.GroupAllocationBenchmark$Node of micro.benchmarks.GroupAllocationBenchmark
  Pair = micro.benchmarks.GroupAllocationBenchmark$Pair of micro.benchmarks.GroupAllocationBenchmark
  TxnLevelImpl = micro.benchmarks.GroupAllocationBenchmark$TxnLevelImpl of micro.benchmarks.GroupAllocationBenchmark