public class java.awt.EventQueue
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.awt.EventQueue
  super_class: java.lang.Object
{
  private static int threadInitNumber;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final int LOW_PRIORITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int NORM_PRIORITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int HIGH_PRIORITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int ULTIMATE_PRIORITY;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int NUM_PRIORITIES;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private java.awt.Queue[] queues;
    descriptor: [Ljava/awt/Queue;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.EventQueue nextQueue;
    descriptor: Ljava/awt/EventQueue;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.EventQueue previousQueue;
    descriptor: Ljava/awt/EventQueue;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.EventDispatchThread dispatchThread;
    descriptor: Ljava/awt/EventDispatchThread;
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.ThreadGroup threadGroup;
    descriptor: Ljava/lang/ThreadGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.ClassLoader classLoader;
    descriptor: Ljava/lang/ClassLoader;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private long mostRecentEventTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private java.lang.ref.WeakReference currentEvent;
    descriptor: Ljava/lang/ref/WeakReference;
    flags: (0x0002) ACC_PRIVATE

  private int waitForID;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile java.util.logging.Logger eventLog;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static final int PAINT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int UPDATE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int MOVE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int DRAG;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int PEER;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  private static final int CACHE_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final sun.misc.JavaSecurityAccess javaSecurityAccess;
    descriptor: Lsun/misc/JavaSecurityAccess;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 171
            new java.awt.EventQueue$1
            dup
            invokespecial java.awt.EventQueue$1.<init>:()V
         1: .line 170
            invokestatic sun.awt.AWTAccessor.setEventQueueAccessor:(Lsun/awt/AWTAccessor$EventQueueAccessor;)V
         2: .line 601
            invokestatic sun.misc.SharedSecrets.getJavaSecurityAccess:()Lsun/misc/JavaSecurityAccess;
         3: .line 600
            putstatic java.awt.EventQueue.javaSecurityAccess:Lsun/misc/JavaSecurityAccess;
         4: .line 601
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static synchronized int nextThreadNum();
    descriptor: ()I
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=0, args_size=0
         0: .line 101
            getstatic java.awt.EventQueue.threadInitNumber:I
            dup
            iconst_1
            iadd
            putstatic java.awt.EventQueue.threadInitNumber:I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static final java.util.logging.Logger getEventLog();
    descriptor: ()Ljava/util/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=0, args_size=0
         0: .line 163
            getstatic java.awt.EventQueue.eventLog:Ljava/util/logging/Logger;
            ifnonnull 2
         1: .line 164
            ldc "java.awt.event.EventQueue"
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
            putstatic java.awt.EventQueue.eventLog:Ljava/util/logging/Logger;
         2: .line 166
      StackMap locals:
      StackMap stack:
            getstatic java.awt.EventQueue.eventLog:Ljava/util/logging/Logger;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 199
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 119
            aload 0 /* this */
            iconst_4
            anewarray java.awt.Queue
            putfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
         2: .line 136
            aload 0 /* this */
         3: .line 137
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getThreadGroup:()Ljava/lang/ThreadGroup;
            putfield java.awt.EventQueue.threadGroup:Ljava/lang/ThreadGroup;
         4: .line 138
            aload 0 /* this */
         5: .line 139
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            putfield java.awt.EventQueue.classLoader:Ljava/lang/ClassLoader;
         6: .line 144
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield java.awt.EventQueue.mostRecentEventTime:J
         7: .line 158
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "AWT-EventQueue-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            invokestatic java.awt.EventQueue.nextThreadNum:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield java.awt.EventQueue.name:Ljava/lang/String;
         8: .line 200
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         9: goto 12
        10: .line 201
      StackMap locals: java.awt.EventQueue int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 1 /* i */
            new java.awt.Queue
            dup
            invokespecial java.awt.Queue.<init>:()V
            aastore
        11: .line 200
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 1 /* i */
            iconst_4
            if_icmplt 10
        end local 1 // int i
        13: .line 211
            return
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Ljava/awt/EventQueue;
            9   13     1     i  I

  public void postEvent(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent theEvent
         0: .line 224
            invokestatic sun.awt.SunToolkit.flushPendingEvents:()V
         1: .line 225
            aload 0 /* this */
            aload 1 /* theEvent */
            invokevirtual java.awt.EventQueue.postEventPrivate:(Ljava/awt/AWTEvent;)V
         2: .line 226
            return
        end local 1 // java.awt.AWTEvent theEvent
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljava/awt/EventQueue;
            0    3     1  theEvent  Ljava/awt/AWTEvent;
    MethodParameters:
          Name  Flags
      theEvent  

  final void postEventPrivate(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent theEvent
         0: .line 238
            aload 1 /* theEvent */
            iconst_1
            putfield java.awt.AWTEvent.isPosted:Z
         1: .line 239
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         2: .line 240
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            ifnonnull 7
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            ifnonnull 7
         3: .line 241
            aload 1 /* theEvent */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            invokestatic sun.awt.AWTAutoShutdown.getInstance:()Lsun/awt/AWTAutoShutdown;
            if_acmpne 6
         4: .line 242
            aload 2
            monitorexit
         5: return
         6: .line 244
      StackMap locals: java.awt.EventQueue
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.initDispatchThread:()V
         7: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            ifnull 11
         8: .line 249
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            aload 1 /* theEvent */
            invokevirtual java.awt.EventQueue.postEventPrivate:(Ljava/awt/AWTEvent;)V
         9: .line 250
            aload 2
            monitorexit
        10: return
        11: .line 252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* theEvent */
            aload 1 /* theEvent */
            invokestatic java.awt.EventQueue.getPriority:(Ljava/awt/AWTEvent;)I
            invokevirtual java.awt.EventQueue.postEvent:(Ljava/awt/AWTEvent;I)V
        12: .line 239
            aload 2
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 2
            monitorexit
        15: athrow
        16: .line 254
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.AWTEvent theEvent
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0      this  Ljava/awt/EventQueue;
            0   17     1  theEvent  Ljava/awt/AWTEvent;
      Exception table:
        from    to  target  type
           2     5      14  any
           6    10      14  any
          11    13      14  any
          14    15      14  any
    MethodParameters:
          Name  Flags
      theEvent  

  private static int getPriority(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.AWTEvent theEvent
         0: .line 257
            aload 0 /* theEvent */
            instanceof sun.awt.PeerEvent
            ifeq 7
         1: .line 258
            aload 0 /* theEvent */
            checkcast sun.awt.PeerEvent
            invokevirtual sun.awt.PeerEvent.getFlags:()J
         2: .line 259
            ldc 2
         3: .line 258
            land
         4: .line 259
            lconst_0
         5: .line 258
            lcmp
            ifeq 7
         6: .line 261
            iconst_3
            ireturn
         7: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* theEvent */
            instanceof sun.awt.PeerEvent
            ifeq 14
         8: .line 265
            aload 0 /* theEvent */
            checkcast sun.awt.PeerEvent
            invokevirtual sun.awt.PeerEvent.getFlags:()J
         9: .line 266
            lconst_1
        10: .line 265
            land
        11: .line 266
            lconst_0
        12: .line 265
            lcmp
            ifeq 14
        13: .line 268
            iconst_2
            ireturn
        14: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* theEvent */
            instanceof sun.awt.PeerEvent
            ifeq 21
        15: .line 272
            aload 0 /* theEvent */
            checkcast sun.awt.PeerEvent
            invokevirtual sun.awt.PeerEvent.getFlags:()J
        16: .line 273
            ldc 4
        17: .line 272
            land
        18: .line 273
            lconst_0
        19: .line 272
            lcmp
            ifeq 21
        20: .line 275
            iconst_0
            ireturn
        21: .line 278
      StackMap locals:
      StackMap stack:
            aload 0 /* theEvent */
            invokevirtual java.awt.AWTEvent.getID:()I
            istore 1 /* id */
        start local 1 // int id
        22: .line 279
            iload 1 /* id */
            sipush 800
            if_icmpeq 23
            iload 1 /* id */
            sipush 801
            if_icmpne 24
        23: .line 280
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        24: .line 282
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // int id
        end local 0 // java.awt.AWTEvent theEvent
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   25     0  theEvent  Ljava/awt/AWTEvent;
           22   25     1        id  I
    MethodParameters:
          Name  Flags
      theEvent  

  private void postEvent(java.awt.AWTEvent, int);
    descriptor: (Ljava/awt/AWTEvent;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent theEvent
        start local 2 // int priority
         0: .line 294
            aload 0 /* this */
            aload 1 /* theEvent */
            iload 2 /* priority */
            invokevirtual java.awt.EventQueue.coalesceEvent:(Ljava/awt/AWTEvent;I)Z
            ifeq 2
         1: .line 295
            return
         2: .line 298
      StackMap locals:
      StackMap stack:
            new java.awt.EventQueueItem
            dup
            aload 1 /* theEvent */
            invokespecial java.awt.EventQueueItem.<init>:(Ljava/awt/AWTEvent;)V
            astore 3 /* newItem */
        start local 3 // java.awt.EventQueueItem newItem
         3: .line 300
            aload 0 /* this */
            aload 3 /* newItem */
            invokevirtual java.awt.EventQueue.cacheEQItem:(Ljava/awt/EventQueueItem;)V
         4: .line 302
            aload 1 /* theEvent */
            invokevirtual java.awt.AWTEvent.getID:()I
            aload 0 /* this */
            getfield java.awt.EventQueue.waitForID:I
            if_icmpne 5
            iconst_1
            goto 6
      StackMap locals: java.awt.EventQueueItem
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 4 /* notifyID */
        start local 4 // boolean notifyID
         7: .line 304
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            ifnonnull 18
         8: .line 305
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.noEvents:()Z
            istore 5 /* shouldNotify */
        start local 5 // boolean shouldNotify
         9: .line 306
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            aload 3 /* newItem */
            dup_x1
            putfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
            putfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
        10: .line 308
            iload 5 /* shouldNotify */
            ifeq 15
        11: .line 309
            aload 1 /* theEvent */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            invokestatic sun.awt.AWTAutoShutdown.getInstance:()Lsun/awt/AWTAutoShutdown;
            if_acmpeq 13
        12: .line 310
            invokestatic sun.awt.AWTAutoShutdown.getInstance:()Lsun/awt/AWTAutoShutdown;
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            invokevirtual sun.awt.AWTAutoShutdown.notifyThreadBusy:(Ljava/lang/Thread;)V
        13: .line 312
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.lang.Object.notifyAll:()V
        14: .line 313
            goto 22
      StackMap locals:
      StackMap stack:
        15: iload 4 /* notifyID */
            ifeq 22
        16: .line 314
            aload 0 /* this */
            invokevirtual java.lang.Object.notifyAll:()V
        end local 5 // boolean shouldNotify
        17: .line 316
            goto 22
        18: .line 319
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            getfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
            aload 3 /* newItem */
            putfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
        19: .line 320
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            aload 3 /* newItem */
            putfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
        20: .line 321
            iload 4 /* notifyID */
            ifeq 22
        21: .line 322
            aload 0 /* this */
            invokevirtual java.lang.Object.notifyAll:()V
        22: .line 325
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean notifyID
        end local 3 // java.awt.EventQueueItem newItem
        end local 2 // int priority
        end local 1 // java.awt.AWTEvent theEvent
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Ljava/awt/EventQueue;
            0   23     1      theEvent  Ljava/awt/AWTEvent;
            0   23     2      priority  I
            3   23     3       newItem  Ljava/awt/EventQueueItem;
            7   23     4      notifyID  Z
            9   17     5  shouldNotify  Z
    MethodParameters:
          Name  Flags
      theEvent  
      priority  

  private boolean coalescePaintEvent(java.awt.event.PaintEvent);
    descriptor: (Ljava/awt/event/PaintEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.event.PaintEvent e
         0: .line 328
            aload 1 /* e */
            invokevirtual java.awt.event.PaintEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            getfield java.awt.Component.peer:Ljava/awt/peer/ComponentPeer;
            astore 2 /* sourcePeer */
        start local 2 // java.awt.peer.ComponentPeer sourcePeer
         1: .line 329
            aload 2 /* sourcePeer */
            ifnull 3
         2: .line 330
            aload 2 /* sourcePeer */
            aload 1 /* e */
            invokeinterface java.awt.peer.ComponentPeer.coalescePaintEvent:(Ljava/awt/event/PaintEvent;)V
         3: .line 332
      StackMap locals: java.awt.peer.ComponentPeer
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.event.PaintEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            astore 3 /* cache */
        start local 3 // java.awt.EventQueueItem[] cache
         4: .line 333
            aload 3 /* cache */
            ifnonnull 6
         5: .line 334
            iconst_0
            ireturn
         6: .line 336
      StackMap locals: java.awt.EventQueueItem[]
      StackMap stack:
            aload 1 /* e */
            invokestatic java.awt.EventQueue.eventToCacheIndex:(Ljava/awt/AWTEvent;)I
            istore 4 /* index */
        start local 4 // int index
         7: .line 338
            iload 4 /* index */
            iconst_m1
            if_icmpeq 12
            aload 3 /* cache */
            iload 4 /* index */
            aaload
            ifnull 12
         8: .line 339
            aload 0 /* this */
            aload 1 /* e */
            aload 3 /* cache */
            iload 4 /* index */
            aaload
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            checkcast java.awt.event.PaintEvent
            invokevirtual java.awt.EventQueue.mergePaintEvents:(Ljava/awt/event/PaintEvent;Ljava/awt/event/PaintEvent;)Ljava/awt/event/PaintEvent;
            astore 5 /* merged */
        start local 5 // java.awt.event.PaintEvent merged
         9: .line 340
            aload 5 /* merged */
            ifnull 12
        10: .line 341
            aload 3 /* cache */
            iload 4 /* index */
            aaload
            aload 5 /* merged */
            putfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
        11: .line 342
            iconst_1
            ireturn
        end local 5 // java.awt.event.PaintEvent merged
        12: .line 345
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // int index
        end local 3 // java.awt.EventQueueItem[] cache
        end local 2 // java.awt.peer.ComponentPeer sourcePeer
        end local 1 // java.awt.event.PaintEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Ljava/awt/EventQueue;
            0   13     1           e  Ljava/awt/event/PaintEvent;
            1   13     2  sourcePeer  Ljava/awt/peer/ComponentPeer;
            4   13     3       cache  [Ljava/awt/EventQueueItem;
            7   13     4       index  I
            9   12     5      merged  Ljava/awt/event/PaintEvent;
    MethodParameters:
      Name  Flags
      e     

  private java.awt.event.PaintEvent mergePaintEvents(java.awt.event.PaintEvent, java.awt.event.PaintEvent);
    descriptor: (Ljava/awt/event/PaintEvent;Ljava/awt/event/PaintEvent;)Ljava/awt/event/PaintEvent;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.event.PaintEvent a
        start local 2 // java.awt.event.PaintEvent b
         0: .line 349
            aload 1 /* a */
            invokevirtual java.awt.event.PaintEvent.getUpdateRect:()Ljava/awt/Rectangle;
            astore 3 /* aRect */
        start local 3 // java.awt.Rectangle aRect
         1: .line 350
            aload 2 /* b */
            invokevirtual java.awt.event.PaintEvent.getUpdateRect:()Ljava/awt/Rectangle;
            astore 4 /* bRect */
        start local 4 // java.awt.Rectangle bRect
         2: .line 351
            aload 4 /* bRect */
            aload 3 /* aRect */
            invokevirtual java.awt.Rectangle.contains:(Ljava/awt/Rectangle;)Z
            ifeq 4
         3: .line 352
            aload 2 /* b */
            areturn
         4: .line 354
      StackMap locals: java.awt.Rectangle java.awt.Rectangle
      StackMap stack:
            aload 3 /* aRect */
            aload 4 /* bRect */
            invokevirtual java.awt.Rectangle.contains:(Ljava/awt/Rectangle;)Z
            ifeq 6
         5: .line 355
            aload 1 /* a */
            areturn
         6: .line 357
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 4 // java.awt.Rectangle bRect
        end local 3 // java.awt.Rectangle aRect
        end local 2 // java.awt.event.PaintEvent b
        end local 1 // java.awt.event.PaintEvent a
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/awt/EventQueue;
            0    7     1      a  Ljava/awt/event/PaintEvent;
            0    7     2      b  Ljava/awt/event/PaintEvent;
            1    7     3  aRect  Ljava/awt/Rectangle;
            2    7     4  bRect  Ljava/awt/Rectangle;
    MethodParameters:
      Name  Flags
      a     
      b     

  private boolean coalesceMouseEvent(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.event.MouseEvent e
         0: .line 361
            aload 1 /* e */
            invokevirtual java.awt.event.MouseEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            astore 2 /* cache */
        start local 2 // java.awt.EventQueueItem[] cache
         1: .line 362
            aload 2 /* cache */
            ifnonnull 3
         2: .line 363
            iconst_0
            ireturn
         3: .line 365
      StackMap locals: java.awt.EventQueueItem[]
      StackMap stack:
            aload 1 /* e */
            invokestatic java.awt.EventQueue.eventToCacheIndex:(Ljava/awt/AWTEvent;)I
            istore 3 /* index */
        start local 3 // int index
         4: .line 366
            iload 3 /* index */
            iconst_m1
            if_icmpeq 7
            aload 2 /* cache */
            iload 3 /* index */
            aaload
            ifnull 7
         5: .line 367
            aload 2 /* cache */
            iload 3 /* index */
            aaload
            aload 1 /* e */
            putfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
         6: .line 368
            iconst_1
            ireturn
         7: .line 370
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // int index
        end local 2 // java.awt.EventQueueItem[] cache
        end local 1 // java.awt.event.MouseEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljava/awt/EventQueue;
            0    8     1      e  Ljava/awt/event/MouseEvent;
            1    8     2  cache  [Ljava/awt/EventQueueItem;
            4    8     3  index  I
    MethodParameters:
      Name  Flags
      e     

  private boolean coalescePeerEvent(sun.awt.PeerEvent);
    descriptor: (Lsun/awt/PeerEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // sun.awt.PeerEvent e
         0: .line 374
            aload 1 /* e */
            invokevirtual sun.awt.PeerEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            astore 2 /* cache */
        start local 2 // java.awt.EventQueueItem[] cache
         1: .line 375
            aload 2 /* cache */
            ifnonnull 3
         2: .line 376
            iconst_0
            ireturn
         3: .line 378
      StackMap locals: java.awt.EventQueueItem[]
      StackMap stack:
            aload 1 /* e */
            invokestatic java.awt.EventQueue.eventToCacheIndex:(Ljava/awt/AWTEvent;)I
            istore 3 /* index */
        start local 3 // int index
         4: .line 379
            iload 3 /* index */
            iconst_m1
            if_icmpeq 10
            aload 2 /* cache */
            iload 3 /* index */
            aaload
            ifnull 10
         5: .line 380
            aload 1 /* e */
            aload 2 /* cache */
            iload 3 /* index */
            aaload
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            checkcast sun.awt.PeerEvent
            invokevirtual sun.awt.PeerEvent.coalesceEvents:(Lsun/awt/PeerEvent;)Lsun/awt/PeerEvent;
            astore 1 /* e */
         6: .line 381
            aload 1 /* e */
            ifnull 9
         7: .line 382
            aload 2 /* cache */
            iload 3 /* index */
            aaload
            aload 1 /* e */
            putfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
         8: .line 383
            iconst_1
            ireturn
         9: .line 385
      StackMap locals: int
      StackMap stack:
            aload 2 /* cache */
            iload 3 /* index */
            aconst_null
            aastore
        10: .line 388
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // int index
        end local 2 // java.awt.EventQueueItem[] cache
        end local 1 // sun.awt.PeerEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Ljava/awt/EventQueue;
            0   11     1      e  Lsun/awt/PeerEvent;
            1   11     2  cache  [Ljava/awt/EventQueueItem;
            4   11     3  index  I
    MethodParameters:
      Name  Flags
      e     

  private boolean coalesceOtherEvent(java.awt.AWTEvent, int);
    descriptor: (Ljava/awt/AWTEvent;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent e
        start local 2 // int priority
         0: .line 399
            aload 1 /* e */
            invokevirtual java.awt.AWTEvent.getID:()I
            istore 3 /* id */
        start local 3 // int id
         1: .line 400
            aload 1 /* e */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            astore 4 /* source */
        start local 4 // java.awt.Component source
         2: .line 401
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* priority */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            astore 5 /* entry */
        start local 5 // java.awt.EventQueueItem entry
         3: .line 402
            goto 12
         4: .line 405
      StackMap locals: int java.awt.Component java.awt.EventQueueItem
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            aload 4 /* source */
            if_acmpne 11
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.id:I
            iload 3 /* id */
            if_icmpne 11
         5: .line 406
            aload 4 /* source */
         6: .line 407
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            aload 1 /* e */
         7: .line 406
            invokevirtual java.awt.Component.coalesceEvents:(Ljava/awt/AWTEvent;Ljava/awt/AWTEvent;)Ljava/awt/AWTEvent;
            astore 6 /* coalescedEvent */
        start local 6 // java.awt.AWTEvent coalescedEvent
         8: .line 408
            aload 6 /* coalescedEvent */
            ifnull 11
         9: .line 409
            aload 5 /* entry */
            aload 6 /* coalescedEvent */
            putfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
        10: .line 410
            iconst_1
            ireturn
        end local 6 // java.awt.AWTEvent coalescedEvent
        11: .line 402
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            astore 5 /* entry */
      StackMap locals:
      StackMap stack:
        12: aload 5 /* entry */
            ifnonnull 4
        end local 5 // java.awt.EventQueueItem entry
        13: .line 414
            iconst_0
            ireturn
        end local 4 // java.awt.Component source
        end local 3 // int id
        end local 2 // int priority
        end local 1 // java.awt.AWTEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Ljava/awt/EventQueue;
            0   14     1               e  Ljava/awt/AWTEvent;
            0   14     2        priority  I
            1   14     3              id  I
            2   14     4          source  Ljava/awt/Component;
            3   13     5           entry  Ljava/awt/EventQueueItem;
            8   11     6  coalescedEvent  Ljava/awt/AWTEvent;
    MethodParameters:
          Name  Flags
      e         
      priority  

  private boolean coalesceEvent(java.awt.AWTEvent, int);
    descriptor: (Ljava/awt/AWTEvent;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent e
        start local 2 // int priority
         0: .line 418
            aload 1 /* e */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            instanceof java.awt.Component
            ifne 2
         1: .line 419
            iconst_0
            ireturn
         2: .line 421
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            instanceof sun.awt.PeerEvent
            ifeq 4
         3: .line 422
            aload 0 /* this */
            aload 1 /* e */
            checkcast sun.awt.PeerEvent
            invokevirtual java.awt.EventQueue.coalescePeerEvent:(Lsun/awt/PeerEvent;)Z
            ireturn
         4: .line 425
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            invokevirtual java.awt.Component.isCoalescingEnabled:()Z
            ifeq 7
         5: .line 426
            aload 0 /* this */
            aload 1 /* e */
            iload 2 /* priority */
            invokevirtual java.awt.EventQueue.coalesceOtherEvent:(Ljava/awt/AWTEvent;I)Z
            ifeq 7
         6: .line 428
            iconst_1
            ireturn
         7: .line 430
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            instanceof java.awt.event.PaintEvent
            ifeq 9
         8: .line 431
            aload 0 /* this */
            aload 1 /* e */
            checkcast java.awt.event.PaintEvent
            invokevirtual java.awt.EventQueue.coalescePaintEvent:(Ljava/awt/event/PaintEvent;)Z
            ireturn
         9: .line 433
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            instanceof java.awt.event.MouseEvent
            ifeq 11
        10: .line 434
            aload 0 /* this */
            aload 1 /* e */
            checkcast java.awt.event.MouseEvent
            invokevirtual java.awt.EventQueue.coalesceMouseEvent:(Ljava/awt/event/MouseEvent;)Z
            ireturn
        11: .line 436
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // int priority
        end local 1 // java.awt.AWTEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Ljava/awt/EventQueue;
            0   12     1         e  Ljava/awt/AWTEvent;
            0   12     2  priority  I
    MethodParameters:
          Name  Flags
      e         
      priority  

  private void cacheEQItem(java.awt.EventQueueItem);
    descriptor: (Ljava/awt/EventQueueItem;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.EventQueueItem entry
         0: .line 440
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokestatic java.awt.EventQueue.eventToCacheIndex:(Ljava/awt/AWTEvent;)I
            istore 2 /* index */
        start local 2 // int index
         1: .line 441
            iload 2 /* index */
            iconst_m1
            if_icmpeq 6
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            instanceof java.awt.Component
            ifeq 6
         2: .line 442
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            astore 3 /* source */
        start local 3 // java.awt.Component source
         3: .line 443
            aload 3 /* source */
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            ifnonnull 5
         4: .line 444
            aload 3 /* source */
            iconst_5
            anewarray java.awt.EventQueueItem
            putfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
         5: .line 446
      StackMap locals: int java.awt.Component
      StackMap stack:
            aload 3 /* source */
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            iload 2 /* index */
            aload 1 /* entry */
            aastore
        end local 3 // java.awt.Component source
         6: .line 448
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int index
        end local 1 // java.awt.EventQueueItem entry
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/awt/EventQueue;
            0    7     1   entry  Ljava/awt/EventQueueItem;
            1    7     2   index  I
            3    6     3  source  Ljava/awt/Component;
    MethodParameters:
       Name  Flags
      entry  

  private void uncacheEQItem(java.awt.EventQueueItem);
    descriptor: (Ljava/awt/EventQueueItem;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.EventQueueItem entry
         0: .line 451
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokestatic java.awt.EventQueue.eventToCacheIndex:(Ljava/awt/AWTEvent;)I
            istore 2 /* index */
        start local 2 // int index
         1: .line 452
            iload 2 /* index */
            iconst_m1
            if_icmpeq 6
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            instanceof java.awt.Component
            ifeq 6
         2: .line 453
            aload 1 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            checkcast java.awt.Component
            astore 3 /* source */
        start local 3 // java.awt.Component source
         3: .line 454
            aload 3 /* source */
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            ifnonnull 5
         4: .line 455
            return
         5: .line 457
      StackMap locals: int java.awt.Component
      StackMap stack:
            aload 3 /* source */
            getfield java.awt.Component.eventCache:[Ljava/awt/EventQueueItem;
            iload 2 /* index */
            aconst_null
            aastore
        end local 3 // java.awt.Component source
         6: .line 459
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int index
        end local 1 // java.awt.EventQueueItem entry
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/awt/EventQueue;
            0    7     1   entry  Ljava/awt/EventQueueItem;
            1    7     2   index  I
            3    6     3  source  Ljava/awt/Component;
    MethodParameters:
       Name  Flags
      entry  

  private static int eventToCacheIndex(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.AWTEvent e
         0: .line 469
            aload 0 /* e */
            invokevirtual java.awt.AWTEvent.getID:()I
            lookupswitch { // 4
                  503: 3
                  506: 4
                  800: 1
                  801: 2
              default: 5
          }
         1: .line 471
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 473
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         3: .line 475
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
         4: .line 477
      StackMap locals:
      StackMap stack:
            iconst_3
            ireturn
         5: .line 479
      StackMap locals:
      StackMap stack:
            aload 0 /* e */
            instanceof sun.awt.PeerEvent
            ifeq 6
            iconst_4
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_m1
      StackMap locals:
      StackMap stack: int
         7: ireturn
        end local 0 // java.awt.AWTEvent e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     e  Ljava/awt/AWTEvent;
    MethodParameters:
      Name  Flags
      e     

  private boolean noEvents();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 489
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 490
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 1 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            ifnull 4
         3: .line 491
            iconst_0
            ireturn
         4: .line 489
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            iconst_4
            if_icmplt 2
        end local 1 // int i
         6: .line 495
            iconst_1
            ireturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/awt/EventQueue;
            1    6     1     i  I

  public java.awt.AWTEvent getNextEvent();
    descriptor: ()Ljava/awt/AWTEvent;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 513
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.SunToolkit.flushPendingEvents:()V
         1: .line 514
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 515
            iconst_3
            istore 2 /* i */
        start local 2 // int i
         3: goto 13
         4: .line 516
      StackMap locals: java.awt.EventQueue int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            ifnull 12
         5: .line 517
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            astore 3 /* entry */
        start local 3 // java.awt.EventQueueItem entry
         6: .line 518
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* i */
            aaload
            aload 3 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            putfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
         7: .line 519
            aload 3 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            ifnonnull 9
         8: .line 520
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* i */
            aaload
            aconst_null
            putfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
         9: .line 522
      StackMap locals: java.awt.EventQueueItem
      StackMap stack:
            aload 0 /* this */
            aload 3 /* entry */
            invokevirtual java.awt.EventQueue.uncacheEQItem:(Ljava/awt/EventQueueItem;)V
        10: .line 523
            aload 3 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            aload 1
            monitorexit
        11: areturn
        end local 3 // java.awt.EventQueueItem entry
        12: .line 515
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            ifge 4
        end local 2 // int i
        14: .line 526
            invokestatic sun.awt.AWTAutoShutdown.getInstance:()Lsun/awt/AWTAutoShutdown;
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            invokevirtual sun.awt.AWTAutoShutdown.notifyThreadFree:(Ljava/lang/Thread;)V
        15: .line 527
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
        16: .line 514
            aload 1
            monitorexit
        17: goto 0
      StackMap locals: java.awt.EventQueue java.awt.EventQueue
      StackMap stack: java.lang.Throwable
        18: aload 1
            monitorexit
        19: athrow
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Ljava/awt/EventQueue;
            3   14     2      i  I
            6   12     3  entry  Ljava/awt/EventQueueItem;
      Exception table:
        from    to  target  type
           2    11      18  any
          12    17      18  any
          18    19      18  any
    Exceptions:
      throws java.lang.InterruptedException

  java.awt.AWTEvent getNextEvent(int);
    descriptor: (I)Ljava/awt/AWTEvent;
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // int id
         0: .line 539
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.SunToolkit.flushPendingEvents:()V
         1: .line 540
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         2: .line 541
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 20
         4: .line 542
      StackMap locals: java.awt.EventQueue int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 3 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            astore 4 /* entry */
        start local 4 // java.awt.EventQueueItem entry
         5: aconst_null
            astore 5 /* prev */
        start local 5 // java.awt.EventQueueItem prev
         6: .line 543
            goto 18
         7: .line 545
      StackMap locals: java.awt.EventQueueItem java.awt.EventQueueItem
      StackMap stack:
            aload 4 /* entry */
            getfield java.awt.EventQueueItem.id:I
            iload 1 /* id */
            if_icmpne 17
         8: .line 546
            aload 5 /* prev */
            ifnonnull 11
         9: .line 547
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 3 /* i */
            aaload
            aload 4 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            putfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
        10: .line 548
            goto 12
        11: .line 549
      StackMap locals:
      StackMap stack:
            aload 5 /* prev */
            aload 4 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            putfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
        12: .line 551
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 3 /* i */
            aaload
            getfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
            aload 4 /* entry */
            if_acmpne 14
        13: .line 552
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 3 /* i */
            aaload
            aload 5 /* prev */
            putfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
        14: .line 554
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* entry */
            invokevirtual java.awt.EventQueue.uncacheEQItem:(Ljava/awt/EventQueueItem;)V
        15: .line 555
            aload 4 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            aload 2
            monitorexit
        16: areturn
        17: .line 543
      StackMap locals:
      StackMap stack:
            aload 4 /* entry */
            astore 5 /* prev */
            aload 4 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            astore 4 /* entry */
      StackMap locals:
      StackMap stack:
        18: aload 4 /* entry */
            ifnonnull 7
        end local 5 // java.awt.EventQueueItem prev
        end local 4 // java.awt.EventQueueItem entry
        19: .line 541
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 3 /* i */
            iconst_4
            if_icmplt 4
        end local 3 // int i
        21: .line 559
            aload 0 /* this */
            iload 1 /* id */
            putfield java.awt.EventQueue.waitForID:I
        22: .line 560
            aload 0 /* this */
            invokevirtual java.lang.Object.wait:()V
        23: .line 561
            aload 0 /* this */
            iconst_0
            putfield java.awt.EventQueue.waitForID:I
        24: .line 540
            aload 2
            monitorexit
        25: goto 0
      StackMap locals: java.awt.EventQueue int java.awt.EventQueue
      StackMap stack: java.lang.Throwable
        26: aload 2
            monitorexit
        27: athrow
        end local 1 // int id
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   28     0   this  Ljava/awt/EventQueue;
            0   28     1     id  I
            3   21     3      i  I
            5   19     4  entry  Ljava/awt/EventQueueItem;
            6   19     5   prev  Ljava/awt/EventQueueItem;
      Exception table:
        from    to  target  type
           2    16      26  any
          17    25      26  any
          26    27      26  any
    Exceptions:
      throws java.lang.InterruptedException
    MethodParameters:
      Name  Flags
      id    

  public synchronized java.awt.AWTEvent peekEvent();
    descriptor: ()Ljava/awt/AWTEvent;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 572
            iconst_3
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 573
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 1 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            ifnull 4
         3: .line 574
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 1 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            areturn
         4: .line 572
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            ifge 2
        end local 1 // int i
         6: .line 578
            aconst_null
            areturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/awt/EventQueue;
            1    6     1     i  I

  public synchronized java.awt.AWTEvent peekEvent(int);
    descriptor: (I)Ljava/awt/AWTEvent;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // int id
         0: .line 588
            iconst_3
            istore 2 /* i */
        start local 2 // int i
         1: goto 9
         2: .line 589
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 2 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            astore 3 /* q */
        start local 3 // java.awt.EventQueueItem q
         3: .line 590
            goto 7
         4: .line 591
      StackMap locals: java.awt.EventQueueItem
      StackMap stack:
            aload 3 /* q */
            getfield java.awt.EventQueueItem.id:I
            iload 1 /* id */
            if_icmpne 6
         5: .line 592
            aload 3 /* q */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            areturn
         6: .line 590
      StackMap locals:
      StackMap stack:
            aload 3 /* q */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            astore 3 /* q */
      StackMap locals:
      StackMap stack:
         7: aload 3 /* q */
            ifnonnull 4
        end local 3 // java.awt.EventQueueItem q
         8: .line 588
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            ifge 2
        end local 2 // int i
        10: .line 597
            aconst_null
            areturn
        end local 1 // int id
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/awt/EventQueue;
            0   11     1    id  I
            1   10     2     i  I
            3    8     3     q  Ljava/awt/EventQueueItem;
    MethodParameters:
      Name  Flags
      id    

  protected void dispatchEvent(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent event
         0: .line 642
            aload 1 /* event */
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            astore 2 /* src */
        start local 2 // java.lang.Object src
         1: .line 643
            new java.awt.EventQueue$2
            dup
            aload 0 /* this */
            aload 1 /* event */
            aload 2 /* src */
            invokespecial java.awt.EventQueue$2.<init>:(Ljava/awt/EventQueue;Ljava/awt/AWTEvent;Ljava/lang/Object;)V
            astore 3 /* action */
        start local 3 // java.security.PrivilegedAction action
         2: .line 650
            invokestatic java.security.AccessController.getContext:()Ljava/security/AccessControlContext;
            astore 4 /* stack */
        start local 4 // java.security.AccessControlContext stack
         3: .line 651
            aload 2 /* src */
            invokestatic java.awt.EventQueue.getAccessControlContextFrom:(Ljava/lang/Object;)Ljava/security/AccessControlContext;
            astore 5 /* srcAcc */
        start local 5 // java.security.AccessControlContext srcAcc
         4: .line 652
            aload 1 /* event */
            invokevirtual java.awt.AWTEvent.getAccessControlContext:()Ljava/security/AccessControlContext;
            astore 6 /* eventAcc */
        start local 6 // java.security.AccessControlContext eventAcc
         5: .line 653
            aload 5 /* srcAcc */
            ifnonnull 8
         6: .line 654
            getstatic java.awt.EventQueue.javaSecurityAccess:Lsun/misc/JavaSecurityAccess;
            aload 3 /* action */
            aload 4 /* stack */
            aload 6 /* eventAcc */
            invokeinterface sun.misc.JavaSecurityAccess.doIntersectionPrivilege:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object;
            pop
         7: .line 655
            goto 12
         8: .line 656
      StackMap locals: java.awt.EventQueue java.awt.AWTEvent java.lang.Object java.security.PrivilegedAction java.security.AccessControlContext java.security.AccessControlContext java.security.AccessControlContext
      StackMap stack:
            getstatic java.awt.EventQueue.javaSecurityAccess:Lsun/misc/JavaSecurityAccess;
         9: .line 657
            new java.awt.EventQueue$3
            dup
            aload 0 /* this */
            aload 3 /* action */
            aload 6 /* eventAcc */
            invokespecial java.awt.EventQueue$3.<init>:(Ljava/awt/EventQueue;Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)V
        10: .line 662
            aload 4 /* stack */
            aload 5 /* srcAcc */
        11: .line 656
            invokeinterface sun.misc.JavaSecurityAccess.doIntersectionPrivilege:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;Ljava/security/AccessControlContext;)Ljava/lang/Object;
            pop
        12: .line 664
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.security.AccessControlContext eventAcc
        end local 5 // java.security.AccessControlContext srcAcc
        end local 4 // java.security.AccessControlContext stack
        end local 3 // java.security.PrivilegedAction action
        end local 2 // java.lang.Object src
        end local 1 // java.awt.AWTEvent event
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Ljava/awt/EventQueue;
            0   13     1     event  Ljava/awt/AWTEvent;
            1   13     2       src  Ljava/lang/Object;
            2   13     3    action  Ljava/security/PrivilegedAction<Ljava/lang/Void;>;
            3   13     4     stack  Ljava/security/AccessControlContext;
            4   13     5    srcAcc  Ljava/security/AccessControlContext;
            5   13     6  eventAcc  Ljava/security/AccessControlContext;
    MethodParameters:
       Name  Flags
      event  final

  private static java.security.AccessControlContext getAccessControlContextFrom(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/security/AccessControlContext;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object src
         0: .line 667
            aload 0 /* src */
            instanceof java.awt.Component
            ifeq 2
         1: .line 668
            aload 0 /* src */
            checkcast java.awt.Component
            invokevirtual java.awt.Component.getAccessControlContext:()Ljava/security/AccessControlContext;
            goto 7
         2: .line 669
      StackMap locals:
      StackMap stack:
            aload 0 /* src */
            instanceof java.awt.MenuComponent
            ifeq 4
         3: .line 670
            aload 0 /* src */
            checkcast java.awt.MenuComponent
            invokevirtual java.awt.MenuComponent.getAccessControlContext:()Ljava/security/AccessControlContext;
            goto 7
         4: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* src */
            instanceof java.awt.TrayIcon
            ifeq 6
         5: .line 672
            aload 0 /* src */
            checkcast java.awt.TrayIcon
            invokevirtual java.awt.TrayIcon.getAccessControlContext:()Ljava/security/AccessControlContext;
            goto 7
         6: .line 673
      StackMap locals:
      StackMap stack:
            aconst_null
         7: .line 667
      StackMap locals:
      StackMap stack: java.security.AccessControlContext
            areturn
        end local 0 // java.lang.Object src
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0   src  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      src   

  private void dispatchEventImpl(java.awt.AWTEvent, java.lang.Object);
    descriptor: (Ljava/awt/AWTEvent;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent event
        start local 2 // java.lang.Object src
         0: .line 680
            aload 1 /* event */
            iconst_1
            putfield java.awt.AWTEvent.isPosted:Z
         1: .line 681
            aload 1 /* event */
            instanceof java.awt.ActiveEvent
            ifeq 5
         2: .line 683
            aload 0 /* this */
            aload 1 /* event */
            invokevirtual java.awt.EventQueue.setCurrentEventAndMostRecentTimeImpl:(Ljava/awt/AWTEvent;)V
         3: .line 684
            aload 1 /* event */
            checkcast java.awt.ActiveEvent
            invokeinterface java.awt.ActiveEvent.dispatch:()V
         4: .line 685
            goto 20
      StackMap locals:
      StackMap stack:
         5: aload 2 /* src */
            instanceof java.awt.Component
            ifeq 9
         6: .line 686
            aload 2 /* src */
            checkcast java.awt.Component
            aload 1 /* event */
            invokevirtual java.awt.Component.dispatchEvent:(Ljava/awt/AWTEvent;)V
         7: .line 687
            aload 1 /* event */
            invokevirtual java.awt.AWTEvent.dispatched:()V
         8: .line 688
            goto 20
      StackMap locals:
      StackMap stack:
         9: aload 2 /* src */
            instanceof java.awt.MenuComponent
            ifeq 12
        10: .line 689
            aload 2 /* src */
            checkcast java.awt.MenuComponent
            aload 1 /* event */
            invokevirtual java.awt.MenuComponent.dispatchEvent:(Ljava/awt/AWTEvent;)V
        11: .line 690
            goto 20
      StackMap locals:
      StackMap stack:
        12: aload 2 /* src */
            instanceof java.awt.TrayIcon
            ifeq 15
        13: .line 691
            aload 2 /* src */
            checkcast java.awt.TrayIcon
            aload 1 /* event */
            invokevirtual java.awt.TrayIcon.dispatchEvent:(Ljava/awt/AWTEvent;)V
        14: .line 692
            goto 20
      StackMap locals:
      StackMap stack:
        15: aload 2 /* src */
            instanceof sun.awt.AWTAutoShutdown
            ifeq 19
        16: .line 693
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.noEvents:()Z
            ifeq 20
        17: .line 694
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            invokevirtual java.awt.EventDispatchThread.stopDispatching:()V
        18: .line 696
            goto 20
        19: .line 697
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "unable to dispatch event: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* event */
            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
        20: .line 699
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object src
        end local 1 // java.awt.AWTEvent event
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   21     0   this  Ljava/awt/EventQueue;
            0   21     1  event  Ljava/awt/AWTEvent;
            0   21     2    src  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      event  final
      src    final

  public static long getMostRecentEventTime();
    descriptor: ()J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 728
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
            invokevirtual java.awt.EventQueue.getMostRecentEventTimeImpl:()J
            lreturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private synchronized long getMostRecentEventTimeImpl();
    descriptor: ()J
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 731
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            if_acmpne 2
         1: .line 732
            aload 0 /* this */
            getfield java.awt.EventQueue.mostRecentEventTime:J
            goto 3
         2: .line 733
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
         3: .line 731
      StackMap locals:
      StackMap stack: long
            lreturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/EventQueue;

  synchronized long getMostRecentEventTimeEx();
    descriptor: ()J
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 740
            aload 0 /* this */
            getfield java.awt.EventQueue.mostRecentEventTime:J
            lreturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/EventQueue;

  public static java.awt.AWTEvent getCurrentEvent();
    descriptor: ()Ljava/awt/AWTEvent;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 756
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
            invokevirtual java.awt.EventQueue.getCurrentEventImpl:()Ljava/awt/AWTEvent;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private synchronized java.awt.AWTEvent getCurrentEventImpl();
    descriptor: ()Ljava/awt/AWTEvent;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 759
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            if_acmpne 2
         1: .line 760
            aload 0 /* this */
            getfield java.awt.EventQueue.currentEvent:Ljava/lang/ref/WeakReference;
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast java.awt.AWTEvent
            goto 3
         2: .line 761
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 759
      StackMap locals:
      StackMap stack: java.awt.AWTEvent
            areturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/EventQueue;

  public synchronized void push(java.awt.EventQueue);
    descriptor: (Ljava/awt/EventQueue;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.EventQueue newEventQueue
         0: .line 776
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
         1: .line 777
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "EventQueue.push("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* newEventQueue */
            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;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
         2: .line 780
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            ifnull 5
         3: .line 781
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            aload 1 /* newEventQueue */
            invokevirtual java.awt.EventQueue.push:(Ljava/awt/EventQueue;)V
         4: .line 782
            return
         5: .line 785
      StackMap locals:
      StackMap stack:
            aload 1 /* newEventQueue */
            dup
            astore 2
            monitorenter
         6: .line 787
            goto 12
         7: .line 789
      StackMap locals: java.awt.EventQueue
      StackMap stack:
            aload 1 /* newEventQueue */
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.getNextEvent:()Ljava/awt/AWTEvent;
            invokevirtual java.awt.EventQueue.postEventPrivate:(Ljava/awt/AWTEvent;)V
         8: .line 790
            goto 12
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
         9: astore 3 /* ie */
        start local 3 // java.lang.InterruptedException ie
        10: .line 791
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 12
        11: .line 792
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            ldc "Interrupted push"
            aload 3 /* ie */
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 3 // java.lang.InterruptedException ie
        12: .line 787
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.peekEvent:()Ljava/awt/AWTEvent;
            ifnonnull 7
        13: .line 797
            aload 1 /* newEventQueue */
            aload 0 /* this */
            putfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
        14: .line 785
            aload 2
            monitorexit
        15: goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        16: aload 2
            monitorexit
        17: athrow
        18: .line 809
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            ifnull 20
        19: .line 810
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            invokevirtual java.awt.EventDispatchThread.stopDispatchingLater:()V
        20: .line 813
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* newEventQueue */
            putfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
        21: .line 815
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 2 /* appContext */
        start local 2 // sun.awt.AppContext appContext
        22: .line 816
            aload 2 /* appContext */
            getstatic sun.awt.AppContext.EVENT_QUEUE_KEY:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 0 /* this */
            if_acmpne 24
        23: .line 817
            aload 2 /* appContext */
            getstatic sun.awt.AppContext.EVENT_QUEUE_KEY:Ljava/lang/Object;
            aload 1 /* newEventQueue */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 819
      StackMap locals: sun.awt.AppContext
      StackMap stack:
            return
        end local 2 // sun.awt.AppContext appContext
        end local 1 // java.awt.EventQueue newEventQueue
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   25     0           this  Ljava/awt/EventQueue;
            0   25     1  newEventQueue  Ljava/awt/EventQueue;
           10   12     3             ie  Ljava/lang/InterruptedException;
           22   25     2     appContext  Lsun/awt/AppContext;
      Exception table:
        from    to  target  type
           7     8       9  Class java.lang.InterruptedException
           6    15      16  any
          16    17      16  any
    MethodParameters:
               Name  Flags
      newEventQueue  

  protected void pop();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 835
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 2
         1: .line 836
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            new java.lang.StringBuilder
            dup
            ldc "EventQueue.pop("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            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;
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;)V
         2: .line 842
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
            astore 1 /* prev */
        start local 1 // java.awt.EventQueue prev
         3: .line 843
            aload 1 /* prev */
            ifnull 4
            aload 1 /* prev */
            goto 5
      StackMap locals: java.awt.EventQueue
      StackMap stack:
         4: aload 0 /* this */
      StackMap locals:
      StackMap stack: java.awt.EventQueue
         5: dup
            astore 2
            monitorenter
         6: .line 844
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         7: .line 845
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            ifnull 12
         8: .line 846
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            invokevirtual java.awt.EventQueue.pop:()V
         9: .line 847
            aload 3
            monitorexit
        10: aload 2
            monitorexit
        11: return
        12: .line 849
      StackMap locals: java.awt.EventQueue java.awt.EventQueue
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
            ifnonnull 14
        13: .line 850
            new java.util.EmptyStackException
            dup
            invokespecial java.util.EmptyStackException.<init>:()V
            athrow
        14: .line 854
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
            aconst_null
            putfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
        15: .line 855
            goto 21
        16: .line 857
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.getNextEvent:()Ljava/awt/AWTEvent;
            invokevirtual java.awt.EventQueue.postEventPrivate:(Ljava/awt/AWTEvent;)V
        17: .line 858
            goto 21
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        18: astore 4 /* ie */
        start local 4 // java.lang.InterruptedException ie
        19: .line 859
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 21
        20: .line 860
            invokestatic java.awt.EventQueue.getEventLog:()Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            ldc "Interrupted pop"
            aload 4 /* ie */
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 4 // java.lang.InterruptedException ie
        21: .line 855
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.peekEvent:()Ljava/awt/AWTEvent;
            ifnonnull 16
        22: .line 864
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 4 /* appContext */
        start local 4 // sun.awt.AppContext appContext
        23: .line 865
            aload 4 /* appContext */
            getstatic sun.awt.AppContext.EVENT_QUEUE_KEY:Ljava/lang/Object;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 0 /* this */
            if_acmpne 25
        24: .line 866
            aload 4 /* appContext */
            getstatic sun.awt.AppContext.EVENT_QUEUE_KEY:Ljava/lang/Object;
            aload 0 /* this */
            getfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 869
      StackMap locals: sun.awt.AppContext
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield java.awt.EventQueue.previousQueue:Ljava/awt/EventQueue;
        end local 4 // sun.awt.AppContext appContext
        26: .line 844
            aload 3
            monitorexit
        27: goto 30
      StackMap locals: java.awt.EventQueue java.awt.EventQueue java.awt.EventQueue java.awt.EventQueue
      StackMap stack: java.lang.Throwable
        28: aload 3
            monitorexit
        29: athrow
        30: .line 843
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        31: goto 34
      StackMap locals:
      StackMap stack: java.lang.Throwable
        32: aload 2
            monitorexit
        33: athrow
        34: .line 873
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            astore 2 /* dt */
        start local 2 // java.awt.EventDispatchThread dt
        35: .line 874
            aload 2 /* dt */
            ifnull 37
        36: .line 875
            aload 2 /* dt */
            invokevirtual java.awt.EventDispatchThread.stopDispatching:()V
        37: .line 878
      StackMap locals: java.awt.EventDispatchThread
      StackMap stack:
            return
        end local 2 // java.awt.EventDispatchThread dt
        end local 1 // java.awt.EventQueue prev
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   38     0        this  Ljava/awt/EventQueue;
            3   38     1        prev  Ljava/awt/EventQueue;
           19   21     4          ie  Ljava/lang/InterruptedException;
           23   26     4  appContext  Lsun/awt/AppContext;
           35   38     2          dt  Ljava/awt/EventDispatchThread;
      Exception table:
        from    to  target  type
          16    17      18  Class java.lang.InterruptedException
           7    10      28  any
          12    27      28  any
          28    29      28  any
           6    11      32  any
          12    31      32  any
          32    33      32  any
    Exceptions:
      throws java.util.EmptyStackException

  public static boolean isDispatchThread();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 892
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
            astore 0 /* eq */
        start local 0 // java.awt.EventQueue eq
         1: .line 893
            aload 0 /* eq */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            astore 1 /* next */
        start local 1 // java.awt.EventQueue next
         2: .line 894
            goto 5
         3: .line 895
      StackMap locals: java.awt.EventQueue java.awt.EventQueue
      StackMap stack:
            aload 1 /* next */
            astore 0 /* eq */
         4: .line 896
            aload 0 /* eq */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            astore 1 /* next */
         5: .line 894
      StackMap locals:
      StackMap stack:
            aload 1 /* next */
            ifnonnull 3
         6: .line 898
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* eq */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            if_acmpne 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 1 // java.awt.EventQueue next
        end local 0 // java.awt.EventQueue eq
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    8     0    eq  Ljava/awt/EventQueue;
            2    8     1  next  Ljava/awt/EventQueue;

  final void initDispatchThread();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 902
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         1: .line 903
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            ifnonnull 6
            aload 0 /* this */
            getfield java.awt.EventQueue.threadGroup:Ljava/lang/ThreadGroup;
            invokevirtual java.lang.ThreadGroup.isDestroyed:()Z
            ifne 6
         2: .line 904
            aload 0 /* this */
         3: .line 905
            new java.awt.EventQueue$4
            dup
            aload 0 /* this */
            invokespecial java.awt.EventQueue$4.<init>:(Ljava/awt/EventQueue;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.awt.EventDispatchThread
         4: .line 904
            putfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
         5: .line 918
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            invokevirtual java.awt.EventDispatchThread.start:()V
         6: .line 902
      StackMap locals: java.awt.EventQueue
      StackMap stack:
            aload 1
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 1
            monitorexit
         9: athrow
        10: .line 921
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/awt/EventQueue;
      Exception table:
        from    to  target  type
           1     7       8  any
           8     9       8  any

  final void detachDispatchThread();
    descriptor: ()V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 924
            aload 0 /* this */
            aconst_null
            putfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
         1: .line 925
            return
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/awt/EventQueue;

  final java.awt.EventDispatchThread getDispatchThread();
    descriptor: ()Ljava/awt/EventDispatchThread;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.EventQueue this
         0: .line 937
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            areturn
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/EventQueue;

  final void removeSourceEvents(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // java.awt.EventQueue this
        start local 1 // java.lang.Object source
        start local 2 // boolean removeAllEvents
         0: .line 953
            invokestatic sun.awt.SunToolkit.flushPendingEvents:()V
         1: .line 954
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         2: .line 955
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 30
         4: .line 956
      StackMap locals: java.awt.EventQueue int
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 4 /* i */
            aaload
            getfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
            astore 5 /* entry */
        start local 5 // java.awt.EventQueueItem entry
         5: .line 957
            aconst_null
            astore 6 /* prev */
        start local 6 // java.awt.EventQueueItem prev
         6: .line 958
            goto 27
         7: .line 959
      StackMap locals: java.awt.EventQueueItem java.awt.EventQueueItem
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
            aload 1 /* source */
            if_acmpne 25
         8: .line 960
            iload 2 /* removeAllEvents */
            ifne 15
         9: .line 961
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.SequencedEvent
            ifne 25
        10: .line 962
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.SentEvent
            ifne 25
        11: .line 963
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.event.FocusEvent
            ifne 25
        12: .line 964
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.event.WindowEvent
            ifne 25
        13: .line 965
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.event.KeyEvent
            ifne 25
        14: .line 966
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.event.InputMethodEvent
            ifne 25
        15: .line 968
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.SequencedEvent
            ifeq 17
        16: .line 969
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            checkcast java.awt.SequencedEvent
            invokevirtual java.awt.SequencedEvent.dispose:()V
        17: .line 971
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            instanceof java.awt.SentEvent
            ifeq 19
        18: .line 972
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.event:Ljava/awt/AWTEvent;
            checkcast java.awt.SentEvent
            invokevirtual java.awt.SentEvent.dispose:()V
        19: .line 974
      StackMap locals:
      StackMap stack:
            aload 6 /* prev */
            ifnonnull 22
        20: .line 975
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 4 /* i */
            aaload
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            putfield java.awt.Queue.head:Ljava/awt/EventQueueItem;
        21: .line 976
            goto 23
        22: .line 977
      StackMap locals:
      StackMap stack:
            aload 6 /* prev */
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            putfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
        23: .line 979
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* entry */
            invokevirtual java.awt.EventQueue.uncacheEQItem:(Ljava/awt/EventQueueItem;)V
        24: .line 980
            goto 26
        25: .line 981
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            astore 6 /* prev */
        26: .line 983
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            getfield java.awt.EventQueueItem.next:Ljava/awt/EventQueueItem;
            astore 5 /* entry */
        27: .line 958
      StackMap locals:
      StackMap stack:
            aload 5 /* entry */
            ifnonnull 7
        28: .line 985
            aload 0 /* this */
            getfield java.awt.EventQueue.queues:[Ljava/awt/Queue;
            iload 4 /* i */
            aaload
            aload 6 /* prev */
            putfield java.awt.Queue.tail:Ljava/awt/EventQueueItem;
        end local 6 // java.awt.EventQueueItem prev
        end local 5 // java.awt.EventQueueItem entry
        29: .line 955
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 4 /* i */
            iconst_4
            if_icmplt 4
        end local 4 // int i
        31: .line 954
            aload 3
            monitorexit
        32: goto 35
      StackMap locals: java.awt.EventQueue java.lang.Object int java.awt.EventQueue
      StackMap stack: java.lang.Throwable
        33: aload 3
            monitorexit
        34: athrow
        35: .line 988
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean removeAllEvents
        end local 1 // java.lang.Object source
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   36     0             this  Ljava/awt/EventQueue;
            0   36     1           source  Ljava/lang/Object;
            0   36     2  removeAllEvents  Z
            3   31     4                i  I
            5   29     5            entry  Ljava/awt/EventQueueItem;
            6   29     6             prev  Ljava/awt/EventQueueItem;
      Exception table:
        from    to  target  type
           2    32      33  any
          33    34      33  any
    MethodParameters:
                 Name  Flags
      source           
      removeAllEvents  

  static void setCurrentEventAndMostRecentTime(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.AWTEvent e
         0: .line 991
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
            aload 0 /* e */
            invokevirtual java.awt.EventQueue.setCurrentEventAndMostRecentTimeImpl:(Ljava/awt/AWTEvent;)V
         1: .line 992
            return
        end local 0 // java.awt.AWTEvent e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     e  Ljava/awt/AWTEvent;
    MethodParameters:
      Name  Flags
      e     

  private synchronized void setCurrentEventAndMostRecentTimeImpl(java.awt.AWTEvent);
    descriptor: (Ljava/awt/AWTEvent;)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // java.awt.AWTEvent e
         0: .line 995
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            if_acmpeq 2
         1: .line 996
            return
         2: .line 999
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 1 /* e */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            putfield java.awt.EventQueue.currentEvent:Ljava/lang/ref/WeakReference;
         3: .line 1009
            ldc -9223372036854775808
            lstore 2 /* mostRecentEventTime2 */
        start local 2 // long mostRecentEventTime2
         4: .line 1010
            aload 1 /* e */
            instanceof java.awt.event.InputEvent
            ifeq 8
         5: .line 1011
            aload 1 /* e */
            checkcast java.awt.event.InputEvent
            astore 4 /* ie */
        start local 4 // java.awt.event.InputEvent ie
         6: .line 1012
            aload 4 /* ie */
            invokevirtual java.awt.event.InputEvent.getWhen:()J
            lstore 2 /* mostRecentEventTime2 */
        end local 4 // java.awt.event.InputEvent ie
         7: .line 1013
            goto 19
      StackMap locals: long
      StackMap stack:
         8: aload 1 /* e */
            instanceof java.awt.event.InputMethodEvent
            ifeq 12
         9: .line 1014
            aload 1 /* e */
            checkcast java.awt.event.InputMethodEvent
            astore 4 /* ime */
        start local 4 // java.awt.event.InputMethodEvent ime
        10: .line 1015
            aload 4 /* ime */
            invokevirtual java.awt.event.InputMethodEvent.getWhen:()J
            lstore 2 /* mostRecentEventTime2 */
        end local 4 // java.awt.event.InputMethodEvent ime
        11: .line 1016
            goto 19
      StackMap locals:
      StackMap stack:
        12: aload 1 /* e */
            instanceof java.awt.event.ActionEvent
            ifeq 16
        13: .line 1017
            aload 1 /* e */
            checkcast java.awt.event.ActionEvent
            astore 4 /* ae */
        start local 4 // java.awt.event.ActionEvent ae
        14: .line 1018
            aload 4 /* ae */
            invokevirtual java.awt.event.ActionEvent.getWhen:()J
            lstore 2 /* mostRecentEventTime2 */
        end local 4 // java.awt.event.ActionEvent ae
        15: .line 1019
            goto 19
      StackMap locals:
      StackMap stack:
        16: aload 1 /* e */
            instanceof java.awt.event.InvocationEvent
            ifeq 19
        17: .line 1020
            aload 1 /* e */
            checkcast java.awt.event.InvocationEvent
            astore 4 /* ie */
        start local 4 // java.awt.event.InvocationEvent ie
        18: .line 1021
            aload 4 /* ie */
            invokevirtual java.awt.event.InvocationEvent.getWhen:()J
            lstore 2 /* mostRecentEventTime2 */
        end local 4 // java.awt.event.InvocationEvent ie
        19: .line 1023
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.awt.EventQueue.mostRecentEventTime:J
            lload 2 /* mostRecentEventTime2 */
            invokestatic java.lang.Math.max:(JJ)J
            putfield java.awt.EventQueue.mostRecentEventTime:J
        20: .line 1024
            return
        end local 2 // long mostRecentEventTime2
        end local 1 // java.awt.AWTEvent e
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   21     0                  this  Ljava/awt/EventQueue;
            0   21     1                     e  Ljava/awt/AWTEvent;
            4   21     2  mostRecentEventTime2  J
            6    7     4                    ie  Ljava/awt/event/InputEvent;
           10   11     4                   ime  Ljava/awt/event/InputMethodEvent;
           14   15     4                    ae  Ljava/awt/event/ActionEvent;
           18   19     4                    ie  Ljava/awt/event/InvocationEvent;
    MethodParameters:
      Name  Flags
      e     

  public static void invokeLater(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.Runnable runnable
         0: .line 1039
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
         1: .line 1040
            new java.awt.event.InvocationEvent
            dup
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            aload 0 /* runnable */
            invokespecial java.awt.event.InvocationEvent.<init>:(Ljava/lang/Object;Ljava/lang/Runnable;)V
         2: .line 1039
            invokevirtual java.awt.EventQueue.postEvent:(Ljava/awt/AWTEvent;)V
         3: .line 1041
            return
        end local 0 // java.lang.Runnable runnable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  runnable  Ljava/lang/Runnable;
    MethodParameters:
          Name  Flags
      runnable  

  public static void invokeAndWait(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Runnable runnable
         0: .line 1064
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            aload 0 /* runnable */
            invokestatic java.awt.EventQueue.invokeAndWait:(Ljava/lang/Object;Ljava/lang/Runnable;)V
         1: .line 1065
            return
        end local 0 // java.lang.Runnable runnable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0  runnable  Ljava/lang/Runnable;
    Exceptions:
      throws java.lang.InterruptedException, java.lang.reflect.InvocationTargetException
    MethodParameters:
          Name  Flags
      runnable  

  static void invokeAndWait(java.lang.Object, java.lang.Runnable);
    descriptor: (Ljava/lang/Object;Ljava/lang/Runnable;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // java.lang.Object source
        start local 1 // java.lang.Runnable runnable
         0: .line 1070
            invokestatic java.awt.EventQueue.isDispatchThread:()Z
            ifeq 2
         1: .line 1071
            new java.lang.Error
            dup
            ldc "Cannot call invokeAndWait from the event dispatcher thread"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1075
      StackMap locals:
      StackMap stack:
            new java.awt.EventQueue$1AWTInvocationLock
            dup
            invokespecial java.awt.EventQueue$1AWTInvocationLock.<init>:()V
            astore 2 /* lock */
        start local 2 // java.lang.Object lock
         3: .line 1078
            new java.awt.event.InvocationEvent
            dup
            aload 0 /* source */
            aload 1 /* runnable */
            aload 2 /* lock */
            iconst_1
            invokespecial java.awt.event.InvocationEvent.<init>:(Ljava/lang/Object;Ljava/lang/Runnable;Ljava/lang/Object;Z)V
         4: .line 1077
            astore 3 /* event */
        start local 3 // java.awt.event.InvocationEvent event
         5: .line 1080
            aload 2 /* lock */
            dup
            astore 4
            monitorenter
         6: .line 1081
            invokestatic java.awt.Toolkit.getEventQueue:()Ljava/awt/EventQueue;
            aload 3 /* event */
            invokevirtual java.awt.EventQueue.postEvent:(Ljava/awt/AWTEvent;)V
         7: .line 1082
            aload 2 /* lock */
            invokevirtual java.lang.Object.wait:()V
         8: .line 1080
            aload 4
            monitorexit
         9: goto 12
      StackMap locals: java.lang.Object java.lang.Runnable java.lang.Object java.awt.event.InvocationEvent java.lang.Object
      StackMap stack: java.lang.Throwable
        10: aload 4
            monitorexit
        11: athrow
        12: .line 1085
      StackMap locals:
      StackMap stack:
            aload 3 /* event */
            invokevirtual java.awt.event.InvocationEvent.getThrowable:()Ljava/lang/Throwable;
            astore 4 /* eventThrowable */
        start local 4 // java.lang.Throwable eventThrowable
        13: .line 1086
            aload 4 /* eventThrowable */
            ifnull 15
        14: .line 1087
            new java.lang.reflect.InvocationTargetException
            dup
            aload 4 /* eventThrowable */
            invokespecial java.lang.reflect.InvocationTargetException.<init>:(Ljava/lang/Throwable;)V
            athrow
        15: .line 1089
      StackMap locals: java.lang.Throwable
      StackMap stack:
            return
        end local 4 // java.lang.Throwable eventThrowable
        end local 3 // java.awt.event.InvocationEvent event
        end local 2 // java.lang.Object lock
        end local 1 // java.lang.Runnable runnable
        end local 0 // java.lang.Object source
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0          source  Ljava/lang/Object;
            0   16     1        runnable  Ljava/lang/Runnable;
            3   16     2            lock  Ljava/lang/Object;
            5   16     3           event  Ljava/awt/event/InvocationEvent;
           13   16     4  eventThrowable  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           6     9      10  any
          10    11      10  any
    Exceptions:
      throws java.lang.InterruptedException, java.lang.reflect.InvocationTargetException
    MethodParameters:
          Name  Flags
      source    
      runnable  

  private void wakeup(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.EventQueue this
        start local 1 // boolean isShutdown
         0: .line 1098
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 1099
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            ifnull 4
         2: .line 1101
            aload 0 /* this */
            getfield java.awt.EventQueue.nextQueue:Ljava/awt/EventQueue;
            iload 1 /* isShutdown */
            invokevirtual java.awt.EventQueue.wakeup:(Z)V
         3: .line 1102
            goto 9
      StackMap locals: java.awt.EventQueue
      StackMap stack:
         4: aload 0 /* this */
            getfield java.awt.EventQueue.dispatchThread:Ljava/awt/EventDispatchThread;
            ifnull 7
         5: .line 1103
            aload 0 /* this */
            invokevirtual java.lang.Object.notifyAll:()V
         6: .line 1104
            goto 9
      StackMap locals:
      StackMap stack:
         7: iload 1 /* isShutdown */
            ifne 9
         8: .line 1105
            aload 0 /* this */
            invokevirtual java.awt.EventQueue.initDispatchThread:()V
         9: .line 1098
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        13: .line 1108
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean isShutdown
        end local 0 // java.awt.EventQueue this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Ljava/awt/EventQueue;
            0   14     1  isShutdown  Z
      Exception table:
        from    to  target  type
           1    10      11  any
          11    12      11  any
    MethodParameters:
            Name  Flags
      isShutdown  
}
SourceFile: "EventQueue.java"
NestMembers:
  java.awt.EventQueue$1  java.awt.EventQueue$1AWTInvocationLock  java.awt.EventQueue$2  java.awt.EventQueue$3  java.awt.EventQueue$4
InnerClasses:
  java.awt.EventQueue$1
  AWTInvocationLock = java.awt.EventQueue$1AWTInvocationLock
  java.awt.EventQueue$2
  java.awt.EventQueue$3
  java.awt.EventQueue$4
  public abstract EventQueueAccessor = sun.awt.AWTAccessor$EventQueueAccessor of sun.awt.AWTAccessor