final class java.util.logging.Logger$ConfigurationData
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: java.util.logging.Logger$ConfigurationData
  super_class: java.lang.Object
{
  private volatile java.util.logging.Logger$ConfigurationData delegate;
    descriptor: Ljava/util/logging/Logger$ConfigurationData;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  volatile boolean useParentHandlers;
    descriptor: Z
    flags: (0x0040) ACC_VOLATILE

  volatile java.util.logging.Filter filter;
    descriptor: Ljava/util/logging/Filter;
    flags: (0x0040) ACC_VOLATILE

  volatile java.util.logging.Level levelObject;
    descriptor: Ljava/util/logging/Level;
    flags: (0x0040) ACC_VOLATILE

  volatile int levelValue;
    descriptor: I
    flags: (0x0040) ACC_VOLATILE

  final java.util.concurrent.CopyOnWriteArrayList<java.util.logging.Handler> handlers;
    descriptor: Ljava/util/concurrent/CopyOnWriteArrayList;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/CopyOnWriteArrayList<Ljava/util/logging/Handler;>;

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.logging.Logger$ConfigurationData this
         0: .line 288
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 285
            aload 0 /* this */
         2: .line 286
            new java.util.concurrent.CopyOnWriteArrayList
            dup
            invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
            putfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
         3: .line 289
            aload 0 /* this */
            aload 0 /* this */
            putfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
         4: .line 290
            aload 0 /* this */
            iconst_1
            putfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
         5: .line 291
            aload 0 /* this */
            getstatic java.util.logging.Level.INFO:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Level.intValue:()I
            putfield java.util.logging.Logger$ConfigurationData.levelValue:I
         6: .line 292
            return
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/util/logging/Logger$ConfigurationData;

  void setUseParentHandlers(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // boolean flag
         0: .line 295
            aload 0 /* this */
            iload 1 /* flag */
            putfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
         1: .line 296
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 298
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 299
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 300
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
            putfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
         5: .line 299
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData int java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 303
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean flag
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1    flag  Z
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      flag  

  void setFilter(java.util.logging.Filter);
    descriptor: (Ljava/util/logging/Filter;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // java.util.logging.Filter f
         0: .line 306
            aload 0 /* this */
            aload 1 /* f */
            putfield java.util.logging.Logger$ConfigurationData.filter:Ljava/util/logging/Filter;
         1: .line 307
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 309
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 310
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 311
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.filter:Ljava/util/logging/Filter;
            putfield java.util.logging.Logger$ConfigurationData.filter:Ljava/util/logging/Filter;
         5: .line 310
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Filter java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 314
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Filter f
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1       f  Ljava/util/logging/Filter;
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      f     

  void setLevelObject(java.util.logging.Level);
    descriptor: (Ljava/util/logging/Level;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // java.util.logging.Level l
         0: .line 317
            aload 0 /* this */
            aload 1 /* l */
            putfield java.util.logging.Logger$ConfigurationData.levelObject:Ljava/util/logging/Level;
         1: .line 318
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 320
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 321
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 322
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.levelObject:Ljava/util/logging/Level;
            putfield java.util.logging.Logger$ConfigurationData.levelObject:Ljava/util/logging/Level;
         5: .line 321
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Level java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 325
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Level l
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1       l  Ljava/util/logging/Level;
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      l     

  void setLevelValue(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // int v
         0: .line 328
            aload 0 /* this */
            iload 1 /* v */
            putfield java.util.logging.Logger$ConfigurationData.levelValue:I
         1: .line 329
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 331
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 332
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 333
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.levelValue:I
            putfield java.util.logging.Logger$ConfigurationData.levelValue:I
         5: .line 332
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData int java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 336
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int v
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1       v  I
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      v     

  void addHandler(java.util.logging.Handler);
    descriptor: (Ljava/util/logging/Handler;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // java.util.logging.Handler h
         0: .line 339
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 1 /* h */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.add:(Ljava/lang/Object;)Z
            ifeq 9
         1: .line 340
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 342
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 343
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 344
            aload 2 /* system */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 1 /* h */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.addIfAbsent:(Ljava/lang/Object;)Z
            pop
         5: .line 343
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Handler java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 348
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Handler h
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1       h  Ljava/util/logging/Handler;
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      h     

  void removeHandler(java.util.logging.Handler);
    descriptor: (Ljava/util/logging/Handler;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // java.util.logging.Handler h
         0: .line 351
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 1 /* h */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.remove:(Ljava/lang/Object;)Z
            ifeq 9
         1: .line 352
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 0 /* this */
            if_acmpeq 9
         2: .line 354
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 355
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         4: .line 356
            aload 2 /* system */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 1 /* h */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 355
            aload 3
            monitorexit
         6: goto 9
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Handler java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
         7: aload 3
            monitorexit
         8: athrow
        end local 2 // java.util.logging.Logger$ConfigurationData system
         9: .line 360
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.logging.Handler h
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Ljava/util/logging/Logger$ConfigurationData;
            0   10     1       h  Ljava/util/logging/Handler;
            3    9     2  system  Ljava/util/logging/Logger$ConfigurationData;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      h     

  java.util.logging.Logger$ConfigurationData merge(java.util.logging.Logger);
    descriptor: (Ljava/util/logging/Logger;)Ljava/util/logging/Logger$ConfigurationData;
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // java.util.logging.Logger$ConfigurationData this
        start local 1 // java.util.logging.Logger systemPeer
         0: .line 363
            aload 1 /* systemPeer */
            getfield java.util.logging.Logger.isSystemLogger:Z
            ifne 2
         1: .line 365
            new java.lang.InternalError
            dup
            ldc "not a system logger"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 368
      StackMap locals:
      StackMap stack:
            aload 1 /* systemPeer */
            getfield java.util.logging.Logger.config:Ljava/util/logging/Logger$ConfigurationData;
            astore 2 /* system */
        start local 2 // java.util.logging.Logger$ConfigurationData system
         3: .line 370
            aload 2 /* system */
            aload 0 /* this */
            if_acmpne 5
         4: .line 372
            aload 2 /* system */
            areturn
         5: .line 375
      StackMap locals: java.util.logging.Logger$ConfigurationData
      StackMap stack:
            aload 2 /* system */
            dup
            astore 3
            monitorenter
         6: .line 379
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
            aload 2 /* system */
            if_acmpne 9
         7: .line 381
            aload 2 /* system */
            aload 3
            monitorexit
         8: areturn
         9: .line 389
      StackMap locals: java.util.logging.Logger$ConfigurationData
      StackMap stack:
            aload 0 /* this */
            aload 2 /* system */
            putfield java.util.logging.Logger$ConfigurationData.delegate:Ljava/util/logging/Logger$ConfigurationData;
        10: .line 392
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
            putfield java.util.logging.Logger$ConfigurationData.useParentHandlers:Z
        11: .line 393
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.filter:Ljava/util/logging/Filter;
            putfield java.util.logging.Logger$ConfigurationData.filter:Ljava/util/logging/Filter;
        12: .line 394
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.levelObject:Ljava/util/logging/Level;
            putfield java.util.logging.Logger$ConfigurationData.levelObject:Ljava/util/logging/Level;
        13: .line 395
            aload 2 /* system */
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.levelValue:I
            putfield java.util.logging.Logger$ConfigurationData.levelValue:I
        14: .line 414
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 18
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Logger java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData top java.util.Iterator
      StackMap stack:
        15: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.logging.Handler
            astore 4 /* h */
        start local 4 // java.util.logging.Handler h
        16: .line 415
            aload 2 /* system */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 4 /* h */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.contains:(Ljava/lang/Object;)Z
            ifne 18
        17: .line 416
            aload 1 /* systemPeer */
            aload 4 /* h */
            invokevirtual java.util.logging.Logger.addHandler:(Ljava/util/logging/Handler;)V
        end local 4 // java.util.logging.Handler h
        18: .line 414
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        19: .line 419
            aload 2 /* system */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.retainAll:(Ljava/util/Collection;)Z
            pop
        20: .line 420
            aload 2 /* system */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 0 /* this */
            getfield java.util.logging.Logger$ConfigurationData.handlers:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.addAllAbsent:(Ljava/util/Collection;)I
            pop
        21: .line 375
            aload 3
            monitorexit
        22: goto 25
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Logger java.util.logging.Logger$ConfigurationData java.util.logging.Logger$ConfigurationData
      StackMap stack: java.lang.Throwable
        23: aload 3
            monitorexit
        24: athrow
        25: .line 424
      StackMap locals:
      StackMap stack:
            getstatic java.util.logging.Logger.treeLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
        26: .line 425
            aload 1 /* systemPeer */
            invokevirtual java.util.logging.Logger.updateEffectiveLevel:()V
        27: .line 424
            aload 3
            monitorexit
        28: goto 31
      StackMap locals: java.util.logging.Logger$ConfigurationData java.util.logging.Logger java.util.logging.Logger$ConfigurationData java.lang.Object
      StackMap stack: java.lang.Throwable
        29: aload 3
            monitorexit
        30: athrow
        31: .line 428
      StackMap locals:
      StackMap stack:
            aload 2 /* system */
            areturn
        end local 2 // java.util.logging.Logger$ConfigurationData system
        end local 1 // java.util.logging.Logger systemPeer
        end local 0 // java.util.logging.Logger$ConfigurationData this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   32     0        this  Ljava/util/logging/Logger$ConfigurationData;
            0   32     1  systemPeer  Ljava/util/logging/Logger;
            3   32     2      system  Ljava/util/logging/Logger$ConfigurationData;
           16   18     4           h  Ljava/util/logging/Handler;
      Exception table:
        from    to  target  type
           6     8      23  any
           9    22      23  any
          23    24      23  any
          26    28      29  any
          29    30      29  any
    MethodParameters:
            Name  Flags
      systemPeer  
}
SourceFile: "Logger.java"
NestHost: java.util.logging.Logger
InnerClasses:
  private final ConfigurationData = java.util.logging.Logger$ConfigurationData of java.util.logging.Logger