public class sun.java2d.d3d.D3DGraphicsDevice extends sun.awt.Win32GraphicsDevice
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.java2d.d3d.D3DGraphicsDevice
  super_class: sun.awt.Win32GraphicsDevice
{
  private sun.java2d.d3d.D3DContext context;
    descriptor: Lsun/java2d/d3d/D3DContext;
    flags: (0x0002) ACC_PRIVATE

  private static boolean d3dAvailable;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private sun.java2d.pipe.hw.ContextCapabilities d3dCaps;
    descriptor: Lsun/java2d/pipe/hw/ContextCapabilities;
    flags: (0x0002) ACC_PRIVATE

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

  private java.awt.Rectangle ownerOrigBounds;
    descriptor: Ljava/awt/Rectangle;
    flags: (0x0002) ACC_PRIVATE

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

  private java.awt.Window realFSWindow;
    descriptor: Ljava/awt/Window;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.event.WindowListener fsWindowListener;
    descriptor: Ljava/awt/event/WindowListener;
    flags: (0x0002) ACC_PRIVATE

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 65
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            pop
         1: .line 66
            invokestatic sun.java2d.d3d.D3DGraphicsDevice.initD3D:()Z
            putstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
         2: .line 67
            getstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
            ifeq 4
         3: .line 69
            iconst_1
            putstatic sun.java2d.d3d.D3DGraphicsDevice.pfDisabled:Z
         4: .line 71
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static native boolean initD3D();
    descriptor: ()Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE

  public static sun.java2d.d3d.D3DGraphicsDevice createDevice(int);
    descriptor: (I)Lsun/java2d/d3d/D3DGraphicsDevice;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // int screen
         0: .line 80
            getstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
            ifne 2
         1: .line 81
            aconst_null
            areturn
         2: .line 84
      StackMap locals:
      StackMap stack:
            iload 0 /* screen */
            invokestatic sun.java2d.d3d.D3DGraphicsDevice.getDeviceCaps:(I)Lsun/java2d/pipe/hw/ContextCapabilities;
            astore 1 /* d3dCaps */
        start local 1 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
         3: .line 86
            aload 1 /* d3dCaps */
            invokevirtual sun.java2d.pipe.hw.ContextCapabilities.getCaps:()I
            ldc 262144
            iand
            ifne 9
         4: .line 87
            invokestatic sun.java2d.windows.WindowsFlags.isD3DVerbose:()Z
            ifeq 8
         5: .line 88
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Could not enable Direct3D pipeline on screen "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 89
            iload 0 /* screen */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 88
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 91
      StackMap locals: sun.java2d.pipe.hw.ContextCapabilities
      StackMap stack:
            aconst_null
            areturn
         9: .line 93
      StackMap locals:
      StackMap stack:
            invokestatic sun.java2d.windows.WindowsFlags.isD3DVerbose:()Z
            ifeq 11
        10: .line 94
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Direct3D pipeline enabled on screen "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* screen */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        11: .line 97
      StackMap locals:
      StackMap stack:
            new sun.java2d.d3d.D3DGraphicsDevice
            dup
            iload 0 /* screen */
            aload 1 /* d3dCaps */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice.<init>:(ILsun/java2d/pipe/hw/ContextCapabilities;)V
            astore 2 /* gd */
        start local 2 // sun.java2d.d3d.D3DGraphicsDevice gd
        12: .line 98
            aload 2 /* gd */
            areturn
        end local 2 // sun.java2d.d3d.D3DGraphicsDevice gd
        end local 1 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
        end local 0 // int screen
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0   screen  I
            3   13     1  d3dCaps  Lsun/java2d/pipe/hw/ContextCapabilities;
           12   13     2       gd  Lsun/java2d/d3d/D3DGraphicsDevice;
    MethodParameters:
        Name  Flags
      screen  

  private static native int getDeviceCapsNative(int);
    descriptor: (I)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  private static native java.lang.String getDeviceIdNative(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  private static sun.java2d.pipe.hw.ContextCapabilities getDeviceCaps(int);
    descriptor: (I)Lsun/java2d/pipe/hw/ContextCapabilities;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // int screen
         0: .line 104
            aconst_null
            astore 1 /* d3dCaps */
        start local 1 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
         1: .line 105
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 2 /* rq */
        start local 2 // sun.java2d.d3d.D3DRenderQueue rq
         2: .line 106
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         3: .line 112
            new sun.java2d.d3d.D3DGraphicsDevice$1Result
            dup
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$1Result.<init>:()V
            astore 3 /* res */
        start local 3 // sun.java2d.d3d.D3DGraphicsDevice$1Result res
         4: .line 113
            aload 2 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$1
            dup
            aload 3 /* res */
            iload 0 /* screen */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$1.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice$1Result;I)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         5: .line 119
            new sun.java2d.d3d.D3DContext$D3DContextCaps
            dup
            aload 3 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$1Result.caps:I
            aload 3 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$1Result.id:Ljava/lang/String;
            invokespecial sun.java2d.d3d.D3DContext$D3DContextCaps.<init>:(ILjava/lang/String;)V
            astore 1 /* d3dCaps */
        end local 3 // sun.java2d.d3d.D3DGraphicsDevice$1Result res
         6: .line 120
            goto 10
      StackMap locals: int sun.java2d.pipe.hw.ContextCapabilities sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
         7: astore 4
         8: .line 121
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         9: .line 122
            aload 4
            athrow
        10: .line 121
      StackMap locals:
      StackMap stack:
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        11: .line 124
            aload 1 /* d3dCaps */
            ifnull 12
            aload 1 /* d3dCaps */
            goto 13
      StackMap locals:
      StackMap stack:
        12: new sun.java2d.d3d.D3DContext$D3DContextCaps
            dup
            iconst_0
            aconst_null
            invokespecial sun.java2d.d3d.D3DContext$D3DContextCaps.<init>:(ILjava/lang/String;)V
      StackMap locals:
      StackMap stack: sun.java2d.pipe.hw.ContextCapabilities
        13: areturn
        end local 2 // sun.java2d.d3d.D3DRenderQueue rq
        end local 1 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
        end local 0 // int screen
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0   screen  I
            1   14     1  d3dCaps  Lsun/java2d/pipe/hw/ContextCapabilities;
            2   14     2       rq  Lsun/java2d/d3d/D3DRenderQueue;
            4    6     3      res  Lsun/java2d/d3d/D3DGraphicsDevice$1Result;
      Exception table:
        from    to  target  type
           3     7       7  any
    MethodParameters:
        Name  Flags
      screen  final

  public final boolean isCapPresent(int);
    descriptor: (I)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int cap
         0: .line 128
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.d3dCaps:Lsun/java2d/pipe/hw/ContextCapabilities;
            invokevirtual sun.java2d.pipe.hw.ContextCapabilities.getCaps:()I
            iload 1 /* cap */
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int cap
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0    2     1   cap  I
    MethodParameters:
      Name  Flags
      cap   

  private void <init>(int, sun.java2d.pipe.hw.ContextCapabilities);
    descriptor: (ILsun/java2d/pipe/hw/ContextCapabilities;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screennum
        start local 2 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
         0: .line 132
            aload 0 /* this */
            iload 1 /* screennum */
            invokespecial sun.awt.Win32GraphicsDevice.<init>:(I)V
         1: .line 168
            aload 0 /* this */
            aconst_null
            putfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
         2: .line 133
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "D3DGraphicsDevice[screen="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* screennum */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield sun.java2d.d3d.D3DGraphicsDevice.descString:Ljava/lang/String;
         3: .line 134
            aload 0 /* this */
            aload 2 /* d3dCaps */
            putfield sun.java2d.d3d.D3DGraphicsDevice.d3dCaps:Lsun/java2d/pipe/hw/ContextCapabilities;
         4: .line 135
            aload 0 /* this */
            new sun.java2d.d3d.D3DContext
            dup
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            aload 0 /* this */
            invokespecial sun.java2d.d3d.D3DContext.<init>:(Lsun/java2d/pipe/RenderQueue;Lsun/java2d/d3d/D3DGraphicsDevice;)V
            putfield sun.java2d.d3d.D3DGraphicsDevice.context:Lsun/java2d/d3d/D3DContext;
         5: .line 136
            return
        end local 2 // sun.java2d.pipe.hw.ContextCapabilities d3dCaps
        end local 1 // int screennum
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0    6     1  screennum  I
            0    6     2    d3dCaps  Lsun/java2d/pipe/hw/ContextCapabilities;
    MethodParameters:
           Name  Flags
      screennum  
      d3dCaps    

  public boolean isD3DEnabledOnDevice();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 139
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.isValid:()Z
            ifeq 1
            aload 0 /* this */
            ldc 262144
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.isCapPresent:(I)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  public static boolean isD3DAvailable();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 147
            getstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.awt.Frame getToplevelOwner(java.awt.Window);
    descriptor: (Ljava/awt/Window;)Ljava/awt/Frame;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // java.awt.Window w
         0: .line 156
            aload 1 /* w */
            astore 2 /* owner */
        start local 2 // java.awt.Window owner
         1: .line 157
            goto 5
         2: .line 158
      StackMap locals: java.awt.Window
      StackMap stack:
            aload 2 /* owner */
            invokevirtual java.awt.Window.getOwner:()Ljava/awt/Window;
            astore 2 /* owner */
         3: .line 159
            aload 2 /* owner */
            instanceof java.awt.Frame
            ifeq 5
         4: .line 160
            aload 2 /* owner */
            checkcast java.awt.Frame
            areturn
         5: .line 157
      StackMap locals:
      StackMap stack:
            aload 2 /* owner */
            ifnonnull 2
         6: .line 164
            aconst_null
            areturn
        end local 2 // java.awt.Window owner
        end local 1 // java.awt.Window w
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0    7     1      w  Ljava/awt/Window;
            1    7     2  owner  Ljava/awt/Window;
    MethodParameters:
      Name  Flags
      w     

  private static native boolean enterFullScreenExclusiveNative(int, long);
    descriptor: (IJ)Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  
      hwnd    

  protected void enterFullScreenExclusive(int, java.awt.peer.WindowPeer);
    descriptor: (ILjava/awt/peer/WindowPeer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screen
        start local 2 // java.awt.peer.WindowPeer wp
         0: .line 179
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getPeer:()Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.windows.WWindowPeer
            astore 3 /* wpeer */
        start local 3 // sun.awt.windows.WWindowPeer wpeer
         1: .line 181
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 4 /* rq */
        start local 4 // sun.java2d.d3d.D3DRenderQueue rq
         2: .line 182
            aload 4 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         3: .line 184
            aload 4 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$2
            dup
            aload 0 /* this */
            aload 3 /* wpeer */
            iload 1 /* screen */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$2.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;Lsun/awt/windows/WWindowPeer;I)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         4: .line 195
            goto 8
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice int java.awt.peer.WindowPeer sun.awt.windows.WWindowPeer sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
         5: astore 5
         6: .line 196
            aload 4 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         7: .line 197
            aload 5
            athrow
         8: .line 196
      StackMap locals:
      StackMap stack:
            aload 4 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         9: .line 198
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsStatus:Z
            ifne 11
        10: .line 199
            aload 0 /* this */
            iload 1 /* screen */
            aload 2 /* wp */
            invokespecial sun.awt.Win32GraphicsDevice.enterFullScreenExclusive:(ILjava/awt/peer/WindowPeer;)V
        11: .line 201
      StackMap locals:
      StackMap stack:
            return
        end local 4 // sun.java2d.d3d.D3DRenderQueue rq
        end local 3 // sun.awt.windows.WWindowPeer wpeer
        end local 2 // java.awt.peer.WindowPeer wp
        end local 1 // int screen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   12     1  screen  I
            0   12     2      wp  Ljava/awt/peer/WindowPeer;
            1   12     3   wpeer  Lsun/awt/windows/WWindowPeer;
            2   12     4      rq  Lsun/java2d/d3d/D3DRenderQueue;
      Exception table:
        from    to  target  type
           3     5       5  any
    MethodParameters:
        Name  Flags
      screen  final
      wp      

  private static native boolean exitFullScreenExclusiveNative(int);
    descriptor: (I)Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  protected void exitFullScreenExclusive(int, java.awt.peer.WindowPeer);
    descriptor: (ILjava/awt/peer/WindowPeer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screen
        start local 2 // java.awt.peer.WindowPeer w
         0: .line 206
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsStatus:Z
            ifeq 10
         1: .line 207
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 3 /* rq */
        start local 3 // sun.java2d.d3d.D3DRenderQueue rq
         2: .line 208
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         3: .line 210
            aload 3 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$3
            dup
            aload 0 /* this */
            iload 1 /* screen */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$3.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;I)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         4: .line 215
            goto 8
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice int java.awt.peer.WindowPeer sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
         5: astore 4
         6: .line 216
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         7: .line 217
            aload 4
            athrow
         8: .line 216
      StackMap locals:
      StackMap stack:
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        end local 3 // sun.java2d.d3d.D3DRenderQueue rq
         9: .line 218
            goto 11
        10: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* screen */
            aload 2 /* w */
            invokespecial sun.awt.Win32GraphicsDevice.exitFullScreenExclusive:(ILjava/awt/peer/WindowPeer;)V
        11: .line 221
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.awt.peer.WindowPeer w
        end local 1 // int screen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   12     1  screen  I
            0   12     2       w  Ljava/awt/peer/WindowPeer;
            2    9     3      rq  Lsun/java2d/d3d/D3DRenderQueue;
      Exception table:
        from    to  target  type
           3     5       5  any
    MethodParameters:
        Name  Flags
      screen  final
      w       

  protected void addFSWindowListener(java.awt.Window);
    descriptor: (Ljava/awt/Window;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // java.awt.Window w
         0: .line 248
            aload 1 /* w */
            instanceof java.awt.Frame
            ifne 9
            aload 1 /* w */
            instanceof java.awt.Dialog
            ifne 9
         1: .line 249
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* w */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.getToplevelOwner:(Ljava/awt/Window;)Ljava/awt/Frame;
            dup_x1
            putfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            ifnull 9
         2: .line 251
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getBounds:()Ljava/awt/Rectangle;
            putfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
         3: .line 252
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getPeer:()Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.windows.WWindowPeer
            astore 2 /* fp */
        start local 2 // sun.awt.windows.WWindowPeer fp
         4: .line 254
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.isVisible:()Z
            putfield sun.java2d.d3d.D3DGraphicsDevice.ownerWasVisible:Z
         5: .line 255
            aload 1 /* w */
            invokevirtual java.awt.Window.getBounds:()Ljava/awt/Rectangle;
            astore 3 /* r */
        start local 3 // java.awt.Rectangle r
         6: .line 258
            aload 2 /* fp */
            aload 3 /* r */
            getfield java.awt.Rectangle.x:I
            aload 3 /* r */
            getfield java.awt.Rectangle.y:I
            aload 3 /* r */
            getfield java.awt.Rectangle.width:I
            aload 3 /* r */
            getfield java.awt.Rectangle.height:I
            invokevirtual sun.awt.windows.WWindowPeer.reshape:(IIII)V
         7: .line 259
            aload 2 /* fp */
            iconst_1
            invokevirtual sun.awt.windows.WWindowPeer.setVisible:(Z)V
        end local 3 // java.awt.Rectangle r
        end local 2 // sun.awt.windows.WWindowPeer fp
         8: .line 260
            goto 10
         9: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* w */
            putfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
        10: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.isAlwaysOnTop:()Z
            putfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowWasAlwaysOnTop:Z
        11: .line 265
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getPeer:()Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.windows.WWindowPeer
            iconst_1
            invokevirtual sun.awt.windows.WWindowPeer.setAlwaysOnTop:(Z)V
        12: .line 267
            aload 0 /* this */
            new sun.java2d.d3d.D3DGraphicsDevice$D3DFSWindowAdapter
            dup
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$D3DFSWindowAdapter.<init>:()V
            putfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowListener:Ljava/awt/event/WindowListener;
        13: .line 268
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowListener:Ljava/awt/event/WindowListener;
            invokevirtual java.awt.Window.addWindowListener:(Ljava/awt/event/WindowListener;)V
        14: .line 269
            return
        end local 1 // java.awt.Window w
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   15     1     w  Ljava/awt/Window;
            4    8     2    fp  Lsun/awt/windows/WWindowPeer;
            6    8     3     r  Ljava/awt/Rectangle;
    MethodParameters:
      Name  Flags
      w     

  protected void removeFSWindowListener(java.awt.Window);
    descriptor: (Ljava/awt/Window;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // java.awt.Window w
         0: .line 273
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowListener:Ljava/awt/event/WindowListener;
            invokevirtual java.awt.Window.removeWindowListener:(Ljava/awt/event/WindowListener;)V
         1: .line 274
            aload 0 /* this */
            aconst_null
            putfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowListener:Ljava/awt/event/WindowListener;
         2: .line 286
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getPeer:()Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.windows.WWindowPeer
            astore 2 /* wpeer */
        start local 2 // sun.awt.windows.WWindowPeer wpeer
         3: .line 287
            aload 2 /* wpeer */
            ifnull 15
         4: .line 288
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            ifnull 13
         5: .line 291
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            ifne 6
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            iconst_1
            putfield java.awt.Rectangle.width:I
         6: .line 292
      StackMap locals: sun.awt.windows.WWindowPeer
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            ifne 7
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            iconst_1
            putfield java.awt.Rectangle.height:I
         7: .line 293
      StackMap locals:
      StackMap stack:
            aload 2 /* wpeer */
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
         8: .line 294
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
         9: .line 293
            invokevirtual sun.awt.windows.WWindowPeer.reshape:(IIII)V
        10: .line 295
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.ownerWasVisible:Z
            ifne 12
        11: .line 296
            aload 2 /* wpeer */
            iconst_0
            invokevirtual sun.awt.windows.WWindowPeer.setVisible:(Z)V
        12: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield sun.java2d.d3d.D3DGraphicsDevice.ownerOrigBounds:Ljava/awt/Rectangle;
        13: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsWindowWasAlwaysOnTop:Z
            ifne 15
        14: .line 301
            aload 2 /* wpeer */
            iconst_0
            invokevirtual sun.awt.windows.WWindowPeer.setAlwaysOnTop:(Z)V
        15: .line 305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
        16: .line 306
            return
        end local 2 // sun.awt.windows.WWindowPeer wpeer
        end local 1 // java.awt.Window w
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   17     0   this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   17     1      w  Ljava/awt/Window;
            3   17     2  wpeer  Lsun/awt/windows/WWindowPeer;
    MethodParameters:
      Name  Flags
      w     

  private static native java.awt.DisplayMode getCurrentDisplayModeNative(int);
    descriptor: (I)Ljava/awt/DisplayMode;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  protected java.awt.DisplayMode getCurrentDisplayMode(int);
    descriptor: (I)Ljava/awt/DisplayMode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screen
         0: .line 311
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 2 /* rq */
        start local 2 // sun.java2d.d3d.D3DRenderQueue rq
         1: .line 312
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         2: .line 317
            new sun.java2d.d3d.D3DGraphicsDevice$2Result
            dup
            aload 0 /* this */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$2Result.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;)V
            astore 3 /* res */
        start local 3 // sun.java2d.d3d.D3DGraphicsDevice$2Result res
         3: .line 318
            aload 2 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$4
            dup
            aload 0 /* this */
            aload 3 /* res */
            iload 1 /* screen */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$4.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;Lsun/java2d/d3d/D3DGraphicsDevice$2Result;I)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         4: .line 323
            aload 3 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$2Result.dm:Ljava/awt/DisplayMode;
            ifnonnull 8
         5: .line 324
            aload 0 /* this */
            iload 1 /* screen */
            invokespecial sun.awt.Win32GraphicsDevice.getCurrentDisplayMode:(I)Ljava/awt/DisplayMode;
            astore 5
         6: .line 328
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         7: .line 324
            aload 5
            areturn
         8: .line 326
      StackMap locals: sun.java2d.d3d.D3DRenderQueue sun.java2d.d3d.D3DGraphicsDevice$2Result
      StackMap stack:
            aload 3 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$2Result.dm:Ljava/awt/DisplayMode;
            astore 5
         9: .line 328
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        10: .line 326
            aload 5
            areturn
        end local 3 // sun.java2d.d3d.D3DGraphicsDevice$2Result res
        11: .line 327
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice int sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
            astore 4
        12: .line 328
            aload 2 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        13: .line 329
            aload 4
            athrow
        end local 2 // sun.java2d.d3d.D3DRenderQueue rq
        end local 1 // int screen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   14     1  screen  I
            1   14     2      rq  Lsun/java2d/d3d/D3DRenderQueue;
            3   11     3     res  Lsun/java2d/d3d/D3DGraphicsDevice$2Result;
      Exception table:
        from    to  target  type
           2     6      11  any
           8     9      11  any
    MethodParameters:
        Name  Flags
      screen  final

  private static native void configDisplayModeNative(int, long, int, int, int, int);
    descriptor: (IJIIII)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
             Name  Flags
      screen       
      hwnd         
      width        
      height       
      bitDepth     
      refreshRate  

  protected void configDisplayMode(int, java.awt.peer.WindowPeer, int, int, int, int);
    descriptor: (ILjava/awt/peer/WindowPeer;IIII)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=10, args_size=7
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screen
        start local 2 // java.awt.peer.WindowPeer w
        start local 3 // int width
        start local 4 // int height
        start local 5 // int bitDepth
        start local 6 // int refreshRate
         0: .line 341
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.fsStatus:Z
            ifne 5
         1: .line 342
            aload 0 /* this */
            iload 1 /* screen */
            aload 2 /* w */
            iload 3 /* width */
            iload 4 /* height */
            iload 5 /* bitDepth */
         2: .line 343
            iload 6 /* refreshRate */
         3: .line 342
            invokespecial sun.awt.Win32GraphicsDevice.configDisplayMode:(ILjava/awt/peer/WindowPeer;IIII)V
         4: .line 344
            return
         5: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            invokevirtual java.awt.Window.getPeer:()Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.windows.WWindowPeer
            astore 7 /* wpeer */
        start local 7 // sun.awt.windows.WWindowPeer wpeer
         6: .line 354
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.getFullScreenWindow:()Ljava/awt/Window;
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.realFSWindow:Ljava/awt/Window;
            if_acmpeq 9
         7: .line 355
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.getDefaultConfiguration:()Ljava/awt/GraphicsConfiguration;
            invokevirtual java.awt.GraphicsConfiguration.getBounds:()Ljava/awt/Rectangle;
            astore 8 /* screenBounds */
        start local 8 // java.awt.Rectangle screenBounds
         8: .line 356
            aload 7 /* wpeer */
            aload 8 /* screenBounds */
            getfield java.awt.Rectangle.x:I
            aload 8 /* screenBounds */
            getfield java.awt.Rectangle.y:I
            iload 3 /* width */
            iload 4 /* height */
            invokevirtual sun.awt.windows.WWindowPeer.reshape:(IIII)V
        end local 8 // java.awt.Rectangle screenBounds
         9: .line 359
      StackMap locals: sun.awt.windows.WWindowPeer
      StackMap stack:
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 8 /* rq */
        start local 8 // sun.java2d.d3d.D3DRenderQueue rq
        10: .line 360
            aload 8 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
        11: .line 362
            aload 8 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$5
            dup
            aload 0 /* this */
            aload 7 /* wpeer */
            iload 1 /* screen */
            iload 3 /* width */
            iload 4 /* height */
            iload 5 /* bitDepth */
            iload 6 /* refreshRate */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$5.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;Lsun/awt/windows/WWindowPeer;IIIII)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
        12: .line 375
            goto 16
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice int java.awt.peer.WindowPeer int int int int sun.awt.windows.WWindowPeer sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
        13: astore 9
        14: .line 376
            aload 8 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        15: .line 377
            aload 9
            athrow
        16: .line 376
      StackMap locals:
      StackMap stack:
            aload 8 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        17: .line 378
            return
        end local 8 // sun.java2d.d3d.D3DRenderQueue rq
        end local 7 // sun.awt.windows.WWindowPeer wpeer
        end local 6 // int refreshRate
        end local 5 // int bitDepth
        end local 4 // int height
        end local 3 // int width
        end local 2 // java.awt.peer.WindowPeer w
        end local 1 // int screen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   18     1        screen  I
            0   18     2             w  Ljava/awt/peer/WindowPeer;
            0   18     3         width  I
            0   18     4        height  I
            0   18     5      bitDepth  I
            0   18     6   refreshRate  I
            6   18     7         wpeer  Lsun/awt/windows/WWindowPeer;
            8    9     8  screenBounds  Ljava/awt/Rectangle;
           10   18     8            rq  Lsun/java2d/d3d/D3DRenderQueue;
      Exception table:
        from    to  target  type
          11    13      13  any
    MethodParameters:
             Name  Flags
      screen       final
      w            final
      width        final
      height       final
      bitDepth     final
      refreshRate  final

  private static native void enumDisplayModesNative(int, java.util.ArrayList);
    descriptor: (ILjava/util/ArrayList;)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  
      modes   

  protected void enumDisplayModes(int, java.util.ArrayList);
    descriptor: (ILjava/util/ArrayList;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int screen
        start local 2 // java.util.ArrayList modes
         0: .line 384
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 3 /* rq */
        start local 3 // sun.java2d.d3d.D3DRenderQueue rq
         1: .line 385
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         2: .line 387
            aload 3 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$6
            dup
            aload 0 /* this */
            iload 1 /* screen */
            aload 2 /* modes */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$6.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;ILjava/util/ArrayList;)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         3: .line 392
            aload 2 /* modes */
            invokevirtual java.util.ArrayList.size:()I
            ifne 9
         4: .line 393
            aload 2 /* modes */
            iload 1 /* screen */
            invokestatic sun.java2d.d3d.D3DGraphicsDevice.getCurrentDisplayModeNative:(I)Ljava/awt/DisplayMode;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 395
            goto 9
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice int java.util.ArrayList sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
         6: astore 4
         7: .line 396
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         8: .line 397
            aload 4
            athrow
         9: .line 396
      StackMap locals:
      StackMap stack:
            aload 3 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        10: .line 398
            return
        end local 3 // sun.java2d.d3d.D3DRenderQueue rq
        end local 2 // java.util.ArrayList modes
        end local 1 // int screen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0   11     1  screen  I
            0   11     2   modes  Ljava/util/ArrayList;
            1   11     3      rq  Lsun/java2d/d3d/D3DRenderQueue;
      Exception table:
        from    to  target  type
           2     6       6  any
    MethodParameters:
        Name  Flags
      screen  final
      modes   final

  private static native long getAvailableAcceleratedMemoryNative(int);
    descriptor: (I)J
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  public int getAvailableAcceleratedMemory();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 403
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 1 /* rq */
        start local 1 // sun.java2d.d3d.D3DRenderQueue rq
         1: .line 404
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         2: .line 409
            new sun.java2d.d3d.D3DGraphicsDevice$3Result
            dup
            aload 0 /* this */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$3Result.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;)V
            astore 2 /* res */
        start local 2 // sun.java2d.d3d.D3DGraphicsDevice$3Result res
         3: .line 410
            aload 1 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$7
            dup
            aload 0 /* this */
            aload 2 /* res */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$7.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;Lsun/java2d/d3d/D3DGraphicsDevice$3Result;)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         4: .line 415
            aload 2 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$3Result.mem:J
            l2i
            istore 4
         5: .line 417
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         6: .line 415
            iload 4
            ireturn
        end local 2 // sun.java2d.d3d.D3DGraphicsDevice$3Result res
         7: .line 416
      StackMap locals: sun.java2d.d3d.D3DGraphicsDevice sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
            astore 3
         8: .line 417
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         9: .line 418
            aload 3
            athrow
        end local 1 // sun.java2d.d3d.D3DRenderQueue rq
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;
            1   10     1    rq  Lsun/java2d/d3d/D3DRenderQueue;
            3    7     2   res  Lsun/java2d/d3d/D3DGraphicsDevice$3Result;
      Exception table:
        from    to  target  type
           2     5       7  any

  public java.awt.GraphicsConfiguration[] getConfigurations();
    descriptor: ()[Ljava/awt/GraphicsConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 423
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.configs:[Ljava/awt/GraphicsConfiguration;
            ifnonnull 7
         1: .line 424
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.isD3DEnabledOnDevice:()Z
            ifeq 7
         2: .line 425
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.getDefaultConfiguration:()Ljava/awt/GraphicsConfiguration;
            putfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
         3: .line 426
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
            ifnull 7
         4: .line 427
            aload 0 /* this */
            iconst_1
            anewarray java.awt.GraphicsConfiguration
            putfield sun.java2d.d3d.D3DGraphicsDevice.configs:[Ljava/awt/GraphicsConfiguration;
         5: .line 428
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.configs:[Ljava/awt/GraphicsConfiguration;
            iconst_0
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
            aastore
         6: .line 429
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.configs:[Ljava/awt/GraphicsConfiguration;
            areturn
         7: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial sun.awt.Win32GraphicsDevice.getConfigurations:()[Ljava/awt/GraphicsConfiguration;
            areturn
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  public java.awt.GraphicsConfiguration getDefaultConfiguration();
    descriptor: ()Ljava/awt/GraphicsConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 438
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
            ifnonnull 5
         1: .line 439
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.isD3DEnabledOnDevice:()Z
            ifeq 4
         2: .line 440
            aload 0 /* this */
            new sun.java2d.d3d.D3DGraphicsConfig
            dup
            aload 0 /* this */
            invokespecial sun.java2d.d3d.D3DGraphicsConfig.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice;)V
            putfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
         3: .line 441
            goto 5
         4: .line 442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokespecial sun.awt.Win32GraphicsDevice.getDefaultConfiguration:()Ljava/awt/GraphicsConfiguration;
            putfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
         5: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.defaultConfig:Ljava/awt/GraphicsConfiguration;
            areturn
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  private static native boolean isD3DAvailableOnDeviceNative(int);
    descriptor: (I)Z
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      screen  

  public static boolean isD3DAvailableOnDevice(int);
    descriptor: (I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // int screen
         0: .line 451
            getstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
            ifne 2
         1: .line 452
            iconst_0
            ireturn
         2: .line 457
      StackMap locals:
      StackMap stack:
            invokestatic sun.java2d.d3d.D3DRenderQueue.getInstance:()Lsun/java2d/d3d/D3DRenderQueue;
            astore 1 /* rq */
        start local 1 // sun.java2d.d3d.D3DRenderQueue rq
         3: .line 458
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.lock:()V
         4: .line 463
            new sun.java2d.d3d.D3DGraphicsDevice$4Result
            dup
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$4Result.<init>:()V
            astore 2 /* res */
        start local 2 // sun.java2d.d3d.D3DGraphicsDevice$4Result res
         5: .line 464
            aload 1 /* rq */
            new sun.java2d.d3d.D3DGraphicsDevice$8
            dup
            aload 2 /* res */
            iload 0 /* screen */
            invokespecial sun.java2d.d3d.D3DGraphicsDevice$8.<init>:(Lsun/java2d/d3d/D3DGraphicsDevice$4Result;I)V
            invokevirtual sun.java2d.d3d.D3DRenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
         6: .line 469
            aload 2 /* res */
            getfield sun.java2d.d3d.D3DGraphicsDevice$4Result.avail:Z
            istore 4
         7: .line 471
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
         8: .line 469
            iload 4
            ireturn
        end local 2 // sun.java2d.d3d.D3DGraphicsDevice$4Result res
         9: .line 470
      StackMap locals: int sun.java2d.d3d.D3DRenderQueue
      StackMap stack: java.lang.Throwable
            astore 3
        10: .line 471
            aload 1 /* rq */
            invokevirtual sun.java2d.d3d.D3DRenderQueue.unlock:()V
        11: .line 472
            aload 3
            athrow
        end local 1 // sun.java2d.d3d.D3DRenderQueue rq
        end local 0 // int screen
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0  screen  I
            3   12     1      rq  Lsun/java2d/d3d/D3DRenderQueue;
            5    9     2     res  Lsun/java2d/d3d/D3DGraphicsDevice$4Result;
      Exception table:
        from    to  target  type
           4     7       9  any
    MethodParameters:
        Name  Flags
      screen  final

  sun.java2d.d3d.D3DContext getContext();
    descriptor: ()Lsun/java2d/d3d/D3DContext;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 476
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.context:Lsun/java2d/d3d/D3DContext;
            areturn
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  sun.java2d.pipe.hw.ContextCapabilities getContextCapabilities();
    descriptor: ()Lsun/java2d/pipe/hw/ContextCapabilities;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 480
            aload 0 /* this */
            getfield sun.java2d.d3d.D3DGraphicsDevice.d3dCaps:Lsun/java2d/pipe/hw/ContextCapabilities;
            areturn
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  public void displayChanged();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
         0: .line 485
            aload 0 /* this */
            invokespecial sun.awt.Win32GraphicsDevice.displayChanged:()V
         1: .line 488
            getstatic sun.java2d.d3d.D3DGraphicsDevice.d3dAvailable:Z
            ifeq 3
         2: .line 489
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.java2d.d3d.D3DGraphicsDevice.getScreen:()I
            invokestatic sun.java2d.d3d.D3DGraphicsDevice.getDeviceCaps:(I)Lsun/java2d/pipe/hw/ContextCapabilities;
            putfield sun.java2d.d3d.D3DGraphicsDevice.d3dCaps:Lsun/java2d/pipe/hw/ContextCapabilities;
         3: .line 491
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/java2d/d3d/D3DGraphicsDevice;

  protected void invalidate(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // sun.java2d.d3d.D3DGraphicsDevice this
        start local 1 // int defaultScreen
         0: .line 495
            aload 0 /* this */
            iload 1 /* defaultScreen */
            invokespecial sun.awt.Win32GraphicsDevice.invalidate:(I)V
         1: .line 498
            aload 0 /* this */
            new sun.java2d.d3d.D3DContext$D3DContextCaps
            dup
            iconst_0
            aconst_null
            invokespecial sun.java2d.d3d.D3DContext$D3DContextCaps.<init>:(ILjava/lang/String;)V
            putfield sun.java2d.d3d.D3DGraphicsDevice.d3dCaps:Lsun/java2d/pipe/hw/ContextCapabilities;
         2: .line 499
            return
        end local 1 // int defaultScreen
        end local 0 // sun.java2d.d3d.D3DGraphicsDevice this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lsun/java2d/d3d/D3DGraphicsDevice;
            0    3     1  defaultScreen  I
    MethodParameters:
               Name  Flags
      defaultScreen  
}
SourceFile: "D3DGraphicsDevice.java"
NestMembers:
  sun.java2d.d3d.D3DGraphicsDevice$1  sun.java2d.d3d.D3DGraphicsDevice$1Result  sun.java2d.d3d.D3DGraphicsDevice$2  sun.java2d.d3d.D3DGraphicsDevice$2Result  sun.java2d.d3d.D3DGraphicsDevice$3  sun.java2d.d3d.D3DGraphicsDevice$3Result  sun.java2d.d3d.D3DGraphicsDevice$4  sun.java2d.d3d.D3DGraphicsDevice$4Result  sun.java2d.d3d.D3DGraphicsDevice$5  sun.java2d.d3d.D3DGraphicsDevice$6  sun.java2d.d3d.D3DGraphicsDevice$7  sun.java2d.d3d.D3DGraphicsDevice$8  sun.java2d.d3d.D3DGraphicsDevice$D3DFSWindowAdapter
InnerClasses:
  D3DContextCaps = sun.java2d.d3d.D3DContext$D3DContextCaps of sun.java2d.d3d.D3DContext
  sun.java2d.d3d.D3DGraphicsDevice$1
  Result = sun.java2d.d3d.D3DGraphicsDevice$1Result
  sun.java2d.d3d.D3DGraphicsDevice$2
  Result = sun.java2d.d3d.D3DGraphicsDevice$2Result
  sun.java2d.d3d.D3DGraphicsDevice$3
  Result = sun.java2d.d3d.D3DGraphicsDevice$3Result
  sun.java2d.d3d.D3DGraphicsDevice$4
  Result = sun.java2d.d3d.D3DGraphicsDevice$4Result
  sun.java2d.d3d.D3DGraphicsDevice$5
  sun.java2d.d3d.D3DGraphicsDevice$6
  sun.java2d.d3d.D3DGraphicsDevice$7
  sun.java2d.d3d.D3DGraphicsDevice$8
  private D3DFSWindowAdapter = sun.java2d.d3d.D3DGraphicsDevice$D3DFSWindowAdapter of sun.java2d.d3d.D3DGraphicsDevice