public abstract class jdk.internal.loader.AbstractClassLoaderValue<CLV extends jdk.internal.loader.AbstractClassLoaderValue<CLV, V>, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: jdk.internal.loader.AbstractClassLoaderValue
  super_class: java.lang.Object
{
  private static final jdk.internal.access.JavaLangAccess JLA;
    descriptor: Ljdk/internal/access/JavaLangAccess;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 256
            invokestatic jdk.internal.access.SharedSecrets.getJavaLangAccess:()Ljdk/internal/access/JavaLangAccess;
            putstatic jdk.internal.loader.AbstractClassLoaderValue.JLA:Ljdk/internal/access/JavaLangAccess;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
         0: .line 50
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;

  public abstract java.lang.Object key();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public <K> jdk.internal.loader.AbstractClassLoaderValue<CLV, V>.Sub<K> sub(K);
    descriptor: (Ljava/lang/Object;)Ljdk/internal/loader/AbstractClassLoaderValue$Sub;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.Object key
         0: .line 71
            new jdk.internal.loader.AbstractClassLoaderValue$Sub
            dup
            aload 0 /* this */
            aload 1 /* key */
            invokespecial jdk.internal.loader.AbstractClassLoaderValue$Sub.<init>:(Ljdk/internal/loader/AbstractClassLoaderValue;Ljava/lang/Object;)V
            areturn
        end local 1 // java.lang.Object key
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    1     1   key  TK;
    Signature: <K:Ljava/lang/Object;>(TK;)Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>.Sub<TK;>;
    MethodParameters:
      Name  Flags
      key   

  public abstract boolean isEqualOrDescendantOf(jdk.internal.loader.AbstractClassLoaderValue<?, V>);
    descriptor: (Ljdk/internal/loader/AbstractClassLoaderValue;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Ljdk/internal/loader/AbstractClassLoaderValue<*TV;>;)Z
    MethodParameters:
      Name  Flags
      clv   

  public V get(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.ClassLoader cl
         0: .line 94
            aload 1 /* cl */
            invokestatic jdk.internal.loader.AbstractClassLoaderValue.map:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* val */
        start local 2 // java.lang.Object val
         1: .line 96
            aload 0 /* this */
            aload 2 /* val */
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue.extractValue:(Ljava/lang/Object;)Ljava/lang/Object;
         2: areturn
         3: .line 97
      StackMap locals: jdk.internal.loader.AbstractClassLoaderValue java.lang.ClassLoader java.lang.Object
      StackMap stack: jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
            astore 3 /* e */
        start local 3 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
         4: .line 100
            aload 3 /* e */
            athrow
        end local 3 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
         5: .line 101
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         6: .line 105
            aconst_null
            areturn
        end local 2 // java.lang.Object val
        end local 1 // java.lang.ClassLoader cl
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    7     1    cl  Ljava/lang/ClassLoader;
            1    7     2   val  Ljava/lang/Object;
            4    5     3     e  Ljdk/internal/loader/AbstractClassLoaderValue$Memoizer$RecursiveInvocationException;
      Exception table:
        from    to  target  type
           1     2       3  Class jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
           1     2       5  Class java.lang.Throwable
    Signature: (Ljava/lang/ClassLoader;)TV;
    MethodParameters:
      Name  Flags
      cl    

  public V putIfAbsent(java.lang.ClassLoader, );
    descriptor: (Ljava/lang/ClassLoader;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.ClassLoader cl
        start local 2 // java.lang.Object v
         0: .line 120
            aload 1 /* cl */
            invokestatic jdk.internal.loader.AbstractClassLoaderValue.map:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
            astore 3 /* map */
        start local 3 // java.util.concurrent.ConcurrentHashMap map
         1: .line 122
            aload 0 /* this */
            astore 4 /* clv */
        start local 4 // jdk.internal.loader.AbstractClassLoaderValue clv
         2: .line 125
      StackMap locals: java.util.concurrent.ConcurrentHashMap jdk.internal.loader.AbstractClassLoaderValue
      StackMap stack:
            aload 3 /* map */
            aload 4 /* clv */
            aload 2 /* v */
            invokevirtual java.util.concurrent.ConcurrentHashMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* val */
        start local 5 // java.lang.Object val
         3: .line 126
            aload 0 /* this */
            aload 5 /* val */
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue.extractValue:(Ljava/lang/Object;)Ljava/lang/Object;
         4: areturn
        end local 5 // java.lang.Object val
         5: .line 127
      StackMap locals:
      StackMap stack: jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
            astore 5 /* e */
        start local 5 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
         6: .line 130
            aload 5 /* e */
            athrow
        end local 5 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
         7: .line 131
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         8: .line 123
            goto 2
        end local 4 // jdk.internal.loader.AbstractClassLoaderValue clv
        end local 3 // java.util.concurrent.ConcurrentHashMap map
        end local 2 // java.lang.Object v
        end local 1 // java.lang.ClassLoader cl
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    9     1    cl  Ljava/lang/ClassLoader;
            0    9     2     v  TV;
            1    9     3   map  Ljava/util/concurrent/ConcurrentHashMap<TCLV;Ljava/lang/Object;>;
            2    9     4   clv  TCLV;
            3    5     5   val  Ljava/lang/Object;
            6    7     5     e  Ljdk/internal/loader/AbstractClassLoaderValue$Memoizer$RecursiveInvocationException;
      Exception table:
        from    to  target  type
           2     4       5  Class jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
           2     4       7  Class java.lang.Throwable
    Signature: (Ljava/lang/ClassLoader;TV;)TV;
    MethodParameters:
      Name  Flags
      cl    
      v     

  public boolean remove(java.lang.ClassLoader, java.lang.Object);
    descriptor: (Ljava/lang/ClassLoader;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.ClassLoader cl
        start local 2 // java.lang.Object v
         0: .line 152
            aload 1 /* cl */
            invokestatic jdk.internal.loader.AbstractClassLoaderValue.map:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
            aload 0 /* this */
            aload 2 /* v */
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ireturn
        end local 2 // java.lang.Object v
        end local 1 // java.lang.ClassLoader cl
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    1     1    cl  Ljava/lang/ClassLoader;
            0    1     2     v  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      cl    
      v     

  public V computeIfAbsent(java.lang.ClassLoader, java.util.function.BiFunction<? super java.lang.ClassLoader, ? super CLV, ? extends V>);
    descriptor: (Ljava/lang/ClassLoader;Ljava/util/function/BiFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.ClassLoader cl
        start local 2 // java.util.function.BiFunction mappingFunction
         0: .line 189
            aload 1 /* cl */
            invokestatic jdk.internal.loader.AbstractClassLoaderValue.map:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
            astore 3 /* map */
        start local 3 // java.util.concurrent.ConcurrentHashMap map
         1: .line 191
            aload 0 /* this */
            astore 4 /* clv */
        start local 4 // jdk.internal.loader.AbstractClassLoaderValue clv
         2: .line 192
            aconst_null
            astore 5 /* mv */
        start local 5 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer mv
         3: .line 194
      StackMap locals: java.util.concurrent.ConcurrentHashMap jdk.internal.loader.AbstractClassLoaderValue jdk.internal.loader.AbstractClassLoaderValue$Memoizer
      StackMap stack:
            aload 5 /* mv */
            ifnonnull 4
            aload 3 /* map */
            aload 4 /* clv */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            goto 5
      StackMap locals:
      StackMap stack:
         4: aload 3 /* map */
            aload 4 /* clv */
            aload 5 /* mv */
            invokevirtual java.util.concurrent.ConcurrentHashMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         5: astore 6 /* val */
        start local 6 // java.lang.Object val
         6: .line 195
            aload 6 /* val */
            ifnonnull 17
         7: .line 196
            aload 5 /* mv */
            ifnonnull 10
         8: .line 198
            new jdk.internal.loader.AbstractClassLoaderValue$Memoizer
            dup
            aload 1 /* cl */
            aload 4 /* clv */
            aload 2 /* mappingFunction */
            invokespecial jdk.internal.loader.AbstractClassLoaderValue$Memoizer.<init>:(Ljava/lang/ClassLoader;Ljdk/internal/loader/AbstractClassLoaderValue;Ljava/util/function/BiFunction;)V
            astore 5 /* mv */
         9: .line 199
            goto 3
        10: .line 205
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 5 /* mv */
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue$Memoizer.get:()Ljava/lang/Object;
            astore 7 /* v */
        start local 7 // java.lang.Object v
        11: .line 207
            aload 3 /* map */
            aload 4 /* clv */
            aload 5 /* mv */
            aload 7 /* v */
            invokevirtual java.util.concurrent.ConcurrentHashMap.replace:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        12: .line 209
            aload 7 /* v */
        13: areturn
        end local 7 // java.lang.Object v
        14: .line 210
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7 /* t */
        start local 7 // java.lang.Throwable t
        15: .line 212
            aload 3 /* map */
            aload 4 /* clv */
            aload 5 /* mv */
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        16: .line 214
            aload 7 /* t */
            athrow
        end local 7 // java.lang.Throwable t
        17: .line 218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* val */
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue.extractValue:(Ljava/lang/Object;)Ljava/lang/Object;
        18: areturn
        19: .line 219
      StackMap locals:
      StackMap stack: jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
            astore 7 /* e */
        start local 7 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
        20: .line 222
            aload 7 /* e */
            athrow
        end local 7 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException e
        21: .line 223
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
        end local 6 // java.lang.Object val
        22: .line 193
            goto 3
        end local 5 // jdk.internal.loader.AbstractClassLoaderValue$Memoizer mv
        end local 4 // jdk.internal.loader.AbstractClassLoaderValue clv
        end local 3 // java.util.concurrent.ConcurrentHashMap map
        end local 2 // java.util.function.BiFunction mappingFunction
        end local 1 // java.lang.ClassLoader cl
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   23     0             this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0   23     1               cl  Ljava/lang/ClassLoader;
            0   23     2  mappingFunction  Ljava/util/function/BiFunction<-Ljava/lang/ClassLoader;-TCLV;+TV;>;
            1   23     3              map  Ljava/util/concurrent/ConcurrentHashMap<TCLV;Ljava/lang/Object;>;
            2   23     4              clv  TCLV;
            3   23     5               mv  Ljdk/internal/loader/AbstractClassLoaderValue$Memoizer<TCLV;TV;>;
            6   22     6              val  Ljava/lang/Object;
           11   14     7                v  TV;
           15   17     7                t  Ljava/lang/Throwable;
           20   21     7                e  Ljdk/internal/loader/AbstractClassLoaderValue$Memoizer$RecursiveInvocationException;
      Exception table:
        from    to  target  type
          10    13      14  Class java.lang.Throwable
          17    18      19  Class jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException
          17    18      21  Class java.lang.Throwable
    Exceptions:
      throws java.lang.IllegalStateException
    Signature: (Ljava/lang/ClassLoader;Ljava/util/function/BiFunction<-Ljava/lang/ClassLoader;-TCLV;+TV;>;)TV;
    MethodParameters:
                 Name  Flags
      cl               
      mappingFunction  

  public void removeAll(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.ClassLoader cl
         0: .line 248
            aload 1 /* cl */
            invokestatic jdk.internal.loader.AbstractClassLoaderValue.map:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
            astore 2 /* map */
        start local 2 // java.util.concurrent.ConcurrentHashMap map
         1: .line 249
            aload 2 /* map */
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            invokevirtual java.util.concurrent.ConcurrentHashMap$KeySetView.iterator:()Ljava/util/Iterator;
            astore 3 /* i */
        start local 3 // java.util.Iterator i
         2: goto 5
         3: .line 250
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.Iterator
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.internal.loader.AbstractClassLoaderValue
            aload 0 /* this */
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue.isEqualOrDescendantOf:(Ljdk/internal/loader/AbstractClassLoaderValue;)Z
            ifeq 5
         4: .line 251
            aload 3 /* i */
            invokeinterface java.util.Iterator.remove:()V
         5: .line 249
      StackMap locals:
      StackMap stack:
            aload 3 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 3 // java.util.Iterator i
         6: .line 254
            return
        end local 2 // java.util.concurrent.ConcurrentHashMap map
        end local 1 // java.lang.ClassLoader cl
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    7     1    cl  Ljava/lang/ClassLoader;
            1    7     2   map  Ljava/util/concurrent/ConcurrentHashMap<TCLV;Ljava/lang/Object;>;
            2    6     3     i  Ljava/util/Iterator<TCLV;>;
    MethodParameters:
      Name  Flags
      cl    

  private static <CLV extends jdk.internal.loader.AbstractClassLoaderValue<CLV, ?>> java.util.concurrent.ConcurrentHashMap<CLV, java.lang.Object> map(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.ClassLoader cl
         0: .line 265
            aload 0 /* cl */
            ifnonnull 1
            invokestatic jdk.internal.loader.BootLoader.getClassLoaderValueMap:()Ljava/util/concurrent/ConcurrentHashMap;
            goto 2
         1: .line 266
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.loader.AbstractClassLoaderValue.JLA:Ljdk/internal/access/JavaLangAccess;
            aload 0 /* cl */
            invokeinterface jdk.internal.access.JavaLangAccess.createOrGetClassLoaderValueMap:(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap;
         2: .line 264
      StackMap locals:
      StackMap stack: java.util.concurrent.ConcurrentHashMap
            areturn
        end local 0 // java.lang.ClassLoader cl
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    cl  Ljava/lang/ClassLoader;
    Signature: <CLV:Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;*>;>(Ljava/lang/ClassLoader;)Ljava/util/concurrent/ConcurrentHashMap<TCLV;Ljava/lang/Object;>;
    MethodParameters:
      Name  Flags
      cl    

  private V extractValue();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.internal.loader.AbstractClassLoaderValue this
        start local 1 // java.lang.Object memoizerOrValue
         0: .line 276
            aload 1 /* memoizerOrValue */
            instanceof jdk.internal.loader.AbstractClassLoaderValue$Memoizer
            ifeq 2
         1: .line 277
            aload 1 /* memoizerOrValue */
            checkcast jdk.internal.loader.AbstractClassLoaderValue$Memoizer
            invokevirtual jdk.internal.loader.AbstractClassLoaderValue$Memoizer.get:()Ljava/lang/Object;
            areturn
         2: .line 279
      StackMap locals:
      StackMap stack:
            aload 1 /* memoizerOrValue */
            areturn
        end local 1 // java.lang.Object memoizerOrValue
        end local 0 // jdk.internal.loader.AbstractClassLoaderValue this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;
            0    3     1  memoizerOrValue  Ljava/lang/Object;
    Signature: (Ljava/lang/Object;)TV;
    MethodParameters:
                 Name  Flags
      memoizerOrValue  
}
Signature: <CLV:Ljdk/internal/loader/AbstractClassLoaderValue<TCLV;TV;>;V:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "AbstractClassLoaderValue.java"
NestMembers:
  jdk.internal.loader.AbstractClassLoaderValue$Memoizer  jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException  jdk.internal.loader.AbstractClassLoaderValue$Sub
InnerClasses:
  public KeySetView = java.util.concurrent.ConcurrentHashMap$KeySetView of java.util.concurrent.ConcurrentHashMap
  private final Memoizer = jdk.internal.loader.AbstractClassLoaderValue$Memoizer of jdk.internal.loader.AbstractClassLoaderValue
  RecursiveInvocationException = jdk.internal.loader.AbstractClassLoaderValue$Memoizer$RecursiveInvocationException of jdk.internal.loader.AbstractClassLoaderValue$Memoizer
  public final Sub = jdk.internal.loader.AbstractClassLoaderValue$Sub of jdk.internal.loader.AbstractClassLoaderValue