public class java.awt.Desktop
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.awt.Desktop
  super_class: java.lang.Object
{
  private java.awt.peer.DesktopPeer peer;
    descriptor: Ljava/awt/peer/DesktopPeer;
    flags: (0x0002) ACC_PRIVATE

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 271
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 272
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            astore 1 /* defaultToolkit */
        start local 1 // java.awt.Toolkit defaultToolkit
         2: .line 274
            aload 1 /* defaultToolkit */
            instanceof sun.awt.SunToolkit
            ifeq 4
         3: .line 275
            aload 0 /* this */
            aload 1 /* defaultToolkit */
            checkcast sun.awt.SunToolkit
            aload 0 /* this */
            invokevirtual sun.awt.SunToolkit.createDesktopPeer:(Ljava/awt/Desktop;)Ljava/awt/peer/DesktopPeer;
            putfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
         4: .line 277
      StackMap locals: java.awt.Desktop java.awt.Toolkit
      StackMap stack:
            return
        end local 1 // java.awt.Toolkit defaultToolkit
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Ljava/awt/Desktop;
            2    5     1  defaultToolkit  Ljava/awt/Toolkit;

  private void checkEventsProcessingPermission();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 280
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 281
            aload 1 /* sm */
            ifnull 5
         2: .line 282
            aload 1 /* sm */
            new java.lang.RuntimePermission
            dup
         3: .line 283
            ldc "canProcessApplicationEvents"
            invokespecial java.lang.RuntimePermission.<init>:(Ljava/lang/String;)V
         4: .line 282
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         5: .line 285
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;
            1    6     1    sm  Ljava/lang/SecurityManager;

  public static synchronized java.awt.Desktop getDesktop();
    descriptor: ()Ljava/awt/Desktop;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=0
         0: .line 301
            invokestatic java.awt.GraphicsEnvironment.isHeadless:()Z
            ifeq 1
            new java.awt.HeadlessException
            dup
            invokespecial java.awt.HeadlessException.<init>:()V
            athrow
         1: .line 302
      StackMap locals:
      StackMap stack:
            invokestatic java.awt.Desktop.isDesktopSupported:()Z
            ifne 3
         2: .line 303
            new java.lang.UnsupportedOperationException
            dup
            ldc "Desktop API is not supported on the current platform"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 307
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
            astore 0 /* context */
        start local 0 // sun.awt.AppContext context
         4: .line 308
            aload 0 /* context */
            ldc Ljava/awt/Desktop;
            invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.awt.Desktop
            astore 1 /* desktop */
        start local 1 // java.awt.Desktop desktop
         5: .line 310
            aload 1 /* desktop */
            ifnonnull 8
         6: .line 311
            new java.awt.Desktop
            dup
            invokespecial java.awt.Desktop.<init>:()V
            astore 1 /* desktop */
         7: .line 312
            aload 0 /* context */
            ldc Ljava/awt/Desktop;
            aload 1 /* desktop */
            invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 315
      StackMap locals: sun.awt.AppContext java.awt.Desktop
      StackMap stack:
            aload 1 /* desktop */
            areturn
        end local 1 // java.awt.Desktop desktop
        end local 0 // sun.awt.AppContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            4    9     0  context  Lsun/awt/AppContext;
            5    9     1  desktop  Ljava/awt/Desktop;

  public static boolean isDesktopSupported();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 328
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            astore 0 /* defaultToolkit */
        start local 0 // java.awt.Toolkit defaultToolkit
         1: .line 329
            aload 0 /* defaultToolkit */
            instanceof sun.awt.SunToolkit
            ifeq 3
         2: .line 330
            aload 0 /* defaultToolkit */
            checkcast sun.awt.SunToolkit
            invokevirtual sun.awt.SunToolkit.isDesktopSupported:()Z
            ireturn
         3: .line 332
      StackMap locals: java.awt.Toolkit
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.awt.Toolkit defaultToolkit
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            1    4     0  defaultToolkit  Ljava/awt/Toolkit;

  public boolean isSupported(java.awt.Desktop$Action);
    descriptor: (Ljava/awt/Desktop$Action;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.Desktop$Action action
         0: .line 352
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* action */
            invokeinterface java.awt.peer.DesktopPeer.isSupported:(Ljava/awt/Desktop$Action;)Z
            ireturn
        end local 1 // java.awt.Desktop$Action action
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljava/awt/Desktop;
            0    1     1  action  Ljava/awt/Desktop$Action;
    MethodParameters:
        Name  Flags
      action  

  private static void checkFileValidation(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.io.File file
         0: .line 365
            aload 0 /* file */
            invokevirtual java.io.File.exists:()Z
            ifne 4
         1: .line 366
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 367
            aload 0 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " doesn't exist."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 366
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 369
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  file  Ljava/io/File;
    MethodParameters:
      Name  Flags
      file  

  private void checkActionSupport(java.awt.Desktop$Action);
    descriptor: (Ljava/awt/Desktop$Action;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.Desktop$Action actionType
         0: .line 379
            aload 0 /* this */
            aload 1 /* actionType */
            invokevirtual java.awt.Desktop.isSupported:(Ljava/awt/Desktop$Action;)Z
            ifne 4
         1: .line 380
            new java.lang.UnsupportedOperationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* actionType */
            invokevirtual java.awt.Desktop$Action.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 381
            ldc " action is not supported on the current platform!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 380
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 383
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.Desktop$Action actionType
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljava/awt/Desktop;
            0    5     1  actionType  Ljava/awt/Desktop$Action;
    MethodParameters:
            Name  Flags
      actionType  

  private void checkAWTPermission();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 393
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 394
            aload 1 /* sm */
            ifnull 5
         2: .line 395
            aload 1 /* sm */
            new java.awt.AWTPermission
            dup
         3: .line 396
            ldc "showWindowWithoutWarningBanner"
            invokespecial java.awt.AWTPermission.<init>:(Ljava/lang/String;)V
         4: .line 395
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         5: .line 398
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;
            1    6     1    sm  Ljava/lang/SecurityManager;

  public void open(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.io.File file
         0: .line 423
            new java.io.File
            dup
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
         1: .line 424
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         2: .line 425
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         3: .line 426
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.OPEN:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         4: .line 427
            aload 1 /* file */
            invokestatic java.awt.Desktop.checkFileValidation:(Ljava/io/File;)V
         5: .line 429
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* file */
            invokeinterface java.awt.peer.DesktopPeer.open:(Ljava/io/File;)V
         6: .line 430
            return
        end local 1 // java.io.File file
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/awt/Desktop;
            0    7     1  file  Ljava/io/File;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public void edit(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.io.File file
         0: .line 455
            new java.io.File
            dup
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
         1: .line 456
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         2: .line 457
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         3: .line 458
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.EDIT:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         4: .line 459
            aload 1 /* file */
            invokevirtual java.io.File.canWrite:()Z
            pop
         5: .line 460
            aload 1 /* file */
            invokestatic java.awt.Desktop.checkFileValidation:(Ljava/io/File;)V
         6: .line 462
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* file */
            invokeinterface java.awt.peer.DesktopPeer.edit:(Ljava/io/File;)V
         7: .line 463
            return
        end local 1 // java.io.File file
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/awt/Desktop;
            0    8     1  file  Ljava/io/File;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public void print(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.io.File file
         0: .line 486
            new java.io.File
            dup
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
         1: .line 487
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 488
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         3: .line 489
            aload 2 /* sm */
            ifnull 5
         4: .line 490
            aload 2 /* sm */
            invokevirtual java.lang.SecurityManager.checkPrintJobAccess:()V
         5: .line 492
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.PRINT:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         6: .line 493
            aload 1 /* file */
            invokestatic java.awt.Desktop.checkFileValidation:(Ljava/io/File;)V
         7: .line 495
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* file */
            invokeinterface java.awt.peer.DesktopPeer.print:(Ljava/io/File;)V
         8: .line 496
            return
        end local 2 // java.lang.SecurityManager sm
        end local 1 // java.io.File file
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/awt/Desktop;
            0    9     1  file  Ljava/io/File;
            3    9     2    sm  Ljava/lang/SecurityManager;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public void browse(java.net.URI);
    descriptor: (Ljava/net/URI;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.net.URI uri
         0: .line 522
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         1: .line 523
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 524
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.BROWSE:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 525
            aload 1 /* uri */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 526
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* uri */
            invokeinterface java.awt.peer.DesktopPeer.browse:(Ljava/net/URI;)V
         5: .line 527
            return
        end local 1 // java.net.URI uri
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;
            0    6     1   uri  Ljava/net/URI;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      uri   

  public void mail();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 545
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         1: .line 546
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 547
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.MAIL:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 548
            aconst_null
            astore 1 /* mailtoURI */
        start local 1 // java.net.URI mailtoURI
         4: .line 550
            new java.net.URI
            dup
            ldc "mailto:?"
            invokespecial java.net.URI.<init>:(Ljava/lang/String;)V
            astore 1 /* mailtoURI */
         5: .line 551
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* mailtoURI */
            invokeinterface java.awt.peer.DesktopPeer.mail:(Ljava/net/URI;)V
         6: .line 552
            goto 8
      StackMap locals: java.awt.Desktop java.net.URI
      StackMap stack: java.net.URISyntaxException
         7: pop
         8: .line 555
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.net.URI mailtoURI
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/awt/Desktop;
            4    9     1  mailtoURI  Ljava/net/URI;
      Exception table:
        from    to  target  type
           4     6       7  Class java.net.URISyntaxException
    Exceptions:
      throws java.io.IOException

  public void mail(java.net.URI);
    descriptor: (Ljava/net/URI;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.net.URI mailtoURI
         0: .line 587
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         1: .line 588
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 589
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.MAIL:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 590
            aload 1 /* mailtoURI */
            ifnonnull 4
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         4: .line 592
      StackMap locals:
      StackMap stack:
            ldc "mailto"
            aload 1 /* mailtoURI */
            invokevirtual java.net.URI.getScheme:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 6
         5: .line 593
            new java.lang.IllegalArgumentException
            dup
            ldc "URI scheme is not \"mailto\""
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* mailtoURI */
            invokeinterface java.awt.peer.DesktopPeer.mail:(Ljava/net/URI;)V
         7: .line 597
            return
        end local 1 // java.net.URI mailtoURI
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljava/awt/Desktop;
            0    8     1  mailtoURI  Ljava/net/URI;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
           Name  Flags
      mailtoURI  

  private void checkExec();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 600
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 601
            aload 1 /* sm */
            ifnull 5
         2: .line 602
            aload 1 /* sm */
            new java.io.FilePermission
            dup
            ldc "<<ALL FILES>>"
         3: .line 603
            ldc "execute"
            invokespecial java.io.FilePermission.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 602
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         5: .line 605
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;
            1    6     1    sm  Ljava/lang/SecurityManager;
    Exceptions:
      throws java.lang.SecurityException

  private void checkRead();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 608
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 609
            aload 1 /* sm */
            ifnull 5
         2: .line 610
            aload 1 /* sm */
            new java.io.FilePermission
            dup
            ldc "<<ALL FILES>>"
         3: .line 611
            ldc "read"
            invokespecial java.io.FilePermission.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 610
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         5: .line 613
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;
            1    6     1    sm  Ljava/lang/SecurityManager;
    Exceptions:
      throws java.lang.SecurityException

  private void checkQuitPermission();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 616
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: .line 617
            aload 1 /* sm */
            ifnull 3
         2: .line 618
            aload 1 /* sm */
            iconst_0
            invokevirtual java.lang.SecurityManager.checkExit:(I)V
         3: .line 620
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager sm
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/Desktop;
            1    4     1    sm  Ljava/lang/SecurityManager;

  public void addAppEventListener(java.awt.desktop.SystemEventListener);
    descriptor: (Ljava/awt/desktop/SystemEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.SystemEventListener listener
         0: .line 645
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 646
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* listener */
            invokeinterface java.awt.peer.DesktopPeer.addAppEventListener:(Ljava/awt/desktop/SystemEventListener;)V
         2: .line 647
            return
        end local 1 // java.awt.desktop.SystemEventListener listener
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljava/awt/Desktop;
            0    3     1  listener  Ljava/awt/desktop/SystemEventListener;
    MethodParameters:
          Name  Flags
      listener  final

  public void removeAppEventListener(java.awt.desktop.SystemEventListener);
    descriptor: (Ljava/awt/desktop/SystemEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.SystemEventListener listener
         0: .line 672
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 673
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* listener */
            invokeinterface java.awt.peer.DesktopPeer.removeAppEventListener:(Ljava/awt/desktop/SystemEventListener;)V
         2: .line 674
            return
        end local 1 // java.awt.desktop.SystemEventListener listener
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljava/awt/Desktop;
            0    3     1  listener  Ljava/awt/desktop/SystemEventListener;
    MethodParameters:
          Name  Flags
      listener  final

  public void setAboutHandler(java.awt.desktop.AboutHandler);
    descriptor: (Ljava/awt/desktop/AboutHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.AboutHandler aboutHandler
         0: .line 695
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 696
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_ABOUT:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         2: .line 697
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* aboutHandler */
            invokeinterface java.awt.peer.DesktopPeer.setAboutHandler:(Ljava/awt/desktop/AboutHandler;)V
         3: .line 698
            return
        end local 1 // java.awt.desktop.AboutHandler aboutHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Ljava/awt/Desktop;
            0    4     1  aboutHandler  Ljava/awt/desktop/AboutHandler;
    MethodParameters:
              Name  Flags
      aboutHandler  final

  public void setPreferencesHandler(java.awt.desktop.PreferencesHandler);
    descriptor: (Ljava/awt/desktop/PreferencesHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.PreferencesHandler preferencesHandler
         0: .line 718
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 719
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_PREFERENCES:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         2: .line 720
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* preferencesHandler */
            invokeinterface java.awt.peer.DesktopPeer.setPreferencesHandler:(Ljava/awt/desktop/PreferencesHandler;)V
         3: .line 721
            return
        end local 1 // java.awt.desktop.PreferencesHandler preferencesHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    4     0                this  Ljava/awt/Desktop;
            0    4     1  preferencesHandler  Ljava/awt/desktop/PreferencesHandler;
    MethodParameters:
                    Name  Flags
      preferencesHandler  final

  public void setOpenFileHandler(java.awt.desktop.OpenFilesHandler);
    descriptor: (Ljava/awt/desktop/OpenFilesHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.OpenFilesHandler openFileHandler
         0: .line 748
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 749
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 750
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkRead:()V
         3: .line 751
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_OPEN_FILE:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         4: .line 752
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* openFileHandler */
            invokeinterface java.awt.peer.DesktopPeer.setOpenFileHandler:(Ljava/awt/desktop/OpenFilesHandler;)V
         5: .line 753
            return
        end local 1 // java.awt.desktop.OpenFilesHandler openFileHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Ljava/awt/Desktop;
            0    6     1  openFileHandler  Ljava/awt/desktop/OpenFilesHandler;
    MethodParameters:
                 Name  Flags
      openFileHandler  final

  public void setPrintFileHandler(java.awt.desktop.PrintFilesHandler);
    descriptor: (Ljava/awt/desktop/PrintFilesHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.PrintFilesHandler printFileHandler
         0: .line 777
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 778
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         2: .line 779
            aload 2 /* sm */
            ifnull 4
         3: .line 780
            aload 2 /* sm */
            invokevirtual java.lang.SecurityManager.checkPrintJobAccess:()V
         4: .line 782
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_PRINT_FILE:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         5: .line 783
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* printFileHandler */
            invokeinterface java.awt.peer.DesktopPeer.setPrintFileHandler:(Ljava/awt/desktop/PrintFilesHandler;)V
         6: .line 784
            return
        end local 2 // java.lang.SecurityManager sm
        end local 1 // java.awt.desktop.PrintFilesHandler printFileHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Ljava/awt/Desktop;
            0    7     1  printFileHandler  Ljava/awt/desktop/PrintFilesHandler;
            2    7     2                sm  Ljava/lang/SecurityManager;
    MethodParameters:
                  Name  Flags
      printFileHandler  final

  public void setOpenURIHandler(java.awt.desktop.OpenURIHandler);
    descriptor: (Ljava/awt/desktop/OpenURIHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.OpenURIHandler openURIHandler
         0: .line 812
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 813
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 814
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_OPEN_URI:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 815
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* openURIHandler */
            invokeinterface java.awt.peer.DesktopPeer.setOpenURIHandler:(Ljava/awt/desktop/OpenURIHandler;)V
         4: .line 816
            return
        end local 1 // java.awt.desktop.OpenURIHandler openURIHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Ljava/awt/Desktop;
            0    5     1  openURIHandler  Ljava/awt/desktop/OpenURIHandler;
    MethodParameters:
                Name  Flags
      openURIHandler  final

  public void setQuitHandler(java.awt.desktop.QuitHandler);
    descriptor: (Ljava/awt/desktop/QuitHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.QuitHandler quitHandler
         0: .line 835
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 836
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkQuitPermission:()V
         2: .line 837
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_QUIT_HANDLER:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 838
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* quitHandler */
            invokeinterface java.awt.peer.DesktopPeer.setQuitHandler:(Ljava/awt/desktop/QuitHandler;)V
         4: .line 839
            return
        end local 1 // java.awt.desktop.QuitHandler quitHandler
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Ljava/awt/Desktop;
            0    5     1  quitHandler  Ljava/awt/desktop/QuitHandler;
    MethodParameters:
             Name  Flags
      quitHandler  final

  public void setQuitStrategy(java.awt.desktop.QuitStrategy);
    descriptor: (Ljava/awt/desktop/QuitStrategy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.awt.desktop.QuitStrategy strategy
         0: .line 856
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 857
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkQuitPermission:()V
         2: .line 858
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_QUIT_STRATEGY:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 859
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* strategy */
            invokeinterface java.awt.peer.DesktopPeer.setQuitStrategy:(Ljava/awt/desktop/QuitStrategy;)V
         4: .line 860
            return
        end local 1 // java.awt.desktop.QuitStrategy strategy
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Ljava/awt/Desktop;
            0    5     1  strategy  Ljava/awt/desktop/QuitStrategy;
    MethodParameters:
          Name  Flags
      strategy  final

  public void enableSuddenTermination();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 885
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 886
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkQuitPermission:()V
         2: .line 887
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_SUDDEN_TERMINATION:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 888
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            invokeinterface java.awt.peer.DesktopPeer.enableSuddenTermination:()V
         4: .line 889
            return
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/awt/Desktop;

  public void disableSuddenTermination();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 906
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 907
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkQuitPermission:()V
         2: .line 908
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_SUDDEN_TERMINATION:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         3: .line 909
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            invokeinterface java.awt.peer.DesktopPeer.disableSuddenTermination:()V
         4: .line 910
            return
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/awt/Desktop;

  public void requestForeground(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // boolean allWindows
         0: .line 924
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 925
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_REQUEST_FOREGROUND:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         2: .line 926
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            iload 1 /* allWindows */
            invokeinterface java.awt.peer.DesktopPeer.requestForeground:(Z)V
         3: .line 927
            return
        end local 1 // boolean allWindows
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Ljava/awt/Desktop;
            0    4     1  allWindows  Z
    MethodParameters:
            Name  Flags
      allWindows  final

  public void openHelpViewer();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.Desktop this
         0: .line 947
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         1: .line 948
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         2: .line 949
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         3: .line 950
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_HELP_VIEWER:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         4: .line 951
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            invokeinterface java.awt.peer.DesktopPeer.openHelpViewer:()V
         5: .line 952
            return
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/awt/Desktop;

  public void setDefaultMenuBar(javax.swing.JMenuBar);
    descriptor: (Ljavax/swing/JMenuBar;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // javax.swing.JMenuBar menuBar
         0: .line 965
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkEventsProcessingPermission:()V
         1: .line 966
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.APP_MENU_BAR:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         2: .line 968
            aload 1 /* menuBar */
            ifnull 7
         3: .line 969
            aload 1 /* menuBar */
            invokevirtual javax.swing.JMenuBar.getParent:()Ljava/awt/Container;
            astore 2 /* parent */
        start local 2 // java.awt.Container parent
         4: .line 970
            aload 2 /* parent */
            ifnull 7
         5: .line 971
            aload 2 /* parent */
            aload 1 /* menuBar */
            invokevirtual java.awt.Container.remove:(Ljava/awt/Component;)V
         6: .line 972
            aload 1 /* menuBar */
            invokevirtual javax.swing.JMenuBar.updateUI:()V
        end local 2 // java.awt.Container parent
         7: .line 976
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* menuBar */
            invokeinterface java.awt.peer.DesktopPeer.setDefaultMenuBar:(Ljavax/swing/JMenuBar;)V
         8: .line 977
            return
        end local 1 // javax.swing.JMenuBar menuBar
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Ljava/awt/Desktop;
            0    9     1  menuBar  Ljavax/swing/JMenuBar;
            4    7     2   parent  Ljava/awt/Container;
    MethodParameters:
         Name  Flags
      menuBar  final

  public void browseFileDirectory(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.io.File file
         0: .line 997
            new java.io.File
            dup
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
         1: .line 998
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkAWTPermission:()V
         2: .line 999
            aload 0 /* this */
            invokevirtual java.awt.Desktop.checkExec:()V
         3: .line 1000
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.BROWSE_FILE_DIR:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         4: .line 1001
            aload 1 /* file */
            invokestatic java.awt.Desktop.checkFileValidation:(Ljava/io/File;)V
         5: .line 1002
            aload 1 /* file */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            astore 2 /* parentFile */
        start local 2 // java.io.File parentFile
         6: .line 1003
            aload 2 /* parentFile */
            ifnull 7
            aload 2 /* parentFile */
            invokevirtual java.io.File.exists:()Z
            ifne 8
         7: .line 1004
      StackMap locals: java.io.File
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Parent folder doesn't exist"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1006
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* file */
            invokeinterface java.awt.peer.DesktopPeer.browseFileDirectory:(Ljava/io/File;)Z
            pop
         9: .line 1007
            return
        end local 2 // java.io.File parentFile
        end local 1 // java.io.File file
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljava/awt/Desktop;
            0   10     1        file  Ljava/io/File;
            6   10     2  parentFile  Ljava/io/File;
    MethodParameters:
      Name  Flags
      file  

  public boolean moveToTrash(java.io.File);
    descriptor: (Ljava/io/File;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.awt.Desktop this
        start local 1 // java.io.File file
         0: .line 1025
            new java.io.File
            dup
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
         1: .line 1026
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sm */
        start local 2 // java.lang.SecurityManager sm
         2: .line 1027
            aload 2 /* sm */
            ifnull 4
         3: .line 1028
            aload 2 /* sm */
            aload 1 /* file */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.SecurityManager.checkDelete:(Ljava/lang/String;)V
         4: .line 1030
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            getstatic java.awt.Desktop$Action.MOVE_TO_TRASH:Ljava/awt/Desktop$Action;
            invokevirtual java.awt.Desktop.checkActionSupport:(Ljava/awt/Desktop$Action;)V
         5: .line 1031
            aload 1 /* file */
            astore 3 /* finalFile */
        start local 3 // java.io.File finalFile
         6: .line 1032
            aload 3 /* finalFile */
            invokedynamic run(Ljava/io/File;)Ljava/security/PrivilegedAction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  java/awt/Desktop.lambda$0(Ljava/io/File;)Ljava/lang/Object; (6)
                  ()Ljava/lang/Object;
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         7: .line 1036
            aload 0 /* this */
            getfield java.awt.Desktop.peer:Ljava/awt/peer/DesktopPeer;
            aload 1 /* file */
            invokeinterface java.awt.peer.DesktopPeer.moveToTrash:(Ljava/io/File;)Z
            ireturn
        end local 3 // java.io.File finalFile
        end local 2 // java.lang.SecurityManager sm
        end local 1 // java.io.File file
        end local 0 // java.awt.Desktop this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljava/awt/Desktop;
            0    8     1       file  Ljava/io/File;
            2    8     2         sm  Ljava/lang/SecurityManager;
            6    8     3  finalFile  Ljava/io/File;
    MethodParameters:
      Name  Flags
      file  

  private static java.lang.Object lambda$0(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1033
            aload 0
            invokestatic java.awt.Desktop.checkFileValidation:(Ljava/io/File;)V
         1: .line 1034
            aconst_null
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Desktop.java"
NestMembers:
  java.awt.Desktop$Action
InnerClasses:
  public final Action = java.awt.Desktop$Action of java.awt.Desktop
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles