class java.util.logging.LogManager$LoggerContext
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.logging.LogManager$LoggerContext
  super_class: java.lang.Object
{
  private final java.util.concurrent.ConcurrentHashMap<java.lang.String, java.util.logging.LogManager$LoggerWeakRef> namedLoggers;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Ljava/util/logging/LogManager$LoggerWeakRef;>;

  private final java.util.logging.LogManager$LogNode root;
    descriptor: Ljava/util/logging/LogManager$LogNode;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final java.util.logging.LogManager this$0;
    descriptor: Ljava/util/logging/LogManager;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 597
            ldc Ljava/util/logging/LogManager;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.util.logging.LogManager$LoggerContext.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.util.logging.LogManager);
    descriptor: (Ljava/util/logging/LogManager;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 603
            aload 0 /* this */
            aload 1
            putfield java.util.logging.LogManager$LoggerContext.this$0:Ljava/util/logging/LogManager;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 599
            aload 0 /* this */
         2: .line 600
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
         3: .line 604
            aload 0 /* this */
            new java.util.logging.LogManager$LogNode
            dup
            aconst_null
            aload 0 /* this */
            invokespecial java.util.logging.LogManager$LogNode.<init>:(Ljava/util/logging/LogManager$LogNode;Ljava/util/logging/LogManager$LoggerContext;)V
            putfield java.util.logging.LogManager$LoggerContext.root:Ljava/util/logging/LogManager$LogNode;
         4: .line 605
            return
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/logging/LogManager$LoggerContext;
    MethodParameters:
        Name  Flags
      this$0  final

  final boolean requiresDefaultLoggers();
    descriptor: ()Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 611
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            getstatic java.util.logging.LogManager.manager:Ljava/util/logging/LogManager;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 1 /* requiresDefaultLoggers */
        start local 1 // boolean requiresDefaultLoggers
         3: .line 612
            iload 1 /* requiresDefaultLoggers */
            ifeq 5
         4: .line 613
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            invokevirtual java.util.logging.LogManager.ensureLogManagerInitialized:()V
         5: .line 615
      StackMap locals: int
      StackMap stack:
            iload 1 /* requiresDefaultLoggers */
            ireturn
        end local 1 // boolean requiresDefaultLoggers
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    6     0                    this  Ljava/util/logging/LogManager$LoggerContext;
            3    6     1  requiresDefaultLoggers  Z

  final java.util.logging.LogManager getOwner();
    descriptor: ()Ljava/util/logging/LogManager;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 620
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.this$0:Ljava/util/logging/LogManager;
            areturn
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/logging/LogManager$LoggerContext;

  final java.util.logging.Logger getRootLogger();
    descriptor: ()Ljava/util/logging/Logger;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 627
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            getfield java.util.logging.LogManager.rootLogger:Ljava/util/logging/Logger;
            areturn
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/logging/LogManager$LoggerContext;

  final java.util.logging.Logger getGlobalLogger();
    descriptor: ()Ljava/util/logging/Logger;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 635
            getstatic java.util.logging.Logger.global:Ljava/util/logging/Logger;
            astore 1 /* global */
        start local 1 // java.util.logging.Logger global
         1: .line 636
            aload 1 /* global */
            areturn
        end local 1 // java.util.logging.Logger global
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljava/util/logging/LogManager$LoggerContext;
            1    2     1  global  Ljava/util/logging/Logger;

  java.util.logging.Logger demandLogger(java.lang.String, java.lang.String, java.lang.Module);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Module;)Ljava/util/logging/Logger;
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String resourceBundleName
        start local 3 // java.lang.Module module
         0: .line 642
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            astore 4 /* owner */
        start local 4 // java.util.logging.LogManager owner
         1: .line 643
            aload 4 /* owner */
            aload 1 /* name */
            aload 2 /* resourceBundleName */
            aload 3 /* module */
            invokevirtual java.util.logging.LogManager.demandLogger:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Module;)Ljava/util/logging/Logger;
            areturn
        end local 4 // java.util.logging.LogManager owner
        end local 3 // java.lang.Module module
        end local 2 // java.lang.String resourceBundleName
        end local 1 // java.lang.String name
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Ljava/util/logging/LogManager$LoggerContext;
            0    2     1                name  Ljava/lang/String;
            0    2     2  resourceBundleName  Ljava/lang/String;
            0    2     3              module  Ljava/lang/Module;
            1    2     4               owner  Ljava/util/logging/LogManager;
    MethodParameters:
                    Name  Flags
      name                
      resourceBundleName  
      module              

  private void ensureInitialized();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 655
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.requiresDefaultLoggers:()Z
            ifeq 3
         1: .line 657
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getRootLogger:()Ljava/util/logging/Logger;
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureDefaultLogger:(Ljava/util/logging/Logger;)V
         2: .line 658
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getGlobalLogger:()Ljava/util/logging/Logger;
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureDefaultLogger:(Ljava/util/logging/Logger;)V
         3: .line 660
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/logging/LogManager$LoggerContext;

  java.util.logging.Logger findLogger(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/logging/Logger;
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.lang.String name
         0: .line 665
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.logging.LogManager$LoggerWeakRef
            astore 2 /* ref */
        start local 2 // java.util.logging.LogManager$LoggerWeakRef ref
         1: .line 666
            aload 2 /* ref */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: java.util.logging.LogManager$LoggerWeakRef
      StackMap stack:
         2: aload 2 /* ref */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.get:()Ljava/lang/Object;
            checkcast java.util.logging.Logger
      StackMap locals:
      StackMap stack: java.util.logging.Logger
         3: astore 3 /* logger */
        start local 3 // java.util.logging.Logger logger
         4: .line 674
            aload 3 /* logger */
            ifnonnull 6
            aload 2 /* ref */
            ifnonnull 7
            aload 1 /* name */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 7
         5: .line 675
            aload 1 /* name */
            ldc "global"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
         6: .line 676
      StackMap locals: java.util.logging.Logger
      StackMap stack:
            aload 3 /* logger */
            areturn
         7: .line 685
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         8: .line 688
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureInitialized:()V
         9: .line 689
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.logging.LogManager$LoggerWeakRef
            astore 2 /* ref */
        10: .line 690
            aload 2 /* ref */
            ifnonnull 13
        11: .line 691
            aload 4
            monitorexit
        12: aconst_null
            areturn
        13: .line 693
      StackMap locals: java.util.logging.LogManager$LoggerContext
      StackMap stack:
            aload 2 /* ref */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.get:()Ljava/lang/Object;
            checkcast java.util.logging.Logger
            astore 3 /* logger */
        14: .line 694
            aload 3 /* logger */
            ifnonnull 16
        15: .line 697
            aload 2 /* ref */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.dispose:()V
        16: .line 699
      StackMap locals:
      StackMap stack:
            aload 3 /* logger */
            aload 4
            monitorexit
        17: areturn
        18: .line 685
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 4
            monitorexit
        19: athrow
        end local 3 // java.util.logging.Logger logger
        end local 2 // java.util.logging.LogManager$LoggerWeakRef ref
        end local 1 // java.lang.String name
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Ljava/util/logging/LogManager$LoggerContext;
            0   20     1    name  Ljava/lang/String;
            1   20     2     ref  Ljava/util/logging/LogManager$LoggerWeakRef;
            4   20     3  logger  Ljava/util/logging/Logger;
      Exception table:
        from    to  target  type
           8    12      18  any
          13    17      18  any
          18    19      18  any
    MethodParameters:
      Name  Flags
      name  

  private void ensureAllDefaultLoggers(java.util.logging.Logger);
    descriptor: (Ljava/util/logging/Logger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.util.logging.Logger logger
         0: .line 710
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.requiresDefaultLoggers:()Z
            ifeq 6
         1: .line 711
            aload 1 /* logger */
            invokevirtual java.util.logging.Logger.getName:()Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         2: .line 712
            aload 2 /* name */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 6
         3: .line 713
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getRootLogger:()Ljava/util/logging/Logger;
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureDefaultLogger:(Ljava/util/logging/Logger;)V
         4: .line 714
            ldc "global"
            aload 2 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 715
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getGlobalLogger:()Ljava/util/logging/Logger;
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureDefaultLogger:(Ljava/util/logging/Logger;)V
        end local 2 // java.lang.String name
         6: .line 719
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Logger logger
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/logging/LogManager$LoggerContext;
            0    7     1  logger  Ljava/util/logging/Logger;
            2    6     2    name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      logger  

  private void ensureDefaultLogger(java.util.logging.Logger);
    descriptor: (Ljava/util/logging/Logger;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.util.logging.Logger logger
         0: .line 728
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.requiresDefaultLoggers:()Z
            ifeq 2
            aload 1 /* logger */
            ifnull 2
         1: .line 729
            aload 1 /* logger */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getGlobalLogger:()Ljava/util/logging/Logger;
            if_acmpeq 4
            aload 1 /* logger */
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.this$0:Ljava/util/logging/LogManager;
            getfield java.util.logging.LogManager.rootLogger:Ljava/util/logging/Logger;
            if_acmpeq 4
         2: .line 736
      StackMap locals:
      StackMap stack:
            getstatic java.util.logging.LogManager$LoggerContext.$assertionsDisabled:Z
            ifne 3
            aload 1 /* logger */
            ifnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 738
      StackMap locals:
      StackMap stack:
            return
         4: .line 742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* logger */
            invokevirtual java.util.logging.Logger.getName:()Ljava/lang/String;
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 749
            aload 0 /* this */
            aload 1 /* logger */
            iconst_0
            invokevirtual java.util.logging.LogManager$LoggerContext.addLocalLogger:(Ljava/util/logging/Logger;Z)Z
            pop
         6: .line 751
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Logger logger
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/util/logging/LogManager$LoggerContext;
            0    7     1  logger  Ljava/util/logging/Logger;
    MethodParameters:
        Name  Flags
      logger  

  boolean addLocalLogger(java.util.logging.Logger);
    descriptor: (Ljava/util/logging/Logger;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.util.logging.Logger logger
         0: .line 755
            aload 0 /* this */
            aload 1 /* logger */
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.requiresDefaultLoggers:()Z
            invokevirtual java.util.logging.LogManager$LoggerContext.addLocalLogger:(Ljava/util/logging/Logger;Z)Z
            ireturn
        end local 1 // java.util.logging.Logger logger
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljava/util/logging/LogManager$LoggerContext;
            0    1     1  logger  Ljava/util/logging/Logger;
    MethodParameters:
        Name  Flags
      logger  

  synchronized boolean addLocalLogger(java.util.logging.Logger, boolean);
    descriptor: (Ljava/util/logging/Logger;Z)Z
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=4, locals=11, args_size=3
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.util.logging.Logger logger
        start local 2 // boolean addDefaultLoggersIfNeeded
         0: .line 770
            iload 2 /* addDefaultLoggersIfNeeded */
            ifeq 2
         1: .line 771
            aload 0 /* this */
            aload 1 /* logger */
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureAllDefaultLoggers:(Ljava/util/logging/Logger;)V
         2: .line 774
      StackMap locals:
      StackMap stack:
            aload 1 /* logger */
            invokevirtual java.util.logging.Logger.getName:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         3: .line 775
            aload 3 /* name */
            ifnonnull 5
         4: .line 776
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         5: .line 778
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* name */
            invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.logging.LogManager$LoggerWeakRef
            astore 4 /* ref */
        start local 4 // java.util.logging.LogManager$LoggerWeakRef ref
         6: .line 779
            aload 4 /* ref */
            ifnull 11
         7: .line 780
            aload 4 /* ref */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.get:()Ljava/lang/Object;
            ifnonnull 10
         8: .line 784
            aload 4 /* ref */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.dispose:()V
         9: .line 785
            goto 11
        10: .line 787
      StackMap locals: java.util.logging.LogManager$LoggerWeakRef
      StackMap stack:
            iconst_0
            ireturn
        11: .line 793
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            astore 5 /* owner */
        start local 5 // java.util.logging.LogManager owner
        12: .line 794
            aload 1 /* logger */
            aload 5 /* owner */
            invokevirtual java.util.logging.Logger.setLogManager:(Ljava/util/logging/LogManager;)V
        13: .line 795
            new java.util.logging.LogManager$LoggerWeakRef
            dup
            aload 5 /* owner */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            aload 1 /* logger */
            invokespecial java.util.logging.LogManager$LoggerWeakRef.<init>:(Ljava/util/logging/LogManager;Ljava/util/logging/Logger;)V
            astore 4 /* ref */
        14: .line 799
            aload 5 /* owner */
            new java.lang.StringBuilder
            dup
            aload 3 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".level"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aconst_null
            invokevirtual java.util.logging.LogManager.getLevelProperty:(Ljava/lang/String;Ljava/util/logging/Level;)Ljava/util/logging/Level;
            astore 6 /* level */
        start local 6 // java.util.logging.Level level
        15: .line 800
            aload 6 /* level */
            ifnull 17
            aload 1 /* logger */
            invokevirtual java.util.logging.Logger.isLevelInitialized:()Z
            ifne 17
        16: .line 801
            aload 1 /* logger */
            aload 6 /* level */
            invokestatic java.util.logging.LogManager.doSetLevel:(Ljava/util/logging/Logger;Ljava/util/logging/Level;)V
        17: .line 807
      StackMap locals: java.util.logging.LogManager java.util.logging.Level
      StackMap stack:
            aload 0 /* this */
            aload 1 /* logger */
            aload 3 /* name */
            getstatic java.util.logging.LogManager$VisitedLoggers.NEVER:Ljava/util/logging/LogManager$VisitedLoggers;
            invokevirtual java.util.logging.LogManager$LoggerContext.processParentHandlers:(Ljava/util/logging/Logger;Ljava/lang/String;Ljava/util/function/Predicate;)V
        18: .line 810
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.util.logging.LogManager$LoggerContext.getNode:(Ljava/lang/String;)Ljava/util/logging/LogManager$LogNode;
            astore 7 /* node */
        start local 7 // java.util.logging.LogManager$LogNode node
        19: .line 811
            aload 7 /* node */
            aload 4 /* ref */
            putfield java.util.logging.LogManager$LogNode.loggerRef:Ljava/util/logging/LogManager$LoggerWeakRef;
        20: .line 812
            aconst_null
            astore 8 /* parent */
        start local 8 // java.util.logging.Logger parent
        21: .line 813
            aload 7 /* node */
            getfield java.util.logging.LogManager$LogNode.parent:Ljava/util/logging/LogManager$LogNode;
            astore 9 /* nodep */
        start local 9 // java.util.logging.LogManager$LogNode nodep
        22: .line 814
            goto 29
        23: .line 815
      StackMap locals: java.util.logging.LogManager$LogNode java.util.logging.Logger java.util.logging.LogManager$LogNode
      StackMap stack:
            aload 9 /* nodep */
            getfield java.util.logging.LogManager$LogNode.loggerRef:Ljava/util/logging/LogManager$LoggerWeakRef;
            astore 10 /* nodeRef */
        start local 10 // java.util.logging.LogManager$LoggerWeakRef nodeRef
        24: .line 816
            aload 10 /* nodeRef */
            ifnull 28
        25: .line 817
            aload 10 /* nodeRef */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.get:()Ljava/lang/Object;
            checkcast java.util.logging.Logger
            astore 8 /* parent */
        26: .line 818
            aload 8 /* parent */
            ifnull 28
        27: .line 819
            goto 30
        28: .line 822
      StackMap locals: java.util.logging.LogManager$LoggerWeakRef
      StackMap stack:
            aload 9 /* nodep */
            getfield java.util.logging.LogManager$LogNode.parent:Ljava/util/logging/LogManager$LogNode;
            astore 9 /* nodep */
        end local 10 // java.util.logging.LogManager$LoggerWeakRef nodeRef
        29: .line 814
      StackMap locals:
      StackMap stack:
            aload 9 /* nodep */
            ifnonnull 23
        30: .line 825
      StackMap locals:
      StackMap stack:
            aload 8 /* parent */
            ifnull 32
        31: .line 826
            aload 1 /* logger */
            aload 8 /* parent */
            invokestatic java.util.logging.LogManager.doSetParent:(Ljava/util/logging/Logger;Ljava/util/logging/Logger;)V
        32: .line 829
      StackMap locals:
      StackMap stack:
            aload 7 /* node */
            aload 1 /* logger */
            invokevirtual java.util.logging.LogManager$LogNode.walkAndSetParent:(Ljava/util/logging/Logger;)V
        33: .line 831
            aload 4 /* ref */
            aload 7 /* node */
            invokevirtual java.util.logging.LogManager$LoggerWeakRef.setNode:(Ljava/util/logging/LogManager$LogNode;)V
        34: .line 838
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 3 /* name */
            aload 4 /* ref */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 839
            iconst_1
            ireturn
        end local 9 // java.util.logging.LogManager$LogNode nodep
        end local 8 // java.util.logging.Logger parent
        end local 7 // java.util.logging.LogManager$LogNode node
        end local 6 // java.util.logging.Level level
        end local 5 // java.util.logging.LogManager owner
        end local 4 // java.util.logging.LogManager$LoggerWeakRef ref
        end local 3 // java.lang.String name
        end local 2 // boolean addDefaultLoggersIfNeeded
        end local 1 // java.util.logging.Logger logger
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   36     0                       this  Ljava/util/logging/LogManager$LoggerContext;
            0   36     1                     logger  Ljava/util/logging/Logger;
            0   36     2  addDefaultLoggersIfNeeded  Z
            3   36     3                       name  Ljava/lang/String;
            6   36     4                        ref  Ljava/util/logging/LogManager$LoggerWeakRef;
           12   36     5                      owner  Ljava/util/logging/LogManager;
           15   36     6                      level  Ljava/util/logging/Level;
           19   36     7                       node  Ljava/util/logging/LogManager$LogNode;
           21   36     8                     parent  Ljava/util/logging/Logger;
           22   36     9                      nodep  Ljava/util/logging/LogManager$LogNode;
           24   29    10                    nodeRef  Ljava/util/logging/LogManager$LoggerWeakRef;
    MethodParameters:
                           Name  Flags
      logger                     
      addDefaultLoggersIfNeeded  

  void removeLoggerRef(java.lang.String, java.util.logging.LogManager$LoggerWeakRef);
    descriptor: (Ljava/lang/String;Ljava/util/logging/LogManager$LoggerWeakRef;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.lang.String name
        start local 2 // java.util.logging.LogManager$LoggerWeakRef ref
         0: .line 843
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* name */
            aload 2 /* ref */
            invokevirtual java.util.concurrent.ConcurrentHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         1: .line 844
            return
        end local 2 // java.util.logging.LogManager$LoggerWeakRef ref
        end local 1 // java.lang.String name
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/logging/LogManager$LoggerContext;
            0    2     1  name  Ljava/lang/String;
            0    2     2   ref  Ljava/util/logging/LogManager$LoggerWeakRef;
    MethodParameters:
      Name  Flags
      name  
      ref   

  synchronized java.util.Enumeration<java.lang.String> getLoggerNames();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.logging.LogManager$LoggerContext this
         0: .line 849
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.ensureInitialized:()V
         1: .line 850
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.namedLoggers:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.keySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
            invokestatic java.util.Collections.enumeration:(Ljava/util/Collection;)Ljava/util/Enumeration;
            areturn
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/logging/LogManager$LoggerContext;
    Signature: ()Ljava/util/Enumeration<Ljava/lang/String;>;

  private void processParentHandlers(java.util.logging.Logger, java.lang.String, java.util.function.Predicate<java.util.logging.Logger>);
    descriptor: (Ljava/util/logging/Logger;Ljava/lang/String;Ljava/util/function/Predicate;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.util.logging.Logger logger
        start local 2 // java.lang.String name
        start local 3 // java.util.function.Predicate visited
         0: .line 857
            aload 0 /* this */
            invokevirtual java.util.logging.LogManager$LoggerContext.getOwner:()Ljava/util/logging/LogManager;
            astore 4 /* owner */
        start local 4 // java.util.logging.LogManager owner
         1: .line 858
            new java.util.logging.LogManager$LoggerContext$1
            dup
            aload 0 /* this */
            aload 1 /* logger */
            aload 4 /* owner */
            aload 2 /* name */
            invokespecial java.util.logging.LogManager$LoggerContext$1.<init>:(Ljava/util/logging/LogManager$LoggerContext;Ljava/util/logging/Logger;Ljava/util/logging/LogManager;Ljava/lang/String;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         2: .line 871
            iconst_1
            istore 5 /* ix */
        start local 5 // int ix
         3: .line 873
      StackMap locals: java.util.logging.LogManager int
      StackMap stack:
            aload 2 /* name */
            bipush 46
            iload 5 /* ix */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 6 /* ix2 */
        start local 6 // int ix2
         4: .line 874
            iload 6 /* ix2 */
            ifge 6
         5: .line 875
            goto 13
         6: .line 877
      StackMap locals: int
      StackMap stack:
            aload 2 /* name */
            iconst_0
            iload 6 /* ix2 */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* pname */
        start local 7 // java.lang.String pname
         7: .line 878
            aload 4 /* owner */
            new java.lang.StringBuilder
            dup
            aload 7 /* pname */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".level"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.LogManager.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 9
         8: .line 879
            aload 4 /* owner */
            new java.lang.StringBuilder
            dup
            aload 7 /* pname */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".handlers"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.logging.LogManager.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            ifnull 11
         9: .line 882
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* visited */
            aload 0 /* this */
            aload 7 /* pname */
            aconst_null
            aconst_null
            invokevirtual java.util.logging.LogManager$LoggerContext.demandLogger:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Module;)Ljava/util/logging/Logger;
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 883
            goto 13
        11: .line 886
      StackMap locals:
      StackMap stack:
            iload 6 /* ix2 */
            iconst_1
            iadd
            istore 5 /* ix */
        end local 7 // java.lang.String pname
        end local 6 // int ix2
        12: .line 872
            goto 3
        13: .line 888
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int ix
        end local 4 // java.util.logging.LogManager owner
        end local 3 // java.util.function.Predicate visited
        end local 2 // java.lang.String name
        end local 1 // java.util.logging.Logger logger
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Ljava/util/logging/LogManager$LoggerContext;
            0   14     1   logger  Ljava/util/logging/Logger;
            0   14     2     name  Ljava/lang/String;
            0   14     3  visited  Ljava/util/function/Predicate<Ljava/util/logging/Logger;>;
            1   14     4    owner  Ljava/util/logging/LogManager;
            3   14     5       ix  I
            4   12     6      ix2  I
            7   12     7    pname  Ljava/lang/String;
    Signature: (Ljava/util/logging/Logger;Ljava/lang/String;Ljava/util/function/Predicate<Ljava/util/logging/Logger;>;)V
    MethodParameters:
         Name  Flags
      logger   final
      name     final
      visited  

  java.util.logging.LogManager$LogNode getNode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/logging/LogManager$LogNode;
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.util.logging.LogManager$LoggerContext this
        start local 1 // java.lang.String name
         0: .line 893
            aload 1 /* name */
            ifnull 1
            aload 1 /* name */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 894
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.root:Ljava/util/logging/LogManager$LogNode;
            areturn
         2: .line 896
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.logging.LogManager$LoggerContext.root:Ljava/util/logging/LogManager$LogNode;
            astore 2 /* node */
        start local 2 // java.util.logging.LogManager$LogNode node
         3: .line 897
            goto 18
         4: .line 898
      StackMap locals: java.util.logging.LogManager$LogNode
      StackMap stack:
            aload 1 /* name */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 3 /* ix */
        start local 3 // int ix
         5: .line 900
            iload 3 /* ix */
            ifle 9
         6: .line 901
            aload 1 /* name */
            iconst_0
            iload 3 /* ix */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* head */
        start local 4 // java.lang.String head
         7: .line 902
            aload 1 /* name */
            iload 3 /* ix */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 1 /* name */
         8: .line 903
            goto 11
        end local 4 // java.lang.String head
         9: .line 904
      StackMap locals: int
      StackMap stack:
            aload 1 /* name */
            astore 4 /* head */
        start local 4 // java.lang.String head
        10: .line 905
            ldc ""
            astore 1 /* name */
        11: .line 907
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* node */
            getfield java.util.logging.LogManager$LogNode.children:Ljava/util/HashMap;
            ifnonnull 13
        12: .line 908
            aload 2 /* node */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield java.util.logging.LogManager$LogNode.children:Ljava/util/HashMap;
        13: .line 910
      StackMap locals:
      StackMap stack:
            aload 2 /* node */
            getfield java.util.logging.LogManager$LogNode.children:Ljava/util/HashMap;
            aload 4 /* head */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.logging.LogManager$LogNode
            astore 5 /* child */
        start local 5 // java.util.logging.LogManager$LogNode child
        14: .line 911
            aload 5 /* child */
            ifnonnull 17
        15: .line 912
            new java.util.logging.LogManager$LogNode
            dup
            aload 2 /* node */
            aload 0 /* this */
            invokespecial java.util.logging.LogManager$LogNode.<init>:(Ljava/util/logging/LogManager$LogNode;Ljava/util/logging/LogManager$LoggerContext;)V
            astore 5 /* child */
        16: .line 913
            aload 2 /* node */
            getfield java.util.logging.LogManager$LogNode.children:Ljava/util/HashMap;
            aload 4 /* head */
            aload 5 /* child */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        17: .line 915
      StackMap locals: java.util.logging.LogManager$LogNode
      StackMap stack:
            aload 5 /* child */
            astore 2 /* node */
        end local 5 // java.util.logging.LogManager$LogNode child
        end local 4 // java.lang.String head
        end local 3 // int ix
        18: .line 897
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ifgt 4
        19: .line 917
            aload 2 /* node */
            areturn
        end local 2 // java.util.logging.LogManager$LogNode node
        end local 1 // java.lang.String name
        end local 0 // java.util.logging.LogManager$LoggerContext this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Ljava/util/logging/LogManager$LoggerContext;
            0   20     1   name  Ljava/lang/String;
            3   20     2   node  Ljava/util/logging/LogManager$LogNode;
            5   18     3     ix  I
            7    9     4   head  Ljava/lang/String;
           10   18     4   head  Ljava/lang/String;
           14   18     5  child  Ljava/util/logging/LogManager$LogNode;
    MethodParameters:
      Name  Flags
      name  
}
SourceFile: "LogManager.java"
NestHost: java.util.logging.LogManager
InnerClasses:
  public KeySetView = java.util.concurrent.ConcurrentHashMap$KeySetView of java.util.concurrent.ConcurrentHashMap
  private LogNode = java.util.logging.LogManager$LogNode of java.util.logging.LogManager
  LoggerContext = java.util.logging.LogManager$LoggerContext of java.util.logging.LogManager
  java.util.logging.LogManager$LoggerContext$1
  final LoggerWeakRef = java.util.logging.LogManager$LoggerWeakRef of java.util.logging.LogManager
  final VisitedLoggers = java.util.logging.LogManager$VisitedLoggers of java.util.logging.LogManager