public class org.codehaus.plexus.classworlds.realm.ClassRealm extends java.net.URLClassLoader
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.codehaus.plexus.classworlds.realm.ClassRealm
  super_class: java.net.URLClassLoader
{
  private org.codehaus.plexus.classworlds.ClassWorld world;
    descriptor: Lorg/codehaus/plexus/classworlds/ClassWorld;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String id;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.SortedSet<org.codehaus.plexus.classworlds.realm.Entry> foreignImports;
    descriptor: Ljava/util/SortedSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/SortedSet<Lorg/codehaus/plexus/classworlds/realm/Entry;>;

  private java.util.SortedSet<org.codehaus.plexus.classworlds.realm.Entry> parentImports;
    descriptor: Ljava/util/SortedSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/SortedSet<Lorg/codehaus/plexus/classworlds/realm/Entry;>;

  private org.codehaus.plexus.classworlds.strategy.Strategy strategy;
    descriptor: Lorg/codehaus/plexus/classworlds/strategy/Strategy;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.ClassLoader parentClassLoader;
    descriptor: Ljava/lang/ClassLoader;
    flags: (0x0002) ACC_PRIVATE

  private static final boolean isParallelCapable;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final java.util.concurrent.ConcurrentMap<java.lang.String, java.lang.Object> lockMap;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Ljava/lang/Object;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 65
            ldc Ljava/io/Closeable;
            ldc Ljava/net/URLClassLoader;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            putstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
         1: .line 571
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 3
         2: .line 573
            invokestatic org.codehaus.plexus.classworlds.realm.ClassRealm.registerAsParallelCapable:()Z
            pop
         3: .line 575
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.codehaus.plexus.classworlds.ClassWorld, java.lang.String, java.lang.ClassLoader);
    descriptor: (Lorg/codehaus/plexus/classworlds/ClassWorld;Ljava/lang/String;Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // org.codehaus.plexus.classworlds.ClassWorld world
        start local 2 // java.lang.String id
        start local 3 // java.lang.ClassLoader baseClassLoader
         0: .line 79
            aload 0 /* this */
            iconst_0
            anewarray java.net.URL
            aload 3 /* baseClassLoader */
            invokespecial java.net.URLClassLoader.<init>:([Ljava/net/URL;Ljava/lang/ClassLoader;)V
         1: .line 81
            aload 0 /* this */
            aload 1 /* world */
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.world:Lorg/codehaus/plexus/classworlds/ClassWorld;
         2: .line 83
            aload 0 /* this */
            aload 2 /* id */
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.id:Ljava/lang/String;
         3: .line 85
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
         4: .line 87
            aload 0 /* this */
            aload 0 /* this */
            invokestatic org.codehaus.plexus.classworlds.strategy.StrategyFactory.getStrategy:(Lorg/codehaus/plexus/classworlds/realm/ClassRealm;)Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
         5: .line 89
            aload 0 /* this */
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 6
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            goto 7
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm org.codehaus.plexus.classworlds.ClassWorld java.lang.String java.lang.ClassLoader
      StackMap stack: org.codehaus.plexus.classworlds.realm.ClassRealm
         6: aconst_null
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm org.codehaus.plexus.classworlds.ClassWorld java.lang.String java.lang.ClassLoader
      StackMap stack: org.codehaus.plexus.classworlds.realm.ClassRealm java.util.concurrent.ConcurrentHashMap
         7: putfield org.codehaus.plexus.classworlds.realm.ClassRealm.lockMap:Ljava/util/concurrent/ConcurrentMap;
         8: .line 91
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 10
         9: .line 94
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokespecial java.net.URLClassLoader.getClassLoadingLock:(Ljava/lang/String;)Ljava/lang/Object;
            pop
        10: .line 96
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.ClassLoader baseClassLoader
        end local 2 // java.lang.String id
        end local 1 // org.codehaus.plexus.classworlds.ClassWorld world
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0             this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0   11     1            world  Lorg/codehaus/plexus/classworlds/ClassWorld;
            0   11     2               id  Ljava/lang/String;
            0   11     3  baseClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
                 Name  Flags
      world            
      id               
      baseClassLoader  

  public java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 100
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.id:Ljava/lang/String;
            areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public org.codehaus.plexus.classworlds.ClassWorld getWorld();
    descriptor: ()Lorg/codehaus/plexus/classworlds/ClassWorld;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 105
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.world:Lorg/codehaus/plexus/classworlds/ClassWorld;
            areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public void importFromParent(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String packageName
         0: .line 110
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            ifnonnull 2
         1: .line 112
            aload 0 /* this */
            new java.util.TreeSet
            dup
            invokespecial java.util.TreeSet.<init>:()V
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
         2: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            new org.codehaus.plexus.classworlds.realm.Entry
            dup
            aconst_null
            aload 1 /* packageName */
            invokespecial org.codehaus.plexus.classworlds.realm.Entry.<init>:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
            invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 116
            return
        end local 1 // java.lang.String packageName
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1  packageName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      packageName  

  boolean isImportedFromParent(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 120
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            ifnull 7
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.isEmpty:()Z
            ifne 7
         1: .line 122
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.codehaus.plexus.classworlds.realm.Entry
            astore 2 /* entry */
        start local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         3: .line 124
            aload 2 /* entry */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.Entry.matches:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 126
            iconst_1
            ireturn
        end local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         5: .line 122
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 130
            iconst_0
            ireturn
         7: .line 133
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    8     1   name  Ljava/lang/String;
            3    5     2  entry  Lorg/codehaus/plexus/classworlds/realm/Entry;
    MethodParameters:
      Name  Flags
      name  

  public void importFrom(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String realmId
        start local 2 // java.lang.String packageName
         0: .line 139
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getWorld:()Lorg/codehaus/plexus/classworlds/ClassWorld;
            aload 1 /* realmId */
            invokevirtual org.codehaus.plexus.classworlds.ClassWorld.getRealm:(Ljava/lang/String;)Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            aload 2 /* packageName */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.importFrom:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
         1: .line 140
            return
        end local 2 // java.lang.String packageName
        end local 1 // java.lang.String realmId
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    2     1      realmId  Ljava/lang/String;
            0    2     2  packageName  Ljava/lang/String;
    Exceptions:
      throws org.codehaus.plexus.classworlds.realm.NoSuchRealmException
    MethodParameters:
             Name  Flags
      realmId      
      packageName  

  public void importFrom(java.lang.ClassLoader, java.lang.String);
    descriptor: (Ljava/lang/ClassLoader;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.ClassLoader classLoader
        start local 2 // java.lang.String packageName
         0: .line 144
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
            new org.codehaus.plexus.classworlds.realm.Entry
            dup
            aload 1 /* classLoader */
            aload 2 /* packageName */
            invokespecial org.codehaus.plexus.classworlds.realm.Entry.<init>:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
            invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 145
            return
        end local 2 // java.lang.String packageName
        end local 1 // java.lang.ClassLoader classLoader
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    2     1  classLoader  Ljava/lang/ClassLoader;
            0    2     2  packageName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      classLoader  
      packageName  

  public java.lang.ClassLoader getImportClassLoader(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 149
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.codehaus.plexus.classworlds.realm.Entry
            astore 2 /* entry */
        start local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         2: .line 151
            aload 2 /* entry */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.Entry.matches:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 153
            aload 2 /* entry */
            invokevirtual org.codehaus.plexus.classworlds.realm.Entry.getClassLoader:()Ljava/lang/ClassLoader;
            areturn
        end local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         4: .line 149
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 157
            aconst_null
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    6     1   name  Ljava/lang/String;
            2    4     2  entry  Lorg/codehaus/plexus/classworlds/realm/Entry;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Collection<org.codehaus.plexus.classworlds.realm.ClassRealm> getImportRealms();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 162
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* importRealms */
        start local 1 // java.util.Collection importRealms
         1: .line 164
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.util.Collection top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.codehaus.plexus.classworlds.realm.Entry
            astore 2 /* entry */
        start local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         3: .line 166
            aload 2 /* entry */
            invokevirtual org.codehaus.plexus.classworlds.realm.Entry.getClassLoader:()Ljava/lang/ClassLoader;
            instanceof org.codehaus.plexus.classworlds.realm.ClassRealm
            ifeq 5
         4: .line 168
            aload 1 /* importRealms */
            aload 2 /* entry */
            invokevirtual org.codehaus.plexus.classworlds.realm.Entry.getClassLoader:()Ljava/lang/ClassLoader;
            checkcast org.codehaus.plexus.classworlds.realm.ClassRealm
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.codehaus.plexus.classworlds.realm.Entry entry
         5: .line 164
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 172
            aload 1 /* importRealms */
            areturn
        end local 1 // java.util.Collection importRealms
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            1    7     1  importRealms  Ljava/util/Collection<Lorg/codehaus/plexus/classworlds/realm/ClassRealm;>;
            3    5     2         entry  Lorg/codehaus/plexus/classworlds/realm/Entry;
    Signature: ()Ljava/util/Collection<Lorg/codehaus/plexus/classworlds/realm/ClassRealm;>;

  public org.codehaus.plexus.classworlds.strategy.Strategy getStrategy();
    descriptor: ()Lorg/codehaus/plexus/classworlds/strategy/Strategy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 177
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public void setParentClassLoader(java.lang.ClassLoader);
    descriptor: (Ljava/lang/ClassLoader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.ClassLoader parentClassLoader
         0: .line 182
            aload 0 /* this */
            aload 1 /* parentClassLoader */
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentClassLoader:Ljava/lang/ClassLoader;
         1: .line 183
            return
        end local 1 // java.lang.ClassLoader parentClassLoader
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    2     1  parentClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
                   Name  Flags
      parentClassLoader  

  public java.lang.ClassLoader getParentClassLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 187
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentClassLoader:Ljava/lang/ClassLoader;
            areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public void setParentRealm(org.codehaus.plexus.classworlds.realm.ClassRealm);
    descriptor: (Lorg/codehaus/plexus/classworlds/realm/ClassRealm;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // org.codehaus.plexus.classworlds.realm.ClassRealm realm
         0: .line 192
            aload 0 /* this */
            aload 1 /* realm */
            putfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentClassLoader:Ljava/lang/ClassLoader;
         1: .line 193
            return
        end local 1 // org.codehaus.plexus.classworlds.realm.ClassRealm realm
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    2     1  realm  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
    MethodParameters:
       Name  Flags
      realm  

  public org.codehaus.plexus.classworlds.realm.ClassRealm getParentRealm();
    descriptor: ()Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 197
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentClassLoader:Ljava/lang/ClassLoader;
            instanceof org.codehaus.plexus.classworlds.realm.ClassRealm
            ifeq 1
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentClassLoader:Ljava/lang/ClassLoader;
            checkcast org.codehaus.plexus.classworlds.realm.ClassRealm
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: org.codehaus.plexus.classworlds.realm.ClassRealm
         2: areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public org.codehaus.plexus.classworlds.realm.ClassRealm createChildRealm(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String id
         0: .line 203
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getWorld:()Lorg/codehaus/plexus/classworlds/ClassWorld;
            aload 1 /* id */
            aconst_null
            invokevirtual org.codehaus.plexus.classworlds.ClassWorld.newRealm:(Ljava/lang/String;Ljava/lang/ClassLoader;)Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            astore 2 /* childRealm */
        start local 2 // org.codehaus.plexus.classworlds.realm.ClassRealm childRealm
         1: .line 205
            aload 2 /* childRealm */
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.setParentRealm:(Lorg/codehaus/plexus/classworlds/realm/ClassRealm;)V
         2: .line 207
            aload 2 /* childRealm */
            areturn
        end local 2 // org.codehaus.plexus.classworlds.realm.ClassRealm childRealm
        end local 1 // java.lang.String id
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    3     1          id  Ljava/lang/String;
            1    3     2  childRealm  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
    Exceptions:
      throws org.codehaus.plexus.classworlds.realm.DuplicateRealmException
    MethodParameters:
      Name  Flags
      id    

  public void addURL(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.net.URL url
         0: .line 212
            aload 1 /* url */
            invokevirtual java.net.URL.toExternalForm:()Ljava/lang/String;
            astore 2 /* urlStr */
        start local 2 // java.lang.String urlStr
         1: .line 214
            aload 2 /* urlStr */
            ldc "jar:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 7
            aload 2 /* urlStr */
            ldc "!/"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 7
         2: .line 216
            aload 2 /* urlStr */
            iconst_4
            aload 2 /* urlStr */
            invokevirtual java.lang.String.length:()I
            iconst_2
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* urlStr */
         3: .line 220
            new java.net.URL
            dup
            aload 2 /* urlStr */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            astore 1 /* url */
         4: .line 221
            goto 7
         5: .line 222
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.net.URL java.lang.String
      StackMap stack: java.net.MalformedURLException
            astore 3 /* e */
        start local 3 // java.net.MalformedURLException e
         6: .line 224
            aload 3 /* e */
            invokevirtual java.net.MalformedURLException.printStackTrace:()V
        end local 3 // java.net.MalformedURLException e
         7: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* url */
            invokespecial java.net.URLClassLoader.addURL:(Ljava/net/URL;)V
         8: .line 229
            return
        end local 2 // java.lang.String urlStr
        end local 1 // java.net.URL url
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    9     1     url  Ljava/net/URL;
            1    9     2  urlStr  Ljava/lang/String;
            6    7     3       e  Ljava/net/MalformedURLException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.net.MalformedURLException
    MethodParameters:
      Name  Flags
      url   

  public java.lang.Class<?> loadClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 239
            aload 0 /* this */
            aload 1 /* name */
            iconst_0
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass:(Ljava/lang/String;Z)Ljava/lang/Class;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    1     1  name  Ljava/lang/String;
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  

  protected java.lang.Class<?> loadClass(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/Class;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
        start local 2 // boolean resolve
         0: .line 245
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 2
         1: .line 247
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* resolve */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass:(Ljava/lang/String;Z)Ljava/lang/Class;
            areturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         3: .line 254
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* resolve */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass:(Ljava/lang/String;Z)Ljava/lang/Class;
            aload 3
            monitorexit
         4: areturn
         5: .line 252
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String int org.codehaus.plexus.classworlds.realm.ClassRealm
      StackMap stack: java.lang.Throwable
            aload 3
            monitorexit
         6: athrow
        end local 2 // boolean resolve
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    7     1     name  Ljava/lang/String;
            0    7     2  resolve  Z
      Exception table:
        from    to  target  type
           3     4       5  any
           5     6       5  any
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;Z)Ljava/lang/Class<*>;
    MethodParameters:
         Name  Flags
      name     
      resolve  

  private java.lang.Class<?> unsynchronizedLoadClass(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
        start local 2 // boolean resolve
         0: .line 266
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* resolve */
            invokespecial java.net.URLClassLoader.loadClass:(Ljava/lang/String;Z)Ljava/lang/Class;
         1: areturn
         2: .line 268
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         3: .line 271
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            aload 1 /* name */
            invokeinterface org.codehaus.plexus.classworlds.strategy.Strategy.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            areturn
        end local 2 // boolean resolve
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1     name  Ljava/lang/String;
            0    4     2  resolve  Z
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;Z)Ljava/lang/Class<*>;
    MethodParameters:
         Name  Flags
      name     
      resolve  

  protected java.lang.Class<?> findClass(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String moduleName
        start local 2 // java.lang.String name
         0: .line 278
            aload 1 /* moduleName */
            ifnull 2
         1: .line 280
            aconst_null
            areturn
         2: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name */
            invokespecial java.net.URLClassLoader.findClass:(Ljava/lang/String;)Ljava/lang/Class;
         3: areturn
         4: .line 286
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         5: .line 290
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            invokeinterface org.codehaus.plexus.classworlds.strategy.Strategy.getRealm:()Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            aload 2 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.findClass:(Ljava/lang/String;)Ljava/lang/Class;
         6: areturn
         7: .line 292
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         8: .line 294
            aconst_null
            areturn
        end local 2 // java.lang.String name
        end local 1 // java.lang.String moduleName
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    9     1  moduleName  Ljava/lang/String;
            0    9     2        name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.ClassNotFoundException
           5     6       7  Class java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
            Name  Flags
      moduleName  
      name        

  protected java.lang.Class<?> findClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 306
            new java.lang.ClassNotFoundException
            dup
            aload 1 /* name */
            invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    1     1  name  Ljava/lang/String;
    Exceptions:
      throws java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  

  public java.net.URL getResource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 311
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            astore 2 /* resource */
        start local 2 // java.net.URL resource
         1: .line 312
            aload 2 /* resource */
            ifnull 2
            aload 2 /* resource */
            goto 3
      StackMap locals: java.net.URL
      StackMap stack:
         2: aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            aload 1 /* name */
            invokeinterface org.codehaus.plexus.classworlds.strategy.Strategy.getResource:(Ljava/lang/String;)Ljava/net/URL;
      StackMap locals:
      StackMap stack: java.net.URL
         3: areturn
        end local 2 // java.net.URL resource
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1      name  Ljava/lang/String;
            1    4     2  resource  Ljava/net/URL;
    MethodParameters:
      Name  Flags
      name  

  public java.net.URL findResource(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 317
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.findResource:(Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.net.URL> getResources(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 323
            new java.util.LinkedHashSet
            dup
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.getResources:(Ljava/lang/String;)Ljava/util/Enumeration;
            invokestatic java.util.Collections.list:(Ljava/util/Enumeration;)Ljava/util/ArrayList;
            invokespecial java.util.LinkedHashSet.<init>:(Ljava/util/Collection;)V
            astore 2 /* resources */
        start local 2 // java.util.Collection resources
         1: .line 324
            aload 2 /* resources */
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.strategy:Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            aload 1 /* name */
            invokeinterface org.codehaus.plexus.classworlds.strategy.Strategy.getResources:(Ljava/lang/String;)Ljava/util/Enumeration;
            invokestatic java.util.Collections.list:(Ljava/util/Enumeration;)Ljava/util/ArrayList;
            invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
            pop
         2: .line 325
            aload 2 /* resources */
            invokestatic java.util.Collections.enumeration:(Ljava/util/Collection;)Ljava/util/Enumeration;
            areturn
        end local 2 // java.util.Collection resources
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    3     1       name  Ljava/lang/String;
            1    3     2  resources  Ljava/util/Collection<Ljava/net/URL;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;)Ljava/util/Enumeration<Ljava/net/URL;>;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.net.URL> findResources(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 331
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.findResources:(Ljava/lang/String;)Ljava/util/Enumeration;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    1     1  name  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;)Ljava/util/Enumeration<Ljava/net/URL;>;
    MethodParameters:
      Name  Flags
      name  

  public void display();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 340
            aload 0 /* this */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.display:(Ljava/io/PrintStream;)V
         1: .line 341
            return
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public void display(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.io.PrintStream out
         0: .line 345
            aload 1 /* out */
            ldc "-----------------------------------------------------"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 347
            aload 0 /* this */
            astore 2 /* cr */
        start local 2 // org.codehaus.plexus.classworlds.realm.ClassRealm cr
         2: goto 8
         3: .line 349
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm
      StackMap stack:
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "realm =    "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* cr */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 350
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "strategy = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* cr */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getStrategy:()Lorg/codehaus/plexus/classworlds/strategy/Strategy;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 352
            aload 2 /* cr */
            aload 1 /* out */
            invokestatic org.codehaus.plexus.classworlds.realm.ClassRealm.showUrls:(Lorg/codehaus/plexus/classworlds/realm/ClassRealm;Ljava/io/PrintStream;)V
         6: .line 354
            aload 1 /* out */
            invokevirtual java.io.PrintStream.println:()V
         7: .line 347
            aload 2 /* cr */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getParentRealm:()Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            astore 2 /* cr */
      StackMap locals:
      StackMap stack:
         8: aload 2 /* cr */
            ifnonnull 3
        end local 2 // org.codehaus.plexus.classworlds.realm.ClassRealm cr
         9: .line 357
            aload 1 /* out */
            ldc "-----------------------------------------------------"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 358
            return
        end local 1 // java.io.PrintStream out
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0   11     1   out  Ljava/io/PrintStream;
            2    9     2    cr  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
    MethodParameters:
      Name  Flags
      out   

  private static void showUrls(org.codehaus.plexus.classworlds.realm.ClassRealm, java.io.PrintStream);
    descriptor: (Lorg/codehaus/plexus/classworlds/realm/ClassRealm;Ljava/io/PrintStream;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm classRealm
        start local 1 // java.io.PrintStream out
         0: .line 362
            aload 0 /* classRealm */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getURLs:()[Ljava/net/URL;
            astore 2 /* urls */
        start local 2 // java.net.URL[] urls
         1: .line 364
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 366
      StackMap locals: java.net.URL[] int
      StackMap stack:
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "urls["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "] = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* urls */
            iload 3 /* i */
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 364
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            aload 2 /* urls */
            arraylength
            if_icmplt 3
        end local 3 // int i
         6: .line 369
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "Number of foreign imports: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* classRealm */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         7: .line 371
            aload 0 /* classRealm */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.foreignImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 10
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.io.PrintStream java.net.URL[] top java.util.Iterator
      StackMap stack:
         8: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.codehaus.plexus.classworlds.realm.Entry
            astore 3 /* entry */
        start local 3 // org.codehaus.plexus.classworlds.realm.Entry entry
         9: .line 373
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "import: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* entry */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 3 // org.codehaus.plexus.classworlds.realm.Entry entry
        10: .line 371
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 376
            aload 0 /* classRealm */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            ifnull 17
        12: .line 378
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "Number of parent imports: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* classRealm */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        13: .line 380
            aload 0 /* classRealm */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.parentImports:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 16
      StackMap locals:
      StackMap stack:
        14: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.codehaus.plexus.classworlds.realm.Entry
            astore 3 /* entry */
        start local 3 // org.codehaus.plexus.classworlds.realm.Entry entry
        15: .line 382
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "import: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* entry */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 3 // org.codehaus.plexus.classworlds.realm.Entry entry
        16: .line 380
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        17: .line 385
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.io.PrintStream java.net.URL[]
      StackMap stack:
            return
        end local 2 // java.net.URL[] urls
        end local 1 // java.io.PrintStream out
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm classRealm
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0  classRealm  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0   18     1         out  Ljava/io/PrintStream;
            1   18     2        urls  [Ljava/net/URL;
            2    6     3           i  I
            9   10     3       entry  Lorg/codehaus/plexus/classworlds/realm/Entry;
           15   16     3       entry  Lorg/codehaus/plexus/classworlds/realm/Entry;
    MethodParameters:
            Name  Flags
      classRealm  
      out         

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
         0: .line 389
            new java.lang.StringBuilder
            dup
            ldc "ClassRealm["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ", parent: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getParentClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;

  public java.lang.Class<?> loadClassFromImport(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 398
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getImportClassLoader:(Ljava/lang/String;)Ljava/lang/ClassLoader;
            astore 2 /* importClassLoader */
        start local 2 // java.lang.ClassLoader importClassLoader
         1: .line 400
            aload 2 /* importClassLoader */
            ifnull 6
         2: .line 404
            aload 2 /* importClassLoader */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
         3: areturn
         4: .line 406
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String java.lang.ClassLoader
      StackMap stack: java.lang.ClassNotFoundException
            pop
         5: .line 408
            aconst_null
            areturn
         6: .line 412
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader importClassLoader
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    7     1               name  Ljava/lang/String;
            1    7     2  importClassLoader  Ljava/lang/ClassLoader;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  

  public java.lang.Class<?> loadClassFromSelf(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 417
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getClassRealmLoadingLock:(Ljava/lang/String;)Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 421
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.findLoadedClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* clazz */
        start local 3 // java.lang.Class clazz
         2: .line 423
            aload 3 /* clazz */
            ifnonnull 4
         3: .line 425
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.findClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* clazz */
         4: .line 428
      StackMap locals: java.lang.Object java.lang.Class
      StackMap stack:
            aload 3 /* clazz */
         5: aload 2
            monitorexit
         6: areturn
        end local 3 // java.lang.Class clazz
         7: .line 430
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String java.lang.Object
      StackMap stack: java.lang.ClassNotFoundException
            pop
         8: .line 432
            aload 2
            monitorexit
         9: aconst_null
            areturn
        10: .line 417
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
        11: athrow
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0   12     1   name  Ljava/lang/String;
            2    7     3  clazz  Ljava/lang/Class<*>;
      Exception table:
        from    to  target  type
           1     5       7  Class java.lang.ClassNotFoundException
           1     6      10  any
           7     9      10  any
          10    11      10  any
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  

  private java.lang.Object getClassRealmLoadingLock(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 439
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 2
         1: .line 441
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getClassLoadingLock:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
         2: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    3     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  protected java.lang.Object getClassLoadingLock(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 452
            getstatic org.codehaus.plexus.classworlds.realm.ClassRealm.isParallelCapable:Z
            ifeq 6
         1: .line 454
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            astore 2 /* newLock */
        start local 2 // java.lang.Object newLock
         2: .line 455
            aload 0 /* this */
            getfield org.codehaus.plexus.classworlds.realm.ClassRealm.lockMap:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* name */
            aload 2 /* newLock */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* lock */
        start local 3 // java.lang.Object lock
         3: .line 456
            aload 3 /* lock */
            ifnonnull 4
            aload 2 /* newLock */
            goto 5
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
         4: aload 3 /* lock */
      StackMap locals:
      StackMap stack: java.lang.Object
         5: areturn
        end local 3 // java.lang.Object lock
        end local 2 // java.lang.Object newLock
         6: .line 458
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    7     1     name  Ljava/lang/String;
            2    6     2  newLock  Ljava/lang/Object;
            3    6     3     lock  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      name  

  public java.lang.Class<?> loadClassFromParent(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 463
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getParentClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* parent */
        start local 2 // java.lang.ClassLoader parent
         1: .line 465
            aload 2 /* parent */
            ifnull 6
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.isImportedFromParent:(Ljava/lang/String;)Z
            ifeq 6
         2: .line 469
            aload 2 /* parent */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
         3: areturn
         4: .line 471
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String java.lang.ClassLoader
      StackMap stack: java.lang.ClassNotFoundException
            pop
         5: .line 473
            aconst_null
            areturn
         6: .line 477
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader parent
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    7     1    name  Ljava/lang/String;
            1    7     2  parent  Ljava/lang/ClassLoader;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.ClassNotFoundException
    Signature: (Ljava/lang/String;)Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      name  

  public java.net.URL loadResourceFromImport(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 486
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getImportClassLoader:(Ljava/lang/String;)Ljava/lang/ClassLoader;
            astore 2 /* importClassLoader */
        start local 2 // java.lang.ClassLoader importClassLoader
         1: .line 488
            aload 2 /* importClassLoader */
            ifnull 3
         2: .line 490
            aload 2 /* importClassLoader */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            areturn
         3: .line 493
      StackMap locals: java.lang.ClassLoader
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader importClassLoader
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1               name  Ljava/lang/String;
            1    4     2  importClassLoader  Ljava/lang/ClassLoader;
    MethodParameters:
      Name  Flags
      name  

  public java.net.URL loadResourceFromSelf(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 498
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.findResource:(Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public java.net.URL loadResourceFromParent(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 503
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getParentClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* parent */
        start local 2 // java.lang.ClassLoader parent
         1: .line 505
            aload 2 /* parent */
            ifnull 3
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.isImportedFromParent:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 507
            aload 2 /* parent */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            areturn
         3: .line 511
      StackMap locals: java.lang.ClassLoader
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader parent
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1    name  Ljava/lang/String;
            1    4     2  parent  Ljava/lang/ClassLoader;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.net.URL> loadResourcesFromImport(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 521
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getImportClassLoader:(Ljava/lang/String;)Ljava/lang/ClassLoader;
            astore 2 /* importClassLoader */
        start local 2 // java.lang.ClassLoader importClassLoader
         1: .line 523
            aload 2 /* importClassLoader */
            ifnull 6
         2: .line 527
            aload 2 /* importClassLoader */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.getResources:(Ljava/lang/String;)Ljava/util/Enumeration;
         3: areturn
         4: .line 529
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String java.lang.ClassLoader
      StackMap stack: java.io.IOException
            pop
         5: .line 531
            aconst_null
            areturn
         6: .line 535
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader importClassLoader
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    7     1               name  Ljava/lang/String;
            1    7     2  importClassLoader  Ljava/lang/ClassLoader;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.IOException
    Signature: (Ljava/lang/String;)Ljava/util/Enumeration<Ljava/net/URL;>;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.net.URL> loadResourcesFromSelf(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 542
            aload 0 /* this */
            aload 1 /* name */
            invokespecial java.net.URLClassLoader.findResources:(Ljava/lang/String;)Ljava/util/Enumeration;
         1: areturn
         2: .line 544
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         3: .line 546
            aconst_null
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    4     1  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    Signature: (Ljava/lang/String;)Ljava/util/Enumeration<Ljava/net/URL;>;
    MethodParameters:
      Name  Flags
      name  

  public java.util.Enumeration<java.net.URL> loadResourcesFromParent(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
        start local 1 // java.lang.String name
         0: .line 552
            aload 0 /* this */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.getParentClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* parent */
        start local 2 // java.lang.ClassLoader parent
         1: .line 554
            aload 2 /* parent */
            ifnull 5
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.codehaus.plexus.classworlds.realm.ClassRealm.isImportedFromParent:(Ljava/lang/String;)Z
            ifeq 5
         2: .line 558
            aload 2 /* parent */
            aload 1 /* name */
            invokevirtual java.lang.ClassLoader.getResources:(Ljava/lang/String;)Ljava/util/Enumeration;
         3: areturn
         4: .line 560
      StackMap locals: org.codehaus.plexus.classworlds.realm.ClassRealm java.lang.String java.lang.ClassLoader
      StackMap stack: java.io.IOException
            pop
         5: .line 566
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.ClassLoader parent
        end local 1 // java.lang.String name
        end local 0 // org.codehaus.plexus.classworlds.realm.ClassRealm this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/codehaus/plexus/classworlds/realm/ClassRealm;
            0    6     1    name  Ljava/lang/String;
            1    6     2  parent  Ljava/lang/ClassLoader;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.IOException
    Signature: (Ljava/lang/String;)Ljava/util/Enumeration<Ljava/net/URL;>;
    MethodParameters:
      Name  Flags
      name  
}
SourceFile: "ClassRealm.java"