class java.util.prefs.AbstractPreferences$EventDispatchThread extends java.lang.Thread
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.util.prefs.AbstractPreferences$EventDispatchThread
  super_class: java.lang.Thread
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences$EventDispatchThread this
         0: .line 1474
            aload 0 /* this */
            invokespecial java.lang.Thread.<init>:()V
            return
        end local 0 // java.util.prefs.AbstractPreferences$EventDispatchThread this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/prefs/AbstractPreferences$EventDispatchThread;

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.util.prefs.AbstractPreferences$EventDispatchThread this
         0: .line 1478
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* event */
        start local 1 // java.util.EventObject event
         1: .line 1479
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            dup
            astore 2
            monitorenter
         2: .line 1481
            goto 4
         3: .line 1482
      StackMap locals: java.util.EventObject java.util.List
      StackMap stack:
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            invokevirtual java.lang.Object.wait:()V
         4: .line 1481
      StackMap locals:
      StackMap stack:
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 3
         5: .line 1483
            getstatic java.util.prefs.AbstractPreferences.eventQueue:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.util.EventObject
            astore 1 /* event */
         6: .line 1484
            goto 10
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         7: pop
         8: .line 1486
            aload 2
            monitorexit
         9: return
        10: .line 1479
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 2
            monitorexit
        13: athrow
        14: .line 1491
      StackMap locals:
      StackMap stack:
            aload 1 /* event */
            invokevirtual java.util.EventObject.getSource:()Ljava/lang/Object;
            checkcast java.util.prefs.AbstractPreferences
            astore 2 /* src */
        start local 2 // java.util.prefs.AbstractPreferences src
        15: .line 1492
            aload 1 /* event */
            instanceof java.util.prefs.PreferenceChangeEvent
            ifeq 24
        16: .line 1493
            aload 1 /* event */
            checkcast java.util.prefs.PreferenceChangeEvent
            astore 3 /* pce */
        start local 3 // java.util.prefs.PreferenceChangeEvent pce
        17: .line 1494
            aload 2 /* src */
            invokevirtual java.util.prefs.AbstractPreferences.prefListeners:()[Ljava/util/prefs/PreferenceChangeListener;
            astore 4 /* listeners */
        start local 4 // java.util.prefs.PreferenceChangeListener[] listeners
        18: .line 1495
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        19: goto 22
        20: .line 1496
      StackMap locals: java.util.prefs.AbstractPreferences$EventDispatchThread java.util.EventObject java.util.prefs.AbstractPreferences java.util.prefs.PreferenceChangeEvent java.util.prefs.PreferenceChangeListener[] int
      StackMap stack:
            aload 4 /* listeners */
            iload 5 /* i */
            aaload
            aload 3 /* pce */
            invokeinterface java.util.prefs.PreferenceChangeListener.preferenceChange:(Ljava/util/prefs/PreferenceChangeEvent;)V
        21: .line 1495
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 5 /* i */
            aload 4 /* listeners */
            arraylength
            if_icmplt 20
        end local 5 // int i
        end local 4 // java.util.prefs.PreferenceChangeListener[] listeners
        end local 3 // java.util.prefs.PreferenceChangeEvent pce
        23: .line 1497
            goto 0
        24: .line 1498
      StackMap locals:
      StackMap stack:
            aload 1 /* event */
            checkcast java.util.prefs.NodeChangeEvent
            astore 3 /* nce */
        start local 3 // java.util.prefs.NodeChangeEvent nce
        25: .line 1499
            aload 2 /* src */
            invokevirtual java.util.prefs.AbstractPreferences.nodeListeners:()[Ljava/util/prefs/NodeChangeListener;
            astore 4 /* listeners */
        start local 4 // java.util.prefs.NodeChangeListener[] listeners
        26: .line 1500
            aload 3 /* nce */
            instanceof java.util.prefs.AbstractPreferences$NodeAddedEvent
            ifeq 33
        27: .line 1501
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        28: goto 31
        29: .line 1502
      StackMap locals: java.util.prefs.NodeChangeEvent java.util.prefs.NodeChangeListener[] int
      StackMap stack:
            aload 4 /* listeners */
            iload 5 /* i */
            aaload
            aload 3 /* nce */
            invokeinterface java.util.prefs.NodeChangeListener.childAdded:(Ljava/util/prefs/NodeChangeEvent;)V
        30: .line 1501
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        31: iload 5 /* i */
            aload 4 /* listeners */
            arraylength
            if_icmplt 29
        end local 5 // int i
        32: .line 1503
            goto 0
        33: .line 1505
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        34: goto 37
        35: .line 1506
      StackMap locals: int
      StackMap stack:
            aload 4 /* listeners */
            iload 5 /* i */
            aaload
            aload 3 /* nce */
            invokeinterface java.util.prefs.NodeChangeListener.childRemoved:(Ljava/util/prefs/NodeChangeEvent;)V
        36: .line 1505
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 5 /* i */
            aload 4 /* listeners */
            arraylength
            if_icmplt 35
        end local 5 // int i
        end local 4 // java.util.prefs.NodeChangeListener[] listeners
        end local 3 // java.util.prefs.NodeChangeEvent nce
        end local 2 // java.util.prefs.AbstractPreferences src
        end local 1 // java.util.EventObject event
        38: .line 1476
            goto 0
        end local 0 // java.util.prefs.AbstractPreferences$EventDispatchThread this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   39     0       this  Ljava/util/prefs/AbstractPreferences$EventDispatchThread;
            1   38     1      event  Ljava/util/EventObject;
           15   38     2        src  Ljava/util/prefs/AbstractPreferences;
           17   23     3        pce  Ljava/util/prefs/PreferenceChangeEvent;
           18   23     4  listeners  [Ljava/util/prefs/PreferenceChangeListener;
           19   23     5          i  I
           25   38     3        nce  Ljava/util/prefs/NodeChangeEvent;
           26   38     4  listeners  [Ljava/util/prefs/NodeChangeListener;
           28   32     5          i  I
           34   38     5          i  I
      Exception table:
        from    to  target  type
           2     6       7  Class java.lang.InterruptedException
           2     9      12  any
          10    11      12  any
          12    13      12  any
}
SourceFile: "AbstractPreferences.java"
NestHost: java.util.prefs.AbstractPreferences
InnerClasses:
  private EventDispatchThread = java.util.prefs.AbstractPreferences$EventDispatchThread of java.util.prefs.AbstractPreferences
  private NodeAddedEvent = java.util.prefs.AbstractPreferences$NodeAddedEvent of java.util.prefs.AbstractPreferences