public class org.hsqldb.lib.FileUtil implements org.hsqldb.lib.FileAccess
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.lib.FileUtil
  super_class: java.lang.Object
{
  private static final org.hsqldb.lib.FrameworkLogger LOG;
    descriptor: Lorg/hsqldb/lib/FrameworkLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static org.hsqldb.lib.FileUtil fileUtil;
    descriptor: Lorg/hsqldb/lib/FileUtil;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static org.hsqldb.lib.FileUtil$FileAccessRes fileAccessRes;
    descriptor: Lorg/hsqldb/lib/FileUtil$FileAccessRes;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  public final boolean fsIsIgnoreCase;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final boolean fsNormalizesPosixSeparator;
    descriptor: Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  final java.util.Random random;
    descriptor: Ljava/util/Random;
    flags: (0x0010) ACC_FINAL

  static int discardSuffixLength;
    descriptor: I
    flags: (0x0008) ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 61
            ldc Lorg/hsqldb/lib/FileUtil;
            invokestatic org.hsqldb.lib.FrameworkLogger.getLog:(Ljava/lang/Class;)Lorg/hsqldb/lib/FrameworkLogger;
         1: .line 60
            putstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
         2: .line 62
            new org.hsqldb.lib.FileUtil
            dup
            invokespecial org.hsqldb.lib.FileUtil.<init>:()V
            putstatic org.hsqldb.lib.FileUtil.fileUtil:Lorg/hsqldb/lib/FileUtil;
         3: .line 63
            new org.hsqldb.lib.FileUtil$FileAccessRes
            dup
            invokespecial org.hsqldb.lib.FileUtil$FileAccessRes.<init>:()V
            putstatic org.hsqldb.lib.FileUtil.fileAccessRes:Lorg/hsqldb/lib/FileUtil$FileAccessRes;
         4: .line 530
            bipush 9
            putstatic org.hsqldb.lib.FileUtil.discardSuffixLength:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.hsqldb.lib.FileUtil this
         0: .line 66
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 173
            aload 0 /* this */
         2: .line 174
            new java.io.File
            dup
            ldc "A"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            new java.io.File
            dup
            ldc "a"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
            putfield org.hsqldb.lib.FileUtil.fsIsIgnoreCase:Z
         3: .line 178
            aload 0 /* this */
         4: .line 179
            new java.io.File
            dup
            ldc "/"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            getstatic java.io.File.separator:Ljava/lang/String;
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            putfield org.hsqldb.lib.FileUtil.fsNormalizesPosixSeparator:Z
         5: .line 182
            aload 0 /* this */
            new java.util.Random
            dup
            invokestatic java.lang.System.currentTimeMillis:()J
            invokespecial java.util.Random.<init>:(J)V
            putfield org.hsqldb.lib.FileUtil.random:Ljava/util/Random;
         6: .line 66
            return
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/hsqldb/lib/FileUtil;

  public static org.hsqldb.lib.FileUtil getFileUtil();
    descriptor: ()Lorg/hsqldb/lib/FileUtil;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 69
            getstatic org.hsqldb.lib.FileUtil.fileUtil:Lorg/hsqldb/lib/FileUtil;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.hsqldb.lib.FileAccess getFileAccess(boolean);
    descriptor: (Z)Lorg/hsqldb/lib/FileAccess;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // boolean isResource
         0: .line 73
            iload 0 /* isResource */
            ifeq 1
            getstatic org.hsqldb.lib.FileUtil.fileAccessRes:Lorg/hsqldb/lib/FileUtil$FileAccessRes;
            goto 2
         1: .line 74
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.lib.FileUtil.fileUtil:Lorg/hsqldb/lib/FileUtil;
         2: .line 73
      StackMap locals:
      StackMap stack: org.hsqldb.lib.FileAccess
            areturn
        end local 0 // boolean isResource
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  isResource  Z
    MethodParameters:
            Name  Flags
      isResource  

  public boolean isStreamElement(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String elementName
         0: .line 78
            new java.io.File
            dup
            aload 1 /* elementName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.exists:()Z
            ireturn
        end local 1 // java.lang.String elementName
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  elementName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      elementName  

  public java.io.InputStream openInputStreamElement(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/InputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String streamName
         0: .line 85
            new java.io.FileInputStream
            dup
            new java.io.File
            dup
            aload 1 /* streamName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
         1: areturn
         2: .line 86
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* e */
        start local 2 // java.lang.Throwable e
         3: .line 87
            aload 2 /* e */
            invokestatic org.hsqldb.lib.java.JavaSystem.toIOException:(Ljava/lang/Throwable;)Ljava/io/IOException;
            athrow
        end local 2 // java.lang.Throwable e
        end local 1 // java.lang.String streamName
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/hsqldb/lib/FileUtil;
            0    4     1  streamName  Ljava/lang/String;
            3    4     2           e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      streamName  

  public void createParentDirs(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String filename
         0: .line 92
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* filename */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual org.hsqldb.lib.FileUtil.makeParentDirectories:(Ljava/io/File;)V
         1: .line 93
            return
        end local 1 // java.lang.String filename
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/hsqldb/lib/FileUtil;
            0    2     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  public void removeElement(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String filename
         0: .line 97
            aload 0 /* this */
            aload 1 /* filename */
            invokevirtual org.hsqldb.lib.FileUtil.isStreamElement:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 98
            aload 0 /* this */
            aload 1 /* filename */
            invokevirtual org.hsqldb.lib.FileUtil.delete:(Ljava/lang/String;)Z
            pop
         2: .line 100
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String filename
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/hsqldb/lib/FileUtil;
            0    3     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  public void renameElement(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String oldName
        start local 2 // java.lang.String newName
        start local 3 // boolean copyIfFailed
         0: .line 105
            aload 0 /* this */
            aload 1 /* oldName */
            aload 2 /* newName */
            invokevirtual org.hsqldb.lib.FileUtil.renameWithOverwrite:(Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 2
         1: .line 106
            return
         2: .line 109
      StackMap locals:
      StackMap stack:
            iload 3 /* copyIfFailed */
            ifne 4
         3: .line 110
            return
         4: .line 113
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* inputStream */
        start local 4 // java.io.InputStream inputStream
         5: .line 114
            aconst_null
            astore 5 /* outputStream */
        start local 5 // java.io.OutputStream outputStream
         6: .line 117
            aload 0 /* this */
            aload 1 /* oldName */
            invokevirtual org.hsqldb.lib.FileUtil.openInputStreamElement:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 4 /* inputStream */
         7: .line 118
            aload 0 /* this */
            aload 2 /* newName */
            iconst_0
            invokevirtual org.hsqldb.lib.FileUtil.openOutputStreamElement:(Ljava/lang/String;Z)Ljava/io/OutputStream;
            astore 5 /* outputStream */
         8: .line 120
            aload 4 /* inputStream */
            aload 5 /* outputStream */
            invokestatic org.hsqldb.lib.InOutUtil.copy:(Ljava/io/InputStream;Ljava/io/OutputStream;)J
            pop2
         9: .line 121
            aload 0 /* this */
            aload 5 /* outputStream */
            invokevirtual org.hsqldb.lib.FileUtil.getFileSync:(Ljava/io/OutputStream;)Lorg/hsqldb/lib/FileAccess$FileSync;
            invokeinterface org.hsqldb.lib.FileAccess$FileSync.sync:()V
        10: .line 122
            goto 39
      StackMap locals: org.hsqldb.lib.FileUtil java.lang.String java.lang.String int java.io.InputStream java.io.OutputStream
      StackMap stack: java.io.IOException
        11: astore 6 /* e */
        start local 6 // java.io.IOException e
        12: .line 124
            ldc "Platform does not allow renaming files and failed to copy file contents from %s to %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        13: .line 125
            aload 1 /* oldName */
            aastore
            dup
            iconst_1
            aload 2 /* newName */
            aastore
        14: .line 123
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 7 /* message */
        start local 7 // java.lang.String message
        15: .line 127
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            aload 7 /* message */
            aload 6 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
        16: .line 132
            aload 4 /* inputStream */
            ifnull 21
        17: .line 133
            aload 4 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        18: .line 135
            goto 21
      StackMap locals: org.hsqldb.lib.FileUtil java.lang.String java.lang.String int java.io.InputStream java.io.OutputStream java.io.IOException java.lang.String
      StackMap stack: java.io.IOException
        19: astore 9 /* e */
        start local 9 // java.io.IOException e
        20: .line 136
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        21: .line 140
      StackMap locals:
      StackMap stack:
            aload 5 /* outputStream */
            ifnull 26
        22: .line 141
            aload 5 /* outputStream */
            invokevirtual java.io.OutputStream.close:()V
        23: .line 143
            goto 26
      StackMap locals:
      StackMap stack: java.io.IOException
        24: astore 9 /* e */
        start local 9 // java.io.IOException e
        25: .line 144
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        26: .line 129
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.lang.String message
        end local 6 // java.io.IOException e
        27: .line 130
      StackMap locals: org.hsqldb.lib.FileUtil java.lang.String java.lang.String int java.io.InputStream java.io.OutputStream
      StackMap stack: java.lang.Throwable
            astore 8
        28: .line 132
            aload 4 /* inputStream */
            ifnull 33
        29: .line 133
            aload 4 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        30: .line 135
            goto 33
      StackMap locals: org.hsqldb.lib.FileUtil java.lang.String java.lang.String int java.io.InputStream java.io.OutputStream top top java.lang.Throwable
      StackMap stack: java.io.IOException
        31: astore 9 /* e */
        start local 9 // java.io.IOException e
        32: .line 136
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        33: .line 140
      StackMap locals:
      StackMap stack:
            aload 5 /* outputStream */
            ifnull 38
        34: .line 141
            aload 5 /* outputStream */
            invokevirtual java.io.OutputStream.close:()V
        35: .line 143
            goto 38
      StackMap locals:
      StackMap stack: java.io.IOException
        36: astore 9 /* e */
        start local 9 // java.io.IOException e
        37: .line 144
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        38: .line 146
      StackMap locals:
      StackMap stack:
            aload 8
            athrow
        39: .line 132
      StackMap locals: org.hsqldb.lib.FileUtil java.lang.String java.lang.String int java.io.InputStream java.io.OutputStream
      StackMap stack:
            aload 4 /* inputStream */
            ifnull 44
        40: .line 133
            aload 4 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        41: .line 135
            goto 44
      StackMap locals:
      StackMap stack: java.io.IOException
        42: astore 9 /* e */
        start local 9 // java.io.IOException e
        43: .line 136
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        44: .line 140
      StackMap locals:
      StackMap stack:
            aload 5 /* outputStream */
            ifnull 49
        45: .line 141
            aload 5 /* outputStream */
            invokevirtual java.io.OutputStream.close:()V
        46: .line 143
            goto 49
      StackMap locals:
      StackMap stack: java.io.IOException
        47: astore 9 /* e */
        start local 9 // java.io.IOException e
        48: .line 144
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            ldc "Failed to dispose streams"
            aload 9 /* e */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finest:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 9 // java.io.IOException e
        49: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* oldName */
            invokevirtual org.hsqldb.lib.FileUtil.delete:(Ljava/lang/String;)Z
            ifne 51
        50: .line 149
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            new java.lang.StringBuilder
            dup
            ldc "Failed to delete renamed file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* oldName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hsqldb.lib.FrameworkLogger.warning:(Ljava/lang/String;)V
        51: .line 153
      StackMap locals:
      StackMap stack:
            ldc "Platform does not allow renaming files. Copied file from %s to %s instead"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        52: .line 154
            aload 1 /* oldName */
            aastore
            dup
            iconst_1
            aload 2 /* newName */
            aastore
        53: .line 152
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 6 /* message */
        start local 6 // java.lang.String message
        54: .line 156
            getstatic org.hsqldb.lib.FileUtil.LOG:Lorg/hsqldb/lib/FrameworkLogger;
            aload 6 /* message */
            invokevirtual org.hsqldb.lib.FrameworkLogger.finer:(Ljava/lang/String;)V
        55: .line 157
            return
        end local 6 // java.lang.String message
        end local 5 // java.io.OutputStream outputStream
        end local 4 // java.io.InputStream inputStream
        end local 3 // boolean copyIfFailed
        end local 2 // java.lang.String newName
        end local 1 // java.lang.String oldName
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   56     0          this  Lorg/hsqldb/lib/FileUtil;
            0   56     1       oldName  Ljava/lang/String;
            0   56     2       newName  Ljava/lang/String;
            0   56     3  copyIfFailed  Z
            5   56     4   inputStream  Ljava/io/InputStream;
            6   56     5  outputStream  Ljava/io/OutputStream;
           12   27     6             e  Ljava/io/IOException;
           15   27     7       message  Ljava/lang/String;
           20   21     9             e  Ljava/io/IOException;
           32   33     9             e  Ljava/io/IOException;
           43   44     9             e  Ljava/io/IOException;
           25   26     9             e  Ljava/io/IOException;
           37   38     9             e  Ljava/io/IOException;
           48   49     9             e  Ljava/io/IOException;
           54   56     6       message  Ljava/lang/String;
      Exception table:
        from    to  target  type
           6    10      11  Class java.io.IOException
          16    18      19  Class java.io.IOException
          21    23      24  Class java.io.IOException
           6    16      27  any
          28    30      31  Class java.io.IOException
          33    35      36  Class java.io.IOException
          39    41      42  Class java.io.IOException
          44    46      47  Class java.io.IOException
    MethodParameters:
              Name  Flags
      oldName       
      newName       
      copyIfFailed  

  public java.io.OutputStream openOutputStreamElement(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/io/OutputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String streamName
        start local 2 // boolean append
         0: .line 161
            new java.io.FileOutputStream
            dup
            new java.io.File
            dup
            aload 1 /* streamName */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            iload 2 /* append */
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;Z)V
            areturn
        end local 2 // boolean append
        end local 1 // java.lang.String streamName
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  streamName  Ljava/lang/String;
            0    1     2      append  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      streamName  
      append      

  public boolean delete(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String filename
         0: .line 188
            new java.io.File
            dup
            aload 1 /* filename */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.delete:()Z
            ireturn
        end local 1 // java.lang.String filename
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  public void deleteOnExit(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.io.File f
         0: .line 207
            aload 1 /* f */
            invokevirtual java.io.File.deleteOnExit:()V
         1: .line 208
            return
        end local 1 // java.io.File f
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/lib/FileUtil;
            0    2     1     f  Ljava/io/File;
    MethodParameters:
      Name  Flags
      f     

  public boolean exists(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String filename
         0: .line 214
            new java.io.File
            dup
            aload 1 /* filename */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.exists:()Z
            ireturn
        end local 1 // java.lang.String filename
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  

  public boolean exists(java.lang.String, boolean, java.lang.Class);
    descriptor: (Ljava/lang/String;ZLjava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String fileName
        start local 2 // boolean resource
        start local 3 // java.lang.Class cla
         0: .line 219
            aload 1 /* fileName */
            ifnull 1
            aload 1 /* fileName */
            invokevirtual java.lang.String.length:()I
            ifne 2
         1: .line 220
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 223
      StackMap locals:
      StackMap stack:
            iload 2 /* resource */
            ifeq 4
            aload 3 /* cla */
            aload 1 /* fileName */
            invokevirtual java.lang.Class.getResource:(Ljava/lang/String;)Ljava/net/URL;
            ifnull 3
            iconst_1
            goto 5
      StackMap locals:
      StackMap stack:
         3: iconst_0
            goto 5
         4: .line 224
      StackMap locals:
      StackMap stack:
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 1 /* fileName */
            invokevirtual org.hsqldb.lib.FileUtil.exists:(Ljava/lang/String;)Z
         5: .line 223
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 3 // java.lang.Class cla
        end local 2 // boolean resource
        end local 1 // java.lang.String fileName
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/hsqldb/lib/FileUtil;
            0    6     1  fileName  Ljava/lang/String;
            0    6     2  resource  Z
            0    6     3       cla  Ljava/lang/Class;
    MethodParameters:
          Name  Flags
      fileName  
      resource  
      cla       

  private boolean renameWithOverwrite(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String oldname
        start local 2 // java.lang.String newname
         0: .line 236
            new java.io.File
            dup
            aload 1 /* oldname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 3 /* file */
        start local 3 // java.io.File file
         1: .line 238
            aload 0 /* this */
            aload 2 /* newname */
            invokevirtual org.hsqldb.lib.FileUtil.delete:(Ljava/lang/String;)Z
            pop
         2: .line 240
            aload 3 /* file */
            new java.io.File
            dup
            aload 2 /* newname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            istore 4 /* renamed */
        start local 4 // boolean renamed
         3: .line 242
            iload 4 /* renamed */
            ifeq 5
         4: .line 243
            iconst_1
            ireturn
         5: .line 246
      StackMap locals: java.io.File int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* newname */
            invokevirtual org.hsqldb.lib.FileUtil.delete:(Ljava/lang/String;)Z
            pop
         6: .line 248
            aload 0 /* this */
            aload 2 /* newname */
            invokevirtual org.hsqldb.lib.FileUtil.exists:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 249
            new java.io.File
            dup
            aload 2 /* newname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            new java.io.File
            dup
            aload 2 /* newname */
            invokestatic org.hsqldb.lib.FileUtil.newDiscardFileName:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            pop
         8: .line 252
      StackMap locals:
      StackMap stack:
            aload 3 /* file */
            new java.io.File
            dup
            aload 2 /* newname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            ireturn
        end local 4 // boolean renamed
        end local 3 // java.io.File file
        end local 2 // java.lang.String newname
        end local 1 // java.lang.String oldname
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/hsqldb/lib/FileUtil;
            0    9     1  oldname  Ljava/lang/String;
            0    9     2  newname  Ljava/lang/String;
            1    9     3     file  Ljava/io/File;
            3    9     4  renamed  Z
    MethodParameters:
         Name  Flags
      oldname  
      newname  

  public java.lang.String absolutePath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String path
         0: .line 262
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public java.io.File canonicalFile(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.io.File f
         0: .line 273
            new java.io.File
            dup
            aload 1 /* f */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.io.File f
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1     f  Ljava/io/File;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      f     

  public java.io.File canonicalFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String path
         0: .line 284
            new java.io.File
            dup
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  path  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  public java.lang.String canonicalPath(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.io.File f
         0: .line 295
            aload 1 /* f */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            areturn
        end local 1 // java.io.File f
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1     f  Ljava/io/File;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      f     

  public java.lang.String canonicalPath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String path
         0: .line 306
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1  path  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  public java.lang.String canonicalOrAbsolutePath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.lang.String path
         0: .line 320
            aload 0 /* this */
            aload 1 /* path */
            invokevirtual org.hsqldb.lib.FileUtil.canonicalPath:(Ljava/lang/String;)Ljava/lang/String;
         1: areturn
         2: .line 321
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         3: .line 322
            aload 0 /* this */
            aload 1 /* path */
            invokevirtual org.hsqldb.lib.FileUtil.absolutePath:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/lib/FileUtil;
            0    4     1  path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      path  

  public void makeParentDirectories(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.io.File f
         0: .line 328
            aload 1 /* f */
            invokevirtual java.io.File.getParent:()Ljava/lang/String;
            astore 2 /* parent */
        start local 2 // java.lang.String parent
         1: .line 330
            aload 2 /* parent */
            ifnull 4
         2: .line 331
            new java.io.File
            dup
            aload 2 /* parent */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.mkdirs:()Z
            pop
         3: .line 332
            goto 9
         4: .line 335
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 2 /* parent */
         5: .line 337
            aload 2 /* parent */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 3 /* index */
        start local 3 // int index
         6: .line 339
            iload 3 /* index */
            ifle 9
         7: .line 340
            aload 2 /* parent */
            iconst_0
            iload 3 /* index */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 2 /* parent */
         8: .line 342
            new java.io.File
            dup
            aload 2 /* parent */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.mkdirs:()Z
            pop
        end local 3 // int index
         9: .line 345
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String parent
        end local 1 // java.io.File f
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lorg/hsqldb/lib/FileUtil;
            0   10     1       f  Ljava/io/File;
            1   10     2  parent  Ljava/lang/String;
            6    9     3   index  I
    MethodParameters:
      Name  Flags
      f     

  public static java.lang.String makeDirectories(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String path
         0: .line 350
            new java.io.File
            dup
            aload 0 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
        start local 1 // java.io.File file
         1: .line 352
            aload 1 /* file */
            invokevirtual java.io.File.mkdirs:()Z
            pop
         2: .line 354
            aload 1 /* file */
            invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
         3: areturn
        end local 1 // java.io.File file
         4: .line 355
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         5: .line 356
            aconst_null
            areturn
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  path  Ljava/lang/String;
            1    4     1  file  Ljava/io/File;
      Exception table:
        from    to  target  type
           0     3       4  Class java.io.IOException
    MethodParameters:
      Name  Flags
      path  

  public org.hsqldb.lib.FileAccess$FileSync getFileSync(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)Lorg/hsqldb/lib/FileAccess$FileSync;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hsqldb.lib.FileUtil this
        start local 1 // java.io.OutputStream os
         0: .line 362
            new org.hsqldb.lib.FileUtil$FileSync
            dup
            aload 1 /* os */
            checkcast java.io.FileOutputStream
            invokespecial org.hsqldb.lib.FileUtil$FileSync.<init>:(Ljava/io/FileOutputStream;)V
            areturn
        end local 1 // java.io.OutputStream os
        end local 0 // org.hsqldb.lib.FileUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/lib/FileUtil;
            0    1     1    os  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      os    

  public static boolean deleteOrRenameDatabaseFiles(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.String dbNamePath
         0: .line 461
            new org.hsqldb.lib.FileUtil$DatabaseFilenameFilter
            dup
            aload 0 /* dbNamePath */
            invokespecial org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.<init>:(Ljava/lang/String;)V
            astore 1 /* filter */
        start local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
         1: .line 462
            aload 1 /* filter */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getExistingFileListInDirectory:()[Ljava/io/File;
            astore 2 /* fileList */
        start local 2 // java.io.File[] fileList
         2: .line 464
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 465
      StackMap locals: org.hsqldb.lib.FileUtil$DatabaseFilenameFilter java.io.File[] int
      StackMap stack:
            aload 2 /* fileList */
            iload 3 /* i */
            aaload
            invokevirtual java.io.File.delete:()Z
            pop
         5: .line 464
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 2 /* fileList */
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 468
            new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* filter */
            getfield org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.canonicalFile:Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".tmp"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 3 /* tempDir */
        start local 3 // java.io.File tempDir
         8: .line 470
            aload 3 /* tempDir */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 17
         9: .line 471
            aload 3 /* tempDir */
            invokevirtual java.io.File.listFiles:()[Ljava/io/File;
            astore 4 /* tempList */
        start local 4 // java.io.File[] tempList
        10: .line 473
            aload 4 /* tempList */
            ifnull 16
        11: .line 474
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        12: goto 15
        13: .line 475
      StackMap locals: java.lang.String org.hsqldb.lib.FileUtil$DatabaseFilenameFilter java.io.File[] java.io.File java.io.File[] int
      StackMap stack:
            aload 4 /* tempList */
            iload 5 /* i */
            aaload
            invokevirtual java.io.File.delete:()Z
            pop
        14: .line 474
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* i */
            aload 4 /* tempList */
            arraylength
            if_icmplt 13
        end local 5 // int i
        16: .line 479
      StackMap locals:
      StackMap stack:
            aload 3 /* tempDir */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 4 // java.io.File[] tempList
        17: .line 482
      StackMap locals:
      StackMap stack:
            aload 1 /* filter */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getExistingMainFileSetList:()[Ljava/io/File;
            astore 2 /* fileList */
        18: .line 484
            aload 2 /* fileList */
            arraylength
            ifne 20
        19: .line 485
            iconst_1
            ireturn
        20: .line 488
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        21: goto 24
        22: .line 489
      StackMap locals: int
      StackMap stack:
            aload 2 /* fileList */
            iload 4 /* i */
            aaload
            invokevirtual java.io.File.delete:()Z
            pop
        23: .line 488
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 4 /* i */
            aload 2 /* fileList */
            arraylength
            if_icmplt 22
        end local 4 // int i
        25: .line 492
            aload 1 /* filter */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getExistingMainFileSetList:()[Ljava/io/File;
            astore 2 /* fileList */
        26: .line 494
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        27: goto 32
        28: .line 495
      StackMap locals:
      StackMap stack:
            aload 2 /* fileList */
            iload 4 /* i */
            aaload
        29: .line 496
            new java.io.File
            dup
            aload 2 /* fileList */
            iload 4 /* i */
            aaload
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokestatic org.hsqldb.lib.FileUtil.newDiscardFileName:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
        30: .line 495
            invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
            pop
        31: .line 494
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 4 /* i */
            aload 2 /* fileList */
            arraylength
            if_icmplt 28
        end local 4 // int i
        33: .line 499
            iconst_1
            ireturn
        end local 3 // java.io.File tempDir
        end local 2 // java.io.File[] fileList
        end local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
        end local 0 // java.lang.String dbNamePath
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   34     0  dbNamePath  Ljava/lang/String;
            1   34     1      filter  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
            2   34     2    fileList  [Ljava/io/File;
            3    7     3           i  I
            8   34     3     tempDir  Ljava/io/File;
           10   17     4    tempList  [Ljava/io/File;
           12   16     5           i  I
           21   25     4           i  I
           27   33     4           i  I
    MethodParameters:
            Name  Flags
      dbNamePath  

  public static java.io.File[] getDatabaseFileList(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/io/File;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String dbNamePath
         0: .line 511
            new org.hsqldb.lib.FileUtil$DatabaseFilenameFilter
            dup
            aload 0 /* dbNamePath */
            invokespecial org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.<init>:(Ljava/lang/String;)V
            astore 1 /* filter */
        start local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
         1: .line 513
            aload 1 /* filter */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getExistingFileListInDirectory:()[Ljava/io/File;
            areturn
        end local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
        end local 0 // java.lang.String dbNamePath
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0  dbNamePath  Ljava/lang/String;
            1    2     1      filter  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
    MethodParameters:
            Name  Flags
      dbNamePath  

  public static java.io.File[] getDatabaseMainFileList(java.lang.String);
    descriptor: (Ljava/lang/String;)[Ljava/io/File;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String dbNamePath
         0: .line 524
            new org.hsqldb.lib.FileUtil$DatabaseFilenameFilter
            dup
            aload 0 /* dbNamePath */
         1: .line 525
            iconst_0
         2: .line 524
            invokespecial org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.<init>:(Ljava/lang/String;Z)V
            astore 1 /* filter */
        start local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
         3: .line 527
            aload 1 /* filter */
            invokevirtual org.hsqldb.lib.FileUtil$DatabaseFilenameFilter.getExistingFileListInDirectory:()[Ljava/io/File;
            areturn
        end local 1 // org.hsqldb.lib.FileUtil$DatabaseFilenameFilter filter
        end local 0 // java.lang.String dbNamePath
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0  dbNamePath  Ljava/lang/String;
            3    4     1      filter  Lorg/hsqldb/lib/FileUtil$DatabaseFilenameFilter;
    MethodParameters:
            Name  Flags
      dbNamePath  

  public static java.lang.String newDiscardFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String filename
         0: .line 535
            invokestatic java.lang.System.currentTimeMillis:()J
            l2i
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
         1: .line 536
            getstatic org.hsqldb.lib.FileUtil.discardSuffixLength:I
            iconst_1
            isub
            bipush 48
            iconst_1
         2: .line 534
            invokestatic org.hsqldb.lib.StringUtil.toPaddedString:(Ljava/lang/String;ICZ)Ljava/lang/String;
            astore 1 /* timestamp */
        start local 1 // java.lang.String timestamp
         3: .line 537
            new java.lang.StringBuilder
            dup
            aload 0 /* filename */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* timestamp */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ".old"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* discardName */
        start local 2 // java.lang.String discardName
         4: .line 539
            aload 2 /* discardName */
            areturn
        end local 2 // java.lang.String discardName
        end local 1 // java.lang.String timestamp
        end local 0 // java.lang.String filename
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0     filename  Ljava/lang/String;
            3    5     1    timestamp  Ljava/lang/String;
            4    5     2  discardName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  
}
SourceFile: "FileUtil.java"
NestMembers:
  org.hsqldb.lib.FileUtil$DatabaseFilenameFilter  org.hsqldb.lib.FileUtil$FileAccessRes  org.hsqldb.lib.FileUtil$FileSync
InnerClasses:
  public abstract FileSync = org.hsqldb.lib.FileAccess$FileSync of org.hsqldb.lib.FileAccess
  DatabaseFilenameFilter = org.hsqldb.lib.FileUtil$DatabaseFilenameFilter of org.hsqldb.lib.FileUtil
  public FileAccessRes = org.hsqldb.lib.FileUtil$FileAccessRes of org.hsqldb.lib.FileUtil
  public FileSync = org.hsqldb.lib.FileUtil$FileSync of org.hsqldb.lib.FileUtil