public class io.netty.util.concurrent.FastThreadLocal<V>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.util.concurrent.FastThreadLocal
  super_class: java.lang.Object
{
  private static final int variablesToRemoveIndex;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final int index;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 47
            invokestatic io.netty.util.internal.InternalThreadLocalMap.nextVariableIndex:()I
            putstatic io.netty.util.concurrent.FastThreadLocal.variablesToRemoveIndex:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void removeAll();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=9, args_size=0
         0: .line 55
            invokestatic io.netty.util.internal.InternalThreadLocalMap.getIfSet:()Lio/netty/util/internal/InternalThreadLocalMap;
            astore 0 /* threadLocalMap */
        start local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         1: .line 56
            aload 0 /* threadLocalMap */
            ifnonnull 3
         2: .line 57
            return
         3: .line 61
      StackMap locals: io.netty.util.internal.InternalThreadLocalMap
      StackMap stack:
            aload 0 /* threadLocalMap */
            getstatic io.netty.util.concurrent.FastThreadLocal.variablesToRemoveIndex:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.indexedVariable:(I)Ljava/lang/Object;
            astore 1 /* v */
        start local 1 // java.lang.Object v
         4: .line 62
            aload 1 /* v */
            ifnull 17
            aload 1 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 17
         5: .line 64
            aload 1 /* v */
            checkcast java.util.Set
            astore 2 /* variablesToRemove */
        start local 2 // java.util.Set variablesToRemove
         6: .line 66
            aload 2 /* variablesToRemove */
            aload 2 /* variablesToRemove */
            invokeinterface java.util.Set.size:()I
            anewarray io.netty.util.concurrent.FastThreadLocal
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast io.netty.util.concurrent.FastThreadLocal[]
         7: .line 65
            astore 3 /* variablesToRemoveArray */
        start local 3 // io.netty.util.concurrent.FastThreadLocal[] variablesToRemoveArray
         8: .line 67
            aload 3 /* variablesToRemoveArray */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 12
      StackMap locals: io.netty.util.internal.InternalThreadLocalMap java.lang.Object java.util.Set io.netty.util.concurrent.FastThreadLocal[] top int int io.netty.util.concurrent.FastThreadLocal[]
      StackMap stack:
         9: aload 7
            iload 5
            aaload
            astore 4 /* tlv */
        start local 4 // io.netty.util.concurrent.FastThreadLocal tlv
        10: .line 68
            aload 4 /* tlv */
            aload 0 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.remove:(Lio/netty/util/internal/InternalThreadLocalMap;)V
        end local 4 // io.netty.util.concurrent.FastThreadLocal tlv
        11: .line 67
            iinc 5 1
      StackMap locals:
      StackMap stack:
        12: iload 5
            iload 6
            if_icmplt 9
        end local 3 // io.netty.util.concurrent.FastThreadLocal[] variablesToRemoveArray
        end local 2 // java.util.Set variablesToRemove
        end local 1 // java.lang.Object v
        13: .line 71
            goto 17
      StackMap locals: io.netty.util.internal.InternalThreadLocalMap
      StackMap stack: java.lang.Throwable
        14: astore 8
        15: .line 72
            invokestatic io.netty.util.internal.InternalThreadLocalMap.remove:()V
        16: .line 73
            aload 8
            athrow
        17: .line 72
      StackMap locals:
      StackMap stack:
            invokestatic io.netty.util.internal.InternalThreadLocalMap.remove:()V
        18: .line 74
            return
        end local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            1   19     0          threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            4   13     1                       v  Ljava/lang/Object;
            6   13     2       variablesToRemove  Ljava/util/Set<Lio/netty/util/concurrent/FastThreadLocal<*>;>;
            8   13     3  variablesToRemoveArray  [Lio/netty/util/concurrent/FastThreadLocal;
           10   11     4                     tlv  Lio/netty/util/concurrent/FastThreadLocal<*>;
      Exception table:
        from    to  target  type
           3    14      14  any

  public static int size();
    descriptor: ()I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 80
            invokestatic io.netty.util.internal.InternalThreadLocalMap.getIfSet:()Lio/netty/util/internal/InternalThreadLocalMap;
            astore 0 /* threadLocalMap */
        start local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         1: .line 81
            aload 0 /* threadLocalMap */
            ifnonnull 3
         2: .line 82
            iconst_0
            ireturn
         3: .line 84
      StackMap locals: io.netty.util.internal.InternalThreadLocalMap
      StackMap stack:
            aload 0 /* threadLocalMap */
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.size:()I
            ireturn
        end local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            1    4     0  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;

  public static void destroy();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=0, locals=0, args_size=0
         0: .line 95
            invokestatic io.netty.util.internal.InternalThreadLocalMap.destroy:()V
         1: .line 96
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void addToVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap, io.netty.util.concurrent.FastThreadLocal<?>);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        start local 1 // io.netty.util.concurrent.FastThreadLocal variable
         0: .line 100
            aload 0 /* threadLocalMap */
            getstatic io.netty.util.concurrent.FastThreadLocal.variablesToRemoveIndex:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.indexedVariable:(I)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         1: .line 102
            aload 2 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 2
            aload 2 /* v */
            ifnonnull 5
         2: .line 103
      StackMap locals: java.lang.Object
      StackMap stack:
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
            invokestatic java.util.Collections.newSetFromMap:(Ljava/util/Map;)Ljava/util/Set;
            astore 3 /* variablesToRemove */
        start local 3 // java.util.Set variablesToRemove
         3: .line 104
            aload 0 /* threadLocalMap */
            getstatic io.netty.util.concurrent.FastThreadLocal.variablesToRemoveIndex:I
            aload 3 /* variablesToRemove */
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.setIndexedVariable:(ILjava/lang/Object;)Z
            pop
         4: .line 105
            goto 6
        end local 3 // java.util.Set variablesToRemove
         5: .line 106
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            checkcast java.util.Set
            astore 3 /* variablesToRemove */
        start local 3 // java.util.Set variablesToRemove
         6: .line 109
      StackMap locals: java.util.Set
      StackMap stack:
            aload 3 /* variablesToRemove */
            aload 1 /* variable */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 110
            return
        end local 3 // java.util.Set variablesToRemove
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.concurrent.FastThreadLocal variable
        end local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0     threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            0    8     1           variable  Lio/netty/util/concurrent/FastThreadLocal<*>;
            1    8     2                  v  Ljava/lang/Object;
            3    5     3  variablesToRemove  Ljava/util/Set<Lio/netty/util/concurrent/FastThreadLocal<*>;>;
            6    8     3  variablesToRemove  Ljava/util/Set<Lio/netty/util/concurrent/FastThreadLocal<*>;>;
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal<*>;)V
    MethodParameters:
                Name  Flags
      threadLocalMap  
      variable        

  private static void removeFromVariablesToRemove(io.netty.util.internal.InternalThreadLocalMap, io.netty.util.concurrent.FastThreadLocal<?>);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        start local 1 // io.netty.util.concurrent.FastThreadLocal variable
         0: .line 115
            aload 0 /* threadLocalMap */
            getstatic io.netty.util.concurrent.FastThreadLocal.variablesToRemoveIndex:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.indexedVariable:(I)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         1: .line 117
            aload 2 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 2
            aload 2 /* v */
            ifnonnull 3
         2: .line 118
      StackMap locals: java.lang.Object
      StackMap stack:
            return
         3: .line 122
      StackMap locals:
      StackMap stack:
            aload 2 /* v */
            checkcast java.util.Set
            astore 3 /* variablesToRemove */
        start local 3 // java.util.Set variablesToRemove
         4: .line 123
            aload 3 /* variablesToRemove */
            aload 1 /* variable */
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 124
            return
        end local 3 // java.util.Set variablesToRemove
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.concurrent.FastThreadLocal variable
        end local 0 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0     threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            0    6     1           variable  Lio/netty/util/concurrent/FastThreadLocal<*>;
            1    6     2                  v  Ljava/lang/Object;
            4    6     3  variablesToRemove  Ljava/util/Set<Lio/netty/util/concurrent/FastThreadLocal<*>;>;
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal<*>;)V
    MethodParameters:
                Name  Flags
      threadLocalMap  
      variable        

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
         0: .line 128
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 129
            aload 0 /* this */
            invokestatic io.netty.util.internal.InternalThreadLocalMap.nextVariableIndex:()I
            putfield io.netty.util.concurrent.FastThreadLocal.index:I
         2: .line 130
            return
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;

  public final V get();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
         0: .line 137
            invokestatic io.netty.util.internal.InternalThreadLocalMap.get:()Lio/netty/util/internal/InternalThreadLocalMap;
            astore 1 /* threadLocalMap */
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         1: .line 138
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.indexedVariable:(I)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         2: .line 139
            aload 2 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 4
         3: .line 140
            aload 2 /* v */
            areturn
         4: .line 143
      StackMap locals: io.netty.util.internal.InternalThreadLocalMap java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.initialize:(Lio/netty/util/internal/InternalThreadLocalMap;)Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         5: .line 144
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.registerCleaner:(Lio/netty/util/internal/InternalThreadLocalMap;)V
         6: .line 145
            aload 3 /* value */
            areturn
        end local 3 // java.lang.Object value
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            1    7     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            2    7     2               v  Ljava/lang/Object;
            5    7     3           value  TV;
    Signature: ()TV;

  private void registerCleaner(io.netty.util.internal.InternalThreadLocalMap);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         0: .line 149
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            astore 2 /* current */
        start local 2 // java.lang.Thread current
         1: .line 150
            aload 2 /* current */
            invokestatic io.netty.util.concurrent.FastThreadLocalThread.willCleanupFastThreadLocals:(Ljava/lang/Thread;)Z
            ifne 2
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.isCleanerFlagSet:(I)Z
            ifeq 3
         2: .line 151
      StackMap locals: java.lang.Thread
      StackMap stack:
            return
         3: .line 154
      StackMap locals:
      StackMap stack:
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.setCleanerFlag:(I)V
         4: .line 158
            aload 2 /* current */
            new io.netty.util.concurrent.FastThreadLocal$1
            dup
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            invokespecial io.netty.util.concurrent.FastThreadLocal$1.<init>:(Lio/netty/util/concurrent/FastThreadLocal;Lio/netty/util/internal/InternalThreadLocalMap;)V
            invokestatic io.netty.util.internal.ObjectCleaner.register:(Ljava/lang/Object;Ljava/lang/Runnable;)V
         5: .line 167
            return
        end local 2 // java.lang.Thread current
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    6     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            1    6     2         current  Ljava/lang/Thread;
    MethodParameters:
                Name  Flags
      threadLocalMap  final

  public final V get(io.netty.util.internal.InternalThreadLocalMap);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         0: .line 175
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.indexedVariable:(I)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         1: .line 176
            aload 2 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 3
         2: .line 177
            aload 2 /* v */
            areturn
         3: .line 180
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.initialize:(Lio/netty/util/internal/InternalThreadLocalMap;)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    4     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            1    4     2               v  Ljava/lang/Object;
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;)TV;
    MethodParameters:
                Name  Flags
      threadLocalMap  

  private V initialize(io.netty.util.internal.InternalThreadLocalMap);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         0: .line 184
            aconst_null
            astore 2 /* v */
        start local 2 // java.lang.Object v
         1: .line 186
            aload 0 /* this */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.initialValue:()Ljava/lang/Object;
            astore 2 /* v */
         2: .line 187
            goto 5
      StackMap locals: io.netty.util.concurrent.FastThreadLocal io.netty.util.internal.InternalThreadLocalMap java.lang.Object
      StackMap stack: java.lang.Exception
         3: astore 3 /* e */
        start local 3 // java.lang.Exception e
         4: .line 188
            aload 3 /* e */
            invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.Exception e
         5: .line 191
      StackMap locals:
      StackMap stack:
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            aload 2 /* v */
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.setIndexedVariable:(ILjava/lang/Object;)Z
            pop
         6: .line 192
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            invokestatic io.netty.util.concurrent.FastThreadLocal.addToVariablesToRemove:(Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal;)V
         7: .line 193
            aload 2 /* v */
            areturn
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    8     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            1    8     2               v  TV;
            4    5     3               e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;)TV;
    MethodParameters:
                Name  Flags
      threadLocalMap  

  public final void set();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // java.lang.Object value
         0: .line 200
            aload 1 /* value */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 5
         1: .line 201
            invokestatic io.netty.util.internal.InternalThreadLocalMap.get:()Lio/netty/util/internal/InternalThreadLocalMap;
            astore 2 /* threadLocalMap */
        start local 2 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         2: .line 202
            aload 0 /* this */
            aload 2 /* threadLocalMap */
            aload 1 /* value */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.setKnownNotUnset:(Lio/netty/util/internal/InternalThreadLocalMap;Ljava/lang/Object;)Z
            ifeq 6
         3: .line 203
            aload 0 /* this */
            aload 2 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.registerCleaner:(Lio/netty/util/internal/InternalThreadLocalMap;)V
        end local 2 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         4: .line 205
            goto 6
         5: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.remove:()V
         6: .line 208
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object value
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    7     1           value  TV;
            2    4     2  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
    Signature: (TV;)V
    MethodParameters:
       Name  Flags
      value  

  public final void set(io.netty.util.internal.InternalThreadLocalMap, );
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;Ljava/lang/Object;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        start local 2 // java.lang.Object value
         0: .line 214
            aload 2 /* value */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 3
         1: .line 215
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            aload 2 /* value */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.setKnownNotUnset:(Lio/netty/util/internal/InternalThreadLocalMap;Ljava/lang/Object;)Z
            pop
         2: .line 216
            goto 4
         3: .line 217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* threadLocalMap */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.remove:(Lio/netty/util/internal/InternalThreadLocalMap;)V
         4: .line 219
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object value
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    5     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            0    5     2           value  TV;
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;TV;)V
    MethodParameters:
                Name  Flags
      threadLocalMap  
      value           

  private boolean setKnownNotUnset(io.netty.util.internal.InternalThreadLocalMap, );
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;Ljava/lang/Object;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        start local 2 // java.lang.Object value
         0: .line 225
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            aload 2 /* value */
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.setIndexedVariable:(ILjava/lang/Object;)Z
            ifeq 3
         1: .line 226
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            invokestatic io.netty.util.concurrent.FastThreadLocal.addToVariablesToRemove:(Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal;)V
         2: .line 227
            iconst_1
            ireturn
         3: .line 229
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.Object value
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    4     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            0    4     2           value  TV;
    Signature: (Lio/netty/util/internal/InternalThreadLocalMap;TV;)Z
    MethodParameters:
                Name  Flags
      threadLocalMap  
      value           

  public final boolean isSet();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
         0: .line 236
            aload 0 /* this */
            invokestatic io.netty.util.internal.InternalThreadLocalMap.getIfSet:()Lio/netty/util/internal/InternalThreadLocalMap;
            invokevirtual io.netty.util.concurrent.FastThreadLocal.isSet:(Lio/netty/util/internal/InternalThreadLocalMap;)Z
            ireturn
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;

  public final boolean isSet(io.netty.util.internal.InternalThreadLocalMap);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         0: .line 244
            aload 1 /* threadLocalMap */
            ifnull 1
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.isIndexedVariableSet:(I)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    2     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
    MethodParameters:
                Name  Flags
      threadLocalMap  

  public final void remove();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
         0: .line 250
            aload 0 /* this */
            invokestatic io.netty.util.internal.InternalThreadLocalMap.getIfSet:()Lio/netty/util/internal/InternalThreadLocalMap;
            invokevirtual io.netty.util.concurrent.FastThreadLocal.remove:(Lio/netty/util/internal/InternalThreadLocalMap;)V
         1: .line 251
            return
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;

  public final void remove(io.netty.util.internal.InternalThreadLocalMap);
    descriptor: (Lio/netty/util/internal/InternalThreadLocalMap;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
         0: .line 260
            aload 1 /* threadLocalMap */
            ifnonnull 2
         1: .line 261
            return
         2: .line 264
      StackMap locals:
      StackMap stack:
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            getfield io.netty.util.concurrent.FastThreadLocal.index:I
            invokevirtual io.netty.util.internal.InternalThreadLocalMap.removeIndexedVariable:(I)Ljava/lang/Object;
            astore 2 /* v */
        start local 2 // java.lang.Object v
         3: .line 265
            aload 1 /* threadLocalMap */
            aload 0 /* this */
            invokestatic io.netty.util.concurrent.FastThreadLocal.removeFromVariablesToRemove:(Lio/netty/util/internal/InternalThreadLocalMap;Lio/netty/util/concurrent/FastThreadLocal;)V
         4: .line 267
            aload 2 /* v */
            getstatic io.netty.util.internal.InternalThreadLocalMap.UNSET:Ljava/lang/Object;
            if_acmpeq 9
         5: .line 269
            aload 0 /* this */
            aload 2 /* v */
            invokevirtual io.netty.util.concurrent.FastThreadLocal.onRemoval:(Ljava/lang/Object;)V
         6: .line 270
            goto 9
      StackMap locals: io.netty.util.concurrent.FastThreadLocal io.netty.util.internal.InternalThreadLocalMap java.lang.Object
      StackMap stack: java.lang.Exception
         7: astore 3 /* e */
        start local 3 // java.lang.Exception e
         8: .line 271
            aload 3 /* e */
            invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
        end local 3 // java.lang.Exception e
         9: .line 274
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object v
        end local 1 // io.netty.util.internal.InternalThreadLocalMap threadLocalMap
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0   10     1  threadLocalMap  Lio/netty/util/internal/InternalThreadLocalMap;
            3   10     2               v  Ljava/lang/Object;
            8    9     3               e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.Exception
    MethodParameters:
                Name  Flags
      threadLocalMap  

  protected V initialValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
         0: .line 280
            aconst_null
            areturn
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
    Exceptions:
      throws java.lang.Exception
    Signature: ()TV;

  protected void onRemoval();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // io.netty.util.concurrent.FastThreadLocal this
        start local 1 // java.lang.Object value
         0: .line 286
            return
        end local 1 // java.lang.Object value
        end local 0 // io.netty.util.concurrent.FastThreadLocal this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/netty/util/concurrent/FastThreadLocal<TV;>;
            0    1     1  value  TV;
    Exceptions:
      throws java.lang.Exception
    Signature: (TV;)V
    MethodParameters:
       Name  Flags
      value  
}
Signature: <V:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "FastThreadLocal.java"
NestMembers:
  io.netty.util.concurrent.FastThreadLocal$1
InnerClasses:
  io.netty.util.concurrent.FastThreadLocal$1