public class sun.awt.X11.XlibUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.awt.X11.XlibUtil
  super_class: java.lang.Object
{
  static java.lang.Boolean isShapingSupported;
    descriptor: Ljava/lang/Boolean;
    flags: (0x0008) ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 381
            aconst_null
            putstatic sun.awt.X11.XlibUtil.isShapingSupported:Ljava/lang/Boolean;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XlibUtil this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 53
            return
        end local 0 // sun.awt.X11.XlibUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XlibUtil;

  public static long getRootWindow(int);
    descriptor: (I)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // int screenNumber
         0: .line 60
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 64
            invokestatic java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment:()Ljava/awt/GraphicsEnvironment;
         2: .line 63
            checkcast sun.awt.X11GraphicsEnvironment
            astore 1 /* x11ge */
        start local 1 // sun.awt.X11GraphicsEnvironment x11ge
         3: .line 65
            aload 1 /* x11ge */
            invokevirtual sun.awt.X11GraphicsEnvironment.runningXinerama:()Z
            ifeq 7
         4: .line 68
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lconst_0
            invokestatic sun.awt.X11.XlibWrapper.RootWindow:(JJ)J
            lstore 3
         5: .line 77
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         6: .line 68
            lload 3
            lreturn
         7: .line 72
      StackMap locals: sun.awt.X11GraphicsEnvironment
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            iload 0 /* screenNumber */
            i2l
            invokestatic sun.awt.X11.XlibWrapper.RootWindow:(JJ)J
            lstore 3
         8: .line 77
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         9: .line 72
            lload 3
            lreturn
        end local 1 // sun.awt.X11GraphicsEnvironment x11ge
        10: .line 76
      StackMap locals: int
      StackMap stack: java.lang.Throwable
            astore 2
        11: .line 77
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        12: .line 78
            aload 2
            athrow
        end local 0 // int screenNumber
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   13     0  screenNumber  I
            3   10     1         x11ge  Lsun/awt/X11GraphicsEnvironment;
      Exception table:
        from    to  target  type
           1     5      10  any
           7     8      10  any
    MethodParameters:
              Name  Flags
      screenNumber  

  static boolean isRoot(long, long);
    descriptor: (JJ)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // long rootCandidate
        start local 2 // long screenNumber
         0: .line 88
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 91
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         2: .line 92
            lload 2 /* screenNumber */
         3: .line 91
            invokestatic sun.awt.X11.XlibWrapper.RootWindow:(JJ)J
            lstore 4 /* root */
        start local 4 // long root
         4: .line 93
            goto 8
        end local 4 // long root
         5: .line 95
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 6
         6: .line 96
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         7: .line 97
            aload 6
            athrow
        start local 4 // long root
         8: .line 96
      StackMap locals: long
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         9: .line 99
            lload 4 /* root */
            lload 0 /* rootCandidate */
            lcmp
            ifne 10
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        10: iconst_0
            ireturn
        end local 4 // long root
        end local 2 // long screenNumber
        end local 0 // long rootCandidate
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0  rootCandidate  J
            0   11     2   screenNumber  J
            4    5     4           root  J
            8   11     4           root  J
      Exception table:
        from    to  target  type
           1     5       5  any
    MethodParameters:
               Name  Flags
      rootCandidate  
      screenNumber   

  static java.awt.Rectangle getWindowGeometry(long, int);
    descriptor: (JI)Ljava/awt/Rectangle;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=18, locals=12, args_size=2
        start local 0 // long window
        start local 2 // int scale
         0: .line 107
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 110
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         2: .line 111
            lload 0 /* window */
         3: .line 112
            getstatic sun.awt.X11.XlibWrapper.larg1:J
         4: .line 113
            getstatic sun.awt.X11.XlibWrapper.larg2:J
         5: .line 114
            getstatic sun.awt.X11.XlibWrapper.larg3:J
         6: .line 115
            getstatic sun.awt.X11.XlibWrapper.larg4:J
         7: .line 116
            getstatic sun.awt.X11.XlibWrapper.larg5:J
         8: .line 117
            getstatic sun.awt.X11.XlibWrapper.larg6:J
         9: .line 118
            getstatic sun.awt.X11.XlibWrapper.larg7:J
        10: .line 110
            invokestatic sun.awt.X11.XlibWrapper.XGetGeometry:(JJJJJJJJJ)I
            istore 3 /* res */
        start local 3 // int res
        11: .line 119
            iload 3 /* res */
            ifne 14
        12: .line 135
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        13: .line 121
            aconst_null
            areturn
        14: .line 124
      StackMap locals: int
      StackMap stack:
            getstatic sun.awt.X11.XlibWrapper.larg2:J
            invokestatic sun.awt.X11.Native.getInt:(J)I
            istore 4 /* x */
        start local 4 // int x
        15: .line 125
            getstatic sun.awt.X11.XlibWrapper.larg3:J
            invokestatic sun.awt.X11.Native.getInt:(J)I
            istore 5 /* y */
        start local 5 // int y
        16: .line 126
            getstatic sun.awt.X11.XlibWrapper.larg4:J
            invokestatic sun.awt.X11.Native.getUInt:(J)J
            lstore 6 /* width */
        start local 6 // long width
        17: .line 127
            getstatic sun.awt.X11.XlibWrapper.larg5:J
            invokestatic sun.awt.X11.Native.getUInt:(J)J
            lstore 8 /* height */
        start local 8 // long height
        18: .line 129
            new java.awt.Rectangle
            dup
            iload 4 /* x */
            iload 2 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
            iload 5 /* y */
            iload 2 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
        19: .line 130
            lload 6 /* width */
            l2i
            iload 2 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
        20: .line 131
            lload 8 /* height */
            l2i
            iload 2 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
        21: .line 129
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 11
        22: .line 135
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        23: .line 129
            aload 11
            areturn
        end local 8 // long height
        end local 6 // long width
        end local 5 // int y
        end local 4 // int x
        end local 3 // int res
        24: .line 134
      StackMap locals: long int
      StackMap stack: java.lang.Throwable
            astore 10
        25: .line 135
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        26: .line 136
            aload 10
            athrow
        end local 2 // int scale
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   27     0  window  J
            0   27     2   scale  I
           11   24     3     res  I
           15   24     4       x  I
           16   24     5       y  I
           17   24     6   width  J
           18   24     8  height  J
      Exception table:
        from    to  target  type
           1    12      24  any
          14    22      24  any
    MethodParameters:
        Name  Flags
      window  
      scale   

  static java.awt.Point translateCoordinates(long, long, java.awt.Point, int);
    descriptor: (JJLjava/awt/Point;I)Ljava/awt/Point;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=11, args_size=4
        start local 0 // long src
        start local 2 // long dst
        start local 4 // java.awt.Point p
        start local 5 // int scale
         0: .line 145
            aconst_null
            astore 6 /* translated */
        start local 6 // java.awt.Point translated
         1: .line 147
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         2: .line 151
            new sun.awt.X11.XTranslateCoordinates
            dup
            lload 0 /* src */
            lload 2 /* dst */
            aload 4 /* p */
            getfield java.awt.Point.x:I
            iload 5 /* scale */
            imul
            aload 4 /* p */
            getfield java.awt.Point.y:I
            iload 5 /* scale */
            imul
            invokespecial sun.awt.X11.XTranslateCoordinates.<init>:(JJII)V
         3: .line 150
            astore 7 /* xtc */
        start local 7 // sun.awt.X11.XTranslateCoordinates xtc
         4: .line 154
            aload 7 /* xtc */
            invokestatic sun.awt.X11.XErrorHandler$IgnoreBadWindowHandler.getInstance:()Lsun/awt/X11/XErrorHandler$IgnoreBadWindowHandler;
            invokevirtual sun.awt.X11.XTranslateCoordinates.execute:(Lsun/awt/X11/XErrorHandler;)I
            istore 8 /* status */
        start local 8 // int status
         5: .line 155
            iload 8 /* status */
            ifeq 15
         6: .line 156
            getstatic sun.awt.X11.XErrorHandlerUtil.saved_error:Lsun/awt/X11/XErrorEvent;
            ifnull 8
         7: .line 157
            getstatic sun.awt.X11.XErrorHandlerUtil.saved_error:Lsun/awt/X11/XErrorEvent;
            invokevirtual sun.awt.X11.XErrorEvent.get_error_code:()B
            ifne 15
         8: .line 159
      StackMap locals: java.awt.Point sun.awt.X11.XTranslateCoordinates int
      StackMap stack:
            new java.awt.Point
            dup
            aload 7 /* xtc */
            invokevirtual sun.awt.X11.XTranslateCoordinates.get_dest_x:()I
            iload 5 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
         9: .line 160
            aload 7 /* xtc */
            invokevirtual sun.awt.X11.XTranslateCoordinates.get_dest_y:()I
            iload 5 /* scale */
            invokestatic sun.awt.X11.XlibUtil.scaleDown:(II)I
        10: .line 159
            invokespecial java.awt.Point.<init>:(II)V
            astore 6 /* translated */
        end local 8 // int status
        11: .line 162
            goto 15
        12: .line 164
      StackMap locals: long long java.awt.Point int java.awt.Point sun.awt.X11.XTranslateCoordinates
      StackMap stack: java.lang.Throwable
            astore 9
        13: .line 165
            aload 7 /* xtc */
            invokevirtual sun.awt.X11.XTranslateCoordinates.dispose:()V
        14: .line 166
            aload 9
            athrow
        15: .line 165
      StackMap locals:
      StackMap stack:
            aload 7 /* xtc */
            invokevirtual sun.awt.X11.XTranslateCoordinates.dispose:()V
        end local 7 // sun.awt.X11.XTranslateCoordinates xtc
        16: .line 167
            goto 20
        17: .line 169
      StackMap locals: long long java.awt.Point int java.awt.Point
      StackMap stack: java.lang.Throwable
            astore 10
        18: .line 170
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        19: .line 171
            aload 10
            athrow
        20: .line 170
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        21: .line 173
            aload 6 /* translated */
            areturn
        end local 6 // java.awt.Point translated
        end local 5 // int scale
        end local 4 // java.awt.Point p
        end local 2 // long dst
        end local 0 // long src
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0         src  J
            0   22     2         dst  J
            0   22     4           p  Ljava/awt/Point;
            0   22     5       scale  I
            1   22     6  translated  Ljava/awt/Point;
            4   16     7         xtc  Lsun/awt/X11/XTranslateCoordinates;
            5   11     8      status  I
      Exception table:
        from    to  target  type
           4    12      12  any
           2    17      17  any
    MethodParameters:
       Name  Flags
      src    
      dst    
      p      
      scale  

  static java.awt.Rectangle translateCoordinates(long, long, java.awt.Rectangle, int);
    descriptor: (JJLjava/awt/Rectangle;I)Ljava/awt/Rectangle;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // long src
        start local 2 // long dst
        start local 4 // java.awt.Rectangle r
        start local 5 // int scale
         0: .line 183
            lload 0 /* src */
            lload 2 /* dst */
            aload 4 /* r */
            invokevirtual java.awt.Rectangle.getLocation:()Ljava/awt/Point;
         1: .line 184
            iload 5 /* scale */
         2: .line 183
            invokestatic sun.awt.X11.XlibUtil.translateCoordinates:(JJLjava/awt/Point;I)Ljava/awt/Point;
            astore 6 /* translatedLoc */
        start local 6 // java.awt.Point translatedLoc
         3: .line 186
            aload 6 /* translatedLoc */
            ifnonnull 5
         4: .line 188
            aconst_null
            areturn
         5: .line 192
      StackMap locals: java.awt.Point
      StackMap stack:
            new java.awt.Rectangle
            dup
            aload 6 /* translatedLoc */
            aload 4 /* r */
            invokevirtual java.awt.Rectangle.getSize:()Ljava/awt/Dimension;
            invokespecial java.awt.Rectangle.<init>:(Ljava/awt/Point;Ljava/awt/Dimension;)V
            areturn
        end local 6 // java.awt.Point translatedLoc
        end local 5 // int scale
        end local 4 // java.awt.Rectangle r
        end local 2 // long dst
        end local 0 // long src
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0            src  J
            0    6     2            dst  J
            0    6     4              r  Ljava/awt/Rectangle;
            0    6     5          scale  I
            3    6     6  translatedLoc  Ljava/awt/Point;
    MethodParameters:
       Name  Flags
      src    
      dst    
      r      
      scale  

  static long getParentWindow(long);
    descriptor: (J)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // long window
         0: .line 201
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 204
            lload 0 /* window */
            invokestatic sun.awt.X11.XToolkit.windowToXWindow:(J)Lsun/awt/X11/XBaseWindow;
            astore 2 /* bw */
        start local 2 // sun.awt.X11.XBaseWindow bw
         2: .line 205
            aload 2 /* bw */
            ifnull 8
         3: .line 207
            aload 2 /* bw */
            invokevirtual sun.awt.X11.XBaseWindow.getParentWindow:()Lsun/awt/X11/XBaseWindow;
            astore 3 /* pbw */
        start local 3 // sun.awt.X11.XBaseWindow pbw
         4: .line 208
            aload 3 /* pbw */
            ifnull 8
         5: .line 210
            aload 3 /* pbw */
            invokevirtual sun.awt.X11.XBaseWindow.getWindow:()J
            lstore 8
         6: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         7: .line 210
            lload 8
            lreturn
        end local 3 // sun.awt.X11.XBaseWindow pbw
         8: .line 214
      StackMap locals: sun.awt.X11.XBaseWindow
      StackMap stack:
            new sun.awt.X11.XQueryTree
            dup
            lload 0 /* window */
            invokespecial sun.awt.X11.XQueryTree.<init>:(J)V
            astore 3 /* qt */
        start local 3 // sun.awt.X11.XQueryTree qt
         9: .line 217
            aload 3 /* qt */
            invokevirtual sun.awt.X11.XQueryTree.execute:()I
            ifne 13
        10: .line 228
            aload 3 /* qt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        11: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        12: .line 219
            lconst_0
            lreturn
        13: .line 223
      StackMap locals: sun.awt.X11.XQueryTree
      StackMap stack:
            aload 3 /* qt */
            invokevirtual sun.awt.X11.XQueryTree.get_parent:()J
            lstore 5
        14: .line 228
            aload 3 /* qt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        15: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        16: .line 223
            lload 5
            lreturn
        17: .line 227
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        18: .line 228
            aload 3 /* qt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        19: .line 229
            aload 4
            athrow
        end local 3 // sun.awt.X11.XQueryTree qt
        end local 2 // sun.awt.X11.XBaseWindow bw
        20: .line 232
      StackMap locals: long
      StackMap stack: java.lang.Throwable
            astore 7
        21: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        22: .line 234
            aload 7
            athrow
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   23     0  window  J
            2   20     2      bw  Lsun/awt/X11/XBaseWindow;
            4    8     3     pbw  Lsun/awt/X11/XBaseWindow;
            9   20     3      qt  Lsun/awt/X11/XQueryTree;
      Exception table:
        from    to  target  type
           9    10      17  any
          13    14      17  any
           1     6      20  any
           8    11      20  any
          13    15      20  any
          17    20      20  any
    MethodParameters:
        Name  Flags
      window  

  static java.util.Set<java.lang.Long> getChildWindows(long);
    descriptor: (J)Ljava/util/Set;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=14, args_size=1
        start local 0 // long window
         0: .line 242
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 245
            lload 0 /* window */
            invokestatic sun.awt.X11.XToolkit.windowToXWindow:(J)Lsun/awt/X11/XBaseWindow;
            astore 2 /* bw */
        start local 2 // sun.awt.X11.XBaseWindow bw
         2: .line 246
            aload 2 /* bw */
            ifnull 6
         3: .line 248
            aload 2 /* bw */
            invokevirtual sun.awt.X11.XBaseWindow.getChildren:()Ljava/util/Set;
            astore 13
         4: .line 284
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         5: .line 248
            aload 13
            areturn
         6: .line 251
      StackMap locals: sun.awt.X11.XBaseWindow
      StackMap stack:
            new sun.awt.X11.XQueryTree
            dup
            lload 0 /* window */
            invokespecial sun.awt.X11.XQueryTree.<init>:(J)V
            astore 3 /* xqt */
        start local 3 // sun.awt.X11.XQueryTree xqt
         7: .line 254
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.execute:()I
            istore 4 /* status */
        start local 4 // int status
         8: .line 255
            iload 4 /* status */
            ifne 13
         9: .line 257
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
            astore 11
        10: .line 279
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        11: .line 284
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        12: .line 257
            aload 11
            areturn
        13: .line 260
      StackMap locals: sun.awt.X11.XQueryTree int
      StackMap stack:
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.get_children:()J
            lstore 5 /* children */
        start local 5 // long children
        14: .line 262
            lload 5 /* children */
            lconst_0
            lcmp
            ifne 19
        15: .line 264
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
            astore 11
        16: .line 279
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        17: .line 284
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        18: .line 264
            aload 11
            areturn
        19: .line 267
      StackMap locals: long
      StackMap stack:
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.get_nchildren:()I
            istore 7 /* childrenCount */
        start local 7 // int childrenCount
        20: .line 269
            new java.util.HashSet
            dup
            iload 7 /* childrenCount */
            invokespecial java.util.HashSet.<init>:(I)V
            astore 8 /* childrenSet */
        start local 8 // java.util.Set childrenSet
        21: .line 270
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        22: goto 25
        23: .line 272
      StackMap locals: int java.util.Set int
      StackMap stack:
            aload 8 /* childrenSet */
            lload 5 /* children */
            iload 9 /* i */
            invokestatic sun.awt.X11.Native.getWindow:(JI)J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        24: .line 270
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 9 /* i */
            iload 7 /* childrenCount */
            if_icmplt 23
        end local 9 // int i
        26: .line 275
            aload 8 /* childrenSet */
            astore 11
        27: .line 279
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        28: .line 284
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        29: .line 275
            aload 11
            areturn
        end local 8 // java.util.Set childrenSet
        end local 7 // int childrenCount
        end local 5 // long children
        end local 4 // int status
        30: .line 278
      StackMap locals: long sun.awt.X11.XBaseWindow sun.awt.X11.XQueryTree
      StackMap stack: java.lang.Throwable
            astore 10
        31: .line 279
            aload 3 /* xqt */
            invokevirtual sun.awt.X11.XQueryTree.dispose:()V
        32: .line 280
            aload 10
            athrow
        end local 3 // sun.awt.X11.XQueryTree xqt
        end local 2 // sun.awt.X11.XBaseWindow bw
        33: .line 283
      StackMap locals: long
      StackMap stack: java.lang.Throwable
            astore 12
        34: .line 284
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        35: .line 285
            aload 12
            athrow
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   36     0         window  J
            2   33     2             bw  Lsun/awt/X11/XBaseWindow;
            7   33     3            xqt  Lsun/awt/X11/XQueryTree;
            8   30     4         status  I
           14   30     5       children  J
           20   30     7  childrenCount  I
           21   30     8    childrenSet  Ljava/util/Set<Ljava/lang/Long;>;
           22   26     9              i  I
      Exception table:
        from    to  target  type
           7    10      30  any
          13    16      30  any
          19    27      30  any
           1     4      33  any
           6    11      33  any
          13    17      33  any
          19    28      33  any
          30    33      33  any
    Signature: (J)Ljava/util/Set<Ljava/lang/Long;>;
    MethodParameters:
        Name  Flags
      window  

  static boolean isXAWTToplevelWindow(long);
    descriptor: (J)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // long window
         0: .line 294
            lload 0 /* window */
            invokestatic sun.awt.X11.XToolkit.windowToXWindow:(J)Lsun/awt/X11/XBaseWindow;
            instanceof sun.awt.X11.XWindowPeer
            ireturn
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  window  J
    MethodParameters:
        Name  Flags
      window  

  static boolean isToplevelWindow(long);
    descriptor: (J)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=11, locals=5, args_size=1
        start local 0 // long window
         0: .line 302
            lload 0 /* window */
            invokestatic sun.awt.X11.XToolkit.windowToXWindow:(J)Lsun/awt/X11/XBaseWindow;
            instanceof sun.awt.X11.XDecoratedPeer
            ifeq 2
         1: .line 304
            iconst_1
            ireturn
         2: .line 307
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         3: .line 311
            new sun.awt.X11.WindowPropertyGetter
            dup
            lload 0 /* window */
            getstatic sun.awt.X11.XWM.XA_WM_STATE:Lsun/awt/X11/XAtom;
            lconst_0
            lconst_1
            iconst_0
         4: .line 312
            getstatic sun.awt.X11.XWM.XA_WM_STATE:Lsun/awt/X11/XAtom;
         5: .line 311
            invokespecial sun.awt.X11.WindowPropertyGetter.<init>:(JLsun/awt/X11/XAtom;JJZLsun/awt/X11/XAtom;)V
         6: .line 310
            astore 2 /* wpg */
        start local 2 // sun.awt.X11.WindowPropertyGetter wpg
         7: .line 315
            aload 2 /* wpg */
            invokestatic sun.awt.X11.XErrorHandler$IgnoreBadWindowHandler.getInstance:()Lsun/awt/X11/XErrorHandler$IgnoreBadWindowHandler;
            invokevirtual sun.awt.X11.WindowPropertyGetter.execute:(Lsun/awt/X11/XErrorHandler;)I
            pop
         8: .line 316
            aload 2 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.getActualType:()J
            getstatic sun.awt.X11.XWM.XA_WM_STATE:Lsun/awt/X11/XAtom;
            invokevirtual sun.awt.X11.XAtom.getAtom:()J
            lcmp
            ifne 15
         9: .line 323
            aload 2 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        10: .line 330
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        11: .line 318
            iconst_1
            ireturn
        12: .line 322
      StackMap locals: long sun.awt.X11.WindowPropertyGetter
      StackMap stack: java.lang.Throwable
            astore 3
        13: .line 323
            aload 2 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        14: .line 324
            aload 3
            athrow
        15: .line 323
      StackMap locals:
      StackMap stack:
            aload 2 /* wpg */
            invokevirtual sun.awt.X11.WindowPropertyGetter.dispose:()V
        16: .line 330
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        17: .line 326
            iconst_0
            ireturn
        end local 2 // sun.awt.X11.WindowPropertyGetter wpg
        18: .line 329
      StackMap locals: long
      StackMap stack: java.lang.Throwable
            astore 4
        19: .line 330
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        20: .line 331
            aload 4
            athrow
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0  window  J
            7   18     2     wpg  Lsun/awt/X11/WindowPropertyGetter;
      Exception table:
        from    to  target  type
           7     9      12  any
           3    10      18  any
          12    16      18  any
    MethodParameters:
        Name  Flags
      window  

  static boolean isTrueToplevelWindow(long);
    descriptor: (J)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // long window
         0: .line 340
            lload 0 /* window */
            invokestatic sun.awt.X11.XToolkit.windowToXWindow:(J)Lsun/awt/X11/XBaseWindow;
            instanceof sun.awt.X11.XEmbeddedFramePeer
            ifeq 2
         1: .line 342
            iconst_0
            ireturn
         2: .line 345
      StackMap locals:
      StackMap stack:
            lload 0 /* window */
            invokestatic sun.awt.X11.XlibUtil.isToplevelWindow:(J)Z
            ireturn
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  window  J
    MethodParameters:
        Name  Flags
      window  

  static int getWindowMapState(long);
    descriptor: (J)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // long window
         0: .line 350
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 351
            new sun.awt.X11.XWindowAttributes
            dup
            invokespecial sun.awt.X11.XWindowAttributes.<init>:()V
            astore 2 /* wattr */
        start local 2 // sun.awt.X11.XWindowAttributes wattr
         2: .line 354
            invokestatic sun.awt.X11.XErrorHandler$IgnoreBadWindowHandler.getInstance:()Lsun/awt/X11/XErrorHandler$IgnoreBadWindowHandler;
            invokestatic sun.awt.X11.XErrorHandlerUtil.WITH_XERROR_HANDLER:(Lsun/awt/X11/XErrorHandler;)V
         3: .line 355
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         4: .line 356
            lload 0 /* window */
            aload 2 /* wattr */
            getfield sun.awt.X11.XWindowAttributes.pData:J
         5: .line 355
            invokestatic sun.awt.X11.XlibWrapper.XGetWindowAttributes:(JJJ)I
            istore 3 /* status */
        start local 3 // int status
         6: .line 357
            invokestatic sun.awt.X11.XErrorHandlerUtil.RESTORE_XERROR_HANDLER:()V
         7: .line 358
            iload 3 /* status */
            ifeq 18
         8: .line 359
            getstatic sun.awt.X11.XErrorHandlerUtil.saved_error:Lsun/awt/X11/XErrorEvent;
            ifnull 10
         9: .line 360
            getstatic sun.awt.X11.XErrorHandlerUtil.saved_error:Lsun/awt/X11/XErrorEvent;
            invokevirtual sun.awt.X11.XErrorEvent.get_error_code:()B
            ifne 18
        10: .line 362
      StackMap locals: sun.awt.X11.XWindowAttributes int
      StackMap stack:
            aload 2 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.get_map_state:()I
            istore 5
        11: .line 367
            aload 2 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.dispose:()V
        12: .line 368
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        13: .line 362
            iload 5
            ireturn
        end local 3 // int status
        14: .line 366
      StackMap locals: long sun.awt.X11.XWindowAttributes
      StackMap stack: java.lang.Throwable
            astore 4
        15: .line 367
            aload 2 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.dispose:()V
        16: .line 368
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        17: .line 369
            aload 4
            athrow
        18: .line 367
      StackMap locals:
      StackMap stack:
            aload 2 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.dispose:()V
        19: .line 368
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        20: .line 371
            iconst_0
            ireturn
        end local 2 // sun.awt.X11.XWindowAttributes wattr
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0  window  J
            2   21     2   wattr  Lsun/awt/X11/XWindowAttributes;
            6   14     3  status  I
      Exception table:
        from    to  target  type
           2    11      14  any
    MethodParameters:
        Name  Flags
      window  

  static synchronized boolean isShapingSupported();
    descriptor: ()Z
    flags: (0x0028) ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=1, args_size=0
         0: .line 389
            getstatic sun.awt.X11.XlibUtil.isShapingSupported:Ljava/lang/Boolean;
            ifnonnull 12
         1: .line 390
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         2: .line 394
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         3: .line 395
            getstatic sun.awt.X11.XlibWrapper.larg1:J
         4: .line 396
            getstatic sun.awt.X11.XlibWrapper.larg2:J
         5: .line 393
            invokestatic sun.awt.X11.XlibWrapper.XShapeQueryExtension:(JJJ)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
         6: .line 392
            putstatic sun.awt.X11.XlibUtil.isShapingSupported:Ljava/lang/Boolean;
         7: .line 397
            goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 0
         9: .line 398
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        10: .line 399
            aload 0
            athrow
        11: .line 398
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        12: .line 402
      StackMap locals:
      StackMap stack:
            getstatic sun.awt.X11.XlibUtil.isShapingSupported:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     8       8  any

  static int getButtonMask(int);
    descriptor: (I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int button
         0: .line 409
            iload 0 /* button */
            ifle 1
            iload 0 /* button */
            iconst_5
            if_icmple 2
         1: .line 410
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 412
      StackMap locals:
      StackMap stack:
            iconst_1
            bipush 7
            iload 0 /* button */
            iadd
            ishl
            ireturn
        end local 0 // int button
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  button  I
    MethodParameters:
        Name  Flags
      button  

  static int scaleDown(int, int);
    descriptor: (II)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int x
        start local 1 // int scale
         0: .line 417
            iload 0 /* x */
            iload 1 /* scale */
            idiv
            ireturn
        end local 1 // int scale
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      x  I
            0    1     1  scale  I
    MethodParameters:
       Name  Flags
      x      
      scale  
}
SourceFile: "XlibUtil.java"
InnerClasses:
  public IgnoreBadWindowHandler = sun.awt.X11.XErrorHandler$IgnoreBadWindowHandler of sun.awt.X11.XErrorHandler