final class sun.awt.X11.XSelection
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.awt.X11.XSelection
  super_class: java.lang.Object
{
  private static final java.util.Hashtable<sun.awt.X11.XAtom, sun.awt.X11.XSelection> table;
    descriptor: Ljava/util/Hashtable;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Hashtable<Lsun/awt/X11/XAtom;Lsun/awt/X11/XSelection;>;

  private static final java.lang.Object lock;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final sun.awt.X11.XAtom selectionPropertyAtom;
    descriptor: Lsun/awt/X11/XAtom;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final long MAX_LENGTH;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1000000

  public static final int MAX_PROPERTY_SIZE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final sun.awt.X11.XEventDispatcher incrementalTransferHandler;
    descriptor: Lsun/awt/X11/XEventDispatcher;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static sun.awt.X11.WindowPropertyGetter propertyGetter;
    descriptor: Lsun/awt/X11/WindowPropertyGetter;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final sun.awt.X11.XAtom selectionAtom;
    descriptor: Lsun/awt/X11/XAtom;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.awt.datatransfer.Transferable contents;
    descriptor: Ljava/awt/datatransfer/Transferable;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Map<java.lang.Long, java.awt.datatransfer.DataFlavor> formatMap;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/Long;Ljava/awt/datatransfer/DataFlavor;>;

  private long[] formats;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private sun.awt.AppContext appContext;
    descriptor: Lsun/awt/AppContext;
    flags: (0x0002) ACC_PRIVATE

  private static long lastRequestServerTime;
    descriptor: J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  private boolean isOwner;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private sun.awt.X11.OwnershipListener ownershipListener;
    descriptor: Lsun/awt/X11/OwnershipListener;
    flags: (0x0002) ACC_PRIVATE

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 49
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putstatic sun.awt.X11.XSelection.table:Ljava/util/Hashtable;
         1: .line 51
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic sun.awt.X11.XSelection.lock:Ljava/lang/Object;
         2: .line 53
            ldc "XAWT_SELECTION"
            invokestatic sun.awt.X11.XAtom.get:(Ljava/lang/String;)Lsun/awt/X11/XAtom;
            putstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
         3: .line 62
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         4: .line 65
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            invokestatic sun.awt.X11.XlibWrapper.XMaxRequestSize:(J)J
            ldc 4
            lmul
            ldc 100
            lsub
            l2i
         5: .line 64
            putstatic sun.awt.X11.XSelection.MAX_PROPERTY_SIZE:I
         6: .line 66
            goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: astore 0
         8: .line 67
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         9: .line 68
            aload 0
            athrow
        10: .line 67
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        11: .line 73
            new sun.awt.X11.XSelection$IncrementalTransferHandler
            dup
            invokespecial sun.awt.X11.XSelection$IncrementalTransferHandler.<init>:()V
        12: .line 72
            putstatic sun.awt.X11.XSelection.incrementalTransferHandler:Lsun/awt/X11/XEventDispatcher;
        13: .line 75
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        14: .line 107
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        15: .line 108
            new sun.awt.X11.XSelection$SelectionEventHandler
            dup
            invokespecial sun.awt.X11.XSelection$SelectionEventHandler.<init>:()V
        16: .line 107
            invokestatic sun.awt.X11.XToolkit.addEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
        17: .line 109
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           4     7       7  any

  static sun.awt.X11.XSelection getSelection(sun.awt.X11.XAtom);
    descriptor: (Lsun/awt/X11/XAtom;)Lsun/awt/X11/XSelection;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.X11.XAtom atom
         0: .line 116
            getstatic sun.awt.X11.XSelection.table:Ljava/util/Hashtable;
            aload 0 /* atom */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.awt.X11.XSelection
            areturn
        end local 0 // sun.awt.X11.XAtom atom
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  atom  Lsun/awt/X11/XAtom;
    MethodParameters:
      Name  Flags
      atom  

  void <init>(sun.awt.X11.XAtom);
    descriptor: (Lsun/awt/X11/XAtom;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // sun.awt.X11.XAtom atom
         0: .line 125
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 89
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.contents:Ljava/awt/datatransfer/Transferable;
         2: .line 91
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.formatMap:Ljava/util/Map;
         3: .line 93
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.formats:[J
         4: .line 95
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.appContext:Lsun/awt/AppContext;
         5: .line 100
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XSelection.ownershipTime:J
         6: .line 103
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.ownershipListener:Lsun/awt/X11/OwnershipListener;
         7: .line 104
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield sun.awt.X11.XSelection.stateLock:Ljava/lang/Object;
         8: .line 126
            aload 1 /* atom */
            ifnonnull 10
         9: .line 127
            new java.lang.NullPointerException
            dup
            ldc "Null atom"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 129
      StackMap locals: sun.awt.X11.XSelection sun.awt.X11.XAtom
      StackMap stack:
            aload 0 /* this */
            aload 1 /* atom */
            putfield sun.awt.X11.XSelection.selectionAtom:Lsun/awt/X11/XAtom;
        11: .line 130
            getstatic sun.awt.X11.XSelection.table:Ljava/util/Hashtable;
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.selectionAtom:Lsun/awt/X11/XAtom;
            aload 0 /* this */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 131
            return
        end local 1 // sun.awt.X11.XAtom atom
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/awt/X11/XSelection;
            0   13     1  atom  Lsun/awt/X11/XAtom;
    MethodParameters:
      Name  Flags
      atom  

  public sun.awt.X11.XAtom getSelectionAtom();
    descriptor: ()Lsun/awt/X11/XAtom;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XSelection this
         0: .line 134
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.selectionAtom:Lsun/awt/X11/XAtom;
            areturn
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XSelection;

  synchronized boolean setOwner(java.awt.datatransfer.Transferable, java.util.Map<java.lang.Long, java.awt.datatransfer.DataFlavor>, long[], );
    descriptor: (Ljava/awt/datatransfer/Transferable;Ljava/util/Map;[JJ)Z
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=8, locals=11, args_size=5
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // java.awt.datatransfer.Transferable contents
        start local 2 // java.util.Map formatMap
        start local 3 // long[] formats
        start local 4 // long time
         0: .line 140
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
            lstore 6 /* owner */
        start local 6 // long owner
         1: .line 141
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.selectionAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lstore 8 /* selection */
        start local 8 // long selection
         2: .line 144
            lload 4 /* time */
            lconst_0
            lcmp
            ifne 4
         3: .line 145
            invokestatic sun.awt.X11.XToolkit.getCurrentServerTime:()J
            lstore 4 /* time */
         4: .line 148
      StackMap locals: long long
      StackMap stack:
            aload 0 /* this */
            aload 1 /* contents */
            putfield sun.awt.X11.XSelection.contents:Ljava/awt/datatransfer/Transferable;
         5: .line 149
            aload 0 /* this */
            aload 2 /* formatMap */
            putfield sun.awt.X11.XSelection.formatMap:Ljava/util/Map;
         6: .line 150
            aload 0 /* this */
            aload 3 /* formats */
            putfield sun.awt.X11.XSelection.formats:[J
         7: .line 151
            aload 0 /* this */
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            putfield sun.awt.X11.XSelection.appContext:Lsun/awt/AppContext;
         8: .line 152
            aload 0 /* this */
            lload 4 /* time */
            putfield sun.awt.X11.XSelection.ownershipTime:J
         9: .line 154
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        10: .line 156
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        11: .line 157
            lload 8 /* selection */
            lload 6 /* owner */
            lload 4 /* time */
        12: .line 156
            invokestatic sun.awt.X11.XlibWrapper.XSetSelectionOwner:(JJJJ)V
        13: .line 158
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        14: .line 159
            lload 8 /* selection */
        15: .line 158
            invokestatic sun.awt.X11.XlibWrapper.XGetSelectionOwner:(JJ)J
        16: .line 159
            lload 6 /* owner */
        17: .line 158
            lcmp
            ifeq 21
        18: .line 161
            aload 0 /* this */
            invokevirtual sun.awt.X11.XSelection.reset:()V
        19: .line 167
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        20: .line 162
            iconst_0
            ireturn
        21: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual sun.awt.X11.XSelection.setOwnerProp:(Z)V
        22: .line 167
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        23: .line 165
            iconst_1
            ireturn
        24: .line 166
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        25: .line 167
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        26: .line 168
            aload 10
            athrow
        end local 8 // long selection
        end local 6 // long owner
        end local 4 // long time
        end local 3 // long[] formats
        end local 2 // java.util.Map formatMap
        end local 1 // java.awt.datatransfer.Transferable contents
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lsun/awt/X11/XSelection;
            0   27     1   contents  Ljava/awt/datatransfer/Transferable;
            0   27     2  formatMap  Ljava/util/Map<Ljava/lang/Long;Ljava/awt/datatransfer/DataFlavor;>;
            0   27     3    formats  [J
            0   27     4       time  J
            1   27     6      owner  J
            2   27     8  selection  J
      Exception table:
        from    to  target  type
          10    19      24  any
          21    22      24  any
    Signature: (Ljava/awt/datatransfer/Transferable;Ljava/util/Map<Ljava/lang/Long;Ljava/awt/datatransfer/DataFlavor;>;[JJ)Z
    MethodParameters:
           Name  Flags
      contents   
      formatMap  
      formats    
      time       

  private static void waitForSelectionNotify(sun.awt.X11.WindowPropertyGetter);
    descriptor: (Lsun/awt/X11/WindowPropertyGetter;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // sun.awt.X11.WindowPropertyGetter dataGetter
         0: .line 175
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 1 /* startTime */
        start local 1 // long startTime
         1: .line 176
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         2: .line 179
      StackMap locals: long
      StackMap stack:
            invokestatic sun.awt.datatransfer.DataTransferer.getInstance:()Lsun/awt/datatransfer/DataTransferer;
            invokevirtual sun.awt.datatransfer.DataTransferer.processDataConversionRequests:()V
         3: .line 180
            ldc 250
            invokestatic sun.awt.X11.XToolkit.awtLockWait:(J)V
         4: .line 181
            getstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
            aload 0 /* dataGetter */
            if_acmpne 10
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 1 /* startTime */
            invokestatic sun.awt.UNIXToolkit.getDatatransferTimeout:()I
            i2l
            ladd
         5: .line 178
            lcmp
            iflt 2
         6: .line 182
            goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: astore 3
         8: .line 183
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         9: .line 184
            aload 3
            athrow
        10: .line 183
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        11: .line 185
            return
        end local 1 // long startTime
        end local 0 // sun.awt.X11.WindowPropertyGetter dataGetter
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0  dataGetter  Lsun/awt/X11/WindowPropertyGetter;
            1   12     1   startTime  J
      Exception table:
        from    to  target  type
           2     7       7  any
    Exceptions:
      throws java.lang.InterruptedException
    MethodParameters:
            Name  Flags
      dataGetter  

  public long[] getTargets(long);
    descriptor: (J)[J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=10, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // long time
         0: .line 192
            invokestatic sun.awt.X11.XToolkit.isToolkitThread:()Z
            ifeq 2
         1: .line 193
            new java.lang.Error
            dup
            ldc "UNIMPLEMENTED"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 196
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 3 /* targets */
        start local 3 // long[] targets
         3: .line 198
            getstatic sun.awt.X11.XSelection.lock:Ljava/lang/Object;
            dup
            astore 4
            monitorenter
         4: .line 200
            new sun.awt.X11.WindowPropertyGetter
            dup
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
         5: .line 201
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            lconst_0
            ldc 1000000
         6: .line 202
            iconst_1
            lconst_0
         7: .line 200
            invokespecial sun.awt.X11.WindowPropertyGetter.<init>:(JLsun/awt/X11/XAtom;JJZJ)V
         8: .line 199
            astore 5 /* targetsGetter */
        start local 5 // sun.awt.X11.WindowPropertyGetter targetsGetter
         9: .line 205
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        10: .line 207
            aload 5 /* targetsGetter */
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        11: .line 208
            lload 1 /* time */
            putstatic sun.awt.X11.XSelection.lastRequestServerTime:J
        12: .line 210
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        13: .line 211
            aload 0 /* this */
            invokevirtual sun.awt.X11.XSelection.getSelectionAtom:()Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        14: .line 212
            getstatic sun.awt.X11.XDataTransferer.TARGETS_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        15: .line 213
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        16: .line 214
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        17: .line 215
            lload 1 /* time */
        18: .line 210
            invokestatic sun.awt.X11.XlibWrapper.XConvertSelection:(JJJJJJ)V
        19: .line 220
            aload 5 /* targetsGetter */
            invokestatic sun.awt.X11.XSelection.waitForSelectionNotify:(Lsun/awt/X11/WindowPropertyGetter;)V
        20: .line 221
            goto 31
      StackMap locals: sun.awt.X11.XSelection long long[] java.lang.Object sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.InterruptedException
        21: pop
        22: .line 222
            iconst_0
            newarray 11
            astore 7
        23: .line 224
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        24: .line 227
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        25: .line 231
            aload 5 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        26: .line 222
            aload 4
            monitorexit
        27: aload 7
            areturn
        28: .line 223
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
        29: .line 224
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        30: .line 225
            aload 6
            athrow
        31: .line 224
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        32: .line 226
            goto 36
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 8
        34: .line 227
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        35: .line 228
            aload 8
            athrow
        36: .line 227
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        37: .line 229
            aload 5 /* targetsGetter */
            invokestatic sun.awt.X11.XSelection.getFormats:(Lsun/awt/X11/WindowPropertyGetter;)[J
            astore 3 /* targets */
        38: .line 230
            goto 42
      StackMap locals:
      StackMap stack: java.lang.Throwable
        39: astore 9
        40: .line 231
            aload 5 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        41: .line 232
            aload 9
            athrow
        42: .line 231
      StackMap locals:
      StackMap stack:
            aload 5 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        end local 5 // sun.awt.X11.WindowPropertyGetter targetsGetter
        43: .line 198
            aload 4
            monitorexit
        44: goto 47
      StackMap locals: sun.awt.X11.XSelection long long[] java.lang.Object
      StackMap stack: java.lang.Throwable
        45: aload 4
            monitorexit
        46: athrow
        47: .line 234
      StackMap locals:
      StackMap stack:
            aload 3 /* targets */
            areturn
        end local 3 // long[] targets
        end local 1 // long time
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   48     0           this  Lsun/awt/X11/XSelection;
            0   48     1           time  J
            3   48     3        targets  [J
            9   43     5  targetsGetter  Lsun/awt/X11/WindowPropertyGetter;
      Exception table:
        from    to  target  type
          19    20      21  Class java.lang.InterruptedException
          19    23      28  any
          10    24      33  any
          28    33      33  any
           9    25      39  any
          28    39      39  any
           4    27      45  any
          28    44      45  any
          45    46      45  any
    MethodParameters:
      Name  Flags
      time  

  static long[] getFormats(sun.awt.X11.WindowPropertyGetter);
    descriptor: (Lsun/awt/X11/WindowPropertyGetter;)[J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // sun.awt.X11.WindowPropertyGetter targetsGetter
         0: .line 238
            aconst_null
            astore 1 /* formats */
        start local 1 // long[] formats
         1: .line 240
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.isExecuted:()Z
            ifeq 16
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.isDisposed:()Z
            ifne 16
         2: .line 241
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualType:()J
            ldc 4
            lcmp
            ifeq 4
         3: .line 242
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualType:()J
            getstatic sun.awt.X11.XDataTransferer.TARGETS_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lcmp
            ifne 16
         4: .line 243
      StackMap locals: long[]
      StackMap stack:
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            bipush 32
            if_icmpne 16
         5: .line 247
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            istore 2 /* count */
        start local 2 // int count
         6: .line 248
            iload 2 /* count */
            ifle 16
         7: .line 249
            aload 0 /* targetsGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
            lstore 3 /* atoms */
        start local 3 // long atoms
         8: .line 250
            iload 2 /* count */
            newarray 11
            astore 1 /* formats */
         9: .line 251
            iconst_0
            istore 5 /* index */
        start local 5 // int index
        10: goto 15
        11: .line 252
      StackMap locals: int long int
      StackMap stack:
            aload 1 /* formats */
            iload 5 /* index */
        12: .line 253
            lload 3 /* atoms */
            iload 5 /* index */
            invokestatic sun.awt.X11.XAtom.getAtomSize:()I
            imul
            i2l
            ladd
            invokestatic sun.awt.X11.Native.getLong:(J)J
        13: .line 252
            lastore
        14: .line 251
            iinc 5 /* index */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* index */
            iload 2 /* count */
            if_icmplt 11
        end local 5 // int index
        end local 3 // long atoms
        end local 2 // int count
        16: .line 258
      StackMap locals:
      StackMap stack:
            aload 1 /* formats */
            ifnull 17
            aload 1 /* formats */
            goto 18
      StackMap locals:
      StackMap stack:
        17: iconst_0
            newarray 11
      StackMap locals:
      StackMap stack: long[]
        18: areturn
        end local 1 // long[] formats
        end local 0 // sun.awt.X11.WindowPropertyGetter targetsGetter
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   19     0  targetsGetter  Lsun/awt/X11/WindowPropertyGetter;
            1   19     1        formats  [J
            6   16     2          count  I
            8   16     3          atoms  J
           10   16     5          index  I
    MethodParameters:
               Name  Flags
      targetsGetter  

  public byte[] getData(long, long);
    descriptor: (JJ)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=18, args_size=3
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // long format
        start local 3 // long time
         0: .line 266
            invokestatic sun.awt.X11.XToolkit.isToolkitThread:()Z
            ifeq 2
         1: .line 267
            new java.lang.Error
            dup
            ldc "UNIMPLEMENTED"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 270
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* data */
        start local 5 // byte[] data
         3: .line 272
            getstatic sun.awt.X11.XSelection.lock:Ljava/lang/Object;
            dup
            astore 6
            monitorenter
         4: .line 274
            new sun.awt.X11.WindowPropertyGetter
            dup
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
         5: .line 275
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            lconst_0
            ldc 1000000
         6: .line 276
            iconst_0
         7: .line 277
            lconst_0
         8: .line 274
            invokespecial sun.awt.X11.WindowPropertyGetter.<init>:(JLsun/awt/X11/XAtom;JJZJ)V
         9: .line 273
            astore 7 /* dataGetter */
        start local 7 // sun.awt.X11.WindowPropertyGetter dataGetter
        10: .line 280
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        11: .line 282
            aload 7 /* dataGetter */
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        12: .line 283
            lload 3 /* time */
            putstatic sun.awt.X11.XSelection.lastRequestServerTime:J
        13: .line 285
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        14: .line 286
            aload 0 /* this */
            invokevirtual sun.awt.X11.XSelection.getSelectionAtom:()Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        15: .line 287
            lload 1 /* format */
        16: .line 288
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        17: .line 289
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        18: .line 290
            lload 3 /* time */
        19: .line 285
            invokestatic sun.awt.X11.XlibWrapper.XConvertSelection:(JJJJJJ)V
        20: .line 295
            aload 7 /* dataGetter */
            invokestatic sun.awt.X11.XSelection.waitForSelectionNotify:(Lsun/awt/X11/WindowPropertyGetter;)V
        21: .line 296
            goto 32
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.InterruptedException
        22: pop
        23: .line 297
            iconst_0
            newarray 8
            astore 9
        24: .line 299
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        25: .line 302
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        26: .line 429
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        27: .line 297
            aload 6
            monitorexit
        28: aload 9
            areturn
        29: .line 298
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8
        30: .line 299
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        31: .line 300
            aload 8
            athrow
        32: .line 299
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        33: .line 301
            goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 10
        35: .line 302
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        36: .line 303
            aload 10
            athrow
        37: .line 302
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        38: .line 305
            aload 0 /* this */
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.XSelection.validateDataGetter:(Lsun/awt/X11/WindowPropertyGetter;)V
        39: .line 308
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualType:()J
        40: .line 309
            getstatic sun.awt.X11.XDataTransferer.INCR_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        41: .line 308
            lcmp
            ifne 124
        42: .line 311
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            bipush 32
            if_icmpeq 46
        43: .line 312
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported INCR format: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        44: .line 313
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        45: .line 312
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        46: .line 316
      StackMap locals:
      StackMap stack:
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            istore 8 /* count */
        start local 8 // int count
        47: .line 318
            iload 8 /* count */
            ifgt 49
        48: .line 319
            new java.io.IOException
            dup
            ldc "INCR data is missed."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        49: .line 322
      StackMap locals: int
      StackMap stack:
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
            lstore 9 /* ptr */
        start local 9 // long ptr
        50: .line 324
            iconst_0
            istore 11 /* len */
        start local 11 // int len
        51: .line 328
            lload 9 /* ptr */
            iload 8 /* count */
            iconst_1
            isub
            invokestatic sun.awt.X11.Native.getLong:(JI)J
            lstore 12 /* longLength */
        start local 12 // long longLength
        52: .line 330
            lload 12 /* longLength */
            lconst_0
            lcmp
            ifgt 57
        53: .line 331
            iconst_0
            newarray 8
            astore 17
        54: .line 429
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        55: .line 331
            aload 6
            monitorexit
        56: aload 17
            areturn
        57: .line 334
      StackMap locals: long int long
      StackMap stack:
            lload 12 /* longLength */
            ldc 2147483647
            lcmp
            ifle 61
        58: .line 335
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Can't handle large data block: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        59: .line 336
            lload 12 /* longLength */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " bytes"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        60: .line 335
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        61: .line 339
      StackMap locals:
      StackMap stack:
            lload 12 /* longLength */
            l2i
            istore 11 /* len */
        end local 12 // long longLength
        62: .line 342
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        63: .line 344
            new java.io.ByteArrayOutputStream
            dup
            iload 11 /* len */
            invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
            astore 12 /* dataStream */
        start local 12 // java.io.ByteArrayOutputStream dataStream
        64: .line 348
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object sun.awt.X11.WindowPropertyGetter int long int java.io.ByteArrayOutputStream
      StackMap stack:
            new sun.awt.X11.WindowPropertyGetter
            dup
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        65: .line 349
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
        66: .line 350
            lconst_0
            ldc 1000000
            iconst_0
        67: .line 351
            lconst_0
        68: .line 348
            invokespecial sun.awt.X11.WindowPropertyGetter.<init>:(JLsun/awt/X11/XAtom;JJZJ)V
        69: .line 347
            astore 13 /* incrDataGetter */
        start local 13 // sun.awt.X11.WindowPropertyGetter incrDataGetter
        70: .line 354
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        71: .line 355
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        72: .line 356
            getstatic sun.awt.X11.XSelection.incrementalTransferHandler:Lsun/awt/X11/XEventDispatcher;
        73: .line 355
            invokestatic sun.awt.X11.XToolkit.addEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
        74: .line 358
            aload 13 /* incrDataGetter */
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        75: .line 361
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        76: .line 362
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        77: .line 363
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
        78: .line 361
            invokestatic sun.awt.X11.XlibWrapper.XDeleteProperty:(JJJ)V
        79: .line 368
            aload 13 /* incrDataGetter */
            invokestatic sun.awt.X11.XSelection.waitForSelectionNotify:(Lsun/awt/X11/WindowPropertyGetter;)V
        80: .line 369
            goto 96
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object sun.awt.X11.WindowPropertyGetter int long int java.io.ByteArrayOutputStream sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.InterruptedException
        81: pop
        82: .line 372
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        83: .line 373
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        84: .line 374
            getstatic sun.awt.X11.XSelection.incrementalTransferHandler:Lsun/awt/X11/XEventDispatcher;
        85: .line 373
            invokestatic sun.awt.X11.XToolkit.removeEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
        86: .line 375
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        87: .line 401
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        88: .line 370
            goto 151
        89: .line 371
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 14
        90: .line 372
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        91: .line 373
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        92: .line 374
            getstatic sun.awt.X11.XSelection.incrementalTransferHandler:Lsun/awt/X11/XEventDispatcher;
        93: .line 373
            invokestatic sun.awt.X11.XToolkit.removeEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
        94: .line 375
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        95: .line 376
            aload 14
            athrow
        96: .line 372
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic sun.awt.X11.XSelection.propertyGetter:Lsun/awt/X11/WindowPropertyGetter;
        97: .line 373
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
        98: .line 374
            getstatic sun.awt.X11.XSelection.incrementalTransferHandler:Lsun/awt/X11/XEventDispatcher;
        99: .line 373
            invokestatic sun.awt.X11.XToolkit.removeEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
       100: .line 375
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
       101: .line 378
            aload 0 /* this */
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.XSelection.validateDataGetter:(Lsun/awt/X11/WindowPropertyGetter;)V
       102: .line 380
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            bipush 8
            if_icmpeq 106
       103: .line 381
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported data format: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       104: .line 382
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       105: .line 381
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
       106: .line 385
      StackMap locals:
      StackMap stack:
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            istore 8 /* count */
       107: .line 387
            iload 8 /* count */
            ifne 110
       108: .line 401
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
       109: .line 388
            goto 151
       110: .line 391
      StackMap locals:
      StackMap stack:
            iload 8 /* count */
            ifle 117
       111: .line 392
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
            lstore 9 /* ptr */
       112: .line 393
            iconst_0
            istore 14 /* index */
        start local 14 // int index
       113: goto 116
       114: .line 394
      StackMap locals: int
      StackMap stack:
            aload 12 /* dataStream */
            lload 9 /* ptr */
            iload 14 /* index */
            i2l
            ladd
            invokestatic sun.awt.X11.Native.getByte:(J)B
            invokevirtual java.io.ByteArrayOutputStream.write:(I)V
       115: .line 393
            iinc 14 /* index */ 1
      StackMap locals:
      StackMap stack:
       116: iload 14 /* index */
            iload 8 /* count */
            if_icmplt 114
        end local 14 // int index
       117: .line 398
      StackMap locals:
      StackMap stack:
            aload 12 /* dataStream */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            astore 5 /* data */
       118: .line 400
            goto 122
      StackMap locals:
      StackMap stack: java.lang.Throwable
       119: astore 15
       120: .line 401
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
       121: .line 402
            aload 15
            athrow
       122: .line 401
      StackMap locals:
      StackMap stack:
            aload 13 /* incrDataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        end local 13 // sun.awt.X11.WindowPropertyGetter incrDataGetter
       123: .line 346
            goto 64
        end local 12 // java.io.ByteArrayOutputStream dataStream
        end local 11 // int len
        end local 9 // long ptr
        end local 8 // int count
       124: .line 405
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object sun.awt.X11.WindowPropertyGetter
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
       125: .line 407
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
       126: .line 408
            invokestatic sun.awt.X11.XWindow.getXAWTRootWindow:()Lsun/awt/X11/XRootWindow;
            invokevirtual sun.awt.X11.XRootWindow.getWindow:()J
       127: .line 409
            getstatic sun.awt.X11.XSelection.selectionPropertyAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
       128: .line 407
            invokestatic sun.awt.X11.XlibWrapper.XDeleteProperty:(JJJ)V
       129: .line 410
            goto 133
      StackMap locals:
      StackMap stack: java.lang.Throwable
       130: astore 8
       131: .line 411
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
       132: .line 412
            aload 8
            athrow
       133: .line 411
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
       134: .line 414
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            bipush 8
            if_icmpeq 138
       135: .line 415
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported data format: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
       136: .line 416
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
       137: .line 415
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
       138: .line 419
      StackMap locals:
      StackMap stack:
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            istore 8 /* count */
        start local 8 // int count
       139: .line 420
            iload 8 /* count */
            ifle 151
       140: .line 421
            iload 8 /* count */
            newarray 8
            astore 5 /* data */
       141: .line 422
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
            lstore 9 /* ptr */
        start local 9 // long ptr
       142: .line 423
            iconst_0
            istore 11 /* index */
        start local 11 // int index
       143: goto 146
       144: .line 424
      StackMap locals: int long int
      StackMap stack:
            aload 5 /* data */
            iload 11 /* index */
            lload 9 /* ptr */
            iload 11 /* index */
            i2l
            ladd
            invokestatic sun.awt.X11.Native.getByte:(J)B
            bastore
       145: .line 423
            iinc 11 /* index */ 1
      StackMap locals:
      StackMap stack:
       146: iload 11 /* index */
            iload 8 /* count */
            if_icmplt 144
        end local 11 // int index
        end local 9 // long ptr
        end local 8 // int count
       147: .line 428
            goto 151
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.Throwable
       148: astore 16
       149: .line 429
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
       150: .line 430
            aload 16
            athrow
       151: .line 429
      StackMap locals:
      StackMap stack:
            aload 7 /* dataGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        end local 7 // sun.awt.X11.WindowPropertyGetter dataGetter
       152: .line 272
            aload 6
            monitorexit
       153: goto 156
      StackMap locals: sun.awt.X11.XSelection long long byte[] java.lang.Object
      StackMap stack: java.lang.Throwable
       154: aload 6
            monitorexit
       155: athrow
       156: .line 433
      StackMap locals:
      StackMap stack:
            aload 5 /* data */
            ifnull 157
            aload 5 /* data */
            goto 158
      StackMap locals:
      StackMap stack:
       157: iconst_0
            newarray 8
      StackMap locals:
      StackMap stack: byte[]
       158: areturn
        end local 5 // byte[] data
        end local 3 // long time
        end local 1 // long format
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  159     0            this  Lsun/awt/X11/XSelection;
            0  159     1          format  J
            0  159     3            time  J
            3  159     5            data  [B
           10  152     7      dataGetter  Lsun/awt/X11/WindowPropertyGetter;
           47  124     8           count  I
           50  124     9             ptr  J
           51  124    11             len  I
           52   62    12      longLength  J
           64  124    12      dataStream  Ljava/io/ByteArrayOutputStream;
           70  123    13  incrDataGetter  Lsun/awt/X11/WindowPropertyGetter;
          113  117    14           index  I
          139  147     8           count  I
          142  147     9             ptr  J
          143  147    11           index  I
      Exception table:
        from    to  target  type
          20    21      22  Class java.lang.InterruptedException
          20    24      29  any
          11    25      34  any
          29    34      34  any
          75    80      81  Class java.lang.InterruptedException
          75    82      89  any
          70    87     119  any
          89   108     119  any
         110   119     119  any
         125   130     130  any
          10    26     148  any
          29    54     148  any
          57   148     148  any
           4    28     154  any
          29    56     154  any
          57   153     154  any
         154   155     154  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      format  
      time    

  private void validateDataGetter(sun.awt.X11.WindowPropertyGetter);
    descriptor: (Lsun/awt/X11/WindowPropertyGetter;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // sun.awt.X11.WindowPropertyGetter propertyGetter
         0: .line 443
            aload 1 /* propertyGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.isDisposed:()Z
            ifeq 2
         1: .line 444
            new java.io.IOException
            dup
            ldc "Owner failed to convert data"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 448
      StackMap locals:
      StackMap stack:
            aload 1 /* propertyGetter */
            invokevirtual sun.awt.X11.WindowPropertyGetter.isExecuted:()Z
            ifne 4
         3: .line 449
            new java.io.IOException
            dup
            ldc "Owner timed out"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 451
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.awt.X11.WindowPropertyGetter propertyGetter
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lsun/awt/X11/XSelection;
            0    5     1  propertyGetter  Lsun/awt/X11/WindowPropertyGetter;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      propertyGetter  

  boolean isOwner();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XSelection this
         0: .line 455
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.isOwner:Z
            ireturn
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XSelection;

  private void setOwnerProp(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // boolean f
         0: .line 460
            aload 0 /* this */
            iload 1 /* f */
            putfield sun.awt.X11.XSelection.isOwner:Z
         1: .line 461
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.isOwner:Z
            invokevirtual sun.awt.X11.XSelection.fireOwnershipChanges:(Z)V
         2: .line 462
            return
        end local 1 // boolean f
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/awt/X11/XSelection;
            0    3     1     f  Z
    MethodParameters:
      Name  Flags
      f     

  private void lostOwnership();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.X11.XSelection this
         0: .line 465
            aload 0 /* this */
            iconst_0
            invokevirtual sun.awt.X11.XSelection.setOwnerProp:(Z)V
         1: .line 466
            return
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XSelection;

  public synchronized void reset();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.awt.X11.XSelection this
         0: .line 469
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.contents:Ljava/awt/datatransfer/Transferable;
         1: .line 470
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.formatMap:Ljava/util/Map;
         2: .line 471
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.formats:[J
         3: .line 472
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.appContext:Lsun/awt/AppContext;
         4: .line 473
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XSelection.ownershipTime:J
         5: .line 474
            return
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/awt/X11/XSelection;

  private boolean convertAndStore(long, long, long);
    descriptor: (JJJ)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=14, args_size=4
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // long requestor
        start local 3 // long format
        start local 5 // long property
         0: .line 480
            bipush 8
            istore 7 /* dataFormat */
        start local 7 // int dataFormat
         1: .line 481
            aconst_null
            astore 8 /* byteData */
        start local 8 // byte[] byteData
         2: .line 482
            lconst_0
            lstore 9 /* nativeDataPtr */
        start local 9 // long nativeDataPtr
         3: .line 483
            iconst_0
            istore 11 /* count */
        start local 11 // int count
         4: .line 486
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.appContext:Lsun/awt/AppContext;
            invokestatic sun.awt.SunToolkit.insertTargetMapping:(Ljava/lang/Object;Lsun/awt/AppContext;)V
         5: .line 488
            invokestatic sun.awt.datatransfer.DataTransferer.getInstance:()Lsun/awt/datatransfer/DataTransferer;
            aload 0 /* this */
         6: .line 489
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.contents:Ljava/awt/datatransfer/Transferable;
         7: .line 490
            lload 3 /* format */
         8: .line 491
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.formatMap:Ljava/util/Map;
         9: .line 492
            invokestatic sun.awt.X11.XToolkit.isToolkitThread:()Z
        10: .line 488
            invokevirtual sun.awt.datatransfer.DataTransferer.convertData:(Ljava/lang/Object;Ljava/awt/datatransfer/Transferable;JLjava/util/Map;Z)[B
            astore 8 /* byteData */
        11: .line 493
            goto 14
      StackMap locals: sun.awt.X11.XSelection long long long int byte[] long int
      StackMap stack: java.io.IOException
        12: pop
        13: .line 494
            iconst_0
            ireturn
        14: .line 497
      StackMap locals:
      StackMap stack:
            aload 8 /* byteData */
            ifnonnull 16
        15: .line 498
            iconst_0
            ireturn
        16: .line 501
      StackMap locals:
      StackMap stack:
            aload 8 /* byteData */
            arraylength
            istore 11 /* count */
        17: .line 504
            iload 11 /* count */
            ifle 30
        18: .line 505
            iload 11 /* count */
            getstatic sun.awt.X11.XSelection.MAX_PROPERTY_SIZE:I
            if_icmpgt 21
        19: .line 506
            aload 8 /* byteData */
            invokestatic sun.awt.X11.Native.toData:([B)J
            lstore 9 /* nativeDataPtr */
        20: .line 507
            goto 30
        21: .line 509
      StackMap locals:
      StackMap stack:
            new sun.awt.X11.XSelection$IncrementalDataProvider
            lload 1 /* requestor */
            lload 5 /* property */
            lload 3 /* format */
            bipush 8
        22: .line 510
            aload 8 /* byteData */
        23: .line 509
            invokespecial sun.awt.X11.XSelection$IncrementalDataProvider.<init>:(JJJI[B)V
        24: .line 513
            getstatic sun.awt.X11.XlibWrapper.unsafe:Ljdk/internal/misc/Unsafe;
            invokestatic sun.awt.X11.XAtom.getAtomSize:()I
            i2l
            invokevirtual jdk.internal.misc.Unsafe.allocateMemory:(J)J
        25: .line 512
            lstore 9 /* nativeDataPtr */
        26: .line 515
            lload 9 /* nativeDataPtr */
            iload 11 /* count */
            i2l
            invokestatic sun.awt.X11.Native.putLong:(JJ)V
        27: .line 517
            getstatic sun.awt.X11.XDataTransferer.INCR_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lstore 3 /* format */
        28: .line 518
            bipush 32
            istore 7 /* dataFormat */
        29: .line 519
            iconst_1
            istore 11 /* count */
        30: .line 524
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        31: .line 526
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 1 /* requestor */
            lload 5 /* property */
        32: .line 527
            lload 3 /* format */
            iload 7 /* dataFormat */
        33: .line 528
            iconst_0
        34: .line 529
            lload 9 /* nativeDataPtr */
            iload 11 /* count */
        35: .line 526
            invokestatic sun.awt.X11.XlibWrapper.XChangeProperty:(JJJJIIJI)V
        36: .line 530
            goto 40
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: astore 12
        38: .line 531
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        39: .line 532
            aload 12
            athrow
        40: .line 531
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        41: .line 533
            goto 47
      StackMap locals:
      StackMap stack: java.lang.Throwable
        42: astore 13
        43: .line 534
            lload 9 /* nativeDataPtr */
            lconst_0
            lcmp
            ifeq 46
        44: .line 535
            getstatic sun.awt.X11.XlibWrapper.unsafe:Ljdk/internal/misc/Unsafe;
            lload 9 /* nativeDataPtr */
            invokevirtual jdk.internal.misc.Unsafe.freeMemory:(J)V
        45: .line 536
            lconst_0
            lstore 9 /* nativeDataPtr */
        46: .line 538
      StackMap locals: sun.awt.X11.XSelection long long long int byte[] long int top java.lang.Throwable
      StackMap stack:
            aload 13
            athrow
        47: .line 534
      StackMap locals: sun.awt.X11.XSelection long long long int byte[] long int
      StackMap stack:
            lload 9 /* nativeDataPtr */
            lconst_0
            lcmp
            ifeq 50
        48: .line 535
            getstatic sun.awt.X11.XlibWrapper.unsafe:Ljdk/internal/misc/Unsafe;
            lload 9 /* nativeDataPtr */
            invokevirtual jdk.internal.misc.Unsafe.freeMemory:(J)V
        49: .line 536
            lconst_0
            lstore 9 /* nativeDataPtr */
        50: .line 540
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 11 // int count
        end local 9 // long nativeDataPtr
        end local 8 // byte[] byteData
        end local 7 // int dataFormat
        end local 5 // long property
        end local 3 // long format
        end local 1 // long requestor
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   51     0           this  Lsun/awt/X11/XSelection;
            0   51     1      requestor  J
            0   51     3         format  J
            0   51     5       property  J
            1   51     7     dataFormat  I
            2   51     8       byteData  [B
            3   51     9  nativeDataPtr  J
            4   51    11          count  I
      Exception table:
        from    to  target  type
           4    11      12  Class java.io.IOException
          31    37      37  any
          17    42      42  any
    MethodParameters:
           Name  Flags
      requestor  
      format     
      property   

  private void handleSelectionRequest(sun.awt.X11.XSelectionRequestEvent);
    descriptor: (Lsun/awt/X11/XSelectionRequestEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // sun.awt.X11.XSelectionRequestEvent xsre
         0: .line 544
            aload 1 /* xsre */
            invokevirtual sun.awt.X11.XSelectionRequestEvent.get_property:()J
            lstore 2 /* property */
        start local 2 // long property
         1: .line 545
            aload 1 /* xsre */
            invokevirtual sun.awt.X11.XSelectionRequestEvent.get_requestor:()J
            lstore 4 /* requestor */
        start local 4 // long requestor
         2: .line 546
            aload 1 /* xsre */
            invokevirtual sun.awt.X11.XSelectionRequestEvent.get_time:()J
            lstore 6 /* requestTime */
        start local 6 // long requestTime
         3: .line 547
            aload 1 /* xsre */
            invokevirtual sun.awt.X11.XSelectionRequestEvent.get_target:()J
            lstore 8 /* format */
        start local 8 // long format
         4: .line 548
            iconst_0
            istore 10 /* conversionSucceeded */
        start local 10 // boolean conversionSucceeded
         5: .line 550
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.ownershipTime:J
            lconst_0
            lcmp
            ifeq 16
         6: .line 551
            lload 6 /* requestTime */
            lconst_0
            lcmp
            ifeq 7
            lload 6 /* requestTime */
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.ownershipTime:J
            lcmp
            iflt 16
         7: .line 554
      StackMap locals: sun.awt.X11.XSelection sun.awt.X11.XSelectionRequestEvent long long long long int
      StackMap stack:
            lload 8 /* format */
            getstatic sun.awt.X11.XDataTransferer.MULTIPLE_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lcmp
            ifne 10
         8: .line 555
            aload 0 /* this */
            lload 4 /* requestor */
            lload 2 /* property */
            invokevirtual sun.awt.X11.XSelection.handleMultipleRequest:(JJ)Z
            istore 10 /* conversionSucceeded */
         9: .line 556
            goto 16
        10: .line 558
      StackMap locals:
      StackMap stack:
            lload 2 /* property */
            lconst_0
            lcmp
            ifne 12
        11: .line 559
            lload 8 /* format */
            lstore 2 /* property */
        12: .line 562
      StackMap locals:
      StackMap stack:
            lload 8 /* format */
            getstatic sun.awt.X11.XDataTransferer.TARGETS_ATOM:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lcmp
            ifne 15
        13: .line 563
            aload 0 /* this */
            lload 2 /* property */
            lload 4 /* requestor */
            invokevirtual sun.awt.X11.XSelection.handleTargetsRequest:(JJ)Z
            istore 10 /* conversionSucceeded */
        14: .line 564
            goto 16
        15: .line 565
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 4 /* requestor */
            lload 8 /* format */
            lload 2 /* property */
            invokevirtual sun.awt.X11.XSelection.convertAndStore:(JJJ)Z
            istore 10 /* conversionSucceeded */
        16: .line 570
      StackMap locals:
      StackMap stack:
            iload 10 /* conversionSucceeded */
            ifne 18
        17: .line 572
            lconst_0
            lstore 2 /* property */
        18: .line 575
      StackMap locals:
      StackMap stack:
            new sun.awt.X11.XSelectionEvent
            dup
            invokespecial sun.awt.X11.XSelectionEvent.<init>:()V
            astore 11 /* xse */
        start local 11 // sun.awt.X11.XSelectionEvent xse
        19: .line 577
            aload 11 /* xse */
            bipush 31
            invokevirtual sun.awt.X11.XSelectionEvent.set_type:(I)V
        20: .line 578
            aload 11 /* xse */
            iconst_1
            invokevirtual sun.awt.X11.XSelectionEvent.set_send_event:(Z)V
        21: .line 579
            aload 11 /* xse */
            lload 4 /* requestor */
            invokevirtual sun.awt.X11.XSelectionEvent.set_requestor:(J)V
        22: .line 580
            aload 11 /* xse */
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.selectionAtom:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            invokevirtual sun.awt.X11.XSelectionEvent.set_selection:(J)V
        23: .line 581
            aload 11 /* xse */
            lload 8 /* format */
            invokevirtual sun.awt.X11.XSelectionEvent.set_target:(J)V
        24: .line 582
            aload 11 /* xse */
            lload 2 /* property */
            invokevirtual sun.awt.X11.XSelectionEvent.set_property:(J)V
        25: .line 583
            aload 11 /* xse */
            lload 6 /* requestTime */
            invokevirtual sun.awt.X11.XSelectionEvent.set_time:(J)V
        26: .line 585
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        27: .line 587
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 4 /* requestor */
            iconst_0
        28: .line 588
            lconst_0
            aload 11 /* xse */
            getfield sun.awt.X11.XSelectionEvent.pData:J
        29: .line 587
            invokestatic sun.awt.X11.XlibWrapper.XSendEvent:(JJZJJ)I
            pop
        30: .line 589
            goto 34
      StackMap locals: sun.awt.X11.XSelection sun.awt.X11.XSelectionRequestEvent long long long long int sun.awt.X11.XSelectionEvent
      StackMap stack: java.lang.Throwable
        31: astore 12
        32: .line 590
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        33: .line 591
            aload 12
            athrow
        34: .line 590
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        35: .line 592
            goto 39
      StackMap locals:
      StackMap stack: java.lang.Throwable
        36: astore 13
        37: .line 593
            aload 11 /* xse */
            invokevirtual sun.awt.X11.XSelectionEvent.dispose:()V
        38: .line 594
            aload 13
            athrow
        39: .line 593
      StackMap locals:
      StackMap stack:
            aload 11 /* xse */
            invokevirtual sun.awt.X11.XSelectionEvent.dispose:()V
        40: .line 595
            return
        end local 11 // sun.awt.X11.XSelectionEvent xse
        end local 10 // boolean conversionSucceeded
        end local 8 // long format
        end local 6 // long requestTime
        end local 4 // long requestor
        end local 2 // long property
        end local 1 // sun.awt.X11.XSelectionRequestEvent xsre
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   41     0                 this  Lsun/awt/X11/XSelection;
            0   41     1                 xsre  Lsun/awt/X11/XSelectionRequestEvent;
            1   41     2             property  J
            2   41     4            requestor  J
            3   41     6          requestTime  J
            4   41     8               format  J
            5   41    10  conversionSucceeded  Z
           19   41    11                  xse  Lsun/awt/X11/XSelectionEvent;
      Exception table:
        from    to  target  type
          27    31      31  any
          19    36      36  any
    MethodParameters:
      Name  Flags
      xsre  

  private boolean handleMultipleRequest(long, long);
    descriptor: (JJ)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=18, args_size=3
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // long requestor
        start local 3 // long property
         0: .line 598
            lconst_0
            lload 3 /* property */
            lcmp
            ifne 2
         1: .line 600
            iconst_0
            ireturn
         2: .line 603
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* conversionSucceeded */
        start local 5 // boolean conversionSucceeded
         3: .line 607
            new sun.awt.X11.WindowPropertyGetter
            dup
            lload 1 /* requestor */
            lload 3 /* property */
            invokestatic sun.awt.X11.XAtom.get:(J)Lsun/awt/X11/XAtom;
         4: .line 608
            lconst_0
            ldc 1000000
            iconst_0
         5: .line 609
            lconst_0
         6: .line 607
            invokespecial sun.awt.X11.WindowPropertyGetter.<init>:(JLsun/awt/X11/XAtom;JJZJ)V
         7: .line 606
            astore 6 /* wpg */
        start local 6 // sun.awt.X11.WindowPropertyGetter wpg
         8: .line 611
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.execute:()I
            pop
         9: .line 613
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
            bipush 32
            if_icmpne 43
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            iconst_2
            irem
            ifne 43
        10: .line 614
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
            iconst_2
            idiv
            i2l
            lstore 7 /* count */
        start local 7 // long count
        11: .line 615
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
            lstore 9 /* pairsPtr */
        start local 9 // long pairsPtr
        12: .line 616
            iconst_0
            istore 11 /* writeBack */
        start local 11 // boolean writeBack
        13: .line 618
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        14: goto 21
        15: .line 619
      StackMap locals: sun.awt.X11.XSelection long long int sun.awt.X11.WindowPropertyGetter long long int int
      StackMap stack:
            lload 9 /* pairsPtr */
            iconst_2
            iload 12 /* i */
            imul
            invokestatic sun.awt.X11.Native.getLong:(JI)J
            lstore 13 /* target */
        start local 13 // long target
        16: .line 620
            lload 9 /* pairsPtr */
            iconst_2
            iload 12 /* i */
            imul
            iconst_1
            iadd
            invokestatic sun.awt.X11.Native.getLong:(JI)J
            lstore 15 /* prop */
        start local 15 // long prop
        17: .line 622
            aload 0 /* this */
            lload 1 /* requestor */
            lload 13 /* target */
            lload 15 /* prop */
            invokevirtual sun.awt.X11.XSelection.convertAndStore:(JJJ)Z
            ifne 20
        18: .line 625
            lload 9 /* pairsPtr */
            iconst_2
            iload 12 /* i */
            imul
            lconst_0
            invokestatic sun.awt.X11.Native.putLong:(JIJ)V
        19: .line 626
            iconst_1
            istore 11 /* writeBack */
        end local 15 // long prop
        end local 13 // long target
        20: .line 618
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 12 /* i */
            i2l
            lload 7 /* count */
            lcmp
            iflt 15
        end local 12 // int i
        22: .line 629
            iload 11 /* writeBack */
            ifeq 38
        23: .line 630
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        24: .line 632
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        25: .line 633
            lload 1 /* requestor */
        26: .line 634
            lload 3 /* property */
        27: .line 635
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualType:()J
        28: .line 636
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualFormat:()I
        29: .line 637
            iconst_0
        30: .line 638
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getData:()J
        31: .line 639
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getNumberOfItems:()I
        32: .line 632
            invokestatic sun.awt.X11.XlibWrapper.XChangeProperty:(JJJJIIJI)V
        33: .line 640
            goto 37
      StackMap locals: sun.awt.X11.XSelection long long int sun.awt.X11.WindowPropertyGetter long long int
      StackMap stack: java.lang.Throwable
        34: astore 12
        35: .line 641
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        36: .line 642
            aload 12
            athrow
        37: .line 641
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        38: .line 644
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* conversionSucceeded */
        end local 11 // boolean writeBack
        end local 9 // long pairsPtr
        end local 7 // long count
        39: .line 646
            goto 43
      StackMap locals: sun.awt.X11.XSelection long long int sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.Throwable
        40: astore 17
        41: .line 647
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        42: .line 648
            aload 17
            athrow
        43: .line 647
      StackMap locals:
      StackMap stack:
            aload 6 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        44: .line 650
            iload 5 /* conversionSucceeded */
            ireturn
        end local 6 // sun.awt.X11.WindowPropertyGetter wpg
        end local 5 // boolean conversionSucceeded
        end local 3 // long property
        end local 1 // long requestor
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   45     0                 this  Lsun/awt/X11/XSelection;
            0   45     1            requestor  J
            0   45     3             property  J
            3   45     5  conversionSucceeded  Z
            8   45     6                  wpg  Lsun/awt/X11/WindowPropertyGetter;
           11   39     7                count  J
           12   39     9             pairsPtr  J
           13   39    11            writeBack  Z
           14   22    12                    i  I
           16   20    13               target  J
           17   20    15                 prop  J
      Exception table:
        from    to  target  type
          24    34      34  any
           8    40      40  any
    MethodParameters:
           Name  Flags
      requestor  final
      property   

  private boolean handleTargetsRequest(long, long);
    descriptor: (JJ)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=13, locals=12, args_size=3
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // long property
        start local 3 // long requestor
         0: .line 656
            iconst_0
            istore 5 /* conversionSucceeded */
        start local 5 // boolean conversionSucceeded
         1: .line 658
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.formats:[J
            astore 6 /* formatsLocal */
        start local 6 // long[] formatsLocal
         2: .line 660
            aload 6 /* formatsLocal */
            ifnonnull 4
         3: .line 661
            new java.lang.IllegalStateException
            dup
            ldc "Not an owner."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 664
      StackMap locals: int long[]
      StackMap stack:
            lconst_0
            lstore 7 /* nativeDataPtr */
        start local 7 // long nativeDataPtr
         5: .line 667
            aload 6 /* formatsLocal */
            arraylength
            istore 9 /* count */
        start local 9 // int count
         6: .line 670
            iload 9 /* count */
            ifle 9
         7: .line 671
            iload 9 /* count */
            invokestatic sun.awt.X11.Native.allocateLongArray:(I)J
            lstore 7 /* nativeDataPtr */
         8: .line 672
            lload 7 /* nativeDataPtr */
            aload 6 /* formatsLocal */
            invokestatic sun.awt.X11.Native.put:(J[J)V
         9: .line 675
      StackMap locals: long int
      StackMap stack:
            iconst_1
            istore 5 /* conversionSucceeded */
        10: .line 677
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        11: .line 679
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 3 /* requestor */
        12: .line 680
            lload 1 /* property */
            ldc 4
            bipush 32
        13: .line 681
            iconst_0
        14: .line 682
            lload 7 /* nativeDataPtr */
            iload 9 /* count */
        15: .line 679
            invokestatic sun.awt.X11.XlibWrapper.XChangeProperty:(JJJJIIJI)V
        16: .line 683
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 10
        18: .line 684
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        19: .line 685
            aload 10
            athrow
        20: .line 684
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        end local 9 // int count
        21: .line 686
            goto 27
      StackMap locals: sun.awt.X11.XSelection long long int long[] long
      StackMap stack: java.lang.Throwable
        22: astore 11
        23: .line 687
            lload 7 /* nativeDataPtr */
            lconst_0
            lcmp
            ifeq 26
        24: .line 688
            getstatic sun.awt.X11.XlibWrapper.unsafe:Ljdk/internal/misc/Unsafe;
            lload 7 /* nativeDataPtr */
            invokevirtual jdk.internal.misc.Unsafe.freeMemory:(J)V
        25: .line 689
            lconst_0
            lstore 7 /* nativeDataPtr */
        26: .line 691
      StackMap locals: sun.awt.X11.XSelection long long int long[] long top top java.lang.Throwable
      StackMap stack:
            aload 11
            athrow
        27: .line 687
      StackMap locals: sun.awt.X11.XSelection long long int long[] long
      StackMap stack:
            lload 7 /* nativeDataPtr */
            lconst_0
            lcmp
            ifeq 30
        28: .line 688
            getstatic sun.awt.X11.XlibWrapper.unsafe:Ljdk/internal/misc/Unsafe;
            lload 7 /* nativeDataPtr */
            invokevirtual jdk.internal.misc.Unsafe.freeMemory:(J)V
        29: .line 689
            lconst_0
            lstore 7 /* nativeDataPtr */
        30: .line 692
      StackMap locals:
      StackMap stack:
            iload 5 /* conversionSucceeded */
            ireturn
        end local 7 // long nativeDataPtr
        end local 6 // long[] formatsLocal
        end local 5 // boolean conversionSucceeded
        end local 3 // long requestor
        end local 1 // long property
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   31     0                 this  Lsun/awt/X11/XSelection;
            0   31     1             property  J
            0   31     3            requestor  J
            1   31     5  conversionSucceeded  Z
            2   31     6         formatsLocal  [J
            5   31     7        nativeDataPtr  J
            6   21     9                count  I
      Exception table:
        from    to  target  type
          11    17      17  any
           5    22      22  any
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
           Name  Flags
      property   
      requestor  

  private void fireOwnershipChanges(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // boolean isOwner
         0: .line 696
            aconst_null
            astore 2 /* l */
        start local 2 // sun.awt.X11.OwnershipListener l
         1: .line 697
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.stateLock:Ljava/lang/Object;
            dup
            astore 3
            monitorenter
         2: .line 698
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.ownershipListener:Lsun/awt/X11/OwnershipListener;
            astore 2 /* l */
         3: .line 697
            aload 3
            monitorexit
         4: goto 7
      StackMap locals: sun.awt.X11.XSelection int sun.awt.X11.OwnershipListener java.lang.Object
      StackMap stack: java.lang.Throwable
         5: aload 3
            monitorexit
         6: athrow
         7: .line 700
      StackMap locals:
      StackMap stack:
            aload 2 /* l */
            ifnull 9
         8: .line 701
            aload 2 /* l */
            iload 1 /* isOwner */
            invokeinterface sun.awt.X11.OwnershipListener.ownershipChanged:(Z)V
         9: .line 703
      StackMap locals:
      StackMap stack:
            return
        end local 2 // sun.awt.X11.OwnershipListener l
        end local 1 // boolean isOwner
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lsun/awt/X11/XSelection;
            0   10     1  isOwner  Z
            1   10     2        l  Lsun/awt/X11/OwnershipListener;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
         Name  Flags
      isOwner  final

  void registerOwershipListener(sun.awt.X11.OwnershipListener);
    descriptor: (Lsun/awt/X11/OwnershipListener;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.awt.X11.XSelection this
        start local 1 // sun.awt.X11.OwnershipListener l
         0: .line 706
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.stateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 707
            aload 0 /* this */
            aload 1 /* l */
            putfield sun.awt.X11.XSelection.ownershipListener:Lsun/awt/X11/OwnershipListener;
         2: .line 706
            aload 2
            monitorexit
         3: goto 6
      StackMap locals: sun.awt.X11.XSelection sun.awt.X11.OwnershipListener java.lang.Object
      StackMap stack: java.lang.Throwable
         4: aload 2
            monitorexit
         5: athrow
         6: .line 709
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.awt.X11.OwnershipListener l
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/awt/X11/XSelection;
            0    7     1     l  Lsun/awt/X11/OwnershipListener;
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
      Name  Flags
      l     

  void unregisterOwnershipListener();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.awt.X11.XSelection this
         0: .line 712
            aload 0 /* this */
            getfield sun.awt.X11.XSelection.stateLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 713
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XSelection.ownershipListener:Lsun/awt/X11/OwnershipListener;
         2: .line 712
            aload 1
            monitorexit
         3: goto 6
      StackMap locals: sun.awt.X11.XSelection java.lang.Object
      StackMap stack: java.lang.Throwable
         4: aload 1
            monitorexit
         5: athrow
         6: .line 715
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.awt.X11.XSelection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/awt/X11/XSelection;
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
}
SourceFile: "XSelection.java"
NestMembers:
  sun.awt.X11.XSelection$IncrementalDataProvider  sun.awt.X11.XSelection$IncrementalTransferHandler  sun.awt.X11.XSelection$SelectionEventHandler
InnerClasses:
  private IncrementalDataProvider = sun.awt.X11.XSelection$IncrementalDataProvider of sun.awt.X11.XSelection
  private IncrementalTransferHandler = sun.awt.X11.XSelection$IncrementalTransferHandler of sun.awt.X11.XSelection
  private SelectionEventHandler = sun.awt.X11.XSelection$SelectionEventHandler of sun.awt.X11.XSelection